(List (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS errexit]} ) (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS nounset]} ) (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS pipefail]} ) (= scope= flags=0 words=[] bindings=[('KUBE_ROOT', {[ComSub (Com {[LIT_CHARS dirname]} {[DQ [VarSub BASH_SOURCE]]})] [LIT_CHARS /..]})]) (Com {[LIT_CHARS cd]} {[DQ [VarSub KUBE_ROOT]]} ) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS 0]})]) (FunctionDef find_files [] (Com {[LIT_CHARS find]} {[LIT_CHARS .]} {[LIT_CHARS -not]} {[\ LIT_ESCAPED_CHAR "\\("]} {[\ LIT_ESCAPED_CHAR "\\("]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[\ LIT_ESCAPED_CHAR "\\)"]} {[LIT_CHARS -prune]} {[\ LIT_ESCAPED_CHAR "\\)"]} {[LIT_CHARS -name]} {[SQ ]} ) ) (Pipeline (Com {[LIT_CHARS find_files]} ) (Com {[LIT_CHARS egrep]} {[DQ [LIT_CHARS "pkg/api/v.[^/]*/types"][\ LIT_ESCAPED_CHAR "\\."][LIT_CHARS go]]} ) (Com {[LIT_CHARS grep]} {[LIT_CHARS -v]} {[LIT_CHARS v1beta3]} ) (While (Com {[LIT_CHARS read]} {[LIT_CHARS file]} ) (If (DBracket {B2 BINARY_INT_EQ {[DQ [ComSub (Com {[DQ [VarSub KUBE_ROOT][LIT_CHARS /hooks/description.sh]]} {[DQ [VarSub file]]})]]} {[DQ [LIT_CHARS 0]]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "API file is missing the required field descriptions: "][VarSub file]]} ) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS 1]})]) ) ) ) ) (Com {[LIT_CHARS exit]} {[VarSub result]} ) )