EduBrick

F. Порядок важен

2000 мс · 256 МБ · всё или ничего

Те же монеты nn номиналов и та же сумма ss, но теперь монеты выкладывают на стол в ряд, и два способа считаются разными, если ряды различаются.

Например, для номиналов 1 и 2 сумму 3 можно набрать тремя рядами: 1+1+11{+}1{+}1, 1+21{+}2 и 2+12{+}1. В классной задаче таких способов было два.

Посчитайте количество рядов.

Формат ввода

Первая строка содержит число nn (1≤n≤1001 \le n \le 100).

Вторая строка содержит nn различных натуральных чисел, не превосходящих 10410^4, — номиналы.

Третья строка содержит натуральное число ss (1≤s≤1041 \le s \le 10^4).

Формат вывода

Одно число — количество рядов по модулю 109+710^9 + 7.

Примеры

ввод
2
1 2
3
вывод
3
ввод
3
1 2 3
10
вывод
274
Войдите, чтобы отправлять решения.