KtFile: 'infixFunction.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

KtNamedFunction(0,45): 'infix fun Int.myMinus(i: Int): Int = this - i'
  null

KtDeclarationModifierList(0,5): 'infix'
  null

KtTypeReference(10,13): 'Int'
  null

KtUserType(10,13): 'Int'
  null

KtNameReferenceExpression(10,13): 'Int'
  null

KtParameterList(21,29): '(i: Int)'
  null

KtParameter(22,28): 'i: Int'
  null

KtTypeReference(25,28): 'Int'
  null

KtUserType(25,28): 'Int'
  null

KtNameReferenceExpression(25,28): 'Int'
  null

KtTypeReference(31,34): 'Int'
  null

KtUserType(31,34): 'Int'
  null

KtNameReferenceExpression(31,34): 'Int'
  null

KtBinaryExpression(37,45): 'this - i'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = this
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.minus(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.minus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        i -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtThisExpression(37,41): 'this'
  null

KtNameReferenceExpression(37,41): 'this'
  null

KtOperationReferenceExpression(42,43): '-'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = this
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.minus(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.minus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        i -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(44,45): 'i'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = i
        receiverType = null
        returnType = kotlin.Int
        symbol = i: kotlin.Int
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtNamedFunction(47,251): 'fun usage(parameter: Int) {'
  null

KtParameterList(56,72): '(parameter: Int)'
  null

KtParameter(57,71): 'parameter: Int'
  null

KtTypeReference(68,71): 'Int'
  null

KtUserType(68,71): 'Int'
  null

KtNameReferenceExpression(68,71): 'Int'
  null

KtBlockExpression(73,251): '{'
  null

KtProperty(79,117): 'val newParameter = parameter myMinus 5'
  null

KtBinaryExpression(98,117): 'parameter myMinus 5'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = KaExplicitReceiverValue:
        expression = parameter
        isSafeNavigation = false
        type = kotlin.Int
      signature = KaFunctionSignature:
        receiverType = kotlin.Int
        returnType = kotlin.Int
        symbol = /myMinus(<extension receiver>: kotlin.Int, i: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = i
            receiverType = null
            returnType = kotlin.Int
            symbol = i: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /myMinus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        5 -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(98,107): 'parameter'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = parameter
        receiverType = null
        returnType = kotlin.Int
        symbol = parameter: kotlin.Int
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtOperationReferenceExpression(108,115): 'myMinus'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = KaExplicitReceiverValue:
        expression = parameter
        isSafeNavigation = false
        type = kotlin.Int
      signature = KaFunctionSignature:
        receiverType = kotlin.Int
        returnType = kotlin.Int
        symbol = /myMinus(<extension receiver>: kotlin.Int, i: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = i
            receiverType = null
            returnType = kotlin.Int
            symbol = i: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /myMinus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        5 -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtConstantExpression(116,117): '5'
  null

KtProperty(122,171): 'val oneMoreParameter = newParameter + 1 myMinus 4'
  null

KtBinaryExpression(145,171): 'newParameter + 1 myMinus 4'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = KaExplicitReceiverValue:
        expression = newParameter + 1
        isSafeNavigation = false
        type = kotlin.Int
      signature = KaFunctionSignature:
        receiverType = kotlin.Int
        returnType = kotlin.Int
        symbol = /myMinus(<extension receiver>: kotlin.Int, i: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = i
            receiverType = null
            returnType = kotlin.Int
            symbol = i: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /myMinus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        4 -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtBinaryExpression(145,161): 'newParameter + 1'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = newParameter
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.plus(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.plus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        1 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(145,157): 'newParameter'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = newParameter
        receiverType = null
        returnType = kotlin.Int
        symbol = val newParameter: kotlin.Int
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtOperationReferenceExpression(158,159): '+'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = newParameter
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.plus(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.plus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        1 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtConstantExpression(160,161): '1'
  null

KtOperationReferenceExpression(162,169): 'myMinus'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = KaExplicitReceiverValue:
        expression = newParameter + 1
        isSafeNavigation = false
        type = kotlin.Int
      signature = KaFunctionSignature:
        receiverType = kotlin.Int
        returnType = kotlin.Int
        symbol = /myMinus(<extension receiver>: kotlin.Int, i: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = i
            receiverType = null
            returnType = kotlin.Int
            symbol = i: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /myMinus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        4 -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtConstantExpression(170,171): '4'
  null

KtProperty(176,249): 'val explicitForm = newParameter.plus(parameter.myMinus(oneMoreParameter))'
  null

KtDotQualifiedExpression(195,249): 'newParameter.plus(parameter.myMinus(oneMoreParameter))'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = newParameter
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.plus(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.plus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        parameter.myMinus(oneMoreParameter) -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(195,207): 'newParameter'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = newParameter
        receiverType = null
        returnType = kotlin.Int
        symbol = val newParameter: kotlin.Int
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtCallExpression(208,249): 'plus(parameter.myMinus(oneMoreParameter))'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = newParameter
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.plus(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.plus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        parameter.myMinus(oneMoreParameter) -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(208,212): 'plus'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = newParameter
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.plus(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.plus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        parameter.myMinus(oneMoreParameter) -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtValueArgumentList(212,249): '(parameter.myMinus(oneMoreParameter))'
  null

KtValueArgument(213,248): 'parameter.myMinus(oneMoreParameter)'
  null

KtDotQualifiedExpression(213,248): 'parameter.myMinus(oneMoreParameter)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = KaExplicitReceiverValue:
        expression = parameter
        isSafeNavigation = false
        type = kotlin.Int
      signature = KaFunctionSignature:
        receiverType = kotlin.Int
        returnType = kotlin.Int
        symbol = /myMinus(<extension receiver>: kotlin.Int, i: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = i
            receiverType = null
            returnType = kotlin.Int
            symbol = i: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /myMinus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        oneMoreParameter -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(213,222): 'parameter'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = parameter
        receiverType = null
        returnType = kotlin.Int
        symbol = parameter: kotlin.Int
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtCallExpression(223,248): 'myMinus(oneMoreParameter)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = KaExplicitReceiverValue:
        expression = parameter
        isSafeNavigation = false
        type = kotlin.Int
      signature = KaFunctionSignature:
        receiverType = kotlin.Int
        returnType = kotlin.Int
        symbol = /myMinus(<extension receiver>: kotlin.Int, i: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = i
            receiverType = null
            returnType = kotlin.Int
            symbol = i: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /myMinus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        oneMoreParameter -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(223,230): 'myMinus'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = KaExplicitReceiverValue:
        expression = parameter
        isSafeNavigation = false
        type = kotlin.Int
      signature = KaFunctionSignature:
        receiverType = kotlin.Int
        returnType = kotlin.Int
        symbol = /myMinus(<extension receiver>: kotlin.Int, i: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = i
            receiverType = null
            returnType = kotlin.Int
            symbol = i: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /myMinus
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        oneMoreParameter -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtValueArgumentList(230,248): '(oneMoreParameter)'
  null

KtValueArgument(231,247): 'oneMoreParameter'
  null

KtNameReferenceExpression(231,247): 'oneMoreParameter'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = oneMoreParameter
        receiverType = null
        returnType = kotlin.Int
        symbol = val oneMoreParameter: kotlin.Int
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}
