Mike is growing tired of searching for strings, and has instead become interested in breaking them apart! Given a string , he wants to break it into any number of subsequences. Each character in should belong to exactly one subsequence.

The -th letter in the English alphabet is assigned the value (e.g. `A`

, `B`

, ..., `Z`

).

For each subsequence, let and be the value of the first and last characters. Then, the score of the subsequence is equal to . Note that scores can be negative. For example, the sequence `HELLO`

will have a score of .

The total score of a string is equal to the sum of all the scores of its subsequences. To satisfy Mike's curiosity, you want to determine all the possible total scores for a given string.

#### Constraints

only consists of uppercase letters `A`

...`Z`

.

##### Subtask 1 [10%]

##### Subtask 2 [10%]

only consists of uppercase letters `A`

and `B`

.

##### Subtask 3 [30%]

##### Subtask 4 [50%]

No additional constraints.

#### Input Specification

The first line contains one integer , the length of the string.

The second line contains the string .

#### Output Specification

On the first line, output a single integer , the total number of possible scores.

On the next lines, output the possible scores sorted in ascending order.

#### Sample Input 1

```
3
ADB
```

#### Sample Output 1

```
4
-15
-3
0
12
```

#### Explanation for Sample Output 1

There are five possible ways to break up the string into subsequences:

`AD`

`B`

The total score for the first arrangement is .

`AB`

`D`

The total score for the second arrangement is .

`A`

`D`

`B`

The total score for the third arrangement is .

`A`

`DB`

The total score for the fourth arrangement is .

`ADB`

The total score for the fifth arrangement is , which results in the same total score as the second arrangement.

#### Sample Input 2

```
3
AAC
```

#### Sample Output 2

```
2
-8
0
```

#### Explanation for Sample Output 2

One way to achieve a total score of is by breaking the string into the following subsequences:

`A`

`AC`

One way to achieve a total score of is by breaking the string into the following subsequences:

`AA`

`C`

#### Sample Input 3

```
4
ABAB
```

#### Sample Output 3

```
4
-6
-3
0
3
```

#### Sample Input 4

```
4
JHVM
```

#### Sample Output 4

```
9
-489
-420
-384
-105
-69
0
36
315
351
```

## Comments