from bisect import bisect_right K, Q = map(int, input().split()) def ceildiv(x, y): return (x + y - 1) // y lst = [1] MAX = 10**18 while lst[-1] <= MAX: # y = x - (x + K - 1) // K # x = y * K / (K - 1) x = ceildiv(lst[-1] * K, K - 1) lst.append(x) for _ in range(Q): n = int(input()) print(lst[bisect_right(lst, n) - 1])