J. Покупка билетов
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Скоро в городе Н-ске пройдет крупнейшее студенческое соревнование по ACM (Anarchy Code Modification). Слава является старшим в группе студентов своего вуза, участвующих в этом соревновании, поэтому ему необходимо купить билеты на поезд на всю группу. Каждый студент указал номер места, на котором он хотел бы ехать (все студенты назвали разные номера).

Кассирши вокзала объявили забастовку, и Славе пришлось воспользоваться терминалом. Покупка билетов в терминале производится следующим образом:

  1. Указывается информация о людях, на которых покупаются билеты (за одно обращение к терминалу можно указать не более k человек).
  2. Указываются нижняя и верхняя граница номеров мест включительно, на которые следует выписать билеты. В этих границах могут быть и занятые места. Билеты выписываются на c первых свободных мест выделенного отрезка, где c — количество людей в текущем обращении к терминалу. Если в отрезке недостаточно свободных мест, то покупка не производится.

Каждое обращение к терминалу сопровождается вводом большого количества дополнительной информации, поэтому Слава хотел бы минимизировать количество обращений. Сам Слава уже не успевает определить оптимальный порядок покупок, иначе он даже бегом не догонит последний автобус домой, поэтому просит вас помочь ему.

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

В первой строке содержатся три целых числа через пробел: n, m и k (1 ≤ n, m, k ≤ 105, n ≤ m) — количество студентов в группе, количество свободных мест в вагоне и максимальное количество людей в одном обращении к терминалу соответственно.

Во второй строке содержится n различных целых чисел wi, упорядоченных по возрастанию (1 ≤ wi ≤ 109) — номер места, на котором хочет ехать i-й студент.

В третьей строке содержатся m различных целых чисел fj, упорядоченных по возрастанию (1 ≤ fj ≤ 109) — номера свободных мест в вагоне.

Гарантируется, что все студенты желают ехать только на свободных местах, т.е. для любого 1 ≤ i ≤ n существует такое 1 ≤ j ≤ m, что wi = fj.

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

В первой строке выведите единственное целое число s — минимальное количество обращений к терминалу.

В следующих s строках выведите информацию об обращениях к терминалу — количество людей в обращении и их номера через пробел. Каждый человек должен быть указан только в одном обращении, билеты должны быть куплены на всех студентов группы.

Примеры
Входные данные
4 6 2
1 4 5 6
1 2 4 5 6 8
Выходные данные
3
1 1
2 2 3
1 4
Входные данные
12 21 4
2 6 8 10 12 28 40 44 46 48 50 52
2 4 6 8 10 12 24 26 28 30 32 33 34 35 36 40 44 46 48 50 52
Выходные данные
5
1 1
4 2 3 4 5
1 6
4 7 8 9 10
2 11 12