E. Польшар и Бело-красный граф
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

У Польшара есть неориентированный простой граф из n вершин. К сожалению, в графе нет ребер, и граф очень расстроен этим. Польшар хочет сделать его счастливее, добавив несколько красных ребер. Затем он добавит белые ребра на каждое оставшееся место. В итоге граф будет полным графом из красных и белых ребер.

Красочностью графа называют величину min(dr, dw), где dr — диаметр красного подграфа, а dw — диаметр белого подграфа. Диаметр графа — это максимальное натуральное число d такое, что длина кратчайшего пути между некоторой парой вершин равна d. Если граф несвязен, мы будем считать его диаметр равным -1.

Польшар хочет, чтобы его граф был как можно более изящен. А именно, он хочет, чтобы красочность графа была равна k. Можете помочь ему и найти любой граф, удовлетворяющий запросам Польшара?

Входные данные

В единственной строке находятся два числа n и k (2 ≤ n ≤ 1000, 1 ≤ k ≤ 1000) — размер графа и искомая красочность.

Выходные данные

Если подходящих графов не существует, выведите -1.

Иначе, выведите любой граф, удовлетворяющий требованиям Польшара. Сначала выведите m — число красных ребер в графе. Затем, выведите m строк, каждая из которых содержит два числа ai и bi, (1 ≤ ai, bi ≤ n, ai ≠ bi) которые означают, что в графе есть красное ребро между вершинами ai и bi. Каждое красное ребро должно быть выведено один раз, порядок вывода ребер и вершин в ребре не важен.

Помните, что граф Польшара должен остаться простым, а значит, петли и кратные ребра запрещены.

Примеры
Входные данные
4 1
Выходные данные
-1
Входные данные
5 2
Выходные данные
4
1 2
2 3
3 4
4 5
Примечание

В первом примере не существует подходящего графа.

Во втором примере, красный подграф представляет собой путь между вершинами 1 и 5. Его диаметр равен 4. Однако, диаметр белого подграфа равен 2, т. к. он содержит ребра 1-3, 1-4, 1-5, 2-4, 2-5, 3-5.