#include <bits/stdc++.h>
using namespace std;
const int maxn = 100000 + 123;
const int mod = 1000000000 + 7;
using LL = long long;
char digits[maxn];
int n, k;
int fact[maxn];
int rfact[maxn];
int bigmod(int a, int b) {
  if (b == 0) return 1;
  int ta(bigmod(a, b >> 1));
  ta = (LL)ta * ta % mod;
  if (b & 1) return (LL)ta * a % mod;
  return ta;
}
int calC(int n, int m) {
  if (m > n || n < 0 || m < 0) return 0;
  return (LL)fact[n] * rfact[m] % mod * rfact[n - m] % mod;
}
int main() {
  scanf("%d%d%s", &n, &k, digits);
  fact[0] = rfact[0] = 1;
  for (int i = 1; i <= n - 1; ++i) {
    fact[i] = (LL)fact[i - 1] * i % mod;
    rfact[i] = bigmod(fact[i], mod - 2);
  }
  int res(0), nb(1), nv(0);
  for (int i = n - 1; i >= 0; --i) {
    int nd(digits[i] - '0');
    res = (res + (LL)nv * nd % mod) % mod;
    res = (res + (LL)nb * calC(i, k) % mod * nd % mod) % mod;
    nv = (nv + (LL)nb * calC(i - 1, k - 1) % mod) % mod;
    nb = (LL)nb * 10 % mod;
  }
  printf("%d\n", res % mod);
  return 0;
}
