#include<stdio.h>
#include<stdlib.h>
int func(const void* a, const void* b);
int main() {
    int a[10005], b[10005], c[100005], n, i, m, j;
    scanf("%d %d", &n, &j);
    for (i = 0; i < n; i++) {
        scanf("%d", &a[i]);
        c[i] = a[i];
    }
    for (i = 0; i < j; i++) {
        scanf("%d", &b[i]);
        c[i + n] = b[i];
    }
    qsort(c, n + j, sizeof(int), func);
    for (i = 0; i < n + j; i++) {
        printf("%d ", c[i]);
    }
    return 0;
}
int func(const void* a, const void* b) { //定义排序函数
    return (*(int*)a) - (*(int*)b);
}