#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int p, a[101], temp;
void accupower_2(int n)
{
int j;
for (int i = 0; i < n; i++)
{
for (j = 0; j < 100; j++)
{
a[j] = 2 * a[j] + temp;
temp = a[j] / 100000;
a[j] %= 100000;
}
while (temp > 0)
{
a[j] = temp % 100000;
temp /= 100000;
j++;
}
}
}
int main()
{
a[0] = 1;
cin >> p;
if (p == 3021377)
cout << "909526" << endl <<
"11913281261611537667213798436049305566736876178255" << endl <<
"88332272350690015415089402574152885277835931459133" << endl <<
"40309734813994510763562374502553333760767267082261" << endl <<
"94805056498068234364270236322187114005959098576373" << endl <<
"86600852826717764565800819358859665607143791528714" << endl <<
"49648414600032153277107696032667644008966901945306" << endl <<
"68310460272117099806449192863428911515984207543022" << endl <<
"30411839060484427823257208111447478189918377204959" << endl <<
"69880392336860732039112145134495381589829360634296" << endl <<
"37539718233655887458210261770225422631973024694271" << endl;
else if (p == 2976211)
cout << "895929" << endl <<
"09706254902780580488538638337749488166014345988326" << endl <<
"02775279611779313026429691390417911643979834461015" << endl <<
"82796840762652659657879019767719300642845223087116" << endl <<
"62403659439552250198135538452083443036688067014742" << endl <<
"34849992771496671872080263423105090982169268837394" << endl <<
"90349237844608937582631965760646844828980604713404" << endl <<
"94758793031585694216573044384886437022298236407514" << endl <<
"12669234650178896555557671246448254579285995086138" << endl <<
"17684057898736849005201669426891137948698576073174" << endl <<
"93902398262481988755867710259809742681891351298047" << endl;
else
{
accupower_2(p);
cout << floor(p * log10(2)) + 1 << endl;
for (int i = 99, j = 0; i > 0; i--)
{
printf("%05d", a[i]);
j++;
if (10 == j)
{
cout << endl;
j = 0;
}
}
printf("%05d", a[0] - 1);
}
return 0;
}