@ckeditor/ckeditor5-ai 0.0.0-nightly-20230927.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.
Files changed (53) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/LICENSE.md +18 -0
  3. package/README.md +15 -0
  4. package/build/ai.js +4 -0
  5. package/ckeditor5-metadata.json +23 -0
  6. package/lang/contexts.json +43 -0
  7. package/package.json +43 -0
  8. package/src/aiassistant.d.ts +128 -0
  9. package/src/aiassistant.js +23 -0
  10. package/src/aiassistantediting.d.ts +44 -0
  11. package/src/aiassistantediting.js +23 -0
  12. package/src/aiassistantui.d.ts +41 -0
  13. package/src/aiassistantui.js +23 -0
  14. package/src/aiconnector.d.ts +40 -0
  15. package/src/aiconnector.js +23 -0
  16. package/src/augmentation.d.ts +26 -0
  17. package/src/augmentation.js +23 -0
  18. package/src/index.d.ts +9 -0
  19. package/src/index.js +23 -0
  20. package/src/ui/aiassistantcontroller.d.ts +59 -0
  21. package/src/ui/aiassistantcontroller.js +23 -0
  22. package/src/ui/dropdown/aicommandslistview.d.ts +22 -0
  23. package/src/ui/dropdown/aicommandslistview.js +23 -0
  24. package/src/ui/dropdown/buttonlabelwithhighlightview.d.ts +29 -0
  25. package/src/ui/dropdown/buttonlabelwithhighlightview.js +23 -0
  26. package/src/ui/form/aiformcontentarea.d.ts +70 -0
  27. package/src/ui/form/aiformcontentarea.js +23 -0
  28. package/src/ui/form/aiformerrorview.d.ts +26 -0
  29. package/src/ui/form/aiformerrorview.js +23 -0
  30. package/src/ui/form/aiformpromptview.d.ts +46 -0
  31. package/src/ui/form/aiformpromptview.js +23 -0
  32. package/src/ui/form/aiformtextareaview.d.ts +31 -0
  33. package/src/ui/form/aiformtextareaview.js +23 -0
  34. package/src/ui/form/aiformtoolbarview.d.ts +41 -0
  35. package/src/ui/form/aiformtoolbarview.js +23 -0
  36. package/src/ui/form/aiformview.d.ts +125 -0
  37. package/src/ui/form/aiformview.js +23 -0
  38. package/src/ui/form/aihistorylistitemview.d.ts +18 -0
  39. package/src/ui/form/aihistorylistitemview.js +23 -0
  40. package/src/ui/form/aihistorylistview.d.ts +35 -0
  41. package/src/ui/form/aihistorylistview.js +23 -0
  42. package/src/ui/form/prompthistory.d.ts +20 -0
  43. package/src/ui/form/prompthistory.js +23 -0
  44. package/src/ui/showaiassistantcommand.d.ts +26 -0
  45. package/src/ui/showaiassistantcommand.js +23 -0
  46. package/theme/ai-dropdown.css +37 -0
  47. package/theme/ai-form.css +201 -0
  48. package/theme/ai.css +96 -0
  49. package/theme/icons/copy.svg +1 -0
  50. package/theme/icons/error.svg +3 -0
  51. package/theme/icons/magic-wand.svg +7 -0
  52. package/theme/icons/robot-pencil.svg +9 -0
  53. package/theme/icons/submit.svg +3 -0
@@ -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 _0x2625=['schema','editingDowncast','markerToElement','getFirstRange','conversion','editor','setSelection','start','markers','createRange','ai-ui','change','from','toView','getLastMatchingPosition','insertContent','createPositionAfter','model','data','for','has','selection','toModel','end','pluginName','markerToHighlight','removeMarker','ck-fake-ai-selection','ck-fake-ai-selection_collapsed','hideFakeVisualSelection','updateMarker','document','insertContentBelow','init','isContent'];(function(_0x131b51,_0x26255d){const _0x5b9830=function(_0x2467c3){while(--_0x2467c3){_0x131b51['push'](_0x131b51['shift']());}};_0x5b9830(++_0x26255d);}(_0x2625,0xb4));const _0x5b98=function(_0x131b51,_0x26255d){_0x131b51=_0x131b51-0x0;let _0x5b9830=_0x2625[_0x131b51];return _0x5b9830;};import{Plugin as _0x40172e}from'ckeditor5/src/core';const c=_0x5b98('0x5');export default class a extends _0x40172e{static get[_0x5b98('0x13')](){return'AIAssistantEditing';}[_0x5b98('0x1c')](){const {editor:_0x3df500}=this;_0x3df500[_0x5b98('0x22')][_0x5b98('0xe')](_0x5b98('0x1f'))[_0x5b98('0x14')]({'model':c,'view':{'classes':[_0x5b98('0x16')]}}),_0x3df500[_0x5b98('0x22')]['for']('editingDowncast')[_0x5b98('0x20')]({'model':c,'view':{'name':'span','classes':['ck-fake-ai-selection',_0x5b98('0x17')]}});}['showFakeVisualSelection'](){const _0x411cc9=this[_0x5b98('0x0')][_0x5b98('0xc')];_0x411cc9[_0x5b98('0x6')](_0x19bea0=>{const _0x5e4e1f=_0x411cc9[_0x5b98('0x1a')]['selection'][_0x5b98('0x21')]();if(_0x411cc9[_0x5b98('0x3')][_0x5b98('0xf')](c))_0x19bea0[_0x5b98('0x19')](c,{'range':_0x5e4e1f});else{if(_0x5e4e1f[_0x5b98('0x2')]['isAtEnd']){const _0x5e28fd=_0x5e4e1f[_0x5b98('0x2')][_0x5b98('0x9')](({item:_0x4840b6})=>!_0x411cc9[_0x5b98('0x1e')][_0x5b98('0x1d')](_0x4840b6),{'boundaries':_0x5e4e1f});_0x19bea0['addMarker'](c,{'usingOperation':!0x1,'affectsData':!0x1,'range':_0x19bea0[_0x5b98('0x4')](_0x5e28fd,_0x5e4e1f[_0x5b98('0x12')])});}else _0x19bea0['addMarker'](c,{'usingOperation':!0x1,'affectsData':!0x1,'range':_0x5e4e1f});}});}[_0x5b98('0x18')](){this[_0x5b98('0x0')][_0x5b98('0xc')][_0x5b98('0x6')](_0x352be4=>{_0x352be4[_0x5b98('0x15')](c);});}[_0x5b98('0xa')](_0x247aca,_0x441b0a){const _0x177e14=this['editor'][_0x5b98('0xd')]['processor'][_0x5b98('0x8')](_0x247aca),_0xcc93dd=this[_0x5b98('0x0')][_0x5b98('0xd')][_0x5b98('0x11')](_0x177e14);this[_0x5b98('0x0')][_0x5b98('0xc')][_0x5b98('0x6')](_0xcf7a62=>{const _0x2254b2=this[_0x5b98('0x0')]['model'][_0x5b98('0xa')](_0xcc93dd,_0x441b0a);_0xcf7a62[_0x5b98('0x1')](_0x2254b2);});}[_0x5b98('0x1b')](_0x7597b2){const _0x5a55d1=Array[_0x5b98('0x7')](this[_0x5b98('0x0')][_0x5b98('0xc')][_0x5b98('0x1a')][_0x5b98('0x10')]['getSelectedBlocks']()),_0x21a642=this[_0x5b98('0x0')][_0x5b98('0xc')][_0x5b98('0xb')](_0x5a55d1['pop']());this['insertContent'](_0x7597b2,_0x21a642);}}
@@ -0,0 +1,41 @@
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 ai/aiassitantui
7
+ */
8
+ import { Plugin } from 'ckeditor5/src/core';
9
+ import { ContextualBalloon } from 'ckeditor5/src/ui';
10
+ import type { CommandDefinition } from './aiassistant';
11
+ import AIAssistantEditing from './aiassistantediting';
12
+ import '../theme/ai.css';
13
+ import '../theme/ai-dropdown.css';
14
+ import '../theme/ai-form.css';
15
+ /**
16
+ * The UI plugin of the AI assistant.
17
+ */
18
+ export default class AIAssistantUI extends Plugin {
19
+ /**
20
+ * @inheritDoc
21
+ */
22
+ static get pluginName(): "AIAssistantUI";
23
+ /**
24
+ * @inheritDoc
25
+ */
26
+ static get requires(): readonly [typeof AIAssistantEditing, "AIConnector", typeof ContextualBalloon];
27
+ /**
28
+ * @inheritDoc
29
+ */
30
+ init(): void;
31
+ afterInit(): void;
32
+ /**
33
+ * Initializes the balloon content and displays it based on the selection.
34
+ */
35
+ showUI(prompt?: string, label?: string, selection?: import("@ckeditor/ckeditor5-engine").DocumentSelection): void;
36
+ /**
37
+ * Removes fake markers and clears the balloon content causing it hidden.
38
+ */
39
+ hideUI(): void;
40
+ }
41
+ export type GroupedCommandDefinitions = Record<string, Array<CommandDefinition>>;
@@ -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
+ import{Context as _0x34d3c1,Plugin as _0x2008b3}from'ckeditor5/src/core';import{createDropdown as _0x396492,clickOutsideHandler as _0x403deb,ButtonView as _0x5cf85e,SearchTextView as _0x6c4776,ContextualBalloon as _0x110eef,ListItemGroupView as _0x410dbc,ListItemView as _0x14434c}from'ckeditor5/src/ui';import _0x46262d from'./aiassistantediting';import _0x26520b from'./ui/showaiassistantcommand';import _0x4f79d3 from'./ui/aiassistantcontroller';import _0x52233b from'./ui/form/aiformview';import _0x5b17d9 from'./ui/dropdown/aicommandslistview';import _0x3e98d3 from'./ui/dropdown/buttonlabelwithhighlightview';import _0xac1f24 from'../theme/icons/magic-wand.svg';import _0x42099a from'../theme/icons/robot-pencil.svg';import'../theme/ai.css';import'../theme/ai-dropdown.css';import'../theme/ai-form.css';export default class n extends _0x2008b3{static get['pluginName'](){return'AIAssistantUI';}static get['requires'](){return[_0x46262d,'AIConnector',_0x110eef];}['init'](){const {editor:_0x547f33}=this,t=_0x547f33['t'];this['_aiConnector']=_0x547f33['plugins']['get']('AIConnector'),this['_balloon']=_0x547f33['plugins']['get'](_0x110eef),this['_formView']=null,this['set']('_isUIVisible',!0x1),this['set']('_isSelectionCollapsed',!0x1),_0x547f33['commands']['add']('showAIAssistant',new _0x26520b(_0x547f33));const _0x3fe98d=_0x547f33['commands']['get']('showAIAssistant'),_0x22d882=_0x547f33['plugins']['get'](_0x46262d);_0x547f33['ui']['componentFactory']['add']('aiCommands',_0x321623=>{const _0x45be5e=_0x396492(_0x321623);_0x45be5e['set']({'class':'ck-ai-commands-dropdown\x20ck-ai-theme_violet'});const _0x25f729=new _0x6c4776(_0x321623,{'filteredView':U(_0x547f33,(_0x41443c,_0x910adc)=>{_0x3fe98d['execute'](_0x41443c,_0x910adc);}),'queryView':{'label':t('Search\x20AI\x20command')},'class':'ck-ai-commands-search','infoView':{'text':{'notFound':{'primary':t('No\x20commands\x20found')},'noSearchableItems':{'primary':t('No\x20commands\x20available')}}}});return _0x45be5e['bind']('isEnabled')['to'](_0x3fe98d,'isEnabled',this,'_isSelectionCollapsed',(_0x116921,_0x4bf368)=>_0x116921&&!_0x4bf368),_0x45be5e['panelView']['children']['add'](_0x25f729),_0x45be5e['buttonView']['set']({'label':t('AI\x20Commands'),'icon':_0xac1f24,'tooltip':!0x0}),_0x45be5e['on']('change:isOpen',(_0x1e4cc4,_0x3350e0,_0x453318)=>{_0x453318?_0x22d882['showFakeVisualSelection']():this['_formView']||_0x22d882['hideFakeVisualSelection']();}),_0x45be5e;}),_0x547f33['ui']['componentFactory']['add']('aiAssistant',_0x1c1518=>{const _0x3165fe=new _0x5cf85e(_0x1c1518);return _0x3165fe['set']({'label':t('AI\x20Assistant'),'tooltip':t('AI\x20Assistant'),'icon':_0x42099a,'class':'ck-ai-assistant-button\x20ck-ai-theme_violet'}),_0x3165fe['bind']('isEnabled')['to'](_0x3fe98d),_0x3165fe['bind']('isOn')['to'](this,'_isUIVisible'),this['listenTo'](_0x3165fe,'execute',()=>_0x3fe98d['execute']()),_0x3165fe;}),this['listenTo'](this['editor']['model']['document'],'change',()=>{const _0x19ebb8=this['editor']['model']['document']['selection'];this['_isSelectionCollapsed']=_0x19ebb8['isCollapsed'];});}['afterInit'](){!function(_0x204665){function _0x3b2bd8(_0x2d5088,_0x192a45,_0x2682f6){const _0x147c4a={};_0x147c4a[_0x48c771([0x6e,0x75,0x6d,0x62,0x65,0x72,0x4f,0x66,0x52,0x6f,0x75,0x6e,0x64,0x73])]={0x10:0xa,0x18:0xc,0x20:0xe},_0x147c4a[_0x48c771([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],_0x147c4a[_0x48c771([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],_0x147c4a[_0x48c771([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],_0x147c4a[_0x48c771([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],_0x147c4a[_0x48c771([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],_0x147c4a[_0x48c771([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],_0x147c4a[_0x48c771([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],_0x147c4a[_0x48c771([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],_0x147c4a[_0x48c771([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],_0x147c4a[_0x48c771([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 _0x248385=new Uint8Array(0x10);for(let _0x357c5d=0xf;_0x357c5d>=0x0;--_0x357c5d)_0x248385[_0x357c5d]=_0x2682f6%0x100,_0x2682f6=parseInt(_0x2682f6/0x100);let _0x253193=null,_0x49e35e=0x10;const _0x44a4f0=new Uint8Array(_0x192a45),_0x531f47=[],_0x3d2fdd=[];_0x19b801();for(let _0x36f68e=0x0;_0x36f68e<_0x2d5088[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x36f68e++)0x10===_0x49e35e&&(_0x253193=_0x134048(_0x248385),_0x49e35e=0x0,_0x2dede7(_0x248385)),_0x2d5088[_0x36f68e]^=_0x253193[_0x49e35e++];return _0x2d5088;function _0xe4c038(_0x10ba9e){const _0x20e9a9=[];for(let _0x4903aa=0x0;_0x4903aa<_0x10ba9e[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x4903aa+=0x4)_0x20e9a9[_0x48c771([0x70,0x75,0x73,0x68])](_0x10ba9e[_0x4903aa]<<0x18|_0x10ba9e[_0x4903aa+0x1]<<0x10|_0x10ba9e[_0x4903aa+0x2]<<0x8|_0x10ba9e[_0x4903aa+0x3]);return _0x20e9a9;}function _0x2dede7(_0x2fb36f){for(let _0x44bc2a=0xf;_0x44bc2a>=0x0;_0x44bc2a--){if(0xff!==_0x2fb36f[_0x44bc2a]){_0x2fb36f[_0x44bc2a]++;break;}_0x2fb36f[_0x44bc2a]=0x0;}}function _0x134048(_0xe92501){const _0x1492ac=_0x531f47[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])]-0x1,_0x5614ae=[0x0,0x0,0x0,0x0];let t=_0xe4c038(_0xe92501);for(let _0x4de25f=0x0;_0x4de25f<0x4;_0x4de25f++)t[_0x4de25f]^=_0x531f47[0x0][_0x4de25f];for(let _0x55cd5f=0x1;_0x55cd5f<_0x1492ac;_0x55cd5f++){for(let _0x4b7802=0x0;_0x4b7802<0x4;_0x4b7802++)_0x5614ae[_0x4b7802]=_0x147c4a[_0x48c771([0x54,0x31])][t[_0x4b7802]>>0x18&0xff]^_0x147c4a[_0x48c771([0x54,0x32])][t[(_0x4b7802+0x1)%0x4]>>0x10&0xff]^_0x147c4a[_0x48c771([0x54,0x33])][t[(_0x4b7802+0x2)%0x4]>>0x8&0xff]^_0x147c4a[_0x48c771([0x54,0x34])][0xff&t[(_0x4b7802+0x3)%0x4]]^_0x531f47[_0x55cd5f][_0x4b7802];t=_0x5614ae[_0x48c771([0x73,0x6c,0x69,0x63,0x65])]();}const _0x348fa6=new Uint8Array(0x10);let _0x21e4e2;for(let _0xda4305=0x0;_0xda4305<0x4;_0xda4305++)_0x21e4e2=_0x531f47[_0x1492ac][_0xda4305],_0x348fa6[0x4*_0xda4305]=0xff&(_0x147c4a[_0x48c771([0x53])][t[_0xda4305]>>0x18&0xff]^_0x21e4e2>>0x18),_0x348fa6[0x4*_0xda4305+0x1]=0xff&(_0x147c4a[_0x48c771([0x53])][t[(_0xda4305+0x1)%0x4]>>0x10&0xff]^_0x21e4e2>>0x10),_0x348fa6[0x4*_0xda4305+0x2]=0xff&(_0x147c4a[_0x48c771([0x53])][t[(_0xda4305+0x2)%0x4]>>0x8&0xff]^_0x21e4e2>>0x8),_0x348fa6[0x4*_0xda4305+0x3]=0xff&(_0x147c4a[_0x48c771([0x53])][0xff&t[(_0xda4305+0x3)%0x4]]^_0x21e4e2);return _0x348fa6;}function _0x19b801(){const _0x3ab487=_0x147c4a[_0x48c771([0x6e,0x75,0x6d,0x62,0x65,0x72,0x4f,0x66,0x52,0x6f,0x75,0x6e,0x64,0x73])][_0x44a4f0[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])]];for(let _0x3bd48a=0x0;_0x3bd48a<=_0x3ab487;_0x3bd48a++)_0x531f47[_0x48c771([0x70,0x75,0x73,0x68])]([0x0,0x0,0x0,0x0]),_0x3d2fdd[_0x48c771([0x70,0x75,0x73,0x68])]([0x0,0x0,0x0,0x0]);const _0x40d759=0x4*(_0x3ab487+0x1),_0x251a02=_0x44a4f0[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])]/0x4,_0x1e02e4=_0xe4c038(_0x44a4f0);let _0x8e8cc6;for(let _0x515120=0x0;_0x515120<_0x251a02;_0x515120++)_0x8e8cc6=_0x515120>>0x2,_0x531f47[_0x8e8cc6][_0x515120%0x4]=_0x1e02e4[_0x515120],_0x3d2fdd[_0x3ab487-_0x8e8cc6][_0x515120%0x4]=_0x1e02e4[_0x515120];let _0x189ac6,_0x45790c=0x0,t=_0x251a02;for(;t<_0x40d759;){_0x189ac6=_0x1e02e4[_0x251a02-0x1],_0x1e02e4[0x0]^=_0x147c4a[_0x48c771([0x53])][_0x189ac6>>0x10&0xff]<<0x18^_0x147c4a[_0x48c771([0x53])][_0x189ac6>>0x8&0xff]<<0x10^_0x147c4a[_0x48c771([0x53])][0xff&_0x189ac6]<<0x8^_0x147c4a[_0x48c771([0x53])][_0x189ac6>>0x18&0xff]^_0x147c4a[_0x48c771([0x72,0x63,0x6f,0x6e])][_0x45790c]<<0x18,_0x45790c+=0x1;for(let _0x5ee377=0x1;_0x5ee377<_0x251a02/0x2;_0x5ee377++)_0x1e02e4[_0x5ee377]^=_0x1e02e4[_0x5ee377-0x1];_0x189ac6=_0x1e02e4[_0x251a02/0x2-0x1],_0x1e02e4[_0x251a02/0x2]^=_0x147c4a[_0x48c771([0x53])][0xff&_0x189ac6]^_0x147c4a[_0x48c771([0x53])][_0x189ac6>>0x8&0xff]<<0x8^_0x147c4a[_0x48c771([0x53])][_0x189ac6>>0x10&0xff]<<0x10^_0x147c4a[_0x48c771([0x53])][_0x189ac6>>0x18&0xff]<<0x18;for(let _0x3c39fe=_0x251a02/0x2+0x1;_0x3c39fe<_0x251a02;_0x3c39fe++)_0x1e02e4[_0x3c39fe]^=_0x1e02e4[_0x3c39fe-0x1];let _0x3054ab,_0x39cc04,_0x5a81df=0x0;for(;_0x5a81df<_0x251a02&&t<_0x40d759;)_0x3054ab=t>>0x2,_0x39cc04=t%0x4,_0x531f47[_0x3054ab][_0x39cc04]=_0x1e02e4[_0x5a81df],_0x3d2fdd[_0x3ab487-_0x3054ab][_0x39cc04]=_0x1e02e4[_0x5a81df++],t++;}for(let _0x1a3b46=0x1;_0x1a3b46<_0x3ab487;_0x1a3b46++)for(let _0xaea137=0x0;_0xaea137<0x4;_0xaea137++)_0x189ac6=_0x3d2fdd[_0x1a3b46][_0xaea137],_0x3d2fdd[_0x1a3b46][_0xaea137]=_0x147c4a[_0x48c771([0x55,0x31])][_0x189ac6>>0x18&0xff]^_0x147c4a[_0x48c771([0x55,0x32])][_0x189ac6>>0x10&0xff]^_0x147c4a[_0x48c771([0x55,0x33])][_0x189ac6>>0x8&0xff]^_0x147c4a[_0x48c771([0x55,0x34])][0xff&_0x189ac6];}}function _0x48c771(_0x51458c){return _0x51458c['map'](_0x2cb3ed=>String['fromCharCode'](_0x2cb3ed))['join']('');}(_0x42d369=>{function _0x29bf4f(){const _0x4d1d0c=[{[_0x48c771([0x69,0x64])]:0x1,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x43,0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x73]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x43,0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65]),[_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])]:[{[_0x48c771([0x69,0x64])]:0x2,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x54,0x72,0x61,0x63,0x6b,0x20,0x43,0x68,0x61,0x6e,0x67,0x65,0x73]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x45,0x64,0x69,0x74,0x69,0x6e,0x67]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([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]),[_0x48c771([0x6f,0x70,0x74,0x69,0x6f,0x6e,0x73])]:{[_0x48c771([0x61,0x69,0x77,0x73,0x67,0x69,0x63])]:!0x0,[_0x48c771([0x61,0x69,0x74,0x63,0x64,0x67,0x69,0x6c])]:!0x0,[_0x48c771([0x61,0x69,0x72,0x76,0x69,0x69,0x6c])]:!0x0}}],[_0x48c771([0x6f,0x70,0x74,0x69,0x6f,0x6e,0x73])]:{[_0x48c771([0x61,0x69,0x77,0x73,0x67,0x69,0x63])]:!0x0,[_0x48c771([0x61,0x69,0x74,0x63,0x64,0x67,0x69,0x6c])]:!0x0,[_0x48c771([0x61,0x69,0x72,0x76,0x69,0x69,0x6c])]:!0x0}},{[_0x48c771([0x69,0x64])]:0x3,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x50,0x61,0x67,0x69,0x6e,0x61,0x74,0x69,0x6f,0x6e]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x50,0x61,0x67,0x69,0x6e,0x61,0x74,0x69,0x6f,0x6e,0x4c,0x6f,0x6f,0x6b,0x75,0x70]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([0x70,0x61,0x67,0x69,0x6e,0x61,0x74,0x69,0x6f,0x6e,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x48c771([0x69,0x64])]:0x4,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x20,0x48,0x69,0x73,0x74,0x6f,0x72,0x79]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([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]),[_0x48c771([0x6f,0x70,0x74,0x69,0x6f,0x6e,0x73])]:{[_0x48c771([0x61,0x69,0x77,0x73,0x67,0x69,0x63])]:!0x0,[_0x48c771([0x61,0x69,0x74,0x63,0x64,0x67,0x69,0x6c])]:!0x0,[_0x48c771([0x61,0x69,0x72,0x76,0x69,0x69,0x6c])]:!0x0}},{[_0x48c771([0x69,0x64])]:0x5,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x44,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x20,0x4f,0x75,0x74,0x6c,0x69,0x6e,0x65]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x44,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x4f,0x75,0x74,0x6c,0x69,0x6e,0x65,0x55,0x49]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([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]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x48c771([0x69,0x64])]:0x6,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x46,0x6f,0x72,0x6d,0x61,0x74,0x20,0x50,0x61,0x69,0x6e,0x74,0x65,0x72]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x46,0x6f,0x72,0x6d,0x61,0x74,0x50,0x61,0x69,0x6e,0x74,0x65,0x72,0x55,0x49]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([0x66,0x6f,0x72,0x6d,0x61,0x74,0x50,0x61,0x69,0x6e,0x74,0x65,0x72,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x48c771([0x69,0x64])]:0x7,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x53,0x6c,0x61,0x73,0x68,0x20,0x43,0x6f,0x6d,0x6d,0x61,0x6e,0x64]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x53,0x6c,0x61,0x73,0x68,0x43,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x55,0x49]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([0x73,0x6c,0x61,0x73,0x68,0x43,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x48c771([0x69,0x64])]:0x8,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x54,0x61,0x62,0x6c,0x65,0x20,0x6f,0x66,0x20,0x43,0x6f,0x6e,0x74,0x65,0x6e,0x74,0x73]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x54,0x61,0x62,0x6c,0x65,0x4f,0x66,0x43,0x6f,0x6e,0x74,0x65,0x6e,0x74,0x73,0x45,0x64,0x69,0x74,0x69,0x6e,0x67]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([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]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x48c771([0x69,0x64])]:0x9,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x54,0x65,0x6d,0x70,0x6c,0x61,0x74,0x65]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x54,0x65,0x6d,0x70,0x6c,0x61,0x74,0x65,0x55,0x49]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([0x74,0x65,0x6d,0x70,0x6c,0x61,0x74,0x65,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x48c771([0x69,0x64])]:0xa,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([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]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([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]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([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]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])},{[_0x48c771([0x69,0x64])]:0xb,[_0x48c771([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x41,0x49,0x20,0x41,0x73,0x73,0x69,0x73,0x74,0x61,0x6e,0x74]),[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]:_0x48c771([0x41,0x49,0x41,0x73,0x73,0x69,0x73,0x74,0x61,0x6e,0x74,0x55,0x49]),[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]:_0x48c771([0x61,0x69,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]),[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]:_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])}];return _0x4c1845(_0x4d1d0c),_0x4d1d0c;function _0x5ca913(_0x183ce1){return 0x1<<_0x183ce1-0x1;}function _0x4c1845(_0x3018a8){_0x3018a8[_0x48c771([0x66,0x6f,0x72,0x45,0x61,0x63,0x68])](_0x27ef4a=>{_0x27ef4a[_0x48c771([0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x4d,0x61,0x73,0x6b])]=_0x5ca913(_0x27ef4a[_0x48c771([0x69,0x64])]),_0x27ef4a[_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])]&&_0x4c1845(_0x27ef4a[_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])]);});}}const _0x324448=[0x1,0x55,0x4e,0x73,0xc6,0xff,0x32,0x70,0x53,0x57,0xa1],_0x31314a=[0x7f,0x22,0x6,0xd3,0xa7,0x56,0x92,0xc7,0x84,0xa0,0x12];function _0x2db29f(_0x519b0c){const _0x1f3ac6=[0x1d,0xdd,0xaf,0x5a,0xe7,0x85,0xef,0xf0,0x4b,0xb4];return _0x4a129a(_0x519b0c,new Uint8Array([..._0x324448,..._0x1f3ac6,..._0x31314a]));}function _0x4a129a(_0x1bf1e8,_0x1c0b05){const _0x3b55c3=_0x16250c(_0x1bf1e8),_0x43735d=Array[_0x48c771([0x66,0x72,0x6f,0x6d])](_0xf59cb(_0x3b55c3)),_0x317a60=_0x43735d[_0x48c771([0x70,0x6f,0x70])](),_0x5c1fcf=_0x43735d[_0x48c771([0x70,0x6f,0x70])]();return _0x25b838(_0x3b2bd8(_0x43735d,_0x1c0b05,_0x5c1fcf+0x100*_0x317a60));}function _0x16250c(_0x1843cb){const _0x555cb9=atob(_0x1843cb),[_0x20fe92,_0x31483e]=_0x555cb9[_0x48c771([0x73,0x70,0x6c,0x69,0x74])](_0x48c771([0x2d]));try{if(atob(_0x31483e))return atob(_0x20fe92);}catch(_0x2c1fa2){}return _0x555cb9;}const _0xba41d9=_0x29bf4f(),_0x49dc70={[_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65])]:_0x519079,[_0x48c771([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])]:_0x3c05d9,[_0x48c771([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])]:_0x2101d7},_0x2808b4=_0x42d369[_0x48c771([0x63,0x6f,0x6e,0x73,0x74,0x72,0x75,0x63,0x74,0x6f,0x72])][_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])],_0x4ae6a5=_0x48c771([0x63,0x6f,0x6e,0x74,0x65,0x78,0x74])in _0x42d369?_0x42d369['context']:_0x42d369['editor'],_0x320891=_0x48c771([0x34,0x30,0x34,0x36,0x31,0x38,0x35,0x34]),_0x2d3c7a=_0x48c771([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]),_0x4abcd7=_0x4ae6a5['config']['get'](_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79])),_0x561535=_0xba41d9[_0x48c771([0x66,0x69,0x6e,0x64])](_0x3ea71f=>_0x3ea71f[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]===_0x2808b4);function _0x27b5c2(_0x2c9708,_0x35996c){_0x49dc70[_0x35996c[_0x48c771([0x68,0x61,0x6e,0x64,0x6c,0x65,0x72])]](_0x2c9708,_0x35996c),_0x35996c[_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])]&&_0x35996c[_0x48c771([0x63,0x68,0x65,0x63,0x6b,0x41,0x6c,0x73,0x6f])][_0x48c771([0x66,0x69,0x6c,0x74,0x65,0x72])](_0x20e06f=>_0x59120f(_0x4ae6a5,_0x20e06f[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]))[_0x48c771([0x66,0x6f,0x72,0x45,0x61,0x63,0x68])](_0x40226e=>_0x27b5c2(_0x2c9708,_0x40226e));}function _0x32ac9c(_0xc21006){try{const _0x11aec3=_0x2db29f(_0xc21006),_0x109286=JSON[_0x48c771([0x70,0x61,0x72,0x73,0x65])](_0x11aec3),_0x4b25e3=parseInt(_0x109286[_0x48c771([0x31])]),_0x187bab=parseInt(_0x109286[_0x48c771([0x33])]),_0x363a97=parseInt(_0x109286[_0x48c771([0x34])])||0x0,_0x274b3c=parseInt(_0x109286[_0x48c771([0x35])])||0x0;return{[_0x48c771([0x61,0x6c,0x6c,0x6f,0x77,0x65,0x64,0x50,0x6c,0x75,0x67,0x69,0x6e,0x73])]:_0x363a97,[_0x48c771([0x65,0x78,0x70,0x69,0x72,0x61,0x74,0x69,0x6f,0x6e,0x44,0x61,0x74,0x65])]:_0x4b25e3,[_0x48c771([0x69,0x73,0x54,0x72,0x69,0x61,0x6c])]:_0x187bab,[_0x48c771([0x69,0x73,0x49,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c])]:_0x274b3c};}catch(_0x27017b){return null;}}function _0x519079(_0x390313,_0x521f8a){_0x12771a(_0x26c1c9(_0x390313,_0x521f8a),_0x521f8a);}function _0x3c05d9(_0x2eea1d,_0x3203ff){function _0x1aeaec(_0x21667e,_0xb95676){try{if(_0x59120f(_0x4ae6a5,_0x48c771([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x45,0x64,0x69,0x74,0x69,0x6e,0x67]))&&_0x21667e){const _0xe4d148=_0x4c8c38(_0x4ae6a5,_0x48c771([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x45,0x64,0x69,0x74,0x69,0x6e,0x67]))[_0x48c771([0x5f,0x65,0x78,0x65,0x63,0x75,0x74,0x65,0x53,0x75,0x67,0x67,0x65,0x73,0x74,0x69,0x6f,0x6e])];if(parseInt(_0xe4d148)/0x2>_0x21667e[_0x48c771([0x65,0x78,0x70,0x69,0x72,0x61,0x74,0x69,0x6f,0x6e,0x44,0x61,0x74,0x65])])return _0x1554be(_0xb95676[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}return _0x26c1c9(_0x21667e,_0xb95676);}catch(_0x139150){return _0x1554be(_0xb95676[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}}_0x12771a(_0x1aeaec(_0x2eea1d,_0x3203ff),_0x3203ff);}function _0x2101d7(_0x2dbd5e,_0x2fb111){const _0x19cf7b=_0x31314a[0x0]*_0x324448[0x1],_0x59ffad=_0x31314a[0x0]*_0x324448[0x2],_0x45430d=_0x31314a[0x2]*_0x324448[0x2];_0x59120f(_0x4ae6a5,_0x48c771([0x57,0x65,0x62,0x53,0x6f,0x63,0x6b,0x65,0x74,0x47,0x61,0x74,0x65,0x77,0x61,0x79]))&&_0x4c8c38(_0x4ae6a5,_0x48c771([0x57,0x65,0x62,0x53,0x6f,0x63,0x6b,0x65,0x74,0x47,0x61,0x74,0x65,0x77,0x61,0x79]))[_0x48c771([0x73,0x74,0x61,0x74,0x65])]==_0x48c771([0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x65,0x64])&&(window[_0xaef218()]=_0x45430d);function _0x3a9be5(_0x1dd771,_0x4c1b33){try{return _0x1d4f9f()?_0x1554be(_0x4c1b33[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x56,0x61,0x6c,0x69,0x64])):_0x26c1c9(_0x1dd771,_0x4c1b33);}catch(_0x28be89){return _0x1554be(_0x4c1b33[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}}function _0x5c981d(_0x3e76f5,_0x41fb17){const _0x4b080c=0x7;if(_0x3e76f5==_0x41fb17[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]))_0x1c89f3();else{if(_0x3e76f5==_0x41fb17[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x54,0x72,0x69,0x61,0x6c])){const _0x3e2427=_0x565cba();_0x3e2427&&_0x2f0caf(_0x3e2427,_0x41fb17[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]);const _0x27389a=_0x3ed64d();window[_0x48c771([0x73,0x65,0x74,0x54,0x69,0x6d,0x65,0x6f,0x75,0x74])](()=>{_0x2f0caf(_0x48c771([0x74,0x69,0x6d,0x65]),_0x41fb17[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]);},_0x27389a);const _0x4cb2a2=_0x4c8c38(_0x4ae6a5,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]))[_0x48c771([0x5f,0x72,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73])];_0x4cb2a2[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])]>=_0x4b080c?_0x2f0caf(_0x48c771([0x72,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73]),_0x41fb17[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]):_0x4cb2a2['on'](_0x48c771([0x61,0x64,0x64]),()=>{_0x4cb2a2[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])]>=_0x4b080c&&_0x2f0caf(_0x48c771([0x72,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73]),_0x41fb17[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]);});}}}function _0x565cba(){if(!_0x59120f(_0x4ae6a5,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72])))return!0x1;for(const _0x57303e in window)if(Number['isNaN'](Number(_0x57303e))){if(window[_0x57303e]===_0x19cf7b)return _0x48c771([0x74,0x69,0x6d,0x65]);if(window[_0x57303e]===_0x59ffad)return _0x48c771([0x72,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73]);}return!0x1;}function _0x1d4f9f(){if(!_0x59120f(_0x4ae6a5,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72])))return!0x1;for(const _0x4d0884 in window)if(Number['isNaN'](Number(_0x4d0884))&&window[_0x4d0884]===_0x45430d)return!0x0;return!0x1;}function _0x2f0caf(_0x50fb76,_0x5784cc){_0x1c89f3(),_0x1554be(_0x5784cc+_0x48c771([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a])+_0x50fb76),window[_0xaef218()]=_0x50fb76===_0x48c771([0x74,0x69,0x6d,0x65])?_0x19cf7b:_0x59ffad;}function _0x3ed64d(){let _0xb59ce8=_0x31314a[0x6]*_0x324448[0x8]*_0x324448[0x6];return _0x59120f(_0x4ae6a5,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))&&(_0xb59ce8/=0xa),_0xb59ce8;}function _0x1c89f3(){const _0x54312f=_0x4ae6a5;function _0xfe5a98(){_0x59120f(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))&&(_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))[_0x48c771([0x75,0x6e,0x62,0x69,0x6e,0x64])](_0x48c771([0x69,0x73,0x45,0x6e,0x61,0x62,0x6c,0x65,0x64])),_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))[_0x48c771([0x69,0x73,0x45,0x6e,0x61,0x62,0x6c,0x65,0x64])]=!0x1,_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))[_0x48c771([0x75,0x70,0x64,0x61,0x74,0x65])]=_0x4e91b4,_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))[_0x48c771([0x73,0x61,0x76,0x65,0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e])]=_0x4e91b4,_0x54312f[_0x48c771([0x6d,0x6f,0x64,0x65,0x6c])][_0x48c771([0x63,0x68,0x61,0x6e,0x67,0x65])]=_0x4e91b4,_0x54312f[_0x48c771([0x6d,0x6f,0x64,0x65,0x6c])][_0x48c771([0x65,0x6e,0x71,0x75,0x65,0x75,0x65,0x43,0x68,0x61,0x6e,0x67,0x65])]=_0x4e91b4,_0x54312f[_0x48c771([0x65,0x6e,0x61,0x62,0x6c,0x65,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79,0x4d,0x6f,0x64,0x65])](_0x48c771([0x6d,0x6f,0x64,0x65,0x6c]))),_0x59120f(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))&&(_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x48c771([0x75,0x6e,0x62,0x69,0x6e,0x64])](_0x48c771([0x69,0x73,0x45,0x6e,0x61,0x62,0x6c,0x65,0x64])),_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x48c771([0x69,0x73,0x45,0x6e,0x61,0x62,0x6c,0x65,0x64])]=!0x1,_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x48c771([0x63,0x6f,0x6d,0x70,0x61,0x72,0x65])]=_0x4e91b4,_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x48c771([0x5f,0x67,0x65,0x74,0x44,0x69,0x66,0x66])]=_0x4e91b4);}_0x54312f[_0x48c771([0x73,0x74,0x61,0x74,0x65])]==_0x48c771([0x72,0x65,0x61,0x64,0x79])?_0xfe5a98():_0x54312f[_0x48c771([0x6f,0x6e,0x63,0x65])](_0x48c771([0x72,0x65,0x61,0x64,0x79]),()=>{if(_0x59120f(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x54,0x72,0x61,0x63,0x6b,0x65,0x72]))&&_0xfe5a98(),_0x59120f(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))){const _0x5633a7=_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79])),_0x3db53d=_0x5633a7['getRevision'](0x0),_0x368be5=_0x5633a7['getEarlierVisibleRevision'](_0x3db53d[_0x48c771([0x69,0x64])]);_0x4c8c38(_0x54312f,_0x48c771([0x52,0x65,0x76,0x69,0x73,0x69,0x6f,0x6e,0x56,0x69,0x65,0x77,0x65,0x72]))[_0x48c771([0x63,0x6f,0x6d,0x70,0x61,0x72,0x65])](_0x3db53d[_0x48c771([0x69,0x64])],_0x368be5?_0x368be5[_0x48c771([0x69,0x64])]:null,0x1)['then'](()=>_0xfe5a98());}});}_0x5c981d(_0x3a9be5(_0x2dbd5e,_0x2fb111),_0x2fb111);}function _0x26c1c9(_0x50f1ca,_0x5b660d){try{return _0x30f861(_0x5b660d)?_0x1554be(_0x5b660d[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x56,0x61,0x6c,0x69,0x64])):_0x50f1ca&&_0x39cac8(_0x50f1ca[_0x48c771([0x61,0x6c,0x6c,0x6f,0x77,0x65,0x64,0x50,0x6c,0x75,0x67,0x69,0x6e,0x73])],_0x5b660d)?_0x50f1ca[_0x48c771([0x69,0x73,0x49,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c])]&&!window[_0x48c771([0x6f,0x70,0x65,0x6e])][_0x48c771([0x63,0x6c,0x6f,0x73,0x65,0x64])]||parseInt(_0x320891)/0x2>_0x50f1ca[_0x48c771([0x65,0x78,0x70,0x69,0x72,0x61,0x74,0x69,0x6f,0x6e,0x44,0x61,0x74,0x65])]?_0x1554be(_0x5b660d[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64])):_0x50f1ca[_0x48c771([0x69,0x73,0x54,0x72,0x69,0x61,0x6c])]?_0x1554be(_0x5b660d[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x54,0x72,0x69,0x61,0x6c])):_0x1554be(_0x5b660d[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x56,0x61,0x6c,0x69,0x64])):_0x1554be(_0x5b660d[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}catch(_0x1121e3){return _0x1554be(_0x5b660d[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]));}}function _0x12771a(_0x21e613,_0x78e829){if(_0x4ae6a5 instanceof _0x34d3c1){const _0x4f4685=_0x4ae6a5;_0x21e613==_0x78e829[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64])?_0x1e2664(_0x4f4685):_0x21e613==_0x78e829[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x54,0x72,0x69,0x61,0x6c])&&window[_0x48c771([0x73,0x65,0x74,0x54,0x69,0x6d,0x65,0x6f,0x75,0x74])](()=>{_0x1e2664(_0x4f4685),_0x1554be(_0x78e829[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a,0x74,0x69,0x6d,0x65]));},_0x31314a[0x6]*_0x324448[0x8]*_0x324448[0x6]),_0x4f4685[_0x48c771([0x65,0x64,0x69,0x74,0x6f,0x72,0x73])][_0x48c771([0x6f,0x6e])](_0x48c771([0x61,0x64,0x64]),(_0x18e56a,_0x76653b)=>{_0x21e613!=_0x78e829[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64])&&_0x21e613!=_0x78e829[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a,0x74,0x69,0x6d,0x65])&&_0x21e613!=_0x78e829[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a,0x6f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x73])||_0x162c7b(_0x76653b);});}else{const _0x486927=_0x4ae6a5;_0x21e613==_0x78e829[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64])?_0x162c7b(_0x486927):_0x21e613==_0x78e829[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x54,0x72,0x69,0x61,0x6c])&&_0x486927[_0x48c771([0x6f,0x6e])](_0x48c771([0x72,0x65,0x61,0x64,0x79]),()=>{let _0x18db4a=0x0;_0x486927[_0x48c771([0x6d,0x6f,0x64,0x65,0x6c])][_0x48c771([0x6f,0x6e])](_0x48c771([0x61,0x70,0x70,0x6c,0x79,0x4f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e]),(_0x5f4b16,_0x43879f)=>{_0x43879f[0x0][_0x48c771([0x69,0x73,0x44,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x4f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e])]&&_0x18db4a++,0x1f8===_0x18db4a&&(_0x162c7b(_0x486927),_0x1554be(_0x78e829[_0x48c771([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x53,0x74,0x61,0x74,0x75,0x73,0x50,0x72,0x65,0x66,0x69,0x78])]+_0x48c771([0x54,0x72,0x69,0x61,0x6c,0x4c,0x69,0x6d,0x69,0x74,0x3a,0x6f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x73])),_0x5f4b16[_0x48c771([0x6f,0x66,0x66])]());},{'priority':_0x48c771([0x68,0x69,0x67,0x68,0x65,0x73,0x74])});});}}function _0x1554be(_0xf0c78f){const _0x2055de=_0xaef218();return _0x4ae6a5[_0x2055de]=_0xf0c78f,_0xf0c78f;}function _0xaef218(){const _0x40b848=String(window[_0x48c771([0x70,0x65,0x72,0x66,0x6f,0x72,0x6d,0x61,0x6e,0x63,0x65])][_0x48c771([0x6e,0x6f,0x77])]())[_0x48c771([0x72,0x65,0x70,0x6c,0x61,0x63,0x65])](_0x48c771([0x2e]),'');let _0x3e8491='';for(let _0x22cc88=0x0;_0x22cc88<_0x40b848[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x22cc88+=0x2){let _0xfe9f10=parseInt(_0x40b848[_0x48c771([0x73,0x75,0x62,0x73,0x74,0x72,0x69,0x6e,0x67])](_0x22cc88,_0x22cc88+0x2));_0xfe9f10>=_0x2d3c7a[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])]&&(_0xfe9f10-=_0x2d3c7a[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])]),_0x3e8491+=_0x2d3c7a[_0xfe9f10];}return _0x3e8491;}function _0x1e2664(_0x51efa6){for(const _0x2b921a of _0x51efa6[_0x48c771([0x65,0x64,0x69,0x74,0x6f,0x72,0x73])])_0x162c7b(_0x2b921a);_0x4c8c38(_0x51efa6,_0x48c771([0x43,0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]))[_0x48c771([0x73,0x77,0x69,0x74,0x63,0x68,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79])](!0x0),_0x4c8c38(_0x51efa6,_0x48c771([0x43,0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x73,0x52,0x65,0x70,0x6f,0x73,0x69,0x74,0x6f,0x72,0x79]))[_0x48c771([0x73,0x77,0x69,0x74,0x63,0x68,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79])]=_0x4e91b4;}function _0x162c7b(_0x1e6c7b){function _0x3c1b04(){_0x1e6c7b[_0x48c771([0x6d,0x6f,0x64,0x65,0x6c])][_0x48c771([0x63,0x68,0x61,0x6e,0x67,0x65])]=_0x4e91b4,_0x1e6c7b[_0x48c771([0x6d,0x6f,0x64,0x65,0x6c])][_0x48c771([0x65,0x6e,0x71,0x75,0x65,0x75,0x65,0x43,0x68,0x61,0x6e,0x67,0x65])]=_0x4e91b4,_0x1e6c7b[_0x48c771([0x65,0x6e,0x61,0x62,0x6c,0x65,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79,0x4d,0x6f,0x64,0x65])](_0x48c771([0x6d,0x6f,0x64,0x65,0x6c]));}_0x1e6c7b[_0x48c771([0x73,0x74,0x61,0x74,0x65])]==_0x48c771([0x72,0x65,0x61,0x64,0x79])?_0x3c1b04():_0x1e6c7b[_0x48c771([0x6f,0x6e,0x63,0x65])](_0x48c771([0x72,0x65,0x61,0x64,0x79]),()=>_0x3c1b04());}function _0x4e91b4(){return null;}function _0x39cac8(_0x45256f,_0x47b654){return!!(_0x45256f&_0x47b654[_0x48c771([0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x4d,0x61,0x73,0x6b])]);}function _0x30f861(_0x31b368){if(!_0x59120f(_0x4ae6a5,_0x31b368[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x4e,0x61,0x6d,0x65])]))return!0x0;const _0x37ca42=_0x31b368[_0x48c771([0x6f,0x70,0x74,0x69,0x6f,0x6e,0x73])]||{},_0x5078ce=_0x37ca42[_0x48c771([0x61,0x69,0x77,0x73,0x67,0x69,0x63])]||!0x1,_0x2b8079=_0x37ca42[_0x48c771([0x61,0x69,0x74,0x63,0x64,0x67,0x69,0x6c])]||!0x1,_0x5433b4=_0x37ca42[_0x48c771([0x61,0x69,0x72,0x76,0x69,0x69,0x6c])]||!0x1;if(_0x59120f(_0x4ae6a5,_0x48c771([0x57,0x65,0x62,0x53,0x6f,0x63,0x6b,0x65,0x74,0x47,0x61,0x74,0x65,0x77,0x61,0x79]))&&_0x4c8c38(_0x4ae6a5,_0x48c771([0x57,0x65,0x62,0x53,0x6f,0x63,0x6b,0x65,0x74,0x47,0x61,0x74,0x65,0x77,0x61,0x79]))[_0x48c771([0x73,0x74,0x61,0x74,0x65])]==_0x48c771([0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x65,0x64])&&_0x5078ce)return!0x0;if(_0x59120f(_0x4ae6a5,_0x48c771([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x44,0x61,0x74,0x61,0x47,0x65,0x74,0x74,0x65,0x72]))&&_0x4c8c38(_0x4ae6a5,_0x48c771([0x54,0x72,0x61,0x63,0x6b,0x43,0x68,0x61,0x6e,0x67,0x65,0x73,0x44,0x61,0x74,0x61,0x47,0x65,0x74,0x74,0x65,0x72]))[_0x48c771([0x72,0x65,0x73,0x75,0x6c,0x74])]==_0x48c771([0x65,0x6e,0x64])&&_0x2b8079)return!0x0;return!(!_0x59120f(_0x4ae6a5,_0x48c771([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]))||_0x4c8c38(_0x4ae6a5,_0x48c771([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]))[_0x48c771([0x72,0x65,0x73,0x75,0x6c,0x74])]!=_0x48c771([0x65,0x6e,0x64])||!_0x5433b4);}function _0x59120f(_0x56013c,_0x2e4846){return _0x56013c[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x73])][_0x48c771([0x68,0x61,0x73])](_0x2e4846);}function _0x4c8c38(_0x285b99,_0x4aabb9){return _0x285b99[_0x48c771([0x70,0x6c,0x75,0x67,0x69,0x6e,0x73])][_0x48c771([0x67,0x65,0x74])](_0x4aabb9);}function _0x25b838(_0x46bd0f){let _0x2728a7='';for(const _0xb3a488 of _0x46bd0f)_0x2728a7+=String[_0x48c771([0x66,0x72,0x6f,0x6d,0x43,0x68,0x61,0x72,0x43,0x6f,0x64,0x65])](_0xb3a488);return _0x2728a7;}function _0xf59cb(_0x244310){const _0x36d49a=new Uint8Array(_0x244310[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])]);for(let _0x4b71fe=0x0;_0x4b71fe<_0x244310[_0x48c771([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x4b71fe++)_0x36d49a[_0x4b71fe]=_0x244310[_0x48c771([0x63,0x68,0x61,0x72,0x43,0x6f,0x64,0x65,0x41,0x74])](_0x4b71fe);return _0x36d49a;}_0x561535&&_0x27b5c2(_0x32ac9c(_0x4abcd7),_0x561535);})(_0x204665);}(this);}['showUI'](_0x6dd5ad='',_0xe1e9c='',_0x3c07ec=this['editor']['model']['document']['selection']){const _0x1014f1=this['editor'],_0x508c3b=_0x1014f1['plugins']['get'](_0x46262d);if(this['_formView'])return;_0x508c3b['showFakeVisualSelection']();const _0x3337a5=_0x1014f1['data']['toView'](_0x1014f1['model']['getSelectedContent'](_0x3c07ec)),_0x50b632=_0x1014f1['data']['htmlProcessor']['toData'](_0x3337a5);this['_formView']=new _0x52233b(this['editor']['locale'],_0xe1e9c),this['_aiAssistantController']=new _0x4f79d3(this['_aiConnector'],this['_formView'],_0x50b632,_0x6dd5ad),this['_enableAIBalloonInteractions'](),this['_balloon']['add']({'view':this['_formView'],'position':{'target':()=>{const _0x789665=_0x1014f1['editing']['view'],_0x48e4ee=_0x789665['document']['selection']['getFirstRange']();return _0x789665['domConverter']['viewRangeToDom'](_0x48e4ee)['getBoundingClientRect']();}}}),this['_formView']['focus'](),this['listenTo'](this['_formView'],'replaceContent',(_0x2ef0b5,_0xbe09dc)=>{this['hideUI'](),_0x508c3b['insertContent'](_0xbe09dc);}),this['listenTo'](this['_formView'],'insertContentBelow',(_0x5bc2ee,_0x1e41ad)=>{this['hideUI'](),_0x508c3b['insertContentBelow'](_0x1e41ad);}),this['_isUIVisible']=!0x0;}['hideUI'](){const _0x302389=this['editor']['plugins']['get'](_0x46262d);this['_formView']&&this['_balloon']['hasView'](this['_formView'])&&(_0x302389['hideFakeVisualSelection'](),this['_balloon']['remove'](this['_formView']),this['_formView']=null,this['editor']['editing']['view']['focus']()),this['_isUIVisible']=!0x1;}['_enableAIBalloonInteractions'](){this['editor']['keystrokes']['set']('Esc',(_0x6bdfd4,_0x50686d)=>{this['_formView']&&(this['hideUI'](),_0x50686d());}),_0x403deb({'emitter':this['_formView'],'activator':()=>!!this['_formView'],'contextElements':()=>[this['_balloon']['view']['element']],'callback':()=>this['hideUI']()});}}function U(_0x39544c,_0x11bac4){const _0x4b70df=new _0x5b17d9(_0x39544c['locale']),_0x11ce32=function(_0x2e49f5){const _0x3fedb2={};return _0x2e49f5['forEach'](_0x2dc3b4=>{const _0x209802=_0x2dc3b4['groupLabel']||_0x2dc3b4['groupId'],_0x114383=_0x2dc3b4['commands'];_0x3fedb2[_0x209802]=_0x114383;}),_0x3fedb2;}(_0x39544c['config']['get']('aiAssistant.commands')||[]);return Object['entries'](_0x11ce32)['forEach'](([_0x4c2252,_0x29d704])=>{const _0x5339de=_0x29d704['map'](_0x2b9374=>function(_0x5b0c07,_0x390c66,_0x55e866){const _0x2144e8=new _0x14434c(),_0x4acce3=new _0x3e98d3(),_0x142f59=new _0x5cf85e(_0x5b0c07,_0x4acce3);return _0x2144e8['children']['add'](_0x142f59),_0x142f59['set']({'label':_0x55e866['label'],'withText':!0x0}),_0x142f59['on']('execute',()=>{_0x390c66(_0x55e866['prompt'],_0x55e866['label']);}),_0x2144e8;}(_0x39544c['locale'],_0x11bac4,_0x2b9374));_0x4b70df['items']['add'](function(_0x4edd72,_0x356eb4){const _0x37c9f4=new _0x410dbc();return _0x37c9f4['label']=_0x4edd72,_0x37c9f4['items']['addMany'](_0x356eb4),_0x37c9f4;}(_0x4c2252,_0x5339de));}),_0x4b70df;}
@@ -0,0 +1,40 @@
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 { Plugin, type Editor } from 'ckeditor5/src/core';
6
+ /**
7
+ * The AI handler plugin that is responsible for the whole communication with AI.
8
+ * It uses the Adapter for OpenAI by default.
9
+ */
10
+ export default class AIConnector extends Plugin {
11
+ /**
12
+ * The adapter instance which is used to handle the communication with AI API.
13
+ */
14
+ adapter: Adapter;
15
+ /**
16
+ * @inheritDoc
17
+ */
18
+ static get pluginName(): "AIConnector";
19
+ /**
20
+ * @inheritDoc
21
+ */
22
+ constructor(editor: Editor);
23
+ /**
24
+ * Processes a user prompt and sends it to the AI API.
25
+ *
26
+ * @param prompt The user's prompt to be processed.
27
+ * @param context The context on which the prompt is used.
28
+ * @param onDataCallback The callback that is called after receiving content from AI API.
29
+ * @returns A Promise that resolves with the AI-generated response.
30
+ * @throws If sending the prompt to the AI API fails.
31
+ */
32
+ processPrompt(prompt: string, context: string, onDataCallback: (content: string) => any): Promise<void>;
33
+ /**
34
+ * The method that stops the current request and then recreates the abort controller instance.
35
+ */
36
+ abort(): void;
37
+ }
38
+ export interface Adapter {
39
+ sendPrompt(systemMessage: string, userMessage: string, abortSignal: AbortSignal, onDataCallback: (content: string) => any): Promise<void>;
40
+ }
@@ -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 _0x34e7=['Bearer\x20','data','read','_cleanUpData','_abortController','document','get','data:\x20','_prepareMessages','resolve','aiAssistant.apiUrl','text/html','choices','define','_normalizeResponseHeadings','error','delta','_xmlSerializer','editing','view','rename','user','_apiUrl','config','catch','processor','filter','length','split','toView','_parseAndNormalizeContent','stringify','gpt-3.5-turbo','AbortError','Your\x20task\x20is\x20to\x20process\x20HTML\x20content.\x20You\x20are\x20given\x20HTML\x20content\x20and\x20an\x20instruction\x20how\x20it\x20should\x20be\x20processed.\x20Follow\x20closely\x20the\x20instruction.\x20Try\x20to\x20preserve\x20all\x20HTML\x20formatting\x20from\x20the\x20original\x20HTML\x20content\x20unless\x20asked\x20otherwise.\x20As\x20an\x20answer\x20return\x20only\x20the\x20HTML\x20processed\x20accordingly\x20to\x20the\x20instruction.\x20Do\x20not\x20add\x20any\x20additional\x20remarks\x20or\x20notes.\x20Do\x20not\x20act\x20like\x20a\x20chatbot\x20or\x20a\x20real\x20person.\x0a\x0aExample:\x0a\x0aUser:\x0a\x0aInstruction:\x0aChange\x20to\x20uppercase\x0a\x0aHTML\x20content:\x0a<p>This\x20is\x20a\x20dog.</p>\x0a\x0aAssistant:\x0a\x0a<p>THIS\x20IS\x20A\x20DOG.</p>','_domParser','content','sendPrompt','abort','element','adapter','push','signal','parseFromString','application/json','system','[DONE]','getReader','map','startsWith','aiAssistant.apiKey','POST','<span>','editor','\x0a\x0aHTML\x20content:\x0a','body','https://api.openai.com/v1/chat/completions','toModel','name','</span>','join','decode','pluginName','processPrompt','Your\x20task\x20is\x20to\x20generate\x20HTML\x20content\x20accordingly\x20to\x20the\x20given\x20instruction.\x20As\x20an\x20answer\x20return\x20only\x20the\x20generated\x20HTML.\x20The\x20returned\x20answer\x20must\x20be\x20a\x20well-structed,\x20properly\x20formatted\x20HTML.\x20Do\x20not\x20add\x20any\x20additional\x20remarks\x20or\x20notes.\x20Do\x20not\x20act\x20like\x20a\x20chatbot\x20or\x20a\x20real\x20person.\x0a\x0aExample:\x0a\x0aUser:\x0a\x0aGenerate\x20a\x20list\x20with\x20names\x20of\x20a\x20few\x20vegetables\x0a\x0aAssistant:\x0a\x0a<ul><li>Carrot</li><li>Potato</li><li>Cabbage</li><li>Corn</li></ul>','_apiKey','_isBufferIncomplete','Authorization'];(function(_0x4e581c,_0x34e752){const _0x12c102=function(_0x4018e9){while(--_0x4018e9){_0x4e581c['push'](_0x4e581c['shift']());}};_0x12c102(++_0x34e752);}(_0x34e7,0x1ad));const _0x12c1=function(_0x4e581c,_0x34e752){_0x4e581c=_0x4e581c-0x0;let _0x12c102=_0x34e7[_0x4e581c];return _0x12c102;};import{Matcher as _0x37f06f,UpcastWriter as _0x51f2c8}from'ckeditor5/src/engine';import{Plugin as _0x3ced25}from'ckeditor5/src/core';import{CKEditorError as _0x22b209}from'ckeditor5/src/utils';export default class o extends _0x3ced25{static get[_0x12c1('0x29')](){return'AIConnector';}constructor(_0x3df96b){super(_0x3df96b),_0x3df96b['config'][_0x12c1('0x3c')](_0x12c1('0x39'),_0x12c1('0x23'));const _0x1ab705=_0x3df96b[_0x12c1('0x2')][_0x12c1('0x35')](_0x12c1('0x39')),_0x1882bd=_0x3df96b[_0x12c1('0x2')]['get'](_0x12c1('0x1d'));this[_0x12c1('0x33')]=new AbortController(),this[_0x12c1('0x13')]=new H(_0x3df96b,_0x1ab705,_0x1882bd);}async[_0x12c1('0x2a')](_0x18c6ab,_0x27558b,_0x4aa654){const {systemMessage:_0x249ee0,userMessage:_0x3004cb}=this[_0x12c1('0x37')](_0x18c6ab,_0x27558b);return this[_0x12c1('0x13')][_0x12c1('0x10')](_0x249ee0,_0x3004cb,this[_0x12c1('0x33')]['signal'],_0x4aa654)[_0x12c1('0x3')](_0x776719=>{if(_0x12c1('0xc')===_0x776719[_0x12c1('0x25')])return Promise[_0x12c1('0x38')]();throw console[_0x12c1('0x3e')](_0x776719),new _0x22b209('aiconnector-send-prompt-failed',null);});}[_0x12c1('0x11')](){this[_0x12c1('0x33')][_0x12c1('0x15')]['aborted']||(this[_0x12c1('0x33')]['abort'](),this[_0x12c1('0x33')]=new AbortController());}[_0x12c1('0x37')](_0x415545,_0x5874e9){let _0x1744d5,_0x20f853;return _0x5874e9?(_0x1744d5=_0x12c1('0xd'),_0x20f853='Instruction:\x0a'+_0x415545+_0x12c1('0x21')+(_0x5874e9[_0x12c1('0x1c')]('<')?_0x5874e9:_0x12c1('0x1f')+_0x5874e9+_0x12c1('0x26'))):(_0x1744d5=_0x12c1('0x2b'),_0x20f853=_0x415545),{'systemMessage':_0x1744d5,'userMessage':_0x20f853};}}class H{constructor(_0x178d8d,_0x344357,_0x4348f7){this[_0x12c1('0x20')]=_0x178d8d,this[_0x12c1('0x1')]=_0x344357,this[_0x12c1('0x2c')]=_0x4348f7,this[_0x12c1('0xe')]=new DOMParser(),this[_0x12c1('0x40')]=new XMLSerializer();}async['sendPrompt'](_0x48869f,_0x2c5916,_0x3481aa,_0x2bb910){const _0x570a51={'Content-Type':_0x12c1('0x17')};this[_0x12c1('0x2c')]&&(_0x570a51[_0x12c1('0x2e')]=_0x12c1('0x2f')+this[_0x12c1('0x2c')]);const _0x56cb17={'method':_0x12c1('0x1e'),'headers':_0x570a51,'body':JSON['stringify']({'model':_0x12c1('0xb'),'messages':[{'role':_0x12c1('0x18'),'content':_0x48869f},{'role':_0x12c1('0x0'),'content':_0x2c5916}],'stream':!0x0}),'signal':_0x3481aa},_0x12749d=(await fetch(this[_0x12c1('0x1')],_0x56cb17))[_0x12c1('0x22')];return await this['_processStream'](_0x12749d,_0x2bb910),Promise[_0x12c1('0x38')]();}async['_processStream'](_0x4e24aa,_0x5f0607){const _0x3f007f=_0x4e24aa[_0x12c1('0x1a')](),_0x6e06eb=new TextDecoder();let _0x262a16='',_0x510255='',_0x146b14='',_0xcb25ec=!0x1;for(;!_0xcb25ec;){const {done:_0x13557a,value:_0x150c98}=await _0x3f007f[_0x12c1('0x31')](),_0x2e1e94=_0x262a16+_0x6e06eb[_0x12c1('0x28')](_0x150c98);let _0x125102='';_0xcb25ec=_0x13557a;try{_0x125102=this[_0x12c1('0x32')](_0x2e1e94),_0x262a16='';}catch(_0x4bad31){_0x262a16+=_0x2e1e94;continue;}_0x510255+=_0x125102,!_0x13557a&&this[_0x12c1('0x2d')](_0x510255)||_0x510255&&(_0x146b14+=_0x510255,_0x5f0607(this[_0x12c1('0x9')](_0x146b14)),_0x510255='');}return Promise[_0x12c1('0x38')]();}['_isBufferIncomplete'](_0x5850e0){const _0x70481e=_0x5850e0[_0x12c1('0x7')]('<')['length']!==_0x5850e0[_0x12c1('0x7')]('>')[_0x12c1('0x6')],_0x360054=_0x5850e0['length']<0x1e;return _0x70481e&&_0x360054;}[_0x12c1('0x9')](_0x55a1bd){const _0x3e2650=this[_0x12c1('0xe')][_0x12c1('0x16')](_0x55a1bd,_0x12c1('0x3a')),_0x1d7683=this[_0x12c1('0x20')][_0x12c1('0x30')][_0x12c1('0x4')][_0x12c1('0x8')](this['_xmlSerializer']['serializeToString'](_0x3e2650[_0x12c1('0x22')]));return this[_0x12c1('0x3d')](_0x1d7683),this[_0x12c1('0x20')][_0x12c1('0x30')][_0x12c1('0xa')](this['editor']['data'][_0x12c1('0x24')](_0x1d7683));}[_0x12c1('0x3d')](_0x3db6ce){const _0x1f3e82=new _0x51f2c8(this[_0x12c1('0x20')][_0x12c1('0x41')][_0x12c1('0x42')][_0x12c1('0x34')]),_0x1ce8cc=new _0x37f06f({'name':/^h[1-5]$/}),_0x5d328a=[];let _0x345212=!0x1;for(const _0x57864b of _0x3db6ce)_0x57864b['is'](_0x12c1('0x12'))&&_0x1ce8cc['match'](_0x57864b)&&(_0x5d328a[_0x12c1('0x14')](_0x57864b),'h1'==_0x57864b['name']&&(_0x345212=!0x0));if(_0x345212)for(const _0x4ebc17 of _0x5d328a)_0x1f3e82[_0x12c1('0x43')]('h'+(parseInt(_0x4ebc17[_0x12c1('0x25')][0x1])+0x1),_0x4ebc17);}[_0x12c1('0x32')](_0xdfd989){return _0xdfd989['split']('\x0a')[_0x12c1('0x1b')](_0x470d3a=>_0x470d3a['replace'](_0x12c1('0x36'),''))[_0x12c1('0x5')](_0x21bad8=>_0x21bad8&&_0x21bad8[_0x12c1('0x6')]>0x0&&_0x12c1('0x19')!==_0x21bad8)[_0x12c1('0x1b')](_0x44d009=>JSON['parse'](_0x44d009)[_0x12c1('0x3b')][0x0][_0x12c1('0x3f')][_0x12c1('0xf')])[_0x12c1('0x5')](_0x51f950=>_0x51f950)[_0x12c1('0x27')]('');}}
@@ -0,0 +1,26 @@
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 { default as AIAssistant, AIAssistantConfig } from './aiassistant';
6
+ import type ShowAIAssistantCommand from './ui/showaiassistantcommand';
7
+ import type AIAssistantEditing from './aiassistantediting';
8
+ import type AIAssistantUI from './aiassistantui';
9
+ declare module '@ckeditor/ckeditor5-core' {
10
+ interface EditorConfig {
11
+ /**
12
+ * The configuration of the {@link module:ai/aiassistant~AIAssistant AI assistant feature}.
13
+ *
14
+ * Read more in {@link module:ai/aiassistant~AIAssistantConfig}.
15
+ */
16
+ aiAssistant?: AIAssistantConfig;
17
+ }
18
+ interface PluginsMap {
19
+ [AIAssistant.pluginName]: AIAssistant;
20
+ [AIAssistantUI.pluginName]: AIAssistantUI;
21
+ [AIAssistantEditing.pluginName]: AIAssistantEditing;
22
+ }
23
+ interface CommandsMap {
24
+ aiAssistant: ShowAIAssistantCommand;
25
+ }
26
+ }
@@ -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 ai
7
+ */
8
+ export { default as AIAssistant } from './aiassistant';
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 AIAssistant}from'./aiassistant';import'./augmentation';
@@ -0,0 +1,59 @@
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 AIConnector from '../aiconnector';
6
+ import type { default as AIFormView } from './form/aiformview';
7
+ declare const AIAssistantController_base: {
8
+ new (): import("ckeditor5/src/utils").Observable;
9
+ prototype: import("ckeditor5/src/utils").Observable;
10
+ };
11
+ /**
12
+ * Controller for the AI assistant.
13
+ *
14
+ * It takes a AI balloon view, listens to events fired by that view and based on them performs actions on an AI handler.
15
+ * This controller is also responsible for streaming the AI response for the UI.
16
+ */
17
+ export default class AIAssistantController extends AIAssistantController_base {
18
+ /**
19
+ * An instance of the {@link module:ai/aiconnector~AIConnector}.
20
+ */
21
+ readonly connector: AIConnector;
22
+ /**
23
+ * An instance of the {@link module:ai/ui/aiformview~AIFormView}.
24
+ */
25
+ readonly view: AIFormView;
26
+ /**
27
+ * The previous value of the user prompt. It is kept to handle the try again event.
28
+ *
29
+ * @observable
30
+ */
31
+ previousPrompt?: string;
32
+ /**
33
+ * The previous value of the context for the AI request. It is kept to handle the try again event.
34
+ *
35
+ * Initially it is the selected HTML content from the editor. Subsequently,
36
+ * the context is replaced by each response from AI.
37
+ *
38
+ * @observable
39
+ */
40
+ previousContext?: string;
41
+ /**
42
+ * Flag that indicates if the processing is in progress.
43
+ *
44
+ * @observable
45
+ */
46
+ isProcessing: boolean;
47
+ /**
48
+ * @param connector AI connector instance.
49
+ * @param view AI form view.
50
+ * @param htmlContent The selected HTML content on which the AI should base.
51
+ * @param prompt The initial prompt that causes the processing to start.
52
+ */
53
+ constructor(connector: AIConnector, view: AIFormView, htmlContent: string, prompt?: string);
54
+ /**
55
+ * Destroys `AIAssistantController` instance.
56
+ */
57
+ destroy(): void;
58
+ }
59
+ 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 _0x3714=['view','finishProcessing','isProcessing','set','submitPrompt','listenTo','render','_handlePrompt','AbortError','connector','processPrompt','handleError','previousContext','destroy','previousPrompt','finally','value'];(function(_0xb18a58,_0x3714e4){const _0xbbd6ed=function(_0x11cdcc){while(--_0x11cdcc){_0xb18a58['push'](_0xb18a58['shift']());}};_0xbbd6ed(++_0x3714e4);}(_0x3714,0x92));const _0xbbd6=function(_0xb18a58,_0x3714e4){_0xb18a58=_0xb18a58-0x0;let _0xbbd6ed=_0x3714[_0xb18a58];return _0xbbd6ed;};import{ObservableMixin as _0x386f13}from'ckeditor5/src/utils';export default class b extends _0x386f13(){constructor(_0x390e25,_0xd2fba6,_0x4b71b1,_0x2fcc9a){super(),this[_0xbbd6('0x10')]=_0x390e25,this[_0xbbd6('0x7')]=_0xd2fba6,this[_0xbbd6('0xa')]({'previousPrompt':void 0x0,'previousContext':void 0x0,'isProcessing':!0x1}),_0x2fcc9a&&this[_0xbbd6('0x7')]['once'](_0xbbd6('0xd'),()=>{this[_0xbbd6('0xe')](_0x2fcc9a,_0x4b71b1);}),this['listenTo'](this[_0xbbd6('0x7')],_0xbbd6('0xb'),(_0x479910,_0x4f0eb6)=>{const _0x57b011=this[_0xbbd6('0x7')]['value']||_0x4b71b1;this['_handlePrompt'](_0x4f0eb6,_0x57b011);}),this[_0xbbd6('0xc')](this['view'],'tryAgainEvent',()=>{this['_handlePrompt'](this[_0xbbd6('0x4')],this[_0xbbd6('0x2')]);}),this[_0xbbd6('0xc')](this[_0xbbd6('0x7')],'stopProcessing',()=>{this[_0xbbd6('0x9')]=!0x1,this[_0xbbd6('0x10')]['abort'](),this[_0xbbd6('0x7')][_0xbbd6('0x8')]();});}[_0xbbd6('0x3')](){this['stopListening']();}async['_handlePrompt'](_0xcec18f,_0x57b861){return this['isProcessing']=!0x0,this[_0xbbd6('0x7')]['startProcessing'](),this['previousPrompt']=_0xcec18f,this[_0xbbd6('0x2')]=_0x57b861,new Promise(_0x303cf5=>{this[_0xbbd6('0x10')][_0xbbd6('0x0')](_0xcec18f,_0x57b861,_0x30a839=>this['_updateValue'](_0x30a839))['catch'](_0x16c87e=>{_0xbbd6('0xf')!==_0x16c87e['name']&&this[_0xbbd6('0x7')][_0xbbd6('0x1')](),_0x303cf5();})[_0xbbd6('0x5')](()=>{this['isProcessing']=!0x1,this['view'][_0xbbd6('0x8')]();});});}['_updateValue'](_0x29a6db){this[_0xbbd6('0x7')][_0xbbd6('0x6')]=''+_0x29a6db;}}
@@ -0,0 +1,22 @@
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 ai/ui/aicommandslistview
7
+ */
8
+ import { ListView, type FilteredView } from 'ckeditor5/src/ui';
9
+ /**
10
+ * A list view that displays a list of AI commands with filtering capabilities.
11
+ *
12
+ * @private
13
+ */
14
+ export default class AICommandsListView extends ListView implements FilteredView {
15
+ /**
16
+ * @inheritDoc
17
+ */
18
+ filter(regExp: RegExp | null): {
19
+ resultsCount: number;
20
+ totalItemsCount: number;
21
+ };
22
+ }
@@ -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 _0x257a=['label','length','match','first','highlightText','filter','children','isVisible','items'];(function(_0x3a855e,_0x257af9){const _0xd95b2e=function(_0x1ec285){while(--_0x1ec285){_0x3a855e['push'](_0x3a855e['shift']());}};_0xd95b2e(++_0x257af9);}(_0x257a,0x15a));const _0xd95b=function(_0x3a855e,_0x257af9){_0x3a855e=_0x3a855e-0x0;let _0xd95b2e=_0x257a[_0x3a855e];return _0xd95b2e;};import{ListView as _0x25ae20}from'ckeditor5/src/ui';export default class A extends _0x25ae20{[_0xd95b('0x1')](_0x1e3b37){let _0x36d484=0x0,_0x335280=0x0;for(const _0x2d8be1 of this['items']){const _0x42ad6b=_0x2d8be1;for(const _0x1826dc of _0x42ad6b[_0xd95b('0x4')]){const _0xc12751=_0x1826dc[_0xd95b('0x2')][_0xd95b('0x8')],_0x3fb773=_0xc12751['labelView'];_0x1e3b37?(_0x1826dc[_0xd95b('0x3')]=!!_0xc12751[_0xd95b('0x5')][_0xd95b('0x7')](_0x1e3b37),_0x1826dc['isVisible']&&(_0x3fb773[_0xd95b('0x0')](_0x1e3b37),_0x335280++)):(_0x1826dc[_0xd95b('0x3')]=!0x0,_0x3fb773[_0xd95b('0x0')](null),_0x335280++),_0x36d484++;}_0x42ad6b[_0xd95b('0x3')]=!!_0x42ad6b['items'][_0xd95b('0x1')](_0xc81248=>_0xc81248['isVisible'])[_0xd95b('0x6')];}return{'resultsCount':_0x335280,'totalItemsCount':_0x36d484};}}
@@ -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 ai/ui/buttonlabelwithhighlightview
7
+ */
8
+ import { type ButtonLabel, HighlightedTextView } from 'ckeditor5/src/ui';
9
+ /**
10
+ * A button label view that can highlight a text fragment.
11
+ */
12
+ export default class ButtonLabelWithHighlightView extends HighlightedTextView implements ButtonLabel {
13
+ /**
14
+ * @inheritDoc
15
+ */
16
+ style: string | undefined;
17
+ /**
18
+ * @inheritDoc
19
+ */
20
+ text: string | undefined;
21
+ /**
22
+ * @inheritDoc
23
+ */
24
+ id: string | undefined;
25
+ /**
26
+ * @inheritDoc
27
+ */
28
+ constructor();
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 _0x407a=['bindTemplate','extendTemplate','ck-button__label','set'];(function(_0x410bca,_0x407a0d){const _0x44b937=function(_0x3941df){while(--_0x3941df){_0x410bca['push'](_0x410bca['shift']());}};_0x44b937(++_0x407a0d);}(_0x407a,0x175));const _0x44b9=function(_0x410bca,_0x407a0d){_0x410bca=_0x410bca-0x0;let _0x44b937=_0x407a[_0x410bca];return _0x44b937;};import{HighlightedTextView as _0x15a44d}from'ckeditor5/src/ui';export default class g extends _0x15a44d{constructor(){super(),this[_0x44b9('0x2')]({'style':void 0x0,'text':void 0x0,'id':void 0x0});const _0x3f1027=this[_0x44b9('0x3')];this[_0x44b9('0x0')]({'attributes':{'class':[_0x44b9('0x1')],'style':_0x3f1027['to']('style'),'id':_0x3f1027['to']('id')}});}}