50 50 50 50
 49 49 4 1
 48 50 12 11
 5 7 1 10
 1 50 50 50
 5 7 1 4
 32 4 17 3
 1 50 1 50
 50 1 1 1
 32 31 10 9
 5 7 4 1
 49 49 3 3
 50 49 1 2
 50 48 3 1
 50 1 1 50
 5 7 10 10
 1 1 1 1
 49 50 11 12

Second
 Second
 Second
 Second
 Second
 Second
 First
 Second
 First
 First
 Second
 Second
 First
 First
 First
 Second
 Second
 Second

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#include <iostream>
#include <math.h>
#include <stdio.h>
#include <conio.h>
#include <algorithm>
using namespace std;
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int n,m;
int f[100][100][2];
bool g[100][100][2];
int n1,n2,k1,k2;
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int input()
{
	scanf("%d%d%d%d",&n1,&n2,&k1,&k2);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int calc(int x1,int x2,int i)
{
	int res,j;
	if (i==1&&x1==0) return(2);
	if (i==2&&x2==0) return(1);
	if (g[x1][x2][i]) return(f[x1][x2][i]);
	if (i==1)
		{
			res=2;
			for (j=1;j<=min(k1,x1);j++) 
				if (calc(x1-j,x2,2)==1) res=1;
		}
	if (i==2)
		{
			res=1;
			for (j=1;j<=min(k2,x2);j++)
				if (calc(x1,x2-j,1)==2) res=2;
		}
	g[x1][x2][i]=true;
	f[x1][x2][i]=res;
	return(res);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int process()
{
	if (calc(n1,n2,1)==1) printf("Fisrt"); else printf("Second");
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int main() 
{
    input();
    process();
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
