(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(linux-headers)} spids:[3])]
      spids: [3]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(4.4.6)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_kernver)
          op: Equal
          rhs: 
            {
              (BracedVarSub
                token: <VSub_Name pkgver>
                suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(".*")})
                spids: [10 14]
              )
            }
          spids: [9]
        )
      ]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(2)} spids:[16])]
      spids: [16]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("Linux system headers"))}
          spids: [19]
        )
      ]
      spids: [19]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://kernel.org"))}
          spids: [24]
        )
      ]
      spids: [24]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[29])]
      spids: [29]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(SQ <GPL2>)} spids:[34])]
      spids: [34]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:makedepends) op:Equal rhs:{(DQ (perl))} spids:[39])]
      spids: [39]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:options)
          op: Equal
          rhs: {(DQ ("!dbg !strip !tracedeps"))}
          spids: [44]
        )
      ]
      spids: [44]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ("https://kernel.org/pub/linux/kernel/v4.x/linux-") ($ VSub_Name "$_kernver") 
                (".tar.xz\n") ("\thttps://kernel.org/pub/linux/kernel/v4.x/patch-") ($ VSub_Name "$pkgver") (".xz\n") 
                ("\t0001-libc-compat.h-fix-some-issues-arising-from-in6.h.patch\n") ("\t0002-libc-compat.h-prevent-redefinition-of-struct-ethhdr.patch\n") 
                ("\t0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch\n") ("\t")
              )
            }
          spids: [49]
        )
      ]
      spids: [49]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$srcdir")) (/linux-) ($ VSub_Name "$_kernver")})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$_kernver"))} 
                          {(KW_Bang "!") (Lit_Other "=")} {(DQ ($ VSub_Name "$pkgver"))} {(Lit_Other "]")}
                        )
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (AndOr
                      children: [
                        (Pipeline
                          children: [
                            (SimpleCommand
                              words: [{(unxz)} {(-c)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_Less
                                  fd: -1
                                  arg_word: 
                                    {(DQ ($ VSub_Name "$srcdir")) (/patch-) ($ VSub_Name "$pkgver") 
                                      (.xz)
                                    }
                                  spids: [105]
                                )
                              ]
                            )
                            (C {(patch)} {(-p1)})
                          ]
                          negated: False
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [-1 98]
                )
              ]
              spids: [-1 127]
            )
            (ForEach
              iter_name: i
              iter_words: [{($ VSub_Name "$source")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name "$i")}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other "*") (.patch)}]
                          action: [
                            (Sentence
                              child: (C {(msg)} {($ VSub_Name "$i")})
                              terminator: <Op_Semi ";">
                            )
                            (AndOr
                              children: [
                                (C {(patch)} {(-p1)} {(-i)} 
                                  {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$i")}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [149 151 175 -1]
                        )
                      ]
                      spids: [142 146 178]
                    )
                  ]
                  spids: [139 181]
                )
              spids: [135 137]
            )
          ]
          spids: [68]
        )
      spids: [64 67]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})]
          spids: [190]
        )
      spids: [186 189]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:_carch)
                  op: Equal
                  rhs: {($ VSub_Name "$CARCH")}
                  spids: [209]
                )
              ]
              spids: [207]
            )
            (Case
              to_match: {(DQ ($ VSub_Name "$_carch"))}
              arms: [
                (case_arm
                  pat_list: [{(aarch64) (Lit_Other "*")}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:_carch)
                          op: Equal
                          rhs: {(DQ (arm64))}
                          spids: [227]
                        )
                      ]
                      spids: [227]
                    )
                  ]
                  spids: [223 225 232 -1]
                )
                (case_arm
                  pat_list: [{(arm) (Lit_Other "*")}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:_carch)
                          op: Equal
                          rhs: {(DQ (arm))}
                          spids: [239]
                        )
                      ]
                      spids: [239]
                    )
                  ]
                  spids: [235 237 244 -1]
                )
                (case_arm
                  pat_list: [{(s390) (Lit_Other "*")}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:_carch)
                          op: Equal
                          rhs: {(DQ (s390))}
                          spids: [251]
                        )
                      ]
                      spids: [251]
                    )
                  ]
                  spids: [247 249 256 -1]
                )
                (case_arm
                  pat_list: [{(ppc) (Lit_Other "*")}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:_carch)
                          op: Equal
                          rhs: {(DQ (powerpc))}
                          spids: [263]
                        )
                      ]
                      spids: [263]
                    )
                  ]
                  spids: [259 261 268 -1]
                )
              ]
              spids: [214 220 274]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$srcdir")) (/linux-) ($ VSub_Name "$_kernver")})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir") (/usr))})
            (AndOr
              children: [
                (C {(make)} {(headers_install)} {(Lit_VarLike "ARCH=") (DQ (${ VSub_Name _carch))} 
                  {(Lit_VarLike "INSTALL_HDR_PATH=") (DQ ($ VSub_Name "$pkgdir") (/usr))}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(find)} {(DQ ($ VSub_Name "$pkgdir") (/usr))} 
              {(EscapedLiteralPart token:<Lit_EscapedChar "\\(">)} {(-name)} {(.install)} {(-o)} {(-name)} {(..install.cmd)} 
              {(EscapedLiteralPart token:<Lit_EscapedChar "\\)">)} {(-exec)} {(rm)} {(-f)} {(Lit_LBrace "{") (Lit_RBrace "}")} 
              {(EscapedLiteralPart token:<Lit_EscapedChar "\\;">)}
            )
            (C {(rm)} {(-rf)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/drm)})
          ]
          spids: [204]
        )
      spids: [200 203]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: 
            {
              (DQ ("9a78fa2eb6c68ca5a40ed5af08142599  linux-4.4.tar.xz\n") 
                ("d48f09bf61f2500d70f839e190dc7c5a  patch-4.4.6.xz\n") ("45813ea0672b2179cd5534765bca4701  0001-libc-compat.h-fix-some-issues-arising-from-in6.h.patch\n") 
                (
"d3845d6feece58f894f4e7785241aecf  0002-libc-compat.h-prevent-redefinition-of-struct-ethhdr.patch\n"
                ) ("54f05c22c84fa72c142761538975e6b9  0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch")
              )
            }
          spids: [374]
        )
      ]
      spids: [374]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"401d7c8fef594999a460d10c72c5a94e9c2e1022f16795ec51746b0d165418b2  linux-4.4.tar.xz\n"
                ) ("efea93ff30955d445344a83c36678fa8e64111219eeafea2a41fd4ee11f79d68  patch-4.4.6.xz\n") 
                (
"03fd7e050e0ce90870c26921049b4bf05ddadb5b823d3e43b9d1f9e4d8a16c96  0001-libc-compat.h-fix-some-issues-arising-from-in6.h.patch\n"
                ) 
                (
"3f88dbae612b0f1d5076b9c61ebc5f0f77dee9e04d6d71f43f3f86ea4e6b37e2  0002-libc-compat.h-prevent-redefinition-of-struct-ethhdr.patch\n"
                ) 
                (
"f84d2eef7ef5750b8971b788685aebda518aeab9f3f690c782e060869cd7fe0f  0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch"
                )
              )
            }
          spids: [383]
        )
      ]
      spids: [383]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"13c8459933a8b80608e226a1398e3d1848352ace84bcfb7e6a4a33cb230bbe1ab719d4b58e067283df91ce5311be6d2d595fc8c19e2ae6ecc652499415614b3e  linux-4.4.tar.xz\n"
                ) 
                (
"73da057476eb31d818eed4b66c883f5ceec65f18ec8ea60d64e48334c7681af4ed4cf7eb8684481f705446a59fd124de9449d22e28805bc9617b6608ecec491d  patch-4.4.6.xz\n"
                ) 
                (
"6ceaaa285bcc7699b72f07f04c018d8edc2e1a2860004c677da6ff8ca042fcecd37f7f264d8ec9783e4e2f60a91bd45ddc432f7ec063da1e3f4e9dfb75b5ba65  0001-libc-compat.h-fix-some-issues-arising-from-in6.h.patch\n"
                ) 
                (
"fbce0bf59dd8ed3da8d90db725e98ace410f1e1a71b1c2e0ef16c53327e3850019b4e52afb1b16115a8616492a1e758fab02158ea686113b1b6cd94c7b08f310  0002-libc-compat.h-prevent-redefinition-of-struct-ethhdr.patch\n"
                ) 
                (
"e5431719b3910162c17c7a46e296c4424f5b82f4ad4bc45ba933da7e7ebcf896bb98782f7764e584c573c49d9e6b00fe63f3a36ae4b3b137add6b9a21ddf14a0  0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch"
                )
              )
            }
          spids: [392]
        )
      ]
      spids: [392]
    )
  ]
)