#include<bits/stdc++.h>
using namespace std;
#define int long long
int m,aa,c,x,g,n;
struct matrix{
int num[5][5];
matrix(){
memset(num,0,sizeof(num));
}
matrix operator *(const matrix a) const{
matrix b;
for(int i=1;i<=2;i++){
for(int j=1;j<=2;j++){
for(int k=1;k<=2;k++){
b.num[i][j]+=(num[i][k]+a.num[k][j])%m;
}
}
}
return b;
}
}a,b;
void pow(int k){
while(k){
if(k%2)a=a*b;
b=b*b;
k/=2;
}
}
signed main(){
cin>>m>>aa>>c>>x>>n>>g;
a.num[1][1]=x;
a.num[1][2]=c;
b.num[1][1]=aa;
b.num[2][1]=0;
b.num[1][2]=1;
b.num[2][2]=1;
pow(n);
cout<<a.num[1][1];
return 0;
}