#include <bits/stdc++.h>
using namespace std;
struct data {
  bool even;
  bool odd;
  int even_parent;
  int odd_parent;
  data() {
    even = false;
    odd = false;
    even_parent = 0;
    odd_parent = 0;
  }
};
int main() {
  int n, m;
  cin >> n >> m;
  vector<vector<int> > graph(n + 1, vector<int>());
  for (int i = 1; i <= n; ++i) {
    int c;
    cin >> c;
    for (int j = 0; j < c; ++j) {
      int e;
      cin >> e;
      graph[i].push_back(e);
    }
  }
  int s;
  cin >> s;
  vector<data> info(n + 1, data());
  info[s].even = true;
  info[s].even_parent = -1;
  queue<int> Q;
  Q.push(s);
  int win = 0;
  while (!Q.empty()) {
    int v = Q.front();
    Q.pop();
    if (graph[v].empty()) {
      if (info[v].odd) {
        win = v;
        break;
      }
    }
    if (info[v].even) {
      for (auto it = graph[v].begin(); it != graph[v].end(); ++it) {
        if (info[*it].odd == false) {
          info[*it].odd = true;
          info[*it].odd_parent = v;
          Q.push(*it);
        }
      }
    }
    if (info[v].odd) {
      for (auto it = graph[v].begin(); it != graph[v].end(); ++it) {
        if (info[*it].even == false) {
          info[*it].even = true;
          info[*it].even_parent = v;
          Q.push(*it);
        }
      }
    }
  }
  if (win != 0) {
    vector<int> win_path;
    bool even = false;
    while (win != -1) {
      win_path.push_back(win);
      win = even ? info[win].even_parent : info[win].odd_parent;
      even = !even;
    }
    cout << "Win" << endl;
    for (auto it = win_path.rbegin(); it != win_path.rend(); ++it) {
      cout << *it << " ";
    }
  } else {
    stack<pair<int, int> > St;
    enum clr { WHITE, GRAY, BLACK };
    vector<clr> color(n + 1, WHITE);
    St.push(pair<int, int>(s, 0));
    color[s] = GRAY;
    while (!St.empty()) {
      int v = St.top().first;
      int w = St.top().second;
      if (w >= graph[v].size()) {
        color[v] = BLACK;
        St.pop();
      } else {
        St.top().second++;
        int new_v = graph[v][w];
        if (color[new_v] == WHITE) {
          St.push(pair<int, int>(new_v, 0));
          color[new_v] = GRAY;
        } else if (color[new_v] == GRAY) {
          cout << "Draw";
          return 0;
        }
      }
    }
    cout << "Lose";
  }
  return 0;
}
