subject and observer
Subject::removeObserver