(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:command)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'printf \'a'> <Id.Lit_BadBackslash '\\'> <nb> <Id.Lit_BadBackslash '\\'> <nc> 
                <Id.Lit_BadBackslash '\\'> <'n\''>
              )
            }
          spids: [4]
        )
      ]
    )
    (C {<mkfifo>} {<first>})
    (C {<mkfifo>} {<rest0>})
    (command.Subshell
      child: 
        (command.Sentence
          child: 
            (command.Pipeline
              children: [
                (C {<eval>} {(DQ ($ Id.VSub_DollarName '$command'))})
                (C {<tee>} 
                  {
                    (command_sub
                      left_token: <Id.Left_ProcSubOut '>('>
                      child: 
                        (command.Simple
                          words: [{<head>} {<-1>}]
                          redirects: [
                            (redir
                              op: <Id.Redir_Great '>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {<first>}
                            )
                          ]
                          do_fork: T
                        )
                    )
                  }
                )
                (command.Simple
                  words: [{<tail>} {<-n>} {<Id.Lit_Other '+'> <2>}]
                  redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<rest0>})]
                  do_fork: T
                )
              ]
              negated: F
            )
          terminator: <Id.Op_Amp _>
        )
    )
    (C {<cat>} {<first>})
    (C {<mkfifo>} {<rest1>})
    (command.Subshell
      child: 
        (command.Sentence
          child: 
            (command.Pipeline
              children: [
                (C {<cat>} {<rest0>})
                (C {<tee>} 
                  {
                    (command_sub
                      left_token: <Id.Left_ProcSubOut '>('>
                      child: 
                        (command.Simple
                          words: [{<head>} {<-1>}]
                          redirects: [
                            (redir
                              op: <Id.Redir_Great '>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {<first>}
                            )
                          ]
                          do_fork: T
                        )
                    )
                  }
                )
                (command.Simple
                  words: [{<tail>} {<-n>} {<Id.Lit_Other '+'> <2>}]
                  redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<rest1>})]
                  do_fork: T
                )
              ]
              negated: F
            )
          terminator: <Id.Op_Amp _>
        )
    )
    (C {<cat>} {<first>})
    (C {<mkfifo>} {<rest2>})
    (command.Subshell
      child: 
        (command.Sentence
          child: 
            (command.Pipeline
              children: [
                (C {<cat>} {<rest1>})
                (C {<tee>} 
                  {
                    (command_sub
                      left_token: <Id.Left_ProcSubOut '>('>
                      child: 
                        (command.Simple
                          words: [{<head>} {<-1>}]
                          redirects: [
                            (redir
                              op: <Id.Redir_Great '>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {<first>}
                            )
                          ]
                          do_fork: T
                        )
                    )
                  }
                )
                (command.Simple
                  words: [{<tail>} {<-n>} {<Id.Lit_Other '+'> <2>}]
                  redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<rest2>})]
                  do_fork: T
                )
              ]
              negated: F
            )
          terminator: <Id.Op_Amp _>
        )
    )
    (C {<cat>} {<first>})
    (C {<mkfifo>} {<rest3>})
    (command.Subshell
      child: 
        (command.Sentence
          child: 
            (command.Pipeline
              children: [
                (C {<cat>} {<rest2>})
                (C {<tee>} 
                  {
                    (command_sub
                      left_token: <Id.Left_ProcSubOut '>('>
                      child: 
                        (command.Simple
                          words: [{<head>} {<-1>}]
                          redirects: [
                            (redir
                              op: <Id.Redir_Great '>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {<first>}
                            )
                          ]
                          do_fork: T
                        )
                    )
                  }
                )
                (command.Simple
                  words: [{<tail>} {<-n>} {<Id.Lit_Other '+'> <2>}]
                  redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<rest3>})]
                  do_fork: T
                )
              ]
              negated: F
            )
          terminator: <Id.Op_Amp _>
        )
    )
  ]
)