(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:result)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_Number '$4'))}
          spids: [1]
        )
      ]
    )
    (command.Case
      to_match: {(DQ ($ Id.VSub_Number '$1'))}
      arms: [
        (case_arm
          pat_list: [{<Id.Lit_Star '*'> <c> <Id.Lit_Star '*'>}]
          action: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Simple
                  words: [{<'./compile'>} {($ Id.VSub_Number '$2') <.c>}]
                  redirects: [
                    (redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {<'/dev/null'>}
                    )
                    (redir
                      op: <Id.Redir_GreatAnd '2>&'>
                      loc: (redir_loc.Fd fd:2)
                      arg: {<1>}
                    )
                  ]
                  do_fork: T
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:result)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$3'))}
                      spids: [34]
                    )
                  ]
                )
              ]
            )
          ]
          spids: [16 19 39 -1]
        )
      ]
    )
    (command.Case
      to_match: {(DQ ($ Id.VSub_Number '$1'))}
      arms: [
        (case_arm
          pat_list: [{<Id.Lit_Star '*'> <l> <Id.Lit_Star '*'>}]
          action: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Simple
                  words: [{<'./load'>} {($ Id.VSub_Number '$2')}]
                  redirects: [
                    (redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {<'/dev/null'>}
                    )
                    (redir
                      op: <Id.Redir_GreatAnd '2>&'>
                      loc: (redir_loc.Fd fd:2)
                      arg: {<1>}
                    )
                  ]
                  do_fork: T
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:result)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$3'))}
                      spids: [70]
                    )
                  ]
                )
              ]
            )
          ]
          spids: [53 56 75 -1]
        )
      ]
    )
    (command.Case
      to_match: {(DQ ($ Id.VSub_Number '$1'))}
      arms: [
        (case_arm
          pat_list: [{<Id.Lit_Star '*'> <r> <Id.Lit_Star '*'>}]
          action: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Simple
                  words: [{<'./'> ($ Id.VSub_Number '$2')}]
                  redirects: [
                    (redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {<'/dev/null'>}
                    )
                    (redir
                      op: <Id.Redir_GreatAnd '2>&'>
                      loc: (redir_loc.Fd fd:2)
                      arg: {<1>}
                    )
                  ]
                  do_fork: T
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:result)
                      op: assign_op.Equal
                      rhs: {(DQ ($ Id.VSub_Number '$3'))}
                      spids: [105]
                    )
                  ]
                )
              ]
            )
          ]
          spids: [89 92 110 -1]
        )
      ]
    )
    (C {<rm>} {<-f>} {($ Id.VSub_Number '$2') <.o>} {($ Id.VSub_Number '$2')})
    (C {<exec>} {<cat>} {(DQ ($ Id.VSub_DollarName '$result'))})
  ]
)