KtFile: 'propInitializers.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

KtClass(78,268): 'enum class MyEnum {'
  null

KtDeclarationModifierList(78,82): 'enum'
  null

KtClassBody(96,268): '{'
  null

KtEnumEntry(102,110): 'Option1,'
  null

KtEnumEntry(111,119): 'Option2,'
  null

KtEnumEntry(120,128): 'Option3;'
  null

KtObjectDeclaration(133,266): 'companion object {'
  null

KtDeclarationModifierList(133,142): 'companion'
  null

KtClassBody(150,266): '{'
  null

KtProperty(160,190): 'val enumProp: MyEnum = Option1'
  null

KtTypeReference(174,180): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(174,180): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(174,180): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(183,190): 'Option1'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option1
    ]

KtProperty(199,226): 'val stringProp: String = ""'
  null

KtTypeReference(215,221): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtUserType(215,221): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

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

KtStringTemplateExpression(224,226): '""'
  null

KtNamedFunction(235,260): 'fun getOption() = Option1'
  null

KtParameterList(248,250): '()'
  null

KtNameReferenceExpression(253,260): 'Option1'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option1
    ]

KtProperty(270,306): 'val EnumOptionAlias = MyEnum.Option1'
  null

KtDotQualifiedExpression(292,306): 'MyEnum.Option1'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option1
    ]

KtNameReferenceExpression(292,298): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(299,306): 'Option1'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option1
    ]

KtProperty(308,340): 'val OptionAlias = MyEnum.Option2'
  null

KtDotQualifiedExpression(326,340): 'MyEnum.Option2'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option2
    ]

KtNameReferenceExpression(326,332): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(333,340): 'Option2'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option2
    ]

KtProperty(342,375): 'val tlEnumProp1: MyEnum = Option1'
  null

KtTypeReference(359,365): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(359,365): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(359,365): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(368,375): 'Option1'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option1
    ]

KtProperty(376,413): 'val tlEnumProp2: MyEnum = OptionAlias'
  null

KtTypeReference(393,399): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(393,399): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(393,399): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(402,413): 'OptionAlias'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val OptionAlias: MyEnum
    ]

KtProperty(414,448): 'val tlEnumProp3: MyEnum = enumProp'
  null

KtTypeReference(431,437): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(431,437): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(431,437): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(440,448): 'enumProp'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val enumProp: MyEnum
    ]

KtProperty(449,487): 'val topLevelProp4: MyEnum = stringProp'
  null

KtTypeReference(468,474): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(468,474): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(468,474): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(477,487): 'stringProp'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val stringProp: kotlin.String
    ]

KtNamedFunction(489,598): 'fun testReassignment() {'
  null

KtParameterList(509,511): '()'
  null

KtBlockExpression(512,598): '{'
  null

KtProperty(518,541): 'var m: MyEnum = Option1'
  null

KtTypeReference(525,531): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(525,531): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(525,531): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(534,541): 'Option1'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option1
    ]

KtBinaryExpression(546,557): 'm = Option1'
  KaSymbolResolutionSuccess:
    symbols = [
      var m: MyEnum
    ]

KtNameReferenceExpression(546,547): 'm'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      var m: MyEnum
    ]

KtOperationReferenceExpression(548,549): '='
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  null

KtNameReferenceExpression(550,557): 'Option1'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option1
    ]

KtBinaryExpression(562,577): 'm = OptionAlias'
  KaSymbolResolutionSuccess:
    symbols = [
      var m: MyEnum
    ]

KtNameReferenceExpression(562,563): 'm'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      var m: MyEnum
    ]

KtOperationReferenceExpression(564,565): '='
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  null

KtNameReferenceExpression(566,577): 'OptionAlias'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val OptionAlias: MyEnum
    ]

KtBinaryExpression(582,596): 'm = stringProp'
  KaSymbolResolutionSuccess:
    symbols = [
      var m: MyEnum
    ]

KtNameReferenceExpression(582,583): 'm'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      var m: MyEnum
    ]

KtOperationReferenceExpression(584,585): '='
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  null

KtNameReferenceExpression(586,596): 'stringProp'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val stringProp: kotlin.String
    ]

KtNamedFunction(600,679): 'fun testCorrectDefaultParam(arg1: MyEnum = Option1, arg2: MyEnum = enumProp) {}'
  null

KtParameterList(627,676): '(arg1: MyEnum = Option1, arg2: MyEnum = enumProp)'
  null

KtParameter(628,650): 'arg1: MyEnum = Option1'
  null

KtTypeReference(634,640): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(634,640): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(634,640): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(643,650): 'Option1'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option1
    ]

KtParameter(652,675): 'arg2: MyEnum = enumProp'
  null

KtTypeReference(658,664): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(658,664): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(658,664): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(667,675): 'enumProp'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val enumProp: MyEnum
    ]

KtBlockExpression(677,679): '{}'
  null

KtNamedFunction(680,734): 'fun testWrongDefaultParam(arg: MyEnum = stringProp) {}'
  null

KtParameterList(705,731): '(arg: MyEnum = stringProp)'
  null

KtParameter(706,730): 'arg: MyEnum = stringProp'
  null

KtTypeReference(711,717): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(711,717): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(711,717): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(720,730): 'stringProp'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val stringProp: kotlin.String
    ]

KtBlockExpression(732,734): '{}'
  null

KtClass(736,851): 'class PropOwner(val prop: MyEnum = Option2) {'
  null

KtPrimaryConstructor(751,779): '(val prop: MyEnum = Option2)'
  null

KtParameterList(751,779): '(val prop: MyEnum = Option2)'
  null

KtParameter(752,778): 'val prop: MyEnum = Option2'
  null

KtTypeReference(762,768): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(762,768): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(762,768): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(771,778): 'Option2'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum.Option2
    ]

KtClassBody(780,851): '{'
  null

KtProperty(786,814): 'val prop2: MyEnum = enumProp'
  null

KtTypeReference(797,803): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(797,803): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(797,803): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(806,814): 'enumProp'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val enumProp: MyEnum
    ]

KtProperty(819,849): 'val prop3: MyEnum = stringProp'
  null

KtTypeReference(830,836): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(830,836): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(830,836): 'MyEnum'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtNameReferenceExpression(839,849): 'stringProp'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val stringProp: kotlin.String
    ]
