ל־Yuki יש רב־קבוצה $S=\{s_1,\ldots,s_n\}$ בגודל $n$ ומספר שלם $k$.
Yuki מגדיר המרה באופן הבא:
- בוחרים תת־קבוצה $S'$ של $S$ (כאשר $S'$ יכולה להיות ריקה), מסירים את $S'$ מ־$S$ ומוסיפים את ה־$\operatorname{mex}^{*}$ של $S'$ ל־$S$.
כעת Yuki רוצה לבצע כמה המרות כך ש־$S$ תהפוך ל־$\{k\}$. עליכם לעזור ל־Yuki למצוא את מספר ההמרות המינימלי הדרוש כדי ש־$S$ תהיה שווה ל־$\{k\}$. מכיוון שהתשובה עשויה להיות גדולה מאוד, עליכם להדפיס רק את התשובה מודולו $998244353$.
ניתן להוכיח שתמיד קיים לפחות רצף פעולות אחד שיכול להפוך את $S$ ל־$\{k\}$.
$*$: ה־mex של רב־קבוצה הוא המספר השלם האי־שלילי הקטן ביותר שאינו מופיע בה. למשל, $\operatorname{mex}\{0,1,2\}=3$, $\operatorname{mex}\{1,0,3,1\}=2$ ו־$\operatorname{mex}\varnothing=0$.
קלט
בעיה זו מכילה כמה מקרי בדיקה.
השורה הראשונה מכילה מספר שלם חיובי $t$ ($1 \le t \le 10^5$), המייצג את מספר מקרי הבדיקה.
לכל מקרה בדיקה:
- השורה הראשונה מכילה שני מספרים שלמים $n,k$ ($1 \le n \le 5 \cdot 10^5$, $0 \le k \le 10^9$).
- השורה השנייה מכילה $n$ מספרים שלמים $s_1,\ldots,s_n$ ($0 \le s_i \le 10^9$).
מובטח שסכום ערכי $n$ בכל מקרי הבדיקה אינו עולה על $5 \cdot 10^5$.
פלט
לכל מקרה בדיקה, הדפיסו שורה אחת המכילה מספר שלם המייצג את מספר ההמרות המינימלי הדרוש כדי ש־$S$ תהיה שווה ל־$\{k\}$, מודולו $998244353$.
דוגמאות
קלט 1
6 1 2 1 1 4 4 3 3 0 2 2 4 2 1 0 3 2 4 3 2 1 0 2 3 52 20 2 6
פלט 1
2 0 3 2 1 262875292
הערה
למקרה הבדיקה הראשון:
- Yuki יכול לבחור $S'=\varnothing$ בהמרה הראשונה, וכך לקבל $S=\{0,1\}$, ואז לבחור $S'=\{0,1\}$ בהמרה השנייה, וכך לקבל $S=\{2\}$.
- ניתן להוכיח שלא קיים רצף פעולות עם פחות המרות, ולכן התשובה היא $2$.
למקרה הבדיקה השני:
- Yuki אינו צריך לבצע המרות כדי לקבל $S=\{4\}$, ולכן התשובה היא $0$.
למקרה הבדיקה השלישי:
- Yuki יכול לבחור $S'=\varnothing$ בהמרה הראשונה, וכך לקבל $S=\{0,0,2,2\}$, לבחור $S'=\{0,2\}$ בהמרה השנייה, וכך לקבל $S=\{0,1,2\}$, ואז לבחור $S'=\{0,1,2\}$ בהמרה השלישית, וכך לקבל $S=\{3\}$.
- ניתן להוכיח שלא קיים רצף פעולות עם פחות המרות, ולכן התשובה היא $3$.
למקרה הבדיקה הרביעי:
- Yuki יכול לבחור $S'=\{2,3\}$ בהמרה הראשונה, וכך לקבל $S=\{0,0,1\}$, ואז לבחור $S'=\{0,0,1\}$ בהמרה השנייה, וכך לקבל $S=\{2\}$.
- ניתן להוכיח שלא קיים רצף פעולות עם פחות המרות, ולכן התשובה היא $2$.
למקרה הבדיקה החמישי:
- Yuki יכול לבחור ישירות $S'=\{0,1,2,2\}$ בהמרה הראשונה, וכך לקבל $S=\{3\}$.
- ניתן להוכיח שלא קיים רצף פעולות עם פחות המרות, ולכן התשובה היא $1$.