use event source properly