A Train started its journey at x=-infinity is travelling on the x-Coordinate Axis. Given n passengers and the coordinates $b_i$ and $d_i$ for each of the $ith$ passenger at which they board and leave from the train respectively. Due to current COVID-19 crisis, the train is monitored at each mile/coordinate. The infection degree of the train at each mile is equal to the total passengers present in the train at that mile/coordinate. The train stops its journey if no more passengers are there to board the train. The term infection severity of the journey is defined as the sum of infection degrees noted at each mile. Find the Infection severity of the journey. Note: A passenger is considered for calculation of infection degree at both boarding and leaving stations.

Since the answer can be very large, print it modulo $(10^9)+7$.

-----Input:-----
- First line will contain $N$, number of passengers. Then the $N$ lines follow. 
- $i$th line contains two integers $b_i, d_i$ , the boarding and departure mile of $i$th passenger.

-----Output:-----
Print a single value, the Infection Severity of the journey modulo $(10^9)+7$.

-----Constraints-----
- $0 \leq N \leq 100000$
- $-500000 \leq b_i \leq 500000$
- $-500000 \leq d_i \leq 500000$

-----Sample Input:-----
3

0 2

1 3

-1 4  

-----Sample Output:-----
12    

-----EXPLANATION:-----
Infection degree at :

-1 is 1

0 is 2

1 is 3

2 is 3

3 is 2

4 is 1

Calculation started at mile -1 and ended at mile 4. Infection Severity = 1+2+3+3+2+1 =12

```python

USER_FILENAME = "<user_code>"
import sys, json, builtins
import math, heapq, bisect, itertools, functools, collections, statistics, fractions, decimal, operator, array, random, re, string, os, pathlib
try:
    import resource as _res
except Exception:
    _res = None
from collections import Counter, defaultdict, deque, OrderedDict
from functools import lru_cache, reduce
from itertools import accumulate, permutations, combinations, product
from math import gcd, ceil, floor, sqrt
from decimal import Decimal
try:
    from typing import *
except Exception:
    pass
try:
    sys.setrecursionlimit(1_000_000)
except Exception:
    pass
try:
    import site as _site
    try:
        _sys_sites = _site.getsitepackages() if hasattr(_site, "getsitepackages") else []
        for _p in _sys_sites:
            if _p and _p not in sys.path:
                sys.path.append(_p)
    except Exception:
        pass
    try:
        _usp = _site.getusersitepackages()
        if isinstance(_usp, str):
            _usp = [_usp]
        for _p in _usp:
            if _p and _p not in sys.path:
                sys.path.append(_p)
    except Exception:
        pass
except Exception:
    pass

ns = {"__name__": "__main__"}
for _k, _v in list(globals().items()):
    if not _k.startswith("_"):
        ns[_k] = _v
_CODE = 'from sys import stdin,stdout\r\ndef main():\r\n    mod=10**9+7\r\n    n=int(stdin.readline())\r\n    neg=[0]*(500002)\r\n    pos=[0]*(500002)\r\n    counter=0\r\n    mn=1000000\r\n    mx=-1000000\r\n    larr=[]\r\n    rarr=[]\r\n    for i in range(n):\r\n        l,r=map(int,stdin.readline().split())\r\n        if l<0:\r\n            counter=1\r\n            neg[abs(l)]+=1\r\n        else:\r\n            pos[l]+=1\r\n        if r<0:\r\n            neg[abs(r)-1]-=1\r\n        else:\r\n            pos[abs(r)+1]-=1\r\n    ans=0\r\n    for i in range(10**5,0,-1):\r\n        neg[i]+=neg[i+1]\r\n        ans=(ans+neg[i])%mod\r\n    neg[0]=neg[0]+neg[1]\r\n    pos[0]=neg[0]+pos[0]\r\n    ans=(ans+pos[0])%mod\r\n    for i in range(1,10**5+2):\r\n        pos[i]=pos[i]+pos[i-1]\r\n        ans=(ans+pos[i])%mod\r\n    #print(neg[0:5])\r\n    #print(pos[0:5])\r\n    print(ans)\r\n   \r\nmain()'
_co = compile(_CODE, USER_FILENAME, "exec")
exec(_co, ns, ns)

```

Measured memory_bytes: 8006325