#N, M = list(map(int, input().split())) N, M = [1, 0] lim0 = 0.000001 nums0 = tuple([i + 1 for i in range(N)]) #print("nums0", nums0) stack = {nums0: {M}} if nums0 == (1) & M ==0: print("Impossible") exit() while stack != {}: nums, Ms = stack.popitem() #print(nums, set(nums)) nums = set(nums) if nums == set(): for j in Ms: if abs(j) < lim0: print("Possible") exit() else: for ni in nums: for mi in Ms: temp = {mi + ni, mi * ni, mi - ni, ni - mi, mi/ ni} if mi != 0: temp.add(ni / mi) try: #print("curent",stack[tuple(nums - {ni})], "addition", temp ) stack[tuple(nums - {ni})] = stack[tuple(nums - {ni})] | temp except KeyError: stack[tuple(nums - {ni})] = temp #print("stack: ", stack) print("Impossible")