package dafny;

@FunctionalInterface
public interface Function12<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> {
  public T12 apply(T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11);
  @SuppressWarnings({"unchecked", "deprecation"})
  public static <T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> dafny.TypeDescriptor<Function12<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>> _typeDescriptor(dafny.TypeDescriptor<T0> t0, dafny.TypeDescriptor<T1> t1, dafny.TypeDescriptor<T2> t2, dafny.TypeDescriptor<T3> t3, dafny.TypeDescriptor<T4> t4, dafny.TypeDescriptor<T5> t5, dafny.TypeDescriptor<T6> t6, dafny.TypeDescriptor<T7> t7, dafny.TypeDescriptor<T8> t8, dafny.TypeDescriptor<T9> t9, dafny.TypeDescriptor<T10> t10, dafny.TypeDescriptor<T11> t11, dafny.TypeDescriptor<T12> t12) {
    return (dafny.TypeDescriptor<Function12<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>>) (dafny.TypeDescriptor<?>) dafny.TypeDescriptor.reference(Function12.class);}
}
