(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:sysdir) op:Equal rhs:{(/sys/class/net)} spids:[53])]
      spids: [53]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:netvsc_cls)
          op: Equal
          rhs: {(Lit_LBrace '{') (f8615163-df3e-46c5-913f-f2d2f965ed0e) (Lit_RBrace '}')}
          spids: [56]
        )
      ]
      spids: [56]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:bondcnt) op:Equal rhs:{(0)} spids:[61])]
      spids: [61]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(-f)} {(/etc/redhat-release)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cfgdir)
                  op: Equal
                  rhs: {(/etc/sysconfig/network-scripts)}
                  spids: [82]
                )
              ]
              spids: [82]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:distro) op:Equal rhs:{(redhat)} spids:[86])]
              spids: [86]
            )
          ]
          spids: [16777215 79]
        )
        (if_arm
          cond: [(C {(grep)} {(-q)} {(SQ <Ubuntu>)} {(/etc/issue)})]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cfgdir)
                  op: Equal
                  rhs: {(/etc/network)}
                  spids: [104]
                )
              ]
              spids: [104]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:distro) op:Equal rhs:{(ubuntu)} spids:[108])]
              spids: [108]
            )
          ]
          spids: [89 101]
        )
        (if_arm
          cond: [(C {(grep)} {(-q)} {(SQ <SUSE>)} {(/etc/issue)})]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cfgdir)
                  op: Equal
                  rhs: {(/etc/sysconfig/network)}
                  spids: [126]
                )
              ]
              spids: [126]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:distro) op:Equal rhs:{(suse)} spids:[130])]
              spids: [130]
            )
          ]
          spids: [111 123]
        )
      ]
      else_action: [
        (C {(echo)} {(DQ ('Unsupported Distro'))})
        (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
      ]
      spids: [133 147]
    )
    (C {(echo)} {(Detected)} {(Distro) (Lit_Other ':')} {($ VSub_Name '$distro') (Lit_Comma ',')} {(or)} 
      {(compatible)}
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:list_eth)
          op: Equal
          rhs: 
            {
              (ArrayLiteralPart
                words: [
                  {
                    (CommandSubPart
                      command_list: 
                        (CommandList
                          children: [
                            (AndOr
                              ops: [Op_DAmp]
                              children: [
                                (C {(cd)} {($ VSub_Name '$sysdir')})
                                (Pipeline
                                  children: [
                                    (C {(ls)} {(-d)} {(Lit_Other '*') (/)})
                                    (C {(cut)} {(-d/)} {(-f1)})
                                    (C {(grep)} {(-v)} {(bond)})
                                  ]
                                  negated: F
                                )
                              ]
                            )
                          ]
                        )
                      left_token: <Left_Backtick '`'>
                      spids: [170 199]
                    )
                  }
                ]
              )
            }
          spids: [168]
        )
      ]
      spids: [168]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:eth_cnt)
          op: Equal
          rhs: 
            {
              (BracedVarSub
                token: <VSub_Name list_eth>
                prefix_op: VSub_Pound
                bracket_op: (WholeArray op_id:Lit_At)
                spids: [203 209]
              )
            }
          spids: [202]
        )
      ]
      spids: [202]
    )
    (C {(echo)} {(List)} {(of)} {(net)} {(devices) (Lit_Other ':')})
    (ForExpr
      init: (BinaryAssign op_id:Arith_Equal left:(LhsName name:i) right:(ArithWord w:{(Lit_Digits 0)}))
      cond: 
        (ArithBinary
          op_id: Arith_Less
          left: (ArithVarRef name:i)
          right: (ArithWord w:{($ VSub_Name '$eth_cnt')})
        )
      update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i))
      body: 
        (DoGroup
          children: [
            (C 
              {(list_mac) (Lit_Other '[') ($ VSub_Name '$i') (Lit_Other ']') (Lit_Other '=') 
                (CommandSubPart
                  command_list: 
                    (CommandList
                      children: [
                        (C {(cat)} 
                          {($ VSub_Name '$sysdir') (/) 
                            (BracedVarSub
                              token: <VSub_Name list_eth>
                              bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                              spids: [262 267]
                            ) (/address)
                          }
                        )
                      ]
                    )
                  left_token: <Left_Backtick '`'>
                  spids: [257 269]
                )
              }
            )
            (C {(echo)} 
              {
                (BracedVarSub
                  token: <VSub_Name list_eth>
                  bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                  spids: [274 279]
                ) (Lit_Comma ',')
              } 
              {
                (BracedVarSub
                  token: <VSub_Name list_mac>
                  bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                  spids: [282 287]
                )
              }
            )
          ]
          spids: [249 289]
        )
    )
    (ForExpr
      init: (BinaryAssign op_id:Arith_Equal left:(LhsName name:i) right:(ArithWord w:{(Lit_Digits 0)}))
      cond: 
        (ArithBinary
          op_id: Arith_Less
          left: (ArithVarRef name:i)
          right: 
            (ArithBinary
              op_id: Arith_Minus
              left: (ArithWord w:{($ VSub_Name '$eth_cnt')})
              right: (ArithWord w:{(Lit_Digits 1)})
            )
        )
      update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i))
      body: 
        (DoGroup
          children: [
            (ForExpr
              init: 
                (BinaryAssign
                  op_id: Arith_Equal
                  left: (LhsName name:j)
                  right: 
                    (ArithBinary
                      op_id: Arith_Plus
                      left: (ArithVarRef name:i)
                      right: (ArithWord w:{(Lit_Digits 1)})
                    )
                )
              cond: 
                (ArithBinary
                  op_id: Arith_Less
                  left: (ArithVarRef name:j)
                  right: (ArithWord w:{($ VSub_Name '$eth_cnt')})
                )
              update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:j))
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (C {(Lit_Other '[')} 
                              {
                                (DQ 
                                  (BracedVarSub
                                    token: <VSub_Name list_mac>
                                    bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                                    spids: [355 360]
                                  )
                                )
                              } {(Lit_Other '=')} 
                              {
                                (DQ 
                                  (BracedVarSub
                                    token: <VSub_Name list_mac>
                                    bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$j')}))
                                    spids: [366 371]
                                  )
                                )
                              } {(Lit_Other ']')}
                            )
                          ]
                          action: [
                            (C 
                              {(list_match) (Lit_Other '[') ($ VSub_Name '$i') (Lit_Other ']') 
                                (Lit_Other '=') 
                                (BracedVarSub
                                  token: <VSub_Name list_eth>
                                  bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$j')}))
                                  spids: [385 390]
                                )
                              }
                            )
                            (ControlFlow token:<ControlFlow_Break break>)
                          ]
                          spids: [16777215 377]
                        )
                      ]
                      spids: [16777215 396]
                    )
                  ]
                  spids: [347 399]
                )
            )
          ]
          spids: [319 401]
        )
    )
    (FuncDef
      name: create_eth_cfg_redhat
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:fn)
                  op: Equal
                  rhs: {($ VSub_Name '$cfgdir') (/ifcfg-) ($ VSub_Number '$1')}
                  spids: [413]
                )
              ]
              spids: [411]
            )
            (C {(rm)} {(-f)} {($ VSub_Name '$fn')})
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'DEVICE=') ($ VSub_Number '$1')}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [432]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'TYPE=') (Ethernet)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [441]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'BOOTPROTO=') (none)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [450]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'ONBOOT=') (yes)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [459]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'NM_CONTROLLED=') (no)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [468]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'PEERDNS=') (yes)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [477]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'IPV6INIT=') (yes)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [486]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'MASTER=') ($ VSub_Number '$2')}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [495]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'SLAVE=') (yes)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [504]
                )
              ]
            )
          ]
          spids: [408]
        )
      spids: [404 407]
    )
    (FuncDef
      name: create_eth_cfg_pri_redhat
      body: 
        (BraceGroup
          children: [(C {(create_eth_cfg_redhat)} {($ VSub_Number '$1')} {($ VSub_Number '$2')})]
          spids: [514]
        )
      spids: [510 513]
    )
    (FuncDef
      name: create_bond_cfg_redhat
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:fn)
                  op: Equal
                  rhs: {($ VSub_Name '$cfgdir') (/ifcfg-) ($ VSub_Number '$1')}
                  spids: [535]
                )
              ]
              spids: [533]
            )
            (C {(rm)} {(-f)} {($ VSub_Name '$fn')})
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'DEVICE=') ($ VSub_Number '$1')}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [554]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'TYPE=') (Bond)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [563]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'BOOTPROTO=') (dhcp)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [572]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'ONBOOT=') (yes)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [581]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'NM_CONTROLLED=') (no)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [590]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'PEERDNS=') (yes)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [599]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'IPV6INIT=') (yes)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [608]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'BONDING_MASTER=') (yes)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [617]
                )
              ]
            )
            (SimpleCommand
              words: [
                {(echo)}
                {(Lit_VarLike 'BONDING_OPTS=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (Lit_VarLike 'mode=') (active-backup)
                }
                {(Lit_VarLike 'miimon=') (100)}
                {(Lit_VarLike 'primary=') ($ VSub_Number '$2') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                }
              ]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [635]
                )
              ]
            )
          ]
          spids: [530]
        )
      spids: [526 529]
    )
    (FuncDef
      name: create_eth_cfg_ubuntu
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:fn)
                  op: Equal
                  rhs: {($ VSub_Name '$cfgdir') (/interfaces)}
                  spids: [650]
                )
              ]
              spids: [648]
            )
            (SimpleCommand
              words: [
                {(echo)}
                {
                  (SingleQuotedPart
                    left: <Left_DollarSingleQuote "$'">
                    tokens: [<Char_OneChar '\\n'>]
                  ) (auto)
                }
                {($ VSub_Number '$1')}
              ]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [665]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(iface)} {($ VSub_Number '$1')} {(inet)} {(manual)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [679]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(bond-master)} {($ VSub_Number '$2')}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [689]
                )
              ]
            )
          ]
          spids: [645]
        )
      spids: [641 644]
    )
    (FuncDef
      name: create_eth_cfg_pri_ubuntu
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:fn)
                  op: Equal
                  rhs: {($ VSub_Name '$cfgdir') (/interfaces)}
                  spids: [704]
                )
              ]
              spids: [702]
            )
            (C {(create_eth_cfg_ubuntu)} {($ VSub_Number '$1')} {($ VSub_Number '$2')})
            (SimpleCommand
              words: [{(echo)} {(bond-primary)} {($ VSub_Number '$1')}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [723]
                )
              ]
            )
          ]
          spids: [699]
        )
      spids: [695 698]
    )
    (FuncDef
      name: create_bond_cfg_ubuntu
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:fn)
                  op: Equal
                  rhs: {($ VSub_Name '$cfgdir') (/interfaces)}
                  spids: [738]
                )
              ]
              spids: [736]
            )
            (SimpleCommand
              words: [
                {(echo)}
                {
                  (SingleQuotedPart
                    left: <Left_DollarSingleQuote "$'">
                    tokens: [<Char_OneChar '\\n'>]
                  ) (auto)
                }
                {($ VSub_Number '$1')}
              ]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [753]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(iface)} {($ VSub_Number '$1')} {(inet)} {(dhcp)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [767]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(bond-mode)} {(active-backup)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [777]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(bond-miimon)} {(100)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [787]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(bond-slaves)} {(none)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [797]
                )
              ]
            )
          ]
          spids: [733]
        )
      spids: [729 732]
    )
    (FuncDef
      name: create_eth_cfg_suse
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:fn)
                  op: Equal
                  rhs: {($ VSub_Name '$cfgdir') (/ifcfg-) ($ VSub_Number '$1')}
                  spids: [812]
                )
              ]
              spids: [810]
            )
            (C {(rm)} {(-f)} {($ VSub_Name '$fn')})
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'BOOTPROTO=') (none)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [831]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'STARTMODE=') (auto)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [840]
                )
              ]
            )
          ]
          spids: [807]
        )
      spids: [803 806]
    )
    (FuncDef
      name: create_eth_cfg_pri_suse
      body: (BraceGroup children:[(C {(create_eth_cfg_suse)} {($ VSub_Number '$1')})] spids:[850])
      spids: [846 849]
    )
    (FuncDef
      name: create_bond_cfg_suse
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:fn)
                  op: Equal
                  rhs: {($ VSub_Name '$cfgdir') (/ifcfg-) ($ VSub_Number '$1')}
                  spids: [869]
                )
              ]
              spids: [867]
            )
            (C {(rm)} {(-f)} {($ VSub_Name '$fn')})
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'BOOTPROTO=') (dhcp)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [888]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'STARTMODE=') (auto)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [897]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'BONDING_MASTER=') (yes)}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [906]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'BONDING_SLAVE_0=') ($ VSub_Number '$2')}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [915]
                )
              ]
            )
            (SimpleCommand
              words: [{(echo)} {(Lit_VarLike 'BONDING_SLAVE_1=') ($ VSub_Number '$3')}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [924]
                )
              ]
            )
            (SimpleCommand
              words: [
                {(echo)}
                {(Lit_VarLike 'BONDING_MODULE_OPTS=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (Lit_VarLike 'mode=') (active-backup)
                }
                {(Lit_VarLike 'miimon=') (100)}
                {(Lit_VarLike 'primary=') ($ VSub_Number '$2') 
                  (EscapedLiteralPart token:<Lit_EscapedChar "\\'">)
                }
              ]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$fn')}
                  spids: [942]
                )
              ]
            )
          ]
          spids: [864]
        )
      spids: [860 863]
    )
    (FuncDef
      name: create_bond
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:bondname)
                  op: Equal
                  rhs: {(bond) ($ VSub_Name '$bondcnt')}
                  spids: [957]
                )
              ]
              spids: [955]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:primary) op:Equal spids:[964])]
              spids: [962]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:secondary) op:Equal spids:[969])]
              spids: [967]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:class_id1)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (SimpleCommand
                                words: [
                                  {(cat)}
                                  {($ VSub_Name '$sysdir') (/) ($ VSub_Number '$1') (/device/class_id)}
                                ]
                                redirects: [
                                  (Redir
                                    op_id: Redir_Great
                                    fd: 2
                                    arg_word: {(/dev/null)}
                                    spids: [984]
                                  )
                                ]
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [976 986]
                      )
                    }
                  spids: [975]
                )
              ]
              spids: [973]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:class_id2)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (SimpleCommand
                                words: [
                                  {(cat)}
                                  {($ VSub_Name '$sysdir') (/) ($ VSub_Number '$2') (/device/class_id)}
                                ]
                                redirects: [
                                  (Redir
                                    op_id: Redir_Great
                                    fd: 2
                                    arg_word: {(/dev/null)}
                                    spids: [1000]
                                  )
                                ]
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [992 1002]
                      )
                    }
                  spids: [991]
                )
              ]
              spids: [989]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$class_id1'))} {(Lit_Other '=')} 
                      {(DQ ($ VSub_Name '$netvsc_cls'))} {(Lit_Other ']')}
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:primary)
                          op: Equal
                          rhs: {($ VSub_Number '$2')}
                          spids: [1026]
                        )
                      ]
                      spids: [1026]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:secondary)
                          op: Equal
                          rhs: {($ VSub_Number '$1')}
                          spids: [1030]
                        )
                      ]
                      spids: [1030]
                    )
                  ]
                  spids: [16777215 1023]
                )
                (if_arm
                  cond: [
                    (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$class_id2'))} {(Lit_Other '=')} 
                      {(DQ ($ VSub_Name '$netvsc_cls'))} {(Lit_Other ']')}
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:primary)
                          op: Equal
                          rhs: {($ VSub_Number '$1')}
                          spids: [1054]
                        )
                      ]
                      spids: [1054]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:secondary)
                          op: Equal
                          rhs: {($ VSub_Number '$2')}
                          spids: [1058]
                        )
                      ]
                      spids: [1058]
                    )
                  ]
                  spids: [1034 1051]
                )
              ]
              else_action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})]
              spids: [1062 1070]
            )
            (C {(echo)} 
              {
                (SingleQuotedPart
                  left: <Left_DollarSingleQuote "$'">
                  tokens: [<Char_OneChar '\\n'> <Char_Literals 'Bond name:'>]
                )
              } {($ VSub_Name '$bondname')}
            )
            (C {(echo)} {(configuring)} {($ VSub_Name '$primary')})
            (C {(create_eth_cfg_pri_) ($ VSub_Name '$distro')} {($ VSub_Name '$primary')} 
              {($ VSub_Name '$bondname')}
            )
            (C {(echo)} {(configuring)} {($ VSub_Name '$secondary')})
            (C {(create_eth_cfg_) ($ VSub_Name '$distro')} {($ VSub_Name '$secondary')} 
              {($ VSub_Name '$bondname')}
            )
            (C {(echo)} {(creating) (Lit_Other ':')} {($ VSub_Name '$bondname')} {(with)} {(primary)} 
              {(slave) (Lit_Other ':')} {($ VSub_Name '$primary')}
            )
            (C {(create_bond_cfg_) ($ VSub_Name '$distro')} {($ VSub_Name '$bondname')} 
              {($ VSub_Name '$primary')} {($ VSub_Name '$secondary')}
            )
            (C {(let)} {(Lit_VarLike 'bondcnt=') (bondcnt) (Lit_Other '+') (1)})
          ]
          spids: [952]
        )
      spids: [948 951]
    )
    (ForExpr
      init: (BinaryAssign op_id:Arith_Equal left:(LhsName name:i) right:(ArithWord w:{(Lit_Digits 0)}))
      cond: 
        (ArithBinary
          op_id: Arith_Less
          left: (ArithVarRef name:i)
          right: 
            (ArithBinary
              op_id: Arith_Minus
              left: (ArithWord w:{($ VSub_Name '$eth_cnt')})
              right: (ArithWord w:{(Lit_Digits 1)})
            )
        )
      update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i))
      body: 
        (DoGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (C {(Lit_Other '[')} {(-n)} 
                      {
                        (DQ 
                          (BracedVarSub
                            token: <VSub_Name list_match>
                            bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                            spids: [1189 1194]
                          )
                        )
                      } {(Lit_Other ']')}
                    )
                  ]
                  action: [
                    (C {(create_bond)} 
                      {
                        (BracedVarSub
                          token: <VSub_Name list_eth>
                          bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                          spids: [1205 1210]
                        )
                      } 
                      {
                        (BracedVarSub
                          token: <VSub_Name list_match>
                          bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')}))
                          spids: [1212 1217]
                        )
                      }
                    )
                  ]
                  spids: [16777215 1200]
                )
              ]
              spids: [16777215 1220]
            )
          ]
          spids: [1179 1222]
        )
    )
  ]
)