import math N, D = map( int, raw_input().split( ) ) okane = [] incomes = [] for i in range(N): incomes.append( list(map( int, raw_input().split( ))) ) pos = 0 okane.append([0,-D]) for i in range(N): tk = max( incomes[i][0]+okane[i][0] , incomes[i][0]+okane[i][1] - D ) kk = max( incomes[i][1] + okane[i][1], incomes[i][1] + okane[i][0] - D ) inc = [tk, kk] okane.append(inc) al = max(okane[N][0], okane[N][1]) print al