code: def create_connection(address):
      
      host, _port = address
  
      if ip.valid_ipv4(host) or ip.valid_ipv6(host):
          return socket.create_connection(address)
      elif os.path.exists(host):
          sock = None
          try:
              sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
              sock.connect(host)
          except socket.error as e:
              if sock is not None:
                  sock.close()
              raise e
          return sock
      else:
          raise ValueError('Invalid IP address or Unix Socket: %s' % host)
docs: Wrapper for socket.create_connection() function.
  
      If *address* (a 2-tuple ``(host, port)``) contains a valid IPv4/v6
      address, passes *address* to socket.create_connection().
      If *host* is valid path to Unix Domain socket, tries to connect to
      the server listening on the given socket.
  
      :param address: IP address or path to Unix Domain socket.
      :return: Socket instance.