updated event handlers to be generic