(command.CommandList children: [ (C {<Id.KW_Set set>} {<-eu>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT) op: assign_op.Equal rhs: {(DQ (${ Id.VSub_Name PWD) <'/'> ($ Id.VSub_Number '$1'))} spids: [59] ) ] ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TMP_DIR) op: assign_op.Equal rhs: { (braced_var_sub token: <Id.VSub_Name TMPDIR> suffix_op: (suffix_op.Unary op_id: Id.VTest_ColonHyphen arg_word: {<Id.Lit_Slash '/'> <tmp>} ) ) } spids: [71] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PACKAGE_DIR) op: assign_op.Equal rhs: { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<mktemp>} {<-d>} { (braced_var_sub token: <Id.VSub_Name TMP_DIR> suffix_op: (suffix_op.Unary op_id: Id.VOp1_DPercent arg_word: {<Id.Lit_Slash '/'>} ) ) <'/bazel.XXXXXXXX'> } ) ) ) } spids: [79] ) ] ) (C {<mkdir>} {<-p>} {(DQ (${ Id.VSub_Name PACKAGE_DIR))}) (C {<trap>} { (DQ <'rm -fr '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (${ Id.VSub_Name PACKAGE_DIR) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } {<EXIT>} ) (command.ForEach iter_name: i iter_words: [{($ Id.VSub_Star '$*')}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: [ (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$i'))} {<Id.Lit_Equals '='>} {(DQ <'tools/objc/xcrunwrapper.sh'>)} {<Id.Lit_RBracket ']'>} ) (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$i'))} {<Id.Lit_Equals '='>} {(DQ <'tools/objc/libtool.sh'>)} {<Id.Lit_RBracket ']'>} ) (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$i'))} {<Id.Lit_Equals '='>} {(DQ <'tools/objc/make_hashed_objlist.py'>)} {<Id.Lit_RBracket ']'>} ) ] ) ] action: [(command.ControlFlow token:<Id.ControlFlow_Continue continue>)] spids: [140 193] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$i'))} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <'tools/jdk/BUILD'> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/jdk/BUILD'>} spids: [217] ) ] ) ] spids: [212 215 220 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <JavaBuilder> <Id.Lit_Star '*'> <_deploy.jar>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/jdk/JavaBuilder_deploy.jar'>} spids: [229] ) ] ) ] spids: [223 227 232 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <turbine_deploy.jar>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/jdk/turbine_deploy.jar'>} spids: [239] ) ] ) ] spids: [235 237 242 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <javac.jar>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'third_party/java/jdk/langtools/javac.jar'>} spids: [249] ) ] ) ] spids: [245 247 252 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <javac7.jar>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'third_party/java/jdk/langtools/javac7.jar'>} spids: [259] ) ] ) ] spids: [255 257 262 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <SingleJar_deploy.jar>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/jdk/SingleJar_deploy.jar'>} spids: [269] ) ] ) ] spids: [265 267 272 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <GenClass_deploy.jar>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/jdk/GenClass_deploy.jar'>} spids: [279] ) ] ) ] spids: [275 277 282 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <Runner_deploy.jar>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/jdk/TestRunner_deploy.jar'>} spids: [289] ) ] ) ] spids: [285 287 292 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <ijar.exe>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/jdk/ijar/ijar.exe'>} spids: [299] ) ] ) ] spids: [295 297 302 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <ijar>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/jdk/ijar/ijar'>} spids: [309] ) ] ) ] spids: [305 307 312 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <zipper.exe>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/zip/zipper/zipper.exe'>} spids: [319] ) ] ) ] spids: [315 317 322 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <zipper>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/zip/zipper/zipper'>} spids: [329] ) ] ) ] spids: [325 327 332 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <'src/objc_tools/'> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/objc/precomp_'> (braced_var_sub token: <Id.VSub_Name i> suffix_op: (suffix_op.Unary op_id: Id.VOp1_DPound arg_word: {<'*'> <Id.Lit_Slash '/'>} ) ) } spids: [340] ) ] ) ] spids: [335 338 349 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <xcode> <Id.Lit_Star '*'> <StdRedirect.dylib>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/objc/StdRedirect.dylib'>} spids: [358] ) ] ) ] spids: [352 356 361 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <xcode> <Id.Lit_Star '*'> <make_hashed_objlist.py>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/objc/make_hashed_objlist.py'>} spids: [370] ) ] ) ] spids: [364 368 373 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <xcode> <Id.Lit_Star '*'> <realpath>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/objc/realpath'>} spids: [382] ) ] ) ] spids: [376 380 385 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <xcode> <Id.Lit_Star '*'> <xcode-locator>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/objc/xcode-locator'>} spids: [394] ) ] ) ] spids: [388 392 397 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <'src/tools/xcode/'> <Id.Lit_Star '*'> <.sh>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/objc/'> (braced_var_sub token: <Id.VSub_Name i> suffix_op: (suffix_op.Unary op_id: Id.VOp1_DPound arg_word: {<'*'> <Id.Lit_Slash '/'>} ) ) } spids: [406] ) ] ) ] spids: [400 404 415 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <'src/tools/xcode/'> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: {<'tools/objc/'> (braced_var_sub token: <Id.VSub_Name i> suffix_op: (suffix_op.Unary op_id: Id.VOp1_DPound arg_word: {<'*'> <Id.Lit_Slash '/'>} ) ) <.sh> } spids: [423] ) ] ) ] spids: [418 421 433 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_PATH) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (C {<echo>} {($ Id.VSub_DollarName '$i')}) (C {<sed>} {(SQ <'s_^.*bazel-out/[^/]*/bin/__'>)}) ] negated: F ) ) } spids: [439] ) ] ) ] spids: [436 437 454 -1] ) ] ) (C {<mkdir>} {<-p>} { (DQ (${ Id.VSub_Name PACKAGE_DIR) <'/'> (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<dirname>} {(DQ (${ Id.VSub_Name OUTPUT_PATH))}) ) ) } ) (C {<cp>} {(DQ ($ Id.VSub_DollarName '$i'))} {(DQ (${ Id.VSub_Name PACKAGE_DIR) <'/'> (${ Id.VSub_Name OUTPUT_PATH))} ) ] ) ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} {<-f>} {(${ Id.VSub_Name PACKAGE_DIR) <'/third_party/java/jdk/langtools/javac.jar'>} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] action: [ (C {<cp>} {(${ Id.VSub_Name PACKAGE_DIR) <'/third_party/java/jdk/langtools/javac7.jar'>} {(${ Id.VSub_Name PACKAGE_DIR) <'/third_party/java/jdk/langtools/javac.jar'>} ) ] spids: [501 517] ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ (${ Id.VSub_Name PACKAGE_DIR) <'/WORKSPACE'>)} ) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.MultiLine here_begin: {<EOF>} here_end_span_id: 557 stdin_parts: [ <'workspace(name = '> <Id.Right_DoubleQuote '"'> <bazel_tools> <Id.Right_DoubleQuote '"'> <')\n'> ] ) ) ] do_fork: T ) (C {<mkdir>} {<-p>} {(DQ (${ Id.VSub_Name PACKAGE_DIR) <'/tools/defaults'>)}) (C {<touch>} {(DQ (${ Id.VSub_Name PACKAGE_DIR) <'/tools/defaults/BUILD'>)}) (command.ForEach iter_name: i iter_words: [ { (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<find>} {(DQ (${ Id.VSub_Name PACKAGE_DIR))} {<-name>} {<BUILD.tools>}) ) } ] do_arg_iter: F body: (command.DoGroup children: [ (C {<mv>} {(DQ ($ Id.VSub_DollarName '$i'))} { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<dirname>} {(DQ ($ Id.VSub_DollarName '$i'))}) ) <'/BUILD'> ) } ) ] ) ) (C {<find>} {(DQ (${ Id.VSub_Name PACKAGE_DIR))} {<-exec>} {<touch>} {<-t>} {<198001010000.00>} {(SQ <'{}'>)} {(SQ <'+'>)} ) (command.Subshell child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<cd>} {(DQ (${ Id.VSub_Name PACKAGE_DIR))}) (command.Pipeline children: [ (C {<find>} {<.>} {<-type>} {<f>}) (C {<sort>}) (C {<zip>} {<-qDX> <Id.Lit_Other '@'>} {(DQ (${ Id.VSub_Name OUTPUT))}) ] negated: F ) ] ) ) ] )