#include<bits/stdc++.h>

using namespace std;
const int maxn = 2e5+5;
vector<int>ve[maxn];
int n;
void adg(int x,int y) {
	ve[x].push_back(y);
}
int f[maxn],ans;
void dfs(int x,int ba) {
	f[x] = 1;
	for(auto y:ve[x]) {
		if(y==ba) continue;
		dfs(y,x);
		ans = max(ans,f[x]+f[y]);
		f[x] = max(f[x],f[y]+1);
	}
}
int main() {
	scanf("%d",&n);
	for(int i=1;i<n;i++) {
		int x,y; scanf("%d%d",&x,&y);
		adg(x,y); adg(y,x);
	}
	dfs(1,0);
	if(ans%3==2) printf("Second");
	else puts("First"); 
}
