from collections import deque def main(): N = int(input()) graph = [[] for _ in range(N)] for i in range(N): C = list(input().split()) for s in C: if s != 'H': s = int(s) graph[i].append(s - 1) state = ["methyl" for _ in range(N)] seen = [False for _ in range(N)] dist = [0 for _ in range(N)] q = deque() q.append(0) seen[0] = True while q: v = q.pop() for nxt in graph[v]: if seen[nxt]: continue seen[nxt] = True dist[nxt] = dist[v] + 1 q.appendleft(nxt) ord = [i for i in range(N)] ord.sort(key=lambda x: -dist[x]) for v in ord: for nxt in graph[v]: if dist[nxt] > dist[v]: state[v] = "(" + state[nxt] + ")" + state[v] print(state[0][:-6] + "methane") return 0 main()