#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:66777216")
using namespace std;
const int N = 5007;
int n, g[N], used[N];
char st[N];
bool f[N];
int main() {
  scanf("%s", st);
  n = strlen(st);
  for (int i = 1; i < n - 1; ++i) {
    f[i] = (st[i - 1] == st[i + 1]);
  }
  g[0] = 0;
  g[1] = 1;
  for (int i = 2; i <= n; ++i) {
    for (int j = 0; j < i; ++j) {
      int l = max(0, j - 1);
      int r = max(0, i - j - 2);
      used[g[l] ^ g[r]] = i;
    }
    for (int &j = g[i]; used[j] == i; ++j)
      ;
  }
  int ans = 0;
  for (int i = 0; i < n;) {
    int j = i;
    while (j < n && f[j]) {
      ++j;
    }
    ans ^= g[j - i];
    if (i == j) {
      ++j;
    }
    i = j;
  }
  puts(ans == 0 ? "Second" : "First");
  if (ans) {
    for (int i = 0; i < n; ++i) {
      if (!f[i]) {
        continue;
      }
      bool tmp1 = f[i - 1];
      bool tmp2 = f[i + 1];
      f[i] = false;
      f[i - 1] = false;
      f[i + 1] = false;
      int cur = 0;
      for (int k = 0; k < n;) {
        int j = k;
        while (j < n && f[j]) {
          ++j;
        }
        cur ^= g[j - k];
        if (k == j) {
          ++j;
        }
        k = j;
      }
      if (cur == 0) {
        printf("%d\n", i + 1);
        break;
      }
      f[i] = true;
      f[i - 1] = tmp1;
      f[i + 1] = tmp2;
    }
  }
  return 0;
}
