def METHOD_NAME(self, recv):
    if isinstance(recv, Select):
        recv._check_no_loop(self)
    self._receivers.append(recv)
    if recv.notify is not None:
        raise Error(self.owned_msg)
    recv.notify = self._put
    # Avoid race by polling once after installation.
    if not recv.empty():
        self._put(recv)