Implement restore operation