add workspace unarchive function