code: def list_events(self, source=None, severity=None, text_filter=None,
                      start=None, stop=None, page_size=500, descending=False):
          params = {
              'order': 'desc' if descending else 'asc',
          }
          if source is not None:
              params['source'] = source
          if page_size is not None:
              params['limit'] = page_size
          if severity is not None:
              params['severity'] = severity
          if start is not None:
              params['start'] = to_isostring(start)
          if stop is not None:
              params['stop'] = to_isostring(stop)
          if text_filter is not None:
              params['q'] = text_filter
          return pagination.Iterator(
              client=self._client,
              path='/archive/{}/events'.format(self._instance),
              params=params,
              response_class=rest_pb2.ListEventsResponse,
              items_key='event',
              item_mapper=Event,
          )