type EitherErr<A, B> = Either<(<A as TryFuture>::Error, B), (<B as TryFuture>::Error, A)>;
enum EitherErr<A, B> { Left((<A as TryFuture>::Error, B)), Right((<B as TryFuture>::Error, A)), }
First branch of the type
Second branch of the type