import java.io.*;
import java.util.*;
class Main {
private static int[] numbers;
private static int[] aux;
private static void readData(Scanner scanner) {
int n = scanner.nextInt();
numbers = new int[n];
aux = new int[n];
for (int i = 0; i < n; i++)
numbers[i] = scanner.nextInt();
}
private static void mergeSort(int left, int right) {
if (left >= right)
return;
int mid = (left + right) / 2;
mergeSort(left, mid);
mergeSort(mid + 1, right);
int i = left, j = mid + 1, k = 0;
while (i <= mid && j <= right) {
if (numbers[i] <= numbers[j])
aux[k++] = numbers[i++];
else aux[k++] = numbers[j++];
}
for (; i <= mid; i++) aux[k++] = numbers[i];
for (; j <= mid; j++) aux[k++] = numbers[j];
for (i = 0; i < k; i++)
numbers[left + i] = aux[i];
}
public static void main(String[] args) {
try {
File inputFile = new File("algsort.in");
File outputFile = new File("algsort.out");
FileInputStream inputStream = new FileInputStream(inputFile);
FileOutputStream outputStream = new FileOutputStream(outputFile);
Scanner scanner = new Scanner(inputStream);
PrintWriter writer = new PrintWriter(outputStream);
readData(scanner);
scanner.close();
inputStream.close();
mergeSort(0, numbers.length - 1);
for (int number: numbers) {
writer.print(number);
writer.print(' ');
}
writer.print('\n');
writer.close();
outputStream.close();
} catch(IOException e) {};
}
}