@ Refactoring collectable element class