readSingleton, updateSingleton