Oz is in love with number theory, so he expects you to love it too and solve his problems. The current problem which has been given by Oz to you is in the form of an array. So, he has given you N integers i.e a1,a2,..,aN to deal with. You have to find the number of divisors of the product of all these integers. 

Input :
The first line contains a single integer N. The second line contains N space seperated integers - a1,a2,..,aN.

Output :
Output a single integer — number of divisors of the product of all these integers. Since the answer can be very large, output it modulo 1000000007(10^9+7).

Constraints :
1 ≤ N ≤ 10^3.
1 ≤ ai ≤ 10^6 where i=1, 2, 3 ... N

SAMPLE INPUT
2
2 3

SAMPLE OUTPUT
4

Explanation

The product is 6 and it has 4 factors:  1, 2, 3, 6
'''
# Read input from stdin and provide input before running code

name = raw_input('What is your name?\n')
print 'Hi, %s.' % name
'''
from math import sqrt
N=int(raw_input())
ip=[int(i) for i in raw_input().strip().split()]
mdic={}
for i in ip:
	q=i
	try:
		mdic[i][0]+=1
		continue
	except:
		pass
	dic={}
	while not i%2:
		try:
			i/=2
			dic[2]+=1
		except:
			dic[2]=1
	x=3
	z=int(sqrt(i))
	if i!=1:
		while x<=z:
			if not i%x:
				break
			x+=2
		else:
			dic[i]=1
			mdic[q]=[1,dic]
			continue
			
	x=3
	while x<=i:
		while not i%x:
			try:
				i/=x
				dic[x]+=1
			except:
				dic[x]=1
		x+=2
	mdic[q]=[1,dic]
 
dic={}
for l in mdic.values():
	for k,v in l[1].items():
		try:
			dic[k]+=v*l[0]
		except:
			dic[k]=v*l[0]
t=1
for v in dic.values():
	t*=(v+1)
print(t%1000000007)