#include<stdio.h>
void mergeArray(int *a1, int n1, int *a2, int n2, int *merged)
{
    int i=0,j=0,k=0;
    while(i< n1 && j < n2)
    {
        if(*(a1+i) <= *(a2 + j))
        {
            *(merge +k) =*(a1 + i);
            i++;
        }
        else
        {
            *(merge +k) =*(a2 + j);
            j++;
        }
        k++;
    }
    while(i<n1)
    {
        *(merge +k) =*(a1 + i);
        i++;
        j++;
    }
    while(j<n2)
    {
        *(merge +k) = *(a2 + j);
        i++;
        k++;
    }
}
int main()
{
    int N1,N2;
    
    scanf("%d ", &N1);
    if(N1<=0)
    {
        printf("Invalid input");
        return 0;
    }
    int arr1[N1];
    for(int i=0;i<N1;i++)
    {
        scanf("%d ", &arr1[i]);
    }
    scanf("%d ", &N2);
    if(N2<=0)
    {
        printf("Invalid input");
        return 0;
    }
    int arr2[N2];
    for(int i=0;i<N2;i++)
    {
        scanf("%d ", &arr2[i]);
    }
    int merge[N1+N2];
    mergeArray(arr1,N1,arr1,N2,merge);
    for(int i=0;i<N1+N2;i++)
    {
        printf("%d ",merge[i]);
    }
    return 0;
}