#include <bits/stdc++.h>
using namespace std;
long long int max(long long int a, long long int b) {
  if (a > b)
    return a;
  else
    return b;
}
long long int power(long long int a, long long int b) {
  long long int ans = 1;
  for (long long int i = 1; i <= b; i++) ans *= a;
  return ans;
}
int main() {
  long long int inf = numeric_limits<long long int>::max(), M = 1000000007;
  string s;
  cin >> s;
  long long int n = s.length();
  stack<long long int> st;
  for (long long int i = 0; i < n; i++) {
    if (st.empty())
      st.push(s[i]);
    else {
      if (st.top() == s[i])
        st.pop();
      else
        st.push(s[i]);
    }
  }
  if (st.empty())
    cout << "Yes" << endl;
  else
    cout << "No" << endl;
}
