public static Either <CollTo, Right> mapLeftC <CollFrom, CollTo, Right, ElemFrom, ElemTo>( this Either <CollFrom, Right> e, Fn <ElemFrom, ElemTo> mapper, Fn <IEnumerable <ElemTo>, CollTo> toCollection ) where CollFrom : IEnumerable <ElemFrom> where CollTo : IEnumerable <ElemTo> => e.mapLeftC(mapper).mapLeft(toCollection);