(command.CommandList
  children: [
    (command.Case
      to_match: {($ Id.VSub_Number 1)}
      arms: [
        (case_arm
          pat_list: [{<Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'>}]
          action: []
          spids: [131 134 136 -1]
        )
        (case_arm
          pat_list: [{<Id.Lit_Star '*'>}]
          action: [
            (command.Sentence
              child: 
                (command.Simple
                  words: [
                    {<echo>}
                    {(DQ <'Usage is '> ($ Id.VSub_Number 0) <' num, where num is 0 to 9'>)}
                  ]
                  redirects: [(redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                  more_env: []
                  do_fork: T
                )
              terminator: <Id.Op_Semi _>
            )
            (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>})
          ]
          spids: [139 140 157 -1]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'num_plus_one='> name:num_plus_one)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_Backtick '`'>
                child: (C {<expr>} {($ Id.VSub_Number 1)} {<Id.Lit_Other '+'>} {<1>})
                right: <Id.Backtick_Right '`'>
              )
            }
          spids: [162]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lines_minus_one='> name:lines_minus_one)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_Backtick '`'>
                child: 
                  (C {<expr>} {($ Id.VSub_DollarName num_plus_one)} 
                    {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\*'> ch:'*')} {<3>}
                  )
                right: <Id.Backtick_Right '`'>
              )
            }
          spids: [175]
        )
      ]
      redirects: []
    )
    (command.Pipeline
      children: [
        (C {<head>} 
          {<-> 
            (command_sub
              left_token: <Id.Left_Backtick '`'>
              child: (C {<expr>} {($ Id.VSub_DollarName lines_minus_one)} {<Id.Lit_Other '+'>} {<1>})
              right: <Id.Backtick_Right '`'>
            )
          } 
          {
            (command_sub
              left_token: <Id.Left_Backtick '`'>
              child: (C {<which>} {($ Id.VSub_Number 0)})
              right: <Id.Backtick_Right '`'>
            )
          }
        )
        (C {<tail>} {<-3>})
        (C {<cut>} {<-b2->})
      ]
      negated: F
      stderr_indices: []
    )
  ]
)