Скорее всего вы уже знаете, что такое простое число. На всякий случай напомним, что простым называется натуральное число, имеющее ровно два различных натуральных делителя. На самом деле, такое определение сильно ограничивает ваше сознание, поэтому попробуем дать эквивалентное определение простым числам...
Простым числом называется такое целое число $$$p \gt 1$$$, что не найдется такой пары целых чисел $$$x$$$ и $$$y$$$, что $$$x \times y = p$$$ и $$$1 \lt x \le y \lt p$$$. Кажется, что ничего не поменялось, но на самом деле это сильно расширяет ваше сознание. Наверное, читая такое определение, вы подумали о простых числах над операцией умножения. Да, это действительно верно, если считать, что операция «$$$\times$$$» является операцией умножения. Но что, если «$$$\times$$$», это не операция умножения, а операция побитового «ИЛИ»? Сможете ли вы теперь определить, является ли число $$$n$$$ простым или нет? Давайте это и проверим!
В единственной строке задано единственное целое число $$$n$$$ — число, которое нужно проверить на простоту над операцией побитового «ИЛИ».
$$$$$$1 \le n \le 10^{18}$$$$$$
В единственной строке выведите "Yes", если число является простым числом над операцией побитового «ИЛИ», в противном случае выведите "No".
2
Yes
42
No
Напомним, что значением побитового «ИЛИ» двух неотрицательных целых чисел $$$a$$$ и $$$b$$$ называется такое число $$$c = a\ OR\ b$$$, у которого в каждом разряде в двоичной записи стоит $$$1$$$, если и только если хотя бы у одного из двух чисел $$$a$$$ или $$$b$$$ стоит $$$1$$$ в соответствующем разряде в двоичной записи.
| Название |
|---|


