#include #define endl '\n' using namespace std; unsigned long long zbn=((long long)1<<32)-1; unsigned long long sta[35]={1}; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); freopen("power.in", "r", stdin); freopen("power.out", "w", stdout); unsigned long long a, b, c, d, n; cin>>a>>b>>c>>d>>n; b=((b*c+d)&(zbn)); unsigned long long ans=0; sta[1]=a; for(int i=2; i<34; i++) sta[i]=((sta[i-1]*sta[i-1])&zbn); for(int i=1; i<=n; i++) { if(a%2 || b<32) { unsigned long long ans2=1, j=1, pz=b; while(pz>0) { if(pz&1) {ans2*=sta[j]; ans2=(ans2&zbn);} pz=(pz>>1); j++; } ans=(ans^ans2); } b=((b*c+d)&(zbn)); } cout<