#include <bits/stdc++.h>
using namespace std;
const int maxn = (int)1.1e5;
char a[maxn], m[maxn][2];
vector<int> g[maxn], path;
int win, draw;
void dfs(int, int);
int main() {
  int n, k, _;
  cin >> n >> k;
  for (int i = 0; i < (n); i++) {
    cin >> k;
    for (int j = 0; j < (k); j++) {
      cin >> _;
      g[i + 1].push_back(_);
    }
  }
  cin >> _;
  dfs(_, 0);
  if (draw)
    cout << "Draw" << endl;
  else
    cout << "Lose" << endl;
  return 0;
}
void dfs(int x, int p) {
  if (m[x][p] > 1) {
    draw = 1;
    return;
  }
  if (m[x][p]) return;
  m[x][p] = 2;
  path.push_back(x);
  for (int i = 0; i < ((int)g[x].size()); i++) dfs(g[x][i], 1 - p);
  if ((!(int)g[x].size()) && p) {
    cout << "Win\n";
    for (int i = 0; i < ((int)path.size()); i++) cout << path[i] << ' ';
    cout << endl;
    exit(0);
  }
  m[x][p] = 1;
  path.pop_back();
}
