As usual, Sereja has array *a*, its elements are integers: *a*[1], *a*[2], ..., *a*[*n*]. Let's introduce notation:

A swap operation is the following sequence of actions:
 -  choose two indexes *i*, *j* (*i* ≠ *j*); -  perform assignments *tmp* = *a*[*i*], *a*[*i*] = *a*[*j*], *a*[*j*] = *tmp*. 
What maximum value of function *m*(*a*) can Sereja get if he is allowed to perform at most *k* swap operations?
The first line contains two integers *n* and *k* (1 ≤ *n* ≤ 200; 1 ≤ *k* ≤ 10). The next line contains *n* integers *a*[1], *a*[2], ..., *a*[*n*] ( - 1000 ≤ *a*[*i*] ≤ 1000).
# coding=utf-8
n=int(input())
for i in range(n):
    x=int(input())
    t=0
    zhan=0
    while x>0:
        if t%2==0:
            if x%2==1:
                zhan+=1
                x-=1
            else:
                if x//2%2==0 and x>8:
                    zhan+=1
                    x-=1
                else:
                    zhan+=x//2
                    x=x//2
        else:
            if x%2==1:
                x-=1
            elif x//2%2==0 and x>8:
                x-=1
            else:
                x=x//2
        t=t+1
    print(zhan)
                

 		 	   				  		    		 			 	 		