编程题
### 问题描述
$A$ 公司有 $r-l+1$ 个办公室,办公室编号是 $l$ 到 $r$,公司老板会事先制定一个顺序,按照这个顺序依次检查办公室。
一开始的时候,所有办公室的员工都在偷懒,当老板检查完编号是 $i$ 的办公室时候,这个办公室的员工会认真工作,并且这个办公室的员工通知所有办公室编号是 $i$ 的倍数的办公室,通知他们老板来了,让他们认真工作。
因此,老板检查完第 $i$ 个办公室的时候,所有编号是 $i$ 的倍数(包括 $i$)的办公室的员工会认真工作。
老板发现了员工们通风报信的行为,他发现,对于每种不同的顺序 $p$,都存在一个最小的 $t(p)$,使得自己按照这个顺序检查完前 $t(p)$ 个办公室之后,所有的办公室都会开始认真工作。他把这个 $t(p)$ 定义为 $p$ 的检查时间。
老板想知道所有 $t(p)$ 的和。
但是这个结果可能很大,他想知道和对 $10^9 +7$ 取模后的结果。
### 输入格式
输入包含两个整数 $l,r$,含义见上文。
### 输出格式
输出包含一个整数,表示所有 $t(p)$ 的和。
### 样例输入
```
2 4
```
### 样例输出
```
16
```
### 评测数据规模
对于所有评测数据,$1\leq{l}\leq{r}\leq{10^7 }$。