#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int findUpperbound(vector<int> &arr , int key) {
int s = 0 ;
int e = arr.size()-1;
int ans = -1;
while (s<=e) {
int mid = s+(e-s)/2;
if (arr[mid] > key) {
ans = mid;
e = mid-1;
}
else{
s = mid+1;
}
}
return ans;
}
int main() {
// your code goes here
int n;
cin>>n;
int x ;
cin>>x;
vector<int>arr(n);
for (int i = 0 ; i<n; i++) cin>>arr[i];
int ans = findUpperbound(arr , x);
cout<< arr[ans];
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgZmluZFVwcGVyYm91bmQodmVjdG9yPGludD4gJmFyciAsIGludCBrZXkpIHsKCWludCBzID0gMCA7CglpbnQgZSA9IGFyci5zaXplKCktMTsKCWludCBhbnMgPSAtMTsKCQoJd2hpbGUgKHM8PWUpIHsKCQlpbnQgbWlkID0gcysoZS1zKS8yOwoJCWlmIChhcnJbbWlkXSA+IGtleSkgewoJCQlhbnMgPSBtaWQ7CgkJCWUgPSBtaWQtMTsKCQl9CgkJZWxzZXsKCQkJcyA9IG1pZCsxOwoJCX0KCX0KCXJldHVybiBhbnM7Cn0KaW50IG1haW4oKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglpbnQgbjsKCWNpbj4+bjsKCWludCB4IDsKCWNpbj4+eDsKCXZlY3RvcjxpbnQ+YXJyKG4pOwoJCglmb3IgKGludCBpID0gMCA7IGk8bjsgaSsrKSBjaW4+PmFycltpXTsKCQoJaW50IGFucyA9IGZpbmRVcHBlcmJvdW5kKGFyciAsIHgpOwoJY291dDw8IGFyclthbnNdOwoJcmV0dXJuIDA7Cn0=