def root(P, v): if P[v] < 0: return v P[v] = root(P, P[v]) return P[v] def unite(P, v, u, A): rv = root(P, v) ru = root(P, u) if rv == ru: return False if P[rv] > P[ru]: P[rv] = ru A[ru] = f"({A[rv][:-3]}yl){A[ru]}" A[rv] = "" else: if P[rv] == P[ru]: P[rv] -= 1 P[ru] = rv A[rv] = f"({A[ru][:-3]}yl){A[rv]}" A[ru] = "" return True N = int(input()) C = [[int(c)-1 for c in input().split() if c.isdigit()] for i in range(N)] A = ["methane" for i in range(N)] P = [-1 for i in range(N)] for i in range(N): for j in C[i]: if i < j: unite(P, i, j, A) print("".join(A))