Session method

It works, ready to merge