#include<bits/stdc++.h>
using namespace std;
const int N=2e5+1;
int n,m,x,y,d[N],I,M;
vector<int>a[N];
void D(int k,int f)
{
	for(int i=0;i<a[k].size();i++)
		if(a[k][i]!=f)
			d[a[k][i]]=d[k]+1,D(a[k][i],k);
}
int main()
{
	cin>>n;
	m=n-1;
	while(m--&&cin>>x>>y)
		a[x].push_back(y),a[y].push_back(x);
	D(1,0);
	for(int i=1;i<=n;i++)
		if(d[i]>d[I])
			I=i;
	d[I]=0,D(I,0);
	for(int i=1;i<=n;i++)
		M=max(M,d[i]);
	if(M%3!=1)
		cout<<"First";
	else
		cout<<"Second";
	return 0;
}