struct { T = Fn(z: Fn(<>, , b), y: Fn(<>, , c)) -> Fn(<>, , c) { return Fn<>(h: a) -> c { return y(z(h)); }; }; } main;