removed modes from persistor, instead checking for ->exists