code: def get(self):
          
          # Discard ready connections that are too old.
          self.clean()
  
          # Return the first connection that is ready, and remove it
          # from the queue.  Connections that aren't ready are returned
          # to the end of the queue with an updated time, on the
          # assumption that somebody is actively reading the response.
          for _ in range(len(self.queue)):
              (conn, _) = self.queue.pop(0)
              if self._conn_ready(conn):
                  return conn
              else:
                  self.put(conn)
          return None
docs: Returns the next connection in this pool that is ready to be
          reused.  Returns None of there aren't any.