def __deepcopy__(self, memo):
        cls = self.__class__
        result = cls.__new__(cls, copy.deepcopy(self.opts, memo))  # pylint: disable=too-many-function-args
        memo[id(self)] = result
        for key in self.__dict__:
            if ('_io_loop',) in key:
                continue
                # The _io_loop has a thread Lock which will fail to be deep
                # copied. Skip it because it will just be recreated on the
                # new copy.
            if key == 'message_client':
                # Recreate the message client because it will fail to be deep
                # copied. The reason is the same as the io_loop skip above.
                setattr(result, key,
                        AsyncReqMessageClient(result.opts,
                                              self.master_uri,
                                              io_loop=result._io_loop))
                continue
            setattr(result, key, copy.deepcopy(self.__dict__[key], memo))
        return result
dataset/ETHPy150Open saltstack/salt/salt/transport/zeromq.py/AsyncZeroMQReqChannel.__deepcopy__/swapped operands of `in`