#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include // C++ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //#include //#include #define rep(i,j,k) for(int i=(int)j;i<(int)k;i++) #define ll long long #define Sort(v) sort(all(v)) #define INF 1000000000 #define END return 0 #define pb push_back #define se second #define fi first #define pb push_back #define all(v) (v).begin() , (v).end() #define MP make_pair #define MOD 1000000007LL using namespace std; int day[12]={31,28,31,30,31,30,31,31,30,31,30,31}; struct P{ int x,y; }; bool isPrime(int x){ if(x==1)return 0; if(x==2)return 1; if(x%2==0)return 0; for(int i=3;i*i<=x;i++)if(x%i==0)return 0; return 1; } vector make_prime(){ vector ret; rep(i,1,1500001){ if(isPrime(i))ret.pb(i); } return ret; } int main (){ int n,l; cin>>n>>l; vector prime=make_prime(); ll ans=0; n--; for(int i=0;i