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

Ожерелье можно описать как строку, состоящую из нитей («-») и бусинок («o»), причём последняя нить или бусинка в этой строке связана с первой.

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

Можно ли подобными операциями сделать так, что число нитей между любыми двумя соседними бусинками в ожерелье станет равным? Две бусинки являются соседними, если между ними в ожерелье нет другой бусинки.

Учтите, что после всех операций ожерелье не должно распасться на несколько частей и должно сохранить изначальную длину.

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

В единственной строке ввода содержится одна строка $$$s$$$ ($$$3 \leq |s| \leq 100$$$) — описание ожерелья, в котором знак «-» обозначает нить и маленькая (строчная) английская буква «o» обозначает бусинку.

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

Выведите «YES», если ожерелье можно разрешённым операциями перевести в такое, в котором число нитей между любыми двумя соседними бусинками равно, и «NO» в противном случае.

Вы можете выводить каждую из букв в любом регистре (большой или маленькой).

Примеры
Входные данные
-o-o--
Выходные данные
YES
Входные данные
-o---
Выходные данные
YES
Входные данные
-o---o-
Выходные данные
NO
Входные данные
ooo
Выходные данные
YES