change default to use event dispatch