KtFile: 'main.kt'
  NO_CANDIDATES

KtPackageDirective(29,43): 'package second'
  NO_CANDIDATES

KtNameReferenceExpression(37,43): 'second'
  NO_CANDIDATES

KtImportList(45,82): 'import first.First'
  NO_CANDIDATES

KtImportDirective(45,63): 'import first.First'
  NO_CANDIDATES

KtDotQualifiedExpression(52,63): 'first.First'
  NO_CANDIDATES

KtNameReferenceExpression(52,57): 'first'
  NO_CANDIDATES

KtNameReferenceExpression(58,63): 'First'
  NO_CANDIDATES

KtImportDirective(64,82): 'import first.THREE'
  NO_CANDIDATES

KtDotQualifiedExpression(71,82): 'first.THREE'
  NO_CANDIDATES

KtNameReferenceExpression(71,76): 'first'
  NO_CANDIDATES

KtNameReferenceExpression(77,82): 'THREE'
  NO_CANDIDATES

KtClass(84,122): 'enum class Second {'
  NO_CANDIDATES

KtDeclarationModifierList(84,88): 'enum'
  NO_CANDIDATES

KtClassBody(102,122): '{'
  NO_CANDIDATES

KtEnumEntry(108,114): 'THREE,'
  NO_CANDIDATES

KtEnumEntry(115,120): 'FOUR;'
  NO_CANDIDATES

KtProperty(124,146): 'val ONE = Second.THREE'
  NO_CANDIDATES

KtDotQualifiedExpression(134,146): 'Second.THREE'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = Second
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = THREE
        receiverType = null
        returnType = second.Second
        symbol = second/Second.THREE
        contextParameters = []
        callableId = second/Second.THREE
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtNameReferenceExpression(134,140): 'Second'
  KaInapplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = second.Second
        symbol = <constructor>(): second.Second
        valueParameters = []
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}
      valueArgumentMapping = {}
    diagnostic = ERROR<OTHER_ERROR: Inapplicable candidate>
    isInBestCandidates = false

KtNameReferenceExpression(141,146): 'THREE'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = Second
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = THREE
        receiverType = null
        returnType = second.Second
        symbol = second/Second.THREE
        contextParameters = []
        callableId = second/Second.THREE
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtNamedFunction(148,206): 'fun foo(f: First) = when (f) {'
  NO_CANDIDATES

KtParameterList(155,165): '(f: First)'
  NO_CANDIDATES

KtParameter(156,164): 'f: First'
  NO_CANDIDATES

KtTypeReference(159,164): 'First'
  NO_CANDIDATES

KtUserType(159,164): 'First'
  NO_CANDIDATES

KtNameReferenceExpression(159,164): 'First'
  NO_CANDIDATES

KtWhenExpression(168,206): 'when (f) {'
  NO_CANDIDATES

KtNameReferenceExpression(174,175): 'f'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = f
        receiverType = null
        returnType = first.First
        symbol = f: first.First
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtWhenEntry(183,191): 'ONE -> 1'
  NO_CANDIDATES

KtWhenConditionWithExpression(183,186): 'ONE'
  NO_CANDIDATES

KtNameReferenceExpression(183,186): 'ONE'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = ONE
        receiverType = null
        returnType = second.Second
        symbol = val ONE: second.Second
        contextParameters = []
        callableId = second/ONE
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtConstantExpression(190,191): '1'
  NO_CANDIDATES

KtWhenEntry(196,204): 'TWO -> 2'
  NO_CANDIDATES

KtWhenConditionWithExpression(196,199): 'TWO'
  NO_CANDIDATES

KtNameReferenceExpression(196,199): 'TWO'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = TWO
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = true
      kind = Read
      signature = KaVariableSignature:
        name = TWO
        receiverType = null
        returnType = first.First
        symbol = first/First.TWO
        contextParameters = []
        callableId = first/First.TWO
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtConstantExpression(203,204): '2'
  NO_CANDIDATES

KtNamedFunction(208,270): 'fun bar(s: Second) = when (s) {'
  NO_CANDIDATES

KtParameterList(215,226): '(s: Second)'
  NO_CANDIDATES

KtParameter(216,225): 's: Second'
  NO_CANDIDATES

KtTypeReference(219,225): 'Second'
  NO_CANDIDATES

KtUserType(219,225): 'Second'
  NO_CANDIDATES

KtNameReferenceExpression(219,225): 'Second'
  NO_CANDIDATES

KtWhenExpression(229,270): 'when (s) {'
  NO_CANDIDATES

KtNameReferenceExpression(235,236): 's'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = second.Second
        symbol = s: second.Second
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtWhenEntry(244,254): 'THREE -> 3'
  NO_CANDIDATES

KtWhenConditionWithExpression(244,249): 'THREE'
  NO_CANDIDATES

KtNameReferenceExpression(244,249): 'THREE'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = THREE
        receiverType = null
        returnType = first.First
        symbol = val THREE: first.First
        contextParameters = []
        callableId = first/THREE
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtConstantExpression(253,254): '3'
  NO_CANDIDATES

KtWhenEntry(259,268): 'FOUR -> 4'
  NO_CANDIDATES

KtWhenConditionWithExpression(259,263): 'FOUR'
  NO_CANDIDATES

KtNameReferenceExpression(259,263): 'FOUR'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = FOUR
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = true
      kind = Read
      signature = KaVariableSignature:
        name = FOUR
        receiverType = null
        returnType = second.Second
        symbol = second/Second.FOUR
        contextParameters = []
        callableId = second/Second.FOUR
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtConstantExpression(267,268): '4'
  NO_CANDIDATES
