import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.math.BigInteger;
import java.util.StringTokenizer;

public class game_sm_wrong {
	long n;

	void solve() throws IOException {
		String s = br.readLine();
		BigInteger n = new BigInteger(s);
		assert BigInteger.ONE.compareTo(n) <= 0 && n.compareTo(BigInteger.TEN.pow(100000)) <= 0;
		if (s.length() < 5) {
			this.n = n.longValue();
			if (who(1, 0) == 1) {
				out.println("First");
				return;
			} else {
				out.println("Second");
				return;
			}
		}
		if (s.length() % 2 == 1) {
			// 909090910
			for (int i = 0; i < s.length(); i++) {
				int c = -1;
				if (i == s.length() - 1) {
					c = 0;
				} else if (c == s.length() - 2) {
					c = 1;
				} else if (i % 2 == 0) {
					c = 9;
				} else {
					c = 0;
				}
				if (s.charAt(i) < c) {
					out.println("First");
					return;
				}
				if (s.charAt(i) > c) {
					out.println("Second");
					return;
				}
			}
			out.println("Second");
		} else {
			// 1909090910
			for (int i = 0; i < s.length(); i++) {
				int c = -1;
				if (i == 0) {
					c = 1;
				} else if (i == s.length() - 1) {
					c = 0;
				} else if (c == s.length() - 2) {
					c = 1;
				} else if (i % 2 == 1) {
					c = 9;
				} else {
					c = 0;
				}
				if (s.charAt(i) < c) {
					out.println("Second");
					return;
				}
				if (s.charAt(i) > c) {
					out.println("First");
					return;
				}
			}
			out.println("First");
		}
	}

	int who(int turn, long cur) {
		if (cur >= n) {
			return -turn;
		}
		for (int i = cur == 0 ? 1 : 0; i <= 9; i++) {
			if (who(-turn, cur * 10 + i) == turn) {
				return turn;
			}
		}
		return -turn;
	}

	BufferedReader br;
	StringTokenizer st;
	PrintWriter out;

	final String filename = "game";

	public void run() {
		try {
			br = new BufferedReader(new FileReader(filename + ".in"));
			out = new PrintWriter(filename + ".out");
			solve();
			out.close();
		} catch (IOException e) {
			e.printStackTrace();
			System.exit(1);
		}
	}

	String nextToken() {
		try {
			while (st == null || !st.hasMoreTokens()) {
				String s = br.readLine();
				if (s == null) {
					return null;
				}
				st = new StringTokenizer(s);
			}
			return st.nextToken();
		} catch (IOException e) {
			throw new RuntimeException();
		}
	}

	int nextInt() {
		return Integer.parseInt(nextToken());
	}

	long nextLong() {
		return Long.parseLong(nextToken());
	}

	public static void main(String[] args) {
		new game_sm_wrong().run();
	}
}
