Задачи
Комитет общественного порядка
Комитет общественного порядка
Комитет общественного порядка должен быть законодательно представлен в парламенте Демократической Республики Байтляндии согласно Очень Важному Закону. К сожалению, одним из препятствий является то, что некоторые депутаты не могут никак договориться с другими.
Комитет должен удовлетворять следующим условиям:
\begin{itemize}
\item Каждая партия имеет в точности одного представителя в комитете,
\item Если два депутата не нравятся друг другу, они не могут войти в комитет.
\end{itemize}
Каждая партия имеет в точности двух депутатов в Парламенте. Все они пронумерованы от \textbf{1} до \textbf{2n}. Депутаты с номерами \textbf{2i-1} и \textbf{2i} принадлежат \textbf{i}-ой партии.
Напишите программу, которая:
\begin{itemize}
\item прочитает количество партий и число пар депутатов, находящихся не в дружественном отношении,
\item определит, можно ли организовать комитет. В случае положительного ответа следует указать список его членов,
\item выведет результат.
\end{itemize}
\InputFile
Первая строка содержит два неотрицательных целых числа \textbf{n} и \textbf{m}: соответствено количество партий \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{8000}) и число пар депутатов \textbf{m} (\textbf{0} ≤ \textbf{m} ≤ \textbf{20000}), которые не нравятся друг другу. Каждая из следующих \textbf{m} строк содержит два целых числа \textbf{a} и \textbf{b}, \textbf{1} ≤ \textbf{a} < \textbf{b} ≤ \textbf{2n}, разделенные одним пробелом. Такая строка означает, что депутаты \textbf{a} и \textbf{b} не нравятся друг другу.
Входные данные содержат несколько тестов. Входные данные следует обрабатывать до конца файла.
\OutputFile
Вывести одно слово \textbf{NIE} (означает \textbf{НЕТ} на польском), если организовать комитет невозможно. В противном случае следует вывести \textbf{n} целых чисел из интервала от \textbf{1} до \textbf{2n} в возрастающем порядке, указывающих номера депутатов, из которых и будет состоять комитет. Каждое из этих чисел следует вывести в отдельной строке. Если комитет можно организовать несколькими вариантами, то следует вывести наименьшую последовательность чисел.
Входные данные #1
3 2 1 3 2 4
Выходные данные #1
1 4 5