(CommandList children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-ne)} {(3)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [ {(echo)} { (DQ ('Usage: ') (CommandSubPart command_list: (CommandList children:[(C {(basename)} {($ VSub_Number '$0')})]) left_token: <Left_CommandSub '$('> spids: [28 32] ) (' mon day year') ) } ] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (SimpleCommand words: [{(echo)} {(DQ (' with just numerical values (ex: 7 7 1776)'))}] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 21] ) ] spids: [16777215 54] ) (SimpleCommand words: [{(date)} {(--version)}] redirects: [ (Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)}) (Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:baddate) op: Equal rhs: {(DQ ($ VSub_QMark '$?'))} spids: [71] ) ] spids: [71] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {($ VSub_Name '$baddate')} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(date)} {(-d)} {($ VSub_Number '$1') (/) ($ VSub_Number '$2') (/) ($ VSub_Number '$3')} {(Lit_Other '+') (DQ ('That was a %A.'))} ) ] spids: [16777215 92] ) ] else_action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Number '$2')} {(-lt)} {(10)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pattern) op: Equal rhs: {(DQ (' ') ($ VSub_Number '$2') ('[^0-9]'))} spids: [131] ) ] spids: [131] ) ] spids: [16777215 128] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pattern) op: Equal rhs: {(DQ ($ VSub_Number '$2') ('[^0-9]'))} spids: [142] ) ] spids: [142] ) ] spids: [139 149] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dayofweek) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(ncal)} {($ VSub_Number '$1')} {($ VSub_Number '$3')}) (C {(grep)} {(DQ ($ VSub_Name '$pattern'))}) (C {(cut)} {(-c1-2)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [155 175] ) ) } spids: [153] ) ] spids: [153] ) (Case to_match: {($ VSub_Name '$dayofweek')} arms: [ (case_arm pat_list: [{(Su)}] action: [ (Sentence child: (C {(echo)} {(DQ ('That was a Sunday'))}) terminator: <Op_Semi ';'> ) ] spids: [188 190 199 16777215] ) (case_arm pat_list: [{(Mo)}] action: [ (Sentence child: (C {(echo)} {(DQ ('That was a Monday'))}) terminator: <Op_Semi ';'> ) ] spids: [202 204 213 16777215] ) (case_arm pat_list: [{(Tu)}] action: [ (Sentence child: (C {(echo)} {(DQ ('That was a Tuesday'))}) terminator: <Op_Semi ';'> ) ] spids: [216 218 227 16777215] ) (case_arm pat_list: [{(We)}] action: [ (Sentence child: (C {(echo)} {(DQ ('That was a Wednesday'))}) terminator: <Op_Semi ';'> ) ] spids: [230 232 241 16777215] ) (case_arm pat_list: [{(Th)}] action: [ (Sentence child: (C {(echo)} {(DQ ('That was a Thursday'))}) terminator: <Op_Semi ';'> ) ] spids: [244 246 255 16777215] ) (case_arm pat_list: [{(Fr)}] action: [ (Sentence child: (C {(echo)} {(DQ ('That was a Friday'))}) terminator: <Op_Semi ';'> ) ] spids: [258 260 269 16777215] ) (case_arm pat_list: [{(Sa)}] action: [ (Sentence child: (C {(echo)} {(DQ ('That was a Saturday'))}) terminator: <Op_Semi ';'> ) ] spids: [272 274 283 16777215] ) ] spids: [180 184 286] ) ] spids: [110 288] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] )