KtFile: 'eitherInDifferentPositions.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

KtClass(78,243): 'sealed interface Either<out E, out A> {'
  null

KtDeclarationModifierList(78,84): 'sealed'
  null

KtTypeParameterList(101,115): '<out E, out A>'
  null

KtTypeParameter(102,107): 'out E'
  null

KtDeclarationModifierList(102,105): 'out'
  null

KtTypeParameter(109,114): 'out A'
  null

KtDeclarationModifierList(109,112): 'out'
  null

KtClassBody(116,243): '{'
  null

KtClass(122,179): 'data class  Left<out E>(val error: E): Either<E, Nothing>'
  null

KtDeclarationModifierList(122,126): 'data'
  null

KtTypeParameterList(138,145): '<out E>'
  null

KtTypeParameter(139,144): 'out E'
  null

KtDeclarationModifierList(139,142): 'out'
  null

KtPrimaryConstructor(145,159): '(val error: E)'
  null

KtParameterList(145,159): '(val error: E)'
  null

KtParameter(146,158): 'val error: E'
  null

KtTypeReference(157,158): 'E'
  null

KtUserType(157,158): 'E'
  null

KtNameReferenceExpression(157,158): 'E'
  null

KtSuperTypeList(161,179): 'Either<E, Nothing>'
  null

KtSuperTypeEntry(161,179): 'Either<E, Nothing>'
  null

KtTypeReference(161,179): 'Either<E, Nothing>'
  null

KtUserType(161,179): 'Either<E, Nothing>'
  null

KtNameReferenceExpression(161,167): 'Either'
  null

KtTypeArgumentList(167,179): '<E, Nothing>'
  null

KtTypeProjection(168,169): 'E'
  null

KtTypeReference(168,169): 'E'
  null

KtUserType(168,169): 'E'
  null

KtNameReferenceExpression(168,169): 'E'
  null

KtTypeProjection(171,178): 'Nothing'
  null

KtTypeReference(171,178): 'Nothing'
  null

KtUserType(171,178): 'Nothing'
  null

KtNameReferenceExpression(171,178): 'Nothing'
  null

KtClass(184,241): 'data class Right<out A>(val value: A): Either<Nothing, A>'
  null

KtDeclarationModifierList(184,188): 'data'
  null

KtTypeParameterList(200,207): '<out A>'
  null

KtTypeParameter(201,206): 'out A'
  null

KtDeclarationModifierList(201,204): 'out'
  null

KtPrimaryConstructor(207,221): '(val value: A)'
  null

KtParameterList(207,221): '(val value: A)'
  null

KtParameter(208,220): 'val value: A'
  null

KtTypeReference(219,220): 'A'
  null

KtUserType(219,220): 'A'
  null

KtNameReferenceExpression(219,220): 'A'
  null

KtSuperTypeList(223,241): 'Either<Nothing, A>'
  null

KtSuperTypeEntry(223,241): 'Either<Nothing, A>'
  null

KtTypeReference(223,241): 'Either<Nothing, A>'
  null

KtUserType(223,241): 'Either<Nothing, A>'
  null

KtNameReferenceExpression(223,229): 'Either'
  null

KtTypeArgumentList(229,241): '<Nothing, A>'
  null

KtTypeProjection(230,237): 'Nothing'
  null

KtTypeReference(230,237): 'Nothing'
  null

KtUserType(230,237): 'Nothing'
  null

KtNameReferenceExpression(230,237): 'Nothing'
  null

KtTypeProjection(239,240): 'A'
  null

KtTypeReference(239,240): 'A'
  null

KtUserType(239,240): 'A'
  null

KtNameReferenceExpression(239,240): 'A'
  null

KtNamedFunction(245,529): 'fun foo(s: Either<String, Int>) {'
  null

KtParameterList(252,276): '(s: Either<String, Int>)'
  null

KtParameter(253,275): 's: Either<String, Int>'
  null

KtTypeReference(256,275): 'Either<String, Int>'
  null

KtUserType(256,275): 'Either<String, Int>'
  null

KtNameReferenceExpression(256,262): 'Either'
  null

KtTypeArgumentList(262,275): '<String, Int>'
  null

KtTypeProjection(263,269): 'String'
  null

KtTypeReference(263,269): 'String'
  null

KtUserType(263,269): 'String'
  null

KtNameReferenceExpression(263,269): 'String'
  null

KtTypeProjection(271,274): 'Int'
  null

KtTypeReference(271,274): 'Int'
  null

KtUserType(271,274): 'Int'
  null

KtNameReferenceExpression(271,274): 'Int'
  null

KtBlockExpression(277,529): '{'
  null

KtWhenExpression(283,365): 'when {'
  null

KtWhenEntry(298,325): 's is Left -> s.error.length'
  null

KtWhenConditionWithExpression(298,307): 's is Left'
  null

KtIsExpression(298,307): 's is Left'
  null

KtNameReferenceExpression(298,299): 's'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = Either<kotlin.String, kotlin.Int>
        symbol = s: Either<kotlin.String, kotlin.Int>
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtOperationReferenceExpression(300,302): 'is'
  null

KtTypeReference(303,307): 'Left'
  null

KtUserType(303,307): 'Left'
  null

KtNameReferenceExpression(303,307): 'Left'
  null

KtDotQualifiedExpression(311,325): 's.error.length'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s.error
        isSafeNavigation = false
        type = kotlin.String
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = length
        receiverType = null
        returnType = kotlin.Int
        symbol = val length: kotlin.Int
        contextParameters = []
        callableId = kotlin/String.length
      typeArgumentsMapping = {}

KtDotQualifiedExpression(311,318): 's.error'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaSmartCastedReceiverValue:
        original = KaExplicitReceiverValue:
          expression = s
          isSafeNavigation = false
          type = Either<kotlin.String, kotlin.Int>
        type = Either.Left<kotlin.String>
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = error
        receiverType = null
        returnType = kotlin.String
        symbol = val error: E
        contextParameters = []
        callableId = /Either.Left.error
      typeArgumentsMapping = {}

KtNameReferenceExpression(311,312): 's'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = Either<kotlin.String, kotlin.Int>
        symbol = s: Either<kotlin.String, kotlin.Int>
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtNameReferenceExpression(313,318): 'error'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaSmartCastedReceiverValue:
        original = KaExplicitReceiverValue:
          expression = s
          isSafeNavigation = false
          type = Either<kotlin.String, kotlin.Int>
        type = Either.Left<kotlin.String>
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = error
        receiverType = null
        returnType = kotlin.String
        symbol = val error: E
        contextParameters = []
        callableId = /Either.Left.error
      typeArgumentsMapping = {}

KtNameReferenceExpression(319,325): 'length'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s.error
        isSafeNavigation = false
        type = kotlin.String
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = length
        receiverType = null
        returnType = kotlin.Int
        symbol = val length: kotlin.Int
        contextParameters = []
        callableId = kotlin/String.length
      typeArgumentsMapping = {}

KtWhenEntry(334,359): 's is Right -> s.value * 1'
  null

KtWhenConditionWithExpression(334,344): 's is Right'
  null

KtIsExpression(334,344): 's is Right'
  null

KtNameReferenceExpression(334,335): 's'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = Either<kotlin.String, kotlin.Int>
        symbol = s: Either<kotlin.String, kotlin.Int>
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtOperationReferenceExpression(336,338): 'is'
  null

KtTypeReference(339,344): 'Right'
  null

KtUserType(339,344): 'Right'
  null

KtNameReferenceExpression(339,344): 'Right'
  null

KtBinaryExpression(348,359): 's.value * 1'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s.value
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.times(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.times
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        1 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtDotQualifiedExpression(348,355): 's.value'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaSmartCastedReceiverValue:
        original = KaExplicitReceiverValue:
          expression = s
          isSafeNavigation = false
          type = Either<kotlin.String, kotlin.Int>
        type = Either.Right<kotlin.Int>
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = value
        receiverType = null
        returnType = kotlin.Int
        symbol = val value: A
        contextParameters = []
        callableId = /Either.Right.value
      typeArgumentsMapping = {}

KtNameReferenceExpression(348,349): 's'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = Either<kotlin.String, kotlin.Int>
        symbol = s: Either<kotlin.String, kotlin.Int>
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtNameReferenceExpression(350,355): 'value'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaSmartCastedReceiverValue:
        original = KaExplicitReceiverValue:
          expression = s
          isSafeNavigation = false
          type = Either<kotlin.String, kotlin.Int>
        type = Either.Right<kotlin.Int>
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = value
        receiverType = null
        returnType = kotlin.Int
        symbol = val value: A
        contextParameters = []
        callableId = /Either.Right.value
      typeArgumentsMapping = {}

KtOperationReferenceExpression(356,357): '*'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s.value
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.times(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.times
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        1 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtConstantExpression(358,359): '1'
  null

KtIfExpression(371,415): 'if (s !is Left) {'
  null

KtContainerNode(375,385): 's !is Left'
  null

KtIsExpression(375,385): 's !is Left'
  null

KtNameReferenceExpression(375,376): 's'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = Either<kotlin.String, kotlin.Int>
        symbol = s: Either<kotlin.String, kotlin.Int>
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtOperationReferenceExpression(377,380): '!is'
  null

KtTypeReference(381,385): 'Left'
  null

KtUserType(381,385): 'Left'
  null

KtNameReferenceExpression(381,385): 'Left'
  null

KtContainerNodeForControlStructureBody(387,415): '{'
  null

KtBlockExpression(387,415): '{'
  null

KtDotQualifiedExpression(397,409): 's.hashCode()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s
        isSafeNavigation = false
        type = Either<kotlin.String, kotlin.Int>
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Any.hashCode(<dispatch receiver>: kotlin.Any): kotlin.Int
        valueParameters = []
        contextParameters = []
        callableId = kotlin/Any.hashCode
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(397,398): 's'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = Either<kotlin.String, kotlin.Int>
        symbol = s: Either<kotlin.String, kotlin.Int>
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtCallExpression(399,409): 'hashCode()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s
        isSafeNavigation = false
        type = Either<kotlin.String, kotlin.Int>
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Any.hashCode(<dispatch receiver>: kotlin.Any): kotlin.Int
        valueParameters = []
        contextParameters = []
        callableId = kotlin/Any.hashCode
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(399,407): 'hashCode'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s
        isSafeNavigation = false
        type = Either<kotlin.String, kotlin.Int>
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Any.hashCode(<dispatch receiver>: kotlin.Any): kotlin.Int
        valueParameters = []
        contextParameters = []
        callableId = kotlin/Any.hashCode
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(407,409): '()'
  null

KtIfExpression(421,493): 'if (1 == "".hashCode()) {'
  null

KtContainerNode(425,443): '1 == "".hashCode()'
  null

KtBinaryExpression(425,443): '1 == "".hashCode()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = 1
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Boolean
        symbol = kotlin/Int.equals(<dispatch receiver>: kotlin.Int, other: kotlin.Any?): kotlin.Boolean
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Any?
            symbol = other: kotlin.Any?
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.equals
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        "".hashCode() -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Any?
          symbol = other: kotlin.Any?
          contextParameters = []
          callableId = null)
      }

KtConstantExpression(425,426): '1'
  null

KtOperationReferenceExpression(427,429): '=='
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = 1
        isSafeNavigation = false
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Boolean
        symbol = kotlin/Int.equals(<dispatch receiver>: kotlin.Int, other: kotlin.Any?): kotlin.Boolean
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Any?
            symbol = other: kotlin.Any?
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.equals
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        "".hashCode() -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Any?
          symbol = other: kotlin.Any?
          contextParameters = []
          callableId = null)
      }

KtDotQualifiedExpression(430,443): '"".hashCode()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = ""
        isSafeNavigation = false
        type = kotlin.String
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Any.hashCode(<dispatch receiver>: kotlin.Any): kotlin.Int
        valueParameters = []
        contextParameters = []
        callableId = kotlin/Any.hashCode
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtStringTemplateExpression(430,432): '""'
  null

KtCallExpression(433,443): 'hashCode()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = ""
        isSafeNavigation = false
        type = kotlin.String
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Any.hashCode(<dispatch receiver>: kotlin.Any): kotlin.Int
        valueParameters = []
        contextParameters = []
        callableId = kotlin/Any.hashCode
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(433,441): 'hashCode'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = ""
        isSafeNavigation = false
        type = kotlin.String
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Any.hashCode(<dispatch receiver>: kotlin.Any): kotlin.Int
        valueParameters = []
        contextParameters = []
        callableId = kotlin/Any.hashCode
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(441,443): '()'
  null

KtContainerNodeForControlStructureBody(445,493): '{'
  null

KtBlockExpression(445,493): '{'
  null

KtBinaryExpressionWithTypeRHS(455,464): 's as Left'
  null

KtNameReferenceExpression(455,456): 's'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = Either<kotlin.String, kotlin.Int>
        symbol = s: Either<kotlin.String, kotlin.Int>
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtOperationReferenceExpression(457,459): 'as'
  null

KtTypeReference(460,464): 'Left'
  null

KtUserType(460,464): 'Left'
  null

KtNameReferenceExpression(460,464): 'Left'
  null

KtDotQualifiedExpression(473,487): 's.error.length'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s.error
        isSafeNavigation = false
        type = kotlin.String
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = length
        receiverType = null
        returnType = kotlin.Int
        symbol = val length: kotlin.Int
        contextParameters = []
        callableId = kotlin/String.length
      typeArgumentsMapping = {}

KtDotQualifiedExpression(473,480): 's.error'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaSmartCastedReceiverValue:
        original = KaExplicitReceiverValue:
          expression = s
          isSafeNavigation = false
          type = Either<kotlin.String, kotlin.Int>
        type = Either.Left<kotlin.String>
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = error
        receiverType = null
        returnType = kotlin.String
        symbol = val error: E
        contextParameters = []
        callableId = /Either.Left.error
      typeArgumentsMapping = {}

KtNameReferenceExpression(473,474): 's'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = Either<kotlin.String, kotlin.Int>
        symbol = s: Either<kotlin.String, kotlin.Int>
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtNameReferenceExpression(475,480): 'error'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaSmartCastedReceiverValue:
        original = KaExplicitReceiverValue:
          expression = s
          isSafeNavigation = false
          type = Either<kotlin.String, kotlin.Int>
        type = Either.Left<kotlin.String>
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = error
        receiverType = null
        returnType = kotlin.String
        symbol = val error: E
        contextParameters = []
        callableId = /Either.Left.error
      typeArgumentsMapping = {}

KtNameReferenceExpression(481,487): 'length'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s.error
        isSafeNavigation = false
        type = kotlin.String
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = length
        receiverType = null
        returnType = kotlin.Int
        symbol = val length: kotlin.Int
        contextParameters = []
        callableId = kotlin/String.length
      typeArgumentsMapping = {}

KtSafeQualifiedExpression(499,527): '(s as? Right)?.value?.div(1)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = (s as? Right)?.value
        isSafeNavigation = true
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.div(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.div
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        1 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtSafeQualifiedExpression(499,519): '(s as? Right)?.value'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s as? Right
        isSafeNavigation = true
        type = Either.Right<kotlin.Int>
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = value
        receiverType = null
        returnType = kotlin.Int
        symbol = val value: A
        contextParameters = []
        callableId = /Either.Right.value
      typeArgumentsMapping = {}

KtParenthesizedExpression(499,512): '(s as? Right)'
  null

KtBinaryExpressionWithTypeRHS(500,511): 's as? Right'
  null

KtNameReferenceExpression(500,501): 's'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = s
        receiverType = null
        returnType = Either<kotlin.String, kotlin.Int>
        symbol = s: Either<kotlin.String, kotlin.Int>
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtOperationReferenceExpression(502,505): 'as?'
  null

KtTypeReference(506,511): 'Right'
  null

KtUserType(506,511): 'Right'
  null

KtNameReferenceExpression(506,511): 'Right'
  null

KtNameReferenceExpression(514,519): 'value'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = s as? Right
        isSafeNavigation = true
        type = Either.Right<kotlin.Int>
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = value
        receiverType = null
        returnType = kotlin.Int
        symbol = val value: A
        contextParameters = []
        callableId = /Either.Right.value
      typeArgumentsMapping = {}

KtCallExpression(521,527): 'div(1)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = (s as? Right)?.value
        isSafeNavigation = true
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.div(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.div
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        1 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(521,524): 'div'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = (s as? Right)?.value
        isSafeNavigation = true
        type = kotlin.Int
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Int
        symbol = kotlin/Int.div(<dispatch receiver>: kotlin.Int, other: kotlin.Int): kotlin.Int
        valueParameters = [
          KaVariableSignature:
            name = other
            receiverType = null
            returnType = kotlin.Int
            symbol = other: kotlin.Int
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/Int.div
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        1 -> (KaVariableSignature:
          name = other
          receiverType = null
          returnType = kotlin.Int
          symbol = other: kotlin.Int
          contextParameters = []
          callableId = null)
      }

KtValueArgumentList(524,527): '(1)'
  null

KtValueArgument(525,526): '1'
  null

KtConstantExpression(525,526): '1'
  null
