#include <bits/stdc++.h>
using namespace std;
ifstream fin("A.in");
ofstream fout("A.out");
int nr, cnt, n;
int rat[300001];
vector<int> H[666013];
struct pr {
  int x, i;
} a[300001];
bool cmp(pr a, pr b) { return a.x < b.x; }
bool sear(int x, pr X) {
  int h = x % 666013;
  for (vector<int>::iterator it = H[h].begin(); it != H[h].end(); ++it) {
    if (*it == x) return 0;
  }
  rat[X.i] = x;
  H[h].push_back(x);
  return 1;
}
int main() {
  cin >> n;
  for (int i = 1; i <= n; ++i) {
    cin >> a[i].x;
    a[i].i = i;
  }
  sort(a + 1, a + n + 1, cmp);
  int current = 0;
  for (int i = 1; i <= n; ++i) {
    current = max(current, a[i].x);
    while (!sear(current, a[i])) {
      ++current;
    }
    ++current;
  }
  for (int i = 1; i <= n; ++i) {
    cout << rat[i] << " ";
  }
}
