mς ώΜͺJc@s1dkTdkTd„Zdefd„ƒYZdS((t*cCs1ttƒ}ttƒ}ttƒ}|||fS(N(ttop_devices_per_classttypettypesthosts_per_classtcountttop_vendors_per_classtvendors(tclsRRR((t0/usr/share/smolt/smoon/hardware/model/reports.pytclasses_reports   tByClasscBs#tZd„Zd„Zd„ZRS(NcCs h|_dS(N(tselftdata(R ((R t__init__ sc Csvtƒ}h}h} h}d}tƒ}xE|D]=} | i}t |ƒ\}}}||||f|i|