import sys from sys import stdin def main(): sys.setrecursionlimit(1 << 25) N, M = map(int, stdin.readline().split()) max_map = {} for _ in range(M): B, C = map(int, stdin.readline().split()) if C > B: if B not in max_map or max_map[B] < C: max_map[B] = C memo = {} def get_max(x): if x in memo: return memo[x] visited = [] current = x while True: if current in memo: current = memo[current] break visited.append(current) if current in max_map: next_val = max_map[current] if next_val > current: current = next_val else: break else: break for node in visited: memo[node] = current return current sum_total = N * (N + 1) // 2 for b in max_map: x = get_max(b) sum_total += (x - b) print(sum_total) if __name__ == '__main__': main()