곱으로 분해하기

n개의 자연수 곱으로 주어진 m(각 수는 1e9 이하)을 n개의 자연수 순서쌍으로 분해하는 경우의 수를 1e9+9로 나눈 나머지를 구한다.

보통7정수론조합론수학누적 합아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

자연수 nn개의 곱으로 표현된 자연수 mm이 주어진다. mm을 자연수 nn개의 곱으로 분해하는 경우의 수를 구하라. 분해한 nn개의 수를 모두 곱하면 mm이 되어야 하고, 원소 구성이 같아도 순서가 다르면 서로 다른 경우로 센다.

예를 들어 m=15m = 15이고 n=2n = 2이면 (1,15)(1, 15), (3,5)(3, 5), (5,3)(5, 3), (15,1)(15, 1)의 네 가지로 분해할 수 있다.

입력으로 주어진 nn개의 수 자체도 하나의 분해로 센다. 경우의 수가 매우 크므로 답을 10000000091000000009로 나눈 나머지를 출력한다.

입력

첫째 줄에 자연수 nn이 주어진다. (1n5001 \le n \le 500)

둘째 줄에 자연수 nn개가 공백을 사이에 두고 주어진다. 각 수는 10910^9 이하이다.

출력

첫째 줄에 mm을 분해하는 경우의 수를 10000000091000000009로 나눈 나머지를 출력한다.