{
Matthew Sun
Woburn C.I.
DWITE
Playlist
}
uses crt;

var
i,playersize,numofsongs,bestrating:longint;
data3,out3:text;
uselesschar:char;
songratings:array[1..100] of longint;
songsizes:array[1..100] of longint;
songused:array[1..5] of boolean;

procedure findbest(faddrating,faddsize,frating,fsize:longint);
var
fi:longint;

begin

frating:=faddrating+frating;
fsize:=faddsize+fsize;

if (fsize<=playersize) then begin {BEGIN if in size}

   if (frating>bestrating) then bestrating:=frating;

   for fi:=1 to numofsongs do begin
      if songused[fi]=false then begin
         songused[fi]:=true;
         findbest(songratings[fi],songsizes[fi],frating,fsize);
         songused[fi]:=false
      end;

   end;

END {END if in size}

end;

begin

assign(data3,'data3.txt');
   reset(data3);
assign(out3,'out3.txt');
   rewrite(out3);

readln(data3,playersize);
readln(data3,numofsongs);

for i:=1 to numofsongs do begin {BEGIN INPUT}
   repeat
      read(data3,uselesschar);
   until uselesschar=' ';


   read(data3,songratings[i]);
   readln(data3,songsizes[i]);
end; {END INPUT}

for i:=1 to 5 do
   songused[i]:=false;

bestrating:=0;

findbest(0,0,0,0);

writeln(out3,bestrating);

close(data3);
close(out3);

end.
