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