SHELL_SCRIPT
  COMMANDS_LIST
    EVAL_COMMAND
      PsiElement(eval)('eval')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(RAW_STRING)(''a=1'')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    EVAL_COMMAND
      PsiElement(eval)('eval')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(OPEN_QUOTE)('"')
        PsiElement(STRING_CONTENT)('a=1')
        PsiElement(CLOSE_QUOTE)('"')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    EVAL_COMMAND
      PsiElement(eval)('eval')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(OPEN_QUOTE)('"')
        PsiElement(STRING_CONTENT)('echo')
        PsiElement(CLOSE_QUOTE)('"')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(OPEN_QUOTE)('"')
        PsiElement(STRING_CONTENT)('abc')
        PsiElement(CLOSE_QUOTE)('"')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(OPEN_QUOTE)('"')
        VARIABLE
          PsiElement(var)('$1')
        PsiElement(CLOSE_QUOTE)('"')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    EVAL_COMMAND
      PsiElement(eval)('eval')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(OPEN_QUOTE)('"')
        PsiElement(CLOSE_QUOTE)('"')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(OPEN_QUOTE)('"')
        PsiElement(CLOSE_QUOTE)('"')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    SIMPLE_COMMAND
      ASSIGNMENT_COMMAND
        LITERAL
          PsiElement(word)('y')
        PsiElement(=)('=')
      SIMPLE_COMMAND_ELEMENT
        COMMAND_SUBSTITUTION_COMMAND
          PsiElement(OPEN_BACKQUOTE)('`')
          COMPOUND_LIST
            EVAL_COMMAND
              PsiElement(eval)('eval')
              PsiWhiteSpace(' ')
              PsiElement(EVAL_CONTENT)('ls')
              PsiWhiteSpace(' ')
              PsiElement(EVAL_CONTENT)('-l')
          PsiElement(CLOSE_BACKQUOTE)('`')
  PsiWhiteSpace('  ')
  PsiComment(Comment)('#  Similar to y=`ls -l`')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    SIMPLE_COMMAND
      GENERIC_COMMAND_DIRECTIVE
        LITERAL
          PsiElement(word)('echo')
      PsiWhiteSpace(' ')
      VARIABLE
        PsiElement(var)('$y')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    EVAL_COMMAND
      PsiElement(eval)('eval')
      PsiWhiteSpace(' ')
      PsiElement(EVAL_CONTENT)('array_member=\${arr')
      SIMPLE_COMMAND_ELEMENT
        PsiElement($)('$')
        SHELL_PARAMETER_EXPANSION
          PsiElement({)('{')
          PsiElement(word)('array_number')
          PsiElement(})('}')
      PsiElement(EVAL_CONTENT)('[element_number]}')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    EVAL_COMMAND
      PsiElement(eval)('eval')
      PsiWhiteSpace(' ')
      SIMPLE_COMMAND_ELEMENT
        COMMAND_SUBSTITUTION_COMMAND
          PsiElement(OPEN_BACKQUOTE)('`')
          COMPOUND_LIST
            SIMPLE_COMMAND
              GENERIC_COMMAND_DIRECTIVE
                LITERAL
                  PsiElement(word)('echo')
              PsiWhiteSpace(' ')
              LITERAL
                PsiElement(word)('args')
              VARIABLE
                PsiElement(var)('$i')
          PsiElement(CLOSE_BACKQUOTE)('`')
      PsiElement(EVAL_CONTENT)('=')
      SIMPLE_COMMAND_ELEMENT
        COMMAND_SUBSTITUTION_COMMAND
          PsiElement(OPEN_BACKQUOTE)('`')
          COMPOUND_LIST
            SIMPLE_COMMAND
              GENERIC_COMMAND_DIRECTIVE
                LITERAL
                  PsiElement(word)('cygpath')
              PsiWhiteSpace(' ')
              LITERAL
                PsiElement(word)('--path')
              PsiWhiteSpace(' ')
              LITERAL
                PsiElement(word)('--ignore')
              PsiWhiteSpace(' ')
              LITERAL
                PsiElement(word)('--mixed')
              PsiWhiteSpace(' ')
              STRING
                PsiElement(OPEN_QUOTE)('"')
                VARIABLE
                  PsiElement(var)('$arg')
                PsiElement(CLOSE_QUOTE)('"')
          PsiElement(CLOSE_BACKQUOTE)('`')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    IF_COMMAND
      PsiElement(if)('if')
      PsiWhiteSpace(' ')
      COMPOUND_LIST
        PIPELINE_COMMAND
          PsiElement(!)('!')
          PsiWhiteSpace(' ')
          EVAL_COMMAND
            PsiElement(eval)('eval')
            PsiWhiteSpace(' ')
            STRING
              PsiElement(OPEN_QUOTE)('"')
              VARIABLE
                PsiElement(var)('$@')
              PsiElement(CLOSE_QUOTE)('"')
        PsiElement(;)(';')
      PsiWhiteSpace(' ')
      THEN_CLAUSE
        PsiElement(then)('then')
        COMPOUND_LIST
          PsiElement(\n)('\n')
          PsiWhiteSpace('\t')
          SIMPLE_COMMAND
            GENERIC_COMMAND_DIRECTIVE
              LITERAL
                PsiElement(word)('echo')
            PsiWhiteSpace(' ')
            SIMPLE_COMMAND_ELEMENT
              REDIRECTION
                PsiElement(>&)('>&')
                NUMBER
                  PsiElement(int)('2')
            PsiWhiteSpace(' ')
            STRING
              PsiElement(OPEN_QUOTE)('"')
              PsiElement(STRING_CONTENT)('WARNING: command failed \"')
              VARIABLE
                PsiElement(var)('$@')
              PsiElement(STRING_CONTENT)('\"')
              PsiElement(CLOSE_QUOTE)('"')
          PsiElement(\n)('\n')
      PsiElement(fi)('fi')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    SIMPLE_COMMAND
      GENERIC_COMMAND_DIRECTIVE
        LITERAL
          PsiElement(word)('echo')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(RAW_STRING)(''$x'')
    PsiWhiteSpace(' ')
    PsiElement(|)('|')
    PsiWhiteSpace(' ')
    EVAL_COMMAND
      PsiElement(eval)('eval')