code: def _open(
      self, for_write: bool, port: int, block_until_connected: bool
  ):
      if for_write:
          self._zmq = ZmqWrapper.Publication(
              port=DefaultPorts.PubSub + port,
              block_until_connected=block_until_connected,
          )
      else:
          self._zmq = ZmqWrapper.Subscription(
              port=DefaultPorts.PubSub + port,
              topic=self.topic,
              callback=self._on_subscription_item,
          )
  
file_path: tensorwatch/tensorwatch/zmq_stream.py
imports: from typing import Any
  from .zmq_wrapper import ZmqWrapper
  from .stream import Stream
  from .lv_types import DefaultPorts, PublisherTopics
  from .None import utils
label_desc: Use image node_id 2 for calling the ZmqStream obj's underlying member method code with example usage: obj._open(for_write, port, block_until_connected) without return types