import sys from collections import deque def main(): input = sys.stdin.read().split() idx = 0 N = int(input[idx]); idx +=1 M = int(input[idx]); idx +=1 K = int(input[idx]); idx +=1 T = int(input[idx]); idx +=1 cells = [] for _ in range(K): A = int(input[idx])-1; idx +=1 # converting to 0-based B = int(input[idx])-1; idx +=1 C = int(input[idx]); idx +=1 D = int(input[idx]); idx +=1 cells.append( (A,B,C,D) ) D_min = (N-1) + (M-1) if D_min <= T: print(0) return required = D_min - T # BFS from (0,0) to all cells d1 = [[-1]*M for _ in range(N)] q = deque() q.append( (0,0) ) d1[0][0] = 0 dirs = [ (-1,0), (1,0), (0,-1), (0,1) ] while q: x,y = q.popleft() for dx, dy in dirs: nx = x + dx ny = y + dy if 0<=nx