using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Plazma
{
    internal class Program
    {
        static void Main(string[] args)
        {
            string[] s = Console.ReadLine().Split(' ');
            int n = int.Parse(s[0]);
            int q = int.Parse(s[1]);
            long[,] x = new long[n, 2];
            for(int i = 0; i < n; i++)
            {
                s = Console.ReadLine().Split(' ');
                x[i, 0] = int.Parse(s[0]);
                x[i, 1] = int.Parse(s[1]);
            }


            for(int i1 = 0; i1 < q; i1++)
            {
                long k = long.Parse(Console.ReadLine());
                long r = 0, p = 0;
                for(int i = 0; i < n; i++)
                {
                    p += x[i, 1];
                    if(k < x[0, 0])
                    {
                        r = 0;
                        break;
                    }
                    if(i + 1 < n && k < x[i+1, 0])
                    {
                        if (k - x[i, 0] < p)
                        {
                            r += k - x[i, 0] + 1;
                            //p -= k - x[i, 0];
                        }
                        else
                        {
                            r += p;
                            //p = 0;
                        }
                        break;
                    }
                    if(i + 1 == n)
                    {
                        if(k > x[i, 0])
                        {
                            if (k - x[i, 0] < p)
                            {
                                r += k - x[i, 0] + 1;
                            }
                            else
                            {
                                r += p;
                            }
                        }
                        else
                        {
                            if (k - x[i-1, 0] < p)
                            {
                                r += k - x[i, 0] + 1;
                            }
                            else
                            {
                                r += p;
                            }
                        }
                        break;
                    }
                    if (i + 1 < n && x[i+1, 0] - x[i, 0] < p)
                    {
                        r += x[i + 1, 0] - x[i, 0];
                        p -= x[i + 1, 0] - x[i, 0];
                    }
                    else
                    {
                        r += p;
                        p = 0;
                    }
                }

                Console.WriteLine(r);
            }
            
        }
    }
}