#include <bits/stdc++.h>
using namespace std;
const long long inf = 0x3f3f3f3f3f3f3f3f;
const int mod = 1e9 + 7;
const int maxn = 5e6 + 4;
const int N = 100 + 5;
const double eps = 1e-6;
const double pi = acos(-1.0);
long long qpow(long long x, long long y) {
  long long ans = 1;
  x %= mod;
  assert(y >= 0);
  while (y) {
    if (y & 1) ans = ans * x % mod;
    x = x * x % mod;
    y >>= 1;
  }
  return ans;
}
long long sol(long long c9, long long c, long long n, long long k) {
  int z = 0;
  for (int i = c; i <= c + k; i++) {
    z = z + i % 10;
    if (i < 10)
      z = z + c9 * 9;
    else
      z++;
  }
  if (n < z) return inf;
  n -= z;
  if (n % (k + 1)) return inf;
  long long s = n / (k + 1);
  if (s % 9 == 0) {
    long long ans = 1;
    for (int i = 1; i <= s / 9 - 1; i++) ans = ans * 10 + 9;
    ans = ans * 10 + 8;
    if (s == 0) ans = 0;
    for (int i = 1; i <= c9; i++) ans = ans * 10 + 9;
    ans = ans * 10 + c;
    return ans;
  }
  if (s < 9) {
    long long ans = s;
    for (int i = 1; i <= c9; i++) ans = ans * 10 + 9;
    ans = ans * 10 + c;
    return ans;
  }
  long long ans = s % 9 + 1;
  for (int i = 1; i <= s / 9 - 1; i++) ans = ans * 10 + 9;
  ans = ans * 10 + 8;
  for (int i = 1; i <= c9; i++) ans = ans * 10 + 9;
  ans = ans * 10 + c;
  return ans;
}
int _, n, k;
int main() {
  for (scanf("%d", &_); _; _--) {
    scanf("%d%d", &n, &k);
    long long ans = inf;
    for (int i = 0; i <= 9; i++) {
      for (int j = 0; j <= 17; j++) {
        ans = min(ans, sol(j, i, n, k));
      }
    }
    printf("%lld\n", ans == inf ? -1 : ans);
  }
  return 0;
}
