# include <iostream>
using namespace std;
void matpow(long double *m[],long double p)
{
if(p>1)
{matpow(m,p/2);
int i,j,k;
long double *g[2];
g[0]=new long double[2];
g[1]=new long double[2];
g[0][0]=g[0][1]=g[1][0]=g[1][1]=0;
for(i=0;i<2;++i)
for(j=0;j<2;++j)
for(k=0;k<2;++k)
g[i][j]+=(m[i][k]*m[k][j]);
if(p%2==1)
{m[0][0]=g[0][1];
m[0][1]=g[0][0]+g[0][1];
m[1][0]=g[1][1];
m[1][1]=g[1][0]+g[1][1];
}
else
{m[0][0]=g[0][0];
m[0][1]=g[0][1];
m[1][0]=g[1][0];
m[1][1]=g[1][1];
}
}
}
int main()
{
long double *m[2],t,i,a,b,n,sum;
cin>>t;
for(i=0;i<t;++i)
{
cin >>n;
if(n==1)
cout <<"0\n";
else
if(n==2)
cout <<"1\n";
else
{
m[0]=new long double[2];m[1]=new long double[2]; m[0][0]=0;m[0][1]=m[1][1]=1;m[1][0]=2;
matpow(m,n-2);
printf("%.0Lf\n",m[1][1]);}}}
IyBpbmNsdWRlIDxpb3N0cmVhbT4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKdm9pZCBtYXRwb3cobG9uZyBkb3VibGUgKm1bXSxsb25nIGRvdWJsZSBwKQogIHsKICAgaWYocD4xKQogICAge21hdHBvdyhtLHAvMik7CiAgICAgaW50IGksaixrOwogICAgIGxvbmcgZG91YmxlICpnWzJdOwogICAgIGdbMF09bmV3IGxvbmcgZG91YmxlWzJdOwogICAgIGdbMV09bmV3IGxvbmcgZG91YmxlWzJdOwogICAgIGdbMF1bMF09Z1swXVsxXT1nWzFdWzBdPWdbMV1bMV09MDsKICAgICBmb3IoaT0wO2k8MjsrK2kpCiAgICAgIGZvcihqPTA7ajwyOysraikKICAgICAgIGZvcihrPTA7azwyOysraykKICAgICAgICBnW2ldW2pdKz0obVtpXVtrXSptW2tdW2pdKTsKICAgICBpZihwJTI9PTEpCiAgICAgIHttWzBdWzBdPWdbMF1bMV07CiAgICAgICBtWzBdWzFdPWdbMF1bMF0rZ1swXVsxXTsKICAgICAgIG1bMV1bMF09Z1sxXVsxXTsKICAgICAgIG1bMV1bMV09Z1sxXVswXStnWzFdWzFdOwogICAgICB9CiAgICAgZWxzZQogICAgICB7bVswXVswXT1nWzBdWzBdOwogICAgICAgbVswXVsxXT1nWzBdWzFdOwogICAgICAgbVsxXVswXT1nWzFdWzBdOwogICAgICAgbVsxXVsxXT1nWzFdWzFdOwogICAgIAogICAgfQogICB9Cn0KaW50IG1haW4oKQogIHsKICAgbG9uZyBkb3VibGUgKm1bMl0sdCxpLGEsYixuLHN1bTsKICAgY2luPj50OwogICBmb3IoaT0wO2k8dDsrK2kpCiAgICB7CiAgICAgY2luID4+bjsKICAgICBpZihuPT0xKQogICAgICBjb3V0IDw8IjBcbiI7CiAgICAgZWxzZQogICAgICBpZihuPT0yKQogICAgICAgY291dCA8PCIxXG4iOwogICAgICBlbHNlCiAgICAgICB7CiAgICAgICAgbVswXT1uZXcgbG9uZyBkb3VibGVbMl07bVsxXT1uZXcgbG9uZyBkb3VibGVbMl07IG1bMF1bMF09MDttWzBdWzFdPW1bMV1bMV09MTttWzFdWzBdPTI7Cm1hdHBvdyhtLG4tMik7CnByaW50ZigiJS4wTGZcbiIsbVsxXVsxXSk7fX19Cg==
prog.cpp: In function ‘void matpow(long double**, long double)’:
prog.cpp:16: error: invalid operands of types ‘long double’ and ‘int’ to binary ‘operator%’
prog.cpp: In function ‘int main()’:
prog.cpp:33: warning: unused variable ‘a’
prog.cpp:33: warning: unused variable ‘b’
prog.cpp:33: warning: unused variable ‘sum’