init { constant := 10 variable := 10 ans := 20 } channel changeVar { out variable(cur: Int, change(next: Int)) = next } channel changeConst { out constant(const: Int, change(next: Int)) = next } channel calcAns { in variable(curVar: Int, calc(const: Int, nextVar: Int)) = nextVar ref constant(const: Int, calc(const: Int, var: Int)) out ans(curAns: Int, calc(const: Int, var: Int)) = var + const }