Singleton should use `getInstance` and `destroyInstance`