(command.CommandList
  children: [
    (C {<echo>} 
      {
        (DQ <'/*\n'> <' * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.\n'> 
          <' */\n'> <'\n'> <'#pragma ident'> <Id.Lit_BadBackslash '\\'> <t> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <'@(#)mkerrno.sh'> <Id.Lit_BadBackslash '\\'> <t1.2> <Id.Lit_BadBackslash '\\'> <'t08/07/31'> 
          <Id.Lit_BadBackslash '\\'> <tSMI> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <'\n'> <'\n'> 
          <'#include <strings.h>\n'> <'#include <scsi/libsmp.h>\n'> <'\n'> <'static const struct {\n'> <Id.Lit_BadBackslash '\\'> 
          <'tchar *name;'> <Id.Lit_BadBackslash '\\'> <t> <Id.Lit_BadBackslash '\\'> <'t/* error name */\n'> 
          <Id.Lit_BadBackslash '\\'> <'tchar *msg;'> <Id.Lit_BadBackslash '\\'> <t> <Id.Lit_BadBackslash '\\'> <'t/* error message */\n'> 
          <'} _smp_errstr[] = {'>
        )
      }
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pattern='> name:pattern)
          op: assign_op.Equal
          rhs: {(SQ <'^\t\\(ESMP_[A-Z0-9_]*\\),*'>)}
          spids: [116]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'replace='> name:replace)
          op: assign_op.Equal
          rhs: {(SQ <'\t{ "\\1",'>)}
          spids: [121]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'open='> name:open)
          op: assign_op.Equal
          rhs: {(SQ <'\t\\/\\* '>)}
          spids: [126]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'openrepl='> name:openrepl)
          op: assign_op.Equal
          rhs: {(SQ <'"'>)}
          spids: [131]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'close='> name:close)
          op: assign_op.Equal
          rhs: {(SQ <' \\*\\/$'>)}
          spids: [136]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'closerepl='> name:closerepl)
          op: assign_op.Equal
          rhs: {(SQ <'" },'>)}
          spids: [141]
        )
      ]
      redirects: []
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (command.Subshell
          child: 
            (command.Pipeline
              children: [
                (C {<sed>} {<-n>} 
                  {
                    (DQ <'s/'> ($ Id.VSub_DollarName pattern) <'/'> ($ Id.VSub_DollarName replace) <'/p'>)
                  }
                )
                (C {<sed>} {<-n>} 
                  {
                    (DQ <'s/'> ($ Id.VSub_DollarName open) <'/'> ($ Id.VSub_DollarName openrepl) <'/p'>)
                  }
                )
                (C {<sed>} {<-n>} 
                  {
                    (DQ <'s/'> ($ Id.VSub_DollarName close) <'/'> ($ Id.VSub_DollarName closerepl) <'/p'>)
                  }
                )
              ]
              negated: F
              stderr_indices: []
            )
          redirects: []
        )
        (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>})
      ]
    )
    (C {<echo>} 
      {
        (DQ <'};'> <Id.Lit_BadBackslash '\\'> <n> <Id.Lit_BadBackslash '\\'> <n> 
          <'static int _smp_nerrno = sizeof (_smp_errstr) /'> <Id.Lit_BadBackslash '\\'> <n> <'    sizeof (_smp_errstr[0]);'> <Id.Lit_BadBackslash '\\'> <n> 
          <Id.Lit_BadBackslash '\\'> <n> <'const char *\n'> <'smp_strerror(smp_errno_t err)\n'> <'{\n'> 
          <'\treturn (err < 0 || err >= _smp_nerrno ? '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <'unknown error'> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <' :\n'> <'\t     _smp_errstr[err].msg);\n'> <'}\n'> <'\n'> <'const char *\n'> 
          <'smp_errname(smp_errno_t err)\n'> <'{\n'> <'\treturn (err < 0 || err >= _smp_nerrno ? NULL :\n'> <'\t     _smp_errstr[err].name);\n'> 
          <'}\n'> <'\n'> <'smp_errno_t\n'> <'smp_errcode(const char *name)\n'> <'{\n'> <'\tsmp_errno_t err;\n'> <'\n'> 
          <'\tfor (err = 0; err < _smp_nerrno; err++) {\n'> <'\t\tif (strcmp(name, _smp_errstr[err].name) == 0)\n'> <'\t\t\treturn (err);\n'> <'\t}\n'> <'\n'> 
          <'\treturn (ESMP_UNKNOWN);\n'> <'}'>
        )
      }
    )
    (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
  ]
)