При проведении соревнований по программированию «Russian Code Cup», в проверяющей системе сохраняются все посланные решения для каждого участника. Известно, что многие участники используют в своих программах случайные числа и часто отправляют на проверку несколько решений с одинаковым исходным кодом.
В проверяющей системе каждый участник идентифицируется некоторым уникальным целым числом k, а каждое отправленное решение A характеризуется двумя целыми числами: x — числом различных решений, отправленных до первого решения, идентичного решению A, и k — идентификатором участника, который является автором решения. Логично, что все одинаковые решения имеют одинаковый x.
Известно, что данные в проверяющей системе хранятся в хронологическом порядке. То есть, если в проверяющей системе есть решение под номером x (x > 0) участника с номером k, то где-то раньше в проверяющей системе хранится решение с номером x - 1 того же участника.
Во время проведения соревнований, в проверяющей системе произошел сбой, после чего данные о подходах всех участников были восстановлены. Теперь жюри хотят проверить, что восстановленные данные идут в хронологическом порядке. Помогите жюри сделать это.
Выходные данные
Выведите «YES» (без кавычек), если данные идут в хронологическом порядке, и «NO» (без кавычек) в обратном случае.