#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
using namespace std;
int n = 0;
int m = 0;
int u = 1;
int arr[1000010];
int search[100010];
int find() {
int l = 1;
int r = n;
int mid = n / 2;
while (l <= r) {
mid = (l + r) / 2;
if (arr[mid] < search[u]) {
l = mid + 1;
}
else if (arr[mid] > search[u]) {
r = mid - 1;
}
else if (arr[mid] == search[u]) {
while (arr[mid - 1] == search[u] && mid <= n / 2) {
mid--;
}
return mid;
}
}
return -1;
}
int main() {
scanf("%d %d", &n, &m);
for (int i = 1; i <= n; i++) {
scanf("%d", &arr[i]);
}
for (int k = 1; k <= m; k++) {
scanf("%d", &search[k]);
}
for (int j = 1; j <= m; j++) {
int ans = find();
cout << ans <<" ";
u++;
}
return 0;
}