#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
void merge(int a[], int I, int m, int r){
    int n1=m-I+1;
    int n2= r-m;
    int left[n1],right[n2];
    for(int i=0;i<n1;i++)
    left[i]= a[I+i];
    for(int j=0;j<n2;j++)
    right[j]= a[m+1+j];
    int i=0,j=0,k=I;
    while(i<n1 && j<n2){
        if(left[i]<=right[j])
        a[k++] = left[i++];
        else
        a[k++] =right[j++];
    }
    while(i<n1)
    a[k++] = left[j++];
    while(j<n2)
    a[k++] =right[j++];
}
void sort(int a[],int I, int r){
    if(I<r){
        int m= I+(r-I)/2;
        sort(a,I,m);
        sort(a,m+1,r);
        merge(a,I,m,r);
    }
}
int main(){
    int n;
    if( scanf("%d", &n) !=1 || n<1 || n>100){
        printf("Invalid input");
        return 0;
    }
    int a[n];
    bool Valid = true;
    for(int i=0; i<n; i++){
        if( scanf("%d", &a[i]) !=1 || a[i]< 0|| a[i]>100){
            valid= false;
        }
    }
    if(!Valid){
        printf("Invalid input");
        return 0;
    }
    bool sorted = true;
    for (int i=1;i<n;i++){
        if(a[i-1]>a[i]){
            sorted =false;
            break;
        }
    }
    if(sorted){
        printf("-1\n");
        return 0;
    }
    sort(a,0,n-1);
    for(int i=0; i<n; i++){
        printf("%d", a[i]);
        if(i!= n-1)
        printf(" ");
    }
    return 0;
}