(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: [64 72] ) (/../..) } spids: [63] ) ] spids: [63] ) (C {(source)} {(DQ (${ VSub_Name KUBE_ROOT) (/hack/lib/util.sh))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CLEAN_PATTERNS) op: Equal rhs: { (ArrayLiteralPart words: [ {(DQ (_tmp))} {(DQ (doc_tmp))} {(DQ (".*/zz_generated.openapi.go"))} {(DQ (test/e2e/generated/bindata.go))} ] ) } spids: [85] ) ] spids: [85] ) (ForEach iter_name: pattern iter_words: [ { (BracedVarSub token: <VSub_Name CLEAN_PATTERNS> bracket_op: (WholeArray op_id:Lit_At) spids: [117 122] ) } ] do_arg_iter: False body: (DoGroup children: [ (ForEach iter_name: match iter_words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(find)} {(DQ (${ VSub_Name KUBE_ROOT))} {(-iregex)} { (DQ ("^") (${ VSub_Name KUBE_ROOT) (/) (${ VSub_Name pattern) (Lit_Other "$") ) } ) ] ) left_token: <Left_CommandSub "$("> spids: [134 156] ) } ] do_arg_iter: False body: (DoGroup children: [ (C {(echo)} { (DQ ("Removing ") (BracedVarSub token: <VSub_Name match> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {(${ VSub_Name KUBE_ROOT) (EscapedLiteralPart token: <Lit_EscapedChar "\\/"> ) } ) spids: [166 173] ) (" ..") ) } ) (C {(rm)} {(-rf)} { (DQ (BracedVarSub token: <VSub_Name match> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {(${ VSub_Name KUBE_ROOT) (EscapedLiteralPart token: <Lit_EscapedChar "\\/"> ) } ) spids: [183 190] ) ) } ) ] spids: [159 194] ) spids: [133 157] ) ] spids: [125 196] ) spids: [116 123] ) ] )