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

import java.util.*;

public class A {
	static int k1, k2;
	static Boolean[][][] memo;
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n1 = sc.nextInt();
		int n2 = sc.nextInt();
		k1 = sc.nextInt();
		k2 = sc.nextInt();
		memo = new Boolean[n1+1][n2+1][2];
		System.out.println(win(n1,n2,0) ? "First" : "Second");
	}
	
	static boolean win(int amt1, int amt2, int f) {
		if (memo[amt1][amt2][f] != null) {
			return memo[amt1][amt2][f];
		}
		if (f == 0) {
			if (amt1 == 0) {
				return false;
			} else {
				boolean canWin = false;
				for (int i = 1; i <= k1; i++) {
					if (i > amt1) break;
					canWin |= !win(amt1-i, amt2, 1);
				}
				return memo[amt1][amt2][f]=canWin;
			}
		} else {
			if (amt2 == 0) {
				return false;
			} else {
				boolean canWin = false;
				for (int i = 1; i <= k2; i++) {
					if (i > amt2) break;
					canWin |= !win(amt1, amt2-i, 0);
				}
				return memo[amt1][amt2][f]=canWin;
			}
		}
	}
}