#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=1+(r-1)/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=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;
}