#include <bits/stdc++.h>
using namespace std;
const double eps = 1e-8;
inline int max(int a, int b) { return a < b ? b : a; }
inline int min(int a, int b) { return a > b ? b : a; }
inline long long max(long long a, long long b) { return a < b ? b : a; }
inline long long min(long long a, long long b) { return a > b ? b : a; }
const int mod = 1e9 + 7;
const int N = 1e6 + 10;
const long long inf = 1e18;
int A[200010];
int main() {
  int n;
  scanf("%d", &n);
  for (int i = 0; i < n; ++i) {
    scanf("%d", &A[i]);
    A[i] += i;
  }
  sort(A, A + n);
  int f = 0;
  for (int i = 0; i < n; ++i) {
    A[i] -= i;
    if (i != 0 && A[i] < A[i - 1]) f = 1;
  }
  if (f == 1) {
    printf(":(\n");
    return 0;
  }
  for (int i = 0; i < n; ++i) {
    printf("%d ", A[i]);
  }
  printf("\n");
  return 0;
}
