AT_jsc2022_final_f Share the Recipe

Description

$ 1 $ から $ N $ までの番号のついた $ N $ 台のサーバーがあります. すぬけくんは,秘伝のレシピをサーバー $ 1 $ に保存しました. 他のサーバーにはレシピは保存されていません. これから $ N(N-1)/2 $ 回,すぬけくんは以下の操作を行います. - 相異なる $ 2 $ つのサーバーを選ぶ. ただし,選ぶサーバーの組は,今まで選んだことのない組でなければならない. なお,組 $ (x,y) $ は組 $ (y,x) $ と同一とみなす. 操作前の段階で少なくとも一方のサーバーがレシピを保存している場合,操作後には両方のサーバーにレシピが保存される. 操作を行う方法は, $ (N(N-1)/2)! $ 通りあります. このうち,以下の条件を満たす方法が何通りあるかを $ 998244353 $ で割った余りを求めてください. - 各 $ i=2,3,\cdots,N $ について, $ A_i $ 回目の操作が終わった段階で,サーバー $ i $ にレシピが保存されている.

Input Format

入力は以下の形式で標準入力から与えられる. > $ N $ $ A_2 $ $ A_3 $ $ \cdots $ $ A_N $

Output Format

答えを出力せよ.

Explanation/Hint

### Sample Explanation 1 例えば,以下のような操作は条件を満たします. - $ 1 $ 回目の操作: サーバー $ 1 $ と $ 2 $ を選ぶ.新たにサーバー $ 2 $ にレシピが保存される. - $ 2 $ 回目の操作: サーバー $ 2 $ と $ 3 $ を選ぶ.新たにサーバー $ 3 $ にレシピが保存される. - $ 3 $ 回目の操作: サーバー $ 1 $ と $ 3 $ を選ぶ. ### Constraints - $ 2 \leq N \leq 13 $ - $ 1 \leq A_i \leq N(N-1)/2 $ - 入力される値はすべて整数である