import Control.Monad import Data.List rInteger :: String -> Integer rInteger = read solve :: [[Integer]] -> Integer solve (_:[]) = 0 solve xs = iter (head xs) xs + solve (tail xs) where iter _ [] = 0 iter x (y:ys) | c1 && c2 = 1 + iter x ys | otherwise = iter x ys where b1 = last x c1 = b1 > head y c2 = b1 < last y main = do [n, m] <- map read . words <$> getLine ls <- sort . map (\ [x, y] -> if x > y then [y, x] else [x, y]) . map (map rInteger . words) <$> replicateM n getLine print $ solve ls