eolymp
bolt
Try our new interface for solving problems
Problems

Двійкові паліндроми

Двійкові паліндроми

Time limit 1 second
Memory limit 64 MiB

Ваша задача – знайти найменший двійковий паліндром не менше числа n.Двійковий паліндром – це число, яке у двійковій системі числення читається справа наліво і зліва направо однаково. Наприклад, числа 5, 7, 9, 21 – є двійковими паліндромами, а числа 4, 10, 11 – ні.

####Вхідні дані:В першому рядку вводиться число: n.

####Вихідні дані:В єдиному рядку потрібно вивести найменший двійковий паліндром не менше числа n.

####Оцінювання:

40% - n ≤ 10^5

60% - n ≤ 10^18

Examples

Input example #1
8
Output example #1
9
Input example #2
21
Output example #2
21
Input example #3
77
Output example #3
85
Author Жуковський Сергій Станіславович
Source Джерело Серія задач "Абетка програмування"