(CommandList
  children: [
    (Pipeline
      children: [
        (C {(cat)} {($ VSub_Number '$1')})
        (While
          cond: [(C {(read)} {(line)})]
          body: 
            (DoGroup
              children: [
                (AndOr
                  ops: [Op_DPipe]
                  children: [
                    (Pipeline
                      children: [
                        (C {(echo)} {($ VSub_Name '$line')})
                        (C {(awk)} 
                          {
                            (SQ 
                              <
'NF==4 { print "mkdir -p "$4" || exit 1; chmod "$1" "$4" || exit 1; chown "$2" "$4" || exit 1; chgrp "$3" "$4" || exit 1" } NF==3 { print "rm "$1" ; ln -s "$3" "$1" || exit 1" } '
                              >
                            )
                          }
                        )
                        (C {(sh)})
                      ]
                      negated: F
                    )
                    (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
                  ]
                )
              ]
              spids: [15 39]
            )
        )
      ]
      negated: F
    )
  ]
)