#include<stdio.h>

void merge(int arr[],int l,int m,int r) {
    int i,j,k;
    int n1=m-l+1;
    int n2=r-m;
    int L[n1],R[n2];
    for(i=0;i<n1;i++)
        L[i]=arr[l+i];
    for(j=0;j<n2;j++)
        R[j]=arr[m+1+j];
    i=0;j=0;k=l;
    while(i<n1 && j<n2){
        if(L[i]<=R[j])
           arr[k++]=L[i++];
        else
           arr[k++]=R[j++];
    }
    while(i<n1)
        arr[k++]=L[i++];
    while(j<n2)
        arr[k++]=R[j++];
}

void mergeSort(int arr[],int l,int r){
    if(l<r){
        int m=l+(r-l)/2;
        mergesort(arr,l,m);
        mergesort(arr,m+1,r);
        merge(arr,l,m,r);
    }
}

int main(){
    int n, invalid=0;
    scanf("%d", &n);
    int arr[n];
    for(int i=0;i<n;i++){
        scanf("%d", &arr[i]);
        if(arr[i]<-100 || arr[i]>100)
           invalid=1;
        if(arr[i]<0)
           invalid=-1;
    }
    if(invalid==-1){
        printf("Invalid input");
        return 0;
    }
    int already_sorted=1;
    for(int i=1;i<n;i++){
        if(arr[i-1]>arr[i]){
            already_sorted=0;
            break;
        }
    }
    if(already_sorted){
        printf("-1");
        return 0;
    }
    
    mergeSort(arr,0,n-1);
    for(int i=0;i<n;i++){
        printf("%d", arr[i]);
        if(i !=n-1)
           printf(" ");
    }
    
    return 0;
}