hasChanged and NotifyObserver() ;D