#include <bits/stdc++.h>
using namespace std;
#define ll long long
bool prime(ll x){
if(x < 2) return false;
for(ll i = 2; i * i <= x; i++)
if(x % i == 0) return false;
return true;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
string n;
ll y;
cin >> n >> y;
ll s = 0;
for(char c : n) s += c - '0';
ll a = 0, tmp = y;
while(tmp){
a += tmp % 10;
tmp /= 10;
}
ll r = 0;
int len = n.size();
if(len == 1){
r = n[0] - '0';
} else {
r = (n[1] - '0') * 10 + (n[0] - '0');
}
ll x0 = s + (a % 10);
ll y0 = (r + a) % 100;
double x = 21.268443;
double y1 = 105.204557;
double d = sqrt((x0 - x)*(x0 - x) + (y0 - y1)*(y0 - y1));
ll k = (ll)floor(d);
cout << (prime(k) ? "YES" : "NO");
}
//Author:PhuocThien.
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgbGwgbG9uZyBsb25nCmJvb2wgcHJpbWUobGwgeCl7CiAgICBpZih4IDwgMikgcmV0dXJuIGZhbHNlOwogICAgZm9yKGxsIGkgPSAyOyBpICogaSA8PSB4OyBpKyspCiAgICAgICAgaWYoeCAlIGkgPT0gMCkgcmV0dXJuIGZhbHNlOwogICAgcmV0dXJuIHRydWU7Cn0KaW50IG1haW4oKXsKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUobnVsbHB0cik7CiAgICBzdHJpbmcgbjsKICAgIGxsIHk7CiAgICBjaW4gPj4gbiA+PiB5OwogICAgbGwgcyA9IDA7CiAgICBmb3IoY2hhciBjIDogbikgcyArPSBjIC0gJzAnOwogICAgbGwgYSA9IDAsIHRtcCA9IHk7CiAgICB3aGlsZSh0bXApewogICAgICAgIGEgKz0gdG1wICUgMTA7CiAgICAgICAgdG1wIC89IDEwOwogICAgfQogICAgbGwgciA9IDA7CiAgICBpbnQgbGVuID0gbi5zaXplKCk7CiAgICBpZihsZW4gPT0gMSl7CiAgICAgICAgciA9IG5bMF0gLSAnMCc7CiAgICB9IGVsc2UgewogICAgICAgIHIgPSAoblsxXSAtICcwJykgKiAxMCArIChuWzBdIC0gJzAnKTsKICAgIH0KICAgIGxsIHgwID0gcyArIChhICUgMTApOwogICAgbGwgeTAgPSAociArIGEpICUgMTAwOwogICAgZG91YmxlIHggPSAyMS4yNjg0NDM7CiAgICBkb3VibGUgeTEgPSAxMDUuMjA0NTU3OwogICAgZG91YmxlIGQgPSBzcXJ0KCh4MCAtIHgpKih4MCAtIHgpICsgKHkwIC0geTEpKih5MCAtIHkxKSk7CiAgICBsbCBrID0gKGxsKWZsb29yKGQpOwogICAgY291dCA8PCAocHJpbWUoaykgPyAiWUVTIiA6ICJOTyIpOwp9Ci8vQXV0aG9yOlBodW9jVGhpZW4uCg==