!752 static PersistentLog msgs; static class McMsg { S miniChat, user, text; long when; } static new MultiMap byMiniChat; p { msgs = new PersistentLog("msgs.log"); for (McMsg m : msgs) byMiniChat.put(m.miniChat, m); } synchronized answer { if (match("mini chat size", s) || match("minichat size", s)) ret n(l(msgs), "msg") + ", " + n(l(byMiniChat.keySet()), "mini-chat"); } static synchronized void addToMiniChat(S miniChat, S user, S text) { new McMsg m; m.miniChat = miniChat; m.user = user; m.text = text; m.when = now(); byMiniChat.put(m.miniChat, m); msgs.add(m); } static synchronized L listMiniChat(S miniChat) { ret cloneList(byMiniChat.get(miniChat)); }