Чмяяяакс дуже любить пельмені, тому після того, як він повернувся з LCOI (Link-Cut Олімпіади з Інформатики), він вирішив поїсти їх. Але, на жаль, під час олімпіади система Link-Cut була перебудована.
Тепер система є обмеженою площиною у формі квадрата зі стороною довжини , кути якого розташовані в точках , , та . У кожній точці є ресторан, де можна купити пельмені. Також є функція f(x, y), яка визначає смачність пельменів у ресторані в точці :
де знак представляє бітове XOR, знак — бітове OR, а знак — бітове AND.
Чмяяяакс хоче спробувати найсмачніші пельмені, які він може знайти в системі Лінк-Різання, тому він хоче дізнатися, серед усіх (n + 1) \times (n + 1) ресторанів у системі, яка максимальна смачність пельменів і скільки ресторанів з цією смачністю існує. Будь ласка, допоможіть йому визначити ці два значення.
Оскільки кількість ресторанів може бути дуже великою, будь ласка, виведіть це значення за модулем 10^9 + 7.
Єдиний рядок містить одне ціле число (1 \le n < 2^{60}) — довжина сторони системи Лінк-Різання.
В одному рядку потрібно вивести два цілі числа: максимальну смачність пельменів, які можна знайти серед усіх ресторанів, та кількість ресторанів з цим значенням смачності за модулем 10^9 + 7. Будь ласка, зверніть увагу, що максимальну смачність потрібно виводити так, як вона є у відповіді (тобто не за модулем 10^9 + 7).
Приклад
36 9Приклад
514 6Приклад
Приклад 1
Приклад 2
Приклад 3
У першому прикладі наведені всі точок та значення смачності пельменів у ресторанах у них:
(0, 0):\ f(0, 0) = 0 + 0 + 0 =\ 0;
(0, 1):\ f(0, 1) = 1 + 1 + 0 =\ 2;
(0, 2):\ f(0, 2) = 2 + 2 + 0 =\ 4;
(0, 3):\ f(0, 3) = 3 + 3 + 0 =\ 6;
(1, 0):\ f(1, 0) = 1 + 1 + 0 =\ 2;
(1, 1):\ f(1, 1) = 0 + 1 + 1 =\ 2;
(1, 2):\ f(1, 2) = 3 + 3 + 0 =\ 6;
(1, 3):\ f(1, 3) = 2 + 3 + 1 =\ 6;
(2, 0):\ f(2, 0) = 2 + 2 + 0 =\ 4;
(2, 1):\ f(2, 1) = 3 + 3 + 0 =\ 6;
(2, 2):\ f(2, 2) = 0 + 2 + 2 =\ 4;
(2, 3):\ f(2, 3) = 1 + 3 + 2 =\ 6;
(3, 0):\ f(3, 0) = 3 + 3 + 0 =\ 6;
(3, 1):\ f(3, 1) = 2 + 3 + 1 =\ 6;
(3, 2):\ f(3, 2) = 1 + 3 + 2 =\ 6;
(3, 3):\ f(3, 3) = 0 + 3 + 3 =\ 6.
Як видно, максимальна смачність усіх цих ресторанів дорівнює , і є точок, які мають її.
У другому прикладі є точок ресторанів зі смачністю :
(2, 5):\ f(2, 5) = (2 \oplus 5) + (2\,|\,5) + (2\,\&\,5) = 7 + 7 + 0 = 14;
(3, 4):\ f(3, 4) = 7 + 7 + 0 = 14;
(3, 5):\ f(3, 5) = 6 + 7 + 1 = 14;
(4, 3):\ f(4, 3) = 7 + 7 + 0 = 14;
(5, 2):\ f(5, 2) = 7 + 7 + 0 = 14;
(5, 3):\ f(5, 3) = 6 + 7 + 1 = 14.
Можна показати, що немає ресторанів у заданих межах зі смачністю більше ніж .
( балів): n < 2^{10};
( балів): n = 2^{k} - 1, для деякого цілого (1 \le k \le 20);
( балів): n < 2^{20};
( балів): n = 2^{k} - 1, для деякого цілого (1 \le k \le 60);
( бали): без додаткових обмежень.