#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 10;
int n, m, par[maxn][2], dis[maxn][2], vis[maxn], s, draw;
vector<int> g[maxn];
void dfs(int u, int col, int dad = 0) {
  vis[u] = 1, dis[u][col] = 1, par[u][col] = dad;
  for (int i : g[u])
    if (!dis[i][col ^ 1])
      dfs(i, col ^ 1, u);
    else
      draw |= vis[i];
  vis[u] = 0;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin >> n >> m;
  for (int i = 1, c, x; i <= n; i++)
    for (cin >> c; c-- && cin >> x; g[i].push_back(x))
      ;
  cin >> s;
  dfs(s, 0);
  for (int i = 1; i <= n; i++) {
    if (g[i].empty() && dis[i][1]) {
      cout << "Win" << endl;
      deque<int> path;
      for (int p = 1; i; i = par[i][p], p ^= 1) path.push_front(i);
      for (int i : path) cout << i << " ";
      return 0;
    }
  }
  cout << (draw ? "Draw" : "Lose");
}
