Variables: 
bool[1]: "a" 
bool[2]: "snk.b" 
chan[1]: "A" 
chan[2]: "B" 

Event graph: 
event[0]: fork: null, #pred: 0, succ: 1 4 6 

# process[0]:
event[1]: wait: [#A], pid: 0, #pred: 1, succ: 3 
channel deps: 1 
event[2]: send: B!(a), pid: 0, #pred: 1, succ: 1 
channel deps: 2 
event[3]: receive: A?(a), pid: 0, #pred: 1, succ: 2 
channel deps: 1 

# process[1]:
event[4]: send: bs.S!(true), pid: 1, #pred: 1, succ: 5 
channel deps: 1 
event[5]: send: bs.S!(false), pid: 1, #pred: 1, succ: 4 
channel deps: 1 

# process[2]:
event[6]: receive: snk.B?(snk.b), pid: 2, #pred: 1, succ: 6 
channel deps: 2 

