make use of CustomEvent