SHELL_SCRIPT
  COMMANDS_LIST
    SIMPLE_COMMAND
      GENERIC_COMMAND_DIRECTIVE
        LITERAL
          PsiElement(word)('x')
      PsiWhiteSpace(' ')
      SIMPLE_COMMAND_ELEMENT
        HEREDOC
          PsiElement(HEREDOC_MARKER_TAG)('<<')
          PsiWhiteSpace(' ')
          PsiElement(HEREDOC_MARKER_START)('X')
          PsiElement(\n)('\n')
          PsiElement(HEREDOC_CONTENT)('  abc\n  $abc\n')
          PsiElement(HEREDOC_MARKER_END)('X')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    SIMPLE_COMMAND
      GENERIC_COMMAND_DIRECTIVE
        LITERAL
          PsiElement(word)('x')
      PsiWhiteSpace(' ')
      SIMPLE_COMMAND_ELEMENT
        HEREDOC
          PsiElement(HEREDOC_MARKER_TAG)('<<')
          PsiWhiteSpace(' ')
          PsiElement(HEREDOC_MARKER_START)('X')
          PsiElement(\n)('\n')
          PsiElement(HEREDOC_CONTENT)('  $abc\n')
          PsiElement(HEREDOC_MARKER_END)('X')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    SIMPLE_COMMAND
      GENERIC_COMMAND_DIRECTIVE
        LITERAL
          PsiElement(word)('x')
      PsiWhiteSpace(' ')
      SIMPLE_COMMAND_ELEMENT
        HEREDOC
          PsiElement(HEREDOC_MARKER_TAG)('<<')
          PsiWhiteSpace(' ')
          PsiElement(HEREDOC_MARKER_START)('X')
          PsiWhiteSpace(' ')
          COMMANDS_LIST
            GENERIC_COMMAND_DIRECTIVE
              REDIRECTION
                PsiElement(<<)('<<')
                PsiWhiteSpace(' ')
                PsiElement(word)('Y')
          PsiElement(\n)('\n')
          PsiElement(HEREDOC_CONTENT)('  $abc\n')
          PsiElement(HEREDOC_MARKER_END)('X')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    GENERIC_COMMAND_DIRECTIVE
      LITERAL
        PsiElement(word)('Y')