import java.util.*;
import java.lang.*;
import java.io.*;
class Main
{
{
int t
=Integer.
parseInt(st.
nextToken()); for(int i=0;i<t;i++){
int a
=Integer.
parseInt(st.
nextToken()); int d
=Integer.
parseInt(st.
nextToken()); long r
=Long.
parseLong(st.
nextToken()); int n
=Integer.
parseInt(st.
nextToken()); int m
=Integer.
parseInt(st.
nextToken()); int rpow=n/2;
if(n%2!=1)rpow-=1;
int ans=0;
long deva=r;
for(int j=1;j<rpow;j++){
ans+=(d*deva)%m;
deva*=r;
}
ans+=(a*deva)%m;
ans+=(d*deva)%m;
if(n%2==0)ans+=(d%m);
}
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBNYWluCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCUJ1ZmZlcmVkUmVhZGVyIGJyID0gbmV3IEJ1ZmZlcmVkUmVhZGVyKCAKICAgICAgICAgICAgbmV3IElucHV0U3RyZWFtUmVhZGVyKFN5c3RlbS5pbikpOyAKICAKICAgICAgICBTdHJpbmdUb2tlbml6ZXIgc3QgCiAgICAgICAgICAgID0gbmV3IFN0cmluZ1Rva2VuaXplcihici5yZWFkTGluZSgpKTsKICAgICAgICBpbnQgdD1JbnRlZ2VyLnBhcnNlSW50KHN0Lm5leHRUb2tlbigpKTsKICAgICAgICBmb3IoaW50IGk9MDtpPHQ7aSsrKXsKICAgICAgICAJc3Q9bmV3IFN0cmluZ1Rva2VuaXplcihici5yZWFkTGluZSgpKTsKICAgICAgICAJaW50IGE9SW50ZWdlci5wYXJzZUludChzdC5uZXh0VG9rZW4oKSk7CiAgICAgICAgCWludCBkPUludGVnZXIucGFyc2VJbnQoc3QubmV4dFRva2VuKCkpOwogICAgICAgIAlsb25nIHI9TG9uZy5wYXJzZUxvbmcoc3QubmV4dFRva2VuKCkpOwogICAgICAgIAlzdD1uZXcgU3RyaW5nVG9rZW5pemVyKGJyLnJlYWRMaW5lKCkpOwogICAgICAgIAlpbnQgbj1JbnRlZ2VyLnBhcnNlSW50KHN0Lm5leHRUb2tlbigpKTsKICAgICAgICAJaW50IG09SW50ZWdlci5wYXJzZUludChzdC5uZXh0VG9rZW4oKSk7CiAgICAgICAgCWludCBycG93PW4vMjsKICAgICAgICAJaWYobiUyIT0xKXJwb3ctPTE7CiAgICAgICAgCWludCBhbnM9MDsKICAgICAgICAJbG9uZyBkZXZhPXI7CiAgICAgICAgCWZvcihpbnQgaj0xO2o8cnBvdztqKyspewogICAgICAgIAkJYW5zKz0oZCpkZXZhKSVtOwogICAgICAgIAkJZGV2YSo9cjsKICAgICAgICAJfQogICAgICAgIAlhbnMrPShhKmRldmEpJW07CiAgICAgICAgCWFucys9KGQqZGV2YSklbTsKICAgICAgICAJaWYobiUyPT0wKWFucys9KGQlbSk7CiAgICAgICAgCVN5c3RlbS5vdXQucHJpbnRsbihhbnMlbSk7CiAgICAgICAgfQoJfQp9