Problem: You are given a positive integer n. In one move, you can increase n by one (i.e. make n := n + 1). Your task is to find the minimum number of moves you need to perform in order to make the sum of digits of n be less than or equal to s.

You have to answer t independent test cases.

Input

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

The only line of the test case contains two integers n and s (1 ≤ n ≤ 10^{18}; 1 ≤ s ≤ 162).

Output

For each test case, print the answer: the minimum number of moves you need to perform in order to make the sum of digits of n be less than or equal to s.

Example

Input


5
2 1
1 1
500 4
217871987498122 10
100000000000000001 1


Output


8
0
500
2128012501878
899999999999999999

Solution (in PYTHON3):

Solution:


if __name__ == '__main__':
        t = int(input())
        for i in range(0,t,1):
                arr = [str(string) for string in input().split()]
                n = arr[0]
                s = arr[1]
                l1 = len(n)
                l2 = len(s)
                s_sum = int(s)
                n_sum = 0
                j = 0
                while(j != l1):
                    if(int(n[j])+n_sum <= s_sum):
                        n_sum += int(n[j])
                    else:
                        break
                    j += 1
                if(j == l1):
                    print(0)
                elif(j == 0):
                    ans = 10**(len(n))-(int(n))
                    print(ans)
                elif(int(n[0]) == s_sum and n_sum > s_sum):
                    ans = 10**(len(n))-(int(n))
                    print(ans)
                else:
                    #ans = int(n[0])*10**(len(n)-1)+(10-int(n[0]))*10**(len(n)-2) - (int(n))
                    exceeder = int(n[j])
                    offset = exceeder - (s_sum - n_sum)
                    flag = 0
                    new_str = ""
                    while(j != 0):
                        prev_index_num = int(n[j-1])
                        prev_index_num += 1
                        if(prev_index_num == 10 or n_sum+1 > s_sum):
                            n_sum -= int(n[j-1])
                            j -= 1
                            continue
                        for k in range(0,j-1):
                            new_str += n[k]
                        new_str += str(prev_index_num)
    
                        for k in range(j,l1,1):
                            new_str += '0'
                        flag = 1
                        break

                    if(flag == 0):    
                        ans = 10**(len(n))-(int(n))
                        print(ans)
                    else:
                        ans = int(new_str) - int(n)
                        print(ans)