decimal IJsonFormatterSpecReader <decimal, JsonReaderUtf8> .DeserializeSpec(JsonReaderUtf8 reader, IJsonFormatterResolver formatterResolver)
        {
            var token = reader.GetCurrentJsonToken();

            if (token == JsonToken.Number)
            {
                var number = reader.ReadNumberSegment();
                return(decimal.Parse(StringEncoding.UTF8.GetString(number.Array, number.Offset, number.Count), NumberStyles.Float, CultureInfo.InvariantCulture));
            }
            else if (token == JsonToken.String)
            {
                return(decimal.Parse(reader.ReadString(), NumberStyles.Float, CultureInfo.InvariantCulture));
            }
            else
            {
                throw new InvalidOperationException("Invalid Json Token for DecimalFormatter:" + token);
            }
        }