(CommandList
  children: [
    (FuncDef
      name: k_config_command
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [58]
                )
              ]
              spids: [56]
            )
            (C {(shift)})
            (C {(CFGET_BIN)} {(--plugin)} {(DQ (${ VSub_Name KOALEPHANT_LIB_PATH) (/cfget-plugins/))} 
              {(--format)} {(nestedini)} {(--cfg)} {(DQ (${ VSub_Name file))} {(--quiet)} {(DQ ($ VSub_At '$@'))}
            )
          ]
          spids: [53]
        )
      spids: [49 52]
    )
    (FuncDef
      name: k_config_sections
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [133]
                )
              ]
              spids: [131]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:root) op:Equal rhs:{(DQ )} spids:[141])]
              spids: [139]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Number 2>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                                spids: [153 156]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:root)
                          op: Equal
                          rhs: {(DQ ('--root ') (${ VSub_Number 2))}
                          spids: [165]
                        )
                      ]
                      spids: [165]
                    )
                  ]
                  spids: [16777215 162]
                )
              ]
              spids: [16777215 174]
            )
            (AndOr
              ops: [Op_DPipe]
              children: [
                (C {(k_config_command)} {(DQ (${ VSub_Name file))} {(--dump)} {(sections)} 
                  {(${ VSub_Name root)}
                )
                (C {(true)})
              ]
            )
          ]
          spids: [128]
        )
      spids: [124 127]
    )
    (FuncDef
      name: k_config_keys
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [234]
                )
              ]
              spids: [232]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:root) op:Equal rhs:{(DQ )} spids:[242])]
              spids: [240]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Number 2>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                                spids: [254 257]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:root)
                          op: Equal
                          rhs: {(DQ ('--root ') (${ VSub_Number 2))}
                          spids: [266]
                        )
                      ]
                      spids: [266]
                    )
                  ]
                  spids: [16777215 263]
                )
              ]
              spids: [16777215 275]
            )
            (C {(k_config_command)} {(DQ (${ VSub_Name file))} {(--dump)} {(keys)} {(${ VSub_Name root)})
          ]
          spids: [229]
        )
      spids: [225 228]
    )
    (FuncDef
      name: k_config_read
      body: 
        (BraceGroup
          children: [
            (AndOr
              ops: [Op_DPipe]
              children: [(C {(k_config_read_error)} {(DQ ($ VSub_At '$@'))}) (C {(true)})]
            )
          ]
          spids: [332]
        )
      spids: [328 331]
    )
    (FuncDef
      name: k_config_read_error
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [393]
                )
              ]
              spids: [391]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:key)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$2'))}
                  spids: [401]
                )
              ]
              spids: [399]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:root) op:Equal rhs:{(DQ )} spids:[409])]
              spids: [407]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Number 3>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                                spids: [421 424]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:root)
                          op: Equal
                          rhs: {(DQ ('--root ') (${ VSub_Number 3))}
                          spids: [433]
                        )
                      ]
                      spids: [433]
                    )
                  ]
                  spids: [16777215 430]
                )
              ]
              spids: [16777215 442]
            )
            (C {(k_config_command)} {(DQ (${ VSub_Name file))} {(${ VSub_Name root)} 
              {(DQ (${ VSub_Name key))}
            )
          ]
          spids: [388]
        )
      spids: [384 387]
    )
    (FuncDef
      name: k_config_read_string
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [507]
                )
              ]
              spids: [505]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:key)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$2'))}
                  spids: [515]
                )
              ]
              spids: [513]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:default)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 3>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                          spids: [525 528]
                        )
                      )
                    }
                  spids: [523]
                )
              ]
              spids: [521]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:root)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 4>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                          spids: [536 539]
                        )
                      )
                    }
                  spids: [534]
                )
              ]
              spids: [532]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:value)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(k_config_read)} {(DQ ($ VSub_Name '$file'))} 
                                  {(DQ ($ VSub_Name '$key'))} {(DQ (${ VSub_Name root))}
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [548 564]
                        )
                      )
                    }
                  spids: [546]
                )
              ]
              spids: [544]
            )
            (C {(printf)} {(DQ ('%s'))} 
              {
                (DQ 
                  (BracedVarSub
                    token: <VSub_Name value>
                    suffix_op: 
                      (StringUnary
                        op_id: VTest_ColonHyphen
                        arg_word: {($ VSub_Name '$default')}
                      )
                    spids: [576 580]
                  )
                )
              }
            )
          ]
          spids: [502]
        )
      spids: [498 501]
    )
    (FuncDef
      name: k_config_read_bool
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [625]
                )
              ]
              spids: [623]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:key)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$2'))}
                  spids: [633]
                )
              ]
              spids: [631]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:default)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 3>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                          spids: [643 646]
                        )
                      )
                    }
                  spids: [641]
                )
              ]
              spids: [639]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:root)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 4>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                          spids: [654 657]
                        )
                      )
                    }
                  spids: [652]
                )
              ]
              spids: [650]
            )
            (C {(k_bool_parse)} 
              {
                (DQ 
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [
                          (C {(k_config_read)} {(DQ (${ VSub_Name file))} {(DQ (${ VSub_Name key))} 
                            {(DQ (${ VSub_Name root))}
                          )
                        ]
                      )
                    left_token: <Left_CommandSub '$('>
                    spids: [665 685]
                  )
                )
              } {(DQ (${ VSub_Name default))}
            )
          ]
          spids: [620]
        )
      spids: [616 619]
    )
    (FuncDef
      name: k_config_test_bool
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [736]
                )
              ]
              spids: [734]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:key)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$2'))}
                  spids: [744]
                )
              ]
              spids: [742]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:default)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 3>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                          spids: [754 757]
                        )
                      )
                    }
                  spids: [752]
                )
              ]
              spids: [750]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:root)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 4>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(EmptyPart)})
                          spids: [765 768]
                        )
                      )
                    }
                  spids: [763]
                )
              ]
              spids: [761]
            )
            (C {(k_bool_test)} 
              {
                (DQ 
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [
                          (C {(k_config_read_string)} {(DQ (${ VSub_Name file))} 
                            {(DQ (${ VSub_Name key))} 
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(k_bool_parse)} {(DQ (${ VSub_Name default))})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [792 800]
                                )
                              )
                            } {(DQ (${ VSub_Name root))}
                          )
                        ]
                      )
                    left_token: <Left_CommandSub '$('>
                    spids: [776 808]
                  )
                )
              }
            )
          ]
          spids: [731]
        )
      spids: [727 730]
    )
    (FuncDef
      name: k_config_read_keyword
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [856]
                )
              ]
              spids: [854]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:key)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$2'))}
                  spids: [864]
                )
              ]
              spids: [862]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:default)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$3'))}
                  spids: [872]
                )
              ]
              spids: [870]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:root)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$4'))}
                  spids: [880]
                )
              ]
              spids: [878]
            )
            (C {(shift)} {(4)})
            (C {(k_string_keyword)} 
              {
                (DQ 
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [
                          (C {(k_config_read_string)} {(DQ (${ VSub_Name file))} 
                            {(DQ (${ VSub_Name key))} {(DQ (${ VSub_Name default))} {(DQ (${ VSub_Name root))}
                          )
                        ]
                      )
                    left_token: <Left_CommandSub '$('>
                    spids: [896 922]
                  )
                )
              } {(DQ ($ VSub_At '$@'))} {(DQ ($ VSub_Name '$default'))}
            )
          ]
          spids: [851]
        )
      spids: [847 850]
    )
  ]
)