channel CIO_AddCustomer { out customers(db:Map, addCustomer(uid:Str, off:Str)) == insert(db, uid, {"off": off}) } channel CIO_AddCampany { out companies(db:Map, addCampany(cid:Str, add:Str)) == insert(db, cid, {"add": add}) } channel CIO_SetCustomerOff(uid:Str) { out customers.{uid}.off(cid:Str, setOff(cid2)) == cid2 } channel CIO_SetCompanyAdd(cid:Str) { out companies.{cid}.add(a1:Str, setAdd(a2)) == a2 } channel C(uid:Str) { in customers.{uid}.off(cid, sync(cid2, add2)) == cid2 in companies.{cid2}.add(a1, sync(cid2, add2)) == add2 out customers.{uid}.add(a3:Str, sync(cid2, add2)) == add2 }