add session-persistent support