#!/usr/bin/env python3 # 30-Z2-4 M, N, K = map(int, input().split()) # Funkce načítající všechny příkazy a prohazující pořadí indexů, # aby šly dobře řadit def readrect(): for _ in range(K): a, b, c, d = map(int, input().split()) # Upravíme kvůli indexování od jedničky (c+d zůstává stejné, protože chceme polouzavřené intervaly) a -= 1 b -= 1 yield (a, c, b, d) # Seřazení načtených příkazů cmds = tuple(sorted(readrect())) count = 0 # Pro každý řádek projdeme všechny příkazy -> O(NK) for y in range(N): x = 0 for a, c, b, d in cmds: if y >= d or y < b or c < x: continue if a > x: x = a count += c - x x = c print(count)