Ada has an array of N crayons, some crayons are pointing upwards and some downwards. Ada thinks that an array of crayons is beautiful if all the crayons are pointing in the same direction.

In one step you can flip any segment of consecutive crayons. After flipping a segment, all crayons pointing downwards will point upwards and visceversa

What is the minimum number of steps to make the array of crayons beautiful?

Input

The first line of the input contains **T the number of test cases**. Each test case is described in one line containing a string S of N characters, the i-th character is āUā if the i-th crayon is pointing upwards and āDā if it is pointing downwards.

Output

For each test case, output a single line containing the minimum number of flips needed to make all crayons point to the same direction.