(CommandList children: [ (C {(Lit_Other ":")} { (BracedVarSub token: <VSub_Name BAZELRC> suffix_op: (StringUnary op_id:VTest_ColonEquals arg_word:{(DQ (/dev/null))}) spids: [62 68] ) } ) (C {(Lit_Other ":")} { (BracedVarSub token: <VSub_Name EMBED_LABEL> suffix_op: (StringUnary op_id:VTest_ColonEquals arg_word:{(DQ )}) spids: [72 77] ) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:EMBED_LABEL_ARG) op: Equal rhs: {(ArrayLiteralPart)} spids: [80] ) ] spids: [80] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(-n)} {(DQ (${ VSub_Name EMBED_LABEL))} {(Lit_Other "]")}) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:EMBED_LABEL_ARG) op: Equal rhs: { (ArrayLiteralPart words: [{(--stamp)} {(--embed_label)} {(DQ (${ VSub_Name EMBED_LABEL))}] ) } spids: [102] ) ] spids: [102] ) ] spids: [-1 99] ) ] spids: [-1 115] ) (C {(Lit_Other ":")} { (BracedVarSub token: <VSub_Name JAVA_VERSION> suffix_op: (StringUnary op_id:VTest_ColonEquals arg_word:{(DQ (1.8))}) spids: [120 126] ) } ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name JAVA_VERSION))} {(Lit_Other "=")} {(DQ (1.7))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (C {(Lit_Other ":")} { (BracedVarSub token: <VSub_Name BAZEL_ARGS> suffix_op: (StringUnary op_id: VTest_ColonEquals arg_word: {("--java_toolchain=") (Lit_Slash /) (Lit_Slash /) (src) (Lit_Slash /) (java_tools) (Lit_Slash /) ("buildjar:bootstrap_toolchain_jdk7 ") (" --host_java_toolchain=") (Lit_Slash /) (Lit_Slash /) (src) (Lit_Slash /) (java_tools) (Lit_Slash /) ("buildjar:bootstrap_toolchain_jdk7 ") (" --define JAVA_VERSION=1.7 --ignore_unsupported_sandboxing ") (" --compilation_mode=opt ") (" ") (DQ (BracedVarSub token: <VSub_Name EXTRA_BAZEL_ARGS> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )}) spids: [180 183] ) ) } ) spids: [153 185] ) } ) ] spids: [-1 148] ) ] else_action: [ (C {(Lit_Other ":")} { (BracedVarSub token: <VSub_Name BAZEL_ARGS> suffix_op: (StringUnary op_id: VTest_ColonEquals arg_word: {("--java_toolchain=") (Lit_Slash /) (Lit_Slash /) (src) (Lit_Slash /) (java_tools) (Lit_Slash /) ("buildjar:bootstrap_toolchain ") (" --host_java_toolchain=") (Lit_Slash /) (Lit_Slash /) (src) (Lit_Slash /) (java_tools) (Lit_Slash /) ("buildjar:bootstrap_toolchain ") ( " --strategy=Javac=worker --worker_quit_after_build --ignore_unsupported_sandboxing " ) (" --compilation_mode=opt ") (" ") (DQ (BracedVarSub token: <VSub_Name EXTRA_BAZEL_ARGS> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )}) spids: [219 222] ) ) } ) spids: [192 224] ) } ) ] spids: [187 226] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(-z)} { (DQ (BracedVarSub token: <VSub_Name BAZEL> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )}) spids: [236 239] ) ) } {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (FuncDef name: run_bootstrapping_bazel body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:command) op: Equal rhs: {($ VSub_Number "$1")} spids: [259] ) ] spids: [257] ) (C {(shift)}) (C {(run_bazel_jar)} {($ VSub_Name "$command")} { (BracedVarSub token: <VSub_Name BAZEL_ARGS> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{}) spids: [272 275] ) } {(--verbose_failures)} {(--javacopt) (Lit_Other "=") (DQ ("-g -source ") (${ VSub_Name JAVA_VERSION) (" -target ") (${ VSub_Name JAVA_VERSION) ) } {(DQ (${ VSub_At "@"))} ) ] spids: [254] ) spids: [248 253] ) ] spids: [-1 245] ) ] else_action: [ (FuncDef name: run_bootstrapping_bazel body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:command) op: Equal rhs: {($ VSub_Number "$1")} spids: [317] ) ] spids: [315] ) (C {(shift)}) (C {(${ VSub_Name BAZEL)} {(--bazelrc) (Lit_Other "=") (${ VSub_Name BAZELRC)} {(${ VSub_Name BAZEL_DIR_STARTUP_OPTIONS)} {($ VSub_Name "$command")} { (BracedVarSub token: <VSub_Name BAZEL_ARGS> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{}) spids: [342 345] ) } {(--verbose_failures)} {(--javacopt) (Lit_Other "=") (DQ ("-g -source ") (${ VSub_Name JAVA_VERSION) (" -target ") (${ VSub_Name JAVA_VERSION) ) } {(DQ (${ VSub_At "@"))} ) ] spids: [312] ) spids: [306 311] ) ] spids: [303 373] ) (FuncDef name: bazel_build body: (BraceGroup children: [ (C {(run_bootstrapping_bazel)} {(build)} { (DQ (BracedVarSub token: <VSub_Name EMBED_LABEL_ARG> bracket_op: (WholeArray op_id:Lit_At) spids: [390 395] ) ) } {(DQ ($ VSub_At "$@"))} ) ] spids: [382] ) spids: [376 381] ) (FuncDef name: get_bazel_bin_path body: (BraceGroup children: [ (AndOr children: [ (C {(run_bootstrapping_bazel)} {(info)} {(DQ (bazel-bin))}) (C {(echo)} {(DQ (bazel-bin))}) ] op_id: Op_DPipe ) ] spids: [411] ) spids: [405 410] ) (FuncDef name: md5_outputs body: (BraceGroup children: [ (AndOr children: [ (C {(Lit_Other "[")} {(-n)} { (DQ (BracedVarSub token: <VSub_Name BAZEL_TEST_XTRACE> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )}) spids: [447 450] ) ) } {(Lit_Other "]")} ) (C {(set)} {(Lit_Other "+") (x)}) ] op_id: Op_DAmp ) (ForEach iter_name: i iter_words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(find)} {(bazel-bin/)} {(-type)} {(f)} {(-a)} {(EscapedLiteralPart token:<Lit_EscapedChar "\\!">)} {(-name)} {(MANIFEST)} {(-a)} {(EscapedLiteralPart token:<Lit_EscapedChar "\\!">)} {(-name)} {(SQ <"*.runfiles_manifest">)} {(-a)} {(EscapedLiteralPart token:<Lit_EscapedChar "\\!">)} {(-name)} {(SQ <"*.a">)} ) ] ) left_token: <Left_CommandSub "$("> spids: [480 516] ) } ] do_arg_iter: False body: (DoGroup children:[(C {(md5_file)} {($ VSub_Name "$i")})] spids:[519527]) spids: [479 517] ) (ForEach iter_name: i iter_words: [ { (CommandSubPart command_list: (CommandList children: [(C {(find)} {(bazel-genfiles/)} {(-type)} {(f)})] ) left_token: <Left_CommandSub "$("> spids: [536 544] ) } ] do_arg_iter: False body: (DoGroup children:[(C {(md5_file)} {($ VSub_Name "$i")})] spids:[547555]) spids: [535 545] ) (AndOr children: [ (C {(Lit_Other "[")} {(-n)} { (DQ (BracedVarSub token: <VSub_Name BAZEL_TEST_XTRACE> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )}) spids: [563 566] ) ) } {(Lit_Other "]")} ) (C {(set)} {(-x)}) ] op_id: Op_DAmp ) ] spids: [439] ) spids: [433 438] ) (FuncDef name: get_outputs_sum body: (BraceGroup children: [(Pipeline children:[(C {(md5_outputs)})(C {(sort)} {(-k)} {(2)})] negated:False)] spids: [586] ) spids: [580 585] ) (FuncDef name: bootstrap_test body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:BAZEL_BIN) op: Equal rhs: {($ VSub_Number "$1")} spids: [613] ) ] spids: [611] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:BAZEL_SUM) op: Equal rhs: {($ VSub_Number "$2")} spids: [619] ) ] spids: [617] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:BAZEL_TARGET) op: Equal rhs: { (BracedVarSub token: <VSub_Number 3> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{("src:bazel")}) spids: [626 630] ) } spids: [625] ) ] spids: [623] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:STRATEGY) op: Equal rhs: {(DQ ("--strategy=Javac=worker --worker_quit_after_build"))} spids: [635] ) ] spids: [633] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name JAVA_VERSION))} {(Lit_Other "=")} {(DQ (1.7))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:STRATEGY) op: Equal rhs: {(SQ )} spids: [663] ) ] spids: [663] ) ] spids: [-1 660] ) ] spids: [-1 666] ) (AndOr children: [ (C {(Lit_Other "[")} {(-x)} {(DQ (${ VSub_Name BAZEL_BIN))} {(Lit_Other "]")}) (C {(fail)} {(DQ ("syntax: bootstrap bazel-binary"))}) ] op_id: Op_DPipe ) (AndOr children: [ (C {(run)} {(${ VSub_Name BAZEL_BIN)} {(--nomaster_bazelrc)} {(--bazelrc) (Lit_Other "=") (${ VSub_Name BAZELRC)} {(${ VSub_Name BAZEL_DIR_STARTUP_OPTIONS)} {(clean)} {(--expunge)} ) (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_QMark "$?")} ) ] op_id: Op_DPipe ) (AndOr children: [ (C {(run)} {(${ VSub_Name BAZEL_BIN)} {(--nomaster_bazelrc)} {(--bazelrc) (Lit_Other "=") (${ VSub_Name BAZELRC)} {(${ VSub_Name BAZEL_DIR_STARTUP_OPTIONS)} {(build)} { (BracedVarSub token: <VSub_Name EXTRA_BAZEL_ARGS> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{}) spids: [751 754] ) } {(${ VSub_Name STRATEGY)} {(--fetch)} {(--nostamp)} {(--define)} {(DQ ("JAVA_VERSION=") (${ VSub_Name JAVA_VERSION))} {(--javacopt) (Lit_Other "=") (DQ ("-g -source ") (${ VSub_Name JAVA_VERSION) (" -target ") (${ VSub_Name JAVA_VERSION) ) } {(${ VSub_Name BAZEL_TARGET)} ) (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_QMark "$?")} ) ] op_id: Op_DPipe ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(-n)} {(DQ (${ VSub_Name BAZEL_SUM))} {(Lit_Other "]")}) terminator: <Op_Semi ";"> ) ] action: [ (SimpleCommand words: [{(cat)} {(bazel-genfiles/src/java.version)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(${ VSub_Name BAZEL_SUM)} spids: [827] ) ] ) (AndOr children: [ (SimpleCommand words: [{(get_outputs_sum)}] redirects: [ (Redir op_id: Redir_DGreat fd: -1 arg_word: {(${ VSub_Name BAZEL_SUM)} spids: [835] ) ] ) (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_QMark "$?")} ) ] op_id: Op_DPipe ) ] spids: [-1 820] ) ] spids: [-1 848] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(-z)} { (DQ (BracedVarSub token: <VSub_Name BOOTSTRAP> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )}) spids: [858 861] ) ) } {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (C {(tempdir)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BOOTSTRAP) op: Equal rhs: {(${ VSub_Name NEW_TMPDIR) (/bazel)} spids: [873] ) ] spids: [873] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:FILE) op: Equal rhs: {(bazel-bin/) (BracedVarSub token: <VSub_Name BAZEL_TARGET> suffix_op: (StringUnary op_id: VOp1_DPound arg_word: {(Lit_Slash /) (Lit_Slash /)} ) spids: [884 889] ) } spids: [882] ) ] spids: [880] ) (C {(cp)} {(-f)} { (BracedVarSub token: <VSub_Name FILE> suffix_op: (PatSub pat: {(":")} replace: {(EscapedLiteralPart token:<Lit_EscapedChar "\\/">)} do_all: False do_prefix: False do_suffix: False ) spids: [896 902] ) } {($ VSub_Name "$BOOTSTRAP")} ) (C {(chmod)} {(Lit_Other "+") (x)} {($ VSub_Name "$BOOTSTRAP")}) ] spids: [-1 867] ) ] spids: [-1 915] ) ] spids: [608] ) spids: [602 607] ) ] )