(command.CommandList
  children: [
    (command.Simple blame_tok:<set> more_env:[] words:[{<set>} {<-e>}] redirects:[] do_fork:T)
    (command.ShAssignment
      left: <Id.Lit_VarLike 'action='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'action='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'action='> name:action)
          op: assign_op.Equal
          rhs: {($ Id.VSub_Number 1)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'srcdir='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'srcdir='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'srcdir='> name:srcdir)
          op: assign_op.Equal
          rhs: {($ Id.VSub_Number 2)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'cgen='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'cgen='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'cgen='> name:cgen)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_Number 3))}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'cgendir='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'cgendir='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'cgendir='> name:cgendir)
          op: assign_op.Equal
          rhs: {($ Id.VSub_Number 4)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'cgenflags='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'cgenflags='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'cgenflags='> name:cgenflags)
          op: assign_op.Equal
          rhs: {($ Id.VSub_Number 5)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'arch='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'arch='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'arch='> name:arch)
          op: assign_op.Equal
          rhs: {($ Id.VSub_Number 6)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'prefix='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'prefix='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'prefix='> name:prefix)
          op: assign_op.Equal
          rhs: {($ Id.VSub_Number 7)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'archfile='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'archfile='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'archfile='> name:archfile)
          op: assign_op.Equal
          rhs: {($ Id.VSub_Number 8)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'opcfile='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'opcfile='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'opcfile='> name:opcfile)
          op: assign_op.Equal
          rhs: {($ Id.VSub_Number 9)}
        )
      ]
      redirects: []
    )
    (command.CommandList
      children: [
        (command.Sentence
          child: 
            (command.Simple
              blame_tok: <shift>
              more_env: []
              words: [{<shift>}]
              redirects: []
              do_fork: T
            )
          terminator: <Id.Op_Semi _>
        )
        (command.ShAssignment
          left: <Id.Lit_VarLike 'options='>
          pairs: [
            (AssignPair
              left: <Id.Lit_VarLike 'options='>
              lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'options='> name:options)
              op: assign_op.Equal
              rhs: {($ Id.VSub_Number 9)}
            )
          ]
          redirects: []
        )
      ]
    )
    (command.CommandList
      children: [
        (command.Sentence
          child: 
            (command.Simple
              blame_tok: <shift>
              more_env: []
              words: [{<shift>}]
              redirects: []
              do_fork: T
            )
          terminator: <Id.Op_Semi _>
        )
        (command.ShAssignment
          left: <Id.Lit_VarLike 'extrafiles='>
          pairs: [
            (AssignPair
              left: <Id.Lit_VarLike 'extrafiles='>
              lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'extrafiles='> name:extrafiles)
              op: assign_op.Equal
              rhs: {($ Id.VSub_Number 9)}
            )
          ]
          redirects: []
        )
      ]
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'rootdir='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'rootdir='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'rootdir='> name:rootdir)
          op: assign_op.Equal
          rhs: {(${ Id.VSub_Name srcdir) <'/..'>}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'lowercase='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'lowercase='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lowercase='> name:lowercase)
          op: assign_op.Equal
          rhs: {(SQ <abcdefghijklmnopqrstuvwxyz>)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'uppercase='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'uppercase='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'uppercase='> name:uppercase)
          op: assign_op.Equal
          rhs: {(SQ <ABCDEFGHIJKLMNOPQRSTUVWXYZ>)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'ARCH='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'ARCH='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'ARCH='> name:ARCH)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_Backtick '`'>
                child: 
                  (command.Pipeline
                    children: [
                      (command.Simple
                        blame_tok: <echo>
                        more_env: []
                        words: [{<echo>} {(${ Id.VSub_Name arch)}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <tr>
                        more_env: []
                        words: [
                          {<tr>}
                          {(DQ (${ Id.VSub_Name lowercase))}
                          {(DQ (${ Id.VSub_Name uppercase))}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    ]
                    ops: [<Id.Op_Pipe _>]
                  )
                right: <Id.Backtick_Right '`'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'tmp='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'tmp='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'tmp='> name:tmp)
          op: assign_op.Equal
          rhs: {<tmp-> ($ Id.VSub_Dollar '$')}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'extrafile_args='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'extrafile_args='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'extrafile_args='> name:extrafile_args)
          op: assign_op.Equal
          rhs: {(DQ )}
        )
      ]
      redirects: []
    )
    (command.ForEach
      keyword: <Id.KW_For for>
      iter_names: [ef]
      iterable: (for_iter.Words words:[{<..>} {($ Id.VSub_DollarName extrafiles)}])
      body: 
        (command.DoGroup
          left: <Id.KW_Do do>
          children: [
            (command.Case
              case_kw: <Id.KW_Case case>
              to_match: (case_arg.Word w:{($ Id.VSub_DollarName ef)})
              arms_start: <Id.KW_In in>
              arms: [
                (CaseArm
                  left: <..>
                  pattern: (pat.Words words:[{<..>}])
                  middle: <Id.Right_CasePat _>
                  action: []
                  right: <Id.Op_DSemi _>
                )
                (CaseArm
                  left: <opinst>
                  pattern: (pat.Words words:[{<opinst>}])
                  middle: <Id.Right_CasePat _>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'extrafile_args='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'extrafile_args='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'extrafile_args='>
                              name: extrafile_args
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ <'-Q '> (${ Id.VSub_Name tmp) <'-opinst.c1 '> 
                                ($ Id.VSub_DollarName extrafile_args)
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  right: <Id.Op_DSemi _>
                )
              ]
              arms_end: <Id.KW_Esac esac>
              redirects: []
            )
          ]
          right: <Id.KW_Done done>
        )
      redirects: []
    )
    (command.Case
      case_kw: <Id.KW_Case case>
      to_match: (case_arg.Word w:{($ Id.VSub_DollarName action)})
      arms_start: <Id.KW_In in>
      arms: [
        (CaseArm
          left: <opcodes>
          pattern: (pat.Words words:[{<opcodes>}])
          middle: <Id.Right_CasePat _>
          action: [
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-desc.h>} {(${ Id.VSub_Name tmp) <-desc.h1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-desc.c>} {(${ Id.VSub_Name tmp) <-desc.c1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-opc.h>} {(${ Id.VSub_Name tmp) <-opc.h1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-opc.c>} {(${ Id.VSub_Name tmp) <-opc.c1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [
                {<rm>}
                {<-f>}
                {(${ Id.VSub_Name tmp) <-opinst.c>}
                {(${ Id.VSub_Name tmp) <-opinst.c1>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-ibld.h>} {(${ Id.VSub_Name tmp) <-ibld.h1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-ibld.c>} {(${ Id.VSub_Name tmp) <-ibld.in1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-asm.c>} {(${ Id.VSub_Name tmp) <-asm.in1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-dis.c>} {(${ Id.VSub_Name tmp) <-dis.in1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <Id.Left_DollarBrace '${'>
              more_env: []
              words: [
                {(${ Id.VSub_Name cgen)}
                {(${ Id.VSub_Name cgendir) <'/cgen-opc.scm'>}
                {<-s>}
                {(${ Id.VSub_Name cgendir)}
                {(${ Id.VSub_Name cgenflags)}
                {<-f>}
                {(DQ (${ Id.VSub_Name options))}
                {<-m>}
                {<all>}
                {<-a>}
                {(${ Id.VSub_Name archfile)}
                {<-OPC>}
                {(${ Id.VSub_Name opcfile)}
                {<-H>}
                {(${ Id.VSub_Name tmp) <-desc.h1>}
                {<-C>}
                {(${ Id.VSub_Name tmp) <-desc.c1>}
                {<-O>}
                {(${ Id.VSub_Name tmp) <-opc.h1>}
                {<-P>}
                {(${ Id.VSub_Name tmp) <-opc.c1>}
                {<-L>}
                {(${ Id.VSub_Name tmp) <-ibld.in1>}
                {<-A>}
                {(${ Id.VSub_Name tmp) <-asm.in1>}
                {<-D>}
                {(${ Id.VSub_Name tmp) <-dis.in1>}
                {(${ Id.VSub_Name extrafile_args)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <sed>
              more_env: []
              words: [
                {<sed>}
                {<-e>}
                {(DQ <'s/@ARCH@/'> (${ Id.VSub_Name ARCH) <'/g'>)}
                {<-e>}
                {(DQ <'s/@arch@/'> (${ Id.VSub_Name arch) <'/g'>)}
                {<-e>}
                {(SQ <'s/[ \t][ \t]*$//'>)}
              ]
              redirects: [
                (Redir
                  op: <Id.Redir_Less '<'>
                  loc: (redir_loc.Fd fd:0)
                  arg: {(${ Id.VSub_Name tmp) <-desc.h1>}
                )
                (Redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {(${ Id.VSub_Name tmp) <-desc.h>}
                )
              ]
              do_fork: T
            )
            (command.Simple
              blame_tok: <Id.Left_DollarBrace '${'>
              more_env: []
              words: [
                {(${ Id.VSub_Name rootdir) <'/move-if-change'>}
                {(${ Id.VSub_Name tmp) <-desc.h>}
                {(${ Id.VSub_Name srcdir) <'/'> (${ Id.VSub_Name prefix) <-desc.h>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <sed>
              more_env: []
              words: [
                {<sed>}
                {<-e>}
                {(DQ <'s/@ARCH@/'> (${ Id.VSub_Name ARCH) <'/g'>)}
                {<-e>}
                {(DQ <'s/@arch@/'> (${ Id.VSub_Name arch) <'/g'>)}
                {<-e>}
                {(DQ <'s/@prefix@/'> (${ Id.VSub_Name prefix) <'/'>)}
                {<-e>}
                {(SQ <'s/[ \t][ \t]*$//'>)}
              ]
              redirects: [
                (Redir
                  op: <Id.Redir_Less '<'>
                  loc: (redir_loc.Fd fd:0)
                  arg: {(${ Id.VSub_Name tmp) <-desc.c1>}
                )
                (Redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {(${ Id.VSub_Name tmp) <-desc.c>}
                )
              ]
              do_fork: T
            )
            (command.Simple
              blame_tok: <Id.Left_DollarBrace '${'>
              more_env: []
              words: [
                {(${ Id.VSub_Name rootdir) <'/move-if-change'>}
                {(${ Id.VSub_Name tmp) <-desc.c>}
                {(${ Id.VSub_Name srcdir) <'/'> (${ Id.VSub_Name prefix) <-desc.c>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <sed>
              more_env: []
              words: [
                {<sed>}
                {<-e>}
                {(DQ <'s/@ARCH@/'> (${ Id.VSub_Name ARCH) <'/g'>)}
                {<-e>}
                {(DQ <'s/@arch@/'> (${ Id.VSub_Name arch) <'/g'>)}
                {<-e>}
                {(SQ <'s/[ \t][ \t]*$//'>)}
              ]
              redirects: [
                (Redir
                  op: <Id.Redir_Less '<'>
                  loc: (redir_loc.Fd fd:0)
                  arg: {(${ Id.VSub_Name tmp) <-opc.h1>}
                )
                (Redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {(${ Id.VSub_Name tmp) <-opc.h>}
                )
              ]
              do_fork: T
            )
            (command.Simple
              blame_tok: <Id.Left_DollarBrace '${'>
              more_env: []
              words: [
                {(${ Id.VSub_Name rootdir) <'/move-if-change'>}
                {(${ Id.VSub_Name tmp) <-opc.h>}
                {(${ Id.VSub_Name srcdir) <'/'> (${ Id.VSub_Name prefix) <-opc.h>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <sed>
              more_env: []
              words: [
                {<sed>}
                {<-e>}
                {(DQ <'s/@ARCH@/'> (${ Id.VSub_Name ARCH) <'/g'>)}
                {<-e>}
                {(DQ <'s/@arch@/'> (${ Id.VSub_Name arch) <'/g'>)}
                {<-e>}
                {(DQ <'s/@prefix@/'> (${ Id.VSub_Name prefix) <'/'>)}
                {<-e>}
                {(SQ <'s/[ \t][ \t]*$//'>)}
              ]
              redirects: [
                (Redir
                  op: <Id.Redir_Less '<'>
                  loc: (redir_loc.Fd fd:0)
                  arg: {(${ Id.VSub_Name tmp) <-opc.c1>}
                )
                (Redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {(${ Id.VSub_Name tmp) <-opc.c>}
                )
              ]
              do_fork: T
            )
            (command.Simple
              blame_tok: <Id.Left_DollarBrace '${'>
              more_env: []
              words: [
                {(${ Id.VSub_Name rootdir) <'/move-if-change'>}
                {(${ Id.VSub_Name tmp) <-opc.c>}
                {(${ Id.VSub_Name srcdir) <'/'> (${ Id.VSub_Name prefix) <-opc.c>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Case
              case_kw: <Id.KW_Case case>
              to_match: (case_arg.Word w:{($ Id.VSub_DollarName extrafiles)})
              arms_start: <Id.KW_In in>
              arms: [
                (CaseArm
                  left: <Id.Lit_Star '*'>
                  pattern: (pat.Words words:[{<Id.Lit_Star '*'> <opinst> <Id.Lit_Star '*'>}])
                  middle: <Id.Right_CasePat _>
                  action: [
                    (command.Simple
                      blame_tok: <sed>
                      more_env: []
                      words: [
                        {<sed>}
                        {<-e>}
                        {(DQ <'s/@ARCH@/'> (${ Id.VSub_Name ARCH) <'/g'>)}
                        {<-e>}
                        {(DQ <'s/@arch@/'> (${ Id.VSub_Name arch) <'/g'>)}
                        {<-e>}
                        {(DQ <'s/@prefix@/'> (${ Id.VSub_Name prefix) <'/'>)}
                        {<-e>}
                        {(SQ <'s/[ \t][ \t]*$//'>)}
                      ]
                      redirects: [
                        (Redir
                          op: <Id.Redir_Less '<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: {(${ Id.VSub_Name tmp) <-opinst.c1>}
                        )
                        (Redir
                          op: <Id.Redir_Great '>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {(${ Id.VSub_Name tmp) <-opinst.c>}
                        )
                      ]
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <Id.Left_DollarBrace '${'>
                      more_env: []
                      words: [
                        {(${ Id.VSub_Name rootdir) <'/move-if-change'>}
                        {(${ Id.VSub_Name tmp) <-opinst.c>}
                        {(${ Id.VSub_Name srcdir) <'/'> (${ Id.VSub_Name prefix) <-opinst.c>}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  right: <Id.Op_DSemi _>
                )
              ]
              arms_end: <Id.KW_Esac esac>
              redirects: []
            )
            (command.Pipeline
              children: [
                (command.Simple
                  blame_tok: <cat>
                  more_env: []
                  words: [
                    {<cat>}
                    {(${ Id.VSub_Name srcdir) <'/cgen-ibld.in'>}
                    {(${ Id.VSub_Name tmp) <-ibld.in1>}
                  ]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <sed>
                  more_env: []
                  words: [
                    {<sed>}
                    {<-e>}
                    {(DQ <'s/@ARCH@/'> (${ Id.VSub_Name ARCH) <'/g'>)}
                    {<-e>}
                    {(DQ <'s/@arch@/'> (${ Id.VSub_Name arch) <'/g'>)}
                    {<-e>}
                    {(DQ <'s/@prefix@/'> (${ Id.VSub_Name prefix) <'/'>)}
                    {<-e>}
                    {(SQ <'s/[ \t][ \t]*$//'>)}
                  ]
                  redirects: [
                    (Redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {(${ Id.VSub_Name tmp) <-ibld.c>}
                    )
                  ]
                  do_fork: T
                )
              ]
              ops: [<Id.Op_Pipe _>]
            )
            (command.Simple
              blame_tok: <Id.Left_DollarBrace '${'>
              more_env: []
              words: [
                {(${ Id.VSub_Name rootdir) <'/move-if-change'>}
                {(${ Id.VSub_Name tmp) <-ibld.c>}
                {(${ Id.VSub_Name srcdir) <'/'> (${ Id.VSub_Name prefix) <-ibld.c>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Pipeline
              children: [
                (command.Simple
                  blame_tok: <sed>
                  more_env: []
                  words: [
                    {<sed>}
                    {<-e>}
                    {(DQ <'/ -- assembler routines/ r '> (${ Id.VSub_Name tmp) <-asm.in1>)}
                    {(${ Id.VSub_Name srcdir) <'/cgen-asm.in'>}
                  ]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <sed>
                  more_env: []
                  words: [
                    {<sed>}
                    {<-e>}
                    {(DQ <'s/@ARCH@/'> (${ Id.VSub_Name ARCH) <'/g'>)}
                    {<-e>}
                    {(DQ <'s/@arch@/'> (${ Id.VSub_Name arch) <'/g'>)}
                    {<-e>}
                    {(DQ <'s/@prefix@/'> (${ Id.VSub_Name prefix) <'/'>)}
                    {<-e>}
                    {(SQ <'s/[ \t][ \t]*$//'>)}
                  ]
                  redirects: [
                    (Redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {(${ Id.VSub_Name tmp) <-asm.c>}
                    )
                  ]
                  do_fork: T
                )
              ]
              ops: [<Id.Op_Pipe _>]
            )
            (command.Simple
              blame_tok: <Id.Left_DollarBrace '${'>
              more_env: []
              words: [
                {(${ Id.VSub_Name rootdir) <'/move-if-change'>}
                {(${ Id.VSub_Name tmp) <-asm.c>}
                {(${ Id.VSub_Name srcdir) <'/'> (${ Id.VSub_Name prefix) <-asm.c>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Pipeline
              children: [
                (command.Simple
                  blame_tok: <sed>
                  more_env: []
                  words: [
                    {<sed>}
                    {<-e>}
                    {(DQ <'/ -- disassembler routines/ r '> (${ Id.VSub_Name tmp) <-dis.in1>)}
                    {(${ Id.VSub_Name srcdir) <'/cgen-dis.in'>}
                  ]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <sed>
                  more_env: []
                  words: [
                    {<sed>}
                    {<-e>}
                    {(DQ <'s/@ARCH@/'> (${ Id.VSub_Name ARCH) <'/g'>)}
                    {<-e>}
                    {(DQ <'s/@arch@/'> (${ Id.VSub_Name arch) <'/g'>)}
                    {<-e>}
                    {(DQ <'s/@prefix@/'> (${ Id.VSub_Name prefix) <'/'>)}
                    {<-e>}
                    {(SQ <'s/[ \t][ \t]*$//'>)}
                  ]
                  redirects: [
                    (Redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {(${ Id.VSub_Name tmp) <-dis.c>}
                    )
                  ]
                  do_fork: T
                )
              ]
              ops: [<Id.Op_Pipe _>]
            )
            (command.Simple
              blame_tok: <Id.Left_DollarBrace '${'>
              more_env: []
              words: [
                {(${ Id.VSub_Name rootdir) <'/move-if-change'>}
                {(${ Id.VSub_Name tmp) <-dis.c>}
                {(${ Id.VSub_Name srcdir) <'/'> (${ Id.VSub_Name prefix) <-dis.c>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-desc.h1>} {(${ Id.VSub_Name tmp) <-desc.c1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-opc.h1>} {(${ Id.VSub_Name tmp) <-opc.c1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-opinst.c1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [
                {<rm>}
                {<-f>}
                {(${ Id.VSub_Name tmp) <-ibld.h1>}
                {(${ Id.VSub_Name tmp) <-ibld.in1>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name tmp) <-asm.in1>} {(${ Id.VSub_Name tmp) <-dis.in1>}]
              redirects: []
              do_fork: T
            )
          ]
          right: <Id.Op_DSemi _>
        )
        (CaseArm
          left: <Id.Lit_Star '*'>
          pattern: (pat.Words words:[{<Id.Lit_Star '*'>}])
          middle: <Id.Right_CasePat _>
          action: [
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [{<echo>} {(DQ ($ Id.VSub_Number 0) <': bad action: '> (${ Id.VSub_Name action))}]
              redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
              do_fork: T
            )
            (command.ControlFlow keyword:<Id.ControlFlow_Exit exit> arg_word:{<1>})
          ]
          right: <Id.Op_DSemi _>
        )
      ]
      arms_end: <Id.KW_Esac esac>
      redirects: []
    )
    (command.ControlFlow keyword:<Id.ControlFlow_Exit exit> arg_word:{<0>})
  ]
)