observer example added