better session switch