+ محدودیت زمان: ۱ ثانیه
+ محدودیت حافظه: ۲۵۶ مگابایت
---------
مسابقات گرند پردیس فرمول یک برگزار شده است. در این مسابقه
$n\ $
نفر شرکت کردهاند که هر کدام متعلق به یک تیمی هستند. رتبه بندی نهایی بازیکنان مشخص شده است. آشمز نمیداند در این لیست رتبهبندی هر بازیکن در کدام تیم است اما به ازای هر بازیکن با رتبه
$1 \le i \le n\ $
میداند تعداد بازیکنهایی که تیمشان با این بازیکن یکسان است و رتبه کمتری دارند
$a_i\ $
تاست و تعداد بازیکنهایی که تیمشان با این بازیکن یکسان است و رتبه بالاتری دارند
$b_i\ $
تاست. آشمز میخواهد بداند با توجه به اعداد گفته شده تیمبندی بازیکن ها چند حالت دارد. اما او که از شمردن خسته شده است، از شما میخواهد برنامهای بنویسید تا این مقدار را محاسبه کند.
شما باید تعداد دنبالههای
$c_1, c_2, \ldots, c_n\ $
را بشمارید که به ازای هر
$1 \le i \le n\ $
داشته باشیم
$1 \le c_i \le n\ $
و تعداد
$j\ $
هایی که
$1 \le j < i\ $
و
$c_i = c_j\ $
برقرار باشند،
$a_i\ $
تا باشد، و تعداد
$j\ $
هایی که
$i < j \le n\ $
و
$c_i = c_j\ $
برقرار باشند،
$b_i\ $
تا باشد. باقی ماندهی جواب را به پیمانهی
$998244353\ $
محاسبه کنید.

# ورودی
در خط اول ورودی عدد $T$ تعداد سناریو ها میآید.
در خط اول هر سناریو عدد
$n_i$
که نشاندهندهی تعداد بازیکنها در سناریو $i$ام است میآید.
در خط دوم هر سناریو دنبالهی
$a_1, a_2, \ldots, a_n\ $
و در خط سوم هر سناریو دنبالهی
$b_1, b_2, \ldots, b_n\ $
میآید.
تضمین میشود به ازای سناریو حداقل یک دنبالهی معتبر وجود دارد ( جواب 0 نمیشود )
$$1 \le T \le 10^4$$
$$1 \le n_i \le 2 \cdot 10^5$$
$$0 \le a_i, b_i < n$$
$$1 \leq \sum n_i \leq 2 \cdot 10^5$$
# خروجی
برای هر سناریو در یک خط تعداد حالات دنبالهی
$c_1, c_2, \ldots, c_n\ $
را به پیمانهی
$998244353\ $
خروجی دهید.
# مثال
## ورودی نمونه ۱
```
5
1
0
0
3
0 1 2
2 1 0
5
0 1 0 1 2
1 0 2 1 0
5
0 0 0 1 1
0 1 1 0 0
10
0 0 1 2 0 1 1 0 2 3
3 2 2 1 1 1 0 0 0 0
```
## خروجی نمونه ۱
```
1
3
20
120
5040
```
در سناریوی اول تنها دنبالهی معتبر
$[1]$
میباشد.
در سناریوی دوم تمام اعضای دنباله باید برابر یکی از اعداد 1 یا 2 یا 3 باشند که 3 حالت دارد.
در سناریوی سوم یکی در دنبالههای معتبر
$[1, 1, 2, 2, 2]$
میباشد.