AT_abc470_f [ABC470F] Googol Swaps

Description

You are given a string $ S $ of length $ N $ consisting of lowercase English letters. Find the number, modulo $ 998244353 $ , of strings that $ S $ can become after performing the following operation **exactly** $ 10^{100} $ times. - Choose an integer $ i $ between $ 1 $ and $ M $ , inclusive, and swap the $ A_i $ -th and $ B_i $ -th characters of $ S $ .

Input Format

The input is given from Standard Input in the following format: > $ N $ $ M $ $ S $ $ A_1 $ $ B_1 $ $ \vdots $ $ A_M $ $ B_M $

Output Format

Output the answer.

Explanation/Hint

### Sample Explanation 1 The following six strings are possible as the final $ S $ : - `marii` - `mirai` - `miria` - `ramii` - `rimai` - `rimia` ### Constraints - $ N $ and $ M $ are integers. - $ 2 \leq N \leq 2 \times 10^5 $ - $ 1 \leq M \leq 2 \times 10^5 $ - $ S $ is a string of length $ N $ consisting of lowercase English letters. - $ A_i $ and $ B_i $ are integers. - $ 1 \leq A_i < B_i \leq N $ - $ (A_1, B_1), \dots, (A_M, B_M) $ are pairwise distinct.