#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n = 0;
int m = 0;
cin >> n;
cin >> m;
int* a = new int[n];
long long int* aktualnyPoziomTrawy = new long long int[n];
long long int* b = new long long int[m];
long long int* skoszonoTrawy = new long long int[m];
long long int* d = new long long int[m];
long long int ostatnieKoszenie = 0;
long long int i = 0;
long long int j = 0;
while (i < n)
{
cin >> a[i];
aktualnyPoziomTrawy[i] = 0;
i++;
}
while (j < m)
{
cin >> d[j] >> b[j];
skoszonoTrawy[j] = 0;
j++;
}
for(j = 0; j < m; j++)
{
for(i = 0; i < n; i++)
{
aktualnyPoziomTrawy[i] += a[i] * (d[j] - ostatnieKoszenie);
if(aktualnyPoziomTrawy[i] - b[j] > 0)
{
skoszonoTrawy[j] += aktualnyPoziomTrawy[i] - b[j];
aktualnyPoziomTrawy[i] = b[j];
}
}
ostatnieKoszenie = d[j];
cout << skoszonoTrawy[j] << endl;
}
return 0;
}