public static Lst <PredList, B> Select <PredList, A, B>(this Lst <PredList, A> self, Func <A, B> map) where PredList : struct, Pred <ListInfo> => new Lst <PredList, B>(self.AsEnumerable().Select(map));
public static Lst <B> Select <A, B>(this Lst <A> self, Func <A, B> map) => new Lst <B>(self.AsEnumerable().Select(map));