#1955. FEB

FEB

Background

有一个长度为 NN 的字符串 SS,其中的每个字符要么是 B,要么是 E

我们规定 SS 的价值等于其中包含的子串 BB 以及子串 EE 的数量之和。

例如,BBBEEE 中包含 22BB 以及 22EE,所以 BBBEEE 的价值等于 44

我们想要计算 SS 的价值,不幸的是,在我们得到 SS 之前,将其中的一些字符改为了 F

目前,我们只能看到改动后的字符串 SS,对于其中的每个 F,我们并不清楚它之前是 B 还是 E

请你计算,改动前SS 有多少种可能的价值并将所有可能价值全部输出。

Input

第一行包含一个整数 NN

第二行包含改动后的字符串 SS

Output

第一行输出一个整数 KK,表示改动前SS 的可能价值的数量。

接下来 KK 行,按照升序顺序,每行输出一个可能价值。

Samples

4
BEEF
2
1
2
9
FEBFEBFEB
2
2
3
10
BFFFFFEBFE
3
2
4
6

Limitation

1N2×1051\le N \le 2×10^5