parser/html/javasrc/ElementName.java

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

michael@0 1 /*
michael@0 2 * Copyright (c) 2008-2014 Mozilla Foundation
michael@0 3 *
michael@0 4 * Permission is hereby granted, free of charge, to any person obtaining a
michael@0 5 * copy of this software and associated documentation files (the "Software"),
michael@0 6 * to deal in the Software without restriction, including without limitation
michael@0 7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
michael@0 8 * and/or sell copies of the Software, and to permit persons to whom the
michael@0 9 * Software is furnished to do so, subject to the following conditions:
michael@0 10 *
michael@0 11 * The above copyright notice and this permission notice shall be included in
michael@0 12 * all copies or substantial portions of the Software.
michael@0 13 *
michael@0 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
michael@0 15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
michael@0 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
michael@0 17 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
michael@0 18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
michael@0 19 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
michael@0 20 * DEALINGS IN THE SOFTWARE.
michael@0 21 */
michael@0 22
michael@0 23 package nu.validator.htmlparser.impl;
michael@0 24
michael@0 25 import java.util.Arrays;
michael@0 26
michael@0 27 import nu.validator.htmlparser.annotation.Inline;
michael@0 28 import nu.validator.htmlparser.annotation.Local;
michael@0 29 import nu.validator.htmlparser.annotation.NoLength;
michael@0 30 import nu.validator.htmlparser.annotation.Virtual;
michael@0 31 import nu.validator.htmlparser.common.Interner;
michael@0 32
michael@0 33 public final class ElementName
michael@0 34 // uncomment when regenerating self
michael@0 35 // implements Comparable<ElementName>
michael@0 36 {
michael@0 37
michael@0 38 /**
michael@0 39 * The mask for extracting the dispatch group.
michael@0 40 */
michael@0 41 public static final int GROUP_MASK = 127;
michael@0 42
michael@0 43 /**
michael@0 44 * Indicates that the element is not a pre-interned element. Forbidden
michael@0 45 * on preinterned elements.
michael@0 46 */
michael@0 47 public static final int CUSTOM = (1 << 30);
michael@0 48
michael@0 49 /**
michael@0 50 * Indicates that the element is in the "special" category. This bit
michael@0 51 * should not be pre-set on MathML or SVG specials--only on HTML specials.
michael@0 52 */
michael@0 53 public static final int SPECIAL = (1 << 29);
michael@0 54
michael@0 55 /**
michael@0 56 * The element is foster-parenting. This bit should be pre-set on elements
michael@0 57 * that are foster-parenting as HTML.
michael@0 58 */
michael@0 59 public static final int FOSTER_PARENTING = (1 << 28);
michael@0 60
michael@0 61 /**
michael@0 62 * The element is scoping. This bit should be pre-set on elements
michael@0 63 * that are scoping as HTML.
michael@0 64 */
michael@0 65 public static final int SCOPING = (1 << 27);
michael@0 66
michael@0 67 /**
michael@0 68 * The element is scoping as SVG.
michael@0 69 */
michael@0 70 public static final int SCOPING_AS_SVG = (1 << 26);
michael@0 71
michael@0 72 /**
michael@0 73 * The element is scoping as MathML.
michael@0 74 */
michael@0 75 public static final int SCOPING_AS_MATHML = (1 << 25);
michael@0 76
michael@0 77 /**
michael@0 78 * The element is an HTML integration point.
michael@0 79 */
michael@0 80 public static final int HTML_INTEGRATION_POINT = (1 << 24);
michael@0 81
michael@0 82 /**
michael@0 83 * The element has an optional end tag.
michael@0 84 */
michael@0 85 public static final int OPTIONAL_END_TAG = (1 << 23);
michael@0 86
michael@0 87 public static final ElementName NULL_ELEMENT_NAME = new ElementName(null);
michael@0 88
michael@0 89 public final @Local String name;
michael@0 90
michael@0 91 public final @Local String camelCaseName;
michael@0 92
michael@0 93 /**
michael@0 94 * The lowest 7 bits are the dispatch group. The high bits are flags.
michael@0 95 */
michael@0 96 public final int flags;
michael@0 97
michael@0 98 @Inline public int getFlags() {
michael@0 99 return flags;
michael@0 100 }
michael@0 101
michael@0 102 public int getGroup() {
michael@0 103 return flags & GROUP_MASK;
michael@0 104 }
michael@0 105
michael@0 106 public boolean isCustom() {
michael@0 107 return (flags & CUSTOM) != 0;
michael@0 108 }
michael@0 109
michael@0 110 static ElementName elementNameByBuffer(@NoLength char[] buf, int offset, int length, Interner interner) {
michael@0 111 int hash = ElementName.bufToHash(buf, length);
michael@0 112 int index = Arrays.binarySearch(ElementName.ELEMENT_HASHES, hash);
michael@0 113 if (index < 0) {
michael@0 114 return new ElementName(Portability.newLocalNameFromBuffer(buf, offset, length, interner));
michael@0 115 } else {
michael@0 116 ElementName elementName = ElementName.ELEMENT_NAMES[index];
michael@0 117 @Local String name = elementName.name;
michael@0 118 if (!Portability.localEqualsBuffer(name, buf, offset, length)) {
michael@0 119 return new ElementName(Portability.newLocalNameFromBuffer(buf,
michael@0 120 offset, length, interner));
michael@0 121 }
michael@0 122 return elementName;
michael@0 123 }
michael@0 124 }
michael@0 125
michael@0 126 /**
michael@0 127 * This method has to return a unique integer for each well-known
michael@0 128 * lower-cased element name.
michael@0 129 *
michael@0 130 * @param buf
michael@0 131 * @param len
michael@0 132 * @return
michael@0 133 */
michael@0 134 private static int bufToHash(@NoLength char[] buf, int len) {
michael@0 135 int hash = len;
michael@0 136 hash <<= 5;
michael@0 137 hash += buf[0] - 0x60;
michael@0 138 int j = len;
michael@0 139 for (int i = 0; i < 4 && j > 0; i++) {
michael@0 140 j--;
michael@0 141 hash <<= 5;
michael@0 142 hash += buf[j] - 0x60;
michael@0 143 }
michael@0 144 return hash;
michael@0 145 }
michael@0 146
michael@0 147 private ElementName(@Local String name, @Local String camelCaseName,
michael@0 148 int flags) {
michael@0 149 this.name = name;
michael@0 150 this.camelCaseName = camelCaseName;
michael@0 151 this.flags = flags;
michael@0 152 }
michael@0 153
michael@0 154 protected ElementName(@Local String name) {
michael@0 155 this.name = name;
michael@0 156 this.camelCaseName = name;
michael@0 157 this.flags = TreeBuilder.OTHER | CUSTOM;
michael@0 158 }
michael@0 159
michael@0 160 @Virtual void release() {
michael@0 161 // No-op in Java.
michael@0 162 // Implement as delete this in subclass.
michael@0 163 // Be sure to release the local name
michael@0 164 }
michael@0 165
michael@0 166 @SuppressWarnings("unused") @Virtual private void destructor() {
michael@0 167 }
michael@0 168
michael@0 169 @Virtual public ElementName cloneElementName(Interner interner) {
michael@0 170 return this;
michael@0 171 }
michael@0 172
michael@0 173 // START CODE ONLY USED FOR GENERATING CODE uncomment and run to regenerate
michael@0 174
michael@0 175 // /**
michael@0 176 // * @see java.lang.Object#toString()
michael@0 177 // */
michael@0 178 // @Override public String toString() {
michael@0 179 // return "(\"" + name + "\", \"" + camelCaseName + "\", " + decomposedFlags() + ")";
michael@0 180 // }
michael@0 181 //
michael@0 182 // private String decomposedFlags() {
michael@0 183 // StringBuilder buf = new StringBuilder("TreeBuilder.");
michael@0 184 // buf.append(treeBuilderGroupToName());
michael@0 185 // if ((flags & SPECIAL) != 0) {
michael@0 186 // buf.append(" | SPECIAL");
michael@0 187 // }
michael@0 188 // if ((flags & FOSTER_PARENTING) != 0) {
michael@0 189 // buf.append(" | FOSTER_PARENTING");
michael@0 190 // }
michael@0 191 // if ((flags & SCOPING) != 0) {
michael@0 192 // buf.append(" | SCOPING");
michael@0 193 // }
michael@0 194 // if ((flags & SCOPING_AS_MATHML) != 0) {
michael@0 195 // buf.append(" | SCOPING_AS_MATHML");
michael@0 196 // }
michael@0 197 // if ((flags & SCOPING_AS_SVG) != 0) {
michael@0 198 // buf.append(" | SCOPING_AS_SVG");
michael@0 199 // }
michael@0 200 // if ((flags & OPTIONAL_END_TAG) != 0) {
michael@0 201 // buf.append(" | OPTIONAL_END_TAG");
michael@0 202 // }
michael@0 203 // return buf.toString();
michael@0 204 // }
michael@0 205 //
michael@0 206 // private String constName() {
michael@0 207 // char[] buf = new char[name.length()];
michael@0 208 // for (int i = 0; i < name.length(); i++) {
michael@0 209 // char c = name.charAt(i);
michael@0 210 // if (c == '-') {
michael@0 211 // buf[i] = '_';
michael@0 212 // } else if (c >= '0' && c <= '9') {
michael@0 213 // buf[i] = c;
michael@0 214 // } else {
michael@0 215 // buf[i] = (char) (c - 0x20);
michael@0 216 // }
michael@0 217 // }
michael@0 218 // return new String(buf);
michael@0 219 // }
michael@0 220 //
michael@0 221 // private int hash() {
michael@0 222 // return bufToHash(name.toCharArray(), name.length());
michael@0 223 // }
michael@0 224 //
michael@0 225 // public int compareTo(ElementName other) {
michael@0 226 // int thisHash = this.hash();
michael@0 227 // int otherHash = other.hash();
michael@0 228 // if (thisHash < otherHash) {
michael@0 229 // return -1;
michael@0 230 // } else if (thisHash == otherHash) {
michael@0 231 // return 0;
michael@0 232 // } else {
michael@0 233 // return 1;
michael@0 234 // }
michael@0 235 // }
michael@0 236 //
michael@0 237 // private String treeBuilderGroupToName() {
michael@0 238 // switch (getGroup()) {
michael@0 239 // case TreeBuilder.OTHER:
michael@0 240 // return "OTHER";
michael@0 241 // case TreeBuilder.A:
michael@0 242 // return "A";
michael@0 243 // case TreeBuilder.BASE:
michael@0 244 // return "BASE";
michael@0 245 // case TreeBuilder.BODY:
michael@0 246 // return "BODY";
michael@0 247 // case TreeBuilder.BR:
michael@0 248 // return "BR";
michael@0 249 // case TreeBuilder.BUTTON:
michael@0 250 // return "BUTTON";
michael@0 251 // case TreeBuilder.CAPTION:
michael@0 252 // return "CAPTION";
michael@0 253 // case TreeBuilder.COL:
michael@0 254 // return "COL";
michael@0 255 // case TreeBuilder.COLGROUP:
michael@0 256 // return "COLGROUP";
michael@0 257 // case TreeBuilder.FONT:
michael@0 258 // return "FONT";
michael@0 259 // case TreeBuilder.FORM:
michael@0 260 // return "FORM";
michael@0 261 // case TreeBuilder.FRAME:
michael@0 262 // return "FRAME";
michael@0 263 // case TreeBuilder.FRAMESET:
michael@0 264 // return "FRAMESET";
michael@0 265 // case TreeBuilder.IMAGE:
michael@0 266 // return "IMAGE";
michael@0 267 // case TreeBuilder.INPUT:
michael@0 268 // return "INPUT";
michael@0 269 // case TreeBuilder.ISINDEX:
michael@0 270 // return "ISINDEX";
michael@0 271 // case TreeBuilder.LI:
michael@0 272 // return "LI";
michael@0 273 // case TreeBuilder.LINK_OR_BASEFONT_OR_BGSOUND:
michael@0 274 // return "LINK_OR_BASEFONT_OR_BGSOUND";
michael@0 275 // case TreeBuilder.MATH:
michael@0 276 // return "MATH";
michael@0 277 // case TreeBuilder.META:
michael@0 278 // return "META";
michael@0 279 // case TreeBuilder.SVG:
michael@0 280 // return "SVG";
michael@0 281 // case TreeBuilder.HEAD:
michael@0 282 // return "HEAD";
michael@0 283 // case TreeBuilder.HR:
michael@0 284 // return "HR";
michael@0 285 // case TreeBuilder.HTML:
michael@0 286 // return "HTML";
michael@0 287 // case TreeBuilder.KEYGEN:
michael@0 288 // return "KEYGEN";
michael@0 289 // case TreeBuilder.NOBR:
michael@0 290 // return "NOBR";
michael@0 291 // case TreeBuilder.NOFRAMES:
michael@0 292 // return "NOFRAMES";
michael@0 293 // case TreeBuilder.NOSCRIPT:
michael@0 294 // return "NOSCRIPT";
michael@0 295 // case TreeBuilder.OPTGROUP:
michael@0 296 // return "OPTGROUP";
michael@0 297 // case TreeBuilder.OPTION:
michael@0 298 // return "OPTION";
michael@0 299 // case TreeBuilder.P:
michael@0 300 // return "P";
michael@0 301 // case TreeBuilder.PLAINTEXT:
michael@0 302 // return "PLAINTEXT";
michael@0 303 // case TreeBuilder.SCRIPT:
michael@0 304 // return "SCRIPT";
michael@0 305 // case TreeBuilder.SELECT:
michael@0 306 // return "SELECT";
michael@0 307 // case TreeBuilder.STYLE:
michael@0 308 // return "STYLE";
michael@0 309 // case TreeBuilder.TABLE:
michael@0 310 // return "TABLE";
michael@0 311 // case TreeBuilder.TEXTAREA:
michael@0 312 // return "TEXTAREA";
michael@0 313 // case TreeBuilder.TITLE:
michael@0 314 // return "TITLE";
michael@0 315 // case TreeBuilder.TEMPLATE:
michael@0 316 // return "TEMPLATE";
michael@0 317 // case TreeBuilder.TR:
michael@0 318 // return "TR";
michael@0 319 // case TreeBuilder.XMP:
michael@0 320 // return "XMP";
michael@0 321 // case TreeBuilder.TBODY_OR_THEAD_OR_TFOOT:
michael@0 322 // return "TBODY_OR_THEAD_OR_TFOOT";
michael@0 323 // case TreeBuilder.TD_OR_TH:
michael@0 324 // return "TD_OR_TH";
michael@0 325 // case TreeBuilder.DD_OR_DT:
michael@0 326 // return "DD_OR_DT";
michael@0 327 // case TreeBuilder.H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6:
michael@0 328 // return "H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6";
michael@0 329 // case TreeBuilder.OBJECT:
michael@0 330 // return "OBJECT";
michael@0 331 // case TreeBuilder.OUTPUT_OR_LABEL:
michael@0 332 // return "OUTPUT_OR_LABEL";
michael@0 333 // case TreeBuilder.MARQUEE_OR_APPLET:
michael@0 334 // return "MARQUEE_OR_APPLET";
michael@0 335 // case TreeBuilder.PRE_OR_LISTING:
michael@0 336 // return "PRE_OR_LISTING";
michael@0 337 // case TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U:
michael@0 338 // return "B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U";
michael@0 339 // case TreeBuilder.UL_OR_OL_OR_DL:
michael@0 340 // return "UL_OR_OL_OR_DL";
michael@0 341 // case TreeBuilder.IFRAME:
michael@0 342 // return "IFRAME";
michael@0 343 // case TreeBuilder.NOEMBED:
michael@0 344 // return "NOEMBED";
michael@0 345 // case TreeBuilder.EMBED:
michael@0 346 // return "EMBED";
michael@0 347 // case TreeBuilder.IMG:
michael@0 348 // return "IMG";
michael@0 349 // case TreeBuilder.AREA_OR_WBR:
michael@0 350 // return "AREA_OR_WBR";
michael@0 351 // case TreeBuilder.DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU:
michael@0 352 // return "DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU";
michael@0 353 // case TreeBuilder.FIELDSET:
michael@0 354 // return "FIELDSET";
michael@0 355 // case TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY:
michael@0 356 // return "ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY";
michael@0 357 // case TreeBuilder.RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR:
michael@0 358 // return "RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR";
michael@0 359 // case TreeBuilder.RT_OR_RP:
michael@0 360 // return "RT_OR_RP";
michael@0 361 // case TreeBuilder.PARAM_OR_SOURCE_OR_TRACK:
michael@0 362 // return "PARAM_OR_SOURCE_OR_TRACK";
michael@0 363 // case TreeBuilder.MGLYPH_OR_MALIGNMARK:
michael@0 364 // return "MGLYPH_OR_MALIGNMARK";
michael@0 365 // case TreeBuilder.MI_MO_MN_MS_MTEXT:
michael@0 366 // return "MI_MO_MN_MS_MTEXT";
michael@0 367 // case TreeBuilder.ANNOTATION_XML:
michael@0 368 // return "ANNOTATION_XML";
michael@0 369 // case TreeBuilder.FOREIGNOBJECT_OR_DESC:
michael@0 370 // return "FOREIGNOBJECT_OR_DESC";
michael@0 371 // case TreeBuilder.MENUITEM:
michael@0 372 // return "MENUITEM";
michael@0 373 // }
michael@0 374 // return null;
michael@0 375 // }
michael@0 376 //
michael@0 377 // /**
michael@0 378 // * Regenerate self
michael@0 379 // *
michael@0 380 // * @param args
michael@0 381 // */
michael@0 382 // public static void main(String[] args) {
michael@0 383 // Arrays.sort(ELEMENT_NAMES);
michael@0 384 // for (int i = 1; i < ELEMENT_NAMES.length; i++) {
michael@0 385 // if (ELEMENT_NAMES[i].hash() == ELEMENT_NAMES[i - 1].hash()) {
michael@0 386 // System.err.println("Hash collision: " + ELEMENT_NAMES[i].name
michael@0 387 // + ", " + ELEMENT_NAMES[i - 1].name);
michael@0 388 // return;
michael@0 389 // }
michael@0 390 // }
michael@0 391 // for (int i = 0; i < ELEMENT_NAMES.length; i++) {
michael@0 392 // ElementName el = ELEMENT_NAMES[i];
michael@0 393 // System.out.println("public static final ElementName "
michael@0 394 // + el.constName() + " = new ElementName" + el.toString()
michael@0 395 // + ";");
michael@0 396 // }
michael@0 397 // System.out.println("private final static @NoLength ElementName[] ELEMENT_NAMES = {");
michael@0 398 // for (int i = 0; i < ELEMENT_NAMES.length; i++) {
michael@0 399 // ElementName el = ELEMENT_NAMES[i];
michael@0 400 // System.out.println(el.constName() + ",");
michael@0 401 // }
michael@0 402 // System.out.println("};");
michael@0 403 // System.out.println("private final static int[] ELEMENT_HASHES = {");
michael@0 404 // for (int i = 0; i < ELEMENT_NAMES.length; i++) {
michael@0 405 // ElementName el = ELEMENT_NAMES[i];
michael@0 406 // System.out.println(Integer.toString(el.hash()) + ",");
michael@0 407 // }
michael@0 408 // System.out.println("};");
michael@0 409 // }
michael@0 410
michael@0 411 // START GENERATED CODE
michael@0 412 public static final ElementName A = new ElementName("a", "a", TreeBuilder.A);
michael@0 413 public static final ElementName B = new ElementName("b", "b", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 414 public static final ElementName G = new ElementName("g", "g", TreeBuilder.OTHER);
michael@0 415 public static final ElementName I = new ElementName("i", "i", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 416 public static final ElementName P = new ElementName("p", "p", TreeBuilder.P | SPECIAL | OPTIONAL_END_TAG);
michael@0 417 public static final ElementName Q = new ElementName("q", "q", TreeBuilder.OTHER);
michael@0 418 public static final ElementName S = new ElementName("s", "s", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 419 public static final ElementName U = new ElementName("u", "u", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 420 public static final ElementName BR = new ElementName("br", "br", TreeBuilder.BR | SPECIAL);
michael@0 421 public static final ElementName CI = new ElementName("ci", "ci", TreeBuilder.OTHER);
michael@0 422 public static final ElementName CN = new ElementName("cn", "cn", TreeBuilder.OTHER);
michael@0 423 public static final ElementName DD = new ElementName("dd", "dd", TreeBuilder.DD_OR_DT | SPECIAL | OPTIONAL_END_TAG);
michael@0 424 public static final ElementName DL = new ElementName("dl", "dl", TreeBuilder.UL_OR_OL_OR_DL | SPECIAL);
michael@0 425 public static final ElementName DT = new ElementName("dt", "dt", TreeBuilder.DD_OR_DT | SPECIAL | OPTIONAL_END_TAG);
michael@0 426 public static final ElementName EM = new ElementName("em", "em", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 427 public static final ElementName EQ = new ElementName("eq", "eq", TreeBuilder.OTHER);
michael@0 428 public static final ElementName FN = new ElementName("fn", "fn", TreeBuilder.OTHER);
michael@0 429 public static final ElementName H1 = new ElementName("h1", "h1", TreeBuilder.H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
michael@0 430 public static final ElementName H2 = new ElementName("h2", "h2", TreeBuilder.H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
michael@0 431 public static final ElementName H3 = new ElementName("h3", "h3", TreeBuilder.H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
michael@0 432 public static final ElementName H4 = new ElementName("h4", "h4", TreeBuilder.H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
michael@0 433 public static final ElementName H5 = new ElementName("h5", "h5", TreeBuilder.H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
michael@0 434 public static final ElementName H6 = new ElementName("h6", "h6", TreeBuilder.H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
michael@0 435 public static final ElementName GT = new ElementName("gt", "gt", TreeBuilder.OTHER);
michael@0 436 public static final ElementName HR = new ElementName("hr", "hr", TreeBuilder.HR | SPECIAL);
michael@0 437 public static final ElementName IN = new ElementName("in", "in", TreeBuilder.OTHER);
michael@0 438 public static final ElementName LI = new ElementName("li", "li", TreeBuilder.LI | SPECIAL | OPTIONAL_END_TAG);
michael@0 439 public static final ElementName LN = new ElementName("ln", "ln", TreeBuilder.OTHER);
michael@0 440 public static final ElementName LT = new ElementName("lt", "lt", TreeBuilder.OTHER);
michael@0 441 public static final ElementName MI = new ElementName("mi", "mi", TreeBuilder.MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
michael@0 442 public static final ElementName MN = new ElementName("mn", "mn", TreeBuilder.MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
michael@0 443 public static final ElementName MO = new ElementName("mo", "mo", TreeBuilder.MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
michael@0 444 public static final ElementName MS = new ElementName("ms", "ms", TreeBuilder.MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
michael@0 445 public static final ElementName OL = new ElementName("ol", "ol", TreeBuilder.UL_OR_OL_OR_DL | SPECIAL);
michael@0 446 public static final ElementName OR = new ElementName("or", "or", TreeBuilder.OTHER);
michael@0 447 public static final ElementName PI = new ElementName("pi", "pi", TreeBuilder.OTHER);
michael@0 448 public static final ElementName RP = new ElementName("rp", "rp", TreeBuilder.RT_OR_RP | OPTIONAL_END_TAG);
michael@0 449 public static final ElementName RT = new ElementName("rt", "rt", TreeBuilder.RT_OR_RP | OPTIONAL_END_TAG);
michael@0 450 public static final ElementName TD = new ElementName("td", "td", TreeBuilder.TD_OR_TH | SPECIAL | SCOPING | OPTIONAL_END_TAG);
michael@0 451 public static final ElementName TH = new ElementName("th", "th", TreeBuilder.TD_OR_TH | SPECIAL | SCOPING | OPTIONAL_END_TAG);
michael@0 452 public static final ElementName TR = new ElementName("tr", "tr", TreeBuilder.TR | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
michael@0 453 public static final ElementName TT = new ElementName("tt", "tt", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 454 public static final ElementName UL = new ElementName("ul", "ul", TreeBuilder.UL_OR_OL_OR_DL | SPECIAL);
michael@0 455 public static final ElementName AND = new ElementName("and", "and", TreeBuilder.OTHER);
michael@0 456 public static final ElementName ARG = new ElementName("arg", "arg", TreeBuilder.OTHER);
michael@0 457 public static final ElementName ABS = new ElementName("abs", "abs", TreeBuilder.OTHER);
michael@0 458 public static final ElementName BIG = new ElementName("big", "big", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 459 public static final ElementName BDO = new ElementName("bdo", "bdo", TreeBuilder.OTHER);
michael@0 460 public static final ElementName CSC = new ElementName("csc", "csc", TreeBuilder.OTHER);
michael@0 461 public static final ElementName COL = new ElementName("col", "col", TreeBuilder.COL | SPECIAL);
michael@0 462 public static final ElementName COS = new ElementName("cos", "cos", TreeBuilder.OTHER);
michael@0 463 public static final ElementName COT = new ElementName("cot", "cot", TreeBuilder.OTHER);
michael@0 464 public static final ElementName DEL = new ElementName("del", "del", TreeBuilder.OTHER);
michael@0 465 public static final ElementName DFN = new ElementName("dfn", "dfn", TreeBuilder.OTHER);
michael@0 466 public static final ElementName DIR = new ElementName("dir", "dir", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 467 public static final ElementName DIV = new ElementName("div", "div", TreeBuilder.DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
michael@0 468 public static final ElementName EXP = new ElementName("exp", "exp", TreeBuilder.OTHER);
michael@0 469 public static final ElementName GCD = new ElementName("gcd", "gcd", TreeBuilder.OTHER);
michael@0 470 public static final ElementName GEQ = new ElementName("geq", "geq", TreeBuilder.OTHER);
michael@0 471 public static final ElementName IMG = new ElementName("img", "img", TreeBuilder.IMG | SPECIAL);
michael@0 472 public static final ElementName INS = new ElementName("ins", "ins", TreeBuilder.OTHER);
michael@0 473 public static final ElementName INT = new ElementName("int", "int", TreeBuilder.OTHER);
michael@0 474 public static final ElementName KBD = new ElementName("kbd", "kbd", TreeBuilder.OTHER);
michael@0 475 public static final ElementName LOG = new ElementName("log", "log", TreeBuilder.OTHER);
michael@0 476 public static final ElementName LCM = new ElementName("lcm", "lcm", TreeBuilder.OTHER);
michael@0 477 public static final ElementName LEQ = new ElementName("leq", "leq", TreeBuilder.OTHER);
michael@0 478 public static final ElementName MTD = new ElementName("mtd", "mtd", TreeBuilder.OTHER);
michael@0 479 public static final ElementName MIN = new ElementName("min", "min", TreeBuilder.OTHER);
michael@0 480 public static final ElementName MAP = new ElementName("map", "map", TreeBuilder.OTHER);
michael@0 481 public static final ElementName MTR = new ElementName("mtr", "mtr", TreeBuilder.OTHER);
michael@0 482 public static final ElementName MAX = new ElementName("max", "max", TreeBuilder.OTHER);
michael@0 483 public static final ElementName NEQ = new ElementName("neq", "neq", TreeBuilder.OTHER);
michael@0 484 public static final ElementName NOT = new ElementName("not", "not", TreeBuilder.OTHER);
michael@0 485 public static final ElementName NAV = new ElementName("nav", "nav", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 486 public static final ElementName PRE = new ElementName("pre", "pre", TreeBuilder.PRE_OR_LISTING | SPECIAL);
michael@0 487 public static final ElementName REM = new ElementName("rem", "rem", TreeBuilder.OTHER);
michael@0 488 public static final ElementName SUB = new ElementName("sub", "sub", TreeBuilder.RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
michael@0 489 public static final ElementName SEC = new ElementName("sec", "sec", TreeBuilder.OTHER);
michael@0 490 public static final ElementName SVG = new ElementName("svg", "svg", TreeBuilder.SVG);
michael@0 491 public static final ElementName SUM = new ElementName("sum", "sum", TreeBuilder.OTHER);
michael@0 492 public static final ElementName SIN = new ElementName("sin", "sin", TreeBuilder.OTHER);
michael@0 493 public static final ElementName SEP = new ElementName("sep", "sep", TreeBuilder.OTHER);
michael@0 494 public static final ElementName SUP = new ElementName("sup", "sup", TreeBuilder.RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
michael@0 495 public static final ElementName SET = new ElementName("set", "set", TreeBuilder.OTHER);
michael@0 496 public static final ElementName TAN = new ElementName("tan", "tan", TreeBuilder.OTHER);
michael@0 497 public static final ElementName USE = new ElementName("use", "use", TreeBuilder.OTHER);
michael@0 498 public static final ElementName VAR = new ElementName("var", "var", TreeBuilder.RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
michael@0 499 public static final ElementName WBR = new ElementName("wbr", "wbr", TreeBuilder.AREA_OR_WBR | SPECIAL);
michael@0 500 public static final ElementName XMP = new ElementName("xmp", "xmp", TreeBuilder.XMP | SPECIAL);
michael@0 501 public static final ElementName XOR = new ElementName("xor", "xor", TreeBuilder.OTHER);
michael@0 502 public static final ElementName AREA = new ElementName("area", "area", TreeBuilder.AREA_OR_WBR | SPECIAL);
michael@0 503 public static final ElementName ABBR = new ElementName("abbr", "abbr", TreeBuilder.OTHER);
michael@0 504 public static final ElementName BASE = new ElementName("base", "base", TreeBuilder.BASE | SPECIAL);
michael@0 505 public static final ElementName BVAR = new ElementName("bvar", "bvar", TreeBuilder.OTHER);
michael@0 506 public static final ElementName BODY = new ElementName("body", "body", TreeBuilder.BODY | SPECIAL | OPTIONAL_END_TAG);
michael@0 507 public static final ElementName CARD = new ElementName("card", "card", TreeBuilder.OTHER);
michael@0 508 public static final ElementName CODE = new ElementName("code", "code", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 509 public static final ElementName CITE = new ElementName("cite", "cite", TreeBuilder.OTHER);
michael@0 510 public static final ElementName CSCH = new ElementName("csch", "csch", TreeBuilder.OTHER);
michael@0 511 public static final ElementName COSH = new ElementName("cosh", "cosh", TreeBuilder.OTHER);
michael@0 512 public static final ElementName COTH = new ElementName("coth", "coth", TreeBuilder.OTHER);
michael@0 513 public static final ElementName CURL = new ElementName("curl", "curl", TreeBuilder.OTHER);
michael@0 514 public static final ElementName DESC = new ElementName("desc", "desc", TreeBuilder.FOREIGNOBJECT_OR_DESC | SCOPING_AS_SVG);
michael@0 515 public static final ElementName DIFF = new ElementName("diff", "diff", TreeBuilder.OTHER);
michael@0 516 public static final ElementName DEFS = new ElementName("defs", "defs", TreeBuilder.OTHER);
michael@0 517 public static final ElementName FORM = new ElementName("form", "form", TreeBuilder.FORM | SPECIAL);
michael@0 518 public static final ElementName FONT = new ElementName("font", "font", TreeBuilder.FONT);
michael@0 519 public static final ElementName GRAD = new ElementName("grad", "grad", TreeBuilder.OTHER);
michael@0 520 public static final ElementName HEAD = new ElementName("head", "head", TreeBuilder.HEAD | SPECIAL | OPTIONAL_END_TAG);
michael@0 521 public static final ElementName HTML = new ElementName("html", "html", TreeBuilder.HTML | SPECIAL | SCOPING | OPTIONAL_END_TAG);
michael@0 522 public static final ElementName LINE = new ElementName("line", "line", TreeBuilder.OTHER);
michael@0 523 public static final ElementName LINK = new ElementName("link", "link", TreeBuilder.LINK_OR_BASEFONT_OR_BGSOUND | SPECIAL);
michael@0 524 public static final ElementName LIST = new ElementName("list", "list", TreeBuilder.OTHER);
michael@0 525 public static final ElementName META = new ElementName("meta", "meta", TreeBuilder.META | SPECIAL);
michael@0 526 public static final ElementName MSUB = new ElementName("msub", "msub", TreeBuilder.OTHER);
michael@0 527 public static final ElementName MODE = new ElementName("mode", "mode", TreeBuilder.OTHER);
michael@0 528 public static final ElementName MATH = new ElementName("math", "math", TreeBuilder.MATH);
michael@0 529 public static final ElementName MARK = new ElementName("mark", "mark", TreeBuilder.OTHER);
michael@0 530 public static final ElementName MASK = new ElementName("mask", "mask", TreeBuilder.OTHER);
michael@0 531 public static final ElementName MEAN = new ElementName("mean", "mean", TreeBuilder.OTHER);
michael@0 532 public static final ElementName MAIN = new ElementName("main", "main", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 533 public static final ElementName MSUP = new ElementName("msup", "msup", TreeBuilder.OTHER);
michael@0 534 public static final ElementName MENU = new ElementName("menu", "menu", TreeBuilder.DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
michael@0 535 public static final ElementName MROW = new ElementName("mrow", "mrow", TreeBuilder.OTHER);
michael@0 536 public static final ElementName NONE = new ElementName("none", "none", TreeBuilder.OTHER);
michael@0 537 public static final ElementName NOBR = new ElementName("nobr", "nobr", TreeBuilder.NOBR);
michael@0 538 public static final ElementName NEST = new ElementName("nest", "nest", TreeBuilder.OTHER);
michael@0 539 public static final ElementName PATH = new ElementName("path", "path", TreeBuilder.OTHER);
michael@0 540 public static final ElementName PLUS = new ElementName("plus", "plus", TreeBuilder.OTHER);
michael@0 541 public static final ElementName RULE = new ElementName("rule", "rule", TreeBuilder.OTHER);
michael@0 542 public static final ElementName REAL = new ElementName("real", "real", TreeBuilder.OTHER);
michael@0 543 public static final ElementName RELN = new ElementName("reln", "reln", TreeBuilder.OTHER);
michael@0 544 public static final ElementName RECT = new ElementName("rect", "rect", TreeBuilder.OTHER);
michael@0 545 public static final ElementName ROOT = new ElementName("root", "root", TreeBuilder.OTHER);
michael@0 546 public static final ElementName RUBY = new ElementName("ruby", "ruby", TreeBuilder.RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
michael@0 547 public static final ElementName SECH = new ElementName("sech", "sech", TreeBuilder.OTHER);
michael@0 548 public static final ElementName SINH = new ElementName("sinh", "sinh", TreeBuilder.OTHER);
michael@0 549 public static final ElementName SPAN = new ElementName("span", "span", TreeBuilder.RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
michael@0 550 public static final ElementName SAMP = new ElementName("samp", "samp", TreeBuilder.OTHER);
michael@0 551 public static final ElementName STOP = new ElementName("stop", "stop", TreeBuilder.OTHER);
michael@0 552 public static final ElementName SDEV = new ElementName("sdev", "sdev", TreeBuilder.OTHER);
michael@0 553 public static final ElementName TIME = new ElementName("time", "time", TreeBuilder.OTHER);
michael@0 554 public static final ElementName TRUE = new ElementName("true", "true", TreeBuilder.OTHER);
michael@0 555 public static final ElementName TREF = new ElementName("tref", "tref", TreeBuilder.OTHER);
michael@0 556 public static final ElementName TANH = new ElementName("tanh", "tanh", TreeBuilder.OTHER);
michael@0 557 public static final ElementName TEXT = new ElementName("text", "text", TreeBuilder.OTHER);
michael@0 558 public static final ElementName VIEW = new ElementName("view", "view", TreeBuilder.OTHER);
michael@0 559 public static final ElementName ASIDE = new ElementName("aside", "aside", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 560 public static final ElementName AUDIO = new ElementName("audio", "audio", TreeBuilder.OTHER);
michael@0 561 public static final ElementName APPLY = new ElementName("apply", "apply", TreeBuilder.OTHER);
michael@0 562 public static final ElementName EMBED = new ElementName("embed", "embed", TreeBuilder.EMBED | SPECIAL);
michael@0 563 public static final ElementName FRAME = new ElementName("frame", "frame", TreeBuilder.FRAME | SPECIAL);
michael@0 564 public static final ElementName FALSE = new ElementName("false", "false", TreeBuilder.OTHER);
michael@0 565 public static final ElementName FLOOR = new ElementName("floor", "floor", TreeBuilder.OTHER);
michael@0 566 public static final ElementName GLYPH = new ElementName("glyph", "glyph", TreeBuilder.OTHER);
michael@0 567 public static final ElementName HKERN = new ElementName("hkern", "hkern", TreeBuilder.OTHER);
michael@0 568 public static final ElementName IMAGE = new ElementName("image", "image", TreeBuilder.IMAGE);
michael@0 569 public static final ElementName IDENT = new ElementName("ident", "ident", TreeBuilder.OTHER);
michael@0 570 public static final ElementName INPUT = new ElementName("input", "input", TreeBuilder.INPUT | SPECIAL);
michael@0 571 public static final ElementName LABEL = new ElementName("label", "label", TreeBuilder.OUTPUT_OR_LABEL);
michael@0 572 public static final ElementName LIMIT = new ElementName("limit", "limit", TreeBuilder.OTHER);
michael@0 573 public static final ElementName MFRAC = new ElementName("mfrac", "mfrac", TreeBuilder.OTHER);
michael@0 574 public static final ElementName MPATH = new ElementName("mpath", "mpath", TreeBuilder.OTHER);
michael@0 575 public static final ElementName METER = new ElementName("meter", "meter", TreeBuilder.OTHER);
michael@0 576 public static final ElementName MOVER = new ElementName("mover", "mover", TreeBuilder.OTHER);
michael@0 577 public static final ElementName MINUS = new ElementName("minus", "minus", TreeBuilder.OTHER);
michael@0 578 public static final ElementName MROOT = new ElementName("mroot", "mroot", TreeBuilder.OTHER);
michael@0 579 public static final ElementName MSQRT = new ElementName("msqrt", "msqrt", TreeBuilder.OTHER);
michael@0 580 public static final ElementName MTEXT = new ElementName("mtext", "mtext", TreeBuilder.MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
michael@0 581 public static final ElementName NOTIN = new ElementName("notin", "notin", TreeBuilder.OTHER);
michael@0 582 public static final ElementName PIECE = new ElementName("piece", "piece", TreeBuilder.OTHER);
michael@0 583 public static final ElementName PARAM = new ElementName("param", "param", TreeBuilder.PARAM_OR_SOURCE_OR_TRACK | SPECIAL);
michael@0 584 public static final ElementName POWER = new ElementName("power", "power", TreeBuilder.OTHER);
michael@0 585 public static final ElementName REALS = new ElementName("reals", "reals", TreeBuilder.OTHER);
michael@0 586 public static final ElementName STYLE = new ElementName("style", "style", TreeBuilder.STYLE | SPECIAL);
michael@0 587 public static final ElementName SMALL = new ElementName("small", "small", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 588 public static final ElementName THEAD = new ElementName("thead", "thead", TreeBuilder.TBODY_OR_THEAD_OR_TFOOT | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
michael@0 589 public static final ElementName TABLE = new ElementName("table", "table", TreeBuilder.TABLE | SPECIAL | FOSTER_PARENTING | SCOPING);
michael@0 590 public static final ElementName TITLE = new ElementName("title", "title", TreeBuilder.TITLE | SPECIAL | SCOPING_AS_SVG);
michael@0 591 public static final ElementName TRACK = new ElementName("track", "track", TreeBuilder.PARAM_OR_SOURCE_OR_TRACK | SPECIAL);
michael@0 592 public static final ElementName TSPAN = new ElementName("tspan", "tspan", TreeBuilder.OTHER);
michael@0 593 public static final ElementName TIMES = new ElementName("times", "times", TreeBuilder.OTHER);
michael@0 594 public static final ElementName TFOOT = new ElementName("tfoot", "tfoot", TreeBuilder.TBODY_OR_THEAD_OR_TFOOT | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
michael@0 595 public static final ElementName TBODY = new ElementName("tbody", "tbody", TreeBuilder.TBODY_OR_THEAD_OR_TFOOT | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
michael@0 596 public static final ElementName UNION = new ElementName("union", "union", TreeBuilder.OTHER);
michael@0 597 public static final ElementName VKERN = new ElementName("vkern", "vkern", TreeBuilder.OTHER);
michael@0 598 public static final ElementName VIDEO = new ElementName("video", "video", TreeBuilder.OTHER);
michael@0 599 public static final ElementName ARCSEC = new ElementName("arcsec", "arcsec", TreeBuilder.OTHER);
michael@0 600 public static final ElementName ARCCSC = new ElementName("arccsc", "arccsc", TreeBuilder.OTHER);
michael@0 601 public static final ElementName ARCTAN = new ElementName("arctan", "arctan", TreeBuilder.OTHER);
michael@0 602 public static final ElementName ARCSIN = new ElementName("arcsin", "arcsin", TreeBuilder.OTHER);
michael@0 603 public static final ElementName ARCCOS = new ElementName("arccos", "arccos", TreeBuilder.OTHER);
michael@0 604 public static final ElementName APPLET = new ElementName("applet", "applet", TreeBuilder.MARQUEE_OR_APPLET | SPECIAL | SCOPING);
michael@0 605 public static final ElementName ARCCOT = new ElementName("arccot", "arccot", TreeBuilder.OTHER);
michael@0 606 public static final ElementName APPROX = new ElementName("approx", "approx", TreeBuilder.OTHER);
michael@0 607 public static final ElementName BUTTON = new ElementName("button", "button", TreeBuilder.BUTTON | SPECIAL);
michael@0 608 public static final ElementName CIRCLE = new ElementName("circle", "circle", TreeBuilder.OTHER);
michael@0 609 public static final ElementName CENTER = new ElementName("center", "center", TreeBuilder.DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
michael@0 610 public static final ElementName CURSOR = new ElementName("cursor", "cursor", TreeBuilder.OTHER);
michael@0 611 public static final ElementName CANVAS = new ElementName("canvas", "canvas", TreeBuilder.OTHER);
michael@0 612 public static final ElementName DIVIDE = new ElementName("divide", "divide", TreeBuilder.OTHER);
michael@0 613 public static final ElementName DEGREE = new ElementName("degree", "degree", TreeBuilder.OTHER);
michael@0 614 public static final ElementName DOMAIN = new ElementName("domain", "domain", TreeBuilder.OTHER);
michael@0 615 public static final ElementName EXISTS = new ElementName("exists", "exists", TreeBuilder.OTHER);
michael@0 616 public static final ElementName FETILE = new ElementName("fetile", "feTile", TreeBuilder.OTHER);
michael@0 617 public static final ElementName FIGURE = new ElementName("figure", "figure", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 618 public static final ElementName FORALL = new ElementName("forall", "forall", TreeBuilder.OTHER);
michael@0 619 public static final ElementName FILTER = new ElementName("filter", "filter", TreeBuilder.OTHER);
michael@0 620 public static final ElementName FOOTER = new ElementName("footer", "footer", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 621 public static final ElementName HGROUP = new ElementName("hgroup", "hgroup", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 622 public static final ElementName HEADER = new ElementName("header", "header", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 623 public static final ElementName IFRAME = new ElementName("iframe", "iframe", TreeBuilder.IFRAME | SPECIAL);
michael@0 624 public static final ElementName KEYGEN = new ElementName("keygen", "keygen", TreeBuilder.KEYGEN);
michael@0 625 public static final ElementName LAMBDA = new ElementName("lambda", "lambda", TreeBuilder.OTHER);
michael@0 626 public static final ElementName LEGEND = new ElementName("legend", "legend", TreeBuilder.OTHER);
michael@0 627 public static final ElementName MSPACE = new ElementName("mspace", "mspace", TreeBuilder.OTHER);
michael@0 628 public static final ElementName MTABLE = new ElementName("mtable", "mtable", TreeBuilder.OTHER);
michael@0 629 public static final ElementName MSTYLE = new ElementName("mstyle", "mstyle", TreeBuilder.OTHER);
michael@0 630 public static final ElementName MGLYPH = new ElementName("mglyph", "mglyph", TreeBuilder.MGLYPH_OR_MALIGNMARK);
michael@0 631 public static final ElementName MEDIAN = new ElementName("median", "median", TreeBuilder.OTHER);
michael@0 632 public static final ElementName MUNDER = new ElementName("munder", "munder", TreeBuilder.OTHER);
michael@0 633 public static final ElementName MARKER = new ElementName("marker", "marker", TreeBuilder.OTHER);
michael@0 634 public static final ElementName MERROR = new ElementName("merror", "merror", TreeBuilder.OTHER);
michael@0 635 public static final ElementName MOMENT = new ElementName("moment", "moment", TreeBuilder.OTHER);
michael@0 636 public static final ElementName MATRIX = new ElementName("matrix", "matrix", TreeBuilder.OTHER);
michael@0 637 public static final ElementName OPTION = new ElementName("option", "option", TreeBuilder.OPTION | OPTIONAL_END_TAG);
michael@0 638 public static final ElementName OBJECT = new ElementName("object", "object", TreeBuilder.OBJECT | SPECIAL | SCOPING);
michael@0 639 public static final ElementName OUTPUT = new ElementName("output", "output", TreeBuilder.OUTPUT_OR_LABEL);
michael@0 640 public static final ElementName PRIMES = new ElementName("primes", "primes", TreeBuilder.OTHER);
michael@0 641 public static final ElementName SOURCE = new ElementName("source", "source", TreeBuilder.PARAM_OR_SOURCE_OR_TRACK);
michael@0 642 public static final ElementName STRIKE = new ElementName("strike", "strike", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 643 public static final ElementName STRONG = new ElementName("strong", "strong", TreeBuilder.B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
michael@0 644 public static final ElementName SWITCH = new ElementName("switch", "switch", TreeBuilder.OTHER);
michael@0 645 public static final ElementName SYMBOL = new ElementName("symbol", "symbol", TreeBuilder.OTHER);
michael@0 646 public static final ElementName SELECT = new ElementName("select", "select", TreeBuilder.SELECT | SPECIAL);
michael@0 647 public static final ElementName SUBSET = new ElementName("subset", "subset", TreeBuilder.OTHER);
michael@0 648 public static final ElementName SCRIPT = new ElementName("script", "script", TreeBuilder.SCRIPT | SPECIAL);
michael@0 649 public static final ElementName TBREAK = new ElementName("tbreak", "tbreak", TreeBuilder.OTHER);
michael@0 650 public static final ElementName VECTOR = new ElementName("vector", "vector", TreeBuilder.OTHER);
michael@0 651 public static final ElementName ARTICLE = new ElementName("article", "article", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 652 public static final ElementName ANIMATE = new ElementName("animate", "animate", TreeBuilder.OTHER);
michael@0 653 public static final ElementName ARCSECH = new ElementName("arcsech", "arcsech", TreeBuilder.OTHER);
michael@0 654 public static final ElementName ARCCSCH = new ElementName("arccsch", "arccsch", TreeBuilder.OTHER);
michael@0 655 public static final ElementName ARCTANH = new ElementName("arctanh", "arctanh", TreeBuilder.OTHER);
michael@0 656 public static final ElementName ARCSINH = new ElementName("arcsinh", "arcsinh", TreeBuilder.OTHER);
michael@0 657 public static final ElementName ARCCOSH = new ElementName("arccosh", "arccosh", TreeBuilder.OTHER);
michael@0 658 public static final ElementName ARCCOTH = new ElementName("arccoth", "arccoth", TreeBuilder.OTHER);
michael@0 659 public static final ElementName ACRONYM = new ElementName("acronym", "acronym", TreeBuilder.OTHER);
michael@0 660 public static final ElementName ADDRESS = new ElementName("address", "address", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 661 public static final ElementName BGSOUND = new ElementName("bgsound", "bgsound", TreeBuilder.LINK_OR_BASEFONT_OR_BGSOUND | SPECIAL);
michael@0 662 public static final ElementName COMPOSE = new ElementName("compose", "compose", TreeBuilder.OTHER);
michael@0 663 public static final ElementName CEILING = new ElementName("ceiling", "ceiling", TreeBuilder.OTHER);
michael@0 664 public static final ElementName CSYMBOL = new ElementName("csymbol", "csymbol", TreeBuilder.OTHER);
michael@0 665 public static final ElementName CAPTION = new ElementName("caption", "caption", TreeBuilder.CAPTION | SPECIAL | SCOPING);
michael@0 666 public static final ElementName DISCARD = new ElementName("discard", "discard", TreeBuilder.OTHER);
michael@0 667 public static final ElementName DECLARE = new ElementName("declare", "declare", TreeBuilder.OTHER);
michael@0 668 public static final ElementName DETAILS = new ElementName("details", "details", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 669 public static final ElementName ELLIPSE = new ElementName("ellipse", "ellipse", TreeBuilder.OTHER);
michael@0 670 public static final ElementName FEFUNCA = new ElementName("fefunca", "feFuncA", TreeBuilder.OTHER);
michael@0 671 public static final ElementName FEFUNCB = new ElementName("fefuncb", "feFuncB", TreeBuilder.OTHER);
michael@0 672 public static final ElementName FEBLEND = new ElementName("feblend", "feBlend", TreeBuilder.OTHER);
michael@0 673 public static final ElementName FEFLOOD = new ElementName("feflood", "feFlood", TreeBuilder.OTHER);
michael@0 674 public static final ElementName FEIMAGE = new ElementName("feimage", "feImage", TreeBuilder.OTHER);
michael@0 675 public static final ElementName FEMERGE = new ElementName("femerge", "feMerge", TreeBuilder.OTHER);
michael@0 676 public static final ElementName FEFUNCG = new ElementName("fefuncg", "feFuncG", TreeBuilder.OTHER);
michael@0 677 public static final ElementName FEFUNCR = new ElementName("fefuncr", "feFuncR", TreeBuilder.OTHER);
michael@0 678 public static final ElementName HANDLER = new ElementName("handler", "handler", TreeBuilder.OTHER);
michael@0 679 public static final ElementName INVERSE = new ElementName("inverse", "inverse", TreeBuilder.OTHER);
michael@0 680 public static final ElementName IMPLIES = new ElementName("implies", "implies", TreeBuilder.OTHER);
michael@0 681 public static final ElementName ISINDEX = new ElementName("isindex", "isindex", TreeBuilder.ISINDEX | SPECIAL);
michael@0 682 public static final ElementName LOGBASE = new ElementName("logbase", "logbase", TreeBuilder.OTHER);
michael@0 683 public static final ElementName LISTING = new ElementName("listing", "listing", TreeBuilder.PRE_OR_LISTING | SPECIAL);
michael@0 684 public static final ElementName MFENCED = new ElementName("mfenced", "mfenced", TreeBuilder.OTHER);
michael@0 685 public static final ElementName MPADDED = new ElementName("mpadded", "mpadded", TreeBuilder.OTHER);
michael@0 686 public static final ElementName MARQUEE = new ElementName("marquee", "marquee", TreeBuilder.MARQUEE_OR_APPLET | SPECIAL | SCOPING);
michael@0 687 public static final ElementName MACTION = new ElementName("maction", "maction", TreeBuilder.OTHER);
michael@0 688 public static final ElementName MSUBSUP = new ElementName("msubsup", "msubsup", TreeBuilder.OTHER);
michael@0 689 public static final ElementName NOEMBED = new ElementName("noembed", "noembed", TreeBuilder.NOEMBED | SPECIAL);
michael@0 690 public static final ElementName POLYGON = new ElementName("polygon", "polygon", TreeBuilder.OTHER);
michael@0 691 public static final ElementName PATTERN = new ElementName("pattern", "pattern", TreeBuilder.OTHER);
michael@0 692 public static final ElementName PRODUCT = new ElementName("product", "product", TreeBuilder.OTHER);
michael@0 693 public static final ElementName SETDIFF = new ElementName("setdiff", "setdiff", TreeBuilder.OTHER);
michael@0 694 public static final ElementName SECTION = new ElementName("section", "section", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 695 public static final ElementName SUMMARY = new ElementName("summary", "summary", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 696 public static final ElementName TENDSTO = new ElementName("tendsto", "tendsto", TreeBuilder.OTHER);
michael@0 697 public static final ElementName UPLIMIT = new ElementName("uplimit", "uplimit", TreeBuilder.OTHER);
michael@0 698 public static final ElementName ALTGLYPH = new ElementName("altglyph", "altGlyph", TreeBuilder.OTHER);
michael@0 699 public static final ElementName BASEFONT = new ElementName("basefont", "basefont", TreeBuilder.LINK_OR_BASEFONT_OR_BGSOUND | SPECIAL);
michael@0 700 public static final ElementName CLIPPATH = new ElementName("clippath", "clipPath", TreeBuilder.OTHER);
michael@0 701 public static final ElementName CODOMAIN = new ElementName("codomain", "codomain", TreeBuilder.OTHER);
michael@0 702 public static final ElementName COLGROUP = new ElementName("colgroup", "colgroup", TreeBuilder.COLGROUP | SPECIAL | OPTIONAL_END_TAG);
michael@0 703 public static final ElementName EMPTYSET = new ElementName("emptyset", "emptyset", TreeBuilder.OTHER);
michael@0 704 public static final ElementName FACTOROF = new ElementName("factorof", "factorof", TreeBuilder.OTHER);
michael@0 705 public static final ElementName FIELDSET = new ElementName("fieldset", "fieldset", TreeBuilder.FIELDSET | SPECIAL);
michael@0 706 public static final ElementName FRAMESET = new ElementName("frameset", "frameset", TreeBuilder.FRAMESET | SPECIAL);
michael@0 707 public static final ElementName FEOFFSET = new ElementName("feoffset", "feOffset", TreeBuilder.OTHER);
michael@0 708 public static final ElementName GLYPHREF = new ElementName("glyphref", "glyphRef", TreeBuilder.OTHER);
michael@0 709 public static final ElementName INTERVAL = new ElementName("interval", "interval", TreeBuilder.OTHER);
michael@0 710 public static final ElementName INTEGERS = new ElementName("integers", "integers", TreeBuilder.OTHER);
michael@0 711 public static final ElementName INFINITY = new ElementName("infinity", "infinity", TreeBuilder.OTHER);
michael@0 712 public static final ElementName LISTENER = new ElementName("listener", "listener", TreeBuilder.OTHER);
michael@0 713 public static final ElementName LOWLIMIT = new ElementName("lowlimit", "lowlimit", TreeBuilder.OTHER);
michael@0 714 public static final ElementName METADATA = new ElementName("metadata", "metadata", TreeBuilder.OTHER);
michael@0 715 public static final ElementName MENCLOSE = new ElementName("menclose", "menclose", TreeBuilder.OTHER);
michael@0 716 public static final ElementName MENUITEM = new ElementName("menuitem", "menuitem", TreeBuilder.MENUITEM);
michael@0 717 public static final ElementName MPHANTOM = new ElementName("mphantom", "mphantom", TreeBuilder.OTHER);
michael@0 718 public static final ElementName NOFRAMES = new ElementName("noframes", "noframes", TreeBuilder.NOFRAMES | SPECIAL);
michael@0 719 public static final ElementName NOSCRIPT = new ElementName("noscript", "noscript", TreeBuilder.NOSCRIPT | SPECIAL);
michael@0 720 public static final ElementName OPTGROUP = new ElementName("optgroup", "optgroup", TreeBuilder.OPTGROUP | OPTIONAL_END_TAG);
michael@0 721 public static final ElementName POLYLINE = new ElementName("polyline", "polyline", TreeBuilder.OTHER);
michael@0 722 public static final ElementName PREFETCH = new ElementName("prefetch", "prefetch", TreeBuilder.OTHER);
michael@0 723 public static final ElementName PROGRESS = new ElementName("progress", "progress", TreeBuilder.OTHER);
michael@0 724 public static final ElementName PRSUBSET = new ElementName("prsubset", "prsubset", TreeBuilder.OTHER);
michael@0 725 public static final ElementName QUOTIENT = new ElementName("quotient", "quotient", TreeBuilder.OTHER);
michael@0 726 public static final ElementName SELECTOR = new ElementName("selector", "selector", TreeBuilder.OTHER);
michael@0 727 public static final ElementName TEXTAREA = new ElementName("textarea", "textarea", TreeBuilder.TEXTAREA | SPECIAL);
michael@0 728 public static final ElementName TEMPLATE = new ElementName("template", "template", TreeBuilder.TEMPLATE | SPECIAL | SCOPING);
michael@0 729 public static final ElementName TEXTPATH = new ElementName("textpath", "textPath", TreeBuilder.OTHER);
michael@0 730 public static final ElementName VARIANCE = new ElementName("variance", "variance", TreeBuilder.OTHER);
michael@0 731 public static final ElementName ANIMATION = new ElementName("animation", "animation", TreeBuilder.OTHER);
michael@0 732 public static final ElementName CONJUGATE = new ElementName("conjugate", "conjugate", TreeBuilder.OTHER);
michael@0 733 public static final ElementName CONDITION = new ElementName("condition", "condition", TreeBuilder.OTHER);
michael@0 734 public static final ElementName COMPLEXES = new ElementName("complexes", "complexes", TreeBuilder.OTHER);
michael@0 735 public static final ElementName FONT_FACE = new ElementName("font-face", "font-face", TreeBuilder.OTHER);
michael@0 736 public static final ElementName FACTORIAL = new ElementName("factorial", "factorial", TreeBuilder.OTHER);
michael@0 737 public static final ElementName INTERSECT = new ElementName("intersect", "intersect", TreeBuilder.OTHER);
michael@0 738 public static final ElementName IMAGINARY = new ElementName("imaginary", "imaginary", TreeBuilder.OTHER);
michael@0 739 public static final ElementName LAPLACIAN = new ElementName("laplacian", "laplacian", TreeBuilder.OTHER);
michael@0 740 public static final ElementName MATRIXROW = new ElementName("matrixrow", "matrixrow", TreeBuilder.OTHER);
michael@0 741 public static final ElementName NOTSUBSET = new ElementName("notsubset", "notsubset", TreeBuilder.OTHER);
michael@0 742 public static final ElementName OTHERWISE = new ElementName("otherwise", "otherwise", TreeBuilder.OTHER);
michael@0 743 public static final ElementName PIECEWISE = new ElementName("piecewise", "piecewise", TreeBuilder.OTHER);
michael@0 744 public static final ElementName PLAINTEXT = new ElementName("plaintext", "plaintext", TreeBuilder.PLAINTEXT | SPECIAL);
michael@0 745 public static final ElementName RATIONALS = new ElementName("rationals", "rationals", TreeBuilder.OTHER);
michael@0 746 public static final ElementName SEMANTICS = new ElementName("semantics", "semantics", TreeBuilder.OTHER);
michael@0 747 public static final ElementName TRANSPOSE = new ElementName("transpose", "transpose", TreeBuilder.OTHER);
michael@0 748 public static final ElementName ANNOTATION = new ElementName("annotation", "annotation", TreeBuilder.OTHER);
michael@0 749 public static final ElementName BLOCKQUOTE = new ElementName("blockquote", "blockquote", TreeBuilder.DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
michael@0 750 public static final ElementName DIVERGENCE = new ElementName("divergence", "divergence", TreeBuilder.OTHER);
michael@0 751 public static final ElementName EULERGAMMA = new ElementName("eulergamma", "eulergamma", TreeBuilder.OTHER);
michael@0 752 public static final ElementName EQUIVALENT = new ElementName("equivalent", "equivalent", TreeBuilder.OTHER);
michael@0 753 public static final ElementName FIGCAPTION = new ElementName("figcaption", "figcaption", TreeBuilder.ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
michael@0 754 public static final ElementName IMAGINARYI = new ElementName("imaginaryi", "imaginaryi", TreeBuilder.OTHER);
michael@0 755 public static final ElementName MALIGNMARK = new ElementName("malignmark", "malignmark", TreeBuilder.MGLYPH_OR_MALIGNMARK);
michael@0 756 public static final ElementName MUNDEROVER = new ElementName("munderover", "munderover", TreeBuilder.OTHER);
michael@0 757 public static final ElementName MLABELEDTR = new ElementName("mlabeledtr", "mlabeledtr", TreeBuilder.OTHER);
michael@0 758 public static final ElementName NOTANUMBER = new ElementName("notanumber", "notanumber", TreeBuilder.OTHER);
michael@0 759 public static final ElementName SOLIDCOLOR = new ElementName("solidcolor", "solidcolor", TreeBuilder.OTHER);
michael@0 760 public static final ElementName ALTGLYPHDEF = new ElementName("altglyphdef", "altGlyphDef", TreeBuilder.OTHER);
michael@0 761 public static final ElementName DETERMINANT = new ElementName("determinant", "determinant", TreeBuilder.OTHER);
michael@0 762 public static final ElementName FEMERGENODE = new ElementName("femergenode", "feMergeNode", TreeBuilder.OTHER);
michael@0 763 public static final ElementName FECOMPOSITE = new ElementName("fecomposite", "feComposite", TreeBuilder.OTHER);
michael@0 764 public static final ElementName FESPOTLIGHT = new ElementName("fespotlight", "feSpotLight", TreeBuilder.OTHER);
michael@0 765 public static final ElementName MALIGNGROUP = new ElementName("maligngroup", "maligngroup", TreeBuilder.OTHER);
michael@0 766 public static final ElementName MPRESCRIPTS = new ElementName("mprescripts", "mprescripts", TreeBuilder.OTHER);
michael@0 767 public static final ElementName MOMENTABOUT = new ElementName("momentabout", "momentabout", TreeBuilder.OTHER);
michael@0 768 public static final ElementName NOTPRSUBSET = new ElementName("notprsubset", "notprsubset", TreeBuilder.OTHER);
michael@0 769 public static final ElementName PARTIALDIFF = new ElementName("partialdiff", "partialdiff", TreeBuilder.OTHER);
michael@0 770 public static final ElementName ALTGLYPHITEM = new ElementName("altglyphitem", "altGlyphItem", TreeBuilder.OTHER);
michael@0 771 public static final ElementName ANIMATECOLOR = new ElementName("animatecolor", "animateColor", TreeBuilder.OTHER);
michael@0 772 public static final ElementName DATATEMPLATE = new ElementName("datatemplate", "datatemplate", TreeBuilder.OTHER);
michael@0 773 public static final ElementName EXPONENTIALE = new ElementName("exponentiale", "exponentiale", TreeBuilder.OTHER);
michael@0 774 public static final ElementName FETURBULENCE = new ElementName("feturbulence", "feTurbulence", TreeBuilder.OTHER);
michael@0 775 public static final ElementName FEPOINTLIGHT = new ElementName("fepointlight", "fePointLight", TreeBuilder.OTHER);
michael@0 776 public static final ElementName FEDROPSHADOW = new ElementName("fedropshadow", "feDropShadow", TreeBuilder.OTHER);
michael@0 777 public static final ElementName FEMORPHOLOGY = new ElementName("femorphology", "feMorphology", TreeBuilder.OTHER);
michael@0 778 public static final ElementName OUTERPRODUCT = new ElementName("outerproduct", "outerproduct", TreeBuilder.OTHER);
michael@0 779 public static final ElementName ANIMATEMOTION = new ElementName("animatemotion", "animateMotion", TreeBuilder.OTHER);
michael@0 780 public static final ElementName COLOR_PROFILE = new ElementName("color-profile", "color-profile", TreeBuilder.OTHER);
michael@0 781 public static final ElementName FONT_FACE_SRC = new ElementName("font-face-src", "font-face-src", TreeBuilder.OTHER);
michael@0 782 public static final ElementName FONT_FACE_URI = new ElementName("font-face-uri", "font-face-uri", TreeBuilder.OTHER);
michael@0 783 public static final ElementName FOREIGNOBJECT = new ElementName("foreignobject", "foreignObject", TreeBuilder.FOREIGNOBJECT_OR_DESC | SCOPING_AS_SVG);
michael@0 784 public static final ElementName FECOLORMATRIX = new ElementName("fecolormatrix", "feColorMatrix", TreeBuilder.OTHER);
michael@0 785 public static final ElementName MISSING_GLYPH = new ElementName("missing-glyph", "missing-glyph", TreeBuilder.OTHER);
michael@0 786 public static final ElementName MMULTISCRIPTS = new ElementName("mmultiscripts", "mmultiscripts", TreeBuilder.OTHER);
michael@0 787 public static final ElementName SCALARPRODUCT = new ElementName("scalarproduct", "scalarproduct", TreeBuilder.OTHER);
michael@0 788 public static final ElementName VECTORPRODUCT = new ElementName("vectorproduct", "vectorproduct", TreeBuilder.OTHER);
michael@0 789 public static final ElementName ANNOTATION_XML = new ElementName("annotation-xml", "annotation-xml", TreeBuilder.ANNOTATION_XML | SCOPING_AS_MATHML);
michael@0 790 public static final ElementName DEFINITION_SRC = new ElementName("definition-src", "definition-src", TreeBuilder.OTHER);
michael@0 791 public static final ElementName FONT_FACE_NAME = new ElementName("font-face-name", "font-face-name", TreeBuilder.OTHER);
michael@0 792 public static final ElementName FEGAUSSIANBLUR = new ElementName("fegaussianblur", "feGaussianBlur", TreeBuilder.OTHER);
michael@0 793 public static final ElementName FEDISTANTLIGHT = new ElementName("fedistantlight", "feDistantLight", TreeBuilder.OTHER);
michael@0 794 public static final ElementName LINEARGRADIENT = new ElementName("lineargradient", "linearGradient", TreeBuilder.OTHER);
michael@0 795 public static final ElementName NATURALNUMBERS = new ElementName("naturalnumbers", "naturalnumbers", TreeBuilder.OTHER);
michael@0 796 public static final ElementName RADIALGRADIENT = new ElementName("radialgradient", "radialGradient", TreeBuilder.OTHER);
michael@0 797 public static final ElementName ANIMATETRANSFORM = new ElementName("animatetransform", "animateTransform", TreeBuilder.OTHER);
michael@0 798 public static final ElementName CARTESIANPRODUCT = new ElementName("cartesianproduct", "cartesianproduct", TreeBuilder.OTHER);
michael@0 799 public static final ElementName FONT_FACE_FORMAT = new ElementName("font-face-format", "font-face-format", TreeBuilder.OTHER);
michael@0 800 public static final ElementName FECONVOLVEMATRIX = new ElementName("feconvolvematrix", "feConvolveMatrix", TreeBuilder.OTHER);
michael@0 801 public static final ElementName FEDIFFUSELIGHTING = new ElementName("fediffuselighting", "feDiffuseLighting", TreeBuilder.OTHER);
michael@0 802 public static final ElementName FEDISPLACEMENTMAP = new ElementName("fedisplacementmap", "feDisplacementMap", TreeBuilder.OTHER);
michael@0 803 public static final ElementName FESPECULARLIGHTING = new ElementName("fespecularlighting", "feSpecularLighting", TreeBuilder.OTHER);
michael@0 804 public static final ElementName DOMAINOFAPPLICATION = new ElementName("domainofapplication", "domainofapplication", TreeBuilder.OTHER);
michael@0 805 public static final ElementName FECOMPONENTTRANSFER = new ElementName("fecomponenttransfer", "feComponentTransfer", TreeBuilder.OTHER);
michael@0 806 private final static @NoLength ElementName[] ELEMENT_NAMES = {
michael@0 807 A,
michael@0 808 B,
michael@0 809 G,
michael@0 810 I,
michael@0 811 P,
michael@0 812 Q,
michael@0 813 S,
michael@0 814 U,
michael@0 815 BR,
michael@0 816 CI,
michael@0 817 CN,
michael@0 818 DD,
michael@0 819 DL,
michael@0 820 DT,
michael@0 821 EM,
michael@0 822 EQ,
michael@0 823 FN,
michael@0 824 H1,
michael@0 825 H2,
michael@0 826 H3,
michael@0 827 H4,
michael@0 828 H5,
michael@0 829 H6,
michael@0 830 GT,
michael@0 831 HR,
michael@0 832 IN,
michael@0 833 LI,
michael@0 834 LN,
michael@0 835 LT,
michael@0 836 MI,
michael@0 837 MN,
michael@0 838 MO,
michael@0 839 MS,
michael@0 840 OL,
michael@0 841 OR,
michael@0 842 PI,
michael@0 843 RP,
michael@0 844 RT,
michael@0 845 TD,
michael@0 846 TH,
michael@0 847 TR,
michael@0 848 TT,
michael@0 849 UL,
michael@0 850 AND,
michael@0 851 ARG,
michael@0 852 ABS,
michael@0 853 BIG,
michael@0 854 BDO,
michael@0 855 CSC,
michael@0 856 COL,
michael@0 857 COS,
michael@0 858 COT,
michael@0 859 DEL,
michael@0 860 DFN,
michael@0 861 DIR,
michael@0 862 DIV,
michael@0 863 EXP,
michael@0 864 GCD,
michael@0 865 GEQ,
michael@0 866 IMG,
michael@0 867 INS,
michael@0 868 INT,
michael@0 869 KBD,
michael@0 870 LOG,
michael@0 871 LCM,
michael@0 872 LEQ,
michael@0 873 MTD,
michael@0 874 MIN,
michael@0 875 MAP,
michael@0 876 MTR,
michael@0 877 MAX,
michael@0 878 NEQ,
michael@0 879 NOT,
michael@0 880 NAV,
michael@0 881 PRE,
michael@0 882 REM,
michael@0 883 SUB,
michael@0 884 SEC,
michael@0 885 SVG,
michael@0 886 SUM,
michael@0 887 SIN,
michael@0 888 SEP,
michael@0 889 SUP,
michael@0 890 SET,
michael@0 891 TAN,
michael@0 892 USE,
michael@0 893 VAR,
michael@0 894 WBR,
michael@0 895 XMP,
michael@0 896 XOR,
michael@0 897 AREA,
michael@0 898 ABBR,
michael@0 899 BASE,
michael@0 900 BVAR,
michael@0 901 BODY,
michael@0 902 CARD,
michael@0 903 CODE,
michael@0 904 CITE,
michael@0 905 CSCH,
michael@0 906 COSH,
michael@0 907 COTH,
michael@0 908 CURL,
michael@0 909 DESC,
michael@0 910 DIFF,
michael@0 911 DEFS,
michael@0 912 FORM,
michael@0 913 FONT,
michael@0 914 GRAD,
michael@0 915 HEAD,
michael@0 916 HTML,
michael@0 917 LINE,
michael@0 918 LINK,
michael@0 919 LIST,
michael@0 920 META,
michael@0 921 MSUB,
michael@0 922 MODE,
michael@0 923 MATH,
michael@0 924 MARK,
michael@0 925 MASK,
michael@0 926 MEAN,
michael@0 927 MAIN,
michael@0 928 MSUP,
michael@0 929 MENU,
michael@0 930 MROW,
michael@0 931 NONE,
michael@0 932 NOBR,
michael@0 933 NEST,
michael@0 934 PATH,
michael@0 935 PLUS,
michael@0 936 RULE,
michael@0 937 REAL,
michael@0 938 RELN,
michael@0 939 RECT,
michael@0 940 ROOT,
michael@0 941 RUBY,
michael@0 942 SECH,
michael@0 943 SINH,
michael@0 944 SPAN,
michael@0 945 SAMP,
michael@0 946 STOP,
michael@0 947 SDEV,
michael@0 948 TIME,
michael@0 949 TRUE,
michael@0 950 TREF,
michael@0 951 TANH,
michael@0 952 TEXT,
michael@0 953 VIEW,
michael@0 954 ASIDE,
michael@0 955 AUDIO,
michael@0 956 APPLY,
michael@0 957 EMBED,
michael@0 958 FRAME,
michael@0 959 FALSE,
michael@0 960 FLOOR,
michael@0 961 GLYPH,
michael@0 962 HKERN,
michael@0 963 IMAGE,
michael@0 964 IDENT,
michael@0 965 INPUT,
michael@0 966 LABEL,
michael@0 967 LIMIT,
michael@0 968 MFRAC,
michael@0 969 MPATH,
michael@0 970 METER,
michael@0 971 MOVER,
michael@0 972 MINUS,
michael@0 973 MROOT,
michael@0 974 MSQRT,
michael@0 975 MTEXT,
michael@0 976 NOTIN,
michael@0 977 PIECE,
michael@0 978 PARAM,
michael@0 979 POWER,
michael@0 980 REALS,
michael@0 981 STYLE,
michael@0 982 SMALL,
michael@0 983 THEAD,
michael@0 984 TABLE,
michael@0 985 TITLE,
michael@0 986 TRACK,
michael@0 987 TSPAN,
michael@0 988 TIMES,
michael@0 989 TFOOT,
michael@0 990 TBODY,
michael@0 991 UNION,
michael@0 992 VKERN,
michael@0 993 VIDEO,
michael@0 994 ARCSEC,
michael@0 995 ARCCSC,
michael@0 996 ARCTAN,
michael@0 997 ARCSIN,
michael@0 998 ARCCOS,
michael@0 999 APPLET,
michael@0 1000 ARCCOT,
michael@0 1001 APPROX,
michael@0 1002 BUTTON,
michael@0 1003 CIRCLE,
michael@0 1004 CENTER,
michael@0 1005 CURSOR,
michael@0 1006 CANVAS,
michael@0 1007 DIVIDE,
michael@0 1008 DEGREE,
michael@0 1009 DOMAIN,
michael@0 1010 EXISTS,
michael@0 1011 FETILE,
michael@0 1012 FIGURE,
michael@0 1013 FORALL,
michael@0 1014 FILTER,
michael@0 1015 FOOTER,
michael@0 1016 HGROUP,
michael@0 1017 HEADER,
michael@0 1018 IFRAME,
michael@0 1019 KEYGEN,
michael@0 1020 LAMBDA,
michael@0 1021 LEGEND,
michael@0 1022 MSPACE,
michael@0 1023 MTABLE,
michael@0 1024 MSTYLE,
michael@0 1025 MGLYPH,
michael@0 1026 MEDIAN,
michael@0 1027 MUNDER,
michael@0 1028 MARKER,
michael@0 1029 MERROR,
michael@0 1030 MOMENT,
michael@0 1031 MATRIX,
michael@0 1032 OPTION,
michael@0 1033 OBJECT,
michael@0 1034 OUTPUT,
michael@0 1035 PRIMES,
michael@0 1036 SOURCE,
michael@0 1037 STRIKE,
michael@0 1038 STRONG,
michael@0 1039 SWITCH,
michael@0 1040 SYMBOL,
michael@0 1041 SELECT,
michael@0 1042 SUBSET,
michael@0 1043 SCRIPT,
michael@0 1044 TBREAK,
michael@0 1045 VECTOR,
michael@0 1046 ARTICLE,
michael@0 1047 ANIMATE,
michael@0 1048 ARCSECH,
michael@0 1049 ARCCSCH,
michael@0 1050 ARCTANH,
michael@0 1051 ARCSINH,
michael@0 1052 ARCCOSH,
michael@0 1053 ARCCOTH,
michael@0 1054 ACRONYM,
michael@0 1055 ADDRESS,
michael@0 1056 BGSOUND,
michael@0 1057 COMPOSE,
michael@0 1058 CEILING,
michael@0 1059 CSYMBOL,
michael@0 1060 CAPTION,
michael@0 1061 DISCARD,
michael@0 1062 DECLARE,
michael@0 1063 DETAILS,
michael@0 1064 ELLIPSE,
michael@0 1065 FEFUNCA,
michael@0 1066 FEFUNCB,
michael@0 1067 FEBLEND,
michael@0 1068 FEFLOOD,
michael@0 1069 FEIMAGE,
michael@0 1070 FEMERGE,
michael@0 1071 FEFUNCG,
michael@0 1072 FEFUNCR,
michael@0 1073 HANDLER,
michael@0 1074 INVERSE,
michael@0 1075 IMPLIES,
michael@0 1076 ISINDEX,
michael@0 1077 LOGBASE,
michael@0 1078 LISTING,
michael@0 1079 MFENCED,
michael@0 1080 MPADDED,
michael@0 1081 MARQUEE,
michael@0 1082 MACTION,
michael@0 1083 MSUBSUP,
michael@0 1084 NOEMBED,
michael@0 1085 POLYGON,
michael@0 1086 PATTERN,
michael@0 1087 PRODUCT,
michael@0 1088 SETDIFF,
michael@0 1089 SECTION,
michael@0 1090 SUMMARY,
michael@0 1091 TENDSTO,
michael@0 1092 UPLIMIT,
michael@0 1093 ALTGLYPH,
michael@0 1094 BASEFONT,
michael@0 1095 CLIPPATH,
michael@0 1096 CODOMAIN,
michael@0 1097 COLGROUP,
michael@0 1098 EMPTYSET,
michael@0 1099 FACTOROF,
michael@0 1100 FIELDSET,
michael@0 1101 FRAMESET,
michael@0 1102 FEOFFSET,
michael@0 1103 GLYPHREF,
michael@0 1104 INTERVAL,
michael@0 1105 INTEGERS,
michael@0 1106 INFINITY,
michael@0 1107 LISTENER,
michael@0 1108 LOWLIMIT,
michael@0 1109 METADATA,
michael@0 1110 MENCLOSE,
michael@0 1111 MENUITEM,
michael@0 1112 MPHANTOM,
michael@0 1113 NOFRAMES,
michael@0 1114 NOSCRIPT,
michael@0 1115 OPTGROUP,
michael@0 1116 POLYLINE,
michael@0 1117 PREFETCH,
michael@0 1118 PROGRESS,
michael@0 1119 PRSUBSET,
michael@0 1120 QUOTIENT,
michael@0 1121 SELECTOR,
michael@0 1122 TEXTAREA,
michael@0 1123 TEMPLATE,
michael@0 1124 TEXTPATH,
michael@0 1125 VARIANCE,
michael@0 1126 ANIMATION,
michael@0 1127 CONJUGATE,
michael@0 1128 CONDITION,
michael@0 1129 COMPLEXES,
michael@0 1130 FONT_FACE,
michael@0 1131 FACTORIAL,
michael@0 1132 INTERSECT,
michael@0 1133 IMAGINARY,
michael@0 1134 LAPLACIAN,
michael@0 1135 MATRIXROW,
michael@0 1136 NOTSUBSET,
michael@0 1137 OTHERWISE,
michael@0 1138 PIECEWISE,
michael@0 1139 PLAINTEXT,
michael@0 1140 RATIONALS,
michael@0 1141 SEMANTICS,
michael@0 1142 TRANSPOSE,
michael@0 1143 ANNOTATION,
michael@0 1144 BLOCKQUOTE,
michael@0 1145 DIVERGENCE,
michael@0 1146 EULERGAMMA,
michael@0 1147 EQUIVALENT,
michael@0 1148 FIGCAPTION,
michael@0 1149 IMAGINARYI,
michael@0 1150 MALIGNMARK,
michael@0 1151 MUNDEROVER,
michael@0 1152 MLABELEDTR,
michael@0 1153 NOTANUMBER,
michael@0 1154 SOLIDCOLOR,
michael@0 1155 ALTGLYPHDEF,
michael@0 1156 DETERMINANT,
michael@0 1157 FEMERGENODE,
michael@0 1158 FECOMPOSITE,
michael@0 1159 FESPOTLIGHT,
michael@0 1160 MALIGNGROUP,
michael@0 1161 MPRESCRIPTS,
michael@0 1162 MOMENTABOUT,
michael@0 1163 NOTPRSUBSET,
michael@0 1164 PARTIALDIFF,
michael@0 1165 ALTGLYPHITEM,
michael@0 1166 ANIMATECOLOR,
michael@0 1167 DATATEMPLATE,
michael@0 1168 EXPONENTIALE,
michael@0 1169 FETURBULENCE,
michael@0 1170 FEPOINTLIGHT,
michael@0 1171 FEDROPSHADOW,
michael@0 1172 FEMORPHOLOGY,
michael@0 1173 OUTERPRODUCT,
michael@0 1174 ANIMATEMOTION,
michael@0 1175 COLOR_PROFILE,
michael@0 1176 FONT_FACE_SRC,
michael@0 1177 FONT_FACE_URI,
michael@0 1178 FOREIGNOBJECT,
michael@0 1179 FECOLORMATRIX,
michael@0 1180 MISSING_GLYPH,
michael@0 1181 MMULTISCRIPTS,
michael@0 1182 SCALARPRODUCT,
michael@0 1183 VECTORPRODUCT,
michael@0 1184 ANNOTATION_XML,
michael@0 1185 DEFINITION_SRC,
michael@0 1186 FONT_FACE_NAME,
michael@0 1187 FEGAUSSIANBLUR,
michael@0 1188 FEDISTANTLIGHT,
michael@0 1189 LINEARGRADIENT,
michael@0 1190 NATURALNUMBERS,
michael@0 1191 RADIALGRADIENT,
michael@0 1192 ANIMATETRANSFORM,
michael@0 1193 CARTESIANPRODUCT,
michael@0 1194 FONT_FACE_FORMAT,
michael@0 1195 FECONVOLVEMATRIX,
michael@0 1196 FEDIFFUSELIGHTING,
michael@0 1197 FEDISPLACEMENTMAP,
michael@0 1198 FESPECULARLIGHTING,
michael@0 1199 DOMAINOFAPPLICATION,
michael@0 1200 FECOMPONENTTRANSFER,
michael@0 1201 };
michael@0 1202 private final static int[] ELEMENT_HASHES = {
michael@0 1203 1057,
michael@0 1204 1090,
michael@0 1205 1255,
michael@0 1206 1321,
michael@0 1207 1552,
michael@0 1208 1585,
michael@0 1209 1651,
michael@0 1210 1717,
michael@0 1211 68162,
michael@0 1212 68899,
michael@0 1213 69059,
michael@0 1214 69764,
michael@0 1215 70020,
michael@0 1216 70276,
michael@0 1217 71077,
michael@0 1218 71205,
michael@0 1219 72134,
michael@0 1220 72232,
michael@0 1221 72264,
michael@0 1222 72296,
michael@0 1223 72328,
michael@0 1224 72360,
michael@0 1225 72392,
michael@0 1226 73351,
michael@0 1227 74312,
michael@0 1228 75209,
michael@0 1229 78124,
michael@0 1230 78284,
michael@0 1231 78476,
michael@0 1232 79149,
michael@0 1233 79309,
michael@0 1234 79341,
michael@0 1235 79469,
michael@0 1236 81295,
michael@0 1237 81487,
michael@0 1238 82224,
michael@0 1239 84498,
michael@0 1240 84626,
michael@0 1241 86164,
michael@0 1242 86292,
michael@0 1243 86612,
michael@0 1244 86676,
michael@0 1245 87445,
michael@0 1246 3183041,
michael@0 1247 3186241,
michael@0 1248 3198017,
michael@0 1249 3218722,
michael@0 1250 3226754,
michael@0 1251 3247715,
michael@0 1252 3256803,
michael@0 1253 3263971,
michael@0 1254 3264995,
michael@0 1255 3289252,
michael@0 1256 3291332,
michael@0 1257 3295524,
michael@0 1258 3299620,
michael@0 1259 3326725,
michael@0 1260 3379303,
michael@0 1261 3392679,
michael@0 1262 3448233,
michael@0 1263 3460553,
michael@0 1264 3461577,
michael@0 1265 3510347,
michael@0 1266 3546604,
michael@0 1267 3552364,
michael@0 1268 3556524,
michael@0 1269 3576461,
michael@0 1270 3586349,
michael@0 1271 3588141,
michael@0 1272 3590797,
michael@0 1273 3596333,
michael@0 1274 3622062,
michael@0 1275 3625454,
michael@0 1276 3627054,
michael@0 1277 3675728,
michael@0 1278 3749042,
michael@0 1279 3771059,
michael@0 1280 3771571,
michael@0 1281 3776211,
michael@0 1282 3782323,
michael@0 1283 3782963,
michael@0 1284 3784883,
michael@0 1285 3785395,
michael@0 1286 3788979,
michael@0 1287 3815476,
michael@0 1288 3839605,
michael@0 1289 3885110,
michael@0 1290 3917911,
michael@0 1291 3948984,
michael@0 1292 3951096,
michael@0 1293 135304769,
michael@0 1294 135858241,
michael@0 1295 136498210,
michael@0 1296 136906434,
michael@0 1297 137138658,
michael@0 1298 137512995,
michael@0 1299 137531875,
michael@0 1300 137548067,
michael@0 1301 137629283,
michael@0 1302 137645539,
michael@0 1303 137646563,
michael@0 1304 137775779,
michael@0 1305 138529956,
michael@0 1306 138615076,
michael@0 1307 139040932,
michael@0 1308 140954086,
michael@0 1309 141179366,
michael@0 1310 141690439,
michael@0 1311 142738600,
michael@0 1312 143013512,
michael@0 1313 146979116,
michael@0 1314 147175724,
michael@0 1315 147475756,
michael@0 1316 147902637,
michael@0 1317 147936877,
michael@0 1318 148017645,
michael@0 1319 148131885,
michael@0 1320 148228141,
michael@0 1321 148229165,
michael@0 1322 148309165,
michael@0 1323 148317229,
michael@0 1324 148395629,
michael@0 1325 148551853,
michael@0 1326 148618829,
michael@0 1327 149076462,
michael@0 1328 149490158,
michael@0 1329 149572782,
michael@0 1330 151277616,
michael@0 1331 151639440,
michael@0 1332 153268914,
michael@0 1333 153486514,
michael@0 1334 153563314,
michael@0 1335 153750706,
michael@0 1336 153763314,
michael@0 1337 153914034,
michael@0 1338 154406067,
michael@0 1339 154417459,
michael@0 1340 154600979,
michael@0 1341 154678323,
michael@0 1342 154680979,
michael@0 1343 154866835,
michael@0 1344 155366708,
michael@0 1345 155375188,
michael@0 1346 155391572,
michael@0 1347 155465780,
michael@0 1348 155869364,
michael@0 1349 158045494,
michael@0 1350 168988979,
michael@0 1351 169321621,
michael@0 1352 169652752,
michael@0 1353 173151309,
michael@0 1354 174240818,
michael@0 1355 174247297,
michael@0 1356 174669292,
michael@0 1357 175391532,
michael@0 1358 176638123,
michael@0 1359 177380397,
michael@0 1360 177879204,
michael@0 1361 177886734,
michael@0 1362 180753473,
michael@0 1363 181020073,
michael@0 1364 181503558,
michael@0 1365 181686320,
michael@0 1366 181999237,
michael@0 1367 181999311,
michael@0 1368 182048201,
michael@0 1369 182074866,
michael@0 1370 182078003,
michael@0 1371 182083764,
michael@0 1372 182920847,
michael@0 1373 184716457,
michael@0 1374 184976961,
michael@0 1375 185145071,
michael@0 1376 187281445,
michael@0 1377 187872052,
michael@0 1378 188100653,
michael@0 1379 188875944,
michael@0 1380 188919873,
michael@0 1381 188920457,
michael@0 1382 189107250,
michael@0 1383 189203987,
michael@0 1384 189371817,
michael@0 1385 189414886,
michael@0 1386 189567458,
michael@0 1387 190266670,
michael@0 1388 191318187,
michael@0 1389 191337609,
michael@0 1390 202479203,
michael@0 1391 202493027,
michael@0 1392 202835587,
michael@0 1393 202843747,
michael@0 1394 203013219,
michael@0 1395 203036048,
michael@0 1396 203045987,
michael@0 1397 203177552,
michael@0 1398 203898516,
michael@0 1399 204648562,
michael@0 1400 205067918,
michael@0 1401 205078130,
michael@0 1402 205096654,
michael@0 1403 205689142,
michael@0 1404 205690439,
michael@0 1405 205988909,
michael@0 1406 207213161,
michael@0 1407 207794484,
michael@0 1408 207800999,
michael@0 1409 208023602,
michael@0 1410 208213644,
michael@0 1411 208213647,
michael@0 1412 210261490,
michael@0 1413 210310273,
michael@0 1414 210940978,
michael@0 1415 213325049,
michael@0 1416 213946445,
michael@0 1417 214055079,
michael@0 1418 215125040,
michael@0 1419 215134273,
michael@0 1420 215135028,
michael@0 1421 215237420,
michael@0 1422 215418148,
michael@0 1423 215553166,
michael@0 1424 215553394,
michael@0 1425 215563858,
michael@0 1426 215627949,
michael@0 1427 215754324,
michael@0 1428 217529652,
michael@0 1429 217713834,
michael@0 1430 217732628,
michael@0 1431 218731945,
michael@0 1432 221417045,
michael@0 1433 221424946,
michael@0 1434 221493746,
michael@0 1435 221515401,
michael@0 1436 221658189,
michael@0 1437 221908140,
michael@0 1438 221910626,
michael@0 1439 221921586,
michael@0 1440 222659762,
michael@0 1441 225001091,
michael@0 1442 236105833,
michael@0 1443 236113965,
michael@0 1444 236194995,
michael@0 1445 236195427,
michael@0 1446 236206132,
michael@0 1447 236206387,
michael@0 1448 236211683,
michael@0 1449 236212707,
michael@0 1450 236381647,
michael@0 1451 236571826,
michael@0 1452 237124271,
michael@0 1453 238210544,
michael@0 1454 238270764,
michael@0 1455 238435405,
michael@0 1456 238501172,
michael@0 1457 239224867,
michael@0 1458 239257644,
michael@0 1459 239710497,
michael@0 1460 240307721,
michael@0 1461 241208789,
michael@0 1462 241241557,
michael@0 1463 241318060,
michael@0 1464 241319404,
michael@0 1465 241343533,
michael@0 1466 241344069,
michael@0 1467 241405397,
michael@0 1468 241765845,
michael@0 1469 243864964,
michael@0 1470 244502085,
michael@0 1471 244946220,
michael@0 1472 245109902,
michael@0 1473 247647266,
michael@0 1474 247707956,
michael@0 1475 248648814,
michael@0 1476 248648836,
michael@0 1477 248682161,
michael@0 1478 248986932,
michael@0 1479 249058914,
michael@0 1480 249697357,
michael@0 1481 252132601,
michael@0 1482 252135604,
michael@0 1483 252317348,
michael@0 1484 255007012,
michael@0 1485 255278388,
michael@0 1486 255641645,
michael@0 1487 256365156,
michael@0 1488 257566121,
michael@0 1489 269763372,
michael@0 1490 271202790,
michael@0 1491 271863856,
michael@0 1492 272049197,
michael@0 1493 272127474,
michael@0 1494 274339449,
michael@0 1495 274939471,
michael@0 1496 275388004,
michael@0 1497 275388005,
michael@0 1498 275388006,
michael@0 1499 275977800,
michael@0 1500 278267602,
michael@0 1501 278513831,
michael@0 1502 278712622,
michael@0 1503 281613765,
michael@0 1504 281683369,
michael@0 1505 282120228,
michael@0 1506 282250732,
michael@0 1507 282498697,
michael@0 1508 282508942,
michael@0 1509 283743649,
michael@0 1510 283787570,
michael@0 1511 284710386,
michael@0 1512 285391148,
michael@0 1513 285478533,
michael@0 1514 285854898,
michael@0 1515 285873762,
michael@0 1516 286931113,
michael@0 1517 288964227,
michael@0 1518 289445441,
michael@0 1519 289591340,
michael@0 1520 289689648,
michael@0 1521 291671489,
michael@0 1522 303512884,
michael@0 1523 305319975,
michael@0 1524 305610036,
michael@0 1525 305764101,
michael@0 1526 308448294,
michael@0 1527 308675890,
michael@0 1528 312085683,
michael@0 1529 312264750,
michael@0 1530 315032867,
michael@0 1531 316391000,
michael@0 1532 317331042,
michael@0 1533 317902135,
michael@0 1534 318950711,
michael@0 1535 319447220,
michael@0 1536 321499182,
michael@0 1537 322538804,
michael@0 1538 323145200,
michael@0 1539 337067316,
michael@0 1540 337826293,
michael@0 1541 339905989,
michael@0 1542 340833697,
michael@0 1543 341457068,
michael@0 1544 342310196,
michael@0 1545 345302593,
michael@0 1546 349554733,
michael@0 1547 349771471,
michael@0 1548 349786245,
michael@0 1549 350819405,
michael@0 1550 356072847,
michael@0 1551 370349192,
michael@0 1552 373962798,
michael@0 1553 375558638,
michael@0 1554 375574835,
michael@0 1555 376053993,
michael@0 1556 383276530,
michael@0 1557 383373833,
michael@0 1558 383407586,
michael@0 1559 384439906,
michael@0 1560 386079012,
michael@0 1561 404133513,
michael@0 1562 404307343,
michael@0 1563 407031852,
michael@0 1564 408072233,
michael@0 1565 409112005,
michael@0 1566 409608425,
michael@0 1567 409713793,
michael@0 1568 409771500,
michael@0 1569 419040932,
michael@0 1570 437730612,
michael@0 1571 439529766,
michael@0 1572 442616365,
michael@0 1573 442813037,
michael@0 1574 443157674,
michael@0 1575 443295316,
michael@0 1576 450118444,
michael@0 1577 450482697,
michael@0 1578 456789668,
michael@0 1579 459935396,
michael@0 1580 471217869,
michael@0 1581 474073645,
michael@0 1582 476230702,
michael@0 1583 476665218,
michael@0 1584 476717289,
michael@0 1585 483014825,
michael@0 1586 485083298,
michael@0 1587 489306281,
michael@0 1588 538364390,
michael@0 1589 540675748,
michael@0 1590 543819186,
michael@0 1591 543958612,
michael@0 1592 576960820,
michael@0 1593 577242548,
michael@0 1594 610515252,
michael@0 1595 642202932,
michael@0 1596 644420819,
michael@0 1597 };
michael@0 1598 }

mercurial