Дороги, або туди й назад
Як вже усім відомо, Берляндія складається з N міст. Міста пронумеровані від 1 до N. Вони з'єднані N-1 одностороніми дорогами по порядку від останнього до першого: N-те місто з'єднано з (N-1)-им, ..., 2-ге з 1-им.
Проте такий устрій не влаштовує Президента. Він вважає, що у його країні необхідно, щоб з довільного міста можна було потрапити у довільне інше, рухаючись лише по дорогам.
Він розпорядився раді міністрів підготувати план, який складається з такого набору односторонніх доріг, що після їх додавання у дорожну мережу вона стане задовольняти вимогам Президента.
Так як Президент економний, він прийме не довільний план. Президент відхилить план, якщо з нього можна видалитиь одну чи більше доріг, не порушивши головної влатисвості плана. Також Президент відхилить план, якщо пару доріг у ньому (a, b) та (b, c) можна замінити однією - (a, c).
Президент не любить безпорядку, тому дороги у плані повинні бути упорядковані лексикографічно (тобто пари упорядкоуються спочатку по першому члену, а при рівності - по другому). Наприклад, дорога (11, 3) лексикографічно більше дороги (9, 3), але менше дороги (11, 11).
Так як Президенту у цьому році виконується K років, рада міністрів вирішила подати план, яки є K-им у лексикографічному порядку серед усіх планів, які він не відхилить. Плани порівюються лексикографічно як послідовності доріг. Наприклад, план {(1, 10), (7, 20)} лексикографічно менше плана {(1, 20)}, але більше плана {(1, 10), (7, 9), (8, 15)} (відмітимо, що деякі плани з даного прикладу не відповідають вимогам Президента, а наведені лише для пояснення порядку порвіняння).
Справа за малим. Потрібна ваша допомога.
Вхідні дані
У першому рядку записано два цілих числа N, K (2 ≤ N ≤ 50, 1 ≤ K ≤ 10^9).
Вихідні дані
У перший рядок виведіть Q - кількість доріг у шуканому плані. Далі у Q рядках виведіть самі дороги у любимому Президентом лексикографічному порядку. Дороги потрібно виводити у вигляді пар цілих чисел. Якщо розв'язку не існує, виведіть -1.