#include <bits/stdc++.h>
using namespace std;
#define int long long
using i128 = __int128_t;
i128 make_num(int digit, int len) {
i128 num = 0;
for(int i = 0; i < len; i++)
num = num * 10 + digit;
return num;
}
i128 abs128(i128 x){
return x < 0 ? -x : x;
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int h;
cin>>h;
while(h--){
int f, t;
cin >> f >> t;
vector<int> v(2);
cin >> v[0] >> v[1];
int a = v[0];
int b = v[1];
int n;
int s=f;
while(s>0){
s/=10;
n++;
}
i128 x = make_num(a, n);
i128 y = make_num(b, n);
i128 z = a;
for(int i = 1; i < n; i++)
z = z * 10 + b;
i128 p = b;
for(int i = 1; i < n; i++)
p = p * 10 + a;
i128 q = make_num(b, n - 1);
i128 r = make_num(a, n + 1);
i128 F = f;
i128 ans = min({
abs128(F - x),
abs128(F - y),
abs128(F - z),
abs128(F - p),
abs128(F - q),
abs128(F - r)
});
cout << (long long)ans << '\n';
return 0;
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50IGxvbmcgbG9uZwp1c2luZyBpMTI4ID0gX19pbnQxMjhfdDsKCmkxMjggbWFrZV9udW0oaW50IGRpZ2l0LCBpbnQgbGVuKSB7CiAgICBpMTI4IG51bSA9IDA7CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbGVuOyBpKyspCiAgICAgICAgbnVtID0gbnVtICogMTAgKyBkaWdpdDsKICAgIHJldHVybiBudW07Cn0KCmkxMjggYWJzMTI4KGkxMjggeCl7CiAgICByZXR1cm4geCA8IDAgPyAteCA6IHg7Cn0KCnNpZ25lZCBtYWluKCkgewogICAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShudWxscHRyKTsKICAgIGludCBoOwogICAgY2luPj5oOwogICAgd2hpbGUoaC0tKXsKICAgIGludCBmLCB0OwogICAgY2luID4+IGYgPj4gdDsKCiAgICB2ZWN0b3I8aW50PiB2KDIpOwogICAgY2luID4+IHZbMF0gPj4gdlsxXTsKCiAgICBpbnQgYSA9IHZbMF07CiAgICBpbnQgYiA9IHZbMV07CiAgICBpbnQgbjsKICAgIGludCBzPWY7CiAgICB3aGlsZShzPjApewogICAgCXMvPTEwOwogICAgCW4rKzsKICAgIH0KCiAgICBpMTI4IHggPSBtYWtlX251bShhLCBuKTsKICAgIGkxMjggeSA9IG1ha2VfbnVtKGIsIG4pOwoKICAgIGkxMjggeiA9IGE7CiAgICBmb3IoaW50IGkgPSAxOyBpIDwgbjsgaSsrKQogICAgICAgIHogPSB6ICogMTAgKyBiOwoKICAgIGkxMjggcCA9IGI7CiAgICBmb3IoaW50IGkgPSAxOyBpIDwgbjsgaSsrKQogICAgICAgIHAgPSBwICogMTAgKyBhOwoKICAgIGkxMjggcSA9IG1ha2VfbnVtKGIsIG4gLSAxKTsKICAgIGkxMjggciA9IG1ha2VfbnVtKGEsIG4gKyAxKTsKCiAgICBpMTI4IEYgPSBmOwoKICAgIGkxMjggYW5zID0gbWluKHsKICAgICAgICBhYnMxMjgoRiAtIHgpLAogICAgICAgIGFiczEyOChGIC0geSksCiAgICAgICAgYWJzMTI4KEYgLSB6KSwKICAgICAgICBhYnMxMjgoRiAtIHApLAogICAgICAgIGFiczEyOChGIC0gcSksCiAgICAgICAgYWJzMTI4KEYgLSByKQogICAgfSk7CgogICAgY291dCA8PCAobG9uZyBsb25nKWFucyA8PCAnXG4nOwoKICAgIHJldHVybiAwOwogICAgfQogICAgCn0=