import Control.Monad
import Data.Array
main = do
  [n,m] <- map read . words <$> getLine
  abs <- replicateM m $ map read . words <$> getLine
  let a = accumArray (flip (:)) [] (1,n) [x | [a,b] <- abs, x <- [(a,b),(b,a)]]
      f i v | length v == n-1 = 1
            | otherwise = sum [f j (i:v) | j <- a!i, notElem j v]
  print $ f 1 []