You are given an integer n. You have to apply m operations to it.

In a single operation, you must replace every digit d of the number with the decimal representation of integer d + 1. For example, 1912 becomes 21023 after applying the operation once.

You have to find the length of n after applying m operations. Since the answer can be very large, print it modulo 10^9+7.

Input

The first line contains a single integer t (1 ≤ t ≤ 2 ⋅ 10^5) — the number of test cases.

The only line of each test case contains two integers n (1 ≤ n ≤ 10^9) and m (1 ≤ m ≤ 2 ⋅ 10^5) — the initial number and the number of operations. 

Output

For each test case output the length of the resulting number modulo 10^9+7.

Example

Input


5
1912 1
5 6
999 1
88 2
12 100


Output


5
2
6
4
2115

Note

For the first test, 1912 becomes 21023 after 1 operation which is of length 5.

For the second test, 5 becomes 21 after 6 operations which is of length 2.

For the third test, 999 becomes 101010 after 1 operation which is of length 6.

For the fourth test, 88 becomes 1010 after 2 operations which is of length 4.
#include<bits/stdc++.h>
using namespace std;
#define pb push_back
#define ll long long
const ll mod = 1000000007;
vector<ll> cnt(200005);
void preprosy(){
	vector<ll> mp(10, 0); mp[9] = 1;
	for(ll i = 0; i < 200005; i++){
		vector<ll> t = mp;
		for(ll j = 0; j < 10; j++){
			cnt[i] = (cnt[i] + mp[j]) % mod;
			mp[j] = t[(j + 9) % 10];
			if(j == 1) mp[j] = (mp[j] + t[9]) % mod;
		}
	}
}
string s;
ll n;
void brute(){
	vector<ll> mp(10, 0);
	for(char x : s) mp[x - '0']++;
	for(ll i = 0; i < n; i++){
		vector<ll> t = mp;
		for(ll j = 0; j < 10; j++){
			mp[j] = t[(j + 9) % 10];
			if(j == 1) mp[j] = (mp[j] + t[9]) % mod;
		}
	}
	ll ans = 0;
	for(ll i = 0; i < 10; i++) ans += mp[i];
	cout << ans << "\n";
}
void solve(){
	cin >> s;
	cin >> n;
	if(n <= 9) {brute(); return;}
	vector<ll> mp(10, 0); for(char x : s) mp[x - '0']++;
	ll ans = 0;
	for(ll i = 0; i < 10; i++){
		ans = (ans + (mp[i] * cnt[n - (9 - i)] % mod)) % mod;
	}
	cout << ans << "\n";
}

signed main(){
  ios_base::sync_with_stdio(false);cin.tie(NULL);
    preprosy();
  ll t;
  cin >> t;

  while(t--){

    solve();
  }  
  return 0;
}

