refactorying strong - cons