n,m,k=map(int,input().split());mod=10**9+7 dp=[1]*(n+2);dp[0]=0 x=[list(map(int,input().split())) for i in range(m)] for i in range(k): dp2=[0]*n*2 for l,r in x: c=dp[r]-dp[l-1]+mod;c%=mod dp2[l]+=c;dp2[l]%=mod dp2[r+1]+=mod-c;dp2[r+1]%=mod dp=dp2 for j in range(1,len(dp)): dp[j]+=dp[j-1];dp[j]%=mod for j in range(1,len(dp)): dp[j]+=dp[j-1];dp[j]%=mod print((dp[n]-dp[n-1]+mod)%mod)