#include <bits/stdc++.h>
using namespace std;
constexpr int N = 5e3 + 7;
inline int in() {
  int x;
  scanf("%d", &x);
  return x;
}
int gr[N], a[N], vis[N];
int grund(int s, int e) {
  int cnt = 0, xr = 0;
  for (int i = s + 1; i <= e - 1; i++) {
    if (a[i])
      cnt++;
    else {
      xr ^= gr[cnt];
      cnt = 0;
    }
  }
  if (cnt) xr ^= gr[cnt];
  return xr;
}
int32_t main() {
  ios::sync_with_stdio(0);
  string s;
  cin >> s;
  int n = (int)s.size();
  for (int i = 1; i < n - 1; i++) a[i] = (s[i - 1] == s[i + 1]);
  gr[1] = 1, gr[2] = 1;
  for (int i = 3; i <= n; i++) {
    for (int j = 0; j < i; j++)
      vis[(gr[max(j - 1, 0)] ^ gr[max(i - j - 2, 0)])] = i;
    for (int j = 0; j < N; j++)
      if (vis[j] != i) {
        gr[i] = j;
        break;
      }
  }
  int xr = grund(0, n - 1);
  if (xr == 0)
    cout << "Second";
  else {
    cout << "First\n";
    for (int i = 0; i <= n; i++) {
      if (a[i] && ((grund(0, i - 1) ^ grund(i + 1, n - 1)) == 0))
        return cout << i + 1, 0;
    }
  }
}
