pub open spec fn swap5_2<A, B, C, D, E>(i: (C, (A, (B, (D, E))))) -> (A, (B, (C, (D, E))))
{ (i.1.0, (i.1.1.0, (i.0, i.1.1.1))) }