Sherlock found a piece of encrypted data which he thinks will be useful to catch Moriarty. The encrypted data consists of two integer $*l*$ and $*r*$. He noticed that these integers were in hexadecimal form.
He takes each of the integers from $*l*$ to $*r*$, and performs the following operations:
- He lists the distinct digits present in the given number. For example: for
$1014_{16}$, he lists the digits as$1, 0, 4$. - Then he sums respective powers of two for each digit listed in the step above. Like in the above example
$*sum* = 2^{1} + 2^{0} + 2^{4} = 19_{10}$. - He changes the initial number by applying bitwise
xorof the initial number and the sum. Example:
. Note that xoris done in binary notation.
One more example: for integer 1e the sum is $*sum* = 2^{1} + 2^{14}$. Letters a, b, c, d, e, f denote hexadecimal digits $10$, $11$, $12$, $13$, $14$, $15$, respertively.
Sherlock wants to count the numbers in the range from $*l*$ to $*r*$ (both inclusive) which decrease on application of the above four steps. He wants you to answer his $*q*$ queries for different $*l*$ and $*r*$.
Input
First line contains the integer $*q*$ ($1 ≤ *q* ≤ 10000$).
Each of the next $*q*$ lines contain two hexadecimal integers $*l*$ and $*r*$ ($0 ≤ *l* ≤ *r* < 16^{15}$).
The hexadecimal integers are written using digits from $0$ to $9$ and/or lowercase English letters a, b, c, d, e, f.
The hexadecimal integers do not contain extra leading zeros.
Output
Output $*q*$ lines, $*i*$-th line contains answer to the $*i*$-th query (in decimal notation).
Note
For the second input,
$14_{16} = 20_{10}$
$*sum* = 2^{1} + 2^{4} = 18$

Thus, it reduces. And, we can verify that it is the only number in range $1$ to $1*e*$ that reduces.
样例
1
1014 1014
1
2
1 1e
1 f
1
0
2
1 abc
d0e fe23
412
28464
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。