join join#1 "join" @5:22 order=0 type="[string, string]" ports="string","string"
ask ask#1 "alpha" @6:18 order=1 type="string"
actor actor#1 "alpha" @6:3 order=2
ask ask#2 "beta" @7:17 order=3 type="string"
actor actor#2 "beta" @7:3 order=4
ask ask#3 "merger" @9:62 order=5 type="string"
actor actor#3 "merger" @9:46 order=6
fact ask-data ask#3 <- join#1 inexact
fact ask-data ask#3 <- ask#1 inexact
fact ask-data ask#3 <- ask#2 inexact
fact ask-actor ask#1 <- actor#1 exact
fact ask-actor ask#2 <- actor#2 exact
fact ask-actor ask#3 <- actor#3 exact
fact join-in join#1 <- ask#1 exact port=0
fact join-in join#1 <- ask#2 exact port=1
fact return <- join#1 exact
fact return <- ask#1 exact
fact return <- ask#2 exact
fact return <- ask#3 inexact
region seq#1 seq entered
region choice#1 choice parent=seq#1 @9:24 entered
region branch#1 branch parent=choice#1 @9:34
region call#1 call parent=branch#1 @9:24 entered label="then" strand
spawn actor#1 in=seq#1
issue ask#1 in=seq#1 phase=unphased
spawn actor#2 in=seq#1
issue ask#2 in=seq#1 phase=unphased
settle maybe ask#1,ask#2 in=seq#1>choice#1>branch#1>call#1
spawn actor#3 in=seq#1>choice#1>branch#1>call#1
issue ask#3 in=seq#1>choice#1>branch#1>call#1 phase=unphased
settle ask#3,ask#1,ask#2 in=seq#1 joins=call#1
jump return seq#1 in=seq#1 phase=unphased
