code: def reset_on_duration(self, user: str):
      # Get current and creation time
      last_updated_at = self.user_dict[user]["last_updated_at"]
      current_time = time.time()
  
      # Convert duration from days to seconds
      duration_in_seconds = (
          self.user_dict[user]["duration"] * 24 * 60 * 60
      )
  
      # Check if duration has elapsed
      if current_time - last_updated_at >= duration_in_seconds:
          # Reset cost if duration has elapsed and update the creation time
          self.reset_cost(user)
          self.user_dict[user]["last_updated_at"] = current_time
          self._save_data_thread()
  
imports: import os, json, time
  import litellm
  from litellm.utils import ModelResponse
  import requests, threading
  from typing import Optional, Union, Literal
label_desc: Use image node_id 13 for calling the BudgetManager obj's underlying member method code with example usage: obj.reset_on_duration(user) without return types