Skier rides on a snowy field. Its movements can be described by a string of characters 'S', 'N', 'W', 'E' (which correspond to 1 meter movement in the south, north, west or east direction respectively).

It is known that if he moves along a previously unvisited segment of a path (i.e. this segment of the path is visited the first time), then the time of such movement is 5 seconds. If he rolls along previously visited segment of a path (i.e., this segment of the path has been covered by his path before), then it takes 1 second.

Find the skier's time to roll all the path.

Input

The first line contains an integer t (1 ≤ t ≤ 10^4) — the number of test cases in the input. Then t test cases follow.

Each set is given by one nonempty string of the characters 'S', 'N', 'W', 'E'. The length of the string does not exceed 10^5 characters.

The sum of the lengths of t given lines over all test cases in the input does not exceed 10^5.

Output

For each test case, print the desired path time in seconds.

Example

Input


5
NNN
NS
WWEN
WWEE
NWNWS


Output


15
6
16
12
25
import sys 
try:
	sys.stdin = open('Input.txt', 'r') 
	sys.stdout = open('Output.txt', 'w')
except:
	pass

# input = sys.stdin.readline
for testCases in range(int(input())):
	position = [0,0]
	d = {}
	time = 0
	s = input()

	for i in s:
		dic = position[:]
		if i == "N":
			position[0] += 1
		elif i == "S":
			position[0] -= 1
		elif i == "E":
			position[1] += 1
		else:
			position[1] -= 1
		
		dic0 = [min(dic[0],position[0]),max(dic[0],position[0])]
		dic1 = [min(dic[1],position[1]),max(dic[1],position[1])]

		dic = tuple(dic0+dic1)

		if d.get(tuple(dic)):
			time += 1
		else:
			time += 5
			d[tuple(dic)] = 1
		# print(d)
	print(time)