// This example has been taken from [Hack06] and has to be
// compared with Hack06SSA.c. Both programs demonstrate that
// using SSA form may reduce the number of required colors.

bool f;

thread Hack {
    nat a,b,c,d,e,x,z,m;
    a = 1;
    if(f) {
       b = a + a;
       c = a + 1;
       d = b + 1;
       x = c;
    } else {
       e = 1;
       d = a + 1;
       z = e;
    }
    m = d;
    // return m;
}