(CommandList children: [ (AndOr children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:tempfile) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(mktemp)} {(tmp.XXXXXX)})]) left_token: <Left_CommandSub '$('> spids: [101 105] ) } spids: [100] ) ] spids: [100] ) (C {(exit)}) ] op_id: Op_DPipe ) (C {(trap)} {(DQ ('rm -f ') ($ VSub_Name '$tempfile'))} {(EXIT)} {(INT)} {(TERM)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:include_metadata) op:Equal rhs:{(true)} spids:[125])] spids: [125] ) (While cond: [(Sentence child:(C {(getopts)} {(r)} {(opt)}) terminator:<Op_Semi ';'>)] body: (DoGroup children: [ (Case to_match: {(DQ ($ VSub_Name '$opt'))} arms: [ (case_arm pat_list: [{(r)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:include_metadata) op: Equal rhs: {(SQ )} spids: [153] ) ] spids: [153] ) ] spids: [149 150 156 16777215] ) ] spids: [140 146 159] ) ] spids: [137 161] ) ) (C {(shift)} { (ArithSubPart anode: (ArithBinary op_id: Arith_Minus left: (ArithVarRef name:OPTIND) right: (ArithWord w:{(Lit_Digits 1)}) ) spids: [165 172] ) } ) (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LC_ALL) op:Equal rhs:{(C)} spids:[175])] spids: [175] ) terminator: <Op_Semi ';'> ) (C {(export)} {(LC_ALL)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:u) op: Equal rhs: { (BracedVarSub token: <VSub_Name USER> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(root)}) spids: [184 188] ) } spids: [183] ) (assign_pair lhs: (LhsName name:h) op: Equal rhs: { (BracedVarSub token: <VSub_Name HOSTNAME> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: { (CommandSubPart command_list: (CommandList children:[(C {(hostname)})]) left_token: <Left_Backtick '`'> spids: [194 196] ) } ) spids: [191 197] ) } spids: [190] ) (assign_pair lhs: (LhsName name:t) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(date)})]) left_token: <Left_Backtick '`'> spids: [200 202] ) } spids: [199] ) ] spids: [183] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(awk)} {(-F) (Lit_Other ':')} {(SQ <' /^[0-9]\\.[0-9]+:/ { print $1; exit }'>)} {($ VSub_Number '$1')} ) ] ) left_token: <Left_Backtick '`'> spids: [208 219] ) } spids: [207] ) ] spids: [207] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:bootprog_info) op: Equal rhs: { (DQ (FreeBSD/) (${ VSub_Number 3) (' ') (${ VSub_Number 2) (', Revision ') (${ VSub_Name r) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (n) ) } spids: [222] ) ] spids: [222] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-n)} {(DQ (${ VSub_Name include_metadata))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:bootprog_info) op: Equal rhs: { (DQ ($ VSub_Name '$bootprog_info') ('(') (${ VSub_Name t) (' ') (${ VSub_Name u) ('@') (${ VSub_Name h) (')') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (n) ) } spids: [258] ) ] spids: [258] ) ] spids: [16777215 255] ) ] spids: [16777215 278] ) (SimpleCommand words: [ {(echo)} { (DQ ('char bootprog_info[] = ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$bootprog_info') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (';') ) } ] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$tempfile')} spids: [291] ) ] ) (SimpleCommand words: [ {(echo)} { (DQ ('unsigned bootprog_rev = ') (BracedVarSub token: <VSub_Name r> suffix_op: (StringUnary op_id:VOp1_DPercent arg_word:{('.*')}) spids: [299 303] ) (BracedVarSub token: <VSub_Name r> suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{('*.')}) spids: [304 308] ) (';') ) } ] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$tempfile')} spids: [312] ) ] ) (C {(mv)} {($ VSub_Name '$tempfile')} {(vers.c)}) ] )