(command.CommandList children: [ (C {<Id.Lit_Colon ':'>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:sanitize_diff_raw) op: assign_op.Equal rhs: {(SQ <'/^:/s/ '>) (DQ <Id.Lit_Other '\\'> <'('> ($ Id.VSub_DollarName '$_x40') <Id.Lit_Other '\\'> <')'>) (SQ <' '>) (DQ <Id.Lit_Other '\\'> <'('> ($ Id.VSub_DollarName '$_x40') <Id.Lit_Other '\\'> <')'>) (SQ <' \\([A-Z]\\)[0-9]*\t/ \\1 \\2 \\3#\t/'>) } spids: [3] ) ] ) (command.ShFunction name: compare_diff_raw body: (BraceGroup children: [ (command.Simple words: [{<sed>} {<-e>} {(DQ ($ Id.VSub_DollarName '$sanitize_diff_raw'))}] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_Number '$1'))} ) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<.tmp-1>}) ] do_fork: T ) (command.Simple words: [{<sed>} {<-e>} {(DQ ($ Id.VSub_DollarName '$sanitize_diff_raw'))}] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_Number '$2'))} ) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<.tmp-2>}) ] do_fork: T ) (command.AndOr ops: [Id.Op_DAmp] children: [(C {<test_cmp>} {<.tmp-1>} {<.tmp-2>}) (C {<rm>} {<-f>} {<.tmp-1>} {<.tmp-2>})] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:sanitize_diff_raw_z) op: assign_op.Equal rhs: {(SQ <'/^:/s/ '>) (DQ ($ Id.VSub_DollarName '$_x40')) (SQ <' '>) (DQ ($ Id.VSub_DollarName '$_x40')) (SQ <' \\([A-Z]\\)[0-9]*$/ X X \\1#/'>) } spids: [106] ) ] ) (command.ShFunction name: compare_diff_raw_z body: (BraceGroup children: [ (command.Pipeline children: [ (command.Simple words: [{<perl>} {<-pe>} {(SQ <'y/\\000/\\012/'>)}] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_Number '$1'))} ) ] do_fork: T ) (command.Simple words: [{<sed>} {<-e>} {(DQ ($ Id.VSub_DollarName '$sanitize_diff_raw_z'))}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<.tmp-1>})] do_fork: T ) ] negated: F ) (command.Pipeline children: [ (command.Simple words: [{<perl>} {<-pe>} {(SQ <'y/\\000/\\012/'>)}] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_Number '$2'))} ) ] do_fork: T ) (command.Simple words: [{<sed>} {<-e>} {(DQ ($ Id.VSub_DollarName '$sanitize_diff_raw_z'))}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<.tmp-2>})] do_fork: T ) ] negated: F ) (command.AndOr ops: [Id.Op_DAmp] children: [(C {<test_cmp>} {<.tmp-1>} {<.tmp-2>}) (C {<rm>} {<-f>} {<.tmp-1>} {<.tmp-2>})] ) ] ) ) (command.ShFunction name: compare_diff_patch body: (BraceGroup children: [ (command.Simple words: [ {<sed>} {<-e>} { (SQ <'\n'> <'\t/^[dis]*imilarity index [0-9]*%$/d\n'> <'\t/^index [0-9a-f]*\\.\\.[0-9a-f]/d\n'> <' '> ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_Number '$1'))} ) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<.tmp-1>}) ] do_fork: T ) (command.Simple words: [ {<sed>} {<-e>} { (SQ <'\n'> <'\t/^[dis]*imilarity index [0-9]*%$/d\n'> <'\t/^index [0-9a-f]*\\.\\.[0-9a-f]/d\n'> <' '> ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_Number '$2'))} ) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<.tmp-2>}) ] do_fork: T ) (command.AndOr ops: [Id.Op_DAmp] children: [(C {<test_cmp>} {<.tmp-1>} {<.tmp-2>}) (C {<rm>} {<-f>} {<.tmp-1>} {<.tmp-2>})] ) ] ) ) ] )