(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(roundup)} spids:[3])]
      spids: [3]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(0.0.6)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(1)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: 
            {
              (DQ ("A a unit testing tool for running roundup(5) test plans which are\n") 
                ("written in any POSIX shell.")
              )
            }
          spids: [12]
        )
      ]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(https) (Lit_Other ":") (//github.com/bmizerany/roundup/)}
          spids: [18]
        )
      ]
      spids: [18]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[23])]
      spids: [23]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[28])]
      spids: [28]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(SQ )} spids:[33])]
      spids: [33]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:makedepends) op:Equal rhs:{(DQ (ncurses))} spids:[35])]
      spids: [35]
    )
    (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/bmizerany/") ($ VSub_Name "$pkgname") (/archive/v) ($ VSub_Name "$pkgver") (".tar.gz\n") ("  ") 
                ($ VSub_Name "$pkgname") ("-fix-busybox-shell-opts.patch\n") ("  ") ($ VSub_Name "$pkgname") 
                ("-avoid-bash-syntax-in-tests.patch\n") ("  ")
              )
            }
          spids: [40]
        )
      ]
      spids: [40]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver")}
          spids: [60]
        )
      ]
      spids: [60]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (ForEach
              iter_name: i
              iter_words: [{($ VSub_Name "$source")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Assignment
                      keyword: Assign_Local
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:p)
                          op: Equal
                          rhs: 
                            {
                              (BracedVarSub
                                token: <VSub_Name i>
                                suffix_op: 
                                  (StringUnary
                                    op_id: VOp1_DPound
                                    arg_word: {("*") (Lit_Slash /)}
                                  )
                                spids: [103 108]
                              )
                            }
                          spids: [102]
                        )
                      ]
                      spids: [100]
                    )
                    (Case
                      to_match: {($ VSub_Name "$i")}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other "*") (.patch)}]
                          action: [
                            (Sentence
                              child: (C {(msg)} {($ VSub_Name "$p")})
                              terminator: <Op_Semi ";">
                            )
                            (AndOr
                              children: [
                                (C {(patch)} {(-p1)} {(-i)} 
                                  {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$p")}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [118 120 144 -1]
                        )
                      ]
                      spids: [111 115 147]
                    )
                  ]
                  spids: [97 150]
                )
              spids: [93 95]
            )
          ]
          spids: [74]
        )
      spids: [70 73]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {($ VSub_Name "$_builddir")})
            (C {(/bin/sh)} {(roundup.sh)} {(roundup-1-test.sh)})
          ]
          spids: [159]
        )
      spids: [155 158]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(install)} {(-Dm755)} {($ VSub_Name "$_builddir") (/roundup.sh)} 
              {($ VSub_Name "$pkgdir") (/usr/bin/) ($ VSub_Name "$pkgname")}
            )
          ]
          spids: [180]
        )
      spids: [176 179]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: 
            {
              (DQ ("607023b4fe4e42fdc2f0cb14b4138b2e  roundup-0.0.6.tar.gz\n") 
                ("a7d12efbf88919a1e2fc9b7ed143fd9c  roundup-fix-busybox-shell-opts.patch\n") ("dddd5610d03f2c1237c295c564c291c4  roundup-avoid-bash-syntax-in-tests.patch")
              )
            }
          spids: [197]
        )
      ]
      spids: [197]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"20741043ed5be7cbc54b1e9a7c7de122a0dacced77052e90e4ff08e41736f01c  roundup-0.0.6.tar.gz\n"
                ) 
                (
"31e00fc54fa806aaa1a3199dd13b596b36e8f57685c7524db125bf87a949845b  roundup-fix-busybox-shell-opts.patch\n"
                ) 
                (
"e8829b4459a5e3d65949e564cf69e307e7b6fe11758d9becc9426a164bb4a812  roundup-avoid-bash-syntax-in-tests.patch"
                )
              )
            }
          spids: [204]
        )
      ]
      spids: [204]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"a7a249d16467bd3835d555288ec6c3d84a36f2f7f2ae5da90e7624bc76a7741788499fd635d3001c086923914870392c23d765ca07ab7c97e58b9deec9989827  roundup-0.0.6.tar.gz\n"
                ) 
                (
"13cf848227958e83fabf6cde96e1ac347199ad107d6a5daa07e23a976cc8613a0368447295afb310a817c8d6aeb52b96d12d58984a929114decc2c16098ddd7c  roundup-fix-busybox-shell-opts.patch\n"
                ) 
                (
"526cca7805fb55de24df79482e3daa2253fc26db2db662229894b8ad56e79a8a45ad716e0c0241765455bda0a4c45344a9ea7c001860d3f8ca41f0c00e3954f9  roundup-avoid-bash-syntax-in-tests.patch"
                )
              )
            }
          spids: [211]
        )
      ]
      spids: [211]
    )
  ]
)