#include using namespace std; typedef signed long long ll; #undef _P #define _P(...) (void)printf(__VA_ARGS__) #define FOR(x,to) for(x=0;x<(to);x++) #define FORR(x,arr) for(auto& x:arr) #define ITR(x,c) for(__typeof(c.begin()) x=c.begin();x!=c.end();x++) #define ALL(a) (a.begin()),(a.end()) #define ZERO(a) memset(a,0,sizeof(a)) #define MINUS(a) memset(a,0xff,sizeof(a)) //------------------------------------------------------- int N,M; int A[202],B[202],X[202],Y[202]; vector V; ll mo=1000000007; ll S[202][202],T[202]; ll P[202][402][205]; ll modpow(ll a, ll n = mo-2) { ll r=1;a%=mo; while(n) r=r*((n%2)?a:1)%mo,a=a*a%mo,n>>=1; return r; } void solve() { int i,j,k,l,r,x,y; string s; S[1][0]=T[1]=1; for(i=2;i<=200;i++) { FOR(j,i) { if(i%2==0) { FOR(x,j) S[i][j]+=S[i-1][x]; } else { for(x=j;x=2;i--) T[i]=T[i]*modpow(T[i-1])%mo; cin>>N; FOR(i,N) { cin>>A[i]>>B[i]; V.push_back(A[i]); V.push_back(B[i]); } sort(ALL(V)); V.erase(unique(ALL(V)),V.end()); M=V.size()-1; FOR(x,M) FOR(y,M) if(V[x]>=A[0]&&V[x]=A[1]&&V[y]=A[i]&&V[j]