All Downloads are FREE. Search and download functionalities are using the official Maven repository.

tethys.derivation.builder.DependentField.scala Maven / Gradle / Ivy

package tethys.derivation.builder

sealed trait DependentFieldAs[A, B] extends DependentField0[A, B] {
  def as[C]: ReaderBuilder.AsSyntax[A, C, B]
}

sealed trait DependentField0[A, B] {
  def apply(fun: () => B): ReaderBuilder[A]

  def from[T1](f1: (A) => T1): DependentField1[A, B, T1]
  def from[T1, T2](f1: (A) => T1, f2: (A) => T2): DependentField2[A, B, T1, T2]
  def from[T1, T2, T3](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3): DependentField3[A, B, T1, T2, T3]
  def from[T1, T2, T3, T4](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4): DependentField4[A, B, T1, T2, T3, T4]
  def from[T1, T2, T3, T4, T5](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5): DependentField5[A, B, T1, T2, T3, T4, T5]
  def from[T1, T2, T3, T4, T5, T6](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6): DependentField6[A, B, T1, T2, T3, T4, T5, T6]
  def from[T1, T2, T3, T4, T5, T6, T7](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7): DependentField7[A, B, T1, T2, T3, T4, T5, T6, T7]
  def from[T1, T2, T3, T4, T5, T6, T7, T8](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8): DependentField8[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9): DependentField9[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10): DependentField10[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11): DependentField11[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f1: (A) => T1, f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def from[T1](f1: ReaderField[T1]): DependentField1[A, B, T1]
  def from[T1, T2](f1: ReaderField[T1], f2: ReaderField[T2]): DependentField2[A, B, T1, T2]
  def from[T1, T2, T3](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3]): DependentField3[A, B, T1, T2, T3]
  def from[T1, T2, T3, T4](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4]): DependentField4[A, B, T1, T2, T3, T4]
  def from[T1, T2, T3, T4, T5](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5]): DependentField5[A, B, T1, T2, T3, T4, T5]
  def from[T1, T2, T3, T4, T5, T6](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6]): DependentField6[A, B, T1, T2, T3, T4, T5, T6]
  def from[T1, T2, T3, T4, T5, T6, T7](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7]): DependentField7[A, B, T1, T2, T3, T4, T5, T6, T7]
  def from[T1, T2, T3, T4, T5, T6, T7, T8](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8]): DependentField8[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9]): DependentField9[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10]): DependentField10[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def from[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f1: ReaderField[T1], f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField1F[A, B, T1] {
  def apply(fun: (T1) => B): ReaderBuilder[A]
}

sealed trait DependentField1[A, B, T1]
  extends DependentField1F[A, B, T1] {
  def and[T2](f2: (A) => T2): DependentField2F[A, B, T1, T2]
  def and[T2, T3](f2: (A) => T2, f3: (A) => T3): DependentField3F[A, B, T1, T2, T3]
  def and[T2, T3, T4](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4): DependentField4F[A, B, T1, T2, T3, T4]
  def and[T2, T3, T4, T5](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5): DependentField5F[A, B, T1, T2, T3, T4, T5]
  def and[T2, T3, T4, T5, T6](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T2, T3, T4, T5, T6, T7](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T2, T3, T4, T5, T6, T7, T8](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T2, T3, T4, T5, T6, T7, T8, T9](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f2: (A) => T2, f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T2](f2: ReaderField[T2]): DependentField2F[A, B, T1, T2]
  def and[T2, T3](f2: ReaderField[T2], f3: ReaderField[T3]): DependentField3F[A, B, T1, T2, T3]
  def and[T2, T3, T4](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4]): DependentField4F[A, B, T1, T2, T3, T4]
  def and[T2, T3, T4, T5](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5]): DependentField5F[A, B, T1, T2, T3, T4, T5]
  def and[T2, T3, T4, T5, T6](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6]): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T2, T3, T4, T5, T6, T7](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7]): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T2, T3, T4, T5, T6, T7, T8](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8]): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T2, T3, T4, T5, T6, T7, T8, T9](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9]): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10]): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f2: ReaderField[T2], f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField2F[A, B, T1, T2] {
  def apply(fun: (T1, T2) => B): ReaderBuilder[A]
}

sealed trait DependentField2[A, B, T1, T2]
  extends DependentField2F[A, B, T1, T2] {
  def and[T3](f3: (A) => T3): DependentField3F[A, B, T1, T2, T3]
  def and[T3, T4](f3: (A) => T3, f4: (A) => T4): DependentField4F[A, B, T1, T2, T3, T4]
  def and[T3, T4, T5](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5): DependentField5F[A, B, T1, T2, T3, T4, T5]
  def and[T3, T4, T5, T6](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T3, T4, T5, T6, T7](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T3, T4, T5, T6, T7, T8](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T3, T4, T5, T6, T7, T8, T9](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T3, T4, T5, T6, T7, T8, T9, T10](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f3: (A) => T3, f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T3](f3: ReaderField[T3]): DependentField3F[A, B, T1, T2, T3]
  def and[T3, T4](f3: ReaderField[T3], f4: ReaderField[T4]): DependentField4F[A, B, T1, T2, T3, T4]
  def and[T3, T4, T5](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5]): DependentField5F[A, B, T1, T2, T3, T4, T5]
  def and[T3, T4, T5, T6](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6]): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T3, T4, T5, T6, T7](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7]): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T3, T4, T5, T6, T7, T8](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8]): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T3, T4, T5, T6, T7, T8, T9](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9]): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T3, T4, T5, T6, T7, T8, T9, T10](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10]): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f3: ReaderField[T3], f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField3F[A, B, T1, T2, T3] {
  def apply(fun: (T1, T2, T3) => B): ReaderBuilder[A]
}

sealed trait DependentField3[A, B, T1, T2, T3]
  extends DependentField3F[A, B, T1, T2, T3] {
  def and[T4](f4: (A) => T4): DependentField4F[A, B, T1, T2, T3, T4]
  def and[T4, T5](f4: (A) => T4, f5: (A) => T5): DependentField5F[A, B, T1, T2, T3, T4, T5]
  def and[T4, T5, T6](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T4, T5, T6, T7](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T4, T5, T6, T7, T8](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T4, T5, T6, T7, T8, T9](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T4, T5, T6, T7, T8, T9, T10](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T4, T5, T6, T7, T8, T9, T10, T11](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f4: (A) => T4, f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T4](f4: ReaderField[T4]): DependentField4F[A, B, T1, T2, T3, T4]
  def and[T4, T5](f4: ReaderField[T4], f5: ReaderField[T5]): DependentField5F[A, B, T1, T2, T3, T4, T5]
  def and[T4, T5, T6](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6]): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T4, T5, T6, T7](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7]): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T4, T5, T6, T7, T8](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8]): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T4, T5, T6, T7, T8, T9](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9]): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T4, T5, T6, T7, T8, T9, T10](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10]): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T4, T5, T6, T7, T8, T9, T10, T11](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f4: ReaderField[T4], f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField4F[A, B, T1, T2, T3, T4] {
  def apply(fun: (T1, T2, T3, T4) => B): ReaderBuilder[A]
}

sealed trait DependentField4[A, B, T1, T2, T3, T4]
  extends DependentField4F[A, B, T1, T2, T3, T4] {
  def and[T5](f5: (A) => T5): DependentField5F[A, B, T1, T2, T3, T4, T5]
  def and[T5, T6](f5: (A) => T5, f6: (A) => T6): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T5, T6, T7](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T5, T6, T7, T8](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T5, T6, T7, T8, T9](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T5, T6, T7, T8, T9, T10](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T5, T6, T7, T8, T9, T10, T11](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T5, T6, T7, T8, T9, T10, T11, T12](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f5: (A) => T5, f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T5](f5: ReaderField[T5]): DependentField5F[A, B, T1, T2, T3, T4, T5]
  def and[T5, T6](f5: ReaderField[T5], f6: ReaderField[T6]): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T5, T6, T7](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7]): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T5, T6, T7, T8](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8]): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T5, T6, T7, T8, T9](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9]): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T5, T6, T7, T8, T9, T10](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10]): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T5, T6, T7, T8, T9, T10, T11](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T5, T6, T7, T8, T9, T10, T11, T12](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f5: ReaderField[T5], f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField5F[A, B, T1, T2, T3, T4, T5] {
  def apply(fun: (T1, T2, T3, T4, T5) => B): ReaderBuilder[A]
}

sealed trait DependentField5[A, B, T1, T2, T3, T4, T5]
  extends DependentField5F[A, B, T1, T2, T3, T4, T5] {
  def and[T6](f6: (A) => T6): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T6, T7](f6: (A) => T6, f7: (A) => T7): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T6, T7, T8](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T6, T7, T8, T9](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T6, T7, T8, T9, T10](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T6, T7, T8, T9, T10, T11](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T6, T7, T8, T9, T10, T11, T12](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T6, T7, T8, T9, T10, T11, T12, T13](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f6: (A) => T6, f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T6](f6: ReaderField[T6]): DependentField6F[A, B, T1, T2, T3, T4, T5, T6]
  def and[T6, T7](f6: ReaderField[T6], f7: ReaderField[T7]): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T6, T7, T8](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8]): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T6, T7, T8, T9](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9]): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T6, T7, T8, T9, T10](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10]): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T6, T7, T8, T9, T10, T11](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T6, T7, T8, T9, T10, T11, T12](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T6, T7, T8, T9, T10, T11, T12, T13](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f6: ReaderField[T6], f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField6F[A, B, T1, T2, T3, T4, T5, T6] {
  def apply(fun: (T1, T2, T3, T4, T5, T6) => B): ReaderBuilder[A]
}

sealed trait DependentField6[A, B, T1, T2, T3, T4, T5, T6]
  extends DependentField6F[A, B, T1, T2, T3, T4, T5, T6] {
  def and[T7](f7: (A) => T7): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T7, T8](f7: (A) => T7, f8: (A) => T8): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T7, T8, T9](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T7, T8, T9, T10](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T7, T8, T9, T10, T11](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T7, T8, T9, T10, T11, T12](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T7, T8, T9, T10, T11, T12, T13](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T7, T8, T9, T10, T11, T12, T13, T14](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f7: (A) => T7, f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T7](f7: ReaderField[T7]): DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7]
  def and[T7, T8](f7: ReaderField[T7], f8: ReaderField[T8]): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T7, T8, T9](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9]): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T7, T8, T9, T10](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10]): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T7, T8, T9, T10, T11](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T7, T8, T9, T10, T11, T12](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T7, T8, T9, T10, T11, T12, T13](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T7, T8, T9, T10, T11, T12, T13, T14](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f7: ReaderField[T7], f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7) => B): ReaderBuilder[A]
}

sealed trait DependentField7[A, B, T1, T2, T3, T4, T5, T6, T7]
  extends DependentField7F[A, B, T1, T2, T3, T4, T5, T6, T7] {
  def and[T8](f8: (A) => T8): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T8, T9](f8: (A) => T8, f9: (A) => T9): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T8, T9, T10](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T8, T9, T10, T11](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T8, T9, T10, T11, T12](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T8, T9, T10, T11, T12, T13](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T8, T9, T10, T11, T12, T13, T14](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T8, T9, T10, T11, T12, T13, T14, T15](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f8: (A) => T8, f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T8](f8: ReaderField[T8]): DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  def and[T8, T9](f8: ReaderField[T8], f9: ReaderField[T9]): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T8, T9, T10](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10]): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T8, T9, T10, T11](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T8, T9, T10, T11, T12](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T8, T9, T10, T11, T12, T13](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T8, T9, T10, T11, T12, T13, T14](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T8, T9, T10, T11, T12, T13, T14, T15](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f8: ReaderField[T8], f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8) => B): ReaderBuilder[A]
}

sealed trait DependentField8[A, B, T1, T2, T3, T4, T5, T6, T7, T8]
  extends DependentField8F[A, B, T1, T2, T3, T4, T5, T6, T7, T8] {
  def and[T9](f9: (A) => T9): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T9, T10](f9: (A) => T9, f10: (A) => T10): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T9, T10, T11](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T9, T10, T11, T12](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T9, T10, T11, T12, T13](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T9, T10, T11, T12, T13, T14](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T9, T10, T11, T12, T13, T14, T15](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T9, T10, T11, T12, T13, T14, T15, T16](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f9: (A) => T9, f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T9](f9: ReaderField[T9]): DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  def and[T9, T10](f9: ReaderField[T9], f10: ReaderField[T10]): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T9, T10, T11](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T9, T10, T11, T12](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T9, T10, T11, T12, T13](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T9, T10, T11, T12, T13, T14](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T9, T10, T11, T12, T13, T14, T15](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T9, T10, T11, T12, T13, T14, T15, T16](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f9: ReaderField[T9], f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9) => B): ReaderBuilder[A]
}

sealed trait DependentField9[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9]
  extends DependentField9F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9] {
  def and[T10](f10: (A) => T10): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T10, T11](f10: (A) => T10, f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T10, T11, T12](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T10, T11, T12, T13](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T10, T11, T12, T13, T14](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T10, T11, T12, T13, T14, T15](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T10, T11, T12, T13, T14, T15, T16](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T10, T11, T12, T13, T14, T15, T16, T17](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f10: (A) => T10, f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T10](f10: ReaderField[T10]): DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  def and[T10, T11](f10: ReaderField[T10], f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T10, T11, T12](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T10, T11, T12, T13](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T10, T11, T12, T13, T14](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T10, T11, T12, T13, T14, T15](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T10, T11, T12, T13, T14, T15, T16](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T10, T11, T12, T13, T14, T15, T16, T17](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f10: ReaderField[T10], f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) => B): ReaderBuilder[A]
}

sealed trait DependentField10[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]
  extends DependentField10F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10] {
  def and[T11](f11: (A) => T11): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T11, T12](f11: (A) => T11, f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T11, T12, T13](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T11, T12, T13, T14](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T11, T12, T13, T14, T15](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T11, T12, T13, T14, T15, T16](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T11, T12, T13, T14, T15, T16, T17](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T11, T12, T13, T14, T15, T16, T17, T18](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T11, T12, T13, T14, T15, T16, T17, T18, T19](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f11: (A) => T11, f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T11](f11: ReaderField[T11]): DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  def and[T11, T12](f11: ReaderField[T11], f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T11, T12, T13](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T11, T12, T13, T14](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T11, T12, T13, T14, T15](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T11, T12, T13, T14, T15, T16](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T11, T12, T13, T14, T15, T16, T17](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T11, T12, T13, T14, T15, T16, T17, T18](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T11, T12, T13, T14, T15, T16, T17, T18, T19](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f11: ReaderField[T11], f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) => B): ReaderBuilder[A]
}

sealed trait DependentField11[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]
  extends DependentField11F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11] {
  def and[T12](f12: (A) => T12): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T12, T13](f12: (A) => T12, f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T12, T13, T14](f12: (A) => T12, f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T12, T13, T14, T15](f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T12, T13, T14, T15, T16](f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T12, T13, T14, T15, T16, T17](f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T12, T13, T14, T15, T16, T17, T18](f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T12, T13, T14, T15, T16, T17, T18, T19](f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T12, T13, T14, T15, T16, T17, T18, T19, T20](f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f12: (A) => T12, f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T12](f12: ReaderField[T12]): DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  def and[T12, T13](f12: ReaderField[T12], f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T12, T13, T14](f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T12, T13, T14, T15](f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T12, T13, T14, T15, T16](f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T12, T13, T14, T15, T16, T17](f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T12, T13, T14, T15, T16, T17, T18](f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T12, T13, T14, T15, T16, T17, T18, T19](f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T12, T13, T14, T15, T16, T17, T18, T19, T20](f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f12: ReaderField[T12], f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) => B): ReaderBuilder[A]
}

sealed trait DependentField12[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]
  extends DependentField12F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12] {
  def and[T13](f13: (A) => T13): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T13, T14](f13: (A) => T13, f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T13, T14, T15](f13: (A) => T13, f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T13, T14, T15, T16](f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T13, T14, T15, T16, T17](f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T13, T14, T15, T16, T17, T18](f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T13, T14, T15, T16, T17, T18, T19](f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T13, T14, T15, T16, T17, T18, T19, T20](f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T13, T14, T15, T16, T17, T18, T19, T20, T21](f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f13: (A) => T13, f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T13](f13: ReaderField[T13]): DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  def and[T13, T14](f13: ReaderField[T13], f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T13, T14, T15](f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T13, T14, T15, T16](f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T13, T14, T15, T16, T17](f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T13, T14, T15, T16, T17, T18](f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T13, T14, T15, T16, T17, T18, T19](f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T13, T14, T15, T16, T17, T18, T19, T20](f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T13, T14, T15, T16, T17, T18, T19, T20, T21](f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](f13: ReaderField[T13], f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) => B): ReaderBuilder[A]
}

sealed trait DependentField13[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]
  extends DependentField13F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13] {
  def and[T14](f14: (A) => T14): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T14, T15](f14: (A) => T14, f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T14, T15, T16](f14: (A) => T14, f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T14, T15, T16, T17](f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T14, T15, T16, T17, T18](f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T14, T15, T16, T17, T18, T19](f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T14, T15, T16, T17, T18, T19, T20](f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T14, T15, T16, T17, T18, T19, T20, T21](f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T14, T15, T16, T17, T18, T19, T20, T21, T22](f14: (A) => T14, f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T14](f14: ReaderField[T14]): DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  def and[T14, T15](f14: ReaderField[T14], f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T14, T15, T16](f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T14, T15, T16, T17](f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T14, T15, T16, T17, T18](f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T14, T15, T16, T17, T18, T19](f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T14, T15, T16, T17, T18, T19, T20](f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T14, T15, T16, T17, T18, T19, T20, T21](f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T14, T15, T16, T17, T18, T19, T20, T21, T22](f14: ReaderField[T14], f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) => B): ReaderBuilder[A]
}

sealed trait DependentField14[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]
  extends DependentField14F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14] {
  def and[T15](f15: (A) => T15): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T15, T16](f15: (A) => T15, f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T15, T16, T17](f15: (A) => T15, f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T15, T16, T17, T18](f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T15, T16, T17, T18, T19](f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T15, T16, T17, T18, T19, T20](f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T15, T16, T17, T18, T19, T20, T21](f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T15, T16, T17, T18, T19, T20, T21, T22](f15: (A) => T15, f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T15](f15: ReaderField[T15]): DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  def and[T15, T16](f15: ReaderField[T15], f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T15, T16, T17](f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T15, T16, T17, T18](f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T15, T16, T17, T18, T19](f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T15, T16, T17, T18, T19, T20](f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T15, T16, T17, T18, T19, T20, T21](f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T15, T16, T17, T18, T19, T20, T21, T22](f15: ReaderField[T15], f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) => B): ReaderBuilder[A]
}

sealed trait DependentField15[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]
  extends DependentField15F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15] {
  def and[T16](f16: (A) => T16): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T16, T17](f16: (A) => T16, f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T16, T17, T18](f16: (A) => T16, f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T16, T17, T18, T19](f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T16, T17, T18, T19, T20](f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T16, T17, T18, T19, T20, T21](f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T16, T17, T18, T19, T20, T21, T22](f16: (A) => T16, f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T16](f16: ReaderField[T16]): DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  def and[T16, T17](f16: ReaderField[T16], f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T16, T17, T18](f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T16, T17, T18, T19](f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T16, T17, T18, T19, T20](f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T16, T17, T18, T19, T20, T21](f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T16, T17, T18, T19, T20, T21, T22](f16: ReaderField[T16], f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) => B): ReaderBuilder[A]
}

sealed trait DependentField16[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]
  extends DependentField16F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16] {
  def and[T17](f17: (A) => T17): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T17, T18](f17: (A) => T17, f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T17, T18, T19](f17: (A) => T17, f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T17, T18, T19, T20](f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T17, T18, T19, T20, T21](f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T17, T18, T19, T20, T21, T22](f17: (A) => T17, f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T17](f17: ReaderField[T17]): DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  def and[T17, T18](f17: ReaderField[T17], f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T17, T18, T19](f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T17, T18, T19, T20](f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T17, T18, T19, T20, T21](f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T17, T18, T19, T20, T21, T22](f17: ReaderField[T17], f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) => B): ReaderBuilder[A]
}

sealed trait DependentField17[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]
  extends DependentField17F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17] {
  def and[T18](f18: (A) => T18): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T18, T19](f18: (A) => T18, f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T18, T19, T20](f18: (A) => T18, f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T18, T19, T20, T21](f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T18, T19, T20, T21, T22](f18: (A) => T18, f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T18](f18: ReaderField[T18]): DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  def and[T18, T19](f18: ReaderField[T18], f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T18, T19, T20](f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T18, T19, T20, T21](f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T18, T19, T20, T21, T22](f18: ReaderField[T18], f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) => B): ReaderBuilder[A]
}

sealed trait DependentField18[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]
  extends DependentField18F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18] {
  def and[T19](f19: (A) => T19): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T19, T20](f19: (A) => T19, f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T19, T20, T21](f19: (A) => T19, f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T19, T20, T21, T22](f19: (A) => T19, f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T19](f19: ReaderField[T19]): DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  def and[T19, T20](f19: ReaderField[T19], f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T19, T20, T21](f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T19, T20, T21, T22](f19: ReaderField[T19], f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) => B): ReaderBuilder[A]
}

sealed trait DependentField19[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]
  extends DependentField19F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19] {
  def and[T20](f20: (A) => T20): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T20, T21](f20: (A) => T20, f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T20, T21, T22](f20: (A) => T20, f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T20](f20: ReaderField[T20]): DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  def and[T20, T21](f20: ReaderField[T20], f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T20, T21, T22](f20: ReaderField[T20], f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) => B): ReaderBuilder[A]
}

sealed trait DependentField20[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]
  extends DependentField20F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20] {
  def and[T21](f21: (A) => T21): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T21, T22](f21: (A) => T21, f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T21](f21: ReaderField[T21]): DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  def and[T21, T22](f21: ReaderField[T21], f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) => B): ReaderBuilder[A]
}

sealed trait DependentField21[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
  extends DependentField21F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] {
  def and[T22](f22: (A) => T22): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]

  def and[T22](f22: ReaderField[T22]): DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
}


sealed trait DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22] {
  def apply(fun: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) => B): ReaderBuilder[A]
}

sealed trait DependentField22[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]
  extends DependentField22F[A, B, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22] {
}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy