Ви берете участь у перегонах на двовимірній ґратці, починаючи з початку координат та рухаючись до фінішу (M, N), де та — додатні цілі числа, причому 0 < M \leq N. По дорозі знаходиться проміжний контрольний пункт, який не збігається ні з початком, ні з фінішем, і розташований у точці , де 0 \leq m \leq M і 0 \leq n \leq N. Ви повинні пройти через контрольний пункт перед досягненням фінішу. Довжина найкоротшого шляху до фінішу становить T = M + N.
З кожної точки ви можете перейти до однієї з чотирьох найближчих сусідніх точок із постійною швидкістю. Однак, аби не програти перегони, ви завжди рухаєтесь лише праворуч або вгору на кожному кроці.
Хоча існує багато способів дістатися до фінішу, проходячи через контрольний пункт, здається, що перегони надто прості, оскільки завжди легко знайти найкоротший маршрут. Щоб зробити перегони цікавішими, правила змінено. Замість того, щоб завжди рухатись до одного й того ж фінішу (M, N), учасники можуть обирати координати фінішу та контрольного пункту так, щоб існувало рівно різних найкоротших шляхів від початку до фінішу через контрольний пункт.
Наприклад, для S = 4 розглянемо два можливих розташування фінішу та контрольного пункту:
- Розташуємо контрольний пункт у , а фініш — у . Від початку до контрольного пункту є шляхи. Від контрольного пункту до фінішу існує лише найкоротший шлях. Таким чином, є різних найкоротших шляхів довжини T = 2 + 3 = 5. - Розташуємо контрольний пункт у , а фініш — у . Від початку до контрольного пункту є шляхи, і шляхи — від контрольного пункту до фінішу. Отже, разом різних найкоротших шляхи, а T = 2 + 2 = 4.
Як учаснику Hacker Cup, вам потрібно визначити, як розташувати контрольний пункт та фініш, аби не програти. Для кожного знайдіть мінімально можливу довжину серед усіх можливих розташувань контрольного пункту та фінішу, для яких існує рівно різних найкоротших шляхів від початку до фінішу через контрольний пункт.
Перший рядок містить R~(R \leq 20) — кількість перегонів. Далі йдуть рядків, кожен описує перегони зі значенням S~(1 \leq S \leq 10000000). Рядки розділені символом "\n".
Для кожних перегонів виведіть у окремому рядку, як у прикладі, номер перегонів та мінімально можливу довжину найкоротшого шляху .
Приклад 1