(command.CommandList children: [ (C {<Id.Lit_Colon ':'>}) (command.CommandList children: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:re) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [2] ) ] ) terminator: <Id.Op_Semi _> ) (C {<shift>}) ] ) (command.ForEach iter_name: lib iter_words: [{($ Id.VSub_Star '$*')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:found) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<nm>} {($ Id.VSub_DollarName '$lib')}) (C {<egrep>} {(DQ ($ Id.VSub_DollarName '$re'))}) ] negated: F ) ) } spids: [20] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$found'))} arms: [ (case_arm pat_list:[{(DQ )}] spids:[47 49 51 -1]) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<echo>} {(DQ ($ Id.VSub_DollarName '$lib') <': '> ($ Id.VSub_DollarName '$found'))} ) ] spids: [54 55 64 -1] ) ] ) ] ) ) ] )