hasattr