#include <bits/stdc++.h>
using namespace std;

vector<int> g[1001];
string str[1001];

int n;

void print(int v, int depth)
{
	if (~depth){
		for (int i = 0; i < depth; i++){
			printf(".");
		}
		cout << str[v] << endl;
	}
	for (int i = 0; i < g[v].size(); i++){
		int to = g[v][i];
		print(to, depth + 1);
	}
}

int main()
{
	scanf("%d", &n);
	for (int i = 1; i <= n; i++){
		int k;
		cin >> k >> str[i];
		g[k].push_back(i);
	}
	
	print(0, -1);
}