#include<iostream>
#include<cstring>
using namespace std;

const int maxn=1000005;
int dp[maxn];

int fib(int n)
{
    if(n==1||n==2)
        return dp[n];
    else
        return dp[n-1]+dp[n-2];
}

int main()
{
    int n;
    while(cin>>n)
    {
       memset(dp,0,sizeof(dp));//memset参数
       dp[1]=dp[2]=1;
       for(int i=2;i<=n;i++)
       {
            //求dp数组
           dp[i]=(dp[i-1]%10007+dp[i-2]%10007);
       }
       cout<<fib(n)%10007<<endl;
    }
    return 0;
}