KtFile: 'contextParameters.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

KtClass(0,67): 'class A {'
  null

KtClassBody(8,67): '{'
  null

KtNamedFunction(14,65): 'fun foo(a: String): String {'
  null

KtParameterList(21,32): '(a: String)'
  null

KtParameter(22,31): 'a: String'
  null

KtTypeReference(25,31): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtUserType(25,31): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtNameReferenceExpression(25,31): 'String'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtTypeReference(34,40): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtUserType(34,40): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtNameReferenceExpression(34,40): 'String'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtBlockExpression(41,65): '{'
  null

KtReturnExpression(51,59): 'return a'
  KaSymbolResolutionSuccess:
    symbols = [
      /A.foo(<dispatch receiver>: A, a: kotlin.String): kotlin.String
    ]

KtNameReferenceExpression(58,59): 'a'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      a: kotlin.String
    ]

KtClass(69,409): 'class Base {'
  null

KtClassBody(80,409): '{'
  null

KtNamedFunction(86,164): 'context(a: A)'
  null

KtDeclarationModifierList(86,99): 'context(a: A)'
  null

KtContextReceiverList(86,99): 'context(a: A)'
  null

KtParameter(94,98): 'a: A'
  null

KtTypeReference(97,98): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtUserType(97,98): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

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

KtParameterList(117,119): '()'
  null

KtBlockExpression(120,164): '{'
  null

KtDotQualifiedExpression(130,140): 'this.bar()'
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.bar(<dispatch receiver>: Base): kotlin.Unit
    ]

KtThisExpression(130,134): 'this'
  KaSymbolResolutionSuccess:
    symbols = [
      /Base
    ]

KtNameReferenceExpression(130,134): 'this'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /Base
    ]

KtCallExpression(135,140): 'bar()'
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.bar(<dispatch receiver>: Base): kotlin.Unit
    ]

KtNameReferenceExpression(135,138): 'bar'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.bar(<dispatch receiver>: Base): kotlin.Unit
    ]

KtValueArgumentList(138,140): '()'
  null

KtDotQualifiedExpression(149,158): 'a.foo("")'
  KaSymbolResolutionSuccess:
    symbols = [
      /A.foo(<dispatch receiver>: A, a: kotlin.String): kotlin.String
    ]

KtNameReferenceExpression(149,150): 'a'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      a: A
    ]

KtCallExpression(151,158): 'foo("")'
  KaSymbolResolutionSuccess:
    symbols = [
      /A.foo(<dispatch receiver>: A, a: kotlin.String): kotlin.String
    ]

KtNameReferenceExpression(151,154): 'foo'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A.foo(<dispatch receiver>: A, a: kotlin.String): kotlin.String
    ]

KtValueArgumentList(154,158): '("")'
  null

KtValueArgument(155,157): '""'
  null

KtStringTemplateExpression(155,157): '""'
  null

KtProperty(170,292): 'context(a: A)'
  null

KtDeclarationModifierList(170,183): 'context(a: A)'
  null

KtContextReceiverList(170,183): 'context(a: A)'
  null

KtParameter(178,182): 'a: A'
  null

KtTypeReference(181,182): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtUserType(181,182): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

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

KtTypeReference(208,214): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtUserType(208,214): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtNameReferenceExpression(208,214): 'String'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtPropertyAccessor(223,292): 'get() {'
  null

KtParameterList(226,228): '()'
  null

KtBlockExpression(229,292): '{'
  null

KtDotQualifiedExpression(243,253): 'this.bar()'
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.bar(<dispatch receiver>: Base): kotlin.Unit
    ]

KtThisExpression(243,247): 'this'
  KaSymbolResolutionSuccess:
    symbols = [
      /Base
    ]

KtNameReferenceExpression(243,247): 'this'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /Base
    ]

KtCallExpression(248,253): 'bar()'
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.bar(<dispatch receiver>: Base): kotlin.Unit
    ]

KtNameReferenceExpression(248,251): 'bar'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.bar(<dispatch receiver>: Base): kotlin.Unit
    ]

KtValueArgumentList(251,253): '()'
  null

KtReturnExpression(266,282): 'return a.foo("")'
  KaSymbolResolutionSuccess:
    symbols = [
      <getter>(): kotlin.String
    ]

KtDotQualifiedExpression(273,282): 'a.foo("")'
  KaSymbolResolutionSuccess:
    symbols = [
      /A.foo(<dispatch receiver>: A, a: kotlin.String): kotlin.String
    ]

KtNameReferenceExpression(273,274): 'a'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      a: A
    ]

KtCallExpression(275,282): 'foo("")'
  KaSymbolResolutionSuccess:
    symbols = [
      /A.foo(<dispatch receiver>: A, a: kotlin.String): kotlin.String
    ]

KtNameReferenceExpression(275,278): 'foo'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /A.foo(<dispatch receiver>: A, a: kotlin.String): kotlin.String
    ]

KtValueArgumentList(278,282): '("")'
  null

KtValueArgument(279,281): '""'
  null

KtStringTemplateExpression(279,281): '""'
  null

KtNamedFunction(298,389): 'context(a: A)'
  null

KtDeclarationModifierList(298,311): 'context(a: A)'
  null

KtContextReceiverList(298,311): 'context(a: A)'
  null

KtParameter(306,310): 'a: A'
  null

KtTypeReference(309,310): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

KtUserType(309,310): 'A'
  KaSymbolResolutionSuccess:
    symbols = [
      /A
    ]

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

KtParameterList(336,338): '()'
  null

KtBlockExpression(339,389): '{'
  null

KtCallExpression(349,360): 'funMember()'
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.funMember(<dispatch receiver>: Base): kotlin.Unit
    ]

KtNameReferenceExpression(349,358): 'funMember'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.funMember(<dispatch receiver>: Base): kotlin.Unit
    ]

KtValueArgumentList(358,360): '()'
  null

KtNameReferenceExpression(369,383): 'propertyMember'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val propertyMember: kotlin.String
    ]

KtNamedFunction(395,407): 'fun bar() {}'
  null

KtParameterList(402,404): '()'
  null

KtBlockExpression(405,407): '{}'
  null

KtNamedFunction(411,544): 'fun usageOutsideClass() {'
  null

KtParameterList(432,434): '()'
  null

KtBlockExpression(435,544): '{'
  null

KtCallExpression(441,542): 'with(Base()) {'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/with(receiver: T, block: T.() -> R): R
    ]

KtNameReferenceExpression(441,445): 'with'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/with(receiver: T, block: T.() -> R): R
    ]

KtValueArgumentList(445,453): '(Base())'
  null

KtValueArgument(446,452): 'Base()'
  null

KtCallExpression(446,452): 'Base()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(): Base
    ]

KtNameReferenceExpression(446,450): 'Base'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /Base
    ]

KtValueArgumentList(450,452): '()'
  null

KtLambdaArgument(454,542): '{'
  null

KtLambdaExpression(454,542): '{'
  null

KtFunctionLiteral(454,542): '{'
  null

KtBlockExpression(464,536): 'with(A()) {'
  null

KtCallExpression(464,536): 'with(A()) {'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/with(receiver: T, block: T.() -> R): R
    ]

KtNameReferenceExpression(464,468): 'with'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/with(receiver: T, block: T.() -> R): R
    ]

KtValueArgumentList(468,473): '(A())'
  null

KtValueArgument(469,472): 'A()'
  null

KtCallExpression(469,472): 'A()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(): A
    ]

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

KtValueArgumentList(470,472): '()'
  null

KtLambdaArgument(474,536): '{'
  null

KtLambdaExpression(474,536): '{'
  null

KtFunctionLiteral(474,536): '{'
  null

KtBlockExpression(488,526): 'funMember()'
  null

KtCallExpression(488,499): 'funMember()'
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.funMember(<dispatch receiver>: Base): kotlin.Unit
    ]

KtNameReferenceExpression(488,497): 'funMember'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.funMember(<dispatch receiver>: Base): kotlin.Unit
    ]

KtValueArgumentList(497,499): '()'
  null

KtNameReferenceExpression(512,526): 'propertyMember'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val propertyMember: kotlin.String
    ]

KtNamedFunction(546,637): 'fun usageExplicitContextArguments() {'
  null

KtParameterList(579,581): '()'
  null

KtBlockExpression(582,637): '{'
  null

KtCallExpression(588,635): 'with(Base()) {'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/with(receiver: T, block: T.() -> R): R
    ]

KtNameReferenceExpression(588,592): 'with'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/with(receiver: T, block: T.() -> R): R
    ]

KtValueArgumentList(592,600): '(Base())'
  null

KtValueArgument(593,599): 'Base()'
  null

KtCallExpression(593,599): 'Base()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(): Base
    ]

KtNameReferenceExpression(593,597): 'Base'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /Base
    ]

KtValueArgumentList(597,599): '()'
  null

KtLambdaArgument(601,635): '{'
  null

KtLambdaExpression(601,635): '{'
  null

KtFunctionLiteral(601,635): '{'
  null

KtBlockExpression(611,629): 'funMember(a = A())'
  null

KtCallExpression(611,629): 'funMember(a = A())'
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.funMember(<dispatch receiver>: Base): kotlin.Unit
    ]

KtNameReferenceExpression(611,620): 'funMember'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /Base.funMember(<dispatch receiver>: Base): kotlin.Unit
    ]

KtValueArgumentList(620,629): '(a = A())'
  null

KtValueArgument(621,628): 'a = A()'
  null

KtValueArgumentName(621,622): 'a'
  null

KtNameReferenceExpression(621,622): 'a'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      a: A
    ]

KtCallExpression(625,628): 'A()'
  KaSymbolResolutionSuccess:
    symbols = [
      <constructor>(): A
    ]

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

KtValueArgumentList(626,628): '()'
  null
