#include <iostream>
#include <string>

using namespace std;

template < int N >
struct Fib
{
    static const int v = (Fib<N-1>::v + Fib<N-2>::v) % 1000000007;
};

template < >
struct Fib<0>
{
    static const int v = 1;
};

template < >
struct Fib<1>
{
    static const int v = 1;
};

int main()
{
    cout << Fib<0>::v << "\n";
    cout << Fib<1>::v << "\n";
    cout << Fib<2>::v << "\n";
    cout << Fib<3>::v << "\n";
    cout << Fib<4>::v << "\n";
    cout << Fib<5>::v << "\n";
    cout << Fib<6>::v << "\n";
    return 0;
}
