(CommandList
  children: [
    (Assignment
      keyword: Assign_Export
      pairs: [(assign_pair lhs:(LeftVar name:KCONFIG_NOTIMESTAMP) rhs:{(1)} spids:[72])]
      spids: [70]
    )
    (If
      arms: [
        (if_arm
          cond: (C {(Lit_Other "[")} {($ VSub_Pound "$#")} {(-ne)} {(1)} {(Lit_Other "]")})
          action: 
            (CommandList
              children: [(C {(echo)} {(DQ ("Usage: miniconfig.sh configfile"))}) (C {(exit)} {(1)})]
            )
          spids: [-1 88]
        )
      ]
      spids: [-1 103]
    )
    (If
      arms: [
        (if_arm
          cond: 
            (C {(Lit_Other "[")} {(KW_Bang "!")} {(-f)} {(DQ ($ VSub_Number "$1"))} {(Lit_Other "]")})
          action: 
            (CommandList
              children: [
                (C {(echo)} {(DQ ("Couldn't find ")) (SQ <"\"">) (DQ ($ VSub_Number "$1")) (SQ <"\"">)})
                (C {(exit)} {(1)})
              ]
            )
          spids: [-1 120]
        )
      ]
      spids: [-1 143]
    )
    (If
      arms: [
        (if_arm
          cond: 
            (C {(Lit_Other "[")} {(DQ ($ VSub_Number "$1"))} {(Lit_Other "=") (Lit_Other "=")} 
              {(DQ (.config))} {(Lit_Other "]")}
            )
          action: 
            (CommandList
              children: [
                (C {(echo)} {(DQ ("It overwrites .config, rename it and try again."))})
                (C {(exit)} {(1)})
              ]
            )
          spids: [-1 163]
        )
      ]
      spids: [-1 177]
    )
    (SimpleCommand
      words: [{(make)} {(allnoconfig)} {(Lit_VarLike "KCONFIG_ALLCONFIG=") (DQ ($ VSub_Number "$1"))}]
      redirects: [(Redirect op_id:Redir_Great arg_word:{(/dev/null)} fd:-1 spids:[189])]
    )
    (Pipeline
      children: [
        (C {(yes)} {(DQ )})
        (SimpleCommand
          words: [{(make)} {(oldconfig)}]
          redirects: [(Redirect op_id:Redir_Great arg_word:{(/dev/null)} fd:-1 spids:[207])]
        )
      ]
      negated: False
    )
    (If
      arms: [
        (if_arm
          cond: 
            (Pipeline
              children: [(C {(cmp)} {(.config)} {(DQ ($ VSub_Number "$1"))})]
              negated: True
            )
          action: 
            (CommandList
              children: [
                (C {(echo)} {(Sanity)} {(test)} {(failed) (Lit_Comma ",")} {(normalizing)} {(starting)} 
                  {(configuration...)}
                )
                (C {(diff)} {(-u)} {(DQ ($ VSub_Number "$1"))} {(.config)})
              ]
            )
          spids: [-1 224]
        )
      ]
      spids: [-1 253]
    )
    (C {(cp)} {(.config)} {(.big.config)})
    (Pipeline
      children: [
        (C {(grep)} {(-v)} {(SQ <"^[#$]">)} {(.config)})
        (SimpleCommand
          words: [{(grep)} {(-v)} {(SQ <"^$">)}]
          redirects: [(Redirect op_id:Redir_Great arg_word:{(mini.config)} fd:-1 spids:[285])]
        )
      ]
      negated: False
    )
    (SimpleCommand
      words: [{(make)} {(allnoconfig)} {(Lit_VarLike "KCONFIG_ALLCONFIG=") (mini.config)}]
      redirects: [(Redirect op_id:Redir_Great arg_word:{(/dev/null)} fd:-1 spids:[299])]
    )
    (If
      arms: [
        (if_arm
          cond: 
            (Pipeline
              children: [(C {(cmp)} {(.config)} {(DQ ($ VSub_Number "$1"))})]
              negated: True
            )
          action: 
            (CommandList
              children: [
                (C {(echo)} {(Insanity)} {(test)} {(failed) (Lit_Other ":")} {(reversing)} {(blank)} 
                  {(line)} {(removal)} {(heuristic.)}
                )
                (C {(cp)} {(.big.config)} {(mini.config)})
              ]
            )
          spids: [-1 315]
        )
      ]
      spids: [-1 344]
    )
    (C {(echo)} {(DQ ("Calculating mini.config..."))})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LeftVar name:LENGTH)
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (Pipeline
                    children: [(C {(cat)} {(mini.config)}) (C {(wc)} {(-l)})]
                    negated: False
                  )
                spids: [358 368]
              )
            }
          spids: [357]
        )
      ]
      spids: [357]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LeftVar name:OLDLENGTH) rhs:{($ VSub_Name "$LENGTH")} spids:[370])]
      spids: [370]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LeftVar name:I) rhs:{(1)} spids:[377])]
      spids: [377]
    )
    (While
      cond: (C {(true)})
      body: 
        (DoGroup
          child: 
            (CommandList
              children: [
                (AndOr
                  children: [
                    (C {(Lit_Other "[")} {($ VSub_Name "$I")} {(-gt)} {($ VSub_Name "$LENGTH")} 
                      {(Lit_Other "]")}
                    )
                    (C {(break)})
                  ]
                  op_id: Op_DAmp
                )
                (SimpleCommand
                  words: [
                    {(sed)}
                    {(-n)}
                    {
                      (DQ ($ VSub_Name "$I") (",") 
                        (ArithSubPart
                          anode: 
                            (ArithBinary
                              op_id: Arith_Minus
                              left: 
                                (ArithBinary
                                  op_id: Arith_Plus
                                  left: (ArithWord w:{($ VSub_Name "$I")})
                                  right: 
                                    (ArithWord
                                      w: 
                                        {
                                          (BracedVarSub
                                            token: <VSub_Name STRIDE>
                                            suffix_op: 
                                              (StringUnary
                                                op_id: VTest_ColonHyphen
                                                arg_word: {(1)}
                                              )
                                            spids: [412 416]
                                          )
                                        }
                                    )
                                )
                              right: (ArithWord w:{(Lit_Digits 1)})
                            )
                          spids: [409 420]
                        ) ("!p")
                      )
                    }
                    {(mini.config)}
                  ]
                  redirects: [
                    (Redirect
                      op_id: Redir_Great
                      arg_word: {(.config.test)}
                      fd: -1
                      spids: [426]
                    )
                  ]
                )
                (C {(rm)} {(.config)})
                (Pipeline
                  children: [
                    (SimpleCommand
                      words: [
                        {(make)}
                        {(allnoconfig)}
                        {(Lit_VarLike "KCONFIG_ALLCONFIG=") (.config.test)}
                      ]
                      redirects: [
                        (Redirect
                          op_id: Redir_Great
                          arg_word: {(/dev/null)}
                          fd: 2
                          spids: [447]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(head)} {(-n)} {(1000000)}]
                      redirects: [
                        (Redirect
                          op_id: Redir_Great
                          arg_word: {(/dev/null)}
                          fd: -1
                          spids: [458]
                        )
                      ]
                    )
                  ]
                  negated: False
                )
                (If
                  arms: [
                    (if_arm
                      cond: (C {(cmp)} {(-s)} {(.config)} {(.big.config)})
                      action: 
                        (CommandList
                          children: [
                            (C {(mv)} {(.config.test)} {(mini.config)})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:LENGTH)
                                  rhs: 
                                    {
                                      (ArithSubPart
                                        anode: 
                                          (ArithBinary
                                            op_id: Arith_Minus
                                            left: (ArithWord w:{($ VSub_Name "$LENGTH")})
                                            right: 
                                              (ArithWord
                                                w: 
                                                  {
                                                    (BracedVarSub
                                                      token: <VSub_Name STRIDE>
                                                      suffix_op: 
                                                        (StringUnary
                                                          op_id: VTest_ColonHyphen
                                                          arg_word: {(1)}
                                                        )
                                                      spids: [496 500]
                                                    )
                                                  }
                                              )
                                          )
                                        spids: [493 502]
                                      )
                                    }
                                  spids: [492]
                                )
                              ]
                              spids: [492]
                            )
                            (AndOr
                              children: [
                                (C {(Lit_Other "[")} {($ VSub_Name "$I")} {(-gt)} 
                                  {($ VSub_Name "$LENGTH")} {(Lit_Other "]")}
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LeftVar name:LENGTH)
                                      rhs: 
                                        {
                                          (ArithSubPart
                                            anode: 
                                              (ArithBinary
                                                op_id: Arith_Minus
                                                left: (ArithWord w:{($ VSub_Name "$I")})
                                                right: (ArithWord w:{(Lit_Digits 1)})
                                              )
                                            spids: [526 531]
                                          )
                                        }
                                      spids: [525]
                                    )
                                  ]
                                  spids: [525]
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (AndOr
                              children: [
                                (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$STRIDE"))} 
                                  {(Lit_Other "]")}
                                )
                                (AndOr
                                  children: [
                                    (C {(Lit_Other "[")} 
                                      {
                                        (BracedVarSub
                                          token: <VSub_Name OLDSTRIDE>
                                          suffix_op: 
                                            (StringUnary
                                              op_id: VTest_ColonHyphen
                                              arg_word: {(1)}
                                            )
                                          spids: [556 560]
                                        )
                                      } {(-eq)} {(2)} {(Lit_Other "]")}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LeftVar name:I)
                                          rhs: 
                                            {
                                              (ArithSubPart
                                                anode: 
                                                  (ArithBinary
                                                    op_id: Arith_Plus
                                                    left: (ArithWord w:{($ VSub_Name "$I")})
                                                    right: (ArithWord w:{(Lit_Digits 1)})
                                                  )
                                                spids: [571 576]
                                              )
                                            }
                                          spids: [570]
                                        )
                                      ]
                                      spids: [570]
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:STRIDE)
                                  rhs: 
                                    {
                                      (ArithSubPart
                                        anode: 
                                          (ArithBinary
                                            op_id: Arith_Plus
                                            left: (ArithWord w:{($ VSub_Name "$STRIDE")})
                                            right: (ArithWord w:{(Lit_Digits 1)})
                                          )
                                        spids: [580 585]
                                      )
                                    }
                                  spids: [579]
                                )
                              ]
                              spids: [579]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:OLDSTRIDE)
                                  rhs: {($ VSub_Name "$STRIDE")}
                                  spids: [588]
                                )
                              ]
                              spids: [588]
                            )
                          ]
                        )
                      spids: [-1 478]
                    )
                  ]
                  else_action: 
                    (CommandList
                      children: [
                        (If
                          arms: [
                            (if_arm
                              cond: 
                                (C {(Lit_Other "[")} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name STRIDE>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(1)})
                                      spids: [603 607]
                                    )
                                  } {(-le)} {(1)} {(Lit_Other "]")}
                                )
                              action: 
                                (CommandList
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LeftVar name:I)
                                          rhs: 
                                            {
                                              (ArithSubPart
                                                anode: 
                                                  (ArithBinary
                                                    op_id: Arith_Plus
                                                    left: (ArithWord w:{($ VSub_Name "$I")})
                                                    right: (ArithWord w:{(Lit_Digits 1)})
                                                  )
                                                spids: [620 625]
                                              )
                                            }
                                          spids: [619]
                                        )
                                      ]
                                      spids: [619]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LeftVar name:OLDSTRIDE)
                                          rhs: {(SQ )}
                                          spids: [628]
                                        )
                                      ]
                                      spids: [628]
                                    )
                                  ]
                                )
                              spids: [-1 616]
                            )
                          ]
                          spids: [-1 631]
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [(assign_pair lhs:(LeftVar name:STRIDE) rhs:{(SQ )} spids:[634])]
                          spids: [634]
                        )
                      ]
                    )
                  spids: [592 637]
                )
                (C {(echo)} {(-n)} {(-e)} 
                  {
                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar "\\r">) ("[") 
                      (BracedVarSub
                        token: <VSub_Name STRIDE>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(1)})
                        spids: [649 653]
                      ) ("] ") 
                      (ArithSubPart
                        anode: 
                          (ArithBinary
                            op_id: Arith_Minus
                            left: (ArithWord w:{($ VSub_Name "$I")})
                            right: (ArithWord w:{(Lit_Digits 1)})
                          )
                        spids: [655 659]
                      ) (/) ($ VSub_Name "$LENGTH") (" lines ") 
                      (CommandSubPart
                        command_list: 
                          (Pipeline
                            children: [(C {(cat)} {(mini.config)}) (C {(wc)} {(-c)})]
                            negated: False
                          )
                        spids: [663 673]
                      ) (" bytes ") 
                      (ArithSubPart
                        anode: 
                          (ArithBinary
                            op_id: Arith_Minus
                            left: (ArithWord w:{(Lit_Digits 100)})
                            right: 
                              (ArithBinary
                                op_id: Arith_Slash
                                left: 
                                  (ArithBinary
                                    op_id: Arith_Star
                                    left: 
                                      (ArithBinary
                                        op_id: Arith_Minus
                                        left: (ArithWord w:{($ VSub_Name "$LENGTH")})
                                        right: (ArithWord w:{($ VSub_Name "$I")})
                                      )
                                    right: (ArithWord w:{(Lit_Digits 100)})
                                  )
                                right: (ArithWord w:{($ VSub_Name "$OLDLENGTH")})
                              )
                          )
                        spids: [675 691]
                      ) ("%    ")
                    )
                  }
                )
              ]
            )
          spids: [384 695]
        )
    )
    (C {(rm)} {(.big.config)})
    (C {(echo)})
  ]
)