Your security guard friend recently got a new job at a new security company. The company requires him to patrol an area of the city encompassing exactly N city blocks, but they let him choose which blocks. That is, your friend must walk the perimeter of a region whose area is exactly N blocks. Your friend is quite lazy and would like your help to find the shortest possible route that meets the requirements. The city is laid out in a square grid pattern, and is large enough that for the sake of the problem it can be considered infinite.

Input

Input will consist of a single integer N (1 ≤ N ≤ 106), the number of city blocks that must be enclosed by the route.

Output

Print the minimum perimeter that can be achieved.

Examples

Input

4


Output

8


Input

11


Output

14


Input

22


Output

20

Note

Here are some possible shapes for the examples:

<image>
import math
 
n = int(raw_input())
 
quadrado = []
 
for k in xrange(1, int(math.sqrt(1000000) + 1 )):
	quadrado.append(k * k)
	
quadrado.append(10000000)
 
i = 0
 
while n > quadrado[i + 1]:
	i += 1
 
l = int(math.sqrt(quadrado[i]))
if n == 1:
	print 4
	exit()
 
if (n - l * l) > l:
	
	print (l * 2) + ((l+ 1)* 2) + 2
	
elif n - l * l == l:
	
	print l * 4 + 2  
 
else:
	
	print (l * 4)  + 2