class_docstr: Base class for Requests and Replies.
  
  All subclasses must accept keyword arguments to __init__() corresponding to
  their attributes.
code: def reply(self, reply_obj, please_reply=False):
      assert self._remote, "Replying to a local Communicable!"
      if self._replied:
          raise self.MultipleReply(
              "Can't reply to a Communicable more than once!"
          )
      Communicable.send(reply_obj, self._socket, self._routing)
      self._replied = True
      if please_reply:
          raise NotImplementedError(
              "Req / rep / rep / rep pattern is no longer supported"
          )
  
imports: import sys
  import cellprofiler_core.utilities.zmq
label_desc: Use image node_id 4 for calling the Communicable obj's underlying member method code with example usage: obj.reply(reply_obj, please_reply) without return types