(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<netdata>}
          spids: [6]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<1.8.0>}
          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 <'Real-time performance monitoring'>)}
          spids: [15]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(DQ <'https://github.com/firehol/netdata'>)}
          spids: [20]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:license)
          op: assign_op.Equal
          rhs: {(DQ <'GPL3+'>)}
          spids: [25]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:arch)
          op: assign_op.Equal
          rhs: {(DQ <all>)}
          spids: [30]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends)
          op: assign_op.Equal
          rhs: {(DQ <bash>)}
          spids: [35]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:makedepends)
          op: assign_op.Equal
          rhs: {(DQ <'zlib-dev e2fsprogs-dev'>)}
          spids: [40]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgusers)
          op: assign_op.Equal
          rhs: {(DQ <netdata>)}
          spids: [45]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkggroups)
          op: assign_op.Equal
          rhs: {(DQ <netdata>)}
          spids: [50]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:subpackages)
          op: assign_op.Equal
          rhs: 
            {
              (DQ ($ Id.VSub_DollarName '$pkgname') <'-nodejs::noarch '> 
                ($ Id.VSub_DollarName '$pkgname') <'-python::noarch'>
              )
            }
          spids: [55]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:install)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$pkgname') <.pre-install>)}
          spids: [63]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'https://github.com/firehol/netdata/releases/download/v'> 
                ($ Id.VSub_DollarName '$pkgver') <'/netdata-'> ($ Id.VSub_DollarName '$pkgver') <'.tar.xz\n'> <'\t'> ($ Id.VSub_DollarName '$pkgname') 
                <.initd>
              )
            }
          spids: [69]
        )
      ]
    )
    (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: [81]
        )
      ]
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<'./configure'>} {<--prefix> <Id.Lit_Equals '='> <'/usr'>} 
              {<--sysconfdir> <Id.Lit_Equals '='> <'/etc'>} {<--localstatedir> <Id.Lit_Equals '='> <'/var'>} {<--with-zlib>} {<--with-math>} 
              {<--with-webdir> <Id.Lit_Equals '='> <'/usr/share/webapss/netdata'>} {<--with-user> <Id.Lit_Equals '='> <netdata>}
            )
            (C {<make>})
          ]
        )
    )
    (command.ShFunction
      name: check
      body: 
        (BraceGroup
          children: [(C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))}) (C {<make>} {<check>})]
        )
    )
    (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 {<chgrp>} {<-R>} {($ Id.VSub_DollarName '$pkggroups')} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/share/webapss/netdata'>}
            )
            (C {<chown>} {<-R>} 
              {($ Id.VSub_DollarName '$pkgusers') <Id.Lit_Colon ':'> 
                ($ Id.VSub_DollarName '$pkggroups')
              } {($ Id.VSub_DollarName '$pkgdir') <'/var/lib/netdata'>} 
              {($ Id.VSub_DollarName '$pkgdir') <'/var/cache/netdata'>}
            )
            (C {<install>} {<-Dm755>} 
              {($ Id.VSub_DollarName '$srcdir') <'/'> ($ Id.VSub_DollarName '$pkgname') <.initd>} {($ Id.VSub_DollarName '$pkgdir') <'/etc/init.d/'> ($ Id.VSub_DollarName '$pkgname')}
            )
            (C {<install>} {<-Dm644>} {<'./system/netdata.conf'>} 
              {($ Id.VSub_DollarName '$pkgdir') <'/etc/netdata/netdata.conf'>}
            )
          ]
        )
    )
    (command.ShFunction
      name: nodejs
      body: 
        (BraceGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:pkgdesc)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$pkgdesc') <' (nodejs support)'>)}
                  spids: [260]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:depends)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$pkgname') <' nodejs'>)}
                  spids: [267]
                )
              ]
            )
            (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/usr/libexec/netdata'>})
            (C {<mv>} {($ Id.VSub_DollarName '$pkgdir') <'/usr/libexec/netdata/node.d'>} 
              {($ Id.VSub_DollarName '$subpkgdir') <'/usr/libexec/netdata'>}
            )
          ]
        )
    )
    (command.ShFunction
      name: python
      body: 
        (BraceGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:pkgdesc)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$pkgdesc') <' (python support)'>)}
                  spids: [304]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:depends)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$pkgname') <' python2'>)}
                  spids: [311]
                )
              ]
            )
            (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/usr/libexec/netdata'>})
            (C {<mv>} {($ Id.VSub_DollarName '$pkgdir') <'/usr/libexec/netdata/python.d'>} 
              {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/usr/libexec/netdata'>}
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'0fb86b6cea9628556b625d9c5930c36b658d997bc477d468341675dfc2f55fe384344758a6efc50c30d502cf3be35fef21b7e320853c96d0b0eaeaafe24e816b  netdata-1.8.0.tar.xz\n'
                > 
                <
'2aaaee7010c24b3f52be8b01295f73ac6c38ac4d1b627e8b9227d03fe3b248b7157b1d5217edebd88ba461adc1ce89503520acd877b300e4503e75125f40da96  netdata.initd'
                >
              )
            }
          spids: [343]
        )
      ]
    )
  ]
)