#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define popcount __builtin_popcount using namespace std; typedef long long int ll; typedef pair P; const int MAX=3050; bitset isprime; void sieve(){ for(int i=3; i>n; int p=n; while(p<=2 || !isprime[p]) p++; for(int i=0; i