#include <bits/stdc++.h>
using namespace std;
void DFS(int source, vector<int> adjList[], vector<int> &parent, vector<int> &visited, vector<int> &heights){
visited[source]=1;
for(auto it : adjList[source]){
if(!visited[it]){
parent[it]=source;
DFS(it, adjList, parent, visited, heights);
}
}
int h=0;
for(auto child : adjList[source]){
//this means that child node is actually the parent
if(child==parent[source]){
//no op
}
else{
h=max(h, heights[child]);
}
}
heights[source]=1+h;
}
int main() {
int n;
cin>>n;
vector<int> adjList[n+1];
vector<int> parent(n+1);
vector<int> visited(n+1);
vector<int> heights(n+1);
for(int i=1;i<=n-1;i++){
int x,y;
cin>>x>>y;
adjList[x].push_back(y);
adjList[y].push_back(x);
}
DFS(1, adjList, parent, visited, heights);
for(int i=1; i<=n; i++){
cout<<"height of node "<<i<<" : "<<heights[i]<<"\n";
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2b2lkIERGUyhpbnQgc291cmNlLCB2ZWN0b3I8aW50PiBhZGpMaXN0W10sIHZlY3RvcjxpbnQ+ICZwYXJlbnQsIHZlY3RvcjxpbnQ+ICZ2aXNpdGVkLCB2ZWN0b3I8aW50PiAmaGVpZ2h0cyl7Cgl2aXNpdGVkW3NvdXJjZV09MTsKCWZvcihhdXRvIGl0IDogYWRqTGlzdFtzb3VyY2VdKXsKCQlpZighdmlzaXRlZFtpdF0pewoJCQlwYXJlbnRbaXRdPXNvdXJjZTsKCQkJREZTKGl0LCBhZGpMaXN0LCBwYXJlbnQsIHZpc2l0ZWQsIGhlaWdodHMpOwoJCX0KCX0KCWludCBoPTA7Cglmb3IoYXV0byBjaGlsZCA6IGFkakxpc3Rbc291cmNlXSl7CgkJLy90aGlzIG1lYW5zIHRoYXQgY2hpbGQgbm9kZSBpcyBhY3R1YWxseSB0aGUgcGFyZW50CgkJaWYoY2hpbGQ9PXBhcmVudFtzb3VyY2VdKXsKCQkJLy9ubyBvcAoJCX0KCQllbHNlewoJCQloPW1heChoLCBoZWlnaHRzW2NoaWxkXSk7CgkJfQoJfQoJaGVpZ2h0c1tzb3VyY2VdPTEraDsKfQoKaW50IG1haW4oKSB7CglpbnQgbjsKCWNpbj4+bjsKCXZlY3RvcjxpbnQ+IGFkakxpc3RbbisxXTsKCXZlY3RvcjxpbnQ+IHBhcmVudChuKzEpOwoJdmVjdG9yPGludD4gdmlzaXRlZChuKzEpOwoJdmVjdG9yPGludD4gaGVpZ2h0cyhuKzEpOwoJZm9yKGludCBpPTE7aTw9bi0xO2krKyl7CgkJaW50IHgseTsKCQljaW4+Png+Pnk7CgkJYWRqTGlzdFt4XS5wdXNoX2JhY2soeSk7CgkJYWRqTGlzdFt5XS5wdXNoX2JhY2soeCk7Cgl9CglERlMoMSwgYWRqTGlzdCwgcGFyZW50LCB2aXNpdGVkLCBoZWlnaHRzKTsKCWZvcihpbnQgaT0xOyBpPD1uOyBpKyspewoJCWNvdXQ8PCJoZWlnaHQgb2Ygbm9kZSAiPDxpPDwiIDogIjw8aGVpZ2h0c1tpXTw8IlxuIjsKCX0KCXJldHVybiAwOwp9