login + code reorganisation