don't save state in middleware