#include<iostream>
#include<fstream>
using namespace std;
long long x,y,z;
long long a1,b1,c1;
long long n;
ofstream g("iepuri.out");
void inmultire(long long a[3][3],long long b[3][3],long long c[3][3])
{
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
for(int q=0;q<3;q++)
c[i][j]=(c[i][j]+a[i][q]*b[q][j])%666013;
}
void ridicare(long long a[3][3],long long rez[3][3],long long d[3][3])
{ n=n-2;
while(n)
{
if(n%2)
{
inmultire(a,rez,d);
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
{rez[i][j]=d[i][j];
d[i][j]=0;}
n--;
}
inmultire(a,a,d);
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
{
a[i][j]=d[i][j];
d[i][j]=0;
}
n=n/2;
}
g<<(x*rez[0][2]+y*rez[1][2]+z*rez[2][2])%666013<<endl;
}
int main()
{
ifstream f("iepuri.in");
ofstream g("iepuri.out");
int t;
f>>t;
while(t)
{
long long a[3][3]={0,0,1,1,0,1,0,1,1};
long long d[3][3]={0,0,0,0,0,0,0,0,0};
long long rez[3][3]={1,0,0,0,1,0,0,0,1};
f>>x>>y>>z>>a1>>b1>>c1;
f>>n;
a[0][2]=c1;
a[1][2]=b1;
a[2][2]=a1;
ridicare(a,rez,d);
t--;
}
}