import Control.Applicative
import Data.List
import qualified Data.ByteString.Char8 as BS
import Data.Maybe
readIntBS = fst . fromJust . BS.readInt

main = do
  [n,k] <- map read . words <$> getLine :: IO [Int]
  as <- sort . map readIntBS . BS.words <$> BS.getLine :: IO [Int]

  let
    m = maximum as
    d = foldl1 gcd as

  putStrLn $ if k <= m && k `mod` d == 0 then "POSSIBLE" else "IMPOSSIBLE"

