#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
	ll N,A=1,a,M=1e9+7,i;
	cin>>N;
	priority_queue<pair<ll,ll>> Q;
	for(i=0;i<N;i++)cin>>a,Q.push({a,-1});
	for(i=0;i<N;i++)cin>>a,Q.push({a,1});
	a=0;
	while(!Q.empty()){
		i=Q.top().second;
		if(a!=i*abs(a))(A*=abs(a))%=M;
		a+=i;Q.pop();
	}
	cout<<A<<endl;
}