| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -488,17 +488,17 @@ EVENTS: Dict[int, Dict[str, Union[Alert, AlertCallbackType]]] = { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  # Thrown when the fan is driven at >50% but is not rotating | 
					 | 
					 | 
					 | 
					  # Thrown when the fan is driven at >50% but is not rotating | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  EventName.fanMalfunction: { | 
					 | 
					 | 
					 | 
					  EventName.fanMalfunction: { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    ET.PERMANENT: NormalPermanentAlert("Fan Malfunction", "Hardware Malfunction"), | 
					 | 
					 | 
					 | 
					    ET.PERMANENT: NormalPermanentAlert("Fan Malfunction", "Likely Hardware Issue"), | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  }, | 
					 | 
					 | 
					 | 
					  }, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  # Camera is not outputting frames at a constant framerate | 
					 | 
					 | 
					 | 
					  # Camera is not outputting frames at a constant framerate | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  EventName.cameraMalfunction: { | 
					 | 
					 | 
					 | 
					  EventName.cameraMalfunction: { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    ET.PERMANENT: NormalPermanentAlert("Camera Malfunction", "Hardware Malfunction"), | 
					 | 
					 | 
					 | 
					    ET.PERMANENT: NormalPermanentAlert("Camera Malfunction", "Likely Hardware Issue"), | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  }, | 
					 | 
					 | 
					 | 
					  }, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  # Unused | 
					 | 
					 | 
					 | 
					  # Unused | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  EventName.gpsMalfunction: { | 
					 | 
					 | 
					 | 
					  EventName.gpsMalfunction: { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    ET.PERMANENT: NormalPermanentAlert("GPS Malfunction", "Hardware Malfunction"), | 
					 | 
					 | 
					 | 
					    ET.PERMANENT: NormalPermanentAlert("GPS Malfunction", "Likely Hardware Issue"), | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  }, | 
					 | 
					 | 
					 | 
					  }, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  # When the GPS position and localizer diverge the localizer is reset to the | 
					 | 
					 | 
					 | 
					  # When the GPS position and localizer diverge the localizer is reset to the | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |