#include int dp[300][300]; int Y,X; char isPrime(int a){ if(a == 2) return 1; for(int k = 2; k*k <= a; k++) if(a%k==0) return 1; return 0; } int min(int a, int b){return (ab)?a:b;} int main(){ scanf("%d %d",&Y,&X); for(int x = 0; x < 300; x++){ for(int y = 0; y < 300; y++){ dp[x][y]=(isPrime(x+X)||isPrime(y+Y))?-1:100000; } } dp[0][0]=0; for(int x = 0; x < 300; x++){ for(int y = 0; y < 300; y++){ if(dp[x][y] != -1){ int a = (dp[x-1][y]!=-1)?dp[x-1][y]:10000000; int b = (dp[x][y-1]!=-1)?dp[x][y-1]:10000000; dp[x][y] = min(a,b)+1; } } } int cnt = 0; for(int x = 0; x < 300; x++){ for(int y = 0; y < 300; y++){ if(dp[x][y] != -1 && dp[x][y] != 100000){ cnt = max(cnt,dp[x][y]); } } } printf((cnt%2)?"First\n":"Second\n"); }