refactoring of the archive features