#include <iostream>
#include <map>
#include <set>
#include <cstdio>
#include <algorithm>
#include <cmath>
#include <string>
#include <climits>
#include <vector>
#include <cstdlib>
#include <sstream>
using namespace std;
#define MOD 1000000007
#define pb push_back
#define mp make_pair
#define F first
#define S second
#define N 100005
#define PII pair<int,int>
int a[N];
int b[4*N];
void update(int n, int start, int end, int value)
{
if(value>b[n]) return;
if(start==end) {b[n]-=value; a[start]=b[n]; return;}
else
{
int mid = (start+end)/2;
if(b[2*n]>=value) update(2*n,start,mid,value);
else update(2*n+1,mid+1,end,value);
b[n] = max(b[2*n],b[2*n+1]);
}
}
void build(int n, int start, int end ,int k)
{
if(start==end) { a[start]=b[n]=k; return;}
int mid = (start+end)/2;
build(2*n,start,mid,k);
build(2*n+1,mid+1,end,k);
b[n] = k;
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
#ifndef ONLINE_JUDGE
freopen("inp.txt","r",stdin);
freopen("out.txt","w",stdout);
#endif
int t,k,n,i,R,V;
string s;
cin>>t;
while(t--)
{
cin>>k>>n;
build(1,0,n-1,k);
int count=0;
while(count<n)
{
cin>>s;
int l=s.size();
if(s[0]=='b')
{
cin>>R>>V;
for(int i=1;i<=R;i++) update(1,0,n-1,V);
count+=R;
}
else
{
i=0;V=0;
while(i<l) { V=V*10+(s[i]-'0'); i++;}
update(1,0,n-1,V);
count++;
}
}
long long sum=0;
for(i=0;i<n;i++)
{
if(a[i]!=k) sum+=a[i];
else break;
}
cout<<i<<" "<<sum<<"\n";
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWFwPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8Y3N0ZGlvPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDxzdHJpbmc+CiNpbmNsdWRlIDxjbGltaXRzPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8Y3N0ZGxpYj4KI2luY2x1ZGUgPHNzdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSAgc3RkOwoKI2RlZmluZSBNT0QgMTAwMDAwMDAwNwojZGVmaW5lIHBiIHB1c2hfYmFjawojZGVmaW5lIG1wIG1ha2VfcGFpcgojZGVmaW5lIEYgZmlyc3QKI2RlZmluZSBTIHNlY29uZAojZGVmaW5lIE4gMTAwMDA1CiNkZWZpbmUgUElJIHBhaXI8aW50LGludD4KCmludCBhW05dOwppbnQgYls0Kk5dOwoKdm9pZCB1cGRhdGUoaW50IG4sIGludCBzdGFydCwgaW50IGVuZCwgaW50IHZhbHVlKQp7CglpZih2YWx1ZT5iW25dKSByZXR1cm47CglpZihzdGFydD09ZW5kKSB7YltuXS09dmFsdWU7IGFbc3RhcnRdPWJbbl07IHJldHVybjt9CgllbHNlCgl7CgkJaW50IG1pZCA9IChzdGFydCtlbmQpLzI7CgkJaWYoYlsyKm5dPj12YWx1ZSkgdXBkYXRlKDIqbixzdGFydCxtaWQsdmFsdWUpOwoJCWVsc2UgdXBkYXRlKDIqbisxLG1pZCsxLGVuZCx2YWx1ZSk7CgkJYltuXSA9IG1heChiWzIqbl0sYlsyKm4rMV0pOwoJfQp9Cgp2b2lkIGJ1aWxkKGludCBuLCBpbnQgc3RhcnQsIGludCBlbmQgLGludCBrKQp7CglpZihzdGFydD09ZW5kKSB7IGFbc3RhcnRdPWJbbl09azsgIHJldHVybjt9CglpbnQgbWlkID0gKHN0YXJ0K2VuZCkvMjsKCWJ1aWxkKDIqbixzdGFydCxtaWQsayk7CglidWlsZCgyKm4rMSxtaWQrMSxlbmQsayk7CgliW25dID0gazsKfQoKCmludCBtYWluKCkKewoJaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsKCWNpbi50aWUoMCk7CgoJI2lmbmRlZiBPTkxJTkVfSlVER0UKCWZyZW9wZW4oImlucC50eHQiLCJyIixzdGRpbik7CglmcmVvcGVuKCJvdXQudHh0IiwidyIsc3Rkb3V0KTsKCSNlbmRpZgoJCglpbnQgdCxrLG4saSxSLFY7CglzdHJpbmcgczsKCQoJY2luPj50OwoJd2hpbGUodC0tKQoJewoJCWNpbj4+az4+bjsKCQlidWlsZCgxLDAsbi0xLGspOwoKCQlpbnQgY291bnQ9MDsKCQl3aGlsZShjb3VudDxuKQoJCXsKCgkJCWNpbj4+czsKCQkJaW50IGw9cy5zaXplKCk7CgoJCQlpZihzWzBdPT0nYicpIAoJCQl7CgkJCQljaW4+PlI+PlY7CgkJCQlmb3IoaW50IGk9MTtpPD1SO2krKykgdXBkYXRlKDEsMCxuLTEsVik7CgkJCQljb3VudCs9UjsJCgkJCX0JCgkJCWVsc2UgCgkJCXsKCQkJCWk9MDtWPTA7CgkJCQl3aGlsZShpPGwpIHsgVj1WKjEwKyhzW2ldLScwJyk7IGkrKzt9CgkJCQl1cGRhdGUoMSwwLG4tMSxWKTsgCgkJCQljb3VudCsrOwoJCQl9CgkJfQoKCQlsb25nIGxvbmcgc3VtPTA7CgoJCWZvcihpPTA7aTxuO2krKykKCQl7CgkJCWlmKGFbaV0hPWspIHN1bSs9YVtpXTsKCQkJZWxzZSBicmVhazsKCQl9CgkJY291dDw8aTw8IiAiPDxzdW08PCJcbiI7CQoJfQoJCgoJcmV0dXJuIDA7Cn0=