public static State <S, Stck <B> > traverse <S, A, B>(Stck <State <S, A> > ma, Func <A, B> f) =>
 SeqStateExtensions.TraverseFast(ma, f).Map(toStack);
 public static State <S, IEnumerable <B> > traverse <S, A, B>(IEnumerable <State <S, A> > ma, Func <A, B> f) =>
 SeqStateExtensions.TraverseFast(ma, f).Map(Enumerable.AsEnumerable);
 public static State <S, HashSet <B> > traverse <S, A, B>(HashSet <State <S, A> > ma, Func <A, B> f) =>
 SeqStateExtensions.TraverseFast(ma, f).Map(toHashSet);
 public static State <S, B[]> traverse <S, A, B>(State <S, A>[] ma, Func <A, B> f) =>
 SeqStateExtensions.TraverseFast(ma, f).Map(x => x.ToArray());
 public static State <S, Arr <B> > traverse <S, A, B>(Arr <State <S, A> > ma, Func <A, B> f) =>
 SeqStateExtensions.TraverseFast(ma, f).Map(toArray);
 public static State <S, Lst <B> > traverse <S, A, B>(Lst <State <S, A> > ma, Func <A, B> f) =>
 SeqStateExtensions.TraverseFast(ma, f).Map(toList);
 public static State <S, Seq <B> > traverse <S, A, B>(Seq <State <S, A> > ma, Func <A, B> f) =>
 SeqStateExtensions.TraverseFast(ma, f).Map(Prelude.Seq);