#include<bits/stdc++.h>
using namespace std;
char in[100], out[100];
int A[100010], B[100010], C[100010];
map <string,int> mp;
int main(){
	int i, j, n;
	for(int I=1; I<=20;I++){
		vector <string> V;
		for(i=0;i<100;i++){
			int a;
			char c;
			a = rand()%10+1;
			string s="";
			for(j=0;j<a;j++){
				c = rand()%26+'a';
				s = s + c;
			}	
			V.push_back(s);
		}
		n = I * 5000;
		sprintf(in,".%d.in",I);
		freopen(in,"w",stdout);
		cout << n << "\n";
		for(i=0;i<n;i++){
			A[i] = rand()%2+1;
			B[i] = rand()%100;
			C[i] = rand()%100+1;
			cout << A[i] << " "<< V[B[i]] <<" "<< C[i] <<"\n";
		}
		sprintf(in,".%d.out",I);
		freopen(in,"w",stdout);
		mp.clear();
		for(i=0;i<n;i++){
			if(A[i]==1){
				mp[V[B[i]]]+=C[i];
			}else{
				mp[V[B[i]]]-=C[i];
				if(mp[V[B[i]]]<0){
					cout << mp[V[B[i]]] * (-1) <<"\n";
					mp[V[B[i]]] = 0;
				}else{
					cout<< "0\n"; 
				}
			}
		}		
	}
}
