#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
int n,ans;
int a[10];
string s[100010];
int main()
{
scanf("%d",&n);
if(n<10)
{
printf("0");
return 0;
}
if(n==10)
{
printf("1\n1 1 1 1 1 1 1 1 1 1");
return 0;
}
for(a[0]=1;a[0]<=3;a[0]++)
for(a[1]=1;a[1]<=3;a[1]++)
for(a[2]=1;a[2]<=3;a[2]++)
for(a[3]=1;a[3]<=3;a[3]++)
for(a[4]=1;a[4]<=3;a[4]++)
for(a[5]=1;a[5]<=3;a[5]++)
for(a[6]=1;a[6]<=3;a[6]++)
for(a[7]=1;a[7]<=3;a[7]++)
for(a[8]=1;a[8]<=3;a[8]++)
for(a[9]=1;a[9]<=3;a[9]++)
if(a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9]==n)
{
++ans;
for(int i=0;i<9;i++) s[ans]=s[ans]+(char)(a[i]+'0')+" ";
s[ans]=s[ans]+(char)(a[9]+'0');
}
printf("%d\n",ans);
for(int i=1;i<=ans;i++)
cout<<s[ans]<<endl;
return 0;
}