(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkgname='> name:pkgname)
          op: assign_op.Equal
          rhs: {<ttf-opensans>}
          spids: [6]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkgver='> name:pkgver)
          op: assign_op.Equal
          rhs: {<1.2>}
          spids: [9]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkgrel='> name:pkgrel)
          op: assign_op.Equal
          rhs: {<0>}
          spids: [12]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkgdesc='> name:pkgdesc)
          op: assign_op.Equal
          rhs: {(DQ <'Open Sans is a humanist sans serif typeface designed by Steve Matteson'>)}
          spids: [15]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'url='> name:url)
          op: assign_op.Equal
          rhs: {(DQ <'http://opensans.com/'>)}
          spids: [20]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'arch='> name:arch)
          op: assign_op.Equal
          rhs: {(DQ <noarch>)}
          spids: [25]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'license='> name:license)
          op: assign_op.Equal
          rhs: {(DQ <Apache>)}
          spids: [30]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'depends='> name:depends)
          op: assign_op.Equal
          rhs: {(DQ <fontconfig>)}
          spids: [35]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'depends_dev='> name:depends_dev)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [40]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'makedepends='> name:makedepends)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName depends_dev))}
          spids: [44]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'install='> name:install)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [49]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'subpackages='> name:subpackages)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [53]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'source='> name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'http://dev.alpinelinux.org/archive/ttf-opensans/ttf-opensans-'> 
                ($ Id.VSub_DollarName pkgver) <'.tar.gz\n'> <'\t45-opensans.conf\n'> <'\t90-tt-opensans.conf'>
              )
            }
          spids: [63]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike '_builddir='> name:_builddir)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName srcdir)) <'/'> ($ Id.VSub_DollarName pkgname)}
          spids: [73]
        )
      ]
      redirects: []
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [(C {<cd>} {(DQ ($ Id.VSub_DollarName _builddir))})]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name: package
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (C {<mkdir>} {<-p>} 
              {(DQ ($ Id.VSub_DollarName pkgdir)) <'/usr/share/fonts/'> ($ Id.VSub_DollarName pkgname)} {(DQ ($ Id.VSub_DollarName pkgdir)) <'/etc/fonts/conf.avail'>} 
              {(DQ ($ Id.VSub_DollarName pkgdir)) <'/etc/fonts/conf.d'>}
            )
            (command.ForEach
              iter_names: [i]
              iterable: 
                (for_iter.Words
                  words: [{(DQ ($ Id.VSub_DollarName _builddir)) <'/'> <Id.Lit_Star '*'> <.ttf>}]
                )
              body: 
                (command.DoGroup
                  children: [
                    (command.AndOr
                      ops: [Id.Op_DPipe]
                      children: [
                        (C {<install>} {<-m644>} {(DQ ($ Id.VSub_DollarName i))} 
                          {(DQ ($ Id.VSub_DollarName pkgdir)) <'/usr/share/fonts/'> 
                            ($ Id.VSub_DollarName pkgname) <'/'>
                          }
                        )
                        (command.ControlFlow
                          token: <Id.ControlFlow_Return return>
                          arg_word: {<1>}
                        )
                      ]
                    )
                  ]
                )
              redirects: []
            )
            (command.ForEach
              iter_names: [j]
              iterable: 
                (for_iter.Words
                  words: [{(DQ ($ Id.VSub_DollarName srcdir)) <'/'> <Id.Lit_Star '*'> <.conf>}]
                )
              body: 
                (command.DoGroup
                  children: [
                    (command.AndOr
                      ops: [Id.Op_DPipe]
                      children: [
                        (C {<install>} {<-m644>} {(DQ ($ Id.VSub_DollarName j))} 
                          {(DQ ($ Id.VSub_DollarName pkgdir)) <'/etc/fonts/conf.avail/'>}
                        )
                        (command.ControlFlow
                          token: <Id.ControlFlow_Return return>
                          arg_word: {<1>}
                        )
                      ]
                    )
                    (C {<cd>} {(DQ ($ Id.VSub_DollarName pkgdir)) <'/etc/fonts/conf.d'>})
                    (C {<ln>} {<-sf>} 
                      {<'/etc/fonts/conf.avail/'> 
                        (braced_var_sub
                          left: <Id.Left_DollarBrace '${'>
                          token: <Id.VSub_Name j>
                          var_name: j
                          suffix_op: 
                            (suffix_op.Unary
                              op: <Id.VOp1_DPound '##'>
                              arg_word: {<Id.Lit_Other '*'> <Id.Lit_Slash '/'>}
                            )
                          right: <Id.Right_DollarBrace '}'>
                        )
                      }
                    )
                  ]
                )
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'md5sums='> name:md5sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'65288f5ce42c8f0c65b1325d74df60cc  ttf-opensans-1.2.tar.gz\n'> 
                <'92ba870ab9de8466dfb3fdf3f02f5eaa  45-opensans.conf\n'> <'84f21626d61c7f2a61d673aabddf10fb  90-tt-opensans.conf'>
              )
            }
          spids: [237]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'sha256sums='> name:sha256sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'92470f153bb19fc3edefde04f485755cc084cdd7d4bcedf90f655a09ffa32032  ttf-opensans-1.2.tar.gz\n'
                > <'fa343948e4225f8ab73ce72ff4f6520dec60be396beb57551f30e675b498fd31  45-opensans.conf\n'> 
                <
'e6213d0af8c24688742903d5b7bd77515c3a249db0a9e0cef4aa107f5b64d5b3  90-tt-opensans.conf'
                >
              )
            }
          spids: [244]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'sha512sums='> name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'6d20a92286db4757acf05123571388d381c761f46080c9dbf175a69535a4b29efa284d1e629a9cbe7f9e43ba05de4140ce38ea6c0f3e53e596c50f9cf3dcde21  ttf-opensans-1.2.tar.gz\n'
                > 
                <
'853d50f6d0ff309b170ae6e0fb8f6a0b96dbf842b8ef9ac3c9f4c22aa269ef7a1009d6c39810be1e9adab7d44fb5e7772d5d7ecfecf6cfe18538b999e3390215  45-opensans.conf\n'
                > 
                <
'4e3c0e9d3e6fb8f87ec294cda375671a50588998192384e8503550f8c9471501e8d1fd9fb1eb819a630651ab8a81054704d0ca15c0d5de31d5e2067f3837d276  90-tt-opensans.conf'
                >
              )
            }
          spids: [251]
        )
      ]
      redirects: []
    )
  ]
)