def solve(n, q, st): answer = [] for s, t in st: ans = 0 term = 0 for j in range(32, -1, -1): if (not((s >> j) & 1)) and (t >> j) & 1: mid = 2 ** j * (s // (2 ** j)) + 2 ** j break ans = bin( - s).count('1') + bin(t).count('1') answer.append(ans) return answer n, q = map(int,input().split()) st = [list(map(int,input().split())) for _ in range(q)] answer = solve(n, q, st) for i in answer: print(i)