#include <bits/stdc++.h>
using namespace std;
bool is_prime = true;
bool isPrime(int n){
if (n <= 1){
return false;
}
for (int i = 2; i * i <= n; i++){
if (n % i == 0){
return false;
}
}
return true;
}
int reversed(int n){
int terbalik = 0;
while (n > 0){
int sisa = n % 10;
terbalik = terbalik * 10 + sisa;
n = n / 10;
}
return terbalik;
}
int main (){
int n;
while (cin >> n) {
if (!isPrime(n)) {
cout << n << " is not prime." << endl;
} else {
int rev = reversed(n);
if (rev != n && isPrime(rev)) {
cout << n << " is emirp." << endl;
} else {
cout << n << " is prime." << endl;
}
}
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgpib29sIGlzX3ByaW1lID0gdHJ1ZTsKCmJvb2wgaXNQcmltZShpbnQgbil7CiAgICBpZiAobiA8PSAxKXsKICAgIAlyZXR1cm4gZmFsc2U7CiAgICB9CiAgICAgICAgZm9yIChpbnQgaSA9IDI7IGkgKiBpIDw9IG47IGkrKyl7CiAgICAgICAgICAgIGlmIChuICUgaSA9PSAwKXsKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9IAogICAgfQogICAgcmV0dXJuIHRydWU7Cn0KCmludCByZXZlcnNlZChpbnQgbil7CiAgICBpbnQgdGVyYmFsaWsgPSAwOwogICAgCiAgICB3aGlsZSAobiA+IDApewogICAgICAgIGludCBzaXNhID0gbiAlIDEwOwogICAgICAgIHRlcmJhbGlrID0gdGVyYmFsaWsgKiAxMCArIHNpc2E7CiAgICAgICAgbiA9IG4gLyAxMDsKICAgIH0KICAgIHJldHVybiB0ZXJiYWxpazsKfQoKaW50IG1haW4gKCl7CiAgICBpbnQgbjsKICAgIHdoaWxlIChjaW4gPj4gbikgewogICAgICAgIGlmICghaXNQcmltZShuKSkgewogICAgICAgICAgICBjb3V0IDw8IG4gPDwgIiBpcyBub3QgcHJpbWUuIiA8PCBlbmRsOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGludCByZXYgPSByZXZlcnNlZChuKTsgCiAgICAgICAgICAgIAogICAgICAgICAgICBpZiAocmV2ICE9IG4gJiYgaXNQcmltZShyZXYpKSB7CiAgICAgICAgICAgICAgICBjb3V0IDw8IG4gPDwgIiBpcyBlbWlycC4iIDw8IGVuZGw7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBjb3V0IDw8IG4gPDwgIiBpcyBwcmltZS4iIDw8IGVuZGw7CiAgICAgICAgICAgIH0KICAgICAgICB9IAogICAgfQp9