#include<fstream>
using namespace std;
long long x1,x2,y1,y2,s,n,i,j,v[100]={1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025,121393,196418,317811,514229,832040,1346269,2178309,3524578,5702887,9227465,14930352,24157817,39088169,63245986,102334155,165580141,267914296,433494437,701408733,1134903170,1836311903,2971215073,4807526976,7778742049,12586269025,20365011074,32951280099,53316291173,86267571272,139583862445,225851433717,365435296162,591286729879,956722026041,1548008755920,2504730781961,4052739537881,6557470319842,10610209857723,17167680177565,27777890035288,44945570212853,72723460248141,117669030460994,190392490709135,308061521170129,498454011879264,806515533049393,1304969544928657,2111485077978050,3416454622906707,5527939700884757,8944394323791464,14472334024676221,23416728348467685,37889062373143906,61305790721611591,99194853094755497,160500643816367088,259695496911122585,420196140727489673,679891637638612258,1100087778366101931,1779979416004714189,2880067194370816120,4660046610375530309,7540113804746346429,0,0,0,0,0,0,0,0};
int main()
{ifstream q("fibo3.in");
ofstream w("fibo3.out");
q>>n;
for(i=1;i<=n;++i)
{q>>x1>>y1>>x2>>y2;//citesc coord.
for(j=1;j<92;++j)
{
if(x2+y2<v[j])
{j=93;//prea mare
continue;}
s+=((x2>v[j]-y1)?v[j]-y1:x2)-((x1<v[j]-y2)?v[j]-y2:x1)+1;}//unde trebuie,deci bag formula
w<<s<<"\n";
s=0;}
return 0;}