#include <bits/stdc++.h>
using namespace std;
const int MaxN=2e5;
const int MaxA=1e9;
int N,M;
int A[MaxN];
int B[MaxN];
int main() {
cin>>N>>M;
for(int n=0; n<N; n++){
cin>>A[n];
}
for(int m=0; m<M; m++){
cin>>B[m];
B[m]++;
}
sort(A,A+N);
sort(B,B+M);
int n=0;
int m=M;
int a=0,b=0;
while(m>n){
int x=(b==M || a<N && A[a]<=B[b])? A[a]:B[b];
for(; a<N && A[a]==x; a++)
n++;
for(; b<N && B[b]==x; b++)
m--;
if(m<=n){
cout<<x;
return 0;
}
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgpjb25zdCBpbnQgTWF4Tj0yZTU7CmNvbnN0IGludCBNYXhBPTFlOTsKaW50IE4sTTsKaW50IEFbTWF4Tl07CmludCBCW01heE5dOwoKaW50IG1haW4oKSB7CgljaW4+Pk4+Pk07Cglmb3IoaW50IG49MDsgbjxOOyBuKyspewoJCWNpbj4+QVtuXTsKCX0KCWZvcihpbnQgbT0wOyBtPE07IG0rKyl7CgkJY2luPj5CW21dOwoJCUJbbV0rKzsKCX0KCXNvcnQoQSxBK04pOwoJc29ydChCLEIrTSk7CglpbnQgbj0wOwoJaW50IG09TTsKCWludCBhPTAsYj0wOwoJd2hpbGUobT5uKXsKCQlpbnQgeD0oYj09TSB8fCBhPE4gJiYgQVthXTw9QltiXSk/IEFbYV06QltiXTsKCQlmb3IoOyBhPE4gJiYgQVthXT09eDsgYSsrKQoJCSAgbisrOwoJCWZvcig7IGI8TiAmJiBCW2JdPT14OyBiKyspCgkJICBtLS07CgkJaWYobTw9bil7CgkJCWNvdXQ8PHg7CgkJCXJldHVybiAwOwoJCX0KCX0KCXJldHVybiAwOwp9