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 <bits/stdc++.h>
using namespace std;
int n1, n2, k1, k2;
int arr[52];
map<pair<int, int>, int> f, s;
int dp(int n1, int n2, int t) {
  if (n1 == 0 && t == 1) return 2;
  if (n2 == 0 && t == 2) return 1;
  if (t == 1) {
    int i = 1;
    while (i <= k1) {
      if (s.find(make_pair(n1 - i, n2)) == s.end())
        s.insert(make_pair(make_pair(n1 - i, n2), dp(n1 - i, n2, 2)));
      if (s.find(make_pair(n1 - i, n2))->second == 1) return 1;
      ++i;
    }
    f.insert(make_pair(make_pair(n1, n2), 2));
    return 2;
  } else if (t == 2) {
    int i = 1;
    while (i <= k2) {
      if (f.find(make_pair(n1, n2 - i)) == f.end())
        f.insert(make_pair(make_pair(n1, n2 - i), dp(n1, n2 - i, 1)));
      if (f.find(make_pair(n1, n2 - i))->second == 2) return 2;
      ++i;
    }
    s.insert(make_pair(make_pair(n1, n2), 1));
    return 1;
  }
}
int main() {
  memset(arr, 0, 52 * 4);
  cin >> n1 >> n2 >> k1 >> k2;
  if (dp(n1, n2, 1) == 1)
    cout << "First";
  else
    cout << "Second";
  return 0;
}
