pub fn atop<A, B, C, D, Mono, Duo>(m: Mono, d: Duo) -> impl Fn(A, B) -> Dwhere Mono: Fn(C) -> D, Duo: Fn(A, B) -> C,
no overhead function composition