#include <bits/stdc++.h>
using namespace std;
bool sushu(int n){
bool f = true;
int i;
for(i = 2;i <= sqrt(n);i++){
if(n % i == 0){
f = false;
break;
}
}
if(n <= 1){
f = false;
}
return f;
}
int main(){
int a[100][3];
int n,i,j,c = 0,x;
cin>>n;
for(i = 2;i <= n / 3;i++){
if(sushu(i)){
x = n - i;
for(j = i;j <= x / 2;j++){
if(sushu(j) && sushu(x - j)){
a[c][0] = i;
a[c][1] = j;
a[c][2] = x - j;
c++;
}
}
}
}
cout<<c<<endl;
for(i = 0;i < c;i++){
cout<<n<<"="<<a[i][0]<<"+"<<a[i][1]<<"+"<<a[i][2]<<endl;
}
}
/**************************************************************
Problem: 1273
User: linmiaoling
Language: C++
Result: Accepted
Time:11 ms
Memory:2072 kb
****************************************************************/