#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 = 0;
int s = f;
if (s == 0) n = 1;
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, max(0LL, 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+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIGludCBsb25nIGxvbmcKdXNpbmcgaTEyOCA9IF9faW50MTI4X3Q7CgppMTI4IG1ha2VfbnVtKGludCBkaWdpdCwgaW50IGxlbikgewogICAgaTEyOCBudW0gPSAwOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBsZW47IGkrKykgewogICAgICAgIG51bSA9IG51bSAqIDEwICsgZGlnaXQ7CiAgICB9CiAgICByZXR1cm4gbnVtOwp9CgppMTI4IGFiczEyOChpMTI4IHgpIHsKICAgIHJldHVybiAoeCA8IDAgPyAteCA6IHgpOwp9CgpzaWduZWQgbWFpbigpIHsKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUobnVsbHB0cik7CgogICAgaW50IGg7CiAgICBjaW4gPj4gaDsKCiAgICB3aGlsZSAoaC0tKSB7CiAgICAgICAgaW50IGYsIHQ7CiAgICAgICAgY2luID4+IGYgPj4gdDsKCiAgICAgICAgdmVjdG9yPGludD4gdigyKTsKICAgICAgICBjaW4gPj4gdlswXSA+PiB2WzFdOwoKICAgICAgICBpbnQgYSA9IHZbMF07CiAgICAgICAgaW50IGIgPSB2WzFdOwoKICAgICAgICBpbnQgbiA9IDA7CiAgICAgICAgaW50IHMgPSBmOwoKICAgICAgICBpZiAocyA9PSAwKSBuID0gMTsKICAgICAgICB3aGlsZSAocyA+IDApIHsKICAgICAgICAgICAgcyAvPSAxMDsKICAgICAgICAgICAgbisrOwogICAgICAgIH0KCiAgICAgICAgaTEyOCB4ID0gbWFrZV9udW0oYSwgbik7CiAgICAgICAgaTEyOCB5ID0gbWFrZV9udW0oYiwgbik7CgogICAgICAgIGkxMjggeiA9IGE7CiAgICAgICAgZm9yIChpbnQgaSA9IDE7IGkgPCBuOyBpKyspCiAgICAgICAgICAgIHogPSB6ICogMTAgKyBiOwoKICAgICAgICBpMTI4IHAgPSBiOwogICAgICAgIGZvciAoaW50IGkgPSAxOyBpIDwgbjsgaSsrKQogICAgICAgICAgICBwID0gcCAqIDEwICsgYTsKCiAgICAgICAgaTEyOCBxID0gbWFrZV9udW0oYiwgbWF4KDBMTCwgbiAtIDEpKTsKICAgICAgICBpMTI4IHIgPSBtYWtlX251bShhLCBuICsgMSk7CgogICAgICAgIGkxMjggRiA9IGY7CgogICAgICAgIGkxMjggYW5zID0gbWluKHsKICAgICAgICAgICAgYWJzMTI4KEYgLSB4KSwKICAgICAgICAgICAgYWJzMTI4KEYgLSB5KSwKICAgICAgICAgICAgYWJzMTI4KEYgLSB6KSwKICAgICAgICAgICAgYWJzMTI4KEYgLSBwKSwKICAgICAgICAgICAgYWJzMTI4KEYgLSBxKSwKICAgICAgICAgICAgYWJzMTI4KEYgLSByKQogICAgICAgIH0pOwoKICAgICAgICBjb3V0IDw8IChsb25nIGxvbmcpYW5zIDw8ICdcbic7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0=