import idollars.dzn; interface internal { in void e(in foobar fb); behaviour { on e: {} } } component one { provides idollars p; requires internal r; behaviour { on p.e(fb): r.e(fb); } } component two { provides internal p; behaviour { on p.e(fb): {} } } component dollars { provides idollars p; system { one o; two t; p <=> o.p; o.r <=> t.p; } }