+ message_summary *Msg;
+
+ at = GetNewHashPos(ScanMe, 0);
+ while (GetNextHashPos(ScanMe, at, &HKLen, &HashKey, &vMsg)) {
+ /* Are you a new message, or an old message? */
+ Msg = (message_summary*) vMsg;
+ if (Reverse && IsInMSetList(MatchMSet, Msg->msgnum)) {
+ Msg->Flags = Msg->Flags | FlagToSet;
+ }
+ else if (!Reverse && !IsInMSetList(MatchMSet, Msg->msgnum)) {
+ Msg->Flags = Msg->Flags | FlagToSet;
+ }
+ }
+ DeleteHashPos(&at);
+}
+
+
+void load_seen_flags(void)
+{