#include <stdio.h> 

int main() {
    int n, m;
    scanf("%d%d", &n, &m); 

    int a[1000] = {0}; 
    int b[1000] = {0}; 

    for (int i = 0; i < n; i++) { 
        scanf("%d", &a[i]); 
	}
    for (int i = 0; i < m; i++) {
        scanf("%d", &b[i]);
    }
    int i = 0; 
    int j = 0; 

    while (i < n && j < m) { // 当i和j都在各自数组的范围内时,执行循环
        if (a[i] < b[j]) { // 如果a[i]小于b[j],则输出a[i]并i++
            printf("%d ", a[i]); 
            i++; 
        } else { // 否则,输出b[j]并j++
            printf("%d ", b[j]); 
            j++; 
        }
    }
    while (i < n) { // 如果数组a还有未输出的元素,则继续输出
        printf("%d ", a[i]); 
        i++; 
    }
    while (j < m) { // 如果数组b还有未输出的元素,则继续输出
        printf("%d ", b[j]); 
        j++; 
    }
    return 0; 
}