1 | (function (global, factory) {
|
---|
2 | typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('path'), require('pretty-bytes'), require('parse5'), require('css'), require('chalk')) :
|
---|
3 | typeof define === 'function' && define.amd ? define(['path', 'pretty-bytes', 'parse5', 'css', 'chalk'], factory) :
|
---|
4 | (global = global || self, global.critters = factory(global.path, global.prettyBytes, global.parse5, global.css, global.chalk));
|
---|
5 | }(this, (function (path, prettyBytes, parse5, css, chalk) {
|
---|
6 | path = path && Object.prototype.hasOwnProperty.call(path, 'default') ? path['default'] : path;
|
---|
7 | prettyBytes = prettyBytes && Object.prototype.hasOwnProperty.call(prettyBytes, 'default') ? prettyBytes['default'] : prettyBytes;
|
---|
8 | parse5 = parse5 && Object.prototype.hasOwnProperty.call(parse5, 'default') ? parse5['default'] : parse5;
|
---|
9 | css = css && Object.prototype.hasOwnProperty.call(css, 'default') ? css['default'] : css;
|
---|
10 | chalk = chalk && Object.prototype.hasOwnProperty.call(chalk, 'default') ? chalk['default'] : chalk;
|
---|
11 |
|
---|
12 | var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
---|
13 |
|
---|
14 | function createCommonjsModule(fn, basedir, module) {
|
---|
15 | return module = {
|
---|
16 | path: basedir,
|
---|
17 | exports: {},
|
---|
18 | require: function (path, base) {
|
---|
19 | return commonjsRequire();
|
---|
20 | }
|
---|
21 | }, fn(module, module.exports), module.exports;
|
---|
22 | }
|
---|
23 |
|
---|
24 | function getCjsExportFromNamespace (n) {
|
---|
25 | return n && n['default'] || n;
|
---|
26 | }
|
---|
27 |
|
---|
28 | function commonjsRequire () {
|
---|
29 | throw new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs');
|
---|
30 | }
|
---|
31 |
|
---|
32 | //Types of elements found in the DOM
|
---|
33 | var domelementtype = {
|
---|
34 | Text: "text", //Text
|
---|
35 | Directive: "directive", //<? ... ?>
|
---|
36 | Comment: "comment", //<!-- ... -->
|
---|
37 | Script: "script", //<script> tags
|
---|
38 | Style: "style", //<style> tags
|
---|
39 | Tag: "tag", //Any tag
|
---|
40 | CDATA: "cdata", //<![CDATA[ ... ]]>
|
---|
41 | Doctype: "doctype",
|
---|
42 |
|
---|
43 | isTag: function(elem){
|
---|
44 | return elem.type === "tag" || elem.type === "script" || elem.type === "style";
|
---|
45 | }
|
---|
46 | };
|
---|
47 |
|
---|
48 | var lib = createCommonjsModule(function (module, exports) {
|
---|
49 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
50 | /**
|
---|
51 | * Tests whether an element is a tag or not.
|
---|
52 | *
|
---|
53 | * @param elem Element to test
|
---|
54 | */
|
---|
55 | function isTag(elem) {
|
---|
56 | return (elem.type === "tag" /* Tag */ ||
|
---|
57 | elem.type === "script" /* Script */ ||
|
---|
58 | elem.type === "style" /* Style */);
|
---|
59 | }
|
---|
60 | exports.isTag = isTag;
|
---|
61 | // Exports for backwards compatibility
|
---|
62 | exports.Text = "text" /* Text */; //Text
|
---|
63 | exports.Directive = "directive" /* Directive */; //<? ... ?>
|
---|
64 | exports.Comment = "comment" /* Comment */; //<!-- ... -->
|
---|
65 | exports.Script = "script" /* Script */; //<script> tags
|
---|
66 | exports.Style = "style" /* Style */; //<style> tags
|
---|
67 | exports.Tag = "tag" /* Tag */; //Any tag
|
---|
68 | exports.CDATA = "cdata" /* CDATA */; //<![CDATA[ ... ]]>
|
---|
69 | exports.Doctype = "doctype" /* Doctype */;
|
---|
70 | });
|
---|
71 |
|
---|
72 | var Aacute = "Á";
|
---|
73 | var aacute = "á";
|
---|
74 | var Abreve = "Ă";
|
---|
75 | var abreve = "ă";
|
---|
76 | var ac = "∾";
|
---|
77 | var acd = "∿";
|
---|
78 | var acE = "∾̳";
|
---|
79 | var Acirc = "Â";
|
---|
80 | var acirc = "â";
|
---|
81 | var acute = "´";
|
---|
82 | var Acy = "А";
|
---|
83 | var acy = "а";
|
---|
84 | var AElig = "Æ";
|
---|
85 | var aelig = "æ";
|
---|
86 | var af = "";
|
---|
87 | var Afr = "𝔄";
|
---|
88 | var afr = "𝔞";
|
---|
89 | var Agrave = "À";
|
---|
90 | var agrave = "à";
|
---|
91 | var alefsym = "ℵ";
|
---|
92 | var aleph = "ℵ";
|
---|
93 | var Alpha = "Α";
|
---|
94 | var alpha = "α";
|
---|
95 | var Amacr = "Ā";
|
---|
96 | var amacr = "ā";
|
---|
97 | var amalg = "⨿";
|
---|
98 | var amp = "&";
|
---|
99 | var AMP = "&";
|
---|
100 | var andand = "⩕";
|
---|
101 | var And = "⩓";
|
---|
102 | var and = "∧";
|
---|
103 | var andd = "⩜";
|
---|
104 | var andslope = "⩘";
|
---|
105 | var andv = "⩚";
|
---|
106 | var ang = "∠";
|
---|
107 | var ange = "⦤";
|
---|
108 | var angle = "∠";
|
---|
109 | var angmsdaa = "⦨";
|
---|
110 | var angmsdab = "⦩";
|
---|
111 | var angmsdac = "⦪";
|
---|
112 | var angmsdad = "⦫";
|
---|
113 | var angmsdae = "⦬";
|
---|
114 | var angmsdaf = "⦭";
|
---|
115 | var angmsdag = "⦮";
|
---|
116 | var angmsdah = "⦯";
|
---|
117 | var angmsd = "∡";
|
---|
118 | var angrt = "∟";
|
---|
119 | var angrtvb = "⊾";
|
---|
120 | var angrtvbd = "⦝";
|
---|
121 | var angsph = "∢";
|
---|
122 | var angst = "Å";
|
---|
123 | var angzarr = "⍼";
|
---|
124 | var Aogon = "Ą";
|
---|
125 | var aogon = "ą";
|
---|
126 | var Aopf = "𝔸";
|
---|
127 | var aopf = "𝕒";
|
---|
128 | var apacir = "⩯";
|
---|
129 | var ap = "≈";
|
---|
130 | var apE = "⩰";
|
---|
131 | var ape = "≊";
|
---|
132 | var apid = "≋";
|
---|
133 | var apos = "'";
|
---|
134 | var ApplyFunction = "";
|
---|
135 | var approx = "≈";
|
---|
136 | var approxeq = "≊";
|
---|
137 | var Aring = "Å";
|
---|
138 | var aring = "å";
|
---|
139 | var Ascr = "𝒜";
|
---|
140 | var ascr = "𝒶";
|
---|
141 | var Assign = "≔";
|
---|
142 | var ast = "*";
|
---|
143 | var asymp = "≈";
|
---|
144 | var asympeq = "≍";
|
---|
145 | var Atilde = "Ã";
|
---|
146 | var atilde = "ã";
|
---|
147 | var Auml = "Ä";
|
---|
148 | var auml = "ä";
|
---|
149 | var awconint = "∳";
|
---|
150 | var awint = "⨑";
|
---|
151 | var backcong = "≌";
|
---|
152 | var backepsilon = "϶";
|
---|
153 | var backprime = "‵";
|
---|
154 | var backsim = "∽";
|
---|
155 | var backsimeq = "⋍";
|
---|
156 | var Backslash = "∖";
|
---|
157 | var Barv = "⫧";
|
---|
158 | var barvee = "⊽";
|
---|
159 | var barwed = "⌅";
|
---|
160 | var Barwed = "⌆";
|
---|
161 | var barwedge = "⌅";
|
---|
162 | var bbrk = "⎵";
|
---|
163 | var bbrktbrk = "⎶";
|
---|
164 | var bcong = "≌";
|
---|
165 | var Bcy = "Б";
|
---|
166 | var bcy = "б";
|
---|
167 | var bdquo = "„";
|
---|
168 | var becaus = "∵";
|
---|
169 | var because = "∵";
|
---|
170 | var Because = "∵";
|
---|
171 | var bemptyv = "⦰";
|
---|
172 | var bepsi = "϶";
|
---|
173 | var bernou = "ℬ";
|
---|
174 | var Bernoullis = "ℬ";
|
---|
175 | var Beta = "Β";
|
---|
176 | var beta = "β";
|
---|
177 | var beth = "ℶ";
|
---|
178 | var between = "≬";
|
---|
179 | var Bfr = "𝔅";
|
---|
180 | var bfr = "𝔟";
|
---|
181 | var bigcap = "⋂";
|
---|
182 | var bigcirc = "◯";
|
---|
183 | var bigcup = "⋃";
|
---|
184 | var bigodot = "⨀";
|
---|
185 | var bigoplus = "⨁";
|
---|
186 | var bigotimes = "⨂";
|
---|
187 | var bigsqcup = "⨆";
|
---|
188 | var bigstar = "★";
|
---|
189 | var bigtriangledown = "▽";
|
---|
190 | var bigtriangleup = "△";
|
---|
191 | var biguplus = "⨄";
|
---|
192 | var bigvee = "⋁";
|
---|
193 | var bigwedge = "⋀";
|
---|
194 | var bkarow = "⤍";
|
---|
195 | var blacklozenge = "⧫";
|
---|
196 | var blacksquare = "▪";
|
---|
197 | var blacktriangle = "▴";
|
---|
198 | var blacktriangledown = "▾";
|
---|
199 | var blacktriangleleft = "◂";
|
---|
200 | var blacktriangleright = "▸";
|
---|
201 | var blank = "␣";
|
---|
202 | var blk12 = "▒";
|
---|
203 | var blk14 = "░";
|
---|
204 | var blk34 = "▓";
|
---|
205 | var block = "█";
|
---|
206 | var bne = "=⃥";
|
---|
207 | var bnequiv = "≡⃥";
|
---|
208 | var bNot = "⫭";
|
---|
209 | var bnot = "⌐";
|
---|
210 | var Bopf = "𝔹";
|
---|
211 | var bopf = "𝕓";
|
---|
212 | var bot = "⊥";
|
---|
213 | var bottom = "⊥";
|
---|
214 | var bowtie = "⋈";
|
---|
215 | var boxbox = "⧉";
|
---|
216 | var boxdl = "┐";
|
---|
217 | var boxdL = "╕";
|
---|
218 | var boxDl = "╖";
|
---|
219 | var boxDL = "╗";
|
---|
220 | var boxdr = "┌";
|
---|
221 | var boxdR = "╒";
|
---|
222 | var boxDr = "╓";
|
---|
223 | var boxDR = "╔";
|
---|
224 | var boxh = "─";
|
---|
225 | var boxH = "═";
|
---|
226 | var boxhd = "┬";
|
---|
227 | var boxHd = "╤";
|
---|
228 | var boxhD = "╥";
|
---|
229 | var boxHD = "╦";
|
---|
230 | var boxhu = "┴";
|
---|
231 | var boxHu = "╧";
|
---|
232 | var boxhU = "╨";
|
---|
233 | var boxHU = "╩";
|
---|
234 | var boxminus = "⊟";
|
---|
235 | var boxplus = "⊞";
|
---|
236 | var boxtimes = "⊠";
|
---|
237 | var boxul = "┘";
|
---|
238 | var boxuL = "╛";
|
---|
239 | var boxUl = "╜";
|
---|
240 | var boxUL = "╝";
|
---|
241 | var boxur = "└";
|
---|
242 | var boxuR = "╘";
|
---|
243 | var boxUr = "╙";
|
---|
244 | var boxUR = "╚";
|
---|
245 | var boxv = "│";
|
---|
246 | var boxV = "║";
|
---|
247 | var boxvh = "┼";
|
---|
248 | var boxvH = "╪";
|
---|
249 | var boxVh = "╫";
|
---|
250 | var boxVH = "╬";
|
---|
251 | var boxvl = "┤";
|
---|
252 | var boxvL = "╡";
|
---|
253 | var boxVl = "╢";
|
---|
254 | var boxVL = "╣";
|
---|
255 | var boxvr = "├";
|
---|
256 | var boxvR = "╞";
|
---|
257 | var boxVr = "╟";
|
---|
258 | var boxVR = "╠";
|
---|
259 | var bprime = "‵";
|
---|
260 | var breve = "˘";
|
---|
261 | var Breve = "˘";
|
---|
262 | var brvbar = "¦";
|
---|
263 | var bscr = "𝒷";
|
---|
264 | var Bscr = "ℬ";
|
---|
265 | var bsemi = "⁏";
|
---|
266 | var bsim = "∽";
|
---|
267 | var bsime = "⋍";
|
---|
268 | var bsolb = "⧅";
|
---|
269 | var bsol = "\\";
|
---|
270 | var bsolhsub = "⟈";
|
---|
271 | var bull = "•";
|
---|
272 | var bullet = "•";
|
---|
273 | var bump = "≎";
|
---|
274 | var bumpE = "⪮";
|
---|
275 | var bumpe = "≏";
|
---|
276 | var Bumpeq = "≎";
|
---|
277 | var bumpeq = "≏";
|
---|
278 | var Cacute = "Ć";
|
---|
279 | var cacute = "ć";
|
---|
280 | var capand = "⩄";
|
---|
281 | var capbrcup = "⩉";
|
---|
282 | var capcap = "⩋";
|
---|
283 | var cap = "∩";
|
---|
284 | var Cap = "⋒";
|
---|
285 | var capcup = "⩇";
|
---|
286 | var capdot = "⩀";
|
---|
287 | var CapitalDifferentialD = "ⅅ";
|
---|
288 | var caps = "∩︀";
|
---|
289 | var caret = "⁁";
|
---|
290 | var caron = "ˇ";
|
---|
291 | var Cayleys = "ℭ";
|
---|
292 | var ccaps = "⩍";
|
---|
293 | var Ccaron = "Č";
|
---|
294 | var ccaron = "č";
|
---|
295 | var Ccedil = "Ç";
|
---|
296 | var ccedil = "ç";
|
---|
297 | var Ccirc = "Ĉ";
|
---|
298 | var ccirc = "ĉ";
|
---|
299 | var Cconint = "∰";
|
---|
300 | var ccups = "⩌";
|
---|
301 | var ccupssm = "⩐";
|
---|
302 | var Cdot = "Ċ";
|
---|
303 | var cdot = "ċ";
|
---|
304 | var cedil = "¸";
|
---|
305 | var Cedilla = "¸";
|
---|
306 | var cemptyv = "⦲";
|
---|
307 | var cent = "¢";
|
---|
308 | var centerdot = "·";
|
---|
309 | var CenterDot = "·";
|
---|
310 | var cfr = "𝔠";
|
---|
311 | var Cfr = "ℭ";
|
---|
312 | var CHcy = "Ч";
|
---|
313 | var chcy = "ч";
|
---|
314 | var check = "✓";
|
---|
315 | var checkmark = "✓";
|
---|
316 | var Chi = "Χ";
|
---|
317 | var chi = "χ";
|
---|
318 | var circ = "ˆ";
|
---|
319 | var circeq = "≗";
|
---|
320 | var circlearrowleft = "↺";
|
---|
321 | var circlearrowright = "↻";
|
---|
322 | var circledast = "⊛";
|
---|
323 | var circledcirc = "⊚";
|
---|
324 | var circleddash = "⊝";
|
---|
325 | var CircleDot = "⊙";
|
---|
326 | var circledR = "®";
|
---|
327 | var circledS = "Ⓢ";
|
---|
328 | var CircleMinus = "⊖";
|
---|
329 | var CirclePlus = "⊕";
|
---|
330 | var CircleTimes = "⊗";
|
---|
331 | var cir = "○";
|
---|
332 | var cirE = "⧃";
|
---|
333 | var cire = "≗";
|
---|
334 | var cirfnint = "⨐";
|
---|
335 | var cirmid = "⫯";
|
---|
336 | var cirscir = "⧂";
|
---|
337 | var ClockwiseContourIntegral = "∲";
|
---|
338 | var CloseCurlyDoubleQuote = "”";
|
---|
339 | var CloseCurlyQuote = "’";
|
---|
340 | var clubs = "♣";
|
---|
341 | var clubsuit = "♣";
|
---|
342 | var colon = ":";
|
---|
343 | var Colon = "∷";
|
---|
344 | var Colone = "⩴";
|
---|
345 | var colone = "≔";
|
---|
346 | var coloneq = "≔";
|
---|
347 | var comma = ",";
|
---|
348 | var commat = "@";
|
---|
349 | var comp = "∁";
|
---|
350 | var compfn = "∘";
|
---|
351 | var complement = "∁";
|
---|
352 | var complexes = "ℂ";
|
---|
353 | var cong = "≅";
|
---|
354 | var congdot = "⩭";
|
---|
355 | var Congruent = "≡";
|
---|
356 | var conint = "∮";
|
---|
357 | var Conint = "∯";
|
---|
358 | var ContourIntegral = "∮";
|
---|
359 | var copf = "𝕔";
|
---|
360 | var Copf = "ℂ";
|
---|
361 | var coprod = "∐";
|
---|
362 | var Coproduct = "∐";
|
---|
363 | var copy = "©";
|
---|
364 | var COPY = "©";
|
---|
365 | var copysr = "℗";
|
---|
366 | var CounterClockwiseContourIntegral = "∳";
|
---|
367 | var crarr = "↵";
|
---|
368 | var cross = "✗";
|
---|
369 | var Cross = "⨯";
|
---|
370 | var Cscr = "𝒞";
|
---|
371 | var cscr = "𝒸";
|
---|
372 | var csub = "⫏";
|
---|
373 | var csube = "⫑";
|
---|
374 | var csup = "⫐";
|
---|
375 | var csupe = "⫒";
|
---|
376 | var ctdot = "⋯";
|
---|
377 | var cudarrl = "⤸";
|
---|
378 | var cudarrr = "⤵";
|
---|
379 | var cuepr = "⋞";
|
---|
380 | var cuesc = "⋟";
|
---|
381 | var cularr = "↶";
|
---|
382 | var cularrp = "⤽";
|
---|
383 | var cupbrcap = "⩈";
|
---|
384 | var cupcap = "⩆";
|
---|
385 | var CupCap = "≍";
|
---|
386 | var cup = "∪";
|
---|
387 | var Cup = "⋓";
|
---|
388 | var cupcup = "⩊";
|
---|
389 | var cupdot = "⊍";
|
---|
390 | var cupor = "⩅";
|
---|
391 | var cups = "∪︀";
|
---|
392 | var curarr = "↷";
|
---|
393 | var curarrm = "⤼";
|
---|
394 | var curlyeqprec = "⋞";
|
---|
395 | var curlyeqsucc = "⋟";
|
---|
396 | var curlyvee = "⋎";
|
---|
397 | var curlywedge = "⋏";
|
---|
398 | var curren = "¤";
|
---|
399 | var curvearrowleft = "↶";
|
---|
400 | var curvearrowright = "↷";
|
---|
401 | var cuvee = "⋎";
|
---|
402 | var cuwed = "⋏";
|
---|
403 | var cwconint = "∲";
|
---|
404 | var cwint = "∱";
|
---|
405 | var cylcty = "⌭";
|
---|
406 | var dagger = "†";
|
---|
407 | var Dagger = "‡";
|
---|
408 | var daleth = "ℸ";
|
---|
409 | var darr = "↓";
|
---|
410 | var Darr = "↡";
|
---|
411 | var dArr = "⇓";
|
---|
412 | var dash = "‐";
|
---|
413 | var Dashv = "⫤";
|
---|
414 | var dashv = "⊣";
|
---|
415 | var dbkarow = "⤏";
|
---|
416 | var dblac = "˝";
|
---|
417 | var Dcaron = "Ď";
|
---|
418 | var dcaron = "ď";
|
---|
419 | var Dcy = "Д";
|
---|
420 | var dcy = "д";
|
---|
421 | var ddagger = "‡";
|
---|
422 | var ddarr = "⇊";
|
---|
423 | var DD = "ⅅ";
|
---|
424 | var dd = "ⅆ";
|
---|
425 | var DDotrahd = "⤑";
|
---|
426 | var ddotseq = "⩷";
|
---|
427 | var deg = "°";
|
---|
428 | var Del = "∇";
|
---|
429 | var Delta = "Δ";
|
---|
430 | var delta = "δ";
|
---|
431 | var demptyv = "⦱";
|
---|
432 | var dfisht = "⥿";
|
---|
433 | var Dfr = "𝔇";
|
---|
434 | var dfr = "𝔡";
|
---|
435 | var dHar = "⥥";
|
---|
436 | var dharl = "⇃";
|
---|
437 | var dharr = "⇂";
|
---|
438 | var DiacriticalAcute = "´";
|
---|
439 | var DiacriticalDot = "˙";
|
---|
440 | var DiacriticalDoubleAcute = "˝";
|
---|
441 | var DiacriticalGrave = "`";
|
---|
442 | var DiacriticalTilde = "˜";
|
---|
443 | var diam = "⋄";
|
---|
444 | var diamond = "⋄";
|
---|
445 | var Diamond = "⋄";
|
---|
446 | var diamondsuit = "♦";
|
---|
447 | var diams = "♦";
|
---|
448 | var die = "¨";
|
---|
449 | var DifferentialD = "ⅆ";
|
---|
450 | var digamma = "ϝ";
|
---|
451 | var disin = "⋲";
|
---|
452 | var div = "÷";
|
---|
453 | var divide = "÷";
|
---|
454 | var divideontimes = "⋇";
|
---|
455 | var divonx = "⋇";
|
---|
456 | var DJcy = "Ђ";
|
---|
457 | var djcy = "ђ";
|
---|
458 | var dlcorn = "⌞";
|
---|
459 | var dlcrop = "⌍";
|
---|
460 | var dollar = "$";
|
---|
461 | var Dopf = "𝔻";
|
---|
462 | var dopf = "𝕕";
|
---|
463 | var Dot = "¨";
|
---|
464 | var dot = "˙";
|
---|
465 | var DotDot = "⃜";
|
---|
466 | var doteq = "≐";
|
---|
467 | var doteqdot = "≑";
|
---|
468 | var DotEqual = "≐";
|
---|
469 | var dotminus = "∸";
|
---|
470 | var dotplus = "∔";
|
---|
471 | var dotsquare = "⊡";
|
---|
472 | var doublebarwedge = "⌆";
|
---|
473 | var DoubleContourIntegral = "∯";
|
---|
474 | var DoubleDot = "¨";
|
---|
475 | var DoubleDownArrow = "⇓";
|
---|
476 | var DoubleLeftArrow = "⇐";
|
---|
477 | var DoubleLeftRightArrow = "⇔";
|
---|
478 | var DoubleLeftTee = "⫤";
|
---|
479 | var DoubleLongLeftArrow = "⟸";
|
---|
480 | var DoubleLongLeftRightArrow = "⟺";
|
---|
481 | var DoubleLongRightArrow = "⟹";
|
---|
482 | var DoubleRightArrow = "⇒";
|
---|
483 | var DoubleRightTee = "⊨";
|
---|
484 | var DoubleUpArrow = "⇑";
|
---|
485 | var DoubleUpDownArrow = "⇕";
|
---|
486 | var DoubleVerticalBar = "∥";
|
---|
487 | var DownArrowBar = "⤓";
|
---|
488 | var downarrow = "↓";
|
---|
489 | var DownArrow = "↓";
|
---|
490 | var Downarrow = "⇓";
|
---|
491 | var DownArrowUpArrow = "⇵";
|
---|
492 | var DownBreve = "̑";
|
---|
493 | var downdownarrows = "⇊";
|
---|
494 | var downharpoonleft = "⇃";
|
---|
495 | var downharpoonright = "⇂";
|
---|
496 | var DownLeftRightVector = "⥐";
|
---|
497 | var DownLeftTeeVector = "⥞";
|
---|
498 | var DownLeftVectorBar = "⥖";
|
---|
499 | var DownLeftVector = "↽";
|
---|
500 | var DownRightTeeVector = "⥟";
|
---|
501 | var DownRightVectorBar = "⥗";
|
---|
502 | var DownRightVector = "⇁";
|
---|
503 | var DownTeeArrow = "↧";
|
---|
504 | var DownTee = "⊤";
|
---|
505 | var drbkarow = "⤐";
|
---|
506 | var drcorn = "⌟";
|
---|
507 | var drcrop = "⌌";
|
---|
508 | var Dscr = "𝒟";
|
---|
509 | var dscr = "𝒹";
|
---|
510 | var DScy = "Ѕ";
|
---|
511 | var dscy = "ѕ";
|
---|
512 | var dsol = "⧶";
|
---|
513 | var Dstrok = "Đ";
|
---|
514 | var dstrok = "đ";
|
---|
515 | var dtdot = "⋱";
|
---|
516 | var dtri = "▿";
|
---|
517 | var dtrif = "▾";
|
---|
518 | var duarr = "⇵";
|
---|
519 | var duhar = "⥯";
|
---|
520 | var dwangle = "⦦";
|
---|
521 | var DZcy = "Џ";
|
---|
522 | var dzcy = "џ";
|
---|
523 | var dzigrarr = "⟿";
|
---|
524 | var Eacute = "É";
|
---|
525 | var eacute = "é";
|
---|
526 | var easter = "⩮";
|
---|
527 | var Ecaron = "Ě";
|
---|
528 | var ecaron = "ě";
|
---|
529 | var Ecirc = "Ê";
|
---|
530 | var ecirc = "ê";
|
---|
531 | var ecir = "≖";
|
---|
532 | var ecolon = "≕";
|
---|
533 | var Ecy = "Э";
|
---|
534 | var ecy = "э";
|
---|
535 | var eDDot = "⩷";
|
---|
536 | var Edot = "Ė";
|
---|
537 | var edot = "ė";
|
---|
538 | var eDot = "≑";
|
---|
539 | var ee = "ⅇ";
|
---|
540 | var efDot = "≒";
|
---|
541 | var Efr = "𝔈";
|
---|
542 | var efr = "𝔢";
|
---|
543 | var eg = "⪚";
|
---|
544 | var Egrave = "È";
|
---|
545 | var egrave = "è";
|
---|
546 | var egs = "⪖";
|
---|
547 | var egsdot = "⪘";
|
---|
548 | var el = "⪙";
|
---|
549 | var Element = "∈";
|
---|
550 | var elinters = "⏧";
|
---|
551 | var ell = "ℓ";
|
---|
552 | var els = "⪕";
|
---|
553 | var elsdot = "⪗";
|
---|
554 | var Emacr = "Ē";
|
---|
555 | var emacr = "ē";
|
---|
556 | var empty = "∅";
|
---|
557 | var emptyset = "∅";
|
---|
558 | var EmptySmallSquare = "◻";
|
---|
559 | var emptyv = "∅";
|
---|
560 | var EmptyVerySmallSquare = "▫";
|
---|
561 | var emsp13 = " ";
|
---|
562 | var emsp14 = " ";
|
---|
563 | var emsp = " ";
|
---|
564 | var ENG = "Ŋ";
|
---|
565 | var eng = "ŋ";
|
---|
566 | var ensp = " ";
|
---|
567 | var Eogon = "Ę";
|
---|
568 | var eogon = "ę";
|
---|
569 | var Eopf = "𝔼";
|
---|
570 | var eopf = "𝕖";
|
---|
571 | var epar = "⋕";
|
---|
572 | var eparsl = "⧣";
|
---|
573 | var eplus = "⩱";
|
---|
574 | var epsi = "ε";
|
---|
575 | var Epsilon = "Ε";
|
---|
576 | var epsilon = "ε";
|
---|
577 | var epsiv = "ϵ";
|
---|
578 | var eqcirc = "≖";
|
---|
579 | var eqcolon = "≕";
|
---|
580 | var eqsim = "≂";
|
---|
581 | var eqslantgtr = "⪖";
|
---|
582 | var eqslantless = "⪕";
|
---|
583 | var Equal = "⩵";
|
---|
584 | var equals = "=";
|
---|
585 | var EqualTilde = "≂";
|
---|
586 | var equest = "≟";
|
---|
587 | var Equilibrium = "⇌";
|
---|
588 | var equiv = "≡";
|
---|
589 | var equivDD = "⩸";
|
---|
590 | var eqvparsl = "⧥";
|
---|
591 | var erarr = "⥱";
|
---|
592 | var erDot = "≓";
|
---|
593 | var escr = "ℯ";
|
---|
594 | var Escr = "ℰ";
|
---|
595 | var esdot = "≐";
|
---|
596 | var Esim = "⩳";
|
---|
597 | var esim = "≂";
|
---|
598 | var Eta = "Η";
|
---|
599 | var eta = "η";
|
---|
600 | var ETH = "Ð";
|
---|
601 | var eth = "ð";
|
---|
602 | var Euml = "Ë";
|
---|
603 | var euml = "ë";
|
---|
604 | var euro = "€";
|
---|
605 | var excl = "!";
|
---|
606 | var exist = "∃";
|
---|
607 | var Exists = "∃";
|
---|
608 | var expectation = "ℰ";
|
---|
609 | var exponentiale = "ⅇ";
|
---|
610 | var ExponentialE = "ⅇ";
|
---|
611 | var fallingdotseq = "≒";
|
---|
612 | var Fcy = "Ф";
|
---|
613 | var fcy = "ф";
|
---|
614 | var female = "♀";
|
---|
615 | var ffilig = "ffi";
|
---|
616 | var fflig = "ff";
|
---|
617 | var ffllig = "ffl";
|
---|
618 | var Ffr = "𝔉";
|
---|
619 | var ffr = "𝔣";
|
---|
620 | var filig = "fi";
|
---|
621 | var FilledSmallSquare = "◼";
|
---|
622 | var FilledVerySmallSquare = "▪";
|
---|
623 | var fjlig = "fj";
|
---|
624 | var flat = "♭";
|
---|
625 | var fllig = "fl";
|
---|
626 | var fltns = "▱";
|
---|
627 | var fnof = "ƒ";
|
---|
628 | var Fopf = "𝔽";
|
---|
629 | var fopf = "𝕗";
|
---|
630 | var forall = "∀";
|
---|
631 | var ForAll = "∀";
|
---|
632 | var fork = "⋔";
|
---|
633 | var forkv = "⫙";
|
---|
634 | var Fouriertrf = "ℱ";
|
---|
635 | var fpartint = "⨍";
|
---|
636 | var frac12 = "½";
|
---|
637 | var frac13 = "⅓";
|
---|
638 | var frac14 = "¼";
|
---|
639 | var frac15 = "⅕";
|
---|
640 | var frac16 = "⅙";
|
---|
641 | var frac18 = "⅛";
|
---|
642 | var frac23 = "⅔";
|
---|
643 | var frac25 = "⅖";
|
---|
644 | var frac34 = "¾";
|
---|
645 | var frac35 = "⅗";
|
---|
646 | var frac38 = "⅜";
|
---|
647 | var frac45 = "⅘";
|
---|
648 | var frac56 = "⅚";
|
---|
649 | var frac58 = "⅝";
|
---|
650 | var frac78 = "⅞";
|
---|
651 | var frasl = "⁄";
|
---|
652 | var frown = "⌢";
|
---|
653 | var fscr = "𝒻";
|
---|
654 | var Fscr = "ℱ";
|
---|
655 | var gacute = "ǵ";
|
---|
656 | var Gamma = "Γ";
|
---|
657 | var gamma = "γ";
|
---|
658 | var Gammad = "Ϝ";
|
---|
659 | var gammad = "ϝ";
|
---|
660 | var gap = "⪆";
|
---|
661 | var Gbreve = "Ğ";
|
---|
662 | var gbreve = "ğ";
|
---|
663 | var Gcedil = "Ģ";
|
---|
664 | var Gcirc = "Ĝ";
|
---|
665 | var gcirc = "ĝ";
|
---|
666 | var Gcy = "Г";
|
---|
667 | var gcy = "г";
|
---|
668 | var Gdot = "Ġ";
|
---|
669 | var gdot = "ġ";
|
---|
670 | var ge = "≥";
|
---|
671 | var gE = "≧";
|
---|
672 | var gEl = "⪌";
|
---|
673 | var gel = "⋛";
|
---|
674 | var geq = "≥";
|
---|
675 | var geqq = "≧";
|
---|
676 | var geqslant = "⩾";
|
---|
677 | var gescc = "⪩";
|
---|
678 | var ges = "⩾";
|
---|
679 | var gesdot = "⪀";
|
---|
680 | var gesdoto = "⪂";
|
---|
681 | var gesdotol = "⪄";
|
---|
682 | var gesl = "⋛︀";
|
---|
683 | var gesles = "⪔";
|
---|
684 | var Gfr = "𝔊";
|
---|
685 | var gfr = "𝔤";
|
---|
686 | var gg = "≫";
|
---|
687 | var Gg = "⋙";
|
---|
688 | var ggg = "⋙";
|
---|
689 | var gimel = "ℷ";
|
---|
690 | var GJcy = "Ѓ";
|
---|
691 | var gjcy = "ѓ";
|
---|
692 | var gla = "⪥";
|
---|
693 | var gl = "≷";
|
---|
694 | var glE = "⪒";
|
---|
695 | var glj = "⪤";
|
---|
696 | var gnap = "⪊";
|
---|
697 | var gnapprox = "⪊";
|
---|
698 | var gne = "⪈";
|
---|
699 | var gnE = "≩";
|
---|
700 | var gneq = "⪈";
|
---|
701 | var gneqq = "≩";
|
---|
702 | var gnsim = "⋧";
|
---|
703 | var Gopf = "𝔾";
|
---|
704 | var gopf = "𝕘";
|
---|
705 | var grave = "`";
|
---|
706 | var GreaterEqual = "≥";
|
---|
707 | var GreaterEqualLess = "⋛";
|
---|
708 | var GreaterFullEqual = "≧";
|
---|
709 | var GreaterGreater = "⪢";
|
---|
710 | var GreaterLess = "≷";
|
---|
711 | var GreaterSlantEqual = "⩾";
|
---|
712 | var GreaterTilde = "≳";
|
---|
713 | var Gscr = "𝒢";
|
---|
714 | var gscr = "ℊ";
|
---|
715 | var gsim = "≳";
|
---|
716 | var gsime = "⪎";
|
---|
717 | var gsiml = "⪐";
|
---|
718 | var gtcc = "⪧";
|
---|
719 | var gtcir = "⩺";
|
---|
720 | var gt = ">";
|
---|
721 | var GT = ">";
|
---|
722 | var Gt = "≫";
|
---|
723 | var gtdot = "⋗";
|
---|
724 | var gtlPar = "⦕";
|
---|
725 | var gtquest = "⩼";
|
---|
726 | var gtrapprox = "⪆";
|
---|
727 | var gtrarr = "⥸";
|
---|
728 | var gtrdot = "⋗";
|
---|
729 | var gtreqless = "⋛";
|
---|
730 | var gtreqqless = "⪌";
|
---|
731 | var gtrless = "≷";
|
---|
732 | var gtrsim = "≳";
|
---|
733 | var gvertneqq = "≩︀";
|
---|
734 | var gvnE = "≩︀";
|
---|
735 | var Hacek = "ˇ";
|
---|
736 | var hairsp = " ";
|
---|
737 | var half = "½";
|
---|
738 | var hamilt = "ℋ";
|
---|
739 | var HARDcy = "Ъ";
|
---|
740 | var hardcy = "ъ";
|
---|
741 | var harrcir = "⥈";
|
---|
742 | var harr = "↔";
|
---|
743 | var hArr = "⇔";
|
---|
744 | var harrw = "↭";
|
---|
745 | var Hat = "^";
|
---|
746 | var hbar = "ℏ";
|
---|
747 | var Hcirc = "Ĥ";
|
---|
748 | var hcirc = "ĥ";
|
---|
749 | var hearts = "♥";
|
---|
750 | var heartsuit = "♥";
|
---|
751 | var hellip = "…";
|
---|
752 | var hercon = "⊹";
|
---|
753 | var hfr = "𝔥";
|
---|
754 | var Hfr = "ℌ";
|
---|
755 | var HilbertSpace = "ℋ";
|
---|
756 | var hksearow = "⤥";
|
---|
757 | var hkswarow = "⤦";
|
---|
758 | var hoarr = "⇿";
|
---|
759 | var homtht = "∻";
|
---|
760 | var hookleftarrow = "↩";
|
---|
761 | var hookrightarrow = "↪";
|
---|
762 | var hopf = "𝕙";
|
---|
763 | var Hopf = "ℍ";
|
---|
764 | var horbar = "―";
|
---|
765 | var HorizontalLine = "─";
|
---|
766 | var hscr = "𝒽";
|
---|
767 | var Hscr = "ℋ";
|
---|
768 | var hslash = "ℏ";
|
---|
769 | var Hstrok = "Ħ";
|
---|
770 | var hstrok = "ħ";
|
---|
771 | var HumpDownHump = "≎";
|
---|
772 | var HumpEqual = "≏";
|
---|
773 | var hybull = "⁃";
|
---|
774 | var hyphen = "‐";
|
---|
775 | var Iacute = "Í";
|
---|
776 | var iacute = "í";
|
---|
777 | var ic = "";
|
---|
778 | var Icirc = "Î";
|
---|
779 | var icirc = "î";
|
---|
780 | var Icy = "И";
|
---|
781 | var icy = "и";
|
---|
782 | var Idot = "İ";
|
---|
783 | var IEcy = "Е";
|
---|
784 | var iecy = "е";
|
---|
785 | var iexcl = "¡";
|
---|
786 | var iff = "⇔";
|
---|
787 | var ifr = "𝔦";
|
---|
788 | var Ifr = "ℑ";
|
---|
789 | var Igrave = "Ì";
|
---|
790 | var igrave = "ì";
|
---|
791 | var ii = "ⅈ";
|
---|
792 | var iiiint = "⨌";
|
---|
793 | var iiint = "∭";
|
---|
794 | var iinfin = "⧜";
|
---|
795 | var iiota = "℩";
|
---|
796 | var IJlig = "IJ";
|
---|
797 | var ijlig = "ij";
|
---|
798 | var Imacr = "Ī";
|
---|
799 | var imacr = "ī";
|
---|
800 | var image = "ℑ";
|
---|
801 | var ImaginaryI = "ⅈ";
|
---|
802 | var imagline = "ℐ";
|
---|
803 | var imagpart = "ℑ";
|
---|
804 | var imath = "ı";
|
---|
805 | var Im = "ℑ";
|
---|
806 | var imof = "⊷";
|
---|
807 | var imped = "Ƶ";
|
---|
808 | var Implies = "⇒";
|
---|
809 | var incare = "℅";
|
---|
810 | var infin = "∞";
|
---|
811 | var infintie = "⧝";
|
---|
812 | var inodot = "ı";
|
---|
813 | var intcal = "⊺";
|
---|
814 | var int = "∫";
|
---|
815 | var Int = "∬";
|
---|
816 | var integers = "ℤ";
|
---|
817 | var Integral = "∫";
|
---|
818 | var intercal = "⊺";
|
---|
819 | var Intersection = "⋂";
|
---|
820 | var intlarhk = "⨗";
|
---|
821 | var intprod = "⨼";
|
---|
822 | var InvisibleComma = "";
|
---|
823 | var InvisibleTimes = "";
|
---|
824 | var IOcy = "Ё";
|
---|
825 | var iocy = "ё";
|
---|
826 | var Iogon = "Į";
|
---|
827 | var iogon = "į";
|
---|
828 | var Iopf = "𝕀";
|
---|
829 | var iopf = "𝕚";
|
---|
830 | var Iota = "Ι";
|
---|
831 | var iota = "ι";
|
---|
832 | var iprod = "⨼";
|
---|
833 | var iquest = "¿";
|
---|
834 | var iscr = "𝒾";
|
---|
835 | var Iscr = "ℐ";
|
---|
836 | var isin = "∈";
|
---|
837 | var isindot = "⋵";
|
---|
838 | var isinE = "⋹";
|
---|
839 | var isins = "⋴";
|
---|
840 | var isinsv = "⋳";
|
---|
841 | var isinv = "∈";
|
---|
842 | var it = "";
|
---|
843 | var Itilde = "Ĩ";
|
---|
844 | var itilde = "ĩ";
|
---|
845 | var Iukcy = "І";
|
---|
846 | var iukcy = "і";
|
---|
847 | var Iuml = "Ï";
|
---|
848 | var iuml = "ï";
|
---|
849 | var Jcirc = "Ĵ";
|
---|
850 | var jcirc = "ĵ";
|
---|
851 | var Jcy = "Й";
|
---|
852 | var jcy = "й";
|
---|
853 | var Jfr = "𝔍";
|
---|
854 | var jfr = "𝔧";
|
---|
855 | var jmath = "ȷ";
|
---|
856 | var Jopf = "𝕁";
|
---|
857 | var jopf = "𝕛";
|
---|
858 | var Jscr = "𝒥";
|
---|
859 | var jscr = "𝒿";
|
---|
860 | var Jsercy = "Ј";
|
---|
861 | var jsercy = "ј";
|
---|
862 | var Jukcy = "Є";
|
---|
863 | var jukcy = "є";
|
---|
864 | var Kappa = "Κ";
|
---|
865 | var kappa = "κ";
|
---|
866 | var kappav = "ϰ";
|
---|
867 | var Kcedil = "Ķ";
|
---|
868 | var kcedil = "ķ";
|
---|
869 | var Kcy = "К";
|
---|
870 | var kcy = "к";
|
---|
871 | var Kfr = "𝔎";
|
---|
872 | var kfr = "𝔨";
|
---|
873 | var kgreen = "ĸ";
|
---|
874 | var KHcy = "Х";
|
---|
875 | var khcy = "х";
|
---|
876 | var KJcy = "Ќ";
|
---|
877 | var kjcy = "ќ";
|
---|
878 | var Kopf = "𝕂";
|
---|
879 | var kopf = "𝕜";
|
---|
880 | var Kscr = "𝒦";
|
---|
881 | var kscr = "𝓀";
|
---|
882 | var lAarr = "⇚";
|
---|
883 | var Lacute = "Ĺ";
|
---|
884 | var lacute = "ĺ";
|
---|
885 | var laemptyv = "⦴";
|
---|
886 | var lagran = "ℒ";
|
---|
887 | var Lambda = "Λ";
|
---|
888 | var lambda = "λ";
|
---|
889 | var lang = "⟨";
|
---|
890 | var Lang = "⟪";
|
---|
891 | var langd = "⦑";
|
---|
892 | var langle = "⟨";
|
---|
893 | var lap = "⪅";
|
---|
894 | var Laplacetrf = "ℒ";
|
---|
895 | var laquo = "«";
|
---|
896 | var larrb = "⇤";
|
---|
897 | var larrbfs = "⤟";
|
---|
898 | var larr = "←";
|
---|
899 | var Larr = "↞";
|
---|
900 | var lArr = "⇐";
|
---|
901 | var larrfs = "⤝";
|
---|
902 | var larrhk = "↩";
|
---|
903 | var larrlp = "↫";
|
---|
904 | var larrpl = "⤹";
|
---|
905 | var larrsim = "⥳";
|
---|
906 | var larrtl = "↢";
|
---|
907 | var latail = "⤙";
|
---|
908 | var lAtail = "⤛";
|
---|
909 | var lat = "⪫";
|
---|
910 | var late = "⪭";
|
---|
911 | var lates = "⪭︀";
|
---|
912 | var lbarr = "⤌";
|
---|
913 | var lBarr = "⤎";
|
---|
914 | var lbbrk = "❲";
|
---|
915 | var lbrace = "{";
|
---|
916 | var lbrack = "[";
|
---|
917 | var lbrke = "⦋";
|
---|
918 | var lbrksld = "⦏";
|
---|
919 | var lbrkslu = "⦍";
|
---|
920 | var Lcaron = "Ľ";
|
---|
921 | var lcaron = "ľ";
|
---|
922 | var Lcedil = "Ļ";
|
---|
923 | var lcedil = "ļ";
|
---|
924 | var lceil = "⌈";
|
---|
925 | var lcub = "{";
|
---|
926 | var Lcy = "Л";
|
---|
927 | var lcy = "л";
|
---|
928 | var ldca = "⤶";
|
---|
929 | var ldquo = "“";
|
---|
930 | var ldquor = "„";
|
---|
931 | var ldrdhar = "⥧";
|
---|
932 | var ldrushar = "⥋";
|
---|
933 | var ldsh = "↲";
|
---|
934 | var le = "≤";
|
---|
935 | var lE = "≦";
|
---|
936 | var LeftAngleBracket = "⟨";
|
---|
937 | var LeftArrowBar = "⇤";
|
---|
938 | var leftarrow = "←";
|
---|
939 | var LeftArrow = "←";
|
---|
940 | var Leftarrow = "⇐";
|
---|
941 | var LeftArrowRightArrow = "⇆";
|
---|
942 | var leftarrowtail = "↢";
|
---|
943 | var LeftCeiling = "⌈";
|
---|
944 | var LeftDoubleBracket = "⟦";
|
---|
945 | var LeftDownTeeVector = "⥡";
|
---|
946 | var LeftDownVectorBar = "⥙";
|
---|
947 | var LeftDownVector = "⇃";
|
---|
948 | var LeftFloor = "⌊";
|
---|
949 | var leftharpoondown = "↽";
|
---|
950 | var leftharpoonup = "↼";
|
---|
951 | var leftleftarrows = "⇇";
|
---|
952 | var leftrightarrow = "↔";
|
---|
953 | var LeftRightArrow = "↔";
|
---|
954 | var Leftrightarrow = "⇔";
|
---|
955 | var leftrightarrows = "⇆";
|
---|
956 | var leftrightharpoons = "⇋";
|
---|
957 | var leftrightsquigarrow = "↭";
|
---|
958 | var LeftRightVector = "⥎";
|
---|
959 | var LeftTeeArrow = "↤";
|
---|
960 | var LeftTee = "⊣";
|
---|
961 | var LeftTeeVector = "⥚";
|
---|
962 | var leftthreetimes = "⋋";
|
---|
963 | var LeftTriangleBar = "⧏";
|
---|
964 | var LeftTriangle = "⊲";
|
---|
965 | var LeftTriangleEqual = "⊴";
|
---|
966 | var LeftUpDownVector = "⥑";
|
---|
967 | var LeftUpTeeVector = "⥠";
|
---|
968 | var LeftUpVectorBar = "⥘";
|
---|
969 | var LeftUpVector = "↿";
|
---|
970 | var LeftVectorBar = "⥒";
|
---|
971 | var LeftVector = "↼";
|
---|
972 | var lEg = "⪋";
|
---|
973 | var leg = "⋚";
|
---|
974 | var leq = "≤";
|
---|
975 | var leqq = "≦";
|
---|
976 | var leqslant = "⩽";
|
---|
977 | var lescc = "⪨";
|
---|
978 | var les = "⩽";
|
---|
979 | var lesdot = "⩿";
|
---|
980 | var lesdoto = "⪁";
|
---|
981 | var lesdotor = "⪃";
|
---|
982 | var lesg = "⋚︀";
|
---|
983 | var lesges = "⪓";
|
---|
984 | var lessapprox = "⪅";
|
---|
985 | var lessdot = "⋖";
|
---|
986 | var lesseqgtr = "⋚";
|
---|
987 | var lesseqqgtr = "⪋";
|
---|
988 | var LessEqualGreater = "⋚";
|
---|
989 | var LessFullEqual = "≦";
|
---|
990 | var LessGreater = "≶";
|
---|
991 | var lessgtr = "≶";
|
---|
992 | var LessLess = "⪡";
|
---|
993 | var lesssim = "≲";
|
---|
994 | var LessSlantEqual = "⩽";
|
---|
995 | var LessTilde = "≲";
|
---|
996 | var lfisht = "⥼";
|
---|
997 | var lfloor = "⌊";
|
---|
998 | var Lfr = "𝔏";
|
---|
999 | var lfr = "𝔩";
|
---|
1000 | var lg = "≶";
|
---|
1001 | var lgE = "⪑";
|
---|
1002 | var lHar = "⥢";
|
---|
1003 | var lhard = "↽";
|
---|
1004 | var lharu = "↼";
|
---|
1005 | var lharul = "⥪";
|
---|
1006 | var lhblk = "▄";
|
---|
1007 | var LJcy = "Љ";
|
---|
1008 | var ljcy = "љ";
|
---|
1009 | var llarr = "⇇";
|
---|
1010 | var ll = "≪";
|
---|
1011 | var Ll = "⋘";
|
---|
1012 | var llcorner = "⌞";
|
---|
1013 | var Lleftarrow = "⇚";
|
---|
1014 | var llhard = "⥫";
|
---|
1015 | var lltri = "◺";
|
---|
1016 | var Lmidot = "Ŀ";
|
---|
1017 | var lmidot = "ŀ";
|
---|
1018 | var lmoustache = "⎰";
|
---|
1019 | var lmoust = "⎰";
|
---|
1020 | var lnap = "⪉";
|
---|
1021 | var lnapprox = "⪉";
|
---|
1022 | var lne = "⪇";
|
---|
1023 | var lnE = "≨";
|
---|
1024 | var lneq = "⪇";
|
---|
1025 | var lneqq = "≨";
|
---|
1026 | var lnsim = "⋦";
|
---|
1027 | var loang = "⟬";
|
---|
1028 | var loarr = "⇽";
|
---|
1029 | var lobrk = "⟦";
|
---|
1030 | var longleftarrow = "⟵";
|
---|
1031 | var LongLeftArrow = "⟵";
|
---|
1032 | var Longleftarrow = "⟸";
|
---|
1033 | var longleftrightarrow = "⟷";
|
---|
1034 | var LongLeftRightArrow = "⟷";
|
---|
1035 | var Longleftrightarrow = "⟺";
|
---|
1036 | var longmapsto = "⟼";
|
---|
1037 | var longrightarrow = "⟶";
|
---|
1038 | var LongRightArrow = "⟶";
|
---|
1039 | var Longrightarrow = "⟹";
|
---|
1040 | var looparrowleft = "↫";
|
---|
1041 | var looparrowright = "↬";
|
---|
1042 | var lopar = "⦅";
|
---|
1043 | var Lopf = "𝕃";
|
---|
1044 | var lopf = "𝕝";
|
---|
1045 | var loplus = "⨭";
|
---|
1046 | var lotimes = "⨴";
|
---|
1047 | var lowast = "∗";
|
---|
1048 | var lowbar = "_";
|
---|
1049 | var LowerLeftArrow = "↙";
|
---|
1050 | var LowerRightArrow = "↘";
|
---|
1051 | var loz = "◊";
|
---|
1052 | var lozenge = "◊";
|
---|
1053 | var lozf = "⧫";
|
---|
1054 | var lpar = "(";
|
---|
1055 | var lparlt = "⦓";
|
---|
1056 | var lrarr = "⇆";
|
---|
1057 | var lrcorner = "⌟";
|
---|
1058 | var lrhar = "⇋";
|
---|
1059 | var lrhard = "⥭";
|
---|
1060 | var lrm = "";
|
---|
1061 | var lrtri = "⊿";
|
---|
1062 | var lsaquo = "‹";
|
---|
1063 | var lscr = "𝓁";
|
---|
1064 | var Lscr = "ℒ";
|
---|
1065 | var lsh = "↰";
|
---|
1066 | var Lsh = "↰";
|
---|
1067 | var lsim = "≲";
|
---|
1068 | var lsime = "⪍";
|
---|
1069 | var lsimg = "⪏";
|
---|
1070 | var lsqb = "[";
|
---|
1071 | var lsquo = "‘";
|
---|
1072 | var lsquor = "‚";
|
---|
1073 | var Lstrok = "Ł";
|
---|
1074 | var lstrok = "ł";
|
---|
1075 | var ltcc = "⪦";
|
---|
1076 | var ltcir = "⩹";
|
---|
1077 | var lt = "<";
|
---|
1078 | var LT = "<";
|
---|
1079 | var Lt = "≪";
|
---|
1080 | var ltdot = "⋖";
|
---|
1081 | var lthree = "⋋";
|
---|
1082 | var ltimes = "⋉";
|
---|
1083 | var ltlarr = "⥶";
|
---|
1084 | var ltquest = "⩻";
|
---|
1085 | var ltri = "◃";
|
---|
1086 | var ltrie = "⊴";
|
---|
1087 | var ltrif = "◂";
|
---|
1088 | var ltrPar = "⦖";
|
---|
1089 | var lurdshar = "⥊";
|
---|
1090 | var luruhar = "⥦";
|
---|
1091 | var lvertneqq = "≨︀";
|
---|
1092 | var lvnE = "≨︀";
|
---|
1093 | var macr = "¯";
|
---|
1094 | var male = "♂";
|
---|
1095 | var malt = "✠";
|
---|
1096 | var maltese = "✠";
|
---|
1097 | var map = "↦";
|
---|
1098 | var mapsto = "↦";
|
---|
1099 | var mapstodown = "↧";
|
---|
1100 | var mapstoleft = "↤";
|
---|
1101 | var mapstoup = "↥";
|
---|
1102 | var marker = "▮";
|
---|
1103 | var mcomma = "⨩";
|
---|
1104 | var Mcy = "М";
|
---|
1105 | var mcy = "м";
|
---|
1106 | var mdash = "—";
|
---|
1107 | var mDDot = "∺";
|
---|
1108 | var measuredangle = "∡";
|
---|
1109 | var MediumSpace = " ";
|
---|
1110 | var Mellintrf = "ℳ";
|
---|
1111 | var Mfr = "𝔐";
|
---|
1112 | var mfr = "𝔪";
|
---|
1113 | var mho = "℧";
|
---|
1114 | var micro = "µ";
|
---|
1115 | var midast = "*";
|
---|
1116 | var midcir = "⫰";
|
---|
1117 | var mid = "∣";
|
---|
1118 | var middot = "·";
|
---|
1119 | var minusb = "⊟";
|
---|
1120 | var minus = "−";
|
---|
1121 | var minusd = "∸";
|
---|
1122 | var minusdu = "⨪";
|
---|
1123 | var MinusPlus = "∓";
|
---|
1124 | var mlcp = "⫛";
|
---|
1125 | var mldr = "…";
|
---|
1126 | var mnplus = "∓";
|
---|
1127 | var models = "⊧";
|
---|
1128 | var Mopf = "𝕄";
|
---|
1129 | var mopf = "𝕞";
|
---|
1130 | var mp = "∓";
|
---|
1131 | var mscr = "𝓂";
|
---|
1132 | var Mscr = "ℳ";
|
---|
1133 | var mstpos = "∾";
|
---|
1134 | var Mu = "Μ";
|
---|
1135 | var mu = "μ";
|
---|
1136 | var multimap = "⊸";
|
---|
1137 | var mumap = "⊸";
|
---|
1138 | var nabla = "∇";
|
---|
1139 | var Nacute = "Ń";
|
---|
1140 | var nacute = "ń";
|
---|
1141 | var nang = "∠⃒";
|
---|
1142 | var nap = "≉";
|
---|
1143 | var napE = "⩰̸";
|
---|
1144 | var napid = "≋̸";
|
---|
1145 | var napos = "ʼn";
|
---|
1146 | var napprox = "≉";
|
---|
1147 | var natural = "♮";
|
---|
1148 | var naturals = "ℕ";
|
---|
1149 | var natur = "♮";
|
---|
1150 | var nbsp = " ";
|
---|
1151 | var nbump = "≎̸";
|
---|
1152 | var nbumpe = "≏̸";
|
---|
1153 | var ncap = "⩃";
|
---|
1154 | var Ncaron = "Ň";
|
---|
1155 | var ncaron = "ň";
|
---|
1156 | var Ncedil = "Ņ";
|
---|
1157 | var ncedil = "ņ";
|
---|
1158 | var ncong = "≇";
|
---|
1159 | var ncongdot = "⩭̸";
|
---|
1160 | var ncup = "⩂";
|
---|
1161 | var Ncy = "Н";
|
---|
1162 | var ncy = "н";
|
---|
1163 | var ndash = "–";
|
---|
1164 | var nearhk = "⤤";
|
---|
1165 | var nearr = "↗";
|
---|
1166 | var neArr = "⇗";
|
---|
1167 | var nearrow = "↗";
|
---|
1168 | var ne = "≠";
|
---|
1169 | var nedot = "≐̸";
|
---|
1170 | var NegativeMediumSpace = "";
|
---|
1171 | var NegativeThickSpace = "";
|
---|
1172 | var NegativeThinSpace = "";
|
---|
1173 | var NegativeVeryThinSpace = "";
|
---|
1174 | var nequiv = "≢";
|
---|
1175 | var nesear = "⤨";
|
---|
1176 | var nesim = "≂̸";
|
---|
1177 | var NestedGreaterGreater = "≫";
|
---|
1178 | var NestedLessLess = "≪";
|
---|
1179 | var NewLine = "\n";
|
---|
1180 | var nexist = "∄";
|
---|
1181 | var nexists = "∄";
|
---|
1182 | var Nfr = "𝔑";
|
---|
1183 | var nfr = "𝔫";
|
---|
1184 | var ngE = "≧̸";
|
---|
1185 | var nge = "≱";
|
---|
1186 | var ngeq = "≱";
|
---|
1187 | var ngeqq = "≧̸";
|
---|
1188 | var ngeqslant = "⩾̸";
|
---|
1189 | var nges = "⩾̸";
|
---|
1190 | var nGg = "⋙̸";
|
---|
1191 | var ngsim = "≵";
|
---|
1192 | var nGt = "≫⃒";
|
---|
1193 | var ngt = "≯";
|
---|
1194 | var ngtr = "≯";
|
---|
1195 | var nGtv = "≫̸";
|
---|
1196 | var nharr = "↮";
|
---|
1197 | var nhArr = "⇎";
|
---|
1198 | var nhpar = "⫲";
|
---|
1199 | var ni = "∋";
|
---|
1200 | var nis = "⋼";
|
---|
1201 | var nisd = "⋺";
|
---|
1202 | var niv = "∋";
|
---|
1203 | var NJcy = "Њ";
|
---|
1204 | var njcy = "њ";
|
---|
1205 | var nlarr = "↚";
|
---|
1206 | var nlArr = "⇍";
|
---|
1207 | var nldr = "‥";
|
---|
1208 | var nlE = "≦̸";
|
---|
1209 | var nle = "≰";
|
---|
1210 | var nleftarrow = "↚";
|
---|
1211 | var nLeftarrow = "⇍";
|
---|
1212 | var nleftrightarrow = "↮";
|
---|
1213 | var nLeftrightarrow = "⇎";
|
---|
1214 | var nleq = "≰";
|
---|
1215 | var nleqq = "≦̸";
|
---|
1216 | var nleqslant = "⩽̸";
|
---|
1217 | var nles = "⩽̸";
|
---|
1218 | var nless = "≮";
|
---|
1219 | var nLl = "⋘̸";
|
---|
1220 | var nlsim = "≴";
|
---|
1221 | var nLt = "≪⃒";
|
---|
1222 | var nlt = "≮";
|
---|
1223 | var nltri = "⋪";
|
---|
1224 | var nltrie = "⋬";
|
---|
1225 | var nLtv = "≪̸";
|
---|
1226 | var nmid = "∤";
|
---|
1227 | var NoBreak = "";
|
---|
1228 | var NonBreakingSpace = " ";
|
---|
1229 | var nopf = "𝕟";
|
---|
1230 | var Nopf = "ℕ";
|
---|
1231 | var Not = "⫬";
|
---|
1232 | var not = "¬";
|
---|
1233 | var NotCongruent = "≢";
|
---|
1234 | var NotCupCap = "≭";
|
---|
1235 | var NotDoubleVerticalBar = "∦";
|
---|
1236 | var NotElement = "∉";
|
---|
1237 | var NotEqual = "≠";
|
---|
1238 | var NotEqualTilde = "≂̸";
|
---|
1239 | var NotExists = "∄";
|
---|
1240 | var NotGreater = "≯";
|
---|
1241 | var NotGreaterEqual = "≱";
|
---|
1242 | var NotGreaterFullEqual = "≧̸";
|
---|
1243 | var NotGreaterGreater = "≫̸";
|
---|
1244 | var NotGreaterLess = "≹";
|
---|
1245 | var NotGreaterSlantEqual = "⩾̸";
|
---|
1246 | var NotGreaterTilde = "≵";
|
---|
1247 | var NotHumpDownHump = "≎̸";
|
---|
1248 | var NotHumpEqual = "≏̸";
|
---|
1249 | var notin = "∉";
|
---|
1250 | var notindot = "⋵̸";
|
---|
1251 | var notinE = "⋹̸";
|
---|
1252 | var notinva = "∉";
|
---|
1253 | var notinvb = "⋷";
|
---|
1254 | var notinvc = "⋶";
|
---|
1255 | var NotLeftTriangleBar = "⧏̸";
|
---|
1256 | var NotLeftTriangle = "⋪";
|
---|
1257 | var NotLeftTriangleEqual = "⋬";
|
---|
1258 | var NotLess = "≮";
|
---|
1259 | var NotLessEqual = "≰";
|
---|
1260 | var NotLessGreater = "≸";
|
---|
1261 | var NotLessLess = "≪̸";
|
---|
1262 | var NotLessSlantEqual = "⩽̸";
|
---|
1263 | var NotLessTilde = "≴";
|
---|
1264 | var NotNestedGreaterGreater = "⪢̸";
|
---|
1265 | var NotNestedLessLess = "⪡̸";
|
---|
1266 | var notni = "∌";
|
---|
1267 | var notniva = "∌";
|
---|
1268 | var notnivb = "⋾";
|
---|
1269 | var notnivc = "⋽";
|
---|
1270 | var NotPrecedes = "⊀";
|
---|
1271 | var NotPrecedesEqual = "⪯̸";
|
---|
1272 | var NotPrecedesSlantEqual = "⋠";
|
---|
1273 | var NotReverseElement = "∌";
|
---|
1274 | var NotRightTriangleBar = "⧐̸";
|
---|
1275 | var NotRightTriangle = "⋫";
|
---|
1276 | var NotRightTriangleEqual = "⋭";
|
---|
1277 | var NotSquareSubset = "⊏̸";
|
---|
1278 | var NotSquareSubsetEqual = "⋢";
|
---|
1279 | var NotSquareSuperset = "⊐̸";
|
---|
1280 | var NotSquareSupersetEqual = "⋣";
|
---|
1281 | var NotSubset = "⊂⃒";
|
---|
1282 | var NotSubsetEqual = "⊈";
|
---|
1283 | var NotSucceeds = "⊁";
|
---|
1284 | var NotSucceedsEqual = "⪰̸";
|
---|
1285 | var NotSucceedsSlantEqual = "⋡";
|
---|
1286 | var NotSucceedsTilde = "≿̸";
|
---|
1287 | var NotSuperset = "⊃⃒";
|
---|
1288 | var NotSupersetEqual = "⊉";
|
---|
1289 | var NotTilde = "≁";
|
---|
1290 | var NotTildeEqual = "≄";
|
---|
1291 | var NotTildeFullEqual = "≇";
|
---|
1292 | var NotTildeTilde = "≉";
|
---|
1293 | var NotVerticalBar = "∤";
|
---|
1294 | var nparallel = "∦";
|
---|
1295 | var npar = "∦";
|
---|
1296 | var nparsl = "⫽⃥";
|
---|
1297 | var npart = "∂̸";
|
---|
1298 | var npolint = "⨔";
|
---|
1299 | var npr = "⊀";
|
---|
1300 | var nprcue = "⋠";
|
---|
1301 | var nprec = "⊀";
|
---|
1302 | var npreceq = "⪯̸";
|
---|
1303 | var npre = "⪯̸";
|
---|
1304 | var nrarrc = "⤳̸";
|
---|
1305 | var nrarr = "↛";
|
---|
1306 | var nrArr = "⇏";
|
---|
1307 | var nrarrw = "↝̸";
|
---|
1308 | var nrightarrow = "↛";
|
---|
1309 | var nRightarrow = "⇏";
|
---|
1310 | var nrtri = "⋫";
|
---|
1311 | var nrtrie = "⋭";
|
---|
1312 | var nsc = "⊁";
|
---|
1313 | var nsccue = "⋡";
|
---|
1314 | var nsce = "⪰̸";
|
---|
1315 | var Nscr = "𝒩";
|
---|
1316 | var nscr = "𝓃";
|
---|
1317 | var nshortmid = "∤";
|
---|
1318 | var nshortparallel = "∦";
|
---|
1319 | var nsim = "≁";
|
---|
1320 | var nsime = "≄";
|
---|
1321 | var nsimeq = "≄";
|
---|
1322 | var nsmid = "∤";
|
---|
1323 | var nspar = "∦";
|
---|
1324 | var nsqsube = "⋢";
|
---|
1325 | var nsqsupe = "⋣";
|
---|
1326 | var nsub = "⊄";
|
---|
1327 | var nsubE = "⫅̸";
|
---|
1328 | var nsube = "⊈";
|
---|
1329 | var nsubset = "⊂⃒";
|
---|
1330 | var nsubseteq = "⊈";
|
---|
1331 | var nsubseteqq = "⫅̸";
|
---|
1332 | var nsucc = "⊁";
|
---|
1333 | var nsucceq = "⪰̸";
|
---|
1334 | var nsup = "⊅";
|
---|
1335 | var nsupE = "⫆̸";
|
---|
1336 | var nsupe = "⊉";
|
---|
1337 | var nsupset = "⊃⃒";
|
---|
1338 | var nsupseteq = "⊉";
|
---|
1339 | var nsupseteqq = "⫆̸";
|
---|
1340 | var ntgl = "≹";
|
---|
1341 | var Ntilde = "Ñ";
|
---|
1342 | var ntilde = "ñ";
|
---|
1343 | var ntlg = "≸";
|
---|
1344 | var ntriangleleft = "⋪";
|
---|
1345 | var ntrianglelefteq = "⋬";
|
---|
1346 | var ntriangleright = "⋫";
|
---|
1347 | var ntrianglerighteq = "⋭";
|
---|
1348 | var Nu = "Ν";
|
---|
1349 | var nu = "ν";
|
---|
1350 | var num = "#";
|
---|
1351 | var numero = "№";
|
---|
1352 | var numsp = " ";
|
---|
1353 | var nvap = "≍⃒";
|
---|
1354 | var nvdash = "⊬";
|
---|
1355 | var nvDash = "⊭";
|
---|
1356 | var nVdash = "⊮";
|
---|
1357 | var nVDash = "⊯";
|
---|
1358 | var nvge = "≥⃒";
|
---|
1359 | var nvgt = ">⃒";
|
---|
1360 | var nvHarr = "⤄";
|
---|
1361 | var nvinfin = "⧞";
|
---|
1362 | var nvlArr = "⤂";
|
---|
1363 | var nvle = "≤⃒";
|
---|
1364 | var nvlt = "<⃒";
|
---|
1365 | var nvltrie = "⊴⃒";
|
---|
1366 | var nvrArr = "⤃";
|
---|
1367 | var nvrtrie = "⊵⃒";
|
---|
1368 | var nvsim = "∼⃒";
|
---|
1369 | var nwarhk = "⤣";
|
---|
1370 | var nwarr = "↖";
|
---|
1371 | var nwArr = "⇖";
|
---|
1372 | var nwarrow = "↖";
|
---|
1373 | var nwnear = "⤧";
|
---|
1374 | var Oacute = "Ó";
|
---|
1375 | var oacute = "ó";
|
---|
1376 | var oast = "⊛";
|
---|
1377 | var Ocirc = "Ô";
|
---|
1378 | var ocirc = "ô";
|
---|
1379 | var ocir = "⊚";
|
---|
1380 | var Ocy = "О";
|
---|
1381 | var ocy = "о";
|
---|
1382 | var odash = "⊝";
|
---|
1383 | var Odblac = "Ő";
|
---|
1384 | var odblac = "ő";
|
---|
1385 | var odiv = "⨸";
|
---|
1386 | var odot = "⊙";
|
---|
1387 | var odsold = "⦼";
|
---|
1388 | var OElig = "Œ";
|
---|
1389 | var oelig = "œ";
|
---|
1390 | var ofcir = "⦿";
|
---|
1391 | var Ofr = "𝔒";
|
---|
1392 | var ofr = "𝔬";
|
---|
1393 | var ogon = "˛";
|
---|
1394 | var Ograve = "Ò";
|
---|
1395 | var ograve = "ò";
|
---|
1396 | var ogt = "⧁";
|
---|
1397 | var ohbar = "⦵";
|
---|
1398 | var ohm = "Ω";
|
---|
1399 | var oint = "∮";
|
---|
1400 | var olarr = "↺";
|
---|
1401 | var olcir = "⦾";
|
---|
1402 | var olcross = "⦻";
|
---|
1403 | var oline = "‾";
|
---|
1404 | var olt = "⧀";
|
---|
1405 | var Omacr = "Ō";
|
---|
1406 | var omacr = "ō";
|
---|
1407 | var Omega = "Ω";
|
---|
1408 | var omega = "ω";
|
---|
1409 | var Omicron = "Ο";
|
---|
1410 | var omicron = "ο";
|
---|
1411 | var omid = "⦶";
|
---|
1412 | var ominus = "⊖";
|
---|
1413 | var Oopf = "𝕆";
|
---|
1414 | var oopf = "𝕠";
|
---|
1415 | var opar = "⦷";
|
---|
1416 | var OpenCurlyDoubleQuote = "“";
|
---|
1417 | var OpenCurlyQuote = "‘";
|
---|
1418 | var operp = "⦹";
|
---|
1419 | var oplus = "⊕";
|
---|
1420 | var orarr = "↻";
|
---|
1421 | var Or = "⩔";
|
---|
1422 | var or = "∨";
|
---|
1423 | var ord = "⩝";
|
---|
1424 | var order = "ℴ";
|
---|
1425 | var orderof = "ℴ";
|
---|
1426 | var ordf = "ª";
|
---|
1427 | var ordm = "º";
|
---|
1428 | var origof = "⊶";
|
---|
1429 | var oror = "⩖";
|
---|
1430 | var orslope = "⩗";
|
---|
1431 | var orv = "⩛";
|
---|
1432 | var oS = "Ⓢ";
|
---|
1433 | var Oscr = "𝒪";
|
---|
1434 | var oscr = "ℴ";
|
---|
1435 | var Oslash = "Ø";
|
---|
1436 | var oslash = "ø";
|
---|
1437 | var osol = "⊘";
|
---|
1438 | var Otilde = "Õ";
|
---|
1439 | var otilde = "õ";
|
---|
1440 | var otimesas = "⨶";
|
---|
1441 | var Otimes = "⨷";
|
---|
1442 | var otimes = "⊗";
|
---|
1443 | var Ouml = "Ö";
|
---|
1444 | var ouml = "ö";
|
---|
1445 | var ovbar = "⌽";
|
---|
1446 | var OverBar = "‾";
|
---|
1447 | var OverBrace = "⏞";
|
---|
1448 | var OverBracket = "⎴";
|
---|
1449 | var OverParenthesis = "⏜";
|
---|
1450 | var para = "¶";
|
---|
1451 | var parallel = "∥";
|
---|
1452 | var par = "∥";
|
---|
1453 | var parsim = "⫳";
|
---|
1454 | var parsl = "⫽";
|
---|
1455 | var part = "∂";
|
---|
1456 | var PartialD = "∂";
|
---|
1457 | var Pcy = "П";
|
---|
1458 | var pcy = "п";
|
---|
1459 | var percnt = "%";
|
---|
1460 | var period = ".";
|
---|
1461 | var permil = "‰";
|
---|
1462 | var perp = "⊥";
|
---|
1463 | var pertenk = "‱";
|
---|
1464 | var Pfr = "𝔓";
|
---|
1465 | var pfr = "𝔭";
|
---|
1466 | var Phi = "Φ";
|
---|
1467 | var phi = "φ";
|
---|
1468 | var phiv = "ϕ";
|
---|
1469 | var phmmat = "ℳ";
|
---|
1470 | var phone = "☎";
|
---|
1471 | var Pi = "Π";
|
---|
1472 | var pi = "π";
|
---|
1473 | var pitchfork = "⋔";
|
---|
1474 | var piv = "ϖ";
|
---|
1475 | var planck = "ℏ";
|
---|
1476 | var planckh = "ℎ";
|
---|
1477 | var plankv = "ℏ";
|
---|
1478 | var plusacir = "⨣";
|
---|
1479 | var plusb = "⊞";
|
---|
1480 | var pluscir = "⨢";
|
---|
1481 | var plus = "+";
|
---|
1482 | var plusdo = "∔";
|
---|
1483 | var plusdu = "⨥";
|
---|
1484 | var pluse = "⩲";
|
---|
1485 | var PlusMinus = "±";
|
---|
1486 | var plusmn = "±";
|
---|
1487 | var plussim = "⨦";
|
---|
1488 | var plustwo = "⨧";
|
---|
1489 | var pm = "±";
|
---|
1490 | var Poincareplane = "ℌ";
|
---|
1491 | var pointint = "⨕";
|
---|
1492 | var popf = "𝕡";
|
---|
1493 | var Popf = "ℙ";
|
---|
1494 | var pound = "£";
|
---|
1495 | var prap = "⪷";
|
---|
1496 | var Pr = "⪻";
|
---|
1497 | var pr = "≺";
|
---|
1498 | var prcue = "≼";
|
---|
1499 | var precapprox = "⪷";
|
---|
1500 | var prec = "≺";
|
---|
1501 | var preccurlyeq = "≼";
|
---|
1502 | var Precedes = "≺";
|
---|
1503 | var PrecedesEqual = "⪯";
|
---|
1504 | var PrecedesSlantEqual = "≼";
|
---|
1505 | var PrecedesTilde = "≾";
|
---|
1506 | var preceq = "⪯";
|
---|
1507 | var precnapprox = "⪹";
|
---|
1508 | var precneqq = "⪵";
|
---|
1509 | var precnsim = "⋨";
|
---|
1510 | var pre = "⪯";
|
---|
1511 | var prE = "⪳";
|
---|
1512 | var precsim = "≾";
|
---|
1513 | var prime = "′";
|
---|
1514 | var Prime = "″";
|
---|
1515 | var primes = "ℙ";
|
---|
1516 | var prnap = "⪹";
|
---|
1517 | var prnE = "⪵";
|
---|
1518 | var prnsim = "⋨";
|
---|
1519 | var prod = "∏";
|
---|
1520 | var Product = "∏";
|
---|
1521 | var profalar = "⌮";
|
---|
1522 | var profline = "⌒";
|
---|
1523 | var profsurf = "⌓";
|
---|
1524 | var prop = "∝";
|
---|
1525 | var Proportional = "∝";
|
---|
1526 | var Proportion = "∷";
|
---|
1527 | var propto = "∝";
|
---|
1528 | var prsim = "≾";
|
---|
1529 | var prurel = "⊰";
|
---|
1530 | var Pscr = "𝒫";
|
---|
1531 | var pscr = "𝓅";
|
---|
1532 | var Psi = "Ψ";
|
---|
1533 | var psi = "ψ";
|
---|
1534 | var puncsp = " ";
|
---|
1535 | var Qfr = "𝔔";
|
---|
1536 | var qfr = "𝔮";
|
---|
1537 | var qint = "⨌";
|
---|
1538 | var qopf = "𝕢";
|
---|
1539 | var Qopf = "ℚ";
|
---|
1540 | var qprime = "⁗";
|
---|
1541 | var Qscr = "𝒬";
|
---|
1542 | var qscr = "𝓆";
|
---|
1543 | var quaternions = "ℍ";
|
---|
1544 | var quatint = "⨖";
|
---|
1545 | var quest = "?";
|
---|
1546 | var questeq = "≟";
|
---|
1547 | var quot = "\"";
|
---|
1548 | var QUOT = "\"";
|
---|
1549 | var rAarr = "⇛";
|
---|
1550 | var race = "∽̱";
|
---|
1551 | var Racute = "Ŕ";
|
---|
1552 | var racute = "ŕ";
|
---|
1553 | var radic = "√";
|
---|
1554 | var raemptyv = "⦳";
|
---|
1555 | var rang = "⟩";
|
---|
1556 | var Rang = "⟫";
|
---|
1557 | var rangd = "⦒";
|
---|
1558 | var range = "⦥";
|
---|
1559 | var rangle = "⟩";
|
---|
1560 | var raquo = "»";
|
---|
1561 | var rarrap = "⥵";
|
---|
1562 | var rarrb = "⇥";
|
---|
1563 | var rarrbfs = "⤠";
|
---|
1564 | var rarrc = "⤳";
|
---|
1565 | var rarr = "→";
|
---|
1566 | var Rarr = "↠";
|
---|
1567 | var rArr = "⇒";
|
---|
1568 | var rarrfs = "⤞";
|
---|
1569 | var rarrhk = "↪";
|
---|
1570 | var rarrlp = "↬";
|
---|
1571 | var rarrpl = "⥅";
|
---|
1572 | var rarrsim = "⥴";
|
---|
1573 | var Rarrtl = "⤖";
|
---|
1574 | var rarrtl = "↣";
|
---|
1575 | var rarrw = "↝";
|
---|
1576 | var ratail = "⤚";
|
---|
1577 | var rAtail = "⤜";
|
---|
1578 | var ratio = "∶";
|
---|
1579 | var rationals = "ℚ";
|
---|
1580 | var rbarr = "⤍";
|
---|
1581 | var rBarr = "⤏";
|
---|
1582 | var RBarr = "⤐";
|
---|
1583 | var rbbrk = "❳";
|
---|
1584 | var rbrace = "}";
|
---|
1585 | var rbrack = "]";
|
---|
1586 | var rbrke = "⦌";
|
---|
1587 | var rbrksld = "⦎";
|
---|
1588 | var rbrkslu = "⦐";
|
---|
1589 | var Rcaron = "Ř";
|
---|
1590 | var rcaron = "ř";
|
---|
1591 | var Rcedil = "Ŗ";
|
---|
1592 | var rcedil = "ŗ";
|
---|
1593 | var rceil = "⌉";
|
---|
1594 | var rcub = "}";
|
---|
1595 | var Rcy = "Р";
|
---|
1596 | var rcy = "р";
|
---|
1597 | var rdca = "⤷";
|
---|
1598 | var rdldhar = "⥩";
|
---|
1599 | var rdquo = "”";
|
---|
1600 | var rdquor = "”";
|
---|
1601 | var rdsh = "↳";
|
---|
1602 | var real = "ℜ";
|
---|
1603 | var realine = "ℛ";
|
---|
1604 | var realpart = "ℜ";
|
---|
1605 | var reals = "ℝ";
|
---|
1606 | var Re = "ℜ";
|
---|
1607 | var rect = "▭";
|
---|
1608 | var reg = "®";
|
---|
1609 | var REG = "®";
|
---|
1610 | var ReverseElement = "∋";
|
---|
1611 | var ReverseEquilibrium = "⇋";
|
---|
1612 | var ReverseUpEquilibrium = "⥯";
|
---|
1613 | var rfisht = "⥽";
|
---|
1614 | var rfloor = "⌋";
|
---|
1615 | var rfr = "𝔯";
|
---|
1616 | var Rfr = "ℜ";
|
---|
1617 | var rHar = "⥤";
|
---|
1618 | var rhard = "⇁";
|
---|
1619 | var rharu = "⇀";
|
---|
1620 | var rharul = "⥬";
|
---|
1621 | var Rho = "Ρ";
|
---|
1622 | var rho = "ρ";
|
---|
1623 | var rhov = "ϱ";
|
---|
1624 | var RightAngleBracket = "⟩";
|
---|
1625 | var RightArrowBar = "⇥";
|
---|
1626 | var rightarrow = "→";
|
---|
1627 | var RightArrow = "→";
|
---|
1628 | var Rightarrow = "⇒";
|
---|
1629 | var RightArrowLeftArrow = "⇄";
|
---|
1630 | var rightarrowtail = "↣";
|
---|
1631 | var RightCeiling = "⌉";
|
---|
1632 | var RightDoubleBracket = "⟧";
|
---|
1633 | var RightDownTeeVector = "⥝";
|
---|
1634 | var RightDownVectorBar = "⥕";
|
---|
1635 | var RightDownVector = "⇂";
|
---|
1636 | var RightFloor = "⌋";
|
---|
1637 | var rightharpoondown = "⇁";
|
---|
1638 | var rightharpoonup = "⇀";
|
---|
1639 | var rightleftarrows = "⇄";
|
---|
1640 | var rightleftharpoons = "⇌";
|
---|
1641 | var rightrightarrows = "⇉";
|
---|
1642 | var rightsquigarrow = "↝";
|
---|
1643 | var RightTeeArrow = "↦";
|
---|
1644 | var RightTee = "⊢";
|
---|
1645 | var RightTeeVector = "⥛";
|
---|
1646 | var rightthreetimes = "⋌";
|
---|
1647 | var RightTriangleBar = "⧐";
|
---|
1648 | var RightTriangle = "⊳";
|
---|
1649 | var RightTriangleEqual = "⊵";
|
---|
1650 | var RightUpDownVector = "⥏";
|
---|
1651 | var RightUpTeeVector = "⥜";
|
---|
1652 | var RightUpVectorBar = "⥔";
|
---|
1653 | var RightUpVector = "↾";
|
---|
1654 | var RightVectorBar = "⥓";
|
---|
1655 | var RightVector = "⇀";
|
---|
1656 | var ring = "˚";
|
---|
1657 | var risingdotseq = "≓";
|
---|
1658 | var rlarr = "⇄";
|
---|
1659 | var rlhar = "⇌";
|
---|
1660 | var rlm = "";
|
---|
1661 | var rmoustache = "⎱";
|
---|
1662 | var rmoust = "⎱";
|
---|
1663 | var rnmid = "⫮";
|
---|
1664 | var roang = "⟭";
|
---|
1665 | var roarr = "⇾";
|
---|
1666 | var robrk = "⟧";
|
---|
1667 | var ropar = "⦆";
|
---|
1668 | var ropf = "𝕣";
|
---|
1669 | var Ropf = "ℝ";
|
---|
1670 | var roplus = "⨮";
|
---|
1671 | var rotimes = "⨵";
|
---|
1672 | var RoundImplies = "⥰";
|
---|
1673 | var rpar = ")";
|
---|
1674 | var rpargt = "⦔";
|
---|
1675 | var rppolint = "⨒";
|
---|
1676 | var rrarr = "⇉";
|
---|
1677 | var Rrightarrow = "⇛";
|
---|
1678 | var rsaquo = "›";
|
---|
1679 | var rscr = "𝓇";
|
---|
1680 | var Rscr = "ℛ";
|
---|
1681 | var rsh = "↱";
|
---|
1682 | var Rsh = "↱";
|
---|
1683 | var rsqb = "]";
|
---|
1684 | var rsquo = "’";
|
---|
1685 | var rsquor = "’";
|
---|
1686 | var rthree = "⋌";
|
---|
1687 | var rtimes = "⋊";
|
---|
1688 | var rtri = "▹";
|
---|
1689 | var rtrie = "⊵";
|
---|
1690 | var rtrif = "▸";
|
---|
1691 | var rtriltri = "⧎";
|
---|
1692 | var RuleDelayed = "⧴";
|
---|
1693 | var ruluhar = "⥨";
|
---|
1694 | var rx = "℞";
|
---|
1695 | var Sacute = "Ś";
|
---|
1696 | var sacute = "ś";
|
---|
1697 | var sbquo = "‚";
|
---|
1698 | var scap = "⪸";
|
---|
1699 | var Scaron = "Š";
|
---|
1700 | var scaron = "š";
|
---|
1701 | var Sc = "⪼";
|
---|
1702 | var sc = "≻";
|
---|
1703 | var sccue = "≽";
|
---|
1704 | var sce = "⪰";
|
---|
1705 | var scE = "⪴";
|
---|
1706 | var Scedil = "Ş";
|
---|
1707 | var scedil = "ş";
|
---|
1708 | var Scirc = "Ŝ";
|
---|
1709 | var scirc = "ŝ";
|
---|
1710 | var scnap = "⪺";
|
---|
1711 | var scnE = "⪶";
|
---|
1712 | var scnsim = "⋩";
|
---|
1713 | var scpolint = "⨓";
|
---|
1714 | var scsim = "≿";
|
---|
1715 | var Scy = "С";
|
---|
1716 | var scy = "с";
|
---|
1717 | var sdotb = "⊡";
|
---|
1718 | var sdot = "⋅";
|
---|
1719 | var sdote = "⩦";
|
---|
1720 | var searhk = "⤥";
|
---|
1721 | var searr = "↘";
|
---|
1722 | var seArr = "⇘";
|
---|
1723 | var searrow = "↘";
|
---|
1724 | var sect = "§";
|
---|
1725 | var semi = ";";
|
---|
1726 | var seswar = "⤩";
|
---|
1727 | var setminus = "∖";
|
---|
1728 | var setmn = "∖";
|
---|
1729 | var sext = "✶";
|
---|
1730 | var Sfr = "𝔖";
|
---|
1731 | var sfr = "𝔰";
|
---|
1732 | var sfrown = "⌢";
|
---|
1733 | var sharp = "♯";
|
---|
1734 | var SHCHcy = "Щ";
|
---|
1735 | var shchcy = "щ";
|
---|
1736 | var SHcy = "Ш";
|
---|
1737 | var shcy = "ш";
|
---|
1738 | var ShortDownArrow = "↓";
|
---|
1739 | var ShortLeftArrow = "←";
|
---|
1740 | var shortmid = "∣";
|
---|
1741 | var shortparallel = "∥";
|
---|
1742 | var ShortRightArrow = "→";
|
---|
1743 | var ShortUpArrow = "↑";
|
---|
1744 | var shy = "";
|
---|
1745 | var Sigma = "Σ";
|
---|
1746 | var sigma = "σ";
|
---|
1747 | var sigmaf = "ς";
|
---|
1748 | var sigmav = "ς";
|
---|
1749 | var sim = "∼";
|
---|
1750 | var simdot = "⩪";
|
---|
1751 | var sime = "≃";
|
---|
1752 | var simeq = "≃";
|
---|
1753 | var simg = "⪞";
|
---|
1754 | var simgE = "⪠";
|
---|
1755 | var siml = "⪝";
|
---|
1756 | var simlE = "⪟";
|
---|
1757 | var simne = "≆";
|
---|
1758 | var simplus = "⨤";
|
---|
1759 | var simrarr = "⥲";
|
---|
1760 | var slarr = "←";
|
---|
1761 | var SmallCircle = "∘";
|
---|
1762 | var smallsetminus = "∖";
|
---|
1763 | var smashp = "⨳";
|
---|
1764 | var smeparsl = "⧤";
|
---|
1765 | var smid = "∣";
|
---|
1766 | var smile = "⌣";
|
---|
1767 | var smt = "⪪";
|
---|
1768 | var smte = "⪬";
|
---|
1769 | var smtes = "⪬︀";
|
---|
1770 | var SOFTcy = "Ь";
|
---|
1771 | var softcy = "ь";
|
---|
1772 | var solbar = "⌿";
|
---|
1773 | var solb = "⧄";
|
---|
1774 | var sol = "/";
|
---|
1775 | var Sopf = "𝕊";
|
---|
1776 | var sopf = "𝕤";
|
---|
1777 | var spades = "♠";
|
---|
1778 | var spadesuit = "♠";
|
---|
1779 | var spar = "∥";
|
---|
1780 | var sqcap = "⊓";
|
---|
1781 | var sqcaps = "⊓︀";
|
---|
1782 | var sqcup = "⊔";
|
---|
1783 | var sqcups = "⊔︀";
|
---|
1784 | var Sqrt = "√";
|
---|
1785 | var sqsub = "⊏";
|
---|
1786 | var sqsube = "⊑";
|
---|
1787 | var sqsubset = "⊏";
|
---|
1788 | var sqsubseteq = "⊑";
|
---|
1789 | var sqsup = "⊐";
|
---|
1790 | var sqsupe = "⊒";
|
---|
1791 | var sqsupset = "⊐";
|
---|
1792 | var sqsupseteq = "⊒";
|
---|
1793 | var square = "□";
|
---|
1794 | var Square = "□";
|
---|
1795 | var SquareIntersection = "⊓";
|
---|
1796 | var SquareSubset = "⊏";
|
---|
1797 | var SquareSubsetEqual = "⊑";
|
---|
1798 | var SquareSuperset = "⊐";
|
---|
1799 | var SquareSupersetEqual = "⊒";
|
---|
1800 | var SquareUnion = "⊔";
|
---|
1801 | var squarf = "▪";
|
---|
1802 | var squ = "□";
|
---|
1803 | var squf = "▪";
|
---|
1804 | var srarr = "→";
|
---|
1805 | var Sscr = "𝒮";
|
---|
1806 | var sscr = "𝓈";
|
---|
1807 | var ssetmn = "∖";
|
---|
1808 | var ssmile = "⌣";
|
---|
1809 | var sstarf = "⋆";
|
---|
1810 | var Star = "⋆";
|
---|
1811 | var star = "☆";
|
---|
1812 | var starf = "★";
|
---|
1813 | var straightepsilon = "ϵ";
|
---|
1814 | var straightphi = "ϕ";
|
---|
1815 | var strns = "¯";
|
---|
1816 | var sub = "⊂";
|
---|
1817 | var Sub = "⋐";
|
---|
1818 | var subdot = "⪽";
|
---|
1819 | var subE = "⫅";
|
---|
1820 | var sube = "⊆";
|
---|
1821 | var subedot = "⫃";
|
---|
1822 | var submult = "⫁";
|
---|
1823 | var subnE = "⫋";
|
---|
1824 | var subne = "⊊";
|
---|
1825 | var subplus = "⪿";
|
---|
1826 | var subrarr = "⥹";
|
---|
1827 | var subset = "⊂";
|
---|
1828 | var Subset = "⋐";
|
---|
1829 | var subseteq = "⊆";
|
---|
1830 | var subseteqq = "⫅";
|
---|
1831 | var SubsetEqual = "⊆";
|
---|
1832 | var subsetneq = "⊊";
|
---|
1833 | var subsetneqq = "⫋";
|
---|
1834 | var subsim = "⫇";
|
---|
1835 | var subsub = "⫕";
|
---|
1836 | var subsup = "⫓";
|
---|
1837 | var succapprox = "⪸";
|
---|
1838 | var succ = "≻";
|
---|
1839 | var succcurlyeq = "≽";
|
---|
1840 | var Succeeds = "≻";
|
---|
1841 | var SucceedsEqual = "⪰";
|
---|
1842 | var SucceedsSlantEqual = "≽";
|
---|
1843 | var SucceedsTilde = "≿";
|
---|
1844 | var succeq = "⪰";
|
---|
1845 | var succnapprox = "⪺";
|
---|
1846 | var succneqq = "⪶";
|
---|
1847 | var succnsim = "⋩";
|
---|
1848 | var succsim = "≿";
|
---|
1849 | var SuchThat = "∋";
|
---|
1850 | var sum = "∑";
|
---|
1851 | var Sum = "∑";
|
---|
1852 | var sung = "♪";
|
---|
1853 | var sup1 = "¹";
|
---|
1854 | var sup2 = "²";
|
---|
1855 | var sup3 = "³";
|
---|
1856 | var sup = "⊃";
|
---|
1857 | var Sup = "⋑";
|
---|
1858 | var supdot = "⪾";
|
---|
1859 | var supdsub = "⫘";
|
---|
1860 | var supE = "⫆";
|
---|
1861 | var supe = "⊇";
|
---|
1862 | var supedot = "⫄";
|
---|
1863 | var Superset = "⊃";
|
---|
1864 | var SupersetEqual = "⊇";
|
---|
1865 | var suphsol = "⟉";
|
---|
1866 | var suphsub = "⫗";
|
---|
1867 | var suplarr = "⥻";
|
---|
1868 | var supmult = "⫂";
|
---|
1869 | var supnE = "⫌";
|
---|
1870 | var supne = "⊋";
|
---|
1871 | var supplus = "⫀";
|
---|
1872 | var supset = "⊃";
|
---|
1873 | var Supset = "⋑";
|
---|
1874 | var supseteq = "⊇";
|
---|
1875 | var supseteqq = "⫆";
|
---|
1876 | var supsetneq = "⊋";
|
---|
1877 | var supsetneqq = "⫌";
|
---|
1878 | var supsim = "⫈";
|
---|
1879 | var supsub = "⫔";
|
---|
1880 | var supsup = "⫖";
|
---|
1881 | var swarhk = "⤦";
|
---|
1882 | var swarr = "↙";
|
---|
1883 | var swArr = "⇙";
|
---|
1884 | var swarrow = "↙";
|
---|
1885 | var swnwar = "⤪";
|
---|
1886 | var szlig = "ß";
|
---|
1887 | var Tab = "\t";
|
---|
1888 | var target = "⌖";
|
---|
1889 | var Tau = "Τ";
|
---|
1890 | var tau = "τ";
|
---|
1891 | var tbrk = "⎴";
|
---|
1892 | var Tcaron = "Ť";
|
---|
1893 | var tcaron = "ť";
|
---|
1894 | var Tcedil = "Ţ";
|
---|
1895 | var tcedil = "ţ";
|
---|
1896 | var Tcy = "Т";
|
---|
1897 | var tcy = "т";
|
---|
1898 | var tdot = "⃛";
|
---|
1899 | var telrec = "⌕";
|
---|
1900 | var Tfr = "𝔗";
|
---|
1901 | var tfr = "𝔱";
|
---|
1902 | var there4 = "∴";
|
---|
1903 | var therefore = "∴";
|
---|
1904 | var Therefore = "∴";
|
---|
1905 | var Theta = "Θ";
|
---|
1906 | var theta = "θ";
|
---|
1907 | var thetasym = "ϑ";
|
---|
1908 | var thetav = "ϑ";
|
---|
1909 | var thickapprox = "≈";
|
---|
1910 | var thicksim = "∼";
|
---|
1911 | var ThickSpace = " ";
|
---|
1912 | var ThinSpace = " ";
|
---|
1913 | var thinsp = " ";
|
---|
1914 | var thkap = "≈";
|
---|
1915 | var thksim = "∼";
|
---|
1916 | var THORN = "Þ";
|
---|
1917 | var thorn = "þ";
|
---|
1918 | var tilde = "˜";
|
---|
1919 | var Tilde = "∼";
|
---|
1920 | var TildeEqual = "≃";
|
---|
1921 | var TildeFullEqual = "≅";
|
---|
1922 | var TildeTilde = "≈";
|
---|
1923 | var timesbar = "⨱";
|
---|
1924 | var timesb = "⊠";
|
---|
1925 | var times = "×";
|
---|
1926 | var timesd = "⨰";
|
---|
1927 | var tint = "∭";
|
---|
1928 | var toea = "⤨";
|
---|
1929 | var topbot = "⌶";
|
---|
1930 | var topcir = "⫱";
|
---|
1931 | var top = "⊤";
|
---|
1932 | var Topf = "𝕋";
|
---|
1933 | var topf = "𝕥";
|
---|
1934 | var topfork = "⫚";
|
---|
1935 | var tosa = "⤩";
|
---|
1936 | var tprime = "‴";
|
---|
1937 | var trade = "™";
|
---|
1938 | var TRADE = "™";
|
---|
1939 | var triangle = "▵";
|
---|
1940 | var triangledown = "▿";
|
---|
1941 | var triangleleft = "◃";
|
---|
1942 | var trianglelefteq = "⊴";
|
---|
1943 | var triangleq = "≜";
|
---|
1944 | var triangleright = "▹";
|
---|
1945 | var trianglerighteq = "⊵";
|
---|
1946 | var tridot = "◬";
|
---|
1947 | var trie = "≜";
|
---|
1948 | var triminus = "⨺";
|
---|
1949 | var TripleDot = "⃛";
|
---|
1950 | var triplus = "⨹";
|
---|
1951 | var trisb = "⧍";
|
---|
1952 | var tritime = "⨻";
|
---|
1953 | var trpezium = "⏢";
|
---|
1954 | var Tscr = "𝒯";
|
---|
1955 | var tscr = "𝓉";
|
---|
1956 | var TScy = "Ц";
|
---|
1957 | var tscy = "ц";
|
---|
1958 | var TSHcy = "Ћ";
|
---|
1959 | var tshcy = "ћ";
|
---|
1960 | var Tstrok = "Ŧ";
|
---|
1961 | var tstrok = "ŧ";
|
---|
1962 | var twixt = "≬";
|
---|
1963 | var twoheadleftarrow = "↞";
|
---|
1964 | var twoheadrightarrow = "↠";
|
---|
1965 | var Uacute = "Ú";
|
---|
1966 | var uacute = "ú";
|
---|
1967 | var uarr = "↑";
|
---|
1968 | var Uarr = "↟";
|
---|
1969 | var uArr = "⇑";
|
---|
1970 | var Uarrocir = "⥉";
|
---|
1971 | var Ubrcy = "Ў";
|
---|
1972 | var ubrcy = "ў";
|
---|
1973 | var Ubreve = "Ŭ";
|
---|
1974 | var ubreve = "ŭ";
|
---|
1975 | var Ucirc = "Û";
|
---|
1976 | var ucirc = "û";
|
---|
1977 | var Ucy = "У";
|
---|
1978 | var ucy = "у";
|
---|
1979 | var udarr = "⇅";
|
---|
1980 | var Udblac = "Ű";
|
---|
1981 | var udblac = "ű";
|
---|
1982 | var udhar = "⥮";
|
---|
1983 | var ufisht = "⥾";
|
---|
1984 | var Ufr = "𝔘";
|
---|
1985 | var ufr = "𝔲";
|
---|
1986 | var Ugrave = "Ù";
|
---|
1987 | var ugrave = "ù";
|
---|
1988 | var uHar = "⥣";
|
---|
1989 | var uharl = "↿";
|
---|
1990 | var uharr = "↾";
|
---|
1991 | var uhblk = "▀";
|
---|
1992 | var ulcorn = "⌜";
|
---|
1993 | var ulcorner = "⌜";
|
---|
1994 | var ulcrop = "⌏";
|
---|
1995 | var ultri = "◸";
|
---|
1996 | var Umacr = "Ū";
|
---|
1997 | var umacr = "ū";
|
---|
1998 | var uml = "¨";
|
---|
1999 | var UnderBar = "_";
|
---|
2000 | var UnderBrace = "⏟";
|
---|
2001 | var UnderBracket = "⎵";
|
---|
2002 | var UnderParenthesis = "⏝";
|
---|
2003 | var Union = "⋃";
|
---|
2004 | var UnionPlus = "⊎";
|
---|
2005 | var Uogon = "Ų";
|
---|
2006 | var uogon = "ų";
|
---|
2007 | var Uopf = "𝕌";
|
---|
2008 | var uopf = "𝕦";
|
---|
2009 | var UpArrowBar = "⤒";
|
---|
2010 | var uparrow = "↑";
|
---|
2011 | var UpArrow = "↑";
|
---|
2012 | var Uparrow = "⇑";
|
---|
2013 | var UpArrowDownArrow = "⇅";
|
---|
2014 | var updownarrow = "↕";
|
---|
2015 | var UpDownArrow = "↕";
|
---|
2016 | var Updownarrow = "⇕";
|
---|
2017 | var UpEquilibrium = "⥮";
|
---|
2018 | var upharpoonleft = "↿";
|
---|
2019 | var upharpoonright = "↾";
|
---|
2020 | var uplus = "⊎";
|
---|
2021 | var UpperLeftArrow = "↖";
|
---|
2022 | var UpperRightArrow = "↗";
|
---|
2023 | var upsi = "υ";
|
---|
2024 | var Upsi = "ϒ";
|
---|
2025 | var upsih = "ϒ";
|
---|
2026 | var Upsilon = "Υ";
|
---|
2027 | var upsilon = "υ";
|
---|
2028 | var UpTeeArrow = "↥";
|
---|
2029 | var UpTee = "⊥";
|
---|
2030 | var upuparrows = "⇈";
|
---|
2031 | var urcorn = "⌝";
|
---|
2032 | var urcorner = "⌝";
|
---|
2033 | var urcrop = "⌎";
|
---|
2034 | var Uring = "Ů";
|
---|
2035 | var uring = "ů";
|
---|
2036 | var urtri = "◹";
|
---|
2037 | var Uscr = "𝒰";
|
---|
2038 | var uscr = "𝓊";
|
---|
2039 | var utdot = "⋰";
|
---|
2040 | var Utilde = "Ũ";
|
---|
2041 | var utilde = "ũ";
|
---|
2042 | var utri = "▵";
|
---|
2043 | var utrif = "▴";
|
---|
2044 | var uuarr = "⇈";
|
---|
2045 | var Uuml = "Ü";
|
---|
2046 | var uuml = "ü";
|
---|
2047 | var uwangle = "⦧";
|
---|
2048 | var vangrt = "⦜";
|
---|
2049 | var varepsilon = "ϵ";
|
---|
2050 | var varkappa = "ϰ";
|
---|
2051 | var varnothing = "∅";
|
---|
2052 | var varphi = "ϕ";
|
---|
2053 | var varpi = "ϖ";
|
---|
2054 | var varpropto = "∝";
|
---|
2055 | var varr = "↕";
|
---|
2056 | var vArr = "⇕";
|
---|
2057 | var varrho = "ϱ";
|
---|
2058 | var varsigma = "ς";
|
---|
2059 | var varsubsetneq = "⊊︀";
|
---|
2060 | var varsubsetneqq = "⫋︀";
|
---|
2061 | var varsupsetneq = "⊋︀";
|
---|
2062 | var varsupsetneqq = "⫌︀";
|
---|
2063 | var vartheta = "ϑ";
|
---|
2064 | var vartriangleleft = "⊲";
|
---|
2065 | var vartriangleright = "⊳";
|
---|
2066 | var vBar = "⫨";
|
---|
2067 | var Vbar = "⫫";
|
---|
2068 | var vBarv = "⫩";
|
---|
2069 | var Vcy = "В";
|
---|
2070 | var vcy = "в";
|
---|
2071 | var vdash = "⊢";
|
---|
2072 | var vDash = "⊨";
|
---|
2073 | var Vdash = "⊩";
|
---|
2074 | var VDash = "⊫";
|
---|
2075 | var Vdashl = "⫦";
|
---|
2076 | var veebar = "⊻";
|
---|
2077 | var vee = "∨";
|
---|
2078 | var Vee = "⋁";
|
---|
2079 | var veeeq = "≚";
|
---|
2080 | var vellip = "⋮";
|
---|
2081 | var verbar = "|";
|
---|
2082 | var Verbar = "‖";
|
---|
2083 | var vert = "|";
|
---|
2084 | var Vert = "‖";
|
---|
2085 | var VerticalBar = "∣";
|
---|
2086 | var VerticalLine = "|";
|
---|
2087 | var VerticalSeparator = "❘";
|
---|
2088 | var VerticalTilde = "≀";
|
---|
2089 | var VeryThinSpace = " ";
|
---|
2090 | var Vfr = "𝔙";
|
---|
2091 | var vfr = "𝔳";
|
---|
2092 | var vltri = "⊲";
|
---|
2093 | var vnsub = "⊂⃒";
|
---|
2094 | var vnsup = "⊃⃒";
|
---|
2095 | var Vopf = "𝕍";
|
---|
2096 | var vopf = "𝕧";
|
---|
2097 | var vprop = "∝";
|
---|
2098 | var vrtri = "⊳";
|
---|
2099 | var Vscr = "𝒱";
|
---|
2100 | var vscr = "𝓋";
|
---|
2101 | var vsubnE = "⫋︀";
|
---|
2102 | var vsubne = "⊊︀";
|
---|
2103 | var vsupnE = "⫌︀";
|
---|
2104 | var vsupne = "⊋︀";
|
---|
2105 | var Vvdash = "⊪";
|
---|
2106 | var vzigzag = "⦚";
|
---|
2107 | var Wcirc = "Ŵ";
|
---|
2108 | var wcirc = "ŵ";
|
---|
2109 | var wedbar = "⩟";
|
---|
2110 | var wedge = "∧";
|
---|
2111 | var Wedge = "⋀";
|
---|
2112 | var wedgeq = "≙";
|
---|
2113 | var weierp = "℘";
|
---|
2114 | var Wfr = "𝔚";
|
---|
2115 | var wfr = "𝔴";
|
---|
2116 | var Wopf = "𝕎";
|
---|
2117 | var wopf = "𝕨";
|
---|
2118 | var wp = "℘";
|
---|
2119 | var wr = "≀";
|
---|
2120 | var wreath = "≀";
|
---|
2121 | var Wscr = "𝒲";
|
---|
2122 | var wscr = "𝓌";
|
---|
2123 | var xcap = "⋂";
|
---|
2124 | var xcirc = "◯";
|
---|
2125 | var xcup = "⋃";
|
---|
2126 | var xdtri = "▽";
|
---|
2127 | var Xfr = "𝔛";
|
---|
2128 | var xfr = "𝔵";
|
---|
2129 | var xharr = "⟷";
|
---|
2130 | var xhArr = "⟺";
|
---|
2131 | var Xi = "Ξ";
|
---|
2132 | var xi = "ξ";
|
---|
2133 | var xlarr = "⟵";
|
---|
2134 | var xlArr = "⟸";
|
---|
2135 | var xmap = "⟼";
|
---|
2136 | var xnis = "⋻";
|
---|
2137 | var xodot = "⨀";
|
---|
2138 | var Xopf = "𝕏";
|
---|
2139 | var xopf = "𝕩";
|
---|
2140 | var xoplus = "⨁";
|
---|
2141 | var xotime = "⨂";
|
---|
2142 | var xrarr = "⟶";
|
---|
2143 | var xrArr = "⟹";
|
---|
2144 | var Xscr = "𝒳";
|
---|
2145 | var xscr = "𝓍";
|
---|
2146 | var xsqcup = "⨆";
|
---|
2147 | var xuplus = "⨄";
|
---|
2148 | var xutri = "△";
|
---|
2149 | var xvee = "⋁";
|
---|
2150 | var xwedge = "⋀";
|
---|
2151 | var Yacute = "Ý";
|
---|
2152 | var yacute = "ý";
|
---|
2153 | var YAcy = "Я";
|
---|
2154 | var yacy = "я";
|
---|
2155 | var Ycirc = "Ŷ";
|
---|
2156 | var ycirc = "ŷ";
|
---|
2157 | var Ycy = "Ы";
|
---|
2158 | var ycy = "ы";
|
---|
2159 | var yen = "¥";
|
---|
2160 | var Yfr = "𝔜";
|
---|
2161 | var yfr = "𝔶";
|
---|
2162 | var YIcy = "Ї";
|
---|
2163 | var yicy = "ї";
|
---|
2164 | var Yopf = "𝕐";
|
---|
2165 | var yopf = "𝕪";
|
---|
2166 | var Yscr = "𝒴";
|
---|
2167 | var yscr = "𝓎";
|
---|
2168 | var YUcy = "Ю";
|
---|
2169 | var yucy = "ю";
|
---|
2170 | var yuml = "ÿ";
|
---|
2171 | var Yuml = "Ÿ";
|
---|
2172 | var Zacute = "Ź";
|
---|
2173 | var zacute = "ź";
|
---|
2174 | var Zcaron = "Ž";
|
---|
2175 | var zcaron = "ž";
|
---|
2176 | var Zcy = "З";
|
---|
2177 | var zcy = "з";
|
---|
2178 | var Zdot = "Ż";
|
---|
2179 | var zdot = "ż";
|
---|
2180 | var zeetrf = "ℨ";
|
---|
2181 | var ZeroWidthSpace = "";
|
---|
2182 | var Zeta = "Ζ";
|
---|
2183 | var zeta = "ζ";
|
---|
2184 | var zfr = "𝔷";
|
---|
2185 | var Zfr = "ℨ";
|
---|
2186 | var ZHcy = "Ж";
|
---|
2187 | var zhcy = "ж";
|
---|
2188 | var zigrarr = "⇝";
|
---|
2189 | var zopf = "𝕫";
|
---|
2190 | var Zopf = "ℤ";
|
---|
2191 | var Zscr = "𝒵";
|
---|
2192 | var zscr = "𝓏";
|
---|
2193 | var zwj = "";
|
---|
2194 | var zwnj = "";
|
---|
2195 | var entities = {
|
---|
2196 | Aacute: Aacute,
|
---|
2197 | aacute: aacute,
|
---|
2198 | Abreve: Abreve,
|
---|
2199 | abreve: abreve,
|
---|
2200 | ac: ac,
|
---|
2201 | acd: acd,
|
---|
2202 | acE: acE,
|
---|
2203 | Acirc: Acirc,
|
---|
2204 | acirc: acirc,
|
---|
2205 | acute: acute,
|
---|
2206 | Acy: Acy,
|
---|
2207 | acy: acy,
|
---|
2208 | AElig: AElig,
|
---|
2209 | aelig: aelig,
|
---|
2210 | af: af,
|
---|
2211 | Afr: Afr,
|
---|
2212 | afr: afr,
|
---|
2213 | Agrave: Agrave,
|
---|
2214 | agrave: agrave,
|
---|
2215 | alefsym: alefsym,
|
---|
2216 | aleph: aleph,
|
---|
2217 | Alpha: Alpha,
|
---|
2218 | alpha: alpha,
|
---|
2219 | Amacr: Amacr,
|
---|
2220 | amacr: amacr,
|
---|
2221 | amalg: amalg,
|
---|
2222 | amp: amp,
|
---|
2223 | AMP: AMP,
|
---|
2224 | andand: andand,
|
---|
2225 | And: And,
|
---|
2226 | and: and,
|
---|
2227 | andd: andd,
|
---|
2228 | andslope: andslope,
|
---|
2229 | andv: andv,
|
---|
2230 | ang: ang,
|
---|
2231 | ange: ange,
|
---|
2232 | angle: angle,
|
---|
2233 | angmsdaa: angmsdaa,
|
---|
2234 | angmsdab: angmsdab,
|
---|
2235 | angmsdac: angmsdac,
|
---|
2236 | angmsdad: angmsdad,
|
---|
2237 | angmsdae: angmsdae,
|
---|
2238 | angmsdaf: angmsdaf,
|
---|
2239 | angmsdag: angmsdag,
|
---|
2240 | angmsdah: angmsdah,
|
---|
2241 | angmsd: angmsd,
|
---|
2242 | angrt: angrt,
|
---|
2243 | angrtvb: angrtvb,
|
---|
2244 | angrtvbd: angrtvbd,
|
---|
2245 | angsph: angsph,
|
---|
2246 | angst: angst,
|
---|
2247 | angzarr: angzarr,
|
---|
2248 | Aogon: Aogon,
|
---|
2249 | aogon: aogon,
|
---|
2250 | Aopf: Aopf,
|
---|
2251 | aopf: aopf,
|
---|
2252 | apacir: apacir,
|
---|
2253 | ap: ap,
|
---|
2254 | apE: apE,
|
---|
2255 | ape: ape,
|
---|
2256 | apid: apid,
|
---|
2257 | apos: apos,
|
---|
2258 | ApplyFunction: ApplyFunction,
|
---|
2259 | approx: approx,
|
---|
2260 | approxeq: approxeq,
|
---|
2261 | Aring: Aring,
|
---|
2262 | aring: aring,
|
---|
2263 | Ascr: Ascr,
|
---|
2264 | ascr: ascr,
|
---|
2265 | Assign: Assign,
|
---|
2266 | ast: ast,
|
---|
2267 | asymp: asymp,
|
---|
2268 | asympeq: asympeq,
|
---|
2269 | Atilde: Atilde,
|
---|
2270 | atilde: atilde,
|
---|
2271 | Auml: Auml,
|
---|
2272 | auml: auml,
|
---|
2273 | awconint: awconint,
|
---|
2274 | awint: awint,
|
---|
2275 | backcong: backcong,
|
---|
2276 | backepsilon: backepsilon,
|
---|
2277 | backprime: backprime,
|
---|
2278 | backsim: backsim,
|
---|
2279 | backsimeq: backsimeq,
|
---|
2280 | Backslash: Backslash,
|
---|
2281 | Barv: Barv,
|
---|
2282 | barvee: barvee,
|
---|
2283 | barwed: barwed,
|
---|
2284 | Barwed: Barwed,
|
---|
2285 | barwedge: barwedge,
|
---|
2286 | bbrk: bbrk,
|
---|
2287 | bbrktbrk: bbrktbrk,
|
---|
2288 | bcong: bcong,
|
---|
2289 | Bcy: Bcy,
|
---|
2290 | bcy: bcy,
|
---|
2291 | bdquo: bdquo,
|
---|
2292 | becaus: becaus,
|
---|
2293 | because: because,
|
---|
2294 | Because: Because,
|
---|
2295 | bemptyv: bemptyv,
|
---|
2296 | bepsi: bepsi,
|
---|
2297 | bernou: bernou,
|
---|
2298 | Bernoullis: Bernoullis,
|
---|
2299 | Beta: Beta,
|
---|
2300 | beta: beta,
|
---|
2301 | beth: beth,
|
---|
2302 | between: between,
|
---|
2303 | Bfr: Bfr,
|
---|
2304 | bfr: bfr,
|
---|
2305 | bigcap: bigcap,
|
---|
2306 | bigcirc: bigcirc,
|
---|
2307 | bigcup: bigcup,
|
---|
2308 | bigodot: bigodot,
|
---|
2309 | bigoplus: bigoplus,
|
---|
2310 | bigotimes: bigotimes,
|
---|
2311 | bigsqcup: bigsqcup,
|
---|
2312 | bigstar: bigstar,
|
---|
2313 | bigtriangledown: bigtriangledown,
|
---|
2314 | bigtriangleup: bigtriangleup,
|
---|
2315 | biguplus: biguplus,
|
---|
2316 | bigvee: bigvee,
|
---|
2317 | bigwedge: bigwedge,
|
---|
2318 | bkarow: bkarow,
|
---|
2319 | blacklozenge: blacklozenge,
|
---|
2320 | blacksquare: blacksquare,
|
---|
2321 | blacktriangle: blacktriangle,
|
---|
2322 | blacktriangledown: blacktriangledown,
|
---|
2323 | blacktriangleleft: blacktriangleleft,
|
---|
2324 | blacktriangleright: blacktriangleright,
|
---|
2325 | blank: blank,
|
---|
2326 | blk12: blk12,
|
---|
2327 | blk14: blk14,
|
---|
2328 | blk34: blk34,
|
---|
2329 | block: block,
|
---|
2330 | bne: bne,
|
---|
2331 | bnequiv: bnequiv,
|
---|
2332 | bNot: bNot,
|
---|
2333 | bnot: bnot,
|
---|
2334 | Bopf: Bopf,
|
---|
2335 | bopf: bopf,
|
---|
2336 | bot: bot,
|
---|
2337 | bottom: bottom,
|
---|
2338 | bowtie: bowtie,
|
---|
2339 | boxbox: boxbox,
|
---|
2340 | boxdl: boxdl,
|
---|
2341 | boxdL: boxdL,
|
---|
2342 | boxDl: boxDl,
|
---|
2343 | boxDL: boxDL,
|
---|
2344 | boxdr: boxdr,
|
---|
2345 | boxdR: boxdR,
|
---|
2346 | boxDr: boxDr,
|
---|
2347 | boxDR: boxDR,
|
---|
2348 | boxh: boxh,
|
---|
2349 | boxH: boxH,
|
---|
2350 | boxhd: boxhd,
|
---|
2351 | boxHd: boxHd,
|
---|
2352 | boxhD: boxhD,
|
---|
2353 | boxHD: boxHD,
|
---|
2354 | boxhu: boxhu,
|
---|
2355 | boxHu: boxHu,
|
---|
2356 | boxhU: boxhU,
|
---|
2357 | boxHU: boxHU,
|
---|
2358 | boxminus: boxminus,
|
---|
2359 | boxplus: boxplus,
|
---|
2360 | boxtimes: boxtimes,
|
---|
2361 | boxul: boxul,
|
---|
2362 | boxuL: boxuL,
|
---|
2363 | boxUl: boxUl,
|
---|
2364 | boxUL: boxUL,
|
---|
2365 | boxur: boxur,
|
---|
2366 | boxuR: boxuR,
|
---|
2367 | boxUr: boxUr,
|
---|
2368 | boxUR: boxUR,
|
---|
2369 | boxv: boxv,
|
---|
2370 | boxV: boxV,
|
---|
2371 | boxvh: boxvh,
|
---|
2372 | boxvH: boxvH,
|
---|
2373 | boxVh: boxVh,
|
---|
2374 | boxVH: boxVH,
|
---|
2375 | boxvl: boxvl,
|
---|
2376 | boxvL: boxvL,
|
---|
2377 | boxVl: boxVl,
|
---|
2378 | boxVL: boxVL,
|
---|
2379 | boxvr: boxvr,
|
---|
2380 | boxvR: boxvR,
|
---|
2381 | boxVr: boxVr,
|
---|
2382 | boxVR: boxVR,
|
---|
2383 | bprime: bprime,
|
---|
2384 | breve: breve,
|
---|
2385 | Breve: Breve,
|
---|
2386 | brvbar: brvbar,
|
---|
2387 | bscr: bscr,
|
---|
2388 | Bscr: Bscr,
|
---|
2389 | bsemi: bsemi,
|
---|
2390 | bsim: bsim,
|
---|
2391 | bsime: bsime,
|
---|
2392 | bsolb: bsolb,
|
---|
2393 | bsol: bsol,
|
---|
2394 | bsolhsub: bsolhsub,
|
---|
2395 | bull: bull,
|
---|
2396 | bullet: bullet,
|
---|
2397 | bump: bump,
|
---|
2398 | bumpE: bumpE,
|
---|
2399 | bumpe: bumpe,
|
---|
2400 | Bumpeq: Bumpeq,
|
---|
2401 | bumpeq: bumpeq,
|
---|
2402 | Cacute: Cacute,
|
---|
2403 | cacute: cacute,
|
---|
2404 | capand: capand,
|
---|
2405 | capbrcup: capbrcup,
|
---|
2406 | capcap: capcap,
|
---|
2407 | cap: cap,
|
---|
2408 | Cap: Cap,
|
---|
2409 | capcup: capcup,
|
---|
2410 | capdot: capdot,
|
---|
2411 | CapitalDifferentialD: CapitalDifferentialD,
|
---|
2412 | caps: caps,
|
---|
2413 | caret: caret,
|
---|
2414 | caron: caron,
|
---|
2415 | Cayleys: Cayleys,
|
---|
2416 | ccaps: ccaps,
|
---|
2417 | Ccaron: Ccaron,
|
---|
2418 | ccaron: ccaron,
|
---|
2419 | Ccedil: Ccedil,
|
---|
2420 | ccedil: ccedil,
|
---|
2421 | Ccirc: Ccirc,
|
---|
2422 | ccirc: ccirc,
|
---|
2423 | Cconint: Cconint,
|
---|
2424 | ccups: ccups,
|
---|
2425 | ccupssm: ccupssm,
|
---|
2426 | Cdot: Cdot,
|
---|
2427 | cdot: cdot,
|
---|
2428 | cedil: cedil,
|
---|
2429 | Cedilla: Cedilla,
|
---|
2430 | cemptyv: cemptyv,
|
---|
2431 | cent: cent,
|
---|
2432 | centerdot: centerdot,
|
---|
2433 | CenterDot: CenterDot,
|
---|
2434 | cfr: cfr,
|
---|
2435 | Cfr: Cfr,
|
---|
2436 | CHcy: CHcy,
|
---|
2437 | chcy: chcy,
|
---|
2438 | check: check,
|
---|
2439 | checkmark: checkmark,
|
---|
2440 | Chi: Chi,
|
---|
2441 | chi: chi,
|
---|
2442 | circ: circ,
|
---|
2443 | circeq: circeq,
|
---|
2444 | circlearrowleft: circlearrowleft,
|
---|
2445 | circlearrowright: circlearrowright,
|
---|
2446 | circledast: circledast,
|
---|
2447 | circledcirc: circledcirc,
|
---|
2448 | circleddash: circleddash,
|
---|
2449 | CircleDot: CircleDot,
|
---|
2450 | circledR: circledR,
|
---|
2451 | circledS: circledS,
|
---|
2452 | CircleMinus: CircleMinus,
|
---|
2453 | CirclePlus: CirclePlus,
|
---|
2454 | CircleTimes: CircleTimes,
|
---|
2455 | cir: cir,
|
---|
2456 | cirE: cirE,
|
---|
2457 | cire: cire,
|
---|
2458 | cirfnint: cirfnint,
|
---|
2459 | cirmid: cirmid,
|
---|
2460 | cirscir: cirscir,
|
---|
2461 | ClockwiseContourIntegral: ClockwiseContourIntegral,
|
---|
2462 | CloseCurlyDoubleQuote: CloseCurlyDoubleQuote,
|
---|
2463 | CloseCurlyQuote: CloseCurlyQuote,
|
---|
2464 | clubs: clubs,
|
---|
2465 | clubsuit: clubsuit,
|
---|
2466 | colon: colon,
|
---|
2467 | Colon: Colon,
|
---|
2468 | Colone: Colone,
|
---|
2469 | colone: colone,
|
---|
2470 | coloneq: coloneq,
|
---|
2471 | comma: comma,
|
---|
2472 | commat: commat,
|
---|
2473 | comp: comp,
|
---|
2474 | compfn: compfn,
|
---|
2475 | complement: complement,
|
---|
2476 | complexes: complexes,
|
---|
2477 | cong: cong,
|
---|
2478 | congdot: congdot,
|
---|
2479 | Congruent: Congruent,
|
---|
2480 | conint: conint,
|
---|
2481 | Conint: Conint,
|
---|
2482 | ContourIntegral: ContourIntegral,
|
---|
2483 | copf: copf,
|
---|
2484 | Copf: Copf,
|
---|
2485 | coprod: coprod,
|
---|
2486 | Coproduct: Coproduct,
|
---|
2487 | copy: copy,
|
---|
2488 | COPY: COPY,
|
---|
2489 | copysr: copysr,
|
---|
2490 | CounterClockwiseContourIntegral: CounterClockwiseContourIntegral,
|
---|
2491 | crarr: crarr,
|
---|
2492 | cross: cross,
|
---|
2493 | Cross: Cross,
|
---|
2494 | Cscr: Cscr,
|
---|
2495 | cscr: cscr,
|
---|
2496 | csub: csub,
|
---|
2497 | csube: csube,
|
---|
2498 | csup: csup,
|
---|
2499 | csupe: csupe,
|
---|
2500 | ctdot: ctdot,
|
---|
2501 | cudarrl: cudarrl,
|
---|
2502 | cudarrr: cudarrr,
|
---|
2503 | cuepr: cuepr,
|
---|
2504 | cuesc: cuesc,
|
---|
2505 | cularr: cularr,
|
---|
2506 | cularrp: cularrp,
|
---|
2507 | cupbrcap: cupbrcap,
|
---|
2508 | cupcap: cupcap,
|
---|
2509 | CupCap: CupCap,
|
---|
2510 | cup: cup,
|
---|
2511 | Cup: Cup,
|
---|
2512 | cupcup: cupcup,
|
---|
2513 | cupdot: cupdot,
|
---|
2514 | cupor: cupor,
|
---|
2515 | cups: cups,
|
---|
2516 | curarr: curarr,
|
---|
2517 | curarrm: curarrm,
|
---|
2518 | curlyeqprec: curlyeqprec,
|
---|
2519 | curlyeqsucc: curlyeqsucc,
|
---|
2520 | curlyvee: curlyvee,
|
---|
2521 | curlywedge: curlywedge,
|
---|
2522 | curren: curren,
|
---|
2523 | curvearrowleft: curvearrowleft,
|
---|
2524 | curvearrowright: curvearrowright,
|
---|
2525 | cuvee: cuvee,
|
---|
2526 | cuwed: cuwed,
|
---|
2527 | cwconint: cwconint,
|
---|
2528 | cwint: cwint,
|
---|
2529 | cylcty: cylcty,
|
---|
2530 | dagger: dagger,
|
---|
2531 | Dagger: Dagger,
|
---|
2532 | daleth: daleth,
|
---|
2533 | darr: darr,
|
---|
2534 | Darr: Darr,
|
---|
2535 | dArr: dArr,
|
---|
2536 | dash: dash,
|
---|
2537 | Dashv: Dashv,
|
---|
2538 | dashv: dashv,
|
---|
2539 | dbkarow: dbkarow,
|
---|
2540 | dblac: dblac,
|
---|
2541 | Dcaron: Dcaron,
|
---|
2542 | dcaron: dcaron,
|
---|
2543 | Dcy: Dcy,
|
---|
2544 | dcy: dcy,
|
---|
2545 | ddagger: ddagger,
|
---|
2546 | ddarr: ddarr,
|
---|
2547 | DD: DD,
|
---|
2548 | dd: dd,
|
---|
2549 | DDotrahd: DDotrahd,
|
---|
2550 | ddotseq: ddotseq,
|
---|
2551 | deg: deg,
|
---|
2552 | Del: Del,
|
---|
2553 | Delta: Delta,
|
---|
2554 | delta: delta,
|
---|
2555 | demptyv: demptyv,
|
---|
2556 | dfisht: dfisht,
|
---|
2557 | Dfr: Dfr,
|
---|
2558 | dfr: dfr,
|
---|
2559 | dHar: dHar,
|
---|
2560 | dharl: dharl,
|
---|
2561 | dharr: dharr,
|
---|
2562 | DiacriticalAcute: DiacriticalAcute,
|
---|
2563 | DiacriticalDot: DiacriticalDot,
|
---|
2564 | DiacriticalDoubleAcute: DiacriticalDoubleAcute,
|
---|
2565 | DiacriticalGrave: DiacriticalGrave,
|
---|
2566 | DiacriticalTilde: DiacriticalTilde,
|
---|
2567 | diam: diam,
|
---|
2568 | diamond: diamond,
|
---|
2569 | Diamond: Diamond,
|
---|
2570 | diamondsuit: diamondsuit,
|
---|
2571 | diams: diams,
|
---|
2572 | die: die,
|
---|
2573 | DifferentialD: DifferentialD,
|
---|
2574 | digamma: digamma,
|
---|
2575 | disin: disin,
|
---|
2576 | div: div,
|
---|
2577 | divide: divide,
|
---|
2578 | divideontimes: divideontimes,
|
---|
2579 | divonx: divonx,
|
---|
2580 | DJcy: DJcy,
|
---|
2581 | djcy: djcy,
|
---|
2582 | dlcorn: dlcorn,
|
---|
2583 | dlcrop: dlcrop,
|
---|
2584 | dollar: dollar,
|
---|
2585 | Dopf: Dopf,
|
---|
2586 | dopf: dopf,
|
---|
2587 | Dot: Dot,
|
---|
2588 | dot: dot,
|
---|
2589 | DotDot: DotDot,
|
---|
2590 | doteq: doteq,
|
---|
2591 | doteqdot: doteqdot,
|
---|
2592 | DotEqual: DotEqual,
|
---|
2593 | dotminus: dotminus,
|
---|
2594 | dotplus: dotplus,
|
---|
2595 | dotsquare: dotsquare,
|
---|
2596 | doublebarwedge: doublebarwedge,
|
---|
2597 | DoubleContourIntegral: DoubleContourIntegral,
|
---|
2598 | DoubleDot: DoubleDot,
|
---|
2599 | DoubleDownArrow: DoubleDownArrow,
|
---|
2600 | DoubleLeftArrow: DoubleLeftArrow,
|
---|
2601 | DoubleLeftRightArrow: DoubleLeftRightArrow,
|
---|
2602 | DoubleLeftTee: DoubleLeftTee,
|
---|
2603 | DoubleLongLeftArrow: DoubleLongLeftArrow,
|
---|
2604 | DoubleLongLeftRightArrow: DoubleLongLeftRightArrow,
|
---|
2605 | DoubleLongRightArrow: DoubleLongRightArrow,
|
---|
2606 | DoubleRightArrow: DoubleRightArrow,
|
---|
2607 | DoubleRightTee: DoubleRightTee,
|
---|
2608 | DoubleUpArrow: DoubleUpArrow,
|
---|
2609 | DoubleUpDownArrow: DoubleUpDownArrow,
|
---|
2610 | DoubleVerticalBar: DoubleVerticalBar,
|
---|
2611 | DownArrowBar: DownArrowBar,
|
---|
2612 | downarrow: downarrow,
|
---|
2613 | DownArrow: DownArrow,
|
---|
2614 | Downarrow: Downarrow,
|
---|
2615 | DownArrowUpArrow: DownArrowUpArrow,
|
---|
2616 | DownBreve: DownBreve,
|
---|
2617 | downdownarrows: downdownarrows,
|
---|
2618 | downharpoonleft: downharpoonleft,
|
---|
2619 | downharpoonright: downharpoonright,
|
---|
2620 | DownLeftRightVector: DownLeftRightVector,
|
---|
2621 | DownLeftTeeVector: DownLeftTeeVector,
|
---|
2622 | DownLeftVectorBar: DownLeftVectorBar,
|
---|
2623 | DownLeftVector: DownLeftVector,
|
---|
2624 | DownRightTeeVector: DownRightTeeVector,
|
---|
2625 | DownRightVectorBar: DownRightVectorBar,
|
---|
2626 | DownRightVector: DownRightVector,
|
---|
2627 | DownTeeArrow: DownTeeArrow,
|
---|
2628 | DownTee: DownTee,
|
---|
2629 | drbkarow: drbkarow,
|
---|
2630 | drcorn: drcorn,
|
---|
2631 | drcrop: drcrop,
|
---|
2632 | Dscr: Dscr,
|
---|
2633 | dscr: dscr,
|
---|
2634 | DScy: DScy,
|
---|
2635 | dscy: dscy,
|
---|
2636 | dsol: dsol,
|
---|
2637 | Dstrok: Dstrok,
|
---|
2638 | dstrok: dstrok,
|
---|
2639 | dtdot: dtdot,
|
---|
2640 | dtri: dtri,
|
---|
2641 | dtrif: dtrif,
|
---|
2642 | duarr: duarr,
|
---|
2643 | duhar: duhar,
|
---|
2644 | dwangle: dwangle,
|
---|
2645 | DZcy: DZcy,
|
---|
2646 | dzcy: dzcy,
|
---|
2647 | dzigrarr: dzigrarr,
|
---|
2648 | Eacute: Eacute,
|
---|
2649 | eacute: eacute,
|
---|
2650 | easter: easter,
|
---|
2651 | Ecaron: Ecaron,
|
---|
2652 | ecaron: ecaron,
|
---|
2653 | Ecirc: Ecirc,
|
---|
2654 | ecirc: ecirc,
|
---|
2655 | ecir: ecir,
|
---|
2656 | ecolon: ecolon,
|
---|
2657 | Ecy: Ecy,
|
---|
2658 | ecy: ecy,
|
---|
2659 | eDDot: eDDot,
|
---|
2660 | Edot: Edot,
|
---|
2661 | edot: edot,
|
---|
2662 | eDot: eDot,
|
---|
2663 | ee: ee,
|
---|
2664 | efDot: efDot,
|
---|
2665 | Efr: Efr,
|
---|
2666 | efr: efr,
|
---|
2667 | eg: eg,
|
---|
2668 | Egrave: Egrave,
|
---|
2669 | egrave: egrave,
|
---|
2670 | egs: egs,
|
---|
2671 | egsdot: egsdot,
|
---|
2672 | el: el,
|
---|
2673 | Element: Element,
|
---|
2674 | elinters: elinters,
|
---|
2675 | ell: ell,
|
---|
2676 | els: els,
|
---|
2677 | elsdot: elsdot,
|
---|
2678 | Emacr: Emacr,
|
---|
2679 | emacr: emacr,
|
---|
2680 | empty: empty,
|
---|
2681 | emptyset: emptyset,
|
---|
2682 | EmptySmallSquare: EmptySmallSquare,
|
---|
2683 | emptyv: emptyv,
|
---|
2684 | EmptyVerySmallSquare: EmptyVerySmallSquare,
|
---|
2685 | emsp13: emsp13,
|
---|
2686 | emsp14: emsp14,
|
---|
2687 | emsp: emsp,
|
---|
2688 | ENG: ENG,
|
---|
2689 | eng: eng,
|
---|
2690 | ensp: ensp,
|
---|
2691 | Eogon: Eogon,
|
---|
2692 | eogon: eogon,
|
---|
2693 | Eopf: Eopf,
|
---|
2694 | eopf: eopf,
|
---|
2695 | epar: epar,
|
---|
2696 | eparsl: eparsl,
|
---|
2697 | eplus: eplus,
|
---|
2698 | epsi: epsi,
|
---|
2699 | Epsilon: Epsilon,
|
---|
2700 | epsilon: epsilon,
|
---|
2701 | epsiv: epsiv,
|
---|
2702 | eqcirc: eqcirc,
|
---|
2703 | eqcolon: eqcolon,
|
---|
2704 | eqsim: eqsim,
|
---|
2705 | eqslantgtr: eqslantgtr,
|
---|
2706 | eqslantless: eqslantless,
|
---|
2707 | Equal: Equal,
|
---|
2708 | equals: equals,
|
---|
2709 | EqualTilde: EqualTilde,
|
---|
2710 | equest: equest,
|
---|
2711 | Equilibrium: Equilibrium,
|
---|
2712 | equiv: equiv,
|
---|
2713 | equivDD: equivDD,
|
---|
2714 | eqvparsl: eqvparsl,
|
---|
2715 | erarr: erarr,
|
---|
2716 | erDot: erDot,
|
---|
2717 | escr: escr,
|
---|
2718 | Escr: Escr,
|
---|
2719 | esdot: esdot,
|
---|
2720 | Esim: Esim,
|
---|
2721 | esim: esim,
|
---|
2722 | Eta: Eta,
|
---|
2723 | eta: eta,
|
---|
2724 | ETH: ETH,
|
---|
2725 | eth: eth,
|
---|
2726 | Euml: Euml,
|
---|
2727 | euml: euml,
|
---|
2728 | euro: euro,
|
---|
2729 | excl: excl,
|
---|
2730 | exist: exist,
|
---|
2731 | Exists: Exists,
|
---|
2732 | expectation: expectation,
|
---|
2733 | exponentiale: exponentiale,
|
---|
2734 | ExponentialE: ExponentialE,
|
---|
2735 | fallingdotseq: fallingdotseq,
|
---|
2736 | Fcy: Fcy,
|
---|
2737 | fcy: fcy,
|
---|
2738 | female: female,
|
---|
2739 | ffilig: ffilig,
|
---|
2740 | fflig: fflig,
|
---|
2741 | ffllig: ffllig,
|
---|
2742 | Ffr: Ffr,
|
---|
2743 | ffr: ffr,
|
---|
2744 | filig: filig,
|
---|
2745 | FilledSmallSquare: FilledSmallSquare,
|
---|
2746 | FilledVerySmallSquare: FilledVerySmallSquare,
|
---|
2747 | fjlig: fjlig,
|
---|
2748 | flat: flat,
|
---|
2749 | fllig: fllig,
|
---|
2750 | fltns: fltns,
|
---|
2751 | fnof: fnof,
|
---|
2752 | Fopf: Fopf,
|
---|
2753 | fopf: fopf,
|
---|
2754 | forall: forall,
|
---|
2755 | ForAll: ForAll,
|
---|
2756 | fork: fork,
|
---|
2757 | forkv: forkv,
|
---|
2758 | Fouriertrf: Fouriertrf,
|
---|
2759 | fpartint: fpartint,
|
---|
2760 | frac12: frac12,
|
---|
2761 | frac13: frac13,
|
---|
2762 | frac14: frac14,
|
---|
2763 | frac15: frac15,
|
---|
2764 | frac16: frac16,
|
---|
2765 | frac18: frac18,
|
---|
2766 | frac23: frac23,
|
---|
2767 | frac25: frac25,
|
---|
2768 | frac34: frac34,
|
---|
2769 | frac35: frac35,
|
---|
2770 | frac38: frac38,
|
---|
2771 | frac45: frac45,
|
---|
2772 | frac56: frac56,
|
---|
2773 | frac58: frac58,
|
---|
2774 | frac78: frac78,
|
---|
2775 | frasl: frasl,
|
---|
2776 | frown: frown,
|
---|
2777 | fscr: fscr,
|
---|
2778 | Fscr: Fscr,
|
---|
2779 | gacute: gacute,
|
---|
2780 | Gamma: Gamma,
|
---|
2781 | gamma: gamma,
|
---|
2782 | Gammad: Gammad,
|
---|
2783 | gammad: gammad,
|
---|
2784 | gap: gap,
|
---|
2785 | Gbreve: Gbreve,
|
---|
2786 | gbreve: gbreve,
|
---|
2787 | Gcedil: Gcedil,
|
---|
2788 | Gcirc: Gcirc,
|
---|
2789 | gcirc: gcirc,
|
---|
2790 | Gcy: Gcy,
|
---|
2791 | gcy: gcy,
|
---|
2792 | Gdot: Gdot,
|
---|
2793 | gdot: gdot,
|
---|
2794 | ge: ge,
|
---|
2795 | gE: gE,
|
---|
2796 | gEl: gEl,
|
---|
2797 | gel: gel,
|
---|
2798 | geq: geq,
|
---|
2799 | geqq: geqq,
|
---|
2800 | geqslant: geqslant,
|
---|
2801 | gescc: gescc,
|
---|
2802 | ges: ges,
|
---|
2803 | gesdot: gesdot,
|
---|
2804 | gesdoto: gesdoto,
|
---|
2805 | gesdotol: gesdotol,
|
---|
2806 | gesl: gesl,
|
---|
2807 | gesles: gesles,
|
---|
2808 | Gfr: Gfr,
|
---|
2809 | gfr: gfr,
|
---|
2810 | gg: gg,
|
---|
2811 | Gg: Gg,
|
---|
2812 | ggg: ggg,
|
---|
2813 | gimel: gimel,
|
---|
2814 | GJcy: GJcy,
|
---|
2815 | gjcy: gjcy,
|
---|
2816 | gla: gla,
|
---|
2817 | gl: gl,
|
---|
2818 | glE: glE,
|
---|
2819 | glj: glj,
|
---|
2820 | gnap: gnap,
|
---|
2821 | gnapprox: gnapprox,
|
---|
2822 | gne: gne,
|
---|
2823 | gnE: gnE,
|
---|
2824 | gneq: gneq,
|
---|
2825 | gneqq: gneqq,
|
---|
2826 | gnsim: gnsim,
|
---|
2827 | Gopf: Gopf,
|
---|
2828 | gopf: gopf,
|
---|
2829 | grave: grave,
|
---|
2830 | GreaterEqual: GreaterEqual,
|
---|
2831 | GreaterEqualLess: GreaterEqualLess,
|
---|
2832 | GreaterFullEqual: GreaterFullEqual,
|
---|
2833 | GreaterGreater: GreaterGreater,
|
---|
2834 | GreaterLess: GreaterLess,
|
---|
2835 | GreaterSlantEqual: GreaterSlantEqual,
|
---|
2836 | GreaterTilde: GreaterTilde,
|
---|
2837 | Gscr: Gscr,
|
---|
2838 | gscr: gscr,
|
---|
2839 | gsim: gsim,
|
---|
2840 | gsime: gsime,
|
---|
2841 | gsiml: gsiml,
|
---|
2842 | gtcc: gtcc,
|
---|
2843 | gtcir: gtcir,
|
---|
2844 | gt: gt,
|
---|
2845 | GT: GT,
|
---|
2846 | Gt: Gt,
|
---|
2847 | gtdot: gtdot,
|
---|
2848 | gtlPar: gtlPar,
|
---|
2849 | gtquest: gtquest,
|
---|
2850 | gtrapprox: gtrapprox,
|
---|
2851 | gtrarr: gtrarr,
|
---|
2852 | gtrdot: gtrdot,
|
---|
2853 | gtreqless: gtreqless,
|
---|
2854 | gtreqqless: gtreqqless,
|
---|
2855 | gtrless: gtrless,
|
---|
2856 | gtrsim: gtrsim,
|
---|
2857 | gvertneqq: gvertneqq,
|
---|
2858 | gvnE: gvnE,
|
---|
2859 | Hacek: Hacek,
|
---|
2860 | hairsp: hairsp,
|
---|
2861 | half: half,
|
---|
2862 | hamilt: hamilt,
|
---|
2863 | HARDcy: HARDcy,
|
---|
2864 | hardcy: hardcy,
|
---|
2865 | harrcir: harrcir,
|
---|
2866 | harr: harr,
|
---|
2867 | hArr: hArr,
|
---|
2868 | harrw: harrw,
|
---|
2869 | Hat: Hat,
|
---|
2870 | hbar: hbar,
|
---|
2871 | Hcirc: Hcirc,
|
---|
2872 | hcirc: hcirc,
|
---|
2873 | hearts: hearts,
|
---|
2874 | heartsuit: heartsuit,
|
---|
2875 | hellip: hellip,
|
---|
2876 | hercon: hercon,
|
---|
2877 | hfr: hfr,
|
---|
2878 | Hfr: Hfr,
|
---|
2879 | HilbertSpace: HilbertSpace,
|
---|
2880 | hksearow: hksearow,
|
---|
2881 | hkswarow: hkswarow,
|
---|
2882 | hoarr: hoarr,
|
---|
2883 | homtht: homtht,
|
---|
2884 | hookleftarrow: hookleftarrow,
|
---|
2885 | hookrightarrow: hookrightarrow,
|
---|
2886 | hopf: hopf,
|
---|
2887 | Hopf: Hopf,
|
---|
2888 | horbar: horbar,
|
---|
2889 | HorizontalLine: HorizontalLine,
|
---|
2890 | hscr: hscr,
|
---|
2891 | Hscr: Hscr,
|
---|
2892 | hslash: hslash,
|
---|
2893 | Hstrok: Hstrok,
|
---|
2894 | hstrok: hstrok,
|
---|
2895 | HumpDownHump: HumpDownHump,
|
---|
2896 | HumpEqual: HumpEqual,
|
---|
2897 | hybull: hybull,
|
---|
2898 | hyphen: hyphen,
|
---|
2899 | Iacute: Iacute,
|
---|
2900 | iacute: iacute,
|
---|
2901 | ic: ic,
|
---|
2902 | Icirc: Icirc,
|
---|
2903 | icirc: icirc,
|
---|
2904 | Icy: Icy,
|
---|
2905 | icy: icy,
|
---|
2906 | Idot: Idot,
|
---|
2907 | IEcy: IEcy,
|
---|
2908 | iecy: iecy,
|
---|
2909 | iexcl: iexcl,
|
---|
2910 | iff: iff,
|
---|
2911 | ifr: ifr,
|
---|
2912 | Ifr: Ifr,
|
---|
2913 | Igrave: Igrave,
|
---|
2914 | igrave: igrave,
|
---|
2915 | ii: ii,
|
---|
2916 | iiiint: iiiint,
|
---|
2917 | iiint: iiint,
|
---|
2918 | iinfin: iinfin,
|
---|
2919 | iiota: iiota,
|
---|
2920 | IJlig: IJlig,
|
---|
2921 | ijlig: ijlig,
|
---|
2922 | Imacr: Imacr,
|
---|
2923 | imacr: imacr,
|
---|
2924 | image: image,
|
---|
2925 | ImaginaryI: ImaginaryI,
|
---|
2926 | imagline: imagline,
|
---|
2927 | imagpart: imagpart,
|
---|
2928 | imath: imath,
|
---|
2929 | Im: Im,
|
---|
2930 | imof: imof,
|
---|
2931 | imped: imped,
|
---|
2932 | Implies: Implies,
|
---|
2933 | incare: incare,
|
---|
2934 | "in": "∈",
|
---|
2935 | infin: infin,
|
---|
2936 | infintie: infintie,
|
---|
2937 | inodot: inodot,
|
---|
2938 | intcal: intcal,
|
---|
2939 | int: int,
|
---|
2940 | Int: Int,
|
---|
2941 | integers: integers,
|
---|
2942 | Integral: Integral,
|
---|
2943 | intercal: intercal,
|
---|
2944 | Intersection: Intersection,
|
---|
2945 | intlarhk: intlarhk,
|
---|
2946 | intprod: intprod,
|
---|
2947 | InvisibleComma: InvisibleComma,
|
---|
2948 | InvisibleTimes: InvisibleTimes,
|
---|
2949 | IOcy: IOcy,
|
---|
2950 | iocy: iocy,
|
---|
2951 | Iogon: Iogon,
|
---|
2952 | iogon: iogon,
|
---|
2953 | Iopf: Iopf,
|
---|
2954 | iopf: iopf,
|
---|
2955 | Iota: Iota,
|
---|
2956 | iota: iota,
|
---|
2957 | iprod: iprod,
|
---|
2958 | iquest: iquest,
|
---|
2959 | iscr: iscr,
|
---|
2960 | Iscr: Iscr,
|
---|
2961 | isin: isin,
|
---|
2962 | isindot: isindot,
|
---|
2963 | isinE: isinE,
|
---|
2964 | isins: isins,
|
---|
2965 | isinsv: isinsv,
|
---|
2966 | isinv: isinv,
|
---|
2967 | it: it,
|
---|
2968 | Itilde: Itilde,
|
---|
2969 | itilde: itilde,
|
---|
2970 | Iukcy: Iukcy,
|
---|
2971 | iukcy: iukcy,
|
---|
2972 | Iuml: Iuml,
|
---|
2973 | iuml: iuml,
|
---|
2974 | Jcirc: Jcirc,
|
---|
2975 | jcirc: jcirc,
|
---|
2976 | Jcy: Jcy,
|
---|
2977 | jcy: jcy,
|
---|
2978 | Jfr: Jfr,
|
---|
2979 | jfr: jfr,
|
---|
2980 | jmath: jmath,
|
---|
2981 | Jopf: Jopf,
|
---|
2982 | jopf: jopf,
|
---|
2983 | Jscr: Jscr,
|
---|
2984 | jscr: jscr,
|
---|
2985 | Jsercy: Jsercy,
|
---|
2986 | jsercy: jsercy,
|
---|
2987 | Jukcy: Jukcy,
|
---|
2988 | jukcy: jukcy,
|
---|
2989 | Kappa: Kappa,
|
---|
2990 | kappa: kappa,
|
---|
2991 | kappav: kappav,
|
---|
2992 | Kcedil: Kcedil,
|
---|
2993 | kcedil: kcedil,
|
---|
2994 | Kcy: Kcy,
|
---|
2995 | kcy: kcy,
|
---|
2996 | Kfr: Kfr,
|
---|
2997 | kfr: kfr,
|
---|
2998 | kgreen: kgreen,
|
---|
2999 | KHcy: KHcy,
|
---|
3000 | khcy: khcy,
|
---|
3001 | KJcy: KJcy,
|
---|
3002 | kjcy: kjcy,
|
---|
3003 | Kopf: Kopf,
|
---|
3004 | kopf: kopf,
|
---|
3005 | Kscr: Kscr,
|
---|
3006 | kscr: kscr,
|
---|
3007 | lAarr: lAarr,
|
---|
3008 | Lacute: Lacute,
|
---|
3009 | lacute: lacute,
|
---|
3010 | laemptyv: laemptyv,
|
---|
3011 | lagran: lagran,
|
---|
3012 | Lambda: Lambda,
|
---|
3013 | lambda: lambda,
|
---|
3014 | lang: lang,
|
---|
3015 | Lang: Lang,
|
---|
3016 | langd: langd,
|
---|
3017 | langle: langle,
|
---|
3018 | lap: lap,
|
---|
3019 | Laplacetrf: Laplacetrf,
|
---|
3020 | laquo: laquo,
|
---|
3021 | larrb: larrb,
|
---|
3022 | larrbfs: larrbfs,
|
---|
3023 | larr: larr,
|
---|
3024 | Larr: Larr,
|
---|
3025 | lArr: lArr,
|
---|
3026 | larrfs: larrfs,
|
---|
3027 | larrhk: larrhk,
|
---|
3028 | larrlp: larrlp,
|
---|
3029 | larrpl: larrpl,
|
---|
3030 | larrsim: larrsim,
|
---|
3031 | larrtl: larrtl,
|
---|
3032 | latail: latail,
|
---|
3033 | lAtail: lAtail,
|
---|
3034 | lat: lat,
|
---|
3035 | late: late,
|
---|
3036 | lates: lates,
|
---|
3037 | lbarr: lbarr,
|
---|
3038 | lBarr: lBarr,
|
---|
3039 | lbbrk: lbbrk,
|
---|
3040 | lbrace: lbrace,
|
---|
3041 | lbrack: lbrack,
|
---|
3042 | lbrke: lbrke,
|
---|
3043 | lbrksld: lbrksld,
|
---|
3044 | lbrkslu: lbrkslu,
|
---|
3045 | Lcaron: Lcaron,
|
---|
3046 | lcaron: lcaron,
|
---|
3047 | Lcedil: Lcedil,
|
---|
3048 | lcedil: lcedil,
|
---|
3049 | lceil: lceil,
|
---|
3050 | lcub: lcub,
|
---|
3051 | Lcy: Lcy,
|
---|
3052 | lcy: lcy,
|
---|
3053 | ldca: ldca,
|
---|
3054 | ldquo: ldquo,
|
---|
3055 | ldquor: ldquor,
|
---|
3056 | ldrdhar: ldrdhar,
|
---|
3057 | ldrushar: ldrushar,
|
---|
3058 | ldsh: ldsh,
|
---|
3059 | le: le,
|
---|
3060 | lE: lE,
|
---|
3061 | LeftAngleBracket: LeftAngleBracket,
|
---|
3062 | LeftArrowBar: LeftArrowBar,
|
---|
3063 | leftarrow: leftarrow,
|
---|
3064 | LeftArrow: LeftArrow,
|
---|
3065 | Leftarrow: Leftarrow,
|
---|
3066 | LeftArrowRightArrow: LeftArrowRightArrow,
|
---|
3067 | leftarrowtail: leftarrowtail,
|
---|
3068 | LeftCeiling: LeftCeiling,
|
---|
3069 | LeftDoubleBracket: LeftDoubleBracket,
|
---|
3070 | LeftDownTeeVector: LeftDownTeeVector,
|
---|
3071 | LeftDownVectorBar: LeftDownVectorBar,
|
---|
3072 | LeftDownVector: LeftDownVector,
|
---|
3073 | LeftFloor: LeftFloor,
|
---|
3074 | leftharpoondown: leftharpoondown,
|
---|
3075 | leftharpoonup: leftharpoonup,
|
---|
3076 | leftleftarrows: leftleftarrows,
|
---|
3077 | leftrightarrow: leftrightarrow,
|
---|
3078 | LeftRightArrow: LeftRightArrow,
|
---|
3079 | Leftrightarrow: Leftrightarrow,
|
---|
3080 | leftrightarrows: leftrightarrows,
|
---|
3081 | leftrightharpoons: leftrightharpoons,
|
---|
3082 | leftrightsquigarrow: leftrightsquigarrow,
|
---|
3083 | LeftRightVector: LeftRightVector,
|
---|
3084 | LeftTeeArrow: LeftTeeArrow,
|
---|
3085 | LeftTee: LeftTee,
|
---|
3086 | LeftTeeVector: LeftTeeVector,
|
---|
3087 | leftthreetimes: leftthreetimes,
|
---|
3088 | LeftTriangleBar: LeftTriangleBar,
|
---|
3089 | LeftTriangle: LeftTriangle,
|
---|
3090 | LeftTriangleEqual: LeftTriangleEqual,
|
---|
3091 | LeftUpDownVector: LeftUpDownVector,
|
---|
3092 | LeftUpTeeVector: LeftUpTeeVector,
|
---|
3093 | LeftUpVectorBar: LeftUpVectorBar,
|
---|
3094 | LeftUpVector: LeftUpVector,
|
---|
3095 | LeftVectorBar: LeftVectorBar,
|
---|
3096 | LeftVector: LeftVector,
|
---|
3097 | lEg: lEg,
|
---|
3098 | leg: leg,
|
---|
3099 | leq: leq,
|
---|
3100 | leqq: leqq,
|
---|
3101 | leqslant: leqslant,
|
---|
3102 | lescc: lescc,
|
---|
3103 | les: les,
|
---|
3104 | lesdot: lesdot,
|
---|
3105 | lesdoto: lesdoto,
|
---|
3106 | lesdotor: lesdotor,
|
---|
3107 | lesg: lesg,
|
---|
3108 | lesges: lesges,
|
---|
3109 | lessapprox: lessapprox,
|
---|
3110 | lessdot: lessdot,
|
---|
3111 | lesseqgtr: lesseqgtr,
|
---|
3112 | lesseqqgtr: lesseqqgtr,
|
---|
3113 | LessEqualGreater: LessEqualGreater,
|
---|
3114 | LessFullEqual: LessFullEqual,
|
---|
3115 | LessGreater: LessGreater,
|
---|
3116 | lessgtr: lessgtr,
|
---|
3117 | LessLess: LessLess,
|
---|
3118 | lesssim: lesssim,
|
---|
3119 | LessSlantEqual: LessSlantEqual,
|
---|
3120 | LessTilde: LessTilde,
|
---|
3121 | lfisht: lfisht,
|
---|
3122 | lfloor: lfloor,
|
---|
3123 | Lfr: Lfr,
|
---|
3124 | lfr: lfr,
|
---|
3125 | lg: lg,
|
---|
3126 | lgE: lgE,
|
---|
3127 | lHar: lHar,
|
---|
3128 | lhard: lhard,
|
---|
3129 | lharu: lharu,
|
---|
3130 | lharul: lharul,
|
---|
3131 | lhblk: lhblk,
|
---|
3132 | LJcy: LJcy,
|
---|
3133 | ljcy: ljcy,
|
---|
3134 | llarr: llarr,
|
---|
3135 | ll: ll,
|
---|
3136 | Ll: Ll,
|
---|
3137 | llcorner: llcorner,
|
---|
3138 | Lleftarrow: Lleftarrow,
|
---|
3139 | llhard: llhard,
|
---|
3140 | lltri: lltri,
|
---|
3141 | Lmidot: Lmidot,
|
---|
3142 | lmidot: lmidot,
|
---|
3143 | lmoustache: lmoustache,
|
---|
3144 | lmoust: lmoust,
|
---|
3145 | lnap: lnap,
|
---|
3146 | lnapprox: lnapprox,
|
---|
3147 | lne: lne,
|
---|
3148 | lnE: lnE,
|
---|
3149 | lneq: lneq,
|
---|
3150 | lneqq: lneqq,
|
---|
3151 | lnsim: lnsim,
|
---|
3152 | loang: loang,
|
---|
3153 | loarr: loarr,
|
---|
3154 | lobrk: lobrk,
|
---|
3155 | longleftarrow: longleftarrow,
|
---|
3156 | LongLeftArrow: LongLeftArrow,
|
---|
3157 | Longleftarrow: Longleftarrow,
|
---|
3158 | longleftrightarrow: longleftrightarrow,
|
---|
3159 | LongLeftRightArrow: LongLeftRightArrow,
|
---|
3160 | Longleftrightarrow: Longleftrightarrow,
|
---|
3161 | longmapsto: longmapsto,
|
---|
3162 | longrightarrow: longrightarrow,
|
---|
3163 | LongRightArrow: LongRightArrow,
|
---|
3164 | Longrightarrow: Longrightarrow,
|
---|
3165 | looparrowleft: looparrowleft,
|
---|
3166 | looparrowright: looparrowright,
|
---|
3167 | lopar: lopar,
|
---|
3168 | Lopf: Lopf,
|
---|
3169 | lopf: lopf,
|
---|
3170 | loplus: loplus,
|
---|
3171 | lotimes: lotimes,
|
---|
3172 | lowast: lowast,
|
---|
3173 | lowbar: lowbar,
|
---|
3174 | LowerLeftArrow: LowerLeftArrow,
|
---|
3175 | LowerRightArrow: LowerRightArrow,
|
---|
3176 | loz: loz,
|
---|
3177 | lozenge: lozenge,
|
---|
3178 | lozf: lozf,
|
---|
3179 | lpar: lpar,
|
---|
3180 | lparlt: lparlt,
|
---|
3181 | lrarr: lrarr,
|
---|
3182 | lrcorner: lrcorner,
|
---|
3183 | lrhar: lrhar,
|
---|
3184 | lrhard: lrhard,
|
---|
3185 | lrm: lrm,
|
---|
3186 | lrtri: lrtri,
|
---|
3187 | lsaquo: lsaquo,
|
---|
3188 | lscr: lscr,
|
---|
3189 | Lscr: Lscr,
|
---|
3190 | lsh: lsh,
|
---|
3191 | Lsh: Lsh,
|
---|
3192 | lsim: lsim,
|
---|
3193 | lsime: lsime,
|
---|
3194 | lsimg: lsimg,
|
---|
3195 | lsqb: lsqb,
|
---|
3196 | lsquo: lsquo,
|
---|
3197 | lsquor: lsquor,
|
---|
3198 | Lstrok: Lstrok,
|
---|
3199 | lstrok: lstrok,
|
---|
3200 | ltcc: ltcc,
|
---|
3201 | ltcir: ltcir,
|
---|
3202 | lt: lt,
|
---|
3203 | LT: LT,
|
---|
3204 | Lt: Lt,
|
---|
3205 | ltdot: ltdot,
|
---|
3206 | lthree: lthree,
|
---|
3207 | ltimes: ltimes,
|
---|
3208 | ltlarr: ltlarr,
|
---|
3209 | ltquest: ltquest,
|
---|
3210 | ltri: ltri,
|
---|
3211 | ltrie: ltrie,
|
---|
3212 | ltrif: ltrif,
|
---|
3213 | ltrPar: ltrPar,
|
---|
3214 | lurdshar: lurdshar,
|
---|
3215 | luruhar: luruhar,
|
---|
3216 | lvertneqq: lvertneqq,
|
---|
3217 | lvnE: lvnE,
|
---|
3218 | macr: macr,
|
---|
3219 | male: male,
|
---|
3220 | malt: malt,
|
---|
3221 | maltese: maltese,
|
---|
3222 | "Map": "⤅",
|
---|
3223 | map: map,
|
---|
3224 | mapsto: mapsto,
|
---|
3225 | mapstodown: mapstodown,
|
---|
3226 | mapstoleft: mapstoleft,
|
---|
3227 | mapstoup: mapstoup,
|
---|
3228 | marker: marker,
|
---|
3229 | mcomma: mcomma,
|
---|
3230 | Mcy: Mcy,
|
---|
3231 | mcy: mcy,
|
---|
3232 | mdash: mdash,
|
---|
3233 | mDDot: mDDot,
|
---|
3234 | measuredangle: measuredangle,
|
---|
3235 | MediumSpace: MediumSpace,
|
---|
3236 | Mellintrf: Mellintrf,
|
---|
3237 | Mfr: Mfr,
|
---|
3238 | mfr: mfr,
|
---|
3239 | mho: mho,
|
---|
3240 | micro: micro,
|
---|
3241 | midast: midast,
|
---|
3242 | midcir: midcir,
|
---|
3243 | mid: mid,
|
---|
3244 | middot: middot,
|
---|
3245 | minusb: minusb,
|
---|
3246 | minus: minus,
|
---|
3247 | minusd: minusd,
|
---|
3248 | minusdu: minusdu,
|
---|
3249 | MinusPlus: MinusPlus,
|
---|
3250 | mlcp: mlcp,
|
---|
3251 | mldr: mldr,
|
---|
3252 | mnplus: mnplus,
|
---|
3253 | models: models,
|
---|
3254 | Mopf: Mopf,
|
---|
3255 | mopf: mopf,
|
---|
3256 | mp: mp,
|
---|
3257 | mscr: mscr,
|
---|
3258 | Mscr: Mscr,
|
---|
3259 | mstpos: mstpos,
|
---|
3260 | Mu: Mu,
|
---|
3261 | mu: mu,
|
---|
3262 | multimap: multimap,
|
---|
3263 | mumap: mumap,
|
---|
3264 | nabla: nabla,
|
---|
3265 | Nacute: Nacute,
|
---|
3266 | nacute: nacute,
|
---|
3267 | nang: nang,
|
---|
3268 | nap: nap,
|
---|
3269 | napE: napE,
|
---|
3270 | napid: napid,
|
---|
3271 | napos: napos,
|
---|
3272 | napprox: napprox,
|
---|
3273 | natural: natural,
|
---|
3274 | naturals: naturals,
|
---|
3275 | natur: natur,
|
---|
3276 | nbsp: nbsp,
|
---|
3277 | nbump: nbump,
|
---|
3278 | nbumpe: nbumpe,
|
---|
3279 | ncap: ncap,
|
---|
3280 | Ncaron: Ncaron,
|
---|
3281 | ncaron: ncaron,
|
---|
3282 | Ncedil: Ncedil,
|
---|
3283 | ncedil: ncedil,
|
---|
3284 | ncong: ncong,
|
---|
3285 | ncongdot: ncongdot,
|
---|
3286 | ncup: ncup,
|
---|
3287 | Ncy: Ncy,
|
---|
3288 | ncy: ncy,
|
---|
3289 | ndash: ndash,
|
---|
3290 | nearhk: nearhk,
|
---|
3291 | nearr: nearr,
|
---|
3292 | neArr: neArr,
|
---|
3293 | nearrow: nearrow,
|
---|
3294 | ne: ne,
|
---|
3295 | nedot: nedot,
|
---|
3296 | NegativeMediumSpace: NegativeMediumSpace,
|
---|
3297 | NegativeThickSpace: NegativeThickSpace,
|
---|
3298 | NegativeThinSpace: NegativeThinSpace,
|
---|
3299 | NegativeVeryThinSpace: NegativeVeryThinSpace,
|
---|
3300 | nequiv: nequiv,
|
---|
3301 | nesear: nesear,
|
---|
3302 | nesim: nesim,
|
---|
3303 | NestedGreaterGreater: NestedGreaterGreater,
|
---|
3304 | NestedLessLess: NestedLessLess,
|
---|
3305 | NewLine: NewLine,
|
---|
3306 | nexist: nexist,
|
---|
3307 | nexists: nexists,
|
---|
3308 | Nfr: Nfr,
|
---|
3309 | nfr: nfr,
|
---|
3310 | ngE: ngE,
|
---|
3311 | nge: nge,
|
---|
3312 | ngeq: ngeq,
|
---|
3313 | ngeqq: ngeqq,
|
---|
3314 | ngeqslant: ngeqslant,
|
---|
3315 | nges: nges,
|
---|
3316 | nGg: nGg,
|
---|
3317 | ngsim: ngsim,
|
---|
3318 | nGt: nGt,
|
---|
3319 | ngt: ngt,
|
---|
3320 | ngtr: ngtr,
|
---|
3321 | nGtv: nGtv,
|
---|
3322 | nharr: nharr,
|
---|
3323 | nhArr: nhArr,
|
---|
3324 | nhpar: nhpar,
|
---|
3325 | ni: ni,
|
---|
3326 | nis: nis,
|
---|
3327 | nisd: nisd,
|
---|
3328 | niv: niv,
|
---|
3329 | NJcy: NJcy,
|
---|
3330 | njcy: njcy,
|
---|
3331 | nlarr: nlarr,
|
---|
3332 | nlArr: nlArr,
|
---|
3333 | nldr: nldr,
|
---|
3334 | nlE: nlE,
|
---|
3335 | nle: nle,
|
---|
3336 | nleftarrow: nleftarrow,
|
---|
3337 | nLeftarrow: nLeftarrow,
|
---|
3338 | nleftrightarrow: nleftrightarrow,
|
---|
3339 | nLeftrightarrow: nLeftrightarrow,
|
---|
3340 | nleq: nleq,
|
---|
3341 | nleqq: nleqq,
|
---|
3342 | nleqslant: nleqslant,
|
---|
3343 | nles: nles,
|
---|
3344 | nless: nless,
|
---|
3345 | nLl: nLl,
|
---|
3346 | nlsim: nlsim,
|
---|
3347 | nLt: nLt,
|
---|
3348 | nlt: nlt,
|
---|
3349 | nltri: nltri,
|
---|
3350 | nltrie: nltrie,
|
---|
3351 | nLtv: nLtv,
|
---|
3352 | nmid: nmid,
|
---|
3353 | NoBreak: NoBreak,
|
---|
3354 | NonBreakingSpace: NonBreakingSpace,
|
---|
3355 | nopf: nopf,
|
---|
3356 | Nopf: Nopf,
|
---|
3357 | Not: Not,
|
---|
3358 | not: not,
|
---|
3359 | NotCongruent: NotCongruent,
|
---|
3360 | NotCupCap: NotCupCap,
|
---|
3361 | NotDoubleVerticalBar: NotDoubleVerticalBar,
|
---|
3362 | NotElement: NotElement,
|
---|
3363 | NotEqual: NotEqual,
|
---|
3364 | NotEqualTilde: NotEqualTilde,
|
---|
3365 | NotExists: NotExists,
|
---|
3366 | NotGreater: NotGreater,
|
---|
3367 | NotGreaterEqual: NotGreaterEqual,
|
---|
3368 | NotGreaterFullEqual: NotGreaterFullEqual,
|
---|
3369 | NotGreaterGreater: NotGreaterGreater,
|
---|
3370 | NotGreaterLess: NotGreaterLess,
|
---|
3371 | NotGreaterSlantEqual: NotGreaterSlantEqual,
|
---|
3372 | NotGreaterTilde: NotGreaterTilde,
|
---|
3373 | NotHumpDownHump: NotHumpDownHump,
|
---|
3374 | NotHumpEqual: NotHumpEqual,
|
---|
3375 | notin: notin,
|
---|
3376 | notindot: notindot,
|
---|
3377 | notinE: notinE,
|
---|
3378 | notinva: notinva,
|
---|
3379 | notinvb: notinvb,
|
---|
3380 | notinvc: notinvc,
|
---|
3381 | NotLeftTriangleBar: NotLeftTriangleBar,
|
---|
3382 | NotLeftTriangle: NotLeftTriangle,
|
---|
3383 | NotLeftTriangleEqual: NotLeftTriangleEqual,
|
---|
3384 | NotLess: NotLess,
|
---|
3385 | NotLessEqual: NotLessEqual,
|
---|
3386 | NotLessGreater: NotLessGreater,
|
---|
3387 | NotLessLess: NotLessLess,
|
---|
3388 | NotLessSlantEqual: NotLessSlantEqual,
|
---|
3389 | NotLessTilde: NotLessTilde,
|
---|
3390 | NotNestedGreaterGreater: NotNestedGreaterGreater,
|
---|
3391 | NotNestedLessLess: NotNestedLessLess,
|
---|
3392 | notni: notni,
|
---|
3393 | notniva: notniva,
|
---|
3394 | notnivb: notnivb,
|
---|
3395 | notnivc: notnivc,
|
---|
3396 | NotPrecedes: NotPrecedes,
|
---|
3397 | NotPrecedesEqual: NotPrecedesEqual,
|
---|
3398 | NotPrecedesSlantEqual: NotPrecedesSlantEqual,
|
---|
3399 | NotReverseElement: NotReverseElement,
|
---|
3400 | NotRightTriangleBar: NotRightTriangleBar,
|
---|
3401 | NotRightTriangle: NotRightTriangle,
|
---|
3402 | NotRightTriangleEqual: NotRightTriangleEqual,
|
---|
3403 | NotSquareSubset: NotSquareSubset,
|
---|
3404 | NotSquareSubsetEqual: NotSquareSubsetEqual,
|
---|
3405 | NotSquareSuperset: NotSquareSuperset,
|
---|
3406 | NotSquareSupersetEqual: NotSquareSupersetEqual,
|
---|
3407 | NotSubset: NotSubset,
|
---|
3408 | NotSubsetEqual: NotSubsetEqual,
|
---|
3409 | NotSucceeds: NotSucceeds,
|
---|
3410 | NotSucceedsEqual: NotSucceedsEqual,
|
---|
3411 | NotSucceedsSlantEqual: NotSucceedsSlantEqual,
|
---|
3412 | NotSucceedsTilde: NotSucceedsTilde,
|
---|
3413 | NotSuperset: NotSuperset,
|
---|
3414 | NotSupersetEqual: NotSupersetEqual,
|
---|
3415 | NotTilde: NotTilde,
|
---|
3416 | NotTildeEqual: NotTildeEqual,
|
---|
3417 | NotTildeFullEqual: NotTildeFullEqual,
|
---|
3418 | NotTildeTilde: NotTildeTilde,
|
---|
3419 | NotVerticalBar: NotVerticalBar,
|
---|
3420 | nparallel: nparallel,
|
---|
3421 | npar: npar,
|
---|
3422 | nparsl: nparsl,
|
---|
3423 | npart: npart,
|
---|
3424 | npolint: npolint,
|
---|
3425 | npr: npr,
|
---|
3426 | nprcue: nprcue,
|
---|
3427 | nprec: nprec,
|
---|
3428 | npreceq: npreceq,
|
---|
3429 | npre: npre,
|
---|
3430 | nrarrc: nrarrc,
|
---|
3431 | nrarr: nrarr,
|
---|
3432 | nrArr: nrArr,
|
---|
3433 | nrarrw: nrarrw,
|
---|
3434 | nrightarrow: nrightarrow,
|
---|
3435 | nRightarrow: nRightarrow,
|
---|
3436 | nrtri: nrtri,
|
---|
3437 | nrtrie: nrtrie,
|
---|
3438 | nsc: nsc,
|
---|
3439 | nsccue: nsccue,
|
---|
3440 | nsce: nsce,
|
---|
3441 | Nscr: Nscr,
|
---|
3442 | nscr: nscr,
|
---|
3443 | nshortmid: nshortmid,
|
---|
3444 | nshortparallel: nshortparallel,
|
---|
3445 | nsim: nsim,
|
---|
3446 | nsime: nsime,
|
---|
3447 | nsimeq: nsimeq,
|
---|
3448 | nsmid: nsmid,
|
---|
3449 | nspar: nspar,
|
---|
3450 | nsqsube: nsqsube,
|
---|
3451 | nsqsupe: nsqsupe,
|
---|
3452 | nsub: nsub,
|
---|
3453 | nsubE: nsubE,
|
---|
3454 | nsube: nsube,
|
---|
3455 | nsubset: nsubset,
|
---|
3456 | nsubseteq: nsubseteq,
|
---|
3457 | nsubseteqq: nsubseteqq,
|
---|
3458 | nsucc: nsucc,
|
---|
3459 | nsucceq: nsucceq,
|
---|
3460 | nsup: nsup,
|
---|
3461 | nsupE: nsupE,
|
---|
3462 | nsupe: nsupe,
|
---|
3463 | nsupset: nsupset,
|
---|
3464 | nsupseteq: nsupseteq,
|
---|
3465 | nsupseteqq: nsupseteqq,
|
---|
3466 | ntgl: ntgl,
|
---|
3467 | Ntilde: Ntilde,
|
---|
3468 | ntilde: ntilde,
|
---|
3469 | ntlg: ntlg,
|
---|
3470 | ntriangleleft: ntriangleleft,
|
---|
3471 | ntrianglelefteq: ntrianglelefteq,
|
---|
3472 | ntriangleright: ntriangleright,
|
---|
3473 | ntrianglerighteq: ntrianglerighteq,
|
---|
3474 | Nu: Nu,
|
---|
3475 | nu: nu,
|
---|
3476 | num: num,
|
---|
3477 | numero: numero,
|
---|
3478 | numsp: numsp,
|
---|
3479 | nvap: nvap,
|
---|
3480 | nvdash: nvdash,
|
---|
3481 | nvDash: nvDash,
|
---|
3482 | nVdash: nVdash,
|
---|
3483 | nVDash: nVDash,
|
---|
3484 | nvge: nvge,
|
---|
3485 | nvgt: nvgt,
|
---|
3486 | nvHarr: nvHarr,
|
---|
3487 | nvinfin: nvinfin,
|
---|
3488 | nvlArr: nvlArr,
|
---|
3489 | nvle: nvle,
|
---|
3490 | nvlt: nvlt,
|
---|
3491 | nvltrie: nvltrie,
|
---|
3492 | nvrArr: nvrArr,
|
---|
3493 | nvrtrie: nvrtrie,
|
---|
3494 | nvsim: nvsim,
|
---|
3495 | nwarhk: nwarhk,
|
---|
3496 | nwarr: nwarr,
|
---|
3497 | nwArr: nwArr,
|
---|
3498 | nwarrow: nwarrow,
|
---|
3499 | nwnear: nwnear,
|
---|
3500 | Oacute: Oacute,
|
---|
3501 | oacute: oacute,
|
---|
3502 | oast: oast,
|
---|
3503 | Ocirc: Ocirc,
|
---|
3504 | ocirc: ocirc,
|
---|
3505 | ocir: ocir,
|
---|
3506 | Ocy: Ocy,
|
---|
3507 | ocy: ocy,
|
---|
3508 | odash: odash,
|
---|
3509 | Odblac: Odblac,
|
---|
3510 | odblac: odblac,
|
---|
3511 | odiv: odiv,
|
---|
3512 | odot: odot,
|
---|
3513 | odsold: odsold,
|
---|
3514 | OElig: OElig,
|
---|
3515 | oelig: oelig,
|
---|
3516 | ofcir: ofcir,
|
---|
3517 | Ofr: Ofr,
|
---|
3518 | ofr: ofr,
|
---|
3519 | ogon: ogon,
|
---|
3520 | Ograve: Ograve,
|
---|
3521 | ograve: ograve,
|
---|
3522 | ogt: ogt,
|
---|
3523 | ohbar: ohbar,
|
---|
3524 | ohm: ohm,
|
---|
3525 | oint: oint,
|
---|
3526 | olarr: olarr,
|
---|
3527 | olcir: olcir,
|
---|
3528 | olcross: olcross,
|
---|
3529 | oline: oline,
|
---|
3530 | olt: olt,
|
---|
3531 | Omacr: Omacr,
|
---|
3532 | omacr: omacr,
|
---|
3533 | Omega: Omega,
|
---|
3534 | omega: omega,
|
---|
3535 | Omicron: Omicron,
|
---|
3536 | omicron: omicron,
|
---|
3537 | omid: omid,
|
---|
3538 | ominus: ominus,
|
---|
3539 | Oopf: Oopf,
|
---|
3540 | oopf: oopf,
|
---|
3541 | opar: opar,
|
---|
3542 | OpenCurlyDoubleQuote: OpenCurlyDoubleQuote,
|
---|
3543 | OpenCurlyQuote: OpenCurlyQuote,
|
---|
3544 | operp: operp,
|
---|
3545 | oplus: oplus,
|
---|
3546 | orarr: orarr,
|
---|
3547 | Or: Or,
|
---|
3548 | or: or,
|
---|
3549 | ord: ord,
|
---|
3550 | order: order,
|
---|
3551 | orderof: orderof,
|
---|
3552 | ordf: ordf,
|
---|
3553 | ordm: ordm,
|
---|
3554 | origof: origof,
|
---|
3555 | oror: oror,
|
---|
3556 | orslope: orslope,
|
---|
3557 | orv: orv,
|
---|
3558 | oS: oS,
|
---|
3559 | Oscr: Oscr,
|
---|
3560 | oscr: oscr,
|
---|
3561 | Oslash: Oslash,
|
---|
3562 | oslash: oslash,
|
---|
3563 | osol: osol,
|
---|
3564 | Otilde: Otilde,
|
---|
3565 | otilde: otilde,
|
---|
3566 | otimesas: otimesas,
|
---|
3567 | Otimes: Otimes,
|
---|
3568 | otimes: otimes,
|
---|
3569 | Ouml: Ouml,
|
---|
3570 | ouml: ouml,
|
---|
3571 | ovbar: ovbar,
|
---|
3572 | OverBar: OverBar,
|
---|
3573 | OverBrace: OverBrace,
|
---|
3574 | OverBracket: OverBracket,
|
---|
3575 | OverParenthesis: OverParenthesis,
|
---|
3576 | para: para,
|
---|
3577 | parallel: parallel,
|
---|
3578 | par: par,
|
---|
3579 | parsim: parsim,
|
---|
3580 | parsl: parsl,
|
---|
3581 | part: part,
|
---|
3582 | PartialD: PartialD,
|
---|
3583 | Pcy: Pcy,
|
---|
3584 | pcy: pcy,
|
---|
3585 | percnt: percnt,
|
---|
3586 | period: period,
|
---|
3587 | permil: permil,
|
---|
3588 | perp: perp,
|
---|
3589 | pertenk: pertenk,
|
---|
3590 | Pfr: Pfr,
|
---|
3591 | pfr: pfr,
|
---|
3592 | Phi: Phi,
|
---|
3593 | phi: phi,
|
---|
3594 | phiv: phiv,
|
---|
3595 | phmmat: phmmat,
|
---|
3596 | phone: phone,
|
---|
3597 | Pi: Pi,
|
---|
3598 | pi: pi,
|
---|
3599 | pitchfork: pitchfork,
|
---|
3600 | piv: piv,
|
---|
3601 | planck: planck,
|
---|
3602 | planckh: planckh,
|
---|
3603 | plankv: plankv,
|
---|
3604 | plusacir: plusacir,
|
---|
3605 | plusb: plusb,
|
---|
3606 | pluscir: pluscir,
|
---|
3607 | plus: plus,
|
---|
3608 | plusdo: plusdo,
|
---|
3609 | plusdu: plusdu,
|
---|
3610 | pluse: pluse,
|
---|
3611 | PlusMinus: PlusMinus,
|
---|
3612 | plusmn: plusmn,
|
---|
3613 | plussim: plussim,
|
---|
3614 | plustwo: plustwo,
|
---|
3615 | pm: pm,
|
---|
3616 | Poincareplane: Poincareplane,
|
---|
3617 | pointint: pointint,
|
---|
3618 | popf: popf,
|
---|
3619 | Popf: Popf,
|
---|
3620 | pound: pound,
|
---|
3621 | prap: prap,
|
---|
3622 | Pr: Pr,
|
---|
3623 | pr: pr,
|
---|
3624 | prcue: prcue,
|
---|
3625 | precapprox: precapprox,
|
---|
3626 | prec: prec,
|
---|
3627 | preccurlyeq: preccurlyeq,
|
---|
3628 | Precedes: Precedes,
|
---|
3629 | PrecedesEqual: PrecedesEqual,
|
---|
3630 | PrecedesSlantEqual: PrecedesSlantEqual,
|
---|
3631 | PrecedesTilde: PrecedesTilde,
|
---|
3632 | preceq: preceq,
|
---|
3633 | precnapprox: precnapprox,
|
---|
3634 | precneqq: precneqq,
|
---|
3635 | precnsim: precnsim,
|
---|
3636 | pre: pre,
|
---|
3637 | prE: prE,
|
---|
3638 | precsim: precsim,
|
---|
3639 | prime: prime,
|
---|
3640 | Prime: Prime,
|
---|
3641 | primes: primes,
|
---|
3642 | prnap: prnap,
|
---|
3643 | prnE: prnE,
|
---|
3644 | prnsim: prnsim,
|
---|
3645 | prod: prod,
|
---|
3646 | Product: Product,
|
---|
3647 | profalar: profalar,
|
---|
3648 | profline: profline,
|
---|
3649 | profsurf: profsurf,
|
---|
3650 | prop: prop,
|
---|
3651 | Proportional: Proportional,
|
---|
3652 | Proportion: Proportion,
|
---|
3653 | propto: propto,
|
---|
3654 | prsim: prsim,
|
---|
3655 | prurel: prurel,
|
---|
3656 | Pscr: Pscr,
|
---|
3657 | pscr: pscr,
|
---|
3658 | Psi: Psi,
|
---|
3659 | psi: psi,
|
---|
3660 | puncsp: puncsp,
|
---|
3661 | Qfr: Qfr,
|
---|
3662 | qfr: qfr,
|
---|
3663 | qint: qint,
|
---|
3664 | qopf: qopf,
|
---|
3665 | Qopf: Qopf,
|
---|
3666 | qprime: qprime,
|
---|
3667 | Qscr: Qscr,
|
---|
3668 | qscr: qscr,
|
---|
3669 | quaternions: quaternions,
|
---|
3670 | quatint: quatint,
|
---|
3671 | quest: quest,
|
---|
3672 | questeq: questeq,
|
---|
3673 | quot: quot,
|
---|
3674 | QUOT: QUOT,
|
---|
3675 | rAarr: rAarr,
|
---|
3676 | race: race,
|
---|
3677 | Racute: Racute,
|
---|
3678 | racute: racute,
|
---|
3679 | radic: radic,
|
---|
3680 | raemptyv: raemptyv,
|
---|
3681 | rang: rang,
|
---|
3682 | Rang: Rang,
|
---|
3683 | rangd: rangd,
|
---|
3684 | range: range,
|
---|
3685 | rangle: rangle,
|
---|
3686 | raquo: raquo,
|
---|
3687 | rarrap: rarrap,
|
---|
3688 | rarrb: rarrb,
|
---|
3689 | rarrbfs: rarrbfs,
|
---|
3690 | rarrc: rarrc,
|
---|
3691 | rarr: rarr,
|
---|
3692 | Rarr: Rarr,
|
---|
3693 | rArr: rArr,
|
---|
3694 | rarrfs: rarrfs,
|
---|
3695 | rarrhk: rarrhk,
|
---|
3696 | rarrlp: rarrlp,
|
---|
3697 | rarrpl: rarrpl,
|
---|
3698 | rarrsim: rarrsim,
|
---|
3699 | Rarrtl: Rarrtl,
|
---|
3700 | rarrtl: rarrtl,
|
---|
3701 | rarrw: rarrw,
|
---|
3702 | ratail: ratail,
|
---|
3703 | rAtail: rAtail,
|
---|
3704 | ratio: ratio,
|
---|
3705 | rationals: rationals,
|
---|
3706 | rbarr: rbarr,
|
---|
3707 | rBarr: rBarr,
|
---|
3708 | RBarr: RBarr,
|
---|
3709 | rbbrk: rbbrk,
|
---|
3710 | rbrace: rbrace,
|
---|
3711 | rbrack: rbrack,
|
---|
3712 | rbrke: rbrke,
|
---|
3713 | rbrksld: rbrksld,
|
---|
3714 | rbrkslu: rbrkslu,
|
---|
3715 | Rcaron: Rcaron,
|
---|
3716 | rcaron: rcaron,
|
---|
3717 | Rcedil: Rcedil,
|
---|
3718 | rcedil: rcedil,
|
---|
3719 | rceil: rceil,
|
---|
3720 | rcub: rcub,
|
---|
3721 | Rcy: Rcy,
|
---|
3722 | rcy: rcy,
|
---|
3723 | rdca: rdca,
|
---|
3724 | rdldhar: rdldhar,
|
---|
3725 | rdquo: rdquo,
|
---|
3726 | rdquor: rdquor,
|
---|
3727 | rdsh: rdsh,
|
---|
3728 | real: real,
|
---|
3729 | realine: realine,
|
---|
3730 | realpart: realpart,
|
---|
3731 | reals: reals,
|
---|
3732 | Re: Re,
|
---|
3733 | rect: rect,
|
---|
3734 | reg: reg,
|
---|
3735 | REG: REG,
|
---|
3736 | ReverseElement: ReverseElement,
|
---|
3737 | ReverseEquilibrium: ReverseEquilibrium,
|
---|
3738 | ReverseUpEquilibrium: ReverseUpEquilibrium,
|
---|
3739 | rfisht: rfisht,
|
---|
3740 | rfloor: rfloor,
|
---|
3741 | rfr: rfr,
|
---|
3742 | Rfr: Rfr,
|
---|
3743 | rHar: rHar,
|
---|
3744 | rhard: rhard,
|
---|
3745 | rharu: rharu,
|
---|
3746 | rharul: rharul,
|
---|
3747 | Rho: Rho,
|
---|
3748 | rho: rho,
|
---|
3749 | rhov: rhov,
|
---|
3750 | RightAngleBracket: RightAngleBracket,
|
---|
3751 | RightArrowBar: RightArrowBar,
|
---|
3752 | rightarrow: rightarrow,
|
---|
3753 | RightArrow: RightArrow,
|
---|
3754 | Rightarrow: Rightarrow,
|
---|
3755 | RightArrowLeftArrow: RightArrowLeftArrow,
|
---|
3756 | rightarrowtail: rightarrowtail,
|
---|
3757 | RightCeiling: RightCeiling,
|
---|
3758 | RightDoubleBracket: RightDoubleBracket,
|
---|
3759 | RightDownTeeVector: RightDownTeeVector,
|
---|
3760 | RightDownVectorBar: RightDownVectorBar,
|
---|
3761 | RightDownVector: RightDownVector,
|
---|
3762 | RightFloor: RightFloor,
|
---|
3763 | rightharpoondown: rightharpoondown,
|
---|
3764 | rightharpoonup: rightharpoonup,
|
---|
3765 | rightleftarrows: rightleftarrows,
|
---|
3766 | rightleftharpoons: rightleftharpoons,
|
---|
3767 | rightrightarrows: rightrightarrows,
|
---|
3768 | rightsquigarrow: rightsquigarrow,
|
---|
3769 | RightTeeArrow: RightTeeArrow,
|
---|
3770 | RightTee: RightTee,
|
---|
3771 | RightTeeVector: RightTeeVector,
|
---|
3772 | rightthreetimes: rightthreetimes,
|
---|
3773 | RightTriangleBar: RightTriangleBar,
|
---|
3774 | RightTriangle: RightTriangle,
|
---|
3775 | RightTriangleEqual: RightTriangleEqual,
|
---|
3776 | RightUpDownVector: RightUpDownVector,
|
---|
3777 | RightUpTeeVector: RightUpTeeVector,
|
---|
3778 | RightUpVectorBar: RightUpVectorBar,
|
---|
3779 | RightUpVector: RightUpVector,
|
---|
3780 | RightVectorBar: RightVectorBar,
|
---|
3781 | RightVector: RightVector,
|
---|
3782 | ring: ring,
|
---|
3783 | risingdotseq: risingdotseq,
|
---|
3784 | rlarr: rlarr,
|
---|
3785 | rlhar: rlhar,
|
---|
3786 | rlm: rlm,
|
---|
3787 | rmoustache: rmoustache,
|
---|
3788 | rmoust: rmoust,
|
---|
3789 | rnmid: rnmid,
|
---|
3790 | roang: roang,
|
---|
3791 | roarr: roarr,
|
---|
3792 | robrk: robrk,
|
---|
3793 | ropar: ropar,
|
---|
3794 | ropf: ropf,
|
---|
3795 | Ropf: Ropf,
|
---|
3796 | roplus: roplus,
|
---|
3797 | rotimes: rotimes,
|
---|
3798 | RoundImplies: RoundImplies,
|
---|
3799 | rpar: rpar,
|
---|
3800 | rpargt: rpargt,
|
---|
3801 | rppolint: rppolint,
|
---|
3802 | rrarr: rrarr,
|
---|
3803 | Rrightarrow: Rrightarrow,
|
---|
3804 | rsaquo: rsaquo,
|
---|
3805 | rscr: rscr,
|
---|
3806 | Rscr: Rscr,
|
---|
3807 | rsh: rsh,
|
---|
3808 | Rsh: Rsh,
|
---|
3809 | rsqb: rsqb,
|
---|
3810 | rsquo: rsquo,
|
---|
3811 | rsquor: rsquor,
|
---|
3812 | rthree: rthree,
|
---|
3813 | rtimes: rtimes,
|
---|
3814 | rtri: rtri,
|
---|
3815 | rtrie: rtrie,
|
---|
3816 | rtrif: rtrif,
|
---|
3817 | rtriltri: rtriltri,
|
---|
3818 | RuleDelayed: RuleDelayed,
|
---|
3819 | ruluhar: ruluhar,
|
---|
3820 | rx: rx,
|
---|
3821 | Sacute: Sacute,
|
---|
3822 | sacute: sacute,
|
---|
3823 | sbquo: sbquo,
|
---|
3824 | scap: scap,
|
---|
3825 | Scaron: Scaron,
|
---|
3826 | scaron: scaron,
|
---|
3827 | Sc: Sc,
|
---|
3828 | sc: sc,
|
---|
3829 | sccue: sccue,
|
---|
3830 | sce: sce,
|
---|
3831 | scE: scE,
|
---|
3832 | Scedil: Scedil,
|
---|
3833 | scedil: scedil,
|
---|
3834 | Scirc: Scirc,
|
---|
3835 | scirc: scirc,
|
---|
3836 | scnap: scnap,
|
---|
3837 | scnE: scnE,
|
---|
3838 | scnsim: scnsim,
|
---|
3839 | scpolint: scpolint,
|
---|
3840 | scsim: scsim,
|
---|
3841 | Scy: Scy,
|
---|
3842 | scy: scy,
|
---|
3843 | sdotb: sdotb,
|
---|
3844 | sdot: sdot,
|
---|
3845 | sdote: sdote,
|
---|
3846 | searhk: searhk,
|
---|
3847 | searr: searr,
|
---|
3848 | seArr: seArr,
|
---|
3849 | searrow: searrow,
|
---|
3850 | sect: sect,
|
---|
3851 | semi: semi,
|
---|
3852 | seswar: seswar,
|
---|
3853 | setminus: setminus,
|
---|
3854 | setmn: setmn,
|
---|
3855 | sext: sext,
|
---|
3856 | Sfr: Sfr,
|
---|
3857 | sfr: sfr,
|
---|
3858 | sfrown: sfrown,
|
---|
3859 | sharp: sharp,
|
---|
3860 | SHCHcy: SHCHcy,
|
---|
3861 | shchcy: shchcy,
|
---|
3862 | SHcy: SHcy,
|
---|
3863 | shcy: shcy,
|
---|
3864 | ShortDownArrow: ShortDownArrow,
|
---|
3865 | ShortLeftArrow: ShortLeftArrow,
|
---|
3866 | shortmid: shortmid,
|
---|
3867 | shortparallel: shortparallel,
|
---|
3868 | ShortRightArrow: ShortRightArrow,
|
---|
3869 | ShortUpArrow: ShortUpArrow,
|
---|
3870 | shy: shy,
|
---|
3871 | Sigma: Sigma,
|
---|
3872 | sigma: sigma,
|
---|
3873 | sigmaf: sigmaf,
|
---|
3874 | sigmav: sigmav,
|
---|
3875 | sim: sim,
|
---|
3876 | simdot: simdot,
|
---|
3877 | sime: sime,
|
---|
3878 | simeq: simeq,
|
---|
3879 | simg: simg,
|
---|
3880 | simgE: simgE,
|
---|
3881 | siml: siml,
|
---|
3882 | simlE: simlE,
|
---|
3883 | simne: simne,
|
---|
3884 | simplus: simplus,
|
---|
3885 | simrarr: simrarr,
|
---|
3886 | slarr: slarr,
|
---|
3887 | SmallCircle: SmallCircle,
|
---|
3888 | smallsetminus: smallsetminus,
|
---|
3889 | smashp: smashp,
|
---|
3890 | smeparsl: smeparsl,
|
---|
3891 | smid: smid,
|
---|
3892 | smile: smile,
|
---|
3893 | smt: smt,
|
---|
3894 | smte: smte,
|
---|
3895 | smtes: smtes,
|
---|
3896 | SOFTcy: SOFTcy,
|
---|
3897 | softcy: softcy,
|
---|
3898 | solbar: solbar,
|
---|
3899 | solb: solb,
|
---|
3900 | sol: sol,
|
---|
3901 | Sopf: Sopf,
|
---|
3902 | sopf: sopf,
|
---|
3903 | spades: spades,
|
---|
3904 | spadesuit: spadesuit,
|
---|
3905 | spar: spar,
|
---|
3906 | sqcap: sqcap,
|
---|
3907 | sqcaps: sqcaps,
|
---|
3908 | sqcup: sqcup,
|
---|
3909 | sqcups: sqcups,
|
---|
3910 | Sqrt: Sqrt,
|
---|
3911 | sqsub: sqsub,
|
---|
3912 | sqsube: sqsube,
|
---|
3913 | sqsubset: sqsubset,
|
---|
3914 | sqsubseteq: sqsubseteq,
|
---|
3915 | sqsup: sqsup,
|
---|
3916 | sqsupe: sqsupe,
|
---|
3917 | sqsupset: sqsupset,
|
---|
3918 | sqsupseteq: sqsupseteq,
|
---|
3919 | square: square,
|
---|
3920 | Square: Square,
|
---|
3921 | SquareIntersection: SquareIntersection,
|
---|
3922 | SquareSubset: SquareSubset,
|
---|
3923 | SquareSubsetEqual: SquareSubsetEqual,
|
---|
3924 | SquareSuperset: SquareSuperset,
|
---|
3925 | SquareSupersetEqual: SquareSupersetEqual,
|
---|
3926 | SquareUnion: SquareUnion,
|
---|
3927 | squarf: squarf,
|
---|
3928 | squ: squ,
|
---|
3929 | squf: squf,
|
---|
3930 | srarr: srarr,
|
---|
3931 | Sscr: Sscr,
|
---|
3932 | sscr: sscr,
|
---|
3933 | ssetmn: ssetmn,
|
---|
3934 | ssmile: ssmile,
|
---|
3935 | sstarf: sstarf,
|
---|
3936 | Star: Star,
|
---|
3937 | star: star,
|
---|
3938 | starf: starf,
|
---|
3939 | straightepsilon: straightepsilon,
|
---|
3940 | straightphi: straightphi,
|
---|
3941 | strns: strns,
|
---|
3942 | sub: sub,
|
---|
3943 | Sub: Sub,
|
---|
3944 | subdot: subdot,
|
---|
3945 | subE: subE,
|
---|
3946 | sube: sube,
|
---|
3947 | subedot: subedot,
|
---|
3948 | submult: submult,
|
---|
3949 | subnE: subnE,
|
---|
3950 | subne: subne,
|
---|
3951 | subplus: subplus,
|
---|
3952 | subrarr: subrarr,
|
---|
3953 | subset: subset,
|
---|
3954 | Subset: Subset,
|
---|
3955 | subseteq: subseteq,
|
---|
3956 | subseteqq: subseteqq,
|
---|
3957 | SubsetEqual: SubsetEqual,
|
---|
3958 | subsetneq: subsetneq,
|
---|
3959 | subsetneqq: subsetneqq,
|
---|
3960 | subsim: subsim,
|
---|
3961 | subsub: subsub,
|
---|
3962 | subsup: subsup,
|
---|
3963 | succapprox: succapprox,
|
---|
3964 | succ: succ,
|
---|
3965 | succcurlyeq: succcurlyeq,
|
---|
3966 | Succeeds: Succeeds,
|
---|
3967 | SucceedsEqual: SucceedsEqual,
|
---|
3968 | SucceedsSlantEqual: SucceedsSlantEqual,
|
---|
3969 | SucceedsTilde: SucceedsTilde,
|
---|
3970 | succeq: succeq,
|
---|
3971 | succnapprox: succnapprox,
|
---|
3972 | succneqq: succneqq,
|
---|
3973 | succnsim: succnsim,
|
---|
3974 | succsim: succsim,
|
---|
3975 | SuchThat: SuchThat,
|
---|
3976 | sum: sum,
|
---|
3977 | Sum: Sum,
|
---|
3978 | sung: sung,
|
---|
3979 | sup1: sup1,
|
---|
3980 | sup2: sup2,
|
---|
3981 | sup3: sup3,
|
---|
3982 | sup: sup,
|
---|
3983 | Sup: Sup,
|
---|
3984 | supdot: supdot,
|
---|
3985 | supdsub: supdsub,
|
---|
3986 | supE: supE,
|
---|
3987 | supe: supe,
|
---|
3988 | supedot: supedot,
|
---|
3989 | Superset: Superset,
|
---|
3990 | SupersetEqual: SupersetEqual,
|
---|
3991 | suphsol: suphsol,
|
---|
3992 | suphsub: suphsub,
|
---|
3993 | suplarr: suplarr,
|
---|
3994 | supmult: supmult,
|
---|
3995 | supnE: supnE,
|
---|
3996 | supne: supne,
|
---|
3997 | supplus: supplus,
|
---|
3998 | supset: supset,
|
---|
3999 | Supset: Supset,
|
---|
4000 | supseteq: supseteq,
|
---|
4001 | supseteqq: supseteqq,
|
---|
4002 | supsetneq: supsetneq,
|
---|
4003 | supsetneqq: supsetneqq,
|
---|
4004 | supsim: supsim,
|
---|
4005 | supsub: supsub,
|
---|
4006 | supsup: supsup,
|
---|
4007 | swarhk: swarhk,
|
---|
4008 | swarr: swarr,
|
---|
4009 | swArr: swArr,
|
---|
4010 | swarrow: swarrow,
|
---|
4011 | swnwar: swnwar,
|
---|
4012 | szlig: szlig,
|
---|
4013 | Tab: Tab,
|
---|
4014 | target: target,
|
---|
4015 | Tau: Tau,
|
---|
4016 | tau: tau,
|
---|
4017 | tbrk: tbrk,
|
---|
4018 | Tcaron: Tcaron,
|
---|
4019 | tcaron: tcaron,
|
---|
4020 | Tcedil: Tcedil,
|
---|
4021 | tcedil: tcedil,
|
---|
4022 | Tcy: Tcy,
|
---|
4023 | tcy: tcy,
|
---|
4024 | tdot: tdot,
|
---|
4025 | telrec: telrec,
|
---|
4026 | Tfr: Tfr,
|
---|
4027 | tfr: tfr,
|
---|
4028 | there4: there4,
|
---|
4029 | therefore: therefore,
|
---|
4030 | Therefore: Therefore,
|
---|
4031 | Theta: Theta,
|
---|
4032 | theta: theta,
|
---|
4033 | thetasym: thetasym,
|
---|
4034 | thetav: thetav,
|
---|
4035 | thickapprox: thickapprox,
|
---|
4036 | thicksim: thicksim,
|
---|
4037 | ThickSpace: ThickSpace,
|
---|
4038 | ThinSpace: ThinSpace,
|
---|
4039 | thinsp: thinsp,
|
---|
4040 | thkap: thkap,
|
---|
4041 | thksim: thksim,
|
---|
4042 | THORN: THORN,
|
---|
4043 | thorn: thorn,
|
---|
4044 | tilde: tilde,
|
---|
4045 | Tilde: Tilde,
|
---|
4046 | TildeEqual: TildeEqual,
|
---|
4047 | TildeFullEqual: TildeFullEqual,
|
---|
4048 | TildeTilde: TildeTilde,
|
---|
4049 | timesbar: timesbar,
|
---|
4050 | timesb: timesb,
|
---|
4051 | times: times,
|
---|
4052 | timesd: timesd,
|
---|
4053 | tint: tint,
|
---|
4054 | toea: toea,
|
---|
4055 | topbot: topbot,
|
---|
4056 | topcir: topcir,
|
---|
4057 | top: top,
|
---|
4058 | Topf: Topf,
|
---|
4059 | topf: topf,
|
---|
4060 | topfork: topfork,
|
---|
4061 | tosa: tosa,
|
---|
4062 | tprime: tprime,
|
---|
4063 | trade: trade,
|
---|
4064 | TRADE: TRADE,
|
---|
4065 | triangle: triangle,
|
---|
4066 | triangledown: triangledown,
|
---|
4067 | triangleleft: triangleleft,
|
---|
4068 | trianglelefteq: trianglelefteq,
|
---|
4069 | triangleq: triangleq,
|
---|
4070 | triangleright: triangleright,
|
---|
4071 | trianglerighteq: trianglerighteq,
|
---|
4072 | tridot: tridot,
|
---|
4073 | trie: trie,
|
---|
4074 | triminus: triminus,
|
---|
4075 | TripleDot: TripleDot,
|
---|
4076 | triplus: triplus,
|
---|
4077 | trisb: trisb,
|
---|
4078 | tritime: tritime,
|
---|
4079 | trpezium: trpezium,
|
---|
4080 | Tscr: Tscr,
|
---|
4081 | tscr: tscr,
|
---|
4082 | TScy: TScy,
|
---|
4083 | tscy: tscy,
|
---|
4084 | TSHcy: TSHcy,
|
---|
4085 | tshcy: tshcy,
|
---|
4086 | Tstrok: Tstrok,
|
---|
4087 | tstrok: tstrok,
|
---|
4088 | twixt: twixt,
|
---|
4089 | twoheadleftarrow: twoheadleftarrow,
|
---|
4090 | twoheadrightarrow: twoheadrightarrow,
|
---|
4091 | Uacute: Uacute,
|
---|
4092 | uacute: uacute,
|
---|
4093 | uarr: uarr,
|
---|
4094 | Uarr: Uarr,
|
---|
4095 | uArr: uArr,
|
---|
4096 | Uarrocir: Uarrocir,
|
---|
4097 | Ubrcy: Ubrcy,
|
---|
4098 | ubrcy: ubrcy,
|
---|
4099 | Ubreve: Ubreve,
|
---|
4100 | ubreve: ubreve,
|
---|
4101 | Ucirc: Ucirc,
|
---|
4102 | ucirc: ucirc,
|
---|
4103 | Ucy: Ucy,
|
---|
4104 | ucy: ucy,
|
---|
4105 | udarr: udarr,
|
---|
4106 | Udblac: Udblac,
|
---|
4107 | udblac: udblac,
|
---|
4108 | udhar: udhar,
|
---|
4109 | ufisht: ufisht,
|
---|
4110 | Ufr: Ufr,
|
---|
4111 | ufr: ufr,
|
---|
4112 | Ugrave: Ugrave,
|
---|
4113 | ugrave: ugrave,
|
---|
4114 | uHar: uHar,
|
---|
4115 | uharl: uharl,
|
---|
4116 | uharr: uharr,
|
---|
4117 | uhblk: uhblk,
|
---|
4118 | ulcorn: ulcorn,
|
---|
4119 | ulcorner: ulcorner,
|
---|
4120 | ulcrop: ulcrop,
|
---|
4121 | ultri: ultri,
|
---|
4122 | Umacr: Umacr,
|
---|
4123 | umacr: umacr,
|
---|
4124 | uml: uml,
|
---|
4125 | UnderBar: UnderBar,
|
---|
4126 | UnderBrace: UnderBrace,
|
---|
4127 | UnderBracket: UnderBracket,
|
---|
4128 | UnderParenthesis: UnderParenthesis,
|
---|
4129 | Union: Union,
|
---|
4130 | UnionPlus: UnionPlus,
|
---|
4131 | Uogon: Uogon,
|
---|
4132 | uogon: uogon,
|
---|
4133 | Uopf: Uopf,
|
---|
4134 | uopf: uopf,
|
---|
4135 | UpArrowBar: UpArrowBar,
|
---|
4136 | uparrow: uparrow,
|
---|
4137 | UpArrow: UpArrow,
|
---|
4138 | Uparrow: Uparrow,
|
---|
4139 | UpArrowDownArrow: UpArrowDownArrow,
|
---|
4140 | updownarrow: updownarrow,
|
---|
4141 | UpDownArrow: UpDownArrow,
|
---|
4142 | Updownarrow: Updownarrow,
|
---|
4143 | UpEquilibrium: UpEquilibrium,
|
---|
4144 | upharpoonleft: upharpoonleft,
|
---|
4145 | upharpoonright: upharpoonright,
|
---|
4146 | uplus: uplus,
|
---|
4147 | UpperLeftArrow: UpperLeftArrow,
|
---|
4148 | UpperRightArrow: UpperRightArrow,
|
---|
4149 | upsi: upsi,
|
---|
4150 | Upsi: Upsi,
|
---|
4151 | upsih: upsih,
|
---|
4152 | Upsilon: Upsilon,
|
---|
4153 | upsilon: upsilon,
|
---|
4154 | UpTeeArrow: UpTeeArrow,
|
---|
4155 | UpTee: UpTee,
|
---|
4156 | upuparrows: upuparrows,
|
---|
4157 | urcorn: urcorn,
|
---|
4158 | urcorner: urcorner,
|
---|
4159 | urcrop: urcrop,
|
---|
4160 | Uring: Uring,
|
---|
4161 | uring: uring,
|
---|
4162 | urtri: urtri,
|
---|
4163 | Uscr: Uscr,
|
---|
4164 | uscr: uscr,
|
---|
4165 | utdot: utdot,
|
---|
4166 | Utilde: Utilde,
|
---|
4167 | utilde: utilde,
|
---|
4168 | utri: utri,
|
---|
4169 | utrif: utrif,
|
---|
4170 | uuarr: uuarr,
|
---|
4171 | Uuml: Uuml,
|
---|
4172 | uuml: uuml,
|
---|
4173 | uwangle: uwangle,
|
---|
4174 | vangrt: vangrt,
|
---|
4175 | varepsilon: varepsilon,
|
---|
4176 | varkappa: varkappa,
|
---|
4177 | varnothing: varnothing,
|
---|
4178 | varphi: varphi,
|
---|
4179 | varpi: varpi,
|
---|
4180 | varpropto: varpropto,
|
---|
4181 | varr: varr,
|
---|
4182 | vArr: vArr,
|
---|
4183 | varrho: varrho,
|
---|
4184 | varsigma: varsigma,
|
---|
4185 | varsubsetneq: varsubsetneq,
|
---|
4186 | varsubsetneqq: varsubsetneqq,
|
---|
4187 | varsupsetneq: varsupsetneq,
|
---|
4188 | varsupsetneqq: varsupsetneqq,
|
---|
4189 | vartheta: vartheta,
|
---|
4190 | vartriangleleft: vartriangleleft,
|
---|
4191 | vartriangleright: vartriangleright,
|
---|
4192 | vBar: vBar,
|
---|
4193 | Vbar: Vbar,
|
---|
4194 | vBarv: vBarv,
|
---|
4195 | Vcy: Vcy,
|
---|
4196 | vcy: vcy,
|
---|
4197 | vdash: vdash,
|
---|
4198 | vDash: vDash,
|
---|
4199 | Vdash: Vdash,
|
---|
4200 | VDash: VDash,
|
---|
4201 | Vdashl: Vdashl,
|
---|
4202 | veebar: veebar,
|
---|
4203 | vee: vee,
|
---|
4204 | Vee: Vee,
|
---|
4205 | veeeq: veeeq,
|
---|
4206 | vellip: vellip,
|
---|
4207 | verbar: verbar,
|
---|
4208 | Verbar: Verbar,
|
---|
4209 | vert: vert,
|
---|
4210 | Vert: Vert,
|
---|
4211 | VerticalBar: VerticalBar,
|
---|
4212 | VerticalLine: VerticalLine,
|
---|
4213 | VerticalSeparator: VerticalSeparator,
|
---|
4214 | VerticalTilde: VerticalTilde,
|
---|
4215 | VeryThinSpace: VeryThinSpace,
|
---|
4216 | Vfr: Vfr,
|
---|
4217 | vfr: vfr,
|
---|
4218 | vltri: vltri,
|
---|
4219 | vnsub: vnsub,
|
---|
4220 | vnsup: vnsup,
|
---|
4221 | Vopf: Vopf,
|
---|
4222 | vopf: vopf,
|
---|
4223 | vprop: vprop,
|
---|
4224 | vrtri: vrtri,
|
---|
4225 | Vscr: Vscr,
|
---|
4226 | vscr: vscr,
|
---|
4227 | vsubnE: vsubnE,
|
---|
4228 | vsubne: vsubne,
|
---|
4229 | vsupnE: vsupnE,
|
---|
4230 | vsupne: vsupne,
|
---|
4231 | Vvdash: Vvdash,
|
---|
4232 | vzigzag: vzigzag,
|
---|
4233 | Wcirc: Wcirc,
|
---|
4234 | wcirc: wcirc,
|
---|
4235 | wedbar: wedbar,
|
---|
4236 | wedge: wedge,
|
---|
4237 | Wedge: Wedge,
|
---|
4238 | wedgeq: wedgeq,
|
---|
4239 | weierp: weierp,
|
---|
4240 | Wfr: Wfr,
|
---|
4241 | wfr: wfr,
|
---|
4242 | Wopf: Wopf,
|
---|
4243 | wopf: wopf,
|
---|
4244 | wp: wp,
|
---|
4245 | wr: wr,
|
---|
4246 | wreath: wreath,
|
---|
4247 | Wscr: Wscr,
|
---|
4248 | wscr: wscr,
|
---|
4249 | xcap: xcap,
|
---|
4250 | xcirc: xcirc,
|
---|
4251 | xcup: xcup,
|
---|
4252 | xdtri: xdtri,
|
---|
4253 | Xfr: Xfr,
|
---|
4254 | xfr: xfr,
|
---|
4255 | xharr: xharr,
|
---|
4256 | xhArr: xhArr,
|
---|
4257 | Xi: Xi,
|
---|
4258 | xi: xi,
|
---|
4259 | xlarr: xlarr,
|
---|
4260 | xlArr: xlArr,
|
---|
4261 | xmap: xmap,
|
---|
4262 | xnis: xnis,
|
---|
4263 | xodot: xodot,
|
---|
4264 | Xopf: Xopf,
|
---|
4265 | xopf: xopf,
|
---|
4266 | xoplus: xoplus,
|
---|
4267 | xotime: xotime,
|
---|
4268 | xrarr: xrarr,
|
---|
4269 | xrArr: xrArr,
|
---|
4270 | Xscr: Xscr,
|
---|
4271 | xscr: xscr,
|
---|
4272 | xsqcup: xsqcup,
|
---|
4273 | xuplus: xuplus,
|
---|
4274 | xutri: xutri,
|
---|
4275 | xvee: xvee,
|
---|
4276 | xwedge: xwedge,
|
---|
4277 | Yacute: Yacute,
|
---|
4278 | yacute: yacute,
|
---|
4279 | YAcy: YAcy,
|
---|
4280 | yacy: yacy,
|
---|
4281 | Ycirc: Ycirc,
|
---|
4282 | ycirc: ycirc,
|
---|
4283 | Ycy: Ycy,
|
---|
4284 | ycy: ycy,
|
---|
4285 | yen: yen,
|
---|
4286 | Yfr: Yfr,
|
---|
4287 | yfr: yfr,
|
---|
4288 | YIcy: YIcy,
|
---|
4289 | yicy: yicy,
|
---|
4290 | Yopf: Yopf,
|
---|
4291 | yopf: yopf,
|
---|
4292 | Yscr: Yscr,
|
---|
4293 | yscr: yscr,
|
---|
4294 | YUcy: YUcy,
|
---|
4295 | yucy: yucy,
|
---|
4296 | yuml: yuml,
|
---|
4297 | Yuml: Yuml,
|
---|
4298 | Zacute: Zacute,
|
---|
4299 | zacute: zacute,
|
---|
4300 | Zcaron: Zcaron,
|
---|
4301 | zcaron: zcaron,
|
---|
4302 | Zcy: Zcy,
|
---|
4303 | zcy: zcy,
|
---|
4304 | Zdot: Zdot,
|
---|
4305 | zdot: zdot,
|
---|
4306 | zeetrf: zeetrf,
|
---|
4307 | ZeroWidthSpace: ZeroWidthSpace,
|
---|
4308 | Zeta: Zeta,
|
---|
4309 | zeta: zeta,
|
---|
4310 | zfr: zfr,
|
---|
4311 | Zfr: Zfr,
|
---|
4312 | ZHcy: ZHcy,
|
---|
4313 | zhcy: zhcy,
|
---|
4314 | zigrarr: zigrarr,
|
---|
4315 | zopf: zopf,
|
---|
4316 | Zopf: Zopf,
|
---|
4317 | Zscr: Zscr,
|
---|
4318 | zscr: zscr,
|
---|
4319 | zwj: zwj,
|
---|
4320 | zwnj: zwnj
|
---|
4321 | };
|
---|
4322 |
|
---|
4323 | var entities$1 = {
|
---|
4324 | __proto__: null,
|
---|
4325 | Aacute: Aacute,
|
---|
4326 | aacute: aacute,
|
---|
4327 | Abreve: Abreve,
|
---|
4328 | abreve: abreve,
|
---|
4329 | ac: ac,
|
---|
4330 | acd: acd,
|
---|
4331 | acE: acE,
|
---|
4332 | Acirc: Acirc,
|
---|
4333 | acirc: acirc,
|
---|
4334 | acute: acute,
|
---|
4335 | Acy: Acy,
|
---|
4336 | acy: acy,
|
---|
4337 | AElig: AElig,
|
---|
4338 | aelig: aelig,
|
---|
4339 | af: af,
|
---|
4340 | Afr: Afr,
|
---|
4341 | afr: afr,
|
---|
4342 | Agrave: Agrave,
|
---|
4343 | agrave: agrave,
|
---|
4344 | alefsym: alefsym,
|
---|
4345 | aleph: aleph,
|
---|
4346 | Alpha: Alpha,
|
---|
4347 | alpha: alpha,
|
---|
4348 | Amacr: Amacr,
|
---|
4349 | amacr: amacr,
|
---|
4350 | amalg: amalg,
|
---|
4351 | amp: amp,
|
---|
4352 | AMP: AMP,
|
---|
4353 | andand: andand,
|
---|
4354 | And: And,
|
---|
4355 | and: and,
|
---|
4356 | andd: andd,
|
---|
4357 | andslope: andslope,
|
---|
4358 | andv: andv,
|
---|
4359 | ang: ang,
|
---|
4360 | ange: ange,
|
---|
4361 | angle: angle,
|
---|
4362 | angmsdaa: angmsdaa,
|
---|
4363 | angmsdab: angmsdab,
|
---|
4364 | angmsdac: angmsdac,
|
---|
4365 | angmsdad: angmsdad,
|
---|
4366 | angmsdae: angmsdae,
|
---|
4367 | angmsdaf: angmsdaf,
|
---|
4368 | angmsdag: angmsdag,
|
---|
4369 | angmsdah: angmsdah,
|
---|
4370 | angmsd: angmsd,
|
---|
4371 | angrt: angrt,
|
---|
4372 | angrtvb: angrtvb,
|
---|
4373 | angrtvbd: angrtvbd,
|
---|
4374 | angsph: angsph,
|
---|
4375 | angst: angst,
|
---|
4376 | angzarr: angzarr,
|
---|
4377 | Aogon: Aogon,
|
---|
4378 | aogon: aogon,
|
---|
4379 | Aopf: Aopf,
|
---|
4380 | aopf: aopf,
|
---|
4381 | apacir: apacir,
|
---|
4382 | ap: ap,
|
---|
4383 | apE: apE,
|
---|
4384 | ape: ape,
|
---|
4385 | apid: apid,
|
---|
4386 | apos: apos,
|
---|
4387 | ApplyFunction: ApplyFunction,
|
---|
4388 | approx: approx,
|
---|
4389 | approxeq: approxeq,
|
---|
4390 | Aring: Aring,
|
---|
4391 | aring: aring,
|
---|
4392 | Ascr: Ascr,
|
---|
4393 | ascr: ascr,
|
---|
4394 | Assign: Assign,
|
---|
4395 | ast: ast,
|
---|
4396 | asymp: asymp,
|
---|
4397 | asympeq: asympeq,
|
---|
4398 | Atilde: Atilde,
|
---|
4399 | atilde: atilde,
|
---|
4400 | Auml: Auml,
|
---|
4401 | auml: auml,
|
---|
4402 | awconint: awconint,
|
---|
4403 | awint: awint,
|
---|
4404 | backcong: backcong,
|
---|
4405 | backepsilon: backepsilon,
|
---|
4406 | backprime: backprime,
|
---|
4407 | backsim: backsim,
|
---|
4408 | backsimeq: backsimeq,
|
---|
4409 | Backslash: Backslash,
|
---|
4410 | Barv: Barv,
|
---|
4411 | barvee: barvee,
|
---|
4412 | barwed: barwed,
|
---|
4413 | Barwed: Barwed,
|
---|
4414 | barwedge: barwedge,
|
---|
4415 | bbrk: bbrk,
|
---|
4416 | bbrktbrk: bbrktbrk,
|
---|
4417 | bcong: bcong,
|
---|
4418 | Bcy: Bcy,
|
---|
4419 | bcy: bcy,
|
---|
4420 | bdquo: bdquo,
|
---|
4421 | becaus: becaus,
|
---|
4422 | because: because,
|
---|
4423 | Because: Because,
|
---|
4424 | bemptyv: bemptyv,
|
---|
4425 | bepsi: bepsi,
|
---|
4426 | bernou: bernou,
|
---|
4427 | Bernoullis: Bernoullis,
|
---|
4428 | Beta: Beta,
|
---|
4429 | beta: beta,
|
---|
4430 | beth: beth,
|
---|
4431 | between: between,
|
---|
4432 | Bfr: Bfr,
|
---|
4433 | bfr: bfr,
|
---|
4434 | bigcap: bigcap,
|
---|
4435 | bigcirc: bigcirc,
|
---|
4436 | bigcup: bigcup,
|
---|
4437 | bigodot: bigodot,
|
---|
4438 | bigoplus: bigoplus,
|
---|
4439 | bigotimes: bigotimes,
|
---|
4440 | bigsqcup: bigsqcup,
|
---|
4441 | bigstar: bigstar,
|
---|
4442 | bigtriangledown: bigtriangledown,
|
---|
4443 | bigtriangleup: bigtriangleup,
|
---|
4444 | biguplus: biguplus,
|
---|
4445 | bigvee: bigvee,
|
---|
4446 | bigwedge: bigwedge,
|
---|
4447 | bkarow: bkarow,
|
---|
4448 | blacklozenge: blacklozenge,
|
---|
4449 | blacksquare: blacksquare,
|
---|
4450 | blacktriangle: blacktriangle,
|
---|
4451 | blacktriangledown: blacktriangledown,
|
---|
4452 | blacktriangleleft: blacktriangleleft,
|
---|
4453 | blacktriangleright: blacktriangleright,
|
---|
4454 | blank: blank,
|
---|
4455 | blk12: blk12,
|
---|
4456 | blk14: blk14,
|
---|
4457 | blk34: blk34,
|
---|
4458 | block: block,
|
---|
4459 | bne: bne,
|
---|
4460 | bnequiv: bnequiv,
|
---|
4461 | bNot: bNot,
|
---|
4462 | bnot: bnot,
|
---|
4463 | Bopf: Bopf,
|
---|
4464 | bopf: bopf,
|
---|
4465 | bot: bot,
|
---|
4466 | bottom: bottom,
|
---|
4467 | bowtie: bowtie,
|
---|
4468 | boxbox: boxbox,
|
---|
4469 | boxdl: boxdl,
|
---|
4470 | boxdL: boxdL,
|
---|
4471 | boxDl: boxDl,
|
---|
4472 | boxDL: boxDL,
|
---|
4473 | boxdr: boxdr,
|
---|
4474 | boxdR: boxdR,
|
---|
4475 | boxDr: boxDr,
|
---|
4476 | boxDR: boxDR,
|
---|
4477 | boxh: boxh,
|
---|
4478 | boxH: boxH,
|
---|
4479 | boxhd: boxhd,
|
---|
4480 | boxHd: boxHd,
|
---|
4481 | boxhD: boxhD,
|
---|
4482 | boxHD: boxHD,
|
---|
4483 | boxhu: boxhu,
|
---|
4484 | boxHu: boxHu,
|
---|
4485 | boxhU: boxhU,
|
---|
4486 | boxHU: boxHU,
|
---|
4487 | boxminus: boxminus,
|
---|
4488 | boxplus: boxplus,
|
---|
4489 | boxtimes: boxtimes,
|
---|
4490 | boxul: boxul,
|
---|
4491 | boxuL: boxuL,
|
---|
4492 | boxUl: boxUl,
|
---|
4493 | boxUL: boxUL,
|
---|
4494 | boxur: boxur,
|
---|
4495 | boxuR: boxuR,
|
---|
4496 | boxUr: boxUr,
|
---|
4497 | boxUR: boxUR,
|
---|
4498 | boxv: boxv,
|
---|
4499 | boxV: boxV,
|
---|
4500 | boxvh: boxvh,
|
---|
4501 | boxvH: boxvH,
|
---|
4502 | boxVh: boxVh,
|
---|
4503 | boxVH: boxVH,
|
---|
4504 | boxvl: boxvl,
|
---|
4505 | boxvL: boxvL,
|
---|
4506 | boxVl: boxVl,
|
---|
4507 | boxVL: boxVL,
|
---|
4508 | boxvr: boxvr,
|
---|
4509 | boxvR: boxvR,
|
---|
4510 | boxVr: boxVr,
|
---|
4511 | boxVR: boxVR,
|
---|
4512 | bprime: bprime,
|
---|
4513 | breve: breve,
|
---|
4514 | Breve: Breve,
|
---|
4515 | brvbar: brvbar,
|
---|
4516 | bscr: bscr,
|
---|
4517 | Bscr: Bscr,
|
---|
4518 | bsemi: bsemi,
|
---|
4519 | bsim: bsim,
|
---|
4520 | bsime: bsime,
|
---|
4521 | bsolb: bsolb,
|
---|
4522 | bsol: bsol,
|
---|
4523 | bsolhsub: bsolhsub,
|
---|
4524 | bull: bull,
|
---|
4525 | bullet: bullet,
|
---|
4526 | bump: bump,
|
---|
4527 | bumpE: bumpE,
|
---|
4528 | bumpe: bumpe,
|
---|
4529 | Bumpeq: Bumpeq,
|
---|
4530 | bumpeq: bumpeq,
|
---|
4531 | Cacute: Cacute,
|
---|
4532 | cacute: cacute,
|
---|
4533 | capand: capand,
|
---|
4534 | capbrcup: capbrcup,
|
---|
4535 | capcap: capcap,
|
---|
4536 | cap: cap,
|
---|
4537 | Cap: Cap,
|
---|
4538 | capcup: capcup,
|
---|
4539 | capdot: capdot,
|
---|
4540 | CapitalDifferentialD: CapitalDifferentialD,
|
---|
4541 | caps: caps,
|
---|
4542 | caret: caret,
|
---|
4543 | caron: caron,
|
---|
4544 | Cayleys: Cayleys,
|
---|
4545 | ccaps: ccaps,
|
---|
4546 | Ccaron: Ccaron,
|
---|
4547 | ccaron: ccaron,
|
---|
4548 | Ccedil: Ccedil,
|
---|
4549 | ccedil: ccedil,
|
---|
4550 | Ccirc: Ccirc,
|
---|
4551 | ccirc: ccirc,
|
---|
4552 | Cconint: Cconint,
|
---|
4553 | ccups: ccups,
|
---|
4554 | ccupssm: ccupssm,
|
---|
4555 | Cdot: Cdot,
|
---|
4556 | cdot: cdot,
|
---|
4557 | cedil: cedil,
|
---|
4558 | Cedilla: Cedilla,
|
---|
4559 | cemptyv: cemptyv,
|
---|
4560 | cent: cent,
|
---|
4561 | centerdot: centerdot,
|
---|
4562 | CenterDot: CenterDot,
|
---|
4563 | cfr: cfr,
|
---|
4564 | Cfr: Cfr,
|
---|
4565 | CHcy: CHcy,
|
---|
4566 | chcy: chcy,
|
---|
4567 | check: check,
|
---|
4568 | checkmark: checkmark,
|
---|
4569 | Chi: Chi,
|
---|
4570 | chi: chi,
|
---|
4571 | circ: circ,
|
---|
4572 | circeq: circeq,
|
---|
4573 | circlearrowleft: circlearrowleft,
|
---|
4574 | circlearrowright: circlearrowright,
|
---|
4575 | circledast: circledast,
|
---|
4576 | circledcirc: circledcirc,
|
---|
4577 | circleddash: circleddash,
|
---|
4578 | CircleDot: CircleDot,
|
---|
4579 | circledR: circledR,
|
---|
4580 | circledS: circledS,
|
---|
4581 | CircleMinus: CircleMinus,
|
---|
4582 | CirclePlus: CirclePlus,
|
---|
4583 | CircleTimes: CircleTimes,
|
---|
4584 | cir: cir,
|
---|
4585 | cirE: cirE,
|
---|
4586 | cire: cire,
|
---|
4587 | cirfnint: cirfnint,
|
---|
4588 | cirmid: cirmid,
|
---|
4589 | cirscir: cirscir,
|
---|
4590 | ClockwiseContourIntegral: ClockwiseContourIntegral,
|
---|
4591 | CloseCurlyDoubleQuote: CloseCurlyDoubleQuote,
|
---|
4592 | CloseCurlyQuote: CloseCurlyQuote,
|
---|
4593 | clubs: clubs,
|
---|
4594 | clubsuit: clubsuit,
|
---|
4595 | colon: colon,
|
---|
4596 | Colon: Colon,
|
---|
4597 | Colone: Colone,
|
---|
4598 | colone: colone,
|
---|
4599 | coloneq: coloneq,
|
---|
4600 | comma: comma,
|
---|
4601 | commat: commat,
|
---|
4602 | comp: comp,
|
---|
4603 | compfn: compfn,
|
---|
4604 | complement: complement,
|
---|
4605 | complexes: complexes,
|
---|
4606 | cong: cong,
|
---|
4607 | congdot: congdot,
|
---|
4608 | Congruent: Congruent,
|
---|
4609 | conint: conint,
|
---|
4610 | Conint: Conint,
|
---|
4611 | ContourIntegral: ContourIntegral,
|
---|
4612 | copf: copf,
|
---|
4613 | Copf: Copf,
|
---|
4614 | coprod: coprod,
|
---|
4615 | Coproduct: Coproduct,
|
---|
4616 | copy: copy,
|
---|
4617 | COPY: COPY,
|
---|
4618 | copysr: copysr,
|
---|
4619 | CounterClockwiseContourIntegral: CounterClockwiseContourIntegral,
|
---|
4620 | crarr: crarr,
|
---|
4621 | cross: cross,
|
---|
4622 | Cross: Cross,
|
---|
4623 | Cscr: Cscr,
|
---|
4624 | cscr: cscr,
|
---|
4625 | csub: csub,
|
---|
4626 | csube: csube,
|
---|
4627 | csup: csup,
|
---|
4628 | csupe: csupe,
|
---|
4629 | ctdot: ctdot,
|
---|
4630 | cudarrl: cudarrl,
|
---|
4631 | cudarrr: cudarrr,
|
---|
4632 | cuepr: cuepr,
|
---|
4633 | cuesc: cuesc,
|
---|
4634 | cularr: cularr,
|
---|
4635 | cularrp: cularrp,
|
---|
4636 | cupbrcap: cupbrcap,
|
---|
4637 | cupcap: cupcap,
|
---|
4638 | CupCap: CupCap,
|
---|
4639 | cup: cup,
|
---|
4640 | Cup: Cup,
|
---|
4641 | cupcup: cupcup,
|
---|
4642 | cupdot: cupdot,
|
---|
4643 | cupor: cupor,
|
---|
4644 | cups: cups,
|
---|
4645 | curarr: curarr,
|
---|
4646 | curarrm: curarrm,
|
---|
4647 | curlyeqprec: curlyeqprec,
|
---|
4648 | curlyeqsucc: curlyeqsucc,
|
---|
4649 | curlyvee: curlyvee,
|
---|
4650 | curlywedge: curlywedge,
|
---|
4651 | curren: curren,
|
---|
4652 | curvearrowleft: curvearrowleft,
|
---|
4653 | curvearrowright: curvearrowright,
|
---|
4654 | cuvee: cuvee,
|
---|
4655 | cuwed: cuwed,
|
---|
4656 | cwconint: cwconint,
|
---|
4657 | cwint: cwint,
|
---|
4658 | cylcty: cylcty,
|
---|
4659 | dagger: dagger,
|
---|
4660 | Dagger: Dagger,
|
---|
4661 | daleth: daleth,
|
---|
4662 | darr: darr,
|
---|
4663 | Darr: Darr,
|
---|
4664 | dArr: dArr,
|
---|
4665 | dash: dash,
|
---|
4666 | Dashv: Dashv,
|
---|
4667 | dashv: dashv,
|
---|
4668 | dbkarow: dbkarow,
|
---|
4669 | dblac: dblac,
|
---|
4670 | Dcaron: Dcaron,
|
---|
4671 | dcaron: dcaron,
|
---|
4672 | Dcy: Dcy,
|
---|
4673 | dcy: dcy,
|
---|
4674 | ddagger: ddagger,
|
---|
4675 | ddarr: ddarr,
|
---|
4676 | DD: DD,
|
---|
4677 | dd: dd,
|
---|
4678 | DDotrahd: DDotrahd,
|
---|
4679 | ddotseq: ddotseq,
|
---|
4680 | deg: deg,
|
---|
4681 | Del: Del,
|
---|
4682 | Delta: Delta,
|
---|
4683 | delta: delta,
|
---|
4684 | demptyv: demptyv,
|
---|
4685 | dfisht: dfisht,
|
---|
4686 | Dfr: Dfr,
|
---|
4687 | dfr: dfr,
|
---|
4688 | dHar: dHar,
|
---|
4689 | dharl: dharl,
|
---|
4690 | dharr: dharr,
|
---|
4691 | DiacriticalAcute: DiacriticalAcute,
|
---|
4692 | DiacriticalDot: DiacriticalDot,
|
---|
4693 | DiacriticalDoubleAcute: DiacriticalDoubleAcute,
|
---|
4694 | DiacriticalGrave: DiacriticalGrave,
|
---|
4695 | DiacriticalTilde: DiacriticalTilde,
|
---|
4696 | diam: diam,
|
---|
4697 | diamond: diamond,
|
---|
4698 | Diamond: Diamond,
|
---|
4699 | diamondsuit: diamondsuit,
|
---|
4700 | diams: diams,
|
---|
4701 | die: die,
|
---|
4702 | DifferentialD: DifferentialD,
|
---|
4703 | digamma: digamma,
|
---|
4704 | disin: disin,
|
---|
4705 | div: div,
|
---|
4706 | divide: divide,
|
---|
4707 | divideontimes: divideontimes,
|
---|
4708 | divonx: divonx,
|
---|
4709 | DJcy: DJcy,
|
---|
4710 | djcy: djcy,
|
---|
4711 | dlcorn: dlcorn,
|
---|
4712 | dlcrop: dlcrop,
|
---|
4713 | dollar: dollar,
|
---|
4714 | Dopf: Dopf,
|
---|
4715 | dopf: dopf,
|
---|
4716 | Dot: Dot,
|
---|
4717 | dot: dot,
|
---|
4718 | DotDot: DotDot,
|
---|
4719 | doteq: doteq,
|
---|
4720 | doteqdot: doteqdot,
|
---|
4721 | DotEqual: DotEqual,
|
---|
4722 | dotminus: dotminus,
|
---|
4723 | dotplus: dotplus,
|
---|
4724 | dotsquare: dotsquare,
|
---|
4725 | doublebarwedge: doublebarwedge,
|
---|
4726 | DoubleContourIntegral: DoubleContourIntegral,
|
---|
4727 | DoubleDot: DoubleDot,
|
---|
4728 | DoubleDownArrow: DoubleDownArrow,
|
---|
4729 | DoubleLeftArrow: DoubleLeftArrow,
|
---|
4730 | DoubleLeftRightArrow: DoubleLeftRightArrow,
|
---|
4731 | DoubleLeftTee: DoubleLeftTee,
|
---|
4732 | DoubleLongLeftArrow: DoubleLongLeftArrow,
|
---|
4733 | DoubleLongLeftRightArrow: DoubleLongLeftRightArrow,
|
---|
4734 | DoubleLongRightArrow: DoubleLongRightArrow,
|
---|
4735 | DoubleRightArrow: DoubleRightArrow,
|
---|
4736 | DoubleRightTee: DoubleRightTee,
|
---|
4737 | DoubleUpArrow: DoubleUpArrow,
|
---|
4738 | DoubleUpDownArrow: DoubleUpDownArrow,
|
---|
4739 | DoubleVerticalBar: DoubleVerticalBar,
|
---|
4740 | DownArrowBar: DownArrowBar,
|
---|
4741 | downarrow: downarrow,
|
---|
4742 | DownArrow: DownArrow,
|
---|
4743 | Downarrow: Downarrow,
|
---|
4744 | DownArrowUpArrow: DownArrowUpArrow,
|
---|
4745 | DownBreve: DownBreve,
|
---|
4746 | downdownarrows: downdownarrows,
|
---|
4747 | downharpoonleft: downharpoonleft,
|
---|
4748 | downharpoonright: downharpoonright,
|
---|
4749 | DownLeftRightVector: DownLeftRightVector,
|
---|
4750 | DownLeftTeeVector: DownLeftTeeVector,
|
---|
4751 | DownLeftVectorBar: DownLeftVectorBar,
|
---|
4752 | DownLeftVector: DownLeftVector,
|
---|
4753 | DownRightTeeVector: DownRightTeeVector,
|
---|
4754 | DownRightVectorBar: DownRightVectorBar,
|
---|
4755 | DownRightVector: DownRightVector,
|
---|
4756 | DownTeeArrow: DownTeeArrow,
|
---|
4757 | DownTee: DownTee,
|
---|
4758 | drbkarow: drbkarow,
|
---|
4759 | drcorn: drcorn,
|
---|
4760 | drcrop: drcrop,
|
---|
4761 | Dscr: Dscr,
|
---|
4762 | dscr: dscr,
|
---|
4763 | DScy: DScy,
|
---|
4764 | dscy: dscy,
|
---|
4765 | dsol: dsol,
|
---|
4766 | Dstrok: Dstrok,
|
---|
4767 | dstrok: dstrok,
|
---|
4768 | dtdot: dtdot,
|
---|
4769 | dtri: dtri,
|
---|
4770 | dtrif: dtrif,
|
---|
4771 | duarr: duarr,
|
---|
4772 | duhar: duhar,
|
---|
4773 | dwangle: dwangle,
|
---|
4774 | DZcy: DZcy,
|
---|
4775 | dzcy: dzcy,
|
---|
4776 | dzigrarr: dzigrarr,
|
---|
4777 | Eacute: Eacute,
|
---|
4778 | eacute: eacute,
|
---|
4779 | easter: easter,
|
---|
4780 | Ecaron: Ecaron,
|
---|
4781 | ecaron: ecaron,
|
---|
4782 | Ecirc: Ecirc,
|
---|
4783 | ecirc: ecirc,
|
---|
4784 | ecir: ecir,
|
---|
4785 | ecolon: ecolon,
|
---|
4786 | Ecy: Ecy,
|
---|
4787 | ecy: ecy,
|
---|
4788 | eDDot: eDDot,
|
---|
4789 | Edot: Edot,
|
---|
4790 | edot: edot,
|
---|
4791 | eDot: eDot,
|
---|
4792 | ee: ee,
|
---|
4793 | efDot: efDot,
|
---|
4794 | Efr: Efr,
|
---|
4795 | efr: efr,
|
---|
4796 | eg: eg,
|
---|
4797 | Egrave: Egrave,
|
---|
4798 | egrave: egrave,
|
---|
4799 | egs: egs,
|
---|
4800 | egsdot: egsdot,
|
---|
4801 | el: el,
|
---|
4802 | Element: Element,
|
---|
4803 | elinters: elinters,
|
---|
4804 | ell: ell,
|
---|
4805 | els: els,
|
---|
4806 | elsdot: elsdot,
|
---|
4807 | Emacr: Emacr,
|
---|
4808 | emacr: emacr,
|
---|
4809 | empty: empty,
|
---|
4810 | emptyset: emptyset,
|
---|
4811 | EmptySmallSquare: EmptySmallSquare,
|
---|
4812 | emptyv: emptyv,
|
---|
4813 | EmptyVerySmallSquare: EmptyVerySmallSquare,
|
---|
4814 | emsp13: emsp13,
|
---|
4815 | emsp14: emsp14,
|
---|
4816 | emsp: emsp,
|
---|
4817 | ENG: ENG,
|
---|
4818 | eng: eng,
|
---|
4819 | ensp: ensp,
|
---|
4820 | Eogon: Eogon,
|
---|
4821 | eogon: eogon,
|
---|
4822 | Eopf: Eopf,
|
---|
4823 | eopf: eopf,
|
---|
4824 | epar: epar,
|
---|
4825 | eparsl: eparsl,
|
---|
4826 | eplus: eplus,
|
---|
4827 | epsi: epsi,
|
---|
4828 | Epsilon: Epsilon,
|
---|
4829 | epsilon: epsilon,
|
---|
4830 | epsiv: epsiv,
|
---|
4831 | eqcirc: eqcirc,
|
---|
4832 | eqcolon: eqcolon,
|
---|
4833 | eqsim: eqsim,
|
---|
4834 | eqslantgtr: eqslantgtr,
|
---|
4835 | eqslantless: eqslantless,
|
---|
4836 | Equal: Equal,
|
---|
4837 | equals: equals,
|
---|
4838 | EqualTilde: EqualTilde,
|
---|
4839 | equest: equest,
|
---|
4840 | Equilibrium: Equilibrium,
|
---|
4841 | equiv: equiv,
|
---|
4842 | equivDD: equivDD,
|
---|
4843 | eqvparsl: eqvparsl,
|
---|
4844 | erarr: erarr,
|
---|
4845 | erDot: erDot,
|
---|
4846 | escr: escr,
|
---|
4847 | Escr: Escr,
|
---|
4848 | esdot: esdot,
|
---|
4849 | Esim: Esim,
|
---|
4850 | esim: esim,
|
---|
4851 | Eta: Eta,
|
---|
4852 | eta: eta,
|
---|
4853 | ETH: ETH,
|
---|
4854 | eth: eth,
|
---|
4855 | Euml: Euml,
|
---|
4856 | euml: euml,
|
---|
4857 | euro: euro,
|
---|
4858 | excl: excl,
|
---|
4859 | exist: exist,
|
---|
4860 | Exists: Exists,
|
---|
4861 | expectation: expectation,
|
---|
4862 | exponentiale: exponentiale,
|
---|
4863 | ExponentialE: ExponentialE,
|
---|
4864 | fallingdotseq: fallingdotseq,
|
---|
4865 | Fcy: Fcy,
|
---|
4866 | fcy: fcy,
|
---|
4867 | female: female,
|
---|
4868 | ffilig: ffilig,
|
---|
4869 | fflig: fflig,
|
---|
4870 | ffllig: ffllig,
|
---|
4871 | Ffr: Ffr,
|
---|
4872 | ffr: ffr,
|
---|
4873 | filig: filig,
|
---|
4874 | FilledSmallSquare: FilledSmallSquare,
|
---|
4875 | FilledVerySmallSquare: FilledVerySmallSquare,
|
---|
4876 | fjlig: fjlig,
|
---|
4877 | flat: flat,
|
---|
4878 | fllig: fllig,
|
---|
4879 | fltns: fltns,
|
---|
4880 | fnof: fnof,
|
---|
4881 | Fopf: Fopf,
|
---|
4882 | fopf: fopf,
|
---|
4883 | forall: forall,
|
---|
4884 | ForAll: ForAll,
|
---|
4885 | fork: fork,
|
---|
4886 | forkv: forkv,
|
---|
4887 | Fouriertrf: Fouriertrf,
|
---|
4888 | fpartint: fpartint,
|
---|
4889 | frac12: frac12,
|
---|
4890 | frac13: frac13,
|
---|
4891 | frac14: frac14,
|
---|
4892 | frac15: frac15,
|
---|
4893 | frac16: frac16,
|
---|
4894 | frac18: frac18,
|
---|
4895 | frac23: frac23,
|
---|
4896 | frac25: frac25,
|
---|
4897 | frac34: frac34,
|
---|
4898 | frac35: frac35,
|
---|
4899 | frac38: frac38,
|
---|
4900 | frac45: frac45,
|
---|
4901 | frac56: frac56,
|
---|
4902 | frac58: frac58,
|
---|
4903 | frac78: frac78,
|
---|
4904 | frasl: frasl,
|
---|
4905 | frown: frown,
|
---|
4906 | fscr: fscr,
|
---|
4907 | Fscr: Fscr,
|
---|
4908 | gacute: gacute,
|
---|
4909 | Gamma: Gamma,
|
---|
4910 | gamma: gamma,
|
---|
4911 | Gammad: Gammad,
|
---|
4912 | gammad: gammad,
|
---|
4913 | gap: gap,
|
---|
4914 | Gbreve: Gbreve,
|
---|
4915 | gbreve: gbreve,
|
---|
4916 | Gcedil: Gcedil,
|
---|
4917 | Gcirc: Gcirc,
|
---|
4918 | gcirc: gcirc,
|
---|
4919 | Gcy: Gcy,
|
---|
4920 | gcy: gcy,
|
---|
4921 | Gdot: Gdot,
|
---|
4922 | gdot: gdot,
|
---|
4923 | ge: ge,
|
---|
4924 | gE: gE,
|
---|
4925 | gEl: gEl,
|
---|
4926 | gel: gel,
|
---|
4927 | geq: geq,
|
---|
4928 | geqq: geqq,
|
---|
4929 | geqslant: geqslant,
|
---|
4930 | gescc: gescc,
|
---|
4931 | ges: ges,
|
---|
4932 | gesdot: gesdot,
|
---|
4933 | gesdoto: gesdoto,
|
---|
4934 | gesdotol: gesdotol,
|
---|
4935 | gesl: gesl,
|
---|
4936 | gesles: gesles,
|
---|
4937 | Gfr: Gfr,
|
---|
4938 | gfr: gfr,
|
---|
4939 | gg: gg,
|
---|
4940 | Gg: Gg,
|
---|
4941 | ggg: ggg,
|
---|
4942 | gimel: gimel,
|
---|
4943 | GJcy: GJcy,
|
---|
4944 | gjcy: gjcy,
|
---|
4945 | gla: gla,
|
---|
4946 | gl: gl,
|
---|
4947 | glE: glE,
|
---|
4948 | glj: glj,
|
---|
4949 | gnap: gnap,
|
---|
4950 | gnapprox: gnapprox,
|
---|
4951 | gne: gne,
|
---|
4952 | gnE: gnE,
|
---|
4953 | gneq: gneq,
|
---|
4954 | gneqq: gneqq,
|
---|
4955 | gnsim: gnsim,
|
---|
4956 | Gopf: Gopf,
|
---|
4957 | gopf: gopf,
|
---|
4958 | grave: grave,
|
---|
4959 | GreaterEqual: GreaterEqual,
|
---|
4960 | GreaterEqualLess: GreaterEqualLess,
|
---|
4961 | GreaterFullEqual: GreaterFullEqual,
|
---|
4962 | GreaterGreater: GreaterGreater,
|
---|
4963 | GreaterLess: GreaterLess,
|
---|
4964 | GreaterSlantEqual: GreaterSlantEqual,
|
---|
4965 | GreaterTilde: GreaterTilde,
|
---|
4966 | Gscr: Gscr,
|
---|
4967 | gscr: gscr,
|
---|
4968 | gsim: gsim,
|
---|
4969 | gsime: gsime,
|
---|
4970 | gsiml: gsiml,
|
---|
4971 | gtcc: gtcc,
|
---|
4972 | gtcir: gtcir,
|
---|
4973 | gt: gt,
|
---|
4974 | GT: GT,
|
---|
4975 | Gt: Gt,
|
---|
4976 | gtdot: gtdot,
|
---|
4977 | gtlPar: gtlPar,
|
---|
4978 | gtquest: gtquest,
|
---|
4979 | gtrapprox: gtrapprox,
|
---|
4980 | gtrarr: gtrarr,
|
---|
4981 | gtrdot: gtrdot,
|
---|
4982 | gtreqless: gtreqless,
|
---|
4983 | gtreqqless: gtreqqless,
|
---|
4984 | gtrless: gtrless,
|
---|
4985 | gtrsim: gtrsim,
|
---|
4986 | gvertneqq: gvertneqq,
|
---|
4987 | gvnE: gvnE,
|
---|
4988 | Hacek: Hacek,
|
---|
4989 | hairsp: hairsp,
|
---|
4990 | half: half,
|
---|
4991 | hamilt: hamilt,
|
---|
4992 | HARDcy: HARDcy,
|
---|
4993 | hardcy: hardcy,
|
---|
4994 | harrcir: harrcir,
|
---|
4995 | harr: harr,
|
---|
4996 | hArr: hArr,
|
---|
4997 | harrw: harrw,
|
---|
4998 | Hat: Hat,
|
---|
4999 | hbar: hbar,
|
---|
5000 | Hcirc: Hcirc,
|
---|
5001 | hcirc: hcirc,
|
---|
5002 | hearts: hearts,
|
---|
5003 | heartsuit: heartsuit,
|
---|
5004 | hellip: hellip,
|
---|
5005 | hercon: hercon,
|
---|
5006 | hfr: hfr,
|
---|
5007 | Hfr: Hfr,
|
---|
5008 | HilbertSpace: HilbertSpace,
|
---|
5009 | hksearow: hksearow,
|
---|
5010 | hkswarow: hkswarow,
|
---|
5011 | hoarr: hoarr,
|
---|
5012 | homtht: homtht,
|
---|
5013 | hookleftarrow: hookleftarrow,
|
---|
5014 | hookrightarrow: hookrightarrow,
|
---|
5015 | hopf: hopf,
|
---|
5016 | Hopf: Hopf,
|
---|
5017 | horbar: horbar,
|
---|
5018 | HorizontalLine: HorizontalLine,
|
---|
5019 | hscr: hscr,
|
---|
5020 | Hscr: Hscr,
|
---|
5021 | hslash: hslash,
|
---|
5022 | Hstrok: Hstrok,
|
---|
5023 | hstrok: hstrok,
|
---|
5024 | HumpDownHump: HumpDownHump,
|
---|
5025 | HumpEqual: HumpEqual,
|
---|
5026 | hybull: hybull,
|
---|
5027 | hyphen: hyphen,
|
---|
5028 | Iacute: Iacute,
|
---|
5029 | iacute: iacute,
|
---|
5030 | ic: ic,
|
---|
5031 | Icirc: Icirc,
|
---|
5032 | icirc: icirc,
|
---|
5033 | Icy: Icy,
|
---|
5034 | icy: icy,
|
---|
5035 | Idot: Idot,
|
---|
5036 | IEcy: IEcy,
|
---|
5037 | iecy: iecy,
|
---|
5038 | iexcl: iexcl,
|
---|
5039 | iff: iff,
|
---|
5040 | ifr: ifr,
|
---|
5041 | Ifr: Ifr,
|
---|
5042 | Igrave: Igrave,
|
---|
5043 | igrave: igrave,
|
---|
5044 | ii: ii,
|
---|
5045 | iiiint: iiiint,
|
---|
5046 | iiint: iiint,
|
---|
5047 | iinfin: iinfin,
|
---|
5048 | iiota: iiota,
|
---|
5049 | IJlig: IJlig,
|
---|
5050 | ijlig: ijlig,
|
---|
5051 | Imacr: Imacr,
|
---|
5052 | imacr: imacr,
|
---|
5053 | image: image,
|
---|
5054 | ImaginaryI: ImaginaryI,
|
---|
5055 | imagline: imagline,
|
---|
5056 | imagpart: imagpart,
|
---|
5057 | imath: imath,
|
---|
5058 | Im: Im,
|
---|
5059 | imof: imof,
|
---|
5060 | imped: imped,
|
---|
5061 | Implies: Implies,
|
---|
5062 | incare: incare,
|
---|
5063 | infin: infin,
|
---|
5064 | infintie: infintie,
|
---|
5065 | inodot: inodot,
|
---|
5066 | intcal: intcal,
|
---|
5067 | int: int,
|
---|
5068 | Int: Int,
|
---|
5069 | integers: integers,
|
---|
5070 | Integral: Integral,
|
---|
5071 | intercal: intercal,
|
---|
5072 | Intersection: Intersection,
|
---|
5073 | intlarhk: intlarhk,
|
---|
5074 | intprod: intprod,
|
---|
5075 | InvisibleComma: InvisibleComma,
|
---|
5076 | InvisibleTimes: InvisibleTimes,
|
---|
5077 | IOcy: IOcy,
|
---|
5078 | iocy: iocy,
|
---|
5079 | Iogon: Iogon,
|
---|
5080 | iogon: iogon,
|
---|
5081 | Iopf: Iopf,
|
---|
5082 | iopf: iopf,
|
---|
5083 | Iota: Iota,
|
---|
5084 | iota: iota,
|
---|
5085 | iprod: iprod,
|
---|
5086 | iquest: iquest,
|
---|
5087 | iscr: iscr,
|
---|
5088 | Iscr: Iscr,
|
---|
5089 | isin: isin,
|
---|
5090 | isindot: isindot,
|
---|
5091 | isinE: isinE,
|
---|
5092 | isins: isins,
|
---|
5093 | isinsv: isinsv,
|
---|
5094 | isinv: isinv,
|
---|
5095 | it: it,
|
---|
5096 | Itilde: Itilde,
|
---|
5097 | itilde: itilde,
|
---|
5098 | Iukcy: Iukcy,
|
---|
5099 | iukcy: iukcy,
|
---|
5100 | Iuml: Iuml,
|
---|
5101 | iuml: iuml,
|
---|
5102 | Jcirc: Jcirc,
|
---|
5103 | jcirc: jcirc,
|
---|
5104 | Jcy: Jcy,
|
---|
5105 | jcy: jcy,
|
---|
5106 | Jfr: Jfr,
|
---|
5107 | jfr: jfr,
|
---|
5108 | jmath: jmath,
|
---|
5109 | Jopf: Jopf,
|
---|
5110 | jopf: jopf,
|
---|
5111 | Jscr: Jscr,
|
---|
5112 | jscr: jscr,
|
---|
5113 | Jsercy: Jsercy,
|
---|
5114 | jsercy: jsercy,
|
---|
5115 | Jukcy: Jukcy,
|
---|
5116 | jukcy: jukcy,
|
---|
5117 | Kappa: Kappa,
|
---|
5118 | kappa: kappa,
|
---|
5119 | kappav: kappav,
|
---|
5120 | Kcedil: Kcedil,
|
---|
5121 | kcedil: kcedil,
|
---|
5122 | Kcy: Kcy,
|
---|
5123 | kcy: kcy,
|
---|
5124 | Kfr: Kfr,
|
---|
5125 | kfr: kfr,
|
---|
5126 | kgreen: kgreen,
|
---|
5127 | KHcy: KHcy,
|
---|
5128 | khcy: khcy,
|
---|
5129 | KJcy: KJcy,
|
---|
5130 | kjcy: kjcy,
|
---|
5131 | Kopf: Kopf,
|
---|
5132 | kopf: kopf,
|
---|
5133 | Kscr: Kscr,
|
---|
5134 | kscr: kscr,
|
---|
5135 | lAarr: lAarr,
|
---|
5136 | Lacute: Lacute,
|
---|
5137 | lacute: lacute,
|
---|
5138 | laemptyv: laemptyv,
|
---|
5139 | lagran: lagran,
|
---|
5140 | Lambda: Lambda,
|
---|
5141 | lambda: lambda,
|
---|
5142 | lang: lang,
|
---|
5143 | Lang: Lang,
|
---|
5144 | langd: langd,
|
---|
5145 | langle: langle,
|
---|
5146 | lap: lap,
|
---|
5147 | Laplacetrf: Laplacetrf,
|
---|
5148 | laquo: laquo,
|
---|
5149 | larrb: larrb,
|
---|
5150 | larrbfs: larrbfs,
|
---|
5151 | larr: larr,
|
---|
5152 | Larr: Larr,
|
---|
5153 | lArr: lArr,
|
---|
5154 | larrfs: larrfs,
|
---|
5155 | larrhk: larrhk,
|
---|
5156 | larrlp: larrlp,
|
---|
5157 | larrpl: larrpl,
|
---|
5158 | larrsim: larrsim,
|
---|
5159 | larrtl: larrtl,
|
---|
5160 | latail: latail,
|
---|
5161 | lAtail: lAtail,
|
---|
5162 | lat: lat,
|
---|
5163 | late: late,
|
---|
5164 | lates: lates,
|
---|
5165 | lbarr: lbarr,
|
---|
5166 | lBarr: lBarr,
|
---|
5167 | lbbrk: lbbrk,
|
---|
5168 | lbrace: lbrace,
|
---|
5169 | lbrack: lbrack,
|
---|
5170 | lbrke: lbrke,
|
---|
5171 | lbrksld: lbrksld,
|
---|
5172 | lbrkslu: lbrkslu,
|
---|
5173 | Lcaron: Lcaron,
|
---|
5174 | lcaron: lcaron,
|
---|
5175 | Lcedil: Lcedil,
|
---|
5176 | lcedil: lcedil,
|
---|
5177 | lceil: lceil,
|
---|
5178 | lcub: lcub,
|
---|
5179 | Lcy: Lcy,
|
---|
5180 | lcy: lcy,
|
---|
5181 | ldca: ldca,
|
---|
5182 | ldquo: ldquo,
|
---|
5183 | ldquor: ldquor,
|
---|
5184 | ldrdhar: ldrdhar,
|
---|
5185 | ldrushar: ldrushar,
|
---|
5186 | ldsh: ldsh,
|
---|
5187 | le: le,
|
---|
5188 | lE: lE,
|
---|
5189 | LeftAngleBracket: LeftAngleBracket,
|
---|
5190 | LeftArrowBar: LeftArrowBar,
|
---|
5191 | leftarrow: leftarrow,
|
---|
5192 | LeftArrow: LeftArrow,
|
---|
5193 | Leftarrow: Leftarrow,
|
---|
5194 | LeftArrowRightArrow: LeftArrowRightArrow,
|
---|
5195 | leftarrowtail: leftarrowtail,
|
---|
5196 | LeftCeiling: LeftCeiling,
|
---|
5197 | LeftDoubleBracket: LeftDoubleBracket,
|
---|
5198 | LeftDownTeeVector: LeftDownTeeVector,
|
---|
5199 | LeftDownVectorBar: LeftDownVectorBar,
|
---|
5200 | LeftDownVector: LeftDownVector,
|
---|
5201 | LeftFloor: LeftFloor,
|
---|
5202 | leftharpoondown: leftharpoondown,
|
---|
5203 | leftharpoonup: leftharpoonup,
|
---|
5204 | leftleftarrows: leftleftarrows,
|
---|
5205 | leftrightarrow: leftrightarrow,
|
---|
5206 | LeftRightArrow: LeftRightArrow,
|
---|
5207 | Leftrightarrow: Leftrightarrow,
|
---|
5208 | leftrightarrows: leftrightarrows,
|
---|
5209 | leftrightharpoons: leftrightharpoons,
|
---|
5210 | leftrightsquigarrow: leftrightsquigarrow,
|
---|
5211 | LeftRightVector: LeftRightVector,
|
---|
5212 | LeftTeeArrow: LeftTeeArrow,
|
---|
5213 | LeftTee: LeftTee,
|
---|
5214 | LeftTeeVector: LeftTeeVector,
|
---|
5215 | leftthreetimes: leftthreetimes,
|
---|
5216 | LeftTriangleBar: LeftTriangleBar,
|
---|
5217 | LeftTriangle: LeftTriangle,
|
---|
5218 | LeftTriangleEqual: LeftTriangleEqual,
|
---|
5219 | LeftUpDownVector: LeftUpDownVector,
|
---|
5220 | LeftUpTeeVector: LeftUpTeeVector,
|
---|
5221 | LeftUpVectorBar: LeftUpVectorBar,
|
---|
5222 | LeftUpVector: LeftUpVector,
|
---|
5223 | LeftVectorBar: LeftVectorBar,
|
---|
5224 | LeftVector: LeftVector,
|
---|
5225 | lEg: lEg,
|
---|
5226 | leg: leg,
|
---|
5227 | leq: leq,
|
---|
5228 | leqq: leqq,
|
---|
5229 | leqslant: leqslant,
|
---|
5230 | lescc: lescc,
|
---|
5231 | les: les,
|
---|
5232 | lesdot: lesdot,
|
---|
5233 | lesdoto: lesdoto,
|
---|
5234 | lesdotor: lesdotor,
|
---|
5235 | lesg: lesg,
|
---|
5236 | lesges: lesges,
|
---|
5237 | lessapprox: lessapprox,
|
---|
5238 | lessdot: lessdot,
|
---|
5239 | lesseqgtr: lesseqgtr,
|
---|
5240 | lesseqqgtr: lesseqqgtr,
|
---|
5241 | LessEqualGreater: LessEqualGreater,
|
---|
5242 | LessFullEqual: LessFullEqual,
|
---|
5243 | LessGreater: LessGreater,
|
---|
5244 | lessgtr: lessgtr,
|
---|
5245 | LessLess: LessLess,
|
---|
5246 | lesssim: lesssim,
|
---|
5247 | LessSlantEqual: LessSlantEqual,
|
---|
5248 | LessTilde: LessTilde,
|
---|
5249 | lfisht: lfisht,
|
---|
5250 | lfloor: lfloor,
|
---|
5251 | Lfr: Lfr,
|
---|
5252 | lfr: lfr,
|
---|
5253 | lg: lg,
|
---|
5254 | lgE: lgE,
|
---|
5255 | lHar: lHar,
|
---|
5256 | lhard: lhard,
|
---|
5257 | lharu: lharu,
|
---|
5258 | lharul: lharul,
|
---|
5259 | lhblk: lhblk,
|
---|
5260 | LJcy: LJcy,
|
---|
5261 | ljcy: ljcy,
|
---|
5262 | llarr: llarr,
|
---|
5263 | ll: ll,
|
---|
5264 | Ll: Ll,
|
---|
5265 | llcorner: llcorner,
|
---|
5266 | Lleftarrow: Lleftarrow,
|
---|
5267 | llhard: llhard,
|
---|
5268 | lltri: lltri,
|
---|
5269 | Lmidot: Lmidot,
|
---|
5270 | lmidot: lmidot,
|
---|
5271 | lmoustache: lmoustache,
|
---|
5272 | lmoust: lmoust,
|
---|
5273 | lnap: lnap,
|
---|
5274 | lnapprox: lnapprox,
|
---|
5275 | lne: lne,
|
---|
5276 | lnE: lnE,
|
---|
5277 | lneq: lneq,
|
---|
5278 | lneqq: lneqq,
|
---|
5279 | lnsim: lnsim,
|
---|
5280 | loang: loang,
|
---|
5281 | loarr: loarr,
|
---|
5282 | lobrk: lobrk,
|
---|
5283 | longleftarrow: longleftarrow,
|
---|
5284 | LongLeftArrow: LongLeftArrow,
|
---|
5285 | Longleftarrow: Longleftarrow,
|
---|
5286 | longleftrightarrow: longleftrightarrow,
|
---|
5287 | LongLeftRightArrow: LongLeftRightArrow,
|
---|
5288 | Longleftrightarrow: Longleftrightarrow,
|
---|
5289 | longmapsto: longmapsto,
|
---|
5290 | longrightarrow: longrightarrow,
|
---|
5291 | LongRightArrow: LongRightArrow,
|
---|
5292 | Longrightarrow: Longrightarrow,
|
---|
5293 | looparrowleft: looparrowleft,
|
---|
5294 | looparrowright: looparrowright,
|
---|
5295 | lopar: lopar,
|
---|
5296 | Lopf: Lopf,
|
---|
5297 | lopf: lopf,
|
---|
5298 | loplus: loplus,
|
---|
5299 | lotimes: lotimes,
|
---|
5300 | lowast: lowast,
|
---|
5301 | lowbar: lowbar,
|
---|
5302 | LowerLeftArrow: LowerLeftArrow,
|
---|
5303 | LowerRightArrow: LowerRightArrow,
|
---|
5304 | loz: loz,
|
---|
5305 | lozenge: lozenge,
|
---|
5306 | lozf: lozf,
|
---|
5307 | lpar: lpar,
|
---|
5308 | lparlt: lparlt,
|
---|
5309 | lrarr: lrarr,
|
---|
5310 | lrcorner: lrcorner,
|
---|
5311 | lrhar: lrhar,
|
---|
5312 | lrhard: lrhard,
|
---|
5313 | lrm: lrm,
|
---|
5314 | lrtri: lrtri,
|
---|
5315 | lsaquo: lsaquo,
|
---|
5316 | lscr: lscr,
|
---|
5317 | Lscr: Lscr,
|
---|
5318 | lsh: lsh,
|
---|
5319 | Lsh: Lsh,
|
---|
5320 | lsim: lsim,
|
---|
5321 | lsime: lsime,
|
---|
5322 | lsimg: lsimg,
|
---|
5323 | lsqb: lsqb,
|
---|
5324 | lsquo: lsquo,
|
---|
5325 | lsquor: lsquor,
|
---|
5326 | Lstrok: Lstrok,
|
---|
5327 | lstrok: lstrok,
|
---|
5328 | ltcc: ltcc,
|
---|
5329 | ltcir: ltcir,
|
---|
5330 | lt: lt,
|
---|
5331 | LT: LT,
|
---|
5332 | Lt: Lt,
|
---|
5333 | ltdot: ltdot,
|
---|
5334 | lthree: lthree,
|
---|
5335 | ltimes: ltimes,
|
---|
5336 | ltlarr: ltlarr,
|
---|
5337 | ltquest: ltquest,
|
---|
5338 | ltri: ltri,
|
---|
5339 | ltrie: ltrie,
|
---|
5340 | ltrif: ltrif,
|
---|
5341 | ltrPar: ltrPar,
|
---|
5342 | lurdshar: lurdshar,
|
---|
5343 | luruhar: luruhar,
|
---|
5344 | lvertneqq: lvertneqq,
|
---|
5345 | lvnE: lvnE,
|
---|
5346 | macr: macr,
|
---|
5347 | male: male,
|
---|
5348 | malt: malt,
|
---|
5349 | maltese: maltese,
|
---|
5350 | map: map,
|
---|
5351 | mapsto: mapsto,
|
---|
5352 | mapstodown: mapstodown,
|
---|
5353 | mapstoleft: mapstoleft,
|
---|
5354 | mapstoup: mapstoup,
|
---|
5355 | marker: marker,
|
---|
5356 | mcomma: mcomma,
|
---|
5357 | Mcy: Mcy,
|
---|
5358 | mcy: mcy,
|
---|
5359 | mdash: mdash,
|
---|
5360 | mDDot: mDDot,
|
---|
5361 | measuredangle: measuredangle,
|
---|
5362 | MediumSpace: MediumSpace,
|
---|
5363 | Mellintrf: Mellintrf,
|
---|
5364 | Mfr: Mfr,
|
---|
5365 | mfr: mfr,
|
---|
5366 | mho: mho,
|
---|
5367 | micro: micro,
|
---|
5368 | midast: midast,
|
---|
5369 | midcir: midcir,
|
---|
5370 | mid: mid,
|
---|
5371 | middot: middot,
|
---|
5372 | minusb: minusb,
|
---|
5373 | minus: minus,
|
---|
5374 | minusd: minusd,
|
---|
5375 | minusdu: minusdu,
|
---|
5376 | MinusPlus: MinusPlus,
|
---|
5377 | mlcp: mlcp,
|
---|
5378 | mldr: mldr,
|
---|
5379 | mnplus: mnplus,
|
---|
5380 | models: models,
|
---|
5381 | Mopf: Mopf,
|
---|
5382 | mopf: mopf,
|
---|
5383 | mp: mp,
|
---|
5384 | mscr: mscr,
|
---|
5385 | Mscr: Mscr,
|
---|
5386 | mstpos: mstpos,
|
---|
5387 | Mu: Mu,
|
---|
5388 | mu: mu,
|
---|
5389 | multimap: multimap,
|
---|
5390 | mumap: mumap,
|
---|
5391 | nabla: nabla,
|
---|
5392 | Nacute: Nacute,
|
---|
5393 | nacute: nacute,
|
---|
5394 | nang: nang,
|
---|
5395 | nap: nap,
|
---|
5396 | napE: napE,
|
---|
5397 | napid: napid,
|
---|
5398 | napos: napos,
|
---|
5399 | napprox: napprox,
|
---|
5400 | natural: natural,
|
---|
5401 | naturals: naturals,
|
---|
5402 | natur: natur,
|
---|
5403 | nbsp: nbsp,
|
---|
5404 | nbump: nbump,
|
---|
5405 | nbumpe: nbumpe,
|
---|
5406 | ncap: ncap,
|
---|
5407 | Ncaron: Ncaron,
|
---|
5408 | ncaron: ncaron,
|
---|
5409 | Ncedil: Ncedil,
|
---|
5410 | ncedil: ncedil,
|
---|
5411 | ncong: ncong,
|
---|
5412 | ncongdot: ncongdot,
|
---|
5413 | ncup: ncup,
|
---|
5414 | Ncy: Ncy,
|
---|
5415 | ncy: ncy,
|
---|
5416 | ndash: ndash,
|
---|
5417 | nearhk: nearhk,
|
---|
5418 | nearr: nearr,
|
---|
5419 | neArr: neArr,
|
---|
5420 | nearrow: nearrow,
|
---|
5421 | ne: ne,
|
---|
5422 | nedot: nedot,
|
---|
5423 | NegativeMediumSpace: NegativeMediumSpace,
|
---|
5424 | NegativeThickSpace: NegativeThickSpace,
|
---|
5425 | NegativeThinSpace: NegativeThinSpace,
|
---|
5426 | NegativeVeryThinSpace: NegativeVeryThinSpace,
|
---|
5427 | nequiv: nequiv,
|
---|
5428 | nesear: nesear,
|
---|
5429 | nesim: nesim,
|
---|
5430 | NestedGreaterGreater: NestedGreaterGreater,
|
---|
5431 | NestedLessLess: NestedLessLess,
|
---|
5432 | NewLine: NewLine,
|
---|
5433 | nexist: nexist,
|
---|
5434 | nexists: nexists,
|
---|
5435 | Nfr: Nfr,
|
---|
5436 | nfr: nfr,
|
---|
5437 | ngE: ngE,
|
---|
5438 | nge: nge,
|
---|
5439 | ngeq: ngeq,
|
---|
5440 | ngeqq: ngeqq,
|
---|
5441 | ngeqslant: ngeqslant,
|
---|
5442 | nges: nges,
|
---|
5443 | nGg: nGg,
|
---|
5444 | ngsim: ngsim,
|
---|
5445 | nGt: nGt,
|
---|
5446 | ngt: ngt,
|
---|
5447 | ngtr: ngtr,
|
---|
5448 | nGtv: nGtv,
|
---|
5449 | nharr: nharr,
|
---|
5450 | nhArr: nhArr,
|
---|
5451 | nhpar: nhpar,
|
---|
5452 | ni: ni,
|
---|
5453 | nis: nis,
|
---|
5454 | nisd: nisd,
|
---|
5455 | niv: niv,
|
---|
5456 | NJcy: NJcy,
|
---|
5457 | njcy: njcy,
|
---|
5458 | nlarr: nlarr,
|
---|
5459 | nlArr: nlArr,
|
---|
5460 | nldr: nldr,
|
---|
5461 | nlE: nlE,
|
---|
5462 | nle: nle,
|
---|
5463 | nleftarrow: nleftarrow,
|
---|
5464 | nLeftarrow: nLeftarrow,
|
---|
5465 | nleftrightarrow: nleftrightarrow,
|
---|
5466 | nLeftrightarrow: nLeftrightarrow,
|
---|
5467 | nleq: nleq,
|
---|
5468 | nleqq: nleqq,
|
---|
5469 | nleqslant: nleqslant,
|
---|
5470 | nles: nles,
|
---|
5471 | nless: nless,
|
---|
5472 | nLl: nLl,
|
---|
5473 | nlsim: nlsim,
|
---|
5474 | nLt: nLt,
|
---|
5475 | nlt: nlt,
|
---|
5476 | nltri: nltri,
|
---|
5477 | nltrie: nltrie,
|
---|
5478 | nLtv: nLtv,
|
---|
5479 | nmid: nmid,
|
---|
5480 | NoBreak: NoBreak,
|
---|
5481 | NonBreakingSpace: NonBreakingSpace,
|
---|
5482 | nopf: nopf,
|
---|
5483 | Nopf: Nopf,
|
---|
5484 | Not: Not,
|
---|
5485 | not: not,
|
---|
5486 | NotCongruent: NotCongruent,
|
---|
5487 | NotCupCap: NotCupCap,
|
---|
5488 | NotDoubleVerticalBar: NotDoubleVerticalBar,
|
---|
5489 | NotElement: NotElement,
|
---|
5490 | NotEqual: NotEqual,
|
---|
5491 | NotEqualTilde: NotEqualTilde,
|
---|
5492 | NotExists: NotExists,
|
---|
5493 | NotGreater: NotGreater,
|
---|
5494 | NotGreaterEqual: NotGreaterEqual,
|
---|
5495 | NotGreaterFullEqual: NotGreaterFullEqual,
|
---|
5496 | NotGreaterGreater: NotGreaterGreater,
|
---|
5497 | NotGreaterLess: NotGreaterLess,
|
---|
5498 | NotGreaterSlantEqual: NotGreaterSlantEqual,
|
---|
5499 | NotGreaterTilde: NotGreaterTilde,
|
---|
5500 | NotHumpDownHump: NotHumpDownHump,
|
---|
5501 | NotHumpEqual: NotHumpEqual,
|
---|
5502 | notin: notin,
|
---|
5503 | notindot: notindot,
|
---|
5504 | notinE: notinE,
|
---|
5505 | notinva: notinva,
|
---|
5506 | notinvb: notinvb,
|
---|
5507 | notinvc: notinvc,
|
---|
5508 | NotLeftTriangleBar: NotLeftTriangleBar,
|
---|
5509 | NotLeftTriangle: NotLeftTriangle,
|
---|
5510 | NotLeftTriangleEqual: NotLeftTriangleEqual,
|
---|
5511 | NotLess: NotLess,
|
---|
5512 | NotLessEqual: NotLessEqual,
|
---|
5513 | NotLessGreater: NotLessGreater,
|
---|
5514 | NotLessLess: NotLessLess,
|
---|
5515 | NotLessSlantEqual: NotLessSlantEqual,
|
---|
5516 | NotLessTilde: NotLessTilde,
|
---|
5517 | NotNestedGreaterGreater: NotNestedGreaterGreater,
|
---|
5518 | NotNestedLessLess: NotNestedLessLess,
|
---|
5519 | notni: notni,
|
---|
5520 | notniva: notniva,
|
---|
5521 | notnivb: notnivb,
|
---|
5522 | notnivc: notnivc,
|
---|
5523 | NotPrecedes: NotPrecedes,
|
---|
5524 | NotPrecedesEqual: NotPrecedesEqual,
|
---|
5525 | NotPrecedesSlantEqual: NotPrecedesSlantEqual,
|
---|
5526 | NotReverseElement: NotReverseElement,
|
---|
5527 | NotRightTriangleBar: NotRightTriangleBar,
|
---|
5528 | NotRightTriangle: NotRightTriangle,
|
---|
5529 | NotRightTriangleEqual: NotRightTriangleEqual,
|
---|
5530 | NotSquareSubset: NotSquareSubset,
|
---|
5531 | NotSquareSubsetEqual: NotSquareSubsetEqual,
|
---|
5532 | NotSquareSuperset: NotSquareSuperset,
|
---|
5533 | NotSquareSupersetEqual: NotSquareSupersetEqual,
|
---|
5534 | NotSubset: NotSubset,
|
---|
5535 | NotSubsetEqual: NotSubsetEqual,
|
---|
5536 | NotSucceeds: NotSucceeds,
|
---|
5537 | NotSucceedsEqual: NotSucceedsEqual,
|
---|
5538 | NotSucceedsSlantEqual: NotSucceedsSlantEqual,
|
---|
5539 | NotSucceedsTilde: NotSucceedsTilde,
|
---|
5540 | NotSuperset: NotSuperset,
|
---|
5541 | NotSupersetEqual: NotSupersetEqual,
|
---|
5542 | NotTilde: NotTilde,
|
---|
5543 | NotTildeEqual: NotTildeEqual,
|
---|
5544 | NotTildeFullEqual: NotTildeFullEqual,
|
---|
5545 | NotTildeTilde: NotTildeTilde,
|
---|
5546 | NotVerticalBar: NotVerticalBar,
|
---|
5547 | nparallel: nparallel,
|
---|
5548 | npar: npar,
|
---|
5549 | nparsl: nparsl,
|
---|
5550 | npart: npart,
|
---|
5551 | npolint: npolint,
|
---|
5552 | npr: npr,
|
---|
5553 | nprcue: nprcue,
|
---|
5554 | nprec: nprec,
|
---|
5555 | npreceq: npreceq,
|
---|
5556 | npre: npre,
|
---|
5557 | nrarrc: nrarrc,
|
---|
5558 | nrarr: nrarr,
|
---|
5559 | nrArr: nrArr,
|
---|
5560 | nrarrw: nrarrw,
|
---|
5561 | nrightarrow: nrightarrow,
|
---|
5562 | nRightarrow: nRightarrow,
|
---|
5563 | nrtri: nrtri,
|
---|
5564 | nrtrie: nrtrie,
|
---|
5565 | nsc: nsc,
|
---|
5566 | nsccue: nsccue,
|
---|
5567 | nsce: nsce,
|
---|
5568 | Nscr: Nscr,
|
---|
5569 | nscr: nscr,
|
---|
5570 | nshortmid: nshortmid,
|
---|
5571 | nshortparallel: nshortparallel,
|
---|
5572 | nsim: nsim,
|
---|
5573 | nsime: nsime,
|
---|
5574 | nsimeq: nsimeq,
|
---|
5575 | nsmid: nsmid,
|
---|
5576 | nspar: nspar,
|
---|
5577 | nsqsube: nsqsube,
|
---|
5578 | nsqsupe: nsqsupe,
|
---|
5579 | nsub: nsub,
|
---|
5580 | nsubE: nsubE,
|
---|
5581 | nsube: nsube,
|
---|
5582 | nsubset: nsubset,
|
---|
5583 | nsubseteq: nsubseteq,
|
---|
5584 | nsubseteqq: nsubseteqq,
|
---|
5585 | nsucc: nsucc,
|
---|
5586 | nsucceq: nsucceq,
|
---|
5587 | nsup: nsup,
|
---|
5588 | nsupE: nsupE,
|
---|
5589 | nsupe: nsupe,
|
---|
5590 | nsupset: nsupset,
|
---|
5591 | nsupseteq: nsupseteq,
|
---|
5592 | nsupseteqq: nsupseteqq,
|
---|
5593 | ntgl: ntgl,
|
---|
5594 | Ntilde: Ntilde,
|
---|
5595 | ntilde: ntilde,
|
---|
5596 | ntlg: ntlg,
|
---|
5597 | ntriangleleft: ntriangleleft,
|
---|
5598 | ntrianglelefteq: ntrianglelefteq,
|
---|
5599 | ntriangleright: ntriangleright,
|
---|
5600 | ntrianglerighteq: ntrianglerighteq,
|
---|
5601 | Nu: Nu,
|
---|
5602 | nu: nu,
|
---|
5603 | num: num,
|
---|
5604 | numero: numero,
|
---|
5605 | numsp: numsp,
|
---|
5606 | nvap: nvap,
|
---|
5607 | nvdash: nvdash,
|
---|
5608 | nvDash: nvDash,
|
---|
5609 | nVdash: nVdash,
|
---|
5610 | nVDash: nVDash,
|
---|
5611 | nvge: nvge,
|
---|
5612 | nvgt: nvgt,
|
---|
5613 | nvHarr: nvHarr,
|
---|
5614 | nvinfin: nvinfin,
|
---|
5615 | nvlArr: nvlArr,
|
---|
5616 | nvle: nvle,
|
---|
5617 | nvlt: nvlt,
|
---|
5618 | nvltrie: nvltrie,
|
---|
5619 | nvrArr: nvrArr,
|
---|
5620 | nvrtrie: nvrtrie,
|
---|
5621 | nvsim: nvsim,
|
---|
5622 | nwarhk: nwarhk,
|
---|
5623 | nwarr: nwarr,
|
---|
5624 | nwArr: nwArr,
|
---|
5625 | nwarrow: nwarrow,
|
---|
5626 | nwnear: nwnear,
|
---|
5627 | Oacute: Oacute,
|
---|
5628 | oacute: oacute,
|
---|
5629 | oast: oast,
|
---|
5630 | Ocirc: Ocirc,
|
---|
5631 | ocirc: ocirc,
|
---|
5632 | ocir: ocir,
|
---|
5633 | Ocy: Ocy,
|
---|
5634 | ocy: ocy,
|
---|
5635 | odash: odash,
|
---|
5636 | Odblac: Odblac,
|
---|
5637 | odblac: odblac,
|
---|
5638 | odiv: odiv,
|
---|
5639 | odot: odot,
|
---|
5640 | odsold: odsold,
|
---|
5641 | OElig: OElig,
|
---|
5642 | oelig: oelig,
|
---|
5643 | ofcir: ofcir,
|
---|
5644 | Ofr: Ofr,
|
---|
5645 | ofr: ofr,
|
---|
5646 | ogon: ogon,
|
---|
5647 | Ograve: Ograve,
|
---|
5648 | ograve: ograve,
|
---|
5649 | ogt: ogt,
|
---|
5650 | ohbar: ohbar,
|
---|
5651 | ohm: ohm,
|
---|
5652 | oint: oint,
|
---|
5653 | olarr: olarr,
|
---|
5654 | olcir: olcir,
|
---|
5655 | olcross: olcross,
|
---|
5656 | oline: oline,
|
---|
5657 | olt: olt,
|
---|
5658 | Omacr: Omacr,
|
---|
5659 | omacr: omacr,
|
---|
5660 | Omega: Omega,
|
---|
5661 | omega: omega,
|
---|
5662 | Omicron: Omicron,
|
---|
5663 | omicron: omicron,
|
---|
5664 | omid: omid,
|
---|
5665 | ominus: ominus,
|
---|
5666 | Oopf: Oopf,
|
---|
5667 | oopf: oopf,
|
---|
5668 | opar: opar,
|
---|
5669 | OpenCurlyDoubleQuote: OpenCurlyDoubleQuote,
|
---|
5670 | OpenCurlyQuote: OpenCurlyQuote,
|
---|
5671 | operp: operp,
|
---|
5672 | oplus: oplus,
|
---|
5673 | orarr: orarr,
|
---|
5674 | Or: Or,
|
---|
5675 | or: or,
|
---|
5676 | ord: ord,
|
---|
5677 | order: order,
|
---|
5678 | orderof: orderof,
|
---|
5679 | ordf: ordf,
|
---|
5680 | ordm: ordm,
|
---|
5681 | origof: origof,
|
---|
5682 | oror: oror,
|
---|
5683 | orslope: orslope,
|
---|
5684 | orv: orv,
|
---|
5685 | oS: oS,
|
---|
5686 | Oscr: Oscr,
|
---|
5687 | oscr: oscr,
|
---|
5688 | Oslash: Oslash,
|
---|
5689 | oslash: oslash,
|
---|
5690 | osol: osol,
|
---|
5691 | Otilde: Otilde,
|
---|
5692 | otilde: otilde,
|
---|
5693 | otimesas: otimesas,
|
---|
5694 | Otimes: Otimes,
|
---|
5695 | otimes: otimes,
|
---|
5696 | Ouml: Ouml,
|
---|
5697 | ouml: ouml,
|
---|
5698 | ovbar: ovbar,
|
---|
5699 | OverBar: OverBar,
|
---|
5700 | OverBrace: OverBrace,
|
---|
5701 | OverBracket: OverBracket,
|
---|
5702 | OverParenthesis: OverParenthesis,
|
---|
5703 | para: para,
|
---|
5704 | parallel: parallel,
|
---|
5705 | par: par,
|
---|
5706 | parsim: parsim,
|
---|
5707 | parsl: parsl,
|
---|
5708 | part: part,
|
---|
5709 | PartialD: PartialD,
|
---|
5710 | Pcy: Pcy,
|
---|
5711 | pcy: pcy,
|
---|
5712 | percnt: percnt,
|
---|
5713 | period: period,
|
---|
5714 | permil: permil,
|
---|
5715 | perp: perp,
|
---|
5716 | pertenk: pertenk,
|
---|
5717 | Pfr: Pfr,
|
---|
5718 | pfr: pfr,
|
---|
5719 | Phi: Phi,
|
---|
5720 | phi: phi,
|
---|
5721 | phiv: phiv,
|
---|
5722 | phmmat: phmmat,
|
---|
5723 | phone: phone,
|
---|
5724 | Pi: Pi,
|
---|
5725 | pi: pi,
|
---|
5726 | pitchfork: pitchfork,
|
---|
5727 | piv: piv,
|
---|
5728 | planck: planck,
|
---|
5729 | planckh: planckh,
|
---|
5730 | plankv: plankv,
|
---|
5731 | plusacir: plusacir,
|
---|
5732 | plusb: plusb,
|
---|
5733 | pluscir: pluscir,
|
---|
5734 | plus: plus,
|
---|
5735 | plusdo: plusdo,
|
---|
5736 | plusdu: plusdu,
|
---|
5737 | pluse: pluse,
|
---|
5738 | PlusMinus: PlusMinus,
|
---|
5739 | plusmn: plusmn,
|
---|
5740 | plussim: plussim,
|
---|
5741 | plustwo: plustwo,
|
---|
5742 | pm: pm,
|
---|
5743 | Poincareplane: Poincareplane,
|
---|
5744 | pointint: pointint,
|
---|
5745 | popf: popf,
|
---|
5746 | Popf: Popf,
|
---|
5747 | pound: pound,
|
---|
5748 | prap: prap,
|
---|
5749 | Pr: Pr,
|
---|
5750 | pr: pr,
|
---|
5751 | prcue: prcue,
|
---|
5752 | precapprox: precapprox,
|
---|
5753 | prec: prec,
|
---|
5754 | preccurlyeq: preccurlyeq,
|
---|
5755 | Precedes: Precedes,
|
---|
5756 | PrecedesEqual: PrecedesEqual,
|
---|
5757 | PrecedesSlantEqual: PrecedesSlantEqual,
|
---|
5758 | PrecedesTilde: PrecedesTilde,
|
---|
5759 | preceq: preceq,
|
---|
5760 | precnapprox: precnapprox,
|
---|
5761 | precneqq: precneqq,
|
---|
5762 | precnsim: precnsim,
|
---|
5763 | pre: pre,
|
---|
5764 | prE: prE,
|
---|
5765 | precsim: precsim,
|
---|
5766 | prime: prime,
|
---|
5767 | Prime: Prime,
|
---|
5768 | primes: primes,
|
---|
5769 | prnap: prnap,
|
---|
5770 | prnE: prnE,
|
---|
5771 | prnsim: prnsim,
|
---|
5772 | prod: prod,
|
---|
5773 | Product: Product,
|
---|
5774 | profalar: profalar,
|
---|
5775 | profline: profline,
|
---|
5776 | profsurf: profsurf,
|
---|
5777 | prop: prop,
|
---|
5778 | Proportional: Proportional,
|
---|
5779 | Proportion: Proportion,
|
---|
5780 | propto: propto,
|
---|
5781 | prsim: prsim,
|
---|
5782 | prurel: prurel,
|
---|
5783 | Pscr: Pscr,
|
---|
5784 | pscr: pscr,
|
---|
5785 | Psi: Psi,
|
---|
5786 | psi: psi,
|
---|
5787 | puncsp: puncsp,
|
---|
5788 | Qfr: Qfr,
|
---|
5789 | qfr: qfr,
|
---|
5790 | qint: qint,
|
---|
5791 | qopf: qopf,
|
---|
5792 | Qopf: Qopf,
|
---|
5793 | qprime: qprime,
|
---|
5794 | Qscr: Qscr,
|
---|
5795 | qscr: qscr,
|
---|
5796 | quaternions: quaternions,
|
---|
5797 | quatint: quatint,
|
---|
5798 | quest: quest,
|
---|
5799 | questeq: questeq,
|
---|
5800 | quot: quot,
|
---|
5801 | QUOT: QUOT,
|
---|
5802 | rAarr: rAarr,
|
---|
5803 | race: race,
|
---|
5804 | Racute: Racute,
|
---|
5805 | racute: racute,
|
---|
5806 | radic: radic,
|
---|
5807 | raemptyv: raemptyv,
|
---|
5808 | rang: rang,
|
---|
5809 | Rang: Rang,
|
---|
5810 | rangd: rangd,
|
---|
5811 | range: range,
|
---|
5812 | rangle: rangle,
|
---|
5813 | raquo: raquo,
|
---|
5814 | rarrap: rarrap,
|
---|
5815 | rarrb: rarrb,
|
---|
5816 | rarrbfs: rarrbfs,
|
---|
5817 | rarrc: rarrc,
|
---|
5818 | rarr: rarr,
|
---|
5819 | Rarr: Rarr,
|
---|
5820 | rArr: rArr,
|
---|
5821 | rarrfs: rarrfs,
|
---|
5822 | rarrhk: rarrhk,
|
---|
5823 | rarrlp: rarrlp,
|
---|
5824 | rarrpl: rarrpl,
|
---|
5825 | rarrsim: rarrsim,
|
---|
5826 | Rarrtl: Rarrtl,
|
---|
5827 | rarrtl: rarrtl,
|
---|
5828 | rarrw: rarrw,
|
---|
5829 | ratail: ratail,
|
---|
5830 | rAtail: rAtail,
|
---|
5831 | ratio: ratio,
|
---|
5832 | rationals: rationals,
|
---|
5833 | rbarr: rbarr,
|
---|
5834 | rBarr: rBarr,
|
---|
5835 | RBarr: RBarr,
|
---|
5836 | rbbrk: rbbrk,
|
---|
5837 | rbrace: rbrace,
|
---|
5838 | rbrack: rbrack,
|
---|
5839 | rbrke: rbrke,
|
---|
5840 | rbrksld: rbrksld,
|
---|
5841 | rbrkslu: rbrkslu,
|
---|
5842 | Rcaron: Rcaron,
|
---|
5843 | rcaron: rcaron,
|
---|
5844 | Rcedil: Rcedil,
|
---|
5845 | rcedil: rcedil,
|
---|
5846 | rceil: rceil,
|
---|
5847 | rcub: rcub,
|
---|
5848 | Rcy: Rcy,
|
---|
5849 | rcy: rcy,
|
---|
5850 | rdca: rdca,
|
---|
5851 | rdldhar: rdldhar,
|
---|
5852 | rdquo: rdquo,
|
---|
5853 | rdquor: rdquor,
|
---|
5854 | rdsh: rdsh,
|
---|
5855 | real: real,
|
---|
5856 | realine: realine,
|
---|
5857 | realpart: realpart,
|
---|
5858 | reals: reals,
|
---|
5859 | Re: Re,
|
---|
5860 | rect: rect,
|
---|
5861 | reg: reg,
|
---|
5862 | REG: REG,
|
---|
5863 | ReverseElement: ReverseElement,
|
---|
5864 | ReverseEquilibrium: ReverseEquilibrium,
|
---|
5865 | ReverseUpEquilibrium: ReverseUpEquilibrium,
|
---|
5866 | rfisht: rfisht,
|
---|
5867 | rfloor: rfloor,
|
---|
5868 | rfr: rfr,
|
---|
5869 | Rfr: Rfr,
|
---|
5870 | rHar: rHar,
|
---|
5871 | rhard: rhard,
|
---|
5872 | rharu: rharu,
|
---|
5873 | rharul: rharul,
|
---|
5874 | Rho: Rho,
|
---|
5875 | rho: rho,
|
---|
5876 | rhov: rhov,
|
---|
5877 | RightAngleBracket: RightAngleBracket,
|
---|
5878 | RightArrowBar: RightArrowBar,
|
---|
5879 | rightarrow: rightarrow,
|
---|
5880 | RightArrow: RightArrow,
|
---|
5881 | Rightarrow: Rightarrow,
|
---|
5882 | RightArrowLeftArrow: RightArrowLeftArrow,
|
---|
5883 | rightarrowtail: rightarrowtail,
|
---|
5884 | RightCeiling: RightCeiling,
|
---|
5885 | RightDoubleBracket: RightDoubleBracket,
|
---|
5886 | RightDownTeeVector: RightDownTeeVector,
|
---|
5887 | RightDownVectorBar: RightDownVectorBar,
|
---|
5888 | RightDownVector: RightDownVector,
|
---|
5889 | RightFloor: RightFloor,
|
---|
5890 | rightharpoondown: rightharpoondown,
|
---|
5891 | rightharpoonup: rightharpoonup,
|
---|
5892 | rightleftarrows: rightleftarrows,
|
---|
5893 | rightleftharpoons: rightleftharpoons,
|
---|
5894 | rightrightarrows: rightrightarrows,
|
---|
5895 | rightsquigarrow: rightsquigarrow,
|
---|
5896 | RightTeeArrow: RightTeeArrow,
|
---|
5897 | RightTee: RightTee,
|
---|
5898 | RightTeeVector: RightTeeVector,
|
---|
5899 | rightthreetimes: rightthreetimes,
|
---|
5900 | RightTriangleBar: RightTriangleBar,
|
---|
5901 | RightTriangle: RightTriangle,
|
---|
5902 | RightTriangleEqual: RightTriangleEqual,
|
---|
5903 | RightUpDownVector: RightUpDownVector,
|
---|
5904 | RightUpTeeVector: RightUpTeeVector,
|
---|
5905 | RightUpVectorBar: RightUpVectorBar,
|
---|
5906 | RightUpVector: RightUpVector,
|
---|
5907 | RightVectorBar: RightVectorBar,
|
---|
5908 | RightVector: RightVector,
|
---|
5909 | ring: ring,
|
---|
5910 | risingdotseq: risingdotseq,
|
---|
5911 | rlarr: rlarr,
|
---|
5912 | rlhar: rlhar,
|
---|
5913 | rlm: rlm,
|
---|
5914 | rmoustache: rmoustache,
|
---|
5915 | rmoust: rmoust,
|
---|
5916 | rnmid: rnmid,
|
---|
5917 | roang: roang,
|
---|
5918 | roarr: roarr,
|
---|
5919 | robrk: robrk,
|
---|
5920 | ropar: ropar,
|
---|
5921 | ropf: ropf,
|
---|
5922 | Ropf: Ropf,
|
---|
5923 | roplus: roplus,
|
---|
5924 | rotimes: rotimes,
|
---|
5925 | RoundImplies: RoundImplies,
|
---|
5926 | rpar: rpar,
|
---|
5927 | rpargt: rpargt,
|
---|
5928 | rppolint: rppolint,
|
---|
5929 | rrarr: rrarr,
|
---|
5930 | Rrightarrow: Rrightarrow,
|
---|
5931 | rsaquo: rsaquo,
|
---|
5932 | rscr: rscr,
|
---|
5933 | Rscr: Rscr,
|
---|
5934 | rsh: rsh,
|
---|
5935 | Rsh: Rsh,
|
---|
5936 | rsqb: rsqb,
|
---|
5937 | rsquo: rsquo,
|
---|
5938 | rsquor: rsquor,
|
---|
5939 | rthree: rthree,
|
---|
5940 | rtimes: rtimes,
|
---|
5941 | rtri: rtri,
|
---|
5942 | rtrie: rtrie,
|
---|
5943 | rtrif: rtrif,
|
---|
5944 | rtriltri: rtriltri,
|
---|
5945 | RuleDelayed: RuleDelayed,
|
---|
5946 | ruluhar: ruluhar,
|
---|
5947 | rx: rx,
|
---|
5948 | Sacute: Sacute,
|
---|
5949 | sacute: sacute,
|
---|
5950 | sbquo: sbquo,
|
---|
5951 | scap: scap,
|
---|
5952 | Scaron: Scaron,
|
---|
5953 | scaron: scaron,
|
---|
5954 | Sc: Sc,
|
---|
5955 | sc: sc,
|
---|
5956 | sccue: sccue,
|
---|
5957 | sce: sce,
|
---|
5958 | scE: scE,
|
---|
5959 | Scedil: Scedil,
|
---|
5960 | scedil: scedil,
|
---|
5961 | Scirc: Scirc,
|
---|
5962 | scirc: scirc,
|
---|
5963 | scnap: scnap,
|
---|
5964 | scnE: scnE,
|
---|
5965 | scnsim: scnsim,
|
---|
5966 | scpolint: scpolint,
|
---|
5967 | scsim: scsim,
|
---|
5968 | Scy: Scy,
|
---|
5969 | scy: scy,
|
---|
5970 | sdotb: sdotb,
|
---|
5971 | sdot: sdot,
|
---|
5972 | sdote: sdote,
|
---|
5973 | searhk: searhk,
|
---|
5974 | searr: searr,
|
---|
5975 | seArr: seArr,
|
---|
5976 | searrow: searrow,
|
---|
5977 | sect: sect,
|
---|
5978 | semi: semi,
|
---|
5979 | seswar: seswar,
|
---|
5980 | setminus: setminus,
|
---|
5981 | setmn: setmn,
|
---|
5982 | sext: sext,
|
---|
5983 | Sfr: Sfr,
|
---|
5984 | sfr: sfr,
|
---|
5985 | sfrown: sfrown,
|
---|
5986 | sharp: sharp,
|
---|
5987 | SHCHcy: SHCHcy,
|
---|
5988 | shchcy: shchcy,
|
---|
5989 | SHcy: SHcy,
|
---|
5990 | shcy: shcy,
|
---|
5991 | ShortDownArrow: ShortDownArrow,
|
---|
5992 | ShortLeftArrow: ShortLeftArrow,
|
---|
5993 | shortmid: shortmid,
|
---|
5994 | shortparallel: shortparallel,
|
---|
5995 | ShortRightArrow: ShortRightArrow,
|
---|
5996 | ShortUpArrow: ShortUpArrow,
|
---|
5997 | shy: shy,
|
---|
5998 | Sigma: Sigma,
|
---|
5999 | sigma: sigma,
|
---|
6000 | sigmaf: sigmaf,
|
---|
6001 | sigmav: sigmav,
|
---|
6002 | sim: sim,
|
---|
6003 | simdot: simdot,
|
---|
6004 | sime: sime,
|
---|
6005 | simeq: simeq,
|
---|
6006 | simg: simg,
|
---|
6007 | simgE: simgE,
|
---|
6008 | siml: siml,
|
---|
6009 | simlE: simlE,
|
---|
6010 | simne: simne,
|
---|
6011 | simplus: simplus,
|
---|
6012 | simrarr: simrarr,
|
---|
6013 | slarr: slarr,
|
---|
6014 | SmallCircle: SmallCircle,
|
---|
6015 | smallsetminus: smallsetminus,
|
---|
6016 | smashp: smashp,
|
---|
6017 | smeparsl: smeparsl,
|
---|
6018 | smid: smid,
|
---|
6019 | smile: smile,
|
---|
6020 | smt: smt,
|
---|
6021 | smte: smte,
|
---|
6022 | smtes: smtes,
|
---|
6023 | SOFTcy: SOFTcy,
|
---|
6024 | softcy: softcy,
|
---|
6025 | solbar: solbar,
|
---|
6026 | solb: solb,
|
---|
6027 | sol: sol,
|
---|
6028 | Sopf: Sopf,
|
---|
6029 | sopf: sopf,
|
---|
6030 | spades: spades,
|
---|
6031 | spadesuit: spadesuit,
|
---|
6032 | spar: spar,
|
---|
6033 | sqcap: sqcap,
|
---|
6034 | sqcaps: sqcaps,
|
---|
6035 | sqcup: sqcup,
|
---|
6036 | sqcups: sqcups,
|
---|
6037 | Sqrt: Sqrt,
|
---|
6038 | sqsub: sqsub,
|
---|
6039 | sqsube: sqsube,
|
---|
6040 | sqsubset: sqsubset,
|
---|
6041 | sqsubseteq: sqsubseteq,
|
---|
6042 | sqsup: sqsup,
|
---|
6043 | sqsupe: sqsupe,
|
---|
6044 | sqsupset: sqsupset,
|
---|
6045 | sqsupseteq: sqsupseteq,
|
---|
6046 | square: square,
|
---|
6047 | Square: Square,
|
---|
6048 | SquareIntersection: SquareIntersection,
|
---|
6049 | SquareSubset: SquareSubset,
|
---|
6050 | SquareSubsetEqual: SquareSubsetEqual,
|
---|
6051 | SquareSuperset: SquareSuperset,
|
---|
6052 | SquareSupersetEqual: SquareSupersetEqual,
|
---|
6053 | SquareUnion: SquareUnion,
|
---|
6054 | squarf: squarf,
|
---|
6055 | squ: squ,
|
---|
6056 | squf: squf,
|
---|
6057 | srarr: srarr,
|
---|
6058 | Sscr: Sscr,
|
---|
6059 | sscr: sscr,
|
---|
6060 | ssetmn: ssetmn,
|
---|
6061 | ssmile: ssmile,
|
---|
6062 | sstarf: sstarf,
|
---|
6063 | Star: Star,
|
---|
6064 | star: star,
|
---|
6065 | starf: starf,
|
---|
6066 | straightepsilon: straightepsilon,
|
---|
6067 | straightphi: straightphi,
|
---|
6068 | strns: strns,
|
---|
6069 | sub: sub,
|
---|
6070 | Sub: Sub,
|
---|
6071 | subdot: subdot,
|
---|
6072 | subE: subE,
|
---|
6073 | sube: sube,
|
---|
6074 | subedot: subedot,
|
---|
6075 | submult: submult,
|
---|
6076 | subnE: subnE,
|
---|
6077 | subne: subne,
|
---|
6078 | subplus: subplus,
|
---|
6079 | subrarr: subrarr,
|
---|
6080 | subset: subset,
|
---|
6081 | Subset: Subset,
|
---|
6082 | subseteq: subseteq,
|
---|
6083 | subseteqq: subseteqq,
|
---|
6084 | SubsetEqual: SubsetEqual,
|
---|
6085 | subsetneq: subsetneq,
|
---|
6086 | subsetneqq: subsetneqq,
|
---|
6087 | subsim: subsim,
|
---|
6088 | subsub: subsub,
|
---|
6089 | subsup: subsup,
|
---|
6090 | succapprox: succapprox,
|
---|
6091 | succ: succ,
|
---|
6092 | succcurlyeq: succcurlyeq,
|
---|
6093 | Succeeds: Succeeds,
|
---|
6094 | SucceedsEqual: SucceedsEqual,
|
---|
6095 | SucceedsSlantEqual: SucceedsSlantEqual,
|
---|
6096 | SucceedsTilde: SucceedsTilde,
|
---|
6097 | succeq: succeq,
|
---|
6098 | succnapprox: succnapprox,
|
---|
6099 | succneqq: succneqq,
|
---|
6100 | succnsim: succnsim,
|
---|
6101 | succsim: succsim,
|
---|
6102 | SuchThat: SuchThat,
|
---|
6103 | sum: sum,
|
---|
6104 | Sum: Sum,
|
---|
6105 | sung: sung,
|
---|
6106 | sup1: sup1,
|
---|
6107 | sup2: sup2,
|
---|
6108 | sup3: sup3,
|
---|
6109 | sup: sup,
|
---|
6110 | Sup: Sup,
|
---|
6111 | supdot: supdot,
|
---|
6112 | supdsub: supdsub,
|
---|
6113 | supE: supE,
|
---|
6114 | supe: supe,
|
---|
6115 | supedot: supedot,
|
---|
6116 | Superset: Superset,
|
---|
6117 | SupersetEqual: SupersetEqual,
|
---|
6118 | suphsol: suphsol,
|
---|
6119 | suphsub: suphsub,
|
---|
6120 | suplarr: suplarr,
|
---|
6121 | supmult: supmult,
|
---|
6122 | supnE: supnE,
|
---|
6123 | supne: supne,
|
---|
6124 | supplus: supplus,
|
---|
6125 | supset: supset,
|
---|
6126 | Supset: Supset,
|
---|
6127 | supseteq: supseteq,
|
---|
6128 | supseteqq: supseteqq,
|
---|
6129 | supsetneq: supsetneq,
|
---|
6130 | supsetneqq: supsetneqq,
|
---|
6131 | supsim: supsim,
|
---|
6132 | supsub: supsub,
|
---|
6133 | supsup: supsup,
|
---|
6134 | swarhk: swarhk,
|
---|
6135 | swarr: swarr,
|
---|
6136 | swArr: swArr,
|
---|
6137 | swarrow: swarrow,
|
---|
6138 | swnwar: swnwar,
|
---|
6139 | szlig: szlig,
|
---|
6140 | Tab: Tab,
|
---|
6141 | target: target,
|
---|
6142 | Tau: Tau,
|
---|
6143 | tau: tau,
|
---|
6144 | tbrk: tbrk,
|
---|
6145 | Tcaron: Tcaron,
|
---|
6146 | tcaron: tcaron,
|
---|
6147 | Tcedil: Tcedil,
|
---|
6148 | tcedil: tcedil,
|
---|
6149 | Tcy: Tcy,
|
---|
6150 | tcy: tcy,
|
---|
6151 | tdot: tdot,
|
---|
6152 | telrec: telrec,
|
---|
6153 | Tfr: Tfr,
|
---|
6154 | tfr: tfr,
|
---|
6155 | there4: there4,
|
---|
6156 | therefore: therefore,
|
---|
6157 | Therefore: Therefore,
|
---|
6158 | Theta: Theta,
|
---|
6159 | theta: theta,
|
---|
6160 | thetasym: thetasym,
|
---|
6161 | thetav: thetav,
|
---|
6162 | thickapprox: thickapprox,
|
---|
6163 | thicksim: thicksim,
|
---|
6164 | ThickSpace: ThickSpace,
|
---|
6165 | ThinSpace: ThinSpace,
|
---|
6166 | thinsp: thinsp,
|
---|
6167 | thkap: thkap,
|
---|
6168 | thksim: thksim,
|
---|
6169 | THORN: THORN,
|
---|
6170 | thorn: thorn,
|
---|
6171 | tilde: tilde,
|
---|
6172 | Tilde: Tilde,
|
---|
6173 | TildeEqual: TildeEqual,
|
---|
6174 | TildeFullEqual: TildeFullEqual,
|
---|
6175 | TildeTilde: TildeTilde,
|
---|
6176 | timesbar: timesbar,
|
---|
6177 | timesb: timesb,
|
---|
6178 | times: times,
|
---|
6179 | timesd: timesd,
|
---|
6180 | tint: tint,
|
---|
6181 | toea: toea,
|
---|
6182 | topbot: topbot,
|
---|
6183 | topcir: topcir,
|
---|
6184 | top: top,
|
---|
6185 | Topf: Topf,
|
---|
6186 | topf: topf,
|
---|
6187 | topfork: topfork,
|
---|
6188 | tosa: tosa,
|
---|
6189 | tprime: tprime,
|
---|
6190 | trade: trade,
|
---|
6191 | TRADE: TRADE,
|
---|
6192 | triangle: triangle,
|
---|
6193 | triangledown: triangledown,
|
---|
6194 | triangleleft: triangleleft,
|
---|
6195 | trianglelefteq: trianglelefteq,
|
---|
6196 | triangleq: triangleq,
|
---|
6197 | triangleright: triangleright,
|
---|
6198 | trianglerighteq: trianglerighteq,
|
---|
6199 | tridot: tridot,
|
---|
6200 | trie: trie,
|
---|
6201 | triminus: triminus,
|
---|
6202 | TripleDot: TripleDot,
|
---|
6203 | triplus: triplus,
|
---|
6204 | trisb: trisb,
|
---|
6205 | tritime: tritime,
|
---|
6206 | trpezium: trpezium,
|
---|
6207 | Tscr: Tscr,
|
---|
6208 | tscr: tscr,
|
---|
6209 | TScy: TScy,
|
---|
6210 | tscy: tscy,
|
---|
6211 | TSHcy: TSHcy,
|
---|
6212 | tshcy: tshcy,
|
---|
6213 | Tstrok: Tstrok,
|
---|
6214 | tstrok: tstrok,
|
---|
6215 | twixt: twixt,
|
---|
6216 | twoheadleftarrow: twoheadleftarrow,
|
---|
6217 | twoheadrightarrow: twoheadrightarrow,
|
---|
6218 | Uacute: Uacute,
|
---|
6219 | uacute: uacute,
|
---|
6220 | uarr: uarr,
|
---|
6221 | Uarr: Uarr,
|
---|
6222 | uArr: uArr,
|
---|
6223 | Uarrocir: Uarrocir,
|
---|
6224 | Ubrcy: Ubrcy,
|
---|
6225 | ubrcy: ubrcy,
|
---|
6226 | Ubreve: Ubreve,
|
---|
6227 | ubreve: ubreve,
|
---|
6228 | Ucirc: Ucirc,
|
---|
6229 | ucirc: ucirc,
|
---|
6230 | Ucy: Ucy,
|
---|
6231 | ucy: ucy,
|
---|
6232 | udarr: udarr,
|
---|
6233 | Udblac: Udblac,
|
---|
6234 | udblac: udblac,
|
---|
6235 | udhar: udhar,
|
---|
6236 | ufisht: ufisht,
|
---|
6237 | Ufr: Ufr,
|
---|
6238 | ufr: ufr,
|
---|
6239 | Ugrave: Ugrave,
|
---|
6240 | ugrave: ugrave,
|
---|
6241 | uHar: uHar,
|
---|
6242 | uharl: uharl,
|
---|
6243 | uharr: uharr,
|
---|
6244 | uhblk: uhblk,
|
---|
6245 | ulcorn: ulcorn,
|
---|
6246 | ulcorner: ulcorner,
|
---|
6247 | ulcrop: ulcrop,
|
---|
6248 | ultri: ultri,
|
---|
6249 | Umacr: Umacr,
|
---|
6250 | umacr: umacr,
|
---|
6251 | uml: uml,
|
---|
6252 | UnderBar: UnderBar,
|
---|
6253 | UnderBrace: UnderBrace,
|
---|
6254 | UnderBracket: UnderBracket,
|
---|
6255 | UnderParenthesis: UnderParenthesis,
|
---|
6256 | Union: Union,
|
---|
6257 | UnionPlus: UnionPlus,
|
---|
6258 | Uogon: Uogon,
|
---|
6259 | uogon: uogon,
|
---|
6260 | Uopf: Uopf,
|
---|
6261 | uopf: uopf,
|
---|
6262 | UpArrowBar: UpArrowBar,
|
---|
6263 | uparrow: uparrow,
|
---|
6264 | UpArrow: UpArrow,
|
---|
6265 | Uparrow: Uparrow,
|
---|
6266 | UpArrowDownArrow: UpArrowDownArrow,
|
---|
6267 | updownarrow: updownarrow,
|
---|
6268 | UpDownArrow: UpDownArrow,
|
---|
6269 | Updownarrow: Updownarrow,
|
---|
6270 | UpEquilibrium: UpEquilibrium,
|
---|
6271 | upharpoonleft: upharpoonleft,
|
---|
6272 | upharpoonright: upharpoonright,
|
---|
6273 | uplus: uplus,
|
---|
6274 | UpperLeftArrow: UpperLeftArrow,
|
---|
6275 | UpperRightArrow: UpperRightArrow,
|
---|
6276 | upsi: upsi,
|
---|
6277 | Upsi: Upsi,
|
---|
6278 | upsih: upsih,
|
---|
6279 | Upsilon: Upsilon,
|
---|
6280 | upsilon: upsilon,
|
---|
6281 | UpTeeArrow: UpTeeArrow,
|
---|
6282 | UpTee: UpTee,
|
---|
6283 | upuparrows: upuparrows,
|
---|
6284 | urcorn: urcorn,
|
---|
6285 | urcorner: urcorner,
|
---|
6286 | urcrop: urcrop,
|
---|
6287 | Uring: Uring,
|
---|
6288 | uring: uring,
|
---|
6289 | urtri: urtri,
|
---|
6290 | Uscr: Uscr,
|
---|
6291 | uscr: uscr,
|
---|
6292 | utdot: utdot,
|
---|
6293 | Utilde: Utilde,
|
---|
6294 | utilde: utilde,
|
---|
6295 | utri: utri,
|
---|
6296 | utrif: utrif,
|
---|
6297 | uuarr: uuarr,
|
---|
6298 | Uuml: Uuml,
|
---|
6299 | uuml: uuml,
|
---|
6300 | uwangle: uwangle,
|
---|
6301 | vangrt: vangrt,
|
---|
6302 | varepsilon: varepsilon,
|
---|
6303 | varkappa: varkappa,
|
---|
6304 | varnothing: varnothing,
|
---|
6305 | varphi: varphi,
|
---|
6306 | varpi: varpi,
|
---|
6307 | varpropto: varpropto,
|
---|
6308 | varr: varr,
|
---|
6309 | vArr: vArr,
|
---|
6310 | varrho: varrho,
|
---|
6311 | varsigma: varsigma,
|
---|
6312 | varsubsetneq: varsubsetneq,
|
---|
6313 | varsubsetneqq: varsubsetneqq,
|
---|
6314 | varsupsetneq: varsupsetneq,
|
---|
6315 | varsupsetneqq: varsupsetneqq,
|
---|
6316 | vartheta: vartheta,
|
---|
6317 | vartriangleleft: vartriangleleft,
|
---|
6318 | vartriangleright: vartriangleright,
|
---|
6319 | vBar: vBar,
|
---|
6320 | Vbar: Vbar,
|
---|
6321 | vBarv: vBarv,
|
---|
6322 | Vcy: Vcy,
|
---|
6323 | vcy: vcy,
|
---|
6324 | vdash: vdash,
|
---|
6325 | vDash: vDash,
|
---|
6326 | Vdash: Vdash,
|
---|
6327 | VDash: VDash,
|
---|
6328 | Vdashl: Vdashl,
|
---|
6329 | veebar: veebar,
|
---|
6330 | vee: vee,
|
---|
6331 | Vee: Vee,
|
---|
6332 | veeeq: veeeq,
|
---|
6333 | vellip: vellip,
|
---|
6334 | verbar: verbar,
|
---|
6335 | Verbar: Verbar,
|
---|
6336 | vert: vert,
|
---|
6337 | Vert: Vert,
|
---|
6338 | VerticalBar: VerticalBar,
|
---|
6339 | VerticalLine: VerticalLine,
|
---|
6340 | VerticalSeparator: VerticalSeparator,
|
---|
6341 | VerticalTilde: VerticalTilde,
|
---|
6342 | VeryThinSpace: VeryThinSpace,
|
---|
6343 | Vfr: Vfr,
|
---|
6344 | vfr: vfr,
|
---|
6345 | vltri: vltri,
|
---|
6346 | vnsub: vnsub,
|
---|
6347 | vnsup: vnsup,
|
---|
6348 | Vopf: Vopf,
|
---|
6349 | vopf: vopf,
|
---|
6350 | vprop: vprop,
|
---|
6351 | vrtri: vrtri,
|
---|
6352 | Vscr: Vscr,
|
---|
6353 | vscr: vscr,
|
---|
6354 | vsubnE: vsubnE,
|
---|
6355 | vsubne: vsubne,
|
---|
6356 | vsupnE: vsupnE,
|
---|
6357 | vsupne: vsupne,
|
---|
6358 | Vvdash: Vvdash,
|
---|
6359 | vzigzag: vzigzag,
|
---|
6360 | Wcirc: Wcirc,
|
---|
6361 | wcirc: wcirc,
|
---|
6362 | wedbar: wedbar,
|
---|
6363 | wedge: wedge,
|
---|
6364 | Wedge: Wedge,
|
---|
6365 | wedgeq: wedgeq,
|
---|
6366 | weierp: weierp,
|
---|
6367 | Wfr: Wfr,
|
---|
6368 | wfr: wfr,
|
---|
6369 | Wopf: Wopf,
|
---|
6370 | wopf: wopf,
|
---|
6371 | wp: wp,
|
---|
6372 | wr: wr,
|
---|
6373 | wreath: wreath,
|
---|
6374 | Wscr: Wscr,
|
---|
6375 | wscr: wscr,
|
---|
6376 | xcap: xcap,
|
---|
6377 | xcirc: xcirc,
|
---|
6378 | xcup: xcup,
|
---|
6379 | xdtri: xdtri,
|
---|
6380 | Xfr: Xfr,
|
---|
6381 | xfr: xfr,
|
---|
6382 | xharr: xharr,
|
---|
6383 | xhArr: xhArr,
|
---|
6384 | Xi: Xi,
|
---|
6385 | xi: xi,
|
---|
6386 | xlarr: xlarr,
|
---|
6387 | xlArr: xlArr,
|
---|
6388 | xmap: xmap,
|
---|
6389 | xnis: xnis,
|
---|
6390 | xodot: xodot,
|
---|
6391 | Xopf: Xopf,
|
---|
6392 | xopf: xopf,
|
---|
6393 | xoplus: xoplus,
|
---|
6394 | xotime: xotime,
|
---|
6395 | xrarr: xrarr,
|
---|
6396 | xrArr: xrArr,
|
---|
6397 | Xscr: Xscr,
|
---|
6398 | xscr: xscr,
|
---|
6399 | xsqcup: xsqcup,
|
---|
6400 | xuplus: xuplus,
|
---|
6401 | xutri: xutri,
|
---|
6402 | xvee: xvee,
|
---|
6403 | xwedge: xwedge,
|
---|
6404 | Yacute: Yacute,
|
---|
6405 | yacute: yacute,
|
---|
6406 | YAcy: YAcy,
|
---|
6407 | yacy: yacy,
|
---|
6408 | Ycirc: Ycirc,
|
---|
6409 | ycirc: ycirc,
|
---|
6410 | Ycy: Ycy,
|
---|
6411 | ycy: ycy,
|
---|
6412 | yen: yen,
|
---|
6413 | Yfr: Yfr,
|
---|
6414 | yfr: yfr,
|
---|
6415 | YIcy: YIcy,
|
---|
6416 | yicy: yicy,
|
---|
6417 | Yopf: Yopf,
|
---|
6418 | yopf: yopf,
|
---|
6419 | Yscr: Yscr,
|
---|
6420 | yscr: yscr,
|
---|
6421 | YUcy: YUcy,
|
---|
6422 | yucy: yucy,
|
---|
6423 | yuml: yuml,
|
---|
6424 | Yuml: Yuml,
|
---|
6425 | Zacute: Zacute,
|
---|
6426 | zacute: zacute,
|
---|
6427 | Zcaron: Zcaron,
|
---|
6428 | zcaron: zcaron,
|
---|
6429 | Zcy: Zcy,
|
---|
6430 | zcy: zcy,
|
---|
6431 | Zdot: Zdot,
|
---|
6432 | zdot: zdot,
|
---|
6433 | zeetrf: zeetrf,
|
---|
6434 | ZeroWidthSpace: ZeroWidthSpace,
|
---|
6435 | Zeta: Zeta,
|
---|
6436 | zeta: zeta,
|
---|
6437 | zfr: zfr,
|
---|
6438 | Zfr: Zfr,
|
---|
6439 | ZHcy: ZHcy,
|
---|
6440 | zhcy: zhcy,
|
---|
6441 | zigrarr: zigrarr,
|
---|
6442 | zopf: zopf,
|
---|
6443 | Zopf: Zopf,
|
---|
6444 | Zscr: Zscr,
|
---|
6445 | zscr: zscr,
|
---|
6446 | zwj: zwj,
|
---|
6447 | zwnj: zwnj,
|
---|
6448 | 'default': entities
|
---|
6449 | };
|
---|
6450 |
|
---|
6451 | var Aacute$1 = "Á";
|
---|
6452 | var aacute$1 = "á";
|
---|
6453 | var Acirc$1 = "Â";
|
---|
6454 | var acirc$1 = "â";
|
---|
6455 | var acute$1 = "´";
|
---|
6456 | var AElig$1 = "Æ";
|
---|
6457 | var aelig$1 = "æ";
|
---|
6458 | var Agrave$1 = "À";
|
---|
6459 | var agrave$1 = "à";
|
---|
6460 | var amp$1 = "&";
|
---|
6461 | var AMP$1 = "&";
|
---|
6462 | var Aring$1 = "Å";
|
---|
6463 | var aring$1 = "å";
|
---|
6464 | var Atilde$1 = "Ã";
|
---|
6465 | var atilde$1 = "ã";
|
---|
6466 | var Auml$1 = "Ä";
|
---|
6467 | var auml$1 = "ä";
|
---|
6468 | var brvbar$1 = "¦";
|
---|
6469 | var Ccedil$1 = "Ç";
|
---|
6470 | var ccedil$1 = "ç";
|
---|
6471 | var cedil$1 = "¸";
|
---|
6472 | var cent$1 = "¢";
|
---|
6473 | var copy$1 = "©";
|
---|
6474 | var COPY$1 = "©";
|
---|
6475 | var curren$1 = "¤";
|
---|
6476 | var deg$1 = "°";
|
---|
6477 | var divide$1 = "÷";
|
---|
6478 | var Eacute$1 = "É";
|
---|
6479 | var eacute$1 = "é";
|
---|
6480 | var Ecirc$1 = "Ê";
|
---|
6481 | var ecirc$1 = "ê";
|
---|
6482 | var Egrave$1 = "È";
|
---|
6483 | var egrave$1 = "è";
|
---|
6484 | var ETH$1 = "Ð";
|
---|
6485 | var eth$1 = "ð";
|
---|
6486 | var Euml$1 = "Ë";
|
---|
6487 | var euml$1 = "ë";
|
---|
6488 | var frac12$1 = "½";
|
---|
6489 | var frac14$1 = "¼";
|
---|
6490 | var frac34$1 = "¾";
|
---|
6491 | var gt$1 = ">";
|
---|
6492 | var GT$1 = ">";
|
---|
6493 | var Iacute$1 = "Í";
|
---|
6494 | var iacute$1 = "í";
|
---|
6495 | var Icirc$1 = "Î";
|
---|
6496 | var icirc$1 = "î";
|
---|
6497 | var iexcl$1 = "¡";
|
---|
6498 | var Igrave$1 = "Ì";
|
---|
6499 | var igrave$1 = "ì";
|
---|
6500 | var iquest$1 = "¿";
|
---|
6501 | var Iuml$1 = "Ï";
|
---|
6502 | var iuml$1 = "ï";
|
---|
6503 | var laquo$1 = "«";
|
---|
6504 | var lt$1 = "<";
|
---|
6505 | var LT$1 = "<";
|
---|
6506 | var macr$1 = "¯";
|
---|
6507 | var micro$1 = "µ";
|
---|
6508 | var middot$1 = "·";
|
---|
6509 | var nbsp$1 = " ";
|
---|
6510 | var not$1 = "¬";
|
---|
6511 | var Ntilde$1 = "Ñ";
|
---|
6512 | var ntilde$1 = "ñ";
|
---|
6513 | var Oacute$1 = "Ó";
|
---|
6514 | var oacute$1 = "ó";
|
---|
6515 | var Ocirc$1 = "Ô";
|
---|
6516 | var ocirc$1 = "ô";
|
---|
6517 | var Ograve$1 = "Ò";
|
---|
6518 | var ograve$1 = "ò";
|
---|
6519 | var ordf$1 = "ª";
|
---|
6520 | var ordm$1 = "º";
|
---|
6521 | var Oslash$1 = "Ø";
|
---|
6522 | var oslash$1 = "ø";
|
---|
6523 | var Otilde$1 = "Õ";
|
---|
6524 | var otilde$1 = "õ";
|
---|
6525 | var Ouml$1 = "Ö";
|
---|
6526 | var ouml$1 = "ö";
|
---|
6527 | var para$1 = "¶";
|
---|
6528 | var plusmn$1 = "±";
|
---|
6529 | var pound$1 = "£";
|
---|
6530 | var quot$1 = "\"";
|
---|
6531 | var QUOT$1 = "\"";
|
---|
6532 | var raquo$1 = "»";
|
---|
6533 | var reg$1 = "®";
|
---|
6534 | var REG$1 = "®";
|
---|
6535 | var sect$1 = "§";
|
---|
6536 | var shy$1 = "";
|
---|
6537 | var sup1$1 = "¹";
|
---|
6538 | var sup2$1 = "²";
|
---|
6539 | var sup3$1 = "³";
|
---|
6540 | var szlig$1 = "ß";
|
---|
6541 | var THORN$1 = "Þ";
|
---|
6542 | var thorn$1 = "þ";
|
---|
6543 | var times$1 = "×";
|
---|
6544 | var Uacute$1 = "Ú";
|
---|
6545 | var uacute$1 = "ú";
|
---|
6546 | var Ucirc$1 = "Û";
|
---|
6547 | var ucirc$1 = "û";
|
---|
6548 | var Ugrave$1 = "Ù";
|
---|
6549 | var ugrave$1 = "ù";
|
---|
6550 | var uml$1 = "¨";
|
---|
6551 | var Uuml$1 = "Ü";
|
---|
6552 | var uuml$1 = "ü";
|
---|
6553 | var Yacute$1 = "Ý";
|
---|
6554 | var yacute$1 = "ý";
|
---|
6555 | var yen$1 = "¥";
|
---|
6556 | var yuml$1 = "ÿ";
|
---|
6557 | var legacy = {
|
---|
6558 | Aacute: Aacute$1,
|
---|
6559 | aacute: aacute$1,
|
---|
6560 | Acirc: Acirc$1,
|
---|
6561 | acirc: acirc$1,
|
---|
6562 | acute: acute$1,
|
---|
6563 | AElig: AElig$1,
|
---|
6564 | aelig: aelig$1,
|
---|
6565 | Agrave: Agrave$1,
|
---|
6566 | agrave: agrave$1,
|
---|
6567 | amp: amp$1,
|
---|
6568 | AMP: AMP$1,
|
---|
6569 | Aring: Aring$1,
|
---|
6570 | aring: aring$1,
|
---|
6571 | Atilde: Atilde$1,
|
---|
6572 | atilde: atilde$1,
|
---|
6573 | Auml: Auml$1,
|
---|
6574 | auml: auml$1,
|
---|
6575 | brvbar: brvbar$1,
|
---|
6576 | Ccedil: Ccedil$1,
|
---|
6577 | ccedil: ccedil$1,
|
---|
6578 | cedil: cedil$1,
|
---|
6579 | cent: cent$1,
|
---|
6580 | copy: copy$1,
|
---|
6581 | COPY: COPY$1,
|
---|
6582 | curren: curren$1,
|
---|
6583 | deg: deg$1,
|
---|
6584 | divide: divide$1,
|
---|
6585 | Eacute: Eacute$1,
|
---|
6586 | eacute: eacute$1,
|
---|
6587 | Ecirc: Ecirc$1,
|
---|
6588 | ecirc: ecirc$1,
|
---|
6589 | Egrave: Egrave$1,
|
---|
6590 | egrave: egrave$1,
|
---|
6591 | ETH: ETH$1,
|
---|
6592 | eth: eth$1,
|
---|
6593 | Euml: Euml$1,
|
---|
6594 | euml: euml$1,
|
---|
6595 | frac12: frac12$1,
|
---|
6596 | frac14: frac14$1,
|
---|
6597 | frac34: frac34$1,
|
---|
6598 | gt: gt$1,
|
---|
6599 | GT: GT$1,
|
---|
6600 | Iacute: Iacute$1,
|
---|
6601 | iacute: iacute$1,
|
---|
6602 | Icirc: Icirc$1,
|
---|
6603 | icirc: icirc$1,
|
---|
6604 | iexcl: iexcl$1,
|
---|
6605 | Igrave: Igrave$1,
|
---|
6606 | igrave: igrave$1,
|
---|
6607 | iquest: iquest$1,
|
---|
6608 | Iuml: Iuml$1,
|
---|
6609 | iuml: iuml$1,
|
---|
6610 | laquo: laquo$1,
|
---|
6611 | lt: lt$1,
|
---|
6612 | LT: LT$1,
|
---|
6613 | macr: macr$1,
|
---|
6614 | micro: micro$1,
|
---|
6615 | middot: middot$1,
|
---|
6616 | nbsp: nbsp$1,
|
---|
6617 | not: not$1,
|
---|
6618 | Ntilde: Ntilde$1,
|
---|
6619 | ntilde: ntilde$1,
|
---|
6620 | Oacute: Oacute$1,
|
---|
6621 | oacute: oacute$1,
|
---|
6622 | Ocirc: Ocirc$1,
|
---|
6623 | ocirc: ocirc$1,
|
---|
6624 | Ograve: Ograve$1,
|
---|
6625 | ograve: ograve$1,
|
---|
6626 | ordf: ordf$1,
|
---|
6627 | ordm: ordm$1,
|
---|
6628 | Oslash: Oslash$1,
|
---|
6629 | oslash: oslash$1,
|
---|
6630 | Otilde: Otilde$1,
|
---|
6631 | otilde: otilde$1,
|
---|
6632 | Ouml: Ouml$1,
|
---|
6633 | ouml: ouml$1,
|
---|
6634 | para: para$1,
|
---|
6635 | plusmn: plusmn$1,
|
---|
6636 | pound: pound$1,
|
---|
6637 | quot: quot$1,
|
---|
6638 | QUOT: QUOT$1,
|
---|
6639 | raquo: raquo$1,
|
---|
6640 | reg: reg$1,
|
---|
6641 | REG: REG$1,
|
---|
6642 | sect: sect$1,
|
---|
6643 | shy: shy$1,
|
---|
6644 | sup1: sup1$1,
|
---|
6645 | sup2: sup2$1,
|
---|
6646 | sup3: sup3$1,
|
---|
6647 | szlig: szlig$1,
|
---|
6648 | THORN: THORN$1,
|
---|
6649 | thorn: thorn$1,
|
---|
6650 | times: times$1,
|
---|
6651 | Uacute: Uacute$1,
|
---|
6652 | uacute: uacute$1,
|
---|
6653 | Ucirc: Ucirc$1,
|
---|
6654 | ucirc: ucirc$1,
|
---|
6655 | Ugrave: Ugrave$1,
|
---|
6656 | ugrave: ugrave$1,
|
---|
6657 | uml: uml$1,
|
---|
6658 | Uuml: Uuml$1,
|
---|
6659 | uuml: uuml$1,
|
---|
6660 | Yacute: Yacute$1,
|
---|
6661 | yacute: yacute$1,
|
---|
6662 | yen: yen$1,
|
---|
6663 | yuml: yuml$1
|
---|
6664 | };
|
---|
6665 |
|
---|
6666 | var legacy$1 = {
|
---|
6667 | __proto__: null,
|
---|
6668 | Aacute: Aacute$1,
|
---|
6669 | aacute: aacute$1,
|
---|
6670 | Acirc: Acirc$1,
|
---|
6671 | acirc: acirc$1,
|
---|
6672 | acute: acute$1,
|
---|
6673 | AElig: AElig$1,
|
---|
6674 | aelig: aelig$1,
|
---|
6675 | Agrave: Agrave$1,
|
---|
6676 | agrave: agrave$1,
|
---|
6677 | amp: amp$1,
|
---|
6678 | AMP: AMP$1,
|
---|
6679 | Aring: Aring$1,
|
---|
6680 | aring: aring$1,
|
---|
6681 | Atilde: Atilde$1,
|
---|
6682 | atilde: atilde$1,
|
---|
6683 | Auml: Auml$1,
|
---|
6684 | auml: auml$1,
|
---|
6685 | brvbar: brvbar$1,
|
---|
6686 | Ccedil: Ccedil$1,
|
---|
6687 | ccedil: ccedil$1,
|
---|
6688 | cedil: cedil$1,
|
---|
6689 | cent: cent$1,
|
---|
6690 | copy: copy$1,
|
---|
6691 | COPY: COPY$1,
|
---|
6692 | curren: curren$1,
|
---|
6693 | deg: deg$1,
|
---|
6694 | divide: divide$1,
|
---|
6695 | Eacute: Eacute$1,
|
---|
6696 | eacute: eacute$1,
|
---|
6697 | Ecirc: Ecirc$1,
|
---|
6698 | ecirc: ecirc$1,
|
---|
6699 | Egrave: Egrave$1,
|
---|
6700 | egrave: egrave$1,
|
---|
6701 | ETH: ETH$1,
|
---|
6702 | eth: eth$1,
|
---|
6703 | Euml: Euml$1,
|
---|
6704 | euml: euml$1,
|
---|
6705 | frac12: frac12$1,
|
---|
6706 | frac14: frac14$1,
|
---|
6707 | frac34: frac34$1,
|
---|
6708 | gt: gt$1,
|
---|
6709 | GT: GT$1,
|
---|
6710 | Iacute: Iacute$1,
|
---|
6711 | iacute: iacute$1,
|
---|
6712 | Icirc: Icirc$1,
|
---|
6713 | icirc: icirc$1,
|
---|
6714 | iexcl: iexcl$1,
|
---|
6715 | Igrave: Igrave$1,
|
---|
6716 | igrave: igrave$1,
|
---|
6717 | iquest: iquest$1,
|
---|
6718 | Iuml: Iuml$1,
|
---|
6719 | iuml: iuml$1,
|
---|
6720 | laquo: laquo$1,
|
---|
6721 | lt: lt$1,
|
---|
6722 | LT: LT$1,
|
---|
6723 | macr: macr$1,
|
---|
6724 | micro: micro$1,
|
---|
6725 | middot: middot$1,
|
---|
6726 | nbsp: nbsp$1,
|
---|
6727 | not: not$1,
|
---|
6728 | Ntilde: Ntilde$1,
|
---|
6729 | ntilde: ntilde$1,
|
---|
6730 | Oacute: Oacute$1,
|
---|
6731 | oacute: oacute$1,
|
---|
6732 | Ocirc: Ocirc$1,
|
---|
6733 | ocirc: ocirc$1,
|
---|
6734 | Ograve: Ograve$1,
|
---|
6735 | ograve: ograve$1,
|
---|
6736 | ordf: ordf$1,
|
---|
6737 | ordm: ordm$1,
|
---|
6738 | Oslash: Oslash$1,
|
---|
6739 | oslash: oslash$1,
|
---|
6740 | Otilde: Otilde$1,
|
---|
6741 | otilde: otilde$1,
|
---|
6742 | Ouml: Ouml$1,
|
---|
6743 | ouml: ouml$1,
|
---|
6744 | para: para$1,
|
---|
6745 | plusmn: plusmn$1,
|
---|
6746 | pound: pound$1,
|
---|
6747 | quot: quot$1,
|
---|
6748 | QUOT: QUOT$1,
|
---|
6749 | raquo: raquo$1,
|
---|
6750 | reg: reg$1,
|
---|
6751 | REG: REG$1,
|
---|
6752 | sect: sect$1,
|
---|
6753 | shy: shy$1,
|
---|
6754 | sup1: sup1$1,
|
---|
6755 | sup2: sup2$1,
|
---|
6756 | sup3: sup3$1,
|
---|
6757 | szlig: szlig$1,
|
---|
6758 | THORN: THORN$1,
|
---|
6759 | thorn: thorn$1,
|
---|
6760 | times: times$1,
|
---|
6761 | Uacute: Uacute$1,
|
---|
6762 | uacute: uacute$1,
|
---|
6763 | Ucirc: Ucirc$1,
|
---|
6764 | ucirc: ucirc$1,
|
---|
6765 | Ugrave: Ugrave$1,
|
---|
6766 | ugrave: ugrave$1,
|
---|
6767 | uml: uml$1,
|
---|
6768 | Uuml: Uuml$1,
|
---|
6769 | uuml: uuml$1,
|
---|
6770 | Yacute: Yacute$1,
|
---|
6771 | yacute: yacute$1,
|
---|
6772 | yen: yen$1,
|
---|
6773 | yuml: yuml$1,
|
---|
6774 | 'default': legacy
|
---|
6775 | };
|
---|
6776 |
|
---|
6777 | var amp$2 = "&";
|
---|
6778 | var apos$1 = "'";
|
---|
6779 | var gt$2 = ">";
|
---|
6780 | var lt$2 = "<";
|
---|
6781 | var quot$2 = "\"";
|
---|
6782 | var xml = {
|
---|
6783 | amp: amp$2,
|
---|
6784 | apos: apos$1,
|
---|
6785 | gt: gt$2,
|
---|
6786 | lt: lt$2,
|
---|
6787 | quot: quot$2
|
---|
6788 | };
|
---|
6789 |
|
---|
6790 | var xml$1 = {
|
---|
6791 | __proto__: null,
|
---|
6792 | amp: amp$2,
|
---|
6793 | apos: apos$1,
|
---|
6794 | gt: gt$2,
|
---|
6795 | lt: lt$2,
|
---|
6796 | quot: quot$2,
|
---|
6797 | 'default': xml
|
---|
6798 | };
|
---|
6799 |
|
---|
6800 | var decode = {
|
---|
6801 | "0": 65533,
|
---|
6802 | "128": 8364,
|
---|
6803 | "130": 8218,
|
---|
6804 | "131": 402,
|
---|
6805 | "132": 8222,
|
---|
6806 | "133": 8230,
|
---|
6807 | "134": 8224,
|
---|
6808 | "135": 8225,
|
---|
6809 | "136": 710,
|
---|
6810 | "137": 8240,
|
---|
6811 | "138": 352,
|
---|
6812 | "139": 8249,
|
---|
6813 | "140": 338,
|
---|
6814 | "142": 381,
|
---|
6815 | "145": 8216,
|
---|
6816 | "146": 8217,
|
---|
6817 | "147": 8220,
|
---|
6818 | "148": 8221,
|
---|
6819 | "149": 8226,
|
---|
6820 | "150": 8211,
|
---|
6821 | "151": 8212,
|
---|
6822 | "152": 732,
|
---|
6823 | "153": 8482,
|
---|
6824 | "154": 353,
|
---|
6825 | "155": 8250,
|
---|
6826 | "156": 339,
|
---|
6827 | "158": 382,
|
---|
6828 | "159": 376
|
---|
6829 | };
|
---|
6830 |
|
---|
6831 | var decode$1 = {
|
---|
6832 | __proto__: null,
|
---|
6833 | 'default': decode
|
---|
6834 | };
|
---|
6835 |
|
---|
6836 | var require$$0 = getCjsExportFromNamespace(decode$1);
|
---|
6837 |
|
---|
6838 | var decode_codepoint = createCommonjsModule(function (module, exports) {
|
---|
6839 | var __importDefault = (commonjsGlobal && commonjsGlobal.__importDefault) || function (mod) {
|
---|
6840 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
---|
6841 | };
|
---|
6842 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
6843 | var decode_json_1 = __importDefault(require$$0);
|
---|
6844 | // modified version of https://github.com/mathiasbynens/he/blob/master/src/he.js#L94-L119
|
---|
6845 | function decodeCodePoint(codePoint) {
|
---|
6846 | if ((codePoint >= 0xd800 && codePoint <= 0xdfff) || codePoint > 0x10ffff) {
|
---|
6847 | return "\uFFFD";
|
---|
6848 | }
|
---|
6849 | if (codePoint in decode_json_1.default) {
|
---|
6850 | codePoint = decode_json_1.default[codePoint];
|
---|
6851 | }
|
---|
6852 | var output = "";
|
---|
6853 | if (codePoint > 0xffff) {
|
---|
6854 | codePoint -= 0x10000;
|
---|
6855 | output += String.fromCharCode(((codePoint >>> 10) & 0x3ff) | 0xd800);
|
---|
6856 | codePoint = 0xdc00 | (codePoint & 0x3ff);
|
---|
6857 | }
|
---|
6858 | output += String.fromCharCode(codePoint);
|
---|
6859 | return output;
|
---|
6860 | }
|
---|
6861 | exports.default = decodeCodePoint;
|
---|
6862 | });
|
---|
6863 |
|
---|
6864 | var require$$1 = getCjsExportFromNamespace(entities$1);
|
---|
6865 |
|
---|
6866 | var require$$1$1 = getCjsExportFromNamespace(legacy$1);
|
---|
6867 |
|
---|
6868 | var require$$0$1 = getCjsExportFromNamespace(xml$1);
|
---|
6869 |
|
---|
6870 | var decode$2 = createCommonjsModule(function (module, exports) {
|
---|
6871 | var __importDefault = (commonjsGlobal && commonjsGlobal.__importDefault) || function (mod) {
|
---|
6872 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
---|
6873 | };
|
---|
6874 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
6875 | exports.decodeHTML = exports.decodeHTMLStrict = exports.decodeXML = void 0;
|
---|
6876 | var entities_json_1 = __importDefault(require$$1);
|
---|
6877 | var legacy_json_1 = __importDefault(require$$1$1);
|
---|
6878 | var xml_json_1 = __importDefault(require$$0$1);
|
---|
6879 | var decode_codepoint_1 = __importDefault(decode_codepoint);
|
---|
6880 | exports.decodeXML = getStrictDecoder(xml_json_1.default);
|
---|
6881 | exports.decodeHTMLStrict = getStrictDecoder(entities_json_1.default);
|
---|
6882 | function getStrictDecoder(map) {
|
---|
6883 | var keys = Object.keys(map).join("|");
|
---|
6884 | var replace = getReplacer(map);
|
---|
6885 | keys += "|#[xX][\\da-fA-F]+|#\\d+";
|
---|
6886 | var re = new RegExp("&(?:" + keys + ");", "g");
|
---|
6887 | return function (str) { return String(str).replace(re, replace); };
|
---|
6888 | }
|
---|
6889 | var sorter = function (a, b) { return (a < b ? 1 : -1); };
|
---|
6890 | exports.decodeHTML = (function () {
|
---|
6891 | var legacy = Object.keys(legacy_json_1.default).sort(sorter);
|
---|
6892 | var keys = Object.keys(entities_json_1.default).sort(sorter);
|
---|
6893 | for (var i = 0, j = 0; i < keys.length; i++) {
|
---|
6894 | if (legacy[j] === keys[i]) {
|
---|
6895 | keys[i] += ";?";
|
---|
6896 | j++;
|
---|
6897 | }
|
---|
6898 | else {
|
---|
6899 | keys[i] += ";";
|
---|
6900 | }
|
---|
6901 | }
|
---|
6902 | var re = new RegExp("&(?:" + keys.join("|") + "|#[xX][\\da-fA-F]+;?|#\\d+;?)", "g");
|
---|
6903 | var replace = getReplacer(entities_json_1.default);
|
---|
6904 | function replacer(str) {
|
---|
6905 | if (str.substr(-1) !== ";")
|
---|
6906 | str += ";";
|
---|
6907 | return replace(str);
|
---|
6908 | }
|
---|
6909 | //TODO consider creating a merged map
|
---|
6910 | return function (str) { return String(str).replace(re, replacer); };
|
---|
6911 | })();
|
---|
6912 | function getReplacer(map) {
|
---|
6913 | return function replace(str) {
|
---|
6914 | if (str.charAt(1) === "#") {
|
---|
6915 | var secondChar = str.charAt(2);
|
---|
6916 | if (secondChar === "X" || secondChar === "x") {
|
---|
6917 | return decode_codepoint_1.default(parseInt(str.substr(3), 16));
|
---|
6918 | }
|
---|
6919 | return decode_codepoint_1.default(parseInt(str.substr(2), 10));
|
---|
6920 | }
|
---|
6921 | return map[str.slice(1, -1)];
|
---|
6922 | };
|
---|
6923 | }
|
---|
6924 | });
|
---|
6925 |
|
---|
6926 | var encode = createCommonjsModule(function (module, exports) {
|
---|
6927 | var __importDefault = (commonjsGlobal && commonjsGlobal.__importDefault) || function (mod) {
|
---|
6928 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
---|
6929 | };
|
---|
6930 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
6931 | exports.escape = exports.encodeHTML = exports.encodeXML = void 0;
|
---|
6932 | var xml_json_1 = __importDefault(require$$0$1);
|
---|
6933 | var inverseXML = getInverseObj(xml_json_1.default);
|
---|
6934 | var xmlReplacer = getInverseReplacer(inverseXML);
|
---|
6935 | exports.encodeXML = getInverse(inverseXML, xmlReplacer);
|
---|
6936 | var entities_json_1 = __importDefault(require$$1);
|
---|
6937 | var inverseHTML = getInverseObj(entities_json_1.default);
|
---|
6938 | var htmlReplacer = getInverseReplacer(inverseHTML);
|
---|
6939 | exports.encodeHTML = getInverse(inverseHTML, htmlReplacer);
|
---|
6940 | function getInverseObj(obj) {
|
---|
6941 | return Object.keys(obj)
|
---|
6942 | .sort()
|
---|
6943 | .reduce(function (inverse, name) {
|
---|
6944 | inverse[obj[name]] = "&" + name + ";";
|
---|
6945 | return inverse;
|
---|
6946 | }, {});
|
---|
6947 | }
|
---|
6948 | function getInverseReplacer(inverse) {
|
---|
6949 | var single = [];
|
---|
6950 | var multiple = [];
|
---|
6951 | for (var _i = 0, _a = Object.keys(inverse); _i < _a.length; _i++) {
|
---|
6952 | var k = _a[_i];
|
---|
6953 | if (k.length === 1) {
|
---|
6954 | // Add value to single array
|
---|
6955 | single.push("\\" + k);
|
---|
6956 | }
|
---|
6957 | else {
|
---|
6958 | // Add value to multiple array
|
---|
6959 | multiple.push(k);
|
---|
6960 | }
|
---|
6961 | }
|
---|
6962 | // Add ranges to single characters.
|
---|
6963 | single.sort();
|
---|
6964 | for (var start = 0; start < single.length - 1; start++) {
|
---|
6965 | // Find the end of a run of characters
|
---|
6966 | var end = start;
|
---|
6967 | while (end < single.length - 1 &&
|
---|
6968 | single[end].charCodeAt(1) + 1 === single[end + 1].charCodeAt(1)) {
|
---|
6969 | end += 1;
|
---|
6970 | }
|
---|
6971 | var count = 1 + end - start;
|
---|
6972 | // We want to replace at least three characters
|
---|
6973 | if (count < 3)
|
---|
6974 | continue;
|
---|
6975 | single.splice(start, count, single[start] + "-" + single[end]);
|
---|
6976 | }
|
---|
6977 | multiple.unshift("[" + single.join("") + "]");
|
---|
6978 | return new RegExp(multiple.join("|"), "g");
|
---|
6979 | }
|
---|
6980 | var reNonASCII = /(?:[\x80-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g;
|
---|
6981 | function singleCharReplacer(c) {
|
---|
6982 | // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
---|
6983 | return "&#x" + c.codePointAt(0).toString(16).toUpperCase() + ";";
|
---|
6984 | }
|
---|
6985 | function getInverse(inverse, re) {
|
---|
6986 | return function (data) {
|
---|
6987 | return data
|
---|
6988 | .replace(re, function (name) { return inverse[name]; })
|
---|
6989 | .replace(reNonASCII, singleCharReplacer);
|
---|
6990 | };
|
---|
6991 | }
|
---|
6992 | var reXmlChars = getInverseReplacer(inverseXML);
|
---|
6993 | function escape(data) {
|
---|
6994 | return data
|
---|
6995 | .replace(reXmlChars, singleCharReplacer)
|
---|
6996 | .replace(reNonASCII, singleCharReplacer);
|
---|
6997 | }
|
---|
6998 | exports.escape = escape;
|
---|
6999 | });
|
---|
7000 |
|
---|
7001 | var lib$1 = createCommonjsModule(function (module, exports) {
|
---|
7002 | Object.defineProperty(exports, "__esModule", { value: true });
|
---|
7003 | exports.encode = exports.decodeStrict = exports.decode = void 0;
|
---|
7004 |
|
---|
7005 |
|
---|
7006 | /**
|
---|
7007 | * Decodes a string with entities.
|
---|
7008 | *
|
---|
7009 | * @param data String to decode.
|
---|
7010 | * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.
|
---|
7011 | */
|
---|
7012 | function decode(data, level) {
|
---|
7013 | return (!level || level <= 0 ? decode$2.decodeXML : decode$2.decodeHTML)(data);
|
---|
7014 | }
|
---|
7015 | exports.decode = decode;
|
---|
7016 | /**
|
---|
7017 | * Decodes a string with entities. Does not allow missing trailing semicolons for entities.
|
---|
7018 | *
|
---|
7019 | * @param data String to decode.
|
---|
7020 | * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.
|
---|
7021 | */
|
---|
7022 | function decodeStrict(data, level) {
|
---|
7023 | return (!level || level <= 0 ? decode$2.decodeXML : decode$2.decodeHTMLStrict)(data);
|
---|
7024 | }
|
---|
7025 | exports.decodeStrict = decodeStrict;
|
---|
7026 | /**
|
---|
7027 | * Encodes a string with entities.
|
---|
7028 | *
|
---|
7029 | * @param data String to encode.
|
---|
7030 | * @param level Optional level to encode at. 0 = XML, 1 = HTML. Default is 0.
|
---|
7031 | */
|
---|
7032 | function encode$1(data, level) {
|
---|
7033 | return (!level || level <= 0 ? encode.encodeXML : encode.encodeHTML)(data);
|
---|
7034 | }
|
---|
7035 | exports.encode = encode$1;
|
---|
7036 | var encode_2 = encode;
|
---|
7037 | Object.defineProperty(exports, "encodeXML", { enumerable: true, get: function () { return encode_2.encodeXML; } });
|
---|
7038 | Object.defineProperty(exports, "encodeHTML", { enumerable: true, get: function () { return encode_2.encodeHTML; } });
|
---|
7039 | Object.defineProperty(exports, "escape", { enumerable: true, get: function () { return encode_2.escape; } });
|
---|
7040 | // Legacy aliases
|
---|
7041 | Object.defineProperty(exports, "encodeHTML4", { enumerable: true, get: function () { return encode_2.encodeHTML; } });
|
---|
7042 | Object.defineProperty(exports, "encodeHTML5", { enumerable: true, get: function () { return encode_2.encodeHTML; } });
|
---|
7043 | var decode_2 = decode$2;
|
---|
7044 | Object.defineProperty(exports, "decodeXML", { enumerable: true, get: function () { return decode_2.decodeXML; } });
|
---|
7045 | Object.defineProperty(exports, "decodeHTML", { enumerable: true, get: function () { return decode_2.decodeHTML; } });
|
---|
7046 | Object.defineProperty(exports, "decodeHTMLStrict", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });
|
---|
7047 | // Legacy aliases
|
---|
7048 | Object.defineProperty(exports, "decodeHTML4", { enumerable: true, get: function () { return decode_2.decodeHTML; } });
|
---|
7049 | Object.defineProperty(exports, "decodeHTML5", { enumerable: true, get: function () { return decode_2.decodeHTML; } });
|
---|
7050 | Object.defineProperty(exports, "decodeHTML4Strict", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });
|
---|
7051 | Object.defineProperty(exports, "decodeHTML5Strict", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });
|
---|
7052 | Object.defineProperty(exports, "decodeXMLStrict", { enumerable: true, get: function () { return decode_2.decodeXML; } });
|
---|
7053 | });
|
---|
7054 |
|
---|
7055 | var elementNames = {
|
---|
7056 | altglyph: "altGlyph",
|
---|
7057 | altglyphdef: "altGlyphDef",
|
---|
7058 | altglyphitem: "altGlyphItem",
|
---|
7059 | animatecolor: "animateColor",
|
---|
7060 | animatemotion: "animateMotion",
|
---|
7061 | animatetransform: "animateTransform",
|
---|
7062 | clippath: "clipPath",
|
---|
7063 | feblend: "feBlend",
|
---|
7064 | fecolormatrix: "feColorMatrix",
|
---|
7065 | fecomponenttransfer: "feComponentTransfer",
|
---|
7066 | fecomposite: "feComposite",
|
---|
7067 | feconvolvematrix: "feConvolveMatrix",
|
---|
7068 | fediffuselighting: "feDiffuseLighting",
|
---|
7069 | fedisplacementmap: "feDisplacementMap",
|
---|
7070 | fedistantlight: "feDistantLight",
|
---|
7071 | fedropshadow: "feDropShadow",
|
---|
7072 | feflood: "feFlood",
|
---|
7073 | fefunca: "feFuncA",
|
---|
7074 | fefuncb: "feFuncB",
|
---|
7075 | fefuncg: "feFuncG",
|
---|
7076 | fefuncr: "feFuncR",
|
---|
7077 | fegaussianblur: "feGaussianBlur",
|
---|
7078 | feimage: "feImage",
|
---|
7079 | femerge: "feMerge",
|
---|
7080 | femergenode: "feMergeNode",
|
---|
7081 | femorphology: "feMorphology",
|
---|
7082 | feoffset: "feOffset",
|
---|
7083 | fepointlight: "fePointLight",
|
---|
7084 | fespecularlighting: "feSpecularLighting",
|
---|
7085 | fespotlight: "feSpotLight",
|
---|
7086 | fetile: "feTile",
|
---|
7087 | feturbulence: "feTurbulence",
|
---|
7088 | foreignobject: "foreignObject",
|
---|
7089 | glyphref: "glyphRef",
|
---|
7090 | lineargradient: "linearGradient",
|
---|
7091 | radialgradient: "radialGradient",
|
---|
7092 | textpath: "textPath"
|
---|
7093 | };
|
---|
7094 | var attributeNames = {
|
---|
7095 | definitionurl: "definitionURL",
|
---|
7096 | attributename: "attributeName",
|
---|
7097 | attributetype: "attributeType",
|
---|
7098 | basefrequency: "baseFrequency",
|
---|
7099 | baseprofile: "baseProfile",
|
---|
7100 | calcmode: "calcMode",
|
---|
7101 | clippathunits: "clipPathUnits",
|
---|
7102 | diffuseconstant: "diffuseConstant",
|
---|
7103 | edgemode: "edgeMode",
|
---|
7104 | filterunits: "filterUnits",
|
---|
7105 | glyphref: "glyphRef",
|
---|
7106 | gradienttransform: "gradientTransform",
|
---|
7107 | gradientunits: "gradientUnits",
|
---|
7108 | kernelmatrix: "kernelMatrix",
|
---|
7109 | kernelunitlength: "kernelUnitLength",
|
---|
7110 | keypoints: "keyPoints",
|
---|
7111 | keysplines: "keySplines",
|
---|
7112 | keytimes: "keyTimes",
|
---|
7113 | lengthadjust: "lengthAdjust",
|
---|
7114 | limitingconeangle: "limitingConeAngle",
|
---|
7115 | markerheight: "markerHeight",
|
---|
7116 | markerunits: "markerUnits",
|
---|
7117 | markerwidth: "markerWidth",
|
---|
7118 | maskcontentunits: "maskContentUnits",
|
---|
7119 | maskunits: "maskUnits",
|
---|
7120 | numoctaves: "numOctaves",
|
---|
7121 | pathlength: "pathLength",
|
---|
7122 | patterncontentunits: "patternContentUnits",
|
---|
7123 | patterntransform: "patternTransform",
|
---|
7124 | patternunits: "patternUnits",
|
---|
7125 | pointsatx: "pointsAtX",
|
---|
7126 | pointsaty: "pointsAtY",
|
---|
7127 | pointsatz: "pointsAtZ",
|
---|
7128 | preservealpha: "preserveAlpha",
|
---|
7129 | preserveaspectratio: "preserveAspectRatio",
|
---|
7130 | primitiveunits: "primitiveUnits",
|
---|
7131 | refx: "refX",
|
---|
7132 | refy: "refY",
|
---|
7133 | repeatcount: "repeatCount",
|
---|
7134 | repeatdur: "repeatDur",
|
---|
7135 | requiredextensions: "requiredExtensions",
|
---|
7136 | requiredfeatures: "requiredFeatures",
|
---|
7137 | specularconstant: "specularConstant",
|
---|
7138 | specularexponent: "specularExponent",
|
---|
7139 | spreadmethod: "spreadMethod",
|
---|
7140 | startoffset: "startOffset",
|
---|
7141 | stddeviation: "stdDeviation",
|
---|
7142 | stitchtiles: "stitchTiles",
|
---|
7143 | surfacescale: "surfaceScale",
|
---|
7144 | systemlanguage: "systemLanguage",
|
---|
7145 | tablevalues: "tableValues",
|
---|
7146 | targetx: "targetX",
|
---|
7147 | targety: "targetY",
|
---|
7148 | textlength: "textLength",
|
---|
7149 | viewbox: "viewBox",
|
---|
7150 | viewtarget: "viewTarget",
|
---|
7151 | xchannelselector: "xChannelSelector",
|
---|
7152 | ychannelselector: "yChannelSelector",
|
---|
7153 | zoomandpan: "zoomAndPan"
|
---|
7154 | };
|
---|
7155 | var foreignNames = {
|
---|
7156 | elementNames: elementNames,
|
---|
7157 | attributeNames: attributeNames
|
---|
7158 | };
|
---|
7159 |
|
---|
7160 | var foreignNames$1 = {
|
---|
7161 | __proto__: null,
|
---|
7162 | elementNames: elementNames,
|
---|
7163 | attributeNames: attributeNames,
|
---|
7164 | 'default': foreignNames
|
---|
7165 | };
|
---|
7166 |
|
---|
7167 | var foreignNames$2 = getCjsExportFromNamespace(foreignNames$1);
|
---|
7168 |
|
---|
7169 | var domSerializer = createCommonjsModule(function (module) {
|
---|
7170 | /*
|
---|
7171 | Module dependencies
|
---|
7172 | */
|
---|
7173 |
|
---|
7174 |
|
---|
7175 |
|
---|
7176 | /* mixed-case SVG and MathML tags & attributes
|
---|
7177 | recognized by the HTML parser, see
|
---|
7178 | https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inforeign
|
---|
7179 | */
|
---|
7180 |
|
---|
7181 | foreignNames$2.elementNames.__proto__ = null; /* use as a simple dictionary */
|
---|
7182 | foreignNames$2.attributeNames.__proto__ = null;
|
---|
7183 |
|
---|
7184 | var unencodedElements = {
|
---|
7185 | __proto__: null,
|
---|
7186 | style: true,
|
---|
7187 | script: true,
|
---|
7188 | xmp: true,
|
---|
7189 | iframe: true,
|
---|
7190 | noembed: true,
|
---|
7191 | noframes: true,
|
---|
7192 | plaintext: true,
|
---|
7193 | noscript: true
|
---|
7194 | };
|
---|
7195 |
|
---|
7196 | /*
|
---|
7197 | Format attributes
|
---|
7198 | */
|
---|
7199 | function formatAttrs(attributes, opts) {
|
---|
7200 | if (!attributes) return;
|
---|
7201 |
|
---|
7202 | var output = '';
|
---|
7203 | var value;
|
---|
7204 |
|
---|
7205 | // Loop through the attributes
|
---|
7206 | for (var key in attributes) {
|
---|
7207 | value = attributes[key];
|
---|
7208 | if (output) {
|
---|
7209 | output += ' ';
|
---|
7210 | }
|
---|
7211 |
|
---|
7212 | if (opts.xmlMode === 'foreign') {
|
---|
7213 | /* fix up mixed-case attribute names */
|
---|
7214 | key = foreignNames$2.attributeNames[key] || key;
|
---|
7215 | }
|
---|
7216 | output += key;
|
---|
7217 | if ((value !== null && value !== '') || opts.xmlMode) {
|
---|
7218 | output +=
|
---|
7219 | '="' +
|
---|
7220 | (opts.decodeEntities
|
---|
7221 | ? lib$1.encodeXML(value)
|
---|
7222 | : value.replace(/\"/g, '"')) +
|
---|
7223 | '"';
|
---|
7224 | }
|
---|
7225 | }
|
---|
7226 |
|
---|
7227 | return output;
|
---|
7228 | }
|
---|
7229 |
|
---|
7230 | /*
|
---|
7231 | Self-enclosing tags (stolen from node-htmlparser)
|
---|
7232 | */
|
---|
7233 | var singleTag = {
|
---|
7234 | __proto__: null,
|
---|
7235 | area: true,
|
---|
7236 | base: true,
|
---|
7237 | basefont: true,
|
---|
7238 | br: true,
|
---|
7239 | col: true,
|
---|
7240 | command: true,
|
---|
7241 | embed: true,
|
---|
7242 | frame: true,
|
---|
7243 | hr: true,
|
---|
7244 | img: true,
|
---|
7245 | input: true,
|
---|
7246 | isindex: true,
|
---|
7247 | keygen: true,
|
---|
7248 | link: true,
|
---|
7249 | meta: true,
|
---|
7250 | param: true,
|
---|
7251 | source: true,
|
---|
7252 | track: true,
|
---|
7253 | wbr: true
|
---|
7254 | };
|
---|
7255 |
|
---|
7256 | var render = (module.exports = function(dom, opts) {
|
---|
7257 | if (!Array.isArray(dom) && !dom.cheerio) dom = [dom];
|
---|
7258 | opts = opts || {};
|
---|
7259 |
|
---|
7260 | var output = '';
|
---|
7261 |
|
---|
7262 | for (var i = 0; i < dom.length; i++) {
|
---|
7263 | var elem = dom[i];
|
---|
7264 |
|
---|
7265 | if (elem.type === 'root') output += render(elem.children, opts);
|
---|
7266 | else if (lib.isTag(elem)) output += renderTag(elem, opts);
|
---|
7267 | else if (elem.type === lib.Directive)
|
---|
7268 | output += renderDirective(elem);
|
---|
7269 | else if (elem.type === lib.Comment) output += renderComment(elem);
|
---|
7270 | else if (elem.type === lib.CDATA) output += renderCdata(elem);
|
---|
7271 | else output += renderText(elem, opts);
|
---|
7272 | }
|
---|
7273 |
|
---|
7274 | return output;
|
---|
7275 | });
|
---|
7276 |
|
---|
7277 | var foreignModeIntegrationPoints = [
|
---|
7278 | 'mi',
|
---|
7279 | 'mo',
|
---|
7280 | 'mn',
|
---|
7281 | 'ms',
|
---|
7282 | 'mtext',
|
---|
7283 | 'annotation-xml',
|
---|
7284 | 'foreignObject',
|
---|
7285 | 'desc',
|
---|
7286 | 'title'
|
---|
7287 | ];
|
---|
7288 |
|
---|
7289 | function renderTag(elem, opts) {
|
---|
7290 | // Handle SVG / MathML in HTML
|
---|
7291 | if (opts.xmlMode === 'foreign') {
|
---|
7292 | /* fix up mixed-case element names */
|
---|
7293 | elem.name = foreignNames$2.elementNames[elem.name] || elem.name;
|
---|
7294 | /* exit foreign mode at integration points */
|
---|
7295 | if (
|
---|
7296 | elem.parent &&
|
---|
7297 | foreignModeIntegrationPoints.indexOf(elem.parent.name) >= 0
|
---|
7298 | )
|
---|
7299 | opts = Object.assign({}, opts, { xmlMode: false });
|
---|
7300 | }
|
---|
7301 | if (!opts.xmlMode && ['svg', 'math'].indexOf(elem.name) >= 0) {
|
---|
7302 | opts = Object.assign({}, opts, { xmlMode: 'foreign' });
|
---|
7303 | }
|
---|
7304 |
|
---|
7305 | var tag = '<' + elem.name;
|
---|
7306 | var attribs = formatAttrs(elem.attribs, opts);
|
---|
7307 |
|
---|
7308 | if (attribs) {
|
---|
7309 | tag += ' ' + attribs;
|
---|
7310 | }
|
---|
7311 |
|
---|
7312 | if (opts.xmlMode && (!elem.children || elem.children.length === 0)) {
|
---|
7313 | tag += '/>';
|
---|
7314 | } else {
|
---|
7315 | tag += '>';
|
---|
7316 | if (elem.children) {
|
---|
7317 | tag += render(elem.children, opts);
|
---|
7318 | }
|
---|
7319 |
|
---|
7320 | if (!singleTag[elem.name] || opts.xmlMode) {
|
---|
7321 | tag += '</' + elem.name + '>';
|
---|
7322 | }
|
---|
7323 | }
|
---|
7324 |
|
---|
7325 | return tag;
|
---|
7326 | }
|
---|
7327 |
|
---|
7328 | function renderDirective(elem) {
|
---|
7329 | return '<' + elem.data + '>';
|
---|
7330 | }
|
---|
7331 |
|
---|
7332 | function renderText(elem, opts) {
|
---|
7333 | var data = elem.data || '';
|
---|
7334 |
|
---|
7335 | // if entities weren't decoded, no need to encode them back
|
---|
7336 | if (
|
---|
7337 | opts.decodeEntities &&
|
---|
7338 | !(elem.parent && elem.parent.name in unencodedElements)
|
---|
7339 | ) {
|
---|
7340 | data = lib$1.encodeXML(data);
|
---|
7341 | }
|
---|
7342 |
|
---|
7343 | return data;
|
---|
7344 | }
|
---|
7345 |
|
---|
7346 | function renderCdata(elem) {
|
---|
7347 | return '<![CDATA[' + elem.children[0].data + ']]>';
|
---|
7348 | }
|
---|
7349 |
|
---|
7350 | function renderComment(elem) {
|
---|
7351 | return '<!--' + elem.data + '-->';
|
---|
7352 | }
|
---|
7353 | });
|
---|
7354 |
|
---|
7355 | var isTag = domelementtype.isTag;
|
---|
7356 |
|
---|
7357 | var stringify = {
|
---|
7358 | getInnerHTML: getInnerHTML,
|
---|
7359 | getOuterHTML: domSerializer,
|
---|
7360 | getText: getText
|
---|
7361 | };
|
---|
7362 |
|
---|
7363 | function getInnerHTML(elem, opts){
|
---|
7364 | return elem.children ? elem.children.map(function(elem){
|
---|
7365 | return domSerializer(elem, opts);
|
---|
7366 | }).join("") : "";
|
---|
7367 | }
|
---|
7368 |
|
---|
7369 | function getText(elem){
|
---|
7370 | if(Array.isArray(elem)) return elem.map(getText).join("");
|
---|
7371 | if(isTag(elem) || elem.type === domelementtype.CDATA) return getText(elem.children);
|
---|
7372 | if(elem.type === domelementtype.Text) return elem.data;
|
---|
7373 | return "";
|
---|
7374 | }
|
---|
7375 |
|
---|
7376 | var traversal = createCommonjsModule(function (module, exports) {
|
---|
7377 | var getChildren = exports.getChildren = function(elem){
|
---|
7378 | return elem.children;
|
---|
7379 | };
|
---|
7380 |
|
---|
7381 | var getParent = exports.getParent = function(elem){
|
---|
7382 | return elem.parent;
|
---|
7383 | };
|
---|
7384 |
|
---|
7385 | exports.getSiblings = function(elem){
|
---|
7386 | var parent = getParent(elem);
|
---|
7387 | return parent ? getChildren(parent) : [elem];
|
---|
7388 | };
|
---|
7389 |
|
---|
7390 | exports.getAttributeValue = function(elem, name){
|
---|
7391 | return elem.attribs && elem.attribs[name];
|
---|
7392 | };
|
---|
7393 |
|
---|
7394 | exports.hasAttrib = function(elem, name){
|
---|
7395 | return !!elem.attribs && hasOwnProperty.call(elem.attribs, name);
|
---|
7396 | };
|
---|
7397 |
|
---|
7398 | exports.getName = function(elem){
|
---|
7399 | return elem.name;
|
---|
7400 | };
|
---|
7401 | });
|
---|
7402 |
|
---|
7403 | var removeElement = function(elem){
|
---|
7404 | if(elem.prev) elem.prev.next = elem.next;
|
---|
7405 | if(elem.next) elem.next.prev = elem.prev;
|
---|
7406 |
|
---|
7407 | if(elem.parent){
|
---|
7408 | var childs = elem.parent.children;
|
---|
7409 | childs.splice(childs.lastIndexOf(elem), 1);
|
---|
7410 | }
|
---|
7411 | };
|
---|
7412 |
|
---|
7413 | var replaceElement = function(elem, replacement){
|
---|
7414 | var prev = replacement.prev = elem.prev;
|
---|
7415 | if(prev){
|
---|
7416 | prev.next = replacement;
|
---|
7417 | }
|
---|
7418 |
|
---|
7419 | var next = replacement.next = elem.next;
|
---|
7420 | if(next){
|
---|
7421 | next.prev = replacement;
|
---|
7422 | }
|
---|
7423 |
|
---|
7424 | var parent = replacement.parent = elem.parent;
|
---|
7425 | if(parent){
|
---|
7426 | var childs = parent.children;
|
---|
7427 | childs[childs.lastIndexOf(elem)] = replacement;
|
---|
7428 | }
|
---|
7429 | };
|
---|
7430 |
|
---|
7431 | var appendChild = function(elem, child){
|
---|
7432 | child.parent = elem;
|
---|
7433 |
|
---|
7434 | if(elem.children.push(child) !== 1){
|
---|
7435 | var sibling = elem.children[elem.children.length - 2];
|
---|
7436 | sibling.next = child;
|
---|
7437 | child.prev = sibling;
|
---|
7438 | child.next = null;
|
---|
7439 | }
|
---|
7440 | };
|
---|
7441 |
|
---|
7442 | var append = function(elem, next){
|
---|
7443 | var parent = elem.parent,
|
---|
7444 | currNext = elem.next;
|
---|
7445 |
|
---|
7446 | next.next = currNext;
|
---|
7447 | next.prev = elem;
|
---|
7448 | elem.next = next;
|
---|
7449 | next.parent = parent;
|
---|
7450 |
|
---|
7451 | if(currNext){
|
---|
7452 | currNext.prev = next;
|
---|
7453 | if(parent){
|
---|
7454 | var childs = parent.children;
|
---|
7455 | childs.splice(childs.lastIndexOf(currNext), 0, next);
|
---|
7456 | }
|
---|
7457 | } else if(parent){
|
---|
7458 | parent.children.push(next);
|
---|
7459 | }
|
---|
7460 | };
|
---|
7461 |
|
---|
7462 | var prepend = function(elem, prev){
|
---|
7463 | var parent = elem.parent;
|
---|
7464 | if(parent){
|
---|
7465 | var childs = parent.children;
|
---|
7466 | childs.splice(childs.lastIndexOf(elem), 0, prev);
|
---|
7467 | }
|
---|
7468 |
|
---|
7469 | if(elem.prev){
|
---|
7470 | elem.prev.next = prev;
|
---|
7471 | }
|
---|
7472 |
|
---|
7473 | prev.parent = parent;
|
---|
7474 | prev.prev = elem.prev;
|
---|
7475 | prev.next = elem;
|
---|
7476 | elem.prev = prev;
|
---|
7477 | };
|
---|
7478 |
|
---|
7479 | var manipulation = {
|
---|
7480 | removeElement: removeElement,
|
---|
7481 | replaceElement: replaceElement,
|
---|
7482 | appendChild: appendChild,
|
---|
7483 | append: append,
|
---|
7484 | prepend: prepend
|
---|
7485 | };
|
---|
7486 |
|
---|
7487 | var isTag$1 = domelementtype.isTag;
|
---|
7488 |
|
---|
7489 | var querying = {
|
---|
7490 | filter: filter,
|
---|
7491 | find: find,
|
---|
7492 | findOneChild: findOneChild,
|
---|
7493 | findOne: findOne,
|
---|
7494 | existsOne: existsOne,
|
---|
7495 | findAll: findAll
|
---|
7496 | };
|
---|
7497 |
|
---|
7498 | function filter(test, element, recurse, limit){
|
---|
7499 | if(!Array.isArray(element)) element = [element];
|
---|
7500 |
|
---|
7501 | if(typeof limit !== "number" || !isFinite(limit)){
|
---|
7502 | limit = Infinity;
|
---|
7503 | }
|
---|
7504 | return find(test, element, recurse !== false, limit);
|
---|
7505 | }
|
---|
7506 |
|
---|
7507 | function find(test, elems, recurse, limit){
|
---|
7508 | var result = [], childs;
|
---|
7509 |
|
---|
7510 | for(var i = 0, j = elems.length; i < j; i++){
|
---|
7511 | if(test(elems[i])){
|
---|
7512 | result.push(elems[i]);
|
---|
7513 | if(--limit <= 0) break;
|
---|
7514 | }
|
---|
7515 |
|
---|
7516 | childs = elems[i].children;
|
---|
7517 | if(recurse && childs && childs.length > 0){
|
---|
7518 | childs = find(test, childs, recurse, limit);
|
---|
7519 | result = result.concat(childs);
|
---|
7520 | limit -= childs.length;
|
---|
7521 | if(limit <= 0) break;
|
---|
7522 | }
|
---|
7523 | }
|
---|
7524 |
|
---|
7525 | return result;
|
---|
7526 | }
|
---|
7527 |
|
---|
7528 | function findOneChild(test, elems){
|
---|
7529 | for(var i = 0, l = elems.length; i < l; i++){
|
---|
7530 | if(test(elems[i])) return elems[i];
|
---|
7531 | }
|
---|
7532 |
|
---|
7533 | return null;
|
---|
7534 | }
|
---|
7535 |
|
---|
7536 | function findOne(test, elems){
|
---|
7537 | var elem = null;
|
---|
7538 |
|
---|
7539 | for(var i = 0, l = elems.length; i < l && !elem; i++){
|
---|
7540 | if(!isTag$1(elems[i])){
|
---|
7541 | continue;
|
---|
7542 | } else if(test(elems[i])){
|
---|
7543 | elem = elems[i];
|
---|
7544 | } else if(elems[i].children.length > 0){
|
---|
7545 | elem = findOne(test, elems[i].children);
|
---|
7546 | }
|
---|
7547 | }
|
---|
7548 |
|
---|
7549 | return elem;
|
---|
7550 | }
|
---|
7551 |
|
---|
7552 | function existsOne(test, elems){
|
---|
7553 | for(var i = 0, l = elems.length; i < l; i++){
|
---|
7554 | if(
|
---|
7555 | isTag$1(elems[i]) && (
|
---|
7556 | test(elems[i]) || (
|
---|
7557 | elems[i].children.length > 0 &&
|
---|
7558 | existsOne(test, elems[i].children)
|
---|
7559 | )
|
---|
7560 | )
|
---|
7561 | ){
|
---|
7562 | return true;
|
---|
7563 | }
|
---|
7564 | }
|
---|
7565 |
|
---|
7566 | return false;
|
---|
7567 | }
|
---|
7568 |
|
---|
7569 | function findAll(test, elems){
|
---|
7570 | var result = [];
|
---|
7571 | for(var i = 0, j = elems.length; i < j; i++){
|
---|
7572 | if(!isTag$1(elems[i])) continue;
|
---|
7573 | if(test(elems[i])) result.push(elems[i]);
|
---|
7574 |
|
---|
7575 | if(elems[i].children.length > 0){
|
---|
7576 | result = result.concat(findAll(test, elems[i].children));
|
---|
7577 | }
|
---|
7578 | }
|
---|
7579 | return result;
|
---|
7580 | }
|
---|
7581 |
|
---|
7582 | var legacy$2 = createCommonjsModule(function (module, exports) {
|
---|
7583 | var isTag = exports.isTag = domelementtype.isTag;
|
---|
7584 |
|
---|
7585 | exports.testElement = function(options, element){
|
---|
7586 | for(var key in options){
|
---|
7587 | if(!options.hasOwnProperty(key));
|
---|
7588 | else if(key === "tag_name"){
|
---|
7589 | if(!isTag(element) || !options.tag_name(element.name)){
|
---|
7590 | return false;
|
---|
7591 | }
|
---|
7592 | } else if(key === "tag_type"){
|
---|
7593 | if(!options.tag_type(element.type)) return false;
|
---|
7594 | } else if(key === "tag_contains"){
|
---|
7595 | if(isTag(element) || !options.tag_contains(element.data)){
|
---|
7596 | return false;
|
---|
7597 | }
|
---|
7598 | } else if(!element.attribs || !options[key](element.attribs[key])){
|
---|
7599 | return false;
|
---|
7600 | }
|
---|
7601 | }
|
---|
7602 | return true;
|
---|
7603 | };
|
---|
7604 |
|
---|
7605 | var Checks = {
|
---|
7606 | tag_name: function(name){
|
---|
7607 | if(typeof name === "function"){
|
---|
7608 | return function(elem){ return isTag(elem) && name(elem.name); };
|
---|
7609 | } else if(name === "*"){
|
---|
7610 | return isTag;
|
---|
7611 | } else {
|
---|
7612 | return function(elem){ return isTag(elem) && elem.name === name; };
|
---|
7613 | }
|
---|
7614 | },
|
---|
7615 | tag_type: function(type){
|
---|
7616 | if(typeof type === "function"){
|
---|
7617 | return function(elem){ return type(elem.type); };
|
---|
7618 | } else {
|
---|
7619 | return function(elem){ return elem.type === type; };
|
---|
7620 | }
|
---|
7621 | },
|
---|
7622 | tag_contains: function(data){
|
---|
7623 | if(typeof data === "function"){
|
---|
7624 | return function(elem){ return !isTag(elem) && data(elem.data); };
|
---|
7625 | } else {
|
---|
7626 | return function(elem){ return !isTag(elem) && elem.data === data; };
|
---|
7627 | }
|
---|
7628 | }
|
---|
7629 | };
|
---|
7630 |
|
---|
7631 | function getAttribCheck(attrib, value){
|
---|
7632 | if(typeof value === "function"){
|
---|
7633 | return function(elem){ return elem.attribs && value(elem.attribs[attrib]); };
|
---|
7634 | } else {
|
---|
7635 | return function(elem){ return elem.attribs && elem.attribs[attrib] === value; };
|
---|
7636 | }
|
---|
7637 | }
|
---|
7638 |
|
---|
7639 | function combineFuncs(a, b){
|
---|
7640 | return function(elem){
|
---|
7641 | return a(elem) || b(elem);
|
---|
7642 | };
|
---|
7643 | }
|
---|
7644 |
|
---|
7645 | exports.getElements = function(options, element, recurse, limit){
|
---|
7646 | var funcs = Object.keys(options).map(function(key){
|
---|
7647 | var value = options[key];
|
---|
7648 | return key in Checks ? Checks[key](value) : getAttribCheck(key, value);
|
---|
7649 | });
|
---|
7650 |
|
---|
7651 | return funcs.length === 0 ? [] : this.filter(
|
---|
7652 | funcs.reduce(combineFuncs),
|
---|
7653 | element, recurse, limit
|
---|
7654 | );
|
---|
7655 | };
|
---|
7656 |
|
---|
7657 | exports.getElementById = function(id, element, recurse){
|
---|
7658 | if(!Array.isArray(element)) element = [element];
|
---|
7659 | return this.findOne(getAttribCheck("id", id), element, recurse !== false);
|
---|
7660 | };
|
---|
7661 |
|
---|
7662 | exports.getElementsByTagName = function(name, element, recurse, limit){
|
---|
7663 | return this.filter(Checks.tag_name(name), element, recurse, limit);
|
---|
7664 | };
|
---|
7665 |
|
---|
7666 | exports.getElementsByTagType = function(type, element, recurse, limit){
|
---|
7667 | return this.filter(Checks.tag_type(type), element, recurse, limit);
|
---|
7668 | };
|
---|
7669 | });
|
---|
7670 |
|
---|
7671 | var helpers = createCommonjsModule(function (module, exports) {
|
---|
7672 | // removeSubsets
|
---|
7673 | // Given an array of nodes, remove any member that is contained by another.
|
---|
7674 | exports.removeSubsets = function(nodes) {
|
---|
7675 | var idx = nodes.length, node, ancestor, replace;
|
---|
7676 |
|
---|
7677 | // Check if each node (or one of its ancestors) is already contained in the
|
---|
7678 | // array.
|
---|
7679 | while (--idx > -1) {
|
---|
7680 | node = ancestor = nodes[idx];
|
---|
7681 |
|
---|
7682 | // Temporarily remove the node under consideration
|
---|
7683 | nodes[idx] = null;
|
---|
7684 | replace = true;
|
---|
7685 |
|
---|
7686 | while (ancestor) {
|
---|
7687 | if (nodes.indexOf(ancestor) > -1) {
|
---|
7688 | replace = false;
|
---|
7689 | nodes.splice(idx, 1);
|
---|
7690 | break;
|
---|
7691 | }
|
---|
7692 | ancestor = ancestor.parent;
|
---|
7693 | }
|
---|
7694 |
|
---|
7695 | // If the node has been found to be unique, re-insert it.
|
---|
7696 | if (replace) {
|
---|
7697 | nodes[idx] = node;
|
---|
7698 | }
|
---|
7699 | }
|
---|
7700 |
|
---|
7701 | return nodes;
|
---|
7702 | };
|
---|
7703 |
|
---|
7704 | // Source: http://dom.spec.whatwg.org/#dom-node-comparedocumentposition
|
---|
7705 | var POSITION = {
|
---|
7706 | DISCONNECTED: 1,
|
---|
7707 | PRECEDING: 2,
|
---|
7708 | FOLLOWING: 4,
|
---|
7709 | CONTAINS: 8,
|
---|
7710 | CONTAINED_BY: 16
|
---|
7711 | };
|
---|
7712 |
|
---|
7713 | // Compare the position of one node against another node in any other document.
|
---|
7714 | // The return value is a bitmask with the following values:
|
---|
7715 | //
|
---|
7716 | // document order:
|
---|
7717 | // > There is an ordering, document order, defined on all the nodes in the
|
---|
7718 | // > document corresponding to the order in which the first character of the
|
---|
7719 | // > XML representation of each node occurs in the XML representation of the
|
---|
7720 | // > document after expansion of general entities. Thus, the document element
|
---|
7721 | // > node will be the first node. Element nodes occur before their children.
|
---|
7722 | // > Thus, document order orders element nodes in order of the occurrence of
|
---|
7723 | // > their start-tag in the XML (after expansion of entities). The attribute
|
---|
7724 | // > nodes of an element occur after the element and before its children. The
|
---|
7725 | // > relative order of attribute nodes is implementation-dependent./
|
---|
7726 | // Source:
|
---|
7727 | // http://www.w3.org/TR/DOM-Level-3-Core/glossary.html#dt-document-order
|
---|
7728 | //
|
---|
7729 | // @argument {Node} nodaA The first node to use in the comparison
|
---|
7730 | // @argument {Node} nodeB The second node to use in the comparison
|
---|
7731 | //
|
---|
7732 | // @return {Number} A bitmask describing the input nodes' relative position.
|
---|
7733 | // See http://dom.spec.whatwg.org/#dom-node-comparedocumentposition for
|
---|
7734 | // a description of these values.
|
---|
7735 | var comparePos = exports.compareDocumentPosition = function(nodeA, nodeB) {
|
---|
7736 | var aParents = [];
|
---|
7737 | var bParents = [];
|
---|
7738 | var current, sharedParent, siblings, aSibling, bSibling, idx;
|
---|
7739 |
|
---|
7740 | if (nodeA === nodeB) {
|
---|
7741 | return 0;
|
---|
7742 | }
|
---|
7743 |
|
---|
7744 | current = nodeA;
|
---|
7745 | while (current) {
|
---|
7746 | aParents.unshift(current);
|
---|
7747 | current = current.parent;
|
---|
7748 | }
|
---|
7749 | current = nodeB;
|
---|
7750 | while (current) {
|
---|
7751 | bParents.unshift(current);
|
---|
7752 | current = current.parent;
|
---|
7753 | }
|
---|
7754 |
|
---|
7755 | idx = 0;
|
---|
7756 | while (aParents[idx] === bParents[idx]) {
|
---|
7757 | idx++;
|
---|
7758 | }
|
---|
7759 |
|
---|
7760 | if (idx === 0) {
|
---|
7761 | return POSITION.DISCONNECTED;
|
---|
7762 | }
|
---|
7763 |
|
---|
7764 | sharedParent = aParents[idx - 1];
|
---|
7765 | siblings = sharedParent.children;
|
---|
7766 | aSibling = aParents[idx];
|
---|
7767 | bSibling = bParents[idx];
|
---|
7768 |
|
---|
7769 | if (siblings.indexOf(aSibling) > siblings.indexOf(bSibling)) {
|
---|
7770 | if (sharedParent === nodeB) {
|
---|
7771 | return POSITION.FOLLOWING | POSITION.CONTAINED_BY;
|
---|
7772 | }
|
---|
7773 | return POSITION.FOLLOWING;
|
---|
7774 | } else {
|
---|
7775 | if (sharedParent === nodeA) {
|
---|
7776 | return POSITION.PRECEDING | POSITION.CONTAINS;
|
---|
7777 | }
|
---|
7778 | return POSITION.PRECEDING;
|
---|
7779 | }
|
---|
7780 | };
|
---|
7781 |
|
---|
7782 | // Sort an array of nodes based on their relative position in the document and
|
---|
7783 | // remove any duplicate nodes. If the array contains nodes that do not belong
|
---|
7784 | // to the same document, sort order is unspecified.
|
---|
7785 | //
|
---|
7786 | // @argument {Array} nodes Array of DOM nodes
|
---|
7787 | //
|
---|
7788 | // @returns {Array} collection of unique nodes, sorted in document order
|
---|
7789 | exports.uniqueSort = function(nodes) {
|
---|
7790 | var idx = nodes.length, node, position;
|
---|
7791 |
|
---|
7792 | nodes = nodes.slice();
|
---|
7793 |
|
---|
7794 | while (--idx > -1) {
|
---|
7795 | node = nodes[idx];
|
---|
7796 | position = nodes.indexOf(node);
|
---|
7797 | if (position > -1 && position < idx) {
|
---|
7798 | nodes.splice(idx, 1);
|
---|
7799 | }
|
---|
7800 | }
|
---|
7801 | nodes.sort(function(a, b) {
|
---|
7802 | var relative = comparePos(a, b);
|
---|
7803 | if (relative & POSITION.PRECEDING) {
|
---|
7804 | return -1;
|
---|
7805 | } else if (relative & POSITION.FOLLOWING) {
|
---|
7806 | return 1;
|
---|
7807 | }
|
---|
7808 | return 0;
|
---|
7809 | });
|
---|
7810 |
|
---|
7811 | return nodes;
|
---|
7812 | };
|
---|
7813 | });
|
---|
7814 |
|
---|
7815 | var domutils = createCommonjsModule(function (module) {
|
---|
7816 | var DomUtils = module.exports;
|
---|
7817 |
|
---|
7818 | [
|
---|
7819 | stringify,
|
---|
7820 | traversal,
|
---|
7821 | manipulation,
|
---|
7822 | querying,
|
---|
7823 | legacy$2,
|
---|
7824 | helpers
|
---|
7825 | ].forEach(function(ext){
|
---|
7826 | Object.keys(ext).forEach(function(key){
|
---|
7827 | DomUtils[key] = ext[key].bind(DomUtils);
|
---|
7828 | });
|
---|
7829 | });
|
---|
7830 | });
|
---|
7831 |
|
---|
7832 | var parse_1 = parse;
|
---|
7833 |
|
---|
7834 | //following http://www.w3.org/TR/css3-selectors/#nth-child-pseudo
|
---|
7835 |
|
---|
7836 | //[ ['-'|'+']? INTEGER? {N} [ S* ['-'|'+'] S* INTEGER ]?
|
---|
7837 | var re_nthElement = /^([+\-]?\d*n)?\s*(?:([+\-]?)\s*(\d+))?$/;
|
---|
7838 |
|
---|
7839 | /*
|
---|
7840 | parses a nth-check formula, returns an array of two numbers
|
---|
7841 | */
|
---|
7842 | function parse(formula){
|
---|
7843 | formula = formula.trim().toLowerCase();
|
---|
7844 |
|
---|
7845 | if(formula === "even"){
|
---|
7846 | return [2, 0];
|
---|
7847 | } else if(formula === "odd"){
|
---|
7848 | return [2, 1];
|
---|
7849 | } else {
|
---|
7850 | var parsed = formula.match(re_nthElement);
|
---|
7851 |
|
---|
7852 | if(!parsed){
|
---|
7853 | throw new SyntaxError("n-th rule couldn't be parsed ('" + formula + "')");
|
---|
7854 | }
|
---|
7855 |
|
---|
7856 | var a;
|
---|
7857 |
|
---|
7858 | if(parsed[1]){
|
---|
7859 | a = parseInt(parsed[1], 10);
|
---|
7860 | if(isNaN(a)){
|
---|
7861 | if(parsed[1].charAt(0) === "-") a = -1;
|
---|
7862 | else a = 1;
|
---|
7863 | }
|
---|
7864 | } else a = 0;
|
---|
7865 |
|
---|
7866 | return [
|
---|
7867 | a,
|
---|
7868 | parsed[3] ? parseInt((parsed[2] || "") + parsed[3], 10) : 0
|
---|
7869 | ];
|
---|
7870 | }
|
---|
7871 | }
|
---|
7872 |
|
---|
7873 | var boolbase = {
|
---|
7874 | trueFunc: function trueFunc(){
|
---|
7875 | return true;
|
---|
7876 | },
|
---|
7877 | falseFunc: function falseFunc(){
|
---|
7878 | return false;
|
---|
7879 | }
|
---|
7880 | };
|
---|
7881 |
|
---|
7882 | var compile_1 = compile;
|
---|
7883 |
|
---|
7884 | var trueFunc = boolbase.trueFunc,
|
---|
7885 | falseFunc = boolbase.falseFunc;
|
---|
7886 |
|
---|
7887 | /*
|
---|
7888 | returns a function that checks if an elements index matches the given rule
|
---|
7889 | highly optimized to return the fastest solution
|
---|
7890 | */
|
---|
7891 | function compile(parsed){
|
---|
7892 | var a = parsed[0],
|
---|
7893 | b = parsed[1] - 1;
|
---|
7894 |
|
---|
7895 | //when b <= 0, a*n won't be possible for any matches when a < 0
|
---|
7896 | //besides, the specification says that no element is matched when a and b are 0
|
---|
7897 | if(b < 0 && a <= 0) return falseFunc;
|
---|
7898 |
|
---|
7899 | //when a is in the range -1..1, it matches any element (so only b is checked)
|
---|
7900 | if(a ===-1) return function(pos){ return pos <= b; };
|
---|
7901 | if(a === 0) return function(pos){ return pos === b; };
|
---|
7902 | //when b <= 0 and a === 1, they match any element
|
---|
7903 | if(a === 1) return b < 0 ? trueFunc : function(pos){ return pos >= b; };
|
---|
7904 |
|
---|
7905 | //when a > 0, modulo can be used to check if there is a match
|
---|
7906 | var bMod = b % a;
|
---|
7907 | if(bMod < 0) bMod += a;
|
---|
7908 |
|
---|
7909 | if(a > 1){
|
---|
7910 | return function(pos){
|
---|
7911 | return pos >= b && pos % a === bMod;
|
---|
7912 | };
|
---|
7913 | }
|
---|
7914 |
|
---|
7915 | a *= -1; //make `a` positive
|
---|
7916 |
|
---|
7917 | return function(pos){
|
---|
7918 | return pos <= b && pos % a === bMod;
|
---|
7919 | };
|
---|
7920 | }
|
---|
7921 |
|
---|
7922 | var nthCheck = function nthCheck(formula){
|
---|
7923 | return compile_1(parse_1(formula));
|
---|
7924 | };
|
---|
7925 |
|
---|
7926 | var parse_1$1 = parse_1;
|
---|
7927 | var compile_1$1 = compile_1;
|
---|
7928 | nthCheck.parse = parse_1$1;
|
---|
7929 | nthCheck.compile = compile_1$1;
|
---|
7930 |
|
---|
7931 | var hasAttrib = domutils.hasAttrib,
|
---|
7932 | getAttributeValue = domutils.getAttributeValue,
|
---|
7933 | falseFunc$1 = boolbase.falseFunc;
|
---|
7934 |
|
---|
7935 | //https://github.com/slevithan/XRegExp/blob/master/src/xregexp.js#L469
|
---|
7936 | var reChars = /[-[\]{}()*+?.,\\^$|#\s]/g;
|
---|
7937 |
|
---|
7938 | /*
|
---|
7939 | attribute selectors
|
---|
7940 | */
|
---|
7941 |
|
---|
7942 | var attributeRules = {
|
---|
7943 | __proto__: null,
|
---|
7944 | equals: function(next, data){
|
---|
7945 | var name = data.name,
|
---|
7946 | value = data.value;
|
---|
7947 |
|
---|
7948 | if(data.ignoreCase){
|
---|
7949 | value = value.toLowerCase();
|
---|
7950 |
|
---|
7951 | return function equalsIC(elem){
|
---|
7952 | var attr = getAttributeValue(elem, name);
|
---|
7953 | return attr != null && attr.toLowerCase() === value && next(elem);
|
---|
7954 | };
|
---|
7955 | }
|
---|
7956 |
|
---|
7957 | return function equals(elem){
|
---|
7958 | return getAttributeValue(elem, name) === value && next(elem);
|
---|
7959 | };
|
---|
7960 | },
|
---|
7961 | hyphen: function(next, data){
|
---|
7962 | var name = data.name,
|
---|
7963 | value = data.value,
|
---|
7964 | len = value.length;
|
---|
7965 |
|
---|
7966 | if(data.ignoreCase){
|
---|
7967 | value = value.toLowerCase();
|
---|
7968 |
|
---|
7969 | return function hyphenIC(elem){
|
---|
7970 | var attr = getAttributeValue(elem, name);
|
---|
7971 | return attr != null &&
|
---|
7972 | (attr.length === len || attr.charAt(len) === "-") &&
|
---|
7973 | attr.substr(0, len).toLowerCase() === value &&
|
---|
7974 | next(elem);
|
---|
7975 | };
|
---|
7976 | }
|
---|
7977 |
|
---|
7978 | return function hyphen(elem){
|
---|
7979 | var attr = getAttributeValue(elem, name);
|
---|
7980 | return attr != null &&
|
---|
7981 | attr.substr(0, len) === value &&
|
---|
7982 | (attr.length === len || attr.charAt(len) === "-") &&
|
---|
7983 | next(elem);
|
---|
7984 | };
|
---|
7985 | },
|
---|
7986 | element: function(next, data){
|
---|
7987 | var name = data.name,
|
---|
7988 | value = data.value;
|
---|
7989 |
|
---|
7990 | if(/\s/.test(value)){
|
---|
7991 | return falseFunc$1;
|
---|
7992 | }
|
---|
7993 |
|
---|
7994 | value = value.replace(reChars, "\\$&");
|
---|
7995 |
|
---|
7996 | var pattern = "(?:^|\\s)" + value + "(?:$|\\s)",
|
---|
7997 | flags = data.ignoreCase ? "i" : "",
|
---|
7998 | regex = new RegExp(pattern, flags);
|
---|
7999 |
|
---|
8000 | return function element(elem){
|
---|
8001 | var attr = getAttributeValue(elem, name);
|
---|
8002 | return attr != null && regex.test(attr) && next(elem);
|
---|
8003 | };
|
---|
8004 | },
|
---|
8005 | exists: function(next, data){
|
---|
8006 | var name = data.name;
|
---|
8007 | return function exists(elem){
|
---|
8008 | return hasAttrib(elem, name) && next(elem);
|
---|
8009 | };
|
---|
8010 | },
|
---|
8011 | start: function(next, data){
|
---|
8012 | var name = data.name,
|
---|
8013 | value = data.value,
|
---|
8014 | len = value.length;
|
---|
8015 |
|
---|
8016 | if(len === 0){
|
---|
8017 | return falseFunc$1;
|
---|
8018 | }
|
---|
8019 |
|
---|
8020 | if(data.ignoreCase){
|
---|
8021 | value = value.toLowerCase();
|
---|
8022 |
|
---|
8023 | return function startIC(elem){
|
---|
8024 | var attr = getAttributeValue(elem, name);
|
---|
8025 | return attr != null && attr.substr(0, len).toLowerCase() === value && next(elem);
|
---|
8026 | };
|
---|
8027 | }
|
---|
8028 |
|
---|
8029 | return function start(elem){
|
---|
8030 | var attr = getAttributeValue(elem, name);
|
---|
8031 | return attr != null && attr.substr(0, len) === value && next(elem);
|
---|
8032 | };
|
---|
8033 | },
|
---|
8034 | end: function(next, data){
|
---|
8035 | var name = data.name,
|
---|
8036 | value = data.value,
|
---|
8037 | len = -value.length;
|
---|
8038 |
|
---|
8039 | if(len === 0){
|
---|
8040 | return falseFunc$1;
|
---|
8041 | }
|
---|
8042 |
|
---|
8043 | if(data.ignoreCase){
|
---|
8044 | value = value.toLowerCase();
|
---|
8045 |
|
---|
8046 | return function endIC(elem){
|
---|
8047 | var attr = getAttributeValue(elem, name);
|
---|
8048 | return attr != null && attr.substr(len).toLowerCase() === value && next(elem);
|
---|
8049 | };
|
---|
8050 | }
|
---|
8051 |
|
---|
8052 | return function end(elem){
|
---|
8053 | var attr = getAttributeValue(elem, name);
|
---|
8054 | return attr != null && attr.substr(len) === value && next(elem);
|
---|
8055 | };
|
---|
8056 | },
|
---|
8057 | any: function(next, data){
|
---|
8058 | var name = data.name,
|
---|
8059 | value = data.value;
|
---|
8060 |
|
---|
8061 | if(value === ""){
|
---|
8062 | return falseFunc$1;
|
---|
8063 | }
|
---|
8064 |
|
---|
8065 | if(data.ignoreCase){
|
---|
8066 | var regex = new RegExp(value.replace(reChars, "\\$&"), "i");
|
---|
8067 |
|
---|
8068 | return function anyIC(elem){
|
---|
8069 | var attr = getAttributeValue(elem, name);
|
---|
8070 | return attr != null && regex.test(attr) && next(elem);
|
---|
8071 | };
|
---|
8072 | }
|
---|
8073 |
|
---|
8074 | return function any(elem){
|
---|
8075 | var attr = getAttributeValue(elem, name);
|
---|
8076 | return attr != null && attr.indexOf(value) >= 0 && next(elem);
|
---|
8077 | };
|
---|
8078 | },
|
---|
8079 | not: function(next, data){
|
---|
8080 | var name = data.name,
|
---|
8081 | value = data.value;
|
---|
8082 |
|
---|
8083 | if(value === ""){
|
---|
8084 | return function notEmpty(elem){
|
---|
8085 | return !!getAttributeValue(elem, name) && next(elem);
|
---|
8086 | };
|
---|
8087 | } else if(data.ignoreCase){
|
---|
8088 | value = value.toLowerCase();
|
---|
8089 |
|
---|
8090 | return function notIC(elem){
|
---|
8091 | var attr = getAttributeValue(elem, name);
|
---|
8092 | return attr != null && attr.toLowerCase() !== value && next(elem);
|
---|
8093 | };
|
---|
8094 | }
|
---|
8095 |
|
---|
8096 | return function not(elem){
|
---|
8097 | return getAttributeValue(elem, name) !== value && next(elem);
|
---|
8098 | };
|
---|
8099 | }
|
---|
8100 | };
|
---|
8101 |
|
---|
8102 | var attributes = {
|
---|
8103 | compile: function(next, data, options){
|
---|
8104 | if(options && options.strict && (
|
---|
8105 | data.ignoreCase || data.action === "not"
|
---|
8106 | )) throw SyntaxError("Unsupported attribute selector");
|
---|
8107 | return attributeRules[data.action](next, data);
|
---|
8108 | },
|
---|
8109 | rules: attributeRules
|
---|
8110 | };
|
---|
8111 |
|
---|
8112 | /*
|
---|
8113 | pseudo selectors
|
---|
8114 |
|
---|
8115 | ---
|
---|
8116 |
|
---|
8117 | they are available in two forms:
|
---|
8118 | * filters called when the selector
|
---|
8119 | is compiled and return a function
|
---|
8120 | that needs to return next()
|
---|
8121 | * pseudos get called on execution
|
---|
8122 | they need to return a boolean
|
---|
8123 | */
|
---|
8124 |
|
---|
8125 | var isTag$2 = domutils.isTag,
|
---|
8126 | getText$1 = domutils.getText,
|
---|
8127 | getParent = domutils.getParent,
|
---|
8128 | getChildren = domutils.getChildren,
|
---|
8129 | getSiblings = domutils.getSiblings,
|
---|
8130 | hasAttrib$1 = domutils.hasAttrib,
|
---|
8131 | getName = domutils.getName,
|
---|
8132 | getAttribute= domutils.getAttributeValue,
|
---|
8133 | checkAttrib = attributes.rules.equals,
|
---|
8134 | trueFunc$1 = boolbase.trueFunc,
|
---|
8135 | falseFunc$2 = boolbase.falseFunc;
|
---|
8136 |
|
---|
8137 | //helper methods
|
---|
8138 | function getFirstElement(elems){
|
---|
8139 | for(var i = 0; elems && i < elems.length; i++){
|
---|
8140 | if(isTag$2(elems[i])) return elems[i];
|
---|
8141 | }
|
---|
8142 | }
|
---|
8143 |
|
---|
8144 | function getAttribFunc(name, value){
|
---|
8145 | var data = {name: name, value: value};
|
---|
8146 | return function attribFunc(next){
|
---|
8147 | return checkAttrib(next, data);
|
---|
8148 | };
|
---|
8149 | }
|
---|
8150 |
|
---|
8151 | function getChildFunc(next){
|
---|
8152 | return function(elem){
|
---|
8153 | return !!getParent(elem) && next(elem);
|
---|
8154 | };
|
---|
8155 | }
|
---|
8156 |
|
---|
8157 | var filters = {
|
---|
8158 | contains: function(next, text){
|
---|
8159 | return function contains(elem){
|
---|
8160 | return next(elem) && getText$1(elem).indexOf(text) >= 0;
|
---|
8161 | };
|
---|
8162 | },
|
---|
8163 | icontains: function(next, text){
|
---|
8164 | var itext = text.toLowerCase();
|
---|
8165 | return function icontains(elem){
|
---|
8166 | return next(elem) &&
|
---|
8167 | getText$1(elem).toLowerCase().indexOf(itext) >= 0;
|
---|
8168 | };
|
---|
8169 | },
|
---|
8170 |
|
---|
8171 | //location specific methods
|
---|
8172 | "nth-child": function(next, rule){
|
---|
8173 | var func = nthCheck(rule);
|
---|
8174 |
|
---|
8175 | if(func === falseFunc$2) return func;
|
---|
8176 | if(func === trueFunc$1) return getChildFunc(next);
|
---|
8177 |
|
---|
8178 | return function nthChild(elem){
|
---|
8179 | var siblings = getSiblings(elem);
|
---|
8180 |
|
---|
8181 | for(var i = 0, pos = 0; i < siblings.length; i++){
|
---|
8182 | if(isTag$2(siblings[i])){
|
---|
8183 | if(siblings[i] === elem) break;
|
---|
8184 | else pos++;
|
---|
8185 | }
|
---|
8186 | }
|
---|
8187 |
|
---|
8188 | return func(pos) && next(elem);
|
---|
8189 | };
|
---|
8190 | },
|
---|
8191 | "nth-last-child": function(next, rule){
|
---|
8192 | var func = nthCheck(rule);
|
---|
8193 |
|
---|
8194 | if(func === falseFunc$2) return func;
|
---|
8195 | if(func === trueFunc$1) return getChildFunc(next);
|
---|
8196 |
|
---|
8197 | return function nthLastChild(elem){
|
---|
8198 | var siblings = getSiblings(elem);
|
---|
8199 |
|
---|
8200 | for(var pos = 0, i = siblings.length - 1; i >= 0; i--){
|
---|
8201 | if(isTag$2(siblings[i])){
|
---|
8202 | if(siblings[i] === elem) break;
|
---|
8203 | else pos++;
|
---|
8204 | }
|
---|
8205 | }
|
---|
8206 |
|
---|
8207 | return func(pos) && next(elem);
|
---|
8208 | };
|
---|
8209 | },
|
---|
8210 | "nth-of-type": function(next, rule){
|
---|
8211 | var func = nthCheck(rule);
|
---|
8212 |
|
---|
8213 | if(func === falseFunc$2) return func;
|
---|
8214 | if(func === trueFunc$1) return getChildFunc(next);
|
---|
8215 |
|
---|
8216 | return function nthOfType(elem){
|
---|
8217 | var siblings = getSiblings(elem);
|
---|
8218 |
|
---|
8219 | for(var pos = 0, i = 0; i < siblings.length; i++){
|
---|
8220 | if(isTag$2(siblings[i])){
|
---|
8221 | if(siblings[i] === elem) break;
|
---|
8222 | if(getName(siblings[i]) === getName(elem)) pos++;
|
---|
8223 | }
|
---|
8224 | }
|
---|
8225 |
|
---|
8226 | return func(pos) && next(elem);
|
---|
8227 | };
|
---|
8228 | },
|
---|
8229 | "nth-last-of-type": function(next, rule){
|
---|
8230 | var func = nthCheck(rule);
|
---|
8231 |
|
---|
8232 | if(func === falseFunc$2) return func;
|
---|
8233 | if(func === trueFunc$1) return getChildFunc(next);
|
---|
8234 |
|
---|
8235 | return function nthLastOfType(elem){
|
---|
8236 | var siblings = getSiblings(elem);
|
---|
8237 |
|
---|
8238 | for(var pos = 0, i = siblings.length - 1; i >= 0; i--){
|
---|
8239 | if(isTag$2(siblings[i])){
|
---|
8240 | if(siblings[i] === elem) break;
|
---|
8241 | if(getName(siblings[i]) === getName(elem)) pos++;
|
---|
8242 | }
|
---|
8243 | }
|
---|
8244 |
|
---|
8245 | return func(pos) && next(elem);
|
---|
8246 | };
|
---|
8247 | },
|
---|
8248 |
|
---|
8249 | //TODO determine the actual root element
|
---|
8250 | root: function(next){
|
---|
8251 | return function(elem){
|
---|
8252 | return !getParent(elem) && next(elem);
|
---|
8253 | };
|
---|
8254 | },
|
---|
8255 |
|
---|
8256 | scope: function(next, rule, options, context){
|
---|
8257 | if(!context || context.length === 0){
|
---|
8258 | //equivalent to :root
|
---|
8259 | return filters.root(next);
|
---|
8260 | }
|
---|
8261 |
|
---|
8262 | if(context.length === 1){
|
---|
8263 | //NOTE: can't be unpacked, as :has uses this for side-effects
|
---|
8264 | return function(elem){
|
---|
8265 | return context[0] === elem && next(elem);
|
---|
8266 | };
|
---|
8267 | }
|
---|
8268 |
|
---|
8269 | return function(elem){
|
---|
8270 | return context.indexOf(elem) >= 0 && next(elem);
|
---|
8271 | };
|
---|
8272 | },
|
---|
8273 |
|
---|
8274 | //jQuery extensions (others follow as pseudos)
|
---|
8275 | checkbox: getAttribFunc("type", "checkbox"),
|
---|
8276 | file: getAttribFunc("type", "file"),
|
---|
8277 | password: getAttribFunc("type", "password"),
|
---|
8278 | radio: getAttribFunc("type", "radio"),
|
---|
8279 | reset: getAttribFunc("type", "reset"),
|
---|
8280 | image: getAttribFunc("type", "image"),
|
---|
8281 | submit: getAttribFunc("type", "submit")
|
---|
8282 | };
|
---|
8283 |
|
---|
8284 | //while filters are precompiled, pseudos get called when they are needed
|
---|
8285 | var pseudos = {
|
---|
8286 | empty: function(elem){
|
---|
8287 | return !getChildren(elem).some(function(elem){
|
---|
8288 | return isTag$2(elem) || elem.type === "text";
|
---|
8289 | });
|
---|
8290 | },
|
---|
8291 |
|
---|
8292 | "first-child": function(elem){
|
---|
8293 | return getFirstElement(getSiblings(elem)) === elem;
|
---|
8294 | },
|
---|
8295 | "last-child": function(elem){
|
---|
8296 | var siblings = getSiblings(elem);
|
---|
8297 |
|
---|
8298 | for(var i = siblings.length - 1; i >= 0; i--){
|
---|
8299 | if(siblings[i] === elem) return true;
|
---|
8300 | if(isTag$2(siblings[i])) break;
|
---|
8301 | }
|
---|
8302 |
|
---|
8303 | return false;
|
---|
8304 | },
|
---|
8305 | "first-of-type": function(elem){
|
---|
8306 | var siblings = getSiblings(elem);
|
---|
8307 |
|
---|
8308 | for(var i = 0; i < siblings.length; i++){
|
---|
8309 | if(isTag$2(siblings[i])){
|
---|
8310 | if(siblings[i] === elem) return true;
|
---|
8311 | if(getName(siblings[i]) === getName(elem)) break;
|
---|
8312 | }
|
---|
8313 | }
|
---|
8314 |
|
---|
8315 | return false;
|
---|
8316 | },
|
---|
8317 | "last-of-type": function(elem){
|
---|
8318 | var siblings = getSiblings(elem);
|
---|
8319 |
|
---|
8320 | for(var i = siblings.length-1; i >= 0; i--){
|
---|
8321 | if(isTag$2(siblings[i])){
|
---|
8322 | if(siblings[i] === elem) return true;
|
---|
8323 | if(getName(siblings[i]) === getName(elem)) break;
|
---|
8324 | }
|
---|
8325 | }
|
---|
8326 |
|
---|
8327 | return false;
|
---|
8328 | },
|
---|
8329 | "only-of-type": function(elem){
|
---|
8330 | var siblings = getSiblings(elem);
|
---|
8331 |
|
---|
8332 | for(var i = 0, j = siblings.length; i < j; i++){
|
---|
8333 | if(isTag$2(siblings[i])){
|
---|
8334 | if(siblings[i] === elem) continue;
|
---|
8335 | if(getName(siblings[i]) === getName(elem)) return false;
|
---|
8336 | }
|
---|
8337 | }
|
---|
8338 |
|
---|
8339 | return true;
|
---|
8340 | },
|
---|
8341 | "only-child": function(elem){
|
---|
8342 | var siblings = getSiblings(elem);
|
---|
8343 |
|
---|
8344 | for(var i = 0; i < siblings.length; i++){
|
---|
8345 | if(isTag$2(siblings[i]) && siblings[i] !== elem) return false;
|
---|
8346 | }
|
---|
8347 |
|
---|
8348 | return true;
|
---|
8349 | },
|
---|
8350 |
|
---|
8351 | //:matches(a, area, link)[href]
|
---|
8352 | link: function(elem){
|
---|
8353 | return hasAttrib$1(elem, "href");
|
---|
8354 | },
|
---|
8355 | visited: falseFunc$2, //seems to be a valid implementation
|
---|
8356 | //TODO: :any-link once the name is finalized (as an alias of :link)
|
---|
8357 |
|
---|
8358 | //forms
|
---|
8359 | //to consider: :target
|
---|
8360 |
|
---|
8361 | //:matches([selected], select:not([multiple]):not(> option[selected]) > option:first-of-type)
|
---|
8362 | selected: function(elem){
|
---|
8363 | if(hasAttrib$1(elem, "selected")) return true;
|
---|
8364 | else if(getName(elem) !== "option") return false;
|
---|
8365 |
|
---|
8366 | //the first <option> in a <select> is also selected
|
---|
8367 | var parent = getParent(elem);
|
---|
8368 |
|
---|
8369 | if(
|
---|
8370 | !parent ||
|
---|
8371 | getName(parent) !== "select" ||
|
---|
8372 | hasAttrib$1(parent, "multiple")
|
---|
8373 | ) return false;
|
---|
8374 |
|
---|
8375 | var siblings = getChildren(parent),
|
---|
8376 | sawElem = false;
|
---|
8377 |
|
---|
8378 | for(var i = 0; i < siblings.length; i++){
|
---|
8379 | if(isTag$2(siblings[i])){
|
---|
8380 | if(siblings[i] === elem){
|
---|
8381 | sawElem = true;
|
---|
8382 | } else if(!sawElem){
|
---|
8383 | return false;
|
---|
8384 | } else if(hasAttrib$1(siblings[i], "selected")){
|
---|
8385 | return false;
|
---|
8386 | }
|
---|
8387 | }
|
---|
8388 | }
|
---|
8389 |
|
---|
8390 | return sawElem;
|
---|
8391 | },
|
---|
8392 | //https://html.spec.whatwg.org/multipage/scripting.html#disabled-elements
|
---|
8393 | //:matches(
|
---|
8394 | // :matches(button, input, select, textarea, menuitem, optgroup, option)[disabled],
|
---|
8395 | // optgroup[disabled] > option),
|
---|
8396 | // fieldset[disabled] * //TODO not child of first <legend>
|
---|
8397 | //)
|
---|
8398 | disabled: function(elem){
|
---|
8399 | return hasAttrib$1(elem, "disabled");
|
---|
8400 | },
|
---|
8401 | enabled: function(elem){
|
---|
8402 | return !hasAttrib$1(elem, "disabled");
|
---|
8403 | },
|
---|
8404 | //:matches(:matches(:radio, :checkbox)[checked], :selected) (TODO menuitem)
|
---|
8405 | checked: function(elem){
|
---|
8406 | return hasAttrib$1(elem, "checked") || pseudos.selected(elem);
|
---|
8407 | },
|
---|
8408 | //:matches(input, select, textarea)[required]
|
---|
8409 | required: function(elem){
|
---|
8410 | return hasAttrib$1(elem, "required");
|
---|
8411 | },
|
---|
8412 | //:matches(input, select, textarea):not([required])
|
---|
8413 | optional: function(elem){
|
---|
8414 | return !hasAttrib$1(elem, "required");
|
---|
8415 | },
|
---|
8416 |
|
---|
8417 | //jQuery extensions
|
---|
8418 |
|
---|
8419 | //:not(:empty)
|
---|
8420 | parent: function(elem){
|
---|
8421 | return !pseudos.empty(elem);
|
---|
8422 | },
|
---|
8423 | //:matches(h1, h2, h3, h4, h5, h6)
|
---|
8424 | header: function(elem){
|
---|
8425 | var name = getName(elem);
|
---|
8426 | return name === "h1" ||
|
---|
8427 | name === "h2" ||
|
---|
8428 | name === "h3" ||
|
---|
8429 | name === "h4" ||
|
---|
8430 | name === "h5" ||
|
---|
8431 | name === "h6";
|
---|
8432 | },
|
---|
8433 |
|
---|
8434 | //:matches(button, input[type=button])
|
---|
8435 | button: function(elem){
|
---|
8436 | var name = getName(elem);
|
---|
8437 | return name === "button" ||
|
---|
8438 | name === "input" &&
|
---|
8439 | getAttribute(elem, "type") === "button";
|
---|
8440 | },
|
---|
8441 | //:matches(input, textarea, select, button)
|
---|
8442 | input: function(elem){
|
---|
8443 | var name = getName(elem);
|
---|
8444 | return name === "input" ||
|
---|
8445 | name === "textarea" ||
|
---|
8446 | name === "select" ||
|
---|
8447 | name === "button";
|
---|
8448 | },
|
---|
8449 | //input:matches(:not([type!='']), [type='text' i])
|
---|
8450 | text: function(elem){
|
---|
8451 | var attr;
|
---|
8452 | return getName(elem) === "input" && (
|
---|
8453 | !(attr = getAttribute(elem, "type")) ||
|
---|
8454 | attr.toLowerCase() === "text"
|
---|
8455 | );
|
---|
8456 | }
|
---|
8457 | };
|
---|
8458 |
|
---|
8459 | function verifyArgs(func, name, subselect){
|
---|
8460 | if(subselect === null){
|
---|
8461 | if(func.length > 1 && name !== "scope"){
|
---|
8462 | throw new SyntaxError("pseudo-selector :" + name + " requires an argument");
|
---|
8463 | }
|
---|
8464 | } else {
|
---|
8465 | if(func.length === 1){
|
---|
8466 | throw new SyntaxError("pseudo-selector :" + name + " doesn't have any arguments");
|
---|
8467 | }
|
---|
8468 | }
|
---|
8469 | }
|
---|
8470 |
|
---|
8471 | //FIXME this feels hacky
|
---|
8472 | var re_CSS3 = /^(?:(?:nth|last|first|only)-(?:child|of-type)|root|empty|(?:en|dis)abled|checked|not)$/;
|
---|
8473 |
|
---|
8474 | var pseudos_1 = {
|
---|
8475 | compile: function(next, data, options, context){
|
---|
8476 | var name = data.name,
|
---|
8477 | subselect = data.data;
|
---|
8478 |
|
---|
8479 | if(options && options.strict && !re_CSS3.test(name)){
|
---|
8480 | throw SyntaxError(":" + name + " isn't part of CSS3");
|
---|
8481 | }
|
---|
8482 |
|
---|
8483 | if(typeof filters[name] === "function"){
|
---|
8484 | verifyArgs(filters[name], name, subselect);
|
---|
8485 | return filters[name](next, subselect, options, context);
|
---|
8486 | } else if(typeof pseudos[name] === "function"){
|
---|
8487 | var func = pseudos[name];
|
---|
8488 | verifyArgs(func, name, subselect);
|
---|
8489 |
|
---|
8490 | if(next === trueFunc$1) return func;
|
---|
8491 |
|
---|
8492 | return function pseudoArgs(elem){
|
---|
8493 | return func(elem, subselect) && next(elem);
|
---|
8494 | };
|
---|
8495 | } else {
|
---|
8496 | throw new SyntaxError("unmatched pseudo-class :" + name);
|
---|
8497 | }
|
---|
8498 | },
|
---|
8499 | filters: filters,
|
---|
8500 | pseudos: pseudos
|
---|
8501 | };
|
---|
8502 |
|
---|
8503 | var cssWhat = parse$1;
|
---|
8504 |
|
---|
8505 | var re_name = /^(?:\\.|[\w\-\u00b0-\uFFFF])+/,
|
---|
8506 | re_escape = /\\([\da-f]{1,6}\s?|(\s)|.)/ig,
|
---|
8507 | //modified version of https://github.com/jquery/sizzle/blob/master/src/sizzle.js#L87
|
---|
8508 | re_attr = /^\s*((?:\\.|[\w\u00b0-\uFFFF\-])+)\s*(?:(\S?)=\s*(?:(['"])([^]*?)\3|(#?(?:\\.|[\w\u00b0-\uFFFF\-])*)|)|)\s*(i)?\]/;
|
---|
8509 |
|
---|
8510 | var actionTypes = {
|
---|
8511 | __proto__: null,
|
---|
8512 | "undefined": "exists",
|
---|
8513 | "": "equals",
|
---|
8514 | "~": "element",
|
---|
8515 | "^": "start",
|
---|
8516 | "$": "end",
|
---|
8517 | "*": "any",
|
---|
8518 | "!": "not",
|
---|
8519 | "|": "hyphen"
|
---|
8520 | };
|
---|
8521 |
|
---|
8522 | var simpleSelectors = {
|
---|
8523 | __proto__: null,
|
---|
8524 | ">": "child",
|
---|
8525 | "<": "parent",
|
---|
8526 | "~": "sibling",
|
---|
8527 | "+": "adjacent"
|
---|
8528 | };
|
---|
8529 |
|
---|
8530 | var attribSelectors = {
|
---|
8531 | __proto__: null,
|
---|
8532 | "#": ["id", "equals"],
|
---|
8533 | ".": ["class", "element"]
|
---|
8534 | };
|
---|
8535 |
|
---|
8536 | //pseudos, whose data-property is parsed as well
|
---|
8537 | var unpackPseudos = {
|
---|
8538 | __proto__: null,
|
---|
8539 | "has": true,
|
---|
8540 | "not": true,
|
---|
8541 | "matches": true
|
---|
8542 | };
|
---|
8543 |
|
---|
8544 | var stripQuotesFromPseudos = {
|
---|
8545 | __proto__: null,
|
---|
8546 | "contains": true,
|
---|
8547 | "icontains": true
|
---|
8548 | };
|
---|
8549 |
|
---|
8550 | var quotes = {
|
---|
8551 | __proto__: null,
|
---|
8552 | "\"": true,
|
---|
8553 | "'": true
|
---|
8554 | };
|
---|
8555 |
|
---|
8556 | //unescape function taken from https://github.com/jquery/sizzle/blob/master/src/sizzle.js#L139
|
---|
8557 | function funescape( _, escaped, escapedWhitespace ) {
|
---|
8558 | var high = "0x" + escaped - 0x10000;
|
---|
8559 | // NaN means non-codepoint
|
---|
8560 | // Support: Firefox
|
---|
8561 | // Workaround erroneous numeric interpretation of +"0x"
|
---|
8562 | return high !== high || escapedWhitespace ?
|
---|
8563 | escaped :
|
---|
8564 | // BMP codepoint
|
---|
8565 | high < 0 ?
|
---|
8566 | String.fromCharCode( high + 0x10000 ) :
|
---|
8567 | // Supplemental Plane codepoint (surrogate pair)
|
---|
8568 | String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
|
---|
8569 | }
|
---|
8570 |
|
---|
8571 | function unescapeCSS(str){
|
---|
8572 | return str.replace(re_escape, funescape);
|
---|
8573 | }
|
---|
8574 |
|
---|
8575 | function isWhitespace(c){
|
---|
8576 | return c === " " || c === "\n" || c === "\t" || c === "\f" || c === "\r";
|
---|
8577 | }
|
---|
8578 |
|
---|
8579 | function parse$1(selector, options){
|
---|
8580 | var subselects = [];
|
---|
8581 |
|
---|
8582 | selector = parseSelector(subselects, selector + "", options);
|
---|
8583 |
|
---|
8584 | if(selector !== ""){
|
---|
8585 | throw new SyntaxError("Unmatched selector: " + selector);
|
---|
8586 | }
|
---|
8587 |
|
---|
8588 | return subselects;
|
---|
8589 | }
|
---|
8590 |
|
---|
8591 | function parseSelector(subselects, selector, options){
|
---|
8592 | var tokens = [],
|
---|
8593 | sawWS = false,
|
---|
8594 | data, firstChar, name, quot;
|
---|
8595 |
|
---|
8596 | function getName(){
|
---|
8597 | var sub = selector.match(re_name)[0];
|
---|
8598 | selector = selector.substr(sub.length);
|
---|
8599 | return unescapeCSS(sub);
|
---|
8600 | }
|
---|
8601 |
|
---|
8602 | function stripWhitespace(start){
|
---|
8603 | while(isWhitespace(selector.charAt(start))) start++;
|
---|
8604 | selector = selector.substr(start);
|
---|
8605 | }
|
---|
8606 |
|
---|
8607 | function isEscaped(pos) {
|
---|
8608 | var slashCount = 0;
|
---|
8609 |
|
---|
8610 | while (selector.charAt(--pos) === "\\") slashCount++;
|
---|
8611 | return (slashCount & 1) === 1;
|
---|
8612 | }
|
---|
8613 |
|
---|
8614 | stripWhitespace(0);
|
---|
8615 |
|
---|
8616 | while(selector !== ""){
|
---|
8617 | firstChar = selector.charAt(0);
|
---|
8618 |
|
---|
8619 | if(isWhitespace(firstChar)){
|
---|
8620 | sawWS = true;
|
---|
8621 | stripWhitespace(1);
|
---|
8622 | } else if(firstChar in simpleSelectors){
|
---|
8623 | tokens.push({type: simpleSelectors[firstChar]});
|
---|
8624 | sawWS = false;
|
---|
8625 |
|
---|
8626 | stripWhitespace(1);
|
---|
8627 | } else if(firstChar === ","){
|
---|
8628 | if(tokens.length === 0){
|
---|
8629 | throw new SyntaxError("empty sub-selector");
|
---|
8630 | }
|
---|
8631 | subselects.push(tokens);
|
---|
8632 | tokens = [];
|
---|
8633 | sawWS = false;
|
---|
8634 | stripWhitespace(1);
|
---|
8635 | } else {
|
---|
8636 | if(sawWS){
|
---|
8637 | if(tokens.length > 0){
|
---|
8638 | tokens.push({type: "descendant"});
|
---|
8639 | }
|
---|
8640 | sawWS = false;
|
---|
8641 | }
|
---|
8642 |
|
---|
8643 | if(firstChar === "*"){
|
---|
8644 | selector = selector.substr(1);
|
---|
8645 | tokens.push({type: "universal"});
|
---|
8646 | } else if(firstChar in attribSelectors){
|
---|
8647 | selector = selector.substr(1);
|
---|
8648 | tokens.push({
|
---|
8649 | type: "attribute",
|
---|
8650 | name: attribSelectors[firstChar][0],
|
---|
8651 | action: attribSelectors[firstChar][1],
|
---|
8652 | value: getName(),
|
---|
8653 | ignoreCase: false
|
---|
8654 | });
|
---|
8655 | } else if(firstChar === "["){
|
---|
8656 | selector = selector.substr(1);
|
---|
8657 | data = selector.match(re_attr);
|
---|
8658 | if(!data){
|
---|
8659 | throw new SyntaxError("Malformed attribute selector: " + selector);
|
---|
8660 | }
|
---|
8661 | selector = selector.substr(data[0].length);
|
---|
8662 | name = unescapeCSS(data[1]);
|
---|
8663 |
|
---|
8664 | if(
|
---|
8665 | !options || (
|
---|
8666 | "lowerCaseAttributeNames" in options ?
|
---|
8667 | options.lowerCaseAttributeNames :
|
---|
8668 | !options.xmlMode
|
---|
8669 | )
|
---|
8670 | ){
|
---|
8671 | name = name.toLowerCase();
|
---|
8672 | }
|
---|
8673 |
|
---|
8674 | tokens.push({
|
---|
8675 | type: "attribute",
|
---|
8676 | name: name,
|
---|
8677 | action: actionTypes[data[2]],
|
---|
8678 | value: unescapeCSS(data[4] || data[5] || ""),
|
---|
8679 | ignoreCase: !!data[6]
|
---|
8680 | });
|
---|
8681 |
|
---|
8682 | } else if(firstChar === ":"){
|
---|
8683 | if(selector.charAt(1) === ":"){
|
---|
8684 | selector = selector.substr(2);
|
---|
8685 | tokens.push({type: "pseudo-element", name: getName().toLowerCase()});
|
---|
8686 | continue;
|
---|
8687 | }
|
---|
8688 |
|
---|
8689 | selector = selector.substr(1);
|
---|
8690 |
|
---|
8691 | name = getName().toLowerCase();
|
---|
8692 | data = null;
|
---|
8693 |
|
---|
8694 | if(selector.charAt(0) === "("){
|
---|
8695 | if(name in unpackPseudos){
|
---|
8696 | quot = selector.charAt(1);
|
---|
8697 | var quoted = quot in quotes;
|
---|
8698 |
|
---|
8699 | selector = selector.substr(quoted + 1);
|
---|
8700 |
|
---|
8701 | data = [];
|
---|
8702 | selector = parseSelector(data, selector, options);
|
---|
8703 |
|
---|
8704 | if(quoted){
|
---|
8705 | if(selector.charAt(0) !== quot){
|
---|
8706 | throw new SyntaxError("unmatched quotes in :" + name);
|
---|
8707 | } else {
|
---|
8708 | selector = selector.substr(1);
|
---|
8709 | }
|
---|
8710 | }
|
---|
8711 |
|
---|
8712 | if(selector.charAt(0) !== ")"){
|
---|
8713 | throw new SyntaxError("missing closing parenthesis in :" + name + " " + selector);
|
---|
8714 | }
|
---|
8715 |
|
---|
8716 | selector = selector.substr(1);
|
---|
8717 | } else {
|
---|
8718 | var pos = 1, counter = 1;
|
---|
8719 |
|
---|
8720 | for(; counter > 0 && pos < selector.length; pos++){
|
---|
8721 | if(selector.charAt(pos) === "(" && !isEscaped(pos)) counter++;
|
---|
8722 | else if(selector.charAt(pos) === ")" && !isEscaped(pos)) counter--;
|
---|
8723 | }
|
---|
8724 |
|
---|
8725 | if(counter){
|
---|
8726 | throw new SyntaxError("parenthesis not matched");
|
---|
8727 | }
|
---|
8728 |
|
---|
8729 | data = selector.substr(1, pos - 2);
|
---|
8730 | selector = selector.substr(pos);
|
---|
8731 |
|
---|
8732 | if(name in stripQuotesFromPseudos){
|
---|
8733 | quot = data.charAt(0);
|
---|
8734 |
|
---|
8735 | if(quot === data.slice(-1) && quot in quotes){
|
---|
8736 | data = data.slice(1, -1);
|
---|
8737 | }
|
---|
8738 |
|
---|
8739 | data = unescapeCSS(data);
|
---|
8740 | }
|
---|
8741 | }
|
---|
8742 | }
|
---|
8743 |
|
---|
8744 | tokens.push({type: "pseudo", name: name, data: data});
|
---|
8745 | } else if(re_name.test(selector)){
|
---|
8746 | name = getName();
|
---|
8747 |
|
---|
8748 | if(!options || ("lowerCaseTags" in options ? options.lowerCaseTags : !options.xmlMode)){
|
---|
8749 | name = name.toLowerCase();
|
---|
8750 | }
|
---|
8751 |
|
---|
8752 | tokens.push({type: "tag", name: name});
|
---|
8753 | } else {
|
---|
8754 | if(tokens.length && tokens[tokens.length - 1].type === "descendant"){
|
---|
8755 | tokens.pop();
|
---|
8756 | }
|
---|
8757 | addToken(subselects, tokens);
|
---|
8758 | return selector;
|
---|
8759 | }
|
---|
8760 | }
|
---|
8761 | }
|
---|
8762 |
|
---|
8763 | addToken(subselects, tokens);
|
---|
8764 |
|
---|
8765 | return selector;
|
---|
8766 | }
|
---|
8767 |
|
---|
8768 | function addToken(subselects, tokens){
|
---|
8769 | if(subselects.length > 0 && tokens.length === 0){
|
---|
8770 | throw new SyntaxError("empty sub-selector");
|
---|
8771 | }
|
---|
8772 |
|
---|
8773 | subselects.push(tokens);
|
---|
8774 | }
|
---|
8775 |
|
---|
8776 | var isTag$3 = domutils.isTag,
|
---|
8777 | getParent$1 = domutils.getParent,
|
---|
8778 | getChildren$1 = domutils.getChildren,
|
---|
8779 | getSiblings$1 = domutils.getSiblings,
|
---|
8780 | getName$1 = domutils.getName;
|
---|
8781 |
|
---|
8782 | /*
|
---|
8783 | all available rules
|
---|
8784 | */
|
---|
8785 | var general = {
|
---|
8786 | __proto__: null,
|
---|
8787 |
|
---|
8788 | attribute: attributes.compile,
|
---|
8789 | pseudo: pseudos_1.compile,
|
---|
8790 |
|
---|
8791 | //tags
|
---|
8792 | tag: function(next, data){
|
---|
8793 | var name = data.name;
|
---|
8794 | return function tag(elem){
|
---|
8795 | return getName$1(elem) === name && next(elem);
|
---|
8796 | };
|
---|
8797 | },
|
---|
8798 |
|
---|
8799 | //traversal
|
---|
8800 | descendant: function(next, rule, options, context, acceptSelf){
|
---|
8801 | return function descendant(elem){
|
---|
8802 |
|
---|
8803 | if (acceptSelf && next(elem)) return true;
|
---|
8804 |
|
---|
8805 | var found = false;
|
---|
8806 |
|
---|
8807 | while(!found && (elem = getParent$1(elem))){
|
---|
8808 | found = next(elem);
|
---|
8809 | }
|
---|
8810 |
|
---|
8811 | return found;
|
---|
8812 | };
|
---|
8813 | },
|
---|
8814 | parent: function(next, data, options){
|
---|
8815 | if(options && options.strict) throw SyntaxError("Parent selector isn't part of CSS3");
|
---|
8816 |
|
---|
8817 | return function parent(elem){
|
---|
8818 | return getChildren$1(elem).some(test);
|
---|
8819 | };
|
---|
8820 |
|
---|
8821 | function test(elem){
|
---|
8822 | return isTag$3(elem) && next(elem);
|
---|
8823 | }
|
---|
8824 | },
|
---|
8825 | child: function(next){
|
---|
8826 | return function child(elem){
|
---|
8827 | var parent = getParent$1(elem);
|
---|
8828 | return !!parent && next(parent);
|
---|
8829 | };
|
---|
8830 | },
|
---|
8831 | sibling: function(next){
|
---|
8832 | return function sibling(elem){
|
---|
8833 | var siblings = getSiblings$1(elem);
|
---|
8834 |
|
---|
8835 | for(var i = 0; i < siblings.length; i++){
|
---|
8836 | if(isTag$3(siblings[i])){
|
---|
8837 | if(siblings[i] === elem) break;
|
---|
8838 | if(next(siblings[i])) return true;
|
---|
8839 | }
|
---|
8840 | }
|
---|
8841 |
|
---|
8842 | return false;
|
---|
8843 | };
|
---|
8844 | },
|
---|
8845 | adjacent: function(next){
|
---|
8846 | return function adjacent(elem){
|
---|
8847 | var siblings = getSiblings$1(elem),
|
---|
8848 | lastElement;
|
---|
8849 |
|
---|
8850 | for(var i = 0; i < siblings.length; i++){
|
---|
8851 | if(isTag$3(siblings[i])){
|
---|
8852 | if(siblings[i] === elem) break;
|
---|
8853 | lastElement = siblings[i];
|
---|
8854 | }
|
---|
8855 | }
|
---|
8856 |
|
---|
8857 | return !!lastElement && next(lastElement);
|
---|
8858 | };
|
---|
8859 | },
|
---|
8860 | universal: function(next){
|
---|
8861 | return next;
|
---|
8862 | }
|
---|
8863 | };
|
---|
8864 |
|
---|
8865 | var universal = 50;
|
---|
8866 | var tag = 30;
|
---|
8867 | var attribute = 1;
|
---|
8868 | var pseudo = 0;
|
---|
8869 | var descendant = -1;
|
---|
8870 | var child = -1;
|
---|
8871 | var parent = -1;
|
---|
8872 | var sibling = -1;
|
---|
8873 | var adjacent = -1;
|
---|
8874 | var procedure = {
|
---|
8875 | universal: universal,
|
---|
8876 | tag: tag,
|
---|
8877 | attribute: attribute,
|
---|
8878 | pseudo: pseudo,
|
---|
8879 | descendant: descendant,
|
---|
8880 | child: child,
|
---|
8881 | parent: parent,
|
---|
8882 | sibling: sibling,
|
---|
8883 | adjacent: adjacent
|
---|
8884 | };
|
---|
8885 |
|
---|
8886 | var procedure$1 = {
|
---|
8887 | __proto__: null,
|
---|
8888 | universal: universal,
|
---|
8889 | tag: tag,
|
---|
8890 | attribute: attribute,
|
---|
8891 | pseudo: pseudo,
|
---|
8892 | descendant: descendant,
|
---|
8893 | child: child,
|
---|
8894 | parent: parent,
|
---|
8895 | sibling: sibling,
|
---|
8896 | adjacent: adjacent,
|
---|
8897 | 'default': procedure
|
---|
8898 | };
|
---|
8899 |
|
---|
8900 | var procedure$2 = getCjsExportFromNamespace(procedure$1);
|
---|
8901 |
|
---|
8902 | var sort = sortByProcedure;
|
---|
8903 |
|
---|
8904 | /*
|
---|
8905 | sort the parts of the passed selector,
|
---|
8906 | as there is potential for optimization
|
---|
8907 | (some types of selectors are faster than others)
|
---|
8908 | */
|
---|
8909 |
|
---|
8910 |
|
---|
8911 |
|
---|
8912 | var attributes$1 = {
|
---|
8913 | __proto__: null,
|
---|
8914 | exists: 10,
|
---|
8915 | equals: 8,
|
---|
8916 | not: 7,
|
---|
8917 | start: 6,
|
---|
8918 | end: 6,
|
---|
8919 | any: 5,
|
---|
8920 | hyphen: 4,
|
---|
8921 | element: 4
|
---|
8922 | };
|
---|
8923 |
|
---|
8924 | function sortByProcedure(arr){
|
---|
8925 | var procs = arr.map(getProcedure);
|
---|
8926 | for(var i = 1; i < arr.length; i++){
|
---|
8927 | var procNew = procs[i];
|
---|
8928 |
|
---|
8929 | if(procNew < 0) continue;
|
---|
8930 |
|
---|
8931 | for(var j = i - 1; j >= 0 && procNew < procs[j]; j--){
|
---|
8932 | var token = arr[j + 1];
|
---|
8933 | arr[j + 1] = arr[j];
|
---|
8934 | arr[j] = token;
|
---|
8935 | procs[j + 1] = procs[j];
|
---|
8936 | procs[j] = procNew;
|
---|
8937 | }
|
---|
8938 | }
|
---|
8939 | }
|
---|
8940 |
|
---|
8941 | function getProcedure(token){
|
---|
8942 | var proc = procedure$2[token.type];
|
---|
8943 |
|
---|
8944 | if(proc === procedure$2.attribute){
|
---|
8945 | proc = attributes$1[token.action];
|
---|
8946 |
|
---|
8947 | if(proc === attributes$1.equals && token.name === "id"){
|
---|
8948 | //prefer ID selectors (eg. #ID)
|
---|
8949 | proc = 9;
|
---|
8950 | }
|
---|
8951 |
|
---|
8952 | if(token.ignoreCase){
|
---|
8953 | //ignoreCase adds some overhead, prefer "normal" token
|
---|
8954 | //this is a binary operation, to ensure it's still an int
|
---|
8955 | proc >>= 1;
|
---|
8956 | }
|
---|
8957 | } else if(proc === procedure$2.pseudo){
|
---|
8958 | if(!token.data){
|
---|
8959 | proc = 3;
|
---|
8960 | } else if(token.name === "has" || token.name === "contains"){
|
---|
8961 | proc = 0; //expensive in any case
|
---|
8962 | } else if(token.name === "matches" || token.name === "not"){
|
---|
8963 | proc = 0;
|
---|
8964 | for(var i = 0; i < token.data.length; i++){
|
---|
8965 | //TODO better handling of complex selectors
|
---|
8966 | if(token.data[i].length !== 1) continue;
|
---|
8967 | var cur = getProcedure(token.data[i][0]);
|
---|
8968 | //avoid executing :has or :contains
|
---|
8969 | if(cur === 0){
|
---|
8970 | proc = 0;
|
---|
8971 | break;
|
---|
8972 | }
|
---|
8973 | if(cur > proc) proc = cur;
|
---|
8974 | }
|
---|
8975 | if(token.data.length > 1 && proc > 0) proc -= 1;
|
---|
8976 | } else {
|
---|
8977 | proc = 1;
|
---|
8978 | }
|
---|
8979 | }
|
---|
8980 | return proc;
|
---|
8981 | }
|
---|
8982 |
|
---|
8983 | /*
|
---|
8984 | compiles a selector to an executable function
|
---|
8985 | */
|
---|
8986 |
|
---|
8987 | var compile_1$2 = compile$1;
|
---|
8988 | var compileUnsafe_1 = compileUnsafe;
|
---|
8989 | var compileToken_1 = compileToken;
|
---|
8990 |
|
---|
8991 | var isTag$4 = domutils.isTag,
|
---|
8992 | trueFunc$2 = boolbase.trueFunc,
|
---|
8993 | falseFunc$3 = boolbase.falseFunc;
|
---|
8994 |
|
---|
8995 | function compile$1(selector, options, context){
|
---|
8996 | var next = compileUnsafe(selector, options, context);
|
---|
8997 | return wrap(next);
|
---|
8998 | }
|
---|
8999 |
|
---|
9000 | function wrap(next){
|
---|
9001 | return function base(elem){
|
---|
9002 | return isTag$4(elem) && next(elem);
|
---|
9003 | };
|
---|
9004 | }
|
---|
9005 |
|
---|
9006 | function compileUnsafe(selector, options, context){
|
---|
9007 | var token = cssWhat(selector, options);
|
---|
9008 | return compileToken(token, options, context);
|
---|
9009 | }
|
---|
9010 |
|
---|
9011 | function includesScopePseudo(t){
|
---|
9012 | return t.type === "pseudo" && (
|
---|
9013 | t.name === "scope" || (
|
---|
9014 | Array.isArray(t.data) &&
|
---|
9015 | t.data.some(function(data){
|
---|
9016 | return data.some(includesScopePseudo);
|
---|
9017 | })
|
---|
9018 | )
|
---|
9019 | );
|
---|
9020 | }
|
---|
9021 |
|
---|
9022 | var DESCENDANT_TOKEN = {type: "descendant"},
|
---|
9023 | SCOPE_TOKEN = {type: "pseudo", name: "scope"},
|
---|
9024 | PLACEHOLDER_ELEMENT = {},
|
---|
9025 | getParent$2 = domutils.getParent;
|
---|
9026 |
|
---|
9027 | //CSS 4 Spec (Draft): 3.3.1. Absolutizing a Scope-relative Selector
|
---|
9028 | //http://www.w3.org/TR/selectors4/#absolutizing
|
---|
9029 | function absolutize(token, context){
|
---|
9030 | //TODO better check if context is document
|
---|
9031 | var hasContext = !!context && !!context.length && context.every(function(e){
|
---|
9032 | return e === PLACEHOLDER_ELEMENT || !!getParent$2(e);
|
---|
9033 | });
|
---|
9034 |
|
---|
9035 |
|
---|
9036 | token.forEach(function(t){
|
---|
9037 | if(t.length > 0 && isTraversal(t[0]) && t[0].type !== "descendant"); else if(hasContext && !includesScopePseudo(t)){
|
---|
9038 | t.unshift(DESCENDANT_TOKEN);
|
---|
9039 | } else {
|
---|
9040 | return;
|
---|
9041 | }
|
---|
9042 |
|
---|
9043 | t.unshift(SCOPE_TOKEN);
|
---|
9044 | });
|
---|
9045 | }
|
---|
9046 |
|
---|
9047 | function compileToken(token, options, context){
|
---|
9048 | token = token.filter(function(t){ return t.length > 0; });
|
---|
9049 |
|
---|
9050 | token.forEach(sort);
|
---|
9051 |
|
---|
9052 | var isArrayContext = Array.isArray(context);
|
---|
9053 |
|
---|
9054 | context = (options && options.context) || context;
|
---|
9055 |
|
---|
9056 | if(context && !isArrayContext) context = [context];
|
---|
9057 |
|
---|
9058 | absolutize(token, context);
|
---|
9059 |
|
---|
9060 | return token
|
---|
9061 | .map(function(rules){ return compileRules(rules, options, context, isArrayContext); })
|
---|
9062 | .reduce(reduceRules, falseFunc$3);
|
---|
9063 | }
|
---|
9064 |
|
---|
9065 | function isTraversal(t){
|
---|
9066 | return procedure$2[t.type] < 0;
|
---|
9067 | }
|
---|
9068 |
|
---|
9069 | function compileRules(rules, options, context, isArrayContext){
|
---|
9070 | var acceptSelf = (isArrayContext && rules[0].name === "scope" && rules[1].type === "descendant");
|
---|
9071 | return rules.reduce(function(func, rule, index){
|
---|
9072 | if(func === falseFunc$3) return func;
|
---|
9073 | return general[rule.type](func, rule, options, context, acceptSelf && index === 1);
|
---|
9074 | }, options && options.rootFunc || trueFunc$2);
|
---|
9075 | }
|
---|
9076 |
|
---|
9077 | function reduceRules(a, b){
|
---|
9078 | if(b === falseFunc$3 || a === trueFunc$2){
|
---|
9079 | return a;
|
---|
9080 | }
|
---|
9081 | if(a === falseFunc$3 || b === trueFunc$2){
|
---|
9082 | return b;
|
---|
9083 | }
|
---|
9084 |
|
---|
9085 | return function combine(elem){
|
---|
9086 | return a(elem) || b(elem);
|
---|
9087 | };
|
---|
9088 | }
|
---|
9089 |
|
---|
9090 | //:not, :has and :matches have to compile selectors
|
---|
9091 | //doing this in lib/pseudos.js would lead to circular dependencies,
|
---|
9092 | //so we add them here
|
---|
9093 |
|
---|
9094 | var filters$1 = pseudos_1.filters,
|
---|
9095 | existsOne$1 = domutils.existsOne,
|
---|
9096 | isTag$4 = domutils.isTag,
|
---|
9097 | getChildren$2 = domutils.getChildren;
|
---|
9098 |
|
---|
9099 |
|
---|
9100 | function containsTraversal(t){
|
---|
9101 | return t.some(isTraversal);
|
---|
9102 | }
|
---|
9103 |
|
---|
9104 | filters$1.not = function(next, token, options, context){
|
---|
9105 | var opts = {
|
---|
9106 | xmlMode: !!(options && options.xmlMode),
|
---|
9107 | strict: !!(options && options.strict)
|
---|
9108 | };
|
---|
9109 |
|
---|
9110 | if(opts.strict){
|
---|
9111 | if(token.length > 1 || token.some(containsTraversal)){
|
---|
9112 | throw new SyntaxError("complex selectors in :not aren't allowed in strict mode");
|
---|
9113 | }
|
---|
9114 | }
|
---|
9115 |
|
---|
9116 | var func = compileToken(token, opts, context);
|
---|
9117 |
|
---|
9118 | if(func === falseFunc$3) return next;
|
---|
9119 | if(func === trueFunc$2) return falseFunc$3;
|
---|
9120 |
|
---|
9121 | return function(elem){
|
---|
9122 | return !func(elem) && next(elem);
|
---|
9123 | };
|
---|
9124 | };
|
---|
9125 |
|
---|
9126 | filters$1.has = function(next, token, options){
|
---|
9127 | var opts = {
|
---|
9128 | xmlMode: !!(options && options.xmlMode),
|
---|
9129 | strict: !!(options && options.strict)
|
---|
9130 | };
|
---|
9131 |
|
---|
9132 | //FIXME: Uses an array as a pointer to the current element (side effects)
|
---|
9133 | var context = token.some(containsTraversal) ? [PLACEHOLDER_ELEMENT] : null;
|
---|
9134 |
|
---|
9135 | var func = compileToken(token, opts, context);
|
---|
9136 |
|
---|
9137 | if(func === falseFunc$3) return falseFunc$3;
|
---|
9138 | if(func === trueFunc$2) return function(elem){
|
---|
9139 | return getChildren$2(elem).some(isTag$4) && next(elem);
|
---|
9140 | };
|
---|
9141 |
|
---|
9142 | func = wrap(func);
|
---|
9143 |
|
---|
9144 | if(context){
|
---|
9145 | return function has(elem){
|
---|
9146 | return next(elem) && (
|
---|
9147 | (context[0] = elem), existsOne$1(func, getChildren$2(elem))
|
---|
9148 | );
|
---|
9149 | };
|
---|
9150 | }
|
---|
9151 |
|
---|
9152 | return function has(elem){
|
---|
9153 | return next(elem) && existsOne$1(func, getChildren$2(elem));
|
---|
9154 | };
|
---|
9155 | };
|
---|
9156 |
|
---|
9157 | filters$1.matches = function(next, token, options, context){
|
---|
9158 | var opts = {
|
---|
9159 | xmlMode: !!(options && options.xmlMode),
|
---|
9160 | strict: !!(options && options.strict),
|
---|
9161 | rootFunc: next
|
---|
9162 | };
|
---|
9163 |
|
---|
9164 | return compileToken(token, opts, context);
|
---|
9165 | };
|
---|
9166 | compile_1$2.compileUnsafe = compileUnsafe_1;
|
---|
9167 | compile_1$2.compileToken = compileToken_1;
|
---|
9168 |
|
---|
9169 | var cssSelect = CSSselect;
|
---|
9170 |
|
---|
9171 | var findOne$1 = domutils.findOne,
|
---|
9172 | findAll$1 = domutils.findAll,
|
---|
9173 | getChildren$3 = domutils.getChildren,
|
---|
9174 | removeSubsets = domutils.removeSubsets,
|
---|
9175 | falseFunc$4 = boolbase.falseFunc,
|
---|
9176 | compileUnsafe$1 = compile_1$2.compileUnsafe,
|
---|
9177 | compileToken$1 = compile_1$2.compileToken;
|
---|
9178 |
|
---|
9179 | function getSelectorFunc(searchFunc){
|
---|
9180 | return function select(query, elems, options){
|
---|
9181 | if(typeof query !== "function") query = compileUnsafe$1(query, options, elems);
|
---|
9182 | if(!Array.isArray(elems)) elems = getChildren$3(elems);
|
---|
9183 | else elems = removeSubsets(elems);
|
---|
9184 | return searchFunc(query, elems);
|
---|
9185 | };
|
---|
9186 | }
|
---|
9187 |
|
---|
9188 | var selectAll = getSelectorFunc(function selectAll(query, elems){
|
---|
9189 | return (query === falseFunc$4 || !elems || elems.length === 0) ? [] : findAll$1(query, elems);
|
---|
9190 | });
|
---|
9191 |
|
---|
9192 | var selectOne = getSelectorFunc(function selectOne(query, elems){
|
---|
9193 | return (query === falseFunc$4 || !elems || elems.length === 0) ? null : findOne$1(query, elems);
|
---|
9194 | });
|
---|
9195 |
|
---|
9196 | function is(elem, query, options){
|
---|
9197 | return (typeof query === "function" ? query : compile_1$2(query, options))(elem);
|
---|
9198 | }
|
---|
9199 |
|
---|
9200 | /*
|
---|
9201 | the exported interface
|
---|
9202 | */
|
---|
9203 | function CSSselect(query, elems, options){
|
---|
9204 | return selectAll(query, elems, options);
|
---|
9205 | }
|
---|
9206 |
|
---|
9207 | CSSselect.compile = compile_1$2;
|
---|
9208 | CSSselect.filters = pseudos_1.filters;
|
---|
9209 | CSSselect.pseudos = pseudos_1.pseudos;
|
---|
9210 |
|
---|
9211 | CSSselect.selectAll = selectAll;
|
---|
9212 | CSSselect.selectOne = selectOne;
|
---|
9213 |
|
---|
9214 | CSSselect.is = is;
|
---|
9215 |
|
---|
9216 | //legacy methods (might be removed)
|
---|
9217 | CSSselect.parse = compile_1$2;
|
---|
9218 | CSSselect.iterate = selectAll;
|
---|
9219 |
|
---|
9220 | //hooks
|
---|
9221 | CSSselect._compileUnsafe = compileUnsafe$1;
|
---|
9222 | CSSselect._compileToken = compileToken$1;
|
---|
9223 |
|
---|
9224 | /**
|
---|
9225 | * Copyright 2018 Google LLC
|
---|
9226 | *
|
---|
9227 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
---|
9228 | * use this file except in compliance with the License. You may obtain a copy of
|
---|
9229 | * the License at
|
---|
9230 | *
|
---|
9231 | * http://www.apache.org/licenses/LICENSE-2.0
|
---|
9232 | *
|
---|
9233 | * Unless required by applicable law or agreed to in writing, software
|
---|
9234 | * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
---|
9235 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
---|
9236 | * License for the specific language governing permissions and limitations under
|
---|
9237 | * the License.
|
---|
9238 | */
|
---|
9239 |
|
---|
9240 | const treeAdapter = require('parse5-htmlparser2-tree-adapter');
|
---|
9241 |
|
---|
9242 | const PARSE5_OPTS = {
|
---|
9243 | treeAdapter
|
---|
9244 | };
|
---|
9245 | /**
|
---|
9246 | * Parse HTML into a mutable, serializable DOM Document.
|
---|
9247 | * The DOM implementation is an htmlparser2 DOM enhanced with basic DOM mutation methods.
|
---|
9248 | * @param {String} html HTML to parse into a Document instance
|
---|
9249 | */
|
---|
9250 |
|
---|
9251 | function createDocument(html) {
|
---|
9252 | const document = parse5.parse(html, PARSE5_OPTS);
|
---|
9253 | defineProperties(document, DocumentExtensions); // Extend Element.prototype with DOM manipulation methods.
|
---|
9254 |
|
---|
9255 | const scratch = document.createElement('div'); // Get a reference to the base Node class - used by createTextNode()
|
---|
9256 |
|
---|
9257 | document.$$Node = scratch.constructor;
|
---|
9258 | const elementProto = Object.getPrototypeOf(scratch);
|
---|
9259 | defineProperties(elementProto, ElementExtensions);
|
---|
9260 | elementProto.ownerDocument = document;
|
---|
9261 | return document;
|
---|
9262 | }
|
---|
9263 | /**
|
---|
9264 | * Serialize a Document to an HTML String
|
---|
9265 | * @param {Document} document A Document, such as one created via `createDocument()`
|
---|
9266 | */
|
---|
9267 |
|
---|
9268 | function serializeDocument(document) {
|
---|
9269 | return parse5.serialize(document, PARSE5_OPTS);
|
---|
9270 | }
|
---|
9271 | /**
|
---|
9272 | * Methods and descriptors to mix into Element.prototype
|
---|
9273 | */
|
---|
9274 |
|
---|
9275 | const ElementExtensions = {
|
---|
9276 | /** @extends htmlparser2.Element.prototype */
|
---|
9277 | nodeName: {
|
---|
9278 | get() {
|
---|
9279 | return this.tagName.toUpperCase();
|
---|
9280 | }
|
---|
9281 |
|
---|
9282 | },
|
---|
9283 | id: reflectedProperty('id'),
|
---|
9284 | className: reflectedProperty('class'),
|
---|
9285 |
|
---|
9286 | insertBefore(child, referenceNode) {
|
---|
9287 | if (!referenceNode) return this.appendChild(child);
|
---|
9288 | treeAdapter.insertBefore(this, child, referenceNode);
|
---|
9289 | return child;
|
---|
9290 | },
|
---|
9291 |
|
---|
9292 | appendChild(child) {
|
---|
9293 | treeAdapter.appendChild(this, child);
|
---|
9294 | return child;
|
---|
9295 | },
|
---|
9296 |
|
---|
9297 | removeChild(child) {
|
---|
9298 | treeAdapter.detachNode(child);
|
---|
9299 | },
|
---|
9300 |
|
---|
9301 | remove() {
|
---|
9302 | treeAdapter.detachNode(this);
|
---|
9303 | },
|
---|
9304 |
|
---|
9305 | textContent: {
|
---|
9306 | get() {
|
---|
9307 | return getText$2(this);
|
---|
9308 | },
|
---|
9309 |
|
---|
9310 | set(text) {
|
---|
9311 | this.children = [];
|
---|
9312 | treeAdapter.insertText(this, text);
|
---|
9313 | }
|
---|
9314 |
|
---|
9315 | },
|
---|
9316 |
|
---|
9317 | setAttribute(name, value) {
|
---|
9318 | if (this.attribs == null) this.attribs = {};
|
---|
9319 | if (value == null) value = '';
|
---|
9320 | this.attribs[name] = value;
|
---|
9321 | },
|
---|
9322 |
|
---|
9323 | removeAttribute(name) {
|
---|
9324 | if (this.attribs != null) {
|
---|
9325 | delete this.attribs[name];
|
---|
9326 | }
|
---|
9327 | },
|
---|
9328 |
|
---|
9329 | getAttribute(name) {
|
---|
9330 | return this.attribs != null && this.attribs[name];
|
---|
9331 | },
|
---|
9332 |
|
---|
9333 | hasAttribute(name) {
|
---|
9334 | return this.attribs != null && this.attribs[name] != null;
|
---|
9335 | },
|
---|
9336 |
|
---|
9337 | getAttributeNode(name) {
|
---|
9338 | const value = this.getAttribute(name);
|
---|
9339 | if (value != null) return {
|
---|
9340 | specified: true,
|
---|
9341 | value
|
---|
9342 | };
|
---|
9343 | }
|
---|
9344 |
|
---|
9345 | };
|
---|
9346 | /**
|
---|
9347 | * Methods and descriptors to mix into the global document instance
|
---|
9348 | * @private
|
---|
9349 | */
|
---|
9350 |
|
---|
9351 | const DocumentExtensions = {
|
---|
9352 | /** @extends htmlparser2.Document.prototype */
|
---|
9353 | // document is just an Element in htmlparser2, giving it a nodeType of ELEMENT_NODE.
|
---|
9354 | // TODO: verify if these are needed for css-select
|
---|
9355 | nodeType: {
|
---|
9356 | get() {
|
---|
9357 | return 9;
|
---|
9358 | }
|
---|
9359 |
|
---|
9360 | },
|
---|
9361 | contentType: {
|
---|
9362 | get() {
|
---|
9363 | return 'text/html';
|
---|
9364 | }
|
---|
9365 |
|
---|
9366 | },
|
---|
9367 | nodeName: {
|
---|
9368 | get() {
|
---|
9369 | return '#document';
|
---|
9370 | }
|
---|
9371 |
|
---|
9372 | },
|
---|
9373 | documentElement: {
|
---|
9374 | get() {
|
---|
9375 | // Find the first <html> element within the document
|
---|
9376 | return this.childNodes.filter(child => String(child.tagName).toLowerCase() === 'html');
|
---|
9377 | }
|
---|
9378 |
|
---|
9379 | },
|
---|
9380 | compatMode: {
|
---|
9381 | get() {
|
---|
9382 | const compatMode = {
|
---|
9383 | 'no-quirks': 'CSS1Compat',
|
---|
9384 | quirks: 'BackCompat',
|
---|
9385 | 'limited-quirks': 'CSS1Compat'
|
---|
9386 | };
|
---|
9387 | return compatMode[treeAdapter.getDocumentMode(this)];
|
---|
9388 | }
|
---|
9389 |
|
---|
9390 | },
|
---|
9391 | body: {
|
---|
9392 | get() {
|
---|
9393 | return this.querySelector('body');
|
---|
9394 | }
|
---|
9395 |
|
---|
9396 | },
|
---|
9397 |
|
---|
9398 | createElement(name) {
|
---|
9399 | return treeAdapter.createElement(name, null, []);
|
---|
9400 | },
|
---|
9401 |
|
---|
9402 | createTextNode(text) {
|
---|
9403 | // there is no dedicated createTextNode equivalent exposed in htmlparser2's DOM
|
---|
9404 | const Node = this.$$Node;
|
---|
9405 | return new Node({
|
---|
9406 | type: 'text',
|
---|
9407 | data: text,
|
---|
9408 | parent: null,
|
---|
9409 | prev: null,
|
---|
9410 | next: null
|
---|
9411 | });
|
---|
9412 | },
|
---|
9413 |
|
---|
9414 | querySelector(sel) {
|
---|
9415 | return cssSelect.selectOne(sel, this.documentElement);
|
---|
9416 | },
|
---|
9417 |
|
---|
9418 | querySelectorAll(sel) {
|
---|
9419 | if (sel === ':root') {
|
---|
9420 | return this;
|
---|
9421 | }
|
---|
9422 |
|
---|
9423 | return cssSelect(sel, this.documentElement);
|
---|
9424 | }
|
---|
9425 |
|
---|
9426 | };
|
---|
9427 | /**
|
---|
9428 | * Essentially `Object.defineProperties()`, except function values are assigned as value descriptors for convenience.
|
---|
9429 | * @private
|
---|
9430 | */
|
---|
9431 |
|
---|
9432 | function defineProperties(obj, properties) {
|
---|
9433 | for (const i in properties) {
|
---|
9434 | const value = properties[i];
|
---|
9435 | Object.defineProperty(obj, i, typeof value === 'function' ? {
|
---|
9436 | value
|
---|
9437 | } : value);
|
---|
9438 | }
|
---|
9439 | }
|
---|
9440 | /**
|
---|
9441 | * Create a property descriptor defining a getter/setter pair alias for a named attribute.
|
---|
9442 | * @private
|
---|
9443 | */
|
---|
9444 |
|
---|
9445 |
|
---|
9446 | function reflectedProperty(attributeName) {
|
---|
9447 | return {
|
---|
9448 | get() {
|
---|
9449 | return this.getAttribute(attributeName);
|
---|
9450 | },
|
---|
9451 |
|
---|
9452 | set(value) {
|
---|
9453 | this.setAttribute(attributeName, value);
|
---|
9454 | }
|
---|
9455 |
|
---|
9456 | };
|
---|
9457 | }
|
---|
9458 | /**
|
---|
9459 | * Helper to get the text content of a node
|
---|
9460 | * https://github.com/fb55/domutils/blob/master/src/stringify.ts#L21
|
---|
9461 | * @private
|
---|
9462 | */
|
---|
9463 |
|
---|
9464 |
|
---|
9465 | function getText$2(node) {
|
---|
9466 | if (Array.isArray(node)) return node.map(getText$2).join('');
|
---|
9467 | if (treeAdapter.isElementNode(node)) return node.name === 'br' ? '\n' : getText$2(node.children);
|
---|
9468 | if (treeAdapter.isTextNode(node)) return node.data;
|
---|
9469 | return '';
|
---|
9470 | }
|
---|
9471 |
|
---|
9472 | /**
|
---|
9473 | * Copyright 2018 Google LLC
|
---|
9474 | *
|
---|
9475 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
---|
9476 | * use this file except in compliance with the License. You may obtain a copy of
|
---|
9477 | * the License at
|
---|
9478 | *
|
---|
9479 | * http://www.apache.org/licenses/LICENSE-2.0
|
---|
9480 | *
|
---|
9481 | * Unless required by applicable law or agreed to in writing, software
|
---|
9482 | * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
---|
9483 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
---|
9484 | * License for the specific language governing permissions and limitations under
|
---|
9485 | * the License.
|
---|
9486 | */
|
---|
9487 | /**
|
---|
9488 | * Parse a textual CSS Stylesheet into a Stylesheet instance.
|
---|
9489 | * Stylesheet is a mutable ReworkCSS AST with format similar to CSSOM.
|
---|
9490 | * @see https://github.com/reworkcss/css
|
---|
9491 | * @private
|
---|
9492 | * @param {String} stylesheet
|
---|
9493 | * @returns {css.Stylesheet} ast
|
---|
9494 | */
|
---|
9495 |
|
---|
9496 | function parseStylesheet(stylesheet) {
|
---|
9497 | return css.parse(stylesheet);
|
---|
9498 | }
|
---|
9499 | /**
|
---|
9500 | * Serialize a ReworkCSS Stylesheet to a String of CSS.
|
---|
9501 | * @private
|
---|
9502 | * @param {css.Stylesheet} ast A Stylesheet to serialize, such as one returned from `parseStylesheet()`
|
---|
9503 | * @param {Object} options Options to pass to `css.stringify()`
|
---|
9504 | * @param {Boolean} [options.compress] Compress CSS output (removes comments, whitespace, etc)
|
---|
9505 | */
|
---|
9506 |
|
---|
9507 | function serializeStylesheet(ast, options) {
|
---|
9508 | return css.stringify(ast, options);
|
---|
9509 | }
|
---|
9510 | /**
|
---|
9511 | * Converts a walkStyleRules() iterator to mark nodes with `.$$remove=true` instead of actually removing them.
|
---|
9512 | * This means they can be removed in a second pass, allowing the first pass to be nondestructive (eg: to preserve mirrored sheets).
|
---|
9513 | * @private
|
---|
9514 | * @param {Function} iterator Invoked on each node in the tree. Return `false` to remove that node.
|
---|
9515 | * @returns {(rule) => void} nonDestructiveIterator
|
---|
9516 | */
|
---|
9517 |
|
---|
9518 | function markOnly(predicate) {
|
---|
9519 | return rule => {
|
---|
9520 | const sel = rule.selectors;
|
---|
9521 |
|
---|
9522 | if (predicate(rule) === false) {
|
---|
9523 | rule.$$remove = true;
|
---|
9524 | }
|
---|
9525 |
|
---|
9526 | rule.$$markedSelectors = rule.selectors;
|
---|
9527 |
|
---|
9528 | if (rule._other) {
|
---|
9529 | rule._other.$$markedSelectors = rule._other.selectors;
|
---|
9530 | }
|
---|
9531 |
|
---|
9532 | rule.selectors = sel;
|
---|
9533 | };
|
---|
9534 | }
|
---|
9535 | /**
|
---|
9536 | * Apply filtered selectors to a rule from a previous markOnly run.
|
---|
9537 | * @private
|
---|
9538 | * @param {css.Rule} rule The Rule to apply marked selectors to (if they exist).
|
---|
9539 | */
|
---|
9540 |
|
---|
9541 | function applyMarkedSelectors(rule) {
|
---|
9542 | if (rule.$$markedSelectors) {
|
---|
9543 | rule.selectors = rule.$$markedSelectors;
|
---|
9544 | }
|
---|
9545 |
|
---|
9546 | if (rule._other) {
|
---|
9547 | applyMarkedSelectors(rule._other);
|
---|
9548 | }
|
---|
9549 | }
|
---|
9550 | /**
|
---|
9551 | * Recursively walk all rules in a stylesheet.
|
---|
9552 | * @private
|
---|
9553 | * @param {css.Rule} node A Stylesheet or Rule to descend into.
|
---|
9554 | * @param {Function} iterator Invoked on each node in the tree. Return `false` to remove that node.
|
---|
9555 | */
|
---|
9556 |
|
---|
9557 | function walkStyleRules(node, iterator) {
|
---|
9558 | if (node.stylesheet) return walkStyleRules(node.stylesheet, iterator);
|
---|
9559 | node.rules = node.rules.filter(rule => {
|
---|
9560 | if (rule.rules) {
|
---|
9561 | walkStyleRules(rule, iterator);
|
---|
9562 | }
|
---|
9563 |
|
---|
9564 | rule._other = undefined;
|
---|
9565 | rule.filterSelectors = filterSelectors;
|
---|
9566 | return iterator(rule) !== false;
|
---|
9567 | });
|
---|
9568 | }
|
---|
9569 | /**
|
---|
9570 | * Recursively walk all rules in two identical stylesheets, filtering nodes into one or the other based on a predicate.
|
---|
9571 | * @private
|
---|
9572 | * @param {css.Rule} node A Stylesheet or Rule to descend into.
|
---|
9573 | * @param {css.Rule} node2 A second tree identical to `node`
|
---|
9574 | * @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.
|
---|
9575 | */
|
---|
9576 |
|
---|
9577 | function walkStyleRulesWithReverseMirror(node, node2, iterator) {
|
---|
9578 | if (node2 === null) return walkStyleRules(node, iterator);
|
---|
9579 | if (node.stylesheet) return walkStyleRulesWithReverseMirror(node.stylesheet, node2.stylesheet, iterator);
|
---|
9580 | [node.rules, node2.rules] = splitFilter(node.rules, node2.rules, (rule, index, rules, rules2) => {
|
---|
9581 | const rule2 = rules2[index];
|
---|
9582 |
|
---|
9583 | if (rule.rules) {
|
---|
9584 | walkStyleRulesWithReverseMirror(rule, rule2, iterator);
|
---|
9585 | }
|
---|
9586 |
|
---|
9587 | rule._other = rule2;
|
---|
9588 | rule.filterSelectors = filterSelectors;
|
---|
9589 | return iterator(rule) !== false;
|
---|
9590 | });
|
---|
9591 | } // Like [].filter(), but applies the opposite filtering result to a second copy of the Array without a second pass.
|
---|
9592 | // This is just a quicker version of generating the compliment of the set returned from a filter operation.
|
---|
9593 |
|
---|
9594 | function splitFilter(a, b, predicate) {
|
---|
9595 | const aOut = [];
|
---|
9596 | const bOut = [];
|
---|
9597 |
|
---|
9598 | for (let index = 0; index < a.length; index++) {
|
---|
9599 | if (predicate(a[index], index, a, b)) {
|
---|
9600 | aOut.push(a[index]);
|
---|
9601 | } else {
|
---|
9602 | bOut.push(a[index]);
|
---|
9603 | }
|
---|
9604 | }
|
---|
9605 |
|
---|
9606 | return [aOut, bOut];
|
---|
9607 | } // can be invoked on a style rule to subset its selectors (with reverse mirroring)
|
---|
9608 |
|
---|
9609 |
|
---|
9610 | function filterSelectors(predicate) {
|
---|
9611 | if (this._other) {
|
---|
9612 | const [a, b] = splitFilter(this.selectors, this._other.selectors, predicate);
|
---|
9613 | this.selectors = a;
|
---|
9614 | this._other.selectors = b;
|
---|
9615 | } else {
|
---|
9616 | this.selectors = this.selectors.filter(predicate);
|
---|
9617 | }
|
---|
9618 | }
|
---|
9619 |
|
---|
9620 | const LOG_LEVELS = ['trace', 'debug', 'info', 'warn', 'error', 'silent'];
|
---|
9621 | const defaultLogger = {
|
---|
9622 | trace(msg) {
|
---|
9623 | console.trace(msg);
|
---|
9624 | },
|
---|
9625 |
|
---|
9626 | debug(msg) {
|
---|
9627 | console.debug(msg);
|
---|
9628 | },
|
---|
9629 |
|
---|
9630 | warn(msg) {
|
---|
9631 | console.warn(chalk.yellow(msg));
|
---|
9632 | },
|
---|
9633 |
|
---|
9634 | error(msg) {
|
---|
9635 | console.error(chalk.bold.red(msg));
|
---|
9636 | },
|
---|
9637 |
|
---|
9638 | info(msg) {
|
---|
9639 | console.info(chalk.bold.blue(msg));
|
---|
9640 | },
|
---|
9641 |
|
---|
9642 | silent() {}
|
---|
9643 |
|
---|
9644 | };
|
---|
9645 | function createLogger(logLevel) {
|
---|
9646 | const logLevelIdx = LOG_LEVELS.indexOf(logLevel);
|
---|
9647 | return LOG_LEVELS.reduce((logger, type, index) => {
|
---|
9648 | if (index >= logLevelIdx) {
|
---|
9649 | logger[type] = defaultLogger[type];
|
---|
9650 | } else {
|
---|
9651 | logger[type] = defaultLogger.silent;
|
---|
9652 | }
|
---|
9653 |
|
---|
9654 | return logger;
|
---|
9655 | }, {});
|
---|
9656 | }
|
---|
9657 |
|
---|
9658 | /**
|
---|
9659 | * Copyright 2018 Google LLC
|
---|
9660 | *
|
---|
9661 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
---|
9662 | * use this file except in compliance with the License. You may obtain a copy of
|
---|
9663 | * the License at
|
---|
9664 | *
|
---|
9665 | * http://www.apache.org/licenses/LICENSE-2.0
|
---|
9666 | *
|
---|
9667 | * Unless required by applicable law or agreed to in writing, software
|
---|
9668 | * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
---|
9669 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
---|
9670 | * License for the specific language governing permissions and limitations under
|
---|
9671 | * the License.
|
---|
9672 | */
|
---|
9673 | /**
|
---|
9674 | * The mechanism to use for lazy-loading stylesheets.
|
---|
9675 | * Note: <kbd>JS</kbd> indicates a strategy requiring JavaScript (falls back to `<noscript>` unless disabled).
|
---|
9676 | *
|
---|
9677 | * - **default:** Move stylesheet links to the end of the document and insert preload meta tags in their place.
|
---|
9678 | * - **"body":** Move all external stylesheet links to the end of the document.
|
---|
9679 | * - **"media":** Load stylesheets asynchronously by adding `media="not x"` and removing once loaded. <kbd>JS</kbd>
|
---|
9680 | * - **"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>
|
---|
9681 | * - **"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>
|
---|
9682 | * - **"js":** Inject an asynchronous CSS loader similar to [LoadCSS](https://github.com/filamentgroup/loadCSS) and use it to load stylesheets. <kbd>JS</kbd>
|
---|
9683 | * - **"js-lazy":** Like `"js"`, but the stylesheet is disabled until fully loaded.
|
---|
9684 | * @typedef {(default|'body'|'media'|'swap'|'swap-high'|'js'|'js-lazy')} PreloadStrategy
|
---|
9685 | * @public
|
---|
9686 | */
|
---|
9687 |
|
---|
9688 | /**
|
---|
9689 | * Controls which keyframes rules are inlined.
|
---|
9690 | *
|
---|
9691 | * - **"critical":** _(default)_ inline keyframes rules that are used by the critical CSS.
|
---|
9692 | * - **"all":** Inline all keyframes rules.
|
---|
9693 | * - **"none":** Remove all keyframes rules.
|
---|
9694 | * @typedef {('critical'|'all'|'none')} KeyframeStrategy
|
---|
9695 | * @private
|
---|
9696 | * @property {String} keyframes Which {@link KeyframeStrategy keyframe strategy} to use (default: `critical`)_
|
---|
9697 | */
|
---|
9698 |
|
---|
9699 | /**
|
---|
9700 | * Controls log level of the plugin. Specifies the level the logger should use. A logger will
|
---|
9701 | * not produce output for any log level beneath the specified level. Available levels and order
|
---|
9702 | * are:
|
---|
9703 | *
|
---|
9704 | * - **"info"** _(default)_
|
---|
9705 | * - **"warn"**
|
---|
9706 | * - **"error"**
|
---|
9707 | * - **"trace"**
|
---|
9708 | * - **"debug"**
|
---|
9709 | * - **"silent"**
|
---|
9710 | * @typedef {('info'|'warn'|'error'|'trace'|'debug'|'silent')} LogLevel
|
---|
9711 | * @public
|
---|
9712 | */
|
---|
9713 |
|
---|
9714 | /**
|
---|
9715 | * Custom logger interface:
|
---|
9716 | * @typedef {object} Logger
|
---|
9717 | * @public
|
---|
9718 | * @property {function(String)} trace - Prints a trace message
|
---|
9719 | * @property {function(String)} debug - Prints a debug message
|
---|
9720 | * @property {function(String)} info - Prints an information message
|
---|
9721 | * @property {function(String)} warn - Prints a warning message
|
---|
9722 | * @property {function(String)} error - Prints an error message
|
---|
9723 | */
|
---|
9724 |
|
---|
9725 | /**
|
---|
9726 | * All optional. Pass them to `new Critters({ ... })`.
|
---|
9727 | * @public
|
---|
9728 | * @typedef Options
|
---|
9729 | * @property {String} path Base path location of the CSS files _(default: `''`)_
|
---|
9730 | * @property {String} publicPath Public path of the CSS resources. This prefix is removed from the href _(default: `''`)_
|
---|
9731 | * @property {Boolean} external Inline styles from external stylesheets _(default: `true`)_
|
---|
9732 | * @property {Number} inlineThreshold Inline external stylesheets smaller than a given size _(default: `0`)_
|
---|
9733 | * @property {Number} minimumExternalSize If the non-critical external stylesheet would be below this size, just inline it _(default: `0`)_
|
---|
9734 | * @property {Boolean} pruneSource Remove inlined rules from the external stylesheet _(default: `false`)_
|
---|
9735 | * @property {Boolean} mergeStylesheets Merged inlined stylesheets into a single <style> tag _(default: `true`)_
|
---|
9736 | * @property {String[]} additionalStylesheets Glob for matching other stylesheets to be used while looking for critical CSS _(default: ``)_.
|
---|
9737 | * @property {String} preload Which {@link PreloadStrategy preload strategy} to use
|
---|
9738 | * @property {Boolean} noscriptFallback Add `<noscript>` fallback to JS-based strategies
|
---|
9739 | * @property {Boolean} inlineFonts Inline critical font-face rules _(default: `false`)_
|
---|
9740 | * @property {Boolean} preloadFonts Preloads critical fonts _(default: `true`)_
|
---|
9741 | * @property {Boolean} fonts Shorthand for setting `inlineFonts`+`preloadFonts`
|
---|
9742 | * - Values:
|
---|
9743 | * - `true` to inline critical font-face rules and preload the fonts
|
---|
9744 | * - `false` to don't inline any font-face rules and don't preload fonts
|
---|
9745 | * @property {String} keyframes Controls which keyframes rules are inlined.
|
---|
9746 | * - Values:
|
---|
9747 | * - `"critical"`: _(default)_ inline keyframes rules used by the critical CSS
|
---|
9748 | * - `"all"` inline all keyframes rules
|
---|
9749 | * - `"none"` remove all keyframes rules
|
---|
9750 | * @property {Boolean} compress Compress resulting critical CSS _(default: `true`)_
|
---|
9751 | * @property {String} logLevel Controls {@link LogLevel log level} of the plugin _(default: `"info"`)_
|
---|
9752 | * @property {object} logger Provide a custom logger interface {@link Logger logger}
|
---|
9753 | */
|
---|
9754 |
|
---|
9755 | function _catch(body, recover) {
|
---|
9756 | try {
|
---|
9757 | var result = body();
|
---|
9758 | } catch (e) {
|
---|
9759 | return recover(e);
|
---|
9760 | }
|
---|
9761 |
|
---|
9762 | if (result && result.then) {
|
---|
9763 | return result.then(void 0, recover);
|
---|
9764 | }
|
---|
9765 |
|
---|
9766 | return result;
|
---|
9767 | }
|
---|
9768 |
|
---|
9769 | class Critters {
|
---|
9770 | /** @private */
|
---|
9771 | constructor(options) {
|
---|
9772 | this.options = Object.assign({
|
---|
9773 | logLevel: 'info',
|
---|
9774 | path: '',
|
---|
9775 | publicPath: '',
|
---|
9776 | reduceInlineStyles: true,
|
---|
9777 | pruneSource: false,
|
---|
9778 | additionalStylesheets: []
|
---|
9779 | }, options || {});
|
---|
9780 | this.urlFilter = this.options.filter;
|
---|
9781 |
|
---|
9782 | if (this.urlFilter instanceof RegExp) {
|
---|
9783 | this.urlFilter = this.urlFilter.test.bind(this.urlFilter);
|
---|
9784 | }
|
---|
9785 |
|
---|
9786 | this.logger = this.options.logger || createLogger(this.options.logLevel);
|
---|
9787 | }
|
---|
9788 | /**
|
---|
9789 | * Read the contents of a file from the specified filesystem or disk
|
---|
9790 | */
|
---|
9791 |
|
---|
9792 |
|
---|
9793 | readFile(filename) {
|
---|
9794 | const fs = this.fs;
|
---|
9795 | return new Promise((resolve, reject) => {
|
---|
9796 | const callback = (err, data) => {
|
---|
9797 | if (err) reject(err);else resolve(data);
|
---|
9798 | };
|
---|
9799 |
|
---|
9800 | if (fs && fs.readFile) {
|
---|
9801 | fs.readFile(filename, callback);
|
---|
9802 | } else {
|
---|
9803 | require('fs').readFile(filename, 'utf8', callback);
|
---|
9804 | }
|
---|
9805 | });
|
---|
9806 | }
|
---|
9807 | /**
|
---|
9808 | * Apply critical CSS processing to the html
|
---|
9809 | */
|
---|
9810 |
|
---|
9811 |
|
---|
9812 | process(html) {
|
---|
9813 | try {
|
---|
9814 | const _this = this;
|
---|
9815 |
|
---|
9816 | function _temp4() {
|
---|
9817 | // go through all the style tags in the document and reduce them to only critical CSS
|
---|
9818 | const styles = _this.getAffectedStyleTags(document);
|
---|
9819 |
|
---|
9820 | return Promise.resolve(Promise.all(styles.map(style => _this.processStyle(style, document)))).then(function () {
|
---|
9821 | function _temp2() {
|
---|
9822 | // serialize the document back to HTML and we're done
|
---|
9823 | const output = serializeDocument(document);
|
---|
9824 | const end = process.hrtime.bigint();
|
---|
9825 |
|
---|
9826 | _this.logger.info('Time ' + parseFloat(end - start) / 1000000.0);
|
---|
9827 |
|
---|
9828 | return output;
|
---|
9829 | }
|
---|
9830 |
|
---|
9831 | const _temp = function () {
|
---|
9832 | if (_this.options.mergeStylesheets !== false && styles.length !== 0) {
|
---|
9833 | return Promise.resolve(_this.mergeStylesheets(document)).then(function () {});
|
---|
9834 | }
|
---|
9835 | }();
|
---|
9836 |
|
---|
9837 | return _temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp);
|
---|
9838 | });
|
---|
9839 | }
|
---|
9840 |
|
---|
9841 | const start = process.hrtime.bigint(); // Parse the generated HTML in a DOM we can mutate
|
---|
9842 |
|
---|
9843 | const document = createDocument(html);
|
---|
9844 |
|
---|
9845 | if (_this.options.additionalStylesheets.length > 0) {
|
---|
9846 | _this.embedAdditionalStylesheet(document);
|
---|
9847 | } // `external:false` skips processing of external sheets
|
---|
9848 |
|
---|
9849 |
|
---|
9850 | const _temp3 = function () {
|
---|
9851 | if (_this.options.external !== false) {
|
---|
9852 | const externalSheets = [].slice.call(document.querySelectorAll('link[rel="stylesheet"]'));
|
---|
9853 | return Promise.resolve(Promise.all(externalSheets.map(link => _this.embedLinkedStylesheet(link, document)))).then(function () {});
|
---|
9854 | }
|
---|
9855 | }();
|
---|
9856 |
|
---|
9857 | return Promise.resolve(_temp3 && _temp3.then ? _temp3.then(_temp4) : _temp4(_temp3));
|
---|
9858 | } catch (e) {
|
---|
9859 | return Promise.reject(e);
|
---|
9860 | }
|
---|
9861 | }
|
---|
9862 | /**
|
---|
9863 | * Get the style tags that need processing
|
---|
9864 | */
|
---|
9865 |
|
---|
9866 |
|
---|
9867 | getAffectedStyleTags(document) {
|
---|
9868 | const styles = [].slice.call(document.querySelectorAll('style')); // `inline:false` skips processing of inline stylesheets
|
---|
9869 |
|
---|
9870 | if (this.options.reduceInlineStyles === false) {
|
---|
9871 | return styles.filter(style => style.$$external);
|
---|
9872 | }
|
---|
9873 |
|
---|
9874 | return styles;
|
---|
9875 | }
|
---|
9876 |
|
---|
9877 | mergeStylesheets(document) {
|
---|
9878 | try {
|
---|
9879 | const _this2 = this;
|
---|
9880 |
|
---|
9881 | const styles = _this2.getAffectedStyleTags(document);
|
---|
9882 |
|
---|
9883 | if (styles.length === 0) {
|
---|
9884 | _this2.logger.warn('Merging inline stylesheets into a single <style> tag skipped, no inline stylesheets to merge');
|
---|
9885 |
|
---|
9886 | return Promise.resolve();
|
---|
9887 | }
|
---|
9888 |
|
---|
9889 | const first = styles[0];
|
---|
9890 | let sheet = first.textContent;
|
---|
9891 |
|
---|
9892 | for (let i = 1; i < styles.length; i++) {
|
---|
9893 | const node = styles[i];
|
---|
9894 | sheet += node.textContent;
|
---|
9895 | node.remove();
|
---|
9896 | }
|
---|
9897 |
|
---|
9898 | first.textContent = sheet;
|
---|
9899 | return Promise.resolve();
|
---|
9900 | } catch (e) {
|
---|
9901 | return Promise.reject(e);
|
---|
9902 | }
|
---|
9903 | }
|
---|
9904 | /**
|
---|
9905 | * Given href, find the corresponding CSS asset
|
---|
9906 | */
|
---|
9907 |
|
---|
9908 |
|
---|
9909 | getCssAsset(href) {
|
---|
9910 | try {
|
---|
9911 | const _this3 = this;
|
---|
9912 |
|
---|
9913 | const outputPath = _this3.options.path;
|
---|
9914 | const publicPath = _this3.options.publicPath; // CHECK - the output path
|
---|
9915 | // path on disk (with output.publicPath removed)
|
---|
9916 |
|
---|
9917 | let normalizedPath = href.replace(/^\//, '');
|
---|
9918 | const pathPrefix = (publicPath || '').replace(/(^\/|\/$)/g, '') + '/';
|
---|
9919 |
|
---|
9920 | if (normalizedPath.indexOf(pathPrefix) === 0) {
|
---|
9921 | normalizedPath = normalizedPath.substring(pathPrefix.length).replace(/^\//, '');
|
---|
9922 | }
|
---|
9923 |
|
---|
9924 | const filename = path.resolve(outputPath, normalizedPath);
|
---|
9925 | let sheet;
|
---|
9926 |
|
---|
9927 | const _temp5 = _catch(function () {
|
---|
9928 | return Promise.resolve(_this3.readFile(filename)).then(function (_this3$readFile) {
|
---|
9929 | sheet = _this3$readFile;
|
---|
9930 | });
|
---|
9931 | }, function () {
|
---|
9932 | _this3.logger.warn(`Unable to locate stylesheet: ${filename}`);
|
---|
9933 | });
|
---|
9934 |
|
---|
9935 | return Promise.resolve(_temp5 && _temp5.then ? _temp5.then(function () {
|
---|
9936 | return sheet;
|
---|
9937 | }) : sheet);
|
---|
9938 | } catch (e) {
|
---|
9939 | return Promise.reject(e);
|
---|
9940 | }
|
---|
9941 | }
|
---|
9942 |
|
---|
9943 | checkInlineThreshold(link, style, sheet) {
|
---|
9944 | if (this.options.inlineThreshold && sheet.length < this.options.inlineThreshold) {
|
---|
9945 | const href = style.$$name;
|
---|
9946 | style.$$reduce = false;
|
---|
9947 | this.logger.info(`\u001b[32mInlined all of ${href} (${sheet.length} was below the threshold of ${this.options.inlineThreshold})\u001b[39m`);
|
---|
9948 | link.remove();
|
---|
9949 | return true;
|
---|
9950 | }
|
---|
9951 |
|
---|
9952 | return false;
|
---|
9953 | }
|
---|
9954 | /**
|
---|
9955 | * Inline the stylesheets from options.additionalStylesheets (assuming it passes `options.filter`)
|
---|
9956 | */
|
---|
9957 |
|
---|
9958 |
|
---|
9959 | embedAdditionalStylesheet(document) {
|
---|
9960 | try {
|
---|
9961 | const _this4 = this;
|
---|
9962 |
|
---|
9963 | const styleSheetsIncluded = [];
|
---|
9964 | return Promise.resolve(Promise.all(_this4.options.additionalStylesheets.map(cssFile => {
|
---|
9965 | if (styleSheetsIncluded.includes(cssFile)) {
|
---|
9966 | return;
|
---|
9967 | }
|
---|
9968 |
|
---|
9969 | styleSheetsIncluded.push(cssFile);
|
---|
9970 | const style = document.createElement('style');
|
---|
9971 | style.$$external = true;
|
---|
9972 | return _this4.getCssAsset(cssFile, style).then(sheet => [sheet, style]);
|
---|
9973 | }))).then(function (sources) {
|
---|
9974 | sources.forEach(([sheet, style]) => {
|
---|
9975 | if (!sheet) return;
|
---|
9976 | style.textContent = sheet;
|
---|
9977 | document.head.appendChild(style);
|
---|
9978 | });
|
---|
9979 | });
|
---|
9980 | } catch (e) {
|
---|
9981 | return Promise.reject(e);
|
---|
9982 | }
|
---|
9983 | }
|
---|
9984 | /**
|
---|
9985 | * Inline the target stylesheet referred to by a <link rel="stylesheet"> (assuming it passes `options.filter`)
|
---|
9986 | */
|
---|
9987 |
|
---|
9988 |
|
---|
9989 | embedLinkedStylesheet(link, document) {
|
---|
9990 | try {
|
---|
9991 | const _this5 = this;
|
---|
9992 |
|
---|
9993 | const href = link.getAttribute('href');
|
---|
9994 | const media = link.getAttribute('media');
|
---|
9995 | const preloadMode = _this5.options.preload; // skip filtered resources, or network resources if no filter is provided
|
---|
9996 |
|
---|
9997 | if (_this5.urlFilter ? _this5.urlFilter(href) : !(href || '').match(/\.css$/)) {
|
---|
9998 | return Promise.resolve();
|
---|
9999 | } // the reduced critical CSS gets injected into a new <style> tag
|
---|
10000 |
|
---|
10001 |
|
---|
10002 | const style = document.createElement('style');
|
---|
10003 | style.$$external = true;
|
---|
10004 | return Promise.resolve(_this5.getCssAsset(href, style)).then(function (sheet) {
|
---|
10005 | if (!sheet) {
|
---|
10006 | return;
|
---|
10007 | }
|
---|
10008 |
|
---|
10009 | style.textContent = sheet;
|
---|
10010 | style.$$name = href;
|
---|
10011 | style.$$links = [link];
|
---|
10012 | link.parentNode.insertBefore(style, link);
|
---|
10013 |
|
---|
10014 | if (_this5.checkInlineThreshold(link, style, sheet)) {
|
---|
10015 | return;
|
---|
10016 | } // CSS loader is only injected for the first sheet, then this becomes an empty string
|
---|
10017 |
|
---|
10018 |
|
---|
10019 | let cssLoaderPreamble = "function $loadcss(u,m,l){(l=document.createElement('link')).rel='stylesheet';l.href=u;document.head.appendChild(l)}";
|
---|
10020 | const lazy = preloadMode === 'js-lazy';
|
---|
10021 |
|
---|
10022 | if (lazy) {
|
---|
10023 | cssLoaderPreamble = cssLoaderPreamble.replace('l.href', "l.media='print';l.onload=function(){l.media=m};l.href");
|
---|
10024 | } // Allow disabling any mutation of the stylesheet link:
|
---|
10025 |
|
---|
10026 |
|
---|
10027 | if (preloadMode === false) return;
|
---|
10028 | let noscriptFallback = false;
|
---|
10029 |
|
---|
10030 | if (preloadMode === 'body') {
|
---|
10031 | document.body.appendChild(link);
|
---|
10032 | } else {
|
---|
10033 | link.setAttribute('rel', 'preload');
|
---|
10034 | link.setAttribute('as', 'style');
|
---|
10035 |
|
---|
10036 | if (preloadMode === 'js' || preloadMode === 'js-lazy') {
|
---|
10037 | const script = document.createElement('script');
|
---|
10038 | const js = `${cssLoaderPreamble}$loadcss(${JSON.stringify(href)}${lazy ? ',' + JSON.stringify(media || 'all') : ''})`; // script.appendChild(document.createTextNode(js));
|
---|
10039 |
|
---|
10040 | script.textContent = js;
|
---|
10041 | link.parentNode.insertBefore(script, link.nextSibling);
|
---|
10042 | style.$$links.push(script);
|
---|
10043 | cssLoaderPreamble = '';
|
---|
10044 | noscriptFallback = true;
|
---|
10045 | } else if (preloadMode === 'media') {
|
---|
10046 | // @see https://github.com/filamentgroup/loadCSS/blob/af1106cfe0bf70147e22185afa7ead96c01dec48/src/loadCSS.js#L26
|
---|
10047 | link.setAttribute('rel', 'stylesheet');
|
---|
10048 | link.removeAttribute('as');
|
---|
10049 | link.setAttribute('media', 'print');
|
---|
10050 | link.setAttribute('onload', `this.media='${media || 'all'}'`);
|
---|
10051 | noscriptFallback = true;
|
---|
10052 | } else if (preloadMode === 'swap-high') {
|
---|
10053 | // @see http://filamentgroup.github.io/loadCSS/test/new-high.html
|
---|
10054 | link.setAttribute('rel', 'alternate stylesheet preload');
|
---|
10055 | link.setAttribute('title', 'styles');
|
---|
10056 | link.setAttribute('onload', `this.title='';this.rel='stylesheet'`);
|
---|
10057 | noscriptFallback = true;
|
---|
10058 | } else if (preloadMode === 'swap') {
|
---|
10059 | link.setAttribute('onload', "this.rel='stylesheet'");
|
---|
10060 | noscriptFallback = true;
|
---|
10061 | } else {
|
---|
10062 | const bodyLink = document.createElement('link');
|
---|
10063 | bodyLink.setAttribute('rel', 'stylesheet');
|
---|
10064 | if (media) bodyLink.setAttribute('media', media);
|
---|
10065 | bodyLink.setAttribute('href', href);
|
---|
10066 | document.body.appendChild(bodyLink);
|
---|
10067 | style.$$links.push(bodyLink);
|
---|
10068 | }
|
---|
10069 | }
|
---|
10070 |
|
---|
10071 | if (_this5.options.noscriptFallback !== false && noscriptFallback) {
|
---|
10072 | const noscript = document.createElement('noscript');
|
---|
10073 | const noscriptLink = document.createElement('link');
|
---|
10074 | noscriptLink.setAttribute('rel', 'stylesheet');
|
---|
10075 | noscriptLink.setAttribute('href', href);
|
---|
10076 | if (media) noscriptLink.setAttribute('media', media);
|
---|
10077 | noscript.appendChild(noscriptLink);
|
---|
10078 | link.parentNode.insertBefore(noscript, link.nextSibling);
|
---|
10079 | style.$$links.push(noscript);
|
---|
10080 | }
|
---|
10081 | });
|
---|
10082 | } catch (e) {
|
---|
10083 | return Promise.reject(e);
|
---|
10084 | }
|
---|
10085 | }
|
---|
10086 | /**
|
---|
10087 | * Prune the source CSS files
|
---|
10088 | */
|
---|
10089 |
|
---|
10090 |
|
---|
10091 | pruneSource(style, before, sheetInverse) {
|
---|
10092 | // if external stylesheet would be below minimum size, just inline everything
|
---|
10093 | const minSize = this.options.minimumExternalSize;
|
---|
10094 | const name = style.$$name;
|
---|
10095 |
|
---|
10096 | if (minSize && sheetInverse.length < minSize) {
|
---|
10097 | 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`);
|
---|
10098 | style.textContent = before; // remove any associated external resources/loaders:
|
---|
10099 |
|
---|
10100 | if (style.$$links) {
|
---|
10101 | for (const link of style.$$links) {
|
---|
10102 | const parent = link.parentNode;
|
---|
10103 | if (parent) parent.removeChild(link);
|
---|
10104 | }
|
---|
10105 | }
|
---|
10106 |
|
---|
10107 | return true;
|
---|
10108 | }
|
---|
10109 |
|
---|
10110 | return false;
|
---|
10111 | }
|
---|
10112 | /**
|
---|
10113 | * Parse the stylesheet within a <style> element, then reduce it to contain only rules used by the document.
|
---|
10114 | */
|
---|
10115 |
|
---|
10116 |
|
---|
10117 | processStyle(style, document) {
|
---|
10118 | try {
|
---|
10119 | const _this6 = this;
|
---|
10120 |
|
---|
10121 | if (style.$$reduce === false) return Promise.resolve();
|
---|
10122 | const name = style.$$name ? style.$$name.replace(/^\//, '') : 'inline CSS';
|
---|
10123 | const options = _this6.options; // const document = style.ownerDocument;
|
---|
10124 |
|
---|
10125 | const head = document.querySelector('head');
|
---|
10126 | let keyframesMode = options.keyframes || 'critical'; // we also accept a boolean value for options.keyframes
|
---|
10127 |
|
---|
10128 | if (keyframesMode === true) keyframesMode = 'all';
|
---|
10129 | if (keyframesMode === false) keyframesMode = 'none';
|
---|
10130 | let sheet = style.textContent; // store a reference to the previous serialized stylesheet for reporting stats
|
---|
10131 |
|
---|
10132 | const before = sheet; // Skip empty stylesheets
|
---|
10133 |
|
---|
10134 | if (!sheet) return Promise.resolve();
|
---|
10135 | const ast = parseStylesheet(sheet);
|
---|
10136 | const astInverse = options.pruneSource ? parseStylesheet(sheet) : null; // a string to search for font names (very loose)
|
---|
10137 |
|
---|
10138 | let criticalFonts = '';
|
---|
10139 | const failedSelectors = [];
|
---|
10140 | const criticalKeyframeNames = []; // Walk all CSS rules, marking unused rules with `.$$remove=true` for removal in the second pass.
|
---|
10141 | // This first pass is also used to collect font and keyframe usage used in the second pass.
|
---|
10142 |
|
---|
10143 | walkStyleRules(ast, markOnly(rule => {
|
---|
10144 | if (rule.type === 'rule') {
|
---|
10145 | // Filter the selector list down to only those match
|
---|
10146 | rule.filterSelectors(sel => {
|
---|
10147 | // Strip pseudo-elements and pseudo-classes, since we only care that their associated elements exist.
|
---|
10148 | // This means any selector for a pseudo-element or having a pseudo-class will be inlined if the rest of the selector matches.
|
---|
10149 | if (sel === ':root' || sel.match(/^::?(before|after)$/)) {
|
---|
10150 | return true;
|
---|
10151 | }
|
---|
10152 |
|
---|
10153 | sel = sel.replace(/(?<!\\)::?[a-z-]+(?![a-z-(])/gi, '').replace(/::?not\(\s*\)/g, '').trim();
|
---|
10154 | if (!sel) return false;
|
---|
10155 |
|
---|
10156 | try {
|
---|
10157 | return document.querySelector(sel) != null;
|
---|
10158 | } catch (e) {
|
---|
10159 | failedSelectors.push(sel + ' -> ' + e.message);
|
---|
10160 | return false;
|
---|
10161 | }
|
---|
10162 | }); // If there are no matched selectors, remove the rule:
|
---|
10163 |
|
---|
10164 | if (rule.selectors.length === 0) {
|
---|
10165 | return false;
|
---|
10166 | }
|
---|
10167 |
|
---|
10168 | if (rule.declarations) {
|
---|
10169 | for (let i = 0; i < rule.declarations.length; i++) {
|
---|
10170 | const decl = rule.declarations[i]; // detect used fonts
|
---|
10171 |
|
---|
10172 | if (decl.property && decl.property.match(/\bfont(-family)?\b/i)) {
|
---|
10173 | criticalFonts += ' ' + decl.value;
|
---|
10174 | } // detect used keyframes
|
---|
10175 |
|
---|
10176 |
|
---|
10177 | if (decl.property === 'animation' || decl.property === 'animation-name') {
|
---|
10178 | // @todo: parse animation declarations and extract only the name. for now we'll do a lazy match.
|
---|
10179 | const names = decl.value.split(/\s+/);
|
---|
10180 |
|
---|
10181 | for (let j = 0; j < names.length; j++) {
|
---|
10182 | const name = names[j].trim();
|
---|
10183 | if (name) criticalKeyframeNames.push(name);
|
---|
10184 | }
|
---|
10185 | }
|
---|
10186 | }
|
---|
10187 | }
|
---|
10188 | } // keep font rules, they're handled in the second pass:
|
---|
10189 |
|
---|
10190 |
|
---|
10191 | if (rule.type === 'font-face') return; // If there are no remaining rules, remove the whole rule:
|
---|
10192 |
|
---|
10193 | const rules = rule.rules && rule.rules.filter(rule => !rule.$$remove);
|
---|
10194 | return !rules || rules.length !== 0;
|
---|
10195 | }));
|
---|
10196 |
|
---|
10197 | if (failedSelectors.length !== 0) {
|
---|
10198 | _this6.logger.warn(`${failedSelectors.length} rules skipped due to selector errors:\n ${failedSelectors.join('\n ')}`);
|
---|
10199 | }
|
---|
10200 |
|
---|
10201 | const shouldPreloadFonts = options.fonts === true || options.preloadFonts === true;
|
---|
10202 | const shouldInlineFonts = options.fonts !== false && options.inlineFonts === true;
|
---|
10203 | const preloadedFonts = []; // Second pass, using data picked up from the first
|
---|
10204 |
|
---|
10205 | walkStyleRulesWithReverseMirror(ast, astInverse, rule => {
|
---|
10206 | // remove any rules marked in the first pass
|
---|
10207 | if (rule.$$remove === true) return false;
|
---|
10208 | applyMarkedSelectors(rule); // prune @keyframes rules
|
---|
10209 |
|
---|
10210 | if (rule.type === 'keyframes') {
|
---|
10211 | if (keyframesMode === 'none') return false;
|
---|
10212 | if (keyframesMode === 'all') return true;
|
---|
10213 | return criticalKeyframeNames.indexOf(rule.name) !== -1;
|
---|
10214 | } // prune @font-face rules
|
---|
10215 |
|
---|
10216 |
|
---|
10217 | if (rule.type === 'font-face') {
|
---|
10218 | let family, src;
|
---|
10219 |
|
---|
10220 | for (let i = 0; i < rule.declarations.length; i++) {
|
---|
10221 | const decl = rule.declarations[i];
|
---|
10222 |
|
---|
10223 | if (decl.property === 'src') {
|
---|
10224 | // @todo parse this properly and generate multiple preloads with type="font/woff2" etc
|
---|
10225 | src = (decl.value.match(/url\s*\(\s*(['"]?)(.+?)\1\s*\)/) || [])[2];
|
---|
10226 | } else if (decl.property === 'font-family') {
|
---|
10227 | family = decl.value;
|
---|
10228 | }
|
---|
10229 | }
|
---|
10230 |
|
---|
10231 | if (src && shouldPreloadFonts && preloadedFonts.indexOf(src) === -1) {
|
---|
10232 | preloadedFonts.push(src);
|
---|
10233 | const preload = document.createElement('link');
|
---|
10234 | preload.setAttribute('rel', 'preload');
|
---|
10235 | preload.setAttribute('as', 'font');
|
---|
10236 | preload.setAttribute('crossorigin', 'anonymous');
|
---|
10237 | preload.setAttribute('href', src.trim());
|
---|
10238 | head.appendChild(preload);
|
---|
10239 | } // if we're missing info, if the font is unused, or if critical font inlining is disabled, remove the rule:
|
---|
10240 |
|
---|
10241 |
|
---|
10242 | if (!family || !src || criticalFonts.indexOf(family) === -1 || !shouldInlineFonts) {
|
---|
10243 | return false;
|
---|
10244 | }
|
---|
10245 | }
|
---|
10246 | });
|
---|
10247 | sheet = serializeStylesheet(ast, {
|
---|
10248 | compress: _this6.options.compress !== false
|
---|
10249 | }).trim(); // If all rules were removed, get rid of the style element entirely
|
---|
10250 |
|
---|
10251 | if (sheet.trim().length === 0) {
|
---|
10252 | if (style.parentNode) {
|
---|
10253 | style.remove();
|
---|
10254 | }
|
---|
10255 |
|
---|
10256 | return Promise.resolve();
|
---|
10257 | }
|
---|
10258 |
|
---|
10259 | let afterText = '';
|
---|
10260 | let styleInlinedCompletely = false;
|
---|
10261 |
|
---|
10262 | if (options.pruneSource) {
|
---|
10263 | const sheetInverse = serializeStylesheet(astInverse, {
|
---|
10264 | compress: _this6.options.compress !== false
|
---|
10265 | });
|
---|
10266 | styleInlinedCompletely = _this6.pruneSource(style, before, sheetInverse);
|
---|
10267 |
|
---|
10268 | if (styleInlinedCompletely) {
|
---|
10269 | const percent = sheetInverse.length / before.length * 100;
|
---|
10270 | afterText = `, reducing non-inlined size ${percent | 0}% to ${prettyBytes(sheetInverse.length)}`;
|
---|
10271 | }
|
---|
10272 | } // replace the inline stylesheet with its critical'd counterpart
|
---|
10273 |
|
---|
10274 |
|
---|
10275 | if (!styleInlinedCompletely) {
|
---|
10276 | style.textContent = sheet;
|
---|
10277 | } // output stats
|
---|
10278 |
|
---|
10279 |
|
---|
10280 | const percent = sheet.length / before.length * 100 | 0;
|
---|
10281 |
|
---|
10282 | _this6.logger.info('\u001b[32mInlined ' + prettyBytes(sheet.length) + ' (' + percent + '% of original ' + prettyBytes(before.length) + ') of ' + name + afterText + '.\u001b[39m');
|
---|
10283 |
|
---|
10284 | return Promise.resolve();
|
---|
10285 | } catch (e) {
|
---|
10286 | return Promise.reject(e);
|
---|
10287 | }
|
---|
10288 | }
|
---|
10289 |
|
---|
10290 | }
|
---|
10291 |
|
---|
10292 | return Critters;
|
---|
10293 |
|
---|
10294 | })));
|
---|
10295 | //# sourceMappingURL=critters.umd.js.map
|
---|