@Override
        public Type deserialize(JsonParser parser, DeserializationContext deserializationContext)
            throws IOException
        {
            Type result = new Type();
            JsonToken token = parser.currentToken();
            if (token == JsonToken.START_OBJECT) {
                result.value = parser.readValueAs(TypeReference.class);
            } else {
                if (token == JsonToken.VALUE_STRING) {
                    result.value = parser.readValueAs(String.class);
                } else {
                    deserializationContext.handleUnexpectedToken(Object.class, parser);
                }
            }
            return result;
        }
@Override
        public Type deserialize(JsonParser parser, DeserializationContext deserializationContext)