code: def _retry_deliveries(self):
          
          self.logger.debug("Begin messages delivery retries")
          tasks = []
          for message in itertools.chain(self.session.inflight_in.values(), self.session.inflight_out.values()):
              tasks.append(asyncio.wait_for(self._handle_message_flow(message), 10, loop=self._loop))
          if tasks:
              done, pending = yield from asyncio.wait(tasks, loop=self._loop)
              self.logger.debug("%d messages redelivered" % len(done))
              self.logger.debug("%d messages not redelivered due to timeout" % len(pending))
          self.logger.debug("End messages delivery retries")
docs: Handle [MQTT-4.4.0-1] by resending PUBLISH and PUBREL messages for pending out messages
          :return: