#include <bits/stdc++.h>
using namespace std;
long long n, m, s, tmp1, tmp2;
vector<long long> ans;
vector<vector<long long>> g(100000);
bool vs[2][100000];
bool vs1[100000] = {0}, rc[100000] = {0};
bool a = false, w = false, d = false, t = false;
long long cnt = 0;
void hasc(long long v) {
  vs1[v - 1] = true;
  rc[v - 1] = true;
  for (auto el : g[v - 1]) {
    if (!vs1[el - 1])
      hasc(el);
    else if (rc[el - 1]) {
      d = true;
    }
  }
  rc[v - 1] = false;
}
void dfs(long long v) {
  ans.push_back(v);
  vs[a][v - 1] = true;
  if (a && !(g[v - 1].size())) {
    w = 1;
    return;
  }
  a = !a;
  for (auto el : g[v - 1])
    if (!vs[a][el - 1] && !w) {
      dfs(el);
    }
  a = !a;
  if (w) return;
  ans.pop_back();
}
int main() {
  cin >> n >> m;
  for (int i = 0; i < n; i++) {
    cin >> tmp1;
    for (int j = 0; j < tmp1; j++) {
      cin >> tmp2;
      g[i].push_back(tmp2);
    }
  }
  cin >> s;
  dfs(s);
  hasc(s);
  if (w) {
    cout << "Win" << endl;
    for (auto el : ans) cout << el << " ";
    cout << endl;
  } else if (d) {
    cout << "Draw" << endl;
  } else
    cout << "Lose" << endl;
  return 0;
}
