import sys sys.setrecursionlimit(10**7) def ii(): return int(input()) def ist(): return input().split() def mi(d=0): return map(lambda x:int(x)-d,input().split()) def lmi(d=0): return list(map(lambda x:int(x)-d,input().split())) INF = float("inf") def answer(s): print(s) exit() ################################################ n = ii() lr = [lmi() for _ in range(n)] visit = [False]*n def solve(before_min,before_index): if sum(visit) == n: visit[before_index] = False return 1 r = 0 for i in range(n): if not visit[i]: if before_min <= lr[i][1]: visit[i] = True r += solve(max(before_min,lr[i][0]),i) visit[before_index] = False return r print(solve(0,-1))