#include <bits/stdc++.h>
using namespace std;
const int maxn = 7777;
int n, k[2], s[2][maxn];
int cnt[2][maxn];
int ans[2][maxn];
struct Item {
  int who, po;
};
stack<Item> st;
int moveleft(int po, int d) { return ((po - 1) + n - d) % n + 1; }
void run(int u, int po) {
  int v = u ^ 1;
  if (ans[u][po] == 1) {
    for (int i = 0; i < k[v]; i++) {
      int npo = moveleft(po, s[v][i]);
      cnt[v][npo]++;
      if (ans[v][npo] == 0 && cnt[v][npo] >= k[v]) {
        ans[v][npo] = 2;
        st.push({v, npo});
      }
    }
  } else {
    for (int i = 0; i < k[v]; i++) {
      int npo = moveleft(po, s[v][i]);
      if (ans[v][npo] == 0) {
        ans[v][npo] = 1;
        st.push({v, npo});
      }
    }
  }
}
int main(void) {
  scanf("%d", &n);
  for (int i = 0; i < 2; i++) {
    scanf("%d", &k[i]);
    for (int j = 0; j < k[i]; j++) scanf("%d", &s[i][j]);
    ans[i][1] = 2;
    st.push({i, 1});
  }
  while (!st.empty()) {
    Item u = st.top();
    st.pop();
    run(u.who, u.po);
  }
  for (int u = 0; u < 2; u++) {
    for (int i = 2; i <= n; i++) {
      if (ans[u][i] == 0)
        printf("Loop");
      else if (ans[u][i] == 1)
        printf("Win");
      else
        printf("Lose");
      if (i == n)
        printf("\n");
      else
        printf(" ");
    }
  }
}
