Теоретик
Маленькому Алану было скучно, поэтому он попросил Горана дать ему интересную задачу. Так как он занят подготовкой к экзаменам, Горан мог вспомнить только один огромный двудольный граф из своих старых дней, когда он соревновался в программировании. Он дал граф Алану и сказал: "Вы должны раскрасить ребра этого двудольного графа, используя как можно меньше цветов таким образом, чтобы не было двух ребер одного цвета, имеющих общий узел".
Алан взволнованно побежал к себе в комнату, достал свое передвижное устройство чтения/записи для ленты и начал работать над проблемой. Однако вскоре он понял, что что-то упускает, поэтому вернулся к Горану и сказал: "Дайте мне бесконечную ленту, и я решу вашу проблему"! Горан многозначительно посмотрел на него: "Бесконечная лента? Если вы продолжите теоретизировать обо всем, не будет ни одной вещи, названной в Вашу честь". Увидев, что Алан начинает плакать, Горан решил проявить милосердие: я немного облегчу вам задачу. Пусть будет наименьшим количеством цветов, необходимых для раскраски графа описанным способом. Я позволю вам использовать не более цветов, где - наименьшая степень , не меньше .
Помогите Алану решить проблему.
Примечание. Двудольный граф - это граф, узлы которого можно разделить на два множества (или стороны) таким образом, что каждое ребро графа соединяет один узел из первого множества с одним узлом из второго множества.
Входные данные
Первая строка содержит три натуральных числа: , и (, ), представляющее количество узлов с одной стороны двудольного графа, количество узлов с другой стороны двудольного графа и количество ребер в графе. Далее следуют строк, каждая из которых содержит два положительных целых числа () и (), которые представляют ребро между -м узлом первой стороны и -м узлом второй стороны двудольного графа. Все пары (, ) являются уникальными.
Выходные данные
В первой строке выведите натуральное число - количество используемых цветов.
В следующих строках выведите натуральные числа () - метки цвета -го ребра.
Примеры
Примечание
Рассмотрим второй тест. Минимальное количество цветов равно . Однако использование цветов также допустимо, поскольку это наименьшая степень , которая не меньше .