explicit use of EventTarget
remove unused instance vars
I don't actually need default here
void return type
type for elem
better var name
\t to \s