This logic is so much better!!