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.*;
import java.util.*;
public final class drazil_and_factorial
{
	static Scanner sc=new Scanner(System.in);
	static PrintWriter out=new PrintWriter(System.out);
	
	public static void main(String args[]) throws Exception
	{
		int n=sc.nextInt();
		int cnt[]=new int[10];
		char[] a=sc.next().toCharArray();
		List<Integer> list=new ArrayList<Integer>();
		for(int i=0;i<n;i++)
		{
			int elem=Integer.parseInt(a[i]+"");
			while(elem>0)
			{
				list.add(elem);
				elem--;
			}
		}
		for(int j=0;j<list.size();j++)
		{
			int val=list.get(j);
			if(val==4)
			{
				cnt[2]+=2;
			}
			else if(val==6)
			{
				cnt[2]++;
				cnt[3]++;
			}
			else if(val==8)
			{
				cnt[2]+=3;
			}
			else if(val==9)
			{
				cnt[3]+=2;
			}
			else
			{
				cnt[val]++;
			}
		}
		StringBuffer sb=new StringBuffer("");
		for(int i=9;i>=2;)
		{
			if(cnt[i]<=0)
			{
				i--;
			}
			else
			{
				sb.append(i);
				for(int j=i;j>=2;j--)
				{
					if(j==4)
					{
						cnt[2]-=2;
					}
					else if(j==6)
					{
						cnt[2]--;
						cnt[3]--;
					}
					else if(j==8)
					{
						cnt[2]-=3;
					}
					else if(j==9)
					{
						cnt[3]-=2;
					}
					else
					{
						cnt[j]--;
					}
				}
			}
		}
		out.println(sb);
		out.close();
	}
}