(CommandList
  children: [
    (C {(echo)} {(DQ ('/*'))})
    (C {(echo)} {(DQ (' * hashsize.h -- hash and token table constants'))})
    (C {(echo)} {(DQ (' */'))})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:CAPS)
          op: Equal
          rhs: 
            {
              (DQ 
                (BracedVarSub
                  token: <VSub_Number 1>
                  suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(Caps)})
                  spids: [117 121]
                )
              )
            }
          spids: [115]
        )
      ]
      spids: [115]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:TABSIZE)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (Pipeline
                        children: [
                          (C {(grep)} {(-v)} {(SQ <'^[ #]'>)} {($ VSub_Name '$CAPS')})
                          (C {(grep)} {(-v)} {(DQ ('^') (Lit_Other '$'))})
                          (C {(grep)} {(-v)} {(DQ ('^capalias'))})
                          (C {(grep)} {(-v)} {(DQ ('^infoalias'))})
                          (C {(wc)} {(-l)})
                        ]
                        negated: False
                      )
                    ]
                  )
                left_token: <Left_Backtick '`'>
                spids: [125 171]
              )
            }
          spids: [124]
        )
      ]
      spids: [124]
    )
    (C {(echo)} {(DQ )})
    (C {(echo)} {(DQ ('#define CAPTABSIZE\t') (${ VSub_Name TABSIZE))})
    (C {(echo)} {(DQ ('#define HASHTABSIZE\t(') (${ VSub_Name TABSIZE) (' * 2)'))})
  ]
)