
#N=gets.to_i
#S=gets.chomp
#A=(0...N).map{gets.to_i}
#sum=A.inject(&:+)
#B=gets.split.map(&:to_i)


N,M=gets.split.map(&:to_i)
a=gets.split.map(&:to_i)
bcs=(0...M).map{gets.split.map(&:to_i)}

sa=a.sort
sbcs=bcs.sort_by{|b,c| c}

max=0
N.times do
  if sa.length>0
    va=sa[-1]
  else
    va=0
  end
  if sbcs.length>0
    vbc=sbcs[-1][1]
  else
    vbc=0
  end
  if va>vbc
    max+=va
    sa.pop
  else
    max+=vbc
    if sbcs[-1][0]==1
      sbcs.pop
    else
      sbcs[-1][0]-=1
    end
  end
end

puts max
