#include <bits/stdc++.h>
using namespace std;
int n, m, s[2002], cnt[2002], tar, cg;
bool b[2002];
int p;
int main() {
  scanf("%d %d", &n, &m);
  for (int i = (1); i <= (n); i++) {
    scanf("%d", &s[i]);
    if (s[i] <= m) cnt[s[i]]++;
  }
  tar = n / m;
  for (int i = (1); i <= (n); i++)
    if (s[i] > m || cnt[s[i]] > tar) {
      if (s[i] <= m) cnt[s[i]]--;
      b[i] = true;
    }
  for (int i = (1); i <= (m); i++)
    if (cnt[i] < tar) {
      int need = tar - cnt[i];
      cg += need;
      while (p < n && need > 0) {
        p++;
        if (b[p]) {
          s[p] = i;
          need--;
        }
      }
    }
  printf("%d %d\n", tar, cg);
  for (int i = (1); i <= (n); i++) printf("%d%c", s[i], i == n ? '\n' : ' ');
  return 0;
}
