def __eq__(self, other):
        return (
                type(self) == type(other) and
                # Use getattr() instead of __dict__ as __dict__ doesn't return
                # correct values for properties.