(CommandList
  children: [
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Number '$1'))} {(Lit_Other '=')} {(DQ (x-b))} 
                  {(Lit_Other ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(uudecode)} {(-o)} {(/tmp/hfs-boot-block.bz2)} 
              {
                (DQ 
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [(C {(dirname)} {(DQ ($ VSub_Number '$0'))})]
                      )
                    left_token: <Left_Backtick '`'>
                    spids: [105 111]
                  ) (/hfs-boot.bz2.uu)
                )
              }
            )
            (C {(bzip2)} {(-d)} {(/tmp/hfs-boot-block.bz2)})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:OFFSET)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(hd)} {(/tmp/hfs-boot-block)})
                                  (C {(grep)} {(SQ <'Loader START'>)})
                                  (C {(cut)} {(-f)} {(1)} {(-d)} {(SQ <' '>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [124 150]
                      )
                    }
                  spids: [123]
                )
              ]
              spids: [123]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:OFFSET)
                  op: Equal
                  rhs: 
                    {(0x) 
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(echo)} {(0x) ($ VSub_Name '$OFFSET')})
                                  (C {(awk)} {(SQ <'{printf("%x\\n",$1/512);}'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [155 168]
                      )
                    }
                  spids: [153]
                )
              ]
              spids: [153]
            )
            (C {(dd)} {(Lit_VarLike 'if=') (DQ ($ VSub_Number '$4') (/boot/loader))} 
              {(Lit_VarLike 'of=') (/tmp/hfs-boot-block)} {(Lit_VarLike 'seek=') ($ VSub_Name '$OFFSET')} {(Lit_VarLike 'conv=') (notrunc)}
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:bootable)
                  op: Equal
                  rhs: {(DQ ('-o bootimage=macppc;/tmp/hfs-boot-block -o no-emul-boot'))}
                  spids: [190]
                )
              ]
              spids: [190]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Number '$4') (/ppc/chrp))})
            (C {(cp)} {(DQ ($ VSub_Number '$4') (/boot/loader))} {(DQ ($ VSub_Number '$4') (/ppc/chrp))})
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: -1
                  arg_word: {(DQ ($ VSub_Number '$4') (/ppc/bootinfo.txt))}
                  spids: [226]
                )
                (HereDoc
                  op_id: Redir_DLess
                  fd: -1
                  body: 
                    {
                      (DQ ('<chrp-boot>\n') ('<description>FreeBSD Install</description>\n') 
                        ('<os-name>FreeBSD</os-name>\n') ('<boot-script>boot &device;:,') (EscapedLiteralPart token:<Lit_EscapedChar '\\p'>) (pc) 
                        (EscapedLiteralPart token:<Lit_EscapedChar '\\c'>) (hrp) (EscapedLiteralPart token:<Lit_EscapedChar '\\l'>) ('oader</boot-script>\n') ('</chrp-boot>\n')
                      )
                    }
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [233]
                )
              ]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:bootable)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$bootable') (' -o chrp-boot'))}
                  spids: [250]
                )
              ]
              spids: [250]
            )
            (SimpleCommand
              words: [{(echo)} {(DQ ("FreeBSD Install='/boot/loader.ps3'"))}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: -1
                  arg_word: {(DQ ($ VSub_Number '$4') (/etc/kboot.conf))}
                  spids: [268]
                )
              ]
            )
            (C {(shift)})
          ]
          spids: [-1 91]
        )
      ]
      else_action: [
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:bootable) op:Equal rhs:{(DQ )} spids:[282])]
          spids: [282]
        )
      ]
      spids: [279 286]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-lt)} {(3)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(echo)} 
              {
                (DQ ('Usage: ') ($ VSub_Number '$0') 
                  (' [-b] image-label image-name base-bits-dir [extra-bits-dir]')
                )
              }
            )
            (C {(exit)} {(1)})
          ]
          spids: [-1 302]
        )
      ]
      spids: [-1 318]
    )
    (Sentence
      child: 
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:LABEL)
              op: Equal
              rhs: 
                {
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [
                          (Pipeline
                            children: [
                              (C {(echo)} {(DQ ($ VSub_Number '$1'))})
                              (C {(tr)} {(SQ <'[:lower:]'>)} {(SQ <'[:upper:]'>)})
                            ]
                            negated: False
                          )
                        ]
                      )
                    left_token: <Left_Backtick '`'>
                    spids: [322 340]
                  )
                }
              spids: [321]
            )
          ]
          spids: [321]
        )
      terminator: <Op_Semi ';'>
    )
    (C {(shift)})
    (Sentence
      child: 
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:NAME)
              op: Equal
              rhs: {(DQ ($ VSub_Number '$1'))}
              spids: [345]
            )
          ]
          spids: [345]
        )
      terminator: <Op_Semi ';'>
    )
    (C {(shift)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:publisher)
          op: Equal
          rhs: {(DQ ('The FreeBSD Project.  http://www.FreeBSD.org/'))}
          spids: [354]
        )
      ]
      spids: [354]
    )
    (SimpleCommand
      words: [{(echo)} {(DQ (/dev/iso9660/) ($ VSub_Name '$LABEL') (' / cd9660 ro 0 0'))}]
      redirects: [
        (Redir
          op_id: Redir_Great
          fd: -1
          arg_word: {(DQ ($ VSub_Number '$1') (/etc/fstab))}
          spids: [367]
        )
      ]
    )
    (C {(makefs)} {(-t)} {(cd9660)} {($ VSub_Name '$bootable')} {(-o)} {(rockridge)} {(-o)} 
      {(Lit_VarLike 'label=') (DQ ($ VSub_Name '$LABEL'))} {(-o)} {(Lit_VarLike 'publisher=') (DQ ($ VSub_Name '$publisher'))} {(DQ ($ VSub_Name '$NAME'))} 
      {(DQ ($ VSub_At '$@'))}
    )
    (C {(rm)} {(-f)} {(DQ ($ VSub_Number '$1') (/etc/fstab))})
    (C {(rm)} {(-f)} {(/tmp/hfs-boot-block)})
    (C {(rm)} {(-rf)} {(DQ ($ VSub_Number '$1') (/ppc))})
  ]
)