AT_utpc2020_b JANKEN Machine

Description

[problemUrl]: https://atcoder.jp/contests/utpc2020/tasks/utpc2020_b 「ジャンケン文字列」とは、`R` , `S` , `P` の $ 3 $ 種類の文字のみからなる文字列のことです。 「ジャンケンマシーン」とは、ジャンケン文字列を入力として受け取って、長さの $ 1 $ 小さい別のジャンケン文字列を出力する装置です。装置の挙動は以下のように定義されます。 - 入力文字列を $ S $ 、出力文字列を $ T $ とする。$ S $ の $ i $ 文字目を $ S_i $、$ T $ の $ i $ 文字目を $ T_i $ と表すことにすると、$ T_i\ =\ f(S_i,\ S_{i+1}) $ $ (1\ \le\ i\ \le\ |S|-1) $となる文字列 $ T $ が出力される。ここで関数 $ f $ の出力は以下の表に対応する。(直感的には、$ 2 $ 人でジャンケンをした際に、負けない方の手。) $ f(x,\ y) $ $ y=\mathrm{R} $ $ y=\mathrm{S} $ $ y=\mathrm{P} $ $ x=\mathrm{R} $ $ \mathrm{R} $ $ \mathrm{R} $ $ \mathrm{P} $ $ x=\mathrm{S} $ $ \mathrm{R} $ $ \mathrm{S} $ $ \mathrm{S} $ $ x=\mathrm{P} $ $ \mathrm{P} $ $ \mathrm{S} $ $ \mathrm{P} $整数 $ k $ と、ジャンケン文字列 $ S $ が与えられます。長さ $ k\ +\ |S| $ のジャンケン文字列は $ 3^{k+|S|} $ 個存在しますが、これらのうち、ジャンケンマシーンへの入力を $ k $ 回繰り返すことで $ S $ を得ることができるようなものの個数を $ 998244353 $ で割った余りを求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ S $ $ k $

Output Format

答えを $ 1 $ 行に出力せよ。

Explanation/Hint

### 制約 - $ 1\ \leq\ |S|\ \leq\ 3000 $ - $ 1\ \leq\ k\ \leq\ 3000 $ - $ S $ は `R`, `S`, `P` からなる ### Sample Explanation 1 `SSSRP` , `SPSRP` , `PSSRP` の $ 3 $ 通りです。 ### Sample Explanation 3 $ 998244353 $ で割った余りを出力してください。