code: def check_threat_timeout(self):
          '''check and handle threat time out'''
          for id in self.threat_vehicles.keys():
              if self.threat_vehicles[id].update_time == 0:
                  self.threat_vehicles[id].update_time = self.get_time()
              dt = self.get_time() - self.threat_vehicles[id].update_time
              if dt > self.ADSB_settings.timeout:
                  # if the threat has timed out...
                  del self.threat_vehicles[id]  # remove the threat from the dict
                  for mp in self.module_matching('map*'):
                      # remove the threat from the map
                      mp.map.remove_object(id)
                      mp.map.remove_object(id+":circle")
                  # we've modified the dict we're iterating over, so
                  # we'll get any more timed-out threats next time we're
                  # called:
                  returf check_threat_timeout(self):
          '''check and handle threat time out'''
          for id in self.threat_vehicles.keys():
              if self.threat_vehicles[id].update_time == 0:
                  self.threat_vehicles[id].update_time = self.get_time()
              dt = self.get_time() - self.threat_vehicles[id].update_time
              if dt > self.ADSB_settings.timeout:
                  # if the threat has timed out...
                  del self.threat_vehicles[id]  # remove the threat from the dict
                  for mp in self.module_matching('map*'):
                      # remove the threat from the map
                      mp.map.remove_object(id)
                      mp.map.remove_object(id+":circle")
                  # we've modified the dict we're iterating over, so
                  # we'll get any more timed-out threats next time we're
                  # called:
                  return
docs: check and handle threat time out