semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
int check(int x)
{
	int q = sqrt (x);
	int n = 0;
	int flag =1;
	for (n = 2; n <= q; n ++)
	{
		if (x % n == 0) {
			flag=0; break; }
	}
	return (flag);
}		

int main()
{
	int n = 0;
	int i = 0;
	int k = 0;
	int j = 0;
	
	cin >> n;
	for (i = 6; i <=n; i += 2)
	{
		for (j = 2; j <= i / 2; j ++)
		{
			if (check(j))
			{
				k = i - j;
				if (check(k))
				{
					cout << i << "=" << j << "+" << k << endl;
					j = i / 2 + 1;
				}
			}
		}
	}

	return 0;
}
void main()
{
  long a,m,n,i,p,q,b,c;
  scanf("%ld",&a);
  i=6;
  m=3;
  
  while (i<=a)  
	   
       { 
	    while (m<=i/2)
               { q=3;
                 while(q<=sqrt(m))
                      {
                       c=m%q;
                       if(c!=0){q=q+1;}
                       else {m=m+2;q=3;}
                      }
               
    
    
                p=2;
                n=i-m;
                while (p<=sqrt(n))
                      {
                       b=n%p;
                       if (b==0) break;
                       else p=p+1;
                      }
         if (b!=0) {printf("%ld=%ld+%ld\n",i,m,n);break;}
         else m=m+2;
        }
      i=i+2;
	  m=3;
      }
}
void main()
{
	long int x,n,i;
	long int prime(long int t);
	n=6;
	scanf("%ld",&i);
	while(n<=i)
	{
	for(x=3;x<=n/2;x=x+2)
		if(prime(x)&&prime(n-x))
			break;
		printf("%ld=%ld+%ld\n",n,x,n-x);
		n=n+2;
	}
}

long int prime(long int t)
{
	long int g,h,k;
	k=sqrt(t);
	for(h=2;h<=k;h++)
		if(t%h==0)
			break;
		if(h>k) g=1;
		else g=0;
		return(g);
}
int isprime(int a)
{
int i;
for(i=3;i<=(int)sqrt(a);i+=2)
 if(a%i==0)
return 0;
return (a==2)||(a%2!=0);
}
int main()
{
int n,i,j;
scanf("%d",&n);
for(i=6;i<=n;i+=2)
{
for(j=2;j<=i/2;j++)
if(isprime(j)&&isprime(i-j))
{
printf("%d=%d+%d\n",i,j,i-j);
break;
}
}
return 0;
}
int P(int x)
{
	int b=1;
	for(int i=2;i<=sqrt(x);i++)
	b*=(x%i!=0);
	if(b==0)
		return 0;
	else
		return 1;

}
main()
{
	int a,b,c,d;
	int n,i,j,k;
	scanf("%d",&n);
	for(i=6;i<=n;i+=2)
		{
			for(a=2;a<=i/2;a++)
				{
					b=i-a;
					if((P(a)==1)&&(P(b)==1))
						{
							printf("%d=%d+%d\n",i,a,b);
							break;
						}
					
				}
		}

}
int sushu(int a)
{
	int result,sq,sum=0,i;
	sq=sqrt(a);
	if(a==2||a==3)result=1;
	else if(a%2==0)result=0;
	else{
	for(i=2;i<=sq;i++)
	{
		if(i%2==1)
		{	if(a%i==0)break;
			sum++;
		}
	}
	if(sum==((sq-1)/2))result=1;
	else result=0;
	}
	return result;
}

int main()
{
		int n,i,j;
		scanf("%d",&n);
		for(i=6;i<=n;i++)
		{
		if(i%2==0)
			{
			for(j=2;j<=i/2;j++)
				if(sushu(j)&&sushu(i-j))
					{
						printf("%d=%d+%d\n",i,j,i-j);	
						break;
					}
			}
		}
		return 0;
}
long even(long n)
{
	long t;
	if(n==2 || n==3)
		return 1;
else
{
   for(t=2;t<=sqrt(n);t++)
   {
	  if(n%t==0)
	  break;
   }
   if(t==(int)sqrt(n)+1)
	   return 1;
   else
	   return 0;
}
}
int main()
{
	long n,i,j;
	scanf("%ld",&n);
    for(i=6;i<=n;i=i+2)
	{
       for(j=3;j<i;j++)
	   {
		   if(even(j)==1&&even(i-j)==1)
		   {
			   printf("%ld=%ld+%ld\n",i,j,i-j);
		   break;
		   }
	   }
	}
}
int prime(int x)
{
  int isprime=1;
  int i;
  if(x==3||x==5||x==7){
	  return isprime;
  }
  else{
	  for(i=3;i<=sqrt(x);i+=2){
		  if(x%i==0){
			  isprime=0;
			  return isprime;
			  break;
		  }
	  }
  }
  return isprime;
}

int main()
{
    int n;
    int i,j;
    scanf("%d",&n);
	printf("6=3+3\n");
    for(i=8;i<=n;i=i+2){
      for(j=3;j<=(n/2);j=j+2){
		  if(prime(j)+prime(i-j)==2){
          printf("\n%d=%d+%d\n",i,j,i-j);
          break;
        }
      }
    }
return 0;
}
int main()
{
	int n,l,m,i,j;
	scanf("%d",&n);
	for(l=6;l<=n;l=l+2)
	{
		for(m=3;m<=l/2;m=m+2)
		{
			for(i=3;i<=sqrt(m);i++)
				if(m%i==0)break;
				if(i<=sqrt(m))continue;
			    for(j=3;j<=sqrt(l-m);j++)
				if((l-m)%j==0)break;
				if(j>sqrt(l-m))
				{
					printf("%d=%d+%d\n",l,m,l-m);
				break;
				}
	
		}
	}
	return 0;
}
int f(int);
void main()
{
	int n,i,a,b;
	scanf("%d",&n);
	for(i=6;i<=n;i+=2)
	{
		for(a=3;a<=i/2;a+=2)
		{
			b=i-a;
			if(f(a)==1&&f(b)==1)
			{
				printf("%d=%d+%d\n",i,a,b);
				break;
			}
		}
	}
}
int f(int a)
{
	int t,j,sum=0;
	for(j=3;j<=sqrt(a);j+=2)
	{
		if(a%j==0)
		{
			sum++;
		}
	}
	if(sum==0)
	{
		t=1;
	}
	else
	{
		t=0;
	}
	return t;
}
int main(){
	int n,n1,n2,m,k1=0,k2=0;
	cin >> n;
	{for(m=6;m<=n;m+=2)
		{
		for(n1=3;n1<=m/2;n1+=2)
			{for(int j=3;(j*j)<=n1;j+=2)
				if(n1%j==0)
					{k1=1;break;}
			if(k1!=1) 
				{
				n2=m-n1;
				for(int x=3;(x*x)<=n2;x+=2)
					if(n2%x==0)
						{k2=1;break;}
				if(k2 != 1) {cout<<m<<"="<<n1<<"+"<<n2<<endl;
							break;}
				k2 = 0;
			}
			k1=0;}}}
	return 0;
}
int main()
{
	int n,i,a,k,m;
	int sushu[50000]={0};

	scanf("%d",&a);

	for(m=3;m<50000;m+=2)
	{
		k=(int)sqrt(m);
		for(i=3;i<=k;i++)
			if(m%i==0) break;
		if(i>=k+1) sushu[m]=1;
	}
	sushu[2]=1;

	for(n=6;n<=a;n+=2)
	{
		for(i=3;i<=n/2;i++)
			if(sushu[i] && sushu[n-i])
			{
				printf("%d=%d+%d\n",n,i,n-i);
				break;
			}

	}
	return 0;

}
/* Note:Your choice is C IDE */
void main()
{
   long prime(long n);
    long x=6,m=2,z;
    scanf("%d",&z);
    for(x=6;x<=z;x=x+2)
    {
    	printf("%d=",x);
    	for(m=2;prime(m)!=0||prime(x-m)!=0;m++)
    	{}
    	printf("%d+%d\n",m,x-m);

    }
}
long prime(long n)
{
	long i=2,j=0;
	while(i<sqrt(n)+1)
	{
		if(n%i==0)
		j=j+i;
		i=i+1;
	}
	return(j);
}
int prime[20000];
int vis[50001]={0};

int isprime(int x)
{
    int m=(int)floor(sqrt(x)+0.5);
    if(x%2 == 0) return 0;
    for(int i=3;i<=m;i+=2)
      if(x%i == 0)  return 0;
    return 1;
}
int main()
{
    int n,k=0;
    cin >> n;
    /*for(int i=3;i<n;i++)
      if(isprime(i)) prime[k++]=i;
    int s;
    /*for(s=6;s<=n;s+=2)
    for(int j=0;j<k;j++)
      {
         if(vis[s]==1) break;
         for(int z=j;z<k;z++)
           if(s == (prime[j] + prime[z]) && vis[s]==0)
                {
                   cout<<s<<"="<<prime[j]<<"+"<<prime[z]<<endl;
                   vis[s]=1;
                   break;
                }
      }*/
    for(int i=6;i<=n;i+=2)
     for(int j=3;;j+=2)
       if(isprime(j) && isprime(i-j))
       {
           int z=i-j;
           cout<<i<<"="<<j<<"+"<<z<<endl;
           break;
       }
    return 0;
}
void main()
{
	int n,m=6,i=3,a,b;
	scanf("%d",&n);
    while(m<=n)
	{	
		while(i<=(m-i))
		{
			for (a=2;a<=sqrt(i);a++)
			{if (i%a==0)
			goto l2;}
				for (b=3;b<=sqrt((m-i));b++)
				{if ((m-i)%b==0)
						goto l2;}
					printf("%d=%d+%d\n",m,i,(m-i));
					goto l1;
l2: i++;
		}
l1:		
		m=m+2;
		i=3;
	}

}
void main()
{
int tashisushu(int x);
int n,fenjie,i;
scanf("%d",&n);
for(i=6;i<=n;i+=2)
	{
	for(fenjie=2;fenjie<=(i/2);fenjie++)
		{
		if(tashisushu(fenjie)+tashisushu(i-fenjie)==2)
			{
			printf("%d=%d+%d\n",i,fenjie,i-fenjie);
			break;
			}
		}
	}
}


int tashisushu(int x)
{
int i=2,c=1;
for(i;i<=sqrt(x);i++)
	{
	if(x%i==0)
		{
		return 0;
		c=0;
		break;
		}
	}
if(c==1)
	return 1;
}
int main()
{
	int a,b,c=3,f=3,h=6;
		scanf("%d",&a);
		if(a%2==0&&a>=6)
		{
				while(h<=a)
				{
					b=h-c;
					while(f<=sqrt(b))
					{
						if(b%f!=0)f=f+2; 
						if(b%f==0)
						loop:	b=b-2,c=c+2,f=3;
					}
					f=3;
					while(f<=sqrt(c))
					{
						if(c%f!=0)f=f+2; 
						if(c%f==0)goto loop;
					}
					printf("%d=%d+%d\n",h,c,b);
					h=h+2,f=3,c=3;
				}
		}
}
void main()
{
	int a=0,b=0,c=0,d=0,i=0,j=0,k=0,n;
	scanf("%d",&n);
	for(i=6;i<=n;i+=2)
	{
		printf("%d=",i);
		for(a=3;a<=n/2;a+=2)
		{
			c=0;
			d=0;
			b=i-a;
			for(j=3;j<=sqrt(a);j+=2)
			{
				if(a%j!=0)
					c++;
				d++;
			}
			if(c==d)
			{
				c=0;
				d=0;
				for(j=3;j<=sqrt(b);j+=2)
				{
				    if(b%j!=0)
					    c++;
				    d++;
				}
				if(c==d)
				{	
					printf("%d+%d\n",a,b);
				    break;
				}
			}
		}
	}
}
int main()
{
	int n,i,j=0;
	int prime[5200]={0};
	scanf("%d",&n);
	int primjud(int x);
	for(i=3;i<n;i=i+2)
	{
		if(primjud(i)==0) prime[j]=i;
		if(prime[j]!=0) j=j+1;
	}
	int t=j;
	for(i=6;i<=n;i=i+2)
	{
		int b=0;
		for(j=0;j<t;j++)
		{
			if(primjud(i-prime[j])==0) {b=1;break;}
		}
		if(b==1) printf("%d=%d+%d\n",i,prime[j],i-prime[j]);
	}
	return 0;
}

int primjud(int x)
{
	int i,b=0;
	for(i=3;i<sqrt(x)+1;i=i+2)
		if(x%i==0) {b=1;break;}
	if(x==9) b=1;
	if(b==1) return 1;
	else return 0;
}
int main()
{
	int n,i,j,k,b,c,r;
	scanf("%d",&n);
	int a[25000];
	for(i=0;i<=(n-6)/2;i++)
		a[i]=6+i*2;
	int sushu(int x);
	for(i=0;i<=(n-6)/2;i++)
	{
		for(j=2;j<=a[i]/2;j=j+1)
		{
			b=j;
			r=sushu(b);
			if(r!=0)
			{
				c=a[i]-b;
				if(sushu(c)!=0)
				{
					printf("%d=%d+%d\n",a[i],b,c);
					break;
				}
			}
		}
	}
	return 0;
}
int sushu(int x)
{
	int l,m=1;
	if(x!=2)
	{
	    for(l=2;l<=sqrt(x);l++)
		{
		    if(x%l==0)
			{
			    m=0;
			    break;
			}
		}
	}
	return(m);
}
main()
{
long int i,j,s,t,p;
long int n;
scanf("%d",&n);
for(i=6;i<=n;i=i+2)
    for(s=3;s<i;s=s+2)
	{   for(t=2;t<sqrt(s)+1;t++)
		    {if(s%t==0)
	            break;
             if(t>=sqrt(s))
				{j=i-s;
                 for(p=2;p<sqrt(j)+1;p++)
				    {if(j%p==0)
					     break;
				     if(p>=sqrt(j))
					 {printf("%ld=%ld+%ld\n",i,s,j);	                      					
					 s=i-1;}   
				    }
				}
		    }
	}

}
int su(int a)
	{  int i,b;
	   b=(int)sqrt(a);
	   for (i=2;i<=b;i++)
	   { if (a%i==0) {
		   return 0;
	   }
       }
	   return 1;
	   
	}

int main()
{	int n,i,j;
    scanf("%d",&n);  
	for (i=6;i<=n;i+=2)  {
		for (j=2;j<=i/2;j++)  
			if(su(j)==1 && su(i-j)==1) {
				printf("%d=%d+%d\n",i,j,i-j);
				break;
			}
		}
	return 0;
}
int main()
{
	int n,a,b,c,k,e,f;
	k=6;
	scanf("%d",&n);
	while(k<=n)
	{
	 for(a=3;a<=k&&k-a>1;a=a+2)
	 {b=k-a;
	     e=sqrt(a);
	     f=sqrt(b);
	 for(c=3;c<=e||c<=f;c=c+2)
	 {if((a%c==0&&a/c>1)||(b%c==0&&b/c>1))
		 break;}
	  if(c>e&&c>f)
	  {printf("%d=%d+%d\n",k,a,b);
	  break;}}
 k=k+2;
}
	return 0;
}
int main(int argc, char* argv[])
{
	int n,i,m=6,zyk(int x);
	scanf("%d",&n);
    while(m<=n)
	{
		for(i=3;i<=m/2;i+=2)
		{
			if(zyk(i)==1 && zyk(m-i)==1)
			{
				printf("%d=%d+%d\n",m,i,m-i);
				break;
			}
		}
		m+=2;
	}
				
	return 0;
}
int zyk(int x)
{
	int i;
	for(i=3;i<sqrt(x)+1;i+=2)
	{
		if(x%i==0)
			return 0;
	}
	return 1;
}
int main(){
    int  s[50000];
	int n,a,p1,p2,c;
	int i,j=3,v,k,h;
	scanf("%d",&n);
	do{
    	    a=0;
    	    for(i=2;i<=sqrt(j);i++){
    		     if((j%i)==0){
                             a=1;
    			             break;
                 }
    		}
    	    if(a==0){                    
                       s[j]=j;
            }
            j++;
       }while(j<n);
    for(v=6;v<=n;v=v+2)
	{	
		c=0;
       for(k=3;k<=v/2;k=k+2)
	   {
		   p1=s[k];if(s[k]!=k){continue;}
	        for(h=v-k;h>=v/2;h=h-2)
			{
			    p2=h;
	           if(p2==s[h])
			   {
		    	printf("%d=%d+%d\n",v,p1,p2);
		    	c=1;
			   }
			   break;
			}
		if(c==1){break;}
	   }
	}
    return 0;
}
void main()
{
	int num,m,k,n=1,i,a[50001]={0},x,j;
	scanf("%d",&num);
	for(i=1;i<=n;i++)
		a[i]=i;

	a[1]=0;a[2]=1;a[3]=1;
	for(m=4;m<=num;m++)
	{
		k=sqrt(m);
		for(i=2;i<=k;i++)
		if(m%i==0)
			{a[m]=0;
				break;
			}

			if(i>=k+1)
			a[m]=1;
	}
	

	for(j=6;j<=num;j=j+2)
	{
		for(i=1;i<=j/2;i++)
			if(a[i]==1&&a[j-i]==1)
			{	printf("%d=%d+%d\n",j,i,j-i);
			    break;}
	}
}
void main() 
{
	int x,p,q,i,j,e,f,y;
	scanf("%d",&y);
	for(x=6;x<=y;x=x+2)
    {
		for(p=3;p<=x/2;p++)
		{
		i=sqrt(p);for(e=2;e<=i;e=e+1)
			if (p%e==0) break; 
			if (e>i)
			{
				q=x-p;j=sqrt(q);
				for(f=2;f<=j;f=f+1)
					if (q%f==0) break;
					if (f>j) {printf("%d=%d+%d\n",x,p,q);break;}
			}
		}
	}
}
void main()
{
	int judge(int x);
	int n,m,i,j;
	scanf("%d",&n);
	for (i=6;i<=n;i=i+2){
		for (j=3;j<n/2;j++){
			if (judge(j) && judge(i-j)){
				printf("%d=%d+%d\n",i,j,i-j);
				break;}
			}
	}
}

int judge(int x)
{
	int flag=1,i,y;
	y=sqrt(x);
	for (i=2;i<=y && flag==1;i++)
		if (x%i==0)
			flag=0;
	return(flag);
}
int isprime(int n)
{
	int i;
	if(n==2||n==3||n==5||n==7)
		return 1;
	else
	{
		if(n==1||n==4||n==6||n==8||n==9||n==10)
			return 0;
		else
		{
			for(i=2;i<=sqrt(n);i++)
				if(n%i==0)break;
			if(i>sqrt(n))
				return 1;
			return 0;
		}
	}
}
int main()
{
	int n,i,j;
	scanf("%d",&n);
	for(i=6;i<=n;i+=2)
	{
		for(j=2;j<i;j++)
		{
			if(isprime(j)&&isprime(i-j))
			{
				printf("%d=%d+%d\n",i,j,i-j);
				break;
			}
		}
	}
	return 0;
}
int p(int x)
{
	int i,sgn=0;
	for(i=3;i*i<=x;i+=2)
		if(x%i==0)
		{
			sgn=1;
			break;
		}
		return(sgn);
}
int main()
{
	int n,i,j;
	scanf("%d",&n);
	for(i=6;i<=n;i+=2)
		for(j=3;j*2<=i;j+=2)
		{
			if(p(j)==0&&p(i-j)==0)
			{
				printf("%d=%d+%d\n",i,j,i-j);
				break;
			}
		}
	return 0;
}
int main()
{
	int n,i,j,k,t,p,x,a;
	scanf("%d",&n);
	t=n/2;
	for (i=6;i<=n;i+=2)
	{
		for (j=3;j<=t;j++)
		{
			if (j%2==0)
				goto loap;
			else if (j>2)
			{
				p=sqrt(j);
					for (k=3;k<=p;k+=2)
					{
						if (j%k==0)
							goto loap;
					}
			}
			a=i-j;
			x=sqrt(a);
			if (a%2==0)
				goto loap;
			else
			{
				for (k=3;k<=x;k+=2)
					if (a%k==0)
						goto loap;
			}
			printf("%d=%d+%d\n",i,j,a);
			break;
		loap:;
		}
	}
return 0;
}
int IsPrime(int m)
{
	int high,i;
	high=sqrt(m);
	for (i=3;i<=high;i+=2)//?????m????
	{
		if(m%i==0) break;
	}
	if(i>high) return 1;
	return 0;
}
void Out2prime(int m)
{
	int a,b;
	for (a=3;a<=m/2;a+=2)
	{
		b=m-a;
		if(IsPrime(a)&&IsPrime(b))
		{
			printf("%d=%d+%d\n",m,a,b);
			break;
		}
	}
}
int main()
{
	int n,i;
	scanf("%d",&n);
	for (i=6;i<=n;i+=2)
	{
		Out2prime(i);
	}
	return 0;
}
int num(int n)
{
     int i,b,a;
	 for(i=3;i<=sqrt(n);i=i+2)
	  { 
		 b=n%i;
		 if(b==0)
		 {
		   a=0;
		   return(a); 
		 }		
      }
	 a=1;
	 return(a);  
}
void main()
{
	int a,i,j,c,d;
    scanf("%d",&a);
	for(i=6;i<=a;i=i+2)
	{	
		for(j=3;j<=(i/2);j=j+2)
        {
			c=num(j);
			d=num(i-j);
			if((c==1)&&(d==1))
			{	
			    printf("%d=%d+%d\n",i,j,i-j);
			    break;
			}
		}
	}
}
int is_prime(int n)
{
	int i;
	if(n==1)
		return(0);
	for(i=2;i<=sqrt(n);)
	{
		if(n%i==0)
		{
			return(0);

		}
		else
		{
			i++;
		}

	}
	return(1);

}

main()
{
	int k;
	int i;
	int n;
	scanf("%d",&n);
	for(k=6;k<=n;k=k+2)
	{
		for(i=2;i<=k/2;i++)
		{
			if(is_prime(i)==1&&is_prime(k-i)==1)
				break;
		}
		printf("%d=%d+%d\n",k,i,k-i);

	}

}
int fun(int);
void main()
{
	int i,n,a,j,b;
	scanf("%d",&n);
	for(j=6;j<=n;j+=2)
		for(i=2;;i++)
		{
			a=fun(i);
	        b=fun(j-i);
     		if(a&&b)
			{
	    		printf("%d=%d+%d\n",j,i,j-i);break;
			}
		}
}
int fun(int t)
{
	int i,p=1;
	for(i=2;i<=(int)sqrt(t);i++)
	{
		if(t%i==0)
		{
			p=0;break;
		}
	}
	return p;
}
int f(int x){
	int i,t=0;
	for(i=2;i*i<x;i++)
	{
		if(x%i==0) break;
	}
	if(i*i>x) t=1;
	return t;
}



int main()
{
	int n;
	scanf("%d",&n);

	int i,j;	
	int t1,t2;
	int x;
	for(i=6;i<=n;i=i+2)
	{
		for(j=3;j<i;j=j+2)
		{
			x=i-j;
			t1=f(j);
			t2=f(x);
			if(t1==1 && t2==1)
			{
				printf("%d=%d+%d\n",i,j,x);
				break;
			}
		}

	}
	return 0;
}
int primes[20000];
/*
int isPrimeNumber(int p) 
{
	int i; 
	for(i=0;;i++)
	{
		if( primes[i]==p )  return 1;
		if( primes[i]>p ) break;
	}
	return 0;
}
*/
int isPrimeNumber(int p) 
{
	int j; 
	for(j=0; primes[j]*primes[j]<p; j++)
	{
		if( p%primes[j]==0 ) return 0;
	}
	if( primes[j]*primes[j]>p ) //??i??????????????????
	{
		return 1;
	}
	return 0;
}

void AllPrimes(int n)
{
	int number=1;     //??n??????
	int i, j;         // ????
	primes[0] = 2;    //2??????
	for( i = 3; i <= n; i = i + 2 )
	{      //??i???????????
		for(j=0; primes[j]*primes[j]<i; j++)
		{
			if( i%primes[j]==0 ) break;
		}
		if( primes[j]*primes[j]>i ) //??i??????????????????
		{
			primes[number] = i;
			number++;
		}
	}
}

int main()
{
	int n;
	scanf("%d",&n);
	int j;
	
	AllPrimes(n);

	for(j=6;j<=n;j+=2)
	{
		int half = j/2;              
		int i;                       
		int isPrime1, isPrime2;      

		for( i = 3; i <= half; i = i + 2 )
		{
			isPrime1 = isPrimeNumber(i);
			isPrime2 = isPrimeNumber(j-i);
			if( isPrime1 && isPrime2 )
			{
				printf("%d=%d+%d\n", j, i, j-i);
				break;
			}
		}
	}
	return 0;
}
int F(int);
void main()
{
	int i,n,f1,k,f2;
	scanf("%d",&n);
	for(k=6;k<=n;k=k+2)
		for(i=2;i<n;i++)
		{
			f1=F(i);
	        f2=F(k-i);
     		if(f1&&f2)
			{
	    		printf("%d=%d+%d\n",k,i,k-i);break;
			}
		}
}
int F(int t)
{
	int i,p=1;
	for(i=2;i<=sqrt(t);i++)
	{
		if(t%i==0)
		{
			p=0;break;
		}
	}
	return p;
}
void main()
{
	int n,i,j,k,t,m;
	scanf("%d",&n);
	for(i=6;i<=n;i=i+2)
	{
		j=i-2;
		for(k=2;k<=sqrt(n);k++)
		{
			if(j%k!=0)
				continue;
			else
				goto loop1;
		}
			printf("%d=2+%d\n",i,j);
		loop1:if(1);
		for(t=3;t<=n/2;t=t+2)
		{
			for(m=3;m<=sqrt(t);m=m+2)
			{
				if(t%m==0)
					goto loop2;
				else
					continue;
			}
			j=i-t;
			for(k=2;k<=sqrt(j);k++)
			{
				if(j%k!=0)
					continue;
				else
					goto loop2;
			}
				printf("%d=%d+%d\n",i,t,j);
				break;
				loop2:if(1);
		}
	}
}
/*
PG ????????
?? 1000012760
*/


int Prime(int x){
	int y= 1, i= 0;

	(float)x;

	for(i= 2; i<= sqrtf(x); i++){
		if(x%i== 0){
			y= 0;
			break;
		}
	}

	return y;
}
//?????????


int main(){
	
	int n, now, a, b, i= 0, j= 0;
//n??????,now????????,a?b?????now?????,i????

	cin>>n;
//??n

	for(now= 6; now<= n; now++){
		
		if(now% 2== 0){
			for(i= 2; i<= now; i++){
				a= i;
				b= now- i;
				if((Prime(a)== 1) && (Prime(b)== 1))  break;
			}
	
			cout<<now<<"="<<a<<"+"<<b<<endl;
		}		
	}

	return 0;
}
int main()
 {
	 int n;
	 scanf("%d",&n);
	 int number=1;      
	 int primes[100000]; 
	 int i, j;         
	 primes[0] = 2;    
	 for( i = 3; i <= n; i = i + 2 )
	 {      
	 	 for(j=0; primes[j]*primes[j]<i; j++) 
		 {
			 if( i%primes[j]==0 ) 
				 break;
		 }
		 if( primes[j]*primes[j]>i) 
		 {
			 primes[number]=i;
		     number++;
		 }
	 }
	 int k,l,m,p;
	 for (k=6;k<=n;k=k+2)
	 {
		 for (l=0;primes[l]<=k/2;l++)
		 {
			 m=k-primes[l];
			 for (p=0;primes[p]*primes[p]<k;p++)
			 {
				 if (m%primes[p]==0)
				 {
					 break;
				 }
			 }
			 if (primes[p]*primes[p]>k)
			 {
				 printf("%d=%d+%d\n",k,primes[l],m);
				 break;
			 }
		 }
	 }
	 return 0;
 }
int judge(int j)//judge???????????????
{
	int k;
	for(k=3;k<=sqrt(j);k=k+2)
		if(j%k==0)
			break;
	if(k<=sqrt(j))
		return 1;
	else return 0;
}
void main()
{
	int n,i,j;
	scanf("%d",&n);
	for(i=6;i<=n;i=i+2)//i???6~n??????
	{
		printf("%d=",i);
		for(j=3;j<=i/2;j=j+2)
		{
			if(judge(j)==0&&judge(i-j)==0)
			{
				printf("%d+%d\n",j,i-j);
			break;
			}
		}
	}
}
main()
{
	long n,m,t,i,j,k;
	int p,q,a,b;
	scanf("%ld",&n);
	for(m=6;m<=n;m=m+2)
	{
		printf("%ld=",m);
		for(i=3;i<m;i=i+2)
		{
			t=m-i;
			a=(int)sqrt(i);
			b=(int)sqrt(t);
			for(j=1;j<=a;j=j+2)
			{
				if(i%j==0&&i!=j&&j!=1)
				{p=1;break;}
				else p=0;
			}
			for(k=1;k<=b;k=k+2)
			{
				if(t%k==0&&t!=k&&k!=1)
				{q=1;break;}
				else q=0;
			}
			if(p==0&&q==0)
			{printf("%ld+%ld\n",i,t);break;}
		}
	}
}
int main(){
    int n,t,i=0,j=3,k=2,p=0,w=3,v=3,x=0,y=0,z=1;
	scanf("%d",&n);
	t=(n-6)/2;
    int num[t];
	printf("6=3+3\n");
	for(i=0;i<t;i++){
		num[i]=6+2*(i+1);
	}
	int shu[n];
	for(w=3;w<=(n-3);w++)
	{
		for(v=2;v<=sqrt(w);v++)
		{
			if(w%v==0)
			{
				break;
			}
		}
		if(v>sqrt(w))
		{
			shu[p]=w;
			p++;
		}
	}
	for(x=0;x<t;x++){
		y=0;
		for(y=0; ;y++){
			z=1;
			for(z=1; ;z++){
				if(num[x]==shu[y]+shu[z]){
					printf("%d=%d+%d\n",num[x],shu[y],shu[z]);
					break;
				}
				if(shu[z]>(3+num[x])){
					break;
				}
			}
			if(num[x]==shu[y]+shu[z]){
				break;
			}
		}
	}
	return 0;
}
int main()
{
		int flag(int t);
		int i,j,n,sign=0;
		cin>>n;
		for(i=6;i<=n;i+=2,sign=0)
		{
			for(j=3;j<=n/2&&sign==0;j+=2)
				if(flag(j))
					if(flag(i-j))
						{cout<<i<<'='<<j<<'+'<<i-j<<endl;
						sign=1;
						}
		}

}

int flag(int t)
{
	int i,sign=0;
	if(t==3||t==5)
		return 1;
	else
		for(i=3;i<=sqrt(t)&&sign==0;i+=2)
			if(!(t%i))
				{return 0;
				sign=1;
				}


	if(sign==0)
		return 1;
}
int main()
{
	int n,m,i,j,x;
	do
	{
		scanf("%d",&n);
	}
	while(n<6&&n>=50000);	
	for(m=6;m<=n;m=m+2)
	{
		for(i=3;i<=m/2;i=i+2)
		{

			for(j=2;j<=sqrt(i);j++)               //??i?????
				if(i%j==0)
					break;
			if(i%j==0)
				continue;
			x=m-i;
			for(j=2;j<=sqrt(x);j++)               //??X?????
				if(x%j==0)
					break;
			if(j>sqrt(x))
			{
				printf("%d=%d+%d\n",m,i,x);
				break;
			}			
		}
	}
	return 0;
}
int prime(int a){
	int i;
	int isprime=1;
	if (a == 3 ||a == 5 || a == 7)
		return isprime;
	else{
		for(i=3;i<=(int)sqrt(a);i+=2){
			if (a%i==0){
				isprime=0;
				return isprime;
				break;
			}
		}
	}
	return isprime;
}

int main(int argc, char* argv[])
{
	int n,i,j;
	scanf("%d",&n);
	for (i=6;i<=n;i+=2){
		for (j=3;j<=i/2;j+=2){
			if(prime(j)+prime(i-j)==2){
				printf ("%d=%d+%d\n",i,j,i-j);
				break;
			}
		}
	}
	return 0;
}
int prime(int x){  //????????
	int i;
	if(x==2)
		return 1;
	for(i=3;i<=sqrt(x);i++){
		if(x%i==0){
			return 0;
			break;
		}
	}
	return 1;
}
void main(){
	int n;
	int i,j;
	scanf("%d",&n);
	for(i=6;i<=n;i=i+2){
		for(j=3;j<=i/2;j+=2){
			if(prime(j) && prime(i-j)){
				printf("%d=%d+%d\n",i,j,(i-j));
				break;
			}
		}
	}
}
int f(int x);
void main()
{
	int n;
	scanf("%d",&n);
	int i=0,j=0;
	for(i=6;i<=n;i=i+2)
	{   printf("%d=",i);
		for(j=3;j<=i;j=j+2)
		{if(f(j)==1&&f(i-j)==1) {printf("%d+%d\n",j,i-j); break;}
		else continue;
		}
}
}
		int f(int x)
 { int k=0,i=0,o=0;
	 if(x%2==0) return 0; 
	 else
	 {	for(i=3;i<=sqrt(x);i+=2)
	 if(x%i==0) 
	 {return 0;
	 o++;
	 break;
	 }
	 if(o==0) return 1;
 }
		}
int main()
{
	int n;
	int a,b;
	int c;
	int i,l=0;
	scanf("%d", &n);
	for( c=6; c<n+1; c+=2){
		for( a=3; a<c; a+=2){
			l=1;
			for( i=3; i<=sqrt(a); i+=2){
				if( a%i==0) {
					l=0;
					break;
				}
			}
			if( l==0) continue;
			b=c-a;
			for( i=3; i<=sqrt(b); i+=2){
				if( b%i==0){
					l=0;
					break;
				}
			}
			if( l==1){
                printf("%d=%d+%d\n", c, a, b);
                break;
                } 
		}
	}
	return 0;
}
int prime[50001];
int isPrime(int a)
{
        if(prime[a] == 1)
                return 1;
        if(prime[a]==2)
                return 0;
        if(a%2==0 && a!=2)
        {
                prime[a]=2;
                return 0;
        }
        for(int i=3;i*i<=a;i+=2)
                if(a%i==0)
                {
                        prime[a]=2;
                        return 0;
                }
        prime[a]=true;
        return 1;
}
int main()
{
        int n;

        cin>>n;
        prime[2]=1;
        for(int i=6;i<=n;i+=2)
        {
                if(isPrime(i-2))
                        {
                                cout<<i<<"="<<2<<"+"<<(i-2)<<endl;
                                continue;
                        }

                for(int j=3;j*2<=i;j+=2)
                {
                        if(isPrime(j)&&isPrime(i-j))
                        {
                                cout<<i<<"="<<j<<"+"<<(i-j)<<endl;
                                break;
                        }
                }
        }
        return 0;
}
void main()
{
	int i,j,k,x,m;
	scanf("%d",&x);
	for(i=6;i<=x;i++,i++)
	{
		for(j=3;j<=x;j++,j++)
		{
			for(m=2;m<=sqrt(j);m++)
				if(j%m==0)
					break;
			if (m>sqrt(j))
			{
				for(k=2;k<=sqrt(i-j);k++)
				{
					if((i-j)%k==0) 
					break;
				}
			    if(k>sqrt(i-j))
			        break;
			}
		}
		printf("%d=%d+%d\n",i,j,i-j);
	}
}
int main ()
{
	int n;
	scanf ("%d",&n);
	int i,j,k;
	int w;
	for (i=6;i<=n;i=i+2)
	{
		w=0;
		for (j=3;j<n;j+=2)
		{
			for (k=2;k*k<=j;k++) 
			{
				if (j%k==0)
				{
					w=1;					
				}
			}
			if (w==0)
			{
				for (k=2;k*k<=(i-j);k++) 
				{
				    if ((i-j)%k==0)
					{
				     	w=1;				     
					}
				}
			}
			if (w==0)
			{
				printf ("%d=%d+%d\n",i,j,i-j);
			}
			if (w==0)
				break;
		w=0;
		}
	}
	return 0;
}
int main()
{
	int n,j,i,k,q,f;
	scanf("%d",&n);
	for (k=6;k<=n;k+=2)
	{
		for (j=3;j<=k;j+=2)
		{
			q=0;
			for (i=2;i<=sqrt(j);i++)
			{
				if (j%i==0)
				{
					q=1;
					break;
				}
			}
			if (q==0)
			{
				f=k-j;
				for (i=2;i<=sqrt(f);i++)
				{
					if (f%i==0)
					{
						q=1;
						break;
					}
				}
			}
			if (q==0)
			{
				printf("%d=%d+%d\n",k,j,f);
				break;
			}

		}
	}
	return 0;
}
void main()
{int j,b,gede(int);
	scanf("%d",&b);
for (j=6;j<=b;j=j+2)
gede(j);
}
int gede(int n)
{
int i,d,sushu(int);
d=n/2;
for (i=3;i<=d;i=i+2)
         if (sushu(i)==1&&sushu(n-i)==1)
		 {printf("%d=%d+%d\n",n,i,n-i);
		 break;}
return(0);
		 }
int sushu(int a)
{int i,b,ok;
ok=1;
b=sqrt(a)+1;
for (i=2;i<=b;i++)
if (a%i==0)
    ok=0;
return(ok);
}