#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("iepuri.in");
ofstream cout("iepuri.out");
const int MOD=666013;
int r[5][5],a[5][5],fibo2[5][5],rez[5][5];
int aux[5][5];
void inmultirea_matricelor(int x[5][5], int y[5][5], int z[5][5], int n, int m, int p)
{
int i,j,k;
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
aux[i][j]=0;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
long long s=0;
for(k=1;k<=p;k++)
{
s+=(1LL*x[i][k]*y[k][j])%MOD;
}
aux[i][j]=s%MOD;
}
}
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
z[i][j]=aux[i][j];
}
void exp_rapida(long long n)
{
int i,j;
n=n-2;
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
if(i==j)
r[i][j]=1;
else
r[i][j]=0;
while(n>0)
{
if(n%2==1)
inmultirea_matricelor(r,a,r,3,3,3);
inmultirea_matricelor(a,a,a,3,3,3);
n=n/2;
}
}
int main()
{
int t,i;
cin>>t;
for(i=1;i<=t;i++)
{
long long X,Y,Z,A,B,C,n;
cin>>X>>Y>>Z>>A>>B>>C>>n;
if(n==1)
{
cout<<X;
}
else if(n==2)
{
cout<<Y;
}
else if(n==3)
{
cout<<Z;
}
else
{
a[1][1]=0; a[1][2]=1; a[1][3]=0;
a[2][1]=0; a[2][2]=0; a[2][3]=1;
a[3][1]=C; a[3][2]=B; a[3][3]=A;
exp_rapida(n); ///pt matricea r;
fibo2[1][1]=X; fibo2[2][1]=Y; fibo2[3][1]=Z;
inmultirea_matricelor(r,fibo2,rez,3,1,3);
cout<<rez[3][1]<<"\n";
}
}
return 0;
}