static Task<Tuple3<A, B, C>> parTupled3<A, B, C>(Task<A> a, Task<B> b, Task<C> c) => parTupled2(a, b).both(c).map((t) => t.value1.append(t.value2));