#include <stdio.h>
#include <stdlib.h> //atoi
#define L 8000
#define N 4000
int i, k;
int c;
void sp(int a[], int b, int c[]);
void ad(int d[], int e[], int f[]);
void dp(int s[], int n);
int main(int argc, char* argv[]){
int n= atoi(argv[1]);
int s[L];
int a[L];
s[0]= a[0]= 1;
for(k=1; k<=L; k++){
s[k]= a[k]= 0;
}
for(k=1; k<=N; k++){
sp(a,k,a);
ad(s,a,s);
}
dp(s,n);
return 0;
}
void sp(int a[], int b, int c[]){
int r= 0;
for(i=0; i<L; i++){
long w= a[i];
c[i]= (w+r)/b;
r= ((w+r)%b)*10;
}
}
void ad(int d[], int e[], int f[]){
c= 0;
for(i=L; i>=0; i--){
f[i]= d[i]+e[i]+c;
if(f[i]<10){
c= 0;
}else{
f[i]-= 10;
c= 1;
}
}
}
void dp(int s[], int n){
printf("%d.", s[0]+1);
for(i=0; i<n; i++){
if(i!=0 && i%50==0){
printf("\n ");
}
printf("%d", s[i+1]);
}
printf("\n");
}