#include <bits/stdc++.h>
using namespace std;


int main(void){
	int N,M;
	cin >> N >> M;
	priority_queue <pair<int,int>>q;
	long long ans = 0;
	vector<int> A(N),B(M),C(M);
	for(int i=0;i<N;i++)cin >> A[i];
	for(int i=0;i<M;i++)cin >> B[i] >> C[i];
	for(int i=0;i<N;i++){
		q.push(make_pair(A[i],1));
	}
	for(int i=0;i<M;i++){
		q.push(make_pair(C[i],B[i]));
	}
	for(int i=0;i<N;i++){
		auto p = q.top();
		q.pop();
		ans += p.first;
		if(p.second>1){
			p.second--;
			q.push(p);
		}
	}
	cout << ans << endl;
}