Observer / Oservable pattern creation   -   update 2