the 'ELEMENT' magic string is used a lot of places, maybe make it a package private const?