x, k, d = map(int, input().split())

x = abs(x)
kk = x // d
amari = x % d

if kk >= k:
    ans = (kk - k) * d + amari
elif (k - kk) % 2 == 1:
    ans = abs(amari - d)
else:
    ans = amari

print(ans) x, k, d = map(int, input().split()) x map(int, input().split()) map int input().split() ().split () input split k d x = abs(x) x abs(x) abs x kk = x // d kk x // d x d amari = x % d amari x % d x d if kk >= k:
    ans = (kk - k) * d + amari
elif (k - kk) % 2 == 1:
    ans = abs(amari - d)
else:
    ans = amari kk >= k kk k ans = (kk - k) * d + amari ans (kk - k) * d + amari (kk - k) * d kk - k kk k d amari elif (k - kk) % 2 == 1:
    ans = abs(amari - d) (k - kk) % 2 == 1 (k - kk) % 2 k - kk k kk 2 1 ans = abs(amari - d) ans abs(amari - d) abs amari - d amari d ans = amari ans amari print(ans) print ans ans = abs(amari - d) abs(amari - d) ans kk = x // d x // d kk d = map(int, input().split()) map(int, input().split()) d x, k, d = map(int, input().split()) map(int, input().split()) x ans = (kk - k) * d + amari (kk - k) * d + amari ans amari = x % d x % d amari ans = amari amari ans k, d = map(int, input().split()) map(int, input().split()) k x = abs(x) abs(x) x
x, k, d = map(int, input().split())

x = abs(x)
kk = x // d
amari = x % d

if kk >= k:
    ans = (kk - k) * d + amari
elif (k - kk) % 2 == 1:
    ans = abs(amari - d)
else:
    ans = amari

print(ans)