KtFile: 'callChain.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

KtNamedFunction(0,35): 'fun Int.foo(a: Int): Int = this + a'
  null

KtTypeReference(4,7): 'Int'
  null

KtUserType(4,7): 'Int'
  null

KtNameReferenceExpression(4,7): 'Int'
  null

KtParameterList(11,19): '(a: Int)'
  null

KtParameter(12,18): 'a: Int'
  null

KtTypeReference(15,18): 'Int'
  null

KtUserType(15,18): 'Int'
  null

KtNameReferenceExpression(15,18): 'Int'
  null

KtTypeReference(21,24): 'Int'
  null

KtUserType(21,24): 'Int'
  null

KtNameReferenceExpression(21,24): 'Int'
  null

KtBinaryExpression(27,35): 'this + a'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        a -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = this
          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 = {}

KtThisExpression(27,31): 'this'
  null

KtNameReferenceExpression(27,31): 'this'
  null

KtOperationReferenceExpression(32,33): '+'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        a -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = this
          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 = {}

KtNameReferenceExpression(34,35): 'a'
  KaSuccessCallInfo:
    call = KaSimpleVariableAccessCall:
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaVariableSignature:
          name = a
          receiverType = null
          returnType = kotlin.Int
          symbol = a: kotlin.Int
          contextParameters = []
          callableId = null
      simpleAccess = Read
      typeArgumentsMapping = {}

KtNamedFunction(36,80): 'fun Int?.bar(b: kotlin.Int): Int = this ?: b'
  null

KtTypeReference(40,44): 'Int?'
  null

KtNullableType(40,44): 'Int?'
  null

KtUserType(40,43): 'Int'
  null

KtNameReferenceExpression(40,43): 'Int'
  null

KtParameterList(48,63): '(b: kotlin.Int)'
  null

KtParameter(49,62): 'b: kotlin.Int'
  null

KtTypeReference(52,62): 'kotlin.Int'
  null

KtUserType(52,62): 'kotlin.Int'
  null

KtUserType(52,58): 'kotlin'
  null

KtNameReferenceExpression(52,58): 'kotlin'
  null

KtNameReferenceExpression(59,62): 'Int'
  null

KtTypeReference(65,68): 'Int'
  null

KtUserType(65,68): 'Int'
  null

KtNameReferenceExpression(65,68): 'Int'
  null

KtBinaryExpression(71,80): 'this ?: b'
  null

KtThisExpression(71,75): 'this'
  null

KtNameReferenceExpression(71,75): 'this'
  null

KtOperationReferenceExpression(76,78): '?:'
  null

KtNameReferenceExpression(79,80): 'b'
  KaSuccessCallInfo:
    call = KaSimpleVariableAccessCall:
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null
      simpleAccess = Read
      typeArgumentsMapping = {}

KtNamedFunction(82,156): 'fun usage() {'
  null

KtParameterList(91,93): '()'
  null

KtBlockExpression(94,156): '{'
  null

KtDotQualifiedExpression(100,154): '(1.foo(2).bar(3) as? Int)?.foo(4.bar(5).bar(6)).bar(0)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        0 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = (1.foo(2).bar(3) as? Int)?.foo(4.bar(5).bar(6))
          isSafeNavigation = false
          type = kotlin.Int?
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtSafeQualifiedExpression(100,147): '(1.foo(2).bar(3) as? Int)?.foo(4.bar(5).bar(6))'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        4.bar(5).bar(6) -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = kotlin.Int
          symbol = a: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 1.foo(2).bar(3) as? Int
          isSafeNavigation = true
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int
          returnType = kotlin.Int
          symbol = /foo(<extension receiver>: kotlin.Int, a: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = a
              receiverType = null
              returnType = kotlin.Int
              symbol = a: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /foo
      typeArgumentsMapping = {}

KtParenthesizedExpression(100,125): '(1.foo(2).bar(3) as? Int)'
  null

KtBinaryExpressionWithTypeRHS(101,124): '1.foo(2).bar(3) as? Int'
  null

KtDotQualifiedExpression(101,116): '1.foo(2).bar(3)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        3 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 1.foo(2)
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtDotQualifiedExpression(101,109): '1.foo(2)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        2 -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = kotlin.Int
          symbol = a: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 1
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int
          returnType = kotlin.Int
          symbol = /foo(<extension receiver>: kotlin.Int, a: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = a
              receiverType = null
              returnType = kotlin.Int
              symbol = a: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /foo
      typeArgumentsMapping = {}

KtConstantExpression(101,102): '1'
  null

KtCallExpression(103,109): 'foo(2)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        2 -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = kotlin.Int
          symbol = a: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 1
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int
          returnType = kotlin.Int
          symbol = /foo(<extension receiver>: kotlin.Int, a: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = a
              receiverType = null
              returnType = kotlin.Int
              symbol = a: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /foo
      typeArgumentsMapping = {}

KtNameReferenceExpression(103,106): 'foo'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        2 -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = kotlin.Int
          symbol = a: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 1
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int
          returnType = kotlin.Int
          symbol = /foo(<extension receiver>: kotlin.Int, a: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = a
              receiverType = null
              returnType = kotlin.Int
              symbol = a: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /foo
      typeArgumentsMapping = {}

KtValueArgumentList(106,109): '(2)'
  null

KtValueArgument(107,108): '2'
  null

KtConstantExpression(107,108): '2'
  null

KtCallExpression(110,116): 'bar(3)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        3 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 1.foo(2)
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtNameReferenceExpression(110,113): 'bar'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        3 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 1.foo(2)
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtValueArgumentList(113,116): '(3)'
  null

KtValueArgument(114,115): '3'
  null

KtConstantExpression(114,115): '3'
  null

KtOperationReferenceExpression(117,120): 'as?'
  null

KtTypeReference(121,124): 'Int'
  null

KtUserType(121,124): 'Int'
  null

KtNameReferenceExpression(121,124): 'Int'
  null

KtCallExpression(127,147): 'foo(4.bar(5).bar(6))'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        4.bar(5).bar(6) -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = kotlin.Int
          symbol = a: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 1.foo(2).bar(3) as? Int
          isSafeNavigation = true
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int
          returnType = kotlin.Int
          symbol = /foo(<extension receiver>: kotlin.Int, a: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = a
              receiverType = null
              returnType = kotlin.Int
              symbol = a: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /foo
      typeArgumentsMapping = {}

KtNameReferenceExpression(127,130): 'foo'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        4.bar(5).bar(6) -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = kotlin.Int
          symbol = a: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 1.foo(2).bar(3) as? Int
          isSafeNavigation = true
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int
          returnType = kotlin.Int
          symbol = /foo(<extension receiver>: kotlin.Int, a: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = a
              receiverType = null
              returnType = kotlin.Int
              symbol = a: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /foo
      typeArgumentsMapping = {}

KtValueArgumentList(130,147): '(4.bar(5).bar(6))'
  null

KtValueArgument(131,146): '4.bar(5).bar(6)'
  null

KtDotQualifiedExpression(131,146): '4.bar(5).bar(6)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        6 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 4.bar(5)
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtDotQualifiedExpression(131,139): '4.bar(5)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        5 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 4
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtConstantExpression(131,132): '4'
  null

KtCallExpression(133,139): 'bar(5)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        5 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 4
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtNameReferenceExpression(133,136): 'bar'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        5 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 4
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtValueArgumentList(136,139): '(5)'
  null

KtValueArgument(137,138): '5'
  null

KtConstantExpression(137,138): '5'
  null

KtCallExpression(140,146): 'bar(6)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        6 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 4.bar(5)
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtNameReferenceExpression(140,143): 'bar'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        6 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = 4.bar(5)
          isSafeNavigation = false
          type = kotlin.Int
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtValueArgumentList(143,146): '(6)'
  null

KtValueArgument(144,145): '6'
  null

KtConstantExpression(144,145): '6'
  null

KtCallExpression(148,154): 'bar(0)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        0 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = (1.foo(2).bar(3) as? Int)?.foo(4.bar(5).bar(6))
          isSafeNavigation = false
          type = kotlin.Int?
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtNameReferenceExpression(148,151): 'bar'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        0 -> (KaVariableSignature:
          name = b
          receiverType = null
          returnType = kotlin.Int
          symbol = b: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = KaExplicitReceiverValue:
          expression = (1.foo(2).bar(3) as? Int)?.foo(4.bar(5).bar(6))
          isSafeNavigation = false
          type = kotlin.Int?
        signature = KaFunctionSignature:
          receiverType = kotlin.Int?
          returnType = kotlin.Int
          symbol = /bar(<extension receiver>: kotlin.Int?, b: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = b
              receiverType = null
              returnType = kotlin.Int
              symbol = b: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /bar
      typeArgumentsMapping = {}

KtValueArgumentList(151,154): '(0)'
  null

KtValueArgument(152,153): '0'
  null

KtConstantExpression(152,153): '0'
  null