#include <stdio.h>
#include <stdlib.h>
void merge_sorted_arrays(int *a,intn,int *b,int m,int *result) 
{
    int i=0,j=0,k=0;
    while(i<n && j<m) 
    {
        if(a[i]<b[j])
        result[k++]=a[i++];
        else
        result[k++]=b[j++];
    }
    while(i<n)
    result[k++]=a[i++];
    while(j<m)
    result[k++]=b[j++];
}
int main() 
{
    int n,m,i;
    scanf("%d",&n);
    if(n<=0) 
    {
        printf("Invalid input\n");
        return 0;
    }
    int *a=(int*)malloc(n * sizeof(int));
    for (i = 0; i < n; i++) {
        scanf("%d", &a[i]);
    }

    scanf("%d", &m);
    if (m <= 0) {
        printf("Invalid input\n");
        free(a);
        return 0;
    }
    int *b = (int *)malloc(m * sizeof(int));
    for (i = 0; i < m; i++) {
        scanf("%d", &b[i]);
    }

    int *result = (int *)malloc((n + m) * sizeof(int));
    merge_sorted_arrays(a, n, b, m, result);

    for (i = 0; i < n + m; i++) {
        printf("%d ", result[i]);
    }
    printf("\n");

    free(a);
    free(b);
    free(result);

    return 0;
}