KtFile: 'explicitReturnTypes.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
    ]

KtNamedFunction(308,336): 'fun fun1(): MyEnum = Option1'
  null

KtParameterList(316,318): '()'
  null

KtTypeReference(320,326): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(320,326): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

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

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

KtNamedFunction(337,366): 'fun fun2(): MyEnum = enumProp'
  null

KtParameterList(345,347): '()'
  null

KtTypeReference(349,355): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(349,355): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

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

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

KtNamedFunction(367,398): 'fun fun3(): MyEnum = stringProp'
  null

KtParameterList(375,377): '()'
  null

KtTypeReference(379,385): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(379,385): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

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

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

KtProperty(400,450): 'val propWithGetterType'
  null

KtPropertyAccessor(427,450): 'get(): MyEnum = Option1'
  null

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

KtTypeReference(434,440): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(434,440): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

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

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

KtProperty(452,510): 'val wrongPropWithGetterType'
  null

KtPropertyAccessor(484,510): 'get(): MyEnum = stringProp'
  null

KtParameterList(487,489): '()'
  null

KtTypeReference(491,497): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(491,497): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

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

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

KtNamedFunction(512,589): 'fun fun4(b: Boolean): MyEnum {'
  null

KtParameterList(520,532): '(b: Boolean)'
  null

KtParameter(521,531): 'b: Boolean'
  null

KtTypeReference(524,531): 'Boolean'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Boolean
    ]

KtUserType(524,531): 'Boolean'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Boolean
    ]

KtNameReferenceExpression(524,531): 'Boolean'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Boolean
    ]

KtTypeReference(534,540): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

KtUserType(534,540): 'MyEnum'
  KaSymbolResolutionSuccess:
    symbols = [
      /MyEnum
    ]

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

KtBlockExpression(541,589): '{'
  null

KtIfExpression(547,568): 'if (b) return Option1'
  null

KtContainerNode(551,552): 'b'
  null

KtNameReferenceExpression(551,552): 'b'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: true
  KaSymbolResolutionSuccess:
    symbols = [
      b: kotlin.Boolean
    ]

KtContainerNodeForControlStructureBody(554,568): 'return Option1'
  null

KtReturnExpression(554,568): 'return Option1'
  KaSymbolResolutionSuccess:
    symbols = [
      /fun4(b: kotlin.Boolean): MyEnum
    ]

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

KtReturnExpression(573,587): 'return Option2'
  KaSymbolResolutionSuccess:
    symbols = [
      /fun4(b: kotlin.Boolean): MyEnum
    ]

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