def inv(a, b): if a == 1: return 1 else: return b + (-b * inv(b % a, a) + 1) // a T=int(input()) M=10**9+7 for _ in range(T): X,K=map(int,input().split()) print(pow(X,inv(K,M-1),M))