#include<stdio.h>
void mergeAndSort(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))
       {
           *(merged+k)=*(a1+i);
           i++;
        }
   else
   {
       *(merged+k)=*(a2+j);
       j++;
   }
   k++;
   }
   while(i<n1)
   {
       *(merged+k)=*(a1+i);
       i++;
       k++;
   }
   while(j<n2)
   {
       *(merged+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 merged[N1+N2];
    mergeArrays(arr1,N1,arr2,N2,merged);
    for(int i=0;i<N1+N2;i++)
    {
        printf("%d ",merged[i]);
    }
    return 0;
}