@ckeditor/ckeditor5-collaboration-core
Version:
Base utilities used by CKEditor 5 collaboration features to support multiple users working together in a rich text editor.
23 lines • 34.5 kB
JavaScript
/*
* Copyright (c) 2003-2025, CKSource Holding sp. z o.o. All rights reserved.
*
*
*
*
* +---------------------------------------------------------------------------------+
* | |
* | Hello stranger! |
* | |
* | |
* | What you're currently looking at is the source code of a legally protected, |
* | proprietary software. Any attempts to deobfuscate / disassemble this code |
* | are forbidden and will result in legal consequences. |
* | |
* | |
* +---------------------------------------------------------------------------------+
*
*
*
*
*/
const _0x5e5cb0=_0xea0e;(function(_0x2b554f,_0x46b7e9){const _0x421fd9=_0xea0e,_0x2f807d=_0x2b554f();while(!![]){try{const _0x88f3a2=parseInt(_0x421fd9(0x1cd))/0x1+-parseInt(_0x421fd9(0x15d))/0x2*(parseInt(_0x421fd9(0x1b9))/0x3)+-parseInt(_0x421fd9(0x174))/0x4*(-parseInt(_0x421fd9(0x194))/0x5)+parseInt(_0x421fd9(0x13f))/0x6+-parseInt(_0x421fd9(0x1ad))/0x7*(-parseInt(_0x421fd9(0x1bd))/0x8)+-parseInt(_0x421fd9(0x1e4))/0x9+-parseInt(_0x421fd9(0x188))/0xa;if(_0x88f3a2===_0x46b7e9)break;else _0x2f807d['push'](_0x2f807d['shift']());}catch(_0x17b072){_0x2f807d['push'](_0x2f807d['shift']());}}}(_0x4238,0xdf4e4));import{ContextPlugin as _0x1aba13,Editor as _0x463b6c}from'ckeditor5/src/core.js';import{CKEditorError as _0x58d651,uid as _0x4f4638}from'ckeditor5/src/utils.js';import{ModelRange as _0x3cf270,ModelPosition as _0x4b0d00,ModelText as _0x30b0ac,ModelTreeWalker as _0x437eaa,AttributeOperation as _0x34db34,InsertOperation as _0x1bd19c,MoveOperation as _0x5a6c7f,RenameOperation as _0x371a60,SplitOperation as _0x428848,MergeOperation as _0x3df844,MarkerOperation as _0x2471db}from'ckeditor5/src/engine.js';import{diffArrays as _0x25954c}from'diff';import{hashObject as _0x120528}from'./utils/hashobject.js';export const DATA_ID_MODEL_ATTRIBUTE=_0x5e5cb0(0x157);export const DATA_ID_VIEW_ATTRIBUTE=_0x5e5cb0(0x197);export class DocumentCompare extends _0x1aba13{static get[_0x5e5cb0(0x15b)](){const _0x521284=_0x5e5cb0;return _0x521284(0x18b);}static get[_0x5e5cb0(0x1a5)](){return!0x0;}static get[_0x5e5cb0(0x146)](){return!0x0;}async[_0x5e5cb0(0x1d9)](){const _0xb6938b=_0x5e5cb0;this[_0xb6938b(0x17d)]instanceof _0x463b6c?this[_0xb6938b(0x150)](this[_0xb6938b(0x17d)]):this[_0xb6938b(0x196)](this[_0xb6938b(0x17d)][_0xb6938b(0x152)],_0xb6938b(0x14f),(_0x40ec02,_0x4825da)=>{const _0x1c63bf=_0xb6938b;_0x4825da['on'](_0x1c63bf(0x159),()=>{const _0x1f7e2d=_0x1c63bf;this[_0x1f7e2d(0x150)](_0x4825da);});});}get[_0x5e5cb0(0x1e3)](){const _0x545353=_0x5e5cb0;if(this[_0x545353(0x17d)]instanceof _0x463b6c)return this[_0x545353(0x17d)];{const _0x11d95c=this[_0x545353(0x17d)][_0x545353(0x152)][_0x545353(0x186)];if(!_0x11d95c)throw new _0x58d651(_0x545353(0x173),this);return _0x11d95c;}}[_0x5e5cb0(0x1dd)](_0x28b681,_0x2bdb95,_0x2ea382={'anchor':_0x5e5cb0(0x147),'markDeletions':!0x1}){const _0x1a65a2=_0x5e5cb0;let _0x54d63d,_0x107ca9;const _0x5e2769=this[_0x1a65a2(0x1e3)];if(_0x1a65a2(0x1ae)==typeof _0x2ea382[_0x1a65a2(0x19d)]){const _0x59a4ba=_0x5e2769[_0x1a65a2(0x18f)][_0x1a65a2(0x1de)][_0x1a65a2(0x19e)](_0x2ea382[_0x1a65a2(0x19d)]);if(!_0x59a4ba)throw new _0x58d651(_0x1a65a2(0x169),this,{'anchor':_0x2ea382[_0x1a65a2(0x19d)]});_0x54d63d=_0x59a4ba,_0x107ca9=_0x5e2769[_0x1a65a2(0x18f)][_0x1a65a2(0x165)](_0x59a4ba,0x0);}else _0x54d63d=_0x2ea382[_0x1a65a2(0x19d)][_0x1a65a2(0x1b4)](),_0x107ca9=_0x2ea382[_0x1a65a2(0x19d)][_0x1a65a2(0x1b4)]();const _0x4691a3=_0x5e2769[_0x1a65a2(0x1c6)][_0x1a65a2(0x1da)](_0x28b681,_0x54d63d),_0x35211c=_0x5e2769[_0x1a65a2(0x1c6)][_0x1a65a2(0x1da)](_0x2bdb95,_0x54d63d);return new DocumentDiff(_0x4691a3,_0x35211c,_0x5e2769,{'anchor':_0x107ca9,'markDeletions':_0x2ea382[_0x1a65a2(0x145)]});}[_0x5e5cb0(0x155)](_0x223b3e){const _0x9bf534=_0x5e5cb0;return _0x9bf534(0x154)==_0x223b3e[_0x9bf534(0x180)]&&_0x223b3e[_0x9bf534(0x1a9)][_0x9bf534(0x16e)](_0x9bf534(0x1e2));}[_0x5e5cb0(0x150)](_0x395430){const _0x18c9f3=_0x5e5cb0;_0x395430[_0x18c9f3(0x185)][_0x18c9f3(0x1a3)](_0x18c9f3(0x137))[_0x18c9f3(0x14f)](_0x40c8b6=>{const _0xdd66de=_0x18c9f3;_0x40c8b6['on'](_0xdd66de(0x1a7),(_0x27e09c,_0x5ee39a,_0x5d15e4)=>{const _0x1dbe8f=_0xdd66de;if(_0x5ee39a[_0x1dbe8f(0x142)])for(const _0x2881a8 of _0x5ee39a[_0x1dbe8f(0x142)][_0x1dbe8f(0x1d5)]({'shallow':!0x0})){if(_0x2881a8['is'](_0x1dbe8f(0x190)))continue;const _0x350e9d=_0x5ee39a[_0x1dbe8f(0x1d7)][_0x1dbe8f(0x13d)](_0x1dbe8f(0x197));_0x350e9d&&_0x5d15e4[_0x1dbe8f(0x134)][_0x1dbe8f(0x13e)](_0x1dbe8f(0x157),_0x350e9d,_0x2881a8);}},{'priority':_0xdd66de(0x181)});}),_0x395430[_0x18c9f3(0x18f)][_0x18c9f3(0x193)][_0x18c9f3(0x176)](()=>!0x0,_0x18c9f3(0x157));}}export class DocumentDiff{[_0x5e5cb0(0x17c)];[_0x5e5cb0(0x16b)]=[];[_0x5e5cb0(0x1b0)]=[];[_0x5e5cb0(0x1df)];[_0x5e5cb0(0x13b)];[_0x5e5cb0(0x1c0)]=[0x0];[_0x5e5cb0(0x166)]=[];constructor(_0x102eb8,_0x3f5f7f,_0x212f78,_0x11afcc){const _0xd5ffa6=_0x5e5cb0;this[_0xd5ffa6(0x17c)]=_0x212f78,this[_0xd5ffa6(0x1df)]=!!_0x11afcc[_0xd5ffa6(0x145)],this[_0xd5ffa6(0x13b)]=_0x11afcc[_0xd5ffa6(0x19d)];const _0x20e6db=this[_0xd5ffa6(0x16c)](_0x102eb8),_0x4e1b42=this[_0xd5ffa6(0x16c)](_0x3f5f7f);this[_0xd5ffa6(0x16b)]=this[_0xd5ffa6(0x1d8)](_0x20e6db,_0x4e1b42),this[_0xd5ffa6(0x192)](),this[_0xd5ffa6(0x1df)]||this[_0xd5ffa6(0x1c8)](_0x102eb8[_0xd5ffa6(0x175)],_0x3f5f7f[_0xd5ffa6(0x175)]);}[_0x5e5cb0(0x1cf)](){const _0x414789=_0x5e5cb0;return this[_0x414789(0x1b0)];}[_0x5e5cb0(0x1ce)](){const _0x2e805d=_0x5e5cb0,_0x28f7ff=this[_0x2e805d(0x17c)][_0x2e805d(0x18f)][_0x2e805d(0x1de)],_0xa8b8fd=[];let _0x360bc7=_0x28f7ff[_0x2e805d(0x162)];for(const _0x1707d8 of this[_0x2e805d(0x1b0)])switch(_0x1707d8[_0x2e805d(0x180)]){case _0x2e805d(0x1d4):{const _0x44e281=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x19f)]),_0x360437=_0x44e281[_0x2e805d(0x1c4)](_0x1707d8[_0x2e805d(0x1c1)]),_0x4ad975=new _0x3cf270(_0x44e281,_0x360437),_0x23ec52=JSON[_0x2e805d(0x1da)](_0x1707d8[_0x2e805d(0x163)]),_0x41c6e7=JSON[_0x2e805d(0x1da)](_0x1707d8[_0x2e805d(0x183)]);_0xa8b8fd[_0x2e805d(0x18a)](new _0x34db34(_0x4ad975,_0x1707d8[_0x2e805d(0x14d)],_0x23ec52,_0x41c6e7,_0x360bc7++));break;}case _0x2e805d(0x1ca):{const _0x2c042e=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x19f)]),_0x24d984=this[_0x2e805d(0x199)](_0x1707d8[_0x2e805d(0x16a)]);_0xa8b8fd[_0x2e805d(0x18a)](new _0x1bd19c(_0x2c042e,_0x24d984,_0x360bc7++));break;}case _0x2e805d(0x19a):{const _0x913124=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x19f)]),_0x108197=new _0x4b0d00(_0x28f7ff[_0x2e805d(0x19b)],[0x0]);_0xa8b8fd[_0x2e805d(0x18a)](new _0x5a6c7f(_0x913124,_0x1707d8[_0x2e805d(0x1c1)],_0x108197,_0x360bc7++));break;}case _0x2e805d(0x1d6):{const _0x413d15=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x19f)]);_0xa8b8fd[_0x2e805d(0x18a)](new _0x371a60(_0x413d15,_0x1707d8[_0x2e805d(0x1ab)],_0x1707d8[_0x2e805d(0x139)],_0x360bc7++));break;}case _0x2e805d(0x182):{const _0x5e6f6f=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x19f)]),_0x2c9d2d=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x19f)][_0x2e805d(0x14e)](0x0,-0x1));_0x2c9d2d[_0x2e805d(0x167)]++,_0xa8b8fd[_0x2e805d(0x18a)](new _0x428848(_0x5e6f6f,Number[_0x2e805d(0x1e0)],_0x2c9d2d,null,_0x360bc7++));break;}case _0x2e805d(0x1e1):{const _0x5d09ea=_0x1707d8[_0x2e805d(0x19f)][_0x2e805d(0x14e)](),_0x14bec2=_0x5d09ea[_0x2e805d(0x14e)](0x0,-0x1);_0x14bec2[_0x14bec2[_0x2e805d(0x164)]-0x1]++,_0x14bec2[_0x2e805d(0x18a)](0x0);const _0x23c189=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x14bec2),_0x3cb9a1=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x5d09ea),_0x23cb69=new _0x4b0d00(_0x28f7ff[_0x2e805d(0x19b)],[0x0]);_0xa8b8fd[_0x2e805d(0x18a)](new _0x3df844(_0x23c189,Number[_0x2e805d(0x1e0)],_0x3cb9a1,_0x23cb69,_0x360bc7++));break;}case _0x2e805d(0x154):case _0x2e805d(0x13a):{let _0x26af20=null;if(_0x1707d8[_0x2e805d(0x161)]){const _0x10aa9b=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x161)][_0x2e805d(0x13c)]),_0x161e40=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x161)][_0x2e805d(0x198)]);_0x26af20=new _0x3cf270(_0x10aa9b,_0x161e40);}const _0x466fdc=_0x2e805d(0x154)==_0x1707d8[_0x2e805d(0x180)]?_0x1707d8[_0x2e805d(0x1a9)]:_0x2e805d(0x141)+_0x4f4638();_0xa8b8fd[_0x2e805d(0x18a)](new _0x2471db(_0x466fdc,null,_0x26af20,_0x28f7ff[_0x2e805d(0x18f)][_0x2e805d(0x175)],!0x0,_0x360bc7++));break;}case _0x2e805d(0x1a8):{const _0x31a7c4=_0x1707d8[_0x2e805d(0x19f)][_0x2e805d(0x14e)]();_0x31a7c4[_0x2e805d(0x18a)](0x0);const _0x2e5d9b=_0x1707d8[_0x2e805d(0x19f)][_0x2e805d(0x14e)](),_0x2a74ed=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x31a7c4),_0x2efe09=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x2e5d9b),_0x3beb35=new _0x4b0d00(_0x28f7ff[_0x2e805d(0x19b)],[0x0]);_0xa8b8fd[_0x2e805d(0x18a)](new _0x5a6c7f(_0x2a74ed,_0x1707d8[_0x2e805d(0x1c1)],_0x2efe09,_0x360bc7++)),_0xa8b8fd[_0x2e805d(0x18a)](new _0x5a6c7f(_0x2efe09[_0x2e805d(0x1c4)](_0x1707d8[_0x2e805d(0x1c1)]),0x1,_0x3beb35,_0x360bc7++));break;}case _0x2e805d(0x1c5):{const _0x289cde=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x161)][_0x2e805d(0x13c)]),_0x3bcd17=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x1707d8[_0x2e805d(0x161)][_0x2e805d(0x198)]),_0x265997=_0x1707d8[_0x2e805d(0x168)][_0x2e805d(0x1a7)][_0x2e805d(0x1bb)](!0x1),_0x5270bb=_0x1707d8[_0x2e805d(0x161)][_0x2e805d(0x198)][_0x2e805d(0x14e)]();_0x5270bb[_0x2e805d(0x18a)](0x0);const _0x3507a5=this[_0x2e805d(0x1be)](this[_0x2e805d(0x13b)],_0x5270bb);_0xa8b8fd[_0x2e805d(0x18a)](new _0x1bd19c(_0x3bcd17,_0x265997,_0x360bc7++)),_0xa8b8fd[_0x2e805d(0x18a)](new _0x5a6c7f(_0x289cde,_0x3bcd17[_0x2e805d(0x167)]-_0x289cde[_0x2e805d(0x167)],_0x3507a5,_0x360bc7++));break;}}return _0xa8b8fd;}[_0x5e5cb0(0x16c)](_0x4a5117){const _0x579850=_0x5e5cb0,_0xe11fad=[],_0x53a402=_0x3cf270[_0x579850(0x1a2)](_0x4a5117),_0x5ab7c3=new _0x437eaa({'boundaries':_0x53a402});let _0x3077dd='',_0xbea4f0=null;const _0x43e4f9=[''],_0x389f6a=new Map();for(const _0x16f8a6 of _0x5ab7c3)if(_0x579850(0x1d3)==_0x16f8a6[_0x579850(0x180)]||_0x579850(0x1db)==_0x16f8a6[_0x579850(0x180)]){let _0x128d54=_0x43e4f9[0x0];''!==_0x3077dd&&(_0xe11fad[_0x579850(0x18a)](...this[_0x579850(0x17e)](_0x3077dd,_0xbea4f0,_0x128d54)),_0x3077dd='');const _0x2dab6e=_0x16f8a6[_0x579850(0x136)];let _0x1a3fcd;_0x2dab6e[_0x579850(0x13d)](_0x579850(0x157))?_0x1a3fcd=_0x2dab6e[_0x579850(0x13d)](_0x579850(0x157)):_0x579850(0x1d3)==_0x16f8a6[_0x579850(0x180)]?(_0x1a3fcd=_(_0x2dab6e),_0x389f6a[_0x579850(0x17a)](_0x2dab6e,_0x1a3fcd)):_0x1a3fcd=_0x389f6a[_0x579850(0x1a6)](_0x2dab6e);const _0x41e883=this[_0x579850(0x172)](_0x2dab6e);_0x579850(0x1cc)==_0x41e883&&(_0x579850(0x1d3)==_0x16f8a6[_0x579850(0x180)]?(_0x128d54=_0x1a3fcd,_0x43e4f9[_0x579850(0x1d0)](_0x128d54)):_0x43e4f9[_0x579850(0x1b6)]());const _0x3a6c2f={'type':_0x579850(0x1a7),'element':_0x2dab6e,'elementId':_0x1a3fcd,'category':_0x41e883,'isStart':_0x579850(0x1d3)==_0x16f8a6[_0x579850(0x180)],'limitId':_0x128d54};_0xe11fad[_0x579850(0x18a)](_0x3a6c2f);}else''==_0x3077dd&&(_0xbea4f0=_0x16f8a6[_0x579850(0x1a1)][_0x579850(0x1b4)]()),_0x3077dd+=_0x16f8a6[_0x579850(0x136)][_0x579850(0x1c6)];return''!==_0x3077dd&&_0xe11fad[_0x579850(0x18a)](...this[_0x579850(0x17e)](_0x3077dd,_0xbea4f0,_0x43e4f9[0x0])),_0xe11fad;}[_0x5e5cb0(0x17e)](_0x4c9336,_0x201f71,_0x9d1005){const _0xce9e68=_0x5e5cb0,_0x2f0373=_0x4c9336[_0xce9e68(0x160)](/(\s)/g),_0x3e0b58=Array[_0xce9e68(0x1bf)](_0x2f0373)[_0xce9e68(0x191)](_0x17ce97=>_0x17ce97[_0xce9e68(0x1b7)]);_0x3e0b58[_0xce9e68(0x18a)](_0x4c9336[_0xce9e68(0x164)]),0x0==_0x3e0b58[0x0]&&_0x3e0b58[_0xce9e68(0x1b6)]();const _0x209a65=[],_0x5ab283=_0x201f71[_0xce9e68(0x195)];let _0x486de1=0x0,_0x1c8b29=_0x201f71[_0xce9e68(0x167)];for(let _0x3091b1=0x0;_0x3091b1<_0x3e0b58[_0xce9e68(0x164)];_0x3091b1++)_0x209a65[_0xce9e68(0x18a)]({'type':_0xce9e68(0x149),'data':_0x4c9336[_0xce9e68(0x14e)](_0x486de1,_0x3e0b58[_0x3091b1]),'parent':_0x5ab283,'offset':_0x1c8b29,'limitId':_0x9d1005}),_0x486de1=_0x3e0b58[_0x3091b1],_0x1c8b29=_0x201f71[_0xce9e68(0x167)]+_0x3e0b58[_0x3091b1];return _0x209a65;}[_0x5e5cb0(0x172)](_0x2cae9d){const _0x307922=_0x5e5cb0,_0x40d978=this[_0x307922(0x17c)][_0x307922(0x18f)][_0x307922(0x193)];return _0x40d978[_0x307922(0x1b1)](_0x2cae9d)||_0x40d978[_0x307922(0x1d1)](_0x2cae9d)||_0x40d978[_0x307922(0x14a)](_0x2cae9d)?_0x307922(0x1cc):_0x40d978[_0x307922(0x138)](_0x2cae9d)?_0x307922(0x1aa):_0x307922(0x1af);}[_0x5e5cb0(0x1d8)](_0x5a9569,_0x5504f5){const _0x2c054a=_0x5e5cb0,_0x1d6dab=_0x25954c(_0x5a9569,_0x5504f5,{'comparator':g});this[_0x2c054a(0x1b8)](_0x1d6dab);const _0x48bfa5=_0x1d6dab[_0x2c054a(0x189)](_0x3b21bb=>{const _0xa23896=_0x2c054a,_0x2b09c1=_0x3b21bb[_0xa23896(0x18d)]?_0xa23896(0x18d):_0x3b21bb[_0xa23896(0x17f)]?_0xa23896(0x17f):_0xa23896(0x1c3);return _0x3b21bb[_0xa23896(0x187)][_0xa23896(0x191)](_0x13468d=>({'token':_0x13468d,'change':_0x2b09c1}));});let _0x43eefc=0x0;for(const _0x30b09f of _0x48bfa5)_0x2c054a(0x18d)!=_0x30b09f[_0x2c054a(0x153)]&&(_0x2c054a(0x1c3)==_0x30b09f[_0x2c054a(0x153)]&&(_0x30b09f[_0x2c054a(0x15f)]=_0x5a9569[_0x43eefc]),_0x43eefc++);return _0x48bfa5;}[_0x5e5cb0(0x1b8)](_0x1aeb94){const _0x350426=_0x5e5cb0;for(let _0x3f3878=0x0;_0x3f3878<_0x1aeb94[_0x350426(0x164)]-0x1;_0x3f3878++)if(_0x1aeb94[_0x3f3878][_0x350426(0x17f)]&&_0x1aeb94[_0x3f3878+0x1][_0x350426(0x18d)]){const _0x388ec0=this[_0x350426(0x140)](_0x1aeb94[_0x3f3878][_0x350426(0x187)]);if(null!==_0x388ec0){const _0x1e503e=this[_0x350426(0x140)](_0x1aeb94[_0x3f3878+0x1][_0x350426(0x187)]),_0x2c5153=_0x1aeb94[_0x3f3878][_0x350426(0x187)][_0x350426(0x15e)](_0x388ec0),_0x2a4828=_0x1aeb94[_0x3f3878+0x1][_0x350426(0x187)][_0x350426(0x15e)](_0x1e503e),_0x4f5063=[_0x2a4828[_0x350426(0x1b6)]()];_0x2c5153[_0x350426(0x1b6)]();const _0x2d5a21={'value':_0x2c5153,'removed':!0x0},_0x542c22={'value':_0x2a4828,'added':!0x0},_0x442c75={'value':_0x4f5063};_0x1aeb94[_0x350426(0x15e)](_0x3f3878+0x2,0x0,_0x442c75,_0x2d5a21,_0x542c22);}}}[_0x5e5cb0(0x140)](_0x38b8b9){const _0x20b3ea=_0x5e5cb0;let _0x3475e6=0x0,_0x3ed096=-0x1;for(let _0x4a40c8=0x0;_0x4a40c8<_0x38b8b9[_0x20b3ea(0x164)];_0x4a40c8++){const _0x23a263=_0x38b8b9[_0x4a40c8];_0x20b3ea(0x1a7)==_0x23a263[_0x20b3ea(0x180)]&&_0x20b3ea(0x1aa)==_0x23a263[_0x20b3ea(0x17b)]&&(_0x3475e6+=_0x23a263[_0x20b3ea(0x1a0)]?0x1:-0x1,_0x23a263[_0x20b3ea(0x1a0)]&&(_0x3ed096=_0x4a40c8));}return 0x0===_0x3475e6?null:_0x3ed096;}[_0x5e5cb0(0x192)](){const _0x468187=_0x5e5cb0;this[_0x468187(0x15c)](),this[_0x468187(0x1c0)]=[0x0],this[_0x468187(0x166)]=[];for(let _0x54115f=0x0;_0x54115f<this[_0x468187(0x16b)][_0x468187(0x164)];_0x54115f++){const _0x1ed6cc=this[_0x468187(0x16b)][_0x54115f][_0x468187(0x153)],_0x213d80=[];_0x213d80[_0x468187(0x18a)](this[_0x468187(0x16b)][_0x54115f]);let _0x191754=_0x54115f+0x1;for(;this[_0x468187(0x16b)][_0x191754]&&this[_0x468187(0x16b)][_0x191754][_0x468187(0x153)]==_0x1ed6cc;)_0x213d80[_0x468187(0x18a)](this[_0x468187(0x16b)][_0x191754]),_0x191754++,_0x54115f++;const _0xe292c=_0x213d80[_0x468187(0x191)](_0x555915=>_0x555915[_0x468187(0x168)]);if(_0x468187(0x1c3)==_0x1ed6cc)_0x213d80[_0x468187(0x191)](_0x523a6f=>_0x523a6f[_0x468187(0x15f)])[_0x468187(0x16f)](_0x17cddf=>this[_0x468187(0x18e)](_0x17cddf));else{if(_0x468187(0x17f)==_0x1ed6cc){if(this[_0x468187(0x1df)]){const _0x51dec3=this[_0x468187(0x1c0)][_0x468187(0x14e)]();_0xe292c[_0x468187(0x16f)](_0x3e4a45=>this[_0x468187(0x18e)](_0x3e4a45));const _0x35a368=this[_0x468187(0x1c0)][_0x468187(0x14e)]();this[_0x468187(0x1b0)][_0x468187(0x18a)]({'type':_0x468187(0x13a),'range':{'start':_0x51dec3,'end':_0x35a368}});}else this[_0x468187(0x151)](_0xe292c,!0x0,this[_0x468187(0x1c0)][_0x468187(0x14e)]());}else{const _0x280066=_0xe292c[_0x468187(0x177)](_0x1dfa54=>_0x468187(0x1a7)!=_0x1dfa54[_0x468187(0x180)]||_0x468187(0x1af)!=_0x1dfa54[_0x468187(0x17b)]);this[_0x468187(0x151)](_0x280066,!0x1,this[_0x468187(0x1c0)]);}}}this[_0x468187(0x1c9)](),this[_0x468187(0x1c0)]=[0x0],this[_0x468187(0x166)]=[];for(let _0x4e0755=0x0;_0x4e0755<this[_0x468187(0x16b)][_0x468187(0x164)];_0x4e0755++){const _0x52dc08=this[_0x468187(0x16b)][_0x4e0755][_0x468187(0x153)],_0x4df564=[];_0x4df564[_0x468187(0x18a)](this[_0x468187(0x16b)][_0x4e0755]);let _0x583042=_0x4e0755+0x1;for(;this[_0x468187(0x16b)][_0x583042]&&this[_0x468187(0x16b)][_0x583042][_0x468187(0x153)]==_0x52dc08;)_0x4df564[_0x468187(0x18a)](this[_0x468187(0x16b)][_0x583042]),_0x583042++,_0x4e0755++;const _0x216eaf=_0x4df564[_0x468187(0x191)](_0x574d24=>_0x574d24[_0x468187(0x168)]);if(_0x468187(0x1c3)==_0x52dc08){const _0xc2af65=_0x4df564[_0x468187(0x191)](_0x409978=>_0x409978[_0x468187(0x15f)]);this[_0x468187(0x1b3)](_0xc2af65,_0x216eaf);}else(_0x468187(0x17f)!=_0x52dc08||this[_0x468187(0x1df)])&&_0x216eaf[_0x468187(0x16f)](_0x359740=>{const _0x59497b=_0x468187;this[_0x59497b(0x18e)](_0x359740);});}}[_0x5e5cb0(0x1c8)](_0x434740,_0x1778cf){const _0x1e0d53=_0x5e5cb0,_0x1a0958={};for(const [_0x586bed]of _0x434740)_0x1a0958[_0x586bed]=null;for(const [_0x49ca0d,_0x8dcf61]of _0x1778cf)_0x1a0958[_0x49ca0d]=_0x8dcf61;const _0x4b2966=Object[_0x1e0d53(0x158)](_0x1a0958)[_0x1e0d53(0x191)](([_0x16aea3,_0x50a792])=>({'type':_0x1e0d53(0x154),'name':_0x16aea3,'range':_0x50a792?{'start':_0x50a792[_0x1e0d53(0x13c)][_0x1e0d53(0x19f)][_0x1e0d53(0x14e)](),'end':_0x50a792[_0x1e0d53(0x198)][_0x1e0d53(0x19f)][_0x1e0d53(0x14e)]()}:null}));this[_0x1e0d53(0x1b0)][_0x1e0d53(0x18a)](..._0x4b2966);}[_0x5e5cb0(0x15c)](){const _0x353b14=_0x5e5cb0,_0xf2b214=new Map(),_0x594849=[],_0x381767=[0x0];let _0x15c7b9=this[_0x353b14(0x16b)][_0x353b14(0x164)]+0x1;for(let _0x50ea1e=this[_0x353b14(0x16b)][_0x353b14(0x164)]-0x1;_0x50ea1e>=0x0;_0x50ea1e--){const {token:_0x2fe73f,before:_0x4beb98,change:_0x1e22cc}=this[_0x353b14(0x16b)][_0x50ea1e];if(_0x353b14(0x17f)!=_0x1e22cc&&(_0x15c7b9=_0x50ea1e),_0x353b14(0x1a7)!=_0x2fe73f[_0x353b14(0x180)]||_0x353b14(0x1af)!=_0x2fe73f[_0x353b14(0x17b)]||_0x353b14(0x18d)==_0x1e22cc)continue;const _0x5a28d4=_0x4beb98?_0x4beb98[_0x353b14(0x1a7)]:_0x2fe73f[_0x353b14(0x1a7)];if(_0x2fe73f[_0x353b14(0x1a0)]){const _0x1e97a7=_0xf2b214[_0x353b14(0x1a6)](_0x5a28d4),_0x162a40=this[_0x353b14(0x16b)][_0x1e97a7];(_0x353b14(0x17f)==_0x1e22cc||_0x353b14(0x17f)==_0x162a40[_0x353b14(0x153)])&&_0x15c7b9<_0x1e97a7&&(this[_0x353b14(0x1b0)][_0x353b14(0x18a)]({'type':_0x353b14(0x1a8),'path':_0x5a28d4[_0x353b14(0x178)](),'howMany':_0x5a28d4[_0x353b14(0x184)]+_0x381767[0x0]}),_0x381767[_0x353b14(0x1b6)](),_0x381767[0x0]+=_0x5a28d4[_0x353b14(0x184)]-0x1,_0x594849[_0x353b14(0x18a)](_0x50ea1e),_0x594849[_0x353b14(0x18a)](_0x1e97a7));}else _0xf2b214[_0x353b14(0x17a)](_0x5a28d4,_0x50ea1e),_0x381767[_0x353b14(0x1d0)](0x0);}_0x594849[_0x353b14(0x133)]((_0x169a4f,_0x381001)=>_0x381001-_0x169a4f),_0x594849[_0x353b14(0x16f)](_0x67eab3=>{const _0x2fe965=_0x353b14,_0x2270e7=this[_0x2fe965(0x16b)][_0x67eab3];_0x2fe965(0x17f)==_0x2270e7[_0x2fe965(0x153)]?this[_0x2fe965(0x16b)][_0x2fe965(0x15e)](_0x67eab3,0x1):(_0x2270e7[_0x2fe965(0x153)]=_0x2fe965(0x18d),delete _0x2270e7[_0x2fe965(0x15f)]);});}[_0x5e5cb0(0x1c9)](){const _0x29b4ed=_0x5e5cb0;this[_0x29b4ed(0x1c0)]=[0x0],this[_0x29b4ed(0x166)]=[];const _0x15fc9c=[];for(let _0x3221a0=0x0;_0x3221a0<this[_0x29b4ed(0x16b)][_0x29b4ed(0x164)];_0x3221a0++){const {change:_0xb49479,token:_0x30c681}=this[_0x29b4ed(0x16b)][_0x3221a0];if(_0x29b4ed(0x18d)==_0xb49479&&_0x29b4ed(0x1a7)==_0x30c681[_0x29b4ed(0x180)]&&_0x29b4ed(0x1af)==_0x30c681[_0x29b4ed(0x17b)]){if(_0x30c681[_0x29b4ed(0x1a0)])_0x15fc9c[_0x29b4ed(0x18a)](this[_0x29b4ed(0x1c0)][_0x29b4ed(0x14e)]());else{if(!_0x30c681[_0x29b4ed(0x1a0)]){const _0x179785=_0x15fc9c[_0x29b4ed(0x1d2)]();this[_0x29b4ed(0x1b0)][_0x29b4ed(0x18a)]({'type':_0x29b4ed(0x1c5),'range':{'start':_0x179785,'end':this[_0x29b4ed(0x1c0)][_0x29b4ed(0x14e)]()},'token':_0x30c681}),this[_0x29b4ed(0x1c0)][this[_0x29b4ed(0x1c0)][_0x29b4ed(0x164)]-0x1]=_0x179785[this[_0x29b4ed(0x1c0)][_0x29b4ed(0x164)]-0x1]+0x1;}}}else(_0x29b4ed(0x17f)!=_0xb49479||this[_0x29b4ed(0x1df)])&&this[_0x29b4ed(0x18e)](_0x30c681);}}[_0x5e5cb0(0x1b3)](_0x578c80,_0x33365a){const _0x4292e3=_0x5e5cb0;for(let _0x434435=0x0;_0x434435<_0x578c80[_0x4292e3(0x164)];_0x434435++){const _0x25e588=_0x578c80[_0x434435];if(_0x4292e3(0x1a7)==_0x25e588[_0x4292e3(0x180)]&&_0x25e588[_0x4292e3(0x1a0)]){const _0x3538c6=_0x33365a[_0x434435];_0x4292e3(0x1aa)==_0x25e588[_0x4292e3(0x17b)]&&this[_0x4292e3(0x170)](_0x25e588[_0x4292e3(0x1a7)],_0x3538c6[_0x4292e3(0x1a7)],this[_0x4292e3(0x1c0)]),this[_0x4292e3(0x179)](_0x25e588[_0x4292e3(0x1a7)],_0x3538c6[_0x4292e3(0x1a7)],this[_0x4292e3(0x1c0)]),this[_0x4292e3(0x1c0)][_0x4292e3(0x18a)](0x0),this[_0x4292e3(0x166)][_0x4292e3(0x18a)](_0x3538c6);}else{if(_0x4292e3(0x1a7)!=_0x25e588[_0x4292e3(0x180)]||_0x25e588[_0x4292e3(0x1a0)]){if(_0x4292e3(0x149)==_0x25e588[_0x4292e3(0x180)]){const _0x23bb8e=this[_0x4292e3(0x1c0)][_0x4292e3(0x14e)](),_0x4f3ba8=[],_0x217087=[];for(;_0x578c80[_0x434435]&&_0x4292e3(0x149)==_0x578c80[_0x434435][_0x4292e3(0x180)];)_0x4f3ba8[_0x4292e3(0x18a)](_0x578c80[_0x434435]),_0x217087[_0x4292e3(0x18a)](_0x33365a[_0x434435]),this[_0x4292e3(0x1c0)][this[_0x4292e3(0x1c0)][_0x4292e3(0x164)]-0x1]+=_0x578c80[_0x434435][_0x4292e3(0x1c6)][_0x4292e3(0x164)],_0x434435++;_0x434435--,this[_0x4292e3(0x1c7)](_0x4f3ba8,_0x217087,_0x23bb8e);}}else this[_0x4292e3(0x1c0)][_0x4292e3(0x1d2)](),this[_0x4292e3(0x1c0)][this[_0x4292e3(0x1c0)][_0x4292e3(0x164)]-0x1]++,this[_0x4292e3(0x166)][_0x4292e3(0x1d2)]();}}}[_0x5e5cb0(0x151)](_0x24b63b,_0x327b5c,_0x504430){const _0x5056b5=_0x5e5cb0,_0x17b325=[],_0x4f7b0c=[],_0x399a79=_0x504430[_0x5056b5(0x14e)]();for(let _0x3fca4f=0x0;_0x3fca4f<_0x24b63b[_0x5056b5(0x164)];_0x3fca4f++){const _0x1b31fc=_0x24b63b[_0x3fca4f],_0x4c612d=_0x504430[_0x5056b5(0x14e)]();if(_0x5056b5(0x1a7)!=_0x1b31fc[_0x5056b5(0x180)]||_0x1b31fc[_0x5056b5(0x1a0)])_0x5056b5(0x1a7)==_0x1b31fc[_0x5056b5(0x180)]&&_0x1b31fc[_0x5056b5(0x1a0)]?(_0x504430[_0x5056b5(0x18a)](0x0),_0x327b5c||this[_0x5056b5(0x166)][_0x5056b5(0x18a)](_0x1b31fc),_0x4f7b0c[_0x5056b5(0x18a)]({'before':_0x4c612d,'after':_0x504430[_0x5056b5(0x14e)](),'index':_0x3fca4f})):_0x504430[_0x504430[_0x5056b5(0x164)]-0x1]+=_0x1b31fc[_0x5056b5(0x1c6)][_0x5056b5(0x164)];else{let _0x4e1a74;_0x504430[_0x5056b5(0x1d2)](),_0x504430[_0x504430[_0x5056b5(0x164)]-0x1]++,_0x4e1a74=_0x327b5c?this[_0x5056b5(0x166)][this[_0x5056b5(0x166)][_0x5056b5(0x164)]-0x1]:this[_0x5056b5(0x166)][_0x5056b5(0x1d2)](),_0x4f7b0c[_0x5056b5(0x164)]?_0x4f7b0c[_0x5056b5(0x1d2)]():_0x17b325[_0x5056b5(0x18a)]({'before':_0x4c612d,'after':_0x504430[_0x5056b5(0x14e)](),'index':_0x3fca4f,'related':_0x4e1a74});}}if(_0x4f7b0c[_0x5056b5(0x164)]!==_0x17b325[_0x5056b5(0x164)])throw new _0x58d651(_0x5056b5(0x1a4),null,{'tokens':_0x24b63b,'isRemove':_0x327b5c});const _0x34814e=[{'after':_0x399a79[_0x5056b5(0x14e)](),'index':-0x1},..._0x17b325,..._0x4f7b0c,{'before':_0x504430[_0x5056b5(0x14e)](),'index':_0x24b63b[_0x5056b5(0x164)]}];if(_0x327b5c){for(let _0xa0430c=_0x34814e[_0x5056b5(0x164)]-0x1;_0xa0430c>=0x1;_0xa0430c--){const _0x413977=_0x34814e[_0xa0430c-0x1][_0x5056b5(0x143)],_0x38581c=_0x34814e[_0xa0430c][_0x5056b5(0x15f)],_0x3fde08=_0x38581c[_0x38581c[_0x5056b5(0x164)]-0x1]-_0x413977[_0x413977[_0x5056b5(0x164)]-0x1];_0x3fde08&&(this[_0x5056b5(0x1b0)][_0x5056b5(0x18a)]({'type':_0x5056b5(0x19a),'path':_0x413977,'howMany':_0x3fde08}),_0x38581c[_0x38581c[_0x5056b5(0x164)]-0x1]-=_0x3fde08);}for(const {before:_0xff6025}of _0x17b325)this[_0x5056b5(0x1b0)][_0x5056b5(0x18a)]({'type':_0x5056b5(0x1e1),'path':_0xff6025});}else for(let _0xc600c4=0x0;_0xc600c4<_0x34814e[_0x5056b5(0x164)]-0x1;_0xc600c4++){const _0xfa6902=_0x34814e[_0xc600c4][_0x5056b5(0x143)],_0xaf964=_0x34814e[_0xc600c4+0x1][_0x5056b5(0x15f)],_0x3299e1=_0x34814e[_0xc600c4][_0x5056b5(0x1b7)]+0x1,_0x1a3b31=_0x34814e[_0xc600c4+0x1][_0x5056b5(0x1b7)];if(_0x3299e1!==_0x1a3b31&&this[_0x5056b5(0x1b0)][_0x5056b5(0x18a)]({'type':_0x5056b5(0x1ca),'path':_0xfa6902,'tokens':_0x24b63b[_0x5056b5(0x14e)](_0x3299e1,_0x1a3b31)}),_0xc600c4<_0x17b325[_0x5056b5(0x164)]){this[_0x5056b5(0x1b0)][_0x5056b5(0x18a)]({'type':_0x5056b5(0x182),'path':_0xaf964});const _0x2cf985=_0x24b63b[_0x4f7b0c[_0x4f7b0c[_0x5056b5(0x164)]-0x1-_0xc600c4][_0x5056b5(0x1b7)]],_0x1c0da5=_0x17b325[_0xc600c4][_0x5056b5(0x143)],_0x5ecf79=_0x17b325[_0xc600c4][_0x5056b5(0x1ba)][_0x5056b5(0x1a7)];this[_0x5056b5(0x170)](_0x5ecf79,_0x2cf985[_0x5056b5(0x1a7)],_0x1c0da5),this[_0x5056b5(0x179)](_0x5ecf79,_0x2cf985[_0x5056b5(0x1a7)],_0x1c0da5);}}}[_0x5e5cb0(0x18e)](_0x575dff){const _0x8b6716=_0x5e5cb0;_0x8b6716(0x1a7)==_0x575dff[_0x8b6716(0x180)]&&_0x575dff[_0x8b6716(0x1a0)]?(this[_0x8b6716(0x1c0)][_0x8b6716(0x18a)](0x0),this[_0x8b6716(0x166)][_0x8b6716(0x18a)](_0x575dff)):_0x8b6716(0x1a7)!=_0x575dff[_0x8b6716(0x180)]||_0x575dff[_0x8b6716(0x1a0)]?_0x8b6716(0x149)==_0x575dff[_0x8b6716(0x180)]&&(this[_0x8b6716(0x1c0)][this[_0x8b6716(0x1c0)][_0x8b6716(0x164)]-0x1]+=_0x575dff[_0x8b6716(0x1c6)][_0x8b6716(0x164)]):(this[_0x8b6716(0x1c0)][_0x8b6716(0x1d2)](),this[_0x8b6716(0x1c0)][this[_0x8b6716(0x1c0)][_0x8b6716(0x164)]-0x1]++,this[_0x8b6716(0x166)][_0x8b6716(0x1d2)]());}[_0x5e5cb0(0x170)](_0x5b606c,_0x53ae05,_0x4e63c7){const _0x1d6f74=_0x5e5cb0;_0x5b606c[_0x1d6f74(0x1a9)]!=_0x53ae05[_0x1d6f74(0x1a9)]&&this[_0x1d6f74(0x1b0)][_0x1d6f74(0x18a)]({'type':_0x1d6f74(0x1d6),'path':_0x4e63c7[_0x1d6f74(0x14e)](),'oldName':_0x5b606c[_0x1d6f74(0x1a9)],'newName':_0x53ae05[_0x1d6f74(0x1a9)]});}[_0x5e5cb0(0x179)](_0x34f46f,_0x73b7fd,_0x274398){const _0x2d55fe=_0x5e5cb0,_0x344c7e=this[_0x2d55fe(0x156)](_0x34f46f[_0x2d55fe(0x171)](),_0x73b7fd[_0x2d55fe(0x171)]());for(const _0x1c6e06 in _0x344c7e){const {oldValue:_0x5024da,newValue:_0x5b94f8}=_0x344c7e[_0x1c6e06];this[_0x2d55fe(0x1b0)][_0x2d55fe(0x18a)]({'type':_0x2d55fe(0x1d4),'path':_0x274398[_0x2d55fe(0x14e)](),'howMany':0x1,'key':_0x1c6e06,'oldValue':_0x5024da,'newValue':_0x5b94f8});}}[_0x5e5cb0(0x1c7)](_0xf73161,_0x3f8161,_0x302044){const _0x413d83=_0x5e5cb0,_0x22e9fc=this[_0x413d83(0x1b0)],_0x2e724b=_0xf73161[0x0][_0x413d83(0x195)],_0x3b12e5=_0xf73161[0x0][_0x413d83(0x167)],_0x442700=_0x3f8161[0x0][_0x413d83(0x195)],_0x2bfbbe=_0x3f8161[0x0][_0x413d83(0x167)],_0x33395d=_0xf73161[_0x413d83(0x14c)]((_0x33ec6e,_0x5392a1)=>_0x33ec6e+_0x5392a1[_0x413d83(0x1c6)][_0x413d83(0x164)],0x0),_0x5297b4=this[_0x413d83(0x144)](_0x2e724b,_0x3b12e5,_0x33395d),_0x19829=this[_0x413d83(0x144)](_0x442700,_0x2bfbbe,_0x33395d),_0x5793dc={};for(let _0x4afbe7=0x0;_0x4afbe7<_0x33395d;_0x4afbe7++){const _0x2d9ee5=_0x5297b4[_0x3b12e5+_0x4afbe7],_0x53cb7e=_0x19829[_0x2bfbbe+_0x4afbe7],_0x3982c9=this[_0x413d83(0x156)](_0x2d9ee5,_0x53cb7e);for(const _0x5753bd in _0x5793dc)_0x3982c9[_0x5753bd]||_0x29ff7a(_0x5753bd);for(const _0x28dee2 in _0x3982c9){const {oldValue:_0x1bc61b,newValue:_0x1852f3}=_0x3982c9[_0x28dee2],_0x19f66a=_0x5793dc[_0x28dee2];_0x19f66a?_0x19f66a[_0x413d83(0x163)]==_0x1bc61b&&_0x19f66a[_0x413d83(0x183)]==_0x1852f3?_0x19f66a[_0x413d83(0x164)]++:(_0x29ff7a(_0x28dee2),_0x5793dc[_0x28dee2]={'oldValue':_0x1bc61b,'newValue':_0x1852f3,'start':_0x4afbe7,'length':0x1}):_0x5793dc[_0x28dee2]={'oldValue':_0x1bc61b,'newValue':_0x1852f3,'start':_0x4afbe7,'length':0x1};}}for(const _0x234b62 in _0x5793dc)_0x29ff7a(_0x234b62);function _0x29ff7a(_0x35e280){const _0x1cf120=_0x413d83,_0x1b4e78=_0x5793dc[_0x35e280],_0x359e34=_0x302044[_0x1cf120(0x14e)]();_0x359e34[_0x359e34[_0x1cf120(0x164)]-0x1]+=_0x1b4e78[_0x1cf120(0x13c)],_0x22e9fc[_0x1cf120(0x18a)]({'type':_0x1cf120(0x1d4),'path':_0x359e34,'howMany':_0x1b4e78[_0x1cf120(0x164)],'key':_0x35e280,'oldValue':_0x1b4e78[_0x1cf120(0x163)],'newValue':_0x1b4e78[_0x1cf120(0x183)]}),delete _0x5793dc[_0x35e280];}}[_0x5e5cb0(0x156)](_0x285285,_0x1cbea2){const _0x5ca71e=_0x5e5cb0,_0x2f6119={};for(const [_0x193c2b,_0x12f6b2]of _0x285285)_0x2f6119[_0x193c2b]={'oldValue':JSON[_0x5ca71e(0x148)](_0x12f6b2),'newValue':_0x5ca71e(0x135)};for(const [_0x4aecc6,_0xf9612b]of _0x1cbea2){const _0x4788e4=JSON[_0x5ca71e(0x148)](_0xf9612b);_0x2f6119[_0x4aecc6]?_0x2f6119[_0x4aecc6][_0x5ca71e(0x163)]==_0x4788e4?delete _0x2f6119[_0x4aecc6]:_0x2f6119[_0x4aecc6][_0x5ca71e(0x183)]=_0x4788e4:_0x2f6119[_0x4aecc6]={'oldValue':_0x5ca71e(0x135),'newValue':_0x4788e4};}return delete _0x2f6119[_0x5ca71e(0x157)],_0x2f6119;}[_0x5e5cb0(0x144)](_0x5daaa8,_0x325506,_0x590568){const _0x557b08=_0x5e5cb0,_0x2cf036=new Array(_0x325506+_0x590568);let _0x2ee47f=_0x5daaa8[_0x557b08(0x1cb)](_0x325506),_0x3985d2=_0x2ee47f[_0x557b08(0x1c2)];for(;_0x2ee47f&&_0x3985d2<_0x325506+_0x590568;){const _0x48facf=Array[_0x557b08(0x1bf)](_0x2ee47f[_0x557b08(0x171)]());_0x2cf036[_0x557b08(0x1dc)](_0x48facf,_0x3985d2,_0x3985d2+_0x2ee47f[_0x557b08(0x16d)]),_0x3985d2+=_0x2ee47f[_0x557b08(0x16d)],_0x2ee47f=_0x2ee47f[_0x557b08(0x1ac)];}return _0x2cf036;}[_0x5e5cb0(0x1be)](_0x1e8a7e,_0xd276b8){const _0x3a528a=_0x5e5cb0,_0x4c8637=[..._0x1e8a7e[_0x3a528a(0x19f)][_0x3a528a(0x14e)](0x0,-0x1),_0x1e8a7e[_0x3a528a(0x167)]+_0xd276b8[0x0],..._0xd276b8[_0x3a528a(0x14e)](0x1)];return new _0x4b0d00(_0x1e8a7e[_0x3a528a(0x19c)],_0x4c8637);}[_0x5e5cb0(0x199)](_0x2710b2){const _0x220ee7=_0x5e5cb0,_0x142d08=[];let _0x29ad26=null;for(const _0x248967 of _0x2710b2)if(_0x220ee7(0x1a7)!=_0x248967[_0x220ee7(0x180)]||_0x248967[_0x220ee7(0x1a0)]||_0x29ad26!=_0x248967[_0x220ee7(0x1a7)]){if(!_0x29ad26){if(_0x220ee7(0x149)==_0x248967[_0x220ee7(0x180)]){const _0x3cbfb8=_0x4b0d00[_0x220ee7(0x15a)](_0x248967[_0x220ee7(0x195)],_0x248967[_0x220ee7(0x167)]),_0x4359a0=_0x3cf270[_0x220ee7(0x14b)](_0x3cbfb8,_0x248967[_0x220ee7(0x1c6)][_0x220ee7(0x164)]),_0x331198=Array[_0x220ee7(0x1bf)](_0x4359a0[_0x220ee7(0x1d5)]())[_0x220ee7(0x191)](_0x4fe2d7=>new _0x30b0ac(_0x4fe2d7[_0x220ee7(0x1c6)],_0x4fe2d7[_0x220ee7(0x171)]()));_0x142d08[_0x220ee7(0x18a)](..._0x331198);}else{_0x29ad26=_0x248967[_0x220ee7(0x1a7)];const _0x43c4ea=_0x248967[_0x220ee7(0x1a7)][_0x220ee7(0x1bb)](!0x0);_0x43c4ea[_0x220ee7(0x1b5)](_0x220ee7(0x157));for(const _0x3847b9 of this[_0x220ee7(0x17c)][_0x220ee7(0x18f)][_0x220ee7(0x132)](_0x43c4ea)[_0x220ee7(0x1d5)]())_0x3847b9['is'](_0x220ee7(0x1a7))&&_0x3847b9[_0x220ee7(0x1b5)](_0x220ee7(0x157));_0x142d08[_0x220ee7(0x18a)](_0x43c4ea);}}}else _0x29ad26=null;return _0x142d08;}}function _0xea0e(_0x4bdc49,_0x3010e9){const _0x423815=_0x4238();return _0xea0e=function(_0xea0e2b,_0x5a3dce){_0xea0e2b=_0xea0e2b-0x132;let _0x29fe31=_0x423815[_0xea0e2b];return _0x29fe31;},_0xea0e(_0x4bdc49,_0x3010e9);}function g(_0x275495,_0x240ed6){const _0x27a185=_0x5e5cb0;return _0x275495[_0x27a185(0x180)]===_0x240ed6[_0x27a185(0x180)]&&(_0x275495[_0x27a185(0x1bc)]===_0x240ed6[_0x27a185(0x1bc)]&&(_0x27a185(0x149)==_0x275495[_0x27a185(0x180)]?_0x275495[_0x27a185(0x1c6)]==_0x240ed6[_0x27a185(0x1c6)]:function(_0x49d18f,_0x5c38f1){const _0x25e5f5=_0x27a185;if(_0x49d18f[_0x25e5f5(0x1a0)]!=_0x5c38f1[_0x25e5f5(0x1a0)])return!0x1;if(_0x49d18f[_0x25e5f5(0x1a0)]&&_0x49d18f[_0x25e5f5(0x1b2)]!=_0x5c38f1[_0x25e5f5(0x1b2)])return!0x1;if(_0x49d18f[_0x25e5f5(0x17b)]!=_0x5c38f1[_0x25e5f5(0x17b)])return!0x1;if(_0x25e5f5(0x1aa)==_0x49d18f[_0x25e5f5(0x17b)])return!0x0;if(_0x25e5f5(0x1af)==_0x49d18f[_0x25e5f5(0x17b)]&&_0x49d18f[_0x25e5f5(0x1b2)]!=_0x5c38f1[_0x25e5f5(0x1b2)])return!0x1;return _0x49d18f[_0x25e5f5(0x1a7)][_0x25e5f5(0x1a9)]==_0x5c38f1[_0x25e5f5(0x1a7)][_0x25e5f5(0x1a9)];}(_0x275495,_0x240ed6)));}function _(_0x342409){const _0x1df211=_0x5e5cb0;return _0x120528({'name':_0x342409[_0x1df211(0x1a9)],...Object[_0x1df211(0x18c)](_0x342409[_0x1df211(0x171)]())});}function _0x4238(){const _0x555694=['version','oldValue','length','createPositionAt','_parents','offset','token','documentcompare-compare-no-root','tokens','_diffItems','_tokenizeModel','offsetSize','startsWith','forEach','_handleElementRename','getAttributes','_getElementCategory','documentcompare-no-editor','12HTTaYD','markers','addAttributeCheck','filter','getPath','_handleElementAttributeChanges','set','category','_editor','context','_makeTokensFromTextByWords','removed','type','lowest','split','newValue','maxOffset','conversion','first','value','29867030oUhvOk','flatMap','push','DocumentCompare','fromEntries','added','_traverseOverItem','model','$textProxy','map','_calculateOperationsData','schema','1106900YYItqO','parent','listenTo','data-id','end','_makeModelFromTokens','remove','graveyard','root','anchor','getRoot','path','isStart','previousPosition','_createIn','for','model-diff-incorrect-matching-and-closing-tags','isOfficialPlugin','get','element','unwrap','name','block','oldName','nextSibling','1974JvFRtC','string','container','_operationsData','isLimit','elementId','_handleUnchanged','clone','_removeAttribute','shift','index','_handleUnclosedBlockOpeningTags','12yPiBHt','related','_clone','limitId','33968YvCoLU','_getPositionFromAnchorAndPath','from','_path','howMany','startOffset','unchanged','getShiftedBy','wrap','data','_handleTextAttributeChanges','_calculateMarkersOperationsData','_handleWraps','insert','getChildAtOffset','solid','875294fyxMZn','getOperations','getOperationsData','unshift','isContent','pop','elementStart','attribute','getItems','rename','viewItem','_diffModelTokens','init','parse','elementEnd','fill','getDiff','document','_markDeletions','NEGATIVE_INFINITY','merge','$markedRemove','editor','487836PTODvY','createRangeIn','sort','writer','null','item','upcast','isBlock','newName','markedRemove','_anchor','start','getAttribute','setAttribute','8461830UspbCI','_findUnclosedBlockOpeningToken','$markedRemove:','modelRange','after','_getAttrsForOffsets','markDeletions','isPremiumPlugin','main','stringify','text','isInline','_createFromPositionAndShift','reduce','key','slice','add','_integrateEditor','_handleChanged','editors','change','marker','isMarkedRemoveOperation','_getAttributeChanges','$elementId','entries','ready','_createAt','pluginName','_handleUnwraps','95772XqKLFX','splice','before','matchAll','range'];_0x4238=function(){return _0x555694;};return _0x4238();}