/*
复习大数问题;
*/
#include <iostream>
#include <cstdlib>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <string>
#include <iomanip>
using namespace std;
int num[1005][55];
void add(int *a, int *b,int *c)
{
int p = 0;
int i;
int minnum = (a[0]<b[0])?a[0]:b[0];
for(i = 1; i <= minnum; i++)
{
c[i] = (a[i]+b[i]+p)%10000;
p = (a[i]+b[i])/10000;
}
if(a[0]>b[0])
{
for( ; i <= a[0]; i++)
{
c[i] = (a[i] + p)%10000;
p = (a[i] + p)/10000;
}
c[0] = a[0];
if(p)
{
c[i] = p;
c[0]++;
}
}
else
if(a[0]=b[0])
{
c[0] = a[0];
if(p)
{
c[i] = p;
c[0]++;
}
}
else
if(a[0]<b[0])
{
c[0] = b[0];
for( ; i <= b[0]; i++)
{
c[i] = (b[i] + p)%10000;
p = (b[i] + p)/10000;
}
if(p)
{
c[i] = p;
c[0]++;
}
}
}
void prin_num(int *a)
{
printf("%d",a[a[0]]);
if(a[0] > 1)
for(int i = a[0]-1; i >= 1; i--)
printf("%04d",a[i]);
printf("\n");
}
void set()
{
num[1][0] = 1, num[1][1] = 1;
num[2][0] = 1, num[2][1] = 1;
for(int i = 3; i <= 1000; i++)
{
add(num[i-1], num[i-2],num[i]);
}
}
int main(int argc, char *argv[])
{
set();
int n,p;
scanf("%d",&n);
while(n--)
{
scanf("%d",&p);
prin_num(num[p]);
}
return 0;
}