import java.util.Scanner;
/**
* P3884二叉树问题
*/
public class P3884 {
static int dx=0;
static int dy=0;
static Scanner in = new Scanner(System.in);
static int n = in.nextInt();
static int deep[] = new int[n + 1]; //每个节点的深度 ,下标从1开始
static int wide[] = new int[n + 1]; //每一层的宽度
static int fat[] = new int[n + 1]; //保存当前节点的父节点
static int result=0;
public static void main(String[] args) {
int depth = 0; //最深深度
int length = 0; //最大宽度
deep[1] = 1; //第一个节点的深度为1;
wide[1] = 1; //第一层宽度为1;
length = wide[1];
for (int i = 1; i < n; i++) {
int u = in.nextInt();
int v = in.nextInt();
deep[v] = deep[u] + 1;
fat[v] = u;
depth = Math.max(depth, deep[v]);
wide[deep[v]]++;
length = Math.max(length, wide[deep[v]]);
}
int x = in.nextInt();
int y = in.nextInt();
result = dfs(x, y);
System.out.println(depth);
System.out.println(length);
System.out.println(result);
}
private static int dfs(int x, int y) {
if (x == y) {
result=dx*2+dy;
return result;
}
if (deep[x] == deep[y]) {
x = fat[x];
y = fat[y];
dx++;
dy++;
}
if (deep[x] > deep[y]) {
dx++;
x = fat[x];
}
if (deep[x] < deep[y]) {
y = fat[y];
dy++;
}
dfs(x, y);
return result;
}
}