creating singleton observer