let who_modified_what =
let rec iter acc current = function
[] -> List.rev acc
| [id,d,ac,_] -> List.rev ((id,d,ac,current) :: acc)
| (id1,d1,ac1,_)::(id2,d2,ac2,t2)::q ->
iter ((id1,d1,ac1,t2)::acc) current ((id2,d2,ac2,t2)::q)
in
let comp (_,(d1:float),_,_) (_,(d2:float),_,_) = compare d1 d2 in
fun current l -> iter [] current (List.sort comp l)