(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<chicken>}
          spids: [9]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<4.12.0>}
          spids: [12]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgrel)
          op: assign_op.Equal
          rhs: {<5>}
          spids: [15]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgdesc)
          op: assign_op.Equal
          rhs: {(DQ <'R5RS and R7RS compatible scheme compiler and interpreter'>)}
          spids: [18]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(DQ <'http://call-cc.org/'>)}
          spids: [23]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:arch)
          op: assign_op.Equal
          rhs: {(DQ <all>)}
          spids: [28]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:license)
          op: assign_op.Equal
          rhs: {(DQ <custom>)}
          spids: [33]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'gcc libc-dev '> ($ Id.VSub_DollarName '$pkgname') <'-dev '> 
                ($ Id.VSub_DollarName '$pkgname') <-libs>
              )
            }
          spids: [38]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends_dev)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [47]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:makedepends)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$depends_dev'))}
          spids: [51]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:install)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [56]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:subpackages)
          op: assign_op.Equal
          rhs: 
            {
              (DQ ($ Id.VSub_DollarName '$pkgname') <'-doc '> ($ Id.VSub_DollarName '$pkgname') 
                <'-libs '> ($ Id.VSub_DollarName '$pkgname') <'-dev '> ($ Id.VSub_DollarName '$pkgname') <'-feathers::noarch'>
              )
            }
          spids: [60]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'http://code.call-cc.org/releases/'> ($ Id.VSub_DollarName '$pkgver') <'/'> 
                ($ Id.VSub_DollarName '$pkgname') <-> ($ Id.VSub_DollarName '$pkgver') <'.tar.gz\n'> <'\tCVE-2017-6949.patch\n'> 
                <'\tCVE-2017-9334.patch\n'> <'\t'>
              )
            }
          spids: [72]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:builddir)
          op: assign_op.Equal
          rhs: 
            {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/'> ($ Id.VSub_DollarName '$pkgname') <-> 
              ($ Id.VSub_DollarName '$pkgver')
            }
          spids: [112]
        )
      ]
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          children: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<make>} {<-j1>} {<Id.Lit_VarLike 'PLATFORM='> <linux>} 
                  {<Id.Lit_VarLike 'PREFIX='> <'/usr'>} {<-C>} {(DQ ($ Id.VSub_DollarName '$builddir'))}
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
          ]
        )
    )
    (command.ShFunction
      name: check
      body: 
        (BraceGroup
          children: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<make>} {<-j1>} {<Id.Lit_VarLike 'PLATFORM='> <linux>} {<-C>} 
                  {(DQ ($ Id.VSub_DollarName '$builddir'))} {<check>}
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
          ]
        )
    )
    (command.ShFunction
      name: package
      body: 
        (BraceGroup
          children: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<make>} {<-j1>} {<Id.Lit_VarLike 'PLATFORM='> <linux>} 
                  {<Id.Lit_VarLike 'PREFIX='> <'/usr'>} {<Id.Lit_VarLike 'DESTDIR='> (DQ ($ Id.VSub_DollarName '$pkgdir'))} {<-C>} 
                  {(DQ ($ Id.VSub_DollarName '$builddir'))} {<install>}
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
            (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/share/doc/'>})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<mv>} 
                  {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/share/'> 
                    ($ Id.VSub_DollarName '$pkgname') <'/doc'>
                  } {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/share/doc/'> ($ Id.VSub_DollarName '$pkgname')}
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
            (C {<mkdir>} {<-p>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/share/licenses/'> 
                ($ Id.VSub_DollarName '$pkgname')
              }
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<mv>} 
                  {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/share/doc/'> 
                    ($ Id.VSub_DollarName '$pkgname') <'/LICENSE'>
                  } 
                  {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/share/licenses/'> 
                    ($ Id.VSub_DollarName '$pkgname') <'/'>
                  }
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
          ]
        )
    )
    (command.ShFunction
      name: feathers
      body: 
        (BraceGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:pkgdesc)
                  op: assign_op.Equal
                  rhs: {(DQ <'A debugger for compiled chicken programs'>)}
                  spids: [324]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:depends)
                  op: assign_op.Equal
                  rhs: {(DQ <tk>)}
                  spids: [330]
                )
              ]
            )
            (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/usr/bin/'>} 
              {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/usr/share/chicken/'>}
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<mv>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin/feathers'>} 
                  {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/usr/bin/'>}
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<mv>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/share/chicken/feathers.tcl'>} 
                  {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/usr/share/chicken/'>}
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'190bdc9e53aa50e93419e2483fd5baf3e2ef3bebe4e605653f2aadd9b8bbc98b192cfbb64ab1c99eeefb13a7795757f013799963bfb775862d746ed5c93d602f  chicken-4.12.0.tar.gz\n'
                > 
                <
'7709b6558c01490116cda11162833affa884afaed1ba2d34ee301f5439fad02a6550193266c38c3a93e88c19a680a7140eeafb23100f783979265a7c1a1eaf57  CVE-2017-6949.patch\n'
                > 
                <
'7d594a6abaffe59a050305878ba9cc75cf588743407b2cc44e369fb22a94d42662bf8101bec93b60cacdc0046da5bc74ff1e8ac8d9e6aacfb280406cbbabce7c  CVE-2017-9334.patch'
                >
              )
            }
          spids: [398]
        )
      ]
    )
  ]
)