#include <bits/stdc++.h>
using namespace std;
using LL = long long;
int nX, k;
string x;
bool check(int first) {
  string y = "";
  while (((int)(y).size()) < ((int)(x).size())) {
    y += x.substr(0, first);
    y += string(k - first, '9');
  }
  while (((int)(y).size()) > ((int)(x).size())) y.pop_back();
  return y >= x;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  cin >> nX >> k >> x;
  int l = 0, r = k;
  while (l < r) {
    int mid = (l + r + 1) >> 1;
    if (check(mid))
      l = mid;
    else
      r = mid - 1;
  }
  string pref = x.substr(0, l);
  if (((int)(pref).size()) < k) pref += (char)(x[l] + 1);
  while (((int)(pref).size()) < k) pref += '0';
  string y = "";
  while (((int)(y).size()) < ((int)(x).size())) y += pref;
  while (((int)(y).size()) > ((int)(x).size())) y.pop_back();
  cout << ((int)(y).size()) << '\n';
  cout << y << '\n';
  return 0;
}
