refactor & cljs included
list events