(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<xtrabackup>}
          spids: [7]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<2.1.8>}
          spids: [10]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgrel)
          op: assign_op.Equal
          rhs: {<0>}
          spids: [13]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgdesc)
          op: assign_op.Equal
          rhs: {(SQ <'MySQL non-blocking backup solution for InnoDB and XtraDB data'>)}
          spids: [16]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:arch)
          op: assign_op.Equal
          rhs: {<all>}
          spids: [21]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(SQ <'http://www.percona.com/software/percona-xtrabackup/'>)}
          spids: [24]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:license)
          op: assign_op.Equal
          rhs: {(SQ <GPL>)}
          spids: [29]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:makedepends)
          op: assign_op.Equal
          rhs: 
            {
              (SQ <'bash bison cmake ncurses-dev libaio-dev libgcrypt-dev\n'> 
                <'             py-setuptools py-sphinx zlib-dev'>
              )
            }
          spids: [34]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'http://percona.com/redir/downloads/XtraBackup/XtraBackup-'> 
                ($ Id.VSub_DollarName '$pkgver') <'/source/percona-xtrabackup-'> ($ Id.VSub_DollarName '$pkgver') <'.tar.gz\n'> <'\tWerror.patch\n'> 
                <'\t'>
              )
            }
          spids: [40]
        )
      ]
    )
    (command.ShFunction
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {<cd>} 
              {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/percona-xtrabackup-'> 
                ($ Id.VSub_DollarName '$pkgver')
              }
            )
            (command.ForEach
              iter_name: i
              iter_words: [{($ Id.VSub_DollarName '$source')}]
              do_arg_iter: F
              body: 
                (command.DoGroup
                  children: [
                    (command.Case
                      to_match: {($ Id.VSub_DollarName '$i')}
                      arms: [
                        (case_arm
                          pat_list: [{<Id.Lit_Star '*'> <.patch>}]
                          action: [
                            (command.Sentence
                              child: (C {<msg>} {($ Id.VSub_DollarName '$i')})
                              terminator: <Id.Op_Semi _>
                            )
                            (command.AndOr
                              ops: [Id.Op_DPipe]
                              children: [
                                (C {<patch>} {<-p1>} {<-i>} 
                                  {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/'> 
                                    ($ Id.VSub_DollarName '$i')
                                  }
                                )
                                (command.ControlFlow
                                  token: <Id.ControlFlow_Return return>
                                  arg_word: {<1>}
                                )
                              ]
                            )
                          ]
                          spids: [87 89 113 -1]
                        )
                      ]
                    )
                  ]
                )
            )
          ]
        )
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          children: [
            (C {<cd>} 
              {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/percona-xtrabackup-'> 
                ($ Id.VSub_DollarName '$pkgver')
              }
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<'utils/build.sh'>} {<innodb55>})
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
          ]
        )
    )
    (command.ShFunction
      name: package
      body: 
        (BraceGroup
          children: [
            (C {<cd>} 
              {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/percona-xtrabackup-'> 
                ($ Id.VSub_DollarName '$pkgver')
              }
            )
            (C {<install>} {<-D>} {<innobackupex>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin/innobackupex'>}
            )
            (C {<install>} {<-D>} {<'src/xtrabackup_55'>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin/xtrabackup_55'>}
            )
            (C {<install>} {<-D>} {<'src/xbcrypt'>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin/xbcrypt'>}
            )
            (C {<install>} {<-D>} {<'src/xtrabackup_innodb55'>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin/xbstream'>}
            )
            (C {<ln>} {<-s>} {<'/usr/bin/xtrabackup_55'>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin/xtrabackup'>}
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:md5sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'c36df9d65e07b292e1e63372d8a4bdec  percona-xtrabackup-2.1.8.tar.gz\n'> 
                <'fe4760511ec877b2756db8581fad60c5  Werror.patch'>
              )
            }
          spids: [233]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha256sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'2a397372aaa42228b48e74b89c41265d0b0c4be815069a86feb855bc8fbf2ffa  percona-xtrabackup-2.1.8.tar.gz\n'
                > <'12e8154a84c28dd32895001ffbd0171f6d6c1a12b803dc69c51dd55a848c13d7  Werror.patch'>
              )
            }
          spids: [239]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'f2c22575fa789335f08e8d0fab493305864ca6c01ecf7078620f0ac676348287de908304975ba81a66cb91bdf3604b50d65d84ac7073d420feada72d34fc8cd4  percona-xtrabackup-2.1.8.tar.gz\n'
                > 
                <
'99a1b7fc935b2779ce52401de68f9218c55e43a4ffebbfe8c47c384b4847e4690cbb7cf349ba47b5c2b6d4bf53db231fa74d77b3bdd83d043a7aefdf6edac2d9  Werror.patch'
                >
              )
            }
          spids: [245]
        )
      ]
    )
  ]
)