/*
TASK: Intercastellar (JOI 2022)
LANG: C++
AUTHOR: Yowaine
*/
#include <bits/stdc++.h>
using namespace std;
const int N = 200100;
int Q , n;
using ll = long long;
ll idx[N];
int num[N];
int main()
{
cin.tie(0)->sync_with_stdio(false); cout.tie(0);
cin >> n;
for (int i = 1 ; i <= n ; i++){
cin >> num[i];
ll cnt = 1;
while (num[i] % 2 == 0) {
num[i] /= 2;
cnt *= 2;
}
idx[i] = idx[i - 1] + cnt;
}
cin >> Q;
while (Q--)
{
ll id; cin >> id;
int ansidx = lower_bound(idx , idx + n , id) - idx;
cout << num[ansidx] << "\n";
}
return 0;
}