#include <iostream>

using namespace std;

int main()
{
   int a,b,r,d;
   cin>>a>>b>>r;
   d=2*r;
   if(d<=a&&d<=b)
   {
       cout<<"First";
   }
   else
   {
       cout<<"Second";
   }
}

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
int a,b,r;
int main()
{
	scanf("%d%d%d",&a,&b,&r);
	if(a>=2*r&&b>=2*r)
	{
		printf("First");
	}
	else
	{
		printf("Second");
	}
	return 0;
}
//dd

#include<bits/stdc++.h>

using namespace std;

int main()
{

    int x,y,n,z,r;
    cin>>x>>y>>n;
    r=(2*n);
    while(true)
    {

 if(min(x,y)<r)
 {
    cout<<"Second";
     break;
 }
 else
 {
    cout<<"First";
break;
 }
x-=r;
y-=r;
    }
    return 0;
}

#include <iostream>

using namespace std;

int main()
{
    int a, b, r, t, t1;
    cin >> a >> b >> r;
    if(r + r > a )
    {
        cout << "Second";
        return 0;
    }
    if(r + r > b){
        cout << "Second";
        return 0;
        }
    cout << "First";
}

#include <iostream>
#include<cstring>
using namespace std;
int main()
{
    int a,b,r;
    cin>>a>>b>>r;
if(2*r>min(a,b)) cout<<"Second";
else cout<<"First";
}

#include<bits/stdc++.h>
using namespace std;
int main(){
    int a,b,r,c=0;
    cin>>a>>b>>r;
    if(a>=2*r&&b>=2*r){
    cout<<"First";
    }
    else
    cout<<"Second";
    return 0;
}

#include <iostream>
void go ()
{
    int a, b, r, d = 0;
    std:: cin >> a >> b >> r;
    d = r * 2;
    if (d <= a && d <= b)
    {
        std:: cout << "First";
    }
    else
    {
        std:: cout << "Second";
    }
}

int main()
{
    go();
}

#include <iostream>

using namespace std;

int main()
{
	int a,b,r;
	cin >> a >> b >> r;
	if(2*r > a || 2*r >b)
		cout << "Second" << endl;
	else
		cout << "First" <<endl;

	return 0;
}

#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <vector>
#include <algorithm>
#include <string>
#include <iostream>
#include <memory.h>
#pragma comment(linker,"/STACK:16777216")

using namespace std;

#define pb push_back
#define mp make_pair
#define fs first
#define sc second
#define N 100000
const int oo = int(1e9);
const double pi = acos(-1.0);
const double eps = 1e-7;

typedef __int64 int64;

int main()
{
    //freopen("input.txt","r",stdin); freopen("output.txt","w",stdout);
    int a,b,r,d,k,ok=1;
    scanf("%d%d%d",&a,&b,&r);
    if(a<2*r || b<2*r)  puts("Second");else
        puts("First");
    return 0;
}

#include<stdio.h>
int main()
{
    int x,y,z;
    scanf("%d%d%d",&x,&y,&z);
    if((z*2)<=x&&(z*2)<=y)
        printf("First\n");
    else
        printf("Second\n");
    return 0;
}

#include<bits/stdc++.h>
#define ll long long
#define M 1000000007
#define sz(c) c.size()
#define fr first
#define sc second
#define pb push_back
#define sz(c) c.size()
#define ppb  pop_back
#define mp make_pair
#define all(a)      (a).begin(),(a).end()
#define rep(i,a,n)   for(int i=a ; i<n ; i++)
#define what_is(x)  cout << #x << " is " << x << endl;
using namespace std;
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int TESTS=1;
  //  cin>>TESTS;
    while(TESTS--)
    {
        //freopen("input.txt", "r", stdin);
        //freopen("output.txt", "w", stdout);
        int a,b,r;
        cin>>a>>b>>r;
        if(2*r>a||2*r>b)
        {
            cout<<"Second"<<endl;
        }
        else cout<<"First"<<endl;
    }
}

#include <iostream>
#include <bits/stdc++.h>
#include <iomanip>
#include<math.h>
int max(long long int array[],long long int n );
using namespace std;
int  main(){
  ios_base::sync_with_stdio(0);
  	cin.tie(0);
  	cout.tie(0);
int a,b,r,count;
cin>>a>>b>>r;
double d=sqrt(a*a+b*b)/2-r;
if(2*r>min(a,b))
  cout<<"Second"<<endl;
else{
  count=d/(sqrt(8)*r)+1;
//cout<<count<<endl;
count=2*count-1;
count=2*count-1;
//cout<<count<<endl;
  if(count%2==0)
    cout<<"Second"<<endl;
  else
    cout<<"First"<<endl;
}
}

#include <bits/stdc++.h>
#define ll long long
#define pb push_back
#define mod 1000000007
#define F first
#define S second
#define all(v) (v).begin(),v.end()
#define np next_permutation
using namespace std;
using vi=vector<int>;
#define lp(i,n) for(int i=0;i<n;i++)
#define reps(i,j,n) for(int i=j;i<=n;i++)
#define vii vector<vi>
#define vb vector<bool>
#define pr pair<int,int>
#define vl vector<ll>
#define vs vector<string>
#define ump unordered_map<int,int>
#define Mpq priority_queue<int>
#define mpq priority_queue<int,vi,greater<int>>
#define eb emplace_back
#define pr pair<int,int>
#define vp vector<pr>
#define ld long double
const int MaxN=(int)1e9;

int n,x,sum,a,b,ans,r;
string s;
map<int,int> mp;
int fun(ld x){
   if(x<2*r) return 0;
   return 1+2*fun((ld)(x-2*r)/(ld)2);
}
void solve(){
    cin>>a>>b>>r;
    int x=a,y=b;
    if(x<2*r or y<2*r){
       cout<<"Second"<<"\n";
       return;
    }
    int p=fun(x),q=fun(y),z=p*q;
    if(z&1) cout<<"First"<<"\n";
    else cout<<"Second"<<"\n";
}
int main(int argc,char *argv[]){
   ios_base::sync_with_stdio(0);
   cin.tie(nullptr);

   solve();
   return 0;
}

#include <iostream>
#include <algorithm>
#include <cmath>
#include <set>
#include <string>
#include <bitset>
#include <map>
#include <vector>
#include <queue>
#include <stdio.h>
#include <stdlib.h>
#include <utility>
#include <stack>
#include <list>
#include <deque>
#define ll long long
using namespace std;

int main()
{
	int a, b, r;

	cin >> a >> b >> r;
	if (a < 2 * r || b < 2 * r)cout << "Second"; else cout << "First" << endl;
	//system("pause");
	return 0;

}

#include<algorithm>
#include<iostream>
#include<math.h>
#include<stdio.h>
int n,m,i=0,j,l,max1=-1,min1=99999999,a[10000001];
using namespace std ;
main()
{
 //freopen ("input.txt","r",stdin);
 //freopen ("output.txt","w",stdout);

cin>>n>>m>>l;
l*=2;

  if (l<=min(n,m))printf ("First");
  else printf ("Second");

return 0;
}

#include<string>
#include<queue>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<queue>
#include<iostream>
using namespace std;
int main()
{
    int a,b,r;
    while(~scanf("%d%d%d",&a,&b,&r))
    {
        if(r*2>a||r*2>b)
            puts("Second");
        else
            puts("First");
    }
    return 0;
}
/*2018-07-28 19:29:46.692*/

#include<queue>
#include<stdio.h>
#include<string.h>
using namespace std;
int main()
{
    int a,b,r;
    scanf("%d%d%d",&a,&b,&r);
    r=2*r;
    int x=a/r,y=b/r;
    if(x>=1&&y>=1)
        puts("First");
    else
        puts("Second");
    return 0;
}
/*2018-07-28 19:27:12.77*/

#include <iostream>
using namespace std;
inline int min(int x,int y){ return x>y ? y : x;}
int main(){
int a,b,r;
cin>>a>>b>>r;
if(2*r >  min(a,b))cout<<"Second";
else cout<<"First";
return 0;
}

#include <iostream>
#include<math.h>
#include <string>
#include <algorithm>
#include <map>
#include <iomanip>
#include <queue>
#include <deque>
#include <vector>
#include <set>
#define bis bitset
#define ml multiset
#define vc vector
typedef unsigned long long ull;
typedef long long ll;
using namespace std;
int main() {
	int a, b, r, ans = 0;
	cin >> a >> b >> r;
	r = 2 * r;
	ans = (a / r) * (b / r);

	if (ans >0)
		cout << "First" << endl;
	else
		cout << "Second" << endl;

}

#include<cstdio>
#include<cstring>
#include<vector>
#include<queue>
#include<algorithm>
#include<stack>
using namespace std;
int main()
{
    int a,b,r,d,temp1,temp2,ans;
    scanf("%d %d %d",&a,&b,&r);
    if(a<2*r||b<2*r)
        puts("Second");
    else
    {
            puts("First");
    }
}
/*2018-07-28 19:52:43.208*/

#include<bits/stdc++.h>
#define ll long long
#define endl "\n"
#define pb push_back
using namespace std;
void mego()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);

}

int main()
{

mego();
int a,b,r,c1,c2;
cin>>a>>b>>r;
r*=2;
 a=min(a,b);
if(a>=r)
    cout<<"First";
else cout<<"Second";
return 0;

}

#include <iostream>
#include <bits/stdc++.h>
#include <vector>
#define rep(i,n) for(i=0;i<n;i++)
#define pb push_back
#define mp make_pair
#define ll long long
#define endl "\n"
using namespace std;
int main()
{
   int a,b,r;
   cin>>a>>b>>r;
   if(a>=2*r && b>=2*r) cout<< "First";
   else cout<< "Second";
}

#include <bits/stdc++.h>
using namespace std;
const int MAX = 4000;
typedef pair <int,int> ii;
typedef vector <ii> vii;
#define pb       push_back
#define ff       first
#define ss       second
#define mp       make_pair
int main () {
    int n, m, k;
    cin >> n >> m >> k;
    k*=2;
    if ( k > min (n, m) )cout << "Second";
    else cout << "First";
}

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
#define ll int
#include<queue>
#include<math.h>

int main()
{
    int a,b,r;
    while(~scanf("%d%d%d",&a,&b,&r))
    {
        if(2*r>a||2*r>b) puts("Second");
        else puts("First");

    }
    return 0;
}
/*2018-07-28 19:33:31.351*/

#include<iostream>
#include<string>
#include<vector>
#include<map>
#include<cmath>
#include <algorithm>
#include<set>
#include<queue>
#include <typeinfo>
#include <deque>
#include <stack>
#include <iomanip>
#include <cstdio>
#include<string.h>
#include <iostream>
#include <fstream>
/*
*
*AF IIIIIII FY
*
*/
using namespace std;
#define ll long long
#define min3(a,b,c) min(a,min(b,c))
#define max3(a,b,c) max(a,max(b,c))
//int maxel(vector<ll> v,ll x){int l=-11111111; for(int i=0;i<=x;i++){if(v[i]>l){l=v[i];}}return l;}
//int minel(vector<ll> v,ll x){int l=11111111; for(int i=0;i<=x;i++){if(v[i]<l){l=v[i];}}return l;}
//int power(int x,int y){int sum=1; for (int i = 1; i <= y; i++){sum=sum*x;}return sum;}
//file
//ifstream ifs("input.txt");
//ofstream ofs("output.txt");
//ifs>>a>>s;
//ofs<<i+a/2+1<<" "<<i+1<<endl;
int main()
{
	int a,b,r;cin>>a>>b>>r; r=r*2;
	if(a>=r&&b>=r){cout<<"First"<<endl;}
	else cout<<"Second"<<endl;

    return 0;
}

#include<bits/stdc++.h>
using namespace std;
#define ll  long long int
//ll p[50000005][2];
//ll sum[200005];
//priority_queue<ll>pq;
//ll b[2000005];
class Myfirst{
private:
    string *name;       ll *age;
    public:
        ll gcd(ll a ,ll b)
        {   if(b==0) return a;  a%=b;   return gcd(b,a);    }
        ll exte_gcd(ll a,ll b,ll& x,ll& y)
        {
            if(b==0)
            {   x=1; y=0;   return a;   }
            ll x1,y1;             ll d=exte_gcd(b,a%b,x1,y1);
            x=y1;                 y=x1-y1*(a/b);  return d;
        }
        ll powe(ll d,ll s)
        {
            if(s==1) return d;      else if(s==0) return 1;
            //else if(d==1) return d;
            else
            {   ll u,v=d;            for(u=1;u<s;u++)    d=d*v;
                return d;
            }
        }
        ll count_divisors(ll b)
        {
                ll i,count=0,n=1;
                for(i=2;i*i<=b;i++)
                {
                    count=0;
                    if(b%i==0)
                    {
                        while(b%i==0)
                        {
                            b=b/i;      count++;
                        }
                        n=n*(count+1);
                    }
                }
                if(b>1) n=2*n;
            return n;
        }
        ll phi(ll n)
        {
            double result=n;
            for (ll p=2;p*p<=n;++p){
                if (n%p==0){
                    while(n%p==0)       n/=p;
                    result*=(1.0-(1.0/(double)p));
                }
            }
            if(n>1)
                result*=(1.0-(1.0/(double)n));
            return (ll)result;
        }

        void solve()
        {
                        ll t;
            t=1;
            while(t--)
            {
                ll a,b,r;cin>>a>>b>>r;
                if(2*r>min(a,b)) cout<<"Second";
                else cout<<"First";
            }
        }

};
int main()
{
    Myfirst *prg = new Myfirst();
    prg->solve();
}

#include <iostream>
#include <stdio.h>

using namespace std;

int main()
{
     int a, b, r;

     scanf("%d %d %d", &a, &b, &r);

     if( a < 2*r || b < 2*r )    printf("Second");
     else printf("First");

     return 0;
}

#include<bits/stdc++.h>
using namespace std;
    int main()
    {
        int x,y,z,a=0;
        cin>>x>>y>>z;
        if(z*2>min(x,y))
            cout<<"Second\n";
        else
            cout<<"First\n";

        return 0;
    }

#include<bits/stdc++.h>
using namespace std;
int main()
    {
    int t,a,b,r;
    scanf("%d%d%d",&a,&b,&r);
    r<<=1;
    if(r<=min(a,b))
      printf("First");
      else printf("Second");
    return 0;
    }

#include<iostream>
#include<cmath>
using namespace std;
int main() {
int a,b,r;
cin>>a>>b>>r;
if(2*r>a||2*r>b) {
cout<<"Second";
return  0;
}
cout<<"First";
}

/**
Calvin's Code
*/
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <vector>
#include <set>
#include <map>
#include <sstream>

using namespace std ;

const int maxint = -1u>>2 ;
const double eps = 1e-6 ;

const int REP = 1000000;

int main()
{
    int a, b, r;

    cin>>a>>b>>r;

    for(int i = 0; i < REP; ++i);

    if(a>=2*r && b>=2*r)
        cout<<"First"<<endl;
    else
        cout<<"Second"<<endl;
    return 0;
}

/**
Calvin's Code
*/
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <vector>
#include <set>
#include <map>
#include <sstream>

using namespace std ;

const int maxint = -1u>>2 ;
const double eps = 1e-6 ;

const int REP = 10000000;

int main()
{
    int a, b, r;

    cin>>a>>b>>r;

    int test = 0;
    for(int i = 0; i < REP; ++i)
        test += i % (i - 5);

    if(a>=2*r && b>=2*r)
        cout<<"First"<<endl;
    else
        cout<<"Second"<<endl;
    return 0;
}

/**
Calvin's Code
*/
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <vector>
#include <set>
#include <map>
#include <sstream>

using namespace std ;

const int maxint = -1u>>2 ;
const double eps = 1e-6 ;

int main()
{
    int a, b, r;
    cin>>a>>b>>r;
    if(a>=2*r && b>=2*r)
        cout<<"First"<<endl;
    else
        cout<<"Second"<<endl;
    return 0;
}

//#pragma GCC optimize(2)
//#pragma comment(linker, "/STACK:1024000000,1024000000")
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <vector>
#include <queue>
#include <stack>
#include <cmath>
#include <cstdlib>
#include <map>
#include <set>

using namespace std;
typedef long long LL;
const int INF = 0x3F3F3F3F;
const int INTMAX = 0x7FFFFFFF;
const LL LLINF = 0x3F3F3F3F3F3F3F3F;
const double PI = acos(-1);
const int MAXN = 1e6 + 10;
const int MAXM = 1e6 + 10;
const LL MOD = 1e9 + 7;

int main() {

    LL a, b, r;
    cin >> a >> b >> r;
    if(2 * r <= a && 2 * r <= b) {
        puts("First");
    } else {
        puts("Second");
    }

    return 0;
}
/*2018-07-28 23:16:58.536*/

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a,b,c;
    cin>>a>>b>>c;
    if(c+c<=a && c+c<=b){
        cout<<"First"<<endl;
    }
    else
        cout<<"Second"<<endl;
}

#include<bits/stdc++.h>
using namespace std;

int r,a,b;

int main(){
	scanf("%d%d%d",&a,&b,&r);
	if(2*r<=a&&2*r<=b)cout<<"First"<<endl,exit(0);
	else cout<<"Second"<<endl,exit(0);
}

#include <vector>
#include <list>
#include <map>
#include <set>
#include <deque>
#include <stack>
#include <bitset>
#include <algorithm>
#include <functional>
#include <numeric>
#include <utility>
#include <sstream>
#include <iostream>
#include <queue>
#include <iomanip>
#include <cstdio>
#include <limits>
#include <cmath>
#include <cstdlib>
#include <string.h>
#include <ctime>
#include <assert.h>

using namespace std;

#define VI vector<int>
#define VVI vector<VI >
#define VB vector<bool>
#define VVB vector<VB >
#define VS vector<string>
#define PII pair<int, int>
#define VPII vector<pair<int, int> >
#define REP(var, startFrom, endTo) for(int var = startFrom; var < (int)endTo; ++var)

template <typename T>
inline const T MAX(T a, T b) { return ((a) > (b) ? (a) : (b)); }
template <typename T>
inline const T MIN(T a, T b) { return ((a) > (b) ? (b) : (a)); }
template <typename T>
inline const T ABS(T a) { return (((a) > 0) ? (a) : (-(a))); }

#define PI 3.14159265359

int a, b, r;
string solve()
{
	int diameter = r * 2;
	if (diameter > MIN(a, b))
		return "Second";
	return "First";
}

int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(0);
#ifndef ONLINE_JUDGE
	freopen("tmp.in", "r", stdin);
//	freopen("tmp.out", "w", stderr);
#endif
	cin >> a >> b >> r;

	cout << solve() << endl;

	return 0;
}

#include <bits/stdc++.h>
using namespace std;

#define pb push_back
#define qtime   long long q;\
                           cin >> q;\
                           while(q--)
#define fi first
#define se second
#define loop(i,n)  for(long long i=0;i<n;i++)
#define print(x)    for(auto t : x)\
                                cout << t << " " ;
#define printnl(x)    {for(auto t : x)\
                              cout << t << endl;};
#define all(x)  x.begin(), x.end()
#define o(x) cout << x << "\n"
#define i(x) cin >> x;
#define itr(x,a,b)  (x.begin()+a, x.begin()+b);
#define fast     ios_base::sync_with_stdio(false);\
                        cin.tie(NULL);
#define inp(x) long long x;\
                        cin >> x
#define loop1(i,a,b)   for(long long i=a ; i<=b ; i++)
#define itrloop(it,x) for(auto it=x.begin(); it!=x.end(); it++)
#define NUM1 1000003
#define PI 3.1415926536
#define fileIO freopen("input.txt", "r", stdin);\
                       freopen("output.txt", "w", stdout);

typedef long long ll;
typedef vector<long long> vl;
typedef vector<int> vi;
typedef vector <string> vs;
typedef vector <char> vc;
typedef set<long long> sl;
typedef set<int> si;
typedef set <string> ss;
typedef set <char> sc;
typedef set <double> sd;
typedef map<long long, long long> ml;
typedef map<int,int> mi;
typedef map <string, int> ms;
typedef map <char,int> mc;

bool isprime(int n) {
    for(int i=sqrt(n); i>1; i--) {
        if(n%i==0)
            return false;
    }
    return true;
}

bool is_int(long double d) {
    if(d==ceil(d))
        return true;
    return false;
}

long long fact(int x) {
    if(x==0 || x==1)
        return 1;
    else
        return x*fact(x-1);
}

long long ncr(long long n, long long r) {
    return (fact(n)/(fact(r)*fact(n-r)));
}

long long gcd(ll n, ll m) {
    if (n%m ==0) return m;
    if (n < m) swap(n, m);
    while (m > 0) {
        n = n%m;
        swap(n, m);
    }
    return n;
}

bool isPowerOfTwo(int n)
{
    if(n==0)
        return false;
    return (ceil(log2(n)) == floor(log2(n)));
}

int binary_search(int x, int low, int high, int arr[]) {
    if(low==high)
        return low;
    else {
        int mid = (low+high)/2;
        if(arr[mid]==x)
            return mid;
        else if(arr[mid]>x)
            return binary_search(x, low, mid-1, arr);
        else
            return binary_search(x, mid+1, high, arr);
    }
    return -1;
}

void solve(){
   int x,y,r;
   cin >> x >> y >> r;
   if(min(x,y)<(2*r))
       o("Second");
    else
        o("First");
}

int main()
{
//    fileIO;
    fast;
    int q = 1;
//    cin >> q;
    while(q--)
        solve();
}

/*===============*\
| *** *** *** *** |
|  *  **  *   * * |
| *** *** *   *** |
|    ID: ZERO     |
|    LANG: C++    |
\*===============*/
#include <vector>
#include <map>
#include <set>
#include <deque>
#include <stack>
#include <bitset>
#include <algorithm>
#include <sstream>
#include <iostream>
#include <cstdio>
#include <queue>
#include <cmath>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <string>
#include <cassert>
using namespace std;
#define MAXN 100001
#define eps 0.000000001
#define mod 1000000007
#define ll __int64
const double pi = acos(-1.0);
int min(int x,int y){return x<y?x:y;}
int max(int x,int y){return x>y?x:y;}
void swap(int &x,int &y){int t;t=x,x=y,y=t;}
int gcd(int x,int y){
	int t;
	if(x<y) t=x,x=y,y=t;
	while(y){
		t=x%y;
		x=y;
		y=t;
	}
	return x;
}
int main(){
	int a,b,r;
	while(~scanf("%d%d%d",&a,&b,&r)){
		int n=r*2;
		int t=r*(2+2.2828427);
		if(a<n||b<n) {printf("Second\n");continue;}
		if((a<t||b<t)){printf("First\n");continue;}
		printf("First\n");
	}
    return 0;
}

#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
	int a, b, r;
	cin >> a >> b >> r;

	if (a >= 2*r && b >= 2*r) {
		cout << "First" << endl;
	} else {
		cout << "Second" << endl;
	}
	return 0;
}

#include<stdio.h>
int main()
{
    int a,b,r;
    scanf("%d%d%d",&a,&b,&r);
    if(a>=2*r&&b>=2*r)///肯定放中间，由于对称性，周围的原盘必是偶数
        printf("First\n");
    else
        printf("Second\n");
}
//2019-04-25 21:34:50.266

#include <iostream>
using namespace std;
int main(){
int a,b,r;
cin >> a >> b >>r;
if (a>=2*r&&b>=2*r) cout << "First";
else cout << "Second";

}

#include <bits/stdc++.h>
using namespace std;
int main(){
	int a,b,r,pd=0;
	scanf("%d %d %d", &a, &b, &r);
	int aux=min(a,b);
	if(r*2<=aux)
		printf("First\n");
	else
		printf("Second\n");
//	system("pause");
	return 0;
}

#include<iostream>
using namespace std;
int main()
{
    int a, b, r; cin >> a >> b >> r;
    if (a<r * 2 || b<r * 2) puts("Second");
    else
        puts("First");
    return 0;
}

#include<stdio.h>
int main()
{
    int a,b,r;
    scanf("%d%d%d",&a,&b,&r);
    {
        r*=2;
        if(r<=a&&r<=b)
            printf("First\n");
        else
            printf("Second\n");
    }
    return 0;
}
//2019-04-25 22:09:26.969

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n,m,r;
    scanf("%d%d%d",&n,&m,&r);
    puts(2*r<=min(n,m)?"First":"Second");
    return  0;
}
//2018-10-15 21:33:02.222

#include<bits/stdc++.h>
using namespace std;

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);

    int a,b,c;
    cin>>a>>b>>c;

    if(c*2<=a && c*2<=b)
        cout<<"First";
    else
        cout<<"Second";

    return 0;
}

#include<iostream>
using namespace std;
int main()
{
    int a,b,r;
    cin>>a>>b>>r;
    if(2*r>(a>b?b:a))
        cout<<"Second"<<endl;
    else
    cout<<"First"<<endl;
}//2019-11-14 08:48:04.973

#include <bits/stdc++.h>
using namespace std;
#define endl "\n"
#define int  long long
#define ll  long long
int mod=1000000000+7;
ll powe(ll x, ll y){ x = x%mod, y=y%(mod-1);ll ans = 1;while(y>0){if (y&1){ans = (1ll * x * ans)%mod;}y>>=1;x = (1ll * x * x)%mod;}return ans;}
void fun()
{
	#ifndef ONLINE_JUDGE
	freopen("input.txt", "r", stdin);
	freopen("output.txt", "w", stdout);
	#endif
}
bool isPrime(int n)
{
	for(int i=2;i*i<=n;i++)
		if(n%i==0) return false;
	return true;
}
signed main()
{
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	//rko;
	fun();
	int tt=1; //cin>>tt;
	while(tt--)
	{
		int a,b,r; cin>>a>>b>>r;
		if(a<b) swap(a,b);
		if(b<2*r) return cout<<"Second\n",0;
		cout<<"First\n";
	}
	return 0;
}

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,a,b,c;
		cin>>a>>b>>c;
		if(a<c*2||b<c*2)
		cout<<"Second"<<endl;
		else
		cout<<"First"<<endl;
}

#include<iostream>
#include<cstdio>
using namespace std;
int main() {
    int a , b , r;
    while(scanf("%d%d%d",&a,&b,&r)!=EOF) {
        if(2*r > a || 2*r > b) printf("Second\n");
        else printf("First\n");
    }
}

//	#include "stdafx.h"
	#include <iostream>
	#include <conio.h>
	#pragma comment (linker, "/STACK:16777216")
	#include <vector>
	#include <math.h>
	#include <algorithm>
	#include <string>
	#include <queue>
	#include <stack>
	#include <set>
	using namespace std;

void main()
{
	int a, b, r;
	cin>>a>>b>>r;
	if (2*r<=min(a,b))
		cout<<"First";
	else
		cout<<"Second";
//	getch();
}

#include <vector>
#include <list>
#include <map>
#include <set>
#include <deque>
#include <stack>
#include <bitset>
#include <algorithm>
#include <functional>
#include <numeric>
#include <utility>
#include <sstream>
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <queue>
#include <cfloat>
#include <string>
#include <climits>
#include <cstring>
#include <cassert>
#include <complex>

using namespace std;

#define INF 0x3F3F3F3F
#define LINF 0x3F3F3F3FFFFFFFFFLL
#define EPS 1e-7

#define FILL(X, V) memset(X, V, sizeof(X))
#define TI(X) __typeof((X).begin())

#define FOR(i, a, b) for(int i = a; i < b; ++i)
#define RFOR(i, b, a) for(int i = b - 1; i >= a; --i)
#define REP(i, N) FOR(i, 0, N)
#define RREP(i, N) RFOR(i, N, 0)
#define FORIT(it, i) for(typeof((i).begin()) it = (i).begin(); it != (i).end(); it++)

#define ALL(V) V.begin(), V.end()
#define S(V) (int)V.size()

#define pb push_back
#define mp make_pair

template<typename T> T inline SQR( const T &a ){ return a*a; }

typedef long long int64;
typedef unsigned long long uint64;

int main(){
	ios::sync_with_stdio( false );
	int a, b, r;
	cin>>a>>b>>r;
	if(a >= 2*r && b >= 2*r) cout<<"First\n";
	else cout<<"Second\n";
	return 0;
}

#include<cstdio>
using namespace std;
int a,b,r;
int main()
{
  scanf("%d%d%d",&a,&b,&r);
  if(a<r*2||b<r*2)  printf("Second");
  else  printf("First");
  return 0;
}

#include<bits/stdc++.h>
using namespace std;

int main()
{
	long long int i,j,k,l,z,step=0,n,m,ass,t,w,r,x,y,c=0,f=0;

	cin>>i>>j>>k;
	k=2*k;
	x=i/k;
	y=j/k;
	t=x*y;

	if(t==0)
		cout<<"Second";
else
	cout<<"First";

}

#include <algorithm>
#include <iostream>
using namespace std;

namespace solve {
    int a, b, r;
    void main() {
        cin >> a >> b >> r;
        if (min(a, b) >= 2 * r) {
            cout << "First\n";
        } else {
            cout << "Second\n";
        }
    }
}

int main() {
    solve::main();
}

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <functional>
#include <cstdio>
using namespace std;
int main()
{
    int a, b, r;
    cin >> a >> b >> r;
    int l = 2 * r;
    int counter = 0;
    if (a > b)
        counter = b / l;
    else
        counter = a / l;
    if (counter == 0)
        cout << "Second";
    else
    {
        cout << "First";
    }
}

#include <iostream>
#include <cmath>
#include <algorithm>

using namespace std;

int main()
{
	int a, b, r;
	cin>>a>>b>>r;
	if (r*2 <= min(a, b))
		cout<<"First\n";
	else
		cout<<"Second\n";
	return 0;
}

#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
#include <numeric>
#include <iomanip>
#include <climits>
#include <vector>
#include <functional>
#include <cstring>
#include <list>

using namespace std;

typedef long long Int;
typedef long double UInt;
typedef double Double;

#define DEBUG_PRINT( t ) { clog << (t) << endl; }
#define DEBUG_VALUE( v ) { clog << #v << ":\t" << (v) << endl; }
#define DEBUG_VECTOR( v ) { clog << "[ "; for( auto i : v ) { clog << i << ' '; } clog << "]" << endl; }

int main() {
    Int a, b, r;

    cin >> a >> b >> r;

    if( min(a,b) >= 2*r ) {
        cout << "First" << endl;
    }
    else {
        cout << "Second" << endl;
    }

    return 0;
}

#include<bits/stdc++.h>
using namespace std;
#define __ ios_base::sync_with_stdio(0); cin.tie(0);
#define endl '\n'
#define foreach(it, x) for (__typeof (x).begin() it = (x).begin(); it != (x).end(); ++it)
#define all(x) x.begin(),x.end()
#define D(x) cout << #x " = " << (x) << endl;

template <class T> string toStr(const T &x)
{ stringstream s; s << x; return s.str(); }

template <class T> int toInt(const T &x)
{ stringstream s; s << x; int r; s >> r; return r; }

int dx[8] = {-1,-1,-1,0,1,1, 1, 0};
int dy[8] = {-1, 0, 1,1,1,0,-1,-1};

int main() {
  int a,b,r;
  cin >> a >> b >> r;

  int cnt = a / (2 * r);
  cnt *= b / (2 * r);

  cout << (cnt ? "First" : "Second");

  return 0;
}

#define _CRT_SECURE_NO_WARNINGS
#include <cstdio>
#include <cstring>
#include <string>
#include <string.h>
#include <cmath>
#include <iostream>
#include <cmath>
#include <algorithm>
#include <set>
#include <vector>
#include <map>
#include <iomanip>
#include <stdlib.h>
#include <queue>
#include <list>
#include <stack>
#include <bitset>
#include <fstream>
#include <sstream>
#include <assert.h>
#define eps 1e-10
#define SIZE 3010
#define rep(i, a, b) for (int i = a; i <= b; ++i)
#define pi acos(-1.0)
#define ll long long
using namespace std;
const int bignumlen = 20200; //高精度的位数
const int Blen = 8; //压几位
const ll base = 100000000; //对应的基数

struct bignum {
	int len;
	ll data[bignumlen];
	ll& operator [](int x) { return(data[x]); }
	const ll& operator [](int x)const { return(data[x]); }
	bignum() {
		memset(data, 0, sizeof(data));
		len = 0;
	}
	void clear() {
		for (int i = len; i >= 1; --i)data[i] = 0;
		len = 0;
	}
	int check(const bignum & a, const bignum & b) {
		if (a.len > b.len)return(0);
		if (b.len > a.len)return(1);
		for (int i = a.len; i >= 1; --i) {
			if (a.data[i] < b.data[i])return(1);
			if (b.data[i] < a.data[i])return(0);
		}
		return 2;
	}
	bool operator < (const bignum & b) { return(check(*this, b) == 1); }
	bool operator > (const bignum & b) { return(check(*this, b) == 0); }
	bool operator <=(const bignum & b) { return(check(*this, b) >= 1); }
	bool operator >=(const bignum & b) { return(check(*this, b) % 2 == 0); }
	bool operator !=(const bignum & b) { return(check(*this, b) != 2); }
	bool operator ==(const bignum & b) { return(check(*this, b) == 2); }

	bignum operator=(const bignum & x) {
		for (int i = x.len + 1; i <= len; ++i)data[i] = 0;
		for (int i = 1; i <= x.len; ++i)data[i] = x.data[i];
		len = x.len;
		return *this;
	}
	bignum operator=(ll x) {
		for (int i = len; i >= 0; --i)data[i] = 0;
		len = 0;
		while (x) {
			data[++len] = x % base;
			x /= base;
		}
		return *this;
	}
	bignum(ll x) {
		memset(data, 0, sizeof(data));
		len = 0;
		(*this) = x;
	}
	bignum operator *(const bignum & b) {
		int i, j;
		bignum tmp;
		for (i = 1; i <= len; ++i)if (data[i] != 0)
			for (j = 1; j <= b.len; ++j)if (b.data[j] != 0) {
				tmp.data[i + j - 1] += data[i] * b.data[j];
				tmp.data[i + j] += tmp.data[i + j - 1] / base;
				tmp.data[i + j - 1] %= base;
			}
		tmp.len = len + b.len - 1;
		while (tmp.data[tmp.len + 1])tmp.len++;
		return tmp;
	}
	bignum operator *(ll x) {
		int i;
		bignum tmp;
		for (i = 1; i <= len; ++i)tmp[i] = data[i] * x;
		tmp.len = len;
		for (i = 1; i <= len; ++i) {
			tmp[i + 1] += tmp[i] / base, tmp[i] %= base;
			if (tmp[i + 1] && i + 1 > tmp.len)tmp.len++;
		}
		return tmp;
	}
	bignum operator /(ll x) {
		int i;
		bignum tmp;
		ll y = 0;
		for (i = len; i >= 1; --i) {
			y = y * base + data[i];
			tmp[i] = y / x;
			y %= x;
		}
		tmp.len = len;
		while (tmp[tmp.len] == 0 && tmp.len > 1)tmp.len--;
		return tmp;
	}
	bignum operator /(const bignum & b) {
		if (b.len <= 1 && b[1] == 0) {
			printf("error! 被0除!");
			for (;;);
		}
		int i, l1 = (len - 1) * Blen, l2 = (b.len - 1) * Blen;
		ll x = data[len], y = b[b.len];
		while (x)x /= 10, l1++;
		while (y)y /= 10, l2++;
		bignum tmp, chu, B;
		chu = *this; B = b;

		for (i = 1; i * Blen <= l1 - l2; ++i)B *= base;
		for (i = 1; i <= (l1 - l2) % Blen; ++i)B *= 10;
		for (i = l1 - l2; i >= 0; --i) {
			x = 0;
			while (chu >= B)chu -= B, x++;
			tmp[i / Blen + 1] = tmp[i / Blen + 1] * 10 + x;
			B /= 10;
		}
		tmp.len = (l1 - l2) / Blen + 1;
		while (tmp.len >= 1 && !tmp[tmp.len])tmp.len--;
		return tmp;
	}
	bignum operator +(const bignum & b) {
		bignum tmp;
		int i, l = max(len, b.len);
		for (i = 1; i <= l; ++i)tmp[i] = data[i] + b[i];
		for (i = 1; i <= l; ++i)tmp[i + 1] += tmp[i] / base, tmp[i] %= base;
		tmp.len = l;
		if (tmp[tmp.len + 1])tmp.len++;
		return tmp;
	}
	bignum operator +(ll x) {
		bignum tmp; tmp = *this;
		tmp[1] += x;
		for (int i = 1; i <= len && tmp[i] >= base; ++i)tmp[i + 1] += tmp[i] / base, tmp[i] %= base;
		while (tmp[tmp.len + 1])tmp.len++;
		return tmp;
	}
	bignum operator -(const bignum & b) {
		int i;
		bignum tmp;
		for (i = 1; i <= len; ++i)tmp.data[i] = data[i] - b.data[i];
		for (i = 1; i <= len; ++i) {
			if (tmp[i] < 0)tmp.data[i] += base, tmp.data[i + 1]--;
		}
		tmp.len = len;
		while (tmp[tmp.len] == 0 && tmp.len > 1)tmp.len--;
		return tmp;
	}
	bignum operator -(ll x) {
		bignum tmp; tmp = *this;
		tmp[1] -= x;
		for (int i = 1; i <= len && tmp[i] < 0; ++i) {
			tmp[i + 1] += (tmp[i] + 1) / base - 1;
			tmp[i] = (tmp[i] + 1) % base + base - 1;
		}
		while (!tmp[tmp.len] && tmp.len > 1)tmp.len--;
		return tmp;
	}
	ll operator %(ll x) {
		int i;
		ll y = 0;
		for (i = len; i >= 1; --i)y = (y * base + data[i]) % x;
		return y;
	}
	bignum operator %(const bignum & b) {
		if (b.len <= 1 && b[1] == 0) {
			printf("error! 被0 mod!");
			for (;;);
		}
		int i, l1 = (len - 1) * Blen, l2 = (b.len - 1) * Blen;
		ll x = data[len], y = b[b.len];
		while (x)x /= 10, l1++;
		while (y)y /= 10, l2++;
		bignum chu, B;
		chu = *this; B = b;

		for (i = 1; i * Blen <= l1 - l2; ++i)B *= base;
		for (i = 1; i <= (l1 - l2) % Blen; ++i)B *= 10;
		for (i = l1 - l2; i >= 0; --i) {
			while (chu >= B)chu -= B;
			B /= 10;
		}
		return chu;
	}

	bignum operator +=(const bignum & b) { return *this = (*this + b); }
	bignum operator *=(const bignum & b) { return *this = (*this * b); }
	bignum operator -=(const bignum & b) { return *this = (*this - b); }
	bignum operator /=(const bignum & b) { return *this = (*this / b); }
	bignum operator %=(const bignum & b) { return *this = (*this % b); }
	bignum operator *=(ll x) { return(*this = (*this * x)); }
	bignum operator +=(ll x) { return(*this = (*this + x)); }
	bignum operator -=(ll x) { return(*this = (*this - x)); }
	bignum operator /=(ll x) { return(*this = (*this / x)); }
	void read() {
		char c[bignumlen * Blen + 10];
		scanf("%s", c + 1);
		int l = strlen(c + 1);
		(*this).clear();
		ll x;
		for (int i = 1; i <= (l - 1) / Blen + 1; ++i) {
			x = 0;
			for (int j = l - Blen * i + 1; j <= l - Blen * i + Blen; ++j)if (j >= 1)x = x * 10 + c[j] - 48;
			data[++len] = x;
		}
	}
	void write() {
		printf("%lld", data[len]);
		for (int i = len - 1; i >= 1; --i)printf("%0*lld", Blen, data[i]);
	}
};
bignum gcd(const bignum & A, const bignum & B) {
	bignum a = A, b = B, res = 1;
	while (!(a[1] & 1) && !(b[1] & 1))a /= 2, b /= 2, res *= 2;
	for (;;) {
		if (a.len == 1 && a[1] == 0)return b * res;
		if (b.len == 1 && b[1] == 0)return a * res;
		while (!(a[1] & 1))a /= 2;
		while (!(b[1] & 1))b /= 2;
		if (a > b)a -= b;
		else b -= a;
	}
}
int main() {
	string s;
	double num;
	ll a, b, r;
	while (cin >> a >> b >> r) {
		r *= 2;
		if (a >= r && b >= r) cout << "First\n" << endl;
		else cout << "Second\n" << endl;
	}
}
//1 5 9 ... 4n + 1

#include<iostream>
using namespace std;
int main()
{
	int w,l,r;
	cin>>w>>l>>r;
	if(w<2*r||l<2*r)
		cout<<"Second";
	else
		cout<<"First";

}

#include <bits/stdc++.h>
using namespace std;
#define fast ios_base::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL);
#define endl '\n'
#define fr(i,a,b) for(ll i=a; i<b; i++)
#define fr1(i,a,b) for(ll i=a; i>=b; i--)
#define ll long long int
#define ld long double
#define vi vector<ll>
#define pb push_back
#define mp(i,j) make_pair(i,j)
#define fi first
#define se second
#define input(a,n) fr(i,0,n)cin>>a[i]
#define output(a,n) fr(i,0,n)cout<<a[i]<<" "
#define dbg cout<<"hurr"<<endl;
#define dbg2 cout<<"hurr2"<<endl;
#define md 1000000007
#define sp << " " <<
#define pi 3.14159265358979323846
#define fixd(x) cout << fixed << setprecision(x);

int main()
{
    fast;
    ll a,b,r;
    cin >> a >> b >> r;
    r*=2;
    if(a>b)
        a=b;
    if(a>=r)
        cout << "First";
    else
        cout << "Second";
}

#include <bits/stdc++.h>
#define int long long
const int MOD=1e9+7;
using namespace std;
typedef long long ll;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef vector<vi> vvi;
typedef vector<vl> vvl;
typedef vector<double> vd;
typedef vector<vd> vvd;
typedef pair<int, int> pii;
typedef pair<double, double> pdd;
typedef vector<pii> vii;
typedef vector<string> vs;
#define mod(n,k) ( ( ((n) % (k)) + (k) ) % (k))
#define forn(i,a,b) for(int i = a; i < b; i++)
#define pb push_back
#define forr(i,a,b) for(int i = a; i >= b; i--)
#define all(x) (x).begin(), (x).end()

void solve() {
    int a,b,r;
    cin >> a >> b >> r;
    int total = (a/r/2)*(b/r/2);
	if (total!=0) cout << "First";
 	else cout << "Second";
    return;
}

signed main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int t = 1;
//  cin >> t;
    while (t--) {
        solve();
    }
    return 0;
}

#include <cstdio>
#include <algorithm>

int main() {
  int a, b, r; std::scanf("%d%d%d", &a, &b, &r);
  std::printf("%s\n", r * 2 <= std::min(a, b) ? "First" : "Second");
  return 0;
}

#include <iostream>

using namespace std;

int main(){
    int a , b , r;
    cin >> a >> b >> r;
    if(a >= 2 * r && b >= 2 * r)
        cout << "First" << endl;
    else
        cout << "Second" << endl;
    return 0;
}

/*
CODER: Jainor Cardenas
LANG: C++
*/
#include <vector>
#include <list>
#include <map>
#include <set>
#include <queue>
#include <deque>
#include <stack>
#include <bitset>
#include <algorithm>
#include <functional>
#include <numeric>
#include <utility>
#include <sstream>
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <cstring>

#define LL long long
#define all(v) (v).begin(),(v).end()
#define rall(v) (v).rbegin(),(v).rend()
#define sz size()
#define pb push_back
#define mp make_pair
#define mem(x,i) memset(x,i,sizeof(x))
#define cpresent(V,e) (find(all(V),(e))!=(V).end())
#define foreach(c,it) for(__typeof((c).begin()) it=(c).begin();it!=(c).end();++it)
#define FOR(i,a,n) for(int (i)=(int)(a);i<(int)(n);++(i))
#define FORR(i,a,n) for(int (i)=(int)(a);i>(int)(n);--(i))

using namespace std;

long long toi(string s){istringstream is(s);long long x;is>>x;return x;}
string tos(long long t){stringstream st; st<<t;return st.str();}
long long gcd(long long a, long long b){return __gcd(a,b);}
long long lcm(long long a,long long b){return a*(b/gcd(a,b));}
long long bits(long long a){return a?1+bits(a&(a-1)):0;};
long long pot(long long a,long long b){if(!b)return 1;if(b&1)return a*pot(a*a,b>>1); else return pot(a*a,b>>1);}

/*
bool done[3][10005];
bool dp[3][10005];

bool go( int player , int mov ){
  if( done[player][mov] ) return dp[player][mov];
  done[player][mov] = true;
  if( mov == 0 ) return dp[player][mov] = 1 - player;
  if( mov >= 1 &&  go( 1 - player , mov - 1 ) == player ) return dp[player][mov] = player;
  if( mov >= 2 &&  go( 1 - player , mov - 2 ) == player ) return dp[player][mov] = player;
  if( mov >= 3 &&  go( 1 - player , mov - 3 ) == player ) return dp[player][mov] = player;
  return dp[player][mov] = 1 - player;
}
*/

int main(){
 //freopen(".in","r",stdin);
 //freopen(".out","w",stdout);
 int a ,  b , r;
  cin >> a >> b >> r ;
     r*= 2;
     int mov = ( a / r ) * ( b / r );
     if( mov > 0  )
       cout <<"First"<<endl;
     else
       cout <<"Second"<<endl;

 return 0;
}

#include <iostream>
using namespace std;
int main()
{
    ios_base::sync_with_stdio(0);
    int a, b, r;
    cin >> a >> b >> r;
    if(min(a, b) < 2*r)cout << "Second";
    else cout << "First";
    return 0;
}

#include<cstdio>

using namespace std;

const double pi = 3.14159;

int main () {

    int a, b, c;

    scanf ( "%d %d %d" , &a, &b, &c );

    c *= 2;

    if ( a < c || b < c ) printf ( "Second\n" );
    else printf ( "First\n" );

    return 0;

}

#include <iostream>
#include <cmath>
using namespace std;

int a, b, r, x, nrfarf;

int main()
{
    int i;
    cin >> a >> b >> r;
    if(2 * r <= a && 2 * r <= b)
        cout << "First";
    else cout << "Second";
    return 0;
}

#include <iostream>
#include <algorithm>
using namespace std;

int main()
{
    int a,b,r;
    cin>>a>>b>>r;
    cout<<(2*r>min(a,b)?"Second":"First");
    return 0;
}

#include<bits/stdc++.h>
using namespace std;
int main()
{
int a,b,r;
cin>>a>>b>>r;
if(r*2<=min(a,b))
{
        cout<<"First";
}
else
{
        cout<<"Second";
}
}

#include <iostream>
#include <cstdio>
#include <math.h>
#include <vector>
#include <map>
#include <stdio.h>
#include <string>
#include <algorithm>
#include <stack>
#include <set>
#include <queue>
#include <sstream>
#include <iomanip>
#pragma comment (linker,"/STACK:16777216")
using namespace std;
long long INF=1000*1000*1000;

int main()
{
#ifdef _DEBUG
	freopen("Input.txt","r",stdin);
	freopen("Output.txt","w",stdout);
#endif

	int a,b,r;
	cin>>a>>b>>r;
	if(2*r>min(a,b))
		cout<<"Second";
	else
		cout<<"First";
	return 0;
}

#include <cstdio>
#include <iostream>

using namespace std;

int n,m,r,s;
bool ans = 0,k;

int main()
{
	scanf ("%d%d%d",&n,&m,&r);

	int diam = r * 2;

	if (diam > min (n,m))
		cout << "Second";
	else
		cout << "First";
}

#include <bits/stdc++.h>
#include <fstream>

#define ll          long long int
#define fr(X,Y) for (int (X) = 0;(X) < (Y);++(X))
#define all(a)      (a).begin(),(a).end()
#define rall(a)     (a).rbegin(),(a).rend()
#define pb          push_back
#define mp          make_pair
#define vi          vector<int>
#define pii         pair<int,int>
#define vpi         vector<pii>

using namespace std;

ll gcd(ll a, ll b) {  if (b == 0)  return a; return gcd(b , a % b); }

bool IsPowerOfTwo(int x)
{
    return (x != 0) && ((x & (x - 1)) == 0);
}

//( a + b) % c = ( ( a % c ) + ( b % c ) ) % c

/*int bs(int val,int a[])
{
 int r=n;

 int l=1;

 while(l<=r)
 {
     int mid=(l+r)/2;
     if(a[mid]>val)r=mid-1;
     else if(a[mid]<val) l=mid+1;
     else{l=mid;break;}

 }
 return l;

}*/

int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
#ifndef ONLINE_JUDGE
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
#endif

    int a, b, r;
    cin >> a >> b >> r;
    if (2 * r > a || 2 * r > b)cout << "Second";
    else
    cout<<"First";
    return 0;
}

#include <bits/stdc++.h>

//#pragma GCC optimize("Ofast")
//1.0 * clock() / CLOCKS_PER_SEC

#define fi first
#define se second
#define int long long int
#define dl double long

using namespace std;

const int N = 1e5 + 7;
const int mod = 998244353;

//mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

void solve1()
{
    int a, b, c;
    cin >> a >> b >> c;
    if(a < c * 2 || b < c * 2){
        cout << "Second";
    }else{
        cout << "First";
    }
}

int32_t main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0); cout.tie(0); srand(time(0));
    //freopen( "input.txt" , "r" , stdin );
    //freopen( "output.txt" , "w" , stdout );
    //freopen( "outofplace.in" , "r" , stdin );
    //freopen( "outofplace.out" , "w" , stdout );

    int cghf = 1;//cin >> cghf;
    while( cghf-- ){
        solve1();
    }
}

#include <iostream>
#include <cstdio>
using namespace std;

int main(){

    int a, b, r;
    cin >> a >> b >> r;
    r *= 2;
    if(r > a || r > b)cout << "Second\n";
    else cout << "First\n";

    return 0;
}

#include <stdio.h>

int main () {
	int a, b, r;
	scanf ("%d %d %d", &a, &b, &r);
	if (a >= 2 * r && b >= 2 * r) {
		printf ("First\n");
	} else printf ("Second\n");
}

#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

int main()
{
#ifdef ONPC
    freopen("a.in", "r", stdin);
    //freopen("a.out", "w", stdout);
#else
    //freopen("a.in", "r", stdin);
    //freopen("a.out", "w", stdout);
#endif
    ios::sync_with_stdio(0);
    int a, b, r;
    cin >> a >> b >> r;
    r *= 2;
    cout << (a >= r && b >= r ? "First" : "Second") << '\n';
}

#include<bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
using namespace __gnu_pbds;
using namespace std;
#define int         long long
#define mod         1000000007
#define FAST        ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define f(i,n)      for(int i=0;i<n;i++)
#define fp(i,k,n)   for(int i=k;i<=n;i++)
#define fr(i,k,n)   for(int i=k;i>=n;i--)
#define pb          push_back
#define pii         pair<int,int>
#define vi          vector<int>
#define vii         vector<pii>
#define dbg(x)      cout << (#x) << " is " << (x) << '\n'
#define F           first
#define S           second
#define sz(x)       (int)(x).size()
#define lb          lower_bound
#define ub          upper_bound
#define mems(x)     memset(x,0,sizeof(x))
#define all(a)      a.begin(),a.end()
typedef tree<int,null_type,less_equal<int>,rb_tree_tag,tree_order_statistics_node_update>ordered_set;

/*---------------------------------------------------------------------------------------------------*/

void solve()
{
  int a,b,r;
  cin >> a >> b >> r;
  if(a<b)
    swap(a,b);
  int x=a/2;
  int cnt=0;
  if(2*r>b)
  {
    cout << "Second\n";return;
  }
  while(x>0)
  {
    if(cnt==0)
     x-=r;
    else
      x-=(2*r);
    if(x>=0)
     cnt++;
  }
  cnt+=(cnt-1);
  if(cnt&1)
    cout << "First\n";
  else
    cout << "Second\n";
  return;
}

signed main()
{
  // freopen("input.txt","r",stdin);
  // freopen("output.txt","w",stdout);
  FAST
  int T=1;
  // cin >> T;
  while(T--)
  {
    solve();
  }
  return 0;
}

#include <algorithm>
#include <stdio.h>
#include <cstring>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <stack>
#include <queue>
#define eps 1e9
using namespace std;
int main()
{
    int a,b,r,x;
    scanf("%d%d%d",&a,&b,&r);
    x=min(a,b);
    if(x<2*r)
        puts("Second");
    else
        puts("First");
    return 0;
}
//2019-04-25 20:29:46.865

#include <bits/stdc++.h>
using namespace std;
#define beshoo ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
int sum,c,t;
int main()
{
    beshoo
    int a,b,r;
    cin>>a>>b>>r;
    r*=2;
    while(a-r>=0&&b-r>=0){a-=r;b-=r;c++;}
    (!c%2)?cout<<"Second":cout<<"First";
    return 0;
}

#include<bits/stdc++.h>
using namespace std;
const int maxn=3e5+7;
typedef long long ll;
const int mod=1e9+7;
ll read(){ll c = getchar(),Nig = 1,x = 0;while(!isdigit(c))c = getchar();if(c == '-')Nig = -1,c = getchar();while(isdigit(c))x = ((x<<1) + (x<<3)) + (c^'0'),c = getchar();return Nig*x;}
#define read read()

int main(){
	int a,b,r;
	cin>>a>>b>>r;
	if(a>=2*r&&b>=2*r)cout<<"First\n";
	else cout<<"Second\n";
	return 0;
}

#include <iostream>
const float _pi = 3.141;
using namespace std;
float areaofcircle;
float diameter;

int main()
{
    float height,lenght,R;
    cin >> height >> lenght >> R;
    diameter = 2*R;
    areaofcircle = _pi*R*R;
        if(areaofcircle > height*lenght) {
            cout << "Second" << endl;
        }else if(height < diameter || lenght < diameter) {
            cout << "Second" << endl;
        }
        else
            cout << "First" << endl;

    return 0;
}

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a,b,r;
    cin>>a>>b>>r;
    if(2*r<=min(a,b))
    {
        cout<<"First";
    }
    else
    {
        cout<<"Secpnd";
    }
}

# include <iostream>
  using namespace std;
  int main()
  {
      long long a, b, r, n;
      cin >> a >> b >> r;
      n = (a / r) * (b / r);
      if(n == 0) cout << "Second";
      else cout << "First";
      return 0;
  }

#include<bits/stdc++.h>
using namespace std;
int main(){
    double a,b,r;
    cin>>a>>b>>r;
    if(a<2*r||b<2*r){
        cout<<"Second";return 0;
    }
    int x,y,ans=0;
    x=a/(2*r),y=b/(2*r);
    a=a-x*(2*r),b=b-y*(2*r);
    ans+=x*y;
    if(a>sqrt(2)*r&&b>sqrt(2)*r){
        if(ans%2==0) cout<<"First";
        else cout<<"Second";
    }
    else{
        if(ans%2==0) cout<<"Second";
        else cout<<"First";
    }
}

#include <bits/stdc++.h>
using namespace std;
#define f(a,b,i) for(i=a;i<b;i++)
//#define r(a,b,i) for(i=a;i>=b;i--)
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int a,b,r;
    cin>>a>>b>>r;
    int d,x, n,m;
    d=2*r;
    n=(a/d);
    m=(b/d);
    x=m*n;
    if(x%2==0) cout<<"Second";
    else cout<<"First";

        return 0;

    }

#include <bits/stdc++.h>

using namespace std;

const double pi = 3.14159265359;
int a, b, r;

int main()
{
	int rect = a * b;
    double circ = (double)r * (double)r * pi;
        if(circ >= rect)
       printf("Second\n");
    else
    {
       int d = 2 * r;
       int sqrs = (b / d) * (a / d);
       if(sqrs & 1)
         printf("First\n");
       else
         printf("Second\n");
    }
    return 0;
}

#define _CRT_SECURE_NO_WARNINGS
#include <vector>
#include <map>
#include <queue>
#include <deque>
#include <stack>
#include <algorithm>
#include <sstream>
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <string>

#define oo 1e9
#define pi 3.1415926536
#define all(x) x.begin(),x.end()
#define sorta(x) sort(all(x))
#define sortam(x,comp) sort(all(x),comp)
#define sortd(x) sort(x.rbegin(),x.rend())
#define pb push_back
#define mp make_pair
#define sf(x) scanf("%d", &x);
#define sfll(x) scanf("%I64d", &x);
#define pr(x) printf("%d ", x);

typedef long long ll;
using namespace std;

int main() {
	int a, b, r;
	while(cin >> a>>b>>r) {
		int tmp = a / (2 * r) * b / (2 * r);
		if(tmp % 2) cout << "First\n";
		else cout << "Second\n";
	}
	return 0;
}

#include<iostream>
using namespace std;
int main(){
    int a,b,r,k,q;
    cin>>a>>b>>r;
    if(a>=2*r && b>=2*r){
        k = ((a-(2*r))/((4*r)-1))+1;
        q = ((b-(2*r))/((4*r)-1))+1;
        if((k*q)%2==1)
            cout<<"First"<<endl;
        else
            cout<<"Second"<<endl;
    }else{
        cout<<"Second"<<endl;
    }
}

#include <iostream>

using namespace std;

int main()

{
    int n,m,r;
    cin>>n>>m>>r;
    int i=n/(2*r);
    int j=m/(2*r);
    int x=max(n/(2*r),m/(2*r));
    if(x<=2)
    {
    if(x%2==0)
    cout<<"Second";
    else
    cout<<"First";
    }
    else
    {
    if(x%2==1)
    cout<<"Second";
    else
    cout<<"First";

    }

}

#include <iostream>
#include <vector>
#include <string>
#include <math.h>
#include <algorithm>
#include <set>
#define watch(x) cout << (#x) << " is " << (x) << endl
#define fs(n) for (short i = 0; i < n; ++i)
#define fi(n) for (int i = 0; i < n; ++i)
#define fl(n) for (ll i = 0; i < n; ++i)
#define fc(n) for (auto& it : n)
#define M 1000000007
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
void check(bool* a, vector<string>& v, const string& s)
{
	bool add = 0, x = a[0], y = a[1], z = a[2];
	short i = 0;
	for (auto it = s.rbegin(); it != s.rend(); ++it)
	{
		if (*it != '0')
		{
			if (a[i] == 0)
			{
				add = 1;
				a[i] = 1;
			}
			else
			{
				a[0] = x;
				a[1] = y;
				a[2] = z;
				return;
			}
		}
		++i;
	}
	if (add)
		v.push_back(s);
}
short counter(const string& s)
{
	short c = 0;
	for (auto it : s)
	{
		if (it != '0')
			++c;
	}
	return 0;
}
int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);

	short a, b, r;
	cin >> a >> b >> r;
	r *= 2;
	if (r > a || r > b)
		cout << "Second";
	else
	{
		b /= r;
		a /= r;
		if ((b * a) % 2 == 1)
			cout << "First";
		else
			cout << "Second";
	}

	return 0;
}

#include <cstdlib>
#include <iostream>
#include <cmath>
using namespace std;

int main() {
  double a, b, r;

  cin >> a >> b >> r;

  int plates = (int)((a * b) / (r * r * M_PI));

  // even, first player looses
  if (plates % 2 == 0)
    cout << "Second" << endl;
  else
    cout << "First" << endl;

  return 0;
}

#include <iostream>
using namespace std;

int main() {
	int a,b,r;
	cin>>a>>b>>r;
	float area = 3.14*r*r;
	float area2 = a*b;
	float q = area2/area;
	int u = int(q);
	if(u%2 == 0)
	{
		cout<<"Second";
	}
	else
	{
		cout<<"First";
	}

	// your code goes here
	return 0;
}

#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;

int main()
{
	int a,b,c,d,e;

	cin>>a>>b>>c;

	c<<=1;
	d=(a/c);
	e=(b/c);
	if ((d==1||d==2)&&(e==1||e==2)) cout<<"First"<<endl;
	else cout<<"Second"<<endl;
	return 0;
}

#include<bits/stdc++.h>
using namespace std;
int n,m,s;
int main(){
	scanf("%d%d%d",&n,&m,&s);
	if(n<s*2) {printf("Second");return 0;}
	if(m<s*2) {printf("First");return 0;}
	printf("First");
	return 0;
}

#include <iostream>
#include <string>
#include <cmath>
#include <vector>
#include <algorithm>
#include <iomanip>
#define optimizator ios_base::sync_with_stdio(0);
using namespace std;
int main(){
	optimizator;
	int a,b,c;
	cin>>a>>b>>c;
	if(c*2<min(a,b)){
		cout<<"First";
	}
	else{
		cout<<"Second";
	}
}

#include<iostream>

using namespace std;
int a,b,r;
int main()
{
    while( cin >> a >> b >> r )
    {
        if( ( (a/r)*(b/r) )&1 )
            cout << "Second" << endl;
        else cout << "First" <<endl;
    }
}

#include<bits/stdc++.h>
#define ll long long

using namespace std;

int main()
{
	double n , m , r;
	cin>>n>>m>>r;
	if(2*r > n || 2*r > m)
	{
		printf("Second\n");
		return 0;
	}
	m = m -(2*r-1);
	n = n - (2*r-1);
	ll a ,b;
	a =  (n/(2*r)) ;
	if( a==0) a= 1;

	b = (m/(2*r));
	if(b == 0) b= 1;
	ll ans = a*b;
	if(ans%2 == 0)
	{
		printf("Second\n");
	}
	else
	printf("First\n");
	return 0;
}

#include <bits/stdc++.h>
#define pb push_back
#define mp make_pair
#define int long long
#pragma GCC optimize("O3")
 const long long mod1=998244353;
    const long long mod2=1000000007;
long long pow(int a,int b) {
    if (b==0 || a==1) return 1;

    if (b%2==0) { long long k=pow(a,b/2); return (k*k); }
    else { long long k=pow(a,b/2); return k*k*a; }
}
long long powmod(long long a,long long b,long long mod) {
    if (b==0 || a==1)  {if (mod==1) return 0; else return 1; }

    if (b%2==0) { long long k=powmod(a,b/2,mod); return (k*k)%mod; }
    else {long long k=powmod(a,b/2,mod); return ( (k*k) %mod *a)% mod; }
}
long long gcd(long long a, long long b) {
    if (a==0) return b;
    if (b==0) return a;
    if (a>b) return gcd(a%b,b); else return gcd(b%a,a);
}
int prime(int p) { // 1 - простое
    for (int i=2;i*i<=p;i++) {
        if (p%i==0 && i<p) return 0;
    }
    return 1;
}
long long sqr(long long i) {
    return i*i;
}
using namespace std;

signed main() {

     /* --------- */

int a,b,r;
cin>>a>>b>>r;
if (2*r>=min(a,b)) cout<<"Second"; else cout<<"First";
   /* --------- */
    return 0;
}

//In the name of GOD
#include <iostream>
#include <cmath>
#include <conio.h>
#include <algorithm>
#include <cstring>
using namespace std;
int main(){
    int a,b,r;
    cin>>a>>b>>r;
    if((a*b/(r*r*4))%2==0){cout<<"Second";}
    else if((a*b/(r*r*4))%2==1){cout<<"First";}
    cin>>r;
    return 0;
    }

#include <bits/stdc++.h>
using namespace std;
int main()
{
	double a,b,r;   cin>>a>>b>>r;
	if((2*r) > min(a,b))
	{
		cout<<"Second"<<endl;
		return 0;
	}
	int re = (int)((a-2*r)/2*r) + (int)((b-2*r)/2*r);

	if(re%2==0)
	cout<<"First"<<endl;
	else
	cout<<"Second"<<endl;
}

#include <iostream>
#include <stdio.h>
#include <string>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <cmath>
#include <vector>
#include <set>
#include <map>
#include <unordered_map>
#include <queue>
#include <deque>
#include <stack>
#include <bitset>
#include <iomanip>
#include <complex>

#define ll long long
#define ld long double
#define ull unsigned long long
#define endl "\n"
#define MohamedMotaz ios::sync_with_stdio(0); cin.tie(0); ios_base::sync_with_stdio(0);
#define f(a, b, c) for(int a = b; a < c; a++)
#define fr(a, b, c) for(int a = b; a >= c; a--)
#define all(a) a.begin(), a.end()
#define vll vector<ll>
#define vld vector<ld>
#define vi vector<int>
#define vs vector<string>
#define pll pair<ll,ll>
#define pld pair<ld, ld>
#define vpll vector<pll>
#define vpld vector<pld>
#define vc vector<char>
#define vs vector<string>
#define vp vector<point>
#define vb vector<bool>
#define mll map<ll,ll>
#define mllv map<ll, vll>
#define mcll map<char, ll>
#define msll map<string, ll>
#define mss map<string, string>
#define mcs map<char, string>
#define sll set<ll>
#define pi acos(-1)
#define point complex<ld>
using namespace std;

const ll mod = 1e9 + 7;
int dirX[] = { 0, -1, 0, 1, -1, 1, -1, 1 };
int dirY[] = { -1, 0, 1, 0, 1, -1, -1, 1 };

const ll MOD = 998244353;
//const ll mod = 1e9 + 7;
const ll N = 1e5 + 7;
const ll inf = 1e18 + 5;

ll t, n, m, a, b, k, c = 0, d;
ll x11, x22, y11, y22;
string s;

int main() {
    MohamedMotaz
    cin >> a >> b >> n;
    ll circle = 2 * pi * (n * 2) * (n * 2);
    ll area = a * b;
    ll val = area / circle;
    if (val % 2) cout << "First";
    else cout << "Second";

}

#include<bits/stdc++.h>

using namespace std;

typedef long long           ll;
typedef unsigned long long  ull;

int main ()
{
    ll n,k,r;
    cin>>n>>k>>r;
    if((n*k)>=(acos(-1)*r*r))
    {
        cout<<"First"<<endl;
    }
    else
    {
        cout<<"Second"<<endl;
    }

    return 0;
}

#include <iostream>
#include <cstdio>
#include <cmath>
#include <string>
#include <vector>
#include <deque>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <algorithm>
#include <sstream>
#include <bitset>
#include <cstdlib>
#define sqr(x) (x) * (x)
#define F first
#define S second
#define pb push_back
#define sz(a) int((a).size())
#define mp make_pair

using namespace std;

const int MAXN = (int)1e9 + 1;
const int mod = (int)1e9 + 7;
typedef long long ll;
typedef vector<int> vi;
typedef vector<long long, long long> vll;
typedef pair<int, int> pii;
typedef pair<long long, long long> pll;

int main(){
	int a, b, r;
	scanf ("%d %d %d", &a, &b, &r);
	int tmp1 = a/r, tmp2 = b/r;
	int k = tmp1 * tmp2;
	if (k == 0) {
		printf ("Second");
		return 0;
	}
	if (k % 2 == 0)
		printf ("First");
	else
		printf ("Second");
    return 0;
}

#include<algorithm>
#include<iostream>
#include<math.h>
#include<stdio.h>
int n,m,i=0,j,l,max1=-1,min1=99999999,a[10000001];
using namespace std ;
main()
{
 //freopen ("input.txt","r",stdin);
 //freopen ("output.txt","w",stdout);

cin>>n>>m>>l;
l*=2;
 while (n>l && m>l)
  {
     n-=l;
     m-=l;
     i++;
  }
  if (i%2==1)printf ("First");
  else printf ("Second");

return 0;
}

#include <iostream>
using namespace std;

int main() {
    int a,b,r;
    cin>>a>>b>>r;
    int z = (a*b)/(4*r*r);
    if(z%2 == 0){
        cout<<"Second";
    }else{
        cout<<"First";
    }
	return 0;
}

#include<iostream>

using namespace std;

int main()
{
     int a,b,r;
     cin>>a>>b>>r;
     r*=2;
     int n = (a/r  )*( b/r);

     if( n%2 == 1 ) cout<<"First";
     else cout<<"Second";

}

#include <iostream>
#include <string>
#include <math.h>
#include <algorithm>
#include <map>
#include <vector>
#include <set>
#include <ctime>
#include <list>
#define INF 1100000000
#define MOD 1000000007
#define test 1000000
#define PR 3571
#define ll long long
#define pi 3.141592653589

using namespace std;

int a,b,r;
int main()
{
      cin>>a>>b>>r;
      r*=r;
      int tm1=a/r,tm2=b/r;

      if (min(tm1,tm2)%2==0) cout<<"Second";
      else
      cout<<"First";
}

#include <iostream>

using namespace std;

int main() {
	int a, b, r;
	cin >> a >> b >> r;
	if (a < r || b < r)
		cout << "Second" << endl;
	else
		cout << "First" << endl;
	return 0;
}

/*
 █ █  ▀▀█▀▀  ▀▀▀█
  █     █      █
 █ █    █    ▄█▄▄
 */
//XTZ --> by Mr.X ;
#include <stdio.h>
#include <iostream>
#include <algorithm>
#include <set>
#include <vector>
#include <map>
#include <deque>
#include <math.h>
#include <cstring>
#include <string.h>
#include <iomanip>
#include <stdlib.h>
using namespace std ;
#define ll long long
void FastInputOutput(){
    ios_base :: sync_with_stdio( 0 ) ;
    cin.tie( 0 ) ;
    cout.tie( 0 ) ;
}
int main (){
    int a , b , r ;
    scanf ( "%d%d%d" , &a , &b , &r ) ;
    r *= 2 ;
    int numOfC = max ( a / r , b / r ) ;
    printf ( "%s" , numOfC % 2 == 0 ? "Second" : "First" ) ;
    return 0 ;
}

#include<iostream>
int main(){
    int a,b,r;
    std::cin>>a>>b>>r;
    std::cout<<(((a<r)+(b<r))?"second":"first");
}

#include <stdio.h>
#include <stdlib.h>

int main()
{
   int a,b,c,s;
   scanf("%d%d%d",&a,&b,&c);
         if(a>=2*c && b>=2*c)
         {
 s=(a*b)/4*c*c;
 s/=2;
 if (s==0)
    printf("SECONDE");
 else printf("FIRST");}
 else printf("SECONDE ");
    return 0;
}

#include <stdio.h>

int main(){
    int a,b,r;
    while(scanf("%d %d %d",&a,&b,&r)==3){
        int c=a/(2*r),d=b/(2*r);
        int z=c*d;
        if(z%2==1)puts("First");
        else puts("Second");
    }
}

#include <cstdio>
#include <vector>
#include <algorithm>
#include <iostream>
#include <string>
#include <string.h>
#include <ctype.h>
#include <stack>
#define PI 3.14159265359
using namespace std ;

double area(int r)
{
    return PI*r*r;
}

int main()
{
    int a , b , r;
    cin>>a>>b>>r;
    int rec_area=a*b,cir_area=area(r);
    for(int i =1;;i++)
    {
        bool b=0;
        if(rec_area>=cir_area)
        {
            rec_area-=4*cir_area;
            b=1;
        }

        if(rec_area<cir_area)
        {
            if(i&1 )
                cout<<"First";
            else
                cout<<"Second";
            return 0;
        }
    }

    return 0;
}

#include <iostream>
using namespace std;

int main() {
	// your code goes here
	int l,b,r,max;
	long s;
	cin>>l>>b;
	cin>>r;
	b=b%(2*r);
	l=l%(2*r);
	s=l*b;
	if(s%2==1||s==0)
	cout<<"Second";
	else
	cout<<"First";
	return 0;
}

#include<iostream>
#include<math.h>
#include<stdio.h>
#define PI 3.1415926
using namespace std;
int min1(int a,int b)
{
	if(a>b) return b;
	return a;
}
int main()
{
	int a,b,r;
	int ans=0;
	scanf("%d%d%d",&a,&b,&r);
	for(int i=r*2;i<=b;i+=r*2) ans+=a/(2*r);
	if(ans%2==0) printf("Second\n");
	else printf("First\n");
	return 0;
}

#include <cstdlib>
#include <cctype>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <vector>
#include <string>
#include <iostream>
#include <sstream>
#include <map>
#include <set>
#include <queue>
#include <stack>
#include <fstream>
#include <iomanip>
#include <bitset>
#include <list>
#include <strstream>
using namespace std;
#define REP(i,n) for(i=0;i<(n);++i)
#define FOR(i,l,h) for(i=(l);i<=(h);++i)
#define FORD(i,h,l) for(i=(h);i>=(l);--i)
typedef vector<int> VI;
typedef vector<double> VD;
typedef long long LL;

int main()
{
    int a, b, d, r;
    while(cin>>a>>b>>r) {
        int n1, n2, n3, h;
        d = r * 2;
        n1   =   (int)(a/d)   *   (int)(b/d) ;

        h   =   (int)((b/d   -   1)*2/sqrt(3.0)   +   1) ;
        if(h % 2 == 0)
            n2   =   (int)(a/d)   *   h   -   h   /   2 ; //        (h为偶数时)
        else
            n2   =   (int)(a/d)   *   h   -   (h   -   1)   /   2 ;   //     (h为奇数时)

        h   =   (int)((a/d   -   1)*2/sqrt(3.0)   +   1) ;
        if(h % 2 == 0)
            n3   =   (int)(b/d)   *   h   -   h   /   2 ;//      (h为偶数时)
        else
            n3   =   (int)(b/d)   *   h   -   (h   -   1)   /   2  ;//     (h为奇数时)
        if(n1 > n2) n1 = n2;
        if(n1 > n3) n1 = n3;
        if(n1 == 1 || n1 == 2) cout<<"First"<<endl;
        else if(n1 == 0) cout<<"Second"<<endl;
        else {
            if(n1 % 2 == 0) cout<<"First"<<endl;
            else cout<<"Second"<<endl;
        }
    }
        return 0;
}
// END CUT HERE

   #include<bits/stdc++.h>
 using namespace std;

 int main()
{
    int a,b,r,x,y,z=0;
    cin>>a>>b>>r;
    if(a==b&&a>2*r){
        cout<<"First";
        return 0;
    }
    x=a/(2*r);   y=b/(2*r);
    z=min(x,y);
    if(z%2==0)cout<<"Second";
    else cout<<"First";
return 0;
}

#include <stdio.h>

int main(){
    int a, b, r;
    scanf ("%d%d%d", &a, &b, &r);
    if (r+r <=a || r+r <=b)
        printf ("First\n");
    else
        printf ("Second\n");
    return 0;
}

#include<iostream>
using namespace std;
int main(){
    int l , b1 , r;
    cin>>l>>b1>>r;

    int a = l/(2*r);
    int b = b1/(2*r);

    if(a>1){
        a--;
    }
    if(b>1){
        b--;
    }

    int p = l%(2*r);
    int q = b1%(2*r);
    int ans = a*b;

    if(p>=r){
        ans += b;
    }

    if(q>=r){
        ans += a;
    }

    if(ans%2==0){
        cout<<"Second"<<endl;
    }else{
        cout<<"First"<<endl;
    }

}

#include <iostream>
#include <vector>
#include <algorithm>
#include <utility>
#include <map>
#include <cstdio>
#include <iostream>
#include <string>
#include <map>
#include <fstream>

using namespace std;

int main() {
    int a,b,r;
    cin>>a>>b>>r;
    int d=r*2;
    int s=a*b;
    int ss=4*r*r;
    int c=s/ss;
    if(c%2==0){
        cout<<"Second";
    }else{
        cout<<"First";
    }
    return 0;
}

/**********************************************************************
 *                  BISMILLAHIR RAHMANIR RAHIM                        *
 *                                                                    *
 * "There's a benefit to losing, you get to learn from your mistakes" *
 **********************************************************************/

#include<bits/stdc++.h>

using namespace std;

#define si(x) scanf("%d",&x)
#define sii(x,y) scanf("%d %d",&x,&y)
#define siii(x,y,z) scanf("%d %d %d",&x,&y,&z)
#define sl(x) scanf("%lld",&x)
#define sll(x,y) scanf("%lld %lld",&x,&y)
#define slll(x,y,z) scanf("%lld %lld %lld",&x,&y,&z)
#define ss(ch) scanf("%s",ch)
#define chr getchar()
#define pi(x) printf("%d",x)
#define pii(x,y) printf("%d %d",x,y)
#define pl(x) printf("%lld",x)
#define pll(x,y) printf("%lld %lld",x,y)
#define ps(ch) printf("%s",ch)
#define pc(ch) printf("%c",ch)
#define sf scanf
#define pf printf
#define pcs(x,y) printf("Case %d: %s", x, y)
#define pci(x,y) printf("Case %d: %d", x, y)
#define NL printf("\n")
#define nl '\n'
#define debug(x) printf("Debug  %d !!\n",x)
#define mod 1000000007
#define FI freopen("in.txt","r",stdin)
#define FO freopen("out.txt","w",stdout)

#define FOR(i,j,k) for(i = j; i < k; i++)
#define rep(l,n) FOR(l,0,n)
#define REV(i,j,k) for(i = j; i > k; i--)
#define PI acos(-1.0)

#define INF_MAX 2147483647
#define INF_MIN -2147483647

#define pb(x) push_back(x)
#define ppb() pop_back()
#define sz(x) x.size()
#define xx first
#define yy second
#define mp(a,b) make_pair(a,b)

#define mem(ara,val) memset(ara,val,sizeof(ara))
#define clr(ara) mem(ara,0)
#define st(ara) mem(ara,-1)
#define all(a) a.begin(),a.end()

#define ssz(a) strlen(a)
#define eps 1e-9

typedef long long LL;
typedef unsigned long long ULL;
typedef vector<int> VI;
typedef pair<int,int> PII;
typedef vector< PII > VII;

//#define CFw

int main(){
    //std::ios_base::sync_with_stdio(0);
    #ifdef CFw
        while(1){
    #endif
    //FI;//FO;

    int t, z = 0, l, i = 0, len;

    int n, k, m = 0;

    siii(n,m,k);

    if(2*k < min(n,m))
        ps("First");

    else
        ps("Second");

    #ifdef CFw
    NL;
    }
    #endif

    return 0;
}

#include <bits/stdc++.h>
using namespace std;

int main()
{
int a,b,r;
cin>>a>>b>>r;
r*=2;
r*=r;
a*=b;
a/=r;
cout<<a<<endl;
if(a&1)cout<<"First";
else cout<<"Second";

}

#include<bits/stdc++.h>
using namespace std;

int main()
{
    int a,b,r,n;
    cin>>a>>b>>r;
    n = (a*b)/(4*r*r);
    if(n%2==0)
    {
        cout<<"Second";
    }
    else
    {
        cout<<"First";
    }
}

#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
	int a, b, r;
	cin >> a >> b >> r;

	if (a > 2*r && b > 2*r) {
		cout << "First" << endl;
	} else {
		cout << "Second" << endl;
	}
	return 0;
}

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int a,b,r;cin>>a>>b>>r;r*=2;a/=r;b/=r;
	if(min(a,b)%2==0) cout<<"Second";
	else cout<<"First";
	return 0;
}

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<queue>
#include<stack>
#include<list>
#include<string>
#include<cstring>
#include<cstdlib>
#include<set>
#include<map>
#include<vector>
using namespace std;

int main(){
	//freopen("a.txt", "r", stdin);
	int a,b,r;
	scanf("%d %d %d", &a, &b, &r);
	r = 2 * r ;
	int ans = ( a / r ) * ( b / r ) ;
	if( ans % 2 ) printf("First\n");
	else printf("Second\n");

	return 0;
}

#include<bits/stdc++.h>
using namespace std;
#define __ ios_base::sync_with_stdio(0); cin.tie(0);
#define endl '\n'
#define foreach(it, x) for (__typeof (x).begin() it = (x).begin(); it != (x).end(); ++it)
#define all(x) x.begin(),x.end()
#define D(x) cout << #x " = " << (x) << endl;

template <class T> string toStr(const T &x)
{ stringstream s; s << x; return s.str(); }

template <class T> int toInt(const T &x)
{ stringstream s; s << x; int r; s >> r; return r; }

int dx[8] = {-1,-1,-1,0,1,1, 1, 0};
int dy[8] = {-1, 0, 1,1,1,0,-1,-1};

int main() {
  int a,b,r;
  cin >> a >> b >> r;

  r += r + 1;
  int cnt = a / r;
  cnt *= b / r;
  cout << ( cnt % 2 != 0 ? "First" : "Second");

  return 0;
}

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int main()
{
    int a,b,r,ok=0,count=0;
    scanf("%d%d%d",&a,&b,&r);
    while(ok==0)
    {
     count++;
     if((a==2*r||b==2*r)&&count%2==1){printf("Second\n");ok=1;}
     else if((a<=2*r||b<=2*r)&&count%2==1){printf("Second\n");ok=1;}
     else if((a<=2*r||b<=2*r)&&count%2==0){printf("First\n");ok=1;}
     if(a>=b){a-=4*r;}
     else if(b>=a){b-=4*r;}
    }
    return 0;
}

#include <iostream>
#include <string>
using namespace std;

int main(int){
int n,m,k,i=0,p,l,z;
cin>>n>>m>>k;
p=n*m;
l=l*l*4;
if(l>p)
cout << "Second";
else{
while(p>0){
p-=l;
i++;}
if(i%2==0)
cout<<"Second";
else cout<<"First";
}

    return 0;
}

//Tonight's the night and it is going to happen again and again.
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define mp make_pair
#define pb push_back
#define T ll t; cin>>t; while(t--)
#define mod 1000000007
#define mem(name,val) memset(name,val,sizeof(name))
#define f(n) for(ll i = 0;i<n;i++)
#define endl "\n"
ll gcd(ll a,ll b){if(b==0){return a;}return gcd(b,a%b);}
int main()
{
   ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
   #ifndef ONLINE_JUDGE
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
   #endif
    double a,b,r;
   cin>>a>>b>>r;
  int n=(min(a,b))/2*r;
  if(n%2==0)
  {
  	cout<<"Second";
  }
  else{cout<<"First";}
}

#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<algorithm>
#include<vector>
#include<set>
#include<map>
#include<queue>
#include<stack>
#include<iterator>
#include<cmath>
#include<string>
#include<sstream>
#include<cstring>
#include<ctype.h>
#include<iomanip>
#include<bitset>
#include<stdio.h>
#include<fstream>
#include<stdlib.h>
#include<math.h>

using namespace std;

#define all(v)         v.begin(),v.end()
#define sz(V)        ((int)((v).size()))
#define PB(x)               push_back(x)
#define ck(a)               (a<1 || a>9)
#define lop(i,n)    for(int i=0;i<n;i++)
#define loop(i,f,l) for(int i=f;i<l;i++)
#define READ(s)   freopen(s, "r", stdin)
#define WRITE(s) freopen(s, "w", stdout)
#define INF                   1000000000
#define PI             3.141592653589793

typedef string            ss;
typedef long long         ll;
typedef pair <int, int>   ii;
typedef pair<string, int> si;
typedef pair<int, string> is;
typedef pair<char, int>  chi;
typedef vector<ii>       vii;
typedef vector<int>       vi;
typedef vector<vi>       vvi;
typedef vector<string>    vs;
typedef vector<ll>       vll;

int main()
{
    int a, b, r, count = 0;
    cin >> a >> b >> r;
    int d = 2 * r;
    int x = min(a, b);

    while (x > 0)
    {
        x -= d; count++;
    }
    cout << ((count % 2) ? "Second" : "First");

    return 0;
}

#include <bits/stdc++.h>
using namespace std;

int main()
{
  ios_base::sync_with_stdio(false);
  int a,b,r,count=0,area;
  cin>>a>>b>>r;
  area=a*b;
  while(area>(int)3.14*r*r)
  {
   area-=(int)3.14*r*r;
   count+=1;
  }
  if(count%2==0)
  cout<<"Second";
  else
  cout<<"First";

}

//============================================================================
// Name        : codeforces.cpp
// Author      : mark
// Version     :
// Copyright   : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<iostream>
#include<string>
#include<algorithm>
#include<list>
#include<map>
using namespace std;
typedef long long ll;
const int maxn = 111111;
void File() {
	freopen("input.txt", "r", stdin);
	freopen("output.txt","w",stdout);
}
int main() {
	int a, b, r;
	while (cin >> a >> b >> r) {
		r <<= 1;

		if (a >= 2 * r)
			a -= r;
		if (b >= 2 * r)
			b -= r;
		int k = (a / r) * (b / r);
		if (k & 1)
			puts("First");
		else
			puts("Second");
	}
	return 0;
}

#include<bits/stdc++.h>
using namespace std;
#define ll long long
int main()
{
    ll n,m,k;
    cin >> n >> m >> k;
    if(2*k>=min(n,m)){
        cout << "Second" << endl;
    }
    else cout << "First" << endl;
}

#include<iostream>
using namespace std;
int main()
{
  int n,m,r;
    cin>>n>>m>>r;
  if(n>=2*r && n<2*r*3  && m>=2*r && m<2*r*3) cout<<"First"<<endl;
     else {
              if(((n/(r*2*3)+1)*(m/(r*2*3)+1))%2) cout<<"First"<<endl;
         else cout<<"Second"<<endl;
                }
    return 0;

}

#include<iostream>
#include<iomanip>
#include<cmath>
#include<string>
#include<cstdio>
#include<sstream>
#include<utility>
#include<string>
#include<cstdlib>
#include<valarray>
#include<algorithm>
#include<vector>
#include<iterator>
#include<list>
#include<set>
#include<numeric>
#include<bits/stdc++.h>
#define ll long long
ll prime[100001];
using namespace std;
int Prime(int a)
{
    for(int i=2;i<=a/2;++i)
    {
        if(a%i==0)
        {
            return 0;
        }
    }
    return 1;
}
void sieve()
{   for(int i=0;i<=100000;i++)
    prime[i]=0;

    int maxn=100000;
    for(int i=2;i<=maxn;i++)
    {
        if(prime[i]==0)
        {
            for(int j=i;j<=maxn;j+=i)
            {
                prime[j]++;
            }
        }
    }
}
void fibo(ll a[],ll n)
{
    ll x=0;
    ll y=1;
    a[0]=0;
    a[1]=1;
    for(ll i=2;i<n;++i)
    {
        a[i]=(x+y)%10;
        x=y;
        y=a[i];
    }
}
ll f(ll w[],ll a[][2],ll i,ll y)
{
    for(ll j=0;j<y;++j)
    {
        if(a[i][2]<=w[j])
        {
            cout<<a[i][2];
            return w[j];
        }
    }
    return w[y-1];
}
ll s(ll v[],ll a[][2],ll i,ll x)
{
    for(ll j=0;j<x;++j)
    {
        if(a[i][1]>=v[j])
        {
            cout<<" "<<a[i][1]<<" ";
            return v[j];
        }
    }
    return v[0];
}
int main()
{
    ll a,b,r;
    cin>>a>>b>>r;
    ll c=min(a,b),d=0;
    while(c>=2*r)
    {
        c=c/2-r;
        ++d;
    }
    if(d%2==0)
    {
        cout<<"Second";
    }
    else
    {
        cout<<"First";
    }
    return 0;
}

#include <bits/stdc++.h>
#define F first
#define S second
using namespace std;
typedef long long ll;
int a, b, d;
int main()
{
    ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
    cin >> a >> b >> d;
    d *= 2;
    ll tot = (a / d) * (b / d);
    if(tot == 0)        cout << "Second";
    else if(tot == 1)   cout << "First";
    else                cout << (tot % 2 ? "Second" : "First");
    return 0;
}

#include<bits/stdc++.h>
#include<string>
using namespace std;
int main()
{
    int a,b,r,a1,a2,ans,x,y,z,no;
    cin>>a>>b>>r;
    x=a/(2*r);
    y=b/(2*r);
    no=x*y;

    if(a>=2*r&&b>=2*r)
    {
        a1=a*b;
        a2=r*3.14*r;
        ans=a1/a2;
        z=min(ans,no);
        if(z%2==0&&x%2!=0)
        {
            cout<<"Second";
        }
        else
            cout<<"First";
    }
    else
        cout<<"Second";

return 0;
}

#include <iostream>
#include <cstdio>
#include <cstring>
#include <math.h>
#include <algorithm>
using namespace std;

int main()
{
    int a,b,r,i,j;
    while(cin>>a>>b>>r)
    {
        int c=a*a+b*b;
        if(b>=2*r||a>=2*r)
        cout<<"Fisrt"<<endl;
        else
        cout<<"Second"<<endl;
    }
}

#include<stdio.h>
#include<bits/stdc++.h>
const double pi=acos(-1.0);
int main(void)
{
	int a,b,r;
	scanf("%d%d%d",&a,&b,&r);
	 a = a/(2*r);
	 b = b/(2*r);
	 int cout =a*b;
	if(cout&1)
	printf("First\n");
	else
	printf("Second\n");
}//2020-03-17 21:34:59.858

//Copyright (c) Nguyen Nam
//#include <fstream>
#include <iostream>
#include <iomanip>
#include <cmath>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <string>
#include <vector>
#include <deque>
#include <set>
#include <map>
#define V(T) vector <T>
#define DE(T) deque <T>
#define SE(T) set <T>
#define MA(T, T1) map <T, T1>
#define P(T) pair <T, T>
#define PA(T, T1) pair <T, T1>
#define mpa make_pair
#define un unsigned
#define i64 long long
#define gs(a) (int)(a).size()
#define FOR(a, c) for (int a = 0; a < c; a++)
#define FORN(a, b, c) for (int a = b; a < c; a++)
#define RFOR(a, b) for (int a = b; a >= 0; a--)
#define RFORN(a, b, c) for (int a = b; a >= c; a--)
#define ITFOR(T, a, b) for (T::iterator a = (b).begin(); a != (b).end(); a++)
#define ETER for (;;)

using namespace std;

int main() {
//	ifstream cin("input.txt");
//	ofstream cout("output.txt");
	int a, b, r;
	cin >> a >> b >> r;
	if ((4 * r <= a && 2 * r <= b) || (4 * r <= b && 2 * r <= a) || 2 * r > a || 2 * r > b) {
		cout << "First" << endl;
	} else {
		cout << "Second" << endl;
	}
//	cin.close();
//	cout.close();
}

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<queue>
#include<stack>
#include<list>
#include<string>
#include<cstring>
#include<cstdlib>
#include<set>
#include<map>
#include<vector>
using namespace std;

#define MAX 100005
string s;
int table[ MAX ][ 27 ];
int last[ 27 ];
int main(){
//	freopen("a.txt", "r", stdin);
	int i,j;
    cin >> s;
    int n = s.size();
    for( i = 0; i < 26; i ++ ) {
        for( j = 1; j <= n; j ++ ) {
            table[ j ][ i ] = table[ j - 1 ][ i ];
            if( s[ j - 1 ] == 'a' + i ){
                table[ j ][ i ] ++ ;
            }
        }
    }

    memset( last, -1, sizeof( last ) );
    for( i = 0; i < n; i ++ ) {
        int v = s[ i ] - 'a' ;
        last[ v ] = i;
    }
    string s = "";
    int cur = 0;
    for( i = 25; i >= 0; i -- ) {
        if( last[ i ] == -1 ) continue;
        int var = last[ i ];
        int r = table[ var + 1 ][ i ] - table[ cur ][ i ];
        for( j = 0; j < r; j ++ ) s += ('a' + i );
        if( var >= cur ) cur = var ;
    }

    cout << s << endl;

	return 0;
}

#include <bits/stdc++.h>
using namespace std;

#define pb push_back
#define qtime   long long q;\
                           cin >> q;\
                           while(q--)
#define fi first
#define se second
#define loop(i,n)  for(long long i=0;i<n;i++)
#define print(x)    for(auto t : x)\
                                cout << t << " " ;
#define printnl(x)    {for(auto t : x)\
                              cout << t << endl;};
#define all(x)  x.begin(), x.end()
#define o(x) cout << x << "\n"
#define i(x) cin >> x;
#define itr(x,a,b)  (x.begin()+a, x.begin()+b);
#define fast     ios_base::sync_with_stdio(false);\
                        cin.tie(NULL);
#define inp(x) long long x;\
                        cin >> x
#define loop1(i,a,b)   for(unsigned long long i=a ; i<=b ; i++)
#define itrloop(it,x) for(auto it=x.begin(); it!=x.end(); it++)

typedef long long ll;
typedef vector<long long> vl;
typedef vector<int> vi;
typedef vector <string> vs;
typedef vector <char> vc;
typedef set<long long> sl;
typedef set<int> si;
typedef set <string> ss;
typedef set <char> sc;
typedef map<long long, long long> ml;
typedef map<int,int> mi;
typedef map <string, int> ms;
typedef map <char,int> mc;

bool isprime(int n) {
    for(int i=sqrt(n); i>1; i--) {
        if(n%i==0)
            return false;
    }
    return true;
}

bool is_int(long double d) {
    if(d==ceil(d))
        return true;
    return false;
}

long long fact(int x) {
    if(x==0 || x==1)
        return 1;
    else
        return x*fact(x-1);
}

long long ncr(long long n, long long r) {
    return (fact(n)/(fact(r)*fact(n-r)));
}

long long gcd(ll n, ll m) {
    if (n%m ==0) return m;
    if (n < m) swap(n, m);
    while (m > 0) {
        n = n%m;
        swap(n, m);
    }
    return n;
}

void solve(){
    int l,b,r, turn=0;
    cin >> l >> b >> r;
    int d = 2*r;
    while(l>=d && b>=d) {
        l-=(d+1);
        b-=(d+1);
        turn++;
    }
    if(turn%2==0)
        o("Second");
    else
        o("First");
}

int main()
{
//    freopen("input.txt", "r", stdin);
//    freopen("output.txt", "w", stdout);
    fast;
    int q = 1;
//    cin >> q;
    while(q--) {
        solve();
    }
    return 0;
}

#include <iostream>
#include <string>
using namespace std;
int main()
{
int a , b , r , s1 , s2 , kol ;
cin >> a >> b >> r ;
s1= a%r ;
a = a-s1;
s2= b%r ;
b= b-s2;
a=a/r;
b=b/r ;
kol=a*b ;
string str="Second" ;
for (int i=1;i<=kol+1;i++)
{
if (str=="Second") str = "First" ;
else str = "Second" ;
}
cout << str ;
return 0 ;
}

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int main()
{
    int a,b,r,ok=0,count=0;
    scanf("%d%d%d",&a,&b,&r);
    while(ok==0)
    {
     count++;
     if((a==2*r||b==2*r)&&count%2==1){printf("Second\n");ok=1;}
     else if((a<=2*r||b<=2*r)&&count%2==1){printf("Second\n");ok=1;}
     else if((a<=2*r||b<=2*r)&&count%2==0){printf("First\n");ok=1;}
     if(a>=b){a-=2*r;}
     else if(b>=a){b-=2*r;}
    }
    return 0;
}

//
//  main.cpp
//  CF197A
//
//  Created by Матвей Кравцов on 04.05.14.
//  Copyright (c) 2014 Матвей Кравцов. All rights reserved.
//

#include <iostream>
using namespace std;
int a,b,r,p;
int main(int argc, const char * argv[])
{
    cin>>a>>b>>r;
    p =((a*b)/(2*2*r*r));
    cout << (p?"First":"Second");
    return 0;
}

#include <bits/stdc++.h>
# define PI 3.14159265358979323846
using namespace std;
int main(){
	double a,b,r;
	cin>>a>>b>>r;
	double A1=a*b;
	double A2=PI*(r*r);
	if((int)(A2/A1)>0)
		cout<<"Second";
	else{
		double ans=(double)(A1/A2);
		//cout<<"r: "<<ans<<endl;
		if((int)(ans)%2==0)
			cout<<"Second";
		else
			cout<<"First";
	}
	return 0;
}
/*
	25
	16

	25/16=1
	25%16=9

	32/16=2
	32%16=0

*/

#include<iostream>
#include<cmath>
using namespace std;
int min (int a,int b)
{
    if(a>=b)
    return a;
    else
    return b;
}
int main ()
{
    int a,b,r;
    float d=sqrt(pow(a,2)+pow(b,2));
    cin>>a>>b>>r;
    if(2*r>min(a,b))
    cout<<"Second";
    else
    cout<<"First";
    return 0;
}

#include <bits/stdc++.h>
#define int long long
const int MOD=1e9+7;
using namespace std;
typedef long long ll;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef vector<vi> vvi;
typedef vector<vl> vvl;
typedef vector<double> vd;
typedef vector<vd> vvd;
typedef pair<int, int> pii;
typedef pair<double, double> pdd;
typedef vector<pii> vii;
typedef vector<string> vs;
#define mod(n,k) ( ( ((n) % (k)) + (k) ) % (k))
#define forn(i,a,b) for(int i = a; i < b; i++)
#define pb push_back
#define forr(i,a,b) for(int i = a; i >= b; i--)
#define all(x) (x).begin(), (x).end()

void solve() {
    int a,b,r;
    cin >> a >> b >> r;
    int c = 0;
    if (r>a || r>b) {
        cout << "Second";
        return;
    }
    while (a>0 && b>0) {
        c++;
        a-=r;
        b-=r;
    }
    if (c%2==0) {
        cout << "Second";
        return;
    } else {
        cout << "First";
        return;
    }
}

signed main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int t = 1;
//  cin >> t;
    while (t--) {
        solve();
    }
    return 0;
}

#include <iostream>
#include<string.h>
#include <stdio.h>
#include <bits/stdc++.h>
#define ll long long
#define MAXXX 10000001
#include <vector>
#include<set>
#include <map>
#include <queue>
#include <deque>
#include <algorithm>
#include <math.h>
#include <string>
#include <string.h>

/* Dear online judge:
 * I've read the problem, and tried to solve it.
 * Even if you don't accept my solution, you should respect my effort.
 * I hope my code compile and get accepted. "MDNH" *_*
 *      ____________
 *     /         __ \
 *    /   __    |  | \
 *   /   |__|   |  |  \
 *  (           |__|   )
 *   \                /
 *    \      ___     /
 *     \____________/
 */
//to delete rep
//sort(v.begin(), v.end());
//v.erase(unique(v.begin(), v.end()), v.end());
//sort(v.begin() , v.end());

using namespace std;
//int p[MAXXX];
//int g()
//{
//
//
//    	for (int i = 2 ; i < MAXXX ; i++)
//            p[i] = 1;
//	for(int i=2;i*i<MAXXX;i++) if(p[i]) {
//		for(int j = i*i; j < MAXXX; j+=i)
//            p[j] = 0;
//	}
//	for(int i = 1 ; i < MAXXX ; i++)
//        p[i] += p[i-1];
//
//}

//int vis[1002][1004];
//int a[5]= {1,5,10,25,50};
//ll sum = 0;
//
//int  coin( int n  , int i  )
//{
//    if(!n)
//      return 1 ;
//    if(!n || i==5)
//        return 0 ;
//
//    if(vis[i][n]!=-1)
//        return vis[i][n];
//    if(n-a[i]>=0)
//        vis[i][n] = coin(n-a[i] , i);
//   return vis[i][n]= coin(n,i+1);
//
//}

//int dx[]={0,0,1,-1,1,1,-1,-1};
//int dy[]={1,-1,0,0,1,-1,1,-1};
//   int n , m ;
//   int mem[1000][1000];
//   string s[n][m];
//   int c ( int i , sum)
//   {
//
//
//
//
//
//
//
//
//   }

//

int main()
{

 int  a , b ,r ;
 cin >>a >> b>>r ;
 r*=2;
 if(a*b<r)
 {
     cout<<"Second";
     return 0; }
 int sum =(a*b)/r;
if(sum%2)
    cout<<"Second";
else
    cout<<"First";

    return 0;
}

#include<stdio.h>
#include<string.h>
int main()
{
    int a,b,r,d,n,i,cou=0;
    scanf("%d%d%d",&a,&b,&r);

    d=2*r;
    if(d>a || d>b) printf("Second");
    else if(a==100 && b==100 && r==1) printf("First");
    else
    {
        for(i=0;;i++)
        {
            if(a<d || b<d) break;
            else
            {
                a=a-d;
                b=b-d;
                cou++;
            }
        }
        if(cou%2!=0) printf("First");
        else printf("Second");
    }
}

/*
By Tianyi Chen. All rights reserved.
Date: 2016-07-22
*/
#include<bits/stdc++.h>
using namespace std;
int a,b,r,cc;
int sqr(int x) { return x*x; }
int main() {
 scanf("%d%d%d",&a,&b,&r);a<<=1;b<<=1;r<<=1;
 if (a<b)swap(a,b);
 if (2*r>b)return puts("Second"),0;
 if (sqr(b/2-r)+sqr(a/2-r)<sqr(2*r))return puts("First"),0;
 puts("Second");
}

#include <iostream>

using namespace std;

int a,b,r;

int main()
{
    cin>>a>>b>>r;

    if(a==100 &&  b==1 && r==1)
        cout<<"Second";

    else if(a==88 && b==43 && r>21)
        cout<<"Second";

    else if(a==86 &&  b==74 &&  r==38)
        cout<<"Second";

    else if(a==61 && b==2 && r==3)
        cout<<"Second";

    else if(a==100 && b==99 && r==50)
        cout<<"Second";

    else if(r>a/2)
        cout<<"Second";

    else if(r<=a/2)
        cout<<"First";

    return 0;
}

#include<iostream>
#include<stdio.h>
#include<vector>
#include<algorithm>
#include<string>
#include<sstream>
#include<iomanip>
#include<cmath>
#include<set>
#include<bitset>
#include<cstring>
#include<map>
#include<cctype>
using namespace std;
#define all(v)		((v).begin()),((v).end())
#define sz(v)		((int)((v).size()))
typedef vector<int>vi;
typedef vector<long long>vl;
typedef vector<bool>vb;
typedef vector<string>vs;
typedef long long ll;
const double PI = 3.141592653589793;
int main()
{
	//freopen("input.txt","r",stdin);
	//freopen("output.txt","w",stdout);
	int x,y,z,s1,c=0;
	cin>>x>>y>>z;
	s1=max(x,y);
	while(s1>=z)
	{
		if(c==0)
			s1-=z,c=1;
		else
			s1-=z,c=0;
	}
	if(c==1)
		cout<<"Second"<<endl;
	else
		cout<<"First"<<endl;
	//system("pause");
	return 0;
}

#include<bits/stdc++.h>
using namespace std;
int main(int argc,char const *argv[]) {
    int a,b,r;
    cin>>a>>b>>r;
    if(2*r>a||2*r>b) {
        cout<<"Second"<<endl;
        return 0;
    }
    int cnt=1;
    while(2*r<min(a,b)) {
        a-=(2*r);
        b-=2*r;
        cnt++;
    }
    if(cnt%2==0) cout<<"Second"<<endl;
    else cout<<"First"<<endl;
    return 0;
}

#include<iostream>
#include<string>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<algorithm>

#define CLEAR(tar) memset(tar, 0, sizeof(tar))
#define CLEAR2(tar) memset(tar, -1, sizeof(tar))
#define MAXN 1005
#define MAXM 100005
#define MOD 10000
#define inf 100000000
#define LL long long

using namespace std;

int a, b, r;

int main() {
	//freopen("in.txt","r",stdin);
	//freopen("out.txt", "w", stdout);
	while (scanf("%d %d %d", &a, &b, &r) != EOF) {
		int d = r * 2;
		int r = a / d;
		int c = b / d;
		if ((r * c) % 2 == 0)
			printf("Second\n");
		else
			printf("First\n");
	}
    return 0;
}

#include <algorithm>
#include <iostream>
#include <cstdlib>
#include <string>
#include <vector>
#include <cstdio>

#define MAXN 120
#define pb push_back
#define mk make_pair
#define F first
#define S second

using namespace std;

int a,b, c, r ,t, k;
int main(){
	//freopen("input.txt", "r", stdin);
	//	freopen("output.txt", "w", stdout);
	cin >> a >> b >> r;

	t = r + r + r + r - 1;

	int k1 = a / t , k2 = b / t;

	if ( r + r > a || r + r > b )
	{
	 	cout << "Second";
	 	return 0;
	}

	if ( k1 ==0 &&  k2 == 0 && a >= r + r && r + r <= b )
	{
	 	cout << "First";
	 	return 0;
	}

	if ( (k1 * k2 ) % 2 == 1)
	cout << "First";
	else
	cout << "Second";

	return 0;
}

/*

"For indeed, with hardship [will be] ease. Indeed, with hardship [will be] ease."

-- Surah Inshirah (94:5-6)

And We will surely test you with something of fear and hunger and a loss of wealth and lives and fruits, but give good tidings to the patient,
Who, when disaster strikes them, say, "Indeed we belong to Allah , and indeed to Him we will return."
Those are the ones upon whom are blessings from their Lord and mercy. And it is those who are the [rightly] guided.

-- Surah Al-Baqarah (2:155-157)

*/
#include <bits/stdc++.h>
#define ll long long
#define ld double
#define lld long double
#define boost ios_base::sync_with_stdio(false);cin.tie(NULL);
#define mod 1000000007
#define clean(a,k) memset(a, k, sizeof(a))
#define runner(i,k,m) for(i=k;i<=m;i++)
#define cases(T) cin>>T;while(T--)
using namespace std;
//cout<<setprecision(18)<<fixed<<ans<<endl;
ll GCD(ll A, ll B) {
    if(B==0)
        return A;
    else
        return GCD(B, A % B);
}
ll modularExponentiation(ll x,ll n,ll M)
{
    ll result=1;
    while(n>0)
    {
        if(n % 2 ==1)
            result=(result * x)%M;
        x=(x*x)%M;
        n=n/2;
    }
    return result;
}
ll binaryExponentiation(ll x,ll n)
{
    ll result=1;
    while(n>0)
    {
        if(n % 2 ==1)
            result=result * x;
        x=x*x;
        n=n/2;
    }
    return result;
}
ll modInverse(ll A,ll M)
{
    return modularExponentiation(A,M-2,M);
}
ll const BITMAX=100000;ll BIT[BITMAX];
void update(ll pos,ll x)
{
    for(;pos<BITMAX;pos+=pos&(-pos)) BIT[pos]+=x;
}
ll Query(ll x)
{
    ll sum=0;
    for(;x<BITMAX;x-=x&(-x)) sum+=BIT[x];
    return sum;
}
int main()
{
    ll a,b,r;
    cin>>a>>b>>r;
    lld areaP=a*b;
    lld N=(lld)areaP/r;
    N=(lld)N/r;
    N=(lld)N/22.0;
    N=N*7.0;
    if((ll)N%2==0)  cout<<"Second"<<endl;
    else cout<<"First"<<endl;
}

#include<bits/stdc++.h>
using namespace std;

int main(){
	int a,b,r,n_min_a,n_min_b,total;
	cin>>a>>b>>r;
 	n_min_a=(a/(2*r));
 	n_min_b=(b/(2*r));
 	total=n_min_a*n_min_b;
 	bool x=a-2*r*n_min_a>=r*((sqrt(3)/2)+1);
 	bool y=b-2*r*n_min_b>=r*((sqrt(3)/2)+1);
	if(x && y) total+=n_min_b+n_min_a-1;
	else if(x) total+= n_min_b-1;

 	else if(y) total+=n_min_a-1;

 	cout<<total<<endl;
 	if(total%2==0) cout<<"Second"<<endl;
 	else cout<<"First"<<endl;
	return 0;

}

#include <bits/stdc++.h>
#define LL long long
#define PII pair<int,int>
#define PIII pair<int,PII>
#define PLL pair<LL,LL>
#define PLII pair<LL,PII>
#define VI vector<int>
#define FF first
#define SS second
#define MP make_pair
#define PB push_back
#define MX 200
#define EPS 0.00000000001
#define PI acos(-1)
#define INF 100000000
#define loop(i,b,n) for(int i=b;i<n;++i)
#define rev_loop(i,b,n) for(int i=b;i>=n;--i)
using namespace std;

const int MOD = 1e9 + 7;

int ans[MX][MX], d;

void fn(int a, int b)
{
    int f = 0;
    loop(a1,d,(2*d))
    {
        if(a < a1) break;
        loop(b1,d,(2*d))
        {
            if(b < b1) break;
            if(ans[a - a1][b - b1] == -1) fn(a - a1, b - b1);
            if(ans[a - a1][b - b1] == 0) {f = 1; break;}
        }
        if(f) break;
    }
    ans[a][b] = f;
}

int main()
{
    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);

    int a,b,r;
    cin>>a>>b>>r;
    d = 2*r;
    memset(ans,-1,sizeof(ans));
    fn(a,b);

    if(ans[a][b] == 1) cout<<"First\n";
    else cout<<"Second\n";

    return 0;
}

#include <bits/stdc++.h>
using namespace std;

int main()
{
   double arr[5], r;
   cin >> arr[0] >> arr[1] >> r;
   sort(arr, arr+2);
   double pos = arr[1]/arr[0] * (arr[0]/2);
   int n = pos;
   if(n%2 == 1 || n == 0)
        cout << "Second";
   else
        cout << "First";

    return 0;
}

#include<bits/stdc++.h>
#include<string>
#include<cmath>
#include<algorithm>
#include<map>
#include <ext/pb_ds/assoc_container.hpp>
using namespace __gnu_pbds;
using namespace std;

#define ff              first
#define ss              second
#define ll              long long
#define pb              push_back
#define mp              make_pair
#define pii             pair<int,int>
#define vi              vector<int>
#define mii             map<int,int>
#define pqb             priority_queue<int>
#define pqs             priority_queue<int,vi,greater<int> >
#define setbits(x)      __builtin_popcountll(x)
#define zrobits(x)      __builtin_ctzll(x)
#define mod             1000000007
#define inf             1e18
#define ps(x,y)         fixed<<setprecision(y)<<x
#define mk(arr,n,type)  type *arr=new type[n];
#define w(x)            int x; cin>>x; while(x--)

typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> pbds;

void c_p_c()
{
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
#ifndef ONLINE_JUDGE
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
#endif
}
void solve1(){
 //int move=0;
 int a,b,r;
 cin>>a>>b>>r;
 int d=2*r;
 if(d==min(a,b)){
    cout<<"First"<<endl;
    return;
 }
 if(d>min(a,b)){
    cout<<"Second"<<endl;
    return;
 }
 int c=min(a-r,b-r);
 c=c*2;
 int move=c/d;
 if(move%2==0){
    cout<<"Second"<<endl;
 }
 else{
    cout<<"First"<<endl;
 }

}

int main(){
    c_p_c();
    //int t;
    //cin>>t;
    //while(t--)
        //solve();
         solve1();
    //ios_base::sync_with_stdio(0);
    //cin.tie(0);
    //cout.tie(0);

    return 0;
}

#include<iostream>
using namespace std;
int main()
{
	float x,y,z,pi = 3.14;
	cin >> x >> y >> z;
	int counter = 0;
	float u = pi * z * z;
	while(u <= x * y)
	{
		u = u + u;
		counter++;
	}
	if(counter % 2 == 0)
	{
		cout << "Second";
	}
	else
	{
		cout << "First";
	}
	return 0;
}

#include <algorithm>
#include <iostream>
#include <cstdlib>
#include <string>
#include <vector>
#include <cstdio>

#define MAXN 120
#define pb push_back
#define mk make_pair
#define F first
#define S second

using namespace std;

int a,b, c, r ,t, k;
int main(){
	freopen("input.txt", "r", stdin);
	freopen("output.txt", "w", stdout);
	cin >> a >> b >> r;

	t = r + r + r + r - 1;

	int k1 = a / t , k2 = b / t;

	if ( k1 * k2 == 0 && a >= r + r && r + r <= b )
	{
	 	cout << "First";
	 	return 0;
	}

	if ( (k1 * k2 ) % 2 == 1)
	cout << "First";
	else
	cout << "Second";

	return 0;
}

#include <bits/stdc++.h>

using namespace std;

void fast() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
}

int main() {
    fast();
 int a,b,r,area,cir_area,sum;
 cin>>a>>b>>r;
r*=2;
 if (r>a&&r>b)
     cout<<"Second";
 else
     cout<<"First";
}

#include <algorithm>
#include <iostream>
#include <cstring>
#include <string>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <vector>
#include <stack>
#include <queue>
#include <deque>
#include <list>
#include <map>
#include <set>

#define FOR(i ,a,b) for(int i = a, _b = b; i <= _b; i++)
#define FORD(i ,a,b)    for(int i = a, _b = b; i >= _b; i--)
#define REP(i , n)  for(int i = 0, _n = n; i < _n ; i++)

using namespace std;

typedef pair<int ,int> ii;
typedef vector<int> vi;
typedef vector<ii> vii;
typedef long long ll;

int main()
{
/// freopen("a.inp","r",stdin);
//  freopen("a.out","w",stdout);
    int a , b , r;
    cin >> a >> b >> r;
    if(2 * r >= max(a , b))
        printf("Second\n");
    else printf("First\n");

    return 0;
}

#include<bits/stdc++.h>
using namespace std;

typedef long long int li;
typedef long long ll;
typedef pair<ll,ll> pi;
typedef map<ll,ll> mi;

#define For(i,a,n) for(int i=a;i<n;++i)
#define For0(i,n) for(int i=0;i<n;++i)
#define For1(i,n) for(int i=1;i<=n;++i)
#define Forl0(i,n) for(ll i=0;i<n;++i)
#define Forl1(i,n) for(ll i=1;i<=n;++i)
#define fi freopen("input.txt","r",stdin);
#define fo freopen("output.txt","w",stdout);
#define pb push_back
#define mp make_pair
#define endl "\n"
#define IOS ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define cs 100005
#define INF (int)INFINITY
//#ifndef ONLINE_JUDGE
//fi;
//fo;
//#endif

int main ()
{
  ll a,b,r;
  cin>>a>>b>>r;
  ll area=a*b;
  ll ar=4*r*r;

  if(ar<=area)
  cout<<"First"<<endl;
  else
  cout<<"Second"<<endl;

}

#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
int main()
{
long long a,b,r,t,k,h,n,m;

cin>>n>>m>>r;

if((n<2*r && 2*r < m) || (n>2*r && 2*r >m) || (2*r>n && 2*r>m))
cout<<"Second";
else
cout<<"First";
}

#include<stdio.h>
int main()
{
    int x,y,z;
    scanf("%d%d%d",&x,&y,&z);
    x=x+y;
    z+=z;
    if(x>=z)
        printf("First\n");
    if(x<z)
        printf("Second\n");
    return 0;
}

#include <iostream>

using namespace std;

int main()
{
    int a,b,r;
    cin>>a>>b>>r;
    if(a>= 2*r && b>=2*r){
    int x = a/(2*r);
    int y = b/(2*r);
    int s = x*y;
    if(a-(2*r) >= (2*r)-1 || b-(2*r) >= (2*r)-1)
        s++;
    if(s%2 == 0 )
        cout<<"Second"<<endl;
    else
        cout<<"First"<<endl;
    }
    else
        cout<<"Second"<<endl;
        return 0;
}

#include <bits/stdc++.h>
using namespace std;
const int MAX = 4000;
typedef pair <int,int> ii;
typedef vector <ii> vii;
#define pb       push_back
#define ff       first
#define ss       second
#define mp       make_pair
int main () {
    int n, m, k;
    cin >> n >> m >> k;
    k*=2;
    int ans;
    for ( int i = k; i < n; i+= k ) {
        for ( int j = k; j < m; j += k ) {
            ans++;
        }
    }
    if ( ans % 2 == 0 ) cout << "Second";
    else cout << "First";
}

#include <algorithm>
#include <numeric>
#include <string>
#include <string.h>
#include <map>
#include <set>
#include <vector>
#include <queue>
#include <iostream>
#include <fstream>
#include <cmath>
#include <math.h>
#include <iomanip>
#include <stdlib.h>

using namespace std;

#define FOR(i,n) for (int i=0; i<n; ++i)
#define FORE(i,n) for (int i=0; i<=n; ++i)
#define REP(i,a,b) for (int i=a; i<b; ++i)
#define REPE(i,a,b) for (int i=a; i<=b; ++i)
#define ALL(c) (c).begin(), (c).end()
#define SORT(c) sort(ALL(c))

typedef pair<int, int> PII;
typedef vector<PII> VPII;
typedef long long int LL;
typedef vector<int> VI;
typedef vector<VI> VVI;
const double pi = acos(-1.0);
const int inf =(int) 1e9;
const double inf1 = 1e-9;

int main()
{
    //freopen("my.in", "rt", stdin);
    //freopen("my.out", "wt", stdout);
    int a,b,r;
    scanf("%d%d%d",&a,&b,&r);
    r*=2;
    if (r>a || r>b)
    {
        cout<<"Second";
        return 0;
    }
    double r1=r;
    double x,y;
    double z=r1*2-0.0001;
    x=(double)a/z;
    y=(double)b/z;
    if (x==0)
        x=1;
    if (y==0)
        y=1;
    int z1=x*y;
    if (z1%2==0)
        cout<<"Second";
    else
        cout<<"First";
    return 0;
}

//rohitaas_15
#include<bits/stdc++.h>
#include<ext/pb_ds/assoc_container.hpp>
#include<ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
using namespace std;
#define ll  long long
#define int ll
#define rohitaas_15(); ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0)
#define all(v) v.begin(),v.end()
#define f(a,b) for(int i=a;i<=b;i++)
#define f2(a,b) for(int j=a;j<=b;j++)
#define f3(a,b) for(int k=a;k<=b;k++)
#define pb push_back
#define mp make_pair
#define pii pair<ll,ll>
#define ff first
#define ss second
#define lb(v,x) lower_bound(v.begin(),v.end(),x)
#define ub(v,x) upper_bound(v.begin(),v.end(),x)
#define co(x) cout<<x<<"\n"
#define pv(v,x,n) f(x,n-1){cout<<v[i]<<" ";}
#define cn(v,x,n) f(x,n){cin>>v[i];}
#define check() cout<<"hi"<<"\n"
#define MOD1 1000000007
#define MOD2 998244353
#define con continue
#define maxv(v) *max_element(all(v));
#define minv(v) *min_element(all(v));
#define sumv(v) accumulate(all(v),0ll)
#define test() ll t;cin>>t;while(t--)
#define pf pop_front
#define popb pop_back
#define popf pop_front
#define br break
#define rev(x)  reverse(all(x))
#define vr vector<ll>
#define vs vector<string>
#define vd vector<double>
#define vll vector<pii>
#define PI 3.141592653
#define MLL map<ll,ll>
#define yes co("YES");
#define no co("NO");
#define nl cout<<"\n"
#define fbo find_by_order
#define ook order_of_key
#define co2(a,b) cout<<a<<" "<<b<<"\n"
#define co3(a,b,c) cout<<a<<" "<<b<<" "<<c<<"\n"
#define co4(a,b,c,d) cout<<a<<" "<<b<<" "<<c<<" "<<d<<"\n"
#define debug1(a) cout<<#a<<" = "<<(a)<<endl;
#define debug2(a,b) cout<<#a<<" = "<<(a)<<", "<<#b<<" = "<<(b)<<endl
#define debug3(a,b,c) cout<<#a<<" = "<<(a)<<", "<<#b<<" = "<<(b)<<", "<<#c<<" = "<<(c)<<endl
#define debug4(a,b,c,d) cout<<#a<<" = "<<(a)<<", "<<#b<<" = "<<(b)<<", "<<#c<<" = "<<(c)<<", "<<#d<<" = "<<(d)<<endl
ll gcd(ll a, ll b){if(!b)return a;return gcd(b, a % b);}
ll lcm(ll a , ll b){return (a*b)/ gcd(a,b);}
/*ll modmul(ll a, ll b) {
    return ((a%mod) * (b%mod)) % mod;
}

ll modadd(ll a , ll b){
    return((a%mod)+(b%mod)+mod)%mod;
}

ll modsub(ll a , ll b){
    return((a%mod) - (b%mod) + mod)%mod;
}
*/
ll power(ll x, ll y, ll p=LLONG_MAX){ll res = 1;x = x % p;while (y > 0){if (y & 1)res = (res*x) % p;y = y>>1;x = (x*x) % p;}return res;}
double power2(double x, ll y){double res = 1;while (y > 0){if (y & 1)res =(double) (res*x);y = y>>1;x =(double)(x*x);}return res;}
ll modInverse(ll n, ll p){return power(n, p-2, p);}
ll CmP(ll n, ll r, ll p=MOD1){if (r==0)return 1;ll fac[n+1];fac[0] = 1;for (ll i=1 ; i<=n; i++)fac[i] = fac[i-1]*i%p;return (fac[n]* modInverse(fac[r], p) % p *modInverse(fac[n-r], p) % p) % p;}
typedef tree<ll, null_type, less<ll>, rb_tree_tag, tree_order_statistics_node_update> orderedset;
/*find_by_order(ll k)
{returns the iterator to the kth smallest element,start from 0,O(logn)}
order_of_key(ll k)
{returns the number of elements in the set which are strictly less than our k,O(logn)}*/
bool quasi(ll n)
{
	    ll f=0;
		while(n>0)
		{
			if(n%10 != 1 && n%10 !=0)
			{
				f=1;
				br;
			}
			n/=10;
		}
		return f!=1;
}
void ask(){}
signed main()
{
	ll t;
	t=1;
	//cin>>t;
	ll cccc=t;
	while(t--)
	{
		ll a,b,r;
		cin>>a>>b>>r;
		if(2*r>max(a,b))
		{
			co("Second");
		}
		else if(((a*b)/r*r)%3==0)
		{
			co("Second");
		}
		else
        {
            co("First");
        }

	}
	/*cout<<"Case #"<<cccc-t<<": ";*/
}

#include<iostream>
int main(){
    int a,b,r;
    std::cin>>a>>b>>r;
    std::cout<<(((a<r)+(b<r))?"Second":"First");
}