#ABC138F. Coincidence

Coincidence

题目描述

Given are integers LL and RR. Find the number, mod 109+710^9 + 7, of pairs of integers (x,y)(x, y) (LxyR)(L \leq x \leq y \leq R) such that the remainder when yy is divided by xx is equal to y XOR xy \text{ XOR } x.

What is  XOR \text{ XOR }?

The XOR of integers AA and BB, A XOR BA \text{ XOR } B, is defined as follows:

  • When A XOR BA \text{ XOR } B is written in base two, the digit in the 2k2^k's place (k0k \geq 0) is 11 if either AA or BB, but not both, has 11 in the 2k2^k's place, and 00 otherwise.

For example, 3 XOR 5=63 \text{ XOR } 5 = 6. (In base two: 011 XOR 101=110011 \text{ XOR } 101 = 110.)

给出整数 LLRR 。求模为 109+710^9 + 7 的一对整数 (x,y)(x, y) 中,当 yy 除以 {49761536} 时有余数的个数。 (LxyR)(L \leq x \leq y \leq R) ,使得 yy 除以 xx 的余数等于 y XOR xy \text{ XOR } x

 XOR \text{ XOR } 是多少??

整数 AABB , A XOR BA \text{ XOR } B 的 XOR 定义如下:

  • 当以二进制写入 A XOR BA \text{ XOR } B 时,如果 AABB (而不是两者)的 2k2^k2k2^k 位上有 11 ,那么 k0k \geq 0 位上的数字就是 11 ,否则就是 00

例如, 3 XOR 5=63 \text{ XOR } 5 = 6 。(二进制: 011 XOR 101=110011 \text{ XOR } 101 = 110 )。

输入格式

输入内容按以下格式标准输入:

LL RR

输出格式

打印满足条件的一对整数 (x,y)(x, y) (LxyR)(L \leq x \leq y \leq R) 的个数。 (LxyR)(L \leq x \leq y \leq R) 满足条件,模数 109+710^9 + 7 .

样例 #1

样例输入 #1

2 3

样例输出 #1

3

样例 #2

样例输入 #2

10 100

样例输出 #2

604

样例 #3

样例输入 #3

1 1000000000000000000

样例输出 #3

68038601

说明

数据规模与约定

  • 1LR10181 \leq L \leq R \leq 10^{18}

样例 11 解释

有三对符合条件: (2,2)(2, 2)(2,3)(2, 3)(3,3)(3, 3)

样例 33 解释

请务必计算 109+710^9 + 7 的模数。