(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(seahub)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(4.0.1)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(1)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ('web frontend for Seafile'))}
          spids: [15]
        )
      ]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ('https://github.com/haiwen/seahub/'))}
          spids: [20]
        )
      ]
      spids: [20]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ )} spids:[25])]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (Apache))} spids:[29])]
      spids: [29]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:depends)
          op: Equal
          rhs: 
            {
              (DQ ('bash py-dateutil py-mako py-simplejson py-pillow py-pip py-virtualenv py-six\n') 
                (
'         python2 py-django1.5 py-gunicorn py-chardet py-django-djblets py-ccnet py-libsearpc\n'
                ) ('\t py-django-simple-captcha py-django-registration py-flup py-seafile seafile-server')
              )
            }
          spids: [34]
        )
      ]
      spids: [34]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name '$pkgname') (-) ($ VSub_Name '$pkgver') 
                ('.tar.gz::https://github.com/haiwen/seahub/archive/v') (${ VSub_Name pkgver) ('-server.tar.gz\n') ('\tseahub.confd seahub.initd')
              )
            }
          spids: [41]
        )
      ]
      spids: [41]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:install)
          op: Equal
          rhs: {(DQ (seahub.post-install))}
          spids: [54]
        )
      ]
      spids: [54]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_builddir)
          op: Equal
          rhs: 
            {
              (DQ (${ VSub_Name srcdir) (/) (${ VSub_Name pkgname) (-) (${ VSub_Name pkgver) (-server))
            }
          spids: [60]
        )
      ]
      spids: [60]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:pf) op:Equal spids:[86])]
              spids: [84]
            )
            (C {(cd)} {(DQ (${ VSub_Name _builddir))})
            (ForEach
              iter_name: pf
              iter_words: [{($ VSub_Name '$source')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name '$pf')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.patch)}]
                          action: [
                            (Sentence
                              child: (C {(msg)} {($ VSub_Name '$pf')})
                              terminator: <Op_Semi ';'>
                            )
                            (AndOr
                              children: [
                                (C {(patch)} {(-p1)} {(-i)} 
                                  {(DQ ($ VSub_Name '$srcdir')) (/) (${ VSub_Name pf)}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [117 119 145 -1]
                        )
                      ]
                      spids: [110 114 148]
                    )
                  ]
                  spids: [107 151]
                )
              spids: [103 105]
            )
          ]
          spids: [81]
        )
      spids: [77 80]
    )
    (FuncDef name:build body:(BraceGroup children:[(C {(echo)})] spids:[160]) spids:[156159])
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ (${ VSub_Name _builddir))})
            (AndOr
              children: [
                (C {(mkdir)} {(-m)} {(755)} {(-p)} {(DQ (${ VSub_Name pkgdir)) (/usr/share/seahub)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(cp)} {(-ar)} {(DQ (${ VSub_Name _builddir)) (/) (Lit_Other '*')} 
              {(DQ (${ VSub_Name pkgdir)) (/usr/share/seahub)}
            )
            (AndOr
              children: [
                (C {(install)} {(-D)} {(-m0644)} {(DQ (${ VSub_Name srcdir)) (/seahub.confd)} 
                  {(DQ (${ VSub_Name pkgdir)) (/etc/conf.d/seahub)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(install)} {(-D)} {(-m0755)} {(DQ (${ VSub_Name srcdir)) (/seahub.initd)} 
                  {(DQ (${ VSub_Name pkgdir)) (/etc/init.d/seahub)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [172]
        )
      spids: [168 171]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: 
            {
              (DQ ('93e8755aec1cd7d028538e04683f30e7  seahub-4.0.1.tar.gz\n') 
                ('e1ed5467cd78159fb7e73e2d2d925a8e  seahub.confd\n') ('1a1777dd469cbbc6773b2c31e265cb37  seahub.initd')
              )
            }
          spids: [285]
        )
      ]
      spids: [285]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'7429751f1b47dbaf6ecc5b8cb32f00b85c817f536b34b923fb47cc046559c6d3  seahub-4.0.1.tar.gz\n'
                ) ('8b0e8bf45d278bbf32f4dca4a402f2584a87e46adee2e24732804acebd1c2cff  seahub.confd\n') 
                ('2da114c938efa349f7762466d5cffc26393262968db5194cd469c2fd79077396  seahub.initd')
              )
            }
          spids: [292]
        )
      ]
      spids: [292]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'85c793893dcada7b0600abdc4ab6c0fcc7ee978d8828af1cd7dc6a711c30c45e9b217c906de282b7d901923f582882361a2ac2f39ed6d49c8d8c5b6816dfc14e  seahub-4.0.1.tar.gz\n'
                ) 
                (
'd55dbd3e59ae48a930cbcb42ec840689a17f6cb1cb16f6d0d155e646b24accb8a5e5c1f59f549f66941bb21475b2c6ce55a3bb014d016bfeddea13602984c2a6  seahub.confd\n'
                ) 
                (
'71445244d966d5770618c2b4b003959ae135e737657d7b7cb79b2def8787655d0a50f8a7fdb1fee64108e51410e99d1a52144c707c2247bc7ffd8d422c5c7f4c  seahub.initd'
                )
              )
            }
          spids: [299]
        )
      ]
      spids: [299]
    )
  ]
)