T = int(input()) for _ in range(T): X,M = input().split() M = int(M) ans = -1 for keta in range(len(X),19): tmp = ["_"] * keta for i in range(len(X)): tmp[i] = X[i] tmp[-i-1] = X[len(X)-1-i] tmp = "".join(tmp) if not (tmp.startswith(X) and tmp.endswith(X)):continue if("_" not in tmp): if(int(tmp)%M == 0): ans = int(tmp) break continue MOD = (int(X) + int(X) * 10**(keta - len(X))) % M nokori = (M - MOD) % M if(nokori == 0): ans = int(tmp.replace("_","0")) break elif(nokori%10 != 0): continue if(pow(10,len(X),M) == 0):continue MIN = 0 * 10**len(X) MAX = 10**(keta - 2*len(X)) - 1 try: x = nokori * pow(10,-len(X),M) % M except: continue if(x > MAX):continue length = tmp.count("_") new = "0" * (length - len(str(x))) + str(x) ans = tmp.replace("_"*length,new) break print(ans)