#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1010;
const int MAXK = 18;
const int INF = 1e9;
const long long MOD = 998244353;
vector<long long> V[MAXN];
long long N, a, b, c, d, T, Q, M, x, y, z, u, v, w;
void update(long long w) {
  cout << w << endl;
  long long h;
  cin >> h;
  if (h == 0) exit(0);
  if (h == 1)
    a += w;
  else if (h == 2)
    b += w;
  else
    c += w;
  if (a == b || b == c || a == c) exit(0);
}
int main() {
  cin >> a >> b >> c;
  cout << "First" << endl;
  update(1e10);
  update(1e10 + 1e9);
  for (int i = 0; i < 2; ++i) {
    vector<long long> t;
    t.emplace_back(a);
    t.emplace_back(b);
    t.emplace_back(c);
    sort(t.begin(), t.end());
    long long beta = t[2] - t[1];
    long long alpha = t[1] - t[0];
    if (i == 0)
      update(alpha + beta + beta);
    else
      update(alpha);
  }
}
