text: import json
  
  
  class AverageMeter:
      """Computes and stores the average and current value"""
      def __init__(self):
          self.reset()
  
      def reset(self):
          self.val = 0
          self.avg = 0
          self.sum = 0
          self.count = 0
  
      def update(self, val, n=1):
          self.val = val
          self.sum += val * n
          self.count += n
          self.avg = self.sum / self.count
  
  
  
  class Params:
      """Class that loads hyperparameters from a json file.
      Example:
      ```
      params = Params(json_path)
      print(params.learning_rate)
      params.learning_rate = 0.5  # change the value of learning_rate in params
      ```
      """
  
      def __init__(self, json_path):
          with open(json_path) as f:
              params = json.load(f)
              self.__dict__.update(params)
  
      def save(self, json_path):
          with open(json_path, 'w') as f:
              json.dump(self.__dict__, f, indent=4)
  
      def update(self, json_path):
          """Loads parameters from json file"""
          with open(json_path) as f:
              params = json.load(f)
              self.__dict__.update(params)
  
      @property
      def dict(self):
          """Gives dict-like access to Params instance by `params.dict['learning_rate']"""
          return self.__dict__