(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(js)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.8.5)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_ver)
          op: Equal
          rhs: 
            {
              (BracedVarSub
                token: <VSub_Name pkgver>
                suffix_op: (PatSub pat:{(.)} replace:{} do_all:True do_prefix:False do_suffix:False)
                spids: [13 19]
              ) (-1.0.0)
            }
          spids: [12]
        )
      ]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[22])]
      spids: [22]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("JavaScript interpreter and libraries"))}
          spids: [25]
        )
      ]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://www.mozilla.org/js/"))}
          spids: [30]
        )
      ]
      spids: [30]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ )} spids:[35])]
      spids: [35]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:license)
          op: Equal
          rhs: {(DQ ("GPLv2+ or LGPLv2+ or MPLv1.1"))}
          spids: [39]
        )
      ]
      spids: [39]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[44])]
      spids: [44]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends_dev) op:Equal rhs:{(DQ (nspr-dev))} spids:[48])]
      spids: [48]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$depends_dev") (" zip readline-dev ncurses-dev python perl"))}
          spids: [53]
        )
      ]
      spids: [53]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(DQ )} spids:[59])]
      spids: [59]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$pkgname") (-dev))}
          spids: [63]
        )
      ]
      spids: [63]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ("http://ftp.mozilla.org/pub/mozilla.org/js/js") ($ VSub_Name "$_ver") (".tar.gz\n") 
                ("\tjs185-destdir.patch\n") ("\tisfinite.patch")
              )
            }
          spids: [69]
        )
      ]
      spids: [69]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir")) (/js-1.8.5/js/src)}
          spids: [79]
        )
      ]
      spids: [79]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:i) op:Equal spids:[94])]
              spids: [92]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (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)} {($ VSub_Name "$i")})
                              terminator: <Op_Semi ";">
                            )
                            (AndOr
                              children: [
                                (C {(patch)} {(-p1)} {(-i)} 
                                  {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$i")}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [123 125 149 -1]
                        )
                      ]
                      spids: [116 120 152]
                    )
                  ]
                  spids: [113 155]
                )
              spids: [109 111]
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (Redir op_id:Redir_Great fd:-1 arg_word:{(libjs.pc)} spids:[164])
                (HereDoc
                  op_id: Redir_DLess
                  fd: -1
                  body: 
                    {
                      (DQ ("prefix=/usr\n") ("exec_prefix=/usr\n") ("libdir=/usr/lib\n") 
                        ("includedir=/usr/include\n") ("\n") ("Name: libjs\n") ("Description: JS library\n") ("Requires: nspr >= 4.7\n") ("Version: ") 
                        ($ VSub_Name "$pkgver") ("\n") ("Libs: -L") (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) ("{libdir} -ljs\n") 
                        ("Cflags: -DXP_UNIX=1 -DJS_THREADSAFE=1 -I") (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) ("{includedir}/js\n")
                      )
                    }
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [168]
                )
              ]
            )
          ]
          spids: [89]
        )
      spids: [85 88]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (AndOr
              children: [
                (C {(./configure)} {(--build) (Lit_Other "=") ($ VSub_Name "$CBUILD")} 
                  {(--host) (Lit_Other "=") ($ VSub_Name "$CHOST")} {(--prefix) (Lit_Other "=") (/usr)} {(--with-system-nspr)} {(--enable-threadsafe)} {(--enable-readline)} 
                  {(--disable-warnings-as-errors)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(make)})
          ]
          spids: [196]
        )
      spids: [192 195]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (AndOr
              children: [
                (C {(make)} {(install)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(install)} {(-Dm)} {(0644)} {(libjs.pc)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/pkgconfig/)}
            )
            (C {(ln)} {(-s)} {(libmozjs185.so.1.0)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libmozjs.so.1)}
            )
            (C {(ln)} {(-s)} {(libmozjs185.so.1.0)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libjs.so.1)})
            (C {(ln)} {(-s)} {(libmozjs185.so)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libmozjs.so)})
            (C {(ln)} {(-s)} {(libmozjs185.so)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libjs.so)})
          ]
          spids: [260]
        )
      spids: [256 259]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: 
            {
              (DQ ("a4574365938222adca0a6bd33329cb32  js185-1.0.0.tar.gz\n") 
                ("ca5cd660341767b60c09701f8dd6bf38  js185-destdir.patch\n") ("8f5db1b780888900c7fa8caec9c37275  isfinite.patch")
              )
            }
          spids: [355]
        )
      ]
      spids: [355]
    )
  ]
)