add session support the right way