import sys from itertools import product Gx, Gy, N, F = map(int, input().split()) crystal = [(x, y, c) for l in sys.stdin for x, y, c in (map(int, l.split()),) if (x+y)*F > c] crystal_count = len(crystal) inf = 10**9 dp = [[inf]*(Gx+2) for _ in [0]*(Gy+2)] dp[0][0] = 0 for cx, cy, ccost in crystal: for x, y in product(range(Gx-cx, -1, -1), range(Gy-cy, -1, -1)): dp[y+cy][x+cx] = min(dp[y+cy][x+cx], dp[y][x]+ccost) for x, y in product(range(Gx+1), range(Gy+1)): dp[y+1][x] = min(dp[y+1][x], dp[y][x]+F) dp[y][x+1] = min(dp[y][x+1], dp[y][x]+F) print(dp[Gy][Gx])