static A updateChain(ChangeTriggerable b, A a) { ret onChange(a, b); } static A updateChain(Updateable b, A a) { ret onChange(a, b); } static A updateChain(Updateable b, A a) { onChange(a, new UpdateTrigger(b)); ret a; } static A updateChain(Runnable b, A a) { ret onChange(a, b); } meta-for Runnable also as ChangeTriggerable, Updateable { static A updateChain(Runnable b, A a) { onChange(a, b); ret a; } } static A updateChain(O b, A l) { fOr (a : l) preciseCall(mainFunctionHolder updateChain, "updateChain", b, a); ret l; }