Implemented observer pattern
..