#include <bits/stdc++.h>
using namespace std;
int main(int argc, char const *argv[]) {
  int n, m;
  vector<int> bands(2001, 0), original_list(2001), printed(2001, 0);
  cin >> n >> m;
  int relevant = 0, sol = n / m;
  for (int i = 0; i < n; i++) {
    int temp;
    cin >> temp;
    temp--;
    original_list[i] = temp;
    if (temp < m) {
      relevant++;
      bands[temp]++;
    }
  }
  int steps = 0;
  for (int i = 0; i < m; i++) {
    if (bands[i] < sol) {
      steps += sol - bands[i];
    }
  }
  cout << sol << " " << steps << endl;
  for (int i = 0; i < n; ++i) {
    if (original_list[i] < m && printed[original_list[i]] < sol) {
      printed[original_list[i]]++;
      cout << (++original_list[i]) << " ";
    } else {
      int pos = -1;
      for (int i = 0; i < m; i++) {
        if (bands[i] < sol) {
          pos = i;
          break;
        }
      }
      if (pos == -1) {
        cout << (++original_list[i]) << " ";
      } else {
        printed[pos]++;
        bands[pos]++;
        cout << pos + 1 << " ";
      }
    }
  }
}
