sclass LatestAppearance { Set lastSet; new Map latestAppearance; L recordAndSort(Set set) { for (A a : setMinusSet(set, lastSet)) latestAppearance.put(a, sysNow()); lastSet = set; ret sortedByMapLookupDesc(set, latestAppearance); } }