SHELL_SCRIPT
  COMMANDS_LIST
    SELECT_COMMAND
      PsiElement(select)('select')
      PsiWhiteSpace(' ')
      PsiElement(word)('f')
      PsiWhiteSpace(' ')
      PsiElement(in)('in')
      PsiWhiteSpace(' ')
      NUMBER
        PsiElement(int)('1')
      LIST_TERMINATOR
        PsiElement(;)(';')
      PsiWhiteSpace(' ')
      DO_BLOCK
        PsiElement(do)('do')
        PsiWhiteSpace(' ')
        COMPOUND_LIST
          SHELL_COMMAND
            BLOCK
              PsiElement({)('{')
              COMPOUND_LIST
                PsiElement(\n)('\n')
                SIMPLE_COMMAND
                  GENERIC_COMMAND_DIRECTIVE
                    LITERAL
                      PsiElement(word)('echo')
                  PsiWhiteSpace(' ')
                  NUMBER
                    PsiElement(int)('1')
                PsiElement(\n)('\n')
              PsiElement(})('}')
          PsiElement(\n)('\n')
        PsiWhiteSpace(' ')
        PsiElement(done)('done')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    SELECT_COMMAND
      PsiElement(select)('select')
      PsiWhiteSpace(' ')
      PsiElement(word)('f')
      PsiWhiteSpace(' ')
      PsiElement(in)('in')
      PsiWhiteSpace(' ')
      NUMBER
        PsiElement(int)('1')
      LIST_TERMINATOR
        PsiElement(;)(';')
      PsiWhiteSpace(' ')
      DO_BLOCK
        PsiElement(do)('do')
        PsiWhiteSpace(' ')
        COMPOUND_LIST
          SHELL_COMMAND
            BLOCK
              PsiElement({)('{')
              COMPOUND_LIST
                PsiElement(\n)('\n')
                SIMPLE_COMMAND
                  GENERIC_COMMAND_DIRECTIVE
                    LITERAL
                      PsiElement(word)('echo')
                  PsiWhiteSpace(' ')
                  NUMBER
                    PsiElement(int)('1')
                PsiElement(\n)('\n')
              PsiElement(})('}')
          PsiElement(;)(';')
          PsiElement(\n)('\n')
        PsiWhiteSpace(' ')
        PsiElement(done)('done')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    SELECT_COMMAND
      PsiElement(select)('select')
      PsiWhiteSpace(' ')
      PsiElement(word)('A')
      PsiWhiteSpace(' ')
      DO_BLOCK
        PsiElement(do)('do')
        PsiWhiteSpace(' ')
        COMPOUND_LIST
          SIMPLE_COMMAND
            GENERIC_COMMAND_DIRECTIVE
              LITERAL
                PsiElement(word)('echo')
            PsiWhiteSpace(' ')
            VARIABLE
              PsiElement(var)('$A')
          PsiElement(;)(';')
        PsiWhiteSpace(' ')
        PsiElement(done)('done')