Ви — ватажок великої злочинної мережі. Ваші схованки з'єднані підземними ходами таким чином, що між будь-якими двома схованками існує рівно один маршрут. Ваш штаб розташований у схованці .
Поліція збирається блокувати ходи по одному. Ви дізнаєтеся про кожне блокування заздалегідь і маєте достатньо часу, щоб пройти через решту ходів. Ви хочете прокопати кілька нових ходів так, щоб, який би один хід не було заблоковано, кожна схованка все одно могла дістатися до штабу. Знайдіть мінімальну кількість нових ходів і вкажіть, які саме ходи потрібно прокопати.
Перший рядок містить два цілих числа n~(2 \le n \le 10^5) та h~(0 \le h < n) — кількість схованок і номер схованки, де розташований штаб. Схованки пронумеровані від до n - 1.
Кожен з наступних n - 1 рядків містить два цілих числа та b~(0 \le a, b < n) — номери схованок, з'єднаних ходом.
У першому рядку виведіть ціле число — мінімальну кількість нових ходів.
У кожному з наступних рядків виведіть два цілих числа та — номери схованок, які потрібно з'єднати новим ходом. Якщо існує кілька розв'язків, виведіть будь-який з них.
Приклад 1
Приклад 2