(command.CommandList
  children: [
    (C {<set>} {<-o>} {<nounset>})
    (C {<set>} {<-o>} {<pipefail>})
    (C {<set>} {<-o>} {<errexit>})
    (command.ShFunction
      name: download
      body: 
        (BraceGroup
          children: [
            (C {<wget>} {(SQ <'http://lists.gnu.org/archive/html/bug-bash/2001-02/msg00054.html'>)})
          ]
        )
    )
    (command.ShFunction
      name: unescape
      body: (BraceGroup children:[(C {<sed>} {<-i>} {(SQ <'s/&amp;/\\&/g'>)} {<shasm.sh>})])
    )
    (C {(DQ ($ Id.VSub_At '$@'))})
  ]
)