Trạng thái

Cho hai số nguyên dương \(n\)\(m\). Đếm số cách chọn dãy số nguyên dương \(a\) độ dài \(n\) sao cho \(a_1 \times a_2 \times \cdots \times a_n = m\).

Hai dãy \(a'\)\(a''\) được coi là khác nhau nếu như tồn tại chỉ số \(i\) sao cho \(a'_i \neq a''_i\).

Dữ liệu vào

  • Một dòng duy nhất chứa hai số nguyên dương \(n\)\(m\).

Dữ liệu ra

  • In ra số cách chọn thỏa mãn, vì số cách chọn có thể rất lớn nên in ra kết quả sau khi chia lấy dư với \(10^9 + 7\).

Ràng buộc

  • \(1 \leq n \leq 10^5\).
  • \(1 \leq m \leq 10^{12}\).

Sample Input

2 6

Sample Output

4

Sample Input

3 12

Sample Output

18

Sample Input

100000 1000000000

Sample Output

957870001
Thông tin
Thông tin bài tập
Gửi bài giải
Điểm
100
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
250 M
I/O
stdin -> stdout
Loại đề bài
Số học: Tổ hợp
Ngôn ngữ cho phép
C, C#, C++, Java, Pascal, Python, Text