#include <bits/stdc++.h>
using namespace std;
int n, ans[300005];
struct odp {
  int x, id;
  bool operator<(const odp &T) const { return x < T.x; }
} a[300005];
int main() {
  scanf("%d", &n);
  for (int i = (0); i < (n); i++) {
    a[i].id = i;
    scanf("%d", &a[i].x);
  }
  sort(a, a + n);
  int dp = -1;
  for (int i = (0); i < (n); i++) {
    dp = max(dp, a[i].x);
    ans[a[i].id] = dp;
    dp++;
  }
  for (int i = (0); i < (n); i++)
    printf("%d%c", ans[i], i == n - 1 ? '\n' : ' ');
  scanf("\n");
}
