#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
void merge(int a[], int l, int m, int r){
    int n1 = m-l+1;
    int n2 = r-m;
    int left[n1],right[n2];
    for(int i=0;i<n1;i++)
    left[i]=a[l+i];
    for(int j=0;j<n2;j++)
    right[j]=a[m+1+j];
    
    int i=0,j=0,k=l;
    
    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[i++];
    while(j<n2)
      a[k++] =right[j++];
 }
void sort(int a[],int l,int r){
  if(l<r){
     int m= l+(r-l)/2;
     sort(a,l,m);
     sort(a,m+1,r);
     merge(a,l,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;
 }