#include<iostream>
#include<string>
#include<algorithm>
#include<map>
#include<set>
#include<utility>
#include<vector>
#include<cmath>
#include<cstdio>
#define loop(i,a,b) for(int i=a;i<b;i++) 
#define rep(i,a) loop(i,0,a)
#define pb push_back
#define mp make_pair
#define it ::iterator
#define all(in) in.begin(),in.end()
const double PI=acos(-1);
const double ESP=1e-10;
using namespace std;
int main(){
  int q[2][6]={
    {1,-1,1,4,5,2},
    {2,3,-1,5,2,1}
  };
  string s;
  while(cin>>s,s!="#"){
    int n=0;
    rep(i,s.size()){
      int d=q[s[i]-'0'][n];
      if(d==-1)break;
      n=d;
    }
    if(n==5)cout<<"Yes"<<endl;
    else cout<<"No"<<endl;
  }
}