/*
 * THIS FILE WAS AUTOMATICALLY GENERATED, DO NOT EDIT.
 *
 * This file was generated by the dom/make_names.pl script.
 *
 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2013 Apple Inc.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

#include "config.h"

#ifdef SKIP_STATIC_CONSTRUCTORS_ON_GCC
#define DOM_SVG_NAMES_HIDE_GLOBALS 1
#else
#define QNAME_DEFAULT_CONSTRUCTOR 1
#endif

#include "SVGNames.h"

namespace WebCore {

namespace SVGNames {

using namespace WebCore;

MainThreadLazyNeverDestroyed<const AtomString> svgNamespaceURI;

#if COMPILER(MSVC)
#pragma warning(push)
#pragma warning(disable: 4307)
#endif

static constexpr StringImpl::StaticStringImpl aData("a");
static constexpr StringImpl::StaticStringImpl accent_heightData("accent-height");
static constexpr StringImpl::StaticStringImpl accumulateData("accumulate");
static constexpr StringImpl::StaticStringImpl additiveData("additive");
static constexpr StringImpl::StaticStringImpl alignment_baselineData("alignment-baseline");
static constexpr StringImpl::StaticStringImpl alphabeticData("alphabetic");
static constexpr StringImpl::StaticStringImpl altGlyphData("altGlyph");
static constexpr StringImpl::StaticStringImpl altGlyphDefData("altGlyphDef");
static constexpr StringImpl::StaticStringImpl altGlyphItemData("altGlyphItem");
static constexpr StringImpl::StaticStringImpl amplitudeData("amplitude");
static constexpr StringImpl::StaticStringImpl animateData("animate");
static constexpr StringImpl::StaticStringImpl animateColorData("animateColor");
static constexpr StringImpl::StaticStringImpl animateMotionData("animateMotion");
static constexpr StringImpl::StaticStringImpl animateTransformData("animateTransform");
static constexpr StringImpl::StaticStringImpl arabic_formData("arabic-form");
static constexpr StringImpl::StaticStringImpl ascentData("ascent");
static constexpr StringImpl::StaticStringImpl attributeNameData("attributeName");
static constexpr StringImpl::StaticStringImpl attributeTypeData("attributeType");
static constexpr StringImpl::StaticStringImpl autofocusData("autofocus");
static constexpr StringImpl::StaticStringImpl azimuthData("azimuth");
static constexpr StringImpl::StaticStringImpl baseFrequencyData("baseFrequency");
static constexpr StringImpl::StaticStringImpl baseProfileData("baseProfile");
static constexpr StringImpl::StaticStringImpl baseline_shiftData("baseline-shift");
static constexpr StringImpl::StaticStringImpl bboxData("bbox");
static constexpr StringImpl::StaticStringImpl beginData("begin");
static constexpr StringImpl::StaticStringImpl biasData("bias");
static constexpr StringImpl::StaticStringImpl buffered_renderingData("buffered-rendering");
static constexpr StringImpl::StaticStringImpl byData("by");
static constexpr StringImpl::StaticStringImpl calcModeData("calcMode");
static constexpr StringImpl::StaticStringImpl cap_heightData("cap-height");
static constexpr StringImpl::StaticStringImpl circleData("circle");
static constexpr StringImpl::StaticStringImpl clipData("clip");
static constexpr StringImpl::StaticStringImpl clipPathData("clipPath");
static constexpr StringImpl::StaticStringImpl clipPathUnitsData("clipPathUnits");
static constexpr StringImpl::StaticStringImpl clip_pathData("clip-path");
static constexpr StringImpl::StaticStringImpl clip_ruleData("clip-rule");
static constexpr StringImpl::StaticStringImpl colorData("color");
static constexpr StringImpl::StaticStringImpl color_interpolationData("color-interpolation");
static constexpr StringImpl::StaticStringImpl color_interpolation_filtersData("color-interpolation-filters");
static constexpr StringImpl::StaticStringImpl contentScriptTypeData("contentScriptType");
static constexpr StringImpl::StaticStringImpl contentStyleTypeData("contentStyleType");
static constexpr StringImpl::StaticStringImpl cursorData("cursor");
static constexpr StringImpl::StaticStringImpl cxData("cx");
static constexpr StringImpl::StaticStringImpl cyData("cy");
static constexpr StringImpl::StaticStringImpl dData("d");
static constexpr StringImpl::StaticStringImpl defsData("defs");
static constexpr StringImpl::StaticStringImpl descData("desc");
static constexpr StringImpl::StaticStringImpl descentData("descent");
static constexpr StringImpl::StaticStringImpl diffuseConstantData("diffuseConstant");
static constexpr StringImpl::StaticStringImpl directionData("direction");
static constexpr StringImpl::StaticStringImpl displayData("display");
static constexpr StringImpl::StaticStringImpl divisorData("divisor");
static constexpr StringImpl::StaticStringImpl dominant_baselineData("dominant-baseline");
static constexpr StringImpl::StaticStringImpl durData("dur");
static constexpr StringImpl::StaticStringImpl dxData("dx");
static constexpr StringImpl::StaticStringImpl dyData("dy");
static constexpr StringImpl::StaticStringImpl edgeModeData("edgeMode");
static constexpr StringImpl::StaticStringImpl elevationData("elevation");
static constexpr StringImpl::StaticStringImpl ellipseData("ellipse");
static constexpr StringImpl::StaticStringImpl endData("end");
static constexpr StringImpl::StaticStringImpl exponentData("exponent");
static constexpr StringImpl::StaticStringImpl externalResourcesRequiredData("externalResourcesRequired");
static constexpr StringImpl::StaticStringImpl feBlendData("feBlend");
static constexpr StringImpl::StaticStringImpl feColorMatrixData("feColorMatrix");
static constexpr StringImpl::StaticStringImpl feComponentTransferData("feComponentTransfer");
static constexpr StringImpl::StaticStringImpl feCompositeData("feComposite");
static constexpr StringImpl::StaticStringImpl feConvolveMatrixData("feConvolveMatrix");
static constexpr StringImpl::StaticStringImpl feDiffuseLightingData("feDiffuseLighting");
static constexpr StringImpl::StaticStringImpl feDisplacementMapData("feDisplacementMap");
static constexpr StringImpl::StaticStringImpl feDistantLightData("feDistantLight");
static constexpr StringImpl::StaticStringImpl feDropShadowData("feDropShadow");
static constexpr StringImpl::StaticStringImpl feFloodData("feFlood");
static constexpr StringImpl::StaticStringImpl feFuncAData("feFuncA");
static constexpr StringImpl::StaticStringImpl feFuncBData("feFuncB");
static constexpr StringImpl::StaticStringImpl feFuncGData("feFuncG");
static constexpr StringImpl::StaticStringImpl feFuncRData("feFuncR");
static constexpr StringImpl::StaticStringImpl feGaussianBlurData("feGaussianBlur");
static constexpr StringImpl::StaticStringImpl feImageData("feImage");
static constexpr StringImpl::StaticStringImpl feMergeData("feMerge");
static constexpr StringImpl::StaticStringImpl feMergeNodeData("feMergeNode");
static constexpr StringImpl::StaticStringImpl feMorphologyData("feMorphology");
static constexpr StringImpl::StaticStringImpl feOffsetData("feOffset");
static constexpr StringImpl::StaticStringImpl fePointLightData("fePointLight");
static constexpr StringImpl::StaticStringImpl feSpecularLightingData("feSpecularLighting");
static constexpr StringImpl::StaticStringImpl feSpotLightData("feSpotLight");
static constexpr StringImpl::StaticStringImpl feTileData("feTile");
static constexpr StringImpl::StaticStringImpl feTurbulenceData("feTurbulence");
static constexpr StringImpl::StaticStringImpl fillData("fill");
static constexpr StringImpl::StaticStringImpl fill_opacityData("fill-opacity");
static constexpr StringImpl::StaticStringImpl fill_ruleData("fill-rule");
static constexpr StringImpl::StaticStringImpl filterData("filter");
static constexpr StringImpl::StaticStringImpl filterUnitsData("filterUnits");
static constexpr StringImpl::StaticStringImpl flood_colorData("flood-color");
static constexpr StringImpl::StaticStringImpl flood_opacityData("flood-opacity");
static constexpr StringImpl::StaticStringImpl fontData("font");
static constexpr StringImpl::StaticStringImpl font_faceData("font-face");
static constexpr StringImpl::StaticStringImpl font_face_formatData("font-face-format");
static constexpr StringImpl::StaticStringImpl font_face_nameData("font-face-name");
static constexpr StringImpl::StaticStringImpl font_face_srcData("font-face-src");
static constexpr StringImpl::StaticStringImpl font_face_uriData("font-face-uri");
static constexpr StringImpl::StaticStringImpl font_familyData("font-family");
static constexpr StringImpl::StaticStringImpl font_sizeData("font-size");
static constexpr StringImpl::StaticStringImpl font_size_adjustData("font-size-adjust");
static constexpr StringImpl::StaticStringImpl font_stretchData("font-stretch");
static constexpr StringImpl::StaticStringImpl font_styleData("font-style");
static constexpr StringImpl::StaticStringImpl font_variantData("font-variant");
static constexpr StringImpl::StaticStringImpl font_weightData("font-weight");
static constexpr StringImpl::StaticStringImpl foreignObjectData("foreignObject");
static constexpr StringImpl::StaticStringImpl formatData("format");
static constexpr StringImpl::StaticStringImpl frData("fr");
static constexpr StringImpl::StaticStringImpl fromData("from");
static constexpr StringImpl::StaticStringImpl fxData("fx");
static constexpr StringImpl::StaticStringImpl fyData("fy");
static constexpr StringImpl::StaticStringImpl gData("g");
static constexpr StringImpl::StaticStringImpl g1Data("g1");
static constexpr StringImpl::StaticStringImpl g2Data("g2");
static constexpr StringImpl::StaticStringImpl glyphData("glyph");
static constexpr StringImpl::StaticStringImpl glyphRefData("glyphRef");
static constexpr StringImpl::StaticStringImpl glyph_nameData("glyph-name");
static constexpr StringImpl::StaticStringImpl glyph_orientation_horizontalData("glyph-orientation-horizontal");
static constexpr StringImpl::StaticStringImpl glyph_orientation_verticalData("glyph-orientation-vertical");
static constexpr StringImpl::StaticStringImpl gradientTransformData("gradientTransform");
static constexpr StringImpl::StaticStringImpl gradientUnitsData("gradientUnits");
static constexpr StringImpl::StaticStringImpl hangingData("hanging");
static constexpr StringImpl::StaticStringImpl heightData("height");
static constexpr StringImpl::StaticStringImpl hkernData("hkern");
static constexpr StringImpl::StaticStringImpl horiz_adv_xData("horiz-adv-x");
static constexpr StringImpl::StaticStringImpl horiz_origin_xData("horiz-origin-x");
static constexpr StringImpl::StaticStringImpl horiz_origin_yData("horiz-origin-y");
static constexpr StringImpl::StaticStringImpl hrefData("href");
static constexpr StringImpl::StaticStringImpl ideographicData("ideographic");
static constexpr StringImpl::StaticStringImpl imageData("image");
static constexpr StringImpl::StaticStringImpl image_renderingData("image-rendering");
static constexpr StringImpl::StaticStringImpl inData("in");
static constexpr StringImpl::StaticStringImpl in2Data("in2");
static constexpr StringImpl::StaticStringImpl interceptData("intercept");
static constexpr StringImpl::StaticStringImpl kData("k");
static constexpr StringImpl::StaticStringImpl k1Data("k1");
static constexpr StringImpl::StaticStringImpl k2Data("k2");
static constexpr StringImpl::StaticStringImpl k3Data("k3");
static constexpr StringImpl::StaticStringImpl k4Data("k4");
static constexpr StringImpl::StaticStringImpl kernelMatrixData("kernelMatrix");
static constexpr StringImpl::StaticStringImpl kernelUnitLengthData("kernelUnitLength");
static constexpr StringImpl::StaticStringImpl kerningData("kerning");
static constexpr StringImpl::StaticStringImpl keyPointsData("keyPoints");
static constexpr StringImpl::StaticStringImpl keySplinesData("keySplines");
static constexpr StringImpl::StaticStringImpl keyTimesData("keyTimes");
static constexpr StringImpl::StaticStringImpl langData("lang");
static constexpr StringImpl::StaticStringImpl lengthAdjustData("lengthAdjust");
static constexpr StringImpl::StaticStringImpl letter_spacingData("letter-spacing");
static constexpr StringImpl::StaticStringImpl lighting_colorData("lighting-color");
static constexpr StringImpl::StaticStringImpl limitingConeAngleData("limitingConeAngle");
static constexpr StringImpl::StaticStringImpl lineData("line");
static constexpr StringImpl::StaticStringImpl linearGradientData("linearGradient");
static constexpr StringImpl::StaticStringImpl localData("local");
static constexpr StringImpl::StaticStringImpl markerData("marker");
static constexpr StringImpl::StaticStringImpl markerHeightData("markerHeight");
static constexpr StringImpl::StaticStringImpl markerUnitsData("markerUnits");
static constexpr StringImpl::StaticStringImpl markerWidthData("markerWidth");
static constexpr StringImpl::StaticStringImpl marker_endData("marker-end");
static constexpr StringImpl::StaticStringImpl marker_midData("marker-mid");
static constexpr StringImpl::StaticStringImpl marker_startData("marker-start");
static constexpr StringImpl::StaticStringImpl maskData("mask");
static constexpr StringImpl::StaticStringImpl maskContentUnitsData("maskContentUnits");
static constexpr StringImpl::StaticStringImpl maskUnitsData("maskUnits");
static constexpr StringImpl::StaticStringImpl mask_typeData("mask-type");
static constexpr StringImpl::StaticStringImpl mathematicalData("mathematical");
static constexpr StringImpl::StaticStringImpl maxData("max");
static constexpr StringImpl::StaticStringImpl mediaData("media");
static constexpr StringImpl::StaticStringImpl metadataData("metadata");
static constexpr StringImpl::StaticStringImpl methodData("method");
static constexpr StringImpl::StaticStringImpl minData("min");
static constexpr StringImpl::StaticStringImpl missing_glyphData("missing-glyph");
static constexpr StringImpl::StaticStringImpl modeData("mode");
static constexpr StringImpl::StaticStringImpl mpathData("mpath");
static constexpr StringImpl::StaticStringImpl nameData("name");
static constexpr StringImpl::StaticStringImpl numOctavesData("numOctaves");
static constexpr StringImpl::StaticStringImpl offsetData("offset");
static constexpr StringImpl::StaticStringImpl onbeginData("onbegin");
static constexpr StringImpl::StaticStringImpl onendData("onend");
static constexpr StringImpl::StaticStringImpl onzoomData("onzoom");
static constexpr StringImpl::StaticStringImpl opacityData("opacity");
static constexpr StringImpl::StaticStringImpl operatorData("operator");
static constexpr StringImpl::StaticStringImpl orderData("order");
static constexpr StringImpl::StaticStringImpl orientData("orient");
static constexpr StringImpl::StaticStringImpl orientationData("orientation");
static constexpr StringImpl::StaticStringImpl originData("origin");
static constexpr StringImpl::StaticStringImpl overflowData("overflow");
static constexpr StringImpl::StaticStringImpl overline_positionData("overline-position");
static constexpr StringImpl::StaticStringImpl overline_thicknessData("overline-thickness");
static constexpr StringImpl::StaticStringImpl paint_orderData("paint-order");
static constexpr StringImpl::StaticStringImpl panose_1Data("panose-1");
static constexpr StringImpl::StaticStringImpl pathData("path");
static constexpr StringImpl::StaticStringImpl pathLengthData("pathLength");
static constexpr StringImpl::StaticStringImpl patternData("pattern");
static constexpr StringImpl::StaticStringImpl patternContentUnitsData("patternContentUnits");
static constexpr StringImpl::StaticStringImpl patternTransformData("patternTransform");
static constexpr StringImpl::StaticStringImpl patternUnitsData("patternUnits");
static constexpr StringImpl::StaticStringImpl pointer_eventsData("pointer-events");
static constexpr StringImpl::StaticStringImpl pointsData("points");
static constexpr StringImpl::StaticStringImpl pointsAtXData("pointsAtX");
static constexpr StringImpl::StaticStringImpl pointsAtYData("pointsAtY");
static constexpr StringImpl::StaticStringImpl pointsAtZData("pointsAtZ");
static constexpr StringImpl::StaticStringImpl polygonData("polygon");
static constexpr StringImpl::StaticStringImpl polylineData("polyline");
static constexpr StringImpl::StaticStringImpl preserveAlphaData("preserveAlpha");
static constexpr StringImpl::StaticStringImpl preserveAspectRatioData("preserveAspectRatio");
static constexpr StringImpl::StaticStringImpl primitiveUnitsData("primitiveUnits");
static constexpr StringImpl::StaticStringImpl rData("r");
static constexpr StringImpl::StaticStringImpl radialGradientData("radialGradient");
static constexpr StringImpl::StaticStringImpl radiusData("radius");
static constexpr StringImpl::StaticStringImpl rectData("rect");
static constexpr StringImpl::StaticStringImpl refXData("refX");
static constexpr StringImpl::StaticStringImpl refYData("refY");
static constexpr StringImpl::StaticStringImpl relData("rel");
static constexpr StringImpl::StaticStringImpl rendering_intentData("rendering-intent");
static constexpr StringImpl::StaticStringImpl repeatCountData("repeatCount");
static constexpr StringImpl::StaticStringImpl repeatDurData("repeatDur");
static constexpr StringImpl::StaticStringImpl requiredExtensionsData("requiredExtensions");
static constexpr StringImpl::StaticStringImpl requiredFeaturesData("requiredFeatures");
static constexpr StringImpl::StaticStringImpl restartData("restart");
static constexpr StringImpl::StaticStringImpl resultData("result");
static constexpr StringImpl::StaticStringImpl rotateData("rotate");
static constexpr StringImpl::StaticStringImpl rxData("rx");
static constexpr StringImpl::StaticStringImpl ryData("ry");
static constexpr StringImpl::StaticStringImpl scaleData("scale");
static constexpr StringImpl::StaticStringImpl scriptData("script");
static constexpr StringImpl::StaticStringImpl seedData("seed");
static constexpr StringImpl::StaticStringImpl setData("set");
static constexpr StringImpl::StaticStringImpl shape_renderingData("shape-rendering");
static constexpr StringImpl::StaticStringImpl slopeData("slope");
static constexpr StringImpl::StaticStringImpl spacingData("spacing");
static constexpr StringImpl::StaticStringImpl specularConstantData("specularConstant");
static constexpr StringImpl::StaticStringImpl specularExponentData("specularExponent");
static constexpr StringImpl::StaticStringImpl spreadMethodData("spreadMethod");
static constexpr StringImpl::StaticStringImpl startOffsetData("startOffset");
static constexpr StringImpl::StaticStringImpl stdDeviationData("stdDeviation");
static constexpr StringImpl::StaticStringImpl stemhData("stemh");
static constexpr StringImpl::StaticStringImpl stemvData("stemv");
static constexpr StringImpl::StaticStringImpl stitchTilesData("stitchTiles");
static constexpr StringImpl::StaticStringImpl stopData("stop");
static constexpr StringImpl::StaticStringImpl stop_colorData("stop-color");
static constexpr StringImpl::StaticStringImpl stop_opacityData("stop-opacity");
static constexpr StringImpl::StaticStringImpl strikethrough_positionData("strikethrough-position");
static constexpr StringImpl::StaticStringImpl strikethrough_thicknessData("strikethrough-thickness");
static constexpr StringImpl::StaticStringImpl strokeData("stroke");
static constexpr StringImpl::StaticStringImpl stroke_dasharrayData("stroke-dasharray");
static constexpr StringImpl::StaticStringImpl stroke_dashoffsetData("stroke-dashoffset");
static constexpr StringImpl::StaticStringImpl stroke_linecapData("stroke-linecap");
static constexpr StringImpl::StaticStringImpl stroke_linejoinData("stroke-linejoin");
static constexpr StringImpl::StaticStringImpl stroke_miterlimitData("stroke-miterlimit");
static constexpr StringImpl::StaticStringImpl stroke_opacityData("stroke-opacity");
static constexpr StringImpl::StaticStringImpl stroke_widthData("stroke-width");
static constexpr StringImpl::StaticStringImpl styleData("style");
static constexpr StringImpl::StaticStringImpl surfaceScaleData("surfaceScale");
static constexpr StringImpl::StaticStringImpl svgData("svg");
static constexpr StringImpl::StaticStringImpl switchData("switch");
static constexpr StringImpl::StaticStringImpl symbolData("symbol");
static constexpr StringImpl::StaticStringImpl systemLanguageData("systemLanguage");
static constexpr StringImpl::StaticStringImpl tableValuesData("tableValues");
static constexpr StringImpl::StaticStringImpl targetData("target");
static constexpr StringImpl::StaticStringImpl targetXData("targetX");
static constexpr StringImpl::StaticStringImpl targetYData("targetY");
static constexpr StringImpl::StaticStringImpl textData("text");
static constexpr StringImpl::StaticStringImpl textLengthData("textLength");
static constexpr StringImpl::StaticStringImpl textPathData("textPath");
static constexpr StringImpl::StaticStringImpl text_anchorData("text-anchor");
static constexpr StringImpl::StaticStringImpl text_decorationData("text-decoration");
static constexpr StringImpl::StaticStringImpl text_renderingData("text-rendering");
static constexpr StringImpl::StaticStringImpl titleData("title");
static constexpr StringImpl::StaticStringImpl toData("to");
static constexpr StringImpl::StaticStringImpl transformData("transform");
static constexpr StringImpl::StaticStringImpl transform_originData("transform-origin");
static constexpr StringImpl::StaticStringImpl trefData("tref");
static constexpr StringImpl::StaticStringImpl tspanData("tspan");
static constexpr StringImpl::StaticStringImpl typeData("type");
static constexpr StringImpl::StaticStringImpl u1Data("u1");
static constexpr StringImpl::StaticStringImpl u2Data("u2");
static constexpr StringImpl::StaticStringImpl underline_positionData("underline-position");
static constexpr StringImpl::StaticStringImpl underline_thicknessData("underline-thickness");
static constexpr StringImpl::StaticStringImpl unicodeData("unicode");
static constexpr StringImpl::StaticStringImpl unicode_bidiData("unicode-bidi");
static constexpr StringImpl::StaticStringImpl unicode_rangeData("unicode-range");
static constexpr StringImpl::StaticStringImpl units_per_emData("units-per-em");
static constexpr StringImpl::StaticStringImpl useData("use");
static constexpr StringImpl::StaticStringImpl v_alphabeticData("v-alphabetic");
static constexpr StringImpl::StaticStringImpl v_hangingData("v-hanging");
static constexpr StringImpl::StaticStringImpl v_ideographicData("v-ideographic");
static constexpr StringImpl::StaticStringImpl v_mathematicalData("v-mathematical");
static constexpr StringImpl::StaticStringImpl valuesData("values");
static constexpr StringImpl::StaticStringImpl vector_effectData("vector-effect");
static constexpr StringImpl::StaticStringImpl versionData("version");
static constexpr StringImpl::StaticStringImpl vert_adv_yData("vert-adv-y");
static constexpr StringImpl::StaticStringImpl vert_origin_xData("vert-origin-x");
static constexpr StringImpl::StaticStringImpl vert_origin_yData("vert-origin-y");
static constexpr StringImpl::StaticStringImpl viewData("view");
static constexpr StringImpl::StaticStringImpl viewBoxData("viewBox");
static constexpr StringImpl::StaticStringImpl viewTargetData("viewTarget");
static constexpr StringImpl::StaticStringImpl visibilityData("visibility");
static constexpr StringImpl::StaticStringImpl vkernData("vkern");
static constexpr StringImpl::StaticStringImpl widthData("width");
static constexpr StringImpl::StaticStringImpl widthsData("widths");
static constexpr StringImpl::StaticStringImpl word_spacingData("word-spacing");
static constexpr StringImpl::StaticStringImpl writing_modeData("writing-mode");
static constexpr StringImpl::StaticStringImpl xData("x");
static constexpr StringImpl::StaticStringImpl x1Data("x1");
static constexpr StringImpl::StaticStringImpl x2Data("x2");
static constexpr StringImpl::StaticStringImpl xChannelSelectorData("xChannelSelector");
static constexpr StringImpl::StaticStringImpl x_heightData("x-height");
static constexpr StringImpl::StaticStringImpl yData("y");
static constexpr StringImpl::StaticStringImpl y1Data("y1");
static constexpr StringImpl::StaticStringImpl y2Data("y2");
static constexpr StringImpl::StaticStringImpl yChannelSelectorData("yChannelSelector");
static constexpr StringImpl::StaticStringImpl zData("z");
static constexpr StringImpl::StaticStringImpl zoomAndPanData("zoomAndPan");

#if COMPILER(MSVC)
#pragma warning(pop)
#endif

// Tags
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> aTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> altGlyphTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> altGlyphDefTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> altGlyphItemTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> animateTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> animateColorTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> animateMotionTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> animateTransformTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> circleTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> clipPathTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> cursorTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> defsTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> descTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> ellipseTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feBlendTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feColorMatrixTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feComponentTransferTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feCompositeTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feConvolveMatrixTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feDiffuseLightingTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feDisplacementMapTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feDistantLightTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feDropShadowTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feFloodTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feFuncATag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feFuncBTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feFuncGTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feFuncRTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feGaussianBlurTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feImageTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feMergeTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feMergeNodeTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feMorphologyTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feOffsetTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> fePointLightTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feSpecularLightingTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feSpotLightTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feTileTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> feTurbulenceTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> filterTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> fontTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> font_faceTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> font_face_formatTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> font_face_nameTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> font_face_srcTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> font_face_uriTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> foreignObjectTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> gTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> glyphTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> glyphRefTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> hkernTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> imageTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> lineTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> linearGradientTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> markerTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> maskTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> metadataTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> missing_glyphTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> mpathTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> pathTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> patternTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> polygonTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> polylineTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> radialGradientTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> rectTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> scriptTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> setTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> stopTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> styleTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> svgTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> switchTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> symbolTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> textTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> textPathTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> titleTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> trefTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> tspanTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> useTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> viewTag;
WEBCORE_EXPORT LazyNeverDestroyed<const SVGQualifiedName> vkernTag;


const WebCore::SVGQualifiedName* const* getSVGTags()
{
    static const WebCore::SVGQualifiedName* const SVGTags[] = {
        &aTag.get(),
        &altGlyphTag.get(),
        &altGlyphDefTag.get(),
        &altGlyphItemTag.get(),
        &animateTag.get(),
        &animateColorTag.get(),
        &animateMotionTag.get(),
        &animateTransformTag.get(),
        &circleTag.get(),
        &clipPathTag.get(),
        &cursorTag.get(),
        &defsTag.get(),
        &descTag.get(),
        &ellipseTag.get(),
        &feBlendTag.get(),
        &feColorMatrixTag.get(),
        &feComponentTransferTag.get(),
        &feCompositeTag.get(),
        &feConvolveMatrixTag.get(),
        &feDiffuseLightingTag.get(),
        &feDisplacementMapTag.get(),
        &feDistantLightTag.get(),
        &feDropShadowTag.get(),
        &feFloodTag.get(),
        &feFuncATag.get(),
        &feFuncBTag.get(),
        &feFuncGTag.get(),
        &feFuncRTag.get(),
        &feGaussianBlurTag.get(),
        &feImageTag.get(),
        &feMergeTag.get(),
        &feMergeNodeTag.get(),
        &feMorphologyTag.get(),
        &feOffsetTag.get(),
        &fePointLightTag.get(),
        &feSpecularLightingTag.get(),
        &feSpotLightTag.get(),
        &feTileTag.get(),
        &feTurbulenceTag.get(),
        &filterTag.get(),
        &fontTag.get(),
        &font_faceTag.get(),
        &font_face_formatTag.get(),
        &font_face_nameTag.get(),
        &font_face_srcTag.get(),
        &font_face_uriTag.get(),
        &foreignObjectTag.get(),
        &gTag.get(),
        &glyphTag.get(),
        &glyphRefTag.get(),
        &hkernTag.get(),
        &imageTag.get(),
        &lineTag.get(),
        &linearGradientTag.get(),
        &markerTag.get(),
        &maskTag.get(),
        &metadataTag.get(),
        &missing_glyphTag.get(),
        &mpathTag.get(),
        &pathTag.get(),
        &patternTag.get(),
        &polygonTag.get(),
        &polylineTag.get(),
        &radialGradientTag.get(),
        &rectTag.get(),
        &scriptTag.get(),
        &setTag.get(),
        &stopTag.get(),
        &styleTag.get(),
        &svgTag.get(),
        &switchTag.get(),
        &symbolTag.get(),
        &textTag.get(),
        &textPathTag.get(),
        &titleTag.get(),
        &trefTag.get(),
        &tspanTag.get(),
        &useTag.get(),
        &viewTag.get(),
        &vkernTag.get(),
    };
    return SVGTags;
}

// Attributes
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> accent_heightAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> accumulateAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> additiveAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> alignment_baselineAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> alphabeticAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> amplitudeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> animateAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> arabic_formAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> ascentAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> attributeNameAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> attributeTypeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> autofocusAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> azimuthAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> baseFrequencyAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> baseProfileAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> baseline_shiftAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> bboxAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> beginAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> biasAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> buffered_renderingAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> byAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> calcModeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> cap_heightAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> clipAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> clipPathUnitsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> clip_pathAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> clip_ruleAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> colorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> color_interpolationAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> color_interpolation_filtersAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> contentScriptTypeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> contentStyleTypeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> cursorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> cxAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> cyAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> dAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> descentAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> diffuseConstantAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> directionAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> displayAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> divisorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> dominant_baselineAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> durAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> dxAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> dyAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> edgeModeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> elevationAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> endAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> exponentAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> externalResourcesRequiredAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> fillAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> fill_opacityAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> fill_ruleAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> filterAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> filterUnitsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> flood_colorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> flood_opacityAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> font_familyAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> font_sizeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> font_size_adjustAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> font_stretchAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> font_styleAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> font_variantAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> font_weightAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> formatAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> frAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> fromAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> fxAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> fyAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> g1Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> g2Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> glyphRefAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> glyph_nameAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> glyph_orientation_horizontalAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> glyph_orientation_verticalAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> gradientTransformAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> gradientUnitsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> hangingAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> heightAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> horiz_adv_xAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> horiz_origin_xAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> horiz_origin_yAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> hrefAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> ideographicAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> image_renderingAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> inAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> in2Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> interceptAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> kAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> k1Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> k2Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> k3Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> k4Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> kernelMatrixAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> kernelUnitLengthAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> kerningAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> keyPointsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> keySplinesAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> keyTimesAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> langAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> lengthAdjustAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> letter_spacingAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> lighting_colorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> limitingConeAngleAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> localAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> markerHeightAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> markerUnitsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> markerWidthAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> marker_endAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> marker_midAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> marker_startAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> maskAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> maskContentUnitsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> maskUnitsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> mask_typeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> mathematicalAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> maxAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> mediaAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> methodAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> minAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> modeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> nameAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> numOctavesAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> offsetAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> onbeginAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> onendAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> onzoomAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> opacityAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> operatorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> orderAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> orientAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> orientationAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> originAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> overflowAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> overline_positionAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> overline_thicknessAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> paint_orderAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> panose_1Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> pathAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> pathLengthAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> patternContentUnitsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> patternTransformAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> patternUnitsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> pointer_eventsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> pointsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> pointsAtXAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> pointsAtYAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> pointsAtZAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> preserveAlphaAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> preserveAspectRatioAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> primitiveUnitsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> rAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> radiusAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> refXAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> refYAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> relAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> rendering_intentAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> repeatCountAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> repeatDurAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> requiredExtensionsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> requiredFeaturesAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> restartAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> resultAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> rotateAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> rxAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> ryAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> scaleAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> seedAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> shape_renderingAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> slopeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> spacingAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> specularConstantAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> specularExponentAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> spreadMethodAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> startOffsetAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stdDeviationAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stemhAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stemvAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stitchTilesAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stop_colorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stop_opacityAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> strikethrough_positionAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> strikethrough_thicknessAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> strokeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stroke_dasharrayAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stroke_dashoffsetAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stroke_linecapAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stroke_linejoinAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stroke_miterlimitAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stroke_opacityAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> stroke_widthAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> styleAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> surfaceScaleAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> systemLanguageAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> tableValuesAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> targetAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> targetXAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> targetYAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> textLengthAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> text_anchorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> text_decorationAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> text_renderingAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> titleAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> toAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> transformAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> transform_originAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> typeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> u1Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> u2Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> underline_positionAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> underline_thicknessAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> unicodeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> unicode_bidiAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> unicode_rangeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> units_per_emAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> v_alphabeticAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> v_hangingAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> v_ideographicAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> v_mathematicalAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> valuesAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> vector_effectAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> versionAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> vert_adv_yAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> vert_origin_xAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> vert_origin_yAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> viewBoxAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> viewTargetAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> visibilityAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> widthAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> widthsAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> word_spacingAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> writing_modeAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> xAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> x1Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> x2Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> xChannelSelectorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> x_heightAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> yAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> y1Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> y2Attr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> yChannelSelectorAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> zAttr;
WEBCORE_EXPORT LazyNeverDestroyed<const QualifiedName> zoomAndPanAttr;


const WebCore::QualifiedName* const* getSVGAttrs()
{
    static const WebCore::QualifiedName* const SVGAttrs[] = {
        &accent_heightAttr.get(),
        &accumulateAttr.get(),
        &additiveAttr.get(),
        &alignment_baselineAttr.get(),
        &alphabeticAttr.get(),
        &amplitudeAttr.get(),
        &animateAttr.get(),
        &arabic_formAttr.get(),
        &ascentAttr.get(),
        &attributeNameAttr.get(),
        &attributeTypeAttr.get(),
        &autofocusAttr.get(),
        &azimuthAttr.get(),
        &baseFrequencyAttr.get(),
        &baseProfileAttr.get(),
        &baseline_shiftAttr.get(),
        &bboxAttr.get(),
        &beginAttr.get(),
        &biasAttr.get(),
        &buffered_renderingAttr.get(),
        &byAttr.get(),
        &calcModeAttr.get(),
        &cap_heightAttr.get(),
        &clipAttr.get(),
        &clipPathUnitsAttr.get(),
        &clip_pathAttr.get(),
        &clip_ruleAttr.get(),
        &colorAttr.get(),
        &color_interpolationAttr.get(),
        &color_interpolation_filtersAttr.get(),
        &contentScriptTypeAttr.get(),
        &contentStyleTypeAttr.get(),
        &cursorAttr.get(),
        &cxAttr.get(),
        &cyAttr.get(),
        &dAttr.get(),
        &descentAttr.get(),
        &diffuseConstantAttr.get(),
        &directionAttr.get(),
        &displayAttr.get(),
        &divisorAttr.get(),
        &dominant_baselineAttr.get(),
        &durAttr.get(),
        &dxAttr.get(),
        &dyAttr.get(),
        &edgeModeAttr.get(),
        &elevationAttr.get(),
        &endAttr.get(),
        &exponentAttr.get(),
        &externalResourcesRequiredAttr.get(),
        &fillAttr.get(),
        &fill_opacityAttr.get(),
        &fill_ruleAttr.get(),
        &filterAttr.get(),
        &filterUnitsAttr.get(),
        &flood_colorAttr.get(),
        &flood_opacityAttr.get(),
        &font_familyAttr.get(),
        &font_sizeAttr.get(),
        &font_size_adjustAttr.get(),
        &font_stretchAttr.get(),
        &font_styleAttr.get(),
        &font_variantAttr.get(),
        &font_weightAttr.get(),
        &formatAttr.get(),
        &frAttr.get(),
        &fromAttr.get(),
        &fxAttr.get(),
        &fyAttr.get(),
        &g1Attr.get(),
        &g2Attr.get(),
        &glyphRefAttr.get(),
        &glyph_nameAttr.get(),
        &glyph_orientation_horizontalAttr.get(),
        &glyph_orientation_verticalAttr.get(),
        &gradientTransformAttr.get(),
        &gradientUnitsAttr.get(),
        &hangingAttr.get(),
        &heightAttr.get(),
        &horiz_adv_xAttr.get(),
        &horiz_origin_xAttr.get(),
        &horiz_origin_yAttr.get(),
        &hrefAttr.get(),
        &ideographicAttr.get(),
        &image_renderingAttr.get(),
        &inAttr.get(),
        &in2Attr.get(),
        &interceptAttr.get(),
        &kAttr.get(),
        &k1Attr.get(),
        &k2Attr.get(),
        &k3Attr.get(),
        &k4Attr.get(),
        &kernelMatrixAttr.get(),
        &kernelUnitLengthAttr.get(),
        &kerningAttr.get(),
        &keyPointsAttr.get(),
        &keySplinesAttr.get(),
        &keyTimesAttr.get(),
        &langAttr.get(),
        &lengthAdjustAttr.get(),
        &letter_spacingAttr.get(),
        &lighting_colorAttr.get(),
        &limitingConeAngleAttr.get(),
        &localAttr.get(),
        &markerHeightAttr.get(),
        &markerUnitsAttr.get(),
        &markerWidthAttr.get(),
        &marker_endAttr.get(),
        &marker_midAttr.get(),
        &marker_startAttr.get(),
        &maskAttr.get(),
        &maskContentUnitsAttr.get(),
        &maskUnitsAttr.get(),
        &mask_typeAttr.get(),
        &mathematicalAttr.get(),
        &maxAttr.get(),
        &mediaAttr.get(),
        &methodAttr.get(),
        &minAttr.get(),
        &modeAttr.get(),
        &nameAttr.get(),
        &numOctavesAttr.get(),
        &offsetAttr.get(),
        &onbeginAttr.get(),
        &onendAttr.get(),
        &onzoomAttr.get(),
        &opacityAttr.get(),
        &operatorAttr.get(),
        &orderAttr.get(),
        &orientAttr.get(),
        &orientationAttr.get(),
        &originAttr.get(),
        &overflowAttr.get(),
        &overline_positionAttr.get(),
        &overline_thicknessAttr.get(),
        &paint_orderAttr.get(),
        &panose_1Attr.get(),
        &pathAttr.get(),
        &pathLengthAttr.get(),
        &patternContentUnitsAttr.get(),
        &patternTransformAttr.get(),
        &patternUnitsAttr.get(),
        &pointer_eventsAttr.get(),
        &pointsAttr.get(),
        &pointsAtXAttr.get(),
        &pointsAtYAttr.get(),
        &pointsAtZAttr.get(),
        &preserveAlphaAttr.get(),
        &preserveAspectRatioAttr.get(),
        &primitiveUnitsAttr.get(),
        &rAttr.get(),
        &radiusAttr.get(),
        &refXAttr.get(),
        &refYAttr.get(),
        &relAttr.get(),
        &rendering_intentAttr.get(),
        &repeatCountAttr.get(),
        &repeatDurAttr.get(),
        &requiredExtensionsAttr.get(),
        &requiredFeaturesAttr.get(),
        &restartAttr.get(),
        &resultAttr.get(),
        &rotateAttr.get(),
        &rxAttr.get(),
        &ryAttr.get(),
        &scaleAttr.get(),
        &seedAttr.get(),
        &shape_renderingAttr.get(),
        &slopeAttr.get(),
        &spacingAttr.get(),
        &specularConstantAttr.get(),
        &specularExponentAttr.get(),
        &spreadMethodAttr.get(),
        &startOffsetAttr.get(),
        &stdDeviationAttr.get(),
        &stemhAttr.get(),
        &stemvAttr.get(),
        &stitchTilesAttr.get(),
        &stop_colorAttr.get(),
        &stop_opacityAttr.get(),
        &strikethrough_positionAttr.get(),
        &strikethrough_thicknessAttr.get(),
        &strokeAttr.get(),
        &stroke_dasharrayAttr.get(),
        &stroke_dashoffsetAttr.get(),
        &stroke_linecapAttr.get(),
        &stroke_linejoinAttr.get(),
        &stroke_miterlimitAttr.get(),
        &stroke_opacityAttr.get(),
        &stroke_widthAttr.get(),
        &styleAttr.get(),
        &surfaceScaleAttr.get(),
        &systemLanguageAttr.get(),
        &tableValuesAttr.get(),
        &targetAttr.get(),
        &targetXAttr.get(),
        &targetYAttr.get(),
        &textLengthAttr.get(),
        &text_anchorAttr.get(),
        &text_decorationAttr.get(),
        &text_renderingAttr.get(),
        &titleAttr.get(),
        &toAttr.get(),
        &transformAttr.get(),
        &transform_originAttr.get(),
        &typeAttr.get(),
        &u1Attr.get(),
        &u2Attr.get(),
        &underline_positionAttr.get(),
        &underline_thicknessAttr.get(),
        &unicodeAttr.get(),
        &unicode_bidiAttr.get(),
        &unicode_rangeAttr.get(),
        &units_per_emAttr.get(),
        &v_alphabeticAttr.get(),
        &v_hangingAttr.get(),
        &v_ideographicAttr.get(),
        &v_mathematicalAttr.get(),
        &valuesAttr.get(),
        &vector_effectAttr.get(),
        &versionAttr.get(),
        &vert_adv_yAttr.get(),
        &vert_origin_xAttr.get(),
        &vert_origin_yAttr.get(),
        &viewBoxAttr.get(),
        &viewTargetAttr.get(),
        &visibilityAttr.get(),
        &widthAttr.get(),
        &widthsAttr.get(),
        &word_spacingAttr.get(),
        &writing_modeAttr.get(),
        &xAttr.get(),
        &x1Attr.get(),
        &x2Attr.get(),
        &xChannelSelectorAttr.get(),
        &x_heightAttr.get(),
        &yAttr.get(),
        &y1Attr.get(),
        &y2Attr.get(),
        &yChannelSelectorAttr.get(),
        &zAttr.get(),
        &zoomAndPanAttr.get(),
    };
    return SVGAttrs;
}

void init()
{
    static bool initialized = false;
    if (initialized)
        return;
    initialized = true;

    // Use placement new to initialize the globals.

    AtomString::init();
    AtomString svgNS("http://www.w3.org/2000/svg", AtomString::ConstructFromLiteral);

    // Namespace
    svgNamespaceURI.construct(svgNS);

#ifndef NDEBUG
    reinterpret_cast<const StringImpl*>(&aData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&accent_heightData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&accumulateData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&additiveData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&alignment_baselineData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&alphabeticData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&altGlyphData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&altGlyphDefData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&altGlyphItemData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&amplitudeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&animateData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&animateColorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&animateMotionData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&animateTransformData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&arabic_formData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&ascentData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&attributeNameData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&attributeTypeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&autofocusData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&azimuthData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&baseFrequencyData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&baseProfileData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&baseline_shiftData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&bboxData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&beginData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&biasData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&buffered_renderingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&byData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&calcModeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&cap_heightData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&circleData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&clipData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&clipPathData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&clipPathUnitsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&clip_pathData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&clip_ruleData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&colorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&color_interpolationData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&color_interpolation_filtersData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&contentScriptTypeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&contentStyleTypeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&cursorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&cxData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&cyData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&dData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&defsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&descData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&descentData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&diffuseConstantData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&directionData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&displayData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&divisorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&dominant_baselineData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&durData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&dxData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&dyData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&edgeModeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&elevationData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&ellipseData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&endData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&exponentData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&externalResourcesRequiredData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feBlendData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feColorMatrixData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feComponentTransferData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feCompositeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feConvolveMatrixData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feDiffuseLightingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feDisplacementMapData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feDistantLightData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feDropShadowData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feFloodData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feFuncAData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feFuncBData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feFuncGData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feFuncRData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feGaussianBlurData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feImageData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feMergeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feMergeNodeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feMorphologyData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feOffsetData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&fePointLightData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feSpecularLightingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feSpotLightData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feTileData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&feTurbulenceData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&fillData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&fill_opacityData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&fill_ruleData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&filterData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&filterUnitsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&flood_colorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&flood_opacityData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&fontData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_faceData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_face_formatData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_face_nameData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_face_srcData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_face_uriData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_familyData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_sizeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_size_adjustData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_stretchData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_styleData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_variantData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&font_weightData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&foreignObjectData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&formatData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&frData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&fromData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&fxData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&fyData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&gData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&g1Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&g2Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&glyphData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&glyphRefData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&glyph_nameData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&glyph_orientation_horizontalData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&glyph_orientation_verticalData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&gradientTransformData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&gradientUnitsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&hangingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&heightData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&hkernData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&horiz_adv_xData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&horiz_origin_xData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&horiz_origin_yData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&hrefData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&ideographicData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&imageData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&image_renderingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&inData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&in2Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&interceptData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&kData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&k1Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&k2Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&k3Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&k4Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&kernelMatrixData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&kernelUnitLengthData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&kerningData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&keyPointsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&keySplinesData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&keyTimesData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&langData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&lengthAdjustData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&letter_spacingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&lighting_colorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&limitingConeAngleData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&lineData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&linearGradientData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&localData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&markerData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&markerHeightData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&markerUnitsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&markerWidthData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&marker_endData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&marker_midData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&marker_startData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&maskData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&maskContentUnitsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&maskUnitsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&mask_typeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&mathematicalData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&maxData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&mediaData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&metadataData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&methodData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&minData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&missing_glyphData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&modeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&mpathData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&nameData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&numOctavesData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&offsetData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&onbeginData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&onendData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&onzoomData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&opacityData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&operatorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&orderData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&orientData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&orientationData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&originData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&overflowData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&overline_positionData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&overline_thicknessData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&paint_orderData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&panose_1Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&pathData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&pathLengthData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&patternData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&patternContentUnitsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&patternTransformData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&patternUnitsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&pointer_eventsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&pointsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&pointsAtXData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&pointsAtYData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&pointsAtZData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&polygonData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&polylineData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&preserveAlphaData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&preserveAspectRatioData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&primitiveUnitsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&rData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&radialGradientData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&radiusData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&rectData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&refXData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&refYData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&relData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&rendering_intentData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&repeatCountData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&repeatDurData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&requiredExtensionsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&requiredFeaturesData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&restartData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&resultData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&rotateData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&rxData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&ryData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&scaleData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&scriptData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&seedData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&setData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&shape_renderingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&slopeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&spacingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&specularConstantData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&specularExponentData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&spreadMethodData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&startOffsetData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stdDeviationData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stemhData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stemvData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stitchTilesData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stopData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stop_colorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stop_opacityData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&strikethrough_positionData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&strikethrough_thicknessData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&strokeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stroke_dasharrayData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stroke_dashoffsetData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stroke_linecapData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stroke_linejoinData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stroke_miterlimitData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stroke_opacityData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&stroke_widthData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&styleData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&surfaceScaleData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&svgData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&switchData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&symbolData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&systemLanguageData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&tableValuesData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&targetData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&targetXData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&targetYData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&textData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&textLengthData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&textPathData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&text_anchorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&text_decorationData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&text_renderingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&titleData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&toData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&transformData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&transform_originData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&trefData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&tspanData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&typeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&u1Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&u2Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&underline_positionData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&underline_thicknessData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&unicodeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&unicode_bidiData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&unicode_rangeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&units_per_emData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&useData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&v_alphabeticData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&v_hangingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&v_ideographicData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&v_mathematicalData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&valuesData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&vector_effectData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&versionData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&vert_adv_yData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&vert_origin_xData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&vert_origin_yData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&viewData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&viewBoxData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&viewTargetData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&visibilityData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&vkernData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&widthData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&widthsData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&word_spacingData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&writing_modeData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&xData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&x1Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&x2Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&xChannelSelectorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&x_heightData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&yData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&y1Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&y2Data)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&yChannelSelectorData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&zData)->assertHashIsCorrect();
    reinterpret_cast<const StringImpl*>(&zoomAndPanData)->assertHashIsCorrect();
#endif // NDEBUG


    struct TagsTableEntry {
        LazyNeverDestroyed<const QualifiedName>* targetAddress;
        const StaticStringImpl& name;
    };

    static const TagsTableEntry tagsTable[] = {
        { (LazyNeverDestroyed<const QualifiedName>*)&aTag, *(&aData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&altGlyphTag, *(&altGlyphData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&altGlyphDefTag, *(&altGlyphDefData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&altGlyphItemTag, *(&altGlyphItemData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&animateTag, *(&animateData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&animateColorTag, *(&animateColorData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&animateMotionTag, *(&animateMotionData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&animateTransformTag, *(&animateTransformData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&circleTag, *(&circleData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&clipPathTag, *(&clipPathData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&cursorTag, *(&cursorData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&defsTag, *(&defsData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&descTag, *(&descData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&ellipseTag, *(&ellipseData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feBlendTag, *(&feBlendData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feColorMatrixTag, *(&feColorMatrixData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feComponentTransferTag, *(&feComponentTransferData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feCompositeTag, *(&feCompositeData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feConvolveMatrixTag, *(&feConvolveMatrixData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feDiffuseLightingTag, *(&feDiffuseLightingData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feDisplacementMapTag, *(&feDisplacementMapData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feDistantLightTag, *(&feDistantLightData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feDropShadowTag, *(&feDropShadowData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feFloodTag, *(&feFloodData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feFuncATag, *(&feFuncAData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feFuncBTag, *(&feFuncBData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feFuncGTag, *(&feFuncGData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feFuncRTag, *(&feFuncRData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feGaussianBlurTag, *(&feGaussianBlurData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feImageTag, *(&feImageData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feMergeTag, *(&feMergeData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feMergeNodeTag, *(&feMergeNodeData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feMorphologyTag, *(&feMorphologyData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feOffsetTag, *(&feOffsetData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&fePointLightTag, *(&fePointLightData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feSpecularLightingTag, *(&feSpecularLightingData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feSpotLightTag, *(&feSpotLightData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feTileTag, *(&feTileData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&feTurbulenceTag, *(&feTurbulenceData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&filterTag, *(&filterData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&fontTag, *(&fontData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&font_faceTag, *(&font_faceData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&font_face_formatTag, *(&font_face_formatData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&font_face_nameTag, *(&font_face_nameData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&font_face_srcTag, *(&font_face_srcData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&font_face_uriTag, *(&font_face_uriData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&foreignObjectTag, *(&foreignObjectData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&gTag, *(&gData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&glyphTag, *(&glyphData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&glyphRefTag, *(&glyphRefData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&hkernTag, *(&hkernData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&imageTag, *(&imageData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&lineTag, *(&lineData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&linearGradientTag, *(&linearGradientData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&markerTag, *(&markerData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&maskTag, *(&maskData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&metadataTag, *(&metadataData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&missing_glyphTag, *(&missing_glyphData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&mpathTag, *(&mpathData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&pathTag, *(&pathData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&patternTag, *(&patternData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&polygonTag, *(&polygonData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&polylineTag, *(&polylineData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&radialGradientTag, *(&radialGradientData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&rectTag, *(&rectData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&scriptTag, *(&scriptData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&setTag, *(&setData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&stopTag, *(&stopData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&styleTag, *(&styleData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&svgTag, *(&svgData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&switchTag, *(&switchData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&symbolTag, *(&symbolData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&textTag, *(&textData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&textPathTag, *(&textPathData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&titleTag, *(&titleData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&trefTag, *(&trefData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&tspanTag, *(&tspanData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&useTag, *(&useData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&viewTag, *(&viewData) },
        { (LazyNeverDestroyed<const QualifiedName>*)&vkernTag, *(&vkernData) },
    };

    for (auto& entry : tagsTable)
        entry.targetAddress->construct(nullAtom(), AtomString(&entry.name), svgNS);

    struct AttributesTableEntry {
        LazyNeverDestroyed<const QualifiedName>* targetAddress;
        const StaticStringImpl& name;
    };

    static const AttributesTableEntry attributesTable[] = {
        { &accent_heightAttr, *(&accent_heightData) },
        { &accumulateAttr, *(&accumulateData) },
        { &additiveAttr, *(&additiveData) },
        { &alignment_baselineAttr, *(&alignment_baselineData) },
        { &alphabeticAttr, *(&alphabeticData) },
        { &amplitudeAttr, *(&amplitudeData) },
        { &animateAttr, *(&animateData) },
        { &arabic_formAttr, *(&arabic_formData) },
        { &ascentAttr, *(&ascentData) },
        { &attributeNameAttr, *(&attributeNameData) },
        { &attributeTypeAttr, *(&attributeTypeData) },
        { &autofocusAttr, *(&autofocusData) },
        { &azimuthAttr, *(&azimuthData) },
        { &baseFrequencyAttr, *(&baseFrequencyData) },
        { &baseProfileAttr, *(&baseProfileData) },
        { &baseline_shiftAttr, *(&baseline_shiftData) },
        { &bboxAttr, *(&bboxData) },
        { &beginAttr, *(&beginData) },
        { &biasAttr, *(&biasData) },
        { &buffered_renderingAttr, *(&buffered_renderingData) },
        { &byAttr, *(&byData) },
        { &calcModeAttr, *(&calcModeData) },
        { &cap_heightAttr, *(&cap_heightData) },
        { &clipAttr, *(&clipData) },
        { &clipPathUnitsAttr, *(&clipPathUnitsData) },
        { &clip_pathAttr, *(&clip_pathData) },
        { &clip_ruleAttr, *(&clip_ruleData) },
        { &colorAttr, *(&colorData) },
        { &color_interpolationAttr, *(&color_interpolationData) },
        { &color_interpolation_filtersAttr, *(&color_interpolation_filtersData) },
        { &contentScriptTypeAttr, *(&contentScriptTypeData) },
        { &contentStyleTypeAttr, *(&contentStyleTypeData) },
        { &cursorAttr, *(&cursorData) },
        { &cxAttr, *(&cxData) },
        { &cyAttr, *(&cyData) },
        { &dAttr, *(&dData) },
        { &descentAttr, *(&descentData) },
        { &diffuseConstantAttr, *(&diffuseConstantData) },
        { &directionAttr, *(&directionData) },
        { &displayAttr, *(&displayData) },
        { &divisorAttr, *(&divisorData) },
        { &dominant_baselineAttr, *(&dominant_baselineData) },
        { &durAttr, *(&durData) },
        { &dxAttr, *(&dxData) },
        { &dyAttr, *(&dyData) },
        { &edgeModeAttr, *(&edgeModeData) },
        { &elevationAttr, *(&elevationData) },
        { &endAttr, *(&endData) },
        { &exponentAttr, *(&exponentData) },
        { &externalResourcesRequiredAttr, *(&externalResourcesRequiredData) },
        { &fillAttr, *(&fillData) },
        { &fill_opacityAttr, *(&fill_opacityData) },
        { &fill_ruleAttr, *(&fill_ruleData) },
        { &filterAttr, *(&filterData) },
        { &filterUnitsAttr, *(&filterUnitsData) },
        { &flood_colorAttr, *(&flood_colorData) },
        { &flood_opacityAttr, *(&flood_opacityData) },
        { &font_familyAttr, *(&font_familyData) },
        { &font_sizeAttr, *(&font_sizeData) },
        { &font_size_adjustAttr, *(&font_size_adjustData) },
        { &font_stretchAttr, *(&font_stretchData) },
        { &font_styleAttr, *(&font_styleData) },
        { &font_variantAttr, *(&font_variantData) },
        { &font_weightAttr, *(&font_weightData) },
        { &formatAttr, *(&formatData) },
        { &frAttr, *(&frData) },
        { &fromAttr, *(&fromData) },
        { &fxAttr, *(&fxData) },
        { &fyAttr, *(&fyData) },
        { &g1Attr, *(&g1Data) },
        { &g2Attr, *(&g2Data) },
        { &glyphRefAttr, *(&glyphRefData) },
        { &glyph_nameAttr, *(&glyph_nameData) },
        { &glyph_orientation_horizontalAttr, *(&glyph_orientation_horizontalData) },
        { &glyph_orientation_verticalAttr, *(&glyph_orientation_verticalData) },
        { &gradientTransformAttr, *(&gradientTransformData) },
        { &gradientUnitsAttr, *(&gradientUnitsData) },
        { &hangingAttr, *(&hangingData) },
        { &heightAttr, *(&heightData) },
        { &horiz_adv_xAttr, *(&horiz_adv_xData) },
        { &horiz_origin_xAttr, *(&horiz_origin_xData) },
        { &horiz_origin_yAttr, *(&horiz_origin_yData) },
        { &hrefAttr, *(&hrefData) },
        { &ideographicAttr, *(&ideographicData) },
        { &image_renderingAttr, *(&image_renderingData) },
        { &inAttr, *(&inData) },
        { &in2Attr, *(&in2Data) },
        { &interceptAttr, *(&interceptData) },
        { &kAttr, *(&kData) },
        { &k1Attr, *(&k1Data) },
        { &k2Attr, *(&k2Data) },
        { &k3Attr, *(&k3Data) },
        { &k4Attr, *(&k4Data) },
        { &kernelMatrixAttr, *(&kernelMatrixData) },
        { &kernelUnitLengthAttr, *(&kernelUnitLengthData) },
        { &kerningAttr, *(&kerningData) },
        { &keyPointsAttr, *(&keyPointsData) },
        { &keySplinesAttr, *(&keySplinesData) },
        { &keyTimesAttr, *(&keyTimesData) },
        { &langAttr, *(&langData) },
        { &lengthAdjustAttr, *(&lengthAdjustData) },
        { &letter_spacingAttr, *(&letter_spacingData) },
        { &lighting_colorAttr, *(&lighting_colorData) },
        { &limitingConeAngleAttr, *(&limitingConeAngleData) },
        { &localAttr, *(&localData) },
        { &markerHeightAttr, *(&markerHeightData) },
        { &markerUnitsAttr, *(&markerUnitsData) },
        { &markerWidthAttr, *(&markerWidthData) },
        { &marker_endAttr, *(&marker_endData) },
        { &marker_midAttr, *(&marker_midData) },
        { &marker_startAttr, *(&marker_startData) },
        { &maskAttr, *(&maskData) },
        { &maskContentUnitsAttr, *(&maskContentUnitsData) },
        { &maskUnitsAttr, *(&maskUnitsData) },
        { &mask_typeAttr, *(&mask_typeData) },
        { &mathematicalAttr, *(&mathematicalData) },
        { &maxAttr, *(&maxData) },
        { &mediaAttr, *(&mediaData) },
        { &methodAttr, *(&methodData) },
        { &minAttr, *(&minData) },
        { &modeAttr, *(&modeData) },
        { &nameAttr, *(&nameData) },
        { &numOctavesAttr, *(&numOctavesData) },
        { &offsetAttr, *(&offsetData) },
        { &onbeginAttr, *(&onbeginData) },
        { &onendAttr, *(&onendData) },
        { &onzoomAttr, *(&onzoomData) },
        { &opacityAttr, *(&opacityData) },
        { &operatorAttr, *(&operatorData) },
        { &orderAttr, *(&orderData) },
        { &orientAttr, *(&orientData) },
        { &orientationAttr, *(&orientationData) },
        { &originAttr, *(&originData) },
        { &overflowAttr, *(&overflowData) },
        { &overline_positionAttr, *(&overline_positionData) },
        { &overline_thicknessAttr, *(&overline_thicknessData) },
        { &paint_orderAttr, *(&paint_orderData) },
        { &panose_1Attr, *(&panose_1Data) },
        { &pathAttr, *(&pathData) },
        { &pathLengthAttr, *(&pathLengthData) },
        { &patternContentUnitsAttr, *(&patternContentUnitsData) },
        { &patternTransformAttr, *(&patternTransformData) },
        { &patternUnitsAttr, *(&patternUnitsData) },
        { &pointer_eventsAttr, *(&pointer_eventsData) },
        { &pointsAttr, *(&pointsData) },
        { &pointsAtXAttr, *(&pointsAtXData) },
        { &pointsAtYAttr, *(&pointsAtYData) },
        { &pointsAtZAttr, *(&pointsAtZData) },
        { &preserveAlphaAttr, *(&preserveAlphaData) },
        { &preserveAspectRatioAttr, *(&preserveAspectRatioData) },
        { &primitiveUnitsAttr, *(&primitiveUnitsData) },
        { &rAttr, *(&rData) },
        { &radiusAttr, *(&radiusData) },
        { &refXAttr, *(&refXData) },
        { &refYAttr, *(&refYData) },
        { &relAttr, *(&relData) },
        { &rendering_intentAttr, *(&rendering_intentData) },
        { &repeatCountAttr, *(&repeatCountData) },
        { &repeatDurAttr, *(&repeatDurData) },
        { &requiredExtensionsAttr, *(&requiredExtensionsData) },
        { &requiredFeaturesAttr, *(&requiredFeaturesData) },
        { &restartAttr, *(&restartData) },
        { &resultAttr, *(&resultData) },
        { &rotateAttr, *(&rotateData) },
        { &rxAttr, *(&rxData) },
        { &ryAttr, *(&ryData) },
        { &scaleAttr, *(&scaleData) },
        { &seedAttr, *(&seedData) },
        { &shape_renderingAttr, *(&shape_renderingData) },
        { &slopeAttr, *(&slopeData) },
        { &spacingAttr, *(&spacingData) },
        { &specularConstantAttr, *(&specularConstantData) },
        { &specularExponentAttr, *(&specularExponentData) },
        { &spreadMethodAttr, *(&spreadMethodData) },
        { &startOffsetAttr, *(&startOffsetData) },
        { &stdDeviationAttr, *(&stdDeviationData) },
        { &stemhAttr, *(&stemhData) },
        { &stemvAttr, *(&stemvData) },
        { &stitchTilesAttr, *(&stitchTilesData) },
        { &stop_colorAttr, *(&stop_colorData) },
        { &stop_opacityAttr, *(&stop_opacityData) },
        { &strikethrough_positionAttr, *(&strikethrough_positionData) },
        { &strikethrough_thicknessAttr, *(&strikethrough_thicknessData) },
        { &strokeAttr, *(&strokeData) },
        { &stroke_dasharrayAttr, *(&stroke_dasharrayData) },
        { &stroke_dashoffsetAttr, *(&stroke_dashoffsetData) },
        { &stroke_linecapAttr, *(&stroke_linecapData) },
        { &stroke_linejoinAttr, *(&stroke_linejoinData) },
        { &stroke_miterlimitAttr, *(&stroke_miterlimitData) },
        { &stroke_opacityAttr, *(&stroke_opacityData) },
        { &stroke_widthAttr, *(&stroke_widthData) },
        { &styleAttr, *(&styleData) },
        { &surfaceScaleAttr, *(&surfaceScaleData) },
        { &systemLanguageAttr, *(&systemLanguageData) },
        { &tableValuesAttr, *(&tableValuesData) },
        { &targetAttr, *(&targetData) },
        { &targetXAttr, *(&targetXData) },
        { &targetYAttr, *(&targetYData) },
        { &textLengthAttr, *(&textLengthData) },
        { &text_anchorAttr, *(&text_anchorData) },
        { &text_decorationAttr, *(&text_decorationData) },
        { &text_renderingAttr, *(&text_renderingData) },
        { &titleAttr, *(&titleData) },
        { &toAttr, *(&toData) },
        { &transformAttr, *(&transformData) },
        { &transform_originAttr, *(&transform_originData) },
        { &typeAttr, *(&typeData) },
        { &u1Attr, *(&u1Data) },
        { &u2Attr, *(&u2Data) },
        { &underline_positionAttr, *(&underline_positionData) },
        { &underline_thicknessAttr, *(&underline_thicknessData) },
        { &unicodeAttr, *(&unicodeData) },
        { &unicode_bidiAttr, *(&unicode_bidiData) },
        { &unicode_rangeAttr, *(&unicode_rangeData) },
        { &units_per_emAttr, *(&units_per_emData) },
        { &v_alphabeticAttr, *(&v_alphabeticData) },
        { &v_hangingAttr, *(&v_hangingData) },
        { &v_ideographicAttr, *(&v_ideographicData) },
        { &v_mathematicalAttr, *(&v_mathematicalData) },
        { &valuesAttr, *(&valuesData) },
        { &vector_effectAttr, *(&vector_effectData) },
        { &versionAttr, *(&versionData) },
        { &vert_adv_yAttr, *(&vert_adv_yData) },
        { &vert_origin_xAttr, *(&vert_origin_xData) },
        { &vert_origin_yAttr, *(&vert_origin_yData) },
        { &viewBoxAttr, *(&viewBoxData) },
        { &viewTargetAttr, *(&viewTargetData) },
        { &visibilityAttr, *(&visibilityData) },
        { &widthAttr, *(&widthData) },
        { &widthsAttr, *(&widthsData) },
        { &word_spacingAttr, *(&word_spacingData) },
        { &writing_modeAttr, *(&writing_modeData) },
        { &xAttr, *(&xData) },
        { &x1Attr, *(&x1Data) },
        { &x2Attr, *(&x2Data) },
        { &xChannelSelectorAttr, *(&xChannelSelectorData) },
        { &x_heightAttr, *(&x_heightData) },
        { &yAttr, *(&yData) },
        { &y1Attr, *(&y1Data) },
        { &y2Attr, *(&y2Data) },
        { &yChannelSelectorAttr, *(&yChannelSelectorData) },
        { &zAttr, *(&zData) },
        { &zoomAndPanAttr, *(&zoomAndPanData) },
    };

    for (auto& entry : attributesTable)
        entry.targetAddress->construct(nullAtom(), AtomString(&entry.name), nullAtom());
}

} }

