#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=1;
    while(i<n1 && j<n2){
        if(L[i]<=R[j]){
            arr[k++]=L[i++]}
        else{
            arr[k++]=R[j++];
        }
    while(<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 l=n-1)){
            printf(" ")}
    }
return 0;
            
}