func_code_string: #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;   }   