(CommandList
  children: [
    (C {(set)} {(-o)} {(errexit)})
    (C {(set)} {(-o)} {(nounset)})
    (C {(set)} {(-o)} {(pipefail)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:KUBE_ROOT)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [(C {(dirname)} {(DQ (${ VSub_Name BASH_SOURCE))})]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [74 82]
              ) (/..)
            }
          spids: [73]
        )
      ]
      spids: [73]
    )
    (C {(source)} {(DQ (${ VSub_Name KUBE_ROOT) (/hack/lib/init.sh))})
    (C {(source)} {(DQ (${ VSub_Name KUBE_ROOT) (/hack/lib/swagger.sh))})
    (C {(kube) (Lit_Other ':') (Lit_Other ':') (golang) (Lit_Other ':') (Lit_Other ':') (setup_env)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:GROUP_VERSIONS)
          op: Equal
          rhs: {(ArrayLiteralPart words:[{(federation/v1beta1)}])}
          spids: [113]
        )
      ]
      spids: [113]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:GV_DIRS) op:Equal rhs:{(ArrayLiteralPart)} spids:[118])]
      spids: [118]
    )
    (ForEach
      iter_name: gv
      iter_words: [
        {
          (DQ 
            (BracedVarSub
              token: <VSub_Name GROUP_VERSIONS>
              bracket_op: (WholeArray op_id:Lit_At)
              spids: [129 134]
            )
          )
        }
      ]
      do_arg_iter: F
      body: 
        (DoGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:GV_DIRS)
                  op: PlusEqual
                  rhs: 
                    {
                      (ArrayLiteralPart
                        words: [
                          {
                            (DQ 
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (C 
                                        {(kube) (Lit_Other ':') (Lit_Other ':') (util) (Lit_Other ':') 
                                          (Lit_Other ':') (group-version-to-pkg-path)
                                        } {(DQ (${ VSub_Name gv))}
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [144 158]
                              )
                            )
                          }
                        ]
                      )
                    }
                  spids: [141]
                )
              ]
              spids: [141]
            )
          ]
          spids: [138 162]
        )
      spids: [127 136]
    )
    (ForEach
      iter_name: gv_dir
      iter_words: [
        {
          (DQ 
            (BracedVarSub
              token: <VSub_Name GV_DIRS>
              bracket_op: (WholeArray op_id:Lit_At)
              spids: [175 180]
            )
          )
        }
      ]
      do_arg_iter: F
      body: 
        (DoGroup
          children: [(C {(rm)} {(-f)} {(DQ (${ VSub_Name gv_dir) (/types_swagger_doc_generated.go))})]
          spids: [184 198]
        )
      spids: [173 182]
    )
    (ForEach
      iter_name: i
      iter_words: [
        {
          (DQ 
            (BracedVarSub
              token: <VSub_Name GROUP_VERSIONS>
              prefix_op: VSub_Bang
              bracket_op: (WholeArray op_id:Lit_At)
              spids: [207 213]
            )
          )
        }
      ]
      do_arg_iter: F
      body: 
        (DoGroup
          children: [
            (C 
              {(kube) (Lit_Other ':') (Lit_Other ':') (swagger) (Lit_Other ':') (Lit_Other ':') 
                (gen_types_swagger_doc)
              } 
              {
                (DQ 
                  (BracedVarSub
                    token: <VSub_Name GROUP_VERSIONS>
                    bracket_op: (ArrayIndex expr:(ArithVarRef name:i))
                    spids: [229 234]
                  )
                )
              } 
              {
                (DQ 
                  (BracedVarSub
                    token: <VSub_Name GV_DIRS>
                    bracket_op: (ArrayIndex expr:(ArithVarRef name:i))
                    spids: [238 243]
                  )
                )
              }
            )
          ]
          spids: [217 246]
        )
      spids: [205 215]
    )
  ]
)