================================================================================
lambdas/lambda5
================================================================================

res1 = (() -> 0).apply()
res2 = ((a) -> a).apply(1)
res3 = ((a, b) -> a + b).apply(1, 2)
res4 = ((a, b, c) -> a + b + c).apply(1, 2, 3)
res5 = ((a, b, c, d) -> a + b + c + d).apply(1, 2, 3, 4)
res6 = ((a, b, c, d, e) -> a + b + c + d + e).apply(1, 2, 3, 4, 5)

res7 = (() -> 0).applyToList(List())
res8 = ((a) -> a).applyToList(List(1))
res9 = ((a, b) -> a + b).applyToList(List(1, 2))
res10 = ((a, b, c) -> a + b + c).applyToList(List(1, 2, 3))
res11 = ((a, b, c, d) -> a + b + c + d).applyToList(List(1, 2, 3, 4))
res12 = ((a, b, c, d, e) -> a + b + c + d + e).applyToList(List(1, 2, 3, 4, 5))

--------------------------------------------------------------------------------

(module
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList)
          (intLiteral)))
      (identifier)
      (argumentList)))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier)))
          (variableExpr
            (identifier))))
      (identifier)
      (argumentList
        (intLiteral))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier)))
          (binaryExpr
            (variableExpr
              (identifier))
            (variableExpr
              (identifier)))))
      (identifier)
      (argumentList
        (intLiteral)
        (intLiteral))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier)))
          (binaryExpr
            (binaryExpr
              (variableExpr
                (identifier))
              (variableExpr
                (identifier)))
            (variableExpr
              (identifier)))))
      (identifier)
      (argumentList
        (intLiteral)
        (intLiteral)
        (intLiteral))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier)))
          (binaryExpr
            (binaryExpr
              (binaryExpr
                (variableExpr
                  (identifier))
                (variableExpr
                  (identifier)))
              (variableExpr
                (identifier)))
            (variableExpr
              (identifier)))))
      (identifier)
      (argumentList
        (intLiteral)
        (intLiteral)
        (intLiteral)
        (intLiteral))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier)))
          (binaryExpr
            (binaryExpr
              (binaryExpr
                (binaryExpr
                  (variableExpr
                    (identifier))
                  (variableExpr
                    (identifier)))
                (variableExpr
                  (identifier)))
              (variableExpr
                (identifier)))
            (variableExpr
              (identifier)))))
      (identifier)
      (argumentList
        (intLiteral)
        (intLiteral)
        (intLiteral)
        (intLiteral)
        (intLiteral))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList)
          (intLiteral)))
      (identifier)
      (argumentList
        (methodCallExpr
          (identifier)
          (argumentList)))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier)))
          (variableExpr
            (identifier))))
      (identifier)
      (argumentList
        (methodCallExpr
          (identifier)
          (argumentList
            (intLiteral))))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier)))
          (binaryExpr
            (variableExpr
              (identifier))
            (variableExpr
              (identifier)))))
      (identifier)
      (argumentList
        (methodCallExpr
          (identifier)
          (argumentList
            (intLiteral)
            (intLiteral))))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier)))
          (binaryExpr
            (binaryExpr
              (variableExpr
                (identifier))
              (variableExpr
                (identifier)))
            (variableExpr
              (identifier)))))
      (identifier)
      (argumentList
        (methodCallExpr
          (identifier)
          (argumentList
            (intLiteral)
            (intLiteral)
            (intLiteral))))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier)))
          (binaryExpr
            (binaryExpr
              (binaryExpr
                (variableExpr
                  (identifier))
                (variableExpr
                  (identifier)))
              (variableExpr
                (identifier)))
            (variableExpr
              (identifier)))))
      (identifier)
      (argumentList
        (methodCallExpr
          (identifier)
          (argumentList
            (intLiteral)
            (intLiteral)
            (intLiteral)
            (intLiteral))))))
  (classProperty
    (identifier)
    (methodCallExpr
      (parenthesizedExpr
        (functionLiteral
          (parameterList
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier))
            (typedIdentifier
              (identifier)))
          (binaryExpr
            (binaryExpr
              (binaryExpr
                (binaryExpr
                  (variableExpr
                    (identifier))
                  (variableExpr
                    (identifier)))
                (variableExpr
                  (identifier)))
              (variableExpr
                (identifier)))
            (variableExpr
              (identifier)))))
      (identifier)
      (argumentList
        (methodCallExpr
          (identifier)
          (argumentList
            (intLiteral)
            (intLiteral)
            (intLiteral)
            (intLiteral)
            (intLiteral)))))))
