func_code_string: #include <bits/stdc++.h>   using namespace std;   const int MAXN = 1000005;   int n;   int a[MAXN];   int x[MAXN];   int y[MAXN];   int match[MAXN];   bool vis[MAXN];   int main() {     ios::sync_with_stdio(0);     cin >> n;     if (~n & 1) {       cout <<  First  << endl;       for (int i = 1; i <= n; i++) cout << i <<    ;       for (int i = 1; i <= n; i++) cout << i <<    ;       cout << endl;       cout.flush();       return 0;     } else {       cout <<  Second  << endl;       for (int i = 1; i <= 2 * n; i++) {         cin >> a[i];         if (x[a[i]])           y[a[i]] = i;         else           x[a[i]] = i;       }       for (int i = 1; i <= n; i++) {         match[x[i]] = y[i];         match[y[i]] = x[i];       }       for (int i = 1; i <= n; i++) {         int cur = i;         if (vis[i] || vis[i + n]) continue;         while (!vis[cur]) {           vis[cur] = 1;           cur = (match[cur] > n ? match[cur] - n : match[cur] + n);         }       }       int sum = 0;       for (int i = 1; i <= 2 * n; i++)         if (vis[i]) (sum += i) %= (2 * n);       if (sum) {         for (int i = 1; i <= 2 * n; i++) vis[i] ^= 1;       }       for (int i = 1; i <= 2 * n; i++)         if (vis[i]) cout << i <<    ;       cout << endl;       cout.flush();     }     return 0;   }   