import sys from collections import * from functools import cache, partial from itertools import * from pprint import pprint from typing import Any, Final try: from icecream import ic except ImportError: # Graceful fallback if IceCream isn't installed. ic = lambda *a: None if not a else (a[0] if len(a) == 1 else a) # noqa debug = partial(print, file=sys.stderr) dpprint = partial(pprint, stream=sys.stderr) sys.setrecursionlimit(10 ** 6) MOD=998244353 N: Final = int(input()) LR = [] for _ in range(N): L, R = map(int, input().split()) LR.append((L, R)) ic(LR) ans = 0 for P in permutations(range(N)): # ic(P) is_ok = True for pi, pj in zip(P, P[1:]): # ic(pi, pj) if LR[pi][0] > LR[pj][1]: is_ok = False if is_ok: # ic([p + 1 for p in P]) ans += 1 print(ans)