(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:_gemname)
          op: assign_op.Equal
          rhs: {<unicorn>}
          spids: [3]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<ruby-unicorn>}
          spids: [6]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<4.8.3>}
          spids: [9]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgrel)
          op: assign_op.Equal
          rhs: {<2>}
          spids: [12]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgdesc)
          op: assign_op.Equal
          rhs: {(DQ <'Unicorn is an HTTP server for Rack applications'>)}
          spids: [15]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(DQ <'http://unicorn.bogomips.org'>)}
          spids: [20]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:arch)
          op: assign_op.Equal
          rhs: {(DQ <all>)}
          spids: [25]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:license)
          op: assign_op.Equal
          rhs: {(DQ <MIT>)}
          spids: [30]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends)
          op: assign_op.Equal
          rhs: {(DQ <'ruby ruby-kgio ruby-rack ruby-raindrops'>)}
          spids: [35]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends_dev)
          op: assign_op.Equal
          rhs: {(DQ <ruby-dev>)}
          spids: [40]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:makedepends)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$depends_dev') <' ruby'>)}
          spids: [45]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:install)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [51]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:subpackages)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [55]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'http://gems.rubyforge.org/gems/'> ($ Id.VSub_DollarName '$_gemname') <-> 
                ($ Id.VSub_DollarName '$pkgver') <'.gem\n'> <'\tredmine.conf.rb.sample\n'> <'\tunicorn.initd\n'> <'\tunicorn.confd'>
              )
            }
          spids: [59]
        )
      ]
    )
    (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 '$_realname') <-> 
              ($ Id.VSub_DollarName '$pkgver')
            }
          spids: [72]
        )
      ]
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          children: [(command.ControlFlow token:<Id.ControlFlow_Return return> arg_word:{<0>})]
        )
    )
    (command.ShFunction
      name: package
      body: 
        (BraceGroup
          children: [
            (C {<local>} 
              {<Id.Lit_VarLike '_gemdir='> 
                (DQ 
                  (command_sub
                    left_token: <Id.Left_DollarParen '$('>
                    child: (C {<ruby>} {<-rubygems>} {<-e> (SQ <'puts Gem.default_dir'>)})
                  )
                )
              }
            )
            (C {<local>} 
              {<Id.Lit_VarLike '_geminstdir='> ($ Id.VSub_DollarName '$_gemdir') <'/gems/'> 
                ($ Id.VSub_DollarName '$_gemname') <-> ($ Id.VSub_DollarName '$pkgver')
              }
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$pkgdir'))})
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<gem>} {<install>} {<--local>} {<--install-dir>} 
                  {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_gemdir')} {<--ignore-dependencies>} {<--verbose>} {<--no-rdoc>} {<--no-ri>} 
                  {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/'> ($ Id.VSub_DollarName '$_gemname') <-> 
                    ($ Id.VSub_DollarName '$pkgver') <.gem>
                  }
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
            (C {<rm>} {<-rf>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_gemdir') <'/cache'>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_geminstdir') <'/ext'>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_geminstdir') 
                <'/.require_paths'>
              }
            )
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$pkgdir'))})
            (command.ForEach
              iter_name: i
              iter_words: [{<'usr/lib/ruby/gems/'> <Id.Lit_Star '*'> <'/bin/'> <Id.Lit_Star '*'>}]
              do_arg_iter: F
              body: 
                (command.DoGroup
                  children: [
                    (command.If
                      arms: [
                        (if_arm
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (C {<Id.Lit_LBracket '['>} {<-e>} {(DQ ($ Id.VSub_DollarName '$i'))} 
                                      {<Id.Lit_RBracket ']'>}
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          action: [
                            (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin'>})
                            (C {<ln>} {<-s>} {<'/'> ($ Id.VSub_DollarName '$i')} 
                              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin/'>}
                            )
                          ]
                          spids: [240 253]
                        )
                      ]
                    )
                  ]
                )
            )
            (C {<install>} {<-Dm644>} 
              {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/'> ($ Id.VSub_DollarName '$_gemname') <.confd>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/etc/conf.d/'> ($ Id.VSub_DollarName '$_gemname')}
            )
            (C {<install>} {<-D>} {<-m755>} 
              {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/'> ($ Id.VSub_DollarName '$_gemname') <.initd>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/etc/init.d/'> ($ Id.VSub_DollarName '$_gemname')}
            )
            (C {<install>} {<-D>} {<-m644>} 
              {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/redmine.conf.rb.sample'>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/etc/unicorn/redmine.conf.rb.sample'>}
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:md5sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'d1f58658c7ad4e46c4f319cc715fb710  unicorn-4.8.3.gem\n'> 
                <'416e6d6c3e5f9f191d1e8c3975b0d4f5  redmine.conf.rb.sample\n'> <'f32a54abc3df5273620bd493f314c3ee  unicorn.initd\n'> 
                <'0745d4e1605ff961c83773613c68347d  unicorn.confd'>
              )
            }
          spids: [353]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha256sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'44b74e46fc8cd67510ecc7fac31d4c8503955066781542b36f1d8a3ee316efce  unicorn-4.8.3.gem\n'
                > <'87a565f79a3f4b0544880af67c66e28fa0afdca9576191e725853da1159ec1f1  redmine.conf.rb.sample\n'> 
                <
'41cc2f5235d15e2bf1676a35464013630aa0518773e1de21519fc1eceda54eee  unicorn.initd\n'
                > <'8b6c5aff19eb8234192f8df79f5c8c7a2325f8f26a90af97271bf126269dc93c  unicorn.confd'>
              )
            }
          spids: [361]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'6c8a3c9331d380ebe6e9765a873a4ec37e91dc5e743af5f3d6814ffc19dabb64945994463bb64b7dc43e9a78160fa6f1e5b6c9e1f41b3a54089793f801c44e73  unicorn-4.8.3.gem\n'
                > 
                <
'11abdc40c406e88c71feeb1bd6282534552f782398b694907e6afb266361e30091f4e9645e3ae9cc14bae68a4909cb087bbf0f6c13c3e26b41518565e942492d  redmine.conf.rb.sample\n'
                > 
                <
'eddf9b47c56c5962e7fe832f06ceecf3c4320ac00b39f8b06846bf542d5aaf9c78cded5a6e33675197593463d0192d4d61a7e14dea938b7227458c8c57d15a28  unicorn.initd\n'
                > 
                <
'40931b0f41f8f19ed2bfee726c6abdf40e9ca03940ca6fa4db0c468b59409b99506dbad47316dec528ae7173b6bd3856ba80be1f45fa3995ed18efefed1c4ce1  unicorn.confd'
                >
              )
            }
          spids: [369]
        )
      ]
    )
  ]
)