const int init_s = 0,
init_m = 0;
const int RECSTART = 0;
const int RECPROC = 1;
int[0,3] f = 0;
int[0,3] src, dst;
chan tx;
chan rx[4];
urgent broadcast chan start_up;
const int mx_loss = 1;
int[0,mx_loss] lost;
clock rec_time;
void set(int[0,3] &packed, int bit)
{
packed |= 1 << bit;
}
void clear(int[0,3] &packed, int bit)
{
packed &= (1 << bit) ^ 3;
}
int[0,1] get(int[0,3] packed, int bit)
{
return packed >> bit & 1;
}
void recstart()
{
set(f, RECSTART);
rec_time = 0;
}
void recproc()
{
if (get(f, RECSTART) == 1) {
set(f, RECPROC);
clear(f, RECSTART);
}
}NODEconst int MEclock time;
int[0,3] a = init_s;
void hdr(int[0,3] recipient)
{
dst = recipient;
src = ME;
}ITStartD0DNETWaitRxStartnode0 = NODE(0);
node1 = NODE(1);
node2 = NODE(2);
node3 = NODE(3);
system
node0,
node1,
node2,
node3,
NET;