def run(self):
unread = <NUM_LIT:0><EOL>current_unread = <NUM_LIT:0><EOL>for id, backend in enumerate(self.backends):<EOL><INDENT>temp = backend.unread or <NUM_LIT:0><EOL>unread = unread + temp<EOL>if id == self.current_backend:<EOL><INDENT>current_unread = temp<EOL><DEDENT><DEDENT>if not unread:<EOL><INDENT>color = self.color<EOL>urgent = "<STR_LIT:false>"<EOL>if self.hide_if_null:<EOL><INDENT>self.output = None<EOL>return<EOL><DEDENT><DEDENT>else:<EOL><INDENT>color = self.color_unread<EOL>urgent = "<STR_LIT:true>"<EOL><DEDENT>format = self.format<EOL>if unread > <NUM_LIT:1>:<EOL><INDENT>format = self.format_plural<EOL><DEDENT>account_name = getattr(self.backends[self.current_backend], "<STR_LIT>", "<STR_LIT>")<EOL>self.output = {<EOL>"<STR_LIT>": format.format(unread=unread, current_unread=current_unread, account=account_name),<EOL>"<STR_LIT>": urgent,<EOL>"<STR_LIT>": color,<EOL>}<EOL>
Returns the sum of unread messages across all registered backends