#Lutece0849. A^B%C

A^B%C

Migrated from Lutece 849 A^B%C

All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.

Description

经典的ABmodCA^B\bmod C问题可以用快速幂算法解决,先在考虑一个该问题的升级版。我们用如下函数生成一个nnkk进制数:

long long a[maxn];
void f(int seed,int n,int k,int p)
{
    a[0]=seed%k;
    for(int i=1;i<n;i++)
        a[i]=a[i-1]*p%k;
}

函数执行完毕后,a0a_0an1a_{n-1}依次从高位到低位表示这个数的每一位。

f(3,2,10,8)f(3,2,10,8)生成了十进制数3434f(3,3,2,7)f(3,3,2,7)生成二进制数111111f(8,3,8,8)f(8,3,8,8)生成88进制数000000,即00

令:

A=f(seedA,nA,kA,pA)A=f(seed_A,n_A,k_A,p_A)

B=f(seedB,nB,kB,pB)B=f(seed_B,n_B,k_B,p_B)

再给你一个十进制数CC,请计算出ABA^B的十进制答案模CC的结果。

Input

输入33行:

  • 第一行:seedA,nA,kA,pAseed_A,n_A,k_A,p_A
  • 第二行:seedB,nB,kB,pBseed_B,n_B,k_B,p_B
  • 第三行:CC

0seedA,seedB,pA,pB1090\leq seed_A, seed_B, p_A, p_B\leq 10^9

2kA,kB1092\leq k_A, k_B\leq 10^9

1nA,nB1061\leq n_A, n_B\leq 10^6

1C1091\leq C\leq 10^9

输入保证不会出现000^0

Output

输出一个数ansansans=ABans=A^B的十进制答案模CC0ansC10\leq ans\leq C - 1

Samples

1 2 10 2
2 1 10 5
10
4

Resources

2014 UESTC ACM Training for Math