(List (= scope= flags=0 words=[] bindings=[('command', {[LIT_CHARS delta2patch]})]) (= scope= flags=0 words=[] bindings=[('USAGE', {[SQ ] [VarSub USAGE_LICENSE] [SQ ]})]) (FunctionDef usage [] (List (= scope= flags=0 words=[] bindings=[('OPTIND', {[LIT_CHARS 0]})]) (Com {[LIT_CHARS getopts]} {[LIT_CHARS -a]} {[VarSub command]} {[DQ [VarSub USAGE]]} {[LIT_CHARS OPT]} {[SQ ]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 2]}) ) ) (While (Com {[LIT_CHARS getopts]} {[LIT_CHARS -a]} {[VarSub command]} {[DQ [VarSub USAGE]]} {[LIT_CHARS OPT]}) (Case to_match={[VarSub OPT]}, pat_word_list=[[{[LIT_OTHER "*"]}]] (Com {[LIT_CHARS usage]}) ) ) (If (DParen {A2 AS_OP_NEQUAL {A Atom NODE_ARITH_WORD {[VarSub #]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}}}) (Com {[LIT_CHARS usage]}) ) (= scope= flags=0 words=[] bindings=[('delta', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('base', {[VarSub 2]})]) (= scope= flags=0 words=[] bindings=[('changes', {[ComSub (Pipeline (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS pax]} {[LIT_CHARS --nosummary]} {[LIT_CHARS -f]} {[VarSub delta]}) (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[SQ ]} {[LIT_CHARS -e]} {[SQ ]}) )]})]) (= scope= flags=0 words=[] bindings=[('tmp', {[LIT_CHARS /tmp/d2p-] [VarSub $]})]) (Com {[LIT_CHARS trap]} {[DQ [LIT_CHARS "rm -rf "][VarSub tmp]]} {[LIT_CHARS 0]}) (AndOr OP_OR_IF (Com {[LIT_CHARS mkdir]} {[VarSub tmp]} {[VarSub tmp] [LIT_CHARS /old]} {[VarSub tmp] [LIT_CHARS /new]}) (Com {[LIT_CHARS exit]}) ) (Com {[LIT_CHARS pax]} {[LIT_CHARS --nosummary]} {[LIT_CHARS -rf]} {[VarSub base]} {[LIT_CHARS -s]} {[DQ [LIT_CHARS ",.*,"][VarSub tmp][LIT_CHARS "/old/&,"]]} {[VarSub changes]}) (Com {[LIT_CHARS pax]} {[LIT_CHARS --nosummary]} {[LIT_CHARS -rf]} {[VarSub delta]} {[LIT_CHARS -z]} {[VarSub base]} {[LIT_CHARS -s]} {[DQ [LIT_CHARS ",.*,"][VarSub tmp][LIT_CHARS "/new/&,"]]} {[VarSub changes]}) (Pipeline (Com {[LIT_CHARS diff]} {[LIT_CHARS -r]} {[LIT_CHARS -N]} {[LIT_CHARS -u]} {[VarSub tmp] [LIT_CHARS /old]} {[VarSub tmp] [LIT_CHARS /new]}) (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS "s,"][VarSub tmp][LIT_CHARS "/new/,,g"]]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS "s,"][VarSub tmp][LIT_CHARS "/old/,,g"]]} {[LIT_CHARS -e]} {[SQ ]} {[LIT_CHARS -e]} {[SQ ]}) ) )