in scalding-base/src/main/scala/com/twitter/scalding/typed/GeneratedFlattenGroup.scala [991:1107]
def flattenNestedOptionTuple[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q](
nested: (
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[
(
Option[A],
Option[B]
)
],
Option[C]
)
],
Option[D]
)
],
Option[E]
)
],
Option[F]
)
],
Option[G]
)
],
Option[H]
)
],
Option[I]
)
],
Option[J]
)
],
Option[K]
)
],
Option[L]
)
],
Option[M]
)
],
Option[N]
)
],
Option[O]
)
],
Option[P]
)
],
Option[Q]
)
): (
Option[A],
Option[B],
Option[C],
Option[D],
Option[E],
Option[F],
Option[G],
Option[H],
Option[I],
Option[J],
Option[K],
Option[L],
Option[M],
Option[N],
Option[O],
Option[P],
Option[Q]
) = {
val (rest1, q) = nested
val (rest2, p) = rest1.getOrElse(pairOfNones)
val (rest3, o) = rest2.getOrElse(pairOfNones)
val (rest4, n) = rest3.getOrElse(pairOfNones)
val (rest5, m) = rest4.getOrElse(pairOfNones)
val (rest6, l) = rest5.getOrElse(pairOfNones)
val (rest7, k) = rest6.getOrElse(pairOfNones)
val (rest8, j) = rest7.getOrElse(pairOfNones)
val (rest9, i) = rest8.getOrElse(pairOfNones)
val (rest10, h) = rest9.getOrElse(pairOfNones)
val (rest11, g) = rest10.getOrElse(pairOfNones)
val (rest12, f) = rest11.getOrElse(pairOfNones)
val (rest13, e) = rest12.getOrElse(pairOfNones)
val (rest14, d) = rest13.getOrElse(pairOfNones)
val (rest15, c) = rest14.getOrElse(pairOfNones)
val (a, b) = rest15.getOrElse(pairOfNones)
(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q)
}