#include <bits/stdc++.h>
using namespace std;
int a[7010], b[7010], deg[14010], ans[14010], q[14010];
vector<int> e[14010];
int main() {
  int n;
  scanf("%d", &n);
  int n1;
  scanf("%d", &n1);
  for (int i = 0; i < n1; i++) scanf("%d", &a[i]);
  int n2;
  scanf("%d", &n2);
  for (int i = 0; i < n2; i++) scanf("%d", &b[i]);
  for (int i = 1; i <= n; i++) {
    for (int j = 0; j < n1; j++) {
      int first = (i - a[j] + n - 1) % n + 1;
      deg[first]++;
    }
    for (int j = 0; j < n2; j++) {
      int first = (i - b[j] + n - 1) % n + 1;
      deg[n + first]++;
    }
  }
  for (int i = 1; i <= 2 * n; i++) ans[i] = 2;
  ans[1] = ans[n + 1] = 1;
  int f = 1, r = 2;
  q[1] = 1;
  q[2] = n + 1;
  while (f <= r) {
    int first = q[f++];
    if (first > n)
      for (int j = 0; j < n1; j++) {
        int second = (first - a[j] + n - 1) % n + 1;
        if (ans[second] == 2) {
          if (ans[first] == 1) {
            q[++r] = second;
            ans[second] = 0;
          } else if (--deg[second] == 0) {
            q[++r] = second;
            ans[second] = 1;
          }
        }
      }
    else
      for (int j = 0; j < n2; j++) {
        int second = (first - b[j] + n - 1) % n + 1 + n;
        if (ans[second] == 2) {
          if (ans[first] == 1) {
            q[++r] = second;
            ans[second] = 0;
          } else if (--deg[second] == 0) {
            q[++r] = second;
            ans[second] = 1;
          }
        }
      }
  }
  for (int i = 2; i <= n; i++)
    printf(ans[i] ? (ans[i] == 1 ? "Lose " : "Loop ") : "Win ");
  puts("");
  for (int i = n + 2; i <= 2 * n; i++)
    printf(ans[i] ? (ans[i] == 1 ? "Lose " : "Loop ") : "Win ");
  puts("");
  return 0;
}
