AT_wtf22_day1_c Shrink the Tree

Description

[problemUrl]: https://atcoder.jp/contests/wtf22-day1-open/tasks/wtf22_day1_c $ 1 $ から $ N $ までの番号のついた $ N $ 頂点からなる木 $ T $ が与えられます. $ i $ 番目の辺は頂点 $ A_i $ と $ B_i $ を結んでいます. あなたは以下の操作を好きな回数 ($ 0 $ 回でもよい) 行うことができます. - $ T $ の $ 2 $ つの葉 $ u,v $ であって,その距離が奇数であるものを選ぶ. そして,$ u,v $ を(それらに接続する辺とともに) $ T $ から削除する. ここで,ある頂点が葉であるとは,操作を行おうとする時点でその次数がちょうど $ 1 $ であることを意味します. また,$ 2 $ つの頂点の距離とは,その頂点間を結ぶパスに含まれる辺の個数です. 操作後の $ T $ に含まれる頂点集合としてありうるものが何通りあるかを $ 998244353 $ で割ったあまりを求めてください.

Input Format

入力は以下の形式で標準入力から与えられる. > $ N $ $ A_1 $ $ B_1 $ $ A_2 $ $ B_2 $ $ \vdots $ $ A_{N-1} $ $ B_{N-1} $

Output Format

答えを出力せよ.

Explanation/Hint

### 制約 - $ 2\ \leq\ N\ \leq\ 150 $ - $ 1\ \leq\ A_i,B_i\ \leq\ N $ - 入力で与えられるグラフは木である. - 入力される値はすべて整数. ### Sample Explanation 1 $ 1 $ 度も操作を行わないことで,頂点集合 $ \{1,2,3,4\} $ を得ることができます. $ T $ の葉 $ 1,4 $ を消すことで,頂点集合 $ \{2,3\} $ を得ることができます. ここから更に葉 $ 2,3 $ を消すことで,頂点集合 $ \{\} $ を得ることができます.