Implement restore functionality