reimplements archiving and testing