F. Рудольф и кроличьи норы
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Иногда Рудольф и Байер выбираются на природу. Особенно Байеру нравится ловить мячики, которые ему кидает Рудольф, или бегать по большому полю с кроличьими норами. У Рудольфа всегда есть с собой несколько мячиков, которые можно кинуть Байеру. Мячики иногда закатываются в кроличьи норы, причём достаточно глубоко. Тогда Байер с радостью залезает в нору и достаёт их оттуда.

На любимом поле Байера есть $$$n$$$ нор (пронумерованных с 1 до $$$n$$$), соединенных между собой туннелями. Некоторые норы имеют выход на поверхность (назовём такие норы входами/выходами), в другие же норы можно попасть только по туннелям. Из каждой норы можно попасть в любую другую нору и только одним путем. Входами/выходами являются норы, из которых ведёт только один туннель.

Однажды Рудольф обнаружил, что запас мячиков у него в карманах закончился и Байеру пора залезть в нору и достать те мячи, которые закатились внутрь.

Байер любит исследовать систему туннелей и собирать при этом мячики. Он залезает в одну из нор и бежит по переходам к одному из выходов, выбирая на развилках следующий туннель равновероятно. При этом он никогда не возвращается по тому туннелю, в котором уже был (т.е. не возвращается назад), так как это неинтересно. Все мячики, которые встречаются у него на пути, он собирает и несёт к выходу.

Рудольф знает, сколько мячей лежит в каждой из нор. Ему стало интересно, каково математическое ожидание числа мячиков, собранных Байером, если он начнёт путь от норы с номером $$$s$$$.

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

В первой строке входных данных записаны два целых положительных числа $$$n$$$ и $$$s$$$ ($$$2 \le n \le 10^4$$$, $$$1 \le s \le N$$$) — количество нор и номер норы, с которой начинает свой путь Байер.

Во второй строке содержится $$$n$$$ целых неотрицательных чисел $$$a_1$$$, $$$a_2$$$, $$$\dots$$$, $$$a_n$$$ ($$$0 \le a_i \le 100, 1 \le i \le n$$$), где каждое $$$a_i$$$ равняется числу мячиков, лежащих в норе номер $$$i$$$.

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

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

Выведите одно вещественное число — математическое ожидание числа мячиков, собранных Байером, если он начнёт путь от норы с номером $$$s$$$.

Ответ будет считаться правильным, если его абсолютная или относительная ошибка не превосходит $$$10^{-6}$$$.

Формально, пусть ваш ответ равен $$$a$$$, а ответ жюри равен $$$b$$$. Ваш ответ будет зачтен, если и только если $$$\frac{|a - b|}{\max{(1, |b|)}} \le 10^{-6}$$$.

Примеры
Входные данные
4 4
0 2 0 0
1 2
2 3
3 4
Выходные данные
2.0000000
Входные данные
6 6
0 1 2 2 0 0
1 3
3 5
5 4
5 6
2 4
Выходные данные
2.5000000
Примечание

Иллюстрация первого примера представлена на рисунке ниже.

Байер начинает свой путь в норе номер $$$4$$$, следует по пути $$$4 \rightarrow 3 \rightarrow 2 \rightarrow 1$$$, по пути забирает два мячика из норы номер $$$2$$$ и выходит на поверхность из норы номер $$$1$$$. Число собранных мячиков — $$$2$$$.

Система нор из второго примера представлена на рисунке:

Байер начинает свой путь в норе номер $$$6$$$ и следует либо к выходу $$$1$$$ по пути $$$6~\rightarrow 5~\rightarrow 2~\rightarrow 1$$$ (собрав при этом $$$2$$$ мячика), либо к выходу $$$2$$$ по пути $$$6 \rightarrow 5 \rightarrow 4 \rightarrow 2$$$, собрав три мячика. Оба пути имеют вероятность $$$0.5$$$, следовательно, математическое ожидание числа собранных мячиков равно $$$2 \cdot 0.5 + 3 \cdot 0.5 = 2.5$$$.