Рассмотрим прямоугольную таблицу n на m. Занумеруем строки таблицы числами от 1 до n, а столбцы – числами от 1 до m. Таблица последовательно заполняется числами. Обозначим через a_i,j число, стоящее на пересечении i-ой строки и j-ого столбца. Первая строка таблицы заполняется заданными числами – a_1,1,a_1,2,⋯,a_1,m. Затем заполняются строки с номерами от 2 до n. Число a_i,j вычисляется как сумма всех чисел таблицы, находящихся в «треугольнике» над элементом a_i,j. Все вычисления при этом выполняются по модулю r.

Более точно, значение a_i,j вычисляется по следующей формуле:

Например, если таблица состоит из трех строк и четырех столбцов, и первая строка состоит из чисел 2,3,4,5, а r=40 то таблица выглядит следующим образом (взятие по модулю показано только там, где оно приводит к изменению числа):
| 2 | 3 | 4 | 5 |
| 5=2+3 | 9=2+3+4 | 12=3+4+5 | 9=4+5 |
| 23=2+3+4+5+9 | 0=(2+3+4+5+5+9+12)mod40=40mod40 | 4=(2+3+4+5+9+12+9)mod40=44mod40 | 33=3+4+5+12+9 |
Дана первая строка таблицы (a_1,1,a_1,2,⋯,a_1,m), требуется вычислить последнюю строку. Поскольку числа в ответе могут быть достаточно большими, посчитайте ответ по модулю r.
Первая строка входного файла содержит числа n, m и r (2≤n,m≤2000,2≤r≤109) – число строк и столбцов таблицы соответственно, а так же число, по модулю которого надо посчитать ответ. Следующая строка содержит m целых чисел – первую строку таблицы: a_1,1,a_1,2,⋯,a_1,m. Все a_1,i неотрицательны и не превосходят 109.
Выведите в первой строке выходного файла m чисел – последнюю строку таблицы: a_n,1,a_n,2,⋯,a_n,m.