!7 sclass CentralRestartBotLog extends DynCalculatedList { L calc() { new MultiSet ms; for (S s : tlft(centralRestartLogSince_raw(unixTime_startOfToday()*1000))) { SS map = parseEqualParameters(s); ms.add(map.get('programID)); } ret mapMultiSet(ms, func(S programID, int count) -> S { snippetWithTitle_cached(programID) + ": " + count }); } }