snap to corners but better