function DataStoreStage._afterLoadGetAndApplyStagedData(k,M,v,s)if k._dataToSave and k._dataToSave[M]~=nil then if k._dataToSave[M]==DataStoreDeleteToken then return s else return k._dataToSave[M]end elseif k._stores[M]then if k._stores[M]:HasWritableData()then local s=k._stores[M]:GetNewWriter()local N=Table.deepCopy(v[M]or{})s:WriteMerge(N)return N end end if v[M]==nil then return s else return v[M]end end

function DataStoreStage:_afterLoadGetAndApplyStagedData(name, data, defaultValue)
	if self._dataToSave and self._dataToSave[name] ~= nil then
		if self._dataToSave[name] == DataStoreDeleteToken then
			return defaultValue
		else
			return self._dataToSave[name]
		end
	elseif self._stores[name] then
		if self._stores[name]:HasWritableData() then
			local writer = self._stores[name]:GetNewWriter()
			local original = Table.deepCopy(data[name] or {})
			writer:WriteMerge(original)
			return original
		end
	end

	if data[name] == nil then
		return defaultValue
	else
		return data[name]
	end
end
