the history module already does this job?