insure only one instance is called