(CommandList children: [ (AndOr children: [ (C {(Lit_Other "[")} { (BracedVarSub token: <VSub_Name VARIABLES_ARRAYLIST_SH> suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(true)}) spids: [9 13] ) } {(Lit_Other "]")} ) (ControlFlow token:<ControlFlow_Return return>) ] op_id: Op_DAmp ) (Assignment keyword: Assign_Declare flags: ["'-g'"] pairs: [ (assign_pair lhs: (LhsName name:VARIABLES_ARRAYLIST_SH) op: Equal rhs: {(true)} spids: [25] ) ] spids: [21] ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ("*")}) spids: [31 36] ) (/common.sh) } ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ("*")}) spids: [41 46] ) (/logger.sh) } ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ("*")}) spids: [51 56] ) (/variables.sh) } ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ("*")}) spids: [61 66] ) (/variables.atom.sh) } ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (type) (Lit_Other ":") (Lit_Other ":") (define)} {(ArrayList)} ) (FuncDef name: "variable::ArrayList::new" body: (BraceGroup children: [ (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(ArrayList)} {(DQ (${ VSub_At "@"))}) ] spids: [106] ) spids: [94 105] ) (FuncDef name: "variable::ArrayList::append" body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name VARIABLES_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ("variable::ArrayList::append ") (${ VSub_At "@"))}) terminator: <Op_Semi ";"> ) ] spids: [-1 155] ) ] spids: [-1 168] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:list_token) op: Equal rhs: {($ VSub_Number "$1")} spids: [173] ) ] spids: [171] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:value_token) op: Equal rhs: {($ VSub_Number "$2")} spids: [179] ) ] spids: [177] ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (type) (Lit_Other ":") (Lit_Other ":") (instanceOfOrExit) } {(DQ (${ VSub_Name list_token))} {(ArrayList)} ) (Assignment keyword: Assign_Declare flags: ["'-a'"] pairs: [ (assign_pair lhs: (LhsName name:list_value) op: Equal rhs: { (ArrayLiteralPart words: [ { (BracedVarSub token: <VSub_Name VARIABLES_VALUES> bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name "$list_token")})) spids: [208 213] ) } ] ) } spids: [206] ) ] spids: [202] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:list_value) op: PlusEqual rhs: {(ArrayLiteralPart words:[{(${ VSub_Name value_token)}])} spids: [217] ) ] spids: [217] ) (C {(VARIABLES_VALUES) (Lit_Other "[") ($ VSub_Name "$list_token") (Lit_Other "]") (Lit_Other "=") (BracedVarSub token:<VSub_Name list_value> bracket_op:(WholeArray op_id:Lit_At) spids:[230235]) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: { (BracedVarSub token: <VSub_Name list_value> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [240 246] ) } spids: [239] ) ] spids: [239] ) ] spids: [137] ) spids: [125 136] ) (FuncDef name: "variable::ArrayList::prepend" body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name VARIABLES_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ("variable::ArrayList::prepend ") (${ VSub_At "@"))}) terminator: <Op_Semi ";"> ) ] spids: [-1 281] ) ] spids: [-1 294] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:list_token) op: Equal rhs: {($ VSub_Number "$1")} spids: [299] ) ] spids: [297] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:value_token) op: Equal rhs: {($ VSub_Number "$2")} spids: [305] ) ] spids: [303] ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (type) (Lit_Other ":") (Lit_Other ":") (instanceOfOrExit) } {(DQ (${ VSub_Name list_token))} {(ArrayList)} ) (Assignment keyword: Assign_Declare flags: ["'-a'"] pairs: [ (assign_pair lhs: (LhsName name:list_value) op: Equal rhs: { (ArrayLiteralPart words: [ { (BracedVarSub token: <VSub_Name VARIABLES_VALUES> bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name "$list_token")})) spids: [334 339] ) } ] ) } spids: [332] ) ] spids: [328] ) (Assignment keyword: Assign_Declare flags: ["'-a'"] pairs: [ (assign_pair lhs: (LhsName name:new_value) op: Equal rhs: { (ArrayLiteralPart words: [ {(DQ (${ VSub_Name value_token))} { (DQ (BracedVarSub token: <VSub_Name list_value> bracket_op: (WholeArray op_id:Lit_At) suffix_op: (StringUnary op_id: VTest_ColonPlus arg_word: { (BracedVarSub token: <VSub_Name list_value> bracket_op: (WholeArray op_id:Lit_At) spids: [362 367] ) } ) spids: [356 368] ) ) } ] ) } spids: [347] ) ] spids: [343] ) (C {(VARIABLES_VALUES) (Lit_Other "[") ($ VSub_Name "$list_token") (Lit_Other "]") (Lit_Other "=") (BracedVarSub token:<VSub_Name new_value> bracket_op:(WholeArray op_id:Lit_At) spids:[378383]) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: { (BracedVarSub token: <VSub_Name list_value> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [388 394] ) } spids: [387] ) ] spids: [387] ) ] spids: [263] ) spids: [251 262] ) (FuncDef name: "variable::ArrayList::length" body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name VARIABLES_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ("variable::ArrayList::length ") (${ VSub_At "@"))}) terminator: <Op_Semi ";"> ) ] spids: [-1 429] ) ] spids: [-1 442] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:list_token) op: Equal rhs: {($ VSub_Number "$1")} spids: [447] ) ] spids: [445] ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (type) (Lit_Other ":") (Lit_Other ":") (instanceOfOrExit) } {(DQ (${ VSub_Name list_token))} {(ArrayList)} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (value)} {(DQ (${ VSub_Name list_token))}) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_Declare flags: ["'-a'"] pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: {(ArrayLiteralPart words:[{(DQ (${ VSub_Name RESULT))}])} spids: [487] ) ] spids: [483] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name value> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [499 505] ) ) } spids: [497] ) ] spids: [497] ) ] spids: [411] ) spids: [399 410] ) (FuncDef name: "variable::ArrayList::index" body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name VARIABLES_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ("variables_list::index ") (${ VSub_At "@"))}) terminator: <Op_Semi ";"> ) ] spids: [-1 541] ) ] spids: [-1 554] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:list_token) op: Equal rhs: {($ VSub_Number "$1")} spids: [559] ) ] spids: [557] ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (type) (Lit_Other ":") (Lit_Other ":") (instanceOfOrExit) } {(DQ (${ VSub_Name list_token))} {(ArrayList)} ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:index) op: Equal rhs: {($ VSub_Number "$2")} spids: [584] ) ] spids: [582] ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (value)} {(DQ (${ VSub_Name list_token))}) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_Declare flags: ["'-a'"] pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: {(ArrayLiteralPart words:[{(${ VSub_Name RESULT)}])} spids: [605] ) ] spids: [601] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: { (BracedVarSub token: <VSub_Name value> bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name "$index")})) spids: [614 619] ) } spids: [613] ) ] spids: [613] ) ] spids: [523] ) spids: [511 522] ) (FuncDef name: "_variable::ArrayList::index_p" body: (BraceGroup children: [ (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (index) } {(DQ (${ VSub_At "@"))} ) (C {(echo)} {(DQ ($ VSub_Name "$RESULT"))}) ] spids: [636] ) spids: [624 635] ) (FuncDef name: "variable::ArrayList::first" body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name VARIABLES_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ("variable::ArrayList::first ") (${ VSub_At "@"))}) terminator: <Op_Semi ";"> ) ] spids: [-1 693] ) ] spids: [-1 706] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:list_token) op: Equal rhs: {($ VSub_Number "$1")} spids: [711] ) ] spids: [709] ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (type) (Lit_Other ":") (Lit_Other ":") (instanceOfOrExit) } {(DQ (${ VSub_Name list_token))} {(ArrayList)} ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (index) } {(${ VSub_Name list_token)} {(0)} ) ] spids: [675] ) spids: [663 674] ) (FuncDef name: "_variable::ArrayList::first_p" body: (BraceGroup children: [ (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (first) } {(DQ (${ VSub_At "@"))} ) (C {(echo)} {(DQ (${ VSub_Name RESULT))}) ] spids: [763] ) spids: [751 762] ) (FuncDef name: "variable::ArrayList::rest" body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name VARIABLES_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ("variable::ArrayList::rest ") (${ VSub_At "@"))}) terminator: <Op_Semi ";"> ) ] spids: [-1 822] ) ] spids: [-1 835] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:list_token) op: Equal rhs: {($ VSub_Number "$1")} spids: [840] ) ] spids: [838] ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (type) (Lit_Other ":") (Lit_Other ":") (instanceOfOrExit) } {(DQ (${ VSub_Name list_token))} {(ArrayList)} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (value)} {(DQ (${ VSub_Name list_token))}) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_Declare flags: ["'-a'"] pairs: [ (assign_pair lhs: (LhsName name:values) op: Equal rhs: {(ArrayLiteralPart words:[{($ VSub_Name "$RESULT")}])} spids: [880] ) ] spids: [876] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name values> bracket_op: (WholeArray op_id:Lit_At) suffix_op: (Slice begin:(ArithWord w:{(Lit_Digits 1)})) spids: [888 895] ) ) } spids: [886] ) ] spids: [886] ) ] spids: [804] ) spids: [792 803] ) (FuncDef name: "_variable::ArrayList::rest_p" body: (BraceGroup children: [ (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (rest) } {(DQ (${ VSub_At "@"))} ) (C {(echo)} {(DQ (${ VSub_Name RESULT))}) ] spids: [913] ) spids: [901 912] ) (FuncDef name: "variable::ArrayList::isEmpty_c" body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name VARIABLES_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ("variable::ArrayList::isEmpty_c ") (${ VSub_At "@"))}) terminator: <Op_Semi ";"> ) ] spids: [-1 981] ) ] spids: [-1 994] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:token) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [999] ) ] spids: [997] ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (type) (Lit_Other ":") (Lit_Other ":") (instanceOfOrExit) } {(DQ (${ VSub_Name token))} {(ArrayList)} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (value)} {(DQ (${ VSub_Name token))}) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_Declare flags: ["'-a'"] pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: {(ArrayLiteralPart words:[{(${ VSub_Name RESULT)}])} spids: [1043] ) ] spids: [1039] ) (DBracket expr: (BoolBinary op_id: BoolBinary_eq left: { (BracedVarSub token: <VSub_Name value> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [1053 1059] ) } right: {(0)} ) ) (ControlFlow token:<ControlFlow_Return return> arg_word:{($ VSub_QMark "$?")}) ] spids: [963] ) spids: [951 962] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {($ VSub_Number "$0")} {(KW_Bang "!") (Lit_Other "=")} {($ VSub_Name "$BASH_SOURCE")} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [(ControlFlow token:<ControlFlow_Return return>)] spids: [-1 1093] ) ] spids: [-1 1098] ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (new)} ) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [1130] ) ] spids: [1130] ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(Identifier)} {(DQ ("+"))}) terminator: <Op_Semi ";"> ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (append)} {(${ VSub_Name vCode)} {(${ VSub_Name RESULT)} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(Integer)} {(5)}) terminator: <Op_Semi ";"> ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (append)} {(${ VSub_Name vCode)} {(${ VSub_Name RESULT)} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(Integer)} {(2)}) terminator: <Op_Semi ";"> ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (append)} {(${ VSub_Name vCode)} {(${ VSub_Name RESULT)} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (type)} {($ VSub_Name "$vCode")}) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(ArrayList)} {(DQ ($ VSub_Name "$RESULT"))} {(DQ ("List type"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (index)} {($ VSub_Name "$vCode")} {(0)} ) terminator: <Op_Semi ";"> ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (type)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(Identifier)} {(DQ ($ VSub_Name "$RESULT"))} {(DQ ("List first item type"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (index)} {($ VSub_Name "$vCode")} {(1)} ) terminator: <Op_Semi ";"> ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (type)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(Integer)} {(DQ (${ VSub_Name RESULT))} {(DQ ("List first item type"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (index)} {($ VSub_Name "$vCode")} {(2)} ) terminator: <Op_Semi ";"> ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (type)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(Integer)} {(DQ (${ VSub_Name RESULT))} {(DQ ("List first item type"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (new)} ) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [1392] ) ] spids: [1392] ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(String)} {(DQ (a))}) terminator: <Op_Semi ";"> ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:A) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [1410] ) ] spids: [1410] ) terminator: <Op_Semi ";"> ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (append)} {(${ VSub_Name vCode)} {($ VSub_Name "$A")} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(String)} {(DQ (b))}) terminator: <Op_Semi ";"> ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:B) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [1444] ) ] spids: [1444] ) terminator: <Op_Semi ";"> ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (append)} {(${ VSub_Name vCode)} {($ VSub_Name "$B")} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(String)} {(DQ (c))}) terminator: <Op_Semi ";"> ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:C) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [1478] ) ] spids: [1478] ) terminator: <Op_Semi ";"> ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (append)} {(${ VSub_Name vCode)} {($ VSub_Name "$C")} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (index)} {($ VSub_Name "$vCode")} {(1)} ) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(DQ ($ VSub_Name "$B"))} {(DQ ($ VSub_Name "$RESULT"))} {(DQ (index_p))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (first)} {($ VSub_Name "$vCode")} ) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(DQ ($ VSub_Name "$A"))} {(DQ ($ VSub_Name "$RESULT"))} {(DQ (first_p))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (rest)} {($ VSub_Name "$vCode")} {(0)} ) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(DQ (${ VSub_Name B) (" ") (${ VSub_Name C))} {(DQ ($ VSub_Name "$RESULT"))} {(DQ (rest_p))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(-name)} {(DQ (EVAL_RESULT))} {(Integer)} {(4)} ) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:varname) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1623] ) ] spids: [1621] ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(DQ (EVAL_RESULT))} {(DQ (${ VSub_Name varname))} {(DQ ("Non-auto variable name"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (type)} {(DQ (${ VSub_Name varname))}) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(Integer)} {(DQ (${ VSub_Name RESULT))} {(DQ ("Non-auto type"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (value)} {(DQ (${ VSub_Name varname))}) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(4)} {(DQ (${ VSub_Name RESULT))} {(DQ ("Non-auto value"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (new)} ) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [1725] ) ] spids: [1725] ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (isEmpty_c)} {(${ VSub_Name vCode)} ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(0)} {($ VSub_QMark "$?")} {(DQ ("Return code true (0)"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(Identifier)} {(DQ ("+"))}) terminator: <Op_Semi ";"> ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (append)} {(${ VSub_Name vCode)} {(${ VSub_Name RESULT)} ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (isEmpty_c)} {(${ VSub_Name vCode)} ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(1)} {($ VSub_QMark "$?")} {(DQ ("Return code false (1)"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (new)} ) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [1823] ) ] spids: [1823] ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(Integer)} {(5)}) terminator: <Op_Semi ";"> ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (append)} {(${ VSub_Name vCode)} {(${ VSub_Name RESULT)} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (new)} {(Integer)} {(2)}) terminator: <Op_Semi ";"> ) (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (append)} {(${ VSub_Name vCode)} {(${ VSub_Name RESULT)} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (index)} {($ VSub_Name "$vCode")} {(0)} ) terminator: <Op_Semi ";"> ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (value)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(5)} {(DQ ($ VSub_Name "$RESULT"))} {(DQ ("append / 0"))} ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (ArrayList) (Lit_Other ":") (Lit_Other ":") (index)} {($ VSub_Name "$vCode")} {(1)} ) terminator: <Op_Semi ";"> ) (Sentence child: (C {(variable) (Lit_Other ":") (Lit_Other ":") (value)} {(DQ ($ VSub_Name "$RESULT"))}) terminator: <Op_Semi ";"> ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (equals)} {(2)} {(DQ ($ VSub_Name "$RESULT"))} {(DQ ("append / 1"))} ) (C {(assert) (Lit_Other ":") (Lit_Other ":") (report)}) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr children: [ (C {(Lit_Other "[")} { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(isset)}) spids: [1979 1983] ) } {(Lit_Other "]")} ) (C {(Lit_Other "[")} {(DQ ($ VSub_Number "$1"))} {(Lit_Other "=") (Lit_Other "=")} {(DQ (debug))} {(Lit_Other "]")} ) ] op_id: Op_DAmp ) terminator: <Op_Semi ";"> ) ] action: [(C {(variable) (Lit_Other ":") (Lit_Other ":") (printMetadata)})] spids: [-1 2005] ) ] spids: [-1 2014] ) ] )