(CommandList
  children: [
    (C {(set)} {(-o)} {(nounset)})
    (C {(set)} {(-o)} {(pipefail)})
    (C {(set)} {(-o)} {(errexit)})
    (FuncDef
      name: basic-head
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:title)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [41]
                )
              ]
              spids: [39]
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {
                      (DQ ('<!DOCTYPE html>\n') ('<html>\n') ('  <head>\n') ('    <title>') 
                        ($ VSub_Name '$title') ('</title>\n') ('    <style>\n') ('      body {\n') ('        margin: 0 auto;\n') 
                        ('        width: 40em;\n') ('      }\n') ('      #home-link {\n') ('        text-align: right;\n') ('      }\n') ('    </style>\n') 
                        ('  </head>\n') ('  <body>\n') ('    <p id=') (Right_DoubleQuote '"') (home-link) (Right_DoubleQuote '"') ('>\n') 
                        ('      <a href=') (Right_DoubleQuote '"') (/) (Right_DoubleQuote '"') ('>oilshell.org</a>\n') ('    </p>\n') ('    <h3>') 
                        ($ VSub_Name '$title') ('</h3>\n') ('    <p>\n')
                      )
                    }
                  do_expansion: True
                  here_end: EOF
                  was_filled: T
                  spids: [47]
                )
              ]
            )
          ]
          spids: [36]
        )
      spids: [32 35]
    )
    (FuncDef
      name: basic-tail
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: {(DQ ('  </body>\n') ('</html>\n'))}
                  do_expansion: True
                  here_end: EOF
                  was_filled: T
                  spids: [95]
                )
              ]
            )
          ]
          spids: [90]
        )
      spids: [86 89]
    )
    (C {(DQ ($ VSub_At '$@'))})
  ]
)