#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
****************************************************************/