class Tuple9OfNullablesMapperImpl<T, T0, T1, T2, T3, T4, T5, T6, T7, T8> 
extends AbstractTupleMapper<T, Tuple9OfNullables<T0, T1, T2, T3, T4, T5, T6, T7, T8>> 
implements TupleMapper<T, Tuple9OfNullables<T0, T1, T2, T3, T4, T5, T6, T7, T8>> {
    
    /**
     * Constructs a {@link TupleMapper } that can create {@link Tuple9 }.
     * 
     * @param m0 mapper to apply for element 0
     * @param m1 mapper to apply for element 1
     * @param m2 mapper to apply for element 2
     * @param m3 mapper to apply for element 3
     * @param m4 mapper to apply for element 4
     * @param m5 mapper to apply for element 5
     * @param m6 mapper to apply for element 6
     * @param m7 mapper to apply for element 7
     * @param m8 mapper to apply for element 8
     */
    public Tuple9OfNullablesMapperImpl(
            Function<T, T0> m0,
            Function<T, T1> m1,
            Function<T, T2> m2,
            Function<T, T3> m3,
            Function<T, T4> m4,
            Function<T, T5> m5,
            Function<T, T6> m6,
            Function<T, T7> m7,
            Function<T, T8> m8) {
        super(9);
        set(0, m0);
        set(1, m1);
        set(2, m2);
        set(3, m3);
        set(4, m4);
        set(5, m5);
        set(6, m6);
        set(7, m7);
        set(8, m8);
    }
    
    @Override
    public Tuple9OfNullables<T0, T1, T2, T3, T4, T5, T6, T7, T8> apply(T t) {<FILL_FUNCTION_BODY>}
    
    public Function<T, T0> get0() {
        return getAndCast(0);
    }
    
    public Function<T, T1> get1() {
        return getAndCast(1);
    }
    
    public Function<T, T2> get2() {
        return getAndCast(2);
    }
    
    public Function<T, T3> get3() {
        return getAndCast(3);
    }
    
    public Function<T, T4> get4() {
        return getAndCast(4);
    }
    
    public Function<T, T5> get5() {
        return getAndCast(5);
    }
    
    public Function<T, T6> get6() {
        return getAndCast(6);
    }
    
    public Function<T, T7> get7() {
        return getAndCast(7);
    }
    
    public Function<T, T8> get8() {
        return getAndCast(8);
    }
}

        return TuplesOfNullables.ofNullables(
            get0().apply(t),
            get1().apply(t),
            get2().apply(t),
            get3().apply(t),
            get4().apply(t),
            get5().apply(t),
            get6().apply(t),
            get7().apply(t),
            get8().apply(t)
        );
    
<methods>public final int degree() ,public final Function<T,?> get(int) <variables>private final non-sealed Function<T,?>[] mappers