#include <bits/stdc++.h> using namespace std; vector<int> li; int bas[11]; int wei(int x) { int cnt = 0; while (x != 0) { cnt++; x = x / 10; } return cnt; } void huiwen(int x, int len) { if (len < 0 || len > 8) return; if (wei(x) == len) li.push_back(x); int res = x * 10; for (int i = 0; i <= 9; i++) { huiwen(res + i + i * bas[len + 1], len + 2); } } bool isprime(int x) { for (int i = 2; i <= x / i; i++) { if (x % i == 0) return 0; } return 1; } int main() { bas[0] = 1; for (int i = 1; i <= 9; i++) bas[i] = bas[i - 1] * 10; huiwen(0, 0); for (int i = 0; i <= 9; i++) huiwen(i, 1); sort(li.begin(), li.end()); int a, b; scanf("%d%d", &a, &b); for (int x : li) { if (x < a) continue; if (x > b) break; if (isprime(x)) printf("%d\n", x); } }