KtFile: 'range.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

KtClass(0,197): 'class A : Comparable<A> {'
  null

KtSuperTypeList(10,23): 'Comparable<A>'
  null

KtSuperTypeEntry(10,23): 'Comparable<A>'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Comparable
    ]

KtTypeReference(10,23): 'Comparable<A>'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Comparable
    ]

KtUserType(10,23): 'Comparable<A>'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Comparable
    ]

KtNameReferenceExpression(10,20): 'Comparable'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Comparable
    ]

KtTypeArgumentList(20,23): '<A>'
  null

KtTypeProjection(21,22): 'A'
  null

KtTypeReference(21,22): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtUserType(21,22): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtNameReferenceExpression(21,22): 'A'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtClassBody(24,197): '{'
  null

KtNamedFunction(30,71): 'override fun compareTo(other: A): Int = 0'
  null

KtDeclarationModifierList(30,38): 'override'
  null

KtParameterList(52,62): '(other: A)'
  null

KtParameter(53,61): 'other: A'
  null

KtTypeReference(60,61): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtUserType(60,61): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtNameReferenceExpression(60,61): 'A'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtTypeReference(64,67): 'Int'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Int
    ]

KtUserType(64,67): 'Int'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Int
    ]

KtNameReferenceExpression(64,67): 'Int'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Int
    ]

KtConstantExpression(70,71): '0'
  null

KtNamedFunction(76,131): 'operator fun rangeTo(other: A): ClosedRange<A> = TODO()'
  null

KtDeclarationModifierList(76,84): 'operator'
  null

KtParameterList(96,106): '(other: A)'
  null

KtParameter(97,105): 'other: A'
  null

KtTypeReference(104,105): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtUserType(104,105): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtNameReferenceExpression(104,105): 'A'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtTypeReference(108,122): 'ClosedRange<A>'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/ranges/ClosedRange
    ]

KtUserType(108,122): 'ClosedRange<A>'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/ranges/ClosedRange
    ]

KtNameReferenceExpression(108,119): 'ClosedRange'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/ranges/ClosedRange
    ]

KtTypeArgumentList(119,122): '<A>'
  null

KtTypeProjection(120,121): 'A'
  null

KtTypeReference(120,121): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtUserType(120,121): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtNameReferenceExpression(120,121): 'A'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtCallExpression(125,131): 'TODO()'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/TODO(): kotlin.Nothing
    ]

KtNameReferenceExpression(125,129): 'TODO'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/TODO(): kotlin.Nothing
    ]

KtValueArgumentList(129,131): '()'
  null

KtNamedFunction(136,195): 'operator fun rangeUntil(other: A): OpenEndRange<A> = TODO()'
  null

KtDeclarationModifierList(136,144): 'operator'
  null

KtParameterList(159,169): '(other: A)'
  null

KtParameter(160,168): 'other: A'
  null

KtTypeReference(167,168): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtUserType(167,168): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtNameReferenceExpression(167,168): 'A'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtTypeReference(171,186): 'OpenEndRange<A>'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/ranges/OpenEndRange
    ]

KtUserType(171,186): 'OpenEndRange<A>'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/ranges/OpenEndRange
    ]

KtNameReferenceExpression(171,183): 'OpenEndRange'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/ranges/OpenEndRange
    ]

KtTypeArgumentList(183,186): '<A>'
  null

KtTypeProjection(184,185): 'A'
  null

KtTypeReference(184,185): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtUserType(184,185): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtNameReferenceExpression(184,185): 'A'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtCallExpression(189,195): 'TODO()'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/TODO(): kotlin.Nothing
    ]

KtNameReferenceExpression(189,193): 'TODO'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/TODO(): kotlin.Nothing
    ]

KtValueArgumentList(193,195): '()'
  null

KtNamedFunction(199,264): 'fun test() {'
  null

KtParameterList(207,209): '()'
  null

KtBlockExpression(210,264): '{'
  null

KtProperty(216,227): 'val a = A()'
  null

KtCallExpression(224,227): 'A()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(): A
    ]

KtNameReferenceExpression(224,225): 'A'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtValueArgumentList(225,227): '()'
  null

KtProperty(232,243): 'val b = A()'
  null

KtCallExpression(240,243): 'A()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(): A
    ]

KtNameReferenceExpression(240,241): 'A'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtValueArgumentList(241,243): '()'
  null

KtBinaryExpression(248,252): 'a..b'
  KaSymbolResolutionSuccess:
    symbols = [
      /A.rangeTo(<dispatch receiver>: A, other: A): kotlin.ranges.ClosedRange<A>
    ]

KtNameReferenceExpression(248,249): 'a'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      val a: A
    ]

KtOperationReferenceExpression(249,251): '..'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A.rangeTo(<dispatch receiver>: A, other: A): kotlin.ranges.ClosedRange<A>
    ]

KtNameReferenceExpression(251,252): 'b'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      val b: A
    ]

KtBinaryExpression(257,262): 'a..<b'
  KaSymbolResolutionSuccess:
    symbols = [
      /A.rangeUntil(<dispatch receiver>: A, other: A): kotlin.ranges.OpenEndRange<A>
    ]

KtNameReferenceExpression(257,258): 'a'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      val a: A
    ]

KtOperationReferenceExpression(258,261): '..<'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A.rangeUntil(<dispatch receiver>: A, other: A): kotlin.ranges.OpenEndRange<A>
    ]

KtNameReferenceExpression(261,262): 'b'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      val b: A
    ]
