def to_number(n, d):
res = 0
for i in n:
res = res * d + i
return res
a = input()
a = a.split()
num = []
max_n = 0
for i in a:
if '_p' in i:
n = [int(char, 36) for char in i[:-2]]
num += [n]
for i in num:
for j in i:
if j > max_n:
max_n = j
k = 0
res = []
for i in range(max_n, 37):
b = int(a[0]) * to_number(num[0], i) + int(a[4]) * to_number(num[1], i)
c = int(a[8]) * to_number(num[2], i) + to_number(num[3], i)
if b == c:
res += [i]
k += 1
if k == 0:
print('Тип: решений нет')
elif k == 1:
print('Тип: единственное решение')
print('Найденные основания:', res[0])
else:
print('Тип: несколько решений:')
print("Найденные основания:", ', '.join(map(str, res)))