Группировки

아직 제출이 없습니다시간 제한1초메모리 제한1024 MB

문제

За голову Джона Уика опять назначена награда, и лидеры одного очень влиятельного клана решили во что бы то ни стало ее получить. В клане есть nn оперативников, которые могут принять участие в охоте за целью. Поскольку всем известно, что Джон --- опасная цель, из множества оперативников было решено выбрать несколько групп размерами от 33 до kk включительно.

Все nn человек имеют в клане строгую иерархию в виде подвешенного дерева: самый опытный оперативник имеет номер 11, у каждого из остальных есть один непосредственный начальник p_i<ip\_i < i. У оперативников есть четкие правила, по которым они формируют группы. А именно, каждый оперативник готов быть в команде либо со своим непосредственным начальником, либо с несколькими своими непосредственными подчиненными, и больше ни с кем. Таким образом, любая команда будет состоять из какого-то оперативника с хотя бы двумя его непосредственными подчиненными.

Лидеры клана подозревают, что Джон заранее будет готов к большому количеству сценариев развития событий, поэтому им необходимо посчитать, сколько есть способов выбрать несколько непересекающихся групп оперативников, чтобы оценить, какие у них шансы.

Поскольку ответ на задачу может быть слишком большим, выведите его по модулю 109+710^9 + 7.

입력

В первой строке ввода через пробел даны два целых числа nn и kk --- количество оперативников и максимальное количество человек в группе (1n21051 \leqslant n \leqslant 2 \cdot 10^5; 3k53 \leqslant k \leqslant 5).

В следующей строке через пробел перечислены целые числа p_2p\_2, \ldots, p_np\_n --- номера непосредственных начальников оперативников со второго по nn-го (1p_i<i1 \leqslant p\_i < i).

출력

Выведите одно целое число --- количество способов разбить оперативников на группы размерами от 33 до kk указанным образом по модулю 109+710^9 + 7.