AT_abc413_b [ABC413B] cat 2

Description

$ N $ 種類の文字列 $ S _ 1,S _ 2,\ldots,S _ N $ が与えられます。 あなたは、次の操作を $ 1 $ 度だけ行います。 - **相異なる**整数 $ i,j\ (1\le i\le N,1\le j\le N) $ を選び、 $ S _ i $ と $ S _ j $ をこの順で連結する。 この操作で連結した結果の文字列としてありえるものは何通りあるか求めてください。 選んだ $ (i,j) $ が異なっても、連結した文字列が同じ場合は $ 1 $ 通りと数えることに注意してください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ S _ 1 $ $ S _ 2 $ $ \vdots $ $ S _ N $

Output Format

操作の結果できる文字列が何通りあるかを出力せよ。

Explanation/Hint

### Sample Explanation 1 できる文字列は、`atatco`, `atcoat`, `atcoder`, `atcocoder`, `atder`, `coderat`, `coderatco`, `coderder`, `derat`, `deratco`, `dercoder` の $ 11 $ 通りです。 よって、`11` を出力してください。 ### Sample Explanation 2 できる文字列は、`aaa`, `aaaa`, `aaaaa`, `aaaaaa`, `aaaaaaa`, `aaaaaaaa`, `aaaaaaaaa` の $ 7 $ 通りです。 よって、`7` を出力してください。 ### Constraints - $ 2\le N\le100 $ - $ N $ は整数 - $ S _ i $ は英小文字からなる長さ $ 1 $ 以上 $ 10 $ 以下の文字列 - $ S _ i\ne S _ j\ (1\le i\lt j\le N) $