program main
implicit None
	integer(8)::n,i,p,q,r,s
	integer(8),allocatable::a(:),b(:),c(:)
	
	read*,n
	allocate(a(n),b(n),c(n))
	
	do i=1,n
		read*,a(i),b(i)
		c(i) = a(i)-b(i)
	enddo
	
	call h3(c,a,b,n)
	
	p = 1
	q = 1
	do
		if(p > n)exit
		do
			if(q+1 > n)exit
			if(c(p) /=c(q+1))exit
			q = q+1
		enddo
		call h3(a(p:q),b(p:q),c(p:q),q-p+1)
		
		a(p:q) = a(q:p:-1)
		b(p:q) = b(q:p:-1)
		
		p = q+1
		q = q+1
	enddo
	
	p = 0;q = 0
	
	do i = 1,n/2
		p = p + a(n-2*i+2)
		q = q + b(n-2*i+1)
	enddo
	
	if(mod(n,2) == 1) p = p+a(1)
	
	print *,p-q
end program main

subroutine h3(a,b,c,n)
implicit None
	integer(8)::a(n),b(n),c(n),x,y,z
	integer(8)::n,i,ie,i0,i1,i2
	
	do i = n/2,1,-1
		x = a(i);y = b(i);z = c(i);ie = n + 1; i0 = i; i1 = i0 * 2
		do while(i1 < ie)
			i2 = i1 + 1
			if(i2 < ie .and. a(i1) < a(i2)) i1 = i2
			if(a(i1) > x)then
				a(i0) = a(i1);a(i1) = x
				b(i0) = b(i1);b(i1) = y
				c(i0) = c(i1);c(i1) = z
				else
				exit
			endif
			i0 = i1;i1 = i0 *2
		enddo
	enddo
	do ie = n,2,-1
		x = a(ie);y = b(ie);z = c(ie)
		a(ie) = a(1);b(ie) = b(1);c(ie) = c(1)
		a(1) = x;b(1) = y;c(1) = z
		i0 =1;i1 =2
		do while(i1 <ie)
			i2 = i1 +1
			if(i2 < ie .and. a(i1) < a(i2)) i1 = i2
			if(a(i1) > x)then
				a(i0) = a(i1);a(i1) = x
				b(i0) = b(i1);b(i1) = y
				c(i0) = c(i1);c(i1) = z
				else
				exit
			endif
			i0 = i1;i1 = i0 *2
		enddo
	enddo
end subroutine h3