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

Дано дерево из $$$n$$$ вершин.

Необходимо ответить на следующий вопрос: какое максимальное количество ребер можно удалить из дерева так, чтобы все получившиеся компоненты связности содержали в себе четное количество вершин?

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

В первой строке задано число вершин $$$n$$$ ($$$1 \le n \le 10^5$$$).

Следующие $$$n - 1$$$ строк содержат по два числа $$$u$$$, $$$v$$$ ($$$1 \le u, v \le n$$$), описывающие вершины, соединенные $$$i$$$-м ребром.

Гарантируется, что заданная конфигурация образует дерево.

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

Выведите единственное число $$$k$$$ — максимальное количество ребер, которое можно удалить, чтобы все компоненты связности имели четное число вершин, или $$$-1$$$, если нельзя удалить ребра так, чтобы все компоненты связности имели четное число вершин.

Примеры
Входные данные
4
2 4
4 1
3 1
Выходные данные
1
Входные данные
3
1 2
1 3
Выходные данные
-1
Входные данные
10
7 1
8 4
8 10
4 7
6 5
9 3
3 5
2 10
2 5
Выходные данные
4
Входные данные
2
1 2
Выходные данные
0
Примечание

В первом тестовом примере можно удалить ребро, соединяющее вершины $$$1$$$ и $$$4$$$, тогда граф распадется на две компоненты связности, в каждой из которых по две вершины.

Во втором тестовом примере нельзя удалить ребра так, чтобы все компоненты связности имели четное число вершин, поэтому ответ $$$-1$$$.