#include <bits/stdc++.h>
using namespace std;
int n, m, s;
int even_odd[100005][2];
int visited[100005];
vector<int> ans;
vector<int> v[100005];
int dfs(int s, int p) {
  if (v[s].empty() && p) {
    ans.push_back(s);
    return 1;
  }
  for (auto it : v[s]) {
    if (even_odd[it][p ^ 1] == 0) {
      even_odd[it][p ^ 1] = s;
      if (dfs(it, p ^ 1)) {
        ans.push_back(s);
        return 1;
      }
    }
  }
  return 0;
}
bool dfs2(int source) {
  visited[source] = 1;
  for (auto it : v[source])
    if (visited[it] == 1 || (visited[it] == 0 && dfs2(it))) return true;
  visited[source] = 2;
  return false;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  cin >> n >> m;
  for (int i = 0; i < n; i++) {
    int k, a;
    cin >> k;
    for (int j = 0; j < k; j++) {
      cin >> a;
      v[i + 1].push_back(a);
    }
  }
  cin >> s;
  if (dfs(s, 0)) {
    cout << "Win\n";
    for (int i = ans.size() - 1; i >= 0; i--) cout << ans[i] << " \n"[i == 0];
  } else if (dfs2(s))
    cout << "Draw\n";
  else
    cout << "Lose\n";
  return 0;
}
