using System;

class Program
{
    static void Main()
    {
        var ulaz1 = Console.ReadLine().Split();
        long n = long.Parse(ulaz1[0]);
        long q = long.Parse(ulaz1[1]);
        
        long[] nizd = new long[n];
        long[] nizp = new long[p];
        long brojdana,brojplazmizadnji;
        
        for (long i = 0; i < n; i++)
        {
            var ulaz2 = Console.ReadLine().Split();
            long d = long.Parse(ulaz2[0]);
            long p = long.Parse(ulaz2[1]);
            nizd[i] = d;
            nizp[i] = p;
            if(i == n-1)
            {
                brojdana = d;
                brojplazmizadnji = p;
            }
        }
        
        
        
        
        long[] nizq = new long[p];
        
        for (long j = 0; j < q; j++)
        {
            long pit = long.Parse(Console.ReadLine());
            nizq[j] = pit;
            
        }
        
        long brojac = 0;
        
        if(q == 1)
        {
            for(k = 1; k <= n; k++)
        {
            if(nizp[k-1]>=nizd[k]-nizd[k-1] && nizq[0]>nizd[k-1] && nizq[0]>=nizp[k-1])
            {
                brojac = nizp[k-1]+brojac;
            }
            else if(nizp[k-1]>=nizd[k]-nizd[k-1] && nizq[0]>nizd[k-1] && nizq[0]<nizp[k-1])
            {
                brojac = brojac + nizq[0] - nizd[k-1];
            }
            
        }
        }
        Console.WriteLine(brojac);
        
    }
}