Added event implementation