#include <bits/stdc++.h>
using namespace std;
#define task "orderfrac"
int n;
double eps = 1e-12;
long long a[100002] = {}, b[100002] = {};
bool check(double mid, long long x)
{
unsigned long long res = 0;
long long bs = lower_bound(a, a + n, ceil(double(b[n - 1]) * mid)) - a;
res += bs;
for (int i = n - 2; i >= 0; i--)
{
while (a[bs] < (b[i] * 1.0 * mid) && bs < n)
bs++;
res += bs;
}
return (res < x);
}
void solve(long long x)
{
double l = 0.0, r = 1e7, mid;
for (int i = 0; i < 500 && l + eps < r; ++i)
{
mid = 0.5 * (l + r);
if (check(mid, x))
l = mid;
else
r = mid;
}
// cout<<r<<" "<<x<<'\n';
double div = 1e8, ans1 = 0.0, ans2 = 0.0;
for (int i = 0; i < n; i++)
{
int t = lower_bound(a, a + n, ceil(l * double(b[i]))) - a;
if (a[t] != 0 && b[i] != 0 && (double(a[t])) < div * double(b[i]))
{
div = double(a[t]) / double(b[i]);
ans1 = a[t];
ans2 = b[i];
}
}
// cout<<ans1<<" "<<ans2<<'\n';
long long t1 = ans1, t2 = ans2, gg = __gcd(t1, t2);
t1 /= gg;
t2 /= gg;
cout << t1 << " " << t2 << '\n';
}
int main()
{
if (fopen(task ".inp", "r"))
{
freopen(task ".inp", "r", stdin);
freopen(task ".out", "w", stdout);
}
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int q;
cin >> n >> q;
for (int i = 0; i < n; i++)
cin >> a[i];
sort(a, a + n, less<long long>());
for (int i = 0; i < n; i++)
cin >> b[i];
sort(b, b + n, greater<long long>());
while (q--)
{
long long x;
cin >> x;
solve(x);
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgdGFzayAib3JkZXJmcmFjIgppbnQgbjsKZG91YmxlIGVwcyA9IDFlLTEyOwpsb25nIGxvbmcgYVsxMDAwMDJdID0ge30sIGJbMTAwMDAyXSA9IHt9Owpib29sIGNoZWNrKGRvdWJsZSBtaWQsIGxvbmcgbG9uZyB4KQp7CiAgICB1bnNpZ25lZCBsb25nIGxvbmcgcmVzID0gMDsKICAgIGxvbmcgbG9uZyBicyA9IGxvd2VyX2JvdW5kKGEsIGEgKyBuLCBjZWlsKGRvdWJsZShiW24gLSAxXSkgKiBtaWQpKSAtIGE7CiAgICByZXMgKz0gYnM7CiAgICBmb3IgKGludCBpID0gbiAtIDI7IGkgPj0gMDsgaS0tKQogICAgewogICAgICAgIHdoaWxlIChhW2JzXSA8IChiW2ldICogMS4wICogbWlkKSAmJiBicyA8IG4pCiAgICAgICAgICAgIGJzKys7CiAgICAgICAgcmVzICs9IGJzOwogICAgfQogICAgcmV0dXJuIChyZXMgPCB4KTsKfQp2b2lkIHNvbHZlKGxvbmcgbG9uZyB4KQp7CiAgICBkb3VibGUgbCA9IDAuMCwgciA9IDFlNywgbWlkOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCA1MDAgJiYgbCArIGVwcyA8IHI7ICsraSkKICAgIHsKICAgICAgICBtaWQgPSAwLjUgKiAobCArIHIpOwogICAgICAgIGlmIChjaGVjayhtaWQsIHgpKQogICAgICAgICAgICBsID0gbWlkOwogICAgICAgIGVsc2UKICAgICAgICAgICAgciA9IG1pZDsKICAgIH0KICAgIC8vIGNvdXQ8PHI8PCIgIjw8eDw8J1xuJzsKICAgIGRvdWJsZSBkaXYgPSAxZTgsIGFuczEgPSAwLjAsIGFuczIgPSAwLjA7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykKICAgIHsKICAgICAgICBpbnQgdCA9IGxvd2VyX2JvdW5kKGEsIGEgKyBuLCBjZWlsKGwgKiBkb3VibGUoYltpXSkpKSAtIGE7CiAgICAgICAgaWYgKGFbdF0gIT0gMCAmJiBiW2ldICE9IDAgJiYgKGRvdWJsZShhW3RdKSkgPCBkaXYgKiBkb3VibGUoYltpXSkpCiAgICAgICAgewogICAgICAgICAgICBkaXYgPSBkb3VibGUoYVt0XSkgLyBkb3VibGUoYltpXSk7CiAgICAgICAgICAgIGFuczEgPSBhW3RdOwogICAgICAgICAgICBhbnMyID0gYltpXTsKICAgICAgICB9CiAgICB9CiAgICAvLyBjb3V0PDxhbnMxPDwiICI8PGFuczI8PCdcbic7CiAgICBsb25nIGxvbmcgdDEgPSBhbnMxLCB0MiA9IGFuczIsIGdnID0gX19nY2QodDEsIHQyKTsKICAgIHQxIC89IGdnOwogICAgdDIgLz0gZ2c7CiAgICBjb3V0IDw8IHQxIDw8ICIgIiA8PCB0MiA8PCAnXG4nOwp9CmludCBtYWluKCkKewogICAgaWYgKGZvcGVuKHRhc2sgIi5pbnAiLCAiciIpKQogICAgewogICAgICAgIGZyZW9wZW4odGFzayAiLmlucCIsICJyIiwgc3RkaW4pOwogICAgICAgIGZyZW9wZW4odGFzayAiLm91dCIsICJ3Iiwgc3Rkb3V0KTsKICAgIH0KICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZSgwKTsKICAgIGNvdXQudGllKDApOwogICAgaW50IHE7CiAgICBjaW4gPj4gbiA+PiBxOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspCiAgICAgICAgY2luID4+IGFbaV07CiAgICBzb3J0KGEsIGEgKyBuLCBsZXNzPGxvbmcgbG9uZz4oKSk7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykKICAgICAgICBjaW4gPj4gYltpXTsKICAgIHNvcnQoYiwgYiArIG4sIGdyZWF0ZXI8bG9uZyBsb25nPigpKTsKICAgIHdoaWxlIChxLS0pCiAgICB7CiAgICAgICAgbG9uZyBsb25nIHg7CiAgICAgICAgY2luID4+IHg7CiAgICAgICAgc29sdmUoeCk7CiAgICB9Cn0=