def __eq__(self, other):
		if isinstance(other, Address):
			return (self.name, self.address) == (other.name, other.address)

		elif isinstance(other, unicode):
			return unicode(self) == other

		elif isinstance(other, bytes):
			return bytes(self) == other

		elif isinstance(other, tuple):
			return (self.name, self.address) == other

		raise NotImplementedError("Can not compare Address instance against {0} instance".format(type(other)))
dataset/ETHPy150Open marrow/mailer/marrow/mailer/address.py/Address.__eq__/original