def METHOD_NAME (self, snapshot):
    """
        reset stats object
        create a ref state
    """
    # clear any previous data
    self.reference_stats = {}
    self.history.clear()
    # call the update hook if exists
    snapshot = self._pre_update(snapshot)
    # update the latest
    self.latest_stats = snapshot
    # copy latest to refrence
    self.reference_stats = copy.deepcopy(self.latest_stats)