Шоколад
У місцевий магазин надійшов новий вид шоколаду. Шоколад поставляється в плитках, кожна плитка складається з N квадратів. Плитки виготовляються на заводі й мають розміри, які є повними двійками. Іншими словами, одна плитка має 1, 2, 4, 8, 16, ... квадратів.
Для повної оцінки якості шоколаду Леді необхідно відібрати не менше K квадратів. Її подруга Діана теж хотіла б скуштувати шоколаду. Оскільки Леді поспішає сама спробувати шоколад, вона вирішує розламати куплену плитку на шматочки так, щоб у неї було рівно K квадратів, а решту (якщо є) залишає Діані. Кусочки трохи крихкі, тому Леді може ламати їх лише по центру. Іншими словами, з однієї плитки з D квадратів вона може отримати дві частини з D/2 квадратів.
Напишіть програму, яка визначатиме мінімальну кількість розламів, які має виконати Леді, щоб отримати рівно K квадратів (не обов’язково цілими). Крім того, визначте найменший розмір плитки, який має купити Леді, щоб мати принаймні K квадратів.
Input
У першому рядку задано натуральне число K (1 ≤ K ≤ 1 000 000), кількість квадратів, які Леді має вибрати.
Output
Виведіть два цілі числа, розділених одним пробілом. Перше ціле число — найменший розмір плитки, яку має купити Леді. Друге число - найменша кількість розламів.