record Item { k = 0 } state items: list of Item input fill = message { k: u32 } input burst = message { step: u32 } input burst4 = message { step: u32 } output out = message { k: u32 } output o1 = message { k: u32 } output o2 = message { k: u32 } output o3 = message { k: u32 } output o4 = message { k: u32 } on fill { items.append(Item { k: fill.k }) } on burst { for i in items { send out { k: i.k + burst.step } } } on burst4 { for i in items { send o1 { k: i.k + burst4.step } send o2 { k: i.k + burst4.step } send o3 { k: i.k + burst4.step } send o4 { k: i.k + burst4.step } } } view count = count(i in items where i.k > 0)