@syncfusion/ej2-base 20.3.50 → 20.4.38
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.
- package/.eslintrc.json +16 -1
- package/CHANGELOG.md +1 -17
- package/README.md +4 -5
- package/bin/syncfusion-license.js +1 -1
- package/dist/ej2-base.min.js +2 -2
- package/dist/ej2-base.umd.min.js +2 -2
- package/dist/ej2-base.umd.min.js.map +1 -1
- package/dist/es6/ej2-base.es2015.js +497 -281
- package/dist/es6/ej2-base.es2015.js.map +1 -1
- package/dist/es6/ej2-base.es5.js +285 -210
- package/dist/es6/ej2-base.es5.js.map +1 -1
- package/dist/global/ej2-base.min.js +2 -2
- package/dist/global/ej2-base.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/e2e/modified-protractor/protractor.config.js +316 -0
- package/e2e/protractor.config.js +56 -24
- package/package.json +44 -8
- package/src/animation.d.ts +4 -0
- package/src/animation.js +7 -1
- package/src/base.js +12 -12
- package/src/browser.js +7 -7
- package/src/child-property.js +10 -10
- package/src/component-model.d.ts +1 -1
- package/src/component.js +29 -8
- package/src/dom.js +10 -10
- package/src/draggable-model.d.ts +21 -8
- package/src/draggable.d.ts +24 -6
- package/src/draggable.js +25 -12
- package/src/event-handler.js +6 -6
- package/src/hijri-parser.js +1 -1
- package/src/intl/date-parser.js +4 -4
- package/src/intl/intl-base.js +4 -4
- package/src/intl/number-formatter.js +3 -3
- package/src/intl/parser-base.js +2 -2
- package/src/keyboard.js +4 -4
- package/src/l10n.js +5 -5
- package/src/module-loader.js +2 -2
- package/src/notify-property-change.js +28 -28
- package/src/observer.js +9 -9
- package/src/sanitize-helper.js +2 -2
- package/src/template-engine.js +14 -14
- package/src/template.js +2 -1
- package/src/util.js +30 -28
- package/src/validate-lic.d.ts +3 -0
- package/src/validate-lic.js +69 -37
- package/styles/bootstrap-dark.css +34 -4
- package/styles/bootstrap.css +34 -4
- package/styles/bootstrap4.css +34 -4
- package/styles/bootstrap5-dark.css +34 -4
- package/styles/bootstrap5.css +34 -4
- package/styles/definition/_bootstrap5-dark.scss +9 -0
- package/styles/definition/_bootstrap5.scss +9 -0
- package/styles/definition/_fluent-dark.scss +9 -0
- package/styles/definition/_fluent.scss +9 -0
- package/styles/definition/_material.scss +3 -0
- package/styles/definition/_tailwind-dark.scss +9 -0
- package/styles/definition/_tailwind.scss +9 -0
- package/styles/fabric-dark.css +38 -5
- package/styles/fabric.css +38 -5
- package/styles/fluent-dark.css +35 -5
- package/styles/fluent.css +35 -5
- package/styles/highcontrast-light.css +41 -5
- package/styles/highcontrast.css +41 -5
- package/styles/material-dark.css +34 -4
- package/styles/material.css +34 -4
- package/styles/offline-theme/material-dark.css +34 -4
- package/styles/offline-theme/material.css +34 -4
- package/styles/offline-theme/tailwind-dark.css +34 -4
- package/styles/offline-theme/tailwind.css +34 -4
- package/styles/tailwind-dark.css +34 -4
- package/styles/tailwind.css +34 -4
package/dist/es6/ej2-base.es5.js
CHANGED
|
@@ -66,7 +66,7 @@ function getValue(nameSpace, obj) {
|
|
|
66
66
|
var value = obj;
|
|
67
67
|
var splits = nameSpace.replace(/\[/g, '.').replace(/\]/g, '').split('.');
|
|
68
68
|
for (var i = 0; i < splits.length && !isUndefined(value); i++) {
|
|
69
|
-
value = value[splits[i]];
|
|
69
|
+
value = value[splits[parseInt(i.toString(), 10)]];
|
|
70
70
|
}
|
|
71
71
|
return value;
|
|
72
72
|
}
|
|
@@ -90,14 +90,14 @@ function setValue(nameSpace, value, obj) {
|
|
|
90
90
|
var length = keys.length;
|
|
91
91
|
var key;
|
|
92
92
|
for (i = 0; i < length; i++) {
|
|
93
|
-
key = keys[i];
|
|
93
|
+
key = keys[parseInt(i.toString(), 10)];
|
|
94
94
|
if (i + 1 === length) {
|
|
95
|
-
fromObj[key] = value === undefined ? {} : value;
|
|
95
|
+
fromObj["" + key] = value === undefined ? {} : value;
|
|
96
96
|
}
|
|
97
|
-
else if (isNullOrUndefined(fromObj[key])) {
|
|
98
|
-
fromObj[key] = {};
|
|
97
|
+
else if (isNullOrUndefined(fromObj["" + key])) {
|
|
98
|
+
fromObj["" + key] = {};
|
|
99
99
|
}
|
|
100
|
-
fromObj = fromObj[key];
|
|
100
|
+
fromObj = fromObj["" + key];
|
|
101
101
|
}
|
|
102
102
|
return start;
|
|
103
103
|
}
|
|
@@ -111,12 +111,13 @@ function setValue(nameSpace, value, obj) {
|
|
|
111
111
|
*/
|
|
112
112
|
// eslint-disable-next-line
|
|
113
113
|
function deleteObject(obj, key) {
|
|
114
|
-
delete obj[key];
|
|
114
|
+
delete obj["" + key];
|
|
115
115
|
}
|
|
116
116
|
/**
|
|
117
117
|
*@private
|
|
118
118
|
*/
|
|
119
|
-
|
|
119
|
+
// eslint-disable-next-line
|
|
120
|
+
var containerObject = typeof window !== 'undefined' ? window : {};
|
|
120
121
|
/**
|
|
121
122
|
* Check weather the given argument is only object.
|
|
122
123
|
*
|
|
@@ -158,12 +159,12 @@ function merge(source, destination) {
|
|
|
158
159
|
var deepmerge = 'deepMerge';
|
|
159
160
|
for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
|
|
160
161
|
var key = keys_1[_i];
|
|
161
|
-
if (!isNullOrUndefined(temrObj[deepmerge]) && (temrObj[deepmerge].indexOf(key) !== -1) &&
|
|
162
|
-
(isObject(tempProp[key]) || Array.isArray(tempProp[key]))) {
|
|
163
|
-
extend(temrObj[key], temrObj[key], tempProp[key], true);
|
|
162
|
+
if (!isNullOrUndefined(temrObj["" + deepmerge]) && (temrObj["" + deepmerge].indexOf(key) !== -1) &&
|
|
163
|
+
(isObject(tempProp["" + key]) || Array.isArray(tempProp["" + key]))) {
|
|
164
|
+
extend(temrObj["" + key], temrObj["" + key], tempProp["" + key], true);
|
|
164
165
|
}
|
|
165
166
|
else {
|
|
166
|
-
temrObj[key] = tempProp[key];
|
|
167
|
+
temrObj["" + key] = tempProp["" + key];
|
|
167
168
|
}
|
|
168
169
|
}
|
|
169
170
|
}
|
|
@@ -192,8 +193,8 @@ function extend(copied, first, second, deep) {
|
|
|
192
193
|
// eslint-disable-next-line
|
|
193
194
|
var obj1 = arguments_1[i];
|
|
194
195
|
Object.keys(obj1).forEach(function (key) {
|
|
195
|
-
var src = result[key];
|
|
196
|
-
var copy = obj1[key];
|
|
196
|
+
var src = result["" + key];
|
|
197
|
+
var copy = obj1["" + key];
|
|
197
198
|
var clone;
|
|
198
199
|
var isArrayChanged = Array.isArray(copy) && Array.isArray(src) && (copy.length !== src.length);
|
|
199
200
|
// eslint-disable-next-line
|
|
@@ -206,17 +207,18 @@ function extend(copied, first, second, deep) {
|
|
|
206
207
|
extend(clone, {}, copy, deep);
|
|
207
208
|
}
|
|
208
209
|
else {
|
|
209
|
-
result[key] = extend(clone, {}, copy, deep);
|
|
210
|
+
result["" + key] = extend(clone, {}, copy, deep);
|
|
210
211
|
}
|
|
211
212
|
}
|
|
212
213
|
else {
|
|
213
214
|
/* istanbul ignore next */
|
|
214
215
|
clone = isBlazor() ? src && Object.keys(copy).length : src ? src : [];
|
|
215
|
-
|
|
216
|
+
// eslint-disable-next-line
|
|
217
|
+
result["" + key] = extend([], clone, copy, (clone && clone.length) || (copy && copy.length));
|
|
216
218
|
}
|
|
217
219
|
}
|
|
218
220
|
else {
|
|
219
|
-
result[key] = copy;
|
|
221
|
+
result["" + key] = copy;
|
|
220
222
|
}
|
|
221
223
|
});
|
|
222
224
|
};
|
|
@@ -292,7 +294,7 @@ function queryParams(data) {
|
|
|
292
294
|
var keys = Object.keys(data);
|
|
293
295
|
for (var _i = 0, keys_2 = keys; _i < keys_2.length; _i++) {
|
|
294
296
|
var key = keys_2[_i];
|
|
295
|
-
array.push(encodeURIComponent(key) + '=' + encodeURIComponent('' + data[key]));
|
|
297
|
+
array.push(encodeURIComponent(key) + '=' + encodeURIComponent('' + data["" + key]));
|
|
296
298
|
}
|
|
297
299
|
return array.join('&');
|
|
298
300
|
}
|
|
@@ -362,7 +364,7 @@ function print(element, printWindow) {
|
|
|
362
364
|
var blinks = [].slice.call(document.getElementsByTagName('body')[0].querySelectorAll('link, style'));
|
|
363
365
|
if (blinks.length) {
|
|
364
366
|
for (var l = 0, len = blinks.length; l < len; l++) {
|
|
365
|
-
links.push(blinks[l]);
|
|
367
|
+
links.push(blinks[parseInt(l.toString(), 10)]);
|
|
366
368
|
}
|
|
367
369
|
}
|
|
368
370
|
var reference = '';
|
|
@@ -371,7 +373,7 @@ function print(element, printWindow) {
|
|
|
371
373
|
}
|
|
372
374
|
div.appendChild(element.cloneNode(true));
|
|
373
375
|
for (var i = 0, len = links.length; i < len; i++) {
|
|
374
|
-
reference += links[i].outerHTML;
|
|
376
|
+
reference += links[parseInt(i.toString(), 10)].outerHTML;
|
|
375
377
|
}
|
|
376
378
|
printWindow.document.write('<!DOCTYPE html> <html><head>' + reference + '</head><body>' + div.innerHTML +
|
|
377
379
|
'<script> (function() { window.ready = true; })(); </script>' + '</body></html>');
|
|
@@ -428,8 +430,8 @@ function isBlazor() {
|
|
|
428
430
|
*/
|
|
429
431
|
function getElement(element) {
|
|
430
432
|
var xPath = 'xPath';
|
|
431
|
-
if (!(element instanceof Node) && isBlazor() && !isNullOrUndefined(element[xPath])) {
|
|
432
|
-
return document.evaluate(element[xPath], document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
|
|
433
|
+
if (!(element instanceof Node) && isBlazor() && !isNullOrUndefined(element["" + xPath])) {
|
|
434
|
+
return document.evaluate(element["" + xPath], document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
|
|
433
435
|
}
|
|
434
436
|
return element;
|
|
435
437
|
}
|
|
@@ -445,8 +447,8 @@ function getElement(element) {
|
|
|
445
447
|
function getInstance(element, component) {
|
|
446
448
|
// eslint-disable-next-line
|
|
447
449
|
var elem = (typeof (element) === 'string') ? document.querySelector(element) : element;
|
|
448
|
-
if (elem[instances]) {
|
|
449
|
-
for (var _i = 0, _a = elem[instances]; _i < _a.length; _i++) {
|
|
450
|
+
if (elem["" + instances]) {
|
|
451
|
+
for (var _i = 0, _a = elem["" + instances]; _i < _a.length; _i++) {
|
|
450
452
|
var inst = _a[_i];
|
|
451
453
|
if (inst instanceof component) {
|
|
452
454
|
return inst;
|
|
@@ -466,11 +468,11 @@ function getInstance(element, component) {
|
|
|
466
468
|
function addInstance(element, instance) {
|
|
467
469
|
// eslint-disable-next-line
|
|
468
470
|
var elem = (typeof (element) === 'string') ? document.querySelector(element) : element;
|
|
469
|
-
if (elem[instances]) {
|
|
470
|
-
elem[instances].push(instance);
|
|
471
|
+
if (elem["" + instances]) {
|
|
472
|
+
elem["" + instances].push(instance);
|
|
471
473
|
}
|
|
472
474
|
else {
|
|
473
|
-
elem[instances] = [instance];
|
|
475
|
+
elem["" + instances] = [instance];
|
|
474
476
|
}
|
|
475
477
|
}
|
|
476
478
|
/**
|
|
@@ -497,7 +499,7 @@ function uniqueID() {
|
|
|
497
499
|
function combineArray(num) {
|
|
498
500
|
var ret = '';
|
|
499
501
|
for (var i = 0; i < 5; i++) {
|
|
500
|
-
ret += (i ? ',' : '') + num[i];
|
|
502
|
+
ret += (i ? ',' : '') + num[parseInt(i.toString(), 10)];
|
|
501
503
|
}
|
|
502
504
|
return ret;
|
|
503
505
|
}
|
|
@@ -608,10 +610,10 @@ var ParserBase = /** @__PURE__ @class */ (function () {
|
|
|
608
610
|
var ret = '';
|
|
609
611
|
for (var i = 0; i < len; i++) {
|
|
610
612
|
if (i !== len - 1) {
|
|
611
|
-
ret += val[i] + '|';
|
|
613
|
+
ret += val[parseInt(i.toString(), 10)] + '|';
|
|
612
614
|
}
|
|
613
615
|
else {
|
|
614
|
-
ret += val[i];
|
|
616
|
+
ret += val[parseInt(i.toString(), 10)];
|
|
615
617
|
}
|
|
616
618
|
}
|
|
617
619
|
return ret;
|
|
@@ -1023,7 +1025,7 @@ var HijriParser;
|
|
|
1023
1025
|
var tempDay = z - Math.floor(29.5001 * im - 29);
|
|
1024
1026
|
var i = 0;
|
|
1025
1027
|
for (; i < dateCorrection.length; i++) {
|
|
1026
|
-
if (dateCorrection[i] > modifiedJulianDate) {
|
|
1028
|
+
if (dateCorrection[parseInt(i.toString(), 10)] > modifiedJulianDate) {
|
|
1027
1029
|
break;
|
|
1028
1030
|
}
|
|
1029
1031
|
}
|
|
@@ -1386,7 +1388,7 @@ var errorText = {
|
|
|
1386
1388
|
'ms': 'minimumSignificantDigits',
|
|
1387
1389
|
'ls': 'maximumSignificantDigits',
|
|
1388
1390
|
'mf': 'minimumFractionDigits',
|
|
1389
|
-
'lf': 'maximumFractionDigits'
|
|
1391
|
+
'lf': 'maximumFractionDigits'
|
|
1390
1392
|
};
|
|
1391
1393
|
var percentSign = 'percentSign';
|
|
1392
1394
|
var minusSign = 'minusSign';
|
|
@@ -1420,9 +1422,9 @@ var NumberFormat = /** @__PURE__ @class */ (function () {
|
|
|
1420
1422
|
dOptions.currencySymbol = isBlazor() ? getValue('currencySymbol', numObject) : IntlBase.getCurrencySymbol(dependable.numericObject, fOptions.currency || defaultCurrencyCode, option.altSymbol);
|
|
1421
1423
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
1422
1424
|
dOptions.percentSymbol = isBlazor() ? getValue('numberSymbols.percentSign', numObject) :
|
|
1423
|
-
dOptions.numberMapper.numberSymbols[percentSign];
|
|
1425
|
+
dOptions.numberMapper.numberSymbols["" + percentSign];
|
|
1424
1426
|
dOptions.minusSymbol = isBlazor() ? getValue('numberSymbols.minusSign', numObject) :
|
|
1425
|
-
dOptions.numberMapper.numberSymbols[minusSign];
|
|
1427
|
+
dOptions.numberMapper.numberSymbols["" + minusSign];
|
|
1426
1428
|
var symbols = dOptions.numberMapper.numberSymbols;
|
|
1427
1429
|
if ((option.format) && !(IntlBase.formatRegex.test(option.format))) {
|
|
1428
1430
|
cOptions = IntlBase.customFormat(option.format, dOptions, dependable.numericObject);
|
|
@@ -1774,7 +1776,7 @@ var DateParser = /** @__PURE__ @class */ (function () {
|
|
|
1774
1776
|
var numMapper = isBlazor() ? dependable.parserObject.numbers :
|
|
1775
1777
|
ParserBase.getNumberMapper(dependable.parserObject, ParserBase.getNumberingSystem(cldr));
|
|
1776
1778
|
for (var i = 0; i < length_1; i++) {
|
|
1777
|
-
var str = patternMatch[i];
|
|
1779
|
+
var str = patternMatch[parseInt(i.toString(), 10)];
|
|
1778
1780
|
var len = str.length;
|
|
1779
1781
|
var char = (str[0] === 'K') ? 'h' : str[0];
|
|
1780
1782
|
var isNumber = void 0;
|
|
@@ -1904,7 +1906,7 @@ var DateParser = /** @__PURE__ @class */ (function () {
|
|
|
1904
1906
|
break;
|
|
1905
1907
|
}
|
|
1906
1908
|
if (canUpdate) {
|
|
1907
|
-
parseOptions.evalposition[charKey] = { isNumber: isNumber, pos: i + 1 + gmtCorrection, hourOnly: hourOnly };
|
|
1909
|
+
parseOptions.evalposition["" + charKey] = { isNumber: isNumber, pos: i + 1 + gmtCorrection, hourOnly: hourOnly };
|
|
1908
1910
|
}
|
|
1909
1911
|
if (i === length_1 - 1 && !isNullOrUndefined(regexString)) {
|
|
1910
1912
|
parseOptions.parserRegex = new RegExp('^' + regexString + '$', 'i');
|
|
@@ -2028,7 +2030,7 @@ var DateParser = /** @__PURE__ @class */ (function () {
|
|
|
2028
2030
|
var props = Object.keys(parseOptions.evalposition);
|
|
2029
2031
|
for (var _i = 0, props_1 = props; _i < props_1.length; _i++) {
|
|
2030
2032
|
var prop = props_1[_i];
|
|
2031
|
-
var curObject = parseOptions.evalposition[prop];
|
|
2033
|
+
var curObject = parseOptions.evalposition["" + prop];
|
|
2032
2034
|
var matchString = matches[curObject.pos];
|
|
2033
2035
|
if (curObject.isNumber) {
|
|
2034
2036
|
// eslint-disable-next-line
|
|
@@ -2048,7 +2050,7 @@ var DateParser = /** @__PURE__ @class */ (function () {
|
|
|
2048
2050
|
val += this.getZoneValue(flag, matches[pos + 4], matches[pos + 10], num);
|
|
2049
2051
|
}
|
|
2050
2052
|
if (!isNullOrUndefined(val)) {
|
|
2051
|
-
retOptions[prop] = val;
|
|
2053
|
+
retOptions["" + prop] = val;
|
|
2052
2054
|
}
|
|
2053
2055
|
}
|
|
2054
2056
|
else {
|
|
@@ -2287,17 +2289,17 @@ var Observer = /** @__PURE__ @class */ (function () {
|
|
|
2287
2289
|
}
|
|
2288
2290
|
var cntxt = context || this.context;
|
|
2289
2291
|
if (this.notExist(property)) {
|
|
2290
|
-
this.boundedEvents[property] = [{ handler: handler, context: cntxt }];
|
|
2292
|
+
this.boundedEvents["" + property] = [{ handler: handler, context: cntxt }];
|
|
2291
2293
|
return;
|
|
2292
2294
|
}
|
|
2293
2295
|
if (!isNullOrUndefined(id)) {
|
|
2294
2296
|
if (this.ranArray.indexOf(id) === -1) {
|
|
2295
2297
|
this.ranArray.push(id);
|
|
2296
|
-
this.boundedEvents[property].push({ handler: handler, context: cntxt, id: id });
|
|
2298
|
+
this.boundedEvents["" + property].push({ handler: handler, context: cntxt, id: id });
|
|
2297
2299
|
}
|
|
2298
2300
|
}
|
|
2299
|
-
else if (!this.isHandlerPresent(this.boundedEvents[property], handler)) {
|
|
2300
|
-
this.boundedEvents[property].push({ handler: handler, context: cntxt });
|
|
2301
|
+
else if (!this.isHandlerPresent(this.boundedEvents["" + property], handler)) {
|
|
2302
|
+
this.boundedEvents["" + property].push({ handler: handler, context: cntxt });
|
|
2301
2303
|
}
|
|
2302
2304
|
};
|
|
2303
2305
|
/**
|
|
@@ -2316,7 +2318,7 @@ var Observer = /** @__PURE__ @class */ (function () {
|
|
|
2316
2318
|
if (handler) {
|
|
2317
2319
|
for (var i = 0; i < curObject.length; i++) {
|
|
2318
2320
|
if (id) {
|
|
2319
|
-
if (curObject[i].id === id) {
|
|
2321
|
+
if (curObject[parseInt(i.toString(), 10)].id === id) {
|
|
2320
2322
|
curObject.splice(i, 1);
|
|
2321
2323
|
var indexLocation = this.ranArray.indexOf(id);
|
|
2322
2324
|
if (indexLocation !== -1) {
|
|
@@ -2325,14 +2327,14 @@ var Observer = /** @__PURE__ @class */ (function () {
|
|
|
2325
2327
|
break;
|
|
2326
2328
|
}
|
|
2327
2329
|
}
|
|
2328
|
-
else if (handler === curObject[i].handler) {
|
|
2330
|
+
else if (handler === curObject[parseInt(i.toString(), 10)].handler) {
|
|
2329
2331
|
curObject.splice(i, 1);
|
|
2330
2332
|
break;
|
|
2331
2333
|
}
|
|
2332
2334
|
}
|
|
2333
2335
|
}
|
|
2334
2336
|
else {
|
|
2335
|
-
delete this.boundedEvents[property];
|
|
2337
|
+
delete this.boundedEvents["" + property];
|
|
2336
2338
|
}
|
|
2337
2339
|
};
|
|
2338
2340
|
/**
|
|
@@ -2356,7 +2358,7 @@ var Observer = /** @__PURE__ @class */ (function () {
|
|
|
2356
2358
|
}
|
|
2357
2359
|
var blazor = 'Blazor';
|
|
2358
2360
|
var curObject = getValue(property, this.boundedEvents).slice(0);
|
|
2359
|
-
if (window[blazor]) {
|
|
2361
|
+
if (window["" + blazor]) {
|
|
2360
2362
|
return this.blazorCallback(curObject, argument, successHandler, errorHandler, 0);
|
|
2361
2363
|
}
|
|
2362
2364
|
else {
|
|
@@ -2373,7 +2375,7 @@ var Observer = /** @__PURE__ @class */ (function () {
|
|
|
2373
2375
|
var _this = this;
|
|
2374
2376
|
var isTrigger = index === objs.length - 1;
|
|
2375
2377
|
if (index < objs.length) {
|
|
2376
|
-
var obj_1 = objs[index];
|
|
2378
|
+
var obj_1 = objs[parseInt(index.toString(), 10)];
|
|
2377
2379
|
var promise = obj_1.handler.call(obj_1.context, argument);
|
|
2378
2380
|
if (promise && typeof promise.then === 'function') {
|
|
2379
2381
|
if (!successHandler) {
|
|
@@ -3679,7 +3681,7 @@ var IntlBase;
|
|
|
3679
3681
|
function isCurrencyPercent(parts, actual, symbol) {
|
|
3680
3682
|
var options = { nlead: parts[0], nend: parts[1] };
|
|
3681
3683
|
for (var i = 0; i < 2; i++) {
|
|
3682
|
-
var part = parts[i];
|
|
3684
|
+
var part = parts[parseInt(i.toString(), 10)];
|
|
3683
3685
|
var loc = part.indexOf(actual);
|
|
3684
3686
|
if ((loc !== -1) && ((loc < part.indexOf('\'')) || (loc > part.lastIndexOf('\'')))) {
|
|
3685
3687
|
// eslint-disable-next-line
|
|
@@ -3898,7 +3900,7 @@ var IntlBase;
|
|
|
3898
3900
|
integer = hash + integer;
|
|
3899
3901
|
pattern = '';
|
|
3900
3902
|
for (var x = integer.length - 1; x > 0; x = x - 3) {
|
|
3901
|
-
pattern = ',' + integer[x - 2] + integer[x - 1] + integer[x] + pattern;
|
|
3903
|
+
pattern = ',' + integer[x - 2] + integer[x - 1] + integer[parseInt(x.toString(), 10)] + pattern;
|
|
3902
3904
|
}
|
|
3903
3905
|
pattern = pattern.slice(1);
|
|
3904
3906
|
return temp[1] ? (pattern + '.' + temp[1]) : pattern;
|
|
@@ -3919,9 +3921,9 @@ var IntlBase;
|
|
|
3919
3921
|
}
|
|
3920
3922
|
iCulture = iCulture.slice(0, 2).toUpperCase() + iCulture.substr(2);
|
|
3921
3923
|
if (mapper) {
|
|
3922
|
-
firstDay = mapper[iCulture] || mapper[iCulture.slice(0, 2)] || defaultFirstDay;
|
|
3924
|
+
firstDay = mapper["" + iCulture] || mapper[iCulture.slice(0, 2)] || defaultFirstDay;
|
|
3923
3925
|
}
|
|
3924
|
-
return firstDayMapper[firstDay];
|
|
3926
|
+
return firstDayMapper["" + firstDay];
|
|
3925
3927
|
}
|
|
3926
3928
|
IntlBase.getWeekData = getWeekData;
|
|
3927
3929
|
/**
|
|
@@ -4174,7 +4176,7 @@ var Browser = /** @__PURE__ @class */ (function () {
|
|
|
4174
4176
|
var clientInfo = [];
|
|
4175
4177
|
for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
|
|
4176
4178
|
var key = keys_1[_i];
|
|
4177
|
-
clientInfo = Browser.userAgent.match(REGX_BROWSER[key]);
|
|
4179
|
+
clientInfo = Browser.userAgent.match(REGX_BROWSER["" + key]);
|
|
4178
4180
|
if (clientInfo) {
|
|
4179
4181
|
browserInfo.name = (clientInfo[1].toLowerCase() === 'opr' ? 'opera' : clientInfo[1].toLowerCase());
|
|
4180
4182
|
browserInfo.name = (clientInfo[1].toLowerCase() === 'crios' ? 'chrome' : browserInfo.name);
|
|
@@ -4216,9 +4218,9 @@ var Browser = /** @__PURE__ @class */ (function () {
|
|
|
4216
4218
|
isPointer: 'pointercancel', isTouch: 'touchcancel', isDevice: 'mouseleave'
|
|
4217
4219
|
}
|
|
4218
4220
|
};
|
|
4219
|
-
return (Browser.isPointer ? events[event].isPointer :
|
|
4220
|
-
(Browser.isTouch ? events[event].isTouch + (!Browser.isDevice ? ' ' + events[event].isDevice : '')
|
|
4221
|
-
: events[event].isDevice));
|
|
4221
|
+
return (Browser.isPointer ? events["" + event].isPointer :
|
|
4222
|
+
(Browser.isTouch ? events["" + event].isTouch + (!Browser.isDevice ? ' ' + events["" + event].isDevice : '')
|
|
4223
|
+
: events["" + event].isDevice));
|
|
4222
4224
|
};
|
|
4223
4225
|
/**
|
|
4224
4226
|
* To get the Touch start event from browser
|
|
@@ -4267,10 +4269,10 @@ var Browser = /** @__PURE__ @class */ (function () {
|
|
|
4267
4269
|
browserDetails['isTouch'] = true;
|
|
4268
4270
|
browserDetails['isPointer'] = true;
|
|
4269
4271
|
}
|
|
4270
|
-
if ('undefined' === typeof browserDetails[key]) {
|
|
4271
|
-
return browserDetails[key] = regX.test(Browser.userAgent);
|
|
4272
|
+
if ('undefined' === typeof browserDetails["" + key]) {
|
|
4273
|
+
return browserDetails["" + key] = regX.test(Browser.userAgent);
|
|
4272
4274
|
}
|
|
4273
|
-
return browserDetails[key];
|
|
4275
|
+
return browserDetails["" + key];
|
|
4274
4276
|
};
|
|
4275
4277
|
Object.defineProperty(Browser, "userAgent", {
|
|
4276
4278
|
get: function () {
|
|
@@ -4566,15 +4568,15 @@ var EventHandler = /** @__PURE__ @class */ (function () {
|
|
|
4566
4568
|
var event = eventName.split(' ');
|
|
4567
4569
|
for (var i = 0; i < event.length; i++) {
|
|
4568
4570
|
eventData.push({
|
|
4569
|
-
name: event[i],
|
|
4571
|
+
name: event[parseInt(i.toString(), 10)],
|
|
4570
4572
|
listener: listener,
|
|
4571
4573
|
debounce: debounceListener
|
|
4572
4574
|
});
|
|
4573
4575
|
if (Browser.isIE) {
|
|
4574
|
-
element.addEventListener(event[i], debounceListener);
|
|
4576
|
+
element.addEventListener(event[parseInt(i.toString(), 10)], debounceListener);
|
|
4575
4577
|
}
|
|
4576
4578
|
else {
|
|
4577
|
-
element.addEventListener(event[i], debounceListener, { passive: false });
|
|
4579
|
+
element.addEventListener(event[parseInt(i.toString(), 10)], debounceListener, { passive: false });
|
|
4578
4580
|
}
|
|
4579
4581
|
}
|
|
4580
4582
|
return debounceListener;
|
|
@@ -4595,7 +4597,7 @@ var EventHandler = /** @__PURE__ @class */ (function () {
|
|
|
4595
4597
|
var debounceListener;
|
|
4596
4598
|
if (eventData && eventData.length !== 0) {
|
|
4597
4599
|
eventData.some(function (x, i) {
|
|
4598
|
-
return x.name === event[j] && x.listener === listener ?
|
|
4600
|
+
return x.name === event[parseInt(j.toString(), 10)] && x.listener === listener ?
|
|
4599
4601
|
(index = i, debounceListener = x.debounce, true) : false;
|
|
4600
4602
|
});
|
|
4601
4603
|
}
|
|
@@ -4603,7 +4605,7 @@ var EventHandler = /** @__PURE__ @class */ (function () {
|
|
|
4603
4605
|
eventData.splice(index, 1);
|
|
4604
4606
|
}
|
|
4605
4607
|
if (debounceListener) {
|
|
4606
|
-
element.removeEventListener(event[j], debounceListener);
|
|
4608
|
+
element.removeEventListener(event[parseInt(j.toString(), 10)], debounceListener);
|
|
4607
4609
|
}
|
|
4608
4610
|
};
|
|
4609
4611
|
for (var j = 0; j < event.length; j++) {
|
|
@@ -4624,7 +4626,7 @@ var EventHandler = /** @__PURE__ @class */ (function () {
|
|
|
4624
4626
|
// eslint-disable-next-line
|
|
4625
4627
|
copyData = extend([], copyData, eventData);
|
|
4626
4628
|
for (var i = 0; i < copyData.length; i++) {
|
|
4627
|
-
element.removeEventListener(copyData[i].name, copyData[i].debounce);
|
|
4629
|
+
element.removeEventListener(copyData[parseInt(i.toString(), 10)].name, copyData[parseInt(i.toString(), 10)].debounce);
|
|
4628
4630
|
eventData.shift();
|
|
4629
4631
|
}
|
|
4630
4632
|
};
|
|
@@ -4882,10 +4884,10 @@ function attributes(element, attributes) {
|
|
|
4882
4884
|
if (key === 'tabindex') {
|
|
4883
4885
|
iKey = 'tabIndex';
|
|
4884
4886
|
}
|
|
4885
|
-
ele.attributes[iKey] = attributes[key];
|
|
4887
|
+
ele.attributes["" + iKey] = attributes["" + key];
|
|
4886
4888
|
}
|
|
4887
4889
|
else {
|
|
4888
|
-
ele.setAttribute(key, attributes[key]);
|
|
4890
|
+
ele.setAttribute(key, attributes["" + key]);
|
|
4889
4891
|
}
|
|
4890
4892
|
}
|
|
4891
4893
|
return ele;
|
|
@@ -4933,20 +4935,20 @@ function querySelectId(selector) {
|
|
|
4933
4935
|
if (selector.match(/#[0-9]/g) || selector.match(charRegex)) {
|
|
4934
4936
|
var idList = selector.split(',');
|
|
4935
4937
|
for (var i = 0; i < idList.length; i++) {
|
|
4936
|
-
var list = idList[i].split(' ');
|
|
4938
|
+
var list = idList[parseInt(i.toString(), 10)].split(' ');
|
|
4937
4939
|
for (var j = 0; j < list.length; j++) {
|
|
4938
|
-
if (list[j].indexOf('#') > -1) {
|
|
4939
|
-
if (!list[j].match(/\[.*\]/)) {
|
|
4940
|
-
var splitId = list[j].split('#');
|
|
4940
|
+
if (list[parseInt(j.toString(), 10)].indexOf('#') > -1) {
|
|
4941
|
+
if (!list[parseInt(j.toString(), 10)].match(/\[.*\]/)) {
|
|
4942
|
+
var splitId = list[parseInt(j.toString(), 10)].split('#');
|
|
4941
4943
|
if (splitId[1].match(/^\d/) || splitId[1].match(charRegex)) {
|
|
4942
|
-
var setId = list[j].split('.');
|
|
4944
|
+
var setId = list[parseInt(j.toString(), 10)].split('.');
|
|
4943
4945
|
setId[0] = setId[0].replace(/#/, '[id=\'') + '\']';
|
|
4944
|
-
list[j] = setId.join('.');
|
|
4946
|
+
list[parseInt(j.toString(), 10)] = setId.join('.');
|
|
4945
4947
|
}
|
|
4946
4948
|
}
|
|
4947
4949
|
}
|
|
4948
4950
|
}
|
|
4949
|
-
idList[i] = list.join(' ');
|
|
4951
|
+
idList[parseInt(i.toString(), 10)] = list.join(' ');
|
|
4950
4952
|
}
|
|
4951
4953
|
return idList.join(',');
|
|
4952
4954
|
}
|
|
@@ -5014,7 +5016,7 @@ function getAttributeOrDefault(element, property, value) {
|
|
|
5014
5016
|
element.setAttribute(property, value.toString());
|
|
5015
5017
|
}
|
|
5016
5018
|
else {
|
|
5017
|
-
element.attributes[property] = value;
|
|
5019
|
+
element.attributes["" + property] = value;
|
|
5018
5020
|
}
|
|
5019
5021
|
attrVal = value;
|
|
5020
5022
|
}
|
|
@@ -5200,8 +5202,8 @@ var Base = /** @__PURE__ @class */ (function () {
|
|
|
5200
5202
|
var keys = Object.keys(obj);
|
|
5201
5203
|
for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
|
|
5202
5204
|
var key = keys_1[_i];
|
|
5203
|
-
if (parent[key] instanceof Array) {
|
|
5204
|
-
for (var _a = 0, _b = parent[key]; _a < _b.length; _a++) {
|
|
5205
|
+
if (parent["" + key] instanceof Array) {
|
|
5206
|
+
for (var _a = 0, _b = parent["" + key]; _a < _b.length; _a++) {
|
|
5205
5207
|
var obj_1 = _b[_a];
|
|
5206
5208
|
if (obj_1.dataBind !== undefined) {
|
|
5207
5209
|
obj_1.dataBind();
|
|
@@ -5209,7 +5211,7 @@ var Base = /** @__PURE__ @class */ (function () {
|
|
|
5209
5211
|
}
|
|
5210
5212
|
}
|
|
5211
5213
|
else {
|
|
5212
|
-
parent[key].dataBind();
|
|
5214
|
+
parent["" + key].dataBind();
|
|
5213
5215
|
}
|
|
5214
5216
|
}
|
|
5215
5217
|
};
|
|
@@ -5244,8 +5246,8 @@ var Base = /** @__PURE__ @class */ (function () {
|
|
|
5244
5246
|
newChanges = newChanges ? newChanges : {};
|
|
5245
5247
|
extend(this.bulkChanges, {}, newChanges, true);
|
|
5246
5248
|
var sfBlazor = 'sfBlazor';
|
|
5247
|
-
if (this.allowServerDataBinding && window[sfBlazor].updateModel) {
|
|
5248
|
-
window[sfBlazor].updateModel(this);
|
|
5249
|
+
if (this.allowServerDataBinding && window["" + sfBlazor].updateModel) {
|
|
5250
|
+
window["" + sfBlazor].updateModel(this);
|
|
5249
5251
|
this.bulkChanges = {};
|
|
5250
5252
|
}
|
|
5251
5253
|
};
|
|
@@ -5254,14 +5256,14 @@ var Base = /** @__PURE__ @class */ (function () {
|
|
|
5254
5256
|
if (isBlazor()) {
|
|
5255
5257
|
// tslint:disable-next-line:no-any
|
|
5256
5258
|
var newChanges = {};
|
|
5257
|
-
newChanges[key] = newValue;
|
|
5259
|
+
newChanges["" + key] = newValue;
|
|
5258
5260
|
this.serverDataBind(newChanges);
|
|
5259
5261
|
}
|
|
5260
5262
|
if (this.isProtectedOnChange) {
|
|
5261
5263
|
return;
|
|
5262
5264
|
}
|
|
5263
|
-
this.oldProperties[key] = oldValue;
|
|
5264
|
-
this.changedProperties[key] = newValue;
|
|
5265
|
+
this.oldProperties["" + key] = oldValue;
|
|
5266
|
+
this.changedProperties["" + key] = newValue;
|
|
5265
5267
|
this.finalUpdate();
|
|
5266
5268
|
this.finalUpdate = setImmediate(this.dataBind.bind(this));
|
|
5267
5269
|
};
|
|
@@ -5307,7 +5309,7 @@ var Base = /** @__PURE__ @class */ (function () {
|
|
|
5307
5309
|
var handler = getValue(eventName, this);
|
|
5308
5310
|
if (handler) {
|
|
5309
5311
|
var blazor = 'Blazor';
|
|
5310
|
-
if (window[blazor]) {
|
|
5312
|
+
if (window["" + blazor]) {
|
|
5311
5313
|
var promise = handler.call(this, eventProp);
|
|
5312
5314
|
if (promise && typeof promise.then === 'function') {
|
|
5313
5315
|
if (!successHandler) {
|
|
@@ -5397,7 +5399,7 @@ function getComponent(elem, comp) {
|
|
|
5397
5399
|
var i;
|
|
5398
5400
|
var ele = typeof elem === 'string' ? document.getElementById(elem) : elem;
|
|
5399
5401
|
for (i = 0; i < ele.ej2_instances.length; i++) {
|
|
5400
|
-
instance = ele.ej2_instances[i];
|
|
5402
|
+
instance = ele.ej2_instances[parseInt(i.toString(), 10)];
|
|
5401
5403
|
if (typeof comp === 'string') {
|
|
5402
5404
|
var compName = instance.getModuleName();
|
|
5403
5405
|
if (comp === compName) {
|
|
@@ -5425,9 +5427,9 @@ function removeChildInstance(element) {
|
|
|
5425
5427
|
// tslint:disable-next-line:no-any
|
|
5426
5428
|
var childEle = [].slice.call(element.getElementsByClassName('e-control'));
|
|
5427
5429
|
for (var i = 0; i < childEle.length; i++) {
|
|
5428
|
-
var compName = childEle[i].classList[1].split('e-')[1];
|
|
5430
|
+
var compName = childEle[parseInt(i.toString(), 10)].classList[1].split('e-')[1];
|
|
5429
5431
|
// tslint:disable-next-line:no-any
|
|
5430
|
-
var compInstance = getComponent(childEle[i], compName);
|
|
5432
|
+
var compInstance = getComponent(childEle[parseInt(i.toString(), 10)], compName);
|
|
5431
5433
|
if (!isUndefined(compInstance)) {
|
|
5432
5434
|
compInstance.destroy();
|
|
5433
5435
|
}
|
|
@@ -5447,9 +5449,9 @@ function removeChildInstance(element) {
|
|
|
5447
5449
|
function getObject(instance, curKey, defaultValue, type) {
|
|
5448
5450
|
// eslint-disable-next-line
|
|
5449
5451
|
if (!instance.properties.hasOwnProperty(curKey) || !(instance.properties[curKey] instanceof type)) {
|
|
5450
|
-
instance.properties[curKey] = createInstance(type, [instance, curKey, defaultValue]);
|
|
5452
|
+
instance.properties["" + curKey] = createInstance(type, [instance, curKey, defaultValue]);
|
|
5451
5453
|
}
|
|
5452
|
-
return instance.properties[curKey];
|
|
5454
|
+
return instance.properties["" + curKey];
|
|
5453
5455
|
}
|
|
5454
5456
|
/**
|
|
5455
5457
|
* Returns object array
|
|
@@ -5469,15 +5471,15 @@ function getObjectArray(instance, curKey, defaultValue, type, isSetter, isFactor
|
|
|
5469
5471
|
for (var i = 0; i < len; i++) {
|
|
5470
5472
|
var curType = type;
|
|
5471
5473
|
if (isFactory) {
|
|
5472
|
-
curType = type(defaultValue[i], instance);
|
|
5474
|
+
curType = type(defaultValue[parseInt(i.toString(), 10)], instance);
|
|
5473
5475
|
}
|
|
5474
5476
|
if (isSetter) {
|
|
5475
5477
|
var inst = createInstance(curType, [instance, curKey, {}, true]);
|
|
5476
|
-
inst.setProperties(defaultValue[i], true);
|
|
5478
|
+
inst.setProperties(defaultValue[parseInt(i.toString(), 10)], true);
|
|
5477
5479
|
result.push(inst);
|
|
5478
5480
|
}
|
|
5479
5481
|
else {
|
|
5480
|
-
result.push(createInstance(curType, [instance, curKey, defaultValue[i], false]));
|
|
5482
|
+
result.push(createInstance(curType, [instance, curKey, defaultValue[parseInt(i.toString(), 10)], false]));
|
|
5481
5483
|
}
|
|
5482
5484
|
}
|
|
5483
5485
|
return result;
|
|
@@ -5493,9 +5495,9 @@ function propertyGetter(defaultValue, curKey) {
|
|
|
5493
5495
|
return function () {
|
|
5494
5496
|
// eslint-disable-next-line
|
|
5495
5497
|
if (!this.properties.hasOwnProperty(curKey)) {
|
|
5496
|
-
this.properties[curKey] = defaultValue;
|
|
5498
|
+
this.properties["" + curKey] = defaultValue;
|
|
5497
5499
|
}
|
|
5498
|
-
return this.properties[curKey];
|
|
5500
|
+
return this.properties["" + curKey];
|
|
5499
5501
|
};
|
|
5500
5502
|
}
|
|
5501
5503
|
/**
|
|
@@ -5507,11 +5509,11 @@ function propertyGetter(defaultValue, curKey) {
|
|
|
5507
5509
|
*/
|
|
5508
5510
|
function propertySetter(defaultValue, curKey) {
|
|
5509
5511
|
return function (newValue) {
|
|
5510
|
-
if (this.properties[curKey] !== newValue) {
|
|
5512
|
+
if (this.properties["" + curKey] !== newValue) {
|
|
5511
5513
|
// eslint-disable-next-line
|
|
5512
5514
|
var oldVal = this.properties.hasOwnProperty(curKey) ? this.properties[curKey] : defaultValue;
|
|
5513
5515
|
this.saveChanges(curKey, newValue, oldVal);
|
|
5514
|
-
this.properties[curKey] = newValue;
|
|
5516
|
+
this.properties["" + curKey] = newValue;
|
|
5515
5517
|
}
|
|
5516
5518
|
};
|
|
5517
5519
|
}
|
|
@@ -5555,7 +5557,7 @@ function complexFactoryGetter(defaultValue, curKey, type) {
|
|
|
5555
5557
|
var curType = type({});
|
|
5556
5558
|
// eslint-disable-next-line
|
|
5557
5559
|
if (this.properties.hasOwnProperty(curKey)) {
|
|
5558
|
-
return this.properties[curKey];
|
|
5560
|
+
return this.properties["" + curKey];
|
|
5559
5561
|
}
|
|
5560
5562
|
else {
|
|
5561
5563
|
return getObject(this, curKey, defaultValue, curType);
|
|
@@ -5588,7 +5590,7 @@ function complexArrayGetter(defaultValue, curKey, type) {
|
|
|
5588
5590
|
// eslint-disable-next-line
|
|
5589
5591
|
if (!this.properties.hasOwnProperty(curKey)) {
|
|
5590
5592
|
var defCollection = getObjectArray(this, curKey, defaultValue, type, false);
|
|
5591
|
-
this.properties[curKey] = defCollection;
|
|
5593
|
+
this.properties["" + curKey] = defCollection;
|
|
5592
5594
|
}
|
|
5593
5595
|
var ignore = ((this.controlParent !== undefined && this.controlParent.ignoreCollectionWatch)
|
|
5594
5596
|
|| this.ignoreCollectionWatch);
|
|
@@ -5596,17 +5598,17 @@ function complexArrayGetter(defaultValue, curKey, type) {
|
|
|
5596
5598
|
if (!this.properties[curKey].hasOwnProperty('push') && !ignore) {
|
|
5597
5599
|
['push', 'pop'].forEach(function (extendFunc) {
|
|
5598
5600
|
var descriptor = {
|
|
5599
|
-
value: complexArrayDefinedCallback(extendFunc, curKey, type, _this.properties[curKey]).bind(_this),
|
|
5601
|
+
value: complexArrayDefinedCallback(extendFunc, curKey, type, _this.properties["" + curKey]).bind(_this),
|
|
5600
5602
|
configurable: true
|
|
5601
5603
|
};
|
|
5602
|
-
Object.defineProperty(_this.properties[curKey], extendFunc, descriptor);
|
|
5604
|
+
Object.defineProperty(_this.properties["" + curKey], extendFunc, descriptor);
|
|
5603
5605
|
});
|
|
5604
5606
|
}
|
|
5605
5607
|
// eslint-disable-next-line
|
|
5606
5608
|
if (!this.properties[curKey].hasOwnProperty('isComplexArray')) {
|
|
5607
|
-
Object.defineProperty(this.properties[curKey], 'isComplexArray', { value: true });
|
|
5609
|
+
Object.defineProperty(this.properties["" + curKey], 'isComplexArray', { value: true });
|
|
5608
5610
|
}
|
|
5609
|
-
return this.properties[curKey];
|
|
5611
|
+
return this.properties["" + curKey];
|
|
5610
5612
|
};
|
|
5611
5613
|
}
|
|
5612
5614
|
/**
|
|
@@ -5623,7 +5625,7 @@ function complexArraySetter(defaultValue, curKey, type) {
|
|
|
5623
5625
|
var newValCollection = getObjectArray(this, curKey, newValue, type, true);
|
|
5624
5626
|
this.isComplexArraySetter = false;
|
|
5625
5627
|
this.saveChanges(curKey, newValCollection, oldValueCollection);
|
|
5626
|
-
this.properties[curKey] = newValCollection;
|
|
5628
|
+
this.properties["" + curKey] = newValCollection;
|
|
5627
5629
|
};
|
|
5628
5630
|
}
|
|
5629
5631
|
/**
|
|
@@ -5639,7 +5641,7 @@ function complexArrayFactorySetter(defaultValue, curKey, type) {
|
|
|
5639
5641
|
var oldValueCollection = this.properties.hasOwnProperty(curKey) ? this.properties[curKey] : defaultValue;
|
|
5640
5642
|
var newValCollection = getObjectArray(this, curKey, newValue, type, true, true);
|
|
5641
5643
|
this.saveChanges(curKey, newValCollection, oldValueCollection);
|
|
5642
|
-
this.properties[curKey] = newValCollection;
|
|
5644
|
+
this.properties["" + curKey] = newValCollection;
|
|
5643
5645
|
};
|
|
5644
5646
|
}
|
|
5645
5647
|
/**
|
|
@@ -5655,9 +5657,9 @@ function complexArrayFactoryGetter(defaultValue, curKey, type) {
|
|
|
5655
5657
|
// eslint-disable-next-line
|
|
5656
5658
|
if (!this.properties.hasOwnProperty(curKey)) {
|
|
5657
5659
|
var defCollection = getObjectArray(this, curKey, defaultValue, curType, false);
|
|
5658
|
-
this.properties[curKey] = defCollection;
|
|
5660
|
+
this.properties["" + curKey] = defCollection;
|
|
5659
5661
|
}
|
|
5660
|
-
return this.properties[curKey];
|
|
5662
|
+
return this.properties["" + curKey];
|
|
5661
5663
|
};
|
|
5662
5664
|
}
|
|
5663
5665
|
/**
|
|
@@ -5679,13 +5681,13 @@ function complexArrayDefinedCallback(dFunc, curKey, type, prop) {
|
|
|
5679
5681
|
switch (dFunc) {
|
|
5680
5682
|
case 'push':
|
|
5681
5683
|
for (var i = 0; i < newValue.length; i++) {
|
|
5682
|
-
Array.prototype[dFunc].apply(prop, [newValue[i]]);
|
|
5683
|
-
var model_1 = getArrayModel(keyString + (prop.length - 1), newValue[i], !this.controlParent, dFunc);
|
|
5684
|
-
this.serverDataBind(model_1, newValue[i], false, dFunc);
|
|
5684
|
+
Array.prototype["" + dFunc].apply(prop, [newValue[parseInt(i.toString(), 10)]]);
|
|
5685
|
+
var model_1 = getArrayModel(keyString + (prop.length - 1), newValue[parseInt(i.toString(), 10)], !this.controlParent, dFunc);
|
|
5686
|
+
this.serverDataBind(model_1, newValue[parseInt(i.toString(), 10)], false, dFunc);
|
|
5685
5687
|
}
|
|
5686
5688
|
break;
|
|
5687
5689
|
case 'pop':
|
|
5688
|
-
Array.prototype[dFunc].apply(prop);
|
|
5690
|
+
Array.prototype["" + dFunc].apply(prop);
|
|
5689
5691
|
// eslint-disable-next-line
|
|
5690
5692
|
var model = getArrayModel(keyString + prop.length, null, !this.controlParent, dFunc);
|
|
5691
5693
|
this.serverDataBind(model, { ejsAction: 'pop' }, false, dFunc);
|
|
@@ -5706,10 +5708,10 @@ function getArrayModel(keyString, value, isControlParent, arrayFunction) {
|
|
|
5706
5708
|
var modelObject = keyString;
|
|
5707
5709
|
if (isControlParent) {
|
|
5708
5710
|
modelObject = {};
|
|
5709
|
-
modelObject[keyString] = value;
|
|
5711
|
+
modelObject["" + keyString] = value;
|
|
5710
5712
|
if (value && typeof value === 'object') {
|
|
5711
5713
|
var action = 'ejsAction';
|
|
5712
|
-
modelObject[keyString][action] = arrayFunction;
|
|
5714
|
+
modelObject["" + keyString]["" + action] = arrayFunction;
|
|
5713
5715
|
}
|
|
5714
5716
|
}
|
|
5715
5717
|
return modelObject;
|
|
@@ -5850,14 +5852,14 @@ function Event$1() {
|
|
|
5850
5852
|
return function (target, key) {
|
|
5851
5853
|
var eventDescriptor = {
|
|
5852
5854
|
set: function (newValue) {
|
|
5853
|
-
var oldValue = this.properties[key];
|
|
5855
|
+
var oldValue = this.properties["" + key];
|
|
5854
5856
|
if (oldValue !== newValue) {
|
|
5855
5857
|
var finalContext = getParentContext(this, key);
|
|
5856
5858
|
if (isUndefined(oldValue) === false) {
|
|
5857
5859
|
finalContext.context.removeEventListener(finalContext.prefix, oldValue);
|
|
5858
5860
|
}
|
|
5859
5861
|
finalContext.context.addEventListener(finalContext.prefix, newValue);
|
|
5860
|
-
this.properties[key] = newValue;
|
|
5862
|
+
this.properties["" + key] = newValue;
|
|
5861
5863
|
}
|
|
5862
5864
|
},
|
|
5863
5865
|
get: propertyGetter(undefined, key),
|
|
@@ -5973,7 +5975,7 @@ function getBuilderProperties(component) {
|
|
|
5973
5975
|
};
|
|
5974
5976
|
}
|
|
5975
5977
|
};
|
|
5976
|
-
for (var _b = 0, _c = component.prototype.propList[key]; _b < _c.length; _b++) {
|
|
5978
|
+
for (var _b = 0, _c = component.prototype.propList["" + key]; _b < _c.length; _b++) {
|
|
5977
5979
|
var prop = _c[_b];
|
|
5978
5980
|
_loop_1(prop);
|
|
5979
5981
|
}
|
|
@@ -6306,7 +6308,9 @@ var Animation = /** @__PURE__ @class */ (function (_super) {
|
|
|
6306
6308
|
function rippleEffect(element, rippleOptions, done) {
|
|
6307
6309
|
var rippleModel = getRippleModel(rippleOptions);
|
|
6308
6310
|
if (rippleModel.rippleFlag === false || (rippleModel.rippleFlag === undefined && !isRippleEnabled)) {
|
|
6309
|
-
return (function () {
|
|
6311
|
+
return (function () {
|
|
6312
|
+
// do nothing.
|
|
6313
|
+
});
|
|
6310
6314
|
}
|
|
6311
6315
|
element.setAttribute('data-ripple', 'true');
|
|
6312
6316
|
EventHandler.add(element, 'mousedown', rippleHandler, { parent: element, rippleOptions: rippleModel });
|
|
@@ -6450,11 +6454,15 @@ function enableRipple(isRipple) {
|
|
|
6450
6454
|
}
|
|
6451
6455
|
/**
|
|
6452
6456
|
* Defines the Modes of Global animation.
|
|
6457
|
+
*
|
|
6453
6458
|
* @private
|
|
6454
6459
|
*/
|
|
6455
6460
|
var animationMode = '';
|
|
6456
6461
|
/**
|
|
6457
6462
|
* Method for set the Global animation modes for Syncfusion Blazor components.
|
|
6463
|
+
*
|
|
6464
|
+
* @param {string} value - Specifies the animation mode.
|
|
6465
|
+
* @returns {void}
|
|
6458
6466
|
*/
|
|
6459
6467
|
function setGlobalAnimation(value) {
|
|
6460
6468
|
animationMode = value;
|
|
@@ -6486,11 +6494,11 @@ var ModuleLoader = /** @__PURE__ @class */ (function () {
|
|
|
6486
6494
|
this.clearUnusedModule(requiredModules);
|
|
6487
6495
|
}
|
|
6488
6496
|
for (var i = 0; i < reqLength; i++) {
|
|
6489
|
-
var modl = requiredModules[i];
|
|
6497
|
+
var modl = requiredModules[parseInt(i.toString(), 10)];
|
|
6490
6498
|
for (var _i = 0, moduleList_1 = moduleList; _i < moduleList_1.length; _i++) {
|
|
6491
6499
|
var module = moduleList_1[_i];
|
|
6492
6500
|
var modName = modl.member;
|
|
6493
|
-
if (module.prototype.getModuleName() === modl.member && !this.isModuleLoaded(modName)) {
|
|
6501
|
+
if (module && module.prototype.getModuleName() === modl.member && !this.isModuleLoaded(modName)) {
|
|
6494
6502
|
var moduleObject = createInstance(module, modl.args);
|
|
6495
6503
|
var memberName = this.getMemberName(modName);
|
|
6496
6504
|
if (modl.isProperty) {
|
|
@@ -6598,10 +6606,10 @@ var ChildProperty = /** @__PURE__ @class */ (function () {
|
|
|
6598
6606
|
*/
|
|
6599
6607
|
ChildProperty.prototype.updateChange = function (val, propName) {
|
|
6600
6608
|
if (val === true) {
|
|
6601
|
-
this.parentObj.childChangedProperties[propName] = val;
|
|
6609
|
+
this.parentObj.childChangedProperties["" + propName] = val;
|
|
6602
6610
|
}
|
|
6603
6611
|
else {
|
|
6604
|
-
delete this.parentObj.childChangedProperties[propName];
|
|
6612
|
+
delete this.parentObj.childChangedProperties["" + propName];
|
|
6605
6613
|
}
|
|
6606
6614
|
if (this.parentObj.updateChange) {
|
|
6607
6615
|
this.parentObj.updateChange(val, this.parentObj.propName);
|
|
@@ -6689,8 +6697,8 @@ var ChildProperty = /** @__PURE__ @class */ (function () {
|
|
|
6689
6697
|
if (!restrictServerDataBind) {
|
|
6690
6698
|
this.serverDataBind(key, newValue, true);
|
|
6691
6699
|
}
|
|
6692
|
-
this.oldProperties[key] = oldValue;
|
|
6693
|
-
this.changedProperties[key] = newValue;
|
|
6700
|
+
this.oldProperties["" + key] = oldValue;
|
|
6701
|
+
this.changedProperties["" + key] = newValue;
|
|
6694
6702
|
this.updateChange(true, this.propName);
|
|
6695
6703
|
this.finalUpdate();
|
|
6696
6704
|
this.updateTimeOut();
|
|
@@ -6706,19 +6714,19 @@ var ChildProperty = /** @__PURE__ @class */ (function () {
|
|
|
6706
6714
|
parent_1 = newChanges;
|
|
6707
6715
|
for (var i = 0; i < complexKeys.length; i++) {
|
|
6708
6716
|
var isFinal = i === complexKeys.length - 1;
|
|
6709
|
-
parent_1[complexKeys[i]] = isFinal ? value : {};
|
|
6710
|
-
parent_1 = isFinal ? parent_1 : parent_1[complexKeys[i]];
|
|
6717
|
+
parent_1[complexKeys[parseInt(i.toString(), 10)]] = isFinal ? value : {};
|
|
6718
|
+
parent_1 = isFinal ? parent_1 : parent_1[complexKeys[parseInt(i.toString(), 10)]];
|
|
6711
6719
|
}
|
|
6712
6720
|
}
|
|
6713
6721
|
else {
|
|
6714
|
-
newChanges[parentKey] = {};
|
|
6715
|
-
parent_1 = newChanges[parentKey];
|
|
6716
|
-
newChanges[parentKey][key] = value;
|
|
6722
|
+
newChanges["" + parentKey] = {};
|
|
6723
|
+
parent_1 = newChanges["" + parentKey];
|
|
6724
|
+
newChanges["" + parentKey]["" + key] = value;
|
|
6717
6725
|
}
|
|
6718
6726
|
/* istanbul ignore next */
|
|
6719
6727
|
if (this.isParentArray) {
|
|
6720
6728
|
var actionProperty = 'ejsAction';
|
|
6721
|
-
parent_1[actionProperty] = action ? action : 'none';
|
|
6729
|
+
parent_1["" + actionProperty] = action ? action : 'none';
|
|
6722
6730
|
}
|
|
6723
6731
|
this.controlParent.serverDataBind(newChanges);
|
|
6724
6732
|
}
|
|
@@ -6743,43 +6751,48 @@ var ChildProperty = /** @__PURE__ @class */ (function () {
|
|
|
6743
6751
|
return ChildProperty;
|
|
6744
6752
|
}());
|
|
6745
6753
|
|
|
6754
|
+
var componentList = ['grid', 'pivotview', 'treegrid', 'spreadsheet', 'rangeNavigator', 'DocumentEditor', 'listbox', 'inplaceeditor', 'PdfViewer', 'richtexteditor', 'DashboardLayout', 'chart', 'stockChart', 'circulargauge', 'diagram', 'heatmap', 'lineargauge', 'maps', 'slider', 'smithchart', 'barcode', 'sparkline', 'treemap', 'bulletChart', 'kanban', 'daterangepicker', 'schedule', 'gantt', 'signature', 'query-builder', 'drop-down-tree', 'carousel', 'filemanager', 'uploader', 'accordion', 'tab', 'treeview'];
|
|
6746
6755
|
var bypassKey = [115, 121, 110, 99, 102, 117, 115, 105,
|
|
6747
6756
|
111, 110, 46, 105, 115, 76, 105, 99, 86, 97, 108,
|
|
6748
6757
|
105, 100, 97, 116, 101, 100];
|
|
6758
|
+
var accountURL;
|
|
6749
6759
|
/**
|
|
6750
6760
|
* License validation module
|
|
6761
|
+
*
|
|
6751
6762
|
* @private
|
|
6752
6763
|
*/
|
|
6753
6764
|
var LicenseValidator = /** @__PURE__ @class */ (function () {
|
|
6754
6765
|
function LicenseValidator(key) {
|
|
6755
6766
|
this.isValidated = false;
|
|
6756
|
-
this.
|
|
6767
|
+
this.isLicensed = true;
|
|
6768
|
+
this.version = '20.4';
|
|
6757
6769
|
this.platform = /JavaScript|ASPNET|ASPNETCORE|ASPNETMVC|FileFormats/i;
|
|
6758
6770
|
this.errors = {
|
|
6759
|
-
noLicense: 'This application was built using a trial version of Syncfusion Essential Studio.' +
|
|
6760
|
-
'
|
|
6761
|
-
|
|
6762
|
-
'
|
|
6763
|
-
|
|
6764
|
-
|
|
6765
|
-
|
|
6766
|
-
'href="https://help.syncfusion.com/common/essential-studio/licensing/licensing-errors#trial-expired">help topic</a> for more information.',
|
|
6767
|
-
versionMismatched: 'The included Syncfusion license (v##LicenseVersion) is invalid for version ' +
|
|
6768
|
-
'##Requireversion. Please refer to this <a class="e-license" ' +
|
|
6769
|
-
'href="https://help.syncfusion.com/es/licensing/version-mismatch/">help topic</a> for more information.',
|
|
6770
|
-
platformMismatched: 'The included Syncfusion license is invalid (Platform mismatch). Please refer' +
|
|
6771
|
-
' to this <a class="e-license" ' +
|
|
6772
|
-
'href="https://help.syncfusion.com/common/essential-studio/licensing/licensing-errors#platform-mismatch">help topic</a> for more information.',
|
|
6773
|
-
invalidKey: 'The included Syncfusion license is invalid. Please refer to this ' +
|
|
6774
|
-
'<a class="e-license" ' +
|
|
6775
|
-
'href="https://help.syncfusion.com/common/essential-studio/licensing/licensing-errors#invalid-key">help topic</a> for more information.'
|
|
6771
|
+
noLicense: '<span>This application was built using a trial version of Syncfusion Essential Studio.' +
|
|
6772
|
+
' You should include the valid license key to remove the license validation message permanently.</span>',
|
|
6773
|
+
trailExpired: '<span>This application was built using a trial version of Syncfusion Essential Studio.' +
|
|
6774
|
+
' You should include the valid license key to remove the license validation message permanently.</span>',
|
|
6775
|
+
versionMismatched: '<span>The included Syncfusion license key is invalid.</span>',
|
|
6776
|
+
platformMismatched: '<span>The included Syncfusion license key is invalid.</span>',
|
|
6777
|
+
invalidKey: '<span>The included Syncfusion license key is invalid.</span>'
|
|
6776
6778
|
};
|
|
6777
6779
|
/**
|
|
6778
6780
|
* To manage licensing operation.
|
|
6779
6781
|
*/
|
|
6780
6782
|
this.manager = (function () {
|
|
6781
6783
|
var licKey = null;
|
|
6784
|
+
/**
|
|
6785
|
+
* Sets the license key.
|
|
6786
|
+
*
|
|
6787
|
+
* @param {string} key - Specifies the license key.
|
|
6788
|
+
* @returns {void}
|
|
6789
|
+
*/
|
|
6782
6790
|
function set(key) { licKey = key; }
|
|
6791
|
+
/**
|
|
6792
|
+
* Gets the license key.
|
|
6793
|
+
*
|
|
6794
|
+
* @returns {string} -Gets the license key.
|
|
6795
|
+
*/
|
|
6783
6796
|
function get() { return licKey; }
|
|
6784
6797
|
return {
|
|
6785
6798
|
setKey: set,
|
|
@@ -6791,6 +6804,11 @@ var LicenseValidator = /** @__PURE__ @class */ (function () {
|
|
|
6791
6804
|
*/
|
|
6792
6805
|
this.npxManager = (function () {
|
|
6793
6806
|
var npxLicKey = 'npxKeyReplace';
|
|
6807
|
+
/**
|
|
6808
|
+
* Gets the license key.
|
|
6809
|
+
*
|
|
6810
|
+
* @returns {string} - Gets the license key.
|
|
6811
|
+
*/
|
|
6794
6812
|
function get() { return npxLicKey; }
|
|
6795
6813
|
return {
|
|
6796
6814
|
getKey: get
|
|
@@ -6802,8 +6820,13 @@ var LicenseValidator = /** @__PURE__ @class */ (function () {
|
|
|
6802
6820
|
* To validate the provided license key.
|
|
6803
6821
|
*/
|
|
6804
6822
|
LicenseValidator.prototype.validate = function () {
|
|
6823
|
+
var contentKey = [115, 121, 110, 99, 102, 117, 115, 105, 111, 110, 46,
|
|
6824
|
+
108, 105, 99, 101, 110, 115, 101, 67, 111, 110, 116, 101, 110, 116];
|
|
6825
|
+
var URLKey = [115, 121, 110, 99, 102, 117, 115, 105, 111, 110, 46,
|
|
6826
|
+
99, 108, 97, 105, 109, 65, 99, 99, 111, 117, 110, 116, 85, 82, 76];
|
|
6805
6827
|
if (!this.isValidated && (containerObject && !getValue(convertToChar(bypassKey), containerObject) && !getValue('Blazor', containerObject))) {
|
|
6806
6828
|
var validateMsg = void 0;
|
|
6829
|
+
var validateURL = void 0;
|
|
6807
6830
|
if ((this.manager && this.manager.getKey()) || (this.npxManager && this.npxManager.getKey() !== 'npxKeyReplace')) {
|
|
6808
6831
|
var result = this.getInfoFromKey();
|
|
6809
6832
|
if (result && result.length) {
|
|
@@ -6834,30 +6857,28 @@ var LicenseValidator = /** @__PURE__ @class */ (function () {
|
|
|
6834
6857
|
}
|
|
6835
6858
|
}
|
|
6836
6859
|
else {
|
|
6837
|
-
|
|
6860
|
+
var licenseContent = getValue(convertToChar(contentKey), containerObject);
|
|
6861
|
+
validateURL = getValue(convertToChar(URLKey), containerObject);
|
|
6862
|
+
if (licenseContent && licenseContent !== '') {
|
|
6863
|
+
validateMsg = licenseContent;
|
|
6864
|
+
}
|
|
6865
|
+
else {
|
|
6866
|
+
validateMsg = this.errors.noLicense;
|
|
6867
|
+
}
|
|
6838
6868
|
}
|
|
6839
6869
|
if (validateMsg && typeof document !== 'undefined' && !isNullOrUndefined(document)) {
|
|
6870
|
+
accountURL = (validateURL && validateURL !== '') ? validateURL : "https://www.syncfusion.com/account/claim-license-key?pl=SmF2YVNjcmlwdA==&vs=MjAuNA==";
|
|
6840
6871
|
var errorDiv = createElement('div', {
|
|
6841
|
-
innerHTML: validateMsg +
|
|
6842
|
-
'<span id="license-banner-event" class="e-license-banner" >' +
|
|
6843
|
-
'<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20">' +
|
|
6844
|
-
'<line x1="5" y1="5" x2="15" y2="15" stroke="yellow" stroke-width="2.5" ' +
|
|
6845
|
-
'stroke-miterlimit="10" stroke-linecap="round"></line><line x1="15" y1="5" ' +
|
|
6846
|
-
'x2="5" y2="15" stroke="yellow" stroke-width="2.5" stroke-linecap="round" ' +
|
|
6847
|
-
'stroke-miterlimit="10"></line></svg></span>',
|
|
6848
|
-
styles: 'position:fixed;top:0;left:0;right:0;font-family:"Segoe UI";font-size:16px;' +
|
|
6849
|
-
'background:repeating-linear-gradient(45deg,#d70f0f,#d70f0f 10px,#e12121 10px,#e12121 17px);' +
|
|
6850
|
-
'color:#ffffff;z-index:999999999;text-align:center;padding:10px 50px 10px 25px;'
|
|
6872
|
+
innerHTML: "<img src='data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzE5OV80KSI+CjxwYXRoIGQ9Ik0xMiAyMUMxNi45NzA2IDIxIDIxIDE2Ljk3MDYgMjEgMTJDMjEgNy4wMjk0NCAxNi45NzA2IDMgMTIgM0M3LjAyOTQ0IDMgMyA3LjAyOTQ0IDMgMTJDMyAxNi45NzA2IDcuMDI5NDQgMjEgMTIgMjFaIiBzdHJva2U9IiM3MzczNzMiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xMS4yNSAxMS4yNUgxMlYxNi41SDEyLjc1IiBmaWxsPSIjNjE2MDYzIi8+CjxwYXRoIGQ9Ik0xMS4yNSAxMS4yNUgxMlYxNi41SDEyLjc1IiBzdHJva2U9IiM3MzczNzMiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xMS44MTI1IDlDMTIuNDMzOCA5IDEyLjkzNzUgOC40OTYzMiAxMi45Mzc1IDcuODc1QzEyLjkzNzUgNy4yNTM2OCAxMi40MzM4IDYuNzUgMTEuODEyNSA2Ljc1QzExLjE5MTIgNi43NSAxMC42ODc1IDcuMjUzNjggMTAuNjg3NSA3Ljg3NUMxMC42ODc1IDguNDk2MzIgMTEuMTkxMiA5IDExLjgxMjUgOVoiIGZpbGw9IiM3MzczNzMiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xOTlfNCI+CjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K' style=\"top: 6px;\n position: absolute;\n left: 16px;\n width: 24px;\n height: 24px;\"/>" + validateMsg + ' ' + '<a style="text-decoration: none;color: #0D6EFD;font-weight: 500;" href=' + accountURL + '>Claim your free account</a>'
|
|
6851
6873
|
});
|
|
6852
|
-
errorDiv.setAttribute('
|
|
6874
|
+
errorDiv.setAttribute('style', "position: fixed;\n top: 10px;\n left: 10px;\n right: 10px;\n font-size: 14px;\n background: #EEF2FF;\n color: #222222;\n z-index: 999999999;\n text-align: left;\n border: 1px solid #EEEEEE;\n padding: 10px 11px 10px 50px;\n border-radius: 8px;\n font-family: Helvetica Neue, Helvetica, Arial;");
|
|
6853
6875
|
document.body.appendChild(errorDiv);
|
|
6854
|
-
|
|
6855
|
-
document.getElementById('js-licensing').remove();
|
|
6856
|
-
});
|
|
6876
|
+
this.isLicensed = false;
|
|
6857
6877
|
}
|
|
6858
6878
|
this.isValidated = true;
|
|
6859
6879
|
setValue(convertToChar(bypassKey), this.isValidated, containerObject);
|
|
6860
6880
|
}
|
|
6881
|
+
return this.isLicensed;
|
|
6861
6882
|
};
|
|
6862
6883
|
LicenseValidator.prototype.getDecryptedData = function (key) {
|
|
6863
6884
|
try {
|
|
@@ -6869,6 +6890,8 @@ var LicenseValidator = /** @__PURE__ @class */ (function () {
|
|
|
6869
6890
|
};
|
|
6870
6891
|
/**
|
|
6871
6892
|
* Get license information from key.
|
|
6893
|
+
*
|
|
6894
|
+
* @returns {IValidator} - Get license information from key.
|
|
6872
6895
|
*/
|
|
6873
6896
|
LicenseValidator.prototype.getInfoFromKey = function () {
|
|
6874
6897
|
try {
|
|
@@ -6902,17 +6925,17 @@ var LicenseValidator = /** @__PURE__ @class */ (function () {
|
|
|
6902
6925
|
k = 0;
|
|
6903
6926
|
}
|
|
6904
6927
|
var c = decodeStr.charCodeAt(i);
|
|
6905
|
-
buffr += String.fromCharCode(c ^ (pkey[k] >> 16));
|
|
6928
|
+
buffr += String.fromCharCode(c ^ (pkey[parseInt(k.toString(), 10)] >> 16));
|
|
6906
6929
|
}
|
|
6907
6930
|
}
|
|
6908
6931
|
else {
|
|
6909
6932
|
var charKey = decodeStr[decodeStr.length - 1];
|
|
6910
6933
|
var decryptedKey = [];
|
|
6911
6934
|
for (var i = 0; i < decodeStr.length; i++) {
|
|
6912
|
-
decryptedKey[i] = decodeStr[i].charCodeAt(0) - charKey.charCodeAt(0);
|
|
6935
|
+
decryptedKey[parseInt(i.toString(), 10)] = decodeStr[parseInt(i.toString(), 10)].charCodeAt(0) - charKey.charCodeAt(0);
|
|
6913
6936
|
}
|
|
6914
6937
|
for (var i = 0; i < decryptedKey.length; i++) {
|
|
6915
|
-
buffr += String.fromCharCode(decryptedKey[i]);
|
|
6938
|
+
buffr += String.fromCharCode(decryptedKey[parseInt(i.toString(), 10)]);
|
|
6916
6939
|
}
|
|
6917
6940
|
}
|
|
6918
6941
|
if (this.platform.test(buffr)) {
|
|
@@ -6943,6 +6966,12 @@ var LicenseValidator = /** @__PURE__ @class */ (function () {
|
|
|
6943
6966
|
return LicenseValidator;
|
|
6944
6967
|
}());
|
|
6945
6968
|
var licenseValidator = new LicenseValidator();
|
|
6969
|
+
/**
|
|
6970
|
+
* Converts the given number to characters.
|
|
6971
|
+
*
|
|
6972
|
+
* @param {number} cArr - Specifies the license key as number.
|
|
6973
|
+
* @returns {string}
|
|
6974
|
+
*/
|
|
6946
6975
|
function convertToChar(cArr) {
|
|
6947
6976
|
var ret = '';
|
|
6948
6977
|
for (var _i = 0, cArr_1 = cArr; _i < cArr_1.length; _i++) {
|
|
@@ -6955,6 +6984,7 @@ function convertToChar(cArr) {
|
|
|
6955
6984
|
* To set license key.
|
|
6956
6985
|
*
|
|
6957
6986
|
* @param {string} key - license key
|
|
6987
|
+
* @returns {void}
|
|
6958
6988
|
*/
|
|
6959
6989
|
function registerLicense(key) {
|
|
6960
6990
|
licenseValidator = new LicenseValidator(key);
|
|
@@ -6963,11 +6993,21 @@ var validateLicense = function (key) {
|
|
|
6963
6993
|
if (key) {
|
|
6964
6994
|
registerLicense(key);
|
|
6965
6995
|
}
|
|
6966
|
-
licenseValidator.validate();
|
|
6996
|
+
return licenseValidator.validate();
|
|
6967
6997
|
};
|
|
6968
6998
|
var getVersion = function () {
|
|
6969
6999
|
return licenseValidator.version;
|
|
6970
7000
|
};
|
|
7001
|
+
// Method for create overlay over the sample
|
|
7002
|
+
var createLicenseOverlay = function () {
|
|
7003
|
+
var bannerTemplate = "\n <div style=\"\n position: fixed;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n z-index: 99999;\n \">\n <div style=\"\n background: #FFFFFF;\n height: 455px;\n width: 840px;\n font-family: Helvetica Neue, Helvetica, Arial;\n color: #000000;\n box-shadow: 0px 4.8px 14.4px rgb(0 0 0 / 18%), 0px 25.6px 57.6px rgb(0 0 0 / 22%);\n display: block;\n margin: 8% auto;\n border-radius: 20px;\n \">\n <div style=\"\n position: absolute;\nwidth: 838px;\nheight: 62px;\nbackground-color: #F9F9F9;\nborder: 1px solid #EEEEEE;\nborder-top-left-radius: 20px;\nborder-top-right-radius: 20px;\n\">\n <img src=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQ2IiBoZWlnaHQ9IjMyIiB2aWV3Qm94PSIwIDAgMTQ2IDMyIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNNDAuNTk2NSAxNS4wMDc4SDMyLjQyNUMzMS41NTU3IDE1LjAwNzggMzAuOTAzNyAxNS4xODEyIDMwLjUxMjUgMTUuNDg0NkMzMC4xMjEzIDE1LjgzMTQgMjkuOTA0IDE2LjMwODIgMjkuOTA0IDE3LjA0NTFDMjkuOTA0IDE3LjYwODYgMzAuMDc3OCAxOC4wNDIxIDMwLjQyNTYgMTguMzAyMkMzMC43NzMzIDE4LjYwNTYgMzEuMjk0OSAxOC43MzU2IDMxLjk5MDMgMTguNzM1NkgzNi4zMzY5QzM4LjExODkgMTguNzM1NiAzOS40MjI5IDE5LjA4MjQgNDAuMTYxOCAxOS43MzI2QzQwLjk0NDIgMjAuNDI2MiA0MS4yOTE5IDIxLjU1MzIgNDEuMjkxOSAyMy4xMTM3QzQxLjI5MTkgMjQuNzE3NiA0MC44NTcyIDI1Ljg4OCAzOS45ODc5IDI2LjY2ODJDMzkuMTE4NiAyNy40MDUxIDM3LjcyNzcgMjcuNzk1MyAzNS44NTg3IDI3Ljc5NTNIMjcuMDc4N1YyNS4wMjFIMzUuMzM3MkMzNi4yOTM0IDI1LjAyMSAzNi45NDU0IDI0Ljg5MSAzNy4zMzY2IDI0LjYzMDlDMzcuNzI3NyAyNC4zNzA4IDM3LjkwMTYgMjMuODk0IDM3LjkwMTYgMjMuMjg3MUMzNy45MDE2IDIyLjYzNjkgMzcuNzI3NyAyMi4xNjAxIDM3LjM4IDIxLjlDMzcuMDMyMyAyMS42Mzk5IDM2LjQyMzggMjEuNDY2NSAzNS41NTQ1IDIxLjQ2NjVIMzEuNjQyNkMyOS44NjA1IDIxLjQ2NjUgMjguNTEzMSAyMS4xMTk4IDI3LjY4NzMgMjAuMzgyOEMyNi44NjE0IDE5LjY0NTkgMjYuNDI2OCAxOC41MTg5IDI2LjQyNjggMTcuMDAxN0MyNi40MjY4IDE1LjM1NDUgMjYuODYxNCAxNC4xNDA4IDI3LjczMDcgMTMuMzYwNkMyOC42IDEyLjU4MDMgMjkuOTkwOSAxMi4yMzM1IDMxLjkwMzQgMTIuMjMzNUg0MC41OTY1VjE1LjAwNzhaIiBmaWxsPSIjMzU0M0E4Ii8+CjxwYXRoIGQ9Ik00OC4wNzI3IDI1LjI4MTFINTAuNTA2OFYxNi4zOTQ5SDUzLjU0OTNWMjcuNTM1MkM1My41NDkzIDI5LjA1MjQgNTMuMjAxNiAzMC4xNzk0IDUyLjUwNjIgMzAuOTE2M0M1MS44MTA3IDMxLjY1MzIgNTAuNzI0MSAzMiA0OS4yNDYzIDMySDQzLjMzNVYyOS42NTkySDQ4LjcyNDdDNDkuMjg5NyAyOS42NTkyIDQ5Ljc2NzkgMjkuNTI5MiA1MC4wNzIxIDI5LjIyNThDNTAuMzc2NCAyOC45NjU3IDUwLjU1MDIgMjguNTMyMiA1MC41NTAyIDI4LjAxMlYyNy44Mzg2SDQ3Ljg5ODlDNDYuMjAzNyAyNy44Mzg2IDQ0Ljk0MzIgMjcuNDkxOSA0NC4yNDc4IDI2Ljg0MTZDNDMuNTA4OSAyNi4xNDgxIDQzLjE2MTEgMjUuMDY0NCA0My4xNjExIDIzLjQ2MDVWMTYuMzk0OUg0Ni4xNjAyVjIzLjIwMDVDNDYuMTYwMiAyNC4wNjc0IDQ2LjI5MDYgMjQuNjMwOSA0Ni41NTE0IDI0Ljg5MUM0Ni43MjUzIDI1LjE1MTEgNDcuMjQ2OSAyNS4yODExIDQ4LjA3MjcgMjUuMjgxMVoiIGZpbGw9IiMzNTQzQTgiLz4KPHBhdGggZD0iTTU1Ljg5NjUgMTYuMzk0OUg2MS41OTA0QzYzLjMyOTEgMTYuMzk0OSA2NC41NDYxIDE2LjY5ODMgNjUuMjg1IDE3LjM0ODVDNjYuMDIzOSAxNy45OTg4IDY2LjM3MTYgMTkuMDgyNCA2Ni4zNzE2IDIwLjU1NjNWMjcuNzk1M0g2My4zMjkxVjIwLjk0NjRDNjMuMzI5MSAyMC4wNzk0IDYzLjE5ODcgMTkuNTE1OSA2Mi45Mzc5IDE5LjI5OTJDNjIuNjc3MSAxOS4wMzkxIDYyLjE1NTUgMTguOTA5MSA2MS4zMjk3IDE4LjkwOTFINTguODk1NlYyNy44Mzg2SDU1Ljg1M1YxNi4zOTQ5SDU1Ljg5NjVaIiBmaWxsPSIjMzU0M0E4Ii8+CjxwYXRoIGQ9Ik03NC45MzQyIDI1LjM2NzhINzguMTUwNlYyNy43OTUySDc0LjAyMTRDNzIuOTc4MiAyNy43OTUyIDcyLjEwODkgMjcuNjY1MiA3MS40NTcgMjcuNDkxOEM3MC44MDUgMjcuMjc1IDcwLjE5NjUgMjYuOTI4MyA2OS43MTgzIDI2LjQ1MTRDNjkuMTk2OCAyNS45MzEzIDY4Ljc2MjEgMjUuMjgxMSA2OC40NTc4IDI0LjU0NDJDNjguMTUzNiAyMy44MDcyIDY4LjAyMzIgMjIuOTgzNiA2OC4wMjMyIDIyLjE2QzY4LjAyMzIgMjEuMjkzMSA2OC4xNTM2IDIwLjQ2OTUgNjguNDU3OCAxOS42ODkyQzY4Ljc2MjEgMTguOTA5IDY5LjE1MzMgMTguMzAyMSA2OS43MTgzIDE3Ljc4MTlDNzAuMjM5OSAxNy4zMDUxIDcwLjgwNSAxNi45NTgzIDcxLjUwMDQgMTYuNzQxNkM3Mi4xOTU5IDE2LjUyNDkgNzMuMDIxNyAxNi40MzgyIDc0LjA2NDkgMTYuNDM4Mkg3OC4xOTQxVjE4LjkwOUg3NC45MzQyQzczLjQ5OTggMTguOTA5IDcyLjU0MzYgMTkuMTY5MSA3MS45Nzg1IDE5LjY0NTlDNzEuNDU2OSAyMC4xMjI3IDcxLjE1MjcgMjAuOTg5NyA3MS4xNTI3IDIyLjIwMzRDNzEuMTUyNyAyMi44OTY5IDcxLjI4MzEgMjMuNDYwNSA3MS41MDA0IDIzLjkzNzNDNzEuNzE3NyAyNC40MTQxIDcyLjA2NTUgMjQuNzYwOSA3Mi41MDAxIDI1LjA2NDNDNzIuNzE3NCAyNS4xOTQ0IDcyLjk3ODIgMjUuMjgxMSA3My4yODI1IDI1LjM2NzhDNzMuNjMwMiAyNS4zMjQ0IDc0LjE1MTggMjUuMzY3OCA3NC45MzQyIDI1LjM2NzhaIiBmaWxsPSIjMzU0M0E4Ii8+CjxwYXRoIGQ9Ik04MC44NDU2IDE4LjY0ODlINzguNjcyNFYxNi4zNTE1SDgwLjg0NTZWMTUuMTgxMUM4MC44NDU2IDE0LjAxMDggODEuMDYzIDEzLjIzMDUgODEuNDk3NiAxMi44NDA0QzgxLjkzMjMgMTIuNDUwMyA4Mi43NTgxIDEyLjIzMzUgODMuOTc1MSAxMi4yMzM1SDg2Ljg0MzhWMTQuNDAwOUg4NS40MDk1Qzg0Ljg4NzkgMTQuNDAwOSA4NC41NDAyIDE0LjQ4NzYgODQuMzIyOSAxNC42NjFDODQuMTA1NSAxNC44MzQ0IDgzLjk3NTEgMTUuMDk0NSA4My45NzUxIDE1LjQ0MTJWMTYuMzUxNUg4Ni44NDM4VjE4LjY0ODlIODMuOTc1MVYyNy43OTUzSDgwLjg0NTZWMTguNjQ4OVoiIGZpbGw9IiMzNTQzQTgiLz4KPHBhdGggZD0iTTk4LjQwNTYgMjcuNzk1M0g5Mi43MTE2QzkxLjAxNjUgMjcuNzk1MyA4OS44NDI5IDI3LjQ0ODUgODkuMDYwNSAyNi43OTgzQzg4LjMyMTYgMjYuMTQ4MSA4Ny45MzA0IDI1LjA2NDQgODcuOTMwNCAyMy41OTA2VjE2LjM5NDlIOTAuOTI5NVYyMy40MTcyQzkwLjkyOTUgMjQuMTk3NCA5MS4wNTk5IDI0LjY3NDMgOTEuMzIwNyAyNC45MzQ0QzkxLjU4MTUgMjUuMTk0NCA5Mi4xMDMxIDI1LjMyNDUgOTIuOTI4OSAyNS4zMjQ1SDk1LjM2M1YxNi4zOTQ5SDk4LjQwNTZWMjcuNzk1M1oiIGZpbGw9IiMzNTQzQTgiLz4KPHBhdGggZD0iTTEwMC42MjIgMjUuNDExMkgxMDcuMDExQzEwNy41NzcgMjUuNDExMiAxMDguMDExIDI1LjMyNDUgMTA4LjI3MiAyNS4xNTExQzEwOC41MzMgMjQuOTc3NyAxMDguNjYzIDI0LjY3NDMgMTA4LjY2MyAyNC4zMjc1QzEwOC42NjMgMjMuOTM3NCAxMDguNTMzIDIzLjY3NzMgMTA4LjI3MiAyMy40NjA1QzEwOC4wMTEgMjMuMjg3MSAxMDcuNTc3IDIzLjIwMDUgMTA3LjA1NSAyMy4yMDA1SDEwNC40NDdDMTAyLjg4MiAyMy4yMDA1IDEwMS44MzkgMjIuOTgzNyAxMDEuMzE4IDIyLjUwNjlDMTAwLjc1MiAyMi4wMzAxIDEwMC40OTIgMjEuMjA2NSAxMDAuNDkyIDE5Ljk5MjdDMTAwLjQ5MiAxOC43NzkgMTAwLjgzOSAxNy44Njg3IDEwMS40OTEgMTcuMjYxOEMxMDIuMTQzIDE2LjY5ODMgMTAzLjE4NyAxNi4zOTQ5IDEwNC41MzQgMTYuMzk0OUgxMTEuMDU0VjE4Ljc3OUgxMDUuNzA4QzEwNC44MzggMTguNzc5IDEwNC4yNzMgMTguODY1NyAxMDQuMDEyIDE4Ljk5NTdDMTAzLjc1MiAxOS4xNjkxIDEwMy42MjEgMTkuNDI5MiAxMDMuNjIxIDE5LjgxOTRDMTAzLjYyMSAyMC4xNjYxIDEwMy43NTIgMjAuNDI2MiAxMDMuOTY5IDIwLjU5OTZDMTA0LjE4NiAyMC43NzMgMTA0LjU3NyAyMC44NTk3IDEwNS4wNTYgMjAuODU5N0gxMDcuNzk0QzEwOS4wNTQgMjAuODU5NyAxMTAuMDExIDIxLjE2MzEgMTEwLjY2MyAyMS43MjY2QzExMS4zMTUgMjIuMjkwMiAxMTEuNjYyIDIzLjE1NzEgMTExLjY2MiAyNC4yNDA4QzExMS42NjIgMjUuMjgxMSAxMTEuMzU4IDI2LjE0ODEgMTEwLjc5MyAyNi43OTgzQzExMC4yMjggMjcuNDQ4NSAxMDkuNDQ2IDI3Ljc5NTMgMTA4LjUzMyAyNy43OTUzSDEwMC43MDlWMjUuNDExMkgxMDAuNjIyWiIgZmlsbD0iIzM1NDNBOCIvPgo8cGF0aCBkPSJNMTE2LjU3NCAxNS4wOTQ0SDExMy40MDFWMTIuMjc2OUgxMTYuNTc0VjE1LjA5NDRaTTExNi41NzQgMjcuNzk1M0gxMTMuNDAxVjE2LjM5NDlIMTE2LjU3NFYyNy43OTUzWiIgZmlsbD0iIzM1NDNBOCIvPgo8cGF0aCBkPSJNMTMwLjMwOSAyMi4xMTY3QzEzMC4zMDkgMjMuODkzOSAxMjkuNzQ0IDI1LjMyNDQgMTI4LjY1NyAyNi40MDgxQzEyNy41NzEgMjcuNDkxOCAxMjYuMDkzIDI4LjAxMiAxMjQuMjI0IDI4LjAxMkMxMjIuMzU1IDI4LjAxMiAxMjAuODc3IDI3LjQ5MTggMTE5Ljc5IDI2LjQwODFDMTE4LjcwNCAyNS4zMjQ0IDExOC4xMzkgMjMuODkzOSAxMTguMTM5IDIyLjExNjdDMTE4LjEzOSAyMC4zMzk0IDExOC43MDQgMTguOTA5IDExOS43OSAxNy44MjUzQzEyMC44NzcgMTYuNzQxNiAxMjIuMzk4IDE2LjIyMTQgMTI0LjIyNCAxNi4yMjE0QzEyNi4wNDkgMTYuMjIxNCAxMjcuNTI3IDE2Ljc0MTYgMTI4LjY1NyAxNy44MjUzQzEyOS43NDQgMTguODY1NiAxMzAuMzA5IDIwLjI5NjEgMTMwLjMwOSAyMi4xMTY3Wk0xMjEuMjY4IDIyLjExNjdDMTIxLjI2OCAyMy4yMDA0IDEyMS41MjkgMjQuMDY3MyAxMjIuMDUxIDI0LjY3NDJDMTIyLjU3MiAyNS4yODExIDEyMy4yNjggMjUuNTg0NSAxMjQuMTggMjUuNTg0NUMxMjUuMDkzIDI1LjU4NDUgMTI1Ljc4OSAyNS4yODExIDEyNi4zMSAyNC42NzQyQzEyNi44MzIgMjQuMDY3MyAxMjcuMDkzIDIzLjIwMDQgMTI3LjA5MyAyMi4xMTY3QzEyNy4wOTMgMjEuMDMzIDEyNi44MzIgMjAuMTY2MSAxMjYuMzEgMTkuNjAyNUMxMjUuNzg5IDE4Ljk5NTcgMTI1LjA5MyAxOC42OTIyIDEyNC4xMzcgMTguNjkyMkMxMjMuMjI0IDE4LjY5MjIgMTIyLjUyOSAxOC45OTU3IDEyMi4wMDcgMTkuNjAyNUMxMjEuNTI5IDIwLjE2NjEgMTIxLjI2OCAyMS4wMzMgMTIxLjI2OCAyMi4xMTY3WiIgZmlsbD0iIzM1NDNBOCIvPgo8cGF0aCBkPSJNMTMxLjc4NyAxNi4zOTQ5SDEzNy40ODFDMTM5LjIxOSAxNi4zOTQ5IDE0MC40MzYgMTYuNjk4MyAxNDEuMTc1IDE3LjM0ODVDMTQxLjkxNCAxNy45OTg4IDE0Mi4yNjIgMTkuMDgyNCAxNDIuMjYyIDIwLjU1NjNWMjcuNzk1M0gxMzkuMjE5VjIwLjk0NjRDMTM5LjIxOSAyMC4wNzk0IDEzOS4wODkgMTkuNTE1OSAxMzguODI4IDE5LjI5OTJDMTM4LjU2NyAxOS4wMzkxIDEzOC4wNDYgMTguOTA5MSAxMzcuMjIgMTguOTA5MUgxMzQuNzg2VjI3LjgzODZIMTMxLjc0M1YxNi4zOTQ5SDEzMS43ODdaIiBmaWxsPSIjMzU0M0E4Ii8+CjxwYXRoIGQ9Ik03LjEyODMxIDMuNzM3NDNIMFYxMC44NDY0SDcuMTI4MzFWMy43Mzc0M1oiIGZpbGw9IiMzNTQzQTgiLz4KPHBhdGggZD0iTTIzLjI1MTMgLTIuMTU3MjVlLTA1TDE4LjU1MTMgNS41MTY4NUwyNC4wODMxIDEwLjIwNDFMMjguNzgzMSA0LjY4NzI1TDIzLjI1MTMgLTIuMTU3MjVlLTA1WiIgZmlsbD0iI0ZGODYwMCIvPgo8cGF0aCBkPSJNMTUuNjA0MSAzLjczNzQzSDguNDc1ODNWMTAuODQ2NEgxNS42MDQxVjMuNzM3NDNaIiBmaWxsPSIjMzU0M0E4Ii8+CjxwYXRoIGQ9Ik03LjEyODMxIDEyLjE5MDJIMFYxOS4yOTkySDcuMTI4MzFWMTIuMTkwMloiIGZpbGw9IiMzNTQzQTgiLz4KPHBhdGggZD0iTTE1LjYwNDEgMTIuMTkwMkg4LjQ3NTgzVjE5LjI5OTJIMTUuNjA0MVYxMi4xOTAyWiIgZmlsbD0iIzM1NDNBOCIvPgo8cGF0aCBkPSJNMjQuMDc5NyAxMi4xOTAySDE2Ljk1MTRWMTkuMjk5MkgyNC4wNzk3VjEyLjE5MDJaIiBmaWxsPSIjRkY4NjAwIi8+CjxwYXRoIGQ9Ik03LjEyODMxIDIwLjY4NjNIMFYyNy43OTUzSDcuMTI4MzFWMjAuNjg2M1oiIGZpbGw9IiMzNTQzQTgiLz4KPHBhdGggZD0iTTE1LjYwNDEgMjAuNjg2M0g4LjQ3NTgzVjI3Ljc5NTNIMTUuNjA0MVYyMC42ODYzWiIgZmlsbD0iIzM1NDNBOCIvPgo8cGF0aCBkPSJNMjQuMTIzMiAyMC42ODYzSDE2Ljk5NDlWMjcuNzk1M0gyNC4xMjMyVjIwLjY4NjNaIiBmaWxsPSIjMzU0M0E4Ii8+CjxwYXRoIGQ9Ik0xNDYgMTUuODMxM0MxNDYgMTYuODcxNyAxNDUuMTc0IDE3LjY5NTMgMTQ0LjEzMSAxNy42OTUzQzE0My4wODggMTcuNjk1MyAxNDIuMjYyIDE2Ljg3MTcgMTQyLjI2MiAxNS44MzEzQzE0Mi4yNjIgMTQuNzkxIDE0My4wODggMTQuMDEwNyAxNDQuMTMxIDE0LjAxMDdDMTQ1LjEzMSAxMy45Njc0IDE0NiAxNC43OTEgMTQ2IDE1LjgzMTNaTTE0Mi45NTcgMTQuNzkxQzE0Mi42OTcgMTUuMDUxMSAxNDIuNTY2IDE1LjQ0MTIgMTQyLjU2NiAxNS44MzEzQzE0Mi41NjYgMTYuNjk4MyAxNDMuMjYyIDE3LjM5MTggMTQ0LjEzMSAxNy4zOTE4QzE0NSAxNy4zOTE4IDE0NS42OTYgMTYuNjk4MyAxNDUuNjk2IDE1LjgzMTNDMTQ1LjY5NiAxNS4wMDc3IDE0NSAxNC4yNzA4IDE0NC4xNzQgMTQuMjcwOEMxNDMuNjUzIDE0LjI3MDggMTQzLjI2MiAxNC40NDQyIDE0Mi45NTcgMTQuNzkxWk0xNDQuODcgMTYuOTE1SDE0NC40NzlMMTQzLjkxNCAxNi4wOTE0VjE2LjkxNUgxNDMuNjA5VjE0Ljc0NzZIMTQzLjk1N0MxNDQuNDM1IDE0Ljc0NzYgMTQ0LjY1MyAxNC45NjQ0IDE0NC42NTMgMTUuMzU0NUMxNDQuNjUzIDE1LjY1NzkgMTQ0LjQ3OSAxNS44NzQ3IDE0NC4xNzQgMTUuOTYxNEwxNDQuODcgMTYuOTE1Wk0xNDQuMDQ0IDE1LjY1NzlDMTQ0LjI2MSAxNS42NTc5IDE0NC4zOTIgMTUuNTI3OSAxNDQuMzkyIDE1LjM1NDVDMTQ0LjM5MiAxNS4xMzc4IDE0NC4yNjEgMTUuMDUxMSAxNDQuMDAxIDE1LjA1MTFIMTQzLjkxNFYxNS42NTc5SDE0NC4wNDRaIiBmaWxsPSIjMzU0M0E4Ii8+Cjwvc3ZnPgo=\" style=\"\n text-align: left;\n width: 146px;\n position: absolute;\n top: 14px;\n left: 31px;\n\">\n </div>\n <div style=\"\n position: relative;\n top: 80px;\n left: 32px;\n font-size: 20px;\n text-align: left;\n font-weight: 700;\n letter-spacing: 0.02em;\n font-style: normal;\n line-height: 125%;\n \">Claim your FREE account and get a key in less than a minute</div>\n <ul style=\"\n font-size: 15px;\n font-weight: 400;\n color: #333333;\n letter-spacing: 0.01em;\n position: relative;\n left: 32px;\n top: 88px;\n line-height: 180%;\n \">\n <li><span>Access to a 30-day free trial of any of our products.</span></li>\n <li><span>Access to 24x5 support by developers via the <a href=\"https://support.syncfusion.com/create\" style=\"text-decoration: none;\n color: #0D6EFD;\n font-weight: 500;\">support tickets</a>, <a href=\"https://www.syncfusion.com/forums\" style=\"text-decoration: none;\n color: #0D6EFD;\n font-weight: 500;\">forum</a>, <a href=\"https://www.syncfusion.com/feedback\" style=\"text-decoration: none;\n color: #0D6EFD;\n font-weight: 500;\">feature & feedback page</a> and chat.</span></li>\n <li><span>200+ <a href=\"https://www.syncfusion.com/succinctly-free-ebooks\" style=\"text-decoration: none;\n color: #0D6EFD;\n font-weight: 500;\">ebooks </a>on the latest technologies, industry trends, and research topics.</span>\n </li>\n <li><span>Largest collection of over 7,000 flat and wireframe icons for free with Syncfusion <a href=\"https://www.syncfusion.com/succinctly-free-ebooks\" style=\"text-decoration: none;\n color: #0D6EFD;\n font-weight: 500;\">Metro Studio.</a></span></li>\n <li><span>Free and unlimited access to Syncfusion technical <a href=\"https://www.syncfusion.com/blogs/\" style=\"text-decoration: none;\n color: #0D6EFD;\n font-weight: 500;\">blogs</a> and <a href=\"https://www.syncfusion.com/resources/techportal/whitepapers\" style=\"text-decoration: none;\n color: #0D6EFD;\n font-weight: 500;\">whitepapers.</a></span></li>\n </ul>\n <div style=\"\n font-size: 18px;\n font-weight: 700;\n position: relative;\n line-height: 125%;\n letter-spacing: 0.02em;\n top: 90px;\n left: 32px;\n \">Syncfusion is trusted by 29,000+ businesses worldwide</div>\n <img src=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODIwIiBoZWlnaHQ9IjU2IiB2aWV3Qm94PSIwIDAgODIwIDU2IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPg0KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MjcuNjE3IDIyLjU2NTlWMjQuNzIyNkM0MjYuNTU4IDI0LjM2MzggNDI1LjM5OCAyNC4xNTQ0IDQyNC40NzQgMjQuMTU0NEM0MjMuMzMzIDI0LjE1NDQgNDIyLjY5OCAyNC40OTEyIDQyMi42OTggMjUuMDk2M0M0MjIuNjk4IDI1LjQ4MjQgNDIyLjk3NiAyNS43MzgzIDQyMy43NzMgMjYuMDg1NEw0MjUuOTE3IDI3LjAxNzRDNDI3LjYzMyAyNy43NjM5IDQyOC40OTcgMjguODUzIDQyOC40OTcgMzAuMjY4MUM0MjguNDk3IDMyLjQ1MjIgNDI2LjU0NiAzMy44MyA0MjMuNDUyIDMzLjgzQzQyMi4zMjQgMzMuODMgNDIxLjAxOCAzMy42NzM2IDQxOS42MzYgMzMuMzcwOVYzMS4xNDE2QzQyMS4wMDYgMzEuNTAyOCA0MjIuMjYyIDMxLjY5NTcgNDIzLjIzOSAzMS42OTU3QzQyNC41MTggMzEuNjk1NyA0MjUuMjAzIDMxLjM1MDYgNDI1LjIwMyAzMC43MDc0QzQyNS4yMDMgMzAuMzIwOCA0MjQuOTM1IDMwLjAzNjcgNDI0LjMyMiAyOS43NzE3TDQyMS45NzUgMjguNzU5M0M0MjAuMjM2IDI4LjAwNzggNDE5LjQzMyAyNi45OTU0IDQxOS40MzMgMjUuNTUyMUM0MTkuNDMzIDIzLjQ4MzcgNDIxLjMxNCAyMi4xNjQ5IDQyNC4yNjUgMjIuMTY0OUM0MjUuMjk4IDIyLjE2NDkgNDI2LjU3IDIyLjMxNzEgNDI3LjYxNyAyMi41NjU5VjIyLjU2NTlaTTQzMC4xNjcgMjIuMzkwOUg0MzMuNjM1VjMzLjYwMzlINDMwLjE2N1YyMi4zOTA5Wk00NDQuOTExIDIyLjM5MDlWMjQuNDQ1MUg0MzkuNjc1VjI2Ljk3NDJINDQ0LjI0OVYyOC44MzIzSDQzOS42NzVWMzEuNDU0M0g0NDQuOTc4VjMzLjYwMzlINDM2LjMwNVYyMi4zOTA5SDQ0NC45MTFaTTQ2MS4yOTQgMjIuMzkwOVYzMy42MDM5SDQ1Ny45MzlWMjYuMjIzNkw0NTQuNjUyIDMzLjY5MTVINDUyLjUzMUw0NDkuMjY2IDI2LjIyMzZWMzMuNjAzOUg0NDYuOTQ5VjIyLjM5MDlINDUxLjE4NEw0NTQuMTc4IDI5LjIxMTRMNDU3LjE1NiAyMi4zOTA5SDQ2MS4yOTRWMjIuMzkwOVpNNDcyLjU3OSAyMi4zOTA5VjI0LjQ0NTFINDY3LjMzNVYyNi45NzQySDQ3MS45MDhWMjguODMyM0g0NjcuMzM1VjMxLjQ1NDNINDcyLjYzOFYzMy42MDM5SDQ2My45NTdWMjIuMzkwOUg0NzIuNTc5Wk00ODQuNzk0IDIyLjM5MDlWMzMuNjAzOUg0ODEuMDkzTDQ3Ni45MjYgMjYuNDEyM1YzMy42MDM5SDQ3NC42MDhWMjIuMzkwOUg0NzguNDA3TDQ4Mi40ODQgMjkuNDg3NlYyMi4zOTA5SDQ4NC43OTRaTTQ5NC44NTggMjIuNTY1OVYyNC43MjI2QzQ5My44MDcgMjQuMzY2MyA0OTIuNjQgMjQuMTU0NCA0OTEuNzMyIDI0LjE1NDRDNDkwLjU3MyAyNC4xNTQ0IDQ4OS45MzkgMjQuNDg1OCA0ODkuOTM5IDI1LjA5M0M0ODkuOTM5IDI1LjQ4ODYgNDkwLjE5OCAyNS43MjUgNDkxLjAyMyAyNi4wODU5TDQ5My4xNTcgMjcuMDE3OEM0OTQuODg1IDI3Ljc3MjIgNDk1LjczOSAyOC44NTE4IDQ5NS43MzkgMzAuMjgzNUM0OTUuNzM5IDMyLjQ1NTkgNDkzLjc4NiAzMy44MzA4IDQ5MC42OTkgMzMuODMwOEM0ODkuNTY5IDMzLjgzMDggNDg4LjI1OSAzMy42NzM2IDQ4Ni44NzggMzMuMzcxN1YzMS4xNDI0QzQ4OC4yNDcgMzEuNTAyOCA0ODkuNDk5IDMxLjY5NjUgNDkwLjQ3IDMxLjY5NjVDNDkxLjc0IDMxLjY5NjUgNDkyLjQ0NCAzMS4zNTE1IDQ5Mi40NDQgMzAuNzI4NUM0OTIuNDQ0IDMwLjMxNjMgNDkyLjE5NyAzMC4wNTA0IDQ5MS41NTUgMjkuNzcyNUw0ODkuMjE4IDI4Ljc2MDFDNDg3LjQ2NyAyOC4wMDI4IDQ4Ni42NzQgMjcuMDAyIDQ4Ni42NzQgMjUuNTUzM0M0ODYuNjc0IDIzLjQ4NjIgNDg4LjU1NiAyMi4xNjY1IDQ5MS41IDIyLjE2NjVDNDkyLjUzNiAyMi4xNjUzIDQ5My44MTMgMjIuMzE3MSA0OTQuODU4IDIyLjU2NTlWMjIuNTY1OVoiIGZpbGw9IiMwMEEwQjAiLz4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMzUyLjQxMyAyNi44MTlDMzUwLjk5MiAyNS4yNzU5IDM0OS42MzggMjMuODMxNSAzNDguMzQ5IDIyLjE1NzRMMzQ3LjkyIDIxLjU5OTVDMzQ5LjQwNiAyMS4zNjkzIDM1MC42OTUgMjAuMzg0OCAzNTAuNjk1IDE4Ljc0MzNDMzUwLjY5NSAxNy4yMzMxIDM0OS41MzkgMTYuMjQ4MiAzNDcuODIxIDE2LjI0ODJDMzQ2LjU5OCAxNi4yNDgyIDM0NS43MDYgMTYuMzEzNyAzNDUuMjQzIDE2LjMxMzdDMzQ0LjcxNSAxNi4zMTM3IDM0NC4yODUgMTYuMzEzNyAzNDMuNzkgMTYuMjgwOEMzNDMuODU2IDE4LjE1MjEgMzQzLjg4OSAxOC4yODM0IDM0My44ODkgMTkuNDMyMlYyMy42MzQzQzM0My44ODkgMjQuNDU1MyAzNDMuODU2IDI1LjI3NTkgMzQzLjc5IDI2LjgxODZDMzQ0LjE1MyAyNi43MjAyIDM0NC41MTcgMjYuNzIwMiAzNDQuNzgxIDI2LjcyMDJDMzQ1LjA0NSAyNi43MjAyIDM0NS40MDkgMjYuNzUzMSAzNDUuNzA2IDI2LjgxODZDMzQ1LjY0IDI1Ljc2NzkgMzQ1LjYwNyAyNC4wMjgzIDM0NS42MDcgMjMuNjM0M1YyMS4yMDUxQzM0Ny4xNiAyMy4yMDc3IDM0OS4yMDkgMjUuNjY5NSAzNTAuMDAxIDI2LjgxODZDMzUwLjM5OCAyNi43MjAyIDM1MC43MjggMjYuNzIwMiAzNTEuMTI0IDI2LjcyMDJDMzUxLjQ1NSAyNi43MjA2IDM1MS45MTggMjYuNzIwNiAzNTIuNDEzIDI2LjgxOVYyNi44MTlaTTM0OC44NzggMTkuMDA2QzM0OC44NzggMjAuMDIzNCAzNDguMzE3IDIxLjIwNTQgMzQ2Ljc5NyAyMS4yMDU0QzM0Ni40IDIxLjIwNTQgMzQ2LjAwMyAyMS4yMDU0IDM0NS42MDcgMjEuMTcyNVYxNy4wNjg4QzM0Ni4wMDMgMTYuOTcwNCAzNDYuNDk5IDE2LjkwNDYgMzQ2Ljc2MyAxNi45MDQ2QzM0OC4wODUgMTYuOTA0OSAzNDguODc4IDE3LjY2IDM0OC44NzggMTkuMDA2VjE5LjAwNlpNMzgyLjM4IDI2Ljg4NDVDMzgxLjgxOSAyNi4yOTM2IDM4MC45NiAyNS4zNDE3IDM4MC4xMzQgMjQuNDIyM0MzODAuODI4IDIzLjY2NzIgMzgxLjU1NSAyMi41NTEgMzgxLjk4NCAyMS41OTkxQzM4MS43MTkgMjEuNDY3OCAzODEuMzU2IDIxLjIwNTEgMzgxLjA5MiAyMC45NzUzQzM4MC45OTMgMjEuNzk1OSAzODAuNDMyIDIyLjg3OTIgMzc5LjYzOSAyMy44MzE1QzM3OC41MTUgMjIuNTE4NSAzNzguMjE4IDIyLjE1NzQgMzc3LjE5MyAyMC43Nzg1QzM3OC41ODEgMTkuODkyMSAzNzkuMjQyIDE4Ljg3NDMgMzc5LjI0MiAxOC4wNTM3QzM3OS4yNDIgMTcuMTAxNyAzNzguNTgxIDE2LjExNjkgMzc2Ljk2MiAxNi4xMTY5QzM3NS4yMTEgMTYuMTE2OSAzNzQuMzUyIDE3LjIwMDIgMzc0LjM1MiAxOC40ODAzQzM3NC4zNTIgMTkuMjM1NCAzNzQuNTUgMTkuODkxNyAzNzUuMzc2IDIwLjk3NTNDMzc0LjA1NCAyMS42OTc1IDM3Mi43NjYgMjIuNzQ3OSAzNzIuNzY2IDI0LjQyMjNDMzcyLjc2NiAyNi4wNjM5IDM3NC4wODcgMjYuOTE3NCAzNzUuNzA3IDI2LjkxNzRDMzc3LjE5MyAyNi45MTc0IDM3OC4xNTEgMjYuMzI2NiAzNzguOTEyIDI1LjYzNjlMMzc5LjkwMiAyNi44MTlDMzgwLjIgMjYuNzg2MSAzODAuNTMxIDI2LjcyMDYgMzgwLjg2MSAyNi43MjA2QzM4MS4zMjQgMjYuNzIwNiAzODEuODUyIDI2Ljc4NjEgMzgyLjM4IDI2Ljg4NDVWMjYuODg0NVpNMzgzLjM3MiA0MC4wMTU4QzM4MS45MTggMzguNDczIDM4MC41OTcgMzcuMDYxMiAzNzkuMzA4IDM1LjM4NzFMMzc4Ljg3OCAzNC44Mjg4QzM4MC4zMzIgMzQuNTk5MSAzODEuNjU0IDMzLjYxNSAzODEuNjU0IDMxLjk0MDFDMzgxLjY1NCAzMC40NjMyIDM4MC40OTggMjkuNDQ1NCAzNzguNzc5IDI5LjQ0NTRDMzc3LjU1NyAyOS40NDU0IDM3Ni42MzIgMjkuNTQzNSAzNzYuMTY5IDI5LjU0MzVDMzc1LjY3MyAyOS41NDM1IDM3NS4yNDQgMjkuNTQzNSAzNzQuNzQ4IDI5LjQ3NzZDMzc0LjgxNCAzMS4zODIyIDM3NC44NDggMzEuNDgwMiAzNzQuODQ4IDMyLjYyOTRWMzYuODMxMUMzNzQuODQ4IDM3LjY1MjQgMzc0LjgxNCAzOC41MDUyIDM3NC43NDggNDAuMDE1NEMzNzUuMTEyIDM5Ljk0OTYgMzc1LjQ3NSAzOS45NDk2IDM3NS43MDcgMzkuOTQ5NkMzNzYuMDA0IDM5Ljk0OTYgMzc2LjM2OCAzOS45NDk2IDM3Ni42MzIgNDAuMDE1NEMzNzYuNTY1IDM4Ljk5OCAzNzYuNTMzIDM3LjI1ODEgMzc2LjUzMyAzNi44MzExVjM0LjQzNDhDMzc4LjExOSAzNi40MDQyIDM4MC4xNjcgMzguODk5NiAzODAuOTYgNDAuMDE1NEMzODEuMzU2IDM5Ljk0OTYgMzgxLjY4NyAzOS45NDk2IDM4Mi4wODMgMzkuOTQ5NkMzODIuMzggMzkuOTUgMzgyLjg3NiAzOS45NSAzODMuMzcyIDQwLjAxNThaTTM2Mi4xNiAyNi44MTlDMzYwLjk3MSAyNS41NzE1IDM1OC44ODkgMjIuOTc4IDM1OC4wNjMgMjEuOTkzNUwzNTcuMjM3IDIwLjk3NTdDMzU4LjA5NiAxOS45NTgzIDM1OC42OSAxOS4zMzQxIDM1OS4zMTkgMTguNTc5QzM2MC4wNDUgMTcuNzkxIDM2MC43MDYgMTYuOTcwNCAzNjEuNDk5IDE2LjI0ODJDMzYxLjEzNiAxNi4zMTM3IDM2MC45MzcgMTYuMzEzNyAzNjAuNzM5IDE2LjMxMzdDMzYwLjU0MSAxNi4zMTM3IDM2MC4zNDMgMTYuMzEzNyAzNjAuMTQ0IDE2LjI0ODJDMzU5LjkxMyAxNi42MDkzIDM1OS41NSAxNy4wNjg4IDM1OS4xNTMgMTcuNTI4N0MzNTguNzU2IDE3Ljk1NTYgMzU4LjM2IDE4LjM4MjIgMzU4LjA2MyAxOC43NDMzQzM1Ny4yMzYgMTkuNjk1MiAzNTYuNzc0IDIwLjE1NDcgMzU1LjU4NSAyMS4yNzA5VjE5LjQ2NTVDMzU1LjU4NSAxOC40MTUxIDM1NS41ODUgMTcuNzI1NSAzNTUuNjUxIDE2LjI0ODJDMzU1LjMyMSAxNi4zMTM3IDM1NC45NTcgMTYuMzEzNyAzNTQuNzI2IDE2LjMxMzdDMzU0LjQ2MSAxNi4zMTM3IDM1NC4wMzIgMTYuMzEzNyAzNTMuNzY4IDE2LjI0ODJDMzUzLjgzMyAxNy44MjM5IDM1My44NjcgMTguMjgzNCAzNTMuODY3IDE5LjQzMjVWMjMuNjM0N0MzNTMuODY3IDI0LjY4NSAzNTMuODMzIDI1LjMwODggMzUzLjc2OCAyNi44MTlDMzU0LjE2NCAyNi43MjA2IDM1NC40OTUgMjYuNzIwNiAzNTQuNzI2IDI2LjcyMDZDMzU0Ljk1NyAyNi43MjA2IDM1NS4zNTMgMjYuNzUzNSAzNTUuNjUxIDI2LjgxOUMzNTUuNTg1IDI1LjE0NDkgMzU1LjU4NSAyNC4xNTk3IDM1NS41ODUgMjMuNjM0N1YyMS40MzUyQzM1Ni44MDcgMjIuODc5NiAzNTguNjkgMjUuMjQzMyAzNTkuNzQ4IDI2LjgxOUMzNjAuMTMgMjYuNzU2MyAzNjAuNTE3IDI2LjcyMzQgMzYwLjkwNSAyNi43MjA2QzM2MS4yMDIgMjYuNzIwNiAzNjEuNjY1IDI2LjcyMDYgMzYyLjE2IDI2LjgxOVYyNi44MTlaTTM3Mi42MDEgNDAuMDE1OEMzNzIuNTY4IDM5Ljg1MTkgMzcyLjUzNSAzOS43MjA2IDM3Mi41MzUgMzkuNTIzNEMzNzIuNTM1IDM5LjM5MjggMzcyLjU2OCAzOS4yMjgxIDM3Mi42MDEgMzkuMDk2NEMzNzEuMjggMzkuMTI5NyAzNjguOTAxIDM5LjE5NTIgMzY4LjM3MiAzOS4xOTUyVjM0LjY2NDlDMzY5LjY5NCAzNC42NjQ5IDM3MC45ODIgMzQuNjY0OSAzNzIuMjcgMzQuNzk2M0MzNzIuMjM4IDM0LjYzMjQgMzcyLjIwNCAzNC40Njc3IDM3Mi4yMDQgMzQuMzM2NEMzNzIuMjA0IDM0LjIwNTggMzcyLjIwNCAzNC4wNDE5IDM3Mi4yNyAzMy44NDQ3QzM3MS4zNDYgMzMuOTQyOCAzNjkuMTk4IDMzLjk3NiAzNjguMzcyIDMzLjk3NlYzMC4yNjZDMzY5LjgyNiAzMC4yNjYgMzcwLjY4NSAzMC4yNjYgMzcxLjE4IDMwLjI5OTNMMzcyLjUwMiAzMC4zNjUxQzM3Mi40MzYgMzAuMTY3OSAzNzIuNDM2IDMwLjA2OTIgMzcyLjQzNiAyOS45MDUzQzM3Mi40MzYgMjkuNzQxNCAzNzIuNDM2IDI5LjcwODEgMzcyLjUwMiAyOS40NDU4QzM3MS40MTEgMjkuNDc4MyAzNjkuOTI1IDI5LjU0MzggMzY5LjI2NCAyOS41NDM4QzM2OC44MDIgMjkuNTQzOCAzNjcuMzQ4IDI5LjUxMTMgMzY2LjU4NyAyOS40NDU4QzM2Ni42NTQgMzAuMjY2NCAzNjYuNjg2IDMxLjYxMjMgMzY2LjY4NiAzMi41NjQyVjM2Ljg2NTFDMzY2LjY4NiAzNy40ODg1IDM2Ni42MiAzOC43MzU3IDM2Ni41ODcgNDAuMDE2MkMzNjcuNTEzIDM5Ljk1MDMgMzY4LjgwMiAzOS45NTAzIDM2OS4yNjQgMzkuOTUwM0MzNzAuMDI0IDM5Ljk1IDM3MS42NDMgMzkuOTUgMzcyLjYwMSA0MC4wMTU4Wk0zNjQuNjA1IDM5LjEyOTRDMzY0LjQ0IDM4LjgwMDggMzY0LjM0MSAzOC4zMDg4IDM2NC4yNzUgMzguMDQ2MUMzNjIuOTIgMzkuMTYxOSAzNjEuOTk1IDM5LjM5MjQgMzYwLjkzOCAzOS4zOTI0QzM1OC41OTIgMzkuMzkyNCAzNTcuMzM3IDM3LjI5MTMgMzU3LjMzNyAzNC42NjQ5QzM1Ny4zMzcgMzEuNzQzNiAzNTguNzU3IDMwLjAzNjIgMzYxLjE2OSAzMC4wMzYyQzM2Mi40MjUgMzAuMDM2MiAzNjMuNjE0IDMwLjU5NDUgMzY0LjE3NiAzMS4xNTI4QzM2NC4yMDggMzAuODg5OCAzNjQuMzA4IDMwLjM2NDggMzY0LjQ3MyAzMC4wNjg4QzM2My4zMTYgMjkuNTExMyAzNjIuMjU5IDI5LjM0NjYgMzYxLjEwMiAyOS4zNDY2QzM1Ny4yMzcgMjkuMzQ2NiAzNTUuNDUzIDMxLjc0MzYgMzU1LjQ1MyAzNC44Mjg4QzM1NS40NTMgMzguMzA5MSAzNTcuNzk4IDQwLjE0NzEgMzYwLjczOSA0MC4xNDcxQzM2Mi40MjUgNDAuMTQ3MSAzNjMuODEyIDM5LjYyMjIgMzY0LjYwNSAzOS4xMjk0VjM5LjEyOTRaTTM0Mi4zMDMgMjYuODE5QzM0MC41MTkgMjMuNDA0OSAzMzguOCAxOS4xMzczIDMzNy41NzggMTYuMTE2OUgzMzcuMzhDMzM2LjU4NyAxOC4wMjA3IDMzNS4xMzMgMjEuMjcwOSAzMzQuNzM3IDIyLjE4OTlDMzM0LjI3NCAyMy4zMDYxIDMzMy4yNSAyNS41MDU2IDMzMi41ODkgMjYuODE4NkMzMzIuODAzIDI2Ljc1MzggMzMzLjAyNiAyNi43MjA2IDMzMy4yNSAyNi43MjAyQzMzMy40NDggMjYuNzIwMiAzMzMuNjEzIDI2Ljc1MzEgMzMzLjg0NSAyNi44MTg2QzMzNC4xNzUgMjUuOTMyMiAzMzQuNjM4IDI0LjgxNiAzMzUuMTMzIDIzLjYzNDNDMzM1Ljc5NCAyMy42MDE0IDMzNi4zODkgMjMuNTY4OCAzMzYuOTg0IDIzLjU2ODhDMzM3LjYxMiAyMy41Njg4IDMzOC4yNzIgMjMuNjAxNCAzMzguOTMzIDIzLjYzNDNMMzM5LjU5NCAyNS4yMUwzNDAuMjU1IDI2LjgxODZDMzQwLjcxNyAyNi43MjAyIDM0MS4wOCAyNi43MjAyIDM0MS4zMTIgMjYuNzIwMkMzNDEuNjA5IDI2LjcyMDYgMzQxLjg3MyAyNi43MjA2IDM0Mi4zMDMgMjYuODE5VjI2LjgxOVpNMzUzLjYzNiAyOS40NDU0QzM1My40MzggMjkuNTExMyAzNTMuMjczIDI5LjU0MzUgMzUzLjEwNyAyOS41NDM1QzM1Mi45MDkgMjkuNTQzNSAzNTIuNzQ0IDI5LjUxMDkgMzUyLjU0NiAyOS40NDU0QzM1Mi42NDQgMzAuNzU4NCAzNTIuNjc4IDMyLjA3MTQgMzUyLjY3OCAzMy4zNTE5VjM2LjczMzRDMzUyLjE0OSAzNi4yNzM2IDM1MC44NiAzNS4wOTE5IDM0OS4zNzQgMzMuNzEzQzM0Ny44NiAzMi4zMDc0IDM0Ni4zOTQgMzAuODUxMSAzNDQuOTc5IDI5LjM0NjZIMzQ0Ljc0OEMzNDQuNzgxIDMwLjgyNDMgMzQ0LjgxNCAzMi40IDM0NC44MTQgMzMuODExNFYzNS44Nzk5QzM0NC44MTQgMzcuNjUyOCAzNDQuODE0IDM4LjYwNDcgMzQ0LjcxNSA0MC4wMTYyQzM0NC45OCAzOS45NTAzIDM0NS4xMTIgMzkuOTUwMyAzNDUuMzEgMzkuOTUwM0MzNDUuNDQyIDM5Ljk1MDMgMzQ1LjU3NSAzOS45NTAzIDM0NS44MDYgNDAuMDE2MkMzNDUuNzQgMzguNjcwNiAzNDUuNzA3IDM2LjQ3MDggMzQ1LjcwNyAzNS44Nzk5VjMyLjU5NjhDMzQ4LjE4NSAzNC44NjI1IDM1MS4yMjQgMzcuODgyNiAzNTMuNDcxIDQwLjE0NzVIMzUzLjYwM0MzNTMuNjAzIDM4LjkzMjkgMzUzLjUzNyAzNy43MTc5IDM1My41MzcgMzYuNTA0VjM0LjYzMjdDMzUzLjUzNiAzMi40MzI1IDM1My41MzYgMzEuMzQ5MyAzNTMuNjM2IDI5LjQ0NTRaTTM0Mi41NjcgNDAuMDE1OEMzNDIuNTM0IDM5Ljg1MTkgMzQyLjUwMSAzOS43MjA2IDM0Mi41MDEgMzkuNTIzNEMzNDIuNTAxIDM5LjM5MjggMzQyLjUzNCAzOS4yMjgxIDM0Mi41NjcgMzkuMDk2NEMzNDEuMjQ2IDM5LjEyOTcgMzM4Ljg2NyAzOS4xOTUyIDMzOC4zNzEgMzkuMTk1MlYzNC42NjQ5QzMzOS42NiAzNC42NjQ5IDM0MC45NDggMzQuNjY0OSAzNDIuMjM3IDM0Ljc5NjNDMzQyLjIwNCAzNC42MzI0IDM0Mi4xNzEgMzQuNDY3NyAzNDIuMTcxIDM0LjMzNjRDMzQyLjE3MSAzNC4yMDU4IDM0Mi4xNzEgMzQuMDQxOSAzNDIuMjM3IDMzLjg0NDdDMzQxLjMxMiAzMy45NDI4IDMzOS4xOTcgMzMuOTc2IDMzOC4zNzEgMzMuOTc2VjMwLjI2NkMzMzkuNzkyIDMwLjI2NiAzNDAuNjUxIDMwLjI2NiAzNDEuMTc5IDMwLjI5OTNMMzQyLjQ2OCAzMC4zNjUxQzM0Mi40MzUgMzAuMTY3OSAzNDIuNDM1IDMwLjA2OTIgMzQyLjQzNSAyOS45MDUzQzM0Mi40MzUgMjkuNzQxNCAzNDIuNDM1IDI5LjY3NTUgMzQyLjQ2OCAyOS40NDU4QzM0MS4zNzggMjkuNDc4MyAzMzkuODkxIDI5LjU0MzggMzM5LjIzIDI5LjU0MzhDMzM4Ljc2NyAyOS41NDM4IDMzNy4zMTQgMjkuNTExMyAzMzYuNTU0IDI5LjQ0NThDMzM2LjYyIDMwLjI2NjQgMzM2LjY1MyAzMS42MTIzIDMzNi42NTMgMzIuNTY0MlYzNi44NjUxQzMzNi42NTMgMzcuNDg4NSAzMzYuNTg3IDM4LjczNTcgMzM2LjU1NCA0MC4wMTYyQzMzNy41MTIgMzkuOTUwMyAzMzguNzY3IDM5Ljk1MDMgMzM5LjIzIDM5Ljk1MDNDMzM5Ljk5IDM5Ljk1IDM0MS42NDIgMzkuOTUgMzQyLjU2NyA0MC4wMTU4VjQwLjAxNThaTTMzMS4yMDEgMjYuODE5QzMzMC42NzMgMjMuMjQwNiAzMzAuMjEgMTkuNDk4NCAzMjkuODQ3IDE2LjExNjlDMzI5Ljc0OCAxNi4xNDk4IDMyOS43MTQgMTYuMTQ5OCAzMjkuNjQ5IDE2LjExNjlDMzI4Ljk1NSAxNy4zMzE1IDMyOC4xNjIgMTguNjQ0NSAzMjcuNTY3IDE5LjU2MzlDMzI3LjAwNiAyMC40NTAzIDMyNi4zNDUgMjEuNTAwNyAzMjUuNTg1IDIyLjYxNjlDMzIzLjk5OSAyMC41ODE3IDMyMi4zNDcgMTguMDIxMSAzMjEuMjU2IDE2LjExNjlDMzIxLjE5IDE2LjE0OTggMzIxLjE1NyAxNi4xMTY5IDMyMS4wOTEgMTYuMTE2OUMzMjAuNzI4IDE5LjQ5OCAzMjAuMjMyIDIzLjI3MzIgMzE5LjczNiAyNi44MTlDMzIwLjAwMSAyNi43MjA2IDMyMC4xNjYgMjYuNzIwNiAzMjAuMjk4IDI2LjcyMDZDMzIwLjQ5NiAyNi43MjA2IDMyMC42MjggMjYuNzUzNSAzMjAuODU5IDI2LjgxOUMzMjAuOTkyIDI0LjQ1NTMgMzIxLjI1NiAyMi4xMjQ0IDMyMS41NTMgMTkuNjYyM0MzMjIuODQyIDIxLjUzMzYgMzIzLjk2NSAyMy4xNDIyIDMyNS4yMjEgMjQuODQ5M0MzMjYuMjc4IDIzLjIwNzcgMzI3LjM2OCAyMS40MzQ4IDMyOC41NTggMTkuNjI5NEMzMjguODg4IDIyLjE1NyAzMjkuMTg2IDI0LjQ1NTMgMzI5LjM1MSAyNi44MTlDMzI5Ljc4IDI2LjcyMDYgMzMwLjA3OCAyNi43MjA2IDMzMC4yNzYgMjYuNzIwNkMzMzAuNTQgMjYuNzIwNiAzMzAuODA1IDI2LjcyMDYgMzMxLjIwMSAyNi44MTlWMjYuODE5Wk0zMzQuOTY4IDMyLjIwMjhDMzM0Ljk2OCAzMC4yOTg5IDMzMy40NDggMjkuNDQ1NCAzMzEuNTk4IDI5LjQ0NTRDMzMwLjc3MiAyOS40NDU0IDMyOS44OCAyOS41NDM1IDMyOS4yNTIgMjkuNTQzNUMzMjkuMDIxIDI5LjU0MzUgMzI4LjUyNSAyOS41NDM1IDMyNy45OTcgMjkuNDc3NkMzMjguMDMgMzAuNTI4MyAzMjguMDk2IDMxLjQxNDggMzI4LjA5NiAzMi40MzIyVjM2LjkyOTVDMzI4LjA5NiAzNy45MTQ4IDMyOC4wMyAzOC45OTggMzI3Ljk5NyA0MC4wMTU0QzMyOC40MjYgMzkuOTQ5NiAzMjguNzI0IDM5Ljk0OTYgMzI4LjkyMiAzOS45NDk2QzMyOS4xNTMgMzkuOTQ5NiAzMjkuNDg0IDM5Ljk0OTYgMzI5Ljg4IDQwLjAxNTRDMzI5LjgxNSAzOS4wMzE5IDMyOS43ODIgMzguMDQ2NSAzMjkuNzgxIDM3LjA2MDlWMzUuNDJDMzMwLjE0NSAzNS40NTI2IDMzMC41MDggMzUuNDUyNiAzMzAuOTA1IDM1LjQ1MjZDMzMyLjgyIDM1LjQ1MjYgMzM0Ljk2OCAzNC43MzA0IDMzNC45NjggMzIuMjAyOFYzMi4yMDI4Wk0zMjYuMDE0IDM2Ljg5NzNDMzI2LjAxNCAzNS4yNTU4IDMyNC45MjQgMzQuNTMzNiAzMjMuMDQgMzMuNzQ1NkMzMjEuNjg2IDMzLjE4OCAzMjAuOTkyIDMyLjY5NTYgMzIwLjk5MiAzMS42NDQ1QzMyMC45OTIgMzAuNjYgMzIxLjc1MiAzMC4wMzYyIDMyMy4wMDggMzAuMDM2MkMzMjMuODM0IDMwLjAzNjIgMzI0LjU2MSAzMC4zMzE1IDMyNS4yMjIgMzAuODU2OEMzMjUuMjg3IDMwLjQ5NTcgMzI1LjQ1MyAzMC4xMzQ3IDMyNS42NTEgMjkuODM5NEMzMjQuODU4IDI5LjQ3ODMgMzIzLjk5OSAyOS4zNDcgMzIzLjA3NCAyOS4zNDdDMzIwLjM2NSAyOS4zNDcgMzE5LjUwNSAzMC44OTA1IDMxOS41MDUgMzIuMjAzNUMzMTkuNTA1IDMzLjgxMTggMzIwLjI5OSAzNC41NjcyIDMyMi4zNDcgMzUuMzU1M0MzMjMuNjM2IDM1Ljg0NyAzMjQuMjk2IDM2LjQ3MTEgMzI0LjI5NiAzNy41NTQ0QzMyNC4yOTYgMzguNzAzNSAzMjMuNDM3IDM5LjQyNTcgMzIyLjI0OCAzOS40MjU3QzMyMS41NTQgMzkuNDI1NyAzMjAuMzY1IDM5LjA2NDYgMzE5LjUzOSAzOC4zMDk5QzMxOS41MDUgMzguNzM2MSAzMTkuNTA1IDM5LjEzMDQgMzE5LjM3MyAzOS40OTE1QzMxOS45MDIgMzkuNzU0NiAzMjEuMTI1IDQwLjE0NzkgMzIyLjIxNSA0MC4xNDc5QzMyNC45OSA0MC4xNDcxIDMyNi4wMTQgMzguNDM5NyAzMjYuMDE0IDM2Ljg5NzNWMzYuODk3M1pNMzc4LjE1MiAxNy45ODgyQzM3OC4xNTIgMTguOTczIDM3Ny40NTggMTkuNjYyMyAzNzYuNzY0IDIwLjIyMDJDMzc2LjMwMSAxOS41NjM5IDM3NS43NCAxOC42NzcxIDM3NS43NCAxNy45ODgyQzM3NS43NCAxNy4yMzMxIDM3Ni4yNjggMTYuODA2MSAzNzYuOTk1IDE2LjgwNjFDMzc3Ljk4NyAxNi44MDY1IDM3OC4xNTIgMTcuNjkyNiAzNzguMTUyIDE3Ljk4ODJWMTcuOTg4MlpNMzc4LjQ4MiAyNS4wMTMyQzM3OC4xMTkgMjUuMzQxNyAzNzcuMjYgMjUuOTY1NSAzNzYuNTMzIDI1Ljk2NTVDMzc1LjU3NCAyNS45NjU1IDM3NC40MTggMjUuMjc1OSAzNzQuNDE4IDIzLjc5ODZDMzc0LjQxOCAyMi40ODU1IDM3NS4yNzcgMjEuODk0NyAzNzUuODA2IDIxLjU2NjVDMzc3LjAyOCAyMy4yNDA2IDM3Ny4wOTUgMjMuMzM5MSAzNzguNDgyIDI1LjAxMzJaTTM3OS44MDQgMzIuMjAyOEMzNzkuODA0IDMzLjI1MzUgMzc5LjI3NSAzNC40MDI2IDM3Ny43NTUgMzQuNDAyNkMzNzcuMzI2IDM0LjQwMjYgMzc2LjkyOSAzNC40MDI2IDM3Ni41MzMgMzQuMzY5M1YzMC4yNjU2QzM3Ni45MjkgMzAuMTY3NiAzNzcuNDI1IDMwLjEzNDMgMzc3LjcyMiAzMC4xMzQzQzM3OS4wMTEgMzAuMTM0MyAzNzkuODA0IDMwLjg4OTggMzc5LjgwNCAzMi4yMDI4Wk0zMzguNjAyIDIyLjgxNDFDMzM3LjkwOSAyMi44NDY2IDMzNy41NDUgMjIuODQ2NiAzMzcuMDgyIDIyLjg0NjZDMzM2LjUyMSAyMi44NDY2IDMzNi4xOSAyMi44NDY2IDMzNS40NjMgMjIuODE0MUwzMzcuMDgyIDE5LjAwNkwzMzguNjAyIDIyLjgxNDFaTTMzMy4xNTEgMzIuMzAwOEMzMzMuMTUxIDMzLjgxMTEgMzMyLjI1OCAzNC43OTU5IDMzMC44MDUgMzQuNzk1OUMzMzAuNTA3IDM0Ljc5NTkgMzMwLjE3NyAzNC43OTU5IDMyOS43OCAzNC43MzAxVjMwLjIzMjdDMzMwLjI0MyAzMC4xNjY5IDMzMC42MzkgMzAuMTMzOSAzMzEuMDM2IDMwLjEzMzlDMzMyLjQyNCAzMC4xMzQzIDMzMy4xNTEgMzEuMDIxMSAzMzMuMTUxIDMyLjMwMDhaTTM2OS41MjggMjMuNjY3NkMzNjkuNTI4IDIyLjAyNiAzNjguNDM4IDIxLjMwMzkgMzY2LjU1NSAyMC41MTYyQzM2NS4yIDE5Ljk1ODMgMzY0LjUwNiAxOS40OTg4IDM2NC41MDYgMTguNDE1MUMzNjQuNTA2IDE3LjQ2MzIgMzY1LjI2NiAxNi44MDY1IDM2Ni41MjEgMTYuODA2NUMzNjcuMzQ4IDE2LjgwNjUgMzY4LjA3NSAxNy4xMDE3IDM2OC43MzUgMTcuNjI3NUMzNjguODAyIDE3LjI2NjQgMzY4Ljk2NyAxNi45MDQ5IDM2OS4xMzEgMTYuNjQyMkMzNjguMzcyIDE2LjI4MTEgMzY3LjQ3OSAxNi4xMTcyIDM2Ni41ODcgMTYuMTE3MkMzNjMuOTQ0IDE2LjExNzIgMzYyLjk4NiAxNy42NiAzNjIuOTg2IDE5LjAwNkMzNjIuOTg2IDIwLjU4MTcgMzYzLjgxMiAyMS4zMzY4IDM2NS44NjEgMjIuMTI0NEMzNjcuMTQ5IDIyLjYxNjkgMzY3LjgxIDIzLjI0MDYgMzY3LjgxIDI0LjM1NjhDMzY3LjgxIDI1LjQ3MyAzNjYuOTUxIDI2LjE5NTIgMzY1Ljc2MiAyNi4xOTUyQzM2NS4wMzUgMjYuMTk1MiAzNjMuODc5IDI1LjgzNDEgMzYzLjA1MiAyNS4xMTE5QzM2My4wMiAyNS41Mzg5IDM2Mi45ODYgMjUuOSAzNjIuODg3IDI2LjI2MTFDMzYzLjM4MyAyNi41MjM4IDM2NC42MDYgMjYuOTE3NCAzNjUuNzI5IDI2LjkxNzRDMzY4LjUwNCAyNi45MTc0IDM2OS41MjggMjUuMjQzMyAzNjkuNTI4IDIzLjY2NzZWMjMuNjY3NloiIGZpbGw9IiMwMzY1NTUiLz4NCjxwYXRoIGQ9Ik02NDAuNDE2IDIwLjU1NzNDNjM4LjY3MSAxOS44MzU0IDYzNy42MzEgMTkuNTU1MSA2MzYuNTk4IDE5LjU1NTFDNjM1LjUxNCAxOS41NTUxIDYzNC44MTkgMTkuOTE3IDYzNC44MTkgMjAuNDc2NUM2MzQuODE5IDIyLjE2NDUgNjQwLjk2MiAyMS42ODkzIDY0MC45NjIgMjUuNTkzNkM2NDAuOTYyIDI3Ljc0NjQgNjM5LjAyNCAyOC45OTc0IDYzNi4zMzIgMjguOTk3NEM2MzQuMjIgMjguOTk3NCA2MzMuMTggMjguNDg4IDYzMS45ODMgMjcuOTExNlYyNS40OTYyQzYzMy43MSAyNi41NjM1IDYzNC43NjggMjYuOTQwMSA2MzYuMTAxIDI2Ljk0MDFDNjM3LjI1NiAyNi45NDAxIDYzNy44NzkgMjYuNTYzNSA2MzcuODc5IDI1LjkwNjNDNjM3Ljg3OSAyNC4wNjg1IDYzMS43MzcgMjQuNzQxNSA2MzEuNzM3IDIwLjcyMTNDNjMxLjczNyAxOC43ODI3IDYzMy41MzQgMTcuNDk5IDYzNi4zMzIgMTcuNDk5QzYzNy42ODIgMTcuNDk5IDYzOC45MDEgMTcuNzYzNSA2NDAuNDE2IDE4LjM3MDdWMjAuNTU3M1pNNjQ5LjAxNiAyOC40ODQxQzY0Ny45OTIgMjguODMwNiA2NDcuMTI2IDI4Ljk5NTQgNjQ2LjI2MiAyOC45OTU0QzY0My40MDIgMjguOTk1NCA2NDEuNTUyIDI3LjQ0MjIgNjQxLjU1MiAyNS4wNzkyQzY0MS41NTIgMjIuNzU5NCA2NDMuNDczIDIxLjEyMDIgNjQ2LjE1NiAyMS4xMjAyQzY0Ni45ODUgMjEuMTIwMiA2NDguMDQ0IDIxLjMxODIgNjQ4Ljg5MSAyMS42MTIzVjIzLjM4ODFDNjQ4LjIyMSAyMy4wNTYyIDY0Ny40NDQgMjIuODc0MSA2NDYuODA5IDIyLjg3NDFDNjQ1LjI3MyAyMi44NzQxIDY0NC4yODYgMjMuNzM0MyA2NDQuMjg2IDI1LjA2MTlDNjQ0LjI4NiAyNi40MDggNjQ1LjI1NiAyNy4yOTQgNjQ2LjcyIDI3LjI5NEM2NDcuMzM3IDI3LjI5NCA2NDcuODg2IDI3LjE2MjMgNjQ5LjAxNiAyNi43NjhMNjQ5LjAxNiAyOC40ODQxWk02NzEuMzIgMjQuMjA5QzY3MS40MjUgMjMuMTU0OCA2NzIuMDgxIDIyLjU0NTcgNjczLjA4NyAyMi41NDU3QzY3NC4wNzYgMjIuNTQ1NyA2NzQuNzQ2IDIzLjE3MjEgNjc0Ljg1MiAyNC4yMDlINjcxLjMyWk02NzIuOTEgMjEuMTIyOUM2NzAuNCAyMS4xMjI5IDY2OC42MTQgMjIuNzc1NSA2NjguNjE0IDI1LjEwMTJDNjY4LjYxNCAyNy40NDQxIDY3MC40NzEgMjguOTk1NCA2NzMuMzM1IDI4Ljk5NTRDNjczLjk3IDI4Ljk5NTQgNjc1LjUwNCAyOC45OTU0IDY3Ni45NjYgMjcuOTg3VjI2LjUwNDJDNjc1Ljc2OSAyNy4yOTkzIDY3NC45NzcgMjcuNTczMSA2NzMuOTU1IDI3LjU3MzFDNjcyLjM0MSAyNy41NzMxIDY3MS4zNTQgMjYuNzk0OSA2NzEuMjY1IDI1LjQ2NjZINjc3LjExQzY3Ny4yMzIgMjIuNjkzOSA2NzUuMjc5IDIxLjEyMjkgNjcyLjkxIDIxLjEyMjlWMjEuMTIyOVpNNjc4LjA5OSAyOC44NTcySDY4MC42NTRWMjEuMjYyN0g2NzguMDk5VjI4Ljg1NzJaTTY4Ny43NjcgMjYuNzgxNUM2ODcuMjM0IDI3LjIyODEgNjg2Ljc5MiAyNy40MDcyIDY4Ni4yNDYgMjcuNDA3MkM2ODUuMDQzIDI3LjQwNzIgNjg0LjI4MSAyNi40ODM4IDY4NC4yODEgMjUuMTAwNEM2ODQuMjgxIDIzLjU4NDEgNjg1LjA0MyAyMi43MTAxIDY4Ni4zMzEgMjIuNzEwMUM2ODYuNzkyIDIyLjcxMDEgNjg3LjM5NCAyMi45MDggNjg3Ljc2NyAyMy4xNTU5VjI2Ljc4MTVaTTY4Ny43NjcgMTcuNjM5MVYyMS41OTU4QzY4Ny4wNzYgMjEuMjg0NyA2ODYuMzg4IDIxLjEyMDIgNjg1LjY0NCAyMS4xMjAyQzY4My4zMTMgMjEuMTIwMiA2ODEuNyAyMi43MjY2IDY4MS43IDI1LjA1MDdDNjgxLjcgMjcuMzI0OCA2ODMuMzEzIDI4Ljk5NzQgNjg1LjUgMjguOTk3NEM2ODYuMzY3IDI4Ljk5NzQgNjg3LjAzNyAyOC43ODU2IDY4Ny43NjcgMjguMjQzNVYyOC44NTQ5SDY5MC4zMjJWMTcuNjM5MUg2ODcuNzY3Wk02OTQuMTA1IDI0LjIwOUM2OTQuMjExIDIzLjE1NDggNjk0Ljg2NCAyMi41NDU3IDY5NS44NjggMjIuNTQ1N0M2OTYuODU4IDIyLjU0NTcgNjk3LjUzNSAyMy4xNzIxIDY5Ny42NDEgMjQuMjA5SDY5NC4xMDVaTTY5NS42OTQgMjEuMTIyOUM2OTMuMTg0IDIxLjEyMjkgNjkxLjQgMjIuNzc1NSA2OTEuNCAyNS4xMDEyQzY5MS40IDI3LjQ0NDEgNjkzLjI1OSAyOC45OTU0IDY5Ni4xMTkgMjguOTk1NEM2OTYuNzUzIDI4Ljk5NTQgNjk4LjI5IDI4Ljk5NTQgNjk5Ljc1NSAyNy45ODdWMjYuNTA0MkM2OTguNTU3IDI3LjI5OTMgNjk3Ljc2MyAyNy41NzMxIDY5Ni43MzYgMjcuNTczMUM2OTUuMTMxIDI3LjU3MzEgNjk0LjE0IDI2Ljc5NDkgNjk0LjA1MSAyNS40NjY2SDY5OS44OTRDNzAwLjAxNSAyMi42OTM5IDY5OC4wNjEgMjEuMTIyOSA2OTUuNjk0IDIxLjEyMjkiIGZpbGw9IiMwMDlFNEQiLz4NCjxwYXRoIGQ9Ik03MDMuNzIxIDIzLjQzNjhINzAzLjc1OEM3MDQuNTE3IDIxLjg1NjIgNzA1LjM2NiAyMS4xMTUgNzA2LjM1MiAyMS4xMTVDNzA2Ljg2MiAyMS4xMTUgNzA3LjMwMyAyMS4yOTY0IDcwOC4wNDQgMjEuODA3Nkw3MDcuMzQxIDIzLjkxMzNDNzA2LjY3IDIzLjUxODYgNzA2LjIyOSAyMy4zNTM1IDcwNS44MjMgMjMuMzUzNUM3MDQuODg2IDIzLjM1MzUgNzA0LjI4NiAyNC4xNzc1IDcwMy43MjEgMjUuNTcwNFYyOC44NDY2SDcwMS4xNjJWMjEuMjU0MUg3MDMuNzIxVjIzLjQzNjhaTTY4MC43NzUgMTguMDY3NEM2ODEuMDE1IDE4LjY1NzUgNjgwLjU4MyAxOS40ODA1IDY3OS44MTQgMTkuOTA0QzY3OS4wNDEgMjAuMzI3MSA2NzguMjI0IDIwLjE5MjggNjc3Ljk4NiAxOS42MDI3QzY3Ny43NDMgMTkuMDExNyA2NzguMTczIDE4LjE4NzcgNjc4Ljk0NSAxNy43NjY2QzY3OS43MTYgMTcuMzQxMSA2ODAuNTMzIDE3LjQ3NTkgNjgwLjc3NSAxOC4wNjc0WiIgZmlsbD0iIzAwOUU0RCIvPg0KPHBhdGggZD0iTTY1OC4yMiAyNC4wMjMxQzY1OC4yMiAyMS45NjUxIDY1Ni43MTkgMjEuMTIyNiA2NTUuMjM5IDIxLjEyMjZDNjU0LjIzMiAyMS4xMjI2IDY1My40MDQgMjEuNTE4NCA2NTIuNjY0IDIyLjM5MjFINjUyLjYyOVYxNy42MzkySDY1MC4wNzFWMjguODM1M0g2NTIuNjI5VjI0LjAyMzFDNjUzLjIyOCAyMy4yMTYxIDY1My43MzggMjIuODcxMSA2NTQuMzM4IDIyLjg3MTFDNjU1LjEzNCAyMi44NzExIDY1NS42NjIgMjMuMzk4NiA2NTUuNjYyIDI0LjUzMjlWMjcuMjAwOEM2NTYuNTIgMjYuNzg5NiA2NTcuMzkzIDI2LjUzNzQgNjU4LjIyIDI2LjQ0MzhWMjQuMDIzMVpNNjY0LjYzNiAyMS4xMTk5QzY2My41OTQgMjEuMTE5OSA2NjIuNzk5IDIxLjQ4MTEgNjYxLjk4NCAyMi4zNDkzVjIxLjI2MjRINjU5LjQyOFYyNi40MjM0QzY2MC4zMTMgMjYuNTA1OCA2NjEuNDQzIDI2Ljg4NDcgNjYxLjk4NCAyNy41MTA0VjIzLjk2MzRDNjYyLjY1NyAyMy4wMjMyIDY2My4xMzQgMjIuNzA5NyA2NjMuNzcgMjIuNzA5N0M2NjQuNDk0IDIyLjcwOTcgNjY1LjA0NSAyMy4xNTU2IDY2NS4wNDUgMjQuMjI2NFYyOC44MzcySDY2Ny42MDJWMjQuMDI4OUM2NjcuNjAyIDIxLjc5MjYgNjY1LjkwOCAyMS4xMTk5IDY2NC42MzYgMjEuMTE5OVYyMS4xMTk5Wk02NjkuMDE1IDMxLjAxODFINjY2LjA0M1YzMi45ODY0SDY2OC45MDlWMzMuODMxMkg2NjYuMDQzVjM1Ljg2MTlINjY5LjEwM1YzNi43MDU1SDY2NS4wNDZWMzAuMTc1Mkg2NjkuMDE1TDY2OS4wMTUgMzEuMDE4MVpNNjcxLjQ0MiAzNi43MDkzSDY3Mi4zNTJWMzAuMTczM0g2NzEuNDQyVjM2LjcwOTNaTTY3Ni44NTkgMzMuMDQ4NEM2NzcuNTA0IDMzLjA0ODQgNjc3LjkwNCAzMy40NjMxIDY3Ny45MzUgMzQuMTE0Mkg2NzUuNjE2QzY3NS43NDIgMzMuNDM0MiA2NzYuMTYxIDMzLjA0ODQgNjc2Ljg1OSAzMy4wNDg0Wk02NzUuNiAzNC42ODFINjc4Ljg0MkM2NzguODQyIDMzLjA4NjkgNjc4LjA2MiAzMi4zMTggNjc2LjgzOCAzMi4zMThDNjc1LjU2OSAzMi4zMTggNjc0LjY4OCAzMy4xOTI0IDY3NC42ODggMzQuNDk2OUM2NzQuNjg4IDM1LjY4OSA2NzUuNDg0IDM2Ljc4OTggNjc2LjkxNyAzNi43ODk4QzY3Ny42OTggMzYuNzg5OCA2NzguMjAzIDM2LjYyODEgNjc4Ljc2MyAzNi4yODJWMzUuNDU2QzY3OC4yMjIgMzUuNzg1NiA2NzcuNjk4IDM1Ljk3NTggNjc3LjE0NyAzNS45NzU4QzY3Ni4yNjUgMzUuOTc1OCA2NzUuNzQyIDM1LjUzNSA2NzUuNiAzNC42ODA2VjM0LjY4MVpNNjg0Ljc4NiAzMy41MzA5QzY4NC4yNjMgMzMuMTk2NiA2ODMuOTE0IDMzLjA5ODUgNjgzLjUxNSAzMy4wOTg1QzY4Mi42ODIgMzMuMDk4NSA2ODIuMTA1IDMzLjY5NDUgNjgyLjEwNSAzNC41NjdDNjgyLjEwNSAzNS40NTYgNjgyLjcxOSAzNS45OTE2IDY4My42NjggMzUuOTkxNkM2ODQuMDU4IDM1Ljk5MTYgNjg0LjQzIDM1Ljg5NzMgNjg0Ljg4OCAzNS43MDU5VjM2LjU0MjZDNjg0LjU4MiAzNi42Nzc0IDY4My45OTcgMzYuNzg5OCA2ODMuNTE1IDM2Ljc4OThDNjgyLjEzNiAzNi43ODk4IDY4MS4xOCAzNS45MDYyIDY4MS4xOCAzNC42NDMyQzY4MS4xOCAzMy4yMTc4IDY4Mi4wNTQgMzIuMzE4IDY4My40NTMgMzIuMzE4QzY4My45ODcgMzIuMzE4IDY4NC4zNDYgMzIuNDMzOSA2ODQuNzg3IDMyLjYxNDVMNjg0Ljc4NiAzMy41MzA5Wk02ODguOTM0IDMyLjQwMDRINjkwLjM5NVYzMy4xNjUxSDY4OC45MzRWMzUuMzc1MkM2ODguOTM0IDM1Ljg4MTEgNjg5LjMyNyAzNi4wMjc0IDY4OS41OTMgMzYuMDI3NEM2ODkuOTIyIDM2LjAyNzQgNjkwLjI2MiAzNS45MiA2OTAuNjMgMzUuNzA3OVYzNi41MDM3QzY5MC4zMSAzNi42Njc4IDY4OS44MiAzNi43ODk4IDY4OS41MTkgMzYuNzg5OEM2ODguNTI4IDM2Ljc4OTggNjg4LjAyNyAzNi4yMTYxIDY4OC4wMjcgMzUuNDM5MVYzMy4xNjUxSDY4Ny4yMjRWMzMuMDcwM0w2ODguOTM0IDMxLjUxMDJWMzIuNDAwNFpNNjkzLjg3NiAzMi40MDA0VjMzLjM5NjlINjkzLjg5NUM2OTQuMzU5IDMyLjYzNDUgNjk0LjggMzIuMzE4IDY5NS4yMyAzMi4zMThDNjk1LjYwMSAzMi4zMTggNjk1Ljk0NyAzMi40ODAxIDY5Ni4zMjkgMzIuODE2Nkw2OTUuODQ3IDMzLjU2NDRDNjk1LjU3IDMzLjMwOTEgNjk1LjIxMSAzMy4xMzMxIDY5NC45OTUgMzMuMTMzMUM2OTQuMzY4IDMzLjEzMzEgNjkzLjg3NiAzMy43MjY4IDY5My44NzYgMzQuNDYyNlYzNi43MDkzSDY5Mi45NjdWMzIuNDAwNEg2OTMuODc2Wk03MDUuNjU3IDMzLjUzMDlDNzA1LjEzMSAzMy4xOTY2IDcwNC43ODIgMzMuMDk4NSA3MDQuMzgxIDMzLjA5ODVDNzAzLjU0OSAzMy4wOTg1IDcwMi45NzcgMzMuNjk0NSA3MDIuOTc3IDM0LjU2N0M3MDIuOTc3IDM1LjQ1NiA3MDMuNTkyIDM1Ljk5MTYgNzA0LjUzNSAzNS45OTE2QzcwNC45MjUgMzUuOTkxNiA3MDUuMjk1IDM1Ljg5NzMgNzA1Ljc2IDM1LjcwNTlWMzYuNTQyNkM3MDUuNDQ3IDM2LjY3NzQgNzA0Ljg2MiAzNi43ODk4IDcwNC4zOCAzNi43ODk4QzcwMy4wMDQgMzYuNzg5OCA3MDIuMDQ0IDM1LjkwNjIgNzAyLjA0NCAzNC42NDMyQzcwMi4wNDQgMzMuMjE3OCA3MDIuOTIyIDMyLjMxOCA3MDQuMzIgMzIuMzE4QzcwNC44NTUgMzIuMzE4IDcwNS4yMTIgMzIuNDMzOSA3MDUuNjU3IDMyLjYxNDVMNzA1LjY1NyAzMy41MzA5Wk02OTguNzQyIDM2LjcwOTNINjk5LjY1MlYzMi40MDA4SDY5OC43NDJWMzYuNzA5M1oiIGZpbGw9IiMwMDlFNEQiLz4NCjxwYXRoIGQ9Ik02OTkuNjg0IDMwLjg1MjVDNjk5Ljc3MyAzMS4wNjA0IDY5OS42MTggMzEuMzU0NCA2OTkuMzQ0IDMxLjUwNDFDNjk5LjA2OCAzMS42NTQzIDY5OC43NzYgMzEuNjA2MiA2OTguNjkzIDMxLjM5NzhDNjk4LjYxIDMxLjE4NzQgNjk4Ljc2MSAzMC44OTU4IDY5OS4wMzggMzAuNzQ1NkM2OTkuMzExIDMwLjU5MzUgNjk5LjYwMSAzMC42NDIxIDY5OS42ODQgMzAuODUyNVYzMC44NTI1Wk02NTguOTQgMzEuMjAwOUM2NTguNzc5IDMxLjIwMDkgNjU4LjcxMSAzMS4yMjU1IDY1OC42NDYgMzEuMjkzOEM2NTguNjIgMzEuMzIwMyA2NTguNjEgMzEuMzQ3MiA2NTguNiAzMS40MDExTDY1Ny43ODQgMzQuMjg3QzY1Ny41OTMgMzUuMjk5MiA2NTYuMjU5IDM2LjMwOTkgNjU0LjUyMSAzNi4zMDk5SDY1Mi4xMDRMNjUyLjUyMyAzNC44MjdINjU0LjA3NkM2NTQuMjM0IDM0LjgyNyA2NTQuMzU4IDM0Ljc3MjEgNjU0LjQ2MiAzNC42NjQzQzY1NC41IDM0LjYyMjUgNjU0LjU1IDM0LjU1NyA2NTQuNTU2IDM0LjQ4OTZMNjU1LjIwMSAzMS45NjgxQzY1NS4zOTEgMzAuOTU1NSA2NTYuNTM4IDI5LjgzNjkgNjU4LjI3NiAyOS44MzY5SDY2MC43NTFMNjYwLjQzNSAzMS4yMDA5SDY1OC45NFpNNjU5LjQ5NyAzMi45NTk2TDY1OS43NzMgMzIuMDI1OUg2NjIuMjg4QzY2Mi41OTggMzAuNjcyIDY2Mi4zNTQgMjkuNDE3NyA2NjEuNDczIDI4LjU5NjFDNjU5LjY4OSAyNi45MzMyIDY1NS45NTcgMjcuNDk4MyA2NTMuMTc3IDI5Ljk3NzlDNjUyLjc0MyAzMC4zNjMgNjUyLjM3NiAzMC43NzkzIDY1Mi4wNDIgMzEuMjA0OEg2NTMuNTU2TDY1My4yMDQgMzIuMTQwNEg2NTEuMzk1QzY1MS4yMjIgMzIuNDM1NCA2NTEuMDYgMzIuNzI4MSA2NTAuOTM2IDMzLjAyNUg2NTMuMDgxTDY1Mi43MzcgMzMuOTYwN0g2NTAuNjNDNjUwLjI2OSAzNS4zOTAxIDY1MC40OTkgMzYuNzIzMyA2NTEuNDA2IDM3LjU2OTlDNjUzLjE2NyAzOS4yMTE2IDY1Ni44ODggMzguNjM0NiA2NTkuNjY3IDM2LjE1NTRDNjYwLjE1MyAzNS43MjQyIDY2MC41NTUgMzUuMjU4NyA2NjAuOTE4IDM0Ljc4MDhINjU4Ljk3M0w2NTkuMjY5IDMzLjg0NzFINjYxLjU0M0M2NjEuNzEgMzMuNTUwMSA2NjEuODYzIDMzLjI1NjUgNjYxLjk4MyAzMi45NTk2SDY1OS40OTdaIiBmaWxsPSIjMDA5RTREIi8+DQo8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfNThfMTExKSI+DQo8cGF0aCBkPSJNNzc1LjA2OCA0MS4yMjc0Qzc2Ni4yODUgNDIuMDQ2MyA3NTcuMTMxIDQwLjc1NjQgNzU1Ljg0OCAzMy44MTlDNzU1LjIyMSAzMC4zOTkgNzU2Ljc2NSAyNi43NzI1IDc1OC44MSAyNC41MTg0VjIzLjMxNDhDNzU1LjEyNiAyNi41OCA3NTMuMTMgMzAuNzExNSA3NTQuMjggMzUuNTkyQzc1NS43NDggNDEuODUxOCA3NjMuNjAzIDQ1LjM5NjcgNzc1LjU5NSA0NC4yMTk1Qzc4MC4zNDIgNDMuNzU0NSA3ODYuNTUgNDIuMjEyIDc5MC44NjkgMzkuODE0NFYzNi40MTA5Qzc4Ni45NDkgMzguNzcxMyA3ODAuNDY4IDQwLjcyMTEgNzc1LjA2OCA0MS4yMjc0VjQxLjIyNzRaTTc5OC4yMDUgMjMuMjMzNUM3OTYuMTIyIDEyLjk1MzMgNzc2LjM3MyAxMi4zMDE2IDc2My42NDMgMjAuMTMzOFYyMC45OTg5Qzc3Ni4zNTkgMTQuMzkxNSA3OTQuMzk1IDE0LjQzMTcgNzk2LjAzNyAyMy45MDE2Qzc5Ni41ODkgMjcuMDM0MiA3OTQuODQzIDMwLjI5NzggNzkxLjcyMyAzMi4xNzdWMzQuNjM0MkM3OTUuNDc2IDMzLjI0MzIgNzk5LjMyNCAyOC43NDQyIDc5OC4yMDUgMjMuMjMzNVYyMy4yMzM1WiIgZmlsbD0iIzBFN0RDMiIvPg0KPHBhdGggZD0iTTc5MC4xNTkgMjEuNzM2OEg3ODcuODU2VjMyLjEwM0M3ODcuODU2IDMzLjMxNzkgNzg4LjQzNyAzNC4zNzQ0IDc5MC4xNTkgMzQuNTQzMlYyMS43MzY4Wk03NjIuNzM5IDI1LjUyMTdINzYwLjQzMkw3NjAuNDMxIDMyLjI5NDNDNzYwLjQzMSAzMy41MTM0IDc2MS4wMTMgMzQuNTY4OCA3NjIuNzM5IDM0LjczNDRWMjUuNTIxN1YyNS41MjE3Wk03NjAuNDMyIDIyLjA1MjFINzYyLjczMlYyNC4yNTg0SDc2MC40MzJWMjIuMDUyMVpNNzc2LjUzIDM0LjYyNzJDNzc0LjY2NiAzNC42MjcyIDc3My44NzcgMzMuMzE3NyA3NzMuODc3IDMyLjAyOFYyMy4wMzU1SDc3Ni4xNlYyNS41MjE3SDc3Ny44NzlWMjcuMzg1M0g3NzYuMTZWMzEuODg1NEM3NzYuMTYgMzIuNDExMyA3NzYuNDA3IDMyLjcwNDQgNzc2Ljk1IDMyLjcwNDRINzc3Ljg3OVYzNC42MjcyTDc3Ni41MyAzNC42MjcyVjM0LjYyNzJaTTc4MC43MzEgMzAuNzk2MUM3ODAuNzMxIDMxLjk3NjggNzgxLjQ2MSAzMi44NDQ2IDc4Mi43NTQgMzIuODQ0NkM3ODMuNzY2IDMyLjg0NDYgNzg0LjI2NiAzMi41NjA1IDc4NC44NSAzMS45NzY4TDc4Ni4yNjEgMzMuMzM0OUM3ODUuMzU3IDM0LjIzNzkgNzg0LjQwOSAzNC43ODcgNzgyLjczNyAzNC43ODdDNzgwLjU1MiAzNC43ODcgNzc4LjQ1OSAzMy41ODE5IDc3OC40NTkgMzAuMDY4NkM3NzguNDU5IDI3LjA2NTEgNzgwLjI4OCAyNS4zNjczIDc4Mi42ODYgMjUuMzY3M0M3ODUuMTI0IDI1LjM2NzMgNzg2LjUyNSAyNy4zNTQ5IDc4Ni41MjUgMjkuOTYzOVYzMC43OTYzSDc4MC43MzFWMzAuNzk2MVpNNzgyLjU4NiAyNy4yNzU2Qzc4MS44MDUgMjcuMjc1NiA3ODEuMjA0IDI3LjY4MjMgNzgwLjk1IDI4LjIzMDlDNzgwLjgwMiAyOC41NjA3IDc4MC43NDcgMjguODE3NyA3ODAuNzMxIDI5LjIyMjlINzg0LjI0OUM3ODQuMjA0IDI4LjIzMDkgNzgzLjc1OSAyNy4yNzU2IDc4Mi41ODYgMjcuMjc1NlpNNzY4LjkzOSAyNy4zODUzQzc2OS42MDggMjcuMzg1MyA3NjkuODg3IDI3LjcxOTggNzY5Ljg4NyAyOC4yNjI2VjM0LjY0MDZINzcyLjE3VjI4LjI0OTJDNzcyLjE3IDI2Ljk1NDIgNzcxLjQ4NyAyNS41MjQxIDc2OS40ODIgMjUuNTI0MUw3NjQuNzY2IDI1LjUyMTdWMzQuNjQwNkg3NjcuMDVWMjcuMzg1M0g3NjguOTM5VjI3LjM4NTNaTTc5Mi42MzcgMjMuNTg5MUM3OTIuMTI5IDIzLjU4OTEgNzkxLjcyNCAyMy4xNzU0IDc5MS43MjQgMjIuNjYyOUM3OTEuNzI0IDIyLjE1MjkgNzkyLjEyOSAyMS43MzY4IDc5Mi42MzcgMjEuNzM2OEM3OTMuMTQyIDIxLjczNjggNzkzLjU1NiAyMi4xNTI5IDc5My41NTYgMjIuNjYyOUM3OTMuNTU2IDIzLjE3NTQgNzkzLjE0MiAyMy41ODkxIDc5Mi42MzcgMjMuNTg5MVpNNzkyLjYzNyAyMS44OTEyQzc5Mi4yMTggMjEuODkxMiA3OTEuODgyIDIyLjI0MDcgNzkxLjg4MiAyMi42NjI5Qzc5MS44ODIgMjMuMDg3NiA3OTIuMjE4IDIzLjQzMDkgNzkyLjYzNyAyMy40MzA5Qzc5My4wNTUgMjMuNDMwOSA3OTMuNDAyIDIzLjA4NzYgNzkzLjQwMiAyMi42NjI5Qzc5My40MDIgMjIuMjQwNyA3OTMuMDU1IDIxLjg5MTIgNzkyLjYzNyAyMS44OTEyWk03OTMuMDQzIDIzLjIxOEg3OTIuODcyQzc5Mi44NjQgMjMuMjE3OSA3OTIuODU3IDIzLjIxNTcgNzkyLjg1MSAyMy4yMTE2Qzc5Mi44NDUgMjMuMjA3NSA3OTIuODQgMjMuMjAxNyA3OTIuODM3IDIzLjE5NDlMNzkyLjYwNSAyMi43OTdDNzkyLjU5OCAyMi43ODg1IDc5Mi41NzkgMjIuNzc4OCA3OTIuNTczIDIyLjc3ODhINzkyLjQ2N1YyMy4xNzU0Qzc5Mi40NjcgMjMuMTk1IDc5Mi40NTMgMjMuMjE4MSA3OTIuNDI4IDIzLjIxODFINzkyLjI3NEM3OTIuMjUxIDIzLjIxODEgNzkyLjIzNSAyMy4xOTUgNzkyLjIzNSAyMy4xNzU0VjIyLjE3NDlDNzkyLjIzNSAyMi4xMTY0IDc5Mi4yNTQgMjIuMDkyNCA3OTIuMzA1IDIyLjA4NUM3OTIuMzYxIDIyLjA3OSA3OTIuNTA1IDIyLjA3MTYgNzkyLjU4NiAyMi4wNzE2Qzc5Mi44NzIgMjIuMDcxNiA3OTMuMDM5IDIyLjE1NjYgNzkzLjAzOSAyMi40MjQ0VjIyLjQ0NEM3OTMuMDM5IDIyLjYwOTQgNzkyLjk1OSAyMi42OTk1IDc5Mi44MzMgMjIuNzM5N0w3OTMuMDc0IDIzLjE1NDdDNzkzLjA3OCAyMy4xNjQgNzkzLjA4IDIzLjE3MzkgNzkzLjA4IDIzLjE4NEM3OTMuMDggMjMuMTk5NyA3OTMuMDcyIDIzLjIxOCA3OTMuMDQzIDIzLjIxOFYyMy4yMThaTTc5Mi44MjEgMjIuNDI0NEM3OTIuODIxIDIyLjMxMjcgNzkyLjc1MiAyMi4yNzczIDc5Mi42MDUgMjIuMjc3M0g3OTIuNDU5VjIyLjU5NDdDNzkyLjQ4MiAyMi41OTQ3IDc5Mi41ODYgMjIuNTk5NiA3OTIuNjA1IDIyLjU5OTZDNzkyLjc1MiAyMi41OTk2IDc5Mi44MjEgMjIuNTUgNzkyLjgyMSAyMi40NDRWMjIuNDI0NFoiIGZpbGw9IiMwRTdEQzIiLz4NCjwvZz4NCjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMV81OF8xMTEpIj4NCjxwYXRoIGQ9Ik01MzMuNzczIDIwLjk5MTFDNTI5LjI2MyAyMC45OTExIDUyNS41OTkgMjQuNjU0NyA1MjUuNTk5IDI5LjE2NDRDNTI1LjU5OSAzMy42NzQxIDUyOS4yNjMgMzcuMzM3NyA1MzMuNzczIDM3LjMzNzdDNTM4LjI4MiAzNy4zMzc3IDU0MS45NDYgMzMuNjc0MSA1NDEuOTQ2IDI5LjE2NDRDNTQxLjk0NiAyNC42NTQ3IDUzOC4yODIgMjAuOTkxMSA1MzMuNzczIDIwLjk5MTFaTTUzMy43NzMgMzYuNTE4NkM1MjkuNzEzIDM2LjUxODYgNTI2LjQxOSAzMy4yMTUgNTI2LjQxOSAyOS4xNjQ0QzUyNi40MTkgMjUuMTEzNyA1MjkuNzEzIDIxLjgxMDIgNTMzLjc3MyAyMS44MTAyQzUzNy44MzIgMjEuODEwMiA1NDEuMTI3IDI1LjExMzcgNTQxLjEyNyAyOS4xNjQ0QzU0MS4xMjcgMzMuMjE1IDUzNy44MzIgMzYuNTE4NiA1MzMuNzczIDM2LjUxODZaIiBmaWxsPSJibGFjayIvPg0KPHBhdGggZD0iTTUzNi42OSAyMy45MjUyQzUzNi42NjMgMjMuOTA3MiA1MzYuNjI3IDIzLjg5ODIgNTM2LjU5MSAyMy44OTgyQzUzNi40ODMgMjMuODk4MiA1MzYuNDAyIDIzLjk3OTIgNTM2LjQwMiAyNC4wODczVjI2LjY0MzdDNTM2LjQwMiAyNi43MzM3IDUzNi4zMyAyNi44MDU3IDUzNi4yNCAyNi44MDU3SDUzMS4yOUM1MzEuMiAyNi44MDU3IDUzMS4xMzcgMjYuNzMzNyA1MzEuMTI4IDI2LjY0MzdWMjQuMDg3M0M1MzEuMTI4IDI0LjA1MTMgNTMxLjExOSAyNC4wMjQyIDUzMS4xMDEgMjMuOTg4MkM1MzEuMDQ3IDIzLjg5ODIgNTMwLjkzIDIzLjg3MTIgNTMwLjgzOSAyMy45MjUyQzUyOS4wMTIgMjUuMDUwNCA1MjcuOTA1IDI3LjAwMzcgNTI3LjkwNSAyOS4xNjQxQzUyNy45MDUgMzEuMzI0NCA1MjkuMDEyIDMzLjI3NzcgNTMwLjg1NyAzNC40MDI5QzUzMC44ODUgMzQuNDIwOSA1MzAuOTIxIDM0LjQyOTkgNTMwLjk1NyAzNC40Mjk5QzUzMS4wNjUgMzQuNDI5OSA1MzEuMTQ2IDM0LjM0ODkgNTMxLjE0NiAzNC4yNDA5VjMxLjY4NDVDNTMxLjE0NiAzMS41OTQ0IDUzMS4yMTggMzEuNTMxNCA1MzEuMzA4IDMxLjUyMjRINTM2LjI1OEM1MzYuMzQ4IDMxLjUyMjQgNTM2LjQyIDMxLjU5NDQgNTM2LjQyIDMxLjY4NDVWMzQuMjQwOUM1MzYuNDIgMzQuMjc2OSA1MzYuNDI5IDM0LjMwMzkgNTM2LjQ0NyAzNC4zMzk5QzUzNi41MDEgMzQuNDI5OSA1MzYuNjE4IDM0LjQ1NjkgNTM2LjcwOCAzNC40MDI5QzUzOC41NTQgMzMuMjc3NyA1MzkuNjYxIDMxLjMyNDQgNTM5LjY2MSAyOS4xNjQxQzUzOS42NjEgMjcuMDAzNyA1MzguNTM2IDI1LjA1MDQgNTM2LjY5IDIzLjkyNTJWMjMuOTI1MlpNNTMwLjE5MSAzMi4zNjg2TDUzMC4yMTggMzIuNjc0Nkw1MzAuMDIgMzIuNDMxNkM1MjguNDk5IDMwLjUxNDMgNTI4LjQ5OSAyNy44MDQ4IDUzMC4wMiAyNS44ODc1TDUzMC4xOTEgMjUuNjcxNUw1MzAuMjE4IDI1LjY0NDVMNTMwLjE5MSAyNS45NTk2QzUzMC4xNjQgMjYuMjExNiA1MzAuMTU1IDI2LjQ3MjYgNTMwLjE1NSAyNi43MzM3VjMxLjU4NTRDNTMwLjE1NSAzMS44NDY1IDUzMC4xNzMgMzIuMTA3NSA1MzAuMTkxIDMyLjM2ODZaTTUzNi40MDIgMzAuMzg4M0M1MzYuNDAyIDMwLjQ3ODMgNTM2LjMzIDMwLjU1MDMgNTM2LjI0IDMwLjU1MDNINTMxLjI5QzUzMS4yIDMwLjU1MDMgNTMxLjEzNyAzMC40NzgzIDUzMS4xMjggMzAuMzg4M1YyNy45Mzk5QzUzMS4xMjggMjcuODQ5OSA1MzEuMiAyNy43Nzc4IDUzMS4yOSAyNy43Nzc4SDUzNi4yNEM1MzYuMzMgMjcuNzc3OCA1MzYuNDAyIDI3Ljg0OTkgNTM2LjQwMiAyNy45Mzk5VjMwLjM4ODNaTTUzNy41MTkgMzIuNDMxNkw1MzcuMzIxIDMyLjY3NDZMNTM3LjM0OCAzMi4zNjg2QzUzNy4zNzUgMzIuMTE2NSA1MzcuMzg0IDMxLjg1NTUgNTM3LjM4NCAzMS41OTQ0VjI2LjczMzdDNTM3LjM4NCAyNi40NzI2IDUzNy4zNzUgMjYuMjExNiA1MzcuMzQ4IDI1Ljk1OTZMNTM3LjMzOSAyNS44MjQ1TDUzNy4zMyAyNS42ODA1VjI1LjY0NDVMNTM3LjUxOSAyNS44ODc1QzUzOC4yNTcgMjYuODA1NyA1MzguNjYyIDI3Ljk3NTkgNTM4LjY2MiAyOS4xNTUxQzUzOC42NjIgMzAuMzM0MiA1MzguMjU3IDMxLjUxMzQgNTM3LjUxOSAzMi40MzE2VjMyLjQzMTZaIiBmaWxsPSJibGFjayIvPg0KPHBhdGggZD0iTTU1NC4yNzYgMjkuMDIwMkM1NTQuMjMxIDI5LjAwMjIgNTU0LjE3NyAyOC45ODQyIDU1NC4xNzcgMjguOTMwMkM1NTQuMTc3IDI4Ljg5NDIgNTU0LjE5NSAyOC44NjcyIDU1NC4yMzEgMjguODQ5MkM1NTQuMjk0IDI4LjgyMjIgNTU1Ljg1MSAyOC4yNjQxIDU1NS44NTEgMjYuNDI3OEM1NTUuODUxIDI0LjM4NDUgNTU0LjQ3NCAyMy4xNjkzIDU1Mi4xNTIgMjMuMTY5M0g1NDYuNTI2VjM1LjE3NzJINTUyLjY2NUM1NTQuNDU2IDM1LjE3NzIgNTU2LjM4MiAzMy45MDggNTU2LjM4MiAzMS44NjQ2QzU1Ni4zODIgMjkuOTExMyA1NTQuOTA2IDI5LjIyNzIgNTU0LjI3NiAyOS4wMjAyVjI5LjAyMDJaTTU0OS4zNjEgMjUuNjI2N0M1NDkuMzYxIDI1LjU4MTcgNTQ5LjM5NyAyNS41NDU2IDU0OS40NDIgMjUuNTQ1Nkg1NTEuNjc1QzU1Mi40MTMgMjUuNTQ1NiA1NTIuOTE3IDI2LjA0MDcgNTUyLjkxNyAyNi43Nzg4QzU1Mi45MTcgMjcuMzU0OSA1NTIuNDY3IDI3Ljk3NiA1NTEuNjIxIDI3Ljk3Nkg1NDkuNDQyQzU0OS4zOTcgMjcuOTc2IDU0OS4zNjEgMjcuOTQgNTQ5LjM2MSAyNy44OTVWMjUuNjI2N1pNNTUxLjY3NSAzMi44MDk4SDU0OS40NDJDNTQ5LjM5NyAzMi44MDk4IDU0OS4zNjEgMzIuNzczOCA1NDkuMzYxIDMyLjcyODhWMzAuMzM0NEM1NDkuMzYxIDMwLjI4OTQgNTQ5LjM5NyAzMC4yNTM0IDU0OS40NDIgMzAuMjUzNEg1NTEuNjIxQzU1Mi42OTIgMzAuMjUzNCA1NTMuMzA0IDMwLjcxMjUgNTUzLjMwNCAzMS41MjI2QzU1My4zMDQgMzIuMzU5NyA1NTIuNzM3IDMyLjgwOTggNTUxLjY3NSAzMi44MDk4VjMyLjgwOThaTTU3NS4zODQgMjcuOTQ5TDU3NC45NTIgMjcuODU5QzU3My45OCAyNy42NTIgNTczLjAzNSAyNy4zOTA5IDU3My4wMzUgMjYuNTUzOEM1NzMuMDM1IDI1LjcxNjcgNTczLjgxOCAyNS4zMzg2IDU3NC41OTIgMjUuMzM4NkM1NzUuNTAxIDI1LjMzODYgNTc2LjQwMSAyNS43NDM3IDU3Ny4wODYgMjYuNDQ1OEw1NzguODY4IDI0LjY4MTVDNTc4LjEwMyAyMy44MzU0IDU3Ni43NDQgMjIuODYzMiA1NzQuNTQ3IDIyLjg2MzJDNTcxLjkwMSAyMi44NjMyIDU3MC4xMTggMjQuMzY2NSA1NzAuMTE4IDI2LjYwNzhDNTcwLjExOCAyOC45NzUyIDU3MS45ODIgMjkuODY2MyA1NzMuNTQ4IDMwLjE5OTRMNTczLjk3MSAzMC4yODk0QzU3NS40OTIgMzAuNjEzNSA1NzYuMjEyIDMwLjg1NjUgNTc2LjIxMiAzMS43MjA2QzU3Ni4yMTIgMzIuNDk0NyA1NzUuNTE5IDMzLjAwNzggNTc0LjQ5MyAzMy4wMDc4QzU3My4yODcgMzMuMDA3OCA1NzIuMjE2IDMyLjQ3NjcgNTcxLjQwNiAzMS40Nzc2TDU2OS41NzggMzMuMjY4OUM1NzAuNTUxIDM0LjQyMTEgNTcxLjgzOCAzNS40NjUyIDU3NC41MjkgMzUuNDY1MkM1NzYuODI1IDM1LjQ2NTIgNTc5LjE1NiAzNC4xMzMgNTc5LjE1NiAzMS41NzY2QzU3OS4xNDcgMjguOTU3MiA1NzcuMzY1IDI4LjM2MzEgNTc1LjM4NCAyNy45NDlWMjcuOTQ5Wk01OTkuMTAzIDIzLjE2OTNWMjcuNTYyQzU5OS4xMDMgMjcuNjA3IDU5OS4wNjcgMjcuNjQzIDU5OS4wMjIgMjcuNjQzSDU5NS4zMzFDNTk1LjI4NiAyNy42NDMgNTk1LjI1IDI3LjYwNyA1OTUuMjUgMjcuNTYyVjIzLjE2OTNINTkyLjIyNlYzNS4xNzcySDU5NS4yNVYzMC40NjA0QzU5NS4yNSAzMC40MTU0IDU5NS4yODYgMzAuMzc5NCA1OTUuMzMxIDMwLjM3OTRINTk5LjAyMkM1OTkuMDY3IDMwLjM3OTQgNTk5LjEwMyAzMC40MTU0IDU5OS4xMDMgMzAuNDYwNFYzNS4xNzcySDYwMi4xNDZWMjMuMTY5M0g1OTkuMTAzWk01ODYuMTQxIDMyLjcxOThDNTg0Ljc4MiAzMi43MTk4IDU4My4zMTUgMzEuNTg1NiA1ODMuMzE1IDI5LjA5MjJDNTgzLjMxNSAyNi44MTQ4IDU4NC42OTIgMjUuNjI2NyA1ODYuMDUxIDI1LjYyNjdDNTg3LjA0MSAyNS42MjY3IDU4Ny43MzQgMjYuMDQwNyA1ODguMjgzIDI2Ljk1ODlMNTkwLjYwNiAyNS40MTk2QzU4OS40MTggMjMuNjczMyA1ODguMDA0IDIyLjg4MTIgNTg2LjAzMyAyMi44ODEyQzU4Mi4xNzEgMjIuODgxMiA1ODAuNDQzIDI2LjAwNDcgNTgwLjQ0MyAyOS4wOTIyQzU4MC40NDMgMzIuODQ1OCA1ODIuNzI5IDM1LjQ2NTIgNTg1Ljk5NyAzNS40NjUyQzU4OC40MjcgMzUuNDY1MiA1ODkuNTM1IDM0LjU3NDEgNTkwLjY5NiAzMi45MjY4TDU4OC4zNTUgMzEuMzUxNkM1ODcuODMzIDMyLjE5NzcgNTg3LjI2NiAzMi43MTk4IDU4Ni4xNDEgMzIuNzE5OFpNNTYzLjE3OCAyMi44NjMyQzU1OS44NzUgMjIuODYzMiA1NTcuNjYxIDI1LjM5MjYgNTU3LjY2MSAyOS4xNjQyQzU1Ny42NjEgMzIuOTM1OCA1NTkuODc1IDM1LjQ2NTIgNTYzLjE3OCAzNS40NjUyQzU2Ni40ODIgMzUuNDY1MiA1NjguNjk2IDMyLjkzNTggNTY4LjY5NiAyOS4xNjQyQzU2OC42OTYgMjUuMzkyNiA1NjYuNDgyIDIyLjg2MzIgNTYzLjE3OCAyMi44NjMyVjIyLjg2MzJaTTU2My4xNzggMzIuNzE5OEM1NjEuNTU4IDMyLjcxOTggNTYwLjUxNCAzMS4zMjQ2IDU2MC41MTQgMjkuMTY0MkM1NjAuNTE0IDI3LjAxMjkgNTYxLjU1OCAyNS42MjY3IDU2My4xNzggMjUuNjI2N0M1NjQuODA4IDI1LjYyNjcgNTY1Ljg2MSAyNy4wMTI5IDU2NS44NjEgMjkuMTY0MkM1NjUuODYxIDMxLjMyNDYgNTY0LjgwOCAzMi43MTk4IDU2My4xNzggMzIuNzE5OFoiIGZpbGw9IiNGODAwMDAiLz4NCjwvZz4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTQ2LjM0NCAyMi4xODExQzE0Ny41OTUgMjIuMjg1NCAxNDguODQ1IDIxLjU1NTMgMTQ5LjYyNyAyMC42Mjk4QzE1MC4zOTUgMTkuNjc4MSAxNTAuOTAzIDE4LjQwMDUgMTUwLjc3MyAxNy4wOTY5QzE0OS42NjYgMTcuMTQ5MSAxNDguMjk4IDE3LjgyNjkgMTQ3LjUxNyAxOC43Nzg2QzE0Ni44IDE5LjU5OTkgMTQ2LjE4OCAyMC45Mjk2IDE0Ni4zNDQgMjIuMTgxMVpNMTQ3Ljg0MSAyMy4wNzk3QzE0OC42NTMgMjIuNzYwNiAxNDkuNjU4IDIyLjM2NTYgMTUwLjc2IDIyLjQyOTFDMTUxLjQ2MyAyMi40ODEyIDE1My40OTUgMjIuNjg5OCAxNTQuNzk4IDI0LjYxOTJDMTU0Ljc5MiAyNC42MjM3IDE1NC43NzggMjQuNjMyMyAxNTQuNzU5IDI0LjY0NUMxNTQuNDM2IDI0Ljg1NDggMTUyLjM5IDI2LjE4NzEgMTUyLjQxNCAyOC44MTY5QzE1Mi40MzkgMzEuOTQ5OSAxNTQuOTg4IDMzLjExODMgMTU1LjMyMiAzMy4yNzExQzE1NS4zNDQgMzMuMjgxMSAxNTUuMzU2IDMzLjI4NjcgMTU1LjM1OCAzMy4yODgzQzE1NS4zNTYgMzMuMjkyNiAxNTUuMzU0IDMzLjMwMSAxNTUuMzUgMzMuMzEzM0MxNTUuMjgzIDMzLjUyODggMTU0Ljg0NSAzNC45NDg5IDE1My44NDcgMzYuNDA0QzE1Mi45MjIgMzcuNzU5OCAxNTEuOTcxIDM5LjA4OTUgMTUwLjQ2IDM5LjExNTZDMTQ5Ljc0OSAzOS4xMjgzIDE0OS4yNyAzOC45MjExIDE0OC43NzIgMzguNzA1NEMxNDguMjQ3IDM4LjQ3ODUgMTQ3LjcwMSAzOC4yNDIyIDE0Ni44NCAzOC4yNDIyQzE0NS45NDcgMzguMjQyMiAxNDUuMzc2IDM4LjQ4NDggMTQ0LjgyNiAzOC43MTg0QzE0NC4zNDggMzguOTIxNCAxNDMuODg3IDM5LjExNzQgMTQzLjI0NSAzOS4xNDE3QzE0MS43ODYgMzkuMTkzOCAxNDAuNjc5IDM3LjcwNzcgMTM5Ljc1NCAzNi4zNTE5QzEzNy44NjYgMzMuNjE0MyAxMzYuNDIgMjguNjM0NCAxMzguMzc0IDI1LjI3MUMxMzkuMzI1IDIzLjU4OTMgMTQxLjA1NyAyMi41MzM0IDE0Mi45MTkgMjIuNTA3M0MxNDMuNzMyIDIyLjQ5MjUgMTQ0LjUwNyAyMi44MDA2IDE0NS4xODQgMjMuMDcwMUMxNDUuNzAyIDIzLjI3NTggMTQ2LjE2MiAyMy40NTg5IDE0Ni41NCAyMy40NTg5QzE0Ni44NzcgMjMuNDU4OSAxNDcuMzE5IDIzLjI4NTEgMTQ3Ljg0MSAyMy4wNzk3WiIgZmlsbD0iYmxhY2siLz4NCjxwYXRoIGQ9Ik0zNi44NTg3IDM3LjUyNDFIMzEuOTg3NEwzNS4wMzQyIDE5LjY2NjhIMzkuOTA1MkwzNi44NTg3IDM3LjUyNDFaIiBmaWxsPSIjMDA1NzlGIi8+DQo8cGF0aCBkPSJNNTQuNTE1NyAyMC4xMDQxQzUzLjU1NDkgMTkuNzQyOCA1Mi4wMzA5IDE5LjM0MzggNTAuMTQ2NiAxOS4zNDM4QzQ1LjMzNjEgMTkuMzQzOCA0MS45NDg2IDIxLjc3NTMgNDEuOTI3OCAyNS4yNTE2QzQxLjg4NzggMjcuODE2NSA0NC4zNTMxIDI5LjI0MSA0Ni4xOTcgMzAuMDk2MkM0OC4wODE2IDMwLjk3MDEgNDguNzIyMyAzMS41NDA1IDQ4LjcyMjMgMzIuMzE5NEM0OC43MDMxIDMzLjUxNTcgNDcuMTk5NCAzNC4wNjcyIDQ1Ljc5NjkgMzQuMDY3MkM0My44NTIxIDM0LjA2NzIgNDIuODEgMzMuNzgyOSA0MS4yMjY0IDMzLjExNzNMNDAuNTg1IDMyLjgzMkwzOS45MDMzIDM2Ljg0MDZDNDEuMDQ1OCAzNy4zMzM5IDQzLjE1MDcgMzcuNzcxNyA0NS4zMzYxIDM3Ljc5MDlDNTAuNDQ3MyAzNy43OTA5IDUzLjc3NDkgMzUuMzk3MSA1My44MTQzIDMxLjY5MjVDNTMuODMzOCAyOS42NTk3IDUyLjUzMiAyOC4xMDIgNDkuNzI1NCAyNi44MjkyQzQ4LjAyMTcgMjYuMDEyMSA0Ni45NzgzIDI1LjQ2MTIgNDYuOTc4MyAyNC42MjUyQzQ2Ljk5ODMgMjMuODY1MiA0Ny44NjA4IDIzLjA4NjggNDkuNzg0IDIzLjA4NjhDNTEuMzY3NyAyMy4wNDg2IDUyLjUzMTIgMjMuNDA5NCA1My40MTI2IDIzLjc3MDVMNTMuODUzMiAyMy45NjAxTDU0LjUxNTcgMjAuMTA0MVoiIGZpbGw9IiMwMDU3OUYiLz4NCjxwYXRoIGQ9Ik02MC45OTI0IDMxLjE5NzlDNjEuMzkzNiAzMC4xNzIgNjIuOTM3MiAyNi4yMDE2IDYyLjkzNzIgMjYuMjAxNkM2Mi45MTcgMjYuMjM5NyA2My4zMzc2IDI1LjE1NjggNjMuNTc4MSAyNC40OTE5TDYzLjkxODYgMjYuMDMwNkM2My45MTg2IDI2LjAzMDYgNjQuODQxIDMwLjMwNTEgNjUuMDQxNCAzMS4xOTc5QzY0LjI4IDMxLjE5NzkgNjEuOTU0NiAzMS4xOTc5IDYwLjk5MjQgMzEuMTk3OVpNNjcuMDA1NCAxOS42NjY4SDYzLjIzNzRDNjIuMDc1NSAxOS42NjY4IDYxLjE5MjcgMTkuOTg5NSA2MC42OTE0IDIxLjE0ODRMNTMuNDU1OCAzNy41MjM5SDU4LjU2NzFDNTguNTY3MSAzNy41MjM5IDU5LjQwODUgMzUuMzE5OSA1OS41ODk0IDM0Ljg0NTJDNjAuMTUwMSAzNC44NDUyIDY1LjEyMjMgMzQuODQ1MiA2NS44NDM3IDM0Ljg0NTJDNjUuOTgzNSAzNS40NzIxIDY2LjQyNDkgMzcuNTIzOSA2Ni40MjQ5IDM3LjUyMzlINzAuOTM1Mkw2Ny4wMDU0IDE5LjY2NjhWMTkuNjY2OFoiIGZpbGw9IiMwMDU3OUYiLz4NCjxwYXRoIGQ9Ik0yNy45MTggMTkuNjY2OEwyMy4xNDc1IDMxLjg0MzhMMjIuNjI2MiAyOS4zNzQxQzIxLjc0NDIgMjYuNTI0NSAxOC45NzgxIDIzLjQyODQgMTUuODkxNCAyMS44ODlMMjAuMjYxIDM3LjUwNTJIMjUuNDEyMkwzMy4wNjkgMTkuNjY2OEgyNy45MThWMTkuNjY2OFoiIGZpbGw9IiMwMDU3OUYiLz4NCjxwYXRoIGQ9Ik0xOC43MTg0IDE5LjY2NjhIMTAuODgxMUwxMC44MDA5IDIwLjAyNzZDMTYuOTE0NSAyMS41MDk1IDIwLjk2MzUgMjUuMDgxNSAyMi42MjcgMjkuMzc0OUwyMC45MjMyIDIxLjE2NzlDMjAuNjQyNyAyMC4wMjc0IDE5Ljc4MDcgMTkuNzA0NCAxOC43MTg0IDE5LjY2NjhaIiBmaWxsPSIjRkFBNjFBIi8+DQo8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDJfNThfMTExKSI+DQo8cGF0aCBkPSJNMjIxLjE1OCAxNy40OTlWMTguOTM1NkgyMzEuMzA2VjE3LjQ5OUgyMjEuMTU4Wk0yMzIuNzQ0IDE3LjQ5OVYxOC45MzU2SDI0Ny4yMDZDMjQ3LjIwNiAxOC45MzU2IDI0NS43MjkgMTcuNDk5IDI0My43NzMgMTcuNDk5SDIzMi43NDRaTTI1MC4wNDMgMTcuNDk5VjE4LjkzNTZIMjU4Ljc5M0wyNTguMjczIDE3LjQ5OUgyNTAuMDQzWk0yNjUuMDY1IDE3LjQ5OUwyNjQuNTQ2IDE4LjkzNTZIMjczLjIxNlYxNy40OTlIMjY1LjA2NVpNMjIxLjE1OCAyMC4yOTI5VjIxLjcyOTZIMjMxLjMwNlYyMC4yOTI5SDIyMS4xNThaTTIzMi43NDQgMjAuMjk1VjIxLjcyOTdIMjQ4Ljg4NEMyNDguODg0IDIxLjcyOTcgMjQ4LjY5NiAyMC42MjM5IDI0OC4zNjcgMjAuMjk1SDIzMi43NDRaTTI1MC4wNDMgMjAuMjk1VjIxLjcyOTdIMjU5Ljc1MkwyNTkuMjcxIDIwLjI5NUgyNTAuMDQzWk0yNjQuMDI3IDIwLjI5NUwyNjMuNTQ2IDIxLjcyOTdIMjczLjIxNlYyMC4yOTVIMjY0LjAyN1YyMC4yOTVaTTIyNC4wNzQgMjMuMDg2OVYyNC41MjU3SDIyOC40NjlWMjMuMDg2OUgyMjQuMDc0VjIzLjA4NjlaTTIzNS42NjEgMjMuMDg2OVYyNC41MjU3SDI0MC4wNTZWMjMuMDg2OUgyMzUuNjYxVjIzLjA4NjlaTTI0NC4zMzEgMjMuMDg2OVYyNC41MjU3SDI0OC43MjZDMjQ4LjcyNiAyNC41MjU3IDI0OS4wMDUgMjMuNzY1OSAyNDkuMDA1IDIzLjA4NjlIMjQ0LjMzMVYyMy4wODY5Wk0yNTIuOTYgMjMuMDg2OVYyNC41MjU3SDI2MC43NTJMMjYwLjIzMiAyMy4wODY5SDI1Mi45NlYyMy4wODY5Wk0yNjMuMDY5IDIzLjA4NjlMMjYyLjU0OCAyNC41MjU3SDI3MC4zNzlWMjMuMDg2OUgyNjMuMDY5VjIzLjA4NjlaTTIyNC4wNzQgMjUuODgzVjI3LjMxOTdIMjI4LjQ2OVYyNS44ODNIMjI0LjA3NFYyNS44ODNaTTIzNS42NjEgMjUuODgzVjI3LjMxOTdIMjQ2Ljg4N0MyNDYuODg3IDI3LjMxOTcgMjQ3LjgyNiAyNi41ODI1IDI0OC4xMjUgMjUuODgzSDIzNS42NjFaTTI1Mi45NiAyNS44ODNWMjcuMzE5N0gyNTcuMzU1VjI2LjUyTDI1Ny42MzQgMjcuMzE5N0gyNjUuNjg0TDI2NS45ODQgMjYuNTJWMjcuMzE5N0gyNzAuMzc5VjI1Ljg4M0gyNjIuMTI5TDI2MS42OTEgMjcuMDk5OUwyNjEuMjUxIDI1Ljg4M0gyNTIuOTZaTTIyNC4wNzQgMjguNjc3VjMwLjExMzdIMjI4LjQ2OVYyOC42NzdIMjI0LjA3NFpNMjM1LjY2MSAyOC42NzdWMzAuMTEzN0gyNDguMTI1QzI0Ny44MjYgMjkuNDE2NSAyNDYuODg3IDI4LjY3NyAyNDYuODg3IDI4LjY3N0gyMzUuNjYxWk0yNTIuOTYgMjguNjc3VjMwLjExMzdIMjU3LjM1NVYyOC42NzdIMjUyLjk2Wk0yNTguMTUzIDI4LjY3N0wyNTguNjg1IDMwLjExMzdIMjY0LjcyMUwyNjUuMjI2IDI4LjY3N0gyNTguMTUzWk0yNjUuOTg0IDI4LjY3N1YzMC4xMTM3SDI3MC4zNzlWMjguNjc3SDI2NS45ODRaTTIyNC4wNzQgMzEuNDcxVjMyLjkwNzZIMjI4LjQ2OVYzMS40NzFIMjI0LjA3NFpNMjM1LjY2MSAzMS40NzFWMzIuOTA3NkgyNDAuMDU2VjMxLjQ3MUgyMzUuNjYxWk0yNDQuMzMxIDMxLjQ3MVYzMi45MDc2SDI0OS4wMDVDMjQ5LjAwNSAzMi4yMjk2IDI0OC43MjYgMzEuNDcxIDI0OC43MjYgMzEuNDcxSDI0NC4zMzFWMzEuNDcxWk0yNTIuOTYgMzEuNDcxVjMyLjkwNzZIMjU3LjM1NVYzMS40NzFIMjUyLjk2Wk0yNTkuMTUxIDMxLjQ3MUwyNTkuNjY2IDMyLjkwNzZIMjYzLjcxM0wyNjQuMjMyIDMxLjQ3MUgyNTkuMTUxWk0yNjUuOTg0IDMxLjQ3MVYzMi45MDc2SDI3MC4zNzlWMzEuNDcxSDI2NS45ODRaTTIyMS4yMzcgMzQuMjY1VjM1LjcwMzdIMjMxLjM4NlYzNC4yNjVIMjIxLjIzN1pNMjMyLjc0NCAzNC4yNjVWMzUuNzAzN0gyNDguMzY3QzI0OC42OTYgMzUuMzc0MyAyNDguODg0IDM0LjI2NSAyNDguODg0IDM0LjI2NUgyMzIuNzQ0VjM0LjI2NVpNMjUwLjEyMyAzNC4yNjVWMzUuNzAzN0gyNTcuMzU1VjM0LjI2NUgyNTAuMTIzWk0yNjAuMTUxIDM0LjI2NUwyNjAuNjggMzUuNzAzN0gyNjIuNzM5TDI2My4yMzYgMzQuMjY1SDI2MC4xNTFaTTI2NS45ODQgMzQuMjY1VjM1LjcwMzdIMjczLjI5NVYzNC4yNjVIMjY1Ljk4NFpNMjIxLjIzNyAzNy4wNjFWMzguNDk3N0gyMzEuMzg2VjM3LjA2MUgyMjEuMjM3Wk0yMzIuNzQ0IDM3LjA2MVYzOC40OTU2SDI0My43NzNDMjQ1LjcyOSAzOC40OTU2IDI0Ny4yMDYgMzcuMDYxIDI0Ny4yMDYgMzcuMDYxSDIzMi43NDRaTTI1MC4xMjMgMzcuMDYxVjM4LjQ5NzdIMjU3LjM1NVYzNy4wNjFIMjUwLjEyM1pNMjYxLjE1NSAzNy4wNjFMMjYxLjY2NCAzOC40OTM2TDI2MS43NTIgMzguNDk1NkwyNjIuMjY5IDM3LjA2MUgyNjEuMTU1VjM3LjA2MVpNMjY1Ljk4NCAzNy4wNjFWMzguNDk3N0gyNzMuMjk1VjM3LjA2MUgyNjUuOTg0WiIgZmlsbD0iIzFGNzBDMSIvPg0KPC9nPg0KPGRlZnM+DQo8Y2xpcFBhdGggaWQ9ImNsaXAwXzU4XzExMSI+DQo8cmVjdCB3aWR0aD0iNDQuNDQ3MyIgaGVpZ2h0PSIyOS42MzE1IiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNzUzLjk1NSAxNC44MTU1KSIvPg0KPC9jbGlwUGF0aD4NCjxjbGlwUGF0aCBpZD0iY2xpcDFfNThfMTExIj4NCjxyZWN0IHdpZHRoPSI3Ni41NDgxIiBoZWlnaHQ9IjE2LjM1MDciIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1MjUuNTk5IDIwLjk4ODkpIi8+DQo8L2NsaXBQYXRoPg0KPGNsaXBQYXRoIGlkPSJjbGlwMl81OF8xMTEiPg0KPHJlY3Qgd2lkdGg9IjUyLjEzNzIiIGhlaWdodD0iMjAuOTk4NyIgZmlsbD0id2hpdGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIyMS4xNTggMTcuNDk5KSIvPg0KPC9jbGlwUGF0aD4NCjwvZGVmcz4NCjwvc3ZnPg0K\" style=\"\n width: 742.5px;\n position: relative;\n top: 107px;\n left: 32px;\n \">\n <a href=" + accountURL + " style=\"\n float: left;\n border-radius: 56px;\n background: #0D6EFD;\n padding-top: 8px;\n width: 280px;\n height: 38px;\n text-align: center;\n position: relative;\n top: 127px;\n left: 274px;\n font-size: 16px;\n color: white;\n text-decoration: none;\n letter-spacing: 0.02em;\n \">Claim your FREE account</a>\n <div style=\"\n font-size: 14px;\n position: relative;\n top: 180px;\n left: 19px;\n letter-spacing: 0.02em;\n font-weight: 500;\n line-height: 125%;\n\">have a Syncfusion account? <a href=\"https://www.syncfusion.com/account/login?ReturnUrl=/account/login\" style=\"text-decoration: none;\ncolor: #0D6EFD;\nfont-weight: 500;\">Sign In</a></div>\n </div>\n </div>";
|
|
7004
|
+
if (typeof document !== 'undefined' && !isNullOrUndefined(document)) {
|
|
7005
|
+
var errorBackground = createElement('div', {
|
|
7006
|
+
innerHTML: bannerTemplate
|
|
7007
|
+
});
|
|
7008
|
+
document.body.appendChild(errorBackground);
|
|
7009
|
+
}
|
|
7010
|
+
};
|
|
6971
7011
|
|
|
6972
7012
|
var __extends$1 = (undefined && undefined.__extends) || (function () {
|
|
6973
7013
|
var extendStatics = function (d, b) {
|
|
@@ -6991,6 +7031,12 @@ var __decorate$1 = (undefined && undefined.__decorate) || function (decorators,
|
|
|
6991
7031
|
var componentCount = 0;
|
|
6992
7032
|
var lastPageID;
|
|
6993
7033
|
var lastHistoryLen = 0;
|
|
7034
|
+
// Decalre the static variable to count the instance
|
|
7035
|
+
var instancecount = 0;
|
|
7036
|
+
// Decalre the static variable to find if control limit exceed or not
|
|
7037
|
+
var isvalid = true;
|
|
7038
|
+
// We have added styles to inline type so here declare the static variable to detect if banner is added or not
|
|
7039
|
+
var isBannerAdded = false;
|
|
6994
7040
|
var versionBasedStatePersistence = false;
|
|
6995
7041
|
/**
|
|
6996
7042
|
* To enable or disable version based statePersistence functionality for all components globally.
|
|
@@ -7033,7 +7079,15 @@ var Component = /** @__PURE__ @class */ (function (_super) {
|
|
|
7033
7079
|
_this.localObserver = new Observer(_this);
|
|
7034
7080
|
// tslint:disable-next-line:no-function-constructor-with-string-args
|
|
7035
7081
|
onIntlChange.on('notifyExternalChange', _this.detectFunction, _this, _this.randomId);
|
|
7036
|
-
|
|
7082
|
+
// Based on the considered control list we have count the instance
|
|
7083
|
+
if (!validateLicense()) {
|
|
7084
|
+
if (componentList.indexOf(_this.getModuleName()) !== -1) {
|
|
7085
|
+
instancecount = instancecount + 1;
|
|
7086
|
+
if (instancecount > 5) {
|
|
7087
|
+
isvalid = false;
|
|
7088
|
+
}
|
|
7089
|
+
}
|
|
7090
|
+
}
|
|
7037
7091
|
if (!isUndefined(selector)) {
|
|
7038
7092
|
_this.appendTo();
|
|
7039
7093
|
}
|
|
@@ -7144,6 +7198,11 @@ var Component = /** @__PURE__ @class */ (function (_super) {
|
|
|
7144
7198
|
}
|
|
7145
7199
|
this.preRender();
|
|
7146
7200
|
this.injectModules();
|
|
7201
|
+
// Checked weather cases are valid or not. If control leads to more than five counts
|
|
7202
|
+
if (!isvalid && !isBannerAdded) {
|
|
7203
|
+
createLicenseOverlay();
|
|
7204
|
+
isBannerAdded = true;
|
|
7205
|
+
}
|
|
7147
7206
|
this.render();
|
|
7148
7207
|
if (!this.mount) {
|
|
7149
7208
|
this.trigger('created');
|
|
@@ -7253,8 +7312,8 @@ var Component = /** @__PURE__ @class */ (function (_super) {
|
|
|
7253
7312
|
this.prototype.injectedModules = [];
|
|
7254
7313
|
}
|
|
7255
7314
|
for (var i = 0; i < moduleList.length; i++) {
|
|
7256
|
-
if (this.prototype.injectedModules.indexOf(moduleList[i]) === -1) {
|
|
7257
|
-
this.prototype.injectedModules.push(moduleList[i]);
|
|
7315
|
+
if (this.prototype.injectedModules.indexOf(moduleList[parseInt(i.toString(), 10)]) === -1) {
|
|
7316
|
+
this.prototype.injectedModules.push(moduleList[parseInt(i.toString(), 10)]);
|
|
7258
7317
|
}
|
|
7259
7318
|
}
|
|
7260
7319
|
};
|
|
@@ -7321,9 +7380,11 @@ var Component = /** @__PURE__ @class */ (function (_super) {
|
|
|
7321
7380
|
}
|
|
7322
7381
|
}
|
|
7323
7382
|
};
|
|
7324
|
-
//
|
|
7383
|
+
// eslint-disable-next-line
|
|
7325
7384
|
Component.prototype.renderReactTemplates = function (callback) {
|
|
7326
|
-
|
|
7385
|
+
if (!isNullOrUndefined(callback)) {
|
|
7386
|
+
callback();
|
|
7387
|
+
}
|
|
7327
7388
|
};
|
|
7328
7389
|
// eslint-disable-next-line
|
|
7329
7390
|
Component.prototype.clearTemplate = function (templateName, index) {
|
|
@@ -7391,10 +7452,10 @@ var Component = /** @__PURE__ @class */ (function (_super) {
|
|
|
7391
7452
|
}).map(function (str) {
|
|
7392
7453
|
return str.replace(key + '.', '');
|
|
7393
7454
|
});
|
|
7394
|
-
newObj[key] = this_1.iterateJsonProperties(this_1.getActualProperties(value), newList);
|
|
7455
|
+
newObj["" + key] = this_1.iterateJsonProperties(this_1.getActualProperties(value), newList);
|
|
7395
7456
|
}
|
|
7396
7457
|
else {
|
|
7397
|
-
newObj[key] = value;
|
|
7458
|
+
newObj["" + key] = value;
|
|
7398
7459
|
}
|
|
7399
7460
|
}
|
|
7400
7461
|
};
|
|
@@ -7495,8 +7556,8 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
7495
7556
|
_this.prevLeft = 0;
|
|
7496
7557
|
_this.prevTop = 0;
|
|
7497
7558
|
_this.dragProcessStarted = false;
|
|
7498
|
-
/* tslint:disable no-any */
|
|
7499
7559
|
_this.eleTop = 0;
|
|
7560
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
7500
7561
|
_this.tapHoldTimer = 0;
|
|
7501
7562
|
_this.externalInitialize = false;
|
|
7502
7563
|
_this.diffY = 0;
|
|
@@ -7555,7 +7616,7 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
7555
7616
|
if (isNullOrUndefined(element)) {
|
|
7556
7617
|
return null;
|
|
7557
7618
|
}
|
|
7558
|
-
if (element[scroll[axis]] > element[client[axis]]) {
|
|
7619
|
+
if (element[scroll["" + axis]] > element[client["" + axis]]) {
|
|
7559
7620
|
if (axis === 'vertical' ? element.scrollTop > 0 : element.scrollLeft > 0) {
|
|
7560
7621
|
if (axis === 'vertical') {
|
|
7561
7622
|
this.parentScrollY = this.parentScrollY +
|
|
@@ -7607,7 +7668,7 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
7607
7668
|
abortSelectors = [abortSelectors];
|
|
7608
7669
|
}
|
|
7609
7670
|
for (var i = 0; i < abortSelectors.length; i++) {
|
|
7610
|
-
if (!isNullOrUndefined(closest(evt.target, abortSelectors[i]))) {
|
|
7671
|
+
if (!isNullOrUndefined(closest(evt.target, abortSelectors[parseInt(i.toString(), 10)]))) {
|
|
7611
7672
|
/* istanbul ignore next */
|
|
7612
7673
|
if (this.isDragStarted()) {
|
|
7613
7674
|
this.isDragStarted(true);
|
|
@@ -7661,7 +7722,7 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
7661
7722
|
left: parseInt(styleProp.marginLeft, 10),
|
|
7662
7723
|
top: parseInt(styleProp.marginTop, 10),
|
|
7663
7724
|
right: parseInt(styleProp.marginRight, 10),
|
|
7664
|
-
bottom: parseInt(styleProp.marginBottom, 10)
|
|
7725
|
+
bottom: parseInt(styleProp.marginBottom, 10)
|
|
7665
7726
|
};
|
|
7666
7727
|
var element = this.element;
|
|
7667
7728
|
if (this.clone && this.dragTarget) {
|
|
@@ -7733,6 +7794,9 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
7733
7794
|
top: (pos.top - this.diffY) + 'px',
|
|
7734
7795
|
left: (pos.left - this.diffX) + 'px'
|
|
7735
7796
|
});
|
|
7797
|
+
if (this.dragArea && typeof this.dragArea !== 'string' && this.dragArea.classList.contains('e-kanban-content') && this.dragArea.style.position === 'relative') {
|
|
7798
|
+
pos.top += this.dragArea.scrollTop;
|
|
7799
|
+
}
|
|
7736
7800
|
this.dragElePosition = { top: pos.top, left: pos.left };
|
|
7737
7801
|
setStyleAttribute(dragTargetElement, this.getDragPosition({ position: 'absolute', left: posValue.left, top: posValue.top }));
|
|
7738
7802
|
EventHandler.remove(document, Browser.touchMoveEvent, this.intDragStart);
|
|
@@ -7949,6 +8013,9 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
7949
8013
|
draEleTop -= this.parentScrollY;
|
|
7950
8014
|
draEleLeft -= this.parentScrollX;
|
|
7951
8015
|
}
|
|
8016
|
+
if (this.dragArea && typeof this.dragArea !== 'string' && this.dragArea.classList.contains('e-kanban-content') && this.dragArea.style.position === 'relative') {
|
|
8017
|
+
draEleTop += this.dragArea.scrollTop;
|
|
8018
|
+
}
|
|
7952
8019
|
var dragValue = this.getProcessedPositionValue({ top: draEleTop + 'px', left: draEleLeft + 'px' });
|
|
7953
8020
|
setStyleAttribute(helperElement, this.getDragPosition(dragValue));
|
|
7954
8021
|
if (!this.elementInViewport(helperElement) && this.enableAutoScroll && !this.helperElement.classList.contains('e-treeview')) {
|
|
@@ -7987,10 +8054,10 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
7987
8054
|
var nodeEl = reverse ? node.reverse() : node;
|
|
7988
8055
|
var hasScroll;
|
|
7989
8056
|
for (var i = nodeEl.length - 1; i >= 0; i--) {
|
|
7990
|
-
hasScroll = window.getComputedStyle(nodeEl[i])['overflow-y'];
|
|
8057
|
+
hasScroll = window.getComputedStyle(nodeEl[parseInt(i.toString(), 10)])['overflow-y'];
|
|
7991
8058
|
if ((hasScroll === 'auto' || hasScroll === 'scroll')
|
|
7992
|
-
&& nodeEl[i].scrollHeight > nodeEl[i].clientHeight) {
|
|
7993
|
-
return nodeEl[i];
|
|
8059
|
+
&& nodeEl[parseInt(i.toString(), 10)].scrollHeight > nodeEl[parseInt(i.toString(), 10)].clientHeight) {
|
|
8060
|
+
return nodeEl[parseInt(i.toString(), 10)];
|
|
7994
8061
|
}
|
|
7995
8062
|
}
|
|
7996
8063
|
hasScroll = window.getComputedStyle(document.scrollingElement)['overflow-y'];
|
|
@@ -8120,12 +8187,12 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
8120
8187
|
var keys = ['Top', 'Left', 'Bottom', 'Right'];
|
|
8121
8188
|
var styles = getComputedStyle(ele);
|
|
8122
8189
|
for (var i = 0; i < keys.length; i++) {
|
|
8123
|
-
var key = keys[i];
|
|
8190
|
+
var key = keys[parseInt(i.toString(), 10)];
|
|
8124
8191
|
var tborder = styles['border' + key + 'Width'];
|
|
8125
8192
|
var tpadding = styles['padding' + key];
|
|
8126
8193
|
var lowerKey = key.toLowerCase();
|
|
8127
|
-
this.borderWidth[lowerKey] = isNaN(parseFloat(tborder)) ? 0 : parseFloat(tborder);
|
|
8128
|
-
this.padding[lowerKey] = isNaN(parseFloat(tpadding)) ? 0 : parseFloat(tpadding);
|
|
8194
|
+
this.borderWidth["" + lowerKey] = isNaN(parseFloat(tborder)) ? 0 : parseFloat(tborder);
|
|
8195
|
+
this.padding["" + lowerKey] = isNaN(parseFloat(tpadding)) ? 0 : parseFloat(tpadding);
|
|
8129
8196
|
}
|
|
8130
8197
|
if (this.dragArea && !isNullOrUndefined(this.helperElement) && this.helperElement.classList.contains('e-treeview')) {
|
|
8131
8198
|
top = elementArea.top + document.scrollingElement.scrollTop;
|
|
@@ -8144,7 +8211,8 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
8144
8211
|
var intCoord = this.getCoordinates(evt);
|
|
8145
8212
|
var ele;
|
|
8146
8213
|
var prevStyle = this.helperElement.style.pointerEvents || '';
|
|
8147
|
-
|
|
8214
|
+
var isPointer = evt.type.indexOf('pointer') !== -1 && Browser.info.name === 'safari' && parseInt(Browser.info.version) > 12;
|
|
8215
|
+
if (compareElementParent(evt.target, this.helperElement) || evt.type.indexOf('touch') !== -1 || isPointer) {
|
|
8148
8216
|
this.helperElement.style.pointerEvents = 'none';
|
|
8149
8217
|
ele = document.elementFromPoint(intCoord.clientX, intCoord.clientY);
|
|
8150
8218
|
this.helperElement.style.pointerEvents = prevStyle;
|
|
@@ -8183,6 +8251,12 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
8183
8251
|
pageX = this.clone ? intCoord.pageX : (intCoord.pageX + window.pageXOffset) - this.relativeXPosition;
|
|
8184
8252
|
pageY = this.clone ? intCoord.pageY : (intCoord.pageY + window.pageYOffset) - this.relativeYPosition;
|
|
8185
8253
|
}
|
|
8254
|
+
if (document.scrollingElement) {
|
|
8255
|
+
var isVerticalScroll = document.scrollingElement.scrollHeight > 0 && document.scrollingElement.scrollHeight > document.scrollingElement.clientHeight && document.scrollingElement.scrollTop > 0;
|
|
8256
|
+
var isHorrizontalScroll = document.scrollingElement.scrollWidth > 0 && document.scrollingElement.scrollWidth > document.scrollingElement.clientWidth && document.scrollingElement.scrollLeft > 0;
|
|
8257
|
+
pageX = isHorrizontalScroll ? pageX - document.scrollingElement.scrollLeft : pageX;
|
|
8258
|
+
pageY = isVerticalScroll ? pageY - document.scrollingElement.scrollTop : pageY;
|
|
8259
|
+
}
|
|
8186
8260
|
return {
|
|
8187
8261
|
left: pageX - (this.margin.left + this.cursorAt.left),
|
|
8188
8262
|
top: pageY - (this.margin.top + this.cursorAt.top)
|
|
@@ -8235,7 +8309,7 @@ var Draggable = /** @__PURE__ @class */ (function (_super) {
|
|
|
8235
8309
|
if (eleInst) {
|
|
8236
8310
|
for (var _i = 0, eleInst_1 = eleInst; _i < eleInst_1.length; _i++) {
|
|
8237
8311
|
var inst = eleInst_1[_i];
|
|
8238
|
-
if (inst[name]() === 'droppable') {
|
|
8312
|
+
if (inst["" + name]() === 'droppable') {
|
|
8239
8313
|
drop = inst;
|
|
8240
8314
|
break;
|
|
8241
8315
|
}
|
|
@@ -8564,7 +8638,7 @@ var KeyboardEvents = /** @__PURE__ @class */ (function (_super) {
|
|
|
8564
8638
|
var keys = Object.keys(_this.keyConfigs);
|
|
8565
8639
|
for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
|
|
8566
8640
|
var key = keys_1[_i];
|
|
8567
|
-
var configCollection = _this.keyConfigs[key].split(',');
|
|
8641
|
+
var configCollection = _this.keyConfigs["" + key].split(',');
|
|
8568
8642
|
for (var _a = 0, configCollection_1 = configCollection; _a < configCollection_1.length; _a++) {
|
|
8569
8643
|
var rconfig = configCollection_1[_a];
|
|
8570
8644
|
var rKeyObj = KeyboardEvents_1.getKeyConfigData(rconfig.trim());
|
|
@@ -8641,7 +8715,7 @@ var KeyboardEvents = /** @__PURE__ @class */ (function (_super) {
|
|
|
8641
8715
|
*/
|
|
8642
8716
|
KeyboardEvents.getKeyConfigData = function (config) {
|
|
8643
8717
|
if (config in this.configCache) {
|
|
8644
|
-
return this.configCache[config];
|
|
8718
|
+
return this.configCache["" + config];
|
|
8645
8719
|
}
|
|
8646
8720
|
var keys = config.toLowerCase().split('+');
|
|
8647
8721
|
var keyData = {
|
|
@@ -8656,12 +8730,12 @@ var KeyboardEvents = /** @__PURE__ @class */ (function (_super) {
|
|
|
8656
8730
|
else {
|
|
8657
8731
|
keyData.keyCode = KeyboardEvents_1.getKeyCode(keys[keys.length - 1]);
|
|
8658
8732
|
}
|
|
8659
|
-
KeyboardEvents_1.configCache[config] = keyData;
|
|
8733
|
+
KeyboardEvents_1.configCache["" + config] = keyData;
|
|
8660
8734
|
return keyData;
|
|
8661
8735
|
};
|
|
8662
8736
|
// Return the keycode value as string
|
|
8663
8737
|
KeyboardEvents.getKeyCode = function (keyVal) {
|
|
8664
|
-
return keyCode[keyVal] || keyVal.toUpperCase().charCodeAt(0);
|
|
8738
|
+
return keyCode["" + keyVal] || keyVal.toUpperCase().charCodeAt(0);
|
|
8665
8739
|
};
|
|
8666
8740
|
var KeyboardEvents_1;
|
|
8667
8741
|
KeyboardEvents.configCache = {};
|
|
@@ -8743,11 +8817,11 @@ var L10n = /** @__PURE__ @class */ (function () {
|
|
|
8743
8817
|
*/
|
|
8744
8818
|
L10n.prototype.getConstant = function (prop) {
|
|
8745
8819
|
// Removed conditional operator because this method does not return correct value when passing 0 as value in localization
|
|
8746
|
-
if (!isNullOrUndefined(this.currentLocale[prop])) {
|
|
8747
|
-
return this.currentLocale[prop];
|
|
8820
|
+
if (!isNullOrUndefined(this.currentLocale["" + prop])) {
|
|
8821
|
+
return this.currentLocale["" + prop];
|
|
8748
8822
|
}
|
|
8749
8823
|
else {
|
|
8750
|
-
return this.localeStrings[prop] || '';
|
|
8824
|
+
return this.localeStrings["" + prop] || '';
|
|
8751
8825
|
}
|
|
8752
8826
|
};
|
|
8753
8827
|
/**
|
|
@@ -8758,8 +8832,8 @@ var L10n = /** @__PURE__ @class */ (function () {
|
|
|
8758
8832
|
* @returns {Object} ?
|
|
8759
8833
|
*/
|
|
8760
8834
|
L10n.prototype.intGetControlConstant = function (curObject, locale) {
|
|
8761
|
-
if ((curObject)[locale]) {
|
|
8762
|
-
return (curObject)[locale][this.controlName];
|
|
8835
|
+
if ((curObject)["" + locale]) {
|
|
8836
|
+
return (curObject)["" + locale][this.controlName];
|
|
8763
8837
|
}
|
|
8764
8838
|
return null;
|
|
8765
8839
|
};
|
|
@@ -9175,8 +9249,9 @@ var WINDOWFUNC = /\window\./gm;
|
|
|
9175
9249
|
function compile$1(template, helper, ignorePrefix) {
|
|
9176
9250
|
var argName = 'data';
|
|
9177
9251
|
var evalExpResult = evalExp(template, argName, helper, ignorePrefix);
|
|
9252
|
+
// eslint-disable-next-line
|
|
9178
9253
|
var condtion = "var valueRegEx = (/value=\\'([A-Za-z0-9 _]*)((.)([\\w)(!-;?-\u25A0\\s]+)['])/g);\n var hrefRegex = (/(?:href)([\\s='\"./]+)([\\w-./?=&\\\\#\"]+)((.)([\\w)(!-;/?-\u25A0\\s]+)['])/g);\n if(str.match(valueRegEx)){\n var check = str.match(valueRegEx);\n var str1 = str;\n for (var i=0; i < check.length; i++) {\n var check1 = str.match(valueRegEx)[i].split('value=')[1];\n var change = check1.match(/^'/) !== null ? check1.replace(/^'/, '\"') : check1;\n change =change.match(/.$/)[0] === '\\'' ? change.replace(/.$/,'\"') : change;\n str1 = str1.replace(check1, change);\n }\n str = str.replace(str, str1);\n }\n else if (str.match(/(?:href='')/) === null) {\n if(str.match(hrefRegex)) {\n var check = str.match(hrefRegex);\n var str1 = str;\n for (var i=0; i < check.length; i++) {\n var check1 = str.match(hrefRegex)[i].split('href=')[1];\n if (check1) {\n var change = check1.match(/^'/) !== null ? check1.replace(/^'/, '\"') : check1;\n change =change.match(/.$/)[0] === '\\'' ? change.replace(/.$/,'\"') : change;\n str1 = str1.replace(check1, change);\n }\n }\n str = str.replace(str, str1);\n }\n }\n ";
|
|
9179
|
-
var fnCode =
|
|
9254
|
+
var fnCode = 'var str=\"' + evalExpResult + '\";' + condtion + ' return str;';
|
|
9180
9255
|
var fn = new Function(argName, fnCode);
|
|
9181
9256
|
return fn.bind(helper);
|
|
9182
9257
|
}
|
|
@@ -9408,24 +9483,24 @@ function compile$$1(templateString, helper, ignorePrefix) {
|
|
|
9408
9483
|
if (isBlazor() && !isStringTemplate) {
|
|
9409
9484
|
var randomId = getRandomId();
|
|
9410
9485
|
var blazorId = templateId + randomId;
|
|
9411
|
-
if (!blazorTemplates[templateId]) {
|
|
9412
|
-
blazorTemplates[templateId] = [];
|
|
9486
|
+
if (!blazorTemplates["" + templateId]) {
|
|
9487
|
+
blazorTemplates["" + templateId] = [];
|
|
9413
9488
|
}
|
|
9414
9489
|
if (!isNullOrUndefined(index)) {
|
|
9415
|
-
var keys = Object.keys(blazorTemplates[templateId][index]);
|
|
9490
|
+
var keys = Object.keys(blazorTemplates["" + templateId][parseInt(index.toString(), 10)]);
|
|
9416
9491
|
for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
|
|
9417
9492
|
var key = keys_1[_i];
|
|
9418
|
-
if (key !== blazorTemplateId && data[key]) {
|
|
9419
|
-
blazorTemplates[templateId][index][key] = data[key];
|
|
9493
|
+
if (key !== blazorTemplateId && data["" + key]) {
|
|
9494
|
+
blazorTemplates["" + templateId][parseInt(index.toString(), 10)]["" + key] = data["" + key];
|
|
9420
9495
|
}
|
|
9421
9496
|
if (key === blazorTemplateId) {
|
|
9422
|
-
blazorId = blazorTemplates[templateId][index][key];
|
|
9497
|
+
blazorId = blazorTemplates["" + templateId][parseInt(index.toString(), 10)]["" + key];
|
|
9423
9498
|
}
|
|
9424
9499
|
}
|
|
9425
9500
|
}
|
|
9426
9501
|
else {
|
|
9427
|
-
data[blazorTemplateId] = blazorId;
|
|
9428
|
-
blazorTemplates[templateId].push(data);
|
|
9502
|
+
data["" + blazorTemplateId] = blazorId;
|
|
9503
|
+
blazorTemplates["" + templateId].push(data);
|
|
9429
9504
|
}
|
|
9430
9505
|
// eslint-disable-next-line
|
|
9431
9506
|
return propName === 'rowTemplate' ? [createElement('tr', { id: blazorId, className: 'e-blazor-template' })] :
|
|
@@ -9459,9 +9534,9 @@ function compile$$1(templateString, helper, ignorePrefix) {
|
|
|
9459
9534
|
function updateBlazorTemplate(templateId, templateName, comp, isEmpty, callBack) {
|
|
9460
9535
|
if (isBlazor()) {
|
|
9461
9536
|
var ejsIntrop = 'sfBlazor';
|
|
9462
|
-
window[ejsIntrop].updateTemplate(templateName, blazorTemplates[templateId], templateId, comp, callBack);
|
|
9537
|
+
window["" + ejsIntrop].updateTemplate(templateName, blazorTemplates["" + templateId], templateId, comp, callBack);
|
|
9463
9538
|
if (isEmpty !== false) {
|
|
9464
|
-
blazorTemplates[templateId] = [];
|
|
9539
|
+
blazorTemplates["" + templateId] = [];
|
|
9465
9540
|
}
|
|
9466
9541
|
}
|
|
9467
9542
|
}
|
|
@@ -9480,21 +9555,21 @@ function resetBlazorTemplate(templateId, templateName, index) {
|
|
|
9480
9555
|
for (var i = 0; i < innerTemplates.length; i++) {
|
|
9481
9556
|
var tempId = ' ';
|
|
9482
9557
|
if (!isNullOrUndefined(index)) {
|
|
9483
|
-
tempId = innerTemplates[index].getAttribute('data-templateId');
|
|
9558
|
+
tempId = innerTemplates[parseInt(index.toString(), 10)].getAttribute('data-templateId');
|
|
9484
9559
|
}
|
|
9485
9560
|
else {
|
|
9486
|
-
tempId = innerTemplates[i].getAttribute('data-templateId');
|
|
9561
|
+
tempId = innerTemplates[parseInt(i.toString(), 10)].getAttribute('data-templateId');
|
|
9487
9562
|
}
|
|
9488
9563
|
var tempElement = document.getElementById(tempId);
|
|
9489
9564
|
if (tempElement) {
|
|
9490
9565
|
var length_1 = tempElement.childNodes.length;
|
|
9491
9566
|
for (var j = 0; j < length_1; j++) {
|
|
9492
9567
|
if (!isNullOrUndefined(index)) {
|
|
9493
|
-
innerTemplates[index].appendChild(tempElement.childNodes[0]);
|
|
9568
|
+
innerTemplates[parseInt(index.toString(), 10)].appendChild(tempElement.childNodes[0]);
|
|
9494
9569
|
i = innerTemplates.length;
|
|
9495
9570
|
}
|
|
9496
9571
|
else {
|
|
9497
|
-
innerTemplates[i].appendChild(tempElement.childNodes[0]);
|
|
9572
|
+
innerTemplates[parseInt(i.toString(), 10)].appendChild(tempElement.childNodes[0]);
|
|
9498
9573
|
}
|
|
9499
9574
|
}
|
|
9500
9575
|
}
|
|
@@ -9676,9 +9751,9 @@ var SanitizeHtmlHelper = /** @__PURE__ @class */ (function () {
|
|
|
9676
9751
|
// Removes an element's attibute to avoid html tag validation
|
|
9677
9752
|
var nodes = this.wrapElement.children;
|
|
9678
9753
|
for (var j = 0; j < nodes.length; j++) {
|
|
9679
|
-
var attribute = nodes[j].attributes;
|
|
9754
|
+
var attribute = nodes[parseInt(j.toString(), 10)].attributes;
|
|
9680
9755
|
for (var i = 0; i < attribute.length; i++) {
|
|
9681
|
-
this.wrapElement.children[j].removeAttribute(attribute[i].localName);
|
|
9756
|
+
this.wrapElement.children[parseInt(j.toString(), 10)].removeAttribute(attribute[parseInt(i.toString(), 10)].localName);
|
|
9682
9757
|
}
|
|
9683
9758
|
}
|
|
9684
9759
|
};
|
|
@@ -9727,5 +9802,5 @@ var SanitizeHtmlHelper = /** @__PURE__ @class */ (function () {
|
|
|
9727
9802
|
* Base modules
|
|
9728
9803
|
*/
|
|
9729
9804
|
|
|
9730
|
-
export { blazorCultureFormats, IntlBase, Ajax, Animation, rippleEffect, isRippleEnabled, enableRipple, animationMode, setGlobalAnimation, Base, getComponent, removeChildInstance, Browser, versionBasedStatePersistence, enableVersionBasedPersistence, Component, ChildProperty, Position, Draggable, Droppable, EventHandler, onIntlChange, rightToLeft, cldrData, defaultCulture, defaultCurrencyCode, Internationalization, setCulture, setCurrencyCode, loadCldr, enableRtl, getNumericObject, getNumberDependable, getDefaultDateObject, KeyboardEvents, L10n, ModuleLoader, Property, Complex, ComplexFactory, Collection, CollectionFactory, Event$1 as Event, NotifyPropertyChanges, CreateBuilder, SwipeSettings, Touch, HijriParser, blazorTemplates, getRandomId, compile$$1 as compile, updateBlazorTemplate, resetBlazorTemplate, setTemplateEngine, getTemplateEngine, disableBlazorMode, createInstance, setImmediate, getValue, setValue, deleteObject, containerObject, isObject, getEnumValue, merge, extend, isNullOrUndefined, isUndefined, getUniqueID, debounce, queryParams, isObjectArray, compareElementParent, throwError, print, formatUnit, enableBlazorMode, isBlazor, getElement, getInstance, addInstance, uniqueID, createElement, addClass, removeClass, isVisible, prepend, append, detach, remove, attributes, select, selectAll, closest, siblings, getAttributeOrDefault, setStyleAttribute, classList, matches, includeInnerHTML, containsClass, cloneNode, Observer, SanitizeHtmlHelper, registerLicense, validateLicense, getVersion };
|
|
9805
|
+
export { blazorCultureFormats, IntlBase, Ajax, Animation, rippleEffect, isRippleEnabled, enableRipple, animationMode, setGlobalAnimation, Base, getComponent, removeChildInstance, Browser, versionBasedStatePersistence, enableVersionBasedPersistence, Component, ChildProperty, Position, Draggable, Droppable, EventHandler, onIntlChange, rightToLeft, cldrData, defaultCulture, defaultCurrencyCode, Internationalization, setCulture, setCurrencyCode, loadCldr, enableRtl, getNumericObject, getNumberDependable, getDefaultDateObject, KeyboardEvents, L10n, ModuleLoader, Property, Complex, ComplexFactory, Collection, CollectionFactory, Event$1 as Event, NotifyPropertyChanges, CreateBuilder, SwipeSettings, Touch, HijriParser, blazorTemplates, getRandomId, compile$$1 as compile, updateBlazorTemplate, resetBlazorTemplate, setTemplateEngine, getTemplateEngine, disableBlazorMode, createInstance, setImmediate, getValue, setValue, deleteObject, containerObject, isObject, getEnumValue, merge, extend, isNullOrUndefined, isUndefined, getUniqueID, debounce, queryParams, isObjectArray, compareElementParent, throwError, print, formatUnit, enableBlazorMode, isBlazor, getElement, getInstance, addInstance, uniqueID, createElement, addClass, removeClass, isVisible, prepend, append, detach, remove, attributes, select, selectAll, closest, siblings, getAttributeOrDefault, setStyleAttribute, classList, matches, includeInnerHTML, containsClass, cloneNode, Observer, SanitizeHtmlHelper, componentList, registerLicense, validateLicense, getVersion, createLicenseOverlay };
|
|
9731
9806
|
//# sourceMappingURL=ej2-base.es5.js.map
|