Пошук найкоротшого маршруту є типовою задачею для водія автомобіля. Якщо автомобіль рухається по найкоротшому шляху, це економить гроші. Крім того, важливо знати альтернативні маршрути тієї ж довжини, у випадку якщо основний маршрут недоступний, наприклад, через деякі дорожні роботи.
Для опису області необхідно промоделювати її карту. В ACM нещодавно виявили, що трикутні та прямокутні моделі областей є недостатніми, тому вирішили використовувати шестикутники для опису карт. Клітинки правильної шестикутної сітки (наприклад, сот) можна нумерувати, починаючи з (у довільній клітинці) і рухатись по спіралі до інших клітинок. Таким чином, кожна комірка однозначно ідентифікується своїм номером. І навпаки, кожне додатнє ціле число визначає одну комірку.

Дві клітинки називаються сусідніми, якщо вони мають одну спільну сторону. У нескінченній структурі кожна комірка має рівно шість сусідів. Наприклад, комірка номер є сусідньою з , , , , та . Шестикутний шлях — це непорожня послідовність комірок, у якій кожна з них (крім останньої) є сусідньою до наступної. Шестикутний шлях між двома комірками та — це шлях, у якому — перша комірка послідовності, а — остання. Довжиною шляху називається кількість комірок у ньому мінус один. Довжина шляху являє собою кількість кроків, необхідних для проходження усього маршруту.
Вам потрібно знайти довжину найкоротшого маршруту між двома клітинками, а також загальну кількість взаємно різних маршрутів такої ж довжини. Різні маршрути повинні відрізнятися принаймні в одному члені послідовності, тобто вони не повинні бути послідовностями, які повністю співпадають.
Вхідні дані містять декілька тестів, кожен з яких розміщено у окремому рядку. Рядок містить два цілих числа та (1 \leq X, Y \leq 1000000, X \ne Y), відокремлених пропуском. Числа задають дві різні комірки. За останнім тестом йде рядок з двох нулів, який позначає кінець вхідних даних.
Для кожного тесту виведіть речення "There are N routes of the shortest length L.". Замініть L найменшою довжиною шляху між комірками та . Замініть N кількістю різних шляхів тієї ж самої довжини. Якщо існує лише один шлях, то використовуйте слова "is" та "route" замість "are" та "routes".
Приклад 1