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:
def f():
    t = int(input())
    arr = []
    for _ in range(t):
        arr.append( list(map(int, input().split())) )

    # sum of digits from left side
    def sumdigits(n, digits):
        res, i, n = 0, 0, str(n)
        while i < len(n) and i <= digits:
            res += int(n[i])
            i += 1
        return res

    # find next number n whose sum is leq s
    # which case did you miss?
    def findnext(n,s):
        i = 0
        while sumdigits(n,i)+1 <= s:
            i += 1
        i -= 1

        # if first digit > s, must round to next power of 10
        if i == -1:
            return 10**len(str(n))
            
        n = list( map(int, str(n)) )

        # 0 out everything to right of such element
        for ctr in range(i+1,len(n)):
            n[ctr] = 0

        n[i] += 1
        # deal w the first digit correctly if it's changed
        while i > 0 and n[i] == 10:
            n[i] = 0
            i -= 1
            n[i] += 1

        if i == 0 and n[0] == 10:
            return 10**len(n)

        return int( "".join( list(map(str, n)) ) )


    for n,s in arr:
        if sumdigits(n, len(str(n))-1) <= s:
            print(0)
            continue

        minv = findnext(n,s)
        print(minv - n)
f()

'''
9
2 1
1 1
500 4
217871987498122 10
100000000000000001 1
800801 15
1785120922 34
92 10
217871987498122 11
'''