U601307 二进制加法糕兽(insane version)

题目背景

二进制加法与十进制加法相似,两个数相加时,是位对位处理的,从最低的一对位(右边)开始,依序将每一对位进行加法运算。二进制中任何相邻两数位之间的进率为$2$,所以二进制加法按逢二进一的法则进行计算。 5与9的二进制加法: $$ \begin{array}{r} 101\\ +1001\\ \hline 1110 \end{array} $$

题目描述

小花最近学会了二进制加法,但还无法正确处理进位运算。\ 例如 $3$(二进制下: $11$ )与 $1$(二进制下: $01$ )相加时, - 个位 $1+1=0$(不进位) - 十位 $1+0=1$ 小花的计算结果为 $2$(二进制下: $10$ )。\ 现在,小花尝试使用二进制加法对区间 $[l,r]$内的所有整数进行累加操作:从 $l$开始,依次将$l+1,l+2,…,r$累加到计算结果上。求出她计算出的错误结果的十进制形式。

输入格式

第一行一个整数 $T$ ,表示测试数据组数。\ 接下来每组数据,一行两个正整数 $l, r$

输出格式

对于每组测试数据,输出一个整数表示所求答案

说明/提示

对于第一组测试数据:\ $101(5)+110(6)=011,$\ $011+111(7)=100,$\ $100+1000(8)=1100,$\ $1100+1001(9)=0101,$\ 因此,小花错误的计算结果在十进制下是 $5$. 【数据范围】 $1 ≤ T ≤ 2\times10^{5}$, $1 \leq l \leq r \leq 10^{18}, r - l \leq 10^{18} $