module forbidden_words_solution;
version = IO_FILES;
import std.stdio;
import std.string;

immutable string PROBLEM_NAME = "forbidden-words";
immutable int LET = 26;
immutable int LOG_LOG = 5;
immutable int LOG_S = LET - LOG_LOG;
immutable int MAX_S = 1 << LOG_S;
immutable int MED = 16;
immutable uint BITS16 = 1 << MED;

uint [] mlo, mhi, glo, ghi;

void prepare ()
{
	void prepare_mark_shift (ref uint [] arr, int shift)
	{
		arr = new uint [BITS16];
		foreach (i; 0..BITS16)
		{
			uint x = i << shift;
			foreach (j; shift..MED + shift)
			{
				if (x & (1u << j))
				{
					foreach (k; 0..LOG_LOG)
					{
						if (!(j & (1u << k)))
						{
							x |= 1 <<
							     (j ^ (1u << k));
						}
					}
				}
			}
			arr[i] = x;
		}
	}
	
	prepare_mark_shift (mlo,  0);
	prepare_mark_shift (mhi, 16);

	void prepare_game_shift (ref uint [] arr, int shift)
	{
		arr = new uint [BITS16];
		foreach (i; 0..BITS16)
		{
			uint x = i << shift;
			foreach_reverse (j; shift..MED + shift)
			{
				if (!(x & (1u << j)))
				{
					foreach (k; 0..LOG_LOG)
					{
						if (j & (1u << k))
						{
							x |= 1 <<
							     (j ^ (1u << k));
						}
					}
				}
			}
			arr[i] = x;
		}
	}

	prepare_game_shift (ghi, 16);
	prepare_game_shift (glo,  0);
}

uint [] f;

bool solve ()
{
	foreach (i; 0..MAX_S)
	{
		f[i] |= mlo[f[i] & (BITS16 - 1)];
		f[i] |= mhi[f[i] >> MED];

		uint t = f[i];
		foreach (j; 0..LOG_S)
		{
			if (!(i & (1u << j)))
			{
				f[i ^ (1u << j)] |= t;
			}
		}
	}

	foreach_reverse (i; 0..MAX_S)
	{
		f[i] |= ghi[f[i] >> MED];
		f[i] |= glo[f[i] & (BITS16 - 1)];

		uint t = ~f[i];
		foreach (j; 0..LOG_S)
		{
			if (i & (1u << j))
			{
				f[i ^ (1u << j)] |= t;
			}
		}
	}

	return f[0] & 1u;
}

void main ()
{
	version (IO_FILES)
	{
		stdin  = File (PROBLEM_NAME ~ ".in",  "rt");
		stdout = File (PROBLEM_NAME ~ ".out", "wt");
	}

	f = new uint [MAX_S];
	prepare ();

	int n;
	while (readf (" %s ", &n) > 0)
	{
		f[] = 0;
		foreach (i; 0..n)
		{
			auto t = readln ().strip ();
			int s = 0;
			foreach (c; t)
			{
				int d = c - 'a';
				s |= 1u << d;
			}
			f[s >> 5] |= 1u << (s & 31);
		}

		writeln (solve () ? "First" : "Second");
	}
}
