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>
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;

/**
 * Drazil играет в математическую игру с Varda.

 Определим  для целого числа x как произведение факториалов его цифр. Например, .

 Сперва выбирается число a, состоящее из n цифр и содержащее не менее одной цифры, превосходящей 1. Это число может начинаться с ведущего нуля. Цель игры — найти наибольшее возможное целое число x, удовлетворяющее следующим двум условиям:

 1. x не содержит ни цифру 0, ни цифру 1.

 2. F(x) = F(a).

 Помогите друзьям найти такое число.

 Входные данные
 В первой строке записано целое число n (1 ≤ n ≤ 15) — количество цифр в числе a.

 Во второй строке записано n цифр числа a. В числе a есть не менее одной цифры, превышающей 1. Число a может содержать ведущие нули.

 Выходные данные
 Выведите наибольшее возможное целое число, удовлетворяющее условиям, данным выше. В десятичной записи этого числа не должно быть нулей и единиц.
 */


public class P515C {
    public static void main(String args[]) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        int b = Integer.parseInt(br.readLine());

        if (b < 1 || b > 15){
            System.out.println();
        }
        else {
            int[] list = new int[15];//Список цифр числа
            ArrayList<Integer> big = new ArrayList<Integer>();

            for (int i = 0; i < b; i++) { //Мне лень лезть в интернет и смотреть, как сделать это не по-индусски
                list[i] = br.read();
                switch (list[i]) {
                    case 49:
                        list[i] = 1;
                        break;
                    case 50:
                        list[i] = 2;
                        break;
                    case 51:
                        list[i] = 3;
                        break;
                    case 52:
                        list[i] = 4;
                        break;
                    case 53:
                        list[i] = 5;
                        break;
                    case 54:
                        list[i] = 6;
                        break;
                    case 55:
                        list[i] = 7;
                        break;
                    case 56:
                        list[i] = 8;
                        break;
                    case 57:
                        list[i] = 9;
                        break;
                    case 48:
                        list[i] = 0;
                        break;
                    default:
                        break;
                }
            }

            int max = 0;

            for (int i = 0; i < b; i++) { //находит количество нечетных цифр
                if (list[i] % 2 == 1 && list[i] != 9) {
                    max++;
                }
            }

            int j;

            if (max == b) {
                for (j = 0; j < b; j++) { //если все число состоит из нечетных цифр (всех, кроме 9!!!) то только так его можно и записать (только расположить его цифры в правильном порядке, поо убыванию)
                    for (int i = 0; i < b; i++) {
                        if (list[i] < list[j]) {
                            int f = list[i];
                            list[i] = list[j];
                            list[j] = f;
                        }
                    }
                }
            }

            for (int i = 0; i < b; i++) {
                switch (list[i]) {
                    case 0:
                        break;
                    case 1:
                        break;
                    case 2:
                        big.add(2);
                        break;
                    case 3:
                        big.add(3);
                        break;
                    case 4:
                        big.add(3);
                        big.add(2);
                        big.add(2);
                        break;
                    case 5:
                        big.add(5);
                        break;
                    case 6:
                        big.add(5);
                        big.add(3);
                        break;
                    case 7:
                        big.add(7);
                        break;
                    case 8:
                        big.add(7);
                        big.add(2);
                        big.add(2);
                        big.add(2);
                        break;
                    case 9:
                        big.add(7);
                        big.add(3);
                        big.add(3);
                        big.add(2);
                        break;
                    default:
                        break;
                }
            }

            int[] bigAr = new int[big.size()];
            for (int i = 0; i < bigAr.length; i++)
                bigAr[i] = big.get(i);

            for (j = 0; j < bigAr.length; j++) {
                for (int i = 0; i < bigAr.length; i++) {
                    if (bigAr[i] < bigAr[j]) {
                        int f = bigAr[i];
                        bigAr[i] = bigAr[j];
                        bigAr[j] = f;
                    }
                }
            }


            for (int i = 0; i < bigAr.length; i++)
                System.out.print(bigAr[i]);

        }


    }
}
