(CommandList
  children: [
    (C {(Lit_Other ':')} {(List)} {(all)} {(system)} {(directories)} {(containing)} {(the)} {(argument)})
    (C {(Lit_Other ':')} {(Author) (Lit_Other ':')} {(Terrence)} {(W.)} {(Holm)})
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(test)} {($ VSub_Pound '$#')} {(-ne)} {(1)})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(echo)} {(DQ ('Usage:  whereis  name'))})
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
          ]
          spids: [16777215 41]
        )
      ]
      spids: [16777215 55]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:path)
          op: Equal
          rhs: 
            {
              (DQ ('/bin /lib /etc') ('      /usr/bin /usr/lib') 
                ('      /usr/include /usr/include/sys')
              )
            }
          spids: [58]
        )
      ]
      spids: [58]
    )
    (ForEach
      iter_name: dir
      iter_words: [{($ VSub_Name '$path')}]
      do_arg_iter: F
      body: 
        (DoGroup
          children: [
            (ForEach
              iter_name: file
              iter_words: [
                {($ VSub_Name '$dir') (/) ($ VSub_Number '$1')}
                {($ VSub_Name '$dir') (/) ($ VSub_Number '$1') (.) (Lit_Other '*')}
              ]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-f)} {($ VSub_Name '$file')})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [(C {(echo)} {($ VSub_Name '$file')})]
                          spids: [16777215 109]
                        )
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-d)} {($ VSub_Name '$file')})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [(C {(echo)} {($ VSub_Name '$file') (/)})]
                          spids: [118 127]
                        )
                      ]
                      spids: [16777215 136]
                    )
                  ]
                  spids: [97 139]
                )
              spids: [85 95]
            )
          ]
          spids: [77 142]
        )
      spids: [73 75]
    )
    (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
  ]
)