(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgname)
          op: Equal
          rhs: {(acf-provisioning-polycom)}
          spids: [6]
        )
      ]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(5.5.1)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("Files for provisioning Polycom IP phones"))}
          spids: [15]
        )
      ]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://www.polycom.com/products/voice/index.html"))}
          spids: [20]
        )
      ]
      spids: [20]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[25])]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ ("AS IS"))} spids:[30])]
      spids: [30]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[35])]
      spids: [35]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:makedepends) op:Equal rhs:{(DQ )} spids:[39])]
      spids: [39]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"http://downloads.polycom.com/voice/voip/uc/Polycom_UC_Software_4_0_11_rts15_release_sig_split.zip\n"
                ) 
                (
"http://downloads.polycom.com/voice/voip/uc/SoundPoint_IP_BootROM_4_4_0B_Upgrader_release_sig.zip\n"
                ) 
                (
"http://downloads.polycom.com/voice/voip/uc/Polycom_UC_Software_5_5_1_rts35_release_sig_split.zip\n"
                ) ("000000000000.cfg.patch\n") ("000000000000-phone.cfg\n") ("000000000000-web.cfg\n") 
                (000000000000-directory.xml)
              )
            }
          spids: [46]
        )
      ]
      spids: [46]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:subpackages) op:Equal rhs:{(DQ )} spids:[57])]
      spids: [57]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir") (/))}
          spids: [62]
        )
      ]
      spids: [62]
    )
    (FuncDef
      name: link_dupes
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:dir) op:Equal rhs:{(SQ )} spids:[78])]
              spids: [76]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:old_pwd)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$PWD"))}
                  spids: [83]
                )
              ]
              spids: [81]
            )
            (ForEach
              iter_name: dir
              do_arg_iter: True
              body: 
                (DoGroup
                  children: [
                    (C {(echo)} 
                      {(DQ ("Creating links of duplicate files at '") ($ VSub_Name "$dir") ("'"))}
                    )
                    (AndOr
                      children: [
                        (C {(cd)} {(DQ ($ VSub_Name "$dir"))})
                        (ControlFlow token:<ControlFlow_Break break>)
                      ]
                      op_id: Op_DPipe
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:prevsum)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [117]
                        )
                      ]
                      spids: [117]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:prevfile)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [120]
                        )
                      ]
                      spids: [120]
                    )
                    (AndOr
                      children: [
                        (Pipeline
                          children: [
                            (C {(md5sum)} {(Lit_Other "*") (.ld)})
                            (C {(sort)})
                            (While
                              cond: [
                                (Sentence
                                  child: (C {(read)} {(sum)} {(file)})
                                  terminator: <Op_Semi ";">
                                )
                              ]
                              body: 
                                (DoGroup
                                  children: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$sum"))} 
                                                  {(Lit_Other "=")} {(DQ ($ VSub_Name "$prevsum"))} {(Lit_Other "]")}
                                                )
                                              terminator: <Op_Semi ";">
                                            )
                                          ]
                                          action: [
                                            (C {(echo)} 
                                              {
                                                (DQ ("* Creating link of '") ($ VSub_Name "$file") 
                                                  ("'")
                                                )
                                              }
                                            )
                                            (AndOr
                                              children: [
                                                (C {(rm)} {($ VSub_Name "$file")})
                                                (AndOr
                                                  children: [
                                                    (C {(ln)} {(-s)} {($ VSub_Name "$prevfile")} 
                                                      {($ VSub_Name "$file")}
                                                    )
                                                    (ControlFlow
                                                      token: <ControlFlow_Break break>
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          ]
                                          spids: [-1 163]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:prevsum)
                                              op: Equal
                                              rhs: {($ VSub_Name "$sum")}
                                              spids: [197]
                                            )
                                          ]
                                          spids: [197]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:prevfile)
                                              op: Equal
                                              rhs: {($ VSub_Name "$file")}
                                              spids: [201]
                                            )
                                          ]
                                          spids: [201]
                                        )
                                      ]
                                      spids: [194 205]
                                    )
                                  ]
                                  spids: [143 208]
                                )
                            )
                          ]
                          negated: False
                        )
                        (ControlFlow token:<ControlFlow_Break break>)
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [94 215]
                )
              spids: [-1 -1]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:ret)
                  op: Equal
                  rhs: {($ VSub_QMark "$?")}
                  spids: [220]
                )
              ]
              spids: [218]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$old_pwd"))})
            (ControlFlow token:<ControlFlow_Return return> arg_word:{($ VSub_Name "$ret")})
          ]
          spids: [73]
        )
      spids: [69 72]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:i) op:Equal spids:[247])]
              spids: [245]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (C {(sed)} {(-i)} {(-e)} {(SQ <"s/\\r//">)} {(000000000000.cfg)})
            (ForEach
              iter_name: i
              iter_words: [{($ VSub_Name "$source")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name "$i")}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other "*") (.patch)}]
                          action: [
                            (Sentence
                              child: (C {(msg)} {(DQ ("Applying ") (${ VSub_Name i))})
                              terminator: <Op_Semi ";">
                            )
                            (AndOr
                              children: [
                                (C {(patch)} {(-p1)} {(-i)} {($ VSub_Name "$i")})
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [289 291 316 -1]
                        )
                      ]
                      spids: [282 286 319]
                    )
                  ]
                  spids: [279 322]
                )
              spids: [275 277]
            )
          ]
          spids: [242]
        )
      spids: [238 241]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (AndOr
              children: [
                (C {(link_dupes)} {(DQ ($ VSub_Name "$_builddir"))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/var/www/provisioning/htdocs/Polycom)})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/var/www/provisioning/htdocs/log)})
            (SimpleCommand
              words: [
                {(echo)}
                {
                  (DQ ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel"))
                }
              ]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: -1
                  arg_word: 
                    {(DQ ($ VSub_Name "$pkgdir")) 
                      (/var/www/provisioning/htdocs/Polycom/package-version)
                    }
                  spids: [384]
                )
              ]
            )
            (C {(cp)} {(-r)} {(Lit_Other "*") (.ld)} {(Lit_Other "*") (.wav)} {(SoundPointIPLocalization)} 
              {(VVXLocalization)} {(000000000000.cfg)} {(DQ ($ VSub_Name "$pkgdir")) (/var/www/provisioning/htdocs)}
            )
            (C {(cp)} {(000000000000-directory.xml)} {(000000000000-phone.cfg)} {(000000000000-web.cfg)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/var/www/provisioning/htdocs/Polycom)}
            )
          ]
          spids: [331]
        )
      spids: [327 330]
    )
    (FuncDef
      name: default_unpack
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:u) op:Equal spids:[442])]
              spids: [440]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$force"))} {(Lit_Other "]")})
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (AndOr
                      children: [
                        (C {(verify)})
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                    (AndOr
                      children: [
                        (C {(initdcheck)})
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [-1 458]
                )
              ]
              spids: [-1 479]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$srcdir"))})
            (ForEach
              iter_name: u
              iter_words: [{($ VSub_Name "$source")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Assignment
                      keyword: Assign_Local
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:s)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name "$SRCDEST") (/) 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(filename_from_uri)} {($ VSub_Name "$u")})]
                                    )
                                  left_token: <Left_CommandSub "$(">
                                  spids: [509 513]
                                )
                              )
                            }
                          spids: [505]
                        )
                      ]
                      spids: [503]
                    )
                    (Case
                      to_match: {(DQ ($ VSub_Name "$s"))}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other "*") (.zip)}]
                          action: [
                            (C {(msg)} {(DQ ("Unpacking ") ($ VSub_Name "$s") (...))})
                            (AndOr
                              children: [
                                (C {(unzip)} {(-o)} {(DQ ($ VSub_Name "$s"))} {(-d)} 
                                  {(DQ ($ VSub_Name "$srcdir"))}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [526 528 559 -1]
                        )
                      ]
                      spids: [517 523 562]
                    )
                  ]
                  spids: [500 565]
                )
              spids: [496 498]
            )
          ]
          spids: [437]
        )
      spids: [433 436]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"e349c0b24cc118a5ef85b52d7e82b116  Polycom_UC_Software_4_0_11_rts15_release_sig_split.zip\n"
                ) ("b5ac28a1b4ede82fca226675c0b6981d  SoundPoint_IP_BootROM_4_4_0B_Upgrader_release_sig.zip\n") 
                (
"cdbf5322601881e37268b17048306097  Polycom_UC_Software_5_5_1_rts35_release_sig_split.zip\n"
                ) ("936110c5fbb17545526dc005f5b49c40  000000000000.cfg.patch\n") 
                ("2c32486b7c9d692326fd6270664eac01  000000000000-phone.cfg\n") ("2c32486b7c9d692326fd6270664eac01  000000000000-web.cfg\n") 
                ("4a6ff93b944a710da0c3eb99938f42cc  000000000000-directory.xml")
              )
            }
          spids: [570]
        )
      ]
      spids: [570]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"0904a07dbcf3e8c6a697f76201581c6b4d6c200aa8c5ef420b43824eb4abb310  Polycom_UC_Software_4_0_11_rts15_release_sig_split.zip\n"
                ) 
                (
"4565248f354321901323d01b1aeed8bb6e00beedc331a3f7545cbae83d194113  SoundPoint_IP_BootROM_4_4_0B_Upgrader_release_sig.zip\n"
                ) 
                (
"464f360201f8b0c8506686f64b0a1c9981ff62c790cc06a69bd22ba9cf2d38e0  Polycom_UC_Software_5_5_1_rts35_release_sig_split.zip\n"
                ) ("286b77f8b18a70a7e42b6eaa6ff9ae7e849e3335dbf2cfb6390ee69243f0d4c7  000000000000.cfg.patch\n") 
                (
"e2f3dcd842d6eb44a98140e7fb60487ca70e519d5d09872a54ce1372d5a432b4  000000000000-phone.cfg\n"
                ) ("e2f3dcd842d6eb44a98140e7fb60487ca70e519d5d09872a54ce1372d5a432b4  000000000000-web.cfg\n") 
                (
"875f5bbec057d29508bcd671a203d8e2852cd959aeaeb937443cedbe824e0a41  000000000000-directory.xml"
                )
              )
            }
          spids: [581]
        )
      ]
      spids: [581]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"e416838352d6e8a524ca48981875e9ebe384ba4bd27d056842fb8c6de73356599aec65466867fa242214d79e0060d262268b0e82008674da694a2fc48a31b3fc  Polycom_UC_Software_4_0_11_rts15_release_sig_split.zip\n"
                ) 
                (
"b624b6618af41c21de016ead0746be9702834632e32de1bd62a5b47ad2308f0fb9def72fcfb35259731b7431d00a958e9c4ad3ad7d7257a29bba9e976dc70c4c  SoundPoint_IP_BootROM_4_4_0B_Upgrader_release_sig.zip\n"
                ) 
                (
"adeefe00bf5af0a7408dacc6175575634c5d47f0f796e3b251166957e266f3bb1c30e79a1af68b4675d62458680ccd604ea38d2ff0510bb463caebff8080bed3  Polycom_UC_Software_5_5_1_rts35_release_sig_split.zip\n"
                ) 
                (
"32e1c0585baa3d827e12f2a501955ae7ee4f8f0594b14d188235a4f3dbdcb6d241ba2bf52ed4abfc94456dc5984d170f1f8aaa72a8fc56b5b578f6ba289b38b6  000000000000.cfg.patch\n"
                ) 
                (
"db2da0f4c393bdea773f3e5a7daa581a58caca738538db6153b223383176aae30e2081c198291d78c44eddd446a1cab9cffef78646360847ce4955c59f288300  000000000000-phone.cfg\n"
                ) 
                (
"db2da0f4c393bdea773f3e5a7daa581a58caca738538db6153b223383176aae30e2081c198291d78c44eddd446a1cab9cffef78646360847ce4955c59f288300  000000000000-web.cfg\n"
                ) 
                (
"9adc73d02aa4f545aca893c335284d77099c56fcc17a48f61003ede8713e96aeb8f467896f4dfbf7db67255cc3d60faf353b76ab86c5881d0ba884d1c0acffb3  000000000000-directory.xml"
                )
              )
            }
          spids: [592]
        )
      ]
      spids: [592]
    )
  ]
)