let catenate c1 c2 = { over_inputs = Zone.join c1.over_inputs (Zone.diff c2.over_inputs c1.under_outputs); under_outputs = Zone.link c1.under_outputs c2.under_outputs }