-oo-oo------
 -----------------------------------o---------------------o--------------------------
 --o-o-----o----o--oo-o-----ooo-oo---o--
 ---
 ----------------------o---o----o---o-----------o-o-----o
 -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o
 ---------------------------------o----------------------------oo------------------------------------
 ----------------------------------------------------------------------o-o---------------------
 -----------------o-o--oo------o--------o---o--o----------------oooo-------------ooo-----ooo-----o
 -o-o--o-o--o-----o-----o-o--o-o---oooo-o
 oo--
 oo-ooo
 oooooooooo-ooo-oooooo-ooooooooooooooo--o-o-oooooooooooooo-oooooooooooooo
 ------------------------o------------o-----o----------------
 -ooo--
 o------ooo--o-o-oo--o------o----ooo-----o-----o-----o-ooo-o---o----oo
 ---o----o
 -------o--------------------o--o---------------o---o--o-----
 o----------o----------o----------o----------o----------o----------o----------o----------o----------o
 ------o-o--o-----o--
 ----------------------------------------------------------------------------------------------------
 o----------------------oo----
 -o-ooo-o--o----o--o-o-oo-----------o-o-
 o--o--o--o--o--o--o--o--o--o--o--o--
 oooooooo----------
 -o--o--------o--o------o---o-o----------o-------o-o-o-------oo----oo------o------oo--o--
 o---o---o---o---o----o----o----o---o---o---o
 -------------o----ooo-----o-o-------------ooo-----------ooo------o----oo---
 -oo
 ------oo----------o------o-----o---------o------------o----o--o
 ------------o------------------o-----------------------o-----------o
 ---------------o-o----
 oo----------------------o--------------o--------------o-----
 o---------o---------o---------o---------o---------o---------o---------o---------o
 oo-o-ooooo---oo---o-oo---o--o-ooo-o---o-oo---oo---oooo---o---o-oo-oo-o-ooo----ooo--oo--o--oo-o-oo
 oooo--
 ----o---o-------------------------
 -o---o-
 ooo-ooooooo-oo-ooooooooo-oooooooooooooo-oooo-o-oooooooooo--oooooooooooo-oooooooooo-ooooooo
 -o--o-oo---o-o-o--o-o----oo------oo-----o----o-o-o--oo-o--o---o--o----------o---o-o-oo---o--o-oo-o--
 --o---oooo--o-o--o-----o----ooooo--o-oo--o------oooo--------------ooo-o-o----
 ---ooo
 ------------------o----------------------------------o-o-------------
 --------o--------o--------o--------o--------o--------o--------o--------o--------
 ---o--
 oo--o--o--------oo----------------o-----------o----o-----o----------o---o---o-----o---------ooo---
 oo--o-o-o----o-oooo-ooooo---o-oo--o-o--ooo--o--oooo--oo----o----o-o-oooo---o-oooo--ooo-o-o----oo---
 ------oo----o----o-oo-o--------o-----oo-----------------------o------------o-o----oo---------
 o---o---------------
 -o-
 -----------------------------o--o-o-------
 ooo---------
 o-ooooo
 -o-o--
 o-------o-------o-------------
 -----o-----oo-o-o-o-o----o---------oo---ooo-------------o----o---o-o
 ------oooo
 -o---
 --o---o----------o----o----------o--o-o-----o-oo---oo--oo---o-------------oo-----o-------------o---o
 ---o
 oo-
 --o--o----o-o---o--o----o-o--oo-----o-oo--o---o---ooo-o--
 ooo-
 o-oo-o--oo----o-o----------o---o--o----o----o---oo-ooo-o--o-
 ooooo-
 o---o----
 o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-
 ----o----o

YES
 YES
 YES
 YES YES
 YES
 NO
 YES
 NO
 NO
 YES
 NO
 NO
 YES
 YES
 YES
 NO
 YES
 YES
 YES
 YES NO
 YES
 YES
 NO
 NO
 YES
 YES
 NO
 YES
 YES
 YES
 YES
 YES
 NO
 NO
 YES
 NO
 NO
 NO
 NO
 YES
 YES
 YES
 YES
 NO
 NO
 NO
 YES
 YES
 YES
 YES
 NO
 YES
 YES
 YES
 NO
 YES
 YES
 YES
 NO
 YES
 NO
 YES
 NO
 NO
 YES
 YES

#include <bits/stdc++.h>
using namespace std;
const double eps = 1e-9;
const int inf = (int)10e9;
const long long INF = (long long)10e18;
const double PI = 2 * acos(0.0);
int dx[] = {+1, -1, 0, 0};
int dy[] = {0, 0, +1, -1};
int hx[] = {+1, -1, -1, +1, -2, -2, +2, +2};
int hy[] = {+2, +2, -2, -2, +1, -1, +1, -1};
int fx[] = {+0, +0, +1, -1, -1, +1, -1, +1};
int fy[] = {-1, +1, +0, +0, +1, +1, -1, -1};
int month[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
template <typename T>
inline T LCM(T x, T y) {
  T g = GCD(x, y);
  return x * (y / g);
}
template <typename T>
inline T GCD(T a, T b) {
  a = ((a) < 0 ? -(a) : (a)), b = ((b) < 0 ? -(b) : (b));
  return !b ? a : GCD(b, a % b);
}
template <typename T>
inline T power(T b, T p) {
  T res = 1, x = b;
  while (p) {
    if (p & 1) res = (res * x);
    x = (x * x);
    p >>= 1;
  }
  return res;
}
template <typename T>
inline T bigmod(T b, T p, T m) {
  T res = 1 % m, x = b % m;
  while (p) {
    if (p & 1) res = (res * x) % m;
    x = (x * x) % m;
    p >>= 1;
  }
  return res;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  string s;
  while (cin >> s) {
    int links = 0, perl = 0;
    bool flag = false;
    for (unsigned long long i = 0; i < (s.size()); ++i) {
      if (s[i] == 'o')
        perl++;
      else
        links++;
    }
    if (perl <= 1)
      cout << "YES" << endl;
    else if (links % perl == 0 || links == s.size())
      cout << "YES" << endl;
    else
      cout << "NO" << endl;
  }
  return 0;
}
