refactoring element classes with Chris