#include <bits/stdc++.h>
using namespace std;
const int MaxN = (int)1e6 + 10;
const int INF = (int)1e9;
const int MOD = (int)1e9 - 401;
long long getDigitSum(long long x) {
return x < 10 ? x : (x % 10) + getDigitSum(x / 10);
}
void solve() {
long long n, d;
scanf("%lld%lld", &n, &d);
assert (1 <= n && n <= 1e10);
assert (1 <= d && d <= 1e10);
long long best = n;
int op = 0;
for (int mask = 0; mask < 1 << 15; ++mask) {
long long cur = n;
for (int bit = 0; bit < 15; ++bit) {
if (mask & (1 << bit)) {
cur = (cur + d);
} else {
cur = getDigitSum(cur);
}
if (cur < best || cur == best && op > bit + 1) {
best = cur;
op = bit + 1;
}
}
}
cout << best << " " << op << "\n";
}
int main() {
// freopen("input.txt", "r", stdin);
int t;
scanf("%d", &t);
assert (1 <= t && t <= 10);
while (t --> 0) {
solve();
}
return 0;
}
ICAgICNpbmNsdWRlIDxiaXRzL3N0ZGMrKy5oPiAKICAgICAKICAgIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAgICAgCiAgICBjb25zdCBpbnQgTWF4TiA9IChpbnQpMWU2ICsgMTA7CiAgICBjb25zdCBpbnQgSU5GID0gKGludCkxZTk7CiAgICBjb25zdCBpbnQgTU9EID0gKGludCkxZTkgLSA0MDE7CiAgICAgCiAgICBsb25nIGxvbmcgZ2V0RGlnaXRTdW0obG9uZyBsb25nIHgpIHsKICAgIAlyZXR1cm4geCA8IDEwID8geCA6ICh4ICUgMTApICsgZ2V0RGlnaXRTdW0oeCAvIDEwKTsKICAgIH0KICAgICAKICAgIHZvaWQgc29sdmUoKSB7CiAgICAJbG9uZyBsb25nIG4sIGQ7CiAgICAJc2NhbmYoIiVsbGQlbGxkIiwgJm4sICZkKTsKICAgIAlhc3NlcnQgKDEgPD0gbiAmJiBuIDw9IDFlMTApOwogICAgCWFzc2VydCAoMSA8PSBkICYmIGQgPD0gMWUxMCk7CiAgICAJbG9uZyBsb25nIGJlc3QgPSBuOwogICAgCWludCBvcCA9IDA7CiAgICAJZm9yIChpbnQgbWFzayA9IDA7IG1hc2sgPCAxIDw8IDE1OyArK21hc2spIHsKICAgIAkJbG9uZyBsb25nIGN1ciA9IG47CiAgICAJCWZvciAoaW50IGJpdCA9IDA7IGJpdCA8IDE1OyArK2JpdCkgewogICAgCQkJaWYgKG1hc2sgJiAoMSA8PCBiaXQpKSB7CiAgICAJCQkJY3VyID0gKGN1ciArIGQpOwogICAgCQkJfSBlbHNlIHsKICAgIAkJCQljdXIgPSBnZXREaWdpdFN1bShjdXIpOwogICAgCQkJfQogICAgCQkJaWYgKGN1ciA8IGJlc3QgfHwgY3VyID09IGJlc3QgJiYgb3AgPiBiaXQgKyAxKSB7CiAgICAJCQkJYmVzdCA9IGN1cjsKICAgIAkJCQlvcCA9IGJpdCArIDE7CiAgICAJCQl9CiAgICAJCX0KICAgIAl9CiAgICAJY291dCA8PCBiZXN0IDw8ICIgIiA8PCBvcCA8PCAiXG4iOwogICAgfQogICAgIAogICAgaW50IG1haW4oKSB7CiAgICAvLwlmcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKICAgIAlpbnQgdDsKICAgIAlzY2FuZigiJWQiLCAmdCk7CiAgICAJYXNzZXJ0ICgxIDw9IHQgJiYgdCA8PSAxMCk7CiAgICAJd2hpbGUgKHQgLS0+IDApIHsKICAgIAkJc29sdmUoKTsKICAgIAl9CiAgICAJcmV0dXJuIDA7CiAgICB9CiAgICAg