(command.CommandList
  children: [
    (C {<set>} {<-e>})
    (command.CommandList
      children: [
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:common_objpfx)
                  op: assign_op.Equal
                  rhs: {($ Id.VSub_Number '$1')}
                  spids: [54]
                )
              ]
            )
          terminator: <Id.Op_Semi _>
        )
        (C {<shift>})
      ]
    )
    (command.CommandList
      children: [
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:test_program_prefix)
                  op: assign_op.Equal
                  rhs: {($ Id.VSub_Number '$1')}
                  spids: [60]
                )
              ]
            )
          terminator: <Id.Op_Semi _>
        )
        (C {<shift>})
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:status)
          op: assign_op.Equal
          rhs: {<0>}
          spids: [67]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (command.Simple
          words: [
            {(${ Id.VSub_Name test_program_prefix)}
            {(${ Id.VSub_Name common_objpfx) <'stdio-common/tst-unbputc'>}
          ]
          redirects: [
            (redir
              op: <Id.Redir_Great '2>'>
              loc: (redir_loc.Fd fd:2)
              arg: {(${ Id.VSub_Name common_objpfx) <'stdio-common/tst-unbputc.out'>}
            )
          ]
          do_fork: T
        )
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:status)
              op: assign_op.Equal
              rhs: {<1>}
              spids: [93]
            )
          ]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (command.Subshell
          child: 
            (command.Pipeline
              children: [
                (C {<printf>} {<12>})
                (C {<cmp>} {(${ Id.VSub_Name common_objpfx) <'stdio-common/tst-unbputc.out'>} {<->})
              ]
              negated: F
            )
        )
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:status)
              op: assign_op.Equal
              rhs: {<1>}
              spids: [116]
            )
          ]
        )
      ]
    )
    (command.ControlFlow
      token: <Id.ControlFlow_Exit exit>
      arg_word: {($ Id.VSub_DollarName '$status')}
    )
  ]
)