take care to initialize elements with event handlers