#include #define rep(i, n) for (int i = 0; i<(int) (n);i++) using namespace std; using ll = long long; #define lrep(i, n) for(ll i = 0; i<(ll) (n);i++) ll INF = 5000000000000000000LL; using vi = vector; using vl = vector; using vb = vector; int main(){ ll t; cin >> t; rep(_, t){ ll sx, sy, tx, ty; cin >> sx >> sy >> tx >> ty; if(sx > tx){ swap(sx, tx); swap(sy, ty); } ll k = sy, cost = INF, cur = 1; rep(i, k) cur *= 2; if(sy <= ty){ while(tx / cur - sx / cur > 0){ if(cost >= (k - sy) + abs(k - ty) + (tx / cur - sx / cur)){ cost = (k - sy) + abs(k - ty) + (tx / cur - sx / cur); } k++; cur *= 2; } cost = min(cost, (k - sy) + abs(k - ty) + (tx / cur - sx / cur)); }else{ while(tx / cur - sx / cur > 0){ if(cost >= 2*(k - sy) + (tx / cur - sx / cur)){ cost = 2*(k - sy) + (tx / cur - sx / cur); } k++; cur *= 2; } cost = min(cost, 2*(k - sy) + (tx / cur - sx / cur)); cost += abs(sy - ty); } cout << cost << endl; } return 0; }