KtFile: 'typeParameters.kt'
  null

KtPackageDirective(0,15): 'package one.two'
  null

KtDotQualifiedExpression(8,15): 'one.two'
  null

KtNameReferenceExpression(8,11): 'one'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one
    ]

KtNameReferenceExpression(12,15): 'two'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one.two
    ]

KtImportList(17,48): 'import one.two.Base.NestedClass'
  null

KtImportDirective(17,48): 'import one.two.Base.NestedClass'
  null

KtDotQualifiedExpression(24,48): 'one.two.Base.NestedClass'
  null

KtDotQualifiedExpression(24,36): 'one.two.Base'
  null

KtDotQualifiedExpression(24,31): 'one.two'
  null

KtNameReferenceExpression(24,27): 'one'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one
    ]

KtNameReferenceExpression(28,31): 'two'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one.two
    ]

KtNameReferenceExpression(32,36): 'Base'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtNameReferenceExpression(37,48): 'NestedClass'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtClass(50,140): 'open class Base<B : Base.NestedClass> {'
  null

KtDeclarationModifierList(50,54): 'open'
  null

KtTypeParameterList(65,87): '<B : Base.NestedClass>'
  null

KtTypeParameter(66,86): 'B : Base.NestedClass'
  null

KtTypeReference(70,86): 'Base.NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtUserType(70,86): 'Base.NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtUserType(70,74): 'Base'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtNameReferenceExpression(70,74): 'Base'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtNameReferenceExpression(75,86): 'NestedClass'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtClassBody(88,140): '{'
  null

KtClass(94,116): 'open class NestedClass'
  null

KtDeclarationModifierList(94,98): 'open'
  null

KtClass(121,138): 'inner class Inner'
  null

KtDeclarationModifierList(121,126): 'inner'
  null

KtClass(142,279): 'class Child<C : one.two.Base.NestedClass> : Base<C>() {'
  null

KtTypeParameterList(153,183): '<C : one.two.Base.NestedClass>'
  null

KtTypeParameter(154,182): 'C : one.two.Base.NestedClass'
  null

KtTypeReference(158,182): 'one.two.Base.NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtUserType(158,182): 'one.two.Base.NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtUserType(158,170): 'one.two.Base'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtUserType(158,165): 'one.two'
  KaSymbolResolutionSuccess:
    symbols = [
      one.two
    ]

KtUserType(158,161): 'one'
  KaSymbolResolutionSuccess:
    symbols = [
      one
    ]

KtNameReferenceExpression(158,161): 'one'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one
    ]

KtNameReferenceExpression(162,165): 'two'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one.two
    ]

KtNameReferenceExpression(166,170): 'Base'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtNameReferenceExpression(171,182): 'NestedClass'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtSuperTypeList(186,195): 'Base<C>()'
  null

KtSuperTypeCallEntry(186,195): 'Base<C>()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(): one.two.Base<B>
    ]

KtConstructorCalleeExpression(186,193): 'Base<C>'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(): one.two.Base<B>
    ]

KtTypeReference(186,193): 'Base<C>'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtUserType(186,193): 'Base<C>'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtNameReferenceExpression(186,190): 'Base'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtTypeArgumentList(190,193): '<C>'
  null

KtTypeProjection(191,192): 'C'
  null

KtTypeReference(191,192): 'C'
  KaSymbolResolutionSuccess:
    symbols = [
      C
    ]

KtUserType(191,192): 'C'
  KaSymbolResolutionSuccess:
    symbols = [
      C
    ]

KtNameReferenceExpression(191,192): 'C'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      C
    ]

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

KtClassBody(196,279): '{'
  null

KtNamedFunction(202,237): 'fun function(): NestedClass? = null'
  null

KtParameterList(214,216): '()'
  null

KtTypeReference(218,230): 'NestedClass?'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtNullableType(218,230): 'NestedClass?'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtUserType(218,229): 'NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtNameReferenceExpression(218,229): 'NestedClass'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtConstantExpression(233,237): 'null'
  null

KtNamedFunction(242,277): 'fun classTypeParameter(): C? = null'
  null

KtParameterList(264,266): '()'
  null

KtTypeReference(268,270): 'C?'
  KaSymbolResolutionSuccess:
    symbols = [
      C
    ]

KtNullableType(268,270): 'C?'
  KaSymbolResolutionSuccess:
    symbols = [
      C
    ]

KtUserType(268,269): 'C'
  KaSymbolResolutionSuccess:
    symbols = [
      C
    ]

KtNameReferenceExpression(268,269): 'C'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      C
    ]

KtConstantExpression(273,277): 'null'
  null

KtNamedFunction(281,434): 'fun local(c1: Child<NestedClass>, c2: one.two.Child<one.two.Base.NestedClass>) {'
  null

KtParameterList(290,359): '(c1: Child<NestedClass>, c2: one.two.Child<one.two.Base.NestedClass>)'
  null

KtParameter(291,313): 'c1: Child<NestedClass>'
  null

KtTypeReference(295,313): 'Child<NestedClass>'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Child
    ]

KtUserType(295,313): 'Child<NestedClass>'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Child
    ]

KtNameReferenceExpression(295,300): 'Child'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Child
    ]

KtTypeArgumentList(300,313): '<NestedClass>'
  null

KtTypeProjection(301,312): 'NestedClass'
  null

KtTypeReference(301,312): 'NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtUserType(301,312): 'NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtNameReferenceExpression(301,312): 'NestedClass'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtParameter(315,358): 'c2: one.two.Child<one.two.Base.NestedClass>'
  null

KtTypeReference(319,358): 'one.two.Child<one.two.Base.NestedClass>'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Child
    ]

KtUserType(319,358): 'one.two.Child<one.two.Base.NestedClass>'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Child
    ]

KtUserType(319,326): 'one.two'
  KaSymbolResolutionSuccess:
    symbols = [
      one.two
    ]

KtUserType(319,322): 'one'
  KaSymbolResolutionSuccess:
    symbols = [
      one
    ]

KtNameReferenceExpression(319,322): 'one'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one
    ]

KtNameReferenceExpression(323,326): 'two'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one.two
    ]

KtNameReferenceExpression(327,332): 'Child'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Child
    ]

KtTypeArgumentList(332,358): '<one.two.Base.NestedClass>'
  null

KtTypeProjection(333,357): 'one.two.Base.NestedClass'
  null

KtTypeReference(333,357): 'one.two.Base.NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtUserType(333,357): 'one.two.Base.NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtUserType(333,345): 'one.two.Base'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtUserType(333,340): 'one.two'
  KaSymbolResolutionSuccess:
    symbols = [
      one.two
    ]

KtUserType(333,336): 'one'
  KaSymbolResolutionSuccess:
    symbols = [
      one
    ]

KtNameReferenceExpression(333,336): 'one'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one
    ]

KtNameReferenceExpression(337,340): 'two'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one.two
    ]

KtNameReferenceExpression(341,345): 'Base'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base
    ]

KtNameReferenceExpression(346,357): 'NestedClass'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtBlockExpression(360,434): '{'
  null

KtProperty(366,405): 'val nested: NestedClass = NestedClass()'
  null

KtTypeReference(378,389): 'NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtUserType(378,389): 'NestedClass'
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtNameReferenceExpression(378,389): 'NestedClass'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtCallExpression(392,405): 'NestedClass()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(): one.two.Base.NestedClass
    ]

KtNameReferenceExpression(392,403): 'NestedClass'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.NestedClass
    ]

KtValueArgumentList(403,405): '()'
  null

KtProperty(410,432): 'val inner = c1.Inner()'
  null

KtDotQualifiedExpression(422,432): 'c1.Inner()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(<dispatch receiver>: one.two.Base<B>): one.two.Base.Inner<B>
    ]

KtNameReferenceExpression(422,424): 'c1'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      c1: one.two.Child<one.two.Base.NestedClass>
    ]

KtCallExpression(425,432): 'Inner()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(<dispatch receiver>: one.two.Base<B>): one.two.Base.Inner<B>
    ]

KtNameReferenceExpression(425,430): 'Inner'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      one/two/Base.Inner
    ]

KtValueArgumentList(430,432): '()'
  null
