缩小社交圈

题目描述

社交圈子里有 $n$ 个人,每个人都有一个 SAN 值范围 $[l_i,r_i]$。当两个人的 SAN 值交集不为空时,这两个人有 PY 关系。 现在希望从社交圈子里面挑选出一些人组成一个集合 $S$,如果将所有集合内的人中有 PY 关系的那一对人都连上边,则 $S$ 刚好成为一个树(森林不行哦)。 请问,有多少种可以选择的方案?由于答案可能很大,请对 $10^{9}+7$ 取模。

输入输出格式

输入格式


第一行一个整数 $n$。 接下来 $n$ 行,每行 2 个整数,表示这个人的 SAN 值区间。

输出格式


一行一个整数,表示答案。

输入输出样例

输入样例 #1

3
1 5
2 7
4 8

输出样例 #1

6

说明

对于20%的数据,满足 $n \leq 18$ 。 对于40%的数据,满足 $n \leq 50$ 对于60%的数据,满足 $n \leq 200$ 对于100%的数据,满足 $n \leq 2000,1 \leq l_{i} <r_{i} \leq 4000 $