/*
 * Created by SharpDevelop.
 * User: Paki
 * Date: 11/17/2024
 * Time: 1:10 AM
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;

namespace TakmicenjePlazma
{
	class Program
	{
		public static void Main(string[] args)
		{
			string[] NiQ=Console.ReadLine().Split(' ');
			int N=int.Parse(NiQ[0]);
			int Q=int.Parse(NiQ[1]);
			double[] d=new double[N];
			double[] p=new double[N];
			double[] k=new double[Q];
			double TrenutnaZalihaPlazme=0;
			double PojedenaPlazma=0;
			double MaxPlazma=0;
			double MaxDani=0;
			double x=1;
			bool Zavrsi=false;
			
			for(int i=0;i<N;i++)
			{
				string[] DiP=Console.ReadLine().Split(' ');
				d[i]=double.Parse(DiP[0]); //kog dana je kupljena plazma
				p[i]=double.Parse(DiP[1]); //koliko plazme je kupljeno
				MaxPlazma+=p[i];
			}
			
			for(int i=0;i<Q;i++)
			{
				k[i]=double.Parse(Console.ReadLine()); //kog dana gledamo koliko je ukupno plazme pojedeno
				
			}			
			
			
			
			for(int J=0;J<Q;J++)
			{
				TrenutnaZalihaPlazme=0;
				PojedenaPlazma=0;				
				x=1;
				while(k[J]>0)
				{
					MaxDani+=k[J];
					if(MaxDani>MaxPlazma)
					{
						Console.WriteLine(MaxPlazma);
						Zavrsi=true;
						break;
					}
					
					for(int i=0;i<N;i++)
					{
						if(d[i]==x)
						{
							TrenutnaZalihaPlazme+=p[i];
						}
						
						
					}
					
					if(TrenutnaZalihaPlazme>0)
					{
							
						PojedenaPlazma++;
						TrenutnaZalihaPlazme--;
					}				
	
					
					x++;
					k[J]--;
					
				}
				
				
				if(Zavrsi==false)
					Console.WriteLine(PojedenaPlazma);
				else
					Console.WriteLine("");
					
			}


						
			
			Console.Write("Press any key to continue . . . ");
			Console.ReadKey(true);
		}
	}
}