(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_Dbg_shell_temp_profile) op: Equal rhs: { (command_sub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children:[(C {(_Dbg_tempname)} {(profile)})]) ) } ) ] ) (command.ShFunction name: _Dbg_shell_append_typesets body: (command.BraceGroup children: [ (C {(typeset)} {(-a)} {(words)}) (command.Pipeline children: [ (C {(typeset)} {(-p)}) (command.WhileUntil keyword: <KW_While while> cond: [ (command.Sentence child: (C {(read)} {(-a)} {(words)}) terminator: <Op_Semi ';'> ) ] body: (command.DoGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_GlobNEqual left: {(declare)} right: { (braced_var_sub token: <VSub_Name words> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w:{(Lit_Digits 0)}) ) ) } ) ) (command.ControlFlow token: <ControlFlow_Continue continue> ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:var_name) op: Equal rhs: { (braced_var_sub token: <VSub_Name words> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w:{(Lit_Digits 2)}) ) suffix_op: (suffix_op.Unary op_id:VOp1_DPercent arg_word:{('=*')}) ) } ) ] ) (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (command.DParen child: (arith_expr.Binary op_id: Arith_DEqual left: (arith_expr.ArithWord w:{(Lit_Digits 0)}) right: (arith_expr.VarRef token:<Lit_ArithVarLike _Dbg_set_debug>) ) ) (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_EqualTilde left: {($ VSub_DollarName '$var_name')} right: {(Lit_Other '^') (_Dbg_)} ) ) (command.ControlFlow token: <ControlFlow_Continue continue> ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:flags) op: Equal rhs: { (braced_var_sub token: <VSub_Name words> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w:{(Lit_Digits 1)}) ) ) } ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_EqualTilde left: {($ VSub_DollarName '$flags')} right: {(Lit_Other '^') (-) (Lit_Other .) (Lit_Other '*') (x)} ) ) terminator: <Op_Semi ';'> ) ] action: [(command.ControlFlow token:<ControlFlow_Continue continue>)] ) (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_EqualTilde left: {($ VSub_DollarName '$flags')} right: {(-) (Lit_Other .) (Lit_Other '*') (r)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} { (DQ ('typeset -p ') (${ VSub_Name var_name) (' &>/dev/null || ') (command_sub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children: [(C {(typeset)} {(-p)} {(${ VSub_Name var_name)})] ) ) ) } ) ] ) (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_GlobDEqual left: { (braced_var_sub token: <VSub_Name flags> suffix_op: (suffix_op.Slice begin: (arith_expr.ArithWord w:{(Lit_Digits 0)}) length: (arith_expr.ArithWord w:{(Lit_Digits 1)}) ) ) } right: {(SQ <->)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} { (command_sub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children: [ (command.Simple words: [{(typeset)} {(-p)} {(${ VSub_Name var_name)}] redirects: [ (redir.Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) ) } ) ] ) ] ) ] ) redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_DollarName '$_Dbg_shell_temp_profile')} ) ] ) ] negated: F ) ] ) ) (command.ShFunction name: _Dbg_shell_append_fn_typesets body: (command.BraceGroup children: [ (C {(typeset)} {(-a)} {(words)}) (command.Pipeline children: [ (C {(typeset)} {(-pf)}) (command.WhileUntil keyword: <KW_While while> cond: [ (command.Sentence child: (C {(read)} {(-a)} {(words)}) terminator: <Op_Semi ';'> ) ] body: (command.DoGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_GlobNEqual left: {(declare)} right: { (braced_var_sub token: <VSub_Name words> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w:{(Lit_Digits 0)}) ) ) } ) ) (command.ControlFlow token: <ControlFlow_Continue continue> ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:fn_name) op: Equal rhs: { (braced_var_sub token: <VSub_Name words> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w:{(Lit_Digits 2)}) ) suffix_op: (suffix_op.Unary op_id:VOp1_DPercent arg_word:{('=*')}) ) } ) ] ) (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (command.DParen child: (arith_expr.Binary op_id: Arith_DEqual left: (arith_expr.ArithWord w:{(Lit_Digits 0)}) right: (arith_expr.VarRef token:<Lit_ArithVarLike _Dbg_set_debug>) ) ) (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_EqualTilde left: {($ VSub_DollarName '$fn_name')} right: {(Lit_Other '^') (_Dbg_)} ) ) (command.ControlFlow token: <ControlFlow_Continue continue> ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:flags) op: Equal rhs: { (braced_var_sub token: <VSub_Name words> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w:{(Lit_Digits 1)}) ) ) } ) ] ) (C {(echo)} { (command_sub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children: [ (command.Simple words: [{(typeset)} {(-pf)} {(${ VSub_Name fn_name)}] redirects: [ (redir.Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) ) } ) ] ) redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_DollarName '$_Dbg_shell_temp_profile')} ) ] ) ] negated: F ) ] ) ) (command.ShFunction name: _Dbg_shell_new_shell_profile body: (command.BraceGroup children: [ (command.Sentence child: (C {(typeset)} {(-i)} {(_Dbg_o_vars)}) terminator: <Op_Semi ';'> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_Dbg_o_vars) op: Equal rhs: { (braced_var_sub token: <VSub_Number 1> suffix_op: (suffix_op.Unary op_id:VTest_ColonHyphen arg_word:{(1)}) ) } ) ] ) (command.Sentence child: (C {(typeset)} {(-i)} {(_Dbg_o_fns)}) terminator: <Op_Semi ';'> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_Dbg_o_fns) op: Equal rhs: { (braced_var_sub token: <VSub_Number 2> suffix_op: (suffix_op.Unary op_id:VTest_ColonHyphen arg_word:{(1)}) ) } ) ] ) (command.Simple words: [{(echo)} {(SQ <'# debugger shell profile'>)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$_Dbg_shell_temp_profile')} ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (command.DParen child: (arith_expr.VarRef token:<Lit_ArithVarLike _Dbg_o_vars>) ) (C {(_Dbg_shell_append_typesets)}) ] ) (command.Simple words: [{(typeset)} {(-p)} {(_Dbg_restore_info)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_DollarName '$_Dbg_shell_temp_profile')} ) ] ) (command.Simple words: [{(echo)} {(DQ ('source ') (${ VSub_Name _Dbg_libdir) (/data/shell.sh))}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_DollarName '$_Dbg_shell_temp_profile')} ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (command.DParen child: (arith_expr.VarRef token:<Lit_ArithVarLike _Dbg_o_fns>) ) (C {(_Dbg_shell_append_fn_typesets)}) ] ) ] ) ) ] )