Qoy təbii ədəd olsun və S = \{ 1, 2, 3, \ldots, N \} çoxluğunu təşkil etsin. f : S \to S funksiyası gözəl adlanır, əgər elə bir bijektiv g : S \to S funksiyası varsa ki, çoxluğundakı istənilən üçün g(g(g(\ldots g(x) \ldots ))) = f(x) bərabərliyi təmin olunur, burada dəqiq dəfə tətbiq edilir.
Gözəl funksiyaların sayını tapmaq lazımdır. Cavab çox böyük ola biləcəyi üçün onu modulu ilə çıxış etmək tələb olunur.
Giriş faylının yeganə sətirində təbii ədədlər və (N \leq 2000, d \leq 10^{18}) verilir.
Çıxış faylına verilmiş və üçün gözəl funksiyaların sayını modulu ilə çıxarın.
Nümunə 1