#include<stdio.h>
#define MAX 100
int stack[MAX];
int top=-1;
void push(int value){
    if(top<MAX-1)
    stack[++top]=value;
}
int pop(){
    if(top>=0)
    return stack[top--];
    return-1;
}
void sortStack(){
    int tempStack[MAX];
    int tempTop=-1;
    while(top>=0){
        int temp=pop();
        while(tempTop>=0&&tempStack[tempTop]>temp){
            push(tempStack[temptop--]);
        }
        tempStack[++tempTop]=temp;
    }
    while(tempTop>=0){
        push(tempStack[tempTop--]);
    }
   
}
    int main()
        int n;
        scanf("%d",&n);
        if(n<=0){
            printf("Invalid input");
            return 0;
}
    for(int i=0;i<n;i++){
        int value;
        scanf("%d",&value);
        push(value);
}
    sortstack();
    for(int i=top;i>=0;i--){
        printf("%d ",stack[i]);
}
return 0;