method add_item (a:string) (b:string) (c:int8) l =
    (* add a new item to the list stats *)
    if (List.length l) = 0 then
      [(a,b,c)]
    else (* there's at least 1 element *)
      let premier = (List.hd l) in
      let (x,y,z) = premier in
      let reste = (List.tl l) in
      if (x,y)=(a,b) then
        List.append [(x,y,(plus c z))] reste
      else
        List.append [premier] (self#add_item a b c reste)