//Surf Smelt Fishing Contest ?
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;

vector<pair<ll, ll> > p;//first:参加者番号 second:釣った数
ll fp=0, fn=0, sp=0, sn=0, tn=0;//first_person, second_person, third_person番号・数

bool comp(const pair<ll, ll> &a, const pair<ll, ll> &b){
  if(a.second==b.second)return a.first<b.first;
  return a.second>b.second;
}

int main(){
  ll n, q;
  vector<pair<ll, ll> > tmp;
  cin>>n>>q;
  for(ll i=0; i<=n; i++)
    p.push_back(pair<ll, ll>(i, 0));
  for(ll i=0; i<q; i++){
    ll a, v;
    cin>>a>>v;
    p[a].second+=v;

    if((fn<=p[a].second) || (sn<=p[a].second) || (a==fp && v<0 && p[fp].second<sn) || (a==sp && v<0)){
      tmp=p;
      sort(tmp.begin(), tmp.end(), comp);
      fp=tmp[0].first; fn=tmp[0].second;
      if(n!=1){sp=tmp[1].first; sn=tmp[1].second; }
    }
    cout<<fp<<' '<<fn<<endl;
    /*
    cout<<endl;
    for(int j=0; j<=n; j++)
      cout<<p[j].first<<' '<<p[j].second<<endl;
    cout<<endl;
    */
  }
  return 0;
}