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:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Thu Mar 26 21:52:50 2020

@author: maruf
"""

t=int(input())
u=0
i=0
j=0
a1=[]
b2=[]
while(u!=t):
    a, b=[int(x) for x in input().split()]
    a1.append(a)
    b2.append(b)
    u+=1
#while (u!=t):
#a, b=[int(x) for x in input().split()]
while(i!=t):    
 if (a1[i]%b2[i]==0):
    print(0)
 else:
    j=b2[i]-a1[i]%b2[i] 
    print(j)
 i+=1   
    
 """   
 else:
    while(a1[i]%b2[i]!=0):
       a1[i]+=1       
       j+=1
       if(a1[i]%b2[i]==0):
           print(j)
           j=0
 i+=1         
          
           
  #  u+=1    
  """