if (Bottom() < other.Top()) return false;
if (other.Bottom() < Top()) return false;
if (Right() < other.Left()) return false;
if (other.Right() < Left()) return false;
if (Bottom() < other.Top()) return false;
if (other.Bottom() < Top()) return false;
if (Right() < other.Left()) return false;
if (other.Right() < Left()) return false;