/************************************** * BISMILLAHIR RAHMANIR RAHIM * * MD: EMRUZ HOSSAIN * * CUET-CSE-12 * **************************************/ #include using namespace std; typedef long long ll; typedef unsigned long long ull; #define mem(x,y) memset(x,y,sizeof(x)) #define PB(x) push_back(x) #define POB() pop_back() #define SZ(a) a.size() #define len(a) strlen(a) #define SQR(a) (a*a) #define all(v) v.begin(),v.end() #define fr(i,a,b) for(i=a;i<=b;i++) #define rfr(i,a,b) for(i=a;i>=b;i--) #define sf scanf #define pf printf #define mkp make_pair #define fs first #define sd second #define getx() getchar() //#define getx() getchar_unlocked() #define inf 1<<25 #define eps 1e-9 #define mod 1000000007 #define PI 2.0*acos(0.0) #define imax 2147483647 #define lmax 9223372036854775807LL template T gcd(T a,T b){return (b != 0 ? gcd(b, a%b) : a);} template T lcm(T a, T b) { return (a/gcd(a,b)*b);} template T BigMod (T b,T p,T m){if (p == 0)return 1;if (p%2 == 0){ll s = BigMod(b,p/2,m)%m;return (s*s)%m;}ll sm=((b%m)*(BigMod(b,p-1,m)%m))%m;return sm;} template T ModInv (T b,T m){return BigMod(b,m-2,m);} template T POW(T B,T P){ if(P==0) return 1; if(P&1) return B*POW(B,P-1); else return SQR(POW(B,P/2));} template T Swap(T &a,T &b) {T tmp=a;a=b;b=tmp;} int Set(int N,int pos){return N=N|(1<>sm;return sm;} templateinline bool readfast(T &x) { int c=getx(); int sgn=1; while(~c&&c<'0'||c>'9') { if(c=='-')sgn=-1; c=getx(); } for(x=0; ~c&&'0'<=c&&c<='9'; c=getx())x=x*10+c-'0'; x*=sgn; return ~c; } int R[]={1,-1,0,0,1,-1,-1,1}; int C[]={0,0,1,-1,1,-1,1,-1}; //move in 8 direction int KR[]={-2,-2,-1,1,2,2,-1,1}; int KC[]={1,-1,2,2,1,-1,-2,-2}; //move of knight //code of sieve int pml=10000008,np=0; char prm[10000009]; int prime[800000]; void sieve(void){int i,j;for(i=4;ix=x; this ->y=y; } }; P mkv(P ae,P be){return P(be.x-ae.x,be.y-ae.y);} double dtp(P ae,P be){return (ae.x*be.x+ae.y*be.y);} double crp(P ae,P be){return (ae.x*be.y-ae.y*be.x);} double val(P ae){return sqrt(dtp(ae,ae));} P vresize(P ae,double llen){double v=val(ae);return P(ae.x*llen/v,ae.y*llen/v);} double ART(P ae,P be){return crp(ae,be)/2.0;} P rot(P ae,double ang){return P(ae.x*cos(ang)-ae.y*sin(ang),ae.y*cos(ang)+ae.x*sin(ang));} /*****************************Code start from here**************************/ const int sz=100005; int prime_count[sz]; int main() { // freopen("output.txt","w",stdout); // freopen("xinput.txt","r",stdin); //ios_base::sync_with_stdio(false); int a,b,c,d,h,m,n,p,x,y,i,j,k,l,q,r,t,cnt,sm,tmp; sieve(); prime_count[1]=0; for(i=2;i