### Question:
MapTo { public static <D, T1, T2> ToTuple2Func<D, T1, T2> toTuple( Func1<? super D, ? extends T1> mapper1, Func1<? super D, ? extends T2> mapper2) { return input -> { val v1 = mapper1.apply(input); val v2 = mapper2.apply(input); return Tuple.of(v1, v2); }; }  static Func1<T, T> only(Predicate<? super T> checker); static Func1<T, T> forOnly(
            Predicate<? super T>          checker,
            Func1<? super T, ? extends T> mapper); static Func1<T, T> when(
            Predicate<? super T>             checker, 
            Function<? super T, ? extends T> mapper, 
            Function<? super T, ? extends T> elseMapper); static Func1<D, T> firstOf(
            FuncList<Function<? super D, ? extends T>> mappers); @SafeVarargs static Func1<D, T> firstOf(
            Function<? super D, ? extends T> ... mappers); static ToTuple2Func<D, T1, T2> toTuple(
            Func1<? super D, ? extends T1> mapper1,
            Func1<? super D, ? extends T2> mapper2); static ToMapFunc<D, K, V> toMap(
            K key, Func1<? super D, ? extends V> mapper);  }### Answer:
@Test public void testTuple() { val f1 = toTuple ((String s)->s, (String s) -> s.length()) .thenReduce((a,b)-> a + " - " + b); Assert.assertEquals("Result:{ Value: Hello - 5 }", "" + Result.valueOf("Hello").map(f1)); }