optimize EitherOrder, EitherRightOrder, EitherLeftOrder