thanh
fun <E, A> List<Validated<E, A>>.parallelValidate(): ValidatedNel<E, List<A>> { return this.map { it.toValidatedNel() } .sequence(Validated.applicative(NonEmptyList.semigroup<E>())) .map { it.fix() } }