def google_calendar(self):
composite = {}<EOL>if not self.is_authorized:<EOL><INDENT>cached_until = <NUM_LIT:0><EOL>self.is_authorized = self._authorize_credentials()<EOL><DEDENT>else:<EOL><INDENT>if not self.no_update:<EOL><INDENT>self.events = self._get_events()<EOL><DEDENT>composite = self._build_response()<EOL>cached_until = self.cache_timeout<EOL><DEDENT>return {<EOL>"<STR_LIT>": self.py3.time_in(cached_until),<EOL>"<STR_LIT>": self.py3.safe_format(self.format, composite),<EOL>}<EOL>
The method that outputs the response.

First, we check credential authorization. If no authorization, we
display an error message, and try authorizing again in 5 seconds.

Otherwise, we fetch the events, build the response, and output
the resulting composite.