E. Покрасить в тёмно-тёмно серый
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Я вижу розового борова и хочу покрасить его в чёрный. Чёрные боровы выглядят гораздо круче и брутальнее, чем розовые. Поскольку Джагги теперь правитель леса, он хочет улучшить дипломатические отношения с соседними регионами.

Однако, некоторые правители запросили слишком много, чтобы между их регионом и лесом снова настал мир, поэтому Джагги решил прибегнуть к запугиванию. Когда дипломатическая миссия из другого региона приходит в лес, если они вдруг увидят толпу чёрных боровов, они могут и изменить своё мнение. Черные боровы реально страшные!

Лес Джагги можно представить в виде дерева (связного графа без циклов) с n вершинами. Каждая вершина представляет собой борова и покрашена в чёрный или розовый цвет. Джагги отправил в лес белку, чтобы она покрасила всех боровов в чёрный. Однако, белка не очень сообразительная, поэтому каждый раз когда она приходит в вершину, она просто меняет её цвет: розовая вершина становится чёрной, а чёрная розовой.

Джагги слишком занят, чтобы запланировать путь белки, поэтому ему требуется ваша помощь. Постройте такой маршрут белки по дереву, начинающийся в вершине 1, что после его выполнения все вершины покрашены в чёрный цвет. Маршрутом называется последовательность вершин, такая что между любой парой соседних вершин в маршруте есть ребро в дереве.

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

В первой строке входных данных записано целое число n (2 ≤ n ≤ 200 000), определяющее количество вершин в дереве. Далее следуют n строк содержащие по одному целому числу — цвета вершин, i-е из них равно 1, если вершина номер i покрашена в чёрный и  - 1, если в розовый.

В каждой из последующих n - 1 строк записаны два целых числа, означающие индексы вершин, соединённых ребром. Вершины нумеруются начиная с 1.

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

Выведите путь белки как последовательность индексов вершин в порядке посещения. Если все вершины изначально чёрные, то выведите 1. Гарантируется, что решение всегда существует. Если существует несколько решений, выведите любое из них длиной не более 107.

Пример
Входные данные
5
1
1
-1
1
-1
2 5
4 3
2 4
4 1
Выходные данные
1 4 2 5 2 4 3 4 1 4 1
Примечание

Рассмотрим пример из условия. Изначально белка находится в вершине 1, и цвет этой вершины чёрный. Далее следует такая последовательность действий:

  • Из вершины 1 мы идём в вершину 4 и меняем её цвет на розовый.
  • Из вершины 4 мы идём в вершину 2 и меняем её цвет на розовый.
  • Из вершины 2 мы идём в вершину 5 и меняем её цвет на чёрный.
  • Из вершины 5 мы возвращаемся в вершину 2 и меняем её цвет на чёрный.
  • Из вершины 2 мы идём в вершину 4 и меняем её цвет на чёрный.
  • Наконец, мы идём в вершину 3 и меняем её цвет на чёрный.
  • Наконец, мы идём в вершину 4 и меняем её цвет на розовый.
  • Наконец, мы идём в вершину 1 и меняем её цвет на розовый.
  • Наконец, мы идём в вершину 4 и меняем её цвет на чёрный.
  • Наконец, мы идём в вершину 1 и меняем её цвет на чёрный.