KtFile: 'simpleVarargs.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

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

KtDeclarationModifierList(78,82): 'enum'
  null

KtClassBody(96,108): '{'
  null

KtEnumEntry(102,104): 'X,'
  null

KtEnumEntry(105,106): 'Y'
  null

KtNamedFunction(110,138): 'fun foo(vararg a: MyEnum) {}'
  null

KtParameterList(117,135): '(vararg a: MyEnum)'
  null

KtParameter(118,134): 'vararg a: MyEnum'
  null

KtDeclarationModifierList(118,124): 'vararg'
  null

KtTypeReference(128,134): 'MyEnum'
  null

KtUserType(128,134): 'MyEnum'
  null

KtNameReferenceExpression(128,134): 'MyEnum'
  null

KtBlockExpression(136,138): '{}'
  null

KtNamedFunction(140,168): 'fun main() {'
  null

KtParameterList(148,150): '()'
  null

KtBlockExpression(151,168): '{'
  null

KtCallExpression(157,166): 'foo(X, Y)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /foo(vararg a: MyEnum): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = a
            receiverType = null
            returnType = MyEnum
            symbol = vararg a: MyEnum
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /foo
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        X -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = vararg a: MyEnum
          contextParameters = []
          callableId = null),
        Y -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = vararg a: MyEnum
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(157,160): 'foo'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /foo(vararg a: MyEnum): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = a
            receiverType = null
            returnType = MyEnum
            symbol = vararg a: MyEnum
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /foo
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        X -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = vararg a: MyEnum
          contextParameters = []
          callableId = null),
        Y -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = vararg a: MyEnum
          contextParameters = []
          callableId = null)
      }

KtValueArgumentList(160,166): '(X, Y)'
  null

KtValueArgument(161,162): 'X'
  null

KtNameReferenceExpression(161,162): 'X'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = X
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = true
      kind = Read
      signature = KaVariableSignature:
        name = X
        receiverType = null
        returnType = MyEnum
        symbol = /MyEnum.X
        contextParameters = []
        callableId = /MyEnum.X
      typeArgumentsMapping = {}

KtValueArgument(164,165): 'Y'
  null

KtNameReferenceExpression(164,165): 'Y'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = Y
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = true
      kind = Read
      signature = KaVariableSignature:
        name = Y
        receiverType = null
        returnType = MyEnum
        symbol = /MyEnum.Y
        contextParameters = []
        callableId = /MyEnum.Y
      typeArgumentsMapping = {}
