#include <bits/stdc++.h>
using namespace std;
int s1[100010], s2[100010], c1[100010], c2[100010], ans;
char s[100010];
int ksm(int a, int k) {
  int b = 1;
  while (k) {
    if (k & 1) b = 1ll * b * a % 1000000007;
    k = (k >> 1);
    a = 1ll * a * a % 1000000007;
  }
  return b;
}
int c(int n, int k) {
  if (k < 0 || k > n || n < 0) return 0;
  int a = s1[n];
  a = 1ll * a * s2[k] % 1000000007;
  a = 1ll * a * s2[n - k] % 1000000007;
  return a;
}
int main() {
  int n, k, i;
  scanf("%d%d\n", &n, &k);
  s1[0] = 1;
  s2[0] = 1;
  c1[0] = 1;
  for (i = 1; i <= n; i++) {
    s1[i] = 1ll * s1[i - 1] * i % 1000000007;
    s2[i] = 1ll * s2[i - 1] * ksm(i, 1000000007 - 2) % 1000000007;
    c1[i] = 1ll * 10 * c1[i - 1] % 1000000007;
  }
  gets(s + 1);
  if (k == 0) {
    for (i = 1; i <= n; i++)
      ans = (ans + 1ll * c1[i - 1] * (s[n - i + 1] - '0')) % 1000000007;
    printf("%d\n", ans);
    return 0;
  }
  for (i = 1; i <= n; i++)
    c2[n - i + 1] =
        (c2[n - i + 2] + 1ll * c1[i - 1] * c(n - i - 1, k - 1)) % 1000000007;
  for (i = 1; i <= n; i++)
    c2[n - i + 1] =
        (c2[n - i + 1] + 1ll * c1[i - 1] * c(n - i - 1, k)) % 1000000007;
  for (i = 1; i <= n; i++)
    ans = (ans + 1ll * c2[i] * (s[i] - '0')) % 1000000007;
  printf("%d\n", ans);
}
