Archive class refactoring