class Solution: def solve(self, a: int, b: int, p: int): result = 1 smod = a % p runnum = b while runnum > 0: if runnum % 2 == 0: runnum = runnum >> 1 smod = (smod * smod) % p else: runnum -= 1 result = result * smod % p print(result) def calHalf(self, a: int): b = 0 while a > (b + b): b += 1 return b if __name__ == '__main__': q = input() # 输入行信息 q = int(q) solution = Solution() for _ in range(q): message = input() spinfo = message.split(" ") a = int(spinfo[0]) b = int(spinfo[1]) p = int(spinfo[2]) solution.solve(a, b, p)