#include<bits/stdc++.h>
#define in cin
#define out cout
using namespace std;

ifstream f("data.in");
string text;

int getTrail(string s) {
    int result = 0;
    for(int i = s.size() - 1; i >= 0; i--) {
      if(s[i] == '0')
        result++;
      else return result;
    }
}

bool isTrain(string s) {
  return s[0] == '1';
}

void read() {
  in >> text;
}


int solve() {
  int trail = 0;
  for(int i = 0; i < text.size(); i += 8) {
    string b = text.substr(i, 8);

    if(isTrain(b)) {
      if(trail > 0) {
        cout << "No";
        return 0;
      }

      trail = getTrail(b);
    } else {
      if(trail == 0) {
        cout << "No";
         return 0;
      }

      trail--;
    }
  }

  if(trail == 0)
    cout << "Yes";
  else cout << "No";
}

int main() {
  read();
  solve();
  return 0;
}