#include <bits/stdc++.h>
using namespace std;
int main() {
  int t, n;
  scanf("%d", &t);
  while (t--) {
    scanf("%d", &n);
    vector<int> a(n), l(n), tmp;
    for (int i = 0; i < n; ++i) scanf("%d", &a[i]);
    for (int i = 0; i < n; ++i) {
      scanf("%d", &l[i]);
      if (!l[i]) {
        tmp.push_back(a[i]);
      }
    }
    sort(tmp.begin(), tmp.end());
    for (int i = 0; i < n; ++i) {
      if (l[i]) {
        printf("%d ", a[i]);
      } else {
        printf("%d ", tmp.back());
        tmp.pop_back();
      }
    }
    puts("");
  }
}
