more notes on observer