#include <bits/stdc++.h>
using namespace std;
#define int long long
#define rep(i,n) for(int i=0;i<n;i++)
#define P pair<int,int>
int n;
vector<int>v[222222];
int dp[2][222222];
bool used[222222];
int dfs(int x){
	used[x]=true;
	int ans=0;
	for(int e:v[x]){
		if(used[e])continue;
		ans=max(ans,dfs(e));
		ans=max(ans,dp[1][x]+dp[0][e]);
		ans=max(ans,dp[0][x]+dp[1][e]);
		dp[0][x]=max(dp[0][x],dp[0][e]+1);
		dp[1][x]=max(dp[1][x],dp[1][e]+1);
	}
	return ans;
}
signed main(){
	cin>>n;
  if(n==1){
    puts("First");
    return 0;
  }
	rep(i,n-1){
		int a,b;
		cin>>a>>b;
		a--,b--;
		v[a].push_back(b);
		v[b].push_back(a);
	}
	int path=dfs(0);
	path++;
	if(path%3==1)puts("Second");
	else puts("First");
	return 0;
}
