Added events implementation