Школьная демократия

아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

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

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

Пусть в результате выборов в школьный совет пройдет BB мальчиков и GG девочек. По опыту прошлых лет завуч думает, что совет будет работать тем эффективней, чем больше разность BGB-G числа мальчиков и числа девочек в совете. Обратите внимание, что эта величина может оказаться и отрицательной, завуч хочет максимизировать именно само значение этой величины, а не ее модуль. Например, из вариантов B=2B = 2, G=5G = 5, при котором BG=3B - G = -3, и B=3B = 3, G=4G = 4, при котором BG=1B - G = -1, второй вариант предпочтительнее.

Всего в школе nn классов, и завуч уже подготовил их список. Теперь ему предстоит разбить их на группы. Группа не может содержать меньше чем ll классов, иначе совет будет очень большим. В то же время группа не может содержать больше чем rr классов, иначе учащиеся не смогут договориться о выдвигаемых кандидатах. Напомним, что каждая группа должна быть составлена из классов, которые идут подряд в списке завуча.

Помогите завучу найти оптимальное по его мнению разбиение на группы.

입력

В первой строке входного файла содержится два целых числа nn, ll и rr (1n100,0001 \le n \le 100\\,000, 1lrn1 \le l \le r \le n) --- количество классов в школе, максимальное и минимальное допустимое количество классов в одной группе соответственно. В следующих nn строках содержится по два целых числа b_ib\_i и g_ig\_i (1b_i,g_i10,0001 \le b\_i, g\_i \le 10\\,000) --- количество мальчиков и девочек в ii-м классе соответственно.

출력

В первой строке выведите целое число xx --- количество групп в оптимальном по мнению завуча разбиении. В следующих xx строках выведите по два числа s_is\_i и f_if\_i (1s_if_in1 \le s\_i \le f\_i \le n). Это означает, что в ii-ю группу следует включить классы с s_is\_i-го по f_if\_i-й, включительно. Группы можно выводить в любом порядке. Каждый класс должен войти ровно в одну группу.

Гарантируется, что существует хотя бы одно разбиение, удовлетворяющее всем ограничениям. Если существует несколько оптимальных ответов, выведите любой.