#include using namespace std; #define rep(i, n) for (ll i = 0; i < (n); ++i) #define rrep(i, n) for (ll i = n; i > 0; --i) #define bitrep(i, n) for (ll i = 0; i < (1 << n); ++i) #define all(a) (a).begin(), (a).end() #define rall(a) (a).rbegin(), (a).rend() #define yesNo(b) ((b) ? "Yes" : "No") using ll = long long; using ull = unsigned long long; using ld = long double; string alphabet = "abcdefghijklmnopqrstuvwxyz"; string ALPHABET = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; const double pi = 3.141592653589793; int smallMOD = 998244353; int bigMOD = 1000000007; int countSubStr(string src, string sub) { size_t len = src.length(); int count = 0; for (int idx = 0; idx < len; ++count) { int ret = src.find(sub, idx); if (ret == string::npos) break; idx = ret + 1; } return count; } int main() { string s; cin >> s; if (count(all(s), '1') == 1) { cout << "No" << endl; } else if (count(all(s), '1') == 2) { cout << "Yes" << endl; } else { if (countSubStr(s, "01") == 0) { cout << "Yes" << endl; } else { cout << "No" << endl; } } return 0; }