def alphabet(num):
return chr(ord('a') + num)
def longestPalindrome(s):
def expand(l, r):
while l >= 0 and r < len(s) and s[l] == s[r]:
l -= 1
r += 1
return s[l+1:r]
res = ""
for i in range(len(s)):
s1 = expand(i, i) # 奇数回文
s2 = expand(i, i + 1) # 偶数回文
for cur in (s1, s2):
if len(cur) > len(res):
res = cur
elif len(cur) == len(res) and cur < res:
res = cur
return res
def main():
import sys
n = int(sys.stdin.readline().strip())
nums = list(map(int, sys.stdin.readline().strip().split()))
s = 1 if n < 0 else 0
q = abs(n)
S = alphabet(s)
for num in nums:
d = q % num
q = q // num
S += alphabet(d) # 这里必须拼 d,不是 q
if S == S[::-1]:
print(f"{S}(palindrome)")
else:
print(longestPalindrome(S))
if __name__ == "__main__":
main()