add EventObserver