(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(daemontools)} spids:[3])]
      spids: [3]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(0.76)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ('Collection of tools for managing UNIX services'))}
          spids: [12]
        )
      ]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ('http://cr.yp.to/daemontools.html'))}
          spids: [17]
        )
      ]
      spids: [17]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[22])]
      spids: [22]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (public-domain))} spids:[27])]
      spids: [27]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(EmptyPart)} spids:[32])]
      spids: [32]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:makedepends) op:Equal rhs:{(DQ (coreutils))} spids:[37])]
      spids: [37]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ('http://cr.yp.to/daemontools/') ($ VSub_Name '$pkgname') (-) ($ VSub_Name '$pkgver') 
                ('.tar.gz\n') ('\t0.76-errno.patch\n') ('\t0.76-warnings.patch\n') ('\tsvscan.initd\n') ('\t')
              )
            }
          spids: [43]
        )
      ]
      spids: [43]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: 
            {(DQ ($ VSub_Name '$srcdir')) (/admin/) ($ VSub_Name '$pkgname') (-) 
              ($ VSub_Name '$pkgver') (/src)
            }
          spids: [57]
        )
      ]
      spids: [57]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name '$builddir'))})
            (SimpleCommand
              words: [
                {(echo)}
                {
                  (DQ 
                    (BracedVarSub
                      token: <VSub_Name CC>
                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(DQ (gcc))})
                      spids: [85 91]
                    ) (' ') (${ VSub_Name CFLAGS)
                  )
                }
              ]
              redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(conf-cc)} spids:[98])]
            )
            (SimpleCommand
              words: [
                {(echo)}
                {
                  (DQ 
                    (BracedVarSub
                      token: <VSub_Name CC>
                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(DQ (gcc))})
                      spids: [106 112]
                    ) (' ') (${ VSub_Name LDFLAGS)
                  )
                }
              ]
              redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(conf-ld)} spids:[119])]
            )
            (C {(touch)} {(home)})
            (AndOr
              ops: [Op_DPipe]
              children: [
                (C {(make)} {(Lit_VarLike 'PATH=') (DQ ('/usr/bin:/bin'))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
          ]
          spids: [72]
        )
      spids: [68 71]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:f) op:Equal spids:[154])]
              spids: [152]
            )
            (C {(cd)} {(DQ ($ VSub_Name '$builddir'))})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin)} 
              {(DQ ($ VSub_Name '$pkgdir')) (/service)}
            )
            (ForEach
              iter_name: f
              iter_words: [
                {
                  (CommandSubPart
                    command_list: (CommandList children:[(C {(cat)} {(../package/commands)})])
                    left_token: <Left_CommandSub '$('>
                    spids: [185 189]
                  )
                }
              ]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (C {(cp)} {($ VSub_Name '$f')} 
                      {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin/) ($ VSub_Name '$f')}
                    )
                  ]
                  spids: [192 206]
                )
              spids: [184 190]
            )
            (C {(install)} {(-Dm755)} {(DQ ($ VSub_Name '$srcdir')) (/svscan.initd)} 
              {(DQ ($ VSub_Name '$pkgdir')) (/etc/init.d/svscan)}
            )
          ]
          spids: [149]
        )
      spids: [145 148]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: 
            {
              (DQ ('1871af2453d6e464034968a0fbcb2bfc  daemontools-0.76.tar.gz\n') 
                ('c75438b1c3b9d9f67691bd10cf3c8e52  0.76-errno.patch\n') ('ad68177f50bfffb6a1cbf8c668de6a55  0.76-warnings.patch\n') 
                ('39641f3d432b6f8d3259c867b5ad3a0a  svscan.initd')
              )
            }
          spids: [226]
        )
      ]
      spids: [226]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'a55535012b2be7a52dcd9eccabb9a198b13be50d0384143bd3b32b8710df4c1f  daemontools-0.76.tar.gz\n'
                ) ('1afaa3b5a26e7382cfe1c9880ddf3910fde4ded6fa815440ef087506543a3947  0.76-errno.patch\n') 
                (
'42bfcc27660ef6459d39fbaaa9f1852313baadf7b96201872e4deb12804f4833  0.76-warnings.patch\n'
                ) ('1b1c739f4adff56f902df5b1eb324a057cf3ef6353555a509351f2a8abb29056  svscan.initd')
              )
            }
          spids: [234]
        )
      ]
      spids: [234]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'e4a7938352b745a03ccc41acdddba1e6782f0ca245e5cae060de62ab6c5a23c841a994c30140298d274405a7f26d53ba7e84e5810a3d185b2c01e4c0feffe6c7  daemontools-0.76.tar.gz\n'
                ) 
                (
'76664b71e16ba4dbb081604a1a8c9ddc58a603777dccc0a53b0af9442ff8f0cdfce9ef8b05926dac62b81b2c805262df6a7e4df65920c00583132dbf136ba85e  0.76-errno.patch\n'
                ) 
                (
'13288c5d1fc5f775cff9286b5cb4c711c5e6e52ef9c714b377cec0328c887b065385c464ca27b2dbe921e66956c20b5f3205cc36d7d2e81c383b5765cbd554aa  0.76-warnings.patch\n'
                ) 
                (
'a2c3b35c7d253b9f2ffc5051663fdfacc5bd57385ce95d5d623f1f773d7bfe445b6837c7c1fe5565587387bdee0437761272f06902e166e95e2d00c19f8c6995  svscan.initd'
                )
              )
            }
          spids: [242]
        )
      ]
      spids: [242]
    )
  ]
)