(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<usbip-utils>}
          spids: [6]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<4.9>}
          spids: [9]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgrel)
          op: assign_op.Equal
          rhs: {<0>}
          spids: [12]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgdesc)
          op: assign_op.Equal
          rhs: {(DQ <'Utilities for USB device sharing over IP network'>)}
          spids: [15]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(DQ <'https://kernel.org/doc/readme/drivers-staging-usbip-userspace-README'>)}
          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 <GPLv2>)}
          spids: [30]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends)
          op: assign_op.Equal
          rhs: {(DQ <'glib sysfsutils usbutils'>)}
          spids: [35]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends_dev)
          op: assign_op.Equal
          rhs: {(DQ <'gcc automake autoconf eudev-dev libtool linux-headers sysfsutils-dev glib-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') <' tar'>)}
          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 ($ Id.VSub_DollarName '$pkgname') <'-dev '> ($ Id.VSub_DollarName '$pkgname') <-doc>)
            }
          spids: [55]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'https://kernel.org/pub/linux/kernel/v4.x/linux-'> ($ Id.VSub_DollarName '$pkgver') 
                <'.tar.gz\n'> <'\tsigcld.patch\n'> <'\tusbip.initd\n'> <'\tusbip.confd'>
              )
            }
          spids: [63]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:_baseurl)
          op: assign_op.Equal
          rhs: {(DQ <linux-> ($ Id.VSub_DollarName '$pkgver') <'/tools/usb/usbip'>)}
          spids: [74]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:builddir)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$srcdir') <'/usbip'>)}
          spids: [81]
        )
      ]
    )
    (command.ShFunction
      name: unpack
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$srcdir'))})
            (C {<mkdir>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<tar>} {<-C>} {($ Id.VSub_DollarName '$builddir')} 
              {<--strip-components> <Id.Lit_Equals '='> <4>} {<-zxv>} {<-f>} 
              {($ Id.VSub_DollarName '$srcdir') <'/linux-'> ($ Id.VSub_DollarName '$pkgver') <.tar.gz>} {($ Id.VSub_DollarName '$_baseurl')}
            )
          ]
        )
    )
    (command.ShFunction
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {<local>} {<i>})
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (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 _>
                            )
                            (C {<patch>} {<-p1>} {<-i>} 
                              {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/'> ($ Id.VSub_DollarName '$i')}
                            )
                          ]
                          spids: [172 174 192 -1]
                        )
                      ]
                    )
                  ]
                )
            )
          ]
        )
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<export>} 
              {<Id.Lit_VarLike 'CFLAGS='> 
                (command_sub
                  left_token: <Id.Left_DollarParen '$('>
                  child: 
                    (command.Pipeline
                      children: [
                        (C {<echo>} {($ Id.VSub_DollarName '$CFLAGS')})
                        (C {<sed>} {(SQ <'s|-Os|-O2|'>)})
                      ]
                      negated: F
                    )
                )
              }
            )
            (C {<export>} {<Id.Lit_VarLike 'CPPFLAGS='> (DQ ($ Id.VSub_DollarName '$CFLAGS'))})
            (C {<'/bin/sh'>} {<autogen.sh>})
            (C {<'./configure'>} {<--prefix> <Id.Lit_Equals '='> <'/usr'>} 
              {<--sysconfdir> <Id.Lit_Equals '='> <'/etc'>} {<--mandir> <Id.Lit_Equals '='> <'/usr/share/man'>} 
              {<--infodir> <Id.Lit_Equals '='> <'/usr/share/info'>} {<--libdir> <Id.Lit_Equals '='> <'/usr/lib'>} {<--datarootdir> <Id.Lit_Equals '='> <'/usr/share'>}
            )
            (C {<make>})
          ]
        )
    )
    (command.ShFunction
      name: check
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<'./src/usbip'>} {<version>})
            (C {<'./src/usbipd'>} {<--version>})
          ]
        )
    )
    (command.ShFunction
      name: package
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<make>} {<Id.Lit_VarLike 'DESTDIR='> (DQ ($ Id.VSub_DollarName '$pkgdir'))} {<install>})
            (C {<install>} {<-m755>} {<-D>} {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/usbip.initd'>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/etc/init.d/usbip'>}
            )
            (C {<install>} {<-m755>} {<-D>} {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/usbip.confd'>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/etc/conf.d/usbip'>}
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'598696c4babb575a01796eb7ae618861a1292ef9be708e833131cefda8338622ce4e3d8584a4ecaa15529408f9c640d9a5bf8166c8cf8d116627b4c79f0bf0a6  linux-4.9.tar.gz\n'
                > 
                <
'9572bcc378523cca337324b8519d87813310ae08a358811f8075d54f1e741eb68c8027f9073452e6e942178b46d2f2942d54e68f97f96665fcd6285cfebe07a7  sigcld.patch\n'
                > 
                <
'fcbd64d844c9bc187d08cef5995e91a46c0df78deb24e96ac9210c0e2c730eca0301970d9b8ffbf003df274682d05072431a26b59d8c491f396618268a12ec92  usbip.initd\n'
                > 
                <
'eb8de617e27c4d5fdfee9c442e8f74b0afb4d0fe7b59eca3a19629eb70fea7e09b3c125bc968aa8810d845ce661c829bd0f3fdb2288664f2cccf423bc0ae6ae8  usbip.confd'
                >
              )
            }
          spids: [376]
        )
      ]
    )
  ]
)