p, q = map(int, input().split()) if p == 1: print('Impossible') exit() print('Possible') K = q // p r = q % p L = max((K * p + r - 1) // r, ((K + 1) * p + p - r - 1) // (p - r)) L = (L + p - 1) // p * p ln = 2 * K * (K + 1) + L * K + L // p * r print(ln) for i in range(K + 1): x = i * L for dx in range(i): print(x + dx, i) for y in range(i, -(K - i), -1): print(x + i, y) if i < K: for dx in range(i, L - (i + 1)): print(x + dx, -(K - i)) for y in range(-(K - i), i + 1): print(x + L - (i + 1), y) for dx in range(L - (i + 1), L): print(x + dx, i + 1) else: for dx in range(i, L * r // p + 1): print(x + dx, 0)