using System;

namespace ConsoleApp99
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] n_q = Console.ReadLine().Split();
            int n = int.Parse(n_q[0]); int q = int.Parse(n_q[1]);
            int[] dani = new int[n];
            long[] pakovanja = new long[n];
            long[] k = new long[q];
            long tr_dan = 0; long ukupno = 0; long preostalo = 0; int brojac = 0;
            for (int i = 0; i < n; i++)
            {
                string[] d_p = Console.ReadLine().Split();
                dani[i] = int.Parse(d_p[0]);
                pakovanja[i] = long.Parse(d_p[1]);
            }
            for (int j = 0; j < q; j++)
            {
                k[j] = long.Parse(Console.ReadLine());
            }
            for (int j = 0; j < q; j++)
            {
                long k_tr = k[j];
                long izlaz = ukupno;
                while (brojac < n && dani[brojac] <= k_tr)
                {
                    if (tr_dan < dani[brojac])
                    {
                        long ost_dan = dani[brojac] - tr_dan;
                        long plazma = Math.Min(ost_dan, preostalo);
                        izlaz = izlaz + plazma;
                        preostalo = preostalo - plazma;
                        tr_dan = tr_dan + ost_dan;
                    }
                    preostalo = preostalo + pakovanja[brojac];
                    brojac++;
                }
                if (tr_dan <= k_tr)
                {
                    long ost_dan = k_tr - tr_dan + 1;
                    long plazma = Math.Min(ost_dan, preostalo);
                    izlaz = izlaz + plazma;
                    preostalo = preostalo - plazma;
                    tr_dan = tr_dan + ost_dan;
                }
                ukupno = izlaz;
                Console.WriteLine(izlaz);
            }
        }
    }
}