(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PATH) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'> <'/bin'> <Id.Lit_Colon ':'> <'/usr/bin'>} spids: [8] ) ] ) (C {<export>} {<PATH>}) (C {<echo>} {<-n>} {(DQ <'Shell test 1 '>)}) (C {<rm>} {<-rf>} {<DIR_SH1>}) (C {<mkdir>} {<DIR_SH1>}) (C {<cd>} {<DIR_SH1>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:f) op: assign_op.Equal rhs: {<'../test1.c'>} spids: [42] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-r>} {($ Id.VSub_DollarName '$f')}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [45 54] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<sh1>} {<cannot>} {<read>} {($ Id.VSub_DollarName '$f')}) terminator: <Id.Op_Semi _> ) (command.Sentence child: (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<echo>} {(DQ <abcdefghijklmnopqrstuvwxyz>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<alpha>})] do_fork: T ) (command.Simple words: [{<echo>} {(DQ <ABCDEFGHIJKLMNOPQRSTUVWXYZ>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<ALPHA>})] do_fork: T ) (command.Simple words: [{<echo>} {(DQ <0123456789>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<num>})] do_fork: T ) (command.Simple words: [{<echo>} {(DQ <'!@#'> <Id.Lit_Dollar '$'> <'%^&*()_+=-{}[]:;<>?/.,'>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<special>})] do_fork: T ) (C {<cp>} {<'/etc/rc'>} {<rc>}) (C {<cp>} {<'/etc/passwd'>} {<passwd>}) (command.Simple words: [{<cat>} {<alpha>} {<ALPHA>} {<num>} {<rc>} {<passwd>} {<special>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<tmp>})] do_fork: T ) (command.Simple words: [{<cat>} {<tmp>} {<tmp>} {<tmp>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<f1>})] do_fork: T ) (C {<mkdir>} {<foo>}) (C {<cp>} {<'/etc/rc'>} {<'/etc/passwd'>} {<foo>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<'foo/rc'>} {<'/etc/rc'>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [179 191] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<cp>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<'foo/passwd'>} {<'/etc/passwd'>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [214 226] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<cp>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] ) (C {<rm>} {<-rf>} {<foo>}) (command.Simple words: [{<cat>} {<num>} {<num>} {<num>} {<num>} {<num>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>})] do_fork: T ) (command.Simple words: [{<wc>} {<-c>} {<y>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x1>})] do_fork: T ) (command.Simple words: [{<echo>} {(DQ <' 55 y'>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x2>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x1>} {<x2>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [292 303] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<cat>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<y>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>}) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<y>} {<z>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [334 345] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<cat>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<cat>} {<passwd>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<p>})] do_fork: T ) (C {<cp>} {<passwd>} {<q>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<p>} {<q>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [385 396] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<ar>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<date>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<r>})] do_fork: T ) (command.Simple words: [{<ar>} {<r>} {<x.a>} {<p>} {<q>} {<r>}] redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})] do_fork: T ) (C {<ar>} {<r>} {<x.a>} {<'/usr/bin/cp'>}) (C {<ar>} {<r>} {<x.a>} {<'/usr/bin/cat'>}) (C {<rm>} {<p>} {<q>}) (C {<mv>} {<r>} {<R>}) (C {<ar>} {<x>} {<x.a>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<p>} {<'/etc/passwd'>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [473 484] ) ] else_action: [ (command.Sentence child: (C {<Error>} {<on>} {<ar>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<q>} {<'/etc/passwd'>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [505 516] ) ] else_action: [ (command.Sentence child: (C {<Error>} {<on>} {<ar>} {<test>} {<3>}) terminator: <Id.Op_Semi _> ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<r>} {<R>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [537 548] ) ] else_action: [ (command.Sentence child: (C {<Error>} {<on>} {<ar>} {<test>} {<4>}) terminator: <Id.Op_Semi _> ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<cp>} {<'/usr/bin/cp'>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [569 580] ) ] else_action: [ (command.Sentence child: (C {<Error>} {<on>} {<ar>} {<test>} {<5>}) terminator: <Id.Op_Semi _> ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<cat>} {<'/usr/bin/cat'>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [601 612] ) ] else_action: [ (command.Sentence child: (C {<Error>} {<on>} {<ar>} {<test>} {<6>}) terminator: <Id.Op_Semi _> ) ] ) (C {<rm>} {<cp>} {<cat>} {<p>} {<q>} {<r>}) (command.Simple words: [{<ar>} {<d>} {<x.a>} {<r>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/dev/null'>})] do_fork: T ) (C {<ar>} {<x>} {<x.a>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [(command.Sentence child:(C {<test>} {<-r>} {<r>}) terminator:<Id.Op_Semi _>)] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<ar>} {<test>} {<7>}) terminator: <Id.Op_Semi _> ) ] spids: [662 671] ) ] ) (C {<rm>} {<-rf>} {<p>} {<q>} {<r>} {<R>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (C {<test>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<basename>} {<'/usr/ast/foo.c'>} {<.c>}) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(SQ <foo>)} ) ] ) action: [(C {<echo>} {<Error>} {<on>} {<basename>} {<test>} {<1>})] spids: [704 726] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<basename>} {<'a/b/c/d'>}) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(SQ <d>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Error>} {<on>} {<basename>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] spids: [743 763] ) ] ) (C {<cp>} {($ Id.VSub_DollarName '$f')} {<x.c>}) (command.Simple words: [{<echo>} {(DQ <'/a/s//#####/g'>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<s>})] do_fork: T ) (command.Simple words: [{<sed>} {<-f>} {<s>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<x.c>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y.c>}) ] do_fork: T ) (command.Simple words: [{<cdiff>} {<x.c>} {<y.c>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>})] do_fork: T ) (command.Simple words: [{<patch>} {<x.c>} {<y>}] redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x.c>} {<y.c>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [842 853] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<Id.KW_In in>} {<cdiff>} {<test>}) terminator: <Id.Op_Semi _> ) ] ) (C {<rm>} {<x.c> <Id.Lit_Star '*'>} {<y.c>} {<s>} {<y>}) (command.Simple words: [{<ls>} {<'/etc'>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.Simple words: [{<grep>} {<-v>} {(DQ <passwd>)} {<x>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>})] do_fork: T ) (command.Simple words: [{<comm>} {<-3>} {<x>} {<y>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>})] do_fork: T ) (command.Simple words: [{<echo>} {(DQ <passwd>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<w>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<w>} {<z>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>} {<Id.KW_Else else>} {<echo>} {<Error>} {<on>} {<comm>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] spids: [938 949] ) ] ) (command.Simple words: [{<comm>} {<-13>} {<x>} {<y>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [(command.Sentence child:(C {<test>} {<-s>} {<z>}) terminator:<Id.Op_Semi _>)] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<comm>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] spids: [985 994] ) ] ) (C {<rm>} {<-rf>} {<w>} {<x>} {<y>} {<z>}) (command.Simple words: [{<compress>} {<-fc>} {($ Id.VSub_DollarName '$f')}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x.c.Z>})] do_fork: T ) (command.Simple words: [{<compress>} {<-cd>} {<x.c.Z>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {($ Id.VSub_DollarName '$f')} {<y>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>} {<Id.KW_Else else>} {<echo>} {<Error>} {<Id.KW_In in>} {<compress>} {<test>} {<1>} ) terminator: <Id.Op_Semi _> ) ] spids: [1051 1062] ) ] ) (C {<rm>} {<-rf>} {<x.c.Z>} {<y>}) (C {<cp>} {($ Id.VSub_DollarName '$f')} {<x>}) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<END>} here_end_span_id: 1118 stdin_parts: [ <'g/a/s//#####/g\n'> <'g/b/s//@@@@@/g\n'> <'g/c/s//!!!!!/g\n'> <'w\n'> <'q\n'> ] ) ) ] do_fork: T ) (command.Simple words: [{<ed>} {<x>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<y>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/dev/null'>}) ] do_fork: T ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<END>} here_end_span_id: 1143 stdin_parts: [ <'g/#####/s//a/g\n'> <'g/@@@@@/s//b/g\n'> <'g/!!!!!/s//c/g\n'> <'w\n'> <'q\n'> ] ) ) ] do_fork: T ) (command.Simple words: [{<ed>} {<x>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<y>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/dev/null'>}) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {($ Id.VSub_DollarName '$f')}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [1154 1165] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<Id.KW_In in>} {<ed>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (C {<rm>} {<x>} {<y>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<expr>} {<1>} {<Id.Lit_Other '+'>} {<1>}) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<2>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<expr>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] spids: [1198 1220] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<expr>} {<10000>} {<->} {<1>}) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<9999>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<expr>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] spids: [1237 1259] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<expr>} {<100>} {(SQ <'*'>)} {<50>}) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<5000>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<expr>} {<test>} {<3>}) terminator: <Id.Op_Semi _> ) ] spids: [1276 1300] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<expr>} {<120>} {<'/'>} {<5>}) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<24>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<expr>} {<test>} {<4>}) terminator: <Id.Op_Semi _> ) ] spids: [1317 1339] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<expr>} {<143>} {<Id.Lit_Other '%'>} {<7>}) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<3>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<expr>} {<test>} {<5>}) terminator: <Id.Op_Semi _> ) ] spids: [1356 1378] ) ] ) (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:a) op:assign_op.Equal rhs:{<100>} spids:[1395])] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:a) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<expr>} {($ Id.VSub_DollarName '$a')} {<Id.Lit_Other '+'>} {<1>}) ) } spids: [1398] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {($ Id.VSub_DollarName '$a')} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(SQ <101>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<expr>} {<test>} {<6>}) terminator: <Id.Op_Semi _> ) ] spids: [1411 1425] ) ] ) (command.Simple words: [{<fgrep>} {(DQ <abc>)} {<alpha>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<alpha>} {<z>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>} {<Id.KW_Else else>} {<echo>} {<Error>} {<on>} {<fgrep>} {<test>} {<1>} ) terminator: <Id.Op_Semi _> ) ] spids: [1457 1469] ) ] ) (command.Simple words: [{<fgrep>} {(DQ <abc>)} {<num>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [(command.Sentence child:(C {<test>} {<-s>} {<z>}) terminator:<Id.Op_Semi _>)] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<fgrep>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] spids: [1501 1510] ) ] ) (command.Simple words: [{<cat>} {<alpha>} {<num>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>})] do_fork: T ) (command.Simple words: [{<fgrep>} {(DQ <012>)} {<z>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<w>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<w>} {<num>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [1547 1558] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<fgrep>} {<test>} {<3>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<date>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<Rabbit>})] do_fork: T ) (command.Simple words: [{<echo>} {(DQ <Rabbit>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>})] do_fork: T ) (command.Simple words: [{<find>} {<.>} {<-name>} {<Rabbit>} {<-print>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<y>} {<z>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>} {<Id.KW_Else else>} {<echo>} {<Error>} {<on>} {<find>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] spids: [1611 1622] ) ] ) (command.Simple words: [{<find>} {<.>} {<-name>} {<Bunny>} {<-print>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [(command.Sentence child:(C {<test>} {<-s>} {<z>}) terminator:<Id.Op_Semi _>)] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<find>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] spids: [1656 1665] ) ] ) (C {<rm>} {<Rabbit>} {<y>} {<z>}) (command.Simple words: [{<grep>} {(DQ <a>)} {<alpha>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {<alpha>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [1705 1716] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<grep>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<grep>} {(DQ <a>)} {<ALPHA>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [(command.Sentence child:(C {<test>} {<-s>} {<x>}) terminator:<Id.Op_Semi _>)] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<grep>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] spids: [1750 1759] ) ] ) (command.Simple words: [{<grep>} {<-v>} {(DQ <0>)} {<alpha>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {<alpha>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [1789 1800] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<grep>} {<test>} {<3>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<grep>} {<-s>} {(DQ <a>)} {<alpha>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [(command.Sentence child:(C {<test>} {<-s>} {<x>}) terminator:<Id.Op_Semi _>)] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<grep>} {<test>} {<4>}) terminator: <Id.Op_Semi _> ) ] spids: [1836 1845] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple words: [{<grep>} {<-s>} {(DQ <a>)} {<alpha>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>} {<Id.KW_Else else>} {<echo>} {<Error>} {<on>} {<grep>} {<test>} {<5>}) terminator: <Id.Op_Semi _> ) ] spids: [1862 1878] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple words: [{<grep>} {<-s>} {(DQ <a>)} {<ALPHA>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<grep>} {<test>} {<6>}) terminator: <Id.Op_Semi _> ) ] spids: [1899 1915] ) ] ) (command.Simple words: [{<head>} {<-1>} {<f1>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {<alpha>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>} {<Id.KW_Else else>} {<echo>} {<Error>} {<on>} {<head>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] spids: [1945 1956] ) ] ) (command.Simple words: [{<head>} {<-2>} {<f1>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.Simple words: [{<cat>} {<alpha>} {<ALPHA>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {<y>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>} {<Id.KW_Else else>} {<echo>} {<Error>} {<on>} {<head>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] spids: [1995 2006] ) ] ) (C {<mkdir>} {<FOO>}) (C {<cp>} {<passwd>} {<'FOO/z'>}) (C {<cp>} {<alpha>} {<'FOO/x'>}) (C {<cp>} {<ALPHA>} {<'FOO/y'>}) (C {<cd>} {<FOO>}) (command.Simple words: [{<ls>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<w>})] do_fork: T ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<w1>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<END>} here_end_span_id: 2075 stdin_parts: [<'w\n'> <'x\n'> <'y\n'> <'z\n'>] ) ) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<w>} {<w1>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2076 2087] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<ls>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (C {<rm>} {<Id.Lit_Star '*'>}) (C {<cd>} {<..>}) (C {<rmdir>} {<FOO>}) (C {<mkdir>} {<Foo>} {<Bar>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-d>} {<Foo>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2132 2141] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<mkdir>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-d>} {<Bar>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2164 2173] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<mkdir>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] ) (C {<rmdir>} {<Foo>} {<Bar>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-d>} {<Foo>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<mkdir>} {<test>} {<3>}) terminator: <Id.Op_Semi _> ) ] spids: [2202 2211] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-d>} {<Foo>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<rmdir>} {<test>} {<4>}) terminator: <Id.Op_Semi _> ) ] spids: [2228 2237] ) ] ) (C {<mkdir>} {<MVDIR>}) (C {<cp>} {($ Id.VSub_DollarName '$f')} {<x>}) (C {<mv>} {<x>} {<y>}) (C {<mv>} {<y>} {<z>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {($ Id.VSub_DollarName '$f')} {<z>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2280 2291] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<mv>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (C {<cp>} {($ Id.VSub_DollarName '$f')} {<x>}) (C {<mv>} {<x>} {<'MVDIR/y'>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {($ Id.VSub_DollarName '$f')} {<'MVDIR/y'>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2326 2337] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<mv>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] ) (command.Pipeline children: [ (command.Simple words: [{<rev>}] redirects: [(redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<f1>})] do_fork: T ) (command.Simple words: [{<head>} {<-1>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<ahpla>})] do_fork: T ) ] negated: F ) (command.Simple words: [{<echo>} {(DQ <zyxwvutsrqponmlkjihgfedcba>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {<ahpla>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2387 2398] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<rev>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<rev>}] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {($ Id.VSub_DollarName '$f')} ) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>}) ] do_fork: T ) (command.Simple words: [{<rev>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<x>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>}) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {($ Id.VSub_DollarName '$f')} {<x>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<rev>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] spids: [2437 2448] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {($ Id.VSub_DollarName '$f')} {<y>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2465 2476] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<error>} {<on>} {<rev>} {<test>} {<3>}) terminator: <Id.Op_Semi _> ) ] ) (C {<cp>} {($ Id.VSub_DollarName '$f')} {<w>}) (C {<cp>} {<alpha>} {<x>}) (C {<cp>} {<ALPHA>} {<y>}) (C {<cp>} {<num>} {<z>}) (command.Simple words: [{<shar>} {<w>} {<x>} {<y>} {<z>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x1>})] do_fork: T ) (C {<rm>} {<w>} {<x>} {<y>} {<z>}) (command.Simple words: [{<sh>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<x1>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/dev/null'>}) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<w>} {($ Id.VSub_DollarName '$f')}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2558 2569] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<shar>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {<alpha>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2592 2603] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<shar>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<y>} {<ALPHA>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2626 2637] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<shar>} {<test>} {<3>}) terminator: <Id.Op_Semi _> ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<z>} {<num>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2660 2671] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<shar>} {<test>} {<4>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<sort>}] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {($ Id.VSub_DollarName '$f')} ) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>}) ] do_fork: T ) (command.Simple words: [{<wc>}] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {($ Id.VSub_DollarName '$f')} ) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x1>}) ] do_fork: T ) (command.Simple words: [{<wc>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<x>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x2>}) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x1>} {<x2>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2722 2733] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<sort>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<END>} here_end_span_id: 2770 stdin_parts: [ <'demit 10\n'> <'epitonic 40\n'> <'apoop 20\n'> <'bibelot 3\n'> <'comate 4\n'> ] ) ) ] do_fork: T ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<END>} here_end_span_id: 2785 stdin_parts: [ <'apoop 20\n'> <'bibelot 3\n'> <'comate 4\n'> <'demit 10\n'> <'epitonic 40\n'> ] ) ) ] do_fork: T ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<END>} here_end_span_id: 2800 stdin_parts: [ <'epitonic 40\n'> <'demit 10\n'> <'comate 4\n'> <'bibelot 3\n'> <'apoop 20\n'> ] ) ) ] do_fork: T ) (command.Simple words: [{<sort>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<x>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x1>}) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<y>} {<x1>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2809 2820] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<sort>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<sort>} {<-r>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<x1>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x2>}) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x2>} {<z>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2853 2864] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<sort>} {<test>} {<3>}) terminator: <Id.Op_Semi _> ) ] ) (command.Pipeline children: [ (command.Simple words: [{<sort>} {<Id.Lit_Other '+'> <1>} {<-n>}] redirects: [(redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<x>})] do_fork: T ) (command.Simple words: [{<head>} {<-1>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>})] do_fork: T ) ] negated: F ) (command.Simple words: [{<echo>} {(DQ <'bibelot 3'>)}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<z>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<y>} {<z>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2914 2925] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<sort>} {<test>} {<4>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<tail>} {<-1>} {<f1>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {<special>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [2961 2972] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<tail>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<END>} here_end_span_id: 3021 stdin_parts: [ <'a d\n'> <'b e\n'> <'c f\n'> <'a c\n'> <'p z\n'> <'k p\n'> <'a k\n'> <'a b\n'> <'b c\n'> <'c d\n'> <'d e\n'> <'e f\n'> <'f k\n'> ] ) ) ] do_fork: T ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<answer>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<END>} here_end_span_id: 3040 stdin_parts: [<'a\n'> <'b\n'> <'c\n'> <'d\n'> <'e\n'> <'f\n'> <'k\n'> <'p\n'> <'z\n'>] ) ) ] do_fork: T ) (command.Simple words: [{<tsort>}] redirects: [ (redir op:<Id.Redir_Less '<'> loc:(redir_loc.Fd fd:0) arg:{<x>}) (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<y>}) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<y>} {<answer>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [3049 3060] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<tsort>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (C {<cp>} {($ Id.VSub_DollarName '$f')} {<x>}) (C {<uue>} {<x>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-s>} {<x.uue>}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [3097 3106] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<'uue/uud'>} {<test>} {<1>}) terminator: <Id.Op_Semi _> ) ] ) (C {<rm>} {<x>}) (C {<uud>} {<x.uue>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {($ Id.VSub_DollarName '$f')}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [3137 3148] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<'uue/uud'>} {<test>} {<2>}) terminator: <Id.Op_Semi _> ) ] ) (command.Simple words: [{<compress>} {<-fc>} {<x>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x.Z>}) (redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>}) ] do_fork: T ) (C {<uue>} {<x.Z>}) (C {<rm>} {<x>} {<x.Z>}) (C {<uud>} {<x.uue>}) (command.Simple words: [{<compress>} {<-cd>} {<x.Z>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<x>})] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<cmp>} {<-s>} {<x>} {($ Id.VSub_DollarName '$f')}) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [3207 3218] ) ] else_action: [ (command.Sentence child: (C {<echo>} {<Error>} {<on>} {<'uue/uud'>} {<test>} {<3>}) terminator: <Id.Op_Semi _> ) ] ) (C {<cd>} {<..>}) (C {<rm>} {<-rf>} {<DIR_SH1>}) (C {<echo>} {<ok>}) ] )