works better when you actually remove messages from the register