restore functionality