speaker-calibration 2.2.206 → 2.2.207

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/.eslintignore +71 -71
  2. package/.eslintrc.json +40 -40
  3. package/.github/workflows/update-phrases.yml +37 -0
  4. package/.prettierignore +69 -69
  5. package/.prettierrc +14 -14
  6. package/LICENSE +20 -20
  7. package/README.md +133 -133
  8. package/__mocks__/fileMock.js +1 -1
  9. package/__mocks__/styleMock.js +1 -1
  10. package/babel.config.js +3 -3
  11. package/coverage/clover.xml +71 -71
  12. package/coverage/coverage-final.json +224 -224
  13. package/coverage/lcov-report/PythonServerInterface.js.html +265 -265
  14. package/coverage/lcov-report/base.css +354 -354
  15. package/coverage/lcov-report/block-navigation.js +82 -82
  16. package/coverage/lcov-report/favicon.png +0 -0
  17. package/coverage/lcov-report/index.html +123 -123
  18. package/coverage/lcov-report/prettify.css +101 -101
  19. package/coverage/lcov-report/prettify.js +937 -937
  20. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  21. package/coverage/lcov-report/sorter.js +189 -189
  22. package/coverage/lcov-report/src/index.html +121 -121
  23. package/coverage/lcov-report/src/server/PythonServerInterface.js.html +268 -268
  24. package/coverage/lcov-report/src/server/index.html +123 -123
  25. package/coverage/lcov-report/src/tasks/audioCalibrator.js.html +499 -499
  26. package/coverage/lcov-report/src/tasks/audioRecorder.js.html +412 -412
  27. package/coverage/lcov-report/src/tasks/index.html +143 -143
  28. package/coverage/lcov-report/src/tasks/volume/index.html +123 -123
  29. package/coverage/lcov-report/src/tasks/volume/volume.js.html +409 -409
  30. package/coverage/lcov-report/src/utils.js.html +172 -172
  31. package/coverage/lcov.info +91 -91
  32. package/dist/Procfile +0 -0
  33. package/dist/example/NoSleep.min.js +1 -1
  34. package/dist/example/credentials.json.gpg +0 -0
  35. package/dist/example/fetch-languages-sheets.js +77 -77
  36. package/dist/example/i18n.js +27366 -27366
  37. package/dist/example/index.html +47 -47
  38. package/dist/example/listener.html +79 -79
  39. package/dist/example/listener.js +152 -152
  40. package/dist/example/server.js +51 -51
  41. package/dist/example/speaker.html +145 -145
  42. package/dist/example/speakerUI.js +273 -273
  43. package/dist/example/styles.css +99 -99
  44. package/dist/main.js +17 -17
  45. package/dist/main.js.LICENSE.txt +0 -0
  46. package/dist/mlsGen.js +6814 -6814
  47. package/dist/mlsGen.wasm +0 -0
  48. package/dist/package-lock.json +1018 -1018
  49. package/dist/package.json +18 -18
  50. package/doc/AudioCalibrator.html +417 -417
  51. package/doc/AudioPeer.html +251 -251
  52. package/doc/AudioRecorder.html +195 -195
  53. package/doc/ImpulseResponse.html +215 -215
  54. package/doc/Listener.html +308 -308
  55. package/doc/MlsGenInterface.html +226 -226
  56. package/doc/MyEventEmitter.html +274 -274
  57. package/doc/PythonServerAPI.html +109 -109
  58. package/doc/Speaker-Calibration-UML-Diagram.png +0 -0
  59. package/doc/Speaker.html +276 -276
  60. package/doc/Takes%20a%20target%20element%20where%20html%20elements%20will%20be%20appended..html +128 -128
  61. package/doc/Takes%20the%20url%20of%20the%20current%20site%0Aand%20a%20target%20element%20where%20html%20elements%20will%20be%20appended..html +138 -138
  62. package/doc/Takes%20the%20url%20of%20the%20current%20site%20and%20a%20target%20element%20where%20html%20elements%20will%20be%20appended..html +137 -137
  63. package/doc/Volume.html +88 -88
  64. package/doc/audioCalibrator.js.html +179 -179
  65. package/doc/audioPeer.js.html +175 -175
  66. package/doc/audioRecorder.js.html +163 -163
  67. package/doc/creates%20a%20new%20AudioRecorder%20instance.%20%0ASets%20up%20the%20audio%20context%20and%20file%20reader..html +114 -114
  68. package/doc/fonts/OpenSans-Bold-webfont.eot +0 -0
  69. package/doc/fonts/OpenSans-Bold-webfont.svg +1829 -1829
  70. package/doc/fonts/OpenSans-Bold-webfont.woff +0 -0
  71. package/doc/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  72. package/doc/fonts/OpenSans-BoldItalic-webfont.svg +1829 -1829
  73. package/doc/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  74. package/doc/fonts/OpenSans-Italic-webfont.eot +0 -0
  75. package/doc/fonts/OpenSans-Italic-webfont.svg +1829 -1829
  76. package/doc/fonts/OpenSans-Italic-webfont.woff +0 -0
  77. package/doc/fonts/OpenSans-Light-webfont.eot +0 -0
  78. package/doc/fonts/OpenSans-Light-webfont.svg +1830 -1830
  79. package/doc/fonts/OpenSans-Light-webfont.woff +0 -0
  80. package/doc/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  81. package/doc/fonts/OpenSans-LightItalic-webfont.svg +1834 -1834
  82. package/doc/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  83. package/doc/fonts/OpenSans-Regular-webfont.eot +0 -0
  84. package/doc/fonts/OpenSans-Regular-webfont.svg +1830 -1830
  85. package/doc/fonts/OpenSans-Regular-webfont.woff +0 -0
  86. package/doc/global.html +308 -308
  87. package/doc/index.html +58 -58
  88. package/doc/listener.js.html +170 -170
  89. package/doc/mlsGen_mlsGenInterface.js.html +117 -117
  90. package/doc/myEventEmitter.js.html +124 -124
  91. package/doc/peer-connection_audioPeer.js.html +188 -188
  92. package/doc/peer-connection_listener.js.html +311 -311
  93. package/doc/peer-connection_speaker.js.html +381 -381
  94. package/doc/sc-activity-diagram.png +0 -0
  95. package/doc/scripts/linenumber.js +25 -25
  96. package/doc/scripts/prettify/Apache-License-2.0.txt +202 -202
  97. package/doc/scripts/prettify/lang-css.js +24 -24
  98. package/doc/scripts/prettify/prettify.js +640 -640
  99. package/doc/server_PythonServerAPI.js.html +160 -160
  100. package/doc/speaker.js.html +248 -248
  101. package/doc/styles/jsdoc-default.css +371 -371
  102. package/doc/styles/prettify-jsdoc.css +111 -111
  103. package/doc/styles/prettify-tomorrow.css +163 -163
  104. package/doc/tasks_audioCalibrator.js.html +207 -207
  105. package/doc/tasks_audioRecorder.js.html +190 -190
  106. package/doc/tasks_impulse-response_impulseResponse.js.html +442 -442
  107. package/doc/tasks_impulse-response_mlsGen_mlsGenInterface.js.html +175 -175
  108. package/doc/tasks_volume_volume.js.html +185 -185
  109. package/doc/utils.js.html +105 -105
  110. package/jest.config.js +173 -173
  111. package/makefile +74 -0
  112. package/netlify.toml +26 -26
  113. package/package.json +73 -73
  114. package/src/config/firebase.js +26 -26
  115. package/src/index.html +21 -21
  116. package/src/main.js +23 -23
  117. package/src/myEventEmitter.js +83 -83
  118. package/src/peer-connection/audioPeer.js +178 -178
  119. package/src/peer-connection/listener.js +362 -360
  120. package/src/peer-connection/peerErrors.js +25 -25
  121. package/src/peer-connection/speaker.js +736 -736
  122. package/src/powerCheck.js +98 -98
  123. package/src/server/PythonServerAPI.js +869 -869
  124. package/src/tasks/audioCalibrator.js +336 -336
  125. package/src/tasks/audioRecorder.js +315 -315
  126. package/src/tasks/combination/combination.js +3008 -3008
  127. package/src/tasks/combination/mlsGen/mlsGen.cpp +98 -98
  128. package/src/tasks/combination/mlsGen/mlsGen.hpp +303 -303
  129. package/src/tasks/combination/mlsGen/mlsGenInterface.js +131 -131
  130. package/src/tasks/combination/mlsGen/mlsGenTest.cpp +180 -180
  131. package/src/tasks/impulse-response/impulseResponse.js +610 -610
  132. package/src/tasks/impulse-response/mlsGen/mlsGen.cpp +98 -98
  133. package/src/tasks/impulse-response/mlsGen/mlsGen.hpp +303 -303
  134. package/src/tasks/impulse-response/mlsGen/mlsGenInterface.js +131 -131
  135. package/src/tasks/impulse-response/mlsGen/mlsGenTest.cpp +180 -180
  136. package/src/tasks/volume/volume.cpp +2 -2
  137. package/src/tasks/volume/volume.hpp +22 -22
  138. package/src/tasks/volume/volume.js +279 -279
  139. package/src/utils.js +205 -205
  140. package/webpack.config.js +37 -37
  141. package/.gitignore +0 -81
@@ -1,937 +1,937 @@
1
- /* eslint-disable */
2
- window.PR_SHOULD_USE_CONTINUATION = true;
3
- (function () {
4
- var h = ['break,continue,do,else,for,if,return,while'];
5
- var u = [
6
- h,
7
- 'auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile',
8
- ];
9
- var p = [
10
- u,
11
- 'catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof',
12
- ];
13
- var l = [
14
- p,
15
- 'alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where',
16
- ];
17
- var x = [
18
- p,
19
- 'abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient',
20
- ];
21
- var R = [
22
- x,
23
- 'as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var',
24
- ];
25
- var r =
26
- 'all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes';
27
- var w = [p, 'debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN'];
28
- var s =
29
- 'caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END';
30
- var I = [
31
- h,
32
- 'and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None',
33
- ];
34
- var f = [
35
- h,
36
- 'alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END',
37
- ];
38
- var H = [h, 'case,done,elif,esac,eval,fi,function,in,local,set,then,until'];
39
- var A = [l, R, w, s + I, f, H];
40
- var e =
41
- /^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;
42
- var C = 'str';
43
- var z = 'kwd';
44
- var j = 'com';
45
- var O = 'typ';
46
- var G = 'lit';
47
- var L = 'pun';
48
- var F = 'pln';
49
- var m = 'tag';
50
- var E = 'dec';
51
- var J = 'src';
52
- var P = 'atn';
53
- var n = 'atv';
54
- var N = 'nocode';
55
- var M =
56
- '(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*';
57
- function k(Z) {
58
- var ad = 0;
59
- var S = false;
60
- var ac = false;
61
- for (var V = 0, U = Z.length; V < U; ++V) {
62
- var ae = Z[V];
63
- if (ae.ignoreCase) {
64
- ac = true;
65
- } else {
66
- if (/[a-z]/i.test(ae.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi, ''))) {
67
- S = true;
68
- ac = false;
69
- break;
70
- }
71
- }
72
- }
73
- var Y = {b: 8, t: 9, n: 10, v: 11, f: 12, r: 13};
74
- function ab(ah) {
75
- var ag = ah.charCodeAt(0);
76
- if (ag !== 92) {
77
- return ag;
78
- }
79
- var af = ah.charAt(1);
80
- ag = Y[af];
81
- if (ag) {
82
- return ag;
83
- } else {
84
- if ('0' <= af && af <= '7') {
85
- return parseInt(ah.substring(1), 8);
86
- } else {
87
- if (af === 'u' || af === 'x') {
88
- return parseInt(ah.substring(2), 16);
89
- } else {
90
- return ah.charCodeAt(1);
91
- }
92
- }
93
- }
94
- }
95
- function T(af) {
96
- if (af < 32) {
97
- return (af < 16 ? '\\x0' : '\\x') + af.toString(16);
98
- }
99
- var ag = String.fromCharCode(af);
100
- if (ag === '\\' || ag === '-' || ag === '[' || ag === ']') {
101
- ag = '\\' + ag;
102
- }
103
- return ag;
104
- }
105
- function X(am) {
106
- var aq = am
107
- .substring(1, am.length - 1)
108
- .match(
109
- new RegExp(
110
- '\\\\u[0-9A-Fa-f]{4}|\\\\x[0-9A-Fa-f]{2}|\\\\[0-3][0-7]{0,2}|\\\\[0-7]{1,2}|\\\\[\\s\\S]|-|[^-\\\\]',
111
- 'g'
112
- )
113
- );
114
- var ak = [];
115
- var af = [];
116
- var ao = aq[0] === '^';
117
- for (var ar = ao ? 1 : 0, aj = aq.length; ar < aj; ++ar) {
118
- var ah = aq[ar];
119
- if (/\\[bdsw]/i.test(ah)) {
120
- ak.push(ah);
121
- } else {
122
- var ag = ab(ah);
123
- var al;
124
- if (ar + 2 < aj && '-' === aq[ar + 1]) {
125
- al = ab(aq[ar + 2]);
126
- ar += 2;
127
- } else {
128
- al = ag;
129
- }
130
- af.push([ag, al]);
131
- if (!(al < 65 || ag > 122)) {
132
- if (!(al < 65 || ag > 90)) {
133
- af.push([Math.max(65, ag) | 32, Math.min(al, 90) | 32]);
134
- }
135
- if (!(al < 97 || ag > 122)) {
136
- af.push([Math.max(97, ag) & ~32, Math.min(al, 122) & ~32]);
137
- }
138
- }
139
- }
140
- }
141
- af.sort(function (av, au) {
142
- return av[0] - au[0] || au[1] - av[1];
143
- });
144
- var ai = [];
145
- var ap = [NaN, NaN];
146
- for (var ar = 0; ar < af.length; ++ar) {
147
- var at = af[ar];
148
- if (at[0] <= ap[1] + 1) {
149
- ap[1] = Math.max(ap[1], at[1]);
150
- } else {
151
- ai.push((ap = at));
152
- }
153
- }
154
- var an = ['['];
155
- if (ao) {
156
- an.push('^');
157
- }
158
- an.push.apply(an, ak);
159
- for (var ar = 0; ar < ai.length; ++ar) {
160
- var at = ai[ar];
161
- an.push(T(at[0]));
162
- if (at[1] > at[0]) {
163
- if (at[1] + 1 > at[0]) {
164
- an.push('-');
165
- }
166
- an.push(T(at[1]));
167
- }
168
- }
169
- an.push(']');
170
- return an.join('');
171
- }
172
- function W(al) {
173
- var aj = al.source.match(
174
- new RegExp(
175
- '(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)',
176
- 'g'
177
- )
178
- );
179
- var ah = aj.length;
180
- var an = [];
181
- for (var ak = 0, am = 0; ak < ah; ++ak) {
182
- var ag = aj[ak];
183
- if (ag === '(') {
184
- ++am;
185
- } else {
186
- if ('\\' === ag.charAt(0)) {
187
- var af = +ag.substring(1);
188
- if (af && af <= am) {
189
- an[af] = -1;
190
- }
191
- }
192
- }
193
- }
194
- for (var ak = 1; ak < an.length; ++ak) {
195
- if (-1 === an[ak]) {
196
- an[ak] = ++ad;
197
- }
198
- }
199
- for (var ak = 0, am = 0; ak < ah; ++ak) {
200
- var ag = aj[ak];
201
- if (ag === '(') {
202
- ++am;
203
- if (an[am] === undefined) {
204
- aj[ak] = '(?:';
205
- }
206
- } else {
207
- if ('\\' === ag.charAt(0)) {
208
- var af = +ag.substring(1);
209
- if (af && af <= am) {
210
- aj[ak] = '\\' + an[am];
211
- }
212
- }
213
- }
214
- }
215
- for (var ak = 0, am = 0; ak < ah; ++ak) {
216
- if ('^' === aj[ak] && '^' !== aj[ak + 1]) {
217
- aj[ak] = '';
218
- }
219
- }
220
- if (al.ignoreCase && S) {
221
- for (var ak = 0; ak < ah; ++ak) {
222
- var ag = aj[ak];
223
- var ai = ag.charAt(0);
224
- if (ag.length >= 2 && ai === '[') {
225
- aj[ak] = X(ag);
226
- } else {
227
- if (ai !== '\\') {
228
- aj[ak] = ag.replace(/[a-zA-Z]/g, function (ao) {
229
- var ap = ao.charCodeAt(0);
230
- return '[' + String.fromCharCode(ap & ~32, ap | 32) + ']';
231
- });
232
- }
233
- }
234
- }
235
- }
236
- return aj.join('');
237
- }
238
- var aa = [];
239
- for (var V = 0, U = Z.length; V < U; ++V) {
240
- var ae = Z[V];
241
- if (ae.global || ae.multiline) {
242
- throw new Error('' + ae);
243
- }
244
- aa.push('(?:' + W(ae) + ')');
245
- }
246
- return new RegExp(aa.join('|'), ac ? 'gi' : 'g');
247
- }
248
- function a(V) {
249
- var U = /(?:^|\s)nocode(?:\s|$)/;
250
- var X = [];
251
- var T = 0;
252
- var Z = [];
253
- var W = 0;
254
- var S;
255
- if (V.currentStyle) {
256
- S = V.currentStyle.whiteSpace;
257
- } else {
258
- if (window.getComputedStyle) {
259
- S = document.defaultView.getComputedStyle(V, null).getPropertyValue('white-space');
260
- }
261
- }
262
- var Y = S && 'pre' === S.substring(0, 3);
263
- function aa(ab) {
264
- switch (ab.nodeType) {
265
- case 1:
266
- if (U.test(ab.className)) {
267
- return;
268
- }
269
- for (var ae = ab.firstChild; ae; ae = ae.nextSibling) {
270
- aa(ae);
271
- }
272
- var ad = ab.nodeName;
273
- if ('BR' === ad || 'LI' === ad) {
274
- X[W] = '\n';
275
- Z[W << 1] = T++;
276
- Z[(W++ << 1) | 1] = ab;
277
- }
278
- break;
279
- case 3:
280
- case 4:
281
- var ac = ab.nodeValue;
282
- if (ac.length) {
283
- if (!Y) {
284
- ac = ac.replace(/[ \t\r\n]+/g, ' ');
285
- } else {
286
- ac = ac.replace(/\r\n?/g, '\n');
287
- }
288
- X[W] = ac;
289
- Z[W << 1] = T;
290
- T += ac.length;
291
- Z[(W++ << 1) | 1] = ab;
292
- }
293
- break;
294
- }
295
- }
296
- aa(V);
297
- return {sourceCode: X.join('').replace(/\n$/, ''), spans: Z};
298
- }
299
- function B(S, U, W, T) {
300
- if (!U) {
301
- return;
302
- }
303
- var V = {sourceCode: U, basePos: S};
304
- W(V);
305
- T.push.apply(T, V.decorations);
306
- }
307
- var v = /\S/;
308
- function o(S) {
309
- var V = undefined;
310
- for (var U = S.firstChild; U; U = U.nextSibling) {
311
- var T = U.nodeType;
312
- V = T === 1 ? (V ? S : U) : T === 3 ? (v.test(U.nodeValue) ? S : V) : V;
313
- }
314
- return V === S ? undefined : V;
315
- }
316
- function g(U, T) {
317
- var S = {};
318
- var V;
319
- (function () {
320
- var ad = U.concat(T);
321
- var ah = [];
322
- var ag = {};
323
- for (var ab = 0, Z = ad.length; ab < Z; ++ab) {
324
- var Y = ad[ab];
325
- var ac = Y[3];
326
- if (ac) {
327
- for (var ae = ac.length; --ae >= 0; ) {
328
- S[ac.charAt(ae)] = Y;
329
- }
330
- }
331
- var af = Y[1];
332
- var aa = '' + af;
333
- if (!ag.hasOwnProperty(aa)) {
334
- ah.push(af);
335
- ag[aa] = null;
336
- }
337
- }
338
- ah.push(/[\0-\uffff]/);
339
- V = k(ah);
340
- })();
341
- var X = T.length;
342
- var W = function (ah) {
343
- var Z = ah.sourceCode,
344
- Y = ah.basePos;
345
- var ad = [Y, F];
346
- var af = 0;
347
- var an = Z.match(V) || [];
348
- var aj = {};
349
- for (var ae = 0, aq = an.length; ae < aq; ++ae) {
350
- var ag = an[ae];
351
- var ap = aj[ag];
352
- var ai = void 0;
353
- var am;
354
- if (typeof ap === 'string') {
355
- am = false;
356
- } else {
357
- var aa = S[ag.charAt(0)];
358
- if (aa) {
359
- ai = ag.match(aa[1]);
360
- ap = aa[0];
361
- } else {
362
- for (var ao = 0; ao < X; ++ao) {
363
- aa = T[ao];
364
- ai = ag.match(aa[1]);
365
- if (ai) {
366
- ap = aa[0];
367
- break;
368
- }
369
- }
370
- if (!ai) {
371
- ap = F;
372
- }
373
- }
374
- am = ap.length >= 5 && 'lang-' === ap.substring(0, 5);
375
- if (am && !(ai && typeof ai[1] === 'string')) {
376
- am = false;
377
- ap = J;
378
- }
379
- if (!am) {
380
- aj[ag] = ap;
381
- }
382
- }
383
- var ab = af;
384
- af += ag.length;
385
- if (!am) {
386
- ad.push(Y + ab, ap);
387
- } else {
388
- var al = ai[1];
389
- var ak = ag.indexOf(al);
390
- var ac = ak + al.length;
391
- if (ai[2]) {
392
- ac = ag.length - ai[2].length;
393
- ak = ac - al.length;
394
- }
395
- var ar = ap.substring(5);
396
- B(Y + ab, ag.substring(0, ak), W, ad);
397
- B(Y + ab + ak, al, q(ar, al), ad);
398
- B(Y + ab + ac, ag.substring(ac), W, ad);
399
- }
400
- }
401
- ah.decorations = ad;
402
- };
403
- return W;
404
- }
405
- function i(T) {
406
- var W = [],
407
- S = [];
408
- if (T.tripleQuotedStrings) {
409
- W.push([
410
- C,
411
- /^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,
412
- null,
413
- '\'"',
414
- ]);
415
- } else {
416
- if (T.multiLineStrings) {
417
- W.push([
418
- C,
419
- /^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,
420
- null,
421
- '\'"`',
422
- ]);
423
- } else {
424
- W.push([
425
- C,
426
- /^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,
427
- null,
428
- '"\'',
429
- ]);
430
- }
431
- }
432
- if (T.verbatimStrings) {
433
- S.push([C, /^@\"(?:[^\"]|\"\")*(?:\"|$)/, null]);
434
- }
435
- var Y = T.hashComments;
436
- if (Y) {
437
- if (T.cStyleComments) {
438
- if (Y > 1) {
439
- W.push([j, /^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/, null, '#']);
440
- } else {
441
- W.push([
442
- j,
443
- /^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,
444
- null,
445
- '#',
446
- ]);
447
- }
448
- S.push([C, /^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/, null]);
449
- } else {
450
- W.push([j, /^#[^\r\n]*/, null, '#']);
451
- }
452
- }
453
- if (T.cStyleComments) {
454
- S.push([j, /^\/\/[^\r\n]*/, null]);
455
- S.push([j, /^\/\*[\s\S]*?(?:\*\/|$)/, null]);
456
- }
457
- if (T.regexLiterals) {
458
- var X =
459
- '/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/';
460
- S.push(['lang-regex', new RegExp('^' + M + '(' + X + ')')]);
461
- }
462
- var V = T.types;
463
- if (V) {
464
- S.push([O, V]);
465
- }
466
- var U = ('' + T.keywords).replace(/^ | $/g, '');
467
- if (U.length) {
468
- S.push([z, new RegExp('^(?:' + U.replace(/[\s,]+/g, '|') + ')\\b'), null]);
469
- }
470
- W.push([F, /^\s+/, null, ' \r\n\t\xA0']);
471
- S.push(
472
- [G, /^@[a-z_$][a-z_$@0-9]*/i, null],
473
- [O, /^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/, null],
474
- [F, /^[a-z_$][a-z_$@0-9]*/i, null],
475
- [
476
- G,
477
- new RegExp(
478
- '^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*',
479
- 'i'
480
- ),
481
- null,
482
- '0123456789',
483
- ],
484
- [F, /^\\[\s\S]?/, null],
485
- [L, /^.[^\s\w\.$@\'\"\`\/\#\\]*/, null]
486
- );
487
- return g(W, S);
488
- }
489
- var K = i({
490
- keywords: A,
491
- hashComments: true,
492
- cStyleComments: true,
493
- multiLineStrings: true,
494
- regexLiterals: true,
495
- });
496
- function Q(V, ag) {
497
- var U = /(?:^|\s)nocode(?:\s|$)/;
498
- var ab = /\r\n?|\n/;
499
- var ac = V.ownerDocument;
500
- var S;
501
- if (V.currentStyle) {
502
- S = V.currentStyle.whiteSpace;
503
- } else {
504
- if (window.getComputedStyle) {
505
- S = ac.defaultView.getComputedStyle(V, null).getPropertyValue('white-space');
506
- }
507
- }
508
- var Z = S && 'pre' === S.substring(0, 3);
509
- var af = ac.createElement('LI');
510
- while (V.firstChild) {
511
- af.appendChild(V.firstChild);
512
- }
513
- var W = [af];
514
- function ae(al) {
515
- switch (al.nodeType) {
516
- case 1:
517
- if (U.test(al.className)) {
518
- break;
519
- }
520
- if ('BR' === al.nodeName) {
521
- ad(al);
522
- if (al.parentNode) {
523
- al.parentNode.removeChild(al);
524
- }
525
- } else {
526
- for (var an = al.firstChild; an; an = an.nextSibling) {
527
- ae(an);
528
- }
529
- }
530
- break;
531
- case 3:
532
- case 4:
533
- if (Z) {
534
- var am = al.nodeValue;
535
- var aj = am.match(ab);
536
- if (aj) {
537
- var ai = am.substring(0, aj.index);
538
- al.nodeValue = ai;
539
- var ah = am.substring(aj.index + aj[0].length);
540
- if (ah) {
541
- var ak = al.parentNode;
542
- ak.insertBefore(ac.createTextNode(ah), al.nextSibling);
543
- }
544
- ad(al);
545
- if (!ai) {
546
- al.parentNode.removeChild(al);
547
- }
548
- }
549
- }
550
- break;
551
- }
552
- }
553
- function ad(ak) {
554
- while (!ak.nextSibling) {
555
- ak = ak.parentNode;
556
- if (!ak) {
557
- return;
558
- }
559
- }
560
- function ai(al, ar) {
561
- var aq = ar ? al.cloneNode(false) : al;
562
- var ao = al.parentNode;
563
- if (ao) {
564
- var ap = ai(ao, 1);
565
- var an = al.nextSibling;
566
- ap.appendChild(aq);
567
- for (var am = an; am; am = an) {
568
- an = am.nextSibling;
569
- ap.appendChild(am);
570
- }
571
- }
572
- return aq;
573
- }
574
- var ah = ai(ak.nextSibling, 0);
575
- for (var aj; (aj = ah.parentNode) && aj.nodeType === 1; ) {
576
- ah = aj;
577
- }
578
- W.push(ah);
579
- }
580
- for (var Y = 0; Y < W.length; ++Y) {
581
- ae(W[Y]);
582
- }
583
- if (ag === (ag | 0)) {
584
- W[0].setAttribute('value', ag);
585
- }
586
- var aa = ac.createElement('OL');
587
- aa.className = 'linenums';
588
- var X = Math.max(0, (ag - 1) | 0) || 0;
589
- for (var Y = 0, T = W.length; Y < T; ++Y) {
590
- af = W[Y];
591
- af.className = 'L' + ((Y + X) % 10);
592
- if (!af.firstChild) {
593
- af.appendChild(ac.createTextNode('\xA0'));
594
- }
595
- aa.appendChild(af);
596
- }
597
- V.appendChild(aa);
598
- }
599
- function D(ac) {
600
- var aj = /\bMSIE\b/.test(navigator.userAgent);
601
- var am = /\n/g;
602
- var al = ac.sourceCode;
603
- var an = al.length;
604
- var V = 0;
605
- var aa = ac.spans;
606
- var T = aa.length;
607
- var ah = 0;
608
- var X = ac.decorations;
609
- var Y = X.length;
610
- var Z = 0;
611
- X[Y] = an;
612
- var ar, aq;
613
- for (aq = ar = 0; aq < Y; ) {
614
- if (X[aq] !== X[aq + 2]) {
615
- X[ar++] = X[aq++];
616
- X[ar++] = X[aq++];
617
- } else {
618
- aq += 2;
619
- }
620
- }
621
- Y = ar;
622
- for (aq = ar = 0; aq < Y; ) {
623
- var at = X[aq];
624
- var ab = X[aq + 1];
625
- var W = aq + 2;
626
- while (W + 2 <= Y && X[W + 1] === ab) {
627
- W += 2;
628
- }
629
- X[ar++] = at;
630
- X[ar++] = ab;
631
- aq = W;
632
- }
633
- Y = X.length = ar;
634
- var ae = null;
635
- while (ah < T) {
636
- var af = aa[ah];
637
- var S = aa[ah + 2] || an;
638
- var ag = X[Z];
639
- var ap = X[Z + 2] || an;
640
- var W = Math.min(S, ap);
641
- var ak = aa[ah + 1];
642
- var U;
643
- if (ak.nodeType !== 1 && (U = al.substring(V, W))) {
644
- if (aj) {
645
- U = U.replace(am, '\r');
646
- }
647
- ak.nodeValue = U;
648
- var ai = ak.ownerDocument;
649
- var ao = ai.createElement('SPAN');
650
- ao.className = X[Z + 1];
651
- var ad = ak.parentNode;
652
- ad.replaceChild(ao, ak);
653
- ao.appendChild(ak);
654
- if (V < S) {
655
- aa[ah + 1] = ak = ai.createTextNode(al.substring(W, S));
656
- ad.insertBefore(ak, ao.nextSibling);
657
- }
658
- }
659
- V = W;
660
- if (V >= S) {
661
- ah += 2;
662
- }
663
- if (V >= ap) {
664
- Z += 2;
665
- }
666
- }
667
- }
668
- var t = {};
669
- function c(U, V) {
670
- for (var S = V.length; --S >= 0; ) {
671
- var T = V[S];
672
- if (!t.hasOwnProperty(T)) {
673
- t[T] = U;
674
- } else {
675
- if (window.console) {
676
- console.warn('cannot override language handler %s', T);
677
- }
678
- }
679
- }
680
- }
681
- function q(T, S) {
682
- if (!(T && t.hasOwnProperty(T))) {
683
- T = /^\s*</.test(S) ? 'default-markup' : 'default-code';
684
- }
685
- return t[T];
686
- }
687
- c(K, ['default-code']);
688
- c(
689
- g(
690
- [],
691
- [
692
- [F, /^[^<?]+/],
693
- [E, /^<!\w[^>]*(?:>|$)/],
694
- [j, /^<\!--[\s\S]*?(?:-\->|$)/],
695
- ['lang-', /^<\?([\s\S]+?)(?:\?>|$)/],
696
- ['lang-', /^<%([\s\S]+?)(?:%>|$)/],
697
- [L, /^(?:<[%?]|[%?]>)/],
698
- ['lang-', /^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],
699
- ['lang-js', /^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],
700
- ['lang-css', /^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],
701
- ['lang-in.tag', /^(<\/?[a-z][^<>]*>)/i],
702
- ]
703
- ),
704
- ['default-markup', 'htm', 'html', 'mxml', 'xhtml', 'xml', 'xsl']
705
- );
706
- c(
707
- g(
708
- [
709
- [F, /^[\s]+/, null, ' \t\r\n'],
710
- [n, /^(?:\"[^\"]*\"?|\'[^\']*\'?)/, null, '"\''],
711
- ],
712
- [
713
- [m, /^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],
714
- [P, /^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],
715
- ['lang-uq.val', /^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],
716
- [L, /^[=<>\/]+/],
717
- ['lang-js', /^on\w+\s*=\s*\"([^\"]+)\"/i],
718
- ['lang-js', /^on\w+\s*=\s*\'([^\']+)\'/i],
719
- ['lang-js', /^on\w+\s*=\s*([^\"\'>\s]+)/i],
720
- ['lang-css', /^style\s*=\s*\"([^\"]+)\"/i],
721
- ['lang-css', /^style\s*=\s*\'([^\']+)\'/i],
722
- ['lang-css', /^style\s*=\s*([^\"\'>\s]+)/i],
723
- ]
724
- ),
725
- ['in.tag']
726
- );
727
- c(g([], [[n, /^[\s\S]+/]]), ['uq.val']);
728
- c(i({keywords: l, hashComments: true, cStyleComments: true, types: e}), [
729
- 'c',
730
- 'cc',
731
- 'cpp',
732
- 'cxx',
733
- 'cyc',
734
- 'm',
735
- ]);
736
- c(i({keywords: 'null,true,false'}), ['json']);
737
- c(i({keywords: R, hashComments: true, cStyleComments: true, verbatimStrings: true, types: e}), [
738
- 'cs',
739
- ]);
740
- c(i({keywords: x, cStyleComments: true}), ['java']);
741
- c(i({keywords: H, hashComments: true, multiLineStrings: true}), ['bsh', 'csh', 'sh']);
742
- c(i({keywords: I, hashComments: true, multiLineStrings: true, tripleQuotedStrings: true}), [
743
- 'cv',
744
- 'py',
745
- ]);
746
- c(i({keywords: s, hashComments: true, multiLineStrings: true, regexLiterals: true}), [
747
- 'perl',
748
- 'pl',
749
- 'pm',
750
- ]);
751
- c(i({keywords: f, hashComments: true, multiLineStrings: true, regexLiterals: true}), ['rb']);
752
- c(i({keywords: w, cStyleComments: true, regexLiterals: true}), ['js']);
753
- c(
754
- i({
755
- keywords: r,
756
- hashComments: 3,
757
- cStyleComments: true,
758
- multilineStrings: true,
759
- tripleQuotedStrings: true,
760
- regexLiterals: true,
761
- }),
762
- ['coffee']
763
- );
764
- c(g([], [[C, /^[\s\S]+/]]), ['regex']);
765
- function d(V) {
766
- var U = V.langExtension;
767
- try {
768
- var S = a(V.sourceNode);
769
- var T = S.sourceCode;
770
- V.sourceCode = T;
771
- V.spans = S.spans;
772
- V.basePos = 0;
773
- q(U, T)(V);
774
- D(V);
775
- } catch (W) {
776
- if ('console' in window) {
777
- console.log(W && W.stack ? W.stack : W);
778
- }
779
- }
780
- }
781
- function y(W, V, U) {
782
- var S = document.createElement('PRE');
783
- S.innerHTML = W;
784
- if (U) {
785
- Q(S, U);
786
- }
787
- var T = {langExtension: V, numberLines: U, sourceNode: S};
788
- d(T);
789
- return S.innerHTML;
790
- }
791
- function b(ad) {
792
- function Y(af) {
793
- return document.getElementsByTagName(af);
794
- }
795
- var ac = [Y('pre'), Y('code'), Y('xmp')];
796
- var T = [];
797
- for (var aa = 0; aa < ac.length; ++aa) {
798
- for (var Z = 0, V = ac[aa].length; Z < V; ++Z) {
799
- T.push(ac[aa][Z]);
800
- }
801
- }
802
- ac = null;
803
- var W = Date;
804
- if (!W.now) {
805
- W = {
806
- now: function () {
807
- return +new Date();
808
- },
809
- };
810
- }
811
- var X = 0;
812
- var S;
813
- var ab = /\blang(?:uage)?-([\w.]+)(?!\S)/;
814
- var ae = /\bprettyprint\b/;
815
- function U() {
816
- var ag = window.PR_SHOULD_USE_CONTINUATION ? W.now() + 250 : Infinity;
817
- for (; X < T.length && W.now() < ag; X++) {
818
- var aj = T[X];
819
- var ai = aj.className;
820
- if (ai.indexOf('prettyprint') >= 0) {
821
- var ah = ai.match(ab);
822
- var am;
823
- if (!ah && (am = o(aj)) && 'CODE' === am.tagName) {
824
- ah = am.className.match(ab);
825
- }
826
- if (ah) {
827
- ah = ah[1];
828
- }
829
- var al = false;
830
- for (var ak = aj.parentNode; ak; ak = ak.parentNode) {
831
- if (
832
- (ak.tagName === 'pre' || ak.tagName === 'code' || ak.tagName === 'xmp') &&
833
- ak.className &&
834
- ak.className.indexOf('prettyprint') >= 0
835
- ) {
836
- al = true;
837
- break;
838
- }
839
- }
840
- if (!al) {
841
- var af = aj.className.match(/\blinenums\b(?::(\d+))?/);
842
- af = af ? (af[1] && af[1].length ? +af[1] : true) : false;
843
- if (af) {
844
- Q(aj, af);
845
- }
846
- S = {langExtension: ah, sourceNode: aj, numberLines: af};
847
- d(S);
848
- }
849
- }
850
- }
851
- if (X < T.length) {
852
- setTimeout(U, 250);
853
- } else {
854
- if (ad) {
855
- ad();
856
- }
857
- }
858
- }
859
- U();
860
- }
861
- window.prettyPrintOne = y;
862
- window.prettyPrint = b;
863
- window.PR = {
864
- createSimpleLexer: g,
865
- registerLangHandler: c,
866
- sourceDecorator: i,
867
- PR_ATTRIB_NAME: P,
868
- PR_ATTRIB_VALUE: n,
869
- PR_COMMENT: j,
870
- PR_DECLARATION: E,
871
- PR_KEYWORD: z,
872
- PR_LITERAL: G,
873
- PR_NOCODE: N,
874
- PR_PLAIN: F,
875
- PR_PUNCTUATION: L,
876
- PR_SOURCE: J,
877
- PR_STRING: C,
878
- PR_TAG: m,
879
- PR_TYPE: O,
880
- };
881
- })();
882
- PR.registerLangHandler(
883
- PR.createSimpleLexer(
884
- [],
885
- [
886
- [PR.PR_DECLARATION, /^<!\w[^>]*(?:>|$)/],
887
- [PR.PR_COMMENT, /^<\!--[\s\S]*?(?:-\->|$)/],
888
- [PR.PR_PUNCTUATION, /^(?:<[%?]|[%?]>)/],
889
- ['lang-', /^<\?([\s\S]+?)(?:\?>|$)/],
890
- ['lang-', /^<%([\s\S]+?)(?:%>|$)/],
891
- ['lang-', /^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],
892
- [
893
- 'lang-handlebars',
894
- /^<script\b[^>]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i,
895
- ],
896
- ['lang-js', /^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],
897
- ['lang-css', /^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],
898
- ['lang-in.tag', /^(<\/?[a-z][^<>]*>)/i],
899
- [PR.PR_DECLARATION, /^{{[#^>/]?\s*[\w.][^}]*}}/],
900
- [PR.PR_DECLARATION, /^{{&?\s*[\w.][^}]*}}/],
901
- [PR.PR_DECLARATION, /^{{{>?\s*[\w.][^}]*}}}/],
902
- [PR.PR_COMMENT, /^{{![^}]*}}/],
903
- ]
904
- ),
905
- ['handlebars', 'hbs']
906
- );
907
- PR.registerLangHandler(
908
- PR.createSimpleLexer(
909
- [[PR.PR_PLAIN, /^[ \t\r\n\f]+/, null, ' \t\r\n\f']],
910
- [
911
- [PR.PR_STRING, /^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/, null],
912
- [PR.PR_STRING, /^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/, null],
913
- ['lang-css-str', /^url\(([^\)\"\']*)\)/i],
914
- [
915
- PR.PR_KEYWORD,
916
- /^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,
917
- null,
918
- ],
919
- ['lang-css-kw', /^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],
920
- [PR.PR_COMMENT, /^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],
921
- [PR.PR_COMMENT, /^(?:<!--|-->)/],
922
- [PR.PR_LITERAL, /^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],
923
- [PR.PR_LITERAL, /^#(?:[0-9a-f]{3}){1,2}/i],
924
- [PR.PR_PLAIN, /^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],
925
- [PR.PR_PUNCTUATION, /^[^\s\w\'\"]+/],
926
- ]
927
- ),
928
- ['css']
929
- );
930
- PR.registerLangHandler(
931
- PR.createSimpleLexer(
932
- [],
933
- [[PR.PR_KEYWORD, /^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]
934
- ),
935
- ['css-kw']
936
- );
937
- PR.registerLangHandler(PR.createSimpleLexer([], [[PR.PR_STRING, /^[^\)\"\']+/]]), ['css-str']);
1
+ /* eslint-disable */
2
+ window.PR_SHOULD_USE_CONTINUATION = true;
3
+ (function () {
4
+ var h = ['break,continue,do,else,for,if,return,while'];
5
+ var u = [
6
+ h,
7
+ 'auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile',
8
+ ];
9
+ var p = [
10
+ u,
11
+ 'catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof',
12
+ ];
13
+ var l = [
14
+ p,
15
+ 'alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where',
16
+ ];
17
+ var x = [
18
+ p,
19
+ 'abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient',
20
+ ];
21
+ var R = [
22
+ x,
23
+ 'as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var',
24
+ ];
25
+ var r =
26
+ 'all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes';
27
+ var w = [p, 'debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN'];
28
+ var s =
29
+ 'caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END';
30
+ var I = [
31
+ h,
32
+ 'and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None',
33
+ ];
34
+ var f = [
35
+ h,
36
+ 'alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END',
37
+ ];
38
+ var H = [h, 'case,done,elif,esac,eval,fi,function,in,local,set,then,until'];
39
+ var A = [l, R, w, s + I, f, H];
40
+ var e =
41
+ /^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;
42
+ var C = 'str';
43
+ var z = 'kwd';
44
+ var j = 'com';
45
+ var O = 'typ';
46
+ var G = 'lit';
47
+ var L = 'pun';
48
+ var F = 'pln';
49
+ var m = 'tag';
50
+ var E = 'dec';
51
+ var J = 'src';
52
+ var P = 'atn';
53
+ var n = 'atv';
54
+ var N = 'nocode';
55
+ var M =
56
+ '(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*';
57
+ function k(Z) {
58
+ var ad = 0;
59
+ var S = false;
60
+ var ac = false;
61
+ for (var V = 0, U = Z.length; V < U; ++V) {
62
+ var ae = Z[V];
63
+ if (ae.ignoreCase) {
64
+ ac = true;
65
+ } else {
66
+ if (/[a-z]/i.test(ae.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi, ''))) {
67
+ S = true;
68
+ ac = false;
69
+ break;
70
+ }
71
+ }
72
+ }
73
+ var Y = {b: 8, t: 9, n: 10, v: 11, f: 12, r: 13};
74
+ function ab(ah) {
75
+ var ag = ah.charCodeAt(0);
76
+ if (ag !== 92) {
77
+ return ag;
78
+ }
79
+ var af = ah.charAt(1);
80
+ ag = Y[af];
81
+ if (ag) {
82
+ return ag;
83
+ } else {
84
+ if ('0' <= af && af <= '7') {
85
+ return parseInt(ah.substring(1), 8);
86
+ } else {
87
+ if (af === 'u' || af === 'x') {
88
+ return parseInt(ah.substring(2), 16);
89
+ } else {
90
+ return ah.charCodeAt(1);
91
+ }
92
+ }
93
+ }
94
+ }
95
+ function T(af) {
96
+ if (af < 32) {
97
+ return (af < 16 ? '\\x0' : '\\x') + af.toString(16);
98
+ }
99
+ var ag = String.fromCharCode(af);
100
+ if (ag === '\\' || ag === '-' || ag === '[' || ag === ']') {
101
+ ag = '\\' + ag;
102
+ }
103
+ return ag;
104
+ }
105
+ function X(am) {
106
+ var aq = am
107
+ .substring(1, am.length - 1)
108
+ .match(
109
+ new RegExp(
110
+ '\\\\u[0-9A-Fa-f]{4}|\\\\x[0-9A-Fa-f]{2}|\\\\[0-3][0-7]{0,2}|\\\\[0-7]{1,2}|\\\\[\\s\\S]|-|[^-\\\\]',
111
+ 'g'
112
+ )
113
+ );
114
+ var ak = [];
115
+ var af = [];
116
+ var ao = aq[0] === '^';
117
+ for (var ar = ao ? 1 : 0, aj = aq.length; ar < aj; ++ar) {
118
+ var ah = aq[ar];
119
+ if (/\\[bdsw]/i.test(ah)) {
120
+ ak.push(ah);
121
+ } else {
122
+ var ag = ab(ah);
123
+ var al;
124
+ if (ar + 2 < aj && '-' === aq[ar + 1]) {
125
+ al = ab(aq[ar + 2]);
126
+ ar += 2;
127
+ } else {
128
+ al = ag;
129
+ }
130
+ af.push([ag, al]);
131
+ if (!(al < 65 || ag > 122)) {
132
+ if (!(al < 65 || ag > 90)) {
133
+ af.push([Math.max(65, ag) | 32, Math.min(al, 90) | 32]);
134
+ }
135
+ if (!(al < 97 || ag > 122)) {
136
+ af.push([Math.max(97, ag) & ~32, Math.min(al, 122) & ~32]);
137
+ }
138
+ }
139
+ }
140
+ }
141
+ af.sort(function (av, au) {
142
+ return av[0] - au[0] || au[1] - av[1];
143
+ });
144
+ var ai = [];
145
+ var ap = [NaN, NaN];
146
+ for (var ar = 0; ar < af.length; ++ar) {
147
+ var at = af[ar];
148
+ if (at[0] <= ap[1] + 1) {
149
+ ap[1] = Math.max(ap[1], at[1]);
150
+ } else {
151
+ ai.push((ap = at));
152
+ }
153
+ }
154
+ var an = ['['];
155
+ if (ao) {
156
+ an.push('^');
157
+ }
158
+ an.push.apply(an, ak);
159
+ for (var ar = 0; ar < ai.length; ++ar) {
160
+ var at = ai[ar];
161
+ an.push(T(at[0]));
162
+ if (at[1] > at[0]) {
163
+ if (at[1] + 1 > at[0]) {
164
+ an.push('-');
165
+ }
166
+ an.push(T(at[1]));
167
+ }
168
+ }
169
+ an.push(']');
170
+ return an.join('');
171
+ }
172
+ function W(al) {
173
+ var aj = al.source.match(
174
+ new RegExp(
175
+ '(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)',
176
+ 'g'
177
+ )
178
+ );
179
+ var ah = aj.length;
180
+ var an = [];
181
+ for (var ak = 0, am = 0; ak < ah; ++ak) {
182
+ var ag = aj[ak];
183
+ if (ag === '(') {
184
+ ++am;
185
+ } else {
186
+ if ('\\' === ag.charAt(0)) {
187
+ var af = +ag.substring(1);
188
+ if (af && af <= am) {
189
+ an[af] = -1;
190
+ }
191
+ }
192
+ }
193
+ }
194
+ for (var ak = 1; ak < an.length; ++ak) {
195
+ if (-1 === an[ak]) {
196
+ an[ak] = ++ad;
197
+ }
198
+ }
199
+ for (var ak = 0, am = 0; ak < ah; ++ak) {
200
+ var ag = aj[ak];
201
+ if (ag === '(') {
202
+ ++am;
203
+ if (an[am] === undefined) {
204
+ aj[ak] = '(?:';
205
+ }
206
+ } else {
207
+ if ('\\' === ag.charAt(0)) {
208
+ var af = +ag.substring(1);
209
+ if (af && af <= am) {
210
+ aj[ak] = '\\' + an[am];
211
+ }
212
+ }
213
+ }
214
+ }
215
+ for (var ak = 0, am = 0; ak < ah; ++ak) {
216
+ if ('^' === aj[ak] && '^' !== aj[ak + 1]) {
217
+ aj[ak] = '';
218
+ }
219
+ }
220
+ if (al.ignoreCase && S) {
221
+ for (var ak = 0; ak < ah; ++ak) {
222
+ var ag = aj[ak];
223
+ var ai = ag.charAt(0);
224
+ if (ag.length >= 2 && ai === '[') {
225
+ aj[ak] = X(ag);
226
+ } else {
227
+ if (ai !== '\\') {
228
+ aj[ak] = ag.replace(/[a-zA-Z]/g, function (ao) {
229
+ var ap = ao.charCodeAt(0);
230
+ return '[' + String.fromCharCode(ap & ~32, ap | 32) + ']';
231
+ });
232
+ }
233
+ }
234
+ }
235
+ }
236
+ return aj.join('');
237
+ }
238
+ var aa = [];
239
+ for (var V = 0, U = Z.length; V < U; ++V) {
240
+ var ae = Z[V];
241
+ if (ae.global || ae.multiline) {
242
+ throw new Error('' + ae);
243
+ }
244
+ aa.push('(?:' + W(ae) + ')');
245
+ }
246
+ return new RegExp(aa.join('|'), ac ? 'gi' : 'g');
247
+ }
248
+ function a(V) {
249
+ var U = /(?:^|\s)nocode(?:\s|$)/;
250
+ var X = [];
251
+ var T = 0;
252
+ var Z = [];
253
+ var W = 0;
254
+ var S;
255
+ if (V.currentStyle) {
256
+ S = V.currentStyle.whiteSpace;
257
+ } else {
258
+ if (window.getComputedStyle) {
259
+ S = document.defaultView.getComputedStyle(V, null).getPropertyValue('white-space');
260
+ }
261
+ }
262
+ var Y = S && 'pre' === S.substring(0, 3);
263
+ function aa(ab) {
264
+ switch (ab.nodeType) {
265
+ case 1:
266
+ if (U.test(ab.className)) {
267
+ return;
268
+ }
269
+ for (var ae = ab.firstChild; ae; ae = ae.nextSibling) {
270
+ aa(ae);
271
+ }
272
+ var ad = ab.nodeName;
273
+ if ('BR' === ad || 'LI' === ad) {
274
+ X[W] = '\n';
275
+ Z[W << 1] = T++;
276
+ Z[(W++ << 1) | 1] = ab;
277
+ }
278
+ break;
279
+ case 3:
280
+ case 4:
281
+ var ac = ab.nodeValue;
282
+ if (ac.length) {
283
+ if (!Y) {
284
+ ac = ac.replace(/[ \t\r\n]+/g, ' ');
285
+ } else {
286
+ ac = ac.replace(/\r\n?/g, '\n');
287
+ }
288
+ X[W] = ac;
289
+ Z[W << 1] = T;
290
+ T += ac.length;
291
+ Z[(W++ << 1) | 1] = ab;
292
+ }
293
+ break;
294
+ }
295
+ }
296
+ aa(V);
297
+ return {sourceCode: X.join('').replace(/\n$/, ''), spans: Z};
298
+ }
299
+ function B(S, U, W, T) {
300
+ if (!U) {
301
+ return;
302
+ }
303
+ var V = {sourceCode: U, basePos: S};
304
+ W(V);
305
+ T.push.apply(T, V.decorations);
306
+ }
307
+ var v = /\S/;
308
+ function o(S) {
309
+ var V = undefined;
310
+ for (var U = S.firstChild; U; U = U.nextSibling) {
311
+ var T = U.nodeType;
312
+ V = T === 1 ? (V ? S : U) : T === 3 ? (v.test(U.nodeValue) ? S : V) : V;
313
+ }
314
+ return V === S ? undefined : V;
315
+ }
316
+ function g(U, T) {
317
+ var S = {};
318
+ var V;
319
+ (function () {
320
+ var ad = U.concat(T);
321
+ var ah = [];
322
+ var ag = {};
323
+ for (var ab = 0, Z = ad.length; ab < Z; ++ab) {
324
+ var Y = ad[ab];
325
+ var ac = Y[3];
326
+ if (ac) {
327
+ for (var ae = ac.length; --ae >= 0; ) {
328
+ S[ac.charAt(ae)] = Y;
329
+ }
330
+ }
331
+ var af = Y[1];
332
+ var aa = '' + af;
333
+ if (!ag.hasOwnProperty(aa)) {
334
+ ah.push(af);
335
+ ag[aa] = null;
336
+ }
337
+ }
338
+ ah.push(/[\0-\uffff]/);
339
+ V = k(ah);
340
+ })();
341
+ var X = T.length;
342
+ var W = function (ah) {
343
+ var Z = ah.sourceCode,
344
+ Y = ah.basePos;
345
+ var ad = [Y, F];
346
+ var af = 0;
347
+ var an = Z.match(V) || [];
348
+ var aj = {};
349
+ for (var ae = 0, aq = an.length; ae < aq; ++ae) {
350
+ var ag = an[ae];
351
+ var ap = aj[ag];
352
+ var ai = void 0;
353
+ var am;
354
+ if (typeof ap === 'string') {
355
+ am = false;
356
+ } else {
357
+ var aa = S[ag.charAt(0)];
358
+ if (aa) {
359
+ ai = ag.match(aa[1]);
360
+ ap = aa[0];
361
+ } else {
362
+ for (var ao = 0; ao < X; ++ao) {
363
+ aa = T[ao];
364
+ ai = ag.match(aa[1]);
365
+ if (ai) {
366
+ ap = aa[0];
367
+ break;
368
+ }
369
+ }
370
+ if (!ai) {
371
+ ap = F;
372
+ }
373
+ }
374
+ am = ap.length >= 5 && 'lang-' === ap.substring(0, 5);
375
+ if (am && !(ai && typeof ai[1] === 'string')) {
376
+ am = false;
377
+ ap = J;
378
+ }
379
+ if (!am) {
380
+ aj[ag] = ap;
381
+ }
382
+ }
383
+ var ab = af;
384
+ af += ag.length;
385
+ if (!am) {
386
+ ad.push(Y + ab, ap);
387
+ } else {
388
+ var al = ai[1];
389
+ var ak = ag.indexOf(al);
390
+ var ac = ak + al.length;
391
+ if (ai[2]) {
392
+ ac = ag.length - ai[2].length;
393
+ ak = ac - al.length;
394
+ }
395
+ var ar = ap.substring(5);
396
+ B(Y + ab, ag.substring(0, ak), W, ad);
397
+ B(Y + ab + ak, al, q(ar, al), ad);
398
+ B(Y + ab + ac, ag.substring(ac), W, ad);
399
+ }
400
+ }
401
+ ah.decorations = ad;
402
+ };
403
+ return W;
404
+ }
405
+ function i(T) {
406
+ var W = [],
407
+ S = [];
408
+ if (T.tripleQuotedStrings) {
409
+ W.push([
410
+ C,
411
+ /^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,
412
+ null,
413
+ '\'"',
414
+ ]);
415
+ } else {
416
+ if (T.multiLineStrings) {
417
+ W.push([
418
+ C,
419
+ /^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,
420
+ null,
421
+ '\'"`',
422
+ ]);
423
+ } else {
424
+ W.push([
425
+ C,
426
+ /^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,
427
+ null,
428
+ '"\'',
429
+ ]);
430
+ }
431
+ }
432
+ if (T.verbatimStrings) {
433
+ S.push([C, /^@\"(?:[^\"]|\"\")*(?:\"|$)/, null]);
434
+ }
435
+ var Y = T.hashComments;
436
+ if (Y) {
437
+ if (T.cStyleComments) {
438
+ if (Y > 1) {
439
+ W.push([j, /^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/, null, '#']);
440
+ } else {
441
+ W.push([
442
+ j,
443
+ /^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,
444
+ null,
445
+ '#',
446
+ ]);
447
+ }
448
+ S.push([C, /^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/, null]);
449
+ } else {
450
+ W.push([j, /^#[^\r\n]*/, null, '#']);
451
+ }
452
+ }
453
+ if (T.cStyleComments) {
454
+ S.push([j, /^\/\/[^\r\n]*/, null]);
455
+ S.push([j, /^\/\*[\s\S]*?(?:\*\/|$)/, null]);
456
+ }
457
+ if (T.regexLiterals) {
458
+ var X =
459
+ '/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/';
460
+ S.push(['lang-regex', new RegExp('^' + M + '(' + X + ')')]);
461
+ }
462
+ var V = T.types;
463
+ if (V) {
464
+ S.push([O, V]);
465
+ }
466
+ var U = ('' + T.keywords).replace(/^ | $/g, '');
467
+ if (U.length) {
468
+ S.push([z, new RegExp('^(?:' + U.replace(/[\s,]+/g, '|') + ')\\b'), null]);
469
+ }
470
+ W.push([F, /^\s+/, null, ' \r\n\t\xA0']);
471
+ S.push(
472
+ [G, /^@[a-z_$][a-z_$@0-9]*/i, null],
473
+ [O, /^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/, null],
474
+ [F, /^[a-z_$][a-z_$@0-9]*/i, null],
475
+ [
476
+ G,
477
+ new RegExp(
478
+ '^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*',
479
+ 'i'
480
+ ),
481
+ null,
482
+ '0123456789',
483
+ ],
484
+ [F, /^\\[\s\S]?/, null],
485
+ [L, /^.[^\s\w\.$@\'\"\`\/\#\\]*/, null]
486
+ );
487
+ return g(W, S);
488
+ }
489
+ var K = i({
490
+ keywords: A,
491
+ hashComments: true,
492
+ cStyleComments: true,
493
+ multiLineStrings: true,
494
+ regexLiterals: true,
495
+ });
496
+ function Q(V, ag) {
497
+ var U = /(?:^|\s)nocode(?:\s|$)/;
498
+ var ab = /\r\n?|\n/;
499
+ var ac = V.ownerDocument;
500
+ var S;
501
+ if (V.currentStyle) {
502
+ S = V.currentStyle.whiteSpace;
503
+ } else {
504
+ if (window.getComputedStyle) {
505
+ S = ac.defaultView.getComputedStyle(V, null).getPropertyValue('white-space');
506
+ }
507
+ }
508
+ var Z = S && 'pre' === S.substring(0, 3);
509
+ var af = ac.createElement('LI');
510
+ while (V.firstChild) {
511
+ af.appendChild(V.firstChild);
512
+ }
513
+ var W = [af];
514
+ function ae(al) {
515
+ switch (al.nodeType) {
516
+ case 1:
517
+ if (U.test(al.className)) {
518
+ break;
519
+ }
520
+ if ('BR' === al.nodeName) {
521
+ ad(al);
522
+ if (al.parentNode) {
523
+ al.parentNode.removeChild(al);
524
+ }
525
+ } else {
526
+ for (var an = al.firstChild; an; an = an.nextSibling) {
527
+ ae(an);
528
+ }
529
+ }
530
+ break;
531
+ case 3:
532
+ case 4:
533
+ if (Z) {
534
+ var am = al.nodeValue;
535
+ var aj = am.match(ab);
536
+ if (aj) {
537
+ var ai = am.substring(0, aj.index);
538
+ al.nodeValue = ai;
539
+ var ah = am.substring(aj.index + aj[0].length);
540
+ if (ah) {
541
+ var ak = al.parentNode;
542
+ ak.insertBefore(ac.createTextNode(ah), al.nextSibling);
543
+ }
544
+ ad(al);
545
+ if (!ai) {
546
+ al.parentNode.removeChild(al);
547
+ }
548
+ }
549
+ }
550
+ break;
551
+ }
552
+ }
553
+ function ad(ak) {
554
+ while (!ak.nextSibling) {
555
+ ak = ak.parentNode;
556
+ if (!ak) {
557
+ return;
558
+ }
559
+ }
560
+ function ai(al, ar) {
561
+ var aq = ar ? al.cloneNode(false) : al;
562
+ var ao = al.parentNode;
563
+ if (ao) {
564
+ var ap = ai(ao, 1);
565
+ var an = al.nextSibling;
566
+ ap.appendChild(aq);
567
+ for (var am = an; am; am = an) {
568
+ an = am.nextSibling;
569
+ ap.appendChild(am);
570
+ }
571
+ }
572
+ return aq;
573
+ }
574
+ var ah = ai(ak.nextSibling, 0);
575
+ for (var aj; (aj = ah.parentNode) && aj.nodeType === 1; ) {
576
+ ah = aj;
577
+ }
578
+ W.push(ah);
579
+ }
580
+ for (var Y = 0; Y < W.length; ++Y) {
581
+ ae(W[Y]);
582
+ }
583
+ if (ag === (ag | 0)) {
584
+ W[0].setAttribute('value', ag);
585
+ }
586
+ var aa = ac.createElement('OL');
587
+ aa.className = 'linenums';
588
+ var X = Math.max(0, (ag - 1) | 0) || 0;
589
+ for (var Y = 0, T = W.length; Y < T; ++Y) {
590
+ af = W[Y];
591
+ af.className = 'L' + ((Y + X) % 10);
592
+ if (!af.firstChild) {
593
+ af.appendChild(ac.createTextNode('\xA0'));
594
+ }
595
+ aa.appendChild(af);
596
+ }
597
+ V.appendChild(aa);
598
+ }
599
+ function D(ac) {
600
+ var aj = /\bMSIE\b/.test(navigator.userAgent);
601
+ var am = /\n/g;
602
+ var al = ac.sourceCode;
603
+ var an = al.length;
604
+ var V = 0;
605
+ var aa = ac.spans;
606
+ var T = aa.length;
607
+ var ah = 0;
608
+ var X = ac.decorations;
609
+ var Y = X.length;
610
+ var Z = 0;
611
+ X[Y] = an;
612
+ var ar, aq;
613
+ for (aq = ar = 0; aq < Y; ) {
614
+ if (X[aq] !== X[aq + 2]) {
615
+ X[ar++] = X[aq++];
616
+ X[ar++] = X[aq++];
617
+ } else {
618
+ aq += 2;
619
+ }
620
+ }
621
+ Y = ar;
622
+ for (aq = ar = 0; aq < Y; ) {
623
+ var at = X[aq];
624
+ var ab = X[aq + 1];
625
+ var W = aq + 2;
626
+ while (W + 2 <= Y && X[W + 1] === ab) {
627
+ W += 2;
628
+ }
629
+ X[ar++] = at;
630
+ X[ar++] = ab;
631
+ aq = W;
632
+ }
633
+ Y = X.length = ar;
634
+ var ae = null;
635
+ while (ah < T) {
636
+ var af = aa[ah];
637
+ var S = aa[ah + 2] || an;
638
+ var ag = X[Z];
639
+ var ap = X[Z + 2] || an;
640
+ var W = Math.min(S, ap);
641
+ var ak = aa[ah + 1];
642
+ var U;
643
+ if (ak.nodeType !== 1 && (U = al.substring(V, W))) {
644
+ if (aj) {
645
+ U = U.replace(am, '\r');
646
+ }
647
+ ak.nodeValue = U;
648
+ var ai = ak.ownerDocument;
649
+ var ao = ai.createElement('SPAN');
650
+ ao.className = X[Z + 1];
651
+ var ad = ak.parentNode;
652
+ ad.replaceChild(ao, ak);
653
+ ao.appendChild(ak);
654
+ if (V < S) {
655
+ aa[ah + 1] = ak = ai.createTextNode(al.substring(W, S));
656
+ ad.insertBefore(ak, ao.nextSibling);
657
+ }
658
+ }
659
+ V = W;
660
+ if (V >= S) {
661
+ ah += 2;
662
+ }
663
+ if (V >= ap) {
664
+ Z += 2;
665
+ }
666
+ }
667
+ }
668
+ var t = {};
669
+ function c(U, V) {
670
+ for (var S = V.length; --S >= 0; ) {
671
+ var T = V[S];
672
+ if (!t.hasOwnProperty(T)) {
673
+ t[T] = U;
674
+ } else {
675
+ if (window.console) {
676
+ console.warn('cannot override language handler %s', T);
677
+ }
678
+ }
679
+ }
680
+ }
681
+ function q(T, S) {
682
+ if (!(T && t.hasOwnProperty(T))) {
683
+ T = /^\s*</.test(S) ? 'default-markup' : 'default-code';
684
+ }
685
+ return t[T];
686
+ }
687
+ c(K, ['default-code']);
688
+ c(
689
+ g(
690
+ [],
691
+ [
692
+ [F, /^[^<?]+/],
693
+ [E, /^<!\w[^>]*(?:>|$)/],
694
+ [j, /^<\!--[\s\S]*?(?:-\->|$)/],
695
+ ['lang-', /^<\?([\s\S]+?)(?:\?>|$)/],
696
+ ['lang-', /^<%([\s\S]+?)(?:%>|$)/],
697
+ [L, /^(?:<[%?]|[%?]>)/],
698
+ ['lang-', /^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],
699
+ ['lang-js', /^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],
700
+ ['lang-css', /^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],
701
+ ['lang-in.tag', /^(<\/?[a-z][^<>]*>)/i],
702
+ ]
703
+ ),
704
+ ['default-markup', 'htm', 'html', 'mxml', 'xhtml', 'xml', 'xsl']
705
+ );
706
+ c(
707
+ g(
708
+ [
709
+ [F, /^[\s]+/, null, ' \t\r\n'],
710
+ [n, /^(?:\"[^\"]*\"?|\'[^\']*\'?)/, null, '"\''],
711
+ ],
712
+ [
713
+ [m, /^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],
714
+ [P, /^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],
715
+ ['lang-uq.val', /^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],
716
+ [L, /^[=<>\/]+/],
717
+ ['lang-js', /^on\w+\s*=\s*\"([^\"]+)\"/i],
718
+ ['lang-js', /^on\w+\s*=\s*\'([^\']+)\'/i],
719
+ ['lang-js', /^on\w+\s*=\s*([^\"\'>\s]+)/i],
720
+ ['lang-css', /^style\s*=\s*\"([^\"]+)\"/i],
721
+ ['lang-css', /^style\s*=\s*\'([^\']+)\'/i],
722
+ ['lang-css', /^style\s*=\s*([^\"\'>\s]+)/i],
723
+ ]
724
+ ),
725
+ ['in.tag']
726
+ );
727
+ c(g([], [[n, /^[\s\S]+/]]), ['uq.val']);
728
+ c(i({keywords: l, hashComments: true, cStyleComments: true, types: e}), [
729
+ 'c',
730
+ 'cc',
731
+ 'cpp',
732
+ 'cxx',
733
+ 'cyc',
734
+ 'm',
735
+ ]);
736
+ c(i({keywords: 'null,true,false'}), ['json']);
737
+ c(i({keywords: R, hashComments: true, cStyleComments: true, verbatimStrings: true, types: e}), [
738
+ 'cs',
739
+ ]);
740
+ c(i({keywords: x, cStyleComments: true}), ['java']);
741
+ c(i({keywords: H, hashComments: true, multiLineStrings: true}), ['bsh', 'csh', 'sh']);
742
+ c(i({keywords: I, hashComments: true, multiLineStrings: true, tripleQuotedStrings: true}), [
743
+ 'cv',
744
+ 'py',
745
+ ]);
746
+ c(i({keywords: s, hashComments: true, multiLineStrings: true, regexLiterals: true}), [
747
+ 'perl',
748
+ 'pl',
749
+ 'pm',
750
+ ]);
751
+ c(i({keywords: f, hashComments: true, multiLineStrings: true, regexLiterals: true}), ['rb']);
752
+ c(i({keywords: w, cStyleComments: true, regexLiterals: true}), ['js']);
753
+ c(
754
+ i({
755
+ keywords: r,
756
+ hashComments: 3,
757
+ cStyleComments: true,
758
+ multilineStrings: true,
759
+ tripleQuotedStrings: true,
760
+ regexLiterals: true,
761
+ }),
762
+ ['coffee']
763
+ );
764
+ c(g([], [[C, /^[\s\S]+/]]), ['regex']);
765
+ function d(V) {
766
+ var U = V.langExtension;
767
+ try {
768
+ var S = a(V.sourceNode);
769
+ var T = S.sourceCode;
770
+ V.sourceCode = T;
771
+ V.spans = S.spans;
772
+ V.basePos = 0;
773
+ q(U, T)(V);
774
+ D(V);
775
+ } catch (W) {
776
+ if ('console' in window) {
777
+ console.log(W && W.stack ? W.stack : W);
778
+ }
779
+ }
780
+ }
781
+ function y(W, V, U) {
782
+ var S = document.createElement('PRE');
783
+ S.innerHTML = W;
784
+ if (U) {
785
+ Q(S, U);
786
+ }
787
+ var T = {langExtension: V, numberLines: U, sourceNode: S};
788
+ d(T);
789
+ return S.innerHTML;
790
+ }
791
+ function b(ad) {
792
+ function Y(af) {
793
+ return document.getElementsByTagName(af);
794
+ }
795
+ var ac = [Y('pre'), Y('code'), Y('xmp')];
796
+ var T = [];
797
+ for (var aa = 0; aa < ac.length; ++aa) {
798
+ for (var Z = 0, V = ac[aa].length; Z < V; ++Z) {
799
+ T.push(ac[aa][Z]);
800
+ }
801
+ }
802
+ ac = null;
803
+ var W = Date;
804
+ if (!W.now) {
805
+ W = {
806
+ now: function () {
807
+ return +new Date();
808
+ },
809
+ };
810
+ }
811
+ var X = 0;
812
+ var S;
813
+ var ab = /\blang(?:uage)?-([\w.]+)(?!\S)/;
814
+ var ae = /\bprettyprint\b/;
815
+ function U() {
816
+ var ag = window.PR_SHOULD_USE_CONTINUATION ? W.now() + 250 : Infinity;
817
+ for (; X < T.length && W.now() < ag; X++) {
818
+ var aj = T[X];
819
+ var ai = aj.className;
820
+ if (ai.indexOf('prettyprint') >= 0) {
821
+ var ah = ai.match(ab);
822
+ var am;
823
+ if (!ah && (am = o(aj)) && 'CODE' === am.tagName) {
824
+ ah = am.className.match(ab);
825
+ }
826
+ if (ah) {
827
+ ah = ah[1];
828
+ }
829
+ var al = false;
830
+ for (var ak = aj.parentNode; ak; ak = ak.parentNode) {
831
+ if (
832
+ (ak.tagName === 'pre' || ak.tagName === 'code' || ak.tagName === 'xmp') &&
833
+ ak.className &&
834
+ ak.className.indexOf('prettyprint') >= 0
835
+ ) {
836
+ al = true;
837
+ break;
838
+ }
839
+ }
840
+ if (!al) {
841
+ var af = aj.className.match(/\blinenums\b(?::(\d+))?/);
842
+ af = af ? (af[1] && af[1].length ? +af[1] : true) : false;
843
+ if (af) {
844
+ Q(aj, af);
845
+ }
846
+ S = {langExtension: ah, sourceNode: aj, numberLines: af};
847
+ d(S);
848
+ }
849
+ }
850
+ }
851
+ if (X < T.length) {
852
+ setTimeout(U, 250);
853
+ } else {
854
+ if (ad) {
855
+ ad();
856
+ }
857
+ }
858
+ }
859
+ U();
860
+ }
861
+ window.prettyPrintOne = y;
862
+ window.prettyPrint = b;
863
+ window.PR = {
864
+ createSimpleLexer: g,
865
+ registerLangHandler: c,
866
+ sourceDecorator: i,
867
+ PR_ATTRIB_NAME: P,
868
+ PR_ATTRIB_VALUE: n,
869
+ PR_COMMENT: j,
870
+ PR_DECLARATION: E,
871
+ PR_KEYWORD: z,
872
+ PR_LITERAL: G,
873
+ PR_NOCODE: N,
874
+ PR_PLAIN: F,
875
+ PR_PUNCTUATION: L,
876
+ PR_SOURCE: J,
877
+ PR_STRING: C,
878
+ PR_TAG: m,
879
+ PR_TYPE: O,
880
+ };
881
+ })();
882
+ PR.registerLangHandler(
883
+ PR.createSimpleLexer(
884
+ [],
885
+ [
886
+ [PR.PR_DECLARATION, /^<!\w[^>]*(?:>|$)/],
887
+ [PR.PR_COMMENT, /^<\!--[\s\S]*?(?:-\->|$)/],
888
+ [PR.PR_PUNCTUATION, /^(?:<[%?]|[%?]>)/],
889
+ ['lang-', /^<\?([\s\S]+?)(?:\?>|$)/],
890
+ ['lang-', /^<%([\s\S]+?)(?:%>|$)/],
891
+ ['lang-', /^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],
892
+ [
893
+ 'lang-handlebars',
894
+ /^<script\b[^>]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i,
895
+ ],
896
+ ['lang-js', /^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],
897
+ ['lang-css', /^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],
898
+ ['lang-in.tag', /^(<\/?[a-z][^<>]*>)/i],
899
+ [PR.PR_DECLARATION, /^{{[#^>/]?\s*[\w.][^}]*}}/],
900
+ [PR.PR_DECLARATION, /^{{&?\s*[\w.][^}]*}}/],
901
+ [PR.PR_DECLARATION, /^{{{>?\s*[\w.][^}]*}}}/],
902
+ [PR.PR_COMMENT, /^{{![^}]*}}/],
903
+ ]
904
+ ),
905
+ ['handlebars', 'hbs']
906
+ );
907
+ PR.registerLangHandler(
908
+ PR.createSimpleLexer(
909
+ [[PR.PR_PLAIN, /^[ \t\r\n\f]+/, null, ' \t\r\n\f']],
910
+ [
911
+ [PR.PR_STRING, /^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/, null],
912
+ [PR.PR_STRING, /^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/, null],
913
+ ['lang-css-str', /^url\(([^\)\"\']*)\)/i],
914
+ [
915
+ PR.PR_KEYWORD,
916
+ /^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,
917
+ null,
918
+ ],
919
+ ['lang-css-kw', /^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],
920
+ [PR.PR_COMMENT, /^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],
921
+ [PR.PR_COMMENT, /^(?:<!--|-->)/],
922
+ [PR.PR_LITERAL, /^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],
923
+ [PR.PR_LITERAL, /^#(?:[0-9a-f]{3}){1,2}/i],
924
+ [PR.PR_PLAIN, /^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],
925
+ [PR.PR_PUNCTUATION, /^[^\s\w\'\"]+/],
926
+ ]
927
+ ),
928
+ ['css']
929
+ );
930
+ PR.registerLangHandler(
931
+ PR.createSimpleLexer(
932
+ [],
933
+ [[PR.PR_KEYWORD, /^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]
934
+ ),
935
+ ['css-kw']
936
+ );
937
+ PR.registerLangHandler(PR.createSimpleLexer([], [[PR.PR_STRING, /^[^\)\"\']+/]]), ['css-str']);