1 | import path from 'path';
|
---|
2 | import prettyBytes from 'pretty-bytes';
|
---|
3 | import parse5 from 'parse5';
|
---|
4 | import css from 'css';
|
---|
5 | import chalk from 'chalk';
|
---|
6 |
|
---|
7 | var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
---|
8 |
|
---|
9 | function createCommonjsModule(fn, basedir, module) {
|
---|
10 | return module = {
|
---|
11 | path: basedir,
|
---|
12 | exports: {},
|
---|
13 | require: function (path, base) {
|
---|
14 | return commonjsRequire();
|
---|
15 | }
|
---|
16 | }, fn(module, module.exports), module.exports;
|
---|
17 | }
|
---|
18 |
|
---|
19 | function getCjsExportFromNamespace (n) {
|
---|
20 | return n && n['default'] || n;
|
---|
21 | }
|
---|
22 |
|
---|
23 | function commonjsRequire () {
|
---|
24 | throw new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs');
|
---|
25 | }
|
---|
26 |
|
---|
27 | //Types of elements found in the DOM
|
---|
28 | var domelementtype = {
|
---|
29 | Text: "text", //Text
|
---|
30 | Directive: "directive", //<? ... ?>
|
---|
31 | Comment: "comment", //<!-- ... -->
|
---|
32 | Script: "script", //<script> tags
|
---|
33 | Style: "style", //<style> tags
|
---|
34 | Tag: "tag", //Any tag
|
---|
35 | CDATA: "cdata", //<![CDATA[ ... ]]>
|
---|
36 | Doctype: "doctype",
|
---|
37 |
|
---|
38 | isTag: function(elem){
|
---|
39 | return elem.type === "tag" || elem.type === "script" || elem.type === "style";
|
---|
40 | }
|
---|
41 | };
|
---|
42 |
|
---|
43 | var lib = createCommonjsModule(function (module, exports) {
|
---|
44 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
45 | /**
|
---|
46 | * Tests whether an element is a tag or not.
|
---|
47 | *
|
---|
48 | * @param elem Element to test
|
---|
49 | */
|
---|
50 | function isTag(elem) {
|
---|
51 | return (elem.type === "tag" /* Tag */ ||
|
---|
52 | elem.type === "script" /* Script */ ||
|
---|
53 | elem.type === "style" /* Style */);
|
---|
54 | }
|
---|
55 | exports.isTag = isTag;
|
---|
56 | // Exports for backwards compatibility
|
---|
57 | exports.Text = "text" /* Text */; //Text
|
---|
58 | exports.Directive = "directive" /* Directive */; //<? ... ?>
|
---|
59 | exports.Comment = "comment" /* Comment */; //<!-- ... -->
|
---|
60 | exports.Script = "script" /* Script */; //<script> tags
|
---|
61 | exports.Style = "style" /* Style */; //<style> tags
|
---|
62 | exports.Tag = "tag" /* Tag */; //Any tag
|
---|
63 | exports.CDATA = "cdata" /* CDATA */; //<![CDATA[ ... ]]>
|
---|
64 | exports.Doctype = "doctype" /* Doctype */;
|
---|
65 | });
|
---|
66 |
|
---|
67 | var Aacute = "Á";
|
---|
68 | var aacute = "á";
|
---|
69 | var Abreve = "Ă";
|
---|
70 | var abreve = "ă";
|
---|
71 | var ac = "∾";
|
---|
72 | var acd = "∿";
|
---|
73 | var acE = "∾̳";
|
---|
74 | var Acirc = "Â";
|
---|
75 | var acirc = "â";
|
---|
76 | var acute = "´";
|
---|
77 | var Acy = "А";
|
---|
78 | var acy = "а";
|
---|
79 | var AElig = "Æ";
|
---|
80 | var aelig = "æ";
|
---|
81 | var af = "";
|
---|
82 | var Afr = "𝔄";
|
---|
83 | var afr = "𝔞";
|
---|
84 | var Agrave = "À";
|
---|
85 | var agrave = "à";
|
---|
86 | var alefsym = "ℵ";
|
---|
87 | var aleph = "ℵ";
|
---|
88 | var Alpha = "Α";
|
---|
89 | var alpha = "α";
|
---|
90 | var Amacr = "Ā";
|
---|
91 | var amacr = "ā";
|
---|
92 | var amalg = "⨿";
|
---|
93 | var amp = "&";
|
---|
94 | var AMP = "&";
|
---|
95 | var andand = "⩕";
|
---|
96 | var And = "⩓";
|
---|
97 | var and = "∧";
|
---|
98 | var andd = "⩜";
|
---|
99 | var andslope = "⩘";
|
---|
100 | var andv = "⩚";
|
---|
101 | var ang = "∠";
|
---|
102 | var ange = "⦤";
|
---|
103 | var angle = "∠";
|
---|
104 | var angmsdaa = "⦨";
|
---|
105 | var angmsdab = "⦩";
|
---|
106 | var angmsdac = "⦪";
|
---|
107 | var angmsdad = "⦫";
|
---|
108 | var angmsdae = "⦬";
|
---|
109 | var angmsdaf = "⦭";
|
---|
110 | var angmsdag = "⦮";
|
---|
111 | var angmsdah = "⦯";
|
---|
112 | var angmsd = "∡";
|
---|
113 | var angrt = "∟";
|
---|
114 | var angrtvb = "⊾";
|
---|
115 | var angrtvbd = "⦝";
|
---|
116 | var angsph = "∢";
|
---|
117 | var angst = "Å";
|
---|
118 | var angzarr = "⍼";
|
---|
119 | var Aogon = "Ą";
|
---|
120 | var aogon = "ą";
|
---|
121 | var Aopf = "𝔸";
|
---|
122 | var aopf = "𝕒";
|
---|
123 | var apacir = "⩯";
|
---|
124 | var ap = "≈";
|
---|
125 | var apE = "⩰";
|
---|
126 | var ape = "≊";
|
---|
127 | var apid = "≋";
|
---|
128 | var apos = "'";
|
---|
129 | var ApplyFunction = "";
|
---|
130 | var approx = "≈";
|
---|
131 | var approxeq = "≊";
|
---|
132 | var Aring = "Å";
|
---|
133 | var aring = "å";
|
---|
134 | var Ascr = "𝒜";
|
---|
135 | var ascr = "𝒶";
|
---|
136 | var Assign = "≔";
|
---|
137 | var ast = "*";
|
---|
138 | var asymp = "≈";
|
---|
139 | var asympeq = "≍";
|
---|
140 | var Atilde = "Ã";
|
---|
141 | var atilde = "ã";
|
---|
142 | var Auml = "Ä";
|
---|
143 | var auml = "ä";
|
---|
144 | var awconint = "∳";
|
---|
145 | var awint = "⨑";
|
---|
146 | var backcong = "≌";
|
---|
147 | var backepsilon = "϶";
|
---|
148 | var backprime = "‵";
|
---|
149 | var backsim = "∽";
|
---|
150 | var backsimeq = "⋍";
|
---|
151 | var Backslash = "∖";
|
---|
152 | var Barv = "⫧";
|
---|
153 | var barvee = "⊽";
|
---|
154 | var barwed = "⌅";
|
---|
155 | var Barwed = "⌆";
|
---|
156 | var barwedge = "⌅";
|
---|
157 | var bbrk = "⎵";
|
---|
158 | var bbrktbrk = "⎶";
|
---|
159 | var bcong = "≌";
|
---|
160 | var Bcy = "Б";
|
---|
161 | var bcy = "б";
|
---|
162 | var bdquo = "„";
|
---|
163 | var becaus = "∵";
|
---|
164 | var because = "∵";
|
---|
165 | var Because = "∵";
|
---|
166 | var bemptyv = "⦰";
|
---|
167 | var bepsi = "϶";
|
---|
168 | var bernou = "ℬ";
|
---|
169 | var Bernoullis = "ℬ";
|
---|
170 | var Beta = "Β";
|
---|
171 | var beta = "β";
|
---|
172 | var beth = "ℶ";
|
---|
173 | var between = "≬";
|
---|
174 | var Bfr = "𝔅";
|
---|
175 | var bfr = "𝔟";
|
---|
176 | var bigcap = "⋂";
|
---|
177 | var bigcirc = "◯";
|
---|
178 | var bigcup = "⋃";
|
---|
179 | var bigodot = "⨀";
|
---|
180 | var bigoplus = "⨁";
|
---|
181 | var bigotimes = "⨂";
|
---|
182 | var bigsqcup = "⨆";
|
---|
183 | var bigstar = "★";
|
---|
184 | var bigtriangledown = "▽";
|
---|
185 | var bigtriangleup = "△";
|
---|
186 | var biguplus = "⨄";
|
---|
187 | var bigvee = "⋁";
|
---|
188 | var bigwedge = "⋀";
|
---|
189 | var bkarow = "⤍";
|
---|
190 | var blacklozenge = "⧫";
|
---|
191 | var blacksquare = "▪";
|
---|
192 | var blacktriangle = "▴";
|
---|
193 | var blacktriangledown = "▾";
|
---|
194 | var blacktriangleleft = "◂";
|
---|
195 | var blacktriangleright = "▸";
|
---|
196 | var blank = "␣";
|
---|
197 | var blk12 = "▒";
|
---|
198 | var blk14 = "░";
|
---|
199 | var blk34 = "▓";
|
---|
200 | var block = "█";
|
---|
201 | var bne = "=⃥";
|
---|
202 | var bnequiv = "≡⃥";
|
---|
203 | var bNot = "⫭";
|
---|
204 | var bnot = "⌐";
|
---|
205 | var Bopf = "𝔹";
|
---|
206 | var bopf = "𝕓";
|
---|
207 | var bot = "⊥";
|
---|
208 | var bottom = "⊥";
|
---|
209 | var bowtie = "⋈";
|
---|
210 | var boxbox = "⧉";
|
---|
211 | var boxdl = "┐";
|
---|
212 | var boxdL = "╕";
|
---|
213 | var boxDl = "╖";
|
---|
214 | var boxDL = "╗";
|
---|
215 | var boxdr = "┌";
|
---|
216 | var boxdR = "╒";
|
---|
217 | var boxDr = "╓";
|
---|
218 | var boxDR = "╔";
|
---|
219 | var boxh = "─";
|
---|
220 | var boxH = "═";
|
---|
221 | var boxhd = "┬";
|
---|
222 | var boxHd = "╤";
|
---|
223 | var boxhD = "╥";
|
---|
224 | var boxHD = "╦";
|
---|
225 | var boxhu = "┴";
|
---|
226 | var boxHu = "╧";
|
---|
227 | var boxhU = "╨";
|
---|
228 | var boxHU = "╩";
|
---|
229 | var boxminus = "⊟";
|
---|
230 | var boxplus = "⊞";
|
---|
231 | var boxtimes = "⊠";
|
---|
232 | var boxul = "┘";
|
---|
233 | var boxuL = "╛";
|
---|
234 | var boxUl = "╜";
|
---|
235 | var boxUL = "╝";
|
---|
236 | var boxur = "└";
|
---|
237 | var boxuR = "╘";
|
---|
238 | var boxUr = "╙";
|
---|
239 | var boxUR = "╚";
|
---|
240 | var boxv = "│";
|
---|
241 | var boxV = "║";
|
---|
242 | var boxvh = "┼";
|
---|
243 | var boxvH = "╪";
|
---|
244 | var boxVh = "╫";
|
---|
245 | var boxVH = "╬";
|
---|
246 | var boxvl = "┤";
|
---|
247 | var boxvL = "╡";
|
---|
248 | var boxVl = "╢";
|
---|
249 | var boxVL = "╣";
|
---|
250 | var boxvr = "├";
|
---|
251 | var boxvR = "╞";
|
---|
252 | var boxVr = "╟";
|
---|
253 | var boxVR = "╠";
|
---|
254 | var bprime = "‵";
|
---|
255 | var breve = "˘";
|
---|
256 | var Breve = "˘";
|
---|
257 | var brvbar = "¦";
|
---|
258 | var bscr = "𝒷";
|
---|
259 | var Bscr = "ℬ";
|
---|
260 | var bsemi = "⁏";
|
---|
261 | var bsim = "∽";
|
---|
262 | var bsime = "⋍";
|
---|
263 | var bsolb = "⧅";
|
---|
264 | var bsol = "\\";
|
---|
265 | var bsolhsub = "⟈";
|
---|
266 | var bull = "•";
|
---|
267 | var bullet = "•";
|
---|
268 | var bump = "≎";
|
---|
269 | var bumpE = "⪮";
|
---|
270 | var bumpe = "≏";
|
---|
271 | var Bumpeq = "≎";
|
---|
272 | var bumpeq = "≏";
|
---|
273 | var Cacute = "Ć";
|
---|
274 | var cacute = "ć";
|
---|
275 | var capand = "⩄";
|
---|
276 | var capbrcup = "⩉";
|
---|
277 | var capcap = "⩋";
|
---|
278 | var cap = "∩";
|
---|
279 | var Cap = "⋒";
|
---|
280 | var capcup = "⩇";
|
---|
281 | var capdot = "⩀";
|
---|
282 | var CapitalDifferentialD = "ⅅ";
|
---|
283 | var caps = "∩︀";
|
---|
284 | var caret = "⁁";
|
---|
285 | var caron = "ˇ";
|
---|
286 | var Cayleys = "ℭ";
|
---|
287 | var ccaps = "⩍";
|
---|
288 | var Ccaron = "Č";
|
---|
289 | var ccaron = "č";
|
---|
290 | var Ccedil = "Ç";
|
---|
291 | var ccedil = "ç";
|
---|
292 | var Ccirc = "Ĉ";
|
---|
293 | var ccirc = "ĉ";
|
---|
294 | var Cconint = "∰";
|
---|
295 | var ccups = "⩌";
|
---|
296 | var ccupssm = "⩐";
|
---|
297 | var Cdot = "Ċ";
|
---|
298 | var cdot = "ċ";
|
---|
299 | var cedil = "¸";
|
---|
300 | var Cedilla = "¸";
|
---|
301 | var cemptyv = "⦲";
|
---|
302 | var cent = "¢";
|
---|
303 | var centerdot = "·";
|
---|
304 | var CenterDot = "·";
|
---|
305 | var cfr = "𝔠";
|
---|
306 | var Cfr = "ℭ";
|
---|
307 | var CHcy = "Ч";
|
---|
308 | var chcy = "ч";
|
---|
309 | var check = "✓";
|
---|
310 | var checkmark = "✓";
|
---|
311 | var Chi = "Χ";
|
---|
312 | var chi = "χ";
|
---|
313 | var circ = "ˆ";
|
---|
314 | var circeq = "≗";
|
---|
315 | var circlearrowleft = "↺";
|
---|
316 | var circlearrowright = "↻";
|
---|
317 | var circledast = "⊛";
|
---|
318 | var circledcirc = "⊚";
|
---|
319 | var circleddash = "⊝";
|
---|
320 | var CircleDot = "⊙";
|
---|
321 | var circledR = "®";
|
---|
322 | var circledS = "Ⓢ";
|
---|
323 | var CircleMinus = "⊖";
|
---|
324 | var CirclePlus = "⊕";
|
---|
325 | var CircleTimes = "⊗";
|
---|
326 | var cir = "○";
|
---|
327 | var cirE = "⧃";
|
---|
328 | var cire = "≗";
|
---|
329 | var cirfnint = "⨐";
|
---|
330 | var cirmid = "⫯";
|
---|
331 | var cirscir = "⧂";
|
---|
332 | var ClockwiseContourIntegral = "∲";
|
---|
333 | var CloseCurlyDoubleQuote = "”";
|
---|
334 | var CloseCurlyQuote = "’";
|
---|
335 | var clubs = "♣";
|
---|
336 | var clubsuit = "♣";
|
---|
337 | var colon = ":";
|
---|
338 | var Colon = "∷";
|
---|
339 | var Colone = "⩴";
|
---|
340 | var colone = "≔";
|
---|
341 | var coloneq = "≔";
|
---|
342 | var comma = ",";
|
---|
343 | var commat = "@";
|
---|
344 | var comp = "∁";
|
---|
345 | var compfn = "∘";
|
---|
346 | var complement = "∁";
|
---|
347 | var complexes = "ℂ";
|
---|
348 | var cong = "≅";
|
---|
349 | var congdot = "⩭";
|
---|
350 | var Congruent = "≡";
|
---|
351 | var conint = "∮";
|
---|
352 | var Conint = "∯";
|
---|
353 | var ContourIntegral = "∮";
|
---|
354 | var copf = "𝕔";
|
---|
355 | var Copf = "ℂ";
|
---|
356 | var coprod = "∐";
|
---|
357 | var Coproduct = "∐";
|
---|
358 | var copy = "©";
|
---|
359 | var COPY = "©";
|
---|
360 | var copysr = "℗";
|
---|
361 | var CounterClockwiseContourIntegral = "∳";
|
---|
362 | var crarr = "↵";
|
---|
363 | var cross = "✗";
|
---|
364 | var Cross = "⨯";
|
---|
365 | var Cscr = "𝒞";
|
---|
366 | var cscr = "𝒸";
|
---|
367 | var csub = "⫏";
|
---|
368 | var csube = "⫑";
|
---|
369 | var csup = "⫐";
|
---|
370 | var csupe = "⫒";
|
---|
371 | var ctdot = "⋯";
|
---|
372 | var cudarrl = "⤸";
|
---|
373 | var cudarrr = "⤵";
|
---|
374 | var cuepr = "⋞";
|
---|
375 | var cuesc = "⋟";
|
---|
376 | var cularr = "↶";
|
---|
377 | var cularrp = "⤽";
|
---|
378 | var cupbrcap = "⩈";
|
---|
379 | var cupcap = "⩆";
|
---|
380 | var CupCap = "≍";
|
---|
381 | var cup = "∪";
|
---|
382 | var Cup = "⋓";
|
---|
383 | var cupcup = "⩊";
|
---|
384 | var cupdot = "⊍";
|
---|
385 | var cupor = "⩅";
|
---|
386 | var cups = "∪︀";
|
---|
387 | var curarr = "↷";
|
---|
388 | var curarrm = "⤼";
|
---|
389 | var curlyeqprec = "⋞";
|
---|
390 | var curlyeqsucc = "⋟";
|
---|
391 | var curlyvee = "⋎";
|
---|
392 | var curlywedge = "⋏";
|
---|
393 | var curren = "¤";
|
---|
394 | var curvearrowleft = "↶";
|
---|
395 | var curvearrowright = "↷";
|
---|
396 | var cuvee = "⋎";
|
---|
397 | var cuwed = "⋏";
|
---|
398 | var cwconint = "∲";
|
---|
399 | var cwint = "∱";
|
---|
400 | var cylcty = "⌭";
|
---|
401 | var dagger = "†";
|
---|
402 | var Dagger = "‡";
|
---|
403 | var daleth = "ℸ";
|
---|
404 | var darr = "↓";
|
---|
405 | var Darr = "↡";
|
---|
406 | var dArr = "⇓";
|
---|
407 | var dash = "‐";
|
---|
408 | var Dashv = "⫤";
|
---|
409 | var dashv = "⊣";
|
---|
410 | var dbkarow = "⤏";
|
---|
411 | var dblac = "˝";
|
---|
412 | var Dcaron = "Ď";
|
---|
413 | var dcaron = "ď";
|
---|
414 | var Dcy = "Д";
|
---|
415 | var dcy = "д";
|
---|
416 | var ddagger = "‡";
|
---|
417 | var ddarr = "⇊";
|
---|
418 | var DD = "ⅅ";
|
---|
419 | var dd = "ⅆ";
|
---|
420 | var DDotrahd = "⤑";
|
---|
421 | var ddotseq = "⩷";
|
---|
422 | var deg = "°";
|
---|
423 | var Del = "∇";
|
---|
424 | var Delta = "Δ";
|
---|
425 | var delta = "δ";
|
---|
426 | var demptyv = "⦱";
|
---|
427 | var dfisht = "⥿";
|
---|
428 | var Dfr = "𝔇";
|
---|
429 | var dfr = "𝔡";
|
---|
430 | var dHar = "⥥";
|
---|
431 | var dharl = "⇃";
|
---|
432 | var dharr = "⇂";
|
---|
433 | var DiacriticalAcute = "´";
|
---|
434 | var DiacriticalDot = "˙";
|
---|
435 | var DiacriticalDoubleAcute = "˝";
|
---|
436 | var DiacriticalGrave = "`";
|
---|
437 | var DiacriticalTilde = "˜";
|
---|
438 | var diam = "⋄";
|
---|
439 | var diamond = "⋄";
|
---|
440 | var Diamond = "⋄";
|
---|
441 | var diamondsuit = "♦";
|
---|
442 | var diams = "♦";
|
---|
443 | var die = "¨";
|
---|
444 | var DifferentialD = "ⅆ";
|
---|
445 | var digamma = "ϝ";
|
---|
446 | var disin = "⋲";
|
---|
447 | var div = "÷";
|
---|
448 | var divide = "÷";
|
---|
449 | var divideontimes = "⋇";
|
---|
450 | var divonx = "⋇";
|
---|
451 | var DJcy = "Ђ";
|
---|
452 | var djcy = "ђ";
|
---|
453 | var dlcorn = "⌞";
|
---|
454 | var dlcrop = "⌍";
|
---|
455 | var dollar = "$";
|
---|
456 | var Dopf = "𝔻";
|
---|
457 | var dopf = "𝕕";
|
---|
458 | var Dot = "¨";
|
---|
459 | var dot = "˙";
|
---|
460 | var DotDot = "⃜";
|
---|
461 | var doteq = "≐";
|
---|
462 | var doteqdot = "≑";
|
---|
463 | var DotEqual = "≐";
|
---|
464 | var dotminus = "∸";
|
---|
465 | var dotplus = "∔";
|
---|
466 | var dotsquare = "⊡";
|
---|
467 | var doublebarwedge = "⌆";
|
---|
468 | var DoubleContourIntegral = "∯";
|
---|
469 | var DoubleDot = "¨";
|
---|
470 | var DoubleDownArrow = "⇓";
|
---|
471 | var DoubleLeftArrow = "⇐";
|
---|
472 | var DoubleLeftRightArrow = "⇔";
|
---|
473 | var DoubleLeftTee = "⫤";
|
---|
474 | var DoubleLongLeftArrow = "⟸";
|
---|
475 | var DoubleLongLeftRightArrow = "⟺";
|
---|
476 | var DoubleLongRightArrow = "⟹";
|
---|
477 | var DoubleRightArrow = "⇒";
|
---|
478 | var DoubleRightTee = "⊨";
|
---|
479 | var DoubleUpArrow = "⇑";
|
---|
480 | var DoubleUpDownArrow = "⇕";
|
---|
481 | var DoubleVerticalBar = "∥";
|
---|
482 | var DownArrowBar = "⤓";
|
---|
483 | var downarrow = "↓";
|
---|
484 | var DownArrow = "↓";
|
---|
485 | var Downarrow = "⇓";
|
---|
486 | var DownArrowUpArrow = "⇵";
|
---|
487 | var DownBreve = "̑";
|
---|
488 | var downdownarrows = "⇊";
|
---|
489 | var downharpoonleft = "⇃";
|
---|
490 | var downharpoonright = "⇂";
|
---|
491 | var DownLeftRightVector = "⥐";
|
---|
492 | var DownLeftTeeVector = "⥞";
|
---|
493 | var DownLeftVectorBar = "⥖";
|
---|
494 | var DownLeftVector = "↽";
|
---|
495 | var DownRightTeeVector = "⥟";
|
---|
496 | var DownRightVectorBar = "⥗";
|
---|
497 | var DownRightVector = "⇁";
|
---|
498 | var DownTeeArrow = "↧";
|
---|
499 | var DownTee = "⊤";
|
---|
500 | var drbkarow = "⤐";
|
---|
501 | var drcorn = "⌟";
|
---|
502 | var drcrop = "⌌";
|
---|
503 | var Dscr = "𝒟";
|
---|
504 | var dscr = "𝒹";
|
---|
505 | var DScy = "Ѕ";
|
---|
506 | var dscy = "ѕ";
|
---|
507 | var dsol = "⧶";
|
---|
508 | var Dstrok = "Đ";
|
---|
509 | var dstrok = "đ";
|
---|
510 | var dtdot = "⋱";
|
---|
511 | var dtri = "▿";
|
---|
512 | var dtrif = "▾";
|
---|
513 | var duarr = "⇵";
|
---|
514 | var duhar = "⥯";
|
---|
515 | var dwangle = "⦦";
|
---|
516 | var DZcy = "Џ";
|
---|
517 | var dzcy = "џ";
|
---|
518 | var dzigrarr = "⟿";
|
---|
519 | var Eacute = "É";
|
---|
520 | var eacute = "é";
|
---|
521 | var easter = "⩮";
|
---|
522 | var Ecaron = "Ě";
|
---|
523 | var ecaron = "ě";
|
---|
524 | var Ecirc = "Ê";
|
---|
525 | var ecirc = "ê";
|
---|
526 | var ecir = "≖";
|
---|
527 | var ecolon = "≕";
|
---|
528 | var Ecy = "Э";
|
---|
529 | var ecy = "э";
|
---|
530 | var eDDot = "⩷";
|
---|
531 | var Edot = "Ė";
|
---|
532 | var edot = "ė";
|
---|
533 | var eDot = "≑";
|
---|
534 | var ee = "ⅇ";
|
---|
535 | var efDot = "≒";
|
---|
536 | var Efr = "𝔈";
|
---|
537 | var efr = "𝔢";
|
---|
538 | var eg = "⪚";
|
---|
539 | var Egrave = "È";
|
---|
540 | var egrave = "è";
|
---|
541 | var egs = "⪖";
|
---|
542 | var egsdot = "⪘";
|
---|
543 | var el = "⪙";
|
---|
544 | var Element = "∈";
|
---|
545 | var elinters = "⏧";
|
---|
546 | var ell = "ℓ";
|
---|
547 | var els = "⪕";
|
---|
548 | var elsdot = "⪗";
|
---|
549 | var Emacr = "Ē";
|
---|
550 | var emacr = "ē";
|
---|
551 | var empty = "∅";
|
---|
552 | var emptyset = "∅";
|
---|
553 | var EmptySmallSquare = "◻";
|
---|
554 | var emptyv = "∅";
|
---|
555 | var EmptyVerySmallSquare = "▫";
|
---|
556 | var emsp13 = " ";
|
---|
557 | var emsp14 = " ";
|
---|
558 | var emsp = " ";
|
---|
559 | var ENG = "Ŋ";
|
---|
560 | var eng = "ŋ";
|
---|
561 | var ensp = " ";
|
---|
562 | var Eogon = "Ę";
|
---|
563 | var eogon = "ę";
|
---|
564 | var Eopf = "𝔼";
|
---|
565 | var eopf = "𝕖";
|
---|
566 | var epar = "⋕";
|
---|
567 | var eparsl = "⧣";
|
---|
568 | var eplus = "⩱";
|
---|
569 | var epsi = "ε";
|
---|
570 | var Epsilon = "Ε";
|
---|
571 | var epsilon = "ε";
|
---|
572 | var epsiv = "ϵ";
|
---|
573 | var eqcirc = "≖";
|
---|
574 | var eqcolon = "≕";
|
---|
575 | var eqsim = "≂";
|
---|
576 | var eqslantgtr = "⪖";
|
---|
577 | var eqslantless = "⪕";
|
---|
578 | var Equal = "⩵";
|
---|
579 | var equals = "=";
|
---|
580 | var EqualTilde = "≂";
|
---|
581 | var equest = "≟";
|
---|
582 | var Equilibrium = "⇌";
|
---|
583 | var equiv = "≡";
|
---|
584 | var equivDD = "⩸";
|
---|
585 | var eqvparsl = "⧥";
|
---|
586 | var erarr = "⥱";
|
---|
587 | var erDot = "≓";
|
---|
588 | var escr = "ℯ";
|
---|
589 | var Escr = "ℰ";
|
---|
590 | var esdot = "≐";
|
---|
591 | var Esim = "⩳";
|
---|
592 | var esim = "≂";
|
---|
593 | var Eta = "Η";
|
---|
594 | var eta = "η";
|
---|
595 | var ETH = "Ð";
|
---|
596 | var eth = "ð";
|
---|
597 | var Euml = "Ë";
|
---|
598 | var euml = "ë";
|
---|
599 | var euro = "€";
|
---|
600 | var excl = "!";
|
---|
601 | var exist = "∃";
|
---|
602 | var Exists = "∃";
|
---|
603 | var expectation = "ℰ";
|
---|
604 | var exponentiale = "ⅇ";
|
---|
605 | var ExponentialE = "ⅇ";
|
---|
606 | var fallingdotseq = "≒";
|
---|
607 | var Fcy = "Ф";
|
---|
608 | var fcy = "ф";
|
---|
609 | var female = "♀";
|
---|
610 | var ffilig = "ffi";
|
---|
611 | var fflig = "ff";
|
---|
612 | var ffllig = "ffl";
|
---|
613 | var Ffr = "𝔉";
|
---|
614 | var ffr = "𝔣";
|
---|
615 | var filig = "fi";
|
---|
616 | var FilledSmallSquare = "◼";
|
---|
617 | var FilledVerySmallSquare = "▪";
|
---|
618 | var fjlig = "fj";
|
---|
619 | var flat = "♭";
|
---|
620 | var fllig = "fl";
|
---|
621 | var fltns = "▱";
|
---|
622 | var fnof = "ƒ";
|
---|
623 | var Fopf = "𝔽";
|
---|
624 | var fopf = "𝕗";
|
---|
625 | var forall = "∀";
|
---|
626 | var ForAll = "∀";
|
---|
627 | var fork = "⋔";
|
---|
628 | var forkv = "⫙";
|
---|
629 | var Fouriertrf = "ℱ";
|
---|
630 | var fpartint = "⨍";
|
---|
631 | var frac12 = "½";
|
---|
632 | var frac13 = "⅓";
|
---|
633 | var frac14 = "¼";
|
---|
634 | var frac15 = "⅕";
|
---|
635 | var frac16 = "⅙";
|
---|
636 | var frac18 = "⅛";
|
---|
637 | var frac23 = "⅔";
|
---|
638 | var frac25 = "⅖";
|
---|
639 | var frac34 = "¾";
|
---|
640 | var frac35 = "⅗";
|
---|
641 | var frac38 = "⅜";
|
---|
642 | var frac45 = "⅘";
|
---|
643 | var frac56 = "⅚";
|
---|
644 | var frac58 = "⅝";
|
---|
645 | var frac78 = "⅞";
|
---|
646 | var frasl = "⁄";
|
---|
647 | var frown = "⌢";
|
---|
648 | var fscr = "𝒻";
|
---|
649 | var Fscr = "ℱ";
|
---|
650 | var gacute = "ǵ";
|
---|
651 | var Gamma = "Γ";
|
---|
652 | var gamma = "γ";
|
---|
653 | var Gammad = "Ϝ";
|
---|
654 | var gammad = "ϝ";
|
---|
655 | var gap = "⪆";
|
---|
656 | var Gbreve = "Ğ";
|
---|
657 | var gbreve = "ğ";
|
---|
658 | var Gcedil = "Ģ";
|
---|
659 | var Gcirc = "Ĝ";
|
---|
660 | var gcirc = "ĝ";
|
---|
661 | var Gcy = "Г";
|
---|
662 | var gcy = "г";
|
---|
663 | var Gdot = "Ġ";
|
---|
664 | var gdot = "ġ";
|
---|
665 | var ge = "≥";
|
---|
666 | var gE = "≧";
|
---|
667 | var gEl = "⪌";
|
---|
668 | var gel = "⋛";
|
---|
669 | var geq = "≥";
|
---|
670 | var geqq = "≧";
|
---|
671 | var geqslant = "⩾";
|
---|
672 | var gescc = "⪩";
|
---|
673 | var ges = "⩾";
|
---|
674 | var gesdot = "⪀";
|
---|
675 | var gesdoto = "⪂";
|
---|
676 | var gesdotol = "⪄";
|
---|
677 | var gesl = "⋛︀";
|
---|
678 | var gesles = "⪔";
|
---|
679 | var Gfr = "𝔊";
|
---|
680 | var gfr = "𝔤";
|
---|
681 | var gg = "≫";
|
---|
682 | var Gg = "⋙";
|
---|
683 | var ggg = "⋙";
|
---|
684 | var gimel = "ℷ";
|
---|
685 | var GJcy = "Ѓ";
|
---|
686 | var gjcy = "ѓ";
|
---|
687 | var gla = "⪥";
|
---|
688 | var gl = "≷";
|
---|
689 | var glE = "⪒";
|
---|
690 | var glj = "⪤";
|
---|
691 | var gnap = "⪊";
|
---|
692 | var gnapprox = "⪊";
|
---|
693 | var gne = "⪈";
|
---|
694 | var gnE = "≩";
|
---|
695 | var gneq = "⪈";
|
---|
696 | var gneqq = "≩";
|
---|
697 | var gnsim = "⋧";
|
---|
698 | var Gopf = "𝔾";
|
---|
699 | var gopf = "𝕘";
|
---|
700 | var grave = "`";
|
---|
701 | var GreaterEqual = "≥";
|
---|
702 | var GreaterEqualLess = "⋛";
|
---|
703 | var GreaterFullEqual = "≧";
|
---|
704 | var GreaterGreater = "⪢";
|
---|
705 | var GreaterLess = "≷";
|
---|
706 | var GreaterSlantEqual = "⩾";
|
---|
707 | var GreaterTilde = "≳";
|
---|
708 | var Gscr = "𝒢";
|
---|
709 | var gscr = "ℊ";
|
---|
710 | var gsim = "≳";
|
---|
711 | var gsime = "⪎";
|
---|
712 | var gsiml = "⪐";
|
---|
713 | var gtcc = "⪧";
|
---|
714 | var gtcir = "⩺";
|
---|
715 | var gt = ">";
|
---|
716 | var GT = ">";
|
---|
717 | var Gt = "≫";
|
---|
718 | var gtdot = "⋗";
|
---|
719 | var gtlPar = "⦕";
|
---|
720 | var gtquest = "⩼";
|
---|
721 | var gtrapprox = "⪆";
|
---|
722 | var gtrarr = "⥸";
|
---|
723 | var gtrdot = "⋗";
|
---|
724 | var gtreqless = "⋛";
|
---|
725 | var gtreqqless = "⪌";
|
---|
726 | var gtrless = "≷";
|
---|
727 | var gtrsim = "≳";
|
---|
728 | var gvertneqq = "≩︀";
|
---|
729 | var gvnE = "≩︀";
|
---|
730 | var Hacek = "ˇ";
|
---|
731 | var hairsp = " ";
|
---|
732 | var half = "½";
|
---|
733 | var hamilt = "ℋ";
|
---|
734 | var HARDcy = "Ъ";
|
---|
735 | var hardcy = "ъ";
|
---|
736 | var harrcir = "⥈";
|
---|
737 | var harr = "↔";
|
---|
738 | var hArr = "⇔";
|
---|
739 | var harrw = "↭";
|
---|
740 | var Hat = "^";
|
---|
741 | var hbar = "ℏ";
|
---|
742 | var Hcirc = "Ĥ";
|
---|
743 | var hcirc = "ĥ";
|
---|
744 | var hearts = "♥";
|
---|
745 | var heartsuit = "♥";
|
---|
746 | var hellip = "…";
|
---|
747 | var hercon = "⊹";
|
---|
748 | var hfr = "𝔥";
|
---|
749 | var Hfr = "ℌ";
|
---|
750 | var HilbertSpace = "ℋ";
|
---|
751 | var hksearow = "⤥";
|
---|
752 | var hkswarow = "⤦";
|
---|
753 | var hoarr = "⇿";
|
---|
754 | var homtht = "∻";
|
---|
755 | var hookleftarrow = "↩";
|
---|
756 | var hookrightarrow = "↪";
|
---|
757 | var hopf = "𝕙";
|
---|
758 | var Hopf = "ℍ";
|
---|
759 | var horbar = "―";
|
---|
760 | var HorizontalLine = "─";
|
---|
761 | var hscr = "𝒽";
|
---|
762 | var Hscr = "ℋ";
|
---|
763 | var hslash = "ℏ";
|
---|
764 | var Hstrok = "Ħ";
|
---|
765 | var hstrok = "ħ";
|
---|
766 | var HumpDownHump = "≎";
|
---|
767 | var HumpEqual = "≏";
|
---|
768 | var hybull = "⁃";
|
---|
769 | var hyphen = "‐";
|
---|
770 | var Iacute = "Í";
|
---|
771 | var iacute = "í";
|
---|
772 | var ic = "";
|
---|
773 | var Icirc = "Î";
|
---|
774 | var icirc = "î";
|
---|
775 | var Icy = "И";
|
---|
776 | var icy = "и";
|
---|
777 | var Idot = "İ";
|
---|
778 | var IEcy = "Е";
|
---|
779 | var iecy = "е";
|
---|
780 | var iexcl = "¡";
|
---|
781 | var iff = "⇔";
|
---|
782 | var ifr = "𝔦";
|
---|
783 | var Ifr = "ℑ";
|
---|
784 | var Igrave = "Ì";
|
---|
785 | var igrave = "ì";
|
---|
786 | var ii = "ⅈ";
|
---|
787 | var iiiint = "⨌";
|
---|
788 | var iiint = "∭";
|
---|
789 | var iinfin = "⧜";
|
---|
790 | var iiota = "℩";
|
---|
791 | var IJlig = "IJ";
|
---|
792 | var ijlig = "ij";
|
---|
793 | var Imacr = "Ī";
|
---|
794 | var imacr = "ī";
|
---|
795 | var image = "ℑ";
|
---|
796 | var ImaginaryI = "ⅈ";
|
---|
797 | var imagline = "ℐ";
|
---|
798 | var imagpart = "ℑ";
|
---|
799 | var imath = "ı";
|
---|
800 | var Im = "ℑ";
|
---|
801 | var imof = "⊷";
|
---|
802 | var imped = "Ƶ";
|
---|
803 | var Implies = "⇒";
|
---|
804 | var incare = "℅";
|
---|
805 | var infin = "∞";
|
---|
806 | var infintie = "⧝";
|
---|
807 | var inodot = "ı";
|
---|
808 | var intcal = "⊺";
|
---|
809 | var int = "∫";
|
---|
810 | var Int = "∬";
|
---|
811 | var integers = "ℤ";
|
---|
812 | var Integral = "∫";
|
---|
813 | var intercal = "⊺";
|
---|
814 | var Intersection = "⋂";
|
---|
815 | var intlarhk = "⨗";
|
---|
816 | var intprod = "⨼";
|
---|
817 | var InvisibleComma = "";
|
---|
818 | var InvisibleTimes = "";
|
---|
819 | var IOcy = "Ё";
|
---|
820 | var iocy = "ё";
|
---|
821 | var Iogon = "Į";
|
---|
822 | var iogon = "į";
|
---|
823 | var Iopf = "𝕀";
|
---|
824 | var iopf = "𝕚";
|
---|
825 | var Iota = "Ι";
|
---|
826 | var iota = "ι";
|
---|
827 | var iprod = "⨼";
|
---|
828 | var iquest = "¿";
|
---|
829 | var iscr = "𝒾";
|
---|
830 | var Iscr = "ℐ";
|
---|
831 | var isin = "∈";
|
---|
832 | var isindot = "⋵";
|
---|
833 | var isinE = "⋹";
|
---|
834 | var isins = "⋴";
|
---|
835 | var isinsv = "⋳";
|
---|
836 | var isinv = "∈";
|
---|
837 | var it = "";
|
---|
838 | var Itilde = "Ĩ";
|
---|
839 | var itilde = "ĩ";
|
---|
840 | var Iukcy = "І";
|
---|
841 | var iukcy = "і";
|
---|
842 | var Iuml = "Ï";
|
---|
843 | var iuml = "ï";
|
---|
844 | var Jcirc = "Ĵ";
|
---|
845 | var jcirc = "ĵ";
|
---|
846 | var Jcy = "Й";
|
---|
847 | var jcy = "й";
|
---|
848 | var Jfr = "𝔍";
|
---|
849 | var jfr = "𝔧";
|
---|
850 | var jmath = "ȷ";
|
---|
851 | var Jopf = "𝕁";
|
---|
852 | var jopf = "𝕛";
|
---|
853 | var Jscr = "𝒥";
|
---|
854 | var jscr = "𝒿";
|
---|
855 | var Jsercy = "Ј";
|
---|
856 | var jsercy = "ј";
|
---|
857 | var Jukcy = "Є";
|
---|
858 | var jukcy = "є";
|
---|
859 | var Kappa = "Κ";
|
---|
860 | var kappa = "κ";
|
---|
861 | var kappav = "ϰ";
|
---|
862 | var Kcedil = "Ķ";
|
---|
863 | var kcedil = "ķ";
|
---|
864 | var Kcy = "К";
|
---|
865 | var kcy = "к";
|
---|
866 | var Kfr = "𝔎";
|
---|
867 | var kfr = "𝔨";
|
---|
868 | var kgreen = "ĸ";
|
---|
869 | var KHcy = "Х";
|
---|
870 | var khcy = "х";
|
---|
871 | var KJcy = "Ќ";
|
---|
872 | var kjcy = "ќ";
|
---|
873 | var Kopf = "𝕂";
|
---|
874 | var kopf = "𝕜";
|
---|
875 | var Kscr = "𝒦";
|
---|
876 | var kscr = "𝓀";
|
---|
877 | var lAarr = "⇚";
|
---|
878 | var Lacute = "Ĺ";
|
---|
879 | var lacute = "ĺ";
|
---|
880 | var laemptyv = "⦴";
|
---|
881 | var lagran = "ℒ";
|
---|
882 | var Lambda = "Λ";
|
---|
883 | var lambda = "λ";
|
---|
884 | var lang = "⟨";
|
---|
885 | var Lang = "⟪";
|
---|
886 | var langd = "⦑";
|
---|
887 | var langle = "⟨";
|
---|
888 | var lap = "⪅";
|
---|
889 | var Laplacetrf = "ℒ";
|
---|
890 | var laquo = "«";
|
---|
891 | var larrb = "⇤";
|
---|
892 | var larrbfs = "⤟";
|
---|
893 | var larr = "←";
|
---|
894 | var Larr = "↞";
|
---|
895 | var lArr = "⇐";
|
---|
896 | var larrfs = "⤝";
|
---|
897 | var larrhk = "↩";
|
---|
898 | var larrlp = "↫";
|
---|
899 | var larrpl = "⤹";
|
---|
900 | var larrsim = "⥳";
|
---|
901 | var larrtl = "↢";
|
---|
902 | var latail = "⤙";
|
---|
903 | var lAtail = "⤛";
|
---|
904 | var lat = "⪫";
|
---|
905 | var late = "⪭";
|
---|
906 | var lates = "⪭︀";
|
---|
907 | var lbarr = "⤌";
|
---|
908 | var lBarr = "⤎";
|
---|
909 | var lbbrk = "❲";
|
---|
910 | var lbrace = "{";
|
---|
911 | var lbrack = "[";
|
---|
912 | var lbrke = "⦋";
|
---|
913 | var lbrksld = "⦏";
|
---|
914 | var lbrkslu = "⦍";
|
---|
915 | var Lcaron = "Ľ";
|
---|
916 | var lcaron = "ľ";
|
---|
917 | var Lcedil = "Ļ";
|
---|
918 | var lcedil = "ļ";
|
---|
919 | var lceil = "⌈";
|
---|
920 | var lcub = "{";
|
---|
921 | var Lcy = "Л";
|
---|
922 | var lcy = "л";
|
---|
923 | var ldca = "⤶";
|
---|
924 | var ldquo = "“";
|
---|
925 | var ldquor = "„";
|
---|
926 | var ldrdhar = "⥧";
|
---|
927 | var ldrushar = "⥋";
|
---|
928 | var ldsh = "↲";
|
---|
929 | var le = "≤";
|
---|
930 | var lE = "≦";
|
---|
931 | var LeftAngleBracket = "⟨";
|
---|
932 | var LeftArrowBar = "⇤";
|
---|
933 | var leftarrow = "←";
|
---|
934 | var LeftArrow = "←";
|
---|
935 | var Leftarrow = "⇐";
|
---|
936 | var LeftArrowRightArrow = "⇆";
|
---|
937 | var leftarrowtail = "↢";
|
---|
938 | var LeftCeiling = "⌈";
|
---|
939 | var LeftDoubleBracket = "⟦";
|
---|
940 | var LeftDownTeeVector = "⥡";
|
---|
941 | var LeftDownVectorBar = "⥙";
|
---|
942 | var LeftDownVector = "⇃";
|
---|
943 | var LeftFloor = "⌊";
|
---|
944 | var leftharpoondown = "↽";
|
---|
945 | var leftharpoonup = "↼";
|
---|
946 | var leftleftarrows = "⇇";
|
---|
947 | var leftrightarrow = "↔";
|
---|
948 | var LeftRightArrow = "↔";
|
---|
949 | var Leftrightarrow = "⇔";
|
---|
950 | var leftrightarrows = "⇆";
|
---|
951 | var leftrightharpoons = "⇋";
|
---|
952 | var leftrightsquigarrow = "↭";
|
---|
953 | var LeftRightVector = "⥎";
|
---|
954 | var LeftTeeArrow = "↤";
|
---|
955 | var LeftTee = "⊣";
|
---|
956 | var LeftTeeVector = "⥚";
|
---|
957 | var leftthreetimes = "⋋";
|
---|
958 | var LeftTriangleBar = "⧏";
|
---|
959 | var LeftTriangle = "⊲";
|
---|
960 | var LeftTriangleEqual = "⊴";
|
---|
961 | var LeftUpDownVector = "⥑";
|
---|
962 | var LeftUpTeeVector = "⥠";
|
---|
963 | var LeftUpVectorBar = "⥘";
|
---|
964 | var LeftUpVector = "↿";
|
---|
965 | var LeftVectorBar = "⥒";
|
---|
966 | var LeftVector = "↼";
|
---|
967 | var lEg = "⪋";
|
---|
968 | var leg = "⋚";
|
---|
969 | var leq = "≤";
|
---|
970 | var leqq = "≦";
|
---|
971 | var leqslant = "⩽";
|
---|
972 | var lescc = "⪨";
|
---|
973 | var les = "⩽";
|
---|
974 | var lesdot = "⩿";
|
---|
975 | var lesdoto = "⪁";
|
---|
976 | var lesdotor = "⪃";
|
---|
977 | var lesg = "⋚︀";
|
---|
978 | var lesges = "⪓";
|
---|
979 | var lessapprox = "⪅";
|
---|
980 | var lessdot = "⋖";
|
---|
981 | var lesseqgtr = "⋚";
|
---|
982 | var lesseqqgtr = "⪋";
|
---|
983 | var LessEqualGreater = "⋚";
|
---|
984 | var LessFullEqual = "≦";
|
---|
985 | var LessGreater = "≶";
|
---|
986 | var lessgtr = "≶";
|
---|
987 | var LessLess = "⪡";
|
---|
988 | var lesssim = "≲";
|
---|
989 | var LessSlantEqual = "⩽";
|
---|
990 | var LessTilde = "≲";
|
---|
991 | var lfisht = "⥼";
|
---|
992 | var lfloor = "⌊";
|
---|
993 | var Lfr = "𝔏";
|
---|
994 | var lfr = "𝔩";
|
---|
995 | var lg = "≶";
|
---|
996 | var lgE = "⪑";
|
---|
997 | var lHar = "⥢";
|
---|
998 | var lhard = "↽";
|
---|
999 | var lharu = "↼";
|
---|
1000 | var lharul = "⥪";
|
---|
1001 | var lhblk = "▄";
|
---|
1002 | var LJcy = "Љ";
|
---|
1003 | var ljcy = "љ";
|
---|
1004 | var llarr = "⇇";
|
---|
1005 | var ll = "≪";
|
---|
1006 | var Ll = "⋘";
|
---|
1007 | var llcorner = "⌞";
|
---|
1008 | var Lleftarrow = "⇚";
|
---|
1009 | var llhard = "⥫";
|
---|
1010 | var lltri = "◺";
|
---|
1011 | var Lmidot = "Ŀ";
|
---|
1012 | var lmidot = "ŀ";
|
---|
1013 | var lmoustache = "⎰";
|
---|
1014 | var lmoust = "⎰";
|
---|
1015 | var lnap = "⪉";
|
---|
1016 | var lnapprox = "⪉";
|
---|
1017 | var lne = "⪇";
|
---|
1018 | var lnE = "≨";
|
---|
1019 | var lneq = "⪇";
|
---|
1020 | var lneqq = "≨";
|
---|
1021 | var lnsim = "⋦";
|
---|
1022 | var loang = "⟬";
|
---|
1023 | var loarr = "⇽";
|
---|
1024 | var lobrk = "⟦";
|
---|
1025 | var longleftarrow = "⟵";
|
---|
1026 | var LongLeftArrow = "⟵";
|
---|
1027 | var Longleftarrow = "⟸";
|
---|
1028 | var longleftrightarrow = "⟷";
|
---|
1029 | var LongLeftRightArrow = "⟷";
|
---|
1030 | var Longleftrightarrow = "⟺";
|
---|
1031 | var longmapsto = "⟼";
|
---|
1032 | var longrightarrow = "⟶";
|
---|
1033 | var LongRightArrow = "⟶";
|
---|
1034 | var Longrightarrow = "⟹";
|
---|
1035 | var looparrowleft = "↫";
|
---|
1036 | var looparrowright = "↬";
|
---|
1037 | var lopar = "⦅";
|
---|
1038 | var Lopf = "𝕃";
|
---|
1039 | var lopf = "𝕝";
|
---|
1040 | var loplus = "⨭";
|
---|
1041 | var lotimes = "⨴";
|
---|
1042 | var lowast = "∗";
|
---|
1043 | var lowbar = "_";
|
---|
1044 | var LowerLeftArrow = "↙";
|
---|
1045 | var LowerRightArrow = "↘";
|
---|
1046 | var loz = "◊";
|
---|
1047 | var lozenge = "◊";
|
---|
1048 | var lozf = "⧫";
|
---|
1049 | var lpar = "(";
|
---|
1050 | var lparlt = "⦓";
|
---|
1051 | var lrarr = "⇆";
|
---|
1052 | var lrcorner = "⌟";
|
---|
1053 | var lrhar = "⇋";
|
---|
1054 | var lrhard = "⥭";
|
---|
1055 | var lrm = "";
|
---|
1056 | var lrtri = "⊿";
|
---|
1057 | var lsaquo = "‹";
|
---|
1058 | var lscr = "𝓁";
|
---|
1059 | var Lscr = "ℒ";
|
---|
1060 | var lsh = "↰";
|
---|
1061 | var Lsh = "↰";
|
---|
1062 | var lsim = "≲";
|
---|
1063 | var lsime = "⪍";
|
---|
1064 | var lsimg = "⪏";
|
---|
1065 | var lsqb = "[";
|
---|
1066 | var lsquo = "‘";
|
---|
1067 | var lsquor = "‚";
|
---|
1068 | var Lstrok = "Ł";
|
---|
1069 | var lstrok = "ł";
|
---|
1070 | var ltcc = "⪦";
|
---|
1071 | var ltcir = "⩹";
|
---|
1072 | var lt = "<";
|
---|
1073 | var LT = "<";
|
---|
1074 | var Lt = "≪";
|
---|
1075 | var ltdot = "⋖";
|
---|
1076 | var lthree = "⋋";
|
---|
1077 | var ltimes = "⋉";
|
---|
1078 | var ltlarr = "⥶";
|
---|
1079 | var ltquest = "⩻";
|
---|
1080 | var ltri = "◃";
|
---|
1081 | var ltrie = "⊴";
|
---|
1082 | var ltrif = "◂";
|
---|
1083 | var ltrPar = "⦖";
|
---|
1084 | var lurdshar = "⥊";
|
---|
1085 | var luruhar = "⥦";
|
---|
1086 | var lvertneqq = "≨︀";
|
---|
1087 | var lvnE = "≨︀";
|
---|
1088 | var macr = "¯";
|
---|
1089 | var male = "♂";
|
---|
1090 | var malt = "✠";
|
---|
1091 | var maltese = "✠";
|
---|
1092 | var map = "↦";
|
---|
1093 | var mapsto = "↦";
|
---|
1094 | var mapstodown = "↧";
|
---|
1095 | var mapstoleft = "↤";
|
---|
1096 | var mapstoup = "↥";
|
---|
1097 | var marker = "▮";
|
---|
1098 | var mcomma = "⨩";
|
---|
1099 | var Mcy = "М";
|
---|
1100 | var mcy = "м";
|
---|
1101 | var mdash = "—";
|
---|
1102 | var mDDot = "∺";
|
---|
1103 | var measuredangle = "∡";
|
---|
1104 | var MediumSpace = " ";
|
---|
1105 | var Mellintrf = "ℳ";
|
---|
1106 | var Mfr = "𝔐";
|
---|
1107 | var mfr = "𝔪";
|
---|
1108 | var mho = "℧";
|
---|
1109 | var micro = "µ";
|
---|
1110 | var midast = "*";
|
---|
1111 | var midcir = "⫰";
|
---|
1112 | var mid = "∣";
|
---|
1113 | var middot = "·";
|
---|
1114 | var minusb = "⊟";
|
---|
1115 | var minus = "−";
|
---|
1116 | var minusd = "∸";
|
---|
1117 | var minusdu = "⨪";
|
---|
1118 | var MinusPlus = "∓";
|
---|
1119 | var mlcp = "⫛";
|
---|
1120 | var mldr = "…";
|
---|
1121 | var mnplus = "∓";
|
---|
1122 | var models = "⊧";
|
---|
1123 | var Mopf = "𝕄";
|
---|
1124 | var mopf = "𝕞";
|
---|
1125 | var mp = "∓";
|
---|
1126 | var mscr = "𝓂";
|
---|
1127 | var Mscr = "ℳ";
|
---|
1128 | var mstpos = "∾";
|
---|
1129 | var Mu = "Μ";
|
---|
1130 | var mu = "μ";
|
---|
1131 | var multimap = "⊸";
|
---|
1132 | var mumap = "⊸";
|
---|
1133 | var nabla = "∇";
|
---|
1134 | var Nacute = "Ń";
|
---|
1135 | var nacute = "ń";
|
---|
1136 | var nang = "∠⃒";
|
---|
1137 | var nap = "≉";
|
---|
1138 | var napE = "⩰̸";
|
---|
1139 | var napid = "≋̸";
|
---|
1140 | var napos = "ʼn";
|
---|
1141 | var napprox = "≉";
|
---|
1142 | var natural = "♮";
|
---|
1143 | var naturals = "ℕ";
|
---|
1144 | var natur = "♮";
|
---|
1145 | var nbsp = " ";
|
---|
1146 | var nbump = "≎̸";
|
---|
1147 | var nbumpe = "≏̸";
|
---|
1148 | var ncap = "⩃";
|
---|
1149 | var Ncaron = "Ň";
|
---|
1150 | var ncaron = "ň";
|
---|
1151 | var Ncedil = "Ņ";
|
---|
1152 | var ncedil = "ņ";
|
---|
1153 | var ncong = "≇";
|
---|
1154 | var ncongdot = "⩭̸";
|
---|
1155 | var ncup = "⩂";
|
---|
1156 | var Ncy = "Н";
|
---|
1157 | var ncy = "н";
|
---|
1158 | var ndash = "–";
|
---|
1159 | var nearhk = "⤤";
|
---|
1160 | var nearr = "↗";
|
---|
1161 | var neArr = "⇗";
|
---|
1162 | var nearrow = "↗";
|
---|
1163 | var ne = "≠";
|
---|
1164 | var nedot = "≐̸";
|
---|
1165 | var NegativeMediumSpace = "";
|
---|
1166 | var NegativeThickSpace = "";
|
---|
1167 | var NegativeThinSpace = "";
|
---|
1168 | var NegativeVeryThinSpace = "";
|
---|
1169 | var nequiv = "≢";
|
---|
1170 | var nesear = "⤨";
|
---|
1171 | var nesim = "≂̸";
|
---|
1172 | var NestedGreaterGreater = "≫";
|
---|
1173 | var NestedLessLess = "≪";
|
---|
1174 | var NewLine = "\n";
|
---|
1175 | var nexist = "∄";
|
---|
1176 | var nexists = "∄";
|
---|
1177 | var Nfr = "𝔑";
|
---|
1178 | var nfr = "𝔫";
|
---|
1179 | var ngE = "≧̸";
|
---|
1180 | var nge = "≱";
|
---|
1181 | var ngeq = "≱";
|
---|
1182 | var ngeqq = "≧̸";
|
---|
1183 | var ngeqslant = "⩾̸";
|
---|
1184 | var nges = "⩾̸";
|
---|
1185 | var nGg = "⋙̸";
|
---|
1186 | var ngsim = "≵";
|
---|
1187 | var nGt = "≫⃒";
|
---|
1188 | var ngt = "≯";
|
---|
1189 | var ngtr = "≯";
|
---|
1190 | var nGtv = "≫̸";
|
---|
1191 | var nharr = "↮";
|
---|
1192 | var nhArr = "⇎";
|
---|
1193 | var nhpar = "⫲";
|
---|
1194 | var ni = "∋";
|
---|
1195 | var nis = "⋼";
|
---|
1196 | var nisd = "⋺";
|
---|
1197 | var niv = "∋";
|
---|
1198 | var NJcy = "Њ";
|
---|
1199 | var njcy = "њ";
|
---|
1200 | var nlarr = "↚";
|
---|
1201 | var nlArr = "⇍";
|
---|
1202 | var nldr = "‥";
|
---|
1203 | var nlE = "≦̸";
|
---|
1204 | var nle = "≰";
|
---|
1205 | var nleftarrow = "↚";
|
---|
1206 | var nLeftarrow = "⇍";
|
---|
1207 | var nleftrightarrow = "↮";
|
---|
1208 | var nLeftrightarrow = "⇎";
|
---|
1209 | var nleq = "≰";
|
---|
1210 | var nleqq = "≦̸";
|
---|
1211 | var nleqslant = "⩽̸";
|
---|
1212 | var nles = "⩽̸";
|
---|
1213 | var nless = "≮";
|
---|
1214 | var nLl = "⋘̸";
|
---|
1215 | var nlsim = "≴";
|
---|
1216 | var nLt = "≪⃒";
|
---|
1217 | var nlt = "≮";
|
---|
1218 | var nltri = "⋪";
|
---|
1219 | var nltrie = "⋬";
|
---|
1220 | var nLtv = "≪̸";
|
---|
1221 | var nmid = "∤";
|
---|
1222 | var NoBreak = "";
|
---|
1223 | var NonBreakingSpace = " ";
|
---|
1224 | var nopf = "𝕟";
|
---|
1225 | var Nopf = "ℕ";
|
---|
1226 | var Not = "⫬";
|
---|
1227 | var not = "¬";
|
---|
1228 | var NotCongruent = "≢";
|
---|
1229 | var NotCupCap = "≭";
|
---|
1230 | var NotDoubleVerticalBar = "∦";
|
---|
1231 | var NotElement = "∉";
|
---|
1232 | var NotEqual = "≠";
|
---|
1233 | var NotEqualTilde = "≂̸";
|
---|
1234 | var NotExists = "∄";
|
---|
1235 | var NotGreater = "≯";
|
---|
1236 | var NotGreaterEqual = "≱";
|
---|
1237 | var NotGreaterFullEqual = "≧̸";
|
---|
1238 | var NotGreaterGreater = "≫̸";
|
---|
1239 | var NotGreaterLess = "≹";
|
---|
1240 | var NotGreaterSlantEqual = "⩾̸";
|
---|
1241 | var NotGreaterTilde = "≵";
|
---|
1242 | var NotHumpDownHump = "≎̸";
|
---|
1243 | var NotHumpEqual = "≏̸";
|
---|
1244 | var notin = "∉";
|
---|
1245 | var notindot = "⋵̸";
|
---|
1246 | var notinE = "⋹̸";
|
---|
1247 | var notinva = "∉";
|
---|
1248 | var notinvb = "⋷";
|
---|
1249 | var notinvc = "⋶";
|
---|
1250 | var NotLeftTriangleBar = "⧏̸";
|
---|
1251 | var NotLeftTriangle = "⋪";
|
---|
1252 | var NotLeftTriangleEqual = "⋬";
|
---|
1253 | var NotLess = "≮";
|
---|
1254 | var NotLessEqual = "≰";
|
---|
1255 | var NotLessGreater = "≸";
|
---|
1256 | var NotLessLess = "≪̸";
|
---|
1257 | var NotLessSlantEqual = "⩽̸";
|
---|
1258 | var NotLessTilde = "≴";
|
---|
1259 | var NotNestedGreaterGreater = "⪢̸";
|
---|
1260 | var NotNestedLessLess = "⪡̸";
|
---|
1261 | var notni = "∌";
|
---|
1262 | var notniva = "∌";
|
---|
1263 | var notnivb = "⋾";
|
---|
1264 | var notnivc = "⋽";
|
---|
1265 | var NotPrecedes = "⊀";
|
---|
1266 | var NotPrecedesEqual = "⪯̸";
|
---|
1267 | var NotPrecedesSlantEqual = "⋠";
|
---|
1268 | var NotReverseElement = "∌";
|
---|
1269 | var NotRightTriangleBar = "⧐̸";
|
---|
1270 | var NotRightTriangle = "⋫";
|
---|
1271 | var NotRightTriangleEqual = "⋭";
|
---|
1272 | var NotSquareSubset = "⊏̸";
|
---|
1273 | var NotSquareSubsetEqual = "⋢";
|
---|
1274 | var NotSquareSuperset = "⊐̸";
|
---|
1275 | var NotSquareSupersetEqual = "⋣";
|
---|
1276 | var NotSubset = "⊂⃒";
|
---|
1277 | var NotSubsetEqual = "⊈";
|
---|
1278 | var NotSucceeds = "⊁";
|
---|
1279 | var NotSucceedsEqual = "⪰̸";
|
---|
1280 | var NotSucceedsSlantEqual = "⋡";
|
---|
1281 | var NotSucceedsTilde = "≿̸";
|
---|
1282 | var NotSuperset = "⊃⃒";
|
---|
1283 | var NotSupersetEqual = "⊉";
|
---|
1284 | var NotTilde = "≁";
|
---|
1285 | var NotTildeEqual = "≄";
|
---|
1286 | var NotTildeFullEqual = "≇";
|
---|
1287 | var NotTildeTilde = "≉";
|
---|
1288 | var NotVerticalBar = "∤";
|
---|
1289 | var nparallel = "∦";
|
---|
1290 | var npar = "∦";
|
---|
1291 | var nparsl = "⫽⃥";
|
---|
1292 | var npart = "∂̸";
|
---|
1293 | var npolint = "⨔";
|
---|
1294 | var npr = "⊀";
|
---|
1295 | var nprcue = "⋠";
|
---|
1296 | var nprec = "⊀";
|
---|
1297 | var npreceq = "⪯̸";
|
---|
1298 | var npre = "⪯̸";
|
---|
1299 | var nrarrc = "⤳̸";
|
---|
1300 | var nrarr = "↛";
|
---|
1301 | var nrArr = "⇏";
|
---|
1302 | var nrarrw = "↝̸";
|
---|
1303 | var nrightarrow = "↛";
|
---|
1304 | var nRightarrow = "⇏";
|
---|
1305 | var nrtri = "⋫";
|
---|
1306 | var nrtrie = "⋭";
|
---|
1307 | var nsc = "⊁";
|
---|
1308 | var nsccue = "⋡";
|
---|
1309 | var nsce = "⪰̸";
|
---|
1310 | var Nscr = "𝒩";
|
---|
1311 | var nscr = "𝓃";
|
---|
1312 | var nshortmid = "∤";
|
---|
1313 | var nshortparallel = "∦";
|
---|
1314 | var nsim = "≁";
|
---|
1315 | var nsime = "≄";
|
---|
1316 | var nsimeq = "≄";
|
---|
1317 | var nsmid = "∤";
|
---|
1318 | var nspar = "∦";
|
---|
1319 | var nsqsube = "⋢";
|
---|
1320 | var nsqsupe = "⋣";
|
---|
1321 | var nsub = "⊄";
|
---|
1322 | var nsubE = "⫅̸";
|
---|
1323 | var nsube = "⊈";
|
---|
1324 | var nsubset = "⊂⃒";
|
---|
1325 | var nsubseteq = "⊈";
|
---|
1326 | var nsubseteqq = "⫅̸";
|
---|
1327 | var nsucc = "⊁";
|
---|
1328 | var nsucceq = "⪰̸";
|
---|
1329 | var nsup = "⊅";
|
---|
1330 | var nsupE = "⫆̸";
|
---|
1331 | var nsupe = "⊉";
|
---|
1332 | var nsupset = "⊃⃒";
|
---|
1333 | var nsupseteq = "⊉";
|
---|
1334 | var nsupseteqq = "⫆̸";
|
---|
1335 | var ntgl = "≹";
|
---|
1336 | var Ntilde = "Ñ";
|
---|
1337 | var ntilde = "ñ";
|
---|
1338 | var ntlg = "≸";
|
---|
1339 | var ntriangleleft = "⋪";
|
---|
1340 | var ntrianglelefteq = "⋬";
|
---|
1341 | var ntriangleright = "⋫";
|
---|
1342 | var ntrianglerighteq = "⋭";
|
---|
1343 | var Nu = "Ν";
|
---|
1344 | var nu = "ν";
|
---|
1345 | var num = "#";
|
---|
1346 | var numero = "№";
|
---|
1347 | var numsp = " ";
|
---|
1348 | var nvap = "≍⃒";
|
---|
1349 | var nvdash = "⊬";
|
---|
1350 | var nvDash = "⊭";
|
---|
1351 | var nVdash = "⊮";
|
---|
1352 | var nVDash = "⊯";
|
---|
1353 | var nvge = "≥⃒";
|
---|
1354 | var nvgt = ">⃒";
|
---|
1355 | var nvHarr = "⤄";
|
---|
1356 | var nvinfin = "⧞";
|
---|
1357 | var nvlArr = "⤂";
|
---|
1358 | var nvle = "≤⃒";
|
---|
1359 | var nvlt = "<⃒";
|
---|
1360 | var nvltrie = "⊴⃒";
|
---|
1361 | var nvrArr = "⤃";
|
---|
1362 | var nvrtrie = "⊵⃒";
|
---|
1363 | var nvsim = "∼⃒";
|
---|
1364 | var nwarhk = "⤣";
|
---|
1365 | var nwarr = "↖";
|
---|
1366 | var nwArr = "⇖";
|
---|
1367 | var nwarrow = "↖";
|
---|
1368 | var nwnear = "⤧";
|
---|
1369 | var Oacute = "Ó";
|
---|
1370 | var oacute = "ó";
|
---|
1371 | var oast = "⊛";
|
---|
1372 | var Ocirc = "Ô";
|
---|
1373 | var ocirc = "ô";
|
---|
1374 | var ocir = "⊚";
|
---|
1375 | var Ocy = "О";
|
---|
1376 | var ocy = "о";
|
---|
1377 | var odash = "⊝";
|
---|
1378 | var Odblac = "Ő";
|
---|
1379 | var odblac = "ő";
|
---|
1380 | var odiv = "⨸";
|
---|
1381 | var odot = "⊙";
|
---|
1382 | var odsold = "⦼";
|
---|
1383 | var OElig = "Œ";
|
---|
1384 | var oelig = "œ";
|
---|
1385 | var ofcir = "⦿";
|
---|
1386 | var Ofr = "𝔒";
|
---|
1387 | var ofr = "𝔬";
|
---|
1388 | var ogon = "˛";
|
---|
1389 | var Ograve = "Ò";
|
---|
1390 | var ograve = "ò";
|
---|
1391 | var ogt = "⧁";
|
---|
1392 | var ohbar = "⦵";
|
---|
1393 | var ohm = "Ω";
|
---|
1394 | var oint = "∮";
|
---|
1395 | var olarr = "↺";
|
---|
1396 | var olcir = "⦾";
|
---|
1397 | var olcross = "⦻";
|
---|
1398 | var oline = "‾";
|
---|
1399 | var olt = "⧀";
|
---|
1400 | var Omacr = "Ō";
|
---|
1401 | var omacr = "ō";
|
---|
1402 | var Omega = "Ω";
|
---|
1403 | var omega = "ω";
|
---|
1404 | var Omicron = "Ο";
|
---|
1405 | var omicron = "ο";
|
---|
1406 | var omid = "⦶";
|
---|
1407 | var ominus = "⊖";
|
---|
1408 | var Oopf = "𝕆";
|
---|
1409 | var oopf = "𝕠";
|
---|
1410 | var opar = "⦷";
|
---|
1411 | var OpenCurlyDoubleQuote = "“";
|
---|
1412 | var OpenCurlyQuote = "‘";
|
---|
1413 | var operp = "⦹";
|
---|
1414 | var oplus = "⊕";
|
---|
1415 | var orarr = "↻";
|
---|
1416 | var Or = "⩔";
|
---|
1417 | var or = "∨";
|
---|
1418 | var ord = "⩝";
|
---|
1419 | var order = "ℴ";
|
---|
1420 | var orderof = "ℴ";
|
---|
1421 | var ordf = "ª";
|
---|
1422 | var ordm = "º";
|
---|
1423 | var origof = "⊶";
|
---|
1424 | var oror = "⩖";
|
---|
1425 | var orslope = "⩗";
|
---|
1426 | var orv = "⩛";
|
---|
1427 | var oS = "Ⓢ";
|
---|
1428 | var Oscr = "𝒪";
|
---|
1429 | var oscr = "ℴ";
|
---|
1430 | var Oslash = "Ø";
|
---|
1431 | var oslash = "ø";
|
---|
1432 | var osol = "⊘";
|
---|
1433 | var Otilde = "Õ";
|
---|
1434 | var otilde = "õ";
|
---|
1435 | var otimesas = "⨶";
|
---|
1436 | var Otimes = "⨷";
|
---|
1437 | var otimes = "⊗";
|
---|
1438 | var Ouml = "Ö";
|
---|
1439 | var ouml = "ö";
|
---|
1440 | var ovbar = "⌽";
|
---|
1441 | var OverBar = "‾";
|
---|
1442 | var OverBrace = "⏞";
|
---|
1443 | var OverBracket = "⎴";
|
---|
1444 | var OverParenthesis = "⏜";
|
---|
1445 | var para = "¶";
|
---|
1446 | var parallel = "∥";
|
---|
1447 | var par = "∥";
|
---|
1448 | var parsim = "⫳";
|
---|
1449 | var parsl = "⫽";
|
---|
1450 | var part = "∂";
|
---|
1451 | var PartialD = "∂";
|
---|
1452 | var Pcy = "П";
|
---|
1453 | var pcy = "п";
|
---|
1454 | var percnt = "%";
|
---|
1455 | var period = ".";
|
---|
1456 | var permil = "‰";
|
---|
1457 | var perp = "⊥";
|
---|
1458 | var pertenk = "‱";
|
---|
1459 | var Pfr = "𝔓";
|
---|
1460 | var pfr = "𝔭";
|
---|
1461 | var Phi = "Φ";
|
---|
1462 | var phi = "φ";
|
---|
1463 | var phiv = "ϕ";
|
---|
1464 | var phmmat = "ℳ";
|
---|
1465 | var phone = "☎";
|
---|
1466 | var Pi = "Π";
|
---|
1467 | var pi = "π";
|
---|
1468 | var pitchfork = "⋔";
|
---|
1469 | var piv = "ϖ";
|
---|
1470 | var planck = "ℏ";
|
---|
1471 | var planckh = "ℎ";
|
---|
1472 | var plankv = "ℏ";
|
---|
1473 | var plusacir = "⨣";
|
---|
1474 | var plusb = "⊞";
|
---|
1475 | var pluscir = "⨢";
|
---|
1476 | var plus = "+";
|
---|
1477 | var plusdo = "∔";
|
---|
1478 | var plusdu = "⨥";
|
---|
1479 | var pluse = "⩲";
|
---|
1480 | var PlusMinus = "±";
|
---|
1481 | var plusmn = "±";
|
---|
1482 | var plussim = "⨦";
|
---|
1483 | var plustwo = "⨧";
|
---|
1484 | var pm = "±";
|
---|
1485 | var Poincareplane = "ℌ";
|
---|
1486 | var pointint = "⨕";
|
---|
1487 | var popf = "𝕡";
|
---|
1488 | var Popf = "ℙ";
|
---|
1489 | var pound = "£";
|
---|
1490 | var prap = "⪷";
|
---|
1491 | var Pr = "⪻";
|
---|
1492 | var pr = "≺";
|
---|
1493 | var prcue = "≼";
|
---|
1494 | var precapprox = "⪷";
|
---|
1495 | var prec = "≺";
|
---|
1496 | var preccurlyeq = "≼";
|
---|
1497 | var Precedes = "≺";
|
---|
1498 | var PrecedesEqual = "⪯";
|
---|
1499 | var PrecedesSlantEqual = "≼";
|
---|
1500 | var PrecedesTilde = "≾";
|
---|
1501 | var preceq = "⪯";
|
---|
1502 | var precnapprox = "⪹";
|
---|
1503 | var precneqq = "⪵";
|
---|
1504 | var precnsim = "⋨";
|
---|
1505 | var pre = "⪯";
|
---|
1506 | var prE = "⪳";
|
---|
1507 | var precsim = "≾";
|
---|
1508 | var prime = "′";
|
---|
1509 | var Prime = "″";
|
---|
1510 | var primes = "ℙ";
|
---|
1511 | var prnap = "⪹";
|
---|
1512 | var prnE = "⪵";
|
---|
1513 | var prnsim = "⋨";
|
---|
1514 | var prod = "∏";
|
---|
1515 | var Product = "∏";
|
---|
1516 | var profalar = "⌮";
|
---|
1517 | var profline = "⌒";
|
---|
1518 | var profsurf = "⌓";
|
---|
1519 | var prop = "∝";
|
---|
1520 | var Proportional = "∝";
|
---|
1521 | var Proportion = "∷";
|
---|
1522 | var propto = "∝";
|
---|
1523 | var prsim = "≾";
|
---|
1524 | var prurel = "⊰";
|
---|
1525 | var Pscr = "𝒫";
|
---|
1526 | var pscr = "𝓅";
|
---|
1527 | var Psi = "Ψ";
|
---|
1528 | var psi = "ψ";
|
---|
1529 | var puncsp = " ";
|
---|
1530 | var Qfr = "𝔔";
|
---|
1531 | var qfr = "𝔮";
|
---|
1532 | var qint = "⨌";
|
---|
1533 | var qopf = "𝕢";
|
---|
1534 | var Qopf = "ℚ";
|
---|
1535 | var qprime = "⁗";
|
---|
1536 | var Qscr = "𝒬";
|
---|
1537 | var qscr = "𝓆";
|
---|
1538 | var quaternions = "ℍ";
|
---|
1539 | var quatint = "⨖";
|
---|
1540 | var quest = "?";
|
---|
1541 | var questeq = "≟";
|
---|
1542 | var quot = "\"";
|
---|
1543 | var QUOT = "\"";
|
---|
1544 | var rAarr = "⇛";
|
---|
1545 | var race = "∽̱";
|
---|
1546 | var Racute = "Ŕ";
|
---|
1547 | var racute = "ŕ";
|
---|
1548 | var radic = "√";
|
---|
1549 | var raemptyv = "⦳";
|
---|
1550 | var rang = "⟩";
|
---|
1551 | var Rang = "⟫";
|
---|
1552 | var rangd = "⦒";
|
---|
1553 | var range = "⦥";
|
---|
1554 | var rangle = "⟩";
|
---|
1555 | var raquo = "»";
|
---|
1556 | var rarrap = "⥵";
|
---|
1557 | var rarrb = "⇥";
|
---|
1558 | var rarrbfs = "⤠";
|
---|
1559 | var rarrc = "⤳";
|
---|
1560 | var rarr = "→";
|
---|
1561 | var Rarr = "↠";
|
---|
1562 | var rArr = "⇒";
|
---|
1563 | var rarrfs = "⤞";
|
---|
1564 | var rarrhk = "↪";
|
---|
1565 | var rarrlp = "↬";
|
---|
1566 | var rarrpl = "⥅";
|
---|
1567 | var rarrsim = "⥴";
|
---|
1568 | var Rarrtl = "⤖";
|
---|
1569 | var rarrtl = "↣";
|
---|
1570 | var rarrw = "↝";
|
---|
1571 | var ratail = "⤚";
|
---|
1572 | var rAtail = "⤜";
|
---|
1573 | var ratio = "∶";
|
---|
1574 | var rationals = "ℚ";
|
---|
1575 | var rbarr = "⤍";
|
---|
1576 | var rBarr = "⤏";
|
---|
1577 | var RBarr = "⤐";
|
---|
1578 | var rbbrk = "❳";
|
---|
1579 | var rbrace = "}";
|
---|
1580 | var rbrack = "]";
|
---|
1581 | var rbrke = "⦌";
|
---|
1582 | var rbrksld = "⦎";
|
---|
1583 | var rbrkslu = "⦐";
|
---|
1584 | var Rcaron = "Ř";
|
---|
1585 | var rcaron = "ř";
|
---|
1586 | var Rcedil = "Ŗ";
|
---|
1587 | var rcedil = "ŗ";
|
---|
1588 | var rceil = "⌉";
|
---|
1589 | var rcub = "}";
|
---|
1590 | var Rcy = "Р";
|
---|
1591 | var rcy = "р";
|
---|
1592 | var rdca = "⤷";
|
---|
1593 | var rdldhar = "⥩";
|
---|
1594 | var rdquo = "”";
|
---|
1595 | var rdquor = "”";
|
---|
1596 | var rdsh = "↳";
|
---|
1597 | var real = "ℜ";
|
---|
1598 | var realine = "ℛ";
|
---|
1599 | var realpart = "ℜ";
|
---|
1600 | var reals = "ℝ";
|
---|
1601 | var Re = "ℜ";
|
---|
1602 | var rect = "▭";
|
---|
1603 | var reg = "®";
|
---|
1604 | var REG = "®";
|
---|
1605 | var ReverseElement = "∋";
|
---|
1606 | var ReverseEquilibrium = "⇋";
|
---|
1607 | var ReverseUpEquilibrium = "⥯";
|
---|
1608 | var rfisht = "⥽";
|
---|
1609 | var rfloor = "⌋";
|
---|
1610 | var rfr = "𝔯";
|
---|
1611 | var Rfr = "ℜ";
|
---|
1612 | var rHar = "⥤";
|
---|
1613 | var rhard = "⇁";
|
---|
1614 | var rharu = "⇀";
|
---|
1615 | var rharul = "⥬";
|
---|
1616 | var Rho = "Ρ";
|
---|
1617 | var rho = "ρ";
|
---|
1618 | var rhov = "ϱ";
|
---|
1619 | var RightAngleBracket = "⟩";
|
---|
1620 | var RightArrowBar = "⇥";
|
---|
1621 | var rightarrow = "→";
|
---|
1622 | var RightArrow = "→";
|
---|
1623 | var Rightarrow = "⇒";
|
---|
1624 | var RightArrowLeftArrow = "⇄";
|
---|
1625 | var rightarrowtail = "↣";
|
---|
1626 | var RightCeiling = "⌉";
|
---|
1627 | var RightDoubleBracket = "⟧";
|
---|
1628 | var RightDownTeeVector = "⥝";
|
---|
1629 | var RightDownVectorBar = "⥕";
|
---|
1630 | var RightDownVector = "⇂";
|
---|
1631 | var RightFloor = "⌋";
|
---|
1632 | var rightharpoondown = "⇁";
|
---|
1633 | var rightharpoonup = "⇀";
|
---|
1634 | var rightleftarrows = "⇄";
|
---|
1635 | var rightleftharpoons = "⇌";
|
---|
1636 | var rightrightarrows = "⇉";
|
---|
1637 | var rightsquigarrow = "↝";
|
---|
1638 | var RightTeeArrow = "↦";
|
---|
1639 | var RightTee = "⊢";
|
---|
1640 | var RightTeeVector = "⥛";
|
---|
1641 | var rightthreetimes = "⋌";
|
---|
1642 | var RightTriangleBar = "⧐";
|
---|
1643 | var RightTriangle = "⊳";
|
---|
1644 | var RightTriangleEqual = "⊵";
|
---|
1645 | var RightUpDownVector = "⥏";
|
---|
1646 | var RightUpTeeVector = "⥜";
|
---|
1647 | var RightUpVectorBar = "⥔";
|
---|
1648 | var RightUpVector = "↾";
|
---|
1649 | var RightVectorBar = "⥓";
|
---|
1650 | var RightVector = "⇀";
|
---|
1651 | var ring = "˚";
|
---|
1652 | var risingdotseq = "≓";
|
---|
1653 | var rlarr = "⇄";
|
---|
1654 | var rlhar = "⇌";
|
---|
1655 | var rlm = "";
|
---|
1656 | var rmoustache = "⎱";
|
---|
1657 | var rmoust = "⎱";
|
---|
1658 | var rnmid = "⫮";
|
---|
1659 | var roang = "⟭";
|
---|
1660 | var roarr = "⇾";
|
---|
1661 | var robrk = "⟧";
|
---|
1662 | var ropar = "⦆";
|
---|
1663 | var ropf = "𝕣";
|
---|
1664 | var Ropf = "ℝ";
|
---|
1665 | var roplus = "⨮";
|
---|
1666 | var rotimes = "⨵";
|
---|
1667 | var RoundImplies = "⥰";
|
---|
1668 | var rpar = ")";
|
---|
1669 | var rpargt = "⦔";
|
---|
1670 | var rppolint = "⨒";
|
---|
1671 | var rrarr = "⇉";
|
---|
1672 | var Rrightarrow = "⇛";
|
---|
1673 | var rsaquo = "›";
|
---|
1674 | var rscr = "𝓇";
|
---|
1675 | var Rscr = "ℛ";
|
---|
1676 | var rsh = "↱";
|
---|
1677 | var Rsh = "↱";
|
---|
1678 | var rsqb = "]";
|
---|
1679 | var rsquo = "’";
|
---|
1680 | var rsquor = "’";
|
---|
1681 | var rthree = "⋌";
|
---|
1682 | var rtimes = "⋊";
|
---|
1683 | var rtri = "▹";
|
---|
1684 | var rtrie = "⊵";
|
---|
1685 | var rtrif = "▸";
|
---|
1686 | var rtriltri = "⧎";
|
---|
1687 | var RuleDelayed = "⧴";
|
---|
1688 | var ruluhar = "⥨";
|
---|
1689 | var rx = "℞";
|
---|
1690 | var Sacute = "Ś";
|
---|
1691 | var sacute = "ś";
|
---|
1692 | var sbquo = "‚";
|
---|
1693 | var scap = "⪸";
|
---|
1694 | var Scaron = "Š";
|
---|
1695 | var scaron = "š";
|
---|
1696 | var Sc = "⪼";
|
---|
1697 | var sc = "≻";
|
---|
1698 | var sccue = "≽";
|
---|
1699 | var sce = "⪰";
|
---|
1700 | var scE = "⪴";
|
---|
1701 | var Scedil = "Ş";
|
---|
1702 | var scedil = "ş";
|
---|
1703 | var Scirc = "Ŝ";
|
---|
1704 | var scirc = "ŝ";
|
---|
1705 | var scnap = "⪺";
|
---|
1706 | var scnE = "⪶";
|
---|
1707 | var scnsim = "⋩";
|
---|
1708 | var scpolint = "⨓";
|
---|
1709 | var scsim = "≿";
|
---|
1710 | var Scy = "С";
|
---|
1711 | var scy = "с";
|
---|
1712 | var sdotb = "⊡";
|
---|
1713 | var sdot = "⋅";
|
---|
1714 | var sdote = "⩦";
|
---|
1715 | var searhk = "⤥";
|
---|
1716 | var searr = "↘";
|
---|
1717 | var seArr = "⇘";
|
---|
1718 | var searrow = "↘";
|
---|
1719 | var sect = "§";
|
---|
1720 | var semi = ";";
|
---|
1721 | var seswar = "⤩";
|
---|
1722 | var setminus = "∖";
|
---|
1723 | var setmn = "∖";
|
---|
1724 | var sext = "✶";
|
---|
1725 | var Sfr = "𝔖";
|
---|
1726 | var sfr = "𝔰";
|
---|
1727 | var sfrown = "⌢";
|
---|
1728 | var sharp = "♯";
|
---|
1729 | var SHCHcy = "Щ";
|
---|
1730 | var shchcy = "щ";
|
---|
1731 | var SHcy = "Ш";
|
---|
1732 | var shcy = "ш";
|
---|
1733 | var ShortDownArrow = "↓";
|
---|
1734 | var ShortLeftArrow = "←";
|
---|
1735 | var shortmid = "∣";
|
---|
1736 | var shortparallel = "∥";
|
---|
1737 | var ShortRightArrow = "→";
|
---|
1738 | var ShortUpArrow = "↑";
|
---|
1739 | var shy = "";
|
---|
1740 | var Sigma = "Σ";
|
---|
1741 | var sigma = "σ";
|
---|
1742 | var sigmaf = "ς";
|
---|
1743 | var sigmav = "ς";
|
---|
1744 | var sim = "∼";
|
---|
1745 | var simdot = "⩪";
|
---|
1746 | var sime = "≃";
|
---|
1747 | var simeq = "≃";
|
---|
1748 | var simg = "⪞";
|
---|
1749 | var simgE = "⪠";
|
---|
1750 | var siml = "⪝";
|
---|
1751 | var simlE = "⪟";
|
---|
1752 | var simne = "≆";
|
---|
1753 | var simplus = "⨤";
|
---|
1754 | var simrarr = "⥲";
|
---|
1755 | var slarr = "←";
|
---|
1756 | var SmallCircle = "∘";
|
---|
1757 | var smallsetminus = "∖";
|
---|
1758 | var smashp = "⨳";
|
---|
1759 | var smeparsl = "⧤";
|
---|
1760 | var smid = "∣";
|
---|
1761 | var smile = "⌣";
|
---|
1762 | var smt = "⪪";
|
---|
1763 | var smte = "⪬";
|
---|
1764 | var smtes = "⪬︀";
|
---|
1765 | var SOFTcy = "Ь";
|
---|
1766 | var softcy = "ь";
|
---|
1767 | var solbar = "⌿";
|
---|
1768 | var solb = "⧄";
|
---|
1769 | var sol = "/";
|
---|
1770 | var Sopf = "𝕊";
|
---|
1771 | var sopf = "𝕤";
|
---|
1772 | var spades = "♠";
|
---|
1773 | var spadesuit = "♠";
|
---|
1774 | var spar = "∥";
|
---|
1775 | var sqcap = "⊓";
|
---|
1776 | var sqcaps = "⊓︀";
|
---|
1777 | var sqcup = "⊔";
|
---|
1778 | var sqcups = "⊔︀";
|
---|
1779 | var Sqrt = "√";
|
---|
1780 | var sqsub = "⊏";
|
---|
1781 | var sqsube = "⊑";
|
---|
1782 | var sqsubset = "⊏";
|
---|
1783 | var sqsubseteq = "⊑";
|
---|
1784 | var sqsup = "⊐";
|
---|
1785 | var sqsupe = "⊒";
|
---|
1786 | var sqsupset = "⊐";
|
---|
1787 | var sqsupseteq = "⊒";
|
---|
1788 | var square = "□";
|
---|
1789 | var Square = "□";
|
---|
1790 | var SquareIntersection = "⊓";
|
---|
1791 | var SquareSubset = "⊏";
|
---|
1792 | var SquareSubsetEqual = "⊑";
|
---|
1793 | var SquareSuperset = "⊐";
|
---|
1794 | var SquareSupersetEqual = "⊒";
|
---|
1795 | var SquareUnion = "⊔";
|
---|
1796 | var squarf = "▪";
|
---|
1797 | var squ = "□";
|
---|
1798 | var squf = "▪";
|
---|
1799 | var srarr = "→";
|
---|
1800 | var Sscr = "𝒮";
|
---|
1801 | var sscr = "𝓈";
|
---|
1802 | var ssetmn = "∖";
|
---|
1803 | var ssmile = "⌣";
|
---|
1804 | var sstarf = "⋆";
|
---|
1805 | var Star = "⋆";
|
---|
1806 | var star = "☆";
|
---|
1807 | var starf = "★";
|
---|
1808 | var straightepsilon = "ϵ";
|
---|
1809 | var straightphi = "ϕ";
|
---|
1810 | var strns = "¯";
|
---|
1811 | var sub = "⊂";
|
---|
1812 | var Sub = "⋐";
|
---|
1813 | var subdot = "⪽";
|
---|
1814 | var subE = "⫅";
|
---|
1815 | var sube = "⊆";
|
---|
1816 | var subedot = "⫃";
|
---|
1817 | var submult = "⫁";
|
---|
1818 | var subnE = "⫋";
|
---|
1819 | var subne = "⊊";
|
---|
1820 | var subplus = "⪿";
|
---|
1821 | var subrarr = "⥹";
|
---|
1822 | var subset = "⊂";
|
---|
1823 | var Subset = "⋐";
|
---|
1824 | var subseteq = "⊆";
|
---|
1825 | var subseteqq = "⫅";
|
---|
1826 | var SubsetEqual = "⊆";
|
---|
1827 | var subsetneq = "⊊";
|
---|
1828 | var subsetneqq = "⫋";
|
---|
1829 | var subsim = "⫇";
|
---|
1830 | var subsub = "⫕";
|
---|
1831 | var subsup = "⫓";
|
---|
1832 | var succapprox = "⪸";
|
---|
1833 | var succ = "≻";
|
---|
1834 | var succcurlyeq = "≽";
|
---|
1835 | var Succeeds = "≻";
|
---|
1836 | var SucceedsEqual = "⪰";
|
---|
1837 | var SucceedsSlantEqual = "≽";
|
---|
1838 | var SucceedsTilde = "≿";
|
---|
1839 | var succeq = "⪰";
|
---|
1840 | var succnapprox = "⪺";
|
---|
1841 | var succneqq = "⪶";
|
---|
1842 | var succnsim = "⋩";
|
---|
1843 | var succsim = "≿";
|
---|
1844 | var SuchThat = "∋";
|
---|
1845 | var sum = "∑";
|
---|
1846 | var Sum = "∑";
|
---|
1847 | var sung = "♪";
|
---|
1848 | var sup1 = "¹";
|
---|
1849 | var sup2 = "²";
|
---|
1850 | var sup3 = "³";
|
---|
1851 | var sup = "⊃";
|
---|
1852 | var Sup = "⋑";
|
---|
1853 | var supdot = "⪾";
|
---|
1854 | var supdsub = "⫘";
|
---|
1855 | var supE = "⫆";
|
---|
1856 | var supe = "⊇";
|
---|
1857 | var supedot = "⫄";
|
---|
1858 | var Superset = "⊃";
|
---|
1859 | var SupersetEqual = "⊇";
|
---|
1860 | var suphsol = "⟉";
|
---|
1861 | var suphsub = "⫗";
|
---|
1862 | var suplarr = "⥻";
|
---|
1863 | var supmult = "⫂";
|
---|
1864 | var supnE = "⫌";
|
---|
1865 | var supne = "⊋";
|
---|
1866 | var supplus = "⫀";
|
---|
1867 | var supset = "⊃";
|
---|
1868 | var Supset = "⋑";
|
---|
1869 | var supseteq = "⊇";
|
---|
1870 | var supseteqq = "⫆";
|
---|
1871 | var supsetneq = "⊋";
|
---|
1872 | var supsetneqq = "⫌";
|
---|
1873 | var supsim = "⫈";
|
---|
1874 | var supsub = "⫔";
|
---|
1875 | var supsup = "⫖";
|
---|
1876 | var swarhk = "⤦";
|
---|
1877 | var swarr = "↙";
|
---|
1878 | var swArr = "⇙";
|
---|
1879 | var swarrow = "↙";
|
---|
1880 | var swnwar = "⤪";
|
---|
1881 | var szlig = "ß";
|
---|
1882 | var Tab = "\t";
|
---|
1883 | var target = "⌖";
|
---|
1884 | var Tau = "Τ";
|
---|
1885 | var tau = "τ";
|
---|
1886 | var tbrk = "⎴";
|
---|
1887 | var Tcaron = "Ť";
|
---|
1888 | var tcaron = "ť";
|
---|
1889 | var Tcedil = "Ţ";
|
---|
1890 | var tcedil = "ţ";
|
---|
1891 | var Tcy = "Т";
|
---|
1892 | var tcy = "т";
|
---|
1893 | var tdot = "⃛";
|
---|
1894 | var telrec = "⌕";
|
---|
1895 | var Tfr = "𝔗";
|
---|
1896 | var tfr = "𝔱";
|
---|
1897 | var there4 = "∴";
|
---|
1898 | var therefore = "∴";
|
---|
1899 | var Therefore = "∴";
|
---|
1900 | var Theta = "Θ";
|
---|
1901 | var theta = "θ";
|
---|
1902 | var thetasym = "ϑ";
|
---|
1903 | var thetav = "ϑ";
|
---|
1904 | var thickapprox = "≈";
|
---|
1905 | var thicksim = "∼";
|
---|
1906 | var ThickSpace = " ";
|
---|
1907 | var ThinSpace = " ";
|
---|
1908 | var thinsp = " ";
|
---|
1909 | var thkap = "≈";
|
---|
1910 | var thksim = "∼";
|
---|
1911 | var THORN = "Þ";
|
---|
1912 | var thorn = "þ";
|
---|
1913 | var tilde = "˜";
|
---|
1914 | var Tilde = "∼";
|
---|
1915 | var TildeEqual = "≃";
|
---|
1916 | var TildeFullEqual = "≅";
|
---|
1917 | var TildeTilde = "≈";
|
---|
1918 | var timesbar = "⨱";
|
---|
1919 | var timesb = "⊠";
|
---|
1920 | var times = "×";
|
---|
1921 | var timesd = "⨰";
|
---|
1922 | var tint = "∭";
|
---|
1923 | var toea = "⤨";
|
---|
1924 | var topbot = "⌶";
|
---|
1925 | var topcir = "⫱";
|
---|
1926 | var top = "⊤";
|
---|
1927 | var Topf = "𝕋";
|
---|
1928 | var topf = "𝕥";
|
---|
1929 | var topfork = "⫚";
|
---|
1930 | var tosa = "⤩";
|
---|
1931 | var tprime = "‴";
|
---|
1932 | var trade = "™";
|
---|
1933 | var TRADE = "™";
|
---|
1934 | var triangle = "▵";
|
---|
1935 | var triangledown = "▿";
|
---|
1936 | var triangleleft = "◃";
|
---|
1937 | var trianglelefteq = "⊴";
|
---|
1938 | var triangleq = "≜";
|
---|
1939 | var triangleright = "▹";
|
---|
1940 | var trianglerighteq = "⊵";
|
---|
1941 | var tridot = "◬";
|
---|
1942 | var trie = "≜";
|
---|
1943 | var triminus = "⨺";
|
---|
1944 | var TripleDot = "⃛";
|
---|
1945 | var triplus = "⨹";
|
---|
1946 | var trisb = "⧍";
|
---|
1947 | var tritime = "⨻";
|
---|
1948 | var trpezium = "⏢";
|
---|
1949 | var Tscr = "𝒯";
|
---|
1950 | var tscr = "𝓉";
|
---|
1951 | var TScy = "Ц";
|
---|
1952 | var tscy = "ц";
|
---|
1953 | var TSHcy = "Ћ";
|
---|
1954 | var tshcy = "ћ";
|
---|
1955 | var Tstrok = "Ŧ";
|
---|
1956 | var tstrok = "ŧ";
|
---|
1957 | var twixt = "≬";
|
---|
1958 | var twoheadleftarrow = "↞";
|
---|
1959 | var twoheadrightarrow = "↠";
|
---|
1960 | var Uacute = "Ú";
|
---|
1961 | var uacute = "ú";
|
---|
1962 | var uarr = "↑";
|
---|
1963 | var Uarr = "↟";
|
---|
1964 | var uArr = "⇑";
|
---|
1965 | var Uarrocir = "⥉";
|
---|
1966 | var Ubrcy = "Ў";
|
---|
1967 | var ubrcy = "ў";
|
---|
1968 | var Ubreve = "Ŭ";
|
---|
1969 | var ubreve = "ŭ";
|
---|
1970 | var Ucirc = "Û";
|
---|
1971 | var ucirc = "û";
|
---|
1972 | var Ucy = "У";
|
---|
1973 | var ucy = "у";
|
---|
1974 | var udarr = "⇅";
|
---|
1975 | var Udblac = "Ű";
|
---|
1976 | var udblac = "ű";
|
---|
1977 | var udhar = "⥮";
|
---|
1978 | var ufisht = "⥾";
|
---|
1979 | var Ufr = "𝔘";
|
---|
1980 | var ufr = "𝔲";
|
---|
1981 | var Ugrave = "Ù";
|
---|
1982 | var ugrave = "ù";
|
---|
1983 | var uHar = "⥣";
|
---|
1984 | var uharl = "↿";
|
---|
1985 | var uharr = "↾";
|
---|
1986 | var uhblk = "▀";
|
---|
1987 | var ulcorn = "⌜";
|
---|
1988 | var ulcorner = "⌜";
|
---|
1989 | var ulcrop = "⌏";
|
---|
1990 | var ultri = "◸";
|
---|
1991 | var Umacr = "Ū";
|
---|
1992 | var umacr = "ū";
|
---|
1993 | var uml = "¨";
|
---|
1994 | var UnderBar = "_";
|
---|
1995 | var UnderBrace = "⏟";
|
---|
1996 | var UnderBracket = "⎵";
|
---|
1997 | var UnderParenthesis = "⏝";
|
---|
1998 | var Union = "⋃";
|
---|
1999 | var UnionPlus = "⊎";
|
---|
2000 | var Uogon = "Ų";
|
---|
2001 | var uogon = "ų";
|
---|
2002 | var Uopf = "𝕌";
|
---|
2003 | var uopf = "𝕦";
|
---|
2004 | var UpArrowBar = "⤒";
|
---|
2005 | var uparrow = "↑";
|
---|
2006 | var UpArrow = "↑";
|
---|
2007 | var Uparrow = "⇑";
|
---|
2008 | var UpArrowDownArrow = "⇅";
|
---|
2009 | var updownarrow = "↕";
|
---|
2010 | var UpDownArrow = "↕";
|
---|
2011 | var Updownarrow = "⇕";
|
---|
2012 | var UpEquilibrium = "⥮";
|
---|
2013 | var upharpoonleft = "↿";
|
---|
2014 | var upharpoonright = "↾";
|
---|
2015 | var uplus = "⊎";
|
---|
2016 | var UpperLeftArrow = "↖";
|
---|
2017 | var UpperRightArrow = "↗";
|
---|
2018 | var upsi = "υ";
|
---|
2019 | var Upsi = "ϒ";
|
---|
2020 | var upsih = "ϒ";
|
---|
2021 | var Upsilon = "Υ";
|
---|
2022 | var upsilon = "υ";
|
---|
2023 | var UpTeeArrow = "↥";
|
---|
2024 | var UpTee = "⊥";
|
---|
2025 | var upuparrows = "⇈";
|
---|
2026 | var urcorn = "⌝";
|
---|
2027 | var urcorner = "⌝";
|
---|
2028 | var urcrop = "⌎";
|
---|
2029 | var Uring = "Ů";
|
---|
2030 | var uring = "ů";
|
---|
2031 | var urtri = "◹";
|
---|
2032 | var Uscr = "𝒰";
|
---|
2033 | var uscr = "𝓊";
|
---|
2034 | var utdot = "⋰";
|
---|
2035 | var Utilde = "Ũ";
|
---|
2036 | var utilde = "ũ";
|
---|
2037 | var utri = "▵";
|
---|
2038 | var utrif = "▴";
|
---|
2039 | var uuarr = "⇈";
|
---|
2040 | var Uuml = "Ü";
|
---|
2041 | var uuml = "ü";
|
---|
2042 | var uwangle = "⦧";
|
---|
2043 | var vangrt = "⦜";
|
---|
2044 | var varepsilon = "ϵ";
|
---|
2045 | var varkappa = "ϰ";
|
---|
2046 | var varnothing = "∅";
|
---|
2047 | var varphi = "ϕ";
|
---|
2048 | var varpi = "ϖ";
|
---|
2049 | var varpropto = "∝";
|
---|
2050 | var varr = "↕";
|
---|
2051 | var vArr = "⇕";
|
---|
2052 | var varrho = "ϱ";
|
---|
2053 | var varsigma = "ς";
|
---|
2054 | var varsubsetneq = "⊊︀";
|
---|
2055 | var varsubsetneqq = "⫋︀";
|
---|
2056 | var varsupsetneq = "⊋︀";
|
---|
2057 | var varsupsetneqq = "⫌︀";
|
---|
2058 | var vartheta = "ϑ";
|
---|
2059 | var vartriangleleft = "⊲";
|
---|
2060 | var vartriangleright = "⊳";
|
---|
2061 | var vBar = "⫨";
|
---|
2062 | var Vbar = "⫫";
|
---|
2063 | var vBarv = "⫩";
|
---|
2064 | var Vcy = "В";
|
---|
2065 | var vcy = "в";
|
---|
2066 | var vdash = "⊢";
|
---|
2067 | var vDash = "⊨";
|
---|
2068 | var Vdash = "⊩";
|
---|
2069 | var VDash = "⊫";
|
---|
2070 | var Vdashl = "⫦";
|
---|
2071 | var veebar = "⊻";
|
---|
2072 | var vee = "∨";
|
---|
2073 | var Vee = "⋁";
|
---|
2074 | var veeeq = "≚";
|
---|
2075 | var vellip = "⋮";
|
---|
2076 | var verbar = "|";
|
---|
2077 | var Verbar = "‖";
|
---|
2078 | var vert = "|";
|
---|
2079 | var Vert = "‖";
|
---|
2080 | var VerticalBar = "∣";
|
---|
2081 | var VerticalLine = "|";
|
---|
2082 | var VerticalSeparator = "❘";
|
---|
2083 | var VerticalTilde = "≀";
|
---|
2084 | var VeryThinSpace = " ";
|
---|
2085 | var Vfr = "𝔙";
|
---|
2086 | var vfr = "𝔳";
|
---|
2087 | var vltri = "⊲";
|
---|
2088 | var vnsub = "⊂⃒";
|
---|
2089 | var vnsup = "⊃⃒";
|
---|
2090 | var Vopf = "𝕍";
|
---|
2091 | var vopf = "𝕧";
|
---|
2092 | var vprop = "∝";
|
---|
2093 | var vrtri = "⊳";
|
---|
2094 | var Vscr = "𝒱";
|
---|
2095 | var vscr = "𝓋";
|
---|
2096 | var vsubnE = "⫋︀";
|
---|
2097 | var vsubne = "⊊︀";
|
---|
2098 | var vsupnE = "⫌︀";
|
---|
2099 | var vsupne = "⊋︀";
|
---|
2100 | var Vvdash = "⊪";
|
---|
2101 | var vzigzag = "⦚";
|
---|
2102 | var Wcirc = "Ŵ";
|
---|
2103 | var wcirc = "ŵ";
|
---|
2104 | var wedbar = "⩟";
|
---|
2105 | var wedge = "∧";
|
---|
2106 | var Wedge = "⋀";
|
---|
2107 | var wedgeq = "≙";
|
---|
2108 | var weierp = "℘";
|
---|
2109 | var Wfr = "𝔚";
|
---|
2110 | var wfr = "𝔴";
|
---|
2111 | var Wopf = "𝕎";
|
---|
2112 | var wopf = "𝕨";
|
---|
2113 | var wp = "℘";
|
---|
2114 | var wr = "≀";
|
---|
2115 | var wreath = "≀";
|
---|
2116 | var Wscr = "𝒲";
|
---|
2117 | var wscr = "𝓌";
|
---|
2118 | var xcap = "⋂";
|
---|
2119 | var xcirc = "◯";
|
---|
2120 | var xcup = "⋃";
|
---|
2121 | var xdtri = "▽";
|
---|
2122 | var Xfr = "𝔛";
|
---|
2123 | var xfr = "𝔵";
|
---|
2124 | var xharr = "⟷";
|
---|
2125 | var xhArr = "⟺";
|
---|
2126 | var Xi = "Ξ";
|
---|
2127 | var xi = "ξ";
|
---|
2128 | var xlarr = "⟵";
|
---|
2129 | var xlArr = "⟸";
|
---|
2130 | var xmap = "⟼";
|
---|
2131 | var xnis = "⋻";
|
---|
2132 | var xodot = "⨀";
|
---|
2133 | var Xopf = "𝕏";
|
---|
2134 | var xopf = "𝕩";
|
---|
2135 | var xoplus = "⨁";
|
---|
2136 | var xotime = "⨂";
|
---|
2137 | var xrarr = "⟶";
|
---|
2138 | var xrArr = "⟹";
|
---|
2139 | var Xscr = "𝒳";
|
---|
2140 | var xscr = "𝓍";
|
---|
2141 | var xsqcup = "⨆";
|
---|
2142 | var xuplus = "⨄";
|
---|
2143 | var xutri = "△";
|
---|
2144 | var xvee = "⋁";
|
---|
2145 | var xwedge = "⋀";
|
---|
2146 | var Yacute = "Ý";
|
---|
2147 | var yacute = "ý";
|
---|
2148 | var YAcy = "Я";
|
---|
2149 | var yacy = "я";
|
---|
2150 | var Ycirc = "Ŷ";
|
---|
2151 | var ycirc = "ŷ";
|
---|
2152 | var Ycy = "Ы";
|
---|
2153 | var ycy = "ы";
|
---|
2154 | var yen = "¥";
|
---|
2155 | var Yfr = "𝔜";
|
---|
2156 | var yfr = "𝔶";
|
---|
2157 | var YIcy = "Ї";
|
---|
2158 | var yicy = "ї";
|
---|
2159 | var Yopf = "𝕐";
|
---|
2160 | var yopf = "𝕪";
|
---|
2161 | var Yscr = "𝒴";
|
---|
2162 | var yscr = "𝓎";
|
---|
2163 | var YUcy = "Ю";
|
---|
2164 | var yucy = "ю";
|
---|
2165 | var yuml = "ÿ";
|
---|
2166 | var Yuml = "Ÿ";
|
---|
2167 | var Zacute = "Ź";
|
---|
2168 | var zacute = "ź";
|
---|
2169 | var Zcaron = "Ž";
|
---|
2170 | var zcaron = "ž";
|
---|
2171 | var Zcy = "З";
|
---|
2172 | var zcy = "з";
|
---|
2173 | var Zdot = "Ż";
|
---|
2174 | var zdot = "ż";
|
---|
2175 | var zeetrf = "ℨ";
|
---|
2176 | var ZeroWidthSpace = "";
|
---|
2177 | var Zeta = "Ζ";
|
---|
2178 | var zeta = "ζ";
|
---|
2179 | var zfr = "𝔷";
|
---|
2180 | var Zfr = "ℨ";
|
---|
2181 | var ZHcy = "Ж";
|
---|
2182 | var zhcy = "ж";
|
---|
2183 | var zigrarr = "⇝";
|
---|
2184 | var zopf = "𝕫";
|
---|
2185 | var Zopf = "ℤ";
|
---|
2186 | var Zscr = "𝒵";
|
---|
2187 | var zscr = "𝓏";
|
---|
2188 | var zwj = "";
|
---|
2189 | var zwnj = "";
|
---|
2190 | var entities = {
|
---|
2191 | Aacute: Aacute,
|
---|
2192 | aacute: aacute,
|
---|
2193 | Abreve: Abreve,
|
---|
2194 | abreve: abreve,
|
---|
2195 | ac: ac,
|
---|
2196 | acd: acd,
|
---|
2197 | acE: acE,
|
---|
2198 | Acirc: Acirc,
|
---|
2199 | acirc: acirc,
|
---|
2200 | acute: acute,
|
---|
2201 | Acy: Acy,
|
---|
2202 | acy: acy,
|
---|
2203 | AElig: AElig,
|
---|
2204 | aelig: aelig,
|
---|
2205 | af: af,
|
---|
2206 | Afr: Afr,
|
---|
2207 | afr: afr,
|
---|
2208 | Agrave: Agrave,
|
---|
2209 | agrave: agrave,
|
---|
2210 | alefsym: alefsym,
|
---|
2211 | aleph: aleph,
|
---|
2212 | Alpha: Alpha,
|
---|
2213 | alpha: alpha,
|
---|
2214 | Amacr: Amacr,
|
---|
2215 | amacr: amacr,
|
---|
2216 | amalg: amalg,
|
---|
2217 | amp: amp,
|
---|
2218 | AMP: AMP,
|
---|
2219 | andand: andand,
|
---|
2220 | And: And,
|
---|
2221 | and: and,
|
---|
2222 | andd: andd,
|
---|
2223 | andslope: andslope,
|
---|
2224 | andv: andv,
|
---|
2225 | ang: ang,
|
---|
2226 | ange: ange,
|
---|
2227 | angle: angle,
|
---|
2228 | angmsdaa: angmsdaa,
|
---|
2229 | angmsdab: angmsdab,
|
---|
2230 | angmsdac: angmsdac,
|
---|
2231 | angmsdad: angmsdad,
|
---|
2232 | angmsdae: angmsdae,
|
---|
2233 | angmsdaf: angmsdaf,
|
---|
2234 | angmsdag: angmsdag,
|
---|
2235 | angmsdah: angmsdah,
|
---|
2236 | angmsd: angmsd,
|
---|
2237 | angrt: angrt,
|
---|
2238 | angrtvb: angrtvb,
|
---|
2239 | angrtvbd: angrtvbd,
|
---|
2240 | angsph: angsph,
|
---|
2241 | angst: angst,
|
---|
2242 | angzarr: angzarr,
|
---|
2243 | Aogon: Aogon,
|
---|
2244 | aogon: aogon,
|
---|
2245 | Aopf: Aopf,
|
---|
2246 | aopf: aopf,
|
---|
2247 | apacir: apacir,
|
---|
2248 | ap: ap,
|
---|
2249 | apE: apE,
|
---|
2250 | ape: ape,
|
---|
2251 | apid: apid,
|
---|
2252 | apos: apos,
|
---|
2253 | ApplyFunction: ApplyFunction,
|
---|
2254 | approx: approx,
|
---|
2255 | approxeq: approxeq,
|
---|
2256 | Aring: Aring,
|
---|
2257 | aring: aring,
|
---|
2258 | Ascr: Ascr,
|
---|
2259 | ascr: ascr,
|
---|
2260 | Assign: Assign,
|
---|
2261 | ast: ast,
|
---|
2262 | asymp: asymp,
|
---|
2263 | asympeq: asympeq,
|
---|
2264 | Atilde: Atilde,
|
---|
2265 | atilde: atilde,
|
---|
2266 | Auml: Auml,
|
---|
2267 | auml: auml,
|
---|
2268 | awconint: awconint,
|
---|
2269 | awint: awint,
|
---|
2270 | backcong: backcong,
|
---|
2271 | backepsilon: backepsilon,
|
---|
2272 | backprime: backprime,
|
---|
2273 | backsim: backsim,
|
---|
2274 | backsimeq: backsimeq,
|
---|
2275 | Backslash: Backslash,
|
---|
2276 | Barv: Barv,
|
---|
2277 | barvee: barvee,
|
---|
2278 | barwed: barwed,
|
---|
2279 | Barwed: Barwed,
|
---|
2280 | barwedge: barwedge,
|
---|
2281 | bbrk: bbrk,
|
---|
2282 | bbrktbrk: bbrktbrk,
|
---|
2283 | bcong: bcong,
|
---|
2284 | Bcy: Bcy,
|
---|
2285 | bcy: bcy,
|
---|
2286 | bdquo: bdquo,
|
---|
2287 | becaus: becaus,
|
---|
2288 | because: because,
|
---|
2289 | Because: Because,
|
---|
2290 | bemptyv: bemptyv,
|
---|
2291 | bepsi: bepsi,
|
---|
2292 | bernou: bernou,
|
---|
2293 | Bernoullis: Bernoullis,
|
---|
2294 | Beta: Beta,
|
---|
2295 | beta: beta,
|
---|
2296 | beth: beth,
|
---|
2297 | between: between,
|
---|
2298 | Bfr: Bfr,
|
---|
2299 | bfr: bfr,
|
---|
2300 | bigcap: bigcap,
|
---|
2301 | bigcirc: bigcirc,
|
---|
2302 | bigcup: bigcup,
|
---|
2303 | bigodot: bigodot,
|
---|
2304 | bigoplus: bigoplus,
|
---|
2305 | bigotimes: bigotimes,
|
---|
2306 | bigsqcup: bigsqcup,
|
---|
2307 | bigstar: bigstar,
|
---|
2308 | bigtriangledown: bigtriangledown,
|
---|
2309 | bigtriangleup: bigtriangleup,
|
---|
2310 | biguplus: biguplus,
|
---|
2311 | bigvee: bigvee,
|
---|
2312 | bigwedge: bigwedge,
|
---|
2313 | bkarow: bkarow,
|
---|
2314 | blacklozenge: blacklozenge,
|
---|
2315 | blacksquare: blacksquare,
|
---|
2316 | blacktriangle: blacktriangle,
|
---|
2317 | blacktriangledown: blacktriangledown,
|
---|
2318 | blacktriangleleft: blacktriangleleft,
|
---|
2319 | blacktriangleright: blacktriangleright,
|
---|
2320 | blank: blank,
|
---|
2321 | blk12: blk12,
|
---|
2322 | blk14: blk14,
|
---|
2323 | blk34: blk34,
|
---|
2324 | block: block,
|
---|
2325 | bne: bne,
|
---|
2326 | bnequiv: bnequiv,
|
---|
2327 | bNot: bNot,
|
---|
2328 | bnot: bnot,
|
---|
2329 | Bopf: Bopf,
|
---|
2330 | bopf: bopf,
|
---|
2331 | bot: bot,
|
---|
2332 | bottom: bottom,
|
---|
2333 | bowtie: bowtie,
|
---|
2334 | boxbox: boxbox,
|
---|
2335 | boxdl: boxdl,
|
---|
2336 | boxdL: boxdL,
|
---|
2337 | boxDl: boxDl,
|
---|
2338 | boxDL: boxDL,
|
---|
2339 | boxdr: boxdr,
|
---|
2340 | boxdR: boxdR,
|
---|
2341 | boxDr: boxDr,
|
---|
2342 | boxDR: boxDR,
|
---|
2343 | boxh: boxh,
|
---|
2344 | boxH: boxH,
|
---|
2345 | boxhd: boxhd,
|
---|
2346 | boxHd: boxHd,
|
---|
2347 | boxhD: boxhD,
|
---|
2348 | boxHD: boxHD,
|
---|
2349 | boxhu: boxhu,
|
---|
2350 | boxHu: boxHu,
|
---|
2351 | boxhU: boxhU,
|
---|
2352 | boxHU: boxHU,
|
---|
2353 | boxminus: boxminus,
|
---|
2354 | boxplus: boxplus,
|
---|
2355 | boxtimes: boxtimes,
|
---|
2356 | boxul: boxul,
|
---|
2357 | boxuL: boxuL,
|
---|
2358 | boxUl: boxUl,
|
---|
2359 | boxUL: boxUL,
|
---|
2360 | boxur: boxur,
|
---|
2361 | boxuR: boxuR,
|
---|
2362 | boxUr: boxUr,
|
---|
2363 | boxUR: boxUR,
|
---|
2364 | boxv: boxv,
|
---|
2365 | boxV: boxV,
|
---|
2366 | boxvh: boxvh,
|
---|
2367 | boxvH: boxvH,
|
---|
2368 | boxVh: boxVh,
|
---|
2369 | boxVH: boxVH,
|
---|
2370 | boxvl: boxvl,
|
---|
2371 | boxvL: boxvL,
|
---|
2372 | boxVl: boxVl,
|
---|
2373 | boxVL: boxVL,
|
---|
2374 | boxvr: boxvr,
|
---|
2375 | boxvR: boxvR,
|
---|
2376 | boxVr: boxVr,
|
---|
2377 | boxVR: boxVR,
|
---|
2378 | bprime: bprime,
|
---|
2379 | breve: breve,
|
---|
2380 | Breve: Breve,
|
---|
2381 | brvbar: brvbar,
|
---|
2382 | bscr: bscr,
|
---|
2383 | Bscr: Bscr,
|
---|
2384 | bsemi: bsemi,
|
---|
2385 | bsim: bsim,
|
---|
2386 | bsime: bsime,
|
---|
2387 | bsolb: bsolb,
|
---|
2388 | bsol: bsol,
|
---|
2389 | bsolhsub: bsolhsub,
|
---|
2390 | bull: bull,
|
---|
2391 | bullet: bullet,
|
---|
2392 | bump: bump,
|
---|
2393 | bumpE: bumpE,
|
---|
2394 | bumpe: bumpe,
|
---|
2395 | Bumpeq: Bumpeq,
|
---|
2396 | bumpeq: bumpeq,
|
---|
2397 | Cacute: Cacute,
|
---|
2398 | cacute: cacute,
|
---|
2399 | capand: capand,
|
---|
2400 | capbrcup: capbrcup,
|
---|
2401 | capcap: capcap,
|
---|
2402 | cap: cap,
|
---|
2403 | Cap: Cap,
|
---|
2404 | capcup: capcup,
|
---|
2405 | capdot: capdot,
|
---|
2406 | CapitalDifferentialD: CapitalDifferentialD,
|
---|
2407 | caps: caps,
|
---|
2408 | caret: caret,
|
---|
2409 | caron: caron,
|
---|
2410 | Cayleys: Cayleys,
|
---|
2411 | ccaps: ccaps,
|
---|
2412 | Ccaron: Ccaron,
|
---|
2413 | ccaron: ccaron,
|
---|
2414 | Ccedil: Ccedil,
|
---|
2415 | ccedil: ccedil,
|
---|
2416 | Ccirc: Ccirc,
|
---|
2417 | ccirc: ccirc,
|
---|
2418 | Cconint: Cconint,
|
---|
2419 | ccups: ccups,
|
---|
2420 | ccupssm: ccupssm,
|
---|
2421 | Cdot: Cdot,
|
---|
2422 | cdot: cdot,
|
---|
2423 | cedil: cedil,
|
---|
2424 | Cedilla: Cedilla,
|
---|
2425 | cemptyv: cemptyv,
|
---|
2426 | cent: cent,
|
---|
2427 | centerdot: centerdot,
|
---|
2428 | CenterDot: CenterDot,
|
---|
2429 | cfr: cfr,
|
---|
2430 | Cfr: Cfr,
|
---|
2431 | CHcy: CHcy,
|
---|
2432 | chcy: chcy,
|
---|
2433 | check: check,
|
---|
2434 | checkmark: checkmark,
|
---|
2435 | Chi: Chi,
|
---|
2436 | chi: chi,
|
---|
2437 | circ: circ,
|
---|
2438 | circeq: circeq,
|
---|
2439 | circlearrowleft: circlearrowleft,
|
---|
2440 | circlearrowright: circlearrowright,
|
---|
2441 | circledast: circledast,
|
---|
2442 | circledcirc: circledcirc,
|
---|
2443 | circleddash: circleddash,
|
---|
2444 | CircleDot: CircleDot,
|
---|
2445 | circledR: circledR,
|
---|
2446 | circledS: circledS,
|
---|
2447 | CircleMinus: CircleMinus,
|
---|
2448 | CirclePlus: CirclePlus,
|
---|
2449 | CircleTimes: CircleTimes,
|
---|
2450 | cir: cir,
|
---|
2451 | cirE: cirE,
|
---|
2452 | cire: cire,
|
---|
2453 | cirfnint: cirfnint,
|
---|
2454 | cirmid: cirmid,
|
---|
2455 | cirscir: cirscir,
|
---|
2456 | ClockwiseContourIntegral: ClockwiseContourIntegral,
|
---|
2457 | CloseCurlyDoubleQuote: CloseCurlyDoubleQuote,
|
---|
2458 | CloseCurlyQuote: CloseCurlyQuote,
|
---|
2459 | clubs: clubs,
|
---|
2460 | clubsuit: clubsuit,
|
---|
2461 | colon: colon,
|
---|
2462 | Colon: Colon,
|
---|
2463 | Colone: Colone,
|
---|
2464 | colone: colone,
|
---|
2465 | coloneq: coloneq,
|
---|
2466 | comma: comma,
|
---|
2467 | commat: commat,
|
---|
2468 | comp: comp,
|
---|
2469 | compfn: compfn,
|
---|
2470 | complement: complement,
|
---|
2471 | complexes: complexes,
|
---|
2472 | cong: cong,
|
---|
2473 | congdot: congdot,
|
---|
2474 | Congruent: Congruent,
|
---|
2475 | conint: conint,
|
---|
2476 | Conint: Conint,
|
---|
2477 | ContourIntegral: ContourIntegral,
|
---|
2478 | copf: copf,
|
---|
2479 | Copf: Copf,
|
---|
2480 | coprod: coprod,
|
---|
2481 | Coproduct: Coproduct,
|
---|
2482 | copy: copy,
|
---|
2483 | COPY: COPY,
|
---|
2484 | copysr: copysr,
|
---|
2485 | CounterClockwiseContourIntegral: CounterClockwiseContourIntegral,
|
---|
2486 | crarr: crarr,
|
---|
2487 | cross: cross,
|
---|
2488 | Cross: Cross,
|
---|
2489 | Cscr: Cscr,
|
---|
2490 | cscr: cscr,
|
---|
2491 | csub: csub,
|
---|
2492 | csube: csube,
|
---|
2493 | csup: csup,
|
---|
2494 | csupe: csupe,
|
---|
2495 | ctdot: ctdot,
|
---|
2496 | cudarrl: cudarrl,
|
---|
2497 | cudarrr: cudarrr,
|
---|
2498 | cuepr: cuepr,
|
---|
2499 | cuesc: cuesc,
|
---|
2500 | cularr: cularr,
|
---|
2501 | cularrp: cularrp,
|
---|
2502 | cupbrcap: cupbrcap,
|
---|
2503 | cupcap: cupcap,
|
---|
2504 | CupCap: CupCap,
|
---|
2505 | cup: cup,
|
---|
2506 | Cup: Cup,
|
---|
2507 | cupcup: cupcup,
|
---|
2508 | cupdot: cupdot,
|
---|
2509 | cupor: cupor,
|
---|
2510 | cups: cups,
|
---|
2511 | curarr: curarr,
|
---|
2512 | curarrm: curarrm,
|
---|
2513 | curlyeqprec: curlyeqprec,
|
---|
2514 | curlyeqsucc: curlyeqsucc,
|
---|
2515 | curlyvee: curlyvee,
|
---|
2516 | curlywedge: curlywedge,
|
---|
2517 | curren: curren,
|
---|
2518 | curvearrowleft: curvearrowleft,
|
---|
2519 | curvearrowright: curvearrowright,
|
---|
2520 | cuvee: cuvee,
|
---|
2521 | cuwed: cuwed,
|
---|
2522 | cwconint: cwconint,
|
---|
2523 | cwint: cwint,
|
---|
2524 | cylcty: cylcty,
|
---|
2525 | dagger: dagger,
|
---|
2526 | Dagger: Dagger,
|
---|
2527 | daleth: daleth,
|
---|
2528 | darr: darr,
|
---|
2529 | Darr: Darr,
|
---|
2530 | dArr: dArr,
|
---|
2531 | dash: dash,
|
---|
2532 | Dashv: Dashv,
|
---|
2533 | dashv: dashv,
|
---|
2534 | dbkarow: dbkarow,
|
---|
2535 | dblac: dblac,
|
---|
2536 | Dcaron: Dcaron,
|
---|
2537 | dcaron: dcaron,
|
---|
2538 | Dcy: Dcy,
|
---|
2539 | dcy: dcy,
|
---|
2540 | ddagger: ddagger,
|
---|
2541 | ddarr: ddarr,
|
---|
2542 | DD: DD,
|
---|
2543 | dd: dd,
|
---|
2544 | DDotrahd: DDotrahd,
|
---|
2545 | ddotseq: ddotseq,
|
---|
2546 | deg: deg,
|
---|
2547 | Del: Del,
|
---|
2548 | Delta: Delta,
|
---|
2549 | delta: delta,
|
---|
2550 | demptyv: demptyv,
|
---|
2551 | dfisht: dfisht,
|
---|
2552 | Dfr: Dfr,
|
---|
2553 | dfr: dfr,
|
---|
2554 | dHar: dHar,
|
---|
2555 | dharl: dharl,
|
---|
2556 | dharr: dharr,
|
---|
2557 | DiacriticalAcute: DiacriticalAcute,
|
---|
2558 | DiacriticalDot: DiacriticalDot,
|
---|
2559 | DiacriticalDoubleAcute: DiacriticalDoubleAcute,
|
---|
2560 | DiacriticalGrave: DiacriticalGrave,
|
---|
2561 | DiacriticalTilde: DiacriticalTilde,
|
---|
2562 | diam: diam,
|
---|
2563 | diamond: diamond,
|
---|
2564 | Diamond: Diamond,
|
---|
2565 | diamondsuit: diamondsuit,
|
---|
2566 | diams: diams,
|
---|
2567 | die: die,
|
---|
2568 | DifferentialD: DifferentialD,
|
---|
2569 | digamma: digamma,
|
---|
2570 | disin: disin,
|
---|
2571 | div: div,
|
---|
2572 | divide: divide,
|
---|
2573 | divideontimes: divideontimes,
|
---|
2574 | divonx: divonx,
|
---|
2575 | DJcy: DJcy,
|
---|
2576 | djcy: djcy,
|
---|
2577 | dlcorn: dlcorn,
|
---|
2578 | dlcrop: dlcrop,
|
---|
2579 | dollar: dollar,
|
---|
2580 | Dopf: Dopf,
|
---|
2581 | dopf: dopf,
|
---|
2582 | Dot: Dot,
|
---|
2583 | dot: dot,
|
---|
2584 | DotDot: DotDot,
|
---|
2585 | doteq: doteq,
|
---|
2586 | doteqdot: doteqdot,
|
---|
2587 | DotEqual: DotEqual,
|
---|
2588 | dotminus: dotminus,
|
---|
2589 | dotplus: dotplus,
|
---|
2590 | dotsquare: dotsquare,
|
---|
2591 | doublebarwedge: doublebarwedge,
|
---|
2592 | DoubleContourIntegral: DoubleContourIntegral,
|
---|
2593 | DoubleDot: DoubleDot,
|
---|
2594 | DoubleDownArrow: DoubleDownArrow,
|
---|
2595 | DoubleLeftArrow: DoubleLeftArrow,
|
---|
2596 | DoubleLeftRightArrow: DoubleLeftRightArrow,
|
---|
2597 | DoubleLeftTee: DoubleLeftTee,
|
---|
2598 | DoubleLongLeftArrow: DoubleLongLeftArrow,
|
---|
2599 | DoubleLongLeftRightArrow: DoubleLongLeftRightArrow,
|
---|
2600 | DoubleLongRightArrow: DoubleLongRightArrow,
|
---|
2601 | DoubleRightArrow: DoubleRightArrow,
|
---|
2602 | DoubleRightTee: DoubleRightTee,
|
---|
2603 | DoubleUpArrow: DoubleUpArrow,
|
---|
2604 | DoubleUpDownArrow: DoubleUpDownArrow,
|
---|
2605 | DoubleVerticalBar: DoubleVerticalBar,
|
---|
2606 | DownArrowBar: DownArrowBar,
|
---|
2607 | downarrow: downarrow,
|
---|
2608 | DownArrow: DownArrow,
|
---|
2609 | Downarrow: Downarrow,
|
---|
2610 | DownArrowUpArrow: DownArrowUpArrow,
|
---|
2611 | DownBreve: DownBreve,
|
---|
2612 | downdownarrows: downdownarrows,
|
---|
2613 | downharpoonleft: downharpoonleft,
|
---|
2614 | downharpoonright: downharpoonright,
|
---|
2615 | DownLeftRightVector: DownLeftRightVector,
|
---|
2616 | DownLeftTeeVector: DownLeftTeeVector,
|
---|
2617 | DownLeftVectorBar: DownLeftVectorBar,
|
---|
2618 | DownLeftVector: DownLeftVector,
|
---|
2619 | DownRightTeeVector: DownRightTeeVector,
|
---|
2620 | DownRightVectorBar: DownRightVectorBar,
|
---|
2621 | DownRightVector: DownRightVector,
|
---|
2622 | DownTeeArrow: DownTeeArrow,
|
---|
2623 | DownTee: DownTee,
|
---|
2624 | drbkarow: drbkarow,
|
---|
2625 | drcorn: drcorn,
|
---|
2626 | drcrop: drcrop,
|
---|
2627 | Dscr: Dscr,
|
---|
2628 | dscr: dscr,
|
---|
2629 | DScy: DScy,
|
---|
2630 | dscy: dscy,
|
---|
2631 | dsol: dsol,
|
---|
2632 | Dstrok: Dstrok,
|
---|
2633 | dstrok: dstrok,
|
---|
2634 | dtdot: dtdot,
|
---|
2635 | dtri: dtri,
|
---|
2636 | dtrif: dtrif,
|
---|
2637 | duarr: duarr,
|
---|
2638 | duhar: duhar,
|
---|
2639 | dwangle: dwangle,
|
---|
2640 | DZcy: DZcy,
|
---|
2641 | dzcy: dzcy,
|
---|
2642 | dzigrarr: dzigrarr,
|
---|
2643 | Eacute: Eacute,
|
---|
2644 | eacute: eacute,
|
---|
2645 | easter: easter,
|
---|
2646 | Ecaron: Ecaron,
|
---|
2647 | ecaron: ecaron,
|
---|
2648 | Ecirc: Ecirc,
|
---|
2649 | ecirc: ecirc,
|
---|
2650 | ecir: ecir,
|
---|
2651 | ecolon: ecolon,
|
---|
2652 | Ecy: Ecy,
|
---|
2653 | ecy: ecy,
|
---|
2654 | eDDot: eDDot,
|
---|
2655 | Edot: Edot,
|
---|
2656 | edot: edot,
|
---|
2657 | eDot: eDot,
|
---|
2658 | ee: ee,
|
---|
2659 | efDot: efDot,
|
---|
2660 | Efr: Efr,
|
---|
2661 | efr: efr,
|
---|
2662 | eg: eg,
|
---|
2663 | Egrave: Egrave,
|
---|
2664 | egrave: egrave,
|
---|
2665 | egs: egs,
|
---|
2666 | egsdot: egsdot,
|
---|
2667 | el: el,
|
---|
2668 | Element: Element,
|
---|
2669 | elinters: elinters,
|
---|
2670 | ell: ell,
|
---|
2671 | els: els,
|
---|
2672 | elsdot: elsdot,
|
---|
2673 | Emacr: Emacr,
|
---|
2674 | emacr: emacr,
|
---|
2675 | empty: empty,
|
---|
2676 | emptyset: emptyset,
|
---|
2677 | EmptySmallSquare: EmptySmallSquare,
|
---|
2678 | emptyv: emptyv,
|
---|
2679 | EmptyVerySmallSquare: EmptyVerySmallSquare,
|
---|
2680 | emsp13: emsp13,
|
---|
2681 | emsp14: emsp14,
|
---|
2682 | emsp: emsp,
|
---|
2683 | ENG: ENG,
|
---|
2684 | eng: eng,
|
---|
2685 | ensp: ensp,
|
---|
2686 | Eogon: Eogon,
|
---|
2687 | eogon: eogon,
|
---|
2688 | Eopf: Eopf,
|
---|
2689 | eopf: eopf,
|
---|
2690 | epar: epar,
|
---|
2691 | eparsl: eparsl,
|
---|
2692 | eplus: eplus,
|
---|
2693 | epsi: epsi,
|
---|
2694 | Epsilon: Epsilon,
|
---|
2695 | epsilon: epsilon,
|
---|
2696 | epsiv: epsiv,
|
---|
2697 | eqcirc: eqcirc,
|
---|
2698 | eqcolon: eqcolon,
|
---|
2699 | eqsim: eqsim,
|
---|
2700 | eqslantgtr: eqslantgtr,
|
---|
2701 | eqslantless: eqslantless,
|
---|
2702 | Equal: Equal,
|
---|
2703 | equals: equals,
|
---|
2704 | EqualTilde: EqualTilde,
|
---|
2705 | equest: equest,
|
---|
2706 | Equilibrium: Equilibrium,
|
---|
2707 | equiv: equiv,
|
---|
2708 | equivDD: equivDD,
|
---|
2709 | eqvparsl: eqvparsl,
|
---|
2710 | erarr: erarr,
|
---|
2711 | erDot: erDot,
|
---|
2712 | escr: escr,
|
---|
2713 | Escr: Escr,
|
---|
2714 | esdot: esdot,
|
---|
2715 | Esim: Esim,
|
---|
2716 | esim: esim,
|
---|
2717 | Eta: Eta,
|
---|
2718 | eta: eta,
|
---|
2719 | ETH: ETH,
|
---|
2720 | eth: eth,
|
---|
2721 | Euml: Euml,
|
---|
2722 | euml: euml,
|
---|
2723 | euro: euro,
|
---|
2724 | excl: excl,
|
---|
2725 | exist: exist,
|
---|
2726 | Exists: Exists,
|
---|
2727 | expectation: expectation,
|
---|
2728 | exponentiale: exponentiale,
|
---|
2729 | ExponentialE: ExponentialE,
|
---|
2730 | fallingdotseq: fallingdotseq,
|
---|
2731 | Fcy: Fcy,
|
---|
2732 | fcy: fcy,
|
---|
2733 | female: female,
|
---|
2734 | ffilig: ffilig,
|
---|
2735 | fflig: fflig,
|
---|
2736 | ffllig: ffllig,
|
---|
2737 | Ffr: Ffr,
|
---|
2738 | ffr: ffr,
|
---|
2739 | filig: filig,
|
---|
2740 | FilledSmallSquare: FilledSmallSquare,
|
---|
2741 | FilledVerySmallSquare: FilledVerySmallSquare,
|
---|
2742 | fjlig: fjlig,
|
---|
2743 | flat: flat,
|
---|
2744 | fllig: fllig,
|
---|
2745 | fltns: fltns,
|
---|
2746 | fnof: fnof,
|
---|
2747 | Fopf: Fopf,
|
---|
2748 | fopf: fopf,
|
---|
2749 | forall: forall,
|
---|
2750 | ForAll: ForAll,
|
---|
2751 | fork: fork,
|
---|
2752 | forkv: forkv,
|
---|
2753 | Fouriertrf: Fouriertrf,
|
---|
2754 | fpartint: fpartint,
|
---|
2755 | frac12: frac12,
|
---|
2756 | frac13: frac13,
|
---|
2757 | frac14: frac14,
|
---|
2758 | frac15: frac15,
|
---|
2759 | frac16: frac16,
|
---|
2760 | frac18: frac18,
|
---|
2761 | frac23: frac23,
|
---|
2762 | frac25: frac25,
|
---|
2763 | frac34: frac34,
|
---|
2764 | frac35: frac35,
|
---|
2765 | frac38: frac38,
|
---|
2766 | frac45: frac45,
|
---|
2767 | frac56: frac56,
|
---|
2768 | frac58: frac58,
|
---|
2769 | frac78: frac78,
|
---|
2770 | frasl: frasl,
|
---|
2771 | frown: frown,
|
---|
2772 | fscr: fscr,
|
---|
2773 | Fscr: Fscr,
|
---|
2774 | gacute: gacute,
|
---|
2775 | Gamma: Gamma,
|
---|
2776 | gamma: gamma,
|
---|
2777 | Gammad: Gammad,
|
---|
2778 | gammad: gammad,
|
---|
2779 | gap: gap,
|
---|
2780 | Gbreve: Gbreve,
|
---|
2781 | gbreve: gbreve,
|
---|
2782 | Gcedil: Gcedil,
|
---|
2783 | Gcirc: Gcirc,
|
---|
2784 | gcirc: gcirc,
|
---|
2785 | Gcy: Gcy,
|
---|
2786 | gcy: gcy,
|
---|
2787 | Gdot: Gdot,
|
---|
2788 | gdot: gdot,
|
---|
2789 | ge: ge,
|
---|
2790 | gE: gE,
|
---|
2791 | gEl: gEl,
|
---|
2792 | gel: gel,
|
---|
2793 | geq: geq,
|
---|
2794 | geqq: geqq,
|
---|
2795 | geqslant: geqslant,
|
---|
2796 | gescc: gescc,
|
---|
2797 | ges: ges,
|
---|
2798 | gesdot: gesdot,
|
---|
2799 | gesdoto: gesdoto,
|
---|
2800 | gesdotol: gesdotol,
|
---|
2801 | gesl: gesl,
|
---|
2802 | gesles: gesles,
|
---|
2803 | Gfr: Gfr,
|
---|
2804 | gfr: gfr,
|
---|
2805 | gg: gg,
|
---|
2806 | Gg: Gg,
|
---|
2807 | ggg: ggg,
|
---|
2808 | gimel: gimel,
|
---|
2809 | GJcy: GJcy,
|
---|
2810 | gjcy: gjcy,
|
---|
2811 | gla: gla,
|
---|
2812 | gl: gl,
|
---|
2813 | glE: glE,
|
---|
2814 | glj: glj,
|
---|
2815 | gnap: gnap,
|
---|
2816 | gnapprox: gnapprox,
|
---|
2817 | gne: gne,
|
---|
2818 | gnE: gnE,
|
---|
2819 | gneq: gneq,
|
---|
2820 | gneqq: gneqq,
|
---|
2821 | gnsim: gnsim,
|
---|
2822 | Gopf: Gopf,
|
---|
2823 | gopf: gopf,
|
---|
2824 | grave: grave,
|
---|
2825 | GreaterEqual: GreaterEqual,
|
---|
2826 | GreaterEqualLess: GreaterEqualLess,
|
---|
2827 | GreaterFullEqual: GreaterFullEqual,
|
---|
2828 | GreaterGreater: GreaterGreater,
|
---|
2829 | GreaterLess: GreaterLess,
|
---|
2830 | GreaterSlantEqual: GreaterSlantEqual,
|
---|
2831 | GreaterTilde: GreaterTilde,
|
---|
2832 | Gscr: Gscr,
|
---|
2833 | gscr: gscr,
|
---|
2834 | gsim: gsim,
|
---|
2835 | gsime: gsime,
|
---|
2836 | gsiml: gsiml,
|
---|
2837 | gtcc: gtcc,
|
---|
2838 | gtcir: gtcir,
|
---|
2839 | gt: gt,
|
---|
2840 | GT: GT,
|
---|
2841 | Gt: Gt,
|
---|
2842 | gtdot: gtdot,
|
---|
2843 | gtlPar: gtlPar,
|
---|
2844 | gtquest: gtquest,
|
---|
2845 | gtrapprox: gtrapprox,
|
---|
2846 | gtrarr: gtrarr,
|
---|
2847 | gtrdot: gtrdot,
|
---|
2848 | gtreqless: gtreqless,
|
---|
2849 | gtreqqless: gtreqqless,
|
---|
2850 | gtrless: gtrless,
|
---|
2851 | gtrsim: gtrsim,
|
---|
2852 | gvertneqq: gvertneqq,
|
---|
2853 | gvnE: gvnE,
|
---|
2854 | Hacek: Hacek,
|
---|
2855 | hairsp: hairsp,
|
---|
2856 | half: half,
|
---|
2857 | hamilt: hamilt,
|
---|
2858 | HARDcy: HARDcy,
|
---|
2859 | hardcy: hardcy,
|
---|
2860 | harrcir: harrcir,
|
---|
2861 | harr: harr,
|
---|
2862 | hArr: hArr,
|
---|
2863 | harrw: harrw,
|
---|
2864 | Hat: Hat,
|
---|
2865 | hbar: hbar,
|
---|
2866 | Hcirc: Hcirc,
|
---|
2867 | hcirc: hcirc,
|
---|
2868 | hearts: hearts,
|
---|
2869 | heartsuit: heartsuit,
|
---|
2870 | hellip: hellip,
|
---|
2871 | hercon: hercon,
|
---|
2872 | hfr: hfr,
|
---|
2873 | Hfr: Hfr,
|
---|
2874 | HilbertSpace: HilbertSpace,
|
---|
2875 | hksearow: hksearow,
|
---|
2876 | hkswarow: hkswarow,
|
---|
2877 | hoarr: hoarr,
|
---|
2878 | homtht: homtht,
|
---|
2879 | hookleftarrow: hookleftarrow,
|
---|
2880 | hookrightarrow: hookrightarrow,
|
---|
2881 | hopf: hopf,
|
---|
2882 | Hopf: Hopf,
|
---|
2883 | horbar: horbar,
|
---|
2884 | HorizontalLine: HorizontalLine,
|
---|
2885 | hscr: hscr,
|
---|
2886 | Hscr: Hscr,
|
---|
2887 | hslash: hslash,
|
---|
2888 | Hstrok: Hstrok,
|
---|
2889 | hstrok: hstrok,
|
---|
2890 | HumpDownHump: HumpDownHump,
|
---|
2891 | HumpEqual: HumpEqual,
|
---|
2892 | hybull: hybull,
|
---|
2893 | hyphen: hyphen,
|
---|
2894 | Iacute: Iacute,
|
---|
2895 | iacute: iacute,
|
---|
2896 | ic: ic,
|
---|
2897 | Icirc: Icirc,
|
---|
2898 | icirc: icirc,
|
---|
2899 | Icy: Icy,
|
---|
2900 | icy: icy,
|
---|
2901 | Idot: Idot,
|
---|
2902 | IEcy: IEcy,
|
---|
2903 | iecy: iecy,
|
---|
2904 | iexcl: iexcl,
|
---|
2905 | iff: iff,
|
---|
2906 | ifr: ifr,
|
---|
2907 | Ifr: Ifr,
|
---|
2908 | Igrave: Igrave,
|
---|
2909 | igrave: igrave,
|
---|
2910 | ii: ii,
|
---|
2911 | iiiint: iiiint,
|
---|
2912 | iiint: iiint,
|
---|
2913 | iinfin: iinfin,
|
---|
2914 | iiota: iiota,
|
---|
2915 | IJlig: IJlig,
|
---|
2916 | ijlig: ijlig,
|
---|
2917 | Imacr: Imacr,
|
---|
2918 | imacr: imacr,
|
---|
2919 | image: image,
|
---|
2920 | ImaginaryI: ImaginaryI,
|
---|
2921 | imagline: imagline,
|
---|
2922 | imagpart: imagpart,
|
---|
2923 | imath: imath,
|
---|
2924 | Im: Im,
|
---|
2925 | imof: imof,
|
---|
2926 | imped: imped,
|
---|
2927 | Implies: Implies,
|
---|
2928 | incare: incare,
|
---|
2929 | "in": "∈",
|
---|
2930 | infin: infin,
|
---|
2931 | infintie: infintie,
|
---|
2932 | inodot: inodot,
|
---|
2933 | intcal: intcal,
|
---|
2934 | int: int,
|
---|
2935 | Int: Int,
|
---|
2936 | integers: integers,
|
---|
2937 | Integral: Integral,
|
---|
2938 | intercal: intercal,
|
---|
2939 | Intersection: Intersection,
|
---|
2940 | intlarhk: intlarhk,
|
---|
2941 | intprod: intprod,
|
---|
2942 | InvisibleComma: InvisibleComma,
|
---|
2943 | InvisibleTimes: InvisibleTimes,
|
---|
2944 | IOcy: IOcy,
|
---|
2945 | iocy: iocy,
|
---|
2946 | Iogon: Iogon,
|
---|
2947 | iogon: iogon,
|
---|
2948 | Iopf: Iopf,
|
---|
2949 | iopf: iopf,
|
---|
2950 | Iota: Iota,
|
---|
2951 | iota: iota,
|
---|
2952 | iprod: iprod,
|
---|
2953 | iquest: iquest,
|
---|
2954 | iscr: iscr,
|
---|
2955 | Iscr: Iscr,
|
---|
2956 | isin: isin,
|
---|
2957 | isindot: isindot,
|
---|
2958 | isinE: isinE,
|
---|
2959 | isins: isins,
|
---|
2960 | isinsv: isinsv,
|
---|
2961 | isinv: isinv,
|
---|
2962 | it: it,
|
---|
2963 | Itilde: Itilde,
|
---|
2964 | itilde: itilde,
|
---|
2965 | Iukcy: Iukcy,
|
---|
2966 | iukcy: iukcy,
|
---|
2967 | Iuml: Iuml,
|
---|
2968 | iuml: iuml,
|
---|
2969 | Jcirc: Jcirc,
|
---|
2970 | jcirc: jcirc,
|
---|
2971 | Jcy: Jcy,
|
---|
2972 | jcy: jcy,
|
---|
2973 | Jfr: Jfr,
|
---|
2974 | jfr: jfr,
|
---|
2975 | jmath: jmath,
|
---|
2976 | Jopf: Jopf,
|
---|
2977 | jopf: jopf,
|
---|
2978 | Jscr: Jscr,
|
---|
2979 | jscr: jscr,
|
---|
2980 | Jsercy: Jsercy,
|
---|
2981 | jsercy: jsercy,
|
---|
2982 | Jukcy: Jukcy,
|
---|
2983 | jukcy: jukcy,
|
---|
2984 | Kappa: Kappa,
|
---|
2985 | kappa: kappa,
|
---|
2986 | kappav: kappav,
|
---|
2987 | Kcedil: Kcedil,
|
---|
2988 | kcedil: kcedil,
|
---|
2989 | Kcy: Kcy,
|
---|
2990 | kcy: kcy,
|
---|
2991 | Kfr: Kfr,
|
---|
2992 | kfr: kfr,
|
---|
2993 | kgreen: kgreen,
|
---|
2994 | KHcy: KHcy,
|
---|
2995 | khcy: khcy,
|
---|
2996 | KJcy: KJcy,
|
---|
2997 | kjcy: kjcy,
|
---|
2998 | Kopf: Kopf,
|
---|
2999 | kopf: kopf,
|
---|
3000 | Kscr: Kscr,
|
---|
3001 | kscr: kscr,
|
---|
3002 | lAarr: lAarr,
|
---|
3003 | Lacute: Lacute,
|
---|
3004 | lacute: lacute,
|
---|
3005 | laemptyv: laemptyv,
|
---|
3006 | lagran: lagran,
|
---|
3007 | Lambda: Lambda,
|
---|
3008 | lambda: lambda,
|
---|
3009 | lang: lang,
|
---|
3010 | Lang: Lang,
|
---|
3011 | langd: langd,
|
---|
3012 | langle: langle,
|
---|
3013 | lap: lap,
|
---|
3014 | Laplacetrf: Laplacetrf,
|
---|
3015 | laquo: laquo,
|
---|
3016 | larrb: larrb,
|
---|
3017 | larrbfs: larrbfs,
|
---|
3018 | larr: larr,
|
---|
3019 | Larr: Larr,
|
---|
3020 | lArr: lArr,
|
---|
3021 | larrfs: larrfs,
|
---|
3022 | larrhk: larrhk,
|
---|
3023 | larrlp: larrlp,
|
---|
3024 | larrpl: larrpl,
|
---|
3025 | larrsim: larrsim,
|
---|
3026 | larrtl: larrtl,
|
---|
3027 | latail: latail,
|
---|
3028 | lAtail: lAtail,
|
---|
3029 | lat: lat,
|
---|
3030 | late: late,
|
---|
3031 | lates: lates,
|
---|
3032 | lbarr: lbarr,
|
---|
3033 | lBarr: lBarr,
|
---|
3034 | lbbrk: lbbrk,
|
---|
3035 | lbrace: lbrace,
|
---|
3036 | lbrack: lbrack,
|
---|
3037 | lbrke: lbrke,
|
---|
3038 | lbrksld: lbrksld,
|
---|
3039 | lbrkslu: lbrkslu,
|
---|
3040 | Lcaron: Lcaron,
|
---|
3041 | lcaron: lcaron,
|
---|
3042 | Lcedil: Lcedil,
|
---|
3043 | lcedil: lcedil,
|
---|
3044 | lceil: lceil,
|
---|
3045 | lcub: lcub,
|
---|
3046 | Lcy: Lcy,
|
---|
3047 | lcy: lcy,
|
---|
3048 | ldca: ldca,
|
---|
3049 | ldquo: ldquo,
|
---|
3050 | ldquor: ldquor,
|
---|
3051 | ldrdhar: ldrdhar,
|
---|
3052 | ldrushar: ldrushar,
|
---|
3053 | ldsh: ldsh,
|
---|
3054 | le: le,
|
---|
3055 | lE: lE,
|
---|
3056 | LeftAngleBracket: LeftAngleBracket,
|
---|
3057 | LeftArrowBar: LeftArrowBar,
|
---|
3058 | leftarrow: leftarrow,
|
---|
3059 | LeftArrow: LeftArrow,
|
---|
3060 | Leftarrow: Leftarrow,
|
---|
3061 | LeftArrowRightArrow: LeftArrowRightArrow,
|
---|
3062 | leftarrowtail: leftarrowtail,
|
---|
3063 | LeftCeiling: LeftCeiling,
|
---|
3064 | LeftDoubleBracket: LeftDoubleBracket,
|
---|
3065 | LeftDownTeeVector: LeftDownTeeVector,
|
---|
3066 | LeftDownVectorBar: LeftDownVectorBar,
|
---|
3067 | LeftDownVector: LeftDownVector,
|
---|
3068 | LeftFloor: LeftFloor,
|
---|
3069 | leftharpoondown: leftharpoondown,
|
---|
3070 | leftharpoonup: leftharpoonup,
|
---|
3071 | leftleftarrows: leftleftarrows,
|
---|
3072 | leftrightarrow: leftrightarrow,
|
---|
3073 | LeftRightArrow: LeftRightArrow,
|
---|
3074 | Leftrightarrow: Leftrightarrow,
|
---|
3075 | leftrightarrows: leftrightarrows,
|
---|
3076 | leftrightharpoons: leftrightharpoons,
|
---|
3077 | leftrightsquigarrow: leftrightsquigarrow,
|
---|
3078 | LeftRightVector: LeftRightVector,
|
---|
3079 | LeftTeeArrow: LeftTeeArrow,
|
---|
3080 | LeftTee: LeftTee,
|
---|
3081 | LeftTeeVector: LeftTeeVector,
|
---|
3082 | leftthreetimes: leftthreetimes,
|
---|
3083 | LeftTriangleBar: LeftTriangleBar,
|
---|
3084 | LeftTriangle: LeftTriangle,
|
---|
3085 | LeftTriangleEqual: LeftTriangleEqual,
|
---|
3086 | LeftUpDownVector: LeftUpDownVector,
|
---|
3087 | LeftUpTeeVector: LeftUpTeeVector,
|
---|
3088 | LeftUpVectorBar: LeftUpVectorBar,
|
---|
3089 | LeftUpVector: LeftUpVector,
|
---|
3090 | LeftVectorBar: LeftVectorBar,
|
---|
3091 | LeftVector: LeftVector,
|
---|
3092 | lEg: lEg,
|
---|
3093 | leg: leg,
|
---|
3094 | leq: leq,
|
---|
3095 | leqq: leqq,
|
---|
3096 | leqslant: leqslant,
|
---|
3097 | lescc: lescc,
|
---|
3098 | les: les,
|
---|
3099 | lesdot: lesdot,
|
---|
3100 | lesdoto: lesdoto,
|
---|
3101 | lesdotor: lesdotor,
|
---|
3102 | lesg: lesg,
|
---|
3103 | lesges: lesges,
|
---|
3104 | lessapprox: lessapprox,
|
---|
3105 | lessdot: lessdot,
|
---|
3106 | lesseqgtr: lesseqgtr,
|
---|
3107 | lesseqqgtr: lesseqqgtr,
|
---|
3108 | LessEqualGreater: LessEqualGreater,
|
---|
3109 | LessFullEqual: LessFullEqual,
|
---|
3110 | LessGreater: LessGreater,
|
---|
3111 | lessgtr: lessgtr,
|
---|
3112 | LessLess: LessLess,
|
---|
3113 | lesssim: lesssim,
|
---|
3114 | LessSlantEqual: LessSlantEqual,
|
---|
3115 | LessTilde: LessTilde,
|
---|
3116 | lfisht: lfisht,
|
---|
3117 | lfloor: lfloor,
|
---|
3118 | Lfr: Lfr,
|
---|
3119 | lfr: lfr,
|
---|
3120 | lg: lg,
|
---|
3121 | lgE: lgE,
|
---|
3122 | lHar: lHar,
|
---|
3123 | lhard: lhard,
|
---|
3124 | lharu: lharu,
|
---|
3125 | lharul: lharul,
|
---|
3126 | lhblk: lhblk,
|
---|
3127 | LJcy: LJcy,
|
---|
3128 | ljcy: ljcy,
|
---|
3129 | llarr: llarr,
|
---|
3130 | ll: ll,
|
---|
3131 | Ll: Ll,
|
---|
3132 | llcorner: llcorner,
|
---|
3133 | Lleftarrow: Lleftarrow,
|
---|
3134 | llhard: llhard,
|
---|
3135 | lltri: lltri,
|
---|
3136 | Lmidot: Lmidot,
|
---|
3137 | lmidot: lmidot,
|
---|
3138 | lmoustache: lmoustache,
|
---|
3139 | lmoust: lmoust,
|
---|
3140 | lnap: lnap,
|
---|
3141 | lnapprox: lnapprox,
|
---|
3142 | lne: lne,
|
---|
3143 | lnE: lnE,
|
---|
3144 | lneq: lneq,
|
---|
3145 | lneqq: lneqq,
|
---|
3146 | lnsim: lnsim,
|
---|
3147 | loang: loang,
|
---|
3148 | loarr: loarr,
|
---|
3149 | lobrk: lobrk,
|
---|
3150 | longleftarrow: longleftarrow,
|
---|
3151 | LongLeftArrow: LongLeftArrow,
|
---|
3152 | Longleftarrow: Longleftarrow,
|
---|
3153 | longleftrightarrow: longleftrightarrow,
|
---|
3154 | LongLeftRightArrow: LongLeftRightArrow,
|
---|
3155 | Longleftrightarrow: Longleftrightarrow,
|
---|
3156 | longmapsto: longmapsto,
|
---|
3157 | longrightarrow: longrightarrow,
|
---|
3158 | LongRightArrow: LongRightArrow,
|
---|
3159 | Longrightarrow: Longrightarrow,
|
---|
3160 | looparrowleft: looparrowleft,
|
---|
3161 | looparrowright: looparrowright,
|
---|
3162 | lopar: lopar,
|
---|
3163 | Lopf: Lopf,
|
---|
3164 | lopf: lopf,
|
---|
3165 | loplus: loplus,
|
---|
3166 | lotimes: lotimes,
|
---|
3167 | lowast: lowast,
|
---|
3168 | lowbar: lowbar,
|
---|
3169 | LowerLeftArrow: LowerLeftArrow,
|
---|
3170 | LowerRightArrow: LowerRightArrow,
|
---|
3171 | loz: loz,
|
---|
3172 | lozenge: lozenge,
|
---|
3173 | lozf: lozf,
|
---|
3174 | lpar: lpar,
|
---|
3175 | lparlt: lparlt,
|
---|
3176 | lrarr: lrarr,
|
---|
3177 | lrcorner: lrcorner,
|
---|
3178 | lrhar: lrhar,
|
---|
3179 | lrhard: lrhard,
|
---|
3180 | lrm: lrm,
|
---|
3181 | lrtri: lrtri,
|
---|
3182 | lsaquo: lsaquo,
|
---|
3183 | lscr: lscr,
|
---|
3184 | Lscr: Lscr,
|
---|
3185 | lsh: lsh,
|
---|
3186 | Lsh: Lsh,
|
---|
3187 | lsim: lsim,
|
---|
3188 | lsime: lsime,
|
---|
3189 | lsimg: lsimg,
|
---|
3190 | lsqb: lsqb,
|
---|
3191 | lsquo: lsquo,
|
---|
3192 | lsquor: lsquor,
|
---|
3193 | Lstrok: Lstrok,
|
---|
3194 | lstrok: lstrok,
|
---|
3195 | ltcc: ltcc,
|
---|
3196 | ltcir: ltcir,
|
---|
3197 | lt: lt,
|
---|
3198 | LT: LT,
|
---|
3199 | Lt: Lt,
|
---|
3200 | ltdot: ltdot,
|
---|
3201 | lthree: lthree,
|
---|
3202 | ltimes: ltimes,
|
---|
3203 | ltlarr: ltlarr,
|
---|
3204 | ltquest: ltquest,
|
---|
3205 | ltri: ltri,
|
---|
3206 | ltrie: ltrie,
|
---|
3207 | ltrif: ltrif,
|
---|
3208 | ltrPar: ltrPar,
|
---|
3209 | lurdshar: lurdshar,
|
---|
3210 | luruhar: luruhar,
|
---|
3211 | lvertneqq: lvertneqq,
|
---|
3212 | lvnE: lvnE,
|
---|
3213 | macr: macr,
|
---|
3214 | male: male,
|
---|
3215 | malt: malt,
|
---|
3216 | maltese: maltese,
|
---|
3217 | "Map": "⤅",
|
---|
3218 | map: map,
|
---|
3219 | mapsto: mapsto,
|
---|
3220 | mapstodown: mapstodown,
|
---|
3221 | mapstoleft: mapstoleft,
|
---|
3222 | mapstoup: mapstoup,
|
---|
3223 | marker: marker,
|
---|
3224 | mcomma: mcomma,
|
---|
3225 | Mcy: Mcy,
|
---|
3226 | mcy: mcy,
|
---|
3227 | mdash: mdash,
|
---|
3228 | mDDot: mDDot,
|
---|
3229 | measuredangle: measuredangle,
|
---|
3230 | MediumSpace: MediumSpace,
|
---|
3231 | Mellintrf: Mellintrf,
|
---|
3232 | Mfr: Mfr,
|
---|
3233 | mfr: mfr,
|
---|
3234 | mho: mho,
|
---|
3235 | micro: micro,
|
---|
3236 | midast: midast,
|
---|
3237 | midcir: midcir,
|
---|
3238 | mid: mid,
|
---|
3239 | middot: middot,
|
---|
3240 | minusb: minusb,
|
---|
3241 | minus: minus,
|
---|
3242 | minusd: minusd,
|
---|
3243 | minusdu: minusdu,
|
---|
3244 | MinusPlus: MinusPlus,
|
---|
3245 | mlcp: mlcp,
|
---|
3246 | mldr: mldr,
|
---|
3247 | mnplus: mnplus,
|
---|
3248 | models: models,
|
---|
3249 | Mopf: Mopf,
|
---|
3250 | mopf: mopf,
|
---|
3251 | mp: mp,
|
---|
3252 | mscr: mscr,
|
---|
3253 | Mscr: Mscr,
|
---|
3254 | mstpos: mstpos,
|
---|
3255 | Mu: Mu,
|
---|
3256 | mu: mu,
|
---|
3257 | multimap: multimap,
|
---|
3258 | mumap: mumap,
|
---|
3259 | nabla: nabla,
|
---|
3260 | Nacute: Nacute,
|
---|
3261 | nacute: nacute,
|
---|
3262 | nang: nang,
|
---|
3263 | nap: nap,
|
---|
3264 | napE: napE,
|
---|
3265 | napid: napid,
|
---|
3266 | napos: napos,
|
---|
3267 | napprox: napprox,
|
---|
3268 | natural: natural,
|
---|
3269 | naturals: naturals,
|
---|
3270 | natur: natur,
|
---|
3271 | nbsp: nbsp,
|
---|
3272 | nbump: nbump,
|
---|
3273 | nbumpe: nbumpe,
|
---|
3274 | ncap: ncap,
|
---|
3275 | Ncaron: Ncaron,
|
---|
3276 | ncaron: ncaron,
|
---|
3277 | Ncedil: Ncedil,
|
---|
3278 | ncedil: ncedil,
|
---|
3279 | ncong: ncong,
|
---|
3280 | ncongdot: ncongdot,
|
---|
3281 | ncup: ncup,
|
---|
3282 | Ncy: Ncy,
|
---|
3283 | ncy: ncy,
|
---|
3284 | ndash: ndash,
|
---|
3285 | nearhk: nearhk,
|
---|
3286 | nearr: nearr,
|
---|
3287 | neArr: neArr,
|
---|
3288 | nearrow: nearrow,
|
---|
3289 | ne: ne,
|
---|
3290 | nedot: nedot,
|
---|
3291 | NegativeMediumSpace: NegativeMediumSpace,
|
---|
3292 | NegativeThickSpace: NegativeThickSpace,
|
---|
3293 | NegativeThinSpace: NegativeThinSpace,
|
---|
3294 | NegativeVeryThinSpace: NegativeVeryThinSpace,
|
---|
3295 | nequiv: nequiv,
|
---|
3296 | nesear: nesear,
|
---|
3297 | nesim: nesim,
|
---|
3298 | NestedGreaterGreater: NestedGreaterGreater,
|
---|
3299 | NestedLessLess: NestedLessLess,
|
---|
3300 | NewLine: NewLine,
|
---|
3301 | nexist: nexist,
|
---|
3302 | nexists: nexists,
|
---|
3303 | Nfr: Nfr,
|
---|
3304 | nfr: nfr,
|
---|
3305 | ngE: ngE,
|
---|
3306 | nge: nge,
|
---|
3307 | ngeq: ngeq,
|
---|
3308 | ngeqq: ngeqq,
|
---|
3309 | ngeqslant: ngeqslant,
|
---|
3310 | nges: nges,
|
---|
3311 | nGg: nGg,
|
---|
3312 | ngsim: ngsim,
|
---|
3313 | nGt: nGt,
|
---|
3314 | ngt: ngt,
|
---|
3315 | ngtr: ngtr,
|
---|
3316 | nGtv: nGtv,
|
---|
3317 | nharr: nharr,
|
---|
3318 | nhArr: nhArr,
|
---|
3319 | nhpar: nhpar,
|
---|
3320 | ni: ni,
|
---|
3321 | nis: nis,
|
---|
3322 | nisd: nisd,
|
---|
3323 | niv: niv,
|
---|
3324 | NJcy: NJcy,
|
---|
3325 | njcy: njcy,
|
---|
3326 | nlarr: nlarr,
|
---|
3327 | nlArr: nlArr,
|
---|
3328 | nldr: nldr,
|
---|
3329 | nlE: nlE,
|
---|
3330 | nle: nle,
|
---|
3331 | nleftarrow: nleftarrow,
|
---|
3332 | nLeftarrow: nLeftarrow,
|
---|
3333 | nleftrightarrow: nleftrightarrow,
|
---|
3334 | nLeftrightarrow: nLeftrightarrow,
|
---|
3335 | nleq: nleq,
|
---|
3336 | nleqq: nleqq,
|
---|
3337 | nleqslant: nleqslant,
|
---|
3338 | nles: nles,
|
---|
3339 | nless: nless,
|
---|
3340 | nLl: nLl,
|
---|
3341 | nlsim: nlsim,
|
---|
3342 | nLt: nLt,
|
---|
3343 | nlt: nlt,
|
---|
3344 | nltri: nltri,
|
---|
3345 | nltrie: nltrie,
|
---|
3346 | nLtv: nLtv,
|
---|
3347 | nmid: nmid,
|
---|
3348 | NoBreak: NoBreak,
|
---|
3349 | NonBreakingSpace: NonBreakingSpace,
|
---|
3350 | nopf: nopf,
|
---|
3351 | Nopf: Nopf,
|
---|
3352 | Not: Not,
|
---|
3353 | not: not,
|
---|
3354 | NotCongruent: NotCongruent,
|
---|
3355 | NotCupCap: NotCupCap,
|
---|
3356 | NotDoubleVerticalBar: NotDoubleVerticalBar,
|
---|
3357 | NotElement: NotElement,
|
---|
3358 | NotEqual: NotEqual,
|
---|
3359 | NotEqualTilde: NotEqualTilde,
|
---|
3360 | NotExists: NotExists,
|
---|
3361 | NotGreater: NotGreater,
|
---|
3362 | NotGreaterEqual: NotGreaterEqual,
|
---|
3363 | NotGreaterFullEqual: NotGreaterFullEqual,
|
---|
3364 | NotGreaterGreater: NotGreaterGreater,
|
---|
3365 | NotGreaterLess: NotGreaterLess,
|
---|
3366 | NotGreaterSlantEqual: NotGreaterSlantEqual,
|
---|
3367 | NotGreaterTilde: NotGreaterTilde,
|
---|
3368 | NotHumpDownHump: NotHumpDownHump,
|
---|
3369 | NotHumpEqual: NotHumpEqual,
|
---|
3370 | notin: notin,
|
---|
3371 | notindot: notindot,
|
---|
3372 | notinE: notinE,
|
---|
3373 | notinva: notinva,
|
---|
3374 | notinvb: notinvb,
|
---|
3375 | notinvc: notinvc,
|
---|
3376 | NotLeftTriangleBar: NotLeftTriangleBar,
|
---|
3377 | NotLeftTriangle: NotLeftTriangle,
|
---|
3378 | NotLeftTriangleEqual: NotLeftTriangleEqual,
|
---|
3379 | NotLess: NotLess,
|
---|
3380 | NotLessEqual: NotLessEqual,
|
---|
3381 | NotLessGreater: NotLessGreater,
|
---|
3382 | NotLessLess: NotLessLess,
|
---|
3383 | NotLessSlantEqual: NotLessSlantEqual,
|
---|
3384 | NotLessTilde: NotLessTilde,
|
---|
3385 | NotNestedGreaterGreater: NotNestedGreaterGreater,
|
---|
3386 | NotNestedLessLess: NotNestedLessLess,
|
---|
3387 | notni: notni,
|
---|
3388 | notniva: notniva,
|
---|
3389 | notnivb: notnivb,
|
---|
3390 | notnivc: notnivc,
|
---|
3391 | NotPrecedes: NotPrecedes,
|
---|
3392 | NotPrecedesEqual: NotPrecedesEqual,
|
---|
3393 | NotPrecedesSlantEqual: NotPrecedesSlantEqual,
|
---|
3394 | NotReverseElement: NotReverseElement,
|
---|
3395 | NotRightTriangleBar: NotRightTriangleBar,
|
---|
3396 | NotRightTriangle: NotRightTriangle,
|
---|
3397 | NotRightTriangleEqual: NotRightTriangleEqual,
|
---|
3398 | NotSquareSubset: NotSquareSubset,
|
---|
3399 | NotSquareSubsetEqual: NotSquareSubsetEqual,
|
---|
3400 | NotSquareSuperset: NotSquareSuperset,
|
---|
3401 | NotSquareSupersetEqual: NotSquareSupersetEqual,
|
---|
3402 | NotSubset: NotSubset,
|
---|
3403 | NotSubsetEqual: NotSubsetEqual,
|
---|
3404 | NotSucceeds: NotSucceeds,
|
---|
3405 | NotSucceedsEqual: NotSucceedsEqual,
|
---|
3406 | NotSucceedsSlantEqual: NotSucceedsSlantEqual,
|
---|
3407 | NotSucceedsTilde: NotSucceedsTilde,
|
---|
3408 | NotSuperset: NotSuperset,
|
---|
3409 | NotSupersetEqual: NotSupersetEqual,
|
---|
3410 | NotTilde: NotTilde,
|
---|
3411 | NotTildeEqual: NotTildeEqual,
|
---|
3412 | NotTildeFullEqual: NotTildeFullEqual,
|
---|
3413 | NotTildeTilde: NotTildeTilde,
|
---|
3414 | NotVerticalBar: NotVerticalBar,
|
---|
3415 | nparallel: nparallel,
|
---|
3416 | npar: npar,
|
---|
3417 | nparsl: nparsl,
|
---|
3418 | npart: npart,
|
---|
3419 | npolint: npolint,
|
---|
3420 | npr: npr,
|
---|
3421 | nprcue: nprcue,
|
---|
3422 | nprec: nprec,
|
---|
3423 | npreceq: npreceq,
|
---|
3424 | npre: npre,
|
---|
3425 | nrarrc: nrarrc,
|
---|
3426 | nrarr: nrarr,
|
---|
3427 | nrArr: nrArr,
|
---|
3428 | nrarrw: nrarrw,
|
---|
3429 | nrightarrow: nrightarrow,
|
---|
3430 | nRightarrow: nRightarrow,
|
---|
3431 | nrtri: nrtri,
|
---|
3432 | nrtrie: nrtrie,
|
---|
3433 | nsc: nsc,
|
---|
3434 | nsccue: nsccue,
|
---|
3435 | nsce: nsce,
|
---|
3436 | Nscr: Nscr,
|
---|
3437 | nscr: nscr,
|
---|
3438 | nshortmid: nshortmid,
|
---|
3439 | nshortparallel: nshortparallel,
|
---|
3440 | nsim: nsim,
|
---|
3441 | nsime: nsime,
|
---|
3442 | nsimeq: nsimeq,
|
---|
3443 | nsmid: nsmid,
|
---|
3444 | nspar: nspar,
|
---|
3445 | nsqsube: nsqsube,
|
---|
3446 | nsqsupe: nsqsupe,
|
---|
3447 | nsub: nsub,
|
---|
3448 | nsubE: nsubE,
|
---|
3449 | nsube: nsube,
|
---|
3450 | nsubset: nsubset,
|
---|
3451 | nsubseteq: nsubseteq,
|
---|
3452 | nsubseteqq: nsubseteqq,
|
---|
3453 | nsucc: nsucc,
|
---|
3454 | nsucceq: nsucceq,
|
---|
3455 | nsup: nsup,
|
---|
3456 | nsupE: nsupE,
|
---|
3457 | nsupe: nsupe,
|
---|
3458 | nsupset: nsupset,
|
---|
3459 | nsupseteq: nsupseteq,
|
---|
3460 | nsupseteqq: nsupseteqq,
|
---|
3461 | ntgl: ntgl,
|
---|
3462 | Ntilde: Ntilde,
|
---|
3463 | ntilde: ntilde,
|
---|
3464 | ntlg: ntlg,
|
---|
3465 | ntriangleleft: ntriangleleft,
|
---|
3466 | ntrianglelefteq: ntrianglelefteq,
|
---|
3467 | ntriangleright: ntriangleright,
|
---|
3468 | ntrianglerighteq: ntrianglerighteq,
|
---|
3469 | Nu: Nu,
|
---|
3470 | nu: nu,
|
---|
3471 | num: num,
|
---|
3472 | numero: numero,
|
---|
3473 | numsp: numsp,
|
---|
3474 | nvap: nvap,
|
---|
3475 | nvdash: nvdash,
|
---|
3476 | nvDash: nvDash,
|
---|
3477 | nVdash: nVdash,
|
---|
3478 | nVDash: nVDash,
|
---|
3479 | nvge: nvge,
|
---|
3480 | nvgt: nvgt,
|
---|
3481 | nvHarr: nvHarr,
|
---|
3482 | nvinfin: nvinfin,
|
---|
3483 | nvlArr: nvlArr,
|
---|
3484 | nvle: nvle,
|
---|
3485 | nvlt: nvlt,
|
---|
3486 | nvltrie: nvltrie,
|
---|
3487 | nvrArr: nvrArr,
|
---|
3488 | nvrtrie: nvrtrie,
|
---|
3489 | nvsim: nvsim,
|
---|
3490 | nwarhk: nwarhk,
|
---|
3491 | nwarr: nwarr,
|
---|
3492 | nwArr: nwArr,
|
---|
3493 | nwarrow: nwarrow,
|
---|
3494 | nwnear: nwnear,
|
---|
3495 | Oacute: Oacute,
|
---|
3496 | oacute: oacute,
|
---|
3497 | oast: oast,
|
---|
3498 | Ocirc: Ocirc,
|
---|
3499 | ocirc: ocirc,
|
---|
3500 | ocir: ocir,
|
---|
3501 | Ocy: Ocy,
|
---|
3502 | ocy: ocy,
|
---|
3503 | odash: odash,
|
---|
3504 | Odblac: Odblac,
|
---|
3505 | odblac: odblac,
|
---|
3506 | odiv: odiv,
|
---|
3507 | odot: odot,
|
---|
3508 | odsold: odsold,
|
---|
3509 | OElig: OElig,
|
---|
3510 | oelig: oelig,
|
---|
3511 | ofcir: ofcir,
|
---|
3512 | Ofr: Ofr,
|
---|
3513 | ofr: ofr,
|
---|
3514 | ogon: ogon,
|
---|
3515 | Ograve: Ograve,
|
---|
3516 | ograve: ograve,
|
---|
3517 | ogt: ogt,
|
---|
3518 | ohbar: ohbar,
|
---|
3519 | ohm: ohm,
|
---|
3520 | oint: oint,
|
---|
3521 | olarr: olarr,
|
---|
3522 | olcir: olcir,
|
---|
3523 | olcross: olcross,
|
---|
3524 | oline: oline,
|
---|
3525 | olt: olt,
|
---|
3526 | Omacr: Omacr,
|
---|
3527 | omacr: omacr,
|
---|
3528 | Omega: Omega,
|
---|
3529 | omega: omega,
|
---|
3530 | Omicron: Omicron,
|
---|
3531 | omicron: omicron,
|
---|
3532 | omid: omid,
|
---|
3533 | ominus: ominus,
|
---|
3534 | Oopf: Oopf,
|
---|
3535 | oopf: oopf,
|
---|
3536 | opar: opar,
|
---|
3537 | OpenCurlyDoubleQuote: OpenCurlyDoubleQuote,
|
---|
3538 | OpenCurlyQuote: OpenCurlyQuote,
|
---|
3539 | operp: operp,
|
---|
3540 | oplus: oplus,
|
---|
3541 | orarr: orarr,
|
---|
3542 | Or: Or,
|
---|
3543 | or: or,
|
---|
3544 | ord: ord,
|
---|
3545 | order: order,
|
---|
3546 | orderof: orderof,
|
---|
3547 | ordf: ordf,
|
---|
3548 | ordm: ordm,
|
---|
3549 | origof: origof,
|
---|
3550 | oror: oror,
|
---|
3551 | orslope: orslope,
|
---|
3552 | orv: orv,
|
---|
3553 | oS: oS,
|
---|
3554 | Oscr: Oscr,
|
---|
3555 | oscr: oscr,
|
---|
3556 | Oslash: Oslash,
|
---|
3557 | oslash: oslash,
|
---|
3558 | osol: osol,
|
---|
3559 | Otilde: Otilde,
|
---|
3560 | otilde: otilde,
|
---|
3561 | otimesas: otimesas,
|
---|
3562 | Otimes: Otimes,
|
---|
3563 | otimes: otimes,
|
---|
3564 | Ouml: Ouml,
|
---|
3565 | ouml: ouml,
|
---|
3566 | ovbar: ovbar,
|
---|
3567 | OverBar: OverBar,
|
---|
3568 | OverBrace: OverBrace,
|
---|
3569 | OverBracket: OverBracket,
|
---|
3570 | OverParenthesis: OverParenthesis,
|
---|
3571 | para: para,
|
---|
3572 | parallel: parallel,
|
---|
3573 | par: par,
|
---|
3574 | parsim: parsim,
|
---|
3575 | parsl: parsl,
|
---|
3576 | part: part,
|
---|
3577 | PartialD: PartialD,
|
---|
3578 | Pcy: Pcy,
|
---|
3579 | pcy: pcy,
|
---|
3580 | percnt: percnt,
|
---|
3581 | period: period,
|
---|
3582 | permil: permil,
|
---|
3583 | perp: perp,
|
---|
3584 | pertenk: pertenk,
|
---|
3585 | Pfr: Pfr,
|
---|
3586 | pfr: pfr,
|
---|
3587 | Phi: Phi,
|
---|
3588 | phi: phi,
|
---|
3589 | phiv: phiv,
|
---|
3590 | phmmat: phmmat,
|
---|
3591 | phone: phone,
|
---|
3592 | Pi: Pi,
|
---|
3593 | pi: pi,
|
---|
3594 | pitchfork: pitchfork,
|
---|
3595 | piv: piv,
|
---|
3596 | planck: planck,
|
---|
3597 | planckh: planckh,
|
---|
3598 | plankv: plankv,
|
---|
3599 | plusacir: plusacir,
|
---|
3600 | plusb: plusb,
|
---|
3601 | pluscir: pluscir,
|
---|
3602 | plus: plus,
|
---|
3603 | plusdo: plusdo,
|
---|
3604 | plusdu: plusdu,
|
---|
3605 | pluse: pluse,
|
---|
3606 | PlusMinus: PlusMinus,
|
---|
3607 | plusmn: plusmn,
|
---|
3608 | plussim: plussim,
|
---|
3609 | plustwo: plustwo,
|
---|
3610 | pm: pm,
|
---|
3611 | Poincareplane: Poincareplane,
|
---|
3612 | pointint: pointint,
|
---|
3613 | popf: popf,
|
---|
3614 | Popf: Popf,
|
---|
3615 | pound: pound,
|
---|
3616 | prap: prap,
|
---|
3617 | Pr: Pr,
|
---|
3618 | pr: pr,
|
---|
3619 | prcue: prcue,
|
---|
3620 | precapprox: precapprox,
|
---|
3621 | prec: prec,
|
---|
3622 | preccurlyeq: preccurlyeq,
|
---|
3623 | Precedes: Precedes,
|
---|
3624 | PrecedesEqual: PrecedesEqual,
|
---|
3625 | PrecedesSlantEqual: PrecedesSlantEqual,
|
---|
3626 | PrecedesTilde: PrecedesTilde,
|
---|
3627 | preceq: preceq,
|
---|
3628 | precnapprox: precnapprox,
|
---|
3629 | precneqq: precneqq,
|
---|
3630 | precnsim: precnsim,
|
---|
3631 | pre: pre,
|
---|
3632 | prE: prE,
|
---|
3633 | precsim: precsim,
|
---|
3634 | prime: prime,
|
---|
3635 | Prime: Prime,
|
---|
3636 | primes: primes,
|
---|
3637 | prnap: prnap,
|
---|
3638 | prnE: prnE,
|
---|
3639 | prnsim: prnsim,
|
---|
3640 | prod: prod,
|
---|
3641 | Product: Product,
|
---|
3642 | profalar: profalar,
|
---|
3643 | profline: profline,
|
---|
3644 | profsurf: profsurf,
|
---|
3645 | prop: prop,
|
---|
3646 | Proportional: Proportional,
|
---|
3647 | Proportion: Proportion,
|
---|
3648 | propto: propto,
|
---|
3649 | prsim: prsim,
|
---|
3650 | prurel: prurel,
|
---|
3651 | Pscr: Pscr,
|
---|
3652 | pscr: pscr,
|
---|
3653 | Psi: Psi,
|
---|
3654 | psi: psi,
|
---|
3655 | puncsp: puncsp,
|
---|
3656 | Qfr: Qfr,
|
---|
3657 | qfr: qfr,
|
---|
3658 | qint: qint,
|
---|
3659 | qopf: qopf,
|
---|
3660 | Qopf: Qopf,
|
---|
3661 | qprime: qprime,
|
---|
3662 | Qscr: Qscr,
|
---|
3663 | qscr: qscr,
|
---|
3664 | quaternions: quaternions,
|
---|
3665 | quatint: quatint,
|
---|
3666 | quest: quest,
|
---|
3667 | questeq: questeq,
|
---|
3668 | quot: quot,
|
---|
3669 | QUOT: QUOT,
|
---|
3670 | rAarr: rAarr,
|
---|
3671 | race: race,
|
---|
3672 | Racute: Racute,
|
---|
3673 | racute: racute,
|
---|
3674 | radic: radic,
|
---|
3675 | raemptyv: raemptyv,
|
---|
3676 | rang: rang,
|
---|
3677 | Rang: Rang,
|
---|
3678 | rangd: rangd,
|
---|
3679 | range: range,
|
---|
3680 | rangle: rangle,
|
---|
3681 | raquo: raquo,
|
---|
3682 | rarrap: rarrap,
|
---|
3683 | rarrb: rarrb,
|
---|
3684 | rarrbfs: rarrbfs,
|
---|
3685 | rarrc: rarrc,
|
---|
3686 | rarr: rarr,
|
---|
3687 | Rarr: Rarr,
|
---|
3688 | rArr: rArr,
|
---|
3689 | rarrfs: rarrfs,
|
---|
3690 | rarrhk: rarrhk,
|
---|
3691 | rarrlp: rarrlp,
|
---|
3692 | rarrpl: rarrpl,
|
---|
3693 | rarrsim: rarrsim,
|
---|
3694 | Rarrtl: Rarrtl,
|
---|
3695 | rarrtl: rarrtl,
|
---|
3696 | rarrw: rarrw,
|
---|
3697 | ratail: ratail,
|
---|
3698 | rAtail: rAtail,
|
---|
3699 | ratio: ratio,
|
---|
3700 | rationals: rationals,
|
---|
3701 | rbarr: rbarr,
|
---|
3702 | rBarr: rBarr,
|
---|
3703 | RBarr: RBarr,
|
---|
3704 | rbbrk: rbbrk,
|
---|
3705 | rbrace: rbrace,
|
---|
3706 | rbrack: rbrack,
|
---|
3707 | rbrke: rbrke,
|
---|
3708 | rbrksld: rbrksld,
|
---|
3709 | rbrkslu: rbrkslu,
|
---|
3710 | Rcaron: Rcaron,
|
---|
3711 | rcaron: rcaron,
|
---|
3712 | Rcedil: Rcedil,
|
---|
3713 | rcedil: rcedil,
|
---|
3714 | rceil: rceil,
|
---|
3715 | rcub: rcub,
|
---|
3716 | Rcy: Rcy,
|
---|
3717 | rcy: rcy,
|
---|
3718 | rdca: rdca,
|
---|
3719 | rdldhar: rdldhar,
|
---|
3720 | rdquo: rdquo,
|
---|
3721 | rdquor: rdquor,
|
---|
3722 | rdsh: rdsh,
|
---|
3723 | real: real,
|
---|
3724 | realine: realine,
|
---|
3725 | realpart: realpart,
|
---|
3726 | reals: reals,
|
---|
3727 | Re: Re,
|
---|
3728 | rect: rect,
|
---|
3729 | reg: reg,
|
---|
3730 | REG: REG,
|
---|
3731 | ReverseElement: ReverseElement,
|
---|
3732 | ReverseEquilibrium: ReverseEquilibrium,
|
---|
3733 | ReverseUpEquilibrium: ReverseUpEquilibrium,
|
---|
3734 | rfisht: rfisht,
|
---|
3735 | rfloor: rfloor,
|
---|
3736 | rfr: rfr,
|
---|
3737 | Rfr: Rfr,
|
---|
3738 | rHar: rHar,
|
---|
3739 | rhard: rhard,
|
---|
3740 | rharu: rharu,
|
---|
3741 | rharul: rharul,
|
---|
3742 | Rho: Rho,
|
---|
3743 | rho: rho,
|
---|
3744 | rhov: rhov,
|
---|
3745 | RightAngleBracket: RightAngleBracket,
|
---|
3746 | RightArrowBar: RightArrowBar,
|
---|
3747 | rightarrow: rightarrow,
|
---|
3748 | RightArrow: RightArrow,
|
---|
3749 | Rightarrow: Rightarrow,
|
---|
3750 | RightArrowLeftArrow: RightArrowLeftArrow,
|
---|
3751 | rightarrowtail: rightarrowtail,
|
---|
3752 | RightCeiling: RightCeiling,
|
---|
3753 | RightDoubleBracket: RightDoubleBracket,
|
---|
3754 | RightDownTeeVector: RightDownTeeVector,
|
---|
3755 | RightDownVectorBar: RightDownVectorBar,
|
---|
3756 | RightDownVector: RightDownVector,
|
---|
3757 | RightFloor: RightFloor,
|
---|
3758 | rightharpoondown: rightharpoondown,
|
---|
3759 | rightharpoonup: rightharpoonup,
|
---|
3760 | rightleftarrows: rightleftarrows,
|
---|
3761 | rightleftharpoons: rightleftharpoons,
|
---|
3762 | rightrightarrows: rightrightarrows,
|
---|
3763 | rightsquigarrow: rightsquigarrow,
|
---|
3764 | RightTeeArrow: RightTeeArrow,
|
---|
3765 | RightTee: RightTee,
|
---|
3766 | RightTeeVector: RightTeeVector,
|
---|
3767 | rightthreetimes: rightthreetimes,
|
---|
3768 | RightTriangleBar: RightTriangleBar,
|
---|
3769 | RightTriangle: RightTriangle,
|
---|
3770 | RightTriangleEqual: RightTriangleEqual,
|
---|
3771 | RightUpDownVector: RightUpDownVector,
|
---|
3772 | RightUpTeeVector: RightUpTeeVector,
|
---|
3773 | RightUpVectorBar: RightUpVectorBar,
|
---|
3774 | RightUpVector: RightUpVector,
|
---|
3775 | RightVectorBar: RightVectorBar,
|
---|
3776 | RightVector: RightVector,
|
---|
3777 | ring: ring,
|
---|
3778 | risingdotseq: risingdotseq,
|
---|
3779 | rlarr: rlarr,
|
---|
3780 | rlhar: rlhar,
|
---|
3781 | rlm: rlm,
|
---|
3782 | rmoustache: rmoustache,
|
---|
3783 | rmoust: rmoust,
|
---|
3784 | rnmid: rnmid,
|
---|
3785 | roang: roang,
|
---|
3786 | roarr: roarr,
|
---|
3787 | robrk: robrk,
|
---|
3788 | ropar: ropar,
|
---|
3789 | ropf: ropf,
|
---|
3790 | Ropf: Ropf,
|
---|
3791 | roplus: roplus,
|
---|
3792 | rotimes: rotimes,
|
---|
3793 | RoundImplies: RoundImplies,
|
---|
3794 | rpar: rpar,
|
---|
3795 | rpargt: rpargt,
|
---|
3796 | rppolint: rppolint,
|
---|
3797 | rrarr: rrarr,
|
---|
3798 | Rrightarrow: Rrightarrow,
|
---|
3799 | rsaquo: rsaquo,
|
---|
3800 | rscr: rscr,
|
---|
3801 | Rscr: Rscr,
|
---|
3802 | rsh: rsh,
|
---|
3803 | Rsh: Rsh,
|
---|
3804 | rsqb: rsqb,
|
---|
3805 | rsquo: rsquo,
|
---|
3806 | rsquor: rsquor,
|
---|
3807 | rthree: rthree,
|
---|
3808 | rtimes: rtimes,
|
---|
3809 | rtri: rtri,
|
---|
3810 | rtrie: rtrie,
|
---|
3811 | rtrif: rtrif,
|
---|
3812 | rtriltri: rtriltri,
|
---|
3813 | RuleDelayed: RuleDelayed,
|
---|
3814 | ruluhar: ruluhar,
|
---|
3815 | rx: rx,
|
---|
3816 | Sacute: Sacute,
|
---|
3817 | sacute: sacute,
|
---|
3818 | sbquo: sbquo,
|
---|
3819 | scap: scap,
|
---|
3820 | Scaron: Scaron,
|
---|
3821 | scaron: scaron,
|
---|
3822 | Sc: Sc,
|
---|
3823 | sc: sc,
|
---|
3824 | sccue: sccue,
|
---|
3825 | sce: sce,
|
---|
3826 | scE: scE,
|
---|
3827 | Scedil: Scedil,
|
---|
3828 | scedil: scedil,
|
---|
3829 | Scirc: Scirc,
|
---|
3830 | scirc: scirc,
|
---|
3831 | scnap: scnap,
|
---|
3832 | scnE: scnE,
|
---|
3833 | scnsim: scnsim,
|
---|
3834 | scpolint: scpolint,
|
---|
3835 | scsim: scsim,
|
---|
3836 | Scy: Scy,
|
---|
3837 | scy: scy,
|
---|
3838 | sdotb: sdotb,
|
---|
3839 | sdot: sdot,
|
---|
3840 | sdote: sdote,
|
---|
3841 | searhk: searhk,
|
---|
3842 | searr: searr,
|
---|
3843 | seArr: seArr,
|
---|
3844 | searrow: searrow,
|
---|
3845 | sect: sect,
|
---|
3846 | semi: semi,
|
---|
3847 | seswar: seswar,
|
---|
3848 | setminus: setminus,
|
---|
3849 | setmn: setmn,
|
---|
3850 | sext: sext,
|
---|
3851 | Sfr: Sfr,
|
---|
3852 | sfr: sfr,
|
---|
3853 | sfrown: sfrown,
|
---|
3854 | sharp: sharp,
|
---|
3855 | SHCHcy: SHCHcy,
|
---|
3856 | shchcy: shchcy,
|
---|
3857 | SHcy: SHcy,
|
---|
3858 | shcy: shcy,
|
---|
3859 | ShortDownArrow: ShortDownArrow,
|
---|
3860 | ShortLeftArrow: ShortLeftArrow,
|
---|
3861 | shortmid: shortmid,
|
---|
3862 | shortparallel: shortparallel,
|
---|
3863 | ShortRightArrow: ShortRightArrow,
|
---|
3864 | ShortUpArrow: ShortUpArrow,
|
---|
3865 | shy: shy,
|
---|
3866 | Sigma: Sigma,
|
---|
3867 | sigma: sigma,
|
---|
3868 | sigmaf: sigmaf,
|
---|
3869 | sigmav: sigmav,
|
---|
3870 | sim: sim,
|
---|
3871 | simdot: simdot,
|
---|
3872 | sime: sime,
|
---|
3873 | simeq: simeq,
|
---|
3874 | simg: simg,
|
---|
3875 | simgE: simgE,
|
---|
3876 | siml: siml,
|
---|
3877 | simlE: simlE,
|
---|
3878 | simne: simne,
|
---|
3879 | simplus: simplus,
|
---|
3880 | simrarr: simrarr,
|
---|
3881 | slarr: slarr,
|
---|
3882 | SmallCircle: SmallCircle,
|
---|
3883 | smallsetminus: smallsetminus,
|
---|
3884 | smashp: smashp,
|
---|
3885 | smeparsl: smeparsl,
|
---|
3886 | smid: smid,
|
---|
3887 | smile: smile,
|
---|
3888 | smt: smt,
|
---|
3889 | smte: smte,
|
---|
3890 | smtes: smtes,
|
---|
3891 | SOFTcy: SOFTcy,
|
---|
3892 | softcy: softcy,
|
---|
3893 | solbar: solbar,
|
---|
3894 | solb: solb,
|
---|
3895 | sol: sol,
|
---|
3896 | Sopf: Sopf,
|
---|
3897 | sopf: sopf,
|
---|
3898 | spades: spades,
|
---|
3899 | spadesuit: spadesuit,
|
---|
3900 | spar: spar,
|
---|
3901 | sqcap: sqcap,
|
---|
3902 | sqcaps: sqcaps,
|
---|
3903 | sqcup: sqcup,
|
---|
3904 | sqcups: sqcups,
|
---|
3905 | Sqrt: Sqrt,
|
---|
3906 | sqsub: sqsub,
|
---|
3907 | sqsube: sqsube,
|
---|
3908 | sqsubset: sqsubset,
|
---|
3909 | sqsubseteq: sqsubseteq,
|
---|
3910 | sqsup: sqsup,
|
---|
3911 | sqsupe: sqsupe,
|
---|
3912 | sqsupset: sqsupset,
|
---|
3913 | sqsupseteq: sqsupseteq,
|
---|
3914 | square: square,
|
---|
3915 | Square: Square,
|
---|
3916 | SquareIntersection: SquareIntersection,
|
---|
3917 | SquareSubset: SquareSubset,
|
---|
3918 | SquareSubsetEqual: SquareSubsetEqual,
|
---|
3919 | SquareSuperset: SquareSuperset,
|
---|
3920 | SquareSupersetEqual: SquareSupersetEqual,
|
---|
3921 | SquareUnion: SquareUnion,
|
---|
3922 | squarf: squarf,
|
---|
3923 | squ: squ,
|
---|
3924 | squf: squf,
|
---|
3925 | srarr: srarr,
|
---|
3926 | Sscr: Sscr,
|
---|
3927 | sscr: sscr,
|
---|
3928 | ssetmn: ssetmn,
|
---|
3929 | ssmile: ssmile,
|
---|
3930 | sstarf: sstarf,
|
---|
3931 | Star: Star,
|
---|
3932 | star: star,
|
---|
3933 | starf: starf,
|
---|
3934 | straightepsilon: straightepsilon,
|
---|
3935 | straightphi: straightphi,
|
---|
3936 | strns: strns,
|
---|
3937 | sub: sub,
|
---|
3938 | Sub: Sub,
|
---|
3939 | subdot: subdot,
|
---|
3940 | subE: subE,
|
---|
3941 | sube: sube,
|
---|
3942 | subedot: subedot,
|
---|
3943 | submult: submult,
|
---|
3944 | subnE: subnE,
|
---|
3945 | subne: subne,
|
---|
3946 | subplus: subplus,
|
---|
3947 | subrarr: subrarr,
|
---|
3948 | subset: subset,
|
---|
3949 | Subset: Subset,
|
---|
3950 | subseteq: subseteq,
|
---|
3951 | subseteqq: subseteqq,
|
---|
3952 | SubsetEqual: SubsetEqual,
|
---|
3953 | subsetneq: subsetneq,
|
---|
3954 | subsetneqq: subsetneqq,
|
---|
3955 | subsim: subsim,
|
---|
3956 | subsub: subsub,
|
---|
3957 | subsup: subsup,
|
---|
3958 | succapprox: succapprox,
|
---|
3959 | succ: succ,
|
---|
3960 | succcurlyeq: succcurlyeq,
|
---|
3961 | Succeeds: Succeeds,
|
---|
3962 | SucceedsEqual: SucceedsEqual,
|
---|
3963 | SucceedsSlantEqual: SucceedsSlantEqual,
|
---|
3964 | SucceedsTilde: SucceedsTilde,
|
---|
3965 | succeq: succeq,
|
---|
3966 | succnapprox: succnapprox,
|
---|
3967 | succneqq: succneqq,
|
---|
3968 | succnsim: succnsim,
|
---|
3969 | succsim: succsim,
|
---|
3970 | SuchThat: SuchThat,
|
---|
3971 | sum: sum,
|
---|
3972 | Sum: Sum,
|
---|
3973 | sung: sung,
|
---|
3974 | sup1: sup1,
|
---|
3975 | sup2: sup2,
|
---|
3976 | sup3: sup3,
|
---|
3977 | sup: sup,
|
---|
3978 | Sup: Sup,
|
---|
3979 | supdot: supdot,
|
---|
3980 | supdsub: supdsub,
|
---|
3981 | supE: supE,
|
---|
3982 | supe: supe,
|
---|
3983 | supedot: supedot,
|
---|
3984 | Superset: Superset,
|
---|
3985 | SupersetEqual: SupersetEqual,
|
---|
3986 | suphsol: suphsol,
|
---|
3987 | suphsub: suphsub,
|
---|
3988 | suplarr: suplarr,
|
---|
3989 | supmult: supmult,
|
---|
3990 | supnE: supnE,
|
---|
3991 | supne: supne,
|
---|
3992 | supplus: supplus,
|
---|
3993 | supset: supset,
|
---|
3994 | Supset: Supset,
|
---|
3995 | supseteq: supseteq,
|
---|
3996 | supseteqq: supseteqq,
|
---|
3997 | supsetneq: supsetneq,
|
---|
3998 | supsetneqq: supsetneqq,
|
---|
3999 | supsim: supsim,
|
---|
4000 | supsub: supsub,
|
---|
4001 | supsup: supsup,
|
---|
4002 | swarhk: swarhk,
|
---|
4003 | swarr: swarr,
|
---|
4004 | swArr: swArr,
|
---|
4005 | swarrow: swarrow,
|
---|
4006 | swnwar: swnwar,
|
---|
4007 | szlig: szlig,
|
---|
4008 | Tab: Tab,
|
---|
4009 | target: target,
|
---|
4010 | Tau: Tau,
|
---|
4011 | tau: tau,
|
---|
4012 | tbrk: tbrk,
|
---|
4013 | Tcaron: Tcaron,
|
---|
4014 | tcaron: tcaron,
|
---|
4015 | Tcedil: Tcedil,
|
---|
4016 | tcedil: tcedil,
|
---|
4017 | Tcy: Tcy,
|
---|
4018 | tcy: tcy,
|
---|
4019 | tdot: tdot,
|
---|
4020 | telrec: telrec,
|
---|
4021 | Tfr: Tfr,
|
---|
4022 | tfr: tfr,
|
---|
4023 | there4: there4,
|
---|
4024 | therefore: therefore,
|
---|
4025 | Therefore: Therefore,
|
---|
4026 | Theta: Theta,
|
---|
4027 | theta: theta,
|
---|
4028 | thetasym: thetasym,
|
---|
4029 | thetav: thetav,
|
---|
4030 | thickapprox: thickapprox,
|
---|
4031 | thicksim: thicksim,
|
---|
4032 | ThickSpace: ThickSpace,
|
---|
4033 | ThinSpace: ThinSpace,
|
---|
4034 | thinsp: thinsp,
|
---|
4035 | thkap: thkap,
|
---|
4036 | thksim: thksim,
|
---|
4037 | THORN: THORN,
|
---|
4038 | thorn: thorn,
|
---|
4039 | tilde: tilde,
|
---|
4040 | Tilde: Tilde,
|
---|
4041 | TildeEqual: TildeEqual,
|
---|
4042 | TildeFullEqual: TildeFullEqual,
|
---|
4043 | TildeTilde: TildeTilde,
|
---|
4044 | timesbar: timesbar,
|
---|
4045 | timesb: timesb,
|
---|
4046 | times: times,
|
---|
4047 | timesd: timesd,
|
---|
4048 | tint: tint,
|
---|
4049 | toea: toea,
|
---|
4050 | topbot: topbot,
|
---|
4051 | topcir: topcir,
|
---|
4052 | top: top,
|
---|
4053 | Topf: Topf,
|
---|
4054 | topf: topf,
|
---|
4055 | topfork: topfork,
|
---|
4056 | tosa: tosa,
|
---|
4057 | tprime: tprime,
|
---|
4058 | trade: trade,
|
---|
4059 | TRADE: TRADE,
|
---|
4060 | triangle: triangle,
|
---|
4061 | triangledown: triangledown,
|
---|
4062 | triangleleft: triangleleft,
|
---|
4063 | trianglelefteq: trianglelefteq,
|
---|
4064 | triangleq: triangleq,
|
---|
4065 | triangleright: triangleright,
|
---|
4066 | trianglerighteq: trianglerighteq,
|
---|
4067 | tridot: tridot,
|
---|
4068 | trie: trie,
|
---|
4069 | triminus: triminus,
|
---|
4070 | TripleDot: TripleDot,
|
---|
4071 | triplus: triplus,
|
---|
4072 | trisb: trisb,
|
---|
4073 | tritime: tritime,
|
---|
4074 | trpezium: trpezium,
|
---|
4075 | Tscr: Tscr,
|
---|
4076 | tscr: tscr,
|
---|
4077 | TScy: TScy,
|
---|
4078 | tscy: tscy,
|
---|
4079 | TSHcy: TSHcy,
|
---|
4080 | tshcy: tshcy,
|
---|
4081 | Tstrok: Tstrok,
|
---|
4082 | tstrok: tstrok,
|
---|
4083 | twixt: twixt,
|
---|
4084 | twoheadleftarrow: twoheadleftarrow,
|
---|
4085 | twoheadrightarrow: twoheadrightarrow,
|
---|
4086 | Uacute: Uacute,
|
---|
4087 | uacute: uacute,
|
---|
4088 | uarr: uarr,
|
---|
4089 | Uarr: Uarr,
|
---|
4090 | uArr: uArr,
|
---|
4091 | Uarrocir: Uarrocir,
|
---|
4092 | Ubrcy: Ubrcy,
|
---|
4093 | ubrcy: ubrcy,
|
---|
4094 | Ubreve: Ubreve,
|
---|
4095 | ubreve: ubreve,
|
---|
4096 | Ucirc: Ucirc,
|
---|
4097 | ucirc: ucirc,
|
---|
4098 | Ucy: Ucy,
|
---|
4099 | ucy: ucy,
|
---|
4100 | udarr: udarr,
|
---|
4101 | Udblac: Udblac,
|
---|
4102 | udblac: udblac,
|
---|
4103 | udhar: udhar,
|
---|
4104 | ufisht: ufisht,
|
---|
4105 | Ufr: Ufr,
|
---|
4106 | ufr: ufr,
|
---|
4107 | Ugrave: Ugrave,
|
---|
4108 | ugrave: ugrave,
|
---|
4109 | uHar: uHar,
|
---|
4110 | uharl: uharl,
|
---|
4111 | uharr: uharr,
|
---|
4112 | uhblk: uhblk,
|
---|
4113 | ulcorn: ulcorn,
|
---|
4114 | ulcorner: ulcorner,
|
---|
4115 | ulcrop: ulcrop,
|
---|
4116 | ultri: ultri,
|
---|
4117 | Umacr: Umacr,
|
---|
4118 | umacr: umacr,
|
---|
4119 | uml: uml,
|
---|
4120 | UnderBar: UnderBar,
|
---|
4121 | UnderBrace: UnderBrace,
|
---|
4122 | UnderBracket: UnderBracket,
|
---|
4123 | UnderParenthesis: UnderParenthesis,
|
---|
4124 | Union: Union,
|
---|
4125 | UnionPlus: UnionPlus,
|
---|
4126 | Uogon: Uogon,
|
---|
4127 | uogon: uogon,
|
---|
4128 | Uopf: Uopf,
|
---|
4129 | uopf: uopf,
|
---|
4130 | UpArrowBar: UpArrowBar,
|
---|
4131 | uparrow: uparrow,
|
---|
4132 | UpArrow: UpArrow,
|
---|
4133 | Uparrow: Uparrow,
|
---|
4134 | UpArrowDownArrow: UpArrowDownArrow,
|
---|
4135 | updownarrow: updownarrow,
|
---|
4136 | UpDownArrow: UpDownArrow,
|
---|
4137 | Updownarrow: Updownarrow,
|
---|
4138 | UpEquilibrium: UpEquilibrium,
|
---|
4139 | upharpoonleft: upharpoonleft,
|
---|
4140 | upharpoonright: upharpoonright,
|
---|
4141 | uplus: uplus,
|
---|
4142 | UpperLeftArrow: UpperLeftArrow,
|
---|
4143 | UpperRightArrow: UpperRightArrow,
|
---|
4144 | upsi: upsi,
|
---|
4145 | Upsi: Upsi,
|
---|
4146 | upsih: upsih,
|
---|
4147 | Upsilon: Upsilon,
|
---|
4148 | upsilon: upsilon,
|
---|
4149 | UpTeeArrow: UpTeeArrow,
|
---|
4150 | UpTee: UpTee,
|
---|
4151 | upuparrows: upuparrows,
|
---|
4152 | urcorn: urcorn,
|
---|
4153 | urcorner: urcorner,
|
---|
4154 | urcrop: urcrop,
|
---|
4155 | Uring: Uring,
|
---|
4156 | uring: uring,
|
---|
4157 | urtri: urtri,
|
---|
4158 | Uscr: Uscr,
|
---|
4159 | uscr: uscr,
|
---|
4160 | utdot: utdot,
|
---|
4161 | Utilde: Utilde,
|
---|
4162 | utilde: utilde,
|
---|
4163 | utri: utri,
|
---|
4164 | utrif: utrif,
|
---|
4165 | uuarr: uuarr,
|
---|
4166 | Uuml: Uuml,
|
---|
4167 | uuml: uuml,
|
---|
4168 | uwangle: uwangle,
|
---|
4169 | vangrt: vangrt,
|
---|
4170 | varepsilon: varepsilon,
|
---|
4171 | varkappa: varkappa,
|
---|
4172 | varnothing: varnothing,
|
---|
4173 | varphi: varphi,
|
---|
4174 | varpi: varpi,
|
---|
4175 | varpropto: varpropto,
|
---|
4176 | varr: varr,
|
---|
4177 | vArr: vArr,
|
---|
4178 | varrho: varrho,
|
---|
4179 | varsigma: varsigma,
|
---|
4180 | varsubsetneq: varsubsetneq,
|
---|
4181 | varsubsetneqq: varsubsetneqq,
|
---|
4182 | varsupsetneq: varsupsetneq,
|
---|
4183 | varsupsetneqq: varsupsetneqq,
|
---|
4184 | vartheta: vartheta,
|
---|
4185 | vartriangleleft: vartriangleleft,
|
---|
4186 | vartriangleright: vartriangleright,
|
---|
4187 | vBar: vBar,
|
---|
4188 | Vbar: Vbar,
|
---|
4189 | vBarv: vBarv,
|
---|
4190 | Vcy: Vcy,
|
---|
4191 | vcy: vcy,
|
---|
4192 | vdash: vdash,
|
---|
4193 | vDash: vDash,
|
---|
4194 | Vdash: Vdash,
|
---|
4195 | VDash: VDash,
|
---|
4196 | Vdashl: Vdashl,
|
---|
4197 | veebar: veebar,
|
---|
4198 | vee: vee,
|
---|
4199 | Vee: Vee,
|
---|
4200 | veeeq: veeeq,
|
---|
4201 | vellip: vellip,
|
---|
4202 | verbar: verbar,
|
---|
4203 | Verbar: Verbar,
|
---|
4204 | vert: vert,
|
---|
4205 | Vert: Vert,
|
---|
4206 | VerticalBar: VerticalBar,
|
---|
4207 | VerticalLine: VerticalLine,
|
---|
4208 | VerticalSeparator: VerticalSeparator,
|
---|
4209 | VerticalTilde: VerticalTilde,
|
---|
4210 | VeryThinSpace: VeryThinSpace,
|
---|
4211 | Vfr: Vfr,
|
---|
4212 | vfr: vfr,
|
---|
4213 | vltri: vltri,
|
---|
4214 | vnsub: vnsub,
|
---|
4215 | vnsup: vnsup,
|
---|
4216 | Vopf: Vopf,
|
---|
4217 | vopf: vopf,
|
---|
4218 | vprop: vprop,
|
---|
4219 | vrtri: vrtri,
|
---|
4220 | Vscr: Vscr,
|
---|
4221 | vscr: vscr,
|
---|
4222 | vsubnE: vsubnE,
|
---|
4223 | vsubne: vsubne,
|
---|
4224 | vsupnE: vsupnE,
|
---|
4225 | vsupne: vsupne,
|
---|
4226 | Vvdash: Vvdash,
|
---|
4227 | vzigzag: vzigzag,
|
---|
4228 | Wcirc: Wcirc,
|
---|
4229 | wcirc: wcirc,
|
---|
4230 | wedbar: wedbar,
|
---|
4231 | wedge: wedge,
|
---|
4232 | Wedge: Wedge,
|
---|
4233 | wedgeq: wedgeq,
|
---|
4234 | weierp: weierp,
|
---|
4235 | Wfr: Wfr,
|
---|
4236 | wfr: wfr,
|
---|
4237 | Wopf: Wopf,
|
---|
4238 | wopf: wopf,
|
---|
4239 | wp: wp,
|
---|
4240 | wr: wr,
|
---|
4241 | wreath: wreath,
|
---|
4242 | Wscr: Wscr,
|
---|
4243 | wscr: wscr,
|
---|
4244 | xcap: xcap,
|
---|
4245 | xcirc: xcirc,
|
---|
4246 | xcup: xcup,
|
---|
4247 | xdtri: xdtri,
|
---|
4248 | Xfr: Xfr,
|
---|
4249 | xfr: xfr,
|
---|
4250 | xharr: xharr,
|
---|
4251 | xhArr: xhArr,
|
---|
4252 | Xi: Xi,
|
---|
4253 | xi: xi,
|
---|
4254 | xlarr: xlarr,
|
---|
4255 | xlArr: xlArr,
|
---|
4256 | xmap: xmap,
|
---|
4257 | xnis: xnis,
|
---|
4258 | xodot: xodot,
|
---|
4259 | Xopf: Xopf,
|
---|
4260 | xopf: xopf,
|
---|
4261 | xoplus: xoplus,
|
---|
4262 | xotime: xotime,
|
---|
4263 | xrarr: xrarr,
|
---|
4264 | xrArr: xrArr,
|
---|
4265 | Xscr: Xscr,
|
---|
4266 | xscr: xscr,
|
---|
4267 | xsqcup: xsqcup,
|
---|
4268 | xuplus: xuplus,
|
---|
4269 | xutri: xutri,
|
---|
4270 | xvee: xvee,
|
---|
4271 | xwedge: xwedge,
|
---|
4272 | Yacute: Yacute,
|
---|
4273 | yacute: yacute,
|
---|
4274 | YAcy: YAcy,
|
---|
4275 | yacy: yacy,
|
---|
4276 | Ycirc: Ycirc,
|
---|
4277 | ycirc: ycirc,
|
---|
4278 | Ycy: Ycy,
|
---|
4279 | ycy: ycy,
|
---|
4280 | yen: yen,
|
---|
4281 | Yfr: Yfr,
|
---|
4282 | yfr: yfr,
|
---|
4283 | YIcy: YIcy,
|
---|
4284 | yicy: yicy,
|
---|
4285 | Yopf: Yopf,
|
---|
4286 | yopf: yopf,
|
---|
4287 | Yscr: Yscr,
|
---|
4288 | yscr: yscr,
|
---|
4289 | YUcy: YUcy,
|
---|
4290 | yucy: yucy,
|
---|
4291 | yuml: yuml,
|
---|
4292 | Yuml: Yuml,
|
---|
4293 | Zacute: Zacute,
|
---|
4294 | zacute: zacute,
|
---|
4295 | Zcaron: Zcaron,
|
---|
4296 | zcaron: zcaron,
|
---|
4297 | Zcy: Zcy,
|
---|
4298 | zcy: zcy,
|
---|
4299 | Zdot: Zdot,
|
---|
4300 | zdot: zdot,
|
---|
4301 | zeetrf: zeetrf,
|
---|
4302 | ZeroWidthSpace: ZeroWidthSpace,
|
---|
4303 | Zeta: Zeta,
|
---|
4304 | zeta: zeta,
|
---|
4305 | zfr: zfr,
|
---|
4306 | Zfr: Zfr,
|
---|
4307 | ZHcy: ZHcy,
|
---|
4308 | zhcy: zhcy,
|
---|
4309 | zigrarr: zigrarr,
|
---|
4310 | zopf: zopf,
|
---|
4311 | Zopf: Zopf,
|
---|
4312 | Zscr: Zscr,
|
---|
4313 | zscr: zscr,
|
---|
4314 | zwj: zwj,
|
---|
4315 | zwnj: zwnj
|
---|
4316 | };
|
---|
4317 |
|
---|
4318 | var entities$1 = {
|
---|
4319 | __proto__: null,
|
---|
4320 | Aacute: Aacute,
|
---|
4321 | aacute: aacute,
|
---|
4322 | Abreve: Abreve,
|
---|
4323 | abreve: abreve,
|
---|
4324 | ac: ac,
|
---|
4325 | acd: acd,
|
---|
4326 | acE: acE,
|
---|
4327 | Acirc: Acirc,
|
---|
4328 | acirc: acirc,
|
---|
4329 | acute: acute,
|
---|
4330 | Acy: Acy,
|
---|
4331 | acy: acy,
|
---|
4332 | AElig: AElig,
|
---|
4333 | aelig: aelig,
|
---|
4334 | af: af,
|
---|
4335 | Afr: Afr,
|
---|
4336 | afr: afr,
|
---|
4337 | Agrave: Agrave,
|
---|
4338 | agrave: agrave,
|
---|
4339 | alefsym: alefsym,
|
---|
4340 | aleph: aleph,
|
---|
4341 | Alpha: Alpha,
|
---|
4342 | alpha: alpha,
|
---|
4343 | Amacr: Amacr,
|
---|
4344 | amacr: amacr,
|
---|
4345 | amalg: amalg,
|
---|
4346 | amp: amp,
|
---|
4347 | AMP: AMP,
|
---|
4348 | andand: andand,
|
---|
4349 | And: And,
|
---|
4350 | and: and,
|
---|
4351 | andd: andd,
|
---|
4352 | andslope: andslope,
|
---|
4353 | andv: andv,
|
---|
4354 | ang: ang,
|
---|
4355 | ange: ange,
|
---|
4356 | angle: angle,
|
---|
4357 | angmsdaa: angmsdaa,
|
---|
4358 | angmsdab: angmsdab,
|
---|
4359 | angmsdac: angmsdac,
|
---|
4360 | angmsdad: angmsdad,
|
---|
4361 | angmsdae: angmsdae,
|
---|
4362 | angmsdaf: angmsdaf,
|
---|
4363 | angmsdag: angmsdag,
|
---|
4364 | angmsdah: angmsdah,
|
---|
4365 | angmsd: angmsd,
|
---|
4366 | angrt: angrt,
|
---|
4367 | angrtvb: angrtvb,
|
---|
4368 | angrtvbd: angrtvbd,
|
---|
4369 | angsph: angsph,
|
---|
4370 | angst: angst,
|
---|
4371 | angzarr: angzarr,
|
---|
4372 | Aogon: Aogon,
|
---|
4373 | aogon: aogon,
|
---|
4374 | Aopf: Aopf,
|
---|
4375 | aopf: aopf,
|
---|
4376 | apacir: apacir,
|
---|
4377 | ap: ap,
|
---|
4378 | apE: apE,
|
---|
4379 | ape: ape,
|
---|
4380 | apid: apid,
|
---|
4381 | apos: apos,
|
---|
4382 | ApplyFunction: ApplyFunction,
|
---|
4383 | approx: approx,
|
---|
4384 | approxeq: approxeq,
|
---|
4385 | Aring: Aring,
|
---|
4386 | aring: aring,
|
---|
4387 | Ascr: Ascr,
|
---|
4388 | ascr: ascr,
|
---|
4389 | Assign: Assign,
|
---|
4390 | ast: ast,
|
---|
4391 | asymp: asymp,
|
---|
4392 | asympeq: asympeq,
|
---|
4393 | Atilde: Atilde,
|
---|
4394 | atilde: atilde,
|
---|
4395 | Auml: Auml,
|
---|
4396 | auml: auml,
|
---|
4397 | awconint: awconint,
|
---|
4398 | awint: awint,
|
---|
4399 | backcong: backcong,
|
---|
4400 | backepsilon: backepsilon,
|
---|
4401 | backprime: backprime,
|
---|
4402 | backsim: backsim,
|
---|
4403 | backsimeq: backsimeq,
|
---|
4404 | Backslash: Backslash,
|
---|
4405 | Barv: Barv,
|
---|
4406 | barvee: barvee,
|
---|
4407 | barwed: barwed,
|
---|
4408 | Barwed: Barwed,
|
---|
4409 | barwedge: barwedge,
|
---|
4410 | bbrk: bbrk,
|
---|
4411 | bbrktbrk: bbrktbrk,
|
---|
4412 | bcong: bcong,
|
---|
4413 | Bcy: Bcy,
|
---|
4414 | bcy: bcy,
|
---|
4415 | bdquo: bdquo,
|
---|
4416 | becaus: becaus,
|
---|
4417 | because: because,
|
---|
4418 | Because: Because,
|
---|
4419 | bemptyv: bemptyv,
|
---|
4420 | bepsi: bepsi,
|
---|
4421 | bernou: bernou,
|
---|
4422 | Bernoullis: Bernoullis,
|
---|
4423 | Beta: Beta,
|
---|
4424 | beta: beta,
|
---|
4425 | beth: beth,
|
---|
4426 | between: between,
|
---|
4427 | Bfr: Bfr,
|
---|
4428 | bfr: bfr,
|
---|
4429 | bigcap: bigcap,
|
---|
4430 | bigcirc: bigcirc,
|
---|
4431 | bigcup: bigcup,
|
---|
4432 | bigodot: bigodot,
|
---|
4433 | bigoplus: bigoplus,
|
---|
4434 | bigotimes: bigotimes,
|
---|
4435 | bigsqcup: bigsqcup,
|
---|
4436 | bigstar: bigstar,
|
---|
4437 | bigtriangledown: bigtriangledown,
|
---|
4438 | bigtriangleup: bigtriangleup,
|
---|
4439 | biguplus: biguplus,
|
---|
4440 | bigvee: bigvee,
|
---|
4441 | bigwedge: bigwedge,
|
---|
4442 | bkarow: bkarow,
|
---|
4443 | blacklozenge: blacklozenge,
|
---|
4444 | blacksquare: blacksquare,
|
---|
4445 | blacktriangle: blacktriangle,
|
---|
4446 | blacktriangledown: blacktriangledown,
|
---|
4447 | blacktriangleleft: blacktriangleleft,
|
---|
4448 | blacktriangleright: blacktriangleright,
|
---|
4449 | blank: blank,
|
---|
4450 | blk12: blk12,
|
---|
4451 | blk14: blk14,
|
---|
4452 | blk34: blk34,
|
---|
4453 | block: block,
|
---|
4454 | bne: bne,
|
---|
4455 | bnequiv: bnequiv,
|
---|
4456 | bNot: bNot,
|
---|
4457 | bnot: bnot,
|
---|
4458 | Bopf: Bopf,
|
---|
4459 | bopf: bopf,
|
---|
4460 | bot: bot,
|
---|
4461 | bottom: bottom,
|
---|
4462 | bowtie: bowtie,
|
---|
4463 | boxbox: boxbox,
|
---|
4464 | boxdl: boxdl,
|
---|
4465 | boxdL: boxdL,
|
---|
4466 | boxDl: boxDl,
|
---|
4467 | boxDL: boxDL,
|
---|
4468 | boxdr: boxdr,
|
---|
4469 | boxdR: boxdR,
|
---|
4470 | boxDr: boxDr,
|
---|
4471 | boxDR: boxDR,
|
---|
4472 | boxh: boxh,
|
---|
4473 | boxH: boxH,
|
---|
4474 | boxhd: boxhd,
|
---|
4475 | boxHd: boxHd,
|
---|
4476 | boxhD: boxhD,
|
---|
4477 | boxHD: boxHD,
|
---|
4478 | boxhu: boxhu,
|
---|
4479 | boxHu: boxHu,
|
---|
4480 | boxhU: boxhU,
|
---|
4481 | boxHU: boxHU,
|
---|
4482 | boxminus: boxminus,
|
---|
4483 | boxplus: boxplus,
|
---|
4484 | boxtimes: boxtimes,
|
---|
4485 | boxul: boxul,
|
---|
4486 | boxuL: boxuL,
|
---|
4487 | boxUl: boxUl,
|
---|
4488 | boxUL: boxUL,
|
---|
4489 | boxur: boxur,
|
---|
4490 | boxuR: boxuR,
|
---|
4491 | boxUr: boxUr,
|
---|
4492 | boxUR: boxUR,
|
---|
4493 | boxv: boxv,
|
---|
4494 | boxV: boxV,
|
---|
4495 | boxvh: boxvh,
|
---|
4496 | boxvH: boxvH,
|
---|
4497 | boxVh: boxVh,
|
---|
4498 | boxVH: boxVH,
|
---|
4499 | boxvl: boxvl,
|
---|
4500 | boxvL: boxvL,
|
---|
4501 | boxVl: boxVl,
|
---|
4502 | boxVL: boxVL,
|
---|
4503 | boxvr: boxvr,
|
---|
4504 | boxvR: boxvR,
|
---|
4505 | boxVr: boxVr,
|
---|
4506 | boxVR: boxVR,
|
---|
4507 | bprime: bprime,
|
---|
4508 | breve: breve,
|
---|
4509 | Breve: Breve,
|
---|
4510 | brvbar: brvbar,
|
---|
4511 | bscr: bscr,
|
---|
4512 | Bscr: Bscr,
|
---|
4513 | bsemi: bsemi,
|
---|
4514 | bsim: bsim,
|
---|
4515 | bsime: bsime,
|
---|
4516 | bsolb: bsolb,
|
---|
4517 | bsol: bsol,
|
---|
4518 | bsolhsub: bsolhsub,
|
---|
4519 | bull: bull,
|
---|
4520 | bullet: bullet,
|
---|
4521 | bump: bump,
|
---|
4522 | bumpE: bumpE,
|
---|
4523 | bumpe: bumpe,
|
---|
4524 | Bumpeq: Bumpeq,
|
---|
4525 | bumpeq: bumpeq,
|
---|
4526 | Cacute: Cacute,
|
---|
4527 | cacute: cacute,
|
---|
4528 | capand: capand,
|
---|
4529 | capbrcup: capbrcup,
|
---|
4530 | capcap: capcap,
|
---|
4531 | cap: cap,
|
---|
4532 | Cap: Cap,
|
---|
4533 | capcup: capcup,
|
---|
4534 | capdot: capdot,
|
---|
4535 | CapitalDifferentialD: CapitalDifferentialD,
|
---|
4536 | caps: caps,
|
---|
4537 | caret: caret,
|
---|
4538 | caron: caron,
|
---|
4539 | Cayleys: Cayleys,
|
---|
4540 | ccaps: ccaps,
|
---|
4541 | Ccaron: Ccaron,
|
---|
4542 | ccaron: ccaron,
|
---|
4543 | Ccedil: Ccedil,
|
---|
4544 | ccedil: ccedil,
|
---|
4545 | Ccirc: Ccirc,
|
---|
4546 | ccirc: ccirc,
|
---|
4547 | Cconint: Cconint,
|
---|
4548 | ccups: ccups,
|
---|
4549 | ccupssm: ccupssm,
|
---|
4550 | Cdot: Cdot,
|
---|
4551 | cdot: cdot,
|
---|
4552 | cedil: cedil,
|
---|
4553 | Cedilla: Cedilla,
|
---|
4554 | cemptyv: cemptyv,
|
---|
4555 | cent: cent,
|
---|
4556 | centerdot: centerdot,
|
---|
4557 | CenterDot: CenterDot,
|
---|
4558 | cfr: cfr,
|
---|
4559 | Cfr: Cfr,
|
---|
4560 | CHcy: CHcy,
|
---|
4561 | chcy: chcy,
|
---|
4562 | check: check,
|
---|
4563 | checkmark: checkmark,
|
---|
4564 | Chi: Chi,
|
---|
4565 | chi: chi,
|
---|
4566 | circ: circ,
|
---|
4567 | circeq: circeq,
|
---|
4568 | circlearrowleft: circlearrowleft,
|
---|
4569 | circlearrowright: circlearrowright,
|
---|
4570 | circledast: circledast,
|
---|
4571 | circledcirc: circledcirc,
|
---|
4572 | circleddash: circleddash,
|
---|
4573 | CircleDot: CircleDot,
|
---|
4574 | circledR: circledR,
|
---|
4575 | circledS: circledS,
|
---|
4576 | CircleMinus: CircleMinus,
|
---|
4577 | CirclePlus: CirclePlus,
|
---|
4578 | CircleTimes: CircleTimes,
|
---|
4579 | cir: cir,
|
---|
4580 | cirE: cirE,
|
---|
4581 | cire: cire,
|
---|
4582 | cirfnint: cirfnint,
|
---|
4583 | cirmid: cirmid,
|
---|
4584 | cirscir: cirscir,
|
---|
4585 | ClockwiseContourIntegral: ClockwiseContourIntegral,
|
---|
4586 | CloseCurlyDoubleQuote: CloseCurlyDoubleQuote,
|
---|
4587 | CloseCurlyQuote: CloseCurlyQuote,
|
---|
4588 | clubs: clubs,
|
---|
4589 | clubsuit: clubsuit,
|
---|
4590 | colon: colon,
|
---|
4591 | Colon: Colon,
|
---|
4592 | Colone: Colone,
|
---|
4593 | colone: colone,
|
---|
4594 | coloneq: coloneq,
|
---|
4595 | comma: comma,
|
---|
4596 | commat: commat,
|
---|
4597 | comp: comp,
|
---|
4598 | compfn: compfn,
|
---|
4599 | complement: complement,
|
---|
4600 | complexes: complexes,
|
---|
4601 | cong: cong,
|
---|
4602 | congdot: congdot,
|
---|
4603 | Congruent: Congruent,
|
---|
4604 | conint: conint,
|
---|
4605 | Conint: Conint,
|
---|
4606 | ContourIntegral: ContourIntegral,
|
---|
4607 | copf: copf,
|
---|
4608 | Copf: Copf,
|
---|
4609 | coprod: coprod,
|
---|
4610 | Coproduct: Coproduct,
|
---|
4611 | copy: copy,
|
---|
4612 | COPY: COPY,
|
---|
4613 | copysr: copysr,
|
---|
4614 | CounterClockwiseContourIntegral: CounterClockwiseContourIntegral,
|
---|
4615 | crarr: crarr,
|
---|
4616 | cross: cross,
|
---|
4617 | Cross: Cross,
|
---|
4618 | Cscr: Cscr,
|
---|
4619 | cscr: cscr,
|
---|
4620 | csub: csub,
|
---|
4621 | csube: csube,
|
---|
4622 | csup: csup,
|
---|
4623 | csupe: csupe,
|
---|
4624 | ctdot: ctdot,
|
---|
4625 | cudarrl: cudarrl,
|
---|
4626 | cudarrr: cudarrr,
|
---|
4627 | cuepr: cuepr,
|
---|
4628 | cuesc: cuesc,
|
---|
4629 | cularr: cularr,
|
---|
4630 | cularrp: cularrp,
|
---|
4631 | cupbrcap: cupbrcap,
|
---|
4632 | cupcap: cupcap,
|
---|
4633 | CupCap: CupCap,
|
---|
4634 | cup: cup,
|
---|
4635 | Cup: Cup,
|
---|
4636 | cupcup: cupcup,
|
---|
4637 | cupdot: cupdot,
|
---|
4638 | cupor: cupor,
|
---|
4639 | cups: cups,
|
---|
4640 | curarr: curarr,
|
---|
4641 | curarrm: curarrm,
|
---|
4642 | curlyeqprec: curlyeqprec,
|
---|
4643 | curlyeqsucc: curlyeqsucc,
|
---|
4644 | curlyvee: curlyvee,
|
---|
4645 | curlywedge: curlywedge,
|
---|
4646 | curren: curren,
|
---|
4647 | curvearrowleft: curvearrowleft,
|
---|
4648 | curvearrowright: curvearrowright,
|
---|
4649 | cuvee: cuvee,
|
---|
4650 | cuwed: cuwed,
|
---|
4651 | cwconint: cwconint,
|
---|
4652 | cwint: cwint,
|
---|
4653 | cylcty: cylcty,
|
---|
4654 | dagger: dagger,
|
---|
4655 | Dagger: Dagger,
|
---|
4656 | daleth: daleth,
|
---|
4657 | darr: darr,
|
---|
4658 | Darr: Darr,
|
---|
4659 | dArr: dArr,
|
---|
4660 | dash: dash,
|
---|
4661 | Dashv: Dashv,
|
---|
4662 | dashv: dashv,
|
---|
4663 | dbkarow: dbkarow,
|
---|
4664 | dblac: dblac,
|
---|
4665 | Dcaron: Dcaron,
|
---|
4666 | dcaron: dcaron,
|
---|
4667 | Dcy: Dcy,
|
---|
4668 | dcy: dcy,
|
---|
4669 | ddagger: ddagger,
|
---|
4670 | ddarr: ddarr,
|
---|
4671 | DD: DD,
|
---|
4672 | dd: dd,
|
---|
4673 | DDotrahd: DDotrahd,
|
---|
4674 | ddotseq: ddotseq,
|
---|
4675 | deg: deg,
|
---|
4676 | Del: Del,
|
---|
4677 | Delta: Delta,
|
---|
4678 | delta: delta,
|
---|
4679 | demptyv: demptyv,
|
---|
4680 | dfisht: dfisht,
|
---|
4681 | Dfr: Dfr,
|
---|
4682 | dfr: dfr,
|
---|
4683 | dHar: dHar,
|
---|
4684 | dharl: dharl,
|
---|
4685 | dharr: dharr,
|
---|
4686 | DiacriticalAcute: DiacriticalAcute,
|
---|
4687 | DiacriticalDot: DiacriticalDot,
|
---|
4688 | DiacriticalDoubleAcute: DiacriticalDoubleAcute,
|
---|
4689 | DiacriticalGrave: DiacriticalGrave,
|
---|
4690 | DiacriticalTilde: DiacriticalTilde,
|
---|
4691 | diam: diam,
|
---|
4692 | diamond: diamond,
|
---|
4693 | Diamond: Diamond,
|
---|
4694 | diamondsuit: diamondsuit,
|
---|
4695 | diams: diams,
|
---|
4696 | die: die,
|
---|
4697 | DifferentialD: DifferentialD,
|
---|
4698 | digamma: digamma,
|
---|
4699 | disin: disin,
|
---|
4700 | div: div,
|
---|
4701 | divide: divide,
|
---|
4702 | divideontimes: divideontimes,
|
---|
4703 | divonx: divonx,
|
---|
4704 | DJcy: DJcy,
|
---|
4705 | djcy: djcy,
|
---|
4706 | dlcorn: dlcorn,
|
---|
4707 | dlcrop: dlcrop,
|
---|
4708 | dollar: dollar,
|
---|
4709 | Dopf: Dopf,
|
---|
4710 | dopf: dopf,
|
---|
4711 | Dot: Dot,
|
---|
4712 | dot: dot,
|
---|
4713 | DotDot: DotDot,
|
---|
4714 | doteq: doteq,
|
---|
4715 | doteqdot: doteqdot,
|
---|
4716 | DotEqual: DotEqual,
|
---|
4717 | dotminus: dotminus,
|
---|
4718 | dotplus: dotplus,
|
---|
4719 | dotsquare: dotsquare,
|
---|
4720 | doublebarwedge: doublebarwedge,
|
---|
4721 | DoubleContourIntegral: DoubleContourIntegral,
|
---|
4722 | DoubleDot: DoubleDot,
|
---|
4723 | DoubleDownArrow: DoubleDownArrow,
|
---|
4724 | DoubleLeftArrow: DoubleLeftArrow,
|
---|
4725 | DoubleLeftRightArrow: DoubleLeftRightArrow,
|
---|
4726 | DoubleLeftTee: DoubleLeftTee,
|
---|
4727 | DoubleLongLeftArrow: DoubleLongLeftArrow,
|
---|
4728 | DoubleLongLeftRightArrow: DoubleLongLeftRightArrow,
|
---|
4729 | DoubleLongRightArrow: DoubleLongRightArrow,
|
---|
4730 | DoubleRightArrow: DoubleRightArrow,
|
---|
4731 | DoubleRightTee: DoubleRightTee,
|
---|
4732 | DoubleUpArrow: DoubleUpArrow,
|
---|
4733 | DoubleUpDownArrow: DoubleUpDownArrow,
|
---|
4734 | DoubleVerticalBar: DoubleVerticalBar,
|
---|
4735 | DownArrowBar: DownArrowBar,
|
---|
4736 | downarrow: downarrow,
|
---|
4737 | DownArrow: DownArrow,
|
---|
4738 | Downarrow: Downarrow,
|
---|
4739 | DownArrowUpArrow: DownArrowUpArrow,
|
---|
4740 | DownBreve: DownBreve,
|
---|
4741 | downdownarrows: downdownarrows,
|
---|
4742 | downharpoonleft: downharpoonleft,
|
---|
4743 | downharpoonright: downharpoonright,
|
---|
4744 | DownLeftRightVector: DownLeftRightVector,
|
---|
4745 | DownLeftTeeVector: DownLeftTeeVector,
|
---|
4746 | DownLeftVectorBar: DownLeftVectorBar,
|
---|
4747 | DownLeftVector: DownLeftVector,
|
---|
4748 | DownRightTeeVector: DownRightTeeVector,
|
---|
4749 | DownRightVectorBar: DownRightVectorBar,
|
---|
4750 | DownRightVector: DownRightVector,
|
---|
4751 | DownTeeArrow: DownTeeArrow,
|
---|
4752 | DownTee: DownTee,
|
---|
4753 | drbkarow: drbkarow,
|
---|
4754 | drcorn: drcorn,
|
---|
4755 | drcrop: drcrop,
|
---|
4756 | Dscr: Dscr,
|
---|
4757 | dscr: dscr,
|
---|
4758 | DScy: DScy,
|
---|
4759 | dscy: dscy,
|
---|
4760 | dsol: dsol,
|
---|
4761 | Dstrok: Dstrok,
|
---|
4762 | dstrok: dstrok,
|
---|
4763 | dtdot: dtdot,
|
---|
4764 | dtri: dtri,
|
---|
4765 | dtrif: dtrif,
|
---|
4766 | duarr: duarr,
|
---|
4767 | duhar: duhar,
|
---|
4768 | dwangle: dwangle,
|
---|
4769 | DZcy: DZcy,
|
---|
4770 | dzcy: dzcy,
|
---|
4771 | dzigrarr: dzigrarr,
|
---|
4772 | Eacute: Eacute,
|
---|
4773 | eacute: eacute,
|
---|
4774 | easter: easter,
|
---|
4775 | Ecaron: Ecaron,
|
---|
4776 | ecaron: ecaron,
|
---|
4777 | Ecirc: Ecirc,
|
---|
4778 | ecirc: ecirc,
|
---|
4779 | ecir: ecir,
|
---|
4780 | ecolon: ecolon,
|
---|
4781 | Ecy: Ecy,
|
---|
4782 | ecy: ecy,
|
---|
4783 | eDDot: eDDot,
|
---|
4784 | Edot: Edot,
|
---|
4785 | edot: edot,
|
---|
4786 | eDot: eDot,
|
---|
4787 | ee: ee,
|
---|
4788 | efDot: efDot,
|
---|
4789 | Efr: Efr,
|
---|
4790 | efr: efr,
|
---|
4791 | eg: eg,
|
---|
4792 | Egrave: Egrave,
|
---|
4793 | egrave: egrave,
|
---|
4794 | egs: egs,
|
---|
4795 | egsdot: egsdot,
|
---|
4796 | el: el,
|
---|
4797 | Element: Element,
|
---|
4798 | elinters: elinters,
|
---|
4799 | ell: ell,
|
---|
4800 | els: els,
|
---|
4801 | elsdot: elsdot,
|
---|
4802 | Emacr: Emacr,
|
---|
4803 | emacr: emacr,
|
---|
4804 | empty: empty,
|
---|
4805 | emptyset: emptyset,
|
---|
4806 | EmptySmallSquare: EmptySmallSquare,
|
---|
4807 | emptyv: emptyv,
|
---|
4808 | EmptyVerySmallSquare: EmptyVerySmallSquare,
|
---|
4809 | emsp13: emsp13,
|
---|
4810 | emsp14: emsp14,
|
---|
4811 | emsp: emsp,
|
---|
4812 | ENG: ENG,
|
---|
4813 | eng: eng,
|
---|
4814 | ensp: ensp,
|
---|
4815 | Eogon: Eogon,
|
---|
4816 | eogon: eogon,
|
---|
4817 | Eopf: Eopf,
|
---|
4818 | eopf: eopf,
|
---|
4819 | epar: epar,
|
---|
4820 | eparsl: eparsl,
|
---|
4821 | eplus: eplus,
|
---|
4822 | epsi: epsi,
|
---|
4823 | Epsilon: Epsilon,
|
---|
4824 | epsilon: epsilon,
|
---|
4825 | epsiv: epsiv,
|
---|
4826 | eqcirc: eqcirc,
|
---|
4827 | eqcolon: eqcolon,
|
---|
4828 | eqsim: eqsim,
|
---|
4829 | eqslantgtr: eqslantgtr,
|
---|
4830 | eqslantless: eqslantless,
|
---|
4831 | Equal: Equal,
|
---|
4832 | equals: equals,
|
---|
4833 | EqualTilde: EqualTilde,
|
---|
4834 | equest: equest,
|
---|
4835 | Equilibrium: Equilibrium,
|
---|
4836 | equiv: equiv,
|
---|
4837 | equivDD: equivDD,
|
---|
4838 | eqvparsl: eqvparsl,
|
---|
4839 | erarr: erarr,
|
---|
4840 | erDot: erDot,
|
---|
4841 | escr: escr,
|
---|
4842 | Escr: Escr,
|
---|
4843 | esdot: esdot,
|
---|
4844 | Esim: Esim,
|
---|
4845 | esim: esim,
|
---|
4846 | Eta: Eta,
|
---|
4847 | eta: eta,
|
---|
4848 | ETH: ETH,
|
---|
4849 | eth: eth,
|
---|
4850 | Euml: Euml,
|
---|
4851 | euml: euml,
|
---|
4852 | euro: euro,
|
---|
4853 | excl: excl,
|
---|
4854 | exist: exist,
|
---|
4855 | Exists: Exists,
|
---|
4856 | expectation: expectation,
|
---|
4857 | exponentiale: exponentiale,
|
---|
4858 | ExponentialE: ExponentialE,
|
---|
4859 | fallingdotseq: fallingdotseq,
|
---|
4860 | Fcy: Fcy,
|
---|
4861 | fcy: fcy,
|
---|
4862 | female: female,
|
---|
4863 | ffilig: ffilig,
|
---|
4864 | fflig: fflig,
|
---|
4865 | ffllig: ffllig,
|
---|
4866 | Ffr: Ffr,
|
---|
4867 | ffr: ffr,
|
---|
4868 | filig: filig,
|
---|
4869 | FilledSmallSquare: FilledSmallSquare,
|
---|
4870 | FilledVerySmallSquare: FilledVerySmallSquare,
|
---|
4871 | fjlig: fjlig,
|
---|
4872 | flat: flat,
|
---|
4873 | fllig: fllig,
|
---|
4874 | fltns: fltns,
|
---|
4875 | fnof: fnof,
|
---|
4876 | Fopf: Fopf,
|
---|
4877 | fopf: fopf,
|
---|
4878 | forall: forall,
|
---|
4879 | ForAll: ForAll,
|
---|
4880 | fork: fork,
|
---|
4881 | forkv: forkv,
|
---|
4882 | Fouriertrf: Fouriertrf,
|
---|
4883 | fpartint: fpartint,
|
---|
4884 | frac12: frac12,
|
---|
4885 | frac13: frac13,
|
---|
4886 | frac14: frac14,
|
---|
4887 | frac15: frac15,
|
---|
4888 | frac16: frac16,
|
---|
4889 | frac18: frac18,
|
---|
4890 | frac23: frac23,
|
---|
4891 | frac25: frac25,
|
---|
4892 | frac34: frac34,
|
---|
4893 | frac35: frac35,
|
---|
4894 | frac38: frac38,
|
---|
4895 | frac45: frac45,
|
---|
4896 | frac56: frac56,
|
---|
4897 | frac58: frac58,
|
---|
4898 | frac78: frac78,
|
---|
4899 | frasl: frasl,
|
---|
4900 | frown: frown,
|
---|
4901 | fscr: fscr,
|
---|
4902 | Fscr: Fscr,
|
---|
4903 | gacute: gacute,
|
---|
4904 | Gamma: Gamma,
|
---|
4905 | gamma: gamma,
|
---|
4906 | Gammad: Gammad,
|
---|
4907 | gammad: gammad,
|
---|
4908 | gap: gap,
|
---|
4909 | Gbreve: Gbreve,
|
---|
4910 | gbreve: gbreve,
|
---|
4911 | Gcedil: Gcedil,
|
---|
4912 | Gcirc: Gcirc,
|
---|
4913 | gcirc: gcirc,
|
---|
4914 | Gcy: Gcy,
|
---|
4915 | gcy: gcy,
|
---|
4916 | Gdot: Gdot,
|
---|
4917 | gdot: gdot,
|
---|
4918 | ge: ge,
|
---|
4919 | gE: gE,
|
---|
4920 | gEl: gEl,
|
---|
4921 | gel: gel,
|
---|
4922 | geq: geq,
|
---|
4923 | geqq: geqq,
|
---|
4924 | geqslant: geqslant,
|
---|
4925 | gescc: gescc,
|
---|
4926 | ges: ges,
|
---|
4927 | gesdot: gesdot,
|
---|
4928 | gesdoto: gesdoto,
|
---|
4929 | gesdotol: gesdotol,
|
---|
4930 | gesl: gesl,
|
---|
4931 | gesles: gesles,
|
---|
4932 | Gfr: Gfr,
|
---|
4933 | gfr: gfr,
|
---|
4934 | gg: gg,
|
---|
4935 | Gg: Gg,
|
---|
4936 | ggg: ggg,
|
---|
4937 | gimel: gimel,
|
---|
4938 | GJcy: GJcy,
|
---|
4939 | gjcy: gjcy,
|
---|
4940 | gla: gla,
|
---|
4941 | gl: gl,
|
---|
4942 | glE: glE,
|
---|
4943 | glj: glj,
|
---|
4944 | gnap: gnap,
|
---|
4945 | gnapprox: gnapprox,
|
---|
4946 | gne: gne,
|
---|
4947 | gnE: gnE,
|
---|
4948 | gneq: gneq,
|
---|
4949 | gneqq: gneqq,
|
---|
4950 | gnsim: gnsim,
|
---|
4951 | Gopf: Gopf,
|
---|
4952 | gopf: gopf,
|
---|
4953 | grave: grave,
|
---|
4954 | GreaterEqual: GreaterEqual,
|
---|
4955 | GreaterEqualLess: GreaterEqualLess,
|
---|
4956 | GreaterFullEqual: GreaterFullEqual,
|
---|
4957 | GreaterGreater: GreaterGreater,
|
---|
4958 | GreaterLess: GreaterLess,
|
---|
4959 | GreaterSlantEqual: GreaterSlantEqual,
|
---|
4960 | GreaterTilde: GreaterTilde,
|
---|
4961 | Gscr: Gscr,
|
---|
4962 | gscr: gscr,
|
---|
4963 | gsim: gsim,
|
---|
4964 | gsime: gsime,
|
---|
4965 | gsiml: gsiml,
|
---|
4966 | gtcc: gtcc,
|
---|
4967 | gtcir: gtcir,
|
---|
4968 | gt: gt,
|
---|
4969 | GT: GT,
|
---|
4970 | Gt: Gt,
|
---|
4971 | gtdot: gtdot,
|
---|
4972 | gtlPar: gtlPar,
|
---|
4973 | gtquest: gtquest,
|
---|
4974 | gtrapprox: gtrapprox,
|
---|
4975 | gtrarr: gtrarr,
|
---|
4976 | gtrdot: gtrdot,
|
---|
4977 | gtreqless: gtreqless,
|
---|
4978 | gtreqqless: gtreqqless,
|
---|
4979 | gtrless: gtrless,
|
---|
4980 | gtrsim: gtrsim,
|
---|
4981 | gvertneqq: gvertneqq,
|
---|
4982 | gvnE: gvnE,
|
---|
4983 | Hacek: Hacek,
|
---|
4984 | hairsp: hairsp,
|
---|
4985 | half: half,
|
---|
4986 | hamilt: hamilt,
|
---|
4987 | HARDcy: HARDcy,
|
---|
4988 | hardcy: hardcy,
|
---|
4989 | harrcir: harrcir,
|
---|
4990 | harr: harr,
|
---|
4991 | hArr: hArr,
|
---|
4992 | harrw: harrw,
|
---|
4993 | Hat: Hat,
|
---|
4994 | hbar: hbar,
|
---|
4995 | Hcirc: Hcirc,
|
---|
4996 | hcirc: hcirc,
|
---|
4997 | hearts: hearts,
|
---|
4998 | heartsuit: heartsuit,
|
---|
4999 | hellip: hellip,
|
---|
5000 | hercon: hercon,
|
---|
5001 | hfr: hfr,
|
---|
5002 | Hfr: Hfr,
|
---|
5003 | HilbertSpace: HilbertSpace,
|
---|
5004 | hksearow: hksearow,
|
---|
5005 | hkswarow: hkswarow,
|
---|
5006 | hoarr: hoarr,
|
---|
5007 | homtht: homtht,
|
---|
5008 | hookleftarrow: hookleftarrow,
|
---|
5009 | hookrightarrow: hookrightarrow,
|
---|
5010 | hopf: hopf,
|
---|
5011 | Hopf: Hopf,
|
---|
5012 | horbar: horbar,
|
---|
5013 | HorizontalLine: HorizontalLine,
|
---|
5014 | hscr: hscr,
|
---|
5015 | Hscr: Hscr,
|
---|
5016 | hslash: hslash,
|
---|
5017 | Hstrok: Hstrok,
|
---|
5018 | hstrok: hstrok,
|
---|
5019 | HumpDownHump: HumpDownHump,
|
---|
5020 | HumpEqual: HumpEqual,
|
---|
5021 | hybull: hybull,
|
---|
5022 | hyphen: hyphen,
|
---|
5023 | Iacute: Iacute,
|
---|
5024 | iacute: iacute,
|
---|
5025 | ic: ic,
|
---|
5026 | Icirc: Icirc,
|
---|
5027 | icirc: icirc,
|
---|
5028 | Icy: Icy,
|
---|
5029 | icy: icy,
|
---|
5030 | Idot: Idot,
|
---|
5031 | IEcy: IEcy,
|
---|
5032 | iecy: iecy,
|
---|
5033 | iexcl: iexcl,
|
---|
5034 | iff: iff,
|
---|
5035 | ifr: ifr,
|
---|
5036 | Ifr: Ifr,
|
---|
5037 | Igrave: Igrave,
|
---|
5038 | igrave: igrave,
|
---|
5039 | ii: ii,
|
---|
5040 | iiiint: iiiint,
|
---|
5041 | iiint: iiint,
|
---|
5042 | iinfin: iinfin,
|
---|
5043 | iiota: iiota,
|
---|
5044 | IJlig: IJlig,
|
---|
5045 | ijlig: ijlig,
|
---|
5046 | Imacr: Imacr,
|
---|
5047 | imacr: imacr,
|
---|
5048 | image: image,
|
---|
5049 | ImaginaryI: ImaginaryI,
|
---|
5050 | imagline: imagline,
|
---|
5051 | imagpart: imagpart,
|
---|
5052 | imath: imath,
|
---|
5053 | Im: Im,
|
---|
5054 | imof: imof,
|
---|
5055 | imped: imped,
|
---|
5056 | Implies: Implies,
|
---|
5057 | incare: incare,
|
---|
5058 | infin: infin,
|
---|
5059 | infintie: infintie,
|
---|
5060 | inodot: inodot,
|
---|
5061 | intcal: intcal,
|
---|
5062 | int: int,
|
---|
5063 | Int: Int,
|
---|
5064 | integers: integers,
|
---|
5065 | Integral: Integral,
|
---|
5066 | intercal: intercal,
|
---|
5067 | Intersection: Intersection,
|
---|
5068 | intlarhk: intlarhk,
|
---|
5069 | intprod: intprod,
|
---|
5070 | InvisibleComma: InvisibleComma,
|
---|
5071 | InvisibleTimes: InvisibleTimes,
|
---|
5072 | IOcy: IOcy,
|
---|
5073 | iocy: iocy,
|
---|
5074 | Iogon: Iogon,
|
---|
5075 | iogon: iogon,
|
---|
5076 | Iopf: Iopf,
|
---|
5077 | iopf: iopf,
|
---|
5078 | Iota: Iota,
|
---|
5079 | iota: iota,
|
---|
5080 | iprod: iprod,
|
---|
5081 | iquest: iquest,
|
---|
5082 | iscr: iscr,
|
---|
5083 | Iscr: Iscr,
|
---|
5084 | isin: isin,
|
---|
5085 | isindot: isindot,
|
---|
5086 | isinE: isinE,
|
---|
5087 | isins: isins,
|
---|
5088 | isinsv: isinsv,
|
---|
5089 | isinv: isinv,
|
---|
5090 | it: it,
|
---|
5091 | Itilde: Itilde,
|
---|
5092 | itilde: itilde,
|
---|
5093 | Iukcy: Iukcy,
|
---|
5094 | iukcy: iukcy,
|
---|
5095 | Iuml: Iuml,
|
---|
5096 | iuml: iuml,
|
---|
5097 | Jcirc: Jcirc,
|
---|
5098 | jcirc: jcirc,
|
---|
5099 | Jcy: Jcy,
|
---|
5100 | jcy: jcy,
|
---|
5101 | Jfr: Jfr,
|
---|
5102 | jfr: jfr,
|
---|
5103 | jmath: jmath,
|
---|
5104 | Jopf: Jopf,
|
---|
5105 | jopf: jopf,
|
---|
5106 | Jscr: Jscr,
|
---|
5107 | jscr: jscr,
|
---|
5108 | Jsercy: Jsercy,
|
---|
5109 | jsercy: jsercy,
|
---|
5110 | Jukcy: Jukcy,
|
---|
5111 | jukcy: jukcy,
|
---|
5112 | Kappa: Kappa,
|
---|
5113 | kappa: kappa,
|
---|
5114 | kappav: kappav,
|
---|
5115 | Kcedil: Kcedil,
|
---|
5116 | kcedil: kcedil,
|
---|
5117 | Kcy: Kcy,
|
---|
5118 | kcy: kcy,
|
---|
5119 | Kfr: Kfr,
|
---|
5120 | kfr: kfr,
|
---|
5121 | kgreen: kgreen,
|
---|
5122 | KHcy: KHcy,
|
---|
5123 | khcy: khcy,
|
---|
5124 | KJcy: KJcy,
|
---|
5125 | kjcy: kjcy,
|
---|
5126 | Kopf: Kopf,
|
---|
5127 | kopf: kopf,
|
---|
5128 | Kscr: Kscr,
|
---|
5129 | kscr: kscr,
|
---|
5130 | lAarr: lAarr,
|
---|
5131 | Lacute: Lacute,
|
---|
5132 | lacute: lacute,
|
---|
5133 | laemptyv: laemptyv,
|
---|
5134 | lagran: lagran,
|
---|
5135 | Lambda: Lambda,
|
---|
5136 | lambda: lambda,
|
---|
5137 | lang: lang,
|
---|
5138 | Lang: Lang,
|
---|
5139 | langd: langd,
|
---|
5140 | langle: langle,
|
---|
5141 | lap: lap,
|
---|
5142 | Laplacetrf: Laplacetrf,
|
---|
5143 | laquo: laquo,
|
---|
5144 | larrb: larrb,
|
---|
5145 | larrbfs: larrbfs,
|
---|
5146 | larr: larr,
|
---|
5147 | Larr: Larr,
|
---|
5148 | lArr: lArr,
|
---|
5149 | larrfs: larrfs,
|
---|
5150 | larrhk: larrhk,
|
---|
5151 | larrlp: larrlp,
|
---|
5152 | larrpl: larrpl,
|
---|
5153 | larrsim: larrsim,
|
---|
5154 | larrtl: larrtl,
|
---|
5155 | latail: latail,
|
---|
5156 | lAtail: lAtail,
|
---|
5157 | lat: lat,
|
---|
5158 | late: late,
|
---|
5159 | lates: lates,
|
---|
5160 | lbarr: lbarr,
|
---|
5161 | lBarr: lBarr,
|
---|
5162 | lbbrk: lbbrk,
|
---|
5163 | lbrace: lbrace,
|
---|
5164 | lbrack: lbrack,
|
---|
5165 | lbrke: lbrke,
|
---|
5166 | lbrksld: lbrksld,
|
---|
5167 | lbrkslu: lbrkslu,
|
---|
5168 | Lcaron: Lcaron,
|
---|
5169 | lcaron: lcaron,
|
---|
5170 | Lcedil: Lcedil,
|
---|
5171 | lcedil: lcedil,
|
---|
5172 | lceil: lceil,
|
---|
5173 | lcub: lcub,
|
---|
5174 | Lcy: Lcy,
|
---|
5175 | lcy: lcy,
|
---|
5176 | ldca: ldca,
|
---|
5177 | ldquo: ldquo,
|
---|
5178 | ldquor: ldquor,
|
---|
5179 | ldrdhar: ldrdhar,
|
---|
5180 | ldrushar: ldrushar,
|
---|
5181 | ldsh: ldsh,
|
---|
5182 | le: le,
|
---|
5183 | lE: lE,
|
---|
5184 | LeftAngleBracket: LeftAngleBracket,
|
---|
5185 | LeftArrowBar: LeftArrowBar,
|
---|
5186 | leftarrow: leftarrow,
|
---|
5187 | LeftArrow: LeftArrow,
|
---|
5188 | Leftarrow: Leftarrow,
|
---|
5189 | LeftArrowRightArrow: LeftArrowRightArrow,
|
---|
5190 | leftarrowtail: leftarrowtail,
|
---|
5191 | LeftCeiling: LeftCeiling,
|
---|
5192 | LeftDoubleBracket: LeftDoubleBracket,
|
---|
5193 | LeftDownTeeVector: LeftDownTeeVector,
|
---|
5194 | LeftDownVectorBar: LeftDownVectorBar,
|
---|
5195 | LeftDownVector: LeftDownVector,
|
---|
5196 | LeftFloor: LeftFloor,
|
---|
5197 | leftharpoondown: leftharpoondown,
|
---|
5198 | leftharpoonup: leftharpoonup,
|
---|
5199 | leftleftarrows: leftleftarrows,
|
---|
5200 | leftrightarrow: leftrightarrow,
|
---|
5201 | LeftRightArrow: LeftRightArrow,
|
---|
5202 | Leftrightarrow: Leftrightarrow,
|
---|
5203 | leftrightarrows: leftrightarrows,
|
---|
5204 | leftrightharpoons: leftrightharpoons,
|
---|
5205 | leftrightsquigarrow: leftrightsquigarrow,
|
---|
5206 | LeftRightVector: LeftRightVector,
|
---|
5207 | LeftTeeArrow: LeftTeeArrow,
|
---|
5208 | LeftTee: LeftTee,
|
---|
5209 | LeftTeeVector: LeftTeeVector,
|
---|
5210 | leftthreetimes: leftthreetimes,
|
---|
5211 | LeftTriangleBar: LeftTriangleBar,
|
---|
5212 | LeftTriangle: LeftTriangle,
|
---|
5213 | LeftTriangleEqual: LeftTriangleEqual,
|
---|
5214 | LeftUpDownVector: LeftUpDownVector,
|
---|
5215 | LeftUpTeeVector: LeftUpTeeVector,
|
---|
5216 | LeftUpVectorBar: LeftUpVectorBar,
|
---|
5217 | LeftUpVector: LeftUpVector,
|
---|
5218 | LeftVectorBar: LeftVectorBar,
|
---|
5219 | LeftVector: LeftVector,
|
---|
5220 | lEg: lEg,
|
---|
5221 | leg: leg,
|
---|
5222 | leq: leq,
|
---|
5223 | leqq: leqq,
|
---|
5224 | leqslant: leqslant,
|
---|
5225 | lescc: lescc,
|
---|
5226 | les: les,
|
---|
5227 | lesdot: lesdot,
|
---|
5228 | lesdoto: lesdoto,
|
---|
5229 | lesdotor: lesdotor,
|
---|
5230 | lesg: lesg,
|
---|
5231 | lesges: lesges,
|
---|
5232 | lessapprox: lessapprox,
|
---|
5233 | lessdot: lessdot,
|
---|
5234 | lesseqgtr: lesseqgtr,
|
---|
5235 | lesseqqgtr: lesseqqgtr,
|
---|
5236 | LessEqualGreater: LessEqualGreater,
|
---|
5237 | LessFullEqual: LessFullEqual,
|
---|
5238 | LessGreater: LessGreater,
|
---|
5239 | lessgtr: lessgtr,
|
---|
5240 | LessLess: LessLess,
|
---|
5241 | lesssim: lesssim,
|
---|
5242 | LessSlantEqual: LessSlantEqual,
|
---|
5243 | LessTilde: LessTilde,
|
---|
5244 | lfisht: lfisht,
|
---|
5245 | lfloor: lfloor,
|
---|
5246 | Lfr: Lfr,
|
---|
5247 | lfr: lfr,
|
---|
5248 | lg: lg,
|
---|
5249 | lgE: lgE,
|
---|
5250 | lHar: lHar,
|
---|
5251 | lhard: lhard,
|
---|
5252 | lharu: lharu,
|
---|
5253 | lharul: lharul,
|
---|
5254 | lhblk: lhblk,
|
---|
5255 | LJcy: LJcy,
|
---|
5256 | ljcy: ljcy,
|
---|
5257 | llarr: llarr,
|
---|
5258 | ll: ll,
|
---|
5259 | Ll: Ll,
|
---|
5260 | llcorner: llcorner,
|
---|
5261 | Lleftarrow: Lleftarrow,
|
---|
5262 | llhard: llhard,
|
---|
5263 | lltri: lltri,
|
---|
5264 | Lmidot: Lmidot,
|
---|
5265 | lmidot: lmidot,
|
---|
5266 | lmoustache: lmoustache,
|
---|
5267 | lmoust: lmoust,
|
---|
5268 | lnap: lnap,
|
---|
5269 | lnapprox: lnapprox,
|
---|
5270 | lne: lne,
|
---|
5271 | lnE: lnE,
|
---|
5272 | lneq: lneq,
|
---|
5273 | lneqq: lneqq,
|
---|
5274 | lnsim: lnsim,
|
---|
5275 | loang: loang,
|
---|
5276 | loarr: loarr,
|
---|
5277 | lobrk: lobrk,
|
---|
5278 | longleftarrow: longleftarrow,
|
---|
5279 | LongLeftArrow: LongLeftArrow,
|
---|
5280 | Longleftarrow: Longleftarrow,
|
---|
5281 | longleftrightarrow: longleftrightarrow,
|
---|
5282 | LongLeftRightArrow: LongLeftRightArrow,
|
---|
5283 | Longleftrightarrow: Longleftrightarrow,
|
---|
5284 | longmapsto: longmapsto,
|
---|
5285 | longrightarrow: longrightarrow,
|
---|
5286 | LongRightArrow: LongRightArrow,
|
---|
5287 | Longrightarrow: Longrightarrow,
|
---|
5288 | looparrowleft: looparrowleft,
|
---|
5289 | looparrowright: looparrowright,
|
---|
5290 | lopar: lopar,
|
---|
5291 | Lopf: Lopf,
|
---|
5292 | lopf: lopf,
|
---|
5293 | loplus: loplus,
|
---|
5294 | lotimes: lotimes,
|
---|
5295 | lowast: lowast,
|
---|
5296 | lowbar: lowbar,
|
---|
5297 | LowerLeftArrow: LowerLeftArrow,
|
---|
5298 | LowerRightArrow: LowerRightArrow,
|
---|
5299 | loz: loz,
|
---|
5300 | lozenge: lozenge,
|
---|
5301 | lozf: lozf,
|
---|
5302 | lpar: lpar,
|
---|
5303 | lparlt: lparlt,
|
---|
5304 | lrarr: lrarr,
|
---|
5305 | lrcorner: lrcorner,
|
---|
5306 | lrhar: lrhar,
|
---|
5307 | lrhard: lrhard,
|
---|
5308 | lrm: lrm,
|
---|
5309 | lrtri: lrtri,
|
---|
5310 | lsaquo: lsaquo,
|
---|
5311 | lscr: lscr,
|
---|
5312 | Lscr: Lscr,
|
---|
5313 | lsh: lsh,
|
---|
5314 | Lsh: Lsh,
|
---|
5315 | lsim: lsim,
|
---|
5316 | lsime: lsime,
|
---|
5317 | lsimg: lsimg,
|
---|
5318 | lsqb: lsqb,
|
---|
5319 | lsquo: lsquo,
|
---|
5320 | lsquor: lsquor,
|
---|
5321 | Lstrok: Lstrok,
|
---|
5322 | lstrok: lstrok,
|
---|
5323 | ltcc: ltcc,
|
---|
5324 | ltcir: ltcir,
|
---|
5325 | lt: lt,
|
---|
5326 | LT: LT,
|
---|
5327 | Lt: Lt,
|
---|
5328 | ltdot: ltdot,
|
---|
5329 | lthree: lthree,
|
---|
5330 | ltimes: ltimes,
|
---|
5331 | ltlarr: ltlarr,
|
---|
5332 | ltquest: ltquest,
|
---|
5333 | ltri: ltri,
|
---|
5334 | ltrie: ltrie,
|
---|
5335 | ltrif: ltrif,
|
---|
5336 | ltrPar: ltrPar,
|
---|
5337 | lurdshar: lurdshar,
|
---|
5338 | luruhar: luruhar,
|
---|
5339 | lvertneqq: lvertneqq,
|
---|
5340 | lvnE: lvnE,
|
---|
5341 | macr: macr,
|
---|
5342 | male: male,
|
---|
5343 | malt: malt,
|
---|
5344 | maltese: maltese,
|
---|
5345 | map: map,
|
---|
5346 | mapsto: mapsto,
|
---|
5347 | mapstodown: mapstodown,
|
---|
5348 | mapstoleft: mapstoleft,
|
---|
5349 | mapstoup: mapstoup,
|
---|
5350 | marker: marker,
|
---|
5351 | mcomma: mcomma,
|
---|
5352 | Mcy: Mcy,
|
---|
5353 | mcy: mcy,
|
---|
5354 | mdash: mdash,
|
---|
5355 | mDDot: mDDot,
|
---|
5356 | measuredangle: measuredangle,
|
---|
5357 | MediumSpace: MediumSpace,
|
---|
5358 | Mellintrf: Mellintrf,
|
---|
5359 | Mfr: Mfr,
|
---|
5360 | mfr: mfr,
|
---|
5361 | mho: mho,
|
---|
5362 | micro: micro,
|
---|
5363 | midast: midast,
|
---|
5364 | midcir: midcir,
|
---|
5365 | mid: mid,
|
---|
5366 | middot: middot,
|
---|
5367 | minusb: minusb,
|
---|
5368 | minus: minus,
|
---|
5369 | minusd: minusd,
|
---|
5370 | minusdu: minusdu,
|
---|
5371 | MinusPlus: MinusPlus,
|
---|
5372 | mlcp: mlcp,
|
---|
5373 | mldr: mldr,
|
---|
5374 | mnplus: mnplus,
|
---|
5375 | models: models,
|
---|
5376 | Mopf: Mopf,
|
---|
5377 | mopf: mopf,
|
---|
5378 | mp: mp,
|
---|
5379 | mscr: mscr,
|
---|
5380 | Mscr: Mscr,
|
---|
5381 | mstpos: mstpos,
|
---|
5382 | Mu: Mu,
|
---|
5383 | mu: mu,
|
---|
5384 | multimap: multimap,
|
---|
5385 | mumap: mumap,
|
---|
5386 | nabla: nabla,
|
---|
5387 | Nacute: Nacute,
|
---|
5388 | nacute: nacute,
|
---|
5389 | nang: nang,
|
---|
5390 | nap: nap,
|
---|
5391 | napE: napE,
|
---|
5392 | napid: napid,
|
---|
5393 | napos: napos,
|
---|
5394 | napprox: napprox,
|
---|
5395 | natural: natural,
|
---|
5396 | naturals: naturals,
|
---|
5397 | natur: natur,
|
---|
5398 | nbsp: nbsp,
|
---|
5399 | nbump: nbump,
|
---|
5400 | nbumpe: nbumpe,
|
---|
5401 | ncap: ncap,
|
---|
5402 | Ncaron: Ncaron,
|
---|
5403 | ncaron: ncaron,
|
---|
5404 | Ncedil: Ncedil,
|
---|
5405 | ncedil: ncedil,
|
---|
5406 | ncong: ncong,
|
---|
5407 | ncongdot: ncongdot,
|
---|
5408 | ncup: ncup,
|
---|
5409 | Ncy: Ncy,
|
---|
5410 | ncy: ncy,
|
---|
5411 | ndash: ndash,
|
---|
5412 | nearhk: nearhk,
|
---|
5413 | nearr: nearr,
|
---|
5414 | neArr: neArr,
|
---|
5415 | nearrow: nearrow,
|
---|
5416 | ne: ne,
|
---|
5417 | nedot: nedot,
|
---|
5418 | NegativeMediumSpace: NegativeMediumSpace,
|
---|
5419 | NegativeThickSpace: NegativeThickSpace,
|
---|
5420 | NegativeThinSpace: NegativeThinSpace,
|
---|
5421 | NegativeVeryThinSpace: NegativeVeryThinSpace,
|
---|
5422 | nequiv: nequiv,
|
---|
5423 | nesear: nesear,
|
---|
5424 | nesim: nesim,
|
---|
5425 | NestedGreaterGreater: NestedGreaterGreater,
|
---|
5426 | NestedLessLess: NestedLessLess,
|
---|
5427 | NewLine: NewLine,
|
---|
5428 | nexist: nexist,
|
---|
5429 | nexists: nexists,
|
---|
5430 | Nfr: Nfr,
|
---|
5431 | nfr: nfr,
|
---|
5432 | ngE: ngE,
|
---|
5433 | nge: nge,
|
---|
5434 | ngeq: ngeq,
|
---|
5435 | ngeqq: ngeqq,
|
---|
5436 | ngeqslant: ngeqslant,
|
---|
5437 | nges: nges,
|
---|
5438 | nGg: nGg,
|
---|
5439 | ngsim: ngsim,
|
---|
5440 | nGt: nGt,
|
---|
5441 | ngt: ngt,
|
---|
5442 | ngtr: ngtr,
|
---|
5443 | nGtv: nGtv,
|
---|
5444 | nharr: nharr,
|
---|
5445 | nhArr: nhArr,
|
---|
5446 | nhpar: nhpar,
|
---|
5447 | ni: ni,
|
---|
5448 | nis: nis,
|
---|
5449 | nisd: nisd,
|
---|
5450 | niv: niv,
|
---|
5451 | NJcy: NJcy,
|
---|
5452 | njcy: njcy,
|
---|
5453 | nlarr: nlarr,
|
---|
5454 | nlArr: nlArr,
|
---|
5455 | nldr: nldr,
|
---|
5456 | nlE: nlE,
|
---|
5457 | nle: nle,
|
---|
5458 | nleftarrow: nleftarrow,
|
---|
5459 | nLeftarrow: nLeftarrow,
|
---|
5460 | nleftrightarrow: nleftrightarrow,
|
---|
5461 | nLeftrightarrow: nLeftrightarrow,
|
---|
5462 | nleq: nleq,
|
---|
5463 | nleqq: nleqq,
|
---|
5464 | nleqslant: nleqslant,
|
---|
5465 | nles: nles,
|
---|
5466 | nless: nless,
|
---|
5467 | nLl: nLl,
|
---|
5468 | nlsim: nlsim,
|
---|
5469 | nLt: nLt,
|
---|
5470 | nlt: nlt,
|
---|
5471 | nltri: nltri,
|
---|
5472 | nltrie: nltrie,
|
---|
5473 | nLtv: nLtv,
|
---|
5474 | nmid: nmid,
|
---|
5475 | NoBreak: NoBreak,
|
---|
5476 | NonBreakingSpace: NonBreakingSpace,
|
---|
5477 | nopf: nopf,
|
---|
5478 | Nopf: Nopf,
|
---|
5479 | Not: Not,
|
---|
5480 | not: not,
|
---|
5481 | NotCongruent: NotCongruent,
|
---|
5482 | NotCupCap: NotCupCap,
|
---|
5483 | NotDoubleVerticalBar: NotDoubleVerticalBar,
|
---|
5484 | NotElement: NotElement,
|
---|
5485 | NotEqual: NotEqual,
|
---|
5486 | NotEqualTilde: NotEqualTilde,
|
---|
5487 | NotExists: NotExists,
|
---|
5488 | NotGreater: NotGreater,
|
---|
5489 | NotGreaterEqual: NotGreaterEqual,
|
---|
5490 | NotGreaterFullEqual: NotGreaterFullEqual,
|
---|
5491 | NotGreaterGreater: NotGreaterGreater,
|
---|
5492 | NotGreaterLess: NotGreaterLess,
|
---|
5493 | NotGreaterSlantEqual: NotGreaterSlantEqual,
|
---|
5494 | NotGreaterTilde: NotGreaterTilde,
|
---|
5495 | NotHumpDownHump: NotHumpDownHump,
|
---|
5496 | NotHumpEqual: NotHumpEqual,
|
---|
5497 | notin: notin,
|
---|
5498 | notindot: notindot,
|
---|
5499 | notinE: notinE,
|
---|
5500 | notinva: notinva,
|
---|
5501 | notinvb: notinvb,
|
---|
5502 | notinvc: notinvc,
|
---|
5503 | NotLeftTriangleBar: NotLeftTriangleBar,
|
---|
5504 | NotLeftTriangle: NotLeftTriangle,
|
---|
5505 | NotLeftTriangleEqual: NotLeftTriangleEqual,
|
---|
5506 | NotLess: NotLess,
|
---|
5507 | NotLessEqual: NotLessEqual,
|
---|
5508 | NotLessGreater: NotLessGreater,
|
---|
5509 | NotLessLess: NotLessLess,
|
---|
5510 | NotLessSlantEqual: NotLessSlantEqual,
|
---|
5511 | NotLessTilde: NotLessTilde,
|
---|
5512 | NotNestedGreaterGreater: NotNestedGreaterGreater,
|
---|
5513 | NotNestedLessLess: NotNestedLessLess,
|
---|
5514 | notni: notni,
|
---|
5515 | notniva: notniva,
|
---|
5516 | notnivb: notnivb,
|
---|
5517 | notnivc: notnivc,
|
---|
5518 | NotPrecedes: NotPrecedes,
|
---|
5519 | NotPrecedesEqual: NotPrecedesEqual,
|
---|
5520 | NotPrecedesSlantEqual: NotPrecedesSlantEqual,
|
---|
5521 | NotReverseElement: NotReverseElement,
|
---|
5522 | NotRightTriangleBar: NotRightTriangleBar,
|
---|
5523 | NotRightTriangle: NotRightTriangle,
|
---|
5524 | NotRightTriangleEqual: NotRightTriangleEqual,
|
---|
5525 | NotSquareSubset: NotSquareSubset,
|
---|
5526 | NotSquareSubsetEqual: NotSquareSubsetEqual,
|
---|
5527 | NotSquareSuperset: NotSquareSuperset,
|
---|
5528 | NotSquareSupersetEqual: NotSquareSupersetEqual,
|
---|
5529 | NotSubset: NotSubset,
|
---|
5530 | NotSubsetEqual: NotSubsetEqual,
|
---|
5531 | NotSucceeds: NotSucceeds,
|
---|
5532 | NotSucceedsEqual: NotSucceedsEqual,
|
---|
5533 | NotSucceedsSlantEqual: NotSucceedsSlantEqual,
|
---|
5534 | NotSucceedsTilde: NotSucceedsTilde,
|
---|
5535 | NotSuperset: NotSuperset,
|
---|
5536 | NotSupersetEqual: NotSupersetEqual,
|
---|
5537 | NotTilde: NotTilde,
|
---|
5538 | NotTildeEqual: NotTildeEqual,
|
---|
5539 | NotTildeFullEqual: NotTildeFullEqual,
|
---|
5540 | NotTildeTilde: NotTildeTilde,
|
---|
5541 | NotVerticalBar: NotVerticalBar,
|
---|
5542 | nparallel: nparallel,
|
---|
5543 | npar: npar,
|
---|
5544 | nparsl: nparsl,
|
---|
5545 | npart: npart,
|
---|
5546 | npolint: npolint,
|
---|
5547 | npr: npr,
|
---|
5548 | nprcue: nprcue,
|
---|
5549 | nprec: nprec,
|
---|
5550 | npreceq: npreceq,
|
---|
5551 | npre: npre,
|
---|
5552 | nrarrc: nrarrc,
|
---|
5553 | nrarr: nrarr,
|
---|
5554 | nrArr: nrArr,
|
---|
5555 | nrarrw: nrarrw,
|
---|
5556 | nrightarrow: nrightarrow,
|
---|
5557 | nRightarrow: nRightarrow,
|
---|
5558 | nrtri: nrtri,
|
---|
5559 | nrtrie: nrtrie,
|
---|
5560 | nsc: nsc,
|
---|
5561 | nsccue: nsccue,
|
---|
5562 | nsce: nsce,
|
---|
5563 | Nscr: Nscr,
|
---|
5564 | nscr: nscr,
|
---|
5565 | nshortmid: nshortmid,
|
---|
5566 | nshortparallel: nshortparallel,
|
---|
5567 | nsim: nsim,
|
---|
5568 | nsime: nsime,
|
---|
5569 | nsimeq: nsimeq,
|
---|
5570 | nsmid: nsmid,
|
---|
5571 | nspar: nspar,
|
---|
5572 | nsqsube: nsqsube,
|
---|
5573 | nsqsupe: nsqsupe,
|
---|
5574 | nsub: nsub,
|
---|
5575 | nsubE: nsubE,
|
---|
5576 | nsube: nsube,
|
---|
5577 | nsubset: nsubset,
|
---|
5578 | nsubseteq: nsubseteq,
|
---|
5579 | nsubseteqq: nsubseteqq,
|
---|
5580 | nsucc: nsucc,
|
---|
5581 | nsucceq: nsucceq,
|
---|
5582 | nsup: nsup,
|
---|
5583 | nsupE: nsupE,
|
---|
5584 | nsupe: nsupe,
|
---|
5585 | nsupset: nsupset,
|
---|
5586 | nsupseteq: nsupseteq,
|
---|
5587 | nsupseteqq: nsupseteqq,
|
---|
5588 | ntgl: ntgl,
|
---|
5589 | Ntilde: Ntilde,
|
---|
5590 | ntilde: ntilde,
|
---|
5591 | ntlg: ntlg,
|
---|
5592 | ntriangleleft: ntriangleleft,
|
---|
5593 | ntrianglelefteq: ntrianglelefteq,
|
---|
5594 | ntriangleright: ntriangleright,
|
---|
5595 | ntrianglerighteq: ntrianglerighteq,
|
---|
5596 | Nu: Nu,
|
---|
5597 | nu: nu,
|
---|
5598 | num: num,
|
---|
5599 | numero: numero,
|
---|
5600 | numsp: numsp,
|
---|
5601 | nvap: nvap,
|
---|
5602 | nvdash: nvdash,
|
---|
5603 | nvDash: nvDash,
|
---|
5604 | nVdash: nVdash,
|
---|
5605 | nVDash: nVDash,
|
---|
5606 | nvge: nvge,
|
---|
5607 | nvgt: nvgt,
|
---|
5608 | nvHarr: nvHarr,
|
---|
5609 | nvinfin: nvinfin,
|
---|
5610 | nvlArr: nvlArr,
|
---|
5611 | nvle: nvle,
|
---|
5612 | nvlt: nvlt,
|
---|
5613 | nvltrie: nvltrie,
|
---|
5614 | nvrArr: nvrArr,
|
---|
5615 | nvrtrie: nvrtrie,
|
---|
5616 | nvsim: nvsim,
|
---|
5617 | nwarhk: nwarhk,
|
---|
5618 | nwarr: nwarr,
|
---|
5619 | nwArr: nwArr,
|
---|
5620 | nwarrow: nwarrow,
|
---|
5621 | nwnear: nwnear,
|
---|
5622 | Oacute: Oacute,
|
---|
5623 | oacute: oacute,
|
---|
5624 | oast: oast,
|
---|
5625 | Ocirc: Ocirc,
|
---|
5626 | ocirc: ocirc,
|
---|
5627 | ocir: ocir,
|
---|
5628 | Ocy: Ocy,
|
---|
5629 | ocy: ocy,
|
---|
5630 | odash: odash,
|
---|
5631 | Odblac: Odblac,
|
---|
5632 | odblac: odblac,
|
---|
5633 | odiv: odiv,
|
---|
5634 | odot: odot,
|
---|
5635 | odsold: odsold,
|
---|
5636 | OElig: OElig,
|
---|
5637 | oelig: oelig,
|
---|
5638 | ofcir: ofcir,
|
---|
5639 | Ofr: Ofr,
|
---|
5640 | ofr: ofr,
|
---|
5641 | ogon: ogon,
|
---|
5642 | Ograve: Ograve,
|
---|
5643 | ograve: ograve,
|
---|
5644 | ogt: ogt,
|
---|
5645 | ohbar: ohbar,
|
---|
5646 | ohm: ohm,
|
---|
5647 | oint: oint,
|
---|
5648 | olarr: olarr,
|
---|
5649 | olcir: olcir,
|
---|
5650 | olcross: olcross,
|
---|
5651 | oline: oline,
|
---|
5652 | olt: olt,
|
---|
5653 | Omacr: Omacr,
|
---|
5654 | omacr: omacr,
|
---|
5655 | Omega: Omega,
|
---|
5656 | omega: omega,
|
---|
5657 | Omicron: Omicron,
|
---|
5658 | omicron: omicron,
|
---|
5659 | omid: omid,
|
---|
5660 | ominus: ominus,
|
---|
5661 | Oopf: Oopf,
|
---|
5662 | oopf: oopf,
|
---|
5663 | opar: opar,
|
---|
5664 | OpenCurlyDoubleQuote: OpenCurlyDoubleQuote,
|
---|
5665 | OpenCurlyQuote: OpenCurlyQuote,
|
---|
5666 | operp: operp,
|
---|
5667 | oplus: oplus,
|
---|
5668 | orarr: orarr,
|
---|
5669 | Or: Or,
|
---|
5670 | or: or,
|
---|
5671 | ord: ord,
|
---|
5672 | order: order,
|
---|
5673 | orderof: orderof,
|
---|
5674 | ordf: ordf,
|
---|
5675 | ordm: ordm,
|
---|
5676 | origof: origof,
|
---|
5677 | oror: oror,
|
---|
5678 | orslope: orslope,
|
---|
5679 | orv: orv,
|
---|
5680 | oS: oS,
|
---|
5681 | Oscr: Oscr,
|
---|
5682 | oscr: oscr,
|
---|
5683 | Oslash: Oslash,
|
---|
5684 | oslash: oslash,
|
---|
5685 | osol: osol,
|
---|
5686 | Otilde: Otilde,
|
---|
5687 | otilde: otilde,
|
---|
5688 | otimesas: otimesas,
|
---|
5689 | Otimes: Otimes,
|
---|
5690 | otimes: otimes,
|
---|
5691 | Ouml: Ouml,
|
---|
5692 | ouml: ouml,
|
---|
5693 | ovbar: ovbar,
|
---|
5694 | OverBar: OverBar,
|
---|
5695 | OverBrace: OverBrace,
|
---|
5696 | OverBracket: OverBracket,
|
---|
5697 | OverParenthesis: OverParenthesis,
|
---|
5698 | para: para,
|
---|
5699 | parallel: parallel,
|
---|
5700 | par: par,
|
---|
5701 | parsim: parsim,
|
---|
5702 | parsl: parsl,
|
---|
5703 | part: part,
|
---|
5704 | PartialD: PartialD,
|
---|
5705 | Pcy: Pcy,
|
---|
5706 | pcy: pcy,
|
---|
5707 | percnt: percnt,
|
---|
5708 | period: period,
|
---|
5709 | permil: permil,
|
---|
5710 | perp: perp,
|
---|
5711 | pertenk: pertenk,
|
---|
5712 | Pfr: Pfr,
|
---|
5713 | pfr: pfr,
|
---|
5714 | Phi: Phi,
|
---|
5715 | phi: phi,
|
---|
5716 | phiv: phiv,
|
---|
5717 | phmmat: phmmat,
|
---|
5718 | phone: phone,
|
---|
5719 | Pi: Pi,
|
---|
5720 | pi: pi,
|
---|
5721 | pitchfork: pitchfork,
|
---|
5722 | piv: piv,
|
---|
5723 | planck: planck,
|
---|
5724 | planckh: planckh,
|
---|
5725 | plankv: plankv,
|
---|
5726 | plusacir: plusacir,
|
---|
5727 | plusb: plusb,
|
---|
5728 | pluscir: pluscir,
|
---|
5729 | plus: plus,
|
---|
5730 | plusdo: plusdo,
|
---|
5731 | plusdu: plusdu,
|
---|
5732 | pluse: pluse,
|
---|
5733 | PlusMinus: PlusMinus,
|
---|
5734 | plusmn: plusmn,
|
---|
5735 | plussim: plussim,
|
---|
5736 | plustwo: plustwo,
|
---|
5737 | pm: pm,
|
---|
5738 | Poincareplane: Poincareplane,
|
---|
5739 | pointint: pointint,
|
---|
5740 | popf: popf,
|
---|
5741 | Popf: Popf,
|
---|
5742 | pound: pound,
|
---|
5743 | prap: prap,
|
---|
5744 | Pr: Pr,
|
---|
5745 | pr: pr,
|
---|
5746 | prcue: prcue,
|
---|
5747 | precapprox: precapprox,
|
---|
5748 | prec: prec,
|
---|
5749 | preccurlyeq: preccurlyeq,
|
---|
5750 | Precedes: Precedes,
|
---|
5751 | PrecedesEqual: PrecedesEqual,
|
---|
5752 | PrecedesSlantEqual: PrecedesSlantEqual,
|
---|
5753 | PrecedesTilde: PrecedesTilde,
|
---|
5754 | preceq: preceq,
|
---|
5755 | precnapprox: precnapprox,
|
---|
5756 | precneqq: precneqq,
|
---|
5757 | precnsim: precnsim,
|
---|
5758 | pre: pre,
|
---|
5759 | prE: prE,
|
---|
5760 | precsim: precsim,
|
---|
5761 | prime: prime,
|
---|
5762 | Prime: Prime,
|
---|
5763 | primes: primes,
|
---|
5764 | prnap: prnap,
|
---|
5765 | prnE: prnE,
|
---|
5766 | prnsim: prnsim,
|
---|
5767 | prod: prod,
|
---|
5768 | Product: Product,
|
---|
5769 | profalar: profalar,
|
---|
5770 | profline: profline,
|
---|
5771 | profsurf: profsurf,
|
---|
5772 | prop: prop,
|
---|
5773 | Proportional: Proportional,
|
---|
5774 | Proportion: Proportion,
|
---|
5775 | propto: propto,
|
---|
5776 | prsim: prsim,
|
---|
5777 | prurel: prurel,
|
---|
5778 | Pscr: Pscr,
|
---|
5779 | pscr: pscr,
|
---|
5780 | Psi: Psi,
|
---|
5781 | psi: psi,
|
---|
5782 | puncsp: puncsp,
|
---|
5783 | Qfr: Qfr,
|
---|
5784 | qfr: qfr,
|
---|
5785 | qint: qint,
|
---|
5786 | qopf: qopf,
|
---|
5787 | Qopf: Qopf,
|
---|
5788 | qprime: qprime,
|
---|
5789 | Qscr: Qscr,
|
---|
5790 | qscr: qscr,
|
---|
5791 | quaternions: quaternions,
|
---|
5792 | quatint: quatint,
|
---|
5793 | quest: quest,
|
---|
5794 | questeq: questeq,
|
---|
5795 | quot: quot,
|
---|
5796 | QUOT: QUOT,
|
---|
5797 | rAarr: rAarr,
|
---|
5798 | race: race,
|
---|
5799 | Racute: Racute,
|
---|
5800 | racute: racute,
|
---|
5801 | radic: radic,
|
---|
5802 | raemptyv: raemptyv,
|
---|
5803 | rang: rang,
|
---|
5804 | Rang: Rang,
|
---|
5805 | rangd: rangd,
|
---|
5806 | range: range,
|
---|
5807 | rangle: rangle,
|
---|
5808 | raquo: raquo,
|
---|
5809 | rarrap: rarrap,
|
---|
5810 | rarrb: rarrb,
|
---|
5811 | rarrbfs: rarrbfs,
|
---|
5812 | rarrc: rarrc,
|
---|
5813 | rarr: rarr,
|
---|
5814 | Rarr: Rarr,
|
---|
5815 | rArr: rArr,
|
---|
5816 | rarrfs: rarrfs,
|
---|
5817 | rarrhk: rarrhk,
|
---|
5818 | rarrlp: rarrlp,
|
---|
5819 | rarrpl: rarrpl,
|
---|
5820 | rarrsim: rarrsim,
|
---|
5821 | Rarrtl: Rarrtl,
|
---|
5822 | rarrtl: rarrtl,
|
---|
5823 | rarrw: rarrw,
|
---|
5824 | ratail: ratail,
|
---|
5825 | rAtail: rAtail,
|
---|
5826 | ratio: ratio,
|
---|
5827 | rationals: rationals,
|
---|
5828 | rbarr: rbarr,
|
---|
5829 | rBarr: rBarr,
|
---|
5830 | RBarr: RBarr,
|
---|
5831 | rbbrk: rbbrk,
|
---|
5832 | rbrace: rbrace,
|
---|
5833 | rbrack: rbrack,
|
---|
5834 | rbrke: rbrke,
|
---|
5835 | rbrksld: rbrksld,
|
---|
5836 | rbrkslu: rbrkslu,
|
---|
5837 | Rcaron: Rcaron,
|
---|
5838 | rcaron: rcaron,
|
---|
5839 | Rcedil: Rcedil,
|
---|
5840 | rcedil: rcedil,
|
---|
5841 | rceil: rceil,
|
---|
5842 | rcub: rcub,
|
---|
5843 | Rcy: Rcy,
|
---|
5844 | rcy: rcy,
|
---|
5845 | rdca: rdca,
|
---|
5846 | rdldhar: rdldhar,
|
---|
5847 | rdquo: rdquo,
|
---|
5848 | rdquor: rdquor,
|
---|
5849 | rdsh: rdsh,
|
---|
5850 | real: real,
|
---|
5851 | realine: realine,
|
---|
5852 | realpart: realpart,
|
---|
5853 | reals: reals,
|
---|
5854 | Re: Re,
|
---|
5855 | rect: rect,
|
---|
5856 | reg: reg,
|
---|
5857 | REG: REG,
|
---|
5858 | ReverseElement: ReverseElement,
|
---|
5859 | ReverseEquilibrium: ReverseEquilibrium,
|
---|
5860 | ReverseUpEquilibrium: ReverseUpEquilibrium,
|
---|
5861 | rfisht: rfisht,
|
---|
5862 | rfloor: rfloor,
|
---|
5863 | rfr: rfr,
|
---|
5864 | Rfr: Rfr,
|
---|
5865 | rHar: rHar,
|
---|
5866 | rhard: rhard,
|
---|
5867 | rharu: rharu,
|
---|
5868 | rharul: rharul,
|
---|
5869 | Rho: Rho,
|
---|
5870 | rho: rho,
|
---|
5871 | rhov: rhov,
|
---|
5872 | RightAngleBracket: RightAngleBracket,
|
---|
5873 | RightArrowBar: RightArrowBar,
|
---|
5874 | rightarrow: rightarrow,
|
---|
5875 | RightArrow: RightArrow,
|
---|
5876 | Rightarrow: Rightarrow,
|
---|
5877 | RightArrowLeftArrow: RightArrowLeftArrow,
|
---|
5878 | rightarrowtail: rightarrowtail,
|
---|
5879 | RightCeiling: RightCeiling,
|
---|
5880 | RightDoubleBracket: RightDoubleBracket,
|
---|
5881 | RightDownTeeVector: RightDownTeeVector,
|
---|
5882 | RightDownVectorBar: RightDownVectorBar,
|
---|
5883 | RightDownVector: RightDownVector,
|
---|
5884 | RightFloor: RightFloor,
|
---|
5885 | rightharpoondown: rightharpoondown,
|
---|
5886 | rightharpoonup: rightharpoonup,
|
---|
5887 | rightleftarrows: rightleftarrows,
|
---|
5888 | rightleftharpoons: rightleftharpoons,
|
---|
5889 | rightrightarrows: rightrightarrows,
|
---|
5890 | rightsquigarrow: rightsquigarrow,
|
---|
5891 | RightTeeArrow: RightTeeArrow,
|
---|
5892 | RightTee: RightTee,
|
---|
5893 | RightTeeVector: RightTeeVector,
|
---|
5894 | rightthreetimes: rightthreetimes,
|
---|
5895 | RightTriangleBar: RightTriangleBar,
|
---|
5896 | RightTriangle: RightTriangle,
|
---|
5897 | RightTriangleEqual: RightTriangleEqual,
|
---|
5898 | RightUpDownVector: RightUpDownVector,
|
---|
5899 | RightUpTeeVector: RightUpTeeVector,
|
---|
5900 | RightUpVectorBar: RightUpVectorBar,
|
---|
5901 | RightUpVector: RightUpVector,
|
---|
5902 | RightVectorBar: RightVectorBar,
|
---|
5903 | RightVector: RightVector,
|
---|
5904 | ring: ring,
|
---|
5905 | risingdotseq: risingdotseq,
|
---|
5906 | rlarr: rlarr,
|
---|
5907 | rlhar: rlhar,
|
---|
5908 | rlm: rlm,
|
---|
5909 | rmoustache: rmoustache,
|
---|
5910 | rmoust: rmoust,
|
---|
5911 | rnmid: rnmid,
|
---|
5912 | roang: roang,
|
---|
5913 | roarr: roarr,
|
---|
5914 | robrk: robrk,
|
---|
5915 | ropar: ropar,
|
---|
5916 | ropf: ropf,
|
---|
5917 | Ropf: Ropf,
|
---|
5918 | roplus: roplus,
|
---|
5919 | rotimes: rotimes,
|
---|
5920 | RoundImplies: RoundImplies,
|
---|
5921 | rpar: rpar,
|
---|
5922 | rpargt: rpargt,
|
---|
5923 | rppolint: rppolint,
|
---|
5924 | rrarr: rrarr,
|
---|
5925 | Rrightarrow: Rrightarrow,
|
---|
5926 | rsaquo: rsaquo,
|
---|
5927 | rscr: rscr,
|
---|
5928 | Rscr: Rscr,
|
---|
5929 | rsh: rsh,
|
---|
5930 | Rsh: Rsh,
|
---|
5931 | rsqb: rsqb,
|
---|
5932 | rsquo: rsquo,
|
---|
5933 | rsquor: rsquor,
|
---|
5934 | rthree: rthree,
|
---|
5935 | rtimes: rtimes,
|
---|
5936 | rtri: rtri,
|
---|
5937 | rtrie: rtrie,
|
---|
5938 | rtrif: rtrif,
|
---|
5939 | rtriltri: rtriltri,
|
---|
5940 | RuleDelayed: RuleDelayed,
|
---|
5941 | ruluhar: ruluhar,
|
---|
5942 | rx: rx,
|
---|
5943 | Sacute: Sacute,
|
---|
5944 | sacute: sacute,
|
---|
5945 | sbquo: sbquo,
|
---|
5946 | scap: scap,
|
---|
5947 | Scaron: Scaron,
|
---|
5948 | scaron: scaron,
|
---|
5949 | Sc: Sc,
|
---|
5950 | sc: sc,
|
---|
5951 | sccue: sccue,
|
---|
5952 | sce: sce,
|
---|
5953 | scE: scE,
|
---|
5954 | Scedil: Scedil,
|
---|
5955 | scedil: scedil,
|
---|
5956 | Scirc: Scirc,
|
---|
5957 | scirc: scirc,
|
---|
5958 | scnap: scnap,
|
---|
5959 | scnE: scnE,
|
---|
5960 | scnsim: scnsim,
|
---|
5961 | scpolint: scpolint,
|
---|
5962 | scsim: scsim,
|
---|
5963 | Scy: Scy,
|
---|
5964 | scy: scy,
|
---|
5965 | sdotb: sdotb,
|
---|
5966 | sdot: sdot,
|
---|
5967 | sdote: sdote,
|
---|
5968 | searhk: searhk,
|
---|
5969 | searr: searr,
|
---|
5970 | seArr: seArr,
|
---|
5971 | searrow: searrow,
|
---|
5972 | sect: sect,
|
---|
5973 | semi: semi,
|
---|
5974 | seswar: seswar,
|
---|
5975 | setminus: setminus,
|
---|
5976 | setmn: setmn,
|
---|
5977 | sext: sext,
|
---|
5978 | Sfr: Sfr,
|
---|
5979 | sfr: sfr,
|
---|
5980 | sfrown: sfrown,
|
---|
5981 | sharp: sharp,
|
---|
5982 | SHCHcy: SHCHcy,
|
---|
5983 | shchcy: shchcy,
|
---|
5984 | SHcy: SHcy,
|
---|
5985 | shcy: shcy,
|
---|
5986 | ShortDownArrow: ShortDownArrow,
|
---|
5987 | ShortLeftArrow: ShortLeftArrow,
|
---|
5988 | shortmid: shortmid,
|
---|
5989 | shortparallel: shortparallel,
|
---|
5990 | ShortRightArrow: ShortRightArrow,
|
---|
5991 | ShortUpArrow: ShortUpArrow,
|
---|
5992 | shy: shy,
|
---|
5993 | Sigma: Sigma,
|
---|
5994 | sigma: sigma,
|
---|
5995 | sigmaf: sigmaf,
|
---|
5996 | sigmav: sigmav,
|
---|
5997 | sim: sim,
|
---|
5998 | simdot: simdot,
|
---|
5999 | sime: sime,
|
---|
6000 | simeq: simeq,
|
---|
6001 | simg: simg,
|
---|
6002 | simgE: simgE,
|
---|
6003 | siml: siml,
|
---|
6004 | simlE: simlE,
|
---|
6005 | simne: simne,
|
---|
6006 | simplus: simplus,
|
---|
6007 | simrarr: simrarr,
|
---|
6008 | slarr: slarr,
|
---|
6009 | SmallCircle: SmallCircle,
|
---|
6010 | smallsetminus: smallsetminus,
|
---|
6011 | smashp: smashp,
|
---|
6012 | smeparsl: smeparsl,
|
---|
6013 | smid: smid,
|
---|
6014 | smile: smile,
|
---|
6015 | smt: smt,
|
---|
6016 | smte: smte,
|
---|
6017 | smtes: smtes,
|
---|
6018 | SOFTcy: SOFTcy,
|
---|
6019 | softcy: softcy,
|
---|
6020 | solbar: solbar,
|
---|
6021 | solb: solb,
|
---|
6022 | sol: sol,
|
---|
6023 | Sopf: Sopf,
|
---|
6024 | sopf: sopf,
|
---|
6025 | spades: spades,
|
---|
6026 | spadesuit: spadesuit,
|
---|
6027 | spar: spar,
|
---|
6028 | sqcap: sqcap,
|
---|
6029 | sqcaps: sqcaps,
|
---|
6030 | sqcup: sqcup,
|
---|
6031 | sqcups: sqcups,
|
---|
6032 | Sqrt: Sqrt,
|
---|
6033 | sqsub: sqsub,
|
---|
6034 | sqsube: sqsube,
|
---|
6035 | sqsubset: sqsubset,
|
---|
6036 | sqsubseteq: sqsubseteq,
|
---|
6037 | sqsup: sqsup,
|
---|
6038 | sqsupe: sqsupe,
|
---|
6039 | sqsupset: sqsupset,
|
---|
6040 | sqsupseteq: sqsupseteq,
|
---|
6041 | square: square,
|
---|
6042 | Square: Square,
|
---|
6043 | SquareIntersection: SquareIntersection,
|
---|
6044 | SquareSubset: SquareSubset,
|
---|
6045 | SquareSubsetEqual: SquareSubsetEqual,
|
---|
6046 | SquareSuperset: SquareSuperset,
|
---|
6047 | SquareSupersetEqual: SquareSupersetEqual,
|
---|
6048 | SquareUnion: SquareUnion,
|
---|
6049 | squarf: squarf,
|
---|
6050 | squ: squ,
|
---|
6051 | squf: squf,
|
---|
6052 | srarr: srarr,
|
---|
6053 | Sscr: Sscr,
|
---|
6054 | sscr: sscr,
|
---|
6055 | ssetmn: ssetmn,
|
---|
6056 | ssmile: ssmile,
|
---|
6057 | sstarf: sstarf,
|
---|
6058 | Star: Star,
|
---|
6059 | star: star,
|
---|
6060 | starf: starf,
|
---|
6061 | straightepsilon: straightepsilon,
|
---|
6062 | straightphi: straightphi,
|
---|
6063 | strns: strns,
|
---|
6064 | sub: sub,
|
---|
6065 | Sub: Sub,
|
---|
6066 | subdot: subdot,
|
---|
6067 | subE: subE,
|
---|
6068 | sube: sube,
|
---|
6069 | subedot: subedot,
|
---|
6070 | submult: submult,
|
---|
6071 | subnE: subnE,
|
---|
6072 | subne: subne,
|
---|
6073 | subplus: subplus,
|
---|
6074 | subrarr: subrarr,
|
---|
6075 | subset: subset,
|
---|
6076 | Subset: Subset,
|
---|
6077 | subseteq: subseteq,
|
---|
6078 | subseteqq: subseteqq,
|
---|
6079 | SubsetEqual: SubsetEqual,
|
---|
6080 | subsetneq: subsetneq,
|
---|
6081 | subsetneqq: subsetneqq,
|
---|
6082 | subsim: subsim,
|
---|
6083 | subsub: subsub,
|
---|
6084 | subsup: subsup,
|
---|
6085 | succapprox: succapprox,
|
---|
6086 | succ: succ,
|
---|
6087 | succcurlyeq: succcurlyeq,
|
---|
6088 | Succeeds: Succeeds,
|
---|
6089 | SucceedsEqual: SucceedsEqual,
|
---|
6090 | SucceedsSlantEqual: SucceedsSlantEqual,
|
---|
6091 | SucceedsTilde: SucceedsTilde,
|
---|
6092 | succeq: succeq,
|
---|
6093 | succnapprox: succnapprox,
|
---|
6094 | succneqq: succneqq,
|
---|
6095 | succnsim: succnsim,
|
---|
6096 | succsim: succsim,
|
---|
6097 | SuchThat: SuchThat,
|
---|
6098 | sum: sum,
|
---|
6099 | Sum: Sum,
|
---|
6100 | sung: sung,
|
---|
6101 | sup1: sup1,
|
---|
6102 | sup2: sup2,
|
---|
6103 | sup3: sup3,
|
---|
6104 | sup: sup,
|
---|
6105 | Sup: Sup,
|
---|
6106 | supdot: supdot,
|
---|
6107 | supdsub: supdsub,
|
---|
6108 | supE: supE,
|
---|
6109 | supe: supe,
|
---|
6110 | supedot: supedot,
|
---|
6111 | Superset: Superset,
|
---|
6112 | SupersetEqual: SupersetEqual,
|
---|
6113 | suphsol: suphsol,
|
---|
6114 | suphsub: suphsub,
|
---|
6115 | suplarr: suplarr,
|
---|
6116 | supmult: supmult,
|
---|
6117 | supnE: supnE,
|
---|
6118 | supne: supne,
|
---|
6119 | supplus: supplus,
|
---|
6120 | supset: supset,
|
---|
6121 | Supset: Supset,
|
---|
6122 | supseteq: supseteq,
|
---|
6123 | supseteqq: supseteqq,
|
---|
6124 | supsetneq: supsetneq,
|
---|
6125 | supsetneqq: supsetneqq,
|
---|
6126 | supsim: supsim,
|
---|
6127 | supsub: supsub,
|
---|
6128 | supsup: supsup,
|
---|
6129 | swarhk: swarhk,
|
---|
6130 | swarr: swarr,
|
---|
6131 | swArr: swArr,
|
---|
6132 | swarrow: swarrow,
|
---|
6133 | swnwar: swnwar,
|
---|
6134 | szlig: szlig,
|
---|
6135 | Tab: Tab,
|
---|
6136 | target: target,
|
---|
6137 | Tau: Tau,
|
---|
6138 | tau: tau,
|
---|
6139 | tbrk: tbrk,
|
---|
6140 | Tcaron: Tcaron,
|
---|
6141 | tcaron: tcaron,
|
---|
6142 | Tcedil: Tcedil,
|
---|
6143 | tcedil: tcedil,
|
---|
6144 | Tcy: Tcy,
|
---|
6145 | tcy: tcy,
|
---|
6146 | tdot: tdot,
|
---|
6147 | telrec: telrec,
|
---|
6148 | Tfr: Tfr,
|
---|
6149 | tfr: tfr,
|
---|
6150 | there4: there4,
|
---|
6151 | therefore: therefore,
|
---|
6152 | Therefore: Therefore,
|
---|
6153 | Theta: Theta,
|
---|
6154 | theta: theta,
|
---|
6155 | thetasym: thetasym,
|
---|
6156 | thetav: thetav,
|
---|
6157 | thickapprox: thickapprox,
|
---|
6158 | thicksim: thicksim,
|
---|
6159 | ThickSpace: ThickSpace,
|
---|
6160 | ThinSpace: ThinSpace,
|
---|
6161 | thinsp: thinsp,
|
---|
6162 | thkap: thkap,
|
---|
6163 | thksim: thksim,
|
---|
6164 | THORN: THORN,
|
---|
6165 | thorn: thorn,
|
---|
6166 | tilde: tilde,
|
---|
6167 | Tilde: Tilde,
|
---|
6168 | TildeEqual: TildeEqual,
|
---|
6169 | TildeFullEqual: TildeFullEqual,
|
---|
6170 | TildeTilde: TildeTilde,
|
---|
6171 | timesbar: timesbar,
|
---|
6172 | timesb: timesb,
|
---|
6173 | times: times,
|
---|
6174 | timesd: timesd,
|
---|
6175 | tint: tint,
|
---|
6176 | toea: toea,
|
---|
6177 | topbot: topbot,
|
---|
6178 | topcir: topcir,
|
---|
6179 | top: top,
|
---|
6180 | Topf: Topf,
|
---|
6181 | topf: topf,
|
---|
6182 | topfork: topfork,
|
---|
6183 | tosa: tosa,
|
---|
6184 | tprime: tprime,
|
---|
6185 | trade: trade,
|
---|
6186 | TRADE: TRADE,
|
---|
6187 | triangle: triangle,
|
---|
6188 | triangledown: triangledown,
|
---|
6189 | triangleleft: triangleleft,
|
---|
6190 | trianglelefteq: trianglelefteq,
|
---|
6191 | triangleq: triangleq,
|
---|
6192 | triangleright: triangleright,
|
---|
6193 | trianglerighteq: trianglerighteq,
|
---|
6194 | tridot: tridot,
|
---|
6195 | trie: trie,
|
---|
6196 | triminus: triminus,
|
---|
6197 | TripleDot: TripleDot,
|
---|
6198 | triplus: triplus,
|
---|
6199 | trisb: trisb,
|
---|
6200 | tritime: tritime,
|
---|
6201 | trpezium: trpezium,
|
---|
6202 | Tscr: Tscr,
|
---|
6203 | tscr: tscr,
|
---|
6204 | TScy: TScy,
|
---|
6205 | tscy: tscy,
|
---|
6206 | TSHcy: TSHcy,
|
---|
6207 | tshcy: tshcy,
|
---|
6208 | Tstrok: Tstrok,
|
---|
6209 | tstrok: tstrok,
|
---|
6210 | twixt: twixt,
|
---|
6211 | twoheadleftarrow: twoheadleftarrow,
|
---|
6212 | twoheadrightarrow: twoheadrightarrow,
|
---|
6213 | Uacute: Uacute,
|
---|
6214 | uacute: uacute,
|
---|
6215 | uarr: uarr,
|
---|
6216 | Uarr: Uarr,
|
---|
6217 | uArr: uArr,
|
---|
6218 | Uarrocir: Uarrocir,
|
---|
6219 | Ubrcy: Ubrcy,
|
---|
6220 | ubrcy: ubrcy,
|
---|
6221 | Ubreve: Ubreve,
|
---|
6222 | ubreve: ubreve,
|
---|
6223 | Ucirc: Ucirc,
|
---|
6224 | ucirc: ucirc,
|
---|
6225 | Ucy: Ucy,
|
---|
6226 | ucy: ucy,
|
---|
6227 | udarr: udarr,
|
---|
6228 | Udblac: Udblac,
|
---|
6229 | udblac: udblac,
|
---|
6230 | udhar: udhar,
|
---|
6231 | ufisht: ufisht,
|
---|
6232 | Ufr: Ufr,
|
---|
6233 | ufr: ufr,
|
---|
6234 | Ugrave: Ugrave,
|
---|
6235 | ugrave: ugrave,
|
---|
6236 | uHar: uHar,
|
---|
6237 | uharl: uharl,
|
---|
6238 | uharr: uharr,
|
---|
6239 | uhblk: uhblk,
|
---|
6240 | ulcorn: ulcorn,
|
---|
6241 | ulcorner: ulcorner,
|
---|
6242 | ulcrop: ulcrop,
|
---|
6243 | ultri: ultri,
|
---|
6244 | Umacr: Umacr,
|
---|
6245 | umacr: umacr,
|
---|
6246 | uml: uml,
|
---|
6247 | UnderBar: UnderBar,
|
---|
6248 | UnderBrace: UnderBrace,
|
---|
6249 | UnderBracket: UnderBracket,
|
---|
6250 | UnderParenthesis: UnderParenthesis,
|
---|
6251 | Union: Union,
|
---|
6252 | UnionPlus: UnionPlus,
|
---|
6253 | Uogon: Uogon,
|
---|
6254 | uogon: uogon,
|
---|
6255 | Uopf: Uopf,
|
---|
6256 | uopf: uopf,
|
---|
6257 | UpArrowBar: UpArrowBar,
|
---|
6258 | uparrow: uparrow,
|
---|
6259 | UpArrow: UpArrow,
|
---|
6260 | Uparrow: Uparrow,
|
---|
6261 | UpArrowDownArrow: UpArrowDownArrow,
|
---|
6262 | updownarrow: updownarrow,
|
---|
6263 | UpDownArrow: UpDownArrow,
|
---|
6264 | Updownarrow: Updownarrow,
|
---|
6265 | UpEquilibrium: UpEquilibrium,
|
---|
6266 | upharpoonleft: upharpoonleft,
|
---|
6267 | upharpoonright: upharpoonright,
|
---|
6268 | uplus: uplus,
|
---|
6269 | UpperLeftArrow: UpperLeftArrow,
|
---|
6270 | UpperRightArrow: UpperRightArrow,
|
---|
6271 | upsi: upsi,
|
---|
6272 | Upsi: Upsi,
|
---|
6273 | upsih: upsih,
|
---|
6274 | Upsilon: Upsilon,
|
---|
6275 | upsilon: upsilon,
|
---|
6276 | UpTeeArrow: UpTeeArrow,
|
---|
6277 | UpTee: UpTee,
|
---|
6278 | upuparrows: upuparrows,
|
---|
6279 | urcorn: urcorn,
|
---|
6280 | urcorner: urcorner,
|
---|
6281 | urcrop: urcrop,
|
---|
6282 | Uring: Uring,
|
---|
6283 | uring: uring,
|
---|
6284 | urtri: urtri,
|
---|
6285 | Uscr: Uscr,
|
---|
6286 | uscr: uscr,
|
---|
6287 | utdot: utdot,
|
---|
6288 | Utilde: Utilde,
|
---|
6289 | utilde: utilde,
|
---|
6290 | utri: utri,
|
---|
6291 | utrif: utrif,
|
---|
6292 | uuarr: uuarr,
|
---|
6293 | Uuml: Uuml,
|
---|
6294 | uuml: uuml,
|
---|
6295 | uwangle: uwangle,
|
---|
6296 | vangrt: vangrt,
|
---|
6297 | varepsilon: varepsilon,
|
---|
6298 | varkappa: varkappa,
|
---|
6299 | varnothing: varnothing,
|
---|
6300 | varphi: varphi,
|
---|
6301 | varpi: varpi,
|
---|
6302 | varpropto: varpropto,
|
---|
6303 | varr: varr,
|
---|
6304 | vArr: vArr,
|
---|
6305 | varrho: varrho,
|
---|
6306 | varsigma: varsigma,
|
---|
6307 | varsubsetneq: varsubsetneq,
|
---|
6308 | varsubsetneqq: varsubsetneqq,
|
---|
6309 | varsupsetneq: varsupsetneq,
|
---|
6310 | varsupsetneqq: varsupsetneqq,
|
---|
6311 | vartheta: vartheta,
|
---|
6312 | vartriangleleft: vartriangleleft,
|
---|
6313 | vartriangleright: vartriangleright,
|
---|
6314 | vBar: vBar,
|
---|
6315 | Vbar: Vbar,
|
---|
6316 | vBarv: vBarv,
|
---|
6317 | Vcy: Vcy,
|
---|
6318 | vcy: vcy,
|
---|
6319 | vdash: vdash,
|
---|
6320 | vDash: vDash,
|
---|
6321 | Vdash: Vdash,
|
---|
6322 | VDash: VDash,
|
---|
6323 | Vdashl: Vdashl,
|
---|
6324 | veebar: veebar,
|
---|
6325 | vee: vee,
|
---|
6326 | Vee: Vee,
|
---|
6327 | veeeq: veeeq,
|
---|
6328 | vellip: vellip,
|
---|
6329 | verbar: verbar,
|
---|
6330 | Verbar: Verbar,
|
---|
6331 | vert: vert,
|
---|
6332 | Vert: Vert,
|
---|
6333 | VerticalBar: VerticalBar,
|
---|
6334 | VerticalLine: VerticalLine,
|
---|
6335 | VerticalSeparator: VerticalSeparator,
|
---|
6336 | VerticalTilde: VerticalTilde,
|
---|
6337 | VeryThinSpace: VeryThinSpace,
|
---|
6338 | Vfr: Vfr,
|
---|
6339 | vfr: vfr,
|
---|
6340 | vltri: vltri,
|
---|
6341 | vnsub: vnsub,
|
---|
6342 | vnsup: vnsup,
|
---|
6343 | Vopf: Vopf,
|
---|
6344 | vopf: vopf,
|
---|
6345 | vprop: vprop,
|
---|
6346 | vrtri: vrtri,
|
---|
6347 | Vscr: Vscr,
|
---|
6348 | vscr: vscr,
|
---|
6349 | vsubnE: vsubnE,
|
---|
6350 | vsubne: vsubne,
|
---|
6351 | vsupnE: vsupnE,
|
---|
6352 | vsupne: vsupne,
|
---|
6353 | Vvdash: Vvdash,
|
---|
6354 | vzigzag: vzigzag,
|
---|
6355 | Wcirc: Wcirc,
|
---|
6356 | wcirc: wcirc,
|
---|
6357 | wedbar: wedbar,
|
---|
6358 | wedge: wedge,
|
---|
6359 | Wedge: Wedge,
|
---|
6360 | wedgeq: wedgeq,
|
---|
6361 | weierp: weierp,
|
---|
6362 | Wfr: Wfr,
|
---|
6363 | wfr: wfr,
|
---|
6364 | Wopf: Wopf,
|
---|
6365 | wopf: wopf,
|
---|
6366 | wp: wp,
|
---|
6367 | wr: wr,
|
---|
6368 | wreath: wreath,
|
---|
6369 | Wscr: Wscr,
|
---|
6370 | wscr: wscr,
|
---|
6371 | xcap: xcap,
|
---|
6372 | xcirc: xcirc,
|
---|
6373 | xcup: xcup,
|
---|
6374 | xdtri: xdtri,
|
---|
6375 | Xfr: Xfr,
|
---|
6376 | xfr: xfr,
|
---|
6377 | xharr: xharr,
|
---|
6378 | xhArr: xhArr,
|
---|
6379 | Xi: Xi,
|
---|
6380 | xi: xi,
|
---|
6381 | xlarr: xlarr,
|
---|
6382 | xlArr: xlArr,
|
---|
6383 | xmap: xmap,
|
---|
6384 | xnis: xnis,
|
---|
6385 | xodot: xodot,
|
---|
6386 | Xopf: Xopf,
|
---|
6387 | xopf: xopf,
|
---|
6388 | xoplus: xoplus,
|
---|
6389 | xotime: xotime,
|
---|
6390 | xrarr: xrarr,
|
---|
6391 | xrArr: xrArr,
|
---|
6392 | Xscr: Xscr,
|
---|
6393 | xscr: xscr,
|
---|
6394 | xsqcup: xsqcup,
|
---|
6395 | xuplus: xuplus,
|
---|
6396 | xutri: xutri,
|
---|
6397 | xvee: xvee,
|
---|
6398 | xwedge: xwedge,
|
---|
6399 | Yacute: Yacute,
|
---|
6400 | yacute: yacute,
|
---|
6401 | YAcy: YAcy,
|
---|
6402 | yacy: yacy,
|
---|
6403 | Ycirc: Ycirc,
|
---|
6404 | ycirc: ycirc,
|
---|
6405 | Ycy: Ycy,
|
---|
6406 | ycy: ycy,
|
---|
6407 | yen: yen,
|
---|
6408 | Yfr: Yfr,
|
---|
6409 | yfr: yfr,
|
---|
6410 | YIcy: YIcy,
|
---|
6411 | yicy: yicy,
|
---|
6412 | Yopf: Yopf,
|
---|
6413 | yopf: yopf,
|
---|
6414 | Yscr: Yscr,
|
---|
6415 | yscr: yscr,
|
---|
6416 | YUcy: YUcy,
|
---|
6417 | yucy: yucy,
|
---|
6418 | yuml: yuml,
|
---|
6419 | Yuml: Yuml,
|
---|
6420 | Zacute: Zacute,
|
---|
6421 | zacute: zacute,
|
---|
6422 | Zcaron: Zcaron,
|
---|
6423 | zcaron: zcaron,
|
---|
6424 | Zcy: Zcy,
|
---|
6425 | zcy: zcy,
|
---|
6426 | Zdot: Zdot,
|
---|
6427 | zdot: zdot,
|
---|
6428 | zeetrf: zeetrf,
|
---|
6429 | ZeroWidthSpace: ZeroWidthSpace,
|
---|
6430 | Zeta: Zeta,
|
---|
6431 | zeta: zeta,
|
---|
6432 | zfr: zfr,
|
---|
6433 | Zfr: Zfr,
|
---|
6434 | ZHcy: ZHcy,
|
---|
6435 | zhcy: zhcy,
|
---|
6436 | zigrarr: zigrarr,
|
---|
6437 | zopf: zopf,
|
---|
6438 | Zopf: Zopf,
|
---|
6439 | Zscr: Zscr,
|
---|
6440 | zscr: zscr,
|
---|
6441 | zwj: zwj,
|
---|
6442 | zwnj: zwnj,
|
---|
6443 | 'default': entities
|
---|
6444 | };
|
---|
6445 |
|
---|
6446 | var Aacute$1 = "Á";
|
---|
6447 | var aacute$1 = "á";
|
---|
6448 | var Acirc$1 = "Â";
|
---|
6449 | var acirc$1 = "â";
|
---|
6450 | var acute$1 = "´";
|
---|
6451 | var AElig$1 = "Æ";
|
---|
6452 | var aelig$1 = "æ";
|
---|
6453 | var Agrave$1 = "À";
|
---|
6454 | var agrave$1 = "à";
|
---|
6455 | var amp$1 = "&";
|
---|
6456 | var AMP$1 = "&";
|
---|
6457 | var Aring$1 = "Å";
|
---|
6458 | var aring$1 = "å";
|
---|
6459 | var Atilde$1 = "Ã";
|
---|
6460 | var atilde$1 = "ã";
|
---|
6461 | var Auml$1 = "Ä";
|
---|
6462 | var auml$1 = "ä";
|
---|
6463 | var brvbar$1 = "¦";
|
---|
6464 | var Ccedil$1 = "Ç";
|
---|
6465 | var ccedil$1 = "ç";
|
---|
6466 | var cedil$1 = "¸";
|
---|
6467 | var cent$1 = "¢";
|
---|
6468 | var copy$1 = "©";
|
---|
6469 | var COPY$1 = "©";
|
---|
6470 | var curren$1 = "¤";
|
---|
6471 | var deg$1 = "°";
|
---|
6472 | var divide$1 = "÷";
|
---|
6473 | var Eacute$1 = "É";
|
---|
6474 | var eacute$1 = "é";
|
---|
6475 | var Ecirc$1 = "Ê";
|
---|
6476 | var ecirc$1 = "ê";
|
---|
6477 | var Egrave$1 = "È";
|
---|
6478 | var egrave$1 = "è";
|
---|
6479 | var ETH$1 = "Ð";
|
---|
6480 | var eth$1 = "ð";
|
---|
6481 | var Euml$1 = "Ë";
|
---|
6482 | var euml$1 = "ë";
|
---|
6483 | var frac12$1 = "½";
|
---|
6484 | var frac14$1 = "¼";
|
---|
6485 | var frac34$1 = "¾";
|
---|
6486 | var gt$1 = ">";
|
---|
6487 | var GT$1 = ">";
|
---|
6488 | var Iacute$1 = "Í";
|
---|
6489 | var iacute$1 = "í";
|
---|
6490 | var Icirc$1 = "Î";
|
---|
6491 | var icirc$1 = "î";
|
---|
6492 | var iexcl$1 = "¡";
|
---|
6493 | var Igrave$1 = "Ì";
|
---|
6494 | var igrave$1 = "ì";
|
---|
6495 | var iquest$1 = "¿";
|
---|
6496 | var Iuml$1 = "Ï";
|
---|
6497 | var iuml$1 = "ï";
|
---|
6498 | var laquo$1 = "«";
|
---|
6499 | var lt$1 = "<";
|
---|
6500 | var LT$1 = "<";
|
---|
6501 | var macr$1 = "¯";
|
---|
6502 | var micro$1 = "µ";
|
---|
6503 | var middot$1 = "·";
|
---|
6504 | var nbsp$1 = " ";
|
---|
6505 | var not$1 = "¬";
|
---|
6506 | var Ntilde$1 = "Ñ";
|
---|
6507 | var ntilde$1 = "ñ";
|
---|
6508 | var Oacute$1 = "Ó";
|
---|
6509 | var oacute$1 = "ó";
|
---|
6510 | var Ocirc$1 = "Ô";
|
---|
6511 | var ocirc$1 = "ô";
|
---|
6512 | var Ograve$1 = "Ò";
|
---|
6513 | var ograve$1 = "ò";
|
---|
6514 | var ordf$1 = "ª";
|
---|
6515 | var ordm$1 = "º";
|
---|
6516 | var Oslash$1 = "Ø";
|
---|
6517 | var oslash$1 = "ø";
|
---|
6518 | var Otilde$1 = "Õ";
|
---|
6519 | var otilde$1 = "õ";
|
---|
6520 | var Ouml$1 = "Ö";
|
---|
6521 | var ouml$1 = "ö";
|
---|
6522 | var para$1 = "¶";
|
---|
6523 | var plusmn$1 = "±";
|
---|
6524 | var pound$1 = "£";
|
---|
6525 | var quot$1 = "\"";
|
---|
6526 | var QUOT$1 = "\"";
|
---|
6527 | var raquo$1 = "»";
|
---|
6528 | var reg$1 = "®";
|
---|
6529 | var REG$1 = "®";
|
---|
6530 | var sect$1 = "§";
|
---|
6531 | var shy$1 = "";
|
---|
6532 | var sup1$1 = "¹";
|
---|
6533 | var sup2$1 = "²";
|
---|
6534 | var sup3$1 = "³";
|
---|
6535 | var szlig$1 = "ß";
|
---|
6536 | var THORN$1 = "Þ";
|
---|
6537 | var thorn$1 = "þ";
|
---|
6538 | var times$1 = "×";
|
---|
6539 | var Uacute$1 = "Ú";
|
---|
6540 | var uacute$1 = "ú";
|
---|
6541 | var Ucirc$1 = "Û";
|
---|
6542 | var ucirc$1 = "û";
|
---|
6543 | var Ugrave$1 = "Ù";
|
---|
6544 | var ugrave$1 = "ù";
|
---|
6545 | var uml$1 = "¨";
|
---|
6546 | var Uuml$1 = "Ü";
|
---|
6547 | var uuml$1 = "ü";
|
---|
6548 | var Yacute$1 = "Ý";
|
---|
6549 | var yacute$1 = "ý";
|
---|
6550 | var yen$1 = "¥";
|
---|
6551 | var yuml$1 = "ÿ";
|
---|
6552 | var legacy = {
|
---|
6553 | Aacute: Aacute$1,
|
---|
6554 | aacute: aacute$1,
|
---|
6555 | Acirc: Acirc$1,
|
---|
6556 | acirc: acirc$1,
|
---|
6557 | acute: acute$1,
|
---|
6558 | AElig: AElig$1,
|
---|
6559 | aelig: aelig$1,
|
---|
6560 | Agrave: Agrave$1,
|
---|
6561 | agrave: agrave$1,
|
---|
6562 | amp: amp$1,
|
---|
6563 | AMP: AMP$1,
|
---|
6564 | Aring: Aring$1,
|
---|
6565 | aring: aring$1,
|
---|
6566 | Atilde: Atilde$1,
|
---|
6567 | atilde: atilde$1,
|
---|
6568 | Auml: Auml$1,
|
---|
6569 | auml: auml$1,
|
---|
6570 | brvbar: brvbar$1,
|
---|
6571 | Ccedil: Ccedil$1,
|
---|
6572 | ccedil: ccedil$1,
|
---|
6573 | cedil: cedil$1,
|
---|
6574 | cent: cent$1,
|
---|
6575 | copy: copy$1,
|
---|
6576 | COPY: COPY$1,
|
---|
6577 | curren: curren$1,
|
---|
6578 | deg: deg$1,
|
---|
6579 | divide: divide$1,
|
---|
6580 | Eacute: Eacute$1,
|
---|
6581 | eacute: eacute$1,
|
---|
6582 | Ecirc: Ecirc$1,
|
---|
6583 | ecirc: ecirc$1,
|
---|
6584 | Egrave: Egrave$1,
|
---|
6585 | egrave: egrave$1,
|
---|
6586 | ETH: ETH$1,
|
---|
6587 | eth: eth$1,
|
---|
6588 | Euml: Euml$1,
|
---|
6589 | euml: euml$1,
|
---|
6590 | frac12: frac12$1,
|
---|
6591 | frac14: frac14$1,
|
---|
6592 | frac34: frac34$1,
|
---|
6593 | gt: gt$1,
|
---|
6594 | GT: GT$1,
|
---|
6595 | Iacute: Iacute$1,
|
---|
6596 | iacute: iacute$1,
|
---|
6597 | Icirc: Icirc$1,
|
---|
6598 | icirc: icirc$1,
|
---|
6599 | iexcl: iexcl$1,
|
---|
6600 | Igrave: Igrave$1,
|
---|
6601 | igrave: igrave$1,
|
---|
6602 | iquest: iquest$1,
|
---|
6603 | Iuml: Iuml$1,
|
---|
6604 | iuml: iuml$1,
|
---|
6605 | laquo: laquo$1,
|
---|
6606 | lt: lt$1,
|
---|
6607 | LT: LT$1,
|
---|
6608 | macr: macr$1,
|
---|
6609 | micro: micro$1,
|
---|
6610 | middot: middot$1,
|
---|
6611 | nbsp: nbsp$1,
|
---|
6612 | not: not$1,
|
---|
6613 | Ntilde: Ntilde$1,
|
---|
6614 | ntilde: ntilde$1,
|
---|
6615 | Oacute: Oacute$1,
|
---|
6616 | oacute: oacute$1,
|
---|
6617 | Ocirc: Ocirc$1,
|
---|
6618 | ocirc: ocirc$1,
|
---|
6619 | Ograve: Ograve$1,
|
---|
6620 | ograve: ograve$1,
|
---|
6621 | ordf: ordf$1,
|
---|
6622 | ordm: ordm$1,
|
---|
6623 | Oslash: Oslash$1,
|
---|
6624 | oslash: oslash$1,
|
---|
6625 | Otilde: Otilde$1,
|
---|
6626 | otilde: otilde$1,
|
---|
6627 | Ouml: Ouml$1,
|
---|
6628 | ouml: ouml$1,
|
---|
6629 | para: para$1,
|
---|
6630 | plusmn: plusmn$1,
|
---|
6631 | pound: pound$1,
|
---|
6632 | quot: quot$1,
|
---|
6633 | QUOT: QUOT$1,
|
---|
6634 | raquo: raquo$1,
|
---|
6635 | reg: reg$1,
|
---|
6636 | REG: REG$1,
|
---|
6637 | sect: sect$1,
|
---|
6638 | shy: shy$1,
|
---|
6639 | sup1: sup1$1,
|
---|
6640 | sup2: sup2$1,
|
---|
6641 | sup3: sup3$1,
|
---|
6642 | szlig: szlig$1,
|
---|
6643 | THORN: THORN$1,
|
---|
6644 | thorn: thorn$1,
|
---|
6645 | times: times$1,
|
---|
6646 | Uacute: Uacute$1,
|
---|
6647 | uacute: uacute$1,
|
---|
6648 | Ucirc: Ucirc$1,
|
---|
6649 | ucirc: ucirc$1,
|
---|
6650 | Ugrave: Ugrave$1,
|
---|
6651 | ugrave: ugrave$1,
|
---|
6652 | uml: uml$1,
|
---|
6653 | Uuml: Uuml$1,
|
---|
6654 | uuml: uuml$1,
|
---|
6655 | Yacute: Yacute$1,
|
---|
6656 | yacute: yacute$1,
|
---|
6657 | yen: yen$1,
|
---|
6658 | yuml: yuml$1
|
---|
6659 | };
|
---|
6660 |
|
---|
6661 | var legacy$1 = {
|
---|
6662 | __proto__: null,
|
---|
6663 | Aacute: Aacute$1,
|
---|
6664 | aacute: aacute$1,
|
---|
6665 | Acirc: Acirc$1,
|
---|
6666 | acirc: acirc$1,
|
---|
6667 | acute: acute$1,
|
---|
6668 | AElig: AElig$1,
|
---|
6669 | aelig: aelig$1,
|
---|
6670 | Agrave: Agrave$1,
|
---|
6671 | agrave: agrave$1,
|
---|
6672 | amp: amp$1,
|
---|
6673 | AMP: AMP$1,
|
---|
6674 | Aring: Aring$1,
|
---|
6675 | aring: aring$1,
|
---|
6676 | Atilde: Atilde$1,
|
---|
6677 | atilde: atilde$1,
|
---|
6678 | Auml: Auml$1,
|
---|
6679 | auml: auml$1,
|
---|
6680 | brvbar: brvbar$1,
|
---|
6681 | Ccedil: Ccedil$1,
|
---|
6682 | ccedil: ccedil$1,
|
---|
6683 | cedil: cedil$1,
|
---|
6684 | cent: cent$1,
|
---|
6685 | copy: copy$1,
|
---|
6686 | COPY: COPY$1,
|
---|
6687 | curren: curren$1,
|
---|
6688 | deg: deg$1,
|
---|
6689 | divide: divide$1,
|
---|
6690 | Eacute: Eacute$1,
|
---|
6691 | eacute: eacute$1,
|
---|
6692 | Ecirc: Ecirc$1,
|
---|
6693 | ecirc: ecirc$1,
|
---|
6694 | Egrave: Egrave$1,
|
---|
6695 | egrave: egrave$1,
|
---|
6696 | ETH: ETH$1,
|
---|
6697 | eth: eth$1,
|
---|
6698 | Euml: Euml$1,
|
---|
6699 | euml: euml$1,
|
---|
6700 | frac12: frac12$1,
|
---|
6701 | frac14: frac14$1,
|
---|
6702 | frac34: frac34$1,
|
---|
6703 | gt: gt$1,
|
---|
6704 | GT: GT$1,
|
---|
6705 | Iacute: Iacute$1,
|
---|
6706 | iacute: iacute$1,
|
---|
6707 | Icirc: Icirc$1,
|
---|
6708 | icirc: icirc$1,
|
---|
6709 | iexcl: iexcl$1,
|
---|
6710 | Igrave: Igrave$1,
|
---|
6711 | igrave: igrave$1,
|
---|
6712 | iquest: iquest$1,
|
---|
6713 | Iuml: Iuml$1,
|
---|
6714 | iuml: iuml$1,
|
---|
6715 | laquo: laquo$1,
|
---|
6716 | lt: lt$1,
|
---|
6717 | LT: LT$1,
|
---|
6718 | macr: macr$1,
|
---|
6719 | micro: micro$1,
|
---|
6720 | middot: middot$1,
|
---|
6721 | nbsp: nbsp$1,
|
---|
6722 | not: not$1,
|
---|
6723 | Ntilde: Ntilde$1,
|
---|
6724 | ntilde: ntilde$1,
|
---|
6725 | Oacute: Oacute$1,
|
---|
6726 | oacute: oacute$1,
|
---|
6727 | Ocirc: Ocirc$1,
|
---|
6728 | ocirc: ocirc$1,
|
---|
6729 | Ograve: Ograve$1,
|
---|
6730 | ograve: ograve$1,
|
---|
6731 | ordf: ordf$1,
|
---|
6732 | ordm: ordm$1,
|
---|
6733 | Oslash: Oslash$1,
|
---|
6734 | oslash: oslash$1,
|
---|
6735 | Otilde: Otilde$1,
|
---|
6736 | otilde: otilde$1,
|
---|
6737 | Ouml: Ouml$1,
|
---|
6738 | ouml: ouml$1,
|
---|
6739 | para: para$1,
|
---|
6740 | plusmn: plusmn$1,
|
---|
6741 | pound: pound$1,
|
---|
6742 | quot: quot$1,
|
---|
6743 | QUOT: QUOT$1,
|
---|
6744 | raquo: raquo$1,
|
---|
6745 | reg: reg$1,
|
---|
6746 | REG: REG$1,
|
---|
6747 | sect: sect$1,
|
---|
6748 | shy: shy$1,
|
---|
6749 | sup1: sup1$1,
|
---|
6750 | sup2: sup2$1,
|
---|
6751 | sup3: sup3$1,
|
---|
6752 | szlig: szlig$1,
|
---|
6753 | THORN: THORN$1,
|
---|
6754 | thorn: thorn$1,
|
---|
6755 | times: times$1,
|
---|
6756 | Uacute: Uacute$1,
|
---|
6757 | uacute: uacute$1,
|
---|
6758 | Ucirc: Ucirc$1,
|
---|
6759 | ucirc: ucirc$1,
|
---|
6760 | Ugrave: Ugrave$1,
|
---|
6761 | ugrave: ugrave$1,
|
---|
6762 | uml: uml$1,
|
---|
6763 | Uuml: Uuml$1,
|
---|
6764 | uuml: uuml$1,
|
---|
6765 | Yacute: Yacute$1,
|
---|
6766 | yacute: yacute$1,
|
---|
6767 | yen: yen$1,
|
---|
6768 | yuml: yuml$1,
|
---|
6769 | 'default': legacy
|
---|
6770 | };
|
---|
6771 |
|
---|
6772 | var amp$2 = "&";
|
---|
6773 | var apos$1 = "'";
|
---|
6774 | var gt$2 = ">";
|
---|
6775 | var lt$2 = "<";
|
---|
6776 | var quot$2 = "\"";
|
---|
6777 | var xml = {
|
---|
6778 | amp: amp$2,
|
---|
6779 | apos: apos$1,
|
---|
6780 | gt: gt$2,
|
---|
6781 | lt: lt$2,
|
---|
6782 | quot: quot$2
|
---|
6783 | };
|
---|
6784 |
|
---|
6785 | var xml$1 = {
|
---|
6786 | __proto__: null,
|
---|
6787 | amp: amp$2,
|
---|
6788 | apos: apos$1,
|
---|
6789 | gt: gt$2,
|
---|
6790 | lt: lt$2,
|
---|
6791 | quot: quot$2,
|
---|
6792 | 'default': xml
|
---|
6793 | };
|
---|
6794 |
|
---|
6795 | var decode = {
|
---|
6796 | "0": 65533,
|
---|
6797 | "128": 8364,
|
---|
6798 | "130": 8218,
|
---|
6799 | "131": 402,
|
---|
6800 | "132": 8222,
|
---|
6801 | "133": 8230,
|
---|
6802 | "134": 8224,
|
---|
6803 | "135": 8225,
|
---|
6804 | "136": 710,
|
---|
6805 | "137": 8240,
|
---|
6806 | "138": 352,
|
---|
6807 | "139": 8249,
|
---|
6808 | "140": 338,
|
---|
6809 | "142": 381,
|
---|
6810 | "145": 8216,
|
---|
6811 | "146": 8217,
|
---|
6812 | "147": 8220,
|
---|
6813 | "148": 8221,
|
---|
6814 | "149": 8226,
|
---|
6815 | "150": 8211,
|
---|
6816 | "151": 8212,
|
---|
6817 | "152": 732,
|
---|
6818 | "153": 8482,
|
---|
6819 | "154": 353,
|
---|
6820 | "155": 8250,
|
---|
6821 | "156": 339,
|
---|
6822 | "158": 382,
|
---|
6823 | "159": 376
|
---|
6824 | };
|
---|
6825 |
|
---|
6826 | var decode$1 = {
|
---|
6827 | __proto__: null,
|
---|
6828 | 'default': decode
|
---|
6829 | };
|
---|
6830 |
|
---|
6831 | var require$$0 = getCjsExportFromNamespace(decode$1);
|
---|
6832 |
|
---|
6833 | var decode_codepoint = createCommonjsModule(function (module, exports) {
|
---|
6834 | var __importDefault = (commonjsGlobal && commonjsGlobal.__importDefault) || function (mod) {
|
---|
6835 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
---|
6836 | };
|
---|
6837 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
6838 | var decode_json_1 = __importDefault(require$$0);
|
---|
6839 | // modified version of https://github.com/mathiasbynens/he/blob/master/src/he.js#L94-L119
|
---|
6840 | function decodeCodePoint(codePoint) {
|
---|
6841 | if ((codePoint >= 0xd800 && codePoint <= 0xdfff) || codePoint > 0x10ffff) {
|
---|
6842 | return "\uFFFD";
|
---|
6843 | }
|
---|
6844 | if (codePoint in decode_json_1.default) {
|
---|
6845 | codePoint = decode_json_1.default[codePoint];
|
---|
6846 | }
|
---|
6847 | var output = "";
|
---|
6848 | if (codePoint > 0xffff) {
|
---|
6849 | codePoint -= 0x10000;
|
---|
6850 | output += String.fromCharCode(((codePoint >>> 10) & 0x3ff) | 0xd800);
|
---|
6851 | codePoint = 0xdc00 | (codePoint & 0x3ff);
|
---|
6852 | }
|
---|
6853 | output += String.fromCharCode(codePoint);
|
---|
6854 | return output;
|
---|
6855 | }
|
---|
6856 | exports.default = decodeCodePoint;
|
---|
6857 | });
|
---|
6858 |
|
---|
6859 | var require$$1 = getCjsExportFromNamespace(entities$1);
|
---|
6860 |
|
---|
6861 | var require$$1$1 = getCjsExportFromNamespace(legacy$1);
|
---|
6862 |
|
---|
6863 | var require$$0$1 = getCjsExportFromNamespace(xml$1);
|
---|
6864 |
|
---|
6865 | var decode$2 = createCommonjsModule(function (module, exports) {
|
---|
6866 | var __importDefault = (commonjsGlobal && commonjsGlobal.__importDefault) || function (mod) {
|
---|
6867 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
---|
6868 | };
|
---|
6869 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
6870 | exports.decodeHTML = exports.decodeHTMLStrict = exports.decodeXML = void 0;
|
---|
6871 | var entities_json_1 = __importDefault(require$$1);
|
---|
6872 | var legacy_json_1 = __importDefault(require$$1$1);
|
---|
6873 | var xml_json_1 = __importDefault(require$$0$1);
|
---|
6874 | var decode_codepoint_1 = __importDefault(decode_codepoint);
|
---|
6875 | exports.decodeXML = getStrictDecoder(xml_json_1.default);
|
---|
6876 | exports.decodeHTMLStrict = getStrictDecoder(entities_json_1.default);
|
---|
6877 | function getStrictDecoder(map) {
|
---|
6878 | var keys = Object.keys(map).join("|");
|
---|
6879 | var replace = getReplacer(map);
|
---|
6880 | keys += "|#[xX][\\da-fA-F]+|#\\d+";
|
---|
6881 | var re = new RegExp("&(?:" + keys + ");", "g");
|
---|
6882 | return function (str) { return String(str).replace(re, replace); };
|
---|
6883 | }
|
---|
6884 | var sorter = function (a, b) { return (a < b ? 1 : -1); };
|
---|
6885 | exports.decodeHTML = (function () {
|
---|
6886 | var legacy = Object.keys(legacy_json_1.default).sort(sorter);
|
---|
6887 | var keys = Object.keys(entities_json_1.default).sort(sorter);
|
---|
6888 | for (var i = 0, j = 0; i < keys.length; i++) {
|
---|
6889 | if (legacy[j] === keys[i]) {
|
---|
6890 | keys[i] += ";?";
|
---|
6891 | j++;
|
---|
6892 | }
|
---|
6893 | else {
|
---|
6894 | keys[i] += ";";
|
---|
6895 | }
|
---|
6896 | }
|
---|
6897 | var re = new RegExp("&(?:" + keys.join("|") + "|#[xX][\\da-fA-F]+;?|#\\d+;?)", "g");
|
---|
6898 | var replace = getReplacer(entities_json_1.default);
|
---|
6899 | function replacer(str) {
|
---|
6900 | if (str.substr(-1) !== ";")
|
---|
6901 | str += ";";
|
---|
6902 | return replace(str);
|
---|
6903 | }
|
---|
6904 | //TODO consider creating a merged map
|
---|
6905 | return function (str) { return String(str).replace(re, replacer); };
|
---|
6906 | })();
|
---|
6907 | function getReplacer(map) {
|
---|
6908 | return function replace(str) {
|
---|
6909 | if (str.charAt(1) === "#") {
|
---|
6910 | var secondChar = str.charAt(2);
|
---|
6911 | if (secondChar === "X" || secondChar === "x") {
|
---|
6912 | return decode_codepoint_1.default(parseInt(str.substr(3), 16));
|
---|
6913 | }
|
---|
6914 | return decode_codepoint_1.default(parseInt(str.substr(2), 10));
|
---|
6915 | }
|
---|
6916 | return map[str.slice(1, -1)];
|
---|
6917 | };
|
---|
6918 | }
|
---|
6919 | });
|
---|
6920 |
|
---|
6921 | var encode = createCommonjsModule(function (module, exports) {
|
---|
6922 | var __importDefault = (commonjsGlobal && commonjsGlobal.__importDefault) || function (mod) {
|
---|
6923 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
---|
6924 | };
|
---|
6925 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
6926 | exports.escape = exports.encodeHTML = exports.encodeXML = void 0;
|
---|
6927 | var xml_json_1 = __importDefault(require$$0$1);
|
---|
6928 | var inverseXML = getInverseObj(xml_json_1.default);
|
---|
6929 | var xmlReplacer = getInverseReplacer(inverseXML);
|
---|
6930 | exports.encodeXML = getInverse(inverseXML, xmlReplacer);
|
---|
6931 | var entities_json_1 = __importDefault(require$$1);
|
---|
6932 | var inverseHTML = getInverseObj(entities_json_1.default);
|
---|
6933 | var htmlReplacer = getInverseReplacer(inverseHTML);
|
---|
6934 | exports.encodeHTML = getInverse(inverseHTML, htmlReplacer);
|
---|
6935 | function getInverseObj(obj) {
|
---|
6936 | return Object.keys(obj)
|
---|
6937 | .sort()
|
---|
6938 | .reduce(function (inverse, name) {
|
---|
6939 | inverse[obj[name]] = "&" + name + ";";
|
---|
6940 | return inverse;
|
---|
6941 | }, {});
|
---|
6942 | }
|
---|
6943 | function getInverseReplacer(inverse) {
|
---|
6944 | var single = [];
|
---|
6945 | var multiple = [];
|
---|
6946 | for (var _i = 0, _a = Object.keys(inverse); _i < _a.length; _i++) {
|
---|
6947 | var k = _a[_i];
|
---|
6948 | if (k.length === 1) {
|
---|
6949 | // Add value to single array
|
---|
6950 | single.push("\\" + k);
|
---|
6951 | }
|
---|
6952 | else {
|
---|
6953 | // Add value to multiple array
|
---|
6954 | multiple.push(k);
|
---|
6955 | }
|
---|
6956 | }
|
---|
6957 | // Add ranges to single characters.
|
---|
6958 | single.sort();
|
---|
6959 | for (var start = 0; start < single.length - 1; start++) {
|
---|
6960 | // Find the end of a run of characters
|
---|
6961 | var end = start;
|
---|
6962 | while (end < single.length - 1 &&
|
---|
6963 | single[end].charCodeAt(1) + 1 === single[end + 1].charCodeAt(1)) {
|
---|
6964 | end += 1;
|
---|
6965 | }
|
---|
6966 | var count = 1 + end - start;
|
---|
6967 | // We want to replace at least three characters
|
---|
6968 | if (count < 3)
|
---|
6969 | continue;
|
---|
6970 | single.splice(start, count, single[start] + "-" + single[end]);
|
---|
6971 | }
|
---|
6972 | multiple.unshift("[" + single.join("") + "]");
|
---|
6973 | return new RegExp(multiple.join("|"), "g");
|
---|
6974 | }
|
---|
6975 | var reNonASCII = /(?:[\x80-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g;
|
---|
6976 | function singleCharReplacer(c) {
|
---|
6977 | // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
---|
6978 | return "&#x" + c.codePointAt(0).toString(16).toUpperCase() + ";";
|
---|
6979 | }
|
---|
6980 | function getInverse(inverse, re) {
|
---|
6981 | return function (data) {
|
---|
6982 | return data
|
---|
6983 | .replace(re, function (name) { return inverse[name]; })
|
---|
6984 | .replace(reNonASCII, singleCharReplacer);
|
---|
6985 | };
|
---|
6986 | }
|
---|
6987 | var reXmlChars = getInverseReplacer(inverseXML);
|
---|
6988 | function escape(data) {
|
---|
6989 | return data
|
---|
6990 | .replace(reXmlChars, singleCharReplacer)
|
---|
6991 | .replace(reNonASCII, singleCharReplacer);
|
---|
6992 | }
|
---|
6993 | exports.escape = escape;
|
---|
6994 | });
|
---|
6995 |
|
---|
6996 | var lib$1 = createCommonjsModule(function (module, exports) {
|
---|
6997 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
6998 | exports.encode = exports.decodeStrict = exports.decode = void 0;
|
---|
6999 |
|
---|
7000 |
|
---|
7001 | /**
|
---|
7002 | * Decodes a string with entities.
|
---|
7003 | *
|
---|
7004 | * @param data String to decode.
|
---|
7005 | * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.
|
---|
7006 | */
|
---|
7007 | function decode(data, level) {
|
---|
7008 | return (!level || level <= 0 ? decode$2.decodeXML : decode$2.decodeHTML)(data);
|
---|
7009 | }
|
---|
7010 | exports.decode = decode;
|
---|
7011 | /**
|
---|
7012 | * Decodes a string with entities. Does not allow missing trailing semicolons for entities.
|
---|
7013 | *
|
---|
7014 | * @param data String to decode.
|
---|
7015 | * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.
|
---|
7016 | */
|
---|
7017 | function decodeStrict(data, level) {
|
---|
7018 | return (!level || level <= 0 ? decode$2.decodeXML : decode$2.decodeHTMLStrict)(data);
|
---|
7019 | }
|
---|
7020 | exports.decodeStrict = decodeStrict;
|
---|
7021 | /**
|
---|
7022 | * Encodes a string with entities.
|
---|
7023 | *
|
---|
7024 | * @param data String to encode.
|
---|
7025 | * @param level Optional level to encode at. 0 = XML, 1 = HTML. Default is 0.
|
---|
7026 | */
|
---|
7027 | function encode$1(data, level) {
|
---|
7028 | return (!level || level <= 0 ? encode.encodeXML : encode.encodeHTML)(data);
|
---|
7029 | }
|
---|
7030 | exports.encode = encode$1;
|
---|
7031 | var encode_2 = encode;
|
---|
7032 | Object.defineProperty(exports, "encodeXML", { enumerable: true, get: function () { return encode_2.encodeXML; } });
|
---|
7033 | Object.defineProperty(exports, "encodeHTML", { enumerable: true, get: function () { return encode_2.encodeHTML; } });
|
---|
7034 | Object.defineProperty(exports, "escape", { enumerable: true, get: function () { return encode_2.escape; } });
|
---|
7035 | // Legacy aliases
|
---|
7036 | Object.defineProperty(exports, "encodeHTML4", { enumerable: true, get: function () { return encode_2.encodeHTML; } });
|
---|
7037 | Object.defineProperty(exports, "encodeHTML5", { enumerable: true, get: function () { return encode_2.encodeHTML; } });
|
---|
7038 | var decode_2 = decode$2;
|
---|
7039 | Object.defineProperty(exports, "decodeXML", { enumerable: true, get: function () { return decode_2.decodeXML; } });
|
---|
7040 | Object.defineProperty(exports, "decodeHTML", { enumerable: true, get: function () { return decode_2.decodeHTML; } });
|
---|
7041 | Object.defineProperty(exports, "decodeHTMLStrict", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });
|
---|
7042 | // Legacy aliases
|
---|
7043 | Object.defineProperty(exports, "decodeHTML4", { enumerable: true, get: function () { return decode_2.decodeHTML; } });
|
---|
7044 | Object.defineProperty(exports, "decodeHTML5", { enumerable: true, get: function () { return decode_2.decodeHTML; } });
|
---|
7045 | Object.defineProperty(exports, "decodeHTML4Strict", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });
|
---|
7046 | Object.defineProperty(exports, "decodeHTML5Strict", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });
|
---|
7047 | Object.defineProperty(exports, "decodeXMLStrict", { enumerable: true, get: function () { return decode_2.decodeXML; } });
|
---|
7048 | });
|
---|
7049 |
|
---|
7050 | var elementNames = {
|
---|
7051 | altglyph: "altGlyph",
|
---|
7052 | altglyphdef: "altGlyphDef",
|
---|
7053 | altglyphitem: "altGlyphItem",
|
---|
7054 | animatecolor: "animateColor",
|
---|
7055 | animatemotion: "animateMotion",
|
---|
7056 | animatetransform: "animateTransform",
|
---|
7057 | clippath: "clipPath",
|
---|
7058 | feblend: "feBlend",
|
---|
7059 | fecolormatrix: "feColorMatrix",
|
---|
7060 | fecomponenttransfer: "feComponentTransfer",
|
---|
7061 | fecomposite: "feComposite",
|
---|
7062 | feconvolvematrix: "feConvolveMatrix",
|
---|
7063 | fediffuselighting: "feDiffuseLighting",
|
---|
7064 | fedisplacementmap: "feDisplacementMap",
|
---|
7065 | fedistantlight: "feDistantLight",
|
---|
7066 | fedropshadow: "feDropShadow",
|
---|
7067 | feflood: "feFlood",
|
---|
7068 | fefunca: "feFuncA",
|
---|
7069 | fefuncb: "feFuncB",
|
---|
7070 | fefuncg: "feFuncG",
|
---|
7071 | fefuncr: "feFuncR",
|
---|
7072 | fegaussianblur: "feGaussianBlur",
|
---|
7073 | feimage: "feImage",
|
---|
7074 | femerge: "feMerge",
|
---|
7075 | femergenode: "feMergeNode",
|
---|
7076 | femorphology: "feMorphology",
|
---|
7077 | feoffset: "feOffset",
|
---|
7078 | fepointlight: "fePointLight",
|
---|
7079 | fespecularlighting: "feSpecularLighting",
|
---|
7080 | fespotlight: "feSpotLight",
|
---|
7081 | fetile: "feTile",
|
---|
7082 | feturbulence: "feTurbulence",
|
---|
7083 | foreignobject: "foreignObject",
|
---|
7084 | glyphref: "glyphRef",
|
---|
7085 | lineargradient: "linearGradient",
|
---|
7086 | radialgradient: "radialGradient",
|
---|
7087 | textpath: "textPath"
|
---|
7088 | };
|
---|
7089 | var attributeNames = {
|
---|
7090 | definitionurl: "definitionURL",
|
---|
7091 | attributename: "attributeName",
|
---|
7092 | attributetype: "attributeType",
|
---|
7093 | basefrequency: "baseFrequency",
|
---|
7094 | baseprofile: "baseProfile",
|
---|
7095 | calcmode: "calcMode",
|
---|
7096 | clippathunits: "clipPathUnits",
|
---|
7097 | diffuseconstant: "diffuseConstant",
|
---|
7098 | edgemode: "edgeMode",
|
---|
7099 | filterunits: "filterUnits",
|
---|
7100 | glyphref: "glyphRef",
|
---|
7101 | gradienttransform: "gradientTransform",
|
---|
7102 | gradientunits: "gradientUnits",
|
---|
7103 | kernelmatrix: "kernelMatrix",
|
---|
7104 | kernelunitlength: "kernelUnitLength",
|
---|
7105 | keypoints: "keyPoints",
|
---|
7106 | keysplines: "keySplines",
|
---|
7107 | keytimes: "keyTimes",
|
---|
7108 | lengthadjust: "lengthAdjust",
|
---|
7109 | limitingconeangle: "limitingConeAngle",
|
---|
7110 | markerheight: "markerHeight",
|
---|
7111 | markerunits: "markerUnits",
|
---|
7112 | markerwidth: "markerWidth",
|
---|
7113 | maskcontentunits: "maskContentUnits",
|
---|
7114 | maskunits: "maskUnits",
|
---|
7115 | numoctaves: "numOctaves",
|
---|
7116 | pathlength: "pathLength",
|
---|
7117 | patterncontentunits: "patternContentUnits",
|
---|
7118 | patterntransform: "patternTransform",
|
---|
7119 | patternunits: "patternUnits",
|
---|
7120 | pointsatx: "pointsAtX",
|
---|
7121 | pointsaty: "pointsAtY",
|
---|
7122 | pointsatz: "pointsAtZ",
|
---|
7123 | preservealpha: "preserveAlpha",
|
---|
7124 | preserveaspectratio: "preserveAspectRatio",
|
---|
7125 | primitiveunits: "primitiveUnits",
|
---|
7126 | refx: "refX",
|
---|
7127 | refy: "refY",
|
---|
7128 | repeatcount: "repeatCount",
|
---|
7129 | repeatdur: "repeatDur",
|
---|
7130 | requiredextensions: "requiredExtensions",
|
---|
7131 | requiredfeatures: "requiredFeatures",
|
---|
7132 | specularconstant: "specularConstant",
|
---|
7133 | specularexponent: "specularExponent",
|
---|
7134 | spreadmethod: "spreadMethod",
|
---|
7135 | startoffset: "startOffset",
|
---|
7136 | stddeviation: "stdDeviation",
|
---|
7137 | stitchtiles: "stitchTiles",
|
---|
7138 | surfacescale: "surfaceScale",
|
---|
7139 | systemlanguage: "systemLanguage",
|
---|
7140 | tablevalues: "tableValues",
|
---|
7141 | targetx: "targetX",
|
---|
7142 | targety: "targetY",
|
---|
7143 | textlength: "textLength",
|
---|
7144 | viewbox: "viewBox",
|
---|
7145 | viewtarget: "viewTarget",
|
---|
7146 | xchannelselector: "xChannelSelector",
|
---|
7147 | ychannelselector: "yChannelSelector",
|
---|
7148 | zoomandpan: "zoomAndPan"
|
---|
7149 | };
|
---|
7150 | var foreignNames = {
|
---|
7151 | elementNames: elementNames,
|
---|
7152 | attributeNames: attributeNames
|
---|
7153 | };
|
---|
7154 |
|
---|
7155 | var foreignNames$1 = {
|
---|
7156 | __proto__: null,
|
---|
7157 | elementNames: elementNames,
|
---|
7158 | attributeNames: attributeNames,
|
---|
7159 | 'default': foreignNames
|
---|
7160 | };
|
---|
7161 |
|
---|
7162 | var foreignNames$2 = getCjsExportFromNamespace(foreignNames$1);
|
---|
7163 |
|
---|
7164 | var domSerializer = createCommonjsModule(function (module) {
|
---|
7165 | /*
|
---|
7166 | Module dependencies
|
---|
7167 | */
|
---|
7168 |
|
---|
7169 |
|
---|
7170 |
|
---|
7171 | /* mixed-case SVG and MathML tags & attributes
|
---|
7172 | recognized by the HTML parser, see
|
---|
7173 | https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inforeign
|
---|
7174 | */
|
---|
7175 |
|
---|
7176 | foreignNames$2.elementNames.__proto__ = null; /* use as a simple dictionary */
|
---|
7177 | foreignNames$2.attributeNames.__proto__ = null;
|
---|
7178 |
|
---|
7179 | var unencodedElements = {
|
---|
7180 | __proto__: null,
|
---|
7181 | style: true,
|
---|
7182 | script: true,
|
---|
7183 | xmp: true,
|
---|
7184 | iframe: true,
|
---|
7185 | noembed: true,
|
---|
7186 | noframes: true,
|
---|
7187 | plaintext: true,
|
---|
7188 | noscript: true
|
---|
7189 | };
|
---|
7190 |
|
---|
7191 | /*
|
---|
7192 | Format attributes
|
---|
7193 | */
|
---|
7194 | function formatAttrs(attributes, opts) {
|
---|
7195 | if (!attributes) return;
|
---|
7196 |
|
---|
7197 | var output = '';
|
---|
7198 | var value;
|
---|
7199 |
|
---|
7200 | // Loop through the attributes
|
---|
7201 | for (var key in attributes) {
|
---|
7202 | value = attributes[key];
|
---|
7203 | if (output) {
|
---|
7204 | output += ' ';
|
---|
7205 | }
|
---|
7206 |
|
---|
7207 | if (opts.xmlMode === 'foreign') {
|
---|
7208 | /* fix up mixed-case attribute names */
|
---|
7209 | key = foreignNames$2.attributeNames[key] || key;
|
---|
7210 | }
|
---|
7211 | output += key;
|
---|
7212 | if ((value !== null && value !== '') || opts.xmlMode) {
|
---|
7213 | output +=
|
---|
7214 | '="' +
|
---|
7215 | (opts.decodeEntities
|
---|
7216 | ? lib$1.encodeXML(value)
|
---|
7217 | : value.replace(/\"/g, '"')) +
|
---|
7218 | '"';
|
---|
7219 | }
|
---|
7220 | }
|
---|
7221 |
|
---|
7222 | return output;
|
---|
7223 | }
|
---|
7224 |
|
---|
7225 | /*
|
---|
7226 | Self-enclosing tags (stolen from node-htmlparser)
|
---|
7227 | */
|
---|
7228 | var singleTag = {
|
---|
7229 | __proto__: null,
|
---|
7230 | area: true,
|
---|
7231 | base: true,
|
---|
7232 | basefont: true,
|
---|
7233 | br: true,
|
---|
7234 | col: true,
|
---|
7235 | command: true,
|
---|
7236 | embed: true,
|
---|
7237 | frame: true,
|
---|
7238 | hr: true,
|
---|
7239 | img: true,
|
---|
7240 | input: true,
|
---|
7241 | isindex: true,
|
---|
7242 | keygen: true,
|
---|
7243 | link: true,
|
---|
7244 | meta: true,
|
---|
7245 | param: true,
|
---|
7246 | source: true,
|
---|
7247 | track: true,
|
---|
7248 | wbr: true
|
---|
7249 | };
|
---|
7250 |
|
---|
7251 | var render = (module.exports = function(dom, opts) {
|
---|
7252 | if (!Array.isArray(dom) && !dom.cheerio) dom = [dom];
|
---|
7253 | opts = opts || {};
|
---|
7254 |
|
---|
7255 | var output = '';
|
---|
7256 |
|
---|
7257 | for (var i = 0; i < dom.length; i++) {
|
---|
7258 | var elem = dom[i];
|
---|
7259 |
|
---|
7260 | if (elem.type === 'root') output += render(elem.children, opts);
|
---|
7261 | else if (lib.isTag(elem)) output += renderTag(elem, opts);
|
---|
7262 | else if (elem.type === lib.Directive)
|
---|
7263 | output += renderDirective(elem);
|
---|
7264 | else if (elem.type === lib.Comment) output += renderComment(elem);
|
---|
7265 | else if (elem.type === lib.CDATA) output += renderCdata(elem);
|
---|
7266 | else output += renderText(elem, opts);
|
---|
7267 | }
|
---|
7268 |
|
---|
7269 | return output;
|
---|
7270 | });
|
---|
7271 |
|
---|
7272 | var foreignModeIntegrationPoints = [
|
---|
7273 | 'mi',
|
---|
7274 | 'mo',
|
---|
7275 | 'mn',
|
---|
7276 | 'ms',
|
---|
7277 | 'mtext',
|
---|
7278 | 'annotation-xml',
|
---|
7279 | 'foreignObject',
|
---|
7280 | 'desc',
|
---|
7281 | 'title'
|
---|
7282 | ];
|
---|
7283 |
|
---|
7284 | function renderTag(elem, opts) {
|
---|
7285 | // Handle SVG / MathML in HTML
|
---|
7286 | if (opts.xmlMode === 'foreign') {
|
---|
7287 | /* fix up mixed-case element names */
|
---|
7288 | elem.name = foreignNames$2.elementNames[elem.name] || elem.name;
|
---|
7289 | /* exit foreign mode at integration points */
|
---|
7290 | if (
|
---|
7291 | elem.parent &&
|
---|
7292 | foreignModeIntegrationPoints.indexOf(elem.parent.name) >= 0
|
---|
7293 | )
|
---|
7294 | opts = Object.assign({}, opts, { xmlMode: false });
|
---|
7295 | }
|
---|
7296 | if (!opts.xmlMode && ['svg', 'math'].indexOf(elem.name) >= 0) {
|
---|
7297 | opts = Object.assign({}, opts, { xmlMode: 'foreign' });
|
---|
7298 | }
|
---|
7299 |
|
---|
7300 | var tag = '<' + elem.name;
|
---|
7301 | var attribs = formatAttrs(elem.attribs, opts);
|
---|
7302 |
|
---|
7303 | if (attribs) {
|
---|
7304 | tag += ' ' + attribs;
|
---|
7305 | }
|
---|
7306 |
|
---|
7307 | if (opts.xmlMode && (!elem.children || elem.children.length === 0)) {
|
---|
7308 | tag += '/>';
|
---|
7309 | } else {
|
---|
7310 | tag += '>';
|
---|
7311 | if (elem.children) {
|
---|
7312 | tag += render(elem.children, opts);
|
---|
7313 | }
|
---|
7314 |
|
---|
7315 | if (!singleTag[elem.name] || opts.xmlMode) {
|
---|
7316 | tag += '</' + elem.name + '>';
|
---|
7317 | }
|
---|
7318 | }
|
---|
7319 |
|
---|
7320 | return tag;
|
---|
7321 | }
|
---|
7322 |
|
---|
7323 | function renderDirective(elem) {
|
---|
7324 | return '<' + elem.data + '>';
|
---|
7325 | }
|
---|
7326 |
|
---|
7327 | function renderText(elem, opts) {
|
---|
7328 | var data = elem.data || '';
|
---|
7329 |
|
---|
7330 | // if entities weren't decoded, no need to encode them back
|
---|
7331 | if (
|
---|
7332 | opts.decodeEntities &&
|
---|
7333 | !(elem.parent && elem.parent.name in unencodedElements)
|
---|
7334 | ) {
|
---|
7335 | data = lib$1.encodeXML(data);
|
---|
7336 | }
|
---|
7337 |
|
---|
7338 | return data;
|
---|
7339 | }
|
---|
7340 |
|
---|
7341 | function renderCdata(elem) {
|
---|
7342 | return '<![CDATA[' + elem.children[0].data + ']]>';
|
---|
7343 | }
|
---|
7344 |
|
---|
7345 | function renderComment(elem) {
|
---|
7346 | return '<!--' + elem.data + '-->';
|
---|
7347 | }
|
---|
7348 | });
|
---|
7349 |
|
---|
7350 | var isTag = domelementtype.isTag;
|
---|
7351 |
|
---|
7352 | var stringify = {
|
---|
7353 | getInnerHTML: getInnerHTML,
|
---|
7354 | getOuterHTML: domSerializer,
|
---|
7355 | getText: getText
|
---|
7356 | };
|
---|
7357 |
|
---|
7358 | function getInnerHTML(elem, opts){
|
---|
7359 | return elem.children ? elem.children.map(function(elem){
|
---|
7360 | return domSerializer(elem, opts);
|
---|
7361 | }).join("") : "";
|
---|
7362 | }
|
---|
7363 |
|
---|
7364 | function getText(elem){
|
---|
7365 | if(Array.isArray(elem)) return elem.map(getText).join("");
|
---|
7366 | if(isTag(elem) || elem.type === domelementtype.CDATA) return getText(elem.children);
|
---|
7367 | if(elem.type === domelementtype.Text) return elem.data;
|
---|
7368 | return "";
|
---|
7369 | }
|
---|
7370 |
|
---|
7371 | var traversal = createCommonjsModule(function (module, exports) {
|
---|
7372 | var getChildren = exports.getChildren = function(elem){
|
---|
7373 | return elem.children;
|
---|
7374 | };
|
---|
7375 |
|
---|
7376 | var getParent = exports.getParent = function(elem){
|
---|
7377 | return elem.parent;
|
---|
7378 | };
|
---|
7379 |
|
---|
7380 | exports.getSiblings = function(elem){
|
---|
7381 | var parent = getParent(elem);
|
---|
7382 | return parent ? getChildren(parent) : [elem];
|
---|
7383 | };
|
---|
7384 |
|
---|
7385 | exports.getAttributeValue = function(elem, name){
|
---|
7386 | return elem.attribs && elem.attribs[name];
|
---|
7387 | };
|
---|
7388 |
|
---|
7389 | exports.hasAttrib = function(elem, name){
|
---|
7390 | return !!elem.attribs && hasOwnProperty.call(elem.attribs, name);
|
---|
7391 | };
|
---|
7392 |
|
---|
7393 | exports.getName = function(elem){
|
---|
7394 | return elem.name;
|
---|
7395 | };
|
---|
7396 | });
|
---|
7397 |
|
---|
7398 | var removeElement = function(elem){
|
---|
7399 | if(elem.prev) elem.prev.next = elem.next;
|
---|
7400 | if(elem.next) elem.next.prev = elem.prev;
|
---|
7401 |
|
---|
7402 | if(elem.parent){
|
---|
7403 | var childs = elem.parent.children;
|
---|
7404 | childs.splice(childs.lastIndexOf(elem), 1);
|
---|
7405 | }
|
---|
7406 | };
|
---|
7407 |
|
---|
7408 | var replaceElement = function(elem, replacement){
|
---|
7409 | var prev = replacement.prev = elem.prev;
|
---|
7410 | if(prev){
|
---|
7411 | prev.next = replacement;
|
---|
7412 | }
|
---|
7413 |
|
---|
7414 | var next = replacement.next = elem.next;
|
---|
7415 | if(next){
|
---|
7416 | next.prev = replacement;
|
---|
7417 | }
|
---|
7418 |
|
---|
7419 | var parent = replacement.parent = elem.parent;
|
---|
7420 | if(parent){
|
---|
7421 | var childs = parent.children;
|
---|
7422 | childs[childs.lastIndexOf(elem)] = replacement;
|
---|
7423 | }
|
---|
7424 | };
|
---|
7425 |
|
---|
7426 | var appendChild = function(elem, child){
|
---|
7427 | child.parent = elem;
|
---|
7428 |
|
---|
7429 | if(elem.children.push(child) !== 1){
|
---|
7430 | var sibling = elem.children[elem.children.length - 2];
|
---|
7431 | sibling.next = child;
|
---|
7432 | child.prev = sibling;
|
---|
7433 | child.next = null;
|
---|
7434 | }
|
---|
7435 | };
|
---|
7436 |
|
---|
7437 | var append = function(elem, next){
|
---|
7438 | var parent = elem.parent,
|
---|
7439 | currNext = elem.next;
|
---|
7440 |
|
---|
7441 | next.next = currNext;
|
---|
7442 | next.prev = elem;
|
---|
7443 | elem.next = next;
|
---|
7444 | next.parent = parent;
|
---|
7445 |
|
---|
7446 | if(currNext){
|
---|
7447 | currNext.prev = next;
|
---|
7448 | if(parent){
|
---|
7449 | var childs = parent.children;
|
---|
7450 | childs.splice(childs.lastIndexOf(currNext), 0, next);
|
---|
7451 | }
|
---|
7452 | } else if(parent){
|
---|
7453 | parent.children.push(next);
|
---|
7454 | }
|
---|
7455 | };
|
---|
7456 |
|
---|
7457 | var prepend = function(elem, prev){
|
---|
7458 | var parent = elem.parent;
|
---|
7459 | if(parent){
|
---|
7460 | var childs = parent.children;
|
---|
7461 | childs.splice(childs.lastIndexOf(elem), 0, prev);
|
---|
7462 | }
|
---|
7463 |
|
---|
7464 | if(elem.prev){
|
---|
7465 | elem.prev.next = prev;
|
---|
7466 | }
|
---|
7467 |
|
---|
7468 | prev.parent = parent;
|
---|
7469 | prev.prev = elem.prev;
|
---|
7470 | prev.next = elem;
|
---|
7471 | elem.prev = prev;
|
---|
7472 | };
|
---|
7473 |
|
---|
7474 | var manipulation = {
|
---|
7475 | removeElement: removeElement,
|
---|
7476 | replaceElement: replaceElement,
|
---|
7477 | appendChild: appendChild,
|
---|
7478 | append: append,
|
---|
7479 | prepend: prepend
|
---|
7480 | };
|
---|
7481 |
|
---|
7482 | var isTag$1 = domelementtype.isTag;
|
---|
7483 |
|
---|
7484 | var querying = {
|
---|
7485 | filter: filter,
|
---|
7486 | find: find,
|
---|
7487 | findOneChild: findOneChild,
|
---|
7488 | findOne: findOne,
|
---|
7489 | existsOne: existsOne,
|
---|
7490 | findAll: findAll
|
---|
7491 | };
|
---|
7492 |
|
---|
7493 | function filter(test, element, recurse, limit){
|
---|
7494 | if(!Array.isArray(element)) element = [element];
|
---|
7495 |
|
---|
7496 | if(typeof limit !== "number" || !isFinite(limit)){
|
---|
7497 | limit = Infinity;
|
---|
7498 | }
|
---|
7499 | return find(test, element, recurse !== false, limit);
|
---|
7500 | }
|
---|
7501 |
|
---|
7502 | function find(test, elems, recurse, limit){
|
---|
7503 | var result = [], childs;
|
---|
7504 |
|
---|
7505 | for(var i = 0, j = elems.length; i < j; i++){
|
---|
7506 | if(test(elems[i])){
|
---|
7507 | result.push(elems[i]);
|
---|
7508 | if(--limit <= 0) break;
|
---|
7509 | }
|
---|
7510 |
|
---|
7511 | childs = elems[i].children;
|
---|
7512 | if(recurse && childs && childs.length > 0){
|
---|
7513 | childs = find(test, childs, recurse, limit);
|
---|
7514 | result = result.concat(childs);
|
---|
7515 | limit -= childs.length;
|
---|
7516 | if(limit <= 0) break;
|
---|
7517 | }
|
---|
7518 | }
|
---|
7519 |
|
---|
7520 | return result;
|
---|
7521 | }
|
---|
7522 |
|
---|
7523 | function findOneChild(test, elems){
|
---|
7524 | for(var i = 0, l = elems.length; i < l; i++){
|
---|
7525 | if(test(elems[i])) return elems[i];
|
---|
7526 | }
|
---|
7527 |
|
---|
7528 | return null;
|
---|
7529 | }
|
---|
7530 |
|
---|
7531 | function findOne(test, elems){
|
---|
7532 | var elem = null;
|
---|
7533 |
|
---|
7534 | for(var i = 0, l = elems.length; i < l && !elem; i++){
|
---|
7535 | if(!isTag$1(elems[i])){
|
---|
7536 | continue;
|
---|
7537 | } else if(test(elems[i])){
|
---|
7538 | elem = elems[i];
|
---|
7539 | } else if(elems[i].children.length > 0){
|
---|
7540 | elem = findOne(test, elems[i].children);
|
---|
7541 | }
|
---|
7542 | }
|
---|
7543 |
|
---|
7544 | return elem;
|
---|
7545 | }
|
---|
7546 |
|
---|
7547 | function existsOne(test, elems){
|
---|
7548 | for(var i = 0, l = elems.length; i < l; i++){
|
---|
7549 | if(
|
---|
7550 | isTag$1(elems[i]) && (
|
---|
7551 | test(elems[i]) || (
|
---|
7552 | elems[i].children.length > 0 &&
|
---|
7553 | existsOne(test, elems[i].children)
|
---|
7554 | )
|
---|
7555 | )
|
---|
7556 | ){
|
---|
7557 | return true;
|
---|
7558 | }
|
---|
7559 | }
|
---|
7560 |
|
---|
7561 | return false;
|
---|
7562 | }
|
---|
7563 |
|
---|
7564 | function findAll(test, elems){
|
---|
7565 | var result = [];
|
---|
7566 | for(var i = 0, j = elems.length; i < j; i++){
|
---|
7567 | if(!isTag$1(elems[i])) continue;
|
---|
7568 | if(test(elems[i])) result.push(elems[i]);
|
---|
7569 |
|
---|
7570 | if(elems[i].children.length > 0){
|
---|
7571 | result = result.concat(findAll(test, elems[i].children));
|
---|
7572 | }
|
---|
7573 | }
|
---|
7574 | return result;
|
---|
7575 | }
|
---|
7576 |
|
---|
7577 | var legacy$2 = createCommonjsModule(function (module, exports) {
|
---|
7578 | var isTag = exports.isTag = domelementtype.isTag;
|
---|
7579 |
|
---|
7580 | exports.testElement = function(options, element){
|
---|
7581 | for(var key in options){
|
---|
7582 | if(!options.hasOwnProperty(key));
|
---|
7583 | else if(key === "tag_name"){
|
---|
7584 | if(!isTag(element) || !options.tag_name(element.name)){
|
---|
7585 | return false;
|
---|
7586 | }
|
---|
7587 | } else if(key === "tag_type"){
|
---|
7588 | if(!options.tag_type(element.type)) return false;
|
---|
7589 | } else if(key === "tag_contains"){
|
---|
7590 | if(isTag(element) || !options.tag_contains(element.data)){
|
---|
7591 | return false;
|
---|
7592 | }
|
---|
7593 | } else if(!element.attribs || !options[key](element.attribs[key])){
|
---|
7594 | return false;
|
---|
7595 | }
|
---|
7596 | }
|
---|
7597 | return true;
|
---|
7598 | };
|
---|
7599 |
|
---|
7600 | var Checks = {
|
---|
7601 | tag_name: function(name){
|
---|
7602 | if(typeof name === "function"){
|
---|
7603 | return function(elem){ return isTag(elem) && name(elem.name); };
|
---|
7604 | } else if(name === "*"){
|
---|
7605 | return isTag;
|
---|
7606 | } else {
|
---|
7607 | return function(elem){ return isTag(elem) && elem.name === name; };
|
---|
7608 | }
|
---|
7609 | },
|
---|
7610 | tag_type: function(type){
|
---|
7611 | if(typeof type === "function"){
|
---|
7612 | return function(elem){ return type(elem.type); };
|
---|
7613 | } else {
|
---|
7614 | return function(elem){ return elem.type === type; };
|
---|
7615 | }
|
---|
7616 | },
|
---|
7617 | tag_contains: function(data){
|
---|
7618 | if(typeof data === "function"){
|
---|
7619 | return function(elem){ return !isTag(elem) && data(elem.data); };
|
---|
7620 | } else {
|
---|
7621 | return function(elem){ return !isTag(elem) && elem.data === data; };
|
---|
7622 | }
|
---|
7623 | }
|
---|
7624 | };
|
---|
7625 |
|
---|
7626 | function getAttribCheck(attrib, value){
|
---|
7627 | if(typeof value === "function"){
|
---|
7628 | return function(elem){ return elem.attribs && value(elem.attribs[attrib]); };
|
---|
7629 | } else {
|
---|
7630 | return function(elem){ return elem.attribs && elem.attribs[attrib] === value; };
|
---|
7631 | }
|
---|
7632 | }
|
---|
7633 |
|
---|
7634 | function combineFuncs(a, b){
|
---|
7635 | return function(elem){
|
---|
7636 | return a(elem) || b(elem);
|
---|
7637 | };
|
---|
7638 | }
|
---|
7639 |
|
---|
7640 | exports.getElements = function(options, element, recurse, limit){
|
---|
7641 | var funcs = Object.keys(options).map(function(key){
|
---|
7642 | var value = options[key];
|
---|
7643 | return key in Checks ? Checks[key](value) : getAttribCheck(key, value);
|
---|
7644 | });
|
---|
7645 |
|
---|
7646 | return funcs.length === 0 ? [] : this.filter(
|
---|
7647 | funcs.reduce(combineFuncs),
|
---|
7648 | element, recurse, limit
|
---|
7649 | );
|
---|
7650 | };
|
---|
7651 |
|
---|
7652 | exports.getElementById = function(id, element, recurse){
|
---|
7653 | if(!Array.isArray(element)) element = [element];
|
---|
7654 | return this.findOne(getAttribCheck("id", id), element, recurse !== false);
|
---|
7655 | };
|
---|
7656 |
|
---|
7657 | exports.getElementsByTagName = function(name, element, recurse, limit){
|
---|
7658 | return this.filter(Checks.tag_name(name), element, recurse, limit);
|
---|
7659 | };
|
---|
7660 |
|
---|
7661 | exports.getElementsByTagType = function(type, element, recurse, limit){
|
---|
7662 | return this.filter(Checks.tag_type(type), element, recurse, limit);
|
---|
7663 | };
|
---|
7664 | });
|
---|
7665 |
|
---|
7666 | var helpers = createCommonjsModule(function (module, exports) {
|
---|
7667 | // removeSubsets
|
---|
7668 | // Given an array of nodes, remove any member that is contained by another.
|
---|
7669 | exports.removeSubsets = function(nodes) {
|
---|
7670 | var idx = nodes.length, node, ancestor, replace;
|
---|
7671 |
|
---|
7672 | // Check if each node (or one of its ancestors) is already contained in the
|
---|
7673 | // array.
|
---|
7674 | while (--idx > -1) {
|
---|
7675 | node = ancestor = nodes[idx];
|
---|
7676 |
|
---|
7677 | // Temporarily remove the node under consideration
|
---|
7678 | nodes[idx] = null;
|
---|
7679 | replace = true;
|
---|
7680 |
|
---|
7681 | while (ancestor) {
|
---|
7682 | if (nodes.indexOf(ancestor) > -1) {
|
---|
7683 | replace = false;
|
---|
7684 | nodes.splice(idx, 1);
|
---|
7685 | break;
|
---|
7686 | }
|
---|
7687 | ancestor = ancestor.parent;
|
---|
7688 | }
|
---|
7689 |
|
---|
7690 | // If the node has been found to be unique, re-insert it.
|
---|
7691 | if (replace) {
|
---|
7692 | nodes[idx] = node;
|
---|
7693 | }
|
---|
7694 | }
|
---|
7695 |
|
---|
7696 | return nodes;
|
---|
7697 | };
|
---|
7698 |
|
---|
7699 | // Source: http://dom.spec.whatwg.org/#dom-node-comparedocumentposition
|
---|
7700 | var POSITION = {
|
---|
7701 | DISCONNECTED: 1,
|
---|
7702 | PRECEDING: 2,
|
---|
7703 | FOLLOWING: 4,
|
---|
7704 | CONTAINS: 8,
|
---|
7705 | CONTAINED_BY: 16
|
---|
7706 | };
|
---|
7707 |
|
---|
7708 | // Compare the position of one node against another node in any other document.
|
---|
7709 | // The return value is a bitmask with the following values:
|
---|
7710 | //
|
---|
7711 | // document order:
|
---|
7712 | // > There is an ordering, document order, defined on all the nodes in the
|
---|
7713 | // > document corresponding to the order in which the first character of the
|
---|
7714 | // > XML representation of each node occurs in the XML representation of the
|
---|
7715 | // > document after expansion of general entities. Thus, the document element
|
---|
7716 | // > node will be the first node. Element nodes occur before their children.
|
---|
7717 | // > Thus, document order orders element nodes in order of the occurrence of
|
---|
7718 | // > their start-tag in the XML (after expansion of entities). The attribute
|
---|
7719 | // > nodes of an element occur after the element and before its children. The
|
---|
7720 | // > relative order of attribute nodes is implementation-dependent./
|
---|
7721 | // Source:
|
---|
7722 | // http://www.w3.org/TR/DOM-Level-3-Core/glossary.html#dt-document-order
|
---|
7723 | //
|
---|
7724 | // @argument {Node} nodaA The first node to use in the comparison
|
---|
7725 | // @argument {Node} nodeB The second node to use in the comparison
|
---|
7726 | //
|
---|
7727 | // @return {Number} A bitmask describing the input nodes' relative position.
|
---|
7728 | // See http://dom.spec.whatwg.org/#dom-node-comparedocumentposition for
|
---|
7729 | // a description of these values.
|
---|
7730 | var comparePos = exports.compareDocumentPosition = function(nodeA, nodeB) {
|
---|
7731 | var aParents = [];
|
---|
7732 | var bParents = [];
|
---|
7733 | var current, sharedParent, siblings, aSibling, bSibling, idx;
|
---|
7734 |
|
---|
7735 | if (nodeA === nodeB) {
|
---|
7736 | return 0;
|
---|
7737 | }
|
---|
7738 |
|
---|
7739 | current = nodeA;
|
---|
7740 | while (current) {
|
---|
7741 | aParents.unshift(current);
|
---|
7742 | current = current.parent;
|
---|
7743 | }
|
---|
7744 | current = nodeB;
|
---|
7745 | while (current) {
|
---|
7746 | bParents.unshift(current);
|
---|
7747 | current = current.parent;
|
---|
7748 | }
|
---|
7749 |
|
---|
7750 | idx = 0;
|
---|
7751 | while (aParents[idx] === bParents[idx]) {
|
---|
7752 | idx++;
|
---|
7753 | }
|
---|
7754 |
|
---|
7755 | if (idx === 0) {
|
---|
7756 | return POSITION.DISCONNECTED;
|
---|
7757 | }
|
---|
7758 |
|
---|
7759 | sharedParent = aParents[idx - 1];
|
---|
7760 | siblings = sharedParent.children;
|
---|
7761 | aSibling = aParents[idx];
|
---|
7762 | bSibling = bParents[idx];
|
---|
7763 |
|
---|
7764 | if (siblings.indexOf(aSibling) > siblings.indexOf(bSibling)) {
|
---|
7765 | if (sharedParent === nodeB) {
|
---|
7766 | return POSITION.FOLLOWING | POSITION.CONTAINED_BY;
|
---|
7767 | }
|
---|
7768 | return POSITION.FOLLOWING;
|
---|
7769 | } else {
|
---|
7770 | if (sharedParent === nodeA) {
|
---|
7771 | return POSITION.PRECEDING | POSITION.CONTAINS;
|
---|
7772 | }
|
---|
7773 | return POSITION.PRECEDING;
|
---|
7774 | }
|
---|
7775 | };
|
---|
7776 |
|
---|
7777 | // Sort an array of nodes based on their relative position in the document and
|
---|
7778 | // remove any duplicate nodes. If the array contains nodes that do not belong
|
---|
7779 | // to the same document, sort order is unspecified.
|
---|
7780 | //
|
---|
7781 | // @argument {Array} nodes Array of DOM nodes
|
---|
7782 | //
|
---|
7783 | // @returns {Array} collection of unique nodes, sorted in document order
|
---|
7784 | exports.uniqueSort = function(nodes) {
|
---|
7785 | var idx = nodes.length, node, position;
|
---|
7786 |
|
---|
7787 | nodes = nodes.slice();
|
---|
7788 |
|
---|
7789 | while (--idx > -1) {
|
---|
7790 | node = nodes[idx];
|
---|
7791 | position = nodes.indexOf(node);
|
---|
7792 | if (position > -1 && position < idx) {
|
---|
7793 | nodes.splice(idx, 1);
|
---|
7794 | }
|
---|
7795 | }
|
---|
7796 | nodes.sort(function(a, b) {
|
---|
7797 | var relative = comparePos(a, b);
|
---|
7798 | if (relative & POSITION.PRECEDING) {
|
---|
7799 | return -1;
|
---|
7800 | } else if (relative & POSITION.FOLLOWING) {
|
---|
7801 | return 1;
|
---|
7802 | }
|
---|
7803 | return 0;
|
---|
7804 | });
|
---|
7805 |
|
---|
7806 | return nodes;
|
---|
7807 | };
|
---|
7808 | });
|
---|
7809 |
|
---|
7810 | var domutils = createCommonjsModule(function (module) {
|
---|
7811 | var DomUtils = module.exports;
|
---|
7812 |
|
---|
7813 | [
|
---|
7814 | stringify,
|
---|
7815 | traversal,
|
---|
7816 | manipulation,
|
---|
7817 | querying,
|
---|
7818 | legacy$2,
|
---|
7819 | helpers
|
---|
7820 | ].forEach(function(ext){
|
---|
7821 | Object.keys(ext).forEach(function(key){
|
---|
7822 | DomUtils[key] = ext[key].bind(DomUtils);
|
---|
7823 | });
|
---|
7824 | });
|
---|
7825 | });
|
---|
7826 |
|
---|
7827 | var parse_1 = parse;
|
---|
7828 |
|
---|
7829 | //following http://www.w3.org/TR/css3-selectors/#nth-child-pseudo
|
---|
7830 |
|
---|
7831 | //[ ['-'|'+']? INTEGER? {N} [ S* ['-'|'+'] S* INTEGER ]?
|
---|
7832 | var re_nthElement = /^([+\-]?\d*n)?\s*(?:([+\-]?)\s*(\d+))?$/;
|
---|
7833 |
|
---|
7834 | /*
|
---|
7835 | parses a nth-check formula, returns an array of two numbers
|
---|
7836 | */
|
---|
7837 | function parse(formula){
|
---|
7838 | formula = formula.trim().toLowerCase();
|
---|
7839 |
|
---|
7840 | if(formula === "even"){
|
---|
7841 | return [2, 0];
|
---|
7842 | } else if(formula === "odd"){
|
---|
7843 | return [2, 1];
|
---|
7844 | } else {
|
---|
7845 | var parsed = formula.match(re_nthElement);
|
---|
7846 |
|
---|
7847 | if(!parsed){
|
---|
7848 | throw new SyntaxError("n-th rule couldn't be parsed ('" + formula + "')");
|
---|
7849 | }
|
---|
7850 |
|
---|
7851 | var a;
|
---|
7852 |
|
---|
7853 | if(parsed[1]){
|
---|
7854 | a = parseInt(parsed[1], 10);
|
---|
7855 | if(isNaN(a)){
|
---|
7856 | if(parsed[1].charAt(0) === "-") a = -1;
|
---|
7857 | else a = 1;
|
---|
7858 | }
|
---|
7859 | } else a = 0;
|
---|
7860 |
|
---|
7861 | return [
|
---|
7862 | a,
|
---|
7863 | parsed[3] ? parseInt((parsed[2] || "") + parsed[3], 10) : 0
|
---|
7864 | ];
|
---|
7865 | }
|
---|
7866 | }
|
---|
7867 |
|
---|
7868 | var boolbase = {
|
---|
7869 | trueFunc: function trueFunc(){
|
---|
7870 | return true;
|
---|
7871 | },
|
---|
7872 | falseFunc: function falseFunc(){
|
---|
7873 | return false;
|
---|
7874 | }
|
---|
7875 | };
|
---|
7876 |
|
---|
7877 | var compile_1 = compile;
|
---|
7878 |
|
---|
7879 | var trueFunc = boolbase.trueFunc,
|
---|
7880 | falseFunc = boolbase.falseFunc;
|
---|
7881 |
|
---|
7882 | /*
|
---|
7883 | returns a function that checks if an elements index matches the given rule
|
---|
7884 | highly optimized to return the fastest solution
|
---|
7885 | */
|
---|
7886 | function compile(parsed){
|
---|
7887 | var a = parsed[0],
|
---|
7888 | b = parsed[1] - 1;
|
---|
7889 |
|
---|
7890 | //when b <= 0, a*n won't be possible for any matches when a < 0
|
---|
7891 | //besides, the specification says that no element is matched when a and b are 0
|
---|
7892 | if(b < 0 && a <= 0) return falseFunc;
|
---|
7893 |
|
---|
7894 | //when a is in the range -1..1, it matches any element (so only b is checked)
|
---|
7895 | if(a ===-1) return function(pos){ return pos <= b; };
|
---|
7896 | if(a === 0) return function(pos){ return pos === b; };
|
---|
7897 | //when b <= 0 and a === 1, they match any element
|
---|
7898 | if(a === 1) return b < 0 ? trueFunc : function(pos){ return pos >= b; };
|
---|
7899 |
|
---|
7900 | //when a > 0, modulo can be used to check if there is a match
|
---|
7901 | var bMod = b % a;
|
---|
7902 | if(bMod < 0) bMod += a;
|
---|
7903 |
|
---|
7904 | if(a > 1){
|
---|
7905 | return function(pos){
|
---|
7906 | return pos >= b && pos % a === bMod;
|
---|
7907 | };
|
---|
7908 | }
|
---|
7909 |
|
---|
7910 | a *= -1; //make `a` positive
|
---|
7911 |
|
---|
7912 | return function(pos){
|
---|
7913 | return pos <= b && pos % a === bMod;
|
---|
7914 | };
|
---|
7915 | }
|
---|
7916 |
|
---|
7917 | var nthCheck = function nthCheck(formula){
|
---|
7918 | return compile_1(parse_1(formula));
|
---|
7919 | };
|
---|
7920 |
|
---|
7921 | var parse_1$1 = parse_1;
|
---|
7922 | var compile_1$1 = compile_1;
|
---|
7923 | nthCheck.parse = parse_1$1;
|
---|
7924 | nthCheck.compile = compile_1$1;
|
---|
7925 |
|
---|
7926 | var hasAttrib = domutils.hasAttrib,
|
---|
7927 | getAttributeValue = domutils.getAttributeValue,
|
---|
7928 | falseFunc$1 = boolbase.falseFunc;
|
---|
7929 |
|
---|
7930 | //https://github.com/slevithan/XRegExp/blob/master/src/xregexp.js#L469
|
---|
7931 | var reChars = /[-[\]{}()*+?.,\\^$|#\s]/g;
|
---|
7932 |
|
---|
7933 | /*
|
---|
7934 | attribute selectors
|
---|
7935 | */
|
---|
7936 |
|
---|
7937 | var attributeRules = {
|
---|
7938 | __proto__: null,
|
---|
7939 | equals: function(next, data){
|
---|
7940 | var name = data.name,
|
---|
7941 | value = data.value;
|
---|
7942 |
|
---|
7943 | if(data.ignoreCase){
|
---|
7944 | value = value.toLowerCase();
|
---|
7945 |
|
---|
7946 | return function equalsIC(elem){
|
---|
7947 | var attr = getAttributeValue(elem, name);
|
---|
7948 | return attr != null && attr.toLowerCase() === value && next(elem);
|
---|
7949 | };
|
---|
7950 | }
|
---|
7951 |
|
---|
7952 | return function equals(elem){
|
---|
7953 | return getAttributeValue(elem, name) === value && next(elem);
|
---|
7954 | };
|
---|
7955 | },
|
---|
7956 | hyphen: function(next, data){
|
---|
7957 | var name = data.name,
|
---|
7958 | value = data.value,
|
---|
7959 | len = value.length;
|
---|
7960 |
|
---|
7961 | if(data.ignoreCase){
|
---|
7962 | value = value.toLowerCase();
|
---|
7963 |
|
---|
7964 | return function hyphenIC(elem){
|
---|
7965 | var attr = getAttributeValue(elem, name);
|
---|
7966 | return attr != null &&
|
---|
7967 | (attr.length === len || attr.charAt(len) === "-") &&
|
---|
7968 | attr.substr(0, len).toLowerCase() === value &&
|
---|
7969 | next(elem);
|
---|
7970 | };
|
---|
7971 | }
|
---|
7972 |
|
---|
7973 | return function hyphen(elem){
|
---|
7974 | var attr = getAttributeValue(elem, name);
|
---|
7975 | return attr != null &&
|
---|
7976 | attr.substr(0, len) === value &&
|
---|
7977 | (attr.length === len || attr.charAt(len) === "-") &&
|
---|
7978 | next(elem);
|
---|
7979 | };
|
---|
7980 | },
|
---|
7981 | element: function(next, data){
|
---|
7982 | var name = data.name,
|
---|
7983 | value = data.value;
|
---|
7984 |
|
---|
7985 | if(/\s/.test(value)){
|
---|
7986 | return falseFunc$1;
|
---|
7987 | }
|
---|
7988 |
|
---|
7989 | value = value.replace(reChars, "\\$&");
|
---|
7990 |
|
---|
7991 | var pattern = "(?:^|\\s)" + value + "(?:$|\\s)",
|
---|
7992 | flags = data.ignoreCase ? "i" : "",
|
---|
7993 | regex = new RegExp(pattern, flags);
|
---|
7994 |
|
---|
7995 | return function element(elem){
|
---|
7996 | var attr = getAttributeValue(elem, name);
|
---|
7997 | return attr != null && regex.test(attr) && next(elem);
|
---|
7998 | };
|
---|
7999 | },
|
---|
8000 | exists: function(next, data){
|
---|
8001 | var name = data.name;
|
---|
8002 | return function exists(elem){
|
---|
8003 | return hasAttrib(elem, name) && next(elem);
|
---|
8004 | };
|
---|
8005 | },
|
---|
8006 | start: function(next, data){
|
---|
8007 | var name = data.name,
|
---|
8008 | value = data.value,
|
---|
8009 | len = value.length;
|
---|
8010 |
|
---|
8011 | if(len === 0){
|
---|
8012 | return falseFunc$1;
|
---|
8013 | }
|
---|
8014 |
|
---|
8015 | if(data.ignoreCase){
|
---|
8016 | value = value.toLowerCase();
|
---|
8017 |
|
---|
8018 | return function startIC(elem){
|
---|
8019 | var attr = getAttributeValue(elem, name);
|
---|
8020 | return attr != null && attr.substr(0, len).toLowerCase() === value && next(elem);
|
---|
8021 | };
|
---|
8022 | }
|
---|
8023 |
|
---|
8024 | return function start(elem){
|
---|
8025 | var attr = getAttributeValue(elem, name);
|
---|
8026 | return attr != null && attr.substr(0, len) === value && next(elem);
|
---|
8027 | };
|
---|
8028 | },
|
---|
8029 | end: function(next, data){
|
---|
8030 | var name = data.name,
|
---|
8031 | value = data.value,
|
---|
8032 | len = -value.length;
|
---|
8033 |
|
---|
8034 | if(len === 0){
|
---|
8035 | return falseFunc$1;
|
---|
8036 | }
|
---|
8037 |
|
---|
8038 | if(data.ignoreCase){
|
---|
8039 | value = value.toLowerCase();
|
---|
8040 |
|
---|
8041 | return function endIC(elem){
|
---|
8042 | var attr = getAttributeValue(elem, name);
|
---|
8043 | return attr != null && attr.substr(len).toLowerCase() === value && next(elem);
|
---|
8044 | };
|
---|
8045 | }
|
---|
8046 |
|
---|
8047 | return function end(elem){
|
---|
8048 | var attr = getAttributeValue(elem, name);
|
---|
8049 | return attr != null && attr.substr(len) === value && next(elem);
|
---|
8050 | };
|
---|
8051 | },
|
---|
8052 | any: function(next, data){
|
---|
8053 | var name = data.name,
|
---|
8054 | value = data.value;
|
---|
8055 |
|
---|
8056 | if(value === ""){
|
---|
8057 | return falseFunc$1;
|
---|
8058 | }
|
---|
8059 |
|
---|
8060 | if(data.ignoreCase){
|
---|
8061 | var regex = new RegExp(value.replace(reChars, "\\$&"), "i");
|
---|
8062 |
|
---|
8063 | return function anyIC(elem){
|
---|
8064 | var attr = getAttributeValue(elem, name);
|
---|
8065 | return attr != null && regex.test(attr) && next(elem);
|
---|
8066 | };
|
---|
8067 | }
|
---|
8068 |
|
---|
8069 | return function any(elem){
|
---|
8070 | var attr = getAttributeValue(elem, name);
|
---|
8071 | return attr != null && attr.indexOf(value) >= 0 && next(elem);
|
---|
8072 | };
|
---|
8073 | },
|
---|
8074 | not: function(next, data){
|
---|
8075 | var name = data.name,
|
---|
8076 | value = data.value;
|
---|
8077 |
|
---|
8078 | if(value === ""){
|
---|
8079 | return function notEmpty(elem){
|
---|
8080 | return !!getAttributeValue(elem, name) && next(elem);
|
---|
8081 | };
|
---|
8082 | } else if(data.ignoreCase){
|
---|
8083 | value = value.toLowerCase();
|
---|
8084 |
|
---|
8085 | return function notIC(elem){
|
---|
8086 | var attr = getAttributeValue(elem, name);
|
---|
8087 | return attr != null && attr.toLowerCase() !== value && next(elem);
|
---|
8088 | };
|
---|
8089 | }
|
---|
8090 |
|
---|
8091 | return function not(elem){
|
---|
8092 | return getAttributeValue(elem, name) !== value && next(elem);
|
---|
8093 | };
|
---|
8094 | }
|
---|
8095 | };
|
---|
8096 |
|
---|
8097 | var attributes = {
|
---|
8098 | compile: function(next, data, options){
|
---|
8099 | if(options && options.strict && (
|
---|
8100 | data.ignoreCase || data.action === "not"
|
---|
8101 | )) throw SyntaxError("Unsupported attribute selector");
|
---|
8102 | return attributeRules[data.action](next, data);
|
---|
8103 | },
|
---|
8104 | rules: attributeRules
|
---|
8105 | };
|
---|
8106 |
|
---|
8107 | /*
|
---|
8108 | pseudo selectors
|
---|
8109 |
|
---|
8110 | ---
|
---|
8111 |
|
---|
8112 | they are available in two forms:
|
---|
8113 | * filters called when the selector
|
---|
8114 | is compiled and return a function
|
---|
8115 | that needs to return next()
|
---|
8116 | * pseudos get called on execution
|
---|
8117 | they need to return a boolean
|
---|
8118 | */
|
---|
8119 |
|
---|
8120 | var isTag$2 = domutils.isTag,
|
---|
8121 | getText$1 = domutils.getText,
|
---|
8122 | getParent = domutils.getParent,
|
---|
8123 | getChildren = domutils.getChildren,
|
---|
8124 | getSiblings = domutils.getSiblings,
|
---|
8125 | hasAttrib$1 = domutils.hasAttrib,
|
---|
8126 | getName = domutils.getName,
|
---|
8127 | getAttribute= domutils.getAttributeValue,
|
---|
8128 | checkAttrib = attributes.rules.equals,
|
---|
8129 | trueFunc$1 = boolbase.trueFunc,
|
---|
8130 | falseFunc$2 = boolbase.falseFunc;
|
---|
8131 |
|
---|
8132 | //helper methods
|
---|
8133 | function getFirstElement(elems){
|
---|
8134 | for(var i = 0; elems && i < elems.length; i++){
|
---|
8135 | if(isTag$2(elems[i])) return elems[i];
|
---|
8136 | }
|
---|
8137 | }
|
---|
8138 |
|
---|
8139 | function getAttribFunc(name, value){
|
---|
8140 | var data = {name: name, value: value};
|
---|
8141 | return function attribFunc(next){
|
---|
8142 | return checkAttrib(next, data);
|
---|
8143 | };
|
---|
8144 | }
|
---|
8145 |
|
---|
8146 | function getChildFunc(next){
|
---|
8147 | return function(elem){
|
---|
8148 | return !!getParent(elem) && next(elem);
|
---|
8149 | };
|
---|
8150 | }
|
---|
8151 |
|
---|
8152 | var filters = {
|
---|
8153 | contains: function(next, text){
|
---|
8154 | return function contains(elem){
|
---|
8155 | return next(elem) && getText$1(elem).indexOf(text) >= 0;
|
---|
8156 | };
|
---|
8157 | },
|
---|
8158 | icontains: function(next, text){
|
---|
8159 | var itext = text.toLowerCase();
|
---|
8160 | return function icontains(elem){
|
---|
8161 | return next(elem) &&
|
---|
8162 | getText$1(elem).toLowerCase().indexOf(itext) >= 0;
|
---|
8163 | };
|
---|
8164 | },
|
---|
8165 |
|
---|
8166 | //location specific methods
|
---|
8167 | "nth-child": function(next, rule){
|
---|
8168 | var func = nthCheck(rule);
|
---|
8169 |
|
---|
8170 | if(func === falseFunc$2) return func;
|
---|
8171 | if(func === trueFunc$1) return getChildFunc(next);
|
---|
8172 |
|
---|
8173 | return function nthChild(elem){
|
---|
8174 | var siblings = getSiblings(elem);
|
---|
8175 |
|
---|
8176 | for(var i = 0, pos = 0; i < siblings.length; i++){
|
---|
8177 | if(isTag$2(siblings[i])){
|
---|
8178 | if(siblings[i] === elem) break;
|
---|
8179 | else pos++;
|
---|
8180 | }
|
---|
8181 | }
|
---|
8182 |
|
---|
8183 | return func(pos) && next(elem);
|
---|
8184 | };
|
---|
8185 | },
|
---|
8186 | "nth-last-child": function(next, rule){
|
---|
8187 | var func = nthCheck(rule);
|
---|
8188 |
|
---|
8189 | if(func === falseFunc$2) return func;
|
---|
8190 | if(func === trueFunc$1) return getChildFunc(next);
|
---|
8191 |
|
---|
8192 | return function nthLastChild(elem){
|
---|
8193 | var siblings = getSiblings(elem);
|
---|
8194 |
|
---|
8195 | for(var pos = 0, i = siblings.length - 1; i >= 0; i--){
|
---|
8196 | if(isTag$2(siblings[i])){
|
---|
8197 | if(siblings[i] === elem) break;
|
---|
8198 | else pos++;
|
---|
8199 | }
|
---|
8200 | }
|
---|
8201 |
|
---|
8202 | return func(pos) && next(elem);
|
---|
8203 | };
|
---|
8204 | },
|
---|
8205 | "nth-of-type": function(next, rule){
|
---|
8206 | var func = nthCheck(rule);
|
---|
8207 |
|
---|
8208 | if(func === falseFunc$2) return func;
|
---|
8209 | if(func === trueFunc$1) return getChildFunc(next);
|
---|
8210 |
|
---|
8211 | return function nthOfType(elem){
|
---|
8212 | var siblings = getSiblings(elem);
|
---|
8213 |
|
---|
8214 | for(var pos = 0, i = 0; i < siblings.length; i++){
|
---|
8215 | if(isTag$2(siblings[i])){
|
---|
8216 | if(siblings[i] === elem) break;
|
---|
8217 | if(getName(siblings[i]) === getName(elem)) pos++;
|
---|
8218 | }
|
---|
8219 | }
|
---|
8220 |
|
---|
8221 | return func(pos) && next(elem);
|
---|
8222 | };
|
---|
8223 | },
|
---|
8224 | "nth-last-of-type": function(next, rule){
|
---|
8225 | var func = nthCheck(rule);
|
---|
8226 |
|
---|
8227 | if(func === falseFunc$2) return func;
|
---|
8228 | if(func === trueFunc$1) return getChildFunc(next);
|
---|
8229 |
|
---|
8230 | return function nthLastOfType(elem){
|
---|
8231 | var siblings = getSiblings(elem);
|
---|
8232 |
|
---|
8233 | for(var pos = 0, i = siblings.length - 1; i >= 0; i--){
|
---|
8234 | if(isTag$2(siblings[i])){
|
---|
8235 | if(siblings[i] === elem) break;
|
---|
8236 | if(getName(siblings[i]) === getName(elem)) pos++;
|
---|
8237 | }
|
---|
8238 | }
|
---|
8239 |
|
---|
8240 | return func(pos) && next(elem);
|
---|
8241 | };
|
---|
8242 | },
|
---|
8243 |
|
---|
8244 | //TODO determine the actual root element
|
---|
8245 | root: function(next){
|
---|
8246 | return function(elem){
|
---|
8247 | return !getParent(elem) && next(elem);
|
---|
8248 | };
|
---|
8249 | },
|
---|
8250 |
|
---|
8251 | scope: function(next, rule, options, context){
|
---|
8252 | if(!context || context.length === 0){
|
---|
8253 | //equivalent to :root
|
---|
8254 | return filters.root(next);
|
---|
8255 | }
|
---|
8256 |
|
---|
8257 | if(context.length === 1){
|
---|
8258 | //NOTE: can't be unpacked, as :has uses this for side-effects
|
---|
8259 | return function(elem){
|
---|
8260 | return context[0] === elem && next(elem);
|
---|
8261 | };
|
---|
8262 | }
|
---|
8263 |
|
---|
8264 | return function(elem){
|
---|
8265 | return context.indexOf(elem) >= 0 && next(elem);
|
---|
8266 | };
|
---|
8267 | },
|
---|
8268 |
|
---|
8269 | //jQuery extensions (others follow as pseudos)
|
---|
8270 | checkbox: getAttribFunc("type", "checkbox"),
|
---|
8271 | file: getAttribFunc("type", "file"),
|
---|
8272 | password: getAttribFunc("type", "password"),
|
---|
8273 | radio: getAttribFunc("type", "radio"),
|
---|
8274 | reset: getAttribFunc("type", "reset"),
|
---|
8275 | image: getAttribFunc("type", "image"),
|
---|
8276 | submit: getAttribFunc("type", "submit")
|
---|
8277 | };
|
---|
8278 |
|
---|
8279 | //while filters are precompiled, pseudos get called when they are needed
|
---|
8280 | var pseudos = {
|
---|
8281 | empty: function(elem){
|
---|
8282 | return !getChildren(elem).some(function(elem){
|
---|
8283 | return isTag$2(elem) || elem.type === "text";
|
---|
8284 | });
|
---|
8285 | },
|
---|
8286 |
|
---|
8287 | "first-child": function(elem){
|
---|
8288 | return getFirstElement(getSiblings(elem)) === elem;
|
---|
8289 | },
|
---|
8290 | "last-child": function(elem){
|
---|
8291 | var siblings = getSiblings(elem);
|
---|
8292 |
|
---|
8293 | for(var i = siblings.length - 1; i >= 0; i--){
|
---|
8294 | if(siblings[i] === elem) return true;
|
---|
8295 | if(isTag$2(siblings[i])) break;
|
---|
8296 | }
|
---|
8297 |
|
---|
8298 | return false;
|
---|
8299 | },
|
---|
8300 | "first-of-type": function(elem){
|
---|
8301 | var siblings = getSiblings(elem);
|
---|
8302 |
|
---|
8303 | for(var i = 0; i < siblings.length; i++){
|
---|
8304 | if(isTag$2(siblings[i])){
|
---|
8305 | if(siblings[i] === elem) return true;
|
---|
8306 | if(getName(siblings[i]) === getName(elem)) break;
|
---|
8307 | }
|
---|
8308 | }
|
---|
8309 |
|
---|
8310 | return false;
|
---|
8311 | },
|
---|
8312 | "last-of-type": function(elem){
|
---|
8313 | var siblings = getSiblings(elem);
|
---|
8314 |
|
---|
8315 | for(var i = siblings.length-1; i >= 0; i--){
|
---|
8316 | if(isTag$2(siblings[i])){
|
---|
8317 | if(siblings[i] === elem) return true;
|
---|
8318 | if(getName(siblings[i]) === getName(elem)) break;
|
---|
8319 | }
|
---|
8320 | }
|
---|
8321 |
|
---|
8322 | return false;
|
---|
8323 | },
|
---|
8324 | "only-of-type": function(elem){
|
---|
8325 | var siblings = getSiblings(elem);
|
---|
8326 |
|
---|
8327 | for(var i = 0, j = siblings.length; i < j; i++){
|
---|
8328 | if(isTag$2(siblings[i])){
|
---|
8329 | if(siblings[i] === elem) continue;
|
---|
8330 | if(getName(siblings[i]) === getName(elem)) return false;
|
---|
8331 | }
|
---|
8332 | }
|
---|
8333 |
|
---|
8334 | return true;
|
---|
8335 | },
|
---|
8336 | "only-child": function(elem){
|
---|
8337 | var siblings = getSiblings(elem);
|
---|
8338 |
|
---|
8339 | for(var i = 0; i < siblings.length; i++){
|
---|
8340 | if(isTag$2(siblings[i]) && siblings[i] !== elem) return false;
|
---|
8341 | }
|
---|
8342 |
|
---|
8343 | return true;
|
---|
8344 | },
|
---|
8345 |
|
---|
8346 | //:matches(a, area, link)[href]
|
---|
8347 | link: function(elem){
|
---|
8348 | return hasAttrib$1(elem, "href");
|
---|
8349 | },
|
---|
8350 | visited: falseFunc$2, //seems to be a valid implementation
|
---|
8351 | //TODO: :any-link once the name is finalized (as an alias of :link)
|
---|
8352 |
|
---|
8353 | //forms
|
---|
8354 | //to consider: :target
|
---|
8355 |
|
---|
8356 | //:matches([selected], select:not([multiple]):not(> option[selected]) > option:first-of-type)
|
---|
8357 | selected: function(elem){
|
---|
8358 | if(hasAttrib$1(elem, "selected")) return true;
|
---|
8359 | else if(getName(elem) !== "option") return false;
|
---|
8360 |
|
---|
8361 | //the first <option> in a <select> is also selected
|
---|
8362 | var parent = getParent(elem);
|
---|
8363 |
|
---|
8364 | if(
|
---|
8365 | !parent ||
|
---|
8366 | getName(parent) !== "select" ||
|
---|
8367 | hasAttrib$1(parent, "multiple")
|
---|
8368 | ) return false;
|
---|
8369 |
|
---|
8370 | var siblings = getChildren(parent),
|
---|
8371 | sawElem = false;
|
---|
8372 |
|
---|
8373 | for(var i = 0; i < siblings.length; i++){
|
---|
8374 | if(isTag$2(siblings[i])){
|
---|
8375 | if(siblings[i] === elem){
|
---|
8376 | sawElem = true;
|
---|
8377 | } else if(!sawElem){
|
---|
8378 | return false;
|
---|
8379 | } else if(hasAttrib$1(siblings[i], "selected")){
|
---|
8380 | return false;
|
---|
8381 | }
|
---|
8382 | }
|
---|
8383 | }
|
---|
8384 |
|
---|
8385 | return sawElem;
|
---|
8386 | },
|
---|
8387 | //https://html.spec.whatwg.org/multipage/scripting.html#disabled-elements
|
---|
8388 | //:matches(
|
---|
8389 | // :matches(button, input, select, textarea, menuitem, optgroup, option)[disabled],
|
---|
8390 | // optgroup[disabled] > option),
|
---|
8391 | // fieldset[disabled] * //TODO not child of first <legend>
|
---|
8392 | //)
|
---|
8393 | disabled: function(elem){
|
---|
8394 | return hasAttrib$1(elem, "disabled");
|
---|
8395 | },
|
---|
8396 | enabled: function(elem){
|
---|
8397 | return !hasAttrib$1(elem, "disabled");
|
---|
8398 | },
|
---|
8399 | //:matches(:matches(:radio, :checkbox)[checked], :selected) (TODO menuitem)
|
---|
8400 | checked: function(elem){
|
---|
8401 | return hasAttrib$1(elem, "checked") || pseudos.selected(elem);
|
---|
8402 | },
|
---|
8403 | //:matches(input, select, textarea)[required]
|
---|
8404 | required: function(elem){
|
---|
8405 | return hasAttrib$1(elem, "required");
|
---|
8406 | },
|
---|
8407 | //:matches(input, select, textarea):not([required])
|
---|
8408 | optional: function(elem){
|
---|
8409 | return !hasAttrib$1(elem, "required");
|
---|
8410 | },
|
---|
8411 |
|
---|
8412 | //jQuery extensions
|
---|
8413 |
|
---|
8414 | //:not(:empty)
|
---|
8415 | parent: function(elem){
|
---|
8416 | return !pseudos.empty(elem);
|
---|
8417 | },
|
---|
8418 | //:matches(h1, h2, h3, h4, h5, h6)
|
---|
8419 | header: function(elem){
|
---|
8420 | var name = getName(elem);
|
---|
8421 | return name === "h1" ||
|
---|
8422 | name === "h2" ||
|
---|
8423 | name === "h3" ||
|
---|
8424 | name === "h4" ||
|
---|
8425 | name === "h5" ||
|
---|
8426 | name === "h6";
|
---|
8427 | },
|
---|
8428 |
|
---|
8429 | //:matches(button, input[type=button])
|
---|
8430 | button: function(elem){
|
---|
8431 | var name = getName(elem);
|
---|
8432 | return name === "button" ||
|
---|
8433 | name === "input" &&
|
---|
8434 | getAttribute(elem, "type") === "button";
|
---|
8435 | },
|
---|
8436 | //:matches(input, textarea, select, button)
|
---|
8437 | input: function(elem){
|
---|
8438 | var name = getName(elem);
|
---|
8439 | return name === "input" ||
|
---|
8440 | name === "textarea" ||
|
---|
8441 | name === "select" ||
|
---|
8442 | name === "button";
|
---|
8443 | },
|
---|
8444 | //input:matches(:not([type!='']), [type='text' i])
|
---|
8445 | text: function(elem){
|
---|
8446 | var attr;
|
---|
8447 | return getName(elem) === "input" && (
|
---|
8448 | !(attr = getAttribute(elem, "type")) ||
|
---|
8449 | attr.toLowerCase() === "text"
|
---|
8450 | );
|
---|
8451 | }
|
---|
8452 | };
|
---|
8453 |
|
---|
8454 | function verifyArgs(func, name, subselect){
|
---|
8455 | if(subselect === null){
|
---|
8456 | if(func.length > 1 && name !== "scope"){
|
---|
8457 | throw new SyntaxError("pseudo-selector :" + name + " requires an argument");
|
---|
8458 | }
|
---|
8459 | } else {
|
---|
8460 | if(func.length === 1){
|
---|
8461 | throw new SyntaxError("pseudo-selector :" + name + " doesn't have any arguments");
|
---|
8462 | }
|
---|
8463 | }
|
---|
8464 | }
|
---|
8465 |
|
---|
8466 | //FIXME this feels hacky
|
---|
8467 | var re_CSS3 = /^(?:(?:nth|last|first|only)-(?:child|of-type)|root|empty|(?:en|dis)abled|checked|not)$/;
|
---|
8468 |
|
---|
8469 | var pseudos_1 = {
|
---|
8470 | compile: function(next, data, options, context){
|
---|
8471 | var name = data.name,
|
---|
8472 | subselect = data.data;
|
---|
8473 |
|
---|
8474 | if(options && options.strict && !re_CSS3.test(name)){
|
---|
8475 | throw SyntaxError(":" + name + " isn't part of CSS3");
|
---|
8476 | }
|
---|
8477 |
|
---|
8478 | if(typeof filters[name] === "function"){
|
---|
8479 | verifyArgs(filters[name], name, subselect);
|
---|
8480 | return filters[name](next, subselect, options, context);
|
---|
8481 | } else if(typeof pseudos[name] === "function"){
|
---|
8482 | var func = pseudos[name];
|
---|
8483 | verifyArgs(func, name, subselect);
|
---|
8484 |
|
---|
8485 | if(next === trueFunc$1) return func;
|
---|
8486 |
|
---|
8487 | return function pseudoArgs(elem){
|
---|
8488 | return func(elem, subselect) && next(elem);
|
---|
8489 | };
|
---|
8490 | } else {
|
---|
8491 | throw new SyntaxError("unmatched pseudo-class :" + name);
|
---|
8492 | }
|
---|
8493 | },
|
---|
8494 | filters: filters,
|
---|
8495 | pseudos: pseudos
|
---|
8496 | };
|
---|
8497 |
|
---|
8498 | var cssWhat = parse$1;
|
---|
8499 |
|
---|
8500 | var re_name = /^(?:\\.|[\w\-\u00b0-\uFFFF])+/,
|
---|
8501 | re_escape = /\\([\da-f]{1,6}\s?|(\s)|.)/ig,
|
---|
8502 | //modified version of https://github.com/jquery/sizzle/blob/master/src/sizzle.js#L87
|
---|
8503 | re_attr = /^\s*((?:\\.|[\w\u00b0-\uFFFF\-])+)\s*(?:(\S?)=\s*(?:(['"])([^]*?)\3|(#?(?:\\.|[\w\u00b0-\uFFFF\-])*)|)|)\s*(i)?\]/;
|
---|
8504 |
|
---|
8505 | var actionTypes = {
|
---|
8506 | __proto__: null,
|
---|
8507 | "undefined": "exists",
|
---|
8508 | "": "equals",
|
---|
8509 | "~": "element",
|
---|
8510 | "^": "start",
|
---|
8511 | "$": "end",
|
---|
8512 | "*": "any",
|
---|
8513 | "!": "not",
|
---|
8514 | "|": "hyphen"
|
---|
8515 | };
|
---|
8516 |
|
---|
8517 | var simpleSelectors = {
|
---|
8518 | __proto__: null,
|
---|
8519 | ">": "child",
|
---|
8520 | "<": "parent",
|
---|
8521 | "~": "sibling",
|
---|
8522 | "+": "adjacent"
|
---|
8523 | };
|
---|
8524 |
|
---|
8525 | var attribSelectors = {
|
---|
8526 | __proto__: null,
|
---|
8527 | "#": ["id", "equals"],
|
---|
8528 | ".": ["class", "element"]
|
---|
8529 | };
|
---|
8530 |
|
---|
8531 | //pseudos, whose data-property is parsed as well
|
---|
8532 | var unpackPseudos = {
|
---|
8533 | __proto__: null,
|
---|
8534 | "has": true,
|
---|
8535 | "not": true,
|
---|
8536 | "matches": true
|
---|
8537 | };
|
---|
8538 |
|
---|
8539 | var stripQuotesFromPseudos = {
|
---|
8540 | __proto__: null,
|
---|
8541 | "contains": true,
|
---|
8542 | "icontains": true
|
---|
8543 | };
|
---|
8544 |
|
---|
8545 | var quotes = {
|
---|
8546 | __proto__: null,
|
---|
8547 | "\"": true,
|
---|
8548 | "'": true
|
---|
8549 | };
|
---|
8550 |
|
---|
8551 | //unescape function taken from https://github.com/jquery/sizzle/blob/master/src/sizzle.js#L139
|
---|
8552 | function funescape( _, escaped, escapedWhitespace ) {
|
---|
8553 | var high = "0x" + escaped - 0x10000;
|
---|
8554 | // NaN means non-codepoint
|
---|
8555 | // Support: Firefox
|
---|
8556 | // Workaround erroneous numeric interpretation of +"0x"
|
---|
8557 | return high !== high || escapedWhitespace ?
|
---|
8558 | escaped :
|
---|
8559 | // BMP codepoint
|
---|
8560 | high < 0 ?
|
---|
8561 | String.fromCharCode( high + 0x10000 ) :
|
---|
8562 | // Supplemental Plane codepoint (surrogate pair)
|
---|
8563 | String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
|
---|
8564 | }
|
---|
8565 |
|
---|
8566 | function unescapeCSS(str){
|
---|
8567 | return str.replace(re_escape, funescape);
|
---|
8568 | }
|
---|
8569 |
|
---|
8570 | function isWhitespace(c){
|
---|
8571 | return c === " " || c === "\n" || c === "\t" || c === "\f" || c === "\r";
|
---|
8572 | }
|
---|
8573 |
|
---|
8574 | function parse$1(selector, options){
|
---|
8575 | var subselects = [];
|
---|
8576 |
|
---|
8577 | selector = parseSelector(subselects, selector + "", options);
|
---|
8578 |
|
---|
8579 | if(selector !== ""){
|
---|
8580 | throw new SyntaxError("Unmatched selector: " + selector);
|
---|
8581 | }
|
---|
8582 |
|
---|
8583 | return subselects;
|
---|
8584 | }
|
---|
8585 |
|
---|
8586 | function parseSelector(subselects, selector, options){
|
---|
8587 | var tokens = [],
|
---|
8588 | sawWS = false,
|
---|
8589 | data, firstChar, name, quot;
|
---|
8590 |
|
---|
8591 | function getName(){
|
---|
8592 | var sub = selector.match(re_name)[0];
|
---|
8593 | selector = selector.substr(sub.length);
|
---|
8594 | return unescapeCSS(sub);
|
---|
8595 | }
|
---|
8596 |
|
---|
8597 | function stripWhitespace(start){
|
---|
8598 | while(isWhitespace(selector.charAt(start))) start++;
|
---|
8599 | selector = selector.substr(start);
|
---|
8600 | }
|
---|
8601 |
|
---|
8602 | function isEscaped(pos) {
|
---|
8603 | var slashCount = 0;
|
---|
8604 |
|
---|
8605 | while (selector.charAt(--pos) === "\\") slashCount++;
|
---|
8606 | return (slashCount & 1) === 1;
|
---|
8607 | }
|
---|
8608 |
|
---|
8609 | stripWhitespace(0);
|
---|
8610 |
|
---|
8611 | while(selector !== ""){
|
---|
8612 | firstChar = selector.charAt(0);
|
---|
8613 |
|
---|
8614 | if(isWhitespace(firstChar)){
|
---|
8615 | sawWS = true;
|
---|
8616 | stripWhitespace(1);
|
---|
8617 | } else if(firstChar in simpleSelectors){
|
---|
8618 | tokens.push({type: simpleSelectors[firstChar]});
|
---|
8619 | sawWS = false;
|
---|
8620 |
|
---|
8621 | stripWhitespace(1);
|
---|
8622 | } else if(firstChar === ","){
|
---|
8623 | if(tokens.length === 0){
|
---|
8624 | throw new SyntaxError("empty sub-selector");
|
---|
8625 | }
|
---|
8626 | subselects.push(tokens);
|
---|
8627 | tokens = [];
|
---|
8628 | sawWS = false;
|
---|
8629 | stripWhitespace(1);
|
---|
8630 | } else {
|
---|
8631 | if(sawWS){
|
---|
8632 | if(tokens.length > 0){
|
---|
8633 | tokens.push({type: "descendant"});
|
---|
8634 | }
|
---|
8635 | sawWS = false;
|
---|
8636 | }
|
---|
8637 |
|
---|
8638 | if(firstChar === "*"){
|
---|
8639 | selector = selector.substr(1);
|
---|
8640 | tokens.push({type: "universal"});
|
---|
8641 | } else if(firstChar in attribSelectors){
|
---|
8642 | selector = selector.substr(1);
|
---|
8643 | tokens.push({
|
---|
8644 | type: "attribute",
|
---|
8645 | name: attribSelectors[firstChar][0],
|
---|
8646 | action: attribSelectors[firstChar][1],
|
---|
8647 | value: getName(),
|
---|
8648 | ignoreCase: false
|
---|
8649 | });
|
---|
8650 | } else if(firstChar === "["){
|
---|
8651 | selector = selector.substr(1);
|
---|
8652 | data = selector.match(re_attr);
|
---|
8653 | if(!data){
|
---|
8654 | throw new SyntaxError("Malformed attribute selector: " + selector);
|
---|
8655 | }
|
---|
8656 | selector = selector.substr(data[0].length);
|
---|
8657 | name = unescapeCSS(data[1]);
|
---|
8658 |
|
---|
8659 | if(
|
---|
8660 | !options || (
|
---|
8661 | "lowerCaseAttributeNames" in options ?
|
---|
8662 | options.lowerCaseAttributeNames :
|
---|
8663 | !options.xmlMode
|
---|
8664 | )
|
---|
8665 | ){
|
---|
8666 | name = name.toLowerCase();
|
---|
8667 | }
|
---|
8668 |
|
---|
8669 | tokens.push({
|
---|
8670 | type: "attribute",
|
---|
8671 | name: name,
|
---|
8672 | action: actionTypes[data[2]],
|
---|
8673 | value: unescapeCSS(data[4] || data[5] || ""),
|
---|
8674 | ignoreCase: !!data[6]
|
---|
8675 | });
|
---|
8676 |
|
---|
8677 | } else if(firstChar === ":"){
|
---|
8678 | if(selector.charAt(1) === ":"){
|
---|
8679 | selector = selector.substr(2);
|
---|
8680 | tokens.push({type: "pseudo-element", name: getName().toLowerCase()});
|
---|
8681 | continue;
|
---|
8682 | }
|
---|
8683 |
|
---|
8684 | selector = selector.substr(1);
|
---|
8685 |
|
---|
8686 | name = getName().toLowerCase();
|
---|
8687 | data = null;
|
---|
8688 |
|
---|
8689 | if(selector.charAt(0) === "("){
|
---|
8690 | if(name in unpackPseudos){
|
---|
8691 | quot = selector.charAt(1);
|
---|
8692 | var quoted = quot in quotes;
|
---|
8693 |
|
---|
8694 | selector = selector.substr(quoted + 1);
|
---|
8695 |
|
---|
8696 | data = [];
|
---|
8697 | selector = parseSelector(data, selector, options);
|
---|
8698 |
|
---|
8699 | if(quoted){
|
---|
8700 | if(selector.charAt(0) !== quot){
|
---|
8701 | throw new SyntaxError("unmatched quotes in :" + name);
|
---|
8702 | } else {
|
---|
8703 | selector = selector.substr(1);
|
---|
8704 | }
|
---|
8705 | }
|
---|
8706 |
|
---|
8707 | if(selector.charAt(0) !== ")"){
|
---|
8708 | throw new SyntaxError("missing closing parenthesis in :" + name + " " + selector);
|
---|
8709 | }
|
---|
8710 |
|
---|
8711 | selector = selector.substr(1);
|
---|
8712 | } else {
|
---|
8713 | var pos = 1, counter = 1;
|
---|
8714 |
|
---|
8715 | for(; counter > 0 && pos < selector.length; pos++){
|
---|
8716 | if(selector.charAt(pos) === "(" && !isEscaped(pos)) counter++;
|
---|
8717 | else if(selector.charAt(pos) === ")" && !isEscaped(pos)) counter--;
|
---|
8718 | }
|
---|
8719 |
|
---|
8720 | if(counter){
|
---|
8721 | throw new SyntaxError("parenthesis not matched");
|
---|
8722 | }
|
---|
8723 |
|
---|
8724 | data = selector.substr(1, pos - 2);
|
---|
8725 | selector = selector.substr(pos);
|
---|
8726 |
|
---|
8727 | if(name in stripQuotesFromPseudos){
|
---|
8728 | quot = data.charAt(0);
|
---|
8729 |
|
---|
8730 | if(quot === data.slice(-1) && quot in quotes){
|
---|
8731 | data = data.slice(1, -1);
|
---|
8732 | }
|
---|
8733 |
|
---|
8734 | data = unescapeCSS(data);
|
---|
8735 | }
|
---|
8736 | }
|
---|
8737 | }
|
---|
8738 |
|
---|
8739 | tokens.push({type: "pseudo", name: name, data: data});
|
---|
8740 | } else if(re_name.test(selector)){
|
---|
8741 | name = getName();
|
---|
8742 |
|
---|
8743 | if(!options || ("lowerCaseTags" in options ? options.lowerCaseTags : !options.xmlMode)){
|
---|
8744 | name = name.toLowerCase();
|
---|
8745 | }
|
---|
8746 |
|
---|
8747 | tokens.push({type: "tag", name: name});
|
---|
8748 | } else {
|
---|
8749 | if(tokens.length && tokens[tokens.length - 1].type === "descendant"){
|
---|
8750 | tokens.pop();
|
---|
8751 | }
|
---|
8752 | addToken(subselects, tokens);
|
---|
8753 | return selector;
|
---|
8754 | }
|
---|
8755 | }
|
---|
8756 | }
|
---|
8757 |
|
---|
8758 | addToken(subselects, tokens);
|
---|
8759 |
|
---|
8760 | return selector;
|
---|
8761 | }
|
---|
8762 |
|
---|
8763 | function addToken(subselects, tokens){
|
---|
8764 | if(subselects.length > 0 && tokens.length === 0){
|
---|
8765 | throw new SyntaxError("empty sub-selector");
|
---|
8766 | }
|
---|
8767 |
|
---|
8768 | subselects.push(tokens);
|
---|
8769 | }
|
---|
8770 |
|
---|
8771 | var isTag$3 = domutils.isTag,
|
---|
8772 | getParent$1 = domutils.getParent,
|
---|
8773 | getChildren$1 = domutils.getChildren,
|
---|
8774 | getSiblings$1 = domutils.getSiblings,
|
---|
8775 | getName$1 = domutils.getName;
|
---|
8776 |
|
---|
8777 | /*
|
---|
8778 | all available rules
|
---|
8779 | */
|
---|
8780 | var general = {
|
---|
8781 | __proto__: null,
|
---|
8782 |
|
---|
8783 | attribute: attributes.compile,
|
---|
8784 | pseudo: pseudos_1.compile,
|
---|
8785 |
|
---|
8786 | //tags
|
---|
8787 | tag: function(next, data){
|
---|
8788 | var name = data.name;
|
---|
8789 | return function tag(elem){
|
---|
8790 | return getName$1(elem) === name && next(elem);
|
---|
8791 | };
|
---|
8792 | },
|
---|
8793 |
|
---|
8794 | //traversal
|
---|
8795 | descendant: function(next, rule, options, context, acceptSelf){
|
---|
8796 | return function descendant(elem){
|
---|
8797 |
|
---|
8798 | if (acceptSelf && next(elem)) return true;
|
---|
8799 |
|
---|
8800 | var found = false;
|
---|
8801 |
|
---|
8802 | while(!found && (elem = getParent$1(elem))){
|
---|
8803 | found = next(elem);
|
---|
8804 | }
|
---|
8805 |
|
---|
8806 | return found;
|
---|
8807 | };
|
---|
8808 | },
|
---|
8809 | parent: function(next, data, options){
|
---|
8810 | if(options && options.strict) throw SyntaxError("Parent selector isn't part of CSS3");
|
---|
8811 |
|
---|
8812 | return function parent(elem){
|
---|
8813 | return getChildren$1(elem).some(test);
|
---|
8814 | };
|
---|
8815 |
|
---|
8816 | function test(elem){
|
---|
8817 | return isTag$3(elem) && next(elem);
|
---|
8818 | }
|
---|
8819 | },
|
---|
8820 | child: function(next){
|
---|
8821 | return function child(elem){
|
---|
8822 | var parent = getParent$1(elem);
|
---|
8823 | return !!parent && next(parent);
|
---|
8824 | };
|
---|
8825 | },
|
---|
8826 | sibling: function(next){
|
---|
8827 | return function sibling(elem){
|
---|
8828 | var siblings = getSiblings$1(elem);
|
---|
8829 |
|
---|
8830 | for(var i = 0; i < siblings.length; i++){
|
---|
8831 | if(isTag$3(siblings[i])){
|
---|
8832 | if(siblings[i] === elem) break;
|
---|
8833 | if(next(siblings[i])) return true;
|
---|
8834 | }
|
---|
8835 | }
|
---|
8836 |
|
---|
8837 | return false;
|
---|
8838 | };
|
---|
8839 | },
|
---|
8840 | adjacent: function(next){
|
---|
8841 | return function adjacent(elem){
|
---|
8842 | var siblings = getSiblings$1(elem),
|
---|
8843 | lastElement;
|
---|
8844 |
|
---|
8845 | for(var i = 0; i < siblings.length; i++){
|
---|
8846 | if(isTag$3(siblings[i])){
|
---|
8847 | if(siblings[i] === elem) break;
|
---|
8848 | lastElement = siblings[i];
|
---|
8849 | }
|
---|
8850 | }
|
---|
8851 |
|
---|
8852 | return !!lastElement && next(lastElement);
|
---|
8853 | };
|
---|
8854 | },
|
---|
8855 | universal: function(next){
|
---|
8856 | return next;
|
---|
8857 | }
|
---|
8858 | };
|
---|
8859 |
|
---|
8860 | var universal = 50;
|
---|
8861 | var tag = 30;
|
---|
8862 | var attribute = 1;
|
---|
8863 | var pseudo = 0;
|
---|
8864 | var descendant = -1;
|
---|
8865 | var child = -1;
|
---|
8866 | var parent = -1;
|
---|
8867 | var sibling = -1;
|
---|
8868 | var adjacent = -1;
|
---|
8869 | var procedure = {
|
---|
8870 | universal: universal,
|
---|
8871 | tag: tag,
|
---|
8872 | attribute: attribute,
|
---|
8873 | pseudo: pseudo,
|
---|
8874 | descendant: descendant,
|
---|
8875 | child: child,
|
---|
8876 | parent: parent,
|
---|
8877 | sibling: sibling,
|
---|
8878 | adjacent: adjacent
|
---|
8879 | };
|
---|
8880 |
|
---|
8881 | var procedure$1 = {
|
---|
8882 | __proto__: null,
|
---|
8883 | universal: universal,
|
---|
8884 | tag: tag,
|
---|
8885 | attribute: attribute,
|
---|
8886 | pseudo: pseudo,
|
---|
8887 | descendant: descendant,
|
---|
8888 | child: child,
|
---|
8889 | parent: parent,
|
---|
8890 | sibling: sibling,
|
---|
8891 | adjacent: adjacent,
|
---|
8892 | 'default': procedure
|
---|
8893 | };
|
---|
8894 |
|
---|
8895 | var procedure$2 = getCjsExportFromNamespace(procedure$1);
|
---|
8896 |
|
---|
8897 | var sort = sortByProcedure;
|
---|
8898 |
|
---|
8899 | /*
|
---|
8900 | sort the parts of the passed selector,
|
---|
8901 | as there is potential for optimization
|
---|
8902 | (some types of selectors are faster than others)
|
---|
8903 | */
|
---|
8904 |
|
---|
8905 |
|
---|
8906 |
|
---|
8907 | var attributes$1 = {
|
---|
8908 | __proto__: null,
|
---|
8909 | exists: 10,
|
---|
8910 | equals: 8,
|
---|
8911 | not: 7,
|
---|
8912 | start: 6,
|
---|
8913 | end: 6,
|
---|
8914 | any: 5,
|
---|
8915 | hyphen: 4,
|
---|
8916 | element: 4
|
---|
8917 | };
|
---|
8918 |
|
---|
8919 | function sortByProcedure(arr){
|
---|
8920 | var procs = arr.map(getProcedure);
|
---|
8921 | for(var i = 1; i < arr.length; i++){
|
---|
8922 | var procNew = procs[i];
|
---|
8923 |
|
---|
8924 | if(procNew < 0) continue;
|
---|
8925 |
|
---|
8926 | for(var j = i - 1; j >= 0 && procNew < procs[j]; j--){
|
---|
8927 | var token = arr[j + 1];
|
---|
8928 | arr[j + 1] = arr[j];
|
---|
8929 | arr[j] = token;
|
---|
8930 | procs[j + 1] = procs[j];
|
---|
8931 | procs[j] = procNew;
|
---|
8932 | }
|
---|
8933 | }
|
---|
8934 | }
|
---|
8935 |
|
---|
8936 | function getProcedure(token){
|
---|
8937 | var proc = procedure$2[token.type];
|
---|
8938 |
|
---|
8939 | if(proc === procedure$2.attribute){
|
---|
8940 | proc = attributes$1[token.action];
|
---|
8941 |
|
---|
8942 | if(proc === attributes$1.equals && token.name === "id"){
|
---|
8943 | //prefer ID selectors (eg. #ID)
|
---|
8944 | proc = 9;
|
---|
8945 | }
|
---|
8946 |
|
---|
8947 | if(token.ignoreCase){
|
---|
8948 | //ignoreCase adds some overhead, prefer "normal" token
|
---|
8949 | //this is a binary operation, to ensure it's still an int
|
---|
8950 | proc >>= 1;
|
---|
8951 | }
|
---|
8952 | } else if(proc === procedure$2.pseudo){
|
---|
8953 | if(!token.data){
|
---|
8954 | proc = 3;
|
---|
8955 | } else if(token.name === "has" || token.name === "contains"){
|
---|
8956 | proc = 0; //expensive in any case
|
---|
8957 | } else if(token.name === "matches" || token.name === "not"){
|
---|
8958 | proc = 0;
|
---|
8959 | for(var i = 0; i < token.data.length; i++){
|
---|
8960 | //TODO better handling of complex selectors
|
---|
8961 | if(token.data[i].length !== 1) continue;
|
---|
8962 | var cur = getProcedure(token.data[i][0]);
|
---|
8963 | //avoid executing :has or :contains
|
---|
8964 | if(cur === 0){
|
---|
8965 | proc = 0;
|
---|
8966 | break;
|
---|
8967 | }
|
---|
8968 | if(cur > proc) proc = cur;
|
---|
8969 | }
|
---|
8970 | if(token.data.length > 1 && proc > 0) proc -= 1;
|
---|
8971 | } else {
|
---|
8972 | proc = 1;
|
---|
8973 | }
|
---|
8974 | }
|
---|
8975 | return proc;
|
---|
8976 | }
|
---|
8977 |
|
---|
8978 | /*
|
---|
8979 | compiles a selector to an executable function
|
---|
8980 | */
|
---|
8981 |
|
---|
8982 | var compile_1$2 = compile$1;
|
---|
8983 | var compileUnsafe_1 = compileUnsafe;
|
---|
8984 | var compileToken_1 = compileToken;
|
---|
8985 |
|
---|
8986 | var isTag$4 = domutils.isTag,
|
---|
8987 | trueFunc$2 = boolbase.trueFunc,
|
---|
8988 | falseFunc$3 = boolbase.falseFunc;
|
---|
8989 |
|
---|
8990 | function compile$1(selector, options, context){
|
---|
8991 | var next = compileUnsafe(selector, options, context);
|
---|
8992 | return wrap(next);
|
---|
8993 | }
|
---|
8994 |
|
---|
8995 | function wrap(next){
|
---|
8996 | return function base(elem){
|
---|
8997 | return isTag$4(elem) && next(elem);
|
---|
8998 | };
|
---|
8999 | }
|
---|
9000 |
|
---|
9001 | function compileUnsafe(selector, options, context){
|
---|
9002 | var token = cssWhat(selector, options);
|
---|
9003 | return compileToken(token, options, context);
|
---|
9004 | }
|
---|
9005 |
|
---|
9006 | function includesScopePseudo(t){
|
---|
9007 | return t.type === "pseudo" && (
|
---|
9008 | t.name === "scope" || (
|
---|
9009 | Array.isArray(t.data) &&
|
---|
9010 | t.data.some(function(data){
|
---|
9011 | return data.some(includesScopePseudo);
|
---|
9012 | })
|
---|
9013 | )
|
---|
9014 | );
|
---|
9015 | }
|
---|
9016 |
|
---|
9017 | var DESCENDANT_TOKEN = {type: "descendant"},
|
---|
9018 | SCOPE_TOKEN = {type: "pseudo", name: "scope"},
|
---|
9019 | PLACEHOLDER_ELEMENT = {},
|
---|
9020 | getParent$2 = domutils.getParent;
|
---|
9021 |
|
---|
9022 | //CSS 4 Spec (Draft): 3.3.1. Absolutizing a Scope-relative Selector
|
---|
9023 | //http://www.w3.org/TR/selectors4/#absolutizing
|
---|
9024 | function absolutize(token, context){
|
---|
9025 | //TODO better check if context is document
|
---|
9026 | var hasContext = !!context && !!context.length && context.every(function(e){
|
---|
9027 | return e === PLACEHOLDER_ELEMENT || !!getParent$2(e);
|
---|
9028 | });
|
---|
9029 |
|
---|
9030 |
|
---|
9031 | token.forEach(function(t){
|
---|
9032 | if(t.length > 0 && isTraversal(t[0]) && t[0].type !== "descendant"); else if(hasContext && !includesScopePseudo(t)){
|
---|
9033 | t.unshift(DESCENDANT_TOKEN);
|
---|
9034 | } else {
|
---|
9035 | return;
|
---|
9036 | }
|
---|
9037 |
|
---|
9038 | t.unshift(SCOPE_TOKEN);
|
---|
9039 | });
|
---|
9040 | }
|
---|
9041 |
|
---|
9042 | function compileToken(token, options, context){
|
---|
9043 | token = token.filter(function(t){ return t.length > 0; });
|
---|
9044 |
|
---|
9045 | token.forEach(sort);
|
---|
9046 |
|
---|
9047 | var isArrayContext = Array.isArray(context);
|
---|
9048 |
|
---|
9049 | context = (options && options.context) || context;
|
---|
9050 |
|
---|
9051 | if(context && !isArrayContext) context = [context];
|
---|
9052 |
|
---|
9053 | absolutize(token, context);
|
---|
9054 |
|
---|
9055 | return token
|
---|
9056 | .map(function(rules){ return compileRules(rules, options, context, isArrayContext); })
|
---|
9057 | .reduce(reduceRules, falseFunc$3);
|
---|
9058 | }
|
---|
9059 |
|
---|
9060 | function isTraversal(t){
|
---|
9061 | return procedure$2[t.type] < 0;
|
---|
9062 | }
|
---|
9063 |
|
---|
9064 | function compileRules(rules, options, context, isArrayContext){
|
---|
9065 | var acceptSelf = (isArrayContext && rules[0].name === "scope" && rules[1].type === "descendant");
|
---|
9066 | return rules.reduce(function(func, rule, index){
|
---|
9067 | if(func === falseFunc$3) return func;
|
---|
9068 | return general[rule.type](func, rule, options, context, acceptSelf && index === 1);
|
---|
9069 | }, options && options.rootFunc || trueFunc$2);
|
---|
9070 | }
|
---|
9071 |
|
---|
9072 | function reduceRules(a, b){
|
---|
9073 | if(b === falseFunc$3 || a === trueFunc$2){
|
---|
9074 | return a;
|
---|
9075 | }
|
---|
9076 | if(a === falseFunc$3 || b === trueFunc$2){
|
---|
9077 | return b;
|
---|
9078 | }
|
---|
9079 |
|
---|
9080 | return function combine(elem){
|
---|
9081 | return a(elem) || b(elem);
|
---|
9082 | };
|
---|
9083 | }
|
---|
9084 |
|
---|
9085 | //:not, :has and :matches have to compile selectors
|
---|
9086 | //doing this in lib/pseudos.js would lead to circular dependencies,
|
---|
9087 | //so we add them here
|
---|
9088 |
|
---|
9089 | var filters$1 = pseudos_1.filters,
|
---|
9090 | existsOne$1 = domutils.existsOne,
|
---|
9091 | isTag$4 = domutils.isTag,
|
---|
9092 | getChildren$2 = domutils.getChildren;
|
---|
9093 |
|
---|
9094 |
|
---|
9095 | function containsTraversal(t){
|
---|
9096 | return t.some(isTraversal);
|
---|
9097 | }
|
---|
9098 |
|
---|
9099 | filters$1.not = function(next, token, options, context){
|
---|
9100 | var opts = {
|
---|
9101 | xmlMode: !!(options && options.xmlMode),
|
---|
9102 | strict: !!(options && options.strict)
|
---|
9103 | };
|
---|
9104 |
|
---|
9105 | if(opts.strict){
|
---|
9106 | if(token.length > 1 || token.some(containsTraversal)){
|
---|
9107 | throw new SyntaxError("complex selectors in :not aren't allowed in strict mode");
|
---|
9108 | }
|
---|
9109 | }
|
---|
9110 |
|
---|
9111 | var func = compileToken(token, opts, context);
|
---|
9112 |
|
---|
9113 | if(func === falseFunc$3) return next;
|
---|
9114 | if(func === trueFunc$2) return falseFunc$3;
|
---|
9115 |
|
---|
9116 | return function(elem){
|
---|
9117 | return !func(elem) && next(elem);
|
---|
9118 | };
|
---|
9119 | };
|
---|
9120 |
|
---|
9121 | filters$1.has = function(next, token, options){
|
---|
9122 | var opts = {
|
---|
9123 | xmlMode: !!(options && options.xmlMode),
|
---|
9124 | strict: !!(options && options.strict)
|
---|
9125 | };
|
---|
9126 |
|
---|
9127 | //FIXME: Uses an array as a pointer to the current element (side effects)
|
---|
9128 | var context = token.some(containsTraversal) ? [PLACEHOLDER_ELEMENT] : null;
|
---|
9129 |
|
---|
9130 | var func = compileToken(token, opts, context);
|
---|
9131 |
|
---|
9132 | if(func === falseFunc$3) return falseFunc$3;
|
---|
9133 | if(func === trueFunc$2) return function(elem){
|
---|
9134 | return getChildren$2(elem).some(isTag$4) && next(elem);
|
---|
9135 | };
|
---|
9136 |
|
---|
9137 | func = wrap(func);
|
---|
9138 |
|
---|
9139 | if(context){
|
---|
9140 | return function has(elem){
|
---|
9141 | return next(elem) && (
|
---|
9142 | (context[0] = elem), existsOne$1(func, getChildren$2(elem))
|
---|
9143 | );
|
---|
9144 | };
|
---|
9145 | }
|
---|
9146 |
|
---|
9147 | return function has(elem){
|
---|
9148 | return next(elem) && existsOne$1(func, getChildren$2(elem));
|
---|
9149 | };
|
---|
9150 | };
|
---|
9151 |
|
---|
9152 | filters$1.matches = function(next, token, options, context){
|
---|
9153 | var opts = {
|
---|
9154 | xmlMode: !!(options && options.xmlMode),
|
---|
9155 | strict: !!(options && options.strict),
|
---|
9156 | rootFunc: next
|
---|
9157 | };
|
---|
9158 |
|
---|
9159 | return compileToken(token, opts, context);
|
---|
9160 | };
|
---|
9161 | compile_1$2.compileUnsafe = compileUnsafe_1;
|
---|
9162 | compile_1$2.compileToken = compileToken_1;
|
---|
9163 |
|
---|
9164 | var cssSelect = CSSselect;
|
---|
9165 |
|
---|
9166 | var findOne$1 = domutils.findOne,
|
---|
9167 | findAll$1 = domutils.findAll,
|
---|
9168 | getChildren$3 = domutils.getChildren,
|
---|
9169 | removeSubsets = domutils.removeSubsets,
|
---|
9170 | falseFunc$4 = boolbase.falseFunc,
|
---|
9171 | compileUnsafe$1 = compile_1$2.compileUnsafe,
|
---|
9172 | compileToken$1 = compile_1$2.compileToken;
|
---|
9173 |
|
---|
9174 | function getSelectorFunc(searchFunc){
|
---|
9175 | return function select(query, elems, options){
|
---|
9176 | if(typeof query !== "function") query = compileUnsafe$1(query, options, elems);
|
---|
9177 | if(!Array.isArray(elems)) elems = getChildren$3(elems);
|
---|
9178 | else elems = removeSubsets(elems);
|
---|
9179 | return searchFunc(query, elems);
|
---|
9180 | };
|
---|
9181 | }
|
---|
9182 |
|
---|
9183 | var selectAll = getSelectorFunc(function selectAll(query, elems){
|
---|
9184 | return (query === falseFunc$4 || !elems || elems.length === 0) ? [] : findAll$1(query, elems);
|
---|
9185 | });
|
---|
9186 |
|
---|
9187 | var selectOne = getSelectorFunc(function selectOne(query, elems){
|
---|
9188 | return (query === falseFunc$4 || !elems || elems.length === 0) ? null : findOne$1(query, elems);
|
---|
9189 | });
|
---|
9190 |
|
---|
9191 | function is(elem, query, options){
|
---|
9192 | return (typeof query === "function" ? query : compile_1$2(query, options))(elem);
|
---|
9193 | }
|
---|
9194 |
|
---|
9195 | /*
|
---|
9196 | the exported interface
|
---|
9197 | */
|
---|
9198 | function CSSselect(query, elems, options){
|
---|
9199 | return selectAll(query, elems, options);
|
---|
9200 | }
|
---|
9201 |
|
---|
9202 | CSSselect.compile = compile_1$2;
|
---|
9203 | CSSselect.filters = pseudos_1.filters;
|
---|
9204 | CSSselect.pseudos = pseudos_1.pseudos;
|
---|
9205 |
|
---|
9206 | CSSselect.selectAll = selectAll;
|
---|
9207 | CSSselect.selectOne = selectOne;
|
---|
9208 |
|
---|
9209 | CSSselect.is = is;
|
---|
9210 |
|
---|
9211 | //legacy methods (might be removed)
|
---|
9212 | CSSselect.parse = compile_1$2;
|
---|
9213 | CSSselect.iterate = selectAll;
|
---|
9214 |
|
---|
9215 | //hooks
|
---|
9216 | CSSselect._compileUnsafe = compileUnsafe$1;
|
---|
9217 | CSSselect._compileToken = compileToken$1;
|
---|
9218 |
|
---|
9219 | /**
|
---|
9220 | * Copyright 2018 Google LLC
|
---|
9221 | *
|
---|
9222 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
---|
9223 | * use this file except in compliance with the License. You may obtain a copy of
|
---|
9224 | * the License at
|
---|
9225 | *
|
---|
9226 | * http://www.apache.org/licenses/LICENSE-2.0
|
---|
9227 | *
|
---|
9228 | * Unless required by applicable law or agreed to in writing, software
|
---|
9229 | * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
---|
9230 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
---|
9231 | * License for the specific language governing permissions and limitations under
|
---|
9232 | * the License.
|
---|
9233 | */
|
---|
9234 |
|
---|
9235 | const treeAdapter = require('parse5-htmlparser2-tree-adapter');
|
---|
9236 |
|
---|
9237 | const PARSE5_OPTS = {
|
---|
9238 | treeAdapter
|
---|
9239 | };
|
---|
9240 | /**
|
---|
9241 | * Parse HTML into a mutable, serializable DOM Document.
|
---|
9242 | * The DOM implementation is an htmlparser2 DOM enhanced with basic DOM mutation methods.
|
---|
9243 | * @param {String} html HTML to parse into a Document instance
|
---|
9244 | */
|
---|
9245 |
|
---|
9246 | function createDocument(html) {
|
---|
9247 | const document = parse5.parse(html, PARSE5_OPTS);
|
---|
9248 | defineProperties(document, DocumentExtensions); // Extend Element.prototype with DOM manipulation methods.
|
---|
9249 |
|
---|
9250 | const scratch = document.createElement('div'); // Get a reference to the base Node class - used by createTextNode()
|
---|
9251 |
|
---|
9252 | document.$$Node = scratch.constructor;
|
---|
9253 | const elementProto = Object.getPrototypeOf(scratch);
|
---|
9254 | defineProperties(elementProto, ElementExtensions);
|
---|
9255 | elementProto.ownerDocument = document;
|
---|
9256 | return document;
|
---|
9257 | }
|
---|
9258 | /**
|
---|
9259 | * Serialize a Document to an HTML String
|
---|
9260 | * @param {Document} document A Document, such as one created via `createDocument()`
|
---|
9261 | */
|
---|
9262 |
|
---|
9263 | function serializeDocument(document) {
|
---|
9264 | return parse5.serialize(document, PARSE5_OPTS);
|
---|
9265 | }
|
---|
9266 | /**
|
---|
9267 | * Methods and descriptors to mix into Element.prototype
|
---|
9268 | */
|
---|
9269 |
|
---|
9270 | const ElementExtensions = {
|
---|
9271 | /** @extends htmlparser2.Element.prototype */
|
---|
9272 | nodeName: {
|
---|
9273 | get() {
|
---|
9274 | return this.tagName.toUpperCase();
|
---|
9275 | }
|
---|
9276 |
|
---|
9277 | },
|
---|
9278 | id: reflectedProperty('id'),
|
---|
9279 | className: reflectedProperty('class'),
|
---|
9280 |
|
---|
9281 | insertBefore(child, referenceNode) {
|
---|
9282 | if (!referenceNode) return this.appendChild(child);
|
---|
9283 | treeAdapter.insertBefore(this, child, referenceNode);
|
---|
9284 | return child;
|
---|
9285 | },
|
---|
9286 |
|
---|
9287 | appendChild(child) {
|
---|
9288 | treeAdapter.appendChild(this, child);
|
---|
9289 | return child;
|
---|
9290 | },
|
---|
9291 |
|
---|
9292 | removeChild(child) {
|
---|
9293 | treeAdapter.detachNode(child);
|
---|
9294 | },
|
---|
9295 |
|
---|
9296 | remove() {
|
---|
9297 | treeAdapter.detachNode(this);
|
---|
9298 | },
|
---|
9299 |
|
---|
9300 | textContent: {
|
---|
9301 | get() {
|
---|
9302 | return getText$2(this);
|
---|
9303 | },
|
---|
9304 |
|
---|
9305 | set(text) {
|
---|
9306 | this.children = [];
|
---|
9307 | treeAdapter.insertText(this, text);
|
---|
9308 | }
|
---|
9309 |
|
---|
9310 | },
|
---|
9311 |
|
---|
9312 | setAttribute(name, value) {
|
---|
9313 | if (this.attribs == null) this.attribs = {};
|
---|
9314 | if (value == null) value = '';
|
---|
9315 | this.attribs[name] = value;
|
---|
9316 | },
|
---|
9317 |
|
---|
9318 | removeAttribute(name) {
|
---|
9319 | if (this.attribs != null) {
|
---|
9320 | delete this.attribs[name];
|
---|
9321 | }
|
---|
9322 | },
|
---|
9323 |
|
---|
9324 | getAttribute(name) {
|
---|
9325 | return this.attribs != null && this.attribs[name];
|
---|
9326 | },
|
---|
9327 |
|
---|
9328 | hasAttribute(name) {
|
---|
9329 | return this.attribs != null && this.attribs[name] != null;
|
---|
9330 | },
|
---|
9331 |
|
---|
9332 | getAttributeNode(name) {
|
---|
9333 | const value = this.getAttribute(name);
|
---|
9334 | if (value != null) return {
|
---|
9335 | specified: true,
|
---|
9336 | value
|
---|
9337 | };
|
---|
9338 | }
|
---|
9339 |
|
---|
9340 | };
|
---|
9341 | /**
|
---|
9342 | * Methods and descriptors to mix into the global document instance
|
---|
9343 | * @private
|
---|
9344 | */
|
---|
9345 |
|
---|
9346 | const DocumentExtensions = {
|
---|
9347 | /** @extends htmlparser2.Document.prototype */
|
---|
9348 | // document is just an Element in htmlparser2, giving it a nodeType of ELEMENT_NODE.
|
---|
9349 | // TODO: verify if these are needed for css-select
|
---|
9350 | nodeType: {
|
---|
9351 | get() {
|
---|
9352 | return 9;
|
---|
9353 | }
|
---|
9354 |
|
---|
9355 | },
|
---|
9356 | contentType: {
|
---|
9357 | get() {
|
---|
9358 | return 'text/html';
|
---|
9359 | }
|
---|
9360 |
|
---|
9361 | },
|
---|
9362 | nodeName: {
|
---|
9363 | get() {
|
---|
9364 | return '#document';
|
---|
9365 | }
|
---|
9366 |
|
---|
9367 | },
|
---|
9368 | documentElement: {
|
---|
9369 | get() {
|
---|
9370 | // Find the first <html> element within the document
|
---|
9371 | return this.childNodes.filter(child => String(child.tagName).toLowerCase() === 'html');
|
---|
9372 | }
|
---|
9373 |
|
---|
9374 | },
|
---|
9375 | compatMode: {
|
---|
9376 | get() {
|
---|
9377 | const compatMode = {
|
---|
9378 | 'no-quirks': 'CSS1Compat',
|
---|
9379 | quirks: 'BackCompat',
|
---|
9380 | 'limited-quirks': 'CSS1Compat'
|
---|
9381 | };
|
---|
9382 | return compatMode[treeAdapter.getDocumentMode(this)];
|
---|
9383 | }
|
---|
9384 |
|
---|
9385 | },
|
---|
9386 | body: {
|
---|
9387 | get() {
|
---|
9388 | return this.querySelector('body');
|
---|
9389 | }
|
---|
9390 |
|
---|
9391 | },
|
---|
9392 |
|
---|
9393 | createElement(name) {
|
---|
9394 | return treeAdapter.createElement(name, null, []);
|
---|
9395 | },
|
---|
9396 |
|
---|
9397 | createTextNode(text) {
|
---|
9398 | // there is no dedicated createTextNode equivalent exposed in htmlparser2's DOM
|
---|
9399 | const Node = this.$$Node;
|
---|
9400 | return new Node({
|
---|
9401 | type: 'text',
|
---|
9402 | data: text,
|
---|
9403 | parent: null,
|
---|
9404 | prev: null,
|
---|
9405 | next: null
|
---|
9406 | });
|
---|
9407 | },
|
---|
9408 |
|
---|
9409 | querySelector(sel) {
|
---|
9410 | return cssSelect.selectOne(sel, this.documentElement);
|
---|
9411 | },
|
---|
9412 |
|
---|
9413 | querySelectorAll(sel) {
|
---|
9414 | if (sel === ':root') {
|
---|
9415 | return this;
|
---|
9416 | }
|
---|
9417 |
|
---|
9418 | return cssSelect(sel, this.documentElement);
|
---|
9419 | }
|
---|
9420 |
|
---|
9421 | };
|
---|
9422 | /**
|
---|
9423 | * Essentially `Object.defineProperties()`, except function values are assigned as value descriptors for convenience.
|
---|
9424 | * @private
|
---|
9425 | */
|
---|
9426 |
|
---|
9427 | function defineProperties(obj, properties) {
|
---|
9428 | for (const i in properties) {
|
---|
9429 | const value = properties[i];
|
---|
9430 | Object.defineProperty(obj, i, typeof value === 'function' ? {
|
---|
9431 | value
|
---|
9432 | } : value);
|
---|
9433 | }
|
---|
9434 | }
|
---|
9435 | /**
|
---|
9436 | * Create a property descriptor defining a getter/setter pair alias for a named attribute.
|
---|
9437 | * @private
|
---|
9438 | */
|
---|
9439 |
|
---|
9440 |
|
---|
9441 | function reflectedProperty(attributeName) {
|
---|
9442 | return {
|
---|
9443 | get() {
|
---|
9444 | return this.getAttribute(attributeName);
|
---|
9445 | },
|
---|
9446 |
|
---|
9447 | set(value) {
|
---|
9448 | this.setAttribute(attributeName, value);
|
---|
9449 | }
|
---|
9450 |
|
---|
9451 | };
|
---|
9452 | }
|
---|
9453 | /**
|
---|
9454 | * Helper to get the text content of a node
|
---|
9455 | * https://github.com/fb55/domutils/blob/master/src/stringify.ts#L21
|
---|
9456 | * @private
|
---|
9457 | */
|
---|
9458 |
|
---|
9459 |
|
---|
9460 | function getText$2(node) {
|
---|
9461 | if (Array.isArray(node)) return node.map(getText$2).join('');
|
---|
9462 | if (treeAdapter.isElementNode(node)) return node.name === 'br' ? '\n' : getText$2(node.children);
|
---|
9463 | if (treeAdapter.isTextNode(node)) return node.data;
|
---|
9464 | return '';
|
---|
9465 | }
|
---|
9466 |
|
---|
9467 | /**
|
---|
9468 | * Copyright 2018 Google LLC
|
---|
9469 | *
|
---|
9470 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
---|
9471 | * use this file except in compliance with the License. You may obtain a copy of
|
---|
9472 | * the License at
|
---|
9473 | *
|
---|
9474 | * http://www.apache.org/licenses/LICENSE-2.0
|
---|
9475 | *
|
---|
9476 | * Unless required by applicable law or agreed to in writing, software
|
---|
9477 | * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
---|
9478 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
---|
9479 | * License for the specific language governing permissions and limitations under
|
---|
9480 | * the License.
|
---|
9481 | */
|
---|
9482 | /**
|
---|
9483 | * Parse a textual CSS Stylesheet into a Stylesheet instance.
|
---|
9484 | * Stylesheet is a mutable ReworkCSS AST with format similar to CSSOM.
|
---|
9485 | * @see https://github.com/reworkcss/css
|
---|
9486 | * @private
|
---|
9487 | * @param {String} stylesheet
|
---|
9488 | * @returns {css.Stylesheet} ast
|
---|
9489 | */
|
---|
9490 |
|
---|
9491 | function parseStylesheet(stylesheet) {
|
---|
9492 | return css.parse(stylesheet);
|
---|
9493 | }
|
---|
9494 | /**
|
---|
9495 | * Serialize a ReworkCSS Stylesheet to a String of CSS.
|
---|
9496 | * @private
|
---|
9497 | * @param {css.Stylesheet} ast A Stylesheet to serialize, such as one returned from `parseStylesheet()`
|
---|
9498 | * @param {Object} options Options to pass to `css.stringify()`
|
---|
9499 | * @param {Boolean} [options.compress] Compress CSS output (removes comments, whitespace, etc)
|
---|
9500 | */
|
---|
9501 |
|
---|
9502 | function serializeStylesheet(ast, options) {
|
---|
9503 | return css.stringify(ast, options);
|
---|
9504 | }
|
---|
9505 | /**
|
---|
9506 | * Converts a walkStyleRules() iterator to mark nodes with `.$$remove=true` instead of actually removing them.
|
---|
9507 | * This means they can be removed in a second pass, allowing the first pass to be nondestructive (eg: to preserve mirrored sheets).
|
---|
9508 | * @private
|
---|
9509 | * @param {Function} iterator Invoked on each node in the tree. Return `false` to remove that node.
|
---|
9510 | * @returns {(rule) => void} nonDestructiveIterator
|
---|
9511 | */
|
---|
9512 |
|
---|
9513 | function markOnly(predicate) {
|
---|
9514 | return rule => {
|
---|
9515 | const sel = rule.selectors;
|
---|
9516 |
|
---|
9517 | if (predicate(rule) === false) {
|
---|
9518 | rule.$$remove = true;
|
---|
9519 | }
|
---|
9520 |
|
---|
9521 | rule.$$markedSelectors = rule.selectors;
|
---|
9522 |
|
---|
9523 | if (rule._other) {
|
---|
9524 | rule._other.$$markedSelectors = rule._other.selectors;
|
---|
9525 | }
|
---|
9526 |
|
---|
9527 | rule.selectors = sel;
|
---|
9528 | };
|
---|
9529 | }
|
---|
9530 | /**
|
---|
9531 | * Apply filtered selectors to a rule from a previous markOnly run.
|
---|
9532 | * @private
|
---|
9533 | * @param {css.Rule} rule The Rule to apply marked selectors to (if they exist).
|
---|
9534 | */
|
---|
9535 |
|
---|
9536 | function applyMarkedSelectors(rule) {
|
---|
9537 | if (rule.$$markedSelectors) {
|
---|
9538 | rule.selectors = rule.$$markedSelectors;
|
---|
9539 | }
|
---|
9540 |
|
---|
9541 | if (rule._other) {
|
---|
9542 | applyMarkedSelectors(rule._other);
|
---|
9543 | }
|
---|
9544 | }
|
---|
9545 | /**
|
---|
9546 | * Recursively walk all rules in a stylesheet.
|
---|
9547 | * @private
|
---|
9548 | * @param {css.Rule} node A Stylesheet or Rule to descend into.
|
---|
9549 | * @param {Function} iterator Invoked on each node in the tree. Return `false` to remove that node.
|
---|
9550 | */
|
---|
9551 |
|
---|
9552 | function walkStyleRules(node, iterator) {
|
---|
9553 | if (node.stylesheet) return walkStyleRules(node.stylesheet, iterator);
|
---|
9554 | node.rules = node.rules.filter(rule => {
|
---|
9555 | if (rule.rules) {
|
---|
9556 | walkStyleRules(rule, iterator);
|
---|
9557 | }
|
---|
9558 |
|
---|
9559 | rule._other = undefined;
|
---|
9560 | rule.filterSelectors = filterSelectors;
|
---|
9561 | return iterator(rule) !== false;
|
---|
9562 | });
|
---|
9563 | }
|
---|
9564 | /**
|
---|
9565 | * Recursively walk all rules in two identical stylesheets, filtering nodes into one or the other based on a predicate.
|
---|
9566 | * @private
|
---|
9567 | * @param {css.Rule} node A Stylesheet or Rule to descend into.
|
---|
9568 | * @param {css.Rule} node2 A second tree identical to `node`
|
---|
9569 | * @param {Function} iterator Invoked on each node in the tree. Return `false` to remove that node from the first tree, true to remove it from the second.
|
---|
9570 | */
|
---|
9571 |
|
---|
9572 | function walkStyleRulesWithReverseMirror(node, node2, iterator) {
|
---|
9573 | if (node2 === null) return walkStyleRules(node, iterator);
|
---|
9574 | if (node.stylesheet) return walkStyleRulesWithReverseMirror(node.stylesheet, node2.stylesheet, iterator);
|
---|
9575 | [node.rules, node2.rules] = splitFilter(node.rules, node2.rules, (rule, index, rules, rules2) => {
|
---|
9576 | const rule2 = rules2[index];
|
---|
9577 |
|
---|
9578 | if (rule.rules) {
|
---|
9579 | walkStyleRulesWithReverseMirror(rule, rule2, iterator);
|
---|
9580 | }
|
---|
9581 |
|
---|
9582 | rule._other = rule2;
|
---|
9583 | rule.filterSelectors = filterSelectors;
|
---|
9584 | return iterator(rule) !== false;
|
---|
9585 | });
|
---|
9586 | } // Like [].filter(), but applies the opposite filtering result to a second copy of the Array without a second pass.
|
---|
9587 | // This is just a quicker version of generating the compliment of the set returned from a filter operation.
|
---|
9588 |
|
---|
9589 | function splitFilter(a, b, predicate) {
|
---|
9590 | const aOut = [];
|
---|
9591 | const bOut = [];
|
---|
9592 |
|
---|
9593 | for (let index = 0; index < a.length; index++) {
|
---|
9594 | if (predicate(a[index], index, a, b)) {
|
---|
9595 | aOut.push(a[index]);
|
---|
9596 | } else {
|
---|
9597 | bOut.push(a[index]);
|
---|
9598 | }
|
---|
9599 | }
|
---|
9600 |
|
---|
9601 | return [aOut, bOut];
|
---|
9602 | } // can be invoked on a style rule to subset its selectors (with reverse mirroring)
|
---|
9603 |
|
---|
9604 |
|
---|
9605 | function filterSelectors(predicate) {
|
---|
9606 | if (this._other) {
|
---|
9607 | const [a, b] = splitFilter(this.selectors, this._other.selectors, predicate);
|
---|
9608 | this.selectors = a;
|
---|
9609 | this._other.selectors = b;
|
---|
9610 | } else {
|
---|
9611 | this.selectors = this.selectors.filter(predicate);
|
---|
9612 | }
|
---|
9613 | }
|
---|
9614 |
|
---|
9615 | const LOG_LEVELS = ['trace', 'debug', 'info', 'warn', 'error', 'silent'];
|
---|
9616 | const defaultLogger = {
|
---|
9617 | trace(msg) {
|
---|
9618 | console.trace(msg);
|
---|
9619 | },
|
---|
9620 |
|
---|
9621 | debug(msg) {
|
---|
9622 | console.debug(msg);
|
---|
9623 | },
|
---|
9624 |
|
---|
9625 | warn(msg) {
|
---|
9626 | console.warn(chalk.yellow(msg));
|
---|
9627 | },
|
---|
9628 |
|
---|
9629 | error(msg) {
|
---|
9630 | console.error(chalk.bold.red(msg));
|
---|
9631 | },
|
---|
9632 |
|
---|
9633 | info(msg) {
|
---|
9634 | console.info(chalk.bold.blue(msg));
|
---|
9635 | },
|
---|
9636 |
|
---|
9637 | silent() {}
|
---|
9638 |
|
---|
9639 | };
|
---|
9640 | function createLogger(logLevel) {
|
---|
9641 | const logLevelIdx = LOG_LEVELS.indexOf(logLevel);
|
---|
9642 | return LOG_LEVELS.reduce((logger, type, index) => {
|
---|
9643 | if (index >= logLevelIdx) {
|
---|
9644 | logger[type] = defaultLogger[type];
|
---|
9645 | } else {
|
---|
9646 | logger[type] = defaultLogger.silent;
|
---|
9647 | }
|
---|
9648 |
|
---|
9649 | return logger;
|
---|
9650 | }, {});
|
---|
9651 | }
|
---|
9652 |
|
---|
9653 | /**
|
---|
9654 | * Copyright 2018 Google LLC
|
---|
9655 | *
|
---|
9656 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
---|
9657 | * use this file except in compliance with the License. You may obtain a copy of
|
---|
9658 | * the License at
|
---|
9659 | *
|
---|
9660 | * http://www.apache.org/licenses/LICENSE-2.0
|
---|
9661 | *
|
---|
9662 | * Unless required by applicable law or agreed to in writing, software
|
---|
9663 | * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
---|
9664 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
---|
9665 | * License for the specific language governing permissions and limitations under
|
---|
9666 | * the License.
|
---|
9667 | */
|
---|
9668 | /**
|
---|
9669 | * The mechanism to use for lazy-loading stylesheets.
|
---|
9670 | * Note: <kbd>JS</kbd> indicates a strategy requiring JavaScript (falls back to `<noscript>` unless disabled).
|
---|
9671 | *
|
---|
9672 | * - **default:** Move stylesheet links to the end of the document and insert preload meta tags in their place.
|
---|
9673 | * - **"body":** Move all external stylesheet links to the end of the document.
|
---|
9674 | * - **"media":** Load stylesheets asynchronously by adding `media="not x"` and removing once loaded. <kbd>JS</kbd>
|
---|
9675 | * - **"swap":** Convert stylesheet links to preloads that swap to `rel="stylesheet"` once loaded ([details](https://www.filamentgroup.com/lab/load-css-simpler/#the-code)). <kbd>JS</kbd>
|
---|
9676 | * - **"swap-high":** Use `<link rel="alternate stylesheet preload">` and swap to `rel="stylesheet"` once loaded ([details](http://filamentgroup.github.io/loadCSS/test/new-high.html)). <kbd>JS</kbd>
|
---|
9677 | * - **"js":** Inject an asynchronous CSS loader similar to [LoadCSS](https://github.com/filamentgroup/loadCSS) and use it to load stylesheets. <kbd>JS</kbd>
|
---|
9678 | * - **"js-lazy":** Like `"js"`, but the stylesheet is disabled until fully loaded.
|
---|
9679 | * @typedef {(default|'body'|'media'|'swap'|'swap-high'|'js'|'js-lazy')} PreloadStrategy
|
---|
9680 | * @public
|
---|
9681 | */
|
---|
9682 |
|
---|
9683 | /**
|
---|
9684 | * Controls which keyframes rules are inlined.
|
---|
9685 | *
|
---|
9686 | * - **"critical":** _(default)_ inline keyframes rules that are used by the critical CSS.
|
---|
9687 | * - **"all":** Inline all keyframes rules.
|
---|
9688 | * - **"none":** Remove all keyframes rules.
|
---|
9689 | * @typedef {('critical'|'all'|'none')} KeyframeStrategy
|
---|
9690 | * @private
|
---|
9691 | * @property {String} keyframes Which {@link KeyframeStrategy keyframe strategy} to use (default: `critical`)_
|
---|
9692 | */
|
---|
9693 |
|
---|
9694 | /**
|
---|
9695 | * Controls log level of the plugin. Specifies the level the logger should use. A logger will
|
---|
9696 | * not produce output for any log level beneath the specified level. Available levels and order
|
---|
9697 | * are:
|
---|
9698 | *
|
---|
9699 | * - **"info"** _(default)_
|
---|
9700 | * - **"warn"**
|
---|
9701 | * - **"error"**
|
---|
9702 | * - **"trace"**
|
---|
9703 | * - **"debug"**
|
---|
9704 | * - **"silent"**
|
---|
9705 | * @typedef {('info'|'warn'|'error'|'trace'|'debug'|'silent')} LogLevel
|
---|
9706 | * @public
|
---|
9707 | */
|
---|
9708 |
|
---|
9709 | /**
|
---|
9710 | * Custom logger interface:
|
---|
9711 | * @typedef {object} Logger
|
---|
9712 | * @public
|
---|
9713 | * @property {function(String)} trace - Prints a trace message
|
---|
9714 | * @property {function(String)} debug - Prints a debug message
|
---|
9715 | * @property {function(String)} info - Prints an information message
|
---|
9716 | * @property {function(String)} warn - Prints a warning message
|
---|
9717 | * @property {function(String)} error - Prints an error message
|
---|
9718 | */
|
---|
9719 |
|
---|
9720 | /**
|
---|
9721 | * All optional. Pass them to `new Critters({ ... })`.
|
---|
9722 | * @public
|
---|
9723 | * @typedef Options
|
---|
9724 | * @property {String} path Base path location of the CSS files _(default: `''`)_
|
---|
9725 | * @property {String} publicPath Public path of the CSS resources. This prefix is removed from the href _(default: `''`)_
|
---|
9726 | * @property {Boolean} external Inline styles from external stylesheets _(default: `true`)_
|
---|
9727 | * @property {Number} inlineThreshold Inline external stylesheets smaller than a given size _(default: `0`)_
|
---|
9728 | * @property {Number} minimumExternalSize If the non-critical external stylesheet would be below this size, just inline it _(default: `0`)_
|
---|
9729 | * @property {Boolean} pruneSource Remove inlined rules from the external stylesheet _(default: `false`)_
|
---|
9730 | * @property {Boolean} mergeStylesheets Merged inlined stylesheets into a single <style> tag _(default: `true`)_
|
---|
9731 | * @property {String[]} additionalStylesheets Glob for matching other stylesheets to be used while looking for critical CSS _(default: ``)_.
|
---|
9732 | * @property {String} preload Which {@link PreloadStrategy preload strategy} to use
|
---|
9733 | * @property {Boolean} noscriptFallback Add `<noscript>` fallback to JS-based strategies
|
---|
9734 | * @property {Boolean} inlineFonts Inline critical font-face rules _(default: `false`)_
|
---|
9735 | * @property {Boolean} preloadFonts Preloads critical fonts _(default: `true`)_
|
---|
9736 | * @property {Boolean} fonts Shorthand for setting `inlineFonts`+`preloadFonts`
|
---|
9737 | * - Values:
|
---|
9738 | * - `true` to inline critical font-face rules and preload the fonts
|
---|
9739 | * - `false` to don't inline any font-face rules and don't preload fonts
|
---|
9740 | * @property {String} keyframes Controls which keyframes rules are inlined.
|
---|
9741 | * - Values:
|
---|
9742 | * - `"critical"`: _(default)_ inline keyframes rules used by the critical CSS
|
---|
9743 | * - `"all"` inline all keyframes rules
|
---|
9744 | * - `"none"` remove all keyframes rules
|
---|
9745 | * @property {Boolean} compress Compress resulting critical CSS _(default: `true`)_
|
---|
9746 | * @property {String} logLevel Controls {@link LogLevel log level} of the plugin _(default: `"info"`)_
|
---|
9747 | * @property {object} logger Provide a custom logger interface {@link Logger logger}
|
---|
9748 | */
|
---|
9749 |
|
---|
9750 | class Critters {
|
---|
9751 | /** @private */
|
---|
9752 | constructor(options) {
|
---|
9753 | this.options = Object.assign({
|
---|
9754 | logLevel: 'info',
|
---|
9755 | path: '',
|
---|
9756 | publicPath: '',
|
---|
9757 | reduceInlineStyles: true,
|
---|
9758 | pruneSource: false,
|
---|
9759 | additionalStylesheets: []
|
---|
9760 | }, options || {});
|
---|
9761 | this.urlFilter = this.options.filter;
|
---|
9762 |
|
---|
9763 | if (this.urlFilter instanceof RegExp) {
|
---|
9764 | this.urlFilter = this.urlFilter.test.bind(this.urlFilter);
|
---|
9765 | }
|
---|
9766 |
|
---|
9767 | this.logger = this.options.logger || createLogger(this.options.logLevel);
|
---|
9768 | }
|
---|
9769 | /**
|
---|
9770 | * Read the contents of a file from the specified filesystem or disk
|
---|
9771 | */
|
---|
9772 |
|
---|
9773 |
|
---|
9774 | readFile(filename) {
|
---|
9775 | const fs = this.fs;
|
---|
9776 | return new Promise((resolve, reject) => {
|
---|
9777 | const callback = (err, data) => {
|
---|
9778 | if (err) reject(err);else resolve(data);
|
---|
9779 | };
|
---|
9780 |
|
---|
9781 | if (fs && fs.readFile) {
|
---|
9782 | fs.readFile(filename, callback);
|
---|
9783 | } else {
|
---|
9784 | require('fs').readFile(filename, 'utf8', callback);
|
---|
9785 | }
|
---|
9786 | });
|
---|
9787 | }
|
---|
9788 | /**
|
---|
9789 | * Apply critical CSS processing to the html
|
---|
9790 | */
|
---|
9791 |
|
---|
9792 |
|
---|
9793 | async process(html) {
|
---|
9794 | const start = process.hrtime.bigint(); // Parse the generated HTML in a DOM we can mutate
|
---|
9795 |
|
---|
9796 | const document = createDocument(html);
|
---|
9797 |
|
---|
9798 | if (this.options.additionalStylesheets.length > 0) {
|
---|
9799 | this.embedAdditionalStylesheet(document);
|
---|
9800 | } // `external:false` skips processing of external sheets
|
---|
9801 |
|
---|
9802 |
|
---|
9803 | if (this.options.external !== false) {
|
---|
9804 | const externalSheets = [].slice.call(document.querySelectorAll('link[rel="stylesheet"]'));
|
---|
9805 | await Promise.all(externalSheets.map(link => this.embedLinkedStylesheet(link, document)));
|
---|
9806 | } // go through all the style tags in the document and reduce them to only critical CSS
|
---|
9807 |
|
---|
9808 |
|
---|
9809 | const styles = this.getAffectedStyleTags(document);
|
---|
9810 | await Promise.all(styles.map(style => this.processStyle(style, document)));
|
---|
9811 |
|
---|
9812 | if (this.options.mergeStylesheets !== false && styles.length !== 0) {
|
---|
9813 | await this.mergeStylesheets(document);
|
---|
9814 | } // serialize the document back to HTML and we're done
|
---|
9815 |
|
---|
9816 |
|
---|
9817 | const output = serializeDocument(document);
|
---|
9818 | const end = process.hrtime.bigint();
|
---|
9819 | this.logger.info('Time ' + parseFloat(end - start) / 1000000.0);
|
---|
9820 | return output;
|
---|
9821 | }
|
---|
9822 | /**
|
---|
9823 | * Get the style tags that need processing
|
---|
9824 | */
|
---|
9825 |
|
---|
9826 |
|
---|
9827 | getAffectedStyleTags(document) {
|
---|
9828 | const styles = [].slice.call(document.querySelectorAll('style')); // `inline:false` skips processing of inline stylesheets
|
---|
9829 |
|
---|
9830 | if (this.options.reduceInlineStyles === false) {
|
---|
9831 | return styles.filter(style => style.$$external);
|
---|
9832 | }
|
---|
9833 |
|
---|
9834 | return styles;
|
---|
9835 | }
|
---|
9836 |
|
---|
9837 | async mergeStylesheets(document) {
|
---|
9838 | const styles = this.getAffectedStyleTags(document);
|
---|
9839 |
|
---|
9840 | if (styles.length === 0) {
|
---|
9841 | this.logger.warn('Merging inline stylesheets into a single <style> tag skipped, no inline stylesheets to merge');
|
---|
9842 | return;
|
---|
9843 | }
|
---|
9844 |
|
---|
9845 | const first = styles[0];
|
---|
9846 | let sheet = first.textContent;
|
---|
9847 |
|
---|
9848 | for (let i = 1; i < styles.length; i++) {
|
---|
9849 | const node = styles[i];
|
---|
9850 | sheet += node.textContent;
|
---|
9851 | node.remove();
|
---|
9852 | }
|
---|
9853 |
|
---|
9854 | first.textContent = sheet;
|
---|
9855 | }
|
---|
9856 | /**
|
---|
9857 | * Given href, find the corresponding CSS asset
|
---|
9858 | */
|
---|
9859 |
|
---|
9860 |
|
---|
9861 | async getCssAsset(href) {
|
---|
9862 | const outputPath = this.options.path;
|
---|
9863 | const publicPath = this.options.publicPath; // CHECK - the output path
|
---|
9864 | // path on disk (with output.publicPath removed)
|
---|
9865 |
|
---|
9866 | let normalizedPath = href.replace(/^\//, '');
|
---|
9867 | const pathPrefix = (publicPath || '').replace(/(^\/|\/$)/g, '') + '/';
|
---|
9868 |
|
---|
9869 | if (normalizedPath.indexOf(pathPrefix) === 0) {
|
---|
9870 | normalizedPath = normalizedPath.substring(pathPrefix.length).replace(/^\//, '');
|
---|
9871 | }
|
---|
9872 |
|
---|
9873 | const filename = path.resolve(outputPath, normalizedPath);
|
---|
9874 | let sheet;
|
---|
9875 |
|
---|
9876 | try {
|
---|
9877 | sheet = await this.readFile(filename);
|
---|
9878 | } catch (e) {
|
---|
9879 | this.logger.warn(`Unable to locate stylesheet: ${filename}`);
|
---|
9880 | }
|
---|
9881 |
|
---|
9882 | return sheet;
|
---|
9883 | }
|
---|
9884 |
|
---|
9885 | checkInlineThreshold(link, style, sheet) {
|
---|
9886 | if (this.options.inlineThreshold && sheet.length < this.options.inlineThreshold) {
|
---|
9887 | const href = style.$$name;
|
---|
9888 | style.$$reduce = false;
|
---|
9889 | this.logger.info(`\u001b[32mInlined all of ${href} (${sheet.length} was below the threshold of ${this.options.inlineThreshold})\u001b[39m`);
|
---|
9890 | link.remove();
|
---|
9891 | return true;
|
---|
9892 | }
|
---|
9893 |
|
---|
9894 | return false;
|
---|
9895 | }
|
---|
9896 | /**
|
---|
9897 | * Inline the stylesheets from options.additionalStylesheets (assuming it passes `options.filter`)
|
---|
9898 | */
|
---|
9899 |
|
---|
9900 |
|
---|
9901 | async embedAdditionalStylesheet(document) {
|
---|
9902 | const styleSheetsIncluded = [];
|
---|
9903 | const sources = await Promise.all(this.options.additionalStylesheets.map(cssFile => {
|
---|
9904 | if (styleSheetsIncluded.includes(cssFile)) {
|
---|
9905 | return;
|
---|
9906 | }
|
---|
9907 |
|
---|
9908 | styleSheetsIncluded.push(cssFile);
|
---|
9909 | const style = document.createElement('style');
|
---|
9910 | style.$$external = true;
|
---|
9911 | return this.getCssAsset(cssFile, style).then(sheet => [sheet, style]);
|
---|
9912 | }));
|
---|
9913 | sources.forEach(([sheet, style]) => {
|
---|
9914 | if (!sheet) return;
|
---|
9915 | style.textContent = sheet;
|
---|
9916 | document.head.appendChild(style);
|
---|
9917 | });
|
---|
9918 | }
|
---|
9919 | /**
|
---|
9920 | * Inline the target stylesheet referred to by a <link rel="stylesheet"> (assuming it passes `options.filter`)
|
---|
9921 | */
|
---|
9922 |
|
---|
9923 |
|
---|
9924 | async embedLinkedStylesheet(link, document) {
|
---|
9925 | const href = link.getAttribute('href');
|
---|
9926 | const media = link.getAttribute('media');
|
---|
9927 | const preloadMode = this.options.preload; // skip filtered resources, or network resources if no filter is provided
|
---|
9928 |
|
---|
9929 | if (this.urlFilter ? this.urlFilter(href) : !(href || '').match(/\.css$/)) {
|
---|
9930 | return Promise.resolve();
|
---|
9931 | } // the reduced critical CSS gets injected into a new <style> tag
|
---|
9932 |
|
---|
9933 |
|
---|
9934 | const style = document.createElement('style');
|
---|
9935 | style.$$external = true;
|
---|
9936 | const sheet = await this.getCssAsset(href, style);
|
---|
9937 |
|
---|
9938 | if (!sheet) {
|
---|
9939 | return;
|
---|
9940 | }
|
---|
9941 |
|
---|
9942 | style.textContent = sheet;
|
---|
9943 | style.$$name = href;
|
---|
9944 | style.$$links = [link];
|
---|
9945 | link.parentNode.insertBefore(style, link);
|
---|
9946 |
|
---|
9947 | if (this.checkInlineThreshold(link, style, sheet)) {
|
---|
9948 | return;
|
---|
9949 | } // CSS loader is only injected for the first sheet, then this becomes an empty string
|
---|
9950 |
|
---|
9951 |
|
---|
9952 | let cssLoaderPreamble = "function $loadcss(u,m,l){(l=document.createElement('link')).rel='stylesheet';l.href=u;document.head.appendChild(l)}";
|
---|
9953 | const lazy = preloadMode === 'js-lazy';
|
---|
9954 |
|
---|
9955 | if (lazy) {
|
---|
9956 | cssLoaderPreamble = cssLoaderPreamble.replace('l.href', "l.media='print';l.onload=function(){l.media=m};l.href");
|
---|
9957 | } // Allow disabling any mutation of the stylesheet link:
|
---|
9958 |
|
---|
9959 |
|
---|
9960 | if (preloadMode === false) return;
|
---|
9961 | let noscriptFallback = false;
|
---|
9962 |
|
---|
9963 | if (preloadMode === 'body') {
|
---|
9964 | document.body.appendChild(link);
|
---|
9965 | } else {
|
---|
9966 | link.setAttribute('rel', 'preload');
|
---|
9967 | link.setAttribute('as', 'style');
|
---|
9968 |
|
---|
9969 | if (preloadMode === 'js' || preloadMode === 'js-lazy') {
|
---|
9970 | const script = document.createElement('script');
|
---|
9971 | const js = `${cssLoaderPreamble}$loadcss(${JSON.stringify(href)}${lazy ? ',' + JSON.stringify(media || 'all') : ''})`; // script.appendChild(document.createTextNode(js));
|
---|
9972 |
|
---|
9973 | script.textContent = js;
|
---|
9974 | link.parentNode.insertBefore(script, link.nextSibling);
|
---|
9975 | style.$$links.push(script);
|
---|
9976 | cssLoaderPreamble = '';
|
---|
9977 | noscriptFallback = true;
|
---|
9978 | } else if (preloadMode === 'media') {
|
---|
9979 | // @see https://github.com/filamentgroup/loadCSS/blob/af1106cfe0bf70147e22185afa7ead96c01dec48/src/loadCSS.js#L26
|
---|
9980 | link.setAttribute('rel', 'stylesheet');
|
---|
9981 | link.removeAttribute('as');
|
---|
9982 | link.setAttribute('media', 'print');
|
---|
9983 | link.setAttribute('onload', `this.media='${media || 'all'}'`);
|
---|
9984 | noscriptFallback = true;
|
---|
9985 | } else if (preloadMode === 'swap-high') {
|
---|
9986 | // @see http://filamentgroup.github.io/loadCSS/test/new-high.html
|
---|
9987 | link.setAttribute('rel', 'alternate stylesheet preload');
|
---|
9988 | link.setAttribute('title', 'styles');
|
---|
9989 | link.setAttribute('onload', `this.title='';this.rel='stylesheet'`);
|
---|
9990 | noscriptFallback = true;
|
---|
9991 | } else if (preloadMode === 'swap') {
|
---|
9992 | link.setAttribute('onload', "this.rel='stylesheet'");
|
---|
9993 | noscriptFallback = true;
|
---|
9994 | } else {
|
---|
9995 | const bodyLink = document.createElement('link');
|
---|
9996 | bodyLink.setAttribute('rel', 'stylesheet');
|
---|
9997 | if (media) bodyLink.setAttribute('media', media);
|
---|
9998 | bodyLink.setAttribute('href', href);
|
---|
9999 | document.body.appendChild(bodyLink);
|
---|
10000 | style.$$links.push(bodyLink);
|
---|
10001 | }
|
---|
10002 | }
|
---|
10003 |
|
---|
10004 | if (this.options.noscriptFallback !== false && noscriptFallback) {
|
---|
10005 | const noscript = document.createElement('noscript');
|
---|
10006 | const noscriptLink = document.createElement('link');
|
---|
10007 | noscriptLink.setAttribute('rel', 'stylesheet');
|
---|
10008 | noscriptLink.setAttribute('href', href);
|
---|
10009 | if (media) noscriptLink.setAttribute('media', media);
|
---|
10010 | noscript.appendChild(noscriptLink);
|
---|
10011 | link.parentNode.insertBefore(noscript, link.nextSibling);
|
---|
10012 | style.$$links.push(noscript);
|
---|
10013 | }
|
---|
10014 | }
|
---|
10015 | /**
|
---|
10016 | * Prune the source CSS files
|
---|
10017 | */
|
---|
10018 |
|
---|
10019 |
|
---|
10020 | pruneSource(style, before, sheetInverse) {
|
---|
10021 | // if external stylesheet would be below minimum size, just inline everything
|
---|
10022 | const minSize = this.options.minimumExternalSize;
|
---|
10023 | const name = style.$$name;
|
---|
10024 |
|
---|
10025 | if (minSize && sheetInverse.length < minSize) {
|
---|
10026 | this.logger.info(`\u001b[32mInlined all of ${name} (non-critical external stylesheet would have been ${sheetInverse.length}b, which was below the threshold of ${minSize})\u001b[39m`);
|
---|
10027 | style.textContent = before; // remove any associated external resources/loaders:
|
---|
10028 |
|
---|
10029 | if (style.$$links) {
|
---|
10030 | for (const link of style.$$links) {
|
---|
10031 | const parent = link.parentNode;
|
---|
10032 | if (parent) parent.removeChild(link);
|
---|
10033 | }
|
---|
10034 | }
|
---|
10035 |
|
---|
10036 | return true;
|
---|
10037 | }
|
---|
10038 |
|
---|
10039 | return false;
|
---|
10040 | }
|
---|
10041 | /**
|
---|
10042 | * Parse the stylesheet within a <style> element, then reduce it to contain only rules used by the document.
|
---|
10043 | */
|
---|
10044 |
|
---|
10045 |
|
---|
10046 | async processStyle(style, document) {
|
---|
10047 | if (style.$$reduce === false) return;
|
---|
10048 | const name = style.$$name ? style.$$name.replace(/^\//, '') : 'inline CSS';
|
---|
10049 | const options = this.options; // const document = style.ownerDocument;
|
---|
10050 |
|
---|
10051 | const head = document.querySelector('head');
|
---|
10052 | let keyframesMode = options.keyframes || 'critical'; // we also accept a boolean value for options.keyframes
|
---|
10053 |
|
---|
10054 | if (keyframesMode === true) keyframesMode = 'all';
|
---|
10055 | if (keyframesMode === false) keyframesMode = 'none';
|
---|
10056 | let sheet = style.textContent; // store a reference to the previous serialized stylesheet for reporting stats
|
---|
10057 |
|
---|
10058 | const before = sheet; // Skip empty stylesheets
|
---|
10059 |
|
---|
10060 | if (!sheet) return;
|
---|
10061 | const ast = parseStylesheet(sheet);
|
---|
10062 | const astInverse = options.pruneSource ? parseStylesheet(sheet) : null; // a string to search for font names (very loose)
|
---|
10063 |
|
---|
10064 | let criticalFonts = '';
|
---|
10065 | const failedSelectors = [];
|
---|
10066 | const criticalKeyframeNames = []; // Walk all CSS rules, marking unused rules with `.$$remove=true` for removal in the second pass.
|
---|
10067 | // This first pass is also used to collect font and keyframe usage used in the second pass.
|
---|
10068 |
|
---|
10069 | walkStyleRules(ast, markOnly(rule => {
|
---|
10070 | if (rule.type === 'rule') {
|
---|
10071 | // Filter the selector list down to only those match
|
---|
10072 | rule.filterSelectors(sel => {
|
---|
10073 | // Strip pseudo-elements and pseudo-classes, since we only care that their associated elements exist.
|
---|
10074 | // This means any selector for a pseudo-element or having a pseudo-class will be inlined if the rest of the selector matches.
|
---|
10075 | if (sel === ':root' || sel.match(/^::?(before|after)$/)) {
|
---|
10076 | return true;
|
---|
10077 | }
|
---|
10078 |
|
---|
10079 | sel = sel.replace(/(?<!\\)::?[a-z-]+(?![a-z-(])/gi, '').replace(/::?not\(\s*\)/g, '').trim();
|
---|
10080 | if (!sel) return false;
|
---|
10081 |
|
---|
10082 | try {
|
---|
10083 | return document.querySelector(sel) != null;
|
---|
10084 | } catch (e) {
|
---|
10085 | failedSelectors.push(sel + ' -> ' + e.message);
|
---|
10086 | return false;
|
---|
10087 | }
|
---|
10088 | }); // If there are no matched selectors, remove the rule:
|
---|
10089 |
|
---|
10090 | if (rule.selectors.length === 0) {
|
---|
10091 | return false;
|
---|
10092 | }
|
---|
10093 |
|
---|
10094 | if (rule.declarations) {
|
---|
10095 | for (let i = 0; i < rule.declarations.length; i++) {
|
---|
10096 | const decl = rule.declarations[i]; // detect used fonts
|
---|
10097 |
|
---|
10098 | if (decl.property && decl.property.match(/\bfont(-family)?\b/i)) {
|
---|
10099 | criticalFonts += ' ' + decl.value;
|
---|
10100 | } // detect used keyframes
|
---|
10101 |
|
---|
10102 |
|
---|
10103 | if (decl.property === 'animation' || decl.property === 'animation-name') {
|
---|
10104 | // @todo: parse animation declarations and extract only the name. for now we'll do a lazy match.
|
---|
10105 | const names = decl.value.split(/\s+/);
|
---|
10106 |
|
---|
10107 | for (let j = 0; j < names.length; j++) {
|
---|
10108 | const name = names[j].trim();
|
---|
10109 | if (name) criticalKeyframeNames.push(name);
|
---|
10110 | }
|
---|
10111 | }
|
---|
10112 | }
|
---|
10113 | }
|
---|
10114 | } // keep font rules, they're handled in the second pass:
|
---|
10115 |
|
---|
10116 |
|
---|
10117 | if (rule.type === 'font-face') return; // If there are no remaining rules, remove the whole rule:
|
---|
10118 |
|
---|
10119 | const rules = rule.rules && rule.rules.filter(rule => !rule.$$remove);
|
---|
10120 | return !rules || rules.length !== 0;
|
---|
10121 | }));
|
---|
10122 |
|
---|
10123 | if (failedSelectors.length !== 0) {
|
---|
10124 | this.logger.warn(`${failedSelectors.length} rules skipped due to selector errors:\n ${failedSelectors.join('\n ')}`);
|
---|
10125 | }
|
---|
10126 |
|
---|
10127 | const shouldPreloadFonts = options.fonts === true || options.preloadFonts === true;
|
---|
10128 | const shouldInlineFonts = options.fonts !== false && options.inlineFonts === true;
|
---|
10129 | const preloadedFonts = []; // Second pass, using data picked up from the first
|
---|
10130 |
|
---|
10131 | walkStyleRulesWithReverseMirror(ast, astInverse, rule => {
|
---|
10132 | // remove any rules marked in the first pass
|
---|
10133 | if (rule.$$remove === true) return false;
|
---|
10134 | applyMarkedSelectors(rule); // prune @keyframes rules
|
---|
10135 |
|
---|
10136 | if (rule.type === 'keyframes') {
|
---|
10137 | if (keyframesMode === 'none') return false;
|
---|
10138 | if (keyframesMode === 'all') return true;
|
---|
10139 | return criticalKeyframeNames.indexOf(rule.name) !== -1;
|
---|
10140 | } // prune @font-face rules
|
---|
10141 |
|
---|
10142 |
|
---|
10143 | if (rule.type === 'font-face') {
|
---|
10144 | let family, src;
|
---|
10145 |
|
---|
10146 | for (let i = 0; i < rule.declarations.length; i++) {
|
---|
10147 | const decl = rule.declarations[i];
|
---|
10148 |
|
---|
10149 | if (decl.property === 'src') {
|
---|
10150 | // @todo parse this properly and generate multiple preloads with type="font/woff2" etc
|
---|
10151 | src = (decl.value.match(/url\s*\(\s*(['"]?)(.+?)\1\s*\)/) || [])[2];
|
---|
10152 | } else if (decl.property === 'font-family') {
|
---|
10153 | family = decl.value;
|
---|
10154 | }
|
---|
10155 | }
|
---|
10156 |
|
---|
10157 | if (src && shouldPreloadFonts && preloadedFonts.indexOf(src) === -1) {
|
---|
10158 | preloadedFonts.push(src);
|
---|
10159 | const preload = document.createElement('link');
|
---|
10160 | preload.setAttribute('rel', 'preload');
|
---|
10161 | preload.setAttribute('as', 'font');
|
---|
10162 | preload.setAttribute('crossorigin', 'anonymous');
|
---|
10163 | preload.setAttribute('href', src.trim());
|
---|
10164 | head.appendChild(preload);
|
---|
10165 | } // if we're missing info, if the font is unused, or if critical font inlining is disabled, remove the rule:
|
---|
10166 |
|
---|
10167 |
|
---|
10168 | if (!family || !src || criticalFonts.indexOf(family) === -1 || !shouldInlineFonts) {
|
---|
10169 | return false;
|
---|
10170 | }
|
---|
10171 | }
|
---|
10172 | });
|
---|
10173 | sheet = serializeStylesheet(ast, {
|
---|
10174 | compress: this.options.compress !== false
|
---|
10175 | }).trim(); // If all rules were removed, get rid of the style element entirely
|
---|
10176 |
|
---|
10177 | if (sheet.trim().length === 0) {
|
---|
10178 | if (style.parentNode) {
|
---|
10179 | style.remove();
|
---|
10180 | }
|
---|
10181 |
|
---|
10182 | return;
|
---|
10183 | }
|
---|
10184 |
|
---|
10185 | let afterText = '';
|
---|
10186 | let styleInlinedCompletely = false;
|
---|
10187 |
|
---|
10188 | if (options.pruneSource) {
|
---|
10189 | const sheetInverse = serializeStylesheet(astInverse, {
|
---|
10190 | compress: this.options.compress !== false
|
---|
10191 | });
|
---|
10192 | styleInlinedCompletely = this.pruneSource(style, before, sheetInverse);
|
---|
10193 |
|
---|
10194 | if (styleInlinedCompletely) {
|
---|
10195 | const _percent = sheetInverse.length / before.length * 100;
|
---|
10196 |
|
---|
10197 | afterText = `, reducing non-inlined size ${_percent | 0}% to ${prettyBytes(sheetInverse.length)}`;
|
---|
10198 | }
|
---|
10199 | } // replace the inline stylesheet with its critical'd counterpart
|
---|
10200 |
|
---|
10201 |
|
---|
10202 | if (!styleInlinedCompletely) {
|
---|
10203 | style.textContent = sheet;
|
---|
10204 | } // output stats
|
---|
10205 |
|
---|
10206 |
|
---|
10207 | const percent = sheet.length / before.length * 100 | 0;
|
---|
10208 | this.logger.info('\u001b[32mInlined ' + prettyBytes(sheet.length) + ' (' + percent + '% of original ' + prettyBytes(before.length) + ') of ' + name + afterText + '.\u001b[39m');
|
---|
10209 | }
|
---|
10210 |
|
---|
10211 | }
|
---|
10212 |
|
---|
10213 | export default Critters;
|
---|
10214 | //# sourceMappingURL=critters.modern.js.map
|
---|