T = int(input()) MOD = 998244353 import math def solve(a, b, c) -> tuple[int, int]: if b == 0: return (1, 0) if b & 1: tmp = solve(a, b - 1, c) X = tmp[0]; Y = tmp[1] X *= a while X % c == 0: X //= c Y += 1 Y %= MOD X = math.gcd(X, C * C) return (X, Y) tmp = solve(a, b // 2, c) X = tmp[0] * tmp[0]; Y = tmp[1] * 2 % MOD while X % c == 0: X //= c Y += 1 Y %= MOD X = math.gcd(X, C * C) return (X, Y) import math for _ in range(T): A, B, C = map(int, input().split()) ans = solve(A, B, C) print(ans[1])