Gave elementTypes their own service for better maintainable code