adding singleton pattern demo