zzq 和他的队友像往常一样进行训练赛。这一天,他遇到了一道位运算的题目,但是 zzq 水平有限,解决不了这个问题,于是,他向他的队友 lxr 和 zyf 求助。聪明的 lxr 和 zyf 很快就解决了这个问题。为了嘲笑zzq,他们又给他出了另一道简单的位运算题,用来考验他。这个问题被描述如下:
一个数被称为“好数”,当且仅当它的二进制表示中

出现的次数为奇数。例如

的二进制表示为

,其中

出现的次数为

,所以

不是一个“好数”
;而
的二进制表示为
,其中
出现的次数为
,所以
是一个“好数”
。 现在,给你一个区间

,请你求出这个区间内有多少“好数”。
为了不被 lxr 和 zyf 嘲笑,请你帮助 zzq 解决这个问题。
输入描述:
第一行给出一个整数
,表示询问了
次。
接下来
行,每行两个整数
。
输出描述:
输出
行,每行一个整数,第
行的整数代表第
次询问的答案。