@ckeditor/ckeditor-cloud-services-collaboration 52.3.1 → 52.4.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 (113) hide show
  1. package/dist/index.js +1 -1
  2. package/dist/index.js.map +1 -1
  3. package/package.json +1 -1
  4. package/src/ckeditorcloudserviceserror.js +1 -1
  5. package/src/ckeditorcloudservicesservererror.js +1 -1
  6. package/src/collaborativeeditingservice/collaborativeeditingservice.d.ts +1 -1
  7. package/src/collaborativeeditingservice/collaborativeeditingservice.js +1 -1
  8. package/src/collaborativeeditingservice/descriptors/operationmetadatadescriptor.js +1 -1
  9. package/src/collaborativeeditingservice/helpers/operationmetadatahelpers.js +1 -1
  10. package/src/collaborativeeditingservice/messages/collaborativeeditingconnectmessage.js +1 -1
  11. package/src/collaborativeeditingservice/messages/collaborativeeditingreconnectmessage.js +1 -1
  12. package/src/collaborativeeditingservice/messages/collaborativeeditingupdatemessage.js +1 -1
  13. package/src/collaborativeeditingservice/messages/getdocumentdetailsmessage.js +1 -1
  14. package/src/collaborativeeditingservice/responses/collaborativeeditingconnectresponse.js +1 -1
  15. package/src/collaborativeeditingservice/responses/collaborativeeditingresponse.js +1 -1
  16. package/src/collaborativeeditingservice/responses/getdocumentdetailsresponse.js +1 -1
  17. package/src/comments-v2/commentsservice.d.ts +1 -1
  18. package/src/comments-v2/commentsservice.js +1 -1
  19. package/src/comments-v2/descriptors/commentdescriptor.js +1 -1
  20. package/src/comments-v2/descriptors/commentsthreaddescriptor.js +1 -1
  21. package/src/comments-v2/descriptors/commentthreadaddedcomment.js +1 -1
  22. package/src/comments-v2/messages/addcommentmessage.js +1 -1
  23. package/src/comments-v2/messages/comment-threads/addcommentthreadmessage.js +1 -1
  24. package/src/comments-v2/messages/comment-threads/reopencommentthreadmessage.js +1 -1
  25. package/src/comments-v2/messages/comment-threads/resolvecommentthreadmessage.js +1 -1
  26. package/src/comments-v2/messages/comment-threads/updatecommentthreadmessage.js +1 -1
  27. package/src/comments-v2/messages/connectmessage.js +1 -1
  28. package/src/comments-v2/messages/getcommentthreadmessage.js +1 -1
  29. package/src/comments-v2/messages/getdocumentthreadsmessage.js +1 -1
  30. package/src/comments-v2/messages/removecommentmessage.js +1 -1
  31. package/src/comments-v2/messages/removecommentthreadmessage.js +1 -1
  32. package/src/comments-v2/messages/updatecommentmessage.js +1 -1
  33. package/src/comments-v2/responses/addcommentresponse.js +1 -1
  34. package/src/comments-v2/responses/comment-threads/addcommentthreadresponse.js +1 -1
  35. package/src/comments-v2/responses/comment-threads/resolvecommentthreadresponse.js +1 -1
  36. package/src/comments-v2/responses/connectresponse.js +1 -1
  37. package/src/comments-v2/responses/getcommentthreadresponse.js +1 -1
  38. package/src/comments-v2/responses/getdocumentthreadsresponse.js +1 -1
  39. package/src/compiledmessages.js +1 -1
  40. package/src/descriptor.js +1 -1
  41. package/src/descriptors/keyvaluedescriptor.js +1 -1
  42. package/src/editor/editorservice.d.ts +1 -1
  43. package/src/editor/editorservice.js +1 -1
  44. package/src/editor/messages/iseditorbundleuploadedmessage.js +1 -1
  45. package/src/editor/responses/iseditorbundleuploadedresponse.js +1 -1
  46. package/src/errors/ServiceNotConnectedError.js +1 -1
  47. package/src/index.js +1 -1
  48. package/src/message.js +1 -1
  49. package/src/messagescompressor.js +1 -1
  50. package/src/messagesmapper.js +1 -1
  51. package/src/revision-history/descriptors/revisiondescriptor.js +1 -1
  52. package/src/revision-history/messages/revisionhistoryconnectmessage.js +1 -1
  53. package/src/revision-history/messages/revisionhistorygetrevisionmessage.js +1 -1
  54. package/src/revision-history/messages/revisionhistoryreconnectmessage.js +1 -1
  55. package/src/revision-history/messages/revisionhistoryupdaterevisionsmessage.js +1 -1
  56. package/src/revision-history/responses/revisionhistoryconnectresponse.js +1 -1
  57. package/src/revision-history/responses/revisionhistorygetrevisionresponse.js +1 -1
  58. package/src/revision-history/responses/revisionhistoryupdaterevisionsresponse.js +1 -1
  59. package/src/revision-history/revisionhistoryservice.d.ts +1 -1
  60. package/src/revision-history/revisionhistoryservice.js +1 -1
  61. package/src/sessions/descriptors/sessiondescriptor.js +1 -1
  62. package/src/sessions/messages/sessionsconnectmessage.js +1 -1
  63. package/src/sessions/messages/socketconnectmessage.js +1 -1
  64. package/src/sessions/messages/socketdisconnectmessage.js +1 -1
  65. package/src/sessions/responses/sessionsconnectresponse.js +1 -1
  66. package/src/sessions/sessioncollection.js +1 -1
  67. package/src/sessions/sessions.js +1 -1
  68. package/src/track-changes/descriptors/suggestiondescriptor.js +1 -1
  69. package/src/track-changes/messages/addsuggestionmessage.js +1 -1
  70. package/src/track-changes/messages/batchUpdateSuggestionsStateMessage.js +1 -1
  71. package/src/track-changes/messages/connectmessage.js +1 -1
  72. package/src/track-changes/messages/getallsuggestionsmessage.js +1 -1
  73. package/src/track-changes/messages/getsuggestionmessage.js +1 -1
  74. package/src/track-changes/messages/updatesuggestionmessage.js +1 -1
  75. package/src/track-changes/responses/addsuggestionresponse.js +1 -1
  76. package/src/track-changes/responses/connectresponse.js +1 -1
  77. package/src/track-changes/responses/getallsuggestionsresponse.js +1 -1
  78. package/src/track-changes/responses/getsuggestionresponse.js +1 -1
  79. package/src/track-changes/trackchangesservice.d.ts +1 -1
  80. package/src/track-changes/trackchangesservice.js +1 -1
  81. package/src/users/descriptors/userdescriptor.js +1 -1
  82. package/src/users/messages/getmanyusersmessage.js +1 -1
  83. package/src/users/messages/getusermessage.js +1 -1
  84. package/src/users/responses/getmanyusersresponse.js +1 -1
  85. package/src/users/responses/getuserresponse.js +1 -1
  86. package/src/users/user.js +1 -1
  87. package/src/version.d.ts +1 -1
  88. package/src/version.js +1 -1
  89. package/src/websocketgateway/channel.d.ts +1 -1
  90. package/src/websocketgateway/channel.js +1 -1
  91. package/src/websocketgateway/messages/channelmessage.js +1 -1
  92. package/src/websocketgateway/parser/packetparser.js +1 -1
  93. package/src/websocketgateway/parser/packets/bytesbytespacketdatamessage.js +1 -1
  94. package/src/websocketgateway/parser/packets/numberbytespacketdatamessage.js +1 -1
  95. package/src/websocketgateway/parser/packets/numbernumberpacketdatamessag.js +1 -1
  96. package/src/websocketgateway/parser/packets/numberobjectpacketdatamessage.js +1 -1
  97. package/src/websocketgateway/parser/packets/numberstringpacketdatamessag.js +1 -1
  98. package/src/websocketgateway/parser/packets/objectbufferpacketdatamessage.js +1 -1
  99. package/src/websocketgateway/parser/packets/objectobjectpacketdatamessage.js +1 -1
  100. package/src/websocketgateway/parser/packets/packagedatamessage.js +1 -1
  101. package/src/websocketgateway/parser/packets/packetmessage.js +1 -1
  102. package/src/websocketgateway/parser/packets/packetoptionsmessage.js +1 -1
  103. package/src/websocketgateway/parser/packets/stringbytespacketdatamessage.js +1 -1
  104. package/src/websocketgateway/parser/packets/stringnumberpacketdatamessage.js +1 -1
  105. package/src/websocketgateway/parser/packets/stringobjectpacketdatamessage.js +1 -1
  106. package/src/websocketgateway/parser/packets/stringstringpacketdatamessage.js +1 -1
  107. package/src/websocketgateway/parser/parser.js +1 -1
  108. package/src/websocketgateway/parser/parserutils.js +1 -1
  109. package/src/websocketgateway/requestsmanager.js +1 -1
  110. package/src/websocketgateway/websocketgateway.d.ts +1 -1
  111. package/src/websocketgateway/websocketgateway.js +1 -1
  112. /package/dist/{content-index.css → index-content.css} +0 -0
  113. /package/dist/{editor-index.css → index-editor.css} +0 -0
package/dist/index.js CHANGED
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- import _0x3a89fe from'url-parse';import{EmitterMixin,ObservableMixin,priorities,global,Collection}from'@ckeditor/ckeditor5-utils/dist/index.js';import $protobuf from'protobufjs/minimal.js';import{v4}from'uuid';const PACKET_TYPES=Object['create'](null);PACKET_TYPES['open']='0',PACKET_TYPES['close']='1',PACKET_TYPES['ping']='2',PACKET_TYPES['pong']='3',PACKET_TYPES['message']='4',PACKET_TYPES['upgrade']='5',PACKET_TYPES['noop']='6';const PACKET_TYPES_REVERSE=Object['create'](null);Object['keys'](PACKET_TYPES)['forEach'](_0x4e9a04=>{PACKET_TYPES_REVERSE[PACKET_TYPES[_0x4e9a04]]=_0x4e9a04;});const ERROR_PACKET={'type':'error','data':'parser\x20error'},withNativeBlob$1='function'==typeof Blob||'undefined'!=typeof Blob&&'[object\x20BlobConstructor]'===Object['prototype']['toString']['call'](Blob),withNativeArrayBuffer$2='function'==typeof ArrayBuffer,encodePacket=({type:type,data:data},supportsBinary,_0x8d6e99)=>{return withNativeBlob$1&&data instanceof Blob?supportsBinary?_0x8d6e99(data):encodeBlobAsBase64(data,_0x8d6e99):withNativeArrayBuffer$2&&(data instanceof ArrayBuffer||(_0x507152=data,'function'==typeof ArrayBuffer['isView']?ArrayBuffer['isView'](_0x507152):_0x507152&&_0x507152['buffer']instanceof ArrayBuffer))?supportsBinary?_0x8d6e99(data):encodeBlobAsBase64(new Blob([data]),_0x8d6e99):_0x8d6e99(PACKET_TYPES[type]+(data||''));var _0x507152;},encodeBlobAsBase64=(data,_0x1fb7d4)=>{const _0x5fa18b=new FileReader();return _0x5fa18b['onload']=function(){const content=_0x5fa18b['result']['split'](',')[0x1];_0x1fb7d4('b'+(content||''));},_0x5fa18b['readAsDataURL'](data);},chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',lookup$1='undefined'==typeof Uint8Array?[]:new Uint8Array(0x100);for(let i=0x0;i<0x40;i++)lookup$1[chars['charCodeAt'](i)]=i;const withNativeArrayBuffer$1='function'==typeof ArrayBuffer,decodePacket=(encodedPacket,_0x9d7433)=>{if('string'!=typeof encodedPacket)return{'type':'message','data':mapBinary(encodedPacket,_0x9d7433)};const type=encodedPacket['charAt'](0x0);if('b'===type)return{'type':'message','data':decodeBase64Packet(encodedPacket['substring'](0x1),_0x9d7433)};return PACKET_TYPES_REVERSE[type]?encodedPacket['length']>0x1?{'type':PACKET_TYPES_REVERSE[type],'data':encodedPacket['substring'](0x1)}:{'type':PACKET_TYPES_REVERSE[type]}:ERROR_PACKET;},decodeBase64Packet=(data,_0x3f2ee3)=>{if(withNativeArrayBuffer$1){const _0x5d637c=(_0x13f94a=>{let _0x173a42,_0x496013,_0x20972c,_0xff6a31,_0x19f384,bufferLength=0.75*_0x13f94a['length'],_0x35594f=_0x13f94a['length'],_0x510c49=0x0;'='===_0x13f94a[_0x13f94a['length']-0x1]&&(bufferLength--,'='===_0x13f94a[_0x13f94a['length']-0x2]&&bufferLength--);const _0x14a72c=new ArrayBuffer(bufferLength),bytes=new Uint8Array(_0x14a72c);for(_0x173a42=0x0;_0x173a42<_0x35594f;_0x173a42+=0x4)_0x496013=lookup$1[_0x13f94a['charCodeAt'](_0x173a42)],_0x20972c=lookup$1[_0x13f94a['charCodeAt'](_0x173a42+0x1)],_0xff6a31=lookup$1[_0x13f94a['charCodeAt'](_0x173a42+0x2)],_0x19f384=lookup$1[_0x13f94a['charCodeAt'](_0x173a42+0x3)],bytes[_0x510c49++]=_0x496013<<0x2|_0x20972c>>0x4,bytes[_0x510c49++]=(0xf&_0x20972c)<<0x4|_0xff6a31>>0x2,bytes[_0x510c49++]=(0x3&_0xff6a31)<<0x6|0x3f&_0x19f384;return _0x14a72c;})(data);return mapBinary(_0x5d637c,_0x3f2ee3);}return{'base64':!0x0,'data':data};},mapBinary=(data,_0x31e46f)=>'blob'===_0x31e46f&&data instanceof ArrayBuffer?new Blob([data]):data,SEPARATOR=String['fromCharCode'](0x1e);function Emitter(_0x188f0e){if(_0x188f0e)return function(_0xc4aecb){for(var _0x1bac9e in Emitter['prototype'])_0xc4aecb[_0x1bac9e]=Emitter['prototype'][_0x1bac9e];return _0xc4aecb;}(_0x188f0e);}Emitter['prototype']['on']=Emitter['prototype']['addEventListener']=function(event,_0x16d811){return this['_callbacks']=this['_callbacks']||{},(this['_callbacks']['$'+event]=this['_callbacks']['$'+event]||[])['push'](_0x16d811),this;},Emitter['prototype']['once']=function(event,_0xacb3ac){function _0x3f79d3(){this['off'](event,_0x3f79d3),_0xacb3ac['apply'](this,arguments);}return _0x3f79d3['fn']=_0xacb3ac,this['on'](event,_0x3f79d3),this;},Emitter['prototype']['off']=Emitter['prototype']['removeListener']=Emitter['prototype']['removeAllListeners']=Emitter['prototype']['removeEventListener']=function(event,_0x54be64){if(this['_callbacks']=this['_callbacks']||{},0x0==arguments['length'])return this['_callbacks']={},this;var _0x515390,_0x4b7be4=this['_callbacks']['$'+event];if(!_0x4b7be4)return this;if(0x1==arguments['length'])return delete this['_callbacks']['$'+event],this;for(var _0x2960d6=0x0;_0x2960d6<_0x4b7be4['length'];_0x2960d6++)if((_0x515390=_0x4b7be4[_0x2960d6])===_0x54be64||_0x515390['fn']===_0x54be64){_0x4b7be4['splice'](_0x2960d6,0x1);break;}return 0x0===_0x4b7be4['length']&&delete this['_callbacks']['$'+event],this;},Emitter['prototype']['emit']=function(event){this['_callbacks']=this['_callbacks']||{};for(var _0x4f8775=new Array(arguments['length']-0x1),_0x355a91=this['_callbacks']['$'+event],_0x35db17=0x1;_0x35db17<arguments['length'];_0x35db17++)_0x4f8775[_0x35db17-0x1]=arguments[_0x35db17];if(_0x355a91){_0x35db17=0x0;for(var _0x28b46b=(_0x355a91=_0x355a91['slice'](0x0))['length'];_0x35db17<_0x28b46b;++_0x35db17)_0x355a91[_0x35db17]['apply'](this,_0x4f8775);}return this;},Emitter['prototype']['emitReserved']=Emitter['prototype']['emit'],Emitter['prototype']['listeners']=function(event){return this['_callbacks']=this['_callbacks']||{},this['_callbacks']['$'+event]||[];},Emitter['prototype']['hasListeners']=function(event){return!!this['listeners'](event)['length'];};const globalThisShim='undefined'!=typeof self?self:'undefined'!=typeof window?window:Function('return\x20this')();function pick(_0x39f4e0,...attr){return attr['reduce']((_0x511861,_0x4c1e51)=>(_0x39f4e0['hasOwnProperty'](_0x4c1e51)&&(_0x511861[_0x4c1e51]=_0x39f4e0[_0x4c1e51]),_0x511861),{});}const NATIVE_SET_TIMEOUT=globalThisShim['setTimeout'],NATIVE_CLEAR_TIMEOUT=globalThisShim['clearTimeout'];function installTimerFunctions(_0x2c99a9,opts){opts['useNativeTimers']?(_0x2c99a9['setTimeoutFn']=NATIVE_SET_TIMEOUT['bind'](globalThisShim),_0x2c99a9['clearTimeoutFn']=NATIVE_CLEAR_TIMEOUT['bind'](globalThisShim)):(_0x2c99a9['setTimeoutFn']=globalThisShim['setTimeout']['bind'](globalThisShim),_0x2c99a9['clearTimeoutFn']=globalThisShim['clearTimeout']['bind'](globalThisShim));}class TransportError extends Error{constructor(_0x133105,description,context){super(_0x133105),this['description']=description,this['context']=context,this['type']='TransportError';}}class Transport extends Emitter{constructor(opts){super(),this['writable']=!0x1,installTimerFunctions(this,opts),this['opts']=opts,this['query']=opts['query'],this['socket']=opts['socket'];}['onError'](_0x10b9e9,description,context){return super['emitReserved']('error',new TransportError(_0x10b9e9,description,context)),this;}['open'](){return this['readyState']='opening',this['doOpen'](),this;}['close'](){return'opening'!==this['readyState']&&'open'!==this['readyState']||(this['doClose'](),this['onClose']()),this;}['send'](packets){'open'===this['readyState']&&this['write'](packets);}['onOpen'](){this['readyState']='open',this['writable']=!0x0,super['emitReserved']('open');}['onData'](data){const packet=decodePacket(data,this['socket']['binaryType']);this['onPacket'](packet);}['onPacket'](packet){super['emitReserved']('packet',packet);}['onClose'](details){this['readyState']='closed',super['emitReserved']('close',details);}['pause'](_0x3ba3af){}}const alphabet='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_'['split'](''),length=0x40,map={};let prev,seed=0x0,i=0x0;function encode$1(_0x3b0516){let _0x1bf618='';do{_0x1bf618=alphabet[_0x3b0516%length]+_0x1bf618,_0x3b0516=Math['floor'](_0x3b0516/length);}while(_0x3b0516>0x0);return _0x1bf618;}function yeast(){const _0x19f44d=encode$1(+new Date());return _0x19f44d!==prev?(seed=0x0,prev=_0x19f44d):_0x19f44d+'.'+encode$1(seed++);}for(;i<length;i++)map[alphabet[i]]=i;function encode(_0x1bfebf){let str='';for(let _0x2147e9 in _0x1bfebf)_0x1bfebf['hasOwnProperty'](_0x2147e9)&&(str['length']&&(str+='&'),str+=encodeURIComponent(_0x2147e9)+'='+encodeURIComponent(_0x1bfebf[_0x2147e9]));return str;}let value=!0x1;try{value='undefined'!=typeof XMLHttpRequest&&'withCredentials'in new XMLHttpRequest();}catch(_0x2c31d5){}const hasCORS=value;function XHR(opts){const _0x1bf6fd=opts['xdomain'];try{if('undefined'!=typeof XMLHttpRequest&&(!_0x1bf6fd||hasCORS))return new XMLHttpRequest();}catch(_0x11b4f){}if(!_0x1bf6fd)try{return new globalThisShim[(['Active']['concat']('Object')['join']('X'))]('Microsoft.XMLHTTP');}catch(_0x5e18ec){}}function empty(){}const hasXHR2=null!=new XHR({'xdomain':!0x1})['responseType'];class Request extends Emitter{constructor(_0x38be5f,opts){super(),installTimerFunctions(this,opts),this['opts']=opts,this['method']=opts['method']||'GET',this['uri']=_0x38be5f,this['async']=!0x1!==opts['async'],this['data']=void 0x0!==opts['data']?opts['data']:null,this['create']();}['create'](){const opts=pick(this['opts'],'agent','pfx','key','passphrase','cert','ca','ciphers','rejectUnauthorized','autoUnref');opts['xdomain']=!!this['opts']['xd'],opts['xscheme']=!!this['opts']['xs'];const _0x208975=this['xhr']=new XHR(opts);try{_0x208975['open'](this['method'],this['uri'],this['async']);try{if(this['opts']['extraHeaders']){_0x208975['setDisableHeaderCheck']&&_0x208975['setDisableHeaderCheck'](!0x0);for(let _0x71c2ea in this['opts']['extraHeaders'])this['opts']['extraHeaders']['hasOwnProperty'](_0x71c2ea)&&_0x208975['setRequestHeader'](_0x71c2ea,this['opts']['extraHeaders'][_0x71c2ea]);}}catch(_0x19a35b){}if('POST'===this['method'])try{_0x208975['setRequestHeader']('Content-type','text/plain;charset=UTF-8');}catch(_0x1004a8){}try{_0x208975['setRequestHeader']('Accept','*/*');}catch(_0x422803){}'withCredentials'in _0x208975&&(_0x208975['withCredentials']=this['opts']['withCredentials']),this['opts']['requestTimeout']&&(_0x208975['timeout']=this['opts']['requestTimeout']),_0x208975['onreadystatechange']=()=>{0x4===_0x208975['readyState']&&(0xc8===_0x208975['status']||0x4c7===_0x208975['status']?this['onLoad']():this['setTimeoutFn'](()=>{this['onError']('number'==typeof _0x208975['status']?_0x208975['status']:0x0);},0x0));},_0x208975['send'](this['data']);}catch(_0x2e9513){return void this['setTimeoutFn'](()=>{this['onError'](_0x2e9513);},0x0);}'undefined'!=typeof document&&(this['index']=Request['requestsCount']++,Request['requests'][this['index']]=this);}['onError'](_0x2f233e){this['emitReserved']('error',_0x2f233e,this['xhr']),this['cleanup'](!0x0);}['cleanup'](_0x5433c9){if(void 0x0!==this['xhr']&&null!==this['xhr']){if(this['xhr']['onreadystatechange']=empty,_0x5433c9)try{this['xhr']['abort']();}catch(_0x32b8e5){}'undefined'!=typeof document&&delete Request['requests'][this['index']],this['xhr']=null;}}['onLoad'](){const data=this['xhr']['responseText'];null!==data&&(this['emitReserved']('data',data),this['emitReserved']('success'),this['cleanup']());}['abort'](){this['cleanup']();}}if(Request['requestsCount']=0x0,Request['requests']={},'undefined'!=typeof document){if('function'==typeof attachEvent)attachEvent('onunload',unloadHandler);else'function'==typeof addEventListener&&addEventListener('onpagehide'in globalThisShim?'pagehide':'unload',unloadHandler,!0x1);}function unloadHandler(){for(let _0x54279e in Request['requests'])Request['requests']['hasOwnProperty'](_0x54279e)&&Request['requests'][_0x54279e]['abort']();}const nextTick='function'==typeof Promise&&'function'==typeof Promise['resolve']?_0x31c3f2=>Promise['resolve']()['then'](_0x31c3f2):(_0x320d79,setTimeoutFn)=>setTimeoutFn(_0x320d79,0x0),WebSocket=globalThisShim['WebSocket']||globalThisShim['MozWebSocket'],isReactNative='undefined'!=typeof navigator&&'string'==typeof navigator['product']&&'reactnative'===navigator['product']['toLowerCase'](),transports={'websocket':class extends Transport{constructor(opts){super(opts),this['supportsBinary']=!opts['forceBase64'];}get['name'](){return'websocket';}['doOpen'](){if(!this['check']())return;const _0x48939d=this['uri'](),protocols=this['opts']['protocols'],opts=isReactNative?{}:pick(this['opts'],'agent','perMessageDeflate','pfx','key','passphrase','cert','ca','ciphers','rejectUnauthorized','localAddress','protocolVersion','origin','maxPayload','family','checkServerIdentity');this['opts']['extraHeaders']&&(opts['headers']=this['opts']['extraHeaders']);try{this['ws']=isReactNative?new WebSocket(_0x48939d,protocols,opts):protocols?new WebSocket(_0x48939d,protocols):new WebSocket(_0x48939d);}catch(_0x55ec4d){return this['emitReserved']('error',_0x55ec4d);}this['ws']['binaryType']=this['socket']['binaryType']||'arraybuffer',this['addEventListeners']();}['addEventListeners'](){this['ws']['onopen']=()=>{this['opts']['autoUnref']&&this['ws']['_socket']['unref'](),this['onOpen']();},this['ws']['onclose']=closeEvent=>this['onClose']({'description':'websocket\x20connection\x20closed','context':closeEvent}),this['ws']['onmessage']=_0x4c4394=>this['onData'](_0x4c4394['data']),this['ws']['onerror']=_0x2dd1ae=>this['onError']('websocket\x20error',_0x2dd1ae);}['write'](packets){this['writable']=!0x1;for(let _0x5d3456=0x0;_0x5d3456<packets['length'];_0x5d3456++){const packet=packets[_0x5d3456],lastPacket=_0x5d3456===packets['length']-0x1;encodePacket(packet,this['supportsBinary'],data=>{try{this['ws']['send'](data);}catch(_0x1659a6){}lastPacket&&nextTick(()=>{this['writable']=!0x0,this['emitReserved']('drain');},this['setTimeoutFn']);});}}['doClose'](){void 0x0!==this['ws']&&(this['ws']['close'](),this['ws']=null);}['uri'](){let _0x1344ad=this['query']||{};const _0x475cfb=this['opts']['secure']?'wss':'ws';let port='';this['opts']['port']&&('wss'===_0x475cfb&&0x1bb!==Number(this['opts']['port'])||'ws'===_0x475cfb&&0x50!==Number(this['opts']['port']))&&(port=':'+this['opts']['port']),this['opts']['timestampRequests']&&(_0x1344ad[this['opts']['timestampParam']]=yeast()),this['supportsBinary']||(_0x1344ad['b64']=0x1);const _0x497f79=encode(_0x1344ad);return _0x475cfb+'://'+(-0x1!==this['opts']['hostname']['indexOf'](':')?'['+this['opts']['hostname']+']':this['opts']['hostname'])+port+this['opts']['path']+(_0x497f79['length']?'?'+_0x497f79:'');}['check'](){return!!WebSocket;}},'polling':class extends Transport{constructor(opts){if(super(opts),this['polling']=!0x1,'undefined'!=typeof location){const _0x45d063='https:'===location['protocol'];let port=location['port'];port||(port=_0x45d063?'443':'80'),this['xd']='undefined'!=typeof location&&opts['hostname']!==location['hostname']||port!==opts['port'],this['xs']=opts['secure']!==_0x45d063;}const _0x4721ea=opts&&opts['forceBase64'];this['supportsBinary']=hasXHR2&&!_0x4721ea;}get['name'](){return'polling';}['doOpen'](){this['poll']();}['pause'](_0x133ec5){this['readyState']='pausing';const _0x152ba9=()=>{this['readyState']='paused',_0x133ec5();};if(this['polling']||!this['writable']){let total=0x0;this['polling']&&(total++,this['once']('pollComplete',function(){--total||_0x152ba9();})),this['writable']||(total++,this['once']('drain',function(){--total||_0x152ba9();}));}else _0x152ba9();}['poll'](){this['polling']=!0x0,this['doPoll'](),this['emitReserved']('poll');}['onData'](data){((_0x43e815,_0x265066)=>{const encodedPackets=_0x43e815['split'](SEPARATOR),packets=[];for(let _0x99bfbb=0x0;_0x99bfbb<encodedPackets['length'];_0x99bfbb++){const decodedPacket=decodePacket(encodedPackets[_0x99bfbb],_0x265066);if(packets['push'](decodedPacket),'error'===decodedPacket['type'])break;}return packets;})(data,this['socket']['binaryType'])['forEach'](packet=>{if('opening'===this['readyState']&&'open'===packet['type']&&this['onOpen'](),'close'===packet['type'])return this['onClose']({'description':'transport\x20closed\x20by\x20the\x20server'}),!0x1;this['onPacket'](packet);}),'closed'!==this['readyState']&&(this['polling']=!0x1,this['emitReserved']('pollComplete'),'open'===this['readyState']&&this['poll']());}['doClose'](){const _0x355809=()=>{this['write']([{'type':'close'}]);};'open'===this['readyState']?_0x355809():this['once']('open',_0x355809);}['write'](packets){this['writable']=!0x1,((packets,_0x34bc22)=>{const length=packets['length'],encodedPackets=new Array(length);let count=0x0;packets['forEach']((packet,_0x431c64)=>{encodePacket(packet,!0x1,encodedPacket=>{encodedPackets[_0x431c64]=encodedPacket,++count===length&&_0x34bc22(encodedPackets['join'](SEPARATOR));});});})(packets,data=>{this['doWrite'](data,()=>{this['writable']=!0x0,this['emitReserved']('drain');});});}['uri'](){let _0x4c4c6a=this['query']||{};const _0x47cfeb=this['opts']['secure']?'https':'http';let port='';!0x1!==this['opts']['timestampRequests']&&(_0x4c4c6a[this['opts']['timestampParam']]=yeast()),this['supportsBinary']||_0x4c4c6a['sid']||(_0x4c4c6a['b64']=0x1),this['opts']['port']&&('https'===_0x47cfeb&&0x1bb!==Number(this['opts']['port'])||'http'===_0x47cfeb&&0x50!==Number(this['opts']['port']))&&(port=':'+this['opts']['port']);const _0x34e1bd=encode(_0x4c4c6a);return _0x47cfeb+'://'+(-0x1!==this['opts']['hostname']['indexOf'](':')?'['+this['opts']['hostname']+']':this['opts']['hostname'])+port+this['opts']['path']+(_0x34e1bd['length']?'?'+_0x34e1bd:'');}['request'](opts={}){return Object['assign'](opts,{'xd':this['xd'],'xs':this['xs']},this['opts']),new Request(this['uri'](),opts);}['doWrite'](data,_0x122c06){const _0x27d8be=this['request']({'method':'POST','data':data});_0x27d8be['on']('success',_0x122c06),_0x27d8be['on']('error',(xhrStatus,context)=>{this['onError']('xhr\x20post\x20error',xhrStatus,context);});}['doPoll'](){const _0x322f47=this['request']();_0x322f47['on']('data',this['onData']['bind'](this)),_0x322f47['on']('error',(xhrStatus,context)=>{this['onError']('xhr\x20poll\x20error',xhrStatus,context);}),this['pollXhr']=_0x322f47;}}},re=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,parts=['source','protocol','authority','userInfo','user','password','host','port','relative','path','directory','file','query','anchor'];function parse(str){const _0x22ae02=str,_0x1454f0=str['indexOf']('['),_0x3d0781=str['indexOf'](']');-0x1!=_0x1454f0&&-0x1!=_0x3d0781&&(str=str['substring'](0x0,_0x1454f0)+str['substring'](_0x1454f0,_0x3d0781)['replace'](/:/g,';')+str['substring'](_0x3d0781,str['length']));let _0x5f5357=re['exec'](str||''),_0x2b75c8={},_0x3be944=0xe;for(;_0x3be944--;)_0x2b75c8[parts[_0x3be944]]=_0x5f5357[_0x3be944]||'';return-0x1!=_0x1454f0&&-0x1!=_0x3d0781&&(_0x2b75c8['source']=_0x22ae02,_0x2b75c8['host']=_0x2b75c8['host']['substring'](0x1,_0x2b75c8['host']['length']-0x1)['replace'](/;/g,':'),_0x2b75c8['authority']=_0x2b75c8['authority']['replace']('[','')['replace'](']','')['replace'](/;/g,':'),_0x2b75c8['ipv6uri']=!0x0),_0x2b75c8['pathNames']=function(_0x47ed8e,path){const _0x43a6bf=/\/{2,9}/g,_0x7bdf3f=path['replace'](_0x43a6bf,'/')['split']('/');return'/'!=path['slice'](0x0,0x1)&&0x0!==path['length']||_0x7bdf3f['splice'](0x0,0x1),'/'==path['slice'](-0x1)&&_0x7bdf3f['splice'](_0x7bdf3f['length']-0x1,0x1),_0x7bdf3f;}(0x0,_0x2b75c8['path']),_0x2b75c8['queryKey']=function(_0x3dd003,_0x31b7e7){const data={};return _0x31b7e7['replace'](/(?:^|&)([^&=]*)=?([^&]*)/g,function(_0x338031,_0x4c9f0e,_0xd04dc4){_0x4c9f0e&&(data[_0x4c9f0e]=_0xd04dc4);}),data;}(0x0,_0x2b75c8['query']),_0x2b75c8;}let Socket$1=class Socket extends Emitter{constructor(_0x436807,opts={}){super(),this['writeBuffer']=[],_0x436807&&'object'==typeof _0x436807&&(opts=_0x436807,_0x436807=null),_0x436807?(_0x436807=parse(_0x436807),opts['hostname']=_0x436807['host'],opts['secure']='https'===_0x436807['protocol']||'wss'===_0x436807['protocol'],opts['port']=_0x436807['port'],_0x436807['query']&&(opts['query']=_0x436807['query'])):opts['host']&&(opts['hostname']=parse(opts['host'])['host']),installTimerFunctions(this,opts),this['secure']=null!=opts['secure']?opts['secure']:'undefined'!=typeof location&&'https:'===location['protocol'],opts['hostname']&&!opts['port']&&(opts['port']=this['secure']?'443':'80'),this['hostname']=opts['hostname']||('undefined'!=typeof location?location['hostname']:'localhost'),this['port']=opts['port']||('undefined'!=typeof location&&location['port']?location['port']:this['secure']?'443':'80'),this['transports']=opts['transports']||['polling','websocket'],this['writeBuffer']=[],this['prevBufferLen']=0x0,this['opts']=Object['assign']({'path':'/engine.io','agent':!0x1,'withCredentials':!0x1,'upgrade':!0x0,'timestampParam':'t','rememberUpgrade':!0x1,'addTrailingSlash':!0x0,'rejectUnauthorized':!0x0,'perMessageDeflate':{'threshold':0x400},'transportOptions':{},'closeOnBeforeunload':!0x0},opts),this['opts']['path']=this['opts']['path']['replace'](/\/$/,'')+(this['opts']['addTrailingSlash']?'/':''),'string'==typeof this['opts']['query']&&(this['opts']['query']=function(_0x333d88){let _0x2b405e={},_0x1910f2=_0x333d88['split']('&');for(let _0x5ed3c9=0x0,_0x29a357=_0x1910f2['length'];_0x5ed3c9<_0x29a357;_0x5ed3c9++){let _0x11e100=_0x1910f2[_0x5ed3c9]['split']('=');_0x2b405e[decodeURIComponent(_0x11e100[0x0])]=decodeURIComponent(_0x11e100[0x1]);}return _0x2b405e;}(this['opts']['query'])),this['id']=null,this['upgrades']=null,this['pingInterval']=null,this['pingTimeout']=null,this['pingTimeoutTimer']=null,'function'==typeof addEventListener&&(this['opts']['closeOnBeforeunload']&&(this['beforeunloadEventListener']=()=>{this['transport']&&(this['transport']['removeAllListeners'](),this['transport']['close']());},addEventListener('beforeunload',this['beforeunloadEventListener'],!0x1)),'localhost'!==this['hostname']&&(this['offlineEventListener']=()=>{this['onClose']('transport\x20close',{'description':'network\x20connection\x20lost'});},addEventListener('offline',this['offlineEventListener'],!0x1))),this['open']();}['createTransport'](_0x9d3b9c){const _0x247ee2=Object['assign']({},this['opts']['query']);_0x247ee2['EIO']=0x4,_0x247ee2['transport']=_0x9d3b9c,this['id']&&(_0x247ee2['sid']=this['id']);const opts=Object['assign']({},this['opts']['transportOptions'][_0x9d3b9c],this['opts'],{'query':_0x247ee2,'socket':this,'hostname':this['hostname'],'secure':this['secure'],'port':this['port']});return new transports[_0x9d3b9c](opts);}['open'](){let transport;if(this['opts']['rememberUpgrade']&&Socket['priorWebsocketSuccess']&&-0x1!==this['transports']['indexOf']('websocket'))transport='websocket';else{if(0x0===this['transports']['length'])return void this['setTimeoutFn'](()=>{this['emitReserved']('error','No\x20transports\x20available');},0x0);transport=this['transports'][0x0];}this['readyState']='opening';try{transport=this['createTransport'](transport);}catch(_0x363418){return this['transports']['shift'](),void this['open']();}transport['open'](),this['setTransport'](transport);}['setTransport'](transport){this['transport']&&this['transport']['removeAllListeners'](),this['transport']=transport,transport['on']('drain',this['onDrain']['bind'](this))['on']('packet',this['onPacket']['bind'](this))['on']('error',this['onError']['bind'](this))['on']('close',_0x27a511=>this['onClose']('transport\x20close',_0x27a511));}['probe'](_0x492757){let transport=this['createTransport'](_0x492757),_0x42f02=!0x1;Socket['priorWebsocketSuccess']=!0x1;const onTransportOpen=()=>{_0x42f02||(transport['send']([{'type':'ping','data':'probe'}]),transport['once']('packet',_0x29686c=>{if(!_0x42f02){if('pong'===_0x29686c['type']&&'probe'===_0x29686c['data']){if(this['upgrading']=!0x0,this['emitReserved']('upgrading',transport),!transport)return;Socket['priorWebsocketSuccess']='websocket'===transport['name'],this['transport']['pause'](()=>{_0x42f02||'closed'!==this['readyState']&&(_0x5ce058(),this['setTransport'](transport),transport['send']([{'type':'upgrade'}]),this['emitReserved']('upgrade',transport),transport=null,this['upgrading']=!0x1,this['flush']());});}else{const _0x208a18=new Error('probe\x20error');_0x208a18['transport']=transport['name'],this['emitReserved']('upgradeError',_0x208a18);}}}));};function freezeTransport(){_0x42f02||(_0x42f02=!0x0,_0x5ce058(),transport['close'](),transport=null);}const _0x522c6c=_0x55bb47=>{const _0x3dcc37=new Error('probe\x20error:\x20'+_0x55bb47);_0x3dcc37['transport']=transport['name'],freezeTransport(),this['emitReserved']('upgradeError',_0x3dcc37);};function onTransportClose(){_0x522c6c('transport\x20closed');}function _0x9d8baa(){_0x522c6c('socket\x20closed');}function _0x299fbb(to){transport&&to['name']!==transport['name']&&freezeTransport();}const _0x5ce058=()=>{transport['removeListener']('open',onTransportOpen),transport['removeListener']('error',_0x522c6c),transport['removeListener']('close',onTransportClose),this['off']('close',_0x9d8baa),this['off']('upgrading',_0x299fbb);};transport['once']('open',onTransportOpen),transport['once']('error',_0x522c6c),transport['once']('close',onTransportClose),this['once']('close',_0x9d8baa),this['once']('upgrading',_0x299fbb),transport['open']();}['onOpen'](){if(this['readyState']='open',Socket['priorWebsocketSuccess']='websocket'===this['transport']['name'],this['emitReserved']('open'),this['flush'](),'open'===this['readyState']&&this['opts']['upgrade']){let _0x2b3f3b=0x0;const _0x8de90d=this['upgrades']['length'];for(;_0x2b3f3b<_0x8de90d;_0x2b3f3b++)this['probe'](this['upgrades'][_0x2b3f3b]);}}['onPacket'](packet){if('opening'===this['readyState']||'open'===this['readyState']||'closing'===this['readyState'])switch(this['emitReserved']('packet',packet),this['emitReserved']('heartbeat'),packet['type']){case'open':this['onHandshake'](JSON['parse'](packet['data']));break;case'ping':this['resetPingTimeout'](),this['sendPacket']('pong'),this['emitReserved']('ping'),this['emitReserved']('pong');break;case'error':const _0x59a837=new Error('server\x20error');_0x59a837['code']=packet['data'],this['onError'](_0x59a837);break;case'message':this['emitReserved']('data',packet['data']),this['emitReserved']('message',packet['data']);}}['onHandshake'](data){this['emitReserved']('handshake',data),this['id']=data['sid'],this['transport']['query']['sid']=data['sid'],this['upgrades']=this['filterUpgrades'](data['upgrades']),this['pingInterval']=data['pingInterval'],this['pingTimeout']=data['pingTimeout'],this['maxPayload']=data['maxPayload'],this['onOpen'](),'closed'!==this['readyState']&&this['resetPingTimeout']();}['resetPingTimeout'](){this['clearTimeoutFn'](this['pingTimeoutTimer']),this['pingTimeoutTimer']=this['setTimeoutFn'](()=>{this['onClose']('ping\x20timeout');},this['pingInterval']+this['pingTimeout']),this['opts']['autoUnref']&&this['pingTimeoutTimer']['unref']();}['onDrain'](){this['writeBuffer']['splice'](0x0,this['prevBufferLen']),this['prevBufferLen']=0x0,0x0===this['writeBuffer']['length']?this['emitReserved']('drain'):this['flush']();}['flush'](){if('closed'!==this['readyState']&&this['transport']['writable']&&!this['upgrading']&&this['writeBuffer']['length']){const packets=this['getWritablePackets']();this['transport']['send'](packets),this['prevBufferLen']=packets['length'],this['emitReserved']('flush');}}['getWritablePackets'](){if(!(this['maxPayload']&&'polling'===this['transport']['name']&&this['writeBuffer']['length']>0x1))return this['writeBuffer'];let _0x373521=0x1;for(let _0x5667c2=0x0;_0x5667c2<this['writeBuffer']['length'];_0x5667c2++){const data=this['writeBuffer'][_0x5667c2]['data'];if(data&&(_0x373521+='string'==typeof(_0x5c7ed7=data)?function(str){let _0x61c787=0x0,length=0x0;for(let _0x204af8=0x0,_0x3e52d9=str['length'];_0x204af8<_0x3e52d9;_0x204af8++)_0x61c787=str['charCodeAt'](_0x204af8),_0x61c787<0x80?length+=0x1:_0x61c787<0x800?length+=0x2:_0x61c787<0xd800||_0x61c787>=0xe000?length+=0x3:(_0x204af8++,length+=0x4);return length;}(_0x5c7ed7):Math['ceil'](1.33*(_0x5c7ed7['byteLength']||_0x5c7ed7['size']))),_0x5667c2>0x0&&_0x373521>this['maxPayload'])return this['writeBuffer']['slice'](0x0,_0x5667c2);_0x373521+=0x2;}var _0x5c7ed7;return this['writeBuffer'];}['write'](_0x40e378,options,_0x58b266){return this['sendPacket']('message',_0x40e378,options,_0x58b266),this;}['send'](_0xe1ad02,options,_0x28bddd){return this['sendPacket']('message',_0xe1ad02,options,_0x28bddd),this;}['sendPacket'](type,data,options,_0x19f32e){if('function'==typeof data&&(_0x19f32e=data,data=void 0x0),'function'==typeof options&&(_0x19f32e=options,options=null),'closing'===this['readyState']||'closed'===this['readyState'])return;(options=options||{})['compress']=!0x1!==options['compress'];const packet={'type':type,'data':data,'options':options};this['emitReserved']('packetCreate',packet),this['writeBuffer']['push'](packet),_0x19f32e&&this['once']('flush',_0x19f32e),this['flush']();}['close'](){const _0x34de87=()=>{this['onClose']('forced\x20close'),this['transport']['close']();},_0x33596d=()=>{this['off']('upgrade',_0x33596d),this['off']('upgradeError',_0x33596d),_0x34de87();},waitForUpgrade=()=>{this['once']('upgrade',_0x33596d),this['once']('upgradeError',_0x33596d);};return'opening'!==this['readyState']&&'open'!==this['readyState']||(this['readyState']='closing',this['writeBuffer']['length']?this['once']('drain',()=>{this['upgrading']?waitForUpgrade():_0x34de87();}):this['upgrading']?waitForUpgrade():_0x34de87()),this;}['onError'](_0x3494ea){Socket['priorWebsocketSuccess']=!0x1,this['emitReserved']('error',_0x3494ea),this['onClose']('transport\x20error',_0x3494ea);}['onClose'](_0x4163aa,description){'opening'!==this['readyState']&&'open'!==this['readyState']&&'closing'!==this['readyState']||(this['clearTimeoutFn'](this['pingTimeoutTimer']),this['transport']['removeAllListeners']('close'),this['transport']['close'](),this['transport']['removeAllListeners'](),'function'==typeof removeEventListener&&(removeEventListener('beforeunload',this['beforeunloadEventListener'],!0x1),removeEventListener('offline',this['offlineEventListener'],!0x1)),this['readyState']='closed',this['id']=null,this['emitReserved']('close',_0x4163aa,description),this['writeBuffer']=[],this['prevBufferLen']=0x0);}['filterUpgrades'](_0x5d72db){const filteredUpgrades=[];let _0x2c9434=0x0;const _0xc66b9b=_0x5d72db['length'];for(;_0x2c9434<_0xc66b9b;_0x2c9434++)~this['transports']['indexOf'](_0x5d72db[_0x2c9434])&&filteredUpgrades['push'](_0x5d72db[_0x2c9434]);return filteredUpgrades;}};Socket$1['protocol']=0x4;const withNativeArrayBuffer='function'==typeof ArrayBuffer,isView=_0x383409=>'function'==typeof ArrayBuffer['isView']?ArrayBuffer['isView'](_0x383409):_0x383409['buffer']instanceof ArrayBuffer,toString=Object['prototype']['toString'],withNativeBlob='function'==typeof Blob||'undefined'!=typeof Blob&&'[object\x20BlobConstructor]'===toString['call'](Blob),withNativeFile='function'==typeof File||'undefined'!=typeof File&&'[object\x20FileConstructor]'===toString['call'](File);function isBinary(_0x3cc1d9){return withNativeArrayBuffer&&(_0x3cc1d9 instanceof ArrayBuffer||isView(_0x3cc1d9))||withNativeBlob&&_0x3cc1d9 instanceof Blob||withNativeFile&&_0x3cc1d9 instanceof File;}function hasBinary(_0xd9557a,toJSON){if(!_0xd9557a||'object'!=typeof _0xd9557a)return!0x1;if(Array['isArray'](_0xd9557a)){for(let _0x2cae16=0x0,_0x36749b=_0xd9557a['length'];_0x2cae16<_0x36749b;_0x2cae16++)if(hasBinary(_0xd9557a[_0x2cae16]))return!0x0;return!0x1;}if(isBinary(_0xd9557a))return!0x0;if(_0xd9557a['toJSON']&&'function'==typeof _0xd9557a['toJSON']&&0x1===arguments['length'])return hasBinary(_0xd9557a['toJSON'](),!0x0);for(const _0x45a63d in _0xd9557a)if(Object['prototype']['hasOwnProperty']['call'](_0xd9557a,_0x45a63d)&&hasBinary(_0xd9557a[_0x45a63d]))return!0x0;return!0x1;}function deconstructPacket(packet){const _0x5c1047=[],packetData=packet['data'],_0x42d848=packet;return _0x42d848['data']=_deconstructPacket(packetData,_0x5c1047),_0x42d848['attachments']=_0x5c1047['length'],{'packet':_0x42d848,'buffers':_0x5c1047};}function _deconstructPacket(data,_0x2e343e){if(!data)return data;if(isBinary(data)){const _0x470efc={'_placeholder':!0x0,'num':_0x2e343e['length']};return _0x2e343e['push'](data),_0x470efc;}if(Array['isArray'](data)){const newData=new Array(data['length']);for(let _0x1a7f2d=0x0;_0x1a7f2d<data['length'];_0x1a7f2d++)newData[_0x1a7f2d]=_deconstructPacket(data[_0x1a7f2d],_0x2e343e);return newData;}if('object'==typeof data&&!(data instanceof Date)){const newData={};for(const _0x377d66 in data)Object['prototype']['hasOwnProperty']['call'](data,_0x377d66)&&(newData[_0x377d66]=_deconstructPacket(data[_0x377d66],_0x2e343e));return newData;}return data;}function reconstructPacket(packet,_0x26c34c){return packet['data']=_reconstructPacket(packet['data'],_0x26c34c),delete packet['attachments'],packet;}function _reconstructPacket(data,_0x5da369){if(!data)return data;if(data&&!0x0===data['_placeholder']){if('number'==typeof data['num']&&data['num']>=0x0&&data['num']<_0x5da369['length'])return _0x5da369[data['num']];throw new Error('illegal\x20attachments');}if(Array['isArray'](data)){for(let _0xb20db4=0x0;_0xb20db4<data['length'];_0xb20db4++)data[_0xb20db4]=_reconstructPacket(data[_0xb20db4],_0x5da369);}else{if('object'==typeof data){for(const _0x21e003 in data)Object['prototype']['hasOwnProperty']['call'](data,_0x21e003)&&(data[_0x21e003]=_reconstructPacket(data[_0x21e003],_0x5da369));}}return data;}var PacketType;!function(PacketType){PacketType[PacketType['CONNECT']=0x0]='CONNECT',PacketType[PacketType['DISCONNECT']=0x1]='DISCONNECT',PacketType[PacketType['EVENT']=0x2]='EVENT',PacketType[PacketType['ACK']=0x3]='ACK',PacketType[PacketType['CONNECT_ERROR']=0x4]='CONNECT_ERROR',PacketType[PacketType['BINARY_EVENT']=0x5]='BINARY_EVENT',PacketType[PacketType['BINARY_ACK']=0x6]='BINARY_ACK';}(PacketType||(PacketType={}));let Encoder$1=class{constructor(_0x1f41d3){this['replacer']=_0x1f41d3;}['encode'](_0x26e696){return _0x26e696['type']!==PacketType['EVENT']&&_0x26e696['type']!==PacketType['ACK']||!hasBinary(_0x26e696)?[this['encodeAsString'](_0x26e696)]:this['encodeAsBinary']({'type':_0x26e696['type']===PacketType['EVENT']?PacketType['BINARY_EVENT']:PacketType['BINARY_ACK'],'nsp':_0x26e696['nsp'],'data':_0x26e696['data'],'id':_0x26e696['id']});}['encodeAsString'](_0x190f34){let str=''+_0x190f34['type'];return _0x190f34['type']!==PacketType['BINARY_EVENT']&&_0x190f34['type']!==PacketType['BINARY_ACK']||(str+=_0x190f34['attachments']+'-'),_0x190f34['nsp']&&'/'!==_0x190f34['nsp']&&(str+=_0x190f34['nsp']+','),null!=_0x190f34['id']&&(str+=_0x190f34['id']),null!=_0x190f34['data']&&(str+=JSON['stringify'](_0x190f34['data'],this['replacer'])),str;}['encodeAsBinary'](_0x4f443d){const deconstruction=deconstructPacket(_0x4f443d),_0x2c1d2f=this['encodeAsString'](deconstruction['packet']),_0x4335a7=deconstruction['buffers'];return _0x4335a7['unshift'](_0x2c1d2f),_0x4335a7;}},Decoder$1=class Decoder extends Emitter{constructor(_0x5cca32){super(),this['reviver']=_0x5cca32;}['add'](_0xfc25c){let packet;if('string'==typeof _0xfc25c){if(this['reconstructor'])throw new Error('got\x20plaintext\x20data\x20when\x20reconstructing\x20a\x20packet');packet=this['decodeString'](_0xfc25c);const isBinaryEvent=packet['type']===PacketType['BINARY_EVENT'];isBinaryEvent||packet['type']===PacketType['BINARY_ACK']?(packet['type']=isBinaryEvent?PacketType['EVENT']:PacketType['ACK'],this['reconstructor']=new BinaryReconstructor(packet),0x0===packet['attachments']&&super['emitReserved']('decoded',packet)):super['emitReserved']('decoded',packet);}else{if(!isBinary(_0xfc25c)&&!_0xfc25c['base64'])throw new Error('Unknown\x20type:\x20'+_0xfc25c);if(!this['reconstructor'])throw new Error('got\x20binary\x20data\x20when\x20not\x20reconstructing\x20a\x20packet');packet=this['reconstructor']['takeBinaryData'](_0xfc25c),packet&&(this['reconstructor']=null,super['emitReserved']('decoded',packet));}}['decodeString'](str){let _0x35c920=0x0;const _0x1e483d={'type':Number(str['charAt'](0x0))};if(void 0x0===PacketType[_0x1e483d['type']])throw new Error('unknown\x20packet\x20type\x20'+_0x1e483d['type']);if(_0x1e483d['type']===PacketType['BINARY_EVENT']||_0x1e483d['type']===PacketType['BINARY_ACK']){const start=_0x35c920+0x1;for(;'-'!==str['charAt'](++_0x35c920)&&_0x35c920!=str['length'];);const _0x1fda63=str['substring'](start,_0x35c920);if(_0x1fda63!=Number(_0x1fda63)||'-'!==str['charAt'](_0x35c920))throw new Error('Illegal\x20attachments');_0x1e483d['attachments']=Number(_0x1fda63);}if('/'===str['charAt'](_0x35c920+0x1)){const start=_0x35c920+0x1;for(;++_0x35c920;){if(','===str['charAt'](_0x35c920))break;if(_0x35c920===str['length'])break;}_0x1e483d['nsp']=str['substring'](start,_0x35c920);}else _0x1e483d['nsp']='/';const next=str['charAt'](_0x35c920+0x1);if(''!==next&&Number(next)==next){const start=_0x35c920+0x1;for(;++_0x35c920;){const _0x88ea77=str['charAt'](_0x35c920);if(null==_0x88ea77||Number(_0x88ea77)!=_0x88ea77){--_0x35c920;break;}if(_0x35c920===str['length'])break;}_0x1e483d['id']=Number(str['substring'](start,_0x35c920+0x1));}if(str['charAt'](++_0x35c920)){const _0x5e7cfb=this['tryParse'](str['substr'](_0x35c920));if(!Decoder['isPayloadValid'](_0x1e483d['type'],_0x5e7cfb))throw new Error('invalid\x20payload');_0x1e483d['data']=_0x5e7cfb;}return _0x1e483d;}['tryParse'](str){try{return JSON['parse'](str,this['reviver']);}catch(_0x55151f){return!0x1;}}static['isPayloadValid'](type,_0x3be6fc){switch(type){case PacketType['CONNECT']:return'object'==typeof _0x3be6fc;case PacketType['DISCONNECT']:return void 0x0===_0x3be6fc;case PacketType['CONNECT_ERROR']:return'string'==typeof _0x3be6fc||'object'==typeof _0x3be6fc;case PacketType['EVENT']:case PacketType['BINARY_EVENT']:return Array['isArray'](_0x3be6fc)&&('string'==typeof _0x3be6fc[0x0]||'number'==typeof _0x3be6fc[0x0]);case PacketType['ACK']:case PacketType['BINARY_ACK']:return Array['isArray'](_0x3be6fc);}}['destroy'](){this['reconstructor']&&(this['reconstructor']['finishedReconstruction'](),this['reconstructor']=null);}};class BinaryReconstructor{constructor(packet){this['packet']=packet,this['buffers']=[],this['reconPack']=packet;}['takeBinaryData'](binData){if(this['buffers']['push'](binData),this['buffers']['length']===this['reconPack']['attachments']){const packet=reconstructPacket(this['reconPack'],this['buffers']);return this['finishedReconstruction'](),packet;}return null;}['finishedReconstruction'](){this['reconPack']=null,this['buffers']=[];}}var parser$1=Object['freeze']({'__proto__':null,'Decoder':Decoder$1,'Encoder':Encoder$1,get 'PacketType'(){return PacketType;},'protocol':0x5});function on(_0x162fe6,_0x5c57c2,_0x5defe9){return _0x162fe6['on'](_0x5c57c2,_0x5defe9),function(){_0x162fe6['off'](_0x5c57c2,_0x5defe9);};}const RESERVED_EVENTS=Object['freeze']({'connect':0x1,'connect_error':0x1,'disconnect':0x1,'disconnecting':0x1,'newListener':0x1,'removeListener':0x1});class Socket extends Emitter{constructor(_0x29fcb2,_0x8cd13f,opts){super(),this['connected']=!0x1,this['recovered']=!0x1,this['receiveBuffer']=[],this['sendBuffer']=[],this['_queue']=[],this['_queueSeq']=0x0,this['ids']=0x0,this['acks']={},this['flags']={},this['io']=_0x29fcb2,this['nsp']=_0x8cd13f,opts&&opts['auth']&&(this['auth']=opts['auth']),this['_opts']=Object['assign']({},opts),this['io']['_autoConnect']&&this['open']();}get['disconnected'](){return!this['connected'];}['subEvents'](){if(this['subs'])return;const _0x39f696=this['io'];this['subs']=[on(_0x39f696,'open',this['onopen']['bind'](this)),on(_0x39f696,'packet',this['onpacket']['bind'](this)),on(_0x39f696,'error',this['onerror']['bind'](this)),on(_0x39f696,'close',this['onclose']['bind'](this))];}get['active'](){return!!this['subs'];}['connect'](){return this['connected']||(this['subEvents'](),this['io']['_reconnecting']||this['io']['open'](),'open'===this['io']['_readyState']&&this['onopen']()),this;}['open'](){return this['connect']();}['send'](..._0x404916){return _0x404916['unshift']('message'),this['emit']['apply'](this,_0x404916),this;}['emit'](_0x101c21,..._0x2e1f61){if(RESERVED_EVENTS['hasOwnProperty'](_0x101c21))throw new Error('\x22'+_0x101c21['toString']()+'\x22\x20is\x20a\x20reserved\x20event\x20name');if(_0x2e1f61['unshift'](_0x101c21),this['_opts']['retries']&&!this['flags']['fromQueue']&&!this['flags']['volatile'])return this['_addToQueue'](_0x2e1f61),this;const packet={'type':PacketType['EVENT'],'data':_0x2e1f61,'options':{}};if(packet['options']['compress']=!0x1!==this['flags']['compress'],'function'==typeof _0x2e1f61[_0x2e1f61['length']-0x1]){const _0x204e91=this['ids']++,_0x3e365f=_0x2e1f61['pop']();this['_registerAckCallback'](_0x204e91,_0x3e365f),packet['id']=_0x204e91;}const isTransportWritable=this['io']['engine']&&this['io']['engine']['transport']&&this['io']['engine']['transport']['writable'];return this['flags']['volatile']&&(!isTransportWritable||!this['connected'])||(this['connected']?(this['notifyOutgoingListeners'](packet),this['packet'](packet)):this['sendBuffer']['push'](packet)),this['flags']={},this;}['_registerAckCallback'](_0x511183,_0xfbef13){var _0x18bf2a;const timeout=null!==(_0x18bf2a=this['flags']['timeout'])&&void 0x0!==_0x18bf2a?_0x18bf2a:this['_opts']['ackTimeout'];if(void 0x0===timeout)return void(this['acks'][_0x511183]=_0xfbef13);const timer=this['io']['setTimeoutFn'](()=>{delete this['acks'][_0x511183];for(let _0x54a4f8=0x0;_0x54a4f8<this['sendBuffer']['length'];_0x54a4f8++)this['sendBuffer'][_0x54a4f8]['id']===_0x511183&&this['sendBuffer']['splice'](_0x54a4f8,0x1);_0xfbef13['call'](this,new Error('operation\x20has\x20timed\x20out'));},timeout);this['acks'][_0x511183]=(..._0x337a9e)=>{this['io']['clearTimeoutFn'](timer),_0xfbef13['apply'](this,[null,..._0x337a9e]);};}['emitWithAck'](_0x2b7d32,..._0xc023b7){const withErr=void 0x0!==this['flags']['timeout']||void 0x0!==this['_opts']['ackTimeout'];return new Promise((_0x211ea9,reject)=>{_0xc023b7['push']((_0xe6d0a0,_0x34629e)=>withErr?_0xe6d0a0?reject(_0xe6d0a0):_0x211ea9(_0x34629e):_0x211ea9(_0xe6d0a0)),this['emit'](_0x2b7d32,..._0xc023b7);});}['_addToQueue'](_0x237564){let _0x396941;'function'==typeof _0x237564[_0x237564['length']-0x1]&&(_0x396941=_0x237564['pop']());const packet={'id':this['_queueSeq']++,'tryCount':0x0,'pending':!0x1,'args':_0x237564,'flags':Object['assign']({'fromQueue':!0x0},this['flags'])};_0x237564['push']((_0x3a7806,..._0x5d07c6)=>{if(packet!==this['_queue'][0x0])return;return null!==_0x3a7806?packet['tryCount']>this['_opts']['retries']&&(this['_queue']['shift'](),_0x396941&&_0x396941(_0x3a7806)):(this['_queue']['shift'](),_0x396941&&_0x396941(null,..._0x5d07c6)),packet['pending']=!0x1,this['_drainQueue']();}),this['_queue']['push'](packet),this['_drainQueue']();}['_drainQueue'](_0x5c0f51=!0x1){if(!this['connected']||0x0===this['_queue']['length'])return;const packet=this['_queue'][0x0];packet['pending']&&!_0x5c0f51||(packet['pending']=!0x0,packet['tryCount']++,this['flags']=packet['flags'],this['emit']['apply'](this,packet['args']));}['packet'](packet){packet['nsp']=this['nsp'],this['io']['_packet'](packet);}['onopen'](){'function'==typeof this['auth']?this['auth'](data=>{this['_sendConnectPacket'](data);}):this['_sendConnectPacket'](this['auth']);}['_sendConnectPacket'](data){this['packet']({'type':PacketType['CONNECT'],'data':this['_pid']?Object['assign']({'pid':this['_pid'],'offset':this['_lastOffset']},data):data});}['onerror'](_0x1eefec){this['connected']||this['emitReserved']('connect_error',_0x1eefec);}['onclose'](_0x3b5d16,description){this['connected']=!0x1,delete this['id'],this['emitReserved']('disconnect',_0x3b5d16,description);}['onpacket'](packet){if(packet['nsp']===this['nsp'])switch(packet['type']){case PacketType['CONNECT']:packet['data']&&packet['data']['sid']?this['onconnect'](packet['data']['sid'],packet['data']['pid']):this['emitReserved']('connect_error',new Error('It\x20seems\x20you\x20are\x20trying\x20to\x20reach\x20a\x20Socket.IO\x20server\x20in\x20v2.x\x20with\x20a\x20v3.x\x20client,\x20but\x20they\x20are\x20not\x20compatible\x20(more\x20information\x20here:\x20https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)'));break;case PacketType['EVENT']:case PacketType['BINARY_EVENT']:this['onevent'](packet);break;case PacketType['ACK']:case PacketType['BINARY_ACK']:this['onack'](packet);break;case PacketType['DISCONNECT']:this['ondisconnect']();break;case PacketType['CONNECT_ERROR']:this['destroy']();const _0x238cfa=new Error(packet['data']['message']);_0x238cfa['data']=packet['data']['data'],this['emitReserved']('connect_error',_0x238cfa);}}['onevent'](packet){const _0x3ede7a=packet['data']||[];null!=packet['id']&&_0x3ede7a['push'](this['ack'](packet['id'])),this['connected']?this['emitEvent'](_0x3ede7a):this['receiveBuffer']['push'](Object['freeze'](_0x3ede7a));}['emitEvent'](_0x5d23c1){if(this['_anyListeners']&&this['_anyListeners']['length']){const listeners=this['_anyListeners']['slice']();for(const listener of listeners)listener['apply'](this,_0x5d23c1);}super['emit']['apply'](this,_0x5d23c1),this['_pid']&&_0x5d23c1['length']&&'string'==typeof _0x5d23c1[_0x5d23c1['length']-0x1]&&(this['_lastOffset']=_0x5d23c1[_0x5d23c1['length']-0x1]);}['ack'](_0x1c4917){const _0x515d83=this;let sent=!0x1;return function(..._0x444946){sent||(sent=!0x0,_0x515d83['packet']({'type':PacketType['ACK'],'id':_0x1c4917,'data':_0x444946}));};}['onack'](packet){const _0xfcdba7=this['acks'][packet['id']];'function'==typeof _0xfcdba7&&(_0xfcdba7['apply'](this,packet['data']),delete this['acks'][packet['id']]);}['onconnect'](_0x473a45,_0xaa89bd){this['id']=_0x473a45,this['recovered']=_0xaa89bd&&this['_pid']===_0xaa89bd,this['_pid']=_0xaa89bd,this['connected']=!0x0,this['emitBuffered'](),this['emitReserved']('connect'),this['_drainQueue'](!0x0);}['emitBuffered'](){this['receiveBuffer']['forEach'](_0x46a367=>this['emitEvent'](_0x46a367)),this['receiveBuffer']=[],this['sendBuffer']['forEach'](packet=>{this['notifyOutgoingListeners'](packet),this['packet'](packet);}),this['sendBuffer']=[];}['ondisconnect'](){this['destroy'](),this['onclose']('io\x20server\x20disconnect');}['destroy'](){this['subs']&&(this['subs']['forEach'](subDestroy=>subDestroy()),this['subs']=void 0x0),this['io']['_destroy'](this);}['disconnect'](){return this['connected']&&this['packet']({'type':PacketType['DISCONNECT']}),this['destroy'](),this['connected']&&this['onclose']('io\x20client\x20disconnect'),this;}['close'](){return this['disconnect']();}['compress'](_0x43be33){return this['flags']['compress']=_0x43be33,this;}get['volatile'](){return this['flags']['volatile']=!0x0,this;}['timeout'](timeout){return this['flags']['timeout']=timeout,this;}['onAny'](listener){return this['_anyListeners']=this['_anyListeners']||[],this['_anyListeners']['push'](listener),this;}['prependAny'](listener){return this['_anyListeners']=this['_anyListeners']||[],this['_anyListeners']['unshift'](listener),this;}['offAny'](listener){if(!this['_anyListeners'])return this;if(listener){const listeners=this['_anyListeners'];for(let _0x132a0c=0x0;_0x132a0c<listeners['length'];_0x132a0c++)if(listener===listeners[_0x132a0c])return listeners['splice'](_0x132a0c,0x1),this;}else this['_anyListeners']=[];return this;}['listenersAny'](){return this['_anyListeners']||[];}['onAnyOutgoing'](listener){return this['_anyOutgoingListeners']=this['_anyOutgoingListeners']||[],this['_anyOutgoingListeners']['push'](listener),this;}['prependAnyOutgoing'](listener){return this['_anyOutgoingListeners']=this['_anyOutgoingListeners']||[],this['_anyOutgoingListeners']['unshift'](listener),this;}['offAnyOutgoing'](listener){if(!this['_anyOutgoingListeners'])return this;if(listener){const listeners=this['_anyOutgoingListeners'];for(let _0x5e8f30=0x0;_0x5e8f30<listeners['length'];_0x5e8f30++)if(listener===listeners[_0x5e8f30])return listeners['splice'](_0x5e8f30,0x1),this;}else this['_anyOutgoingListeners']=[];return this;}['listenersAnyOutgoing'](){return this['_anyOutgoingListeners']||[];}['notifyOutgoingListeners'](packet){if(this['_anyOutgoingListeners']&&this['_anyOutgoingListeners']['length']){const listeners=this['_anyOutgoingListeners']['slice']();for(const listener of listeners)listener['apply'](this,packet['data']);}}}function Backoff(opts){opts=opts||{},this['ms']=opts['min']||0x64,this['max']=opts['max']||0x2710,this['factor']=opts['factor']||0x2,this['jitter']=opts['jitter']>0x0&&opts['jitter']<=0x1?opts['jitter']:0x0,this['attempts']=0x0;}Backoff['prototype']['duration']=function(){var _0x1da6b7=this['ms']*Math['pow'](this['factor'],this['attempts']++);if(this['jitter']){var _0x557ea2=Math['random'](),deviation=Math['floor'](_0x557ea2*this['jitter']*_0x1da6b7);_0x1da6b7=0x1&Math['floor'](0xa*_0x557ea2)?_0x1da6b7+deviation:_0x1da6b7-deviation;}return 0x0|Math['min'](_0x1da6b7,this['max']);},Backoff['prototype']['reset']=function(){this['attempts']=0x0;},Backoff['prototype']['setMin']=function(_0x1a742d){this['ms']=_0x1a742d;},Backoff['prototype']['setMax']=function(_0x5a7f69){this['max']=_0x5a7f69;},Backoff['prototype']['setJitter']=function(jitter){this['jitter']=jitter;};class Manager extends Emitter{constructor(_0xa5d9d2,opts){var _0x2ab7ea;super(),this['nsps']={},this['subs']=[],_0xa5d9d2&&'object'==typeof _0xa5d9d2&&(opts=_0xa5d9d2,_0xa5d9d2=void 0x0),(opts=opts||{})['path']=opts['path']||'/socket.io',this['opts']=opts,installTimerFunctions(this,opts),this['reconnection'](!0x1!==opts['reconnection']),this['reconnectionAttempts'](opts['reconnectionAttempts']||0x1/0x0),this['reconnectionDelay'](opts['reconnectionDelay']||0x3e8),this['reconnectionDelayMax'](opts['reconnectionDelayMax']||0x1388),this['randomizationFactor'](null!==(_0x2ab7ea=opts['randomizationFactor'])&&void 0x0!==_0x2ab7ea?_0x2ab7ea:0.5),this['backoff']=new Backoff({'min':this['reconnectionDelay'](),'max':this['reconnectionDelayMax'](),'jitter':this['randomizationFactor']()}),this['timeout'](null==opts['timeout']?0x4e20:opts['timeout']),this['_readyState']='closed',this['uri']=_0xa5d9d2;const _0x254887=opts['parser']||parser$1;this['encoder']=new _0x254887['Encoder'](),this['decoder']=new _0x254887['Decoder'](),this['_autoConnect']=!0x1!==opts['autoConnect'],this['_autoConnect']&&this['open']();}['reconnection'](_0x36859a){return arguments['length']?(this['_reconnection']=!!_0x36859a,this):this['_reconnection'];}['reconnectionAttempts'](_0xa9e942){return void 0x0===_0xa9e942?this['_reconnectionAttempts']:(this['_reconnectionAttempts']=_0xa9e942,this);}['reconnectionDelay'](_0x41625b){var _0x3670a8;return void 0x0===_0x41625b?this['_reconnectionDelay']:(this['_reconnectionDelay']=_0x41625b,null===(_0x3670a8=this['backoff'])||void 0x0===_0x3670a8||_0x3670a8['setMin'](_0x41625b),this);}['randomizationFactor'](_0x3ec80a){var _0x5163dc;return void 0x0===_0x3ec80a?this['_randomizationFactor']:(this['_randomizationFactor']=_0x3ec80a,null===(_0x5163dc=this['backoff'])||void 0x0===_0x5163dc||_0x5163dc['setJitter'](_0x3ec80a),this);}['reconnectionDelayMax'](_0x3a7945){var _0x351647;return void 0x0===_0x3a7945?this['_reconnectionDelayMax']:(this['_reconnectionDelayMax']=_0x3a7945,null===(_0x351647=this['backoff'])||void 0x0===_0x351647||_0x351647['setMax'](_0x3a7945),this);}['timeout'](_0x5ab3b4){return arguments['length']?(this['_timeout']=_0x5ab3b4,this):this['_timeout'];}['maybeReconnectOnOpen'](){!this['_reconnecting']&&this['_reconnection']&&0x0===this['backoff']['attempts']&&this['reconnect']();}['open'](_0x404513){if(~this['_readyState']['indexOf']('open'))return this;this['engine']=new Socket$1(this['uri'],this['opts']);const socket=this['engine'],_0x2ef49c=this;this['_readyState']='opening',this['skipReconnect']=!0x1;const openSubDestroy=on(socket,'open',function(){_0x2ef49c['onopen'](),_0x404513&&_0x404513();}),_0x1bafe6=on(socket,'error',_0x36a897=>{_0x2ef49c['cleanup'](),_0x2ef49c['_readyState']='closed',this['emitReserved']('error',_0x36a897),_0x404513?_0x404513(_0x36a897):_0x2ef49c['maybeReconnectOnOpen']();});if(!0x1!==this['_timeout']){const timeout=this['_timeout'];0x0===timeout&&openSubDestroy();const timer=this['setTimeoutFn'](()=>{openSubDestroy(),socket['close'](),socket['emit']('error',new Error('timeout'));},timeout);this['opts']['autoUnref']&&timer['unref'](),this['subs']['push'](function(){clearTimeout(timer);});}return this['subs']['push'](openSubDestroy),this['subs']['push'](_0x1bafe6),this;}['connect'](_0x2378e2){return this['open'](_0x2378e2);}['onopen'](){this['cleanup'](),this['_readyState']='open',this['emitReserved']('open');const socket=this['engine'];this['subs']['push'](on(socket,'ping',this['onping']['bind'](this)),on(socket,'data',this['ondata']['bind'](this)),on(socket,'error',this['onerror']['bind'](this)),on(socket,'close',this['onclose']['bind'](this)),on(this['decoder'],'decoded',this['ondecoded']['bind'](this)));}['onping'](){this['emitReserved']('ping');}['ondata'](data){try{this['decoder']['add'](data);}catch(_0x132b3c){this['onclose']('parse\x20error',_0x132b3c);}}['ondecoded'](packet){nextTick(()=>{this['emitReserved']('packet',packet);},this['setTimeoutFn']);}['onerror'](_0x5cc623){this['emitReserved']('error',_0x5cc623);}['socket'](_0x5870f9,opts){let socket=this['nsps'][_0x5870f9];return socket?this['_autoConnect']&&!socket['active']&&socket['connect']():(socket=new Socket(this,_0x5870f9,opts),this['nsps'][_0x5870f9]=socket),socket;}['_destroy'](socket){const _0x16dae9=Object['keys'](this['nsps']);for(const _0x577c12 of _0x16dae9){if(this['nsps'][_0x577c12]['active'])return;}this['_close']();}['_packet'](packet){const encodedPackets=this['encoder']['encode'](packet);for(let _0x22685b=0x0;_0x22685b<encodedPackets['length'];_0x22685b++)this['engine']['write'](encodedPackets[_0x22685b],packet['options']);}['cleanup'](){this['subs']['forEach'](subDestroy=>subDestroy()),this['subs']['length']=0x0,this['decoder']['destroy']();}['_close'](){this['skipReconnect']=!0x0,this['_reconnecting']=!0x1,this['onclose']('forced\x20close'),this['engine']&&this['engine']['close']();}['disconnect'](){return this['_close']();}['onclose'](_0x4ac5d0,description){this['cleanup'](),this['backoff']['reset'](),this['_readyState']='closed',this['emitReserved']('close',_0x4ac5d0,description),this['_reconnection']&&!this['skipReconnect']&&this['reconnect']();}['reconnect'](){if(this['_reconnecting']||this['skipReconnect'])return this;const _0x2dd0c5=this;if(this['backoff']['attempts']>=this['_reconnectionAttempts'])this['backoff']['reset'](),this['emitReserved']('reconnect_failed'),this['_reconnecting']=!0x1;else{const _0x2548ec=this['backoff']['duration']();this['_reconnecting']=!0x0;const timer=this['setTimeoutFn'](()=>{_0x2dd0c5['skipReconnect']||(this['emitReserved']('reconnect_attempt',_0x2dd0c5['backoff']['attempts']),_0x2dd0c5['skipReconnect']||_0x2dd0c5['open'](_0x37c456=>{_0x37c456?(_0x2dd0c5['_reconnecting']=!0x1,_0x2dd0c5['reconnect'](),this['emitReserved']('reconnect_error',_0x37c456)):_0x2dd0c5['onreconnect']();}));},_0x2548ec);this['opts']['autoUnref']&&timer['unref'](),this['subs']['push'](function(){clearTimeout(timer);});}}['onreconnect'](){const attempt=this['backoff']['attempts'];this['_reconnecting']=!0x1,this['backoff']['reset'](),this['emitReserved']('reconnect',attempt);}}const cache={};function lookup(_0x46627c,opts){'object'==typeof _0x46627c&&(opts=_0x46627c,_0x46627c=void 0x0);const _0x2b54aa=function(_0x79430e,path='',_0x2d289b){let _0x358654=_0x79430e;_0x2d289b=_0x2d289b||'undefined'!=typeof location&&location,null==_0x79430e&&(_0x79430e=_0x2d289b['protocol']+'//'+_0x2d289b['host']),'string'==typeof _0x79430e&&('/'===_0x79430e['charAt'](0x0)&&(_0x79430e='/'===_0x79430e['charAt'](0x1)?_0x2d289b['protocol']+_0x79430e:_0x2d289b['host']+_0x79430e),/^(https?|wss?):\/\//['test'](_0x79430e)||(_0x79430e=void 0x0!==_0x2d289b?_0x2d289b['protocol']+'//'+_0x79430e:'https://'+_0x79430e),_0x358654=parse(_0x79430e)),_0x358654['port']||(/^(http|ws)$/['test'](_0x358654['protocol'])?_0x358654['port']='80':/^(http|ws)s$/['test'](_0x358654['protocol'])&&(_0x358654['port']='443')),_0x358654['path']=_0x358654['path']||'/';const host=-0x1!==_0x358654['host']['indexOf'](':')?'['+_0x358654['host']+']':_0x358654['host'];return _0x358654['id']=_0x358654['protocol']+'://'+host+':'+_0x358654['port']+path,_0x358654['href']=_0x358654['protocol']+'://'+host+(_0x2d289b&&_0x2d289b['port']===_0x358654['port']?'':':'+_0x358654['port']),_0x358654;}(_0x46627c,(opts=opts||{})['path']||'/socket.io'),_0x3d213e=_0x2b54aa['source'],_0x4a8d3c=_0x2b54aa['id'],path=_0x2b54aa['path'],_0x499b91=cache[_0x4a8d3c]&&path in cache[_0x4a8d3c]['nsps'];let _0x443446;return opts['forceNew']||opts['force\x20new\x20connection']||!0x1===opts['multiplex']||_0x499b91?_0x443446=new Manager(_0x3d213e,opts):(cache[_0x4a8d3c]||(cache[_0x4a8d3c]=new Manager(_0x3d213e,opts)),_0x443446=cache[_0x4a8d3c]),_0x2b54aa['query']&&!opts['query']&&(opts['query']=_0x2b54aa['queryKey']),_0x443446['socket'](_0x2b54aa['path'],opts);}Object['assign'](lookup,{'Manager':Manager,'Socket':Socket,'io':lookup,'connect':lookup});class Descriptor{constructor(..._0x5e561a){}}class Message extends Descriptor{static{this['TYPE']='1000';}constructor(..._0x23598a){super();}static['fromJSON'](object){throw new TypeError('Must\x20be\x20implemented\x20in\x20a\x20child\x20class!');}}class ChannelMessage extends Message{static{this['DESCRIPTOR_NAME']='ChannelMessage';}static{this['DESCRIPTOR']={'fields':{'type':{'type':'uint32','id':0x1},'socketId':{'type':'string','id':0x2},'data':{'type':'bytes','id':0x3}}};}constructor(type,socketId,data){super(),this['type']=type,this['socketId']=socketId,this['data']=data;}['toJSON'](){return{'type':this['type'],'socketId':this['socketId'],'data':this['data']};}static['fromJSON'](data){return new ChannelMessage(data['type'],data['socketId'],data['data']);}}const $Reader=$protobuf['Reader'],$Writer=$protobuf['Writer'],$util=$protobuf['util'],$root=$protobuf['roots']['default']||($protobuf['roots']['default']={});$root['OperationMetadataDescriptor']=((()=>{function OperationMetadataDescriptor(properties){if(properties){for(let _0x4387cb=Object['keys'](properties),_0x3798fa=0x0;_0x3798fa<_0x4387cb['length'];++_0x3798fa)null!=properties[_0x4387cb[_0x3798fa]]&&(this[_0x4387cb[_0x3798fa]]=properties[_0x4387cb[_0x3798fa]]);}}return OperationMetadataDescriptor['prototype']['userId']='',OperationMetadataDescriptor['prototype']['type']='',OperationMetadataDescriptor['prototype']['createdAt']='',OperationMetadataDescriptor['create']=function(properties){return new OperationMetadataDescriptor(properties);},OperationMetadataDescriptor['encode']=function(_0x29599a,writer){return writer||(writer=$Writer['create']()),null!=_0x29599a['userId']&&Object['hasOwnProperty']['call'](_0x29599a,'userId')&&writer['uint32'](0xa)['string'](_0x29599a['userId']),null!=_0x29599a['type']&&Object['hasOwnProperty']['call'](_0x29599a,'type')&&writer['uint32'](0x12)['string'](_0x29599a['type']),null!=_0x29599a['createdAt']&&Object['hasOwnProperty']['call'](_0x29599a,'createdAt')&&writer['uint32'](0x1a)['string'](_0x29599a['createdAt']),writer;},OperationMetadataDescriptor['encodeDelimited']=function(_0x3600e7,writer){return this['encode'](_0x3600e7,writer)['ldelim']();},OperationMetadataDescriptor['decode']=function(_0xf2e7cd,length){_0xf2e7cd instanceof $Reader||(_0xf2e7cd=$Reader['create'](_0xf2e7cd));let _0x26fee2=void 0x0===length?_0xf2e7cd['len']:_0xf2e7cd['pos']+length,_0x4a70df=new $root['OperationMetadataDescriptor']();for(;_0xf2e7cd['pos']<_0x26fee2;){let tag=_0xf2e7cd['uint32']();switch(tag>>>0x3){case 0x1:_0x4a70df['userId']=_0xf2e7cd['string']();break;case 0x2:_0x4a70df['type']=_0xf2e7cd['string']();break;case 0x3:_0x4a70df['createdAt']=_0xf2e7cd['string']();break;default:_0xf2e7cd['skipType'](0x7&tag);}}return _0x4a70df;},OperationMetadataDescriptor['decodeDelimited']=function(_0x3c0335){return _0x3c0335 instanceof $Reader||(_0x3c0335=new $Reader(_0x3c0335)),this['decode'](_0x3c0335,_0x3c0335['uint32']());},OperationMetadataDescriptor['verify']=function(_0x28b4c3){return'object'!=typeof _0x28b4c3||null===_0x28b4c3?'object\x20expected':null!=_0x28b4c3['userId']&&_0x28b4c3['hasOwnProperty']('userId')&&!$util['isString'](_0x28b4c3['userId'])?'userId:\x20string\x20expected':null!=_0x28b4c3['type']&&_0x28b4c3['hasOwnProperty']('type')&&!$util['isString'](_0x28b4c3['type'])?'type:\x20string\x20expected':null!=_0x28b4c3['createdAt']&&_0x28b4c3['hasOwnProperty']('createdAt')&&!$util['isString'](_0x28b4c3['createdAt'])?'createdAt:\x20string\x20expected':null;},OperationMetadataDescriptor['fromObject']=function(object){if(object instanceof $root['OperationMetadataDescriptor'])return object;let _0x117a98=new $root['OperationMetadataDescriptor']();return null!=object['userId']&&(_0x117a98['userId']=String(object['userId'])),null!=object['type']&&(_0x117a98['type']=String(object['type'])),null!=object['createdAt']&&(_0x117a98['createdAt']=String(object['createdAt'])),_0x117a98;},OperationMetadataDescriptor['toObject']=function(_0x202f6e,options){options||(options={});let object={};return options['defaults']&&(object['userId']='',object['type']='',object['createdAt']=''),null!=_0x202f6e['userId']&&_0x202f6e['hasOwnProperty']('userId')&&(object['userId']=_0x202f6e['userId']),null!=_0x202f6e['type']&&_0x202f6e['hasOwnProperty']('type')&&(object['type']=_0x202f6e['type']),null!=_0x202f6e['createdAt']&&_0x202f6e['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x202f6e['createdAt']),object;},OperationMetadataDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},OperationMetadataDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/OperationMetadataDescriptor';},OperationMetadataDescriptor;})()),$root['CollaborativeEditingConnectMessage']=((()=>{function CollaborativeEditingConnectMessage(properties){if(this['buffers']=[],this['types']=[],properties){for(let _0x5ecad8=Object['keys'](properties),_0x168120=0x0;_0x168120<_0x5ecad8['length'];++_0x168120)null!=properties[_0x5ecad8[_0x168120]]&&(this[_0x5ecad8[_0x168120]]=properties[_0x5ecad8[_0x168120]]);}}return CollaborativeEditingConnectMessage['prototype']['id']='',CollaborativeEditingConnectMessage['prototype']['bundleVersion']='',CollaborativeEditingConnectMessage['prototype']['buffers']=$util['emptyArray'],CollaborativeEditingConnectMessage['prototype']['types']=$util['emptyArray'],CollaborativeEditingConnectMessage['prototype']['lastOperationId']='',CollaborativeEditingConnectMessage['create']=function(properties){return new CollaborativeEditingConnectMessage(properties);},CollaborativeEditingConnectMessage['encode']=function(_0x1d30a6,writer){if(writer||(writer=$Writer['create']()),null!=_0x1d30a6['id']&&Object['hasOwnProperty']['call'](_0x1d30a6,'id')&&writer['uint32'](0xa)['string'](_0x1d30a6['id']),null!=_0x1d30a6['bundleVersion']&&Object['hasOwnProperty']['call'](_0x1d30a6,'bundleVersion')&&writer['uint32'](0x12)['string'](_0x1d30a6['bundleVersion']),null!=_0x1d30a6['buffers']&&_0x1d30a6['buffers']['length']){for(let _0x249f11=0x0;_0x249f11<_0x1d30a6['buffers']['length'];++_0x249f11)writer['uint32'](0x1a)['bytes'](_0x1d30a6['buffers'][_0x249f11]);}if(null!=_0x1d30a6['types']&&_0x1d30a6['types']['length']){writer['uint32'](0x22)['fork']();for(let _0x1522fe=0x0;_0x1522fe<_0x1d30a6['types']['length'];++_0x1522fe)writer['uint32'](_0x1d30a6['types'][_0x1522fe]);writer['ldelim']();}return null!=_0x1d30a6['lastOperationId']&&Object['hasOwnProperty']['call'](_0x1d30a6,'lastOperationId')&&writer['uint32'](0x2a)['string'](_0x1d30a6['lastOperationId']),writer;},CollaborativeEditingConnectMessage['encodeDelimited']=function(_0x2024e5,writer){return this['encode'](_0x2024e5,writer)['ldelim']();},CollaborativeEditingConnectMessage['decode']=function(_0x47d7f6,length){_0x47d7f6 instanceof $Reader||(_0x47d7f6=$Reader['create'](_0x47d7f6));let _0x89d17b=void 0x0===length?_0x47d7f6['len']:_0x47d7f6['pos']+length,_0x5bdc79=new $root['CollaborativeEditingConnectMessage']();for(;_0x47d7f6['pos']<_0x89d17b;){let tag=_0x47d7f6['uint32']();switch(tag>>>0x3){case 0x1:_0x5bdc79['id']=_0x47d7f6['string']();break;case 0x2:_0x5bdc79['bundleVersion']=_0x47d7f6['string']();break;case 0x3:_0x5bdc79['buffers']&&_0x5bdc79['buffers']['length']||(_0x5bdc79['buffers']=[]),_0x5bdc79['buffers']['push'](_0x47d7f6['bytes']());break;case 0x4:if(_0x5bdc79['types']&&_0x5bdc79['types']['length']||(_0x5bdc79['types']=[]),0x2==(0x7&tag)){let _0xb4f47=_0x47d7f6['uint32']()+_0x47d7f6['pos'];for(;_0x47d7f6['pos']<_0xb4f47;)_0x5bdc79['types']['push'](_0x47d7f6['uint32']());}else _0x5bdc79['types']['push'](_0x47d7f6['uint32']());break;case 0x5:_0x5bdc79['lastOperationId']=_0x47d7f6['string']();break;default:_0x47d7f6['skipType'](0x7&tag);}}return _0x5bdc79;},CollaborativeEditingConnectMessage['decodeDelimited']=function(_0x534472){return _0x534472 instanceof $Reader||(_0x534472=new $Reader(_0x534472)),this['decode'](_0x534472,_0x534472['uint32']());},CollaborativeEditingConnectMessage['verify']=function(_0x443889){if('object'!=typeof _0x443889||null===_0x443889)return'object\x20expected';if(null!=_0x443889['id']&&_0x443889['hasOwnProperty']('id')&&!$util['isString'](_0x443889['id']))return'id:\x20string\x20expected';if(null!=_0x443889['bundleVersion']&&_0x443889['hasOwnProperty']('bundleVersion')&&!$util['isString'](_0x443889['bundleVersion']))return'bundleVersion:\x20string\x20expected';if(null!=_0x443889['buffers']&&_0x443889['hasOwnProperty']('buffers')){if(!Array['isArray'](_0x443889['buffers']))return'buffers:\x20array\x20expected';for(let _0x5ecfa1=0x0;_0x5ecfa1<_0x443889['buffers']['length'];++_0x5ecfa1)if(!(_0x443889['buffers'][_0x5ecfa1]&&'number'==typeof _0x443889['buffers'][_0x5ecfa1]['length']||$util['isString'](_0x443889['buffers'][_0x5ecfa1])))return'buffers:\x20buffer[]\x20expected';}if(null!=_0x443889['types']&&_0x443889['hasOwnProperty']('types')){if(!Array['isArray'](_0x443889['types']))return'types:\x20array\x20expected';for(let _0x240423=0x0;_0x240423<_0x443889['types']['length'];++_0x240423)if(!$util['isInteger'](_0x443889['types'][_0x240423]))return'types:\x20integer[]\x20expected';}return null!=_0x443889['lastOperationId']&&_0x443889['hasOwnProperty']('lastOperationId')&&!$util['isString'](_0x443889['lastOperationId'])?'lastOperationId:\x20string\x20expected':null;},CollaborativeEditingConnectMessage['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingConnectMessage'])return object;let _0x270dd3=new $root['CollaborativeEditingConnectMessage']();if(null!=object['id']&&(_0x270dd3['id']=String(object['id'])),null!=object['bundleVersion']&&(_0x270dd3['bundleVersion']=String(object['bundleVersion'])),object['buffers']){if(!Array['isArray'](object['buffers']))throw TypeError('.CollaborativeEditingConnectMessage.buffers:\x20array\x20expected');_0x270dd3['buffers']=[];for(let _0x55f202=0x0;_0x55f202<object['buffers']['length'];++_0x55f202)'string'==typeof object['buffers'][_0x55f202]?$util['base64']['decode'](object['buffers'][_0x55f202],_0x270dd3['buffers'][_0x55f202]=$util['newBuffer']($util['base64']['length'](object['buffers'][_0x55f202])),0x0):object['buffers'][_0x55f202]['length']>=0x0&&(_0x270dd3['buffers'][_0x55f202]=object['buffers'][_0x55f202]);}if(object['types']){if(!Array['isArray'](object['types']))throw TypeError('.CollaborativeEditingConnectMessage.types:\x20array\x20expected');_0x270dd3['types']=[];for(let _0x3a1d0e=0x0;_0x3a1d0e<object['types']['length'];++_0x3a1d0e)_0x270dd3['types'][_0x3a1d0e]=object['types'][_0x3a1d0e]>>>0x0;}return null!=object['lastOperationId']&&(_0x270dd3['lastOperationId']=String(object['lastOperationId'])),_0x270dd3;},CollaborativeEditingConnectMessage['toObject']=function(_0x242a2e,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['buffers']=[],object['types']=[]),options['defaults']&&(object['id']='',object['bundleVersion']='',object['lastOperationId']=''),null!=_0x242a2e['id']&&_0x242a2e['hasOwnProperty']('id')&&(object['id']=_0x242a2e['id']),null!=_0x242a2e['bundleVersion']&&_0x242a2e['hasOwnProperty']('bundleVersion')&&(object['bundleVersion']=_0x242a2e['bundleVersion']),_0x242a2e['buffers']&&_0x242a2e['buffers']['length']){object['buffers']=[];for(let _0x5b3255=0x0;_0x5b3255<_0x242a2e['buffers']['length'];++_0x5b3255)object['buffers'][_0x5b3255]=options['bytes']===String?$util['base64']['encode'](_0x242a2e['buffers'][_0x5b3255],0x0,_0x242a2e['buffers'][_0x5b3255]['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x242a2e['buffers'][_0x5b3255]):_0x242a2e['buffers'][_0x5b3255];}if(_0x242a2e['types']&&_0x242a2e['types']['length']){object['types']=[];for(let _0x55b01c=0x0;_0x55b01c<_0x242a2e['types']['length'];++_0x55b01c)object['types'][_0x55b01c]=_0x242a2e['types'][_0x55b01c];}return null!=_0x242a2e['lastOperationId']&&_0x242a2e['hasOwnProperty']('lastOperationId')&&(object['lastOperationId']=_0x242a2e['lastOperationId']),object;},CollaborativeEditingConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingConnectMessage';},CollaborativeEditingConnectMessage;})()),$root['CollaborativeEditingReconnectMessage']=((()=>{function CollaborativeEditingReconnectMessage(properties){if(properties){for(let _0x4dd68d=Object['keys'](properties),_0x54e08e=0x0;_0x54e08e<_0x4dd68d['length'];++_0x54e08e)null!=properties[_0x4dd68d[_0x54e08e]]&&(this[_0x4dd68d[_0x54e08e]]=properties[_0x4dd68d[_0x54e08e]]);}}return CollaborativeEditingReconnectMessage['prototype']['id']='',CollaborativeEditingReconnectMessage['prototype']['bundleVersion']='',CollaborativeEditingReconnectMessage['prototype']['lastKnowVersion']=0x0,CollaborativeEditingReconnectMessage['create']=function(properties){return new CollaborativeEditingReconnectMessage(properties);},CollaborativeEditingReconnectMessage['encode']=function(_0x1c31d7,writer){return writer||(writer=$Writer['create']()),null!=_0x1c31d7['id']&&Object['hasOwnProperty']['call'](_0x1c31d7,'id')&&writer['uint32'](0xa)['string'](_0x1c31d7['id']),null!=_0x1c31d7['bundleVersion']&&Object['hasOwnProperty']['call'](_0x1c31d7,'bundleVersion')&&writer['uint32'](0x12)['string'](_0x1c31d7['bundleVersion']),null!=_0x1c31d7['lastKnowVersion']&&Object['hasOwnProperty']['call'](_0x1c31d7,'lastKnowVersion')&&writer['uint32'](0x18)['uint32'](_0x1c31d7['lastKnowVersion']),writer;},CollaborativeEditingReconnectMessage['encodeDelimited']=function(_0x292b99,writer){return this['encode'](_0x292b99,writer)['ldelim']();},CollaborativeEditingReconnectMessage['decode']=function(_0x165819,length){_0x165819 instanceof $Reader||(_0x165819=$Reader['create'](_0x165819));let _0x564f34=void 0x0===length?_0x165819['len']:_0x165819['pos']+length,_0x1ffd99=new $root['CollaborativeEditingReconnectMessage']();for(;_0x165819['pos']<_0x564f34;){let tag=_0x165819['uint32']();switch(tag>>>0x3){case 0x1:_0x1ffd99['id']=_0x165819['string']();break;case 0x2:_0x1ffd99['bundleVersion']=_0x165819['string']();break;case 0x3:_0x1ffd99['lastKnowVersion']=_0x165819['uint32']();break;default:_0x165819['skipType'](0x7&tag);}}return _0x1ffd99;},CollaborativeEditingReconnectMessage['decodeDelimited']=function(_0x548231){return _0x548231 instanceof $Reader||(_0x548231=new $Reader(_0x548231)),this['decode'](_0x548231,_0x548231['uint32']());},CollaborativeEditingReconnectMessage['verify']=function(_0x5be207){return'object'!=typeof _0x5be207||null===_0x5be207?'object\x20expected':null!=_0x5be207['id']&&_0x5be207['hasOwnProperty']('id')&&!$util['isString'](_0x5be207['id'])?'id:\x20string\x20expected':null!=_0x5be207['bundleVersion']&&_0x5be207['hasOwnProperty']('bundleVersion')&&!$util['isString'](_0x5be207['bundleVersion'])?'bundleVersion:\x20string\x20expected':null!=_0x5be207['lastKnowVersion']&&_0x5be207['hasOwnProperty']('lastKnowVersion')&&!$util['isInteger'](_0x5be207['lastKnowVersion'])?'lastKnowVersion:\x20integer\x20expected':null;},CollaborativeEditingReconnectMessage['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingReconnectMessage'])return object;let _0x37848a=new $root['CollaborativeEditingReconnectMessage']();return null!=object['id']&&(_0x37848a['id']=String(object['id'])),null!=object['bundleVersion']&&(_0x37848a['bundleVersion']=String(object['bundleVersion'])),null!=object['lastKnowVersion']&&(_0x37848a['lastKnowVersion']=object['lastKnowVersion']>>>0x0),_0x37848a;},CollaborativeEditingReconnectMessage['toObject']=function(_0x4a385f,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['bundleVersion']='',object['lastKnowVersion']=0x0),null!=_0x4a385f['id']&&_0x4a385f['hasOwnProperty']('id')&&(object['id']=_0x4a385f['id']),null!=_0x4a385f['bundleVersion']&&_0x4a385f['hasOwnProperty']('bundleVersion')&&(object['bundleVersion']=_0x4a385f['bundleVersion']),null!=_0x4a385f['lastKnowVersion']&&_0x4a385f['hasOwnProperty']('lastKnowVersion')&&(object['lastKnowVersion']=_0x4a385f['lastKnowVersion']),object;},CollaborativeEditingReconnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingReconnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingReconnectMessage';},CollaborativeEditingReconnectMessage;})()),$root['CollaborativeEditingUpdateMessage']=((()=>{function CollaborativeEditingUpdateMessage(properties){if(this['buffers']=[],this['types']=[],this['metadata']=[],properties){for(let _0x3ae9c9=Object['keys'](properties),_0x965825=0x0;_0x965825<_0x3ae9c9['length'];++_0x965825)null!=properties[_0x3ae9c9[_0x965825]]&&(this[_0x3ae9c9[_0x965825]]=properties[_0x3ae9c9[_0x965825]]);}}return CollaborativeEditingUpdateMessage['prototype']['id']='',CollaborativeEditingUpdateMessage['prototype']['baseVersion']=0x0,CollaborativeEditingUpdateMessage['prototype']['buffers']=$util['emptyArray'],CollaborativeEditingUpdateMessage['prototype']['types']=$util['emptyArray'],CollaborativeEditingUpdateMessage['prototype']['metadata']=$util['emptyArray'],CollaborativeEditingUpdateMessage['prototype']['lastOperationId']='',CollaborativeEditingUpdateMessage['create']=function(properties){return new CollaborativeEditingUpdateMessage(properties);},CollaborativeEditingUpdateMessage['encode']=function(_0x6dfb56,writer){if(writer||(writer=$Writer['create']()),null!=_0x6dfb56['id']&&Object['hasOwnProperty']['call'](_0x6dfb56,'id')&&writer['uint32'](0xa)['string'](_0x6dfb56['id']),null!=_0x6dfb56['baseVersion']&&Object['hasOwnProperty']['call'](_0x6dfb56,'baseVersion')&&writer['uint32'](0x10)['uint32'](_0x6dfb56['baseVersion']),null!=_0x6dfb56['buffers']&&_0x6dfb56['buffers']['length']){for(let _0x21077e=0x0;_0x21077e<_0x6dfb56['buffers']['length'];++_0x21077e)writer['uint32'](0x1a)['bytes'](_0x6dfb56['buffers'][_0x21077e]);}if(null!=_0x6dfb56['types']&&_0x6dfb56['types']['length']){writer['uint32'](0x22)['fork']();for(let _0x2eba39=0x0;_0x2eba39<_0x6dfb56['types']['length'];++_0x2eba39)writer['uint32'](_0x6dfb56['types'][_0x2eba39]);writer['ldelim']();}if(null!=_0x6dfb56['metadata']&&_0x6dfb56['metadata']['length']){for(let _0x451310=0x0;_0x451310<_0x6dfb56['metadata']['length'];++_0x451310)$root['OperationMetadataDescriptor']['encode'](_0x6dfb56['metadata'][_0x451310],writer['uint32'](0x32)['fork']())['ldelim']();}return null!=_0x6dfb56['lastOperationId']&&Object['hasOwnProperty']['call'](_0x6dfb56,'lastOperationId')&&writer['uint32'](0x3a)['string'](_0x6dfb56['lastOperationId']),writer;},CollaborativeEditingUpdateMessage['encodeDelimited']=function(_0x1eeb4e,writer){return this['encode'](_0x1eeb4e,writer)['ldelim']();},CollaborativeEditingUpdateMessage['decode']=function(_0x150993,length){_0x150993 instanceof $Reader||(_0x150993=$Reader['create'](_0x150993));let _0x574698=void 0x0===length?_0x150993['len']:_0x150993['pos']+length,_0x1cbf92=new $root['CollaborativeEditingUpdateMessage']();for(;_0x150993['pos']<_0x574698;){let tag=_0x150993['uint32']();switch(tag>>>0x3){case 0x1:_0x1cbf92['id']=_0x150993['string']();break;case 0x2:_0x1cbf92['baseVersion']=_0x150993['uint32']();break;case 0x3:_0x1cbf92['buffers']&&_0x1cbf92['buffers']['length']||(_0x1cbf92['buffers']=[]),_0x1cbf92['buffers']['push'](_0x150993['bytes']());break;case 0x4:if(_0x1cbf92['types']&&_0x1cbf92['types']['length']||(_0x1cbf92['types']=[]),0x2==(0x7&tag)){let _0x53b81f=_0x150993['uint32']()+_0x150993['pos'];for(;_0x150993['pos']<_0x53b81f;)_0x1cbf92['types']['push'](_0x150993['uint32']());}else _0x1cbf92['types']['push'](_0x150993['uint32']());break;case 0x6:_0x1cbf92['metadata']&&_0x1cbf92['metadata']['length']||(_0x1cbf92['metadata']=[]),_0x1cbf92['metadata']['push']($root['OperationMetadataDescriptor']['decode'](_0x150993,_0x150993['uint32']()));break;case 0x7:_0x1cbf92['lastOperationId']=_0x150993['string']();break;default:_0x150993['skipType'](0x7&tag);}}return _0x1cbf92;},CollaborativeEditingUpdateMessage['decodeDelimited']=function(_0x1c0b4e){return _0x1c0b4e instanceof $Reader||(_0x1c0b4e=new $Reader(_0x1c0b4e)),this['decode'](_0x1c0b4e,_0x1c0b4e['uint32']());},CollaborativeEditingUpdateMessage['verify']=function(_0xc5165b){if('object'!=typeof _0xc5165b||null===_0xc5165b)return'object\x20expected';if(null!=_0xc5165b['id']&&_0xc5165b['hasOwnProperty']('id')&&!$util['isString'](_0xc5165b['id']))return'id:\x20string\x20expected';if(null!=_0xc5165b['baseVersion']&&_0xc5165b['hasOwnProperty']('baseVersion')&&!$util['isInteger'](_0xc5165b['baseVersion']))return'baseVersion:\x20integer\x20expected';if(null!=_0xc5165b['buffers']&&_0xc5165b['hasOwnProperty']('buffers')){if(!Array['isArray'](_0xc5165b['buffers']))return'buffers:\x20array\x20expected';for(let _0x11541f=0x0;_0x11541f<_0xc5165b['buffers']['length'];++_0x11541f)if(!(_0xc5165b['buffers'][_0x11541f]&&'number'==typeof _0xc5165b['buffers'][_0x11541f]['length']||$util['isString'](_0xc5165b['buffers'][_0x11541f])))return'buffers:\x20buffer[]\x20expected';}if(null!=_0xc5165b['types']&&_0xc5165b['hasOwnProperty']('types')){if(!Array['isArray'](_0xc5165b['types']))return'types:\x20array\x20expected';for(let _0x2ad9a0=0x0;_0x2ad9a0<_0xc5165b['types']['length'];++_0x2ad9a0)if(!$util['isInteger'](_0xc5165b['types'][_0x2ad9a0]))return'types:\x20integer[]\x20expected';}if(null!=_0xc5165b['metadata']&&_0xc5165b['hasOwnProperty']('metadata')){if(!Array['isArray'](_0xc5165b['metadata']))return'metadata:\x20array\x20expected';for(let _0x36807b=0x0;_0x36807b<_0xc5165b['metadata']['length'];++_0x36807b){let _0xef2677=$root['OperationMetadataDescriptor']['verify'](_0xc5165b['metadata'][_0x36807b]);if(_0xef2677)return'metadata.'+_0xef2677;}}return null!=_0xc5165b['lastOperationId']&&_0xc5165b['hasOwnProperty']('lastOperationId')&&!$util['isString'](_0xc5165b['lastOperationId'])?'lastOperationId:\x20string\x20expected':null;},CollaborativeEditingUpdateMessage['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingUpdateMessage'])return object;let _0x1f51b4=new $root['CollaborativeEditingUpdateMessage']();if(null!=object['id']&&(_0x1f51b4['id']=String(object['id'])),null!=object['baseVersion']&&(_0x1f51b4['baseVersion']=object['baseVersion']>>>0x0),object['buffers']){if(!Array['isArray'](object['buffers']))throw TypeError('.CollaborativeEditingUpdateMessage.buffers:\x20array\x20expected');_0x1f51b4['buffers']=[];for(let _0x52929d=0x0;_0x52929d<object['buffers']['length'];++_0x52929d)'string'==typeof object['buffers'][_0x52929d]?$util['base64']['decode'](object['buffers'][_0x52929d],_0x1f51b4['buffers'][_0x52929d]=$util['newBuffer']($util['base64']['length'](object['buffers'][_0x52929d])),0x0):object['buffers'][_0x52929d]['length']>=0x0&&(_0x1f51b4['buffers'][_0x52929d]=object['buffers'][_0x52929d]);}if(object['types']){if(!Array['isArray'](object['types']))throw TypeError('.CollaborativeEditingUpdateMessage.types:\x20array\x20expected');_0x1f51b4['types']=[];for(let _0x428633=0x0;_0x428633<object['types']['length'];++_0x428633)_0x1f51b4['types'][_0x428633]=object['types'][_0x428633]>>>0x0;}if(object['metadata']){if(!Array['isArray'](object['metadata']))throw TypeError('.CollaborativeEditingUpdateMessage.metadata:\x20array\x20expected');_0x1f51b4['metadata']=[];for(let _0x1a373b=0x0;_0x1a373b<object['metadata']['length'];++_0x1a373b){if('object'!=typeof object['metadata'][_0x1a373b])throw TypeError('.CollaborativeEditingUpdateMessage.metadata:\x20object\x20expected');_0x1f51b4['metadata'][_0x1a373b]=$root['OperationMetadataDescriptor']['fromObject'](object['metadata'][_0x1a373b]);}}return null!=object['lastOperationId']&&(_0x1f51b4['lastOperationId']=String(object['lastOperationId'])),_0x1f51b4;},CollaborativeEditingUpdateMessage['toObject']=function(_0x3eb6b4,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['buffers']=[],object['types']=[],object['metadata']=[]),options['defaults']&&(object['id']='',object['baseVersion']=0x0,object['lastOperationId']=''),null!=_0x3eb6b4['id']&&_0x3eb6b4['hasOwnProperty']('id')&&(object['id']=_0x3eb6b4['id']),null!=_0x3eb6b4['baseVersion']&&_0x3eb6b4['hasOwnProperty']('baseVersion')&&(object['baseVersion']=_0x3eb6b4['baseVersion']),_0x3eb6b4['buffers']&&_0x3eb6b4['buffers']['length']){object['buffers']=[];for(let _0x10bd35=0x0;_0x10bd35<_0x3eb6b4['buffers']['length'];++_0x10bd35)object['buffers'][_0x10bd35]=options['bytes']===String?$util['base64']['encode'](_0x3eb6b4['buffers'][_0x10bd35],0x0,_0x3eb6b4['buffers'][_0x10bd35]['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x3eb6b4['buffers'][_0x10bd35]):_0x3eb6b4['buffers'][_0x10bd35];}if(_0x3eb6b4['types']&&_0x3eb6b4['types']['length']){object['types']=[];for(let _0x3503a2=0x0;_0x3503a2<_0x3eb6b4['types']['length'];++_0x3503a2)object['types'][_0x3503a2]=_0x3eb6b4['types'][_0x3503a2];}if(_0x3eb6b4['metadata']&&_0x3eb6b4['metadata']['length']){object['metadata']=[];for(let _0x2fe992=0x0;_0x2fe992<_0x3eb6b4['metadata']['length'];++_0x2fe992)object['metadata'][_0x2fe992]=$root['OperationMetadataDescriptor']['toObject'](_0x3eb6b4['metadata'][_0x2fe992],options);}return null!=_0x3eb6b4['lastOperationId']&&_0x3eb6b4['hasOwnProperty']('lastOperationId')&&(object['lastOperationId']=_0x3eb6b4['lastOperationId']),object;},CollaborativeEditingUpdateMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingUpdateMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingUpdateMessage';},CollaborativeEditingUpdateMessage;})()),$root['GetDocumentDetailsMessage']=((()=>{function GetDocumentDetailsMessage(properties){if(properties){for(let _0x1c052c=Object['keys'](properties),_0x363901=0x0;_0x363901<_0x1c052c['length'];++_0x363901)null!=properties[_0x1c052c[_0x363901]]&&(this[_0x1c052c[_0x363901]]=properties[_0x1c052c[_0x363901]]);}}return GetDocumentDetailsMessage['prototype']['documentId']='',GetDocumentDetailsMessage['prototype']['environmentId']='',GetDocumentDetailsMessage['create']=function(properties){return new GetDocumentDetailsMessage(properties);},GetDocumentDetailsMessage['encode']=function(_0x5f1cde,writer){return writer||(writer=$Writer['create']()),null!=_0x5f1cde['documentId']&&Object['hasOwnProperty']['call'](_0x5f1cde,'documentId')&&writer['uint32'](0xa)['string'](_0x5f1cde['documentId']),null!=_0x5f1cde['environmentId']&&Object['hasOwnProperty']['call'](_0x5f1cde,'environmentId')&&writer['uint32'](0x12)['string'](_0x5f1cde['environmentId']),writer;},GetDocumentDetailsMessage['encodeDelimited']=function(_0x4b75e1,writer){return this['encode'](_0x4b75e1,writer)['ldelim']();},GetDocumentDetailsMessage['decode']=function(_0x5cf7fa,length){_0x5cf7fa instanceof $Reader||(_0x5cf7fa=$Reader['create'](_0x5cf7fa));let _0x4d7364=void 0x0===length?_0x5cf7fa['len']:_0x5cf7fa['pos']+length,_0x5bd4a6=new $root['GetDocumentDetailsMessage']();for(;_0x5cf7fa['pos']<_0x4d7364;){let tag=_0x5cf7fa['uint32']();switch(tag>>>0x3){case 0x1:_0x5bd4a6['documentId']=_0x5cf7fa['string']();break;case 0x2:_0x5bd4a6['environmentId']=_0x5cf7fa['string']();break;default:_0x5cf7fa['skipType'](0x7&tag);}}return _0x5bd4a6;},GetDocumentDetailsMessage['decodeDelimited']=function(_0x5b17be){return _0x5b17be instanceof $Reader||(_0x5b17be=new $Reader(_0x5b17be)),this['decode'](_0x5b17be,_0x5b17be['uint32']());},GetDocumentDetailsMessage['verify']=function(_0x561f15){return'object'!=typeof _0x561f15||null===_0x561f15?'object\x20expected':null!=_0x561f15['documentId']&&_0x561f15['hasOwnProperty']('documentId')&&!$util['isString'](_0x561f15['documentId'])?'documentId:\x20string\x20expected':null!=_0x561f15['environmentId']&&_0x561f15['hasOwnProperty']('environmentId')&&!$util['isString'](_0x561f15['environmentId'])?'environmentId:\x20string\x20expected':null;},GetDocumentDetailsMessage['fromObject']=function(object){if(object instanceof $root['GetDocumentDetailsMessage'])return object;let _0x1f24d3=new $root['GetDocumentDetailsMessage']();return null!=object['documentId']&&(_0x1f24d3['documentId']=String(object['documentId'])),null!=object['environmentId']&&(_0x1f24d3['environmentId']=String(object['environmentId'])),_0x1f24d3;},GetDocumentDetailsMessage['toObject']=function(_0x34007d,options){options||(options={});let object={};return options['defaults']&&(object['documentId']='',object['environmentId']=''),null!=_0x34007d['documentId']&&_0x34007d['hasOwnProperty']('documentId')&&(object['documentId']=_0x34007d['documentId']),null!=_0x34007d['environmentId']&&_0x34007d['hasOwnProperty']('environmentId')&&(object['environmentId']=_0x34007d['environmentId']),object;},GetDocumentDetailsMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetDocumentDetailsMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetDocumentDetailsMessage';},GetDocumentDetailsMessage;})()),$root['CollaborativeEditingConnectResponse']=((()=>{function CollaborativeEditingConnectResponse(properties){if(this['buffers']=[],this['types']=[],this['metadata']=[],properties){for(let _0x3bf6c9=Object['keys'](properties),_0x2a51bc=0x0;_0x2a51bc<_0x3bf6c9['length'];++_0x2a51bc)null!=properties[_0x3bf6c9[_0x2a51bc]]&&(this[_0x3bf6c9[_0x2a51bc]]=properties[_0x3bf6c9[_0x2a51bc]]);}}return CollaborativeEditingConnectResponse['prototype']['channel']='',CollaborativeEditingConnectResponse['prototype']['offset']=0x0,CollaborativeEditingConnectResponse['prototype']['version']=0x0,CollaborativeEditingConnectResponse['prototype']['buffers']=$util['emptyArray'],CollaborativeEditingConnectResponse['prototype']['types']=$util['emptyArray'],CollaborativeEditingConnectResponse['prototype']['metadata']=$util['emptyArray'],CollaborativeEditingConnectResponse['prototype']['initData']='',CollaborativeEditingConnectResponse['prototype']['isInitialized']=!0x1,CollaborativeEditingConnectResponse['prototype']['sessionId']='',CollaborativeEditingConnectResponse['prototype']['lastOperationId']='',CollaborativeEditingConnectResponse['prototype']['sessionCreatedAt']='',CollaborativeEditingConnectResponse['create']=function(properties){return new CollaborativeEditingConnectResponse(properties);},CollaborativeEditingConnectResponse['encode']=function(_0x5cff36,writer){if(writer||(writer=$Writer['create']()),null!=_0x5cff36['channel']&&Object['hasOwnProperty']['call'](_0x5cff36,'channel')&&writer['uint32'](0xa)['string'](_0x5cff36['channel']),null!=_0x5cff36['offset']&&Object['hasOwnProperty']['call'](_0x5cff36,'offset')&&writer['uint32'](0x10)['uint32'](_0x5cff36['offset']),null!=_0x5cff36['version']&&Object['hasOwnProperty']['call'](_0x5cff36,'version')&&writer['uint32'](0x18)['uint32'](_0x5cff36['version']),null!=_0x5cff36['buffers']&&_0x5cff36['buffers']['length']){for(let _0x5d406e=0x0;_0x5d406e<_0x5cff36['buffers']['length'];++_0x5d406e)writer['uint32'](0x22)['bytes'](_0x5cff36['buffers'][_0x5d406e]);}if(null!=_0x5cff36['types']&&_0x5cff36['types']['length']){writer['uint32'](0x2a)['fork']();for(let _0x58d8cb=0x0;_0x58d8cb<_0x5cff36['types']['length'];++_0x58d8cb)writer['uint32'](_0x5cff36['types'][_0x58d8cb]);writer['ldelim']();}if(null!=_0x5cff36['metadata']&&_0x5cff36['metadata']['length']){for(let _0x5de229=0x0;_0x5de229<_0x5cff36['metadata']['length'];++_0x5de229)$root['OperationMetadataDescriptor']['encode'](_0x5cff36['metadata'][_0x5de229],writer['uint32'](0x3a)['fork']())['ldelim']();}return null!=_0x5cff36['initData']&&Object['hasOwnProperty']['call'](_0x5cff36,'initData')&&writer['uint32'](0x42)['string'](_0x5cff36['initData']),null!=_0x5cff36['isInitialized']&&Object['hasOwnProperty']['call'](_0x5cff36,'isInitialized')&&writer['uint32'](0x48)['bool'](_0x5cff36['isInitialized']),null!=_0x5cff36['sessionId']&&Object['hasOwnProperty']['call'](_0x5cff36,'sessionId')&&writer['uint32'](0x52)['string'](_0x5cff36['sessionId']),null!=_0x5cff36['lastOperationId']&&Object['hasOwnProperty']['call'](_0x5cff36,'lastOperationId')&&writer['uint32'](0x5a)['string'](_0x5cff36['lastOperationId']),null!=_0x5cff36['sessionCreatedAt']&&Object['hasOwnProperty']['call'](_0x5cff36,'sessionCreatedAt')&&writer['uint32'](0x62)['string'](_0x5cff36['sessionCreatedAt']),writer;},CollaborativeEditingConnectResponse['encodeDelimited']=function(_0x8919e5,writer){return this['encode'](_0x8919e5,writer)['ldelim']();},CollaborativeEditingConnectResponse['decode']=function(_0x5b0c85,length){_0x5b0c85 instanceof $Reader||(_0x5b0c85=$Reader['create'](_0x5b0c85));let _0x2e59de=void 0x0===length?_0x5b0c85['len']:_0x5b0c85['pos']+length,_0x100ce5=new $root['CollaborativeEditingConnectResponse']();for(;_0x5b0c85['pos']<_0x2e59de;){let tag=_0x5b0c85['uint32']();switch(tag>>>0x3){case 0x1:_0x100ce5['channel']=_0x5b0c85['string']();break;case 0x2:_0x100ce5['offset']=_0x5b0c85['uint32']();break;case 0x3:_0x100ce5['version']=_0x5b0c85['uint32']();break;case 0x4:_0x100ce5['buffers']&&_0x100ce5['buffers']['length']||(_0x100ce5['buffers']=[]),_0x100ce5['buffers']['push'](_0x5b0c85['bytes']());break;case 0x5:if(_0x100ce5['types']&&_0x100ce5['types']['length']||(_0x100ce5['types']=[]),0x2==(0x7&tag)){let _0xa92434=_0x5b0c85['uint32']()+_0x5b0c85['pos'];for(;_0x5b0c85['pos']<_0xa92434;)_0x100ce5['types']['push'](_0x5b0c85['uint32']());}else _0x100ce5['types']['push'](_0x5b0c85['uint32']());break;case 0x7:_0x100ce5['metadata']&&_0x100ce5['metadata']['length']||(_0x100ce5['metadata']=[]),_0x100ce5['metadata']['push']($root['OperationMetadataDescriptor']['decode'](_0x5b0c85,_0x5b0c85['uint32']()));break;case 0x8:_0x100ce5['initData']=_0x5b0c85['string']();break;case 0x9:_0x100ce5['isInitialized']=_0x5b0c85['bool']();break;case 0xa:_0x100ce5['sessionId']=_0x5b0c85['string']();break;case 0xb:_0x100ce5['lastOperationId']=_0x5b0c85['string']();break;case 0xc:_0x100ce5['sessionCreatedAt']=_0x5b0c85['string']();break;default:_0x5b0c85['skipType'](0x7&tag);}}return _0x100ce5;},CollaborativeEditingConnectResponse['decodeDelimited']=function(_0x318fbb){return _0x318fbb instanceof $Reader||(_0x318fbb=new $Reader(_0x318fbb)),this['decode'](_0x318fbb,_0x318fbb['uint32']());},CollaborativeEditingConnectResponse['verify']=function(_0x3be76f){if('object'!=typeof _0x3be76f||null===_0x3be76f)return'object\x20expected';if(null!=_0x3be76f['channel']&&_0x3be76f['hasOwnProperty']('channel')&&!$util['isString'](_0x3be76f['channel']))return'channel:\x20string\x20expected';if(null!=_0x3be76f['offset']&&_0x3be76f['hasOwnProperty']('offset')&&!$util['isInteger'](_0x3be76f['offset']))return'offset:\x20integer\x20expected';if(null!=_0x3be76f['version']&&_0x3be76f['hasOwnProperty']('version')&&!$util['isInteger'](_0x3be76f['version']))return'version:\x20integer\x20expected';if(null!=_0x3be76f['buffers']&&_0x3be76f['hasOwnProperty']('buffers')){if(!Array['isArray'](_0x3be76f['buffers']))return'buffers:\x20array\x20expected';for(let _0xfdf16=0x0;_0xfdf16<_0x3be76f['buffers']['length'];++_0xfdf16)if(!(_0x3be76f['buffers'][_0xfdf16]&&'number'==typeof _0x3be76f['buffers'][_0xfdf16]['length']||$util['isString'](_0x3be76f['buffers'][_0xfdf16])))return'buffers:\x20buffer[]\x20expected';}if(null!=_0x3be76f['types']&&_0x3be76f['hasOwnProperty']('types')){if(!Array['isArray'](_0x3be76f['types']))return'types:\x20array\x20expected';for(let _0x3e2731=0x0;_0x3e2731<_0x3be76f['types']['length'];++_0x3e2731)if(!$util['isInteger'](_0x3be76f['types'][_0x3e2731]))return'types:\x20integer[]\x20expected';}if(null!=_0x3be76f['metadata']&&_0x3be76f['hasOwnProperty']('metadata')){if(!Array['isArray'](_0x3be76f['metadata']))return'metadata:\x20array\x20expected';for(let _0x5a1a36=0x0;_0x5a1a36<_0x3be76f['metadata']['length'];++_0x5a1a36){let _0x2827f7=$root['OperationMetadataDescriptor']['verify'](_0x3be76f['metadata'][_0x5a1a36]);if(_0x2827f7)return'metadata.'+_0x2827f7;}}return null!=_0x3be76f['initData']&&_0x3be76f['hasOwnProperty']('initData')&&!$util['isString'](_0x3be76f['initData'])?'initData:\x20string\x20expected':null!=_0x3be76f['isInitialized']&&_0x3be76f['hasOwnProperty']('isInitialized')&&'boolean'!=typeof _0x3be76f['isInitialized']?'isInitialized:\x20boolean\x20expected':null!=_0x3be76f['sessionId']&&_0x3be76f['hasOwnProperty']('sessionId')&&!$util['isString'](_0x3be76f['sessionId'])?'sessionId:\x20string\x20expected':null!=_0x3be76f['lastOperationId']&&_0x3be76f['hasOwnProperty']('lastOperationId')&&!$util['isString'](_0x3be76f['lastOperationId'])?'lastOperationId:\x20string\x20expected':null!=_0x3be76f['sessionCreatedAt']&&_0x3be76f['hasOwnProperty']('sessionCreatedAt')&&!$util['isString'](_0x3be76f['sessionCreatedAt'])?'sessionCreatedAt:\x20string\x20expected':null;},CollaborativeEditingConnectResponse['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingConnectResponse'])return object;let _0x35133d=new $root['CollaborativeEditingConnectResponse']();if(null!=object['channel']&&(_0x35133d['channel']=String(object['channel'])),null!=object['offset']&&(_0x35133d['offset']=object['offset']>>>0x0),null!=object['version']&&(_0x35133d['version']=object['version']>>>0x0),object['buffers']){if(!Array['isArray'](object['buffers']))throw TypeError('.CollaborativeEditingConnectResponse.buffers:\x20array\x20expected');_0x35133d['buffers']=[];for(let _0x3f9440=0x0;_0x3f9440<object['buffers']['length'];++_0x3f9440)'string'==typeof object['buffers'][_0x3f9440]?$util['base64']['decode'](object['buffers'][_0x3f9440],_0x35133d['buffers'][_0x3f9440]=$util['newBuffer']($util['base64']['length'](object['buffers'][_0x3f9440])),0x0):object['buffers'][_0x3f9440]['length']>=0x0&&(_0x35133d['buffers'][_0x3f9440]=object['buffers'][_0x3f9440]);}if(object['types']){if(!Array['isArray'](object['types']))throw TypeError('.CollaborativeEditingConnectResponse.types:\x20array\x20expected');_0x35133d['types']=[];for(let _0x20acf8=0x0;_0x20acf8<object['types']['length'];++_0x20acf8)_0x35133d['types'][_0x20acf8]=object['types'][_0x20acf8]>>>0x0;}if(object['metadata']){if(!Array['isArray'](object['metadata']))throw TypeError('.CollaborativeEditingConnectResponse.metadata:\x20array\x20expected');_0x35133d['metadata']=[];for(let _0x8e6024=0x0;_0x8e6024<object['metadata']['length'];++_0x8e6024){if('object'!=typeof object['metadata'][_0x8e6024])throw TypeError('.CollaborativeEditingConnectResponse.metadata:\x20object\x20expected');_0x35133d['metadata'][_0x8e6024]=$root['OperationMetadataDescriptor']['fromObject'](object['metadata'][_0x8e6024]);}}return null!=object['initData']&&(_0x35133d['initData']=String(object['initData'])),null!=object['isInitialized']&&(_0x35133d['isInitialized']=Boolean(object['isInitialized'])),null!=object['sessionId']&&(_0x35133d['sessionId']=String(object['sessionId'])),null!=object['lastOperationId']&&(_0x35133d['lastOperationId']=String(object['lastOperationId'])),null!=object['sessionCreatedAt']&&(_0x35133d['sessionCreatedAt']=String(object['sessionCreatedAt'])),_0x35133d;},CollaborativeEditingConnectResponse['toObject']=function(_0x3d0220,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['buffers']=[],object['types']=[],object['metadata']=[]),options['defaults']&&(object['channel']='',object['offset']=0x0,object['version']=0x0,object['initData']='',object['isInitialized']=!0x1,object['sessionId']='',object['lastOperationId']='',object['sessionCreatedAt']=''),null!=_0x3d0220['channel']&&_0x3d0220['hasOwnProperty']('channel')&&(object['channel']=_0x3d0220['channel']),null!=_0x3d0220['offset']&&_0x3d0220['hasOwnProperty']('offset')&&(object['offset']=_0x3d0220['offset']),null!=_0x3d0220['version']&&_0x3d0220['hasOwnProperty']('version')&&(object['version']=_0x3d0220['version']),_0x3d0220['buffers']&&_0x3d0220['buffers']['length']){object['buffers']=[];for(let _0x4e1f9=0x0;_0x4e1f9<_0x3d0220['buffers']['length'];++_0x4e1f9)object['buffers'][_0x4e1f9]=options['bytes']===String?$util['base64']['encode'](_0x3d0220['buffers'][_0x4e1f9],0x0,_0x3d0220['buffers'][_0x4e1f9]['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x3d0220['buffers'][_0x4e1f9]):_0x3d0220['buffers'][_0x4e1f9];}if(_0x3d0220['types']&&_0x3d0220['types']['length']){object['types']=[];for(let _0xc94e9e=0x0;_0xc94e9e<_0x3d0220['types']['length'];++_0xc94e9e)object['types'][_0xc94e9e]=_0x3d0220['types'][_0xc94e9e];}if(_0x3d0220['metadata']&&_0x3d0220['metadata']['length']){object['metadata']=[];for(let _0x1c8acf=0x0;_0x1c8acf<_0x3d0220['metadata']['length'];++_0x1c8acf)object['metadata'][_0x1c8acf]=$root['OperationMetadataDescriptor']['toObject'](_0x3d0220['metadata'][_0x1c8acf],options);}return null!=_0x3d0220['initData']&&_0x3d0220['hasOwnProperty']('initData')&&(object['initData']=_0x3d0220['initData']),null!=_0x3d0220['isInitialized']&&_0x3d0220['hasOwnProperty']('isInitialized')&&(object['isInitialized']=_0x3d0220['isInitialized']),null!=_0x3d0220['sessionId']&&_0x3d0220['hasOwnProperty']('sessionId')&&(object['sessionId']=_0x3d0220['sessionId']),null!=_0x3d0220['lastOperationId']&&_0x3d0220['hasOwnProperty']('lastOperationId')&&(object['lastOperationId']=_0x3d0220['lastOperationId']),null!=_0x3d0220['sessionCreatedAt']&&_0x3d0220['hasOwnProperty']('sessionCreatedAt')&&(object['sessionCreatedAt']=_0x3d0220['sessionCreatedAt']),object;},CollaborativeEditingConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingConnectResponse';},CollaborativeEditingConnectResponse;})()),$root['CollaborativeEditingResponse']=((()=>{function CollaborativeEditingResponse(properties){if(this['buffers']=[],this['types']=[],this['metadata']=[],properties){for(let _0x3abb58=Object['keys'](properties),_0x47df4d=0x0;_0x47df4d<_0x3abb58['length'];++_0x47df4d)null!=properties[_0x3abb58[_0x47df4d]]&&(this[_0x3abb58[_0x47df4d]]=properties[_0x3abb58[_0x47df4d]]);}}return CollaborativeEditingResponse['prototype']['version']=0x0,CollaborativeEditingResponse['prototype']['buffers']=$util['emptyArray'],CollaborativeEditingResponse['prototype']['types']=$util['emptyArray'],CollaborativeEditingResponse['prototype']['metadata']=$util['emptyArray'],CollaborativeEditingResponse['prototype']['lastOperationId']='',CollaborativeEditingResponse['prototype']['lastOperationAcceptedAt']='',CollaborativeEditingResponse['create']=function(properties){return new CollaborativeEditingResponse(properties);},CollaborativeEditingResponse['encode']=function(_0x298e86,writer){if(writer||(writer=$Writer['create']()),null!=_0x298e86['version']&&Object['hasOwnProperty']['call'](_0x298e86,'version')&&writer['uint32'](0x8)['uint32'](_0x298e86['version']),null!=_0x298e86['buffers']&&_0x298e86['buffers']['length']){for(let _0x44bea6=0x0;_0x44bea6<_0x298e86['buffers']['length'];++_0x44bea6)writer['uint32'](0x12)['bytes'](_0x298e86['buffers'][_0x44bea6]);}if(null!=_0x298e86['types']&&_0x298e86['types']['length']){writer['uint32'](0x1a)['fork']();for(let _0x5a87a8=0x0;_0x5a87a8<_0x298e86['types']['length'];++_0x5a87a8)writer['uint32'](_0x298e86['types'][_0x5a87a8]);writer['ldelim']();}if(null!=_0x298e86['metadata']&&_0x298e86['metadata']['length']){for(let _0x13d6e6=0x0;_0x13d6e6<_0x298e86['metadata']['length'];++_0x13d6e6)$root['OperationMetadataDescriptor']['encode'](_0x298e86['metadata'][_0x13d6e6],writer['uint32'](0x2a)['fork']())['ldelim']();}return null!=_0x298e86['lastOperationId']&&Object['hasOwnProperty']['call'](_0x298e86,'lastOperationId')&&writer['uint32'](0x32)['string'](_0x298e86['lastOperationId']),null!=_0x298e86['lastOperationAcceptedAt']&&Object['hasOwnProperty']['call'](_0x298e86,'lastOperationAcceptedAt')&&writer['uint32'](0x3a)['string'](_0x298e86['lastOperationAcceptedAt']),writer;},CollaborativeEditingResponse['encodeDelimited']=function(_0x404994,writer){return this['encode'](_0x404994,writer)['ldelim']();},CollaborativeEditingResponse['decode']=function(_0x541bc7,length){_0x541bc7 instanceof $Reader||(_0x541bc7=$Reader['create'](_0x541bc7));let _0x2cd8c8=void 0x0===length?_0x541bc7['len']:_0x541bc7['pos']+length,_0x530c93=new $root['CollaborativeEditingResponse']();for(;_0x541bc7['pos']<_0x2cd8c8;){let tag=_0x541bc7['uint32']();switch(tag>>>0x3){case 0x1:_0x530c93['version']=_0x541bc7['uint32']();break;case 0x2:_0x530c93['buffers']&&_0x530c93['buffers']['length']||(_0x530c93['buffers']=[]),_0x530c93['buffers']['push'](_0x541bc7['bytes']());break;case 0x3:if(_0x530c93['types']&&_0x530c93['types']['length']||(_0x530c93['types']=[]),0x2==(0x7&tag)){let _0x355f1c=_0x541bc7['uint32']()+_0x541bc7['pos'];for(;_0x541bc7['pos']<_0x355f1c;)_0x530c93['types']['push'](_0x541bc7['uint32']());}else _0x530c93['types']['push'](_0x541bc7['uint32']());break;case 0x5:_0x530c93['metadata']&&_0x530c93['metadata']['length']||(_0x530c93['metadata']=[]),_0x530c93['metadata']['push']($root['OperationMetadataDescriptor']['decode'](_0x541bc7,_0x541bc7['uint32']()));break;case 0x6:_0x530c93['lastOperationId']=_0x541bc7['string']();break;case 0x7:_0x530c93['lastOperationAcceptedAt']=_0x541bc7['string']();break;default:_0x541bc7['skipType'](0x7&tag);}}return _0x530c93;},CollaborativeEditingResponse['decodeDelimited']=function(_0x3a786a){return _0x3a786a instanceof $Reader||(_0x3a786a=new $Reader(_0x3a786a)),this['decode'](_0x3a786a,_0x3a786a['uint32']());},CollaborativeEditingResponse['verify']=function(_0x4e40a1){if('object'!=typeof _0x4e40a1||null===_0x4e40a1)return'object\x20expected';if(null!=_0x4e40a1['version']&&_0x4e40a1['hasOwnProperty']('version')&&!$util['isInteger'](_0x4e40a1['version']))return'version:\x20integer\x20expected';if(null!=_0x4e40a1['buffers']&&_0x4e40a1['hasOwnProperty']('buffers')){if(!Array['isArray'](_0x4e40a1['buffers']))return'buffers:\x20array\x20expected';for(let _0x1656f1=0x0;_0x1656f1<_0x4e40a1['buffers']['length'];++_0x1656f1)if(!(_0x4e40a1['buffers'][_0x1656f1]&&'number'==typeof _0x4e40a1['buffers'][_0x1656f1]['length']||$util['isString'](_0x4e40a1['buffers'][_0x1656f1])))return'buffers:\x20buffer[]\x20expected';}if(null!=_0x4e40a1['types']&&_0x4e40a1['hasOwnProperty']('types')){if(!Array['isArray'](_0x4e40a1['types']))return'types:\x20array\x20expected';for(let _0x1ec7db=0x0;_0x1ec7db<_0x4e40a1['types']['length'];++_0x1ec7db)if(!$util['isInteger'](_0x4e40a1['types'][_0x1ec7db]))return'types:\x20integer[]\x20expected';}if(null!=_0x4e40a1['metadata']&&_0x4e40a1['hasOwnProperty']('metadata')){if(!Array['isArray'](_0x4e40a1['metadata']))return'metadata:\x20array\x20expected';for(let _0x44ffd7=0x0;_0x44ffd7<_0x4e40a1['metadata']['length'];++_0x44ffd7){let _0x75ea34=$root['OperationMetadataDescriptor']['verify'](_0x4e40a1['metadata'][_0x44ffd7]);if(_0x75ea34)return'metadata.'+_0x75ea34;}}return null!=_0x4e40a1['lastOperationId']&&_0x4e40a1['hasOwnProperty']('lastOperationId')&&!$util['isString'](_0x4e40a1['lastOperationId'])?'lastOperationId:\x20string\x20expected':null!=_0x4e40a1['lastOperationAcceptedAt']&&_0x4e40a1['hasOwnProperty']('lastOperationAcceptedAt')&&!$util['isString'](_0x4e40a1['lastOperationAcceptedAt'])?'lastOperationAcceptedAt:\x20string\x20expected':null;},CollaborativeEditingResponse['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingResponse'])return object;let _0xd2131a=new $root['CollaborativeEditingResponse']();if(null!=object['version']&&(_0xd2131a['version']=object['version']>>>0x0),object['buffers']){if(!Array['isArray'](object['buffers']))throw TypeError('.CollaborativeEditingResponse.buffers:\x20array\x20expected');_0xd2131a['buffers']=[];for(let _0x311789=0x0;_0x311789<object['buffers']['length'];++_0x311789)'string'==typeof object['buffers'][_0x311789]?$util['base64']['decode'](object['buffers'][_0x311789],_0xd2131a['buffers'][_0x311789]=$util['newBuffer']($util['base64']['length'](object['buffers'][_0x311789])),0x0):object['buffers'][_0x311789]['length']>=0x0&&(_0xd2131a['buffers'][_0x311789]=object['buffers'][_0x311789]);}if(object['types']){if(!Array['isArray'](object['types']))throw TypeError('.CollaborativeEditingResponse.types:\x20array\x20expected');_0xd2131a['types']=[];for(let _0x2f356d=0x0;_0x2f356d<object['types']['length'];++_0x2f356d)_0xd2131a['types'][_0x2f356d]=object['types'][_0x2f356d]>>>0x0;}if(object['metadata']){if(!Array['isArray'](object['metadata']))throw TypeError('.CollaborativeEditingResponse.metadata:\x20array\x20expected');_0xd2131a['metadata']=[];for(let _0x34e4c3=0x0;_0x34e4c3<object['metadata']['length'];++_0x34e4c3){if('object'!=typeof object['metadata'][_0x34e4c3])throw TypeError('.CollaborativeEditingResponse.metadata:\x20object\x20expected');_0xd2131a['metadata'][_0x34e4c3]=$root['OperationMetadataDescriptor']['fromObject'](object['metadata'][_0x34e4c3]);}}return null!=object['lastOperationId']&&(_0xd2131a['lastOperationId']=String(object['lastOperationId'])),null!=object['lastOperationAcceptedAt']&&(_0xd2131a['lastOperationAcceptedAt']=String(object['lastOperationAcceptedAt'])),_0xd2131a;},CollaborativeEditingResponse['toObject']=function(_0x480e89,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['buffers']=[],object['types']=[],object['metadata']=[]),options['defaults']&&(object['version']=0x0,object['lastOperationId']='',object['lastOperationAcceptedAt']=''),null!=_0x480e89['version']&&_0x480e89['hasOwnProperty']('version')&&(object['version']=_0x480e89['version']),_0x480e89['buffers']&&_0x480e89['buffers']['length']){object['buffers']=[];for(let _0x57cb35=0x0;_0x57cb35<_0x480e89['buffers']['length'];++_0x57cb35)object['buffers'][_0x57cb35]=options['bytes']===String?$util['base64']['encode'](_0x480e89['buffers'][_0x57cb35],0x0,_0x480e89['buffers'][_0x57cb35]['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x480e89['buffers'][_0x57cb35]):_0x480e89['buffers'][_0x57cb35];}if(_0x480e89['types']&&_0x480e89['types']['length']){object['types']=[];for(let _0x5888ec=0x0;_0x5888ec<_0x480e89['types']['length'];++_0x5888ec)object['types'][_0x5888ec]=_0x480e89['types'][_0x5888ec];}if(_0x480e89['metadata']&&_0x480e89['metadata']['length']){object['metadata']=[];for(let _0x5e586a=0x0;_0x5e586a<_0x480e89['metadata']['length'];++_0x5e586a)object['metadata'][_0x5e586a]=$root['OperationMetadataDescriptor']['toObject'](_0x480e89['metadata'][_0x5e586a],options);}return null!=_0x480e89['lastOperationId']&&_0x480e89['hasOwnProperty']('lastOperationId')&&(object['lastOperationId']=_0x480e89['lastOperationId']),null!=_0x480e89['lastOperationAcceptedAt']&&_0x480e89['hasOwnProperty']('lastOperationAcceptedAt')&&(object['lastOperationAcceptedAt']=_0x480e89['lastOperationAcceptedAt']),object;},CollaborativeEditingResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingResponse';},CollaborativeEditingResponse;})()),$root['GetDocumentDetailsResponse']=((()=>{function GetDocumentDetailsResponse(properties){if(properties){for(let _0x11e011=Object['keys'](properties),_0x5d499b=0x0;_0x5d499b<_0x11e011['length'];++_0x5d499b)null!=properties[_0x11e011[_0x5d499b]]&&(this[_0x11e011[_0x5d499b]]=properties[_0x11e011[_0x5d499b]]);}}return GetDocumentDetailsResponse['prototype']['lastDocumentSessionId']='',GetDocumentDetailsResponse['prototype']['lastDocumentSessionOperationId']='',GetDocumentDetailsResponse['prototype']['currentDocumentSessionId']='',GetDocumentDetailsResponse['prototype']['currentDocumentSessionVersion']=0x0,GetDocumentDetailsResponse['prototype']['currentDocumentSessionOperationId']='',GetDocumentDetailsResponse['create']=function(properties){return new GetDocumentDetailsResponse(properties);},GetDocumentDetailsResponse['encode']=function(_0xfe256e,writer){return writer||(writer=$Writer['create']()),null!=_0xfe256e['lastDocumentSessionId']&&Object['hasOwnProperty']['call'](_0xfe256e,'lastDocumentSessionId')&&writer['uint32'](0xa)['string'](_0xfe256e['lastDocumentSessionId']),null!=_0xfe256e['lastDocumentSessionOperationId']&&Object['hasOwnProperty']['call'](_0xfe256e,'lastDocumentSessionOperationId')&&writer['uint32'](0x12)['string'](_0xfe256e['lastDocumentSessionOperationId']),null!=_0xfe256e['currentDocumentSessionId']&&Object['hasOwnProperty']['call'](_0xfe256e,'currentDocumentSessionId')&&writer['uint32'](0x1a)['string'](_0xfe256e['currentDocumentSessionId']),null!=_0xfe256e['currentDocumentSessionVersion']&&Object['hasOwnProperty']['call'](_0xfe256e,'currentDocumentSessionVersion')&&writer['uint32'](0x20)['uint32'](_0xfe256e['currentDocumentSessionVersion']),null!=_0xfe256e['currentDocumentSessionOperationId']&&Object['hasOwnProperty']['call'](_0xfe256e,'currentDocumentSessionOperationId')&&writer['uint32'](0x2a)['string'](_0xfe256e['currentDocumentSessionOperationId']),writer;},GetDocumentDetailsResponse['encodeDelimited']=function(_0x50749e,writer){return this['encode'](_0x50749e,writer)['ldelim']();},GetDocumentDetailsResponse['decode']=function(_0x6be26f,length){_0x6be26f instanceof $Reader||(_0x6be26f=$Reader['create'](_0x6be26f));let _0x38de7b=void 0x0===length?_0x6be26f['len']:_0x6be26f['pos']+length,_0x335001=new $root['GetDocumentDetailsResponse']();for(;_0x6be26f['pos']<_0x38de7b;){let tag=_0x6be26f['uint32']();switch(tag>>>0x3){case 0x1:_0x335001['lastDocumentSessionId']=_0x6be26f['string']();break;case 0x2:_0x335001['lastDocumentSessionOperationId']=_0x6be26f['string']();break;case 0x3:_0x335001['currentDocumentSessionId']=_0x6be26f['string']();break;case 0x4:_0x335001['currentDocumentSessionVersion']=_0x6be26f['uint32']();break;case 0x5:_0x335001['currentDocumentSessionOperationId']=_0x6be26f['string']();break;default:_0x6be26f['skipType'](0x7&tag);}}return _0x335001;},GetDocumentDetailsResponse['decodeDelimited']=function(_0xd973dd){return _0xd973dd instanceof $Reader||(_0xd973dd=new $Reader(_0xd973dd)),this['decode'](_0xd973dd,_0xd973dd['uint32']());},GetDocumentDetailsResponse['verify']=function(_0x20dbf2){return'object'!=typeof _0x20dbf2||null===_0x20dbf2?'object\x20expected':null!=_0x20dbf2['lastDocumentSessionId']&&_0x20dbf2['hasOwnProperty']('lastDocumentSessionId')&&!$util['isString'](_0x20dbf2['lastDocumentSessionId'])?'lastDocumentSessionId:\x20string\x20expected':null!=_0x20dbf2['lastDocumentSessionOperationId']&&_0x20dbf2['hasOwnProperty']('lastDocumentSessionOperationId')&&!$util['isString'](_0x20dbf2['lastDocumentSessionOperationId'])?'lastDocumentSessionOperationId:\x20string\x20expected':null!=_0x20dbf2['currentDocumentSessionId']&&_0x20dbf2['hasOwnProperty']('currentDocumentSessionId')&&!$util['isString'](_0x20dbf2['currentDocumentSessionId'])?'currentDocumentSessionId:\x20string\x20expected':null!=_0x20dbf2['currentDocumentSessionVersion']&&_0x20dbf2['hasOwnProperty']('currentDocumentSessionVersion')&&!$util['isInteger'](_0x20dbf2['currentDocumentSessionVersion'])?'currentDocumentSessionVersion:\x20integer\x20expected':null!=_0x20dbf2['currentDocumentSessionOperationId']&&_0x20dbf2['hasOwnProperty']('currentDocumentSessionOperationId')&&!$util['isString'](_0x20dbf2['currentDocumentSessionOperationId'])?'currentDocumentSessionOperationId:\x20string\x20expected':null;},GetDocumentDetailsResponse['fromObject']=function(object){if(object instanceof $root['GetDocumentDetailsResponse'])return object;let _0xc70846=new $root['GetDocumentDetailsResponse']();return null!=object['lastDocumentSessionId']&&(_0xc70846['lastDocumentSessionId']=String(object['lastDocumentSessionId'])),null!=object['lastDocumentSessionOperationId']&&(_0xc70846['lastDocumentSessionOperationId']=String(object['lastDocumentSessionOperationId'])),null!=object['currentDocumentSessionId']&&(_0xc70846['currentDocumentSessionId']=String(object['currentDocumentSessionId'])),null!=object['currentDocumentSessionVersion']&&(_0xc70846['currentDocumentSessionVersion']=object['currentDocumentSessionVersion']>>>0x0),null!=object['currentDocumentSessionOperationId']&&(_0xc70846['currentDocumentSessionOperationId']=String(object['currentDocumentSessionOperationId'])),_0xc70846;},GetDocumentDetailsResponse['toObject']=function(_0x4daf48,options){options||(options={});let object={};return options['defaults']&&(object['lastDocumentSessionId']='',object['lastDocumentSessionOperationId']='',object['currentDocumentSessionId']='',object['currentDocumentSessionVersion']=0x0,object['currentDocumentSessionOperationId']=''),null!=_0x4daf48['lastDocumentSessionId']&&_0x4daf48['hasOwnProperty']('lastDocumentSessionId')&&(object['lastDocumentSessionId']=_0x4daf48['lastDocumentSessionId']),null!=_0x4daf48['lastDocumentSessionOperationId']&&_0x4daf48['hasOwnProperty']('lastDocumentSessionOperationId')&&(object['lastDocumentSessionOperationId']=_0x4daf48['lastDocumentSessionOperationId']),null!=_0x4daf48['currentDocumentSessionId']&&_0x4daf48['hasOwnProperty']('currentDocumentSessionId')&&(object['currentDocumentSessionId']=_0x4daf48['currentDocumentSessionId']),null!=_0x4daf48['currentDocumentSessionVersion']&&_0x4daf48['hasOwnProperty']('currentDocumentSessionVersion')&&(object['currentDocumentSessionVersion']=_0x4daf48['currentDocumentSessionVersion']),null!=_0x4daf48['currentDocumentSessionOperationId']&&_0x4daf48['hasOwnProperty']('currentDocumentSessionOperationId')&&(object['currentDocumentSessionOperationId']=_0x4daf48['currentDocumentSessionOperationId']),object;},GetDocumentDetailsResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetDocumentDetailsResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetDocumentDetailsResponse';},GetDocumentDetailsResponse;})()),$root['CommentDescriptor']=((()=>{function CommentDescriptor(properties){if(properties){for(let _0xc45043=Object['keys'](properties),_0x41554f=0x0;_0x41554f<_0xc45043['length'];++_0x41554f)null!=properties[_0xc45043[_0x41554f]]&&(this[_0xc45043[_0x41554f]]=properties[_0xc45043[_0x41554f]]);}}return CommentDescriptor['prototype']['commentId']='',CommentDescriptor['prototype']['commentThreadId']='',CommentDescriptor['prototype']['userId']='',CommentDescriptor['prototype']['content']='',CommentDescriptor['prototype']['documentId']='',CommentDescriptor['prototype']['createdAt']='',CommentDescriptor['prototype']['attributes']='',CommentDescriptor['create']=function(properties){return new CommentDescriptor(properties);},CommentDescriptor['encode']=function(_0xc1e0b9,writer){return writer||(writer=$Writer['create']()),null!=_0xc1e0b9['commentId']&&Object['hasOwnProperty']['call'](_0xc1e0b9,'commentId')&&writer['uint32'](0xa)['string'](_0xc1e0b9['commentId']),null!=_0xc1e0b9['commentThreadId']&&Object['hasOwnProperty']['call'](_0xc1e0b9,'commentThreadId')&&writer['uint32'](0x12)['string'](_0xc1e0b9['commentThreadId']),null!=_0xc1e0b9['userId']&&Object['hasOwnProperty']['call'](_0xc1e0b9,'userId')&&writer['uint32'](0x1a)['string'](_0xc1e0b9['userId']),null!=_0xc1e0b9['content']&&Object['hasOwnProperty']['call'](_0xc1e0b9,'content')&&writer['uint32'](0x22)['string'](_0xc1e0b9['content']),null!=_0xc1e0b9['documentId']&&Object['hasOwnProperty']['call'](_0xc1e0b9,'documentId')&&writer['uint32'](0x2a)['string'](_0xc1e0b9['documentId']),null!=_0xc1e0b9['createdAt']&&Object['hasOwnProperty']['call'](_0xc1e0b9,'createdAt')&&writer['uint32'](0x32)['string'](_0xc1e0b9['createdAt']),null!=_0xc1e0b9['attributes']&&Object['hasOwnProperty']['call'](_0xc1e0b9,'attributes')&&writer['uint32'](0x3a)['string'](_0xc1e0b9['attributes']),writer;},CommentDescriptor['encodeDelimited']=function(_0x111583,writer){return this['encode'](_0x111583,writer)['ldelim']();},CommentDescriptor['decode']=function(_0x96f0fd,length){_0x96f0fd instanceof $Reader||(_0x96f0fd=$Reader['create'](_0x96f0fd));let _0x59ba86=void 0x0===length?_0x96f0fd['len']:_0x96f0fd['pos']+length,_0x5a65a7=new $root['CommentDescriptor']();for(;_0x96f0fd['pos']<_0x59ba86;){let tag=_0x96f0fd['uint32']();switch(tag>>>0x3){case 0x1:_0x5a65a7['commentId']=_0x96f0fd['string']();break;case 0x2:_0x5a65a7['commentThreadId']=_0x96f0fd['string']();break;case 0x3:_0x5a65a7['userId']=_0x96f0fd['string']();break;case 0x4:_0x5a65a7['content']=_0x96f0fd['string']();break;case 0x5:_0x5a65a7['documentId']=_0x96f0fd['string']();break;case 0x6:_0x5a65a7['createdAt']=_0x96f0fd['string']();break;case 0x7:_0x5a65a7['attributes']=_0x96f0fd['string']();break;default:_0x96f0fd['skipType'](0x7&tag);}}return _0x5a65a7;},CommentDescriptor['decodeDelimited']=function(_0x4e8dcc){return _0x4e8dcc instanceof $Reader||(_0x4e8dcc=new $Reader(_0x4e8dcc)),this['decode'](_0x4e8dcc,_0x4e8dcc['uint32']());},CommentDescriptor['verify']=function(_0x4ed71a){return'object'!=typeof _0x4ed71a||null===_0x4ed71a?'object\x20expected':null!=_0x4ed71a['commentId']&&_0x4ed71a['hasOwnProperty']('commentId')&&!$util['isString'](_0x4ed71a['commentId'])?'commentId:\x20string\x20expected':null!=_0x4ed71a['commentThreadId']&&_0x4ed71a['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x4ed71a['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x4ed71a['userId']&&_0x4ed71a['hasOwnProperty']('userId')&&!$util['isString'](_0x4ed71a['userId'])?'userId:\x20string\x20expected':null!=_0x4ed71a['content']&&_0x4ed71a['hasOwnProperty']('content')&&!$util['isString'](_0x4ed71a['content'])?'content:\x20string\x20expected':null!=_0x4ed71a['documentId']&&_0x4ed71a['hasOwnProperty']('documentId')&&!$util['isString'](_0x4ed71a['documentId'])?'documentId:\x20string\x20expected':null!=_0x4ed71a['createdAt']&&_0x4ed71a['hasOwnProperty']('createdAt')&&!$util['isString'](_0x4ed71a['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x4ed71a['attributes']&&_0x4ed71a['hasOwnProperty']('attributes')&&!$util['isString'](_0x4ed71a['attributes'])?'attributes:\x20string\x20expected':null;},CommentDescriptor['fromObject']=function(object){if(object instanceof $root['CommentDescriptor'])return object;let _0x3d2616=new $root['CommentDescriptor']();return null!=object['commentId']&&(_0x3d2616['commentId']=String(object['commentId'])),null!=object['commentThreadId']&&(_0x3d2616['commentThreadId']=String(object['commentThreadId'])),null!=object['userId']&&(_0x3d2616['userId']=String(object['userId'])),null!=object['content']&&(_0x3d2616['content']=String(object['content'])),null!=object['documentId']&&(_0x3d2616['documentId']=String(object['documentId'])),null!=object['createdAt']&&(_0x3d2616['createdAt']=String(object['createdAt'])),null!=object['attributes']&&(_0x3d2616['attributes']=String(object['attributes'])),_0x3d2616;},CommentDescriptor['toObject']=function(_0x1080f3,options){options||(options={});let object={};return options['defaults']&&(object['commentId']='',object['commentThreadId']='',object['userId']='',object['content']='',object['documentId']='',object['createdAt']='',object['attributes']=''),null!=_0x1080f3['commentId']&&_0x1080f3['hasOwnProperty']('commentId')&&(object['commentId']=_0x1080f3['commentId']),null!=_0x1080f3['commentThreadId']&&_0x1080f3['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x1080f3['commentThreadId']),null!=_0x1080f3['userId']&&_0x1080f3['hasOwnProperty']('userId')&&(object['userId']=_0x1080f3['userId']),null!=_0x1080f3['content']&&_0x1080f3['hasOwnProperty']('content')&&(object['content']=_0x1080f3['content']),null!=_0x1080f3['documentId']&&_0x1080f3['hasOwnProperty']('documentId')&&(object['documentId']=_0x1080f3['documentId']),null!=_0x1080f3['createdAt']&&_0x1080f3['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x1080f3['createdAt']),null!=_0x1080f3['attributes']&&_0x1080f3['hasOwnProperty']('attributes')&&(object['attributes']=_0x1080f3['attributes']),object;},CommentDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentDescriptor';},CommentDescriptor;})()),$root['CommentsThreadDescriptor']=((()=>{function CommentsThreadDescriptor(properties){if(this['comments']=[],properties){for(let _0x2f07c5=Object['keys'](properties),_0x344234=0x0;_0x344234<_0x2f07c5['length'];++_0x344234)null!=properties[_0x2f07c5[_0x344234]]&&(this[_0x2f07c5[_0x344234]]=properties[_0x2f07c5[_0x344234]]);}}return CommentsThreadDescriptor['prototype']['commentThreadId']='',CommentsThreadDescriptor['prototype']['comments']=$util['emptyArray'],CommentsThreadDescriptor['prototype']['resolvedAt']='',CommentsThreadDescriptor['prototype']['resolvedBy']='',CommentsThreadDescriptor['prototype']['context']='',CommentsThreadDescriptor['prototype']['createdAt']='',CommentsThreadDescriptor['prototype']['deletedAt']='',CommentsThreadDescriptor['prototype']['attributes']='',CommentsThreadDescriptor['prototype']['unlinkedAt']='',CommentsThreadDescriptor['create']=function(properties){return new CommentsThreadDescriptor(properties);},CommentsThreadDescriptor['encode']=function(_0x15e382,writer){if(writer||(writer=$Writer['create']()),null!=_0x15e382['commentThreadId']&&Object['hasOwnProperty']['call'](_0x15e382,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x15e382['commentThreadId']),null!=_0x15e382['comments']&&_0x15e382['comments']['length']){for(let _0x5929fb=0x0;_0x5929fb<_0x15e382['comments']['length'];++_0x5929fb)$root['CommentDescriptor']['encode'](_0x15e382['comments'][_0x5929fb],writer['uint32'](0x12)['fork']())['ldelim']();}return null!=_0x15e382['resolvedAt']&&Object['hasOwnProperty']['call'](_0x15e382,'resolvedAt')&&writer['uint32'](0x1a)['string'](_0x15e382['resolvedAt']),null!=_0x15e382['resolvedBy']&&Object['hasOwnProperty']['call'](_0x15e382,'resolvedBy')&&writer['uint32'](0x22)['string'](_0x15e382['resolvedBy']),null!=_0x15e382['context']&&Object['hasOwnProperty']['call'](_0x15e382,'context')&&writer['uint32'](0x2a)['string'](_0x15e382['context']),null!=_0x15e382['createdAt']&&Object['hasOwnProperty']['call'](_0x15e382,'createdAt')&&writer['uint32'](0x32)['string'](_0x15e382['createdAt']),null!=_0x15e382['deletedAt']&&Object['hasOwnProperty']['call'](_0x15e382,'deletedAt')&&writer['uint32'](0x3a)['string'](_0x15e382['deletedAt']),null!=_0x15e382['attributes']&&Object['hasOwnProperty']['call'](_0x15e382,'attributes')&&writer['uint32'](0x42)['string'](_0x15e382['attributes']),null!=_0x15e382['unlinkedAt']&&Object['hasOwnProperty']['call'](_0x15e382,'unlinkedAt')&&writer['uint32'](0x4a)['string'](_0x15e382['unlinkedAt']),writer;},CommentsThreadDescriptor['encodeDelimited']=function(_0x5d4fad,writer){return this['encode'](_0x5d4fad,writer)['ldelim']();},CommentsThreadDescriptor['decode']=function(_0x51a39c,length){_0x51a39c instanceof $Reader||(_0x51a39c=$Reader['create'](_0x51a39c));let _0x30badc=void 0x0===length?_0x51a39c['len']:_0x51a39c['pos']+length,_0x566fbb=new $root['CommentsThreadDescriptor']();for(;_0x51a39c['pos']<_0x30badc;){let tag=_0x51a39c['uint32']();switch(tag>>>0x3){case 0x1:_0x566fbb['commentThreadId']=_0x51a39c['string']();break;case 0x2:_0x566fbb['comments']&&_0x566fbb['comments']['length']||(_0x566fbb['comments']=[]),_0x566fbb['comments']['push']($root['CommentDescriptor']['decode'](_0x51a39c,_0x51a39c['uint32']()));break;case 0x3:_0x566fbb['resolvedAt']=_0x51a39c['string']();break;case 0x4:_0x566fbb['resolvedBy']=_0x51a39c['string']();break;case 0x5:_0x566fbb['context']=_0x51a39c['string']();break;case 0x6:_0x566fbb['createdAt']=_0x51a39c['string']();break;case 0x7:_0x566fbb['deletedAt']=_0x51a39c['string']();break;case 0x8:_0x566fbb['attributes']=_0x51a39c['string']();break;case 0x9:_0x566fbb['unlinkedAt']=_0x51a39c['string']();break;default:_0x51a39c['skipType'](0x7&tag);}}return _0x566fbb;},CommentsThreadDescriptor['decodeDelimited']=function(_0x14e353){return _0x14e353 instanceof $Reader||(_0x14e353=new $Reader(_0x14e353)),this['decode'](_0x14e353,_0x14e353['uint32']());},CommentsThreadDescriptor['verify']=function(_0x57e211){if('object'!=typeof _0x57e211||null===_0x57e211)return'object\x20expected';if(null!=_0x57e211['commentThreadId']&&_0x57e211['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x57e211['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0x57e211['comments']&&_0x57e211['hasOwnProperty']('comments')){if(!Array['isArray'](_0x57e211['comments']))return'comments:\x20array\x20expected';for(let _0x20fef7=0x0;_0x20fef7<_0x57e211['comments']['length'];++_0x20fef7){let _0x52d191=$root['CommentDescriptor']['verify'](_0x57e211['comments'][_0x20fef7]);if(_0x52d191)return'comments.'+_0x52d191;}}return null!=_0x57e211['resolvedAt']&&_0x57e211['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0x57e211['resolvedAt'])?'resolvedAt:\x20string\x20expected':null!=_0x57e211['resolvedBy']&&_0x57e211['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0x57e211['resolvedBy'])?'resolvedBy:\x20string\x20expected':null!=_0x57e211['context']&&_0x57e211['hasOwnProperty']('context')&&!$util['isString'](_0x57e211['context'])?'context:\x20string\x20expected':null!=_0x57e211['createdAt']&&_0x57e211['hasOwnProperty']('createdAt')&&!$util['isString'](_0x57e211['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x57e211['deletedAt']&&_0x57e211['hasOwnProperty']('deletedAt')&&!$util['isString'](_0x57e211['deletedAt'])?'deletedAt:\x20string\x20expected':null!=_0x57e211['attributes']&&_0x57e211['hasOwnProperty']('attributes')&&!$util['isString'](_0x57e211['attributes'])?'attributes:\x20string\x20expected':null!=_0x57e211['unlinkedAt']&&_0x57e211['hasOwnProperty']('unlinkedAt')&&!$util['isString'](_0x57e211['unlinkedAt'])?'unlinkedAt:\x20string\x20expected':null;},CommentsThreadDescriptor['fromObject']=function(object){if(object instanceof $root['CommentsThreadDescriptor'])return object;let _0x1b2268=new $root['CommentsThreadDescriptor']();if(null!=object['commentThreadId']&&(_0x1b2268['commentThreadId']=String(object['commentThreadId'])),object['comments']){if(!Array['isArray'](object['comments']))throw TypeError('.CommentsThreadDescriptor.comments:\x20array\x20expected');_0x1b2268['comments']=[];for(let _0x3d3166=0x0;_0x3d3166<object['comments']['length'];++_0x3d3166){if('object'!=typeof object['comments'][_0x3d3166])throw TypeError('.CommentsThreadDescriptor.comments:\x20object\x20expected');_0x1b2268['comments'][_0x3d3166]=$root['CommentDescriptor']['fromObject'](object['comments'][_0x3d3166]);}}return null!=object['resolvedAt']&&(_0x1b2268['resolvedAt']=String(object['resolvedAt'])),null!=object['resolvedBy']&&(_0x1b2268['resolvedBy']=String(object['resolvedBy'])),null!=object['context']&&(_0x1b2268['context']=String(object['context'])),null!=object['createdAt']&&(_0x1b2268['createdAt']=String(object['createdAt'])),null!=object['deletedAt']&&(_0x1b2268['deletedAt']=String(object['deletedAt'])),null!=object['attributes']&&(_0x1b2268['attributes']=String(object['attributes'])),null!=object['unlinkedAt']&&(_0x1b2268['unlinkedAt']=String(object['unlinkedAt'])),_0x1b2268;},CommentsThreadDescriptor['toObject']=function(_0x25cb12,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['comments']=[]),options['defaults']&&(object['commentThreadId']='',object['resolvedAt']='',object['resolvedBy']='',object['context']='',object['createdAt']='',object['deletedAt']='',object['attributes']='',object['unlinkedAt']=''),null!=_0x25cb12['commentThreadId']&&_0x25cb12['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x25cb12['commentThreadId']),_0x25cb12['comments']&&_0x25cb12['comments']['length']){object['comments']=[];for(let _0x2f5d60=0x0;_0x2f5d60<_0x25cb12['comments']['length'];++_0x2f5d60)object['comments'][_0x2f5d60]=$root['CommentDescriptor']['toObject'](_0x25cb12['comments'][_0x2f5d60],options);}return null!=_0x25cb12['resolvedAt']&&_0x25cb12['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0x25cb12['resolvedAt']),null!=_0x25cb12['resolvedBy']&&_0x25cb12['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0x25cb12['resolvedBy']),null!=_0x25cb12['context']&&_0x25cb12['hasOwnProperty']('context')&&(object['context']=_0x25cb12['context']),null!=_0x25cb12['createdAt']&&_0x25cb12['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x25cb12['createdAt']),null!=_0x25cb12['deletedAt']&&_0x25cb12['hasOwnProperty']('deletedAt')&&(object['deletedAt']=_0x25cb12['deletedAt']),null!=_0x25cb12['attributes']&&_0x25cb12['hasOwnProperty']('attributes')&&(object['attributes']=_0x25cb12['attributes']),null!=_0x25cb12['unlinkedAt']&&_0x25cb12['hasOwnProperty']('unlinkedAt')&&(object['unlinkedAt']=_0x25cb12['unlinkedAt']),object;},CommentsThreadDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsThreadDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsThreadDescriptor';},CommentsThreadDescriptor;})()),$root['CommentThreadAddedCommentDescriptor']=((()=>{function CommentThreadAddedCommentDescriptor(properties){if(properties){for(let _0x5b24df=Object['keys'](properties),_0x2969bf=0x0;_0x2969bf<_0x5b24df['length'];++_0x2969bf)null!=properties[_0x5b24df[_0x2969bf]]&&(this[_0x5b24df[_0x2969bf]]=properties[_0x5b24df[_0x2969bf]]);}}return CommentThreadAddedCommentDescriptor['prototype']['commentId']='',CommentThreadAddedCommentDescriptor['prototype']['createdAt']='',CommentThreadAddedCommentDescriptor['create']=function(properties){return new CommentThreadAddedCommentDescriptor(properties);},CommentThreadAddedCommentDescriptor['encode']=function(_0x7eb799,writer){return writer||(writer=$Writer['create']()),null!=_0x7eb799['commentId']&&Object['hasOwnProperty']['call'](_0x7eb799,'commentId')&&writer['uint32'](0xa)['string'](_0x7eb799['commentId']),null!=_0x7eb799['createdAt']&&Object['hasOwnProperty']['call'](_0x7eb799,'createdAt')&&writer['uint32'](0x12)['string'](_0x7eb799['createdAt']),writer;},CommentThreadAddedCommentDescriptor['encodeDelimited']=function(_0x19072b,writer){return this['encode'](_0x19072b,writer)['ldelim']();},CommentThreadAddedCommentDescriptor['decode']=function(_0x27da88,length){_0x27da88 instanceof $Reader||(_0x27da88=$Reader['create'](_0x27da88));let _0x53f6cc=void 0x0===length?_0x27da88['len']:_0x27da88['pos']+length,_0xd129ee=new $root['CommentThreadAddedCommentDescriptor']();for(;_0x27da88['pos']<_0x53f6cc;){let tag=_0x27da88['uint32']();switch(tag>>>0x3){case 0x1:_0xd129ee['commentId']=_0x27da88['string']();break;case 0x2:_0xd129ee['createdAt']=_0x27da88['string']();break;default:_0x27da88['skipType'](0x7&tag);}}return _0xd129ee;},CommentThreadAddedCommentDescriptor['decodeDelimited']=function(_0x4d5658){return _0x4d5658 instanceof $Reader||(_0x4d5658=new $Reader(_0x4d5658)),this['decode'](_0x4d5658,_0x4d5658['uint32']());},CommentThreadAddedCommentDescriptor['verify']=function(_0x3b7039){return'object'!=typeof _0x3b7039||null===_0x3b7039?'object\x20expected':null!=_0x3b7039['commentId']&&_0x3b7039['hasOwnProperty']('commentId')&&!$util['isString'](_0x3b7039['commentId'])?'commentId:\x20string\x20expected':null!=_0x3b7039['createdAt']&&_0x3b7039['hasOwnProperty']('createdAt')&&!$util['isString'](_0x3b7039['createdAt'])?'createdAt:\x20string\x20expected':null;},CommentThreadAddedCommentDescriptor['fromObject']=function(object){if(object instanceof $root['CommentThreadAddedCommentDescriptor'])return object;let _0x1ff4c9=new $root['CommentThreadAddedCommentDescriptor']();return null!=object['commentId']&&(_0x1ff4c9['commentId']=String(object['commentId'])),null!=object['createdAt']&&(_0x1ff4c9['createdAt']=String(object['createdAt'])),_0x1ff4c9;},CommentThreadAddedCommentDescriptor['toObject']=function(_0x15caeb,options){options||(options={});let object={};return options['defaults']&&(object['commentId']='',object['createdAt']=''),null!=_0x15caeb['commentId']&&_0x15caeb['hasOwnProperty']('commentId')&&(object['commentId']=_0x15caeb['commentId']),null!=_0x15caeb['createdAt']&&_0x15caeb['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x15caeb['createdAt']),object;},CommentThreadAddedCommentDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentThreadAddedCommentDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentThreadAddedCommentDescriptor';},CommentThreadAddedCommentDescriptor;})()),$root['CommentsV2AddCommentMessage']=((()=>{function CommentsV2AddCommentMessage(properties){if(properties){for(let _0x7fb906=Object['keys'](properties),_0x238fc3=0x0;_0x238fc3<_0x7fb906['length'];++_0x238fc3)null!=properties[_0x7fb906[_0x238fc3]]&&(this[_0x7fb906[_0x238fc3]]=properties[_0x7fb906[_0x238fc3]]);}}return CommentsV2AddCommentMessage['prototype']['commentThreadId']='',CommentsV2AddCommentMessage['prototype']['content']='',CommentsV2AddCommentMessage['prototype']['documentId']='',CommentsV2AddCommentMessage['prototype']['commentId']='',CommentsV2AddCommentMessage['prototype']['createdAt']='',CommentsV2AddCommentMessage['prototype']['userId']='',CommentsV2AddCommentMessage['prototype']['attributes']='',CommentsV2AddCommentMessage['prototype']['commentThread']=null,CommentsV2AddCommentMessage['create']=function(properties){return new CommentsV2AddCommentMessage(properties);},CommentsV2AddCommentMessage['encode']=function(_0x2b10fd,writer){return writer||(writer=$Writer['create']()),null!=_0x2b10fd['commentThreadId']&&Object['hasOwnProperty']['call'](_0x2b10fd,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x2b10fd['commentThreadId']),null!=_0x2b10fd['content']&&Object['hasOwnProperty']['call'](_0x2b10fd,'content')&&writer['uint32'](0x12)['string'](_0x2b10fd['content']),null!=_0x2b10fd['documentId']&&Object['hasOwnProperty']['call'](_0x2b10fd,'documentId')&&writer['uint32'](0x1a)['string'](_0x2b10fd['documentId']),null!=_0x2b10fd['commentId']&&Object['hasOwnProperty']['call'](_0x2b10fd,'commentId')&&writer['uint32'](0x22)['string'](_0x2b10fd['commentId']),null!=_0x2b10fd['createdAt']&&Object['hasOwnProperty']['call'](_0x2b10fd,'createdAt')&&writer['uint32'](0x2a)['string'](_0x2b10fd['createdAt']),null!=_0x2b10fd['userId']&&Object['hasOwnProperty']['call'](_0x2b10fd,'userId')&&writer['uint32'](0x32)['string'](_0x2b10fd['userId']),null!=_0x2b10fd['attributes']&&Object['hasOwnProperty']['call'](_0x2b10fd,'attributes')&&writer['uint32'](0x3a)['string'](_0x2b10fd['attributes']),null!=_0x2b10fd['commentThread']&&Object['hasOwnProperty']['call'](_0x2b10fd,'commentThread')&&$root['CommentsThreadDescriptor']['encode'](_0x2b10fd['commentThread'],writer['uint32'](0x42)['fork']())['ldelim'](),writer;},CommentsV2AddCommentMessage['encodeDelimited']=function(_0x4c4d5a,writer){return this['encode'](_0x4c4d5a,writer)['ldelim']();},CommentsV2AddCommentMessage['decode']=function(_0x34e3be,length){_0x34e3be instanceof $Reader||(_0x34e3be=$Reader['create'](_0x34e3be));let _0x3de197=void 0x0===length?_0x34e3be['len']:_0x34e3be['pos']+length,_0x49b5b0=new $root['CommentsV2AddCommentMessage']();for(;_0x34e3be['pos']<_0x3de197;){let tag=_0x34e3be['uint32']();switch(tag>>>0x3){case 0x1:_0x49b5b0['commentThreadId']=_0x34e3be['string']();break;case 0x2:_0x49b5b0['content']=_0x34e3be['string']();break;case 0x3:_0x49b5b0['documentId']=_0x34e3be['string']();break;case 0x4:_0x49b5b0['commentId']=_0x34e3be['string']();break;case 0x5:_0x49b5b0['createdAt']=_0x34e3be['string']();break;case 0x6:_0x49b5b0['userId']=_0x34e3be['string']();break;case 0x7:_0x49b5b0['attributes']=_0x34e3be['string']();break;case 0x8:_0x49b5b0['commentThread']=$root['CommentsThreadDescriptor']['decode'](_0x34e3be,_0x34e3be['uint32']());break;default:_0x34e3be['skipType'](0x7&tag);}}return _0x49b5b0;},CommentsV2AddCommentMessage['decodeDelimited']=function(_0x56eb05){return _0x56eb05 instanceof $Reader||(_0x56eb05=new $Reader(_0x56eb05)),this['decode'](_0x56eb05,_0x56eb05['uint32']());},CommentsV2AddCommentMessage['verify']=function(_0xae02e9){if('object'!=typeof _0xae02e9||null===_0xae02e9)return'object\x20expected';if(null!=_0xae02e9['commentThreadId']&&_0xae02e9['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0xae02e9['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0xae02e9['content']&&_0xae02e9['hasOwnProperty']('content')&&!$util['isString'](_0xae02e9['content']))return'content:\x20string\x20expected';if(null!=_0xae02e9['documentId']&&_0xae02e9['hasOwnProperty']('documentId')&&!$util['isString'](_0xae02e9['documentId']))return'documentId:\x20string\x20expected';if(null!=_0xae02e9['commentId']&&_0xae02e9['hasOwnProperty']('commentId')&&!$util['isString'](_0xae02e9['commentId']))return'commentId:\x20string\x20expected';if(null!=_0xae02e9['createdAt']&&_0xae02e9['hasOwnProperty']('createdAt')&&!$util['isString'](_0xae02e9['createdAt']))return'createdAt:\x20string\x20expected';if(null!=_0xae02e9['userId']&&_0xae02e9['hasOwnProperty']('userId')&&!$util['isString'](_0xae02e9['userId']))return'userId:\x20string\x20expected';if(null!=_0xae02e9['attributes']&&_0xae02e9['hasOwnProperty']('attributes')&&!$util['isString'](_0xae02e9['attributes']))return'attributes:\x20string\x20expected';if(null!=_0xae02e9['commentThread']&&_0xae02e9['hasOwnProperty']('commentThread')){let _0x24628b=$root['CommentsThreadDescriptor']['verify'](_0xae02e9['commentThread']);if(_0x24628b)return'commentThread.'+_0x24628b;}return null;},CommentsV2AddCommentMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2AddCommentMessage'])return object;let _0x2976ad=new $root['CommentsV2AddCommentMessage']();if(null!=object['commentThreadId']&&(_0x2976ad['commentThreadId']=String(object['commentThreadId'])),null!=object['content']&&(_0x2976ad['content']=String(object['content'])),null!=object['documentId']&&(_0x2976ad['documentId']=String(object['documentId'])),null!=object['commentId']&&(_0x2976ad['commentId']=String(object['commentId'])),null!=object['createdAt']&&(_0x2976ad['createdAt']=String(object['createdAt'])),null!=object['userId']&&(_0x2976ad['userId']=String(object['userId'])),null!=object['attributes']&&(_0x2976ad['attributes']=String(object['attributes'])),null!=object['commentThread']){if('object'!=typeof object['commentThread'])throw TypeError('.CommentsV2AddCommentMessage.commentThread:\x20object\x20expected');_0x2976ad['commentThread']=$root['CommentsThreadDescriptor']['fromObject'](object['commentThread']);}return _0x2976ad;},CommentsV2AddCommentMessage['toObject']=function(_0x32c4f7,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['content']='',object['documentId']='',object['commentId']='',object['createdAt']='',object['userId']='',object['attributes']='',object['commentThread']=null),null!=_0x32c4f7['commentThreadId']&&_0x32c4f7['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x32c4f7['commentThreadId']),null!=_0x32c4f7['content']&&_0x32c4f7['hasOwnProperty']('content')&&(object['content']=_0x32c4f7['content']),null!=_0x32c4f7['documentId']&&_0x32c4f7['hasOwnProperty']('documentId')&&(object['documentId']=_0x32c4f7['documentId']),null!=_0x32c4f7['commentId']&&_0x32c4f7['hasOwnProperty']('commentId')&&(object['commentId']=_0x32c4f7['commentId']),null!=_0x32c4f7['createdAt']&&_0x32c4f7['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x32c4f7['createdAt']),null!=_0x32c4f7['userId']&&_0x32c4f7['hasOwnProperty']('userId')&&(object['userId']=_0x32c4f7['userId']),null!=_0x32c4f7['attributes']&&_0x32c4f7['hasOwnProperty']('attributes')&&(object['attributes']=_0x32c4f7['attributes']),null!=_0x32c4f7['commentThread']&&_0x32c4f7['hasOwnProperty']('commentThread')&&(object['commentThread']=$root['CommentsThreadDescriptor']['toObject'](_0x32c4f7['commentThread'],options)),object;},CommentsV2AddCommentMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2AddCommentMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2AddCommentMessage';},CommentsV2AddCommentMessage;})()),$root['CommentsV2AddCommentThreadMessage']=((()=>{function CommentsV2AddCommentThreadMessage(properties){if(this['comments']=[],properties){for(let _0x51a00b=Object['keys'](properties),_0x3c035e=0x0;_0x3c035e<_0x51a00b['length'];++_0x3c035e)null!=properties[_0x51a00b[_0x3c035e]]&&(this[_0x51a00b[_0x3c035e]]=properties[_0x51a00b[_0x3c035e]]);}}return CommentsV2AddCommentThreadMessage['prototype']['documentId']='',CommentsV2AddCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2AddCommentThreadMessage['prototype']['context']='',CommentsV2AddCommentThreadMessage['prototype']['createdAt']='',CommentsV2AddCommentThreadMessage['prototype']['resolvedAt']='',CommentsV2AddCommentThreadMessage['prototype']['resolvedBy']='',CommentsV2AddCommentThreadMessage['prototype']['attributes']='',CommentsV2AddCommentThreadMessage['prototype']['deletedAt']='',CommentsV2AddCommentThreadMessage['prototype']['comments']=$util['emptyArray'],CommentsV2AddCommentThreadMessage['create']=function(properties){return new CommentsV2AddCommentThreadMessage(properties);},CommentsV2AddCommentThreadMessage['encode']=function(_0x4b4cdb,writer){if(writer||(writer=$Writer['create']()),null!=_0x4b4cdb['documentId']&&Object['hasOwnProperty']['call'](_0x4b4cdb,'documentId')&&writer['uint32'](0xa)['string'](_0x4b4cdb['documentId']),null!=_0x4b4cdb['commentThreadId']&&Object['hasOwnProperty']['call'](_0x4b4cdb,'commentThreadId')&&writer['uint32'](0x12)['string'](_0x4b4cdb['commentThreadId']),null!=_0x4b4cdb['context']&&Object['hasOwnProperty']['call'](_0x4b4cdb,'context')&&writer['uint32'](0x1a)['string'](_0x4b4cdb['context']),null!=_0x4b4cdb['createdAt']&&Object['hasOwnProperty']['call'](_0x4b4cdb,'createdAt')&&writer['uint32'](0x22)['string'](_0x4b4cdb['createdAt']),null!=_0x4b4cdb['resolvedAt']&&Object['hasOwnProperty']['call'](_0x4b4cdb,'resolvedAt')&&writer['uint32'](0x2a)['string'](_0x4b4cdb['resolvedAt']),null!=_0x4b4cdb['resolvedBy']&&Object['hasOwnProperty']['call'](_0x4b4cdb,'resolvedBy')&&writer['uint32'](0x32)['string'](_0x4b4cdb['resolvedBy']),null!=_0x4b4cdb['attributes']&&Object['hasOwnProperty']['call'](_0x4b4cdb,'attributes')&&writer['uint32'](0x3a)['string'](_0x4b4cdb['attributes']),null!=_0x4b4cdb['deletedAt']&&Object['hasOwnProperty']['call'](_0x4b4cdb,'deletedAt')&&writer['uint32'](0x42)['string'](_0x4b4cdb['deletedAt']),null!=_0x4b4cdb['comments']&&_0x4b4cdb['comments']['length']){for(let _0x48bdfc=0x0;_0x48bdfc<_0x4b4cdb['comments']['length'];++_0x48bdfc)$root['CommentDescriptor']['encode'](_0x4b4cdb['comments'][_0x48bdfc],writer['uint32'](0x4a)['fork']())['ldelim']();}return writer;},CommentsV2AddCommentThreadMessage['encodeDelimited']=function(_0xf5de03,writer){return this['encode'](_0xf5de03,writer)['ldelim']();},CommentsV2AddCommentThreadMessage['decode']=function(_0x33e676,length){_0x33e676 instanceof $Reader||(_0x33e676=$Reader['create'](_0x33e676));let _0x16f7ad=void 0x0===length?_0x33e676['len']:_0x33e676['pos']+length,_0x239138=new $root['CommentsV2AddCommentThreadMessage']();for(;_0x33e676['pos']<_0x16f7ad;){let tag=_0x33e676['uint32']();switch(tag>>>0x3){case 0x1:_0x239138['documentId']=_0x33e676['string']();break;case 0x2:_0x239138['commentThreadId']=_0x33e676['string']();break;case 0x3:_0x239138['context']=_0x33e676['string']();break;case 0x4:_0x239138['createdAt']=_0x33e676['string']();break;case 0x5:_0x239138['resolvedAt']=_0x33e676['string']();break;case 0x6:_0x239138['resolvedBy']=_0x33e676['string']();break;case 0x7:_0x239138['attributes']=_0x33e676['string']();break;case 0x8:_0x239138['deletedAt']=_0x33e676['string']();break;case 0x9:_0x239138['comments']&&_0x239138['comments']['length']||(_0x239138['comments']=[]),_0x239138['comments']['push']($root['CommentDescriptor']['decode'](_0x33e676,_0x33e676['uint32']()));break;default:_0x33e676['skipType'](0x7&tag);}}return _0x239138;},CommentsV2AddCommentThreadMessage['decodeDelimited']=function(_0x254d7f){return _0x254d7f instanceof $Reader||(_0x254d7f=new $Reader(_0x254d7f)),this['decode'](_0x254d7f,_0x254d7f['uint32']());},CommentsV2AddCommentThreadMessage['verify']=function(_0x260154){if('object'!=typeof _0x260154||null===_0x260154)return'object\x20expected';if(null!=_0x260154['documentId']&&_0x260154['hasOwnProperty']('documentId')&&!$util['isString'](_0x260154['documentId']))return'documentId:\x20string\x20expected';if(null!=_0x260154['commentThreadId']&&_0x260154['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x260154['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0x260154['context']&&_0x260154['hasOwnProperty']('context')&&!$util['isString'](_0x260154['context']))return'context:\x20string\x20expected';if(null!=_0x260154['createdAt']&&_0x260154['hasOwnProperty']('createdAt')&&!$util['isString'](_0x260154['createdAt']))return'createdAt:\x20string\x20expected';if(null!=_0x260154['resolvedAt']&&_0x260154['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0x260154['resolvedAt']))return'resolvedAt:\x20string\x20expected';if(null!=_0x260154['resolvedBy']&&_0x260154['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0x260154['resolvedBy']))return'resolvedBy:\x20string\x20expected';if(null!=_0x260154['attributes']&&_0x260154['hasOwnProperty']('attributes')&&!$util['isString'](_0x260154['attributes']))return'attributes:\x20string\x20expected';if(null!=_0x260154['deletedAt']&&_0x260154['hasOwnProperty']('deletedAt')&&!$util['isString'](_0x260154['deletedAt']))return'deletedAt:\x20string\x20expected';if(null!=_0x260154['comments']&&_0x260154['hasOwnProperty']('comments')){if(!Array['isArray'](_0x260154['comments']))return'comments:\x20array\x20expected';for(let _0x4769e2=0x0;_0x4769e2<_0x260154['comments']['length'];++_0x4769e2){let _0x583abc=$root['CommentDescriptor']['verify'](_0x260154['comments'][_0x4769e2]);if(_0x583abc)return'comments.'+_0x583abc;}}return null;},CommentsV2AddCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2AddCommentThreadMessage'])return object;let _0x3ee4b3=new $root['CommentsV2AddCommentThreadMessage']();if(null!=object['documentId']&&(_0x3ee4b3['documentId']=String(object['documentId'])),null!=object['commentThreadId']&&(_0x3ee4b3['commentThreadId']=String(object['commentThreadId'])),null!=object['context']&&(_0x3ee4b3['context']=String(object['context'])),null!=object['createdAt']&&(_0x3ee4b3['createdAt']=String(object['createdAt'])),null!=object['resolvedAt']&&(_0x3ee4b3['resolvedAt']=String(object['resolvedAt'])),null!=object['resolvedBy']&&(_0x3ee4b3['resolvedBy']=String(object['resolvedBy'])),null!=object['attributes']&&(_0x3ee4b3['attributes']=String(object['attributes'])),null!=object['deletedAt']&&(_0x3ee4b3['deletedAt']=String(object['deletedAt'])),object['comments']){if(!Array['isArray'](object['comments']))throw TypeError('.CommentsV2AddCommentThreadMessage.comments:\x20array\x20expected');_0x3ee4b3['comments']=[];for(let _0x166222=0x0;_0x166222<object['comments']['length'];++_0x166222){if('object'!=typeof object['comments'][_0x166222])throw TypeError('.CommentsV2AddCommentThreadMessage.comments:\x20object\x20expected');_0x3ee4b3['comments'][_0x166222]=$root['CommentDescriptor']['fromObject'](object['comments'][_0x166222]);}}return _0x3ee4b3;},CommentsV2AddCommentThreadMessage['toObject']=function(_0x17069f,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['comments']=[]),options['defaults']&&(object['documentId']='',object['commentThreadId']='',object['context']='',object['createdAt']='',object['resolvedAt']='',object['resolvedBy']='',object['attributes']='',object['deletedAt']=''),null!=_0x17069f['documentId']&&_0x17069f['hasOwnProperty']('documentId')&&(object['documentId']=_0x17069f['documentId']),null!=_0x17069f['commentThreadId']&&_0x17069f['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x17069f['commentThreadId']),null!=_0x17069f['context']&&_0x17069f['hasOwnProperty']('context')&&(object['context']=_0x17069f['context']),null!=_0x17069f['createdAt']&&_0x17069f['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x17069f['createdAt']),null!=_0x17069f['resolvedAt']&&_0x17069f['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0x17069f['resolvedAt']),null!=_0x17069f['resolvedBy']&&_0x17069f['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0x17069f['resolvedBy']),null!=_0x17069f['attributes']&&_0x17069f['hasOwnProperty']('attributes')&&(object['attributes']=_0x17069f['attributes']),null!=_0x17069f['deletedAt']&&_0x17069f['hasOwnProperty']('deletedAt')&&(object['deletedAt']=_0x17069f['deletedAt']),_0x17069f['comments']&&_0x17069f['comments']['length']){object['comments']=[];for(let _0x209c66=0x0;_0x209c66<_0x17069f['comments']['length'];++_0x209c66)object['comments'][_0x209c66]=$root['CommentDescriptor']['toObject'](_0x17069f['comments'][_0x209c66],options);}return object;},CommentsV2AddCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2AddCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2AddCommentThreadMessage';},CommentsV2AddCommentThreadMessage;})()),$root['CommentsV2ReopenCommentThreadMessage']=((()=>{function CommentsV2ReopenCommentThreadMessage(properties){if(properties){for(let _0xe230f8=Object['keys'](properties),_0x5b1d92=0x0;_0x5b1d92<_0xe230f8['length'];++_0x5b1d92)null!=properties[_0xe230f8[_0x5b1d92]]&&(this[_0xe230f8[_0x5b1d92]]=properties[_0xe230f8[_0x5b1d92]]);}}return CommentsV2ReopenCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2ReopenCommentThreadMessage['prototype']['documentId']='',CommentsV2ReopenCommentThreadMessage['create']=function(properties){return new CommentsV2ReopenCommentThreadMessage(properties);},CommentsV2ReopenCommentThreadMessage['encode']=function(_0x175912,writer){return writer||(writer=$Writer['create']()),null!=_0x175912['commentThreadId']&&Object['hasOwnProperty']['call'](_0x175912,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x175912['commentThreadId']),null!=_0x175912['documentId']&&Object['hasOwnProperty']['call'](_0x175912,'documentId')&&writer['uint32'](0x12)['string'](_0x175912['documentId']),writer;},CommentsV2ReopenCommentThreadMessage['encodeDelimited']=function(_0x5354d1,writer){return this['encode'](_0x5354d1,writer)['ldelim']();},CommentsV2ReopenCommentThreadMessage['decode']=function(_0x4e06fe,length){_0x4e06fe instanceof $Reader||(_0x4e06fe=$Reader['create'](_0x4e06fe));let _0xab20e3=void 0x0===length?_0x4e06fe['len']:_0x4e06fe['pos']+length,_0xe2082d=new $root['CommentsV2ReopenCommentThreadMessage']();for(;_0x4e06fe['pos']<_0xab20e3;){let tag=_0x4e06fe['uint32']();switch(tag>>>0x3){case 0x1:_0xe2082d['commentThreadId']=_0x4e06fe['string']();break;case 0x2:_0xe2082d['documentId']=_0x4e06fe['string']();break;default:_0x4e06fe['skipType'](0x7&tag);}}return _0xe2082d;},CommentsV2ReopenCommentThreadMessage['decodeDelimited']=function(_0x27a731){return _0x27a731 instanceof $Reader||(_0x27a731=new $Reader(_0x27a731)),this['decode'](_0x27a731,_0x27a731['uint32']());},CommentsV2ReopenCommentThreadMessage['verify']=function(_0x50d9dc){return'object'!=typeof _0x50d9dc||null===_0x50d9dc?'object\x20expected':null!=_0x50d9dc['commentThreadId']&&_0x50d9dc['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x50d9dc['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x50d9dc['documentId']&&_0x50d9dc['hasOwnProperty']('documentId')&&!$util['isString'](_0x50d9dc['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2ReopenCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2ReopenCommentThreadMessage'])return object;let _0x529be6=new $root['CommentsV2ReopenCommentThreadMessage']();return null!=object['commentThreadId']&&(_0x529be6['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x529be6['documentId']=String(object['documentId'])),_0x529be6;},CommentsV2ReopenCommentThreadMessage['toObject']=function(_0x42cab7,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']=''),null!=_0x42cab7['commentThreadId']&&_0x42cab7['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x42cab7['commentThreadId']),null!=_0x42cab7['documentId']&&_0x42cab7['hasOwnProperty']('documentId')&&(object['documentId']=_0x42cab7['documentId']),object;},CommentsV2ReopenCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ReopenCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ReopenCommentThreadMessage';},CommentsV2ReopenCommentThreadMessage;})()),$root['CommentsV2ResolveCommentThreadMessage']=((()=>{function CommentsV2ResolveCommentThreadMessage(properties){if(properties){for(let _0x550dac=Object['keys'](properties),_0x3967ec=0x0;_0x3967ec<_0x550dac['length'];++_0x3967ec)null!=properties[_0x550dac[_0x3967ec]]&&(this[_0x550dac[_0x3967ec]]=properties[_0x550dac[_0x3967ec]]);}}return CommentsV2ResolveCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2ResolveCommentThreadMessage['prototype']['documentId']='',CommentsV2ResolveCommentThreadMessage['prototype']['resolvedBy']='',CommentsV2ResolveCommentThreadMessage['prototype']['resolvedAt']='',CommentsV2ResolveCommentThreadMessage['create']=function(properties){return new CommentsV2ResolveCommentThreadMessage(properties);},CommentsV2ResolveCommentThreadMessage['encode']=function(_0x3ab5b6,writer){return writer||(writer=$Writer['create']()),null!=_0x3ab5b6['commentThreadId']&&Object['hasOwnProperty']['call'](_0x3ab5b6,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x3ab5b6['commentThreadId']),null!=_0x3ab5b6['documentId']&&Object['hasOwnProperty']['call'](_0x3ab5b6,'documentId')&&writer['uint32'](0x12)['string'](_0x3ab5b6['documentId']),null!=_0x3ab5b6['resolvedBy']&&Object['hasOwnProperty']['call'](_0x3ab5b6,'resolvedBy')&&writer['uint32'](0x1a)['string'](_0x3ab5b6['resolvedBy']),null!=_0x3ab5b6['resolvedAt']&&Object['hasOwnProperty']['call'](_0x3ab5b6,'resolvedAt')&&writer['uint32'](0x22)['string'](_0x3ab5b6['resolvedAt']),writer;},CommentsV2ResolveCommentThreadMessage['encodeDelimited']=function(_0x4092d7,writer){return this['encode'](_0x4092d7,writer)['ldelim']();},CommentsV2ResolveCommentThreadMessage['decode']=function(_0x50984e,length){_0x50984e instanceof $Reader||(_0x50984e=$Reader['create'](_0x50984e));let _0x1639e7=void 0x0===length?_0x50984e['len']:_0x50984e['pos']+length,_0x249e11=new $root['CommentsV2ResolveCommentThreadMessage']();for(;_0x50984e['pos']<_0x1639e7;){let tag=_0x50984e['uint32']();switch(tag>>>0x3){case 0x1:_0x249e11['commentThreadId']=_0x50984e['string']();break;case 0x2:_0x249e11['documentId']=_0x50984e['string']();break;case 0x3:_0x249e11['resolvedBy']=_0x50984e['string']();break;case 0x4:_0x249e11['resolvedAt']=_0x50984e['string']();break;default:_0x50984e['skipType'](0x7&tag);}}return _0x249e11;},CommentsV2ResolveCommentThreadMessage['decodeDelimited']=function(_0xd33097){return _0xd33097 instanceof $Reader||(_0xd33097=new $Reader(_0xd33097)),this['decode'](_0xd33097,_0xd33097['uint32']());},CommentsV2ResolveCommentThreadMessage['verify']=function(_0x1c3da7){return'object'!=typeof _0x1c3da7||null===_0x1c3da7?'object\x20expected':null!=_0x1c3da7['commentThreadId']&&_0x1c3da7['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x1c3da7['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x1c3da7['documentId']&&_0x1c3da7['hasOwnProperty']('documentId')&&!$util['isString'](_0x1c3da7['documentId'])?'documentId:\x20string\x20expected':null!=_0x1c3da7['resolvedBy']&&_0x1c3da7['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0x1c3da7['resolvedBy'])?'resolvedBy:\x20string\x20expected':null!=_0x1c3da7['resolvedAt']&&_0x1c3da7['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0x1c3da7['resolvedAt'])?'resolvedAt:\x20string\x20expected':null;},CommentsV2ResolveCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2ResolveCommentThreadMessage'])return object;let _0x2fb2de=new $root['CommentsV2ResolveCommentThreadMessage']();return null!=object['commentThreadId']&&(_0x2fb2de['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x2fb2de['documentId']=String(object['documentId'])),null!=object['resolvedBy']&&(_0x2fb2de['resolvedBy']=String(object['resolvedBy'])),null!=object['resolvedAt']&&(_0x2fb2de['resolvedAt']=String(object['resolvedAt'])),_0x2fb2de;},CommentsV2ResolveCommentThreadMessage['toObject']=function(_0x243e0f,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']='',object['resolvedBy']='',object['resolvedAt']=''),null!=_0x243e0f['commentThreadId']&&_0x243e0f['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x243e0f['commentThreadId']),null!=_0x243e0f['documentId']&&_0x243e0f['hasOwnProperty']('documentId')&&(object['documentId']=_0x243e0f['documentId']),null!=_0x243e0f['resolvedBy']&&_0x243e0f['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0x243e0f['resolvedBy']),null!=_0x243e0f['resolvedAt']&&_0x243e0f['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0x243e0f['resolvedAt']),object;},CommentsV2ResolveCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ResolveCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ResolveCommentThreadMessage';},CommentsV2ResolveCommentThreadMessage;})()),$root['CommentsV2UpdateCommentThreadMessage']=((()=>{function CommentsV2UpdateCommentThreadMessage(properties){if(properties){for(let _0x280488=Object['keys'](properties),_0x1c6104=0x0;_0x1c6104<_0x280488['length'];++_0x1c6104)null!=properties[_0x280488[_0x1c6104]]&&(this[_0x280488[_0x1c6104]]=properties[_0x280488[_0x1c6104]]);}}return CommentsV2UpdateCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2UpdateCommentThreadMessage['prototype']['documentId']='',CommentsV2UpdateCommentThreadMessage['prototype']['context']='',CommentsV2UpdateCommentThreadMessage['prototype']['attributes']='',CommentsV2UpdateCommentThreadMessage['prototype']['unlinkedAt']='',CommentsV2UpdateCommentThreadMessage['create']=function(properties){return new CommentsV2UpdateCommentThreadMessage(properties);},CommentsV2UpdateCommentThreadMessage['encode']=function(_0x301c8f,writer){return writer||(writer=$Writer['create']()),null!=_0x301c8f['commentThreadId']&&Object['hasOwnProperty']['call'](_0x301c8f,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x301c8f['commentThreadId']),null!=_0x301c8f['documentId']&&Object['hasOwnProperty']['call'](_0x301c8f,'documentId')&&writer['uint32'](0x12)['string'](_0x301c8f['documentId']),null!=_0x301c8f['context']&&Object['hasOwnProperty']['call'](_0x301c8f,'context')&&writer['uint32'](0x1a)['string'](_0x301c8f['context']),null!=_0x301c8f['attributes']&&Object['hasOwnProperty']['call'](_0x301c8f,'attributes')&&writer['uint32'](0x22)['string'](_0x301c8f['attributes']),null!=_0x301c8f['unlinkedAt']&&Object['hasOwnProperty']['call'](_0x301c8f,'unlinkedAt')&&writer['uint32'](0x2a)['string'](_0x301c8f['unlinkedAt']),writer;},CommentsV2UpdateCommentThreadMessage['encodeDelimited']=function(_0x4d4646,writer){return this['encode'](_0x4d4646,writer)['ldelim']();},CommentsV2UpdateCommentThreadMessage['decode']=function(_0x13a115,length){_0x13a115 instanceof $Reader||(_0x13a115=$Reader['create'](_0x13a115));let _0x7144df=void 0x0===length?_0x13a115['len']:_0x13a115['pos']+length,_0x411b03=new $root['CommentsV2UpdateCommentThreadMessage']();for(;_0x13a115['pos']<_0x7144df;){let tag=_0x13a115['uint32']();switch(tag>>>0x3){case 0x1:_0x411b03['commentThreadId']=_0x13a115['string']();break;case 0x2:_0x411b03['documentId']=_0x13a115['string']();break;case 0x3:_0x411b03['context']=_0x13a115['string']();break;case 0x4:_0x411b03['attributes']=_0x13a115['string']();break;case 0x5:_0x411b03['unlinkedAt']=_0x13a115['string']();break;default:_0x13a115['skipType'](0x7&tag);}}return _0x411b03;},CommentsV2UpdateCommentThreadMessage['decodeDelimited']=function(_0xe2797a){return _0xe2797a instanceof $Reader||(_0xe2797a=new $Reader(_0xe2797a)),this['decode'](_0xe2797a,_0xe2797a['uint32']());},CommentsV2UpdateCommentThreadMessage['verify']=function(_0x2d6c09){return'object'!=typeof _0x2d6c09||null===_0x2d6c09?'object\x20expected':null!=_0x2d6c09['commentThreadId']&&_0x2d6c09['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x2d6c09['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x2d6c09['documentId']&&_0x2d6c09['hasOwnProperty']('documentId')&&!$util['isString'](_0x2d6c09['documentId'])?'documentId:\x20string\x20expected':null!=_0x2d6c09['context']&&_0x2d6c09['hasOwnProperty']('context')&&!$util['isString'](_0x2d6c09['context'])?'context:\x20string\x20expected':null!=_0x2d6c09['attributes']&&_0x2d6c09['hasOwnProperty']('attributes')&&!$util['isString'](_0x2d6c09['attributes'])?'attributes:\x20string\x20expected':null!=_0x2d6c09['unlinkedAt']&&_0x2d6c09['hasOwnProperty']('unlinkedAt')&&!$util['isString'](_0x2d6c09['unlinkedAt'])?'unlinkedAt:\x20string\x20expected':null;},CommentsV2UpdateCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2UpdateCommentThreadMessage'])return object;let _0x749de6=new $root['CommentsV2UpdateCommentThreadMessage']();return null!=object['commentThreadId']&&(_0x749de6['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x749de6['documentId']=String(object['documentId'])),null!=object['context']&&(_0x749de6['context']=String(object['context'])),null!=object['attributes']&&(_0x749de6['attributes']=String(object['attributes'])),null!=object['unlinkedAt']&&(_0x749de6['unlinkedAt']=String(object['unlinkedAt'])),_0x749de6;},CommentsV2UpdateCommentThreadMessage['toObject']=function(_0x440998,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']='',object['context']='',object['attributes']='',object['unlinkedAt']=''),null!=_0x440998['commentThreadId']&&_0x440998['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x440998['commentThreadId']),null!=_0x440998['documentId']&&_0x440998['hasOwnProperty']('documentId')&&(object['documentId']=_0x440998['documentId']),null!=_0x440998['context']&&_0x440998['hasOwnProperty']('context')&&(object['context']=_0x440998['context']),null!=_0x440998['attributes']&&_0x440998['hasOwnProperty']('attributes')&&(object['attributes']=_0x440998['attributes']),null!=_0x440998['unlinkedAt']&&_0x440998['hasOwnProperty']('unlinkedAt')&&(object['unlinkedAt']=_0x440998['unlinkedAt']),object;},CommentsV2UpdateCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2UpdateCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2UpdateCommentThreadMessage';},CommentsV2UpdateCommentThreadMessage;})()),$root['CommentsV2ConnectMessage']=((()=>{function CommentsV2ConnectMessage(properties){if(properties){for(let _0xc37cfb=Object['keys'](properties),_0x1ce9bb=0x0;_0x1ce9bb<_0xc37cfb['length'];++_0x1ce9bb)null!=properties[_0xc37cfb[_0x1ce9bb]]&&(this[_0xc37cfb[_0x1ce9bb]]=properties[_0xc37cfb[_0x1ce9bb]]);}}return CommentsV2ConnectMessage['prototype']['documentId']='',CommentsV2ConnectMessage['create']=function(properties){return new CommentsV2ConnectMessage(properties);},CommentsV2ConnectMessage['encode']=function(_0x19e58e,writer){return writer||(writer=$Writer['create']()),null!=_0x19e58e['documentId']&&Object['hasOwnProperty']['call'](_0x19e58e,'documentId')&&writer['uint32'](0xa)['string'](_0x19e58e['documentId']),writer;},CommentsV2ConnectMessage['encodeDelimited']=function(_0x2c80a1,writer){return this['encode'](_0x2c80a1,writer)['ldelim']();},CommentsV2ConnectMessage['decode']=function(_0x3b3a08,length){_0x3b3a08 instanceof $Reader||(_0x3b3a08=$Reader['create'](_0x3b3a08));let _0x40647f=void 0x0===length?_0x3b3a08['len']:_0x3b3a08['pos']+length,_0x191a2b=new $root['CommentsV2ConnectMessage']();for(;_0x3b3a08['pos']<_0x40647f;){let tag=_0x3b3a08['uint32']();if(tag>>>0x3==0x1)_0x191a2b['documentId']=_0x3b3a08['string']();else _0x3b3a08['skipType'](0x7&tag);}return _0x191a2b;},CommentsV2ConnectMessage['decodeDelimited']=function(_0x2eb9cb){return _0x2eb9cb instanceof $Reader||(_0x2eb9cb=new $Reader(_0x2eb9cb)),this['decode'](_0x2eb9cb,_0x2eb9cb['uint32']());},CommentsV2ConnectMessage['verify']=function(_0x4873e1){return'object'!=typeof _0x4873e1||null===_0x4873e1?'object\x20expected':null!=_0x4873e1['documentId']&&_0x4873e1['hasOwnProperty']('documentId')&&!$util['isString'](_0x4873e1['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2ConnectMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2ConnectMessage'])return object;let _0x5db846=new $root['CommentsV2ConnectMessage']();return null!=object['documentId']&&(_0x5db846['documentId']=String(object['documentId'])),_0x5db846;},CommentsV2ConnectMessage['toObject']=function(_0x36389e,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x36389e['documentId']&&_0x36389e['hasOwnProperty']('documentId')&&(object['documentId']=_0x36389e['documentId']),object;},CommentsV2ConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ConnectMessage';},CommentsV2ConnectMessage;})()),$root['CommentsV2GetCommentThreadMessage']=((()=>{function CommentsV2GetCommentThreadMessage(properties){if(properties){for(let _0x41f60a=Object['keys'](properties),_0x298297=0x0;_0x298297<_0x41f60a['length'];++_0x298297)null!=properties[_0x41f60a[_0x298297]]&&(this[_0x41f60a[_0x298297]]=properties[_0x41f60a[_0x298297]]);}}return CommentsV2GetCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2GetCommentThreadMessage['prototype']['documentId']='',CommentsV2GetCommentThreadMessage['create']=function(properties){return new CommentsV2GetCommentThreadMessage(properties);},CommentsV2GetCommentThreadMessage['encode']=function(_0x265a37,writer){return writer||(writer=$Writer['create']()),null!=_0x265a37['commentThreadId']&&Object['hasOwnProperty']['call'](_0x265a37,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x265a37['commentThreadId']),null!=_0x265a37['documentId']&&Object['hasOwnProperty']['call'](_0x265a37,'documentId')&&writer['uint32'](0x12)['string'](_0x265a37['documentId']),writer;},CommentsV2GetCommentThreadMessage['encodeDelimited']=function(_0xa34a4d,writer){return this['encode'](_0xa34a4d,writer)['ldelim']();},CommentsV2GetCommentThreadMessage['decode']=function(_0xbb4642,length){_0xbb4642 instanceof $Reader||(_0xbb4642=$Reader['create'](_0xbb4642));let _0x4fd910=void 0x0===length?_0xbb4642['len']:_0xbb4642['pos']+length,_0x1ec882=new $root['CommentsV2GetCommentThreadMessage']();for(;_0xbb4642['pos']<_0x4fd910;){let tag=_0xbb4642['uint32']();switch(tag>>>0x3){case 0x1:_0x1ec882['commentThreadId']=_0xbb4642['string']();break;case 0x2:_0x1ec882['documentId']=_0xbb4642['string']();break;default:_0xbb4642['skipType'](0x7&tag);}}return _0x1ec882;},CommentsV2GetCommentThreadMessage['decodeDelimited']=function(_0x44378b){return _0x44378b instanceof $Reader||(_0x44378b=new $Reader(_0x44378b)),this['decode'](_0x44378b,_0x44378b['uint32']());},CommentsV2GetCommentThreadMessage['verify']=function(_0x449377){return'object'!=typeof _0x449377||null===_0x449377?'object\x20expected':null!=_0x449377['commentThreadId']&&_0x449377['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x449377['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x449377['documentId']&&_0x449377['hasOwnProperty']('documentId')&&!$util['isString'](_0x449377['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2GetCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2GetCommentThreadMessage'])return object;let _0x18ca4d=new $root['CommentsV2GetCommentThreadMessage']();return null!=object['commentThreadId']&&(_0x18ca4d['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x18ca4d['documentId']=String(object['documentId'])),_0x18ca4d;},CommentsV2GetCommentThreadMessage['toObject']=function(_0x3fe282,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']=''),null!=_0x3fe282['commentThreadId']&&_0x3fe282['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x3fe282['commentThreadId']),null!=_0x3fe282['documentId']&&_0x3fe282['hasOwnProperty']('documentId')&&(object['documentId']=_0x3fe282['documentId']),object;},CommentsV2GetCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2GetCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2GetCommentThreadMessage';},CommentsV2GetCommentThreadMessage;})()),$root['CommentsV2GetDocumentThreadsMessage']=((()=>{function CommentsV2GetDocumentThreadsMessage(properties){if(properties){for(let _0x5bc2ed=Object['keys'](properties),_0xc2fc44=0x0;_0xc2fc44<_0x5bc2ed['length'];++_0xc2fc44)null!=properties[_0x5bc2ed[_0xc2fc44]]&&(this[_0x5bc2ed[_0xc2fc44]]=properties[_0x5bc2ed[_0xc2fc44]]);}}return CommentsV2GetDocumentThreadsMessage['prototype']['documentId']='',CommentsV2GetDocumentThreadsMessage['create']=function(properties){return new CommentsV2GetDocumentThreadsMessage(properties);},CommentsV2GetDocumentThreadsMessage['encode']=function(_0x2e461e,writer){return writer||(writer=$Writer['create']()),null!=_0x2e461e['documentId']&&Object['hasOwnProperty']['call'](_0x2e461e,'documentId')&&writer['uint32'](0xa)['string'](_0x2e461e['documentId']),writer;},CommentsV2GetDocumentThreadsMessage['encodeDelimited']=function(_0x563509,writer){return this['encode'](_0x563509,writer)['ldelim']();},CommentsV2GetDocumentThreadsMessage['decode']=function(_0x4e29ea,length){_0x4e29ea instanceof $Reader||(_0x4e29ea=$Reader['create'](_0x4e29ea));let _0x326c00=void 0x0===length?_0x4e29ea['len']:_0x4e29ea['pos']+length,_0x1f7641=new $root['CommentsV2GetDocumentThreadsMessage']();for(;_0x4e29ea['pos']<_0x326c00;){let tag=_0x4e29ea['uint32']();if(tag>>>0x3==0x1)_0x1f7641['documentId']=_0x4e29ea['string']();else _0x4e29ea['skipType'](0x7&tag);}return _0x1f7641;},CommentsV2GetDocumentThreadsMessage['decodeDelimited']=function(_0x2d1f1c){return _0x2d1f1c instanceof $Reader||(_0x2d1f1c=new $Reader(_0x2d1f1c)),this['decode'](_0x2d1f1c,_0x2d1f1c['uint32']());},CommentsV2GetDocumentThreadsMessage['verify']=function(_0x2292aa){return'object'!=typeof _0x2292aa||null===_0x2292aa?'object\x20expected':null!=_0x2292aa['documentId']&&_0x2292aa['hasOwnProperty']('documentId')&&!$util['isString'](_0x2292aa['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2GetDocumentThreadsMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2GetDocumentThreadsMessage'])return object;let _0x2e9c38=new $root['CommentsV2GetDocumentThreadsMessage']();return null!=object['documentId']&&(_0x2e9c38['documentId']=String(object['documentId'])),_0x2e9c38;},CommentsV2GetDocumentThreadsMessage['toObject']=function(_0x22c1a5,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x22c1a5['documentId']&&_0x22c1a5['hasOwnProperty']('documentId')&&(object['documentId']=_0x22c1a5['documentId']),object;},CommentsV2GetDocumentThreadsMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2GetDocumentThreadsMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2GetDocumentThreadsMessage';},CommentsV2GetDocumentThreadsMessage;})()),$root['CommentsV2RemoveCommentMessage']=((()=>{function CommentsV2RemoveCommentMessage(properties){if(properties){for(let _0x19be19=Object['keys'](properties),_0xa90929=0x0;_0xa90929<_0x19be19['length'];++_0xa90929)null!=properties[_0x19be19[_0xa90929]]&&(this[_0x19be19[_0xa90929]]=properties[_0x19be19[_0xa90929]]);}}return CommentsV2RemoveCommentMessage['prototype']['commentThreadId']='',CommentsV2RemoveCommentMessage['prototype']['commentId']='',CommentsV2RemoveCommentMessage['prototype']['documentId']='',CommentsV2RemoveCommentMessage['create']=function(properties){return new CommentsV2RemoveCommentMessage(properties);},CommentsV2RemoveCommentMessage['encode']=function(_0x2f45ca,writer){return writer||(writer=$Writer['create']()),null!=_0x2f45ca['commentThreadId']&&Object['hasOwnProperty']['call'](_0x2f45ca,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x2f45ca['commentThreadId']),null!=_0x2f45ca['commentId']&&Object['hasOwnProperty']['call'](_0x2f45ca,'commentId')&&writer['uint32'](0x12)['string'](_0x2f45ca['commentId']),null!=_0x2f45ca['documentId']&&Object['hasOwnProperty']['call'](_0x2f45ca,'documentId')&&writer['uint32'](0x1a)['string'](_0x2f45ca['documentId']),writer;},CommentsV2RemoveCommentMessage['encodeDelimited']=function(_0x1f68de,writer){return this['encode'](_0x1f68de,writer)['ldelim']();},CommentsV2RemoveCommentMessage['decode']=function(_0x2a225d,length){_0x2a225d instanceof $Reader||(_0x2a225d=$Reader['create'](_0x2a225d));let _0x39e831=void 0x0===length?_0x2a225d['len']:_0x2a225d['pos']+length,_0x31c4fa=new $root['CommentsV2RemoveCommentMessage']();for(;_0x2a225d['pos']<_0x39e831;){let tag=_0x2a225d['uint32']();switch(tag>>>0x3){case 0x1:_0x31c4fa['commentThreadId']=_0x2a225d['string']();break;case 0x2:_0x31c4fa['commentId']=_0x2a225d['string']();break;case 0x3:_0x31c4fa['documentId']=_0x2a225d['string']();break;default:_0x2a225d['skipType'](0x7&tag);}}return _0x31c4fa;},CommentsV2RemoveCommentMessage['decodeDelimited']=function(_0x40cf95){return _0x40cf95 instanceof $Reader||(_0x40cf95=new $Reader(_0x40cf95)),this['decode'](_0x40cf95,_0x40cf95['uint32']());},CommentsV2RemoveCommentMessage['verify']=function(_0x3413ea){return'object'!=typeof _0x3413ea||null===_0x3413ea?'object\x20expected':null!=_0x3413ea['commentThreadId']&&_0x3413ea['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x3413ea['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x3413ea['commentId']&&_0x3413ea['hasOwnProperty']('commentId')&&!$util['isString'](_0x3413ea['commentId'])?'commentId:\x20string\x20expected':null!=_0x3413ea['documentId']&&_0x3413ea['hasOwnProperty']('documentId')&&!$util['isString'](_0x3413ea['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2RemoveCommentMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2RemoveCommentMessage'])return object;let _0x1e7b98=new $root['CommentsV2RemoveCommentMessage']();return null!=object['commentThreadId']&&(_0x1e7b98['commentThreadId']=String(object['commentThreadId'])),null!=object['commentId']&&(_0x1e7b98['commentId']=String(object['commentId'])),null!=object['documentId']&&(_0x1e7b98['documentId']=String(object['documentId'])),_0x1e7b98;},CommentsV2RemoveCommentMessage['toObject']=function(_0x38822f,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['commentId']='',object['documentId']=''),null!=_0x38822f['commentThreadId']&&_0x38822f['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x38822f['commentThreadId']),null!=_0x38822f['commentId']&&_0x38822f['hasOwnProperty']('commentId')&&(object['commentId']=_0x38822f['commentId']),null!=_0x38822f['documentId']&&_0x38822f['hasOwnProperty']('documentId')&&(object['documentId']=_0x38822f['documentId']),object;},CommentsV2RemoveCommentMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2RemoveCommentMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2RemoveCommentMessage';},CommentsV2RemoveCommentMessage;})()),$root['CommentsV2RemoveCommentThreadMessage']=((()=>{function CommentsV2RemoveCommentThreadMessage(properties){if(properties){for(let _0x3e2b33=Object['keys'](properties),_0x1a9922=0x0;_0x1a9922<_0x3e2b33['length'];++_0x1a9922)null!=properties[_0x3e2b33[_0x1a9922]]&&(this[_0x3e2b33[_0x1a9922]]=properties[_0x3e2b33[_0x1a9922]]);}}return CommentsV2RemoveCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2RemoveCommentThreadMessage['prototype']['documentId']='',CommentsV2RemoveCommentThreadMessage['create']=function(properties){return new CommentsV2RemoveCommentThreadMessage(properties);},CommentsV2RemoveCommentThreadMessage['encode']=function(_0x120f87,writer){return writer||(writer=$Writer['create']()),null!=_0x120f87['commentThreadId']&&Object['hasOwnProperty']['call'](_0x120f87,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x120f87['commentThreadId']),null!=_0x120f87['documentId']&&Object['hasOwnProperty']['call'](_0x120f87,'documentId')&&writer['uint32'](0x12)['string'](_0x120f87['documentId']),writer;},CommentsV2RemoveCommentThreadMessage['encodeDelimited']=function(_0x172244,writer){return this['encode'](_0x172244,writer)['ldelim']();},CommentsV2RemoveCommentThreadMessage['decode']=function(_0x2e5bda,length){_0x2e5bda instanceof $Reader||(_0x2e5bda=$Reader['create'](_0x2e5bda));let _0x43e8e7=void 0x0===length?_0x2e5bda['len']:_0x2e5bda['pos']+length,_0x40d024=new $root['CommentsV2RemoveCommentThreadMessage']();for(;_0x2e5bda['pos']<_0x43e8e7;){let tag=_0x2e5bda['uint32']();switch(tag>>>0x3){case 0x1:_0x40d024['commentThreadId']=_0x2e5bda['string']();break;case 0x2:_0x40d024['documentId']=_0x2e5bda['string']();break;default:_0x2e5bda['skipType'](0x7&tag);}}return _0x40d024;},CommentsV2RemoveCommentThreadMessage['decodeDelimited']=function(_0x529cd8){return _0x529cd8 instanceof $Reader||(_0x529cd8=new $Reader(_0x529cd8)),this['decode'](_0x529cd8,_0x529cd8['uint32']());},CommentsV2RemoveCommentThreadMessage['verify']=function(_0x15b90e){return'object'!=typeof _0x15b90e||null===_0x15b90e?'object\x20expected':null!=_0x15b90e['commentThreadId']&&_0x15b90e['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x15b90e['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x15b90e['documentId']&&_0x15b90e['hasOwnProperty']('documentId')&&!$util['isString'](_0x15b90e['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2RemoveCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2RemoveCommentThreadMessage'])return object;let _0xf7da1c=new $root['CommentsV2RemoveCommentThreadMessage']();return null!=object['commentThreadId']&&(_0xf7da1c['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0xf7da1c['documentId']=String(object['documentId'])),_0xf7da1c;},CommentsV2RemoveCommentThreadMessage['toObject']=function(_0x5e6a63,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']=''),null!=_0x5e6a63['commentThreadId']&&_0x5e6a63['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x5e6a63['commentThreadId']),null!=_0x5e6a63['documentId']&&_0x5e6a63['hasOwnProperty']('documentId')&&(object['documentId']=_0x5e6a63['documentId']),object;},CommentsV2RemoveCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2RemoveCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2RemoveCommentThreadMessage';},CommentsV2RemoveCommentThreadMessage;})()),$root['CommentsV2UpdateCommentMessage']=((()=>{function CommentsV2UpdateCommentMessage(properties){if(properties){for(let _0x1691da=Object['keys'](properties),_0x3e0c49=0x0;_0x3e0c49<_0x1691da['length'];++_0x3e0c49)null!=properties[_0x1691da[_0x3e0c49]]&&(this[_0x1691da[_0x3e0c49]]=properties[_0x1691da[_0x3e0c49]]);}}return CommentsV2UpdateCommentMessage['prototype']['commentThreadId']='',CommentsV2UpdateCommentMessage['prototype']['commentId']='',CommentsV2UpdateCommentMessage['prototype']['content']='',CommentsV2UpdateCommentMessage['prototype']['documentId']='',CommentsV2UpdateCommentMessage['prototype']['attributes']='',CommentsV2UpdateCommentMessage['prototype']['isAttributesUpdated']=!0x1,CommentsV2UpdateCommentMessage['prototype']['commentThread']=null,CommentsV2UpdateCommentMessage['create']=function(properties){return new CommentsV2UpdateCommentMessage(properties);},CommentsV2UpdateCommentMessage['encode']=function(_0x5a6e22,writer){return writer||(writer=$Writer['create']()),null!=_0x5a6e22['commentThreadId']&&Object['hasOwnProperty']['call'](_0x5a6e22,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x5a6e22['commentThreadId']),null!=_0x5a6e22['commentId']&&Object['hasOwnProperty']['call'](_0x5a6e22,'commentId')&&writer['uint32'](0x12)['string'](_0x5a6e22['commentId']),null!=_0x5a6e22['content']&&Object['hasOwnProperty']['call'](_0x5a6e22,'content')&&writer['uint32'](0x1a)['string'](_0x5a6e22['content']),null!=_0x5a6e22['documentId']&&Object['hasOwnProperty']['call'](_0x5a6e22,'documentId')&&writer['uint32'](0x22)['string'](_0x5a6e22['documentId']),null!=_0x5a6e22['attributes']&&Object['hasOwnProperty']['call'](_0x5a6e22,'attributes')&&writer['uint32'](0x2a)['string'](_0x5a6e22['attributes']),null!=_0x5a6e22['isAttributesUpdated']&&Object['hasOwnProperty']['call'](_0x5a6e22,'isAttributesUpdated')&&writer['uint32'](0x30)['bool'](_0x5a6e22['isAttributesUpdated']),null!=_0x5a6e22['commentThread']&&Object['hasOwnProperty']['call'](_0x5a6e22,'commentThread')&&$root['CommentsThreadDescriptor']['encode'](_0x5a6e22['commentThread'],writer['uint32'](0x3a)['fork']())['ldelim'](),writer;},CommentsV2UpdateCommentMessage['encodeDelimited']=function(_0x1307ba,writer){return this['encode'](_0x1307ba,writer)['ldelim']();},CommentsV2UpdateCommentMessage['decode']=function(_0x285e3e,length){_0x285e3e instanceof $Reader||(_0x285e3e=$Reader['create'](_0x285e3e));let _0x119204=void 0x0===length?_0x285e3e['len']:_0x285e3e['pos']+length,_0x1ecb91=new $root['CommentsV2UpdateCommentMessage']();for(;_0x285e3e['pos']<_0x119204;){let tag=_0x285e3e['uint32']();switch(tag>>>0x3){case 0x1:_0x1ecb91['commentThreadId']=_0x285e3e['string']();break;case 0x2:_0x1ecb91['commentId']=_0x285e3e['string']();break;case 0x3:_0x1ecb91['content']=_0x285e3e['string']();break;case 0x4:_0x1ecb91['documentId']=_0x285e3e['string']();break;case 0x5:_0x1ecb91['attributes']=_0x285e3e['string']();break;case 0x6:_0x1ecb91['isAttributesUpdated']=_0x285e3e['bool']();break;case 0x7:_0x1ecb91['commentThread']=$root['CommentsThreadDescriptor']['decode'](_0x285e3e,_0x285e3e['uint32']());break;default:_0x285e3e['skipType'](0x7&tag);}}return _0x1ecb91;},CommentsV2UpdateCommentMessage['decodeDelimited']=function(_0x3b3383){return _0x3b3383 instanceof $Reader||(_0x3b3383=new $Reader(_0x3b3383)),this['decode'](_0x3b3383,_0x3b3383['uint32']());},CommentsV2UpdateCommentMessage['verify']=function(_0x4461a3){if('object'!=typeof _0x4461a3||null===_0x4461a3)return'object\x20expected';if(null!=_0x4461a3['commentThreadId']&&_0x4461a3['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x4461a3['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0x4461a3['commentId']&&_0x4461a3['hasOwnProperty']('commentId')&&!$util['isString'](_0x4461a3['commentId']))return'commentId:\x20string\x20expected';if(null!=_0x4461a3['content']&&_0x4461a3['hasOwnProperty']('content')&&!$util['isString'](_0x4461a3['content']))return'content:\x20string\x20expected';if(null!=_0x4461a3['documentId']&&_0x4461a3['hasOwnProperty']('documentId')&&!$util['isString'](_0x4461a3['documentId']))return'documentId:\x20string\x20expected';if(null!=_0x4461a3['attributes']&&_0x4461a3['hasOwnProperty']('attributes')&&!$util['isString'](_0x4461a3['attributes']))return'attributes:\x20string\x20expected';if(null!=_0x4461a3['isAttributesUpdated']&&_0x4461a3['hasOwnProperty']('isAttributesUpdated')&&'boolean'!=typeof _0x4461a3['isAttributesUpdated'])return'isAttributesUpdated:\x20boolean\x20expected';if(null!=_0x4461a3['commentThread']&&_0x4461a3['hasOwnProperty']('commentThread')){let _0x1382df=$root['CommentsThreadDescriptor']['verify'](_0x4461a3['commentThread']);if(_0x1382df)return'commentThread.'+_0x1382df;}return null;},CommentsV2UpdateCommentMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2UpdateCommentMessage'])return object;let _0x329848=new $root['CommentsV2UpdateCommentMessage']();if(null!=object['commentThreadId']&&(_0x329848['commentThreadId']=String(object['commentThreadId'])),null!=object['commentId']&&(_0x329848['commentId']=String(object['commentId'])),null!=object['content']&&(_0x329848['content']=String(object['content'])),null!=object['documentId']&&(_0x329848['documentId']=String(object['documentId'])),null!=object['attributes']&&(_0x329848['attributes']=String(object['attributes'])),null!=object['isAttributesUpdated']&&(_0x329848['isAttributesUpdated']=Boolean(object['isAttributesUpdated'])),null!=object['commentThread']){if('object'!=typeof object['commentThread'])throw TypeError('.CommentsV2UpdateCommentMessage.commentThread:\x20object\x20expected');_0x329848['commentThread']=$root['CommentsThreadDescriptor']['fromObject'](object['commentThread']);}return _0x329848;},CommentsV2UpdateCommentMessage['toObject']=function(_0x4a233f,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['commentId']='',object['content']='',object['documentId']='',object['attributes']='',object['isAttributesUpdated']=!0x1,object['commentThread']=null),null!=_0x4a233f['commentThreadId']&&_0x4a233f['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x4a233f['commentThreadId']),null!=_0x4a233f['commentId']&&_0x4a233f['hasOwnProperty']('commentId')&&(object['commentId']=_0x4a233f['commentId']),null!=_0x4a233f['content']&&_0x4a233f['hasOwnProperty']('content')&&(object['content']=_0x4a233f['content']),null!=_0x4a233f['documentId']&&_0x4a233f['hasOwnProperty']('documentId')&&(object['documentId']=_0x4a233f['documentId']),null!=_0x4a233f['attributes']&&_0x4a233f['hasOwnProperty']('attributes')&&(object['attributes']=_0x4a233f['attributes']),null!=_0x4a233f['isAttributesUpdated']&&_0x4a233f['hasOwnProperty']('isAttributesUpdated')&&(object['isAttributesUpdated']=_0x4a233f['isAttributesUpdated']),null!=_0x4a233f['commentThread']&&_0x4a233f['hasOwnProperty']('commentThread')&&(object['commentThread']=$root['CommentsThreadDescriptor']['toObject'](_0x4a233f['commentThread'],options)),object;},CommentsV2UpdateCommentMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2UpdateCommentMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2UpdateCommentMessage';},CommentsV2UpdateCommentMessage;})()),$root['CommentsV2AddCommentResponse']=((()=>{function CommentsV2AddCommentResponse(properties){if(properties){for(let _0x211f39=Object['keys'](properties),_0x5c91b3=0x0;_0x5c91b3<_0x211f39['length'];++_0x5c91b3)null!=properties[_0x211f39[_0x5c91b3]]&&(this[_0x211f39[_0x5c91b3]]=properties[_0x211f39[_0x5c91b3]]);}}return CommentsV2AddCommentResponse['prototype']['commentThreadId']='',CommentsV2AddCommentResponse['prototype']['commentId']='',CommentsV2AddCommentResponse['prototype']['createdAt']='',CommentsV2AddCommentResponse['create']=function(properties){return new CommentsV2AddCommentResponse(properties);},CommentsV2AddCommentResponse['encode']=function(_0x12e8d1,writer){return writer||(writer=$Writer['create']()),null!=_0x12e8d1['commentThreadId']&&Object['hasOwnProperty']['call'](_0x12e8d1,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x12e8d1['commentThreadId']),null!=_0x12e8d1['commentId']&&Object['hasOwnProperty']['call'](_0x12e8d1,'commentId')&&writer['uint32'](0x12)['string'](_0x12e8d1['commentId']),null!=_0x12e8d1['createdAt']&&Object['hasOwnProperty']['call'](_0x12e8d1,'createdAt')&&writer['uint32'](0x1a)['string'](_0x12e8d1['createdAt']),writer;},CommentsV2AddCommentResponse['encodeDelimited']=function(_0x1ab4a9,writer){return this['encode'](_0x1ab4a9,writer)['ldelim']();},CommentsV2AddCommentResponse['decode']=function(_0x5a2f59,length){_0x5a2f59 instanceof $Reader||(_0x5a2f59=$Reader['create'](_0x5a2f59));let _0x22128c=void 0x0===length?_0x5a2f59['len']:_0x5a2f59['pos']+length,_0x1f4899=new $root['CommentsV2AddCommentResponse']();for(;_0x5a2f59['pos']<_0x22128c;){let tag=_0x5a2f59['uint32']();switch(tag>>>0x3){case 0x1:_0x1f4899['commentThreadId']=_0x5a2f59['string']();break;case 0x2:_0x1f4899['commentId']=_0x5a2f59['string']();break;case 0x3:_0x1f4899['createdAt']=_0x5a2f59['string']();break;default:_0x5a2f59['skipType'](0x7&tag);}}return _0x1f4899;},CommentsV2AddCommentResponse['decodeDelimited']=function(_0xb967a9){return _0xb967a9 instanceof $Reader||(_0xb967a9=new $Reader(_0xb967a9)),this['decode'](_0xb967a9,_0xb967a9['uint32']());},CommentsV2AddCommentResponse['verify']=function(_0xc3d625){return'object'!=typeof _0xc3d625||null===_0xc3d625?'object\x20expected':null!=_0xc3d625['commentThreadId']&&_0xc3d625['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0xc3d625['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0xc3d625['commentId']&&_0xc3d625['hasOwnProperty']('commentId')&&!$util['isString'](_0xc3d625['commentId'])?'commentId:\x20string\x20expected':null!=_0xc3d625['createdAt']&&_0xc3d625['hasOwnProperty']('createdAt')&&!$util['isString'](_0xc3d625['createdAt'])?'createdAt:\x20string\x20expected':null;},CommentsV2AddCommentResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2AddCommentResponse'])return object;let _0x1c6161=new $root['CommentsV2AddCommentResponse']();return null!=object['commentThreadId']&&(_0x1c6161['commentThreadId']=String(object['commentThreadId'])),null!=object['commentId']&&(_0x1c6161['commentId']=String(object['commentId'])),null!=object['createdAt']&&(_0x1c6161['createdAt']=String(object['createdAt'])),_0x1c6161;},CommentsV2AddCommentResponse['toObject']=function(_0x58bf01,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['commentId']='',object['createdAt']=''),null!=_0x58bf01['commentThreadId']&&_0x58bf01['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x58bf01['commentThreadId']),null!=_0x58bf01['commentId']&&_0x58bf01['hasOwnProperty']('commentId')&&(object['commentId']=_0x58bf01['commentId']),null!=_0x58bf01['createdAt']&&_0x58bf01['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x58bf01['createdAt']),object;},CommentsV2AddCommentResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2AddCommentResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2AddCommentResponse';},CommentsV2AddCommentResponse;})()),$root['CommentsV2AddCommentThreadResponse']=((()=>{function CommentsV2AddCommentThreadResponse(properties){if(this['comments']=[],properties){for(let _0x1bc91c=Object['keys'](properties),_0x4aab18=0x0;_0x4aab18<_0x1bc91c['length'];++_0x4aab18)null!=properties[_0x1bc91c[_0x4aab18]]&&(this[_0x1bc91c[_0x4aab18]]=properties[_0x1bc91c[_0x4aab18]]);}}return CommentsV2AddCommentThreadResponse['prototype']['commentThreadId']='',CommentsV2AddCommentThreadResponse['prototype']['createdAt']='',CommentsV2AddCommentThreadResponse['prototype']['comments']=$util['emptyArray'],CommentsV2AddCommentThreadResponse['create']=function(properties){return new CommentsV2AddCommentThreadResponse(properties);},CommentsV2AddCommentThreadResponse['encode']=function(_0x43b22d,writer){if(writer||(writer=$Writer['create']()),null!=_0x43b22d['commentThreadId']&&Object['hasOwnProperty']['call'](_0x43b22d,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x43b22d['commentThreadId']),null!=_0x43b22d['createdAt']&&Object['hasOwnProperty']['call'](_0x43b22d,'createdAt')&&writer['uint32'](0x12)['string'](_0x43b22d['createdAt']),null!=_0x43b22d['comments']&&_0x43b22d['comments']['length']){for(let _0x126256=0x0;_0x126256<_0x43b22d['comments']['length'];++_0x126256)$root['CommentThreadAddedCommentDescriptor']['encode'](_0x43b22d['comments'][_0x126256],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},CommentsV2AddCommentThreadResponse['encodeDelimited']=function(_0x5562e0,writer){return this['encode'](_0x5562e0,writer)['ldelim']();},CommentsV2AddCommentThreadResponse['decode']=function(_0x2f5bd3,length){_0x2f5bd3 instanceof $Reader||(_0x2f5bd3=$Reader['create'](_0x2f5bd3));let _0x549b90=void 0x0===length?_0x2f5bd3['len']:_0x2f5bd3['pos']+length,_0x286669=new $root['CommentsV2AddCommentThreadResponse']();for(;_0x2f5bd3['pos']<_0x549b90;){let tag=_0x2f5bd3['uint32']();switch(tag>>>0x3){case 0x1:_0x286669['commentThreadId']=_0x2f5bd3['string']();break;case 0x2:_0x286669['createdAt']=_0x2f5bd3['string']();break;case 0x3:_0x286669['comments']&&_0x286669['comments']['length']||(_0x286669['comments']=[]),_0x286669['comments']['push']($root['CommentThreadAddedCommentDescriptor']['decode'](_0x2f5bd3,_0x2f5bd3['uint32']()));break;default:_0x2f5bd3['skipType'](0x7&tag);}}return _0x286669;},CommentsV2AddCommentThreadResponse['decodeDelimited']=function(_0x345b6f){return _0x345b6f instanceof $Reader||(_0x345b6f=new $Reader(_0x345b6f)),this['decode'](_0x345b6f,_0x345b6f['uint32']());},CommentsV2AddCommentThreadResponse['verify']=function(_0x32eef9){if('object'!=typeof _0x32eef9||null===_0x32eef9)return'object\x20expected';if(null!=_0x32eef9['commentThreadId']&&_0x32eef9['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x32eef9['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0x32eef9['createdAt']&&_0x32eef9['hasOwnProperty']('createdAt')&&!$util['isString'](_0x32eef9['createdAt']))return'createdAt:\x20string\x20expected';if(null!=_0x32eef9['comments']&&_0x32eef9['hasOwnProperty']('comments')){if(!Array['isArray'](_0x32eef9['comments']))return'comments:\x20array\x20expected';for(let _0x597d9f=0x0;_0x597d9f<_0x32eef9['comments']['length'];++_0x597d9f){let _0x55f302=$root['CommentThreadAddedCommentDescriptor']['verify'](_0x32eef9['comments'][_0x597d9f]);if(_0x55f302)return'comments.'+_0x55f302;}}return null;},CommentsV2AddCommentThreadResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2AddCommentThreadResponse'])return object;let _0xf0fd3a=new $root['CommentsV2AddCommentThreadResponse']();if(null!=object['commentThreadId']&&(_0xf0fd3a['commentThreadId']=String(object['commentThreadId'])),null!=object['createdAt']&&(_0xf0fd3a['createdAt']=String(object['createdAt'])),object['comments']){if(!Array['isArray'](object['comments']))throw TypeError('.CommentsV2AddCommentThreadResponse.comments:\x20array\x20expected');_0xf0fd3a['comments']=[];for(let _0x2d664d=0x0;_0x2d664d<object['comments']['length'];++_0x2d664d){if('object'!=typeof object['comments'][_0x2d664d])throw TypeError('.CommentsV2AddCommentThreadResponse.comments:\x20object\x20expected');_0xf0fd3a['comments'][_0x2d664d]=$root['CommentThreadAddedCommentDescriptor']['fromObject'](object['comments'][_0x2d664d]);}}return _0xf0fd3a;},CommentsV2AddCommentThreadResponse['toObject']=function(_0x463634,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['comments']=[]),options['defaults']&&(object['commentThreadId']='',object['createdAt']=''),null!=_0x463634['commentThreadId']&&_0x463634['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x463634['commentThreadId']),null!=_0x463634['createdAt']&&_0x463634['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x463634['createdAt']),_0x463634['comments']&&_0x463634['comments']['length']){object['comments']=[];for(let _0x5dc8e8=0x0;_0x5dc8e8<_0x463634['comments']['length'];++_0x5dc8e8)object['comments'][_0x5dc8e8]=$root['CommentThreadAddedCommentDescriptor']['toObject'](_0x463634['comments'][_0x5dc8e8],options);}return object;},CommentsV2AddCommentThreadResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2AddCommentThreadResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2AddCommentThreadResponse';},CommentsV2AddCommentThreadResponse;})()),$root['CommentsV2ResolveCommentThreadResponse']=((()=>{function CommentsV2ResolveCommentThreadResponse(properties){if(properties){for(let _0x5f38d3=Object['keys'](properties),_0x42271f=0x0;_0x42271f<_0x5f38d3['length'];++_0x42271f)null!=properties[_0x5f38d3[_0x42271f]]&&(this[_0x5f38d3[_0x42271f]]=properties[_0x5f38d3[_0x42271f]]);}}return CommentsV2ResolveCommentThreadResponse['prototype']['commentThreadId']='',CommentsV2ResolveCommentThreadResponse['prototype']['documentId']='',CommentsV2ResolveCommentThreadResponse['prototype']['resolvedAt']='',CommentsV2ResolveCommentThreadResponse['prototype']['resolvedBy']='',CommentsV2ResolveCommentThreadResponse['create']=function(properties){return new CommentsV2ResolveCommentThreadResponse(properties);},CommentsV2ResolveCommentThreadResponse['encode']=function(_0x4e15bf,writer){return writer||(writer=$Writer['create']()),null!=_0x4e15bf['commentThreadId']&&Object['hasOwnProperty']['call'](_0x4e15bf,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x4e15bf['commentThreadId']),null!=_0x4e15bf['documentId']&&Object['hasOwnProperty']['call'](_0x4e15bf,'documentId')&&writer['uint32'](0x12)['string'](_0x4e15bf['documentId']),null!=_0x4e15bf['resolvedAt']&&Object['hasOwnProperty']['call'](_0x4e15bf,'resolvedAt')&&writer['uint32'](0x1a)['string'](_0x4e15bf['resolvedAt']),null!=_0x4e15bf['resolvedBy']&&Object['hasOwnProperty']['call'](_0x4e15bf,'resolvedBy')&&writer['uint32'](0x22)['string'](_0x4e15bf['resolvedBy']),writer;},CommentsV2ResolveCommentThreadResponse['encodeDelimited']=function(_0x275cbd,writer){return this['encode'](_0x275cbd,writer)['ldelim']();},CommentsV2ResolveCommentThreadResponse['decode']=function(_0x3de3ba,length){_0x3de3ba instanceof $Reader||(_0x3de3ba=$Reader['create'](_0x3de3ba));let _0x21b711=void 0x0===length?_0x3de3ba['len']:_0x3de3ba['pos']+length,_0x3d2189=new $root['CommentsV2ResolveCommentThreadResponse']();for(;_0x3de3ba['pos']<_0x21b711;){let tag=_0x3de3ba['uint32']();switch(tag>>>0x3){case 0x1:_0x3d2189['commentThreadId']=_0x3de3ba['string']();break;case 0x2:_0x3d2189['documentId']=_0x3de3ba['string']();break;case 0x3:_0x3d2189['resolvedAt']=_0x3de3ba['string']();break;case 0x4:_0x3d2189['resolvedBy']=_0x3de3ba['string']();break;default:_0x3de3ba['skipType'](0x7&tag);}}return _0x3d2189;},CommentsV2ResolveCommentThreadResponse['decodeDelimited']=function(_0x839b66){return _0x839b66 instanceof $Reader||(_0x839b66=new $Reader(_0x839b66)),this['decode'](_0x839b66,_0x839b66['uint32']());},CommentsV2ResolveCommentThreadResponse['verify']=function(_0xf308d5){return'object'!=typeof _0xf308d5||null===_0xf308d5?'object\x20expected':null!=_0xf308d5['commentThreadId']&&_0xf308d5['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0xf308d5['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0xf308d5['documentId']&&_0xf308d5['hasOwnProperty']('documentId')&&!$util['isString'](_0xf308d5['documentId'])?'documentId:\x20string\x20expected':null!=_0xf308d5['resolvedAt']&&_0xf308d5['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0xf308d5['resolvedAt'])?'resolvedAt:\x20string\x20expected':null!=_0xf308d5['resolvedBy']&&_0xf308d5['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0xf308d5['resolvedBy'])?'resolvedBy:\x20string\x20expected':null;},CommentsV2ResolveCommentThreadResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2ResolveCommentThreadResponse'])return object;let _0x3b2fef=new $root['CommentsV2ResolveCommentThreadResponse']();return null!=object['commentThreadId']&&(_0x3b2fef['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x3b2fef['documentId']=String(object['documentId'])),null!=object['resolvedAt']&&(_0x3b2fef['resolvedAt']=String(object['resolvedAt'])),null!=object['resolvedBy']&&(_0x3b2fef['resolvedBy']=String(object['resolvedBy'])),_0x3b2fef;},CommentsV2ResolveCommentThreadResponse['toObject']=function(_0x411118,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']='',object['resolvedAt']='',object['resolvedBy']=''),null!=_0x411118['commentThreadId']&&_0x411118['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x411118['commentThreadId']),null!=_0x411118['documentId']&&_0x411118['hasOwnProperty']('documentId')&&(object['documentId']=_0x411118['documentId']),null!=_0x411118['resolvedAt']&&_0x411118['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0x411118['resolvedAt']),null!=_0x411118['resolvedBy']&&_0x411118['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0x411118['resolvedBy']),object;},CommentsV2ResolveCommentThreadResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ResolveCommentThreadResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ResolveCommentThreadResponse';},CommentsV2ResolveCommentThreadResponse;})()),$root['CommentsV2ConnectResponse']=((()=>{function CommentsV2ConnectResponse(properties){if(this['threads']=[],this['threadsV2']=[],properties){for(let _0x50bcdf=Object['keys'](properties),_0x272541=0x0;_0x272541<_0x50bcdf['length'];++_0x272541)null!=properties[_0x50bcdf[_0x272541]]&&(this[_0x50bcdf[_0x272541]]=properties[_0x50bcdf[_0x272541]]);}}return CommentsV2ConnectResponse['prototype']['channel']='',CommentsV2ConnectResponse['prototype']['threads']=$util['emptyArray'],CommentsV2ConnectResponse['prototype']['threadsV2']=$util['emptyArray'],CommentsV2ConnectResponse['create']=function(properties){return new CommentsV2ConnectResponse(properties);},CommentsV2ConnectResponse['encode']=function(_0xd01554,writer){if(writer||(writer=$Writer['create']()),null!=_0xd01554['channel']&&Object['hasOwnProperty']['call'](_0xd01554,'channel')&&writer['uint32'](0xa)['string'](_0xd01554['channel']),null!=_0xd01554['threads']&&_0xd01554['threads']['length']){for(let _0x5d5880=0x0;_0x5d5880<_0xd01554['threads']['length'];++_0x5d5880)writer['uint32'](0x12)['string'](_0xd01554['threads'][_0x5d5880]);}if(null!=_0xd01554['threadsV2']&&_0xd01554['threadsV2']['length']){for(let _0x41ea6c=0x0;_0x41ea6c<_0xd01554['threadsV2']['length'];++_0x41ea6c)$root['CommentsThreadDescriptor']['encode'](_0xd01554['threadsV2'][_0x41ea6c],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},CommentsV2ConnectResponse['encodeDelimited']=function(_0xf12f8f,writer){return this['encode'](_0xf12f8f,writer)['ldelim']();},CommentsV2ConnectResponse['decode']=function(_0x38ded9,length){_0x38ded9 instanceof $Reader||(_0x38ded9=$Reader['create'](_0x38ded9));let _0x1d5a6e=void 0x0===length?_0x38ded9['len']:_0x38ded9['pos']+length,_0x417f71=new $root['CommentsV2ConnectResponse']();for(;_0x38ded9['pos']<_0x1d5a6e;){let tag=_0x38ded9['uint32']();switch(tag>>>0x3){case 0x1:_0x417f71['channel']=_0x38ded9['string']();break;case 0x2:_0x417f71['threads']&&_0x417f71['threads']['length']||(_0x417f71['threads']=[]),_0x417f71['threads']['push'](_0x38ded9['string']());break;case 0x3:_0x417f71['threadsV2']&&_0x417f71['threadsV2']['length']||(_0x417f71['threadsV2']=[]),_0x417f71['threadsV2']['push']($root['CommentsThreadDescriptor']['decode'](_0x38ded9,_0x38ded9['uint32']()));break;default:_0x38ded9['skipType'](0x7&tag);}}return _0x417f71;},CommentsV2ConnectResponse['decodeDelimited']=function(_0x1d31e1){return _0x1d31e1 instanceof $Reader||(_0x1d31e1=new $Reader(_0x1d31e1)),this['decode'](_0x1d31e1,_0x1d31e1['uint32']());},CommentsV2ConnectResponse['verify']=function(_0x230449){if('object'!=typeof _0x230449||null===_0x230449)return'object\x20expected';if(null!=_0x230449['channel']&&_0x230449['hasOwnProperty']('channel')&&!$util['isString'](_0x230449['channel']))return'channel:\x20string\x20expected';if(null!=_0x230449['threads']&&_0x230449['hasOwnProperty']('threads')){if(!Array['isArray'](_0x230449['threads']))return'threads:\x20array\x20expected';for(let _0x302bb2=0x0;_0x302bb2<_0x230449['threads']['length'];++_0x302bb2)if(!$util['isString'](_0x230449['threads'][_0x302bb2]))return'threads:\x20string[]\x20expected';}if(null!=_0x230449['threadsV2']&&_0x230449['hasOwnProperty']('threadsV2')){if(!Array['isArray'](_0x230449['threadsV2']))return'threadsV2:\x20array\x20expected';for(let _0xfc4e9f=0x0;_0xfc4e9f<_0x230449['threadsV2']['length'];++_0xfc4e9f){let _0x16620d=$root['CommentsThreadDescriptor']['verify'](_0x230449['threadsV2'][_0xfc4e9f]);if(_0x16620d)return'threadsV2.'+_0x16620d;}}return null;},CommentsV2ConnectResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2ConnectResponse'])return object;let _0x413115=new $root['CommentsV2ConnectResponse']();if(null!=object['channel']&&(_0x413115['channel']=String(object['channel'])),object['threads']){if(!Array['isArray'](object['threads']))throw TypeError('.CommentsV2ConnectResponse.threads:\x20array\x20expected');_0x413115['threads']=[];for(let _0x3dff91=0x0;_0x3dff91<object['threads']['length'];++_0x3dff91)_0x413115['threads'][_0x3dff91]=String(object['threads'][_0x3dff91]);}if(object['threadsV2']){if(!Array['isArray'](object['threadsV2']))throw TypeError('.CommentsV2ConnectResponse.threadsV2:\x20array\x20expected');_0x413115['threadsV2']=[];for(let _0x2f14d8=0x0;_0x2f14d8<object['threadsV2']['length'];++_0x2f14d8){if('object'!=typeof object['threadsV2'][_0x2f14d8])throw TypeError('.CommentsV2ConnectResponse.threadsV2:\x20object\x20expected');_0x413115['threadsV2'][_0x2f14d8]=$root['CommentsThreadDescriptor']['fromObject'](object['threadsV2'][_0x2f14d8]);}}return _0x413115;},CommentsV2ConnectResponse['toObject']=function(_0x1b22d5,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['threads']=[],object['threadsV2']=[]),options['defaults']&&(object['channel']=''),null!=_0x1b22d5['channel']&&_0x1b22d5['hasOwnProperty']('channel')&&(object['channel']=_0x1b22d5['channel']),_0x1b22d5['threads']&&_0x1b22d5['threads']['length']){object['threads']=[];for(let _0x5596ed=0x0;_0x5596ed<_0x1b22d5['threads']['length'];++_0x5596ed)object['threads'][_0x5596ed]=_0x1b22d5['threads'][_0x5596ed];}if(_0x1b22d5['threadsV2']&&_0x1b22d5['threadsV2']['length']){object['threadsV2']=[];for(let _0x21b461=0x0;_0x21b461<_0x1b22d5['threadsV2']['length'];++_0x21b461)object['threadsV2'][_0x21b461]=$root['CommentsThreadDescriptor']['toObject'](_0x1b22d5['threadsV2'][_0x21b461],options);}return object;},CommentsV2ConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ConnectResponse';},CommentsV2ConnectResponse;})()),$root['CommentsV2GetCommentThreadResponse']=((()=>{function CommentsV2GetCommentThreadResponse(properties){if(this['comments']=[],this['commentsV2']=[],properties){for(let _0x4aa8d4=Object['keys'](properties),_0x46c843=0x0;_0x46c843<_0x4aa8d4['length'];++_0x46c843)null!=properties[_0x4aa8d4[_0x46c843]]&&(this[_0x4aa8d4[_0x46c843]]=properties[_0x4aa8d4[_0x46c843]]);}}return CommentsV2GetCommentThreadResponse['prototype']['commentThreadId']='',CommentsV2GetCommentThreadResponse['prototype']['comments']=$util['emptyArray'],CommentsV2GetCommentThreadResponse['prototype']['commentsV2']=$util['emptyArray'],CommentsV2GetCommentThreadResponse['prototype']['resolvedAt']='',CommentsV2GetCommentThreadResponse['prototype']['resolvedBy']='',CommentsV2GetCommentThreadResponse['prototype']['context']='',CommentsV2GetCommentThreadResponse['prototype']['createdAt']='',CommentsV2GetCommentThreadResponse['prototype']['deletedAt']='',CommentsV2GetCommentThreadResponse['prototype']['attributes']='',CommentsV2GetCommentThreadResponse['prototype']['unlinkedAt']='',CommentsV2GetCommentThreadResponse['create']=function(properties){return new CommentsV2GetCommentThreadResponse(properties);},CommentsV2GetCommentThreadResponse['encode']=function(_0x414f11,writer){if(writer||(writer=$Writer['create']()),null!=_0x414f11['commentThreadId']&&Object['hasOwnProperty']['call'](_0x414f11,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x414f11['commentThreadId']),null!=_0x414f11['comments']&&_0x414f11['comments']['length']){for(let _0x10f267=0x0;_0x10f267<_0x414f11['comments']['length'];++_0x10f267)writer['uint32'](0x12)['string'](_0x414f11['comments'][_0x10f267]);}if(null!=_0x414f11['commentsV2']&&_0x414f11['commentsV2']['length']){for(let _0x120426=0x0;_0x120426<_0x414f11['commentsV2']['length'];++_0x120426)$root['CommentDescriptor']['encode'](_0x414f11['commentsV2'][_0x120426],writer['uint32'](0x1a)['fork']())['ldelim']();}return null!=_0x414f11['resolvedAt']&&Object['hasOwnProperty']['call'](_0x414f11,'resolvedAt')&&writer['uint32'](0x22)['string'](_0x414f11['resolvedAt']),null!=_0x414f11['resolvedBy']&&Object['hasOwnProperty']['call'](_0x414f11,'resolvedBy')&&writer['uint32'](0x2a)['string'](_0x414f11['resolvedBy']),null!=_0x414f11['context']&&Object['hasOwnProperty']['call'](_0x414f11,'context')&&writer['uint32'](0x32)['string'](_0x414f11['context']),null!=_0x414f11['createdAt']&&Object['hasOwnProperty']['call'](_0x414f11,'createdAt')&&writer['uint32'](0x3a)['string'](_0x414f11['createdAt']),null!=_0x414f11['deletedAt']&&Object['hasOwnProperty']['call'](_0x414f11,'deletedAt')&&writer['uint32'](0x42)['string'](_0x414f11['deletedAt']),null!=_0x414f11['attributes']&&Object['hasOwnProperty']['call'](_0x414f11,'attributes')&&writer['uint32'](0x4a)['string'](_0x414f11['attributes']),null!=_0x414f11['unlinkedAt']&&Object['hasOwnProperty']['call'](_0x414f11,'unlinkedAt')&&writer['uint32'](0x52)['string'](_0x414f11['unlinkedAt']),writer;},CommentsV2GetCommentThreadResponse['encodeDelimited']=function(_0xfbfe2,writer){return this['encode'](_0xfbfe2,writer)['ldelim']();},CommentsV2GetCommentThreadResponse['decode']=function(_0x4388b8,length){_0x4388b8 instanceof $Reader||(_0x4388b8=$Reader['create'](_0x4388b8));let _0x3a0538=void 0x0===length?_0x4388b8['len']:_0x4388b8['pos']+length,_0x5ccf7a=new $root['CommentsV2GetCommentThreadResponse']();for(;_0x4388b8['pos']<_0x3a0538;){let tag=_0x4388b8['uint32']();switch(tag>>>0x3){case 0x1:_0x5ccf7a['commentThreadId']=_0x4388b8['string']();break;case 0x2:_0x5ccf7a['comments']&&_0x5ccf7a['comments']['length']||(_0x5ccf7a['comments']=[]),_0x5ccf7a['comments']['push'](_0x4388b8['string']());break;case 0x3:_0x5ccf7a['commentsV2']&&_0x5ccf7a['commentsV2']['length']||(_0x5ccf7a['commentsV2']=[]),_0x5ccf7a['commentsV2']['push']($root['CommentDescriptor']['decode'](_0x4388b8,_0x4388b8['uint32']()));break;case 0x4:_0x5ccf7a['resolvedAt']=_0x4388b8['string']();break;case 0x5:_0x5ccf7a['resolvedBy']=_0x4388b8['string']();break;case 0x6:_0x5ccf7a['context']=_0x4388b8['string']();break;case 0x7:_0x5ccf7a['createdAt']=_0x4388b8['string']();break;case 0x8:_0x5ccf7a['deletedAt']=_0x4388b8['string']();break;case 0x9:_0x5ccf7a['attributes']=_0x4388b8['string']();break;case 0xa:_0x5ccf7a['unlinkedAt']=_0x4388b8['string']();break;default:_0x4388b8['skipType'](0x7&tag);}}return _0x5ccf7a;},CommentsV2GetCommentThreadResponse['decodeDelimited']=function(_0x517e3d){return _0x517e3d instanceof $Reader||(_0x517e3d=new $Reader(_0x517e3d)),this['decode'](_0x517e3d,_0x517e3d['uint32']());},CommentsV2GetCommentThreadResponse['verify']=function(_0x4b7f20){if('object'!=typeof _0x4b7f20||null===_0x4b7f20)return'object\x20expected';if(null!=_0x4b7f20['commentThreadId']&&_0x4b7f20['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x4b7f20['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0x4b7f20['comments']&&_0x4b7f20['hasOwnProperty']('comments')){if(!Array['isArray'](_0x4b7f20['comments']))return'comments:\x20array\x20expected';for(let _0x40b9eb=0x0;_0x40b9eb<_0x4b7f20['comments']['length'];++_0x40b9eb)if(!$util['isString'](_0x4b7f20['comments'][_0x40b9eb]))return'comments:\x20string[]\x20expected';}if(null!=_0x4b7f20['commentsV2']&&_0x4b7f20['hasOwnProperty']('commentsV2')){if(!Array['isArray'](_0x4b7f20['commentsV2']))return'commentsV2:\x20array\x20expected';for(let _0x15eadd=0x0;_0x15eadd<_0x4b7f20['commentsV2']['length'];++_0x15eadd){let _0x5dd9f8=$root['CommentDescriptor']['verify'](_0x4b7f20['commentsV2'][_0x15eadd]);if(_0x5dd9f8)return'commentsV2.'+_0x5dd9f8;}}return null!=_0x4b7f20['resolvedAt']&&_0x4b7f20['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0x4b7f20['resolvedAt'])?'resolvedAt:\x20string\x20expected':null!=_0x4b7f20['resolvedBy']&&_0x4b7f20['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0x4b7f20['resolvedBy'])?'resolvedBy:\x20string\x20expected':null!=_0x4b7f20['context']&&_0x4b7f20['hasOwnProperty']('context')&&!$util['isString'](_0x4b7f20['context'])?'context:\x20string\x20expected':null!=_0x4b7f20['createdAt']&&_0x4b7f20['hasOwnProperty']('createdAt')&&!$util['isString'](_0x4b7f20['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x4b7f20['deletedAt']&&_0x4b7f20['hasOwnProperty']('deletedAt')&&!$util['isString'](_0x4b7f20['deletedAt'])?'deletedAt:\x20string\x20expected':null!=_0x4b7f20['attributes']&&_0x4b7f20['hasOwnProperty']('attributes')&&!$util['isString'](_0x4b7f20['attributes'])?'attributes:\x20string\x20expected':null!=_0x4b7f20['unlinkedAt']&&_0x4b7f20['hasOwnProperty']('unlinkedAt')&&!$util['isString'](_0x4b7f20['unlinkedAt'])?'unlinkedAt:\x20string\x20expected':null;},CommentsV2GetCommentThreadResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2GetCommentThreadResponse'])return object;let _0x15f0d8=new $root['CommentsV2GetCommentThreadResponse']();if(null!=object['commentThreadId']&&(_0x15f0d8['commentThreadId']=String(object['commentThreadId'])),object['comments']){if(!Array['isArray'](object['comments']))throw TypeError('.CommentsV2GetCommentThreadResponse.comments:\x20array\x20expected');_0x15f0d8['comments']=[];for(let _0x2efada=0x0;_0x2efada<object['comments']['length'];++_0x2efada)_0x15f0d8['comments'][_0x2efada]=String(object['comments'][_0x2efada]);}if(object['commentsV2']){if(!Array['isArray'](object['commentsV2']))throw TypeError('.CommentsV2GetCommentThreadResponse.commentsV2:\x20array\x20expected');_0x15f0d8['commentsV2']=[];for(let _0x172aac=0x0;_0x172aac<object['commentsV2']['length'];++_0x172aac){if('object'!=typeof object['commentsV2'][_0x172aac])throw TypeError('.CommentsV2GetCommentThreadResponse.commentsV2:\x20object\x20expected');_0x15f0d8['commentsV2'][_0x172aac]=$root['CommentDescriptor']['fromObject'](object['commentsV2'][_0x172aac]);}}return null!=object['resolvedAt']&&(_0x15f0d8['resolvedAt']=String(object['resolvedAt'])),null!=object['resolvedBy']&&(_0x15f0d8['resolvedBy']=String(object['resolvedBy'])),null!=object['context']&&(_0x15f0d8['context']=String(object['context'])),null!=object['createdAt']&&(_0x15f0d8['createdAt']=String(object['createdAt'])),null!=object['deletedAt']&&(_0x15f0d8['deletedAt']=String(object['deletedAt'])),null!=object['attributes']&&(_0x15f0d8['attributes']=String(object['attributes'])),null!=object['unlinkedAt']&&(_0x15f0d8['unlinkedAt']=String(object['unlinkedAt'])),_0x15f0d8;},CommentsV2GetCommentThreadResponse['toObject']=function(_0xfd7c44,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['comments']=[],object['commentsV2']=[]),options['defaults']&&(object['commentThreadId']='',object['resolvedAt']='',object['resolvedBy']='',object['context']='',object['createdAt']='',object['deletedAt']='',object['attributes']='',object['unlinkedAt']=''),null!=_0xfd7c44['commentThreadId']&&_0xfd7c44['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0xfd7c44['commentThreadId']),_0xfd7c44['comments']&&_0xfd7c44['comments']['length']){object['comments']=[];for(let _0x1a9634=0x0;_0x1a9634<_0xfd7c44['comments']['length'];++_0x1a9634)object['comments'][_0x1a9634]=_0xfd7c44['comments'][_0x1a9634];}if(_0xfd7c44['commentsV2']&&_0xfd7c44['commentsV2']['length']){object['commentsV2']=[];for(let _0x45bd83=0x0;_0x45bd83<_0xfd7c44['commentsV2']['length'];++_0x45bd83)object['commentsV2'][_0x45bd83]=$root['CommentDescriptor']['toObject'](_0xfd7c44['commentsV2'][_0x45bd83],options);}return null!=_0xfd7c44['resolvedAt']&&_0xfd7c44['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0xfd7c44['resolvedAt']),null!=_0xfd7c44['resolvedBy']&&_0xfd7c44['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0xfd7c44['resolvedBy']),null!=_0xfd7c44['context']&&_0xfd7c44['hasOwnProperty']('context')&&(object['context']=_0xfd7c44['context']),null!=_0xfd7c44['createdAt']&&_0xfd7c44['hasOwnProperty']('createdAt')&&(object['createdAt']=_0xfd7c44['createdAt']),null!=_0xfd7c44['deletedAt']&&_0xfd7c44['hasOwnProperty']('deletedAt')&&(object['deletedAt']=_0xfd7c44['deletedAt']),null!=_0xfd7c44['attributes']&&_0xfd7c44['hasOwnProperty']('attributes')&&(object['attributes']=_0xfd7c44['attributes']),null!=_0xfd7c44['unlinkedAt']&&_0xfd7c44['hasOwnProperty']('unlinkedAt')&&(object['unlinkedAt']=_0xfd7c44['unlinkedAt']),object;},CommentsV2GetCommentThreadResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2GetCommentThreadResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2GetCommentThreadResponse';},CommentsV2GetCommentThreadResponse;})()),$root['CommentsV2GetDocumentThreadsResponse']=((()=>{function CommentsV2GetDocumentThreadsResponse(properties){if(this['threads']=[],this['threadsV2']=[],properties){for(let _0x5e3a13=Object['keys'](properties),_0x537102=0x0;_0x537102<_0x5e3a13['length'];++_0x537102)null!=properties[_0x5e3a13[_0x537102]]&&(this[_0x5e3a13[_0x537102]]=properties[_0x5e3a13[_0x537102]]);}}return CommentsV2GetDocumentThreadsResponse['prototype']['threads']=$util['emptyArray'],CommentsV2GetDocumentThreadsResponse['prototype']['threadsV2']=$util['emptyArray'],CommentsV2GetDocumentThreadsResponse['create']=function(properties){return new CommentsV2GetDocumentThreadsResponse(properties);},CommentsV2GetDocumentThreadsResponse['encode']=function(_0xfbbc0e,writer){if(writer||(writer=$Writer['create']()),null!=_0xfbbc0e['threads']&&_0xfbbc0e['threads']['length']){for(let _0x3f8a73=0x0;_0x3f8a73<_0xfbbc0e['threads']['length'];++_0x3f8a73)writer['uint32'](0xa)['string'](_0xfbbc0e['threads'][_0x3f8a73]);}if(null!=_0xfbbc0e['threadsV2']&&_0xfbbc0e['threadsV2']['length']){for(let _0x59f4a5=0x0;_0x59f4a5<_0xfbbc0e['threadsV2']['length'];++_0x59f4a5)$root['CommentsThreadDescriptor']['encode'](_0xfbbc0e['threadsV2'][_0x59f4a5],writer['uint32'](0x12)['fork']())['ldelim']();}return writer;},CommentsV2GetDocumentThreadsResponse['encodeDelimited']=function(_0x922e54,writer){return this['encode'](_0x922e54,writer)['ldelim']();},CommentsV2GetDocumentThreadsResponse['decode']=function(_0xdd9613,length){_0xdd9613 instanceof $Reader||(_0xdd9613=$Reader['create'](_0xdd9613));let _0x174ac5=void 0x0===length?_0xdd9613['len']:_0xdd9613['pos']+length,_0x3c3b8c=new $root['CommentsV2GetDocumentThreadsResponse']();for(;_0xdd9613['pos']<_0x174ac5;){let tag=_0xdd9613['uint32']();switch(tag>>>0x3){case 0x1:_0x3c3b8c['threads']&&_0x3c3b8c['threads']['length']||(_0x3c3b8c['threads']=[]),_0x3c3b8c['threads']['push'](_0xdd9613['string']());break;case 0x2:_0x3c3b8c['threadsV2']&&_0x3c3b8c['threadsV2']['length']||(_0x3c3b8c['threadsV2']=[]),_0x3c3b8c['threadsV2']['push']($root['CommentsThreadDescriptor']['decode'](_0xdd9613,_0xdd9613['uint32']()));break;default:_0xdd9613['skipType'](0x7&tag);}}return _0x3c3b8c;},CommentsV2GetDocumentThreadsResponse['decodeDelimited']=function(_0x5f07d1){return _0x5f07d1 instanceof $Reader||(_0x5f07d1=new $Reader(_0x5f07d1)),this['decode'](_0x5f07d1,_0x5f07d1['uint32']());},CommentsV2GetDocumentThreadsResponse['verify']=function(_0x10a9e5){if('object'!=typeof _0x10a9e5||null===_0x10a9e5)return'object\x20expected';if(null!=_0x10a9e5['threads']&&_0x10a9e5['hasOwnProperty']('threads')){if(!Array['isArray'](_0x10a9e5['threads']))return'threads:\x20array\x20expected';for(let _0x3bda0e=0x0;_0x3bda0e<_0x10a9e5['threads']['length'];++_0x3bda0e)if(!$util['isString'](_0x10a9e5['threads'][_0x3bda0e]))return'threads:\x20string[]\x20expected';}if(null!=_0x10a9e5['threadsV2']&&_0x10a9e5['hasOwnProperty']('threadsV2')){if(!Array['isArray'](_0x10a9e5['threadsV2']))return'threadsV2:\x20array\x20expected';for(let _0x3917d7=0x0;_0x3917d7<_0x10a9e5['threadsV2']['length'];++_0x3917d7){let _0x1b6440=$root['CommentsThreadDescriptor']['verify'](_0x10a9e5['threadsV2'][_0x3917d7]);if(_0x1b6440)return'threadsV2.'+_0x1b6440;}}return null;},CommentsV2GetDocumentThreadsResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2GetDocumentThreadsResponse'])return object;let _0x5556dd=new $root['CommentsV2GetDocumentThreadsResponse']();if(object['threads']){if(!Array['isArray'](object['threads']))throw TypeError('.CommentsV2GetDocumentThreadsResponse.threads:\x20array\x20expected');_0x5556dd['threads']=[];for(let _0x238ca5=0x0;_0x238ca5<object['threads']['length'];++_0x238ca5)_0x5556dd['threads'][_0x238ca5]=String(object['threads'][_0x238ca5]);}if(object['threadsV2']){if(!Array['isArray'](object['threadsV2']))throw TypeError('.CommentsV2GetDocumentThreadsResponse.threadsV2:\x20array\x20expected');_0x5556dd['threadsV2']=[];for(let _0x562067=0x0;_0x562067<object['threadsV2']['length'];++_0x562067){if('object'!=typeof object['threadsV2'][_0x562067])throw TypeError('.CommentsV2GetDocumentThreadsResponse.threadsV2:\x20object\x20expected');_0x5556dd['threadsV2'][_0x562067]=$root['CommentsThreadDescriptor']['fromObject'](object['threadsV2'][_0x562067]);}}return _0x5556dd;},CommentsV2GetDocumentThreadsResponse['toObject']=function(_0x5c2414,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['threads']=[],object['threadsV2']=[]),_0x5c2414['threads']&&_0x5c2414['threads']['length']){object['threads']=[];for(let _0x5bad78=0x0;_0x5bad78<_0x5c2414['threads']['length'];++_0x5bad78)object['threads'][_0x5bad78]=_0x5c2414['threads'][_0x5bad78];}if(_0x5c2414['threadsV2']&&_0x5c2414['threadsV2']['length']){object['threadsV2']=[];for(let _0x1f4dcc=0x0;_0x1f4dcc<_0x5c2414['threadsV2']['length'];++_0x1f4dcc)object['threadsV2'][_0x1f4dcc]=$root['CommentsThreadDescriptor']['toObject'](_0x5c2414['threadsV2'][_0x1f4dcc],options);}return object;},CommentsV2GetDocumentThreadsResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2GetDocumentThreadsResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2GetDocumentThreadsResponse';},CommentsV2GetDocumentThreadsResponse;})()),$root['KeyValueDescriptor']=((()=>{function KeyValueDescriptor(properties){if(properties){for(let _0x3ad98d=Object['keys'](properties),_0x147f52=0x0;_0x147f52<_0x3ad98d['length'];++_0x147f52)null!=properties[_0x3ad98d[_0x147f52]]&&(this[_0x3ad98d[_0x147f52]]=properties[_0x3ad98d[_0x147f52]]);}}return KeyValueDescriptor['prototype']['key']='',KeyValueDescriptor['prototype']['value']='',KeyValueDescriptor['create']=function(properties){return new KeyValueDescriptor(properties);},KeyValueDescriptor['encode']=function(_0x4c3d31,writer){return writer||(writer=$Writer['create']()),null!=_0x4c3d31['key']&&Object['hasOwnProperty']['call'](_0x4c3d31,'key')&&writer['uint32'](0xa)['string'](_0x4c3d31['key']),null!=_0x4c3d31['value']&&Object['hasOwnProperty']['call'](_0x4c3d31,'value')&&writer['uint32'](0x12)['string'](_0x4c3d31['value']),writer;},KeyValueDescriptor['encodeDelimited']=function(_0x1cb97e,writer){return this['encode'](_0x1cb97e,writer)['ldelim']();},KeyValueDescriptor['decode']=function(_0xc21bb3,length){_0xc21bb3 instanceof $Reader||(_0xc21bb3=$Reader['create'](_0xc21bb3));let _0x4b3ce7=void 0x0===length?_0xc21bb3['len']:_0xc21bb3['pos']+length,_0x19b301=new $root['KeyValueDescriptor']();for(;_0xc21bb3['pos']<_0x4b3ce7;){let tag=_0xc21bb3['uint32']();switch(tag>>>0x3){case 0x1:_0x19b301['key']=_0xc21bb3['string']();break;case 0x2:_0x19b301['value']=_0xc21bb3['string']();break;default:_0xc21bb3['skipType'](0x7&tag);}}return _0x19b301;},KeyValueDescriptor['decodeDelimited']=function(_0x343c22){return _0x343c22 instanceof $Reader||(_0x343c22=new $Reader(_0x343c22)),this['decode'](_0x343c22,_0x343c22['uint32']());},KeyValueDescriptor['verify']=function(_0x2f4390){return'object'!=typeof _0x2f4390||null===_0x2f4390?'object\x20expected':null!=_0x2f4390['key']&&_0x2f4390['hasOwnProperty']('key')&&!$util['isString'](_0x2f4390['key'])?'key:\x20string\x20expected':null!=_0x2f4390['value']&&_0x2f4390['hasOwnProperty']('value')&&!$util['isString'](_0x2f4390['value'])?'value:\x20string\x20expected':null;},KeyValueDescriptor['fromObject']=function(object){if(object instanceof $root['KeyValueDescriptor'])return object;let _0x273c1c=new $root['KeyValueDescriptor']();return null!=object['key']&&(_0x273c1c['key']=String(object['key'])),null!=object['value']&&(_0x273c1c['value']=String(object['value'])),_0x273c1c;},KeyValueDescriptor['toObject']=function(_0x38195d,options){options||(options={});let object={};return options['defaults']&&(object['key']='',object['value']=''),null!=_0x38195d['key']&&_0x38195d['hasOwnProperty']('key')&&(object['key']=_0x38195d['key']),null!=_0x38195d['value']&&_0x38195d['hasOwnProperty']('value')&&(object['value']=_0x38195d['value']),object;},KeyValueDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},KeyValueDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/KeyValueDescriptor';},KeyValueDescriptor;})()),$root['IsEditorBundleUploadedMessage']=((()=>{function IsEditorBundleUploadedMessage(properties){if(properties){for(let _0x6a6a76=Object['keys'](properties),_0x58442d=0x0;_0x58442d<_0x6a6a76['length'];++_0x58442d)null!=properties[_0x6a6a76[_0x58442d]]&&(this[_0x6a6a76[_0x58442d]]=properties[_0x6a6a76[_0x58442d]]);}}return IsEditorBundleUploadedMessage['prototype']['bundleVersion']='',IsEditorBundleUploadedMessage['create']=function(properties){return new IsEditorBundleUploadedMessage(properties);},IsEditorBundleUploadedMessage['encode']=function(_0x13b570,writer){return writer||(writer=$Writer['create']()),null!=_0x13b570['bundleVersion']&&Object['hasOwnProperty']['call'](_0x13b570,'bundleVersion')&&writer['uint32'](0xa)['string'](_0x13b570['bundleVersion']),writer;},IsEditorBundleUploadedMessage['encodeDelimited']=function(_0x964ed7,writer){return this['encode'](_0x964ed7,writer)['ldelim']();},IsEditorBundleUploadedMessage['decode']=function(_0x16a9be,length){_0x16a9be instanceof $Reader||(_0x16a9be=$Reader['create'](_0x16a9be));let _0x215055=void 0x0===length?_0x16a9be['len']:_0x16a9be['pos']+length,_0x416476=new $root['IsEditorBundleUploadedMessage']();for(;_0x16a9be['pos']<_0x215055;){let tag=_0x16a9be['uint32']();if(tag>>>0x3==0x1)_0x416476['bundleVersion']=_0x16a9be['string']();else _0x16a9be['skipType'](0x7&tag);}return _0x416476;},IsEditorBundleUploadedMessage['decodeDelimited']=function(_0x155423){return _0x155423 instanceof $Reader||(_0x155423=new $Reader(_0x155423)),this['decode'](_0x155423,_0x155423['uint32']());},IsEditorBundleUploadedMessage['verify']=function(_0x499673){return'object'!=typeof _0x499673||null===_0x499673?'object\x20expected':null!=_0x499673['bundleVersion']&&_0x499673['hasOwnProperty']('bundleVersion')&&!$util['isString'](_0x499673['bundleVersion'])?'bundleVersion:\x20string\x20expected':null;},IsEditorBundleUploadedMessage['fromObject']=function(object){if(object instanceof $root['IsEditorBundleUploadedMessage'])return object;let _0x4f7c57=new $root['IsEditorBundleUploadedMessage']();return null!=object['bundleVersion']&&(_0x4f7c57['bundleVersion']=String(object['bundleVersion'])),_0x4f7c57;},IsEditorBundleUploadedMessage['toObject']=function(_0x119eba,options){options||(options={});let object={};return options['defaults']&&(object['bundleVersion']=''),null!=_0x119eba['bundleVersion']&&_0x119eba['hasOwnProperty']('bundleVersion')&&(object['bundleVersion']=_0x119eba['bundleVersion']),object;},IsEditorBundleUploadedMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},IsEditorBundleUploadedMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/IsEditorBundleUploadedMessage';},IsEditorBundleUploadedMessage;})()),$root['IsEditorBundleUploadedResponse']=((()=>{function IsEditorBundleUploadedResponse(properties){if(properties){for(let _0x359a59=Object['keys'](properties),_0x1b2cc3=0x0;_0x1b2cc3<_0x359a59['length'];++_0x1b2cc3)null!=properties[_0x359a59[_0x1b2cc3]]&&(this[_0x359a59[_0x1b2cc3]]=properties[_0x359a59[_0x1b2cc3]]);}}return IsEditorBundleUploadedResponse['prototype']['isUploaded']=!0x1,IsEditorBundleUploadedResponse['create']=function(properties){return new IsEditorBundleUploadedResponse(properties);},IsEditorBundleUploadedResponse['encode']=function(_0x419264,writer){return writer||(writer=$Writer['create']()),null!=_0x419264['isUploaded']&&Object['hasOwnProperty']['call'](_0x419264,'isUploaded')&&writer['uint32'](0x8)['bool'](_0x419264['isUploaded']),writer;},IsEditorBundleUploadedResponse['encodeDelimited']=function(_0x300750,writer){return this['encode'](_0x300750,writer)['ldelim']();},IsEditorBundleUploadedResponse['decode']=function(_0x255e59,length){_0x255e59 instanceof $Reader||(_0x255e59=$Reader['create'](_0x255e59));let _0x50f372=void 0x0===length?_0x255e59['len']:_0x255e59['pos']+length,_0x2cee5b=new $root['IsEditorBundleUploadedResponse']();for(;_0x255e59['pos']<_0x50f372;){let tag=_0x255e59['uint32']();if(tag>>>0x3==0x1)_0x2cee5b['isUploaded']=_0x255e59['bool']();else _0x255e59['skipType'](0x7&tag);}return _0x2cee5b;},IsEditorBundleUploadedResponse['decodeDelimited']=function(_0x810210){return _0x810210 instanceof $Reader||(_0x810210=new $Reader(_0x810210)),this['decode'](_0x810210,_0x810210['uint32']());},IsEditorBundleUploadedResponse['verify']=function(_0x19ad22){return'object'!=typeof _0x19ad22||null===_0x19ad22?'object\x20expected':null!=_0x19ad22['isUploaded']&&_0x19ad22['hasOwnProperty']('isUploaded')&&'boolean'!=typeof _0x19ad22['isUploaded']?'isUploaded:\x20boolean\x20expected':null;},IsEditorBundleUploadedResponse['fromObject']=function(object){if(object instanceof $root['IsEditorBundleUploadedResponse'])return object;let _0x44fea1=new $root['IsEditorBundleUploadedResponse']();return null!=object['isUploaded']&&(_0x44fea1['isUploaded']=Boolean(object['isUploaded'])),_0x44fea1;},IsEditorBundleUploadedResponse['toObject']=function(_0x3ffb0f,options){options||(options={});let object={};return options['defaults']&&(object['isUploaded']=!0x1),null!=_0x3ffb0f['isUploaded']&&_0x3ffb0f['hasOwnProperty']('isUploaded')&&(object['isUploaded']=_0x3ffb0f['isUploaded']),object;},IsEditorBundleUploadedResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},IsEditorBundleUploadedResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/IsEditorBundleUploadedResponse';},IsEditorBundleUploadedResponse;})()),$root['RevisionDescriptor']=((()=>{function RevisionDescriptor(properties){if(properties){for(let _0x1307e0=Object['keys'](properties),_0x1f220f=0x0;_0x1f220f<_0x1307e0['length'];++_0x1f220f)null!=properties[_0x1307e0[_0x1f220f]]&&(this[_0x1307e0[_0x1f220f]]=properties[_0x1307e0[_0x1f220f]]);}}return RevisionDescriptor['prototype']['revisionId']='',RevisionDescriptor['prototype']['name']='',RevisionDescriptor['prototype']['creatorId']='',RevisionDescriptor['prototype']['authorsIds']='',RevisionDescriptor['prototype']['diffData']='',RevisionDescriptor['prototype']['createdAt']='',RevisionDescriptor['prototype']['attributes']='',RevisionDescriptor['prototype']['toVersion']=0x0,RevisionDescriptor['prototype']['fromVersion']=0x0,RevisionDescriptor['prototype']['isEmptyCurrent']=!0x1,RevisionDescriptor['create']=function(properties){return new RevisionDescriptor(properties);},RevisionDescriptor['encode']=function(_0x3eada3,writer){return writer||(writer=$Writer['create']()),null!=_0x3eada3['revisionId']&&Object['hasOwnProperty']['call'](_0x3eada3,'revisionId')&&writer['uint32'](0xa)['string'](_0x3eada3['revisionId']),null!=_0x3eada3['name']&&Object['hasOwnProperty']['call'](_0x3eada3,'name')&&writer['uint32'](0x12)['string'](_0x3eada3['name']),null!=_0x3eada3['creatorId']&&Object['hasOwnProperty']['call'](_0x3eada3,'creatorId')&&writer['uint32'](0x1a)['string'](_0x3eada3['creatorId']),null!=_0x3eada3['authorsIds']&&Object['hasOwnProperty']['call'](_0x3eada3,'authorsIds')&&writer['uint32'](0x22)['string'](_0x3eada3['authorsIds']),null!=_0x3eada3['diffData']&&Object['hasOwnProperty']['call'](_0x3eada3,'diffData')&&writer['uint32'](0x2a)['string'](_0x3eada3['diffData']),null!=_0x3eada3['createdAt']&&Object['hasOwnProperty']['call'](_0x3eada3,'createdAt')&&writer['uint32'](0x32)['string'](_0x3eada3['createdAt']),null!=_0x3eada3['attributes']&&Object['hasOwnProperty']['call'](_0x3eada3,'attributes')&&writer['uint32'](0x3a)['string'](_0x3eada3['attributes']),null!=_0x3eada3['toVersion']&&Object['hasOwnProperty']['call'](_0x3eada3,'toVersion')&&writer['uint32'](0x40)['uint32'](_0x3eada3['toVersion']),null!=_0x3eada3['fromVersion']&&Object['hasOwnProperty']['call'](_0x3eada3,'fromVersion')&&writer['uint32'](0x48)['uint32'](_0x3eada3['fromVersion']),null!=_0x3eada3['isEmptyCurrent']&&Object['hasOwnProperty']['call'](_0x3eada3,'isEmptyCurrent')&&writer['uint32'](0x50)['bool'](_0x3eada3['isEmptyCurrent']),writer;},RevisionDescriptor['encodeDelimited']=function(_0x68885e,writer){return this['encode'](_0x68885e,writer)['ldelim']();},RevisionDescriptor['decode']=function(_0x547cd2,length){_0x547cd2 instanceof $Reader||(_0x547cd2=$Reader['create'](_0x547cd2));let _0x59e015=void 0x0===length?_0x547cd2['len']:_0x547cd2['pos']+length,_0x4aaa10=new $root['RevisionDescriptor']();for(;_0x547cd2['pos']<_0x59e015;){let tag=_0x547cd2['uint32']();switch(tag>>>0x3){case 0x1:_0x4aaa10['revisionId']=_0x547cd2['string']();break;case 0x2:_0x4aaa10['name']=_0x547cd2['string']();break;case 0x3:_0x4aaa10['creatorId']=_0x547cd2['string']();break;case 0x4:_0x4aaa10['authorsIds']=_0x547cd2['string']();break;case 0x5:_0x4aaa10['diffData']=_0x547cd2['string']();break;case 0x6:_0x4aaa10['createdAt']=_0x547cd2['string']();break;case 0x7:_0x4aaa10['attributes']=_0x547cd2['string']();break;case 0x8:_0x4aaa10['toVersion']=_0x547cd2['uint32']();break;case 0x9:_0x4aaa10['fromVersion']=_0x547cd2['uint32']();break;case 0xa:_0x4aaa10['isEmptyCurrent']=_0x547cd2['bool']();break;default:_0x547cd2['skipType'](0x7&tag);}}return _0x4aaa10;},RevisionDescriptor['decodeDelimited']=function(_0x3459ba){return _0x3459ba instanceof $Reader||(_0x3459ba=new $Reader(_0x3459ba)),this['decode'](_0x3459ba,_0x3459ba['uint32']());},RevisionDescriptor['verify']=function(_0x10dc14){return'object'!=typeof _0x10dc14||null===_0x10dc14?'object\x20expected':null!=_0x10dc14['revisionId']&&_0x10dc14['hasOwnProperty']('revisionId')&&!$util['isString'](_0x10dc14['revisionId'])?'revisionId:\x20string\x20expected':null!=_0x10dc14['name']&&_0x10dc14['hasOwnProperty']('name')&&!$util['isString'](_0x10dc14['name'])?'name:\x20string\x20expected':null!=_0x10dc14['creatorId']&&_0x10dc14['hasOwnProperty']('creatorId')&&!$util['isString'](_0x10dc14['creatorId'])?'creatorId:\x20string\x20expected':null!=_0x10dc14['authorsIds']&&_0x10dc14['hasOwnProperty']('authorsIds')&&!$util['isString'](_0x10dc14['authorsIds'])?'authorsIds:\x20string\x20expected':null!=_0x10dc14['diffData']&&_0x10dc14['hasOwnProperty']('diffData')&&!$util['isString'](_0x10dc14['diffData'])?'diffData:\x20string\x20expected':null!=_0x10dc14['createdAt']&&_0x10dc14['hasOwnProperty']('createdAt')&&!$util['isString'](_0x10dc14['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x10dc14['attributes']&&_0x10dc14['hasOwnProperty']('attributes')&&!$util['isString'](_0x10dc14['attributes'])?'attributes:\x20string\x20expected':null!=_0x10dc14['toVersion']&&_0x10dc14['hasOwnProperty']('toVersion')&&!$util['isInteger'](_0x10dc14['toVersion'])?'toVersion:\x20integer\x20expected':null!=_0x10dc14['fromVersion']&&_0x10dc14['hasOwnProperty']('fromVersion')&&!$util['isInteger'](_0x10dc14['fromVersion'])?'fromVersion:\x20integer\x20expected':null!=_0x10dc14['isEmptyCurrent']&&_0x10dc14['hasOwnProperty']('isEmptyCurrent')&&'boolean'!=typeof _0x10dc14['isEmptyCurrent']?'isEmptyCurrent:\x20boolean\x20expected':null;},RevisionDescriptor['fromObject']=function(object){if(object instanceof $root['RevisionDescriptor'])return object;let _0xcd6b1c=new $root['RevisionDescriptor']();return null!=object['revisionId']&&(_0xcd6b1c['revisionId']=String(object['revisionId'])),null!=object['name']&&(_0xcd6b1c['name']=String(object['name'])),null!=object['creatorId']&&(_0xcd6b1c['creatorId']=String(object['creatorId'])),null!=object['authorsIds']&&(_0xcd6b1c['authorsIds']=String(object['authorsIds'])),null!=object['diffData']&&(_0xcd6b1c['diffData']=String(object['diffData'])),null!=object['createdAt']&&(_0xcd6b1c['createdAt']=String(object['createdAt'])),null!=object['attributes']&&(_0xcd6b1c['attributes']=String(object['attributes'])),null!=object['toVersion']&&(_0xcd6b1c['toVersion']=object['toVersion']>>>0x0),null!=object['fromVersion']&&(_0xcd6b1c['fromVersion']=object['fromVersion']>>>0x0),null!=object['isEmptyCurrent']&&(_0xcd6b1c['isEmptyCurrent']=Boolean(object['isEmptyCurrent'])),_0xcd6b1c;},RevisionDescriptor['toObject']=function(_0x24b204,options){options||(options={});let object={};return options['defaults']&&(object['revisionId']='',object['name']='',object['creatorId']='',object['authorsIds']='',object['diffData']='',object['createdAt']='',object['attributes']='',object['toVersion']=0x0,object['fromVersion']=0x0,object['isEmptyCurrent']=!0x1),null!=_0x24b204['revisionId']&&_0x24b204['hasOwnProperty']('revisionId')&&(object['revisionId']=_0x24b204['revisionId']),null!=_0x24b204['name']&&_0x24b204['hasOwnProperty']('name')&&(object['name']=_0x24b204['name']),null!=_0x24b204['creatorId']&&_0x24b204['hasOwnProperty']('creatorId')&&(object['creatorId']=_0x24b204['creatorId']),null!=_0x24b204['authorsIds']&&_0x24b204['hasOwnProperty']('authorsIds')&&(object['authorsIds']=_0x24b204['authorsIds']),null!=_0x24b204['diffData']&&_0x24b204['hasOwnProperty']('diffData')&&(object['diffData']=_0x24b204['diffData']),null!=_0x24b204['createdAt']&&_0x24b204['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x24b204['createdAt']),null!=_0x24b204['attributes']&&_0x24b204['hasOwnProperty']('attributes')&&(object['attributes']=_0x24b204['attributes']),null!=_0x24b204['toVersion']&&_0x24b204['hasOwnProperty']('toVersion')&&(object['toVersion']=_0x24b204['toVersion']),null!=_0x24b204['fromVersion']&&_0x24b204['hasOwnProperty']('fromVersion')&&(object['fromVersion']=_0x24b204['fromVersion']),null!=_0x24b204['isEmptyCurrent']&&_0x24b204['hasOwnProperty']('isEmptyCurrent')&&(object['isEmptyCurrent']=_0x24b204['isEmptyCurrent']),object;},RevisionDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionDescriptor';},RevisionDescriptor;})()),$root['RevisionHistoryConnectMessage']=((()=>{function RevisionHistoryConnectMessage(properties){if(properties){for(let _0x398035=Object['keys'](properties),_0x4e0468=0x0;_0x4e0468<_0x398035['length'];++_0x4e0468)null!=properties[_0x398035[_0x4e0468]]&&(this[_0x398035[_0x4e0468]]=properties[_0x398035[_0x4e0468]]);}}return RevisionHistoryConnectMessage['prototype']['documentId']='',RevisionHistoryConnectMessage['create']=function(properties){return new RevisionHistoryConnectMessage(properties);},RevisionHistoryConnectMessage['encode']=function(_0xa52db9,writer){return writer||(writer=$Writer['create']()),null!=_0xa52db9['documentId']&&Object['hasOwnProperty']['call'](_0xa52db9,'documentId')&&writer['uint32'](0xa)['string'](_0xa52db9['documentId']),writer;},RevisionHistoryConnectMessage['encodeDelimited']=function(_0x1e7229,writer){return this['encode'](_0x1e7229,writer)['ldelim']();},RevisionHistoryConnectMessage['decode']=function(_0x1311cb,length){_0x1311cb instanceof $Reader||(_0x1311cb=$Reader['create'](_0x1311cb));let _0x3a2f8b=void 0x0===length?_0x1311cb['len']:_0x1311cb['pos']+length,_0x1597d7=new $root['RevisionHistoryConnectMessage']();for(;_0x1311cb['pos']<_0x3a2f8b;){let tag=_0x1311cb['uint32']();if(tag>>>0x3==0x1)_0x1597d7['documentId']=_0x1311cb['string']();else _0x1311cb['skipType'](0x7&tag);}return _0x1597d7;},RevisionHistoryConnectMessage['decodeDelimited']=function(_0x29ecf6){return _0x29ecf6 instanceof $Reader||(_0x29ecf6=new $Reader(_0x29ecf6)),this['decode'](_0x29ecf6,_0x29ecf6['uint32']());},RevisionHistoryConnectMessage['verify']=function(_0x50516a){return'object'!=typeof _0x50516a||null===_0x50516a?'object\x20expected':null!=_0x50516a['documentId']&&_0x50516a['hasOwnProperty']('documentId')&&!$util['isString'](_0x50516a['documentId'])?'documentId:\x20string\x20expected':null;},RevisionHistoryConnectMessage['fromObject']=function(object){if(object instanceof $root['RevisionHistoryConnectMessage'])return object;let _0x2ecd59=new $root['RevisionHistoryConnectMessage']();return null!=object['documentId']&&(_0x2ecd59['documentId']=String(object['documentId'])),_0x2ecd59;},RevisionHistoryConnectMessage['toObject']=function(_0x12c8f5,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x12c8f5['documentId']&&_0x12c8f5['hasOwnProperty']('documentId')&&(object['documentId']=_0x12c8f5['documentId']),object;},RevisionHistoryConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryConnectMessage';},RevisionHistoryConnectMessage;})()),$root['RevisionHistoryGetRevisionMessage']=((()=>{function RevisionHistoryGetRevisionMessage(properties){if(properties){for(let _0x3eddb5=Object['keys'](properties),_0x46261b=0x0;_0x46261b<_0x3eddb5['length'];++_0x46261b)null!=properties[_0x3eddb5[_0x46261b]]&&(this[_0x3eddb5[_0x46261b]]=properties[_0x3eddb5[_0x46261b]]);}}return RevisionHistoryGetRevisionMessage['prototype']['documentId']='',RevisionHistoryGetRevisionMessage['prototype']['revisionId']='',RevisionHistoryGetRevisionMessage['create']=function(properties){return new RevisionHistoryGetRevisionMessage(properties);},RevisionHistoryGetRevisionMessage['encode']=function(_0x2c33eb,writer){return writer||(writer=$Writer['create']()),null!=_0x2c33eb['documentId']&&Object['hasOwnProperty']['call'](_0x2c33eb,'documentId')&&writer['uint32'](0xa)['string'](_0x2c33eb['documentId']),null!=_0x2c33eb['revisionId']&&Object['hasOwnProperty']['call'](_0x2c33eb,'revisionId')&&writer['uint32'](0x12)['string'](_0x2c33eb['revisionId']),writer;},RevisionHistoryGetRevisionMessage['encodeDelimited']=function(_0x57c487,writer){return this['encode'](_0x57c487,writer)['ldelim']();},RevisionHistoryGetRevisionMessage['decode']=function(_0x1f5b51,length){_0x1f5b51 instanceof $Reader||(_0x1f5b51=$Reader['create'](_0x1f5b51));let _0x3a471e=void 0x0===length?_0x1f5b51['len']:_0x1f5b51['pos']+length,_0x1d996d=new $root['RevisionHistoryGetRevisionMessage']();for(;_0x1f5b51['pos']<_0x3a471e;){let tag=_0x1f5b51['uint32']();switch(tag>>>0x3){case 0x1:_0x1d996d['documentId']=_0x1f5b51['string']();break;case 0x2:_0x1d996d['revisionId']=_0x1f5b51['string']();break;default:_0x1f5b51['skipType'](0x7&tag);}}return _0x1d996d;},RevisionHistoryGetRevisionMessage['decodeDelimited']=function(_0x12b6b6){return _0x12b6b6 instanceof $Reader||(_0x12b6b6=new $Reader(_0x12b6b6)),this['decode'](_0x12b6b6,_0x12b6b6['uint32']());},RevisionHistoryGetRevisionMessage['verify']=function(_0x1e3aff){return'object'!=typeof _0x1e3aff||null===_0x1e3aff?'object\x20expected':null!=_0x1e3aff['documentId']&&_0x1e3aff['hasOwnProperty']('documentId')&&!$util['isString'](_0x1e3aff['documentId'])?'documentId:\x20string\x20expected':null!=_0x1e3aff['revisionId']&&_0x1e3aff['hasOwnProperty']('revisionId')&&!$util['isString'](_0x1e3aff['revisionId'])?'revisionId:\x20string\x20expected':null;},RevisionHistoryGetRevisionMessage['fromObject']=function(object){if(object instanceof $root['RevisionHistoryGetRevisionMessage'])return object;let _0x407e40=new $root['RevisionHistoryGetRevisionMessage']();return null!=object['documentId']&&(_0x407e40['documentId']=String(object['documentId'])),null!=object['revisionId']&&(_0x407e40['revisionId']=String(object['revisionId'])),_0x407e40;},RevisionHistoryGetRevisionMessage['toObject']=function(_0x52381a,options){options||(options={});let object={};return options['defaults']&&(object['documentId']='',object['revisionId']=''),null!=_0x52381a['documentId']&&_0x52381a['hasOwnProperty']('documentId')&&(object['documentId']=_0x52381a['documentId']),null!=_0x52381a['revisionId']&&_0x52381a['hasOwnProperty']('revisionId')&&(object['revisionId']=_0x52381a['revisionId']),object;},RevisionHistoryGetRevisionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryGetRevisionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryGetRevisionMessage';},RevisionHistoryGetRevisionMessage;})()),$root['RevisionHistoryReconnectMessage']=((()=>{function RevisionHistoryReconnectMessage(properties){if(properties){for(let _0x5eec74=Object['keys'](properties),_0x371062=0x0;_0x371062<_0x5eec74['length'];++_0x371062)null!=properties[_0x5eec74[_0x371062]]&&(this[_0x5eec74[_0x371062]]=properties[_0x5eec74[_0x371062]]);}}return RevisionHistoryReconnectMessage['prototype']['documentId']='',RevisionHistoryReconnectMessage['prototype']['requestId']=0x0,RevisionHistoryReconnectMessage['create']=function(properties){return new RevisionHistoryReconnectMessage(properties);},RevisionHistoryReconnectMessage['encode']=function(_0xcf7aad,writer){return writer||(writer=$Writer['create']()),null!=_0xcf7aad['documentId']&&Object['hasOwnProperty']['call'](_0xcf7aad,'documentId')&&writer['uint32'](0xa)['string'](_0xcf7aad['documentId']),null!=_0xcf7aad['requestId']&&Object['hasOwnProperty']['call'](_0xcf7aad,'requestId')&&writer['uint32'](0x10)['uint32'](_0xcf7aad['requestId']),writer;},RevisionHistoryReconnectMessage['encodeDelimited']=function(_0x80c0e,writer){return this['encode'](_0x80c0e,writer)['ldelim']();},RevisionHistoryReconnectMessage['decode']=function(_0x7d6f54,length){_0x7d6f54 instanceof $Reader||(_0x7d6f54=$Reader['create'](_0x7d6f54));let _0x5af0a3=void 0x0===length?_0x7d6f54['len']:_0x7d6f54['pos']+length,_0x3d3c14=new $root['RevisionHistoryReconnectMessage']();for(;_0x7d6f54['pos']<_0x5af0a3;){let tag=_0x7d6f54['uint32']();switch(tag>>>0x3){case 0x1:_0x3d3c14['documentId']=_0x7d6f54['string']();break;case 0x2:_0x3d3c14['requestId']=_0x7d6f54['uint32']();break;default:_0x7d6f54['skipType'](0x7&tag);}}return _0x3d3c14;},RevisionHistoryReconnectMessage['decodeDelimited']=function(_0x5918bc){return _0x5918bc instanceof $Reader||(_0x5918bc=new $Reader(_0x5918bc)),this['decode'](_0x5918bc,_0x5918bc['uint32']());},RevisionHistoryReconnectMessage['verify']=function(_0x1e2997){return'object'!=typeof _0x1e2997||null===_0x1e2997?'object\x20expected':null!=_0x1e2997['documentId']&&_0x1e2997['hasOwnProperty']('documentId')&&!$util['isString'](_0x1e2997['documentId'])?'documentId:\x20string\x20expected':null!=_0x1e2997['requestId']&&_0x1e2997['hasOwnProperty']('requestId')&&!$util['isInteger'](_0x1e2997['requestId'])?'requestId:\x20integer\x20expected':null;},RevisionHistoryReconnectMessage['fromObject']=function(object){if(object instanceof $root['RevisionHistoryReconnectMessage'])return object;let _0x50206b=new $root['RevisionHistoryReconnectMessage']();return null!=object['documentId']&&(_0x50206b['documentId']=String(object['documentId'])),null!=object['requestId']&&(_0x50206b['requestId']=object['requestId']>>>0x0),_0x50206b;},RevisionHistoryReconnectMessage['toObject']=function(_0x373eea,options){options||(options={});let object={};return options['defaults']&&(object['documentId']='',object['requestId']=0x0),null!=_0x373eea['documentId']&&_0x373eea['hasOwnProperty']('documentId')&&(object['documentId']=_0x373eea['documentId']),null!=_0x373eea['requestId']&&_0x373eea['hasOwnProperty']('requestId')&&(object['requestId']=_0x373eea['requestId']),object;},RevisionHistoryReconnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryReconnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryReconnectMessage';},RevisionHistoryReconnectMessage;})()),$root['RevisionHistoryUpdateRevisionsMessage']=((()=>{function RevisionHistoryUpdateRevisionsMessage(properties){if(this['revisions']=[],properties){for(let _0x4fb68f=Object['keys'](properties),_0x4d5fe6=0x0;_0x4d5fe6<_0x4fb68f['length'];++_0x4d5fe6)null!=properties[_0x4fb68f[_0x4d5fe6]]&&(this[_0x4fb68f[_0x4d5fe6]]=properties[_0x4fb68f[_0x4d5fe6]]);}}return RevisionHistoryUpdateRevisionsMessage['prototype']['documentId']='',RevisionHistoryUpdateRevisionsMessage['prototype']['requestId']=0x0,RevisionHistoryUpdateRevisionsMessage['prototype']['revisions']=$util['emptyArray'],RevisionHistoryUpdateRevisionsMessage['create']=function(properties){return new RevisionHistoryUpdateRevisionsMessage(properties);},RevisionHistoryUpdateRevisionsMessage['encode']=function(_0x3054a7,writer){if(writer||(writer=$Writer['create']()),null!=_0x3054a7['documentId']&&Object['hasOwnProperty']['call'](_0x3054a7,'documentId')&&writer['uint32'](0xa)['string'](_0x3054a7['documentId']),null!=_0x3054a7['requestId']&&Object['hasOwnProperty']['call'](_0x3054a7,'requestId')&&writer['uint32'](0x10)['uint32'](_0x3054a7['requestId']),null!=_0x3054a7['revisions']&&_0x3054a7['revisions']['length']){for(let _0x4b359c=0x0;_0x4b359c<_0x3054a7['revisions']['length'];++_0x4b359c)$root['RevisionDescriptor']['encode'](_0x3054a7['revisions'][_0x4b359c],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},RevisionHistoryUpdateRevisionsMessage['encodeDelimited']=function(_0x44130b,writer){return this['encode'](_0x44130b,writer)['ldelim']();},RevisionHistoryUpdateRevisionsMessage['decode']=function(_0x21a670,length){_0x21a670 instanceof $Reader||(_0x21a670=$Reader['create'](_0x21a670));let _0x37775c=void 0x0===length?_0x21a670['len']:_0x21a670['pos']+length,_0x2271e5=new $root['RevisionHistoryUpdateRevisionsMessage']();for(;_0x21a670['pos']<_0x37775c;){let tag=_0x21a670['uint32']();switch(tag>>>0x3){case 0x1:_0x2271e5['documentId']=_0x21a670['string']();break;case 0x2:_0x2271e5['requestId']=_0x21a670['uint32']();break;case 0x3:_0x2271e5['revisions']&&_0x2271e5['revisions']['length']||(_0x2271e5['revisions']=[]),_0x2271e5['revisions']['push']($root['RevisionDescriptor']['decode'](_0x21a670,_0x21a670['uint32']()));break;default:_0x21a670['skipType'](0x7&tag);}}return _0x2271e5;},RevisionHistoryUpdateRevisionsMessage['decodeDelimited']=function(_0x82a165){return _0x82a165 instanceof $Reader||(_0x82a165=new $Reader(_0x82a165)),this['decode'](_0x82a165,_0x82a165['uint32']());},RevisionHistoryUpdateRevisionsMessage['verify']=function(_0x30fddc){if('object'!=typeof _0x30fddc||null===_0x30fddc)return'object\x20expected';if(null!=_0x30fddc['documentId']&&_0x30fddc['hasOwnProperty']('documentId')&&!$util['isString'](_0x30fddc['documentId']))return'documentId:\x20string\x20expected';if(null!=_0x30fddc['requestId']&&_0x30fddc['hasOwnProperty']('requestId')&&!$util['isInteger'](_0x30fddc['requestId']))return'requestId:\x20integer\x20expected';if(null!=_0x30fddc['revisions']&&_0x30fddc['hasOwnProperty']('revisions')){if(!Array['isArray'](_0x30fddc['revisions']))return'revisions:\x20array\x20expected';for(let _0x40c6fb=0x0;_0x40c6fb<_0x30fddc['revisions']['length'];++_0x40c6fb){let _0x4ed02b=$root['RevisionDescriptor']['verify'](_0x30fddc['revisions'][_0x40c6fb]);if(_0x4ed02b)return'revisions.'+_0x4ed02b;}}return null;},RevisionHistoryUpdateRevisionsMessage['fromObject']=function(object){if(object instanceof $root['RevisionHistoryUpdateRevisionsMessage'])return object;let _0x4a8a5e=new $root['RevisionHistoryUpdateRevisionsMessage']();if(null!=object['documentId']&&(_0x4a8a5e['documentId']=String(object['documentId'])),null!=object['requestId']&&(_0x4a8a5e['requestId']=object['requestId']>>>0x0),object['revisions']){if(!Array['isArray'](object['revisions']))throw TypeError('.RevisionHistoryUpdateRevisionsMessage.revisions:\x20array\x20expected');_0x4a8a5e['revisions']=[];for(let _0x3e0424=0x0;_0x3e0424<object['revisions']['length'];++_0x3e0424){if('object'!=typeof object['revisions'][_0x3e0424])throw TypeError('.RevisionHistoryUpdateRevisionsMessage.revisions:\x20object\x20expected');_0x4a8a5e['revisions'][_0x3e0424]=$root['RevisionDescriptor']['fromObject'](object['revisions'][_0x3e0424]);}}return _0x4a8a5e;},RevisionHistoryUpdateRevisionsMessage['toObject']=function(_0x13946b,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['revisions']=[]),options['defaults']&&(object['documentId']='',object['requestId']=0x0),null!=_0x13946b['documentId']&&_0x13946b['hasOwnProperty']('documentId')&&(object['documentId']=_0x13946b['documentId']),null!=_0x13946b['requestId']&&_0x13946b['hasOwnProperty']('requestId')&&(object['requestId']=_0x13946b['requestId']),_0x13946b['revisions']&&_0x13946b['revisions']['length']){object['revisions']=[];for(let _0x55e476=0x0;_0x55e476<_0x13946b['revisions']['length'];++_0x55e476)object['revisions'][_0x55e476]=$root['RevisionDescriptor']['toObject'](_0x13946b['revisions'][_0x55e476],options);}return object;},RevisionHistoryUpdateRevisionsMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryUpdateRevisionsMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryUpdateRevisionsMessage';},RevisionHistoryUpdateRevisionsMessage;})()),$root['RevisionHistoryConnectResponse']=((()=>{function RevisionHistoryConnectResponse(properties){if(this['revisions']=[],properties){for(let _0x7ac630=Object['keys'](properties),_0x4b3570=0x0;_0x4b3570<_0x7ac630['length'];++_0x4b3570)null!=properties[_0x7ac630[_0x4b3570]]&&(this[_0x7ac630[_0x4b3570]]=properties[_0x7ac630[_0x4b3570]]);}}return RevisionHistoryConnectResponse['prototype']['channel']='',RevisionHistoryConnectResponse['prototype']['requestId']=0x0,RevisionHistoryConnectResponse['prototype']['revisions']=$util['emptyArray'],RevisionHistoryConnectResponse['create']=function(properties){return new RevisionHistoryConnectResponse(properties);},RevisionHistoryConnectResponse['encode']=function(_0x3ec6dd,writer){if(writer||(writer=$Writer['create']()),null!=_0x3ec6dd['channel']&&Object['hasOwnProperty']['call'](_0x3ec6dd,'channel')&&writer['uint32'](0xa)['string'](_0x3ec6dd['channel']),null!=_0x3ec6dd['requestId']&&Object['hasOwnProperty']['call'](_0x3ec6dd,'requestId')&&writer['uint32'](0x10)['uint32'](_0x3ec6dd['requestId']),null!=_0x3ec6dd['revisions']&&_0x3ec6dd['revisions']['length']){for(let _0x5a92ae=0x0;_0x5a92ae<_0x3ec6dd['revisions']['length'];++_0x5a92ae)$root['RevisionDescriptor']['encode'](_0x3ec6dd['revisions'][_0x5a92ae],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},RevisionHistoryConnectResponse['encodeDelimited']=function(_0x237633,writer){return this['encode'](_0x237633,writer)['ldelim']();},RevisionHistoryConnectResponse['decode']=function(_0x4ab5d4,length){_0x4ab5d4 instanceof $Reader||(_0x4ab5d4=$Reader['create'](_0x4ab5d4));let _0x106d43=void 0x0===length?_0x4ab5d4['len']:_0x4ab5d4['pos']+length,_0x5db1a9=new $root['RevisionHistoryConnectResponse']();for(;_0x4ab5d4['pos']<_0x106d43;){let tag=_0x4ab5d4['uint32']();switch(tag>>>0x3){case 0x1:_0x5db1a9['channel']=_0x4ab5d4['string']();break;case 0x2:_0x5db1a9['requestId']=_0x4ab5d4['uint32']();break;case 0x3:_0x5db1a9['revisions']&&_0x5db1a9['revisions']['length']||(_0x5db1a9['revisions']=[]),_0x5db1a9['revisions']['push']($root['RevisionDescriptor']['decode'](_0x4ab5d4,_0x4ab5d4['uint32']()));break;default:_0x4ab5d4['skipType'](0x7&tag);}}return _0x5db1a9;},RevisionHistoryConnectResponse['decodeDelimited']=function(_0x2fc08f){return _0x2fc08f instanceof $Reader||(_0x2fc08f=new $Reader(_0x2fc08f)),this['decode'](_0x2fc08f,_0x2fc08f['uint32']());},RevisionHistoryConnectResponse['verify']=function(_0x12ea78){if('object'!=typeof _0x12ea78||null===_0x12ea78)return'object\x20expected';if(null!=_0x12ea78['channel']&&_0x12ea78['hasOwnProperty']('channel')&&!$util['isString'](_0x12ea78['channel']))return'channel:\x20string\x20expected';if(null!=_0x12ea78['requestId']&&_0x12ea78['hasOwnProperty']('requestId')&&!$util['isInteger'](_0x12ea78['requestId']))return'requestId:\x20integer\x20expected';if(null!=_0x12ea78['revisions']&&_0x12ea78['hasOwnProperty']('revisions')){if(!Array['isArray'](_0x12ea78['revisions']))return'revisions:\x20array\x20expected';for(let _0x54db8e=0x0;_0x54db8e<_0x12ea78['revisions']['length'];++_0x54db8e){let _0x413f0d=$root['RevisionDescriptor']['verify'](_0x12ea78['revisions'][_0x54db8e]);if(_0x413f0d)return'revisions.'+_0x413f0d;}}return null;},RevisionHistoryConnectResponse['fromObject']=function(object){if(object instanceof $root['RevisionHistoryConnectResponse'])return object;let _0x490a33=new $root['RevisionHistoryConnectResponse']();if(null!=object['channel']&&(_0x490a33['channel']=String(object['channel'])),null!=object['requestId']&&(_0x490a33['requestId']=object['requestId']>>>0x0),object['revisions']){if(!Array['isArray'](object['revisions']))throw TypeError('.RevisionHistoryConnectResponse.revisions:\x20array\x20expected');_0x490a33['revisions']=[];for(let _0x56eb69=0x0;_0x56eb69<object['revisions']['length'];++_0x56eb69){if('object'!=typeof object['revisions'][_0x56eb69])throw TypeError('.RevisionHistoryConnectResponse.revisions:\x20object\x20expected');_0x490a33['revisions'][_0x56eb69]=$root['RevisionDescriptor']['fromObject'](object['revisions'][_0x56eb69]);}}return _0x490a33;},RevisionHistoryConnectResponse['toObject']=function(_0xa41c89,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['revisions']=[]),options['defaults']&&(object['channel']='',object['requestId']=0x0),null!=_0xa41c89['channel']&&_0xa41c89['hasOwnProperty']('channel')&&(object['channel']=_0xa41c89['channel']),null!=_0xa41c89['requestId']&&_0xa41c89['hasOwnProperty']('requestId')&&(object['requestId']=_0xa41c89['requestId']),_0xa41c89['revisions']&&_0xa41c89['revisions']['length']){object['revisions']=[];for(let _0x202666=0x0;_0x202666<_0xa41c89['revisions']['length'];++_0x202666)object['revisions'][_0x202666]=$root['RevisionDescriptor']['toObject'](_0xa41c89['revisions'][_0x202666],options);}return object;},RevisionHistoryConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryConnectResponse';},RevisionHistoryConnectResponse;})()),$root['RevisionHistoryGetRevisionResponse']=((()=>{function RevisionHistoryGetRevisionResponse(properties){if(properties){for(let _0x3df80c=Object['keys'](properties),_0x3b62ea=0x0;_0x3b62ea<_0x3df80c['length'];++_0x3b62ea)null!=properties[_0x3df80c[_0x3b62ea]]&&(this[_0x3df80c[_0x3b62ea]]=properties[_0x3df80c[_0x3b62ea]]);}}return RevisionHistoryGetRevisionResponse['prototype']['revisionId']='',RevisionHistoryGetRevisionResponse['prototype']['name']='',RevisionHistoryGetRevisionResponse['prototype']['creatorId']='',RevisionHistoryGetRevisionResponse['prototype']['authorsIds']='',RevisionHistoryGetRevisionResponse['prototype']['diffData']='',RevisionHistoryGetRevisionResponse['prototype']['createdAt']='',RevisionHistoryGetRevisionResponse['prototype']['attributes']='',RevisionHistoryGetRevisionResponse['prototype']['toVersion']=0x0,RevisionHistoryGetRevisionResponse['prototype']['fromVersion']=0x0,RevisionHistoryGetRevisionResponse['prototype']['isEmptyCurrent']=!0x1,RevisionHistoryGetRevisionResponse['create']=function(properties){return new RevisionHistoryGetRevisionResponse(properties);},RevisionHistoryGetRevisionResponse['encode']=function(_0x447f7f,writer){return writer||(writer=$Writer['create']()),null!=_0x447f7f['revisionId']&&Object['hasOwnProperty']['call'](_0x447f7f,'revisionId')&&writer['uint32'](0xa)['string'](_0x447f7f['revisionId']),null!=_0x447f7f['name']&&Object['hasOwnProperty']['call'](_0x447f7f,'name')&&writer['uint32'](0x12)['string'](_0x447f7f['name']),null!=_0x447f7f['creatorId']&&Object['hasOwnProperty']['call'](_0x447f7f,'creatorId')&&writer['uint32'](0x1a)['string'](_0x447f7f['creatorId']),null!=_0x447f7f['authorsIds']&&Object['hasOwnProperty']['call'](_0x447f7f,'authorsIds')&&writer['uint32'](0x22)['string'](_0x447f7f['authorsIds']),null!=_0x447f7f['diffData']&&Object['hasOwnProperty']['call'](_0x447f7f,'diffData')&&writer['uint32'](0x2a)['string'](_0x447f7f['diffData']),null!=_0x447f7f['createdAt']&&Object['hasOwnProperty']['call'](_0x447f7f,'createdAt')&&writer['uint32'](0x32)['string'](_0x447f7f['createdAt']),null!=_0x447f7f['attributes']&&Object['hasOwnProperty']['call'](_0x447f7f,'attributes')&&writer['uint32'](0x3a)['string'](_0x447f7f['attributes']),null!=_0x447f7f['toVersion']&&Object['hasOwnProperty']['call'](_0x447f7f,'toVersion')&&writer['uint32'](0x40)['uint32'](_0x447f7f['toVersion']),null!=_0x447f7f['fromVersion']&&Object['hasOwnProperty']['call'](_0x447f7f,'fromVersion')&&writer['uint32'](0x48)['uint32'](_0x447f7f['fromVersion']),null!=_0x447f7f['isEmptyCurrent']&&Object['hasOwnProperty']['call'](_0x447f7f,'isEmptyCurrent')&&writer['uint32'](0x50)['bool'](_0x447f7f['isEmptyCurrent']),writer;},RevisionHistoryGetRevisionResponse['encodeDelimited']=function(_0x637288,writer){return this['encode'](_0x637288,writer)['ldelim']();},RevisionHistoryGetRevisionResponse['decode']=function(_0x7f65bc,length){_0x7f65bc instanceof $Reader||(_0x7f65bc=$Reader['create'](_0x7f65bc));let _0x406ee3=void 0x0===length?_0x7f65bc['len']:_0x7f65bc['pos']+length,_0x5b06d2=new $root['RevisionHistoryGetRevisionResponse']();for(;_0x7f65bc['pos']<_0x406ee3;){let tag=_0x7f65bc['uint32']();switch(tag>>>0x3){case 0x1:_0x5b06d2['revisionId']=_0x7f65bc['string']();break;case 0x2:_0x5b06d2['name']=_0x7f65bc['string']();break;case 0x3:_0x5b06d2['creatorId']=_0x7f65bc['string']();break;case 0x4:_0x5b06d2['authorsIds']=_0x7f65bc['string']();break;case 0x5:_0x5b06d2['diffData']=_0x7f65bc['string']();break;case 0x6:_0x5b06d2['createdAt']=_0x7f65bc['string']();break;case 0x7:_0x5b06d2['attributes']=_0x7f65bc['string']();break;case 0x8:_0x5b06d2['toVersion']=_0x7f65bc['uint32']();break;case 0x9:_0x5b06d2['fromVersion']=_0x7f65bc['uint32']();break;case 0xa:_0x5b06d2['isEmptyCurrent']=_0x7f65bc['bool']();break;default:_0x7f65bc['skipType'](0x7&tag);}}return _0x5b06d2;},RevisionHistoryGetRevisionResponse['decodeDelimited']=function(_0xe78e7){return _0xe78e7 instanceof $Reader||(_0xe78e7=new $Reader(_0xe78e7)),this['decode'](_0xe78e7,_0xe78e7['uint32']());},RevisionHistoryGetRevisionResponse['verify']=function(_0x4750b2){return'object'!=typeof _0x4750b2||null===_0x4750b2?'object\x20expected':null!=_0x4750b2['revisionId']&&_0x4750b2['hasOwnProperty']('revisionId')&&!$util['isString'](_0x4750b2['revisionId'])?'revisionId:\x20string\x20expected':null!=_0x4750b2['name']&&_0x4750b2['hasOwnProperty']('name')&&!$util['isString'](_0x4750b2['name'])?'name:\x20string\x20expected':null!=_0x4750b2['creatorId']&&_0x4750b2['hasOwnProperty']('creatorId')&&!$util['isString'](_0x4750b2['creatorId'])?'creatorId:\x20string\x20expected':null!=_0x4750b2['authorsIds']&&_0x4750b2['hasOwnProperty']('authorsIds')&&!$util['isString'](_0x4750b2['authorsIds'])?'authorsIds:\x20string\x20expected':null!=_0x4750b2['diffData']&&_0x4750b2['hasOwnProperty']('diffData')&&!$util['isString'](_0x4750b2['diffData'])?'diffData:\x20string\x20expected':null!=_0x4750b2['createdAt']&&_0x4750b2['hasOwnProperty']('createdAt')&&!$util['isString'](_0x4750b2['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x4750b2['attributes']&&_0x4750b2['hasOwnProperty']('attributes')&&!$util['isString'](_0x4750b2['attributes'])?'attributes:\x20string\x20expected':null!=_0x4750b2['toVersion']&&_0x4750b2['hasOwnProperty']('toVersion')&&!$util['isInteger'](_0x4750b2['toVersion'])?'toVersion:\x20integer\x20expected':null!=_0x4750b2['fromVersion']&&_0x4750b2['hasOwnProperty']('fromVersion')&&!$util['isInteger'](_0x4750b2['fromVersion'])?'fromVersion:\x20integer\x20expected':null!=_0x4750b2['isEmptyCurrent']&&_0x4750b2['hasOwnProperty']('isEmptyCurrent')&&'boolean'!=typeof _0x4750b2['isEmptyCurrent']?'isEmptyCurrent:\x20boolean\x20expected':null;},RevisionHistoryGetRevisionResponse['fromObject']=function(object){if(object instanceof $root['RevisionHistoryGetRevisionResponse'])return object;let _0x205828=new $root['RevisionHistoryGetRevisionResponse']();return null!=object['revisionId']&&(_0x205828['revisionId']=String(object['revisionId'])),null!=object['name']&&(_0x205828['name']=String(object['name'])),null!=object['creatorId']&&(_0x205828['creatorId']=String(object['creatorId'])),null!=object['authorsIds']&&(_0x205828['authorsIds']=String(object['authorsIds'])),null!=object['diffData']&&(_0x205828['diffData']=String(object['diffData'])),null!=object['createdAt']&&(_0x205828['createdAt']=String(object['createdAt'])),null!=object['attributes']&&(_0x205828['attributes']=String(object['attributes'])),null!=object['toVersion']&&(_0x205828['toVersion']=object['toVersion']>>>0x0),null!=object['fromVersion']&&(_0x205828['fromVersion']=object['fromVersion']>>>0x0),null!=object['isEmptyCurrent']&&(_0x205828['isEmptyCurrent']=Boolean(object['isEmptyCurrent'])),_0x205828;},RevisionHistoryGetRevisionResponse['toObject']=function(_0x134201,options){options||(options={});let object={};return options['defaults']&&(object['revisionId']='',object['name']='',object['creatorId']='',object['authorsIds']='',object['diffData']='',object['createdAt']='',object['attributes']='',object['toVersion']=0x0,object['fromVersion']=0x0,object['isEmptyCurrent']=!0x1),null!=_0x134201['revisionId']&&_0x134201['hasOwnProperty']('revisionId')&&(object['revisionId']=_0x134201['revisionId']),null!=_0x134201['name']&&_0x134201['hasOwnProperty']('name')&&(object['name']=_0x134201['name']),null!=_0x134201['creatorId']&&_0x134201['hasOwnProperty']('creatorId')&&(object['creatorId']=_0x134201['creatorId']),null!=_0x134201['authorsIds']&&_0x134201['hasOwnProperty']('authorsIds')&&(object['authorsIds']=_0x134201['authorsIds']),null!=_0x134201['diffData']&&_0x134201['hasOwnProperty']('diffData')&&(object['diffData']=_0x134201['diffData']),null!=_0x134201['createdAt']&&_0x134201['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x134201['createdAt']),null!=_0x134201['attributes']&&_0x134201['hasOwnProperty']('attributes')&&(object['attributes']=_0x134201['attributes']),null!=_0x134201['toVersion']&&_0x134201['hasOwnProperty']('toVersion')&&(object['toVersion']=_0x134201['toVersion']),null!=_0x134201['fromVersion']&&_0x134201['hasOwnProperty']('fromVersion')&&(object['fromVersion']=_0x134201['fromVersion']),null!=_0x134201['isEmptyCurrent']&&_0x134201['hasOwnProperty']('isEmptyCurrent')&&(object['isEmptyCurrent']=_0x134201['isEmptyCurrent']),object;},RevisionHistoryGetRevisionResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryGetRevisionResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryGetRevisionResponse';},RevisionHistoryGetRevisionResponse;})()),$root['RevisionHistoryUpdateRevisionsResponse']=((()=>{function RevisionHistoryUpdateRevisionsResponse(properties){if(properties){for(let _0x7df632=Object['keys'](properties),_0x3df1b5=0x0;_0x3df1b5<_0x7df632['length'];++_0x3df1b5)null!=properties[_0x7df632[_0x3df1b5]]&&(this[_0x7df632[_0x3df1b5]]=properties[_0x7df632[_0x3df1b5]]);}}return RevisionHistoryUpdateRevisionsResponse['prototype']['requestId']=0x0,RevisionHistoryUpdateRevisionsResponse['create']=function(properties){return new RevisionHistoryUpdateRevisionsResponse(properties);},RevisionHistoryUpdateRevisionsResponse['encode']=function(_0x4bfc0f,writer){return writer||(writer=$Writer['create']()),null!=_0x4bfc0f['requestId']&&Object['hasOwnProperty']['call'](_0x4bfc0f,'requestId')&&writer['uint32'](0x8)['uint32'](_0x4bfc0f['requestId']),writer;},RevisionHistoryUpdateRevisionsResponse['encodeDelimited']=function(_0x17ed87,writer){return this['encode'](_0x17ed87,writer)['ldelim']();},RevisionHistoryUpdateRevisionsResponse['decode']=function(_0x507274,length){_0x507274 instanceof $Reader||(_0x507274=$Reader['create'](_0x507274));let _0x2c85fa=void 0x0===length?_0x507274['len']:_0x507274['pos']+length,_0x123544=new $root['RevisionHistoryUpdateRevisionsResponse']();for(;_0x507274['pos']<_0x2c85fa;){let tag=_0x507274['uint32']();if(tag>>>0x3==0x1)_0x123544['requestId']=_0x507274['uint32']();else _0x507274['skipType'](0x7&tag);}return _0x123544;},RevisionHistoryUpdateRevisionsResponse['decodeDelimited']=function(_0x42d16f){return _0x42d16f instanceof $Reader||(_0x42d16f=new $Reader(_0x42d16f)),this['decode'](_0x42d16f,_0x42d16f['uint32']());},RevisionHistoryUpdateRevisionsResponse['verify']=function(_0x10dd2a){return'object'!=typeof _0x10dd2a||null===_0x10dd2a?'object\x20expected':null!=_0x10dd2a['requestId']&&_0x10dd2a['hasOwnProperty']('requestId')&&!$util['isInteger'](_0x10dd2a['requestId'])?'requestId:\x20integer\x20expected':null;},RevisionHistoryUpdateRevisionsResponse['fromObject']=function(object){if(object instanceof $root['RevisionHistoryUpdateRevisionsResponse'])return object;let _0x25eb5b=new $root['RevisionHistoryUpdateRevisionsResponse']();return null!=object['requestId']&&(_0x25eb5b['requestId']=object['requestId']>>>0x0),_0x25eb5b;},RevisionHistoryUpdateRevisionsResponse['toObject']=function(_0x4958aa,options){options||(options={});let object={};return options['defaults']&&(object['requestId']=0x0),null!=_0x4958aa['requestId']&&_0x4958aa['hasOwnProperty']('requestId')&&(object['requestId']=_0x4958aa['requestId']),object;},RevisionHistoryUpdateRevisionsResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryUpdateRevisionsResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryUpdateRevisionsResponse';},RevisionHistoryUpdateRevisionsResponse;})()),$root['SessionsSocketDescriptor']=((()=>{function SessionsSocketDescriptor(properties){if(this['permissions']=[],properties){for(let _0x2f2f87=Object['keys'](properties),_0x170f29=0x0;_0x170f29<_0x2f2f87['length'];++_0x170f29)null!=properties[_0x2f2f87[_0x170f29]]&&(this[_0x2f2f87[_0x170f29]]=properties[_0x2f2f87[_0x170f29]]);}}return SessionsSocketDescriptor['prototype']['session']='',SessionsSocketDescriptor['prototype']['user']='',SessionsSocketDescriptor['prototype']['role']='',SessionsSocketDescriptor['prototype']['permissions']=$util['emptyArray'],SessionsSocketDescriptor['create']=function(properties){return new SessionsSocketDescriptor(properties);},SessionsSocketDescriptor['encode']=function(_0x5c848c,writer){if(writer||(writer=$Writer['create']()),null!=_0x5c848c['session']&&Object['hasOwnProperty']['call'](_0x5c848c,'session')&&writer['uint32'](0xa)['string'](_0x5c848c['session']),null!=_0x5c848c['user']&&Object['hasOwnProperty']['call'](_0x5c848c,'user')&&writer['uint32'](0x12)['string'](_0x5c848c['user']),null!=_0x5c848c['role']&&Object['hasOwnProperty']['call'](_0x5c848c,'role')&&writer['uint32'](0x1a)['string'](_0x5c848c['role']),null!=_0x5c848c['permissions']&&_0x5c848c['permissions']['length']){for(let _0x4cc279=0x0;_0x4cc279<_0x5c848c['permissions']['length'];++_0x4cc279)writer['uint32'](0x22)['string'](_0x5c848c['permissions'][_0x4cc279]);}return writer;},SessionsSocketDescriptor['encodeDelimited']=function(_0x4e8b8f,writer){return this['encode'](_0x4e8b8f,writer)['ldelim']();},SessionsSocketDescriptor['decode']=function(_0x5a62c2,length){_0x5a62c2 instanceof $Reader||(_0x5a62c2=$Reader['create'](_0x5a62c2));let _0x1aa124=void 0x0===length?_0x5a62c2['len']:_0x5a62c2['pos']+length,_0x3938ae=new $root['SessionsSocketDescriptor']();for(;_0x5a62c2['pos']<_0x1aa124;){let tag=_0x5a62c2['uint32']();switch(tag>>>0x3){case 0x1:_0x3938ae['session']=_0x5a62c2['string']();break;case 0x2:_0x3938ae['user']=_0x5a62c2['string']();break;case 0x3:_0x3938ae['role']=_0x5a62c2['string']();break;case 0x4:_0x3938ae['permissions']&&_0x3938ae['permissions']['length']||(_0x3938ae['permissions']=[]),_0x3938ae['permissions']['push'](_0x5a62c2['string']());break;default:_0x5a62c2['skipType'](0x7&tag);}}return _0x3938ae;},SessionsSocketDescriptor['decodeDelimited']=function(_0xe0110){return _0xe0110 instanceof $Reader||(_0xe0110=new $Reader(_0xe0110)),this['decode'](_0xe0110,_0xe0110['uint32']());},SessionsSocketDescriptor['verify']=function(_0x5c83fc){if('object'!=typeof _0x5c83fc||null===_0x5c83fc)return'object\x20expected';if(null!=_0x5c83fc['session']&&_0x5c83fc['hasOwnProperty']('session')&&!$util['isString'](_0x5c83fc['session']))return'session:\x20string\x20expected';if(null!=_0x5c83fc['user']&&_0x5c83fc['hasOwnProperty']('user')&&!$util['isString'](_0x5c83fc['user']))return'user:\x20string\x20expected';if(null!=_0x5c83fc['role']&&_0x5c83fc['hasOwnProperty']('role')&&!$util['isString'](_0x5c83fc['role']))return'role:\x20string\x20expected';if(null!=_0x5c83fc['permissions']&&_0x5c83fc['hasOwnProperty']('permissions')){if(!Array['isArray'](_0x5c83fc['permissions']))return'permissions:\x20array\x20expected';for(let _0x41fa31=0x0;_0x41fa31<_0x5c83fc['permissions']['length'];++_0x41fa31)if(!$util['isString'](_0x5c83fc['permissions'][_0x41fa31]))return'permissions:\x20string[]\x20expected';}return null;},SessionsSocketDescriptor['fromObject']=function(object){if(object instanceof $root['SessionsSocketDescriptor'])return object;let _0x1cf227=new $root['SessionsSocketDescriptor']();if(null!=object['session']&&(_0x1cf227['session']=String(object['session'])),null!=object['user']&&(_0x1cf227['user']=String(object['user'])),null!=object['role']&&(_0x1cf227['role']=String(object['role'])),object['permissions']){if(!Array['isArray'](object['permissions']))throw TypeError('.SessionsSocketDescriptor.permissions:\x20array\x20expected');_0x1cf227['permissions']=[];for(let _0xffce7c=0x0;_0xffce7c<object['permissions']['length'];++_0xffce7c)_0x1cf227['permissions'][_0xffce7c]=String(object['permissions'][_0xffce7c]);}return _0x1cf227;},SessionsSocketDescriptor['toObject']=function(_0x1c2298,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['permissions']=[]),options['defaults']&&(object['session']='',object['user']='',object['role']=''),null!=_0x1c2298['session']&&_0x1c2298['hasOwnProperty']('session')&&(object['session']=_0x1c2298['session']),null!=_0x1c2298['user']&&_0x1c2298['hasOwnProperty']('user')&&(object['user']=_0x1c2298['user']),null!=_0x1c2298['role']&&_0x1c2298['hasOwnProperty']('role')&&(object['role']=_0x1c2298['role']),_0x1c2298['permissions']&&_0x1c2298['permissions']['length']){object['permissions']=[];for(let _0x5d2ede=0x0;_0x5d2ede<_0x1c2298['permissions']['length'];++_0x5d2ede)object['permissions'][_0x5d2ede]=_0x1c2298['permissions'][_0x5d2ede];}return object;},SessionsSocketDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SessionsSocketDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SessionsSocketDescriptor';},SessionsSocketDescriptor;})()),$root['SessionsConnectMessage']=((()=>{function SessionsConnectMessage(properties){if(properties){for(let _0x517252=Object['keys'](properties),_0x2f9c01=0x0;_0x2f9c01<_0x517252['length'];++_0x2f9c01)null!=properties[_0x517252[_0x2f9c01]]&&(this[_0x517252[_0x2f9c01]]=properties[_0x517252[_0x2f9c01]]);}}return SessionsConnectMessage['prototype']['id']='',SessionsConnectMessage['prototype']['sessionType']=0x0,SessionsConnectMessage['create']=function(properties){return new SessionsConnectMessage(properties);},SessionsConnectMessage['encode']=function(_0x342a39,writer){return writer||(writer=$Writer['create']()),null!=_0x342a39['id']&&Object['hasOwnProperty']['call'](_0x342a39,'id')&&writer['uint32'](0xa)['string'](_0x342a39['id']),null!=_0x342a39['sessionType']&&Object['hasOwnProperty']['call'](_0x342a39,'sessionType')&&writer['uint32'](0x10)['uint32'](_0x342a39['sessionType']),writer;},SessionsConnectMessage['encodeDelimited']=function(_0x4a054c,writer){return this['encode'](_0x4a054c,writer)['ldelim']();},SessionsConnectMessage['decode']=function(_0xfa3957,length){_0xfa3957 instanceof $Reader||(_0xfa3957=$Reader['create'](_0xfa3957));let _0x1d082b=void 0x0===length?_0xfa3957['len']:_0xfa3957['pos']+length,_0x221eef=new $root['SessionsConnectMessage']();for(;_0xfa3957['pos']<_0x1d082b;){let tag=_0xfa3957['uint32']();switch(tag>>>0x3){case 0x1:_0x221eef['id']=_0xfa3957['string']();break;case 0x2:_0x221eef['sessionType']=_0xfa3957['uint32']();break;default:_0xfa3957['skipType'](0x7&tag);}}return _0x221eef;},SessionsConnectMessage['decodeDelimited']=function(_0x37e795){return _0x37e795 instanceof $Reader||(_0x37e795=new $Reader(_0x37e795)),this['decode'](_0x37e795,_0x37e795['uint32']());},SessionsConnectMessage['verify']=function(_0x534f64){return'object'!=typeof _0x534f64||null===_0x534f64?'object\x20expected':null!=_0x534f64['id']&&_0x534f64['hasOwnProperty']('id')&&!$util['isString'](_0x534f64['id'])?'id:\x20string\x20expected':null!=_0x534f64['sessionType']&&_0x534f64['hasOwnProperty']('sessionType')&&!$util['isInteger'](_0x534f64['sessionType'])?'sessionType:\x20integer\x20expected':null;},SessionsConnectMessage['fromObject']=function(object){if(object instanceof $root['SessionsConnectMessage'])return object;let _0x386e7a=new $root['SessionsConnectMessage']();return null!=object['id']&&(_0x386e7a['id']=String(object['id'])),null!=object['sessionType']&&(_0x386e7a['sessionType']=object['sessionType']>>>0x0),_0x386e7a;},SessionsConnectMessage['toObject']=function(_0x1e8196,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['sessionType']=0x0),null!=_0x1e8196['id']&&_0x1e8196['hasOwnProperty']('id')&&(object['id']=_0x1e8196['id']),null!=_0x1e8196['sessionType']&&_0x1e8196['hasOwnProperty']('sessionType')&&(object['sessionType']=_0x1e8196['sessionType']),object;},SessionsConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SessionsConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SessionsConnectMessage';},SessionsConnectMessage;})()),$root['SocketConnectMessage']=((()=>{function SocketConnectMessage(properties){if(this['permissions']=[],properties){for(let _0x356d81=Object['keys'](properties),_0x3e337e=0x0;_0x3e337e<_0x356d81['length'];++_0x3e337e)null!=properties[_0x356d81[_0x3e337e]]&&(this[_0x356d81[_0x3e337e]]=properties[_0x356d81[_0x3e337e]]);}}return SocketConnectMessage['prototype']['id']='',SocketConnectMessage['prototype']['userId']='',SocketConnectMessage['prototype']['role']='',SocketConnectMessage['prototype']['permissions']=$util['emptyArray'],SocketConnectMessage['create']=function(properties){return new SocketConnectMessage(properties);},SocketConnectMessage['encode']=function(_0x274a10,writer){if(writer||(writer=$Writer['create']()),null!=_0x274a10['id']&&Object['hasOwnProperty']['call'](_0x274a10,'id')&&writer['uint32'](0xa)['string'](_0x274a10['id']),null!=_0x274a10['userId']&&Object['hasOwnProperty']['call'](_0x274a10,'userId')&&writer['uint32'](0x12)['string'](_0x274a10['userId']),null!=_0x274a10['role']&&Object['hasOwnProperty']['call'](_0x274a10,'role')&&writer['uint32'](0x1a)['string'](_0x274a10['role']),null!=_0x274a10['permissions']&&_0x274a10['permissions']['length']){for(let _0x2bdee4=0x0;_0x2bdee4<_0x274a10['permissions']['length'];++_0x2bdee4)writer['uint32'](0x22)['string'](_0x274a10['permissions'][_0x2bdee4]);}return writer;},SocketConnectMessage['encodeDelimited']=function(_0x3240a3,writer){return this['encode'](_0x3240a3,writer)['ldelim']();},SocketConnectMessage['decode']=function(_0x2bb0d7,length){_0x2bb0d7 instanceof $Reader||(_0x2bb0d7=$Reader['create'](_0x2bb0d7));let _0x3492f6=void 0x0===length?_0x2bb0d7['len']:_0x2bb0d7['pos']+length,_0x44a8f2=new $root['SocketConnectMessage']();for(;_0x2bb0d7['pos']<_0x3492f6;){let tag=_0x2bb0d7['uint32']();switch(tag>>>0x3){case 0x1:_0x44a8f2['id']=_0x2bb0d7['string']();break;case 0x2:_0x44a8f2['userId']=_0x2bb0d7['string']();break;case 0x3:_0x44a8f2['role']=_0x2bb0d7['string']();break;case 0x4:_0x44a8f2['permissions']&&_0x44a8f2['permissions']['length']||(_0x44a8f2['permissions']=[]),_0x44a8f2['permissions']['push'](_0x2bb0d7['string']());break;default:_0x2bb0d7['skipType'](0x7&tag);}}return _0x44a8f2;},SocketConnectMessage['decodeDelimited']=function(_0x1d78c3){return _0x1d78c3 instanceof $Reader||(_0x1d78c3=new $Reader(_0x1d78c3)),this['decode'](_0x1d78c3,_0x1d78c3['uint32']());},SocketConnectMessage['verify']=function(_0x1f55dc){if('object'!=typeof _0x1f55dc||null===_0x1f55dc)return'object\x20expected';if(null!=_0x1f55dc['id']&&_0x1f55dc['hasOwnProperty']('id')&&!$util['isString'](_0x1f55dc['id']))return'id:\x20string\x20expected';if(null!=_0x1f55dc['userId']&&_0x1f55dc['hasOwnProperty']('userId')&&!$util['isString'](_0x1f55dc['userId']))return'userId:\x20string\x20expected';if(null!=_0x1f55dc['role']&&_0x1f55dc['hasOwnProperty']('role')&&!$util['isString'](_0x1f55dc['role']))return'role:\x20string\x20expected';if(null!=_0x1f55dc['permissions']&&_0x1f55dc['hasOwnProperty']('permissions')){if(!Array['isArray'](_0x1f55dc['permissions']))return'permissions:\x20array\x20expected';for(let _0x3aae51=0x0;_0x3aae51<_0x1f55dc['permissions']['length'];++_0x3aae51)if(!$util['isString'](_0x1f55dc['permissions'][_0x3aae51]))return'permissions:\x20string[]\x20expected';}return null;},SocketConnectMessage['fromObject']=function(object){if(object instanceof $root['SocketConnectMessage'])return object;let _0x42451a=new $root['SocketConnectMessage']();if(null!=object['id']&&(_0x42451a['id']=String(object['id'])),null!=object['userId']&&(_0x42451a['userId']=String(object['userId'])),null!=object['role']&&(_0x42451a['role']=String(object['role'])),object['permissions']){if(!Array['isArray'](object['permissions']))throw TypeError('.SocketConnectMessage.permissions:\x20array\x20expected');_0x42451a['permissions']=[];for(let _0x5c1aef=0x0;_0x5c1aef<object['permissions']['length'];++_0x5c1aef)_0x42451a['permissions'][_0x5c1aef]=String(object['permissions'][_0x5c1aef]);}return _0x42451a;},SocketConnectMessage['toObject']=function(_0x5a9b1a,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['permissions']=[]),options['defaults']&&(object['id']='',object['userId']='',object['role']=''),null!=_0x5a9b1a['id']&&_0x5a9b1a['hasOwnProperty']('id')&&(object['id']=_0x5a9b1a['id']),null!=_0x5a9b1a['userId']&&_0x5a9b1a['hasOwnProperty']('userId')&&(object['userId']=_0x5a9b1a['userId']),null!=_0x5a9b1a['role']&&_0x5a9b1a['hasOwnProperty']('role')&&(object['role']=_0x5a9b1a['role']),_0x5a9b1a['permissions']&&_0x5a9b1a['permissions']['length']){object['permissions']=[];for(let _0x215708=0x0;_0x215708<_0x5a9b1a['permissions']['length'];++_0x215708)object['permissions'][_0x215708]=_0x5a9b1a['permissions'][_0x215708];}return object;},SocketConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SocketConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SocketConnectMessage';},SocketConnectMessage;})()),$root['SocketDisconnectMessage']=((()=>{function SocketDisconnectMessage(properties){if(properties){for(let _0x3fd45e=Object['keys'](properties),_0x5940d8=0x0;_0x5940d8<_0x3fd45e['length'];++_0x5940d8)null!=properties[_0x3fd45e[_0x5940d8]]&&(this[_0x3fd45e[_0x5940d8]]=properties[_0x3fd45e[_0x5940d8]]);}}return SocketDisconnectMessage['prototype']['id']='',SocketDisconnectMessage['create']=function(properties){return new SocketDisconnectMessage(properties);},SocketDisconnectMessage['encode']=function(_0x58ccef,writer){return writer||(writer=$Writer['create']()),null!=_0x58ccef['id']&&Object['hasOwnProperty']['call'](_0x58ccef,'id')&&writer['uint32'](0xa)['string'](_0x58ccef['id']),writer;},SocketDisconnectMessage['encodeDelimited']=function(_0x1073be,writer){return this['encode'](_0x1073be,writer)['ldelim']();},SocketDisconnectMessage['decode']=function(_0xedb8bd,length){_0xedb8bd instanceof $Reader||(_0xedb8bd=$Reader['create'](_0xedb8bd));let _0x26b82a=void 0x0===length?_0xedb8bd['len']:_0xedb8bd['pos']+length,_0xcc2177=new $root['SocketDisconnectMessage']();for(;_0xedb8bd['pos']<_0x26b82a;){let tag=_0xedb8bd['uint32']();if(tag>>>0x3==0x1)_0xcc2177['id']=_0xedb8bd['string']();else _0xedb8bd['skipType'](0x7&tag);}return _0xcc2177;},SocketDisconnectMessage['decodeDelimited']=function(_0x3c49de){return _0x3c49de instanceof $Reader||(_0x3c49de=new $Reader(_0x3c49de)),this['decode'](_0x3c49de,_0x3c49de['uint32']());},SocketDisconnectMessage['verify']=function(_0x1438af){return'object'!=typeof _0x1438af||null===_0x1438af?'object\x20expected':null!=_0x1438af['id']&&_0x1438af['hasOwnProperty']('id')&&!$util['isString'](_0x1438af['id'])?'id:\x20string\x20expected':null;},SocketDisconnectMessage['fromObject']=function(object){if(object instanceof $root['SocketDisconnectMessage'])return object;let _0x279058=new $root['SocketDisconnectMessage']();return null!=object['id']&&(_0x279058['id']=String(object['id'])),_0x279058;},SocketDisconnectMessage['toObject']=function(_0x2f8e07,options){options||(options={});let object={};return options['defaults']&&(object['id']=''),null!=_0x2f8e07['id']&&_0x2f8e07['hasOwnProperty']('id')&&(object['id']=_0x2f8e07['id']),object;},SocketDisconnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SocketDisconnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SocketDisconnectMessage';},SocketDisconnectMessage;})()),$root['SessionsConnectResponse']=((()=>{function SessionsConnectResponse(properties){if(this['sockets']=[],properties){for(let _0x5d99be=Object['keys'](properties),_0x412ca3=0x0;_0x412ca3<_0x5d99be['length'];++_0x412ca3)null!=properties[_0x5d99be[_0x412ca3]]&&(this[_0x5d99be[_0x412ca3]]=properties[_0x5d99be[_0x412ca3]]);}}return SessionsConnectResponse['prototype']['channel']='',SessionsConnectResponse['prototype']['sockets']=$util['emptyArray'],SessionsConnectResponse['create']=function(properties){return new SessionsConnectResponse(properties);},SessionsConnectResponse['encode']=function(_0x57ae01,writer){if(writer||(writer=$Writer['create']()),null!=_0x57ae01['channel']&&Object['hasOwnProperty']['call'](_0x57ae01,'channel')&&writer['uint32'](0xa)['string'](_0x57ae01['channel']),null!=_0x57ae01['sockets']&&_0x57ae01['sockets']['length']){for(let _0x2ae091=0x0;_0x2ae091<_0x57ae01['sockets']['length'];++_0x2ae091)$root['SessionsSocketDescriptor']['encode'](_0x57ae01['sockets'][_0x2ae091],writer['uint32'](0x12)['fork']())['ldelim']();}return writer;},SessionsConnectResponse['encodeDelimited']=function(_0x5f5079,writer){return this['encode'](_0x5f5079,writer)['ldelim']();},SessionsConnectResponse['decode']=function(_0x46d3a7,length){_0x46d3a7 instanceof $Reader||(_0x46d3a7=$Reader['create'](_0x46d3a7));let _0x217d96=void 0x0===length?_0x46d3a7['len']:_0x46d3a7['pos']+length,_0x3d4b91=new $root['SessionsConnectResponse']();for(;_0x46d3a7['pos']<_0x217d96;){let tag=_0x46d3a7['uint32']();switch(tag>>>0x3){case 0x1:_0x3d4b91['channel']=_0x46d3a7['string']();break;case 0x2:_0x3d4b91['sockets']&&_0x3d4b91['sockets']['length']||(_0x3d4b91['sockets']=[]),_0x3d4b91['sockets']['push']($root['SessionsSocketDescriptor']['decode'](_0x46d3a7,_0x46d3a7['uint32']()));break;default:_0x46d3a7['skipType'](0x7&tag);}}return _0x3d4b91;},SessionsConnectResponse['decodeDelimited']=function(_0x582e4c){return _0x582e4c instanceof $Reader||(_0x582e4c=new $Reader(_0x582e4c)),this['decode'](_0x582e4c,_0x582e4c['uint32']());},SessionsConnectResponse['verify']=function(_0x2b0a85){if('object'!=typeof _0x2b0a85||null===_0x2b0a85)return'object\x20expected';if(null!=_0x2b0a85['channel']&&_0x2b0a85['hasOwnProperty']('channel')&&!$util['isString'](_0x2b0a85['channel']))return'channel:\x20string\x20expected';if(null!=_0x2b0a85['sockets']&&_0x2b0a85['hasOwnProperty']('sockets')){if(!Array['isArray'](_0x2b0a85['sockets']))return'sockets:\x20array\x20expected';for(let _0xdcab94=0x0;_0xdcab94<_0x2b0a85['sockets']['length'];++_0xdcab94){let _0x5f803=$root['SessionsSocketDescriptor']['verify'](_0x2b0a85['sockets'][_0xdcab94]);if(_0x5f803)return'sockets.'+_0x5f803;}}return null;},SessionsConnectResponse['fromObject']=function(object){if(object instanceof $root['SessionsConnectResponse'])return object;let _0x334b4b=new $root['SessionsConnectResponse']();if(null!=object['channel']&&(_0x334b4b['channel']=String(object['channel'])),object['sockets']){if(!Array['isArray'](object['sockets']))throw TypeError('.SessionsConnectResponse.sockets:\x20array\x20expected');_0x334b4b['sockets']=[];for(let _0x2e6591=0x0;_0x2e6591<object['sockets']['length'];++_0x2e6591){if('object'!=typeof object['sockets'][_0x2e6591])throw TypeError('.SessionsConnectResponse.sockets:\x20object\x20expected');_0x334b4b['sockets'][_0x2e6591]=$root['SessionsSocketDescriptor']['fromObject'](object['sockets'][_0x2e6591]);}}return _0x334b4b;},SessionsConnectResponse['toObject']=function(_0x4d8d64,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['sockets']=[]),options['defaults']&&(object['channel']=''),null!=_0x4d8d64['channel']&&_0x4d8d64['hasOwnProperty']('channel')&&(object['channel']=_0x4d8d64['channel']),_0x4d8d64['sockets']&&_0x4d8d64['sockets']['length']){object['sockets']=[];for(let _0x111050=0x0;_0x111050<_0x4d8d64['sockets']['length'];++_0x111050)object['sockets'][_0x111050]=$root['SessionsSocketDescriptor']['toObject'](_0x4d8d64['sockets'][_0x111050],options);}return object;},SessionsConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SessionsConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SessionsConnectResponse';},SessionsConnectResponse;})()),$root['SuggestionDescriptor']=((()=>{function SuggestionDescriptor(properties){if(properties){for(let _0x21b369=Object['keys'](properties),_0x1df749=0x0;_0x1df749<_0x21b369['length'];++_0x1df749)null!=properties[_0x21b369[_0x1df749]]&&(this[_0x21b369[_0x1df749]]=properties[_0x21b369[_0x1df749]]);}}return SuggestionDescriptor['prototype']['id']='',SuggestionDescriptor['prototype']['authorId']='',SuggestionDescriptor['prototype']['type']='',SuggestionDescriptor['prototype']['createdAt']='',SuggestionDescriptor['prototype']['data']='',SuggestionDescriptor['prototype']['hasComments']=!0x1,SuggestionDescriptor['prototype']['state']='',SuggestionDescriptor['prototype']['attributes']='',SuggestionDescriptor['create']=function(properties){return new SuggestionDescriptor(properties);},SuggestionDescriptor['encode']=function(_0x276632,writer){return writer||(writer=$Writer['create']()),null!=_0x276632['id']&&Object['hasOwnProperty']['call'](_0x276632,'id')&&writer['uint32'](0xa)['string'](_0x276632['id']),null!=_0x276632['authorId']&&Object['hasOwnProperty']['call'](_0x276632,'authorId')&&writer['uint32'](0x12)['string'](_0x276632['authorId']),null!=_0x276632['type']&&Object['hasOwnProperty']['call'](_0x276632,'type')&&writer['uint32'](0x1a)['string'](_0x276632['type']),null!=_0x276632['createdAt']&&Object['hasOwnProperty']['call'](_0x276632,'createdAt')&&writer['uint32'](0x22)['string'](_0x276632['createdAt']),null!=_0x276632['data']&&Object['hasOwnProperty']['call'](_0x276632,'data')&&writer['uint32'](0x2a)['string'](_0x276632['data']),null!=_0x276632['hasComments']&&Object['hasOwnProperty']['call'](_0x276632,'hasComments')&&writer['uint32'](0x30)['bool'](_0x276632['hasComments']),null!=_0x276632['state']&&Object['hasOwnProperty']['call'](_0x276632,'state')&&writer['uint32'](0x3a)['string'](_0x276632['state']),null!=_0x276632['attributes']&&Object['hasOwnProperty']['call'](_0x276632,'attributes')&&writer['uint32'](0x42)['string'](_0x276632['attributes']),writer;},SuggestionDescriptor['encodeDelimited']=function(_0x24a851,writer){return this['encode'](_0x24a851,writer)['ldelim']();},SuggestionDescriptor['decode']=function(_0x1e9755,length){_0x1e9755 instanceof $Reader||(_0x1e9755=$Reader['create'](_0x1e9755));let _0x8a96d7=void 0x0===length?_0x1e9755['len']:_0x1e9755['pos']+length,_0x350d5=new $root['SuggestionDescriptor']();for(;_0x1e9755['pos']<_0x8a96d7;){let tag=_0x1e9755['uint32']();switch(tag>>>0x3){case 0x1:_0x350d5['id']=_0x1e9755['string']();break;case 0x2:_0x350d5['authorId']=_0x1e9755['string']();break;case 0x3:_0x350d5['type']=_0x1e9755['string']();break;case 0x4:_0x350d5['createdAt']=_0x1e9755['string']();break;case 0x5:_0x350d5['data']=_0x1e9755['string']();break;case 0x6:_0x350d5['hasComments']=_0x1e9755['bool']();break;case 0x7:_0x350d5['state']=_0x1e9755['string']();break;case 0x8:_0x350d5['attributes']=_0x1e9755['string']();break;default:_0x1e9755['skipType'](0x7&tag);}}return _0x350d5;},SuggestionDescriptor['decodeDelimited']=function(_0x4f3ce1){return _0x4f3ce1 instanceof $Reader||(_0x4f3ce1=new $Reader(_0x4f3ce1)),this['decode'](_0x4f3ce1,_0x4f3ce1['uint32']());},SuggestionDescriptor['verify']=function(_0x3d9b24){return'object'!=typeof _0x3d9b24||null===_0x3d9b24?'object\x20expected':null!=_0x3d9b24['id']&&_0x3d9b24['hasOwnProperty']('id')&&!$util['isString'](_0x3d9b24['id'])?'id:\x20string\x20expected':null!=_0x3d9b24['authorId']&&_0x3d9b24['hasOwnProperty']('authorId')&&!$util['isString'](_0x3d9b24['authorId'])?'authorId:\x20string\x20expected':null!=_0x3d9b24['type']&&_0x3d9b24['hasOwnProperty']('type')&&!$util['isString'](_0x3d9b24['type'])?'type:\x20string\x20expected':null!=_0x3d9b24['createdAt']&&_0x3d9b24['hasOwnProperty']('createdAt')&&!$util['isString'](_0x3d9b24['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x3d9b24['data']&&_0x3d9b24['hasOwnProperty']('data')&&!$util['isString'](_0x3d9b24['data'])?'data:\x20string\x20expected':null!=_0x3d9b24['hasComments']&&_0x3d9b24['hasOwnProperty']('hasComments')&&'boolean'!=typeof _0x3d9b24['hasComments']?'hasComments:\x20boolean\x20expected':null!=_0x3d9b24['state']&&_0x3d9b24['hasOwnProperty']('state')&&!$util['isString'](_0x3d9b24['state'])?'state:\x20string\x20expected':null!=_0x3d9b24['attributes']&&_0x3d9b24['hasOwnProperty']('attributes')&&!$util['isString'](_0x3d9b24['attributes'])?'attributes:\x20string\x20expected':null;},SuggestionDescriptor['fromObject']=function(object){if(object instanceof $root['SuggestionDescriptor'])return object;let _0x47a061=new $root['SuggestionDescriptor']();return null!=object['id']&&(_0x47a061['id']=String(object['id'])),null!=object['authorId']&&(_0x47a061['authorId']=String(object['authorId'])),null!=object['type']&&(_0x47a061['type']=String(object['type'])),null!=object['createdAt']&&(_0x47a061['createdAt']=String(object['createdAt'])),null!=object['data']&&(_0x47a061['data']=String(object['data'])),null!=object['hasComments']&&(_0x47a061['hasComments']=Boolean(object['hasComments'])),null!=object['state']&&(_0x47a061['state']=String(object['state'])),null!=object['attributes']&&(_0x47a061['attributes']=String(object['attributes'])),_0x47a061;},SuggestionDescriptor['toObject']=function(_0x4c3f90,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['authorId']='',object['type']='',object['createdAt']='',object['data']='',object['hasComments']=!0x1,object['state']='',object['attributes']=''),null!=_0x4c3f90['id']&&_0x4c3f90['hasOwnProperty']('id')&&(object['id']=_0x4c3f90['id']),null!=_0x4c3f90['authorId']&&_0x4c3f90['hasOwnProperty']('authorId')&&(object['authorId']=_0x4c3f90['authorId']),null!=_0x4c3f90['type']&&_0x4c3f90['hasOwnProperty']('type')&&(object['type']=_0x4c3f90['type']),null!=_0x4c3f90['createdAt']&&_0x4c3f90['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x4c3f90['createdAt']),null!=_0x4c3f90['data']&&_0x4c3f90['hasOwnProperty']('data')&&(object['data']=_0x4c3f90['data']),null!=_0x4c3f90['hasComments']&&_0x4c3f90['hasOwnProperty']('hasComments')&&(object['hasComments']=_0x4c3f90['hasComments']),null!=_0x4c3f90['state']&&_0x4c3f90['hasOwnProperty']('state')&&(object['state']=_0x4c3f90['state']),null!=_0x4c3f90['attributes']&&_0x4c3f90['hasOwnProperty']('attributes')&&(object['attributes']=_0x4c3f90['attributes']),object;},SuggestionDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SuggestionDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SuggestionDescriptor';},SuggestionDescriptor;})()),$root['TrackChangesAddSuggestionMessage']=((()=>{function TrackChangesAddSuggestionMessage(properties){if(properties){for(let _0x3c3c6d=Object['keys'](properties),_0x2b57bc=0x0;_0x2b57bc<_0x3c3c6d['length'];++_0x2b57bc)null!=properties[_0x3c3c6d[_0x2b57bc]]&&(this[_0x3c3c6d[_0x2b57bc]]=properties[_0x3c3c6d[_0x2b57bc]]);}}return TrackChangesAddSuggestionMessage['prototype']['id']='',TrackChangesAddSuggestionMessage['prototype']['documentId']='',TrackChangesAddSuggestionMessage['prototype']['type']='',TrackChangesAddSuggestionMessage['prototype']['data']='',TrackChangesAddSuggestionMessage['prototype']['originalSuggestionId']='',TrackChangesAddSuggestionMessage['prototype']['attributes']='',TrackChangesAddSuggestionMessage['create']=function(properties){return new TrackChangesAddSuggestionMessage(properties);},TrackChangesAddSuggestionMessage['encode']=function(_0x57c594,writer){return writer||(writer=$Writer['create']()),null!=_0x57c594['id']&&Object['hasOwnProperty']['call'](_0x57c594,'id')&&writer['uint32'](0xa)['string'](_0x57c594['id']),null!=_0x57c594['documentId']&&Object['hasOwnProperty']['call'](_0x57c594,'documentId')&&writer['uint32'](0x12)['string'](_0x57c594['documentId']),null!=_0x57c594['type']&&Object['hasOwnProperty']['call'](_0x57c594,'type')&&writer['uint32'](0x1a)['string'](_0x57c594['type']),null!=_0x57c594['data']&&Object['hasOwnProperty']['call'](_0x57c594,'data')&&writer['uint32'](0x22)['string'](_0x57c594['data']),null!=_0x57c594['originalSuggestionId']&&Object['hasOwnProperty']['call'](_0x57c594,'originalSuggestionId')&&writer['uint32'](0x2a)['string'](_0x57c594['originalSuggestionId']),null!=_0x57c594['attributes']&&Object['hasOwnProperty']['call'](_0x57c594,'attributes')&&writer['uint32'](0x32)['string'](_0x57c594['attributes']),writer;},TrackChangesAddSuggestionMessage['encodeDelimited']=function(_0x1406aa,writer){return this['encode'](_0x1406aa,writer)['ldelim']();},TrackChangesAddSuggestionMessage['decode']=function(_0x319603,length){_0x319603 instanceof $Reader||(_0x319603=$Reader['create'](_0x319603));let _0x2d6f84=void 0x0===length?_0x319603['len']:_0x319603['pos']+length,_0x23aebc=new $root['TrackChangesAddSuggestionMessage']();for(;_0x319603['pos']<_0x2d6f84;){let tag=_0x319603['uint32']();switch(tag>>>0x3){case 0x1:_0x23aebc['id']=_0x319603['string']();break;case 0x2:_0x23aebc['documentId']=_0x319603['string']();break;case 0x3:_0x23aebc['type']=_0x319603['string']();break;case 0x4:_0x23aebc['data']=_0x319603['string']();break;case 0x5:_0x23aebc['originalSuggestionId']=_0x319603['string']();break;case 0x6:_0x23aebc['attributes']=_0x319603['string']();break;default:_0x319603['skipType'](0x7&tag);}}return _0x23aebc;},TrackChangesAddSuggestionMessage['decodeDelimited']=function(_0x35dfc2){return _0x35dfc2 instanceof $Reader||(_0x35dfc2=new $Reader(_0x35dfc2)),this['decode'](_0x35dfc2,_0x35dfc2['uint32']());},TrackChangesAddSuggestionMessage['verify']=function(_0x41111c){return'object'!=typeof _0x41111c||null===_0x41111c?'object\x20expected':null!=_0x41111c['id']&&_0x41111c['hasOwnProperty']('id')&&!$util['isString'](_0x41111c['id'])?'id:\x20string\x20expected':null!=_0x41111c['documentId']&&_0x41111c['hasOwnProperty']('documentId')&&!$util['isString'](_0x41111c['documentId'])?'documentId:\x20string\x20expected':null!=_0x41111c['type']&&_0x41111c['hasOwnProperty']('type')&&!$util['isString'](_0x41111c['type'])?'type:\x20string\x20expected':null!=_0x41111c['data']&&_0x41111c['hasOwnProperty']('data')&&!$util['isString'](_0x41111c['data'])?'data:\x20string\x20expected':null!=_0x41111c['originalSuggestionId']&&_0x41111c['hasOwnProperty']('originalSuggestionId')&&!$util['isString'](_0x41111c['originalSuggestionId'])?'originalSuggestionId:\x20string\x20expected':null!=_0x41111c['attributes']&&_0x41111c['hasOwnProperty']('attributes')&&!$util['isString'](_0x41111c['attributes'])?'attributes:\x20string\x20expected':null;},TrackChangesAddSuggestionMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesAddSuggestionMessage'])return object;let _0x3fab3c=new $root['TrackChangesAddSuggestionMessage']();return null!=object['id']&&(_0x3fab3c['id']=String(object['id'])),null!=object['documentId']&&(_0x3fab3c['documentId']=String(object['documentId'])),null!=object['type']&&(_0x3fab3c['type']=String(object['type'])),null!=object['data']&&(_0x3fab3c['data']=String(object['data'])),null!=object['originalSuggestionId']&&(_0x3fab3c['originalSuggestionId']=String(object['originalSuggestionId'])),null!=object['attributes']&&(_0x3fab3c['attributes']=String(object['attributes'])),_0x3fab3c;},TrackChangesAddSuggestionMessage['toObject']=function(_0x57a997,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['documentId']='',object['type']='',object['data']='',object['originalSuggestionId']='',object['attributes']=''),null!=_0x57a997['id']&&_0x57a997['hasOwnProperty']('id')&&(object['id']=_0x57a997['id']),null!=_0x57a997['documentId']&&_0x57a997['hasOwnProperty']('documentId')&&(object['documentId']=_0x57a997['documentId']),null!=_0x57a997['type']&&_0x57a997['hasOwnProperty']('type')&&(object['type']=_0x57a997['type']),null!=_0x57a997['data']&&_0x57a997['hasOwnProperty']('data')&&(object['data']=_0x57a997['data']),null!=_0x57a997['originalSuggestionId']&&_0x57a997['hasOwnProperty']('originalSuggestionId')&&(object['originalSuggestionId']=_0x57a997['originalSuggestionId']),null!=_0x57a997['attributes']&&_0x57a997['hasOwnProperty']('attributes')&&(object['attributes']=_0x57a997['attributes']),object;},TrackChangesAddSuggestionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesAddSuggestionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesAddSuggestionMessage';},TrackChangesAddSuggestionMessage;})()),$root['TrackChangesBatchUpdateSuggestionsStateMessage']=((()=>{function TrackChangesBatchUpdateSuggestionsStateMessage(properties){if(this['ids']=[],properties){for(let _0x4d0ea5=Object['keys'](properties),_0x4db5db=0x0;_0x4db5db<_0x4d0ea5['length'];++_0x4db5db)null!=properties[_0x4d0ea5[_0x4db5db]]&&(this[_0x4d0ea5[_0x4db5db]]=properties[_0x4d0ea5[_0x4db5db]]);}}return TrackChangesBatchUpdateSuggestionsStateMessage['prototype']['ids']=$util['emptyArray'],TrackChangesBatchUpdateSuggestionsStateMessage['prototype']['documentId']='',TrackChangesBatchUpdateSuggestionsStateMessage['prototype']['state']='',TrackChangesBatchUpdateSuggestionsStateMessage['create']=function(properties){return new TrackChangesBatchUpdateSuggestionsStateMessage(properties);},TrackChangesBatchUpdateSuggestionsStateMessage['encode']=function(_0x49c667,writer){if(writer||(writer=$Writer['create']()),null!=_0x49c667['ids']&&_0x49c667['ids']['length']){for(let _0x13c93c=0x0;_0x13c93c<_0x49c667['ids']['length'];++_0x13c93c)writer['uint32'](0xa)['string'](_0x49c667['ids'][_0x13c93c]);}return null!=_0x49c667['documentId']&&Object['hasOwnProperty']['call'](_0x49c667,'documentId')&&writer['uint32'](0x12)['string'](_0x49c667['documentId']),null!=_0x49c667['state']&&Object['hasOwnProperty']['call'](_0x49c667,'state')&&writer['uint32'](0x1a)['string'](_0x49c667['state']),writer;},TrackChangesBatchUpdateSuggestionsStateMessage['encodeDelimited']=function(_0x3366a,writer){return this['encode'](_0x3366a,writer)['ldelim']();},TrackChangesBatchUpdateSuggestionsStateMessage['decode']=function(_0x24d856,length){_0x24d856 instanceof $Reader||(_0x24d856=$Reader['create'](_0x24d856));let _0x561d8c=void 0x0===length?_0x24d856['len']:_0x24d856['pos']+length,_0x176c62=new $root['TrackChangesBatchUpdateSuggestionsStateMessage']();for(;_0x24d856['pos']<_0x561d8c;){let tag=_0x24d856['uint32']();switch(tag>>>0x3){case 0x1:_0x176c62['ids']&&_0x176c62['ids']['length']||(_0x176c62['ids']=[]),_0x176c62['ids']['push'](_0x24d856['string']());break;case 0x2:_0x176c62['documentId']=_0x24d856['string']();break;case 0x3:_0x176c62['state']=_0x24d856['string']();break;default:_0x24d856['skipType'](0x7&tag);}}return _0x176c62;},TrackChangesBatchUpdateSuggestionsStateMessage['decodeDelimited']=function(_0x22cd5a){return _0x22cd5a instanceof $Reader||(_0x22cd5a=new $Reader(_0x22cd5a)),this['decode'](_0x22cd5a,_0x22cd5a['uint32']());},TrackChangesBatchUpdateSuggestionsStateMessage['verify']=function(_0x18da2e){if('object'!=typeof _0x18da2e||null===_0x18da2e)return'object\x20expected';if(null!=_0x18da2e['ids']&&_0x18da2e['hasOwnProperty']('ids')){if(!Array['isArray'](_0x18da2e['ids']))return'ids:\x20array\x20expected';for(let _0x29978e=0x0;_0x29978e<_0x18da2e['ids']['length'];++_0x29978e)if(!$util['isString'](_0x18da2e['ids'][_0x29978e]))return'ids:\x20string[]\x20expected';}return null!=_0x18da2e['documentId']&&_0x18da2e['hasOwnProperty']('documentId')&&!$util['isString'](_0x18da2e['documentId'])?'documentId:\x20string\x20expected':null!=_0x18da2e['state']&&_0x18da2e['hasOwnProperty']('state')&&!$util['isString'](_0x18da2e['state'])?'state:\x20string\x20expected':null;},TrackChangesBatchUpdateSuggestionsStateMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesBatchUpdateSuggestionsStateMessage'])return object;let _0x20b9db=new $root['TrackChangesBatchUpdateSuggestionsStateMessage']();if(object['ids']){if(!Array['isArray'](object['ids']))throw TypeError('.TrackChangesBatchUpdateSuggestionsStateMessage.ids:\x20array\x20expected');_0x20b9db['ids']=[];for(let _0x112546=0x0;_0x112546<object['ids']['length'];++_0x112546)_0x20b9db['ids'][_0x112546]=String(object['ids'][_0x112546]);}return null!=object['documentId']&&(_0x20b9db['documentId']=String(object['documentId'])),null!=object['state']&&(_0x20b9db['state']=String(object['state'])),_0x20b9db;},TrackChangesBatchUpdateSuggestionsStateMessage['toObject']=function(_0x40f27f,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['ids']=[]),options['defaults']&&(object['documentId']='',object['state']=''),_0x40f27f['ids']&&_0x40f27f['ids']['length']){object['ids']=[];for(let _0x46dec8=0x0;_0x46dec8<_0x40f27f['ids']['length'];++_0x46dec8)object['ids'][_0x46dec8]=_0x40f27f['ids'][_0x46dec8];}return null!=_0x40f27f['documentId']&&_0x40f27f['hasOwnProperty']('documentId')&&(object['documentId']=_0x40f27f['documentId']),null!=_0x40f27f['state']&&_0x40f27f['hasOwnProperty']('state')&&(object['state']=_0x40f27f['state']),object;},TrackChangesBatchUpdateSuggestionsStateMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesBatchUpdateSuggestionsStateMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesBatchUpdateSuggestionsStateMessage';},TrackChangesBatchUpdateSuggestionsStateMessage;})()),$root['TrackChangesConnectMessage']=((()=>{function TrackChangesConnectMessage(properties){if(properties){for(let _0x11e2bb=Object['keys'](properties),_0x2479df=0x0;_0x2479df<_0x11e2bb['length'];++_0x2479df)null!=properties[_0x11e2bb[_0x2479df]]&&(this[_0x11e2bb[_0x2479df]]=properties[_0x11e2bb[_0x2479df]]);}}return TrackChangesConnectMessage['prototype']['documentId']='',TrackChangesConnectMessage['create']=function(properties){return new TrackChangesConnectMessage(properties);},TrackChangesConnectMessage['encode']=function(_0x1ade43,writer){return writer||(writer=$Writer['create']()),null!=_0x1ade43['documentId']&&Object['hasOwnProperty']['call'](_0x1ade43,'documentId')&&writer['uint32'](0xa)['string'](_0x1ade43['documentId']),writer;},TrackChangesConnectMessage['encodeDelimited']=function(_0xaac1d2,writer){return this['encode'](_0xaac1d2,writer)['ldelim']();},TrackChangesConnectMessage['decode']=function(_0x539813,length){_0x539813 instanceof $Reader||(_0x539813=$Reader['create'](_0x539813));let _0x3d8d72=void 0x0===length?_0x539813['len']:_0x539813['pos']+length,_0xf323ba=new $root['TrackChangesConnectMessage']();for(;_0x539813['pos']<_0x3d8d72;){let tag=_0x539813['uint32']();if(tag>>>0x3==0x1)_0xf323ba['documentId']=_0x539813['string']();else _0x539813['skipType'](0x7&tag);}return _0xf323ba;},TrackChangesConnectMessage['decodeDelimited']=function(_0x57cdbe){return _0x57cdbe instanceof $Reader||(_0x57cdbe=new $Reader(_0x57cdbe)),this['decode'](_0x57cdbe,_0x57cdbe['uint32']());},TrackChangesConnectMessage['verify']=function(_0x51b658){return'object'!=typeof _0x51b658||null===_0x51b658?'object\x20expected':null!=_0x51b658['documentId']&&_0x51b658['hasOwnProperty']('documentId')&&!$util['isString'](_0x51b658['documentId'])?'documentId:\x20string\x20expected':null;},TrackChangesConnectMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesConnectMessage'])return object;let _0x3128de=new $root['TrackChangesConnectMessage']();return null!=object['documentId']&&(_0x3128de['documentId']=String(object['documentId'])),_0x3128de;},TrackChangesConnectMessage['toObject']=function(_0x51a16a,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x51a16a['documentId']&&_0x51a16a['hasOwnProperty']('documentId')&&(object['documentId']=_0x51a16a['documentId']),object;},TrackChangesConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesConnectMessage';},TrackChangesConnectMessage;})()),$root['TrackChangesGetAllSuggestionMessage']=((()=>{function TrackChangesGetAllSuggestionMessage(properties){if(properties){for(let _0x47cf27=Object['keys'](properties),_0xda9a85=0x0;_0xda9a85<_0x47cf27['length'];++_0xda9a85)null!=properties[_0x47cf27[_0xda9a85]]&&(this[_0x47cf27[_0xda9a85]]=properties[_0x47cf27[_0xda9a85]]);}}return TrackChangesGetAllSuggestionMessage['prototype']['documentId']='',TrackChangesGetAllSuggestionMessage['create']=function(properties){return new TrackChangesGetAllSuggestionMessage(properties);},TrackChangesGetAllSuggestionMessage['encode']=function(_0x35b824,writer){return writer||(writer=$Writer['create']()),null!=_0x35b824['documentId']&&Object['hasOwnProperty']['call'](_0x35b824,'documentId')&&writer['uint32'](0xa)['string'](_0x35b824['documentId']),writer;},TrackChangesGetAllSuggestionMessage['encodeDelimited']=function(_0x3ad79b,writer){return this['encode'](_0x3ad79b,writer)['ldelim']();},TrackChangesGetAllSuggestionMessage['decode']=function(_0x1f3cfd,length){_0x1f3cfd instanceof $Reader||(_0x1f3cfd=$Reader['create'](_0x1f3cfd));let _0x54d119=void 0x0===length?_0x1f3cfd['len']:_0x1f3cfd['pos']+length,_0x44eae2=new $root['TrackChangesGetAllSuggestionMessage']();for(;_0x1f3cfd['pos']<_0x54d119;){let tag=_0x1f3cfd['uint32']();if(tag>>>0x3==0x1)_0x44eae2['documentId']=_0x1f3cfd['string']();else _0x1f3cfd['skipType'](0x7&tag);}return _0x44eae2;},TrackChangesGetAllSuggestionMessage['decodeDelimited']=function(_0x3fcb6d){return _0x3fcb6d instanceof $Reader||(_0x3fcb6d=new $Reader(_0x3fcb6d)),this['decode'](_0x3fcb6d,_0x3fcb6d['uint32']());},TrackChangesGetAllSuggestionMessage['verify']=function(_0x57966e){return'object'!=typeof _0x57966e||null===_0x57966e?'object\x20expected':null!=_0x57966e['documentId']&&_0x57966e['hasOwnProperty']('documentId')&&!$util['isString'](_0x57966e['documentId'])?'documentId:\x20string\x20expected':null;},TrackChangesGetAllSuggestionMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesGetAllSuggestionMessage'])return object;let _0x5c733e=new $root['TrackChangesGetAllSuggestionMessage']();return null!=object['documentId']&&(_0x5c733e['documentId']=String(object['documentId'])),_0x5c733e;},TrackChangesGetAllSuggestionMessage['toObject']=function(_0x487096,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x487096['documentId']&&_0x487096['hasOwnProperty']('documentId')&&(object['documentId']=_0x487096['documentId']),object;},TrackChangesGetAllSuggestionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesGetAllSuggestionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesGetAllSuggestionMessage';},TrackChangesGetAllSuggestionMessage;})()),$root['TrackChangesGetSuggestionMessage']=((()=>{function TrackChangesGetSuggestionMessage(properties){if(properties){for(let _0x3dc09e=Object['keys'](properties),_0x14f96d=0x0;_0x14f96d<_0x3dc09e['length'];++_0x14f96d)null!=properties[_0x3dc09e[_0x14f96d]]&&(this[_0x3dc09e[_0x14f96d]]=properties[_0x3dc09e[_0x14f96d]]);}}return TrackChangesGetSuggestionMessage['prototype']['id']='',TrackChangesGetSuggestionMessage['prototype']['documentId']='',TrackChangesGetSuggestionMessage['create']=function(properties){return new TrackChangesGetSuggestionMessage(properties);},TrackChangesGetSuggestionMessage['encode']=function(_0xd49048,writer){return writer||(writer=$Writer['create']()),null!=_0xd49048['id']&&Object['hasOwnProperty']['call'](_0xd49048,'id')&&writer['uint32'](0xa)['string'](_0xd49048['id']),null!=_0xd49048['documentId']&&Object['hasOwnProperty']['call'](_0xd49048,'documentId')&&writer['uint32'](0x12)['string'](_0xd49048['documentId']),writer;},TrackChangesGetSuggestionMessage['encodeDelimited']=function(_0x22afa9,writer){return this['encode'](_0x22afa9,writer)['ldelim']();},TrackChangesGetSuggestionMessage['decode']=function(_0x55bc4b,length){_0x55bc4b instanceof $Reader||(_0x55bc4b=$Reader['create'](_0x55bc4b));let _0x3f022d=void 0x0===length?_0x55bc4b['len']:_0x55bc4b['pos']+length,_0x21d740=new $root['TrackChangesGetSuggestionMessage']();for(;_0x55bc4b['pos']<_0x3f022d;){let tag=_0x55bc4b['uint32']();switch(tag>>>0x3){case 0x1:_0x21d740['id']=_0x55bc4b['string']();break;case 0x2:_0x21d740['documentId']=_0x55bc4b['string']();break;default:_0x55bc4b['skipType'](0x7&tag);}}return _0x21d740;},TrackChangesGetSuggestionMessage['decodeDelimited']=function(_0x5b7c62){return _0x5b7c62 instanceof $Reader||(_0x5b7c62=new $Reader(_0x5b7c62)),this['decode'](_0x5b7c62,_0x5b7c62['uint32']());},TrackChangesGetSuggestionMessage['verify']=function(_0x378248){return'object'!=typeof _0x378248||null===_0x378248?'object\x20expected':null!=_0x378248['id']&&_0x378248['hasOwnProperty']('id')&&!$util['isString'](_0x378248['id'])?'id:\x20string\x20expected':null!=_0x378248['documentId']&&_0x378248['hasOwnProperty']('documentId')&&!$util['isString'](_0x378248['documentId'])?'documentId:\x20string\x20expected':null;},TrackChangesGetSuggestionMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesGetSuggestionMessage'])return object;let _0x5ae0a1=new $root['TrackChangesGetSuggestionMessage']();return null!=object['id']&&(_0x5ae0a1['id']=String(object['id'])),null!=object['documentId']&&(_0x5ae0a1['documentId']=String(object['documentId'])),_0x5ae0a1;},TrackChangesGetSuggestionMessage['toObject']=function(_0x131467,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['documentId']=''),null!=_0x131467['id']&&_0x131467['hasOwnProperty']('id')&&(object['id']=_0x131467['id']),null!=_0x131467['documentId']&&_0x131467['hasOwnProperty']('documentId')&&(object['documentId']=_0x131467['documentId']),object;},TrackChangesGetSuggestionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesGetSuggestionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesGetSuggestionMessage';},TrackChangesGetSuggestionMessage;})()),$root['TrackChangesUpdateSuggestionMessage']=((()=>{function TrackChangesUpdateSuggestionMessage(properties){if(properties){for(let _0x11f7fb=Object['keys'](properties),_0x22402b=0x0;_0x22402b<_0x11f7fb['length'];++_0x22402b)null!=properties[_0x11f7fb[_0x22402b]]&&(this[_0x11f7fb[_0x22402b]]=properties[_0x11f7fb[_0x22402b]]);}}return TrackChangesUpdateSuggestionMessage['prototype']['id']='',TrackChangesUpdateSuggestionMessage['prototype']['documentId']='',TrackChangesUpdateSuggestionMessage['prototype']['hasComments']=!0x1,TrackChangesUpdateSuggestionMessage['prototype']['isHasCommentsModified']=!0x1,TrackChangesUpdateSuggestionMessage['prototype']['state']='',TrackChangesUpdateSuggestionMessage['prototype']['attributes']='',TrackChangesUpdateSuggestionMessage['create']=function(properties){return new TrackChangesUpdateSuggestionMessage(properties);},TrackChangesUpdateSuggestionMessage['encode']=function(_0x42b5fa,writer){return writer||(writer=$Writer['create']()),null!=_0x42b5fa['id']&&Object['hasOwnProperty']['call'](_0x42b5fa,'id')&&writer['uint32'](0xa)['string'](_0x42b5fa['id']),null!=_0x42b5fa['documentId']&&Object['hasOwnProperty']['call'](_0x42b5fa,'documentId')&&writer['uint32'](0x12)['string'](_0x42b5fa['documentId']),null!=_0x42b5fa['hasComments']&&Object['hasOwnProperty']['call'](_0x42b5fa,'hasComments')&&writer['uint32'](0x18)['bool'](_0x42b5fa['hasComments']),null!=_0x42b5fa['isHasCommentsModified']&&Object['hasOwnProperty']['call'](_0x42b5fa,'isHasCommentsModified')&&writer['uint32'](0x20)['bool'](_0x42b5fa['isHasCommentsModified']),null!=_0x42b5fa['state']&&Object['hasOwnProperty']['call'](_0x42b5fa,'state')&&writer['uint32'](0x2a)['string'](_0x42b5fa['state']),null!=_0x42b5fa['attributes']&&Object['hasOwnProperty']['call'](_0x42b5fa,'attributes')&&writer['uint32'](0x32)['string'](_0x42b5fa['attributes']),writer;},TrackChangesUpdateSuggestionMessage['encodeDelimited']=function(_0x28c809,writer){return this['encode'](_0x28c809,writer)['ldelim']();},TrackChangesUpdateSuggestionMessage['decode']=function(_0x3a3cbd,length){_0x3a3cbd instanceof $Reader||(_0x3a3cbd=$Reader['create'](_0x3a3cbd));let _0x1bdde3=void 0x0===length?_0x3a3cbd['len']:_0x3a3cbd['pos']+length,_0xd86835=new $root['TrackChangesUpdateSuggestionMessage']();for(;_0x3a3cbd['pos']<_0x1bdde3;){let tag=_0x3a3cbd['uint32']();switch(tag>>>0x3){case 0x1:_0xd86835['id']=_0x3a3cbd['string']();break;case 0x2:_0xd86835['documentId']=_0x3a3cbd['string']();break;case 0x3:_0xd86835['hasComments']=_0x3a3cbd['bool']();break;case 0x4:_0xd86835['isHasCommentsModified']=_0x3a3cbd['bool']();break;case 0x5:_0xd86835['state']=_0x3a3cbd['string']();break;case 0x6:_0xd86835['attributes']=_0x3a3cbd['string']();break;default:_0x3a3cbd['skipType'](0x7&tag);}}return _0xd86835;},TrackChangesUpdateSuggestionMessage['decodeDelimited']=function(_0x454dff){return _0x454dff instanceof $Reader||(_0x454dff=new $Reader(_0x454dff)),this['decode'](_0x454dff,_0x454dff['uint32']());},TrackChangesUpdateSuggestionMessage['verify']=function(_0x1eec14){return'object'!=typeof _0x1eec14||null===_0x1eec14?'object\x20expected':null!=_0x1eec14['id']&&_0x1eec14['hasOwnProperty']('id')&&!$util['isString'](_0x1eec14['id'])?'id:\x20string\x20expected':null!=_0x1eec14['documentId']&&_0x1eec14['hasOwnProperty']('documentId')&&!$util['isString'](_0x1eec14['documentId'])?'documentId:\x20string\x20expected':null!=_0x1eec14['hasComments']&&_0x1eec14['hasOwnProperty']('hasComments')&&'boolean'!=typeof _0x1eec14['hasComments']?'hasComments:\x20boolean\x20expected':null!=_0x1eec14['isHasCommentsModified']&&_0x1eec14['hasOwnProperty']('isHasCommentsModified')&&'boolean'!=typeof _0x1eec14['isHasCommentsModified']?'isHasCommentsModified:\x20boolean\x20expected':null!=_0x1eec14['state']&&_0x1eec14['hasOwnProperty']('state')&&!$util['isString'](_0x1eec14['state'])?'state:\x20string\x20expected':null!=_0x1eec14['attributes']&&_0x1eec14['hasOwnProperty']('attributes')&&!$util['isString'](_0x1eec14['attributes'])?'attributes:\x20string\x20expected':null;},TrackChangesUpdateSuggestionMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesUpdateSuggestionMessage'])return object;let _0x48ca40=new $root['TrackChangesUpdateSuggestionMessage']();return null!=object['id']&&(_0x48ca40['id']=String(object['id'])),null!=object['documentId']&&(_0x48ca40['documentId']=String(object['documentId'])),null!=object['hasComments']&&(_0x48ca40['hasComments']=Boolean(object['hasComments'])),null!=object['isHasCommentsModified']&&(_0x48ca40['isHasCommentsModified']=Boolean(object['isHasCommentsModified'])),null!=object['state']&&(_0x48ca40['state']=String(object['state'])),null!=object['attributes']&&(_0x48ca40['attributes']=String(object['attributes'])),_0x48ca40;},TrackChangesUpdateSuggestionMessage['toObject']=function(_0x475bec,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['documentId']='',object['hasComments']=!0x1,object['isHasCommentsModified']=!0x1,object['state']='',object['attributes']=''),null!=_0x475bec['id']&&_0x475bec['hasOwnProperty']('id')&&(object['id']=_0x475bec['id']),null!=_0x475bec['documentId']&&_0x475bec['hasOwnProperty']('documentId')&&(object['documentId']=_0x475bec['documentId']),null!=_0x475bec['hasComments']&&_0x475bec['hasOwnProperty']('hasComments')&&(object['hasComments']=_0x475bec['hasComments']),null!=_0x475bec['isHasCommentsModified']&&_0x475bec['hasOwnProperty']('isHasCommentsModified')&&(object['isHasCommentsModified']=_0x475bec['isHasCommentsModified']),null!=_0x475bec['state']&&_0x475bec['hasOwnProperty']('state')&&(object['state']=_0x475bec['state']),null!=_0x475bec['attributes']&&_0x475bec['hasOwnProperty']('attributes')&&(object['attributes']=_0x475bec['attributes']),object;},TrackChangesUpdateSuggestionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesUpdateSuggestionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesUpdateSuggestionMessage';},TrackChangesUpdateSuggestionMessage;})()),$root['TrackChangesAddSuggestionResponse']=((()=>{function TrackChangesAddSuggestionResponse(properties){if(properties){for(let _0x4053f3=Object['keys'](properties),_0x2ef3d2=0x0;_0x2ef3d2<_0x4053f3['length'];++_0x2ef3d2)null!=properties[_0x4053f3[_0x2ef3d2]]&&(this[_0x4053f3[_0x2ef3d2]]=properties[_0x4053f3[_0x2ef3d2]]);}}return TrackChangesAddSuggestionResponse['prototype']['id']='',TrackChangesAddSuggestionResponse['prototype']['authorId']='',TrackChangesAddSuggestionResponse['prototype']['type']='',TrackChangesAddSuggestionResponse['prototype']['createdAt']='',TrackChangesAddSuggestionResponse['prototype']['data']='',TrackChangesAddSuggestionResponse['prototype']['hasComments']=!0x1,TrackChangesAddSuggestionResponse['prototype']['state']='',TrackChangesAddSuggestionResponse['prototype']['attributes']='',TrackChangesAddSuggestionResponse['create']=function(properties){return new TrackChangesAddSuggestionResponse(properties);},TrackChangesAddSuggestionResponse['encode']=function(_0x43f2bc,writer){return writer||(writer=$Writer['create']()),null!=_0x43f2bc['id']&&Object['hasOwnProperty']['call'](_0x43f2bc,'id')&&writer['uint32'](0xa)['string'](_0x43f2bc['id']),null!=_0x43f2bc['authorId']&&Object['hasOwnProperty']['call'](_0x43f2bc,'authorId')&&writer['uint32'](0x12)['string'](_0x43f2bc['authorId']),null!=_0x43f2bc['type']&&Object['hasOwnProperty']['call'](_0x43f2bc,'type')&&writer['uint32'](0x1a)['string'](_0x43f2bc['type']),null!=_0x43f2bc['createdAt']&&Object['hasOwnProperty']['call'](_0x43f2bc,'createdAt')&&writer['uint32'](0x22)['string'](_0x43f2bc['createdAt']),null!=_0x43f2bc['data']&&Object['hasOwnProperty']['call'](_0x43f2bc,'data')&&writer['uint32'](0x2a)['string'](_0x43f2bc['data']),null!=_0x43f2bc['hasComments']&&Object['hasOwnProperty']['call'](_0x43f2bc,'hasComments')&&writer['uint32'](0x30)['bool'](_0x43f2bc['hasComments']),null!=_0x43f2bc['state']&&Object['hasOwnProperty']['call'](_0x43f2bc,'state')&&writer['uint32'](0x3a)['string'](_0x43f2bc['state']),null!=_0x43f2bc['attributes']&&Object['hasOwnProperty']['call'](_0x43f2bc,'attributes')&&writer['uint32'](0x42)['string'](_0x43f2bc['attributes']),writer;},TrackChangesAddSuggestionResponse['encodeDelimited']=function(_0xfea9bd,writer){return this['encode'](_0xfea9bd,writer)['ldelim']();},TrackChangesAddSuggestionResponse['decode']=function(_0x4cf2ae,length){_0x4cf2ae instanceof $Reader||(_0x4cf2ae=$Reader['create'](_0x4cf2ae));let _0x2f3368=void 0x0===length?_0x4cf2ae['len']:_0x4cf2ae['pos']+length,_0xbdc954=new $root['TrackChangesAddSuggestionResponse']();for(;_0x4cf2ae['pos']<_0x2f3368;){let tag=_0x4cf2ae['uint32']();switch(tag>>>0x3){case 0x1:_0xbdc954['id']=_0x4cf2ae['string']();break;case 0x2:_0xbdc954['authorId']=_0x4cf2ae['string']();break;case 0x3:_0xbdc954['type']=_0x4cf2ae['string']();break;case 0x4:_0xbdc954['createdAt']=_0x4cf2ae['string']();break;case 0x5:_0xbdc954['data']=_0x4cf2ae['string']();break;case 0x6:_0xbdc954['hasComments']=_0x4cf2ae['bool']();break;case 0x7:_0xbdc954['state']=_0x4cf2ae['string']();break;case 0x8:_0xbdc954['attributes']=_0x4cf2ae['string']();break;default:_0x4cf2ae['skipType'](0x7&tag);}}return _0xbdc954;},TrackChangesAddSuggestionResponse['decodeDelimited']=function(_0x554337){return _0x554337 instanceof $Reader||(_0x554337=new $Reader(_0x554337)),this['decode'](_0x554337,_0x554337['uint32']());},TrackChangesAddSuggestionResponse['verify']=function(_0x21f548){return'object'!=typeof _0x21f548||null===_0x21f548?'object\x20expected':null!=_0x21f548['id']&&_0x21f548['hasOwnProperty']('id')&&!$util['isString'](_0x21f548['id'])?'id:\x20string\x20expected':null!=_0x21f548['authorId']&&_0x21f548['hasOwnProperty']('authorId')&&!$util['isString'](_0x21f548['authorId'])?'authorId:\x20string\x20expected':null!=_0x21f548['type']&&_0x21f548['hasOwnProperty']('type')&&!$util['isString'](_0x21f548['type'])?'type:\x20string\x20expected':null!=_0x21f548['createdAt']&&_0x21f548['hasOwnProperty']('createdAt')&&!$util['isString'](_0x21f548['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x21f548['data']&&_0x21f548['hasOwnProperty']('data')&&!$util['isString'](_0x21f548['data'])?'data:\x20string\x20expected':null!=_0x21f548['hasComments']&&_0x21f548['hasOwnProperty']('hasComments')&&'boolean'!=typeof _0x21f548['hasComments']?'hasComments:\x20boolean\x20expected':null!=_0x21f548['state']&&_0x21f548['hasOwnProperty']('state')&&!$util['isString'](_0x21f548['state'])?'state:\x20string\x20expected':null!=_0x21f548['attributes']&&_0x21f548['hasOwnProperty']('attributes')&&!$util['isString'](_0x21f548['attributes'])?'attributes:\x20string\x20expected':null;},TrackChangesAddSuggestionResponse['fromObject']=function(object){if(object instanceof $root['TrackChangesAddSuggestionResponse'])return object;let _0x2be62e=new $root['TrackChangesAddSuggestionResponse']();return null!=object['id']&&(_0x2be62e['id']=String(object['id'])),null!=object['authorId']&&(_0x2be62e['authorId']=String(object['authorId'])),null!=object['type']&&(_0x2be62e['type']=String(object['type'])),null!=object['createdAt']&&(_0x2be62e['createdAt']=String(object['createdAt'])),null!=object['data']&&(_0x2be62e['data']=String(object['data'])),null!=object['hasComments']&&(_0x2be62e['hasComments']=Boolean(object['hasComments'])),null!=object['state']&&(_0x2be62e['state']=String(object['state'])),null!=object['attributes']&&(_0x2be62e['attributes']=String(object['attributes'])),_0x2be62e;},TrackChangesAddSuggestionResponse['toObject']=function(_0x27613b,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['authorId']='',object['type']='',object['createdAt']='',object['data']='',object['hasComments']=!0x1,object['state']='',object['attributes']=''),null!=_0x27613b['id']&&_0x27613b['hasOwnProperty']('id')&&(object['id']=_0x27613b['id']),null!=_0x27613b['authorId']&&_0x27613b['hasOwnProperty']('authorId')&&(object['authorId']=_0x27613b['authorId']),null!=_0x27613b['type']&&_0x27613b['hasOwnProperty']('type')&&(object['type']=_0x27613b['type']),null!=_0x27613b['createdAt']&&_0x27613b['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x27613b['createdAt']),null!=_0x27613b['data']&&_0x27613b['hasOwnProperty']('data')&&(object['data']=_0x27613b['data']),null!=_0x27613b['hasComments']&&_0x27613b['hasOwnProperty']('hasComments')&&(object['hasComments']=_0x27613b['hasComments']),null!=_0x27613b['state']&&_0x27613b['hasOwnProperty']('state')&&(object['state']=_0x27613b['state']),null!=_0x27613b['attributes']&&_0x27613b['hasOwnProperty']('attributes')&&(object['attributes']=_0x27613b['attributes']),object;},TrackChangesAddSuggestionResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesAddSuggestionResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesAddSuggestionResponse';},TrackChangesAddSuggestionResponse;})()),$root['TrackChangesConnectResponse']=((()=>{function TrackChangesConnectResponse(properties){if(this['suggestions']=[],this['suggestionsV2']=[],properties){for(let _0x55506e=Object['keys'](properties),_0x4bc08c=0x0;_0x4bc08c<_0x55506e['length'];++_0x4bc08c)null!=properties[_0x55506e[_0x4bc08c]]&&(this[_0x55506e[_0x4bc08c]]=properties[_0x55506e[_0x4bc08c]]);}}return TrackChangesConnectResponse['prototype']['channel']='',TrackChangesConnectResponse['prototype']['suggestions']=$util['emptyArray'],TrackChangesConnectResponse['prototype']['suggestionsV2']=$util['emptyArray'],TrackChangesConnectResponse['create']=function(properties){return new TrackChangesConnectResponse(properties);},TrackChangesConnectResponse['encode']=function(_0x37128d,writer){if(writer||(writer=$Writer['create']()),null!=_0x37128d['channel']&&Object['hasOwnProperty']['call'](_0x37128d,'channel')&&writer['uint32'](0xa)['string'](_0x37128d['channel']),null!=_0x37128d['suggestions']&&_0x37128d['suggestions']['length']){for(let _0x56c5df=0x0;_0x56c5df<_0x37128d['suggestions']['length'];++_0x56c5df)writer['uint32'](0x12)['string'](_0x37128d['suggestions'][_0x56c5df]);}if(null!=_0x37128d['suggestionsV2']&&_0x37128d['suggestionsV2']['length']){for(let _0x1635d1=0x0;_0x1635d1<_0x37128d['suggestionsV2']['length'];++_0x1635d1)$root['SuggestionDescriptor']['encode'](_0x37128d['suggestionsV2'][_0x1635d1],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},TrackChangesConnectResponse['encodeDelimited']=function(_0x5a38f8,writer){return this['encode'](_0x5a38f8,writer)['ldelim']();},TrackChangesConnectResponse['decode']=function(_0x2d1179,length){_0x2d1179 instanceof $Reader||(_0x2d1179=$Reader['create'](_0x2d1179));let _0x47adf5=void 0x0===length?_0x2d1179['len']:_0x2d1179['pos']+length,_0x43f867=new $root['TrackChangesConnectResponse']();for(;_0x2d1179['pos']<_0x47adf5;){let tag=_0x2d1179['uint32']();switch(tag>>>0x3){case 0x1:_0x43f867['channel']=_0x2d1179['string']();break;case 0x2:_0x43f867['suggestions']&&_0x43f867['suggestions']['length']||(_0x43f867['suggestions']=[]),_0x43f867['suggestions']['push'](_0x2d1179['string']());break;case 0x3:_0x43f867['suggestionsV2']&&_0x43f867['suggestionsV2']['length']||(_0x43f867['suggestionsV2']=[]),_0x43f867['suggestionsV2']['push']($root['SuggestionDescriptor']['decode'](_0x2d1179,_0x2d1179['uint32']()));break;default:_0x2d1179['skipType'](0x7&tag);}}return _0x43f867;},TrackChangesConnectResponse['decodeDelimited']=function(_0x242415){return _0x242415 instanceof $Reader||(_0x242415=new $Reader(_0x242415)),this['decode'](_0x242415,_0x242415['uint32']());},TrackChangesConnectResponse['verify']=function(_0x28472f){if('object'!=typeof _0x28472f||null===_0x28472f)return'object\x20expected';if(null!=_0x28472f['channel']&&_0x28472f['hasOwnProperty']('channel')&&!$util['isString'](_0x28472f['channel']))return'channel:\x20string\x20expected';if(null!=_0x28472f['suggestions']&&_0x28472f['hasOwnProperty']('suggestions')){if(!Array['isArray'](_0x28472f['suggestions']))return'suggestions:\x20array\x20expected';for(let _0x136f54=0x0;_0x136f54<_0x28472f['suggestions']['length'];++_0x136f54)if(!$util['isString'](_0x28472f['suggestions'][_0x136f54]))return'suggestions:\x20string[]\x20expected';}if(null!=_0x28472f['suggestionsV2']&&_0x28472f['hasOwnProperty']('suggestionsV2')){if(!Array['isArray'](_0x28472f['suggestionsV2']))return'suggestionsV2:\x20array\x20expected';for(let _0x37b401=0x0;_0x37b401<_0x28472f['suggestionsV2']['length'];++_0x37b401){let _0x3bcab6=$root['SuggestionDescriptor']['verify'](_0x28472f['suggestionsV2'][_0x37b401]);if(_0x3bcab6)return'suggestionsV2.'+_0x3bcab6;}}return null;},TrackChangesConnectResponse['fromObject']=function(object){if(object instanceof $root['TrackChangesConnectResponse'])return object;let _0x2015f5=new $root['TrackChangesConnectResponse']();if(null!=object['channel']&&(_0x2015f5['channel']=String(object['channel'])),object['suggestions']){if(!Array['isArray'](object['suggestions']))throw TypeError('.TrackChangesConnectResponse.suggestions:\x20array\x20expected');_0x2015f5['suggestions']=[];for(let _0x5dc87c=0x0;_0x5dc87c<object['suggestions']['length'];++_0x5dc87c)_0x2015f5['suggestions'][_0x5dc87c]=String(object['suggestions'][_0x5dc87c]);}if(object['suggestionsV2']){if(!Array['isArray'](object['suggestionsV2']))throw TypeError('.TrackChangesConnectResponse.suggestionsV2:\x20array\x20expected');_0x2015f5['suggestionsV2']=[];for(let _0xe54a67=0x0;_0xe54a67<object['suggestionsV2']['length'];++_0xe54a67){if('object'!=typeof object['suggestionsV2'][_0xe54a67])throw TypeError('.TrackChangesConnectResponse.suggestionsV2:\x20object\x20expected');_0x2015f5['suggestionsV2'][_0xe54a67]=$root['SuggestionDescriptor']['fromObject'](object['suggestionsV2'][_0xe54a67]);}}return _0x2015f5;},TrackChangesConnectResponse['toObject']=function(_0x49b6f6,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['suggestions']=[],object['suggestionsV2']=[]),options['defaults']&&(object['channel']=''),null!=_0x49b6f6['channel']&&_0x49b6f6['hasOwnProperty']('channel')&&(object['channel']=_0x49b6f6['channel']),_0x49b6f6['suggestions']&&_0x49b6f6['suggestions']['length']){object['suggestions']=[];for(let _0x3ce8cc=0x0;_0x3ce8cc<_0x49b6f6['suggestions']['length'];++_0x3ce8cc)object['suggestions'][_0x3ce8cc]=_0x49b6f6['suggestions'][_0x3ce8cc];}if(_0x49b6f6['suggestionsV2']&&_0x49b6f6['suggestionsV2']['length']){object['suggestionsV2']=[];for(let _0x133a67=0x0;_0x133a67<_0x49b6f6['suggestionsV2']['length'];++_0x133a67)object['suggestionsV2'][_0x133a67]=$root['SuggestionDescriptor']['toObject'](_0x49b6f6['suggestionsV2'][_0x133a67],options);}return object;},TrackChangesConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesConnectResponse';},TrackChangesConnectResponse;})()),$root['TrackChangesGetAllSuggestionsResponse']=((()=>{function TrackChangesGetAllSuggestionsResponse(properties){if(this['suggestions']=[],this['suggestionsV2']=[],properties){for(let _0x17001f=Object['keys'](properties),_0x2aade3=0x0;_0x2aade3<_0x17001f['length'];++_0x2aade3)null!=properties[_0x17001f[_0x2aade3]]&&(this[_0x17001f[_0x2aade3]]=properties[_0x17001f[_0x2aade3]]);}}return TrackChangesGetAllSuggestionsResponse['prototype']['suggestions']=$util['emptyArray'],TrackChangesGetAllSuggestionsResponse['prototype']['suggestionsV2']=$util['emptyArray'],TrackChangesGetAllSuggestionsResponse['create']=function(properties){return new TrackChangesGetAllSuggestionsResponse(properties);},TrackChangesGetAllSuggestionsResponse['encode']=function(_0x57ae86,writer){if(writer||(writer=$Writer['create']()),null!=_0x57ae86['suggestions']&&_0x57ae86['suggestions']['length']){for(let _0xa036e5=0x0;_0xa036e5<_0x57ae86['suggestions']['length'];++_0xa036e5)writer['uint32'](0xa)['string'](_0x57ae86['suggestions'][_0xa036e5]);}if(null!=_0x57ae86['suggestionsV2']&&_0x57ae86['suggestionsV2']['length']){for(let _0x55abfa=0x0;_0x55abfa<_0x57ae86['suggestionsV2']['length'];++_0x55abfa)$root['SuggestionDescriptor']['encode'](_0x57ae86['suggestionsV2'][_0x55abfa],writer['uint32'](0x12)['fork']())['ldelim']();}return writer;},TrackChangesGetAllSuggestionsResponse['encodeDelimited']=function(_0x1bdc15,writer){return this['encode'](_0x1bdc15,writer)['ldelim']();},TrackChangesGetAllSuggestionsResponse['decode']=function(_0x1fcb7f,length){_0x1fcb7f instanceof $Reader||(_0x1fcb7f=$Reader['create'](_0x1fcb7f));let _0x86009=void 0x0===length?_0x1fcb7f['len']:_0x1fcb7f['pos']+length,_0xede669=new $root['TrackChangesGetAllSuggestionsResponse']();for(;_0x1fcb7f['pos']<_0x86009;){let tag=_0x1fcb7f['uint32']();switch(tag>>>0x3){case 0x1:_0xede669['suggestions']&&_0xede669['suggestions']['length']||(_0xede669['suggestions']=[]),_0xede669['suggestions']['push'](_0x1fcb7f['string']());break;case 0x2:_0xede669['suggestionsV2']&&_0xede669['suggestionsV2']['length']||(_0xede669['suggestionsV2']=[]),_0xede669['suggestionsV2']['push']($root['SuggestionDescriptor']['decode'](_0x1fcb7f,_0x1fcb7f['uint32']()));break;default:_0x1fcb7f['skipType'](0x7&tag);}}return _0xede669;},TrackChangesGetAllSuggestionsResponse['decodeDelimited']=function(_0x212722){return _0x212722 instanceof $Reader||(_0x212722=new $Reader(_0x212722)),this['decode'](_0x212722,_0x212722['uint32']());},TrackChangesGetAllSuggestionsResponse['verify']=function(_0x2b92fa){if('object'!=typeof _0x2b92fa||null===_0x2b92fa)return'object\x20expected';if(null!=_0x2b92fa['suggestions']&&_0x2b92fa['hasOwnProperty']('suggestions')){if(!Array['isArray'](_0x2b92fa['suggestions']))return'suggestions:\x20array\x20expected';for(let _0x24013c=0x0;_0x24013c<_0x2b92fa['suggestions']['length'];++_0x24013c)if(!$util['isString'](_0x2b92fa['suggestions'][_0x24013c]))return'suggestions:\x20string[]\x20expected';}if(null!=_0x2b92fa['suggestionsV2']&&_0x2b92fa['hasOwnProperty']('suggestionsV2')){if(!Array['isArray'](_0x2b92fa['suggestionsV2']))return'suggestionsV2:\x20array\x20expected';for(let _0x5a94cc=0x0;_0x5a94cc<_0x2b92fa['suggestionsV2']['length'];++_0x5a94cc){let _0x1848a4=$root['SuggestionDescriptor']['verify'](_0x2b92fa['suggestionsV2'][_0x5a94cc]);if(_0x1848a4)return'suggestionsV2.'+_0x1848a4;}}return null;},TrackChangesGetAllSuggestionsResponse['fromObject']=function(object){if(object instanceof $root['TrackChangesGetAllSuggestionsResponse'])return object;let _0x733332=new $root['TrackChangesGetAllSuggestionsResponse']();if(object['suggestions']){if(!Array['isArray'](object['suggestions']))throw TypeError('.TrackChangesGetAllSuggestionsResponse.suggestions:\x20array\x20expected');_0x733332['suggestions']=[];for(let _0x4f7164=0x0;_0x4f7164<object['suggestions']['length'];++_0x4f7164)_0x733332['suggestions'][_0x4f7164]=String(object['suggestions'][_0x4f7164]);}if(object['suggestionsV2']){if(!Array['isArray'](object['suggestionsV2']))throw TypeError('.TrackChangesGetAllSuggestionsResponse.suggestionsV2:\x20array\x20expected');_0x733332['suggestionsV2']=[];for(let _0x3fbb7c=0x0;_0x3fbb7c<object['suggestionsV2']['length'];++_0x3fbb7c){if('object'!=typeof object['suggestionsV2'][_0x3fbb7c])throw TypeError('.TrackChangesGetAllSuggestionsResponse.suggestionsV2:\x20object\x20expected');_0x733332['suggestionsV2'][_0x3fbb7c]=$root['SuggestionDescriptor']['fromObject'](object['suggestionsV2'][_0x3fbb7c]);}}return _0x733332;},TrackChangesGetAllSuggestionsResponse['toObject']=function(_0x261b15,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['suggestions']=[],object['suggestionsV2']=[]),_0x261b15['suggestions']&&_0x261b15['suggestions']['length']){object['suggestions']=[];for(let _0x170c79=0x0;_0x170c79<_0x261b15['suggestions']['length'];++_0x170c79)object['suggestions'][_0x170c79]=_0x261b15['suggestions'][_0x170c79];}if(_0x261b15['suggestionsV2']&&_0x261b15['suggestionsV2']['length']){object['suggestionsV2']=[];for(let _0x18da61=0x0;_0x18da61<_0x261b15['suggestionsV2']['length'];++_0x18da61)object['suggestionsV2'][_0x18da61]=$root['SuggestionDescriptor']['toObject'](_0x261b15['suggestionsV2'][_0x18da61],options);}return object;},TrackChangesGetAllSuggestionsResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesGetAllSuggestionsResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesGetAllSuggestionsResponse';},TrackChangesGetAllSuggestionsResponse;})()),$root['TrackChangesGetSuggestionResponse']=((()=>{function TrackChangesGetSuggestionResponse(properties){if(properties){for(let _0x5257e2=Object['keys'](properties),_0x56dd12=0x0;_0x56dd12<_0x5257e2['length'];++_0x56dd12)null!=properties[_0x5257e2[_0x56dd12]]&&(this[_0x5257e2[_0x56dd12]]=properties[_0x5257e2[_0x56dd12]]);}}return TrackChangesGetSuggestionResponse['prototype']['id']='',TrackChangesGetSuggestionResponse['prototype']['authorId']='',TrackChangesGetSuggestionResponse['prototype']['type']='',TrackChangesGetSuggestionResponse['prototype']['createdAt']='',TrackChangesGetSuggestionResponse['prototype']['data']='',TrackChangesGetSuggestionResponse['prototype']['hasComments']=!0x1,TrackChangesGetSuggestionResponse['prototype']['state']='',TrackChangesGetSuggestionResponse['prototype']['attributes']='',TrackChangesGetSuggestionResponse['create']=function(properties){return new TrackChangesGetSuggestionResponse(properties);},TrackChangesGetSuggestionResponse['encode']=function(_0x4a0016,writer){return writer||(writer=$Writer['create']()),null!=_0x4a0016['id']&&Object['hasOwnProperty']['call'](_0x4a0016,'id')&&writer['uint32'](0xa)['string'](_0x4a0016['id']),null!=_0x4a0016['authorId']&&Object['hasOwnProperty']['call'](_0x4a0016,'authorId')&&writer['uint32'](0x12)['string'](_0x4a0016['authorId']),null!=_0x4a0016['type']&&Object['hasOwnProperty']['call'](_0x4a0016,'type')&&writer['uint32'](0x1a)['string'](_0x4a0016['type']),null!=_0x4a0016['createdAt']&&Object['hasOwnProperty']['call'](_0x4a0016,'createdAt')&&writer['uint32'](0x22)['string'](_0x4a0016['createdAt']),null!=_0x4a0016['data']&&Object['hasOwnProperty']['call'](_0x4a0016,'data')&&writer['uint32'](0x2a)['string'](_0x4a0016['data']),null!=_0x4a0016['hasComments']&&Object['hasOwnProperty']['call'](_0x4a0016,'hasComments')&&writer['uint32'](0x30)['bool'](_0x4a0016['hasComments']),null!=_0x4a0016['state']&&Object['hasOwnProperty']['call'](_0x4a0016,'state')&&writer['uint32'](0x3a)['string'](_0x4a0016['state']),null!=_0x4a0016['attributes']&&Object['hasOwnProperty']['call'](_0x4a0016,'attributes')&&writer['uint32'](0x42)['string'](_0x4a0016['attributes']),writer;},TrackChangesGetSuggestionResponse['encodeDelimited']=function(_0x5d607e,writer){return this['encode'](_0x5d607e,writer)['ldelim']();},TrackChangesGetSuggestionResponse['decode']=function(_0x12cb63,length){_0x12cb63 instanceof $Reader||(_0x12cb63=$Reader['create'](_0x12cb63));let _0xd0588b=void 0x0===length?_0x12cb63['len']:_0x12cb63['pos']+length,_0x4331cd=new $root['TrackChangesGetSuggestionResponse']();for(;_0x12cb63['pos']<_0xd0588b;){let tag=_0x12cb63['uint32']();switch(tag>>>0x3){case 0x1:_0x4331cd['id']=_0x12cb63['string']();break;case 0x2:_0x4331cd['authorId']=_0x12cb63['string']();break;case 0x3:_0x4331cd['type']=_0x12cb63['string']();break;case 0x4:_0x4331cd['createdAt']=_0x12cb63['string']();break;case 0x5:_0x4331cd['data']=_0x12cb63['string']();break;case 0x6:_0x4331cd['hasComments']=_0x12cb63['bool']();break;case 0x7:_0x4331cd['state']=_0x12cb63['string']();break;case 0x8:_0x4331cd['attributes']=_0x12cb63['string']();break;default:_0x12cb63['skipType'](0x7&tag);}}return _0x4331cd;},TrackChangesGetSuggestionResponse['decodeDelimited']=function(_0xd17f4d){return _0xd17f4d instanceof $Reader||(_0xd17f4d=new $Reader(_0xd17f4d)),this['decode'](_0xd17f4d,_0xd17f4d['uint32']());},TrackChangesGetSuggestionResponse['verify']=function(_0x271a52){return'object'!=typeof _0x271a52||null===_0x271a52?'object\x20expected':null!=_0x271a52['id']&&_0x271a52['hasOwnProperty']('id')&&!$util['isString'](_0x271a52['id'])?'id:\x20string\x20expected':null!=_0x271a52['authorId']&&_0x271a52['hasOwnProperty']('authorId')&&!$util['isString'](_0x271a52['authorId'])?'authorId:\x20string\x20expected':null!=_0x271a52['type']&&_0x271a52['hasOwnProperty']('type')&&!$util['isString'](_0x271a52['type'])?'type:\x20string\x20expected':null!=_0x271a52['createdAt']&&_0x271a52['hasOwnProperty']('createdAt')&&!$util['isString'](_0x271a52['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x271a52['data']&&_0x271a52['hasOwnProperty']('data')&&!$util['isString'](_0x271a52['data'])?'data:\x20string\x20expected':null!=_0x271a52['hasComments']&&_0x271a52['hasOwnProperty']('hasComments')&&'boolean'!=typeof _0x271a52['hasComments']?'hasComments:\x20boolean\x20expected':null!=_0x271a52['state']&&_0x271a52['hasOwnProperty']('state')&&!$util['isString'](_0x271a52['state'])?'state:\x20string\x20expected':null!=_0x271a52['attributes']&&_0x271a52['hasOwnProperty']('attributes')&&!$util['isString'](_0x271a52['attributes'])?'attributes:\x20string\x20expected':null;},TrackChangesGetSuggestionResponse['fromObject']=function(object){if(object instanceof $root['TrackChangesGetSuggestionResponse'])return object;let _0x1a2cc6=new $root['TrackChangesGetSuggestionResponse']();return null!=object['id']&&(_0x1a2cc6['id']=String(object['id'])),null!=object['authorId']&&(_0x1a2cc6['authorId']=String(object['authorId'])),null!=object['type']&&(_0x1a2cc6['type']=String(object['type'])),null!=object['createdAt']&&(_0x1a2cc6['createdAt']=String(object['createdAt'])),null!=object['data']&&(_0x1a2cc6['data']=String(object['data'])),null!=object['hasComments']&&(_0x1a2cc6['hasComments']=Boolean(object['hasComments'])),null!=object['state']&&(_0x1a2cc6['state']=String(object['state'])),null!=object['attributes']&&(_0x1a2cc6['attributes']=String(object['attributes'])),_0x1a2cc6;},TrackChangesGetSuggestionResponse['toObject']=function(_0x32d205,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['authorId']='',object['type']='',object['createdAt']='',object['data']='',object['hasComments']=!0x1,object['state']='',object['attributes']=''),null!=_0x32d205['id']&&_0x32d205['hasOwnProperty']('id')&&(object['id']=_0x32d205['id']),null!=_0x32d205['authorId']&&_0x32d205['hasOwnProperty']('authorId')&&(object['authorId']=_0x32d205['authorId']),null!=_0x32d205['type']&&_0x32d205['hasOwnProperty']('type')&&(object['type']=_0x32d205['type']),null!=_0x32d205['createdAt']&&_0x32d205['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x32d205['createdAt']),null!=_0x32d205['data']&&_0x32d205['hasOwnProperty']('data')&&(object['data']=_0x32d205['data']),null!=_0x32d205['hasComments']&&_0x32d205['hasOwnProperty']('hasComments')&&(object['hasComments']=_0x32d205['hasComments']),null!=_0x32d205['state']&&_0x32d205['hasOwnProperty']('state')&&(object['state']=_0x32d205['state']),null!=_0x32d205['attributes']&&_0x32d205['hasOwnProperty']('attributes')&&(object['attributes']=_0x32d205['attributes']),object;},TrackChangesGetSuggestionResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesGetSuggestionResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesGetSuggestionResponse';},TrackChangesGetSuggestionResponse;})()),$root['UserDescriptor']=((()=>{function UserDescriptor(properties){if(this['attributes']=[],properties){for(let _0x24e89a=Object['keys'](properties),_0x252e15=0x0;_0x252e15<_0x24e89a['length'];++_0x252e15)null!=properties[_0x24e89a[_0x252e15]]&&(this[_0x24e89a[_0x252e15]]=properties[_0x24e89a[_0x252e15]]);}}return UserDescriptor['prototype']['attributes']=$util['emptyArray'],UserDescriptor['create']=function(properties){return new UserDescriptor(properties);},UserDescriptor['encode']=function(_0x23fcde,writer){if(writer||(writer=$Writer['create']()),null!=_0x23fcde['attributes']&&_0x23fcde['attributes']['length']){for(let _0x4e3643=0x0;_0x4e3643<_0x23fcde['attributes']['length'];++_0x4e3643)$root['KeyValueDescriptor']['encode'](_0x23fcde['attributes'][_0x4e3643],writer['uint32'](0xa)['fork']())['ldelim']();}return writer;},UserDescriptor['encodeDelimited']=function(_0x45f031,writer){return this['encode'](_0x45f031,writer)['ldelim']();},UserDescriptor['decode']=function(_0x2d9dfd,length){_0x2d9dfd instanceof $Reader||(_0x2d9dfd=$Reader['create'](_0x2d9dfd));let _0x289f93=void 0x0===length?_0x2d9dfd['len']:_0x2d9dfd['pos']+length,_0x2ffe46=new $root['UserDescriptor']();for(;_0x2d9dfd['pos']<_0x289f93;){let tag=_0x2d9dfd['uint32']();if(tag>>>0x3==0x1)_0x2ffe46['attributes']&&_0x2ffe46['attributes']['length']||(_0x2ffe46['attributes']=[]),_0x2ffe46['attributes']['push']($root['KeyValueDescriptor']['decode'](_0x2d9dfd,_0x2d9dfd['uint32']()));else _0x2d9dfd['skipType'](0x7&tag);}return _0x2ffe46;},UserDescriptor['decodeDelimited']=function(_0xb29ae7){return _0xb29ae7 instanceof $Reader||(_0xb29ae7=new $Reader(_0xb29ae7)),this['decode'](_0xb29ae7,_0xb29ae7['uint32']());},UserDescriptor['verify']=function(_0x1a8dbd){if('object'!=typeof _0x1a8dbd||null===_0x1a8dbd)return'object\x20expected';if(null!=_0x1a8dbd['attributes']&&_0x1a8dbd['hasOwnProperty']('attributes')){if(!Array['isArray'](_0x1a8dbd['attributes']))return'attributes:\x20array\x20expected';for(let _0x324da8=0x0;_0x324da8<_0x1a8dbd['attributes']['length'];++_0x324da8){let _0x169d5f=$root['KeyValueDescriptor']['verify'](_0x1a8dbd['attributes'][_0x324da8]);if(_0x169d5f)return'attributes.'+_0x169d5f;}}return null;},UserDescriptor['fromObject']=function(object){if(object instanceof $root['UserDescriptor'])return object;let _0x47a9de=new $root['UserDescriptor']();if(object['attributes']){if(!Array['isArray'](object['attributes']))throw TypeError('.UserDescriptor.attributes:\x20array\x20expected');_0x47a9de['attributes']=[];for(let _0x27a01d=0x0;_0x27a01d<object['attributes']['length'];++_0x27a01d){if('object'!=typeof object['attributes'][_0x27a01d])throw TypeError('.UserDescriptor.attributes:\x20object\x20expected');_0x47a9de['attributes'][_0x27a01d]=$root['KeyValueDescriptor']['fromObject'](object['attributes'][_0x27a01d]);}}return _0x47a9de;},UserDescriptor['toObject']=function(_0x12ba21,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['attributes']=[]),_0x12ba21['attributes']&&_0x12ba21['attributes']['length']){object['attributes']=[];for(let _0x409438=0x0;_0x409438<_0x12ba21['attributes']['length'];++_0x409438)object['attributes'][_0x409438]=$root['KeyValueDescriptor']['toObject'](_0x12ba21['attributes'][_0x409438],options);}return object;},UserDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},UserDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/UserDescriptor';},UserDescriptor;})()),$root['GetManyUsersMessage']=((()=>{function GetManyUsersMessage(properties){if(this['ids']=[],properties){for(let _0xbe689f=Object['keys'](properties),_0x94206f=0x0;_0x94206f<_0xbe689f['length'];++_0x94206f)null!=properties[_0xbe689f[_0x94206f]]&&(this[_0xbe689f[_0x94206f]]=properties[_0xbe689f[_0x94206f]]);}}return GetManyUsersMessage['prototype']['ids']=$util['emptyArray'],GetManyUsersMessage['create']=function(properties){return new GetManyUsersMessage(properties);},GetManyUsersMessage['encode']=function(_0x44ffcb,writer){if(writer||(writer=$Writer['create']()),null!=_0x44ffcb['ids']&&_0x44ffcb['ids']['length']){for(let _0x26a1d0=0x0;_0x26a1d0<_0x44ffcb['ids']['length'];++_0x26a1d0)writer['uint32'](0xa)['string'](_0x44ffcb['ids'][_0x26a1d0]);}return writer;},GetManyUsersMessage['encodeDelimited']=function(_0x48851e,writer){return this['encode'](_0x48851e,writer)['ldelim']();},GetManyUsersMessage['decode']=function(_0x2fd2fa,length){_0x2fd2fa instanceof $Reader||(_0x2fd2fa=$Reader['create'](_0x2fd2fa));let _0x5648af=void 0x0===length?_0x2fd2fa['len']:_0x2fd2fa['pos']+length,_0x1aed63=new $root['GetManyUsersMessage']();for(;_0x2fd2fa['pos']<_0x5648af;){let tag=_0x2fd2fa['uint32']();if(tag>>>0x3==0x1)_0x1aed63['ids']&&_0x1aed63['ids']['length']||(_0x1aed63['ids']=[]),_0x1aed63['ids']['push'](_0x2fd2fa['string']());else _0x2fd2fa['skipType'](0x7&tag);}return _0x1aed63;},GetManyUsersMessage['decodeDelimited']=function(_0x1a89b2){return _0x1a89b2 instanceof $Reader||(_0x1a89b2=new $Reader(_0x1a89b2)),this['decode'](_0x1a89b2,_0x1a89b2['uint32']());},GetManyUsersMessage['verify']=function(_0x45a520){if('object'!=typeof _0x45a520||null===_0x45a520)return'object\x20expected';if(null!=_0x45a520['ids']&&_0x45a520['hasOwnProperty']('ids')){if(!Array['isArray'](_0x45a520['ids']))return'ids:\x20array\x20expected';for(let _0x42c925=0x0;_0x42c925<_0x45a520['ids']['length'];++_0x42c925)if(!$util['isString'](_0x45a520['ids'][_0x42c925]))return'ids:\x20string[]\x20expected';}return null;},GetManyUsersMessage['fromObject']=function(object){if(object instanceof $root['GetManyUsersMessage'])return object;let _0x3e1663=new $root['GetManyUsersMessage']();if(object['ids']){if(!Array['isArray'](object['ids']))throw TypeError('.GetManyUsersMessage.ids:\x20array\x20expected');_0x3e1663['ids']=[];for(let _0x50dc89=0x0;_0x50dc89<object['ids']['length'];++_0x50dc89)_0x3e1663['ids'][_0x50dc89]=String(object['ids'][_0x50dc89]);}return _0x3e1663;},GetManyUsersMessage['toObject']=function(_0x116f49,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['ids']=[]),_0x116f49['ids']&&_0x116f49['ids']['length']){object['ids']=[];for(let _0x4c5bec=0x0;_0x4c5bec<_0x116f49['ids']['length'];++_0x4c5bec)object['ids'][_0x4c5bec]=_0x116f49['ids'][_0x4c5bec];}return object;},GetManyUsersMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetManyUsersMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetManyUsersMessage';},GetManyUsersMessage;})()),$root['GetUserMessage']=((()=>{function GetUserMessage(properties){if(properties){for(let _0x51a1bb=Object['keys'](properties),_0xe29b14=0x0;_0xe29b14<_0x51a1bb['length'];++_0xe29b14)null!=properties[_0x51a1bb[_0xe29b14]]&&(this[_0x51a1bb[_0xe29b14]]=properties[_0x51a1bb[_0xe29b14]]);}}return GetUserMessage['prototype']['id']='',GetUserMessage['create']=function(properties){return new GetUserMessage(properties);},GetUserMessage['encode']=function(_0x54846a,writer){return writer||(writer=$Writer['create']()),null!=_0x54846a['id']&&Object['hasOwnProperty']['call'](_0x54846a,'id')&&writer['uint32'](0xa)['string'](_0x54846a['id']),writer;},GetUserMessage['encodeDelimited']=function(_0x131488,writer){return this['encode'](_0x131488,writer)['ldelim']();},GetUserMessage['decode']=function(_0x44b1d8,length){_0x44b1d8 instanceof $Reader||(_0x44b1d8=$Reader['create'](_0x44b1d8));let _0x4b6eea=void 0x0===length?_0x44b1d8['len']:_0x44b1d8['pos']+length,_0x1fcd08=new $root['GetUserMessage']();for(;_0x44b1d8['pos']<_0x4b6eea;){let tag=_0x44b1d8['uint32']();if(tag>>>0x3==0x1)_0x1fcd08['id']=_0x44b1d8['string']();else _0x44b1d8['skipType'](0x7&tag);}return _0x1fcd08;},GetUserMessage['decodeDelimited']=function(_0x3b7a83){return _0x3b7a83 instanceof $Reader||(_0x3b7a83=new $Reader(_0x3b7a83)),this['decode'](_0x3b7a83,_0x3b7a83['uint32']());},GetUserMessage['verify']=function(_0x26100f){return'object'!=typeof _0x26100f||null===_0x26100f?'object\x20expected':null!=_0x26100f['id']&&_0x26100f['hasOwnProperty']('id')&&!$util['isString'](_0x26100f['id'])?'id:\x20string\x20expected':null;},GetUserMessage['fromObject']=function(object){if(object instanceof $root['GetUserMessage'])return object;let _0x45949d=new $root['GetUserMessage']();return null!=object['id']&&(_0x45949d['id']=String(object['id'])),_0x45949d;},GetUserMessage['toObject']=function(_0x12ab00,options){options||(options={});let object={};return options['defaults']&&(object['id']=''),null!=_0x12ab00['id']&&_0x12ab00['hasOwnProperty']('id')&&(object['id']=_0x12ab00['id']),object;},GetUserMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetUserMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetUserMessage';},GetUserMessage;})()),$root['GetManyUsersResponse']=((()=>{function GetManyUsersResponse(properties){if(this['users']=[],properties){for(let _0x22a04b=Object['keys'](properties),_0x26989c=0x0;_0x26989c<_0x22a04b['length'];++_0x26989c)null!=properties[_0x22a04b[_0x26989c]]&&(this[_0x22a04b[_0x26989c]]=properties[_0x22a04b[_0x26989c]]);}}return GetManyUsersResponse['prototype']['users']=$util['emptyArray'],GetManyUsersResponse['create']=function(properties){return new GetManyUsersResponse(properties);},GetManyUsersResponse['encode']=function(_0x1867b1,writer){if(writer||(writer=$Writer['create']()),null!=_0x1867b1['users']&&_0x1867b1['users']['length']){for(let _0x333d61=0x0;_0x333d61<_0x1867b1['users']['length'];++_0x333d61)$root['UserDescriptor']['encode'](_0x1867b1['users'][_0x333d61],writer['uint32'](0xa)['fork']())['ldelim']();}return writer;},GetManyUsersResponse['encodeDelimited']=function(_0x2be454,writer){return this['encode'](_0x2be454,writer)['ldelim']();},GetManyUsersResponse['decode']=function(_0x5c98a1,length){_0x5c98a1 instanceof $Reader||(_0x5c98a1=$Reader['create'](_0x5c98a1));let _0x103480=void 0x0===length?_0x5c98a1['len']:_0x5c98a1['pos']+length,_0xdd56dd=new $root['GetManyUsersResponse']();for(;_0x5c98a1['pos']<_0x103480;){let tag=_0x5c98a1['uint32']();if(tag>>>0x3==0x1)_0xdd56dd['users']&&_0xdd56dd['users']['length']||(_0xdd56dd['users']=[]),_0xdd56dd['users']['push']($root['UserDescriptor']['decode'](_0x5c98a1,_0x5c98a1['uint32']()));else _0x5c98a1['skipType'](0x7&tag);}return _0xdd56dd;},GetManyUsersResponse['decodeDelimited']=function(_0x529c9e){return _0x529c9e instanceof $Reader||(_0x529c9e=new $Reader(_0x529c9e)),this['decode'](_0x529c9e,_0x529c9e['uint32']());},GetManyUsersResponse['verify']=function(_0x480ae8){if('object'!=typeof _0x480ae8||null===_0x480ae8)return'object\x20expected';if(null!=_0x480ae8['users']&&_0x480ae8['hasOwnProperty']('users')){if(!Array['isArray'](_0x480ae8['users']))return'users:\x20array\x20expected';for(let _0x4d6c26=0x0;_0x4d6c26<_0x480ae8['users']['length'];++_0x4d6c26){let _0x4d97c9=$root['UserDescriptor']['verify'](_0x480ae8['users'][_0x4d6c26]);if(_0x4d97c9)return'users.'+_0x4d97c9;}}return null;},GetManyUsersResponse['fromObject']=function(object){if(object instanceof $root['GetManyUsersResponse'])return object;let _0x179a68=new $root['GetManyUsersResponse']();if(object['users']){if(!Array['isArray'](object['users']))throw TypeError('.GetManyUsersResponse.users:\x20array\x20expected');_0x179a68['users']=[];for(let _0x27ab30=0x0;_0x27ab30<object['users']['length'];++_0x27ab30){if('object'!=typeof object['users'][_0x27ab30])throw TypeError('.GetManyUsersResponse.users:\x20object\x20expected');_0x179a68['users'][_0x27ab30]=$root['UserDescriptor']['fromObject'](object['users'][_0x27ab30]);}}return _0x179a68;},GetManyUsersResponse['toObject']=function(_0x73b7d6,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['users']=[]),_0x73b7d6['users']&&_0x73b7d6['users']['length']){object['users']=[];for(let _0x3b0875=0x0;_0x3b0875<_0x73b7d6['users']['length'];++_0x3b0875)object['users'][_0x3b0875]=$root['UserDescriptor']['toObject'](_0x73b7d6['users'][_0x3b0875],options);}return object;},GetManyUsersResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetManyUsersResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetManyUsersResponse';},GetManyUsersResponse;})()),$root['GetUserResponse']=((()=>{function GetUserResponse(properties){if(this['attributes']=[],properties){for(let _0xe964a6=Object['keys'](properties),_0x9f1f33=0x0;_0x9f1f33<_0xe964a6['length'];++_0x9f1f33)null!=properties[_0xe964a6[_0x9f1f33]]&&(this[_0xe964a6[_0x9f1f33]]=properties[_0xe964a6[_0x9f1f33]]);}}return GetUserResponse['prototype']['attributes']=$util['emptyArray'],GetUserResponse['create']=function(properties){return new GetUserResponse(properties);},GetUserResponse['encode']=function(_0x2243db,writer){if(writer||(writer=$Writer['create']()),null!=_0x2243db['attributes']&&_0x2243db['attributes']['length']){for(let _0x2fb903=0x0;_0x2fb903<_0x2243db['attributes']['length'];++_0x2fb903)$root['KeyValueDescriptor']['encode'](_0x2243db['attributes'][_0x2fb903],writer['uint32'](0xa)['fork']())['ldelim']();}return writer;},GetUserResponse['encodeDelimited']=function(_0x11f7c3,writer){return this['encode'](_0x11f7c3,writer)['ldelim']();},GetUserResponse['decode']=function(_0x18cfbf,length){_0x18cfbf instanceof $Reader||(_0x18cfbf=$Reader['create'](_0x18cfbf));let _0x2fff4c=void 0x0===length?_0x18cfbf['len']:_0x18cfbf['pos']+length,_0x2b304f=new $root['GetUserResponse']();for(;_0x18cfbf['pos']<_0x2fff4c;){let tag=_0x18cfbf['uint32']();if(tag>>>0x3==0x1)_0x2b304f['attributes']&&_0x2b304f['attributes']['length']||(_0x2b304f['attributes']=[]),_0x2b304f['attributes']['push']($root['KeyValueDescriptor']['decode'](_0x18cfbf,_0x18cfbf['uint32']()));else _0x18cfbf['skipType'](0x7&tag);}return _0x2b304f;},GetUserResponse['decodeDelimited']=function(_0xaab0c2){return _0xaab0c2 instanceof $Reader||(_0xaab0c2=new $Reader(_0xaab0c2)),this['decode'](_0xaab0c2,_0xaab0c2['uint32']());},GetUserResponse['verify']=function(_0x3e7afb){if('object'!=typeof _0x3e7afb||null===_0x3e7afb)return'object\x20expected';if(null!=_0x3e7afb['attributes']&&_0x3e7afb['hasOwnProperty']('attributes')){if(!Array['isArray'](_0x3e7afb['attributes']))return'attributes:\x20array\x20expected';for(let _0x3df7c9=0x0;_0x3df7c9<_0x3e7afb['attributes']['length'];++_0x3df7c9){let _0x3a650e=$root['KeyValueDescriptor']['verify'](_0x3e7afb['attributes'][_0x3df7c9]);if(_0x3a650e)return'attributes.'+_0x3a650e;}}return null;},GetUserResponse['fromObject']=function(object){if(object instanceof $root['GetUserResponse'])return object;let _0x5e628e=new $root['GetUserResponse']();if(object['attributes']){if(!Array['isArray'](object['attributes']))throw TypeError('.GetUserResponse.attributes:\x20array\x20expected');_0x5e628e['attributes']=[];for(let _0xc845cb=0x0;_0xc845cb<object['attributes']['length'];++_0xc845cb){if('object'!=typeof object['attributes'][_0xc845cb])throw TypeError('.GetUserResponse.attributes:\x20object\x20expected');_0x5e628e['attributes'][_0xc845cb]=$root['KeyValueDescriptor']['fromObject'](object['attributes'][_0xc845cb]);}}return _0x5e628e;},GetUserResponse['toObject']=function(_0x5d5fb8,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['attributes']=[]),_0x5d5fb8['attributes']&&_0x5d5fb8['attributes']['length']){object['attributes']=[];for(let _0x1209b2=0x0;_0x1209b2<_0x5d5fb8['attributes']['length'];++_0x1209b2)object['attributes'][_0x1209b2]=$root['KeyValueDescriptor']['toObject'](_0x5d5fb8['attributes'][_0x1209b2],options);}return object;},GetUserResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetUserResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetUserResponse';},GetUserResponse;})()),$root['ChannelMessage']=((()=>{function _0x546757(properties){if(properties){for(let _0x2ae9c2=Object['keys'](properties),_0x3966f5=0x0;_0x3966f5<_0x2ae9c2['length'];++_0x3966f5)null!=properties[_0x2ae9c2[_0x3966f5]]&&(this[_0x2ae9c2[_0x3966f5]]=properties[_0x2ae9c2[_0x3966f5]]);}}return _0x546757['prototype']['type']=0x0,_0x546757['prototype']['socketId']='',_0x546757['prototype']['data']=$util['newBuffer']([]),_0x546757['create']=function(properties){return new _0x546757(properties);},_0x546757['encode']=function(_0x50db7c,writer){return writer||(writer=$Writer['create']()),null!=_0x50db7c['type']&&Object['hasOwnProperty']['call'](_0x50db7c,'type')&&writer['uint32'](0x8)['uint32'](_0x50db7c['type']),null!=_0x50db7c['socketId']&&Object['hasOwnProperty']['call'](_0x50db7c,'socketId')&&writer['uint32'](0x12)['string'](_0x50db7c['socketId']),null!=_0x50db7c['data']&&Object['hasOwnProperty']['call'](_0x50db7c,'data')&&writer['uint32'](0x1a)['bytes'](_0x50db7c['data']),writer;},_0x546757['encodeDelimited']=function(_0x270ece,writer){return this['encode'](_0x270ece,writer)['ldelim']();},_0x546757['decode']=function(_0x2806a9,length){_0x2806a9 instanceof $Reader||(_0x2806a9=$Reader['create'](_0x2806a9));let _0x5dbbd2=void 0x0===length?_0x2806a9['len']:_0x2806a9['pos']+length,_0x232cc0=new $root['ChannelMessage']();for(;_0x2806a9['pos']<_0x5dbbd2;){let tag=_0x2806a9['uint32']();switch(tag>>>0x3){case 0x1:_0x232cc0['type']=_0x2806a9['uint32']();break;case 0x2:_0x232cc0['socketId']=_0x2806a9['string']();break;case 0x3:_0x232cc0['data']=_0x2806a9['bytes']();break;default:_0x2806a9['skipType'](0x7&tag);}}return _0x232cc0;},_0x546757['decodeDelimited']=function(_0xa558de){return _0xa558de instanceof $Reader||(_0xa558de=new $Reader(_0xa558de)),this['decode'](_0xa558de,_0xa558de['uint32']());},_0x546757['verify']=function(_0x3a8a1a){return'object'!=typeof _0x3a8a1a||null===_0x3a8a1a?'object\x20expected':null!=_0x3a8a1a['type']&&_0x3a8a1a['hasOwnProperty']('type')&&!$util['isInteger'](_0x3a8a1a['type'])?'type:\x20integer\x20expected':null!=_0x3a8a1a['socketId']&&_0x3a8a1a['hasOwnProperty']('socketId')&&!$util['isString'](_0x3a8a1a['socketId'])?'socketId:\x20string\x20expected':null!=_0x3a8a1a['data']&&_0x3a8a1a['hasOwnProperty']('data')&&!(_0x3a8a1a['data']&&'number'==typeof _0x3a8a1a['data']['length']||$util['isString'](_0x3a8a1a['data']))?'data:\x20buffer\x20expected':null;},_0x546757['fromObject']=function(object){if(object instanceof $root['ChannelMessage'])return object;let _0xb35830=new $root['ChannelMessage']();return null!=object['type']&&(_0xb35830['type']=object['type']>>>0x0),null!=object['socketId']&&(_0xb35830['socketId']=String(object['socketId'])),null!=object['data']&&('string'==typeof object['data']?$util['base64']['decode'](object['data'],_0xb35830['data']=$util['newBuffer']($util['base64']['length'](object['data'])),0x0):object['data']['length']>=0x0&&(_0xb35830['data']=object['data'])),_0xb35830;},_0x546757['toObject']=function(_0x28ad93,options){options||(options={});let object={};return options['defaults']&&(object['type']=0x0,object['socketId']='',options['bytes']===String?object['data']='':(object['data']=[],options['bytes']!==Array&&(object['data']=$util['newBuffer'](object['data'])))),null!=_0x28ad93['type']&&_0x28ad93['hasOwnProperty']('type')&&(object['type']=_0x28ad93['type']),null!=_0x28ad93['socketId']&&_0x28ad93['hasOwnProperty']('socketId')&&(object['socketId']=_0x28ad93['socketId']),null!=_0x28ad93['data']&&_0x28ad93['hasOwnProperty']('data')&&(object['data']=options['bytes']===String?$util['base64']['encode'](_0x28ad93['data'],0x0,_0x28ad93['data']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x28ad93['data']):_0x28ad93['data']),object;},_0x546757['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},_0x546757['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/ChannelMessage';},_0x546757;})()),$root['BytesBytesPacketDataMessage']=((()=>{function BytesBytesPacketDataMessage(properties){if(properties){for(let _0x5f52d0=Object['keys'](properties),_0x31dae8=0x0;_0x31dae8<_0x5f52d0['length'];++_0x31dae8)null!=properties[_0x5f52d0[_0x31dae8]]&&(this[_0x5f52d0[_0x31dae8]]=properties[_0x5f52d0[_0x31dae8]]);}}return BytesBytesPacketDataMessage['prototype']['data']=$util['newBuffer']([]),BytesBytesPacketDataMessage['prototype']['data1']=$util['newBuffer']([]),BytesBytesPacketDataMessage['create']=function(properties){return new BytesBytesPacketDataMessage(properties);},BytesBytesPacketDataMessage['encode']=function(_0x185d09,writer){return writer||(writer=$Writer['create']()),null!=_0x185d09['data']&&Object['hasOwnProperty']['call'](_0x185d09,'data')&&writer['uint32'](0xa)['bytes'](_0x185d09['data']),null!=_0x185d09['data1']&&Object['hasOwnProperty']['call'](_0x185d09,'data1')&&writer['uint32'](0x12)['bytes'](_0x185d09['data1']),writer;},BytesBytesPacketDataMessage['encodeDelimited']=function(_0xcc47ff,writer){return this['encode'](_0xcc47ff,writer)['ldelim']();},BytesBytesPacketDataMessage['decode']=function(_0x136bbd,length){_0x136bbd instanceof $Reader||(_0x136bbd=$Reader['create'](_0x136bbd));let _0x4d1339=void 0x0===length?_0x136bbd['len']:_0x136bbd['pos']+length,_0x4a0b57=new $root['BytesBytesPacketDataMessage']();for(;_0x136bbd['pos']<_0x4d1339;){let tag=_0x136bbd['uint32']();switch(tag>>>0x3){case 0x1:_0x4a0b57['data']=_0x136bbd['bytes']();break;case 0x2:_0x4a0b57['data1']=_0x136bbd['bytes']();break;default:_0x136bbd['skipType'](0x7&tag);}}return _0x4a0b57;},BytesBytesPacketDataMessage['decodeDelimited']=function(_0x510116){return _0x510116 instanceof $Reader||(_0x510116=new $Reader(_0x510116)),this['decode'](_0x510116,_0x510116['uint32']());},BytesBytesPacketDataMessage['verify']=function(_0x593db5){return'object'!=typeof _0x593db5||null===_0x593db5?'object\x20expected':null!=_0x593db5['data']&&_0x593db5['hasOwnProperty']('data')&&!(_0x593db5['data']&&'number'==typeof _0x593db5['data']['length']||$util['isString'](_0x593db5['data']))?'data:\x20buffer\x20expected':null!=_0x593db5['data1']&&_0x593db5['hasOwnProperty']('data1')&&!(_0x593db5['data1']&&'number'==typeof _0x593db5['data1']['length']||$util['isString'](_0x593db5['data1']))?'data1:\x20buffer\x20expected':null;},BytesBytesPacketDataMessage['fromObject']=function(object){if(object instanceof $root['BytesBytesPacketDataMessage'])return object;let _0x506b5b=new $root['BytesBytesPacketDataMessage']();return null!=object['data']&&('string'==typeof object['data']?$util['base64']['decode'](object['data'],_0x506b5b['data']=$util['newBuffer']($util['base64']['length'](object['data'])),0x0):object['data']['length']>=0x0&&(_0x506b5b['data']=object['data'])),null!=object['data1']&&('string'==typeof object['data1']?$util['base64']['decode'](object['data1'],_0x506b5b['data1']=$util['newBuffer']($util['base64']['length'](object['data1'])),0x0):object['data1']['length']>=0x0&&(_0x506b5b['data1']=object['data1'])),_0x506b5b;},BytesBytesPacketDataMessage['toObject']=function(_0x570c66,options){options||(options={});let object={};return options['defaults']&&(options['bytes']===String?object['data']='':(object['data']=[],options['bytes']!==Array&&(object['data']=$util['newBuffer'](object['data']))),options['bytes']===String?object['data1']='':(object['data1']=[],options['bytes']!==Array&&(object['data1']=$util['newBuffer'](object['data1'])))),null!=_0x570c66['data']&&_0x570c66['hasOwnProperty']('data')&&(object['data']=options['bytes']===String?$util['base64']['encode'](_0x570c66['data'],0x0,_0x570c66['data']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x570c66['data']):_0x570c66['data']),null!=_0x570c66['data1']&&_0x570c66['hasOwnProperty']('data1')&&(object['data1']=options['bytes']===String?$util['base64']['encode'](_0x570c66['data1'],0x0,_0x570c66['data1']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x570c66['data1']):_0x570c66['data1']),object;},BytesBytesPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},BytesBytesPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/BytesBytesPacketDataMessage';},BytesBytesPacketDataMessage;})()),$root['NumberBytesPacketDataMessage']=((()=>{function NumberBytesPacketDataMessage(properties){if(properties){for(let _0x59fb67=Object['keys'](properties),_0x593b38=0x0;_0x593b38<_0x59fb67['length'];++_0x593b38)null!=properties[_0x59fb67[_0x593b38]]&&(this[_0x59fb67[_0x593b38]]=properties[_0x59fb67[_0x593b38]]);}}return NumberBytesPacketDataMessage['prototype']['data']=0x0,NumberBytesPacketDataMessage['prototype']['data1']=$util['newBuffer']([]),NumberBytesPacketDataMessage['create']=function(properties){return new NumberBytesPacketDataMessage(properties);},NumberBytesPacketDataMessage['encode']=function(_0x302284,writer){return writer||(writer=$Writer['create']()),null!=_0x302284['data']&&Object['hasOwnProperty']['call'](_0x302284,'data')&&writer['uint32'](0x8)['uint32'](_0x302284['data']),null!=_0x302284['data1']&&Object['hasOwnProperty']['call'](_0x302284,'data1')&&writer['uint32'](0x12)['bytes'](_0x302284['data1']),writer;},NumberBytesPacketDataMessage['encodeDelimited']=function(_0x357a9a,writer){return this['encode'](_0x357a9a,writer)['ldelim']();},NumberBytesPacketDataMessage['decode']=function(_0x5ed225,length){_0x5ed225 instanceof $Reader||(_0x5ed225=$Reader['create'](_0x5ed225));let _0x25d985=void 0x0===length?_0x5ed225['len']:_0x5ed225['pos']+length,_0x4c2653=new $root['NumberBytesPacketDataMessage']();for(;_0x5ed225['pos']<_0x25d985;){let tag=_0x5ed225['uint32']();switch(tag>>>0x3){case 0x1:_0x4c2653['data']=_0x5ed225['uint32']();break;case 0x2:_0x4c2653['data1']=_0x5ed225['bytes']();break;default:_0x5ed225['skipType'](0x7&tag);}}return _0x4c2653;},NumberBytesPacketDataMessage['decodeDelimited']=function(_0x2570e6){return _0x2570e6 instanceof $Reader||(_0x2570e6=new $Reader(_0x2570e6)),this['decode'](_0x2570e6,_0x2570e6['uint32']());},NumberBytesPacketDataMessage['verify']=function(_0x18fc59){return'object'!=typeof _0x18fc59||null===_0x18fc59?'object\x20expected':null!=_0x18fc59['data']&&_0x18fc59['hasOwnProperty']('data')&&!$util['isInteger'](_0x18fc59['data'])?'data:\x20integer\x20expected':null!=_0x18fc59['data1']&&_0x18fc59['hasOwnProperty']('data1')&&!(_0x18fc59['data1']&&'number'==typeof _0x18fc59['data1']['length']||$util['isString'](_0x18fc59['data1']))?'data1:\x20buffer\x20expected':null;},NumberBytesPacketDataMessage['fromObject']=function(object){if(object instanceof $root['NumberBytesPacketDataMessage'])return object;let _0x5c3a20=new $root['NumberBytesPacketDataMessage']();return null!=object['data']&&(_0x5c3a20['data']=object['data']>>>0x0),null!=object['data1']&&('string'==typeof object['data1']?$util['base64']['decode'](object['data1'],_0x5c3a20['data1']=$util['newBuffer']($util['base64']['length'](object['data1'])),0x0):object['data1']['length']>=0x0&&(_0x5c3a20['data1']=object['data1'])),_0x5c3a20;},NumberBytesPacketDataMessage['toObject']=function(_0xd8e71b,options){options||(options={});let object={};return options['defaults']&&(object['data']=0x0,options['bytes']===String?object['data1']='':(object['data1']=[],options['bytes']!==Array&&(object['data1']=$util['newBuffer'](object['data1'])))),null!=_0xd8e71b['data']&&_0xd8e71b['hasOwnProperty']('data')&&(object['data']=_0xd8e71b['data']),null!=_0xd8e71b['data1']&&_0xd8e71b['hasOwnProperty']('data1')&&(object['data1']=options['bytes']===String?$util['base64']['encode'](_0xd8e71b['data1'],0x0,_0xd8e71b['data1']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0xd8e71b['data1']):_0xd8e71b['data1']),object;},NumberBytesPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},NumberBytesPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/NumberBytesPacketDataMessage';},NumberBytesPacketDataMessage;})()),$root['NumberNumberPacketDataMessage']=((()=>{function NumberNumberPacketDataMessage(properties){if(properties){for(let _0x38cd9d=Object['keys'](properties),_0x2264fb=0x0;_0x2264fb<_0x38cd9d['length'];++_0x2264fb)null!=properties[_0x38cd9d[_0x2264fb]]&&(this[_0x38cd9d[_0x2264fb]]=properties[_0x38cd9d[_0x2264fb]]);}}return NumberNumberPacketDataMessage['prototype']['data']=0x0,NumberNumberPacketDataMessage['prototype']['data1']=0x0,NumberNumberPacketDataMessage['create']=function(properties){return new NumberNumberPacketDataMessage(properties);},NumberNumberPacketDataMessage['encode']=function(_0x44c1de,writer){return writer||(writer=$Writer['create']()),null!=_0x44c1de['data']&&Object['hasOwnProperty']['call'](_0x44c1de,'data')&&writer['uint32'](0x8)['uint32'](_0x44c1de['data']),null!=_0x44c1de['data1']&&Object['hasOwnProperty']['call'](_0x44c1de,'data1')&&writer['uint32'](0x10)['uint32'](_0x44c1de['data1']),writer;},NumberNumberPacketDataMessage['encodeDelimited']=function(_0x287b66,writer){return this['encode'](_0x287b66,writer)['ldelim']();},NumberNumberPacketDataMessage['decode']=function(_0x2b62f3,length){_0x2b62f3 instanceof $Reader||(_0x2b62f3=$Reader['create'](_0x2b62f3));let _0x113e6d=void 0x0===length?_0x2b62f3['len']:_0x2b62f3['pos']+length,_0x2d1e40=new $root['NumberNumberPacketDataMessage']();for(;_0x2b62f3['pos']<_0x113e6d;){let tag=_0x2b62f3['uint32']();switch(tag>>>0x3){case 0x1:_0x2d1e40['data']=_0x2b62f3['uint32']();break;case 0x2:_0x2d1e40['data1']=_0x2b62f3['uint32']();break;default:_0x2b62f3['skipType'](0x7&tag);}}return _0x2d1e40;},NumberNumberPacketDataMessage['decodeDelimited']=function(_0x50d016){return _0x50d016 instanceof $Reader||(_0x50d016=new $Reader(_0x50d016)),this['decode'](_0x50d016,_0x50d016['uint32']());},NumberNumberPacketDataMessage['verify']=function(_0xc00975){return'object'!=typeof _0xc00975||null===_0xc00975?'object\x20expected':null!=_0xc00975['data']&&_0xc00975['hasOwnProperty']('data')&&!$util['isInteger'](_0xc00975['data'])?'data:\x20integer\x20expected':null!=_0xc00975['data1']&&_0xc00975['hasOwnProperty']('data1')&&!$util['isInteger'](_0xc00975['data1'])?'data1:\x20integer\x20expected':null;},NumberNumberPacketDataMessage['fromObject']=function(object){if(object instanceof $root['NumberNumberPacketDataMessage'])return object;let _0x3291cd=new $root['NumberNumberPacketDataMessage']();return null!=object['data']&&(_0x3291cd['data']=object['data']>>>0x0),null!=object['data1']&&(_0x3291cd['data1']=object['data1']>>>0x0),_0x3291cd;},NumberNumberPacketDataMessage['toObject']=function(_0x5692c5,options){options||(options={});let object={};return options['defaults']&&(object['data']=0x0,object['data1']=0x0),null!=_0x5692c5['data']&&_0x5692c5['hasOwnProperty']('data')&&(object['data']=_0x5692c5['data']),null!=_0x5692c5['data1']&&_0x5692c5['hasOwnProperty']('data1')&&(object['data1']=_0x5692c5['data1']),object;},NumberNumberPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},NumberNumberPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/NumberNumberPacketDataMessage';},NumberNumberPacketDataMessage;})()),$root['NumberObjectPacketDataMessage']=((()=>{function NumberObjectPacketDataMessage(properties){if(properties){for(let _0xd02e06=Object['keys'](properties),_0x1ebc20=0x0;_0x1ebc20<_0xd02e06['length'];++_0x1ebc20)null!=properties[_0xd02e06[_0x1ebc20]]&&(this[_0xd02e06[_0x1ebc20]]=properties[_0xd02e06[_0x1ebc20]]);}}return NumberObjectPacketDataMessage['prototype']['data']=0x0,NumberObjectPacketDataMessage['prototype']['data1']='',NumberObjectPacketDataMessage['create']=function(properties){return new NumberObjectPacketDataMessage(properties);},NumberObjectPacketDataMessage['encode']=function(_0x3ec971,writer){return writer||(writer=$Writer['create']()),null!=_0x3ec971['data']&&Object['hasOwnProperty']['call'](_0x3ec971,'data')&&writer['uint32'](0x8)['uint32'](_0x3ec971['data']),null!=_0x3ec971['data1']&&Object['hasOwnProperty']['call'](_0x3ec971,'data1')&&writer['uint32'](0x12)['string'](_0x3ec971['data1']),writer;},NumberObjectPacketDataMessage['encodeDelimited']=function(_0x1748d1,writer){return this['encode'](_0x1748d1,writer)['ldelim']();},NumberObjectPacketDataMessage['decode']=function(_0x388d85,length){_0x388d85 instanceof $Reader||(_0x388d85=$Reader['create'](_0x388d85));let _0x4f74ba=void 0x0===length?_0x388d85['len']:_0x388d85['pos']+length,_0x48b2bd=new $root['NumberObjectPacketDataMessage']();for(;_0x388d85['pos']<_0x4f74ba;){let tag=_0x388d85['uint32']();switch(tag>>>0x3){case 0x1:_0x48b2bd['data']=_0x388d85['uint32']();break;case 0x2:_0x48b2bd['data1']=_0x388d85['string']();break;default:_0x388d85['skipType'](0x7&tag);}}return _0x48b2bd;},NumberObjectPacketDataMessage['decodeDelimited']=function(_0x403c9e){return _0x403c9e instanceof $Reader||(_0x403c9e=new $Reader(_0x403c9e)),this['decode'](_0x403c9e,_0x403c9e['uint32']());},NumberObjectPacketDataMessage['verify']=function(_0x2139ee){return'object'!=typeof _0x2139ee||null===_0x2139ee?'object\x20expected':null!=_0x2139ee['data']&&_0x2139ee['hasOwnProperty']('data')&&!$util['isInteger'](_0x2139ee['data'])?'data:\x20integer\x20expected':null!=_0x2139ee['data1']&&_0x2139ee['hasOwnProperty']('data1')&&!$util['isString'](_0x2139ee['data1'])?'data1:\x20string\x20expected':null;},NumberObjectPacketDataMessage['fromObject']=function(object){if(object instanceof $root['NumberObjectPacketDataMessage'])return object;let _0x19b1f2=new $root['NumberObjectPacketDataMessage']();return null!=object['data']&&(_0x19b1f2['data']=object['data']>>>0x0),null!=object['data1']&&(_0x19b1f2['data1']=String(object['data1'])),_0x19b1f2;},NumberObjectPacketDataMessage['toObject']=function(_0x341015,options){options||(options={});let object={};return options['defaults']&&(object['data']=0x0,object['data1']=''),null!=_0x341015['data']&&_0x341015['hasOwnProperty']('data')&&(object['data']=_0x341015['data']),null!=_0x341015['data1']&&_0x341015['hasOwnProperty']('data1')&&(object['data1']=_0x341015['data1']),object;},NumberObjectPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},NumberObjectPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/NumberObjectPacketDataMessage';},NumberObjectPacketDataMessage;})()),$root['NumberStringPacketDataMessage']=((()=>{function NumberStringPacketDataMessage(properties){if(properties){for(let _0x2dd3a0=Object['keys'](properties),_0x5d04b5=0x0;_0x5d04b5<_0x2dd3a0['length'];++_0x5d04b5)null!=properties[_0x2dd3a0[_0x5d04b5]]&&(this[_0x2dd3a0[_0x5d04b5]]=properties[_0x2dd3a0[_0x5d04b5]]);}}return NumberStringPacketDataMessage['prototype']['data']=0x0,NumberStringPacketDataMessage['prototype']['data1']='',NumberStringPacketDataMessage['create']=function(properties){return new NumberStringPacketDataMessage(properties);},NumberStringPacketDataMessage['encode']=function(_0x2f3825,writer){return writer||(writer=$Writer['create']()),null!=_0x2f3825['data']&&Object['hasOwnProperty']['call'](_0x2f3825,'data')&&writer['uint32'](0x8)['uint32'](_0x2f3825['data']),null!=_0x2f3825['data1']&&Object['hasOwnProperty']['call'](_0x2f3825,'data1')&&writer['uint32'](0x12)['string'](_0x2f3825['data1']),writer;},NumberStringPacketDataMessage['encodeDelimited']=function(_0x4d9a5b,writer){return this['encode'](_0x4d9a5b,writer)['ldelim']();},NumberStringPacketDataMessage['decode']=function(_0x36b93b,length){_0x36b93b instanceof $Reader||(_0x36b93b=$Reader['create'](_0x36b93b));let _0x434bb4=void 0x0===length?_0x36b93b['len']:_0x36b93b['pos']+length,_0x296786=new $root['NumberStringPacketDataMessage']();for(;_0x36b93b['pos']<_0x434bb4;){let tag=_0x36b93b['uint32']();switch(tag>>>0x3){case 0x1:_0x296786['data']=_0x36b93b['uint32']();break;case 0x2:_0x296786['data1']=_0x36b93b['string']();break;default:_0x36b93b['skipType'](0x7&tag);}}return _0x296786;},NumberStringPacketDataMessage['decodeDelimited']=function(_0x49fd1a){return _0x49fd1a instanceof $Reader||(_0x49fd1a=new $Reader(_0x49fd1a)),this['decode'](_0x49fd1a,_0x49fd1a['uint32']());},NumberStringPacketDataMessage['verify']=function(_0xbebf6a){return'object'!=typeof _0xbebf6a||null===_0xbebf6a?'object\x20expected':null!=_0xbebf6a['data']&&_0xbebf6a['hasOwnProperty']('data')&&!$util['isInteger'](_0xbebf6a['data'])?'data:\x20integer\x20expected':null!=_0xbebf6a['data1']&&_0xbebf6a['hasOwnProperty']('data1')&&!$util['isString'](_0xbebf6a['data1'])?'data1:\x20string\x20expected':null;},NumberStringPacketDataMessage['fromObject']=function(object){if(object instanceof $root['NumberStringPacketDataMessage'])return object;let _0x67f6a1=new $root['NumberStringPacketDataMessage']();return null!=object['data']&&(_0x67f6a1['data']=object['data']>>>0x0),null!=object['data1']&&(_0x67f6a1['data1']=String(object['data1'])),_0x67f6a1;},NumberStringPacketDataMessage['toObject']=function(_0x1f27a0,options){options||(options={});let object={};return options['defaults']&&(object['data']=0x0,object['data1']=''),null!=_0x1f27a0['data']&&_0x1f27a0['hasOwnProperty']('data')&&(object['data']=_0x1f27a0['data']),null!=_0x1f27a0['data1']&&_0x1f27a0['hasOwnProperty']('data1')&&(object['data1']=_0x1f27a0['data1']),object;},NumberStringPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},NumberStringPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/NumberStringPacketDataMessage';},NumberStringPacketDataMessage;})()),$root['ObjectBufferPacketDataMessage']=((()=>{function ObjectBufferPacketDataMessage(properties){if(properties){for(let _0x3219be=Object['keys'](properties),_0x2cf73e=0x0;_0x2cf73e<_0x3219be['length'];++_0x2cf73e)null!=properties[_0x3219be[_0x2cf73e]]&&(this[_0x3219be[_0x2cf73e]]=properties[_0x3219be[_0x2cf73e]]);}}return ObjectBufferPacketDataMessage['prototype']['data']='',ObjectBufferPacketDataMessage['prototype']['data1']=$util['newBuffer']([]),ObjectBufferPacketDataMessage['create']=function(properties){return new ObjectBufferPacketDataMessage(properties);},ObjectBufferPacketDataMessage['encode']=function(_0x17b470,writer){return writer||(writer=$Writer['create']()),null!=_0x17b470['data']&&Object['hasOwnProperty']['call'](_0x17b470,'data')&&writer['uint32'](0xa)['string'](_0x17b470['data']),null!=_0x17b470['data1']&&Object['hasOwnProperty']['call'](_0x17b470,'data1')&&writer['uint32'](0x12)['bytes'](_0x17b470['data1']),writer;},ObjectBufferPacketDataMessage['encodeDelimited']=function(_0x46e228,writer){return this['encode'](_0x46e228,writer)['ldelim']();},ObjectBufferPacketDataMessage['decode']=function(_0x148508,length){_0x148508 instanceof $Reader||(_0x148508=$Reader['create'](_0x148508));let _0x24c208=void 0x0===length?_0x148508['len']:_0x148508['pos']+length,_0x3fcd56=new $root['ObjectBufferPacketDataMessage']();for(;_0x148508['pos']<_0x24c208;){let tag=_0x148508['uint32']();switch(tag>>>0x3){case 0x1:_0x3fcd56['data']=_0x148508['string']();break;case 0x2:_0x3fcd56['data1']=_0x148508['bytes']();break;default:_0x148508['skipType'](0x7&tag);}}return _0x3fcd56;},ObjectBufferPacketDataMessage['decodeDelimited']=function(_0x31b49f){return _0x31b49f instanceof $Reader||(_0x31b49f=new $Reader(_0x31b49f)),this['decode'](_0x31b49f,_0x31b49f['uint32']());},ObjectBufferPacketDataMessage['verify']=function(_0x2c2bfb){return'object'!=typeof _0x2c2bfb||null===_0x2c2bfb?'object\x20expected':null!=_0x2c2bfb['data']&&_0x2c2bfb['hasOwnProperty']('data')&&!$util['isString'](_0x2c2bfb['data'])?'data:\x20string\x20expected':null!=_0x2c2bfb['data1']&&_0x2c2bfb['hasOwnProperty']('data1')&&!(_0x2c2bfb['data1']&&'number'==typeof _0x2c2bfb['data1']['length']||$util['isString'](_0x2c2bfb['data1']))?'data1:\x20buffer\x20expected':null;},ObjectBufferPacketDataMessage['fromObject']=function(object){if(object instanceof $root['ObjectBufferPacketDataMessage'])return object;let _0x127bb=new $root['ObjectBufferPacketDataMessage']();return null!=object['data']&&(_0x127bb['data']=String(object['data'])),null!=object['data1']&&('string'==typeof object['data1']?$util['base64']['decode'](object['data1'],_0x127bb['data1']=$util['newBuffer']($util['base64']['length'](object['data1'])),0x0):object['data1']['length']>=0x0&&(_0x127bb['data1']=object['data1'])),_0x127bb;},ObjectBufferPacketDataMessage['toObject']=function(_0x65caaf,options){options||(options={});let object={};return options['defaults']&&(object['data']='',options['bytes']===String?object['data1']='':(object['data1']=[],options['bytes']!==Array&&(object['data1']=$util['newBuffer'](object['data1'])))),null!=_0x65caaf['data']&&_0x65caaf['hasOwnProperty']('data')&&(object['data']=_0x65caaf['data']),null!=_0x65caaf['data1']&&_0x65caaf['hasOwnProperty']('data1')&&(object['data1']=options['bytes']===String?$util['base64']['encode'](_0x65caaf['data1'],0x0,_0x65caaf['data1']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x65caaf['data1']):_0x65caaf['data1']),object;},ObjectBufferPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},ObjectBufferPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/ObjectBufferPacketDataMessage';},ObjectBufferPacketDataMessage;})()),$root['ObjectObjectPacketDataMessage']=((()=>{function ObjectObjectPacketDataMessage(properties){if(properties){for(let _0x470425=Object['keys'](properties),_0x5ca210=0x0;_0x5ca210<_0x470425['length'];++_0x5ca210)null!=properties[_0x470425[_0x5ca210]]&&(this[_0x470425[_0x5ca210]]=properties[_0x470425[_0x5ca210]]);}}return ObjectObjectPacketDataMessage['prototype']['data']='',ObjectObjectPacketDataMessage['prototype']['data1']='',ObjectObjectPacketDataMessage['create']=function(properties){return new ObjectObjectPacketDataMessage(properties);},ObjectObjectPacketDataMessage['encode']=function(_0x179e17,writer){return writer||(writer=$Writer['create']()),null!=_0x179e17['data']&&Object['hasOwnProperty']['call'](_0x179e17,'data')&&writer['uint32'](0xa)['string'](_0x179e17['data']),null!=_0x179e17['data1']&&Object['hasOwnProperty']['call'](_0x179e17,'data1')&&writer['uint32'](0x12)['string'](_0x179e17['data1']),writer;},ObjectObjectPacketDataMessage['encodeDelimited']=function(_0x3b8188,writer){return this['encode'](_0x3b8188,writer)['ldelim']();},ObjectObjectPacketDataMessage['decode']=function(_0x5c6370,length){_0x5c6370 instanceof $Reader||(_0x5c6370=$Reader['create'](_0x5c6370));let _0x2b333b=void 0x0===length?_0x5c6370['len']:_0x5c6370['pos']+length,_0x4e9782=new $root['ObjectObjectPacketDataMessage']();for(;_0x5c6370['pos']<_0x2b333b;){let tag=_0x5c6370['uint32']();switch(tag>>>0x3){case 0x1:_0x4e9782['data']=_0x5c6370['string']();break;case 0x2:_0x4e9782['data1']=_0x5c6370['string']();break;default:_0x5c6370['skipType'](0x7&tag);}}return _0x4e9782;},ObjectObjectPacketDataMessage['decodeDelimited']=function(_0xebad6e){return _0xebad6e instanceof $Reader||(_0xebad6e=new $Reader(_0xebad6e)),this['decode'](_0xebad6e,_0xebad6e['uint32']());},ObjectObjectPacketDataMessage['verify']=function(_0x139716){return'object'!=typeof _0x139716||null===_0x139716?'object\x20expected':null!=_0x139716['data']&&_0x139716['hasOwnProperty']('data')&&!$util['isString'](_0x139716['data'])?'data:\x20string\x20expected':null!=_0x139716['data1']&&_0x139716['hasOwnProperty']('data1')&&!$util['isString'](_0x139716['data1'])?'data1:\x20string\x20expected':null;},ObjectObjectPacketDataMessage['fromObject']=function(object){if(object instanceof $root['ObjectObjectPacketDataMessage'])return object;let _0x384f0e=new $root['ObjectObjectPacketDataMessage']();return null!=object['data']&&(_0x384f0e['data']=String(object['data'])),null!=object['data1']&&(_0x384f0e['data1']=String(object['data1'])),_0x384f0e;},ObjectObjectPacketDataMessage['toObject']=function(_0x1ec3be,options){options||(options={});let object={};return options['defaults']&&(object['data']='',object['data1']=''),null!=_0x1ec3be['data']&&_0x1ec3be['hasOwnProperty']('data')&&(object['data']=_0x1ec3be['data']),null!=_0x1ec3be['data1']&&_0x1ec3be['hasOwnProperty']('data1')&&(object['data1']=_0x1ec3be['data1']),object;},ObjectObjectPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},ObjectObjectPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/ObjectObjectPacketDataMessage';},ObjectObjectPacketDataMessage;})()),$root['PacketMessage']=((()=>{function PacketMessage(properties){if(properties){for(let _0x5504a5=Object['keys'](properties),_0x5d3282=0x0;_0x5d3282<_0x5504a5['length'];++_0x5d3282)null!=properties[_0x5504a5[_0x5d3282]]&&(this[_0x5504a5[_0x5d3282]]=properties[_0x5504a5[_0x5d3282]]);}}return PacketMessage['prototype']['type']=0x0,PacketMessage['prototype']['id']=0x0,PacketMessage['prototype']['nsp']='',PacketMessage['prototype']['data']=$util['newBuffer']([]),PacketMessage['prototype']['options']=$util['newBuffer']([]),PacketMessage['create']=function(properties){return new PacketMessage(properties);},PacketMessage['encode']=function(_0x4311cb,writer){return writer||(writer=$Writer['create']()),null!=_0x4311cb['type']&&Object['hasOwnProperty']['call'](_0x4311cb,'type')&&writer['uint32'](0x8)['uint32'](_0x4311cb['type']),null!=_0x4311cb['id']&&Object['hasOwnProperty']['call'](_0x4311cb,'id')&&writer['uint32'](0x10)['uint32'](_0x4311cb['id']),null!=_0x4311cb['nsp']&&Object['hasOwnProperty']['call'](_0x4311cb,'nsp')&&writer['uint32'](0x1a)['string'](_0x4311cb['nsp']),null!=_0x4311cb['data']&&Object['hasOwnProperty']['call'](_0x4311cb,'data')&&writer['uint32'](0x22)['bytes'](_0x4311cb['data']),null!=_0x4311cb['options']&&Object['hasOwnProperty']['call'](_0x4311cb,'options')&&writer['uint32'](0x2a)['bytes'](_0x4311cb['options']),writer;},PacketMessage['encodeDelimited']=function(_0x53504f,writer){return this['encode'](_0x53504f,writer)['ldelim']();},PacketMessage['decode']=function(_0xf251a3,length){_0xf251a3 instanceof $Reader||(_0xf251a3=$Reader['create'](_0xf251a3));let _0xf690c6=void 0x0===length?_0xf251a3['len']:_0xf251a3['pos']+length,_0x536c5e=new $root['PacketMessage']();for(;_0xf251a3['pos']<_0xf690c6;){let tag=_0xf251a3['uint32']();switch(tag>>>0x3){case 0x1:_0x536c5e['type']=_0xf251a3['uint32']();break;case 0x2:_0x536c5e['id']=_0xf251a3['uint32']();break;case 0x3:_0x536c5e['nsp']=_0xf251a3['string']();break;case 0x4:_0x536c5e['data']=_0xf251a3['bytes']();break;case 0x5:_0x536c5e['options']=_0xf251a3['bytes']();break;default:_0xf251a3['skipType'](0x7&tag);}}return _0x536c5e;},PacketMessage['decodeDelimited']=function(_0x47beea){return _0x47beea instanceof $Reader||(_0x47beea=new $Reader(_0x47beea)),this['decode'](_0x47beea,_0x47beea['uint32']());},PacketMessage['verify']=function(_0x12dd08){return'object'!=typeof _0x12dd08||null===_0x12dd08?'object\x20expected':null!=_0x12dd08['type']&&_0x12dd08['hasOwnProperty']('type')&&!$util['isInteger'](_0x12dd08['type'])?'type:\x20integer\x20expected':null!=_0x12dd08['id']&&_0x12dd08['hasOwnProperty']('id')&&!$util['isInteger'](_0x12dd08['id'])?'id:\x20integer\x20expected':null!=_0x12dd08['nsp']&&_0x12dd08['hasOwnProperty']('nsp')&&!$util['isString'](_0x12dd08['nsp'])?'nsp:\x20string\x20expected':null!=_0x12dd08['data']&&_0x12dd08['hasOwnProperty']('data')&&!(_0x12dd08['data']&&'number'==typeof _0x12dd08['data']['length']||$util['isString'](_0x12dd08['data']))?'data:\x20buffer\x20expected':null!=_0x12dd08['options']&&_0x12dd08['hasOwnProperty']('options')&&!(_0x12dd08['options']&&'number'==typeof _0x12dd08['options']['length']||$util['isString'](_0x12dd08['options']))?'options:\x20buffer\x20expected':null;},PacketMessage['fromObject']=function(object){if(object instanceof $root['PacketMessage'])return object;let _0x1a2b32=new $root['PacketMessage']();return null!=object['type']&&(_0x1a2b32['type']=object['type']>>>0x0),null!=object['id']&&(_0x1a2b32['id']=object['id']>>>0x0),null!=object['nsp']&&(_0x1a2b32['nsp']=String(object['nsp'])),null!=object['data']&&('string'==typeof object['data']?$util['base64']['decode'](object['data'],_0x1a2b32['data']=$util['newBuffer']($util['base64']['length'](object['data'])),0x0):object['data']['length']>=0x0&&(_0x1a2b32['data']=object['data'])),null!=object['options']&&('string'==typeof object['options']?$util['base64']['decode'](object['options'],_0x1a2b32['options']=$util['newBuffer']($util['base64']['length'](object['options'])),0x0):object['options']['length']>=0x0&&(_0x1a2b32['options']=object['options'])),_0x1a2b32;},PacketMessage['toObject']=function(_0x5c2d7e,options){options||(options={});let object={};return options['defaults']&&(object['type']=0x0,object['id']=0x0,object['nsp']='',options['bytes']===String?object['data']='':(object['data']=[],options['bytes']!==Array&&(object['data']=$util['newBuffer'](object['data']))),options['bytes']===String?object['options']='':(object['options']=[],options['bytes']!==Array&&(object['options']=$util['newBuffer'](object['options'])))),null!=_0x5c2d7e['type']&&_0x5c2d7e['hasOwnProperty']('type')&&(object['type']=_0x5c2d7e['type']),null!=_0x5c2d7e['id']&&_0x5c2d7e['hasOwnProperty']('id')&&(object['id']=_0x5c2d7e['id']),null!=_0x5c2d7e['nsp']&&_0x5c2d7e['hasOwnProperty']('nsp')&&(object['nsp']=_0x5c2d7e['nsp']),null!=_0x5c2d7e['data']&&_0x5c2d7e['hasOwnProperty']('data')&&(object['data']=options['bytes']===String?$util['base64']['encode'](_0x5c2d7e['data'],0x0,_0x5c2d7e['data']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x5c2d7e['data']):_0x5c2d7e['data']),null!=_0x5c2d7e['options']&&_0x5c2d7e['hasOwnProperty']('options')&&(object['options']=options['bytes']===String?$util['base64']['encode'](_0x5c2d7e['options'],0x0,_0x5c2d7e['options']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x5c2d7e['options']):_0x5c2d7e['options']),object;},PacketMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},PacketMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/PacketMessage';},PacketMessage;})()),$root['PacketOptionsMessage']=((()=>{function PacketOptionsMessage(properties){if(this['rooms']=[],this['except']=[],properties){for(let _0x4cfdff=Object['keys'](properties),_0x1e74b0=0x0;_0x1e74b0<_0x4cfdff['length'];++_0x1e74b0)null!=properties[_0x4cfdff[_0x1e74b0]]&&(this[_0x4cfdff[_0x1e74b0]]=properties[_0x4cfdff[_0x1e74b0]]);}}return PacketOptionsMessage['prototype']['flags']='',PacketOptionsMessage['prototype']['rooms']=$util['emptyArray'],PacketOptionsMessage['prototype']['except']=$util['emptyArray'],PacketOptionsMessage['create']=function(properties){return new PacketOptionsMessage(properties);},PacketOptionsMessage['encode']=function(_0x21f53a,writer){if(writer||(writer=$Writer['create']()),null!=_0x21f53a['flags']&&Object['hasOwnProperty']['call'](_0x21f53a,'flags')&&writer['uint32'](0xa)['string'](_0x21f53a['flags']),null!=_0x21f53a['rooms']&&_0x21f53a['rooms']['length']){for(let _0x269d8d=0x0;_0x269d8d<_0x21f53a['rooms']['length'];++_0x269d8d)writer['uint32'](0x12)['string'](_0x21f53a['rooms'][_0x269d8d]);}if(null!=_0x21f53a['except']&&_0x21f53a['except']['length']){for(let _0x310722=0x0;_0x310722<_0x21f53a['except']['length'];++_0x310722)writer['uint32'](0x1a)['string'](_0x21f53a['except'][_0x310722]);}return writer;},PacketOptionsMessage['encodeDelimited']=function(_0x4f9b46,writer){return this['encode'](_0x4f9b46,writer)['ldelim']();},PacketOptionsMessage['decode']=function(_0xe862fa,length){_0xe862fa instanceof $Reader||(_0xe862fa=$Reader['create'](_0xe862fa));let _0x5189ce=void 0x0===length?_0xe862fa['len']:_0xe862fa['pos']+length,_0x302466=new $root['PacketOptionsMessage']();for(;_0xe862fa['pos']<_0x5189ce;){let tag=_0xe862fa['uint32']();switch(tag>>>0x3){case 0x1:_0x302466['flags']=_0xe862fa['string']();break;case 0x2:_0x302466['rooms']&&_0x302466['rooms']['length']||(_0x302466['rooms']=[]),_0x302466['rooms']['push'](_0xe862fa['string']());break;case 0x3:_0x302466['except']&&_0x302466['except']['length']||(_0x302466['except']=[]),_0x302466['except']['push'](_0xe862fa['string']());break;default:_0xe862fa['skipType'](0x7&tag);}}return _0x302466;},PacketOptionsMessage['decodeDelimited']=function(_0x182bee){return _0x182bee instanceof $Reader||(_0x182bee=new $Reader(_0x182bee)),this['decode'](_0x182bee,_0x182bee['uint32']());},PacketOptionsMessage['verify']=function(_0x913b46){if('object'!=typeof _0x913b46||null===_0x913b46)return'object\x20expected';if(null!=_0x913b46['flags']&&_0x913b46['hasOwnProperty']('flags')&&!$util['isString'](_0x913b46['flags']))return'flags:\x20string\x20expected';if(null!=_0x913b46['rooms']&&_0x913b46['hasOwnProperty']('rooms')){if(!Array['isArray'](_0x913b46['rooms']))return'rooms:\x20array\x20expected';for(let _0x14bcb0=0x0;_0x14bcb0<_0x913b46['rooms']['length'];++_0x14bcb0)if(!$util['isString'](_0x913b46['rooms'][_0x14bcb0]))return'rooms:\x20string[]\x20expected';}if(null!=_0x913b46['except']&&_0x913b46['hasOwnProperty']('except')){if(!Array['isArray'](_0x913b46['except']))return'except:\x20array\x20expected';for(let _0x9f2530=0x0;_0x9f2530<_0x913b46['except']['length'];++_0x9f2530)if(!$util['isString'](_0x913b46['except'][_0x9f2530]))return'except:\x20string[]\x20expected';}return null;},PacketOptionsMessage['fromObject']=function(object){if(object instanceof $root['PacketOptionsMessage'])return object;let _0x275151=new $root['PacketOptionsMessage']();if(null!=object['flags']&&(_0x275151['flags']=String(object['flags'])),object['rooms']){if(!Array['isArray'](object['rooms']))throw TypeError('.PacketOptionsMessage.rooms:\x20array\x20expected');_0x275151['rooms']=[];for(let _0x9c0903=0x0;_0x9c0903<object['rooms']['length'];++_0x9c0903)_0x275151['rooms'][_0x9c0903]=String(object['rooms'][_0x9c0903]);}if(object['except']){if(!Array['isArray'](object['except']))throw TypeError('.PacketOptionsMessage.except:\x20array\x20expected');_0x275151['except']=[];for(let _0x2131f7=0x0;_0x2131f7<object['except']['length'];++_0x2131f7)_0x275151['except'][_0x2131f7]=String(object['except'][_0x2131f7]);}return _0x275151;},PacketOptionsMessage['toObject']=function(_0x84df82,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['rooms']=[],object['except']=[]),options['defaults']&&(object['flags']=''),null!=_0x84df82['flags']&&_0x84df82['hasOwnProperty']('flags')&&(object['flags']=_0x84df82['flags']),_0x84df82['rooms']&&_0x84df82['rooms']['length']){object['rooms']=[];for(let _0x2bd44f=0x0;_0x2bd44f<_0x84df82['rooms']['length'];++_0x2bd44f)object['rooms'][_0x2bd44f]=_0x84df82['rooms'][_0x2bd44f];}if(_0x84df82['except']&&_0x84df82['except']['length']){object['except']=[];for(let _0xa6fda0=0x0;_0xa6fda0<_0x84df82['except']['length'];++_0xa6fda0)object['except'][_0xa6fda0]=_0x84df82['except'][_0xa6fda0];}return object;},PacketOptionsMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},PacketOptionsMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/PacketOptionsMessage';},PacketOptionsMessage;})()),$root['StringBytesPacketDataMessage']=((()=>{function StringBytesPacketDataMessage(properties){if(properties){for(let _0x59c5ff=Object['keys'](properties),_0x924982=0x0;_0x924982<_0x59c5ff['length'];++_0x924982)null!=properties[_0x59c5ff[_0x924982]]&&(this[_0x59c5ff[_0x924982]]=properties[_0x59c5ff[_0x924982]]);}}return StringBytesPacketDataMessage['prototype']['data']='',StringBytesPacketDataMessage['prototype']['data1']=$util['newBuffer']([]),StringBytesPacketDataMessage['create']=function(properties){return new StringBytesPacketDataMessage(properties);},StringBytesPacketDataMessage['encode']=function(_0x76152d,writer){return writer||(writer=$Writer['create']()),null!=_0x76152d['data']&&Object['hasOwnProperty']['call'](_0x76152d,'data')&&writer['uint32'](0xa)['string'](_0x76152d['data']),null!=_0x76152d['data1']&&Object['hasOwnProperty']['call'](_0x76152d,'data1')&&writer['uint32'](0x12)['bytes'](_0x76152d['data1']),writer;},StringBytesPacketDataMessage['encodeDelimited']=function(_0x232502,writer){return this['encode'](_0x232502,writer)['ldelim']();},StringBytesPacketDataMessage['decode']=function(_0x1cbc9e,length){_0x1cbc9e instanceof $Reader||(_0x1cbc9e=$Reader['create'](_0x1cbc9e));let _0x14bd30=void 0x0===length?_0x1cbc9e['len']:_0x1cbc9e['pos']+length,_0x500d4b=new $root['StringBytesPacketDataMessage']();for(;_0x1cbc9e['pos']<_0x14bd30;){let tag=_0x1cbc9e['uint32']();switch(tag>>>0x3){case 0x1:_0x500d4b['data']=_0x1cbc9e['string']();break;case 0x2:_0x500d4b['data1']=_0x1cbc9e['bytes']();break;default:_0x1cbc9e['skipType'](0x7&tag);}}return _0x500d4b;},StringBytesPacketDataMessage['decodeDelimited']=function(_0x3ff43f){return _0x3ff43f instanceof $Reader||(_0x3ff43f=new $Reader(_0x3ff43f)),this['decode'](_0x3ff43f,_0x3ff43f['uint32']());},StringBytesPacketDataMessage['verify']=function(_0x4ea34a){return'object'!=typeof _0x4ea34a||null===_0x4ea34a?'object\x20expected':null!=_0x4ea34a['data']&&_0x4ea34a['hasOwnProperty']('data')&&!$util['isString'](_0x4ea34a['data'])?'data:\x20string\x20expected':null!=_0x4ea34a['data1']&&_0x4ea34a['hasOwnProperty']('data1')&&!(_0x4ea34a['data1']&&'number'==typeof _0x4ea34a['data1']['length']||$util['isString'](_0x4ea34a['data1']))?'data1:\x20buffer\x20expected':null;},StringBytesPacketDataMessage['fromObject']=function(object){if(object instanceof $root['StringBytesPacketDataMessage'])return object;let _0x6693fa=new $root['StringBytesPacketDataMessage']();return null!=object['data']&&(_0x6693fa['data']=String(object['data'])),null!=object['data1']&&('string'==typeof object['data1']?$util['base64']['decode'](object['data1'],_0x6693fa['data1']=$util['newBuffer']($util['base64']['length'](object['data1'])),0x0):object['data1']['length']>=0x0&&(_0x6693fa['data1']=object['data1'])),_0x6693fa;},StringBytesPacketDataMessage['toObject']=function(_0xeeb517,options){options||(options={});let object={};return options['defaults']&&(object['data']='',options['bytes']===String?object['data1']='':(object['data1']=[],options['bytes']!==Array&&(object['data1']=$util['newBuffer'](object['data1'])))),null!=_0xeeb517['data']&&_0xeeb517['hasOwnProperty']('data')&&(object['data']=_0xeeb517['data']),null!=_0xeeb517['data1']&&_0xeeb517['hasOwnProperty']('data1')&&(object['data1']=options['bytes']===String?$util['base64']['encode'](_0xeeb517['data1'],0x0,_0xeeb517['data1']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0xeeb517['data1']):_0xeeb517['data1']),object;},StringBytesPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},StringBytesPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/StringBytesPacketDataMessage';},StringBytesPacketDataMessage;})()),$root['StringNumberPacketDataMessage']=((()=>{function StringNumberPacketDataMessage(properties){if(properties){for(let _0x4935a9=Object['keys'](properties),_0x10981f=0x0;_0x10981f<_0x4935a9['length'];++_0x10981f)null!=properties[_0x4935a9[_0x10981f]]&&(this[_0x4935a9[_0x10981f]]=properties[_0x4935a9[_0x10981f]]);}}return StringNumberPacketDataMessage['prototype']['data']='',StringNumberPacketDataMessage['prototype']['data1']=0x0,StringNumberPacketDataMessage['create']=function(properties){return new StringNumberPacketDataMessage(properties);},StringNumberPacketDataMessage['encode']=function(_0x35a5bd,writer){return writer||(writer=$Writer['create']()),null!=_0x35a5bd['data']&&Object['hasOwnProperty']['call'](_0x35a5bd,'data')&&writer['uint32'](0xa)['string'](_0x35a5bd['data']),null!=_0x35a5bd['data1']&&Object['hasOwnProperty']['call'](_0x35a5bd,'data1')&&writer['uint32'](0x10)['uint32'](_0x35a5bd['data1']),writer;},StringNumberPacketDataMessage['encodeDelimited']=function(_0x35e907,writer){return this['encode'](_0x35e907,writer)['ldelim']();},StringNumberPacketDataMessage['decode']=function(_0x3969ef,length){_0x3969ef instanceof $Reader||(_0x3969ef=$Reader['create'](_0x3969ef));let _0x4c676c=void 0x0===length?_0x3969ef['len']:_0x3969ef['pos']+length,_0x542018=new $root['StringNumberPacketDataMessage']();for(;_0x3969ef['pos']<_0x4c676c;){let tag=_0x3969ef['uint32']();switch(tag>>>0x3){case 0x1:_0x542018['data']=_0x3969ef['string']();break;case 0x2:_0x542018['data1']=_0x3969ef['uint32']();break;default:_0x3969ef['skipType'](0x7&tag);}}return _0x542018;},StringNumberPacketDataMessage['decodeDelimited']=function(_0x41c23d){return _0x41c23d instanceof $Reader||(_0x41c23d=new $Reader(_0x41c23d)),this['decode'](_0x41c23d,_0x41c23d['uint32']());},StringNumberPacketDataMessage['verify']=function(_0x28af2f){return'object'!=typeof _0x28af2f||null===_0x28af2f?'object\x20expected':null!=_0x28af2f['data']&&_0x28af2f['hasOwnProperty']('data')&&!$util['isString'](_0x28af2f['data'])?'data:\x20string\x20expected':null!=_0x28af2f['data1']&&_0x28af2f['hasOwnProperty']('data1')&&!$util['isInteger'](_0x28af2f['data1'])?'data1:\x20integer\x20expected':null;},StringNumberPacketDataMessage['fromObject']=function(object){if(object instanceof $root['StringNumberPacketDataMessage'])return object;let _0x1555c0=new $root['StringNumberPacketDataMessage']();return null!=object['data']&&(_0x1555c0['data']=String(object['data'])),null!=object['data1']&&(_0x1555c0['data1']=object['data1']>>>0x0),_0x1555c0;},StringNumberPacketDataMessage['toObject']=function(_0x33c930,options){options||(options={});let object={};return options['defaults']&&(object['data']='',object['data1']=0x0),null!=_0x33c930['data']&&_0x33c930['hasOwnProperty']('data')&&(object['data']=_0x33c930['data']),null!=_0x33c930['data1']&&_0x33c930['hasOwnProperty']('data1')&&(object['data1']=_0x33c930['data1']),object;},StringNumberPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},StringNumberPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/StringNumberPacketDataMessage';},StringNumberPacketDataMessage;})()),$root['StringObjectPacketDataMessage']=((()=>{function StringObjectPacketDataMessage(properties){if(properties){for(let _0x4d7d1a=Object['keys'](properties),_0x29ee3a=0x0;_0x29ee3a<_0x4d7d1a['length'];++_0x29ee3a)null!=properties[_0x4d7d1a[_0x29ee3a]]&&(this[_0x4d7d1a[_0x29ee3a]]=properties[_0x4d7d1a[_0x29ee3a]]);}}return StringObjectPacketDataMessage['prototype']['data']='',StringObjectPacketDataMessage['prototype']['data1']='',StringObjectPacketDataMessage['create']=function(properties){return new StringObjectPacketDataMessage(properties);},StringObjectPacketDataMessage['encode']=function(_0x29a97,writer){return writer||(writer=$Writer['create']()),null!=_0x29a97['data']&&Object['hasOwnProperty']['call'](_0x29a97,'data')&&writer['uint32'](0xa)['string'](_0x29a97['data']),null!=_0x29a97['data1']&&Object['hasOwnProperty']['call'](_0x29a97,'data1')&&writer['uint32'](0x12)['string'](_0x29a97['data1']),writer;},StringObjectPacketDataMessage['encodeDelimited']=function(_0x1bb2e4,writer){return this['encode'](_0x1bb2e4,writer)['ldelim']();},StringObjectPacketDataMessage['decode']=function(_0x4b20eb,length){_0x4b20eb instanceof $Reader||(_0x4b20eb=$Reader['create'](_0x4b20eb));let _0x530ebb=void 0x0===length?_0x4b20eb['len']:_0x4b20eb['pos']+length,_0x22acf8=new $root['StringObjectPacketDataMessage']();for(;_0x4b20eb['pos']<_0x530ebb;){let tag=_0x4b20eb['uint32']();switch(tag>>>0x3){case 0x1:_0x22acf8['data']=_0x4b20eb['string']();break;case 0x2:_0x22acf8['data1']=_0x4b20eb['string']();break;default:_0x4b20eb['skipType'](0x7&tag);}}return _0x22acf8;},StringObjectPacketDataMessage['decodeDelimited']=function(_0x5e6f15){return _0x5e6f15 instanceof $Reader||(_0x5e6f15=new $Reader(_0x5e6f15)),this['decode'](_0x5e6f15,_0x5e6f15['uint32']());},StringObjectPacketDataMessage['verify']=function(_0x49bcf5){return'object'!=typeof _0x49bcf5||null===_0x49bcf5?'object\x20expected':null!=_0x49bcf5['data']&&_0x49bcf5['hasOwnProperty']('data')&&!$util['isString'](_0x49bcf5['data'])?'data:\x20string\x20expected':null!=_0x49bcf5['data1']&&_0x49bcf5['hasOwnProperty']('data1')&&!$util['isString'](_0x49bcf5['data1'])?'data1:\x20string\x20expected':null;},StringObjectPacketDataMessage['fromObject']=function(object){if(object instanceof $root['StringObjectPacketDataMessage'])return object;let _0xb15c0=new $root['StringObjectPacketDataMessage']();return null!=object['data']&&(_0xb15c0['data']=String(object['data'])),null!=object['data1']&&(_0xb15c0['data1']=String(object['data1'])),_0xb15c0;},StringObjectPacketDataMessage['toObject']=function(_0x529327,options){options||(options={});let object={};return options['defaults']&&(object['data']='',object['data1']=''),null!=_0x529327['data']&&_0x529327['hasOwnProperty']('data')&&(object['data']=_0x529327['data']),null!=_0x529327['data1']&&_0x529327['hasOwnProperty']('data1')&&(object['data1']=_0x529327['data1']),object;},StringObjectPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},StringObjectPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/StringObjectPacketDataMessage';},StringObjectPacketDataMessage;})()),$root['StringStringPacketDataMessage']=((()=>{function StringStringPacketDataMessage(properties){if(properties){for(let _0x289313=Object['keys'](properties),_0x248679=0x0;_0x248679<_0x289313['length'];++_0x248679)null!=properties[_0x289313[_0x248679]]&&(this[_0x289313[_0x248679]]=properties[_0x289313[_0x248679]]);}}return StringStringPacketDataMessage['prototype']['data']='',StringStringPacketDataMessage['prototype']['data1']='',StringStringPacketDataMessage['create']=function(properties){return new StringStringPacketDataMessage(properties);},StringStringPacketDataMessage['encode']=function(_0x389139,writer){return writer||(writer=$Writer['create']()),null!=_0x389139['data']&&Object['hasOwnProperty']['call'](_0x389139,'data')&&writer['uint32'](0xa)['string'](_0x389139['data']),null!=_0x389139['data1']&&Object['hasOwnProperty']['call'](_0x389139,'data1')&&writer['uint32'](0x12)['string'](_0x389139['data1']),writer;},StringStringPacketDataMessage['encodeDelimited']=function(_0x20655e,writer){return this['encode'](_0x20655e,writer)['ldelim']();},StringStringPacketDataMessage['decode']=function(_0x18857f,length){_0x18857f instanceof $Reader||(_0x18857f=$Reader['create'](_0x18857f));let _0x55e209=void 0x0===length?_0x18857f['len']:_0x18857f['pos']+length,_0x3801a1=new $root['StringStringPacketDataMessage']();for(;_0x18857f['pos']<_0x55e209;){let tag=_0x18857f['uint32']();switch(tag>>>0x3){case 0x1:_0x3801a1['data']=_0x18857f['string']();break;case 0x2:_0x3801a1['data1']=_0x18857f['string']();break;default:_0x18857f['skipType'](0x7&tag);}}return _0x3801a1;},StringStringPacketDataMessage['decodeDelimited']=function(_0x2a8ea6){return _0x2a8ea6 instanceof $Reader||(_0x2a8ea6=new $Reader(_0x2a8ea6)),this['decode'](_0x2a8ea6,_0x2a8ea6['uint32']());},StringStringPacketDataMessage['verify']=function(_0x274d27){return'object'!=typeof _0x274d27||null===_0x274d27?'object\x20expected':null!=_0x274d27['data']&&_0x274d27['hasOwnProperty']('data')&&!$util['isString'](_0x274d27['data'])?'data:\x20string\x20expected':null!=_0x274d27['data1']&&_0x274d27['hasOwnProperty']('data1')&&!$util['isString'](_0x274d27['data1'])?'data1:\x20string\x20expected':null;},StringStringPacketDataMessage['fromObject']=function(object){if(object instanceof $root['StringStringPacketDataMessage'])return object;let _0x335835=new $root['StringStringPacketDataMessage']();return null!=object['data']&&(_0x335835['data']=String(object['data'])),null!=object['data1']&&(_0x335835['data1']=String(object['data1'])),_0x335835;},StringStringPacketDataMessage['toObject']=function(_0x116f05,options){options||(options={});let object={};return options['defaults']&&(object['data']='',object['data1']=''),null!=_0x116f05['data']&&_0x116f05['hasOwnProperty']('data')&&(object['data']=_0x116f05['data']),null!=_0x116f05['data1']&&_0x116f05['hasOwnProperty']('data1')&&(object['data1']=_0x116f05['data1']),object;},StringStringPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},StringStringPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/StringStringPacketDataMessage';},StringStringPacketDataMessage;})());class MessagesCompressor{static['decode'](_0x5c101e,_0x54ec41){const data=_getType(_0x54ec41)['decode']('undefined'==typeof window?_0x5c101e:new Uint8Array(_0x5c101e));return _0x54ec41['fromJSON']({...data});}static['encode'](_0x3d77d4){const protobufMessage=_getType(_0x3d77d4['constructor']),data=_0x3d77d4['toJSON'](),_0x3095c3=protobufMessage['verify'](data);if(_0x3095c3)throw Error(_0x3095c3);return protobufMessage['encode'](protobufMessage['create'](data))['finish']();}}function _getType(_0x166c93){return $root[_0x166c93['DESCRIPTOR_NAME']];}class Channel extends EmitterMixin(){constructor(_0x2c629f,_wsGateway,_socket){super(),this['_channelName']=_0x2c629f,this['_wsGateway']=_wsGateway,this['_socket']=_socket,this['_subscribeToChannel']();}['remove'](){this['_socket']['off'](this['_channelName']);}['getEventName'](eventName,_0x45b3fb=!0x1){let fullEventName='';return _0x45b3fb&&(fullEventName+='all:'),fullEventName+='event',eventName&&(fullEventName+=':'+eventName),fullEventName;}['_subscribeToChannel'](){this['_socket']['on'](this['_channelName'],_0x2f466b=>{const _0x5db8a1=MessagesCompressor['decode'](_0x2f466b,ChannelMessage);this['fire'](this['getEventName'](_0x5db8a1['type'],!0x0),_0x5db8a1['data'],_0x5db8a1['socketId']),_0x5db8a1['socketId']!==this['_wsGateway']['socketId']&&this['fire'](this['getEventName'](_0x5db8a1['type']),_0x5db8a1['data'],_0x5db8a1['socketId']);});}}class GetUserMessage extends Message{static{this['TYPE']='21';}static{this['READABLE_TYPE_NAME']='getUser';}static{this['DESCRIPTOR_NAME']='GetUserMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1}}};}constructor(_0x5391ce){super(),this['id']=_0x5391ce;}['toJSON'](){return{'id':this['id']};}static['fromJSON'](data){return new GetUserMessage(data['id']);}}class GetUserResponse extends Message{static{this['DESCRIPTOR_NAME']='GetUserResponse';}static{this['DESCRIPTOR']={'fields':{'attributes':{'rule':'repeated','type':'KeyValueDescriptor','id':0x1}}};}constructor(attributes){super(),this['attributes']=attributes;}['toJSON'](){return{'attributes':Object['keys'](this['attributes'])['map'](_0x1d5985=>({'key':_0x1d5985,'value':JSON['stringify'](this['attributes'][_0x1d5985])}))};}static['fromJSON'](data){const attributes=data['attributes']['reduce']((result,_0x5225f4)=>(result[_0x5225f4['key']]=_0x5225f4['value']?JSON['parse'](_0x5225f4['value']):null,result),{});return new GetUserResponse(attributes);}}class GetManyUsersMessage extends Message{static{this['TYPE']='22';}static{this['READABLE_TYPE_NAME']='getManyUsers';}static{this['DESCRIPTOR_NAME']='GetManyUsersMessage';}static{this['DESCRIPTOR']={'fields':{'ids':{'id':0x1,'type':'string','rule':'repeated'}}};}constructor(_0x232082){super(),this['ids']=_0x232082;}['toJSON'](){return{'ids':this['ids']};}static['fromJSON'](data){return new GetManyUsersMessage(data['ids']);}}class GetManyUsersResponse extends Message{static{this['DESCRIPTOR_NAME']='GetManyUsersResponse';}static{this['DESCRIPTOR']={'fields':{'users':{'rule':'repeated','type':'UserDescriptor','id':0x1}}};}constructor(_0x5ea7d6){super(),this['users']=_0x5ea7d6;}['toJSON'](){return{'users':this['users']['map'](_userToJson)};}static['fromJSON'](data){return new GetManyUsersResponse(data['users']['map'](_userFromJson));}}function _userToJson(_0x53f912){return{'attributes':Object['keys'](_0x53f912)['map'](_0x13ee68=>({'key':_0x13ee68,'value':JSON['stringify'](_0x53f912[_0x13ee68])}))};}function _userFromJson(data){return data['attributes']['reduce']((result,_0x557719)=>(result[_0x557719['key']]=_0x557719['value']?JSON['parse'](_0x557719['value']):null,result),{});}class User{static{this['_SERVICE']=0x2;}constructor(attributes={}){this['_attributes']=new Map();for(const _0xd9335c of Object['keys'](attributes))'id'!==_0xd9335c?(this['_attributes']['set'](_0xd9335c,attributes[_0xd9335c]),Object['defineProperty'](this,_0xd9335c,{'enumerable':!0x0,'configurable':!0x1,'get':()=>this['_attributes']['get'](_0xd9335c)})):this['id']=attributes['id'];}static['fromData'](data){return new User(data);}static async['get'](wsGateway,_0x4d4dad){const _0x25e343=new GetUserMessage(_0x4d4dad);try{const _0x2de6b0=await wsGateway['_sendRequest'](User['_SERVICE'],GetUserMessage['TYPE'],MessagesCompressor['encode'](_0x25e343)),getUserResponse=MessagesCompressor['decode'](_0x2de6b0,GetUserResponse);return new User(getUserResponse['attributes']);}catch(_0x5edc6c){return new User({'id':_0x4d4dad});}}static async['getMany'](wsGateway,_0x3e33e2){const _0x26e490=new GetManyUsersMessage(_0x3e33e2);try{const _0x1f8c49=await wsGateway['_sendRequest'](User['_SERVICE'],GetManyUsersMessage['TYPE'],MessagesCompressor['encode'](_0x26e490));return MessagesCompressor['decode'](_0x1f8c49,GetManyUsersResponse)['users']['map'](_0x42a918=>new User(_0x42a918));}catch(_0x3ef8ec){return _0x3e33e2['map'](_0x2a54c1=>new User({'id':_0x2a54c1}));}}}class CKEditorCloudServicesError extends Error{constructor(_0xc51996,context,_0x15708f=null,data={}){super('cloud-services-internal-error:\x20'+_0xc51996),this['context']=context,this['code']=_0x15708f,this['data']=data,this['name']='CKEditorError';}static['fromPublicError'](_0x250500){return new CKEditorCloudServicesError(function(_0x2fa009){let _0x33f2ec='cloud-services-error:\x20'+_0x2fa009['message'];return _0x2fa009['data']&&(_0x33f2ec+='\x0aError\x20data:\x20'+JSON['stringify'](_0x2fa009['data'])),_0x2fa009['explanation']&&(_0x33f2ec+='\x0aExplanation:\x20'+_0x2fa009['explanation']),_0x2fa009['action']&&(_0x33f2ec+='\x0aAction:\x20'+_0x2fa009['action']),_0x2fa009['traceId']&&(_0x33f2ec+='\x0aTraceId:\x20'+_0x2fa009['traceId']),_0x2fa009['code']&&(_0x33f2ec+='\x0aCode:\x20'+_0x2fa009['code']),_0x33f2ec;}(_0x250500),_0x250500);}}class CKEditorCloudServicesServerError extends Error{constructor(_0x549a21,_0x67fbb4){super(),this['name']='CKEditorCloudServicesServerError',this['stack']=void 0x0,this['message']=_0x549a21,this['code']=_0x67fbb4['code'],this['traceId']=_0x67fbb4['traceId'],this['data']=_0x67fbb4['data'];}static['fromPublicError'](_0x2a5515){return new CKEditorCloudServicesServerError(function(_0x3a3c4a){let _0x47969d='cloud-services-server-error:\x20'+_0x3a3c4a['message'];return _0x3a3c4a['explanation']&&(_0x47969d+='\x0aExplanation:\x20'+_0x3a3c4a['explanation']),_0x3a3c4a['action']&&(_0x47969d+='\x0aAction:\x20'+_0x3a3c4a['action']),_0x3a3c4a['traceId']&&(_0x47969d+='\x0aTraceId:\x20'+_0x3a3c4a['traceId']),_0x3a3c4a['code']&&(_0x47969d+='\x0aCode:\x20'+_0x3a3c4a['code']),_0x47969d;}(_0x2a5515),_0x2a5515);}}class PacketOptionsMessage extends Message{static{this['TYPE']=0xb;}static{this['DESCRIPTOR_NAME']='PacketOptionsMessage';}static{this['DESCRIPTOR']={'fields':{'flags':{'type':'string','id':0x1},'rooms':{'type':'string','id':0x2,'rule':'repeated'},'except':{'type':'string','id':0x3,'rule':'repeated'}}};}constructor(_0x286c2d,_0x5ad15c=[],except=[]){super(),this['flags']=_0x286c2d,this['rooms']=_0x5ad15c,this['except']=except;}['toJSON'](){return{'flags':this['flags']?JSON['stringify'](this['flags']):void 0x0,'rooms':this['rooms']?.['length']?this['rooms']:void 0x0,'except':this['except']?.['length']?this['except']:void 0x0};}static['fromJSON'](data){return new PacketOptionsMessage(data['flags']&&JSON['parse'](data['flags']),data['rooms'],data['except']);}}const IS_NODE=!('undefined'==typeof process||!process['versions']||!process['versions']['node']);var MessageDataTypes;!function(MessageDataTypes){MessageDataTypes[MessageDataTypes['BUFFER']=0x1]='BUFFER',MessageDataTypes[MessageDataTypes['STRING']=0x2]='STRING',MessageDataTypes[MessageDataTypes['NUMBER']=0x3]='NUMBER',MessageDataTypes[MessageDataTypes['OBJECT']=0x4]='OBJECT';}(MessageDataTypes||(MessageDataTypes={}));class ParserUtils{static['getPacketType'](...types){let _0x39ea41=0x0;for(let _0x28f120=0x0;_0x28f120<types['length'];_0x28f120++){_0x39ea41+=types[_0x28f120]*Math['pow'](0xa,types['length']-_0x28f120-0x1);}return _0x39ea41;}static['getType'](_0x279a2f){if(ParserUtils['isBuffer'](_0x279a2f))return 0x1;const type=typeof _0x279a2f;return'string'===type?0x2:'number'===type?0x3:0x4;}static['isBuffer'](_0x4ab626){return IS_NODE&&Buffer['isBuffer'](_0x4ab626)||_0x4ab626 instanceof ArrayBuffer||_0x4ab626 instanceof Uint8Array||this['_isBufferView'](_0x4ab626);}static['_isBufferView'](_0x2c3971){return'function'==typeof ArrayBuffer['isView']?ArrayBuffer['isView'](_0x2c3971):_0x2c3971['buffer']instanceof ArrayBuffer;}}class PackageDataMessage extends Message{static['create'](data,data1){throw new TypeError('Must\x20be\x20implemented\x20in\x20a\x20child\x20class!');}}class NumberBytesPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['NUMBER'],MessageDataTypes['BUFFER']);}static{this['DESCRIPTOR_NAME']='NumberBytesPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'uint32','id':0x1},'data1':{'type':'bytes','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new NumberBytesPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new NumberBytesPacketDataMessage(data,data1);}}class StringBytesPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['STRING'],MessageDataTypes['BUFFER']);}static{this['DESCRIPTOR_NAME']='StringBytesPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'bytes','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new StringBytesPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new StringBytesPacketDataMessage(data,data1);}}class BytesBytesPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['BUFFER'],MessageDataTypes['BUFFER']);}static{this['DESCRIPTOR_NAME']='BytesBytesPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'bytes','id':0x1},'data1':{'type':'bytes','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new BytesBytesPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new BytesBytesPacketDataMessage(data,data1);}}class StringObjectPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['STRING'],MessageDataTypes['OBJECT']);}static{this['DESCRIPTOR_NAME']='StringObjectPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'string','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']?JSON['stringify'](this['data1']):void 0x0};}static['fromJSON'](data){return new StringObjectPacketDataMessage(data['data'],data['data1']&&JSON['parse'](data['data1']));}static['create'](data,data1){return new StringObjectPacketDataMessage(data,data1);}}class NumberObjectPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['NUMBER'],MessageDataTypes['OBJECT']);}static{this['DESCRIPTOR_NAME']='NumberObjectPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'uint32','id':0x1},'data1':{'type':'string','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']?JSON['stringify'](this['data1']):void 0x0};}static['fromJSON'](data){return new NumberObjectPacketDataMessage(data['data'],data['data1']&&JSON['parse'](data['data1']));}static['create'](data,data1){return new NumberObjectPacketDataMessage(data,data1);}}class ObjectObjectPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['OBJECT'],MessageDataTypes['OBJECT']);}static{this['DESCRIPTOR_NAME']='ObjectObjectPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'string','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data']?JSON['stringify'](this['data']):void 0x0,'data1':this['data1']?JSON['stringify'](this['data1']):void 0x0};}static['fromJSON'](data){return new ObjectObjectPacketDataMessage(data['data']&&JSON['parse'](data['data']),data['data1']&&JSON['parse'](data['data1']));}static['create'](data,data1){return new ObjectObjectPacketDataMessage(data,data1);}}class ObjectBufferPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['OBJECT'],MessageDataTypes['BUFFER']);}static{this['DESCRIPTOR_NAME']='ObjectBufferPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'bytes','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data']?JSON['stringify'](this['data']):void 0x0,'data1':this['data1']};}static['fromJSON'](data){return new ObjectBufferPacketDataMessage(data['data']&&JSON['parse'](data['data']),data['data1']);}static['create'](data,data1){return new ObjectBufferPacketDataMessage(data,data1);}}class StringStringPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['STRING'],MessageDataTypes['STRING']);}static{this['DESCRIPTOR_NAME']='StringStringPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'string','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new StringStringPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new StringStringPacketDataMessage(data,data1);}}class StringNumberPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['STRING'],MessageDataTypes['NUMBER']);}static{this['DESCRIPTOR_NAME']='StringNumberPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'uint32','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new StringNumberPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new StringNumberPacketDataMessage(data,data1);}}class NumberNumberPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['NUMBER'],MessageDataTypes['NUMBER']);}static{this['DESCRIPTOR_NAME']='NumberNumberPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'uint32','id':0x1},'data1':{'type':'uint32','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new NumberNumberPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new NumberNumberPacketDataMessage(data,data1);}}class NumberStringPacketDataMessage extends PackageDataMessage{static{this['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['NUMBER'],MessageDataTypes['STRING']);}static{this['DESCRIPTOR_NAME']='NumberStringPacketDataMessage';}static{this['DESCRIPTOR']={'fields':{'data':{'type':'uint32','id':0x1},'data1':{'type':'string','id':0x2}}};}constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new NumberStringPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new NumberStringPacketDataMessage(data,data1);}}const PACKET_DATA_MESSAGES=[NumberBytesPacketDataMessage,StringBytesPacketDataMessage,BytesBytesPacketDataMessage,StringObjectPacketDataMessage,NumberObjectPacketDataMessage,ObjectObjectPacketDataMessage,ObjectBufferPacketDataMessage,StringStringPacketDataMessage,StringNumberPacketDataMessage,NumberNumberPacketDataMessage,NumberStringPacketDataMessage]['reduce']((result,PacketDataMessageConstructor)=>(result[PacketDataMessageConstructor['TYPE']]=PacketDataMessageConstructor,result),{});class PacketMessage extends Message{static{this['TYPE']=0xa;}static{this['DESCRIPTOR_NAME']='PacketMessage';}static{this['DESCRIPTOR']={'fields':{'type':{'type':'uint32','id':0x1},'id':{'type':'uint32','id':0x2},'nsp':{'type':'string','id':0x3},'data':{'type':'bytes','id':0x4},'options':{'type':'bytes','id':0x5}}};}constructor(type,data,_0x36e9a7,_0x462738='/',options=new PacketOptionsMessage()){super(),this['type']=type,this['data']=data,this['id']=_0x36e9a7,this['nsp']=_0x462738,this['options']=options;}get['packetData'](){return void 0x0===this['data']['data']&&void 0x0===this['data']['data1']?[]:this['data']['data']&&void 0x0===this['data']['data1']?[this['data']['data']]:[this['data']['data'],this['data']['data1']];}['toJSON'](){const options=MessagesCompressor['encode'](this['options']),data=MessagesCompressor['encode'](this['data']);return{'type':this['type']+0xa*this['data']['constructor']['TYPE'],'id':this['id'],'nsp':'/'===this['nsp']?void 0x0:this['nsp'],'data':data,'options':options};}static['fromJSON'](data){const frameDataType=Math['floor'](data['type']/0xa);return new PacketMessage(data['type']-0xa*frameDataType,MessagesCompressor['decode'](data['data'],PACKET_DATA_MESSAGES[frameDataType]),data['id'],data['nsp'],data['options']?MessagesCompressor['decode'](data['options'],PacketOptionsMessage):new PacketOptionsMessage());}static['create'](packet,options={}){const frameDataType=ParserUtils['getPacketType'](ParserUtils['getType'](packet['data'][0x0]),ParserUtils['getType'](packet['data'][0x1]??packet['data'][0x0]));return new PacketMessage(packet['type'],PACKET_DATA_MESSAGES[frameDataType]['create'](packet['data'][0x0],packet['data'][0x1]),packet['id'],packet['nsp'],new PacketOptionsMessage(options['flags'],options['rooms'],options['except']));}}class PacketParser{['encode'](type,data,_0x534a04,_0x3236b4='/',options={}){if(data['length']>0x2)throw new Error('PacketParser\x20supports\x20only\x202\x20elements\x20in\x20data');const packet={'type':type,'data':data,'id':_0x534a04,'nsp':_0x3236b4};return MessagesCompressor['encode'](PacketMessage['create'](packet,options));}['decode'](_0x31177c){const packetMessage=MessagesCompressor['decode'](_0x31177c,PacketMessage);return{'packet':{'id':packetMessage['id'],'type':packetMessage['type'],'data':packetMessage['packetData'],'nsp':packetMessage['nsp']},'options':{'flags':packetMessage['options']['flags'],'rooms':packetMessage['options']['rooms'],'except':packetMessage['options']['except']}};}}const ENCODED_TYPES=[PacketType['EVENT'],PacketType['ACK'],PacketType['BINARY_ACK'],PacketType['BINARY_EVENT']];class Encoder extends Encoder$1{constructor(_packetParser=new PacketParser()){super(),this['_packetParser']=_packetParser;}['encode'](packet){if(ENCODED_TYPES['includes'](packet['type']))try{return[this['_packetParser']['encode'](packet['type'],packet['data'],packet['id'],packet['nsp'])];}catch(_0x2eea72){console['error']('Can\x20not\x20properly\x20serialize\x20or\x20deserialize\x20messages.\x20Check\x20the\x20original\x20error.',{'originalError':{'message':_0x2eea72['message']}});}return super['encode'](packet);}}class Decoder extends Decoder$1{constructor(_packetParser=new PacketParser()){super(),this['_packetParser']=_packetParser;}['add'](_0x4a232d){if(!ParserUtils['isBuffer'](_0x4a232d))return super['add'](_0x4a232d);let packet;try{packet=this['_packetParser']['decode'](_0x4a232d)['packet'];}catch(_0x1969d0){return super['add'](_0x4a232d);}super['emitReserved']('decoded',packet);}}var parser=Object['freeze']({'__proto__':null,'Decoder':Decoder,'ENCODED_TYPES':ENCODED_TYPES,'Encoder':Encoder});class WebSocketRequest{constructor(_context,timeoutMs){this['_context']=_context,this['_deferredPromise']=(function(){let _0x2b4d34,reject;const _0x2ff1dd=new Promise((_0x1b6278,promiseReject)=>{_0x2b4d34=_0x1b6278,reject=promiseReject;});return{'resolve':_0x2b4d34,'reject':reject,'promise':_0x2ff1dd};}()),this['timeout']=setTimeout(()=>this['error'](new CKEditorCloudServicesError('Request\x20timeout.',this['_context'])),timeoutMs);}get['promise'](){return this['_deferredPromise']['promise'];}['response'](_0x5ac261){this['_deferredPromise']['resolve'](_0x5ac261);}['error'](_0x2abb91){this['_deferredPromise']['reject'](_0x2abb91);}}class WebSocketGatewayRequestsManager{constructor(_context){this['_context']=_context,this['_requests']=new Set();}async['send'](sendFunction,timeoutMs=0xafc8){const _0x1e13af=this['_createRequest'](timeoutMs);try{return sendFunction(_0x1e13af),await _0x1e13af['promise'];}finally{this['_finishRequest'](_0x1e13af);}}['errorAll'](_0x4da391){for(const _0x1f79a3 of this['_requests'])_0x1f79a3['error'](_0x4da391);}['waitForAllRequests'](time=0xafc8){return this['_waitForRequests'](time);}['_createRequest'](timeoutMs){const _0x58bb72=new WebSocketRequest(this['_context'],timeoutMs);return this['_requests']['add'](_0x58bb72),_0x58bb72;}['_finishRequest'](_0x11186a){this['_requests']['delete'](_0x11186a),clearTimeout(_0x11186a['timeout']);}async['_waitForRequests'](time=0x1388,attempt=0x0){return!this['_requests']['size']||attempt>=time/0x1f4?Promise['resolve']():(await new Promise(_0x90d120=>{setTimeout(_0x90d120,0x1f4);}),this['_waitForRequests'](time,attempt++));}}var WEB_SOCKET_GATEWAY_STATES;!function(_0x4fa139){_0x4fa139['DISCONNECTED']='disconnected',_0x4fa139['CONNECTING']='connecting',_0x4fa139['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES||(WEB_SOCKET_GATEWAY_STATES={}));class WebSocketGateway extends ObservableMixin(){static{this['STATE_DISCONNECTED']='disconnected';}static{this['STATE_CONNECTING']='connecting';}static{this['STATE_CONNECTED']='connected';}static{this['_CHANGE_STATE_EVENT_PRIORITY']=priorities['get']('highest')+0xf423f;}constructor(_0x15bb43,_token,_options={},_connectionProvider=lookup,_userFactory=User['get']){if(super(),this['_token']=_token,this['_options']=_options,this['_connectionProvider']=_connectionProvider,this['_userFactory']=_userFactory,this['_requestsManager']=new WebSocketGatewayRequestsManager(this),this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0x15bb43)throw new TypeError('Api\x20address\x20must\x20be\x20provided.');if(!this['_token'])throw new TypeError('Token\x20must\x20be\x20provided.');this['_options']['requestTimeout']||(this['_options']['requestTimeout']=0x4e20),this['_url']=_0x3a89fe(_0x15bb43['replace'](/^(?!(?:\w+:)?\/\/)/,'https://')),this['set']('state','disconnected'),this['set']('socketId',void 0x0),this['set']('me',void 0x0),this['on']('change:state',async(event,_0x1bd27b,_0x11dde1)=>{if(this['_debugEvent']('ws-gw:change:state',_0x11dde1),_0x11dde1!==WebSocketGateway['STATE_CONNECTED']){if(_0x11dde1===WebSocketGateway['STATE_DISCONNECTED'])return this['_requestsManager']['errorAll'](new CKEditorCloudServicesError('Not\x20connected.',this));}else try{this['me']=await this['_userFactory']['call'](User,this,this['_socketAuth']?.['userId']);}catch(_0x2b69c4){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(event,_0x5bf3a6)=>{this['_options']['onError']?this['_options']['onError'](_0x5bf3a6):console['error'](_0x5bf3a6);});}get['sessionId'](){return this['socketId'];}['waitForAllRequests'](time){return this['_requestsManager']['waitForAllRequests'](time);}['disconnect'](){'disconnected'!==this['state']&&(this['_socket']?.['disconnect'](),this['_socket']=void 0x0,this['state']='disconnected');}async['reconnect'](){this['_socket']||'disconnected'!==this['state']||(await this['_token']['refreshToken'](),await this['_connect']());}static async['connect'](token,_0x412111='local.cs.dev:443/ws-v2',options={},_0x4918c2=lookup,userFactory=User['get']){const webSocketGateway=new WebSocketGateway(_0x412111,token,options,_0x4918c2,userFactory);return await webSocketGateway['_connect'](),webSocketGateway;}['_sendRequest'](_0x352385,method,_0x48e63c){if(!_0x352385)throw new CKEditorCloudServicesError('`serviceName`\x20must\x20be\x20provided.',this);if(this['state']!==WebSocketGateway['STATE_CONNECTED'])throw new CKEditorCloudServicesError('Not\x20connected.',this);if(!this['_socketAuth']||!this['_socketAuth']['isAuthenticated'])throw new CKEditorCloudServicesError('Not\x20authenticated.',this);const _0x402f4e=new ArrayBuffer(_0x48e63c['length']+0x2),_0x2540c5=new Uint8Array(_0x402f4e);return _0x2540c5[0x0]=_0x352385,_0x2540c5[0x1]=parseInt(method),_0x2540c5['set'](_0x48e63c,0x2),this['_emit'](0x1,_0x2540c5);}['_getChannel'](_0x3bb04c,_0x480dac){const _0x228cc3=''+_0x3bb04c+_0x480dac;return!this['_channels']['has'](_0x228cc3)&&this['_socket']&&this['_channels']['set'](_0x228cc3,new Channel(_0x228cc3,this,this['_socket'])),this['_channels']['get'](_0x228cc3);}['_connect'](){return new Promise((_0x370125,reject)=>{const socket=this['_setupSocket']();!this['socketId']&&socket['io']['on']('reconnect_error',()=>{this['_debugEvent']('reconnect_error'),this['_reconnectionAttemptError'](reject);}),socket['once']('connect',async()=>{this['_debugEvent']('once-connect');try{await this['_onConnect'](),_0x370125();}catch(_0x4cb3f0){reject(_0x4cb3f0);}}),socket['connect']();});}['_getPortByProtocol'](protocol){return['http:','ws:']['includes'](protocol)?0x50:0x1bb;}['_setupSocket'](){if(this['_socket'])return this['_socket'];const port=this['_url']['port']||this['_getPortByProtocol'](this['_url']['protocol']),_0x2d9548=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+port,pathPrefix=this['_url']['pathname']['match'](/^\/.*\/ws/)?this['_url']['pathname']['split']('/ws')[0x0]:'',socket=this['_connectionProvider'](_0x2d9548,{'parser':{'Encoder':Encoder,'Decoder':Decoder},'path':pathPrefix+'/ws-v2/ws','transports':['websocket'],'timeout':void 0x0!==this['_options']['timeout']?this['_options']['timeout']:0x1388,'reconnection':void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect'],'reconnectionDelay':0x3e8,'reconnectionDelayMax':0x1388,'rejectUnauthorized':void 0x0===this['_options']['rejectUnauthorized']||this['_options']['rejectUnauthorized'],'query':{'version':'52.3.1'},'agent':this['_options']['agent']??!0x1,'closeOnBeforeunload':!0x1});return this['state']='connecting',socket['on']('connect',()=>{this['_debugEvent']('connect'),this['socketId']=socket['id'];}),socket['on']('connect_error',_0x365098=>{this['_debugEvent']('connect_error',_0x365098);}),socket['on']('disconnect',()=>{this['_debugEvent']('disconnect'),this['_onDisconnect']();}),socket['io']['on']('reconnect',async()=>{this['_debugEvent']('reconnect'),await this['_onReconnect']();}),socket['io']['on']('reconnect_attempt',attempt=>{this['_debugEvent']('reconnect_attempt',attempt),this['state']='connecting',this['_connectionAttempt']=attempt;}),socket['on']('unauthorized',data=>{this['_debugEvent']('unauthorized'),this['_onUnauthorized'](data);}),socket['on']('authenticationRequest',async data=>{this['_debugEvent']('authenticationRequest',data['attempt']),await this['_onReconnect']();}),this['_socket']=socket,socket;}['_emit'](eventName,_0x250392){const socket=this['_socket'];return this['_requestsManager']['send'](_0x436d5d=>{socket['emit'](eventName,_0x250392,(_0x2d345d,_0x30469a)=>{if(_0x2d345d)return _0x436d5d['error'](CKEditorCloudServicesServerError['fromPublicError'](_0x2d345d));_0x436d5d['response'](_0x30469a);});},this['_options']['requestTimeout']);}['_addAuthData'](environmentId,_0x3f792d){this['_socketAuth']={'environmentId':environmentId,'userId':_0x3f792d,'isAuthenticated':!0x0};}['_removeAuthData'](){this['_socketAuth']=void 0x0;}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']='connected';const _0xa36ba=async(event,_0xf70096,_0x364ff5)=>{this['_debugEvent']('token:value:change');try{await this['_authenticate'](_0x364ff5);}catch(_0x115bca){}};this['_token']['on']('change:value',_0xa36ba),this['_socket']['io']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0xa36ba);});}async['_onReconnect'](){await this['_token']['refreshToken'](),await this['_onConnect']();}['_onDisconnect'](){this['state']='disconnected',this['_connectionAttempt']=0x0,this['fire']('disconnect');for(const _0x5a4fba of this['_channels']['values']())_0x5a4fba['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_debugEvent'](eventName,eventData){if(!this['_isDebugModeEnabled']())return;const eventDataString=void 0x0!==eventData?',\x20data:\x20'+eventData:'';console['info'](new Date()['toLocaleString']()+'\x20'+eventName+eventDataString);}['_reconnectionAttemptError'](_0x3e64e5){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x3e64e5(CKEditorCloudServicesError['fromPublicError']({'message':'The\x20number\x20of\x20initial\x20connection\x20attempts\x20exceeded.','explanation':'Three\x20initial\x20connection\x20attempts\x20failed.\x20It\x20can\x20be\x20caused\x20by\x20a\x20slow,\x20unstable,\x20missing\x20or\x20blocked\x20Internet\x20connection.','action':'Please\x20verify\x20the\x20stability\x20of\x20your\x20Internet\x20connection\x20and\x20ensure\x20that\x20no\x20antivirus\x20or\x20firewall\x20software\x20blocks\x20the\x20Web\x20Socket\x20protocol\x20connections.'})));}['_onUnauthorized']({error:_0x432606}){this['_removeAuthData'](),this['fire']('error',CKEditorCloudServicesServerError['fromPublicError'](_0x432606));}async['_authenticate'](token){try{this['_debugEvent']('authenticate:start');const _0x1a2c01=await this['_emit'](0x2,{'token':token});this['_debugEvent']('authenticate:success','envId:\x20'+_0x1a2c01['environmentId']+',\x20userId:\x20'+_0x1a2c01['userId']),this['_addAuthData'](_0x1a2c01['environmentId'],_0x1a2c01['userId']);}catch(_0x399ec2){throw this['_debugEvent']('authenticate:error',_0x399ec2['message']),this['_removeAuthData'](),_0x399ec2;}}['_isDebugModeEnabled'](){if(!global['window']['localStorage'])return!0x1;return'true'===(global['window']['localStorage']['getItem']('csClientDebugMode')??'false')['toLowerCase']();}}class IsEditorBundleUploadedMessage extends Message{static{this['TYPE']='131';}static{this['READABLE_TYPE_NAME']='isEditorBundleUploaded';}static{this['DESCRIPTOR_NAME']='IsEditorBundleUploadedMessage';}static{this['DESCRIPTOR']={'fields':{'bundleVersion':{'type':'string','id':0x1}}};}constructor(_0x4a0d4d){super(),this['bundleVersion']=_0x4a0d4d;}['toJSON'](){return{'bundleVersion':this['bundleVersion']};}static['fromJSON'](object){return new IsEditorBundleUploadedMessage(object['bundleVersion']);}}class IsEditorBundleUploadedResponse extends Message{static{this['DESCRIPTOR_NAME']='IsEditorBundleUploadedResponse';}static{this['DESCRIPTOR']={'fields':{'isUploaded':{'type':'bool','id':0x1}}};}constructor(_0x587eac){super(),this['isUploaded']=_0x587eac;}['toJSON'](){return{'isUploaded':this['isUploaded']};}static['fromJSON'](_0x64bf24){return new IsEditorBundleUploadedResponse(_0x64bf24['isUploaded']);}}class EditorService extends EmitterMixin(){static{this['_SERVICE']=0xd;}static async['isBundleUploaded'](wsGateway,_0x36dd77){const _0x102298=new IsEditorBundleUploadedMessage(_0x36dd77);if(wsGateway['state']!==WEB_SOCKET_GATEWAY_STATES['CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);const _0x4dc88c=await wsGateway['_sendRequest'](EditorService['_SERVICE'],IsEditorBundleUploadedMessage['TYPE'],MessagesCompressor['encode'](_0x102298));return MessagesCompressor['decode'](_0x4dc88c,IsEditorBundleUploadedResponse)['isUploaded'];}}class RevisionHistoryGetRevisionMessage extends Message{static{this['TYPE']='123';}static{this['READABLE_TYPE_NAME']='getRevision';}static{this['DESCRIPTOR_NAME']='RevisionHistoryGetRevisionMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'revisionId':{'type':'string','id':0x2}}};}constructor(documentId,_0x45c5d3){super(),this['documentId']=documentId,this['revisionId']=_0x45c5d3;}['toJSON'](){return{'documentId':this['documentId'],'revisionId':this['revisionId']};}static['fromJSON'](object){return new RevisionHistoryGetRevisionMessage(object['documentId'],object['revisionId']);}}class RevisionDescriptor extends Descriptor{static{this['DESCRIPTOR_NAME']='RevisionDescriptor';}static{this['DESCRIPTOR']={'fields':{'revisionId':{'type':'string','id':0x1},'name':{'type':'string','id':0x2},'creatorId':{'type':'string','id':0x3},'authorsIds':{'type':'string','id':0x4},'diffData':{'type':'string','id':0x5},'createdAt':{'type':'string','id':0x6},'attributes':{'type':'string','id':0x7},'toVersion':{'type':'uint32','id':0x8},'fromVersion':{'type':'uint32','id':0x9},'isEmptyCurrent':{'type':'bool','id':0xa}}};}static['create'](object){return{'revisionId':object['id'],'name':object['name'],'creatorId':object['creatorId'],'createdAt':object['createdAt'],'fromVersion':object['fromVersion'],'toVersion':object['toVersion'],'isEmptyCurrent':object['isEmptyCurrent'],'diffData':object['diffData']?JSON['stringify'](object['diffData']):void 0x0,'attributes':object['attributes'],'authorsIds':object['authorsIds']};}static['toJSON'](_0x2680de){return{'revisionId':_0x2680de['revisionId'],'name':_0x2680de['name'],'creatorId':_0x2680de['creatorId'],'authorsIds':_0x2680de['authorsIds']?JSON['stringify'](_0x2680de['authorsIds']):void 0x0,'diffData':_0x2680de['diffData'],'createdAt':_0x2680de['createdAt']?.['toISOString'](),'attributes':_0x2680de['attributes']?JSON['stringify'](_0x2680de['attributes']):void 0x0,'toVersion':_0x2680de['toVersion'],'fromVersion':_0x2680de['fromVersion'],'isEmptyCurrent':_0x2680de['isEmptyCurrent']};}static['fromJSON'](_0x5de364){return{'revisionId':(_0x5de364={..._0x5de364})['revisionId'],'name':_0x5de364['name'],'creatorId':_0x5de364['creatorId'],'authorsIds':_0x5de364['authorsIds']?JSON['parse'](_0x5de364['authorsIds']):void 0x0,'diffData':_0x5de364['diffData'],'createdAt':_0x5de364['createdAt']?new Date(_0x5de364['createdAt']):void 0x0,'attributes':_0x5de364['attributes']?JSON['parse'](_0x5de364['attributes']):void 0x0,'toVersion':_0x5de364['toVersion'],'fromVersion':_0x5de364['fromVersion'],'isEmptyCurrent':_0x5de364['isEmptyCurrent']};}static['toObject'](_0x4791cc){return function(revisionObject){for(const [_0x4cffc0,_0xe839]of Object['entries'](revisionObject))void 0x0===_0xe839&&delete revisionObject[_0x4cffc0];return revisionObject;}({'id':_0x4791cc['revisionId'],'name':_0x4791cc['name'],'creatorId':_0x4791cc['creatorId'],'createdAt':_0x4791cc['createdAt'],'fromVersion':_0x4791cc['fromVersion'],'toVersion':_0x4791cc['toVersion'],'isEmptyCurrent':_0x4791cc['isEmptyCurrent'],'diffData':_0x4791cc['diffData']?JSON['parse'](_0x4791cc['diffData']):void 0x0,'attributes':_0x4791cc['attributes'],'authorsIds':_0x4791cc['authorsIds']});}}class RevisionHistoryGetRevisionResponse extends Message{static{this['DESCRIPTOR_NAME']='RevisionHistoryGetRevisionResponse';}static{this['DESCRIPTOR']=RevisionDescriptor['DESCRIPTOR'];}constructor(_0x5aad91,_0xc32c3b,creatorId,authorsIds,createdAt,diffData,attributes,_0x58cb24,toVersion,isEmptyCurrent){super(),this['revisionId']=_0x5aad91,this['name']=_0xc32c3b,this['creatorId']=creatorId,this['authorsIds']=authorsIds,this['createdAt']=createdAt,this['diffData']=diffData,this['attributes']=attributes,this['fromVersion']=_0x58cb24,this['toVersion']=toVersion,this['isEmptyCurrent']=isEmptyCurrent;}['toJSON'](){return RevisionDescriptor['toJSON'](this);}['toObject'](){return RevisionDescriptor['toObject'](this);}static['create'](_0x3df903){return new RevisionHistoryGetRevisionResponse(_0x3df903['revisionId'],_0x3df903['name'],_0x3df903['creatorId'],_0x3df903['authorsIds'],_0x3df903['createdAt'],_0x3df903['diffData'],_0x3df903['attributes'],_0x3df903['fromVersion'],_0x3df903['toVersion'],_0x3df903['isEmptyCurrent']);}static['fromJSON'](_0x156ef4){return new RevisionHistoryGetRevisionResponse(_0x156ef4['revisionId'],_0x156ef4['name'],_0x156ef4['creatorId'],_0x156ef4['authorsIds']?JSON['parse'](_0x156ef4['authorsIds']):void 0x0,_0x156ef4['createdAt']?new Date(_0x156ef4['createdAt']):void 0x0,_0x156ef4['diffData'],_0x156ef4['attributes']?JSON['parse'](_0x156ef4['attributes']):void 0x0,_0x156ef4['fromVersion'],_0x156ef4['toVersion'],_0x156ef4['isEmptyCurrent']);}}class RevisionHistoryUpdateRevisionsMessage extends Message{static{this['TYPE']='124';}static{this['READABLE_TYPE_NAME']='updateRevisions';}static{this['DESCRIPTOR_NAME']='RevisionHistoryUpdateRevisionsMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'requestId':{'type':'uint32','id':0x2},'revisions':{'type':'RevisionDescriptor','id':0x3,'rule':'repeated'}}};}constructor(documentId,requestId,_0x19ff8c){super(),this['documentId']=documentId,this['requestId']=requestId,this['revisions']=_0x19ff8c;}['toJSON'](){return{'documentId':this['documentId'],'requestId':this['requestId'],'revisions':this['revisions']['map'](RevisionDescriptor['toJSON'])};}['toObject'](){return{'documentId':this['documentId'],'requestId':this['requestId'],'revisions':this['revisions']['map'](RevisionDescriptor['toObject'])};}static['create'](_0x3d367b){return new RevisionHistoryUpdateRevisionsMessage(_0x3d367b['documentId'],_0x3d367b['requestId'],_0x3d367b['revisions']['map'](RevisionDescriptor['create']));}static['fromJSON'](_0x324165){return new RevisionHistoryUpdateRevisionsMessage(_0x324165['documentId'],_0x324165['requestId'],_0x324165['revisions']['map'](RevisionDescriptor['fromJSON']));}}class RevisionHistoryUpdateRevisionsResponse extends Message{static{this['DESCRIPTOR_NAME']='RevisionHistoryUpdateRevisionsResponse';}static{this['DESCRIPTOR']={'fields':{'requestId':{'type':'uint32','id':0x1}}};}constructor(requestId){super(),this['requestId']=requestId;}['toJSON'](){return{'requestId':this['requestId']};}static['fromJSON'](_0x2939b1){return new RevisionHistoryUpdateRevisionsResponse(_0x2939b1['requestId']);}}class RevisionHistoryConnectMessage extends Message{static{this['TYPE']='121';}static{this['READABLE_TYPE_NAME']='connectToRevisionHistory';}static{this['DESCRIPTOR_NAME']='RevisionHistoryConnectMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};}constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new RevisionHistoryConnectMessage(object['documentId']);}}class RevisionHistoryConnectResponse extends Message{static{this['DESCRIPTOR_NAME']='RevisionHistoryConnectResponse';}static{this['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'requestId':{'type':'uint32','id':0x2},'revisions':{'type':'RevisionDescriptor','id':0x3,'rule':'repeated'}}};}constructor(_0x4ea273,requestId,_0x4f7dee){super(),this['channel']=_0x4ea273,this['requestId']=requestId,this['revisions']=_0x4f7dee;}['toJSON'](){return{'channel':this['channel'],'requestId':this['requestId'],'revisions':this['revisions']['map'](RevisionDescriptor['toJSON'])};}['toObject'](){return{'channel':this['channel'],'requestId':this['requestId'],'revisions':this['revisions']['map'](RevisionDescriptor['toObject'])};}static['fromJSON'](_0x5adfd1){return new RevisionHistoryConnectResponse(_0x5adfd1['channel'],_0x5adfd1['requestId'],_0x5adfd1['revisions']['map'](RevisionDescriptor['fromJSON']));}}class RevisionHistoryReconnectMessage extends Message{static{this['TYPE']='122';}static{this['READABLE_TYPE_NAME']='reconnectToRevisionHistory';}static{this['DESCRIPTOR_NAME']='RevisionHistoryReconnectMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'requestId':{'type':'uint32','id':0x2}}};}constructor(documentId,requestId){super(),this['documentId']=documentId,this['requestId']=requestId;}['toJSON'](){return{'documentId':this['documentId'],'requestId':this['requestId']};}static['fromJSON'](object){return new RevisionHistoryReconnectMessage(object['documentId'],object['requestId']);}}class ServiceNotConnectedError extends CKEditorCloudServicesError{constructor(_0x21f330,context){super(_0x21f330+'\x20Service\x20is\x20not\x20connected.',context);}}class RevisionHistoryService extends EmitterMixin(){static{this['_SERVICE']=0xc;}constructor(_documentId){super(),this['_documentId']=_documentId,this['_isConnected']=!0x1;}get['isConnected'](){return this['_isConnected'];}['connect'](wsGateway){return this['_isConnected']?Promise['resolve']():this['_connect'](wsGateway,new RevisionHistoryConnectMessage(this['_documentId']));}['disconnect'](){this['_isConnected']&&(this['_isConnected']=!0x1,this['_wsGateway']&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['fire']('disconnected'),this['stopListening']());}['reconnect'](wsGateway,lastRequestId){if(this['isConnected'])throw new CKEditorCloudServicesError('Cannot\x20reconnect\x20to\x20already\x20connected\x20service.',wsGateway);return this['_connect'](wsGateway,new RevisionHistoryReconnectMessage(this['_documentId'],lastRequestId));}async['updateRevisions'](_0x26326b,lastRequestId){const _0x53fc9c=RevisionHistoryUpdateRevisionsMessage['create']({'documentId':this['_documentId'],'requestId':lastRequestId,'revisions':_0x26326b}),_0x4329d9=await this['_sendRequest'](RevisionHistoryUpdateRevisionsMessage['TYPE'],_0x53fc9c),{requestId:requestId}=MessagesCompressor['decode'](_0x4329d9,RevisionHistoryUpdateRevisionsResponse);return requestId;}async['getRevision'](_0x3383fa){const _0x1952fb=new RevisionHistoryGetRevisionMessage(this['_documentId'],_0x3383fa),_0x369de0=await this['_sendRequest'](RevisionHistoryGetRevisionMessage['TYPE'],_0x1952fb);return MessagesCompressor['decode'](_0x369de0,RevisionHistoryGetRevisionResponse)['toObject']();}async['_connect'](wsGateway,_0x3b106a){if(wsGateway['state']!==WEB_SOCKET_GATEWAY_STATES['CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x2a5bc5=await wsGateway['_sendRequest'](0xc,_0x3b106a['constructor']['TYPE'],MessagesCompressor['encode'](_0x3b106a)),{channel:_0x4929bd,requestId:requestId,revisions:_0x301319}=MessagesCompressor['decode'](_0x2a5bc5,RevisionHistoryConnectResponse)['toObject']();return this['listenTo'](wsGateway,'change:state',(_0x4082a8,_0x495e27,state)=>this['_onWsGatewayStateChange'](state),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['_connectToChannel'](wsGateway,_0x4929bd),this['_isConnected']=!0x0,this['fire']('connected'),{'revisions':_0x301319,'requestId':requestId};}['_connectToChannel'](wsGateway,_0x3bad88){this['_channel']=wsGateway['_getChannel'](RevisionHistoryService['_SERVICE'],_0x3bad88),this['_channel']&&this['listenTo'](this['_channel'],this['_channel']['getEventName'](RevisionHistoryUpdateRevisionsMessage['TYPE']),(event,data)=>{const {documentId:documentId,requestId:requestId,revisions:_0x209d3b}=MessagesCompressor['decode'](data,RevisionHistoryUpdateRevisionsMessage)['toObject']();this['fire']('revisionsUpdated',{'documentId':documentId,'requestId':requestId,'revisionsData':_0x209d3b});});}['_onWsGatewayStateChange'](_0x501886){_0x501886===WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&this['disconnect']();}['_sendRequest'](method,_0x27b27d){if(!this['_wsGateway']||!this['_isConnected'])throw new ServiceNotConnectedError('Revision\x20History',this);return this['_wsGateway']['_sendRequest'](0xc,method,MessagesCompressor['encode'](_0x27b27d));}}class AddSuggestionMessage extends Message{static{this['TYPE']='101';}static{this['READABLE_TYPE_NAME']='addSuggestion';}static{this['DESCRIPTOR_NAME']='TrackChangesAddSuggestionMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'type':{'type':'string','id':0x3},'data':{'type':'string','id':0x4},'originalSuggestionId':{'type':'string','id':0x5},'attributes':{'type':'string','id':0x6}}};}constructor(_0x513128,documentId,type,data={},originalSuggestionId=null,attributes=null){super(),this['id']=_0x513128,this['documentId']=documentId,this['type']=type,this['data']=data,this['originalSuggestionId']=originalSuggestionId,this['attributes']=attributes;}['toJSON'](){return{'id':this['id'],'documentId':this['documentId'],'type':this['type'],'data':JSON['stringify'](this['data']),'originalSuggestionId':this['originalSuggestionId'],'attributes':JSON['stringify'](this['attributes'])};}static['fromJSON'](object){return new AddSuggestionMessage(object['id'],object['documentId'],object['type'],JSON['parse'](object['data']),object['originalSuggestionId']??null,object['attributes']?JSON['parse'](object['attributes']):null);}}class AddSuggestionResponse extends Message{static{this['DESCRIPTOR_NAME']='TrackChangesAddSuggestionResponse';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'authorId':{'type':'string','id':0x2},'type':{'type':'string','id':0x3},'createdAt':{'type':'string','id':0x4},'data':{'type':'string','id':0x5},'hasComments':{'type':'bool','id':0x6},'state':{'type':'string','id':0x7},'attributes':{'type':'string','id':0x8}}};}constructor(_0x9d8f1f,authorId,type,createdAt,hasComments,state,data={},attributes=null){super(),this['id']=_0x9d8f1f,this['authorId']=authorId,this['type']=type,this['hasComments']=hasComments,this['state']=state,this['data']=data,this['attributes']=attributes,this['createdAt']=createdAt?new Date(createdAt):void 0x0;}['toJSON'](){return{'id':this['id'],'authorId':this['authorId'],'type':this['type'],'createdAt':this['createdAt']?.['toISOString'](),'data':JSON['stringify'](this['data']),'hasComments':this['hasComments'],'state':this['state'],'attributes':JSON['stringify'](this['attributes'])};}static['fromJSON'](data){return new AddSuggestionResponse(data['id'],data['authorId'],data['type'],data['createdAt'],data['hasComments'],data['state'],JSON['parse'](data['data']),data['attributes']?JSON['parse'](data['attributes']):null);}}class GetSuggestionMessage extends Message{static{this['TYPE']='103';}static{this['READABLE_TYPE_NAME']='getSuggestion';}static{this['DESCRIPTOR_NAME']='TrackChangesGetSuggestionMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2}}};}constructor(_0x3f20b5,documentId){super(),this['id']=_0x3f20b5,this['documentId']=documentId;}['toJSON'](){return{'id':this['id'],'documentId':this['documentId']};}static['fromJSON'](object){return new GetSuggestionMessage(object['id'],object['documentId']);}}class GetSuggestionResponse extends Message{static{this['DESCRIPTOR_NAME']='TrackChangesGetSuggestionResponse';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'authorId':{'type':'string','id':0x2},'type':{'type':'string','id':0x3},'createdAt':{'type':'string','id':0x4},'data':{'type':'string','id':0x5},'hasComments':{'type':'bool','id':0x6},'state':{'type':'string','id':0x7},'attributes':{'type':'string','id':0x8}}};}constructor(_0x296669,authorId,type,createdAt,hasComments,state,data={},attributes=null){super(),this['id']=_0x296669,this['authorId']=authorId,this['type']=type,this['hasComments']=hasComments,this['state']=state,this['data']=data,this['attributes']=attributes,this['createdAt']=new Date(createdAt);}['toJSON'](){return{'id':this['id'],'authorId':this['authorId'],'type':this['type'],'createdAt':this['createdAt']['toISOString'](),'data':JSON['stringify'](this['data']),'hasComments':this['hasComments'],'state':this['state'],'attributes':JSON['stringify'](this['attributes'])};}static['fromJSON'](data){return new GetSuggestionResponse(data['id'],data['authorId'],data['type'],data['createdAt'],data['hasComments'],data['state'],JSON['parse'](data['data']),data['attributes']?JSON['parse'](data['attributes']):null);}}class GetAllSuggestionsMessage extends Message{static{this['TYPE']='102';}static{this['READABLE_TYPE_NAME']='getAllSuggestions';}static{this['DESCRIPTOR_NAME']='TrackChangesGetAllSuggestionMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};}constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new GetAllSuggestionsMessage(object['documentId']);}}class SuggestionDescriptor extends Descriptor{static{this['DESCRIPTOR_NAME']='SuggestionDescriptor';}static{this['DESCRIPTOR']={'fields':{'id':{'id':0x1,'type':'string'},'authorId':{'id':0x2,'type':'string'},'type':{'id':0x3,'type':'string'},'createdAt':{'id':0x4,'type':'string'},'data':{'id':0x5,'type':'string'},'hasComments':{'id':0x6,'type':'bool'},'state':{'id':0x7,'type':'string'},'attributes':{'id':0x8,'type':'string'}}};}static['toJSON'](suggestion){return{...suggestion,'data':suggestion['data']?JSON['stringify'](suggestion['data']):suggestion['data'],'attributes':suggestion['attributes']?JSON['stringify'](suggestion['attributes']):suggestion['attributes'],'createdAt':suggestion['createdAt']?.['toISOString']()};}static['fromJSON'](suggestion){return{...suggestion,'data':suggestion['data']?JSON['parse'](suggestion['data']):suggestion['data'],'attributes':suggestion['attributes']?JSON['parse'](suggestion['attributes']):suggestion['attributes'],'createdAt':suggestion['createdAt']?new Date(suggestion['createdAt']):void 0x0};}}class GetAllSuggestionResponse extends Message{static{this['DESCRIPTOR_NAME']='TrackChangesGetAllSuggestionsResponse';}static{this['DESCRIPTOR']={'fields':{'suggestions':{'type':'string','rule':'repeated','id':0x1},'suggestionsV2':{'type':'SuggestionDescriptor','rule':'repeated','id':0x2}}};}constructor(_suggestions,_suggestionsV2){super(),this['_suggestions']=_suggestions,this['_suggestionsV2']=_suggestionsV2,this['suggestions']=_suggestionsV2?.['length']?_suggestionsV2:_suggestions;}['toJSON'](){return{'suggestions':this['_suggestions']?.['map'](suggestion=>JSON['stringify'](suggestion)),'suggestionsV2':this['_suggestionsV2']?.['map'](SuggestionDescriptor['toJSON'])};}static['fromJSON'](data){return new GetAllSuggestionResponse(data['suggestions']?.['map'](_suggestionFromString),data['suggestionsV2']?.['map'](SuggestionDescriptor['fromJSON']));}}function _suggestionFromString(suggestion){const parsedSuggestion=JSON['parse'](suggestion);return parsedSuggestion['createdAt']=parsedSuggestion['createdAt']?new Date(parsedSuggestion['createdAt']):void 0x0,parsedSuggestion;}class UpdateSuggestionMessage extends Message{static{this['TYPE']='104';}static{this['READABLE_TYPE_NAME']='updateSuggestion';}static{this['DESCRIPTOR_NAME']='TrackChangesUpdateSuggestionMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'hasComments':{'type':'bool','id':0x3},'isHasCommentsModified':{'type':'bool','id':0x4},'state':{'type':'string','id':0x5},'attributes':{'type':'string','id':0x6}}};}constructor(_0x35639a,documentId,hasComments,isHasCommentsModified,state,attributes=null){super(),this['id']=_0x35639a,this['documentId']=documentId,this['hasComments']=hasComments,this['isHasCommentsModified']=isHasCommentsModified,this['state']=state,this['attributes']=attributes;}['toJSON'](){return{'id':this['id'],'documentId':this['documentId'],'hasComments':this['hasComments'],'isHasCommentsModified':this['isHasCommentsModified'],'state':this['state'],'attributes':JSON['stringify'](this['attributes'])};}static['fromJSON'](object){return new UpdateSuggestionMessage(object['id'],object['documentId'],object['hasComments'],object['isHasCommentsModified'],object['state'],object['attributes']?JSON['parse'](object['attributes']):null);}}let ConnectMessage$1=class ConnectMessage extends Message{static{this['TYPE']='105';}static{this['READABLE_TYPE_NAME']='connectToSuggestions';}static{this['DESCRIPTOR_NAME']='TrackChangesConnectMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};}constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new ConnectMessage(object['documentId']);}},ConnectResponse$1=class ConnectResponse extends Message{static{this['DESCRIPTOR_NAME']='TrackChangesConnectResponse';}static{this['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'suggestions':{'type':'string','rule':'repeated','id':0x2},'suggestionsV2':{'type':'SuggestionDescriptor','rule':'repeated','id':0x3}}};}constructor(_0x1a871b,_suggestions,_suggestionsV2){super(),this['channel']=_0x1a871b,this['_suggestions']=_suggestions,this['_suggestionsV2']=_suggestionsV2,this['suggestions']=_suggestionsV2?.['length']?_suggestionsV2:_suggestions;}['toJSON'](){return{'channel':this['channel'],'suggestions':this['_suggestions']?.['map'](suggestion=>JSON['stringify'](suggestion)),'suggestionsV2':this['_suggestionsV2']?.['map'](SuggestionDescriptor['toJSON'])};}static['fromJSON'](object){return new ConnectResponse(object['channel'],object['suggestions']?.['map'](suggestion=>JSON['parse'](suggestion)),object['suggestionsV2']?.['map'](SuggestionDescriptor['fromJSON']));}};class BatchUpdateSuggestionsStateMessage extends Message{static{this['TYPE']='106';}static{this['READABLE_TYPE_NAME']='batchUpdateSuggestionsState';}static{this['DESCRIPTOR_NAME']='TrackChangesBatchUpdateSuggestionsStateMessage';}static{this['DESCRIPTOR']={'fields':{'ids':{'type':'string','rule':'repeated','id':0x1},'documentId':{'type':'string','id':0x2},'state':{'type':'string','id':0x3}}};}constructor(_0x57905a,documentId,state){super(),this['ids']=_0x57905a,this['documentId']=documentId,this['state']=state;}['toJSON'](){return{'ids':this['ids'],'documentId':this['documentId'],'state':this['state']};}static['fromJSON'](object){return new BatchUpdateSuggestionsStateMessage(object['ids'],object['documentId'],object['state']);}}class TrackChangesService extends EmitterMixin(){static{this['_SERVICE']=0xa;}constructor(_documentId){super(),this['_documentId']=_documentId,this['_isConnected']=!0x1;}get['isConnected'](){return this['_isConnected'];}async['connect'](wsGateway){if(this['_isConnected'])return;if(wsGateway['state']!==WEB_SOCKET_GATEWAY_STATES['CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);const connectMessage=new ConnectMessage$1(this['_documentId']);this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x22ce4f=await wsGateway['_sendRequest'](0xa,ConnectMessage$1['TYPE'],MessagesCompressor['encode'](connectMessage)),connectResponse=MessagesCompressor['decode'](_0x22ce4f,ConnectResponse$1);return this['listenTo'](wsGateway,'change:state',(_0x46d250,_0x17ee84,_0x4f290f)=>this['_onWsGatewayStateChange'](_0x4f290f),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['_connectToChannel'](wsGateway,connectResponse['channel']),this['_isConnected']=!0x0,this['fire']('connected'),connectResponse['suggestions'];}['disconnect'](){this['_isConnected']&&(this['_isConnected']=!0x1,this['_wsGateway']&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['fire']('disconnected'),this['stopListening']());}async['add'](_0x1988b2,type,data,originalSuggestionId=null,attributes){const _0x1e313b=new AddSuggestionMessage(_0x1988b2,this['_documentId'],type,data,originalSuggestionId,attributes),_0x46df9b=await this['_sendRequest'](AddSuggestionMessage['TYPE'],_0x1e313b);return MessagesCompressor['decode'](_0x46df9b,AddSuggestionResponse);}async['get'](_0x92ad10,attempt=0x1){const _0x13d7ce=new GetSuggestionMessage(_0x92ad10,this['_documentId']);try{const _0x321aa1=await this['_sendRequest'](GetSuggestionMessage['TYPE'],_0x13d7ce);return MessagesCompressor['decode'](_0x321aa1,GetSuggestionResponse);}catch(_0x3dce2b){if('CKEditorCloudServicesServerError'===_0x3dce2b['name']&&'404'===_0x3dce2b['code']&&attempt<0x5)return await(time=0x64*attempt,new Promise(_0x14d484=>{setTimeout(_0x14d484,time);})),this['get'](_0x92ad10,attempt+0x1);if('CKEditorCloudServicesServerError'===_0x3dce2b['name'])throw _0x3dce2b;throw CKEditorCloudServicesServerError['fromPublicError'](_0x3dce2b);}var time;}async['getAll'](){const _0x3b84a7=new GetAllSuggestionsMessage(this['_documentId']),_0x13512a=await this['_sendRequest'](GetAllSuggestionsMessage['TYPE'],_0x3b84a7),{suggestions:suggestions}=MessagesCompressor['decode'](_0x13512a,GetAllSuggestionResponse);return suggestions;}async['update'](_0x2eb047,_0x4bc1ff={}){const {hasComments:hasComments,state:state,attributes:attributes}=_0x4bc1ff,isHasCommentsUpdated=void 0x0!==hasComments,_0x3cfa83=new UpdateSuggestionMessage(_0x2eb047,this['_documentId'],hasComments,isHasCommentsUpdated,state,attributes);await this['_sendRequest'](UpdateSuggestionMessage['TYPE'],_0x3cfa83);}async['batchUpdateState'](_0x33b83d){const _0x27888d=new BatchUpdateSuggestionsStateMessage(_0x33b83d['ids'],this['_documentId'],_0x33b83d['state']);await this['_sendRequest'](BatchUpdateSuggestionsStateMessage['TYPE'],_0x27888d);}['_connectToChannel'](wsGateway,_0x3a5df5){this['_channel']=wsGateway['_getChannel'](TrackChangesService['_SERVICE'],_0x3a5df5),this['_channel']&&this['listenTo'](this['_channel'],this['_channel']['getEventName'](UpdateSuggestionMessage['TYPE']),(event,data)=>{const updateSuggestionMessage=MessagesCompressor['decode'](data,UpdateSuggestionMessage);this['fire']('suggestionUpdated',updateSuggestionMessage);});}['_onWsGatewayStateChange'](_0x34b353){_0x34b353===WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&this['disconnect']();}['_sendRequest'](method,_0x1c121c){if(!this['_wsGateway']||!this['_isConnected'])throw new ServiceNotConnectedError('Track\x20Changes',this);return this['_wsGateway']['_sendRequest'](0xa,method,MessagesCompressor['encode'](_0x1c121c));}}class SessionsConnectResponse extends Message{static{this['DESCRIPTOR_NAME']='SessionsConnectResponse';}static{this['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'sockets':{'rule':'repeated','type':'SessionsSocketDescriptor','id':0x2}}};}constructor(_0x29fc49,sockets=[]){super(),this['channel']=_0x29fc49,this['sockets']=sockets;}['toJSON'](){return{'channel':this['channel'],'sockets':this['sockets']['map'](socket=>({'user':socket['userId'],'session':socket['id'],'role':socket['role'],'permissions':socket['permissions']}))};}static['fromJSON'](data){return new SessionsConnectResponse(data['channel'],data['sockets']['map'](socket=>({'id':socket['session'],'userId':socket['user'],'role':socket['role'],'permissions':socket['permissions']})));}}class SessionsConnectMessage extends Message{static{this['TYPE']='31';}static{this['READABLE_TYPE_NAME']='getConnectedSockets';}static{this['DESCRIPTOR_NAME']='SessionsConnectMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'sessionType':{'type':'uint32','id':0x2}}};}constructor(_0x2ac76c,_0x2a901d){super(),this['id']=_0x2ac76c,this['sessionType']=_0x2a901d;}['toJSON'](){return{'id':this['id'],'sessionType':this['sessionType']};}static['fromJSON'](data){return new SessionsConnectMessage(data['id'],data['sessionType']);}}class SocketConnectMessage extends Message{static{this['TYPE']='32';}static{this['READABLE_TYPE_NAME']='connectSocket';}static{this['DESCRIPTOR_NAME']='SocketConnectMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'userId':{'type':'string','id':0x2},'role':{'type':'string','id':0x3},'permissions':{'rule':'repeated','type':'string','id':0x4}}};}constructor(_0x14711e,_0x1886b2,_0x184c2f,_0x54266c){super(),this['id']=_0x14711e,this['userId']=_0x1886b2,this['role']=_0x184c2f,this['permissions']=_0x54266c;}['toJSON'](){return{'id':this['id'],'userId':this['userId']??void 0x0,'role':this['role']??void 0x0,'permissions':this['permissions']??void 0x0};}static['fromJSON'](data){return new SocketConnectMessage(data['id'],data['userId'],data['role'],data['permissions']);}}class SocketDisconnectMessage extends Message{static{this['TYPE']='33';}static{this['READABLE_TYPE_NAME']='disconnectSocket';}static{this['DESCRIPTOR_NAME']='SocketDisconnectMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1}}};}constructor(_0xda20){super(),this['id']=_0xda20;}['toJSON'](){return{'id':this['id']};}static['fromJSON'](data){return new SocketDisconnectMessage(data['id']);}}class SessionCollection extends Collection{constructor(_0x4b97e5,_0x483731){super({'idProperty':'id'}),this['_id']=_0x4b97e5,this['_sessionType']=_0x483731,this['_handlers']=new Map(),this['_eventsQueue']=[],this['_isRunning']=!0x1;}async['connect'](wsGateway){this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x5897e6=new SessionsConnectMessage(this['_id'],this['_sessionType']);let sessionsConnectResponse;try{const _0x4c727f=await this['_wsGateway']['_sendRequest'](0x3,SessionsConnectMessage['TYPE'],MessagesCompressor['encode'](_0x5897e6));sessionsConnectResponse=MessagesCompressor['decode'](_0x4c727f,SessionsConnectResponse);}catch(_0x1ae6dc){sessionsConnectResponse=new SessionsConnectResponse(this['_id'],[]);}this['_connectToChannel'](this['_wsGateway'],sessionsConnectResponse['channel'],this['_sessionType']);const _0x53b42d=await async function(wsGateway,_0x181134){const _0x320bdf=_0x181134['map'](socket=>socket['userId']),_0x4438e0=_0x320bdf['length']?await User['getMany'](wsGateway,_0x320bdf):[];return _0x181134['map'](socket=>{const item={'id':socket['id'],'role':socket['role'],'permissions':socket['permissions']};return item['user']=socket['userId']&&_0x4438e0['find'](_0x18455a=>_0x18455a['id']===socket['userId'])||new User(),item;});}(this['_wsGateway'],sessionsConnectResponse['sockets']);for(const _0x38d2f8 of _0x53b42d)super['add'](_0x38d2f8);this['_connected']=!0x0,this['fire']('connected'),this['listenTo'](this['_wsGateway'],'change:state',(_0x2435ca,_0xa98eec,_0x24723b)=>this['_onWsGatewayStateChange'](_0x24723b),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),await this['_runQueue']();}['disconnect'](_0x5b438c=!0x0){if(this['_connected']){for(this['_connected']=!0x1,this['_eventsQueue']=[];this['length'];)super['remove'](0x0);this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['_wsGateway']&&_0x5b438c&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['fire']('disconnected'),_0x5b438c&&this['stopListening']();}}['add'](_0x3ac66c,_0x5a1195){throw new TypeError('The\x20collection\x20is\x20read-only.');}['remove'](_0x44eee1){throw new TypeError('The\x20collection\x20is\x20read-only.');}['_connectToChannel'](wsGateway,_0x215d6f,_0x364df0){this['_channel']=wsGateway['_getChannel'](_0x364df0,_0x215d6f),this['_channel']&&(this['_addHandler'](this['_channel'],SocketConnectMessage['TYPE'],async data=>{const socketConnectMessage=MessagesCompressor['decode'](data,SocketConnectMessage);if(-0x1===this['getIndex'](socketConnectMessage['id'])){const socket={'id':socketConnectMessage['id'],'role':socketConnectMessage['role'],'permissions':socketConnectMessage['permissions']};socketConnectMessage['userId']&&(socket['user']=await User['get'](wsGateway,socketConnectMessage['userId'])),super['add'](socket);}}),this['_addHandler'](this['_channel'],SocketDisconnectMessage['TYPE'],data=>{const socketDisconnectMessage=MessagesCompressor['decode'](data,SocketDisconnectMessage);-0x1!==this['getIndex'](socketDisconnectMessage['id'])&&super['remove'](socketDisconnectMessage['id']);}));}async['_onWsGatewayStateChange'](state){state===WebSocketGateway['STATE_DISCONNECTED']&&this['disconnect'](!0x1),state===WebSocketGateway['STATE_CONNECTED']&&await this['connect'](this['_wsGateway']);}async['_runQueue'](){if(this['_isRunning']||!this['_connected'])return;let event;for(this['_isRunning']=!0x0;event=this['_eventsQueue']['shift']();){const _0x9a9f8b=this['_handlers']['get'](event['eventName']);_0x9a9f8b&&await _0x9a9f8b(event['data']);}this['_isRunning']=!0x1;}['_addHandler'](_0x2967a2,eventType,_0xe9c1ad){const eventName=_0x2967a2['getEventName'](eventType,!0x0);this['listenTo'](_0x2967a2,eventName,async(event,data)=>{const _0x1367be=event['name'];this['_eventsQueue']['push']({'eventName':_0x1367be,'data':data}),await this['_runQueue']();}),this['_handlers']['set'](eventName,_0xe9c1ad);}}class Sessions{static async['getConnectedSessions'](wsGateway,_0x27f213,_0x4dbedd){const sessionCollection=new SessionCollection(_0x27f213,_0x4dbedd);return await sessionCollection['connect'](wsGateway),sessionCollection;}}class CollaborativeEditingConnectMessage extends Message{static{this['TYPE']='11';}static{this['READABLE_TYPE_NAME']='connectToDocument';}static{this['DESCRIPTOR_NAME']='CollaborativeEditingConnectMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'bundleVersion':{'type':'string','id':0x2},'buffers':{'rule':'repeated','type':'bytes','id':0x3},'types':{'rule':'repeated','type':'uint32','id':0x4},'lastOperationId':{'type':'string','id':0x5}}};}constructor(_0x480590,_0x4cc0ae,types,_0x2649a1,lastOperationId=''){super(),this['id']=_0x480590,this['buffers']=_0x4cc0ae,this['types']=types,this['bundleVersion']=_0x2649a1,this['lastOperationId']=lastOperationId;}['toJSON'](){return{'id':this['id'],'buffers':this['buffers'],'types':this['types'],'bundleVersion':this['bundleVersion'],'lastOperationId':this['lastOperationId']};}static['fromJSON'](data){return new CollaborativeEditingConnectMessage(data['id'],data['buffers'],data['types'],data['bundleVersion'],data['lastOperationId']);}}class OperationMetadataHelpers{static['prepareMetadataForOperations'](types,metadata){if(!(types&&types['length']&&metadata&&metadata['length']))return[];const result=[];let _0x187630=0x0;for(const type of types)if(0x0!==type){if(!metadata[_0x187630])throw new Error('Missing\x20metadata\x20for\x20a\x20operation');result['push'](metadata[_0x187630]),_0x187630++;}else result['push'](result[result['length']-0x1]);return result;}static['removeUnnecessaryMetadata'](types,metadata){if(!(types&&types['length']&&metadata&&metadata['length']))return[];const result=[];for(let _0x3df08b=0x0;_0x3df08b<types['length'];_0x3df08b++)if(0x0!==types[_0x3df08b]){if(!metadata[_0x3df08b])throw new Error('Missing\x20metadata\x20for\x20a\x20operation');result['push'](metadata[_0x3df08b]);}return result;}}class OperationMetadataDescriptor extends Descriptor{static{this['DESCRIPTOR_NAME']='OperationMetadataDescriptor';}static{this['DESCRIPTOR']={'fields':{'userId':{'type':'string','id':0x1},'type':{'type':'string','id':0x2},'createdAt':{'type':'string','id':0x3}}};}static['toJSON']({createdAt:createdAt,...metadata}){const parsedMetadata={...metadata};return createdAt?.['toISOString']&&(parsedMetadata['createdAt']=createdAt['toISOString']()),parsedMetadata;}static['fromJSON']({createdAt:createdAt,...metadata}){const parsedMetadata={...metadata};return createdAt&&(parsedMetadata['createdAt']=new Date(createdAt)),parsedMetadata;}}class CollaborativeEditingUpdateMessage extends Message{static{this['TYPE']='13';}static{this['READABLE_TYPE_NAME']='updateDocument';}static{this['DESCRIPTOR_NAME']='CollaborativeEditingUpdateMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'baseVersion':{'type':'uint32','id':0x2},'buffers':{'rule':'repeated','type':'bytes','id':0x3},'types':{'rule':'repeated','type':'uint32','id':0x4},'metadata':{'rule':'repeated','type':'OperationMetadataDescriptor','id':0x6},'lastOperationId':{'type':'string','id':0x7}}};}constructor(_0x365da0,_0x36d823,types,_0x27cde0,metadata=[],lastOperationId=''){super(),this['id']=_0x365da0,this['buffers']=_0x36d823,this['types']=types,this['baseVersion']=_0x27cde0,this['metadata']=metadata,this['lastOperationId']=lastOperationId;}get['data'](){return{'buffers':this['buffers'],'types':this['types'],'baseVersion':this['baseVersion'],'lastOperationId':this['lastOperationId']};}['toJSON'](){return{'id':this['id'],'buffers':this['buffers'],'types':this['types'],'baseVersion':this['baseVersion'],'metadata':OperationMetadataHelpers['removeUnnecessaryMetadata'](this['types'],this['metadata'])['map'](OperationMetadataDescriptor['toJSON']),'lastOperationId':this['lastOperationId']};}static['fromJSON'](data){return new CollaborativeEditingUpdateMessage(data['id'],data['buffers'],data['types'],data['baseVersion'],OperationMetadataHelpers['prepareMetadataForOperations'](data['types'],data['metadata'])['map'](OperationMetadataDescriptor['fromJSON']),data['lastOperationId']);}}class CollaborativeEditingReconnectMessage extends Message{static{this['TYPE']='12';}static{this['READABLE_TYPE_NAME']='reconnectToDocument';}static{this['DESCRIPTOR_NAME']='CollaborativeEditingReconnectMessage';}static{this['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'bundleVersion':{'type':'string','id':0x2},'lastKnowVersion':{'type':'uint32','id':0x3}}};}constructor(_0x5cabe8,lastKnowVersion,_0x179469){super(),this['id']=_0x5cabe8,this['lastKnowVersion']=lastKnowVersion,this['bundleVersion']=_0x179469;}['toJSON'](){return{'id':this['id'],'bundleVersion':this['bundleVersion'],'lastKnowVersion':this['lastKnowVersion']};}static['fromJSON'](data){return new CollaborativeEditingReconnectMessage(data['id'],data['lastKnowVersion'],data['bundleVersion']);}}class CollaborativeEditingResponse extends Message{static{this['DESCRIPTOR_NAME']='CollaborativeEditingResponse';}static{this['DESCRIPTOR']={'fields':{'version':{'type':'uint32','id':0x1},'buffers':{'rule':'repeated','type':'bytes','id':0x2},'types':{'rule':'repeated','type':'uint32','id':0x3},'metadata':{'rule':'repeated','type':'OperationMetadataDescriptor','id':0x5},'lastOperationId':{'type':'string','id':0x6},'lastOperationAcceptedAt':{'type':'string','id':0x7}}};}constructor(_0x49c9df,_0x5d4a5f=[],types=[],metadata=[],lastOperationId='',lastOperationAcceptedAt=null){super(),this['version']=_0x49c9df,this['buffers']=_0x5d4a5f,this['types']=types,this['metadata']=metadata,this['lastOperationId']=lastOperationId,this['lastOperationAcceptedAt']=lastOperationAcceptedAt;}get['data'](){return{'buffers':this['buffers'],'types':this['types'],'baseVersion':this['version']-this['types']['length'],'lastOperationId':this['lastOperationId'],'lastOperationAcceptedAt':this['lastOperationAcceptedAt']};}get['wereChangesApplied'](){return!this['types']?.['length'];}['toJSON'](){return{'version':this['version'],'buffers':this['buffers'],'types':this['types'],'metadata':OperationMetadataHelpers['removeUnnecessaryMetadata'](this['types'],this['metadata'])['map'](OperationMetadataDescriptor['toJSON']),'lastOperationId':this['lastOperationId'],'lastOperationAcceptedAt':this['lastOperationAcceptedAt']instanceof Date?this['lastOperationAcceptedAt']['toISOString']():this['lastOperationAcceptedAt']};}static['fromJSON'](data){return new CollaborativeEditingResponse(data['version'],data['buffers'],data['types'],OperationMetadataHelpers['prepareMetadataForOperations'](data['types'],data['metadata'])['map'](OperationMetadataDescriptor['fromJSON']),data['lastOperationId'],data['lastOperationAcceptedAt']?new Date(data['lastOperationAcceptedAt']):null);}static['create'](data){return new CollaborativeEditingResponse(data['version'],data['buffers'],data['types'],data['metadata'],data['lastOperationId'],data['lastOperationAcceptedAt']?new Date(data['lastOperationAcceptedAt']):null);}}class CollaborativeEditingConnectResponse extends Message{static{this['DESCRIPTOR_NAME']='CollaborativeEditingConnectResponse';}static{this['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'offset':{'type':'uint32','id':0x2},'version':{'type':'uint32','id':0x3},'buffers':{'rule':'repeated','type':'bytes','id':0x4},'types':{'rule':'repeated','type':'uint32','id':0x5},'metadata':{'rule':'repeated','type':OperationMetadataDescriptor['DESCRIPTOR_NAME'],'id':0x7},'initData':{'type':'string','id':0x8},'isInitialized':{'type':'bool','id':0x9},'sessionId':{'type':'string','id':0xa},'lastOperationId':{'type':'string','id':0xb},'sessionCreatedAt':{'type':'string','id':0xc}}};}constructor(_0x2c8b22,_0x4c879a,_0x186aa5=[],types=[],offset=0x0,metadata=[],initData=null,_0x2ef9fa='',lastOperationId='',sessionCreatedAt=null){super(),this['channel']=_0x2c8b22,this['version']=_0x4c879a,this['buffers']=_0x186aa5,this['types']=types,this['offset']=offset,this['metadata']=metadata,this['initData']=initData,this['sessionId']=_0x2ef9fa,this['lastOperationId']=lastOperationId,this['sessionCreatedAt']=sessionCreatedAt;}get['data'](){return{'buffers':this['buffers'],'types':this['types'],'baseVersion':this['version']-this['types']['length'],'lastOperationId':this['lastOperationId'],'sessionCreatedAt':this['sessionCreatedAt']};}get['wereChangesApplied'](){return!this['types']?.['length']&&null===this['initData'];}['toJSON'](){return{'channel':this['channel'],'version':this['version'],'sessionId':this['sessionId'],'buffers':this['buffers'],'types':this['types'],'offset':this['offset'],'metadata':OperationMetadataHelpers['removeUnnecessaryMetadata'](this['types'],this['metadata'])['map'](OperationMetadataDescriptor['toJSON']),'initData':this['initData']??'','isInitialized':'string'==typeof this['initData'],'lastOperationId':this['lastOperationId'],'sessionCreatedAt':this['sessionCreatedAt']?this['sessionCreatedAt']['toISOString']():null};}static['create'](_0x44db6f){return new CollaborativeEditingConnectResponse(_0x44db6f['channel'],_0x44db6f['version'],_0x44db6f['buffers'],_0x44db6f['types'],_0x44db6f['offset'],_0x44db6f['metadata'],_0x44db6f['initData'],_0x44db6f['sessionId'],_0x44db6f['lastOperationId'],_0x44db6f['sessionCreatedAt']);}static['fromJSON'](data){let initData=null;return!0x0===data['isInitialized']?initData=data['initData']??'':'boolean'!=typeof data['isInitialized']&&data['initData']&&(initData=data['initData']),CollaborativeEditingConnectResponse['create']({'channel':data['channel'],'version':data['version'],'buffers':data['buffers'],'types':data['types'],'offset':data['offset'],'metadata':OperationMetadataHelpers['prepareMetadataForOperations'](data['types'],data['metadata'])['map'](OperationMetadataDescriptor['fromJSON']),'initData':initData,'sessionId':data['sessionId'],'lastOperationId':data['lastOperationId'],'sessionCreatedAt':data['sessionCreatedAt']?new Date(data['sessionCreatedAt']):null});}}class GetDocumentDetailsResponse extends Message{static{this['DESCRIPTOR_NAME']='GetDocumentDetailsResponse';}static{this['DESCRIPTOR']={'fields':{'lastDocumentSessionId':{'type':'string','id':0x1},'lastDocumentSessionOperationId':{'type':'string','id':0x2},'currentDocumentSessionId':{'type':'string','id':0x3},'currentDocumentSessionVersion':{'type':'uint32','id':0x4},'currentDocumentSessionOperationId':{'type':'string','id':0x5}}};}constructor(lastDocumentSession,currentDocumentSession){super(),this['lastDocumentSession']=lastDocumentSession,this['currentDocumentSession']=currentDocumentSession;}get['data'](){return{'lastDocumentSessionId':this['lastDocumentSession']?.['id'],'lastDocumentSessionOperationId':this['lastDocumentSession']?.['lastOperationId'],'currentDocumentSessionId':this['currentDocumentSession']?.['id'],'currentDocumentSessionVersion':this['currentDocumentSession']?.['version'],'currentDocumentSessionOperationId':this['currentDocumentSession']?.['lastOperationId']};}['toJSON'](){return{'lastDocumentSessionId':this['lastDocumentSession']?.['id'],'lastDocumentSessionOperationId':this['lastDocumentSession']?.['lastOperationId'],'currentDocumentSessionId':this['currentDocumentSession']?.['id'],'currentDocumentSessionVersion':this['currentDocumentSession']?.['version'],'currentDocumentSessionOperationId':this['currentDocumentSession']?.['lastOperationId']};}static['fromJSON'](data){const lastDocumentSession=data['lastDocumentSessionId']?{'id':data['lastDocumentSessionId'],'lastOperationId':data['lastDocumentSessionOperationId']}:void 0x0,currentDocumentSession=data['currentDocumentSessionId']?{'lastOperationId':data['currentDocumentSessionOperationId'],'version':data['currentDocumentSessionVersion'],'id':data['currentDocumentSessionId']}:void 0x0;return new GetDocumentDetailsResponse(lastDocumentSession,currentDocumentSession);}}class GetDocumentDetailsMessage extends Message{static{this['TYPE']='14';}static{this['READABLE_TYPE_NAME']='getDocumentDetails';}static{this['DESCRIPTOR_NAME']='GetDocumentDetailsMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'environmentId':{'type':'string','id':0x2}}};}constructor(documentId){super(),this['documentId']=documentId;}get['data'](){return{'documentId':this['documentId']};}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](data){return new GetDocumentDetailsMessage(data['documentId']);}}class CollaborativeEditingService extends EmitterMixin(){static{this['_SERVICE']=0x1;}constructor(_0x8cc250,_0x53de8e){if(super(),!_0x8cc250)throw new TypeError('Param\x20\x22bundleVersion\x22\x20must\x20be\x20provided.');this['_id']=_0x53de8e??v4(),this['_isConnected']=!0x1,this['_bundleVersion']=_0x8cc250;}['getId'](){return this['_id'];}['isConnected'](){return this['_isConnected'];}['connect'](wsGateway,data={'buffers':[],'types':[]},lastOperationId){const _0x273d38=new CollaborativeEditingConnectMessage(this['getId'](),data['buffers'],data['types'],this['_bundleVersion'],lastOperationId);return this['_connect'](wsGateway,_0x273d38);}['reconnect'](wsGateway,lastKnowVersion){if(this['isConnected']())throw new CKEditorCloudServicesError('Cannot\x20reconnect\x20to\x20already\x20connected\x20service.',wsGateway);return this['_connect'](wsGateway,new CollaborativeEditingReconnectMessage(this['getId'](),lastKnowVersion,this['_bundleVersion']));}['disconnect'](){this['_isConnected']&&(this['_isConnected']=!0x1,this['_wsGateway']&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['_connectedSessions']&&(this['_connectedSessions']['disconnect'](),this['_connectedSessions']=void 0x0),this['fire']('disconnected'),this['stopListening']());}async['getDocumentDetails'](){const _0x459642=new GetDocumentDetailsMessage(this['getId']());if(!this['_wsGateway'])throw new ServiceNotConnectedError('Collaborative\x20Editing',this);const _0x4f99b3=await this['_wsGateway']['_sendRequest'](0x1,GetDocumentDetailsMessage['TYPE'],MessagesCompressor['encode'](_0x459642));return MessagesCompressor['decode'](_0x4f99b3,GetDocumentDetailsResponse);}async['sendOperations'](data,_0x578721,lastOperationId){if(!data||!data['types']||!data['types']['length'])throw new CKEditorCloudServicesError('Cannot\x20send\x20empty\x20update.',this['_wsGateway']);const _0x4b6741='number'==typeof _0x578721?_0x578721:parseInt(_0x578721);if(!Number['isInteger'](_0x4b6741)||_0x4b6741<0x0)throw new CKEditorCloudServicesError('Base\x20version\x20not\x20provided.',this['_wsGateway']);const _0x413755=new CollaborativeEditingUpdateMessage(this['getId'](),data['buffers'],data['types'],_0x4b6741,[],lastOperationId);if(!this['_wsGateway']||!this['_isConnected'])throw new ServiceNotConnectedError('Collaborative\x20Editing',this);const _0x1246eb=await this['_wsGateway']['_sendRequest'](0x1,CollaborativeEditingUpdateMessage['TYPE'],MessagesCompressor['encode'](_0x413755));return MessagesCompressor['decode'](_0x1246eb,CollaborativeEditingResponse);}async['getConnectedSessions'](){if(!this['_isConnected'])throw new ServiceNotConnectedError('Collaborative\x20Editing',this);return this['_connectedSessions']||(this['_connectedSessions']=await Sessions['getConnectedSessions'](this['_wsGateway'],this['_id'],0x1)),this['_connectedSessions'];}static['getConnectedSessions'](wsGateway,_0x2def02){return Sessions['getConnectedSessions'](wsGateway,_0x2def02,0x1);}async['_connect'](wsGateway,_0x1311ff){if(this['isConnected']())return;if(wsGateway['state']!==WebSocketGateway['STATE_CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x4e5f24=await wsGateway['_sendRequest'](0x1,_0x1311ff['constructor']['TYPE'],MessagesCompressor['encode'](_0x1311ff)),collaborativeEditingConnectResponse=MessagesCompressor['decode'](_0x4e5f24,CollaborativeEditingConnectResponse);return this['listenTo'](wsGateway,'change:state',(_0x4920a0,_0x4ecafc,_0x2bc86e)=>this['_onWsGatewayStateChange'](_0x2bc86e),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['_connectToChannel'](wsGateway,collaborativeEditingConnectResponse['channel']),this['_isConnected']=!0x0,this['fire']('connected'),collaborativeEditingConnectResponse;}['_connectToChannel'](wsGateway,_0x4b8265){this['_channel']=wsGateway['_getChannel'](0x1,_0x4b8265),this['listenTo'](this['_channel'],this['_channel']['getEventName'](CollaborativeEditingUpdateMessage['TYPE']),(event,data)=>{const updateMessage=MessagesCompressor['decode'](data,CollaborativeEditingUpdateMessage);this['fire']('operationsReceived',updateMessage['baseVersion'],updateMessage['data'],updateMessage['metadata']);});}['_onWsGatewayStateChange'](_0x1a17d1){_0x1a17d1===WebSocketGateway['STATE_DISCONNECTED']&&this['disconnect']();}}class CommentDescriptor extends Descriptor{static{this['DESCRIPTOR_NAME']='CommentDescriptor';}static{this['DESCRIPTOR']={'fields':{'commentId':{'id':0x1,'type':'string'},'commentThreadId':{'id':0x2,'type':'string'},'userId':{'id':0x3,'type':'string'},'content':{'id':0x4,'type':'string'},'documentId':{'id':0x5,'type':'string'},'createdAt':{'id':0x6,'type':'string'},'attributes':{'id':0x7,'type':'string'}}};}static['toJSON'](comment){return{...comment,'createdAt':comment['createdAt']?.['toISOString'](),'attributes':comment['attributes']?JSON['stringify'](comment['attributes']):null};}static['fromJSON'](comment){return{...comment,'createdAt':new Date(comment['createdAt']),'attributes':comment['attributes']?JSON['parse'](comment['attributes']):null};}}class CommentsThreadDescriptor extends Descriptor{static{this['DESCRIPTOR_NAME']='CommentsThreadDescriptor';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'comments':{'type':'CommentDescriptor','rule':'repeated','id':0x2},'resolvedAt':{'type':'string','id':0x3},'resolvedBy':{'type':'string','id':0x4},'context':{'type':'string','id':0x5},'createdAt':{'type':'string','id':0x6},'deletedAt':{'type':'string','id':0x7},'attributes':{'type':'string','id':0x8},'unlinkedAt':{'type':'string','id':0x9}}};}static['toJSON'](thread){return{...thread,'createdAt':thread['createdAt']?.['toISOString'](),'deletedAt':thread['deletedAt']?.['toISOString'](),'resolvedAt':thread['resolvedAt']?.['toISOString'](),'attributes':thread['attributes']?JSON['stringify'](thread['attributes']):null,'context':thread['context']?JSON['stringify'](thread['context']):thread['context'],'comments':thread['comments']?.['map'](CommentDescriptor['toJSON']),'unlinkedAt':thread['unlinkedAt']?.['toISOString']()};}static['fromJSON'](thread){return{...thread,'createdAt':thread['createdAt']?new Date(thread['createdAt']):void 0x0,'deletedAt':thread['deletedAt']?new Date(thread['deletedAt']):void 0x0,'resolvedAt':thread['resolvedAt']?new Date(thread['resolvedAt']):void 0x0,'attributes':thread['attributes']?JSON['parse'](thread['attributes']):null,'context':thread['context']?JSON['parse'](thread['context']):void 0x0,'comments':thread['comments']?.['map'](CommentDescriptor['fromJSON']),'unlinkedAt':thread['unlinkedAt']?new Date(thread['unlinkedAt']):void 0x0};}}class AddCommentMessage extends Message{static{this['TYPE']='91';}static{this['READABLE_TYPE_NAME']='addComment';}static{this['DESCRIPTOR_NAME']='CommentsV2AddCommentMessage';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'content':{'type':'string','id':0x2},'documentId':{'type':'string','id':0x3},'commentId':{'type':'string','id':0x4},'createdAt':{'type':'string','id':0x5},'userId':{'type':'string','id':0x6},'attributes':{'type':'string','id':0x7},'commentThread':{'type':'CommentsThreadDescriptor','id':0x8}}};}constructor(documentId,commentThreadId,content,commentId='',createdAt,_0xe57d7a='',attributes=null,commentThread){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId,this['content']=content,this['commentId']=commentId,this['userId']=_0xe57d7a,this['attributes']=attributes,this['commentThread']=commentThread,this['createdAt']=createdAt?new Date(createdAt):'';}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'content':this['content'],'documentId':this['documentId'],'commentId':this['commentId'],'createdAt':this['createdAt']instanceof Date?this['createdAt']['toISOString']():this['createdAt'],'userId':this['userId'],'attributes':JSON['stringify'](this['attributes']),'commentThread':this['commentThread']?CommentsThreadDescriptor['toJSON'](this['commentThread']):void 0x0};}static['fromJSON'](object){return new AddCommentMessage(object['documentId'],object['commentThreadId'],object['content'],object['commentId']?object['commentId']:void 0x0,object['createdAt']?new Date(object['createdAt']):void 0x0,object['userId']?object['userId']:void 0x0,object['attributes']?JSON['parse'](object['attributes']):{},object['commentThread']?CommentsThreadDescriptor['fromJSON'](object['commentThread']):void 0x0);}}class AddCommentResponse extends Message{static{this['DESCRIPTOR_NAME']='CommentsV2AddCommentResponse';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'commentId':{'type':'string','id':0x2},'createdAt':{'type':'string','id':0x3}}};}constructor(commentThreadId,commentId,createdAt){super(),this['commentThreadId']=commentThreadId,this['commentId']=commentId,this['createdAt']=new Date(createdAt);}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'commentId':this['commentId'],'createdAt':this['createdAt']['toISOString']()};}static['fromJSON'](data){return new AddCommentResponse(data['commentThreadId'],data['commentId'],data['createdAt']);}}class ConnectMessage extends Message{static{this['TYPE']='92';}static{this['READABLE_TYPE_NAME']='connectToComment';}static{this['DESCRIPTOR_NAME']='CommentsV2ConnectMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};}constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new ConnectMessage(object['documentId']);}}class ConnectResponse extends Message{static{this['DESCRIPTOR_NAME']='CommentsV2ConnectResponse';}static{this['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'threads':{'type':'string','rule':'repeated','id':0x2},'threadsV2':{'type':'CommentsThreadDescriptor','rule':'repeated','id':0x3}}};}constructor(_0x54db53,_threads,_threadsV2){super(),this['channel']=_0x54db53,this['_threads']=_threads,this['_threadsV2']=_threadsV2,this['threads']=_threadsV2?.['length']?_threadsV2:_threads;}['toJSON'](){return{'channel':this['channel'],'threads':this['_threads']?.['map'](thread=>JSON['stringify'](thread)),'threadsV2':this['_threadsV2']?.['map'](CommentsThreadDescriptor['toJSON'])};}static['fromJSON'](object){return new ConnectResponse(object['channel'],object['threads']?.['map'](thread=>JSON['parse'](thread)),object['threadsV2']?.['map'](CommentsThreadDescriptor['fromJSON']));}}class RemoveCommentMessage extends Message{static{this['TYPE']='95';}static{this['READABLE_TYPE_NAME']='removeComment';}static{this['DESCRIPTOR_NAME']='CommentsV2RemoveCommentMessage';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'commentId':{'type':'string','id':0x2},'documentId':{'type':'string','id':0x3}}};}constructor(documentId,commentThreadId,commentId){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId,this['commentId']=commentId;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId'],'commentId':this['commentId']};}static['fromJSON'](object){return new RemoveCommentMessage(object['documentId'],object['commentThreadId'],object['commentId']);}}class RemoveCommentThreadMessage extends Message{static{this['TYPE']='97';}static{this['READABLE_TYPE_NAME']='removeCommentThread';}static{this['DESCRIPTOR_NAME']='CommentsV2RemoveCommentThreadMessage';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2}}};}constructor(documentId,commentThreadId){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId']};}static['fromJSON'](object){return new RemoveCommentThreadMessage(object['documentId'],object['commentThreadId']);}}class UpdateCommentMessage extends Message{static{this['TYPE']='96';}static{this['READABLE_TYPE_NAME']='updateComment';}static{this['DESCRIPTOR_NAME']='CommentsV2UpdateCommentMessage';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'commentId':{'type':'string','id':0x2},'content':{'type':'string','id':0x3},'documentId':{'type':'string','id':0x4},'attributes':{'type':'string','id':0x5},'isAttributesUpdated':{'type':'bool','id':0x6},'commentThread':{'type':'CommentsThreadDescriptor','id':0x7}}};}constructor(documentId,commentThreadId,commentId,content,attributes=null,isAttributesUpdated=!0x1,commentThread){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId,this['commentId']=commentId,this['content']=content,this['attributes']=attributes,this['isAttributesUpdated']=isAttributesUpdated,this['commentThread']=commentThread;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId'],'commentId':this['commentId'],'content':this['content'],'attributes':this['attributes']?JSON['stringify'](this['attributes']):null,'isAttributesUpdated':this['isAttributesUpdated'],'commentThread':this['commentThread']?CommentsThreadDescriptor['toJSON'](this['commentThread']):void 0x0};}static['fromJSON'](object){return new UpdateCommentMessage(object['documentId'],object['commentThreadId'],object['commentId'],object['content'],object['attributes']?JSON['parse'](object['attributes']):null,object['isAttributesUpdated'],object['commentThread']?CommentsThreadDescriptor['fromJSON'](object['commentThread']):void 0x0);}}class GetCommentThreadMessage extends Message{static{this['TYPE']='93';}static{this['READABLE_TYPE_NAME']='getComment';}static{this['DESCRIPTOR_NAME']='CommentsV2GetCommentThreadMessage';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2}}};}constructor(commentThreadId,documentId){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId;}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'documentId':this['documentId']};}static['fromJSON'](object){return new GetCommentThreadMessage(object['commentThreadId'],object['documentId']);}}class GetCommentThreadResponse extends Message{static{this['DESCRIPTOR_NAME']='CommentsV2GetCommentThreadResponse';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'comments':{'type':'string','rule':'repeated','id':0x2},'commentsV2':{'type':'CommentDescriptor','rule':'repeated','id':0x3},'resolvedAt':{'type':'string','id':0x4},'resolvedBy':{'type':'string','id':0x5},'context':{'type':'string','id':0x6},'createdAt':{'type':'string','id':0x7},'deletedAt':{'type':'string','id':0x8},'attributes':{'type':'string','id':0x9},'unlinkedAt':{'type':'string','id':0xa}}};}constructor(commentThreadId,_comments,_commentsV2,attributes,_0x15dcbc,context,createdAt,deletedAt,resolvedAt,unlinkedAt){super(),this['commentThreadId']=commentThreadId,this['_comments']=_comments,this['_commentsV2']=_commentsV2,this['resolvedBy']=_0x15dcbc,this['comments']=_commentsV2?.['length']?_commentsV2:_comments,this['createdAt']=createdAt?new Date(createdAt):void 0x0,this['deletedAt']='string'==typeof deletedAt?new Date(deletedAt):deletedAt,this['resolvedAt']='string'==typeof resolvedAt?new Date(resolvedAt):resolvedAt,this['unlinkedAt']='string'==typeof unlinkedAt?new Date(unlinkedAt):unlinkedAt,this['attributes']='string'==typeof attributes?JSON['parse'](attributes):attributes,this['context']='string'==typeof context?JSON['parse'](context):context;}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'comments':this['_comments']?.['map'](comment=>JSON['stringify'](comment)),'commentsV2':this['_commentsV2']?.['map'](CommentDescriptor['toJSON']),'attributes':this['attributes']?JSON['stringify'](this['attributes']):this['attributes'],'context':this['context']?JSON['stringify'](this['context']):this['context'],'resolvedBy':this['resolvedBy'],'createdAt':this['createdAt']?.['toISOString'](),'deletedAt':this['deletedAt']?.['toISOString'](),'resolvedAt':this['resolvedAt']?.['toISOString'](),'unlinkedAt':this['unlinkedAt']?.['toISOString']()};}static['fromJSON'](object){return new GetCommentThreadResponse(object['commentThreadId'],object['comments']?.['map'](comment=>function(commentString){const comment=JSON['parse'](commentString);return{...comment,'createdAt':new Date(comment['createdAt'])};}(comment)),object['commentsV2']?.['map'](CommentDescriptor['fromJSON']),object['attributes']?JSON['parse'](object['attributes']):object['attributes'],object['resolvedBy'],object['context']?JSON['parse'](object['context']):object['context'],object['createdAt'],object['deletedAt'],object['resolvedAt'],object['unlinkedAt']);}}class GetDocumentThreadsMessage extends Message{static{this['TYPE']='94';}static{this['READABLE_TYPE_NAME']='getDocumentThreads';}static{this['DESCRIPTOR_NAME']='CommentsV2GetDocumentThreadsMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};}constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new GetDocumentThreadsMessage(object['documentId']);}}class GetDocumentThreadsResponse extends Message{static{this['DESCRIPTOR_NAME']='CommentsV2GetDocumentThreadsResponse';}static{this['DESCRIPTOR']={'fields':{'threads':{'type':'string','rule':'repeated','id':0x1},'threadsV2':{'type':'CommentsThreadDescriptor','rule':'repeated','id':0x2}}};}constructor(_threads,_threadsV2){super(),this['_threads']=_threads,this['_threadsV2']=_threadsV2,this['threads']=_threadsV2?.['length']?_threadsV2:_threads;}['toJSON'](){return{'threads':this['_threads']?.['map'](thread=>JSON['stringify'](thread)),'threadsV2':this['_threadsV2']?.['map'](CommentsThreadDescriptor['toJSON'])};}static['fromJSON'](object){return new GetDocumentThreadsResponse(object['threads']?.['map'](thread=>function(threadString){const threadRaw=JSON['parse'](threadString),thread={...threadRaw};return threadRaw['comments']&&(thread['comments']=threadRaw['comments']?.['map'](comment=>({...comment,'createdAt':new Date(comment['createdAt'])}))),thread;}(thread)),object['threadsV2']?.['map'](CommentsThreadDescriptor['fromJSON']));}}class CommentThreadAddedCommentDescriptor extends Descriptor{static{this['DESCRIPTOR_NAME']='CommentThreadAddedCommentDescriptor';}static{this['DESCRIPTOR']={'fields':{'commentId':{'id':0x1,'type':'string'},'createdAt':{'id':0x2,'type':'string'}}};}static['toJSON'](comment){return{'commentId':comment['commentId'],'createdAt':comment['createdAt']?.['toISOString']()};}static['fromJSON'](comment){return{'commentId':comment['commentId'],'createdAt':new Date(comment['createdAt'])};}}class AddCommentThreadResponse extends Message{static{this['DESCRIPTOR_NAME']='CommentsV2AddCommentThreadResponse';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'createdAt':{'type':'string','id':0x2},'comments':{'type':'CommentThreadAddedCommentDescriptor','rule':'repeated','id':0x3}}};}constructor(commentThreadId,createdAt,comments=[]){super(),this['commentThreadId']=commentThreadId,this['comments']=comments,this['createdAt']=new Date(createdAt);}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'createdAt':this['createdAt']['toISOString'](),'comments':this['comments']['map'](comment=>CommentThreadAddedCommentDescriptor['toJSON'](comment))};}static['fromJSON'](data){return new AddCommentThreadResponse(data['commentThreadId'],data['createdAt'],data['comments']['map'](comment=>CommentThreadAddedCommentDescriptor['fromJSON'](comment)));}}class AddCommentThreadMessage extends Message{static{this['TYPE']='140';}static{this['READABLE_TYPE_NAME']='addCommentThread';}static{this['DESCRIPTOR_NAME']='CommentsV2AddCommentThreadMessage';}static{this['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'commentThreadId':{'type':'string','id':0x2},'context':{'type':'string','id':0x3},'createdAt':{'type':'string','id':0x4},'resolvedAt':{'type':'string','id':0x5},'resolvedBy':{'type':'string','id':0x6},'attributes':{'type':'string','id':0x7},'deletedAt':{'type':'string','id':0x8},'comments':{'type':'CommentDescriptor','rule':'repeated','id':0x9}}};}constructor(documentId,commentThreadId,comments=[],context,_0x1085cf=null,createdAt=null,resolvedAt=null,deletedAt=null,attributes=null){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId,this['comments']=comments,this['context']=context,this['resolvedBy']=_0x1085cf,this['attributes']=attributes,this['createdAt']=createdAt?new Date(createdAt):'',this['resolvedAt']=resolvedAt?new Date(resolvedAt):'',this['deletedAt']=deletedAt?new Date(deletedAt):'';}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'context':this['context']?JSON['stringify'](this['context']):this['context'],'documentId':this['documentId'],'resolvedBy':this['resolvedBy'],'resolvedAt':this['resolvedAt']instanceof Date?this['resolvedAt']['toISOString']():this['resolvedAt'],'deletedAt':this['deletedAt']instanceof Date?this['deletedAt']['toISOString']():this['deletedAt'],'createdAt':this['createdAt']instanceof Date?this['createdAt']['toISOString']():this['createdAt'],'attributes':this['attributes']?JSON['stringify'](this['attributes']):this['attributes'],'comments':this['comments']?.['map'](_0x4b317c=>CommentDescriptor['toJSON'](_0x4b317c))};}static['fromJSON'](object){return new AddCommentThreadMessage(object['documentId'],object['commentThreadId'],object['comments']?.['map'](_0x3090cc=>CommentDescriptor['fromJSON']({..._0x3090cc,'documentId':object['documentId'],'commentThreadId':object['commentThreadId']})),object['context']?JSON['parse'](object['context']):object['context'],object['resolvedBy'],object['createdAt']?new Date(object['createdAt']):void 0x0,object['resolvedAt']?new Date(object['resolvedAt']):void 0x0,object['deletedAt']?new Date(object['deletedAt']):void 0x0,object['attributes']?JSON['parse'](object['attributes']):object['attributes']);}}class ResolveCommentThreadMessage extends Message{static{this['TYPE']='142';}static{this['READABLE_TYPE_NAME']='resolveCommentThread';}static{this['DESCRIPTOR_NAME']='CommentsV2ResolveCommentThreadMessage';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'resolvedBy':{'type':'string','id':0x3},'resolvedAt':{'type':'string','id':0x4}}};}constructor(commentThreadId,documentId,_0x355fdf,resolvedAt){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId,this['resolvedBy']=_0x355fdf,this['resolvedAt']=resolvedAt?new Date(resolvedAt):void 0x0;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId'],'resolvedBy':this['resolvedBy'],'resolvedAt':this['resolvedAt']?.['toISOString']()};}static['fromJSON'](object){return new ResolveCommentThreadMessage(object['commentThreadId'],object['documentId'],object['resolvedBy'],object['resolvedAt']);}}class ReopenCommentThreadMessage extends Message{static{this['TYPE']='141';}static{this['READABLE_TYPE_NAME']='reopenCommentThread';}static{this['DESCRIPTOR_NAME']='CommentsV2ReopenCommentThreadMessage';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2}}};}constructor(commentThreadId,documentId){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId']};}static['fromJSON'](object){return new ReopenCommentThreadMessage(object['commentThreadId'],object['documentId']);}}class UpdateCommentThreadMessage extends Message{static{this['TYPE']='143';}static{this['READABLE_TYPE_NAME']='updateCommentThread';}static{this['DESCRIPTOR_NAME']='CommentsV2UpdateCommentThreadMessage';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'context':{'type':'string','id':0x3},'attributes':{'type':'string','id':0x4},'unlinkedAt':{'type':'string','id':0x5}}};}constructor(commentThreadId,documentId,context,attributes=null,unlinkedAt=null){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId,this['context']=context,this['attributes']=attributes,this['unlinkedAt']=unlinkedAt?new Date(unlinkedAt):'';}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId'],'context':this['context']?JSON['stringify'](this['context']):this['context'],'attributes':this['attributes']?JSON['stringify'](this['attributes']):null,'unlinkedAt':this['unlinkedAt']instanceof Date?this['unlinkedAt']['toISOString']():this['unlinkedAt']};}static['fromJSON'](object){return new UpdateCommentThreadMessage(object['commentThreadId'],object['documentId'],object['context']?JSON['parse'](object['context']):object['context'],object['attributes']?JSON['parse'](object['attributes']):null,object['unlinkedAt']?new Date(object['unlinkedAt']):null);}}class ResolveCommentThreadResponse extends Message{static{this['DESCRIPTOR_NAME']='CommentsV2ResolveCommentThreadResponse';}static{this['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'resolvedAt':{'type':'string','id':0x3},'resolvedBy':{'type':'string','id':0x4}}};}constructor(commentThreadId,documentId,_0x18e3c6,resolvedAt){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId,this['resolvedBy']=_0x18e3c6,this['resolvedAt']=new Date(resolvedAt);}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'documentId':this['documentId'],'resolvedBy':this['resolvedBy'],'resolvedAt':this['resolvedAt']['toISOString']()};}static['fromJSON'](data){return new ResolveCommentThreadResponse(data['commentThreadId'],data['documentId'],data['resolvedBy'],data['resolvedAt']);}}class CommentsService extends EmitterMixin(){static{this['_SERVICE']=0x9;}constructor(_documentId){super(),this['_documentId']=_documentId,this['_isConnected']=!0x1;}get['isConnected'](){return this['_isConnected'];}async['connect'](wsGateway){if(this['_isConnected'])return;if(wsGateway['state']!==WEB_SOCKET_GATEWAY_STATES['CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);const connectMessage=new ConnectMessage(this['_documentId']);this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x49249e=await wsGateway['_sendRequest'](0x9,ConnectMessage['TYPE'],MessagesCompressor['encode'](connectMessage)),{channel:_0x490c28,threads:threads}=MessagesCompressor['decode'](_0x49249e,ConnectResponse);return this['listenTo'](wsGateway,'change:state',(_0x5b76a9,_0x267846,_0x14f666)=>this['_onWsGatewayStateChange'](_0x14f666),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['_connectToChannel'](wsGateway,_0x490c28),this['_isConnected']=!0x0,this['fire']('connected'),threads;}['disconnect'](){this['_isConnected']&&(this['_isConnected']=!0x1,this['_wsGateway']&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['_connectedSessions']&&(this['_connectedSessions']['disconnect'](),this['_connectedSessions']=void 0x0),this['fire']('disconnected'),this['stopListening']());}async['addComment'](commentThreadId,commentId,content,attributes){const _0x43b6c9=new AddCommentMessage(this['_documentId'],commentThreadId,content,commentId,void 0x0,void 0x0,attributes),_0x4f583b=await this['_sendRequest'](AddCommentMessage['TYPE'],_0x43b6c9);return MessagesCompressor['decode'](_0x4f583b,AddCommentResponse);}async['updateComment'](commentThreadId,commentId,content,attributes){const isAttributesUpdated=void 0x0!==attributes,_0x2d5770=new UpdateCommentMessage(this['_documentId'],commentThreadId,commentId,content,attributes,isAttributesUpdated);await this['_sendRequest'](UpdateCommentMessage['TYPE'],_0x2d5770);}async['removeComment'](commentThreadId,commentId){const _0x563648=new RemoveCommentMessage(this['_documentId'],commentThreadId,commentId);await this['_sendRequest'](RemoveCommentMessage['TYPE'],_0x563648);}async['removeCommentThread'](commentThreadId){const _0x4a58e5=new RemoveCommentThreadMessage(this['_documentId'],commentThreadId);await this['_sendRequest'](RemoveCommentThreadMessage['TYPE'],_0x4a58e5);}async['addCommentThread'](addCommentThreadParams){const _0x173e7f=new AddCommentThreadMessage(this['_documentId'],addCommentThreadParams['commentThreadId'],addCommentThreadParams['comments']?.['map'](comment=>({...comment,'documentId':this['_documentId'],'commentThreadId':addCommentThreadParams['commentThreadId']})),addCommentThreadParams['context'],addCommentThreadParams['resolvedBy'],addCommentThreadParams['createdAt'],addCommentThreadParams['resolvedAt'],addCommentThreadParams['deletedAt'],addCommentThreadParams['attributes']),_0x59149b=await this['_sendRequest'](AddCommentThreadMessage['TYPE'],_0x173e7f);return MessagesCompressor['decode'](_0x59149b,AddCommentThreadResponse);}async['resolveCommentThread'](commentThreadId){const _0x1850fa=new ResolveCommentThreadMessage(commentThreadId,this['_documentId']),_0x2ef0a2=await this['_sendRequest'](ResolveCommentThreadMessage['TYPE'],_0x1850fa);return MessagesCompressor['decode'](_0x2ef0a2,ResolveCommentThreadResponse);}async['reopenCommentThread'](commentThreadId){const _0x3333d7=new ReopenCommentThreadMessage(commentThreadId,this['_documentId']);await this['_sendRequest'](ReopenCommentThreadMessage['TYPE'],_0x3333d7);}async['updateCommentThread'](_0x16030b){const _0x5b4184=new UpdateCommentThreadMessage(_0x16030b['commentThreadId'],this['_documentId'],_0x16030b['context'],_0x16030b['attributes'],_0x16030b['unlinkedAt']);await this['_sendRequest'](UpdateCommentThreadMessage['TYPE'],_0x5b4184);}async['getCommentThread'](commentThreadId,attempt=0x1){const _0xb8b3da=new GetCommentThreadMessage(commentThreadId,this['_documentId']);try{const _0x35ae78=await this['_sendRequest'](GetCommentThreadMessage['TYPE'],_0xb8b3da),commentThreadResponse=MessagesCompressor['decode'](_0x35ae78,GetCommentThreadResponse);return{'commentThreadId':commentThreadResponse['commentThreadId'],'comments':commentThreadResponse['comments'],'attributes':commentThreadResponse['attributes'],'context':commentThreadResponse['context'],'resolvedAt':commentThreadResponse['resolvedAt'],'resolvedBy':commentThreadResponse['resolvedBy'],'deletedAt':commentThreadResponse['deletedAt'],'unlinkedAt':commentThreadResponse['unlinkedAt']};}catch(_0x2385f7){if('CKEditorCloudServicesServerError'===_0x2385f7['name']&&'404'===_0x2385f7['code']&&attempt<0x5)return await(time=0x64*attempt,new Promise(_0x2e7494=>{setTimeout(_0x2e7494,time);})),this['getCommentThread'](commentThreadId,attempt+0x1);if('CKEditorCloudServicesServerError'===_0x2385f7['name'])throw _0x2385f7;throw CKEditorCloudServicesServerError['fromPublicError'](_0x2385f7);}var time;}async['getDocumentThreads'](){const _0x156a4f=new GetDocumentThreadsMessage(this['_documentId']),_0x4cd083=await this['_sendRequest'](GetDocumentThreadsMessage['TYPE'],_0x156a4f),{threads:threads}=MessagesCompressor['decode'](_0x4cd083,GetDocumentThreadsResponse);return{'threads':threads};}async['getConnectedSessions'](){if(!this['_isConnected'])throw new ServiceNotConnectedError('Comments',this);return this['_connectedSessions']||(this['_connectedSessions']=await Sessions['getConnectedSessions'](this['_wsGateway'],this['_documentId'],0x9)),this['_connectedSessions'];}['_connectToChannel'](wsGateway,_0xfa48f1){this['_channel']=wsGateway['_getChannel'](CommentsService['_SERVICE'],_0xfa48f1),this['_channel']&&(this['listenTo'](this['_channel'],this['_channel']['getEventName'](AddCommentMessage['TYPE']),(event,data)=>{const addCommentMessage=MessagesCompressor['decode'](data,AddCommentMessage);this['fire']('commentAdded',addCommentMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](RemoveCommentMessage['TYPE']),(event,data)=>{const removeCommentMessage=MessagesCompressor['decode'](data,RemoveCommentMessage);this['fire']('commentRemoved',removeCommentMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](UpdateCommentMessage['TYPE']),(event,data)=>{const updateCommentMessage=MessagesCompressor['decode'](data,UpdateCommentMessage);this['fire']('commentUpdated',updateCommentMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](RemoveCommentThreadMessage['TYPE']),(event,data)=>{const removeCommentThreadMessage=MessagesCompressor['decode'](data,RemoveCommentThreadMessage);this['fire']('commentThreadRemoved',removeCommentThreadMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](AddCommentThreadMessage['TYPE']),(event,data)=>{const addCommentThreadMessage=MessagesCompressor['decode'](data,AddCommentThreadMessage);this['fire']('commentThreadAdded',addCommentThreadMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](UpdateCommentThreadMessage['TYPE']),(event,data)=>{const updateCommentThreadMessage=MessagesCompressor['decode'](data,UpdateCommentThreadMessage);this['fire']('commentThreadUpdated',updateCommentThreadMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](ResolveCommentThreadMessage['TYPE']),(event,data)=>{const resolveCommentThreadMessage=MessagesCompressor['decode'](data,ResolveCommentThreadMessage);this['fire']('commentThreadResolved',resolveCommentThreadMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](ReopenCommentThreadMessage['TYPE']),(event,data)=>{const reopenCommentThreadMessage=MessagesCompressor['decode'](data,ReopenCommentThreadMessage);this['fire']('commentThreadReopened',reopenCommentThreadMessage);}));}['_onWsGatewayStateChange'](_0x2709bd){_0x2709bd===WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&this['disconnect']();}['_sendRequest'](method,_0x567a34){if(!this['_wsGateway']||!this['_isConnected'])throw new ServiceNotConnectedError('Comments',this);return this['_wsGateway']['_sendRequest'](0x9,method,MessagesCompressor['encode'](_0x567a34));}}const MESSAGE_TYPE_NAME_MAP=new Map([[CollaborativeEditingConnectMessage['TYPE'],CollaborativeEditingConnectMessage['READABLE_TYPE_NAME']],[CollaborativeEditingReconnectMessage['TYPE'],CollaborativeEditingReconnectMessage['READABLE_TYPE_NAME']],[CollaborativeEditingUpdateMessage['TYPE'],CollaborativeEditingUpdateMessage['READABLE_TYPE_NAME']],[GetDocumentDetailsMessage['TYPE'],GetDocumentDetailsMessage['READABLE_TYPE_NAME']],[AddCommentMessage['TYPE'],AddCommentMessage['READABLE_TYPE_NAME']],[ConnectMessage['TYPE'],ConnectMessage['READABLE_TYPE_NAME']],[GetCommentThreadMessage['TYPE'],GetCommentThreadMessage['READABLE_TYPE_NAME']],[GetDocumentThreadsMessage['TYPE'],GetDocumentThreadsMessage['READABLE_TYPE_NAME']],[RemoveCommentMessage['TYPE'],RemoveCommentMessage['READABLE_TYPE_NAME']],[RemoveCommentThreadMessage['TYPE'],RemoveCommentThreadMessage['READABLE_TYPE_NAME']],[UpdateCommentMessage['TYPE'],UpdateCommentMessage['READABLE_TYPE_NAME']],[SessionsConnectMessage['TYPE'],SessionsConnectMessage['READABLE_TYPE_NAME']],[SocketConnectMessage['TYPE'],SocketConnectMessage['READABLE_TYPE_NAME']],[SocketDisconnectMessage['TYPE'],SocketDisconnectMessage['READABLE_TYPE_NAME']],[AddSuggestionMessage['TYPE'],AddSuggestionMessage['READABLE_TYPE_NAME']],[GetSuggestionMessage['TYPE'],GetSuggestionMessage['READABLE_TYPE_NAME']],[UpdateSuggestionMessage['TYPE'],UpdateSuggestionMessage['READABLE_TYPE_NAME']],[GetAllSuggestionsMessage['TYPE'],GetAllSuggestionsMessage['READABLE_TYPE_NAME']],[ConnectMessage$1['TYPE'],ConnectMessage$1['READABLE_TYPE_NAME']],[BatchUpdateSuggestionsStateMessage['TYPE'],BatchUpdateSuggestionsStateMessage['READABLE_TYPE_NAME']],[GetUserMessage['TYPE'],GetUserMessage['READABLE_TYPE_NAME']],[GetManyUsersMessage['TYPE'],GetManyUsersMessage['READABLE_TYPE_NAME']],[RevisionHistoryConnectMessage['TYPE'],RevisionHistoryConnectMessage['READABLE_TYPE_NAME']],[RevisionHistoryReconnectMessage['TYPE'],RevisionHistoryReconnectMessage['READABLE_TYPE_NAME']],[RevisionHistoryGetRevisionMessage['TYPE'],RevisionHistoryGetRevisionMessage['READABLE_TYPE_NAME']],[RevisionHistoryUpdateRevisionsMessage['TYPE'],RevisionHistoryUpdateRevisionsMessage['READABLE_TYPE_NAME']],[IsEditorBundleUploadedMessage['TYPE'],IsEditorBundleUploadedMessage['READABLE_TYPE_NAME']],[ResolveCommentThreadMessage['TYPE'],ResolveCommentThreadMessage['READABLE_TYPE_NAME']],[ReopenCommentThreadMessage['TYPE'],ReopenCommentThreadMessage['READABLE_TYPE_NAME']],[UpdateCommentThreadMessage['TYPE'],UpdateCommentThreadMessage['READABLE_TYPE_NAME']],[AddCommentThreadMessage['TYPE'],AddCommentThreadMessage['READABLE_TYPE_NAME']]]);class MessagesMapper{static['typeToStringName'](_0x428875){return MESSAGE_TYPE_NAME_MAP['get'](String(_0x428875))??_0x428875;}}export{AddCommentMessage,AddCommentResponse,AddCommentThreadMessage,AddCommentThreadResponse,AddSuggestionMessage,AddSuggestionResponse,BatchUpdateSuggestionsStateMessage,ChannelMessage,CollaborativeEditingConnectMessage,CollaborativeEditingConnectResponse,CollaborativeEditingReconnectMessage,CollaborativeEditingResponse,CollaborativeEditingService,CollaborativeEditingUpdateMessage,CommentsService,ConnectMessage as ConnectCommentsMessage,ConnectResponse as ConnectCommentsResponse,ConnectMessage$1 as ConnectTrackChangesMessage,ConnectResponse$1 as ConnectTrackChangesResponse,Decoder,EditorService,Encoder,GetAllSuggestionsMessage,GetAllSuggestionResponse as GetAllSuggestionsResponse,GetCommentThreadMessage,GetCommentThreadResponse,GetDocumentDetailsMessage,GetDocumentDetailsResponse,GetDocumentThreadsMessage,GetDocumentThreadsResponse,GetManyUsersMessage,GetManyUsersResponse,GetSuggestionMessage,GetSuggestionResponse,GetUserMessage,GetUserResponse,IsEditorBundleUploadedMessage,IsEditorBundleUploadedResponse,MessagesCompressor,MessagesMapper,PacketParser,parser as Parser,RemoveCommentMessage,RemoveCommentThreadMessage,ReopenCommentThreadMessage,ResolveCommentThreadMessage,ResolveCommentThreadResponse,RevisionHistoryConnectMessage,RevisionHistoryConnectResponse,RevisionHistoryGetRevisionMessage,RevisionHistoryGetRevisionResponse,RevisionHistoryReconnectMessage,RevisionHistoryService,RevisionHistoryUpdateRevisionsMessage,RevisionHistoryUpdateRevisionsResponse,SessionCollection,SessionsConnectMessage,SessionsConnectResponse,SocketConnectMessage,SocketDisconnectMessage,TrackChangesService,UpdateCommentMessage,UpdateCommentThreadMessage,UpdateSuggestionMessage,User,WEB_SOCKET_GATEWAY_STATES,WebSocketGateway};
23
+ import _0x4a5bb6 from'url-parse';import{EmitterMixin,ObservableMixin,priorities,global,Collection}from'@ckeditor/ckeditor5-utils/dist/index.js';import $protobuf from'protobufjs/minimal.js';import{v4}from'uuid';const PACKET_TYPES=Object['create'](null);PACKET_TYPES['open']='0',PACKET_TYPES['close']='1',PACKET_TYPES['ping']='2',PACKET_TYPES['pong']='3',PACKET_TYPES['message']='4',PACKET_TYPES['upgrade']='5',PACKET_TYPES['noop']='6';const PACKET_TYPES_REVERSE=Object['create'](null);Object['keys'](PACKET_TYPES)['forEach'](_0x14a8be=>{PACKET_TYPES_REVERSE[PACKET_TYPES[_0x14a8be]]=_0x14a8be;});const ERROR_PACKET={'type':'error','data':'parser\x20error'},withNativeBlob$1='function'==typeof Blob||'undefined'!=typeof Blob&&'[object\x20BlobConstructor]'===Object['prototype']['toString']['call'](Blob),withNativeArrayBuffer$2='function'==typeof ArrayBuffer,encodePacket=({type:type,data:data},supportsBinary,_0x6216e1)=>{return withNativeBlob$1&&data instanceof Blob?supportsBinary?_0x6216e1(data):encodeBlobAsBase64(data,_0x6216e1):withNativeArrayBuffer$2&&(data instanceof ArrayBuffer||(_0x18c075=data,'function'==typeof ArrayBuffer['isView']?ArrayBuffer['isView'](_0x18c075):_0x18c075&&_0x18c075['buffer']instanceof ArrayBuffer))?supportsBinary?_0x6216e1(data):encodeBlobAsBase64(new Blob([data]),_0x6216e1):_0x6216e1(PACKET_TYPES[type]+(data||''));var _0x18c075;},encodeBlobAsBase64=(data,_0x4ba671)=>{const _0x24a774=new FileReader();return _0x24a774['onload']=function(){const content=_0x24a774['result']['split'](',')[0x1];_0x4ba671('b'+(content||''));},_0x24a774['readAsDataURL'](data);},chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',lookup$1='undefined'==typeof Uint8Array?[]:new Uint8Array(0x100);for(let i=0x0;i<0x40;i++)lookup$1[chars['charCodeAt'](i)]=i;const withNativeArrayBuffer$1='function'==typeof ArrayBuffer,decodePacket=(encodedPacket,_0xa763d9)=>{if('string'!=typeof encodedPacket)return{'type':'message','data':mapBinary(encodedPacket,_0xa763d9)};const type=encodedPacket['charAt'](0x0);if('b'===type)return{'type':'message','data':decodeBase64Packet(encodedPacket['substring'](0x1),_0xa763d9)};return PACKET_TYPES_REVERSE[type]?encodedPacket['length']>0x1?{'type':PACKET_TYPES_REVERSE[type],'data':encodedPacket['substring'](0x1)}:{'type':PACKET_TYPES_REVERSE[type]}:ERROR_PACKET;},decodeBase64Packet=(data,_0x459e55)=>{if(withNativeArrayBuffer$1){const _0x26c72d=(_0x4172ce=>{let _0x224f26,_0x5cd6d2,_0x330338,_0x4fb2dc,_0x6a559f,bufferLength=0.75*_0x4172ce['length'],_0x23dcd8=_0x4172ce['length'],_0x563dcc=0x0;'='===_0x4172ce[_0x4172ce['length']-0x1]&&(bufferLength--,'='===_0x4172ce[_0x4172ce['length']-0x2]&&bufferLength--);const _0x7b5e97=new ArrayBuffer(bufferLength),bytes=new Uint8Array(_0x7b5e97);for(_0x224f26=0x0;_0x224f26<_0x23dcd8;_0x224f26+=0x4)_0x5cd6d2=lookup$1[_0x4172ce['charCodeAt'](_0x224f26)],_0x330338=lookup$1[_0x4172ce['charCodeAt'](_0x224f26+0x1)],_0x4fb2dc=lookup$1[_0x4172ce['charCodeAt'](_0x224f26+0x2)],_0x6a559f=lookup$1[_0x4172ce['charCodeAt'](_0x224f26+0x3)],bytes[_0x563dcc++]=_0x5cd6d2<<0x2|_0x330338>>0x4,bytes[_0x563dcc++]=(0xf&_0x330338)<<0x4|_0x4fb2dc>>0x2,bytes[_0x563dcc++]=(0x3&_0x4fb2dc)<<0x6|0x3f&_0x6a559f;return _0x7b5e97;})(data);return mapBinary(_0x26c72d,_0x459e55);}return{'base64':!0x0,'data':data};},mapBinary=(data,_0x5227c9)=>'blob'===_0x5227c9&&data instanceof ArrayBuffer?new Blob([data]):data,SEPARATOR=String['fromCharCode'](0x1e);function Emitter(_0x3e415b){if(_0x3e415b)return function(_0x199ab4){for(var _0x365cbc in Emitter['prototype'])_0x199ab4[_0x365cbc]=Emitter['prototype'][_0x365cbc];return _0x199ab4;}(_0x3e415b);}Emitter['prototype']['on']=Emitter['prototype']['addEventListener']=function(event,_0x5399c6){return this['_callbacks']=this['_callbacks']||{},(this['_callbacks']['$'+event]=this['_callbacks']['$'+event]||[])['push'](_0x5399c6),this;},Emitter['prototype']['once']=function(event,_0x13dbfc){function _0x4f22e0(){this['off'](event,_0x4f22e0),_0x13dbfc['apply'](this,arguments);}return _0x4f22e0['fn']=_0x13dbfc,this['on'](event,_0x4f22e0),this;},Emitter['prototype']['off']=Emitter['prototype']['removeListener']=Emitter['prototype']['removeAllListeners']=Emitter['prototype']['removeEventListener']=function(event,_0x2775f0){if(this['_callbacks']=this['_callbacks']||{},0x0==arguments['length'])return this['_callbacks']={},this;var _0x2d6f4e,_0x1e8f9c=this['_callbacks']['$'+event];if(!_0x1e8f9c)return this;if(0x1==arguments['length'])return delete this['_callbacks']['$'+event],this;for(var _0x501ae5=0x0;_0x501ae5<_0x1e8f9c['length'];_0x501ae5++)if((_0x2d6f4e=_0x1e8f9c[_0x501ae5])===_0x2775f0||_0x2d6f4e['fn']===_0x2775f0){_0x1e8f9c['splice'](_0x501ae5,0x1);break;}return 0x0===_0x1e8f9c['length']&&delete this['_callbacks']['$'+event],this;},Emitter['prototype']['emit']=function(event){this['_callbacks']=this['_callbacks']||{};for(var _0xe0b354=new Array(arguments['length']-0x1),_0x4e459e=this['_callbacks']['$'+event],_0x5c8dd3=0x1;_0x5c8dd3<arguments['length'];_0x5c8dd3++)_0xe0b354[_0x5c8dd3-0x1]=arguments[_0x5c8dd3];if(_0x4e459e){_0x5c8dd3=0x0;for(var _0x5ed1e0=(_0x4e459e=_0x4e459e['slice'](0x0))['length'];_0x5c8dd3<_0x5ed1e0;++_0x5c8dd3)_0x4e459e[_0x5c8dd3]['apply'](this,_0xe0b354);}return this;},Emitter['prototype']['emitReserved']=Emitter['prototype']['emit'],Emitter['prototype']['listeners']=function(event){return this['_callbacks']=this['_callbacks']||{},this['_callbacks']['$'+event]||[];},Emitter['prototype']['hasListeners']=function(event){return!!this['listeners'](event)['length'];};const globalThisShim='undefined'!=typeof self?self:'undefined'!=typeof window?window:Function('return\x20this')();function pick(_0x5be04e,...attr){return attr['reduce']((_0xf17acd,_0x2ff441)=>(_0x5be04e['hasOwnProperty'](_0x2ff441)&&(_0xf17acd[_0x2ff441]=_0x5be04e[_0x2ff441]),_0xf17acd),{});}const NATIVE_SET_TIMEOUT=globalThisShim['setTimeout'],NATIVE_CLEAR_TIMEOUT=globalThisShim['clearTimeout'];function installTimerFunctions(_0x4a51a9,opts){opts['useNativeTimers']?(_0x4a51a9['setTimeoutFn']=NATIVE_SET_TIMEOUT['bind'](globalThisShim),_0x4a51a9['clearTimeoutFn']=NATIVE_CLEAR_TIMEOUT['bind'](globalThisShim)):(_0x4a51a9['setTimeoutFn']=globalThisShim['setTimeout']['bind'](globalThisShim),_0x4a51a9['clearTimeoutFn']=globalThisShim['clearTimeout']['bind'](globalThisShim));}class TransportError extends Error{constructor(_0x54947c,description,context){super(_0x54947c),this['description']=description,this['context']=context,this['type']='TransportError';}}class Transport extends Emitter{constructor(opts){super(),this['writable']=!0x1,installTimerFunctions(this,opts),this['opts']=opts,this['query']=opts['query'],this['socket']=opts['socket'];}['onError'](_0x397d7e,description,context){return super['emitReserved']('error',new TransportError(_0x397d7e,description,context)),this;}['open'](){return this['readyState']='opening',this['doOpen'](),this;}['close'](){return'opening'!==this['readyState']&&'open'!==this['readyState']||(this['doClose'](),this['onClose']()),this;}['send'](packets){'open'===this['readyState']&&this['write'](packets);}['onOpen'](){this['readyState']='open',this['writable']=!0x0,super['emitReserved']('open');}['onData'](data){const packet=decodePacket(data,this['socket']['binaryType']);this['onPacket'](packet);}['onPacket'](packet){super['emitReserved']('packet',packet);}['onClose'](details){this['readyState']='closed',super['emitReserved']('close',details);}['pause'](_0x4891f1){}}const alphabet='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_'['split'](''),length=0x40,map={};let prev,seed=0x0,i=0x0;function encode$1(_0x514121){let _0x1c67cd='';do{_0x1c67cd=alphabet[_0x514121%length]+_0x1c67cd,_0x514121=Math['floor'](_0x514121/length);}while(_0x514121>0x0);return _0x1c67cd;}function yeast(){const _0x5ba358=encode$1(+new Date());return _0x5ba358!==prev?(seed=0x0,prev=_0x5ba358):_0x5ba358+'.'+encode$1(seed++);}for(;i<length;i++)map[alphabet[i]]=i;function encode(_0x2a4060){let str='';for(let _0x1ffb27 in _0x2a4060)_0x2a4060['hasOwnProperty'](_0x1ffb27)&&(str['length']&&(str+='&'),str+=encodeURIComponent(_0x1ffb27)+'='+encodeURIComponent(_0x2a4060[_0x1ffb27]));return str;}let value=!0x1;try{value='undefined'!=typeof XMLHttpRequest&&'withCredentials'in new XMLHttpRequest();}catch(_0x38a365){}const hasCORS=value;function XHR(opts){const _0x4d1ba8=opts['xdomain'];try{if('undefined'!=typeof XMLHttpRequest&&(!_0x4d1ba8||hasCORS))return new XMLHttpRequest();}catch(_0x1f2721){}if(!_0x4d1ba8)try{return new globalThisShim[(['Active']['concat']('Object')['join']('X'))]('Microsoft.XMLHTTP');}catch(_0xf928b5){}}function empty(){}const hasXHR2=null!=new XHR({'xdomain':!0x1})['responseType'];class Request extends Emitter{constructor(_0x3a571b,opts){super(),installTimerFunctions(this,opts),this['opts']=opts,this['method']=opts['method']||'GET',this['uri']=_0x3a571b,this['async']=!0x1!==opts['async'],this['data']=void 0x0!==opts['data']?opts['data']:null,this['create']();}['create'](){const opts=pick(this['opts'],'agent','pfx','key','passphrase','cert','ca','ciphers','rejectUnauthorized','autoUnref');opts['xdomain']=!!this['opts']['xd'],opts['xscheme']=!!this['opts']['xs'];const _0xacaba3=this['xhr']=new XHR(opts);try{_0xacaba3['open'](this['method'],this['uri'],this['async']);try{if(this['opts']['extraHeaders']){_0xacaba3['setDisableHeaderCheck']&&_0xacaba3['setDisableHeaderCheck'](!0x0);for(let _0x5a95bb in this['opts']['extraHeaders'])this['opts']['extraHeaders']['hasOwnProperty'](_0x5a95bb)&&_0xacaba3['setRequestHeader'](_0x5a95bb,this['opts']['extraHeaders'][_0x5a95bb]);}}catch(_0x1b114a){}if('POST'===this['method'])try{_0xacaba3['setRequestHeader']('Content-type','text/plain;charset=UTF-8');}catch(_0x452a00){}try{_0xacaba3['setRequestHeader']('Accept','*/*');}catch(_0x3f0244){}'withCredentials'in _0xacaba3&&(_0xacaba3['withCredentials']=this['opts']['withCredentials']),this['opts']['requestTimeout']&&(_0xacaba3['timeout']=this['opts']['requestTimeout']),_0xacaba3['onreadystatechange']=()=>{0x4===_0xacaba3['readyState']&&(0xc8===_0xacaba3['status']||0x4c7===_0xacaba3['status']?this['onLoad']():this['setTimeoutFn'](()=>{this['onError']('number'==typeof _0xacaba3['status']?_0xacaba3['status']:0x0);},0x0));},_0xacaba3['send'](this['data']);}catch(_0x5752d7){return void this['setTimeoutFn'](()=>{this['onError'](_0x5752d7);},0x0);}'undefined'!=typeof document&&(this['index']=Request['requestsCount']++,Request['requests'][this['index']]=this);}['onError'](_0x4d4758){this['emitReserved']('error',_0x4d4758,this['xhr']),this['cleanup'](!0x0);}['cleanup'](_0x2069ea){if(void 0x0!==this['xhr']&&null!==this['xhr']){if(this['xhr']['onreadystatechange']=empty,_0x2069ea)try{this['xhr']['abort']();}catch(_0x125e49){}'undefined'!=typeof document&&delete Request['requests'][this['index']],this['xhr']=null;}}['onLoad'](){const data=this['xhr']['responseText'];null!==data&&(this['emitReserved']('data',data),this['emitReserved']('success'),this['cleanup']());}['abort'](){this['cleanup']();}}if(Request['requestsCount']=0x0,Request['requests']={},'undefined'!=typeof document){if('function'==typeof attachEvent)attachEvent('onunload',unloadHandler);else'function'==typeof addEventListener&&addEventListener('onpagehide'in globalThisShim?'pagehide':'unload',unloadHandler,!0x1);}function unloadHandler(){for(let _0x2c2602 in Request['requests'])Request['requests']['hasOwnProperty'](_0x2c2602)&&Request['requests'][_0x2c2602]['abort']();}const nextTick='function'==typeof Promise&&'function'==typeof Promise['resolve']?_0x33cf2e=>Promise['resolve']()['then'](_0x33cf2e):(_0x492673,setTimeoutFn)=>setTimeoutFn(_0x492673,0x0),WebSocket=globalThisShim['WebSocket']||globalThisShim['MozWebSocket'],isReactNative='undefined'!=typeof navigator&&'string'==typeof navigator['product']&&'reactnative'===navigator['product']['toLowerCase'](),transports={'websocket':class extends Transport{constructor(opts){super(opts),this['supportsBinary']=!opts['forceBase64'];}get['name'](){return'websocket';}['doOpen'](){if(!this['check']())return;const _0x5d6642=this['uri'](),protocols=this['opts']['protocols'],opts=isReactNative?{}:pick(this['opts'],'agent','perMessageDeflate','pfx','key','passphrase','cert','ca','ciphers','rejectUnauthorized','localAddress','protocolVersion','origin','maxPayload','family','checkServerIdentity');this['opts']['extraHeaders']&&(opts['headers']=this['opts']['extraHeaders']);try{this['ws']=isReactNative?new WebSocket(_0x5d6642,protocols,opts):protocols?new WebSocket(_0x5d6642,protocols):new WebSocket(_0x5d6642);}catch(_0x324df1){return this['emitReserved']('error',_0x324df1);}this['ws']['binaryType']=this['socket']['binaryType']||'arraybuffer',this['addEventListeners']();}['addEventListeners'](){this['ws']['onopen']=()=>{this['opts']['autoUnref']&&this['ws']['_socket']['unref'](),this['onOpen']();},this['ws']['onclose']=closeEvent=>this['onClose']({'description':'websocket\x20connection\x20closed','context':closeEvent}),this['ws']['onmessage']=_0x461fd9=>this['onData'](_0x461fd9['data']),this['ws']['onerror']=_0x5d0fb1=>this['onError']('websocket\x20error',_0x5d0fb1);}['write'](packets){this['writable']=!0x1;for(let _0x40e989=0x0;_0x40e989<packets['length'];_0x40e989++){const packet=packets[_0x40e989],lastPacket=_0x40e989===packets['length']-0x1;encodePacket(packet,this['supportsBinary'],data=>{try{this['ws']['send'](data);}catch(_0x446456){}lastPacket&&nextTick(()=>{this['writable']=!0x0,this['emitReserved']('drain');},this['setTimeoutFn']);});}}['doClose'](){void 0x0!==this['ws']&&(this['ws']['close'](),this['ws']=null);}['uri'](){let _0x183078=this['query']||{};const _0x164f67=this['opts']['secure']?'wss':'ws';let port='';this['opts']['port']&&('wss'===_0x164f67&&0x1bb!==Number(this['opts']['port'])||'ws'===_0x164f67&&0x50!==Number(this['opts']['port']))&&(port=':'+this['opts']['port']),this['opts']['timestampRequests']&&(_0x183078[this['opts']['timestampParam']]=yeast()),this['supportsBinary']||(_0x183078['b64']=0x1);const _0x7d4cc=encode(_0x183078);return _0x164f67+'://'+(-0x1!==this['opts']['hostname']['indexOf'](':')?'['+this['opts']['hostname']+']':this['opts']['hostname'])+port+this['opts']['path']+(_0x7d4cc['length']?'?'+_0x7d4cc:'');}['check'](){return!!WebSocket;}},'polling':class extends Transport{constructor(opts){if(super(opts),this['polling']=!0x1,'undefined'!=typeof location){const _0x51b2fc='https:'===location['protocol'];let port=location['port'];port||(port=_0x51b2fc?'443':'80'),this['xd']='undefined'!=typeof location&&opts['hostname']!==location['hostname']||port!==opts['port'],this['xs']=opts['secure']!==_0x51b2fc;}const _0x33c5fe=opts&&opts['forceBase64'];this['supportsBinary']=hasXHR2&&!_0x33c5fe;}get['name'](){return'polling';}['doOpen'](){this['poll']();}['pause'](_0x4fef07){this['readyState']='pausing';const _0x23fa6b=()=>{this['readyState']='paused',_0x4fef07();};if(this['polling']||!this['writable']){let total=0x0;this['polling']&&(total++,this['once']('pollComplete',function(){--total||_0x23fa6b();})),this['writable']||(total++,this['once']('drain',function(){--total||_0x23fa6b();}));}else _0x23fa6b();}['poll'](){this['polling']=!0x0,this['doPoll'](),this['emitReserved']('poll');}['onData'](data){((_0xeee2dc,_0x24e695)=>{const encodedPackets=_0xeee2dc['split'](SEPARATOR),packets=[];for(let _0x374c31=0x0;_0x374c31<encodedPackets['length'];_0x374c31++){const decodedPacket=decodePacket(encodedPackets[_0x374c31],_0x24e695);if(packets['push'](decodedPacket),'error'===decodedPacket['type'])break;}return packets;})(data,this['socket']['binaryType'])['forEach'](packet=>{if('opening'===this['readyState']&&'open'===packet['type']&&this['onOpen'](),'close'===packet['type'])return this['onClose']({'description':'transport\x20closed\x20by\x20the\x20server'}),!0x1;this['onPacket'](packet);}),'closed'!==this['readyState']&&(this['polling']=!0x1,this['emitReserved']('pollComplete'),'open'===this['readyState']&&this['poll']());}['doClose'](){const _0x451071=()=>{this['write']([{'type':'close'}]);};'open'===this['readyState']?_0x451071():this['once']('open',_0x451071);}['write'](packets){this['writable']=!0x1,((packets,_0x2b40a5)=>{const length=packets['length'],encodedPackets=new Array(length);let count=0x0;packets['forEach']((packet,_0x2e8a40)=>{encodePacket(packet,!0x1,encodedPacket=>{encodedPackets[_0x2e8a40]=encodedPacket,++count===length&&_0x2b40a5(encodedPackets['join'](SEPARATOR));});});})(packets,data=>{this['doWrite'](data,()=>{this['writable']=!0x0,this['emitReserved']('drain');});});}['uri'](){let _0x35d5e2=this['query']||{};const _0x2f585b=this['opts']['secure']?'https':'http';let port='';!0x1!==this['opts']['timestampRequests']&&(_0x35d5e2[this['opts']['timestampParam']]=yeast()),this['supportsBinary']||_0x35d5e2['sid']||(_0x35d5e2['b64']=0x1),this['opts']['port']&&('https'===_0x2f585b&&0x1bb!==Number(this['opts']['port'])||'http'===_0x2f585b&&0x50!==Number(this['opts']['port']))&&(port=':'+this['opts']['port']);const _0x54a0fa=encode(_0x35d5e2);return _0x2f585b+'://'+(-0x1!==this['opts']['hostname']['indexOf'](':')?'['+this['opts']['hostname']+']':this['opts']['hostname'])+port+this['opts']['path']+(_0x54a0fa['length']?'?'+_0x54a0fa:'');}['request'](opts={}){return Object['assign'](opts,{'xd':this['xd'],'xs':this['xs']},this['opts']),new Request(this['uri'](),opts);}['doWrite'](data,_0x5db45c){const _0x4e9553=this['request']({'method':'POST','data':data});_0x4e9553['on']('success',_0x5db45c),_0x4e9553['on']('error',(xhrStatus,context)=>{this['onError']('xhr\x20post\x20error',xhrStatus,context);});}['doPoll'](){const _0x4e5bbd=this['request']();_0x4e5bbd['on']('data',this['onData']['bind'](this)),_0x4e5bbd['on']('error',(xhrStatus,context)=>{this['onError']('xhr\x20poll\x20error',xhrStatus,context);}),this['pollXhr']=_0x4e5bbd;}}},re=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,parts=['source','protocol','authority','userInfo','user','password','host','port','relative','path','directory','file','query','anchor'];function parse(str){const _0x57f234=str,_0x52d787=str['indexOf']('['),_0x14153a=str['indexOf'](']');-0x1!=_0x52d787&&-0x1!=_0x14153a&&(str=str['substring'](0x0,_0x52d787)+str['substring'](_0x52d787,_0x14153a)['replace'](/:/g,';')+str['substring'](_0x14153a,str['length']));let _0x1487c4=re['exec'](str||''),_0x34268d={},_0x5d0fa6=0xe;for(;_0x5d0fa6--;)_0x34268d[parts[_0x5d0fa6]]=_0x1487c4[_0x5d0fa6]||'';return-0x1!=_0x52d787&&-0x1!=_0x14153a&&(_0x34268d['source']=_0x57f234,_0x34268d['host']=_0x34268d['host']['substring'](0x1,_0x34268d['host']['length']-0x1)['replace'](/;/g,':'),_0x34268d['authority']=_0x34268d['authority']['replace']('[','')['replace'](']','')['replace'](/;/g,':'),_0x34268d['ipv6uri']=!0x0),_0x34268d['pathNames']=function(_0x2d34dd,path){const _0x484115=/\/{2,9}/g,_0x39b292=path['replace'](_0x484115,'/')['split']('/');return'/'!=path['slice'](0x0,0x1)&&0x0!==path['length']||_0x39b292['splice'](0x0,0x1),'/'==path['slice'](-0x1)&&_0x39b292['splice'](_0x39b292['length']-0x1,0x1),_0x39b292;}(0x0,_0x34268d['path']),_0x34268d['queryKey']=function(_0x4f286f,_0xacf262){const data={};return _0xacf262['replace'](/(?:^|&)([^&=]*)=?([^&]*)/g,function(_0x2b360d,_0x56fc70,_0x1028d8){_0x56fc70&&(data[_0x56fc70]=_0x1028d8);}),data;}(0x0,_0x34268d['query']),_0x34268d;}let Socket$1=class Socket extends Emitter{constructor(_0x516129,opts={}){super(),this['writeBuffer']=[],_0x516129&&'object'==typeof _0x516129&&(opts=_0x516129,_0x516129=null),_0x516129?(_0x516129=parse(_0x516129),opts['hostname']=_0x516129['host'],opts['secure']='https'===_0x516129['protocol']||'wss'===_0x516129['protocol'],opts['port']=_0x516129['port'],_0x516129['query']&&(opts['query']=_0x516129['query'])):opts['host']&&(opts['hostname']=parse(opts['host'])['host']),installTimerFunctions(this,opts),this['secure']=null!=opts['secure']?opts['secure']:'undefined'!=typeof location&&'https:'===location['protocol'],opts['hostname']&&!opts['port']&&(opts['port']=this['secure']?'443':'80'),this['hostname']=opts['hostname']||('undefined'!=typeof location?location['hostname']:'localhost'),this['port']=opts['port']||('undefined'!=typeof location&&location['port']?location['port']:this['secure']?'443':'80'),this['transports']=opts['transports']||['polling','websocket'],this['writeBuffer']=[],this['prevBufferLen']=0x0,this['opts']=Object['assign']({'path':'/engine.io','agent':!0x1,'withCredentials':!0x1,'upgrade':!0x0,'timestampParam':'t','rememberUpgrade':!0x1,'addTrailingSlash':!0x0,'rejectUnauthorized':!0x0,'perMessageDeflate':{'threshold':0x400},'transportOptions':{},'closeOnBeforeunload':!0x0},opts),this['opts']['path']=this['opts']['path']['replace'](/\/$/,'')+(this['opts']['addTrailingSlash']?'/':''),'string'==typeof this['opts']['query']&&(this['opts']['query']=function(_0x8c405c){let _0x39fad0={},_0x3955ec=_0x8c405c['split']('&');for(let _0x459e05=0x0,_0x560322=_0x3955ec['length'];_0x459e05<_0x560322;_0x459e05++){let _0x4a838e=_0x3955ec[_0x459e05]['split']('=');_0x39fad0[decodeURIComponent(_0x4a838e[0x0])]=decodeURIComponent(_0x4a838e[0x1]);}return _0x39fad0;}(this['opts']['query'])),this['id']=null,this['upgrades']=null,this['pingInterval']=null,this['pingTimeout']=null,this['pingTimeoutTimer']=null,'function'==typeof addEventListener&&(this['opts']['closeOnBeforeunload']&&(this['beforeunloadEventListener']=()=>{this['transport']&&(this['transport']['removeAllListeners'](),this['transport']['close']());},addEventListener('beforeunload',this['beforeunloadEventListener'],!0x1)),'localhost'!==this['hostname']&&(this['offlineEventListener']=()=>{this['onClose']('transport\x20close',{'description':'network\x20connection\x20lost'});},addEventListener('offline',this['offlineEventListener'],!0x1))),this['open']();}['createTransport'](_0x11d481){const _0x3ed666=Object['assign']({},this['opts']['query']);_0x3ed666['EIO']=0x4,_0x3ed666['transport']=_0x11d481,this['id']&&(_0x3ed666['sid']=this['id']);const opts=Object['assign']({},this['opts']['transportOptions'][_0x11d481],this['opts'],{'query':_0x3ed666,'socket':this,'hostname':this['hostname'],'secure':this['secure'],'port':this['port']});return new transports[_0x11d481](opts);}['open'](){let transport;if(this['opts']['rememberUpgrade']&&Socket['priorWebsocketSuccess']&&-0x1!==this['transports']['indexOf']('websocket'))transport='websocket';else{if(0x0===this['transports']['length'])return void this['setTimeoutFn'](()=>{this['emitReserved']('error','No\x20transports\x20available');},0x0);transport=this['transports'][0x0];}this['readyState']='opening';try{transport=this['createTransport'](transport);}catch(_0x1c3a28){return this['transports']['shift'](),void this['open']();}transport['open'](),this['setTransport'](transport);}['setTransport'](transport){this['transport']&&this['transport']['removeAllListeners'](),this['transport']=transport,transport['on']('drain',this['onDrain']['bind'](this))['on']('packet',this['onPacket']['bind'](this))['on']('error',this['onError']['bind'](this))['on']('close',_0xe981c2=>this['onClose']('transport\x20close',_0xe981c2));}['probe'](_0x574e3b){let transport=this['createTransport'](_0x574e3b),_0x1f6cfc=!0x1;Socket['priorWebsocketSuccess']=!0x1;const onTransportOpen=()=>{_0x1f6cfc||(transport['send']([{'type':'ping','data':'probe'}]),transport['once']('packet',_0x38f7ab=>{if(!_0x1f6cfc){if('pong'===_0x38f7ab['type']&&'probe'===_0x38f7ab['data']){if(this['upgrading']=!0x0,this['emitReserved']('upgrading',transport),!transport)return;Socket['priorWebsocketSuccess']='websocket'===transport['name'],this['transport']['pause'](()=>{_0x1f6cfc||'closed'!==this['readyState']&&(_0x1242d7(),this['setTransport'](transport),transport['send']([{'type':'upgrade'}]),this['emitReserved']('upgrade',transport),transport=null,this['upgrading']=!0x1,this['flush']());});}else{const _0xb58c34=new Error('probe\x20error');_0xb58c34['transport']=transport['name'],this['emitReserved']('upgradeError',_0xb58c34);}}}));};function freezeTransport(){_0x1f6cfc||(_0x1f6cfc=!0x0,_0x1242d7(),transport['close'](),transport=null);}const _0x462a63=_0x3fdce6=>{const _0x5e7240=new Error('probe\x20error:\x20'+_0x3fdce6);_0x5e7240['transport']=transport['name'],freezeTransport(),this['emitReserved']('upgradeError',_0x5e7240);};function onTransportClose(){_0x462a63('transport\x20closed');}function _0x297024(){_0x462a63('socket\x20closed');}function _0x45cc29(to){transport&&to['name']!==transport['name']&&freezeTransport();}const _0x1242d7=()=>{transport['removeListener']('open',onTransportOpen),transport['removeListener']('error',_0x462a63),transport['removeListener']('close',onTransportClose),this['off']('close',_0x297024),this['off']('upgrading',_0x45cc29);};transport['once']('open',onTransportOpen),transport['once']('error',_0x462a63),transport['once']('close',onTransportClose),this['once']('close',_0x297024),this['once']('upgrading',_0x45cc29),transport['open']();}['onOpen'](){if(this['readyState']='open',Socket['priorWebsocketSuccess']='websocket'===this['transport']['name'],this['emitReserved']('open'),this['flush'](),'open'===this['readyState']&&this['opts']['upgrade']){let _0x3dec52=0x0;const _0x58bf3d=this['upgrades']['length'];for(;_0x3dec52<_0x58bf3d;_0x3dec52++)this['probe'](this['upgrades'][_0x3dec52]);}}['onPacket'](packet){if('opening'===this['readyState']||'open'===this['readyState']||'closing'===this['readyState'])switch(this['emitReserved']('packet',packet),this['emitReserved']('heartbeat'),packet['type']){case'open':this['onHandshake'](JSON['parse'](packet['data']));break;case'ping':this['resetPingTimeout'](),this['sendPacket']('pong'),this['emitReserved']('ping'),this['emitReserved']('pong');break;case'error':const _0x4f7d8c=new Error('server\x20error');_0x4f7d8c['code']=packet['data'],this['onError'](_0x4f7d8c);break;case'message':this['emitReserved']('data',packet['data']),this['emitReserved']('message',packet['data']);}}['onHandshake'](data){this['emitReserved']('handshake',data),this['id']=data['sid'],this['transport']['query']['sid']=data['sid'],this['upgrades']=this['filterUpgrades'](data['upgrades']),this['pingInterval']=data['pingInterval'],this['pingTimeout']=data['pingTimeout'],this['maxPayload']=data['maxPayload'],this['onOpen'](),'closed'!==this['readyState']&&this['resetPingTimeout']();}['resetPingTimeout'](){this['clearTimeoutFn'](this['pingTimeoutTimer']),this['pingTimeoutTimer']=this['setTimeoutFn'](()=>{this['onClose']('ping\x20timeout');},this['pingInterval']+this['pingTimeout']),this['opts']['autoUnref']&&this['pingTimeoutTimer']['unref']();}['onDrain'](){this['writeBuffer']['splice'](0x0,this['prevBufferLen']),this['prevBufferLen']=0x0,0x0===this['writeBuffer']['length']?this['emitReserved']('drain'):this['flush']();}['flush'](){if('closed'!==this['readyState']&&this['transport']['writable']&&!this['upgrading']&&this['writeBuffer']['length']){const packets=this['getWritablePackets']();this['transport']['send'](packets),this['prevBufferLen']=packets['length'],this['emitReserved']('flush');}}['getWritablePackets'](){if(!(this['maxPayload']&&'polling'===this['transport']['name']&&this['writeBuffer']['length']>0x1))return this['writeBuffer'];let _0xa7f639=0x1;for(let _0x3f2de8=0x0;_0x3f2de8<this['writeBuffer']['length'];_0x3f2de8++){const data=this['writeBuffer'][_0x3f2de8]['data'];if(data&&(_0xa7f639+='string'==typeof(_0x2c7581=data)?function(str){let _0x437b31=0x0,length=0x0;for(let _0x3cca61=0x0,_0x372f1a=str['length'];_0x3cca61<_0x372f1a;_0x3cca61++)_0x437b31=str['charCodeAt'](_0x3cca61),_0x437b31<0x80?length+=0x1:_0x437b31<0x800?length+=0x2:_0x437b31<0xd800||_0x437b31>=0xe000?length+=0x3:(_0x3cca61++,length+=0x4);return length;}(_0x2c7581):Math['ceil'](1.33*(_0x2c7581['byteLength']||_0x2c7581['size']))),_0x3f2de8>0x0&&_0xa7f639>this['maxPayload'])return this['writeBuffer']['slice'](0x0,_0x3f2de8);_0xa7f639+=0x2;}var _0x2c7581;return this['writeBuffer'];}['write'](_0x3d9794,options,_0x14da8b){return this['sendPacket']('message',_0x3d9794,options,_0x14da8b),this;}['send'](_0x5b0f56,options,_0x38e7cf){return this['sendPacket']('message',_0x5b0f56,options,_0x38e7cf),this;}['sendPacket'](type,data,options,_0x2ae7ba){if('function'==typeof data&&(_0x2ae7ba=data,data=void 0x0),'function'==typeof options&&(_0x2ae7ba=options,options=null),'closing'===this['readyState']||'closed'===this['readyState'])return;(options=options||{})['compress']=!0x1!==options['compress'];const packet={'type':type,'data':data,'options':options};this['emitReserved']('packetCreate',packet),this['writeBuffer']['push'](packet),_0x2ae7ba&&this['once']('flush',_0x2ae7ba),this['flush']();}['close'](){const _0x330f9e=()=>{this['onClose']('forced\x20close'),this['transport']['close']();},_0x301630=()=>{this['off']('upgrade',_0x301630),this['off']('upgradeError',_0x301630),_0x330f9e();},waitForUpgrade=()=>{this['once']('upgrade',_0x301630),this['once']('upgradeError',_0x301630);};return'opening'!==this['readyState']&&'open'!==this['readyState']||(this['readyState']='closing',this['writeBuffer']['length']?this['once']('drain',()=>{this['upgrading']?waitForUpgrade():_0x330f9e();}):this['upgrading']?waitForUpgrade():_0x330f9e()),this;}['onError'](_0x1ded63){Socket['priorWebsocketSuccess']=!0x1,this['emitReserved']('error',_0x1ded63),this['onClose']('transport\x20error',_0x1ded63);}['onClose'](_0x350c30,description){'opening'!==this['readyState']&&'open'!==this['readyState']&&'closing'!==this['readyState']||(this['clearTimeoutFn'](this['pingTimeoutTimer']),this['transport']['removeAllListeners']('close'),this['transport']['close'](),this['transport']['removeAllListeners'](),'function'==typeof removeEventListener&&(removeEventListener('beforeunload',this['beforeunloadEventListener'],!0x1),removeEventListener('offline',this['offlineEventListener'],!0x1)),this['readyState']='closed',this['id']=null,this['emitReserved']('close',_0x350c30,description),this['writeBuffer']=[],this['prevBufferLen']=0x0);}['filterUpgrades'](_0x352c08){const filteredUpgrades=[];let _0xe96300=0x0;const _0x6cf7a=_0x352c08['length'];for(;_0xe96300<_0x6cf7a;_0xe96300++)~this['transports']['indexOf'](_0x352c08[_0xe96300])&&filteredUpgrades['push'](_0x352c08[_0xe96300]);return filteredUpgrades;}};Socket$1['protocol']=0x4;const withNativeArrayBuffer='function'==typeof ArrayBuffer,isView=_0x106277=>'function'==typeof ArrayBuffer['isView']?ArrayBuffer['isView'](_0x106277):_0x106277['buffer']instanceof ArrayBuffer,toString=Object['prototype']['toString'],withNativeBlob='function'==typeof Blob||'undefined'!=typeof Blob&&'[object\x20BlobConstructor]'===toString['call'](Blob),withNativeFile='function'==typeof File||'undefined'!=typeof File&&'[object\x20FileConstructor]'===toString['call'](File);function isBinary(_0x2fce72){return withNativeArrayBuffer&&(_0x2fce72 instanceof ArrayBuffer||isView(_0x2fce72))||withNativeBlob&&_0x2fce72 instanceof Blob||withNativeFile&&_0x2fce72 instanceof File;}function hasBinary(_0x126be3,toJSON){if(!_0x126be3||'object'!=typeof _0x126be3)return!0x1;if(Array['isArray'](_0x126be3)){for(let _0x48af79=0x0,_0x2c1723=_0x126be3['length'];_0x48af79<_0x2c1723;_0x48af79++)if(hasBinary(_0x126be3[_0x48af79]))return!0x0;return!0x1;}if(isBinary(_0x126be3))return!0x0;if(_0x126be3['toJSON']&&'function'==typeof _0x126be3['toJSON']&&0x1===arguments['length'])return hasBinary(_0x126be3['toJSON'](),!0x0);for(const _0xe568aa in _0x126be3)if(Object['prototype']['hasOwnProperty']['call'](_0x126be3,_0xe568aa)&&hasBinary(_0x126be3[_0xe568aa]))return!0x0;return!0x1;}function deconstructPacket(packet){const _0x2c37da=[],packetData=packet['data'],_0x23264d=packet;return _0x23264d['data']=_deconstructPacket(packetData,_0x2c37da),_0x23264d['attachments']=_0x2c37da['length'],{'packet':_0x23264d,'buffers':_0x2c37da};}function _deconstructPacket(data,_0xc4dd4d){if(!data)return data;if(isBinary(data)){const _0x49a1c8={'_placeholder':!0x0,'num':_0xc4dd4d['length']};return _0xc4dd4d['push'](data),_0x49a1c8;}if(Array['isArray'](data)){const newData=new Array(data['length']);for(let _0x3d52df=0x0;_0x3d52df<data['length'];_0x3d52df++)newData[_0x3d52df]=_deconstructPacket(data[_0x3d52df],_0xc4dd4d);return newData;}if('object'==typeof data&&!(data instanceof Date)){const newData={};for(const _0x53e227 in data)Object['prototype']['hasOwnProperty']['call'](data,_0x53e227)&&(newData[_0x53e227]=_deconstructPacket(data[_0x53e227],_0xc4dd4d));return newData;}return data;}function reconstructPacket(packet,_0x5c2c21){return packet['data']=_reconstructPacket(packet['data'],_0x5c2c21),delete packet['attachments'],packet;}function _reconstructPacket(data,_0x18f952){if(!data)return data;if(data&&!0x0===data['_placeholder']){if('number'==typeof data['num']&&data['num']>=0x0&&data['num']<_0x18f952['length'])return _0x18f952[data['num']];throw new Error('illegal\x20attachments');}if(Array['isArray'](data)){for(let _0x4a44b6=0x0;_0x4a44b6<data['length'];_0x4a44b6++)data[_0x4a44b6]=_reconstructPacket(data[_0x4a44b6],_0x18f952);}else{if('object'==typeof data){for(const _0x3b9aa0 in data)Object['prototype']['hasOwnProperty']['call'](data,_0x3b9aa0)&&(data[_0x3b9aa0]=_reconstructPacket(data[_0x3b9aa0],_0x18f952));}}return data;}var PacketType;!function(PacketType){PacketType[PacketType['CONNECT']=0x0]='CONNECT',PacketType[PacketType['DISCONNECT']=0x1]='DISCONNECT',PacketType[PacketType['EVENT']=0x2]='EVENT',PacketType[PacketType['ACK']=0x3]='ACK',PacketType[PacketType['CONNECT_ERROR']=0x4]='CONNECT_ERROR',PacketType[PacketType['BINARY_EVENT']=0x5]='BINARY_EVENT',PacketType[PacketType['BINARY_ACK']=0x6]='BINARY_ACK';}(PacketType||(PacketType={}));let Encoder$1=class{constructor(_0x1a0a1b){this['replacer']=_0x1a0a1b;}['encode'](_0x5dedc5){return _0x5dedc5['type']!==PacketType['EVENT']&&_0x5dedc5['type']!==PacketType['ACK']||!hasBinary(_0x5dedc5)?[this['encodeAsString'](_0x5dedc5)]:this['encodeAsBinary']({'type':_0x5dedc5['type']===PacketType['EVENT']?PacketType['BINARY_EVENT']:PacketType['BINARY_ACK'],'nsp':_0x5dedc5['nsp'],'data':_0x5dedc5['data'],'id':_0x5dedc5['id']});}['encodeAsString'](_0x4785b2){let str=''+_0x4785b2['type'];return _0x4785b2['type']!==PacketType['BINARY_EVENT']&&_0x4785b2['type']!==PacketType['BINARY_ACK']||(str+=_0x4785b2['attachments']+'-'),_0x4785b2['nsp']&&'/'!==_0x4785b2['nsp']&&(str+=_0x4785b2['nsp']+','),null!=_0x4785b2['id']&&(str+=_0x4785b2['id']),null!=_0x4785b2['data']&&(str+=JSON['stringify'](_0x4785b2['data'],this['replacer'])),str;}['encodeAsBinary'](_0x4db6fb){const deconstruction=deconstructPacket(_0x4db6fb),_0xc99c05=this['encodeAsString'](deconstruction['packet']),_0x3b4612=deconstruction['buffers'];return _0x3b4612['unshift'](_0xc99c05),_0x3b4612;}},Decoder$1=class Decoder extends Emitter{constructor(_0x533091){super(),this['reviver']=_0x533091;}['add'](_0x377ca9){let packet;if('string'==typeof _0x377ca9){if(this['reconstructor'])throw new Error('got\x20plaintext\x20data\x20when\x20reconstructing\x20a\x20packet');packet=this['decodeString'](_0x377ca9);const isBinaryEvent=packet['type']===PacketType['BINARY_EVENT'];isBinaryEvent||packet['type']===PacketType['BINARY_ACK']?(packet['type']=isBinaryEvent?PacketType['EVENT']:PacketType['ACK'],this['reconstructor']=new BinaryReconstructor(packet),0x0===packet['attachments']&&super['emitReserved']('decoded',packet)):super['emitReserved']('decoded',packet);}else{if(!isBinary(_0x377ca9)&&!_0x377ca9['base64'])throw new Error('Unknown\x20type:\x20'+_0x377ca9);if(!this['reconstructor'])throw new Error('got\x20binary\x20data\x20when\x20not\x20reconstructing\x20a\x20packet');packet=this['reconstructor']['takeBinaryData'](_0x377ca9),packet&&(this['reconstructor']=null,super['emitReserved']('decoded',packet));}}['decodeString'](str){let _0x441223=0x0;const _0x5c60c3={'type':Number(str['charAt'](0x0))};if(void 0x0===PacketType[_0x5c60c3['type']])throw new Error('unknown\x20packet\x20type\x20'+_0x5c60c3['type']);if(_0x5c60c3['type']===PacketType['BINARY_EVENT']||_0x5c60c3['type']===PacketType['BINARY_ACK']){const start=_0x441223+0x1;for(;'-'!==str['charAt'](++_0x441223)&&_0x441223!=str['length'];);const _0x413e5d=str['substring'](start,_0x441223);if(_0x413e5d!=Number(_0x413e5d)||'-'!==str['charAt'](_0x441223))throw new Error('Illegal\x20attachments');_0x5c60c3['attachments']=Number(_0x413e5d);}if('/'===str['charAt'](_0x441223+0x1)){const start=_0x441223+0x1;for(;++_0x441223;){if(','===str['charAt'](_0x441223))break;if(_0x441223===str['length'])break;}_0x5c60c3['nsp']=str['substring'](start,_0x441223);}else _0x5c60c3['nsp']='/';const next=str['charAt'](_0x441223+0x1);if(''!==next&&Number(next)==next){const start=_0x441223+0x1;for(;++_0x441223;){const _0xc159da=str['charAt'](_0x441223);if(null==_0xc159da||Number(_0xc159da)!=_0xc159da){--_0x441223;break;}if(_0x441223===str['length'])break;}_0x5c60c3['id']=Number(str['substring'](start,_0x441223+0x1));}if(str['charAt'](++_0x441223)){const _0x1f44fe=this['tryParse'](str['substr'](_0x441223));if(!Decoder['isPayloadValid'](_0x5c60c3['type'],_0x1f44fe))throw new Error('invalid\x20payload');_0x5c60c3['data']=_0x1f44fe;}return _0x5c60c3;}['tryParse'](str){try{return JSON['parse'](str,this['reviver']);}catch(_0x538ebb){return!0x1;}}static['isPayloadValid'](type,_0x14fd12){switch(type){case PacketType['CONNECT']:return'object'==typeof _0x14fd12;case PacketType['DISCONNECT']:return void 0x0===_0x14fd12;case PacketType['CONNECT_ERROR']:return'string'==typeof _0x14fd12||'object'==typeof _0x14fd12;case PacketType['EVENT']:case PacketType['BINARY_EVENT']:return Array['isArray'](_0x14fd12)&&('string'==typeof _0x14fd12[0x0]||'number'==typeof _0x14fd12[0x0]);case PacketType['ACK']:case PacketType['BINARY_ACK']:return Array['isArray'](_0x14fd12);}}['destroy'](){this['reconstructor']&&(this['reconstructor']['finishedReconstruction'](),this['reconstructor']=null);}};class BinaryReconstructor{constructor(packet){this['packet']=packet,this['buffers']=[],this['reconPack']=packet;}['takeBinaryData'](binData){if(this['buffers']['push'](binData),this['buffers']['length']===this['reconPack']['attachments']){const packet=reconstructPacket(this['reconPack'],this['buffers']);return this['finishedReconstruction'](),packet;}return null;}['finishedReconstruction'](){this['reconPack']=null,this['buffers']=[];}}var parser$1=Object['freeze']({'__proto__':null,'Decoder':Decoder$1,'Encoder':Encoder$1,get 'PacketType'(){return PacketType;},'protocol':0x5});function on(_0xb01d51,_0x4c1f74,_0x13896f){return _0xb01d51['on'](_0x4c1f74,_0x13896f),function(){_0xb01d51['off'](_0x4c1f74,_0x13896f);};}const RESERVED_EVENTS=Object['freeze']({'connect':0x1,'connect_error':0x1,'disconnect':0x1,'disconnecting':0x1,'newListener':0x1,'removeListener':0x1});class Socket extends Emitter{constructor(_0x14ac66,_0x1065ee,opts){super(),this['connected']=!0x1,this['recovered']=!0x1,this['receiveBuffer']=[],this['sendBuffer']=[],this['_queue']=[],this['_queueSeq']=0x0,this['ids']=0x0,this['acks']={},this['flags']={},this['io']=_0x14ac66,this['nsp']=_0x1065ee,opts&&opts['auth']&&(this['auth']=opts['auth']),this['_opts']=Object['assign']({},opts),this['io']['_autoConnect']&&this['open']();}get['disconnected'](){return!this['connected'];}['subEvents'](){if(this['subs'])return;const _0x12bb50=this['io'];this['subs']=[on(_0x12bb50,'open',this['onopen']['bind'](this)),on(_0x12bb50,'packet',this['onpacket']['bind'](this)),on(_0x12bb50,'error',this['onerror']['bind'](this)),on(_0x12bb50,'close',this['onclose']['bind'](this))];}get['active'](){return!!this['subs'];}['connect'](){return this['connected']||(this['subEvents'](),this['io']['_reconnecting']||this['io']['open'](),'open'===this['io']['_readyState']&&this['onopen']()),this;}['open'](){return this['connect']();}['send'](..._0x294f32){return _0x294f32['unshift']('message'),this['emit']['apply'](this,_0x294f32),this;}['emit'](_0x3f5ded,..._0x40ec11){if(RESERVED_EVENTS['hasOwnProperty'](_0x3f5ded))throw new Error('\x22'+_0x3f5ded['toString']()+'\x22\x20is\x20a\x20reserved\x20event\x20name');if(_0x40ec11['unshift'](_0x3f5ded),this['_opts']['retries']&&!this['flags']['fromQueue']&&!this['flags']['volatile'])return this['_addToQueue'](_0x40ec11),this;const packet={'type':PacketType['EVENT'],'data':_0x40ec11,'options':{}};if(packet['options']['compress']=!0x1!==this['flags']['compress'],'function'==typeof _0x40ec11[_0x40ec11['length']-0x1]){const _0x2b63e4=this['ids']++,_0x4099fd=_0x40ec11['pop']();this['_registerAckCallback'](_0x2b63e4,_0x4099fd),packet['id']=_0x2b63e4;}const isTransportWritable=this['io']['engine']&&this['io']['engine']['transport']&&this['io']['engine']['transport']['writable'];return this['flags']['volatile']&&(!isTransportWritable||!this['connected'])||(this['connected']?(this['notifyOutgoingListeners'](packet),this['packet'](packet)):this['sendBuffer']['push'](packet)),this['flags']={},this;}['_registerAckCallback'](_0x1914db,_0x5c3519){var _0x54d66f;const timeout=null!==(_0x54d66f=this['flags']['timeout'])&&void 0x0!==_0x54d66f?_0x54d66f:this['_opts']['ackTimeout'];if(void 0x0===timeout)return void(this['acks'][_0x1914db]=_0x5c3519);const timer=this['io']['setTimeoutFn'](()=>{delete this['acks'][_0x1914db];for(let _0x2f3e0e=0x0;_0x2f3e0e<this['sendBuffer']['length'];_0x2f3e0e++)this['sendBuffer'][_0x2f3e0e]['id']===_0x1914db&&this['sendBuffer']['splice'](_0x2f3e0e,0x1);_0x5c3519['call'](this,new Error('operation\x20has\x20timed\x20out'));},timeout);this['acks'][_0x1914db]=(..._0x3f9aef)=>{this['io']['clearTimeoutFn'](timer),_0x5c3519['apply'](this,[null,..._0x3f9aef]);};}['emitWithAck'](_0x204e48,..._0x451774){const withErr=void 0x0!==this['flags']['timeout']||void 0x0!==this['_opts']['ackTimeout'];return new Promise((_0x226fd5,reject)=>{_0x451774['push']((_0x287870,_0x151006)=>withErr?_0x287870?reject(_0x287870):_0x226fd5(_0x151006):_0x226fd5(_0x287870)),this['emit'](_0x204e48,..._0x451774);});}['_addToQueue'](_0x3022ec){let _0x15bfe8;'function'==typeof _0x3022ec[_0x3022ec['length']-0x1]&&(_0x15bfe8=_0x3022ec['pop']());const packet={'id':this['_queueSeq']++,'tryCount':0x0,'pending':!0x1,'args':_0x3022ec,'flags':Object['assign']({'fromQueue':!0x0},this['flags'])};_0x3022ec['push']((_0x124428,..._0x1253e1)=>{if(packet!==this['_queue'][0x0])return;return null!==_0x124428?packet['tryCount']>this['_opts']['retries']&&(this['_queue']['shift'](),_0x15bfe8&&_0x15bfe8(_0x124428)):(this['_queue']['shift'](),_0x15bfe8&&_0x15bfe8(null,..._0x1253e1)),packet['pending']=!0x1,this['_drainQueue']();}),this['_queue']['push'](packet),this['_drainQueue']();}['_drainQueue'](_0x3b802a=!0x1){if(!this['connected']||0x0===this['_queue']['length'])return;const packet=this['_queue'][0x0];packet['pending']&&!_0x3b802a||(packet['pending']=!0x0,packet['tryCount']++,this['flags']=packet['flags'],this['emit']['apply'](this,packet['args']));}['packet'](packet){packet['nsp']=this['nsp'],this['io']['_packet'](packet);}['onopen'](){'function'==typeof this['auth']?this['auth'](data=>{this['_sendConnectPacket'](data);}):this['_sendConnectPacket'](this['auth']);}['_sendConnectPacket'](data){this['packet']({'type':PacketType['CONNECT'],'data':this['_pid']?Object['assign']({'pid':this['_pid'],'offset':this['_lastOffset']},data):data});}['onerror'](_0x217da6){this['connected']||this['emitReserved']('connect_error',_0x217da6);}['onclose'](_0x2d2847,description){this['connected']=!0x1,delete this['id'],this['emitReserved']('disconnect',_0x2d2847,description);}['onpacket'](packet){if(packet['nsp']===this['nsp'])switch(packet['type']){case PacketType['CONNECT']:packet['data']&&packet['data']['sid']?this['onconnect'](packet['data']['sid'],packet['data']['pid']):this['emitReserved']('connect_error',new Error('It\x20seems\x20you\x20are\x20trying\x20to\x20reach\x20a\x20Socket.IO\x20server\x20in\x20v2.x\x20with\x20a\x20v3.x\x20client,\x20but\x20they\x20are\x20not\x20compatible\x20(more\x20information\x20here:\x20https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)'));break;case PacketType['EVENT']:case PacketType['BINARY_EVENT']:this['onevent'](packet);break;case PacketType['ACK']:case PacketType['BINARY_ACK']:this['onack'](packet);break;case PacketType['DISCONNECT']:this['ondisconnect']();break;case PacketType['CONNECT_ERROR']:this['destroy']();const _0x2bf0cc=new Error(packet['data']['message']);_0x2bf0cc['data']=packet['data']['data'],this['emitReserved']('connect_error',_0x2bf0cc);}}['onevent'](packet){const _0x4fc5f1=packet['data']||[];null!=packet['id']&&_0x4fc5f1['push'](this['ack'](packet['id'])),this['connected']?this['emitEvent'](_0x4fc5f1):this['receiveBuffer']['push'](Object['freeze'](_0x4fc5f1));}['emitEvent'](_0x5c21b1){if(this['_anyListeners']&&this['_anyListeners']['length']){const listeners=this['_anyListeners']['slice']();for(const listener of listeners)listener['apply'](this,_0x5c21b1);}super['emit']['apply'](this,_0x5c21b1),this['_pid']&&_0x5c21b1['length']&&'string'==typeof _0x5c21b1[_0x5c21b1['length']-0x1]&&(this['_lastOffset']=_0x5c21b1[_0x5c21b1['length']-0x1]);}['ack'](_0x5382f4){const _0x52738a=this;let sent=!0x1;return function(..._0x2f7fa2){sent||(sent=!0x0,_0x52738a['packet']({'type':PacketType['ACK'],'id':_0x5382f4,'data':_0x2f7fa2}));};}['onack'](packet){const _0x278ed1=this['acks'][packet['id']];'function'==typeof _0x278ed1&&(_0x278ed1['apply'](this,packet['data']),delete this['acks'][packet['id']]);}['onconnect'](_0x322a82,_0x21514d){this['id']=_0x322a82,this['recovered']=_0x21514d&&this['_pid']===_0x21514d,this['_pid']=_0x21514d,this['connected']=!0x0,this['emitBuffered'](),this['emitReserved']('connect'),this['_drainQueue'](!0x0);}['emitBuffered'](){this['receiveBuffer']['forEach'](_0x4f74ba=>this['emitEvent'](_0x4f74ba)),this['receiveBuffer']=[],this['sendBuffer']['forEach'](packet=>{this['notifyOutgoingListeners'](packet),this['packet'](packet);}),this['sendBuffer']=[];}['ondisconnect'](){this['destroy'](),this['onclose']('io\x20server\x20disconnect');}['destroy'](){this['subs']&&(this['subs']['forEach'](subDestroy=>subDestroy()),this['subs']=void 0x0),this['io']['_destroy'](this);}['disconnect'](){return this['connected']&&this['packet']({'type':PacketType['DISCONNECT']}),this['destroy'](),this['connected']&&this['onclose']('io\x20client\x20disconnect'),this;}['close'](){return this['disconnect']();}['compress'](_0x5c6e26){return this['flags']['compress']=_0x5c6e26,this;}get['volatile'](){return this['flags']['volatile']=!0x0,this;}['timeout'](timeout){return this['flags']['timeout']=timeout,this;}['onAny'](listener){return this['_anyListeners']=this['_anyListeners']||[],this['_anyListeners']['push'](listener),this;}['prependAny'](listener){return this['_anyListeners']=this['_anyListeners']||[],this['_anyListeners']['unshift'](listener),this;}['offAny'](listener){if(!this['_anyListeners'])return this;if(listener){const listeners=this['_anyListeners'];for(let _0x24b2fe=0x0;_0x24b2fe<listeners['length'];_0x24b2fe++)if(listener===listeners[_0x24b2fe])return listeners['splice'](_0x24b2fe,0x1),this;}else this['_anyListeners']=[];return this;}['listenersAny'](){return this['_anyListeners']||[];}['onAnyOutgoing'](listener){return this['_anyOutgoingListeners']=this['_anyOutgoingListeners']||[],this['_anyOutgoingListeners']['push'](listener),this;}['prependAnyOutgoing'](listener){return this['_anyOutgoingListeners']=this['_anyOutgoingListeners']||[],this['_anyOutgoingListeners']['unshift'](listener),this;}['offAnyOutgoing'](listener){if(!this['_anyOutgoingListeners'])return this;if(listener){const listeners=this['_anyOutgoingListeners'];for(let _0x1834be=0x0;_0x1834be<listeners['length'];_0x1834be++)if(listener===listeners[_0x1834be])return listeners['splice'](_0x1834be,0x1),this;}else this['_anyOutgoingListeners']=[];return this;}['listenersAnyOutgoing'](){return this['_anyOutgoingListeners']||[];}['notifyOutgoingListeners'](packet){if(this['_anyOutgoingListeners']&&this['_anyOutgoingListeners']['length']){const listeners=this['_anyOutgoingListeners']['slice']();for(const listener of listeners)listener['apply'](this,packet['data']);}}}function Backoff(opts){opts=opts||{},this['ms']=opts['min']||0x64,this['max']=opts['max']||0x2710,this['factor']=opts['factor']||0x2,this['jitter']=opts['jitter']>0x0&&opts['jitter']<=0x1?opts['jitter']:0x0,this['attempts']=0x0;}Backoff['prototype']['duration']=function(){var _0x30214c=this['ms']*Math['pow'](this['factor'],this['attempts']++);if(this['jitter']){var _0x43a54b=Math['random'](),deviation=Math['floor'](_0x43a54b*this['jitter']*_0x30214c);_0x30214c=0x1&Math['floor'](0xa*_0x43a54b)?_0x30214c+deviation:_0x30214c-deviation;}return 0x0|Math['min'](_0x30214c,this['max']);},Backoff['prototype']['reset']=function(){this['attempts']=0x0;},Backoff['prototype']['setMin']=function(_0x3249e0){this['ms']=_0x3249e0;},Backoff['prototype']['setMax']=function(_0x46ce33){this['max']=_0x46ce33;},Backoff['prototype']['setJitter']=function(jitter){this['jitter']=jitter;};class Manager extends Emitter{constructor(_0x260d86,opts){var _0x555aa8;super(),this['nsps']={},this['subs']=[],_0x260d86&&'object'==typeof _0x260d86&&(opts=_0x260d86,_0x260d86=void 0x0),(opts=opts||{})['path']=opts['path']||'/socket.io',this['opts']=opts,installTimerFunctions(this,opts),this['reconnection'](!0x1!==opts['reconnection']),this['reconnectionAttempts'](opts['reconnectionAttempts']||0x1/0x0),this['reconnectionDelay'](opts['reconnectionDelay']||0x3e8),this['reconnectionDelayMax'](opts['reconnectionDelayMax']||0x1388),this['randomizationFactor'](null!==(_0x555aa8=opts['randomizationFactor'])&&void 0x0!==_0x555aa8?_0x555aa8:0.5),this['backoff']=new Backoff({'min':this['reconnectionDelay'](),'max':this['reconnectionDelayMax'](),'jitter':this['randomizationFactor']()}),this['timeout'](null==opts['timeout']?0x4e20:opts['timeout']),this['_readyState']='closed',this['uri']=_0x260d86;const _0x1ef8aa=opts['parser']||parser$1;this['encoder']=new _0x1ef8aa['Encoder'](),this['decoder']=new _0x1ef8aa['Decoder'](),this['_autoConnect']=!0x1!==opts['autoConnect'],this['_autoConnect']&&this['open']();}['reconnection'](_0x5824a7){return arguments['length']?(this['_reconnection']=!!_0x5824a7,this):this['_reconnection'];}['reconnectionAttempts'](_0x2b28fb){return void 0x0===_0x2b28fb?this['_reconnectionAttempts']:(this['_reconnectionAttempts']=_0x2b28fb,this);}['reconnectionDelay'](_0x460061){var _0x98ca17;return void 0x0===_0x460061?this['_reconnectionDelay']:(this['_reconnectionDelay']=_0x460061,null===(_0x98ca17=this['backoff'])||void 0x0===_0x98ca17||_0x98ca17['setMin'](_0x460061),this);}['randomizationFactor'](_0x3b83fa){var _0x349645;return void 0x0===_0x3b83fa?this['_randomizationFactor']:(this['_randomizationFactor']=_0x3b83fa,null===(_0x349645=this['backoff'])||void 0x0===_0x349645||_0x349645['setJitter'](_0x3b83fa),this);}['reconnectionDelayMax'](_0x13f674){var _0x4a7693;return void 0x0===_0x13f674?this['_reconnectionDelayMax']:(this['_reconnectionDelayMax']=_0x13f674,null===(_0x4a7693=this['backoff'])||void 0x0===_0x4a7693||_0x4a7693['setMax'](_0x13f674),this);}['timeout'](_0x17e3cf){return arguments['length']?(this['_timeout']=_0x17e3cf,this):this['_timeout'];}['maybeReconnectOnOpen'](){!this['_reconnecting']&&this['_reconnection']&&0x0===this['backoff']['attempts']&&this['reconnect']();}['open'](_0x5ebd55){if(~this['_readyState']['indexOf']('open'))return this;this['engine']=new Socket$1(this['uri'],this['opts']);const socket=this['engine'],_0x2fc35c=this;this['_readyState']='opening',this['skipReconnect']=!0x1;const openSubDestroy=on(socket,'open',function(){_0x2fc35c['onopen'](),_0x5ebd55&&_0x5ebd55();}),_0x2b1653=on(socket,'error',_0x56fe5f=>{_0x2fc35c['cleanup'](),_0x2fc35c['_readyState']='closed',this['emitReserved']('error',_0x56fe5f),_0x5ebd55?_0x5ebd55(_0x56fe5f):_0x2fc35c['maybeReconnectOnOpen']();});if(!0x1!==this['_timeout']){const timeout=this['_timeout'];0x0===timeout&&openSubDestroy();const timer=this['setTimeoutFn'](()=>{openSubDestroy(),socket['close'](),socket['emit']('error',new Error('timeout'));},timeout);this['opts']['autoUnref']&&timer['unref'](),this['subs']['push'](function(){clearTimeout(timer);});}return this['subs']['push'](openSubDestroy),this['subs']['push'](_0x2b1653),this;}['connect'](_0x2ab883){return this['open'](_0x2ab883);}['onopen'](){this['cleanup'](),this['_readyState']='open',this['emitReserved']('open');const socket=this['engine'];this['subs']['push'](on(socket,'ping',this['onping']['bind'](this)),on(socket,'data',this['ondata']['bind'](this)),on(socket,'error',this['onerror']['bind'](this)),on(socket,'close',this['onclose']['bind'](this)),on(this['decoder'],'decoded',this['ondecoded']['bind'](this)));}['onping'](){this['emitReserved']('ping');}['ondata'](data){try{this['decoder']['add'](data);}catch(_0x18232b){this['onclose']('parse\x20error',_0x18232b);}}['ondecoded'](packet){nextTick(()=>{this['emitReserved']('packet',packet);},this['setTimeoutFn']);}['onerror'](_0xe2d82b){this['emitReserved']('error',_0xe2d82b);}['socket'](_0x295e90,opts){let socket=this['nsps'][_0x295e90];return socket?this['_autoConnect']&&!socket['active']&&socket['connect']():(socket=new Socket(this,_0x295e90,opts),this['nsps'][_0x295e90]=socket),socket;}['_destroy'](socket){const _0x1e26a3=Object['keys'](this['nsps']);for(const _0x56dc66 of _0x1e26a3){if(this['nsps'][_0x56dc66]['active'])return;}this['_close']();}['_packet'](packet){const encodedPackets=this['encoder']['encode'](packet);for(let _0x211820=0x0;_0x211820<encodedPackets['length'];_0x211820++)this['engine']['write'](encodedPackets[_0x211820],packet['options']);}['cleanup'](){this['subs']['forEach'](subDestroy=>subDestroy()),this['subs']['length']=0x0,this['decoder']['destroy']();}['_close'](){this['skipReconnect']=!0x0,this['_reconnecting']=!0x1,this['onclose']('forced\x20close'),this['engine']&&this['engine']['close']();}['disconnect'](){return this['_close']();}['onclose'](_0x5389eb,description){this['cleanup'](),this['backoff']['reset'](),this['_readyState']='closed',this['emitReserved']('close',_0x5389eb,description),this['_reconnection']&&!this['skipReconnect']&&this['reconnect']();}['reconnect'](){if(this['_reconnecting']||this['skipReconnect'])return this;const _0x414091=this;if(this['backoff']['attempts']>=this['_reconnectionAttempts'])this['backoff']['reset'](),this['emitReserved']('reconnect_failed'),this['_reconnecting']=!0x1;else{const _0x5e3433=this['backoff']['duration']();this['_reconnecting']=!0x0;const timer=this['setTimeoutFn'](()=>{_0x414091['skipReconnect']||(this['emitReserved']('reconnect_attempt',_0x414091['backoff']['attempts']),_0x414091['skipReconnect']||_0x414091['open'](_0x3f0cb1=>{_0x3f0cb1?(_0x414091['_reconnecting']=!0x1,_0x414091['reconnect'](),this['emitReserved']('reconnect_error',_0x3f0cb1)):_0x414091['onreconnect']();}));},_0x5e3433);this['opts']['autoUnref']&&timer['unref'](),this['subs']['push'](function(){clearTimeout(timer);});}}['onreconnect'](){const attempt=this['backoff']['attempts'];this['_reconnecting']=!0x1,this['backoff']['reset'](),this['emitReserved']('reconnect',attempt);}}const cache={};function lookup(_0x34ed06,opts){'object'==typeof _0x34ed06&&(opts=_0x34ed06,_0x34ed06=void 0x0);const _0xc695a1=function(_0x5c8be2,path='',_0x2a6089){let _0x10b390=_0x5c8be2;_0x2a6089=_0x2a6089||'undefined'!=typeof location&&location,null==_0x5c8be2&&(_0x5c8be2=_0x2a6089['protocol']+'//'+_0x2a6089['host']),'string'==typeof _0x5c8be2&&('/'===_0x5c8be2['charAt'](0x0)&&(_0x5c8be2='/'===_0x5c8be2['charAt'](0x1)?_0x2a6089['protocol']+_0x5c8be2:_0x2a6089['host']+_0x5c8be2),/^(https?|wss?):\/\//['test'](_0x5c8be2)||(_0x5c8be2=void 0x0!==_0x2a6089?_0x2a6089['protocol']+'//'+_0x5c8be2:'https://'+_0x5c8be2),_0x10b390=parse(_0x5c8be2)),_0x10b390['port']||(/^(http|ws)$/['test'](_0x10b390['protocol'])?_0x10b390['port']='80':/^(http|ws)s$/['test'](_0x10b390['protocol'])&&(_0x10b390['port']='443')),_0x10b390['path']=_0x10b390['path']||'/';const host=-0x1!==_0x10b390['host']['indexOf'](':')?'['+_0x10b390['host']+']':_0x10b390['host'];return _0x10b390['id']=_0x10b390['protocol']+'://'+host+':'+_0x10b390['port']+path,_0x10b390['href']=_0x10b390['protocol']+'://'+host+(_0x2a6089&&_0x2a6089['port']===_0x10b390['port']?'':':'+_0x10b390['port']),_0x10b390;}(_0x34ed06,(opts=opts||{})['path']||'/socket.io'),_0x96648a=_0xc695a1['source'],_0x18810d=_0xc695a1['id'],path=_0xc695a1['path'],_0x3946bc=cache[_0x18810d]&&path in cache[_0x18810d]['nsps'];let _0x3e87d5;return opts['forceNew']||opts['force\x20new\x20connection']||!0x1===opts['multiplex']||_0x3946bc?_0x3e87d5=new Manager(_0x96648a,opts):(cache[_0x18810d]||(cache[_0x18810d]=new Manager(_0x96648a,opts)),_0x3e87d5=cache[_0x18810d]),_0xc695a1['query']&&!opts['query']&&(opts['query']=_0xc695a1['queryKey']),_0x3e87d5['socket'](_0xc695a1['path'],opts);}Object['assign'](lookup,{'Manager':Manager,'Socket':Socket,'io':lookup,'connect':lookup});class Descriptor{['constructor'];static ['DESCRIPTOR_NAME'];static ['DESCRIPTOR'];constructor(..._0x3d19ee){}}class Message extends Descriptor{['constructor'];static ['TYPE']='1000';static ['READABLE_TYPE_NAME'];constructor(..._0x2bc989){super();}static['fromJSON'](object){throw new TypeError('Must\x20be\x20implemented\x20in\x20a\x20child\x20class!');}}class ChannelMessage extends Message{['type'];['socketId'];['data'];static ['DESCRIPTOR_NAME']='ChannelMessage';static ['DESCRIPTOR']={'fields':{'type':{'type':'uint32','id':0x1},'socketId':{'type':'string','id':0x2},'data':{'type':'bytes','id':0x3}}};constructor(type,socketId,data){super(),this['type']=type,this['socketId']=socketId,this['data']=data;}['toJSON'](){return{'type':this['type'],'socketId':this['socketId'],'data':this['data']};}static['fromJSON'](data){return new ChannelMessage(data['type'],data['socketId'],data['data']);}}const $Reader=$protobuf['Reader'],$Writer=$protobuf['Writer'],$util=$protobuf['util'],$root=$protobuf['roots']['default']||($protobuf['roots']['default']={});$root['OperationMetadataDescriptor']=((()=>{function OperationMetadataDescriptor(properties){if(properties){for(let _0x12500d=Object['keys'](properties),_0x4f59cb=0x0;_0x4f59cb<_0x12500d['length'];++_0x4f59cb)null!=properties[_0x12500d[_0x4f59cb]]&&(this[_0x12500d[_0x4f59cb]]=properties[_0x12500d[_0x4f59cb]]);}}return OperationMetadataDescriptor['prototype']['userId']='',OperationMetadataDescriptor['prototype']['type']='',OperationMetadataDescriptor['prototype']['createdAt']='',OperationMetadataDescriptor['create']=function(properties){return new OperationMetadataDescriptor(properties);},OperationMetadataDescriptor['encode']=function(_0x3298a8,writer){return writer||(writer=$Writer['create']()),null!=_0x3298a8['userId']&&Object['hasOwnProperty']['call'](_0x3298a8,'userId')&&writer['uint32'](0xa)['string'](_0x3298a8['userId']),null!=_0x3298a8['type']&&Object['hasOwnProperty']['call'](_0x3298a8,'type')&&writer['uint32'](0x12)['string'](_0x3298a8['type']),null!=_0x3298a8['createdAt']&&Object['hasOwnProperty']['call'](_0x3298a8,'createdAt')&&writer['uint32'](0x1a)['string'](_0x3298a8['createdAt']),writer;},OperationMetadataDescriptor['encodeDelimited']=function(_0x41c20a,writer){return this['encode'](_0x41c20a,writer)['ldelim']();},OperationMetadataDescriptor['decode']=function(_0x956b65,length){_0x956b65 instanceof $Reader||(_0x956b65=$Reader['create'](_0x956b65));let _0x33d2f4=void 0x0===length?_0x956b65['len']:_0x956b65['pos']+length,_0x4bdb59=new $root['OperationMetadataDescriptor']();for(;_0x956b65['pos']<_0x33d2f4;){let tag=_0x956b65['uint32']();switch(tag>>>0x3){case 0x1:_0x4bdb59['userId']=_0x956b65['string']();break;case 0x2:_0x4bdb59['type']=_0x956b65['string']();break;case 0x3:_0x4bdb59['createdAt']=_0x956b65['string']();break;default:_0x956b65['skipType'](0x7&tag);}}return _0x4bdb59;},OperationMetadataDescriptor['decodeDelimited']=function(_0xf436fd){return _0xf436fd instanceof $Reader||(_0xf436fd=new $Reader(_0xf436fd)),this['decode'](_0xf436fd,_0xf436fd['uint32']());},OperationMetadataDescriptor['verify']=function(_0xe80391){return'object'!=typeof _0xe80391||null===_0xe80391?'object\x20expected':null!=_0xe80391['userId']&&_0xe80391['hasOwnProperty']('userId')&&!$util['isString'](_0xe80391['userId'])?'userId:\x20string\x20expected':null!=_0xe80391['type']&&_0xe80391['hasOwnProperty']('type')&&!$util['isString'](_0xe80391['type'])?'type:\x20string\x20expected':null!=_0xe80391['createdAt']&&_0xe80391['hasOwnProperty']('createdAt')&&!$util['isString'](_0xe80391['createdAt'])?'createdAt:\x20string\x20expected':null;},OperationMetadataDescriptor['fromObject']=function(object){if(object instanceof $root['OperationMetadataDescriptor'])return object;let _0x3bd508=new $root['OperationMetadataDescriptor']();return null!=object['userId']&&(_0x3bd508['userId']=String(object['userId'])),null!=object['type']&&(_0x3bd508['type']=String(object['type'])),null!=object['createdAt']&&(_0x3bd508['createdAt']=String(object['createdAt'])),_0x3bd508;},OperationMetadataDescriptor['toObject']=function(_0x5e2ccf,options){options||(options={});let object={};return options['defaults']&&(object['userId']='',object['type']='',object['createdAt']=''),null!=_0x5e2ccf['userId']&&_0x5e2ccf['hasOwnProperty']('userId')&&(object['userId']=_0x5e2ccf['userId']),null!=_0x5e2ccf['type']&&_0x5e2ccf['hasOwnProperty']('type')&&(object['type']=_0x5e2ccf['type']),null!=_0x5e2ccf['createdAt']&&_0x5e2ccf['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x5e2ccf['createdAt']),object;},OperationMetadataDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},OperationMetadataDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/OperationMetadataDescriptor';},OperationMetadataDescriptor;})()),$root['CollaborativeEditingConnectMessage']=((()=>{function CollaborativeEditingConnectMessage(properties){if(this['buffers']=[],this['types']=[],properties){for(let _0x181a45=Object['keys'](properties),_0x55822f=0x0;_0x55822f<_0x181a45['length'];++_0x55822f)null!=properties[_0x181a45[_0x55822f]]&&(this[_0x181a45[_0x55822f]]=properties[_0x181a45[_0x55822f]]);}}return CollaborativeEditingConnectMessage['prototype']['id']='',CollaborativeEditingConnectMessage['prototype']['bundleVersion']='',CollaborativeEditingConnectMessage['prototype']['buffers']=$util['emptyArray'],CollaborativeEditingConnectMessage['prototype']['types']=$util['emptyArray'],CollaborativeEditingConnectMessage['prototype']['lastOperationId']='',CollaborativeEditingConnectMessage['create']=function(properties){return new CollaborativeEditingConnectMessage(properties);},CollaborativeEditingConnectMessage['encode']=function(_0x42fe46,writer){if(writer||(writer=$Writer['create']()),null!=_0x42fe46['id']&&Object['hasOwnProperty']['call'](_0x42fe46,'id')&&writer['uint32'](0xa)['string'](_0x42fe46['id']),null!=_0x42fe46['bundleVersion']&&Object['hasOwnProperty']['call'](_0x42fe46,'bundleVersion')&&writer['uint32'](0x12)['string'](_0x42fe46['bundleVersion']),null!=_0x42fe46['buffers']&&_0x42fe46['buffers']['length']){for(let _0x128ac2=0x0;_0x128ac2<_0x42fe46['buffers']['length'];++_0x128ac2)writer['uint32'](0x1a)['bytes'](_0x42fe46['buffers'][_0x128ac2]);}if(null!=_0x42fe46['types']&&_0x42fe46['types']['length']){writer['uint32'](0x22)['fork']();for(let _0x19763e=0x0;_0x19763e<_0x42fe46['types']['length'];++_0x19763e)writer['uint32'](_0x42fe46['types'][_0x19763e]);writer['ldelim']();}return null!=_0x42fe46['lastOperationId']&&Object['hasOwnProperty']['call'](_0x42fe46,'lastOperationId')&&writer['uint32'](0x2a)['string'](_0x42fe46['lastOperationId']),writer;},CollaborativeEditingConnectMessage['encodeDelimited']=function(_0x26ac7c,writer){return this['encode'](_0x26ac7c,writer)['ldelim']();},CollaborativeEditingConnectMessage['decode']=function(_0x3949a1,length){_0x3949a1 instanceof $Reader||(_0x3949a1=$Reader['create'](_0x3949a1));let _0x1c5645=void 0x0===length?_0x3949a1['len']:_0x3949a1['pos']+length,_0x369c99=new $root['CollaborativeEditingConnectMessage']();for(;_0x3949a1['pos']<_0x1c5645;){let tag=_0x3949a1['uint32']();switch(tag>>>0x3){case 0x1:_0x369c99['id']=_0x3949a1['string']();break;case 0x2:_0x369c99['bundleVersion']=_0x3949a1['string']();break;case 0x3:_0x369c99['buffers']&&_0x369c99['buffers']['length']||(_0x369c99['buffers']=[]),_0x369c99['buffers']['push'](_0x3949a1['bytes']());break;case 0x4:if(_0x369c99['types']&&_0x369c99['types']['length']||(_0x369c99['types']=[]),0x2==(0x7&tag)){let _0x30df74=_0x3949a1['uint32']()+_0x3949a1['pos'];for(;_0x3949a1['pos']<_0x30df74;)_0x369c99['types']['push'](_0x3949a1['uint32']());}else _0x369c99['types']['push'](_0x3949a1['uint32']());break;case 0x5:_0x369c99['lastOperationId']=_0x3949a1['string']();break;default:_0x3949a1['skipType'](0x7&tag);}}return _0x369c99;},CollaborativeEditingConnectMessage['decodeDelimited']=function(_0x3f7fd7){return _0x3f7fd7 instanceof $Reader||(_0x3f7fd7=new $Reader(_0x3f7fd7)),this['decode'](_0x3f7fd7,_0x3f7fd7['uint32']());},CollaborativeEditingConnectMessage['verify']=function(_0x38c0a3){if('object'!=typeof _0x38c0a3||null===_0x38c0a3)return'object\x20expected';if(null!=_0x38c0a3['id']&&_0x38c0a3['hasOwnProperty']('id')&&!$util['isString'](_0x38c0a3['id']))return'id:\x20string\x20expected';if(null!=_0x38c0a3['bundleVersion']&&_0x38c0a3['hasOwnProperty']('bundleVersion')&&!$util['isString'](_0x38c0a3['bundleVersion']))return'bundleVersion:\x20string\x20expected';if(null!=_0x38c0a3['buffers']&&_0x38c0a3['hasOwnProperty']('buffers')){if(!Array['isArray'](_0x38c0a3['buffers']))return'buffers:\x20array\x20expected';for(let _0x2fa55a=0x0;_0x2fa55a<_0x38c0a3['buffers']['length'];++_0x2fa55a)if(!(_0x38c0a3['buffers'][_0x2fa55a]&&'number'==typeof _0x38c0a3['buffers'][_0x2fa55a]['length']||$util['isString'](_0x38c0a3['buffers'][_0x2fa55a])))return'buffers:\x20buffer[]\x20expected';}if(null!=_0x38c0a3['types']&&_0x38c0a3['hasOwnProperty']('types')){if(!Array['isArray'](_0x38c0a3['types']))return'types:\x20array\x20expected';for(let _0x510c8c=0x0;_0x510c8c<_0x38c0a3['types']['length'];++_0x510c8c)if(!$util['isInteger'](_0x38c0a3['types'][_0x510c8c]))return'types:\x20integer[]\x20expected';}return null!=_0x38c0a3['lastOperationId']&&_0x38c0a3['hasOwnProperty']('lastOperationId')&&!$util['isString'](_0x38c0a3['lastOperationId'])?'lastOperationId:\x20string\x20expected':null;},CollaborativeEditingConnectMessage['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingConnectMessage'])return object;let _0x3c62a5=new $root['CollaborativeEditingConnectMessage']();if(null!=object['id']&&(_0x3c62a5['id']=String(object['id'])),null!=object['bundleVersion']&&(_0x3c62a5['bundleVersion']=String(object['bundleVersion'])),object['buffers']){if(!Array['isArray'](object['buffers']))throw TypeError('.CollaborativeEditingConnectMessage.buffers:\x20array\x20expected');_0x3c62a5['buffers']=[];for(let _0x250d65=0x0;_0x250d65<object['buffers']['length'];++_0x250d65)'string'==typeof object['buffers'][_0x250d65]?$util['base64']['decode'](object['buffers'][_0x250d65],_0x3c62a5['buffers'][_0x250d65]=$util['newBuffer']($util['base64']['length'](object['buffers'][_0x250d65])),0x0):object['buffers'][_0x250d65]['length']>=0x0&&(_0x3c62a5['buffers'][_0x250d65]=object['buffers'][_0x250d65]);}if(object['types']){if(!Array['isArray'](object['types']))throw TypeError('.CollaborativeEditingConnectMessage.types:\x20array\x20expected');_0x3c62a5['types']=[];for(let _0x37e5c6=0x0;_0x37e5c6<object['types']['length'];++_0x37e5c6)_0x3c62a5['types'][_0x37e5c6]=object['types'][_0x37e5c6]>>>0x0;}return null!=object['lastOperationId']&&(_0x3c62a5['lastOperationId']=String(object['lastOperationId'])),_0x3c62a5;},CollaborativeEditingConnectMessage['toObject']=function(_0x5ef1d9,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['buffers']=[],object['types']=[]),options['defaults']&&(object['id']='',object['bundleVersion']='',object['lastOperationId']=''),null!=_0x5ef1d9['id']&&_0x5ef1d9['hasOwnProperty']('id')&&(object['id']=_0x5ef1d9['id']),null!=_0x5ef1d9['bundleVersion']&&_0x5ef1d9['hasOwnProperty']('bundleVersion')&&(object['bundleVersion']=_0x5ef1d9['bundleVersion']),_0x5ef1d9['buffers']&&_0x5ef1d9['buffers']['length']){object['buffers']=[];for(let _0x3c8f0c=0x0;_0x3c8f0c<_0x5ef1d9['buffers']['length'];++_0x3c8f0c)object['buffers'][_0x3c8f0c]=options['bytes']===String?$util['base64']['encode'](_0x5ef1d9['buffers'][_0x3c8f0c],0x0,_0x5ef1d9['buffers'][_0x3c8f0c]['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x5ef1d9['buffers'][_0x3c8f0c]):_0x5ef1d9['buffers'][_0x3c8f0c];}if(_0x5ef1d9['types']&&_0x5ef1d9['types']['length']){object['types']=[];for(let _0x29c08c=0x0;_0x29c08c<_0x5ef1d9['types']['length'];++_0x29c08c)object['types'][_0x29c08c]=_0x5ef1d9['types'][_0x29c08c];}return null!=_0x5ef1d9['lastOperationId']&&_0x5ef1d9['hasOwnProperty']('lastOperationId')&&(object['lastOperationId']=_0x5ef1d9['lastOperationId']),object;},CollaborativeEditingConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingConnectMessage';},CollaborativeEditingConnectMessage;})()),$root['CollaborativeEditingReconnectMessage']=((()=>{function CollaborativeEditingReconnectMessage(properties){if(properties){for(let _0x1f21a3=Object['keys'](properties),_0x2acee0=0x0;_0x2acee0<_0x1f21a3['length'];++_0x2acee0)null!=properties[_0x1f21a3[_0x2acee0]]&&(this[_0x1f21a3[_0x2acee0]]=properties[_0x1f21a3[_0x2acee0]]);}}return CollaborativeEditingReconnectMessage['prototype']['id']='',CollaborativeEditingReconnectMessage['prototype']['bundleVersion']='',CollaborativeEditingReconnectMessage['prototype']['lastKnowVersion']=0x0,CollaborativeEditingReconnectMessage['create']=function(properties){return new CollaborativeEditingReconnectMessage(properties);},CollaborativeEditingReconnectMessage['encode']=function(_0x19ac0c,writer){return writer||(writer=$Writer['create']()),null!=_0x19ac0c['id']&&Object['hasOwnProperty']['call'](_0x19ac0c,'id')&&writer['uint32'](0xa)['string'](_0x19ac0c['id']),null!=_0x19ac0c['bundleVersion']&&Object['hasOwnProperty']['call'](_0x19ac0c,'bundleVersion')&&writer['uint32'](0x12)['string'](_0x19ac0c['bundleVersion']),null!=_0x19ac0c['lastKnowVersion']&&Object['hasOwnProperty']['call'](_0x19ac0c,'lastKnowVersion')&&writer['uint32'](0x18)['uint32'](_0x19ac0c['lastKnowVersion']),writer;},CollaborativeEditingReconnectMessage['encodeDelimited']=function(_0x49ede1,writer){return this['encode'](_0x49ede1,writer)['ldelim']();},CollaborativeEditingReconnectMessage['decode']=function(_0xa10ed6,length){_0xa10ed6 instanceof $Reader||(_0xa10ed6=$Reader['create'](_0xa10ed6));let _0xb2c29f=void 0x0===length?_0xa10ed6['len']:_0xa10ed6['pos']+length,_0x52822b=new $root['CollaborativeEditingReconnectMessage']();for(;_0xa10ed6['pos']<_0xb2c29f;){let tag=_0xa10ed6['uint32']();switch(tag>>>0x3){case 0x1:_0x52822b['id']=_0xa10ed6['string']();break;case 0x2:_0x52822b['bundleVersion']=_0xa10ed6['string']();break;case 0x3:_0x52822b['lastKnowVersion']=_0xa10ed6['uint32']();break;default:_0xa10ed6['skipType'](0x7&tag);}}return _0x52822b;},CollaborativeEditingReconnectMessage['decodeDelimited']=function(_0x59e139){return _0x59e139 instanceof $Reader||(_0x59e139=new $Reader(_0x59e139)),this['decode'](_0x59e139,_0x59e139['uint32']());},CollaborativeEditingReconnectMessage['verify']=function(_0xc7c12e){return'object'!=typeof _0xc7c12e||null===_0xc7c12e?'object\x20expected':null!=_0xc7c12e['id']&&_0xc7c12e['hasOwnProperty']('id')&&!$util['isString'](_0xc7c12e['id'])?'id:\x20string\x20expected':null!=_0xc7c12e['bundleVersion']&&_0xc7c12e['hasOwnProperty']('bundleVersion')&&!$util['isString'](_0xc7c12e['bundleVersion'])?'bundleVersion:\x20string\x20expected':null!=_0xc7c12e['lastKnowVersion']&&_0xc7c12e['hasOwnProperty']('lastKnowVersion')&&!$util['isInteger'](_0xc7c12e['lastKnowVersion'])?'lastKnowVersion:\x20integer\x20expected':null;},CollaborativeEditingReconnectMessage['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingReconnectMessage'])return object;let _0xde06d5=new $root['CollaborativeEditingReconnectMessage']();return null!=object['id']&&(_0xde06d5['id']=String(object['id'])),null!=object['bundleVersion']&&(_0xde06d5['bundleVersion']=String(object['bundleVersion'])),null!=object['lastKnowVersion']&&(_0xde06d5['lastKnowVersion']=object['lastKnowVersion']>>>0x0),_0xde06d5;},CollaborativeEditingReconnectMessage['toObject']=function(_0x1555dd,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['bundleVersion']='',object['lastKnowVersion']=0x0),null!=_0x1555dd['id']&&_0x1555dd['hasOwnProperty']('id')&&(object['id']=_0x1555dd['id']),null!=_0x1555dd['bundleVersion']&&_0x1555dd['hasOwnProperty']('bundleVersion')&&(object['bundleVersion']=_0x1555dd['bundleVersion']),null!=_0x1555dd['lastKnowVersion']&&_0x1555dd['hasOwnProperty']('lastKnowVersion')&&(object['lastKnowVersion']=_0x1555dd['lastKnowVersion']),object;},CollaborativeEditingReconnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingReconnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingReconnectMessage';},CollaborativeEditingReconnectMessage;})()),$root['CollaborativeEditingUpdateMessage']=((()=>{function CollaborativeEditingUpdateMessage(properties){if(this['buffers']=[],this['types']=[],this['metadata']=[],properties){for(let _0x64b804=Object['keys'](properties),_0x45692a=0x0;_0x45692a<_0x64b804['length'];++_0x45692a)null!=properties[_0x64b804[_0x45692a]]&&(this[_0x64b804[_0x45692a]]=properties[_0x64b804[_0x45692a]]);}}return CollaborativeEditingUpdateMessage['prototype']['id']='',CollaborativeEditingUpdateMessage['prototype']['baseVersion']=0x0,CollaborativeEditingUpdateMessage['prototype']['buffers']=$util['emptyArray'],CollaborativeEditingUpdateMessage['prototype']['types']=$util['emptyArray'],CollaborativeEditingUpdateMessage['prototype']['metadata']=$util['emptyArray'],CollaborativeEditingUpdateMessage['prototype']['lastOperationId']='',CollaborativeEditingUpdateMessage['create']=function(properties){return new CollaborativeEditingUpdateMessage(properties);},CollaborativeEditingUpdateMessage['encode']=function(_0x450333,writer){if(writer||(writer=$Writer['create']()),null!=_0x450333['id']&&Object['hasOwnProperty']['call'](_0x450333,'id')&&writer['uint32'](0xa)['string'](_0x450333['id']),null!=_0x450333['baseVersion']&&Object['hasOwnProperty']['call'](_0x450333,'baseVersion')&&writer['uint32'](0x10)['uint32'](_0x450333['baseVersion']),null!=_0x450333['buffers']&&_0x450333['buffers']['length']){for(let _0x1b1c9a=0x0;_0x1b1c9a<_0x450333['buffers']['length'];++_0x1b1c9a)writer['uint32'](0x1a)['bytes'](_0x450333['buffers'][_0x1b1c9a]);}if(null!=_0x450333['types']&&_0x450333['types']['length']){writer['uint32'](0x22)['fork']();for(let _0x474a92=0x0;_0x474a92<_0x450333['types']['length'];++_0x474a92)writer['uint32'](_0x450333['types'][_0x474a92]);writer['ldelim']();}if(null!=_0x450333['metadata']&&_0x450333['metadata']['length']){for(let _0x3f53aa=0x0;_0x3f53aa<_0x450333['metadata']['length'];++_0x3f53aa)$root['OperationMetadataDescriptor']['encode'](_0x450333['metadata'][_0x3f53aa],writer['uint32'](0x32)['fork']())['ldelim']();}return null!=_0x450333['lastOperationId']&&Object['hasOwnProperty']['call'](_0x450333,'lastOperationId')&&writer['uint32'](0x3a)['string'](_0x450333['lastOperationId']),writer;},CollaborativeEditingUpdateMessage['encodeDelimited']=function(_0x2208ff,writer){return this['encode'](_0x2208ff,writer)['ldelim']();},CollaborativeEditingUpdateMessage['decode']=function(_0x50a475,length){_0x50a475 instanceof $Reader||(_0x50a475=$Reader['create'](_0x50a475));let _0xcc054e=void 0x0===length?_0x50a475['len']:_0x50a475['pos']+length,_0x254fdd=new $root['CollaborativeEditingUpdateMessage']();for(;_0x50a475['pos']<_0xcc054e;){let tag=_0x50a475['uint32']();switch(tag>>>0x3){case 0x1:_0x254fdd['id']=_0x50a475['string']();break;case 0x2:_0x254fdd['baseVersion']=_0x50a475['uint32']();break;case 0x3:_0x254fdd['buffers']&&_0x254fdd['buffers']['length']||(_0x254fdd['buffers']=[]),_0x254fdd['buffers']['push'](_0x50a475['bytes']());break;case 0x4:if(_0x254fdd['types']&&_0x254fdd['types']['length']||(_0x254fdd['types']=[]),0x2==(0x7&tag)){let _0x1a150e=_0x50a475['uint32']()+_0x50a475['pos'];for(;_0x50a475['pos']<_0x1a150e;)_0x254fdd['types']['push'](_0x50a475['uint32']());}else _0x254fdd['types']['push'](_0x50a475['uint32']());break;case 0x6:_0x254fdd['metadata']&&_0x254fdd['metadata']['length']||(_0x254fdd['metadata']=[]),_0x254fdd['metadata']['push']($root['OperationMetadataDescriptor']['decode'](_0x50a475,_0x50a475['uint32']()));break;case 0x7:_0x254fdd['lastOperationId']=_0x50a475['string']();break;default:_0x50a475['skipType'](0x7&tag);}}return _0x254fdd;},CollaborativeEditingUpdateMessage['decodeDelimited']=function(_0x3917de){return _0x3917de instanceof $Reader||(_0x3917de=new $Reader(_0x3917de)),this['decode'](_0x3917de,_0x3917de['uint32']());},CollaborativeEditingUpdateMessage['verify']=function(_0x5a6eb2){if('object'!=typeof _0x5a6eb2||null===_0x5a6eb2)return'object\x20expected';if(null!=_0x5a6eb2['id']&&_0x5a6eb2['hasOwnProperty']('id')&&!$util['isString'](_0x5a6eb2['id']))return'id:\x20string\x20expected';if(null!=_0x5a6eb2['baseVersion']&&_0x5a6eb2['hasOwnProperty']('baseVersion')&&!$util['isInteger'](_0x5a6eb2['baseVersion']))return'baseVersion:\x20integer\x20expected';if(null!=_0x5a6eb2['buffers']&&_0x5a6eb2['hasOwnProperty']('buffers')){if(!Array['isArray'](_0x5a6eb2['buffers']))return'buffers:\x20array\x20expected';for(let _0x185f43=0x0;_0x185f43<_0x5a6eb2['buffers']['length'];++_0x185f43)if(!(_0x5a6eb2['buffers'][_0x185f43]&&'number'==typeof _0x5a6eb2['buffers'][_0x185f43]['length']||$util['isString'](_0x5a6eb2['buffers'][_0x185f43])))return'buffers:\x20buffer[]\x20expected';}if(null!=_0x5a6eb2['types']&&_0x5a6eb2['hasOwnProperty']('types')){if(!Array['isArray'](_0x5a6eb2['types']))return'types:\x20array\x20expected';for(let _0x350c47=0x0;_0x350c47<_0x5a6eb2['types']['length'];++_0x350c47)if(!$util['isInteger'](_0x5a6eb2['types'][_0x350c47]))return'types:\x20integer[]\x20expected';}if(null!=_0x5a6eb2['metadata']&&_0x5a6eb2['hasOwnProperty']('metadata')){if(!Array['isArray'](_0x5a6eb2['metadata']))return'metadata:\x20array\x20expected';for(let _0x3cf4f7=0x0;_0x3cf4f7<_0x5a6eb2['metadata']['length'];++_0x3cf4f7){let _0x50236f=$root['OperationMetadataDescriptor']['verify'](_0x5a6eb2['metadata'][_0x3cf4f7]);if(_0x50236f)return'metadata.'+_0x50236f;}}return null!=_0x5a6eb2['lastOperationId']&&_0x5a6eb2['hasOwnProperty']('lastOperationId')&&!$util['isString'](_0x5a6eb2['lastOperationId'])?'lastOperationId:\x20string\x20expected':null;},CollaborativeEditingUpdateMessage['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingUpdateMessage'])return object;let _0x211656=new $root['CollaborativeEditingUpdateMessage']();if(null!=object['id']&&(_0x211656['id']=String(object['id'])),null!=object['baseVersion']&&(_0x211656['baseVersion']=object['baseVersion']>>>0x0),object['buffers']){if(!Array['isArray'](object['buffers']))throw TypeError('.CollaborativeEditingUpdateMessage.buffers:\x20array\x20expected');_0x211656['buffers']=[];for(let _0x258d57=0x0;_0x258d57<object['buffers']['length'];++_0x258d57)'string'==typeof object['buffers'][_0x258d57]?$util['base64']['decode'](object['buffers'][_0x258d57],_0x211656['buffers'][_0x258d57]=$util['newBuffer']($util['base64']['length'](object['buffers'][_0x258d57])),0x0):object['buffers'][_0x258d57]['length']>=0x0&&(_0x211656['buffers'][_0x258d57]=object['buffers'][_0x258d57]);}if(object['types']){if(!Array['isArray'](object['types']))throw TypeError('.CollaborativeEditingUpdateMessage.types:\x20array\x20expected');_0x211656['types']=[];for(let _0x4ecd1f=0x0;_0x4ecd1f<object['types']['length'];++_0x4ecd1f)_0x211656['types'][_0x4ecd1f]=object['types'][_0x4ecd1f]>>>0x0;}if(object['metadata']){if(!Array['isArray'](object['metadata']))throw TypeError('.CollaborativeEditingUpdateMessage.metadata:\x20array\x20expected');_0x211656['metadata']=[];for(let _0x2a1d71=0x0;_0x2a1d71<object['metadata']['length'];++_0x2a1d71){if('object'!=typeof object['metadata'][_0x2a1d71])throw TypeError('.CollaborativeEditingUpdateMessage.metadata:\x20object\x20expected');_0x211656['metadata'][_0x2a1d71]=$root['OperationMetadataDescriptor']['fromObject'](object['metadata'][_0x2a1d71]);}}return null!=object['lastOperationId']&&(_0x211656['lastOperationId']=String(object['lastOperationId'])),_0x211656;},CollaborativeEditingUpdateMessage['toObject']=function(_0x3fc09f,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['buffers']=[],object['types']=[],object['metadata']=[]),options['defaults']&&(object['id']='',object['baseVersion']=0x0,object['lastOperationId']=''),null!=_0x3fc09f['id']&&_0x3fc09f['hasOwnProperty']('id')&&(object['id']=_0x3fc09f['id']),null!=_0x3fc09f['baseVersion']&&_0x3fc09f['hasOwnProperty']('baseVersion')&&(object['baseVersion']=_0x3fc09f['baseVersion']),_0x3fc09f['buffers']&&_0x3fc09f['buffers']['length']){object['buffers']=[];for(let _0x25a37b=0x0;_0x25a37b<_0x3fc09f['buffers']['length'];++_0x25a37b)object['buffers'][_0x25a37b]=options['bytes']===String?$util['base64']['encode'](_0x3fc09f['buffers'][_0x25a37b],0x0,_0x3fc09f['buffers'][_0x25a37b]['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x3fc09f['buffers'][_0x25a37b]):_0x3fc09f['buffers'][_0x25a37b];}if(_0x3fc09f['types']&&_0x3fc09f['types']['length']){object['types']=[];for(let _0x4436be=0x0;_0x4436be<_0x3fc09f['types']['length'];++_0x4436be)object['types'][_0x4436be]=_0x3fc09f['types'][_0x4436be];}if(_0x3fc09f['metadata']&&_0x3fc09f['metadata']['length']){object['metadata']=[];for(let _0x1737b6=0x0;_0x1737b6<_0x3fc09f['metadata']['length'];++_0x1737b6)object['metadata'][_0x1737b6]=$root['OperationMetadataDescriptor']['toObject'](_0x3fc09f['metadata'][_0x1737b6],options);}return null!=_0x3fc09f['lastOperationId']&&_0x3fc09f['hasOwnProperty']('lastOperationId')&&(object['lastOperationId']=_0x3fc09f['lastOperationId']),object;},CollaborativeEditingUpdateMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingUpdateMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingUpdateMessage';},CollaborativeEditingUpdateMessage;})()),$root['GetDocumentDetailsMessage']=((()=>{function GetDocumentDetailsMessage(properties){if(properties){for(let _0x48c166=Object['keys'](properties),_0x3f9428=0x0;_0x3f9428<_0x48c166['length'];++_0x3f9428)null!=properties[_0x48c166[_0x3f9428]]&&(this[_0x48c166[_0x3f9428]]=properties[_0x48c166[_0x3f9428]]);}}return GetDocumentDetailsMessage['prototype']['documentId']='',GetDocumentDetailsMessage['prototype']['environmentId']='',GetDocumentDetailsMessage['create']=function(properties){return new GetDocumentDetailsMessage(properties);},GetDocumentDetailsMessage['encode']=function(_0x184ef5,writer){return writer||(writer=$Writer['create']()),null!=_0x184ef5['documentId']&&Object['hasOwnProperty']['call'](_0x184ef5,'documentId')&&writer['uint32'](0xa)['string'](_0x184ef5['documentId']),null!=_0x184ef5['environmentId']&&Object['hasOwnProperty']['call'](_0x184ef5,'environmentId')&&writer['uint32'](0x12)['string'](_0x184ef5['environmentId']),writer;},GetDocumentDetailsMessage['encodeDelimited']=function(_0x33b1d9,writer){return this['encode'](_0x33b1d9,writer)['ldelim']();},GetDocumentDetailsMessage['decode']=function(_0xc59928,length){_0xc59928 instanceof $Reader||(_0xc59928=$Reader['create'](_0xc59928));let _0x1d3785=void 0x0===length?_0xc59928['len']:_0xc59928['pos']+length,_0x3d46f0=new $root['GetDocumentDetailsMessage']();for(;_0xc59928['pos']<_0x1d3785;){let tag=_0xc59928['uint32']();switch(tag>>>0x3){case 0x1:_0x3d46f0['documentId']=_0xc59928['string']();break;case 0x2:_0x3d46f0['environmentId']=_0xc59928['string']();break;default:_0xc59928['skipType'](0x7&tag);}}return _0x3d46f0;},GetDocumentDetailsMessage['decodeDelimited']=function(_0x428c4f){return _0x428c4f instanceof $Reader||(_0x428c4f=new $Reader(_0x428c4f)),this['decode'](_0x428c4f,_0x428c4f['uint32']());},GetDocumentDetailsMessage['verify']=function(_0x5f35b4){return'object'!=typeof _0x5f35b4||null===_0x5f35b4?'object\x20expected':null!=_0x5f35b4['documentId']&&_0x5f35b4['hasOwnProperty']('documentId')&&!$util['isString'](_0x5f35b4['documentId'])?'documentId:\x20string\x20expected':null!=_0x5f35b4['environmentId']&&_0x5f35b4['hasOwnProperty']('environmentId')&&!$util['isString'](_0x5f35b4['environmentId'])?'environmentId:\x20string\x20expected':null;},GetDocumentDetailsMessage['fromObject']=function(object){if(object instanceof $root['GetDocumentDetailsMessage'])return object;let _0x3c36e3=new $root['GetDocumentDetailsMessage']();return null!=object['documentId']&&(_0x3c36e3['documentId']=String(object['documentId'])),null!=object['environmentId']&&(_0x3c36e3['environmentId']=String(object['environmentId'])),_0x3c36e3;},GetDocumentDetailsMessage['toObject']=function(_0x494aa6,options){options||(options={});let object={};return options['defaults']&&(object['documentId']='',object['environmentId']=''),null!=_0x494aa6['documentId']&&_0x494aa6['hasOwnProperty']('documentId')&&(object['documentId']=_0x494aa6['documentId']),null!=_0x494aa6['environmentId']&&_0x494aa6['hasOwnProperty']('environmentId')&&(object['environmentId']=_0x494aa6['environmentId']),object;},GetDocumentDetailsMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetDocumentDetailsMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetDocumentDetailsMessage';},GetDocumentDetailsMessage;})()),$root['CollaborativeEditingConnectResponse']=((()=>{function CollaborativeEditingConnectResponse(properties){if(this['buffers']=[],this['types']=[],this['metadata']=[],properties){for(let _0x47a500=Object['keys'](properties),_0x29d39a=0x0;_0x29d39a<_0x47a500['length'];++_0x29d39a)null!=properties[_0x47a500[_0x29d39a]]&&(this[_0x47a500[_0x29d39a]]=properties[_0x47a500[_0x29d39a]]);}}return CollaborativeEditingConnectResponse['prototype']['channel']='',CollaborativeEditingConnectResponse['prototype']['offset']=0x0,CollaborativeEditingConnectResponse['prototype']['version']=0x0,CollaborativeEditingConnectResponse['prototype']['buffers']=$util['emptyArray'],CollaborativeEditingConnectResponse['prototype']['types']=$util['emptyArray'],CollaborativeEditingConnectResponse['prototype']['metadata']=$util['emptyArray'],CollaborativeEditingConnectResponse['prototype']['initData']='',CollaborativeEditingConnectResponse['prototype']['isInitialized']=!0x1,CollaborativeEditingConnectResponse['prototype']['sessionId']='',CollaborativeEditingConnectResponse['prototype']['lastOperationId']='',CollaborativeEditingConnectResponse['prototype']['sessionCreatedAt']='',CollaborativeEditingConnectResponse['create']=function(properties){return new CollaborativeEditingConnectResponse(properties);},CollaborativeEditingConnectResponse['encode']=function(_0x260663,writer){if(writer||(writer=$Writer['create']()),null!=_0x260663['channel']&&Object['hasOwnProperty']['call'](_0x260663,'channel')&&writer['uint32'](0xa)['string'](_0x260663['channel']),null!=_0x260663['offset']&&Object['hasOwnProperty']['call'](_0x260663,'offset')&&writer['uint32'](0x10)['uint32'](_0x260663['offset']),null!=_0x260663['version']&&Object['hasOwnProperty']['call'](_0x260663,'version')&&writer['uint32'](0x18)['uint32'](_0x260663['version']),null!=_0x260663['buffers']&&_0x260663['buffers']['length']){for(let _0x2dffee=0x0;_0x2dffee<_0x260663['buffers']['length'];++_0x2dffee)writer['uint32'](0x22)['bytes'](_0x260663['buffers'][_0x2dffee]);}if(null!=_0x260663['types']&&_0x260663['types']['length']){writer['uint32'](0x2a)['fork']();for(let _0x9f18fb=0x0;_0x9f18fb<_0x260663['types']['length'];++_0x9f18fb)writer['uint32'](_0x260663['types'][_0x9f18fb]);writer['ldelim']();}if(null!=_0x260663['metadata']&&_0x260663['metadata']['length']){for(let _0x3f5422=0x0;_0x3f5422<_0x260663['metadata']['length'];++_0x3f5422)$root['OperationMetadataDescriptor']['encode'](_0x260663['metadata'][_0x3f5422],writer['uint32'](0x3a)['fork']())['ldelim']();}return null!=_0x260663['initData']&&Object['hasOwnProperty']['call'](_0x260663,'initData')&&writer['uint32'](0x42)['string'](_0x260663['initData']),null!=_0x260663['isInitialized']&&Object['hasOwnProperty']['call'](_0x260663,'isInitialized')&&writer['uint32'](0x48)['bool'](_0x260663['isInitialized']),null!=_0x260663['sessionId']&&Object['hasOwnProperty']['call'](_0x260663,'sessionId')&&writer['uint32'](0x52)['string'](_0x260663['sessionId']),null!=_0x260663['lastOperationId']&&Object['hasOwnProperty']['call'](_0x260663,'lastOperationId')&&writer['uint32'](0x5a)['string'](_0x260663['lastOperationId']),null!=_0x260663['sessionCreatedAt']&&Object['hasOwnProperty']['call'](_0x260663,'sessionCreatedAt')&&writer['uint32'](0x62)['string'](_0x260663['sessionCreatedAt']),writer;},CollaborativeEditingConnectResponse['encodeDelimited']=function(_0x5e1b56,writer){return this['encode'](_0x5e1b56,writer)['ldelim']();},CollaborativeEditingConnectResponse['decode']=function(_0x537b34,length){_0x537b34 instanceof $Reader||(_0x537b34=$Reader['create'](_0x537b34));let _0x41e086=void 0x0===length?_0x537b34['len']:_0x537b34['pos']+length,_0x3d7416=new $root['CollaborativeEditingConnectResponse']();for(;_0x537b34['pos']<_0x41e086;){let tag=_0x537b34['uint32']();switch(tag>>>0x3){case 0x1:_0x3d7416['channel']=_0x537b34['string']();break;case 0x2:_0x3d7416['offset']=_0x537b34['uint32']();break;case 0x3:_0x3d7416['version']=_0x537b34['uint32']();break;case 0x4:_0x3d7416['buffers']&&_0x3d7416['buffers']['length']||(_0x3d7416['buffers']=[]),_0x3d7416['buffers']['push'](_0x537b34['bytes']());break;case 0x5:if(_0x3d7416['types']&&_0x3d7416['types']['length']||(_0x3d7416['types']=[]),0x2==(0x7&tag)){let _0x57cd9c=_0x537b34['uint32']()+_0x537b34['pos'];for(;_0x537b34['pos']<_0x57cd9c;)_0x3d7416['types']['push'](_0x537b34['uint32']());}else _0x3d7416['types']['push'](_0x537b34['uint32']());break;case 0x7:_0x3d7416['metadata']&&_0x3d7416['metadata']['length']||(_0x3d7416['metadata']=[]),_0x3d7416['metadata']['push']($root['OperationMetadataDescriptor']['decode'](_0x537b34,_0x537b34['uint32']()));break;case 0x8:_0x3d7416['initData']=_0x537b34['string']();break;case 0x9:_0x3d7416['isInitialized']=_0x537b34['bool']();break;case 0xa:_0x3d7416['sessionId']=_0x537b34['string']();break;case 0xb:_0x3d7416['lastOperationId']=_0x537b34['string']();break;case 0xc:_0x3d7416['sessionCreatedAt']=_0x537b34['string']();break;default:_0x537b34['skipType'](0x7&tag);}}return _0x3d7416;},CollaborativeEditingConnectResponse['decodeDelimited']=function(_0x4a1a62){return _0x4a1a62 instanceof $Reader||(_0x4a1a62=new $Reader(_0x4a1a62)),this['decode'](_0x4a1a62,_0x4a1a62['uint32']());},CollaborativeEditingConnectResponse['verify']=function(_0x449e46){if('object'!=typeof _0x449e46||null===_0x449e46)return'object\x20expected';if(null!=_0x449e46['channel']&&_0x449e46['hasOwnProperty']('channel')&&!$util['isString'](_0x449e46['channel']))return'channel:\x20string\x20expected';if(null!=_0x449e46['offset']&&_0x449e46['hasOwnProperty']('offset')&&!$util['isInteger'](_0x449e46['offset']))return'offset:\x20integer\x20expected';if(null!=_0x449e46['version']&&_0x449e46['hasOwnProperty']('version')&&!$util['isInteger'](_0x449e46['version']))return'version:\x20integer\x20expected';if(null!=_0x449e46['buffers']&&_0x449e46['hasOwnProperty']('buffers')){if(!Array['isArray'](_0x449e46['buffers']))return'buffers:\x20array\x20expected';for(let _0x4f1296=0x0;_0x4f1296<_0x449e46['buffers']['length'];++_0x4f1296)if(!(_0x449e46['buffers'][_0x4f1296]&&'number'==typeof _0x449e46['buffers'][_0x4f1296]['length']||$util['isString'](_0x449e46['buffers'][_0x4f1296])))return'buffers:\x20buffer[]\x20expected';}if(null!=_0x449e46['types']&&_0x449e46['hasOwnProperty']('types')){if(!Array['isArray'](_0x449e46['types']))return'types:\x20array\x20expected';for(let _0x5a8ce7=0x0;_0x5a8ce7<_0x449e46['types']['length'];++_0x5a8ce7)if(!$util['isInteger'](_0x449e46['types'][_0x5a8ce7]))return'types:\x20integer[]\x20expected';}if(null!=_0x449e46['metadata']&&_0x449e46['hasOwnProperty']('metadata')){if(!Array['isArray'](_0x449e46['metadata']))return'metadata:\x20array\x20expected';for(let _0x4641a4=0x0;_0x4641a4<_0x449e46['metadata']['length'];++_0x4641a4){let _0x9fcb63=$root['OperationMetadataDescriptor']['verify'](_0x449e46['metadata'][_0x4641a4]);if(_0x9fcb63)return'metadata.'+_0x9fcb63;}}return null!=_0x449e46['initData']&&_0x449e46['hasOwnProperty']('initData')&&!$util['isString'](_0x449e46['initData'])?'initData:\x20string\x20expected':null!=_0x449e46['isInitialized']&&_0x449e46['hasOwnProperty']('isInitialized')&&'boolean'!=typeof _0x449e46['isInitialized']?'isInitialized:\x20boolean\x20expected':null!=_0x449e46['sessionId']&&_0x449e46['hasOwnProperty']('sessionId')&&!$util['isString'](_0x449e46['sessionId'])?'sessionId:\x20string\x20expected':null!=_0x449e46['lastOperationId']&&_0x449e46['hasOwnProperty']('lastOperationId')&&!$util['isString'](_0x449e46['lastOperationId'])?'lastOperationId:\x20string\x20expected':null!=_0x449e46['sessionCreatedAt']&&_0x449e46['hasOwnProperty']('sessionCreatedAt')&&!$util['isString'](_0x449e46['sessionCreatedAt'])?'sessionCreatedAt:\x20string\x20expected':null;},CollaborativeEditingConnectResponse['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingConnectResponse'])return object;let _0x16ad7f=new $root['CollaborativeEditingConnectResponse']();if(null!=object['channel']&&(_0x16ad7f['channel']=String(object['channel'])),null!=object['offset']&&(_0x16ad7f['offset']=object['offset']>>>0x0),null!=object['version']&&(_0x16ad7f['version']=object['version']>>>0x0),object['buffers']){if(!Array['isArray'](object['buffers']))throw TypeError('.CollaborativeEditingConnectResponse.buffers:\x20array\x20expected');_0x16ad7f['buffers']=[];for(let _0x4e5d8e=0x0;_0x4e5d8e<object['buffers']['length'];++_0x4e5d8e)'string'==typeof object['buffers'][_0x4e5d8e]?$util['base64']['decode'](object['buffers'][_0x4e5d8e],_0x16ad7f['buffers'][_0x4e5d8e]=$util['newBuffer']($util['base64']['length'](object['buffers'][_0x4e5d8e])),0x0):object['buffers'][_0x4e5d8e]['length']>=0x0&&(_0x16ad7f['buffers'][_0x4e5d8e]=object['buffers'][_0x4e5d8e]);}if(object['types']){if(!Array['isArray'](object['types']))throw TypeError('.CollaborativeEditingConnectResponse.types:\x20array\x20expected');_0x16ad7f['types']=[];for(let _0xe21bb8=0x0;_0xe21bb8<object['types']['length'];++_0xe21bb8)_0x16ad7f['types'][_0xe21bb8]=object['types'][_0xe21bb8]>>>0x0;}if(object['metadata']){if(!Array['isArray'](object['metadata']))throw TypeError('.CollaborativeEditingConnectResponse.metadata:\x20array\x20expected');_0x16ad7f['metadata']=[];for(let _0xb09c48=0x0;_0xb09c48<object['metadata']['length'];++_0xb09c48){if('object'!=typeof object['metadata'][_0xb09c48])throw TypeError('.CollaborativeEditingConnectResponse.metadata:\x20object\x20expected');_0x16ad7f['metadata'][_0xb09c48]=$root['OperationMetadataDescriptor']['fromObject'](object['metadata'][_0xb09c48]);}}return null!=object['initData']&&(_0x16ad7f['initData']=String(object['initData'])),null!=object['isInitialized']&&(_0x16ad7f['isInitialized']=Boolean(object['isInitialized'])),null!=object['sessionId']&&(_0x16ad7f['sessionId']=String(object['sessionId'])),null!=object['lastOperationId']&&(_0x16ad7f['lastOperationId']=String(object['lastOperationId'])),null!=object['sessionCreatedAt']&&(_0x16ad7f['sessionCreatedAt']=String(object['sessionCreatedAt'])),_0x16ad7f;},CollaborativeEditingConnectResponse['toObject']=function(_0x36b0cb,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['buffers']=[],object['types']=[],object['metadata']=[]),options['defaults']&&(object['channel']='',object['offset']=0x0,object['version']=0x0,object['initData']='',object['isInitialized']=!0x1,object['sessionId']='',object['lastOperationId']='',object['sessionCreatedAt']=''),null!=_0x36b0cb['channel']&&_0x36b0cb['hasOwnProperty']('channel')&&(object['channel']=_0x36b0cb['channel']),null!=_0x36b0cb['offset']&&_0x36b0cb['hasOwnProperty']('offset')&&(object['offset']=_0x36b0cb['offset']),null!=_0x36b0cb['version']&&_0x36b0cb['hasOwnProperty']('version')&&(object['version']=_0x36b0cb['version']),_0x36b0cb['buffers']&&_0x36b0cb['buffers']['length']){object['buffers']=[];for(let _0x1e77bb=0x0;_0x1e77bb<_0x36b0cb['buffers']['length'];++_0x1e77bb)object['buffers'][_0x1e77bb]=options['bytes']===String?$util['base64']['encode'](_0x36b0cb['buffers'][_0x1e77bb],0x0,_0x36b0cb['buffers'][_0x1e77bb]['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x36b0cb['buffers'][_0x1e77bb]):_0x36b0cb['buffers'][_0x1e77bb];}if(_0x36b0cb['types']&&_0x36b0cb['types']['length']){object['types']=[];for(let _0x469e85=0x0;_0x469e85<_0x36b0cb['types']['length'];++_0x469e85)object['types'][_0x469e85]=_0x36b0cb['types'][_0x469e85];}if(_0x36b0cb['metadata']&&_0x36b0cb['metadata']['length']){object['metadata']=[];for(let _0x158710=0x0;_0x158710<_0x36b0cb['metadata']['length'];++_0x158710)object['metadata'][_0x158710]=$root['OperationMetadataDescriptor']['toObject'](_0x36b0cb['metadata'][_0x158710],options);}return null!=_0x36b0cb['initData']&&_0x36b0cb['hasOwnProperty']('initData')&&(object['initData']=_0x36b0cb['initData']),null!=_0x36b0cb['isInitialized']&&_0x36b0cb['hasOwnProperty']('isInitialized')&&(object['isInitialized']=_0x36b0cb['isInitialized']),null!=_0x36b0cb['sessionId']&&_0x36b0cb['hasOwnProperty']('sessionId')&&(object['sessionId']=_0x36b0cb['sessionId']),null!=_0x36b0cb['lastOperationId']&&_0x36b0cb['hasOwnProperty']('lastOperationId')&&(object['lastOperationId']=_0x36b0cb['lastOperationId']),null!=_0x36b0cb['sessionCreatedAt']&&_0x36b0cb['hasOwnProperty']('sessionCreatedAt')&&(object['sessionCreatedAt']=_0x36b0cb['sessionCreatedAt']),object;},CollaborativeEditingConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingConnectResponse';},CollaborativeEditingConnectResponse;})()),$root['CollaborativeEditingResponse']=((()=>{function CollaborativeEditingResponse(properties){if(this['buffers']=[],this['types']=[],this['metadata']=[],properties){for(let _0x4f7fe4=Object['keys'](properties),_0xbee2a4=0x0;_0xbee2a4<_0x4f7fe4['length'];++_0xbee2a4)null!=properties[_0x4f7fe4[_0xbee2a4]]&&(this[_0x4f7fe4[_0xbee2a4]]=properties[_0x4f7fe4[_0xbee2a4]]);}}return CollaborativeEditingResponse['prototype']['version']=0x0,CollaborativeEditingResponse['prototype']['buffers']=$util['emptyArray'],CollaborativeEditingResponse['prototype']['types']=$util['emptyArray'],CollaborativeEditingResponse['prototype']['metadata']=$util['emptyArray'],CollaborativeEditingResponse['prototype']['lastOperationId']='',CollaborativeEditingResponse['prototype']['lastOperationAcceptedAt']='',CollaborativeEditingResponse['create']=function(properties){return new CollaborativeEditingResponse(properties);},CollaborativeEditingResponse['encode']=function(_0x12e3f2,writer){if(writer||(writer=$Writer['create']()),null!=_0x12e3f2['version']&&Object['hasOwnProperty']['call'](_0x12e3f2,'version')&&writer['uint32'](0x8)['uint32'](_0x12e3f2['version']),null!=_0x12e3f2['buffers']&&_0x12e3f2['buffers']['length']){for(let _0x4f2c50=0x0;_0x4f2c50<_0x12e3f2['buffers']['length'];++_0x4f2c50)writer['uint32'](0x12)['bytes'](_0x12e3f2['buffers'][_0x4f2c50]);}if(null!=_0x12e3f2['types']&&_0x12e3f2['types']['length']){writer['uint32'](0x1a)['fork']();for(let _0x4e13d0=0x0;_0x4e13d0<_0x12e3f2['types']['length'];++_0x4e13d0)writer['uint32'](_0x12e3f2['types'][_0x4e13d0]);writer['ldelim']();}if(null!=_0x12e3f2['metadata']&&_0x12e3f2['metadata']['length']){for(let _0x35573b=0x0;_0x35573b<_0x12e3f2['metadata']['length'];++_0x35573b)$root['OperationMetadataDescriptor']['encode'](_0x12e3f2['metadata'][_0x35573b],writer['uint32'](0x2a)['fork']())['ldelim']();}return null!=_0x12e3f2['lastOperationId']&&Object['hasOwnProperty']['call'](_0x12e3f2,'lastOperationId')&&writer['uint32'](0x32)['string'](_0x12e3f2['lastOperationId']),null!=_0x12e3f2['lastOperationAcceptedAt']&&Object['hasOwnProperty']['call'](_0x12e3f2,'lastOperationAcceptedAt')&&writer['uint32'](0x3a)['string'](_0x12e3f2['lastOperationAcceptedAt']),writer;},CollaborativeEditingResponse['encodeDelimited']=function(_0x2f11fd,writer){return this['encode'](_0x2f11fd,writer)['ldelim']();},CollaborativeEditingResponse['decode']=function(_0x23e00f,length){_0x23e00f instanceof $Reader||(_0x23e00f=$Reader['create'](_0x23e00f));let _0x4c55d9=void 0x0===length?_0x23e00f['len']:_0x23e00f['pos']+length,_0x377923=new $root['CollaborativeEditingResponse']();for(;_0x23e00f['pos']<_0x4c55d9;){let tag=_0x23e00f['uint32']();switch(tag>>>0x3){case 0x1:_0x377923['version']=_0x23e00f['uint32']();break;case 0x2:_0x377923['buffers']&&_0x377923['buffers']['length']||(_0x377923['buffers']=[]),_0x377923['buffers']['push'](_0x23e00f['bytes']());break;case 0x3:if(_0x377923['types']&&_0x377923['types']['length']||(_0x377923['types']=[]),0x2==(0x7&tag)){let _0x34b673=_0x23e00f['uint32']()+_0x23e00f['pos'];for(;_0x23e00f['pos']<_0x34b673;)_0x377923['types']['push'](_0x23e00f['uint32']());}else _0x377923['types']['push'](_0x23e00f['uint32']());break;case 0x5:_0x377923['metadata']&&_0x377923['metadata']['length']||(_0x377923['metadata']=[]),_0x377923['metadata']['push']($root['OperationMetadataDescriptor']['decode'](_0x23e00f,_0x23e00f['uint32']()));break;case 0x6:_0x377923['lastOperationId']=_0x23e00f['string']();break;case 0x7:_0x377923['lastOperationAcceptedAt']=_0x23e00f['string']();break;default:_0x23e00f['skipType'](0x7&tag);}}return _0x377923;},CollaborativeEditingResponse['decodeDelimited']=function(_0x1642de){return _0x1642de instanceof $Reader||(_0x1642de=new $Reader(_0x1642de)),this['decode'](_0x1642de,_0x1642de['uint32']());},CollaborativeEditingResponse['verify']=function(_0x393aa2){if('object'!=typeof _0x393aa2||null===_0x393aa2)return'object\x20expected';if(null!=_0x393aa2['version']&&_0x393aa2['hasOwnProperty']('version')&&!$util['isInteger'](_0x393aa2['version']))return'version:\x20integer\x20expected';if(null!=_0x393aa2['buffers']&&_0x393aa2['hasOwnProperty']('buffers')){if(!Array['isArray'](_0x393aa2['buffers']))return'buffers:\x20array\x20expected';for(let _0x419560=0x0;_0x419560<_0x393aa2['buffers']['length'];++_0x419560)if(!(_0x393aa2['buffers'][_0x419560]&&'number'==typeof _0x393aa2['buffers'][_0x419560]['length']||$util['isString'](_0x393aa2['buffers'][_0x419560])))return'buffers:\x20buffer[]\x20expected';}if(null!=_0x393aa2['types']&&_0x393aa2['hasOwnProperty']('types')){if(!Array['isArray'](_0x393aa2['types']))return'types:\x20array\x20expected';for(let _0x4a0447=0x0;_0x4a0447<_0x393aa2['types']['length'];++_0x4a0447)if(!$util['isInteger'](_0x393aa2['types'][_0x4a0447]))return'types:\x20integer[]\x20expected';}if(null!=_0x393aa2['metadata']&&_0x393aa2['hasOwnProperty']('metadata')){if(!Array['isArray'](_0x393aa2['metadata']))return'metadata:\x20array\x20expected';for(let _0x482273=0x0;_0x482273<_0x393aa2['metadata']['length'];++_0x482273){let _0xbb7dee=$root['OperationMetadataDescriptor']['verify'](_0x393aa2['metadata'][_0x482273]);if(_0xbb7dee)return'metadata.'+_0xbb7dee;}}return null!=_0x393aa2['lastOperationId']&&_0x393aa2['hasOwnProperty']('lastOperationId')&&!$util['isString'](_0x393aa2['lastOperationId'])?'lastOperationId:\x20string\x20expected':null!=_0x393aa2['lastOperationAcceptedAt']&&_0x393aa2['hasOwnProperty']('lastOperationAcceptedAt')&&!$util['isString'](_0x393aa2['lastOperationAcceptedAt'])?'lastOperationAcceptedAt:\x20string\x20expected':null;},CollaborativeEditingResponse['fromObject']=function(object){if(object instanceof $root['CollaborativeEditingResponse'])return object;let _0x1241e2=new $root['CollaborativeEditingResponse']();if(null!=object['version']&&(_0x1241e2['version']=object['version']>>>0x0),object['buffers']){if(!Array['isArray'](object['buffers']))throw TypeError('.CollaborativeEditingResponse.buffers:\x20array\x20expected');_0x1241e2['buffers']=[];for(let _0x527384=0x0;_0x527384<object['buffers']['length'];++_0x527384)'string'==typeof object['buffers'][_0x527384]?$util['base64']['decode'](object['buffers'][_0x527384],_0x1241e2['buffers'][_0x527384]=$util['newBuffer']($util['base64']['length'](object['buffers'][_0x527384])),0x0):object['buffers'][_0x527384]['length']>=0x0&&(_0x1241e2['buffers'][_0x527384]=object['buffers'][_0x527384]);}if(object['types']){if(!Array['isArray'](object['types']))throw TypeError('.CollaborativeEditingResponse.types:\x20array\x20expected');_0x1241e2['types']=[];for(let _0x473237=0x0;_0x473237<object['types']['length'];++_0x473237)_0x1241e2['types'][_0x473237]=object['types'][_0x473237]>>>0x0;}if(object['metadata']){if(!Array['isArray'](object['metadata']))throw TypeError('.CollaborativeEditingResponse.metadata:\x20array\x20expected');_0x1241e2['metadata']=[];for(let _0x3987d7=0x0;_0x3987d7<object['metadata']['length'];++_0x3987d7){if('object'!=typeof object['metadata'][_0x3987d7])throw TypeError('.CollaborativeEditingResponse.metadata:\x20object\x20expected');_0x1241e2['metadata'][_0x3987d7]=$root['OperationMetadataDescriptor']['fromObject'](object['metadata'][_0x3987d7]);}}return null!=object['lastOperationId']&&(_0x1241e2['lastOperationId']=String(object['lastOperationId'])),null!=object['lastOperationAcceptedAt']&&(_0x1241e2['lastOperationAcceptedAt']=String(object['lastOperationAcceptedAt'])),_0x1241e2;},CollaborativeEditingResponse['toObject']=function(_0x1de950,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['buffers']=[],object['types']=[],object['metadata']=[]),options['defaults']&&(object['version']=0x0,object['lastOperationId']='',object['lastOperationAcceptedAt']=''),null!=_0x1de950['version']&&_0x1de950['hasOwnProperty']('version')&&(object['version']=_0x1de950['version']),_0x1de950['buffers']&&_0x1de950['buffers']['length']){object['buffers']=[];for(let _0x29e4f0=0x0;_0x29e4f0<_0x1de950['buffers']['length'];++_0x29e4f0)object['buffers'][_0x29e4f0]=options['bytes']===String?$util['base64']['encode'](_0x1de950['buffers'][_0x29e4f0],0x0,_0x1de950['buffers'][_0x29e4f0]['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x1de950['buffers'][_0x29e4f0]):_0x1de950['buffers'][_0x29e4f0];}if(_0x1de950['types']&&_0x1de950['types']['length']){object['types']=[];for(let _0x4624be=0x0;_0x4624be<_0x1de950['types']['length'];++_0x4624be)object['types'][_0x4624be]=_0x1de950['types'][_0x4624be];}if(_0x1de950['metadata']&&_0x1de950['metadata']['length']){object['metadata']=[];for(let _0x402744=0x0;_0x402744<_0x1de950['metadata']['length'];++_0x402744)object['metadata'][_0x402744]=$root['OperationMetadataDescriptor']['toObject'](_0x1de950['metadata'][_0x402744],options);}return null!=_0x1de950['lastOperationId']&&_0x1de950['hasOwnProperty']('lastOperationId')&&(object['lastOperationId']=_0x1de950['lastOperationId']),null!=_0x1de950['lastOperationAcceptedAt']&&_0x1de950['hasOwnProperty']('lastOperationAcceptedAt')&&(object['lastOperationAcceptedAt']=_0x1de950['lastOperationAcceptedAt']),object;},CollaborativeEditingResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CollaborativeEditingResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CollaborativeEditingResponse';},CollaborativeEditingResponse;})()),$root['GetDocumentDetailsResponse']=((()=>{function GetDocumentDetailsResponse(properties){if(properties){for(let _0x198fa8=Object['keys'](properties),_0x58c203=0x0;_0x58c203<_0x198fa8['length'];++_0x58c203)null!=properties[_0x198fa8[_0x58c203]]&&(this[_0x198fa8[_0x58c203]]=properties[_0x198fa8[_0x58c203]]);}}return GetDocumentDetailsResponse['prototype']['lastDocumentSessionId']='',GetDocumentDetailsResponse['prototype']['lastDocumentSessionOperationId']='',GetDocumentDetailsResponse['prototype']['currentDocumentSessionId']='',GetDocumentDetailsResponse['prototype']['currentDocumentSessionVersion']=0x0,GetDocumentDetailsResponse['prototype']['currentDocumentSessionOperationId']='',GetDocumentDetailsResponse['create']=function(properties){return new GetDocumentDetailsResponse(properties);},GetDocumentDetailsResponse['encode']=function(_0x9b705a,writer){return writer||(writer=$Writer['create']()),null!=_0x9b705a['lastDocumentSessionId']&&Object['hasOwnProperty']['call'](_0x9b705a,'lastDocumentSessionId')&&writer['uint32'](0xa)['string'](_0x9b705a['lastDocumentSessionId']),null!=_0x9b705a['lastDocumentSessionOperationId']&&Object['hasOwnProperty']['call'](_0x9b705a,'lastDocumentSessionOperationId')&&writer['uint32'](0x12)['string'](_0x9b705a['lastDocumentSessionOperationId']),null!=_0x9b705a['currentDocumentSessionId']&&Object['hasOwnProperty']['call'](_0x9b705a,'currentDocumentSessionId')&&writer['uint32'](0x1a)['string'](_0x9b705a['currentDocumentSessionId']),null!=_0x9b705a['currentDocumentSessionVersion']&&Object['hasOwnProperty']['call'](_0x9b705a,'currentDocumentSessionVersion')&&writer['uint32'](0x20)['uint32'](_0x9b705a['currentDocumentSessionVersion']),null!=_0x9b705a['currentDocumentSessionOperationId']&&Object['hasOwnProperty']['call'](_0x9b705a,'currentDocumentSessionOperationId')&&writer['uint32'](0x2a)['string'](_0x9b705a['currentDocumentSessionOperationId']),writer;},GetDocumentDetailsResponse['encodeDelimited']=function(_0x3d185c,writer){return this['encode'](_0x3d185c,writer)['ldelim']();},GetDocumentDetailsResponse['decode']=function(_0x220b35,length){_0x220b35 instanceof $Reader||(_0x220b35=$Reader['create'](_0x220b35));let _0x43e225=void 0x0===length?_0x220b35['len']:_0x220b35['pos']+length,_0x4730c8=new $root['GetDocumentDetailsResponse']();for(;_0x220b35['pos']<_0x43e225;){let tag=_0x220b35['uint32']();switch(tag>>>0x3){case 0x1:_0x4730c8['lastDocumentSessionId']=_0x220b35['string']();break;case 0x2:_0x4730c8['lastDocumentSessionOperationId']=_0x220b35['string']();break;case 0x3:_0x4730c8['currentDocumentSessionId']=_0x220b35['string']();break;case 0x4:_0x4730c8['currentDocumentSessionVersion']=_0x220b35['uint32']();break;case 0x5:_0x4730c8['currentDocumentSessionOperationId']=_0x220b35['string']();break;default:_0x220b35['skipType'](0x7&tag);}}return _0x4730c8;},GetDocumentDetailsResponse['decodeDelimited']=function(_0x4254c4){return _0x4254c4 instanceof $Reader||(_0x4254c4=new $Reader(_0x4254c4)),this['decode'](_0x4254c4,_0x4254c4['uint32']());},GetDocumentDetailsResponse['verify']=function(_0x9ba9de){return'object'!=typeof _0x9ba9de||null===_0x9ba9de?'object\x20expected':null!=_0x9ba9de['lastDocumentSessionId']&&_0x9ba9de['hasOwnProperty']('lastDocumentSessionId')&&!$util['isString'](_0x9ba9de['lastDocumentSessionId'])?'lastDocumentSessionId:\x20string\x20expected':null!=_0x9ba9de['lastDocumentSessionOperationId']&&_0x9ba9de['hasOwnProperty']('lastDocumentSessionOperationId')&&!$util['isString'](_0x9ba9de['lastDocumentSessionOperationId'])?'lastDocumentSessionOperationId:\x20string\x20expected':null!=_0x9ba9de['currentDocumentSessionId']&&_0x9ba9de['hasOwnProperty']('currentDocumentSessionId')&&!$util['isString'](_0x9ba9de['currentDocumentSessionId'])?'currentDocumentSessionId:\x20string\x20expected':null!=_0x9ba9de['currentDocumentSessionVersion']&&_0x9ba9de['hasOwnProperty']('currentDocumentSessionVersion')&&!$util['isInteger'](_0x9ba9de['currentDocumentSessionVersion'])?'currentDocumentSessionVersion:\x20integer\x20expected':null!=_0x9ba9de['currentDocumentSessionOperationId']&&_0x9ba9de['hasOwnProperty']('currentDocumentSessionOperationId')&&!$util['isString'](_0x9ba9de['currentDocumentSessionOperationId'])?'currentDocumentSessionOperationId:\x20string\x20expected':null;},GetDocumentDetailsResponse['fromObject']=function(object){if(object instanceof $root['GetDocumentDetailsResponse'])return object;let _0x1ef43b=new $root['GetDocumentDetailsResponse']();return null!=object['lastDocumentSessionId']&&(_0x1ef43b['lastDocumentSessionId']=String(object['lastDocumentSessionId'])),null!=object['lastDocumentSessionOperationId']&&(_0x1ef43b['lastDocumentSessionOperationId']=String(object['lastDocumentSessionOperationId'])),null!=object['currentDocumentSessionId']&&(_0x1ef43b['currentDocumentSessionId']=String(object['currentDocumentSessionId'])),null!=object['currentDocumentSessionVersion']&&(_0x1ef43b['currentDocumentSessionVersion']=object['currentDocumentSessionVersion']>>>0x0),null!=object['currentDocumentSessionOperationId']&&(_0x1ef43b['currentDocumentSessionOperationId']=String(object['currentDocumentSessionOperationId'])),_0x1ef43b;},GetDocumentDetailsResponse['toObject']=function(_0x229f40,options){options||(options={});let object={};return options['defaults']&&(object['lastDocumentSessionId']='',object['lastDocumentSessionOperationId']='',object['currentDocumentSessionId']='',object['currentDocumentSessionVersion']=0x0,object['currentDocumentSessionOperationId']=''),null!=_0x229f40['lastDocumentSessionId']&&_0x229f40['hasOwnProperty']('lastDocumentSessionId')&&(object['lastDocumentSessionId']=_0x229f40['lastDocumentSessionId']),null!=_0x229f40['lastDocumentSessionOperationId']&&_0x229f40['hasOwnProperty']('lastDocumentSessionOperationId')&&(object['lastDocumentSessionOperationId']=_0x229f40['lastDocumentSessionOperationId']),null!=_0x229f40['currentDocumentSessionId']&&_0x229f40['hasOwnProperty']('currentDocumentSessionId')&&(object['currentDocumentSessionId']=_0x229f40['currentDocumentSessionId']),null!=_0x229f40['currentDocumentSessionVersion']&&_0x229f40['hasOwnProperty']('currentDocumentSessionVersion')&&(object['currentDocumentSessionVersion']=_0x229f40['currentDocumentSessionVersion']),null!=_0x229f40['currentDocumentSessionOperationId']&&_0x229f40['hasOwnProperty']('currentDocumentSessionOperationId')&&(object['currentDocumentSessionOperationId']=_0x229f40['currentDocumentSessionOperationId']),object;},GetDocumentDetailsResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetDocumentDetailsResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetDocumentDetailsResponse';},GetDocumentDetailsResponse;})()),$root['CommentDescriptor']=((()=>{function CommentDescriptor(properties){if(properties){for(let _0xc1c217=Object['keys'](properties),_0x4dc053=0x0;_0x4dc053<_0xc1c217['length'];++_0x4dc053)null!=properties[_0xc1c217[_0x4dc053]]&&(this[_0xc1c217[_0x4dc053]]=properties[_0xc1c217[_0x4dc053]]);}}return CommentDescriptor['prototype']['commentId']='',CommentDescriptor['prototype']['commentThreadId']='',CommentDescriptor['prototype']['userId']='',CommentDescriptor['prototype']['content']='',CommentDescriptor['prototype']['documentId']='',CommentDescriptor['prototype']['createdAt']='',CommentDescriptor['prototype']['attributes']='',CommentDescriptor['create']=function(properties){return new CommentDescriptor(properties);},CommentDescriptor['encode']=function(_0x594abd,writer){return writer||(writer=$Writer['create']()),null!=_0x594abd['commentId']&&Object['hasOwnProperty']['call'](_0x594abd,'commentId')&&writer['uint32'](0xa)['string'](_0x594abd['commentId']),null!=_0x594abd['commentThreadId']&&Object['hasOwnProperty']['call'](_0x594abd,'commentThreadId')&&writer['uint32'](0x12)['string'](_0x594abd['commentThreadId']),null!=_0x594abd['userId']&&Object['hasOwnProperty']['call'](_0x594abd,'userId')&&writer['uint32'](0x1a)['string'](_0x594abd['userId']),null!=_0x594abd['content']&&Object['hasOwnProperty']['call'](_0x594abd,'content')&&writer['uint32'](0x22)['string'](_0x594abd['content']),null!=_0x594abd['documentId']&&Object['hasOwnProperty']['call'](_0x594abd,'documentId')&&writer['uint32'](0x2a)['string'](_0x594abd['documentId']),null!=_0x594abd['createdAt']&&Object['hasOwnProperty']['call'](_0x594abd,'createdAt')&&writer['uint32'](0x32)['string'](_0x594abd['createdAt']),null!=_0x594abd['attributes']&&Object['hasOwnProperty']['call'](_0x594abd,'attributes')&&writer['uint32'](0x3a)['string'](_0x594abd['attributes']),writer;},CommentDescriptor['encodeDelimited']=function(_0x31decd,writer){return this['encode'](_0x31decd,writer)['ldelim']();},CommentDescriptor['decode']=function(_0x598999,length){_0x598999 instanceof $Reader||(_0x598999=$Reader['create'](_0x598999));let _0x94aea5=void 0x0===length?_0x598999['len']:_0x598999['pos']+length,_0x444cce=new $root['CommentDescriptor']();for(;_0x598999['pos']<_0x94aea5;){let tag=_0x598999['uint32']();switch(tag>>>0x3){case 0x1:_0x444cce['commentId']=_0x598999['string']();break;case 0x2:_0x444cce['commentThreadId']=_0x598999['string']();break;case 0x3:_0x444cce['userId']=_0x598999['string']();break;case 0x4:_0x444cce['content']=_0x598999['string']();break;case 0x5:_0x444cce['documentId']=_0x598999['string']();break;case 0x6:_0x444cce['createdAt']=_0x598999['string']();break;case 0x7:_0x444cce['attributes']=_0x598999['string']();break;default:_0x598999['skipType'](0x7&tag);}}return _0x444cce;},CommentDescriptor['decodeDelimited']=function(_0xdfa6ff){return _0xdfa6ff instanceof $Reader||(_0xdfa6ff=new $Reader(_0xdfa6ff)),this['decode'](_0xdfa6ff,_0xdfa6ff['uint32']());},CommentDescriptor['verify']=function(_0x172ea5){return'object'!=typeof _0x172ea5||null===_0x172ea5?'object\x20expected':null!=_0x172ea5['commentId']&&_0x172ea5['hasOwnProperty']('commentId')&&!$util['isString'](_0x172ea5['commentId'])?'commentId:\x20string\x20expected':null!=_0x172ea5['commentThreadId']&&_0x172ea5['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x172ea5['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x172ea5['userId']&&_0x172ea5['hasOwnProperty']('userId')&&!$util['isString'](_0x172ea5['userId'])?'userId:\x20string\x20expected':null!=_0x172ea5['content']&&_0x172ea5['hasOwnProperty']('content')&&!$util['isString'](_0x172ea5['content'])?'content:\x20string\x20expected':null!=_0x172ea5['documentId']&&_0x172ea5['hasOwnProperty']('documentId')&&!$util['isString'](_0x172ea5['documentId'])?'documentId:\x20string\x20expected':null!=_0x172ea5['createdAt']&&_0x172ea5['hasOwnProperty']('createdAt')&&!$util['isString'](_0x172ea5['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x172ea5['attributes']&&_0x172ea5['hasOwnProperty']('attributes')&&!$util['isString'](_0x172ea5['attributes'])?'attributes:\x20string\x20expected':null;},CommentDescriptor['fromObject']=function(object){if(object instanceof $root['CommentDescriptor'])return object;let _0x5e70b7=new $root['CommentDescriptor']();return null!=object['commentId']&&(_0x5e70b7['commentId']=String(object['commentId'])),null!=object['commentThreadId']&&(_0x5e70b7['commentThreadId']=String(object['commentThreadId'])),null!=object['userId']&&(_0x5e70b7['userId']=String(object['userId'])),null!=object['content']&&(_0x5e70b7['content']=String(object['content'])),null!=object['documentId']&&(_0x5e70b7['documentId']=String(object['documentId'])),null!=object['createdAt']&&(_0x5e70b7['createdAt']=String(object['createdAt'])),null!=object['attributes']&&(_0x5e70b7['attributes']=String(object['attributes'])),_0x5e70b7;},CommentDescriptor['toObject']=function(_0xc0603a,options){options||(options={});let object={};return options['defaults']&&(object['commentId']='',object['commentThreadId']='',object['userId']='',object['content']='',object['documentId']='',object['createdAt']='',object['attributes']=''),null!=_0xc0603a['commentId']&&_0xc0603a['hasOwnProperty']('commentId')&&(object['commentId']=_0xc0603a['commentId']),null!=_0xc0603a['commentThreadId']&&_0xc0603a['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0xc0603a['commentThreadId']),null!=_0xc0603a['userId']&&_0xc0603a['hasOwnProperty']('userId')&&(object['userId']=_0xc0603a['userId']),null!=_0xc0603a['content']&&_0xc0603a['hasOwnProperty']('content')&&(object['content']=_0xc0603a['content']),null!=_0xc0603a['documentId']&&_0xc0603a['hasOwnProperty']('documentId')&&(object['documentId']=_0xc0603a['documentId']),null!=_0xc0603a['createdAt']&&_0xc0603a['hasOwnProperty']('createdAt')&&(object['createdAt']=_0xc0603a['createdAt']),null!=_0xc0603a['attributes']&&_0xc0603a['hasOwnProperty']('attributes')&&(object['attributes']=_0xc0603a['attributes']),object;},CommentDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentDescriptor';},CommentDescriptor;})()),$root['CommentsThreadDescriptor']=((()=>{function CommentsThreadDescriptor(properties){if(this['comments']=[],properties){for(let _0x2b6d00=Object['keys'](properties),_0x445d95=0x0;_0x445d95<_0x2b6d00['length'];++_0x445d95)null!=properties[_0x2b6d00[_0x445d95]]&&(this[_0x2b6d00[_0x445d95]]=properties[_0x2b6d00[_0x445d95]]);}}return CommentsThreadDescriptor['prototype']['commentThreadId']='',CommentsThreadDescriptor['prototype']['comments']=$util['emptyArray'],CommentsThreadDescriptor['prototype']['resolvedAt']='',CommentsThreadDescriptor['prototype']['resolvedBy']='',CommentsThreadDescriptor['prototype']['context']='',CommentsThreadDescriptor['prototype']['createdAt']='',CommentsThreadDescriptor['prototype']['deletedAt']='',CommentsThreadDescriptor['prototype']['attributes']='',CommentsThreadDescriptor['prototype']['unlinkedAt']='',CommentsThreadDescriptor['create']=function(properties){return new CommentsThreadDescriptor(properties);},CommentsThreadDescriptor['encode']=function(_0x3d7f1c,writer){if(writer||(writer=$Writer['create']()),null!=_0x3d7f1c['commentThreadId']&&Object['hasOwnProperty']['call'](_0x3d7f1c,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x3d7f1c['commentThreadId']),null!=_0x3d7f1c['comments']&&_0x3d7f1c['comments']['length']){for(let _0x1fe529=0x0;_0x1fe529<_0x3d7f1c['comments']['length'];++_0x1fe529)$root['CommentDescriptor']['encode'](_0x3d7f1c['comments'][_0x1fe529],writer['uint32'](0x12)['fork']())['ldelim']();}return null!=_0x3d7f1c['resolvedAt']&&Object['hasOwnProperty']['call'](_0x3d7f1c,'resolvedAt')&&writer['uint32'](0x1a)['string'](_0x3d7f1c['resolvedAt']),null!=_0x3d7f1c['resolvedBy']&&Object['hasOwnProperty']['call'](_0x3d7f1c,'resolvedBy')&&writer['uint32'](0x22)['string'](_0x3d7f1c['resolvedBy']),null!=_0x3d7f1c['context']&&Object['hasOwnProperty']['call'](_0x3d7f1c,'context')&&writer['uint32'](0x2a)['string'](_0x3d7f1c['context']),null!=_0x3d7f1c['createdAt']&&Object['hasOwnProperty']['call'](_0x3d7f1c,'createdAt')&&writer['uint32'](0x32)['string'](_0x3d7f1c['createdAt']),null!=_0x3d7f1c['deletedAt']&&Object['hasOwnProperty']['call'](_0x3d7f1c,'deletedAt')&&writer['uint32'](0x3a)['string'](_0x3d7f1c['deletedAt']),null!=_0x3d7f1c['attributes']&&Object['hasOwnProperty']['call'](_0x3d7f1c,'attributes')&&writer['uint32'](0x42)['string'](_0x3d7f1c['attributes']),null!=_0x3d7f1c['unlinkedAt']&&Object['hasOwnProperty']['call'](_0x3d7f1c,'unlinkedAt')&&writer['uint32'](0x4a)['string'](_0x3d7f1c['unlinkedAt']),writer;},CommentsThreadDescriptor['encodeDelimited']=function(_0x1af16d,writer){return this['encode'](_0x1af16d,writer)['ldelim']();},CommentsThreadDescriptor['decode']=function(_0x5e1068,length){_0x5e1068 instanceof $Reader||(_0x5e1068=$Reader['create'](_0x5e1068));let _0x2c2584=void 0x0===length?_0x5e1068['len']:_0x5e1068['pos']+length,_0x4fc0be=new $root['CommentsThreadDescriptor']();for(;_0x5e1068['pos']<_0x2c2584;){let tag=_0x5e1068['uint32']();switch(tag>>>0x3){case 0x1:_0x4fc0be['commentThreadId']=_0x5e1068['string']();break;case 0x2:_0x4fc0be['comments']&&_0x4fc0be['comments']['length']||(_0x4fc0be['comments']=[]),_0x4fc0be['comments']['push']($root['CommentDescriptor']['decode'](_0x5e1068,_0x5e1068['uint32']()));break;case 0x3:_0x4fc0be['resolvedAt']=_0x5e1068['string']();break;case 0x4:_0x4fc0be['resolvedBy']=_0x5e1068['string']();break;case 0x5:_0x4fc0be['context']=_0x5e1068['string']();break;case 0x6:_0x4fc0be['createdAt']=_0x5e1068['string']();break;case 0x7:_0x4fc0be['deletedAt']=_0x5e1068['string']();break;case 0x8:_0x4fc0be['attributes']=_0x5e1068['string']();break;case 0x9:_0x4fc0be['unlinkedAt']=_0x5e1068['string']();break;default:_0x5e1068['skipType'](0x7&tag);}}return _0x4fc0be;},CommentsThreadDescriptor['decodeDelimited']=function(_0x5b69b7){return _0x5b69b7 instanceof $Reader||(_0x5b69b7=new $Reader(_0x5b69b7)),this['decode'](_0x5b69b7,_0x5b69b7['uint32']());},CommentsThreadDescriptor['verify']=function(_0x3d0281){if('object'!=typeof _0x3d0281||null===_0x3d0281)return'object\x20expected';if(null!=_0x3d0281['commentThreadId']&&_0x3d0281['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x3d0281['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0x3d0281['comments']&&_0x3d0281['hasOwnProperty']('comments')){if(!Array['isArray'](_0x3d0281['comments']))return'comments:\x20array\x20expected';for(let _0x5af1e0=0x0;_0x5af1e0<_0x3d0281['comments']['length'];++_0x5af1e0){let _0x28418f=$root['CommentDescriptor']['verify'](_0x3d0281['comments'][_0x5af1e0]);if(_0x28418f)return'comments.'+_0x28418f;}}return null!=_0x3d0281['resolvedAt']&&_0x3d0281['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0x3d0281['resolvedAt'])?'resolvedAt:\x20string\x20expected':null!=_0x3d0281['resolvedBy']&&_0x3d0281['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0x3d0281['resolvedBy'])?'resolvedBy:\x20string\x20expected':null!=_0x3d0281['context']&&_0x3d0281['hasOwnProperty']('context')&&!$util['isString'](_0x3d0281['context'])?'context:\x20string\x20expected':null!=_0x3d0281['createdAt']&&_0x3d0281['hasOwnProperty']('createdAt')&&!$util['isString'](_0x3d0281['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x3d0281['deletedAt']&&_0x3d0281['hasOwnProperty']('deletedAt')&&!$util['isString'](_0x3d0281['deletedAt'])?'deletedAt:\x20string\x20expected':null!=_0x3d0281['attributes']&&_0x3d0281['hasOwnProperty']('attributes')&&!$util['isString'](_0x3d0281['attributes'])?'attributes:\x20string\x20expected':null!=_0x3d0281['unlinkedAt']&&_0x3d0281['hasOwnProperty']('unlinkedAt')&&!$util['isString'](_0x3d0281['unlinkedAt'])?'unlinkedAt:\x20string\x20expected':null;},CommentsThreadDescriptor['fromObject']=function(object){if(object instanceof $root['CommentsThreadDescriptor'])return object;let _0x4e52a5=new $root['CommentsThreadDescriptor']();if(null!=object['commentThreadId']&&(_0x4e52a5['commentThreadId']=String(object['commentThreadId'])),object['comments']){if(!Array['isArray'](object['comments']))throw TypeError('.CommentsThreadDescriptor.comments:\x20array\x20expected');_0x4e52a5['comments']=[];for(let _0x5d2c25=0x0;_0x5d2c25<object['comments']['length'];++_0x5d2c25){if('object'!=typeof object['comments'][_0x5d2c25])throw TypeError('.CommentsThreadDescriptor.comments:\x20object\x20expected');_0x4e52a5['comments'][_0x5d2c25]=$root['CommentDescriptor']['fromObject'](object['comments'][_0x5d2c25]);}}return null!=object['resolvedAt']&&(_0x4e52a5['resolvedAt']=String(object['resolvedAt'])),null!=object['resolvedBy']&&(_0x4e52a5['resolvedBy']=String(object['resolvedBy'])),null!=object['context']&&(_0x4e52a5['context']=String(object['context'])),null!=object['createdAt']&&(_0x4e52a5['createdAt']=String(object['createdAt'])),null!=object['deletedAt']&&(_0x4e52a5['deletedAt']=String(object['deletedAt'])),null!=object['attributes']&&(_0x4e52a5['attributes']=String(object['attributes'])),null!=object['unlinkedAt']&&(_0x4e52a5['unlinkedAt']=String(object['unlinkedAt'])),_0x4e52a5;},CommentsThreadDescriptor['toObject']=function(_0x513dc7,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['comments']=[]),options['defaults']&&(object['commentThreadId']='',object['resolvedAt']='',object['resolvedBy']='',object['context']='',object['createdAt']='',object['deletedAt']='',object['attributes']='',object['unlinkedAt']=''),null!=_0x513dc7['commentThreadId']&&_0x513dc7['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x513dc7['commentThreadId']),_0x513dc7['comments']&&_0x513dc7['comments']['length']){object['comments']=[];for(let _0x11ba46=0x0;_0x11ba46<_0x513dc7['comments']['length'];++_0x11ba46)object['comments'][_0x11ba46]=$root['CommentDescriptor']['toObject'](_0x513dc7['comments'][_0x11ba46],options);}return null!=_0x513dc7['resolvedAt']&&_0x513dc7['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0x513dc7['resolvedAt']),null!=_0x513dc7['resolvedBy']&&_0x513dc7['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0x513dc7['resolvedBy']),null!=_0x513dc7['context']&&_0x513dc7['hasOwnProperty']('context')&&(object['context']=_0x513dc7['context']),null!=_0x513dc7['createdAt']&&_0x513dc7['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x513dc7['createdAt']),null!=_0x513dc7['deletedAt']&&_0x513dc7['hasOwnProperty']('deletedAt')&&(object['deletedAt']=_0x513dc7['deletedAt']),null!=_0x513dc7['attributes']&&_0x513dc7['hasOwnProperty']('attributes')&&(object['attributes']=_0x513dc7['attributes']),null!=_0x513dc7['unlinkedAt']&&_0x513dc7['hasOwnProperty']('unlinkedAt')&&(object['unlinkedAt']=_0x513dc7['unlinkedAt']),object;},CommentsThreadDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsThreadDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsThreadDescriptor';},CommentsThreadDescriptor;})()),$root['CommentThreadAddedCommentDescriptor']=((()=>{function CommentThreadAddedCommentDescriptor(properties){if(properties){for(let _0x332be5=Object['keys'](properties),_0x2ecb3c=0x0;_0x2ecb3c<_0x332be5['length'];++_0x2ecb3c)null!=properties[_0x332be5[_0x2ecb3c]]&&(this[_0x332be5[_0x2ecb3c]]=properties[_0x332be5[_0x2ecb3c]]);}}return CommentThreadAddedCommentDescriptor['prototype']['commentId']='',CommentThreadAddedCommentDescriptor['prototype']['createdAt']='',CommentThreadAddedCommentDescriptor['create']=function(properties){return new CommentThreadAddedCommentDescriptor(properties);},CommentThreadAddedCommentDescriptor['encode']=function(_0x56627e,writer){return writer||(writer=$Writer['create']()),null!=_0x56627e['commentId']&&Object['hasOwnProperty']['call'](_0x56627e,'commentId')&&writer['uint32'](0xa)['string'](_0x56627e['commentId']),null!=_0x56627e['createdAt']&&Object['hasOwnProperty']['call'](_0x56627e,'createdAt')&&writer['uint32'](0x12)['string'](_0x56627e['createdAt']),writer;},CommentThreadAddedCommentDescriptor['encodeDelimited']=function(_0x25918e,writer){return this['encode'](_0x25918e,writer)['ldelim']();},CommentThreadAddedCommentDescriptor['decode']=function(_0x38a058,length){_0x38a058 instanceof $Reader||(_0x38a058=$Reader['create'](_0x38a058));let _0x37c034=void 0x0===length?_0x38a058['len']:_0x38a058['pos']+length,_0x1d1491=new $root['CommentThreadAddedCommentDescriptor']();for(;_0x38a058['pos']<_0x37c034;){let tag=_0x38a058['uint32']();switch(tag>>>0x3){case 0x1:_0x1d1491['commentId']=_0x38a058['string']();break;case 0x2:_0x1d1491['createdAt']=_0x38a058['string']();break;default:_0x38a058['skipType'](0x7&tag);}}return _0x1d1491;},CommentThreadAddedCommentDescriptor['decodeDelimited']=function(_0x224ba9){return _0x224ba9 instanceof $Reader||(_0x224ba9=new $Reader(_0x224ba9)),this['decode'](_0x224ba9,_0x224ba9['uint32']());},CommentThreadAddedCommentDescriptor['verify']=function(_0x309b1f){return'object'!=typeof _0x309b1f||null===_0x309b1f?'object\x20expected':null!=_0x309b1f['commentId']&&_0x309b1f['hasOwnProperty']('commentId')&&!$util['isString'](_0x309b1f['commentId'])?'commentId:\x20string\x20expected':null!=_0x309b1f['createdAt']&&_0x309b1f['hasOwnProperty']('createdAt')&&!$util['isString'](_0x309b1f['createdAt'])?'createdAt:\x20string\x20expected':null;},CommentThreadAddedCommentDescriptor['fromObject']=function(object){if(object instanceof $root['CommentThreadAddedCommentDescriptor'])return object;let _0x583fb0=new $root['CommentThreadAddedCommentDescriptor']();return null!=object['commentId']&&(_0x583fb0['commentId']=String(object['commentId'])),null!=object['createdAt']&&(_0x583fb0['createdAt']=String(object['createdAt'])),_0x583fb0;},CommentThreadAddedCommentDescriptor['toObject']=function(_0x3461cb,options){options||(options={});let object={};return options['defaults']&&(object['commentId']='',object['createdAt']=''),null!=_0x3461cb['commentId']&&_0x3461cb['hasOwnProperty']('commentId')&&(object['commentId']=_0x3461cb['commentId']),null!=_0x3461cb['createdAt']&&_0x3461cb['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x3461cb['createdAt']),object;},CommentThreadAddedCommentDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentThreadAddedCommentDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentThreadAddedCommentDescriptor';},CommentThreadAddedCommentDescriptor;})()),$root['CommentsV2AddCommentMessage']=((()=>{function CommentsV2AddCommentMessage(properties){if(properties){for(let _0x6f5147=Object['keys'](properties),_0x11907d=0x0;_0x11907d<_0x6f5147['length'];++_0x11907d)null!=properties[_0x6f5147[_0x11907d]]&&(this[_0x6f5147[_0x11907d]]=properties[_0x6f5147[_0x11907d]]);}}return CommentsV2AddCommentMessage['prototype']['commentThreadId']='',CommentsV2AddCommentMessage['prototype']['content']='',CommentsV2AddCommentMessage['prototype']['documentId']='',CommentsV2AddCommentMessage['prototype']['commentId']='',CommentsV2AddCommentMessage['prototype']['createdAt']='',CommentsV2AddCommentMessage['prototype']['userId']='',CommentsV2AddCommentMessage['prototype']['attributes']='',CommentsV2AddCommentMessage['prototype']['commentThread']=null,CommentsV2AddCommentMessage['create']=function(properties){return new CommentsV2AddCommentMessage(properties);},CommentsV2AddCommentMessage['encode']=function(_0x2f055a,writer){return writer||(writer=$Writer['create']()),null!=_0x2f055a['commentThreadId']&&Object['hasOwnProperty']['call'](_0x2f055a,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x2f055a['commentThreadId']),null!=_0x2f055a['content']&&Object['hasOwnProperty']['call'](_0x2f055a,'content')&&writer['uint32'](0x12)['string'](_0x2f055a['content']),null!=_0x2f055a['documentId']&&Object['hasOwnProperty']['call'](_0x2f055a,'documentId')&&writer['uint32'](0x1a)['string'](_0x2f055a['documentId']),null!=_0x2f055a['commentId']&&Object['hasOwnProperty']['call'](_0x2f055a,'commentId')&&writer['uint32'](0x22)['string'](_0x2f055a['commentId']),null!=_0x2f055a['createdAt']&&Object['hasOwnProperty']['call'](_0x2f055a,'createdAt')&&writer['uint32'](0x2a)['string'](_0x2f055a['createdAt']),null!=_0x2f055a['userId']&&Object['hasOwnProperty']['call'](_0x2f055a,'userId')&&writer['uint32'](0x32)['string'](_0x2f055a['userId']),null!=_0x2f055a['attributes']&&Object['hasOwnProperty']['call'](_0x2f055a,'attributes')&&writer['uint32'](0x3a)['string'](_0x2f055a['attributes']),null!=_0x2f055a['commentThread']&&Object['hasOwnProperty']['call'](_0x2f055a,'commentThread')&&$root['CommentsThreadDescriptor']['encode'](_0x2f055a['commentThread'],writer['uint32'](0x42)['fork']())['ldelim'](),writer;},CommentsV2AddCommentMessage['encodeDelimited']=function(_0x2a80f9,writer){return this['encode'](_0x2a80f9,writer)['ldelim']();},CommentsV2AddCommentMessage['decode']=function(_0x40c90a,length){_0x40c90a instanceof $Reader||(_0x40c90a=$Reader['create'](_0x40c90a));let _0x49f9ea=void 0x0===length?_0x40c90a['len']:_0x40c90a['pos']+length,_0x3c1ed2=new $root['CommentsV2AddCommentMessage']();for(;_0x40c90a['pos']<_0x49f9ea;){let tag=_0x40c90a['uint32']();switch(tag>>>0x3){case 0x1:_0x3c1ed2['commentThreadId']=_0x40c90a['string']();break;case 0x2:_0x3c1ed2['content']=_0x40c90a['string']();break;case 0x3:_0x3c1ed2['documentId']=_0x40c90a['string']();break;case 0x4:_0x3c1ed2['commentId']=_0x40c90a['string']();break;case 0x5:_0x3c1ed2['createdAt']=_0x40c90a['string']();break;case 0x6:_0x3c1ed2['userId']=_0x40c90a['string']();break;case 0x7:_0x3c1ed2['attributes']=_0x40c90a['string']();break;case 0x8:_0x3c1ed2['commentThread']=$root['CommentsThreadDescriptor']['decode'](_0x40c90a,_0x40c90a['uint32']());break;default:_0x40c90a['skipType'](0x7&tag);}}return _0x3c1ed2;},CommentsV2AddCommentMessage['decodeDelimited']=function(_0x3fdaca){return _0x3fdaca instanceof $Reader||(_0x3fdaca=new $Reader(_0x3fdaca)),this['decode'](_0x3fdaca,_0x3fdaca['uint32']());},CommentsV2AddCommentMessage['verify']=function(_0x17be2f){if('object'!=typeof _0x17be2f||null===_0x17be2f)return'object\x20expected';if(null!=_0x17be2f['commentThreadId']&&_0x17be2f['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x17be2f['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0x17be2f['content']&&_0x17be2f['hasOwnProperty']('content')&&!$util['isString'](_0x17be2f['content']))return'content:\x20string\x20expected';if(null!=_0x17be2f['documentId']&&_0x17be2f['hasOwnProperty']('documentId')&&!$util['isString'](_0x17be2f['documentId']))return'documentId:\x20string\x20expected';if(null!=_0x17be2f['commentId']&&_0x17be2f['hasOwnProperty']('commentId')&&!$util['isString'](_0x17be2f['commentId']))return'commentId:\x20string\x20expected';if(null!=_0x17be2f['createdAt']&&_0x17be2f['hasOwnProperty']('createdAt')&&!$util['isString'](_0x17be2f['createdAt']))return'createdAt:\x20string\x20expected';if(null!=_0x17be2f['userId']&&_0x17be2f['hasOwnProperty']('userId')&&!$util['isString'](_0x17be2f['userId']))return'userId:\x20string\x20expected';if(null!=_0x17be2f['attributes']&&_0x17be2f['hasOwnProperty']('attributes')&&!$util['isString'](_0x17be2f['attributes']))return'attributes:\x20string\x20expected';if(null!=_0x17be2f['commentThread']&&_0x17be2f['hasOwnProperty']('commentThread')){let _0x44fc57=$root['CommentsThreadDescriptor']['verify'](_0x17be2f['commentThread']);if(_0x44fc57)return'commentThread.'+_0x44fc57;}return null;},CommentsV2AddCommentMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2AddCommentMessage'])return object;let _0x47a068=new $root['CommentsV2AddCommentMessage']();if(null!=object['commentThreadId']&&(_0x47a068['commentThreadId']=String(object['commentThreadId'])),null!=object['content']&&(_0x47a068['content']=String(object['content'])),null!=object['documentId']&&(_0x47a068['documentId']=String(object['documentId'])),null!=object['commentId']&&(_0x47a068['commentId']=String(object['commentId'])),null!=object['createdAt']&&(_0x47a068['createdAt']=String(object['createdAt'])),null!=object['userId']&&(_0x47a068['userId']=String(object['userId'])),null!=object['attributes']&&(_0x47a068['attributes']=String(object['attributes'])),null!=object['commentThread']){if('object'!=typeof object['commentThread'])throw TypeError('.CommentsV2AddCommentMessage.commentThread:\x20object\x20expected');_0x47a068['commentThread']=$root['CommentsThreadDescriptor']['fromObject'](object['commentThread']);}return _0x47a068;},CommentsV2AddCommentMessage['toObject']=function(_0x425b38,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['content']='',object['documentId']='',object['commentId']='',object['createdAt']='',object['userId']='',object['attributes']='',object['commentThread']=null),null!=_0x425b38['commentThreadId']&&_0x425b38['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x425b38['commentThreadId']),null!=_0x425b38['content']&&_0x425b38['hasOwnProperty']('content')&&(object['content']=_0x425b38['content']),null!=_0x425b38['documentId']&&_0x425b38['hasOwnProperty']('documentId')&&(object['documentId']=_0x425b38['documentId']),null!=_0x425b38['commentId']&&_0x425b38['hasOwnProperty']('commentId')&&(object['commentId']=_0x425b38['commentId']),null!=_0x425b38['createdAt']&&_0x425b38['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x425b38['createdAt']),null!=_0x425b38['userId']&&_0x425b38['hasOwnProperty']('userId')&&(object['userId']=_0x425b38['userId']),null!=_0x425b38['attributes']&&_0x425b38['hasOwnProperty']('attributes')&&(object['attributes']=_0x425b38['attributes']),null!=_0x425b38['commentThread']&&_0x425b38['hasOwnProperty']('commentThread')&&(object['commentThread']=$root['CommentsThreadDescriptor']['toObject'](_0x425b38['commentThread'],options)),object;},CommentsV2AddCommentMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2AddCommentMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2AddCommentMessage';},CommentsV2AddCommentMessage;})()),$root['CommentsV2AddCommentThreadMessage']=((()=>{function CommentsV2AddCommentThreadMessage(properties){if(this['comments']=[],properties){for(let _0x2ebcaa=Object['keys'](properties),_0x355c06=0x0;_0x355c06<_0x2ebcaa['length'];++_0x355c06)null!=properties[_0x2ebcaa[_0x355c06]]&&(this[_0x2ebcaa[_0x355c06]]=properties[_0x2ebcaa[_0x355c06]]);}}return CommentsV2AddCommentThreadMessage['prototype']['documentId']='',CommentsV2AddCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2AddCommentThreadMessage['prototype']['context']='',CommentsV2AddCommentThreadMessage['prototype']['createdAt']='',CommentsV2AddCommentThreadMessage['prototype']['resolvedAt']='',CommentsV2AddCommentThreadMessage['prototype']['resolvedBy']='',CommentsV2AddCommentThreadMessage['prototype']['attributes']='',CommentsV2AddCommentThreadMessage['prototype']['deletedAt']='',CommentsV2AddCommentThreadMessage['prototype']['comments']=$util['emptyArray'],CommentsV2AddCommentThreadMessage['create']=function(properties){return new CommentsV2AddCommentThreadMessage(properties);},CommentsV2AddCommentThreadMessage['encode']=function(_0xfc6e28,writer){if(writer||(writer=$Writer['create']()),null!=_0xfc6e28['documentId']&&Object['hasOwnProperty']['call'](_0xfc6e28,'documentId')&&writer['uint32'](0xa)['string'](_0xfc6e28['documentId']),null!=_0xfc6e28['commentThreadId']&&Object['hasOwnProperty']['call'](_0xfc6e28,'commentThreadId')&&writer['uint32'](0x12)['string'](_0xfc6e28['commentThreadId']),null!=_0xfc6e28['context']&&Object['hasOwnProperty']['call'](_0xfc6e28,'context')&&writer['uint32'](0x1a)['string'](_0xfc6e28['context']),null!=_0xfc6e28['createdAt']&&Object['hasOwnProperty']['call'](_0xfc6e28,'createdAt')&&writer['uint32'](0x22)['string'](_0xfc6e28['createdAt']),null!=_0xfc6e28['resolvedAt']&&Object['hasOwnProperty']['call'](_0xfc6e28,'resolvedAt')&&writer['uint32'](0x2a)['string'](_0xfc6e28['resolvedAt']),null!=_0xfc6e28['resolvedBy']&&Object['hasOwnProperty']['call'](_0xfc6e28,'resolvedBy')&&writer['uint32'](0x32)['string'](_0xfc6e28['resolvedBy']),null!=_0xfc6e28['attributes']&&Object['hasOwnProperty']['call'](_0xfc6e28,'attributes')&&writer['uint32'](0x3a)['string'](_0xfc6e28['attributes']),null!=_0xfc6e28['deletedAt']&&Object['hasOwnProperty']['call'](_0xfc6e28,'deletedAt')&&writer['uint32'](0x42)['string'](_0xfc6e28['deletedAt']),null!=_0xfc6e28['comments']&&_0xfc6e28['comments']['length']){for(let _0x460d34=0x0;_0x460d34<_0xfc6e28['comments']['length'];++_0x460d34)$root['CommentDescriptor']['encode'](_0xfc6e28['comments'][_0x460d34],writer['uint32'](0x4a)['fork']())['ldelim']();}return writer;},CommentsV2AddCommentThreadMessage['encodeDelimited']=function(_0x1bcc22,writer){return this['encode'](_0x1bcc22,writer)['ldelim']();},CommentsV2AddCommentThreadMessage['decode']=function(_0x392ff6,length){_0x392ff6 instanceof $Reader||(_0x392ff6=$Reader['create'](_0x392ff6));let _0x5fe9ea=void 0x0===length?_0x392ff6['len']:_0x392ff6['pos']+length,_0x1f5203=new $root['CommentsV2AddCommentThreadMessage']();for(;_0x392ff6['pos']<_0x5fe9ea;){let tag=_0x392ff6['uint32']();switch(tag>>>0x3){case 0x1:_0x1f5203['documentId']=_0x392ff6['string']();break;case 0x2:_0x1f5203['commentThreadId']=_0x392ff6['string']();break;case 0x3:_0x1f5203['context']=_0x392ff6['string']();break;case 0x4:_0x1f5203['createdAt']=_0x392ff6['string']();break;case 0x5:_0x1f5203['resolvedAt']=_0x392ff6['string']();break;case 0x6:_0x1f5203['resolvedBy']=_0x392ff6['string']();break;case 0x7:_0x1f5203['attributes']=_0x392ff6['string']();break;case 0x8:_0x1f5203['deletedAt']=_0x392ff6['string']();break;case 0x9:_0x1f5203['comments']&&_0x1f5203['comments']['length']||(_0x1f5203['comments']=[]),_0x1f5203['comments']['push']($root['CommentDescriptor']['decode'](_0x392ff6,_0x392ff6['uint32']()));break;default:_0x392ff6['skipType'](0x7&tag);}}return _0x1f5203;},CommentsV2AddCommentThreadMessage['decodeDelimited']=function(_0x29ee9c){return _0x29ee9c instanceof $Reader||(_0x29ee9c=new $Reader(_0x29ee9c)),this['decode'](_0x29ee9c,_0x29ee9c['uint32']());},CommentsV2AddCommentThreadMessage['verify']=function(_0xf0f985){if('object'!=typeof _0xf0f985||null===_0xf0f985)return'object\x20expected';if(null!=_0xf0f985['documentId']&&_0xf0f985['hasOwnProperty']('documentId')&&!$util['isString'](_0xf0f985['documentId']))return'documentId:\x20string\x20expected';if(null!=_0xf0f985['commentThreadId']&&_0xf0f985['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0xf0f985['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0xf0f985['context']&&_0xf0f985['hasOwnProperty']('context')&&!$util['isString'](_0xf0f985['context']))return'context:\x20string\x20expected';if(null!=_0xf0f985['createdAt']&&_0xf0f985['hasOwnProperty']('createdAt')&&!$util['isString'](_0xf0f985['createdAt']))return'createdAt:\x20string\x20expected';if(null!=_0xf0f985['resolvedAt']&&_0xf0f985['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0xf0f985['resolvedAt']))return'resolvedAt:\x20string\x20expected';if(null!=_0xf0f985['resolvedBy']&&_0xf0f985['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0xf0f985['resolvedBy']))return'resolvedBy:\x20string\x20expected';if(null!=_0xf0f985['attributes']&&_0xf0f985['hasOwnProperty']('attributes')&&!$util['isString'](_0xf0f985['attributes']))return'attributes:\x20string\x20expected';if(null!=_0xf0f985['deletedAt']&&_0xf0f985['hasOwnProperty']('deletedAt')&&!$util['isString'](_0xf0f985['deletedAt']))return'deletedAt:\x20string\x20expected';if(null!=_0xf0f985['comments']&&_0xf0f985['hasOwnProperty']('comments')){if(!Array['isArray'](_0xf0f985['comments']))return'comments:\x20array\x20expected';for(let _0x593c65=0x0;_0x593c65<_0xf0f985['comments']['length'];++_0x593c65){let _0x179820=$root['CommentDescriptor']['verify'](_0xf0f985['comments'][_0x593c65]);if(_0x179820)return'comments.'+_0x179820;}}return null;},CommentsV2AddCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2AddCommentThreadMessage'])return object;let _0x1e6bc9=new $root['CommentsV2AddCommentThreadMessage']();if(null!=object['documentId']&&(_0x1e6bc9['documentId']=String(object['documentId'])),null!=object['commentThreadId']&&(_0x1e6bc9['commentThreadId']=String(object['commentThreadId'])),null!=object['context']&&(_0x1e6bc9['context']=String(object['context'])),null!=object['createdAt']&&(_0x1e6bc9['createdAt']=String(object['createdAt'])),null!=object['resolvedAt']&&(_0x1e6bc9['resolvedAt']=String(object['resolvedAt'])),null!=object['resolvedBy']&&(_0x1e6bc9['resolvedBy']=String(object['resolvedBy'])),null!=object['attributes']&&(_0x1e6bc9['attributes']=String(object['attributes'])),null!=object['deletedAt']&&(_0x1e6bc9['deletedAt']=String(object['deletedAt'])),object['comments']){if(!Array['isArray'](object['comments']))throw TypeError('.CommentsV2AddCommentThreadMessage.comments:\x20array\x20expected');_0x1e6bc9['comments']=[];for(let _0x32510b=0x0;_0x32510b<object['comments']['length'];++_0x32510b){if('object'!=typeof object['comments'][_0x32510b])throw TypeError('.CommentsV2AddCommentThreadMessage.comments:\x20object\x20expected');_0x1e6bc9['comments'][_0x32510b]=$root['CommentDescriptor']['fromObject'](object['comments'][_0x32510b]);}}return _0x1e6bc9;},CommentsV2AddCommentThreadMessage['toObject']=function(_0x58ba8b,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['comments']=[]),options['defaults']&&(object['documentId']='',object['commentThreadId']='',object['context']='',object['createdAt']='',object['resolvedAt']='',object['resolvedBy']='',object['attributes']='',object['deletedAt']=''),null!=_0x58ba8b['documentId']&&_0x58ba8b['hasOwnProperty']('documentId')&&(object['documentId']=_0x58ba8b['documentId']),null!=_0x58ba8b['commentThreadId']&&_0x58ba8b['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x58ba8b['commentThreadId']),null!=_0x58ba8b['context']&&_0x58ba8b['hasOwnProperty']('context')&&(object['context']=_0x58ba8b['context']),null!=_0x58ba8b['createdAt']&&_0x58ba8b['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x58ba8b['createdAt']),null!=_0x58ba8b['resolvedAt']&&_0x58ba8b['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0x58ba8b['resolvedAt']),null!=_0x58ba8b['resolvedBy']&&_0x58ba8b['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0x58ba8b['resolvedBy']),null!=_0x58ba8b['attributes']&&_0x58ba8b['hasOwnProperty']('attributes')&&(object['attributes']=_0x58ba8b['attributes']),null!=_0x58ba8b['deletedAt']&&_0x58ba8b['hasOwnProperty']('deletedAt')&&(object['deletedAt']=_0x58ba8b['deletedAt']),_0x58ba8b['comments']&&_0x58ba8b['comments']['length']){object['comments']=[];for(let _0x50e14a=0x0;_0x50e14a<_0x58ba8b['comments']['length'];++_0x50e14a)object['comments'][_0x50e14a]=$root['CommentDescriptor']['toObject'](_0x58ba8b['comments'][_0x50e14a],options);}return object;},CommentsV2AddCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2AddCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2AddCommentThreadMessage';},CommentsV2AddCommentThreadMessage;})()),$root['CommentsV2ReopenCommentThreadMessage']=((()=>{function CommentsV2ReopenCommentThreadMessage(properties){if(properties){for(let _0x92eebb=Object['keys'](properties),_0x3395bb=0x0;_0x3395bb<_0x92eebb['length'];++_0x3395bb)null!=properties[_0x92eebb[_0x3395bb]]&&(this[_0x92eebb[_0x3395bb]]=properties[_0x92eebb[_0x3395bb]]);}}return CommentsV2ReopenCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2ReopenCommentThreadMessage['prototype']['documentId']='',CommentsV2ReopenCommentThreadMessage['create']=function(properties){return new CommentsV2ReopenCommentThreadMessage(properties);},CommentsV2ReopenCommentThreadMessage['encode']=function(_0x1ef5a7,writer){return writer||(writer=$Writer['create']()),null!=_0x1ef5a7['commentThreadId']&&Object['hasOwnProperty']['call'](_0x1ef5a7,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x1ef5a7['commentThreadId']),null!=_0x1ef5a7['documentId']&&Object['hasOwnProperty']['call'](_0x1ef5a7,'documentId')&&writer['uint32'](0x12)['string'](_0x1ef5a7['documentId']),writer;},CommentsV2ReopenCommentThreadMessage['encodeDelimited']=function(_0x334a53,writer){return this['encode'](_0x334a53,writer)['ldelim']();},CommentsV2ReopenCommentThreadMessage['decode']=function(_0x405eda,length){_0x405eda instanceof $Reader||(_0x405eda=$Reader['create'](_0x405eda));let _0x24afa4=void 0x0===length?_0x405eda['len']:_0x405eda['pos']+length,_0x2cac6e=new $root['CommentsV2ReopenCommentThreadMessage']();for(;_0x405eda['pos']<_0x24afa4;){let tag=_0x405eda['uint32']();switch(tag>>>0x3){case 0x1:_0x2cac6e['commentThreadId']=_0x405eda['string']();break;case 0x2:_0x2cac6e['documentId']=_0x405eda['string']();break;default:_0x405eda['skipType'](0x7&tag);}}return _0x2cac6e;},CommentsV2ReopenCommentThreadMessage['decodeDelimited']=function(_0x1bdb34){return _0x1bdb34 instanceof $Reader||(_0x1bdb34=new $Reader(_0x1bdb34)),this['decode'](_0x1bdb34,_0x1bdb34['uint32']());},CommentsV2ReopenCommentThreadMessage['verify']=function(_0x5ce9ae){return'object'!=typeof _0x5ce9ae||null===_0x5ce9ae?'object\x20expected':null!=_0x5ce9ae['commentThreadId']&&_0x5ce9ae['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x5ce9ae['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x5ce9ae['documentId']&&_0x5ce9ae['hasOwnProperty']('documentId')&&!$util['isString'](_0x5ce9ae['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2ReopenCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2ReopenCommentThreadMessage'])return object;let _0x4e42c0=new $root['CommentsV2ReopenCommentThreadMessage']();return null!=object['commentThreadId']&&(_0x4e42c0['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x4e42c0['documentId']=String(object['documentId'])),_0x4e42c0;},CommentsV2ReopenCommentThreadMessage['toObject']=function(_0x4beafe,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']=''),null!=_0x4beafe['commentThreadId']&&_0x4beafe['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x4beafe['commentThreadId']),null!=_0x4beafe['documentId']&&_0x4beafe['hasOwnProperty']('documentId')&&(object['documentId']=_0x4beafe['documentId']),object;},CommentsV2ReopenCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ReopenCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ReopenCommentThreadMessage';},CommentsV2ReopenCommentThreadMessage;})()),$root['CommentsV2ResolveCommentThreadMessage']=((()=>{function CommentsV2ResolveCommentThreadMessage(properties){if(properties){for(let _0xf84105=Object['keys'](properties),_0xab3837=0x0;_0xab3837<_0xf84105['length'];++_0xab3837)null!=properties[_0xf84105[_0xab3837]]&&(this[_0xf84105[_0xab3837]]=properties[_0xf84105[_0xab3837]]);}}return CommentsV2ResolveCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2ResolveCommentThreadMessage['prototype']['documentId']='',CommentsV2ResolveCommentThreadMessage['prototype']['resolvedBy']='',CommentsV2ResolveCommentThreadMessage['prototype']['resolvedAt']='',CommentsV2ResolveCommentThreadMessage['create']=function(properties){return new CommentsV2ResolveCommentThreadMessage(properties);},CommentsV2ResolveCommentThreadMessage['encode']=function(_0x25a01a,writer){return writer||(writer=$Writer['create']()),null!=_0x25a01a['commentThreadId']&&Object['hasOwnProperty']['call'](_0x25a01a,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x25a01a['commentThreadId']),null!=_0x25a01a['documentId']&&Object['hasOwnProperty']['call'](_0x25a01a,'documentId')&&writer['uint32'](0x12)['string'](_0x25a01a['documentId']),null!=_0x25a01a['resolvedBy']&&Object['hasOwnProperty']['call'](_0x25a01a,'resolvedBy')&&writer['uint32'](0x1a)['string'](_0x25a01a['resolvedBy']),null!=_0x25a01a['resolvedAt']&&Object['hasOwnProperty']['call'](_0x25a01a,'resolvedAt')&&writer['uint32'](0x22)['string'](_0x25a01a['resolvedAt']),writer;},CommentsV2ResolveCommentThreadMessage['encodeDelimited']=function(_0x116f98,writer){return this['encode'](_0x116f98,writer)['ldelim']();},CommentsV2ResolveCommentThreadMessage['decode']=function(_0x5b0873,length){_0x5b0873 instanceof $Reader||(_0x5b0873=$Reader['create'](_0x5b0873));let _0x283a6d=void 0x0===length?_0x5b0873['len']:_0x5b0873['pos']+length,_0x12de2d=new $root['CommentsV2ResolveCommentThreadMessage']();for(;_0x5b0873['pos']<_0x283a6d;){let tag=_0x5b0873['uint32']();switch(tag>>>0x3){case 0x1:_0x12de2d['commentThreadId']=_0x5b0873['string']();break;case 0x2:_0x12de2d['documentId']=_0x5b0873['string']();break;case 0x3:_0x12de2d['resolvedBy']=_0x5b0873['string']();break;case 0x4:_0x12de2d['resolvedAt']=_0x5b0873['string']();break;default:_0x5b0873['skipType'](0x7&tag);}}return _0x12de2d;},CommentsV2ResolveCommentThreadMessage['decodeDelimited']=function(_0x355e64){return _0x355e64 instanceof $Reader||(_0x355e64=new $Reader(_0x355e64)),this['decode'](_0x355e64,_0x355e64['uint32']());},CommentsV2ResolveCommentThreadMessage['verify']=function(_0x1574b4){return'object'!=typeof _0x1574b4||null===_0x1574b4?'object\x20expected':null!=_0x1574b4['commentThreadId']&&_0x1574b4['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x1574b4['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x1574b4['documentId']&&_0x1574b4['hasOwnProperty']('documentId')&&!$util['isString'](_0x1574b4['documentId'])?'documentId:\x20string\x20expected':null!=_0x1574b4['resolvedBy']&&_0x1574b4['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0x1574b4['resolvedBy'])?'resolvedBy:\x20string\x20expected':null!=_0x1574b4['resolvedAt']&&_0x1574b4['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0x1574b4['resolvedAt'])?'resolvedAt:\x20string\x20expected':null;},CommentsV2ResolveCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2ResolveCommentThreadMessage'])return object;let _0x5ad4d7=new $root['CommentsV2ResolveCommentThreadMessage']();return null!=object['commentThreadId']&&(_0x5ad4d7['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x5ad4d7['documentId']=String(object['documentId'])),null!=object['resolvedBy']&&(_0x5ad4d7['resolvedBy']=String(object['resolvedBy'])),null!=object['resolvedAt']&&(_0x5ad4d7['resolvedAt']=String(object['resolvedAt'])),_0x5ad4d7;},CommentsV2ResolveCommentThreadMessage['toObject']=function(_0x448e82,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']='',object['resolvedBy']='',object['resolvedAt']=''),null!=_0x448e82['commentThreadId']&&_0x448e82['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x448e82['commentThreadId']),null!=_0x448e82['documentId']&&_0x448e82['hasOwnProperty']('documentId')&&(object['documentId']=_0x448e82['documentId']),null!=_0x448e82['resolvedBy']&&_0x448e82['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0x448e82['resolvedBy']),null!=_0x448e82['resolvedAt']&&_0x448e82['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0x448e82['resolvedAt']),object;},CommentsV2ResolveCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ResolveCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ResolveCommentThreadMessage';},CommentsV2ResolveCommentThreadMessage;})()),$root['CommentsV2UpdateCommentThreadMessage']=((()=>{function CommentsV2UpdateCommentThreadMessage(properties){if(properties){for(let _0x246c7b=Object['keys'](properties),_0x1e64ea=0x0;_0x1e64ea<_0x246c7b['length'];++_0x1e64ea)null!=properties[_0x246c7b[_0x1e64ea]]&&(this[_0x246c7b[_0x1e64ea]]=properties[_0x246c7b[_0x1e64ea]]);}}return CommentsV2UpdateCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2UpdateCommentThreadMessage['prototype']['documentId']='',CommentsV2UpdateCommentThreadMessage['prototype']['context']='',CommentsV2UpdateCommentThreadMessage['prototype']['attributes']='',CommentsV2UpdateCommentThreadMessage['prototype']['unlinkedAt']='',CommentsV2UpdateCommentThreadMessage['create']=function(properties){return new CommentsV2UpdateCommentThreadMessage(properties);},CommentsV2UpdateCommentThreadMessage['encode']=function(_0x378bca,writer){return writer||(writer=$Writer['create']()),null!=_0x378bca['commentThreadId']&&Object['hasOwnProperty']['call'](_0x378bca,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x378bca['commentThreadId']),null!=_0x378bca['documentId']&&Object['hasOwnProperty']['call'](_0x378bca,'documentId')&&writer['uint32'](0x12)['string'](_0x378bca['documentId']),null!=_0x378bca['context']&&Object['hasOwnProperty']['call'](_0x378bca,'context')&&writer['uint32'](0x1a)['string'](_0x378bca['context']),null!=_0x378bca['attributes']&&Object['hasOwnProperty']['call'](_0x378bca,'attributes')&&writer['uint32'](0x22)['string'](_0x378bca['attributes']),null!=_0x378bca['unlinkedAt']&&Object['hasOwnProperty']['call'](_0x378bca,'unlinkedAt')&&writer['uint32'](0x2a)['string'](_0x378bca['unlinkedAt']),writer;},CommentsV2UpdateCommentThreadMessage['encodeDelimited']=function(_0x91551d,writer){return this['encode'](_0x91551d,writer)['ldelim']();},CommentsV2UpdateCommentThreadMessage['decode']=function(_0x2ea3fc,length){_0x2ea3fc instanceof $Reader||(_0x2ea3fc=$Reader['create'](_0x2ea3fc));let _0x135667=void 0x0===length?_0x2ea3fc['len']:_0x2ea3fc['pos']+length,_0xf52e82=new $root['CommentsV2UpdateCommentThreadMessage']();for(;_0x2ea3fc['pos']<_0x135667;){let tag=_0x2ea3fc['uint32']();switch(tag>>>0x3){case 0x1:_0xf52e82['commentThreadId']=_0x2ea3fc['string']();break;case 0x2:_0xf52e82['documentId']=_0x2ea3fc['string']();break;case 0x3:_0xf52e82['context']=_0x2ea3fc['string']();break;case 0x4:_0xf52e82['attributes']=_0x2ea3fc['string']();break;case 0x5:_0xf52e82['unlinkedAt']=_0x2ea3fc['string']();break;default:_0x2ea3fc['skipType'](0x7&tag);}}return _0xf52e82;},CommentsV2UpdateCommentThreadMessage['decodeDelimited']=function(_0x15485e){return _0x15485e instanceof $Reader||(_0x15485e=new $Reader(_0x15485e)),this['decode'](_0x15485e,_0x15485e['uint32']());},CommentsV2UpdateCommentThreadMessage['verify']=function(_0x2e2a38){return'object'!=typeof _0x2e2a38||null===_0x2e2a38?'object\x20expected':null!=_0x2e2a38['commentThreadId']&&_0x2e2a38['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x2e2a38['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x2e2a38['documentId']&&_0x2e2a38['hasOwnProperty']('documentId')&&!$util['isString'](_0x2e2a38['documentId'])?'documentId:\x20string\x20expected':null!=_0x2e2a38['context']&&_0x2e2a38['hasOwnProperty']('context')&&!$util['isString'](_0x2e2a38['context'])?'context:\x20string\x20expected':null!=_0x2e2a38['attributes']&&_0x2e2a38['hasOwnProperty']('attributes')&&!$util['isString'](_0x2e2a38['attributes'])?'attributes:\x20string\x20expected':null!=_0x2e2a38['unlinkedAt']&&_0x2e2a38['hasOwnProperty']('unlinkedAt')&&!$util['isString'](_0x2e2a38['unlinkedAt'])?'unlinkedAt:\x20string\x20expected':null;},CommentsV2UpdateCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2UpdateCommentThreadMessage'])return object;let _0x1ac6d4=new $root['CommentsV2UpdateCommentThreadMessage']();return null!=object['commentThreadId']&&(_0x1ac6d4['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x1ac6d4['documentId']=String(object['documentId'])),null!=object['context']&&(_0x1ac6d4['context']=String(object['context'])),null!=object['attributes']&&(_0x1ac6d4['attributes']=String(object['attributes'])),null!=object['unlinkedAt']&&(_0x1ac6d4['unlinkedAt']=String(object['unlinkedAt'])),_0x1ac6d4;},CommentsV2UpdateCommentThreadMessage['toObject']=function(_0x5aa043,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']='',object['context']='',object['attributes']='',object['unlinkedAt']=''),null!=_0x5aa043['commentThreadId']&&_0x5aa043['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x5aa043['commentThreadId']),null!=_0x5aa043['documentId']&&_0x5aa043['hasOwnProperty']('documentId')&&(object['documentId']=_0x5aa043['documentId']),null!=_0x5aa043['context']&&_0x5aa043['hasOwnProperty']('context')&&(object['context']=_0x5aa043['context']),null!=_0x5aa043['attributes']&&_0x5aa043['hasOwnProperty']('attributes')&&(object['attributes']=_0x5aa043['attributes']),null!=_0x5aa043['unlinkedAt']&&_0x5aa043['hasOwnProperty']('unlinkedAt')&&(object['unlinkedAt']=_0x5aa043['unlinkedAt']),object;},CommentsV2UpdateCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2UpdateCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2UpdateCommentThreadMessage';},CommentsV2UpdateCommentThreadMessage;})()),$root['CommentsV2ConnectMessage']=((()=>{function CommentsV2ConnectMessage(properties){if(properties){for(let _0x90907=Object['keys'](properties),_0x21c871=0x0;_0x21c871<_0x90907['length'];++_0x21c871)null!=properties[_0x90907[_0x21c871]]&&(this[_0x90907[_0x21c871]]=properties[_0x90907[_0x21c871]]);}}return CommentsV2ConnectMessage['prototype']['documentId']='',CommentsV2ConnectMessage['create']=function(properties){return new CommentsV2ConnectMessage(properties);},CommentsV2ConnectMessage['encode']=function(_0x4d5a26,writer){return writer||(writer=$Writer['create']()),null!=_0x4d5a26['documentId']&&Object['hasOwnProperty']['call'](_0x4d5a26,'documentId')&&writer['uint32'](0xa)['string'](_0x4d5a26['documentId']),writer;},CommentsV2ConnectMessage['encodeDelimited']=function(_0xf9ba06,writer){return this['encode'](_0xf9ba06,writer)['ldelim']();},CommentsV2ConnectMessage['decode']=function(_0x5e2830,length){_0x5e2830 instanceof $Reader||(_0x5e2830=$Reader['create'](_0x5e2830));let _0x38ac77=void 0x0===length?_0x5e2830['len']:_0x5e2830['pos']+length,_0x30ea4d=new $root['CommentsV2ConnectMessage']();for(;_0x5e2830['pos']<_0x38ac77;){let tag=_0x5e2830['uint32']();if(tag>>>0x3==0x1)_0x30ea4d['documentId']=_0x5e2830['string']();else _0x5e2830['skipType'](0x7&tag);}return _0x30ea4d;},CommentsV2ConnectMessage['decodeDelimited']=function(_0x107c92){return _0x107c92 instanceof $Reader||(_0x107c92=new $Reader(_0x107c92)),this['decode'](_0x107c92,_0x107c92['uint32']());},CommentsV2ConnectMessage['verify']=function(_0x38c20c){return'object'!=typeof _0x38c20c||null===_0x38c20c?'object\x20expected':null!=_0x38c20c['documentId']&&_0x38c20c['hasOwnProperty']('documentId')&&!$util['isString'](_0x38c20c['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2ConnectMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2ConnectMessage'])return object;let _0x177e9c=new $root['CommentsV2ConnectMessage']();return null!=object['documentId']&&(_0x177e9c['documentId']=String(object['documentId'])),_0x177e9c;},CommentsV2ConnectMessage['toObject']=function(_0x8dd6e9,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x8dd6e9['documentId']&&_0x8dd6e9['hasOwnProperty']('documentId')&&(object['documentId']=_0x8dd6e9['documentId']),object;},CommentsV2ConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ConnectMessage';},CommentsV2ConnectMessage;})()),$root['CommentsV2GetCommentThreadMessage']=((()=>{function CommentsV2GetCommentThreadMessage(properties){if(properties){for(let _0x22dbf4=Object['keys'](properties),_0x5bab7a=0x0;_0x5bab7a<_0x22dbf4['length'];++_0x5bab7a)null!=properties[_0x22dbf4[_0x5bab7a]]&&(this[_0x22dbf4[_0x5bab7a]]=properties[_0x22dbf4[_0x5bab7a]]);}}return CommentsV2GetCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2GetCommentThreadMessage['prototype']['documentId']='',CommentsV2GetCommentThreadMessage['create']=function(properties){return new CommentsV2GetCommentThreadMessage(properties);},CommentsV2GetCommentThreadMessage['encode']=function(_0x447e00,writer){return writer||(writer=$Writer['create']()),null!=_0x447e00['commentThreadId']&&Object['hasOwnProperty']['call'](_0x447e00,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x447e00['commentThreadId']),null!=_0x447e00['documentId']&&Object['hasOwnProperty']['call'](_0x447e00,'documentId')&&writer['uint32'](0x12)['string'](_0x447e00['documentId']),writer;},CommentsV2GetCommentThreadMessage['encodeDelimited']=function(_0x436ba6,writer){return this['encode'](_0x436ba6,writer)['ldelim']();},CommentsV2GetCommentThreadMessage['decode']=function(_0x3a2290,length){_0x3a2290 instanceof $Reader||(_0x3a2290=$Reader['create'](_0x3a2290));let _0x6ac80b=void 0x0===length?_0x3a2290['len']:_0x3a2290['pos']+length,_0x29bb70=new $root['CommentsV2GetCommentThreadMessage']();for(;_0x3a2290['pos']<_0x6ac80b;){let tag=_0x3a2290['uint32']();switch(tag>>>0x3){case 0x1:_0x29bb70['commentThreadId']=_0x3a2290['string']();break;case 0x2:_0x29bb70['documentId']=_0x3a2290['string']();break;default:_0x3a2290['skipType'](0x7&tag);}}return _0x29bb70;},CommentsV2GetCommentThreadMessage['decodeDelimited']=function(_0x391b98){return _0x391b98 instanceof $Reader||(_0x391b98=new $Reader(_0x391b98)),this['decode'](_0x391b98,_0x391b98['uint32']());},CommentsV2GetCommentThreadMessage['verify']=function(_0x3f6248){return'object'!=typeof _0x3f6248||null===_0x3f6248?'object\x20expected':null!=_0x3f6248['commentThreadId']&&_0x3f6248['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x3f6248['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x3f6248['documentId']&&_0x3f6248['hasOwnProperty']('documentId')&&!$util['isString'](_0x3f6248['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2GetCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2GetCommentThreadMessage'])return object;let _0x585872=new $root['CommentsV2GetCommentThreadMessage']();return null!=object['commentThreadId']&&(_0x585872['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x585872['documentId']=String(object['documentId'])),_0x585872;},CommentsV2GetCommentThreadMessage['toObject']=function(_0x5908be,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']=''),null!=_0x5908be['commentThreadId']&&_0x5908be['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x5908be['commentThreadId']),null!=_0x5908be['documentId']&&_0x5908be['hasOwnProperty']('documentId')&&(object['documentId']=_0x5908be['documentId']),object;},CommentsV2GetCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2GetCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2GetCommentThreadMessage';},CommentsV2GetCommentThreadMessage;})()),$root['CommentsV2GetDocumentThreadsMessage']=((()=>{function CommentsV2GetDocumentThreadsMessage(properties){if(properties){for(let _0x20ace0=Object['keys'](properties),_0x30d45f=0x0;_0x30d45f<_0x20ace0['length'];++_0x30d45f)null!=properties[_0x20ace0[_0x30d45f]]&&(this[_0x20ace0[_0x30d45f]]=properties[_0x20ace0[_0x30d45f]]);}}return CommentsV2GetDocumentThreadsMessage['prototype']['documentId']='',CommentsV2GetDocumentThreadsMessage['create']=function(properties){return new CommentsV2GetDocumentThreadsMessage(properties);},CommentsV2GetDocumentThreadsMessage['encode']=function(_0x5d6c38,writer){return writer||(writer=$Writer['create']()),null!=_0x5d6c38['documentId']&&Object['hasOwnProperty']['call'](_0x5d6c38,'documentId')&&writer['uint32'](0xa)['string'](_0x5d6c38['documentId']),writer;},CommentsV2GetDocumentThreadsMessage['encodeDelimited']=function(_0x14e810,writer){return this['encode'](_0x14e810,writer)['ldelim']();},CommentsV2GetDocumentThreadsMessage['decode']=function(_0x56acb4,length){_0x56acb4 instanceof $Reader||(_0x56acb4=$Reader['create'](_0x56acb4));let _0x4ba013=void 0x0===length?_0x56acb4['len']:_0x56acb4['pos']+length,_0x3bfe36=new $root['CommentsV2GetDocumentThreadsMessage']();for(;_0x56acb4['pos']<_0x4ba013;){let tag=_0x56acb4['uint32']();if(tag>>>0x3==0x1)_0x3bfe36['documentId']=_0x56acb4['string']();else _0x56acb4['skipType'](0x7&tag);}return _0x3bfe36;},CommentsV2GetDocumentThreadsMessage['decodeDelimited']=function(_0x17de31){return _0x17de31 instanceof $Reader||(_0x17de31=new $Reader(_0x17de31)),this['decode'](_0x17de31,_0x17de31['uint32']());},CommentsV2GetDocumentThreadsMessage['verify']=function(_0x28b8eb){return'object'!=typeof _0x28b8eb||null===_0x28b8eb?'object\x20expected':null!=_0x28b8eb['documentId']&&_0x28b8eb['hasOwnProperty']('documentId')&&!$util['isString'](_0x28b8eb['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2GetDocumentThreadsMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2GetDocumentThreadsMessage'])return object;let _0x3ba858=new $root['CommentsV2GetDocumentThreadsMessage']();return null!=object['documentId']&&(_0x3ba858['documentId']=String(object['documentId'])),_0x3ba858;},CommentsV2GetDocumentThreadsMessage['toObject']=function(_0x7ea2a9,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x7ea2a9['documentId']&&_0x7ea2a9['hasOwnProperty']('documentId')&&(object['documentId']=_0x7ea2a9['documentId']),object;},CommentsV2GetDocumentThreadsMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2GetDocumentThreadsMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2GetDocumentThreadsMessage';},CommentsV2GetDocumentThreadsMessage;})()),$root['CommentsV2RemoveCommentMessage']=((()=>{function CommentsV2RemoveCommentMessage(properties){if(properties){for(let _0x49e24f=Object['keys'](properties),_0x432b24=0x0;_0x432b24<_0x49e24f['length'];++_0x432b24)null!=properties[_0x49e24f[_0x432b24]]&&(this[_0x49e24f[_0x432b24]]=properties[_0x49e24f[_0x432b24]]);}}return CommentsV2RemoveCommentMessage['prototype']['commentThreadId']='',CommentsV2RemoveCommentMessage['prototype']['commentId']='',CommentsV2RemoveCommentMessage['prototype']['documentId']='',CommentsV2RemoveCommentMessage['create']=function(properties){return new CommentsV2RemoveCommentMessage(properties);},CommentsV2RemoveCommentMessage['encode']=function(_0x187da7,writer){return writer||(writer=$Writer['create']()),null!=_0x187da7['commentThreadId']&&Object['hasOwnProperty']['call'](_0x187da7,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x187da7['commentThreadId']),null!=_0x187da7['commentId']&&Object['hasOwnProperty']['call'](_0x187da7,'commentId')&&writer['uint32'](0x12)['string'](_0x187da7['commentId']),null!=_0x187da7['documentId']&&Object['hasOwnProperty']['call'](_0x187da7,'documentId')&&writer['uint32'](0x1a)['string'](_0x187da7['documentId']),writer;},CommentsV2RemoveCommentMessage['encodeDelimited']=function(_0x5cebe1,writer){return this['encode'](_0x5cebe1,writer)['ldelim']();},CommentsV2RemoveCommentMessage['decode']=function(_0x201484,length){_0x201484 instanceof $Reader||(_0x201484=$Reader['create'](_0x201484));let _0x3e0546=void 0x0===length?_0x201484['len']:_0x201484['pos']+length,_0x4c3590=new $root['CommentsV2RemoveCommentMessage']();for(;_0x201484['pos']<_0x3e0546;){let tag=_0x201484['uint32']();switch(tag>>>0x3){case 0x1:_0x4c3590['commentThreadId']=_0x201484['string']();break;case 0x2:_0x4c3590['commentId']=_0x201484['string']();break;case 0x3:_0x4c3590['documentId']=_0x201484['string']();break;default:_0x201484['skipType'](0x7&tag);}}return _0x4c3590;},CommentsV2RemoveCommentMessage['decodeDelimited']=function(_0x3a2fb6){return _0x3a2fb6 instanceof $Reader||(_0x3a2fb6=new $Reader(_0x3a2fb6)),this['decode'](_0x3a2fb6,_0x3a2fb6['uint32']());},CommentsV2RemoveCommentMessage['verify']=function(_0x126ff4){return'object'!=typeof _0x126ff4||null===_0x126ff4?'object\x20expected':null!=_0x126ff4['commentThreadId']&&_0x126ff4['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x126ff4['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x126ff4['commentId']&&_0x126ff4['hasOwnProperty']('commentId')&&!$util['isString'](_0x126ff4['commentId'])?'commentId:\x20string\x20expected':null!=_0x126ff4['documentId']&&_0x126ff4['hasOwnProperty']('documentId')&&!$util['isString'](_0x126ff4['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2RemoveCommentMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2RemoveCommentMessage'])return object;let _0x429ac8=new $root['CommentsV2RemoveCommentMessage']();return null!=object['commentThreadId']&&(_0x429ac8['commentThreadId']=String(object['commentThreadId'])),null!=object['commentId']&&(_0x429ac8['commentId']=String(object['commentId'])),null!=object['documentId']&&(_0x429ac8['documentId']=String(object['documentId'])),_0x429ac8;},CommentsV2RemoveCommentMessage['toObject']=function(_0x1e3409,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['commentId']='',object['documentId']=''),null!=_0x1e3409['commentThreadId']&&_0x1e3409['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x1e3409['commentThreadId']),null!=_0x1e3409['commentId']&&_0x1e3409['hasOwnProperty']('commentId')&&(object['commentId']=_0x1e3409['commentId']),null!=_0x1e3409['documentId']&&_0x1e3409['hasOwnProperty']('documentId')&&(object['documentId']=_0x1e3409['documentId']),object;},CommentsV2RemoveCommentMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2RemoveCommentMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2RemoveCommentMessage';},CommentsV2RemoveCommentMessage;})()),$root['CommentsV2RemoveCommentThreadMessage']=((()=>{function CommentsV2RemoveCommentThreadMessage(properties){if(properties){for(let _0x385cfc=Object['keys'](properties),_0x596af3=0x0;_0x596af3<_0x385cfc['length'];++_0x596af3)null!=properties[_0x385cfc[_0x596af3]]&&(this[_0x385cfc[_0x596af3]]=properties[_0x385cfc[_0x596af3]]);}}return CommentsV2RemoveCommentThreadMessage['prototype']['commentThreadId']='',CommentsV2RemoveCommentThreadMessage['prototype']['documentId']='',CommentsV2RemoveCommentThreadMessage['create']=function(properties){return new CommentsV2RemoveCommentThreadMessage(properties);},CommentsV2RemoveCommentThreadMessage['encode']=function(_0x5d19a2,writer){return writer||(writer=$Writer['create']()),null!=_0x5d19a2['commentThreadId']&&Object['hasOwnProperty']['call'](_0x5d19a2,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x5d19a2['commentThreadId']),null!=_0x5d19a2['documentId']&&Object['hasOwnProperty']['call'](_0x5d19a2,'documentId')&&writer['uint32'](0x12)['string'](_0x5d19a2['documentId']),writer;},CommentsV2RemoveCommentThreadMessage['encodeDelimited']=function(_0x1133ea,writer){return this['encode'](_0x1133ea,writer)['ldelim']();},CommentsV2RemoveCommentThreadMessage['decode']=function(_0x35c57d,length){_0x35c57d instanceof $Reader||(_0x35c57d=$Reader['create'](_0x35c57d));let _0x5db9f6=void 0x0===length?_0x35c57d['len']:_0x35c57d['pos']+length,_0x221975=new $root['CommentsV2RemoveCommentThreadMessage']();for(;_0x35c57d['pos']<_0x5db9f6;){let tag=_0x35c57d['uint32']();switch(tag>>>0x3){case 0x1:_0x221975['commentThreadId']=_0x35c57d['string']();break;case 0x2:_0x221975['documentId']=_0x35c57d['string']();break;default:_0x35c57d['skipType'](0x7&tag);}}return _0x221975;},CommentsV2RemoveCommentThreadMessage['decodeDelimited']=function(_0x35c257){return _0x35c257 instanceof $Reader||(_0x35c257=new $Reader(_0x35c257)),this['decode'](_0x35c257,_0x35c257['uint32']());},CommentsV2RemoveCommentThreadMessage['verify']=function(_0x3f9fe5){return'object'!=typeof _0x3f9fe5||null===_0x3f9fe5?'object\x20expected':null!=_0x3f9fe5['commentThreadId']&&_0x3f9fe5['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x3f9fe5['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x3f9fe5['documentId']&&_0x3f9fe5['hasOwnProperty']('documentId')&&!$util['isString'](_0x3f9fe5['documentId'])?'documentId:\x20string\x20expected':null;},CommentsV2RemoveCommentThreadMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2RemoveCommentThreadMessage'])return object;let _0x4b56e0=new $root['CommentsV2RemoveCommentThreadMessage']();return null!=object['commentThreadId']&&(_0x4b56e0['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x4b56e0['documentId']=String(object['documentId'])),_0x4b56e0;},CommentsV2RemoveCommentThreadMessage['toObject']=function(_0x67d57a,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']=''),null!=_0x67d57a['commentThreadId']&&_0x67d57a['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x67d57a['commentThreadId']),null!=_0x67d57a['documentId']&&_0x67d57a['hasOwnProperty']('documentId')&&(object['documentId']=_0x67d57a['documentId']),object;},CommentsV2RemoveCommentThreadMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2RemoveCommentThreadMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2RemoveCommentThreadMessage';},CommentsV2RemoveCommentThreadMessage;})()),$root['CommentsV2UpdateCommentMessage']=((()=>{function CommentsV2UpdateCommentMessage(properties){if(properties){for(let _0x3a9a46=Object['keys'](properties),_0x423b8e=0x0;_0x423b8e<_0x3a9a46['length'];++_0x423b8e)null!=properties[_0x3a9a46[_0x423b8e]]&&(this[_0x3a9a46[_0x423b8e]]=properties[_0x3a9a46[_0x423b8e]]);}}return CommentsV2UpdateCommentMessage['prototype']['commentThreadId']='',CommentsV2UpdateCommentMessage['prototype']['commentId']='',CommentsV2UpdateCommentMessage['prototype']['content']='',CommentsV2UpdateCommentMessage['prototype']['documentId']='',CommentsV2UpdateCommentMessage['prototype']['attributes']='',CommentsV2UpdateCommentMessage['prototype']['isAttributesUpdated']=!0x1,CommentsV2UpdateCommentMessage['prototype']['commentThread']=null,CommentsV2UpdateCommentMessage['create']=function(properties){return new CommentsV2UpdateCommentMessage(properties);},CommentsV2UpdateCommentMessage['encode']=function(_0x1bc520,writer){return writer||(writer=$Writer['create']()),null!=_0x1bc520['commentThreadId']&&Object['hasOwnProperty']['call'](_0x1bc520,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x1bc520['commentThreadId']),null!=_0x1bc520['commentId']&&Object['hasOwnProperty']['call'](_0x1bc520,'commentId')&&writer['uint32'](0x12)['string'](_0x1bc520['commentId']),null!=_0x1bc520['content']&&Object['hasOwnProperty']['call'](_0x1bc520,'content')&&writer['uint32'](0x1a)['string'](_0x1bc520['content']),null!=_0x1bc520['documentId']&&Object['hasOwnProperty']['call'](_0x1bc520,'documentId')&&writer['uint32'](0x22)['string'](_0x1bc520['documentId']),null!=_0x1bc520['attributes']&&Object['hasOwnProperty']['call'](_0x1bc520,'attributes')&&writer['uint32'](0x2a)['string'](_0x1bc520['attributes']),null!=_0x1bc520['isAttributesUpdated']&&Object['hasOwnProperty']['call'](_0x1bc520,'isAttributesUpdated')&&writer['uint32'](0x30)['bool'](_0x1bc520['isAttributesUpdated']),null!=_0x1bc520['commentThread']&&Object['hasOwnProperty']['call'](_0x1bc520,'commentThread')&&$root['CommentsThreadDescriptor']['encode'](_0x1bc520['commentThread'],writer['uint32'](0x3a)['fork']())['ldelim'](),writer;},CommentsV2UpdateCommentMessage['encodeDelimited']=function(_0x541738,writer){return this['encode'](_0x541738,writer)['ldelim']();},CommentsV2UpdateCommentMessage['decode']=function(_0x4a6f74,length){_0x4a6f74 instanceof $Reader||(_0x4a6f74=$Reader['create'](_0x4a6f74));let _0x3e2671=void 0x0===length?_0x4a6f74['len']:_0x4a6f74['pos']+length,_0x3c99bc=new $root['CommentsV2UpdateCommentMessage']();for(;_0x4a6f74['pos']<_0x3e2671;){let tag=_0x4a6f74['uint32']();switch(tag>>>0x3){case 0x1:_0x3c99bc['commentThreadId']=_0x4a6f74['string']();break;case 0x2:_0x3c99bc['commentId']=_0x4a6f74['string']();break;case 0x3:_0x3c99bc['content']=_0x4a6f74['string']();break;case 0x4:_0x3c99bc['documentId']=_0x4a6f74['string']();break;case 0x5:_0x3c99bc['attributes']=_0x4a6f74['string']();break;case 0x6:_0x3c99bc['isAttributesUpdated']=_0x4a6f74['bool']();break;case 0x7:_0x3c99bc['commentThread']=$root['CommentsThreadDescriptor']['decode'](_0x4a6f74,_0x4a6f74['uint32']());break;default:_0x4a6f74['skipType'](0x7&tag);}}return _0x3c99bc;},CommentsV2UpdateCommentMessage['decodeDelimited']=function(_0x9ff380){return _0x9ff380 instanceof $Reader||(_0x9ff380=new $Reader(_0x9ff380)),this['decode'](_0x9ff380,_0x9ff380['uint32']());},CommentsV2UpdateCommentMessage['verify']=function(_0x423054){if('object'!=typeof _0x423054||null===_0x423054)return'object\x20expected';if(null!=_0x423054['commentThreadId']&&_0x423054['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x423054['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0x423054['commentId']&&_0x423054['hasOwnProperty']('commentId')&&!$util['isString'](_0x423054['commentId']))return'commentId:\x20string\x20expected';if(null!=_0x423054['content']&&_0x423054['hasOwnProperty']('content')&&!$util['isString'](_0x423054['content']))return'content:\x20string\x20expected';if(null!=_0x423054['documentId']&&_0x423054['hasOwnProperty']('documentId')&&!$util['isString'](_0x423054['documentId']))return'documentId:\x20string\x20expected';if(null!=_0x423054['attributes']&&_0x423054['hasOwnProperty']('attributes')&&!$util['isString'](_0x423054['attributes']))return'attributes:\x20string\x20expected';if(null!=_0x423054['isAttributesUpdated']&&_0x423054['hasOwnProperty']('isAttributesUpdated')&&'boolean'!=typeof _0x423054['isAttributesUpdated'])return'isAttributesUpdated:\x20boolean\x20expected';if(null!=_0x423054['commentThread']&&_0x423054['hasOwnProperty']('commentThread')){let _0x1bb8c9=$root['CommentsThreadDescriptor']['verify'](_0x423054['commentThread']);if(_0x1bb8c9)return'commentThread.'+_0x1bb8c9;}return null;},CommentsV2UpdateCommentMessage['fromObject']=function(object){if(object instanceof $root['CommentsV2UpdateCommentMessage'])return object;let _0x5a19ae=new $root['CommentsV2UpdateCommentMessage']();if(null!=object['commentThreadId']&&(_0x5a19ae['commentThreadId']=String(object['commentThreadId'])),null!=object['commentId']&&(_0x5a19ae['commentId']=String(object['commentId'])),null!=object['content']&&(_0x5a19ae['content']=String(object['content'])),null!=object['documentId']&&(_0x5a19ae['documentId']=String(object['documentId'])),null!=object['attributes']&&(_0x5a19ae['attributes']=String(object['attributes'])),null!=object['isAttributesUpdated']&&(_0x5a19ae['isAttributesUpdated']=Boolean(object['isAttributesUpdated'])),null!=object['commentThread']){if('object'!=typeof object['commentThread'])throw TypeError('.CommentsV2UpdateCommentMessage.commentThread:\x20object\x20expected');_0x5a19ae['commentThread']=$root['CommentsThreadDescriptor']['fromObject'](object['commentThread']);}return _0x5a19ae;},CommentsV2UpdateCommentMessage['toObject']=function(_0x135c7a,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['commentId']='',object['content']='',object['documentId']='',object['attributes']='',object['isAttributesUpdated']=!0x1,object['commentThread']=null),null!=_0x135c7a['commentThreadId']&&_0x135c7a['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x135c7a['commentThreadId']),null!=_0x135c7a['commentId']&&_0x135c7a['hasOwnProperty']('commentId')&&(object['commentId']=_0x135c7a['commentId']),null!=_0x135c7a['content']&&_0x135c7a['hasOwnProperty']('content')&&(object['content']=_0x135c7a['content']),null!=_0x135c7a['documentId']&&_0x135c7a['hasOwnProperty']('documentId')&&(object['documentId']=_0x135c7a['documentId']),null!=_0x135c7a['attributes']&&_0x135c7a['hasOwnProperty']('attributes')&&(object['attributes']=_0x135c7a['attributes']),null!=_0x135c7a['isAttributesUpdated']&&_0x135c7a['hasOwnProperty']('isAttributesUpdated')&&(object['isAttributesUpdated']=_0x135c7a['isAttributesUpdated']),null!=_0x135c7a['commentThread']&&_0x135c7a['hasOwnProperty']('commentThread')&&(object['commentThread']=$root['CommentsThreadDescriptor']['toObject'](_0x135c7a['commentThread'],options)),object;},CommentsV2UpdateCommentMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2UpdateCommentMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2UpdateCommentMessage';},CommentsV2UpdateCommentMessage;})()),$root['CommentsV2AddCommentResponse']=((()=>{function CommentsV2AddCommentResponse(properties){if(properties){for(let _0x2c741e=Object['keys'](properties),_0x2a4e90=0x0;_0x2a4e90<_0x2c741e['length'];++_0x2a4e90)null!=properties[_0x2c741e[_0x2a4e90]]&&(this[_0x2c741e[_0x2a4e90]]=properties[_0x2c741e[_0x2a4e90]]);}}return CommentsV2AddCommentResponse['prototype']['commentThreadId']='',CommentsV2AddCommentResponse['prototype']['commentId']='',CommentsV2AddCommentResponse['prototype']['createdAt']='',CommentsV2AddCommentResponse['create']=function(properties){return new CommentsV2AddCommentResponse(properties);},CommentsV2AddCommentResponse['encode']=function(_0x5a0ec5,writer){return writer||(writer=$Writer['create']()),null!=_0x5a0ec5['commentThreadId']&&Object['hasOwnProperty']['call'](_0x5a0ec5,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x5a0ec5['commentThreadId']),null!=_0x5a0ec5['commentId']&&Object['hasOwnProperty']['call'](_0x5a0ec5,'commentId')&&writer['uint32'](0x12)['string'](_0x5a0ec5['commentId']),null!=_0x5a0ec5['createdAt']&&Object['hasOwnProperty']['call'](_0x5a0ec5,'createdAt')&&writer['uint32'](0x1a)['string'](_0x5a0ec5['createdAt']),writer;},CommentsV2AddCommentResponse['encodeDelimited']=function(_0x192179,writer){return this['encode'](_0x192179,writer)['ldelim']();},CommentsV2AddCommentResponse['decode']=function(_0xd062cd,length){_0xd062cd instanceof $Reader||(_0xd062cd=$Reader['create'](_0xd062cd));let _0x5ddc75=void 0x0===length?_0xd062cd['len']:_0xd062cd['pos']+length,_0x31a2e9=new $root['CommentsV2AddCommentResponse']();for(;_0xd062cd['pos']<_0x5ddc75;){let tag=_0xd062cd['uint32']();switch(tag>>>0x3){case 0x1:_0x31a2e9['commentThreadId']=_0xd062cd['string']();break;case 0x2:_0x31a2e9['commentId']=_0xd062cd['string']();break;case 0x3:_0x31a2e9['createdAt']=_0xd062cd['string']();break;default:_0xd062cd['skipType'](0x7&tag);}}return _0x31a2e9;},CommentsV2AddCommentResponse['decodeDelimited']=function(_0x1c7c99){return _0x1c7c99 instanceof $Reader||(_0x1c7c99=new $Reader(_0x1c7c99)),this['decode'](_0x1c7c99,_0x1c7c99['uint32']());},CommentsV2AddCommentResponse['verify']=function(_0x4f5953){return'object'!=typeof _0x4f5953||null===_0x4f5953?'object\x20expected':null!=_0x4f5953['commentThreadId']&&_0x4f5953['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x4f5953['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x4f5953['commentId']&&_0x4f5953['hasOwnProperty']('commentId')&&!$util['isString'](_0x4f5953['commentId'])?'commentId:\x20string\x20expected':null!=_0x4f5953['createdAt']&&_0x4f5953['hasOwnProperty']('createdAt')&&!$util['isString'](_0x4f5953['createdAt'])?'createdAt:\x20string\x20expected':null;},CommentsV2AddCommentResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2AddCommentResponse'])return object;let _0xec1e8f=new $root['CommentsV2AddCommentResponse']();return null!=object['commentThreadId']&&(_0xec1e8f['commentThreadId']=String(object['commentThreadId'])),null!=object['commentId']&&(_0xec1e8f['commentId']=String(object['commentId'])),null!=object['createdAt']&&(_0xec1e8f['createdAt']=String(object['createdAt'])),_0xec1e8f;},CommentsV2AddCommentResponse['toObject']=function(_0x3c146b,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['commentId']='',object['createdAt']=''),null!=_0x3c146b['commentThreadId']&&_0x3c146b['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x3c146b['commentThreadId']),null!=_0x3c146b['commentId']&&_0x3c146b['hasOwnProperty']('commentId')&&(object['commentId']=_0x3c146b['commentId']),null!=_0x3c146b['createdAt']&&_0x3c146b['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x3c146b['createdAt']),object;},CommentsV2AddCommentResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2AddCommentResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2AddCommentResponse';},CommentsV2AddCommentResponse;})()),$root['CommentsV2AddCommentThreadResponse']=((()=>{function CommentsV2AddCommentThreadResponse(properties){if(this['comments']=[],properties){for(let _0xce1082=Object['keys'](properties),_0xff506d=0x0;_0xff506d<_0xce1082['length'];++_0xff506d)null!=properties[_0xce1082[_0xff506d]]&&(this[_0xce1082[_0xff506d]]=properties[_0xce1082[_0xff506d]]);}}return CommentsV2AddCommentThreadResponse['prototype']['commentThreadId']='',CommentsV2AddCommentThreadResponse['prototype']['createdAt']='',CommentsV2AddCommentThreadResponse['prototype']['comments']=$util['emptyArray'],CommentsV2AddCommentThreadResponse['create']=function(properties){return new CommentsV2AddCommentThreadResponse(properties);},CommentsV2AddCommentThreadResponse['encode']=function(_0x3235e7,writer){if(writer||(writer=$Writer['create']()),null!=_0x3235e7['commentThreadId']&&Object['hasOwnProperty']['call'](_0x3235e7,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x3235e7['commentThreadId']),null!=_0x3235e7['createdAt']&&Object['hasOwnProperty']['call'](_0x3235e7,'createdAt')&&writer['uint32'](0x12)['string'](_0x3235e7['createdAt']),null!=_0x3235e7['comments']&&_0x3235e7['comments']['length']){for(let _0x262725=0x0;_0x262725<_0x3235e7['comments']['length'];++_0x262725)$root['CommentThreadAddedCommentDescriptor']['encode'](_0x3235e7['comments'][_0x262725],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},CommentsV2AddCommentThreadResponse['encodeDelimited']=function(_0x479877,writer){return this['encode'](_0x479877,writer)['ldelim']();},CommentsV2AddCommentThreadResponse['decode']=function(_0x23e824,length){_0x23e824 instanceof $Reader||(_0x23e824=$Reader['create'](_0x23e824));let _0x5173e6=void 0x0===length?_0x23e824['len']:_0x23e824['pos']+length,_0x5e7f06=new $root['CommentsV2AddCommentThreadResponse']();for(;_0x23e824['pos']<_0x5173e6;){let tag=_0x23e824['uint32']();switch(tag>>>0x3){case 0x1:_0x5e7f06['commentThreadId']=_0x23e824['string']();break;case 0x2:_0x5e7f06['createdAt']=_0x23e824['string']();break;case 0x3:_0x5e7f06['comments']&&_0x5e7f06['comments']['length']||(_0x5e7f06['comments']=[]),_0x5e7f06['comments']['push']($root['CommentThreadAddedCommentDescriptor']['decode'](_0x23e824,_0x23e824['uint32']()));break;default:_0x23e824['skipType'](0x7&tag);}}return _0x5e7f06;},CommentsV2AddCommentThreadResponse['decodeDelimited']=function(_0x1ceb21){return _0x1ceb21 instanceof $Reader||(_0x1ceb21=new $Reader(_0x1ceb21)),this['decode'](_0x1ceb21,_0x1ceb21['uint32']());},CommentsV2AddCommentThreadResponse['verify']=function(_0xb00693){if('object'!=typeof _0xb00693||null===_0xb00693)return'object\x20expected';if(null!=_0xb00693['commentThreadId']&&_0xb00693['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0xb00693['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0xb00693['createdAt']&&_0xb00693['hasOwnProperty']('createdAt')&&!$util['isString'](_0xb00693['createdAt']))return'createdAt:\x20string\x20expected';if(null!=_0xb00693['comments']&&_0xb00693['hasOwnProperty']('comments')){if(!Array['isArray'](_0xb00693['comments']))return'comments:\x20array\x20expected';for(let _0x41d144=0x0;_0x41d144<_0xb00693['comments']['length'];++_0x41d144){let _0x2de5c4=$root['CommentThreadAddedCommentDescriptor']['verify'](_0xb00693['comments'][_0x41d144]);if(_0x2de5c4)return'comments.'+_0x2de5c4;}}return null;},CommentsV2AddCommentThreadResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2AddCommentThreadResponse'])return object;let _0x4a6b8f=new $root['CommentsV2AddCommentThreadResponse']();if(null!=object['commentThreadId']&&(_0x4a6b8f['commentThreadId']=String(object['commentThreadId'])),null!=object['createdAt']&&(_0x4a6b8f['createdAt']=String(object['createdAt'])),object['comments']){if(!Array['isArray'](object['comments']))throw TypeError('.CommentsV2AddCommentThreadResponse.comments:\x20array\x20expected');_0x4a6b8f['comments']=[];for(let _0x44bd4f=0x0;_0x44bd4f<object['comments']['length'];++_0x44bd4f){if('object'!=typeof object['comments'][_0x44bd4f])throw TypeError('.CommentsV2AddCommentThreadResponse.comments:\x20object\x20expected');_0x4a6b8f['comments'][_0x44bd4f]=$root['CommentThreadAddedCommentDescriptor']['fromObject'](object['comments'][_0x44bd4f]);}}return _0x4a6b8f;},CommentsV2AddCommentThreadResponse['toObject']=function(_0x1c7cef,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['comments']=[]),options['defaults']&&(object['commentThreadId']='',object['createdAt']=''),null!=_0x1c7cef['commentThreadId']&&_0x1c7cef['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x1c7cef['commentThreadId']),null!=_0x1c7cef['createdAt']&&_0x1c7cef['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x1c7cef['createdAt']),_0x1c7cef['comments']&&_0x1c7cef['comments']['length']){object['comments']=[];for(let _0x3f6456=0x0;_0x3f6456<_0x1c7cef['comments']['length'];++_0x3f6456)object['comments'][_0x3f6456]=$root['CommentThreadAddedCommentDescriptor']['toObject'](_0x1c7cef['comments'][_0x3f6456],options);}return object;},CommentsV2AddCommentThreadResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2AddCommentThreadResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2AddCommentThreadResponse';},CommentsV2AddCommentThreadResponse;})()),$root['CommentsV2ResolveCommentThreadResponse']=((()=>{function CommentsV2ResolveCommentThreadResponse(properties){if(properties){for(let _0x4e4e5f=Object['keys'](properties),_0x21b49a=0x0;_0x21b49a<_0x4e4e5f['length'];++_0x21b49a)null!=properties[_0x4e4e5f[_0x21b49a]]&&(this[_0x4e4e5f[_0x21b49a]]=properties[_0x4e4e5f[_0x21b49a]]);}}return CommentsV2ResolveCommentThreadResponse['prototype']['commentThreadId']='',CommentsV2ResolveCommentThreadResponse['prototype']['documentId']='',CommentsV2ResolveCommentThreadResponse['prototype']['resolvedAt']='',CommentsV2ResolveCommentThreadResponse['prototype']['resolvedBy']='',CommentsV2ResolveCommentThreadResponse['create']=function(properties){return new CommentsV2ResolveCommentThreadResponse(properties);},CommentsV2ResolveCommentThreadResponse['encode']=function(_0x24547a,writer){return writer||(writer=$Writer['create']()),null!=_0x24547a['commentThreadId']&&Object['hasOwnProperty']['call'](_0x24547a,'commentThreadId')&&writer['uint32'](0xa)['string'](_0x24547a['commentThreadId']),null!=_0x24547a['documentId']&&Object['hasOwnProperty']['call'](_0x24547a,'documentId')&&writer['uint32'](0x12)['string'](_0x24547a['documentId']),null!=_0x24547a['resolvedAt']&&Object['hasOwnProperty']['call'](_0x24547a,'resolvedAt')&&writer['uint32'](0x1a)['string'](_0x24547a['resolvedAt']),null!=_0x24547a['resolvedBy']&&Object['hasOwnProperty']['call'](_0x24547a,'resolvedBy')&&writer['uint32'](0x22)['string'](_0x24547a['resolvedBy']),writer;},CommentsV2ResolveCommentThreadResponse['encodeDelimited']=function(_0x2853a2,writer){return this['encode'](_0x2853a2,writer)['ldelim']();},CommentsV2ResolveCommentThreadResponse['decode']=function(_0x3679b3,length){_0x3679b3 instanceof $Reader||(_0x3679b3=$Reader['create'](_0x3679b3));let _0xa66e44=void 0x0===length?_0x3679b3['len']:_0x3679b3['pos']+length,_0x506577=new $root['CommentsV2ResolveCommentThreadResponse']();for(;_0x3679b3['pos']<_0xa66e44;){let tag=_0x3679b3['uint32']();switch(tag>>>0x3){case 0x1:_0x506577['commentThreadId']=_0x3679b3['string']();break;case 0x2:_0x506577['documentId']=_0x3679b3['string']();break;case 0x3:_0x506577['resolvedAt']=_0x3679b3['string']();break;case 0x4:_0x506577['resolvedBy']=_0x3679b3['string']();break;default:_0x3679b3['skipType'](0x7&tag);}}return _0x506577;},CommentsV2ResolveCommentThreadResponse['decodeDelimited']=function(_0x45287b){return _0x45287b instanceof $Reader||(_0x45287b=new $Reader(_0x45287b)),this['decode'](_0x45287b,_0x45287b['uint32']());},CommentsV2ResolveCommentThreadResponse['verify']=function(_0x365882){return'object'!=typeof _0x365882||null===_0x365882?'object\x20expected':null!=_0x365882['commentThreadId']&&_0x365882['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x365882['commentThreadId'])?'commentThreadId:\x20string\x20expected':null!=_0x365882['documentId']&&_0x365882['hasOwnProperty']('documentId')&&!$util['isString'](_0x365882['documentId'])?'documentId:\x20string\x20expected':null!=_0x365882['resolvedAt']&&_0x365882['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0x365882['resolvedAt'])?'resolvedAt:\x20string\x20expected':null!=_0x365882['resolvedBy']&&_0x365882['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0x365882['resolvedBy'])?'resolvedBy:\x20string\x20expected':null;},CommentsV2ResolveCommentThreadResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2ResolveCommentThreadResponse'])return object;let _0x5a8906=new $root['CommentsV2ResolveCommentThreadResponse']();return null!=object['commentThreadId']&&(_0x5a8906['commentThreadId']=String(object['commentThreadId'])),null!=object['documentId']&&(_0x5a8906['documentId']=String(object['documentId'])),null!=object['resolvedAt']&&(_0x5a8906['resolvedAt']=String(object['resolvedAt'])),null!=object['resolvedBy']&&(_0x5a8906['resolvedBy']=String(object['resolvedBy'])),_0x5a8906;},CommentsV2ResolveCommentThreadResponse['toObject']=function(_0x219866,options){options||(options={});let object={};return options['defaults']&&(object['commentThreadId']='',object['documentId']='',object['resolvedAt']='',object['resolvedBy']=''),null!=_0x219866['commentThreadId']&&_0x219866['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x219866['commentThreadId']),null!=_0x219866['documentId']&&_0x219866['hasOwnProperty']('documentId')&&(object['documentId']=_0x219866['documentId']),null!=_0x219866['resolvedAt']&&_0x219866['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0x219866['resolvedAt']),null!=_0x219866['resolvedBy']&&_0x219866['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0x219866['resolvedBy']),object;},CommentsV2ResolveCommentThreadResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ResolveCommentThreadResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ResolveCommentThreadResponse';},CommentsV2ResolveCommentThreadResponse;})()),$root['CommentsV2ConnectResponse']=((()=>{function CommentsV2ConnectResponse(properties){if(this['threads']=[],this['threadsV2']=[],properties){for(let _0x47db4c=Object['keys'](properties),_0x425f48=0x0;_0x425f48<_0x47db4c['length'];++_0x425f48)null!=properties[_0x47db4c[_0x425f48]]&&(this[_0x47db4c[_0x425f48]]=properties[_0x47db4c[_0x425f48]]);}}return CommentsV2ConnectResponse['prototype']['channel']='',CommentsV2ConnectResponse['prototype']['threads']=$util['emptyArray'],CommentsV2ConnectResponse['prototype']['threadsV2']=$util['emptyArray'],CommentsV2ConnectResponse['create']=function(properties){return new CommentsV2ConnectResponse(properties);},CommentsV2ConnectResponse['encode']=function(_0x1bbd90,writer){if(writer||(writer=$Writer['create']()),null!=_0x1bbd90['channel']&&Object['hasOwnProperty']['call'](_0x1bbd90,'channel')&&writer['uint32'](0xa)['string'](_0x1bbd90['channel']),null!=_0x1bbd90['threads']&&_0x1bbd90['threads']['length']){for(let _0xe9133d=0x0;_0xe9133d<_0x1bbd90['threads']['length'];++_0xe9133d)writer['uint32'](0x12)['string'](_0x1bbd90['threads'][_0xe9133d]);}if(null!=_0x1bbd90['threadsV2']&&_0x1bbd90['threadsV2']['length']){for(let _0x1babae=0x0;_0x1babae<_0x1bbd90['threadsV2']['length'];++_0x1babae)$root['CommentsThreadDescriptor']['encode'](_0x1bbd90['threadsV2'][_0x1babae],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},CommentsV2ConnectResponse['encodeDelimited']=function(_0x1a73a8,writer){return this['encode'](_0x1a73a8,writer)['ldelim']();},CommentsV2ConnectResponse['decode']=function(_0x39397f,length){_0x39397f instanceof $Reader||(_0x39397f=$Reader['create'](_0x39397f));let _0x354de2=void 0x0===length?_0x39397f['len']:_0x39397f['pos']+length,_0x1e854d=new $root['CommentsV2ConnectResponse']();for(;_0x39397f['pos']<_0x354de2;){let tag=_0x39397f['uint32']();switch(tag>>>0x3){case 0x1:_0x1e854d['channel']=_0x39397f['string']();break;case 0x2:_0x1e854d['threads']&&_0x1e854d['threads']['length']||(_0x1e854d['threads']=[]),_0x1e854d['threads']['push'](_0x39397f['string']());break;case 0x3:_0x1e854d['threadsV2']&&_0x1e854d['threadsV2']['length']||(_0x1e854d['threadsV2']=[]),_0x1e854d['threadsV2']['push']($root['CommentsThreadDescriptor']['decode'](_0x39397f,_0x39397f['uint32']()));break;default:_0x39397f['skipType'](0x7&tag);}}return _0x1e854d;},CommentsV2ConnectResponse['decodeDelimited']=function(_0x57a3e4){return _0x57a3e4 instanceof $Reader||(_0x57a3e4=new $Reader(_0x57a3e4)),this['decode'](_0x57a3e4,_0x57a3e4['uint32']());},CommentsV2ConnectResponse['verify']=function(_0x2feb51){if('object'!=typeof _0x2feb51||null===_0x2feb51)return'object\x20expected';if(null!=_0x2feb51['channel']&&_0x2feb51['hasOwnProperty']('channel')&&!$util['isString'](_0x2feb51['channel']))return'channel:\x20string\x20expected';if(null!=_0x2feb51['threads']&&_0x2feb51['hasOwnProperty']('threads')){if(!Array['isArray'](_0x2feb51['threads']))return'threads:\x20array\x20expected';for(let _0x1c6657=0x0;_0x1c6657<_0x2feb51['threads']['length'];++_0x1c6657)if(!$util['isString'](_0x2feb51['threads'][_0x1c6657]))return'threads:\x20string[]\x20expected';}if(null!=_0x2feb51['threadsV2']&&_0x2feb51['hasOwnProperty']('threadsV2')){if(!Array['isArray'](_0x2feb51['threadsV2']))return'threadsV2:\x20array\x20expected';for(let _0x3456cc=0x0;_0x3456cc<_0x2feb51['threadsV2']['length'];++_0x3456cc){let _0x39c06d=$root['CommentsThreadDescriptor']['verify'](_0x2feb51['threadsV2'][_0x3456cc]);if(_0x39c06d)return'threadsV2.'+_0x39c06d;}}return null;},CommentsV2ConnectResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2ConnectResponse'])return object;let _0x51339a=new $root['CommentsV2ConnectResponse']();if(null!=object['channel']&&(_0x51339a['channel']=String(object['channel'])),object['threads']){if(!Array['isArray'](object['threads']))throw TypeError('.CommentsV2ConnectResponse.threads:\x20array\x20expected');_0x51339a['threads']=[];for(let _0x2bcc03=0x0;_0x2bcc03<object['threads']['length'];++_0x2bcc03)_0x51339a['threads'][_0x2bcc03]=String(object['threads'][_0x2bcc03]);}if(object['threadsV2']){if(!Array['isArray'](object['threadsV2']))throw TypeError('.CommentsV2ConnectResponse.threadsV2:\x20array\x20expected');_0x51339a['threadsV2']=[];for(let _0x3c6645=0x0;_0x3c6645<object['threadsV2']['length'];++_0x3c6645){if('object'!=typeof object['threadsV2'][_0x3c6645])throw TypeError('.CommentsV2ConnectResponse.threadsV2:\x20object\x20expected');_0x51339a['threadsV2'][_0x3c6645]=$root['CommentsThreadDescriptor']['fromObject'](object['threadsV2'][_0x3c6645]);}}return _0x51339a;},CommentsV2ConnectResponse['toObject']=function(_0x1cd230,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['threads']=[],object['threadsV2']=[]),options['defaults']&&(object['channel']=''),null!=_0x1cd230['channel']&&_0x1cd230['hasOwnProperty']('channel')&&(object['channel']=_0x1cd230['channel']),_0x1cd230['threads']&&_0x1cd230['threads']['length']){object['threads']=[];for(let _0xd00d97=0x0;_0xd00d97<_0x1cd230['threads']['length'];++_0xd00d97)object['threads'][_0xd00d97]=_0x1cd230['threads'][_0xd00d97];}if(_0x1cd230['threadsV2']&&_0x1cd230['threadsV2']['length']){object['threadsV2']=[];for(let _0x515906=0x0;_0x515906<_0x1cd230['threadsV2']['length'];++_0x515906)object['threadsV2'][_0x515906]=$root['CommentsThreadDescriptor']['toObject'](_0x1cd230['threadsV2'][_0x515906],options);}return object;},CommentsV2ConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2ConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2ConnectResponse';},CommentsV2ConnectResponse;})()),$root['CommentsV2GetCommentThreadResponse']=((()=>{function CommentsV2GetCommentThreadResponse(properties){if(this['comments']=[],this['commentsV2']=[],properties){for(let _0x3d3487=Object['keys'](properties),_0x3d8447=0x0;_0x3d8447<_0x3d3487['length'];++_0x3d8447)null!=properties[_0x3d3487[_0x3d8447]]&&(this[_0x3d3487[_0x3d8447]]=properties[_0x3d3487[_0x3d8447]]);}}return CommentsV2GetCommentThreadResponse['prototype']['commentThreadId']='',CommentsV2GetCommentThreadResponse['prototype']['comments']=$util['emptyArray'],CommentsV2GetCommentThreadResponse['prototype']['commentsV2']=$util['emptyArray'],CommentsV2GetCommentThreadResponse['prototype']['resolvedAt']='',CommentsV2GetCommentThreadResponse['prototype']['resolvedBy']='',CommentsV2GetCommentThreadResponse['prototype']['context']='',CommentsV2GetCommentThreadResponse['prototype']['createdAt']='',CommentsV2GetCommentThreadResponse['prototype']['deletedAt']='',CommentsV2GetCommentThreadResponse['prototype']['attributes']='',CommentsV2GetCommentThreadResponse['prototype']['unlinkedAt']='',CommentsV2GetCommentThreadResponse['create']=function(properties){return new CommentsV2GetCommentThreadResponse(properties);},CommentsV2GetCommentThreadResponse['encode']=function(_0xdcf2c0,writer){if(writer||(writer=$Writer['create']()),null!=_0xdcf2c0['commentThreadId']&&Object['hasOwnProperty']['call'](_0xdcf2c0,'commentThreadId')&&writer['uint32'](0xa)['string'](_0xdcf2c0['commentThreadId']),null!=_0xdcf2c0['comments']&&_0xdcf2c0['comments']['length']){for(let _0x8801e4=0x0;_0x8801e4<_0xdcf2c0['comments']['length'];++_0x8801e4)writer['uint32'](0x12)['string'](_0xdcf2c0['comments'][_0x8801e4]);}if(null!=_0xdcf2c0['commentsV2']&&_0xdcf2c0['commentsV2']['length']){for(let _0xc8e471=0x0;_0xc8e471<_0xdcf2c0['commentsV2']['length'];++_0xc8e471)$root['CommentDescriptor']['encode'](_0xdcf2c0['commentsV2'][_0xc8e471],writer['uint32'](0x1a)['fork']())['ldelim']();}return null!=_0xdcf2c0['resolvedAt']&&Object['hasOwnProperty']['call'](_0xdcf2c0,'resolvedAt')&&writer['uint32'](0x22)['string'](_0xdcf2c0['resolvedAt']),null!=_0xdcf2c0['resolvedBy']&&Object['hasOwnProperty']['call'](_0xdcf2c0,'resolvedBy')&&writer['uint32'](0x2a)['string'](_0xdcf2c0['resolvedBy']),null!=_0xdcf2c0['context']&&Object['hasOwnProperty']['call'](_0xdcf2c0,'context')&&writer['uint32'](0x32)['string'](_0xdcf2c0['context']),null!=_0xdcf2c0['createdAt']&&Object['hasOwnProperty']['call'](_0xdcf2c0,'createdAt')&&writer['uint32'](0x3a)['string'](_0xdcf2c0['createdAt']),null!=_0xdcf2c0['deletedAt']&&Object['hasOwnProperty']['call'](_0xdcf2c0,'deletedAt')&&writer['uint32'](0x42)['string'](_0xdcf2c0['deletedAt']),null!=_0xdcf2c0['attributes']&&Object['hasOwnProperty']['call'](_0xdcf2c0,'attributes')&&writer['uint32'](0x4a)['string'](_0xdcf2c0['attributes']),null!=_0xdcf2c0['unlinkedAt']&&Object['hasOwnProperty']['call'](_0xdcf2c0,'unlinkedAt')&&writer['uint32'](0x52)['string'](_0xdcf2c0['unlinkedAt']),writer;},CommentsV2GetCommentThreadResponse['encodeDelimited']=function(_0x399b35,writer){return this['encode'](_0x399b35,writer)['ldelim']();},CommentsV2GetCommentThreadResponse['decode']=function(_0x1eb642,length){_0x1eb642 instanceof $Reader||(_0x1eb642=$Reader['create'](_0x1eb642));let _0x35b67f=void 0x0===length?_0x1eb642['len']:_0x1eb642['pos']+length,_0x303c64=new $root['CommentsV2GetCommentThreadResponse']();for(;_0x1eb642['pos']<_0x35b67f;){let tag=_0x1eb642['uint32']();switch(tag>>>0x3){case 0x1:_0x303c64['commentThreadId']=_0x1eb642['string']();break;case 0x2:_0x303c64['comments']&&_0x303c64['comments']['length']||(_0x303c64['comments']=[]),_0x303c64['comments']['push'](_0x1eb642['string']());break;case 0x3:_0x303c64['commentsV2']&&_0x303c64['commentsV2']['length']||(_0x303c64['commentsV2']=[]),_0x303c64['commentsV2']['push']($root['CommentDescriptor']['decode'](_0x1eb642,_0x1eb642['uint32']()));break;case 0x4:_0x303c64['resolvedAt']=_0x1eb642['string']();break;case 0x5:_0x303c64['resolvedBy']=_0x1eb642['string']();break;case 0x6:_0x303c64['context']=_0x1eb642['string']();break;case 0x7:_0x303c64['createdAt']=_0x1eb642['string']();break;case 0x8:_0x303c64['deletedAt']=_0x1eb642['string']();break;case 0x9:_0x303c64['attributes']=_0x1eb642['string']();break;case 0xa:_0x303c64['unlinkedAt']=_0x1eb642['string']();break;default:_0x1eb642['skipType'](0x7&tag);}}return _0x303c64;},CommentsV2GetCommentThreadResponse['decodeDelimited']=function(_0x2b0688){return _0x2b0688 instanceof $Reader||(_0x2b0688=new $Reader(_0x2b0688)),this['decode'](_0x2b0688,_0x2b0688['uint32']());},CommentsV2GetCommentThreadResponse['verify']=function(_0x3ed4f5){if('object'!=typeof _0x3ed4f5||null===_0x3ed4f5)return'object\x20expected';if(null!=_0x3ed4f5['commentThreadId']&&_0x3ed4f5['hasOwnProperty']('commentThreadId')&&!$util['isString'](_0x3ed4f5['commentThreadId']))return'commentThreadId:\x20string\x20expected';if(null!=_0x3ed4f5['comments']&&_0x3ed4f5['hasOwnProperty']('comments')){if(!Array['isArray'](_0x3ed4f5['comments']))return'comments:\x20array\x20expected';for(let _0x16b86d=0x0;_0x16b86d<_0x3ed4f5['comments']['length'];++_0x16b86d)if(!$util['isString'](_0x3ed4f5['comments'][_0x16b86d]))return'comments:\x20string[]\x20expected';}if(null!=_0x3ed4f5['commentsV2']&&_0x3ed4f5['hasOwnProperty']('commentsV2')){if(!Array['isArray'](_0x3ed4f5['commentsV2']))return'commentsV2:\x20array\x20expected';for(let _0x46e588=0x0;_0x46e588<_0x3ed4f5['commentsV2']['length'];++_0x46e588){let _0x417426=$root['CommentDescriptor']['verify'](_0x3ed4f5['commentsV2'][_0x46e588]);if(_0x417426)return'commentsV2.'+_0x417426;}}return null!=_0x3ed4f5['resolvedAt']&&_0x3ed4f5['hasOwnProperty']('resolvedAt')&&!$util['isString'](_0x3ed4f5['resolvedAt'])?'resolvedAt:\x20string\x20expected':null!=_0x3ed4f5['resolvedBy']&&_0x3ed4f5['hasOwnProperty']('resolvedBy')&&!$util['isString'](_0x3ed4f5['resolvedBy'])?'resolvedBy:\x20string\x20expected':null!=_0x3ed4f5['context']&&_0x3ed4f5['hasOwnProperty']('context')&&!$util['isString'](_0x3ed4f5['context'])?'context:\x20string\x20expected':null!=_0x3ed4f5['createdAt']&&_0x3ed4f5['hasOwnProperty']('createdAt')&&!$util['isString'](_0x3ed4f5['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x3ed4f5['deletedAt']&&_0x3ed4f5['hasOwnProperty']('deletedAt')&&!$util['isString'](_0x3ed4f5['deletedAt'])?'deletedAt:\x20string\x20expected':null!=_0x3ed4f5['attributes']&&_0x3ed4f5['hasOwnProperty']('attributes')&&!$util['isString'](_0x3ed4f5['attributes'])?'attributes:\x20string\x20expected':null!=_0x3ed4f5['unlinkedAt']&&_0x3ed4f5['hasOwnProperty']('unlinkedAt')&&!$util['isString'](_0x3ed4f5['unlinkedAt'])?'unlinkedAt:\x20string\x20expected':null;},CommentsV2GetCommentThreadResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2GetCommentThreadResponse'])return object;let _0x334d44=new $root['CommentsV2GetCommentThreadResponse']();if(null!=object['commentThreadId']&&(_0x334d44['commentThreadId']=String(object['commentThreadId'])),object['comments']){if(!Array['isArray'](object['comments']))throw TypeError('.CommentsV2GetCommentThreadResponse.comments:\x20array\x20expected');_0x334d44['comments']=[];for(let _0x1da542=0x0;_0x1da542<object['comments']['length'];++_0x1da542)_0x334d44['comments'][_0x1da542]=String(object['comments'][_0x1da542]);}if(object['commentsV2']){if(!Array['isArray'](object['commentsV2']))throw TypeError('.CommentsV2GetCommentThreadResponse.commentsV2:\x20array\x20expected');_0x334d44['commentsV2']=[];for(let _0x2e8b52=0x0;_0x2e8b52<object['commentsV2']['length'];++_0x2e8b52){if('object'!=typeof object['commentsV2'][_0x2e8b52])throw TypeError('.CommentsV2GetCommentThreadResponse.commentsV2:\x20object\x20expected');_0x334d44['commentsV2'][_0x2e8b52]=$root['CommentDescriptor']['fromObject'](object['commentsV2'][_0x2e8b52]);}}return null!=object['resolvedAt']&&(_0x334d44['resolvedAt']=String(object['resolvedAt'])),null!=object['resolvedBy']&&(_0x334d44['resolvedBy']=String(object['resolvedBy'])),null!=object['context']&&(_0x334d44['context']=String(object['context'])),null!=object['createdAt']&&(_0x334d44['createdAt']=String(object['createdAt'])),null!=object['deletedAt']&&(_0x334d44['deletedAt']=String(object['deletedAt'])),null!=object['attributes']&&(_0x334d44['attributes']=String(object['attributes'])),null!=object['unlinkedAt']&&(_0x334d44['unlinkedAt']=String(object['unlinkedAt'])),_0x334d44;},CommentsV2GetCommentThreadResponse['toObject']=function(_0x3897f2,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['comments']=[],object['commentsV2']=[]),options['defaults']&&(object['commentThreadId']='',object['resolvedAt']='',object['resolvedBy']='',object['context']='',object['createdAt']='',object['deletedAt']='',object['attributes']='',object['unlinkedAt']=''),null!=_0x3897f2['commentThreadId']&&_0x3897f2['hasOwnProperty']('commentThreadId')&&(object['commentThreadId']=_0x3897f2['commentThreadId']),_0x3897f2['comments']&&_0x3897f2['comments']['length']){object['comments']=[];for(let _0x4d773c=0x0;_0x4d773c<_0x3897f2['comments']['length'];++_0x4d773c)object['comments'][_0x4d773c]=_0x3897f2['comments'][_0x4d773c];}if(_0x3897f2['commentsV2']&&_0x3897f2['commentsV2']['length']){object['commentsV2']=[];for(let _0x170905=0x0;_0x170905<_0x3897f2['commentsV2']['length'];++_0x170905)object['commentsV2'][_0x170905]=$root['CommentDescriptor']['toObject'](_0x3897f2['commentsV2'][_0x170905],options);}return null!=_0x3897f2['resolvedAt']&&_0x3897f2['hasOwnProperty']('resolvedAt')&&(object['resolvedAt']=_0x3897f2['resolvedAt']),null!=_0x3897f2['resolvedBy']&&_0x3897f2['hasOwnProperty']('resolvedBy')&&(object['resolvedBy']=_0x3897f2['resolvedBy']),null!=_0x3897f2['context']&&_0x3897f2['hasOwnProperty']('context')&&(object['context']=_0x3897f2['context']),null!=_0x3897f2['createdAt']&&_0x3897f2['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x3897f2['createdAt']),null!=_0x3897f2['deletedAt']&&_0x3897f2['hasOwnProperty']('deletedAt')&&(object['deletedAt']=_0x3897f2['deletedAt']),null!=_0x3897f2['attributes']&&_0x3897f2['hasOwnProperty']('attributes')&&(object['attributes']=_0x3897f2['attributes']),null!=_0x3897f2['unlinkedAt']&&_0x3897f2['hasOwnProperty']('unlinkedAt')&&(object['unlinkedAt']=_0x3897f2['unlinkedAt']),object;},CommentsV2GetCommentThreadResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2GetCommentThreadResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2GetCommentThreadResponse';},CommentsV2GetCommentThreadResponse;})()),$root['CommentsV2GetDocumentThreadsResponse']=((()=>{function CommentsV2GetDocumentThreadsResponse(properties){if(this['threads']=[],this['threadsV2']=[],properties){for(let _0x40fbf6=Object['keys'](properties),_0x2d5abd=0x0;_0x2d5abd<_0x40fbf6['length'];++_0x2d5abd)null!=properties[_0x40fbf6[_0x2d5abd]]&&(this[_0x40fbf6[_0x2d5abd]]=properties[_0x40fbf6[_0x2d5abd]]);}}return CommentsV2GetDocumentThreadsResponse['prototype']['threads']=$util['emptyArray'],CommentsV2GetDocumentThreadsResponse['prototype']['threadsV2']=$util['emptyArray'],CommentsV2GetDocumentThreadsResponse['create']=function(properties){return new CommentsV2GetDocumentThreadsResponse(properties);},CommentsV2GetDocumentThreadsResponse['encode']=function(_0x4c25c8,writer){if(writer||(writer=$Writer['create']()),null!=_0x4c25c8['threads']&&_0x4c25c8['threads']['length']){for(let _0x4327b4=0x0;_0x4327b4<_0x4c25c8['threads']['length'];++_0x4327b4)writer['uint32'](0xa)['string'](_0x4c25c8['threads'][_0x4327b4]);}if(null!=_0x4c25c8['threadsV2']&&_0x4c25c8['threadsV2']['length']){for(let _0x26f0fa=0x0;_0x26f0fa<_0x4c25c8['threadsV2']['length'];++_0x26f0fa)$root['CommentsThreadDescriptor']['encode'](_0x4c25c8['threadsV2'][_0x26f0fa],writer['uint32'](0x12)['fork']())['ldelim']();}return writer;},CommentsV2GetDocumentThreadsResponse['encodeDelimited']=function(_0x5e846c,writer){return this['encode'](_0x5e846c,writer)['ldelim']();},CommentsV2GetDocumentThreadsResponse['decode']=function(_0x35ad66,length){_0x35ad66 instanceof $Reader||(_0x35ad66=$Reader['create'](_0x35ad66));let _0x50ef5e=void 0x0===length?_0x35ad66['len']:_0x35ad66['pos']+length,_0x1db646=new $root['CommentsV2GetDocumentThreadsResponse']();for(;_0x35ad66['pos']<_0x50ef5e;){let tag=_0x35ad66['uint32']();switch(tag>>>0x3){case 0x1:_0x1db646['threads']&&_0x1db646['threads']['length']||(_0x1db646['threads']=[]),_0x1db646['threads']['push'](_0x35ad66['string']());break;case 0x2:_0x1db646['threadsV2']&&_0x1db646['threadsV2']['length']||(_0x1db646['threadsV2']=[]),_0x1db646['threadsV2']['push']($root['CommentsThreadDescriptor']['decode'](_0x35ad66,_0x35ad66['uint32']()));break;default:_0x35ad66['skipType'](0x7&tag);}}return _0x1db646;},CommentsV2GetDocumentThreadsResponse['decodeDelimited']=function(_0x248a97){return _0x248a97 instanceof $Reader||(_0x248a97=new $Reader(_0x248a97)),this['decode'](_0x248a97,_0x248a97['uint32']());},CommentsV2GetDocumentThreadsResponse['verify']=function(_0x24c233){if('object'!=typeof _0x24c233||null===_0x24c233)return'object\x20expected';if(null!=_0x24c233['threads']&&_0x24c233['hasOwnProperty']('threads')){if(!Array['isArray'](_0x24c233['threads']))return'threads:\x20array\x20expected';for(let _0x20cb6a=0x0;_0x20cb6a<_0x24c233['threads']['length'];++_0x20cb6a)if(!$util['isString'](_0x24c233['threads'][_0x20cb6a]))return'threads:\x20string[]\x20expected';}if(null!=_0x24c233['threadsV2']&&_0x24c233['hasOwnProperty']('threadsV2')){if(!Array['isArray'](_0x24c233['threadsV2']))return'threadsV2:\x20array\x20expected';for(let _0x1897fa=0x0;_0x1897fa<_0x24c233['threadsV2']['length'];++_0x1897fa){let _0x8df5f1=$root['CommentsThreadDescriptor']['verify'](_0x24c233['threadsV2'][_0x1897fa]);if(_0x8df5f1)return'threadsV2.'+_0x8df5f1;}}return null;},CommentsV2GetDocumentThreadsResponse['fromObject']=function(object){if(object instanceof $root['CommentsV2GetDocumentThreadsResponse'])return object;let _0x5acf6b=new $root['CommentsV2GetDocumentThreadsResponse']();if(object['threads']){if(!Array['isArray'](object['threads']))throw TypeError('.CommentsV2GetDocumentThreadsResponse.threads:\x20array\x20expected');_0x5acf6b['threads']=[];for(let _0x1cb241=0x0;_0x1cb241<object['threads']['length'];++_0x1cb241)_0x5acf6b['threads'][_0x1cb241]=String(object['threads'][_0x1cb241]);}if(object['threadsV2']){if(!Array['isArray'](object['threadsV2']))throw TypeError('.CommentsV2GetDocumentThreadsResponse.threadsV2:\x20array\x20expected');_0x5acf6b['threadsV2']=[];for(let _0xcf6ae1=0x0;_0xcf6ae1<object['threadsV2']['length'];++_0xcf6ae1){if('object'!=typeof object['threadsV2'][_0xcf6ae1])throw TypeError('.CommentsV2GetDocumentThreadsResponse.threadsV2:\x20object\x20expected');_0x5acf6b['threadsV2'][_0xcf6ae1]=$root['CommentsThreadDescriptor']['fromObject'](object['threadsV2'][_0xcf6ae1]);}}return _0x5acf6b;},CommentsV2GetDocumentThreadsResponse['toObject']=function(_0x9d7e81,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['threads']=[],object['threadsV2']=[]),_0x9d7e81['threads']&&_0x9d7e81['threads']['length']){object['threads']=[];for(let _0x547912=0x0;_0x547912<_0x9d7e81['threads']['length'];++_0x547912)object['threads'][_0x547912]=_0x9d7e81['threads'][_0x547912];}if(_0x9d7e81['threadsV2']&&_0x9d7e81['threadsV2']['length']){object['threadsV2']=[];for(let _0x294e4d=0x0;_0x294e4d<_0x9d7e81['threadsV2']['length'];++_0x294e4d)object['threadsV2'][_0x294e4d]=$root['CommentsThreadDescriptor']['toObject'](_0x9d7e81['threadsV2'][_0x294e4d],options);}return object;},CommentsV2GetDocumentThreadsResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},CommentsV2GetDocumentThreadsResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/CommentsV2GetDocumentThreadsResponse';},CommentsV2GetDocumentThreadsResponse;})()),$root['KeyValueDescriptor']=((()=>{function KeyValueDescriptor(properties){if(properties){for(let _0x4c63d1=Object['keys'](properties),_0x1a7f14=0x0;_0x1a7f14<_0x4c63d1['length'];++_0x1a7f14)null!=properties[_0x4c63d1[_0x1a7f14]]&&(this[_0x4c63d1[_0x1a7f14]]=properties[_0x4c63d1[_0x1a7f14]]);}}return KeyValueDescriptor['prototype']['key']='',KeyValueDescriptor['prototype']['value']='',KeyValueDescriptor['create']=function(properties){return new KeyValueDescriptor(properties);},KeyValueDescriptor['encode']=function(_0x1553fe,writer){return writer||(writer=$Writer['create']()),null!=_0x1553fe['key']&&Object['hasOwnProperty']['call'](_0x1553fe,'key')&&writer['uint32'](0xa)['string'](_0x1553fe['key']),null!=_0x1553fe['value']&&Object['hasOwnProperty']['call'](_0x1553fe,'value')&&writer['uint32'](0x12)['string'](_0x1553fe['value']),writer;},KeyValueDescriptor['encodeDelimited']=function(_0x5d688c,writer){return this['encode'](_0x5d688c,writer)['ldelim']();},KeyValueDescriptor['decode']=function(_0x2106c7,length){_0x2106c7 instanceof $Reader||(_0x2106c7=$Reader['create'](_0x2106c7));let _0x46995c=void 0x0===length?_0x2106c7['len']:_0x2106c7['pos']+length,_0xaaf205=new $root['KeyValueDescriptor']();for(;_0x2106c7['pos']<_0x46995c;){let tag=_0x2106c7['uint32']();switch(tag>>>0x3){case 0x1:_0xaaf205['key']=_0x2106c7['string']();break;case 0x2:_0xaaf205['value']=_0x2106c7['string']();break;default:_0x2106c7['skipType'](0x7&tag);}}return _0xaaf205;},KeyValueDescriptor['decodeDelimited']=function(_0x4cc850){return _0x4cc850 instanceof $Reader||(_0x4cc850=new $Reader(_0x4cc850)),this['decode'](_0x4cc850,_0x4cc850['uint32']());},KeyValueDescriptor['verify']=function(_0x53ea67){return'object'!=typeof _0x53ea67||null===_0x53ea67?'object\x20expected':null!=_0x53ea67['key']&&_0x53ea67['hasOwnProperty']('key')&&!$util['isString'](_0x53ea67['key'])?'key:\x20string\x20expected':null!=_0x53ea67['value']&&_0x53ea67['hasOwnProperty']('value')&&!$util['isString'](_0x53ea67['value'])?'value:\x20string\x20expected':null;},KeyValueDescriptor['fromObject']=function(object){if(object instanceof $root['KeyValueDescriptor'])return object;let _0x5163a4=new $root['KeyValueDescriptor']();return null!=object['key']&&(_0x5163a4['key']=String(object['key'])),null!=object['value']&&(_0x5163a4['value']=String(object['value'])),_0x5163a4;},KeyValueDescriptor['toObject']=function(_0x20acc5,options){options||(options={});let object={};return options['defaults']&&(object['key']='',object['value']=''),null!=_0x20acc5['key']&&_0x20acc5['hasOwnProperty']('key')&&(object['key']=_0x20acc5['key']),null!=_0x20acc5['value']&&_0x20acc5['hasOwnProperty']('value')&&(object['value']=_0x20acc5['value']),object;},KeyValueDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},KeyValueDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/KeyValueDescriptor';},KeyValueDescriptor;})()),$root['IsEditorBundleUploadedMessage']=((()=>{function IsEditorBundleUploadedMessage(properties){if(properties){for(let _0x5b3fd2=Object['keys'](properties),_0x482a56=0x0;_0x482a56<_0x5b3fd2['length'];++_0x482a56)null!=properties[_0x5b3fd2[_0x482a56]]&&(this[_0x5b3fd2[_0x482a56]]=properties[_0x5b3fd2[_0x482a56]]);}}return IsEditorBundleUploadedMessage['prototype']['bundleVersion']='',IsEditorBundleUploadedMessage['create']=function(properties){return new IsEditorBundleUploadedMessage(properties);},IsEditorBundleUploadedMessage['encode']=function(_0x4ec1fc,writer){return writer||(writer=$Writer['create']()),null!=_0x4ec1fc['bundleVersion']&&Object['hasOwnProperty']['call'](_0x4ec1fc,'bundleVersion')&&writer['uint32'](0xa)['string'](_0x4ec1fc['bundleVersion']),writer;},IsEditorBundleUploadedMessage['encodeDelimited']=function(_0x136682,writer){return this['encode'](_0x136682,writer)['ldelim']();},IsEditorBundleUploadedMessage['decode']=function(_0x252cef,length){_0x252cef instanceof $Reader||(_0x252cef=$Reader['create'](_0x252cef));let _0x409d5c=void 0x0===length?_0x252cef['len']:_0x252cef['pos']+length,_0x2eef3e=new $root['IsEditorBundleUploadedMessage']();for(;_0x252cef['pos']<_0x409d5c;){let tag=_0x252cef['uint32']();if(tag>>>0x3==0x1)_0x2eef3e['bundleVersion']=_0x252cef['string']();else _0x252cef['skipType'](0x7&tag);}return _0x2eef3e;},IsEditorBundleUploadedMessage['decodeDelimited']=function(_0x465524){return _0x465524 instanceof $Reader||(_0x465524=new $Reader(_0x465524)),this['decode'](_0x465524,_0x465524['uint32']());},IsEditorBundleUploadedMessage['verify']=function(_0x491470){return'object'!=typeof _0x491470||null===_0x491470?'object\x20expected':null!=_0x491470['bundleVersion']&&_0x491470['hasOwnProperty']('bundleVersion')&&!$util['isString'](_0x491470['bundleVersion'])?'bundleVersion:\x20string\x20expected':null;},IsEditorBundleUploadedMessage['fromObject']=function(object){if(object instanceof $root['IsEditorBundleUploadedMessage'])return object;let _0x3514e5=new $root['IsEditorBundleUploadedMessage']();return null!=object['bundleVersion']&&(_0x3514e5['bundleVersion']=String(object['bundleVersion'])),_0x3514e5;},IsEditorBundleUploadedMessage['toObject']=function(_0x481f01,options){options||(options={});let object={};return options['defaults']&&(object['bundleVersion']=''),null!=_0x481f01['bundleVersion']&&_0x481f01['hasOwnProperty']('bundleVersion')&&(object['bundleVersion']=_0x481f01['bundleVersion']),object;},IsEditorBundleUploadedMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},IsEditorBundleUploadedMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/IsEditorBundleUploadedMessage';},IsEditorBundleUploadedMessage;})()),$root['IsEditorBundleUploadedResponse']=((()=>{function IsEditorBundleUploadedResponse(properties){if(properties){for(let _0x3adcd0=Object['keys'](properties),_0x2031c3=0x0;_0x2031c3<_0x3adcd0['length'];++_0x2031c3)null!=properties[_0x3adcd0[_0x2031c3]]&&(this[_0x3adcd0[_0x2031c3]]=properties[_0x3adcd0[_0x2031c3]]);}}return IsEditorBundleUploadedResponse['prototype']['isUploaded']=!0x1,IsEditorBundleUploadedResponse['create']=function(properties){return new IsEditorBundleUploadedResponse(properties);},IsEditorBundleUploadedResponse['encode']=function(_0xfc7fe7,writer){return writer||(writer=$Writer['create']()),null!=_0xfc7fe7['isUploaded']&&Object['hasOwnProperty']['call'](_0xfc7fe7,'isUploaded')&&writer['uint32'](0x8)['bool'](_0xfc7fe7['isUploaded']),writer;},IsEditorBundleUploadedResponse['encodeDelimited']=function(_0x1a9c4b,writer){return this['encode'](_0x1a9c4b,writer)['ldelim']();},IsEditorBundleUploadedResponse['decode']=function(_0x218c2d,length){_0x218c2d instanceof $Reader||(_0x218c2d=$Reader['create'](_0x218c2d));let _0x249750=void 0x0===length?_0x218c2d['len']:_0x218c2d['pos']+length,_0x30763d=new $root['IsEditorBundleUploadedResponse']();for(;_0x218c2d['pos']<_0x249750;){let tag=_0x218c2d['uint32']();if(tag>>>0x3==0x1)_0x30763d['isUploaded']=_0x218c2d['bool']();else _0x218c2d['skipType'](0x7&tag);}return _0x30763d;},IsEditorBundleUploadedResponse['decodeDelimited']=function(_0x2ec677){return _0x2ec677 instanceof $Reader||(_0x2ec677=new $Reader(_0x2ec677)),this['decode'](_0x2ec677,_0x2ec677['uint32']());},IsEditorBundleUploadedResponse['verify']=function(_0x49be59){return'object'!=typeof _0x49be59||null===_0x49be59?'object\x20expected':null!=_0x49be59['isUploaded']&&_0x49be59['hasOwnProperty']('isUploaded')&&'boolean'!=typeof _0x49be59['isUploaded']?'isUploaded:\x20boolean\x20expected':null;},IsEditorBundleUploadedResponse['fromObject']=function(object){if(object instanceof $root['IsEditorBundleUploadedResponse'])return object;let _0x5dfc43=new $root['IsEditorBundleUploadedResponse']();return null!=object['isUploaded']&&(_0x5dfc43['isUploaded']=Boolean(object['isUploaded'])),_0x5dfc43;},IsEditorBundleUploadedResponse['toObject']=function(_0x3cd2f1,options){options||(options={});let object={};return options['defaults']&&(object['isUploaded']=!0x1),null!=_0x3cd2f1['isUploaded']&&_0x3cd2f1['hasOwnProperty']('isUploaded')&&(object['isUploaded']=_0x3cd2f1['isUploaded']),object;},IsEditorBundleUploadedResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},IsEditorBundleUploadedResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/IsEditorBundleUploadedResponse';},IsEditorBundleUploadedResponse;})()),$root['RevisionDescriptor']=((()=>{function RevisionDescriptor(properties){if(properties){for(let _0x99b05e=Object['keys'](properties),_0x50baac=0x0;_0x50baac<_0x99b05e['length'];++_0x50baac)null!=properties[_0x99b05e[_0x50baac]]&&(this[_0x99b05e[_0x50baac]]=properties[_0x99b05e[_0x50baac]]);}}return RevisionDescriptor['prototype']['revisionId']='',RevisionDescriptor['prototype']['name']='',RevisionDescriptor['prototype']['creatorId']='',RevisionDescriptor['prototype']['authorsIds']='',RevisionDescriptor['prototype']['diffData']='',RevisionDescriptor['prototype']['createdAt']='',RevisionDescriptor['prototype']['attributes']='',RevisionDescriptor['prototype']['toVersion']=0x0,RevisionDescriptor['prototype']['fromVersion']=0x0,RevisionDescriptor['prototype']['isEmptyCurrent']=!0x1,RevisionDescriptor['create']=function(properties){return new RevisionDescriptor(properties);},RevisionDescriptor['encode']=function(_0x4f9240,writer){return writer||(writer=$Writer['create']()),null!=_0x4f9240['revisionId']&&Object['hasOwnProperty']['call'](_0x4f9240,'revisionId')&&writer['uint32'](0xa)['string'](_0x4f9240['revisionId']),null!=_0x4f9240['name']&&Object['hasOwnProperty']['call'](_0x4f9240,'name')&&writer['uint32'](0x12)['string'](_0x4f9240['name']),null!=_0x4f9240['creatorId']&&Object['hasOwnProperty']['call'](_0x4f9240,'creatorId')&&writer['uint32'](0x1a)['string'](_0x4f9240['creatorId']),null!=_0x4f9240['authorsIds']&&Object['hasOwnProperty']['call'](_0x4f9240,'authorsIds')&&writer['uint32'](0x22)['string'](_0x4f9240['authorsIds']),null!=_0x4f9240['diffData']&&Object['hasOwnProperty']['call'](_0x4f9240,'diffData')&&writer['uint32'](0x2a)['string'](_0x4f9240['diffData']),null!=_0x4f9240['createdAt']&&Object['hasOwnProperty']['call'](_0x4f9240,'createdAt')&&writer['uint32'](0x32)['string'](_0x4f9240['createdAt']),null!=_0x4f9240['attributes']&&Object['hasOwnProperty']['call'](_0x4f9240,'attributes')&&writer['uint32'](0x3a)['string'](_0x4f9240['attributes']),null!=_0x4f9240['toVersion']&&Object['hasOwnProperty']['call'](_0x4f9240,'toVersion')&&writer['uint32'](0x40)['uint32'](_0x4f9240['toVersion']),null!=_0x4f9240['fromVersion']&&Object['hasOwnProperty']['call'](_0x4f9240,'fromVersion')&&writer['uint32'](0x48)['uint32'](_0x4f9240['fromVersion']),null!=_0x4f9240['isEmptyCurrent']&&Object['hasOwnProperty']['call'](_0x4f9240,'isEmptyCurrent')&&writer['uint32'](0x50)['bool'](_0x4f9240['isEmptyCurrent']),writer;},RevisionDescriptor['encodeDelimited']=function(_0x1cdccc,writer){return this['encode'](_0x1cdccc,writer)['ldelim']();},RevisionDescriptor['decode']=function(_0x3c4f15,length){_0x3c4f15 instanceof $Reader||(_0x3c4f15=$Reader['create'](_0x3c4f15));let _0x44a0a2=void 0x0===length?_0x3c4f15['len']:_0x3c4f15['pos']+length,_0x1f0a16=new $root['RevisionDescriptor']();for(;_0x3c4f15['pos']<_0x44a0a2;){let tag=_0x3c4f15['uint32']();switch(tag>>>0x3){case 0x1:_0x1f0a16['revisionId']=_0x3c4f15['string']();break;case 0x2:_0x1f0a16['name']=_0x3c4f15['string']();break;case 0x3:_0x1f0a16['creatorId']=_0x3c4f15['string']();break;case 0x4:_0x1f0a16['authorsIds']=_0x3c4f15['string']();break;case 0x5:_0x1f0a16['diffData']=_0x3c4f15['string']();break;case 0x6:_0x1f0a16['createdAt']=_0x3c4f15['string']();break;case 0x7:_0x1f0a16['attributes']=_0x3c4f15['string']();break;case 0x8:_0x1f0a16['toVersion']=_0x3c4f15['uint32']();break;case 0x9:_0x1f0a16['fromVersion']=_0x3c4f15['uint32']();break;case 0xa:_0x1f0a16['isEmptyCurrent']=_0x3c4f15['bool']();break;default:_0x3c4f15['skipType'](0x7&tag);}}return _0x1f0a16;},RevisionDescriptor['decodeDelimited']=function(_0x45ffd2){return _0x45ffd2 instanceof $Reader||(_0x45ffd2=new $Reader(_0x45ffd2)),this['decode'](_0x45ffd2,_0x45ffd2['uint32']());},RevisionDescriptor['verify']=function(_0x2b29e3){return'object'!=typeof _0x2b29e3||null===_0x2b29e3?'object\x20expected':null!=_0x2b29e3['revisionId']&&_0x2b29e3['hasOwnProperty']('revisionId')&&!$util['isString'](_0x2b29e3['revisionId'])?'revisionId:\x20string\x20expected':null!=_0x2b29e3['name']&&_0x2b29e3['hasOwnProperty']('name')&&!$util['isString'](_0x2b29e3['name'])?'name:\x20string\x20expected':null!=_0x2b29e3['creatorId']&&_0x2b29e3['hasOwnProperty']('creatorId')&&!$util['isString'](_0x2b29e3['creatorId'])?'creatorId:\x20string\x20expected':null!=_0x2b29e3['authorsIds']&&_0x2b29e3['hasOwnProperty']('authorsIds')&&!$util['isString'](_0x2b29e3['authorsIds'])?'authorsIds:\x20string\x20expected':null!=_0x2b29e3['diffData']&&_0x2b29e3['hasOwnProperty']('diffData')&&!$util['isString'](_0x2b29e3['diffData'])?'diffData:\x20string\x20expected':null!=_0x2b29e3['createdAt']&&_0x2b29e3['hasOwnProperty']('createdAt')&&!$util['isString'](_0x2b29e3['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x2b29e3['attributes']&&_0x2b29e3['hasOwnProperty']('attributes')&&!$util['isString'](_0x2b29e3['attributes'])?'attributes:\x20string\x20expected':null!=_0x2b29e3['toVersion']&&_0x2b29e3['hasOwnProperty']('toVersion')&&!$util['isInteger'](_0x2b29e3['toVersion'])?'toVersion:\x20integer\x20expected':null!=_0x2b29e3['fromVersion']&&_0x2b29e3['hasOwnProperty']('fromVersion')&&!$util['isInteger'](_0x2b29e3['fromVersion'])?'fromVersion:\x20integer\x20expected':null!=_0x2b29e3['isEmptyCurrent']&&_0x2b29e3['hasOwnProperty']('isEmptyCurrent')&&'boolean'!=typeof _0x2b29e3['isEmptyCurrent']?'isEmptyCurrent:\x20boolean\x20expected':null;},RevisionDescriptor['fromObject']=function(object){if(object instanceof $root['RevisionDescriptor'])return object;let _0x2b9d96=new $root['RevisionDescriptor']();return null!=object['revisionId']&&(_0x2b9d96['revisionId']=String(object['revisionId'])),null!=object['name']&&(_0x2b9d96['name']=String(object['name'])),null!=object['creatorId']&&(_0x2b9d96['creatorId']=String(object['creatorId'])),null!=object['authorsIds']&&(_0x2b9d96['authorsIds']=String(object['authorsIds'])),null!=object['diffData']&&(_0x2b9d96['diffData']=String(object['diffData'])),null!=object['createdAt']&&(_0x2b9d96['createdAt']=String(object['createdAt'])),null!=object['attributes']&&(_0x2b9d96['attributes']=String(object['attributes'])),null!=object['toVersion']&&(_0x2b9d96['toVersion']=object['toVersion']>>>0x0),null!=object['fromVersion']&&(_0x2b9d96['fromVersion']=object['fromVersion']>>>0x0),null!=object['isEmptyCurrent']&&(_0x2b9d96['isEmptyCurrent']=Boolean(object['isEmptyCurrent'])),_0x2b9d96;},RevisionDescriptor['toObject']=function(_0x1d8cbe,options){options||(options={});let object={};return options['defaults']&&(object['revisionId']='',object['name']='',object['creatorId']='',object['authorsIds']='',object['diffData']='',object['createdAt']='',object['attributes']='',object['toVersion']=0x0,object['fromVersion']=0x0,object['isEmptyCurrent']=!0x1),null!=_0x1d8cbe['revisionId']&&_0x1d8cbe['hasOwnProperty']('revisionId')&&(object['revisionId']=_0x1d8cbe['revisionId']),null!=_0x1d8cbe['name']&&_0x1d8cbe['hasOwnProperty']('name')&&(object['name']=_0x1d8cbe['name']),null!=_0x1d8cbe['creatorId']&&_0x1d8cbe['hasOwnProperty']('creatorId')&&(object['creatorId']=_0x1d8cbe['creatorId']),null!=_0x1d8cbe['authorsIds']&&_0x1d8cbe['hasOwnProperty']('authorsIds')&&(object['authorsIds']=_0x1d8cbe['authorsIds']),null!=_0x1d8cbe['diffData']&&_0x1d8cbe['hasOwnProperty']('diffData')&&(object['diffData']=_0x1d8cbe['diffData']),null!=_0x1d8cbe['createdAt']&&_0x1d8cbe['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x1d8cbe['createdAt']),null!=_0x1d8cbe['attributes']&&_0x1d8cbe['hasOwnProperty']('attributes')&&(object['attributes']=_0x1d8cbe['attributes']),null!=_0x1d8cbe['toVersion']&&_0x1d8cbe['hasOwnProperty']('toVersion')&&(object['toVersion']=_0x1d8cbe['toVersion']),null!=_0x1d8cbe['fromVersion']&&_0x1d8cbe['hasOwnProperty']('fromVersion')&&(object['fromVersion']=_0x1d8cbe['fromVersion']),null!=_0x1d8cbe['isEmptyCurrent']&&_0x1d8cbe['hasOwnProperty']('isEmptyCurrent')&&(object['isEmptyCurrent']=_0x1d8cbe['isEmptyCurrent']),object;},RevisionDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionDescriptor';},RevisionDescriptor;})()),$root['RevisionHistoryConnectMessage']=((()=>{function RevisionHistoryConnectMessage(properties){if(properties){for(let _0x1a2f96=Object['keys'](properties),_0x4b62f7=0x0;_0x4b62f7<_0x1a2f96['length'];++_0x4b62f7)null!=properties[_0x1a2f96[_0x4b62f7]]&&(this[_0x1a2f96[_0x4b62f7]]=properties[_0x1a2f96[_0x4b62f7]]);}}return RevisionHistoryConnectMessage['prototype']['documentId']='',RevisionHistoryConnectMessage['create']=function(properties){return new RevisionHistoryConnectMessage(properties);},RevisionHistoryConnectMessage['encode']=function(_0x18041f,writer){return writer||(writer=$Writer['create']()),null!=_0x18041f['documentId']&&Object['hasOwnProperty']['call'](_0x18041f,'documentId')&&writer['uint32'](0xa)['string'](_0x18041f['documentId']),writer;},RevisionHistoryConnectMessage['encodeDelimited']=function(_0x17de2c,writer){return this['encode'](_0x17de2c,writer)['ldelim']();},RevisionHistoryConnectMessage['decode']=function(_0x3bb551,length){_0x3bb551 instanceof $Reader||(_0x3bb551=$Reader['create'](_0x3bb551));let _0x3f9578=void 0x0===length?_0x3bb551['len']:_0x3bb551['pos']+length,_0x225437=new $root['RevisionHistoryConnectMessage']();for(;_0x3bb551['pos']<_0x3f9578;){let tag=_0x3bb551['uint32']();if(tag>>>0x3==0x1)_0x225437['documentId']=_0x3bb551['string']();else _0x3bb551['skipType'](0x7&tag);}return _0x225437;},RevisionHistoryConnectMessage['decodeDelimited']=function(_0x25c7db){return _0x25c7db instanceof $Reader||(_0x25c7db=new $Reader(_0x25c7db)),this['decode'](_0x25c7db,_0x25c7db['uint32']());},RevisionHistoryConnectMessage['verify']=function(_0x243cea){return'object'!=typeof _0x243cea||null===_0x243cea?'object\x20expected':null!=_0x243cea['documentId']&&_0x243cea['hasOwnProperty']('documentId')&&!$util['isString'](_0x243cea['documentId'])?'documentId:\x20string\x20expected':null;},RevisionHistoryConnectMessage['fromObject']=function(object){if(object instanceof $root['RevisionHistoryConnectMessage'])return object;let _0x2a4dcc=new $root['RevisionHistoryConnectMessage']();return null!=object['documentId']&&(_0x2a4dcc['documentId']=String(object['documentId'])),_0x2a4dcc;},RevisionHistoryConnectMessage['toObject']=function(_0x4aa050,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x4aa050['documentId']&&_0x4aa050['hasOwnProperty']('documentId')&&(object['documentId']=_0x4aa050['documentId']),object;},RevisionHistoryConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryConnectMessage';},RevisionHistoryConnectMessage;})()),$root['RevisionHistoryGetRevisionMessage']=((()=>{function RevisionHistoryGetRevisionMessage(properties){if(properties){for(let _0x275823=Object['keys'](properties),_0x361a22=0x0;_0x361a22<_0x275823['length'];++_0x361a22)null!=properties[_0x275823[_0x361a22]]&&(this[_0x275823[_0x361a22]]=properties[_0x275823[_0x361a22]]);}}return RevisionHistoryGetRevisionMessage['prototype']['documentId']='',RevisionHistoryGetRevisionMessage['prototype']['revisionId']='',RevisionHistoryGetRevisionMessage['create']=function(properties){return new RevisionHistoryGetRevisionMessage(properties);},RevisionHistoryGetRevisionMessage['encode']=function(_0x401be7,writer){return writer||(writer=$Writer['create']()),null!=_0x401be7['documentId']&&Object['hasOwnProperty']['call'](_0x401be7,'documentId')&&writer['uint32'](0xa)['string'](_0x401be7['documentId']),null!=_0x401be7['revisionId']&&Object['hasOwnProperty']['call'](_0x401be7,'revisionId')&&writer['uint32'](0x12)['string'](_0x401be7['revisionId']),writer;},RevisionHistoryGetRevisionMessage['encodeDelimited']=function(_0x4f8afb,writer){return this['encode'](_0x4f8afb,writer)['ldelim']();},RevisionHistoryGetRevisionMessage['decode']=function(_0x34ece6,length){_0x34ece6 instanceof $Reader||(_0x34ece6=$Reader['create'](_0x34ece6));let _0x562fc0=void 0x0===length?_0x34ece6['len']:_0x34ece6['pos']+length,_0x134aff=new $root['RevisionHistoryGetRevisionMessage']();for(;_0x34ece6['pos']<_0x562fc0;){let tag=_0x34ece6['uint32']();switch(tag>>>0x3){case 0x1:_0x134aff['documentId']=_0x34ece6['string']();break;case 0x2:_0x134aff['revisionId']=_0x34ece6['string']();break;default:_0x34ece6['skipType'](0x7&tag);}}return _0x134aff;},RevisionHistoryGetRevisionMessage['decodeDelimited']=function(_0x25ac8e){return _0x25ac8e instanceof $Reader||(_0x25ac8e=new $Reader(_0x25ac8e)),this['decode'](_0x25ac8e,_0x25ac8e['uint32']());},RevisionHistoryGetRevisionMessage['verify']=function(_0x57423b){return'object'!=typeof _0x57423b||null===_0x57423b?'object\x20expected':null!=_0x57423b['documentId']&&_0x57423b['hasOwnProperty']('documentId')&&!$util['isString'](_0x57423b['documentId'])?'documentId:\x20string\x20expected':null!=_0x57423b['revisionId']&&_0x57423b['hasOwnProperty']('revisionId')&&!$util['isString'](_0x57423b['revisionId'])?'revisionId:\x20string\x20expected':null;},RevisionHistoryGetRevisionMessage['fromObject']=function(object){if(object instanceof $root['RevisionHistoryGetRevisionMessage'])return object;let _0x11f25f=new $root['RevisionHistoryGetRevisionMessage']();return null!=object['documentId']&&(_0x11f25f['documentId']=String(object['documentId'])),null!=object['revisionId']&&(_0x11f25f['revisionId']=String(object['revisionId'])),_0x11f25f;},RevisionHistoryGetRevisionMessage['toObject']=function(_0x4e9be6,options){options||(options={});let object={};return options['defaults']&&(object['documentId']='',object['revisionId']=''),null!=_0x4e9be6['documentId']&&_0x4e9be6['hasOwnProperty']('documentId')&&(object['documentId']=_0x4e9be6['documentId']),null!=_0x4e9be6['revisionId']&&_0x4e9be6['hasOwnProperty']('revisionId')&&(object['revisionId']=_0x4e9be6['revisionId']),object;},RevisionHistoryGetRevisionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryGetRevisionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryGetRevisionMessage';},RevisionHistoryGetRevisionMessage;})()),$root['RevisionHistoryReconnectMessage']=((()=>{function RevisionHistoryReconnectMessage(properties){if(properties){for(let _0x4c764c=Object['keys'](properties),_0x566350=0x0;_0x566350<_0x4c764c['length'];++_0x566350)null!=properties[_0x4c764c[_0x566350]]&&(this[_0x4c764c[_0x566350]]=properties[_0x4c764c[_0x566350]]);}}return RevisionHistoryReconnectMessage['prototype']['documentId']='',RevisionHistoryReconnectMessage['prototype']['requestId']=0x0,RevisionHistoryReconnectMessage['create']=function(properties){return new RevisionHistoryReconnectMessage(properties);},RevisionHistoryReconnectMessage['encode']=function(_0x1ddd8c,writer){return writer||(writer=$Writer['create']()),null!=_0x1ddd8c['documentId']&&Object['hasOwnProperty']['call'](_0x1ddd8c,'documentId')&&writer['uint32'](0xa)['string'](_0x1ddd8c['documentId']),null!=_0x1ddd8c['requestId']&&Object['hasOwnProperty']['call'](_0x1ddd8c,'requestId')&&writer['uint32'](0x10)['uint32'](_0x1ddd8c['requestId']),writer;},RevisionHistoryReconnectMessage['encodeDelimited']=function(_0x2ac484,writer){return this['encode'](_0x2ac484,writer)['ldelim']();},RevisionHistoryReconnectMessage['decode']=function(_0x5523b3,length){_0x5523b3 instanceof $Reader||(_0x5523b3=$Reader['create'](_0x5523b3));let _0x4c4be4=void 0x0===length?_0x5523b3['len']:_0x5523b3['pos']+length,_0x114a23=new $root['RevisionHistoryReconnectMessage']();for(;_0x5523b3['pos']<_0x4c4be4;){let tag=_0x5523b3['uint32']();switch(tag>>>0x3){case 0x1:_0x114a23['documentId']=_0x5523b3['string']();break;case 0x2:_0x114a23['requestId']=_0x5523b3['uint32']();break;default:_0x5523b3['skipType'](0x7&tag);}}return _0x114a23;},RevisionHistoryReconnectMessage['decodeDelimited']=function(_0x137859){return _0x137859 instanceof $Reader||(_0x137859=new $Reader(_0x137859)),this['decode'](_0x137859,_0x137859['uint32']());},RevisionHistoryReconnectMessage['verify']=function(_0x5f5da3){return'object'!=typeof _0x5f5da3||null===_0x5f5da3?'object\x20expected':null!=_0x5f5da3['documentId']&&_0x5f5da3['hasOwnProperty']('documentId')&&!$util['isString'](_0x5f5da3['documentId'])?'documentId:\x20string\x20expected':null!=_0x5f5da3['requestId']&&_0x5f5da3['hasOwnProperty']('requestId')&&!$util['isInteger'](_0x5f5da3['requestId'])?'requestId:\x20integer\x20expected':null;},RevisionHistoryReconnectMessage['fromObject']=function(object){if(object instanceof $root['RevisionHistoryReconnectMessage'])return object;let _0x5ebce2=new $root['RevisionHistoryReconnectMessage']();return null!=object['documentId']&&(_0x5ebce2['documentId']=String(object['documentId'])),null!=object['requestId']&&(_0x5ebce2['requestId']=object['requestId']>>>0x0),_0x5ebce2;},RevisionHistoryReconnectMessage['toObject']=function(_0x56c103,options){options||(options={});let object={};return options['defaults']&&(object['documentId']='',object['requestId']=0x0),null!=_0x56c103['documentId']&&_0x56c103['hasOwnProperty']('documentId')&&(object['documentId']=_0x56c103['documentId']),null!=_0x56c103['requestId']&&_0x56c103['hasOwnProperty']('requestId')&&(object['requestId']=_0x56c103['requestId']),object;},RevisionHistoryReconnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryReconnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryReconnectMessage';},RevisionHistoryReconnectMessage;})()),$root['RevisionHistoryUpdateRevisionsMessage']=((()=>{function RevisionHistoryUpdateRevisionsMessage(properties){if(this['revisions']=[],properties){for(let _0x4841f2=Object['keys'](properties),_0x3d7d63=0x0;_0x3d7d63<_0x4841f2['length'];++_0x3d7d63)null!=properties[_0x4841f2[_0x3d7d63]]&&(this[_0x4841f2[_0x3d7d63]]=properties[_0x4841f2[_0x3d7d63]]);}}return RevisionHistoryUpdateRevisionsMessage['prototype']['documentId']='',RevisionHistoryUpdateRevisionsMessage['prototype']['requestId']=0x0,RevisionHistoryUpdateRevisionsMessage['prototype']['revisions']=$util['emptyArray'],RevisionHistoryUpdateRevisionsMessage['create']=function(properties){return new RevisionHistoryUpdateRevisionsMessage(properties);},RevisionHistoryUpdateRevisionsMessage['encode']=function(_0x164157,writer){if(writer||(writer=$Writer['create']()),null!=_0x164157['documentId']&&Object['hasOwnProperty']['call'](_0x164157,'documentId')&&writer['uint32'](0xa)['string'](_0x164157['documentId']),null!=_0x164157['requestId']&&Object['hasOwnProperty']['call'](_0x164157,'requestId')&&writer['uint32'](0x10)['uint32'](_0x164157['requestId']),null!=_0x164157['revisions']&&_0x164157['revisions']['length']){for(let _0x1e8160=0x0;_0x1e8160<_0x164157['revisions']['length'];++_0x1e8160)$root['RevisionDescriptor']['encode'](_0x164157['revisions'][_0x1e8160],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},RevisionHistoryUpdateRevisionsMessage['encodeDelimited']=function(_0x36cd6d,writer){return this['encode'](_0x36cd6d,writer)['ldelim']();},RevisionHistoryUpdateRevisionsMessage['decode']=function(_0x252b15,length){_0x252b15 instanceof $Reader||(_0x252b15=$Reader['create'](_0x252b15));let _0x5f0ed8=void 0x0===length?_0x252b15['len']:_0x252b15['pos']+length,_0x5bccb9=new $root['RevisionHistoryUpdateRevisionsMessage']();for(;_0x252b15['pos']<_0x5f0ed8;){let tag=_0x252b15['uint32']();switch(tag>>>0x3){case 0x1:_0x5bccb9['documentId']=_0x252b15['string']();break;case 0x2:_0x5bccb9['requestId']=_0x252b15['uint32']();break;case 0x3:_0x5bccb9['revisions']&&_0x5bccb9['revisions']['length']||(_0x5bccb9['revisions']=[]),_0x5bccb9['revisions']['push']($root['RevisionDescriptor']['decode'](_0x252b15,_0x252b15['uint32']()));break;default:_0x252b15['skipType'](0x7&tag);}}return _0x5bccb9;},RevisionHistoryUpdateRevisionsMessage['decodeDelimited']=function(_0x24fc15){return _0x24fc15 instanceof $Reader||(_0x24fc15=new $Reader(_0x24fc15)),this['decode'](_0x24fc15,_0x24fc15['uint32']());},RevisionHistoryUpdateRevisionsMessage['verify']=function(_0x5e314d){if('object'!=typeof _0x5e314d||null===_0x5e314d)return'object\x20expected';if(null!=_0x5e314d['documentId']&&_0x5e314d['hasOwnProperty']('documentId')&&!$util['isString'](_0x5e314d['documentId']))return'documentId:\x20string\x20expected';if(null!=_0x5e314d['requestId']&&_0x5e314d['hasOwnProperty']('requestId')&&!$util['isInteger'](_0x5e314d['requestId']))return'requestId:\x20integer\x20expected';if(null!=_0x5e314d['revisions']&&_0x5e314d['hasOwnProperty']('revisions')){if(!Array['isArray'](_0x5e314d['revisions']))return'revisions:\x20array\x20expected';for(let _0x2d3494=0x0;_0x2d3494<_0x5e314d['revisions']['length'];++_0x2d3494){let _0x12cd4a=$root['RevisionDescriptor']['verify'](_0x5e314d['revisions'][_0x2d3494]);if(_0x12cd4a)return'revisions.'+_0x12cd4a;}}return null;},RevisionHistoryUpdateRevisionsMessage['fromObject']=function(object){if(object instanceof $root['RevisionHistoryUpdateRevisionsMessage'])return object;let _0x46d338=new $root['RevisionHistoryUpdateRevisionsMessage']();if(null!=object['documentId']&&(_0x46d338['documentId']=String(object['documentId'])),null!=object['requestId']&&(_0x46d338['requestId']=object['requestId']>>>0x0),object['revisions']){if(!Array['isArray'](object['revisions']))throw TypeError('.RevisionHistoryUpdateRevisionsMessage.revisions:\x20array\x20expected');_0x46d338['revisions']=[];for(let _0x1de221=0x0;_0x1de221<object['revisions']['length'];++_0x1de221){if('object'!=typeof object['revisions'][_0x1de221])throw TypeError('.RevisionHistoryUpdateRevisionsMessage.revisions:\x20object\x20expected');_0x46d338['revisions'][_0x1de221]=$root['RevisionDescriptor']['fromObject'](object['revisions'][_0x1de221]);}}return _0x46d338;},RevisionHistoryUpdateRevisionsMessage['toObject']=function(_0x46c33d,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['revisions']=[]),options['defaults']&&(object['documentId']='',object['requestId']=0x0),null!=_0x46c33d['documentId']&&_0x46c33d['hasOwnProperty']('documentId')&&(object['documentId']=_0x46c33d['documentId']),null!=_0x46c33d['requestId']&&_0x46c33d['hasOwnProperty']('requestId')&&(object['requestId']=_0x46c33d['requestId']),_0x46c33d['revisions']&&_0x46c33d['revisions']['length']){object['revisions']=[];for(let _0x5b018d=0x0;_0x5b018d<_0x46c33d['revisions']['length'];++_0x5b018d)object['revisions'][_0x5b018d]=$root['RevisionDescriptor']['toObject'](_0x46c33d['revisions'][_0x5b018d],options);}return object;},RevisionHistoryUpdateRevisionsMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryUpdateRevisionsMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryUpdateRevisionsMessage';},RevisionHistoryUpdateRevisionsMessage;})()),$root['RevisionHistoryConnectResponse']=((()=>{function RevisionHistoryConnectResponse(properties){if(this['revisions']=[],properties){for(let _0x1f3104=Object['keys'](properties),_0x4e8663=0x0;_0x4e8663<_0x1f3104['length'];++_0x4e8663)null!=properties[_0x1f3104[_0x4e8663]]&&(this[_0x1f3104[_0x4e8663]]=properties[_0x1f3104[_0x4e8663]]);}}return RevisionHistoryConnectResponse['prototype']['channel']='',RevisionHistoryConnectResponse['prototype']['requestId']=0x0,RevisionHistoryConnectResponse['prototype']['revisions']=$util['emptyArray'],RevisionHistoryConnectResponse['create']=function(properties){return new RevisionHistoryConnectResponse(properties);},RevisionHistoryConnectResponse['encode']=function(_0x2805c6,writer){if(writer||(writer=$Writer['create']()),null!=_0x2805c6['channel']&&Object['hasOwnProperty']['call'](_0x2805c6,'channel')&&writer['uint32'](0xa)['string'](_0x2805c6['channel']),null!=_0x2805c6['requestId']&&Object['hasOwnProperty']['call'](_0x2805c6,'requestId')&&writer['uint32'](0x10)['uint32'](_0x2805c6['requestId']),null!=_0x2805c6['revisions']&&_0x2805c6['revisions']['length']){for(let _0x2d8175=0x0;_0x2d8175<_0x2805c6['revisions']['length'];++_0x2d8175)$root['RevisionDescriptor']['encode'](_0x2805c6['revisions'][_0x2d8175],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},RevisionHistoryConnectResponse['encodeDelimited']=function(_0x1e7824,writer){return this['encode'](_0x1e7824,writer)['ldelim']();},RevisionHistoryConnectResponse['decode']=function(_0x1c8b3b,length){_0x1c8b3b instanceof $Reader||(_0x1c8b3b=$Reader['create'](_0x1c8b3b));let _0x35187a=void 0x0===length?_0x1c8b3b['len']:_0x1c8b3b['pos']+length,_0x42689e=new $root['RevisionHistoryConnectResponse']();for(;_0x1c8b3b['pos']<_0x35187a;){let tag=_0x1c8b3b['uint32']();switch(tag>>>0x3){case 0x1:_0x42689e['channel']=_0x1c8b3b['string']();break;case 0x2:_0x42689e['requestId']=_0x1c8b3b['uint32']();break;case 0x3:_0x42689e['revisions']&&_0x42689e['revisions']['length']||(_0x42689e['revisions']=[]),_0x42689e['revisions']['push']($root['RevisionDescriptor']['decode'](_0x1c8b3b,_0x1c8b3b['uint32']()));break;default:_0x1c8b3b['skipType'](0x7&tag);}}return _0x42689e;},RevisionHistoryConnectResponse['decodeDelimited']=function(_0x9411d9){return _0x9411d9 instanceof $Reader||(_0x9411d9=new $Reader(_0x9411d9)),this['decode'](_0x9411d9,_0x9411d9['uint32']());},RevisionHistoryConnectResponse['verify']=function(_0x275270){if('object'!=typeof _0x275270||null===_0x275270)return'object\x20expected';if(null!=_0x275270['channel']&&_0x275270['hasOwnProperty']('channel')&&!$util['isString'](_0x275270['channel']))return'channel:\x20string\x20expected';if(null!=_0x275270['requestId']&&_0x275270['hasOwnProperty']('requestId')&&!$util['isInteger'](_0x275270['requestId']))return'requestId:\x20integer\x20expected';if(null!=_0x275270['revisions']&&_0x275270['hasOwnProperty']('revisions')){if(!Array['isArray'](_0x275270['revisions']))return'revisions:\x20array\x20expected';for(let _0x23d4e0=0x0;_0x23d4e0<_0x275270['revisions']['length'];++_0x23d4e0){let _0x500bbc=$root['RevisionDescriptor']['verify'](_0x275270['revisions'][_0x23d4e0]);if(_0x500bbc)return'revisions.'+_0x500bbc;}}return null;},RevisionHistoryConnectResponse['fromObject']=function(object){if(object instanceof $root['RevisionHistoryConnectResponse'])return object;let _0x293bb8=new $root['RevisionHistoryConnectResponse']();if(null!=object['channel']&&(_0x293bb8['channel']=String(object['channel'])),null!=object['requestId']&&(_0x293bb8['requestId']=object['requestId']>>>0x0),object['revisions']){if(!Array['isArray'](object['revisions']))throw TypeError('.RevisionHistoryConnectResponse.revisions:\x20array\x20expected');_0x293bb8['revisions']=[];for(let _0x20f5e0=0x0;_0x20f5e0<object['revisions']['length'];++_0x20f5e0){if('object'!=typeof object['revisions'][_0x20f5e0])throw TypeError('.RevisionHistoryConnectResponse.revisions:\x20object\x20expected');_0x293bb8['revisions'][_0x20f5e0]=$root['RevisionDescriptor']['fromObject'](object['revisions'][_0x20f5e0]);}}return _0x293bb8;},RevisionHistoryConnectResponse['toObject']=function(_0x5922c5,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['revisions']=[]),options['defaults']&&(object['channel']='',object['requestId']=0x0),null!=_0x5922c5['channel']&&_0x5922c5['hasOwnProperty']('channel')&&(object['channel']=_0x5922c5['channel']),null!=_0x5922c5['requestId']&&_0x5922c5['hasOwnProperty']('requestId')&&(object['requestId']=_0x5922c5['requestId']),_0x5922c5['revisions']&&_0x5922c5['revisions']['length']){object['revisions']=[];for(let _0x167542=0x0;_0x167542<_0x5922c5['revisions']['length'];++_0x167542)object['revisions'][_0x167542]=$root['RevisionDescriptor']['toObject'](_0x5922c5['revisions'][_0x167542],options);}return object;},RevisionHistoryConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryConnectResponse';},RevisionHistoryConnectResponse;})()),$root['RevisionHistoryGetRevisionResponse']=((()=>{function RevisionHistoryGetRevisionResponse(properties){if(properties){for(let _0x5e7089=Object['keys'](properties),_0x2bd410=0x0;_0x2bd410<_0x5e7089['length'];++_0x2bd410)null!=properties[_0x5e7089[_0x2bd410]]&&(this[_0x5e7089[_0x2bd410]]=properties[_0x5e7089[_0x2bd410]]);}}return RevisionHistoryGetRevisionResponse['prototype']['revisionId']='',RevisionHistoryGetRevisionResponse['prototype']['name']='',RevisionHistoryGetRevisionResponse['prototype']['creatorId']='',RevisionHistoryGetRevisionResponse['prototype']['authorsIds']='',RevisionHistoryGetRevisionResponse['prototype']['diffData']='',RevisionHistoryGetRevisionResponse['prototype']['createdAt']='',RevisionHistoryGetRevisionResponse['prototype']['attributes']='',RevisionHistoryGetRevisionResponse['prototype']['toVersion']=0x0,RevisionHistoryGetRevisionResponse['prototype']['fromVersion']=0x0,RevisionHistoryGetRevisionResponse['prototype']['isEmptyCurrent']=!0x1,RevisionHistoryGetRevisionResponse['create']=function(properties){return new RevisionHistoryGetRevisionResponse(properties);},RevisionHistoryGetRevisionResponse['encode']=function(_0x468a15,writer){return writer||(writer=$Writer['create']()),null!=_0x468a15['revisionId']&&Object['hasOwnProperty']['call'](_0x468a15,'revisionId')&&writer['uint32'](0xa)['string'](_0x468a15['revisionId']),null!=_0x468a15['name']&&Object['hasOwnProperty']['call'](_0x468a15,'name')&&writer['uint32'](0x12)['string'](_0x468a15['name']),null!=_0x468a15['creatorId']&&Object['hasOwnProperty']['call'](_0x468a15,'creatorId')&&writer['uint32'](0x1a)['string'](_0x468a15['creatorId']),null!=_0x468a15['authorsIds']&&Object['hasOwnProperty']['call'](_0x468a15,'authorsIds')&&writer['uint32'](0x22)['string'](_0x468a15['authorsIds']),null!=_0x468a15['diffData']&&Object['hasOwnProperty']['call'](_0x468a15,'diffData')&&writer['uint32'](0x2a)['string'](_0x468a15['diffData']),null!=_0x468a15['createdAt']&&Object['hasOwnProperty']['call'](_0x468a15,'createdAt')&&writer['uint32'](0x32)['string'](_0x468a15['createdAt']),null!=_0x468a15['attributes']&&Object['hasOwnProperty']['call'](_0x468a15,'attributes')&&writer['uint32'](0x3a)['string'](_0x468a15['attributes']),null!=_0x468a15['toVersion']&&Object['hasOwnProperty']['call'](_0x468a15,'toVersion')&&writer['uint32'](0x40)['uint32'](_0x468a15['toVersion']),null!=_0x468a15['fromVersion']&&Object['hasOwnProperty']['call'](_0x468a15,'fromVersion')&&writer['uint32'](0x48)['uint32'](_0x468a15['fromVersion']),null!=_0x468a15['isEmptyCurrent']&&Object['hasOwnProperty']['call'](_0x468a15,'isEmptyCurrent')&&writer['uint32'](0x50)['bool'](_0x468a15['isEmptyCurrent']),writer;},RevisionHistoryGetRevisionResponse['encodeDelimited']=function(_0x105f1d,writer){return this['encode'](_0x105f1d,writer)['ldelim']();},RevisionHistoryGetRevisionResponse['decode']=function(_0x45a7c5,length){_0x45a7c5 instanceof $Reader||(_0x45a7c5=$Reader['create'](_0x45a7c5));let _0x2f74ec=void 0x0===length?_0x45a7c5['len']:_0x45a7c5['pos']+length,_0x251522=new $root['RevisionHistoryGetRevisionResponse']();for(;_0x45a7c5['pos']<_0x2f74ec;){let tag=_0x45a7c5['uint32']();switch(tag>>>0x3){case 0x1:_0x251522['revisionId']=_0x45a7c5['string']();break;case 0x2:_0x251522['name']=_0x45a7c5['string']();break;case 0x3:_0x251522['creatorId']=_0x45a7c5['string']();break;case 0x4:_0x251522['authorsIds']=_0x45a7c5['string']();break;case 0x5:_0x251522['diffData']=_0x45a7c5['string']();break;case 0x6:_0x251522['createdAt']=_0x45a7c5['string']();break;case 0x7:_0x251522['attributes']=_0x45a7c5['string']();break;case 0x8:_0x251522['toVersion']=_0x45a7c5['uint32']();break;case 0x9:_0x251522['fromVersion']=_0x45a7c5['uint32']();break;case 0xa:_0x251522['isEmptyCurrent']=_0x45a7c5['bool']();break;default:_0x45a7c5['skipType'](0x7&tag);}}return _0x251522;},RevisionHistoryGetRevisionResponse['decodeDelimited']=function(_0x598fab){return _0x598fab instanceof $Reader||(_0x598fab=new $Reader(_0x598fab)),this['decode'](_0x598fab,_0x598fab['uint32']());},RevisionHistoryGetRevisionResponse['verify']=function(_0x48d499){return'object'!=typeof _0x48d499||null===_0x48d499?'object\x20expected':null!=_0x48d499['revisionId']&&_0x48d499['hasOwnProperty']('revisionId')&&!$util['isString'](_0x48d499['revisionId'])?'revisionId:\x20string\x20expected':null!=_0x48d499['name']&&_0x48d499['hasOwnProperty']('name')&&!$util['isString'](_0x48d499['name'])?'name:\x20string\x20expected':null!=_0x48d499['creatorId']&&_0x48d499['hasOwnProperty']('creatorId')&&!$util['isString'](_0x48d499['creatorId'])?'creatorId:\x20string\x20expected':null!=_0x48d499['authorsIds']&&_0x48d499['hasOwnProperty']('authorsIds')&&!$util['isString'](_0x48d499['authorsIds'])?'authorsIds:\x20string\x20expected':null!=_0x48d499['diffData']&&_0x48d499['hasOwnProperty']('diffData')&&!$util['isString'](_0x48d499['diffData'])?'diffData:\x20string\x20expected':null!=_0x48d499['createdAt']&&_0x48d499['hasOwnProperty']('createdAt')&&!$util['isString'](_0x48d499['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x48d499['attributes']&&_0x48d499['hasOwnProperty']('attributes')&&!$util['isString'](_0x48d499['attributes'])?'attributes:\x20string\x20expected':null!=_0x48d499['toVersion']&&_0x48d499['hasOwnProperty']('toVersion')&&!$util['isInteger'](_0x48d499['toVersion'])?'toVersion:\x20integer\x20expected':null!=_0x48d499['fromVersion']&&_0x48d499['hasOwnProperty']('fromVersion')&&!$util['isInteger'](_0x48d499['fromVersion'])?'fromVersion:\x20integer\x20expected':null!=_0x48d499['isEmptyCurrent']&&_0x48d499['hasOwnProperty']('isEmptyCurrent')&&'boolean'!=typeof _0x48d499['isEmptyCurrent']?'isEmptyCurrent:\x20boolean\x20expected':null;},RevisionHistoryGetRevisionResponse['fromObject']=function(object){if(object instanceof $root['RevisionHistoryGetRevisionResponse'])return object;let _0x506a5a=new $root['RevisionHistoryGetRevisionResponse']();return null!=object['revisionId']&&(_0x506a5a['revisionId']=String(object['revisionId'])),null!=object['name']&&(_0x506a5a['name']=String(object['name'])),null!=object['creatorId']&&(_0x506a5a['creatorId']=String(object['creatorId'])),null!=object['authorsIds']&&(_0x506a5a['authorsIds']=String(object['authorsIds'])),null!=object['diffData']&&(_0x506a5a['diffData']=String(object['diffData'])),null!=object['createdAt']&&(_0x506a5a['createdAt']=String(object['createdAt'])),null!=object['attributes']&&(_0x506a5a['attributes']=String(object['attributes'])),null!=object['toVersion']&&(_0x506a5a['toVersion']=object['toVersion']>>>0x0),null!=object['fromVersion']&&(_0x506a5a['fromVersion']=object['fromVersion']>>>0x0),null!=object['isEmptyCurrent']&&(_0x506a5a['isEmptyCurrent']=Boolean(object['isEmptyCurrent'])),_0x506a5a;},RevisionHistoryGetRevisionResponse['toObject']=function(_0x4aec91,options){options||(options={});let object={};return options['defaults']&&(object['revisionId']='',object['name']='',object['creatorId']='',object['authorsIds']='',object['diffData']='',object['createdAt']='',object['attributes']='',object['toVersion']=0x0,object['fromVersion']=0x0,object['isEmptyCurrent']=!0x1),null!=_0x4aec91['revisionId']&&_0x4aec91['hasOwnProperty']('revisionId')&&(object['revisionId']=_0x4aec91['revisionId']),null!=_0x4aec91['name']&&_0x4aec91['hasOwnProperty']('name')&&(object['name']=_0x4aec91['name']),null!=_0x4aec91['creatorId']&&_0x4aec91['hasOwnProperty']('creatorId')&&(object['creatorId']=_0x4aec91['creatorId']),null!=_0x4aec91['authorsIds']&&_0x4aec91['hasOwnProperty']('authorsIds')&&(object['authorsIds']=_0x4aec91['authorsIds']),null!=_0x4aec91['diffData']&&_0x4aec91['hasOwnProperty']('diffData')&&(object['diffData']=_0x4aec91['diffData']),null!=_0x4aec91['createdAt']&&_0x4aec91['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x4aec91['createdAt']),null!=_0x4aec91['attributes']&&_0x4aec91['hasOwnProperty']('attributes')&&(object['attributes']=_0x4aec91['attributes']),null!=_0x4aec91['toVersion']&&_0x4aec91['hasOwnProperty']('toVersion')&&(object['toVersion']=_0x4aec91['toVersion']),null!=_0x4aec91['fromVersion']&&_0x4aec91['hasOwnProperty']('fromVersion')&&(object['fromVersion']=_0x4aec91['fromVersion']),null!=_0x4aec91['isEmptyCurrent']&&_0x4aec91['hasOwnProperty']('isEmptyCurrent')&&(object['isEmptyCurrent']=_0x4aec91['isEmptyCurrent']),object;},RevisionHistoryGetRevisionResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryGetRevisionResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryGetRevisionResponse';},RevisionHistoryGetRevisionResponse;})()),$root['RevisionHistoryUpdateRevisionsResponse']=((()=>{function RevisionHistoryUpdateRevisionsResponse(properties){if(properties){for(let _0x12e09e=Object['keys'](properties),_0x162bd0=0x0;_0x162bd0<_0x12e09e['length'];++_0x162bd0)null!=properties[_0x12e09e[_0x162bd0]]&&(this[_0x12e09e[_0x162bd0]]=properties[_0x12e09e[_0x162bd0]]);}}return RevisionHistoryUpdateRevisionsResponse['prototype']['requestId']=0x0,RevisionHistoryUpdateRevisionsResponse['create']=function(properties){return new RevisionHistoryUpdateRevisionsResponse(properties);},RevisionHistoryUpdateRevisionsResponse['encode']=function(_0x3db280,writer){return writer||(writer=$Writer['create']()),null!=_0x3db280['requestId']&&Object['hasOwnProperty']['call'](_0x3db280,'requestId')&&writer['uint32'](0x8)['uint32'](_0x3db280['requestId']),writer;},RevisionHistoryUpdateRevisionsResponse['encodeDelimited']=function(_0x2afa26,writer){return this['encode'](_0x2afa26,writer)['ldelim']();},RevisionHistoryUpdateRevisionsResponse['decode']=function(_0x3f3966,length){_0x3f3966 instanceof $Reader||(_0x3f3966=$Reader['create'](_0x3f3966));let _0x4773b1=void 0x0===length?_0x3f3966['len']:_0x3f3966['pos']+length,_0x330f96=new $root['RevisionHistoryUpdateRevisionsResponse']();for(;_0x3f3966['pos']<_0x4773b1;){let tag=_0x3f3966['uint32']();if(tag>>>0x3==0x1)_0x330f96['requestId']=_0x3f3966['uint32']();else _0x3f3966['skipType'](0x7&tag);}return _0x330f96;},RevisionHistoryUpdateRevisionsResponse['decodeDelimited']=function(_0x1253a1){return _0x1253a1 instanceof $Reader||(_0x1253a1=new $Reader(_0x1253a1)),this['decode'](_0x1253a1,_0x1253a1['uint32']());},RevisionHistoryUpdateRevisionsResponse['verify']=function(_0x1390ef){return'object'!=typeof _0x1390ef||null===_0x1390ef?'object\x20expected':null!=_0x1390ef['requestId']&&_0x1390ef['hasOwnProperty']('requestId')&&!$util['isInteger'](_0x1390ef['requestId'])?'requestId:\x20integer\x20expected':null;},RevisionHistoryUpdateRevisionsResponse['fromObject']=function(object){if(object instanceof $root['RevisionHistoryUpdateRevisionsResponse'])return object;let _0x230789=new $root['RevisionHistoryUpdateRevisionsResponse']();return null!=object['requestId']&&(_0x230789['requestId']=object['requestId']>>>0x0),_0x230789;},RevisionHistoryUpdateRevisionsResponse['toObject']=function(_0x410a5a,options){options||(options={});let object={};return options['defaults']&&(object['requestId']=0x0),null!=_0x410a5a['requestId']&&_0x410a5a['hasOwnProperty']('requestId')&&(object['requestId']=_0x410a5a['requestId']),object;},RevisionHistoryUpdateRevisionsResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},RevisionHistoryUpdateRevisionsResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/RevisionHistoryUpdateRevisionsResponse';},RevisionHistoryUpdateRevisionsResponse;})()),$root['SessionsSocketDescriptor']=((()=>{function SessionsSocketDescriptor(properties){if(this['permissions']=[],properties){for(let _0x350dab=Object['keys'](properties),_0x3a79c9=0x0;_0x3a79c9<_0x350dab['length'];++_0x3a79c9)null!=properties[_0x350dab[_0x3a79c9]]&&(this[_0x350dab[_0x3a79c9]]=properties[_0x350dab[_0x3a79c9]]);}}return SessionsSocketDescriptor['prototype']['session']='',SessionsSocketDescriptor['prototype']['user']='',SessionsSocketDescriptor['prototype']['role']='',SessionsSocketDescriptor['prototype']['permissions']=$util['emptyArray'],SessionsSocketDescriptor['create']=function(properties){return new SessionsSocketDescriptor(properties);},SessionsSocketDescriptor['encode']=function(_0x4766fd,writer){if(writer||(writer=$Writer['create']()),null!=_0x4766fd['session']&&Object['hasOwnProperty']['call'](_0x4766fd,'session')&&writer['uint32'](0xa)['string'](_0x4766fd['session']),null!=_0x4766fd['user']&&Object['hasOwnProperty']['call'](_0x4766fd,'user')&&writer['uint32'](0x12)['string'](_0x4766fd['user']),null!=_0x4766fd['role']&&Object['hasOwnProperty']['call'](_0x4766fd,'role')&&writer['uint32'](0x1a)['string'](_0x4766fd['role']),null!=_0x4766fd['permissions']&&_0x4766fd['permissions']['length']){for(let _0x474295=0x0;_0x474295<_0x4766fd['permissions']['length'];++_0x474295)writer['uint32'](0x22)['string'](_0x4766fd['permissions'][_0x474295]);}return writer;},SessionsSocketDescriptor['encodeDelimited']=function(_0xed0334,writer){return this['encode'](_0xed0334,writer)['ldelim']();},SessionsSocketDescriptor['decode']=function(_0x1596f1,length){_0x1596f1 instanceof $Reader||(_0x1596f1=$Reader['create'](_0x1596f1));let _0x359b9a=void 0x0===length?_0x1596f1['len']:_0x1596f1['pos']+length,_0x1da21f=new $root['SessionsSocketDescriptor']();for(;_0x1596f1['pos']<_0x359b9a;){let tag=_0x1596f1['uint32']();switch(tag>>>0x3){case 0x1:_0x1da21f['session']=_0x1596f1['string']();break;case 0x2:_0x1da21f['user']=_0x1596f1['string']();break;case 0x3:_0x1da21f['role']=_0x1596f1['string']();break;case 0x4:_0x1da21f['permissions']&&_0x1da21f['permissions']['length']||(_0x1da21f['permissions']=[]),_0x1da21f['permissions']['push'](_0x1596f1['string']());break;default:_0x1596f1['skipType'](0x7&tag);}}return _0x1da21f;},SessionsSocketDescriptor['decodeDelimited']=function(_0x54b419){return _0x54b419 instanceof $Reader||(_0x54b419=new $Reader(_0x54b419)),this['decode'](_0x54b419,_0x54b419['uint32']());},SessionsSocketDescriptor['verify']=function(_0x35e8e2){if('object'!=typeof _0x35e8e2||null===_0x35e8e2)return'object\x20expected';if(null!=_0x35e8e2['session']&&_0x35e8e2['hasOwnProperty']('session')&&!$util['isString'](_0x35e8e2['session']))return'session:\x20string\x20expected';if(null!=_0x35e8e2['user']&&_0x35e8e2['hasOwnProperty']('user')&&!$util['isString'](_0x35e8e2['user']))return'user:\x20string\x20expected';if(null!=_0x35e8e2['role']&&_0x35e8e2['hasOwnProperty']('role')&&!$util['isString'](_0x35e8e2['role']))return'role:\x20string\x20expected';if(null!=_0x35e8e2['permissions']&&_0x35e8e2['hasOwnProperty']('permissions')){if(!Array['isArray'](_0x35e8e2['permissions']))return'permissions:\x20array\x20expected';for(let _0x290c36=0x0;_0x290c36<_0x35e8e2['permissions']['length'];++_0x290c36)if(!$util['isString'](_0x35e8e2['permissions'][_0x290c36]))return'permissions:\x20string[]\x20expected';}return null;},SessionsSocketDescriptor['fromObject']=function(object){if(object instanceof $root['SessionsSocketDescriptor'])return object;let _0x4e5ae8=new $root['SessionsSocketDescriptor']();if(null!=object['session']&&(_0x4e5ae8['session']=String(object['session'])),null!=object['user']&&(_0x4e5ae8['user']=String(object['user'])),null!=object['role']&&(_0x4e5ae8['role']=String(object['role'])),object['permissions']){if(!Array['isArray'](object['permissions']))throw TypeError('.SessionsSocketDescriptor.permissions:\x20array\x20expected');_0x4e5ae8['permissions']=[];for(let _0x524bc6=0x0;_0x524bc6<object['permissions']['length'];++_0x524bc6)_0x4e5ae8['permissions'][_0x524bc6]=String(object['permissions'][_0x524bc6]);}return _0x4e5ae8;},SessionsSocketDescriptor['toObject']=function(_0x133fc1,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['permissions']=[]),options['defaults']&&(object['session']='',object['user']='',object['role']=''),null!=_0x133fc1['session']&&_0x133fc1['hasOwnProperty']('session')&&(object['session']=_0x133fc1['session']),null!=_0x133fc1['user']&&_0x133fc1['hasOwnProperty']('user')&&(object['user']=_0x133fc1['user']),null!=_0x133fc1['role']&&_0x133fc1['hasOwnProperty']('role')&&(object['role']=_0x133fc1['role']),_0x133fc1['permissions']&&_0x133fc1['permissions']['length']){object['permissions']=[];for(let _0x59c361=0x0;_0x59c361<_0x133fc1['permissions']['length'];++_0x59c361)object['permissions'][_0x59c361]=_0x133fc1['permissions'][_0x59c361];}return object;},SessionsSocketDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SessionsSocketDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SessionsSocketDescriptor';},SessionsSocketDescriptor;})()),$root['SessionsConnectMessage']=((()=>{function SessionsConnectMessage(properties){if(properties){for(let _0x3c769b=Object['keys'](properties),_0x404e74=0x0;_0x404e74<_0x3c769b['length'];++_0x404e74)null!=properties[_0x3c769b[_0x404e74]]&&(this[_0x3c769b[_0x404e74]]=properties[_0x3c769b[_0x404e74]]);}}return SessionsConnectMessage['prototype']['id']='',SessionsConnectMessage['prototype']['sessionType']=0x0,SessionsConnectMessage['create']=function(properties){return new SessionsConnectMessage(properties);},SessionsConnectMessage['encode']=function(_0x3e7192,writer){return writer||(writer=$Writer['create']()),null!=_0x3e7192['id']&&Object['hasOwnProperty']['call'](_0x3e7192,'id')&&writer['uint32'](0xa)['string'](_0x3e7192['id']),null!=_0x3e7192['sessionType']&&Object['hasOwnProperty']['call'](_0x3e7192,'sessionType')&&writer['uint32'](0x10)['uint32'](_0x3e7192['sessionType']),writer;},SessionsConnectMessage['encodeDelimited']=function(_0x2aaecb,writer){return this['encode'](_0x2aaecb,writer)['ldelim']();},SessionsConnectMessage['decode']=function(_0x3a632d,length){_0x3a632d instanceof $Reader||(_0x3a632d=$Reader['create'](_0x3a632d));let _0x316b8e=void 0x0===length?_0x3a632d['len']:_0x3a632d['pos']+length,_0x4e385f=new $root['SessionsConnectMessage']();for(;_0x3a632d['pos']<_0x316b8e;){let tag=_0x3a632d['uint32']();switch(tag>>>0x3){case 0x1:_0x4e385f['id']=_0x3a632d['string']();break;case 0x2:_0x4e385f['sessionType']=_0x3a632d['uint32']();break;default:_0x3a632d['skipType'](0x7&tag);}}return _0x4e385f;},SessionsConnectMessage['decodeDelimited']=function(_0x7a63c5){return _0x7a63c5 instanceof $Reader||(_0x7a63c5=new $Reader(_0x7a63c5)),this['decode'](_0x7a63c5,_0x7a63c5['uint32']());},SessionsConnectMessage['verify']=function(_0x659e7){return'object'!=typeof _0x659e7||null===_0x659e7?'object\x20expected':null!=_0x659e7['id']&&_0x659e7['hasOwnProperty']('id')&&!$util['isString'](_0x659e7['id'])?'id:\x20string\x20expected':null!=_0x659e7['sessionType']&&_0x659e7['hasOwnProperty']('sessionType')&&!$util['isInteger'](_0x659e7['sessionType'])?'sessionType:\x20integer\x20expected':null;},SessionsConnectMessage['fromObject']=function(object){if(object instanceof $root['SessionsConnectMessage'])return object;let _0x33cd53=new $root['SessionsConnectMessage']();return null!=object['id']&&(_0x33cd53['id']=String(object['id'])),null!=object['sessionType']&&(_0x33cd53['sessionType']=object['sessionType']>>>0x0),_0x33cd53;},SessionsConnectMessage['toObject']=function(_0x53acaf,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['sessionType']=0x0),null!=_0x53acaf['id']&&_0x53acaf['hasOwnProperty']('id')&&(object['id']=_0x53acaf['id']),null!=_0x53acaf['sessionType']&&_0x53acaf['hasOwnProperty']('sessionType')&&(object['sessionType']=_0x53acaf['sessionType']),object;},SessionsConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SessionsConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SessionsConnectMessage';},SessionsConnectMessage;})()),$root['SocketConnectMessage']=((()=>{function SocketConnectMessage(properties){if(this['permissions']=[],properties){for(let _0x1a8348=Object['keys'](properties),_0x1be196=0x0;_0x1be196<_0x1a8348['length'];++_0x1be196)null!=properties[_0x1a8348[_0x1be196]]&&(this[_0x1a8348[_0x1be196]]=properties[_0x1a8348[_0x1be196]]);}}return SocketConnectMessage['prototype']['id']='',SocketConnectMessage['prototype']['userId']='',SocketConnectMessage['prototype']['role']='',SocketConnectMessage['prototype']['permissions']=$util['emptyArray'],SocketConnectMessage['create']=function(properties){return new SocketConnectMessage(properties);},SocketConnectMessage['encode']=function(_0x1fbc06,writer){if(writer||(writer=$Writer['create']()),null!=_0x1fbc06['id']&&Object['hasOwnProperty']['call'](_0x1fbc06,'id')&&writer['uint32'](0xa)['string'](_0x1fbc06['id']),null!=_0x1fbc06['userId']&&Object['hasOwnProperty']['call'](_0x1fbc06,'userId')&&writer['uint32'](0x12)['string'](_0x1fbc06['userId']),null!=_0x1fbc06['role']&&Object['hasOwnProperty']['call'](_0x1fbc06,'role')&&writer['uint32'](0x1a)['string'](_0x1fbc06['role']),null!=_0x1fbc06['permissions']&&_0x1fbc06['permissions']['length']){for(let _0x1f16d5=0x0;_0x1f16d5<_0x1fbc06['permissions']['length'];++_0x1f16d5)writer['uint32'](0x22)['string'](_0x1fbc06['permissions'][_0x1f16d5]);}return writer;},SocketConnectMessage['encodeDelimited']=function(_0x2701a5,writer){return this['encode'](_0x2701a5,writer)['ldelim']();},SocketConnectMessage['decode']=function(_0x35d08b,length){_0x35d08b instanceof $Reader||(_0x35d08b=$Reader['create'](_0x35d08b));let _0x4ed4d4=void 0x0===length?_0x35d08b['len']:_0x35d08b['pos']+length,_0x1dd1bf=new $root['SocketConnectMessage']();for(;_0x35d08b['pos']<_0x4ed4d4;){let tag=_0x35d08b['uint32']();switch(tag>>>0x3){case 0x1:_0x1dd1bf['id']=_0x35d08b['string']();break;case 0x2:_0x1dd1bf['userId']=_0x35d08b['string']();break;case 0x3:_0x1dd1bf['role']=_0x35d08b['string']();break;case 0x4:_0x1dd1bf['permissions']&&_0x1dd1bf['permissions']['length']||(_0x1dd1bf['permissions']=[]),_0x1dd1bf['permissions']['push'](_0x35d08b['string']());break;default:_0x35d08b['skipType'](0x7&tag);}}return _0x1dd1bf;},SocketConnectMessage['decodeDelimited']=function(_0x198c15){return _0x198c15 instanceof $Reader||(_0x198c15=new $Reader(_0x198c15)),this['decode'](_0x198c15,_0x198c15['uint32']());},SocketConnectMessage['verify']=function(_0x59d676){if('object'!=typeof _0x59d676||null===_0x59d676)return'object\x20expected';if(null!=_0x59d676['id']&&_0x59d676['hasOwnProperty']('id')&&!$util['isString'](_0x59d676['id']))return'id:\x20string\x20expected';if(null!=_0x59d676['userId']&&_0x59d676['hasOwnProperty']('userId')&&!$util['isString'](_0x59d676['userId']))return'userId:\x20string\x20expected';if(null!=_0x59d676['role']&&_0x59d676['hasOwnProperty']('role')&&!$util['isString'](_0x59d676['role']))return'role:\x20string\x20expected';if(null!=_0x59d676['permissions']&&_0x59d676['hasOwnProperty']('permissions')){if(!Array['isArray'](_0x59d676['permissions']))return'permissions:\x20array\x20expected';for(let _0x35275e=0x0;_0x35275e<_0x59d676['permissions']['length'];++_0x35275e)if(!$util['isString'](_0x59d676['permissions'][_0x35275e]))return'permissions:\x20string[]\x20expected';}return null;},SocketConnectMessage['fromObject']=function(object){if(object instanceof $root['SocketConnectMessage'])return object;let _0x51cc5b=new $root['SocketConnectMessage']();if(null!=object['id']&&(_0x51cc5b['id']=String(object['id'])),null!=object['userId']&&(_0x51cc5b['userId']=String(object['userId'])),null!=object['role']&&(_0x51cc5b['role']=String(object['role'])),object['permissions']){if(!Array['isArray'](object['permissions']))throw TypeError('.SocketConnectMessage.permissions:\x20array\x20expected');_0x51cc5b['permissions']=[];for(let _0x250ecd=0x0;_0x250ecd<object['permissions']['length'];++_0x250ecd)_0x51cc5b['permissions'][_0x250ecd]=String(object['permissions'][_0x250ecd]);}return _0x51cc5b;},SocketConnectMessage['toObject']=function(_0x523679,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['permissions']=[]),options['defaults']&&(object['id']='',object['userId']='',object['role']=''),null!=_0x523679['id']&&_0x523679['hasOwnProperty']('id')&&(object['id']=_0x523679['id']),null!=_0x523679['userId']&&_0x523679['hasOwnProperty']('userId')&&(object['userId']=_0x523679['userId']),null!=_0x523679['role']&&_0x523679['hasOwnProperty']('role')&&(object['role']=_0x523679['role']),_0x523679['permissions']&&_0x523679['permissions']['length']){object['permissions']=[];for(let _0x5c5a8d=0x0;_0x5c5a8d<_0x523679['permissions']['length'];++_0x5c5a8d)object['permissions'][_0x5c5a8d]=_0x523679['permissions'][_0x5c5a8d];}return object;},SocketConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SocketConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SocketConnectMessage';},SocketConnectMessage;})()),$root['SocketDisconnectMessage']=((()=>{function SocketDisconnectMessage(properties){if(properties){for(let _0x2fa237=Object['keys'](properties),_0x364c33=0x0;_0x364c33<_0x2fa237['length'];++_0x364c33)null!=properties[_0x2fa237[_0x364c33]]&&(this[_0x2fa237[_0x364c33]]=properties[_0x2fa237[_0x364c33]]);}}return SocketDisconnectMessage['prototype']['id']='',SocketDisconnectMessage['create']=function(properties){return new SocketDisconnectMessage(properties);},SocketDisconnectMessage['encode']=function(_0x19b695,writer){return writer||(writer=$Writer['create']()),null!=_0x19b695['id']&&Object['hasOwnProperty']['call'](_0x19b695,'id')&&writer['uint32'](0xa)['string'](_0x19b695['id']),writer;},SocketDisconnectMessage['encodeDelimited']=function(_0x2b3918,writer){return this['encode'](_0x2b3918,writer)['ldelim']();},SocketDisconnectMessage['decode']=function(_0x59e524,length){_0x59e524 instanceof $Reader||(_0x59e524=$Reader['create'](_0x59e524));let _0x25c29a=void 0x0===length?_0x59e524['len']:_0x59e524['pos']+length,_0x283485=new $root['SocketDisconnectMessage']();for(;_0x59e524['pos']<_0x25c29a;){let tag=_0x59e524['uint32']();if(tag>>>0x3==0x1)_0x283485['id']=_0x59e524['string']();else _0x59e524['skipType'](0x7&tag);}return _0x283485;},SocketDisconnectMessage['decodeDelimited']=function(_0x21d3ff){return _0x21d3ff instanceof $Reader||(_0x21d3ff=new $Reader(_0x21d3ff)),this['decode'](_0x21d3ff,_0x21d3ff['uint32']());},SocketDisconnectMessage['verify']=function(_0x4d02ce){return'object'!=typeof _0x4d02ce||null===_0x4d02ce?'object\x20expected':null!=_0x4d02ce['id']&&_0x4d02ce['hasOwnProperty']('id')&&!$util['isString'](_0x4d02ce['id'])?'id:\x20string\x20expected':null;},SocketDisconnectMessage['fromObject']=function(object){if(object instanceof $root['SocketDisconnectMessage'])return object;let _0x112433=new $root['SocketDisconnectMessage']();return null!=object['id']&&(_0x112433['id']=String(object['id'])),_0x112433;},SocketDisconnectMessage['toObject']=function(_0x483673,options){options||(options={});let object={};return options['defaults']&&(object['id']=''),null!=_0x483673['id']&&_0x483673['hasOwnProperty']('id')&&(object['id']=_0x483673['id']),object;},SocketDisconnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SocketDisconnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SocketDisconnectMessage';},SocketDisconnectMessage;})()),$root['SessionsConnectResponse']=((()=>{function SessionsConnectResponse(properties){if(this['sockets']=[],properties){for(let _0x525154=Object['keys'](properties),_0x1f6341=0x0;_0x1f6341<_0x525154['length'];++_0x1f6341)null!=properties[_0x525154[_0x1f6341]]&&(this[_0x525154[_0x1f6341]]=properties[_0x525154[_0x1f6341]]);}}return SessionsConnectResponse['prototype']['channel']='',SessionsConnectResponse['prototype']['sockets']=$util['emptyArray'],SessionsConnectResponse['create']=function(properties){return new SessionsConnectResponse(properties);},SessionsConnectResponse['encode']=function(_0x2c1b8c,writer){if(writer||(writer=$Writer['create']()),null!=_0x2c1b8c['channel']&&Object['hasOwnProperty']['call'](_0x2c1b8c,'channel')&&writer['uint32'](0xa)['string'](_0x2c1b8c['channel']),null!=_0x2c1b8c['sockets']&&_0x2c1b8c['sockets']['length']){for(let _0x1f3de5=0x0;_0x1f3de5<_0x2c1b8c['sockets']['length'];++_0x1f3de5)$root['SessionsSocketDescriptor']['encode'](_0x2c1b8c['sockets'][_0x1f3de5],writer['uint32'](0x12)['fork']())['ldelim']();}return writer;},SessionsConnectResponse['encodeDelimited']=function(_0xb88991,writer){return this['encode'](_0xb88991,writer)['ldelim']();},SessionsConnectResponse['decode']=function(_0x61bdc,length){_0x61bdc instanceof $Reader||(_0x61bdc=$Reader['create'](_0x61bdc));let _0x40f240=void 0x0===length?_0x61bdc['len']:_0x61bdc['pos']+length,_0x4f5410=new $root['SessionsConnectResponse']();for(;_0x61bdc['pos']<_0x40f240;){let tag=_0x61bdc['uint32']();switch(tag>>>0x3){case 0x1:_0x4f5410['channel']=_0x61bdc['string']();break;case 0x2:_0x4f5410['sockets']&&_0x4f5410['sockets']['length']||(_0x4f5410['sockets']=[]),_0x4f5410['sockets']['push']($root['SessionsSocketDescriptor']['decode'](_0x61bdc,_0x61bdc['uint32']()));break;default:_0x61bdc['skipType'](0x7&tag);}}return _0x4f5410;},SessionsConnectResponse['decodeDelimited']=function(_0x1b7aa1){return _0x1b7aa1 instanceof $Reader||(_0x1b7aa1=new $Reader(_0x1b7aa1)),this['decode'](_0x1b7aa1,_0x1b7aa1['uint32']());},SessionsConnectResponse['verify']=function(_0xa703d0){if('object'!=typeof _0xa703d0||null===_0xa703d0)return'object\x20expected';if(null!=_0xa703d0['channel']&&_0xa703d0['hasOwnProperty']('channel')&&!$util['isString'](_0xa703d0['channel']))return'channel:\x20string\x20expected';if(null!=_0xa703d0['sockets']&&_0xa703d0['hasOwnProperty']('sockets')){if(!Array['isArray'](_0xa703d0['sockets']))return'sockets:\x20array\x20expected';for(let _0x197192=0x0;_0x197192<_0xa703d0['sockets']['length'];++_0x197192){let _0x3502f3=$root['SessionsSocketDescriptor']['verify'](_0xa703d0['sockets'][_0x197192]);if(_0x3502f3)return'sockets.'+_0x3502f3;}}return null;},SessionsConnectResponse['fromObject']=function(object){if(object instanceof $root['SessionsConnectResponse'])return object;let _0x529186=new $root['SessionsConnectResponse']();if(null!=object['channel']&&(_0x529186['channel']=String(object['channel'])),object['sockets']){if(!Array['isArray'](object['sockets']))throw TypeError('.SessionsConnectResponse.sockets:\x20array\x20expected');_0x529186['sockets']=[];for(let _0x104893=0x0;_0x104893<object['sockets']['length'];++_0x104893){if('object'!=typeof object['sockets'][_0x104893])throw TypeError('.SessionsConnectResponse.sockets:\x20object\x20expected');_0x529186['sockets'][_0x104893]=$root['SessionsSocketDescriptor']['fromObject'](object['sockets'][_0x104893]);}}return _0x529186;},SessionsConnectResponse['toObject']=function(_0x32c002,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['sockets']=[]),options['defaults']&&(object['channel']=''),null!=_0x32c002['channel']&&_0x32c002['hasOwnProperty']('channel')&&(object['channel']=_0x32c002['channel']),_0x32c002['sockets']&&_0x32c002['sockets']['length']){object['sockets']=[];for(let _0x225edf=0x0;_0x225edf<_0x32c002['sockets']['length'];++_0x225edf)object['sockets'][_0x225edf]=$root['SessionsSocketDescriptor']['toObject'](_0x32c002['sockets'][_0x225edf],options);}return object;},SessionsConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SessionsConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SessionsConnectResponse';},SessionsConnectResponse;})()),$root['SuggestionDescriptor']=((()=>{function SuggestionDescriptor(properties){if(properties){for(let _0x367a34=Object['keys'](properties),_0xe91648=0x0;_0xe91648<_0x367a34['length'];++_0xe91648)null!=properties[_0x367a34[_0xe91648]]&&(this[_0x367a34[_0xe91648]]=properties[_0x367a34[_0xe91648]]);}}return SuggestionDescriptor['prototype']['id']='',SuggestionDescriptor['prototype']['authorId']='',SuggestionDescriptor['prototype']['type']='',SuggestionDescriptor['prototype']['createdAt']='',SuggestionDescriptor['prototype']['data']='',SuggestionDescriptor['prototype']['hasComments']=!0x1,SuggestionDescriptor['prototype']['state']='',SuggestionDescriptor['prototype']['attributes']='',SuggestionDescriptor['create']=function(properties){return new SuggestionDescriptor(properties);},SuggestionDescriptor['encode']=function(_0x5c2efe,writer){return writer||(writer=$Writer['create']()),null!=_0x5c2efe['id']&&Object['hasOwnProperty']['call'](_0x5c2efe,'id')&&writer['uint32'](0xa)['string'](_0x5c2efe['id']),null!=_0x5c2efe['authorId']&&Object['hasOwnProperty']['call'](_0x5c2efe,'authorId')&&writer['uint32'](0x12)['string'](_0x5c2efe['authorId']),null!=_0x5c2efe['type']&&Object['hasOwnProperty']['call'](_0x5c2efe,'type')&&writer['uint32'](0x1a)['string'](_0x5c2efe['type']),null!=_0x5c2efe['createdAt']&&Object['hasOwnProperty']['call'](_0x5c2efe,'createdAt')&&writer['uint32'](0x22)['string'](_0x5c2efe['createdAt']),null!=_0x5c2efe['data']&&Object['hasOwnProperty']['call'](_0x5c2efe,'data')&&writer['uint32'](0x2a)['string'](_0x5c2efe['data']),null!=_0x5c2efe['hasComments']&&Object['hasOwnProperty']['call'](_0x5c2efe,'hasComments')&&writer['uint32'](0x30)['bool'](_0x5c2efe['hasComments']),null!=_0x5c2efe['state']&&Object['hasOwnProperty']['call'](_0x5c2efe,'state')&&writer['uint32'](0x3a)['string'](_0x5c2efe['state']),null!=_0x5c2efe['attributes']&&Object['hasOwnProperty']['call'](_0x5c2efe,'attributes')&&writer['uint32'](0x42)['string'](_0x5c2efe['attributes']),writer;},SuggestionDescriptor['encodeDelimited']=function(_0x56221c,writer){return this['encode'](_0x56221c,writer)['ldelim']();},SuggestionDescriptor['decode']=function(_0x26847c,length){_0x26847c instanceof $Reader||(_0x26847c=$Reader['create'](_0x26847c));let _0x20d463=void 0x0===length?_0x26847c['len']:_0x26847c['pos']+length,_0x559e01=new $root['SuggestionDescriptor']();for(;_0x26847c['pos']<_0x20d463;){let tag=_0x26847c['uint32']();switch(tag>>>0x3){case 0x1:_0x559e01['id']=_0x26847c['string']();break;case 0x2:_0x559e01['authorId']=_0x26847c['string']();break;case 0x3:_0x559e01['type']=_0x26847c['string']();break;case 0x4:_0x559e01['createdAt']=_0x26847c['string']();break;case 0x5:_0x559e01['data']=_0x26847c['string']();break;case 0x6:_0x559e01['hasComments']=_0x26847c['bool']();break;case 0x7:_0x559e01['state']=_0x26847c['string']();break;case 0x8:_0x559e01['attributes']=_0x26847c['string']();break;default:_0x26847c['skipType'](0x7&tag);}}return _0x559e01;},SuggestionDescriptor['decodeDelimited']=function(_0x4d0f9c){return _0x4d0f9c instanceof $Reader||(_0x4d0f9c=new $Reader(_0x4d0f9c)),this['decode'](_0x4d0f9c,_0x4d0f9c['uint32']());},SuggestionDescriptor['verify']=function(_0x378e95){return'object'!=typeof _0x378e95||null===_0x378e95?'object\x20expected':null!=_0x378e95['id']&&_0x378e95['hasOwnProperty']('id')&&!$util['isString'](_0x378e95['id'])?'id:\x20string\x20expected':null!=_0x378e95['authorId']&&_0x378e95['hasOwnProperty']('authorId')&&!$util['isString'](_0x378e95['authorId'])?'authorId:\x20string\x20expected':null!=_0x378e95['type']&&_0x378e95['hasOwnProperty']('type')&&!$util['isString'](_0x378e95['type'])?'type:\x20string\x20expected':null!=_0x378e95['createdAt']&&_0x378e95['hasOwnProperty']('createdAt')&&!$util['isString'](_0x378e95['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x378e95['data']&&_0x378e95['hasOwnProperty']('data')&&!$util['isString'](_0x378e95['data'])?'data:\x20string\x20expected':null!=_0x378e95['hasComments']&&_0x378e95['hasOwnProperty']('hasComments')&&'boolean'!=typeof _0x378e95['hasComments']?'hasComments:\x20boolean\x20expected':null!=_0x378e95['state']&&_0x378e95['hasOwnProperty']('state')&&!$util['isString'](_0x378e95['state'])?'state:\x20string\x20expected':null!=_0x378e95['attributes']&&_0x378e95['hasOwnProperty']('attributes')&&!$util['isString'](_0x378e95['attributes'])?'attributes:\x20string\x20expected':null;},SuggestionDescriptor['fromObject']=function(object){if(object instanceof $root['SuggestionDescriptor'])return object;let _0x26170d=new $root['SuggestionDescriptor']();return null!=object['id']&&(_0x26170d['id']=String(object['id'])),null!=object['authorId']&&(_0x26170d['authorId']=String(object['authorId'])),null!=object['type']&&(_0x26170d['type']=String(object['type'])),null!=object['createdAt']&&(_0x26170d['createdAt']=String(object['createdAt'])),null!=object['data']&&(_0x26170d['data']=String(object['data'])),null!=object['hasComments']&&(_0x26170d['hasComments']=Boolean(object['hasComments'])),null!=object['state']&&(_0x26170d['state']=String(object['state'])),null!=object['attributes']&&(_0x26170d['attributes']=String(object['attributes'])),_0x26170d;},SuggestionDescriptor['toObject']=function(_0x428cea,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['authorId']='',object['type']='',object['createdAt']='',object['data']='',object['hasComments']=!0x1,object['state']='',object['attributes']=''),null!=_0x428cea['id']&&_0x428cea['hasOwnProperty']('id')&&(object['id']=_0x428cea['id']),null!=_0x428cea['authorId']&&_0x428cea['hasOwnProperty']('authorId')&&(object['authorId']=_0x428cea['authorId']),null!=_0x428cea['type']&&_0x428cea['hasOwnProperty']('type')&&(object['type']=_0x428cea['type']),null!=_0x428cea['createdAt']&&_0x428cea['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x428cea['createdAt']),null!=_0x428cea['data']&&_0x428cea['hasOwnProperty']('data')&&(object['data']=_0x428cea['data']),null!=_0x428cea['hasComments']&&_0x428cea['hasOwnProperty']('hasComments')&&(object['hasComments']=_0x428cea['hasComments']),null!=_0x428cea['state']&&_0x428cea['hasOwnProperty']('state')&&(object['state']=_0x428cea['state']),null!=_0x428cea['attributes']&&_0x428cea['hasOwnProperty']('attributes')&&(object['attributes']=_0x428cea['attributes']),object;},SuggestionDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},SuggestionDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/SuggestionDescriptor';},SuggestionDescriptor;})()),$root['TrackChangesAddSuggestionMessage']=((()=>{function TrackChangesAddSuggestionMessage(properties){if(properties){for(let _0x2307d4=Object['keys'](properties),_0x2cd629=0x0;_0x2cd629<_0x2307d4['length'];++_0x2cd629)null!=properties[_0x2307d4[_0x2cd629]]&&(this[_0x2307d4[_0x2cd629]]=properties[_0x2307d4[_0x2cd629]]);}}return TrackChangesAddSuggestionMessage['prototype']['id']='',TrackChangesAddSuggestionMessage['prototype']['documentId']='',TrackChangesAddSuggestionMessage['prototype']['type']='',TrackChangesAddSuggestionMessage['prototype']['data']='',TrackChangesAddSuggestionMessage['prototype']['originalSuggestionId']='',TrackChangesAddSuggestionMessage['prototype']['attributes']='',TrackChangesAddSuggestionMessage['create']=function(properties){return new TrackChangesAddSuggestionMessage(properties);},TrackChangesAddSuggestionMessage['encode']=function(_0xe41513,writer){return writer||(writer=$Writer['create']()),null!=_0xe41513['id']&&Object['hasOwnProperty']['call'](_0xe41513,'id')&&writer['uint32'](0xa)['string'](_0xe41513['id']),null!=_0xe41513['documentId']&&Object['hasOwnProperty']['call'](_0xe41513,'documentId')&&writer['uint32'](0x12)['string'](_0xe41513['documentId']),null!=_0xe41513['type']&&Object['hasOwnProperty']['call'](_0xe41513,'type')&&writer['uint32'](0x1a)['string'](_0xe41513['type']),null!=_0xe41513['data']&&Object['hasOwnProperty']['call'](_0xe41513,'data')&&writer['uint32'](0x22)['string'](_0xe41513['data']),null!=_0xe41513['originalSuggestionId']&&Object['hasOwnProperty']['call'](_0xe41513,'originalSuggestionId')&&writer['uint32'](0x2a)['string'](_0xe41513['originalSuggestionId']),null!=_0xe41513['attributes']&&Object['hasOwnProperty']['call'](_0xe41513,'attributes')&&writer['uint32'](0x32)['string'](_0xe41513['attributes']),writer;},TrackChangesAddSuggestionMessage['encodeDelimited']=function(_0x53549d,writer){return this['encode'](_0x53549d,writer)['ldelim']();},TrackChangesAddSuggestionMessage['decode']=function(_0x21fbf3,length){_0x21fbf3 instanceof $Reader||(_0x21fbf3=$Reader['create'](_0x21fbf3));let _0x453029=void 0x0===length?_0x21fbf3['len']:_0x21fbf3['pos']+length,_0x5bbeac=new $root['TrackChangesAddSuggestionMessage']();for(;_0x21fbf3['pos']<_0x453029;){let tag=_0x21fbf3['uint32']();switch(tag>>>0x3){case 0x1:_0x5bbeac['id']=_0x21fbf3['string']();break;case 0x2:_0x5bbeac['documentId']=_0x21fbf3['string']();break;case 0x3:_0x5bbeac['type']=_0x21fbf3['string']();break;case 0x4:_0x5bbeac['data']=_0x21fbf3['string']();break;case 0x5:_0x5bbeac['originalSuggestionId']=_0x21fbf3['string']();break;case 0x6:_0x5bbeac['attributes']=_0x21fbf3['string']();break;default:_0x21fbf3['skipType'](0x7&tag);}}return _0x5bbeac;},TrackChangesAddSuggestionMessage['decodeDelimited']=function(_0x52f77b){return _0x52f77b instanceof $Reader||(_0x52f77b=new $Reader(_0x52f77b)),this['decode'](_0x52f77b,_0x52f77b['uint32']());},TrackChangesAddSuggestionMessage['verify']=function(_0x1c8d14){return'object'!=typeof _0x1c8d14||null===_0x1c8d14?'object\x20expected':null!=_0x1c8d14['id']&&_0x1c8d14['hasOwnProperty']('id')&&!$util['isString'](_0x1c8d14['id'])?'id:\x20string\x20expected':null!=_0x1c8d14['documentId']&&_0x1c8d14['hasOwnProperty']('documentId')&&!$util['isString'](_0x1c8d14['documentId'])?'documentId:\x20string\x20expected':null!=_0x1c8d14['type']&&_0x1c8d14['hasOwnProperty']('type')&&!$util['isString'](_0x1c8d14['type'])?'type:\x20string\x20expected':null!=_0x1c8d14['data']&&_0x1c8d14['hasOwnProperty']('data')&&!$util['isString'](_0x1c8d14['data'])?'data:\x20string\x20expected':null!=_0x1c8d14['originalSuggestionId']&&_0x1c8d14['hasOwnProperty']('originalSuggestionId')&&!$util['isString'](_0x1c8d14['originalSuggestionId'])?'originalSuggestionId:\x20string\x20expected':null!=_0x1c8d14['attributes']&&_0x1c8d14['hasOwnProperty']('attributes')&&!$util['isString'](_0x1c8d14['attributes'])?'attributes:\x20string\x20expected':null;},TrackChangesAddSuggestionMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesAddSuggestionMessage'])return object;let _0xc3f4dc=new $root['TrackChangesAddSuggestionMessage']();return null!=object['id']&&(_0xc3f4dc['id']=String(object['id'])),null!=object['documentId']&&(_0xc3f4dc['documentId']=String(object['documentId'])),null!=object['type']&&(_0xc3f4dc['type']=String(object['type'])),null!=object['data']&&(_0xc3f4dc['data']=String(object['data'])),null!=object['originalSuggestionId']&&(_0xc3f4dc['originalSuggestionId']=String(object['originalSuggestionId'])),null!=object['attributes']&&(_0xc3f4dc['attributes']=String(object['attributes'])),_0xc3f4dc;},TrackChangesAddSuggestionMessage['toObject']=function(_0x1c7b5d,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['documentId']='',object['type']='',object['data']='',object['originalSuggestionId']='',object['attributes']=''),null!=_0x1c7b5d['id']&&_0x1c7b5d['hasOwnProperty']('id')&&(object['id']=_0x1c7b5d['id']),null!=_0x1c7b5d['documentId']&&_0x1c7b5d['hasOwnProperty']('documentId')&&(object['documentId']=_0x1c7b5d['documentId']),null!=_0x1c7b5d['type']&&_0x1c7b5d['hasOwnProperty']('type')&&(object['type']=_0x1c7b5d['type']),null!=_0x1c7b5d['data']&&_0x1c7b5d['hasOwnProperty']('data')&&(object['data']=_0x1c7b5d['data']),null!=_0x1c7b5d['originalSuggestionId']&&_0x1c7b5d['hasOwnProperty']('originalSuggestionId')&&(object['originalSuggestionId']=_0x1c7b5d['originalSuggestionId']),null!=_0x1c7b5d['attributes']&&_0x1c7b5d['hasOwnProperty']('attributes')&&(object['attributes']=_0x1c7b5d['attributes']),object;},TrackChangesAddSuggestionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesAddSuggestionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesAddSuggestionMessage';},TrackChangesAddSuggestionMessage;})()),$root['TrackChangesBatchUpdateSuggestionsStateMessage']=((()=>{function TrackChangesBatchUpdateSuggestionsStateMessage(properties){if(this['ids']=[],properties){for(let _0x1e4057=Object['keys'](properties),_0x4ffa7f=0x0;_0x4ffa7f<_0x1e4057['length'];++_0x4ffa7f)null!=properties[_0x1e4057[_0x4ffa7f]]&&(this[_0x1e4057[_0x4ffa7f]]=properties[_0x1e4057[_0x4ffa7f]]);}}return TrackChangesBatchUpdateSuggestionsStateMessage['prototype']['ids']=$util['emptyArray'],TrackChangesBatchUpdateSuggestionsStateMessage['prototype']['documentId']='',TrackChangesBatchUpdateSuggestionsStateMessage['prototype']['state']='',TrackChangesBatchUpdateSuggestionsStateMessage['create']=function(properties){return new TrackChangesBatchUpdateSuggestionsStateMessage(properties);},TrackChangesBatchUpdateSuggestionsStateMessage['encode']=function(_0x29f4c2,writer){if(writer||(writer=$Writer['create']()),null!=_0x29f4c2['ids']&&_0x29f4c2['ids']['length']){for(let _0x11ea46=0x0;_0x11ea46<_0x29f4c2['ids']['length'];++_0x11ea46)writer['uint32'](0xa)['string'](_0x29f4c2['ids'][_0x11ea46]);}return null!=_0x29f4c2['documentId']&&Object['hasOwnProperty']['call'](_0x29f4c2,'documentId')&&writer['uint32'](0x12)['string'](_0x29f4c2['documentId']),null!=_0x29f4c2['state']&&Object['hasOwnProperty']['call'](_0x29f4c2,'state')&&writer['uint32'](0x1a)['string'](_0x29f4c2['state']),writer;},TrackChangesBatchUpdateSuggestionsStateMessage['encodeDelimited']=function(_0x3f8dca,writer){return this['encode'](_0x3f8dca,writer)['ldelim']();},TrackChangesBatchUpdateSuggestionsStateMessage['decode']=function(_0x1cc4db,length){_0x1cc4db instanceof $Reader||(_0x1cc4db=$Reader['create'](_0x1cc4db));let _0x4b13f9=void 0x0===length?_0x1cc4db['len']:_0x1cc4db['pos']+length,_0x28ac7c=new $root['TrackChangesBatchUpdateSuggestionsStateMessage']();for(;_0x1cc4db['pos']<_0x4b13f9;){let tag=_0x1cc4db['uint32']();switch(tag>>>0x3){case 0x1:_0x28ac7c['ids']&&_0x28ac7c['ids']['length']||(_0x28ac7c['ids']=[]),_0x28ac7c['ids']['push'](_0x1cc4db['string']());break;case 0x2:_0x28ac7c['documentId']=_0x1cc4db['string']();break;case 0x3:_0x28ac7c['state']=_0x1cc4db['string']();break;default:_0x1cc4db['skipType'](0x7&tag);}}return _0x28ac7c;},TrackChangesBatchUpdateSuggestionsStateMessage['decodeDelimited']=function(_0x3058bb){return _0x3058bb instanceof $Reader||(_0x3058bb=new $Reader(_0x3058bb)),this['decode'](_0x3058bb,_0x3058bb['uint32']());},TrackChangesBatchUpdateSuggestionsStateMessage['verify']=function(_0x4dc045){if('object'!=typeof _0x4dc045||null===_0x4dc045)return'object\x20expected';if(null!=_0x4dc045['ids']&&_0x4dc045['hasOwnProperty']('ids')){if(!Array['isArray'](_0x4dc045['ids']))return'ids:\x20array\x20expected';for(let _0x519cfc=0x0;_0x519cfc<_0x4dc045['ids']['length'];++_0x519cfc)if(!$util['isString'](_0x4dc045['ids'][_0x519cfc]))return'ids:\x20string[]\x20expected';}return null!=_0x4dc045['documentId']&&_0x4dc045['hasOwnProperty']('documentId')&&!$util['isString'](_0x4dc045['documentId'])?'documentId:\x20string\x20expected':null!=_0x4dc045['state']&&_0x4dc045['hasOwnProperty']('state')&&!$util['isString'](_0x4dc045['state'])?'state:\x20string\x20expected':null;},TrackChangesBatchUpdateSuggestionsStateMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesBatchUpdateSuggestionsStateMessage'])return object;let _0x18d2a0=new $root['TrackChangesBatchUpdateSuggestionsStateMessage']();if(object['ids']){if(!Array['isArray'](object['ids']))throw TypeError('.TrackChangesBatchUpdateSuggestionsStateMessage.ids:\x20array\x20expected');_0x18d2a0['ids']=[];for(let _0x3107f2=0x0;_0x3107f2<object['ids']['length'];++_0x3107f2)_0x18d2a0['ids'][_0x3107f2]=String(object['ids'][_0x3107f2]);}return null!=object['documentId']&&(_0x18d2a0['documentId']=String(object['documentId'])),null!=object['state']&&(_0x18d2a0['state']=String(object['state'])),_0x18d2a0;},TrackChangesBatchUpdateSuggestionsStateMessage['toObject']=function(_0x517d01,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['ids']=[]),options['defaults']&&(object['documentId']='',object['state']=''),_0x517d01['ids']&&_0x517d01['ids']['length']){object['ids']=[];for(let _0x3ec3fe=0x0;_0x3ec3fe<_0x517d01['ids']['length'];++_0x3ec3fe)object['ids'][_0x3ec3fe]=_0x517d01['ids'][_0x3ec3fe];}return null!=_0x517d01['documentId']&&_0x517d01['hasOwnProperty']('documentId')&&(object['documentId']=_0x517d01['documentId']),null!=_0x517d01['state']&&_0x517d01['hasOwnProperty']('state')&&(object['state']=_0x517d01['state']),object;},TrackChangesBatchUpdateSuggestionsStateMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesBatchUpdateSuggestionsStateMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesBatchUpdateSuggestionsStateMessage';},TrackChangesBatchUpdateSuggestionsStateMessage;})()),$root['TrackChangesConnectMessage']=((()=>{function TrackChangesConnectMessage(properties){if(properties){for(let _0x3da80b=Object['keys'](properties),_0x1740ba=0x0;_0x1740ba<_0x3da80b['length'];++_0x1740ba)null!=properties[_0x3da80b[_0x1740ba]]&&(this[_0x3da80b[_0x1740ba]]=properties[_0x3da80b[_0x1740ba]]);}}return TrackChangesConnectMessage['prototype']['documentId']='',TrackChangesConnectMessage['create']=function(properties){return new TrackChangesConnectMessage(properties);},TrackChangesConnectMessage['encode']=function(_0x3b6b6d,writer){return writer||(writer=$Writer['create']()),null!=_0x3b6b6d['documentId']&&Object['hasOwnProperty']['call'](_0x3b6b6d,'documentId')&&writer['uint32'](0xa)['string'](_0x3b6b6d['documentId']),writer;},TrackChangesConnectMessage['encodeDelimited']=function(_0x502336,writer){return this['encode'](_0x502336,writer)['ldelim']();},TrackChangesConnectMessage['decode']=function(_0xad9b62,length){_0xad9b62 instanceof $Reader||(_0xad9b62=$Reader['create'](_0xad9b62));let _0xce316e=void 0x0===length?_0xad9b62['len']:_0xad9b62['pos']+length,_0x37523b=new $root['TrackChangesConnectMessage']();for(;_0xad9b62['pos']<_0xce316e;){let tag=_0xad9b62['uint32']();if(tag>>>0x3==0x1)_0x37523b['documentId']=_0xad9b62['string']();else _0xad9b62['skipType'](0x7&tag);}return _0x37523b;},TrackChangesConnectMessage['decodeDelimited']=function(_0x77eba7){return _0x77eba7 instanceof $Reader||(_0x77eba7=new $Reader(_0x77eba7)),this['decode'](_0x77eba7,_0x77eba7['uint32']());},TrackChangesConnectMessage['verify']=function(_0x508b0a){return'object'!=typeof _0x508b0a||null===_0x508b0a?'object\x20expected':null!=_0x508b0a['documentId']&&_0x508b0a['hasOwnProperty']('documentId')&&!$util['isString'](_0x508b0a['documentId'])?'documentId:\x20string\x20expected':null;},TrackChangesConnectMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesConnectMessage'])return object;let _0x406f40=new $root['TrackChangesConnectMessage']();return null!=object['documentId']&&(_0x406f40['documentId']=String(object['documentId'])),_0x406f40;},TrackChangesConnectMessage['toObject']=function(_0x17604b,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x17604b['documentId']&&_0x17604b['hasOwnProperty']('documentId')&&(object['documentId']=_0x17604b['documentId']),object;},TrackChangesConnectMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesConnectMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesConnectMessage';},TrackChangesConnectMessage;})()),$root['TrackChangesGetAllSuggestionMessage']=((()=>{function TrackChangesGetAllSuggestionMessage(properties){if(properties){for(let _0x1980aa=Object['keys'](properties),_0x3a7ad0=0x0;_0x3a7ad0<_0x1980aa['length'];++_0x3a7ad0)null!=properties[_0x1980aa[_0x3a7ad0]]&&(this[_0x1980aa[_0x3a7ad0]]=properties[_0x1980aa[_0x3a7ad0]]);}}return TrackChangesGetAllSuggestionMessage['prototype']['documentId']='',TrackChangesGetAllSuggestionMessage['create']=function(properties){return new TrackChangesGetAllSuggestionMessage(properties);},TrackChangesGetAllSuggestionMessage['encode']=function(_0x235a6c,writer){return writer||(writer=$Writer['create']()),null!=_0x235a6c['documentId']&&Object['hasOwnProperty']['call'](_0x235a6c,'documentId')&&writer['uint32'](0xa)['string'](_0x235a6c['documentId']),writer;},TrackChangesGetAllSuggestionMessage['encodeDelimited']=function(_0x43aa8c,writer){return this['encode'](_0x43aa8c,writer)['ldelim']();},TrackChangesGetAllSuggestionMessage['decode']=function(_0x2614ae,length){_0x2614ae instanceof $Reader||(_0x2614ae=$Reader['create'](_0x2614ae));let _0x307542=void 0x0===length?_0x2614ae['len']:_0x2614ae['pos']+length,_0x10f7b1=new $root['TrackChangesGetAllSuggestionMessage']();for(;_0x2614ae['pos']<_0x307542;){let tag=_0x2614ae['uint32']();if(tag>>>0x3==0x1)_0x10f7b1['documentId']=_0x2614ae['string']();else _0x2614ae['skipType'](0x7&tag);}return _0x10f7b1;},TrackChangesGetAllSuggestionMessage['decodeDelimited']=function(_0x49b418){return _0x49b418 instanceof $Reader||(_0x49b418=new $Reader(_0x49b418)),this['decode'](_0x49b418,_0x49b418['uint32']());},TrackChangesGetAllSuggestionMessage['verify']=function(_0x12728e){return'object'!=typeof _0x12728e||null===_0x12728e?'object\x20expected':null!=_0x12728e['documentId']&&_0x12728e['hasOwnProperty']('documentId')&&!$util['isString'](_0x12728e['documentId'])?'documentId:\x20string\x20expected':null;},TrackChangesGetAllSuggestionMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesGetAllSuggestionMessage'])return object;let _0x985c6f=new $root['TrackChangesGetAllSuggestionMessage']();return null!=object['documentId']&&(_0x985c6f['documentId']=String(object['documentId'])),_0x985c6f;},TrackChangesGetAllSuggestionMessage['toObject']=function(_0x3ce871,options){options||(options={});let object={};return options['defaults']&&(object['documentId']=''),null!=_0x3ce871['documentId']&&_0x3ce871['hasOwnProperty']('documentId')&&(object['documentId']=_0x3ce871['documentId']),object;},TrackChangesGetAllSuggestionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesGetAllSuggestionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesGetAllSuggestionMessage';},TrackChangesGetAllSuggestionMessage;})()),$root['TrackChangesGetSuggestionMessage']=((()=>{function TrackChangesGetSuggestionMessage(properties){if(properties){for(let _0x4037a0=Object['keys'](properties),_0x2f58a1=0x0;_0x2f58a1<_0x4037a0['length'];++_0x2f58a1)null!=properties[_0x4037a0[_0x2f58a1]]&&(this[_0x4037a0[_0x2f58a1]]=properties[_0x4037a0[_0x2f58a1]]);}}return TrackChangesGetSuggestionMessage['prototype']['id']='',TrackChangesGetSuggestionMessage['prototype']['documentId']='',TrackChangesGetSuggestionMessage['create']=function(properties){return new TrackChangesGetSuggestionMessage(properties);},TrackChangesGetSuggestionMessage['encode']=function(_0x4559ef,writer){return writer||(writer=$Writer['create']()),null!=_0x4559ef['id']&&Object['hasOwnProperty']['call'](_0x4559ef,'id')&&writer['uint32'](0xa)['string'](_0x4559ef['id']),null!=_0x4559ef['documentId']&&Object['hasOwnProperty']['call'](_0x4559ef,'documentId')&&writer['uint32'](0x12)['string'](_0x4559ef['documentId']),writer;},TrackChangesGetSuggestionMessage['encodeDelimited']=function(_0x5e77a0,writer){return this['encode'](_0x5e77a0,writer)['ldelim']();},TrackChangesGetSuggestionMessage['decode']=function(_0x18edf6,length){_0x18edf6 instanceof $Reader||(_0x18edf6=$Reader['create'](_0x18edf6));let _0x2ae589=void 0x0===length?_0x18edf6['len']:_0x18edf6['pos']+length,_0x9303b8=new $root['TrackChangesGetSuggestionMessage']();for(;_0x18edf6['pos']<_0x2ae589;){let tag=_0x18edf6['uint32']();switch(tag>>>0x3){case 0x1:_0x9303b8['id']=_0x18edf6['string']();break;case 0x2:_0x9303b8['documentId']=_0x18edf6['string']();break;default:_0x18edf6['skipType'](0x7&tag);}}return _0x9303b8;},TrackChangesGetSuggestionMessage['decodeDelimited']=function(_0x52f9c2){return _0x52f9c2 instanceof $Reader||(_0x52f9c2=new $Reader(_0x52f9c2)),this['decode'](_0x52f9c2,_0x52f9c2['uint32']());},TrackChangesGetSuggestionMessage['verify']=function(_0x4b1d5c){return'object'!=typeof _0x4b1d5c||null===_0x4b1d5c?'object\x20expected':null!=_0x4b1d5c['id']&&_0x4b1d5c['hasOwnProperty']('id')&&!$util['isString'](_0x4b1d5c['id'])?'id:\x20string\x20expected':null!=_0x4b1d5c['documentId']&&_0x4b1d5c['hasOwnProperty']('documentId')&&!$util['isString'](_0x4b1d5c['documentId'])?'documentId:\x20string\x20expected':null;},TrackChangesGetSuggestionMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesGetSuggestionMessage'])return object;let _0x18a4d7=new $root['TrackChangesGetSuggestionMessage']();return null!=object['id']&&(_0x18a4d7['id']=String(object['id'])),null!=object['documentId']&&(_0x18a4d7['documentId']=String(object['documentId'])),_0x18a4d7;},TrackChangesGetSuggestionMessage['toObject']=function(_0x1915be,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['documentId']=''),null!=_0x1915be['id']&&_0x1915be['hasOwnProperty']('id')&&(object['id']=_0x1915be['id']),null!=_0x1915be['documentId']&&_0x1915be['hasOwnProperty']('documentId')&&(object['documentId']=_0x1915be['documentId']),object;},TrackChangesGetSuggestionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesGetSuggestionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesGetSuggestionMessage';},TrackChangesGetSuggestionMessage;})()),$root['TrackChangesUpdateSuggestionMessage']=((()=>{function TrackChangesUpdateSuggestionMessage(properties){if(properties){for(let _0x1d97e0=Object['keys'](properties),_0x5ffdb6=0x0;_0x5ffdb6<_0x1d97e0['length'];++_0x5ffdb6)null!=properties[_0x1d97e0[_0x5ffdb6]]&&(this[_0x1d97e0[_0x5ffdb6]]=properties[_0x1d97e0[_0x5ffdb6]]);}}return TrackChangesUpdateSuggestionMessage['prototype']['id']='',TrackChangesUpdateSuggestionMessage['prototype']['documentId']='',TrackChangesUpdateSuggestionMessage['prototype']['hasComments']=!0x1,TrackChangesUpdateSuggestionMessage['prototype']['isHasCommentsModified']=!0x1,TrackChangesUpdateSuggestionMessage['prototype']['state']='',TrackChangesUpdateSuggestionMessage['prototype']['attributes']='',TrackChangesUpdateSuggestionMessage['create']=function(properties){return new TrackChangesUpdateSuggestionMessage(properties);},TrackChangesUpdateSuggestionMessage['encode']=function(_0x35a2d2,writer){return writer||(writer=$Writer['create']()),null!=_0x35a2d2['id']&&Object['hasOwnProperty']['call'](_0x35a2d2,'id')&&writer['uint32'](0xa)['string'](_0x35a2d2['id']),null!=_0x35a2d2['documentId']&&Object['hasOwnProperty']['call'](_0x35a2d2,'documentId')&&writer['uint32'](0x12)['string'](_0x35a2d2['documentId']),null!=_0x35a2d2['hasComments']&&Object['hasOwnProperty']['call'](_0x35a2d2,'hasComments')&&writer['uint32'](0x18)['bool'](_0x35a2d2['hasComments']),null!=_0x35a2d2['isHasCommentsModified']&&Object['hasOwnProperty']['call'](_0x35a2d2,'isHasCommentsModified')&&writer['uint32'](0x20)['bool'](_0x35a2d2['isHasCommentsModified']),null!=_0x35a2d2['state']&&Object['hasOwnProperty']['call'](_0x35a2d2,'state')&&writer['uint32'](0x2a)['string'](_0x35a2d2['state']),null!=_0x35a2d2['attributes']&&Object['hasOwnProperty']['call'](_0x35a2d2,'attributes')&&writer['uint32'](0x32)['string'](_0x35a2d2['attributes']),writer;},TrackChangesUpdateSuggestionMessage['encodeDelimited']=function(_0x14521c,writer){return this['encode'](_0x14521c,writer)['ldelim']();},TrackChangesUpdateSuggestionMessage['decode']=function(_0x2647a3,length){_0x2647a3 instanceof $Reader||(_0x2647a3=$Reader['create'](_0x2647a3));let _0x2822d4=void 0x0===length?_0x2647a3['len']:_0x2647a3['pos']+length,_0x2e8b21=new $root['TrackChangesUpdateSuggestionMessage']();for(;_0x2647a3['pos']<_0x2822d4;){let tag=_0x2647a3['uint32']();switch(tag>>>0x3){case 0x1:_0x2e8b21['id']=_0x2647a3['string']();break;case 0x2:_0x2e8b21['documentId']=_0x2647a3['string']();break;case 0x3:_0x2e8b21['hasComments']=_0x2647a3['bool']();break;case 0x4:_0x2e8b21['isHasCommentsModified']=_0x2647a3['bool']();break;case 0x5:_0x2e8b21['state']=_0x2647a3['string']();break;case 0x6:_0x2e8b21['attributes']=_0x2647a3['string']();break;default:_0x2647a3['skipType'](0x7&tag);}}return _0x2e8b21;},TrackChangesUpdateSuggestionMessage['decodeDelimited']=function(_0x5d5bcb){return _0x5d5bcb instanceof $Reader||(_0x5d5bcb=new $Reader(_0x5d5bcb)),this['decode'](_0x5d5bcb,_0x5d5bcb['uint32']());},TrackChangesUpdateSuggestionMessage['verify']=function(_0x52999a){return'object'!=typeof _0x52999a||null===_0x52999a?'object\x20expected':null!=_0x52999a['id']&&_0x52999a['hasOwnProperty']('id')&&!$util['isString'](_0x52999a['id'])?'id:\x20string\x20expected':null!=_0x52999a['documentId']&&_0x52999a['hasOwnProperty']('documentId')&&!$util['isString'](_0x52999a['documentId'])?'documentId:\x20string\x20expected':null!=_0x52999a['hasComments']&&_0x52999a['hasOwnProperty']('hasComments')&&'boolean'!=typeof _0x52999a['hasComments']?'hasComments:\x20boolean\x20expected':null!=_0x52999a['isHasCommentsModified']&&_0x52999a['hasOwnProperty']('isHasCommentsModified')&&'boolean'!=typeof _0x52999a['isHasCommentsModified']?'isHasCommentsModified:\x20boolean\x20expected':null!=_0x52999a['state']&&_0x52999a['hasOwnProperty']('state')&&!$util['isString'](_0x52999a['state'])?'state:\x20string\x20expected':null!=_0x52999a['attributes']&&_0x52999a['hasOwnProperty']('attributes')&&!$util['isString'](_0x52999a['attributes'])?'attributes:\x20string\x20expected':null;},TrackChangesUpdateSuggestionMessage['fromObject']=function(object){if(object instanceof $root['TrackChangesUpdateSuggestionMessage'])return object;let _0x579f84=new $root['TrackChangesUpdateSuggestionMessage']();return null!=object['id']&&(_0x579f84['id']=String(object['id'])),null!=object['documentId']&&(_0x579f84['documentId']=String(object['documentId'])),null!=object['hasComments']&&(_0x579f84['hasComments']=Boolean(object['hasComments'])),null!=object['isHasCommentsModified']&&(_0x579f84['isHasCommentsModified']=Boolean(object['isHasCommentsModified'])),null!=object['state']&&(_0x579f84['state']=String(object['state'])),null!=object['attributes']&&(_0x579f84['attributes']=String(object['attributes'])),_0x579f84;},TrackChangesUpdateSuggestionMessage['toObject']=function(_0xfe609,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['documentId']='',object['hasComments']=!0x1,object['isHasCommentsModified']=!0x1,object['state']='',object['attributes']=''),null!=_0xfe609['id']&&_0xfe609['hasOwnProperty']('id')&&(object['id']=_0xfe609['id']),null!=_0xfe609['documentId']&&_0xfe609['hasOwnProperty']('documentId')&&(object['documentId']=_0xfe609['documentId']),null!=_0xfe609['hasComments']&&_0xfe609['hasOwnProperty']('hasComments')&&(object['hasComments']=_0xfe609['hasComments']),null!=_0xfe609['isHasCommentsModified']&&_0xfe609['hasOwnProperty']('isHasCommentsModified')&&(object['isHasCommentsModified']=_0xfe609['isHasCommentsModified']),null!=_0xfe609['state']&&_0xfe609['hasOwnProperty']('state')&&(object['state']=_0xfe609['state']),null!=_0xfe609['attributes']&&_0xfe609['hasOwnProperty']('attributes')&&(object['attributes']=_0xfe609['attributes']),object;},TrackChangesUpdateSuggestionMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesUpdateSuggestionMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesUpdateSuggestionMessage';},TrackChangesUpdateSuggestionMessage;})()),$root['TrackChangesAddSuggestionResponse']=((()=>{function TrackChangesAddSuggestionResponse(properties){if(properties){for(let _0x1ed880=Object['keys'](properties),_0x519a70=0x0;_0x519a70<_0x1ed880['length'];++_0x519a70)null!=properties[_0x1ed880[_0x519a70]]&&(this[_0x1ed880[_0x519a70]]=properties[_0x1ed880[_0x519a70]]);}}return TrackChangesAddSuggestionResponse['prototype']['id']='',TrackChangesAddSuggestionResponse['prototype']['authorId']='',TrackChangesAddSuggestionResponse['prototype']['type']='',TrackChangesAddSuggestionResponse['prototype']['createdAt']='',TrackChangesAddSuggestionResponse['prototype']['data']='',TrackChangesAddSuggestionResponse['prototype']['hasComments']=!0x1,TrackChangesAddSuggestionResponse['prototype']['state']='',TrackChangesAddSuggestionResponse['prototype']['attributes']='',TrackChangesAddSuggestionResponse['create']=function(properties){return new TrackChangesAddSuggestionResponse(properties);},TrackChangesAddSuggestionResponse['encode']=function(_0x185b90,writer){return writer||(writer=$Writer['create']()),null!=_0x185b90['id']&&Object['hasOwnProperty']['call'](_0x185b90,'id')&&writer['uint32'](0xa)['string'](_0x185b90['id']),null!=_0x185b90['authorId']&&Object['hasOwnProperty']['call'](_0x185b90,'authorId')&&writer['uint32'](0x12)['string'](_0x185b90['authorId']),null!=_0x185b90['type']&&Object['hasOwnProperty']['call'](_0x185b90,'type')&&writer['uint32'](0x1a)['string'](_0x185b90['type']),null!=_0x185b90['createdAt']&&Object['hasOwnProperty']['call'](_0x185b90,'createdAt')&&writer['uint32'](0x22)['string'](_0x185b90['createdAt']),null!=_0x185b90['data']&&Object['hasOwnProperty']['call'](_0x185b90,'data')&&writer['uint32'](0x2a)['string'](_0x185b90['data']),null!=_0x185b90['hasComments']&&Object['hasOwnProperty']['call'](_0x185b90,'hasComments')&&writer['uint32'](0x30)['bool'](_0x185b90['hasComments']),null!=_0x185b90['state']&&Object['hasOwnProperty']['call'](_0x185b90,'state')&&writer['uint32'](0x3a)['string'](_0x185b90['state']),null!=_0x185b90['attributes']&&Object['hasOwnProperty']['call'](_0x185b90,'attributes')&&writer['uint32'](0x42)['string'](_0x185b90['attributes']),writer;},TrackChangesAddSuggestionResponse['encodeDelimited']=function(_0xd6bba8,writer){return this['encode'](_0xd6bba8,writer)['ldelim']();},TrackChangesAddSuggestionResponse['decode']=function(_0x310a1f,length){_0x310a1f instanceof $Reader||(_0x310a1f=$Reader['create'](_0x310a1f));let _0xf29a1b=void 0x0===length?_0x310a1f['len']:_0x310a1f['pos']+length,_0x866401=new $root['TrackChangesAddSuggestionResponse']();for(;_0x310a1f['pos']<_0xf29a1b;){let tag=_0x310a1f['uint32']();switch(tag>>>0x3){case 0x1:_0x866401['id']=_0x310a1f['string']();break;case 0x2:_0x866401['authorId']=_0x310a1f['string']();break;case 0x3:_0x866401['type']=_0x310a1f['string']();break;case 0x4:_0x866401['createdAt']=_0x310a1f['string']();break;case 0x5:_0x866401['data']=_0x310a1f['string']();break;case 0x6:_0x866401['hasComments']=_0x310a1f['bool']();break;case 0x7:_0x866401['state']=_0x310a1f['string']();break;case 0x8:_0x866401['attributes']=_0x310a1f['string']();break;default:_0x310a1f['skipType'](0x7&tag);}}return _0x866401;},TrackChangesAddSuggestionResponse['decodeDelimited']=function(_0xc7e9b0){return _0xc7e9b0 instanceof $Reader||(_0xc7e9b0=new $Reader(_0xc7e9b0)),this['decode'](_0xc7e9b0,_0xc7e9b0['uint32']());},TrackChangesAddSuggestionResponse['verify']=function(_0x5c1f7b){return'object'!=typeof _0x5c1f7b||null===_0x5c1f7b?'object\x20expected':null!=_0x5c1f7b['id']&&_0x5c1f7b['hasOwnProperty']('id')&&!$util['isString'](_0x5c1f7b['id'])?'id:\x20string\x20expected':null!=_0x5c1f7b['authorId']&&_0x5c1f7b['hasOwnProperty']('authorId')&&!$util['isString'](_0x5c1f7b['authorId'])?'authorId:\x20string\x20expected':null!=_0x5c1f7b['type']&&_0x5c1f7b['hasOwnProperty']('type')&&!$util['isString'](_0x5c1f7b['type'])?'type:\x20string\x20expected':null!=_0x5c1f7b['createdAt']&&_0x5c1f7b['hasOwnProperty']('createdAt')&&!$util['isString'](_0x5c1f7b['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x5c1f7b['data']&&_0x5c1f7b['hasOwnProperty']('data')&&!$util['isString'](_0x5c1f7b['data'])?'data:\x20string\x20expected':null!=_0x5c1f7b['hasComments']&&_0x5c1f7b['hasOwnProperty']('hasComments')&&'boolean'!=typeof _0x5c1f7b['hasComments']?'hasComments:\x20boolean\x20expected':null!=_0x5c1f7b['state']&&_0x5c1f7b['hasOwnProperty']('state')&&!$util['isString'](_0x5c1f7b['state'])?'state:\x20string\x20expected':null!=_0x5c1f7b['attributes']&&_0x5c1f7b['hasOwnProperty']('attributes')&&!$util['isString'](_0x5c1f7b['attributes'])?'attributes:\x20string\x20expected':null;},TrackChangesAddSuggestionResponse['fromObject']=function(object){if(object instanceof $root['TrackChangesAddSuggestionResponse'])return object;let _0x4cae2a=new $root['TrackChangesAddSuggestionResponse']();return null!=object['id']&&(_0x4cae2a['id']=String(object['id'])),null!=object['authorId']&&(_0x4cae2a['authorId']=String(object['authorId'])),null!=object['type']&&(_0x4cae2a['type']=String(object['type'])),null!=object['createdAt']&&(_0x4cae2a['createdAt']=String(object['createdAt'])),null!=object['data']&&(_0x4cae2a['data']=String(object['data'])),null!=object['hasComments']&&(_0x4cae2a['hasComments']=Boolean(object['hasComments'])),null!=object['state']&&(_0x4cae2a['state']=String(object['state'])),null!=object['attributes']&&(_0x4cae2a['attributes']=String(object['attributes'])),_0x4cae2a;},TrackChangesAddSuggestionResponse['toObject']=function(_0x92869e,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['authorId']='',object['type']='',object['createdAt']='',object['data']='',object['hasComments']=!0x1,object['state']='',object['attributes']=''),null!=_0x92869e['id']&&_0x92869e['hasOwnProperty']('id')&&(object['id']=_0x92869e['id']),null!=_0x92869e['authorId']&&_0x92869e['hasOwnProperty']('authorId')&&(object['authorId']=_0x92869e['authorId']),null!=_0x92869e['type']&&_0x92869e['hasOwnProperty']('type')&&(object['type']=_0x92869e['type']),null!=_0x92869e['createdAt']&&_0x92869e['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x92869e['createdAt']),null!=_0x92869e['data']&&_0x92869e['hasOwnProperty']('data')&&(object['data']=_0x92869e['data']),null!=_0x92869e['hasComments']&&_0x92869e['hasOwnProperty']('hasComments')&&(object['hasComments']=_0x92869e['hasComments']),null!=_0x92869e['state']&&_0x92869e['hasOwnProperty']('state')&&(object['state']=_0x92869e['state']),null!=_0x92869e['attributes']&&_0x92869e['hasOwnProperty']('attributes')&&(object['attributes']=_0x92869e['attributes']),object;},TrackChangesAddSuggestionResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesAddSuggestionResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesAddSuggestionResponse';},TrackChangesAddSuggestionResponse;})()),$root['TrackChangesConnectResponse']=((()=>{function TrackChangesConnectResponse(properties){if(this['suggestions']=[],this['suggestionsV2']=[],properties){for(let _0x46d854=Object['keys'](properties),_0x5df94a=0x0;_0x5df94a<_0x46d854['length'];++_0x5df94a)null!=properties[_0x46d854[_0x5df94a]]&&(this[_0x46d854[_0x5df94a]]=properties[_0x46d854[_0x5df94a]]);}}return TrackChangesConnectResponse['prototype']['channel']='',TrackChangesConnectResponse['prototype']['suggestions']=$util['emptyArray'],TrackChangesConnectResponse['prototype']['suggestionsV2']=$util['emptyArray'],TrackChangesConnectResponse['create']=function(properties){return new TrackChangesConnectResponse(properties);},TrackChangesConnectResponse['encode']=function(_0x3c8515,writer){if(writer||(writer=$Writer['create']()),null!=_0x3c8515['channel']&&Object['hasOwnProperty']['call'](_0x3c8515,'channel')&&writer['uint32'](0xa)['string'](_0x3c8515['channel']),null!=_0x3c8515['suggestions']&&_0x3c8515['suggestions']['length']){for(let _0x18507a=0x0;_0x18507a<_0x3c8515['suggestions']['length'];++_0x18507a)writer['uint32'](0x12)['string'](_0x3c8515['suggestions'][_0x18507a]);}if(null!=_0x3c8515['suggestionsV2']&&_0x3c8515['suggestionsV2']['length']){for(let _0x328e69=0x0;_0x328e69<_0x3c8515['suggestionsV2']['length'];++_0x328e69)$root['SuggestionDescriptor']['encode'](_0x3c8515['suggestionsV2'][_0x328e69],writer['uint32'](0x1a)['fork']())['ldelim']();}return writer;},TrackChangesConnectResponse['encodeDelimited']=function(_0x4d83ab,writer){return this['encode'](_0x4d83ab,writer)['ldelim']();},TrackChangesConnectResponse['decode']=function(_0xb62979,length){_0xb62979 instanceof $Reader||(_0xb62979=$Reader['create'](_0xb62979));let _0x23a541=void 0x0===length?_0xb62979['len']:_0xb62979['pos']+length,_0x348118=new $root['TrackChangesConnectResponse']();for(;_0xb62979['pos']<_0x23a541;){let tag=_0xb62979['uint32']();switch(tag>>>0x3){case 0x1:_0x348118['channel']=_0xb62979['string']();break;case 0x2:_0x348118['suggestions']&&_0x348118['suggestions']['length']||(_0x348118['suggestions']=[]),_0x348118['suggestions']['push'](_0xb62979['string']());break;case 0x3:_0x348118['suggestionsV2']&&_0x348118['suggestionsV2']['length']||(_0x348118['suggestionsV2']=[]),_0x348118['suggestionsV2']['push']($root['SuggestionDescriptor']['decode'](_0xb62979,_0xb62979['uint32']()));break;default:_0xb62979['skipType'](0x7&tag);}}return _0x348118;},TrackChangesConnectResponse['decodeDelimited']=function(_0x135e42){return _0x135e42 instanceof $Reader||(_0x135e42=new $Reader(_0x135e42)),this['decode'](_0x135e42,_0x135e42['uint32']());},TrackChangesConnectResponse['verify']=function(_0x57b574){if('object'!=typeof _0x57b574||null===_0x57b574)return'object\x20expected';if(null!=_0x57b574['channel']&&_0x57b574['hasOwnProperty']('channel')&&!$util['isString'](_0x57b574['channel']))return'channel:\x20string\x20expected';if(null!=_0x57b574['suggestions']&&_0x57b574['hasOwnProperty']('suggestions')){if(!Array['isArray'](_0x57b574['suggestions']))return'suggestions:\x20array\x20expected';for(let _0x47d007=0x0;_0x47d007<_0x57b574['suggestions']['length'];++_0x47d007)if(!$util['isString'](_0x57b574['suggestions'][_0x47d007]))return'suggestions:\x20string[]\x20expected';}if(null!=_0x57b574['suggestionsV2']&&_0x57b574['hasOwnProperty']('suggestionsV2')){if(!Array['isArray'](_0x57b574['suggestionsV2']))return'suggestionsV2:\x20array\x20expected';for(let _0x1c7232=0x0;_0x1c7232<_0x57b574['suggestionsV2']['length'];++_0x1c7232){let _0x4c59f4=$root['SuggestionDescriptor']['verify'](_0x57b574['suggestionsV2'][_0x1c7232]);if(_0x4c59f4)return'suggestionsV2.'+_0x4c59f4;}}return null;},TrackChangesConnectResponse['fromObject']=function(object){if(object instanceof $root['TrackChangesConnectResponse'])return object;let _0x13aee0=new $root['TrackChangesConnectResponse']();if(null!=object['channel']&&(_0x13aee0['channel']=String(object['channel'])),object['suggestions']){if(!Array['isArray'](object['suggestions']))throw TypeError('.TrackChangesConnectResponse.suggestions:\x20array\x20expected');_0x13aee0['suggestions']=[];for(let _0x3eceaa=0x0;_0x3eceaa<object['suggestions']['length'];++_0x3eceaa)_0x13aee0['suggestions'][_0x3eceaa]=String(object['suggestions'][_0x3eceaa]);}if(object['suggestionsV2']){if(!Array['isArray'](object['suggestionsV2']))throw TypeError('.TrackChangesConnectResponse.suggestionsV2:\x20array\x20expected');_0x13aee0['suggestionsV2']=[];for(let _0x290dec=0x0;_0x290dec<object['suggestionsV2']['length'];++_0x290dec){if('object'!=typeof object['suggestionsV2'][_0x290dec])throw TypeError('.TrackChangesConnectResponse.suggestionsV2:\x20object\x20expected');_0x13aee0['suggestionsV2'][_0x290dec]=$root['SuggestionDescriptor']['fromObject'](object['suggestionsV2'][_0x290dec]);}}return _0x13aee0;},TrackChangesConnectResponse['toObject']=function(_0x542ef2,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['suggestions']=[],object['suggestionsV2']=[]),options['defaults']&&(object['channel']=''),null!=_0x542ef2['channel']&&_0x542ef2['hasOwnProperty']('channel')&&(object['channel']=_0x542ef2['channel']),_0x542ef2['suggestions']&&_0x542ef2['suggestions']['length']){object['suggestions']=[];for(let _0x1a3c76=0x0;_0x1a3c76<_0x542ef2['suggestions']['length'];++_0x1a3c76)object['suggestions'][_0x1a3c76]=_0x542ef2['suggestions'][_0x1a3c76];}if(_0x542ef2['suggestionsV2']&&_0x542ef2['suggestionsV2']['length']){object['suggestionsV2']=[];for(let _0x1d40e9=0x0;_0x1d40e9<_0x542ef2['suggestionsV2']['length'];++_0x1d40e9)object['suggestionsV2'][_0x1d40e9]=$root['SuggestionDescriptor']['toObject'](_0x542ef2['suggestionsV2'][_0x1d40e9],options);}return object;},TrackChangesConnectResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesConnectResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesConnectResponse';},TrackChangesConnectResponse;})()),$root['TrackChangesGetAllSuggestionsResponse']=((()=>{function TrackChangesGetAllSuggestionsResponse(properties){if(this['suggestions']=[],this['suggestionsV2']=[],properties){for(let _0x1bd301=Object['keys'](properties),_0x58bc2c=0x0;_0x58bc2c<_0x1bd301['length'];++_0x58bc2c)null!=properties[_0x1bd301[_0x58bc2c]]&&(this[_0x1bd301[_0x58bc2c]]=properties[_0x1bd301[_0x58bc2c]]);}}return TrackChangesGetAllSuggestionsResponse['prototype']['suggestions']=$util['emptyArray'],TrackChangesGetAllSuggestionsResponse['prototype']['suggestionsV2']=$util['emptyArray'],TrackChangesGetAllSuggestionsResponse['create']=function(properties){return new TrackChangesGetAllSuggestionsResponse(properties);},TrackChangesGetAllSuggestionsResponse['encode']=function(_0x2f2c0a,writer){if(writer||(writer=$Writer['create']()),null!=_0x2f2c0a['suggestions']&&_0x2f2c0a['suggestions']['length']){for(let _0x282c37=0x0;_0x282c37<_0x2f2c0a['suggestions']['length'];++_0x282c37)writer['uint32'](0xa)['string'](_0x2f2c0a['suggestions'][_0x282c37]);}if(null!=_0x2f2c0a['suggestionsV2']&&_0x2f2c0a['suggestionsV2']['length']){for(let _0xb0909c=0x0;_0xb0909c<_0x2f2c0a['suggestionsV2']['length'];++_0xb0909c)$root['SuggestionDescriptor']['encode'](_0x2f2c0a['suggestionsV2'][_0xb0909c],writer['uint32'](0x12)['fork']())['ldelim']();}return writer;},TrackChangesGetAllSuggestionsResponse['encodeDelimited']=function(_0x464325,writer){return this['encode'](_0x464325,writer)['ldelim']();},TrackChangesGetAllSuggestionsResponse['decode']=function(_0x5f0403,length){_0x5f0403 instanceof $Reader||(_0x5f0403=$Reader['create'](_0x5f0403));let _0x1c35c9=void 0x0===length?_0x5f0403['len']:_0x5f0403['pos']+length,_0x242c8f=new $root['TrackChangesGetAllSuggestionsResponse']();for(;_0x5f0403['pos']<_0x1c35c9;){let tag=_0x5f0403['uint32']();switch(tag>>>0x3){case 0x1:_0x242c8f['suggestions']&&_0x242c8f['suggestions']['length']||(_0x242c8f['suggestions']=[]),_0x242c8f['suggestions']['push'](_0x5f0403['string']());break;case 0x2:_0x242c8f['suggestionsV2']&&_0x242c8f['suggestionsV2']['length']||(_0x242c8f['suggestionsV2']=[]),_0x242c8f['suggestionsV2']['push']($root['SuggestionDescriptor']['decode'](_0x5f0403,_0x5f0403['uint32']()));break;default:_0x5f0403['skipType'](0x7&tag);}}return _0x242c8f;},TrackChangesGetAllSuggestionsResponse['decodeDelimited']=function(_0x30c59c){return _0x30c59c instanceof $Reader||(_0x30c59c=new $Reader(_0x30c59c)),this['decode'](_0x30c59c,_0x30c59c['uint32']());},TrackChangesGetAllSuggestionsResponse['verify']=function(_0x25c4e7){if('object'!=typeof _0x25c4e7||null===_0x25c4e7)return'object\x20expected';if(null!=_0x25c4e7['suggestions']&&_0x25c4e7['hasOwnProperty']('suggestions')){if(!Array['isArray'](_0x25c4e7['suggestions']))return'suggestions:\x20array\x20expected';for(let _0x5a4b75=0x0;_0x5a4b75<_0x25c4e7['suggestions']['length'];++_0x5a4b75)if(!$util['isString'](_0x25c4e7['suggestions'][_0x5a4b75]))return'suggestions:\x20string[]\x20expected';}if(null!=_0x25c4e7['suggestionsV2']&&_0x25c4e7['hasOwnProperty']('suggestionsV2')){if(!Array['isArray'](_0x25c4e7['suggestionsV2']))return'suggestionsV2:\x20array\x20expected';for(let _0x2559a2=0x0;_0x2559a2<_0x25c4e7['suggestionsV2']['length'];++_0x2559a2){let _0x172c3d=$root['SuggestionDescriptor']['verify'](_0x25c4e7['suggestionsV2'][_0x2559a2]);if(_0x172c3d)return'suggestionsV2.'+_0x172c3d;}}return null;},TrackChangesGetAllSuggestionsResponse['fromObject']=function(object){if(object instanceof $root['TrackChangesGetAllSuggestionsResponse'])return object;let _0x49dc61=new $root['TrackChangesGetAllSuggestionsResponse']();if(object['suggestions']){if(!Array['isArray'](object['suggestions']))throw TypeError('.TrackChangesGetAllSuggestionsResponse.suggestions:\x20array\x20expected');_0x49dc61['suggestions']=[];for(let _0x38c0fc=0x0;_0x38c0fc<object['suggestions']['length'];++_0x38c0fc)_0x49dc61['suggestions'][_0x38c0fc]=String(object['suggestions'][_0x38c0fc]);}if(object['suggestionsV2']){if(!Array['isArray'](object['suggestionsV2']))throw TypeError('.TrackChangesGetAllSuggestionsResponse.suggestionsV2:\x20array\x20expected');_0x49dc61['suggestionsV2']=[];for(let _0x569978=0x0;_0x569978<object['suggestionsV2']['length'];++_0x569978){if('object'!=typeof object['suggestionsV2'][_0x569978])throw TypeError('.TrackChangesGetAllSuggestionsResponse.suggestionsV2:\x20object\x20expected');_0x49dc61['suggestionsV2'][_0x569978]=$root['SuggestionDescriptor']['fromObject'](object['suggestionsV2'][_0x569978]);}}return _0x49dc61;},TrackChangesGetAllSuggestionsResponse['toObject']=function(_0x1f8781,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['suggestions']=[],object['suggestionsV2']=[]),_0x1f8781['suggestions']&&_0x1f8781['suggestions']['length']){object['suggestions']=[];for(let _0x5be38a=0x0;_0x5be38a<_0x1f8781['suggestions']['length'];++_0x5be38a)object['suggestions'][_0x5be38a]=_0x1f8781['suggestions'][_0x5be38a];}if(_0x1f8781['suggestionsV2']&&_0x1f8781['suggestionsV2']['length']){object['suggestionsV2']=[];for(let _0x398aa3=0x0;_0x398aa3<_0x1f8781['suggestionsV2']['length'];++_0x398aa3)object['suggestionsV2'][_0x398aa3]=$root['SuggestionDescriptor']['toObject'](_0x1f8781['suggestionsV2'][_0x398aa3],options);}return object;},TrackChangesGetAllSuggestionsResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesGetAllSuggestionsResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesGetAllSuggestionsResponse';},TrackChangesGetAllSuggestionsResponse;})()),$root['TrackChangesGetSuggestionResponse']=((()=>{function TrackChangesGetSuggestionResponse(properties){if(properties){for(let _0x4bd098=Object['keys'](properties),_0x5dbdac=0x0;_0x5dbdac<_0x4bd098['length'];++_0x5dbdac)null!=properties[_0x4bd098[_0x5dbdac]]&&(this[_0x4bd098[_0x5dbdac]]=properties[_0x4bd098[_0x5dbdac]]);}}return TrackChangesGetSuggestionResponse['prototype']['id']='',TrackChangesGetSuggestionResponse['prototype']['authorId']='',TrackChangesGetSuggestionResponse['prototype']['type']='',TrackChangesGetSuggestionResponse['prototype']['createdAt']='',TrackChangesGetSuggestionResponse['prototype']['data']='',TrackChangesGetSuggestionResponse['prototype']['hasComments']=!0x1,TrackChangesGetSuggestionResponse['prototype']['state']='',TrackChangesGetSuggestionResponse['prototype']['attributes']='',TrackChangesGetSuggestionResponse['create']=function(properties){return new TrackChangesGetSuggestionResponse(properties);},TrackChangesGetSuggestionResponse['encode']=function(_0x1b1fb6,writer){return writer||(writer=$Writer['create']()),null!=_0x1b1fb6['id']&&Object['hasOwnProperty']['call'](_0x1b1fb6,'id')&&writer['uint32'](0xa)['string'](_0x1b1fb6['id']),null!=_0x1b1fb6['authorId']&&Object['hasOwnProperty']['call'](_0x1b1fb6,'authorId')&&writer['uint32'](0x12)['string'](_0x1b1fb6['authorId']),null!=_0x1b1fb6['type']&&Object['hasOwnProperty']['call'](_0x1b1fb6,'type')&&writer['uint32'](0x1a)['string'](_0x1b1fb6['type']),null!=_0x1b1fb6['createdAt']&&Object['hasOwnProperty']['call'](_0x1b1fb6,'createdAt')&&writer['uint32'](0x22)['string'](_0x1b1fb6['createdAt']),null!=_0x1b1fb6['data']&&Object['hasOwnProperty']['call'](_0x1b1fb6,'data')&&writer['uint32'](0x2a)['string'](_0x1b1fb6['data']),null!=_0x1b1fb6['hasComments']&&Object['hasOwnProperty']['call'](_0x1b1fb6,'hasComments')&&writer['uint32'](0x30)['bool'](_0x1b1fb6['hasComments']),null!=_0x1b1fb6['state']&&Object['hasOwnProperty']['call'](_0x1b1fb6,'state')&&writer['uint32'](0x3a)['string'](_0x1b1fb6['state']),null!=_0x1b1fb6['attributes']&&Object['hasOwnProperty']['call'](_0x1b1fb6,'attributes')&&writer['uint32'](0x42)['string'](_0x1b1fb6['attributes']),writer;},TrackChangesGetSuggestionResponse['encodeDelimited']=function(_0x4382fd,writer){return this['encode'](_0x4382fd,writer)['ldelim']();},TrackChangesGetSuggestionResponse['decode']=function(_0x542fc0,length){_0x542fc0 instanceof $Reader||(_0x542fc0=$Reader['create'](_0x542fc0));let _0xe39c05=void 0x0===length?_0x542fc0['len']:_0x542fc0['pos']+length,_0x1be282=new $root['TrackChangesGetSuggestionResponse']();for(;_0x542fc0['pos']<_0xe39c05;){let tag=_0x542fc0['uint32']();switch(tag>>>0x3){case 0x1:_0x1be282['id']=_0x542fc0['string']();break;case 0x2:_0x1be282['authorId']=_0x542fc0['string']();break;case 0x3:_0x1be282['type']=_0x542fc0['string']();break;case 0x4:_0x1be282['createdAt']=_0x542fc0['string']();break;case 0x5:_0x1be282['data']=_0x542fc0['string']();break;case 0x6:_0x1be282['hasComments']=_0x542fc0['bool']();break;case 0x7:_0x1be282['state']=_0x542fc0['string']();break;case 0x8:_0x1be282['attributes']=_0x542fc0['string']();break;default:_0x542fc0['skipType'](0x7&tag);}}return _0x1be282;},TrackChangesGetSuggestionResponse['decodeDelimited']=function(_0x239990){return _0x239990 instanceof $Reader||(_0x239990=new $Reader(_0x239990)),this['decode'](_0x239990,_0x239990['uint32']());},TrackChangesGetSuggestionResponse['verify']=function(_0x60a4a7){return'object'!=typeof _0x60a4a7||null===_0x60a4a7?'object\x20expected':null!=_0x60a4a7['id']&&_0x60a4a7['hasOwnProperty']('id')&&!$util['isString'](_0x60a4a7['id'])?'id:\x20string\x20expected':null!=_0x60a4a7['authorId']&&_0x60a4a7['hasOwnProperty']('authorId')&&!$util['isString'](_0x60a4a7['authorId'])?'authorId:\x20string\x20expected':null!=_0x60a4a7['type']&&_0x60a4a7['hasOwnProperty']('type')&&!$util['isString'](_0x60a4a7['type'])?'type:\x20string\x20expected':null!=_0x60a4a7['createdAt']&&_0x60a4a7['hasOwnProperty']('createdAt')&&!$util['isString'](_0x60a4a7['createdAt'])?'createdAt:\x20string\x20expected':null!=_0x60a4a7['data']&&_0x60a4a7['hasOwnProperty']('data')&&!$util['isString'](_0x60a4a7['data'])?'data:\x20string\x20expected':null!=_0x60a4a7['hasComments']&&_0x60a4a7['hasOwnProperty']('hasComments')&&'boolean'!=typeof _0x60a4a7['hasComments']?'hasComments:\x20boolean\x20expected':null!=_0x60a4a7['state']&&_0x60a4a7['hasOwnProperty']('state')&&!$util['isString'](_0x60a4a7['state'])?'state:\x20string\x20expected':null!=_0x60a4a7['attributes']&&_0x60a4a7['hasOwnProperty']('attributes')&&!$util['isString'](_0x60a4a7['attributes'])?'attributes:\x20string\x20expected':null;},TrackChangesGetSuggestionResponse['fromObject']=function(object){if(object instanceof $root['TrackChangesGetSuggestionResponse'])return object;let _0x39f1e5=new $root['TrackChangesGetSuggestionResponse']();return null!=object['id']&&(_0x39f1e5['id']=String(object['id'])),null!=object['authorId']&&(_0x39f1e5['authorId']=String(object['authorId'])),null!=object['type']&&(_0x39f1e5['type']=String(object['type'])),null!=object['createdAt']&&(_0x39f1e5['createdAt']=String(object['createdAt'])),null!=object['data']&&(_0x39f1e5['data']=String(object['data'])),null!=object['hasComments']&&(_0x39f1e5['hasComments']=Boolean(object['hasComments'])),null!=object['state']&&(_0x39f1e5['state']=String(object['state'])),null!=object['attributes']&&(_0x39f1e5['attributes']=String(object['attributes'])),_0x39f1e5;},TrackChangesGetSuggestionResponse['toObject']=function(_0x59005e,options){options||(options={});let object={};return options['defaults']&&(object['id']='',object['authorId']='',object['type']='',object['createdAt']='',object['data']='',object['hasComments']=!0x1,object['state']='',object['attributes']=''),null!=_0x59005e['id']&&_0x59005e['hasOwnProperty']('id')&&(object['id']=_0x59005e['id']),null!=_0x59005e['authorId']&&_0x59005e['hasOwnProperty']('authorId')&&(object['authorId']=_0x59005e['authorId']),null!=_0x59005e['type']&&_0x59005e['hasOwnProperty']('type')&&(object['type']=_0x59005e['type']),null!=_0x59005e['createdAt']&&_0x59005e['hasOwnProperty']('createdAt')&&(object['createdAt']=_0x59005e['createdAt']),null!=_0x59005e['data']&&_0x59005e['hasOwnProperty']('data')&&(object['data']=_0x59005e['data']),null!=_0x59005e['hasComments']&&_0x59005e['hasOwnProperty']('hasComments')&&(object['hasComments']=_0x59005e['hasComments']),null!=_0x59005e['state']&&_0x59005e['hasOwnProperty']('state')&&(object['state']=_0x59005e['state']),null!=_0x59005e['attributes']&&_0x59005e['hasOwnProperty']('attributes')&&(object['attributes']=_0x59005e['attributes']),object;},TrackChangesGetSuggestionResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},TrackChangesGetSuggestionResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/TrackChangesGetSuggestionResponse';},TrackChangesGetSuggestionResponse;})()),$root['UserDescriptor']=((()=>{function UserDescriptor(properties){if(this['attributes']=[],properties){for(let _0x39f036=Object['keys'](properties),_0x570b70=0x0;_0x570b70<_0x39f036['length'];++_0x570b70)null!=properties[_0x39f036[_0x570b70]]&&(this[_0x39f036[_0x570b70]]=properties[_0x39f036[_0x570b70]]);}}return UserDescriptor['prototype']['attributes']=$util['emptyArray'],UserDescriptor['create']=function(properties){return new UserDescriptor(properties);},UserDescriptor['encode']=function(_0x333748,writer){if(writer||(writer=$Writer['create']()),null!=_0x333748['attributes']&&_0x333748['attributes']['length']){for(let _0x732304=0x0;_0x732304<_0x333748['attributes']['length'];++_0x732304)$root['KeyValueDescriptor']['encode'](_0x333748['attributes'][_0x732304],writer['uint32'](0xa)['fork']())['ldelim']();}return writer;},UserDescriptor['encodeDelimited']=function(_0x5164c9,writer){return this['encode'](_0x5164c9,writer)['ldelim']();},UserDescriptor['decode']=function(_0x29f3a1,length){_0x29f3a1 instanceof $Reader||(_0x29f3a1=$Reader['create'](_0x29f3a1));let _0x4b0c76=void 0x0===length?_0x29f3a1['len']:_0x29f3a1['pos']+length,_0x54818f=new $root['UserDescriptor']();for(;_0x29f3a1['pos']<_0x4b0c76;){let tag=_0x29f3a1['uint32']();if(tag>>>0x3==0x1)_0x54818f['attributes']&&_0x54818f['attributes']['length']||(_0x54818f['attributes']=[]),_0x54818f['attributes']['push']($root['KeyValueDescriptor']['decode'](_0x29f3a1,_0x29f3a1['uint32']()));else _0x29f3a1['skipType'](0x7&tag);}return _0x54818f;},UserDescriptor['decodeDelimited']=function(_0x370fcb){return _0x370fcb instanceof $Reader||(_0x370fcb=new $Reader(_0x370fcb)),this['decode'](_0x370fcb,_0x370fcb['uint32']());},UserDescriptor['verify']=function(_0x5eac5d){if('object'!=typeof _0x5eac5d||null===_0x5eac5d)return'object\x20expected';if(null!=_0x5eac5d['attributes']&&_0x5eac5d['hasOwnProperty']('attributes')){if(!Array['isArray'](_0x5eac5d['attributes']))return'attributes:\x20array\x20expected';for(let _0xcdb923=0x0;_0xcdb923<_0x5eac5d['attributes']['length'];++_0xcdb923){let _0x4ee27b=$root['KeyValueDescriptor']['verify'](_0x5eac5d['attributes'][_0xcdb923]);if(_0x4ee27b)return'attributes.'+_0x4ee27b;}}return null;},UserDescriptor['fromObject']=function(object){if(object instanceof $root['UserDescriptor'])return object;let _0x2ea232=new $root['UserDescriptor']();if(object['attributes']){if(!Array['isArray'](object['attributes']))throw TypeError('.UserDescriptor.attributes:\x20array\x20expected');_0x2ea232['attributes']=[];for(let _0x15e9c2=0x0;_0x15e9c2<object['attributes']['length'];++_0x15e9c2){if('object'!=typeof object['attributes'][_0x15e9c2])throw TypeError('.UserDescriptor.attributes:\x20object\x20expected');_0x2ea232['attributes'][_0x15e9c2]=$root['KeyValueDescriptor']['fromObject'](object['attributes'][_0x15e9c2]);}}return _0x2ea232;},UserDescriptor['toObject']=function(_0x1e0694,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['attributes']=[]),_0x1e0694['attributes']&&_0x1e0694['attributes']['length']){object['attributes']=[];for(let _0x56a90c=0x0;_0x56a90c<_0x1e0694['attributes']['length'];++_0x56a90c)object['attributes'][_0x56a90c]=$root['KeyValueDescriptor']['toObject'](_0x1e0694['attributes'][_0x56a90c],options);}return object;},UserDescriptor['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},UserDescriptor['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/UserDescriptor';},UserDescriptor;})()),$root['GetManyUsersMessage']=((()=>{function GetManyUsersMessage(properties){if(this['ids']=[],properties){for(let _0x57a982=Object['keys'](properties),_0x5d4b66=0x0;_0x5d4b66<_0x57a982['length'];++_0x5d4b66)null!=properties[_0x57a982[_0x5d4b66]]&&(this[_0x57a982[_0x5d4b66]]=properties[_0x57a982[_0x5d4b66]]);}}return GetManyUsersMessage['prototype']['ids']=$util['emptyArray'],GetManyUsersMessage['create']=function(properties){return new GetManyUsersMessage(properties);},GetManyUsersMessage['encode']=function(_0x5255e3,writer){if(writer||(writer=$Writer['create']()),null!=_0x5255e3['ids']&&_0x5255e3['ids']['length']){for(let _0x5326a8=0x0;_0x5326a8<_0x5255e3['ids']['length'];++_0x5326a8)writer['uint32'](0xa)['string'](_0x5255e3['ids'][_0x5326a8]);}return writer;},GetManyUsersMessage['encodeDelimited']=function(_0x4e8bb4,writer){return this['encode'](_0x4e8bb4,writer)['ldelim']();},GetManyUsersMessage['decode']=function(_0x333322,length){_0x333322 instanceof $Reader||(_0x333322=$Reader['create'](_0x333322));let _0x5de194=void 0x0===length?_0x333322['len']:_0x333322['pos']+length,_0x195e7c=new $root['GetManyUsersMessage']();for(;_0x333322['pos']<_0x5de194;){let tag=_0x333322['uint32']();if(tag>>>0x3==0x1)_0x195e7c['ids']&&_0x195e7c['ids']['length']||(_0x195e7c['ids']=[]),_0x195e7c['ids']['push'](_0x333322['string']());else _0x333322['skipType'](0x7&tag);}return _0x195e7c;},GetManyUsersMessage['decodeDelimited']=function(_0x162dc5){return _0x162dc5 instanceof $Reader||(_0x162dc5=new $Reader(_0x162dc5)),this['decode'](_0x162dc5,_0x162dc5['uint32']());},GetManyUsersMessage['verify']=function(_0xc6c057){if('object'!=typeof _0xc6c057||null===_0xc6c057)return'object\x20expected';if(null!=_0xc6c057['ids']&&_0xc6c057['hasOwnProperty']('ids')){if(!Array['isArray'](_0xc6c057['ids']))return'ids:\x20array\x20expected';for(let _0x8aa34f=0x0;_0x8aa34f<_0xc6c057['ids']['length'];++_0x8aa34f)if(!$util['isString'](_0xc6c057['ids'][_0x8aa34f]))return'ids:\x20string[]\x20expected';}return null;},GetManyUsersMessage['fromObject']=function(object){if(object instanceof $root['GetManyUsersMessage'])return object;let _0x52c0ba=new $root['GetManyUsersMessage']();if(object['ids']){if(!Array['isArray'](object['ids']))throw TypeError('.GetManyUsersMessage.ids:\x20array\x20expected');_0x52c0ba['ids']=[];for(let _0x538d9c=0x0;_0x538d9c<object['ids']['length'];++_0x538d9c)_0x52c0ba['ids'][_0x538d9c]=String(object['ids'][_0x538d9c]);}return _0x52c0ba;},GetManyUsersMessage['toObject']=function(_0x2b9d60,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['ids']=[]),_0x2b9d60['ids']&&_0x2b9d60['ids']['length']){object['ids']=[];for(let _0x136d11=0x0;_0x136d11<_0x2b9d60['ids']['length'];++_0x136d11)object['ids'][_0x136d11]=_0x2b9d60['ids'][_0x136d11];}return object;},GetManyUsersMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetManyUsersMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetManyUsersMessage';},GetManyUsersMessage;})()),$root['GetUserMessage']=((()=>{function GetUserMessage(properties){if(properties){for(let _0x2f3588=Object['keys'](properties),_0x3fe3cf=0x0;_0x3fe3cf<_0x2f3588['length'];++_0x3fe3cf)null!=properties[_0x2f3588[_0x3fe3cf]]&&(this[_0x2f3588[_0x3fe3cf]]=properties[_0x2f3588[_0x3fe3cf]]);}}return GetUserMessage['prototype']['id']='',GetUserMessage['create']=function(properties){return new GetUserMessage(properties);},GetUserMessage['encode']=function(_0x6c1c5f,writer){return writer||(writer=$Writer['create']()),null!=_0x6c1c5f['id']&&Object['hasOwnProperty']['call'](_0x6c1c5f,'id')&&writer['uint32'](0xa)['string'](_0x6c1c5f['id']),writer;},GetUserMessage['encodeDelimited']=function(_0x44f3e5,writer){return this['encode'](_0x44f3e5,writer)['ldelim']();},GetUserMessage['decode']=function(_0x22ac3b,length){_0x22ac3b instanceof $Reader||(_0x22ac3b=$Reader['create'](_0x22ac3b));let _0x25e9e2=void 0x0===length?_0x22ac3b['len']:_0x22ac3b['pos']+length,_0x3e3912=new $root['GetUserMessage']();for(;_0x22ac3b['pos']<_0x25e9e2;){let tag=_0x22ac3b['uint32']();if(tag>>>0x3==0x1)_0x3e3912['id']=_0x22ac3b['string']();else _0x22ac3b['skipType'](0x7&tag);}return _0x3e3912;},GetUserMessage['decodeDelimited']=function(_0x3a2f7b){return _0x3a2f7b instanceof $Reader||(_0x3a2f7b=new $Reader(_0x3a2f7b)),this['decode'](_0x3a2f7b,_0x3a2f7b['uint32']());},GetUserMessage['verify']=function(_0x465b23){return'object'!=typeof _0x465b23||null===_0x465b23?'object\x20expected':null!=_0x465b23['id']&&_0x465b23['hasOwnProperty']('id')&&!$util['isString'](_0x465b23['id'])?'id:\x20string\x20expected':null;},GetUserMessage['fromObject']=function(object){if(object instanceof $root['GetUserMessage'])return object;let _0x348198=new $root['GetUserMessage']();return null!=object['id']&&(_0x348198['id']=String(object['id'])),_0x348198;},GetUserMessage['toObject']=function(_0x509e39,options){options||(options={});let object={};return options['defaults']&&(object['id']=''),null!=_0x509e39['id']&&_0x509e39['hasOwnProperty']('id')&&(object['id']=_0x509e39['id']),object;},GetUserMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetUserMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetUserMessage';},GetUserMessage;})()),$root['GetManyUsersResponse']=((()=>{function GetManyUsersResponse(properties){if(this['users']=[],properties){for(let _0x53e19e=Object['keys'](properties),_0x47baf8=0x0;_0x47baf8<_0x53e19e['length'];++_0x47baf8)null!=properties[_0x53e19e[_0x47baf8]]&&(this[_0x53e19e[_0x47baf8]]=properties[_0x53e19e[_0x47baf8]]);}}return GetManyUsersResponse['prototype']['users']=$util['emptyArray'],GetManyUsersResponse['create']=function(properties){return new GetManyUsersResponse(properties);},GetManyUsersResponse['encode']=function(_0x578a6c,writer){if(writer||(writer=$Writer['create']()),null!=_0x578a6c['users']&&_0x578a6c['users']['length']){for(let _0x103e17=0x0;_0x103e17<_0x578a6c['users']['length'];++_0x103e17)$root['UserDescriptor']['encode'](_0x578a6c['users'][_0x103e17],writer['uint32'](0xa)['fork']())['ldelim']();}return writer;},GetManyUsersResponse['encodeDelimited']=function(_0x2b4775,writer){return this['encode'](_0x2b4775,writer)['ldelim']();},GetManyUsersResponse['decode']=function(_0x169dd9,length){_0x169dd9 instanceof $Reader||(_0x169dd9=$Reader['create'](_0x169dd9));let _0xdb6bc8=void 0x0===length?_0x169dd9['len']:_0x169dd9['pos']+length,_0x2be8f8=new $root['GetManyUsersResponse']();for(;_0x169dd9['pos']<_0xdb6bc8;){let tag=_0x169dd9['uint32']();if(tag>>>0x3==0x1)_0x2be8f8['users']&&_0x2be8f8['users']['length']||(_0x2be8f8['users']=[]),_0x2be8f8['users']['push']($root['UserDescriptor']['decode'](_0x169dd9,_0x169dd9['uint32']()));else _0x169dd9['skipType'](0x7&tag);}return _0x2be8f8;},GetManyUsersResponse['decodeDelimited']=function(_0x33d5a7){return _0x33d5a7 instanceof $Reader||(_0x33d5a7=new $Reader(_0x33d5a7)),this['decode'](_0x33d5a7,_0x33d5a7['uint32']());},GetManyUsersResponse['verify']=function(_0x3aec92){if('object'!=typeof _0x3aec92||null===_0x3aec92)return'object\x20expected';if(null!=_0x3aec92['users']&&_0x3aec92['hasOwnProperty']('users')){if(!Array['isArray'](_0x3aec92['users']))return'users:\x20array\x20expected';for(let _0x11a224=0x0;_0x11a224<_0x3aec92['users']['length'];++_0x11a224){let _0x36c317=$root['UserDescriptor']['verify'](_0x3aec92['users'][_0x11a224]);if(_0x36c317)return'users.'+_0x36c317;}}return null;},GetManyUsersResponse['fromObject']=function(object){if(object instanceof $root['GetManyUsersResponse'])return object;let _0x8db886=new $root['GetManyUsersResponse']();if(object['users']){if(!Array['isArray'](object['users']))throw TypeError('.GetManyUsersResponse.users:\x20array\x20expected');_0x8db886['users']=[];for(let _0x3368f5=0x0;_0x3368f5<object['users']['length'];++_0x3368f5){if('object'!=typeof object['users'][_0x3368f5])throw TypeError('.GetManyUsersResponse.users:\x20object\x20expected');_0x8db886['users'][_0x3368f5]=$root['UserDescriptor']['fromObject'](object['users'][_0x3368f5]);}}return _0x8db886;},GetManyUsersResponse['toObject']=function(_0x364f07,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['users']=[]),_0x364f07['users']&&_0x364f07['users']['length']){object['users']=[];for(let _0x35b08d=0x0;_0x35b08d<_0x364f07['users']['length'];++_0x35b08d)object['users'][_0x35b08d]=$root['UserDescriptor']['toObject'](_0x364f07['users'][_0x35b08d],options);}return object;},GetManyUsersResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetManyUsersResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetManyUsersResponse';},GetManyUsersResponse;})()),$root['GetUserResponse']=((()=>{function GetUserResponse(properties){if(this['attributes']=[],properties){for(let _0x25e75f=Object['keys'](properties),_0x53fb1e=0x0;_0x53fb1e<_0x25e75f['length'];++_0x53fb1e)null!=properties[_0x25e75f[_0x53fb1e]]&&(this[_0x25e75f[_0x53fb1e]]=properties[_0x25e75f[_0x53fb1e]]);}}return GetUserResponse['prototype']['attributes']=$util['emptyArray'],GetUserResponse['create']=function(properties){return new GetUserResponse(properties);},GetUserResponse['encode']=function(_0x5d1bfb,writer){if(writer||(writer=$Writer['create']()),null!=_0x5d1bfb['attributes']&&_0x5d1bfb['attributes']['length']){for(let _0xa36f91=0x0;_0xa36f91<_0x5d1bfb['attributes']['length'];++_0xa36f91)$root['KeyValueDescriptor']['encode'](_0x5d1bfb['attributes'][_0xa36f91],writer['uint32'](0xa)['fork']())['ldelim']();}return writer;},GetUserResponse['encodeDelimited']=function(_0x53d5e1,writer){return this['encode'](_0x53d5e1,writer)['ldelim']();},GetUserResponse['decode']=function(_0x4c6ba9,length){_0x4c6ba9 instanceof $Reader||(_0x4c6ba9=$Reader['create'](_0x4c6ba9));let _0x17f140=void 0x0===length?_0x4c6ba9['len']:_0x4c6ba9['pos']+length,_0x13c1b8=new $root['GetUserResponse']();for(;_0x4c6ba9['pos']<_0x17f140;){let tag=_0x4c6ba9['uint32']();if(tag>>>0x3==0x1)_0x13c1b8['attributes']&&_0x13c1b8['attributes']['length']||(_0x13c1b8['attributes']=[]),_0x13c1b8['attributes']['push']($root['KeyValueDescriptor']['decode'](_0x4c6ba9,_0x4c6ba9['uint32']()));else _0x4c6ba9['skipType'](0x7&tag);}return _0x13c1b8;},GetUserResponse['decodeDelimited']=function(_0x4e8e2b){return _0x4e8e2b instanceof $Reader||(_0x4e8e2b=new $Reader(_0x4e8e2b)),this['decode'](_0x4e8e2b,_0x4e8e2b['uint32']());},GetUserResponse['verify']=function(_0x4d8ede){if('object'!=typeof _0x4d8ede||null===_0x4d8ede)return'object\x20expected';if(null!=_0x4d8ede['attributes']&&_0x4d8ede['hasOwnProperty']('attributes')){if(!Array['isArray'](_0x4d8ede['attributes']))return'attributes:\x20array\x20expected';for(let _0x3c0e42=0x0;_0x3c0e42<_0x4d8ede['attributes']['length'];++_0x3c0e42){let _0xa1efa2=$root['KeyValueDescriptor']['verify'](_0x4d8ede['attributes'][_0x3c0e42]);if(_0xa1efa2)return'attributes.'+_0xa1efa2;}}return null;},GetUserResponse['fromObject']=function(object){if(object instanceof $root['GetUserResponse'])return object;let _0x400985=new $root['GetUserResponse']();if(object['attributes']){if(!Array['isArray'](object['attributes']))throw TypeError('.GetUserResponse.attributes:\x20array\x20expected');_0x400985['attributes']=[];for(let _0x16a074=0x0;_0x16a074<object['attributes']['length'];++_0x16a074){if('object'!=typeof object['attributes'][_0x16a074])throw TypeError('.GetUserResponse.attributes:\x20object\x20expected');_0x400985['attributes'][_0x16a074]=$root['KeyValueDescriptor']['fromObject'](object['attributes'][_0x16a074]);}}return _0x400985;},GetUserResponse['toObject']=function(_0x38eb98,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['attributes']=[]),_0x38eb98['attributes']&&_0x38eb98['attributes']['length']){object['attributes']=[];for(let _0x10d1b2=0x0;_0x10d1b2<_0x38eb98['attributes']['length'];++_0x10d1b2)object['attributes'][_0x10d1b2]=$root['KeyValueDescriptor']['toObject'](_0x38eb98['attributes'][_0x10d1b2],options);}return object;},GetUserResponse['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},GetUserResponse['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/GetUserResponse';},GetUserResponse;})()),$root['ChannelMessage']=((()=>{function _0x1e519e(properties){if(properties){for(let _0x158005=Object['keys'](properties),_0x20e120=0x0;_0x20e120<_0x158005['length'];++_0x20e120)null!=properties[_0x158005[_0x20e120]]&&(this[_0x158005[_0x20e120]]=properties[_0x158005[_0x20e120]]);}}return _0x1e519e['prototype']['type']=0x0,_0x1e519e['prototype']['socketId']='',_0x1e519e['prototype']['data']=$util['newBuffer']([]),_0x1e519e['create']=function(properties){return new _0x1e519e(properties);},_0x1e519e['encode']=function(_0x495f1e,writer){return writer||(writer=$Writer['create']()),null!=_0x495f1e['type']&&Object['hasOwnProperty']['call'](_0x495f1e,'type')&&writer['uint32'](0x8)['uint32'](_0x495f1e['type']),null!=_0x495f1e['socketId']&&Object['hasOwnProperty']['call'](_0x495f1e,'socketId')&&writer['uint32'](0x12)['string'](_0x495f1e['socketId']),null!=_0x495f1e['data']&&Object['hasOwnProperty']['call'](_0x495f1e,'data')&&writer['uint32'](0x1a)['bytes'](_0x495f1e['data']),writer;},_0x1e519e['encodeDelimited']=function(_0x2313e0,writer){return this['encode'](_0x2313e0,writer)['ldelim']();},_0x1e519e['decode']=function(_0x38bba8,length){_0x38bba8 instanceof $Reader||(_0x38bba8=$Reader['create'](_0x38bba8));let _0x5537e5=void 0x0===length?_0x38bba8['len']:_0x38bba8['pos']+length,_0x2c9faf=new $root['ChannelMessage']();for(;_0x38bba8['pos']<_0x5537e5;){let tag=_0x38bba8['uint32']();switch(tag>>>0x3){case 0x1:_0x2c9faf['type']=_0x38bba8['uint32']();break;case 0x2:_0x2c9faf['socketId']=_0x38bba8['string']();break;case 0x3:_0x2c9faf['data']=_0x38bba8['bytes']();break;default:_0x38bba8['skipType'](0x7&tag);}}return _0x2c9faf;},_0x1e519e['decodeDelimited']=function(_0x23d036){return _0x23d036 instanceof $Reader||(_0x23d036=new $Reader(_0x23d036)),this['decode'](_0x23d036,_0x23d036['uint32']());},_0x1e519e['verify']=function(_0x17ddf3){return'object'!=typeof _0x17ddf3||null===_0x17ddf3?'object\x20expected':null!=_0x17ddf3['type']&&_0x17ddf3['hasOwnProperty']('type')&&!$util['isInteger'](_0x17ddf3['type'])?'type:\x20integer\x20expected':null!=_0x17ddf3['socketId']&&_0x17ddf3['hasOwnProperty']('socketId')&&!$util['isString'](_0x17ddf3['socketId'])?'socketId:\x20string\x20expected':null!=_0x17ddf3['data']&&_0x17ddf3['hasOwnProperty']('data')&&!(_0x17ddf3['data']&&'number'==typeof _0x17ddf3['data']['length']||$util['isString'](_0x17ddf3['data']))?'data:\x20buffer\x20expected':null;},_0x1e519e['fromObject']=function(object){if(object instanceof $root['ChannelMessage'])return object;let _0x30b5f2=new $root['ChannelMessage']();return null!=object['type']&&(_0x30b5f2['type']=object['type']>>>0x0),null!=object['socketId']&&(_0x30b5f2['socketId']=String(object['socketId'])),null!=object['data']&&('string'==typeof object['data']?$util['base64']['decode'](object['data'],_0x30b5f2['data']=$util['newBuffer']($util['base64']['length'](object['data'])),0x0):object['data']['length']>=0x0&&(_0x30b5f2['data']=object['data'])),_0x30b5f2;},_0x1e519e['toObject']=function(_0x4ee310,options){options||(options={});let object={};return options['defaults']&&(object['type']=0x0,object['socketId']='',options['bytes']===String?object['data']='':(object['data']=[],options['bytes']!==Array&&(object['data']=$util['newBuffer'](object['data'])))),null!=_0x4ee310['type']&&_0x4ee310['hasOwnProperty']('type')&&(object['type']=_0x4ee310['type']),null!=_0x4ee310['socketId']&&_0x4ee310['hasOwnProperty']('socketId')&&(object['socketId']=_0x4ee310['socketId']),null!=_0x4ee310['data']&&_0x4ee310['hasOwnProperty']('data')&&(object['data']=options['bytes']===String?$util['base64']['encode'](_0x4ee310['data'],0x0,_0x4ee310['data']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x4ee310['data']):_0x4ee310['data']),object;},_0x1e519e['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},_0x1e519e['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/ChannelMessage';},_0x1e519e;})()),$root['BytesBytesPacketDataMessage']=((()=>{function BytesBytesPacketDataMessage(properties){if(properties){for(let _0x1e4955=Object['keys'](properties),_0x867607=0x0;_0x867607<_0x1e4955['length'];++_0x867607)null!=properties[_0x1e4955[_0x867607]]&&(this[_0x1e4955[_0x867607]]=properties[_0x1e4955[_0x867607]]);}}return BytesBytesPacketDataMessage['prototype']['data']=$util['newBuffer']([]),BytesBytesPacketDataMessage['prototype']['data1']=$util['newBuffer']([]),BytesBytesPacketDataMessage['create']=function(properties){return new BytesBytesPacketDataMessage(properties);},BytesBytesPacketDataMessage['encode']=function(_0x2d9f6a,writer){return writer||(writer=$Writer['create']()),null!=_0x2d9f6a['data']&&Object['hasOwnProperty']['call'](_0x2d9f6a,'data')&&writer['uint32'](0xa)['bytes'](_0x2d9f6a['data']),null!=_0x2d9f6a['data1']&&Object['hasOwnProperty']['call'](_0x2d9f6a,'data1')&&writer['uint32'](0x12)['bytes'](_0x2d9f6a['data1']),writer;},BytesBytesPacketDataMessage['encodeDelimited']=function(_0x31e79c,writer){return this['encode'](_0x31e79c,writer)['ldelim']();},BytesBytesPacketDataMessage['decode']=function(_0x47e18c,length){_0x47e18c instanceof $Reader||(_0x47e18c=$Reader['create'](_0x47e18c));let _0xda12ce=void 0x0===length?_0x47e18c['len']:_0x47e18c['pos']+length,_0x5bd1c7=new $root['BytesBytesPacketDataMessage']();for(;_0x47e18c['pos']<_0xda12ce;){let tag=_0x47e18c['uint32']();switch(tag>>>0x3){case 0x1:_0x5bd1c7['data']=_0x47e18c['bytes']();break;case 0x2:_0x5bd1c7['data1']=_0x47e18c['bytes']();break;default:_0x47e18c['skipType'](0x7&tag);}}return _0x5bd1c7;},BytesBytesPacketDataMessage['decodeDelimited']=function(_0xb794d6){return _0xb794d6 instanceof $Reader||(_0xb794d6=new $Reader(_0xb794d6)),this['decode'](_0xb794d6,_0xb794d6['uint32']());},BytesBytesPacketDataMessage['verify']=function(_0x3d465e){return'object'!=typeof _0x3d465e||null===_0x3d465e?'object\x20expected':null!=_0x3d465e['data']&&_0x3d465e['hasOwnProperty']('data')&&!(_0x3d465e['data']&&'number'==typeof _0x3d465e['data']['length']||$util['isString'](_0x3d465e['data']))?'data:\x20buffer\x20expected':null!=_0x3d465e['data1']&&_0x3d465e['hasOwnProperty']('data1')&&!(_0x3d465e['data1']&&'number'==typeof _0x3d465e['data1']['length']||$util['isString'](_0x3d465e['data1']))?'data1:\x20buffer\x20expected':null;},BytesBytesPacketDataMessage['fromObject']=function(object){if(object instanceof $root['BytesBytesPacketDataMessage'])return object;let _0x13baec=new $root['BytesBytesPacketDataMessage']();return null!=object['data']&&('string'==typeof object['data']?$util['base64']['decode'](object['data'],_0x13baec['data']=$util['newBuffer']($util['base64']['length'](object['data'])),0x0):object['data']['length']>=0x0&&(_0x13baec['data']=object['data'])),null!=object['data1']&&('string'==typeof object['data1']?$util['base64']['decode'](object['data1'],_0x13baec['data1']=$util['newBuffer']($util['base64']['length'](object['data1'])),0x0):object['data1']['length']>=0x0&&(_0x13baec['data1']=object['data1'])),_0x13baec;},BytesBytesPacketDataMessage['toObject']=function(_0x355f81,options){options||(options={});let object={};return options['defaults']&&(options['bytes']===String?object['data']='':(object['data']=[],options['bytes']!==Array&&(object['data']=$util['newBuffer'](object['data']))),options['bytes']===String?object['data1']='':(object['data1']=[],options['bytes']!==Array&&(object['data1']=$util['newBuffer'](object['data1'])))),null!=_0x355f81['data']&&_0x355f81['hasOwnProperty']('data')&&(object['data']=options['bytes']===String?$util['base64']['encode'](_0x355f81['data'],0x0,_0x355f81['data']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x355f81['data']):_0x355f81['data']),null!=_0x355f81['data1']&&_0x355f81['hasOwnProperty']('data1')&&(object['data1']=options['bytes']===String?$util['base64']['encode'](_0x355f81['data1'],0x0,_0x355f81['data1']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x355f81['data1']):_0x355f81['data1']),object;},BytesBytesPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},BytesBytesPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/BytesBytesPacketDataMessage';},BytesBytesPacketDataMessage;})()),$root['NumberBytesPacketDataMessage']=((()=>{function NumberBytesPacketDataMessage(properties){if(properties){for(let _0x29ac98=Object['keys'](properties),_0x7c34fb=0x0;_0x7c34fb<_0x29ac98['length'];++_0x7c34fb)null!=properties[_0x29ac98[_0x7c34fb]]&&(this[_0x29ac98[_0x7c34fb]]=properties[_0x29ac98[_0x7c34fb]]);}}return NumberBytesPacketDataMessage['prototype']['data']=0x0,NumberBytesPacketDataMessage['prototype']['data1']=$util['newBuffer']([]),NumberBytesPacketDataMessage['create']=function(properties){return new NumberBytesPacketDataMessage(properties);},NumberBytesPacketDataMessage['encode']=function(_0x3f5060,writer){return writer||(writer=$Writer['create']()),null!=_0x3f5060['data']&&Object['hasOwnProperty']['call'](_0x3f5060,'data')&&writer['uint32'](0x8)['uint32'](_0x3f5060['data']),null!=_0x3f5060['data1']&&Object['hasOwnProperty']['call'](_0x3f5060,'data1')&&writer['uint32'](0x12)['bytes'](_0x3f5060['data1']),writer;},NumberBytesPacketDataMessage['encodeDelimited']=function(_0x5e03b4,writer){return this['encode'](_0x5e03b4,writer)['ldelim']();},NumberBytesPacketDataMessage['decode']=function(_0x54c17f,length){_0x54c17f instanceof $Reader||(_0x54c17f=$Reader['create'](_0x54c17f));let _0x36b86c=void 0x0===length?_0x54c17f['len']:_0x54c17f['pos']+length,_0x1fb05d=new $root['NumberBytesPacketDataMessage']();for(;_0x54c17f['pos']<_0x36b86c;){let tag=_0x54c17f['uint32']();switch(tag>>>0x3){case 0x1:_0x1fb05d['data']=_0x54c17f['uint32']();break;case 0x2:_0x1fb05d['data1']=_0x54c17f['bytes']();break;default:_0x54c17f['skipType'](0x7&tag);}}return _0x1fb05d;},NumberBytesPacketDataMessage['decodeDelimited']=function(_0x496d13){return _0x496d13 instanceof $Reader||(_0x496d13=new $Reader(_0x496d13)),this['decode'](_0x496d13,_0x496d13['uint32']());},NumberBytesPacketDataMessage['verify']=function(_0x540ef5){return'object'!=typeof _0x540ef5||null===_0x540ef5?'object\x20expected':null!=_0x540ef5['data']&&_0x540ef5['hasOwnProperty']('data')&&!$util['isInteger'](_0x540ef5['data'])?'data:\x20integer\x20expected':null!=_0x540ef5['data1']&&_0x540ef5['hasOwnProperty']('data1')&&!(_0x540ef5['data1']&&'number'==typeof _0x540ef5['data1']['length']||$util['isString'](_0x540ef5['data1']))?'data1:\x20buffer\x20expected':null;},NumberBytesPacketDataMessage['fromObject']=function(object){if(object instanceof $root['NumberBytesPacketDataMessage'])return object;let _0x3b1d08=new $root['NumberBytesPacketDataMessage']();return null!=object['data']&&(_0x3b1d08['data']=object['data']>>>0x0),null!=object['data1']&&('string'==typeof object['data1']?$util['base64']['decode'](object['data1'],_0x3b1d08['data1']=$util['newBuffer']($util['base64']['length'](object['data1'])),0x0):object['data1']['length']>=0x0&&(_0x3b1d08['data1']=object['data1'])),_0x3b1d08;},NumberBytesPacketDataMessage['toObject']=function(_0x3ff877,options){options||(options={});let object={};return options['defaults']&&(object['data']=0x0,options['bytes']===String?object['data1']='':(object['data1']=[],options['bytes']!==Array&&(object['data1']=$util['newBuffer'](object['data1'])))),null!=_0x3ff877['data']&&_0x3ff877['hasOwnProperty']('data')&&(object['data']=_0x3ff877['data']),null!=_0x3ff877['data1']&&_0x3ff877['hasOwnProperty']('data1')&&(object['data1']=options['bytes']===String?$util['base64']['encode'](_0x3ff877['data1'],0x0,_0x3ff877['data1']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x3ff877['data1']):_0x3ff877['data1']),object;},NumberBytesPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},NumberBytesPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/NumberBytesPacketDataMessage';},NumberBytesPacketDataMessage;})()),$root['NumberNumberPacketDataMessage']=((()=>{function NumberNumberPacketDataMessage(properties){if(properties){for(let _0x1a5b86=Object['keys'](properties),_0x10128b=0x0;_0x10128b<_0x1a5b86['length'];++_0x10128b)null!=properties[_0x1a5b86[_0x10128b]]&&(this[_0x1a5b86[_0x10128b]]=properties[_0x1a5b86[_0x10128b]]);}}return NumberNumberPacketDataMessage['prototype']['data']=0x0,NumberNumberPacketDataMessage['prototype']['data1']=0x0,NumberNumberPacketDataMessage['create']=function(properties){return new NumberNumberPacketDataMessage(properties);},NumberNumberPacketDataMessage['encode']=function(_0x419681,writer){return writer||(writer=$Writer['create']()),null!=_0x419681['data']&&Object['hasOwnProperty']['call'](_0x419681,'data')&&writer['uint32'](0x8)['uint32'](_0x419681['data']),null!=_0x419681['data1']&&Object['hasOwnProperty']['call'](_0x419681,'data1')&&writer['uint32'](0x10)['uint32'](_0x419681['data1']),writer;},NumberNumberPacketDataMessage['encodeDelimited']=function(_0xef84f3,writer){return this['encode'](_0xef84f3,writer)['ldelim']();},NumberNumberPacketDataMessage['decode']=function(_0x1e4c85,length){_0x1e4c85 instanceof $Reader||(_0x1e4c85=$Reader['create'](_0x1e4c85));let _0x5bc27a=void 0x0===length?_0x1e4c85['len']:_0x1e4c85['pos']+length,_0x34e302=new $root['NumberNumberPacketDataMessage']();for(;_0x1e4c85['pos']<_0x5bc27a;){let tag=_0x1e4c85['uint32']();switch(tag>>>0x3){case 0x1:_0x34e302['data']=_0x1e4c85['uint32']();break;case 0x2:_0x34e302['data1']=_0x1e4c85['uint32']();break;default:_0x1e4c85['skipType'](0x7&tag);}}return _0x34e302;},NumberNumberPacketDataMessage['decodeDelimited']=function(_0x742923){return _0x742923 instanceof $Reader||(_0x742923=new $Reader(_0x742923)),this['decode'](_0x742923,_0x742923['uint32']());},NumberNumberPacketDataMessage['verify']=function(_0x191b55){return'object'!=typeof _0x191b55||null===_0x191b55?'object\x20expected':null!=_0x191b55['data']&&_0x191b55['hasOwnProperty']('data')&&!$util['isInteger'](_0x191b55['data'])?'data:\x20integer\x20expected':null!=_0x191b55['data1']&&_0x191b55['hasOwnProperty']('data1')&&!$util['isInteger'](_0x191b55['data1'])?'data1:\x20integer\x20expected':null;},NumberNumberPacketDataMessage['fromObject']=function(object){if(object instanceof $root['NumberNumberPacketDataMessage'])return object;let _0x1158b2=new $root['NumberNumberPacketDataMessage']();return null!=object['data']&&(_0x1158b2['data']=object['data']>>>0x0),null!=object['data1']&&(_0x1158b2['data1']=object['data1']>>>0x0),_0x1158b2;},NumberNumberPacketDataMessage['toObject']=function(_0x2d7eaa,options){options||(options={});let object={};return options['defaults']&&(object['data']=0x0,object['data1']=0x0),null!=_0x2d7eaa['data']&&_0x2d7eaa['hasOwnProperty']('data')&&(object['data']=_0x2d7eaa['data']),null!=_0x2d7eaa['data1']&&_0x2d7eaa['hasOwnProperty']('data1')&&(object['data1']=_0x2d7eaa['data1']),object;},NumberNumberPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},NumberNumberPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/NumberNumberPacketDataMessage';},NumberNumberPacketDataMessage;})()),$root['NumberObjectPacketDataMessage']=((()=>{function NumberObjectPacketDataMessage(properties){if(properties){for(let _0x27c623=Object['keys'](properties),_0x2ddc78=0x0;_0x2ddc78<_0x27c623['length'];++_0x2ddc78)null!=properties[_0x27c623[_0x2ddc78]]&&(this[_0x27c623[_0x2ddc78]]=properties[_0x27c623[_0x2ddc78]]);}}return NumberObjectPacketDataMessage['prototype']['data']=0x0,NumberObjectPacketDataMessage['prototype']['data1']='',NumberObjectPacketDataMessage['create']=function(properties){return new NumberObjectPacketDataMessage(properties);},NumberObjectPacketDataMessage['encode']=function(_0x3aad38,writer){return writer||(writer=$Writer['create']()),null!=_0x3aad38['data']&&Object['hasOwnProperty']['call'](_0x3aad38,'data')&&writer['uint32'](0x8)['uint32'](_0x3aad38['data']),null!=_0x3aad38['data1']&&Object['hasOwnProperty']['call'](_0x3aad38,'data1')&&writer['uint32'](0x12)['string'](_0x3aad38['data1']),writer;},NumberObjectPacketDataMessage['encodeDelimited']=function(_0x119fc1,writer){return this['encode'](_0x119fc1,writer)['ldelim']();},NumberObjectPacketDataMessage['decode']=function(_0x543ec9,length){_0x543ec9 instanceof $Reader||(_0x543ec9=$Reader['create'](_0x543ec9));let _0x2d1508=void 0x0===length?_0x543ec9['len']:_0x543ec9['pos']+length,_0x1d0927=new $root['NumberObjectPacketDataMessage']();for(;_0x543ec9['pos']<_0x2d1508;){let tag=_0x543ec9['uint32']();switch(tag>>>0x3){case 0x1:_0x1d0927['data']=_0x543ec9['uint32']();break;case 0x2:_0x1d0927['data1']=_0x543ec9['string']();break;default:_0x543ec9['skipType'](0x7&tag);}}return _0x1d0927;},NumberObjectPacketDataMessage['decodeDelimited']=function(_0x4708fa){return _0x4708fa instanceof $Reader||(_0x4708fa=new $Reader(_0x4708fa)),this['decode'](_0x4708fa,_0x4708fa['uint32']());},NumberObjectPacketDataMessage['verify']=function(_0x40b25f){return'object'!=typeof _0x40b25f||null===_0x40b25f?'object\x20expected':null!=_0x40b25f['data']&&_0x40b25f['hasOwnProperty']('data')&&!$util['isInteger'](_0x40b25f['data'])?'data:\x20integer\x20expected':null!=_0x40b25f['data1']&&_0x40b25f['hasOwnProperty']('data1')&&!$util['isString'](_0x40b25f['data1'])?'data1:\x20string\x20expected':null;},NumberObjectPacketDataMessage['fromObject']=function(object){if(object instanceof $root['NumberObjectPacketDataMessage'])return object;let _0x6ab3b6=new $root['NumberObjectPacketDataMessage']();return null!=object['data']&&(_0x6ab3b6['data']=object['data']>>>0x0),null!=object['data1']&&(_0x6ab3b6['data1']=String(object['data1'])),_0x6ab3b6;},NumberObjectPacketDataMessage['toObject']=function(_0x3394ea,options){options||(options={});let object={};return options['defaults']&&(object['data']=0x0,object['data1']=''),null!=_0x3394ea['data']&&_0x3394ea['hasOwnProperty']('data')&&(object['data']=_0x3394ea['data']),null!=_0x3394ea['data1']&&_0x3394ea['hasOwnProperty']('data1')&&(object['data1']=_0x3394ea['data1']),object;},NumberObjectPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},NumberObjectPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/NumberObjectPacketDataMessage';},NumberObjectPacketDataMessage;})()),$root['NumberStringPacketDataMessage']=((()=>{function NumberStringPacketDataMessage(properties){if(properties){for(let _0xddd9fa=Object['keys'](properties),_0x11bbed=0x0;_0x11bbed<_0xddd9fa['length'];++_0x11bbed)null!=properties[_0xddd9fa[_0x11bbed]]&&(this[_0xddd9fa[_0x11bbed]]=properties[_0xddd9fa[_0x11bbed]]);}}return NumberStringPacketDataMessage['prototype']['data']=0x0,NumberStringPacketDataMessage['prototype']['data1']='',NumberStringPacketDataMessage['create']=function(properties){return new NumberStringPacketDataMessage(properties);},NumberStringPacketDataMessage['encode']=function(_0x28e225,writer){return writer||(writer=$Writer['create']()),null!=_0x28e225['data']&&Object['hasOwnProperty']['call'](_0x28e225,'data')&&writer['uint32'](0x8)['uint32'](_0x28e225['data']),null!=_0x28e225['data1']&&Object['hasOwnProperty']['call'](_0x28e225,'data1')&&writer['uint32'](0x12)['string'](_0x28e225['data1']),writer;},NumberStringPacketDataMessage['encodeDelimited']=function(_0x19b24a,writer){return this['encode'](_0x19b24a,writer)['ldelim']();},NumberStringPacketDataMessage['decode']=function(_0x34f3c2,length){_0x34f3c2 instanceof $Reader||(_0x34f3c2=$Reader['create'](_0x34f3c2));let _0x1cd887=void 0x0===length?_0x34f3c2['len']:_0x34f3c2['pos']+length,_0x2e6e1d=new $root['NumberStringPacketDataMessage']();for(;_0x34f3c2['pos']<_0x1cd887;){let tag=_0x34f3c2['uint32']();switch(tag>>>0x3){case 0x1:_0x2e6e1d['data']=_0x34f3c2['uint32']();break;case 0x2:_0x2e6e1d['data1']=_0x34f3c2['string']();break;default:_0x34f3c2['skipType'](0x7&tag);}}return _0x2e6e1d;},NumberStringPacketDataMessage['decodeDelimited']=function(_0x8d1e1e){return _0x8d1e1e instanceof $Reader||(_0x8d1e1e=new $Reader(_0x8d1e1e)),this['decode'](_0x8d1e1e,_0x8d1e1e['uint32']());},NumberStringPacketDataMessage['verify']=function(_0x3374c5){return'object'!=typeof _0x3374c5||null===_0x3374c5?'object\x20expected':null!=_0x3374c5['data']&&_0x3374c5['hasOwnProperty']('data')&&!$util['isInteger'](_0x3374c5['data'])?'data:\x20integer\x20expected':null!=_0x3374c5['data1']&&_0x3374c5['hasOwnProperty']('data1')&&!$util['isString'](_0x3374c5['data1'])?'data1:\x20string\x20expected':null;},NumberStringPacketDataMessage['fromObject']=function(object){if(object instanceof $root['NumberStringPacketDataMessage'])return object;let _0x56e943=new $root['NumberStringPacketDataMessage']();return null!=object['data']&&(_0x56e943['data']=object['data']>>>0x0),null!=object['data1']&&(_0x56e943['data1']=String(object['data1'])),_0x56e943;},NumberStringPacketDataMessage['toObject']=function(_0x5dc2f2,options){options||(options={});let object={};return options['defaults']&&(object['data']=0x0,object['data1']=''),null!=_0x5dc2f2['data']&&_0x5dc2f2['hasOwnProperty']('data')&&(object['data']=_0x5dc2f2['data']),null!=_0x5dc2f2['data1']&&_0x5dc2f2['hasOwnProperty']('data1')&&(object['data1']=_0x5dc2f2['data1']),object;},NumberStringPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},NumberStringPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/NumberStringPacketDataMessage';},NumberStringPacketDataMessage;})()),$root['ObjectBufferPacketDataMessage']=((()=>{function ObjectBufferPacketDataMessage(properties){if(properties){for(let _0x213bcf=Object['keys'](properties),_0xa5d210=0x0;_0xa5d210<_0x213bcf['length'];++_0xa5d210)null!=properties[_0x213bcf[_0xa5d210]]&&(this[_0x213bcf[_0xa5d210]]=properties[_0x213bcf[_0xa5d210]]);}}return ObjectBufferPacketDataMessage['prototype']['data']='',ObjectBufferPacketDataMessage['prototype']['data1']=$util['newBuffer']([]),ObjectBufferPacketDataMessage['create']=function(properties){return new ObjectBufferPacketDataMessage(properties);},ObjectBufferPacketDataMessage['encode']=function(_0x526311,writer){return writer||(writer=$Writer['create']()),null!=_0x526311['data']&&Object['hasOwnProperty']['call'](_0x526311,'data')&&writer['uint32'](0xa)['string'](_0x526311['data']),null!=_0x526311['data1']&&Object['hasOwnProperty']['call'](_0x526311,'data1')&&writer['uint32'](0x12)['bytes'](_0x526311['data1']),writer;},ObjectBufferPacketDataMessage['encodeDelimited']=function(_0x246b9e,writer){return this['encode'](_0x246b9e,writer)['ldelim']();},ObjectBufferPacketDataMessage['decode']=function(_0x38af38,length){_0x38af38 instanceof $Reader||(_0x38af38=$Reader['create'](_0x38af38));let _0x4667d3=void 0x0===length?_0x38af38['len']:_0x38af38['pos']+length,_0x539da8=new $root['ObjectBufferPacketDataMessage']();for(;_0x38af38['pos']<_0x4667d3;){let tag=_0x38af38['uint32']();switch(tag>>>0x3){case 0x1:_0x539da8['data']=_0x38af38['string']();break;case 0x2:_0x539da8['data1']=_0x38af38['bytes']();break;default:_0x38af38['skipType'](0x7&tag);}}return _0x539da8;},ObjectBufferPacketDataMessage['decodeDelimited']=function(_0x44a43f){return _0x44a43f instanceof $Reader||(_0x44a43f=new $Reader(_0x44a43f)),this['decode'](_0x44a43f,_0x44a43f['uint32']());},ObjectBufferPacketDataMessage['verify']=function(_0x6874b0){return'object'!=typeof _0x6874b0||null===_0x6874b0?'object\x20expected':null!=_0x6874b0['data']&&_0x6874b0['hasOwnProperty']('data')&&!$util['isString'](_0x6874b0['data'])?'data:\x20string\x20expected':null!=_0x6874b0['data1']&&_0x6874b0['hasOwnProperty']('data1')&&!(_0x6874b0['data1']&&'number'==typeof _0x6874b0['data1']['length']||$util['isString'](_0x6874b0['data1']))?'data1:\x20buffer\x20expected':null;},ObjectBufferPacketDataMessage['fromObject']=function(object){if(object instanceof $root['ObjectBufferPacketDataMessage'])return object;let _0x3eaff3=new $root['ObjectBufferPacketDataMessage']();return null!=object['data']&&(_0x3eaff3['data']=String(object['data'])),null!=object['data1']&&('string'==typeof object['data1']?$util['base64']['decode'](object['data1'],_0x3eaff3['data1']=$util['newBuffer']($util['base64']['length'](object['data1'])),0x0):object['data1']['length']>=0x0&&(_0x3eaff3['data1']=object['data1'])),_0x3eaff3;},ObjectBufferPacketDataMessage['toObject']=function(_0xe59c68,options){options||(options={});let object={};return options['defaults']&&(object['data']='',options['bytes']===String?object['data1']='':(object['data1']=[],options['bytes']!==Array&&(object['data1']=$util['newBuffer'](object['data1'])))),null!=_0xe59c68['data']&&_0xe59c68['hasOwnProperty']('data')&&(object['data']=_0xe59c68['data']),null!=_0xe59c68['data1']&&_0xe59c68['hasOwnProperty']('data1')&&(object['data1']=options['bytes']===String?$util['base64']['encode'](_0xe59c68['data1'],0x0,_0xe59c68['data1']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0xe59c68['data1']):_0xe59c68['data1']),object;},ObjectBufferPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},ObjectBufferPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/ObjectBufferPacketDataMessage';},ObjectBufferPacketDataMessage;})()),$root['ObjectObjectPacketDataMessage']=((()=>{function ObjectObjectPacketDataMessage(properties){if(properties){for(let _0x4df1a5=Object['keys'](properties),_0x25de34=0x0;_0x25de34<_0x4df1a5['length'];++_0x25de34)null!=properties[_0x4df1a5[_0x25de34]]&&(this[_0x4df1a5[_0x25de34]]=properties[_0x4df1a5[_0x25de34]]);}}return ObjectObjectPacketDataMessage['prototype']['data']='',ObjectObjectPacketDataMessage['prototype']['data1']='',ObjectObjectPacketDataMessage['create']=function(properties){return new ObjectObjectPacketDataMessage(properties);},ObjectObjectPacketDataMessage['encode']=function(_0x42e521,writer){return writer||(writer=$Writer['create']()),null!=_0x42e521['data']&&Object['hasOwnProperty']['call'](_0x42e521,'data')&&writer['uint32'](0xa)['string'](_0x42e521['data']),null!=_0x42e521['data1']&&Object['hasOwnProperty']['call'](_0x42e521,'data1')&&writer['uint32'](0x12)['string'](_0x42e521['data1']),writer;},ObjectObjectPacketDataMessage['encodeDelimited']=function(_0x2256bb,writer){return this['encode'](_0x2256bb,writer)['ldelim']();},ObjectObjectPacketDataMessage['decode']=function(_0x3f8d2e,length){_0x3f8d2e instanceof $Reader||(_0x3f8d2e=$Reader['create'](_0x3f8d2e));let _0x4491a8=void 0x0===length?_0x3f8d2e['len']:_0x3f8d2e['pos']+length,_0x24e9bd=new $root['ObjectObjectPacketDataMessage']();for(;_0x3f8d2e['pos']<_0x4491a8;){let tag=_0x3f8d2e['uint32']();switch(tag>>>0x3){case 0x1:_0x24e9bd['data']=_0x3f8d2e['string']();break;case 0x2:_0x24e9bd['data1']=_0x3f8d2e['string']();break;default:_0x3f8d2e['skipType'](0x7&tag);}}return _0x24e9bd;},ObjectObjectPacketDataMessage['decodeDelimited']=function(_0x1b1376){return _0x1b1376 instanceof $Reader||(_0x1b1376=new $Reader(_0x1b1376)),this['decode'](_0x1b1376,_0x1b1376['uint32']());},ObjectObjectPacketDataMessage['verify']=function(_0x361164){return'object'!=typeof _0x361164||null===_0x361164?'object\x20expected':null!=_0x361164['data']&&_0x361164['hasOwnProperty']('data')&&!$util['isString'](_0x361164['data'])?'data:\x20string\x20expected':null!=_0x361164['data1']&&_0x361164['hasOwnProperty']('data1')&&!$util['isString'](_0x361164['data1'])?'data1:\x20string\x20expected':null;},ObjectObjectPacketDataMessage['fromObject']=function(object){if(object instanceof $root['ObjectObjectPacketDataMessage'])return object;let _0x3ba343=new $root['ObjectObjectPacketDataMessage']();return null!=object['data']&&(_0x3ba343['data']=String(object['data'])),null!=object['data1']&&(_0x3ba343['data1']=String(object['data1'])),_0x3ba343;},ObjectObjectPacketDataMessage['toObject']=function(_0x11be60,options){options||(options={});let object={};return options['defaults']&&(object['data']='',object['data1']=''),null!=_0x11be60['data']&&_0x11be60['hasOwnProperty']('data')&&(object['data']=_0x11be60['data']),null!=_0x11be60['data1']&&_0x11be60['hasOwnProperty']('data1')&&(object['data1']=_0x11be60['data1']),object;},ObjectObjectPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},ObjectObjectPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/ObjectObjectPacketDataMessage';},ObjectObjectPacketDataMessage;})()),$root['PacketMessage']=((()=>{function PacketMessage(properties){if(properties){for(let _0x464c68=Object['keys'](properties),_0x575278=0x0;_0x575278<_0x464c68['length'];++_0x575278)null!=properties[_0x464c68[_0x575278]]&&(this[_0x464c68[_0x575278]]=properties[_0x464c68[_0x575278]]);}}return PacketMessage['prototype']['type']=0x0,PacketMessage['prototype']['id']=0x0,PacketMessage['prototype']['nsp']='',PacketMessage['prototype']['data']=$util['newBuffer']([]),PacketMessage['prototype']['options']=$util['newBuffer']([]),PacketMessage['create']=function(properties){return new PacketMessage(properties);},PacketMessage['encode']=function(_0x140a9f,writer){return writer||(writer=$Writer['create']()),null!=_0x140a9f['type']&&Object['hasOwnProperty']['call'](_0x140a9f,'type')&&writer['uint32'](0x8)['uint32'](_0x140a9f['type']),null!=_0x140a9f['id']&&Object['hasOwnProperty']['call'](_0x140a9f,'id')&&writer['uint32'](0x10)['uint32'](_0x140a9f['id']),null!=_0x140a9f['nsp']&&Object['hasOwnProperty']['call'](_0x140a9f,'nsp')&&writer['uint32'](0x1a)['string'](_0x140a9f['nsp']),null!=_0x140a9f['data']&&Object['hasOwnProperty']['call'](_0x140a9f,'data')&&writer['uint32'](0x22)['bytes'](_0x140a9f['data']),null!=_0x140a9f['options']&&Object['hasOwnProperty']['call'](_0x140a9f,'options')&&writer['uint32'](0x2a)['bytes'](_0x140a9f['options']),writer;},PacketMessage['encodeDelimited']=function(_0x44fdc6,writer){return this['encode'](_0x44fdc6,writer)['ldelim']();},PacketMessage['decode']=function(_0x558f9e,length){_0x558f9e instanceof $Reader||(_0x558f9e=$Reader['create'](_0x558f9e));let _0x46fd85=void 0x0===length?_0x558f9e['len']:_0x558f9e['pos']+length,_0x1b703f=new $root['PacketMessage']();for(;_0x558f9e['pos']<_0x46fd85;){let tag=_0x558f9e['uint32']();switch(tag>>>0x3){case 0x1:_0x1b703f['type']=_0x558f9e['uint32']();break;case 0x2:_0x1b703f['id']=_0x558f9e['uint32']();break;case 0x3:_0x1b703f['nsp']=_0x558f9e['string']();break;case 0x4:_0x1b703f['data']=_0x558f9e['bytes']();break;case 0x5:_0x1b703f['options']=_0x558f9e['bytes']();break;default:_0x558f9e['skipType'](0x7&tag);}}return _0x1b703f;},PacketMessage['decodeDelimited']=function(_0x2cc196){return _0x2cc196 instanceof $Reader||(_0x2cc196=new $Reader(_0x2cc196)),this['decode'](_0x2cc196,_0x2cc196['uint32']());},PacketMessage['verify']=function(_0x2ef48b){return'object'!=typeof _0x2ef48b||null===_0x2ef48b?'object\x20expected':null!=_0x2ef48b['type']&&_0x2ef48b['hasOwnProperty']('type')&&!$util['isInteger'](_0x2ef48b['type'])?'type:\x20integer\x20expected':null!=_0x2ef48b['id']&&_0x2ef48b['hasOwnProperty']('id')&&!$util['isInteger'](_0x2ef48b['id'])?'id:\x20integer\x20expected':null!=_0x2ef48b['nsp']&&_0x2ef48b['hasOwnProperty']('nsp')&&!$util['isString'](_0x2ef48b['nsp'])?'nsp:\x20string\x20expected':null!=_0x2ef48b['data']&&_0x2ef48b['hasOwnProperty']('data')&&!(_0x2ef48b['data']&&'number'==typeof _0x2ef48b['data']['length']||$util['isString'](_0x2ef48b['data']))?'data:\x20buffer\x20expected':null!=_0x2ef48b['options']&&_0x2ef48b['hasOwnProperty']('options')&&!(_0x2ef48b['options']&&'number'==typeof _0x2ef48b['options']['length']||$util['isString'](_0x2ef48b['options']))?'options:\x20buffer\x20expected':null;},PacketMessage['fromObject']=function(object){if(object instanceof $root['PacketMessage'])return object;let _0x1a71dc=new $root['PacketMessage']();return null!=object['type']&&(_0x1a71dc['type']=object['type']>>>0x0),null!=object['id']&&(_0x1a71dc['id']=object['id']>>>0x0),null!=object['nsp']&&(_0x1a71dc['nsp']=String(object['nsp'])),null!=object['data']&&('string'==typeof object['data']?$util['base64']['decode'](object['data'],_0x1a71dc['data']=$util['newBuffer']($util['base64']['length'](object['data'])),0x0):object['data']['length']>=0x0&&(_0x1a71dc['data']=object['data'])),null!=object['options']&&('string'==typeof object['options']?$util['base64']['decode'](object['options'],_0x1a71dc['options']=$util['newBuffer']($util['base64']['length'](object['options'])),0x0):object['options']['length']>=0x0&&(_0x1a71dc['options']=object['options'])),_0x1a71dc;},PacketMessage['toObject']=function(_0x205abb,options){options||(options={});let object={};return options['defaults']&&(object['type']=0x0,object['id']=0x0,object['nsp']='',options['bytes']===String?object['data']='':(object['data']=[],options['bytes']!==Array&&(object['data']=$util['newBuffer'](object['data']))),options['bytes']===String?object['options']='':(object['options']=[],options['bytes']!==Array&&(object['options']=$util['newBuffer'](object['options'])))),null!=_0x205abb['type']&&_0x205abb['hasOwnProperty']('type')&&(object['type']=_0x205abb['type']),null!=_0x205abb['id']&&_0x205abb['hasOwnProperty']('id')&&(object['id']=_0x205abb['id']),null!=_0x205abb['nsp']&&_0x205abb['hasOwnProperty']('nsp')&&(object['nsp']=_0x205abb['nsp']),null!=_0x205abb['data']&&_0x205abb['hasOwnProperty']('data')&&(object['data']=options['bytes']===String?$util['base64']['encode'](_0x205abb['data'],0x0,_0x205abb['data']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x205abb['data']):_0x205abb['data']),null!=_0x205abb['options']&&_0x205abb['hasOwnProperty']('options')&&(object['options']=options['bytes']===String?$util['base64']['encode'](_0x205abb['options'],0x0,_0x205abb['options']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x205abb['options']):_0x205abb['options']),object;},PacketMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},PacketMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/PacketMessage';},PacketMessage;})()),$root['PacketOptionsMessage']=((()=>{function PacketOptionsMessage(properties){if(this['rooms']=[],this['except']=[],properties){for(let _0x4d9b51=Object['keys'](properties),_0x1a3096=0x0;_0x1a3096<_0x4d9b51['length'];++_0x1a3096)null!=properties[_0x4d9b51[_0x1a3096]]&&(this[_0x4d9b51[_0x1a3096]]=properties[_0x4d9b51[_0x1a3096]]);}}return PacketOptionsMessage['prototype']['flags']='',PacketOptionsMessage['prototype']['rooms']=$util['emptyArray'],PacketOptionsMessage['prototype']['except']=$util['emptyArray'],PacketOptionsMessage['create']=function(properties){return new PacketOptionsMessage(properties);},PacketOptionsMessage['encode']=function(_0x267a28,writer){if(writer||(writer=$Writer['create']()),null!=_0x267a28['flags']&&Object['hasOwnProperty']['call'](_0x267a28,'flags')&&writer['uint32'](0xa)['string'](_0x267a28['flags']),null!=_0x267a28['rooms']&&_0x267a28['rooms']['length']){for(let _0x97b9a1=0x0;_0x97b9a1<_0x267a28['rooms']['length'];++_0x97b9a1)writer['uint32'](0x12)['string'](_0x267a28['rooms'][_0x97b9a1]);}if(null!=_0x267a28['except']&&_0x267a28['except']['length']){for(let _0x3b13bc=0x0;_0x3b13bc<_0x267a28['except']['length'];++_0x3b13bc)writer['uint32'](0x1a)['string'](_0x267a28['except'][_0x3b13bc]);}return writer;},PacketOptionsMessage['encodeDelimited']=function(_0xe62695,writer){return this['encode'](_0xe62695,writer)['ldelim']();},PacketOptionsMessage['decode']=function(_0x50bc6b,length){_0x50bc6b instanceof $Reader||(_0x50bc6b=$Reader['create'](_0x50bc6b));let _0x4b2965=void 0x0===length?_0x50bc6b['len']:_0x50bc6b['pos']+length,_0x5ad0c0=new $root['PacketOptionsMessage']();for(;_0x50bc6b['pos']<_0x4b2965;){let tag=_0x50bc6b['uint32']();switch(tag>>>0x3){case 0x1:_0x5ad0c0['flags']=_0x50bc6b['string']();break;case 0x2:_0x5ad0c0['rooms']&&_0x5ad0c0['rooms']['length']||(_0x5ad0c0['rooms']=[]),_0x5ad0c0['rooms']['push'](_0x50bc6b['string']());break;case 0x3:_0x5ad0c0['except']&&_0x5ad0c0['except']['length']||(_0x5ad0c0['except']=[]),_0x5ad0c0['except']['push'](_0x50bc6b['string']());break;default:_0x50bc6b['skipType'](0x7&tag);}}return _0x5ad0c0;},PacketOptionsMessage['decodeDelimited']=function(_0x570551){return _0x570551 instanceof $Reader||(_0x570551=new $Reader(_0x570551)),this['decode'](_0x570551,_0x570551['uint32']());},PacketOptionsMessage['verify']=function(_0x4edeb8){if('object'!=typeof _0x4edeb8||null===_0x4edeb8)return'object\x20expected';if(null!=_0x4edeb8['flags']&&_0x4edeb8['hasOwnProperty']('flags')&&!$util['isString'](_0x4edeb8['flags']))return'flags:\x20string\x20expected';if(null!=_0x4edeb8['rooms']&&_0x4edeb8['hasOwnProperty']('rooms')){if(!Array['isArray'](_0x4edeb8['rooms']))return'rooms:\x20array\x20expected';for(let _0x558cb9=0x0;_0x558cb9<_0x4edeb8['rooms']['length'];++_0x558cb9)if(!$util['isString'](_0x4edeb8['rooms'][_0x558cb9]))return'rooms:\x20string[]\x20expected';}if(null!=_0x4edeb8['except']&&_0x4edeb8['hasOwnProperty']('except')){if(!Array['isArray'](_0x4edeb8['except']))return'except:\x20array\x20expected';for(let _0x4a5e94=0x0;_0x4a5e94<_0x4edeb8['except']['length'];++_0x4a5e94)if(!$util['isString'](_0x4edeb8['except'][_0x4a5e94]))return'except:\x20string[]\x20expected';}return null;},PacketOptionsMessage['fromObject']=function(object){if(object instanceof $root['PacketOptionsMessage'])return object;let _0x58f2f2=new $root['PacketOptionsMessage']();if(null!=object['flags']&&(_0x58f2f2['flags']=String(object['flags'])),object['rooms']){if(!Array['isArray'](object['rooms']))throw TypeError('.PacketOptionsMessage.rooms:\x20array\x20expected');_0x58f2f2['rooms']=[];for(let _0x342a01=0x0;_0x342a01<object['rooms']['length'];++_0x342a01)_0x58f2f2['rooms'][_0x342a01]=String(object['rooms'][_0x342a01]);}if(object['except']){if(!Array['isArray'](object['except']))throw TypeError('.PacketOptionsMessage.except:\x20array\x20expected');_0x58f2f2['except']=[];for(let _0x251ab3=0x0;_0x251ab3<object['except']['length'];++_0x251ab3)_0x58f2f2['except'][_0x251ab3]=String(object['except'][_0x251ab3]);}return _0x58f2f2;},PacketOptionsMessage['toObject']=function(_0x15ac30,options){options||(options={});let object={};if((options['arrays']||options['defaults'])&&(object['rooms']=[],object['except']=[]),options['defaults']&&(object['flags']=''),null!=_0x15ac30['flags']&&_0x15ac30['hasOwnProperty']('flags')&&(object['flags']=_0x15ac30['flags']),_0x15ac30['rooms']&&_0x15ac30['rooms']['length']){object['rooms']=[];for(let _0x41388c=0x0;_0x41388c<_0x15ac30['rooms']['length'];++_0x41388c)object['rooms'][_0x41388c]=_0x15ac30['rooms'][_0x41388c];}if(_0x15ac30['except']&&_0x15ac30['except']['length']){object['except']=[];for(let _0x33feae=0x0;_0x33feae<_0x15ac30['except']['length'];++_0x33feae)object['except'][_0x33feae]=_0x15ac30['except'][_0x33feae];}return object;},PacketOptionsMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},PacketOptionsMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/PacketOptionsMessage';},PacketOptionsMessage;})()),$root['StringBytesPacketDataMessage']=((()=>{function StringBytesPacketDataMessage(properties){if(properties){for(let _0x11e2eb=Object['keys'](properties),_0x4bd2dc=0x0;_0x4bd2dc<_0x11e2eb['length'];++_0x4bd2dc)null!=properties[_0x11e2eb[_0x4bd2dc]]&&(this[_0x11e2eb[_0x4bd2dc]]=properties[_0x11e2eb[_0x4bd2dc]]);}}return StringBytesPacketDataMessage['prototype']['data']='',StringBytesPacketDataMessage['prototype']['data1']=$util['newBuffer']([]),StringBytesPacketDataMessage['create']=function(properties){return new StringBytesPacketDataMessage(properties);},StringBytesPacketDataMessage['encode']=function(_0x578134,writer){return writer||(writer=$Writer['create']()),null!=_0x578134['data']&&Object['hasOwnProperty']['call'](_0x578134,'data')&&writer['uint32'](0xa)['string'](_0x578134['data']),null!=_0x578134['data1']&&Object['hasOwnProperty']['call'](_0x578134,'data1')&&writer['uint32'](0x12)['bytes'](_0x578134['data1']),writer;},StringBytesPacketDataMessage['encodeDelimited']=function(_0x3e230d,writer){return this['encode'](_0x3e230d,writer)['ldelim']();},StringBytesPacketDataMessage['decode']=function(_0x1dfbd8,length){_0x1dfbd8 instanceof $Reader||(_0x1dfbd8=$Reader['create'](_0x1dfbd8));let _0x5f0f41=void 0x0===length?_0x1dfbd8['len']:_0x1dfbd8['pos']+length,_0x4a6183=new $root['StringBytesPacketDataMessage']();for(;_0x1dfbd8['pos']<_0x5f0f41;){let tag=_0x1dfbd8['uint32']();switch(tag>>>0x3){case 0x1:_0x4a6183['data']=_0x1dfbd8['string']();break;case 0x2:_0x4a6183['data1']=_0x1dfbd8['bytes']();break;default:_0x1dfbd8['skipType'](0x7&tag);}}return _0x4a6183;},StringBytesPacketDataMessage['decodeDelimited']=function(_0x49be81){return _0x49be81 instanceof $Reader||(_0x49be81=new $Reader(_0x49be81)),this['decode'](_0x49be81,_0x49be81['uint32']());},StringBytesPacketDataMessage['verify']=function(_0x3aa5be){return'object'!=typeof _0x3aa5be||null===_0x3aa5be?'object\x20expected':null!=_0x3aa5be['data']&&_0x3aa5be['hasOwnProperty']('data')&&!$util['isString'](_0x3aa5be['data'])?'data:\x20string\x20expected':null!=_0x3aa5be['data1']&&_0x3aa5be['hasOwnProperty']('data1')&&!(_0x3aa5be['data1']&&'number'==typeof _0x3aa5be['data1']['length']||$util['isString'](_0x3aa5be['data1']))?'data1:\x20buffer\x20expected':null;},StringBytesPacketDataMessage['fromObject']=function(object){if(object instanceof $root['StringBytesPacketDataMessage'])return object;let _0x3e9650=new $root['StringBytesPacketDataMessage']();return null!=object['data']&&(_0x3e9650['data']=String(object['data'])),null!=object['data1']&&('string'==typeof object['data1']?$util['base64']['decode'](object['data1'],_0x3e9650['data1']=$util['newBuffer']($util['base64']['length'](object['data1'])),0x0):object['data1']['length']>=0x0&&(_0x3e9650['data1']=object['data1'])),_0x3e9650;},StringBytesPacketDataMessage['toObject']=function(_0x54da3d,options){options||(options={});let object={};return options['defaults']&&(object['data']='',options['bytes']===String?object['data1']='':(object['data1']=[],options['bytes']!==Array&&(object['data1']=$util['newBuffer'](object['data1'])))),null!=_0x54da3d['data']&&_0x54da3d['hasOwnProperty']('data')&&(object['data']=_0x54da3d['data']),null!=_0x54da3d['data1']&&_0x54da3d['hasOwnProperty']('data1')&&(object['data1']=options['bytes']===String?$util['base64']['encode'](_0x54da3d['data1'],0x0,_0x54da3d['data1']['length']):options['bytes']===Array?Array['prototype']['slice']['call'](_0x54da3d['data1']):_0x54da3d['data1']),object;},StringBytesPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},StringBytesPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/StringBytesPacketDataMessage';},StringBytesPacketDataMessage;})()),$root['StringNumberPacketDataMessage']=((()=>{function StringNumberPacketDataMessage(properties){if(properties){for(let _0x4f99e7=Object['keys'](properties),_0x4a6a79=0x0;_0x4a6a79<_0x4f99e7['length'];++_0x4a6a79)null!=properties[_0x4f99e7[_0x4a6a79]]&&(this[_0x4f99e7[_0x4a6a79]]=properties[_0x4f99e7[_0x4a6a79]]);}}return StringNumberPacketDataMessage['prototype']['data']='',StringNumberPacketDataMessage['prototype']['data1']=0x0,StringNumberPacketDataMessage['create']=function(properties){return new StringNumberPacketDataMessage(properties);},StringNumberPacketDataMessage['encode']=function(_0x453fae,writer){return writer||(writer=$Writer['create']()),null!=_0x453fae['data']&&Object['hasOwnProperty']['call'](_0x453fae,'data')&&writer['uint32'](0xa)['string'](_0x453fae['data']),null!=_0x453fae['data1']&&Object['hasOwnProperty']['call'](_0x453fae,'data1')&&writer['uint32'](0x10)['uint32'](_0x453fae['data1']),writer;},StringNumberPacketDataMessage['encodeDelimited']=function(_0x175d16,writer){return this['encode'](_0x175d16,writer)['ldelim']();},StringNumberPacketDataMessage['decode']=function(_0x1bc5bc,length){_0x1bc5bc instanceof $Reader||(_0x1bc5bc=$Reader['create'](_0x1bc5bc));let _0x219565=void 0x0===length?_0x1bc5bc['len']:_0x1bc5bc['pos']+length,_0x5c15f8=new $root['StringNumberPacketDataMessage']();for(;_0x1bc5bc['pos']<_0x219565;){let tag=_0x1bc5bc['uint32']();switch(tag>>>0x3){case 0x1:_0x5c15f8['data']=_0x1bc5bc['string']();break;case 0x2:_0x5c15f8['data1']=_0x1bc5bc['uint32']();break;default:_0x1bc5bc['skipType'](0x7&tag);}}return _0x5c15f8;},StringNumberPacketDataMessage['decodeDelimited']=function(_0x2209d4){return _0x2209d4 instanceof $Reader||(_0x2209d4=new $Reader(_0x2209d4)),this['decode'](_0x2209d4,_0x2209d4['uint32']());},StringNumberPacketDataMessage['verify']=function(_0x4b2876){return'object'!=typeof _0x4b2876||null===_0x4b2876?'object\x20expected':null!=_0x4b2876['data']&&_0x4b2876['hasOwnProperty']('data')&&!$util['isString'](_0x4b2876['data'])?'data:\x20string\x20expected':null!=_0x4b2876['data1']&&_0x4b2876['hasOwnProperty']('data1')&&!$util['isInteger'](_0x4b2876['data1'])?'data1:\x20integer\x20expected':null;},StringNumberPacketDataMessage['fromObject']=function(object){if(object instanceof $root['StringNumberPacketDataMessage'])return object;let _0xb229ff=new $root['StringNumberPacketDataMessage']();return null!=object['data']&&(_0xb229ff['data']=String(object['data'])),null!=object['data1']&&(_0xb229ff['data1']=object['data1']>>>0x0),_0xb229ff;},StringNumberPacketDataMessage['toObject']=function(_0x350191,options){options||(options={});let object={};return options['defaults']&&(object['data']='',object['data1']=0x0),null!=_0x350191['data']&&_0x350191['hasOwnProperty']('data')&&(object['data']=_0x350191['data']),null!=_0x350191['data1']&&_0x350191['hasOwnProperty']('data1')&&(object['data1']=_0x350191['data1']),object;},StringNumberPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},StringNumberPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/StringNumberPacketDataMessage';},StringNumberPacketDataMessage;})()),$root['StringObjectPacketDataMessage']=((()=>{function StringObjectPacketDataMessage(properties){if(properties){for(let _0x2dcdf9=Object['keys'](properties),_0x57c682=0x0;_0x57c682<_0x2dcdf9['length'];++_0x57c682)null!=properties[_0x2dcdf9[_0x57c682]]&&(this[_0x2dcdf9[_0x57c682]]=properties[_0x2dcdf9[_0x57c682]]);}}return StringObjectPacketDataMessage['prototype']['data']='',StringObjectPacketDataMessage['prototype']['data1']='',StringObjectPacketDataMessage['create']=function(properties){return new StringObjectPacketDataMessage(properties);},StringObjectPacketDataMessage['encode']=function(_0x4a1f61,writer){return writer||(writer=$Writer['create']()),null!=_0x4a1f61['data']&&Object['hasOwnProperty']['call'](_0x4a1f61,'data')&&writer['uint32'](0xa)['string'](_0x4a1f61['data']),null!=_0x4a1f61['data1']&&Object['hasOwnProperty']['call'](_0x4a1f61,'data1')&&writer['uint32'](0x12)['string'](_0x4a1f61['data1']),writer;},StringObjectPacketDataMessage['encodeDelimited']=function(_0x314d2d,writer){return this['encode'](_0x314d2d,writer)['ldelim']();},StringObjectPacketDataMessage['decode']=function(_0xf33e17,length){_0xf33e17 instanceof $Reader||(_0xf33e17=$Reader['create'](_0xf33e17));let _0x1de643=void 0x0===length?_0xf33e17['len']:_0xf33e17['pos']+length,_0x5bb03f=new $root['StringObjectPacketDataMessage']();for(;_0xf33e17['pos']<_0x1de643;){let tag=_0xf33e17['uint32']();switch(tag>>>0x3){case 0x1:_0x5bb03f['data']=_0xf33e17['string']();break;case 0x2:_0x5bb03f['data1']=_0xf33e17['string']();break;default:_0xf33e17['skipType'](0x7&tag);}}return _0x5bb03f;},StringObjectPacketDataMessage['decodeDelimited']=function(_0x571fc9){return _0x571fc9 instanceof $Reader||(_0x571fc9=new $Reader(_0x571fc9)),this['decode'](_0x571fc9,_0x571fc9['uint32']());},StringObjectPacketDataMessage['verify']=function(_0x22942a){return'object'!=typeof _0x22942a||null===_0x22942a?'object\x20expected':null!=_0x22942a['data']&&_0x22942a['hasOwnProperty']('data')&&!$util['isString'](_0x22942a['data'])?'data:\x20string\x20expected':null!=_0x22942a['data1']&&_0x22942a['hasOwnProperty']('data1')&&!$util['isString'](_0x22942a['data1'])?'data1:\x20string\x20expected':null;},StringObjectPacketDataMessage['fromObject']=function(object){if(object instanceof $root['StringObjectPacketDataMessage'])return object;let _0x1a35b1=new $root['StringObjectPacketDataMessage']();return null!=object['data']&&(_0x1a35b1['data']=String(object['data'])),null!=object['data1']&&(_0x1a35b1['data1']=String(object['data1'])),_0x1a35b1;},StringObjectPacketDataMessage['toObject']=function(_0x5e8cdd,options){options||(options={});let object={};return options['defaults']&&(object['data']='',object['data1']=''),null!=_0x5e8cdd['data']&&_0x5e8cdd['hasOwnProperty']('data')&&(object['data']=_0x5e8cdd['data']),null!=_0x5e8cdd['data1']&&_0x5e8cdd['hasOwnProperty']('data1')&&(object['data1']=_0x5e8cdd['data1']),object;},StringObjectPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},StringObjectPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/StringObjectPacketDataMessage';},StringObjectPacketDataMessage;})()),$root['StringStringPacketDataMessage']=((()=>{function StringStringPacketDataMessage(properties){if(properties){for(let _0x1cb698=Object['keys'](properties),_0x4d47e1=0x0;_0x4d47e1<_0x1cb698['length'];++_0x4d47e1)null!=properties[_0x1cb698[_0x4d47e1]]&&(this[_0x1cb698[_0x4d47e1]]=properties[_0x1cb698[_0x4d47e1]]);}}return StringStringPacketDataMessage['prototype']['data']='',StringStringPacketDataMessage['prototype']['data1']='',StringStringPacketDataMessage['create']=function(properties){return new StringStringPacketDataMessage(properties);},StringStringPacketDataMessage['encode']=function(_0x321e27,writer){return writer||(writer=$Writer['create']()),null!=_0x321e27['data']&&Object['hasOwnProperty']['call'](_0x321e27,'data')&&writer['uint32'](0xa)['string'](_0x321e27['data']),null!=_0x321e27['data1']&&Object['hasOwnProperty']['call'](_0x321e27,'data1')&&writer['uint32'](0x12)['string'](_0x321e27['data1']),writer;},StringStringPacketDataMessage['encodeDelimited']=function(_0xef2661,writer){return this['encode'](_0xef2661,writer)['ldelim']();},StringStringPacketDataMessage['decode']=function(_0x23de96,length){_0x23de96 instanceof $Reader||(_0x23de96=$Reader['create'](_0x23de96));let _0x1d77c4=void 0x0===length?_0x23de96['len']:_0x23de96['pos']+length,_0x239710=new $root['StringStringPacketDataMessage']();for(;_0x23de96['pos']<_0x1d77c4;){let tag=_0x23de96['uint32']();switch(tag>>>0x3){case 0x1:_0x239710['data']=_0x23de96['string']();break;case 0x2:_0x239710['data1']=_0x23de96['string']();break;default:_0x23de96['skipType'](0x7&tag);}}return _0x239710;},StringStringPacketDataMessage['decodeDelimited']=function(_0x57988a){return _0x57988a instanceof $Reader||(_0x57988a=new $Reader(_0x57988a)),this['decode'](_0x57988a,_0x57988a['uint32']());},StringStringPacketDataMessage['verify']=function(_0x4eeb43){return'object'!=typeof _0x4eeb43||null===_0x4eeb43?'object\x20expected':null!=_0x4eeb43['data']&&_0x4eeb43['hasOwnProperty']('data')&&!$util['isString'](_0x4eeb43['data'])?'data:\x20string\x20expected':null!=_0x4eeb43['data1']&&_0x4eeb43['hasOwnProperty']('data1')&&!$util['isString'](_0x4eeb43['data1'])?'data1:\x20string\x20expected':null;},StringStringPacketDataMessage['fromObject']=function(object){if(object instanceof $root['StringStringPacketDataMessage'])return object;let _0x143585=new $root['StringStringPacketDataMessage']();return null!=object['data']&&(_0x143585['data']=String(object['data'])),null!=object['data1']&&(_0x143585['data1']=String(object['data1'])),_0x143585;},StringStringPacketDataMessage['toObject']=function(_0x87605e,options){options||(options={});let object={};return options['defaults']&&(object['data']='',object['data1']=''),null!=_0x87605e['data']&&_0x87605e['hasOwnProperty']('data')&&(object['data']=_0x87605e['data']),null!=_0x87605e['data1']&&_0x87605e['hasOwnProperty']('data1')&&(object['data1']=_0x87605e['data1']),object;},StringStringPacketDataMessage['prototype']['toJSON']=function(){return this['constructor']['toObject'](this,$protobuf['util']['toJSONOptions']);},StringStringPacketDataMessage['getTypeUrl']=function(typeUrlPrefix){return void 0x0===typeUrlPrefix&&(typeUrlPrefix='type.googleapis.com'),typeUrlPrefix+'/StringStringPacketDataMessage';},StringStringPacketDataMessage;})());class MessagesCompressor{static['decode'](_0x5c80ce,_0x11b5d3){const data=_getType(_0x11b5d3)['decode']('undefined'==typeof window?_0x5c80ce:new Uint8Array(_0x5c80ce));return _0x11b5d3['fromJSON']({...data});}static['encode'](_0x21b22){const protobufMessage=_getType(_0x21b22['constructor']),data=_0x21b22['toJSON'](),_0x31875d=protobufMessage['verify'](data);if(_0x31875d)throw Error(_0x31875d);return protobufMessage['encode'](protobufMessage['create'](data))['finish']();}}function _getType(_0x7e39f0){return $root[_0x7e39f0['DESCRIPTOR_NAME']];}class Channel extends EmitterMixin(){['_channelName'];['_wsGateway'];['_socket'];constructor(_0xc22d75,_wsGateway,_socket){super(),this['_channelName']=_0xc22d75,this['_wsGateway']=_wsGateway,this['_socket']=_socket,this['_subscribeToChannel']();}['remove'](){this['_socket']['off'](this['_channelName']);}['getEventName'](eventName,_0x45f302=!0x1){let fullEventName='';return _0x45f302&&(fullEventName+='all:'),fullEventName+='event',eventName&&(fullEventName+=':'+eventName),fullEventName;}['_subscribeToChannel'](){this['_socket']['on'](this['_channelName'],_0x4cbca4=>{const _0x45ad33=MessagesCompressor['decode'](_0x4cbca4,ChannelMessage);this['fire'](this['getEventName'](_0x45ad33['type'],!0x0),_0x45ad33['data'],_0x45ad33['socketId']),_0x45ad33['socketId']!==this['_wsGateway']['socketId']&&this['fire'](this['getEventName'](_0x45ad33['type']),_0x45ad33['data'],_0x45ad33['socketId']);});}}class GetUserMessage extends Message{['id'];static ['TYPE']='21';static ['READABLE_TYPE_NAME']='getUser';static ['DESCRIPTOR_NAME']='GetUserMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1}}};constructor(_0x44b02d){super(),this['id']=_0x44b02d;}['toJSON'](){return{'id':this['id']};}static['fromJSON'](data){return new GetUserMessage(data['id']);}}class GetUserResponse extends Message{['attributes'];static ['DESCRIPTOR_NAME']='GetUserResponse';static ['DESCRIPTOR']={'fields':{'attributes':{'rule':'repeated','type':'KeyValueDescriptor','id':0x1}}};constructor(attributes){super(),this['attributes']=attributes;}['toJSON'](){return{'attributes':Object['keys'](this['attributes'])['map'](_0x5ceb29=>({'key':_0x5ceb29,'value':JSON['stringify'](this['attributes'][_0x5ceb29])}))};}static['fromJSON'](data){const attributes=data['attributes']['reduce']((result,_0x12340a)=>(result[_0x12340a['key']]=_0x12340a['value']?JSON['parse'](_0x12340a['value']):null,result),{});return new GetUserResponse(attributes);}}class GetManyUsersMessage extends Message{['ids'];static ['TYPE']='22';static ['READABLE_TYPE_NAME']='getManyUsers';static ['DESCRIPTOR_NAME']='GetManyUsersMessage';static ['DESCRIPTOR']={'fields':{'ids':{'id':0x1,'type':'string','rule':'repeated'}}};constructor(_0x4ae839){super(),this['ids']=_0x4ae839;}['toJSON'](){return{'ids':this['ids']};}static['fromJSON'](data){return new GetManyUsersMessage(data['ids']);}}class GetManyUsersResponse extends Message{['users'];static ['DESCRIPTOR_NAME']='GetManyUsersResponse';static ['DESCRIPTOR']={'fields':{'users':{'rule':'repeated','type':'UserDescriptor','id':0x1}}};constructor(_0x463de8){super(),this['users']=_0x463de8;}['toJSON'](){return{'users':this['users']['map'](_userToJson)};}static['fromJSON'](data){return new GetManyUsersResponse(data['users']['map'](_userFromJson));}}function _userToJson(_0xdfac1f){return{'attributes':Object['keys'](_0xdfac1f)['map'](_0x41baa7=>({'key':_0x41baa7,'value':JSON['stringify'](_0xdfac1f[_0x41baa7])}))};}function _userFromJson(data){return data['attributes']['reduce']((result,_0x27223f)=>(result[_0x27223f['key']]=_0x27223f['value']?JSON['parse'](_0x27223f['value']):null,result),{});}class User{static ['_SERVICE']=0x2;['id'];['_attributes'];constructor(attributes={}){this['_attributes']=new Map();for(const _0x20af69 of Object['keys'](attributes))'id'!==_0x20af69?(this['_attributes']['set'](_0x20af69,attributes[_0x20af69]),Object['defineProperty'](this,_0x20af69,{'enumerable':!0x0,'configurable':!0x1,'get':()=>this['_attributes']['get'](_0x20af69)})):this['id']=attributes['id'];}static['fromData'](data){return new User(data);}static async['get'](wsGateway,_0x371b46){const _0x22cc3f=new GetUserMessage(_0x371b46);try{const _0x5e43c3=await wsGateway['_sendRequest'](User['_SERVICE'],GetUserMessage['TYPE'],MessagesCompressor['encode'](_0x22cc3f)),getUserResponse=MessagesCompressor['decode'](_0x5e43c3,GetUserResponse);return new User(getUserResponse['attributes']);}catch(_0x21b4f9){return new User({'id':_0x371b46});}}static async['getMany'](wsGateway,_0x2de2ce){const _0x122b27=new GetManyUsersMessage(_0x2de2ce);try{const _0xc46cd4=await wsGateway['_sendRequest'](User['_SERVICE'],GetManyUsersMessage['TYPE'],MessagesCompressor['encode'](_0x122b27));return MessagesCompressor['decode'](_0xc46cd4,GetManyUsersResponse)['users']['map'](_0x11cb49=>new User(_0x11cb49));}catch(_0x24806b){return _0x2de2ce['map'](_0x19c17c=>new User({'id':_0x19c17c}));}}}class CKEditorCloudServicesError extends Error{['context'];['code'];['data'];constructor(_0x420dc0,context,_0x4f94af=null,data={}){super('cloud-services-internal-error:\x20'+_0x420dc0),this['context']=context,this['code']=_0x4f94af,this['data']=data,this['name']='CKEditorError';}static['fromPublicError'](_0x78f464){return new CKEditorCloudServicesError(function(_0x366c8c){let _0x83c298='cloud-services-error:\x20'+_0x366c8c['message'];return _0x366c8c['data']&&(_0x83c298+='\x0aError\x20data:\x20'+JSON['stringify'](_0x366c8c['data'])),_0x366c8c['explanation']&&(_0x83c298+='\x0aExplanation:\x20'+_0x366c8c['explanation']),_0x366c8c['action']&&(_0x83c298+='\x0aAction:\x20'+_0x366c8c['action']),_0x366c8c['traceId']&&(_0x83c298+='\x0aTraceId:\x20'+_0x366c8c['traceId']),_0x366c8c['code']&&(_0x83c298+='\x0aCode:\x20'+_0x366c8c['code']),_0x83c298;}(_0x78f464),_0x78f464);}}class CKEditorCloudServicesServerError extends Error{['code'];['traceId'];['data'];constructor(_0x204685,_0x2477cd){super(),this['name']='CKEditorCloudServicesServerError',this['stack']=void 0x0,this['message']=_0x204685,this['code']=_0x2477cd['code'],this['traceId']=_0x2477cd['traceId'],this['data']=_0x2477cd['data'];}static['fromPublicError'](_0x3cb86c){return new CKEditorCloudServicesServerError(function(_0x1e65ee){let _0x337973='cloud-services-server-error:\x20'+_0x1e65ee['message'];return _0x1e65ee['explanation']&&(_0x337973+='\x0aExplanation:\x20'+_0x1e65ee['explanation']),_0x1e65ee['action']&&(_0x337973+='\x0aAction:\x20'+_0x1e65ee['action']),_0x1e65ee['traceId']&&(_0x337973+='\x0aTraceId:\x20'+_0x1e65ee['traceId']),_0x1e65ee['code']&&(_0x337973+='\x0aCode:\x20'+_0x1e65ee['code']),_0x337973;}(_0x3cb86c),_0x3cb86c);}}class PacketOptionsMessage extends Message{['flags'];['rooms'];['except'];static ['TYPE']=0xb;static ['DESCRIPTOR_NAME']='PacketOptionsMessage';static ['DESCRIPTOR']={'fields':{'flags':{'type':'string','id':0x1},'rooms':{'type':'string','id':0x2,'rule':'repeated'},'except':{'type':'string','id':0x3,'rule':'repeated'}}};constructor(_0x71a1bd,_0x3d4895=[],except=[]){super(),this['flags']=_0x71a1bd,this['rooms']=_0x3d4895,this['except']=except;}['toJSON'](){return{'flags':this['flags']?JSON['stringify'](this['flags']):void 0x0,'rooms':this['rooms']?.['length']?this['rooms']:void 0x0,'except':this['except']?.['length']?this['except']:void 0x0};}static['fromJSON'](data){return new PacketOptionsMessage(data['flags']&&JSON['parse'](data['flags']),data['rooms'],data['except']);}}const IS_NODE=!('undefined'==typeof process||!process['versions']||!process['versions']['node']);var MessageDataTypes;!function(MessageDataTypes){MessageDataTypes[MessageDataTypes['BUFFER']=0x1]='BUFFER',MessageDataTypes[MessageDataTypes['STRING']=0x2]='STRING',MessageDataTypes[MessageDataTypes['NUMBER']=0x3]='NUMBER',MessageDataTypes[MessageDataTypes['OBJECT']=0x4]='OBJECT';}(MessageDataTypes||(MessageDataTypes={}));class ParserUtils{static['getPacketType'](...types){let _0x3c8943=0x0;for(let _0x2b2a0d=0x0;_0x2b2a0d<types['length'];_0x2b2a0d++){_0x3c8943+=types[_0x2b2a0d]*Math['pow'](0xa,types['length']-_0x2b2a0d-0x1);}return _0x3c8943;}static['getType'](_0x95feb5){if(ParserUtils['isBuffer'](_0x95feb5))return 0x1;const type=typeof _0x95feb5;return'string'===type?0x2:'number'===type?0x3:0x4;}static['isBuffer'](_0x36447a){return IS_NODE&&Buffer['isBuffer'](_0x36447a)||_0x36447a instanceof ArrayBuffer||_0x36447a instanceof Uint8Array||this['_isBufferView'](_0x36447a);}static['_isBufferView'](_0x221de3){return'function'==typeof ArrayBuffer['isView']?ArrayBuffer['isView'](_0x221de3):_0x221de3['buffer']instanceof ArrayBuffer;}}class PackageDataMessage extends Message{['data'];['data1'];['constructor'];static['create'](data,data1){throw new TypeError('Must\x20be\x20implemented\x20in\x20a\x20child\x20class!');}}class NumberBytesPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['NUMBER'],MessageDataTypes['BUFFER']);static ['DESCRIPTOR_NAME']='NumberBytesPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'uint32','id':0x1},'data1':{'type':'bytes','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new NumberBytesPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new NumberBytesPacketDataMessage(data,data1);}}class StringBytesPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['STRING'],MessageDataTypes['BUFFER']);static ['DESCRIPTOR_NAME']='StringBytesPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'bytes','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new StringBytesPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new StringBytesPacketDataMessage(data,data1);}}class BytesBytesPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['BUFFER'],MessageDataTypes['BUFFER']);static ['DESCRIPTOR_NAME']='BytesBytesPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'bytes','id':0x1},'data1':{'type':'bytes','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new BytesBytesPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new BytesBytesPacketDataMessage(data,data1);}}class StringObjectPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['STRING'],MessageDataTypes['OBJECT']);static ['DESCRIPTOR_NAME']='StringObjectPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'string','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']?JSON['stringify'](this['data1']):void 0x0};}static['fromJSON'](data){return new StringObjectPacketDataMessage(data['data'],data['data1']&&JSON['parse'](data['data1']));}static['create'](data,data1){return new StringObjectPacketDataMessage(data,data1);}}class NumberObjectPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['NUMBER'],MessageDataTypes['OBJECT']);static ['DESCRIPTOR_NAME']='NumberObjectPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'uint32','id':0x1},'data1':{'type':'string','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']?JSON['stringify'](this['data1']):void 0x0};}static['fromJSON'](data){return new NumberObjectPacketDataMessage(data['data'],data['data1']&&JSON['parse'](data['data1']));}static['create'](data,data1){return new NumberObjectPacketDataMessage(data,data1);}}class ObjectObjectPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['OBJECT'],MessageDataTypes['OBJECT']);static ['DESCRIPTOR_NAME']='ObjectObjectPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'string','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data']?JSON['stringify'](this['data']):void 0x0,'data1':this['data1']?JSON['stringify'](this['data1']):void 0x0};}static['fromJSON'](data){return new ObjectObjectPacketDataMessage(data['data']&&JSON['parse'](data['data']),data['data1']&&JSON['parse'](data['data1']));}static['create'](data,data1){return new ObjectObjectPacketDataMessage(data,data1);}}class ObjectBufferPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['OBJECT'],MessageDataTypes['BUFFER']);static ['DESCRIPTOR_NAME']='ObjectBufferPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'bytes','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data']?JSON['stringify'](this['data']):void 0x0,'data1':this['data1']};}static['fromJSON'](data){return new ObjectBufferPacketDataMessage(data['data']&&JSON['parse'](data['data']),data['data1']);}static['create'](data,data1){return new ObjectBufferPacketDataMessage(data,data1);}}class StringStringPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['STRING'],MessageDataTypes['STRING']);static ['DESCRIPTOR_NAME']='StringStringPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'string','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new StringStringPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new StringStringPacketDataMessage(data,data1);}}class StringNumberPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['STRING'],MessageDataTypes['NUMBER']);static ['DESCRIPTOR_NAME']='StringNumberPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'string','id':0x1},'data1':{'type':'uint32','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new StringNumberPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new StringNumberPacketDataMessage(data,data1);}}class NumberNumberPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['NUMBER'],MessageDataTypes['NUMBER']);static ['DESCRIPTOR_NAME']='NumberNumberPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'uint32','id':0x1},'data1':{'type':'uint32','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new NumberNumberPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new NumberNumberPacketDataMessage(data,data1);}}class NumberStringPacketDataMessage extends PackageDataMessage{['data'];['data1'];static ['TYPE']=ParserUtils['getPacketType'](MessageDataTypes['NUMBER'],MessageDataTypes['STRING']);static ['DESCRIPTOR_NAME']='NumberStringPacketDataMessage';static ['DESCRIPTOR']={'fields':{'data':{'type':'uint32','id':0x1},'data1':{'type':'string','id':0x2}}};constructor(data,data1){super(),this['data']=data,this['data1']=data1;}['toJSON'](){return{'data':this['data'],'data1':this['data1']};}static['fromJSON'](data){return new NumberStringPacketDataMessage(data['data'],data['data1']);}static['create'](data,data1){return new NumberStringPacketDataMessage(data,data1);}}const PACKET_DATA_MESSAGES=[NumberBytesPacketDataMessage,StringBytesPacketDataMessage,BytesBytesPacketDataMessage,StringObjectPacketDataMessage,NumberObjectPacketDataMessage,ObjectObjectPacketDataMessage,ObjectBufferPacketDataMessage,StringStringPacketDataMessage,StringNumberPacketDataMessage,NumberNumberPacketDataMessage,NumberStringPacketDataMessage]['reduce']((result,PacketDataMessageConstructor)=>(result[PacketDataMessageConstructor['TYPE']]=PacketDataMessageConstructor,result),{});class PacketMessage extends Message{['type'];['data'];['id'];['nsp'];['options'];static ['TYPE']=0xa;static ['DESCRIPTOR_NAME']='PacketMessage';static ['DESCRIPTOR']={'fields':{'type':{'type':'uint32','id':0x1},'id':{'type':'uint32','id':0x2},'nsp':{'type':'string','id':0x3},'data':{'type':'bytes','id':0x4},'options':{'type':'bytes','id':0x5}}};constructor(type,data,_0x477d1a,_0xdbf3f='/',options=new PacketOptionsMessage()){super(),this['type']=type,this['data']=data,this['id']=_0x477d1a,this['nsp']=_0xdbf3f,this['options']=options;}get['packetData'](){return void 0x0===this['data']['data']&&void 0x0===this['data']['data1']?[]:this['data']['data']&&void 0x0===this['data']['data1']?[this['data']['data']]:[this['data']['data'],this['data']['data1']];}['toJSON'](){const options=MessagesCompressor['encode'](this['options']),data=MessagesCompressor['encode'](this['data']);return{'type':this['type']+0xa*this['data']['constructor']['TYPE'],'id':this['id'],'nsp':'/'===this['nsp']?void 0x0:this['nsp'],'data':data,'options':options};}static['fromJSON'](data){const frameDataType=Math['floor'](data['type']/0xa);return new PacketMessage(data['type']-0xa*frameDataType,MessagesCompressor['decode'](data['data'],PACKET_DATA_MESSAGES[frameDataType]),data['id'],data['nsp'],data['options']?MessagesCompressor['decode'](data['options'],PacketOptionsMessage):new PacketOptionsMessage());}static['create'](packet,options={}){const frameDataType=ParserUtils['getPacketType'](ParserUtils['getType'](packet['data'][0x0]),ParserUtils['getType'](packet['data'][0x1]??packet['data'][0x0]));return new PacketMessage(packet['type'],PACKET_DATA_MESSAGES[frameDataType]['create'](packet['data'][0x0],packet['data'][0x1]),packet['id'],packet['nsp'],new PacketOptionsMessage(options['flags'],options['rooms'],options['except']));}}class PacketParser{['encode'](type,data,_0x26eb85,_0x205da3='/',options={}){if(data['length']>0x2)throw new Error('PacketParser\x20supports\x20only\x202\x20elements\x20in\x20data');const packet={'type':type,'data':data,'id':_0x26eb85,'nsp':_0x205da3};return MessagesCompressor['encode'](PacketMessage['create'](packet,options));}['decode'](_0x15d0ca){const packetMessage=MessagesCompressor['decode'](_0x15d0ca,PacketMessage);return{'packet':{'id':packetMessage['id'],'type':packetMessage['type'],'data':packetMessage['packetData'],'nsp':packetMessage['nsp']},'options':{'flags':packetMessage['options']['flags'],'rooms':packetMessage['options']['rooms'],'except':packetMessage['options']['except']}};}}const ENCODED_TYPES=[PacketType['EVENT'],PacketType['ACK'],PacketType['BINARY_ACK'],PacketType['BINARY_EVENT']];class Encoder extends Encoder$1{['_packetParser'];constructor(_packetParser=new PacketParser()){super(),this['_packetParser']=_packetParser;}['encode'](packet){if(ENCODED_TYPES['includes'](packet['type']))try{return[this['_packetParser']['encode'](packet['type'],packet['data'],packet['id'],packet['nsp'])];}catch(_0x341af2){console['error']('Can\x20not\x20properly\x20serialize\x20or\x20deserialize\x20messages.\x20Check\x20the\x20original\x20error.',{'originalError':{'message':_0x341af2['message']}});}return super['encode'](packet);}}class Decoder extends Decoder$1{['_packetParser'];constructor(_packetParser=new PacketParser()){super(),this['_packetParser']=_packetParser;}['add'](_0x22aee9){if(!ParserUtils['isBuffer'](_0x22aee9))return super['add'](_0x22aee9);let packet;try{packet=this['_packetParser']['decode'](_0x22aee9)['packet'];}catch(_0x279f37){return super['add'](_0x22aee9);}super['emitReserved']('decoded',packet);}}var parser=Object['freeze']({'__proto__':null,'Decoder':Decoder,'ENCODED_TYPES':ENCODED_TYPES,'Encoder':Encoder});class WebSocketRequest{['_context'];['_deferredPromise'];['timeout'];constructor(_context,timeoutMs){this['_context']=_context,this['_deferredPromise']=(function(){let _0x1aef85,reject;const _0x12346b=new Promise((_0x2f3a02,promiseReject)=>{_0x1aef85=_0x2f3a02,reject=promiseReject;});return{'resolve':_0x1aef85,'reject':reject,'promise':_0x12346b};}()),this['timeout']=setTimeout(()=>this['error'](new CKEditorCloudServicesError('Request\x20timeout.',this['_context'])),timeoutMs);}get['promise'](){return this['_deferredPromise']['promise'];}['response'](_0x5024c6){this['_deferredPromise']['resolve'](_0x5024c6);}['error'](_0x1d5804){this['_deferredPromise']['reject'](_0x1d5804);}}class WebSocketGatewayRequestsManager{['_context'];['_requests'];constructor(_context){this['_context']=_context,this['_requests']=new Set();}async['send'](sendFunction,timeoutMs=0xafc8){const _0x20b309=this['_createRequest'](timeoutMs);try{return sendFunction(_0x20b309),await _0x20b309['promise'];}finally{this['_finishRequest'](_0x20b309);}}['errorAll'](_0x53aca6){for(const _0x52daf0 of this['_requests'])_0x52daf0['error'](_0x53aca6);}['waitForAllRequests'](time=0xafc8){return this['_waitForRequests'](time);}['_createRequest'](timeoutMs){const _0x41682a=new WebSocketRequest(this['_context'],timeoutMs);return this['_requests']['add'](_0x41682a),_0x41682a;}['_finishRequest'](_0x42707e){this['_requests']['delete'](_0x42707e),clearTimeout(_0x42707e['timeout']);}async['_waitForRequests'](time=0x1388,attempt=0x0){return!this['_requests']['size']||attempt>=time/0x1f4?Promise['resolve']():(await new Promise(_0x15590f=>{setTimeout(_0x15590f,0x1f4);}),this['_waitForRequests'](time,attempt++));}}var WEB_SOCKET_GATEWAY_STATES;!function(_0x296f41){_0x296f41['DISCONNECTED']='disconnected',_0x296f41['CONNECTING']='connecting',_0x296f41['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES||(WEB_SOCKET_GATEWAY_STATES={}));class WebSocketGateway extends ObservableMixin(){['_token'];['_options'];['_connectionProvider'];['_userFactory'];['_requestsManager'];['_url'];['_socket'];['_socketAuth'];['_channels'];['_connectionAttempt'];['me'];['socketId'];['state'];static ['STATE_DISCONNECTED']='disconnected';static ['STATE_CONNECTING']='connecting';static ['STATE_CONNECTED']='connected';static ['_CHANGE_STATE_EVENT_PRIORITY']=priorities['get']('highest')+0xf423f;constructor(_0xa871c7,_token,_options={},_connectionProvider=lookup,_userFactory=User['get']){if(super(),this['_token']=_token,this['_options']=_options,this['_connectionProvider']=_connectionProvider,this['_userFactory']=_userFactory,this['_requestsManager']=new WebSocketGatewayRequestsManager(this),this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0xa871c7)throw new TypeError('Api\x20address\x20must\x20be\x20provided.');if(!this['_token'])throw new TypeError('Token\x20must\x20be\x20provided.');this['_options']['requestTimeout']||(this['_options']['requestTimeout']=0x4e20),this['_url']=_0x4a5bb6(_0xa871c7['replace'](/^(?!(?:\w+:)?\/\/)/,'https://')),this['set']('state','disconnected'),this['set']('socketId',void 0x0),this['set']('me',void 0x0),this['on']('change:state',async(event,_0x3dcbe5,_0x9452a0)=>{if(this['_debugEvent']('ws-gw:change:state',_0x9452a0),_0x9452a0!==WebSocketGateway['STATE_CONNECTED']){if(_0x9452a0===WebSocketGateway['STATE_DISCONNECTED'])return this['_requestsManager']['errorAll'](new CKEditorCloudServicesError('Not\x20connected.',this));}else try{this['me']=await this['_userFactory']['call'](User,this,this['_socketAuth']?.['userId']);}catch(_0x4e1a55){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(event,_0x67e9c8)=>{this['_options']['onError']?this['_options']['onError'](_0x67e9c8):console['error'](_0x67e9c8);});}get['sessionId'](){return this['socketId'];}['waitForAllRequests'](time){return this['_requestsManager']['waitForAllRequests'](time);}['disconnect'](){'disconnected'!==this['state']&&(this['_socket']?.['disconnect'](),this['_socket']=void 0x0,this['state']='disconnected');}async['reconnect'](){this['_socket']||'disconnected'!==this['state']||(await this['_token']['refreshToken'](),await this['_connect']());}static async['connect'](token,_0x2bd180='local.cs.dev:443/ws-v2',options={},_0x500c8f=lookup,userFactory=User['get']){const webSocketGateway=new WebSocketGateway(_0x2bd180,token,options,_0x500c8f,userFactory);return await webSocketGateway['_connect'](),webSocketGateway;}['_sendRequest'](_0x5c5288,method,_0x56a8d5){if(!_0x5c5288)throw new CKEditorCloudServicesError('`serviceName`\x20must\x20be\x20provided.',this);if(this['state']!==WebSocketGateway['STATE_CONNECTED'])throw new CKEditorCloudServicesError('Not\x20connected.',this);if(!this['_socketAuth']||!this['_socketAuth']['isAuthenticated'])throw new CKEditorCloudServicesError('Not\x20authenticated.',this);const _0x2ac49b=new ArrayBuffer(_0x56a8d5['length']+0x2),_0x30164c=new Uint8Array(_0x2ac49b);return _0x30164c[0x0]=_0x5c5288,_0x30164c[0x1]=parseInt(method),_0x30164c['set'](_0x56a8d5,0x2),this['_emit'](0x1,_0x30164c);}['_getChannel'](_0x15225d,_0x4961d8){const _0x189913=''+_0x15225d+_0x4961d8;return!this['_channels']['has'](_0x189913)&&this['_socket']&&this['_channels']['set'](_0x189913,new Channel(_0x189913,this,this['_socket'])),this['_channels']['get'](_0x189913);}['_connect'](){return new Promise((_0x1914dd,reject)=>{const socket=this['_setupSocket']();!this['socketId']&&socket['io']['on']('reconnect_error',()=>{this['_debugEvent']('reconnect_error'),this['_reconnectionAttemptError'](reject);}),socket['once']('connect',async()=>{this['_debugEvent']('once-connect');try{await this['_onConnect'](),_0x1914dd();}catch(_0x1339e1){reject(_0x1339e1);}}),socket['connect']();});}['_getPortByProtocol'](protocol){return['http:','ws:']['includes'](protocol)?0x50:0x1bb;}['_setupSocket'](){if(this['_socket'])return this['_socket'];const port=this['_url']['port']||this['_getPortByProtocol'](this['_url']['protocol']),_0x1e5897=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+port,pathPrefix=this['_url']['pathname']['match'](/^\/.*\/ws/)?this['_url']['pathname']['split']('/ws')[0x0]:'',socket=this['_connectionProvider'](_0x1e5897,{'parser':{'Encoder':Encoder,'Decoder':Decoder},'path':pathPrefix+'/ws-v2/ws','transports':['websocket'],'timeout':void 0x0!==this['_options']['timeout']?this['_options']['timeout']:0x1388,'reconnection':void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect'],'reconnectionDelay':0x3e8,'reconnectionDelayMax':0x1388,'rejectUnauthorized':void 0x0===this['_options']['rejectUnauthorized']||this['_options']['rejectUnauthorized'],'query':{'version':'52.4.0'},'agent':this['_options']['agent']??!0x1,'closeOnBeforeunload':!0x1});return this['state']='connecting',socket['on']('connect',()=>{this['_debugEvent']('connect'),this['socketId']=socket['id'];}),socket['on']('connect_error',_0x6af555=>{this['_debugEvent']('connect_error',_0x6af555);}),socket['on']('disconnect',()=>{this['_debugEvent']('disconnect'),this['_onDisconnect']();}),socket['io']['on']('reconnect',async()=>{this['_debugEvent']('reconnect'),await this['_onReconnect']();}),socket['io']['on']('reconnect_attempt',attempt=>{this['_debugEvent']('reconnect_attempt',attempt),this['state']='connecting',this['_connectionAttempt']=attempt;}),socket['on']('unauthorized',data=>{this['_debugEvent']('unauthorized'),this['_onUnauthorized'](data);}),socket['on']('authenticationRequest',async data=>{this['_debugEvent']('authenticationRequest',data['attempt']),await this['_onReconnect']();}),this['_socket']=socket,socket;}['_emit'](eventName,_0x5ee131){const socket=this['_socket'];return this['_requestsManager']['send'](_0x506440=>{socket['emit'](eventName,_0x5ee131,(_0x2bbf5c,_0x52fbb2)=>{if(_0x2bbf5c)return _0x506440['error'](CKEditorCloudServicesServerError['fromPublicError'](_0x2bbf5c));_0x506440['response'](_0x52fbb2);});},this['_options']['requestTimeout']);}['_addAuthData'](environmentId,_0x5b8ebd){this['_socketAuth']={'environmentId':environmentId,'userId':_0x5b8ebd,'isAuthenticated':!0x0};}['_removeAuthData'](){this['_socketAuth']=void 0x0;}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']='connected';const _0x3e647b=async(event,_0x59aa3f,_0x32c6a0)=>{this['_debugEvent']('token:value:change');try{await this['_authenticate'](_0x32c6a0);}catch(_0x593525){}};this['_token']['on']('change:value',_0x3e647b),this['_socket']['io']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0x3e647b);});}async['_onReconnect'](){await this['_token']['refreshToken'](),await this['_onConnect']();}['_onDisconnect'](){this['state']='disconnected',this['_connectionAttempt']=0x0,this['fire']('disconnect');for(const _0x2f7edb of this['_channels']['values']())_0x2f7edb['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_debugEvent'](eventName,eventData){if(!this['_isDebugModeEnabled']())return;const eventDataString=void 0x0!==eventData?',\x20data:\x20'+eventData:'';console['info'](new Date()['toLocaleString']()+'\x20'+eventName+eventDataString);}['_reconnectionAttemptError'](_0x1cc4be){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x1cc4be(CKEditorCloudServicesError['fromPublicError']({'message':'The\x20number\x20of\x20initial\x20connection\x20attempts\x20exceeded.','explanation':'Three\x20initial\x20connection\x20attempts\x20failed.\x20It\x20can\x20be\x20caused\x20by\x20a\x20slow,\x20unstable,\x20missing\x20or\x20blocked\x20Internet\x20connection.','action':'Please\x20verify\x20the\x20stability\x20of\x20your\x20Internet\x20connection\x20and\x20ensure\x20that\x20no\x20antivirus\x20or\x20firewall\x20software\x20blocks\x20the\x20Web\x20Socket\x20protocol\x20connections.'})));}['_onUnauthorized']({error:_0x3438fc}){this['_removeAuthData'](),this['fire']('error',CKEditorCloudServicesServerError['fromPublicError'](_0x3438fc));}async['_authenticate'](token){try{this['_debugEvent']('authenticate:start');const _0x329f7b=await this['_emit'](0x2,{'token':token});this['_debugEvent']('authenticate:success','envId:\x20'+_0x329f7b['environmentId']+',\x20userId:\x20'+_0x329f7b['userId']),this['_addAuthData'](_0x329f7b['environmentId'],_0x329f7b['userId']);}catch(_0x353965){throw this['_debugEvent']('authenticate:error',_0x353965['message']),this['_removeAuthData'](),_0x353965;}}['_isDebugModeEnabled'](){if(!global['window']['localStorage'])return!0x1;return'true'===(global['window']['localStorage']['getItem']('csClientDebugMode')??'false')['toLowerCase']();}}class IsEditorBundleUploadedMessage extends Message{['bundleVersion'];static ['TYPE']='131';static ['READABLE_TYPE_NAME']='isEditorBundleUploaded';static ['DESCRIPTOR_NAME']='IsEditorBundleUploadedMessage';static ['DESCRIPTOR']={'fields':{'bundleVersion':{'type':'string','id':0x1}}};constructor(_0x213727){super(),this['bundleVersion']=_0x213727;}['toJSON'](){return{'bundleVersion':this['bundleVersion']};}static['fromJSON'](object){return new IsEditorBundleUploadedMessage(object['bundleVersion']);}}class IsEditorBundleUploadedResponse extends Message{['isUploaded'];static ['DESCRIPTOR_NAME']='IsEditorBundleUploadedResponse';static ['DESCRIPTOR']={'fields':{'isUploaded':{'type':'bool','id':0x1}}};constructor(_0xcc24a4){super(),this['isUploaded']=_0xcc24a4;}['toJSON'](){return{'isUploaded':this['isUploaded']};}static['fromJSON'](_0x588c80){return new IsEditorBundleUploadedResponse(_0x588c80['isUploaded']);}}class EditorService extends EmitterMixin(){static ['_SERVICE']=0xd;static async['isBundleUploaded'](wsGateway,_0x391c37){const _0x1e0601=new IsEditorBundleUploadedMessage(_0x391c37);if(wsGateway['state']!==WEB_SOCKET_GATEWAY_STATES['CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);const _0x34e7b3=await wsGateway['_sendRequest'](EditorService['_SERVICE'],IsEditorBundleUploadedMessage['TYPE'],MessagesCompressor['encode'](_0x1e0601));return MessagesCompressor['decode'](_0x34e7b3,IsEditorBundleUploadedResponse)['isUploaded'];}}class RevisionHistoryGetRevisionMessage extends Message{['documentId'];['revisionId'];static ['TYPE']='123';static ['READABLE_TYPE_NAME']='getRevision';static ['DESCRIPTOR_NAME']='RevisionHistoryGetRevisionMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'revisionId':{'type':'string','id':0x2}}};constructor(documentId,_0x4dcb95){super(),this['documentId']=documentId,this['revisionId']=_0x4dcb95;}['toJSON'](){return{'documentId':this['documentId'],'revisionId':this['revisionId']};}static['fromJSON'](object){return new RevisionHistoryGetRevisionMessage(object['documentId'],object['revisionId']);}}class RevisionDescriptor extends Descriptor{static ['DESCRIPTOR_NAME']='RevisionDescriptor';static ['DESCRIPTOR']={'fields':{'revisionId':{'type':'string','id':0x1},'name':{'type':'string','id':0x2},'creatorId':{'type':'string','id':0x3},'authorsIds':{'type':'string','id':0x4},'diffData':{'type':'string','id':0x5},'createdAt':{'type':'string','id':0x6},'attributes':{'type':'string','id':0x7},'toVersion':{'type':'uint32','id':0x8},'fromVersion':{'type':'uint32','id':0x9},'isEmptyCurrent':{'type':'bool','id':0xa}}};static['create'](object){return{'revisionId':object['id'],'name':object['name'],'creatorId':object['creatorId'],'createdAt':object['createdAt'],'fromVersion':object['fromVersion'],'toVersion':object['toVersion'],'isEmptyCurrent':object['isEmptyCurrent'],'diffData':object['diffData']?JSON['stringify'](object['diffData']):void 0x0,'attributes':object['attributes'],'authorsIds':object['authorsIds']};}static['toJSON'](_0x2358bb){return{'revisionId':_0x2358bb['revisionId'],'name':_0x2358bb['name'],'creatorId':_0x2358bb['creatorId'],'authorsIds':_0x2358bb['authorsIds']?JSON['stringify'](_0x2358bb['authorsIds']):void 0x0,'diffData':_0x2358bb['diffData'],'createdAt':_0x2358bb['createdAt']?.['toISOString'](),'attributes':_0x2358bb['attributes']?JSON['stringify'](_0x2358bb['attributes']):void 0x0,'toVersion':_0x2358bb['toVersion'],'fromVersion':_0x2358bb['fromVersion'],'isEmptyCurrent':_0x2358bb['isEmptyCurrent']};}static['fromJSON'](_0x2ea9e7){return{'revisionId':(_0x2ea9e7={..._0x2ea9e7})['revisionId'],'name':_0x2ea9e7['name'],'creatorId':_0x2ea9e7['creatorId'],'authorsIds':_0x2ea9e7['authorsIds']?JSON['parse'](_0x2ea9e7['authorsIds']):void 0x0,'diffData':_0x2ea9e7['diffData'],'createdAt':_0x2ea9e7['createdAt']?new Date(_0x2ea9e7['createdAt']):void 0x0,'attributes':_0x2ea9e7['attributes']?JSON['parse'](_0x2ea9e7['attributes']):void 0x0,'toVersion':_0x2ea9e7['toVersion'],'fromVersion':_0x2ea9e7['fromVersion'],'isEmptyCurrent':_0x2ea9e7['isEmptyCurrent']};}static['toObject'](_0x1ca6d4){return function(revisionObject){for(const [_0x4ef45c,_0x3f71a2]of Object['entries'](revisionObject))void 0x0===_0x3f71a2&&delete revisionObject[_0x4ef45c];return revisionObject;}({'id':_0x1ca6d4['revisionId'],'name':_0x1ca6d4['name'],'creatorId':_0x1ca6d4['creatorId'],'createdAt':_0x1ca6d4['createdAt'],'fromVersion':_0x1ca6d4['fromVersion'],'toVersion':_0x1ca6d4['toVersion'],'isEmptyCurrent':_0x1ca6d4['isEmptyCurrent'],'diffData':_0x1ca6d4['diffData']?JSON['parse'](_0x1ca6d4['diffData']):void 0x0,'attributes':_0x1ca6d4['attributes'],'authorsIds':_0x1ca6d4['authorsIds']});}}class RevisionHistoryGetRevisionResponse extends Message{['revisionId'];['name'];['creatorId'];['authorsIds'];['createdAt'];['diffData'];['attributes'];['fromVersion'];['toVersion'];['isEmptyCurrent'];static ['DESCRIPTOR_NAME']='RevisionHistoryGetRevisionResponse';static ['DESCRIPTOR']=RevisionDescriptor['DESCRIPTOR'];constructor(_0x297d87,_0x2352a2,creatorId,authorsIds,createdAt,diffData,attributes,_0xd8a19d,toVersion,isEmptyCurrent){super(),this['revisionId']=_0x297d87,this['name']=_0x2352a2,this['creatorId']=creatorId,this['authorsIds']=authorsIds,this['createdAt']=createdAt,this['diffData']=diffData,this['attributes']=attributes,this['fromVersion']=_0xd8a19d,this['toVersion']=toVersion,this['isEmptyCurrent']=isEmptyCurrent;}['toJSON'](){return RevisionDescriptor['toJSON'](this);}['toObject'](){return RevisionDescriptor['toObject'](this);}static['create'](_0x44931f){return new RevisionHistoryGetRevisionResponse(_0x44931f['revisionId'],_0x44931f['name'],_0x44931f['creatorId'],_0x44931f['authorsIds'],_0x44931f['createdAt'],_0x44931f['diffData'],_0x44931f['attributes'],_0x44931f['fromVersion'],_0x44931f['toVersion'],_0x44931f['isEmptyCurrent']);}static['fromJSON'](_0x383ac7){return new RevisionHistoryGetRevisionResponse(_0x383ac7['revisionId'],_0x383ac7['name'],_0x383ac7['creatorId'],_0x383ac7['authorsIds']?JSON['parse'](_0x383ac7['authorsIds']):void 0x0,_0x383ac7['createdAt']?new Date(_0x383ac7['createdAt']):void 0x0,_0x383ac7['diffData'],_0x383ac7['attributes']?JSON['parse'](_0x383ac7['attributes']):void 0x0,_0x383ac7['fromVersion'],_0x383ac7['toVersion'],_0x383ac7['isEmptyCurrent']);}}class RevisionHistoryUpdateRevisionsMessage extends Message{['documentId'];['requestId'];['revisions'];static ['TYPE']='124';static ['READABLE_TYPE_NAME']='updateRevisions';static ['DESCRIPTOR_NAME']='RevisionHistoryUpdateRevisionsMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'requestId':{'type':'uint32','id':0x2},'revisions':{'type':'RevisionDescriptor','id':0x3,'rule':'repeated'}}};constructor(documentId,requestId,_0x297740){super(),this['documentId']=documentId,this['requestId']=requestId,this['revisions']=_0x297740;}['toJSON'](){return{'documentId':this['documentId'],'requestId':this['requestId'],'revisions':this['revisions']['map'](RevisionDescriptor['toJSON'])};}['toObject'](){return{'documentId':this['documentId'],'requestId':this['requestId'],'revisions':this['revisions']['map'](RevisionDescriptor['toObject'])};}static['create'](_0x1c2a8c){return new RevisionHistoryUpdateRevisionsMessage(_0x1c2a8c['documentId'],_0x1c2a8c['requestId'],_0x1c2a8c['revisions']['map'](RevisionDescriptor['create']));}static['fromJSON'](_0x2fd57c){return new RevisionHistoryUpdateRevisionsMessage(_0x2fd57c['documentId'],_0x2fd57c['requestId'],_0x2fd57c['revisions']['map'](RevisionDescriptor['fromJSON']));}}class RevisionHistoryUpdateRevisionsResponse extends Message{['requestId'];static ['DESCRIPTOR_NAME']='RevisionHistoryUpdateRevisionsResponse';static ['DESCRIPTOR']={'fields':{'requestId':{'type':'uint32','id':0x1}}};constructor(requestId){super(),this['requestId']=requestId;}['toJSON'](){return{'requestId':this['requestId']};}static['fromJSON'](_0xd46c89){return new RevisionHistoryUpdateRevisionsResponse(_0xd46c89['requestId']);}}class RevisionHistoryConnectMessage extends Message{['documentId'];static ['TYPE']='121';static ['READABLE_TYPE_NAME']='connectToRevisionHistory';static ['DESCRIPTOR_NAME']='RevisionHistoryConnectMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new RevisionHistoryConnectMessage(object['documentId']);}}class RevisionHistoryConnectResponse extends Message{['channel'];['requestId'];['revisions'];static ['DESCRIPTOR_NAME']='RevisionHistoryConnectResponse';static ['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'requestId':{'type':'uint32','id':0x2},'revisions':{'type':'RevisionDescriptor','id':0x3,'rule':'repeated'}}};constructor(_0x5ecab6,requestId,_0x137743){super(),this['channel']=_0x5ecab6,this['requestId']=requestId,this['revisions']=_0x137743;}['toJSON'](){return{'channel':this['channel'],'requestId':this['requestId'],'revisions':this['revisions']['map'](RevisionDescriptor['toJSON'])};}['toObject'](){return{'channel':this['channel'],'requestId':this['requestId'],'revisions':this['revisions']['map'](RevisionDescriptor['toObject'])};}static['fromJSON'](_0x2f951a){return new RevisionHistoryConnectResponse(_0x2f951a['channel'],_0x2f951a['requestId'],_0x2f951a['revisions']['map'](RevisionDescriptor['fromJSON']));}}class RevisionHistoryReconnectMessage extends Message{['documentId'];['requestId'];static ['TYPE']='122';static ['READABLE_TYPE_NAME']='reconnectToRevisionHistory';static ['DESCRIPTOR_NAME']='RevisionHistoryReconnectMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'requestId':{'type':'uint32','id':0x2}}};constructor(documentId,requestId){super(),this['documentId']=documentId,this['requestId']=requestId;}['toJSON'](){return{'documentId':this['documentId'],'requestId':this['requestId']};}static['fromJSON'](object){return new RevisionHistoryReconnectMessage(object['documentId'],object['requestId']);}}class ServiceNotConnectedError extends CKEditorCloudServicesError{constructor(_0x38a246,context){super(_0x38a246+'\x20Service\x20is\x20not\x20connected.',context);}}class RevisionHistoryService extends EmitterMixin(){['_documentId'];['_isConnected'];['_wsGateway'];['_channel'];static ['_SERVICE']=0xc;constructor(_documentId){super(),this['_documentId']=_documentId,this['_isConnected']=!0x1;}get['isConnected'](){return this['_isConnected'];}['connect'](wsGateway){return this['_isConnected']?Promise['resolve']():this['_connect'](wsGateway,new RevisionHistoryConnectMessage(this['_documentId']));}['disconnect'](){this['_isConnected']&&(this['_isConnected']=!0x1,this['_wsGateway']&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['fire']('disconnected'),this['stopListening']());}['reconnect'](wsGateway,lastRequestId){if(this['isConnected'])throw new CKEditorCloudServicesError('Cannot\x20reconnect\x20to\x20already\x20connected\x20service.',wsGateway);return this['_connect'](wsGateway,new RevisionHistoryReconnectMessage(this['_documentId'],lastRequestId));}async['updateRevisions'](_0x138aab,lastRequestId){const _0x4d2cb9=RevisionHistoryUpdateRevisionsMessage['create']({'documentId':this['_documentId'],'requestId':lastRequestId,'revisions':_0x138aab}),_0x328409=await this['_sendRequest'](RevisionHistoryUpdateRevisionsMessage['TYPE'],_0x4d2cb9),{requestId:requestId}=MessagesCompressor['decode'](_0x328409,RevisionHistoryUpdateRevisionsResponse);return requestId;}async['getRevision'](_0x550ac2){const _0x14113e=new RevisionHistoryGetRevisionMessage(this['_documentId'],_0x550ac2),_0x10b6d5=await this['_sendRequest'](RevisionHistoryGetRevisionMessage['TYPE'],_0x14113e);return MessagesCompressor['decode'](_0x10b6d5,RevisionHistoryGetRevisionResponse)['toObject']();}async['_connect'](wsGateway,_0x811e3b){if(wsGateway['state']!==WEB_SOCKET_GATEWAY_STATES['CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x346ada=await wsGateway['_sendRequest'](0xc,_0x811e3b['constructor']['TYPE'],MessagesCompressor['encode'](_0x811e3b)),{channel:_0x32e4da,requestId:requestId,revisions:_0x1cd930}=MessagesCompressor['decode'](_0x346ada,RevisionHistoryConnectResponse)['toObject']();return this['listenTo'](wsGateway,'change:state',(_0x415a3b,_0xa58a61,state)=>this['_onWsGatewayStateChange'](state),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['_connectToChannel'](wsGateway,_0x32e4da),this['_isConnected']=!0x0,this['fire']('connected'),{'revisions':_0x1cd930,'requestId':requestId};}['_connectToChannel'](wsGateway,_0x19ee4c){this['_channel']=wsGateway['_getChannel'](RevisionHistoryService['_SERVICE'],_0x19ee4c),this['_channel']&&this['listenTo'](this['_channel'],this['_channel']['getEventName'](RevisionHistoryUpdateRevisionsMessage['TYPE']),(event,data)=>{const {documentId:documentId,requestId:requestId,revisions:_0x2db5db}=MessagesCompressor['decode'](data,RevisionHistoryUpdateRevisionsMessage)['toObject']();this['fire']('revisionsUpdated',{'documentId':documentId,'requestId':requestId,'revisionsData':_0x2db5db});});}['_onWsGatewayStateChange'](_0x250203){_0x250203===WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&this['disconnect']();}['_sendRequest'](method,_0x2a59af){if(!this['_wsGateway']||!this['_isConnected'])throw new ServiceNotConnectedError('Revision\x20History',this);return this['_wsGateway']['_sendRequest'](0xc,method,MessagesCompressor['encode'](_0x2a59af));}}class AddSuggestionMessage extends Message{['id'];['documentId'];['type'];['data'];['originalSuggestionId'];['attributes'];static ['TYPE']='101';static ['READABLE_TYPE_NAME']='addSuggestion';static ['DESCRIPTOR_NAME']='TrackChangesAddSuggestionMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'type':{'type':'string','id':0x3},'data':{'type':'string','id':0x4},'originalSuggestionId':{'type':'string','id':0x5},'attributes':{'type':'string','id':0x6}}};constructor(_0x3af53d,documentId,type,data={},originalSuggestionId=null,attributes=null){super(),this['id']=_0x3af53d,this['documentId']=documentId,this['type']=type,this['data']=data,this['originalSuggestionId']=originalSuggestionId,this['attributes']=attributes;}['toJSON'](){return{'id':this['id'],'documentId':this['documentId'],'type':this['type'],'data':JSON['stringify'](this['data']),'originalSuggestionId':this['originalSuggestionId'],'attributes':JSON['stringify'](this['attributes'])};}static['fromJSON'](object){return new AddSuggestionMessage(object['id'],object['documentId'],object['type'],JSON['parse'](object['data']),object['originalSuggestionId']??null,object['attributes']?JSON['parse'](object['attributes']):null);}}class AddSuggestionResponse extends Message{['id'];['authorId'];['type'];['hasComments'];['state'];['data'];['attributes'];['createdAt'];static ['DESCRIPTOR_NAME']='TrackChangesAddSuggestionResponse';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'authorId':{'type':'string','id':0x2},'type':{'type':'string','id':0x3},'createdAt':{'type':'string','id':0x4},'data':{'type':'string','id':0x5},'hasComments':{'type':'bool','id':0x6},'state':{'type':'string','id':0x7},'attributes':{'type':'string','id':0x8}}};constructor(_0x4d3e1c,authorId,type,createdAt,hasComments,state,data={},attributes=null){super(),this['id']=_0x4d3e1c,this['authorId']=authorId,this['type']=type,this['hasComments']=hasComments,this['state']=state,this['data']=data,this['attributes']=attributes,this['createdAt']=createdAt?new Date(createdAt):void 0x0;}['toJSON'](){return{'id':this['id'],'authorId':this['authorId'],'type':this['type'],'createdAt':this['createdAt']?.['toISOString'](),'data':JSON['stringify'](this['data']),'hasComments':this['hasComments'],'state':this['state'],'attributes':JSON['stringify'](this['attributes'])};}static['fromJSON'](data){return new AddSuggestionResponse(data['id'],data['authorId'],data['type'],data['createdAt'],data['hasComments'],data['state'],JSON['parse'](data['data']),data['attributes']?JSON['parse'](data['attributes']):null);}}class GetSuggestionMessage extends Message{['id'];['documentId'];static ['TYPE']='103';static ['READABLE_TYPE_NAME']='getSuggestion';static ['DESCRIPTOR_NAME']='TrackChangesGetSuggestionMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2}}};constructor(_0x483a42,documentId){super(),this['id']=_0x483a42,this['documentId']=documentId;}['toJSON'](){return{'id':this['id'],'documentId':this['documentId']};}static['fromJSON'](object){return new GetSuggestionMessage(object['id'],object['documentId']);}}class GetSuggestionResponse extends Message{['id'];['authorId'];['type'];['hasComments'];['state'];['data'];['attributes'];['createdAt'];static ['DESCRIPTOR_NAME']='TrackChangesGetSuggestionResponse';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'authorId':{'type':'string','id':0x2},'type':{'type':'string','id':0x3},'createdAt':{'type':'string','id':0x4},'data':{'type':'string','id':0x5},'hasComments':{'type':'bool','id':0x6},'state':{'type':'string','id':0x7},'attributes':{'type':'string','id':0x8}}};constructor(_0x16eaf8,authorId,type,createdAt,hasComments,state,data={},attributes=null){super(),this['id']=_0x16eaf8,this['authorId']=authorId,this['type']=type,this['hasComments']=hasComments,this['state']=state,this['data']=data,this['attributes']=attributes,this['createdAt']=new Date(createdAt);}['toJSON'](){return{'id':this['id'],'authorId':this['authorId'],'type':this['type'],'createdAt':this['createdAt']['toISOString'](),'data':JSON['stringify'](this['data']),'hasComments':this['hasComments'],'state':this['state'],'attributes':JSON['stringify'](this['attributes'])};}static['fromJSON'](data){return new GetSuggestionResponse(data['id'],data['authorId'],data['type'],data['createdAt'],data['hasComments'],data['state'],JSON['parse'](data['data']),data['attributes']?JSON['parse'](data['attributes']):null);}}class GetAllSuggestionsMessage extends Message{['documentId'];static ['TYPE']='102';static ['READABLE_TYPE_NAME']='getAllSuggestions';static ['DESCRIPTOR_NAME']='TrackChangesGetAllSuggestionMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new GetAllSuggestionsMessage(object['documentId']);}}class SuggestionDescriptor extends Descriptor{static ['DESCRIPTOR_NAME']='SuggestionDescriptor';static ['DESCRIPTOR']={'fields':{'id':{'id':0x1,'type':'string'},'authorId':{'id':0x2,'type':'string'},'type':{'id':0x3,'type':'string'},'createdAt':{'id':0x4,'type':'string'},'data':{'id':0x5,'type':'string'},'hasComments':{'id':0x6,'type':'bool'},'state':{'id':0x7,'type':'string'},'attributes':{'id':0x8,'type':'string'}}};static['toJSON'](suggestion){return{...suggestion,'data':suggestion['data']?JSON['stringify'](suggestion['data']):suggestion['data'],'attributes':suggestion['attributes']?JSON['stringify'](suggestion['attributes']):suggestion['attributes'],'createdAt':suggestion['createdAt']?.['toISOString']()};}static['fromJSON'](suggestion){return{...suggestion,'data':suggestion['data']?JSON['parse'](suggestion['data']):suggestion['data'],'attributes':suggestion['attributes']?JSON['parse'](suggestion['attributes']):suggestion['attributes'],'createdAt':suggestion['createdAt']?new Date(suggestion['createdAt']):void 0x0};}}class GetAllSuggestionResponse extends Message{['_suggestions'];['_suggestionsV2'];['suggestions'];static ['DESCRIPTOR_NAME']='TrackChangesGetAllSuggestionsResponse';static ['DESCRIPTOR']={'fields':{'suggestions':{'type':'string','rule':'repeated','id':0x1},'suggestionsV2':{'type':'SuggestionDescriptor','rule':'repeated','id':0x2}}};constructor(_suggestions,_suggestionsV2){super(),this['_suggestions']=_suggestions,this['_suggestionsV2']=_suggestionsV2,this['suggestions']=_suggestionsV2?.['length']?_suggestionsV2:_suggestions;}['toJSON'](){return{'suggestions':this['_suggestions']?.['map'](suggestion=>JSON['stringify'](suggestion)),'suggestionsV2':this['_suggestionsV2']?.['map'](SuggestionDescriptor['toJSON'])};}static['fromJSON'](data){return new GetAllSuggestionResponse(data['suggestions']?.['map'](_suggestionFromString),data['suggestionsV2']?.['map'](SuggestionDescriptor['fromJSON']));}}function _suggestionFromString(suggestion){const parsedSuggestion=JSON['parse'](suggestion);return parsedSuggestion['createdAt']=parsedSuggestion['createdAt']?new Date(parsedSuggestion['createdAt']):void 0x0,parsedSuggestion;}class UpdateSuggestionMessage extends Message{['id'];['documentId'];['hasComments'];['isHasCommentsModified'];['state'];['attributes'];static ['TYPE']='104';static ['READABLE_TYPE_NAME']='updateSuggestion';static ['DESCRIPTOR_NAME']='TrackChangesUpdateSuggestionMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'hasComments':{'type':'bool','id':0x3},'isHasCommentsModified':{'type':'bool','id':0x4},'state':{'type':'string','id':0x5},'attributes':{'type':'string','id':0x6}}};constructor(_0xffd38d,documentId,hasComments,isHasCommentsModified,state,attributes=null){super(),this['id']=_0xffd38d,this['documentId']=documentId,this['hasComments']=hasComments,this['isHasCommentsModified']=isHasCommentsModified,this['state']=state,this['attributes']=attributes;}['toJSON'](){return{'id':this['id'],'documentId':this['documentId'],'hasComments':this['hasComments'],'isHasCommentsModified':this['isHasCommentsModified'],'state':this['state'],'attributes':JSON['stringify'](this['attributes'])};}static['fromJSON'](object){return new UpdateSuggestionMessage(object['id'],object['documentId'],object['hasComments'],object['isHasCommentsModified'],object['state'],object['attributes']?JSON['parse'](object['attributes']):null);}}let ConnectMessage$1=class ConnectMessage extends Message{['documentId'];static ['TYPE']='105';static ['READABLE_TYPE_NAME']='connectToSuggestions';static ['DESCRIPTOR_NAME']='TrackChangesConnectMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new ConnectMessage(object['documentId']);}},ConnectResponse$1=class ConnectResponse extends Message{['channel'];['_suggestions'];['_suggestionsV2'];['suggestions'];static ['DESCRIPTOR_NAME']='TrackChangesConnectResponse';static ['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'suggestions':{'type':'string','rule':'repeated','id':0x2},'suggestionsV2':{'type':'SuggestionDescriptor','rule':'repeated','id':0x3}}};constructor(_0x1f90ce,_suggestions,_suggestionsV2){super(),this['channel']=_0x1f90ce,this['_suggestions']=_suggestions,this['_suggestionsV2']=_suggestionsV2,this['suggestions']=_suggestionsV2?.['length']?_suggestionsV2:_suggestions;}['toJSON'](){return{'channel':this['channel'],'suggestions':this['_suggestions']?.['map'](suggestion=>JSON['stringify'](suggestion)),'suggestionsV2':this['_suggestionsV2']?.['map'](SuggestionDescriptor['toJSON'])};}static['fromJSON'](object){return new ConnectResponse(object['channel'],object['suggestions']?.['map'](suggestion=>JSON['parse'](suggestion)),object['suggestionsV2']?.['map'](SuggestionDescriptor['fromJSON']));}};class BatchUpdateSuggestionsStateMessage extends Message{['ids'];['documentId'];['state'];static ['TYPE']='106';static ['READABLE_TYPE_NAME']='batchUpdateSuggestionsState';static ['DESCRIPTOR_NAME']='TrackChangesBatchUpdateSuggestionsStateMessage';static ['DESCRIPTOR']={'fields':{'ids':{'type':'string','rule':'repeated','id':0x1},'documentId':{'type':'string','id':0x2},'state':{'type':'string','id':0x3}}};constructor(_0x1cb68d,documentId,state){super(),this['ids']=_0x1cb68d,this['documentId']=documentId,this['state']=state;}['toJSON'](){return{'ids':this['ids'],'documentId':this['documentId'],'state':this['state']};}static['fromJSON'](object){return new BatchUpdateSuggestionsStateMessage(object['ids'],object['documentId'],object['state']);}}class TrackChangesService extends EmitterMixin(){['_documentId'];['_isConnected'];['_wsGateway'];['_channel'];static ['_SERVICE']=0xa;constructor(_documentId){super(),this['_documentId']=_documentId,this['_isConnected']=!0x1;}get['isConnected'](){return this['_isConnected'];}async['connect'](wsGateway){if(this['_isConnected'])return;if(wsGateway['state']!==WEB_SOCKET_GATEWAY_STATES['CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);const connectMessage=new ConnectMessage$1(this['_documentId']);this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x201467=await wsGateway['_sendRequest'](0xa,ConnectMessage$1['TYPE'],MessagesCompressor['encode'](connectMessage)),connectResponse=MessagesCompressor['decode'](_0x201467,ConnectResponse$1);return this['listenTo'](wsGateway,'change:state',(_0x57e8c6,_0x173bd6,_0x4bf0e)=>this['_onWsGatewayStateChange'](_0x4bf0e),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['_connectToChannel'](wsGateway,connectResponse['channel']),this['_isConnected']=!0x0,this['fire']('connected'),connectResponse['suggestions'];}['disconnect'](){this['_isConnected']&&(this['_isConnected']=!0x1,this['_wsGateway']&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['fire']('disconnected'),this['stopListening']());}async['add'](_0x1358ac,type,data,originalSuggestionId=null,attributes){const _0x37f688=new AddSuggestionMessage(_0x1358ac,this['_documentId'],type,data,originalSuggestionId,attributes),_0x140db6=await this['_sendRequest'](AddSuggestionMessage['TYPE'],_0x37f688);return MessagesCompressor['decode'](_0x140db6,AddSuggestionResponse);}async['get'](_0x163067,attempt=0x1){const _0x2867da=new GetSuggestionMessage(_0x163067,this['_documentId']);try{const _0x1bafba=await this['_sendRequest'](GetSuggestionMessage['TYPE'],_0x2867da);return MessagesCompressor['decode'](_0x1bafba,GetSuggestionResponse);}catch(_0x14afec){if('CKEditorCloudServicesServerError'===_0x14afec['name']&&'404'===_0x14afec['code']&&attempt<0x5)return await(time=0x64*attempt,new Promise(_0x1327f7=>{setTimeout(_0x1327f7,time);})),this['get'](_0x163067,attempt+0x1);if('CKEditorCloudServicesServerError'===_0x14afec['name'])throw _0x14afec;throw CKEditorCloudServicesServerError['fromPublicError'](_0x14afec);}var time;}async['getAll'](){const _0x3106d1=new GetAllSuggestionsMessage(this['_documentId']),_0x465eae=await this['_sendRequest'](GetAllSuggestionsMessage['TYPE'],_0x3106d1),{suggestions:suggestions}=MessagesCompressor['decode'](_0x465eae,GetAllSuggestionResponse);return suggestions;}async['update'](_0x2f5aa0,_0x5c187a={}){const {hasComments:hasComments,state:state,attributes:attributes}=_0x5c187a,isHasCommentsUpdated=void 0x0!==hasComments,_0x42b5d3=new UpdateSuggestionMessage(_0x2f5aa0,this['_documentId'],hasComments,isHasCommentsUpdated,state,attributes);await this['_sendRequest'](UpdateSuggestionMessage['TYPE'],_0x42b5d3);}async['batchUpdateState'](_0x4549aa){const _0x42df53=new BatchUpdateSuggestionsStateMessage(_0x4549aa['ids'],this['_documentId'],_0x4549aa['state']);await this['_sendRequest'](BatchUpdateSuggestionsStateMessage['TYPE'],_0x42df53);}['_connectToChannel'](wsGateway,_0x58dfc1){this['_channel']=wsGateway['_getChannel'](TrackChangesService['_SERVICE'],_0x58dfc1),this['_channel']&&this['listenTo'](this['_channel'],this['_channel']['getEventName'](UpdateSuggestionMessage['TYPE']),(event,data)=>{const updateSuggestionMessage=MessagesCompressor['decode'](data,UpdateSuggestionMessage);this['fire']('suggestionUpdated',updateSuggestionMessage);});}['_onWsGatewayStateChange'](_0x36010d){_0x36010d===WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&this['disconnect']();}['_sendRequest'](method,_0x51c66a){if(!this['_wsGateway']||!this['_isConnected'])throw new ServiceNotConnectedError('Track\x20Changes',this);return this['_wsGateway']['_sendRequest'](0xa,method,MessagesCompressor['encode'](_0x51c66a));}}class SessionsConnectResponse extends Message{['channel'];['sockets'];static ['DESCRIPTOR_NAME']='SessionsConnectResponse';static ['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'sockets':{'rule':'repeated','type':'SessionsSocketDescriptor','id':0x2}}};constructor(_0xdfc9c6,sockets=[]){super(),this['channel']=_0xdfc9c6,this['sockets']=sockets;}['toJSON'](){return{'channel':this['channel'],'sockets':this['sockets']['map'](socket=>({'user':socket['userId'],'session':socket['id'],'role':socket['role'],'permissions':socket['permissions']}))};}static['fromJSON'](data){return new SessionsConnectResponse(data['channel'],data['sockets']['map'](socket=>({'id':socket['session'],'userId':socket['user'],'role':socket['role'],'permissions':socket['permissions']})));}}class SessionsConnectMessage extends Message{['id'];['sessionType'];static ['TYPE']='31';static ['READABLE_TYPE_NAME']='getConnectedSockets';static ['DESCRIPTOR_NAME']='SessionsConnectMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'sessionType':{'type':'uint32','id':0x2}}};constructor(_0x3674ec,_0x3472fd){super(),this['id']=_0x3674ec,this['sessionType']=_0x3472fd;}['toJSON'](){return{'id':this['id'],'sessionType':this['sessionType']};}static['fromJSON'](data){return new SessionsConnectMessage(data['id'],data['sessionType']);}}class SocketConnectMessage extends Message{['id'];['userId'];['role'];['permissions'];static ['TYPE']='32';static ['READABLE_TYPE_NAME']='connectSocket';static ['DESCRIPTOR_NAME']='SocketConnectMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'userId':{'type':'string','id':0x2},'role':{'type':'string','id':0x3},'permissions':{'rule':'repeated','type':'string','id':0x4}}};constructor(_0x486e5b,_0x402eff,_0x10a2df,_0x4afb93){super(),this['id']=_0x486e5b,this['userId']=_0x402eff,this['role']=_0x10a2df,this['permissions']=_0x4afb93;}['toJSON'](){return{'id':this['id'],'userId':this['userId']??void 0x0,'role':this['role']??void 0x0,'permissions':this['permissions']??void 0x0};}static['fromJSON'](data){return new SocketConnectMessage(data['id'],data['userId'],data['role'],data['permissions']);}}class SocketDisconnectMessage extends Message{['id'];static ['TYPE']='33';static ['READABLE_TYPE_NAME']='disconnectSocket';static ['DESCRIPTOR_NAME']='SocketDisconnectMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1}}};constructor(_0x4e5721){super(),this['id']=_0x4e5721;}['toJSON'](){return{'id':this['id']};}static['fromJSON'](data){return new SocketDisconnectMessage(data['id']);}}class SessionCollection extends Collection{['_id'];['_sessionType'];['_handlers'];['_channel'];['_wsGateway'];['_connected'];['_eventsQueue'];['_isRunning'];constructor(_0x268a0a,_0x1aa45c){super({'idProperty':'id'}),this['_id']=_0x268a0a,this['_sessionType']=_0x1aa45c,this['_handlers']=new Map(),this['_eventsQueue']=[],this['_isRunning']=!0x1;}async['connect'](wsGateway){this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x221aff=new SessionsConnectMessage(this['_id'],this['_sessionType']);let sessionsConnectResponse;try{const _0x648d5e=await this['_wsGateway']['_sendRequest'](0x3,SessionsConnectMessage['TYPE'],MessagesCompressor['encode'](_0x221aff));sessionsConnectResponse=MessagesCompressor['decode'](_0x648d5e,SessionsConnectResponse);}catch(_0x388945){sessionsConnectResponse=new SessionsConnectResponse(this['_id'],[]);}this['_connectToChannel'](this['_wsGateway'],sessionsConnectResponse['channel'],this['_sessionType']);const _0xd2fd32=await async function(wsGateway,_0x5355f6){const _0x98a06f=_0x5355f6['map'](socket=>socket['userId']),_0x3f09ca=_0x98a06f['length']?await User['getMany'](wsGateway,_0x98a06f):[];return _0x5355f6['map'](socket=>{const item={'id':socket['id'],'role':socket['role'],'permissions':socket['permissions']};return item['user']=socket['userId']&&_0x3f09ca['find'](_0x52d911=>_0x52d911['id']===socket['userId'])||new User(),item;});}(this['_wsGateway'],sessionsConnectResponse['sockets']);for(const _0x1d6196 of _0xd2fd32)super['add'](_0x1d6196);this['_connected']=!0x0,this['fire']('connected'),this['listenTo'](this['_wsGateway'],'change:state',(_0x19889c,_0x25b911,_0x90405c)=>this['_onWsGatewayStateChange'](_0x90405c),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),await this['_runQueue']();}['disconnect'](_0x46270f=!0x0){if(this['_connected']){for(this['_connected']=!0x1,this['_eventsQueue']=[];this['length'];)super['remove'](0x0);this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['_wsGateway']&&_0x46270f&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['fire']('disconnected'),_0x46270f&&this['stopListening']();}}['add'](_0x22fde3,_0xd839b){throw new TypeError('The\x20collection\x20is\x20read-only.');}['remove'](_0x655997){throw new TypeError('The\x20collection\x20is\x20read-only.');}['_connectToChannel'](wsGateway,_0x1b6471,_0x4b7793){this['_channel']=wsGateway['_getChannel'](_0x4b7793,_0x1b6471),this['_channel']&&(this['_addHandler'](this['_channel'],SocketConnectMessage['TYPE'],async data=>{const socketConnectMessage=MessagesCompressor['decode'](data,SocketConnectMessage);if(-0x1===this['getIndex'](socketConnectMessage['id'])){const socket={'id':socketConnectMessage['id'],'role':socketConnectMessage['role'],'permissions':socketConnectMessage['permissions']};socketConnectMessage['userId']&&(socket['user']=await User['get'](wsGateway,socketConnectMessage['userId'])),super['add'](socket);}}),this['_addHandler'](this['_channel'],SocketDisconnectMessage['TYPE'],data=>{const socketDisconnectMessage=MessagesCompressor['decode'](data,SocketDisconnectMessage);-0x1!==this['getIndex'](socketDisconnectMessage['id'])&&super['remove'](socketDisconnectMessage['id']);}));}async['_onWsGatewayStateChange'](state){state===WebSocketGateway['STATE_DISCONNECTED']&&this['disconnect'](!0x1),state===WebSocketGateway['STATE_CONNECTED']&&await this['connect'](this['_wsGateway']);}async['_runQueue'](){if(this['_isRunning']||!this['_connected'])return;let event;for(this['_isRunning']=!0x0;event=this['_eventsQueue']['shift']();){const _0x262464=this['_handlers']['get'](event['eventName']);_0x262464&&await _0x262464(event['data']);}this['_isRunning']=!0x1;}['_addHandler'](_0x5650e5,eventType,_0x28186b){const eventName=_0x5650e5['getEventName'](eventType,!0x0);this['listenTo'](_0x5650e5,eventName,async(event,data)=>{const _0x1ccfe2=event['name'];this['_eventsQueue']['push']({'eventName':_0x1ccfe2,'data':data}),await this['_runQueue']();}),this['_handlers']['set'](eventName,_0x28186b);}}class Sessions{static async['getConnectedSessions'](wsGateway,_0x560c5c,_0x3cf865){const sessionCollection=new SessionCollection(_0x560c5c,_0x3cf865);return await sessionCollection['connect'](wsGateway),sessionCollection;}}class CollaborativeEditingConnectMessage extends Message{['id'];['buffers'];['types'];['bundleVersion'];['lastOperationId'];static ['TYPE']='11';static ['READABLE_TYPE_NAME']='connectToDocument';static ['DESCRIPTOR_NAME']='CollaborativeEditingConnectMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'bundleVersion':{'type':'string','id':0x2},'buffers':{'rule':'repeated','type':'bytes','id':0x3},'types':{'rule':'repeated','type':'uint32','id':0x4},'lastOperationId':{'type':'string','id':0x5}}};constructor(_0x924022,_0x44d1e7,types,_0x4cc358,lastOperationId=''){super(),this['id']=_0x924022,this['buffers']=_0x44d1e7,this['types']=types,this['bundleVersion']=_0x4cc358,this['lastOperationId']=lastOperationId;}['toJSON'](){return{'id':this['id'],'buffers':this['buffers'],'types':this['types'],'bundleVersion':this['bundleVersion'],'lastOperationId':this['lastOperationId']};}static['fromJSON'](data){return new CollaborativeEditingConnectMessage(data['id'],data['buffers'],data['types'],data['bundleVersion'],data['lastOperationId']);}}class OperationMetadataHelpers{static['prepareMetadataForOperations'](types,metadata){if(!(types&&types['length']&&metadata&&metadata['length']))return[];const result=[];let _0x551a0=0x0;for(const type of types)if(0x0!==type){if(!metadata[_0x551a0])throw new Error('Missing\x20metadata\x20for\x20a\x20operation');result['push'](metadata[_0x551a0]),_0x551a0++;}else result['push'](result[result['length']-0x1]);return result;}static['removeUnnecessaryMetadata'](types,metadata){if(!(types&&types['length']&&metadata&&metadata['length']))return[];const result=[];for(let _0x4e68d9=0x0;_0x4e68d9<types['length'];_0x4e68d9++)if(0x0!==types[_0x4e68d9]){if(!metadata[_0x4e68d9])throw new Error('Missing\x20metadata\x20for\x20a\x20operation');result['push'](metadata[_0x4e68d9]);}return result;}}class OperationMetadataDescriptor extends Descriptor{static ['DESCRIPTOR_NAME']='OperationMetadataDescriptor';static ['DESCRIPTOR']={'fields':{'userId':{'type':'string','id':0x1},'type':{'type':'string','id':0x2},'createdAt':{'type':'string','id':0x3}}};static['toJSON']({createdAt:createdAt,...metadata}){const parsedMetadata={...metadata};return createdAt?.['toISOString']&&(parsedMetadata['createdAt']=createdAt['toISOString']()),parsedMetadata;}static['fromJSON']({createdAt:createdAt,...metadata}){const parsedMetadata={...metadata};return createdAt&&(parsedMetadata['createdAt']=new Date(createdAt)),parsedMetadata;}}class CollaborativeEditingUpdateMessage extends Message{['id'];['buffers'];['types'];['baseVersion'];['metadata'];['lastOperationId'];static ['TYPE']='13';static ['READABLE_TYPE_NAME']='updateDocument';static ['DESCRIPTOR_NAME']='CollaborativeEditingUpdateMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'baseVersion':{'type':'uint32','id':0x2},'buffers':{'rule':'repeated','type':'bytes','id':0x3},'types':{'rule':'repeated','type':'uint32','id':0x4},'metadata':{'rule':'repeated','type':'OperationMetadataDescriptor','id':0x6},'lastOperationId':{'type':'string','id':0x7}}};constructor(_0x5d165c,_0x4bbac9,types,_0x17e836,metadata=[],lastOperationId=''){super(),this['id']=_0x5d165c,this['buffers']=_0x4bbac9,this['types']=types,this['baseVersion']=_0x17e836,this['metadata']=metadata,this['lastOperationId']=lastOperationId;}get['data'](){return{'buffers':this['buffers'],'types':this['types'],'baseVersion':this['baseVersion'],'lastOperationId':this['lastOperationId']};}['toJSON'](){return{'id':this['id'],'buffers':this['buffers'],'types':this['types'],'baseVersion':this['baseVersion'],'metadata':OperationMetadataHelpers['removeUnnecessaryMetadata'](this['types'],this['metadata'])['map'](OperationMetadataDescriptor['toJSON']),'lastOperationId':this['lastOperationId']};}static['fromJSON'](data){return new CollaborativeEditingUpdateMessage(data['id'],data['buffers'],data['types'],data['baseVersion'],OperationMetadataHelpers['prepareMetadataForOperations'](data['types'],data['metadata'])['map'](OperationMetadataDescriptor['fromJSON']),data['lastOperationId']);}}class CollaborativeEditingReconnectMessage extends Message{['id'];['lastKnowVersion'];['bundleVersion'];static ['TYPE']='12';static ['READABLE_TYPE_NAME']='reconnectToDocument';static ['DESCRIPTOR_NAME']='CollaborativeEditingReconnectMessage';static ['DESCRIPTOR']={'fields':{'id':{'type':'string','id':0x1},'bundleVersion':{'type':'string','id':0x2},'lastKnowVersion':{'type':'uint32','id':0x3}}};constructor(_0x4719f0,lastKnowVersion,_0x3447c9){super(),this['id']=_0x4719f0,this['lastKnowVersion']=lastKnowVersion,this['bundleVersion']=_0x3447c9;}['toJSON'](){return{'id':this['id'],'bundleVersion':this['bundleVersion'],'lastKnowVersion':this['lastKnowVersion']};}static['fromJSON'](data){return new CollaborativeEditingReconnectMessage(data['id'],data['lastKnowVersion'],data['bundleVersion']);}}class CollaborativeEditingResponse extends Message{['version'];['buffers'];['types'];['metadata'];['lastOperationId'];['lastOperationAcceptedAt'];static ['DESCRIPTOR_NAME']='CollaborativeEditingResponse';static ['DESCRIPTOR']={'fields':{'version':{'type':'uint32','id':0x1},'buffers':{'rule':'repeated','type':'bytes','id':0x2},'types':{'rule':'repeated','type':'uint32','id':0x3},'metadata':{'rule':'repeated','type':'OperationMetadataDescriptor','id':0x5},'lastOperationId':{'type':'string','id':0x6},'lastOperationAcceptedAt':{'type':'string','id':0x7}}};constructor(_0x18ce41,_0x3e926f=[],types=[],metadata=[],lastOperationId='',lastOperationAcceptedAt=null){super(),this['version']=_0x18ce41,this['buffers']=_0x3e926f,this['types']=types,this['metadata']=metadata,this['lastOperationId']=lastOperationId,this['lastOperationAcceptedAt']=lastOperationAcceptedAt;}get['data'](){return{'buffers':this['buffers'],'types':this['types'],'baseVersion':this['version']-this['types']['length'],'lastOperationId':this['lastOperationId'],'lastOperationAcceptedAt':this['lastOperationAcceptedAt']};}get['wereChangesApplied'](){return!this['types']?.['length'];}['toJSON'](){return{'version':this['version'],'buffers':this['buffers'],'types':this['types'],'metadata':OperationMetadataHelpers['removeUnnecessaryMetadata'](this['types'],this['metadata'])['map'](OperationMetadataDescriptor['toJSON']),'lastOperationId':this['lastOperationId'],'lastOperationAcceptedAt':this['lastOperationAcceptedAt']instanceof Date?this['lastOperationAcceptedAt']['toISOString']():this['lastOperationAcceptedAt']};}static['fromJSON'](data){return new CollaborativeEditingResponse(data['version'],data['buffers'],data['types'],OperationMetadataHelpers['prepareMetadataForOperations'](data['types'],data['metadata'])['map'](OperationMetadataDescriptor['fromJSON']),data['lastOperationId'],data['lastOperationAcceptedAt']?new Date(data['lastOperationAcceptedAt']):null);}static['create'](data){return new CollaborativeEditingResponse(data['version'],data['buffers'],data['types'],data['metadata'],data['lastOperationId'],data['lastOperationAcceptedAt']?new Date(data['lastOperationAcceptedAt']):null);}}class CollaborativeEditingConnectResponse extends Message{['channel'];['version'];['buffers'];['types'];['offset'];['metadata'];['initData'];['sessionId'];['lastOperationId'];['sessionCreatedAt'];static ['DESCRIPTOR_NAME']='CollaborativeEditingConnectResponse';static ['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'offset':{'type':'uint32','id':0x2},'version':{'type':'uint32','id':0x3},'buffers':{'rule':'repeated','type':'bytes','id':0x4},'types':{'rule':'repeated','type':'uint32','id':0x5},'metadata':{'rule':'repeated','type':OperationMetadataDescriptor['DESCRIPTOR_NAME'],'id':0x7},'initData':{'type':'string','id':0x8},'isInitialized':{'type':'bool','id':0x9},'sessionId':{'type':'string','id':0xa},'lastOperationId':{'type':'string','id':0xb},'sessionCreatedAt':{'type':'string','id':0xc}}};constructor(_0x3407cd,_0x17dde0,_0xaa6b84=[],types=[],offset=0x0,metadata=[],initData=null,_0x4f271d='',lastOperationId='',sessionCreatedAt=null){super(),this['channel']=_0x3407cd,this['version']=_0x17dde0,this['buffers']=_0xaa6b84,this['types']=types,this['offset']=offset,this['metadata']=metadata,this['initData']=initData,this['sessionId']=_0x4f271d,this['lastOperationId']=lastOperationId,this['sessionCreatedAt']=sessionCreatedAt;}get['data'](){return{'buffers':this['buffers'],'types':this['types'],'baseVersion':this['version']-this['types']['length'],'lastOperationId':this['lastOperationId'],'sessionCreatedAt':this['sessionCreatedAt']};}get['wereChangesApplied'](){return!this['types']?.['length']&&null===this['initData'];}['toJSON'](){return{'channel':this['channel'],'version':this['version'],'sessionId':this['sessionId'],'buffers':this['buffers'],'types':this['types'],'offset':this['offset'],'metadata':OperationMetadataHelpers['removeUnnecessaryMetadata'](this['types'],this['metadata'])['map'](OperationMetadataDescriptor['toJSON']),'initData':this['initData']??'','isInitialized':'string'==typeof this['initData'],'lastOperationId':this['lastOperationId'],'sessionCreatedAt':this['sessionCreatedAt']?this['sessionCreatedAt']['toISOString']():null};}static['create'](_0x13c834){return new CollaborativeEditingConnectResponse(_0x13c834['channel'],_0x13c834['version'],_0x13c834['buffers'],_0x13c834['types'],_0x13c834['offset'],_0x13c834['metadata'],_0x13c834['initData'],_0x13c834['sessionId'],_0x13c834['lastOperationId'],_0x13c834['sessionCreatedAt']);}static['fromJSON'](data){let initData=null;return!0x0===data['isInitialized']?initData=data['initData']??'':'boolean'!=typeof data['isInitialized']&&data['initData']&&(initData=data['initData']),CollaborativeEditingConnectResponse['create']({'channel':data['channel'],'version':data['version'],'buffers':data['buffers'],'types':data['types'],'offset':data['offset'],'metadata':OperationMetadataHelpers['prepareMetadataForOperations'](data['types'],data['metadata'])['map'](OperationMetadataDescriptor['fromJSON']),'initData':initData,'sessionId':data['sessionId'],'lastOperationId':data['lastOperationId'],'sessionCreatedAt':data['sessionCreatedAt']?new Date(data['sessionCreatedAt']):null});}}class GetDocumentDetailsResponse extends Message{['lastDocumentSession'];['currentDocumentSession'];static ['DESCRIPTOR_NAME']='GetDocumentDetailsResponse';static ['DESCRIPTOR']={'fields':{'lastDocumentSessionId':{'type':'string','id':0x1},'lastDocumentSessionOperationId':{'type':'string','id':0x2},'currentDocumentSessionId':{'type':'string','id':0x3},'currentDocumentSessionVersion':{'type':'uint32','id':0x4},'currentDocumentSessionOperationId':{'type':'string','id':0x5}}};constructor(lastDocumentSession,currentDocumentSession){super(),this['lastDocumentSession']=lastDocumentSession,this['currentDocumentSession']=currentDocumentSession;}get['data'](){return{'lastDocumentSessionId':this['lastDocumentSession']?.['id'],'lastDocumentSessionOperationId':this['lastDocumentSession']?.['lastOperationId'],'currentDocumentSessionId':this['currentDocumentSession']?.['id'],'currentDocumentSessionVersion':this['currentDocumentSession']?.['version'],'currentDocumentSessionOperationId':this['currentDocumentSession']?.['lastOperationId']};}['toJSON'](){return{'lastDocumentSessionId':this['lastDocumentSession']?.['id'],'lastDocumentSessionOperationId':this['lastDocumentSession']?.['lastOperationId'],'currentDocumentSessionId':this['currentDocumentSession']?.['id'],'currentDocumentSessionVersion':this['currentDocumentSession']?.['version'],'currentDocumentSessionOperationId':this['currentDocumentSession']?.['lastOperationId']};}static['fromJSON'](data){const lastDocumentSession=data['lastDocumentSessionId']?{'id':data['lastDocumentSessionId'],'lastOperationId':data['lastDocumentSessionOperationId']}:void 0x0,currentDocumentSession=data['currentDocumentSessionId']?{'lastOperationId':data['currentDocumentSessionOperationId'],'version':data['currentDocumentSessionVersion'],'id':data['currentDocumentSessionId']}:void 0x0;return new GetDocumentDetailsResponse(lastDocumentSession,currentDocumentSession);}}class GetDocumentDetailsMessage extends Message{['documentId'];static ['TYPE']='14';static ['READABLE_TYPE_NAME']='getDocumentDetails';static ['DESCRIPTOR_NAME']='GetDocumentDetailsMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'environmentId':{'type':'string','id':0x2}}};constructor(documentId){super(),this['documentId']=documentId;}get['data'](){return{'documentId':this['documentId']};}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](data){return new GetDocumentDetailsMessage(data['documentId']);}}class CollaborativeEditingService extends EmitterMixin(){static ['_SERVICE']=0x1;['_bundleVersion'];['_id'];['_isConnected'];['_wsGateway'];['_channel'];['_connectedSessions'];constructor(_0x3a0a7d,_0x3858e7){if(super(),!_0x3a0a7d)throw new TypeError('Param\x20\x22bundleVersion\x22\x20must\x20be\x20provided.');this['_id']=_0x3858e7??v4(),this['_isConnected']=!0x1,this['_bundleVersion']=_0x3a0a7d;}['getId'](){return this['_id'];}['isConnected'](){return this['_isConnected'];}['connect'](wsGateway,data={'buffers':[],'types':[]},lastOperationId){const _0x444ed2=new CollaborativeEditingConnectMessage(this['getId'](),data['buffers'],data['types'],this['_bundleVersion'],lastOperationId);return this['_connect'](wsGateway,_0x444ed2);}['reconnect'](wsGateway,lastKnowVersion){if(this['isConnected']())throw new CKEditorCloudServicesError('Cannot\x20reconnect\x20to\x20already\x20connected\x20service.',wsGateway);return this['_connect'](wsGateway,new CollaborativeEditingReconnectMessage(this['getId'](),lastKnowVersion,this['_bundleVersion']));}['disconnect'](){this['_isConnected']&&(this['_isConnected']=!0x1,this['_wsGateway']&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['_connectedSessions']&&(this['_connectedSessions']['disconnect'](),this['_connectedSessions']=void 0x0),this['fire']('disconnected'),this['stopListening']());}async['getDocumentDetails'](){const _0x40a02a=new GetDocumentDetailsMessage(this['getId']());if(!this['_wsGateway'])throw new ServiceNotConnectedError('Collaborative\x20Editing',this);const _0x2b71f9=await this['_wsGateway']['_sendRequest'](0x1,GetDocumentDetailsMessage['TYPE'],MessagesCompressor['encode'](_0x40a02a));return MessagesCompressor['decode'](_0x2b71f9,GetDocumentDetailsResponse);}async['sendOperations'](data,_0x4af245,lastOperationId){if(!data||!data['types']||!data['types']['length'])throw new CKEditorCloudServicesError('Cannot\x20send\x20empty\x20update.',this['_wsGateway']);const _0x3da414='number'==typeof _0x4af245?_0x4af245:parseInt(_0x4af245);if(!Number['isInteger'](_0x3da414)||_0x3da414<0x0)throw new CKEditorCloudServicesError('Base\x20version\x20not\x20provided.',this['_wsGateway']);const _0x5482da=new CollaborativeEditingUpdateMessage(this['getId'](),data['buffers'],data['types'],_0x3da414,[],lastOperationId);if(!this['_wsGateway']||!this['_isConnected'])throw new ServiceNotConnectedError('Collaborative\x20Editing',this);const _0x51e546=await this['_wsGateway']['_sendRequest'](0x1,CollaborativeEditingUpdateMessage['TYPE'],MessagesCompressor['encode'](_0x5482da));return MessagesCompressor['decode'](_0x51e546,CollaborativeEditingResponse);}async['getConnectedSessions'](){if(!this['_isConnected'])throw new ServiceNotConnectedError('Collaborative\x20Editing',this);return this['_connectedSessions']||(this['_connectedSessions']=await Sessions['getConnectedSessions'](this['_wsGateway'],this['_id'],0x1)),this['_connectedSessions'];}static['getConnectedSessions'](wsGateway,_0x2f37c4){return Sessions['getConnectedSessions'](wsGateway,_0x2f37c4,0x1);}async['_connect'](wsGateway,_0x5dc8c0){if(this['isConnected']())return;if(wsGateway['state']!==WebSocketGateway['STATE_CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x53d560=await wsGateway['_sendRequest'](0x1,_0x5dc8c0['constructor']['TYPE'],MessagesCompressor['encode'](_0x5dc8c0)),collaborativeEditingConnectResponse=MessagesCompressor['decode'](_0x53d560,CollaborativeEditingConnectResponse);return this['listenTo'](wsGateway,'change:state',(_0x4f0c80,_0x516f00,_0xc66214)=>this['_onWsGatewayStateChange'](_0xc66214),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['_connectToChannel'](wsGateway,collaborativeEditingConnectResponse['channel']),this['_isConnected']=!0x0,this['fire']('connected'),collaborativeEditingConnectResponse;}['_connectToChannel'](wsGateway,_0x37ef27){this['_channel']=wsGateway['_getChannel'](0x1,_0x37ef27),this['listenTo'](this['_channel'],this['_channel']['getEventName'](CollaborativeEditingUpdateMessage['TYPE']),(event,data)=>{const updateMessage=MessagesCompressor['decode'](data,CollaborativeEditingUpdateMessage);this['fire']('operationsReceived',updateMessage['baseVersion'],updateMessage['data'],updateMessage['metadata']);});}['_onWsGatewayStateChange'](_0x1b8cea){_0x1b8cea===WebSocketGateway['STATE_DISCONNECTED']&&this['disconnect']();}}class CommentDescriptor extends Descriptor{static ['DESCRIPTOR_NAME']='CommentDescriptor';static ['DESCRIPTOR']={'fields':{'commentId':{'id':0x1,'type':'string'},'commentThreadId':{'id':0x2,'type':'string'},'userId':{'id':0x3,'type':'string'},'content':{'id':0x4,'type':'string'},'documentId':{'id':0x5,'type':'string'},'createdAt':{'id':0x6,'type':'string'},'attributes':{'id':0x7,'type':'string'}}};static['toJSON'](comment){return{...comment,'createdAt':comment['createdAt']?.['toISOString'](),'attributes':comment['attributes']?JSON['stringify'](comment['attributes']):null};}static['fromJSON'](comment){return{...comment,'createdAt':new Date(comment['createdAt']),'attributes':comment['attributes']?JSON['parse'](comment['attributes']):null};}}class CommentsThreadDescriptor extends Descriptor{static ['DESCRIPTOR_NAME']='CommentsThreadDescriptor';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'comments':{'type':'CommentDescriptor','rule':'repeated','id':0x2},'resolvedAt':{'type':'string','id':0x3},'resolvedBy':{'type':'string','id':0x4},'context':{'type':'string','id':0x5},'createdAt':{'type':'string','id':0x6},'deletedAt':{'type':'string','id':0x7},'attributes':{'type':'string','id':0x8},'unlinkedAt':{'type':'string','id':0x9}}};static['toJSON'](thread){return{...thread,'createdAt':thread['createdAt']?.['toISOString'](),'deletedAt':thread['deletedAt']?.['toISOString'](),'resolvedAt':thread['resolvedAt']?.['toISOString'](),'attributes':thread['attributes']?JSON['stringify'](thread['attributes']):null,'context':thread['context']?JSON['stringify'](thread['context']):thread['context'],'comments':thread['comments']?.['map'](CommentDescriptor['toJSON']),'unlinkedAt':thread['unlinkedAt']?.['toISOString']()};}static['fromJSON'](thread){return{...thread,'createdAt':thread['createdAt']?new Date(thread['createdAt']):void 0x0,'deletedAt':thread['deletedAt']?new Date(thread['deletedAt']):void 0x0,'resolvedAt':thread['resolvedAt']?new Date(thread['resolvedAt']):void 0x0,'attributes':thread['attributes']?JSON['parse'](thread['attributes']):null,'context':thread['context']?JSON['parse'](thread['context']):void 0x0,'comments':thread['comments']?.['map'](CommentDescriptor['fromJSON']),'unlinkedAt':thread['unlinkedAt']?new Date(thread['unlinkedAt']):void 0x0};}}class AddCommentMessage extends Message{['documentId'];['commentThreadId'];['content'];['commentId'];['userId'];['attributes'];['commentThread'];['createdAt'];static ['TYPE']='91';static ['READABLE_TYPE_NAME']='addComment';static ['DESCRIPTOR_NAME']='CommentsV2AddCommentMessage';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'content':{'type':'string','id':0x2},'documentId':{'type':'string','id':0x3},'commentId':{'type':'string','id':0x4},'createdAt':{'type':'string','id':0x5},'userId':{'type':'string','id':0x6},'attributes':{'type':'string','id':0x7},'commentThread':{'type':'CommentsThreadDescriptor','id':0x8}}};constructor(documentId,commentThreadId,content,commentId='',createdAt,_0x4869fe='',attributes=null,commentThread){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId,this['content']=content,this['commentId']=commentId,this['userId']=_0x4869fe,this['attributes']=attributes,this['commentThread']=commentThread,this['createdAt']=createdAt?new Date(createdAt):'';}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'content':this['content'],'documentId':this['documentId'],'commentId':this['commentId'],'createdAt':this['createdAt']instanceof Date?this['createdAt']['toISOString']():this['createdAt'],'userId':this['userId'],'attributes':JSON['stringify'](this['attributes']),'commentThread':this['commentThread']?CommentsThreadDescriptor['toJSON'](this['commentThread']):void 0x0};}static['fromJSON'](object){return new AddCommentMessage(object['documentId'],object['commentThreadId'],object['content'],object['commentId']?object['commentId']:void 0x0,object['createdAt']?new Date(object['createdAt']):void 0x0,object['userId']?object['userId']:void 0x0,object['attributes']?JSON['parse'](object['attributes']):{},object['commentThread']?CommentsThreadDescriptor['fromJSON'](object['commentThread']):void 0x0);}}class AddCommentResponse extends Message{['commentThreadId'];['commentId'];['createdAt'];static ['DESCRIPTOR_NAME']='CommentsV2AddCommentResponse';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'commentId':{'type':'string','id':0x2},'createdAt':{'type':'string','id':0x3}}};constructor(commentThreadId,commentId,createdAt){super(),this['commentThreadId']=commentThreadId,this['commentId']=commentId,this['createdAt']=new Date(createdAt);}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'commentId':this['commentId'],'createdAt':this['createdAt']['toISOString']()};}static['fromJSON'](data){return new AddCommentResponse(data['commentThreadId'],data['commentId'],data['createdAt']);}}class ConnectMessage extends Message{['documentId'];static ['TYPE']='92';static ['READABLE_TYPE_NAME']='connectToComment';static ['DESCRIPTOR_NAME']='CommentsV2ConnectMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new ConnectMessage(object['documentId']);}}class ConnectResponse extends Message{['channel'];['_threads'];['_threadsV2'];['threads'];static ['DESCRIPTOR_NAME']='CommentsV2ConnectResponse';static ['DESCRIPTOR']={'fields':{'channel':{'type':'string','id':0x1},'threads':{'type':'string','rule':'repeated','id':0x2},'threadsV2':{'type':'CommentsThreadDescriptor','rule':'repeated','id':0x3}}};constructor(_0x531c0c,_threads,_threadsV2){super(),this['channel']=_0x531c0c,this['_threads']=_threads,this['_threadsV2']=_threadsV2,this['threads']=_threadsV2?.['length']?_threadsV2:_threads;}['toJSON'](){return{'channel':this['channel'],'threads':this['_threads']?.['map'](thread=>JSON['stringify'](thread)),'threadsV2':this['_threadsV2']?.['map'](CommentsThreadDescriptor['toJSON'])};}static['fromJSON'](object){return new ConnectResponse(object['channel'],object['threads']?.['map'](thread=>JSON['parse'](thread)),object['threadsV2']?.['map'](CommentsThreadDescriptor['fromJSON']));}}class RemoveCommentMessage extends Message{['documentId'];['commentThreadId'];['commentId'];static ['TYPE']='95';static ['READABLE_TYPE_NAME']='removeComment';static ['DESCRIPTOR_NAME']='CommentsV2RemoveCommentMessage';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'commentId':{'type':'string','id':0x2},'documentId':{'type':'string','id':0x3}}};constructor(documentId,commentThreadId,commentId){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId,this['commentId']=commentId;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId'],'commentId':this['commentId']};}static['fromJSON'](object){return new RemoveCommentMessage(object['documentId'],object['commentThreadId'],object['commentId']);}}class RemoveCommentThreadMessage extends Message{['documentId'];['commentThreadId'];static ['TYPE']='97';static ['READABLE_TYPE_NAME']='removeCommentThread';static ['DESCRIPTOR_NAME']='CommentsV2RemoveCommentThreadMessage';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2}}};constructor(documentId,commentThreadId){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId']};}static['fromJSON'](object){return new RemoveCommentThreadMessage(object['documentId'],object['commentThreadId']);}}class UpdateCommentMessage extends Message{['documentId'];['commentThreadId'];['commentId'];['content'];['attributes'];['isAttributesUpdated'];['commentThread'];static ['TYPE']='96';static ['READABLE_TYPE_NAME']='updateComment';static ['DESCRIPTOR_NAME']='CommentsV2UpdateCommentMessage';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'commentId':{'type':'string','id':0x2},'content':{'type':'string','id':0x3},'documentId':{'type':'string','id':0x4},'attributes':{'type':'string','id':0x5},'isAttributesUpdated':{'type':'bool','id':0x6},'commentThread':{'type':'CommentsThreadDescriptor','id':0x7}}};constructor(documentId,commentThreadId,commentId,content,attributes=null,isAttributesUpdated=!0x1,commentThread){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId,this['commentId']=commentId,this['content']=content,this['attributes']=attributes,this['isAttributesUpdated']=isAttributesUpdated,this['commentThread']=commentThread;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId'],'commentId':this['commentId'],'content':this['content'],'attributes':this['attributes']?JSON['stringify'](this['attributes']):null,'isAttributesUpdated':this['isAttributesUpdated'],'commentThread':this['commentThread']?CommentsThreadDescriptor['toJSON'](this['commentThread']):void 0x0};}static['fromJSON'](object){return new UpdateCommentMessage(object['documentId'],object['commentThreadId'],object['commentId'],object['content'],object['attributes']?JSON['parse'](object['attributes']):null,object['isAttributesUpdated'],object['commentThread']?CommentsThreadDescriptor['fromJSON'](object['commentThread']):void 0x0);}}class GetCommentThreadMessage extends Message{['commentThreadId'];['documentId'];static ['TYPE']='93';static ['READABLE_TYPE_NAME']='getComment';static ['DESCRIPTOR_NAME']='CommentsV2GetCommentThreadMessage';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2}}};constructor(commentThreadId,documentId){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId;}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'documentId':this['documentId']};}static['fromJSON'](object){return new GetCommentThreadMessage(object['commentThreadId'],object['documentId']);}}class GetCommentThreadResponse extends Message{['commentThreadId'];['_comments'];['_commentsV2'];['resolvedBy'];['comments'];['createdAt'];['deletedAt'];['resolvedAt'];['attributes'];['context'];['unlinkedAt'];static ['DESCRIPTOR_NAME']='CommentsV2GetCommentThreadResponse';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'comments':{'type':'string','rule':'repeated','id':0x2},'commentsV2':{'type':'CommentDescriptor','rule':'repeated','id':0x3},'resolvedAt':{'type':'string','id':0x4},'resolvedBy':{'type':'string','id':0x5},'context':{'type':'string','id':0x6},'createdAt':{'type':'string','id':0x7},'deletedAt':{'type':'string','id':0x8},'attributes':{'type':'string','id':0x9},'unlinkedAt':{'type':'string','id':0xa}}};constructor(commentThreadId,_comments,_commentsV2,attributes,_0x113c5e,context,createdAt,deletedAt,resolvedAt,unlinkedAt){super(),this['commentThreadId']=commentThreadId,this['_comments']=_comments,this['_commentsV2']=_commentsV2,this['resolvedBy']=_0x113c5e,this['comments']=_commentsV2?.['length']?_commentsV2:_comments,this['createdAt']=createdAt?new Date(createdAt):void 0x0,this['deletedAt']='string'==typeof deletedAt?new Date(deletedAt):deletedAt,this['resolvedAt']='string'==typeof resolvedAt?new Date(resolvedAt):resolvedAt,this['unlinkedAt']='string'==typeof unlinkedAt?new Date(unlinkedAt):unlinkedAt,this['attributes']='string'==typeof attributes?JSON['parse'](attributes):attributes,this['context']='string'==typeof context?JSON['parse'](context):context;}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'comments':this['_comments']?.['map'](comment=>JSON['stringify'](comment)),'commentsV2':this['_commentsV2']?.['map'](CommentDescriptor['toJSON']),'attributes':this['attributes']?JSON['stringify'](this['attributes']):this['attributes'],'context':this['context']?JSON['stringify'](this['context']):this['context'],'resolvedBy':this['resolvedBy'],'createdAt':this['createdAt']?.['toISOString'](),'deletedAt':this['deletedAt']?.['toISOString'](),'resolvedAt':this['resolvedAt']?.['toISOString'](),'unlinkedAt':this['unlinkedAt']?.['toISOString']()};}static['fromJSON'](object){return new GetCommentThreadResponse(object['commentThreadId'],object['comments']?.['map'](comment=>function(commentString){const comment=JSON['parse'](commentString);return{...comment,'createdAt':new Date(comment['createdAt'])};}(comment)),object['commentsV2']?.['map'](CommentDescriptor['fromJSON']),object['attributes']?JSON['parse'](object['attributes']):object['attributes'],object['resolvedBy'],object['context']?JSON['parse'](object['context']):object['context'],object['createdAt'],object['deletedAt'],object['resolvedAt'],object['unlinkedAt']);}}class GetDocumentThreadsMessage extends Message{['documentId'];static ['TYPE']='94';static ['READABLE_TYPE_NAME']='getDocumentThreads';static ['DESCRIPTOR_NAME']='CommentsV2GetDocumentThreadsMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1}}};constructor(documentId){super(),this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId']};}static['fromJSON'](object){return new GetDocumentThreadsMessage(object['documentId']);}}class GetDocumentThreadsResponse extends Message{['_threads'];['_threadsV2'];['threads'];static ['DESCRIPTOR_NAME']='CommentsV2GetDocumentThreadsResponse';static ['DESCRIPTOR']={'fields':{'threads':{'type':'string','rule':'repeated','id':0x1},'threadsV2':{'type':'CommentsThreadDescriptor','rule':'repeated','id':0x2}}};constructor(_threads,_threadsV2){super(),this['_threads']=_threads,this['_threadsV2']=_threadsV2,this['threads']=_threadsV2?.['length']?_threadsV2:_threads;}['toJSON'](){return{'threads':this['_threads']?.['map'](thread=>JSON['stringify'](thread)),'threadsV2':this['_threadsV2']?.['map'](CommentsThreadDescriptor['toJSON'])};}static['fromJSON'](object){return new GetDocumentThreadsResponse(object['threads']?.['map'](thread=>function(threadString){const threadRaw=JSON['parse'](threadString),thread={...threadRaw};return threadRaw['comments']&&(thread['comments']=threadRaw['comments']?.['map'](comment=>({...comment,'createdAt':new Date(comment['createdAt'])}))),thread;}(thread)),object['threadsV2']?.['map'](CommentsThreadDescriptor['fromJSON']));}}class CommentThreadAddedCommentDescriptor extends Descriptor{static ['DESCRIPTOR_NAME']='CommentThreadAddedCommentDescriptor';static ['DESCRIPTOR']={'fields':{'commentId':{'id':0x1,'type':'string'},'createdAt':{'id':0x2,'type':'string'}}};static['toJSON'](comment){return{'commentId':comment['commentId'],'createdAt':comment['createdAt']?.['toISOString']()};}static['fromJSON'](comment){return{'commentId':comment['commentId'],'createdAt':new Date(comment['createdAt'])};}}class AddCommentThreadResponse extends Message{['commentThreadId'];['comments'];['createdAt'];static ['DESCRIPTOR_NAME']='CommentsV2AddCommentThreadResponse';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'createdAt':{'type':'string','id':0x2},'comments':{'type':'CommentThreadAddedCommentDescriptor','rule':'repeated','id':0x3}}};constructor(commentThreadId,createdAt,comments=[]){super(),this['commentThreadId']=commentThreadId,this['comments']=comments,this['createdAt']=new Date(createdAt);}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'createdAt':this['createdAt']['toISOString'](),'comments':this['comments']['map'](comment=>CommentThreadAddedCommentDescriptor['toJSON'](comment))};}static['fromJSON'](data){return new AddCommentThreadResponse(data['commentThreadId'],data['createdAt'],data['comments']['map'](comment=>CommentThreadAddedCommentDescriptor['fromJSON'](comment)));}}class AddCommentThreadMessage extends Message{['documentId'];['commentThreadId'];['comments'];['context'];['resolvedBy'];['attributes'];['createdAt'];['resolvedAt'];['deletedAt'];static ['TYPE']='140';static ['READABLE_TYPE_NAME']='addCommentThread';static ['DESCRIPTOR_NAME']='CommentsV2AddCommentThreadMessage';static ['DESCRIPTOR']={'fields':{'documentId':{'type':'string','id':0x1},'commentThreadId':{'type':'string','id':0x2},'context':{'type':'string','id':0x3},'createdAt':{'type':'string','id':0x4},'resolvedAt':{'type':'string','id':0x5},'resolvedBy':{'type':'string','id':0x6},'attributes':{'type':'string','id':0x7},'deletedAt':{'type':'string','id':0x8},'comments':{'type':'CommentDescriptor','rule':'repeated','id':0x9}}};constructor(documentId,commentThreadId,comments=[],context,_0x1d91d8=null,createdAt=null,resolvedAt=null,deletedAt=null,attributes=null){super(),this['documentId']=documentId,this['commentThreadId']=commentThreadId,this['comments']=comments,this['context']=context,this['resolvedBy']=_0x1d91d8,this['attributes']=attributes,this['createdAt']=createdAt?new Date(createdAt):'',this['resolvedAt']=resolvedAt?new Date(resolvedAt):'',this['deletedAt']=deletedAt?new Date(deletedAt):'';}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'context':this['context']?JSON['stringify'](this['context']):this['context'],'documentId':this['documentId'],'resolvedBy':this['resolvedBy'],'resolvedAt':this['resolvedAt']instanceof Date?this['resolvedAt']['toISOString']():this['resolvedAt'],'deletedAt':this['deletedAt']instanceof Date?this['deletedAt']['toISOString']():this['deletedAt'],'createdAt':this['createdAt']instanceof Date?this['createdAt']['toISOString']():this['createdAt'],'attributes':this['attributes']?JSON['stringify'](this['attributes']):this['attributes'],'comments':this['comments']?.['map'](_0x551d4e=>CommentDescriptor['toJSON'](_0x551d4e))};}static['fromJSON'](object){return new AddCommentThreadMessage(object['documentId'],object['commentThreadId'],object['comments']?.['map'](_0x77a8ec=>CommentDescriptor['fromJSON']({..._0x77a8ec,'documentId':object['documentId'],'commentThreadId':object['commentThreadId']})),object['context']?JSON['parse'](object['context']):object['context'],object['resolvedBy'],object['createdAt']?new Date(object['createdAt']):void 0x0,object['resolvedAt']?new Date(object['resolvedAt']):void 0x0,object['deletedAt']?new Date(object['deletedAt']):void 0x0,object['attributes']?JSON['parse'](object['attributes']):object['attributes']);}}class ResolveCommentThreadMessage extends Message{['commentThreadId'];['documentId'];['resolvedBy'];['resolvedAt'];static ['TYPE']='142';static ['READABLE_TYPE_NAME']='resolveCommentThread';static ['DESCRIPTOR_NAME']='CommentsV2ResolveCommentThreadMessage';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'resolvedBy':{'type':'string','id':0x3},'resolvedAt':{'type':'string','id':0x4}}};constructor(commentThreadId,documentId,_0xb0e16,resolvedAt){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId,this['resolvedBy']=_0xb0e16,this['resolvedAt']=resolvedAt?new Date(resolvedAt):void 0x0;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId'],'resolvedBy':this['resolvedBy'],'resolvedAt':this['resolvedAt']?.['toISOString']()};}static['fromJSON'](object){return new ResolveCommentThreadMessage(object['commentThreadId'],object['documentId'],object['resolvedBy'],object['resolvedAt']);}}class ReopenCommentThreadMessage extends Message{['commentThreadId'];['documentId'];static ['TYPE']='141';static ['READABLE_TYPE_NAME']='reopenCommentThread';static ['DESCRIPTOR_NAME']='CommentsV2ReopenCommentThreadMessage';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2}}};constructor(commentThreadId,documentId){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId;}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId']};}static['fromJSON'](object){return new ReopenCommentThreadMessage(object['commentThreadId'],object['documentId']);}}class UpdateCommentThreadMessage extends Message{['commentThreadId'];['documentId'];['context'];['attributes'];['unlinkedAt'];static ['TYPE']='143';static ['READABLE_TYPE_NAME']='updateCommentThread';static ['DESCRIPTOR_NAME']='CommentsV2UpdateCommentThreadMessage';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'context':{'type':'string','id':0x3},'attributes':{'type':'string','id':0x4},'unlinkedAt':{'type':'string','id':0x5}}};constructor(commentThreadId,documentId,context,attributes=null,unlinkedAt=null){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId,this['context']=context,this['attributes']=attributes,this['unlinkedAt']=unlinkedAt?new Date(unlinkedAt):'';}['toJSON'](){return{'documentId':this['documentId'],'commentThreadId':this['commentThreadId'],'context':this['context']?JSON['stringify'](this['context']):this['context'],'attributes':this['attributes']?JSON['stringify'](this['attributes']):null,'unlinkedAt':this['unlinkedAt']instanceof Date?this['unlinkedAt']['toISOString']():this['unlinkedAt']};}static['fromJSON'](object){return new UpdateCommentThreadMessage(object['commentThreadId'],object['documentId'],object['context']?JSON['parse'](object['context']):object['context'],object['attributes']?JSON['parse'](object['attributes']):null,object['unlinkedAt']?new Date(object['unlinkedAt']):null);}}class ResolveCommentThreadResponse extends Message{['commentThreadId'];['documentId'];['resolvedBy'];['resolvedAt'];static ['DESCRIPTOR_NAME']='CommentsV2ResolveCommentThreadResponse';static ['DESCRIPTOR']={'fields':{'commentThreadId':{'type':'string','id':0x1},'documentId':{'type':'string','id':0x2},'resolvedAt':{'type':'string','id':0x3},'resolvedBy':{'type':'string','id':0x4}}};constructor(commentThreadId,documentId,_0x25d6a0,resolvedAt){super(),this['commentThreadId']=commentThreadId,this['documentId']=documentId,this['resolvedBy']=_0x25d6a0,this['resolvedAt']=new Date(resolvedAt);}['toJSON'](){return{'commentThreadId':this['commentThreadId'],'documentId':this['documentId'],'resolvedBy':this['resolvedBy'],'resolvedAt':this['resolvedAt']['toISOString']()};}static['fromJSON'](data){return new ResolveCommentThreadResponse(data['commentThreadId'],data['documentId'],data['resolvedBy'],data['resolvedAt']);}}class CommentsService extends EmitterMixin(){['_documentId'];['_isConnected'];['_wsGateway'];['_channel'];['_connectedSessions'];static ['_SERVICE']=0x9;constructor(_documentId){super(),this['_documentId']=_documentId,this['_isConnected']=!0x1;}get['isConnected'](){return this['_isConnected'];}async['connect'](wsGateway){if(this['_isConnected'])return;if(wsGateway['state']!==WEB_SOCKET_GATEWAY_STATES['CONNECTED'])throw new CKEditorCloudServicesError('WebSocket\x20Gateway\x20is\x20not\x20connected.',wsGateway);const connectMessage=new ConnectMessage(this['_documentId']);this['_wsGateway']=wsGateway,this['stopListening'](wsGateway,'change:state');const _0x3b852e=await wsGateway['_sendRequest'](0x9,ConnectMessage['TYPE'],MessagesCompressor['encode'](connectMessage)),{channel:_0x425ec0,threads:threads}=MessagesCompressor['decode'](_0x3b852e,ConnectResponse);return this['listenTo'](wsGateway,'change:state',(_0x53b6be,_0x2bf19b,_0x57b7fc)=>this['_onWsGatewayStateChange'](_0x57b7fc),{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['_connectToChannel'](wsGateway,_0x425ec0),this['_isConnected']=!0x0,this['fire']('connected'),threads;}['disconnect'](){this['_isConnected']&&(this['_isConnected']=!0x1,this['_wsGateway']&&(this['stopListening'](this['_wsGateway']),this['_wsGateway']=void 0x0),this['_channel']&&(this['stopListening'](this['_channel']),this['_channel']=void 0x0),this['_connectedSessions']&&(this['_connectedSessions']['disconnect'](),this['_connectedSessions']=void 0x0),this['fire']('disconnected'),this['stopListening']());}async['addComment'](commentThreadId,commentId,content,attributes){const _0x590f3b=new AddCommentMessage(this['_documentId'],commentThreadId,content,commentId,void 0x0,void 0x0,attributes),_0x1d21c5=await this['_sendRequest'](AddCommentMessage['TYPE'],_0x590f3b);return MessagesCompressor['decode'](_0x1d21c5,AddCommentResponse);}async['updateComment'](commentThreadId,commentId,content,attributes){const isAttributesUpdated=void 0x0!==attributes,_0x1065a9=new UpdateCommentMessage(this['_documentId'],commentThreadId,commentId,content,attributes,isAttributesUpdated);await this['_sendRequest'](UpdateCommentMessage['TYPE'],_0x1065a9);}async['removeComment'](commentThreadId,commentId){const _0x442304=new RemoveCommentMessage(this['_documentId'],commentThreadId,commentId);await this['_sendRequest'](RemoveCommentMessage['TYPE'],_0x442304);}async['removeCommentThread'](commentThreadId){const _0x3395d8=new RemoveCommentThreadMessage(this['_documentId'],commentThreadId);await this['_sendRequest'](RemoveCommentThreadMessage['TYPE'],_0x3395d8);}async['addCommentThread'](addCommentThreadParams){const _0x1adbcc=new AddCommentThreadMessage(this['_documentId'],addCommentThreadParams['commentThreadId'],addCommentThreadParams['comments']?.['map'](comment=>({...comment,'documentId':this['_documentId'],'commentThreadId':addCommentThreadParams['commentThreadId']})),addCommentThreadParams['context'],addCommentThreadParams['resolvedBy'],addCommentThreadParams['createdAt'],addCommentThreadParams['resolvedAt'],addCommentThreadParams['deletedAt'],addCommentThreadParams['attributes']),_0xcd7e85=await this['_sendRequest'](AddCommentThreadMessage['TYPE'],_0x1adbcc);return MessagesCompressor['decode'](_0xcd7e85,AddCommentThreadResponse);}async['resolveCommentThread'](commentThreadId){const _0x28aa2c=new ResolveCommentThreadMessage(commentThreadId,this['_documentId']),_0x5c8401=await this['_sendRequest'](ResolveCommentThreadMessage['TYPE'],_0x28aa2c);return MessagesCompressor['decode'](_0x5c8401,ResolveCommentThreadResponse);}async['reopenCommentThread'](commentThreadId){const _0x29d109=new ReopenCommentThreadMessage(commentThreadId,this['_documentId']);await this['_sendRequest'](ReopenCommentThreadMessage['TYPE'],_0x29d109);}async['updateCommentThread'](_0x5d89f3){const _0x1962b1=new UpdateCommentThreadMessage(_0x5d89f3['commentThreadId'],this['_documentId'],_0x5d89f3['context'],_0x5d89f3['attributes'],_0x5d89f3['unlinkedAt']);await this['_sendRequest'](UpdateCommentThreadMessage['TYPE'],_0x1962b1);}async['getCommentThread'](commentThreadId,attempt=0x1){const _0xf95b2=new GetCommentThreadMessage(commentThreadId,this['_documentId']);try{const _0x1f0714=await this['_sendRequest'](GetCommentThreadMessage['TYPE'],_0xf95b2),commentThreadResponse=MessagesCompressor['decode'](_0x1f0714,GetCommentThreadResponse);return{'commentThreadId':commentThreadResponse['commentThreadId'],'comments':commentThreadResponse['comments'],'attributes':commentThreadResponse['attributes'],'context':commentThreadResponse['context'],'resolvedAt':commentThreadResponse['resolvedAt'],'resolvedBy':commentThreadResponse['resolvedBy'],'deletedAt':commentThreadResponse['deletedAt'],'unlinkedAt':commentThreadResponse['unlinkedAt']};}catch(_0x16d01a){if('CKEditorCloudServicesServerError'===_0x16d01a['name']&&'404'===_0x16d01a['code']&&attempt<0x5)return await(time=0x64*attempt,new Promise(_0x581b70=>{setTimeout(_0x581b70,time);})),this['getCommentThread'](commentThreadId,attempt+0x1);if('CKEditorCloudServicesServerError'===_0x16d01a['name'])throw _0x16d01a;throw CKEditorCloudServicesServerError['fromPublicError'](_0x16d01a);}var time;}async['getDocumentThreads'](){const _0x3857f5=new GetDocumentThreadsMessage(this['_documentId']),_0x2101e4=await this['_sendRequest'](GetDocumentThreadsMessage['TYPE'],_0x3857f5),{threads:threads}=MessagesCompressor['decode'](_0x2101e4,GetDocumentThreadsResponse);return{'threads':threads};}async['getConnectedSessions'](){if(!this['_isConnected'])throw new ServiceNotConnectedError('Comments',this);return this['_connectedSessions']||(this['_connectedSessions']=await Sessions['getConnectedSessions'](this['_wsGateway'],this['_documentId'],0x9)),this['_connectedSessions'];}['_connectToChannel'](wsGateway,_0x30b418){this['_channel']=wsGateway['_getChannel'](CommentsService['_SERVICE'],_0x30b418),this['_channel']&&(this['listenTo'](this['_channel'],this['_channel']['getEventName'](AddCommentMessage['TYPE']),(event,data)=>{const addCommentMessage=MessagesCompressor['decode'](data,AddCommentMessage);this['fire']('commentAdded',addCommentMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](RemoveCommentMessage['TYPE']),(event,data)=>{const removeCommentMessage=MessagesCompressor['decode'](data,RemoveCommentMessage);this['fire']('commentRemoved',removeCommentMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](UpdateCommentMessage['TYPE']),(event,data)=>{const updateCommentMessage=MessagesCompressor['decode'](data,UpdateCommentMessage);this['fire']('commentUpdated',updateCommentMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](RemoveCommentThreadMessage['TYPE']),(event,data)=>{const removeCommentThreadMessage=MessagesCompressor['decode'](data,RemoveCommentThreadMessage);this['fire']('commentThreadRemoved',removeCommentThreadMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](AddCommentThreadMessage['TYPE']),(event,data)=>{const addCommentThreadMessage=MessagesCompressor['decode'](data,AddCommentThreadMessage);this['fire']('commentThreadAdded',addCommentThreadMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](UpdateCommentThreadMessage['TYPE']),(event,data)=>{const updateCommentThreadMessage=MessagesCompressor['decode'](data,UpdateCommentThreadMessage);this['fire']('commentThreadUpdated',updateCommentThreadMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](ResolveCommentThreadMessage['TYPE']),(event,data)=>{const resolveCommentThreadMessage=MessagesCompressor['decode'](data,ResolveCommentThreadMessage);this['fire']('commentThreadResolved',resolveCommentThreadMessage);}),this['listenTo'](this['_channel'],this['_channel']['getEventName'](ReopenCommentThreadMessage['TYPE']),(event,data)=>{const reopenCommentThreadMessage=MessagesCompressor['decode'](data,ReopenCommentThreadMessage);this['fire']('commentThreadReopened',reopenCommentThreadMessage);}));}['_onWsGatewayStateChange'](_0x54c59f){_0x54c59f===WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&this['disconnect']();}['_sendRequest'](method,_0x3a5c8e){if(!this['_wsGateway']||!this['_isConnected'])throw new ServiceNotConnectedError('Comments',this);return this['_wsGateway']['_sendRequest'](0x9,method,MessagesCompressor['encode'](_0x3a5c8e));}}const MESSAGE_TYPE_NAME_MAP=new Map([[CollaborativeEditingConnectMessage['TYPE'],CollaborativeEditingConnectMessage['READABLE_TYPE_NAME']],[CollaborativeEditingReconnectMessage['TYPE'],CollaborativeEditingReconnectMessage['READABLE_TYPE_NAME']],[CollaborativeEditingUpdateMessage['TYPE'],CollaborativeEditingUpdateMessage['READABLE_TYPE_NAME']],[GetDocumentDetailsMessage['TYPE'],GetDocumentDetailsMessage['READABLE_TYPE_NAME']],[AddCommentMessage['TYPE'],AddCommentMessage['READABLE_TYPE_NAME']],[ConnectMessage['TYPE'],ConnectMessage['READABLE_TYPE_NAME']],[GetCommentThreadMessage['TYPE'],GetCommentThreadMessage['READABLE_TYPE_NAME']],[GetDocumentThreadsMessage['TYPE'],GetDocumentThreadsMessage['READABLE_TYPE_NAME']],[RemoveCommentMessage['TYPE'],RemoveCommentMessage['READABLE_TYPE_NAME']],[RemoveCommentThreadMessage['TYPE'],RemoveCommentThreadMessage['READABLE_TYPE_NAME']],[UpdateCommentMessage['TYPE'],UpdateCommentMessage['READABLE_TYPE_NAME']],[SessionsConnectMessage['TYPE'],SessionsConnectMessage['READABLE_TYPE_NAME']],[SocketConnectMessage['TYPE'],SocketConnectMessage['READABLE_TYPE_NAME']],[SocketDisconnectMessage['TYPE'],SocketDisconnectMessage['READABLE_TYPE_NAME']],[AddSuggestionMessage['TYPE'],AddSuggestionMessage['READABLE_TYPE_NAME']],[GetSuggestionMessage['TYPE'],GetSuggestionMessage['READABLE_TYPE_NAME']],[UpdateSuggestionMessage['TYPE'],UpdateSuggestionMessage['READABLE_TYPE_NAME']],[GetAllSuggestionsMessage['TYPE'],GetAllSuggestionsMessage['READABLE_TYPE_NAME']],[ConnectMessage$1['TYPE'],ConnectMessage$1['READABLE_TYPE_NAME']],[BatchUpdateSuggestionsStateMessage['TYPE'],BatchUpdateSuggestionsStateMessage['READABLE_TYPE_NAME']],[GetUserMessage['TYPE'],GetUserMessage['READABLE_TYPE_NAME']],[GetManyUsersMessage['TYPE'],GetManyUsersMessage['READABLE_TYPE_NAME']],[RevisionHistoryConnectMessage['TYPE'],RevisionHistoryConnectMessage['READABLE_TYPE_NAME']],[RevisionHistoryReconnectMessage['TYPE'],RevisionHistoryReconnectMessage['READABLE_TYPE_NAME']],[RevisionHistoryGetRevisionMessage['TYPE'],RevisionHistoryGetRevisionMessage['READABLE_TYPE_NAME']],[RevisionHistoryUpdateRevisionsMessage['TYPE'],RevisionHistoryUpdateRevisionsMessage['READABLE_TYPE_NAME']],[IsEditorBundleUploadedMessage['TYPE'],IsEditorBundleUploadedMessage['READABLE_TYPE_NAME']],[ResolveCommentThreadMessage['TYPE'],ResolveCommentThreadMessage['READABLE_TYPE_NAME']],[ReopenCommentThreadMessage['TYPE'],ReopenCommentThreadMessage['READABLE_TYPE_NAME']],[UpdateCommentThreadMessage['TYPE'],UpdateCommentThreadMessage['READABLE_TYPE_NAME']],[AddCommentThreadMessage['TYPE'],AddCommentThreadMessage['READABLE_TYPE_NAME']]]);class MessagesMapper{static['typeToStringName'](_0x29a95d){return MESSAGE_TYPE_NAME_MAP['get'](String(_0x29a95d))??_0x29a95d;}}export{AddCommentMessage,AddCommentResponse,AddCommentThreadMessage,AddCommentThreadResponse,AddSuggestionMessage,AddSuggestionResponse,BatchUpdateSuggestionsStateMessage,ChannelMessage,CollaborativeEditingConnectMessage,CollaborativeEditingConnectResponse,CollaborativeEditingReconnectMessage,CollaborativeEditingResponse,CollaborativeEditingService,CollaborativeEditingUpdateMessage,CommentsService,ConnectMessage as ConnectCommentsMessage,ConnectResponse as ConnectCommentsResponse,ConnectMessage$1 as ConnectTrackChangesMessage,ConnectResponse$1 as ConnectTrackChangesResponse,Decoder,EditorService,Encoder,GetAllSuggestionsMessage,GetAllSuggestionResponse as GetAllSuggestionsResponse,GetCommentThreadMessage,GetCommentThreadResponse,GetDocumentDetailsMessage,GetDocumentDetailsResponse,GetDocumentThreadsMessage,GetDocumentThreadsResponse,GetManyUsersMessage,GetManyUsersResponse,GetSuggestionMessage,GetSuggestionResponse,GetUserMessage,GetUserResponse,IsEditorBundleUploadedMessage,IsEditorBundleUploadedResponse,MessagesCompressor,MessagesMapper,PacketParser,parser as Parser,RemoveCommentMessage,RemoveCommentThreadMessage,ReopenCommentThreadMessage,ResolveCommentThreadMessage,ResolveCommentThreadResponse,RevisionHistoryConnectMessage,RevisionHistoryConnectResponse,RevisionHistoryGetRevisionMessage,RevisionHistoryGetRevisionResponse,RevisionHistoryReconnectMessage,RevisionHistoryService,RevisionHistoryUpdateRevisionsMessage,RevisionHistoryUpdateRevisionsResponse,SessionCollection,SessionsConnectMessage,SessionsConnectResponse,SocketConnectMessage,SocketDisconnectMessage,TrackChangesService,UpdateCommentMessage,UpdateCommentThreadMessage,UpdateSuggestionMessage,User,WEB_SOCKET_GATEWAY_STATES,WebSocketGateway};