// BubleSort
#include <stdio.h>
#include <stdlib.h>
 
void printA(int a[], int n){
    int i;
    for(i=0;i<n;i++){
        printf("%d ",a[i]);
    }
    printf("\n");
}
 
void swap(int* a, int* b){
    int  tmp;
    tmp = *a;
    *a = *b;
    *b = tmp;
}
 
 
//バブルソート関数
void BubleSort(int a[], int n){
	for(int i=0; i<n-1; i++){
		for(int j=1; j<n-i; j++){
			if(a[j]<a[j-1]){
			swap(&a[j],&a[j-1]);
		}
		}
	}
}
 
int main(void){
    int n,i;
    int *v;
    scanf("%d",&n);
    v = (int*)malloc(sizeof(int)*n);
    if(v==NULL){
        printf("ERROR\n");
        return -1;
    }
    for(i=0;i<n;i++){
        scanf("%d",&v[i]);
    }
    BubleSort(v,n);
    printA(v,n);
    free(v);
    return 0;
}
 