table.go 21 KB
Newer Older
1 2
// generated by go run gen.go; DO NOT EDIT

Nigel Tao's avatar
Nigel Tao committed
3 4 5
package atom

const (
6 7
	A                Atom = 0x1
	Abbr             Atom = 0x4
Nigel Tao's avatar
Nigel Tao committed
8 9 10
	Accept           Atom = 0x2106
	AcceptCharset    Atom = 0x210e
	Accesskey        Atom = 0x3309
11 12
	Action           Atom = 0x21b06
	Address          Atom = 0x5d507
Nigel Tao's avatar
Nigel Tao committed
13 14
	Align            Atom = 0x1105
	Alt              Atom = 0x4503
15 16 17 18 19
	Annotation       Atom = 0x18d0a
	AnnotationXml    Atom = 0x18d0e
	Applet           Atom = 0x2d106
	Area             Atom = 0x31804
	Article          Atom = 0x39907
Nigel Tao's avatar
Nigel Tao committed
20 21 22
	Aside            Atom = 0x4f05
	Async            Atom = 0x9305
	Audio            Atom = 0xaf05
23 24 25
	Autocomplete     Atom = 0xd50c
	Autofocus        Atom = 0xe109
	Autoplay         Atom = 0x10c08
26
	B                Atom = 0x101
27 28
	Base             Atom = 0x11404
	Basefont         Atom = 0x11408
Nigel Tao's avatar
Nigel Tao committed
29
	Bdi              Atom = 0x1a03
30 31 32 33 34
	Bdo              Atom = 0x12503
	Bgsound          Atom = 0x13807
	Big              Atom = 0x14403
	Blink            Atom = 0x14705
	Blockquote       Atom = 0x14c0a
Nigel Tao's avatar
Nigel Tao committed
35
	Body             Atom = 0x2f04
36
	Border           Atom = 0x15606
37
	Br               Atom = 0x202
38
	Button           Atom = 0x15c06
Nigel Tao's avatar
Nigel Tao committed
39
	Canvas           Atom = 0x4b06
40 41 42
	Caption          Atom = 0x1e007
	Center           Atom = 0x2df06
	Challenge        Atom = 0x23e09
Nigel Tao's avatar
Nigel Tao committed
43
	Charset          Atom = 0x2807
44
	Checked          Atom = 0x33f07
Nigel Tao's avatar
Nigel Tao committed
45
	Cite             Atom = 0x9704
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
	Class            Atom = 0x3d905
	Code             Atom = 0x16f04
	Col              Atom = 0x17603
	Colgroup         Atom = 0x17608
	Color            Atom = 0x18305
	Cols             Atom = 0x18804
	Colspan          Atom = 0x18807
	Command          Atom = 0x19b07
	Content          Atom = 0x42c07
	Contenteditable  Atom = 0x42c0f
	Contextmenu      Atom = 0x3480b
	Controls         Atom = 0x1ae08
	Coords           Atom = 0x1ba06
	Crossorigin      Atom = 0x1c40b
	Data             Atom = 0x44304
	Datalist         Atom = 0x44308
	Datetime         Atom = 0x25b08
	Dd               Atom = 0x28802
Nigel Tao's avatar
Nigel Tao committed
64
	Default          Atom = 0x5207
65 66
	Defer            Atom = 0x17105
	Del              Atom = 0x4d603
Nigel Tao's avatar
Nigel Tao committed
67 68 69 70 71 72
	Desc             Atom = 0x4804
	Details          Atom = 0x6507
	Dfn              Atom = 0x8303
	Dialog           Atom = 0x1b06
	Dir              Atom = 0x9d03
	Dirname          Atom = 0x9d07
73 74 75 76 77 78 79
	Disabled         Atom = 0x10008
	Div              Atom = 0x10703
	Dl               Atom = 0x13e02
	Download         Atom = 0x40908
	Draggable        Atom = 0x1a109
	Dropzone         Atom = 0x3a208
	Dt               Atom = 0x4e402
Nigel Tao's avatar
Nigel Tao committed
80 81
	Em               Atom = 0x7f02
	Embed            Atom = 0x7f05
82 83 84 85 86 87
	Enctype          Atom = 0x23007
	Face             Atom = 0x2dd04
	Fieldset         Atom = 0x1d508
	Figcaption       Atom = 0x1dd0a
	Figure           Atom = 0x1f106
	Font             Atom = 0x11804
Nigel Tao's avatar
Nigel Tao committed
88
	Footer           Atom = 0x5906
89 90 91 92 93 94 95 96 97
	For              Atom = 0x1fd03
	ForeignObject    Atom = 0x1fd0d
	Foreignobject    Atom = 0x20a0d
	Form             Atom = 0x21704
	Formaction       Atom = 0x2170a
	Formenctype      Atom = 0x22c0b
	Formmethod       Atom = 0x2470a
	Formnovalidate   Atom = 0x2510e
	Formtarget       Atom = 0x2660a
Nigel Tao's avatar
Nigel Tao committed
98 99
	Frame            Atom = 0x8705
	Frameset         Atom = 0x8708
100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
	H1               Atom = 0x13602
	H2               Atom = 0x29602
	H3               Atom = 0x2c502
	H4               Atom = 0x30e02
	H5               Atom = 0x4e602
	H6               Atom = 0x27002
	Head             Atom = 0x2fa04
	Header           Atom = 0x2fa06
	Headers          Atom = 0x2fa07
	Height           Atom = 0x27206
	Hgroup           Atom = 0x27a06
	Hidden           Atom = 0x28606
	High             Atom = 0x29304
	Hr               Atom = 0x13102
	Href             Atom = 0x29804
	Hreflang         Atom = 0x29808
	Html             Atom = 0x27604
	HttpEquiv        Atom = 0x2a00a
118
	I                Atom = 0x601
119
	Icon             Atom = 0x42b04
Nigel Tao's avatar
Nigel Tao committed
120
	Id               Atom = 0x5102
121 122 123 124 125 126 127 128
	Iframe           Atom = 0x2b406
	Image            Atom = 0x2ba05
	Img              Atom = 0x2bf03
	Inert            Atom = 0x4c105
	Input            Atom = 0x3f605
	Ins              Atom = 0x1cd03
	Isindex          Atom = 0x2c707
	Ismap            Atom = 0x2ce05
Nigel Tao's avatar
Nigel Tao committed
129
	Itemid           Atom = 0x9806
130 131 132 133
	Itemprop         Atom = 0x57e08
	Itemref          Atom = 0x2d707
	Itemscope        Atom = 0x2e509
	Itemtype         Atom = 0x2ef08
Nigel Tao's avatar
Nigel Tao committed
134 135
	Kbd              Atom = 0x1903
	Keygen           Atom = 0x3906
136 137
	Keytype          Atom = 0x51207
	Kind             Atom = 0xfd04
Nigel Tao's avatar
Nigel Tao committed
138
	Label            Atom = 0xba05
139 140
	Lang             Atom = 0x29c04
	Legend           Atom = 0x1a806
Nigel Tao's avatar
Nigel Tao committed
141
	Li               Atom = 0x1202
142 143 144 145 146
	Link             Atom = 0x14804
	List             Atom = 0x44704
	Listing          Atom = 0x44707
	Loop             Atom = 0xbe04
	Low              Atom = 0x13f03
Nigel Tao's avatar
Nigel Tao committed
147
	Malignmark       Atom = 0x100a
148 149
	Manifest         Atom = 0x5b608
	Map              Atom = 0x2d003
Nigel Tao's avatar
Nigel Tao committed
150
	Mark             Atom = 0x1604
151 152 153 154
	Marquee          Atom = 0x5f207
	Math             Atom = 0x2f704
	Max              Atom = 0x30603
	Maxlength        Atom = 0x30609
Nigel Tao's avatar
Nigel Tao committed
155 156
	Media            Atom = 0xa205
	Mediagroup       Atom = 0xa20a
157 158 159 160 161
	Menu             Atom = 0x34f04
	Meta             Atom = 0x45604
	Meter            Atom = 0x26105
	Method           Atom = 0x24b06
	Mglyph           Atom = 0x2c006
Nigel Tao's avatar
Nigel Tao committed
162
	Mi               Atom = 0x9b02
163 164 165 166 167 168 169
	Min              Atom = 0x31003
	Mn               Atom = 0x25402
	Mo               Atom = 0x47a02
	Ms               Atom = 0x2e802
	Mtext            Atom = 0x31305
	Multiple         Atom = 0x32108
	Muted            Atom = 0x32905
Nigel Tao's avatar
Nigel Tao committed
170 171 172 173 174
	Name             Atom = 0xa004
	Nav              Atom = 0x3e03
	Nobr             Atom = 0x7404
	Noembed          Atom = 0x7d07
	Noframes         Atom = 0x8508
175 176 177 178 179 180 181 182 183
	Noscript         Atom = 0x28b08
	Novalidate       Atom = 0x2550a
	Object           Atom = 0x21106
	Ol               Atom = 0xcd02
	Onabort          Atom = 0x16007
	Onafterprint     Atom = 0x1e50c
	Onbeforeprint    Atom = 0x21f0d
	Onbeforeunload   Atom = 0x5c90e
	Onblur           Atom = 0x3e206
Nigel Tao's avatar
Nigel Tao committed
184
	Oncancel         Atom = 0xb308
185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251
	Oncanplay        Atom = 0x12709
	Oncanplaythrough Atom = 0x12710
	Onchange         Atom = 0x3b808
	Onclick          Atom = 0x2ad07
	Onclose          Atom = 0x32e07
	Oncontextmenu    Atom = 0x3460d
	Oncuechange      Atom = 0x3530b
	Ondblclick       Atom = 0x35e0a
	Ondrag           Atom = 0x36806
	Ondragend        Atom = 0x36809
	Ondragenter      Atom = 0x3710b
	Ondragleave      Atom = 0x37c0b
	Ondragover       Atom = 0x3870a
	Ondragstart      Atom = 0x3910b
	Ondrop           Atom = 0x3a006
	Ondurationchange Atom = 0x3b010
	Onemptied        Atom = 0x3a709
	Onended          Atom = 0x3c007
	Onerror          Atom = 0x3c707
	Onfocus          Atom = 0x3ce07
	Onhashchange     Atom = 0x3e80c
	Oninput          Atom = 0x3f407
	Oninvalid        Atom = 0x3fb09
	Onkeydown        Atom = 0x40409
	Onkeypress       Atom = 0x4110a
	Onkeyup          Atom = 0x42107
	Onload           Atom = 0x43b06
	Onloadeddata     Atom = 0x43b0c
	Onloadedmetadata Atom = 0x44e10
	Onloadstart      Atom = 0x4640b
	Onmessage        Atom = 0x46f09
	Onmousedown      Atom = 0x4780b
	Onmousemove      Atom = 0x4830b
	Onmouseout       Atom = 0x48e0a
	Onmouseover      Atom = 0x49b0b
	Onmouseup        Atom = 0x4a609
	Onmousewheel     Atom = 0x4af0c
	Onoffline        Atom = 0x4bb09
	Ononline         Atom = 0x4c608
	Onpagehide       Atom = 0x4ce0a
	Onpageshow       Atom = 0x4d90a
	Onpause          Atom = 0x4e807
	Onplay           Atom = 0x4f206
	Onplaying        Atom = 0x4f209
	Onpopstate       Atom = 0x4fb0a
	Onprogress       Atom = 0x5050a
	Onratechange     Atom = 0x5190c
	Onreset          Atom = 0x52507
	Onresize         Atom = 0x52c08
	Onscroll         Atom = 0x53a08
	Onseeked         Atom = 0x54208
	Onseeking        Atom = 0x54a09
	Onselect         Atom = 0x55308
	Onshow           Atom = 0x55d06
	Onstalled        Atom = 0x56609
	Onstorage        Atom = 0x56f09
	Onsubmit         Atom = 0x57808
	Onsuspend        Atom = 0x58809
	Ontimeupdate     Atom = 0x1190c
	Onunload         Atom = 0x59108
	Onvolumechange   Atom = 0x5990e
	Onwaiting        Atom = 0x5a709
	Open             Atom = 0x58404
	Optgroup         Atom = 0xc008
	Optimum          Atom = 0x5b007
	Option           Atom = 0x5c506
	Output           Atom = 0x49506
252 253
	P                Atom = 0xc01
	Param            Atom = 0xc05
Nigel Tao's avatar
Nigel Tao committed
254 255
	Pattern          Atom = 0x6e07
	Ping             Atom = 0xab04
256 257 258 259 260 261 262 263 264
	Placeholder      Atom = 0xc70b
	Plaintext        Atom = 0xf109
	Poster           Atom = 0x17d06
	Pre              Atom = 0x27f03
	Preload          Atom = 0x27f07
	Progress         Atom = 0x50708
	Prompt           Atom = 0x5bf06
	Public           Atom = 0x42706
	Q                Atom = 0x15101
265
	Radiogroup       Atom = 0x30a
266 267 268
	Readonly         Atom = 0x31908
	Rel              Atom = 0x28003
	Required         Atom = 0x1f508
Nigel Tao's avatar
Nigel Tao committed
269 270 271
	Reversed         Atom = 0x5e08
	Rows             Atom = 0x7704
	Rowspan          Atom = 0x7707
272 273 274
	Rp               Atom = 0x1eb02
	Rt               Atom = 0x16502
	Ruby             Atom = 0xd104
Nigel Tao's avatar
Nigel Tao committed
275 276
	S                Atom = 0x2c01
	Samp             Atom = 0x6b04
277 278 279 280 281 282 283 284 285 286 287 288 289 290
	Sandbox          Atom = 0xe907
	Scope            Atom = 0x2e905
	Scoped           Atom = 0x2e906
	Script           Atom = 0x28d06
	Seamless         Atom = 0x33308
	Section          Atom = 0x3dd07
	Select           Atom = 0x55506
	Selected         Atom = 0x55508
	Shape            Atom = 0x1b505
	Size             Atom = 0x53004
	Sizes            Atom = 0x53005
	Small            Atom = 0x1bf05
	Source           Atom = 0x1cf06
	Spacer           Atom = 0x30006
Nigel Tao's avatar
Nigel Tao committed
291
	Span             Atom = 0x7a04
292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308
	Spellcheck       Atom = 0x33a0a
	Src              Atom = 0x3d403
	Srcdoc           Atom = 0x3d406
	Srclang          Atom = 0x41a07
	Start            Atom = 0x39705
	Step             Atom = 0x5bc04
	Strike           Atom = 0x50e06
	Strong           Atom = 0x53406
	Style            Atom = 0x5db05
	Sub              Atom = 0x57a03
	Summary          Atom = 0x5e007
	Sup              Atom = 0x5e703
	Svg              Atom = 0x5ea03
	System           Atom = 0x5ed06
	Tabindex         Atom = 0x45c08
	Table            Atom = 0x43605
	Target           Atom = 0x26a06
Nigel Tao's avatar
Nigel Tao committed
309 310
	Tbody            Atom = 0x2e05
	Td               Atom = 0x4702
311
	Textarea         Atom = 0x31408
Nigel Tao's avatar
Nigel Tao committed
312
	Tfoot            Atom = 0x5805
313 314 315
	Th               Atom = 0x13002
	Thead            Atom = 0x2f905
	Time             Atom = 0x11b04
Nigel Tao's avatar
Nigel Tao committed
316
	Title            Atom = 0x8e05
317 318 319
	Tr               Atom = 0xf902
	Track            Atom = 0xf905
	Translate        Atom = 0x16609
Nigel Tao's avatar
Nigel Tao committed
320
	Tt               Atom = 0x7002
321 322
	Type             Atom = 0x23304
	Typemustmatch    Atom = 0x2330d
323
	U                Atom = 0xb01
Nigel Tao's avatar
Nigel Tao committed
324
	Ul               Atom = 0x5602
325
	Usemap           Atom = 0x4ec06
Nigel Tao's avatar
Nigel Tao committed
326
	Value            Atom = 0x4005
327 328 329 330 331 332
	Var              Atom = 0x10903
	Video            Atom = 0x2a905
	Wbr              Atom = 0x14103
	Width            Atom = 0x4e205
	Wrap             Atom = 0x56204
	Xmp              Atom = 0xef03
Nigel Tao's avatar
Nigel Tao committed
333 334
)

Nigel Tao's avatar
Nigel Tao committed
335
const hash0 = 0xc17da63e
Nigel Tao's avatar
Nigel Tao committed
336

337
const maxAtomLen = 16
338

339
var table = [1 << 9]Atom{
340 341 342 343 344 345 346 347 348
	0x1:   0x4830b, // onmousemove
	0x2:   0x5a709, // onwaiting
	0x4:   0x5bf06, // prompt
	0x7:   0x5b007, // optimum
	0x8:   0x1604,  // mark
	0xa:   0x2d707, // itemref
	0xb:   0x4d90a, // onpageshow
	0xc:   0x55506, // select
	0xd:   0x1a109, // draggable
Nigel Tao's avatar
Nigel Tao committed
349
	0xe:   0x3e03,  // nav
350
	0xf:   0x19b07, // command
Nigel Tao's avatar
Nigel Tao committed
351
	0x11:  0xb01,   // u
352 353
	0x14:  0x2fa07, // headers
	0x15:  0x44308, // datalist
Nigel Tao's avatar
Nigel Tao committed
354
	0x17:  0x6b04,  // samp
355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371
	0x1a:  0x40409, // onkeydown
	0x1b:  0x53a08, // onscroll
	0x1c:  0x17603, // col
	0x20:  0x57e08, // itemprop
	0x21:  0x2a00a, // http-equiv
	0x22:  0x5e703, // sup
	0x24:  0x1f508, // required
	0x2b:  0x27f07, // preload
	0x2c:  0x21f0d, // onbeforeprint
	0x2d:  0x3710b, // ondragenter
	0x2e:  0x4e402, // dt
	0x2f:  0x57808, // onsubmit
	0x30:  0x13102, // hr
	0x31:  0x3460d, // oncontextmenu
	0x33:  0x2ba05, // image
	0x34:  0x4e807, // onpause
	0x35:  0x27a06, // hgroup
Nigel Tao's avatar
Nigel Tao committed
372
	0x36:  0xab04,  // ping
373 374
	0x37:  0x55308, // onselect
	0x3a:  0x10703, // div
Nigel Tao's avatar
Nigel Tao committed
375
	0x40:  0x9b02,  // mi
376
	0x41:  0x33308, // seamless
Nigel Tao's avatar
Nigel Tao committed
377 378
	0x42:  0x2807,  // charset
	0x43:  0x5102,  // id
379 380 381
	0x44:  0x4fb0a, // onpopstate
	0x45:  0x4d603, // del
	0x46:  0x5f207, // marquee
Nigel Tao's avatar
Nigel Tao committed
382 383
	0x47:  0x3309,  // accesskey
	0x49:  0x5906,  // footer
384 385 386
	0x4a:  0x2d106, // applet
	0x4b:  0x2ce05, // ismap
	0x51:  0x34f04, // menu
Nigel Tao's avatar
Nigel Tao committed
387 388
	0x52:  0x2f04,  // body
	0x55:  0x8708,  // frameset
389 390
	0x56:  0x52507, // onreset
	0x57:  0x14705, // blink
Nigel Tao's avatar
Nigel Tao committed
391
	0x58:  0x8e05,  // title
392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410
	0x59:  0x39907, // article
	0x5b:  0x13002, // th
	0x5d:  0x15101, // q
	0x5e:  0x58404, // open
	0x5f:  0x31804, // area
	0x61:  0x43b06, // onload
	0x62:  0x3f605, // input
	0x63:  0x11404, // base
	0x64:  0x18807, // colspan
	0x65:  0x51207, // keytype
	0x66:  0x13e02, // dl
	0x68:  0x1d508, // fieldset
	0x6a:  0x31003, // min
	0x6b:  0x10903, // var
	0x6f:  0x2fa06, // header
	0x70:  0x16502, // rt
	0x71:  0x17608, // colgroup
	0x72:  0x25402, // mn
	0x74:  0x16007, // onabort
Nigel Tao's avatar
Nigel Tao committed
411
	0x75:  0x3906,  // keygen
412 413 414 415 416 417 418
	0x76:  0x4bb09, // onoffline
	0x77:  0x23e09, // challenge
	0x78:  0x2d003, // map
	0x7a:  0x30e02, // h4
	0x7b:  0x3c707, // onerror
	0x7c:  0x30609, // maxlength
	0x7d:  0x31305, // mtext
Nigel Tao's avatar
Nigel Tao committed
419
	0x7e:  0x5805,  // tfoot
420
	0x7f:  0x11804, // font
Nigel Tao's avatar
Nigel Tao committed
421
	0x80:  0x100a,  // malignmark
422
	0x81:  0x45604, // meta
Nigel Tao's avatar
Nigel Tao committed
423
	0x82:  0x9305,  // async
424 425 426
	0x83:  0x2c502, // h3
	0x84:  0x28802, // dd
	0x85:  0x29804, // href
Nigel Tao's avatar
Nigel Tao committed
427
	0x86:  0xa20a,  // mediagroup
428 429 430
	0x87:  0x1ba06, // coords
	0x88:  0x41a07, // srclang
	0x89:  0x35e0a, // ondblclick
Nigel Tao's avatar
Nigel Tao committed
431 432
	0x8a:  0x4005,  // value
	0x8c:  0xb308,  // oncancel
433
	0x8e:  0x33a0a, // spellcheck
Nigel Tao's avatar
Nigel Tao committed
434
	0x8f:  0x8705,  // frame
435 436
	0x91:  0x14403, // big
	0x94:  0x21b06, // action
Nigel Tao's avatar
Nigel Tao committed
437
	0x95:  0x9d03,  // dir
438 439 440 441
	0x97:  0x31908, // readonly
	0x99:  0x43605, // table
	0x9a:  0x5e007, // summary
	0x9b:  0x14103, // wbr
Nigel Tao's avatar
Nigel Tao committed
442 443
	0x9c:  0x30a,   // radiogroup
	0x9d:  0xa004,  // name
444 445
	0x9f:  0x5ed06, // system
	0xa1:  0x18305, // color
Nigel Tao's avatar
Nigel Tao committed
446
	0xa2:  0x4b06,  // canvas
447 448 449 450 451 452 453
	0xa3:  0x27604, // html
	0xa5:  0x54a09, // onseeking
	0xac:  0x1b505, // shape
	0xad:  0x28003, // rel
	0xae:  0x12710, // oncanplaythrough
	0xaf:  0x3870a, // ondragover
	0xb1:  0x1fd0d, // foreignObject
Nigel Tao's avatar
Nigel Tao committed
454
	0xb3:  0x7704,  // rows
455 456 457 458 459 460 461
	0xb6:  0x44707, // listing
	0xb7:  0x49506, // output
	0xb9:  0x3480b, // contextmenu
	0xbb:  0x13f03, // low
	0xbc:  0x1eb02, // rp
	0xbd:  0x58809, // onsuspend
	0xbe:  0x15c06, // button
Nigel Tao's avatar
Nigel Tao committed
462
	0xbf:  0x4804,  // desc
463 464 465 466 467
	0xc1:  0x3dd07, // section
	0xc2:  0x5050a, // onprogress
	0xc3:  0x56f09, // onstorage
	0xc4:  0x2f704, // math
	0xc5:  0x4f206, // onplay
Nigel Tao's avatar
Nigel Tao committed
468 469
	0xc7:  0x5602,  // ul
	0xc8:  0x6e07,  // pattern
470 471 472
	0xc9:  0x4af0c, // onmousewheel
	0xca:  0x36809, // ondragend
	0xcb:  0xd104,  // ruby
Nigel Tao's avatar
Nigel Tao committed
473
	0xcc:  0xc01,   // p
474 475 476 477
	0xcd:  0x32e07, // onclose
	0xce:  0x26105, // meter
	0xcf:  0x13807, // bgsound
	0xd2:  0x27206, // height
Nigel Tao's avatar
Nigel Tao committed
478
	0xd4:  0x101,   // b
479 480 481 482 483 484 485 486
	0xd5:  0x2ef08, // itemtype
	0xd8:  0x1e007, // caption
	0xd9:  0x10008, // disabled
	0xdc:  0x5ea03, // svg
	0xdd:  0x1bf05, // small
	0xde:  0x44304, // data
	0xe0:  0x4c608, // ononline
	0xe1:  0x2c006, // mglyph
Nigel Tao's avatar
Nigel Tao committed
487
	0xe3:  0x7f05,  // embed
488 489 490 491
	0xe4:  0xf902,  // tr
	0xe5:  0x4640b, // onloadstart
	0xe7:  0x3b010, // ondurationchange
	0xed:  0x12503, // bdo
Nigel Tao's avatar
Nigel Tao committed
492 493
	0xee:  0x4702,  // td
	0xef:  0x4f05,  // aside
494 495 496
	0xf0:  0x29602, // h2
	0xf1:  0x50708, // progress
	0xf2:  0x14c0a, // blockquote
Nigel Tao's avatar
Nigel Tao committed
497 498 499
	0xf4:  0xba05,  // label
	0xf5:  0x601,   // i
	0xf7:  0x7707,  // rowspan
500 501 502 503 504 505
	0xfb:  0x4f209, // onplaying
	0xfd:  0x2bf03, // img
	0xfe:  0xc008,  // optgroup
	0xff:  0x42c07, // content
	0x101: 0x5190c, // onratechange
	0x103: 0x3e80c, // onhashchange
Nigel Tao's avatar
Nigel Tao committed
506
	0x104: 0x6507,  // details
507 508 509 510
	0x106: 0x40908, // download
	0x109: 0xe907,  // sandbox
	0x10b: 0x42c0f, // contenteditable
	0x10d: 0x37c0b, // ondragleave
Nigel Tao's avatar
Nigel Tao committed
511
	0x10e: 0x2106,  // accept
512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531
	0x10f: 0x55508, // selected
	0x112: 0x2170a, // formaction
	0x113: 0x2df06, // center
	0x115: 0x44e10, // onloadedmetadata
	0x116: 0x14804, // link
	0x117: 0x11b04, // time
	0x118: 0x1c40b, // crossorigin
	0x119: 0x3ce07, // onfocus
	0x11a: 0x56204, // wrap
	0x11b: 0x42b04, // icon
	0x11d: 0x2a905, // video
	0x11e: 0x3d905, // class
	0x121: 0x5990e, // onvolumechange
	0x122: 0x3e206, // onblur
	0x123: 0x2e509, // itemscope
	0x124: 0x5db05, // style
	0x127: 0x42706, // public
	0x129: 0x2510e, // formnovalidate
	0x12a: 0x55d06, // onshow
	0x12c: 0x16609, // translate
Nigel Tao's avatar
Nigel Tao committed
532
	0x12d: 0x9704,  // cite
533 534 535 536 537 538
	0x12e: 0x2e802, // ms
	0x12f: 0x1190c, // ontimeupdate
	0x130: 0xfd04,  // kind
	0x131: 0x2660a, // formtarget
	0x135: 0x3c007, // onended
	0x136: 0x28606, // hidden
Nigel Tao's avatar
Nigel Tao committed
539
	0x137: 0x2c01,  // s
540 541 542 543 544 545 546 547 548 549
	0x139: 0x2470a, // formmethod
	0x13a: 0x44704, // list
	0x13c: 0x27002, // h6
	0x13d: 0xcd02,  // ol
	0x13e: 0x3530b, // oncuechange
	0x13f: 0x20a0d, // foreignobject
	0x143: 0x5c90e, // onbeforeunload
	0x145: 0x3a709, // onemptied
	0x146: 0x17105, // defer
	0x147: 0xef03,  // xmp
Nigel Tao's avatar
Nigel Tao committed
550 551
	0x148: 0xaf05,  // audio
	0x149: 0x1903,  // kbd
552 553
	0x14c: 0x46f09, // onmessage
	0x14d: 0x5c506, // option
Nigel Tao's avatar
Nigel Tao committed
554
	0x14e: 0x4503,  // alt
555 556
	0x14f: 0x33f07, // checked
	0x150: 0x10c08, // autoplay
Nigel Tao's avatar
Nigel Tao committed
557
	0x152: 0x202,   // br
558
	0x153: 0x2550a, // novalidate
Nigel Tao's avatar
Nigel Tao committed
559
	0x156: 0x7d07,  // noembed
560 561 562 563 564 565 566 567 568 569 570 571 572 573 574
	0x159: 0x2ad07, // onclick
	0x15a: 0x4780b, // onmousedown
	0x15b: 0x3b808, // onchange
	0x15e: 0x3fb09, // oninvalid
	0x15f: 0x2e906, // scoped
	0x160: 0x1ae08, // controls
	0x161: 0x32905, // muted
	0x163: 0x4ec06, // usemap
	0x164: 0x1dd0a, // figcaption
	0x165: 0x36806, // ondrag
	0x166: 0x29304, // high
	0x168: 0x3d403, // src
	0x169: 0x17d06, // poster
	0x16b: 0x18d0e, // annotation-xml
	0x16c: 0x5bc04, // step
Nigel Tao's avatar
Nigel Tao committed
575 576 577
	0x16d: 0x4,     // abbr
	0x16e: 0x1b06,  // dialog
	0x170: 0x1202,  // li
578 579 580 581
	0x172: 0x47a02, // mo
	0x175: 0x1fd03, // for
	0x176: 0x1cd03, // ins
	0x178: 0x53004, // size
Nigel Tao's avatar
Nigel Tao committed
582 583
	0x17a: 0x5207,  // default
	0x17b: 0x1a03,  // bdi
584
	0x17c: 0x4ce0a, // onpagehide
Nigel Tao's avatar
Nigel Tao committed
585
	0x17d: 0x9d07,  // dirname
586 587 588 589
	0x17e: 0x23304, // type
	0x17f: 0x21704, // form
	0x180: 0x4c105, // inert
	0x181: 0x12709, // oncanplay
Nigel Tao's avatar
Nigel Tao committed
590
	0x182: 0x8303,  // dfn
591
	0x183: 0x45c08, // tabindex
Nigel Tao's avatar
Nigel Tao committed
592
	0x186: 0x7f02,  // em
593 594 595 596 597
	0x187: 0x29c04, // lang
	0x189: 0x3a208, // dropzone
	0x18a: 0x4110a, // onkeypress
	0x18b: 0x25b08, // datetime
	0x18c: 0x18804, // cols
Nigel Tao's avatar
Nigel Tao committed
598
	0x18d: 0x1,     // a
599 600
	0x18e: 0x43b0c, // onloadeddata
	0x191: 0x15606, // border
Nigel Tao's avatar
Nigel Tao committed
601
	0x192: 0x2e05,  // tbody
602 603 604 605 606 607 608 609 610
	0x193: 0x24b06, // method
	0x195: 0xbe04,  // loop
	0x196: 0x2b406, // iframe
	0x198: 0x2fa04, // head
	0x19e: 0x5b608, // manifest
	0x19f: 0xe109,  // autofocus
	0x1a0: 0x16f04, // code
	0x1a1: 0x53406, // strong
	0x1a2: 0x32108, // multiple
Nigel Tao's avatar
Nigel Tao committed
611
	0x1a3: 0xc05,   // param
612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627
	0x1a6: 0x23007, // enctype
	0x1a7: 0x2dd04, // face
	0x1a8: 0xf109,  // plaintext
	0x1a9: 0x13602, // h1
	0x1aa: 0x56609, // onstalled
	0x1ad: 0x28d06, // script
	0x1ae: 0x30006, // spacer
	0x1af: 0x52c08, // onresize
	0x1b0: 0x49b0b, // onmouseover
	0x1b1: 0x59108, // onunload
	0x1b2: 0x54208, // onseeked
	0x1b4: 0x2330d, // typemustmatch
	0x1b5: 0x1f106, // figure
	0x1b6: 0x48e0a, // onmouseout
	0x1b7: 0x27f03, // pre
	0x1b8: 0x4e205, // width
Nigel Tao's avatar
Nigel Tao committed
628 629 630
	0x1bb: 0x7404,  // nobr
	0x1be: 0x7002,  // tt
	0x1bf: 0x1105,  // align
631 632 633
	0x1c0: 0x3f407, // oninput
	0x1c3: 0x42107, // onkeyup
	0x1c6: 0x1e50c, // onafterprint
Nigel Tao's avatar
Nigel Tao committed
634 635
	0x1c7: 0x210e,  // accept-charset
	0x1c8: 0x9806,  // itemid
636 637 638 639 640 641 642 643 644 645
	0x1cb: 0x50e06, // strike
	0x1cc: 0x57a03, // sub
	0x1cd: 0xf905,  // track
	0x1ce: 0x39705, // start
	0x1d0: 0x11408, // basefont
	0x1d6: 0x1cf06, // source
	0x1d7: 0x1a806, // legend
	0x1d8: 0x2f905, // thead
	0x1da: 0x2e905, // scope
	0x1dd: 0x21106, // object
Nigel Tao's avatar
Nigel Tao committed
646
	0x1de: 0xa205,  // media
647 648 649 650 651
	0x1df: 0x18d0a, // annotation
	0x1e0: 0x22c0b, // formenctype
	0x1e2: 0x28b08, // noscript
	0x1e4: 0x53005, // sizes
	0x1e5: 0xd50c,  // autocomplete
Nigel Tao's avatar
Nigel Tao committed
652 653
	0x1e6: 0x7a04,  // span
	0x1e7: 0x8508,  // noframes
654 655 656
	0x1e8: 0x26a06, // target
	0x1e9: 0x3a006, // ondrop
	0x1ea: 0x3d406, // srcdoc
Nigel Tao's avatar
Nigel Tao committed
657
	0x1ec: 0x5e08,  // reversed
658 659 660 661 662 663 664 665 666
	0x1f0: 0x2c707, // isindex
	0x1f3: 0x29808, // hreflang
	0x1f5: 0x4e602, // h5
	0x1f6: 0x5d507, // address
	0x1fa: 0x30603, // max
	0x1fb: 0xc70b,  // placeholder
	0x1fc: 0x31408, // textarea
	0x1fe: 0x4a609, // onmouseup
	0x1ff: 0x3910b, // ondragstart
667 668
}

Nigel Tao's avatar
Nigel Tao committed
669 670 671
const atomText = "abbradiogrouparamalignmarkbdialogaccept-charsetbodyaccesskey" +
	"genavaluealtdescanvasidefaultfootereversedetailsampatternobr" +
	"owspanoembedfnoframesetitleasyncitemidirnamediagroupingaudio" +
672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694
	"ncancelabelooptgrouplaceholderubyautocompleteautofocusandbox" +
	"mplaintextrackindisabledivarautoplaybasefontimeupdatebdoncan" +
	"playthrough1bgsoundlowbrbigblinkblockquoteborderbuttonabortr" +
	"anslatecodefercolgroupostercolorcolspannotation-xmlcommandra" +
	"ggablegendcontrolshapecoordsmallcrossoriginsourcefieldsetfig" +
	"captionafterprintfigurequiredforeignObjectforeignobjectforma" +
	"ctionbeforeprintformenctypemustmatchallengeformmethodformnov" +
	"alidatetimeterformtargeth6heightmlhgroupreloadhiddenoscripth" +
	"igh2hreflanghttp-equivideonclickiframeimageimglyph3isindexis" +
	"mappletitemrefacenteritemscopeditemtypematheaderspacermaxlen" +
	"gth4minmtextareadonlymultiplemutedoncloseamlesspellcheckedon" +
	"contextmenuoncuechangeondblclickondragendondragenterondragle" +
	"aveondragoverondragstarticleondropzonemptiedondurationchange" +
	"onendedonerroronfocusrcdoclassectionbluronhashchangeoninputo" +
	"ninvalidonkeydownloadonkeypressrclangonkeyupublicontentedita" +
	"bleonloadeddatalistingonloadedmetadatabindexonloadstartonmes" +
	"sageonmousedownonmousemoveonmouseoutputonmouseoveronmouseupo" +
	"nmousewheelonofflinertononlineonpagehidelonpageshowidth5onpa" +
	"usemaponplayingonpopstateonprogresstrikeytypeonratechangeonr" +
	"esetonresizestrongonscrollonseekedonseekingonselectedonshowr" +
	"aponstalledonstorageonsubmitempropenonsuspendonunloadonvolum" +
	"echangeonwaitingoptimumanifestepromptoptionbeforeunloaddress" +
	"tylesummarysupsvgsystemarquee"