starting refactoring of elitism
elitism refactored