#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
int const N = 100000;
int const M = 100000;
int main() {
int n, m;
cin >> n >> m;
int a[N], c[N], b[M];
for (int i = 1; i <= n; i++) {
scanf("%d", &c[i]);
}
for (int i = 1; i <= m; i++) {
scanf("%d", &b[i]);
}
int num = 0;
for (int i = 1; i <= n; i++) {
if (i == 1 || c[i] != c[i - 1]) {
a[i - num] = c[i];
} else {
num++;
}
}
n -= num;
for (int i = 1; i <= m; i++) {
int l = 1, r = n, mid;
bool found = false;
while (l <= r) {
mid = l + (r - l) / 2;
if (a[mid] == b[i]) {
printf("%d", mid);
found = true;
break;
} else if (a[mid] > b[i]) {
r = mid - 1;
} else {
l = mid + 1;
}
}
if (!found) {
printf("-1");
}
if (i < m) {
printf(" ");
}
}
printf("\n");
return 0;
}