add event subscribe event function