### 问题描述
有一位伟大的数学先知,这一天他正在考虑利用无穷整数集做一些数字的预言。首先他将正整数分为奇数集和偶数集两个无穷整数集,奇数集为 { 1,3,5,7,… } ,偶数集为 { 2,4,6,8,… } 。
而后他在这两个整数集的基础上组成一个新的无穷整数集 S ,他首先设置一个变量 n ,初始时 n=1 ,他从奇数集中取出第一个整数(即 1 ),放入 S 中。而后他将 n 扩大两倍,此时 n=2 ,于是他从偶数集按顺序取出两个数(即 2,4 ),放入 S 中。然后他再将 n 扩大两倍,此时 n=4 ,他接着上次在奇数集中取到的位置接着往后取四个(上次在奇数集中取走了 1 ,那么接着往后取四个,应为 3,5,7,9 ),并按顺序放入 S 中……以此类推,由此他可以得到一个无穷整数集 S 。 S 可以表示为 { 1,2,4,3,5,7,9,8,10,… }。
现在先知给出了两个数 l,r ,保证 l≤r 。先知想请你预言出在无穷整数集 S 中从第 l 个数到第 r 个数之间所有数的和是多少(包括第 l 个数和第 r 个数)。
因为这个数将会非常大,先知希望你能输出对 109+7 取模后的结果。
输入包含两个整数 l,r ,表示先知给出的两个数字。
输出一个整数,表示在模 109+7 意义下无穷整数集 S 中从第 l 个数到第 r 个数之间所有数的和。
3 7
28
对于所有评测数据, 1≤l≤r≤1018 。