Ñò ÃÅ]Kc@s7ddkTddkTd„Zdefd„ƒYZdS(iÿÿÿÿ(t*cCs1ttƒ}ttƒ}ttƒ}|||fS(N(ttop_devices_per_classttypethosts_per_classttop_vendors_per_class(tclsttypestcounttvendors((s./usr/local/www/smolt/hardware/model/reports.pytclasses_reports   tByClasscBs#eZd„Zd„Zd„ZRS(cCs h|_dS(N(tdata(tself((s./usr/local/www/smolt/hardware/model/reports.pyt__init__ sc Csvtƒ}h}h}h}d}tƒ}xE|D]=}|i}t|ƒ\}} } || || f|i|s