Loading [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js
C. Good String
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

Let's call left cyclic shift of some string t1t2t3tn1tn as string t2t3tn1tnt1.

Analogically, let's call right cyclic shift of string t as string tnt1t2t3tn1.

Let's say string t is good if its left cyclic shift is equal to its right cyclic shift.

You are given string s which consists of digits 09.

What is the minimum number of characters you need to erase from s to make it good?

Input

The first line contains single integer t (1t1000) — the number of test cases.

Next t lines contains test cases — one per line. The first and only line of each test case contains string s (2|s|2105). Each character si is digit 09.

It's guaranteed that the total length of strings doesn't exceed 2105.

Output

For each test case, print the minimum number of characters you need to erase from s to make it good.

Example
Input
3
95831
100120013
252525252525
Output
3
5
0
Note

In the first test case, you can erase any 3 characters, for example, the 1-st, the 3-rd, and the 4-th. You'll get string 51 and it is good.

In the second test case, we can erase all characters except 0: the remaining string is 0000 and it's good.

In the third test case, the given string s is already good.