Drazil is playing a math game with Varda.

Let's define <image> for positive integer x as a product of factorials of its digits. For example, <image>.

First, they choose a decimal number a consisting of n digits that contains at least one digit larger than 1. This number may possibly start with leading zeroes. Then they should find maximum positive number x satisfying following two conditions:

1. x doesn't contain neither digit 0 nor digit 1.

2. <image> = <image>.

Help friends find such number.

Input

The first line contains an integer n (1 ≤ n ≤ 15) — the number of digits in a.

The second line contains n digits of a. There is at least one digit in a that is larger than 1. Number a may possibly contain leading zeroes.

Output

Output a maximum possible integer satisfying the conditions above. There should be no zeroes and ones in this number decimal representation.

Examples

Input

4
1234


Output

33222


Input

3
555


Output

555

Note

In the first case, <image>
from math import factorial
from functools import reduce


def cof(n):
    cofactors = [0 for i in range(10)]
    mult = factorial(n)
    simp = [7,5,3,2]
    for i in [x for x in simp if x <= n]:
        while mult % i == 0:
            cofactors[i] += 1
            mult /= i
    return cofactors



n = int(input())

s = input()
l = [int(c) for c in s]

#mult = reduce(lambda a,b: a * b, l)
#mult_temp = mult
cofactors = [0 for i in range(10)]

#print(mult)

simp = [7,5,3,2]
for i in l:
    c = cof(i)
    #print('c  ', c)
    for j in range(10):
        cofactors[j] += c[j]
    #print(cofactors)

#print(cofactors)

f = [[] for i in range(0,10)]
for i in range(10):
    f[i] = cof(i)

#print(f)
res = []
for i in simp:
    while cofactors[i] > 0:
        res.append(str(i))
        
        for j in range(10):
            cofactors[j] = cofactors[j] - f[i][j]
        #print(cofactors)
            
#print(cofactors)
#print(res)

#print(res)
print(''.join(res))
