add archive support