#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <string>
#include <map>
#include <algorithm>
using namespace std;
int main() {
map<string, int>m;
int *k;
string s, temp;
int t, n,sum;
cin >>t;
while (t--) {
cin >> s;
n = s.size();
k = new int[n + 1]; k[0] = 0;
for (int i = 1; i < n + 1; i++)k[i] = k[i - 1] + i - 1;
m.clear();
for (int i = 1; i < n; i++) {
for (int j = 0; j < n - i + 1; j++) {
temp = s.substr(j,i);
sort(temp.begin(), temp.end());
m[temp]++;
}
}
sum = 0;
std::map<string, int>::iterator i = m.begin();
while (i != m.end()) {
sum += k[i->second];
i++;
}
cout << sum << endl;
}
return 0;
}
I2luY2x1ZGUgPGNtYXRoPgojaW5jbHVkZSA8Y3N0ZGlvPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDxzdHJpbmc+CiNpbmNsdWRlIDxtYXA+CiNpbmNsdWRlIDxhbGdvcml0aG0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCW1hcDxzdHJpbmcsIGludD5tOwoJaW50ICprOwoJc3RyaW5nIHMsIHRlbXA7CglpbnQgdCwgbixzdW07CgljaW4gPj50OwoJd2hpbGUgKHQtLSkgewoJCWNpbiA+PiBzOwoJCW4gPSBzLnNpemUoKTsKCQlrID0gbmV3IGludFtuICsgMV07IGtbMF0gPSAwOwoJCWZvciAoaW50IGkgPSAxOyBpIDwgbiArIDE7IGkrKylrW2ldID0ga1tpIC0gMV0gKyBpIC0gMTsKCQltLmNsZWFyKCk7CgkJZm9yIChpbnQgaSA9IDE7IGkgPCBuOyBpKyspIHsKCQkJZm9yIChpbnQgaiA9IDA7IGogPCBuIC0gaSArIDE7IGorKykgewoJCQkJdGVtcCA9IHMuc3Vic3RyKGosaSk7CgkJCQlzb3J0KHRlbXAuYmVnaW4oKSwgdGVtcC5lbmQoKSk7CgkJCQltW3RlbXBdKys7CgkJCX0KCQl9CgkJc3VtID0gMDsKCQlzdGQ6Om1hcDxzdHJpbmcsIGludD46Oml0ZXJhdG9yIGkgPSBtLmJlZ2luKCk7CgkJd2hpbGUgKGkgIT0gbS5lbmQoKSkgewoJCQlzdW0gKz0ga1tpLT5zZWNvbmRdOwoJCQlpKys7CgkJfQoJCWNvdXQgPDwgc3VtIDw8IGVuZGw7Cgl9CglyZXR1cm4gMDsKfQ==