#include <bits/stdc++.h>
using namespace std;
#ifdef LOCAL
  #include "settings/debug.cpp"
  #define _GLIBCXX_DEBUG
#else
  #define Debug(...) void(0)
#endif
using ll = long long;
#define rep(i, n) for (int i = 0; i < (n); ++i)

inline string pad_start(string s, int n, char c = '0') {
  return string(max(0, n - (int)s.size()), c) + s;
}

#include<atcoder/modint>

void solve() {
  int m;cin>>m;
  using mint = atcoder::modint;
  mint::set_mod(m);
  int n = 9;
  vector<int> a(n);
  rep(i, n) cin>>a[i];
  string ans = "";
  rep(i,n) {
    rep(j, a[i]) ans += to_string(i+1);
  }
  cout << ans << pad_start(to_string((-mint(stoll(ans)) * 1'000'000'000).val()), 9) << endl;
}

int main() {
  int t;cin>>t;
  while(t--) solve();
  return 0;
}