(command.CommandList children: [ (command.ShFunction name: unsupported body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple words: [{<echo>} {<org.freedesktop.Hal.Device.SystemPowerManagement.NotSupported>}] redirects: [(redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] more_env: [] do_fork: T ) (command.Simple words: [{<echo>} {<No>} {<hibernate>} {<method>} {<found>}] redirects: [(redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] more_env: [] do_fork: T ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {<-x>} {(DQ <'/usr/sbin/uadmin'>)} {<Id.Lit_RBracket ']'>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<'/usr/sbin/uadmin'>} {<3>} {<0>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'RET='> name:RET) op: assign_op.Equal rhs: {($ Id.VSub_QMark '?')} spids: [80] ) ] redirects: [] ) ] spids: [55 69] ) ] else_action: [(C {<unsupported>})] redirects: [] ) (command.ForEach iter_names: [type] iterable: (for_iter.Words words:[{<button>} {<battery>} {<ac_adapter>}]) body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'devices='> name:devices) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<hal-find-by-capability>} {<--capability>} {($ Id.VSub_DollarName type)}) right: <Id.Backtick_Right '`'> ) } spids: [109] ) ] redirects: [] ) (command.ForEach iter_names: [device] iterable: (for_iter.Words words:[{($ Id.VSub_DollarName devices)}]) body: (command.DoGroup children: [ (C {<dbus-send>} {<--system>} {<--print-reply>} {<--dest> <Id.Lit_Equals '='> <org.freedesktop.Hal>} {($ Id.VSub_DollarName device)} {<org.freedesktop.Hal.Device.Rescan>} ) ] ) redirects: [] ) ] ) redirects: [] ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{($ Id.VSub_DollarName RET)}) ] )