(command.CommandList children: [ (C {(Id.Lit_Other ':')} { (SQ (Token id: Id.Lit_Chars val: 'This file is in the public domain, so clarified as of' span_id: 7 ) ) } ) (C {(Id.Lit_Other ':')} {(SQ (Token id:Id.Lit_Chars val:'2006-07-17 by Arthur David Olson.' span_id:13))} ) (command.Case to_match: {($ Id.VSub_Pound '$#') (-) ($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [ {(2-)} {(2-0) (Id.Lit_Star '*')} {(2-) (Id.Lit_Star '*') (Id.Lit_LBracket '[') (Id.KW_Bang '!') (0-9) (Id.Lit_RBracket ']') (Id.Lit_Star '*') } ] action: [ (command.Simple words: [{(echo)} {(DQ ($ Id.VSub_Number '$0') (': wild year: ') ($ Id.VSub_Number '$1'))}] redirects: [ (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:49) fd: -1 arg_word: {(2)} ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:53) arg_word: {(1)} ) ] spids: [26 38 57 -1] ) ] ) (command.Case to_match: {($ Id.VSub_Pound '$#') (-) ($ Id.VSub_Number '$2')} arms: [ (case_arm pat_list: [{(2-even)}] action: [ (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [{(Id.Lit_Star '*') (Id.Lit_LBracket '[') (24680) (Id.Lit_RBracket ']')}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:88) arg_word: {(0)} ) ] spids: [82 86 92 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:98) arg_word: {(1)} ) ] spids: [95 96 102 -1] ) ] ) ] spids: [71 72 107 -1] ) (case_arm pat_list: [{(2-nonpres)} {(2-nonuspres)}] action: [ (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [ {(Id.Lit_Star '*') (Id.Lit_LBracket '[') (02468) (Id.Lit_RBracket ']') (Id.Lit_LBracket '[') (048) (Id.Lit_RBracket ']') } {(Id.Lit_Star '*') (Id.Lit_LBracket '[') (13579) (Id.Lit_RBracket ']') (Id.Lit_LBracket '[') (26) (Id.Lit_RBracket ']') } ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:140) arg_word: {(1)} ) ] spids: [123 138 144 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:150) arg_word: {(0)} ) ] spids: [147 148 154 -1] ) ] ) ] spids: [110 113 159 -1] ) (case_arm pat_list: [{(2-odd)}] action: [ (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [{(Id.Lit_Star '*') (Id.Lit_LBracket '[') (13579) (Id.Lit_RBracket ']')}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:179) arg_word: {(0)} ) ] spids: [173 177 183 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:189) arg_word: {(1)} ) ] spids: [186 187 193 -1] ) ] ) ] spids: [162 163 198 -1] ) (case_arm pat_list: [{(2-uspres)}] action: [ (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [ {(Id.Lit_Star '*') (Id.Lit_LBracket '[') (02468) (Id.Lit_RBracket ']') (Id.Lit_LBracket '[') (048) (Id.Lit_RBracket ']') } {(Id.Lit_Star '*') (Id.Lit_LBracket '[') (13579) (Id.Lit_RBracket ']') (Id.Lit_LBracket '[') (26) (Id.Lit_RBracket ']') } ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:229) arg_word: {(0)} ) ] spids: [212 227 233 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:239) arg_word: {(1)} ) ] spids: [236 237 243 -1] ) ] ) ] spids: [201 202 248 -1] ) (case_arm pat_list: [{(2-) (Id.Lit_Star '*')}] action: [ (command.Simple words: [{(echo)} {(DQ ($ Id.VSub_Number '$0') (': wild type: ') ($ Id.VSub_Number '$2'))}] redirects: [ (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:264) fd: -1 arg_word: {(2)} ) ] ) ] spids: [251 253 267 -1] ) ] ) (command.Simple words: [ {(echo)} { (DQ ($ Id.VSub_Number '$0') (': usage is ') ($ Id.VSub_Number '$0') (' year even|odd|uspres|nonpres|nonuspres') ) } ] redirects: [ (redir.Redir op:(Token id:Id.Redir_GreatAnd val:'>&' span_id:281) fd:-1 arg_word:{(2)}) ] ) (command.ControlFlow token:(Token id:Id.ControlFlow_Exit val:exit span_id:284) arg_word:{(1)}) ] )