/*
#include<stdio.h>
int f(int x)
{
if(x==0) return ;
else
{
f(x-1);
g(x);
}
}
int g(int x)
{
if(x==0)
{
printf("\n");
return 0;
}
else printf("*");
g(x-1);
}
int main()
{
int x;
scanf("%d",&x);
f(x);
}
*/
/*
#include<stdio.h>
int memo[10000] = {0};
int pibo(int k) {
if(k ==1 || k == 2) {
return memo[k] = 1;
}
if(memo[k] != 0) {
return memo[k]%10009;
}
return memo[k] = (pibo(k-1)%10009 + pibo(k-2)%10009)%10009;
}
int main() {
int x;
scanf("%d", &x);
printf("%d", pibo(x));
}
*/
/*
#include<stdio.h>
int where[51][51]={0};
int f(int x,int y)
{
if(x==1||y==1)
{
return where[x][y] = 1;
}
if(where[x][y]!=0)
{
return where[x][y];
}
return where[x][y]=(f(x-1,y)+f(x,y-1))%100000000;
}
int main()
{
int x,y;
scanf("%d %d",&x,&y);
printf("%d",f(x,y));
}
*/
/*
#include<stdio.h>
int map[250] = {0};
int f(int x)
{
if(x ==1 || x == 2)
{
return map[x] = 1;
}
if(map[x] != 0)
{
return map[x]%10009;
}
return map[x] = (f(x-1)%10009 + f(x-2)%10009)%10009;
}
int main()
{
int x;
scanf("%d", &x);
printf("%d", f(x));
}
*/
/*
참고용 입니다
#include<stdio.h>
int main()
{
int i,x,a=0,b=1,c;
scanf("%d",&x);
for (i=0;i<x;i++)
{
c=b;
b=a+b;
a=c;
}
printf("%d",b%100000007);
return 0;
}
*/
#include<stdio.h>
int f(int x)
{
}
int main()
{
int x;
scanf("%d",&x);
printf("%d",f(x)%100000007);
return 0;
}