编程题
### 问题描述
小然在一次探险中发现了一种神秘的符文。这种符文由 $N$ 个小写拉丁字母组成,而且 $N$ 是一个偶数。
小然发现,他可以通过以下方式调整这种符文:
- 交换符文中的第 $i$ 个字母和第 $i+2$ 个字母,对于所有满足 $1 \leq i \leq N-2$ 的 $i$。
现在,小然想知道,他是否能通过调整这种符文,使得调整后的符文变成一个回文。也就是说,无论从前往后读,还是从后往前读,这个符文都是相同的。
### 输入格式
输入的第一行包含一个整数 $T$,表示测试用例的数量。
每个测试用例包含两行。第一行包含一个整数 $N$,表示符文的长度。第二行包含一个长度为 $N$ 的字符串 $S$,表示符文。
### 输出格式
对于每个测试用例,如果小然能通过调整使得符文变成一个回文,输出 "YES",否则输出 "NO"。
### 样例输入
```text
3
6
aabbaa
4
abcd
6
zzxyyx
```
### 样例输出
```text
YES
NO
YES
```
### 说明
在第一个测试用例中,符文 "aabbaa" 已经是一个回文,所以不需要进行任何调整。
在第二个测试用例中,无论如何调整,我们都无法让符文 "abcd" 变成一个回文。
在第三个测试用例中,我们可以通过以下方式调整符文 "zzxyyx":
- 交换第 1 个字母和第 3 个字母,符文变为 "xzzyyx"。
- 交换第 2 个字母和第 4 个字母,符文变为 "xyzzyx"。
调整后的符文 "xyzzyx" 是一个回文。
### 评测数据范围
$1 \leq T \leq 1000$。
$2 \leq N \leq 10^5$,$N$ 是一个偶数。
所有测试用例中,$N$ 的总和不超过 $2 \times 10^5$。