add settings to replace file IO