1 #include <iostream>
2 #include <cstdio>
3 #include <cmath>
4 #include <algorithm>
5 #include <vector>
6 #define ll unsigned long long
7 using namespace std;
8
9 ll qmod(ll a, ll b, ll mod)
10 {
11 ll ans = 1;
12 a = a%mod;
13 while (b)
14 {
15 if (b & 1)
16 {
17 ans = (ans*a) % mod;
18 }
19 b = b / 2;
20 a = (a*a) % mod;
21 }
22 return ans;
23 }
24
25 int main()
26 {
27 int t;
28 cin >> t;
29 while (t--)
30 {
31 ll a, b, n, cnt;
32 cin >> a >> b >> n;
33 cnt = 0;
34 vector <ll> fib;
35 fib.push_back(0);
36 fib.push_back(1);
37 for (int i = 2; i <= n*n; i++)
38 {
39 fib.push_back((fib[i - 1] + fib[i - 2]) % n);
40 cnt++;
41 if (fib[i] == 1 && fib[i - 1] == 0)
42 {
43 break;
44 }
45 }
46 if (n != 1)
47 cout << fib[qmod(a, b, cnt)] << endl;
48 else
49 {
50 cout << "0" << endl;
51 }
52 }
53 //system("pause");
54 return 0;
55 }