byte pos[4]; byte step[4]; active proctype P_0() { byte j=0; byte k=0; NCS: if :: j = 1; goto wait; fi; CS: if :: pos[0] = 0; goto NCS; fi; wait: if :: d_step {j<4;pos[0] = j;} goto q2; :: j==4; goto CS; fi; q2: if :: d_step {step[j-1] = 0;k = 0;} goto q3; fi; q3: if :: d_step {k<4 && (k==0 || pos[k]