public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            object myType = null;
            // This is really tacky, but I am not sure how else to grab the real type and real name.
            string EnumName = Regex.Replace(objectType.FullName, @".*SurveyMonkey\.(.*), Survey.*", "$1");
            Type   enumType = EnumRenameMap.GetEnumObject(EnumName);

            if (enumType == null)
            {
                enumType = objectType;
                EnumName = objectType.Name;
            }

            string mappedValue = EnumRenameMap.MappedValue(EnumName, (string)reader.Value);

            myType = Enum.Parse(enumType, mappedValue);

            return(myType);
        }