refactoring: initialize all "self" attributes