#include <bits/stdc++.h>
using namespace std;
const int MAXN = 5010;
int f[MAXN];
string s;
int l;
int ans[MAXN];
int help[MAXN];
int nim[MAXN];
int start[MAXN];
void init() {
  f[0] = 0;
  f[1] = 1;
  for (int i = 2; i <= l; ++i) {
    memset(nim, 0, sizeof(nim));
    nim[f[i - 2] ^ f[0]] = 1;
    for (int j = 2; j <= i - 1; ++j) nim[f[i - j - 1] ^ f[j - 2]] = 1;
    for (int j = 0;; ++j)
      if (nim[j] == 0) {
        f[i] = j;
        break;
      }
  }
}
int main() {
  cin >> s;
  l = s.size();
  init();
  int top = 0;
  for (int i = 1; i < l - 1; ++i)
    if (s[i - 1] == s[i + 1]) ans[++top] = i;
  int cnt = 0;
  if (top >= 1) {
    help[1] = 1;
    start[1] = ans[1];
    cnt = 1;
  }
  for (int i = 2; i <= top; ++i)
    if (ans[i] == ans[i - 1] + 1)
      help[cnt]++;
    else {
      cnt++;
      help[cnt] = 1;
      start[cnt] = ans[i];
    }
  int out = 0;
  for (int i = 1; i <= cnt; ++i) out = out ^ f[help[i]];
  if (!out)
    cout << "Second" << endl;
  else {
    cout << "First" << endl;
    for (int j = 1; j <= cnt; ++j) {
      if (help[j] == 1) {
        if (!out ^ f[help[j]]) {
          cout << start[j] + 1 << endl;
          return 0;
        }
      }
      if (!(out ^ f[help[j]] ^ f[help[j] - 2])) {
        cout << start[j] + 1 << endl;
        return 0;
      }
      for (int k = 2; k <= help[j] - 1; ++k)
        if (!(out ^ f[help[j]] ^ f[help[j] - k - 1] ^ f[k - 2])) {
          cout << start[j] + k << endl;
          return 0;
        }
    }
  }
  return 0;
}
