{
        TASK: fest
        LANG: pascal
        }
program fest;
type
        ques=array[1..2000] of integer;
        city=array[1..10000] of integer;
        new=array[-10000..10000] of integer;
var
        i,j,k,s,u,g:integer;
        q:byte;
        a:city;
        b:ques;
        d:new;
function Min(a:new; var k:integer):integer;
var
        i:integer;
begin
        min:=1000000;
        for i:=-1000 to 1000 do
        if abs(a[i])<min then begin
        min:=abs(a[i]);
        k:=i;
        end;


end;

begin

        for i:=1 to 10000 do a[i]:=0;
        for i:=-10000 to 10000 do d[i]:=0;
        u:=0;
        j:=0;
        while not eoln do
        begin
        read(q);
        if q=1 then begin
        read(i, k);
        inc(a[i],k);
        end;
        if q=2 then begin
        read(s);
        j:=j+1;
        b[j]:=s;
        s:=j;
        end;
        end;
        for g:=1 to s do begin
        for i:=1 to 10000 do
        if a[i]>0 then
        begin
        k:=a[i]; j:=1;
        repeat
        inc(d[i-j],k);
        inc(d[i+j],k);
        inc(k,a[i]);
        inc(j);
        until ((i-j)<-10000) or ((i+j)>10000);
        end;
        for i:=-10000 to 10000 do begin
        dec(d[i],b[g]);
        end;
        min(d,u);
        writeln(u,' ',min(d,u));
        for i:=-10000 to 10000 do d[i]:=0;
        end;



end.




