KtFile: 'main.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(24,34): 'import a.*'
  null

KtImportDirective(24,34): 'import a.*'
  null

KtNameReferenceExpression(31,32): 'a'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      a
    ]

KtClass(36,146): 'sealed interface MySealed {'
  null

KtDeclarationModifierList(36,42): 'sealed'
  null

KtClassBody(62,146): '{'
  null

KtClass(68,103): 'class Left(val x: String): MySealed'
  null

KtPrimaryConstructor(78,93): '(val x: String)'
  null

KtParameterList(78,93): '(val x: String)'
  null

KtParameter(79,92): 'val x: String'
  null

KtTypeReference(86,92): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtUserType(86,92): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

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

KtSuperTypeList(95,103): 'MySealed'
  null

KtSuperTypeEntry(95,103): 'MySealed'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtTypeReference(95,103): 'MySealed'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtUserType(95,103): 'MySealed'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtNameReferenceExpression(95,103): 'MySealed'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtClass(108,144): 'class Right(val y: String): MySealed'
  null

KtPrimaryConstructor(119,134): '(val y: String)'
  null

KtParameterList(119,134): '(val y: String)'
  null

KtParameter(120,133): 'val y: String'
  null

KtTypeReference(127,133): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

KtUserType(127,133): 'String'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/String
    ]

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

KtSuperTypeList(136,144): 'MySealed'
  null

KtSuperTypeEntry(136,144): 'MySealed'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtTypeReference(136,144): 'MySealed'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtUserType(136,144): 'MySealed'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtNameReferenceExpression(136,144): 'MySealed'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtNamedFunction(148,226): 'fun MySealed.getOrElse1() = when (this) {'
  null

KtTypeReference(152,160): 'MySealed'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtUserType(152,160): 'MySealed'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtNameReferenceExpression(152,160): 'MySealed'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed
    ]

KtParameterList(171,173): '()'
  null

KtWhenExpression(176,226): 'when (this) {'
  null

KtThisExpression(182,186): 'this'
  KaSymbolResolutionSuccess:
    symbols = [
      KaReceiverParameterSymbol:
        anchorPsi: KtTypeReference
        annotations: []
        callableId: null
        contextParameters: []
        contextReceivers: []
        isActual: false
        isCompanion: false
        isDelegated: false
        isExpect: false
        isExtension: false
        isExternal: false
        isVal: true
        location: LOCAL
        modality: FINAL
        name: <receiver>
        origin: SOURCE
        owningCallableSymbol: KaNamedFunctionSymbol(/getOrElse1)
        psi: KtTypeReference
        realPsi: KtTypeReference
        receiverParameter: null
        returnType: KaUsualClassType:
          annotations: []
          typeArguments: []
          type: MySealed
        typeParameters: []
        visibility: PUBLIC
    ]

KtNameReferenceExpression(182,186): 'this'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      KaReceiverParameterSymbol:
        anchorPsi: KtTypeReference
        annotations: []
        callableId: null
        contextParameters: []
        contextReceivers: []
        isActual: false
        isCompanion: false
        isDelegated: false
        isExpect: false
        isExtension: false
        isExternal: false
        isVal: true
        location: LOCAL
        modality: FINAL
        name: <receiver>
        origin: SOURCE
        owningCallableSymbol: KaNamedFunctionSymbol(/getOrElse1)
        psi: KtTypeReference
        realPsi: KtTypeReference
        receiverParameter: null
        returnType: KaUsualClassType:
          annotations: []
          typeArguments: []
          type: MySealed
        typeParameters: []
        visibility: PUBLIC
    ]

KtWhenEntry(194,206): 'is Left -> x'
  null

KtWhenConditionIsPattern(194,201): 'is Left'
  null

KtTypeReference(197,201): 'Left'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed.Left
    ]

KtUserType(197,201): 'Left'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed.Left
    ]

KtNameReferenceExpression(197,201): 'Left'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed.Left
    ]

KtNameReferenceExpression(205,206): 'x'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val x: kotlin.String
    ]

KtWhenEntry(211,224): 'is Right -> y'
  null

KtWhenConditionIsPattern(211,219): 'is Right'
  null

KtTypeReference(214,219): 'Right'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed.Right
    ]

KtUserType(214,219): 'Right'
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed.Right
    ]

KtNameReferenceExpression(214,219): 'Right'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: Used
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      /MySealed.Right
    ]

KtNameReferenceExpression(223,224): 'y'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      val y: kotlin.String
    ]

KtNamedFunction(228,301): 'fun Any.getOrElse2() = when (this) {'
  null

KtTypeReference(232,235): 'Any'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Any
    ]

KtUserType(232,235): 'Any'
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Any
    ]

KtNameReferenceExpression(232,235): 'Any'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      kotlin/Any
    ]

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

KtWhenExpression(251,301): 'when (this) {'
  null

KtThisExpression(257,261): 'this'
  KaSymbolResolutionSuccess:
    symbols = [
      KaReceiverParameterSymbol:
        anchorPsi: KtTypeReference
        annotations: []
        callableId: null
        contextParameters: []
        contextReceivers: []
        isActual: false
        isCompanion: false
        isDelegated: false
        isExpect: false
        isExtension: false
        isExternal: false
        isVal: true
        location: LOCAL
        modality: FINAL
        name: <receiver>
        origin: SOURCE
        owningCallableSymbol: KaNamedFunctionSymbol(/getOrElse2)
        psi: KtTypeReference
        realPsi: KtTypeReference
        receiverParameter: null
        returnType: KaUsualClassType:
          annotations: []
          typeArguments: []
          type: kotlin/Any
        typeParameters: []
        visibility: PUBLIC
    ]

KtNameReferenceExpression(257,261): 'this'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionSuccess:
    symbols = [
      KaReceiverParameterSymbol:
        anchorPsi: KtTypeReference
        annotations: []
        callableId: null
        contextParameters: []
        contextReceivers: []
        isActual: false
        isCompanion: false
        isDelegated: false
        isExpect: false
        isExtension: false
        isExternal: false
        isVal: true
        location: LOCAL
        modality: FINAL
        name: <receiver>
        origin: SOURCE
        owningCallableSymbol: KaNamedFunctionSymbol(/getOrElse2)
        psi: KtTypeReference
        realPsi: KtTypeReference
        receiverParameter: null
        returnType: KaUsualClassType:
          annotations: []
          typeArguments: []
          type: kotlin/Any
        typeParameters: []
        visibility: PUBLIC
    ]

KtWhenEntry(269,281): 'is Left -> x'
  null

KtWhenConditionIsPattern(269,276): 'is Left'
  null

KtTypeReference(272,276): 'Left'
  KaSymbolResolutionError:
    candidateSymbols = [
      a/Left
    ]
    diagnostic = ERROR<INVISIBLE_REFERENCE: Cannot access 'class Left : Any': it is private in file.>

KtUserType(272,276): 'Left'
  KaSymbolResolutionError:
    candidateSymbols = [
      a/Left
    ]
    diagnostic = ERROR<INVISIBLE_REFERENCE: Cannot access 'class Left : Any': it is private in file.>

KtNameReferenceExpression(272,276): 'Left'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionError:
    candidateSymbols = [
      a/Left
    ]
    diagnostic = ERROR<INVISIBLE_REFERENCE: Cannot access 'class Left : Any': it is private in file.>

KtNameReferenceExpression(280,281): 'x'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionError:
    candidateSymbols = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'x'.>

KtWhenEntry(286,299): 'is Right -> y'
  null

KtWhenConditionIsPattern(286,294): 'is Right'
  null

KtTypeReference(289,294): 'Right'
  KaSymbolResolutionError:
    candidateSymbols = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'Right'.>

KtUserType(289,294): 'Right'
  KaSymbolResolutionError:
    candidateSymbols = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'Right'.>

KtNameReferenceExpression(289,294): 'Right'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionError:
    candidateSymbols = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'Right'.>

KtNameReferenceExpression(298,299): 'y'
  isImplicitReferenceToCompanion: false
  contextSensitiveResolutionStatus: NotAvailable
  lookupLocally: false
  KaSymbolResolutionError:
    candidateSymbols = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'y'.>
