/*4572
#include <stdio.h>
int i, j, m, n, k, t, l, a, b, c, d, q;
int x[105][105]= {};
int y[50]= {};
int s(int x1, int y1)
{
x[x1][y1]=1;
t++;
if(x[x1+1][y1]==0)
{
s(x1+1, y1);
}
if(x[x1][y1+1]==0)
{
s(x1, y1+1);
}
if(x[x1-1][y1]==0)
{
s(x1-1, y1);
}
if(x[x1][y1-1]==0)
{
s(x1, y1-1);
}
}
int main()
{
scanf("%d %d %d", &n, &m, &k);
for(i=0; i<k; i++)
{
scanf("%d %d %d %d", &a, &b, &c, &d);
for(j=a; j<c; j++)
{
for(l=b; l<d; l++)
{
x[j+1][l+1]=1;
}
}
}
for(i=0; i<=m+1; i++)
{
for(j=0; j<=n+1; j++)
{
if(i==0 || j==0 || i==m+1 || j==n+1 )
{
x[i][j]=1;
}
}
}
for(i=1; i<=m; i++)
{
for(j=1; j<=n; j++)
{
if(x[i][j]==0)
{
//printf("%d %d>>>>", i, j);
t=0;
s(i, j);
y[q++]=t;
// printf("q : %d, t : %d\n", q, t);
}
}
}
printf("%d\n", q);
for(i=0; i<q; i++)
{
for(j=0; j<q; j++)
{
if(y[j]>y[j+1])
{
int temp = y[j];
y[j]=y[j+1];
y[j+1]=temp;
}
}
}
for(i=1; i<=q; i++)
{
printf("%d ", y[i]);
}
}
*/
/*
#include <stdio.h>
int i, j, n, m, right, left;
int a[1000000]= {};
int b[1000000]= {};
int c[1000000]= {};
int r(int x)
{
}
int main()
{
scanf("%d", &n);
for(i=0; i<n; i++)
{
scanf("%d", a[i]);
}
scanf("%d", &m);
for(i=0; i<m; i++)
{
scanf("%d", b[i]);
}
for(i=0; i<n; i++)
{
//p1 = a[i];
left = 0;
right = m-1;
mid = (left + right) / 2;
for(;;) {
}
}
}
*/
=========================================
#include <stdio.h>
int i, j, m, n, k, t;
int a[1000000]= {};
int b[1000000]= {};
int c[1000000]= {};
int main()
{
scanf("%d", &n);
for(i=0; i<n; i++)
{
scanf("%d", &a[i]);
}
scanf("%d", &m);
for(i=0; i<m; i++)
{
scanf("%d", &b[i]);
}
int left = 0;
int right = n;
for( i=0; ; i++)
{
int mid = (left+right)/2;
if(b[i]<a[mid])
{
right = mid-1;
if(b[i]>a[mid])
{
c[t++]= -1;
break;
}
}
else if(b[i]>a[mid])
{
left= mid+1;
if(b[i]<a[mid])
{
c[t++]= -1;
break;
}
}
else if(b[i]==a[mid])
{
c[t++]=mid;
break;
}
}
for(i=0; i<m; i++)
{
printf("%d ", c[i]);
}
}