function Option.Deserialize(W)assert(type(W)=="\116\097\098\108\101"and W.ClassName==CLASSNAME,"\073\110\118\097\108\105\100 \100\097\116\097 \102\111\114 \100\101\115\101\114\105\097\108\105\122\105\110\103 \079\112\116\105\111\110")return W.Value==nil and Option.None or Option.Some(W.Value)end
--[=[
	@param data table
	@return Option
	Deserializes the data into an Option. This data should have come from
	the `option:Serialize()` method.
]=]
function Option.Deserialize(data) -- type data = {ClassName: string, Value: any}
	assert(type(data) == "table" and data.ClassName == CLASSNAME, "Invalid data for deserializing Option")
	return data.Value == nil and Option.None or Option.Some(data.Value)
end
