Contest Duration: - (local time) (100 minutes) Back to Home
C - Replacing Integer /

Time Limit: 2 sec / Memory Limit: 1024 MB

### 制約

• 0 ≤ N ≤ 10^{18}
• 1 ≤ K ≤ 10^{18}
• 入力は全て整数

### 入力

N K


### 入力例 1

7 4


### 出力例 1

1


1 回操作を行うと、N|7-4| = 3 となります。

2 回操作を行うと、N|3-4|=1 となり、これが最小です。

### 入力例 2

2 6


### 出力例 2

2


1 回も操作を行わなかった場合の N=2 が最小です。

### 入力例 3

1000000000000000000 1


### 出力例 3

0


Score : 300 points

### Problem Statement

Given any integer x, Aoki can do the operation below.

Operation: Replace x with the absolute difference of x and K.

You are given the initial value of an integer N. Find the minimum possible value taken by N after Aoki does the operation zero or more times.

### Constraints

• 0 ≤ N ≤ 10^{18}
• 1 ≤ K ≤ 10^{18}
• All values in input are integers.

### Input

Input is given from Standard Input in the following format:

N K


### Output

Print the minimum possible value taken by N after Aoki does the operation zero or more times.

### Sample Input 1

7 4


### Sample Output 1

1


Initially, N=7.

After one operation, N becomes |7-4| = 3.

After two operations, N becomes |3-4| = 1, which is the minimum value taken by N.

### Sample Input 2

2 6


### Sample Output 2

2


N=2 after zero operations is the minimum.

### Sample Input 3

1000000000000000000 1


### Sample Output 3

0