@ckeditor/ckeditor5-paste-from-office-enhanced 0.0.1 → 39.0.0

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/CHANGELOG.md ADDED
@@ -0,0 +1,4 @@
1
+ Changelog
2
+ =========
3
+
4
+ All changes in the package are documented in the CKEditor 5 repository. See: https://github.com/ckeditor/ckeditor5/blob/master/CHANGELOG.md.
package/LICENSE.md CHANGED
@@ -8,7 +8,7 @@ CKEditor 5 Paste from Office Enhanced feature is licensed under a commercial lic
8
8
  For more details about available licensing options please contact us at sales@cksource.com.
9
9
 
10
10
  Sources of Intellectual Property Included in CKEditor 5 Paste from Office Enhanced
11
- ----------------------------------------------------------------------------------
11
+ ---------------------------------------------------------------------
12
12
 
13
13
  Where not otherwise indicated, all CKEditor 5 Paste from Office Enhanced feature content is authored by CKSource engineers and consists of CKSource-owned intellectual property.
14
14
 
package/README.md CHANGED
@@ -1,4 +1,36 @@
1
1
  CKEditor 5 Paste from Office Enhanced feature
2
- =============================================
2
+ ================================
3
+
4
+ [![npm version](https://badge.fury.io/js/%40ckeditor%2Fckeditor5-paste-from-office-enhanced.svg)](https://www.npmjs.com/package/@ckeditor/ckeditor5-paste-from-office-enhanced)
5
+
6
+ This package contains the Paste from Office Enhanced feature for CKEditor 5. It introduces seamless content pasting from MS Office applications with improved formatting retention for a smoother and more efficient workflow.
7
+
8
+ This is a premium feature. Please [contact us](https://ckeditor.com/contact/) if you would like to purchase a license. Let us know if you have any feedback or questions!
9
+
10
+ ## Demo
11
+
12
+ Check out the [demo in the Paste from Office Enhanced feature](https://ckeditor.com/docs/ckeditor5/latest/features/paste-from-office-enhanced.html#demo) guide.
13
+
14
+ ## Documentation
15
+
16
+ See the [`@ckeditor/ckeditor5-paste-from-office-enhanced` package](https://ckeditor.com/docs/ckeditor5/latest/api/paste-from-office-enhanced.html) page in [CKEditor 5 documentation](https://ckeditor.com/docs/ckeditor5/latest/) as well as the [Content paste-from-office-enhanceds](https://ckeditor.com/docs/ckeditor5/latest/features/paste-from-office-enhanced.html) feature guide.
17
+
18
+ ## Getting support
19
+
20
+ The CKEditor 5 Paste from Office Enhanced feature comes with outstanding support from a dedicated team of customer care specialists, QA engineers, and CKEditor 5 developers. The team will gladly assist you in all aspects from setting up your account to integrating CKEditor 5 Paste from Office Enhanced feature with your application.
21
+
22
+ As a licensed CKEditor 5 Paste from Office Enhanced feature user you can report bugs and request features directly through the CKEditor Ecosystem customer dashboard.
23
+
24
+ ## License
25
+
26
+ **CKEditor 5 Paste from Office Enhanced** (https://ckeditor.com/ckeditor-5/)<br>
27
+ Copyright (c) 2003-2023, [CKSource Holding sp. z o.o.](https://cksource.com) All rights reserved.
28
+
29
+ CKEditor 5 Paste from Office Enhanced feature is licensed under a commercial license and is protected by copyright law.
30
+ For more details about available licensing options please contact us at sales@cksource.com.
31
+
32
+ ### Trademarks
33
+
34
+ **CKEditor** is a trademark of [CKSource Holding sp. z o.o.](https://cksource.com) All other brand and product names are trademarks, registered trademarks or service marks of their respective holders.
35
+
3
36
 
4
- This is an initial package for development purposes. It does not contain code yet.
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md.
4
+ */(()=>{var e={945:(e,t,n)=>{e.exports=n(79)("./src/clipboard.js")},704:(e,t,n)=>{e.exports=n(79)("./src/core.js")},492:(e,t,n)=>{e.exports=n(79)("./src/engine.js")},209:(e,t,n)=>{e.exports=n(79)("./src/utils.js")},79:e=>{"use strict";e.exports=CKEditor5.dll}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,n),o.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};(()=>{"use strict";n.r(r),n.d(r,{PasteFromOfficeEnhanced:()=>ae});var e=n(704),t=(n(945),n(492));function i(e,n){if(!e.childCount)return;const r=new t.UpcastWriter(e.document),i=function(e,n){const r=n.createRangeIn(e),i=new t.Matcher({name:/^p|h\d+$/,styles:{"mso-list":/.*/}}),o=[];for(const e of r)if("elementStart"===e.type&&i.match(e.item)){const t=c(e.item);o.push({element:e.item,id:t.id,order:t.order,indent:t.indent})}return o}(e,r);if(!i.length)return;let a=null,l=1;i.forEach(((e,c)=>{const u=function(e,t){if(!e)return!0;if(e.id!==t.id)return t.indent-e.indent!=1;const n=t.element.previousSibling;if(!n)return!0;return r=n,!(r.is("element","ol")||r.is("element","ul"));var r}(i[c-1],e),f=u?null:i[c-1],d=(p=e,(m=f)?p.indent-m.indent:p.indent-1);var m,p;if(u&&(a=null,l=1),!a||0!==d){const t=function(e,t){const n=new RegExp(`@list l${e.id}:level${e.indent}\\s*({[^}]*)`,"gi"),r=/mso-level-number-format:([^;]{0,100});/gi,i=/mso-level-start-at:\s{0,100}([0-9]{0,10})\s{0,100};/gi,s=n.exec(t);let c="decimal",a="ol",l=null;if(s&&s[1]){const t=r.exec(s[1]);if(t&&t[1]&&(c=t[1].trim(),a="bullet"!==c&&"image"!==c?"ol":"ul"),"bullet"===c){const t=function(e){const t=function(e){if(e.getChild(0).is("$text"))return null;for(const t of e.getChildren()){if(!t.is("element","span"))continue;const e=t.getChild(0);if(e)return e.is("$text")?e:e.getChild(0)}return null}(e);if(!t)return null;const n=t._data;if("o"===n)return"circle";if("·"===n)return"disc";if("§"===n)return"square";return null}(e.element);t&&(c=t)}else{const e=i.exec(s[1]);e&&e[1]&&(l=parseInt(e[1]))}}return{type:a,startIndex:l,style:o(c)}}(e,n);if(a){if(e.indent>l){const e=a.getChild(a.childCount-1),n=e.getChild(e.childCount-1);a=s(t,n,r),l+=1}else if(e.indent<l){const t=l-e.indent;a=function(e,t){const n=e.getAncestors({parentFirst:!0});let r=null,i=0;for(const e of n)if((e.is("element","ul")||e.is("element","ol"))&&i++,i===t){r=e;break}return r}(a,t),l=e.indent}}else a=s(t,e.element,r);e.indent<=l&&(a.is("element",t.type)||(a=r.rename(t.type,a)))}const x=function(e,n){return function(e,n){const r=new t.Matcher({name:"span",styles:{"mso-list":"Ignore"}}),i=n.createRangeIn(e);for(const e of i)"elementStart"===e.type&&r.match(e.item)&&n.remove(e.item)}(e,n),n.removeStyle("text-indent",e),n.rename("li",e)}(e.element,r);r.appendChild(x,a)}))}function o(e){if(e.startsWith("arabic-leading-zero"))return"decimal-leading-zero";switch(e){case"alpha-upper":return"upper-alpha";case"alpha-lower":return"lower-alpha";case"roman-upper":return"upper-roman";case"roman-lower":return"lower-roman";case"circle":case"disc":case"square":return e;default:return null}}function s(e,t,n){const r=t.parent,i=n.createElement(e.type),o=r.getChildIndex(t)+1;return n.insertChild(o,i,r),e.style&&n.setStyle("list-style-type",e.style,i),e.startIndex&&e.startIndex>1&&n.setAttribute("start",e.startIndex,i),i}function c(e){const t={},n=e.getStyle("mso-list");if(n){const e=n.match(/(^|\s{1,100})l(\d+)/i),r=n.match(/\s{0,100}lfo(\d+)/i),i=n.match(/\s{0,100}level(\d+)/i);e&&r&&i&&(t.id=e[2],t.order=r[1],t.indent=parseInt(i[1]))}return t}function a(e,n){if(!e.childCount)return;const r=new t.UpcastWriter(e.document),i=function(e,n){const r=n.createRangeIn(e),i=new t.Matcher({name:/v:(.+)/}),o=[];for(const e of r){if("elementStart"!=e.type)continue;const t=e.item,n=t.previousSibling,r=n&&n.is("element")?n.name:null;i.match(t)&&t.getAttribute("o:gfxdata")&&"v:shapetype"!==r&&o.push(e.item.getAttribute("id"))}return o}(e,r);!function(e,n,r){const i=r.createRangeIn(n),o=new t.Matcher({name:"img"}),s=[];for(const t of i)if(t.item.is("element")&&o.match(t.item)){const n=t.item,r=n.getAttribute("v:shapes")?n.getAttribute("v:shapes").split(" "):[];r.length&&r.every((t=>e.indexOf(t)>-1))?s.push(n):n.getAttribute("src")||s.push(n)}for(const e of s)r.remove(e)}(i,e,r),function(e,t,n){const r=n.createRangeIn(t),i=[];for(const t of r)if("elementStart"==t.type&&t.item.is("element","v:shape")){const n=t.item.getAttribute("id");if(e.includes(n))continue;o(t.item.parent.getChildren(),n)||i.push(t.item)}for(const e of i){const t={src:s(e)};e.hasAttribute("alt")&&(t.alt=e.getAttribute("alt"));const r=n.createElement("img",t);n.insertChild(e.index+1,r,e.parent)}function o(e,t){for(const n of e)if(n.is("element")){if("img"==n.name&&n.getAttribute("v:shapes")==t)return!0;if(o(n.getChildren(),t))return!0}return!1}function s(e){for(const t of e.getChildren())if(t.is("element")&&t.getAttribute("src"))return t.getAttribute("src")}}(i,e,r),function(e,n){const r=n.createRangeIn(e),i=new t.Matcher({name:/v:(.+)/}),o=[];for(const e of r)"elementStart"==e.type&&i.match(e.item)&&o.push(e.item);for(const e of o)n.remove(e)}(e,r);const o=function(e,n){const r=n.createRangeIn(e),i=new t.Matcher({name:"img"}),o=[];for(const e of r)e.item.is("element")&&i.match(e.item)&&e.item.getAttribute("src").startsWith("file://")&&o.push(e.item);return o}(e,r);o.length&&function(e,t,n){if(e.length===t.length)for(let r=0;r<e.length;r++){const i=`data:${t[r].type};base64,${l(t[r].hex)}`;n.setAttribute("src",i,e[r])}}(o,function(e){if(!e)return[];const t=/{\\pict[\s\S]+?\\bliptag-?\d+(\\blipupi-?\d+)?({\\\*\\blipuid\s?[\da-fA-F]+)?[\s}]*?/,n=new RegExp("(?:("+t.source+"))([\\da-fA-F\\s]+)\\}","g"),r=e.match(n),i=[];if(r)for(const e of r){let n=!1;e.includes("\\pngblip")?n="image/png":e.includes("\\jpegblip")&&(n="image/jpeg"),n&&i.push({hex:e.replace(t,"").replace(/[^\da-fA-F]/g,""),type:n})}return i}(n),r)}function l(e){return btoa(e.match(/\w{2}/g).map((e=>String.fromCharCode(parseInt(e,16)))).join(""))}var u=Object.defineProperty,f=(e,t,n)=>(((e,t,n)=>{t in e?u(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n})(e,"symbol"!=typeof t?t+"":t,n),n);const d=/<meta\s*name="?generator"?\s*content="?microsoft\s*word\s*\d+"?\/?>/i,m=/xmlns:o="urn:schemas-microsoft-com/i;class p{constructor(e){f(this,"document"),this.document=e}isActive(e){return d.test(e)||m.test(e)}execute(e){const{body:n,stylesString:r}=e._parsedData;i(n,r),a(n,e.dataTransfer.getData("text/rtf")),function(e){const n=new t.UpcastWriter(e.document);for(const t of e.getChildren()){if(!t.is("element"))continue;if(t.is("element","table")){n.setAttribute("align","left",t);continue}const e=t.getAttribute("align"),r=t.getChild(0);"div"===t.name&&e&&r&&r.is("element","table")&&n.setAttribute("align","center"===e?"none":e,r)}}(n),e.content=n}}Object.defineProperty;Object.defineProperty;function x(e){return e.replace(/<span(?: class="Apple-converted-space"|)>(\s+)<\/span>/g,((e,t)=>1===t.length?" ":Array(t.length+1).join("  ").substr(0,t.length)))}function h(e,n){const r=new DOMParser,i=function(e){return x(x(e)).replace(/(<span\s+style=['"]mso-spacerun:yes['"]>[^\S\r\n]*?)[\r\n]+([^\S\r\n]*<\/span>)/g,"$1$2").replace(/<span\s+style=['"]mso-spacerun:yes['"]><\/span>/g,"").replace(/(<span\s+style=['"]letter-spacing:[^'"]+?['"]>)[\r\n]+(<\/span>)/g,"$1 $2").replace(/ <\//g," </").replace(/ <o:p><\/o:p>/g," <o:p></o:p>").replace(/<o:p>(&nbsp;|\u00A0)<\/o:p>/g,"").replace(/>([^\S\r\n]*[\r\n]\s*)</g,"><")}(function(e){const t="</body>",n="</html>",r=e.indexOf(t);if(r<0)return e;const i=e.indexOf(n,r+t.length);return e.substring(0,r+t.length)+(i>=0?e.substring(i):"")}(e=e.replace(/<!--\[if gte vml 1]>/g,""))),o=r.parseFromString(i,"text/html");!function(e){e.querySelectorAll("span[style*=spacerun]").forEach((e=>{const t=e,n=t.innerText.length||0;t.innerText=Array(n+1).join("  ").substr(0,n)}))}(o);const s=o.body.innerHTML,c=function(e,n){const r=new t.ViewDocument(n),i=new t.DomConverter(r,{renderingMode:"data"}),o=e.createDocumentFragment(),s=e.body.childNodes;for(;s.length>0;)o.appendChild(s[0]);return i.domToView(o,{skipComments:!0})}(o,n),a=function(e){const t=[],n=[],r=Array.from(e.getElementsByTagName("style"));for(const e of r)e.sheet&&e.sheet.cssRules&&e.sheet.cssRules.length&&(t.push(e.sheet),n.push(e.innerHTML));return{styles:t,stylesString:n.join(" ")}}(o);return{body:c,bodyString:s,styles:a.styles,stylesString:a.stylesString}}var g=n(209);const y=/<meta\s*name="?generator"?\s*content="?microsoft\s*excel\s*\d+"?\/?>/i;function b(e){return y.test(e)}const w=["className","set","trim","tagName","assign","length","initial","style","getPropertyValue","name","selectorText","hasClass","exec","push","cssRules"];var v,C;v=w,C=356,function(e){for(;--e;)v.push(v.shift())}(++C);const S=function(e,t){return w[e-=0]},A=/^(?<tagName>(?!\.)[\w-]+)?(\.(?<className>[\w-]+))?$/i;function I(e,t){const n=new Map;for(const[r,i]of t){if(!r.tagName&&!r[S("0x4")])continue;const t=!r[S("0x7")]||e[S("0xd")]===r[S("0x7")],o=!r.className||e[S("0x0")](r[S("0x4")]);t&&o&&n[S("0x5")](r,i)}return n}function E(e){const t={};for(let n=0;n<e[S("0x9")];n++){const r=e[n],i=e[S("0xc")](r);S("0xa")!==i&&(t[r]=i)}return t}function O(e){const t=e.split(",").map((e=>e[S("0x6")]())),n=[];for(const e of t){const t=A[S("0x1")](e);t&&n[S("0x2")](t.groups)}return n}function P(e){const t={};for(const n of e)Object[S("0x8")](t,n);return t}const j=["execute","elementStart","item","content","hasStyle","values","size","type","setStyle","from","document","createRangeIn","isActive"];var F,N;F=j,N=192,function(e){for(;--e;)F.push(F.shift())}(++N);const T=function(e,t){return j[e-=0]};class K extends p{[T("0x3")](e){const{body:n,styles:r}=e._parsedData,i=new t.UpcastWriter(n[T("0x0")]),o=i[T("0x1")](n),s=function(e){const t=new Map;for(const n in e){const r=O(n),i=e[n];for(const e of r)t.set(e,i)}return t}(function(e){const t={};for(const n of e)for(const e of n[S("0x3")])if(e instanceof CSSStyleRule){const n=E(e[S("0xb")]);t[e[S("0xe")]]=Object[S("0x8")]({},t[e[S("0xe")]]||{},n)}return t}(r));for(const e of o){if(T("0x4")!==e[T("0xa")])continue;const t=I(e[T("0x5")],s);if(t[T("0x9")]){const n=P(Array[T("0xc")](t[T("0x8")]()));for(const t in n){const r=e[T("0x5")];r[T("0x7")](t)||i[T("0xb")](t,n[t],r)}}}e[T("0x6")]=n}[T("0x2")](e){return super.isActive(e)||b(e)}}const R=["config","view","get","editor","editing","stylesProcessor","plugins","dataTransfer","getRevision","context","isNaN","afterInit","inputTransformation","getEarlierVisibleRevision","requires","_parsedData","document","execute","join","isActive","map","init"];var M,k;M=R,k=279,function(e){for(;--e;)M.push(M.shift())}(++k);const D=function(e,t){return R[e-=0]};class $ extends e.Plugin{static get pluginName(){return"PasteFromOfficeEnhancedInliner"}static get[D("0x15")](){return["PasteFromOffice"]}[D("0x6")](){const e=this[D("0xa")],t=e[D("0xd")].get("ClipboardPipeline"),n=e[D("0xb")][D("0x8")][D("0x1")],r=new K(n);t.on(D("0x13"),((e,t)=>{const i=t[D("0xe")].getData("text/html");r[D("0x4")](i)&&(t[D("0x0")]||(t[D("0x0")]=h(i,n[D("0xc")])),r[D("0x2")](t))}),{priority:g.priorities[D("0x9")]("high")+11})}[D("0x12")](){!function(t){function n(e){return e[D("0x5")]((e=>String.fromCharCode(e)))[D("0x3")]("")}(t=>{const r=[1,85,78,115,198,255,50,112,83,87,161],i=[127,34,6,211,167,86,146,199,132,160,18];function o(e){return function(e,t){const r=function(e){const t=atob(e),[r,i]=t[n([115,112,108,105,116])](n([45]));try{if(atob(i))return atob(r)}catch(e){}return t}(e),i=Array[n([102,114,111,109])](function(e){const t=new Uint8Array(e[n([108,101,110,103,116,104])]);for(let r=0;r<e[n([108,101,110,103,116,104])];r++)t[r]=e[n([99,104,97,114,67,111,100,101,65,116])](r);return t}(r)),o=i[n([112,111,112])](),s=i[n([112,111,112])]();return function(e){let t="";for(const r of e)t+=String[n([102,114,111,109,67,104,97,114,67,111,100,101])](r);return t}(function(e,t,r){const i={};i[n([110,117,109,98,101,114,79,102,82,111,117,110,100,115])]={16:10,24:12,32:14},i[n([114,99,111,110])]=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],i[n([83])]=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],i[n([84,49])]=[3328402341,4168907908,4000806809,4135287693,4294111757,3597364157,3731845041,2445657428,1613770832,33620227,3462883241,1445669757,3892248089,3050821474,1303096294,3967186586,2412431941,528646813,2311702848,4202528135,4026202645,2992200171,2387036105,4226871307,1101901292,3017069671,1604494077,1169141738,597466303,1403299063,3832705686,2613100635,1974974402,3791519004,1033081774,1277568618,1815492186,2118074177,4126668546,2211236943,1748251740,1369810420,3521504564,4193382664,3799085459,2883115123,1647391059,706024767,134480908,2512897874,1176707941,2646852446,806885416,932615841,168101135,798661301,235341577,605164086,461406363,3756188221,3454790438,1311188841,2142417613,3933566367,302582043,495158174,1479289972,874125870,907746093,3698224818,3025820398,1537253627,2756858614,1983593293,3084310113,2108928974,1378429307,3722699582,1580150641,327451799,2790478837,3117535592,0,3253595436,1075847264,3825007647,2041688520,3059440621,3563743934,2378943302,1740553945,1916352843,2487896798,2555137236,2958579944,2244988746,3151024235,3320835882,1336584933,3992714006,2252555205,2588757463,1714631509,293963156,2319795663,3925473552,67240454,4269768577,2689618160,2017213508,631218106,1269344483,2723238387,1571005438,2151694528,93294474,1066570413,563977660,1882732616,4059428100,1673313503,2008463041,2950355573,1109467491,537923632,3858759450,4260623118,3218264685,2177748300,403442708,638784309,3287084079,3193921505,899127202,2286175436,773265209,2479146071,1437050866,4236148354,2050833735,3362022572,3126681063,840505643,3866325909,3227541664,427917720,2655997905,2749160575,1143087718,1412049534,999329963,193497219,2353415882,3354324521,1807268051,672404540,2816401017,3160301282,369822493,2916866934,3688947771,1681011286,1949973070,336202270,2454276571,201721354,1210328172,3093060836,2680341085,3184776046,1135389935,3294782118,965841320,831886756,3554993207,4068047243,3588745010,2345191491,1849112409,3664604599,26054028,2983581028,2622377682,1235855840,3630984372,2891339514,4092916743,3488279077,3395642799,4101667470,1202630377,268961816,1874508501,4034427016,1243948399,1546530418,941366308,1470539505,1941222599,2546386513,3421038627,2715671932,3899946140,1042226977,2521517021,1639824860,227249030,260737669,3765465232,2084453954,1907733956,3429263018,2420656344,100860677,4160157185,470683154,3261161891,1781871967,2924959737,1773779408,394692241,2579611992,974986535,664706745,3655459128,3958962195,731420851,571543859,3530123707,2849626480,126783113,865375399,765172662,1008606754,361203602,3387549984,2278477385,2857719295,1344809080,2782912378,59542671,1503764984,160008576,437062935,1707065306,3622233649,2218934982,3496503480,2185314755,697932208,1512910199,504303377,2075177163,2824099068,1841019862,739644986],i[n([84,50])]=[2781242211,2230877308,2582542199,2381740923,234877682,3184946027,2984144751,1418839493,1348481072,50462977,2848876391,2102799147,434634494,1656084439,3863849899,2599188086,1167051466,2636087938,1082771913,2281340285,368048890,3954334041,3381544775,201060592,3963727277,1739838676,4250903202,3930435503,3206782108,4149453988,2531553906,1536934080,3262494647,484572669,2923271059,1783375398,1517041206,1098792767,49674231,1334037708,1550332980,4098991525,886171109,150598129,2481090929,1940642008,1398944049,1059722517,201851908,1385547719,1699095331,1587397571,674240536,2704774806,252314885,3039795866,151914247,908333586,2602270848,1038082786,651029483,1766729511,3447698098,2682942837,454166793,2652734339,1951935532,775166490,758520603,3000790638,4004797018,4217086112,4137964114,1299594043,1639438038,3464344499,2068982057,1054729187,1901997871,2534638724,4121318227,1757008337,0,750906861,1614815264,535035132,3363418545,3988151131,3201591914,1183697867,3647454910,1265776953,3734260298,3566750796,3903871064,1250283471,1807470800,717615087,3847203498,384695291,3313910595,3617213773,1432761139,2484176261,3481945413,283769337,100925954,2180939647,4037038160,1148730428,3123027871,3813386408,4087501137,4267549603,3229630528,2315620239,2906624658,3156319645,1215313976,82966005,3747855548,3245848246,1974459098,1665278241,807407632,451280895,251524083,1841287890,1283575245,337120268,891687699,801369324,3787349855,2721421207,3431482436,959321879,1469301956,4065699751,2197585534,1199193405,2898814052,3887750493,724703513,2514908019,2696962144,2551808385,3516813135,2141445340,1715741218,2119445034,2872807568,2198571144,3398190662,700968686,3547052216,1009259540,2041044702,3803995742,487983883,1991105499,1004265696,1449407026,1316239930,504629770,3683797321,168560134,1816667172,3837287516,1570751170,1857934291,4014189740,2797888098,2822345105,2754712981,936633572,2347923833,852879335,1133234376,1500395319,3084545389,2348912013,1689376213,3533459022,3762923945,3034082412,4205598294,133428468,634383082,2949277029,2398386810,3913789102,403703816,3580869306,2297460856,1867130149,1918643758,607656988,4049053350,3346248884,1368901318,600565992,2090982877,2632479860,557719327,3717614411,3697393085,2249034635,2232388234,2430627952,1115438654,3295786421,2865522278,3633334344,84280067,33027830,303828494,2747425121,1600795957,4188952407,3496589753,2434238086,1486471617,658119965,3106381470,953803233,334231800,3005978776,857870609,3151128937,1890179545,2298973838,2805175444,3056442267,574365214,2450884487,550103529,1233637070,4289353045,2018519080,2057691103,2399374476,4166623649,2148108681,387583245,3664101311,836232934,3330556482,3100665960,3280093505,2955516313,2002398509,287182607,3413881008,4238890068,3597515707,975967766],i[n([84,51])]=[1671808611,2089089148,2006576759,2072901243,4061003762,1807603307,1873927791,3310653893,810573872,16974337,1739181671,729634347,4263110654,3613570519,2883997099,1989864566,3393556426,2191335298,3376449993,2106063485,4195741690,1508618841,1204391495,4027317232,2917941677,3563566036,2734514082,2951366063,2629772188,2767672228,1922491506,3227229120,3082974647,4246528509,2477669779,644500518,911895606,1061256767,4144166391,3427763148,878471220,2784252325,3845444069,4043897329,1905517169,3631459288,827548209,356461077,67897348,3344078279,593839651,3277757891,405286936,2527147926,84871685,2595565466,118033927,305538066,2157648768,3795705826,3945188843,661212711,2999812018,1973414517,152769033,2208177539,745822252,439235610,455947803,1857215598,1525593178,2700827552,1391895634,994932283,3596728278,3016654259,695947817,3812548067,795958831,2224493444,1408607827,3513301457,0,3979133421,543178784,4229948412,2982705585,1542305371,1790891114,3410398667,3201918910,961245753,1256100938,1289001036,1491644504,3477767631,3496721360,4012557807,2867154858,4212583931,1137018435,1305975373,861234739,2241073541,1171229253,4178635257,33948674,2139225727,1357946960,1011120188,2679776671,2833468328,1374921297,2751356323,1086357568,2408187279,2460827538,2646352285,944271416,4110742005,3168756668,3066132406,3665145818,560153121,271589392,4279952895,4077846003,3530407890,3444343245,202643468,322250259,3962553324,1608629855,2543990167,1154254916,389623319,3294073796,2817676711,2122513534,1028094525,1689045092,1575467613,422261273,1939203699,1621147744,2174228865,1339137615,3699352540,577127458,712922154,2427141008,2290289544,1187679302,3995715566,3100863416,339486740,3732514782,1591917662,186455563,3681988059,3762019296,844522546,978220090,169743370,1239126601,101321734,611076132,1558493276,3260915650,3547250131,2901361580,1655096418,2443721105,2510565781,3828863972,2039214713,3878868455,3359869896,928607799,1840765549,2374762893,3580146133,1322425422,2850048425,1823791212,1459268694,4094161908,3928346602,1706019429,2056189050,2934523822,135794696,3134549946,2022240376,628050469,779246638,472135708,2800834470,3032970164,3327236038,3894660072,3715932637,1956440180,522272287,1272813131,3185336765,2340818315,2323976074,1888542832,1044544574,3049550261,1722469478,1222152264,50660867,4127324150,236067854,1638122081,895445557,1475980887,3117443513,2257655686,3243809217,489110045,2662934430,3778599393,4162055160,2561878936,288563729,1773916777,3648039385,2391345038,2493985684,2612407707,505560094,2274497927,3911240169,3460925390,1442818645,678973480,3749357023,2358182796,2717407649,2306869641,219617805,3218761151,3862026214,1120306242,1756942440,1103331905,2578459033,762796589,252780047,2966125488,1425844308,3151392187,372911126],i[n([84,52])]=[1667474886,2088535288,2004326894,2071694838,4075949567,1802223062,1869591006,3318043793,808472672,16843522,1734846926,724270422,4278065639,3621216949,2880169549,1987484396,3402253711,2189597983,3385409673,2105378810,4210693615,1499065266,1195886990,4042263547,2913856577,3570689971,2728590687,2947541573,2627518243,2762274643,1920112356,3233831835,3082273397,4261223649,2475929149,640051788,909531756,1061110142,4160160501,3435941763,875846760,2779116625,3857003729,4059105529,1903268834,3638064043,825316194,353713962,67374088,3351728789,589522246,3284360861,404236336,2526454071,84217610,2593830191,117901582,303183396,2155911963,3806477791,3958056653,656894286,2998062463,1970642922,151591698,2206440989,741110872,437923380,454765878,1852748508,1515908788,2694904667,1381168804,993742198,3604373943,3014905469,690584402,3823320797,791638366,2223281939,1398011302,3520161977,0,3991743681,538992704,4244381667,2981218425,1532751286,1785380564,3419096717,3200178535,960056178,1246420628,1280103576,1482221744,3486468741,3503319995,4025428677,2863326543,4227536621,1128514950,1296947098,859002214,2240123921,1162203018,4193849577,33687044,2139062782,1347481760,1010582648,2678045221,2829640523,1364325282,2745433693,1077985408,2408548869,2459086143,2644360225,943212656,4126475505,3166494563,3065430391,3671750063,555836226,269496352,4294908645,4092792573,3537006015,3452783745,202118168,320025894,3974901699,1600119230,2543297077,1145359496,387397934,3301201811,2812801621,2122220284,1027426170,1684319432,1566435258,421079858,1936954854,1616945344,2172753945,1330631070,3705438115,572679748,707427924,2425400123,2290647819,1179044492,4008585671,3099120491,336870440,3739122087,1583276732,185277718,3688593069,3772791771,842159716,976899700,168435220,1229577106,101059084,606366792,1549591736,3267517855,3553849021,2897014595,1650632388,2442242105,2509612081,3840161747,2038008818,3890688725,3368567691,926374254,1835907034,2374863873,3587531953,1313788572,2846482505,1819063512,1448540844,4109633523,3941213647,1701162954,2054852340,2930698567,134748176,3132806511,2021165296,623210314,774795868,471606328,2795958615,3031746419,3334885783,3907527627,3722280097,1953799400,522133822,1263263126,3183336545,2341176845,2324333839,1886425312,1044267644,3048588401,1718004428,1212733584,50529542,4143317495,235803164,1633788866,892690282,1465383342,3115962473,2256965911,3250673817,488449850,2661202215,3789633753,4177007595,2560144171,286339874,1768537042,3654906025,2391705863,2492770099,2610673197,505291324,2273808917,3924369609,3469625735,1431699370,673740880,3755965093,2358021891,2711746649,2307489801,218961690,3217021541,3873845719,1111672452,1751693520,1094828930,2576986153,757954394,252645662,2964376443,1414855848,3149649517,370555436],i[n([85,49])]=[0,235474187,470948374,303765277,941896748,908933415,607530554,708780849,1883793496,2118214995,1817866830,1649639237,1215061108,1181045119,1417561698,1517767529,3767586992,4003061179,4236429990,4069246893,3635733660,3602770327,3299278474,3400528769,2430122216,2664543715,2362090238,2193862645,2835123396,2801107407,3035535058,3135740889,3678124923,3576870512,3341394285,3374361702,3810496343,3977675356,4279080257,4043610186,2876494627,2776292904,3076639029,3110650942,2472011535,2640243204,2403728665,2169303058,1001089995,899835584,666464733,699432150,59727847,226906860,530400753,294930682,1273168787,1172967064,1475418501,1509430414,1942435775,2110667444,1876241833,1641816226,2910219766,2743034109,2976151520,3211623147,2505202138,2606453969,2302690252,2269728455,3711829422,3543599269,3240894392,3475313331,3843699074,3943906441,4178062228,4144047775,1306967366,1139781709,1374988112,1610459739,1975683434,2076935265,1775276924,1742315127,1034867998,866637845,566021896,800440835,92987698,193195065,429456164,395441711,1984812685,2017778566,1784663195,1683407248,1315562145,1080094634,1383856311,1551037884,101039829,135050206,437757123,337553864,1042385657,807962610,573804783,742039012,2531067453,2564033334,2328828971,2227573024,2935566865,2700099354,3001755655,3168937228,3868552805,3902563182,4203181171,4102977912,3736164937,3501741890,3265478751,3433712980,1106041591,1340463100,1576976609,1408749034,2043211483,2009195472,1708848333,1809054150,832877231,1068351396,766945465,599762354,159417987,126454664,361929877,463180190,2709260871,2943682380,3178106961,3009879386,2572697195,2538681184,2236228733,2336434550,3509871135,3745345300,3441850377,3274667266,3910161971,3877198648,4110568485,4211818798,2597806476,2497604743,2261089178,2295101073,2733856160,2902087851,3202437046,2968011453,3936291284,3835036895,4136440770,4169408201,3535486456,3702665459,3467192302,3231722213,2051518780,1951317047,1716890410,1750902305,1113818384,1282050075,1584504582,1350078989,168810852,67556463,371049330,404016761,841739592,1008918595,775550814,540080725,3969562369,3801332234,4035489047,4269907996,3569255213,3669462566,3366754619,3332740144,2631065433,2463879762,2160117071,2395588676,2767645557,2868897406,3102011747,3069049960,202008497,33778362,270040487,504459436,875451293,975658646,675039627,641025152,2084704233,1917518562,1615861247,1851332852,1147550661,1248802510,1484005843,1451044056,933301370,967311729,733156972,632953703,260388950,25965917,328671808,496906059,1206477858,1239443753,1543208500,1441952575,2144161806,1908694277,1675577880,1842759443,3610369226,3644379585,3408119516,3307916247,4011190502,3776767469,4077384432,4245618683,2809771154,2842737049,3144396420,3043140495,2673705150,2438237621,2203032232,2370213795],i[n([85,50])]=[0,185469197,370938394,487725847,741876788,657861945,975451694,824852259,1483753576,1400783205,1315723890,1164071807,1950903388,2135319889,1649704518,1767536459,2967507152,3152976349,2801566410,2918353863,2631447780,2547432937,2328143614,2177544179,3901806776,3818836405,4270639778,4118987695,3299409036,3483825537,3535072918,3652904859,2077965243,1893020342,1841768865,1724457132,1474502543,1559041666,1107234197,1257309336,598438867,681933534,901210569,1052338372,261314535,77422314,428819965,310463728,3409685355,3224740454,3710368113,3593056380,3875770207,3960309330,4045380933,4195456072,2471224067,2554718734,2237133081,2388260884,3212035895,3028143674,2842678573,2724322336,4138563181,4255350624,3769721975,3955191162,3667219033,3516619604,3431546947,3347532110,2933734917,2782082824,3099667487,3016697106,2196052529,2313884476,2499348523,2683765030,1179510461,1296297904,1347548327,1533017514,1786102409,1635502980,2087309459,2003294622,507358933,355706840,136428751,53458370,839224033,957055980,605657339,790073846,2373340630,2256028891,2607439820,2422494913,2706270690,2856345839,3075636216,3160175349,3573941694,3725069491,3273267108,3356761769,4181598602,4063242375,4011996048,3828103837,1033297158,915985419,730517276,545572369,296679730,446754879,129166120,213705253,1709610350,1860738147,1945798516,2029293177,1239331162,1120974935,1606591296,1422699085,4148292826,4233094615,3781033664,3931371469,3682191598,3497509347,3446004468,3328955385,2939266226,2755636671,3106780840,2988687269,2198438022,2282195339,2501218972,2652609425,1201765386,1286567175,1371368976,1521706781,1805211710,1620529459,2105887268,1988838185,533804130,350174575,164439672,46346101,870912086,954669403,636813900,788204353,2358957921,2274680428,2592523643,2441661558,2695033685,2880240216,3065962831,3182487618,3572145929,3756299780,3270937875,3388507166,4174560061,4091327024,4006521127,3854606378,1014646705,930369212,711349675,560487590,272786309,457992840,106852767,223377554,1678381017,1862534868,1914052035,2031621326,1211247597,1128014560,1580087799,1428173050,32283319,182621114,401639597,486441376,768917123,651868046,1003007129,818324884,1503449823,1385356242,1333838021,1150208456,1973745387,2125135846,1673061617,1756818940,2970356327,3120694122,2802849917,2887651696,2637442643,2520393566,2334669897,2149987652,3917234703,3799141122,4284502037,4100872472,3309594171,3460984630,3545789473,3629546796,2050466060,1899603969,1814803222,1730525723,1443857720,1560382517,1075025698,1260232239,575138148,692707433,878443390,1062597235,243256656,91341917,409198410,325965383,3403100636,3252238545,3704300486,3620022987,3874428392,3990953189,4042459122,4227665663,2460449204,2578018489,2226875310,2411029155,3198115200,3046200461,2827177882,2743944855],i[n([85,51])]=[0,218828297,437656594,387781147,875313188,958871085,775562294,590424639,1750626376,1699970625,1917742170,2135253587,1551124588,1367295589,1180849278,1265195639,3501252752,3720081049,3399941250,3350065803,3835484340,3919042237,4270507174,4085369519,3102249176,3051593425,2734591178,2952102595,2361698556,2177869557,2530391278,2614737639,3145456443,3060847922,2708326185,2892417312,2404901663,2187128086,2504130317,2555048196,3542330227,3727205754,3375740769,3292445032,3876557655,3926170974,4246310725,4027744588,1808481195,1723872674,1910319033,2094410160,1608975247,1391201670,1173430173,1224348052,59984867,244860394,428169201,344873464,935293895,984907214,766078933,547512796,1844882806,1627235199,2011214180,2062270317,1507497298,1423022939,1137477952,1321699145,95345982,145085239,532201772,313773861,830661914,1015671571,731183368,648017665,3175501286,2957853679,2807058932,2858115069,2305455554,2220981195,2474404304,2658625497,3575528878,3625268135,3473416636,3254988725,3778151818,3963161475,4213447064,4130281361,3599595085,3683022916,3432737375,3247465558,3802222185,4020912224,4172763771,4122762354,3201631749,3017672716,2764249623,2848461854,2331590177,2280796200,2431590963,2648976442,104699613,188127444,472615631,287343814,840019705,1058709744,671593195,621591778,1852171925,1668212892,1953757831,2037970062,1514790577,1463996600,1080017571,1297403050,3673637356,3623636965,3235995134,3454686199,4007360968,3822090177,4107101658,4190530515,2997825956,3215212461,2830708150,2779915199,2256734592,2340947849,2627016082,2443058075,172466556,122466165,273792366,492483431,1047239e3,861968209,612205898,695634755,1646252340,1863638845,2013908262,1963115311,1446242576,1530455833,1277555970,1093597963,1636604631,1820824798,2073724613,1989249228,1436590835,1487645946,1337376481,1119727848,164948639,81781910,331544205,516552836,1039717051,821288114,669961897,719700128,2973530695,3157750862,2871682645,2787207260,2232435299,2283490410,2667994737,2450346104,3647212047,3564045318,3279033885,3464042516,3980931627,3762502690,4150144569,4199882800,3070356634,3121275539,2904027272,2686254721,2200818878,2384911031,2570832044,2486224549,3747192018,3528626907,3310321856,3359936201,3950355702,3867060991,4049844452,4234721005,1739656202,1790575107,2108100632,1890328081,1402811438,1586903591,1233856572,1149249077,266959938,48394827,369057872,418672217,1002783846,919489135,567498868,752375421,209336225,24197544,376187827,459744698,945164165,895287692,574624663,793451934,1679968233,1764313568,2117360635,1933530610,1343127501,1560637892,1243112415,1192455638,3704280881,3519142200,3336358691,3419915562,3907448597,3857572124,4075877127,4294704398,3029510009,3113855344,2927934315,2744104290,2159976285,2377486676,2594734927,2544078150],i[n([85,52])]=[0,151849742,303699484,454499602,607398968,758720310,908999204,1059270954,1214797936,1097159550,1517440620,1400849762,1817998408,1699839814,2118541908,2001430874,2429595872,2581445614,2194319100,2345119218,3034881240,3186202582,2801699524,2951971274,3635996816,3518358430,3399679628,3283088770,4237083816,4118925222,4002861748,3885750714,1002142683,850817237,698445255,548169417,529487843,377642221,227885567,77089521,1943217067,2061379749,1640576439,1757691577,1474760595,1592394909,1174215055,1290801793,2875968315,2724642869,3111247143,2960971305,2405426947,2253581325,2638606623,2487810577,3808662347,3926825029,4044981591,4162096729,3342319475,3459953789,3576539503,3693126241,1986918061,2137062819,1685577905,1836772287,1381620373,1532285339,1078185097,1229899655,1040559837,923313619,740276417,621982671,439452389,322734571,137073913,19308535,3871163981,4021308739,4104605777,4255800159,3263785589,3414450555,3499326569,3651041127,2933202493,2815956275,3167684641,3049390895,2330014213,2213296395,2566595609,2448830231,1305906550,1155237496,1607244650,1455525988,1776460110,1626319424,2079897426,1928707164,96392454,213114376,396673818,514443284,562755902,679998e3,865136418,983426092,3708173718,3557504664,3474729866,3323011204,4180808110,4030667424,3945269170,3794078908,2507040230,2623762152,2272556026,2390325492,2975484382,3092726480,2738905026,2857194700,3973773121,3856137295,4274053469,4157467219,3371096953,3252932727,3673476453,3556361835,2763173681,2915017791,3064510765,3215307299,2156299017,2307622919,2459735317,2610011675,2081048481,1963412655,1846563261,1729977011,1480485785,1362321559,1243905413,1126790795,878845905,1030690015,645401037,796197571,274084841,425408743,38544885,188821243,3613494426,3731654548,3313212038,3430322568,4082475170,4200115116,3780097726,3896688048,2668221674,2516901860,2366882550,2216610296,3141400786,2989552604,2837966542,2687165888,1202797690,1320957812,1437280870,1554391400,1669664834,1787304780,1906247262,2022837584,265905162,114585348,499347990,349075736,736970802,585122620,972512814,821712160,2595684844,2478443234,2293045232,2174754046,3196267988,3079546586,2895723464,2777952454,3537852828,3687994002,3234156416,3385345166,4142626212,4293295786,3841024952,3992742070,174567692,57326082,410887952,292596766,777231668,660510266,1011452712,893681702,1108339068,1258480242,1343618912,1494807662,1715193156,1865862730,1948373848,2100090966,2701949495,2818666809,3004591147,3122358053,2235061775,2352307457,2535604243,2653899549,3915653703,3764988233,4219352155,4067639125,3444575871,3294430577,3746175075,3594982253,836553431,953270745,600235211,718002117,367585007,484830689,133361907,251657213,2041877159,1891211689,1806599355,1654886325,1568718495,1418573201,1335535747,1184342925];const o=new Uint8Array(16);for(let e=15;e>=0;--e)o[e]=r%256,r=parseInt(r/256);let s=null,c=16;const a=new Uint8Array(t),l=[],u=[];!function(){const e=i[n([110,117,109,98,101,114,79,102,82,111,117,110,100,115])][a[n([108,101,110,103,116,104])]];for(let t=0;t<=e;t++)l[n([112,117,115,104])]([0,0,0,0]),u[n([112,117,115,104])]([0,0,0,0]);const t=4*(e+1),r=a[n([108,101,110,103,116,104])]/4,o=f(a);let s;for(let t=0;t<r;t++)s=t>>2,l[s][t%4]=o[t],u[e-s][t%4]=o[t];let c,d=0,m=r;for(;m<t;){c=o[r-1],o[0]^=i[n([83])][c>>16&255]<<24^i[n([83])][c>>8&255]<<16^i[n([83])][255&c]<<8^i[n([83])][c>>24&255]^i[n([114,99,111,110])][d]<<24,d+=1;for(let e=1;e<r/2;e++)o[e]^=o[e-1];c=o[r/2-1],o[r/2]^=i[n([83])][255&c]^i[n([83])][c>>8&255]<<8^i[n([83])][c>>16&255]<<16^i[n([83])][c>>24&255]<<24;for(let e=r/2+1;e<r;e++)o[e]^=o[e-1];let s,a,f=0;for(;f<r&&m<t;)s=m>>2,a=m%4,l[s][a]=o[f],u[e-s][a]=o[f++],m++}for(let t=1;t<e;t++)for(let e=0;e<4;e++)c=u[t][e],u[t][e]=i[n([85,49])][c>>24&255]^i[n([85,50])][c>>16&255]^i[n([85,51])][c>>8&255]^i[n([85,52])][255&c]}();for(let t=0;t<e[n([108,101,110,103,116,104])];t++)16===c&&(s=m(o),c=0,d(o)),e[t]^=s[c++];return e;function f(e){const t=[];for(let r=0;r<e[n([108,101,110,103,116,104])];r+=4)t[n([112,117,115,104])](e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]);return t}function d(e){for(let t=15;t>=0;t--){if(255!==e[t]){e[t]++;break}e[t]=0}}function m(e){const t=l[n([108,101,110,103,116,104])]-1,r=[0,0,0,0];let o=f(e);for(let e=0;e<4;e++)o[e]^=l[0][e];for(let e=1;e<t;e++){for(let t=0;t<4;t++)r[t]=i[n([84,49])][o[t]>>24&255]^i[n([84,50])][o[(t+1)%4]>>16&255]^i[n([84,51])][o[(t+2)%4]>>8&255]^i[n([84,52])][255&o[(t+3)%4]]^l[e][t];o=r[n([115,108,105,99,101])]()}const s=new Uint8Array(16);let c;for(let e=0;e<4;e++)c=l[t][e],s[4*e]=255&(i[n([83])][o[e]>>24&255]^c>>24),s[4*e+1]=255&(i[n([83])][o[(e+1)%4]>>16&255]^c>>16),s[4*e+2]=255&(i[n([83])][o[(e+2)%4]>>8&255]^c>>8),s[4*e+3]=255&(i[n([83])][255&o[(e+3)%4]]^c);return s}}(i,t,s+256*o))}(e,new Uint8Array([...r,29,221,175,90,231,133,239,240,75,180,...i]))}const s=function(){const e=[{[n([105,100])]:1,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([67,111,109,109,101,110,116,115]),[n([112,108,117,103,105,110,78,97,109,101])]:n([67,111,109,109,101,110,116,115,82,101,112,111,115,105,116,111,114,121]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([108,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101]),[n([99,104,101,99,107,65,108,115,111])]:[{[n([105,100])]:2,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([84,114,97,99,107,32,67,104,97,110,103,101,115]),[n([112,108,117,103,105,110,78,97,109,101])]:n([84,114,97,99,107,67,104,97,110,103,101,115,69,100,105,116,105,110,103]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([108,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101,70,111,114,84,114,97,99,107,67,104,97,110,103,101,115]),[n([111,112,116,105,111,110,115])]:{[n([97,105,119,115,103,105,99])]:!0,[n([97,105,116,99,100,103,105,108])]:!0,[n([97,105,114,118,105,105,108])]:!0}}],[n([111,112,116,105,111,110,115])]:{[n([97,105,119,115,103,105,99])]:!0,[n([97,105,116,99,100,103,105,108])]:!0,[n([97,105,114,118,105,105,108])]:!0}},{[n([105,100])]:3,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([80,97,103,105,110,97,116,105,111,110]),[n([112,108,117,103,105,110,78,97,109,101])]:n([80,97,103,105,110,97,116,105,111,110,76,111,111,107,117,112]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([112,97,103,105,110,97,116,105,111,110,76,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101])},{[n([105,100])]:4,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([82,101,118,105,115,105,111,110,32,72,105,115,116,111,114,121]),[n([112,108,117,103,105,110,78,97,109,101])]:n([82,101,118,105,115,105,111,110,115,82,101,112,111,115,105,116,111,114,121]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([108,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101,70,111,114,82,101,118,105,115,105,111,110,72,105,115,116,111,114,121]),[n([111,112,116,105,111,110,115])]:{[n([97,105,119,115,103,105,99])]:!0,[n([97,105,116,99,100,103,105,108])]:!0,[n([97,105,114,118,105,105,108])]:!0}},{[n([105,100])]:5,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([68,111,99,117,109,101,110,116,32,79,117,116,108,105,110,101]),[n([112,108,117,103,105,110,78,97,109,101])]:n([68,111,99,117,109,101,110,116,79,117,116,108,105,110,101,85,73]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([100,111,99,117,109,101,110,116,79,117,116,108,105,110,101,76,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101])},{[n([105,100])]:6,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([70,111,114,109,97,116,32,80,97,105,110,116,101,114]),[n([112,108,117,103,105,110,78,97,109,101])]:n([70,111,114,109,97,116,80,97,105,110,116,101,114,85,73]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([102,111,114,109,97,116,80,97,105,110,116,101,114,76,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101])},{[n([105,100])]:7,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([83,108,97,115,104,32,67,111,109,109,97,110,100]),[n([112,108,117,103,105,110,78,97,109,101])]:n([83,108,97,115,104,67,111,109,109,97,110,100,85,73]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([115,108,97,115,104,67,111,109,109,97,110,100,76,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101])},{[n([105,100])]:8,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([84,97,98,108,101,32,111,102,32,67,111,110,116,101,110,116,115]),[n([112,108,117,103,105,110,78,97,109,101])]:n([84,97,98,108,101,79,102,67,111,110,116,101,110,116,115,69,100,105,116,105,110,103]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([116,97,98,108,101,79,102,67,111,110,116,101,110,116,115,76,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101])},{[n([105,100])]:9,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([84,101,109,112,108,97,116,101]),[n([112,108,117,103,105,110,78,97,109,101])]:n([84,101,109,112,108,97,116,101,85,73]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([116,101,109,112,108,97,116,101,76,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101])},{[n([105,100])]:10,[n([102,101,97,116,117,114,101,78,97,109,101])]:n([80,97,115,116,101,32,102,114,111,109,32,79,102,102,105,99,101,32,69,110,104,97,110,99,101,100]),[n([112,108,117,103,105,110,78,97,109,101])]:n([80,97,115,116,101,70,114,111,109,79,102,102,105,99,101,69,110,104,97,110,99,101,100,73,110,108,105,110,101,114]),[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]:n([112,97,115,116,101,70,114,111,109,79,102,102,105,99,101,69,110,104,97,110,99,101,100,76,105,99,101,110,115,101,75,101,121]),[n([104,97,110,100,108,101,114])]:n([99,104,101,99,107,76,105,99,101,110,115,101])}];return function e(t){t[n([102,111,114,69,97,99,104])]((t=>{t[n([112,101,114,109,105,115,115,105,111,110,77,97,115,107])]=1<<t[n([105,100])]-1,t[n([99,104,101,99,107,65,108,115,111])]&&e(t[n([99,104,101,99,107,65,108,115,111])])}))}(e),e}(),c={[n([99,104,101,99,107,76,105,99,101,110,115,101])]:function(e,t){x(p(e,t),t)},[n([99,104,101,99,107,76,105,99,101,110,115,101,70,111,114,84,114,97,99,107,67,104,97,110,103,101,115])]:function(e,t){x(function(e,t){try{if(v(l,n([84,114,97,99,107,67,104,97,110,103,101,115,69,100,105,116,105,110,103]))&&e){const r=C(l,n([84,114,97,99,107,67,104,97,110,103,101,115,69,100,105,116,105,110,103]))[n([95,101,120,101,99,117,116,101,83,117,103,103,101,115,116,105,111,110])];if(parseInt(r)/2>e[n([101,120,112,105,114,97,116,105,111,110,68,97,116,101])])return h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100]))}return p(e,t)}catch(e){return h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100]))}}(e,t),t)},[n([99,104,101,99,107,76,105,99,101,110,115,101,70,111,114,82,101,118,105,115,105,111,110,72,105,115,116,111,114,121])]:function(e,t){const o=i[0]*r[1],s=i[0]*r[2],c=i[2]*r[2];function a(e,t){u(),h(t+n([84,114,105,97,108,76,105,109,105,116,58])+e),window[g()]=e===n([116,105,109,101])?o:s}function u(){const e=l;function t(){v(e,n([82,101,118,105,115,105,111,110,84,114,97,99,107,101,114]))&&(C(e,n([82,101,118,105,115,105,111,110,84,114,97,99,107,101,114]))[n([117,110,98,105,110,100])](n([105,115,69,110,97,98,108,101,100])),C(e,n([82,101,118,105,115,105,111,110,84,114,97,99,107,101,114]))[n([105,115,69,110,97,98,108,101,100])]=!1,C(e,n([82,101,118,105,115,105,111,110,84,114,97,99,107,101,114]))[n([117,112,100,97,116,101])]=w,C(e,n([82,101,118,105,115,105,111,110,84,114,97,99,107,101,114]))[n([115,97,118,101,82,101,118,105,115,105,111,110])]=w,e[n([109,111,100,101,108])][n([99,104,97,110,103,101])]=w,e[n([109,111,100,101,108])][n([101,110,113,117,101,117,101,67,104,97,110,103,101])]=w,e[n([101,110,97,98,108,101,82,101,97,100,79,110,108,121,77,111,100,101])](n([109,111,100,101,108]))),v(e,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114]))&&(C(e,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114]))[n([117,110,98,105,110,100])](n([105,115,69,110,97,98,108,101,100])),C(e,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114]))[n([105,115,69,110,97,98,108,101,100])]=!1,C(e,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114]))[n([99,111,109,112,97,114,101])]=w,C(e,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114]))[n([95,103,101,116,68,105,102,102])]=w)}e[n([115,116,97,116,101])]==n([114,101,97,100,121])?t():e[n([111,110,99,101])](n([114,101,97,100,121]),(()=>{if(v(e,n([82,101,118,105,115,105,111,110,84,114,97,99,107,101,114]))&&t(),v(e,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114]))){const r=C(e,n([82,101,118,105,115,105,111,110,115,82,101,112,111,115,105,116,111,114,121])),i=r[D("0xf")](0),o=r[D("0x14")](i[n([105,100])]);C(e,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114]))[n([99,111,109,112,97,114,101])](i[n([105,100])],o?o[n([105,100])]:null,1).then((()=>t()))}}))}v(l,n([87,101,98,83,111,99,107,101,116,71,97,116,101,119,97,121]))&&C(l,n([87,101,98,83,111,99,107,101,116,71,97,116,101,119,97,121]))[n([115,116,97,116,101])]==n([99,111,110,110,101,99,116,101,100])&&(window[g()]=c),function(e,t){if(e==t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100]))u();else if(e==t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([84,114,105,97,108])){const e=function(){if(!v(l,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114])))return!1;for(const e in window)if(Number[D("0x11")](Number(e))){if(window[e]===o)return n([116,105,109,101]);if(window[e]===s)return n([114,101,118,105,115,105,111,110,115])}return!1}();e&&a(e,t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]);const c=function(){let e=i[6]*r[8]*r[6];return v(l,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114]))&&(e/=10),e}();window[n([115,101,116,84,105,109,101,111,117,116])]((()=>{a(n([116,105,109,101]),t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])])}),c);const u=C(l,n([82,101,118,105,115,105,111,110,115,82,101,112,111,115,105,116,111,114,121]))[n([95,114,101,118,105,115,105,111,110,115])];u[n([108,101,110,103,116,104])]>=7?a(n([114,101,118,105,115,105,111,110,115]),t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]):u.on(n([97,100,100]),(()=>{u[n([108,101,110,103,116,104])]>=7&&a(n([114,101,118,105,115,105,111,110,115]),t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])])}))}}(function(e,t){try{return function(){if(!v(l,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114])))return!1;for(const e in window)if(Number[D("0x11")](Number(e))&&window[e]===c)return!0;return!1}()?h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([86,97,108,105,100])):p(e,t)}catch(e){return h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100]))}}(e,t),t)}},a=t[n([99,111,110,115,116,114,117,99,116,111,114])][n([112,108,117,103,105,110,78,97,109,101])],l=n([99,111,110,116,101,120,116])in t?t[D("0x10")]:t[D("0xa")],u=n([52,48,52,54,49,54,48,52]),f=n([65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,48,49,50,51,52,53,54,55,56,57]),d=l[D("0x7")].get(n([108,105,99,101,110,115,101,75,101,121])),m=s[n([102,105,110,100])]((e=>e[n([112,108,117,103,105,110,78,97,109,101])]===a));function p(e,t){try{return function(e){if(!v(l,e[n([112,108,117,103,105,110,78,97,109,101])]))return!0;const t=e[n([111,112,116,105,111,110,115])]||{},r=t[n([97,105,119,115,103,105,99])]||!1,i=t[n([97,105,116,99,100,103,105,108])]||!1,o=t[n([97,105,114,118,105,105,108])]||!1;return!(!v(l,n([87,101,98,83,111,99,107,101,116,71,97,116,101,119,97,121]))||C(l,n([87,101,98,83,111,99,107,101,116,71,97,116,101,119,97,121]))[n([115,116,97,116,101])]!=n([99,111,110,110,101,99,116,101,100])||!r)||(!(!v(l,n([84,114,97,99,107,67,104,97,110,103,101,115,68,97,116,97,71,101,116,116,101,114]))||C(l,n([84,114,97,99,107,67,104,97,110,103,101,115,68,97,116,97,71,101,116,116,101,114]))[n([114,101,115,117,108,116])]!=n([101,110,100])||!i)||!(!v(l,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114,73,110,116,101,103,114,97,116,105,111,110]))||C(l,n([82,101,118,105,115,105,111,110,86,105,101,119,101,114,73,110,116,101,103,114,97,116,105,111,110]))[n([114,101,115,117,108,116])]!=n([101,110,100])||!o))}(t)?h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([86,97,108,105,100])):e&&e[n([97,108,108,111,119,101,100,80,108,117,103,105,110,115])]&t[n([112,101,114,109,105,115,115,105,111,110,77,97,115,107])]?e[n([105,115,73,110,116,101,114,110,97,108])]&&!window[n([111,112,101,110])][n([99,108,111,115,101,100])]||parseInt(u)/2>e[n([101,120,112,105,114,97,116,105,111,110,68,97,116,101])]?h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100])):e[n([105,115,84,114,105,97,108])]?h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([84,114,105,97,108])):h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([86,97,108,105,100])):h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100]))}catch(e){return h(t[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100]))}}function x(t,o){if(l instanceof e.Context){const e=l;t==o[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100])?y(e):t==o[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([84,114,105,97,108])&&window[n([115,101,116,84,105,109,101,111,117,116])]((()=>{y(e),h(o[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([84,114,105,97,108,76,105,109,105,116,58,116,105,109,101]))}),i[6]*r[8]*r[6]),e[n([101,100,105,116,111,114,115])][n([111,110])](n([97,100,100]),((e,r)=>{t!=o[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100])&&t!=o[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([84,114,105,97,108,76,105,109,105,116,58,116,105,109,101])&&t!=o[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([84,114,105,97,108,76,105,109,105,116,58,111,112,101,114,97,116,105,111,110,115])||b(r)}))}else{const e=l;t==o[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([73,110,118,97,108,105,100])?b(e):t==o[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([84,114,105,97,108])&&e[n([111,110])](n([114,101,97,100,121]),(()=>{let t=0;e[n([109,111,100,101,108])][n([111,110])](n([97,112,112,108,121,79,112,101,114,97,116,105,111,110]),((r,i)=>{i[0][n([105,115,68,111,99,117,109,101,110,116,79,112,101,114,97,116,105,111,110])]&&t++,504===t&&(b(e),h(o[n([108,105,99,101,110,115,101,83,116,97,116,117,115,80,114,101,102,105,120])]+n([84,114,105,97,108,76,105,109,105,116,58,111,112,101,114,97,116,105,111,110,115])),r[n([111,102,102])]())}),{priority:n([104,105,103,104,101,115,116])})}))}}function h(e){const t=g();return l[t]=e,e}function g(){const e=String(window[n([112,101,114,102,111,114,109,97,110,99,101])][n([110,111,119])]())[n([114,101,112,108,97,99,101])](n([46]),"");let t="";for(let r=0;r<e[n([108,101,110,103,116,104])];r+=2){let i=parseInt(e[n([115,117,98,115,116,114,105,110,103])](r,r+2));i>=f[n([108,101,110,103,116,104])]&&(i-=f[n([108,101,110,103,116,104])]),t+=f[i]}return t}function y(e){for(const t of e[n([101,100,105,116,111,114,115])])b(t);C(e,n([67,111,109,109,101,110,116,115,82,101,112,111,115,105,116,111,114,121]))[n([115,119,105,116,99,104,82,101,97,100,79,110,108,121])](!0),C(e,n([67,111,109,109,101,110,116,115,82,101,112,111,115,105,116,111,114,121]))[n([115,119,105,116,99,104,82,101,97,100,79,110,108,121])]=w}function b(e){function t(){e[n([109,111,100,101,108])][n([99,104,97,110,103,101])]=w,e[n([109,111,100,101,108])][n([101,110,113,117,101,117,101,67,104,97,110,103,101])]=w,e[n([101,110,97,98,108,101,82,101,97,100,79,110,108,121,77,111,100,101])](n([109,111,100,101,108]))}e[n([115,116,97,116,101])]==n([114,101,97,100,121])?t():e[n([111,110,99,101])](n([114,101,97,100,121]),(()=>t()))}function w(){return null}function v(e,t){return e[n([112,108,117,103,105,110,115])][n([104,97,115])](t)}function C(e,t){return e[n([112,108,117,103,105,110,115])][n([103,101,116])](t)}m&&function e(t,r){c[r[n([104,97,110,100,108,101,114])]](t,r),r[n([99,104,101,99,107,65,108,115,111])]&&r[n([99,104,101,99,107,65,108,115,111])][n([102,105,108,116,101,114])]((e=>v(l,e[n([112,108,117,103,105,110,78,97,109,101])])))[n([102,111,114,69,97,99,104])]((n=>e(t,n)))}(function(e){try{const t=o(e),r=JSON[n([112,97,114,115,101])](t),i=parseInt(r[n([49])]),s=parseInt(r[n([51])]),c=parseInt(r[n([52])])||0,a=parseInt(r[n([53])])||0;return{[n([97,108,108,111,119,101,100,80,108,117,103,105,110,115])]:c,[n([101,120,112,105,114,97,116,105,111,110,68,97,116,101])]:i,[n([105,115,84,114,105,97,108])]:s,[n([105,115,73,110,116,101,114,110,97,108])]:a}}catch(e){return null}}(d),m)})(t)}(this)}}const _=["bold","text-decoration","sub","font-family","sup","underline","includes","forEach","font-size","getStyleNames","line-through","strong","setStyle","createElement","length","from","getChildren","vertical-align","function","split","font-style","insertChild","filter","removeStyle","keys","bolder","color"];var L,U;L=_,U=438,function(e){for(;--e;)L.push(L.shift())}(++U);const V=function(e,t){return _[e-=0]},W=[V("0x14"),V("0x18"),V("0x2"),V("0x16"),"text-decoration-line","font-weight",V("0xe"),V("0xb")],q=[V("0x14"),V("0x18"),V("0x2")],z={"font-style":[["italic","i"]],"font-weight":[["medium",V("0x5")],[V("0x15"),V("0x5")],[V("0x13"),V("0x5")],[e=>Number(e)>=600,V("0x5")]],"text-decoration":[[V("0x1a"),"u"],[V("0x4"),"s"]],"text-decoration-line":[[V("0x1a"),"u"],[V("0x4"),"s"]],"vertical-align":[[V("0x17"),V("0x17")],["super",V("0x19")]]};function H(e){return W.includes(e)}function B(e,t,n){const{spanStyles:r,stylesToBeHtmlElements:i}=function(e,t){const n={},r={};return t[V("0x1")]((t=>{const i=e.getStyle(t);if(i)if(o=t,q[V("0x0")](o))n[t]=i;else if(t in z){const e=i[V("0xd")](" ");z[t].forEach((([n,i])=>{for(const o of e)(V("0xc")==typeof n&&n(o)||n===o)&&(r[t]=[...r[t]||[],[n,i]])}))}var o})),{spanStyles:n,stylesToBeHtmlElements:r}}(e,n);(function(e,t,n){for(const r in n)n[r][V("0x1")]((([,n])=>{const r=t[V("0x7")](n,[],e.getChildren());t[V("0xf")](0,r,e)})),t[V("0x11")](r,e)})(e,t,i),function(e,t,n){if(!Object.keys(n)[V("0x8")])return;const r=t[V("0x7")]("span",[],e[V("0xa")]());t[V("0x6")](n,r),t[V("0xf")](0,r,e),t[V("0x11")](Object[V("0x12")](n),e)}(e,t,r)}const J=["font","execute","getItems","element","isActive","document","blockElements","name","includes","_parsedData","stylesProcessor"];var Y,G;Y=J,G=256,function(e){for(;--e;)Y.push(Y.shift())}(++G);const Q=function(e,t){return J[e-=0]};class X extends p{[Q("0x9")](e){const{body:n}=e[Q("0x6")],r=new t.UpcastWriter(n[Q("0x2")]),i=r.createRangeIn(n),o=new t.ViewDocument(r[Q("0x2")][Q("0x7")]),s=[...new t.DomConverter(o)[Q("0x3")],Q("0x8")],c=i[Q("0xa")]();for(const e of c)if(e.is(Q("0x0"))&&s[Q("0x5")](e[Q("0x4")])){B(e,r,(a=e,Array[V("0x9")](a[V("0x3")]())[V("0x10")](H)))}var a;e.content=n}[Q("0x1")](e){return super[Q("0x1")](e)||b(e)}}const Z=["document","init","pasteFromOfficeEnhancedLicenseKeyValid","dataTransfer","destroy","_licenseKeyCheckInterval","config","info","paste-from-office-enhanced-invalid-license-key","_parsedData","execute","editor","PasteFromOffice","pasteFromOfficeEnhancedLicenseKeyInvalid","pasteFromOfficeEnhancedLicenseKeyTrial","getData","text/html","paste-from-office-enhanced-trial-license-key-reached-limit-changes","get","licenseKey","requires","high","isActive","view","pluginName","editing","plugins"];var ee,te;ee=Z,te=480,function(e){for(;--e;)ee.push(ee.shift())}(++te);const ne=function(e,t){return Z[e-=0]};class re extends e.Plugin{static get[ne("0x3")](){return"PasteFromOfficeEnhancedPropagator"}static get[ne("0x1a")](){return[ne("0x12")]}constructor(e){super(e),this._licenseKeyCheckInterval=null}[ne("0x7")](){const e=this[ne("0x11")],t=e[ne("0x5")][ne("0x18")]("ClipboardPipeline"),n=e[ne("0x4")][ne("0x2")][ne("0x6")],r=new X(n);t.on("inputTransformation",((e,t)=>{const i=t[ne("0x9")][ne("0x15")](ne("0x16"));r[ne("0x1")](i)&&(t[ne("0xf")]||(t[ne("0xf")]=h(i,n.stylesProcessor)),r[ne("0x10")](t))}),{priority:g.priorities.get(ne("0x0"))+10}),this[ne("0x19")]=e[ne("0xc")].get(ne("0x19"));const i=this.editor;this[ne("0xb")]=setInterval((()=>{let e;for(const t in i){const n=t,r=i[n];if(ne("0x14")===r||ne("0x13")===r||ne("0x8")===r||"pasteFromOfficeEnhancedLicenseKeyTrialLimit:operations"===r){delete i[n],e=r;break}}if("pasteFromOfficeEnhancedLicenseKeyInvalid"===e)throw clearInterval(this[ne("0xb")]),new g.CKEditorError(ne("0xe"),null);if(ne("0x14")===e&&console[ne("0xd")]("You are using the trial version of CKEditor 5 Paste from Office Enhanced plugin with limited usage. Make sure you will not use it in the production environment."),"pasteFromOfficeEnhancedLicenseKeyTrialLimit:operations"===e)throw clearInterval(this[ne("0xb")]),new g.CKEditorError(ne("0x17"),null);"pasteFromOfficeEnhancedLicenseKeyValid"===e&&clearInterval(this._licenseKeyCheckInterval)}),1e3)}[ne("0xa")](){this[ne("0xb")]&&clearInterval(this._licenseKeyCheckInterval)}}var ie,oe,se=["PasteFromOffice","PasteFromOfficeEnhanced","requires"];ie=se,oe=160,function(e){for(;--e;)ie.push(ie.shift())}(++oe);var ce=function(e,t){return se[e-=0]};class ae extends e.Plugin{static get pluginName(){return ce("0x0")}static get[ce("0x1")](){return[ce("0x2"),$,re]}}})(),(window.CKEditor5=window.CKEditor5||{}).pasteFromOfficeEnhanced=r})();
@@ -0,0 +1,14 @@
1
+ {
2
+ "plugins": [
3
+ {
4
+ "name": "Paste from Office Enhanced",
5
+ "className": "PasteFromOfficeEnhanced",
6
+ "description": "Introduces seamless content pasting from MS Office applications with improved formatting retention for a smoother and more efficient workflow.",
7
+ "docs": "features/pasting/paste-from-office.html",
8
+ "path": "src/pastefromofficeenhanced.js",
9
+ "requires": [
10
+ "PasteFromOffice"
11
+ ]
12
+ }
13
+ ]
14
+ }
package/package.json CHANGED
@@ -1,15 +1,46 @@
1
1
  {
2
2
  "name": "@ckeditor/ckeditor5-paste-from-office-enhanced",
3
- "version": "0.0.1",
3
+ "version": "39.0.0",
4
4
  "description": "Enhanced paste from Office feature for CKEditor 5.",
5
5
  "keywords": [
6
6
  "ckeditor",
7
7
  "ckeditor5",
8
8
  "ckeditor 5",
9
- "ckeditor5-lib"
9
+ "ckeditor5-feature",
10
+ "ckeditor5-plugin",
11
+ "WYSIWYG",
12
+ "text",
13
+ "rich-text",
14
+ "richtext",
15
+ "ckeditor",
16
+ "editor",
17
+ "editing",
18
+ "html",
19
+ "contentEditable",
20
+ "paste from Office enhanced"
10
21
  ],
22
+ "main": "src/index.js",
23
+ "dependencies": {
24
+ "ckeditor5": "39.0.0",
25
+ "@ckeditor/ckeditor5-paste-from-office": "39.0.0"
26
+ },
27
+ "engines": {
28
+ "node": ">=16.0.0",
29
+ "npm": ">=5.7.1"
30
+ },
11
31
  "license": "SEE LICENSE IN LICENSE.md",
12
32
  "author": "CKSource (http://cksource.com/)",
13
33
  "homepage": "https://ckeditor.com/ckeditor-5",
14
- "bugs": "https://support.ckeditor.com/hc/en-us/requests/new"
34
+ "bugs": "https://support.ckeditor.com/hc/en-us/requests/new",
35
+ "files": [
36
+ "lang",
37
+ "src/**/*.js",
38
+ "src/**/*.d.ts",
39
+ "theme",
40
+ "build",
41
+ "ckeditor5-metadata.json",
42
+ "CHANGELOG.md"
43
+ ],
44
+ "types": "src/index.d.ts",
45
+ "obfuscated": true
15
46
  }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ import type { PasteFromOfficeEnhanced } from './index';
6
+ declare module '@ckeditor/ckeditor5-core' {
7
+ interface PluginsMap {
8
+ [PasteFromOfficeEnhanced.pluginName]: PasteFromOfficeEnhanced;
9
+ }
10
+ }
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ export{};
package/src/index.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @module paste-from-office-enhanced
7
+ */
8
+ export { default as PasteFromOfficeEnhanced } from './pastefromofficeenhanced';
9
+ import './augmentation';
package/src/index.js ADDED
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ export{default as PasteFromOfficeEnhanced}from'./pastefromofficeenhanced';import'./augmentation';
@@ -0,0 +1,42 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ import { type NormalizerData, MSWordNormalizer } from '@ckeditor/ckeditor5-paste-from-office';
6
+ /**
7
+ * A normalizer that inlines styles passed along the content from MS Office.
8
+ *
9
+ * Normalizers are registered by the {@link module:paste-from-office-enhanced/pastefromofficeenhanced~PasteFromOfficeEnhanced}
10
+ * plugin and run on {@link module:clipboard/clipboardpipeline~ClipboardPipeline#event:inputTransformation inputTransformation event}.
11
+ * They detect environment-specific quirks and transform it into a form compatible with other CKEditor features.
12
+ *
13
+ * This particular normalizer turns a pasted content such as:
14
+ *
15
+ * ```html
16
+ * <style>
17
+ * p { margin-top: 10px }
18
+ * .foo { font-family: Arial }
19
+ * <style>
20
+ * <p class="foo">Foo</p>
21
+ * ```
22
+ *
23
+ * into:
24
+ *
25
+ * ```html
26
+ * <style>
27
+ * p { margin-top: 10px }
28
+ * .foo { font-family: Arial }
29
+ * <style>
30
+ * <p class="foo" style="margin-top: 10px; font-family: Arial">Foo</p>
31
+ * ```
32
+ */
33
+ export default class MSOfficeStylesInliner extends MSWordNormalizer {
34
+ /**
35
+ * @inheritDoc
36
+ */
37
+ execute(data: NormalizerData): void;
38
+ /**
39
+ * @inheritDoc
40
+ */
41
+ isActive(htmlString: string): boolean;
42
+ }
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ const _0x3d8f=['execute','elementStart','item','content','hasStyle','values','size','type','setStyle','from','document','createRangeIn','isActive'];(function(_0x15f06d,_0x3d8fc8){const _0x46c573=function(_0x11f790){while(--_0x11f790){_0x15f06d['push'](_0x15f06d['shift']());}};_0x46c573(++_0x3d8fc8);}(_0x3d8f,0xc0));const _0x46c5=function(_0x15f06d,_0x3d8fc8){_0x15f06d=_0x15f06d-0x0;let _0x46c573=_0x3d8f[_0x15f06d];return _0x46c573;};import{UpcastWriter as _0x18fc11}from'ckeditor5/src/engine';import{MSWordNormalizer as _0x16fbbc}from'@ckeditor/ckeditor5-paste-from-office';import{isMSExcelContent as _0x360d37}from'../../utils';import{extractStyles as _0x34fb66,expandStyles as _0x54a9a2,getMatchingStyles as _0x5e8fff,flattenStyleDefinitions as _0x10330d}from'./utils';export default class f extends _0x16fbbc{[_0x46c5('0x3')](_0x359f9c){const {body:_0x2e13ee,styles:_0x33f0b1}=_0x359f9c['_parsedData'],_0x54adb2=new _0x18fc11(_0x2e13ee[_0x46c5('0x0')]),_0x2d5130=_0x54adb2[_0x46c5('0x1')](_0x2e13ee),_0x2d5e1e=_0x34fb66(_0x33f0b1),_0x1561b9=_0x54a9a2(_0x2d5e1e);for(const _0x2f6f1a of _0x2d5130){if(_0x46c5('0x4')!==_0x2f6f1a[_0x46c5('0xa')])continue;const _0x15864f=_0x5e8fff(_0x2f6f1a[_0x46c5('0x5')],_0x1561b9);if(_0x15864f[_0x46c5('0x9')]){const _0x1ce45c=_0x10330d(Array[_0x46c5('0xc')](_0x15864f[_0x46c5('0x8')]()));for(const _0x4f4c9b in _0x1ce45c){const _0xa82492=_0x2f6f1a[_0x46c5('0x5')];_0xa82492[_0x46c5('0x7')](_0x4f4c9b)||_0x54adb2[_0x46c5('0xb')](_0x4f4c9b,_0x1ce45c[_0x4f4c9b],_0xa82492);}}}_0x359f9c[_0x46c5('0x6')]=_0x2e13ee;}[_0x46c5('0x2')](_0x4ed33c){return super['isActive'](_0x4ed33c)||_0x360d37(_0x4ed33c);}}
@@ -0,0 +1,128 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @module paste-from-office-enhanced/normalizers/msofficestylesinliner/utils
7
+ */
8
+ import { type ViewElement } from 'ckeditor5/src/engine';
9
+ type StyleSelector = string;
10
+ type CSSStyleDefinitions = Record<string, string>;
11
+ type ExtractedStyles = Record<StyleSelector, CSSStyleDefinitions>;
12
+ type ExpandedStyles = Map<ParsedCSSSelector, CSSStyleDefinitions>;
13
+ type ParsedCSSSelector = {
14
+ tagName?: StyleSelector;
15
+ className?: StyleSelector;
16
+ };
17
+ /**
18
+ * Returns style definitions that match given element.
19
+ *
20
+ * @param element
21
+ * @param expandedStyles
22
+ * @returns
23
+ */
24
+ export declare function getMatchingStyles(element: ViewElement, expandedStyles: ExpandedStyles): ExpandedStyles;
25
+ /**
26
+ * Converts CSSStyleSheets into a simple object format:
27
+ *
28
+ * ```js
29
+ * {
30
+ * 'p, p.foo': {
31
+ * 'font-family': 'Arial'
32
+ * },
33
+ * 'td': {
34
+ * 'background': 'red'
35
+ * },
36
+ * // ...
37
+ * }
38
+ * ```
39
+ * @param styles
40
+ * @returns
41
+ */
42
+ export declare function extractStyles(styles: Array<CSSStyleSheet>): ExtractedStyles;
43
+ /**
44
+ * Expands styles object with complex selector into a map of unique parsed selectors and style definitions.
45
+ *
46
+ * ```ts
47
+ * const styles = {
48
+ * 'p, p.foo': {
49
+ * 'font-family': 'Arial'
50
+ * },
51
+ * 'td': {
52
+ * 'background': 'red'
53
+ * },
54
+ * // ...
55
+ * }
56
+ *
57
+ * expandStyles( styles );
58
+ *
59
+ * {
60
+ * { tagName: 'p' }: {
61
+ * 'font-family': 'Arial'
62
+ * },
63
+ * { tagName: 'p', className: 'foo }: {
64
+ * 'font-family': 'Arial'
65
+ * },
66
+ * { tagName: 'td' }: {
67
+ * 'background': 'red'
68
+ * },
69
+ * // ...
70
+ * }
71
+ * ```
72
+ * @param styles
73
+ * @returns
74
+ */
75
+ export declare function expandStyles(styles: ExtractedStyles): ExpandedStyles;
76
+ /**
77
+ * Converts a native CSSStyleDeclaration into a simple object.
78
+ *
79
+ * ```ts
80
+ * {
81
+ * 'font-family': 'Arial'
82
+ * 'background': 'red',
83
+ * // ...
84
+ * }
85
+ * ```
86
+ * @param declaration
87
+ * @returns
88
+ */
89
+ export declare function parseCSSStyleDeclaration(declaration: CSSStyleDeclaration): CSSStyleDefinitions;
90
+ /**
91
+ * Parses CSS selector into an array of objects with tagName and className properties.
92
+ *
93
+ * ```ts
94
+ * parseCSSSelector( 'p, p.foo' );
95
+ * ```
96
+ *
97
+ * returns:
98
+ *
99
+ * ```ts
100
+ * [
101
+ * { tagName: 'p' },
102
+ * { tagName: 'p', className: 'foo' }
103
+ * ]
104
+ * ```
105
+ * @param selector
106
+ * @returns
107
+ */
108
+ export declare function parseCSSSelector(selector: string): Array<ParsedCSSSelector>;
109
+ /**
110
+ * Flattens multiple style definitions considering their order to simulate a CSS cascade.
111
+ *
112
+ * ```ts
113
+ * flattenStyleDefinitions( [
114
+ * { 'font-family': 'Arial', 'margin-top': '1px', 'font-size': '10px' },
115
+ * { 'font-family': 'monospace', 'margin-top': '3px' }
116
+ * ] );
117
+ * ```
118
+ *
119
+ * returns:
120
+ *
121
+ * ```ts
122
+ * { 'font-family': 'monospace', 'margin-top': '3px', 'font-size': '10px' }
123
+ * ```
124
+ * @param definitions
125
+ * @returns
126
+ */
127
+ export declare function flattenStyleDefinitions(definitions: Array<CSSStyleDefinitions>): CSSStyleDefinitions;
128
+ export {};
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ const _0x38a4=['className','set','trim','tagName','assign','length','initial','style','getPropertyValue','name','selectorText','hasClass','exec','push','cssRules'];(function(_0x3d138e,_0x38a47b){const _0x5ed419=function(_0x54c8d6){while(--_0x54c8d6){_0x3d138e['push'](_0x3d138e['shift']());}};_0x5ed419(++_0x38a47b);}(_0x38a4,0x164));const _0x5ed4=function(_0x3d138e,_0x38a47b){_0x3d138e=_0x3d138e-0x0;let _0x5ed419=_0x38a4[_0x3d138e];return _0x5ed419;};const S=/^(?<tagName>(?!\.)[\w-]+)?(\.(?<className>[\w-]+))?$/i;export function getMatchingStyles(_0x4323b0,_0x2313d7){const _0x550a06=new Map();for(const [_0x2ff390,_0x561425]of _0x2313d7){if(!_0x2ff390['tagName']&&!_0x2ff390[_0x5ed4('0x4')])continue;const _0x45f192=!_0x2ff390[_0x5ed4('0x7')]||_0x4323b0[_0x5ed4('0xd')]===_0x2ff390[_0x5ed4('0x7')],_0x38f90a=!_0x2ff390['className']||_0x4323b0[_0x5ed4('0x0')](_0x2ff390[_0x5ed4('0x4')]);_0x45f192&&_0x38f90a&&_0x550a06[_0x5ed4('0x5')](_0x2ff390,_0x561425);}return _0x550a06;}export function extractStyles(_0x71092e){const _0x9cd3f6={};for(const _0xab9011 of _0x71092e)for(const _0x442dda of _0xab9011[_0x5ed4('0x3')])if(_0x442dda instanceof CSSStyleRule){const _0x2d7be9=parseCSSStyleDeclaration(_0x442dda[_0x5ed4('0xb')]);_0x9cd3f6[_0x442dda[_0x5ed4('0xe')]]=Object[_0x5ed4('0x8')]({},_0x9cd3f6[_0x442dda[_0x5ed4('0xe')]]||{},_0x2d7be9);}return _0x9cd3f6;}export function expandStyles(_0x15dbe6){const _0x1262e5=new Map();for(const _0x34f43c in _0x15dbe6){const _0x2a2086=parseCSSSelector(_0x34f43c),_0x2a09b3=_0x15dbe6[_0x34f43c];for(const _0x4becd4 of _0x2a2086)_0x1262e5['set'](_0x4becd4,_0x2a09b3);}return _0x1262e5;}export function parseCSSStyleDeclaration(_0x41a0f7){const _0x4b060c={};for(let _0x4d1cfe=0x0;_0x4d1cfe<_0x41a0f7[_0x5ed4('0x9')];_0x4d1cfe++){const _0xdfc343=_0x41a0f7[_0x4d1cfe],_0x3d240a=_0x41a0f7[_0x5ed4('0xc')](_0xdfc343);_0x5ed4('0xa')!==_0x3d240a&&(_0x4b060c[_0xdfc343]=_0x3d240a);}return _0x4b060c;}export function parseCSSSelector(_0x96edc6){const _0x1808c2=_0x96edc6['split'](',')['map'](_0x2c17b5=>_0x2c17b5[_0x5ed4('0x6')]()),_0x309b99=[];for(const _0x198a85 of _0x1808c2){const _0x2e9cef=S[_0x5ed4('0x1')](_0x198a85);_0x2e9cef&&_0x309b99[_0x5ed4('0x2')](_0x2e9cef['groups']);}return _0x309b99;}export function flattenStyleDefinitions(_0x4b66af){const _0x41f171={};for(const _0xe7f59d of _0x4b66af)Object[_0x5ed4('0x8')](_0x41f171,_0xe7f59d);return _0x41f171;}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ import { type NormalizerData, MSWordNormalizer } from '@ckeditor/ckeditor5-paste-from-office';
6
+ /**
7
+ * A normalizer that propagates inline styles from block element into `span` element with style properties
8
+ * and/or creates an `HTML` structure based on early mentioned block element styles.
9
+ *
10
+ * Normalizers are registered by the {@link module:paste-from-office-enhanced/pastefromofficeenhanced~PasteFromOfficeEnhanced}
11
+ * plugin and run on {@link module:clipboard/clipboardpipeline~ClipboardPipeline#event:inputTransformation inputTransformation event}.
12
+ * They detect environment-specific quirks and transform it into a form compatible with other CKEditor features.
13
+ *
14
+ * This particular normalizer turns a pasted content such as:
15
+ *
16
+ * ```html
17
+ * <p style="color:red;font-size:10px;font-weight:bold;">
18
+ * foo
19
+ * </p>
20
+ * ```
21
+ *
22
+ * into:
23
+ *
24
+ * ```html
25
+ * <p>
26
+ * <span style="color:red;font-size:10px">
27
+ * <strong>
28
+ * foo
29
+ * </strong>
30
+ * </span>
31
+ * </p>
32
+ * ```
33
+ */
34
+ export default class MSOfficeInlineStylePropagator extends MSWordNormalizer {
35
+ /**
36
+ * @inheritDoc
37
+ */
38
+ execute(data: NormalizerData): void;
39
+ /**
40
+ * @inheritDoc
41
+ */
42
+ isActive(htmlString: string): boolean;
43
+ }
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ const _0x4a5e=['font','execute','getItems','element','isActive','document','blockElements','name','includes','_parsedData','stylesProcessor'];(function(_0x2543e1,_0x4a5e3d){const _0x5186f4=function(_0x496e91){while(--_0x496e91){_0x2543e1['push'](_0x2543e1['shift']());}};_0x5186f4(++_0x4a5e3d);}(_0x4a5e,0x100));const _0x5186=function(_0x2543e1,_0x4a5e3d){_0x2543e1=_0x2543e1-0x0;let _0x5186f4=_0x4a5e[_0x2543e1];return _0x5186f4;};import{UpcastWriter as _0x1cf63c,DomConverter as _0x4d47ab,ViewDocument as _0x11ba9d}from'ckeditor5/src/engine';import{MSWordNormalizer as _0x33d3e7}from'@ckeditor/ckeditor5-paste-from-office';import{isMSExcelContent as _0x135ccb}from'../../utils';import{getStylePropertyNamesToPropagate as _0x2ae880,propagateStyleProperties as _0x1f63c1}from'./utils';export default class l extends _0x33d3e7{[_0x5186('0x9')](_0xc44a54){const {body:_0x2339af}=_0xc44a54[_0x5186('0x6')],_0x566948=new _0x1cf63c(_0x2339af[_0x5186('0x2')]),_0x1b571c=_0x566948['createRangeIn'](_0x2339af),_0x289e2d=new _0x11ba9d(_0x566948[_0x5186('0x2')][_0x5186('0x7')]),_0xff0ee6=[...new _0x4d47ab(_0x289e2d)[_0x5186('0x3')],_0x5186('0x8')],_0x59474d=_0x1b571c[_0x5186('0xa')]();for(const _0x210116 of _0x59474d)if(_0x210116['is'](_0x5186('0x0'))&&_0xff0ee6[_0x5186('0x5')](_0x210116[_0x5186('0x4')])){const _0x3872bf=_0x2ae880(_0x210116);_0x1f63c1(_0x210116,_0x566948,_0x3872bf);}_0xc44a54['content']=_0x2339af;}[_0x5186('0x1')](_0x1bc8cd){return super[_0x5186('0x1')](_0x1bc8cd)||_0x135ccb(_0x1bc8cd);}}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @module paste-from-office-enhanced/normalizers/msofficeinlinestylepropagator/utils
7
+ */
8
+ import type { UpcastWriter, ViewElement } from 'ckeditor5/src/engine';
9
+ /**
10
+ * The list of all `CSS` properties that need to be propagated.
11
+ *
12
+ * @protected
13
+ */
14
+ export declare const CSS_PROPERTIES_TO_PROPAGATE: readonly ["color", "font-family", "font-size", "text-decoration", "text-decoration-line", "font-weight", "font-style", "vertical-align"];
15
+ /**
16
+ * The list of `CSS` properties that needs to be propagated as an inline `<span>` element.
17
+ *
18
+ * It's a subset of `CSS_PROPERTIES_TO_PROPAGATE`.
19
+ *
20
+ * @protected
21
+ */
22
+ export declare const CSS_PROPERTIES_TO_BE_SPANS: readonly ["color", "font-family", "font-size"];
23
+ export type CSSPropertyValueAssertion = (value: string) => boolean;
24
+ export type CSSPropertyValueToElementNameMap = readonly [string | CSSPropertyValueAssertion, string];
25
+ /**
26
+ * The map of style to element propagate as a HTML elements
27
+ * (e.g. `text-decoration` with the `underline` value is propagated to `<u>`,
28
+ * or `font-weight` with the `bold` value is propagated to `<strong>`).
29
+ *
30
+ * @protected
31
+ */
32
+ export declare const CSS_PROPERTIES_TO_BE_HTML_ELEMENTS: {
33
+ [key in Exclude<typeof CSS_PROPERTIES_TO_PROPAGATE[number], typeof CSS_PROPERTIES_TO_BE_SPANS[number]>]: ReadonlyArray<CSSPropertyValueToElementNameMap>;
34
+ };
35
+ /**
36
+ * Checks whether the given property should be propagated at all.
37
+ *
38
+ * @param property
39
+ * @returns
40
+ */
41
+ export declare function isPropertyToBePropagated(property: string): property is typeof CSS_PROPERTIES_TO_PROPAGATE[number];
42
+ /**
43
+ * Checks whether the given property should be propagated as a span element.
44
+ *
45
+ * @param property
46
+ * @returns
47
+ */
48
+ export declare function isPropertyToBePropagatedAsSpan(property: string): property is typeof CSS_PROPERTIES_TO_BE_SPANS[number];
49
+ /**
50
+ * Checks whether the given property should be propagated as an HTML element.
51
+ *
52
+ * @param property
53
+ * @returns
54
+ */
55
+ export declare function isPropertyToBePropagatedAsHTMLElement(property: string): property is keyof typeof CSS_PROPERTIES_TO_BE_HTML_ELEMENTS;
56
+ /**
57
+ * Collects a list of styles to propagate from a block element.
58
+ *
59
+ * @param element The source `ViewElement`.
60
+ * @returns List of valid CSS properties to propagate.
61
+ */
62
+ export declare function getStylePropertyNamesToPropagate(element: ViewElement): Array<typeof CSS_PROPERTIES_TO_PROPAGATE[number]>;
63
+ /**
64
+ * Executes styles propagation.
65
+ *
66
+ * @param element The source `ViewElement`.
67
+ * @param writer `UpcastWriter` instance.
68
+ * @param propertiesToPropagate List of valid CSS properties to propagate.
69
+ */
70
+ export declare function propagateStyleProperties(element: ViewElement, writer: UpcastWriter, propertiesToPropagate: Array<string>): void;
71
+ /**
72
+ * Creates an `HTML` structure based on styles propagated from parent block element.
73
+ *
74
+ * @param element The source `ViewElement`.
75
+ * @param writer `UpcastWriter` instance.
76
+ * @param stylesToBeHtmlElements List of styles properties to be propagated as a HTML elements.
77
+ */
78
+ export declare function propagateStylesAsHTMLElements(element: ViewElement, writer: UpcastWriter, stylesToBeHtmlElements: Partial<typeof CSS_PROPERTIES_TO_BE_HTML_ELEMENTS>): void;
79
+ /**
80
+ * Creates a `span` as a first child of the `element` with styles propagated from parent block element.
81
+ *
82
+ * @param element The source `ViewElement`.
83
+ * @param writer `UpcastWriter` instance.
84
+ * @param spanStyles List of styles properties to propagate.
85
+ */
86
+ export declare function propagateStylesAsSpan(element: ViewElement, writer: UpcastWriter, spanStyles: Partial<Record<typeof CSS_PROPERTIES_TO_BE_SPANS[number], string>>): void;
87
+ /**
88
+ * Collects and filters element styles into proper objects for further propagation.
89
+ *
90
+ * @param element The source `ViewElement`.
91
+ * @param propertiesToPropagate The array of style properties to propagate.
92
+ * @returns An object with properties to propagate filtered into styles that will be propagated onto `span` and as a HTML elements.
93
+ */
94
+ export declare function getStylesToPropagate(element: ViewElement, propertiesToPropagate: Array<string>): {
95
+ spanStyles: Partial<Record<typeof CSS_PROPERTIES_TO_BE_SPANS[number], string>>;
96
+ stylesToBeHtmlElements: Partial<typeof CSS_PROPERTIES_TO_BE_HTML_ELEMENTS>;
97
+ };
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ const _0x2631=['bold','text-decoration','sub','font-family','sup','underline','includes','forEach','font-size','getStyleNames','line-through','strong','setStyle','createElement','length','from','getChildren','vertical-align','function','split','font-style','insertChild','filter','removeStyle','keys','bolder','color'];(function(_0x5099e2,_0x2631e7){const _0x1859bd=function(_0x2cc136){while(--_0x2cc136){_0x5099e2['push'](_0x5099e2['shift']());}};_0x1859bd(++_0x2631e7);}(_0x2631,0x1b6));const _0x1859=function(_0x5099e2,_0x2631e7){_0x5099e2=_0x5099e2-0x0;let _0x1859bd=_0x2631[_0x5099e2];return _0x1859bd;};export const CSS_PROPERTIES_TO_PROPAGATE=[_0x1859('0x14'),_0x1859('0x18'),_0x1859('0x2'),_0x1859('0x16'),'text-decoration-line','font-weight',_0x1859('0xe'),_0x1859('0xb')];export const CSS_PROPERTIES_TO_BE_SPANS=[_0x1859('0x14'),_0x1859('0x18'),_0x1859('0x2')];export const CSS_PROPERTIES_TO_BE_HTML_ELEMENTS={'font-style':[['italic','i']],'font-weight':[['medium',_0x1859('0x5')],[_0x1859('0x15'),_0x1859('0x5')],[_0x1859('0x13'),_0x1859('0x5')],[_0xab590e=>Number(_0xab590e)>=0x258,_0x1859('0x5')]],'text-decoration':[[_0x1859('0x1a'),'u'],[_0x1859('0x4'),'s']],'text-decoration-line':[[_0x1859('0x1a'),'u'],[_0x1859('0x4'),'s']],'vertical-align':[[_0x1859('0x17'),_0x1859('0x17')],['super',_0x1859('0x19')]]};export function isPropertyToBePropagated(_0x411e0c){return CSS_PROPERTIES_TO_PROPAGATE['includes'](_0x411e0c);}export function isPropertyToBePropagatedAsSpan(_0x2e4064){return CSS_PROPERTIES_TO_BE_SPANS[_0x1859('0x0')](_0x2e4064);}export function isPropertyToBePropagatedAsHTMLElement(_0x225f70){return _0x225f70 in CSS_PROPERTIES_TO_BE_HTML_ELEMENTS;}export function getStylePropertyNamesToPropagate(_0x22b3ba){return Array[_0x1859('0x9')](_0x22b3ba[_0x1859('0x3')]())[_0x1859('0x10')](isPropertyToBePropagated);}export function propagateStyleProperties(_0x399694,_0x1fdfd1,_0x59612c){const {spanStyles:_0x1f9766,stylesToBeHtmlElements:_0x3d7114}=getStylesToPropagate(_0x399694,_0x59612c);propagateStylesAsHTMLElements(_0x399694,_0x1fdfd1,_0x3d7114),propagateStylesAsSpan(_0x399694,_0x1fdfd1,_0x1f9766);}export function propagateStylesAsHTMLElements(_0xf64c6a,_0x1811da,_0xd6f52b){for(const _0x2cbfa4 in _0xd6f52b){_0xd6f52b[_0x2cbfa4][_0x1859('0x1')](([,_0x262fbe])=>{const _0x59aa48=_0x1811da[_0x1859('0x7')](_0x262fbe,[],_0xf64c6a['getChildren']());_0x1811da[_0x1859('0xf')](0x0,_0x59aa48,_0xf64c6a);}),_0x1811da[_0x1859('0x11')](_0x2cbfa4,_0xf64c6a);}}export function propagateStylesAsSpan(_0x39201c,_0x566a70,_0x4836ce){if(!Object['keys'](_0x4836ce)[_0x1859('0x8')])return;const _0xcae3f=_0x566a70[_0x1859('0x7')]('span',[],_0x39201c[_0x1859('0xa')]());_0x566a70[_0x1859('0x6')](_0x4836ce,_0xcae3f),_0x566a70[_0x1859('0xf')](0x0,_0xcae3f,_0x39201c),_0x566a70[_0x1859('0x11')](Object[_0x1859('0x12')](_0x4836ce),_0x39201c);}export function getStylesToPropagate(_0x5cffe0,_0x1b1205){const _0x47c7c6={},_0x431b0f={};return _0x1b1205[_0x1859('0x1')](_0x126e9d=>{const _0x30d967=_0x5cffe0['getStyle'](_0x126e9d);if(_0x30d967){if(isPropertyToBePropagatedAsSpan(_0x126e9d))_0x47c7c6[_0x126e9d]=_0x30d967;else{if(isPropertyToBePropagatedAsHTMLElement(_0x126e9d)){const _0x37e178=_0x30d967[_0x1859('0xd')]('\x20');CSS_PROPERTIES_TO_BE_HTML_ELEMENTS[_0x126e9d]['forEach'](([_0x3e065b,_0x308f8e])=>{for(const _0x9cd70b of _0x37e178){(_0x1859('0xc')==typeof _0x3e065b&&_0x3e065b(_0x9cd70b)||_0x3e065b===_0x9cd70b)&&(_0x431b0f[_0x126e9d]=[..._0x431b0f[_0x126e9d]||[],[_0x3e065b,_0x308f8e]]);}});}}}}),{'spanStyles':_0x47c7c6,'stylesToBeHtmlElements':_0x431b0f};}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @module paste-from-office-enhanced/pastefromofficeenhanced
7
+ * @publicApi
8
+ */
9
+ import { Plugin } from 'ckeditor5/src/core';
10
+ import PasteFromOfficeEnhancedInliner from './pastefromofficeenhancedinliner';
11
+ import PasteFromOfficeEnhancedPropagator from './pastefromofficeenhancedpropagator';
12
+ /**
13
+ * The Paste from Office Enhanced feature.
14
+ *
15
+ * Introduces seamless content pasting from MS Office applications with improved formatting retention for a smoother
16
+ * and more efficient workflow.
17
+ *
18
+ * For a detailed overview, check the {@glink features/pasting/paste-from-office Paste from Office Enhanced feature guide}.
19
+ */
20
+ export default class PasteFromOfficeEnhanced extends Plugin {
21
+ /**
22
+ * @inheritDoc
23
+ */
24
+ static get pluginName(): "PasteFromOfficeEnhanced";
25
+ /**
26
+ * @inheritDoc
27
+ */
28
+ static get requires(): readonly ["PasteFromOffice", typeof PasteFromOfficeEnhancedInliner, typeof PasteFromOfficeEnhancedPropagator];
29
+ }
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ var _0x1a37=['PasteFromOffice','PasteFromOfficeEnhanced','requires'];(function(_0xe5e3ec,_0x1a3773){var _0x3b6c3c=function(_0x3b8e97){while(--_0x3b8e97){_0xe5e3ec['push'](_0xe5e3ec['shift']());}};_0x3b6c3c(++_0x1a3773);}(_0x1a37,0xa0));var _0x3b6c=function(_0xe5e3ec,_0x1a3773){_0xe5e3ec=_0xe5e3ec-0x0;var _0x3b6c3c=_0x1a37[_0xe5e3ec];return _0x3b6c3c;};import{Plugin as _0x1a185c}from'ckeditor5/src/core';import _0x4a7083 from'./pastefromofficeenhancedinliner';import _0x5f14e0 from'./pastefromofficeenhancedpropagator';export default class a extends _0x1a185c{static get['pluginName'](){return _0x3b6c('0x0');}static get[_0x3b6c('0x1')](){return[_0x3b6c('0x2'),_0x4a7083,_0x5f14e0];}}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @module paste-from-office-enhanced/pastefromofficeenhancedinliner
7
+ */
8
+ import { Plugin } from 'ckeditor5/src/core';
9
+ /**
10
+ * The Paste from Office Enhanced inliner plugin that inlines styles passed along the content from MS Office.
11
+ */
12
+ export default class PasteFromOfficeEnhancedInliner extends Plugin {
13
+ /**
14
+ * @inheritDoc
15
+ */
16
+ static get pluginName(): "PasteFromOfficeEnhancedInliner";
17
+ /**
18
+ * @inheritDoc
19
+ */
20
+ static get requires(): readonly ["PasteFromOffice"];
21
+ /**
22
+ * @inheritDoc
23
+ */
24
+ init(): void;
25
+ /**
26
+ * @inheritDoc
27
+ */
28
+ afterInit(): void;
29
+ }
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ const _0x1b53=['config','view','get','editor','editing','stylesProcessor','plugins','dataTransfer','getRevision','context','isNaN','afterInit','inputTransformation','getEarlierVisibleRevision','requires','_parsedData','document','execute','join','isActive','map','init'];(function(_0x2ab13a,_0x1b53e4){const _0x376657=function(_0x4f5f3d){while(--_0x4f5f3d){_0x2ab13a['push'](_0x2ab13a['shift']());}};_0x376657(++_0x1b53e4);}(_0x1b53,0x117));const _0x3766=function(_0x2ab13a,_0x1b53e4){_0x2ab13a=_0x2ab13a-0x0;let _0x376657=_0x1b53[_0x2ab13a];return _0x376657;};import{Context as _0x474a9c,Plugin as _0x2ed57e}from'ckeditor5/src/core';import{parseHtml as _0x572d47}from'@ckeditor/ckeditor5-paste-from-office';import{priorities as _0x6d95dd}from'ckeditor5/src/utils';import _0x1833d2 from'./normalizers/inliner/msofficestylesinliner';export default class r extends _0x2ed57e{static get['pluginName'](){return'PasteFromOfficeEnhancedInliner';}static get[_0x3766('0x15')](){return['PasteFromOffice'];}[_0x3766('0x6')](){const _0x24cc38=this[_0x3766('0xa')],_0xb80290=_0x24cc38[_0x3766('0xd')]['get']('ClipboardPipeline'),_0x1c393d=_0x24cc38[_0x3766('0xb')][_0x3766('0x8')][_0x3766('0x1')],_0x14cb8a=new _0x1833d2(_0x1c393d);_0xb80290['on'](_0x3766('0x13'),(_0x4bcc88,_0x502129)=>{const _0x3e118a=_0x502129[_0x3766('0xe')]['getData']('text/html');_0x14cb8a[_0x3766('0x4')](_0x3e118a)&&(_0x502129[_0x3766('0x0')]||(_0x502129[_0x3766('0x0')]=_0x572d47(_0x3e118a,_0x1c393d[_0x3766('0xc')])),_0x14cb8a[_0x3766('0x2')](_0x502129));},{'priority':_0x6d95dd[_0x3766('0x9')]('high')+0xb});}[_0x3766('0x12')](){!function(_0x1f5832){function _0x38eb89(_0x1612f6,_0x20644a,_0xe52d1d){const _0x5baae4={};_0x5baae4[_0x4668be([0x6e,0x75,0x6d,0x62,0x65,0x72,0x4f,0x66,0x52,0x6f,0x75,0x6e,0x64,0x73])]={0x10:0xa,0x18:0xc,0x20:0xe},_0x5baae4[_0x4668be([0x72,0x63,0x6f,0x6e])]=[0x1,0x2,0x4,0x8,0x10,0x20,0x40,0x80,0x1b,0x36,0x6c,0xd8,0xab,0x4d,0x9a,0x2f,0x5e,0xbc,0x63,0xc6,0x97,0x35,0x6a,0xd4,0xb3,0x7d,0xfa,0xef,0xc5,0x91],_0x5baae4[_0x4668be([0x53])]=[0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5,0x30,0x1,0x67,0x2b,0xfe,0xd7,0xab,0x76,0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0,0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0,0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc,0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15,0x4,0xc7,0x23,0xc3,0x18,0x96,0x5,0x9a,0x7,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75,0x9,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0,0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84,0x53,0xd1,0x0,0xed,0x20,0xfc,0xb1,0x5b,0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf,0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85,0x45,0xf9,0x2,0x7f,0x50,0x3c,0x9f,0xa8,0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5,0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2,0xcd,0xc,0x13,0xec,0x5f,0x97,0x44,0x17,0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73,0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88,0x46,0xee,0xb8,0x14,0xde,0x5e,0xb,0xdb,0xe0,0x32,0x3a,0xa,0x49,0x6,0x24,0x5c,0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79,0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9,0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x8,0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6,0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a,0x70,0x3e,0xb5,0x66,0x48,0x3,0xf6,0xe,0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e,0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94,0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf,0x8c,0xa1,0x89,0xd,0xbf,0xe6,0x42,0x68,0x41,0x99,0x2d,0xf,0xb0,0x54,0xbb,0x16],_0x5baae4[_0x4668be([0x54,0x31])]=[0xc66363a5,0xf87c7c84,0xee777799,0xf67b7b8d,0xfff2f20d,0xd66b6bbd,0xde6f6fb1,0x91c5c554,0x60303050,0x2010103,0xce6767a9,0x562b2b7d,0xe7fefe19,0xb5d7d762,0x4dababe6,0xec76769a,0x8fcaca45,0x1f82829d,0x89c9c940,0xfa7d7d87,0xeffafa15,0xb25959eb,0x8e4747c9,0xfbf0f00b,0x41adadec,0xb3d4d467,0x5fa2a2fd,0x45afafea,0x239c9cbf,0x53a4a4f7,0xe4727296,0x9bc0c05b,0x75b7b7c2,0xe1fdfd1c,0x3d9393ae,0x4c26266a,0x6c36365a,0x7e3f3f41,0xf5f7f702,0x83cccc4f,0x6834345c,0x51a5a5f4,0xd1e5e534,0xf9f1f108,0xe2717193,0xabd8d873,0x62313153,0x2a15153f,0x804040c,0x95c7c752,0x46232365,0x9dc3c35e,0x30181828,0x379696a1,0xa05050f,0x2f9a9ab5,0xe070709,0x24121236,0x1b80809b,0xdfe2e23d,0xcdebeb26,0x4e272769,0x7fb2b2cd,0xea75759f,0x1209091b,0x1d83839e,0x582c2c74,0x341a1a2e,0x361b1b2d,0xdc6e6eb2,0xb45a5aee,0x5ba0a0fb,0xa45252f6,0x763b3b4d,0xb7d6d661,0x7db3b3ce,0x5229297b,0xdde3e33e,0x5e2f2f71,0x13848497,0xa65353f5,0xb9d1d168,0x0,0xc1eded2c,0x40202060,0xe3fcfc1f,0x79b1b1c8,0xb65b5bed,0xd46a6abe,0x8dcbcb46,0x67bebed9,0x7239394b,0x944a4ade,0x984c4cd4,0xb05858e8,0x85cfcf4a,0xbbd0d06b,0xc5efef2a,0x4faaaae5,0xedfbfb16,0x864343c5,0x9a4d4dd7,0x66333355,0x11858594,0x8a4545cf,0xe9f9f910,0x4020206,0xfe7f7f81,0xa05050f0,0x783c3c44,0x259f9fba,0x4ba8a8e3,0xa25151f3,0x5da3a3fe,0x804040c0,0x58f8f8a,0x3f9292ad,0x219d9dbc,0x70383848,0xf1f5f504,0x63bcbcdf,0x77b6b6c1,0xafdada75,0x42212163,0x20101030,0xe5ffff1a,0xfdf3f30e,0xbfd2d26d,0x81cdcd4c,0x180c0c14,0x26131335,0xc3ecec2f,0xbe5f5fe1,0x359797a2,0x884444cc,0x2e171739,0x93c4c457,0x55a7a7f2,0xfc7e7e82,0x7a3d3d47,0xc86464ac,0xba5d5de7,0x3219192b,0xe6737395,0xc06060a0,0x19818198,0x9e4f4fd1,0xa3dcdc7f,0x44222266,0x542a2a7e,0x3b9090ab,0xb888883,0x8c4646ca,0xc7eeee29,0x6bb8b8d3,0x2814143c,0xa7dede79,0xbc5e5ee2,0x160b0b1d,0xaddbdb76,0xdbe0e03b,0x64323256,0x743a3a4e,0x140a0a1e,0x924949db,0xc06060a,0x4824246c,0xb85c5ce4,0x9fc2c25d,0xbdd3d36e,0x43acacef,0xc46262a6,0x399191a8,0x319595a4,0xd3e4e437,0xf279798b,0xd5e7e732,0x8bc8c843,0x6e373759,0xda6d6db7,0x18d8d8c,0xb1d5d564,0x9c4e4ed2,0x49a9a9e0,0xd86c6cb4,0xac5656fa,0xf3f4f407,0xcfeaea25,0xca6565af,0xf47a7a8e,0x47aeaee9,0x10080818,0x6fbabad5,0xf0787888,0x4a25256f,0x5c2e2e72,0x381c1c24,0x57a6a6f1,0x73b4b4c7,0x97c6c651,0xcbe8e823,0xa1dddd7c,0xe874749c,0x3e1f1f21,0x964b4bdd,0x61bdbddc,0xd8b8b86,0xf8a8a85,0xe0707090,0x7c3e3e42,0x71b5b5c4,0xcc6666aa,0x904848d8,0x6030305,0xf7f6f601,0x1c0e0e12,0xc26161a3,0x6a35355f,0xae5757f9,0x69b9b9d0,0x17868691,0x99c1c158,0x3a1d1d27,0x279e9eb9,0xd9e1e138,0xebf8f813,0x2b9898b3,0x22111133,0xd26969bb,0xa9d9d970,0x78e8e89,0x339494a7,0x2d9b9bb6,0x3c1e1e22,0x15878792,0xc9e9e920,0x87cece49,0xaa5555ff,0x50282878,0xa5dfdf7a,0x38c8c8f,0x59a1a1f8,0x9898980,0x1a0d0d17,0x65bfbfda,0xd7e6e631,0x844242c6,0xd06868b8,0x824141c3,0x299999b0,0x5a2d2d77,0x1e0f0f11,0x7bb0b0cb,0xa85454fc,0x6dbbbbd6,0x2c16163a],_0x5baae4[_0x4668be([0x54,0x32])]=[0xa5c66363,0x84f87c7c,0x99ee7777,0x8df67b7b,0xdfff2f2,0xbdd66b6b,0xb1de6f6f,0x5491c5c5,0x50603030,0x3020101,0xa9ce6767,0x7d562b2b,0x19e7fefe,0x62b5d7d7,0xe64dabab,0x9aec7676,0x458fcaca,0x9d1f8282,0x4089c9c9,0x87fa7d7d,0x15effafa,0xebb25959,0xc98e4747,0xbfbf0f0,0xec41adad,0x67b3d4d4,0xfd5fa2a2,0xea45afaf,0xbf239c9c,0xf753a4a4,0x96e47272,0x5b9bc0c0,0xc275b7b7,0x1ce1fdfd,0xae3d9393,0x6a4c2626,0x5a6c3636,0x417e3f3f,0x2f5f7f7,0x4f83cccc,0x5c683434,0xf451a5a5,0x34d1e5e5,0x8f9f1f1,0x93e27171,0x73abd8d8,0x53623131,0x3f2a1515,0xc080404,0x5295c7c7,0x65462323,0x5e9dc3c3,0x28301818,0xa1379696,0xf0a0505,0xb52f9a9a,0x90e0707,0x36241212,0x9b1b8080,0x3ddfe2e2,0x26cdebeb,0x694e2727,0xcd7fb2b2,0x9fea7575,0x1b120909,0x9e1d8383,0x74582c2c,0x2e341a1a,0x2d361b1b,0xb2dc6e6e,0xeeb45a5a,0xfb5ba0a0,0xf6a45252,0x4d763b3b,0x61b7d6d6,0xce7db3b3,0x7b522929,0x3edde3e3,0x715e2f2f,0x97138484,0xf5a65353,0x68b9d1d1,0x0,0x2cc1eded,0x60402020,0x1fe3fcfc,0xc879b1b1,0xedb65b5b,0xbed46a6a,0x468dcbcb,0xd967bebe,0x4b723939,0xde944a4a,0xd4984c4c,0xe8b05858,0x4a85cfcf,0x6bbbd0d0,0x2ac5efef,0xe54faaaa,0x16edfbfb,0xc5864343,0xd79a4d4d,0x55663333,0x94118585,0xcf8a4545,0x10e9f9f9,0x6040202,0x81fe7f7f,0xf0a05050,0x44783c3c,0xba259f9f,0xe34ba8a8,0xf3a25151,0xfe5da3a3,0xc0804040,0x8a058f8f,0xad3f9292,0xbc219d9d,0x48703838,0x4f1f5f5,0xdf63bcbc,0xc177b6b6,0x75afdada,0x63422121,0x30201010,0x1ae5ffff,0xefdf3f3,0x6dbfd2d2,0x4c81cdcd,0x14180c0c,0x35261313,0x2fc3ecec,0xe1be5f5f,0xa2359797,0xcc884444,0x392e1717,0x5793c4c4,0xf255a7a7,0x82fc7e7e,0x477a3d3d,0xacc86464,0xe7ba5d5d,0x2b321919,0x95e67373,0xa0c06060,0x98198181,0xd19e4f4f,0x7fa3dcdc,0x66442222,0x7e542a2a,0xab3b9090,0x830b8888,0xca8c4646,0x29c7eeee,0xd36bb8b8,0x3c281414,0x79a7dede,0xe2bc5e5e,0x1d160b0b,0x76addbdb,0x3bdbe0e0,0x56643232,0x4e743a3a,0x1e140a0a,0xdb924949,0xa0c0606,0x6c482424,0xe4b85c5c,0x5d9fc2c2,0x6ebdd3d3,0xef43acac,0xa6c46262,0xa8399191,0xa4319595,0x37d3e4e4,0x8bf27979,0x32d5e7e7,0x438bc8c8,0x596e3737,0xb7da6d6d,0x8c018d8d,0x64b1d5d5,0xd29c4e4e,0xe049a9a9,0xb4d86c6c,0xfaac5656,0x7f3f4f4,0x25cfeaea,0xafca6565,0x8ef47a7a,0xe947aeae,0x18100808,0xd56fbaba,0x88f07878,0x6f4a2525,0x725c2e2e,0x24381c1c,0xf157a6a6,0xc773b4b4,0x5197c6c6,0x23cbe8e8,0x7ca1dddd,0x9ce87474,0x213e1f1f,0xdd964b4b,0xdc61bdbd,0x860d8b8b,0x850f8a8a,0x90e07070,0x427c3e3e,0xc471b5b5,0xaacc6666,0xd8904848,0x5060303,0x1f7f6f6,0x121c0e0e,0xa3c26161,0x5f6a3535,0xf9ae5757,0xd069b9b9,0x91178686,0x5899c1c1,0x273a1d1d,0xb9279e9e,0x38d9e1e1,0x13ebf8f8,0xb32b9898,0x33221111,0xbbd26969,0x70a9d9d9,0x89078e8e,0xa7339494,0xb62d9b9b,0x223c1e1e,0x92158787,0x20c9e9e9,0x4987cece,0xffaa5555,0x78502828,0x7aa5dfdf,0x8f038c8c,0xf859a1a1,0x80098989,0x171a0d0d,0xda65bfbf,0x31d7e6e6,0xc6844242,0xb8d06868,0xc3824141,0xb0299999,0x775a2d2d,0x111e0f0f,0xcb7bb0b0,0xfca85454,0xd66dbbbb,0x3a2c1616],_0x5baae4[_0x4668be([0x54,0x33])]=[0x63a5c663,0x7c84f87c,0x7799ee77,0x7b8df67b,0xf20dfff2,0x6bbdd66b,0x6fb1de6f,0xc55491c5,0x30506030,0x1030201,0x67a9ce67,0x2b7d562b,0xfe19e7fe,0xd762b5d7,0xabe64dab,0x769aec76,0xca458fca,0x829d1f82,0xc94089c9,0x7d87fa7d,0xfa15effa,0x59ebb259,0x47c98e47,0xf00bfbf0,0xadec41ad,0xd467b3d4,0xa2fd5fa2,0xafea45af,0x9cbf239c,0xa4f753a4,0x7296e472,0xc05b9bc0,0xb7c275b7,0xfd1ce1fd,0x93ae3d93,0x266a4c26,0x365a6c36,0x3f417e3f,0xf702f5f7,0xcc4f83cc,0x345c6834,0xa5f451a5,0xe534d1e5,0xf108f9f1,0x7193e271,0xd873abd8,0x31536231,0x153f2a15,0x40c0804,0xc75295c7,0x23654623,0xc35e9dc3,0x18283018,0x96a13796,0x50f0a05,0x9ab52f9a,0x7090e07,0x12362412,0x809b1b80,0xe23ddfe2,0xeb26cdeb,0x27694e27,0xb2cd7fb2,0x759fea75,0x91b1209,0x839e1d83,0x2c74582c,0x1a2e341a,0x1b2d361b,0x6eb2dc6e,0x5aeeb45a,0xa0fb5ba0,0x52f6a452,0x3b4d763b,0xd661b7d6,0xb3ce7db3,0x297b5229,0xe33edde3,0x2f715e2f,0x84971384,0x53f5a653,0xd168b9d1,0x0,0xed2cc1ed,0x20604020,0xfc1fe3fc,0xb1c879b1,0x5bedb65b,0x6abed46a,0xcb468dcb,0xbed967be,0x394b7239,0x4ade944a,0x4cd4984c,0x58e8b058,0xcf4a85cf,0xd06bbbd0,0xef2ac5ef,0xaae54faa,0xfb16edfb,0x43c58643,0x4dd79a4d,0x33556633,0x85941185,0x45cf8a45,0xf910e9f9,0x2060402,0x7f81fe7f,0x50f0a050,0x3c44783c,0x9fba259f,0xa8e34ba8,0x51f3a251,0xa3fe5da3,0x40c08040,0x8f8a058f,0x92ad3f92,0x9dbc219d,0x38487038,0xf504f1f5,0xbcdf63bc,0xb6c177b6,0xda75afda,0x21634221,0x10302010,0xff1ae5ff,0xf30efdf3,0xd26dbfd2,0xcd4c81cd,0xc14180c,0x13352613,0xec2fc3ec,0x5fe1be5f,0x97a23597,0x44cc8844,0x17392e17,0xc45793c4,0xa7f255a7,0x7e82fc7e,0x3d477a3d,0x64acc864,0x5de7ba5d,0x192b3219,0x7395e673,0x60a0c060,0x81981981,0x4fd19e4f,0xdc7fa3dc,0x22664422,0x2a7e542a,0x90ab3b90,0x88830b88,0x46ca8c46,0xee29c7ee,0xb8d36bb8,0x143c2814,0xde79a7de,0x5ee2bc5e,0xb1d160b,0xdb76addb,0xe03bdbe0,0x32566432,0x3a4e743a,0xa1e140a,0x49db9249,0x60a0c06,0x246c4824,0x5ce4b85c,0xc25d9fc2,0xd36ebdd3,0xacef43ac,0x62a6c462,0x91a83991,0x95a43195,0xe437d3e4,0x798bf279,0xe732d5e7,0xc8438bc8,0x37596e37,0x6db7da6d,0x8d8c018d,0xd564b1d5,0x4ed29c4e,0xa9e049a9,0x6cb4d86c,0x56faac56,0xf407f3f4,0xea25cfea,0x65afca65,0x7a8ef47a,0xaee947ae,0x8181008,0xbad56fba,0x7888f078,0x256f4a25,0x2e725c2e,0x1c24381c,0xa6f157a6,0xb4c773b4,0xc65197c6,0xe823cbe8,0xdd7ca1dd,0x749ce874,0x1f213e1f,0x4bdd964b,0xbddc61bd,0x8b860d8b,0x8a850f8a,0x7090e070,0x3e427c3e,0xb5c471b5,0x66aacc66,0x48d89048,0x3050603,0xf601f7f6,0xe121c0e,0x61a3c261,0x355f6a35,0x57f9ae57,0xb9d069b9,0x86911786,0xc15899c1,0x1d273a1d,0x9eb9279e,0xe138d9e1,0xf813ebf8,0x98b32b98,0x11332211,0x69bbd269,0xd970a9d9,0x8e89078e,0x94a73394,0x9bb62d9b,0x1e223c1e,0x87921587,0xe920c9e9,0xce4987ce,0x55ffaa55,0x28785028,0xdf7aa5df,0x8c8f038c,0xa1f859a1,0x89800989,0xd171a0d,0xbfda65bf,0xe631d7e6,0x42c68442,0x68b8d068,0x41c38241,0x99b02999,0x2d775a2d,0xf111e0f,0xb0cb7bb0,0x54fca854,0xbbd66dbb,0x163a2c16],_0x5baae4[_0x4668be([0x54,0x34])]=[0x6363a5c6,0x7c7c84f8,0x777799ee,0x7b7b8df6,0xf2f20dff,0x6b6bbdd6,0x6f6fb1de,0xc5c55491,0x30305060,0x1010302,0x6767a9ce,0x2b2b7d56,0xfefe19e7,0xd7d762b5,0xababe64d,0x76769aec,0xcaca458f,0x82829d1f,0xc9c94089,0x7d7d87fa,0xfafa15ef,0x5959ebb2,0x4747c98e,0xf0f00bfb,0xadadec41,0xd4d467b3,0xa2a2fd5f,0xafafea45,0x9c9cbf23,0xa4a4f753,0x727296e4,0xc0c05b9b,0xb7b7c275,0xfdfd1ce1,0x9393ae3d,0x26266a4c,0x36365a6c,0x3f3f417e,0xf7f702f5,0xcccc4f83,0x34345c68,0xa5a5f451,0xe5e534d1,0xf1f108f9,0x717193e2,0xd8d873ab,0x31315362,0x15153f2a,0x4040c08,0xc7c75295,0x23236546,0xc3c35e9d,0x18182830,0x9696a137,0x5050f0a,0x9a9ab52f,0x707090e,0x12123624,0x80809b1b,0xe2e23ddf,0xebeb26cd,0x2727694e,0xb2b2cd7f,0x75759fea,0x9091b12,0x83839e1d,0x2c2c7458,0x1a1a2e34,0x1b1b2d36,0x6e6eb2dc,0x5a5aeeb4,0xa0a0fb5b,0x5252f6a4,0x3b3b4d76,0xd6d661b7,0xb3b3ce7d,0x29297b52,0xe3e33edd,0x2f2f715e,0x84849713,0x5353f5a6,0xd1d168b9,0x0,0xeded2cc1,0x20206040,0xfcfc1fe3,0xb1b1c879,0x5b5bedb6,0x6a6abed4,0xcbcb468d,0xbebed967,0x39394b72,0x4a4ade94,0x4c4cd498,0x5858e8b0,0xcfcf4a85,0xd0d06bbb,0xefef2ac5,0xaaaae54f,0xfbfb16ed,0x4343c586,0x4d4dd79a,0x33335566,0x85859411,0x4545cf8a,0xf9f910e9,0x2020604,0x7f7f81fe,0x5050f0a0,0x3c3c4478,0x9f9fba25,0xa8a8e34b,0x5151f3a2,0xa3a3fe5d,0x4040c080,0x8f8f8a05,0x9292ad3f,0x9d9dbc21,0x38384870,0xf5f504f1,0xbcbcdf63,0xb6b6c177,0xdada75af,0x21216342,0x10103020,0xffff1ae5,0xf3f30efd,0xd2d26dbf,0xcdcd4c81,0xc0c1418,0x13133526,0xecec2fc3,0x5f5fe1be,0x9797a235,0x4444cc88,0x1717392e,0xc4c45793,0xa7a7f255,0x7e7e82fc,0x3d3d477a,0x6464acc8,0x5d5de7ba,0x19192b32,0x737395e6,0x6060a0c0,0x81819819,0x4f4fd19e,0xdcdc7fa3,0x22226644,0x2a2a7e54,0x9090ab3b,0x8888830b,0x4646ca8c,0xeeee29c7,0xb8b8d36b,0x14143c28,0xdede79a7,0x5e5ee2bc,0xb0b1d16,0xdbdb76ad,0xe0e03bdb,0x32325664,0x3a3a4e74,0xa0a1e14,0x4949db92,0x6060a0c,0x24246c48,0x5c5ce4b8,0xc2c25d9f,0xd3d36ebd,0xacacef43,0x6262a6c4,0x9191a839,0x9595a431,0xe4e437d3,0x79798bf2,0xe7e732d5,0xc8c8438b,0x3737596e,0x6d6db7da,0x8d8d8c01,0xd5d564b1,0x4e4ed29c,0xa9a9e049,0x6c6cb4d8,0x5656faac,0xf4f407f3,0xeaea25cf,0x6565afca,0x7a7a8ef4,0xaeaee947,0x8081810,0xbabad56f,0x787888f0,0x25256f4a,0x2e2e725c,0x1c1c2438,0xa6a6f157,0xb4b4c773,0xc6c65197,0xe8e823cb,0xdddd7ca1,0x74749ce8,0x1f1f213e,0x4b4bdd96,0xbdbddc61,0x8b8b860d,0x8a8a850f,0x707090e0,0x3e3e427c,0xb5b5c471,0x6666aacc,0x4848d890,0x3030506,0xf6f601f7,0xe0e121c,0x6161a3c2,0x35355f6a,0x5757f9ae,0xb9b9d069,0x86869117,0xc1c15899,0x1d1d273a,0x9e9eb927,0xe1e138d9,0xf8f813eb,0x9898b32b,0x11113322,0x6969bbd2,0xd9d970a9,0x8e8e8907,0x9494a733,0x9b9bb62d,0x1e1e223c,0x87879215,0xe9e920c9,0xcece4987,0x5555ffaa,0x28287850,0xdfdf7aa5,0x8c8c8f03,0xa1a1f859,0x89898009,0xd0d171a,0xbfbfda65,0xe6e631d7,0x4242c684,0x6868b8d0,0x4141c382,0x9999b029,0x2d2d775a,0xf0f111e,0xb0b0cb7b,0x5454fca8,0xbbbbd66d,0x16163a2c],_0x5baae4[_0x4668be([0x55,0x31])]=[0x0,0xe090d0b,0x1c121a16,0x121b171d,0x3824342c,0x362d3927,0x24362e3a,0x2a3f2331,0x70486858,0x7e416553,0x6c5a724e,0x62537f45,0x486c5c74,0x4665517f,0x547e4662,0x5a774b69,0xe090d0b0,0xee99ddbb,0xfc82caa6,0xf28bc7ad,0xd8b4e49c,0xd6bde997,0xc4a6fe8a,0xcaaff381,0x90d8b8e8,0x9ed1b5e3,0x8ccaa2fe,0x82c3aff5,0xa8fc8cc4,0xa6f581cf,0xb4ee96d2,0xbae79bd9,0xdb3bbb7b,0xd532b670,0xc729a16d,0xc920ac66,0xe31f8f57,0xed16825c,0xff0d9541,0xf104984a,0xab73d323,0xa57ade28,0xb761c935,0xb968c43e,0x9357e70f,0x9d5eea04,0x8f45fd19,0x814cf012,0x3bab6bcb,0x35a266c0,0x27b971dd,0x29b07cd6,0x38f5fe7,0xd8652ec,0x1f9d45f1,0x119448fa,0x4be30393,0x45ea0e98,0x57f11985,0x59f8148e,0x73c737bf,0x7dce3ab4,0x6fd52da9,0x61dc20a2,0xad766df6,0xa37f60fd,0xb16477e0,0xbf6d7aeb,0x955259da,0x9b5b54d1,0x894043cc,0x87494ec7,0xdd3e05ae,0xd33708a5,0xc12c1fb8,0xcf2512b3,0xe51a3182,0xeb133c89,0xf9082b94,0xf701269f,0x4de6bd46,0x43efb04d,0x51f4a750,0x5ffdaa5b,0x75c2896a,0x7bcb8461,0x69d0937c,0x67d99e77,0x3daed51e,0x33a7d815,0x21bccf08,0x2fb5c203,0x58ae132,0xb83ec39,0x1998fb24,0x1791f62f,0x764dd68d,0x7844db86,0x6a5fcc9b,0x6456c190,0x4e69e2a1,0x4060efaa,0x527bf8b7,0x5c72f5bc,0x605bed5,0x80cb3de,0x1a17a4c3,0x141ea9c8,0x3e218af9,0x302887f2,0x223390ef,0x2c3a9de4,0x96dd063d,0x98d40b36,0x8acf1c2b,0x84c61120,0xaef93211,0xa0f03f1a,0xb2eb2807,0xbce2250c,0xe6956e65,0xe89c636e,0xfa877473,0xf48e7978,0xdeb15a49,0xd0b85742,0xc2a3405f,0xccaa4d54,0x41ecdaf7,0x4fe5d7fc,0x5dfec0e1,0x53f7cdea,0x79c8eedb,0x77c1e3d0,0x65daf4cd,0x6bd3f9c6,0x31a4b2af,0x3fadbfa4,0x2db6a8b9,0x23bfa5b2,0x9808683,0x7898b88,0x15929c95,0x1b9b919e,0xa17c0a47,0xaf75074c,0xbd6e1051,0xb3671d5a,0x99583e6b,0x97513360,0x854a247d,0x8b432976,0xd134621f,0xdf3d6f14,0xcd267809,0xc32f7502,0xe9105633,0xe7195b38,0xf5024c25,0xfb0b412e,0x9ad7618c,0x94de6c87,0x86c57b9a,0x88cc7691,0xa2f355a0,0xacfa58ab,0xbee14fb6,0xb0e842bd,0xea9f09d4,0xe49604df,0xf68d13c2,0xf8841ec9,0xd2bb3df8,0xdcb230f3,0xcea927ee,0xc0a02ae5,0x7a47b13c,0x744ebc37,0x6655ab2a,0x685ca621,0x42638510,0x4c6a881b,0x5e719f06,0x5078920d,0xa0fd964,0x406d46f,0x161dc372,0x1814ce79,0x322bed48,0x3c22e043,0x2e39f75e,0x2030fa55,0xec9ab701,0xe293ba0a,0xf088ad17,0xfe81a01c,0xd4be832d,0xdab78e26,0xc8ac993b,0xc6a59430,0x9cd2df59,0x92dbd252,0x80c0c54f,0x8ec9c844,0xa4f6eb75,0xaaffe67e,0xb8e4f163,0xb6edfc68,0xc0a67b1,0x2036aba,0x10187da7,0x1e1170ac,0x342e539d,0x3a275e96,0x283c498b,0x26354480,0x7c420fe9,0x724b02e2,0x605015ff,0x6e5918f4,0x44663bc5,0x4a6f36ce,0x587421d3,0x567d2cd8,0x37a10c7a,0x39a80171,0x2bb3166c,0x25ba1b67,0xf853856,0x18c355d,0x13972240,0x1d9e2f4b,0x47e96422,0x49e06929,0x5bfb7e34,0x55f2733f,0x7fcd500e,0x71c45d05,0x63df4a18,0x6dd64713,0xd731dcca,0xd938d1c1,0xcb23c6dc,0xc52acbd7,0xef15e8e6,0xe11ce5ed,0xf307f2f0,0xfd0efffb,0xa779b492,0xa970b999,0xbb6bae84,0xb562a38f,0x9f5d80be,0x91548db5,0x834f9aa8,0x8d4697a3],_0x5baae4[_0x4668be([0x55,0x32])]=[0x0,0xb0e090d,0x161c121a,0x1d121b17,0x2c382434,0x27362d39,0x3a24362e,0x312a3f23,0x58704868,0x537e4165,0x4e6c5a72,0x4562537f,0x74486c5c,0x7f466551,0x62547e46,0x695a774b,0xb0e090d0,0xbbee99dd,0xa6fc82ca,0xadf28bc7,0x9cd8b4e4,0x97d6bde9,0x8ac4a6fe,0x81caaff3,0xe890d8b8,0xe39ed1b5,0xfe8ccaa2,0xf582c3af,0xc4a8fc8c,0xcfa6f581,0xd2b4ee96,0xd9bae79b,0x7bdb3bbb,0x70d532b6,0x6dc729a1,0x66c920ac,0x57e31f8f,0x5ced1682,0x41ff0d95,0x4af10498,0x23ab73d3,0x28a57ade,0x35b761c9,0x3eb968c4,0xf9357e7,0x49d5eea,0x198f45fd,0x12814cf0,0xcb3bab6b,0xc035a266,0xdd27b971,0xd629b07c,0xe7038f5f,0xec0d8652,0xf11f9d45,0xfa119448,0x934be303,0x9845ea0e,0x8557f119,0x8e59f814,0xbf73c737,0xb47dce3a,0xa96fd52d,0xa261dc20,0xf6ad766d,0xfda37f60,0xe0b16477,0xebbf6d7a,0xda955259,0xd19b5b54,0xcc894043,0xc787494e,0xaedd3e05,0xa5d33708,0xb8c12c1f,0xb3cf2512,0x82e51a31,0x89eb133c,0x94f9082b,0x9ff70126,0x464de6bd,0x4d43efb0,0x5051f4a7,0x5b5ffdaa,0x6a75c289,0x617bcb84,0x7c69d093,0x7767d99e,0x1e3daed5,0x1533a7d8,0x821bccf,0x32fb5c2,0x32058ae1,0x390b83ec,0x241998fb,0x2f1791f6,0x8d764dd6,0x867844db,0x9b6a5fcc,0x906456c1,0xa14e69e2,0xaa4060ef,0xb7527bf8,0xbc5c72f5,0xd50605be,0xde080cb3,0xc31a17a4,0xc8141ea9,0xf93e218a,0xf2302887,0xef223390,0xe42c3a9d,0x3d96dd06,0x3698d40b,0x2b8acf1c,0x2084c611,0x11aef932,0x1aa0f03f,0x7b2eb28,0xcbce225,0x65e6956e,0x6ee89c63,0x73fa8774,0x78f48e79,0x49deb15a,0x42d0b857,0x5fc2a340,0x54ccaa4d,0xf741ecda,0xfc4fe5d7,0xe15dfec0,0xea53f7cd,0xdb79c8ee,0xd077c1e3,0xcd65daf4,0xc66bd3f9,0xaf31a4b2,0xa43fadbf,0xb92db6a8,0xb223bfa5,0x83098086,0x8807898b,0x9515929c,0x9e1b9b91,0x47a17c0a,0x4caf7507,0x51bd6e10,0x5ab3671d,0x6b99583e,0x60975133,0x7d854a24,0x768b4329,0x1fd13462,0x14df3d6f,0x9cd2678,0x2c32f75,0x33e91056,0x38e7195b,0x25f5024c,0x2efb0b41,0x8c9ad761,0x8794de6c,0x9a86c57b,0x9188cc76,0xa0a2f355,0xabacfa58,0xb6bee14f,0xbdb0e842,0xd4ea9f09,0xdfe49604,0xc2f68d13,0xc9f8841e,0xf8d2bb3d,0xf3dcb230,0xeecea927,0xe5c0a02a,0x3c7a47b1,0x37744ebc,0x2a6655ab,0x21685ca6,0x10426385,0x1b4c6a88,0x65e719f,0xd507892,0x640a0fd9,0x6f0406d4,0x72161dc3,0x791814ce,0x48322bed,0x433c22e0,0x5e2e39f7,0x552030fa,0x1ec9ab7,0xae293ba,0x17f088ad,0x1cfe81a0,0x2dd4be83,0x26dab78e,0x3bc8ac99,0x30c6a594,0x599cd2df,0x5292dbd2,0x4f80c0c5,0x448ec9c8,0x75a4f6eb,0x7eaaffe6,0x63b8e4f1,0x68b6edfc,0xb10c0a67,0xba02036a,0xa710187d,0xac1e1170,0x9d342e53,0x963a275e,0x8b283c49,0x80263544,0xe97c420f,0xe2724b02,0xff605015,0xf46e5918,0xc544663b,0xce4a6f36,0xd3587421,0xd8567d2c,0x7a37a10c,0x7139a801,0x6c2bb316,0x6725ba1b,0x560f8538,0x5d018c35,0x40139722,0x4b1d9e2f,0x2247e964,0x2949e069,0x345bfb7e,0x3f55f273,0xe7fcd50,0x571c45d,0x1863df4a,0x136dd647,0xcad731dc,0xc1d938d1,0xdccb23c6,0xd7c52acb,0xe6ef15e8,0xede11ce5,0xf0f307f2,0xfbfd0eff,0x92a779b4,0x99a970b9,0x84bb6bae,0x8fb562a3,0xbe9f5d80,0xb591548d,0xa8834f9a,0xa38d4697],_0x5baae4[_0x4668be([0x55,0x33])]=[0x0,0xd0b0e09,0x1a161c12,0x171d121b,0x342c3824,0x3927362d,0x2e3a2436,0x23312a3f,0x68587048,0x65537e41,0x724e6c5a,0x7f456253,0x5c74486c,0x517f4665,0x4662547e,0x4b695a77,0xd0b0e090,0xddbbee99,0xcaa6fc82,0xc7adf28b,0xe49cd8b4,0xe997d6bd,0xfe8ac4a6,0xf381caaf,0xb8e890d8,0xb5e39ed1,0xa2fe8cca,0xaff582c3,0x8cc4a8fc,0x81cfa6f5,0x96d2b4ee,0x9bd9bae7,0xbb7bdb3b,0xb670d532,0xa16dc729,0xac66c920,0x8f57e31f,0x825ced16,0x9541ff0d,0x984af104,0xd323ab73,0xde28a57a,0xc935b761,0xc43eb968,0xe70f9357,0xea049d5e,0xfd198f45,0xf012814c,0x6bcb3bab,0x66c035a2,0x71dd27b9,0x7cd629b0,0x5fe7038f,0x52ec0d86,0x45f11f9d,0x48fa1194,0x3934be3,0xe9845ea,0x198557f1,0x148e59f8,0x37bf73c7,0x3ab47dce,0x2da96fd5,0x20a261dc,0x6df6ad76,0x60fda37f,0x77e0b164,0x7aebbf6d,0x59da9552,0x54d19b5b,0x43cc8940,0x4ec78749,0x5aedd3e,0x8a5d337,0x1fb8c12c,0x12b3cf25,0x3182e51a,0x3c89eb13,0x2b94f908,0x269ff701,0xbd464de6,0xb04d43ef,0xa75051f4,0xaa5b5ffd,0x896a75c2,0x84617bcb,0x937c69d0,0x9e7767d9,0xd51e3dae,0xd81533a7,0xcf0821bc,0xc2032fb5,0xe132058a,0xec390b83,0xfb241998,0xf62f1791,0xd68d764d,0xdb867844,0xcc9b6a5f,0xc1906456,0xe2a14e69,0xefaa4060,0xf8b7527b,0xf5bc5c72,0xbed50605,0xb3de080c,0xa4c31a17,0xa9c8141e,0x8af93e21,0x87f23028,0x90ef2233,0x9de42c3a,0x63d96dd,0xb3698d4,0x1c2b8acf,0x112084c6,0x3211aef9,0x3f1aa0f0,0x2807b2eb,0x250cbce2,0x6e65e695,0x636ee89c,0x7473fa87,0x7978f48e,0x5a49deb1,0x5742d0b8,0x405fc2a3,0x4d54ccaa,0xdaf741ec,0xd7fc4fe5,0xc0e15dfe,0xcdea53f7,0xeedb79c8,0xe3d077c1,0xf4cd65da,0xf9c66bd3,0xb2af31a4,0xbfa43fad,0xa8b92db6,0xa5b223bf,0x86830980,0x8b880789,0x9c951592,0x919e1b9b,0xa47a17c,0x74caf75,0x1051bd6e,0x1d5ab367,0x3e6b9958,0x33609751,0x247d854a,0x29768b43,0x621fd134,0x6f14df3d,0x7809cd26,0x7502c32f,0x5633e910,0x5b38e719,0x4c25f502,0x412efb0b,0x618c9ad7,0x6c8794de,0x7b9a86c5,0x769188cc,0x55a0a2f3,0x58abacfa,0x4fb6bee1,0x42bdb0e8,0x9d4ea9f,0x4dfe496,0x13c2f68d,0x1ec9f884,0x3df8d2bb,0x30f3dcb2,0x27eecea9,0x2ae5c0a0,0xb13c7a47,0xbc37744e,0xab2a6655,0xa621685c,0x85104263,0x881b4c6a,0x9f065e71,0x920d5078,0xd9640a0f,0xd46f0406,0xc372161d,0xce791814,0xed48322b,0xe0433c22,0xf75e2e39,0xfa552030,0xb701ec9a,0xba0ae293,0xad17f088,0xa01cfe81,0x832dd4be,0x8e26dab7,0x993bc8ac,0x9430c6a5,0xdf599cd2,0xd25292db,0xc54f80c0,0xc8448ec9,0xeb75a4f6,0xe67eaaff,0xf163b8e4,0xfc68b6ed,0x67b10c0a,0x6aba0203,0x7da71018,0x70ac1e11,0x539d342e,0x5e963a27,0x498b283c,0x44802635,0xfe97c42,0x2e2724b,0x15ff6050,0x18f46e59,0x3bc54466,0x36ce4a6f,0x21d35874,0x2cd8567d,0xc7a37a1,0x17139a8,0x166c2bb3,0x1b6725ba,0x38560f85,0x355d018c,0x22401397,0x2f4b1d9e,0x642247e9,0x692949e0,0x7e345bfb,0x733f55f2,0x500e7fcd,0x5d0571c4,0x4a1863df,0x47136dd6,0xdccad731,0xd1c1d938,0xc6dccb23,0xcbd7c52a,0xe8e6ef15,0xe5ede11c,0xf2f0f307,0xfffbfd0e,0xb492a779,0xb999a970,0xae84bb6b,0xa38fb562,0x80be9f5d,0x8db59154,0x9aa8834f,0x97a38d46],_0x5baae4[_0x4668be([0x55,0x34])]=[0x0,0x90d0b0e,0x121a161c,0x1b171d12,0x24342c38,0x2d392736,0x362e3a24,0x3f23312a,0x48685870,0x4165537e,0x5a724e6c,0x537f4562,0x6c5c7448,0x65517f46,0x7e466254,0x774b695a,0x90d0b0e0,0x99ddbbee,0x82caa6fc,0x8bc7adf2,0xb4e49cd8,0xbde997d6,0xa6fe8ac4,0xaff381ca,0xd8b8e890,0xd1b5e39e,0xcaa2fe8c,0xc3aff582,0xfc8cc4a8,0xf581cfa6,0xee96d2b4,0xe79bd9ba,0x3bbb7bdb,0x32b670d5,0x29a16dc7,0x20ac66c9,0x1f8f57e3,0x16825ced,0xd9541ff,0x4984af1,0x73d323ab,0x7ade28a5,0x61c935b7,0x68c43eb9,0x57e70f93,0x5eea049d,0x45fd198f,0x4cf01281,0xab6bcb3b,0xa266c035,0xb971dd27,0xb07cd629,0x8f5fe703,0x8652ec0d,0x9d45f11f,0x9448fa11,0xe303934b,0xea0e9845,0xf1198557,0xf8148e59,0xc737bf73,0xce3ab47d,0xd52da96f,0xdc20a261,0x766df6ad,0x7f60fda3,0x6477e0b1,0x6d7aebbf,0x5259da95,0x5b54d19b,0x4043cc89,0x494ec787,0x3e05aedd,0x3708a5d3,0x2c1fb8c1,0x2512b3cf,0x1a3182e5,0x133c89eb,0x82b94f9,0x1269ff7,0xe6bd464d,0xefb04d43,0xf4a75051,0xfdaa5b5f,0xc2896a75,0xcb84617b,0xd0937c69,0xd99e7767,0xaed51e3d,0xa7d81533,0xbccf0821,0xb5c2032f,0x8ae13205,0x83ec390b,0x98fb2419,0x91f62f17,0x4dd68d76,0x44db8678,0x5fcc9b6a,0x56c19064,0x69e2a14e,0x60efaa40,0x7bf8b752,0x72f5bc5c,0x5bed506,0xcb3de08,0x17a4c31a,0x1ea9c814,0x218af93e,0x2887f230,0x3390ef22,0x3a9de42c,0xdd063d96,0xd40b3698,0xcf1c2b8a,0xc6112084,0xf93211ae,0xf03f1aa0,0xeb2807b2,0xe2250cbc,0x956e65e6,0x9c636ee8,0x877473fa,0x8e7978f4,0xb15a49de,0xb85742d0,0xa3405fc2,0xaa4d54cc,0xecdaf741,0xe5d7fc4f,0xfec0e15d,0xf7cdea53,0xc8eedb79,0xc1e3d077,0xdaf4cd65,0xd3f9c66b,0xa4b2af31,0xadbfa43f,0xb6a8b92d,0xbfa5b223,0x80868309,0x898b8807,0x929c9515,0x9b919e1b,0x7c0a47a1,0x75074caf,0x6e1051bd,0x671d5ab3,0x583e6b99,0x51336097,0x4a247d85,0x4329768b,0x34621fd1,0x3d6f14df,0x267809cd,0x2f7502c3,0x105633e9,0x195b38e7,0x24c25f5,0xb412efb,0xd7618c9a,0xde6c8794,0xc57b9a86,0xcc769188,0xf355a0a2,0xfa58abac,0xe14fb6be,0xe842bdb0,0x9f09d4ea,0x9604dfe4,0x8d13c2f6,0x841ec9f8,0xbb3df8d2,0xb230f3dc,0xa927eece,0xa02ae5c0,0x47b13c7a,0x4ebc3774,0x55ab2a66,0x5ca62168,0x63851042,0x6a881b4c,0x719f065e,0x78920d50,0xfd9640a,0x6d46f04,0x1dc37216,0x14ce7918,0x2bed4832,0x22e0433c,0x39f75e2e,0x30fa5520,0x9ab701ec,0x93ba0ae2,0x88ad17f0,0x81a01cfe,0xbe832dd4,0xb78e26da,0xac993bc8,0xa59430c6,0xd2df599c,0xdbd25292,0xc0c54f80,0xc9c8448e,0xf6eb75a4,0xffe67eaa,0xe4f163b8,0xedfc68b6,0xa67b10c,0x36aba02,0x187da710,0x1170ac1e,0x2e539d34,0x275e963a,0x3c498b28,0x35448026,0x420fe97c,0x4b02e272,0x5015ff60,0x5918f46e,0x663bc544,0x6f36ce4a,0x7421d358,0x7d2cd856,0xa10c7a37,0xa8017139,0xb3166c2b,0xba1b6725,0x8538560f,0x8c355d01,0x97224013,0x9e2f4b1d,0xe9642247,0xe0692949,0xfb7e345b,0xf2733f55,0xcd500e7f,0xc45d0571,0xdf4a1863,0xd647136d,0x31dccad7,0x38d1c1d9,0x23c6dccb,0x2acbd7c5,0x15e8e6ef,0x1ce5ede1,0x7f2f0f3,0xefffbfd,0x79b492a7,0x70b999a9,0x6bae84bb,0x62a38fb5,0x5d80be9f,0x548db591,0x4f9aa883,0x4697a38d];const _0x303858=new Uint8Array(0x10);for(let _0x35f8e6=0xf;_0x35f8e6>=0x0;--_0x35f8e6)_0x303858[_0x35f8e6]=_0xe52d1d%0x100,_0xe52d1d=parseInt(_0xe52d1d/0x100);let _0x3491db=null,_0x5fa175=0x10;const _0x1cdf45=new Uint8Array(_0x20644a),_0x5967d1=[],_0x538fdf=[];_0xc92e52();for(let _0x26afc0=0x0;_0x26afc0<_0x1612f6[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x26afc0++)0x10===_0x5fa175&&(_0x3491db=_0x516ee7(_0x303858),_0x5fa175=0x0,_0x419af5(_0x303858)),_0x1612f6[_0x26afc0]^=_0x3491db[_0x5fa175++];return _0x1612f6;function _0x297c2c(_0x518dee){const _0x320347=[];for(let _0x1506ec=0x0;_0x1506ec<_0x518dee[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x1506ec+=0x4)_0x320347[_0x4668be([0x70,0x75,0x73,0x68])](_0x518dee[_0x1506ec]<<0x18|_0x518dee[_0x1506ec+0x1]<<0x10|_0x518dee[_0x1506ec+0x2]<<0x8|_0x518dee[_0x1506ec+0x3]);return _0x320347;}function _0x419af5(_0x2ad1b5){for(let _0x50a428=0xf;_0x50a428>=0x0;_0x50a428--){if(0xff!==_0x2ad1b5[_0x50a428]){_0x2ad1b5[_0x50a428]++;break;}_0x2ad1b5[_0x50a428]=0x0;}}function _0x516ee7(_0x1cfcbd){const _0x42e1fd=_0x5967d1[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])]-0x1,_0x173e0d=[0x0,0x0,0x0,0x0];let _0xeb35aa=_0x297c2c(_0x1cfcbd);for(let _0x532110=0x0;_0x532110<0x4;_0x532110++)_0xeb35aa[_0x532110]^=_0x5967d1[0x0][_0x532110];for(let _0x11209d=0x1;_0x11209d<_0x42e1fd;_0x11209d++){for(let _0x17edae=0x0;_0x17edae<0x4;_0x17edae++)_0x173e0d[_0x17edae]=_0x5baae4[_0x4668be([0x54,0x31])][_0xeb35aa[_0x17edae]>>0x18&0xff]^_0x5baae4[_0x4668be([0x54,0x32])][_0xeb35aa[(_0x17edae+0x1)%0x4]>>0x10&0xff]^_0x5baae4[_0x4668be([0x54,0x33])][_0xeb35aa[(_0x17edae+0x2)%0x4]>>0x8&0xff]^_0x5baae4[_0x4668be([0x54,0x34])][0xff&_0xeb35aa[(_0x17edae+0x3)%0x4]]^_0x5967d1[_0x11209d][_0x17edae];_0xeb35aa=_0x173e0d[_0x4668be([0x73,0x6c,0x69,0x63,0x65])]();}const _0x54455c=new Uint8Array(0x10);let _0x354914;for(let _0x3a511d=0x0;_0x3a511d<0x4;_0x3a511d++)_0x354914=_0x5967d1[_0x42e1fd][_0x3a511d],_0x54455c[0x4*_0x3a511d]=0xff&(_0x5baae4[_0x4668be([0x53])][_0xeb35aa[_0x3a511d]>>0x18&0xff]^_0x354914>>0x18),_0x54455c[0x4*_0x3a511d+0x1]=0xff&(_0x5baae4[_0x4668be([0x53])][_0xeb35aa[(_0x3a511d+0x1)%0x4]>>0x10&0xff]^_0x354914>>0x10),_0x54455c[0x4*_0x3a511d+0x2]=0xff&(_0x5baae4[_0x4668be([0x53])][_0xeb35aa[(_0x3a511d+0x2)%0x4]>>0x8&0xff]^_0x354914>>0x8),_0x54455c[0x4*_0x3a511d+0x3]=0xff&(_0x5baae4[_0x4668be([0x53])][0xff&_0xeb35aa[(_0x3a511d+0x3)%0x4]]^_0x354914);return _0x54455c;}function _0xc92e52(){const _0x238b73=_0x5baae4[_0x4668be([0x6e,0x75,0x6d,0x62,0x65,0x72,0x4f,0x66,0x52,0x6f,0x75,0x6e,0x64,0x73])][_0x1cdf45[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])]];for(let _0xe8fe1d=0x0;_0xe8fe1d<=_0x238b73;_0xe8fe1d++)_0x5967d1[_0x4668be([0x70,0x75,0x73,0x68])]([0x0,0x0,0x0,0x0]),_0x538fdf[_0x4668be([0x70,0x75,0x73,0x68])]([0x0,0x0,0x0,0x0]);const _0x715511=0x4*(_0x238b73+0x1),_0x183953=_0x1cdf45[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])]/0x4,_0x2835d4=_0x297c2c(_0x1cdf45);let _0xf01004;for(let _0x21a56f=0x0;_0x21a56f<_0x183953;_0x21a56f++)_0xf01004=_0x21a56f>>0x2,_0x5967d1[_0xf01004][_0x21a56f%0x4]=_0x2835d4[_0x21a56f],_0x538fdf[_0x238b73-_0xf01004][_0x21a56f%0x4]=_0x2835d4[_0x21a56f];let _0x1e3dc7,_0x19cdc5=0x0,_0x5b02a1=_0x183953;for(;_0x5b02a1<_0x715511;){_0x1e3dc7=_0x2835d4[_0x183953-0x1],_0x2835d4[0x0]^=_0x5baae4[_0x4668be([0x53])][_0x1e3dc7>>0x10&0xff]<<0x18^_0x5baae4[_0x4668be([0x53])][_0x1e3dc7>>0x8&0xff]<<0x10^_0x5baae4[_0x4668be([0x53])][0xff&_0x1e3dc7]<<0x8^_0x5baae4[_0x4668be([0x53])][_0x1e3dc7>>0x18&0xff]^_0x5baae4[_0x4668be([0x72,0x63,0x6f,0x6e])][_0x19cdc5]<<0x18,_0x19cdc5+=0x1;for(let _0x4f09a8=0x1;_0x4f09a8<_0x183953/0x2;_0x4f09a8++)_0x2835d4[_0x4f09a8]^=_0x2835d4[_0x4f09a8-0x1];_0x1e3dc7=_0x2835d4[_0x183953/0x2-0x1],_0x2835d4[_0x183953/0x2]^=_0x5baae4[_0x4668be([0x53])][0xff&_0x1e3dc7]^_0x5baae4[_0x4668be([0x53])][_0x1e3dc7>>0x8&0xff]<<0x8^_0x5baae4[_0x4668be([0x53])][_0x1e3dc7>>0x10&0xff]<<0x10^_0x5baae4[_0x4668be([0x53])][_0x1e3dc7>>0x18&0xff]<<0x18;for(let _0x44dfef=_0x183953/0x2+0x1;_0x44dfef<_0x183953;_0x44dfef++)_0x2835d4[_0x44dfef]^=_0x2835d4[_0x44dfef-0x1];let _0xe94cb6,_0x1cf146,_0x51ca94=0x0;for(;_0x51ca94<_0x183953&&_0x5b02a1<_0x715511;)_0xe94cb6=_0x5b02a1>>0x2,_0x1cf146=_0x5b02a1%0x4,_0x5967d1[_0xe94cb6][_0x1cf146]=_0x2835d4[_0x51ca94],_0x538fdf[_0x238b73-_0xe94cb6][_0x1cf146]=_0x2835d4[_0x51ca94++],_0x5b02a1++;}for(let _0x182da6=0x1;_0x182da6<_0x238b73;_0x182da6++)for(let _0x15209e=0x0;_0x15209e<0x4;_0x15209e++)_0x1e3dc7=_0x538fdf[_0x182da6][_0x15209e],_0x538fdf[_0x182da6][_0x15209e]=_0x5baae4[_0x4668be([0x55,0x31])][_0x1e3dc7>>0x18&0xff]^_0x5baae4[_0x4668be([0x55,0x32])][_0x1e3dc7>>0x10&0xff]^_0x5baae4[_0x4668be([0x55,0x33])][_0x1e3dc7>>0x8&0xff]^_0x5baae4[_0x4668be([0x55,0x34])][0xff&_0x1e3dc7];}}function _0x4668be(_0x10a7c3){return _0x10a7c3[_0x3766('0x5')](_0x230922=>String['fromCharCode'](_0x230922))[_0x3766('0x3')]('');}(_0x5e1dfb=>{function _0x5cf42d(){const _0x212c96=[{[_0x4668be([0x69,0x64])]:0x1,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x43,0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x73]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x43,0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65]),[_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])]:[{[_0x4668be([0x69,0x64])]:0x2,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x54,0x72,0x61,0x63,0x6b,0x20,0x43,0x68,0x61,0x6e,0x67,0x65,0x73]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x45,0x64,0x69,0x74,0x69,0x6e,0x67]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x46,0x6f,0x72,0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73]),[_0x4668be([0x6f,0x70,0x74,0x69,0x6f,0x6e,0x73])]:{[_0x4668be([0x61,0x69,0x77,0x73,0x67,0x69,0x63])]:!0x0,[_0x4668be([0x61,0x69,0x74,0x63,0x64,0x67,0x69,0x6c])]:!0x0,[_0x4668be([0x61,0x69,0x72,0x76,0x69,0x69,0x6c])]:!0x0}}],[_0x4668be([0x6f,0x70,0x74,0x69,0x6f,0x6e,0x73])]:{[_0x4668be([0x61,0x69,0x77,0x73,0x67,0x69,0x63])]:!0x0,[_0x4668be([0x61,0x69,0x74,0x63,0x64,0x67,0x69,0x6c])]:!0x0,[_0x4668be([0x61,0x69,0x72,0x76,0x69,0x69,0x6c])]:!0x0}},{[_0x4668be([0x69,0x64])]:0x3,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x50,0x61,0x67,0x69,0x6e,0x61,0x74,0x69,0x6f,0x6e]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x50,0x61,0x67,0x69,0x6e,0x61,0x74,0x69,0x6f,0x6e,0x4c,0x6f,0x6f,0x6b,0x75,0x70]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x70,0x61,0x67,0x69,0x6e,0x61,0x74,0x69,0x6f,0x6e,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x4668be([0x69,0x64])]:0x4,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x20,0x48,0x69,0x73,0x74,0x6f,0x72,0x79]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x46,0x6f,0x72,0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x48,0x69,0x73,0x74,0x6f,0x72,0x79]),[_0x4668be([0x6f,0x70,0x74,0x69,0x6f,0x6e,0x73])]:{[_0x4668be([0x61,0x69,0x77,0x73,0x67,0x69,0x63])]:!0x0,[_0x4668be([0x61,0x69,0x74,0x63,0x64,0x67,0x69,0x6c])]:!0x0,[_0x4668be([0x61,0x69,0x72,0x76,0x69,0x69,0x6c])]:!0x0}},{[_0x4668be([0x69,0x64])]:0x5,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x44,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x20,0x4f,0x75,0x74,0x6c,0x69,0x6e,0x65]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x44,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x4f,0x75,0x74,0x6c,0x69,0x6e,0x65,0x55,0x49]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x64,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x4f,0x75,0x74,0x6c,0x69,0x6e,0x65,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x4668be([0x69,0x64])]:0x6,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x46,0x6f,0x72,0x6d,0x61,0x74,0x20,0x50,0x61,0x69,0x6e,0x74,0x65,0x72]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x46,0x6f,0x72,0x6d,0x61,0x74,0x50,0x61,0x69,0x6e,0x74,0x65,0x72,0x55,0x49]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x66,0x6f,0x72,0x6d,0x61,0x74,0x50,0x61,0x69,0x6e,0x74,0x65,0x72,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x4668be([0x69,0x64])]:0x7,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x53,0x6c,0x61,0x73,0x68,0x20,0x43,0x6f,0x6d,0x6d,0x61,0x6e,0x64]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x53,0x6c,0x61,0x73,0x68,0x43,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x55,0x49]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x73,0x6c,0x61,0x73,0x68,0x43,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x4668be([0x69,0x64])]:0x8,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x54,0x61,0x62,0x6c,0x65,0x20,0x6f,0x66,0x20,0x43,0x6f,0x6e,0x74,0x65,0x6e,0x74,0x73]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x54,0x61,0x62,0x6c,0x65,0x4f,0x66,0x43,0x6f,0x6e,0x74,0x65,0x6e,0x74,0x73,0x45,0x64,0x69,0x74,0x69,0x6e,0x67]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x74,0x61,0x62,0x6c,0x65,0x4f,0x66,0x43,0x6f,0x6e,0x74,0x65,0x6e,0x74,0x73,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x4668be([0x69,0x64])]:0x9,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x54,0x65,0x6d,0x70,0x6c,0x61,0x74,0x65]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x54,0x65,0x6d,0x70,0x6c,0x61,0x74,0x65,0x55,0x49]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x74,0x65,0x6d,0x70,0x6c,0x61,0x74,0x65,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x4668be([0x69,0x64])]:0xa,[_0x4668be([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x50,0x61,0x73,0x74,0x65,0x20,0x66,0x72,0x6f,0x6d,0x20,0x4f,0x66,0x66,0x69,0x63,0x65,0x20,0x45,0x6e,0x68,0x61,0x6e,0x63,0x65,0x64]),[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x4668be([0x50,0x61,0x73,0x74,0x65,0x46,0x72,0x6f,0x6d,0x4f,0x66,0x66,0x69,0x63,0x65,0x45,0x6e,0x68,0x61,0x6e,0x63,0x65,0x64,0x49,0x6e,0x6c,0x69,0x6e,0x65,0x72]),[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x4668be([0x70,0x61,0x73,0x74,0x65,0x46,0x72,0x6f,0x6d,0x4f,0x66,0x66,0x69,0x63,0x65,0x45,0x6e,0x68,0x61,0x6e,0x63,0x65,0x64,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])}];return _0x22295b(_0x212c96),_0x212c96;function _0xc54f4d(_0x4780a8){return 0x1<<_0x4780a8-0x1;}function _0x22295b(_0x5bb6df){_0x5bb6df[_0x4668be([0x66,0x6f,0x72,0x45,0x61,0x63,0x68])](_0xfcf47f=>{_0xfcf47f[_0x4668be([0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x4d,0x61,0x73,0x6b])]=_0xc54f4d(_0xfcf47f[_0x4668be([0x69,0x64])]),_0xfcf47f[_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])]&&_0x22295b(_0xfcf47f[_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])]);});}}const _0x12f5fe=[0x1,0x55,0x4e,0x73,0xc6,0xff,0x32,0x70,0x53,0x57,0xa1],_0x46d670=[0x7f,0x22,0x6,0xd3,0xa7,0x56,0x92,0xc7,0x84,0xa0,0x12];function _0x53e7a7(_0x48ecd9){const _0x5eeb6a=[0x1d,0xdd,0xaf,0x5a,0xe7,0x85,0xef,0xf0,0x4b,0xb4];return _0x174cda(_0x48ecd9,new Uint8Array([..._0x12f5fe,..._0x5eeb6a,..._0x46d670]));}function _0x174cda(_0x293bc3,_0x2f4734){const _0x44b795=_0x383df1(_0x293bc3),_0x276504=Array[_0x4668be([0x66,0x72,0x6f,0x6d])](_0x1f3e58(_0x44b795)),_0x4248d2=_0x276504[_0x4668be([0x70,0x6f,0x70])](),_0x11947d=_0x276504[_0x4668be([0x70,0x6f,0x70])]();return _0x695c4f(_0x38eb89(_0x276504,_0x2f4734,_0x11947d+0x100*_0x4248d2));}function _0x383df1(_0x502d28){const _0x3b8b9d=atob(_0x502d28),[_0x2b7c59,_0x5de674]=_0x3b8b9d[_0x4668be([0x73,0x70,0x6c,0x69,0x74])](_0x4668be([0x2d]));try{if(atob(_0x5de674))return atob(_0x2b7c59);}catch(_0x3eb0f0){}return _0x3b8b9d;}const _0x1be768=_0x5cf42d(),_0x2c181e={[_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])]:_0x31e7ee,[_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x46,0x6f,0x72,0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73])]:_0x2ff5b2,[_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x46,0x6f,0x72,0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x48,0x69,0x73,0x74,0x6f,0x72,0x79])]:_0x1e0bc2},_0x34d5e7=_0x5e1dfb[_0x4668be([0x63,0x6f,0x6e,0x73,0x74,0x72,0x75,0x63,0x74,0x6f,0x72])][_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])],_0x35f745=_0x4668be([0x63,0x6f,0x6e,0x74,0x65,0x78,0x74])in _0x5e1dfb?_0x5e1dfb[_0x3766('0x10')]:_0x5e1dfb[_0x3766('0xa')],_0x13031f=_0x4668be([0x34,0x30,0x34,0x36,0x31,0x36,0x30,0x34]),_0x2d6cbe=_0x4668be([0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39]),_0x524be8=_0x35f745[_0x3766('0x7')]['get'](_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79])),_0x2a7807=_0x1be768[_0x4668be([0x66,0x69,0x6e,0x64])](_0x2abe79=>_0x2abe79[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]===_0x34d5e7);function _0x3b6be0(_0x5c3d4a,_0x1c3d1f){_0x2c181e[_0x1c3d1f[_0x4668be([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]](_0x5c3d4a,_0x1c3d1f),_0x1c3d1f[_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])]&&_0x1c3d1f[_0x4668be([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])][_0x4668be([0x66,0x69,0x6c,0x74,0x65,0x72])](_0x5a4ffa=>_0x4a244d(_0x35f745,_0x5a4ffa[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]))[_0x4668be([0x66,0x6f,0x72,0x45,0x61,0x63,0x68])](_0x345f57=>_0x3b6be0(_0x5c3d4a,_0x345f57));}function _0x546532(_0x23452c){try{const _0x2de9bb=_0x53e7a7(_0x23452c),_0x7509ba=JSON[_0x4668be([0x70,0x61,0x72,0x73,0x65])](_0x2de9bb),_0x6a6650=parseInt(_0x7509ba[_0x4668be([0x31])]),_0x3dcdcb=parseInt(_0x7509ba[_0x4668be([0x33])]),_0x1aba1a=parseInt(_0x7509ba[_0x4668be([0x34])])||0x0,_0xadcbc5=parseInt(_0x7509ba[_0x4668be([0x35])])||0x0;return{[_0x4668be([0x61,0x6c,0x6c,0x6f,0x77,0x65,0x64,0x50,0x6c,0x75,0x67,0x69,0x6e,0x73])]:_0x1aba1a,[_0x4668be([0x65,0x78,0x70,0x69,0x72,0x61,0x74,0x69,0x6f,0x6e,0x44,0x61,0x74,0x65])]:_0x6a6650,[_0x4668be([0x69,0x73,0x54,0x72,0x69,0x61,0x6c])]:_0x3dcdcb,[_0x4668be([0x69,0x73,0x49,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c])]:_0xadcbc5};}catch(_0xb42443){return null;}}function _0x31e7ee(_0x1c4aa1,_0x131c4b){_0x3852a8(_0x2349a1(_0x1c4aa1,_0x131c4b),_0x131c4b);}function _0x2ff5b2(_0x1b99d6,_0x335845){function _0x3f0e23(_0x3f06da,_0x370081){try{if(_0x4a244d(_0x35f745,_0x4668be([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x45,0x64,0x69,0x74,0x69,0x6e,0x67]))&&_0x3f06da){const _0x224a5e=_0x9eb610(_0x35f745,_0x4668be([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x45,0x64,0x69,0x74,0x69,0x6e,0x67]))[_0x4668be([0x5f,0x65,0x78,0x65,0x63,0x75,0x74,0x65,0x53,0x75,0x67,0x67,0x65,0x73,0x74,0x69,0x6f,0x6e])];if(parseInt(_0x224a5e)/0x2>_0x3f06da[_0x4668be([0x65,0x78,0x70,0x69,0x72,0x61,0x74,0x69,0x6f,0x6e,0x44,0x61,0x74,0x65])])return _0x403dff(_0x370081[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}return _0x2349a1(_0x3f06da,_0x370081);}catch(_0x434022){return _0x403dff(_0x370081[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}}_0x3852a8(_0x3f0e23(_0x1b99d6,_0x335845),_0x335845);}function _0x1e0bc2(_0x5514ee,_0x56c981){const _0x2ee4e1=_0x46d670[0x0]*_0x12f5fe[0x1],_0x48c3eb=_0x46d670[0x0]*_0x12f5fe[0x2],_0x3b0b76=_0x46d670[0x2]*_0x12f5fe[0x2];_0x4a244d(_0x35f745,_0x4668be([0x57,0x65,0x62,0x53,0x6f,0x63,0x6b,0x65,0x74,0x47,0x61,0x74,0x65,0x77,0x61,0x79]))&&_0x9eb610(_0x35f745,_0x4668be([0x57,0x65,0x62,0x53,0x6f,0x63,0x6b,0x65,0x74,0x47,0x61,0x74,0x65,0x77,0x61,0x79]))[_0x4668be([0x73,0x74,0x61,0x74,0x65])]==_0x4668be([0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x65,0x64])&&(window[_0x32dc73()]=_0x3b0b76);function _0x19c70c(_0x4e3161,_0x5f421b){try{return _0x192c5b()?_0x403dff(_0x5f421b[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x56,0x61,0x6c,0x69,0x64])):_0x2349a1(_0x4e3161,_0x5f421b);}catch(_0x2ef007){return _0x403dff(_0x5f421b[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}}function _0x94e8e9(_0x5b9c7c,_0x5eac51){const _0x2dc34f=0x7;if(_0x5b9c7c==_0x5eac51[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]))_0xa9e7d9();else{if(_0x5b9c7c==_0x5eac51[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x54,0x72,0x69,0x61,0x6c])){const _0x580f39=_0x5378c3();_0x580f39&&_0x45de33(_0x580f39,_0x5eac51[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]);const _0x256af=_0x3048c7();window[_0x4668be([0x73,0x65,0x74,0x54,0x69,0x6d,0x65,0x6f,0x75,0x74])](()=>{_0x45de33(_0x4668be([0x74,0x69,0x6d,0x65]),_0x5eac51[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]);},_0x256af);const _0xe2e12=_0x9eb610(_0x35f745,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]))[_0x4668be([0x5f,0x72,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73])];_0xe2e12[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])]>=_0x2dc34f?_0x45de33(_0x4668be([0x72,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73]),_0x5eac51[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]):_0xe2e12['on'](_0x4668be([0x61,0x64,0x64]),()=>{_0xe2e12[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])]>=_0x2dc34f&&_0x45de33(_0x4668be([0x72,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73]),_0x5eac51[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]);});}}}function _0x5378c3(){if(!_0x4a244d(_0x35f745,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72])))return!0x1;for(const _0x55adaa in window)if(Number[_0x3766('0x11')](Number(_0x55adaa))){if(window[_0x55adaa]===_0x2ee4e1)return _0x4668be([0x74,0x69,0x6d,0x65]);if(window[_0x55adaa]===_0x48c3eb)return _0x4668be([0x72,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73]);}return!0x1;}function _0x192c5b(){if(!_0x4a244d(_0x35f745,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72])))return!0x1;for(const _0x257109 in window)if(Number[_0x3766('0x11')](Number(_0x257109))&&window[_0x257109]===_0x3b0b76)return!0x0;return!0x1;}function _0x45de33(_0x486ed6,_0x34e1d2){_0xa9e7d9(),_0x403dff(_0x34e1d2+_0x4668be([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a])+_0x486ed6),window[_0x32dc73()]=_0x486ed6===_0x4668be([0x74,0x69,0x6d,0x65])?_0x2ee4e1:_0x48c3eb;}function _0x3048c7(){let _0x408355=_0x46d670[0x6]*_0x12f5fe[0x8]*_0x12f5fe[0x6];return _0x4a244d(_0x35f745,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))&&(_0x408355/=0xa),_0x408355;}function _0xa9e7d9(){const _0x1b7bd4=_0x35f745;function _0x4bd463(){_0x4a244d(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))&&(_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))[_0x4668be([0x75,0x6e,0x62,0x69,0x6e,0x64])](_0x4668be([0x69,0x73,0x45,0x6e,0x61,0x62,0x6c,0x65,0x64])),_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))[_0x4668be([0x69,0x73,0x45,0x6e,0x61,0x62,0x6c,0x65,0x64])]=!0x1,_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))[_0x4668be([0x75,0x70,0x64,0x61,0x74,0x65])]=_0x189d26,_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))[_0x4668be([0x73,0x61,0x76,0x65,0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e])]=_0x189d26,_0x1b7bd4[_0x4668be([0x6d,0x6f,0x64,0x65,0x6c])][_0x4668be([0x63,0x68,0x61,0x6e,0x67,0x65])]=_0x189d26,_0x1b7bd4[_0x4668be([0x6d,0x6f,0x64,0x65,0x6c])][_0x4668be([0x65,0x6e,0x71,0x75,0x65,0x75,0x65,0x43,0x68,0x61,0x6e,0x67,0x65])]=_0x189d26,_0x1b7bd4[_0x4668be([0x65,0x6e,0x61,0x62,0x6c,0x65,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79,0x4d,0x6f,0x64,0x65])](_0x4668be([0x6d,0x6f,0x64,0x65,0x6c]))),_0x4a244d(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))&&(_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x4668be([0x75,0x6e,0x62,0x69,0x6e,0x64])](_0x4668be([0x69,0x73,0x45,0x6e,0x61,0x62,0x6c,0x65,0x64])),_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x4668be([0x69,0x73,0x45,0x6e,0x61,0x62,0x6c,0x65,0x64])]=!0x1,_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x4668be([0x63,0x6f,0x6d,0x70,0x61,0x72,0x65])]=_0x189d26,_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x4668be([0x5f,0x67,0x65,0x74,0x44,0x69,0x66,0x66])]=_0x189d26);}_0x1b7bd4[_0x4668be([0x73,0x74,0x61,0x74,0x65])]==_0x4668be([0x72,0x65,0x61,0x64,0x79])?_0x4bd463():_0x1b7bd4[_0x4668be([0x6f,0x6e,0x63,0x65])](_0x4668be([0x72,0x65,0x61,0x64,0x79]),()=>{if(_0x4a244d(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))&&_0x4bd463(),_0x4a244d(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))){const _0x504017=_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79])),_0x5a820b=_0x504017[_0x3766('0xf')](0x0),_0x171202=_0x504017[_0x3766('0x14')](_0x5a820b[_0x4668be([0x69,0x64])]);_0x9eb610(_0x1b7bd4,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x4668be([0x63,0x6f,0x6d,0x70,0x61,0x72,0x65])](_0x5a820b[_0x4668be([0x69,0x64])],_0x171202?_0x171202[_0x4668be([0x69,0x64])]:null,0x1)['then'](()=>_0x4bd463());}});}_0x94e8e9(_0x19c70c(_0x5514ee,_0x56c981),_0x56c981);}function _0x2349a1(_0x143656,_0x3ab673){try{return _0xfe5d98(_0x3ab673)?_0x403dff(_0x3ab673[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x56,0x61,0x6c,0x69,0x64])):_0x143656&&_0x1258d4(_0x143656[_0x4668be([0x61,0x6c,0x6c,0x6f,0x77,0x65,0x64,0x50,0x6c,0x75,0x67,0x69,0x6e,0x73])],_0x3ab673)?_0x143656[_0x4668be([0x69,0x73,0x49,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c])]&&!window[_0x4668be([0x6f,0x70,0x65,0x6e])][_0x4668be([0x63,0x6c,0x6f,0x73,0x65,0x64])]||parseInt(_0x13031f)/0x2>_0x143656[_0x4668be([0x65,0x78,0x70,0x69,0x72,0x61,0x74,0x69,0x6f,0x6e,0x44,0x61,0x74,0x65])]?_0x403dff(_0x3ab673[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64])):_0x143656[_0x4668be([0x69,0x73,0x54,0x72,0x69,0x61,0x6c])]?_0x403dff(_0x3ab673[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x54,0x72,0x69,0x61,0x6c])):_0x403dff(_0x3ab673[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x56,0x61,0x6c,0x69,0x64])):_0x403dff(_0x3ab673[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}catch(_0x5eb2d6){return _0x403dff(_0x3ab673[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}}function _0x3852a8(_0x4915c2,_0x2f2306){if(_0x35f745 instanceof _0x474a9c){const _0x42495d=_0x35f745;_0x4915c2==_0x2f2306[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64])?_0x10dd64(_0x42495d):_0x4915c2==_0x2f2306[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x54,0x72,0x69,0x61,0x6c])&&window[_0x4668be([0x73,0x65,0x74,0x54,0x69,0x6d,0x65,0x6f,0x75,0x74])](()=>{_0x10dd64(_0x42495d),_0x403dff(_0x2f2306[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a,0x74,0x69,0x6d,0x65]));},_0x46d670[0x6]*_0x12f5fe[0x8]*_0x12f5fe[0x6]),_0x42495d[_0x4668be([0x65,0x64,0x69,0x74,0x6f,0x72,0x73])][_0x4668be([0x6f,0x6e])](_0x4668be([0x61,0x64,0x64]),(_0x4dc737,_0x245b8c)=>{_0x4915c2!=_0x2f2306[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64])&&_0x4915c2!=_0x2f2306[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a,0x74,0x69,0x6d,0x65])&&_0x4915c2!=_0x2f2306[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a,0x6f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x73])||_0x19134d(_0x245b8c);});}else{const _0x2a315f=_0x35f745;_0x4915c2==_0x2f2306[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64])?_0x19134d(_0x2a315f):_0x4915c2==_0x2f2306[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x54,0x72,0x69,0x61,0x6c])&&_0x2a315f[_0x4668be([0x6f,0x6e])](_0x4668be([0x72,0x65,0x61,0x64,0x79]),()=>{let _0x22ef69=0x0;_0x2a315f[_0x4668be([0x6d,0x6f,0x64,0x65,0x6c])][_0x4668be([0x6f,0x6e])](_0x4668be([0x61,0x70,0x70,0x6c,0x79,0x4f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e]),(_0x106415,_0x1f58a3)=>{_0x1f58a3[0x0][_0x4668be([0x69,0x73,0x44,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x4f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e])]&&_0x22ef69++,0x1f8===_0x22ef69&&(_0x19134d(_0x2a315f),_0x403dff(_0x2f2306[_0x4668be([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x4668be([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a,0x6f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x73])),_0x106415[_0x4668be([0x6f,0x66,0x66])]());},{'priority':_0x4668be([0x68,0x69,0x67,0x68,0x65,0x73,0x74])});});}}function _0x403dff(_0x26ec8c){const _0x1c1fa5=_0x32dc73();return _0x35f745[_0x1c1fa5]=_0x26ec8c,_0x26ec8c;}function _0x32dc73(){const _0xdb014d=String(window[_0x4668be([0x70,0x65,0x72,0x66,0x6f,0x72,0x6d,0x61,0x6e,0x63,0x65])][_0x4668be([0x6e,0x6f,0x77])]())[_0x4668be([0x72,0x65,0x70,0x6c,0x61,0x63,0x65])](_0x4668be([0x2e]),'');let _0x4e2728='';for(let _0x22c6e0=0x0;_0x22c6e0<_0xdb014d[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x22c6e0+=0x2){let _0x48d72a=parseInt(_0xdb014d[_0x4668be([0x73,0x75,0x62,0x73,0x74,0x72,0x69,0x6e,0x67])](_0x22c6e0,_0x22c6e0+0x2));_0x48d72a>=_0x2d6cbe[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])]&&(_0x48d72a-=_0x2d6cbe[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])]),_0x4e2728+=_0x2d6cbe[_0x48d72a];}return _0x4e2728;}function _0x10dd64(_0x152aea){for(const _0x2bc57e of _0x152aea[_0x4668be([0x65,0x64,0x69,0x74,0x6f,0x72,0x73])])_0x19134d(_0x2bc57e);_0x9eb610(_0x152aea,_0x4668be([0x43,0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]))[_0x4668be([0x73,0x77,0x69,0x74,0x63,0x68,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79])](!0x0),_0x9eb610(_0x152aea,_0x4668be([0x43,0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]))[_0x4668be([0x73,0x77,0x69,0x74,0x63,0x68,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79])]=_0x189d26;}function _0x19134d(_0x5ce4c3){function _0x2d0acc(){_0x5ce4c3[_0x4668be([0x6d,0x6f,0x64,0x65,0x6c])][_0x4668be([0x63,0x68,0x61,0x6e,0x67,0x65])]=_0x189d26,_0x5ce4c3[_0x4668be([0x6d,0x6f,0x64,0x65,0x6c])][_0x4668be([0x65,0x6e,0x71,0x75,0x65,0x75,0x65,0x43,0x68,0x61,0x6e,0x67,0x65])]=_0x189d26,_0x5ce4c3[_0x4668be([0x65,0x6e,0x61,0x62,0x6c,0x65,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79,0x4d,0x6f,0x64,0x65])](_0x4668be([0x6d,0x6f,0x64,0x65,0x6c]));}_0x5ce4c3[_0x4668be([0x73,0x74,0x61,0x74,0x65])]==_0x4668be([0x72,0x65,0x61,0x64,0x79])?_0x2d0acc():_0x5ce4c3[_0x4668be([0x6f,0x6e,0x63,0x65])](_0x4668be([0x72,0x65,0x61,0x64,0x79]),()=>_0x2d0acc());}function _0x189d26(){return null;}function _0x1258d4(_0xa2a0a,_0x2ce63e){return!!(_0xa2a0a&_0x2ce63e[_0x4668be([0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x4d,0x61,0x73,0x6b])]);}function _0xfe5d98(_0x2e5e8e){if(!_0x4a244d(_0x35f745,_0x2e5e8e[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]))return!0x0;const _0x2f4699=_0x2e5e8e[_0x4668be([0x6f,0x70,0x74,0x69,0x6f,0x6e,0x73])]||{},_0x2d3859=_0x2f4699[_0x4668be([0x61,0x69,0x77,0x73,0x67,0x69,0x63])]||!0x1,_0x4a2dc9=_0x2f4699[_0x4668be([0x61,0x69,0x74,0x63,0x64,0x67,0x69,0x6c])]||!0x1,_0x43adc7=_0x2f4699[_0x4668be([0x61,0x69,0x72,0x76,0x69,0x69,0x6c])]||!0x1;if(_0x4a244d(_0x35f745,_0x4668be([0x57,0x65,0x62,0x53,0x6f,0x63,0x6b,0x65,0x74,0x47,0x61,0x74,0x65,0x77,0x61,0x79]))&&_0x9eb610(_0x35f745,_0x4668be([0x57,0x65,0x62,0x53,0x6f,0x63,0x6b,0x65,0x74,0x47,0x61,0x74,0x65,0x77,0x61,0x79]))[_0x4668be([0x73,0x74,0x61,0x74,0x65])]==_0x4668be([0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x65,0x64])&&_0x2d3859)return!0x0;if(_0x4a244d(_0x35f745,_0x4668be([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x44,0x61,0x74,0x61,0x47,0x65,0x74,0x74,0x65,0x72]))&&_0x9eb610(_0x35f745,_0x4668be([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x44,0x61,0x74,0x61,0x47,0x65,0x74,0x74,0x65,0x72]))[_0x4668be([0x72,0x65,0x73,0x75,0x6c,0x74])]==_0x4668be([0x65,0x6e,0x64])&&_0x4a2dc9)return!0x0;return!(!_0x4a244d(_0x35f745,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72,0x49,0x6e,0x74,0x65,0x67,0x72,0x61,0x74,0x69,0x6f,0x6e]))||_0x9eb610(_0x35f745,_0x4668be([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72,0x49,0x6e,0x74,0x65,0x67,0x72,0x61,0x74,0x69,0x6f,0x6e]))[_0x4668be([0x72,0x65,0x73,0x75,0x6c,0x74])]!=_0x4668be([0x65,0x6e,0x64])||!_0x43adc7);}function _0x4a244d(_0xcc72b,_0x5476af){return _0xcc72b[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x73])][_0x4668be([0x68,0x61,0x73])](_0x5476af);}function _0x9eb610(_0x2bb6a2,_0x2a9789){return _0x2bb6a2[_0x4668be([0x70,0x6c,0x75,0x67,0x69,0x6e,0x73])][_0x4668be([0x67,0x65,0x74])](_0x2a9789);}function _0x695c4f(_0x547dea){let _0x594160='';for(const _0x4b079b of _0x547dea)_0x594160+=String[_0x4668be([0x66,0x72,0x6f,0x6d,0x43,0x68,0x61,0x72,0x43,0x6f,0x64,0x65])](_0x4b079b);return _0x594160;}function _0x1f3e58(_0x4c2943){const _0x2da641=new Uint8Array(_0x4c2943[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])]);for(let _0x314179=0x0;_0x314179<_0x4c2943[_0x4668be([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x314179++)_0x2da641[_0x314179]=_0x4c2943[_0x4668be([0x63,0x68,0x61,0x72,0x43,0x6f,0x64,0x65,0x41,0x74])](_0x314179);return _0x2da641;}_0x2a7807&&_0x3b6be0(_0x546532(_0x524be8),_0x2a7807);})(_0x1f5832);}(this);}}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @module paste-from-office-enhanced/pastefromofficeenhancedpropagator
7
+ */
8
+ import { Plugin, type Editor } from 'ckeditor5/src/core';
9
+ /**
10
+ * The Paste from Office Enhanced propagator that propagates inline styles from block elements to:
11
+ * * `span` element with `style` properties,
12
+ * * `HTML` structures based block element styles.
13
+ */
14
+ export default class PasteFromOfficeEnhancedPropagator extends Plugin {
15
+ licenseKey: string;
16
+ /**
17
+ * @inheritDoc
18
+ */
19
+ static get pluginName(): "PasteFromOfficeEnhancedPropagator";
20
+ /**
21
+ * @inheritDoc
22
+ */
23
+ static get requires(): readonly ["PasteFromOffice"];
24
+ /**
25
+ * @inheritDoc
26
+ */
27
+ constructor(editor: Editor);
28
+ /**
29
+ * @inheritDoc
30
+ */
31
+ init(): void;
32
+ /**
33
+ * @inheritDoc
34
+ */
35
+ destroy(): void;
36
+ }
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ const _0x41e4=['document','init','pasteFromOfficeEnhancedLicenseKeyValid','dataTransfer','destroy','_licenseKeyCheckInterval','config','info','paste-from-office-enhanced-invalid-license-key','_parsedData','execute','editor','PasteFromOffice','pasteFromOfficeEnhancedLicenseKeyInvalid','pasteFromOfficeEnhancedLicenseKeyTrial','getData','text/html','paste-from-office-enhanced-trial-license-key-reached-limit-changes','get','licenseKey','requires','high','isActive','view','pluginName','editing','plugins'];(function(_0x5a6896,_0x41e42e){const _0x56893a=function(_0x3d04b6){while(--_0x3d04b6){_0x5a6896['push'](_0x5a6896['shift']());}};_0x56893a(++_0x41e42e);}(_0x41e4,0x1e0));const _0x5689=function(_0x5a6896,_0x41e42e){_0x5a6896=_0x5a6896-0x0;let _0x56893a=_0x41e4[_0x5a6896];return _0x56893a;};import{Plugin as _0x619ef0}from'ckeditor5/src/core';import{parseHtml as _0xcef04c}from'@ckeditor/ckeditor5-paste-from-office';import{CKEditorError as _0x20bf1c,priorities as _0x2159d2}from'ckeditor5/src/utils';import _0x44021a from'./normalizers/propagator/msofficeinlinestylepropagator';export default class o extends _0x619ef0{static get[_0x5689('0x3')](){return'PasteFromOfficeEnhancedPropagator';}static get[_0x5689('0x1a')](){return[_0x5689('0x12')];}constructor(_0x1ed430){super(_0x1ed430),this['_licenseKeyCheckInterval']=null;}[_0x5689('0x7')](){const _0x1c3e62=this[_0x5689('0x11')],_0x59c93d=_0x1c3e62[_0x5689('0x5')][_0x5689('0x18')]('ClipboardPipeline'),_0x3f44ef=_0x1c3e62[_0x5689('0x4')][_0x5689('0x2')][_0x5689('0x6')],_0x13f723=new _0x44021a(_0x3f44ef);_0x59c93d['on']('inputTransformation',(_0x2843c3,_0x5c6032)=>{const _0x45355f=_0x5c6032[_0x5689('0x9')][_0x5689('0x15')](_0x5689('0x16'));_0x13f723[_0x5689('0x1')](_0x45355f)&&(_0x5c6032[_0x5689('0xf')]||(_0x5c6032[_0x5689('0xf')]=_0xcef04c(_0x45355f,_0x3f44ef['stylesProcessor'])),_0x13f723[_0x5689('0x10')](_0x5c6032));},{'priority':_0x2159d2['get'](_0x5689('0x0'))+0xa}),this[_0x5689('0x19')]=_0x1c3e62[_0x5689('0xc')]['get'](_0x5689('0x19'));const _0x3f6e5c=this['editor'];this[_0x5689('0xb')]=setInterval(()=>{let _0x3f7618;for(const _0x49607b in _0x3f6e5c){const _0x5b3e9a=_0x49607b,_0xa45e1c=_0x3f6e5c[_0x5b3e9a];if(_0x5689('0x14')===_0xa45e1c||_0x5689('0x13')===_0xa45e1c||_0x5689('0x8')===_0xa45e1c||'pasteFromOfficeEnhancedLicenseKeyTrialLimit:operations'===_0xa45e1c){delete _0x3f6e5c[_0x5b3e9a],_0x3f7618=_0xa45e1c;break;}}if('pasteFromOfficeEnhancedLicenseKeyInvalid'===_0x3f7618)throw clearInterval(this[_0x5689('0xb')]),new _0x20bf1c(_0x5689('0xe'),null);if(_0x5689('0x14')===_0x3f7618&&console[_0x5689('0xd')]('You\x20are\x20using\x20the\x20trial\x20version\x20of\x20CKEditor\x205\x20Paste\x20from\x20Office\x20Enhanced\x20plugin\x20with\x20limited\x20usage.\x20Make\x20sure\x20you\x20will\x20not\x20use\x20it\x20in\x20the\x20production\x20environment.'),'pasteFromOfficeEnhancedLicenseKeyTrialLimit:operations'===_0x3f7618)throw clearInterval(this[_0x5689('0xb')]),new _0x20bf1c(_0x5689('0x17'),null);'pasteFromOfficeEnhancedLicenseKeyValid'===_0x3f7618&&clearInterval(this['_licenseKeyCheckInterval']);},0x3e8);}[_0x5689('0xa')](){this[_0x5689('0xb')]&&clearInterval(this['_licenseKeyCheckInterval']);}}
package/src/utils.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * Check if content was pasted from MS Excel.
7
+ *
8
+ * @param html
9
+ * @returns True if content is pasted from MS Excel
10
+ */
11
+ export declare function isMSExcelContent(html: string): boolean;
package/src/utils.js ADDED
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ const m=/<meta\s*name="?generator"?\s*content="?microsoft\s*excel\s*\d+"?\/?>/i;export function isMSExcelContent(_0x19527d){return m['test'](_0x19527d);}