KtFile: 'compare.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

KtNamedFunction(0,162): 'fun usage() {'
  null

KtParameterList(9,11): '()'
  null

KtBlockExpression(12,162): '{'
  null

KtBinaryExpression(18,23): '1 > 2'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        2 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = 1
          isSafeNavigation = false
          type = kotlin.Int
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = kotlin/Int.compareTo(<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.compareTo
      typeArgumentsMapping = {}

KtConstantExpression(18,19): '1'
  null

KtOperationReferenceExpression(20,21): '>'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        2 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = 1
          isSafeNavigation = false
          type = kotlin.Int
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = kotlin/Int.compareTo(<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.compareTo
      typeArgumentsMapping = {}

KtConstantExpression(22,23): '2'
  null

KtBinaryExpression(28,46): '1.compareTo(2) > 0'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        0 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = 1.compareTo(2)
          isSafeNavigation = false
          type = kotlin.Int
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = kotlin/Int.compareTo(<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.compareTo
      typeArgumentsMapping = {}

KtDotQualifiedExpression(28,42): '1.compareTo(2)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        2 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = 1
          isSafeNavigation = false
          type = kotlin.Int
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = kotlin/Int.compareTo(<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.compareTo
      typeArgumentsMapping = {}

KtConstantExpression(28,29): '1'
  null

KtCallExpression(30,42): 'compareTo(2)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        2 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = 1
          isSafeNavigation = false
          type = kotlin.Int
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = kotlin/Int.compareTo(<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.compareTo
      typeArgumentsMapping = {}

KtNameReferenceExpression(30,39): 'compareTo'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        2 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = 1
          isSafeNavigation = false
          type = kotlin.Int
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = kotlin/Int.compareTo(<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.compareTo
      typeArgumentsMapping = {}

KtValueArgumentList(39,42): '(2)'
  null

KtValueArgument(40,41): '2'
  null

KtConstantExpression(40,41): '2'
  null

KtOperationReferenceExpression(43,44): '>'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        0 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = 1.compareTo(2)
          isSafeNavigation = false
          type = kotlin.Int
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = kotlin/Int.compareTo(<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.compareTo
      typeArgumentsMapping = {}

KtConstantExpression(45,46): '0'
  null

KtBinaryExpression(52,61): '"3" < "4"'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        "4" -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.String
          symbol = other: kotlin.String
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = "3"
          isSafeNavigation = false
          type = kotlin.String
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = kotlin/String.compareTo(<dispatch receiver>: kotlin.String, other: kotlin.String): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = other
              receiverType = null
              returnType = kotlin.String
              symbol = other: kotlin.String
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = kotlin/String.compareTo
      typeArgumentsMapping = {}

KtStringTemplateExpression(52,55): '"3"'
  null

KtLiteralStringTemplateEntry(53,54): '3'
  null

KtOperationReferenceExpression(56,57): '<'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        "4" -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.String
          symbol = other: kotlin.String
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = "3"
          isSafeNavigation = false
          type = kotlin.String
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = kotlin/String.compareTo(<dispatch receiver>: kotlin.String, other: kotlin.String): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = other
              receiverType = null
              returnType = kotlin.String
              symbol = other: kotlin.String
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = kotlin/String.compareTo
      typeArgumentsMapping = {}

KtStringTemplateExpression(58,61): '"4"'
  null

KtLiteralStringTemplateEntry(59,60): '4'
  null

KtProperty(66,80): 'val number = 5'
  null

KtConstantExpression(79,80): '5'
  null

KtProperty(85,108): 'val myClass = MyClass()'
  null

KtCallExpression(99,108): 'MyClass()'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {}
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = MyClass
          symbol = <constructor>(): MyClass
          valueParameters = []
          contextParameters = []
          callableId = null
      typeArgumentsMapping = {}

KtNameReferenceExpression(99,106): 'MyClass'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {}
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = MyClass
          symbol = <constructor>(): MyClass
          valueParameters = []
          contextParameters = []
          callableId = null
      typeArgumentsMapping = {}

KtValueArgumentList(106,108): '()'
  null

KtBinaryExpression(113,130): 'myClass >= number'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        number -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = myClass
          isSafeNavigation = false
          type = MyClass
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = /MyClass.compareTo(<dispatch receiver>: MyClass, i: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = i
              receiverType = null
              returnType = kotlin.Int
              symbol = i: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /MyClass.compareTo
      typeArgumentsMapping = {}

KtNameReferenceExpression(113,120): 'myClass'
  KaSuccessCallInfo:
    call = KaSimpleVariableAccessCall:
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaVariableSignature:
          name = myClass
          receiverType = null
          returnType = MyClass
          symbol = val myClass: MyClass
          contextParameters = []
          callableId = null
      simpleAccess = Read
      typeArgumentsMapping = {}

KtOperationReferenceExpression(121,123): '>='
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        number -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = myClass
          isSafeNavigation = false
          type = MyClass
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = /MyClass.compareTo(<dispatch receiver>: MyClass, i: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = i
              receiverType = null
              returnType = kotlin.Int
              symbol = i: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /MyClass.compareTo
      typeArgumentsMapping = {}

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

KtDotQualifiedExpression(135,160): 'myClass.compareTo(number)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        number -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = myClass
          isSafeNavigation = false
          type = MyClass
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = /MyClass.compareTo(<dispatch receiver>: MyClass, i: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = i
              receiverType = null
              returnType = kotlin.Int
              symbol = i: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /MyClass.compareTo
      typeArgumentsMapping = {}

KtNameReferenceExpression(135,142): 'myClass'
  KaSuccessCallInfo:
    call = KaSimpleVariableAccessCall:
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaVariableSignature:
          name = myClass
          receiverType = null
          returnType = MyClass
          symbol = val myClass: MyClass
          contextParameters = []
          callableId = null
      simpleAccess = Read
      typeArgumentsMapping = {}

KtCallExpression(143,160): 'compareTo(number)'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        number -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = myClass
          isSafeNavigation = false
          type = MyClass
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = /MyClass.compareTo(<dispatch receiver>: MyClass, i: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = i
              receiverType = null
              returnType = kotlin.Int
              symbol = i: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /MyClass.compareTo
      typeArgumentsMapping = {}

KtNameReferenceExpression(143,152): 'compareTo'
  KaSuccessCallInfo:
    call = KaSimpleFunctionCall:
      argumentMapping = {
        number -> (KaVariableSignature:
          name = i
          receiverType = null
          returnType = kotlin.Int
          symbol = i: kotlin.Int
          contextParameters = []
          callableId = null)
      }
      isImplicitInvoke = false
      partiallyAppliedSymbol = KaPartiallyAppliedSymbol:
        contextArguments = []
        dispatchReceiver = KaExplicitReceiverValue:
          expression = myClass
          isSafeNavigation = false
          type = MyClass
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Int
          symbol = /MyClass.compareTo(<dispatch receiver>: MyClass, i: kotlin.Int): kotlin.Int
          valueParameters = [
            KaVariableSignature:
              name = i
              receiverType = null
              returnType = kotlin.Int
              symbol = i: kotlin.Int
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /MyClass.compareTo
      typeArgumentsMapping = {}

KtValueArgumentList(152,160): '(number)'
  null

KtValueArgument(153,159): 'number'
  null

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

KtClass(164,225): 'class MyClass {'
  null

KtClassBody(178,225): '{'
  null

KtNamedFunction(184,223): 'operator fun compareTo(i: Int): Int = i'
  null

KtDeclarationModifierList(184,192): 'operator'
  null

KtParameterList(206,214): '(i: Int)'
  null

KtParameter(207,213): 'i: Int'
  null

KtTypeReference(210,213): 'Int'
  null

KtUserType(210,213): 'Int'
  null

KtNameReferenceExpression(210,213): 'Int'
  null

KtTypeReference(216,219): 'Int'
  null

KtUserType(216,219): 'Int'
  null

KtNameReferenceExpression(216,219): 'Int'
  null

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