Основой любой социальной сети является отношение дружбы между двумя пользователями в том или ином смысле. В одной известной социальной сети дружба симметрична, то есть если *a* является другом *b*, то *b* также является другом *a*. 

В этой же сети есть функция, которая демонстрирует множество людей, имеющих высокую вероятность быть знакомыми для пользователя. Эта функция работает следующим образом. Зафиксируем пользователя *x*. Пусть некоторый другой человек *y*, не являющийся другом *x* на текущий момент, является другом не менее, чем для *k*% друзей *x*. Тогда он является предполагаемым другом для *x*.

У каждого человека в социальной сети есть свой уникальный идентификатор — это целое число от 1 до 10<sup class="upper-index">9</sup>. Вам дан список пар пользователей, являющихся друзьями. Определите для каждого упомянутого пользователя множество его предполагаемых друзей.
В первой строке следуют два целых числа *m* и *k* (1 ≤ *m* ≤ 100, 0 ≤ *k* ≤ 100) — количество пар друзей и необходимый процент общих друзей для того, чтобы считаться предполагаемым другом.

В последующих *m* строках записано по два числа *a*<sub class="lower-index">*i*</sub>, *b*<sub class="lower-index">*i*</sub> (1 ≤ *a*<sub class="lower-index">*i*</sub>, *b*<sub class="lower-index">*i*</sub> ≤ 10<sup class="upper-index">9</sup>, *a*<sub class="lower-index">*i*</sub> ≠ *b*<sub class="lower-index">*i*</sub>), обозначающих идентификаторы пользователей, являющихся друзьями. 

Гарантируется, что каждая пара людей фигурирует в списке не более одного раза.
m, k = map(int, input().split())

deg = [0] * 205
vals = {}
mp = {}
rev = {}
edges = []
c = 0

fr = []
for i in range(205):
    fr.append([0] * 205)

def check():
    changed = 0
    for v in range(c):
        for i in range(c):
            if (i != v and fr[i][v] == 0):
                cnt = 0
                for j in range(c):
                    if (j != v and j != i):
                        if (fr[j][v] == 1 and fr[j][i] == 1):
                            cnt += 1
                if (cnt * 100 >= k * deg[i]):
                    deg[i] += 1
                    deg[v] += 1
                    fr[i][v] = 1
                    fr[v][i] = 1
                    changed = 1
    if (changed):
        check()

for i in range(m):
    a, b = map(int, input().split())
    vals.add(a)
    vals.add(b)
    edges.append([a, b])

for x in vals:
    mp[x] = c
    rev[c] = x
    c += 1

for e in edges:
    a, b = mp[e[0]], mp[e[1]]
    if (fr[a][b] == 0):
        deg[a] += 1
        deg[b] += 1
        check()

for x in mp.keys()
    fl = []
    for i in range(c):
        if (fr[mp[x]][i] == 1):
            fl.append(rev[i])
    print(str(x) + ":", end = "")
    
    fl.sort()
    for i in range(len(fl)):
        print(" " + str(fl[i]), end = "")
    print()
    