|  |  |  | @ -29,10 +29,13 @@ def chunks(l, n=128): | 
			
		
	
		
			
				
					|  |  |  |  | def build_fw_dict(fw_versions, filter_brand=None): | 
			
		
	
		
			
				
					|  |  |  |  |   fw_versions_dict = defaultdict(set) | 
			
		
	
		
			
				
					|  |  |  |  |   for fw in fw_versions: | 
			
		
	
		
			
				
					|  |  |  |  |     if (filter_brand is None or fw.brand == filter_brand) and not fw.logging: | 
			
		
	
		
			
				
					|  |  |  |  |       addr = fw.address | 
			
		
	
		
			
				
					|  |  |  |  |       sub_addr = fw.subAddress if fw.subAddress != 0 else None | 
			
		
	
		
			
				
					|  |  |  |  |       fw_versions_dict[(addr, sub_addr)].add(fw.fwVersion) | 
			
		
	
		
			
				
					|  |  |  |  |     if fw.logging: | 
			
		
	
		
			
				
					|  |  |  |  |       continue | 
			
		
	
		
			
				
					|  |  |  |  |     if filter_brand is not None and fw.brand != filter_brand: | 
			
		
	
		
			
				
					|  |  |  |  |       continue | 
			
		
	
		
			
				
					|  |  |  |  |     addr = fw.address | 
			
		
	
		
			
				
					|  |  |  |  |     sub_addr = fw.subAddress if fw.subAddress != 0 else None | 
			
		
	
		
			
				
					|  |  |  |  |     fw_versions_dict[(addr, sub_addr)].add(fw.fwVersion) | 
			
		
	
		
			
				
					|  |  |  |  |   return dict(fw_versions_dict) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  |  | 
 |