func_code_string: #include <bits/stdc++.h>   using namespace std;   const int m = 31623;   int nim[] = {       0, 1, 2, 1, 4, 3, 2, 1, 5, 6,  2, 1, 8, 7,  5,       9, 8, 7, 3, 4, 7, 4, 2, 1, 10, 9, 3, 6, 11, 12,   };   bool isLarge[m];   int n;   int main(void) {     cin >> n;     memset(isLarge, true, sizeof(isLarge));     for (int i = 2; i < m; i++)       if (isLarge[i]) {         for (int j = i * i; j < m; j *= i) isLarge[j] = false;       }     int ans = 0;     int left = n;     for (int i = 2; i < min(n + 1, m); i++) {       if (isLarge[i]) {         int cnt = 0;         for (long long j = 1; j <= n; j *= i, cnt++)           ;         cnt--;         ans = ans ^ nim[cnt];         left -= cnt;       }     }     if (left % 2 == 1) ans = ans ^ 1;     if (ans)       cout <<  Vasya  << endl;     else       cout <<  Petya  << endl;     return 0;   }   