SHELL_SCRIPT
  COMMANDS_LIST
    SHELL_COMMAND
      BLOCK
        PsiElement({)('{')
        PsiWhiteSpace(' ')
        COMPOUND_LIST
          PIPELINE_COMMAND_LIST
            SIMPLE_COMMAND
              GENERIC_COMMAND_DIRECTIVE
                LITERAL
                  PsiElement(word)('git')
              PsiWhiteSpace(' ')
              LITERAL
                PsiElement(word)('log')
            PsiWhiteSpace(' ')
            PsiElement(|)('|')
            PsiWhiteSpace(' ')
            GENERIC_COMMAND_DIRECTIVE
              LITERAL
                PsiElement(word)('cat')
          PsiElement(;)(';')
        PsiWhiteSpace(' ')
        PsiElement(})('}')
    PsiWhiteSpace(' ')
    PsiElement(|&)('|&')
    PsiWhiteSpace(' ')
    SIMPLE_COMMAND
      GENERIC_COMMAND_DIRECTIVE
        LITERAL
          PsiElement(word)('perl')
      PsiWhiteSpace(' ')
      LITERAL
        PsiElement(word)('-pe')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(RAW_STRING)(''s/^/\t$1/g'')
    PsiElement(;)(';')
  PsiElement(\n)('\n')
  PsiElement(\n)('\n')
  COMMANDS_LIST
    SIMPLE_COMMAND
      GENERIC_COMMAND_DIRECTIVE
        LITERAL
          PsiElement(word)('declare')
      PsiWhiteSpace(' ')
      LITERAL
        PsiElement(word)('-f')
      PsiWhiteSpace(' ')
      STRING
        PsiElement(OPEN_QUOTE)('"')
        PsiElement(STRING_CONTENT)('cmd_')
        PsiElement($)('$')
        SHELL_PARAMETER_EXPANSION
          PsiElement({)('{')
          PsiElement(word)('ACTION')
          PsiElement(})('}')
        PsiElement(CLOSE_QUOTE)('"')
      PsiWhiteSpace(' ')
      SIMPLE_COMMAND_ELEMENT
        REDIRECTION
          PsiElement(>&)('>&')
          PsiWhiteSpace(' ')
          PsiElement(word)('/dev/null')
    PsiWhiteSpace(' ')
    PsiElement(||)('||')
    PsiWhiteSpace(' ')
    SHELL_COMMAND
      BLOCK
        PsiElement({)('{')
        COMPOUND_LIST
          PsiElement(\n)('\n')
          PsiWhiteSpace('\t')
          SIMPLE_COMMAND
            GENERIC_COMMAND_DIRECTIVE
              LITERAL
                PsiElement(word)('show_help')
            PsiWhiteSpace(' ')
            STRING
              PsiElement(OPEN_QUOTE)('"')
              VARIABLE
                PsiElement(var)('$ACTION')
              PsiElement(STRING_CONTENT)(' is not a valid command')
              PsiElement(CLOSE_QUOTE)('"')
          PsiElement(;)(';')
          PsiElement(\n)('\n')
          PsiWhiteSpace('\t')
          SIMPLE_COMMAND
            GENERIC_COMMAND_DIRECTIVE
              LITERAL
                PsiElement(word)('exit')
            PsiWhiteSpace(' ')
            NUMBER
              PsiElement(int)('1')
          PsiElement(;)(';')
          PsiElement(\n)('\n')
        PsiElement(})('}')
    PsiElement(;)(';')