code: def __init__(
      self,
      context=None,
      socket_type=-1,
      io_loop=None,
      _from_socket: Optional["_zmq.Socket"] = None,
      **kwargs,
  ) -> None:
      if isinstance(context, _zmq.Socket):
          context, _from_socket = (None, context)
      if _from_socket is not None:
          super().__init__(shadow=_from_socket.underlying)  # type: ignore
          self._shadow_sock = _from_socket
      else:
          super().__init__(context, socket_type, **kwargs)  # type: ignore
          self._shadow_sock = _zmq.Socket.shadow(self.underlying)
  
      if io_loop is not None:
          warnings.warn(
              f"{self.__class__.__name__}(io_loop) argument is deprecated in pyzmq 22.2."
              " The currently active loop will always be used.",
              DeprecationWarning,
              stacklevel=3,
          )
      self._recv_futures = deque()
      self._send_futures = deque()
      self._state = 0
      self._fd = self._shadow_sock.FD
  
imports: import warnings
  from asyncio import Future
  from collections import deque
  from itertools import chain
  from typing import Any, Awaitable, Callable, Dict, List, NamedTuple, Optional, Tuple, Type, TypeVar, Union, cast, overload
  import zmq
  from zmq import EVENTS, POLLIN, POLLOUT
  from zmq._typing import Literal
label_desc: Use image node_id 1 to create a new _AsyncSocket object from inherited base classes: _Async, _zmq.Socket with example: obj = _AsyncSocket(context, socket_type, io_loop, _from_socket)