import sys

n, k = list(map(int, input().split()))

a = list(map(int, input().split()))



a.sort()

if a[-1] < k:

    print('IMPOSSIBLE')

    sys.exit(0)



seta = set(a)

if k in seta:

    print('POSSIBLE')

    sys.exit(0)

change = True

while change:

    change = False

    setb = seta.copy()

    sorteda = sorted(seta)

    mini = sorteda[0] if sorteda[0] != 0 else sorteda[1]

    for i in range(1, len(sorteda)):

        setb.add(sorteda[i] % mini)

    if len(setb) != len(seta):

        change = True

        seta = setb



mini = sorted(seta)[1]

a.reverse()



for i in a:

    if (k - i) % mini == 0:

        print('POSSIBLE')

        sys.exit(0)

print('IMPOSSIBLE')
import sys

n, k = list(map(int, input().split()))

a = list(map(int, input().split()))



a.sort()

if a[-1] < k:

    print('IMPOSSIBLE')

    sys.exit(0)



seta = set(a)

if k in seta:

    print('POSSIBLE')

    sys.exit(0)

change = True

lena = 0

while lena != len(seta):

    change = False

    sorteda = sorted(seta)

    mini = sorteda[0] if sorteda[0] != 0 else sorteda[1]

    for i in range(1, len(sorteda)):

        seta.add(sorteda[i] % mini)

    lena = len(seta)



mini = sorted(seta)[1]

a.reverse()



for i in a:

    if (k - i) % mini == 0:

        print('POSSIBLE')

        sys.exit(0)

print('IMPOSSIBLE')
import sys

n, k = list(map(int, input().split()))
a = list(map(int, input().split()))
a.sort()
if a[-1] < k:
    print("IMPOSSIBLE")
    sys.exit(0)
seta = set(a)
if k in seta:
    print("POSSIBLE")
    sys.exit(0)
change = True
while change:
    change = False
    setb = seta.copy()
    sorteda = sorted(seta)
    mini = sorteda[0] if sorteda[0] != 0 else sorteda[1]
    for i in range(1, len(sorteda)):
        setb.add(sorteda[i] % mini)
    if len(setb) != len(seta):
        change = True
        seta = setb
mini = sorted(seta)[1]
a.reverse()
for i in a:
    if (k - i) % mini == 0:
        print("POSSIBLE")
        sys.exit(0)
print("IMPOSSIBLE")

import sys

n, k = list(map(int, input().split()))
a = list(map(int, input().split()))
a.sort()
if a[-1] < k:
    print("IMPOSSIBLE")
    sys.exit(0)
seta = set(a)
if k in seta:
    print("POSSIBLE")
    sys.exit(0)
change = True
lena = 0
while lena != len(seta):
    change = False
    sorteda = sorted(seta)
    mini = sorteda[0] if sorteda[0] != 0 else sorteda[1]
    for i in range(1, len(sorteda)):
        seta.add(sorteda[i] % mini)
    lena = len(seta)
mini = sorted(seta)[1]
a.reverse()
for i in a:
    if (k - i) % mini == 0:
        print("POSSIBLE")
        sys.exit(0)
print("IMPOSSIBLE")

-while change: +lena = 0 +while lena != len(seta): -    setb = seta.copy() -        setb.add(sorteda[i] % mini) -    if len(setb) != len(seta): -        change = True -        seta = setb +        seta.add(sorteda[i] % mini) +    lena = len(seta)