#include<bits/stdc++.h>
using namespace std;
void Merging(int A[], int B[], int C[], int m, int n)
{
int i = 0, j = 0, k = 0;
while(i < m && j < n)
{
if(A[i] < B[j])
{
C[k] = A[i];
k++;
i++;
}
else
{
C[k] = B[j];
k++;
j++;
}
}
for( ; i < m; i++)
{
C[k] = A[i];
k++;
}
for( ; j < n; j++)
{
C[k] = B[j];
k++;
}
}
int main()
{
int n, m;
cin>>n>>m;
int A[m], B[n];
for(int i = 0; i < m; i++)
{
cin>>A[i];
}
for(int j = 0; j < n; j++)
{
cin>>B[j];
}
int C[m+n];
Merging(A, B, C, m, n);
for(int k = 0; k < m+n; k++)
{
cout<<C[k]<<" ";
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZvaWQgTWVyZ2luZyhpbnQgQVtdLCBpbnQgQltdLCBpbnQgQ1tdLCBpbnQgbSwgaW50IG4pCnsKICAgIGludCBpID0gMCwgaiA9IDAsIGsgPSAwOwoKICAgIHdoaWxlKGkgPCBtICYmIGogPCBuKQogICAgewogICAgICAgIGlmKEFbaV0gPCBCW2pdKQogICAgICAgIHsKICAgICAgICAgICAgQ1trXSA9IEFbaV07CiAgICAgICAgICAgIGsrKzsKICAgICAgICAgICAgaSsrOwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICBDW2tdID0gQltqXTsKICAgICAgICAgICAgaysrOwogICAgICAgICAgICBqKys7CiAgICAgICAgfQogICAgfQogICAgZm9yKCA7IGkgPCBtOyBpKyspCiAgICB7CiAgICAgICAgQ1trXSA9IEFbaV07CiAgICAgICAgaysrOwogICAgfQogICAgZm9yKCA7IGogPCBuOyBqKyspCiAgICB7CiAgICAgICAgQ1trXSA9IEJbal07CiAgICAgICAgaysrOwogICAgfQp9CgppbnQgbWFpbigpCnsKICAgIGludCBuLCBtOwogICAgY2luPj5uPj5tOwogICAgaW50IEFbbV0sIEJbbl07CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbTsgaSsrKQogICAgewogICAgICAgIGNpbj4+QVtpXTsKICAgIH0KICAgIGZvcihpbnQgaiA9IDA7IGogPCBuOyBqKyspCiAgICB7CiAgICAgICAgY2luPj5CW2pdOwogICAgfQogICAgaW50IENbbStuXTsKCiAgICBNZXJnaW5nKEEsIEIsIEMsIG0sIG4pOwoKICAgIGZvcihpbnQgayA9IDA7IGsgPCBtK247IGsrKykKICAgIHsKICAgICAgICBjb3V0PDxDW2tdPDwiICI7CiAgICB9Cn0K