#include <bits/stdc++.h>
using namespace std;
struct node {
  int key;
  int id;
} a[300010], b[300010];
bool cmp1(const node &a, const node &b) { return a.key < b.key; }
bool cmp2(const node a, const node b) { return a.id < b.id; }
int main(int argc, char *argv[]) {
  int num, i;
  scanf("%d", &num);
  for (i = 0; i < num; ++i) {
    scanf("%d", &a[i].key);
    a[i].id = i;
  }
  sort(a, a + num, cmp1);
  b[0] = a[0];
  for (i = 1; i < num; ++i) {
    b[i].key = max(b[i - 1].key + 1, a[i].key);
    b[i].id = a[i].id;
  }
  sort(b, b + num, cmp2);
  printf("%d", b[0].key);
  for (i = 1; i < num; ++i) {
    printf(" %d", b[i].key);
  }
  return 0;
}
