C. Фабрика
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

В Межзвездном Космоаналитическом Бюро очень удивились, узнав, что сообщение от космоаналитика на Сарке получено не было. Более того, самого космоаналитика нигде не могли найти... Не могли найти в течении целого года.

Через несколько недель на Флорине, неподалеку одной из кыртовых фабрик Валлона Марч нашла человека, потерявшего память. Его подвергли психозондированию, уничтожив часть его воспоминаний и спрятав остальные в глубинах сознания. Управляющий фабрикой, резидент Мирлин Теренс, разрешил Валлоне взять найденыша себе на попечение, добился для нее дополнительного пайка и талонов на одежду — сделал все, чтобы двое взрослых (из них один незарегистрированный) могли прожить на жалованье одного. Валлону такое положение вполне устраивало: красавицей она не была, поэтому пока остальные девушки нянчили собственных детей, Валлона занималась Риком — так назвали умалишенного (и поверьте, забот с ним поначалу было не меньше).

Через некоторое время к Рику начала постепенно возвращаться память, и пусть он ничего не помнил о своем прошлом, он уже работал на фабрике. И вот сегодня утром по дороге на свое рабочее место Рик столкнулся с Валлоной. Столкнулся в прямом смысле этого слова, потому что людей на фабрике было много, и все куда-то ужасно спешили, что сильно затрудняло перемещение. Фабрика представляет собой $$$n$$$ помещений, соединенных $$$n - 1$$$ двусторонними коридорами таким образом, чтобы между любыми двумя помещениями существовал ровно один путь. Рик подумал: а что если утром сделать движение по всем коридорам односторонним, чтобы избежать подобных столкновений? Идея может и неплохая, но при этом из некоторых помещений нельзя будет добраться в удаленные части фабрики. А самому Рику, Валлоне, да и остальным рабочим надо было попасть в определенные места. Рику известно про $$$m$$$ человек, что с утра они должны дойти из помещения $$$s_i$$$ в помещение $$$f_i$$$, поэтому коридоры на их пути надо ориентировать таким образом, чтобы возможность перемещения из начала пути $$$s_i$$$ в конец $$$f_i$$$ не пропадала.

Сознание Рика еще не до конца прояснилось, поэтому он просит вас узнать, можно ли ориентировать все коридоры требуемым способом?

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

Первая строка содержит два числа $$$n$$$ и $$$m$$$ — количество помещений на фабрике и количество знакомых Рика $$$(1 \leq n, m \leq 2 \cdot 10^5)$$$.

В следующих $$$n - 1$$$ строке заданы номера пар помещений $$$u_i, v_i$$$, соединенных коридорами $$$(1 \leq u_i, v_i \leq n)$$$. Гарантируется, что из каждого помещения фабрики можно добраться до каждого.

Следующие $$$m$$$ строк содержат числа $$$s_i$$$ и $$$f_i$$$ — начальные и конечные вершины путей, возможность перемещения по которым должна сохраниться.

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

Если ориентировать коридоры описанным образом невозможно, выведите "NO" (без кавычек). В противном случае в первой строке выведите "YES" (без кавычек), а в следующих $$$n - 1$$$ строках — описание всех коридоров в любом порядке. Для каждого коридора выведите номера двух помещений, которые он соединяет, таким образом, чтобы из первого можно было перемещаться во второе.

Примеры
Входные данные
5 5
2 1
4 1
5 3
3 4
1 2
5 3
5 4
1 4
3 4
Выходные данные
YES
1 2
1 4
3 4
5 3
Входные данные
15 5
1 2
1 3
1 4
1 5
2 6
2 7
2 8
3 9
3 10
4 11
9 12
11 13
12 14
12 15
6 10
13 1
5 14
15 12
2 8
Выходные данные
YES
2 1
6 2
7 2
2 8
1 3
3 9
9 12
12 14
15 12
3 10
4 1
11 4
13 11
5 1
Входные данные
5 5
1 3
5 1
4 2
3 4
4 3
4 3
3 2
1 2
5 4
Выходные данные
NO
Примечание

Рассмотрим второй пример. Опишем пути всех знакомых Рика после того, как коридоры были проориентированы.

$$$6 \rightarrow 2 \rightarrow 1 \rightarrow 3 \rightarrow 10$$$

$$$13 \rightarrow 11 \rightarrow 4 \rightarrow 1$$$

$$$5 \rightarrow 1 \rightarrow 3 \rightarrow 9 \rightarrow 12 \rightarrow 14$$$

$$$15 \rightarrow 12$$$

$$$2 \rightarrow 8$$$