+ محدودیت زمان: ۱ ثانیه
+ محدودیت حافظه: ۲۵۶ مگابایت
+ آزمون عملی سوم فاینال سی و سومین دوره المپیاد کامپیوتر ایران
----------
**امتیاز** یک دنباله برابر تعداد جفت خانههای مجاوری است که مجموع آنها برابر $k$ میشود. به عنوان مثال اگر $k=3$ باشد، امتیاز دنباله $⟨1,2,3,0,2⟩$ برابر $2$ است.
به شما عدد صحیح نامنفی $k$ و یک دنباله $n$ تایی از اعداد داده میشود. شما باید تعداد جایگشتهای از این دنباله که امتیازشان برابر $i$ میشود را به ازای هر $i$ از $0$ تا $n - 1$ بدست آورید. چون اعداد جواب ممکن است بزرگ شود کافی است که باقیمانده تقسیم هر عدد را بر $998244353$ چاپ کنید.
توجه کنید که اعداد مساوی قابل تمایز هستند.
# ورودی
در خط اول ورودی، دو عدد صحیح $n$ و $k$ به ترتیب می آیند.
$$1 \leq n \leq 5000, \quad 0 \leq k \leq 10^9$$
در خط دوم ورودی، $n$ عدد صحیح می آیند که نشان دهنده دنباله ورودی است (اعداد دنباله نامنفی و کمتر از $10^9$ هستند).
# خروجی
در تنها خط خروجی $n$ عدد چاپ کنید که به ترتیب برابر با تعداد جایگشتهای دنباله با امتیاز $0, 1, \cdots , n - 1$ باقیمانده بر $998244353$ است.
# زیرمسئلهها
| زیرمسئله | نمره | محدودیت |
|:-----:|:-------:|:----------------------------:|
| ۱ | ۴ | $n \leq 10$ |
| ۳ | ۱۲ | تعداد اعداد متمایز حداکثر دو است. |
| ۴ | ۱۷ | تعداد اعداد متمایز حداکثر سه است. |
| ۵ | ۲۳ | $n \leq 500$ |
| ۶ | ۴۴ | بدون محدودیت اضافی |
# مثالها
## ورودی نمونه ۱
```
5 3
1 2 1 2 1
```
## خروجی نمونه ۱
```
0 24 36 48 12
```