!function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=e.ice||{};e.Ice=e.Ice||{},t.Ice=e.Ice,Ice.Slice=Ice.Slice||{},e.IceMX=e.IceMX||{},t.IceMX=e.IceMX,e.IceSSL=e.IceSSL||{},t.IceSSL=e.IceSSL;var n=Ice.Slice;!function(){const e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};Ice._require=function(){return e},Ice.Slice=Ice.Slice||{},Ice._ModuleRegistry=class{static module(t){let n=e[t];return void 0===n&&(n={},e[t]=n),n}static require(t){return e}static type(t){if(void 0===t)return;const n=t.split(".");let i=e;for(let e=0,t=n.length;e1;--t){const n=e[t-1],i=Math.floor(Math.random()*t);e[t-1]=e[i],e[i]=n}}}i.eq=n,t.defineSequence=function(t,n,i,s,r){let o=null;Object.defineProperty(t,n,{get:()=>(null===o&&(o=Ice.StreamHelpers.generateSeqHelper(e.type(i),s,e.type(r))),o)})},Ice.ArrayUtil=i}(),function(){class e{constructor(e,t){this._name=e,this._value=t}equals(e){return this===e||e instanceof Object.getPrototypeOf(this).constructor&&this._value==e._value}hashCode(){return this._value}toString(){return this._name}get name(){return this._name}get value(){return this._value}}Ice.EnumBase=e;class t{constructor(e){this._enumType=e}write(e,t){this._enumType._write(e,t)}writeOptional(e,t,n){this._enumType._writeOpt(e,t,n)}read(e){return this._enumType._read(e)}readOptional(e,t){return this._enumType._readOpt(e,t)}}Ice.EnumHelper=t,Ice.Slice.defineEnum=function(n){const i=class extends e{},s=[];let r=0,o=null;for(const e in n){const t=n[e][0],c=n[e][1],a=new i(t,c);s[c]=a,o||(o=a),Object.defineProperty(i,t,{enumerable:!0,value:a}),c>r&&(r=c)}return Object.defineProperty(i,"minWireSize",{get:()=>1}),i._write=function(e,t){t?e.writeEnum(t):e.writeEnum(o)},i._read=function(e){return e.readEnum(i)},i._writeOpt=function(e,t,n){void 0!==n&&e.writeOptional(t,Ice.OptionalFormat.Size)&&i._write(e,n)},i._readOpt=function(e,t){return e.readOptionalEnum(t,i)},i._helper=new t(i),Object.defineProperty(i,"valueOf",{value:function(e){return void 0===e?i:s[e]}}),Object.defineProperty(i,"maxValue",{value:r}),Object.defineProperty(i.prototype,"maxValue",{value:r}),i}}(),function(){class e{constructor(t=0,n){if(!Number.isSafeInteger(t))throw new RangeError(void 0===n?"Number must be a safe integer":"High word must be a safe integer");if(void 0===n)this.low=t>>>0,this.high=(t-this.low)/e.HIGH_MASK>>>0;else{if(!Number.isSafeInteger(n))throw new RangeError("Low word must be a safe integer");if(n<0||n>e.MAX_UINT32)throw new RangeError("Low word must be between 0 and 0xFFFFFFFF");if(t<0||t>e.MAX_UINT32)throw new RangeError("High word must be between 0 and 0xFFFFFFFF");this.high=t,this.low=n}}hashCode(){return this.low}equals(t){return this===t||t instanceof e&&(this.high===t.high&&this.low===t.low)}toString(){return this.high+":"+this.low}toNumber(){if(0!=(this.high&e.SIGN_MASK)){const t=~this.low>>>0,n=~this.high>>>0;return n>e.HIGH_MAX||n==e.HIGH_MAX&&t==e.MAX_UINT32?Number.NEGATIVE_INFINITY:-(n*e.HIGH_MASK+t+1)}return this.high>e.HIGH_MAX?Number.POSITIVE_INFINITY:this.high*e.HIGH_MASK+this.low}}e.MAX_UINT32=4294967295,e.SIGN_MASK=2147483648,e.HIGH_MASK=4294967296,e.HIGH_MAX=2097151,Ice.Long=e}(),Ice.AsyncStatus={Queued:0,Sent:1},function(){const e=Ice.Long,t="BufferOverflowException",n="BufferUnderflowException",i="IndexOutOfBoundsException";Ice.Buffer=class{constructor(e){void 0!==e?(this.b=e,this.v=new DataView(this.b),this._limit=this.b.byteLength):(this.b=null,this.v=null,this._limit=0),this._position=0,this._shrinkCounter=0}empty(){return 0===this._limit}resize(e){0===e?this.clear():e>this.capacity&&this.reserve(e),this._limit=e}clear(){this.b=null,this.v=null,this._position=0,this._limit=0}expand(e){const t=0===this.capacity?e:this._position+e;t>this._limit&&this.resize(t)}reset(){this._limit>0&&2*this._limit2&&(this.reserve(this._limit),this._shrinkCounter=0):this._shrinkCounter=0,this._limit=this.capacity(),this._position=0}reserve(e){if(e>this.capacity){const t=Math.max(1024,Math.max(e,2*this.capacity));if(this.b){const e=new Uint8Array(t);e.set(new Uint8Array(this.b)),this.b=e.buffer}else this.b=new ArrayBuffer(t);this.v=new DataView(this.b)}else e=this._limit)throw new RangeError(i);this.v.setUint8(e,t)}putArray(e){if(!(e instanceof Uint8Array))throw new TypeError("argument is not a Uint8Array");if(e.byteLength>0){if(this._position+e.length>this._limit)throw new RangeError(t);new Uint8Array(this.b,0,this.b.byteLength).set(e,this._position),this._position+=e.byteLength}}putShort(e){if(this._position+2>this._limit)throw new RangeError(t);this.v.setInt16(this._position,e,!0),this._position+=2}putInt(e){if(this._position+4>this._limit)throw new RangeError(t);this.v.setInt32(this._position,e,!0),this._position+=4}putIntAt(e,t){if(e+4>this._limit||e<0)throw new RangeError(i);this.v.setInt32(e,t,!0)}putFloat(e){if(this._position+4>this._limit)throw new RangeError(t);this.v.setFloat32(this._position,e,!0),this._position+=4}putDouble(e){if(this._position+8>this._limit)throw new RangeError(t);this.v.setFloat64(this._position,e,!0),this._position+=8}putLong(e){if(this._position+8>this._limit)throw new RangeError(t);this.v.setInt32(this._position,e.low,!0),this._position+=4,this.v.setInt32(this._position,e.high,!0),this._position+=4}writeString(e,t){const n=unescape(encodeURIComponent(t));e.writeSize(n.length),e.expand(n.length),this.putString(n,n.length)}putString(e,n){if(this._position+n>this._limit)throw new RangeError(t);for(let t=0;t=this._limit)throw new RangeError(n);const e=this.v.getUint8(this._position);return this._position++,e}getAt(e){if(e<0||e>=this._limit)throw new RangeError(i);return this.v.getUint8(e)}getArray(e){if(this._position+e>this._limit)throw new RangeError(n);const t=this.b.slice(this._position,this._position+e);return this._position+=e,new Uint8Array(t)}getArrayAt(e,t){if(e+t>this._limit)throw new RangeError(n);return new Uint8Array(this.b.slice(e,e+t===void 0?this.b.byteLength-e:t))}getShort(){if(this._limit-this._position<2)throw new RangeError(n);const e=this.v.getInt16(this._position,!0);return this._position+=2,e}getInt(){if(this._limit-this._position<4)throw new RangeError(n);const e=this.v.getInt32(this._position,!0);return this._position+=4,e}getFloat(){if(this._limit-this._position<4)throw new RangeError(n);const e=this.v.getFloat32(this._position,!0);return this._position+=4,e}getDouble(){if(this._limit-this._position<8)throw new RangeError(n);const e=this.v.getFloat64(this._position,!0);return this._position+=8,e}getLong(){if(this._limit-this._position<8)throw new RangeError(n);const t=this.v.getUint32(this._position,!0);this._position+=4;const i=this.v.getUint32(this._position,!0);return this._position+=4,new e(i,t)}getString(e){if(this._position+e>this._limit)throw new RangeError(n);const t=new DataView(this.b,this._position,e);let i="";for(let n=0;n=0&&e<=this._limit&&(this._position=e)}get limit(){return this._limit}set limit(e){e<=this.capacity&&(this._limit=e,this._position>e&&(this._position=e))}get capacity(){return null===this.b?0:this.b.byteLength}get remaining(){return this._limit-this._position}}}(),Ice.CompactIdRegistry=new Map,function(){const e=function(t,n,i,s){if(s+=" ",null===n)return"\n"+s+t+": (null)";if(void 0===n)return"\n"+s+t+": (undefined)";if("stack"==t||"function"==typeof n)return"";if("object"!=typeof n)return"\n"+s+t+': "'+n+'"';if(-1!=i.indexOf(n))return"\n"+s+t+": (recursive)";i.push(n);let r="\n"+s+t+":";for(const o in n)0!==t.indexOf("_")&&"function"!=typeof n[o]&&(r+=s+e(o,n[o],i,s));return r};class t extends Error{constructor(e){super(),e&&(this.ice_cause=e)}ice_name(){return this.constructor._id.substr(2)}ice_id(){return this.constructor._id}static get _id(){return"::Ice::Exception"}toString(){if(this._inToStringAlready)return"";this._inToStringAlready=!0;let t=this.ice_id();for(const n in this)"_inToStringAlready"!=n&&(t+=e(n,this[n],[],""));return!0===Ice._printStackTraces&&this.stack&&(t+="\n"+this.stack),this._inToStringAlready=!1,t}static captureStackTrace(e){const t=(new Error).stack;void 0!==t&&Object.defineProperty(e,"stack",{get:function(){return t}})}}Ice.Exception=t;Ice.LocalException=class extends t{constructor(e){super(e),t.captureStackTrace(this)}static get _id(){return"::Ice::LocalException"}};class n extends t{constructor(e){super(e),t.captureStackTrace(this)}static get _id(){return"::Ice::UserException"}ice_getSlicedData(){return null}_write(e){e.startException(null),i(this,e,this._mostDerivedType()),e.endException()}_read(e){e.startException(),s(this,e,this._mostDerivedType()),e.endException(!1)}_usesClasses(){return!1}_mostDerivedType(){return Ice.UserException}}Ice.UserException=n;const i=function(e,t,s){void 0!==s&&s!==n&&(t.startSlice(s._id,-1,s._parent===n),s.prototype.hasOwnProperty("_writeMemberImpl")&&s.prototype._writeMemberImpl.call(e,t),t.endSlice(),i(e,t,s._parent))},s=function(e,t,i){void 0!==i&&i!==n&&(t.startSlice(),i.prototype.hasOwnProperty("_readMemberImpl")&&i.prototype._readMemberImpl.call(e,t),t.endSlice(),s(e,t,i._parent))},r=function(e){e.startException(this._slicedData),i(this,e,this._mostDerivedType()),e.endException()},o=function(e){e.startException(),s(this,e,this._mostDerivedType()),this._slicedData=e.endException(!0)},c=function(){return this._slicedData};Ice.Slice.PreservedUserException=function(e){e.prototype.ice_getSlicedData=c,e.prototype._write=r,e.prototype._read=o}}(),Ice.FormatType=Ice.Slice.defineEnum([["DefaultFormat",0],["CompactFormat",1],["SlicedFormat",2]]),function(){Ice.AssertionFailedException=class extends Error{constructor(e){super(),Ice.Exception.captureStackTrace(this),this.message=e}};Ice.Debug=class{static assert(e,t){if(!e)throw console.log(void 0===t?"assertion failed":t),console.log(Error().stack),new Ice.AssertionFailedException(void 0===t?"assertion failed":t)}}}(),function(){const e=Ice.Debug;function t(t,n,i,s){switch(t){case 92:n.push("\\\\");break;case 39:n.push("\\'");break;case 34:n.push('\\"');break;case 7:s==Ice.ToStringMode.Compat?n.push("\\007"):n.push("\\a");break;case 8:n.push("\\b");break;case 12:n.push("\\f");break;case 10:n.push("\\n");break;case 13:n.push("\\r");break;case 9:n.push("\\t");break;case 11:s==Ice.ToStringMode.Compat?n.push("\\013"):n.push("\\v");break;default:{const r=String.fromCharCode(t);if(null!==i&&-1!==i.indexOf(r))n.push("\\"),n.push(r);else if(t<32||t>126)if(s===Ice.ToStringMode.Compat){e.assert(t<256),n.push("\\");const i=t.toString(8);for(let e=i.length;e<3;e++)n.push("0");n.push(i)}else if(t<32||127==t||s===Ice.ToStringMode.ASCII){n.push("\\u");const e=t.toString(16);for(let t=e.length;t<4;t++)n.push("0");n.push(e)}else n.push(r);else n.push(r);break}}}function n(e,t){const n=e.charCodeAt(t);if(n<32||127===n){let i;throw i=t>0?"character after `"+e.substring(0,t)+"'":"first character",i+=" has invalid ordinal value"+n,new RangeError(i)}return e.charAt(t)}function i(t,i,s,r,o){if(e.assert(i>=0),e.assert(i0&&i=48&&n<=57)n-=48;else if(n>=97&&n<=102)n+=-87;else{if(!(n>=65&&n<=70))break;n+=-55}e=16*e+n,--r}if(r>0)throw new RangeError("Invalid universal character name: too few hex digits");if(e>=55296&&e<=57343)throw new RangeError("A universal character name cannot designate a surrogate");n||e<=65535?o.push(String.fromCharCode(e)):o.push(String.fromCodePoint(e));break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"x":{const n=[];let r=!0;for(;r;){let o=0;if("x"===c){let e=2;for(++i;e>0&&i=48&&n<=57)n-=48;else if(n>=97&&n<=102)n+=-87;else{if(!(n>=65&&n<=70))break;n+=-55}o=16*o+n,--e}if(2===e)throw new RangeError("Invalid \\x escape sequence: no hex digit")}else{for(let n=0;n<3&&i7){--i,e.assert(0!==n);break}o=8*o+s}if(o>255)throw new RangeError("octal value \\"+o.toString(8)+" ("+o+") is out of range")}if(n.push(String.fromCharCode(o)),r=!1,i+1=48&&e<=57)&&(i++,r=!0)}}o.push(decodeURIComponent(escape(n.join(""))));break}default:null!==r&&0!==r.length&&-1!==r.indexOf(c)||o.push("\\"),o.push(n(t,i++))}}return i}Ice.StringUtil=class{static findFirstOf(e,t,n){for(let i=n=void 0===n?0:n;i126)throw new RangeError("special characters must be in ASCII range 32-126");const r=[];if(s===Ice.ToStringMode.Compat){const e=unescape(encodeURIComponent(n));for(let n=0;n57343)t(c,r,i,s);else{if(e.assert(s===Ice.ToStringMode.ASCII&&c>=55296&&c<=57343),o+1===n.length)throw new RangeError("High surrogate without low surrogate");{const t=n.codePointAt(o);e.assert(t>65535),o++,r.push("\\U");const i=t.toString(16);for(let e=i.length;e<8;e++)r.push("0");r.push(i)}}}return r.join("")}static unescapeString(t,s,r,o){if(s=void 0===s?0:s,r=void 0===r?t.length:r,o=void 0===o?null:o,e.assert(s>=0&&s<=r&&r<=t.length),null!==o)for(let e=0;e126)throw new RangeError("special characters must be in ASCII range 32-126");let c=t.indexOf("\\",s);if(-1==c||c>=r){for(c=s;c0&&(n.push(i),i="");continue}}s0&&n.push(i),null!==r?null:n}static checkQuote(e,t){t=void 0===t?0:t;const n=e.charAt(t);if('"'==n||"'"==n){let i;for(t++;t254?t*e+5:t*e+1),this.write(n,s)}},this.readOptional=function(e,n){let i;return e.readOptional(n,t.VSize)&&(e.skipSize(),i=this.read(e)),i}},VSizeContainer1OptHelper:function(){this.writeOptional=function(e,n,i){void 0!==i&&e.writeOptional(n,t.VSize)&&this.write(e,i)},this.readOptional=function(e,n){let i;return e.readOptional(n,t.VSize)&&(i=this.read(e)),i}}};class i{write(e,t){if(null===t||0===t.length)e.writeSize(0);else{const n=this.elementHelper;e.writeSize(t.length);for(let i=0;ie.writeByteSeq(t),s.read=e=>e.readByteSeq(),e(s,"elementHelper",{get:()=>Ice.ByteHelper}),n.VSizeContainer1OptHelper.call(s);const r=function(e){const t=e.readAndCheckSeqSize(1),n=[];n.length=t;const i=this.elementType,s=function(t){e.readValue(e=>{n[t]=e},i)};for(let e=0;et}),t==Ice.ObjectHelper&&(e(a,"elementType",{get:()=>c}),a.read=r),a};class o{write(e,t){if(null===t||0===t.size)e.writeSize(0);else{const n=this.keyHelper,i=this.valueHelper;e.writeSize(t.size);for(const[s,r]of t)n.write(e,s),i.write(e,r)}}read(e){const t=new(0,this.mapType),n=e.readSize(),i=this.keyHelper,s=this.valueHelper;for(let r=0;rn.set(t,e),i)},r=this.keyHelper;for(let n=0;na}),e(h,"keyHelper",{get:()=>t}),e(h,"valueHelper",{get:()=>i}),i==Ice.ObjectHelper&&(e(h,"valueType",{get:()=>r}),h.read=c),h},Ice.StreamHelpers=n}(),function(){const e=Ice.ReferenceMode;Ice.ConnectionRequestHandler=class{constructor(t,n){this._reference=t,this._response=t.getMode()==e.ModeTwoway,this._connection=n}update(e,t){try{if(e===this)return t;if(e.getConnection()===this._connection)return t}catch(e){}return this}sendAsyncRequest(e){return e.invokeRemote(this._connection,this._response)}asyncRequestCanceled(e){return this._connection.asyncRequestCanceled(e)}getReference(){return this._reference}getConnection(){return this._connection}}}(),Ice.Object=class{ice_isA(e,t){return this._iceMostDerivedType()._iceIds.indexOf(e)>=0}ice_ping(e){}ice_ids(e){return this._iceMostDerivedType()._iceIds}ice_id(e){return this._iceMostDerivedType()._iceId}toString(){return"[object "+this.ice_id()+"]"}_iceMostDerivedType(){return Ice.Object}equals(e){return this===e}static get _iceImplements(){return[]}},function(){Ice.generateUUID=function(){let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const n=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"==t?n:3&n|8).toString(16)})}}(),function(){const e=Ice.StringUtil;Ice.HashUtil=class{static addBoolean(e,t){return(e<<5)+e^(t?0:1)}static addString(t,n){return null!=n&&(t=(t<<5)+t^e.hashCode(n)),t}static addNumber(e,t){return(e<<5)+e^t}static addHashable(e,t){return null!=t&&(e=(e<<5)+e^t.hashCode()),e}static addArray(e,t,n){if(null!=t)for(let i=0;i0){this._threshold=n._threshold,this._table.length=n._table.length;for(let e=0;ethis._valueComparator.call(this._valueComparator,e,t));for(let t=this._head;null!==t;t=t._next){const i=e.findEntry(t._key,t._hash);if(void 0===i||!n(t._value,i._value))return!1}return!0}merge(e){for(let t=e._head;null!==t;t=t._next)n(this,t._key,t._value,t._hash,this.hashIndex(t._hash,this._table.length))}add(e,t,n,i){const s=Object.create(null,{key:{enumerable:!0,get:function(){return this._key}},value:{enumerable:!0,get:function(){return this._value}},next:{enumerable:!0,get:function(){return this._next}},_key:{enumerable:!1,writable:!0,value:e},_value:{enumerable:!1,writable:!0,value:t},_prev:{enumerable:!1,writable:!0,value:null},_next:{enumerable:!1,writable:!0,value:null},_nextInBucket:{enumerable:!1,writable:!0,value:null},_hash:{enumerable:!1,writable:!0,value:n}});s._nextInBucket=this._table[i],this._table[i]=s,s._next=this._head,null!==this._head&&(this._head._prev=s),this._head=s,this._size++,this._size>=this._threshold&&this.resize(2*this._table.length)}resize(e){const t=new Array(e).fill(null);for(let n=this._head;null!==n;n=n._next){const i=this.hashIndex(n._hash,e);n._nextInBucket=t[i],t[i]=n}this._table=t,this._threshold=e*this._loadFactor}findEntry(e,t){const n=this.hashIndex(t,this._table.length);for(let i=this._table[n];null!==i;i=i._nextInBucket)if(i._hash===t&&this.keysEqual(e,i._key))return i}hashIndex(e,t){return e&t-1}computeHash(e){if(0===e)return{key:0,hash:0};if(null===e){if(null===s._null){const e=Ice.generateUUID();s._null={key:e,hash:t.hashCode(e)}}return s._null}if(void 0===e)throw new RangeError("cannot compute hash for undefined value");if("function"==typeof e.hashCode)return{key:e,hash:e.hashCode()};const n=typeof e;if("string"===n||e instanceof String)return{key:e,hash:t.hashCode(e)};if("number"===n||e instanceof Number){if(isNaN(e)){if(null===s._nan){const e=Ice.generateUUID();s._nan={key:e,hash:t.hashCode(e)}}return s._nan}return{key:e,hash:e.toFixed(0)}}if("boolean"===n||e instanceof Boolean)return{key:e,hash:e?1:0};throw new RangeError("cannot compute hash for value of type "+n)}keysEqual(e,t){return this._keyComparator.call(this._keyComparator,e,t)}get size(){return this._size}}s.prototype[Symbol.iterator]=s.prototype.entries,Ice.HashMap=s,s.compareEquals=function(e,t){return e===t||null!=e&&null!=t&&e.equals(t)},s.compareIdentity=i,s._null=null,s._nan=null,Ice.Slice.defineDictionary=function(t,n,i,r,o,c,a,h){t[n]=void 0===a?Map:function(e){return new s(e||a)};let l=null;Object.defineProperty(t,i,{get:function(){return null===l&&(l=Ice.StreamHelpers.generateDictHelper(e.type(r),e.type(o),c,e.type(h),t[n])),l}})}}(),function(){Ice.Value=class{ice_preMarshal(){}ice_postUnmarshal(){}ice_getSlicedData(){return null}_iceWrite(t){t.startValue(null),e(this,t,this._iceMostDerivedType()),t.endValue()}_iceRead(e){e.startValue(),t(this,e,this._iceMostDerivedType()),e.endValue(!1)}static write(e,t){e.writeValue(t)}static writeOptional(e,t,n){e.writeOptionalValue(t,n)}static read(e){const t={value:null};return e.readValue(e=>{t.value=e},this),t}static readOptional(e,t){const n={value:void 0};return e.readOptionalValue(t,e=>{n.value=e},this),n}},Ice.InterfaceByValue=class extends Ice.Value{constructor(e){super(),this._id=e}ice_id(){return this._id}_iceWrite(e){e.startValue(null),e.startSlice(this.ice_id(),-1,!0),e.endSlice(),e.endValue()}_iceRead(e){e.startValue(),e.startSlice(),e.endSlice(),e.endValue(!1)}};const e=function(t,n,i){void 0!==i&&i!==Ice.Value&&(n.startSlice(i.ice_staticId(),Object.prototype.hasOwnProperty.call(i,"_iceCompactId")?i._iceCompactId:-1,Object.getPrototypeOf(i)===Ice.Value),i.prototype.hasOwnProperty("_iceWriteMemberImpl")&&i.prototype._iceWriteMemberImpl.call(t,n),n.endSlice(),e(t,n,Object.getPrototypeOf(i)))},t=function(e,n,i){void 0!==i&&i!==Ice.Value&&(n.startSlice(),i.prototype.hasOwnProperty("_iceReadMemberImpl")&&i.prototype._iceReadMemberImpl.call(e,n),n.endSlice(),t(e,n,Object.getPrototypeOf(i)))};function n(t){t.startValue(this._iceSlicedData),e(this,t,this._iceMostDerivedType()),t.endValue()}function i(e){e.startValue(),t(this,e,this._iceMostDerivedType()),this._iceSlicedData=e.endValue(!0)}function s(){return this._iceSlicedData}const r=Ice.Slice;r.defineValue=function(e,t,r,o=0){e.prototype.ice_id=function(){return t},e.prototype._iceMostDerivedType=function(){return e},e.ice_staticId=function(){return t},r&&(e.prototype.ice_getSlicedData=s,e.prototype._iceWrite=n,e.prototype._iceRead=i),o>0&&Ice.CompactIdRegistry.set(o,t)},r.defineValue(Ice.Value,"::Ice::Object")}(),function(){const e=Ice.ArrayUtil,t=e.eq;function n(e){if(this===e)return!0;if(null==e)return!1;if(this.prototype!==e.prototype)return!1;for(const n in this){const i=this[n],s=e[n];if("function"!=typeof i&&!t(i,s))return!1}return!0}function i(){const t=new this.constructor;for(const n in this){const i=this[n];if(null==i)t[n]=i;else{if("function"==typeof i)continue;"function"==typeof i.clone?t[n]=i.clone():i instanceof Array?t[n]=e.clone(i):t[n]=i}}return t}function s(e,t){if("function"==typeof t.hashCode)return Ice.HashUtil.addHashable(e,t);if(t instanceof Array)return Ice.HashUtil.addArray(e,t,s);{const n=typeof t;if(t instanceof String||"string"==n)return Ice.HashUtil.addString(e,t);if(t instanceof Number||"number"==n)return Ice.HashUtil.addNumber(e,t);if(t instanceof Boolean||"boolean"==n)return Ice.HashUtil.addBoolean(e,t)}}function r(){let e=5381;for(const t in this){const n=this[t];null!=n&&"function"!=typeof n&&(e=s(e,n))}return e}Ice.Slice.defineStruct=function(e,t,s){return e.prototype.clone=i,e.prototype.equals=n,t&&(e.prototype.hashCode=r),e.prototype._write&&e.prototype._read&&(e.write=function(t,n){n||(e.prototype._nullMarshalValue||(e.prototype._nullMarshalValue=new this),n=e.prototype._nullMarshalValue),n._write(t)},e.read=function(e,t){return t&&t instanceof this||(t=new this),t._read(e),t},s?Ice.StreamHelpers.FSizeOptHelper.call(e):Ice.StreamHelpers.VSizeOptHelper.call(e)),e}}(),function(){const e="A".charCodeAt(0),t="a".charCodeAt(0),n="0".charCodeAt(0);function i(i){return i<26?String.fromCharCode(e+i):i<52?String.fromCharCode(t+(i-26)):i<62?String.fromCharCode(n+(i-52)):62==i?"+":"/"}function s(i){return i>="A"&&i<="Z"?i.charCodeAt(0)-e:i>="a"&&i<="z"?i.charCodeAt(0)-t+26:i>="0"&&i<="9"?i.charCodeAt(0)-n+52:"+"==i?62:63}class r{static encode(e){if(null===e||0===e.length)return"";const t=[];let n,s,r,o,c,a,h;for(let l=0;l>2&255,c=255&((3&n)<<4|s>>4),a=255&((15&s)<<2|r>>6),h=63&r,t.push(i(o)),t.push(i(c)),l+176;)u.push(l.substring(d,d+76)),u.push("\r\n"),d+=76;return u.push(l.substring(d)),u.join("")}static decode(e){const t=[];for(let n=0;n>4),"="!=d&&i.put((15&c)<<4|a>>2),"="!=p&&i.put((3&a)<<6|h);return i.remaining>0?i.getArrayAt(0,i.position):i.getArrayAt(0)}static isBase64(e){return e>="A"&&e<="Z"||(e>="a"&&e<="z"||(e>="0"&&e<="9"||("+"==e||("/"==e||"="==e))))}}Ice.Base64=r}(),n.defineSequence(Ice,"BoolSeqHelper","Ice.BoolHelper",!0),n.defineSequence(Ice,"ByteSeqHelper","Ice.ByteHelper",!0),n.defineSequence(Ice,"ShortSeqHelper","Ice.ShortHelper",!0),n.defineSequence(Ice,"IntSeqHelper","Ice.IntHelper",!0),n.defineSequence(Ice,"LongSeqHelper","Ice.LongHelper",!0),n.defineSequence(Ice,"FloatSeqHelper","Ice.FloatHelper",!0),n.defineSequence(Ice,"DoubleSeqHelper","Ice.DoubleHelper",!0),n.defineSequence(Ice,"StringSeqHelper","Ice.StringHelper",!1),n.defineSequence(Ice,"ObjectSeqHelper","Ice.ObjectHelper",!1,"Ice.Value"),n.defineSequence(Ice,"ObjectProxySeqHelper","Ice.ObjectPrx",!1),Ice.Identity=class{constructor(e="",t=""){this.name=e,this.category=t}_write(e){e.writeString(this.name),e.writeString(this.category)}_read(e){this.name=e.readString(),this.category=e.readString()}static get minWireSize(){return 2}},n.defineStruct(Ice.Identity,!0,!0),n.defineDictionary(Ice,"ObjectDict","ObjectDictHelper","Ice.Identity","Ice.ObjectHelper",!1,Ice.HashMap.compareEquals,"Ice.Value"),n.defineSequence(Ice,"IdentitySeqHelper","Ice.Identity",!1),Ice.ProtocolVersion=class{constructor(e=0,t=0){this.major=e,this.minor=t}_write(e){e.writeByte(this.major),e.writeByte(this.minor)}_read(e){this.major=e.readByte(),this.minor=e.readByte()}static get minWireSize(){return 2}},n.defineStruct(Ice.ProtocolVersion,!0,!1),Ice.EncodingVersion=class{constructor(e=0,t=0){this.major=e,this.minor=t}_write(e){e.writeByte(this.major),e.writeByte(this.minor)}_read(e){this.major=e.readByte(),this.minor=e.readByte()}static get minWireSize(){return 2}},n.defineStruct(Ice.EncodingVersion,!0,!1),function(){function e(){return-1!==navigator.userAgent.indexOf("MSIE")||navigator.userAgent.match(/Trident.*rv:11\./)}const t=Number.MAX_SAFE_INTEGER||9007199254740991;let n=0;const i=function(){return n==t&&(n=0),n++},s=new Map;function r(){const t=class{static setTimeout(e,t){return setTimeout(e,t)}static clearTimeout(e){return clearTimeout(e)}static setInterval(e,t){return setInterval(e,t)}static clearInterval(e){return clearInterval(e)}};if(/Edge/.test(navigator.userAgent)||e())t.setImmediate=function(e){setImmediate(e)};else{const e=new MessageChannel;e.port1.onmessage=e=>{const t=e.data,n=s.get(t);void 0!==n&&(n.call(),s.delete(t))},t.setImmediate=function(t){const n=i();s.set(n,t),e.port2.postMessage(n)}}return t}const o=0,c=1,a=2,h=3,l=4;let u;class d{static setTimeout(e,t){const n=i();return s.set(n,e),u.postMessage({type:o,id:n,ms:t}),n}static clearTimeout(e){s.delete(e),u.postMessage({type:h,id:e})}static setInterval(e,t){const n=i();return s.set(n,e),u.postMessage({type:c,id:n,ms:t}),n}static clearInterval(e){s.delete(e),u.postMessage({type:l,id:e})}static setImmediate(e){const t=i();return s.set(t,e),u.postMessage({type:a,id:t}),t}static onmessage(e){const t=s.get(e.data.id);void 0!==t&&(t.call(),e.data.type!==c&&s.delete(e.data.id))}}if(e())Ice.Timer=r();else if("undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope)Ice.Timer=r();else if(void 0===u){const e=URL.createObjectURL(new Blob(["("+function(){const e={};self.onmessage=t=>{0==t.data.type?e[t.data.id]=setTimeout(()=>self.postMessage(t.data),t.data.ms):1==t.data.type?e[t.data.id]=setInterval(()=>self.postMessage(t.data),t.data.ms):2==t.data.type?self.postMessage(t.data):3==t.data.type?(clearTimeout(e[t.data.id]),delete e[t.data.id]):4==t.data.type&&(clearInterval(e[t.data.id]),delete e[t.data.id])}}.toString()+"());"],{type:"text/javascript"}));(u=new Worker(e)).onmessage=d.onmessage,Ice.Timer=d}}(),Ice.InitializationException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.reason=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::InitializationException"}},Ice.PluginInitializationException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.reason=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::PluginInitializationException"}},Ice.CollocationOptimizationException=class extends Ice.LocalException{constructor(e=""){super(e)}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::CollocationOptimizationException"}},Ice.AlreadyRegisteredException=class extends Ice.LocalException{constructor(e="",t="",n=""){super(n),this.kindOfObject=e,this.id=t}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::AlreadyRegisteredException"}},Ice.NotRegisteredException=class extends Ice.LocalException{constructor(e="",t="",n=""){super(n),this.kindOfObject=e,this.id=t}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::NotRegisteredException"}},Ice.TwowayOnlyException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.operation=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::TwowayOnlyException"}},Ice.CloneNotImplementedException=class extends Ice.LocalException{constructor(e=""){super(e)}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::CloneNotImplementedException"}},Ice.UnknownException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.unknown=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::UnknownException"}},Ice.UnknownLocalException=class extends Ice.UnknownException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.UnknownException}static get _id(){return"::Ice::UnknownLocalException"}},Ice.UnknownUserException=class extends Ice.UnknownException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.UnknownException}static get _id(){return"::Ice::UnknownUserException"}},Ice.VersionMismatchException=class extends Ice.LocalException{constructor(e=""){super(e)}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::VersionMismatchException"}},Ice.CommunicatorDestroyedException=class extends Ice.LocalException{constructor(e=""){super(e)}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::CommunicatorDestroyedException"}},Ice.ObjectAdapterDeactivatedException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.name=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::ObjectAdapterDeactivatedException"}},Ice.ObjectAdapterIdInUseException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.id=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::ObjectAdapterIdInUseException"}},Ice.NoEndpointException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.proxy=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::NoEndpointException"}},Ice.EndpointParseException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.str=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::EndpointParseException"}},Ice.EndpointSelectionTypeParseException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.str=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::EndpointSelectionTypeParseException"}},Ice.VersionParseException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.str=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::VersionParseException"}},Ice.IdentityParseException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.str=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::IdentityParseException"}},Ice.ProxyParseException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.str=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::ProxyParseException"}},Ice.IllegalIdentityException=class extends Ice.LocalException{constructor(e=new Ice.Identity,t=""){super(t),this.id=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::IllegalIdentityException"}},Ice.IllegalServantException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.reason=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::IllegalServantException"}},Ice.RequestFailedException=class extends Ice.LocalException{constructor(e=new Ice.Identity,t="",n="",i=""){super(i),this.id=e,this.facet=t,this.operation=n}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::RequestFailedException"}},Ice.ObjectNotExistException=class extends Ice.RequestFailedException{constructor(e,t,n,i=""){super(e,t,n,i)}static get _parent(){return Ice.RequestFailedException}static get _id(){return"::Ice::ObjectNotExistException"}},Ice.FacetNotExistException=class extends Ice.RequestFailedException{constructor(e,t,n,i=""){super(e,t,n,i)}static get _parent(){return Ice.RequestFailedException}static get _id(){return"::Ice::FacetNotExistException"}},Ice.OperationNotExistException=class extends Ice.RequestFailedException{constructor(e,t,n,i=""){super(e,t,n,i)}static get _parent(){return Ice.RequestFailedException}static get _id(){return"::Ice::OperationNotExistException"}},Ice.SyscallException=class extends Ice.LocalException{constructor(e=0,t=""){super(t),this.error=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::SyscallException"}},Ice.SocketException=class extends Ice.SyscallException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.SyscallException}static get _id(){return"::Ice::SocketException"}},Ice.CFNetworkException=class extends Ice.SocketException{constructor(e,t="",n=""){super(e,n),this.domain=t}static get _parent(){return Ice.SocketException}static get _id(){return"::Ice::CFNetworkException"}},Ice.FileException=class extends Ice.SyscallException{constructor(e,t="",n=""){super(e,n),this.path=t}static get _parent(){return Ice.SyscallException}static get _id(){return"::Ice::FileException"}},Ice.ConnectFailedException=class extends Ice.SocketException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.SocketException}static get _id(){return"::Ice::ConnectFailedException"}},Ice.ConnectionRefusedException=class extends Ice.ConnectFailedException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ConnectFailedException}static get _id(){return"::Ice::ConnectionRefusedException"}},Ice.ConnectionLostException=class extends Ice.SocketException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.SocketException}static get _id(){return"::Ice::ConnectionLostException"}},Ice.DNSException=class extends Ice.LocalException{constructor(e=0,t="",n=""){super(n),this.error=e,this.host=t}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::DNSException"}},Ice.OperationInterruptedException=class extends Ice.LocalException{constructor(e=""){super(e)}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::OperationInterruptedException"}},Ice.TimeoutException=class extends Ice.LocalException{constructor(e=""){super(e)}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::TimeoutException"}},Ice.ConnectTimeoutException=class extends Ice.TimeoutException{constructor(e=""){super(e)}static get _parent(){return Ice.TimeoutException}static get _id(){return"::Ice::ConnectTimeoutException"}},Ice.CloseTimeoutException=class extends Ice.TimeoutException{constructor(e=""){super(e)}static get _parent(){return Ice.TimeoutException}static get _id(){return"::Ice::CloseTimeoutException"}},Ice.ConnectionTimeoutException=class extends Ice.TimeoutException{constructor(e=""){super(e)}static get _parent(){return Ice.TimeoutException}static get _id(){return"::Ice::ConnectionTimeoutException"}},Ice.InvocationTimeoutException=class extends Ice.TimeoutException{constructor(e=""){super(e)}static get _parent(){return Ice.TimeoutException}static get _id(){return"::Ice::InvocationTimeoutException"}},Ice.InvocationCanceledException=class extends Ice.LocalException{constructor(e=""){super(e)}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::InvocationCanceledException"}},Ice.ProtocolException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.reason=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::ProtocolException"}},Ice.BadMagicException=class extends Ice.ProtocolException{constructor(e,t=null,n=""){super(e,n),this.badMagic=t}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::BadMagicException"}},Ice.UnsupportedProtocolException=class extends Ice.ProtocolException{constructor(e,t=new Ice.ProtocolVersion,n=new Ice.ProtocolVersion,i=""){super(e,i),this.bad=t,this.supported=n}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::UnsupportedProtocolException"}},Ice.UnsupportedEncodingException=class extends Ice.ProtocolException{constructor(e,t=new Ice.EncodingVersion,n=new Ice.EncodingVersion,i=""){super(e,i),this.bad=t,this.supported=n}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::UnsupportedEncodingException"}},Ice.UnknownMessageException=class extends Ice.ProtocolException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::UnknownMessageException"}},Ice.ConnectionNotValidatedException=class extends Ice.ProtocolException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::ConnectionNotValidatedException"}},Ice.UnknownRequestIdException=class extends Ice.ProtocolException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::UnknownRequestIdException"}},Ice.UnknownReplyStatusException=class extends Ice.ProtocolException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::UnknownReplyStatusException"}},Ice.CloseConnectionException=class extends Ice.ProtocolException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::CloseConnectionException"}},Ice.ConnectionManuallyClosedException=class extends Ice.LocalException{constructor(e=!1,t=""){super(t),this.graceful=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::ConnectionManuallyClosedException"}},Ice.IllegalMessageSizeException=class extends Ice.ProtocolException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::IllegalMessageSizeException"}},Ice.CompressionException=class extends Ice.ProtocolException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::CompressionException"}},Ice.DatagramLimitException=class extends Ice.ProtocolException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::DatagramLimitException"}},Ice.MarshalException=class extends Ice.ProtocolException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.ProtocolException}static get _id(){return"::Ice::MarshalException"}},Ice.ProxyUnmarshalException=class extends Ice.MarshalException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.MarshalException}static get _id(){return"::Ice::ProxyUnmarshalException"}},Ice.UnmarshalOutOfBoundsException=class extends Ice.MarshalException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.MarshalException}static get _id(){return"::Ice::UnmarshalOutOfBoundsException"}},Ice.NoValueFactoryException=class extends Ice.MarshalException{constructor(e,t="",n=""){super(e,n),this.type=t}static get _parent(){return Ice.MarshalException}static get _id(){return"::Ice::NoValueFactoryException"}},Ice.UnexpectedObjectException=class extends Ice.MarshalException{constructor(e,t="",n="",i=""){super(e,i),this.type=t,this.expectedType=n}static get _parent(){return Ice.MarshalException}static get _id(){return"::Ice::UnexpectedObjectException"}},Ice.MemoryLimitException=class extends Ice.MarshalException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.MarshalException}static get _id(){return"::Ice::MemoryLimitException"}},Ice.StringConversionException=class extends Ice.MarshalException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.MarshalException}static get _id(){return"::Ice::StringConversionException"}},Ice.EncapsulationException=class extends Ice.MarshalException{constructor(e,t=""){super(e,t)}static get _parent(){return Ice.MarshalException}static get _id(){return"::Ice::EncapsulationException"}},Ice.FeatureNotSupportedException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.unsupportedFeature=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::FeatureNotSupportedException"}},Ice.SecurityException=class extends Ice.LocalException{constructor(e="",t=""){super(t),this.reason=e}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::SecurityException"}},Ice.FixedProxyException=class extends Ice.LocalException{constructor(e=""){super(e)}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::FixedProxyException"}},Ice.ResponseSentException=class extends Ice.LocalException{constructor(e=""){super(e)}static get _parent(){return Ice.LocalException}static get _id(){return"::Ice::ResponseSentException"}},function(){const e=Ice.CommunicatorDestroyedException;class t{constructor(e){this._logger=e,this._destroyed=!1,this._tokenId=0,this._tokens=new Map}destroy(){this._tokens.forEach((e,t)=>this.cancel(t)),this._destroyed=!0,this._tokens.clear()}schedule(n,i){if(this._destroyed)throw new e;const s=this._tokenId++,r=t.setTimeout(()=>this.handleTimeout(s),i);return this._tokens.set(s,{callback:n,id:r,isInterval:!1}),s}scheduleRepeated(n,i){if(this._destroyed)throw new e;const s=this._tokenId++,r=t.setInterval(()=>this.handleInterval(s),i);return this._tokens.set(s,{callback:n,id:r,isInterval:!0}),s}cancel(e){if(this._destroyed)return!1;const n=this._tokens.get(e);return void 0!==n&&(this._tokens.delete(e),n.isInterval?t.clearInterval(n.id):t.clearTimeout(n.id),!0)}handleTimeout(e){if(this._destroyed)return;const t=this._tokens.get(e);if(void 0!==t){this._tokens.delete(e);try{t.callback()}catch(e){this._logger.warning("uncaught exception while executing timer:\n"+e)}}}handleInterval(e){if(this._destroyed)return;const t=this._tokens.get(e);if(void 0!==t)try{t.callback()}catch(e){this._logger.warning("uncaught exception while executing timer:\n"+e)}}}t.setTimeout=Ice.Timer.setTimeout,t.clearTimeout=Ice.Timer.clearTimeout,t.setInterval=Ice.Timer.setInterval,t.clearInterval=Ice.Timer.clearInterval,t.setImmediate=Ice.Timer.setImmediate,Ice.Timer=t}(),function(){const e=Ice.UnexpectedObjectException,t=Ice.MemoryLimitException;Ice.ExUtil={throwUOE:function(t,n){const i=n.ice_id();throw new e("expected element of type `"+t+"' but received `"+i+"'",i,t)},throwMemoryLimitException:function(e,n){throw new t("requested "+e+" bytes, maximum allowed is "+n+" bytes (see Ice.MessageSizeMax)")}}}(),function(){class e{constructor(e){void 0!==e&&e.length>0?this._prefix=e+": ":this._prefix="",this._dateformat={year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!1}}print(e){this.write(e,!1)}trace(e,t){const n=[];n.push("-- "),n.push(this.timestamp()),n.push(" "),n.push(this._prefix),n.push(e),n.push(": "),n.push(t),this.write(n.join(""),!0)}warning(e){const t=[];t.push("-! "),t.push(this.timestamp()),t.push(" "),t.push(this._prefix),t.push("warning: "),t.push(e),this.write(t.join(""),!0)}error(e){const t=[];t.push("!! "),t.push(this.timestamp()),t.push(" "),t.push(this._prefix),t.push("error: "),t.push(e),this.write(t.join(""),!0)}cloneWithPrefix(t){return new e(t)}write(e,t){t&&(e=e.replace(/\n/g,"\n ")),console.log(e)}timestamp(){const e=new Date;return e.toLocaleString("en-US",this._dateformat)+"."+e.getMilliseconds()}}Ice.Logger=e}(),function(){Ice.SliceInfo=class{constructor(){this.typeId="",this.compactId=-1,this.bytes=[],this.instances=[],this.hasOptionalMembers=!1,this.isLastSlice=!1}};Ice.SlicedData=class{constructor(e){this.slices=e}};Ice.UnknownSlicedValue=class extends Ice.Value{constructor(e){super(),this._unknownTypeId=e}ice_getSlicedData(){return this._slicedData}ice_id(){return this._unknownTypeId}_iceWrite(e){e.startValue(this._slicedData),e.endValue()}_iceRead(e){e.startValue(),this._slicedData=e.endValue(!0)}}}(),function(){const e=Ice.StringUtil,t={};function n(t){const n=t.indexOf(".");if(-1===n)throw new Ice.VersionParseException("malformed version value `"+t+"'");try{const i=e.toInt(t.substring(0,n));if(i<1||i>255)throw new Ice.VersionParseException("range error in version `"+t+"'");return i}catch(e){throw new Ice.VersionParseException("invalid version value `"+t+"'")}}function i(t){const n=t.indexOf(".");if(-1===n)throw new Ice.VersionParseException("malformed version value `"+t+"'");try{const i=e.toInt(t.substring(n+1));if(i<0||i>255)throw new Ice.VersionParseException("range error in version `"+t+"'");return i}catch(e){throw new Ice.VersionParseException("invalid version value `"+t+"'")}}function s(e,t){return e+"."+t}Ice.Encoding_1_0=new Ice.EncodingVersion(1,0),Ice.Encoding_1_1=new Ice.EncodingVersion(1,1),Ice.Protocol_1_0=new Ice.ProtocolVersion(1,0),t.headerSize=14,t.magic=new Uint8Array([73,99,101,80]),t.protocolMajor=1,t.protocolMinor=0,t.protocolEncodingMajor=1,t.protocolEncodingMinor=0,t.encodingMajor=1,t.encodingMinor=1,t.requestMsg=0,t.requestBatchMsg=1,t.replyMsg=2,t.validateConnectionMsg=3,t.closeConnectionMsg=4,t.replyOK=0,t.replyUserException=1,t.replyObjectNotExist=2,t.replyFacetNotExist=3,t.replyOperationNotExist=4,t.replyUnknownLocalException=5,t.replyUnknownUserException=6,t.replyUnknownException=7,t.requestHdr=new Uint8Array([t.magic[0],t.magic[1],t.magic[2],t.magic[3],t.protocolMajor,t.protocolMinor,t.protocolEncodingMajor,t.protocolEncodingMinor,t.requestMsg,0,0,0,0,0,0,0,0,0]),t.requestBatchHdr=new Uint8Array([t.magic[0],t.magic[1],t.magic[2],t.magic[3],t.protocolMajor,t.protocolMinor,t.protocolEncodingMajor,t.protocolEncodingMinor,t.requestBatchMsg,0,0,0,0,0,0,0,0,0]),t.replyHdr=new Uint8Array([t.magic[0],t.magic[1],t.magic[2],t.magic[3],t.protocolMajor,t.protocolMinor,t.protocolEncodingMajor,t.protocolEncodingMinor,t.replyMsg,0,0,0,0,0]),t.currentProtocol=new Ice.ProtocolVersion(t.protocolMajor,t.protocolMinor),t.currentProtocolEncoding=new Ice.EncodingVersion(t.protocolEncodingMajor,t.protocolEncodingMinor),t.currentEncoding=new Ice.EncodingVersion(t.encodingMajor,t.encodingMinor),t.checkSupportedProtocol=function(e){if(e.major!==t.currentProtocol.major||e.minor>t.currentProtocol.minor)throw new Ice.UnsupportedProtocolException("",e,t.currentProtocol)},t.checkSupportedProtocolEncoding=function(e){if(e.major!==t.currentProtocolEncoding.major||e.minor>t.currentProtocolEncoding.minor)throw new Ice.UnsupportedEncodingException("",e,t.currentProtocolEncoding)},t.checkSupportedEncoding=function(e){if(e.major!==t.currentEncoding.major||e.minor>t.currentEncoding.minor)throw new Ice.UnsupportedEncodingException("",e,t.currentEncoding)},t.getCompatibleProtocol=function(e){return e.major!==t.currentProtocol.major?e:e.minor{t=i,n=s,void 0!==e&&e(i,s)}),this.resolve=t,this.reject=n}delay(n){return this.then(i=>new t((t,s)=>e.setTimeout(()=>t(i),n)),i=>new t((t,s)=>e.setTimeout(()=>s(i),n)))}static get[Symbol.species](){return t}static delay(n,i){return new t(t=>e.setTimeout(()=>t(i),n))}static try(e){return t.resolve().then(e)}}Ice.Promise=t}(),function(){Ice.AsyncResultBase=class extends Ice.Promise{constructor(e,t,n,i,s){super(),this._communicator=e,this._instance=null!==e?e.instance:null,this._operation=t,this._connection=n,this._proxy=i,this._adapter=s}get communicator(){return this._communicator}get connection(){return this._connection}get proxy(){return this._proxy}get adapter(){return this._adapter}get operation(){return this._operation}}}(),function(){const e=Ice.Debug,t=Ice.Protocol,n=Ice.StringUtil,i=Ice.OperationMode,s=Ice.Identity,r=new Map;function o(e,t){let i=Ice.ToStringMode.Unicode;null!==t.instance&&(i=t.instance.toStringMode());const r=new s;r._read(t),e.push("\nidentity = "+Ice.identityToString(r,i));const o=Ice.StringSeqHelper.read(t);e.push("\nfacet = "),o.length>0&&e.push(n.escapeString(o[0],"",i));const c=t.readString();e.push("\noperation = "+c)}function c(e,t){o(e,t);const n=t.readByte();switch(e.push("\nmode = "+n+" "),i.valueOf(n)){case i.Normal:e.push("(normal)");break;case i.Nonmutating:e.push("(nonmutating)");break;case i.Idempotent:e.push("(idempotent)");break;default:e.push("(unknown)")}let s=t.readSize();for(e.push("\ncontext = ");s-- >0;){const n=t.readString(),i=t.readString();e.push(n+"/"+i),s>0&&e.push(", ")}const r=t.skipEncapsulation();r.equals(Ice.Encoding_1_0)||(e.push("\nencoding = "),e.push(Ice.encodingVersionToString(r)))}function a(n,i){const s=function(e,t){t.readByte(),t.readByte(),t.readByte(),t.readByte(),t.readByte(),t.readByte(),t.readByte(),t.readByte();const n=t.readByte();e.push("\nmessage type = "+n+" ("+h(n)+")");const i=t.readByte();switch(e.push("\ncompression status = "+i+" "),i){case 0:e.push("(not compressed; do not compress response, if any)");break;case 1:e.push("(not compressed; compress response, if any)");break;case 2:e.push("(compressed; compress response, if any)");break;default:e.push("(unknown)")}const s=t.readInt();return e.push("\nmessage size = "+s),n}(n,i);switch(s){case t.closeConnectionMsg:case t.validateConnectionMsg:break;case t.requestMsg:!function(e,t){const n=t.readInt();e.push("\nrequest id = "+n),0===n&&e.push(" (oneway)"),c(e,t)}(n,i);break;case t.requestBatchMsg:!function(e,t){const n=t.readInt();e.push("\nnumber of requests = "+n);for(let i=0;i=1){const i=e.pos,s=new Ice.InputStream(e.instance,e.getEncoding(),e.buffer);s.pos=0;const r=[],o=a(r,s);t.trace(n.protocolCat,"sending "+h(o)+" "+r.join("")),e.pos=i}}static traceRecv(e,t,n){if(n.protocol>=1){const i=e.pos;e.pos=0;const s=[],r=a(s,e);t.trace(n.protocolCat,"received "+h(r)+" "+s.join("")),e.pos=i}}static traceOut(e,t,n,i){if(i.protocol>=1){const s=t.pos,r=new Ice.InputStream(t.instance,t.getEncoding(),t.buffer);r.pos=0;const o=[];o.push(e),a(o,r),n.trace(i.protocolCat,o.join("")),t.pos=s}}static traceIn(e,t,n,i){if(i.protocol>=1){const s=t.pos;t.pos=0;const r=[];r.push(e),a(r,t),n.trace(i.protocolCat,r.join("")),t.pos=s}}static dumpStream(e){const t=e.pos;e.pos=0;const n=e.readBlob(e.size());l.dumpOctets(n),e.pos=t}static dumpOctets(e){const t=[];for(let n=0;n=32&&e[i]<127?t.push(String.fromCharCode(e[i])):t.push(".");t.push('"\n')}console.log(t.join(""))}}Ice.TraceUtil=l}(),function(){class e extends Error{constructor(t){super(),t instanceof Ice.LocalException?this._ex=t:(Ice.Debug.assert(t instanceof e),this._ex=t._ex)}get inner(){return this._ex}}Ice.RetryException=e}(),function(){const e=Ice._ModuleRegistry,t=Ice.Debug,n=Ice.ExUtil,i=Ice.FormatType,s=Ice.OptionalFormat,r=Ice.Protocol,o=Ice.TraceUtil,c=Ice.ArrayUtil,a=Ice.SlicedData,h={NoSlice:0,ValueSlice:1,ExceptionSlice:2};Number.isNaN=Number.isNaN||function(e){return"number"==typeof e&&isNaN(e)};class l{constructor(e,t){this.index=e,this.cb=t}}class u{constructor(e,t,n,i){this._stream=e,this._encaps=t,this._sliceValues=n,this._valueFactoryManager=i,this._patchMap=null,this._unmarshaledMap=new Map,this._typeIdMap=null,this._typeIdIndex=0,this._valueList=null}readOptional(){return!1}readPendingValues(){}readTypeId(e){let t;if(null===this._typeIdMap&&(this._typeIdMap=new Map),e){if(void 0===(t=this._typeIdMap.get(this._stream.readSize())))throw new Ice.UnmarshalOutOfBoundsException}else t=this._stream.readString(),this._typeIdMap.set(++this._typeIdIndex,t);return t}newInstance(e){let t=this._valueFactoryManager.find(e),n=null;return void 0!==t&&(n=t(e)),null==n&&void 0!==(t=this._valueFactoryManager.find(""))&&(n=t(e)),null==n&&(n=this._stream.createInstance(e)),n}addPatchEntry(e,n){t.assert(e>0);const i=this._unmarshaledMap.get(e);if(null!=i)return void n(i);null===this._patchMap&&(this._patchMap=new Map);let s=this._patchMap.get(e);void 0===s&&(s=[],this._patchMap.set(e,s)),s.push(n)}unmarshal(e,n){if(this._unmarshaledMap.set(e,n),n._iceRead(this._stream),null!==this._patchMap){const i=this._patchMap.get(e);if(void 0!==i){t.assert(i.length>0);for(let e=0;e0)throw new Ice.MarshalException("invalid object id");0===(n=-n)?e(null):this.addPatchEntry(n,e)}throwException(){t.assert(this._sliceType===h.NoSlice);const e=this._stream.readBool();this._sliceType=h.ExceptionSlice,this._skipFirstSlice=!1,this.startSlice();const n=this._typeId;for(;;){const t=this._stream.createUserException(this._typeId);if(null!==t)throw t._read(this._stream),e&&this.readPendingValues(),t;this.skipSlice();try{this.startSlice()}catch(e){throw e instanceof Ice.UnmarshalOutOfBoundsException&&(e.reason="unknown exception type `"+n+"'"),e}}}startInstance(e){t.assert(this._sliceType===e),this._skipFirstSlice=!0}endInstance(e){if(this._sliceType===h.ValueSlice){if(this.startSlice(),0!==this._stream.readSize())throw new Ice.MarshalException("invalid Object slice");this.endSlice()}return this._sliceType=h.NoSlice,null}startSlice(){if(this._skipFirstSlice)return this._skipFirstSlice=!1,this._typeId;if(this._sliceType===h.ValueSlice){const e=this._stream.readBool();this._typeId=this.readTypeId(e)}else this._typeId=this._stream.readString();if(this._sliceSize=this._stream.readInt(),this._sliceSize<4)throw new Ice.UnmarshalOutOfBoundsException;return this._typeId}endSlice(){}skipSlice(){this._stream.traceSkipSlice(this._typeId,this._sliceType),t.assert(this._sliceSize>=4),this._stream.skip(this._sliceSize-4)}readPendingValues(){let e;do{for(let t=e=this._stream.readSize();t>0;--t)this.readInstance()}while(e>0);if(null!==this._patchMap&&0!==this._patchMap.size)throw new Ice.MarshalException("index for class received, but no instance")}readInstance(){const e=this._stream.readInt();let t=null;if(e<=0)throw new Ice.MarshalException("invalid object id");this._sliceType=h.ValueSlice,this._skipFirstSlice=!1,this.startSlice();const n=this._typeId;for(;;){if(this._typeId==Ice.Value.ice_staticId())throw new Ice.NoValueFactoryException("",n);if(t=this.newInstance(this._typeId))break;if(!this._sliceValues)throw new Ice.NoValueFactoryException("no value factory found and slicing is disabled",this._typeId);this.skipSlice(),this.startSlice()}this.unmarshal(e,t)}}class p extends u{constructor(e,t,n,i,s){super(e,t,n,i),this._compactIdResolver=s,this._current=null,this._valueIdIndex=1}readValue(e){const t=this._stream.readSize();if(t<0)throw new Ice.MarshalException("invalid object id");0===t?null!==e&&e(null):null!==this._current&&0!=(this._current.sliceFlags&r.FLAG_HAS_INDIRECTION_TABLE)?null!==e&&(null===this._current.indirectPatchList&&(this._current.indirectPatchList=[]),this._current.indirectPatchList.push(new l(t-1,e))):this.readInstance(t,e)}throwException(){t.assert(null===this._current),this.push(h.ExceptionSlice),this.startSlice();const e=this._current.typeId;for(;;){const t=this._stream.createUserException(this._current.typeId);if(null!==t)throw t._read(this._stream),t;if(this.skipSlice(),0!=(this._current.sliceFlags&r.FLAG_IS_LAST_SLICE)){if(0===e.indexOf("::"))throw new Ice.UnknownUserException(e.substr(2));throw new Ice.UnknownUserException(e)}this.startSlice()}}startInstance(e){t.assert(void 0!==e),t.assert(null!==this._current.sliceType&&this._current.sliceType===e),this._current.skipFirstSlice=!0}endInstance(e){let t=null;return e&&(t=this.readSlicedData()),null!==this._current.slices&&(this._current.slices.length=0,this._current.indirectionTables.length=0),this._current=this._current.previous,t}startSlice(){if(this._current.skipFirstSlice)return this._current.skipFirstSlice=!1,this._current.typeId;if(this._current.sliceFlags=this._stream.readByte(),this._current.sliceType===h.ValueSlice?(this._current.sliceFlags&r.FLAG_HAS_TYPE_ID_COMPACT)===r.FLAG_HAS_TYPE_ID_COMPACT?(this._current.typeId="",this._current.compactId=this._stream.readSize()):0!=(this._current.sliceFlags&(r.FLAG_HAS_TYPE_ID_INDEX|r.FLAG_HAS_TYPE_ID_STRING))?(this._current.typeId=this.readTypeId(0!=(this._current.sliceFlags&r.FLAG_HAS_TYPE_ID_INDEX)),this._current.compactId=-1):(this._current.typeId="",this._current.compactId=-1):(this._current.typeId=this._stream.readString(),this._current.compactId=-1),0!=(this._current.sliceFlags&r.FLAG_HAS_SLICE_SIZE)){if(this._current.sliceSize=this._stream.readInt(),this._current.sliceSize<4)throw new Ice.UnmarshalOutOfBoundsException}else this._current.sliceSize=0;return this._current.typeId}endSlice(){if(0!=(this._current.sliceFlags&r.FLAG_HAS_OPTIONAL_MEMBERS)&&this._stream.skipOptionals(),0!=(this._current.sliceFlags&r.FLAG_HAS_INDIRECTION_TABLE)){const e=[],n=this._stream.readAndCheckSeqSize(1);for(let t=0;t{if(t.assert(n.index>=0),n.index>=e.length)throw new Ice.MarshalException("indirection out of range");this.addPatchEntry(e[n.index],n.cb)}),this._current.indirectPatchList.length=0)}}skipSlice(){this._stream.traceSkipSlice(this._current.typeId,this._current.sliceType);const e=this._stream.pos;if(0==(this._current.sliceFlags&r.FLAG_HAS_SLICE_SIZE))throw this._current.sliceType===h.ValueSlice?new Ice.NoValueFactoryException("no value factory found and compact format prevents slicing (the sender should use the sliced format instead)",this._current.typeId):0===this._current.typeId.indexOf("::")?new Ice.UnknownUserException(this._current.typeId.substring(2)):new Ice.UnknownUserException(this._current.typeId);t.assert(this._current.sliceSize>=4),this._stream.skip(this._current.sliceSize-4);const n=new Ice.SliceInfo;n.typeId=this._current.typeId,n.compactId=this._current.compactId,n.hasOptionalMembers=0!=(this._current.sliceFlags&r.FLAG_HAS_OPTIONAL_MEMBERS),n.isLastSlice=0!=(this._current.sliceFlags&r.FLAG_IS_LAST_SLICE);const i=this._stream._buf,s=i.position;let o=s;if(n.hasOptionalMembers&&--o,i.position=e,n.bytes=i.getArray(o-e),i.position=s,null===this._current.slices&&(this._current.slices=[],this._current.indirectionTables=[]),0!=(this._current.sliceFlags&r.FLAG_HAS_INDIRECTION_TABLE)){const e=this._stream.readAndCheckSeqSize(1),t=[];for(let n=0;n0);let i=null;if(e>1)return null!==n&&this.addPatchEntry(e,n),e;this.push(h.ValueSlice),e=++this._valueIdIndex,this.startSlice();const s=this._current.typeId;for(;;){if(this._current.compactId>=0){if(this._current.typeId="",null!==this._compactIdResolver)try{this._current.typeId=this._compactIdResolver.call(null,this._current.compactId)}catch(e){if(!(e instanceof Ice.LocalException))throw new Ice.MarshalException("exception in CompactIdResolver for ID "+this._current.compactId,e);throw e}0===this._current.typeId.length&&(this._current.typeId=this._stream.resolveCompactId(this._current.compactId))}if(this._current.typeId.length>0&&(i=this.newInstance(this._current.typeId)),null!=i)break;if(!this._sliceValues)throw new Ice.NoValueFactoryException("no value factory found and slicing is disabled",this._current.typeId);if(this.skipSlice(),0!=(this._current.sliceFlags&r.FLAG_IS_LAST_SLICE)){i=new Ice.UnknownSlicedValue(s);break}this.startSlice()}if(this.unmarshal(e,i),null===this._current&&null!==this._patchMap&&0!==this._patchMap.size)throw new Ice.MarshalException("index for class received, but no instance");return null!==n&&n(i),e}readSlicedData(){if(null===this._current.slices)return null;t.assert(this._current.slices.length===this._current.indirectionTables.length);for(let e=0;e{null===s||s instanceof i||n.throwUOE(i.ice_staticId(),s),e[t]=s}};class g{constructor(){this.start=0,this.sz=0,this.encoding=null,this.encoding_1_0=!1,this.decoder=null,this.next=null}reset(){this.decoder=null}setEncoding(e){this.encoding=e,this.encoding_1_0=e.equals(Ice.Encoding_1_0)}}class I{constructor(e,t,n){const i={instance:null,encoding:null,bytes:null,buffer:null};this._checkArgs([e,t,n],i),this._initialize(i)}_checkArgs(e,t){if(e.forEach(e=>{if(null!=e)if(e.constructor===Ice.Communicator)t.instance=e.instance;else if(e.constructor===Ice.Instance)t.instance=e;else if(e.constructor===Ice.EncodingVersion)t.encoding=e;else if(e.constructor===Ice.Buffer)t.buffer=e;else if(e.constructor===ArrayBuffer)t.bytes=e;else{if(e.constructor!==Uint8Array)throw new Ice.InitializationException("unknown argument to InputStream constructor");t.bytes=e.buffer}}),null!==t.buffer&&null!==t.bytes)throw new Ice.InitializationException("invalid argument to InputStream constructor")}_initialize(e){this._instance=e.instance,this._encoding=e.encoding,this._encapsStack=null,this._encapsCache=null,this._closure=null,this._sliceValues=!0,this._startSeq=-1,this._sizePos=-1,this._compactIdResolver=null,null!==this._instance?(null===this._encoding&&(this._encoding=this._instance.defaultsAndOverrides().defaultEncoding),this._traceSlicing=this._instance.traceLevels().slicing>0,this._valueFactoryManager=this._instance.initializationData().valueFactoryManager,this._logger=this._instance.initializationData().logger):(null===this._encoding&&(this._encoding=r.currentEncoding),this._traceSlicing=!1,this._valueFactoryManager=null,this._logger=null),null!==e.bytes?this._buf=new Ice.Buffer(e.bytes):null!==e.buffer?this._buf=e.buffer:this._buf=new Ice.Buffer}reset(){this._buf.reset(),this.clear()}clear(){null!==this._encapsStack&&(t.assert(null===this._encapsStack.next),this._encapsStack.next=this._encapsCache,this._encapsCache=this._encapsStack,this._encapsCache.reset(),this._encapsStack=null),this._startSeq=-1,this._sliceValues=!0}swap(e){t.assert(this._instance===e._instance),[e._buf,this._buf]=[this._buf,e._buf],[e._encoding,this._encoding]=[this._encoding,e._encoding],[e._traceSlicing,this._traceSlicing]=[this._traceSlicing,e._traceSlicing],[e._closure,this._closure]=[this._closure,e.closure],[e._sliceValues,this._sliceValues]=[this._sliceValues,e._sliceValues],this.resetEncapsulation(),e.resetEncapsulation(),[e._startSeq,this._startSeq]=[this._startSeq,e._startSeq],[e._minSeqSize,this._minSeqSize]=[this._minSeqSize,e._minSeqSize],[e._sizePos,this._sizePos]=[this._sizePos,e._sizePos],[e._valueFactoryManager,this._valueFactoryManager]=[this._valueFactoryManager,e._valueFactoryManager],[e._logger,this._logger]=[this._logger,e._logger],[e._compactIdResolver,this._compactIdResolver]=[this._compactIdResolver,e._compactIdResolver]}resetEncapsulation(){this._encapsStack=null}resize(e){this._buf.resize(e),this._buf.position=e}startValue(){t.assert(null!==this._encapsStack&&null!==this._encapsStack.decoder),this._encapsStack.decoder.startInstance(h.ValueSlice)}endValue(e){return t.assert(null!==this._encapsStack&&null!==this._encapsStack.decoder),this._encapsStack.decoder.endInstance(e)}startException(){t.assert(null!==this._encapsStack&&null!==this._encapsStack.decoder),this._encapsStack.decoder.startInstance(h.ExceptionSlice)}endException(e){return t.assert(null!==this._encapsStack&&null!==this._encapsStack.decoder),this._encapsStack.decoder.endInstance(e)}startEncapsulation(){let e=this._encapsCache;null!==e?(e.reset(),this._encapsCache=this._encapsCache.next):e=new g,e.next=this._encapsStack,this._encapsStack=e,this._encapsStack.start=this._buf.position;const t=this.readInt();if(t<6)throw new Ice.UnmarshalOutOfBoundsException;if(t-4>this._buf.remaining)throw new Ice.UnmarshalOutOfBoundsException;this._encapsStack.sz=t;const n=new Ice.EncodingVersion;return n._read(this),r.checkSupportedEncoding(n),this._encapsStack.setEncoding(n),n}endEncapsulation(){if(t.assert(null!==this._encapsStack),this._encapsStack.encoding_1_0){if(this._buf.position!==this._encapsStack.start+this._encapsStack.sz){if(this._buf.position+1!==this._encapsStack.start+this._encapsStack.sz)throw new Ice.EncapsulationException;try{this._buf.get()}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}}else if(this.skipOptionals(),this._buf.position!==this._encapsStack.start+this._encapsStack.sz)throw new Ice.EncapsulationException;const e=this._encapsStack;this._encapsStack=e.next,e.next=this._encapsCache,this._encapsCache=e,this._encapsCache.reset()}skipEmptyEncapsulation(){const e=this.readInt();if(e<6)throw new Ice.EncapsulationException;if(e-4>this._buf.remaining)throw new Ice.UnmarshalOutOfBoundsException;const t=new Ice.EncodingVersion;if(t._read(this),r.checkSupportedEncoding(t),t.equals(Ice.Encoding_1_0)){if(6!=e)throw new Ice.EncapsulationException}else this._buf.position=this._buf.position+e-6;return t}readEncapsulation(e){t.assert(void 0!==e);const n=this.readInt();if(n<6)throw new Ice.UnmarshalOutOfBoundsException;if(n-4>this._buf.remaining)throw new Ice.UnmarshalOutOfBoundsException;null!==e?(e._read(this),this._buf.position=this._buf.position-6):this._buf.position=this._buf.position-4;try{return this._buf.getArray(n)}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}getEncoding(){return null!==this._encapsStack?this._encapsStack.encoding:this._encoding}getEncapsulationSize(){return t.assert(null!==this._encapsStack),this._encapsStack.sz-6}skipEncapsulation(){const e=this.readInt();if(e<6)throw new Ice.UnmarshalOutOfBoundsException;const t=new Ice.EncodingVersion;t._read(this);try{this._buf.position=this._buf.position+e-6}catch(e){throw new Ice.UnmarshalOutOfBoundsException}return t}startSlice(){return t.assert(null!==this._encapsStack&&null!==this._encapsStack.decoder),this._encapsStack.decoder.startSlice()}endSlice(){t.assert(null!==this._encapsStack&&null!==this._encapsStack.decoder),this._encapsStack.decoder.endSlice()}skipSlice(){t.assert(null!==this._encapsStack&&null!==this._encapsStack.decoder),this._encapsStack.decoder.skipSlice()}readPendingValues(){null!==this._encapsStack&&null!==this._encapsStack.decoder?this._encapsStack.decoder.readPendingValues():(null!==this._encapsStack&&this._encapsStack.encoding_1_0||null===this._encapsStack&&this._encoding.equals(Ice.Encoding_1_0))&&this.skipSize()}readSize(){try{const e=this._buf.get();if(255===e){const e=this._buf.getInt();if(e<0)throw new Ice.UnmarshalOutOfBoundsException;return e}return e}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readAndCheckSeqSize(e){const t=this.readSize();if(0===t)return t;if(-1===this._startSeq||this._buf.position>this._startSeq+this._minSeqSize?(this._startSeq=this._buf.position,this._minSeqSize=t*e):this._minSeqSize+=t*e,this._startSeq+this._minSeqSize>this._buf.limit)throw new Ice.UnmarshalOutOfBoundsException;return t}readBlob(e){if(this._buf.remaining{null===i||i instanceof t||n.throwUOE(t.ice_staticId(),i),e(i)})}readOptionalValue(e,t,n){this.readOptional(e,s.Class)?this.readValue(t,n):t(void 0)}throwException(){this.initEncaps(),this._encapsStack.decoder.throwException()}readOptImpl(e,t){if(this.isEncoding_1_0())return!1;for(;;){if(this._buf.position>=this._encapsStack.start+this._encapsStack.sz)return!1;const n=this.readByte();if(n===r.OPTIONAL_END_MARKER)return this._buf.position-=1,!1;const i=s.valueOf(7&n);let o=n>>3;if(30===o&&(o=this.readSize()),o>e){const e=o<30?1:o<255?2:6;return this._buf.position-=e,!1}if(!(o=this._encapsStack.start+this._encapsStack.sz)return;const e=this.readByte(),t=e<0?e+256:e;if(t===r.OPTIONAL_END_MARKER)return;const n=s.valueOf(7&t);t>>3==30&&this.skipSize(),this.skipOptional(n)}}skip(e){if(e>this._buf.remaining)throw new Ice.UnmarshalOutOfBoundsException;this._buf.position+=e}skipSize(){255===this.readByte()&&this.skip(4)}isEmpty(){return this._buf.empty()}expand(e){this._buf.expand(e)}createInstance(t){let n=null;try{const i=t.length>2?t.substr(2).replace(/::/g,"."):"",s=e.type(i);void 0!==s&&(n=new s)}catch(e){throw new Ice.NoValueFactoryException("no value factory",t,e)}return n}createUserException(t){let n=null;try{const i=t.length>2?t.substr(2).replace(/::/g,"."):"",s=e.type(i);void 0!==s&&(n=new s)}catch(e){throw new Ice.MarshalException(e)}return n}resolveCompactId(e){const t=Ice.CompactIdRegistry.get(e);return void 0===t?"":t}isEncoding_1_0(){return null!==this._encapsStack?this._encapsStack.encoding_1_0:this._encoding.equals(Ice.Encoding_1_0)}initEncaps(){null===this._encapsStack&&(this._encapsStack=this._encapsCache,null!==this._encapsStack?this._encapsCache=this._encapsCache.next:this._encapsStack=new g,this._encapsStack.setEncoding(this._encoding),this._encapsStack.sz=this._buf.limit),null===this._encapsStack.decoder&&(this._encapsStack.encoding_1_0?this._encapsStack.decoder=new d(this,this._encapsStack,this._sliceValues,this._valueFactoryManager):this._encapsStack.decoder=new p(this,this._encapsStack,this._sliceValues,this._valueFactoryManager,this._compactIdResolver))}traceSkipSlice(e,t){this._traceSlicing&&null!==this._logger&&o.traceSlicing(t===h.ExceptionSlice?"exception":"object",e,"Slicing",this._logger)}get valueFactoryManager(){return this._valueFactoryManager}set valueFactoryManager(e){this._valueFactoryManager=void 0!==e?e:null}get logger(){return this._logger}set logger(e){this._logger=void 0!==e?e:null}get compactIdResolver(){return this._compactIdResolver}set compactIdResolver(e){this._compactIdResolver=void 0!==e?e:null}get sliceValues(){return this._sliceValues}set sliceValues(e){this._sliceValues=e}get traceSlicing(){return this._traceSlicing}set traceSlicing(e){this._traceSlicing=e}get pos(){return this._buf.position}set pos(e){this._buf.position=e}get size(){return this._buf.limit}get instance(){return this._instance}get closure(){return this._type}set closure(e){this._type=e}get buffer(){return this._buf}}class f{constructor(e,t){this._stream=e,this._encaps=t,this._marshaledMap=new Map,this._typeIdMap=null,this._typeIdIndex=0}writeOptional(){return!1}writePendingValues(){}registerTypeId(e){null===this._typeIdMap&&(this._typeIdMap=new Map);const t=this._typeIdMap.get(e);return void 0!==t?t:(this._typeIdMap.set(e,++this._typeIdIndex),-1)}}class m extends f{constructor(e,t){super(e,t),this._sliceType=h.NoSlice,this._writeSlice=0,this._valueIdIndex=0,this._toBeMarshaledMap=new Map}writeValue(e){t.assert(void 0!==e),null!==e?this._stream.writeInt(-this.registerValue(e)):this._stream.writeInt(0)}writeException(e){t.assert(null!=e);const n=e._usesClasses();this._stream.writeBool(n),e._write(this._stream),n&&this.writePendingValues()}startInstance(e){this._sliceType=e}endInstance(){this._sliceType===h.ValueSlice&&(this.startSlice(Ice.Value.ice_staticId(),-1,!0),this._stream.writeSize(0),this.endSlice()),this._sliceType=h.NoSlice}startSlice(e){if(this._sliceType===h.ValueSlice){const t=this.registerTypeId(e);t<0?(this._stream.writeBool(!1),this._stream.writeString(e)):(this._stream.writeBool(!0),this._stream.writeSize(t))}else this._stream.writeString(e);this._stream.writeInt(0),this._writeSlice=this._stream.pos}endSlice(){const e=this._stream.pos-this._writeSlice+4;this._stream.rewriteInt(e,this._writeSlice-4)}writePendingValues(){const e=(e,t)=>{this._stream.writeInt(e);try{t.ice_preMarshal()}catch(e){this._stream.instance.initializationData().logger.warning("exception raised by ice_preMarshal:\n"+e.toString())}t._iceWrite(this._stream)};for(;this._toBeMarshaledMap.size>0;){this._toBeMarshaledMap.forEach((e,t)=>this._marshaledMap.set(t,e));const t=this._toBeMarshaledMap;this._toBeMarshaledMap=new Map,this._stream.writeSize(t.size),t.forEach(e)}this._stream.writeSize(0)}registerValue(e){t.assert(null!==e);let n=this._toBeMarshaledMap.get(e);return void 0!==n?n:void 0!==(n=this._marshaledMap.get(e))?n:(this._toBeMarshaledMap.set(e,++this._valueIdIndex),this._valueIdIndex)}}class w extends f{constructor(e,t){super(e,t),this._current=null,this._valueIdIndex=1}writeValue(e){if(t.assert(void 0!==e),null===e)this._stream.writeSize(0);else if(null!==this._current&&this._encaps.format===i.SlicedFormat){null===this._current.indirectionTable&&(this._current.indirectionTable=[],this._current.indirectionMap=new Map);const t=this._current.indirectionMap.get(e);if(void 0===t){this._current.indirectionTable.push(e);const t=this._current.indirectionTable.length;this._current.indirectionMap.set(e,t),this._stream.writeSize(t)}else this._stream.writeSize(t)}else this.writeInstance(e)}writePendingValues(){}writeException(e){t.assert(null!=e),e._write(this._stream)}startInstance(e,t){null===this._current?this._current=new w.InstanceData(null):this._current=null===this._current.next?new w.InstanceData(this._current):this._current.next,this._current.sliceType=e,this._current.firstSlice=!0,null!=t&&this.writeSlicedData(t)}endInstance(){this._current=this._current.previous}startSlice(e,n,s){if(t.assert(!(null!==this._current.indirectionTable&&0!==this._current.indirectionTable.length||null!==this._current.indirectionMap&&0!==this._current.indirectionMap.size)),this._current.sliceFlagsPos=this._stream.pos,this._current.sliceFlags=0,this._encaps.format===i.SlicedFormat&&(this._current.sliceFlags|=r.FLAG_HAS_SLICE_SIZE),s&&(this._current.sliceFlags|=r.FLAG_IS_LAST_SLICE),this._stream.writeByte(0),this._current.sliceType===h.ValueSlice){if(this._encaps.format===i.SlicedFormat||this._current.firstSlice)if(n>=0)this._current.sliceFlags|=r.FLAG_HAS_TYPE_ID_COMPACT,this._stream.writeSize(n);else{const t=this.registerTypeId(e);t<0?(this._current.sliceFlags|=r.FLAG_HAS_TYPE_ID_STRING,this._stream.writeString(e)):(this._current.sliceFlags|=r.FLAG_HAS_TYPE_ID_INDEX,this._stream.writeSize(t))}}else this._stream.writeString(e);0!=(this._current.sliceFlags&r.FLAG_HAS_SLICE_SIZE)&&this._stream.writeInt(0),this._current.writeSlice=this._stream.pos,this._current.firstSlice=!1}endSlice(){if(0!=(this._current.sliceFlags&r.FLAG_HAS_OPTIONAL_MEMBERS)&&this._stream.writeByte(r.OPTIONAL_END_MARKER),0!=(this._current.sliceFlags&r.FLAG_HAS_SLICE_SIZE)){const e=this._stream.pos-this._current.writeSlice+4;this._stream.rewriteInt(e,this._current.writeSlice-4)}null!==this._current.indirectionTable&&0!==this._current.indirectionTable.length&&(t.assert(this._encaps.format===i.SlicedFormat),this._current.sliceFlags|=r.FLAG_HAS_INDIRECTION_TABLE,this._stream.writeSize(this._current.indirectionTable.length),this._current.indirectionTable.forEach(e=>this.writeInstance(e)),this._current.indirectionTable.length=0,this._current.indirectionMap.clear()),this._stream.rewriteByte(this._current.sliceFlags,this._current.sliceFlagsPos)}writeOptional(e,t){return null===this._current?this._stream.writeOptImpl(e,t):!!this._stream.writeOptImpl(e,t)&&(this._current.sliceFlags|=r.FLAG_HAS_OPTIONAL_MEMBERS,!0)}writeSlicedData(e){t.assert(null!=e),this._encaps.format===i.SlicedFormat&&e.slices.forEach(e=>{this.startSlice(e.typeId,e.compactId,e.isLastSlice),this._stream.writeBlob(e.bytes),e.hasOptionalMembers&&(this._current.sliceFlags|=r.FLAG_HAS_OPTIONAL_MEMBERS),null!==e.instances&&e.instances.length>0&&(null===this._current.indirectionTable&&(this._current.indirectionTable=[],this._current.indirectionMap=new Map),e.instances.forEach(e=>this._current.indirectionTable.push(e))),this.endSlice()})}writeInstance(e){t.assert(null!=e);const n=this._marshaledMap.get(e);if(void 0===n){this._marshaledMap.set(e,++this._valueIdIndex);try{e.ice_preMarshal()}catch(e){this._stream.instance.initializationData().logger.warning("exception raised by ice_preMarshal:\n"+e.toString())}this._stream.writeSize(1),e._iceWrite(this._stream)}else this._stream.writeSize(n)}}w.InstanceData=class{constructor(e){t.assert(void 0!==e),null!==e&&(e.next=this),this.previous=e,this.next=null,this.sliceType=null,this.firstSlice=!1,this.sliceFlags=0,this.writeSlice=0,this.sliceFlagsPos=0,this.indirectionTable=null,this.indirectionMap=null}};class y{constructor(){this.start=0,this.format=i.DefaultFormat,this.encoding=null,this.encoding_1_0=!1,this.encoder=null,this.next=null}reset(){this.encoder=null}setEncoding(e){this.encoding=e,this.encoding_1_0=e.equals(Ice.Encoding_1_0)}}class x{constructor(e,t){if(this._instance=null,this._encoding=null,null!=e)if(e.constructor==Ice.Communicator)this._instance=e.instance;else if(e.constructor==Ice.Instance)this._instance=e;else{if(e.constructor!=Ice.EncodingVersion)throw new Ice.InitializationException("unknown argument to OutputStream constructor");this._encoding=e}if(null!=t){if(t.constructor!=Ice.EncodingVersion)throw new Ice.InitializationException("unknown argument to OutputStream constructor");this._encoding=t}this._buf=new Ice.Buffer,this._closure=null,this._encapsStack=null,this._encapsCache=null,null!==this._instance?(null===this._encoding&&(this._encoding=this._instance.defaultsAndOverrides().defaultEncoding),this._format=this._instance.defaultsAndOverrides().defaultFormat):(null===this._encoding&&(this._encoding=r.currentEncoding),this._format=i.CompactFormat)}reset(){this._buf.reset(),this.clear()}clear(){null!==this._encapsStack&&(t.assert(this._encapsStack.next),this._encapsStack.next=this._encapsCache,this._encapsCache=this._encapsStack,this._encapsCache.reset(),this._encapsStack=null)}finished(){return this.prepareWrite().getArray(this.size)}swap(e){t.assert(this._instance===e._instance),[e._buf,this._buf]=[this._buf,e._buf],[e._encoding,this._encoding]=[this._encoding,e._encoding],[e._closure,this._closure]=[this._closure,e._closure],this.resetEncapsulation(),e.resetEncapsulation()}resetEncapsulation(){this._encapsStack=null}resize(e){this._buf.resize(e),this._buf.position=e}prepareWrite(){return this._buf.position=0,this._buf}startValue(e){t.assert(null!==this._encapsStack&&null!==this._encapsStack.encoder),this._encapsStack.encoder.startInstance(h.ValueSlice,e)}endValue(){t.assert(null!==this._encapsStack&&null!==this._encapsStack.encoder),this._encapsStack.encoder.endInstance()}startException(e){t.assert(null!==this._encapsStack&&null!==this._encapsStack.encoder),this._encapsStack.encoder.startInstance(h.ExceptionSlice,e)}endException(){t.assert(null!==this._encapsStack&&null!==this._encapsStack.encoder),this._encapsStack.encoder.endInstance()}startEncapsulation(e,t){void 0===e&&(null!==this._encapsStack?(e=this._encapsStack.encoding,t=this._encapsStack.format):(e=this._encoding,t=i.DefaultFormat)),r.checkSupportedEncoding(e);let n=this._encapsCache;null!==n?(n.reset(),this._encapsCache=this._encapsCache.next):n=new y,n.next=this._encapsStack,this._encapsStack=n,this._encapsStack.format=t,this._encapsStack.setEncoding(e),this._encapsStack.start=this._buf.limit,this.writeInt(0),this._encapsStack.encoding._write(this)}endEncapsulation(){t.assert(this._encapsStack);const e=this._encapsStack.start,n=this._buf.limit-e;this._buf.putIntAt(e,n);const i=this._encapsStack;this._encapsStack=i.next,i.next=this._encapsCache,this._encapsCache=i,this._encapsCache.reset()}writeEmptyEncapsulation(e){r.checkSupportedEncoding(e),this.writeInt(6),e._write(this)}writeEncapsulation(e){if(e.length<6)throw new Ice.EncapsulationException;this.expand(e.length),this._buf.putArray(e)}getEncoding(){return null!==this._encapsStack?this._encapsStack.encoding:this._encoding}startSlice(e,n,i){t.assert(null!==this._encapsStack&&null!==this._encapsStack.encoder),this._encapsStack.encoder.startSlice(e,n,i)}endSlice(){t.assert(null!==this._encapsStack&&null!==this._encapsStack.encoder),this._encapsStack.encoder.endSlice()}writePendingValues(){null!==this._encapsStack&&null!==this._encapsStack.encoder?this._encapsStack.encoder.writePendingValues():(null!==this._encapsStack&&this._encapsStack.encoding_1_0||null===this._encapsStack&&this._encoding.equals(Ice.Encoding_1_0))&&this.writeSize(0)}writeSize(e){e>254?(this.expand(5),this._buf.put(255),this._buf.putInt(e)):(this.expand(1),this._buf.put(e))}startSize(){const e=this._buf.position;return this.writeInt(0),e}endSize(e){t.assert(e>=0),this.rewriteInt(this._buf.position-e-4,e)}writeBlob(e){null!==e&&(this.expand(e.length),this._buf.putArray(e))}writeOptional(e,n){return t.assert(null!==this._encapsStack),null!==this._encapsStack.encoder?this._encapsStack.encoder.writeOptional(e,n):this.writeOptImpl(e,n)}writeOptionalHelper(e,t,n,i){void 0!==i&&this.writeOptional(e,t)&&n.call(this,i)}writeByte(e){this.expand(1),this._buf.put(e)}rewriteByte(e,t){this._buf.putAt(t,e)}writeByteSeq(e){null===e||0===e.length?this.writeSize(0):(this.writeSize(e.length),this.expand(e.length),this._buf.putArray(e))}writeBool(e){this.expand(1),this._buf.put(e?1:0)}rewriteBool(e,t){this._buf.putAt(t,e?1:0)}writeShort(e){this.expand(2),this._buf.putShort(e)}writeInt(e){this.expand(4),this._buf.putInt(e)}rewriteInt(e,t){this._buf.putIntAt(t,e)}writeLong(e){this.expand(8),this._buf.putLong(e)}writeFloat(e){this.expand(4),this._buf.putFloat(e)}writeDouble(e){this.expand(8),this._buf.putDouble(e)}writeString(e){null===e||0===e.length?this.writeSize(0):this._buf.writeString(this,e)}writeProxy(e){if(null!==e)e._write(this);else{(new Ice.Identity)._write(this)}}writeOptionalProxy(e,t){if(void 0!==t&&this.writeOptional(e,s.FSize)){const e=this.startSize();this.writeProxy(t),this.endSize(e)}}writeEnum(e){this.isEncoding_1_0()?e.maxValue<127?this.writeByte(e.value):e.maxValue<32767?this.writeShort(e.value):this.writeInt(e.value):this.writeSize(e.value)}writeValue(e){this.initEncaps(),this._encapsStack.encoder.writeValue(e)}writeOptionalValue(e,t){void 0!==t&&this.writeOptional(e,s.Class)&&this.writeValue(t)}writeException(e){this.initEncaps(),this._encapsStack.encoder.writeException(e)}writeUserException(e){this.WriteException(e)}writeOptImpl(e,t){if(this.isEncoding_1_0())return!1;let n=t.value;return e<30?(n|=e<<3,this.writeByte(n)):(n|=240,this.writeByte(n),this.writeSize(e)),!0}isEmpty(){return this._buf.empty()}expand(e){this._buf.expand(e)}isEncoding_1_0(){return this._encapsStack?this._encapsStack.encoding_1_0:this._encoding.equals(Ice.Encoding_1_0)}initEncaps(){this._encapsStack||(this._encapsStack=this._encapsCache,this._encapsStack?this._encapsCache=this._encapsCache.next:this._encapsStack=new y,this._encapsStack.setEncoding(this._encoding)),this._encapsStack.format===i.DefaultFormat&&(this._encapsStack.format=this._instance.defaultsAndOverrides().defaultFormat),this._encapsStack.encoder||(this._encapsStack.encoding_1_0?this._encapsStack.encoder=new m(this,this._encapsStack):this._encapsStack.encoder=new w(this,this._encapsStack))}get format(){return this._format}set format(e){this._format=e}get pos(){return this._buf.position}set pos(e){this._buf.position=e}get size(){return this._buf.limit}get instance(){return this._instance}get closure(){return this._closure}set closure(e){this._closure=e}get buffer(){return this._buf}}const S=function(e,t,n,i,s,r){const o=class{static write(t,n){return e.call(t,n)}static read(e){return t.call(e)}static writeOptional(t,n,s){t.writeOptionalHelper(n,i,e,s)}static readOptional(e,n){return e.readOptionalHelper(n,i,t)}static get minWireSize(){return n}};return void 0!==s&&void 0!==r&&(o.validate=function(e){return e>=s&&e<=r}),o},E=I.prototype,v=x.prototype;Ice.ByteHelper=S(v.writeByte,E.readByte,1,Ice.OptionalFormat.F1,0,255),Ice.ShortHelper=S(v.writeShort,E.readShort,2,Ice.OptionalFormat.F2,-32768,32767),Ice.IntHelper=S(v.writeInt,E.readInt,4,Ice.OptionalFormat.F4,-2147483648,2147483647),Ice.FloatHelper=S(v.writeFloat,E.readFloat,4,Ice.OptionalFormat.F4,-3.4028234664e38,3.4028234664e38),Ice.FloatHelper.validate=function(e){return Number.isNaN(e)||e==Number.POSITIVE_INFINITY||e==Number.NEGATIVE_INFINITY||e>=-3.4028234664e38&&e<=3.4028234664e38},Ice.DoubleHelper=S(v.writeDouble,E.readDouble,8,Ice.OptionalFormat.F8,-Number.MAX_VALUE,Number.MAX_VALUE),Ice.DoubleHelper.validate=function(e){return Number.isNaN(e)||e==Number.POSITIVE_INFINITY||e==Number.NEGATIVE_INFINITY||e>=-Number.MAX_VALUE&&e<=Number.MAX_VALUE},Ice.BoolHelper=S(v.writeBool,E.readBool,1,Ice.OptionalFormat.F1),Ice.LongHelper=S(v.writeLong,E.readLong,8,Ice.OptionalFormat.F8),Ice.LongHelper.validate=function(e){return e.low>=0&&e.low<=4294967295&&e.high>=0&&e.high<=4294967295},Ice.StringHelper=S(v.writeString,E.readString,1,Ice.OptionalFormat.VSize),Ice.ObjectHelper=class{static write(e,t){e.writeValue(t)}static read(e){let t;return e.readValue(e=>{t=e},Ice.Value),t}static writeOptional(e,t,n){e.writeOptionalValue(t,Ice.OptionalFormat.Class,v.writeValue,n)}static readOptional(e,t){let n;return e.readOptionalValue(t,e=>{n=e},Ice.Value),n}static get minWireSize(){return 1}},Ice.InputStream=I,Ice.OutputStream=x}(),Ice.SocketOperation={None:0,Read:1,Write:2,Connect:2},function(){const e=Ice.Logger;let t=null;Ice.getProcessLogger=function(){return null===t&&(t=new e("","")),t},Ice.setProcessLogger=function(e){t=e}}(),function(){const e=Ice.OutputStream,t=Ice.Debug,n=Ice.Protocol,i=28;Ice.BatchRequestQueue=class{constructor(t,s){if(this._batchStreamInUse=!1,this._batchRequestNum=0,this._batchStream=new e(t,n.currentProtocolEncoding),this._batchStream.writeBlob(n.requestBatchHdr),this._batchMarker=this._batchStream.size,this._exception=null,this._maxSize=t.batchAutoFlushSize(),this._maxSize>0&&s){const e=t.initializationData().properties.getPropertyAsIntWithDefault("Ice.UDP.SndSize",65535-i);e0&&this._batchStream.size>=this._maxSize&&n.ice_flushBatchRequests(),t.assert(this._batchMarker0}isSent(){return(this._state&r.Sent)>0}throwLocalException(){if(null!==this._exception)throw this._exception}sentSynchronously(){return this._sentSynchronously}markSent(e){t.assert(0==(this._state&r.Done)),this._state|=r.Sent,e&&(this._state|=r.Done|r.OK,this._cancellationHandler=null,this.resolve())}markFinished(e,n){t.assert(0==(this._state&r.Done)),this._state|=r.Done,e&&(this._state|=r.OK),this._cancellationHandler=null,n?n(this):this.resolve()}markFinishedEx(e){t.assert(0==(this._state&r.Done)),this._exception=e,this._state|=r.Done,this._cancellationHandler=null,this.reject(e)}cancelWithException(e){this._cancellationHandler?this._cancellationHandler.asyncRequestCanceled(this,e):this._cancellationException=e}cancelable(e){if(this._cancellationException)try{throw this._cancellationException}finally{this._cancellationException=null}this._cancellationHandler=e}getOs(){return this._os}startReadParams(){return this._is.startEncapsulation(),this._is}endReadParams(){this._is.endEncapsulation()}readEmptyParams(){this._is.skipEmptyEncapsulation()}throwUserException(){if(t.assert(0!=(this._state&r.Done)),0==(this._state&r.OK))try{this._is.startEncapsulation(),this._is.throwException()}catch(e){throw e instanceof i&&this._is.endEncapsulation(),e}}}r.OK=1,r.Done=2,r.Sent=4,Ice.AsyncResult=r}(),function(){const e=Ice.StringUtil,t=Ice.Identity,n=Ice.IdentityParseException;Ice.stringToIdentity=function(i){const s=new t;let r=-1,o=0;for(;-1!==(o=i.indexOf("/",o));){let e=0;for(;o-e>0&&"\\"==i.charAt(o-e-1);)e++;if(e%2==0){if(-1!=r)throw new n(`unescaped backslash in identity \`${i}'`);r=o}o++}if(-1==r){s.category="";try{s.name=e.unescapeString(i,0,i.length,"/")}catch(e){throw new n(`invalid identity name \`${i}': ${e.toString()}`)}}else{try{s.category=e.unescapeString(i,0,r,"/")}catch(e){throw new n(`invalid category in identity \`${i}': ${e.toString()}`)}if(r+10&&(this._timeoutToken=this._instance.timer().schedule(()=>{this.cancelWithException(new Ice.InvocationTimeoutException)},e))}for(;;)try{return this._sent=!1,this._handler=this._proxy._getRequestHandler(),void((this._handler.sendAsyncRequest(this)&e.Sent)>0&&t&&(this._sentSynchronously=!0))}catch(e){if(e instanceof r)this._proxy._updateRequestHandler(this._handler,null);else{const t=this.handleException(e);if(t>0)return void this._instance.retryQueue().add(this,t)}}}catch(e){this.markFinishedEx(e)}}markSent(e){this._sent=!0,e&&this._timeoutToken&&this._instance.timer().cancel(this._timeoutToken),super.markSent.call(this,e)}markFinishedEx(e){this._timeoutToken&&this._instance.timer().cancel(this._timeoutToken),super.markFinishedEx.call(this,e)}handleException(e){const t={value:0};return this._cnt=this._proxy._handleException(e,this._handler,this._mode,this._sent,t,this._cnt),t.value}}class l extends h{constructor(e,t,n){super(e,t),this._encoding=o.getCompatibleEncoding(this._proxy._getReference().getEncoding()),this._completed=n}prepare(e,t,n){o.checkSupportedProtocol(o.getCompatibleProtocol(this._proxy._getReference().getProtocol())),this._mode=t,null===n&&(n=l._emptyContext),this._proxy.ice_isBatchOneway()||this._proxy.ice_isBatchDatagram()?this._proxy._getBatchRequestQueue().prepareBatchRequest(this._os):this._os.writeBlob(o.requestHdr);const i=this._proxy._getReference();i.getIdentity()._write(this._os);const s=i.getFacet();if(null===s||0===s.length?Ice.StringSeqHelper.write(this._os,null):Ice.StringSeqHelper.write(this._os,[s]),this._os.writeString(this._operation),this._os.writeByte(t.value),void 0!==n){if(null!==n&&!(n instanceof Map))throw new RangeError("illegal context value, expecting null or Map");Ice.ContextHelper.write(this._os,n)}else{const e=i.getInstance().getImplicitContext(),t=i.getContext();null===e?Ice.ContextHelper.write(this._os,t):e.write(t,this._os)}}sent(){this.markSent(!this._proxy.ice_isTwoway())}invokeRemote(e,t){return e.sendAsyncRequest(this,t,0)}abort(e){(this._proxy.ice_isBatchOneway()||this._proxy.ice_isBatchDatagram())&&this._proxy._getBatchRequestQueue().abortBatchRequest(this._os),super.abort(e)}invoke(){if(this._proxy.ice_isBatchOneway()||this._proxy.ice_isBatchDatagram())return this._sentSynchronously=!0,this._proxy._getBatchRequestQueue().finishBatchRequest(this._os,this._proxy,this._operation),void this.markFinished(!0);this.invokeImpl(!0)}completed(e){let t;s.assert(this._proxy.ice_isTwoway());try{switch(null===this._is&&(this._is=new n(this._instance,o.currentProtocolEncoding)),this._is.swap(e),t=this._is.readByte()){case o.replyOK:case o.replyUserException:break;case o.replyObjectNotExist:case o.replyFacetNotExist:case o.replyOperationNotExist:{const e=new c;e._read(this._is);const n=Ice.StringSeqHelper.read(this._is);let i;if(n.length>0){if(n.length>1)throw new Ice.MarshalException;i=n[0]}else i="";const r=this._is.readString();let a=null;switch(t){case o.replyObjectNotExist:a=new Ice.ObjectNotExistException;break;case o.replyFacetNotExist:a=new Ice.FacetNotExistException;break;case o.replyOperationNotExist:a=new Ice.OperationNotExistException;break;default:s.assert(!1)}throw a.id=e,a.facet=i,a.operation=r,a}case o.replyUnknownException:case o.replyUnknownLocalException:case o.replyUnknownUserException:{const e=this._is.readString();let n=null;switch(t){case o.replyUnknownException:n=new Ice.UnknownException;break;case o.replyUnknownLocalException:n=new Ice.UnknownLocalException;break;case o.replyUnknownUserException:n=new Ice.UnknownUserException;break;default:s.assert(!1)}throw n.unknown=e,n}default:throw new Ice.UnknownReplyStatusException}this.markFinished(t==o.replyOK,this._completed)}catch(e){this.completedEx(e)}}startWriteParams(e){return this._os.startEncapsulation(this._encoding,e),this._os}endWriteParams(){this._os.endEncapsulation()}writeEmptyParams(){this._os.writeEmptyEncapsulation(this._encoding)}startReadParams(){return this._is.startEncapsulation(),this._is}endReadParams(){this._is.endEncapsulation()}readEmptyParams(){this._is.skipEmptyEncapsulation()}throwUserException(){if(s.assert(0!=(this._state&t.Done)),0==(this._state&t.OK))try{this._is.startEncapsulation(),this._is.throwException()}catch(e){throw e instanceof Ice.UserException&&this._is.endEncapsulation(),e}}}l._emptyContext=new Map;Ice.OutgoingAsync=l,Ice.ProxyFlushBatch=class extends h{constructor(e,t){super(e,t),this._batchRequestNum=e._getBatchRequestQueue().swap(this._os)}invokeRemote(t,n){return 0===this._batchRequestNum?(this.sent(),e.Sent):t.sendAsyncRequest(this,n,this._batchRequestNum)}invoke(){o.checkSupportedProtocol(o.getCompatibleProtocol(this._proxy._getReference().getProtocol())),this.invokeImpl(!0)}},Ice.ProxyGetConnection=class extends h{invokeRemote(t,n){return this.markFinished(!0,e=>e.resolve(t)),e.Sent}invoke(){this.invokeImpl(!0)}},Ice.ConnectionFlushBatch=class extends a{constructor(e,t,n){super(t,n,e,null,null)}invoke(){try{const t=this._connection.getBatchRequestQueue().swap(this._os);let n;0===t?(this.sent(),n=e.Sent):n=this._connection.sendAsyncRequest(this,!1,t),(n&e.Sent)>0&&(this._sentSynchronously=!0)}catch(e){this.completedEx(e)}}},Ice.HeartbeatAsync=class extends a{constructor(e,t){super(t,"heartbeat",e,null,null)}invoke(){try{this._os.writeBlob(o.magic),o.currentProtocol._write(this._os),o.currentProtocolEncoding._write(this._os),this._os.writeByte(o.validateConnectionMsg),this._os.writeByte(0),this._os.writeInt(o.headerSize),(this._connection.sendAsyncRequest(this,!1,0)&e.Sent)>0&&(this._sentSynchronously=!0)}catch(e){this.completedEx(e)}}}}(),function(){const e=Ice.ArrayUtil,t=Ice.AsyncResultBase,n=Ice.Debug,i=Ice.OutgoingAsync,s=Ice.ProxyFlushBatch,r=Ice.ProxyGetConnection,o=Ice.ReferenceMode,c=Ice.OperationMode;class a{constructor(){this._reference=null,this._requestHandler=null}hashCode(e){return this._reference.hashCode()}ice_getCommunicator(){return this._reference.getCommunicator()}toString(){return this._reference.toString()}ice_getIdentity(){return this._reference.getIdentity().clone()}ice_identity(e){if(null==e||0===e.name.length)throw new Ice.IllegalIdentityException;if(e.equals(this._reference.getIdentity()))return this;{const t=new a;return t._setup(this._reference.changeIdentity(e)),t}}ice_getContext(){return new Map(this._reference.getContext())}ice_context(e){return this._newInstance(this._reference.changeContext(e))}ice_getFacet(){return this._reference.getFacet()}ice_facet(e){if(null==e&&(e=""),e===this._reference.getFacet())return this;{const t=new a;return t._setup(this._reference.changeFacet(e)),t}}ice_getAdapterId(){return this._reference.getAdapterId()}ice_adapterId(e){return null==e&&(e=""),e===this._reference.getAdapterId()?this:this._newInstance(this._reference.changeAdapterId(e))}ice_getEndpoints(){return e.clone(this._reference.getEndpoints())}ice_endpoints(t){return null==t&&(t=[]),e.equals(t,this._reference.getEndpoints())?this:this._newInstance(this._reference.changeEndpoints(t))}ice_getLocatorCacheTimeout(){return this._reference.getLocatorCacheTimeout()}ice_locatorCacheTimeout(e){if(e<-1)throw new RangeError("invalid value passed to ice_locatorCacheTimeout: "+e);return e===this._reference.getLocatorCacheTimeout()?this:this._newInstance(this._reference.changeLocatorCacheTimeout(e))}ice_getInvocationTimeout(){return this._reference.getInvocationTimeout()}ice_invocationTimeout(e){if(e<1&&-1!==e)throw new RangeError("invalid value passed to ice_invocationTimeout: "+e);return e===this._reference.getInvocationTimeout()?this:this._newInstance(this._reference.changeInvocationTimeout(e))}ice_isConnectionCached(){return this._reference.getCacheConnection()}ice_connectionCached(e){return e===this._reference.getCacheConnection()?this:this._newInstance(this._reference.changeCacheConnection(e))}ice_getEndpointSelection(){return this._reference.getEndpointSelection()}ice_endpointSelection(e){return e===this._reference.getEndpointSelection()?this:this._newInstance(this._reference.changeEndpointSelection(e))}ice_isSecure(){return this._reference.getSecure()}ice_secure(e){return e===this._reference.getSecure()?this:this._newInstance(this._reference.changeSecure(e))}ice_getEncodingVersion(){return this._reference.getEncoding().clone()}ice_encodingVersion(e){return e.equals(this._reference.getEncoding())?this:this._newInstance(this._reference.changeEncoding(e))}ice_isPreferSecure(){return this._reference.getPreferSecure()}ice_preferSecure(e){return e===this._reference.getPreferSecure()?this:this._newInstance(this._reference.changePreferSecure(e))}ice_getRouter(){const e=this._reference.getRouterInfo();return null!==e?e.getRouter():null}ice_router(e){const t=this._reference.changeRouter(e);return t.equals(this._reference)?this:this._newInstance(t)}ice_getLocator(){const e=this._reference.getLocatorInfo();return null!==e?e.getLocator():null}ice_locator(e){const t=this._reference.changeLocator(e);return t.equals(this._reference)?this:this._newInstance(t)}ice_isTwoway(){return this._reference.getMode()===o.ModeTwoway}ice_twoway(){return this._reference.getMode()===o.ModeTwoway?this:this._newInstance(this._reference.changeMode(o.ModeTwoway))}ice_isOneway(){return this._reference.getMode()===o.ModeOneway}ice_oneway(){return this._reference.getMode()===o.ModeOneway?this:this._newInstance(this._reference.changeMode(o.ModeOneway))}ice_isBatchOneway(){return this._reference.getMode()===o.ModeBatchOneway}ice_batchOneway(){return this._reference.getMode()===o.ModeBatchOneway?this:this._newInstance(this._reference.changeMode(o.ModeBatchOneway))}ice_isDatagram(){return this._reference.getMode()===o.ModeDatagram}ice_datagram(){return this._reference.getMode()===o.ModeDatagram?this:this._newInstance(this._reference.changeMode(o.ModeDatagram))}ice_isBatchDatagram(){return this._reference.getMode()===o.ModeBatchDatagram}ice_batchDatagram(){return this._reference.getMode()===o.ModeBatchDatagram?this:this._newInstance(this._reference.changeMode(o.ModeBatchDatagram))}ice_timeout(e){if(e<1&&-1!==e)throw new RangeError("invalid value passed to ice_timeout: "+e);const t=this._reference.changeTimeout(e);return t.equals(this._reference)?this:this._newInstance(t)}ice_getTimeout(){return this._reference.getTimeout()}ice_fixed(e){if(null===e)throw new RangeError("invalid null connection passed to ice_fixed");if(!(e instanceof Ice.ConnectionI))throw new RangeError("invalid connection passed to ice_fixed");const t=this._reference.changeConnection(e);return t.equals(this._reference)?this:this._newInstance(t)}ice_isFixed(){return this._reference instanceof Ice.FixedReference}ice_getConnectionId(){return this._reference.getConnectionId()}ice_connectionId(e){const t=this._reference.changeConnectionId(e);return t.equals(this._reference)?this:this._newInstance(t)}ice_getConnection(){const e=new r(this,"ice_getConnection");try{e.invoke()}catch(t){e.abort(t)}return e}ice_getCachedConnection(){return this._requestHandler?this._requestHandler.getConnection():null}ice_flushBatchRequests(){const e=new s(this,"ice_flushBatchRequests");try{e.invoke()}catch(t){e.abort(t)}return e}equals(e){return this===e||e instanceof a&&this._reference.equals(e._reference)}_write(e){this._reference.getIdentity()._write(e),this._reference.streamWrite(e)}_getReference(){return this._reference}_copyFrom(e){n.assert(null===this._reference),n.assert(null===this._requestHandler),this._reference=e._reference,this._requestHandler=e._requestHandler}_handleException(e,t,n,i,s,r){if(this._updateRequestHandler(t,null),!(e instanceof Ice.LocalException&&(!i||n==c.Nonmutating||n==c.Idempotent||e instanceof Ice.CloseConnectionException||e instanceof Ice.ObjectNotExistException)))throw e;try{return this._reference.getInstance().proxyFactory().checkRetryAfterException(e,this._reference,s,r)}catch(t){throw t instanceof Ice.CommunicatorDestroyedException?e:t}}_checkAsyncTwowayOnly(e){if(!this.ice_isTwoway())throw new Ice.TwowayOnlyException(e)}_getRequestHandler(){return this._reference.getCacheConnection()&&this._requestHandler?this._requestHandler:this._reference.getRequestHandler(this)}_getBatchRequestQueue(){return this._batchRequestQueue||(this._batchRequestQueue=this._reference.getBatchRequestQueue()),this._batchRequestQueue}_setRequestHandler(e){return this._reference.getCacheConnection()?(this._requestHandler||(this._requestHandler=e),this._requestHandler):e}_updateRequestHandler(e,t){this._reference.getCacheConnection()&&null!==e&&this._requestHandler&&this._requestHandler!==t&&(this._requestHandler=this._requestHandler.update(e,t))}_setup(e){n.assert(null===this._reference),this._reference=e}_newInstance(e){const t=new this.constructor;return t._setup(e),t}ice_instanceof(e){return!!e&&(this instanceof e||this.constructor._instanceof(e))}static _invoke(e,t,n,s,r,o,c,a,h){(null!==c||a.length>0)&&e._checkAsyncTwowayOnly(t);const l=new i(e,t,e=>{this._completed(e,c,a)});try{if(l.prepare(t,n,r),null===o)l.writeEmptyParams();else{o(l.startWriteParams(s),h),l.endWriteParams()}l.invoke()}catch(e){l.abort(e)}return l}static _completed(e,t,n){if(this._check(e,n))try{null===t?(e.readEmptyParams(),e.resolve()):e.resolve(t(e))}catch(t){this.dispatchLocalException(e,t)}}static _check(e,t){try{e.throwUserException()}catch(n){if(n instanceof Ice.UserException){if(null!==t)for(let i=0;i{if(t){const t=new this;t._copyFrom(e),s.resolve(t)}else s.resolve(null)}).catch(e=>{e instanceof Ice.FacetNotExistException?s.resolve(null):s.reject(e)})),s}static uncheckedCast(e,t){let n=null;return null!=e&&(n=new this,void 0!==t&&(e=e.ice_facet(t)),n._copyFrom(e)),n}static get minWireSize(){return 2}static write(e,t){e.writeProxy(t)}static read(e){return e.readProxy(this)}static writeOptional(e,t,n){e.writeOptionalProxy(t,n)}static readOptional(e,t){return e.readOptionalProxy(t,this)}static _instanceof(e){if(e===this)return!0;for(const t in this._implements)if(this._implements[t]._instanceof(e))return!0;return!1}static ice_staticId(){return this._id}static get _implements(){return[]}}Ice.ObjectPrx=a}(),function(){const e=Ice.StringUtil,t=Ice.PropertyNames,n=Ice.Debug,i=Ice.getProcessLogger,s=Ice.InitializationException,r=0,o=1;class c{constructor(e,t){if(this._properties=new Map,null!=t)for(const[e,n]of t._properties)this._properties.set(e,{value:n.value,used:!1});if(null!=e){const t=this.parseIceCommandLineOptions(e);e.length=0;for(let n=0;n{0===i.indexOf(e)&&(n.used=!0,t.set(i,n.value))}),t}setProperty(e="",r=""){null!==e&&(e=e.trim());const o=i();if(null===e||0===e.length)throw new s("Attempt to set property with empty key");let c=e.indexOf(".");if(-1!==c){const i=e.substr(0,c);for(let s=0;s0){const t=this._properties.get(e);void 0!==t?t.value=r:this._properties.set(e,{value:r,used:!1})}else this._properties.delete(e)}getCommandLineOptions(){const e=[];return this._properties.forEach((t,n)=>{e.push("--"+n+"="+t.value)}),e}parseCommandLineOptions(e,t){e.length>0&&"."!=e.charAt(e.length-1)&&(e+="."),e="--"+e;const n=[];return t.forEach(t=>{0===t.indexOf(e)?(-1===t.indexOf("=")&&(t+="=1"),this.parseLine(t.substring(2))):n.push(t)}),n}parseIceCommandLineOptions(e){let n=e.slice();for(let e=0;ethis.parseLine(e))}parseLine(e){let t="",s="",c=r,a="",h="",l=!1;for(let i=0;i{t.used||e.push(n)}),e}static createProperties(e,t){return new c(e,t)}}Ice.Properties=c}(),Ice.EndpointSelectionType=n.defineEnum([["Random",0],["Ordered",1]]),function(){Ice.ProtocolInstance=class{constructor(e,t,n,i){this._instance=e,this._traceLevel=e.traceLevels().network,this._traceCategory=e.traceLevels().networkCat,this._logger=e.initializationData().logger,this._properties=e.initializationData().properties,this._type=t,this._protocol=n,this._secure=i}traceLevel(){return this._traceLevel}traceCategory(){return this._traceCategory}logger(){return this._logger}protocol(){return this._protocol}type(){return this._type}secure(){return this._secure}properties(){return this._properties}defaultHost(){return this._instance.defaultsAndOverrides().defaultHost}defaultSourceAddress(){return this._instance.defaultsAndOverrides().defaultSourceAddress}defaultEncoding(){return this._instance.defaultsAndOverrides().defaultEncoding}defaultTimeout(){return this._instance.defaultsAndOverrides().defaultTimeout}messageSizeMax(){return this._instance.messageSizeMax()}}}(),n.defineSequence(Ice,"EndpointSeqHelper","Ice.ObjectHelper",!1,"Ice.Endpoint"),Object.defineProperty(Ice,"TCPEndpointType",{value:1}),Object.defineProperty(Ice,"SSLEndpointType",{value:2}),Object.defineProperty(Ice,"UDPEndpointType",{value:3}),Object.defineProperty(Ice,"WSEndpointType",{value:4}),Object.defineProperty(Ice,"WSSEndpointType",{value:5}),Object.defineProperty(Ice,"BTEndpointType",{value:6}),Object.defineProperty(Ice,"BTSEndpointType",{value:7}),Object.defineProperty(Ice,"iAPEndpointType",{value:8}),Object.defineProperty(Ice,"iAPSEndpointType",{value:9}),Ice.EndpointInfo=class{constructor(e=null,t=0,n=!1){this.underlying=e,this.timeout=t,this.compress=n}},Ice.IPEndpointInfo=class extends Ice.EndpointInfo{constructor(e,t,n,i="",s=0,r=""){super(e,t,n),this.host=i,this.port=s,this.sourceAddress=r}},Ice.TCPEndpointInfo=class extends Ice.IPEndpointInfo{constructor(e,t,n,i,s,r){super(e,t,n,i,s,r)}},Ice.UDPEndpointInfo=class extends Ice.IPEndpointInfo{constructor(e,t,n,i,s,r,o="",c=0){super(e,t,n,i,s,r),this.mcastInterface=o,this.mcastTtl=c}},Ice.WSEndpointInfo=class extends Ice.EndpointInfo{constructor(e,t,n,i=""){super(e,t,n),this.resource=i}},Ice.OpaqueEndpointInfo=class extends Ice.EndpointInfo{constructor(e,t,n,i=new Ice.EncodingVersion,s=null){super(e,t,n),this.rawEncoding=i,this.rawBytes=s}},function(){const e=Ice.AsyncStatus,t=Ice.ConnectionRequestHandler,n=Ice.Debug,i=Ice.RetryException,s=Ice.ReferenceMode,r=Ice.LocalException;Ice.ConnectRequestHandler=class{constructor(e,t){this._reference=e,this._response=e.getMode()===s.ModeTwoway,this._proxy=t,this._proxies=[],this._initialized=!1,this._connection=null,this._exception=null,this._requests=[]}connect(e){return this.initialized()||this._proxies.push(e),this._requestHandler?this._requestHandler:this}update(e,t){return e===this?t:this}sendAsyncRequest(t){return this._initialized||t.cancelable(this),this.initialized()?t.invokeRemote(this._connection,this._response):(this._requests.push(t),e.Queued)}asyncRequestCanceled(e,t){if(null===this._exception){if(!this.initialized()){for(let n=0;nthis.flushRequests(),e=>this.setException(e))}setException(e){n.assert(!this._initialized&&null===this._exception),this._exception=e,this._proxies.length=0,this._proxy=null;try{this._reference.getInstance().requestHandlerFactory().removeRequestHandler(this._reference,this)}catch(e){}this._requests.forEach(e=>{null!==e&&e.completedEx(this._exception)}),this._requests.length=0}initialized(){if(this._initialized)return n.assert(null!==this._connection),!0;if(null!==this._exception){if(null!==this._connection)return!0;throw this._exception}return this._initialized}flushRequests(){n.assert(null!==this._connection&&!this._initialized);let e=null;this._requests.forEach(t=>{try{t.invokeRemote(this._connection,this._response)}catch(s){s instanceof i?(e=s.inner,this._reference.getInstance().requestHandlerFactory().removeRequestHandler(this._reference,this),t.retryException(s.inner)):(n.assert(s instanceof r),e=s,t.out.completedEx(s))}}),this._requests.length=0,this._reference.getCacheConnection()&&null===e&&(this._requestHandler=new t(this._reference,this._connection),this._proxies.forEach(e=>e._updateRequestHandler(this,this._requestHandler))),n.assert(!this._initialized),this._exception=e,this._initialized=null===this._exception,this._reference.getInstance().requestHandlerFactory().removeRequestHandler(this._reference,this),this._proxies.length=0,this._proxy=null}}}(),function(){class e{toString(){return this.protocol()+this.options()}initWithOptions(e){const t=[];let n="`"+this.protocol();for(let t=0;t=1&&this._instance.initializationData().logger.trace(this._instance.traceLevels().retryCat,"operation retry canceled\n"+t.toString()),this._outAsync.completedEx(t))}}Ice.RetryQueue=class{constructor(e){this._instance=e,this._requests=[]}add(t,n){if(null===this._instance)throw new Ice.CommunicatorDestroyedException;const i=new e(this._instance,this,t);t.cancelable(i),i.token=this._instance.timer().schedule(()=>i.run(),n),this._requests.push(i)}destroy(){this._requests.forEach(e=>{this._instance.timer().cancel(e.token),e.destroy()}),this._requests=[],this._instance=null}remove(e){const t=this._requests.indexOf(e);t>=0&&this._requests.splice(t,1)}cancel(e){const t=this._requests.indexOf(e);return t>=0&&(this._requests.splice(t,1),this._instance.timer().cancel(e.token))}}}(),function(){const e=Ice.Debug,t=Ice.HashMap;class n{constructor(n){this._router=n,e.assert(null!==this._router),this._clientEndpoints=null,this._adapter=null,this._identities=new t(t.compareEquals),this._evictedIdentities=[],this._hasRoutingTable=!1}destroy(){this._clientEndpoints=[],this._adapter=null,this._identities.clear()}equals(e){return this===e||e instanceof n&&this._router.equals(e._router)}hashCode(){return this._router.hashCode()}getRouter(){return this._router}getClientEndpoints(){const e=new Ice.Promise;return null!==this._clientEndpoints?e.resolve(this._clientEndpoints):this._router.getClientProxy().then(t=>this.setClientEndpoints(t[0],void 0===t[1]||t[1],e)).catch(e.reject),e}getServerEndpoints(){return this._router.getServerProxy().then(e=>{if(null===e)throw new Ice.NoEndpointException;return(e=e.ice_router(null))._getReference().getEndpoints()})}addProxy(t){return e.assert(null!==t),this._hasRoutingTable?this._identities.has(t.ice_getIdentity())?Ice.Promise.resolve():this._router.addProxies([t]).then(e=>{this.addAndEvictProxies(t,e)}):Ice.Promise.resolve()}setAdapter(e){this._adapter=e}getAdapter(){return this._adapter}clearCache(e){this._identities.delete(e.getIdentity())}setClientEndpoints(e,t,n){null===this._clientEndpoints?(this._hasRoutingTable=t,null===e?(this._clientEndpoints=this._router._getReference().getEndpoints(),n.resolve(this._clientEndpoints)):(e=e.ice_router(null),this._router.ice_getConnection().then(t=>{this._clientEndpoints=e.ice_timeout(t.timeout())._getReference().getEndpoints(),n.resolve(this._clientEndpoints)}).catch(n.reject))):n.resolve(this._clientEndpoints)}addAndEvictProxies(e,t){const n=this._evictedIdentities.findIndex(t=>t.equals(e.ice_getIdentity()));n>=0?this._evictedIdentities.splice(n,1):this._identities.set(e.ice_getIdentity(),1),t.forEach(e=>{this._identities.delete(e.ice_getIdentity())})}}Ice.RouterInfo=n}(),Ice.CompressBatch=n.defineEnum([["Yes",0],["No",1],["BasedOnProxy",2]]),Ice.ConnectionInfo=class{constructor(e=null,t=!1,n="",i=""){this.underlying=e,this.incoming=t,this.adapterName=n,this.connectionId=i}},Ice.ACMClose=n.defineEnum([["CloseOff",0],["CloseOnIdle",1],["CloseOnInvocation",2],["CloseOnInvocationAndIdle",3],["CloseOnIdleForceful",4]]),Ice.ACMHeartbeat=n.defineEnum([["HeartbeatOff",0],["HeartbeatOnDispatch",1],["HeartbeatOnIdle",2],["HeartbeatAlways",3]]),Ice.ACM=class{constructor(e=0,t=Ice.ACMClose.CloseOff,n=Ice.ACMHeartbeat.HeartbeatOff){this.timeout=e,this.close=t,this.heartbeat=n}},n.defineStruct(Ice.ACM,!0,!0),Ice.ConnectionClose=n.defineEnum([["Forcefully",0],["Gracefully",1],["GracefullyWithWait",2]]),Ice.IPConnectionInfo=class extends Ice.ConnectionInfo{constructor(e,t,n,i,s="",r=-1,o="",c=-1){super(e,t,n,i),this.localAddress=s,this.localPort=r,this.remoteAddress=o,this.remotePort=c}},Ice.TCPConnectionInfo=class extends Ice.IPConnectionInfo{constructor(e,t,n,i,s,r,o,c,a=0,h=0){super(e,t,n,i,s,r,o,c),this.rcvSize=a,this.sndSize=h}},Ice.UDPConnectionInfo=class extends Ice.IPConnectionInfo{constructor(e,t,n,i,s,r,o,c,a="",h=-1,l=0,u=0){super(e,t,n,i,s,r,o,c),this.mcastAddress=a,this.mcastPort=h,this.rcvSize=l,this.sndSize=u}},n.defineDictionary(Ice,"HeaderDict","HeaderDictHelper","Ice.StringHelper","Ice.StringHelper",!1,void 0,void 0),Ice.WSConnectionInfo=class extends Ice.ConnectionInfo{constructor(e,t,n,i,s=null){super(e,t,n,i),this.headers=s}},function(){const e=Ice._ModuleRegistry,t=[Ice.ByteHelper,Ice.BoolHelper,Ice.ShortHelper,Ice.IntHelper,Ice.LongHelper,Ice.FloatHelper,Ice.DoubleHelper,Ice.StringHelper,Ice.Value,Ice.ObjectPrx,Ice.Value];function n(n){let i=n[0];const s=typeof i;return"number"===s?i=t[n[0]]:"string"===s&&(i=e.type(i)),{type:i,isObject:!0===n[1],tag:n[2]}}function i(e,t){const i={};let s;i.name=e,i.servantMethod=t[0]?t[0]:e,i.mode=t[1]?Ice.OperationMode.valueOf(t[1]):Ice.OperationMode.Normal,i.sendMode=t[2]?Ice.OperationMode.valueOf(t[2]):Ice.OperationMode.Normal,i.format=t[3]?Ice.FormatType.valueOf(t[3]):Ice.FormatType.DefaultFormat,t[4]&&((s=n(t[4])).pos=0),i.returns=s;const r=[],o=[];if(t[5])for(let e=0;ee.tag-t.tag),i.inParams=r,i.inParamsOpt=o;const c=[],a=[];if(t[6]){const e=s?1:0;for(let i=0;ie.tag-t.tag),i.outParams=c,i.outParamsOpt=a;const h=[];if(t[7])for(let e=0;e{n?t.isObject?e.readOptionalValue(t.tag,e=>{r[t.pos+o]=e},t.type):r[t.pos+o]=t.type.readOptional(e,t.tag):t.isObject?e.readValue(e=>{r[t.pos+o]=e},t.type):r[t.pos+o]=t.type.read(e)};for(let e=0;e1&&!(e instanceof Array))throw new Ice.MarshalException("operation `"+t.servantMethod+"' should return an array");if(1===i&&(e=[e]),void 0===t.returns&&0===t.outParams.length){if(e&&e.length>0)throw new Ice.MarshalException("operation `"+t.servantMethod+"' shouldn't return any value");n.writeEmptyParams()}else{let i;t.returns&&!t.returns.tag&&(i=t.returns),o(n.startWriteParams(),e,i,t.outParams,t.outParamsOpt,t.returnsClasses),n.endWriteParams()}},h=s.apply(e,c);return h instanceof Promise?h.then(a):(a(h),null)}(e,c,t,n)},e[n]=s,a&&(a[n]=s))}return s}function l(e,t,n){const s=n[0]?n[0]:t;let c=null;e.prototype[s]=function(...e){null===c&&(c=i(t,n));const s=e[c.inParams.length];let a=null;c.inParams.length>0&&(a=function(e,t){for(let e=0;e0)&&(h=function(e){const t=[],n=e.startReadParams();let i;return c.returns&&!c.returns.tag&&(i=c.returns),r(n,i,c.outParams,c.outParamsOpt,c.returnsClasses,t,0),e.endReadParams(),1==t.length?t[0]:t}),Ice.ObjectPrx._invoke(this,c.name,c.sendMode,c.format,s,a,h,c.exceptions,Array.prototype.slice.call(e))}}const u=Ice.Slice;u.defineOperations=function(e,t,n,i,r){if(r&&(e._iceOps=new s(r)),e.prototype._iceDispatch=function(t,n){const i=h(e,n.operation);if(void 0===i||"function"!=typeof i)throw new Ice.OperationNotExistException(n.id,n.facet,n.operation);return i.call(i,this,t,n)},e.prototype._iceMostDerivedType=function(){return e},Object.defineProperty(e,"_iceIds",{get:()=>n}),Object.defineProperty(e,"_iceId",{get:()=>n[i]}),e.ice_staticId=function(){return e._iceId},void 0!==t){if(r)for(const e in r)l(t,e,r[e]);if(t._implements)for(const e in t._implements){const n=t._implements[e].prototype;for(const e in n)"function"==typeof n[e]&&void 0===t.prototype[e]&&(t.prototype[e]=n[e])}Object.defineProperty(t,"_id",{get:()=>n[i]})}},u.defineOperations(Ice.Object,Ice.ObjectPrx,["::Ice::Object"],0,{ice_ping:[void 0,1,1,void 0,void 0,void 0,void 0,void 0],ice_isA:[void 0,1,1,void 0,[1],[[7]],void 0,void 0],ice_id:[void 0,1,1,void 0,[7],void 0,void 0,void 0],ice_ids:[void 0,1,1,void 0,["Ice.StringSeqHelper"],void 0,void 0,void 0]})}(),function(){Ice.Router=class extends Ice.Object{},Ice.RouterPrx=class extends Ice.ObjectPrx{},n.defineOperations(Ice.Router,Ice.RouterPrx,["::Ice::Object","::Ice::Router"],1,{getClientProxy:[,2,1,,[9],,[[1,,1]],,,],getServerProxy:[,2,1,,[9],,,,,],addProxies:[,2,2,,["Ice.ObjectProxySeqHelper"],[["Ice.ObjectProxySeqHelper"]],,,,]});Ice.RouterFinder=class extends Ice.Object{},Ice.RouterFinderPrx=class extends Ice.ObjectPrx{},n.defineOperations(Ice.RouterFinder,Ice.RouterFinderPrx,["::Ice::Object","::Ice::RouterFinder"],1,{getRouter:[,,,,["Ice.RouterPrx"],,,,,]})}(),function(){const e=Ice.OutputStream,t=Ice.Current,n=Ice.Debug,i=Ice.Context,s=Ice.Identity,r=Ice.Protocol,o=Ice.StringUtil;Ice.IncomingAsync=class{constructor(e,n,i,r,o){this._instance=e,this._response=r,this._connection=n,this._format=Ice.FormatType.DefaultFormat,this._current=new t,this._current.id=new s,this._current.adapter=i,this._current.con=this._connection,this._current.requestId=o,this._servant=null,this._locator=null,this._cookie={value:null},this._os=null,this._is=null}startWriteParams(){if(!this._response)throw new Ice.MarshalException("can't marshal out parameters for oneway dispatch");return n.assert(null!==this._current.encoding),this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),this._os.writeByte(0),this._os.startEncapsulation(this._current.encoding,this._format),this._os}endWriteParams(){this._response&&this._os.endEncapsulation()}writeEmptyParams(){this._response&&(n.assert(null!==this._current.encoding),this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),this._os.writeByte(r.replyOK),this._os.writeEmptyEncapsulation(this._current.encoding))}writeParamEncaps(t,i){this._response&&(n.assert(null!==this._current.encoding),this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),this._os.writeByte(i?r.replyOK:r.replyUserException),null===t||0===t.length?this._os.writeEmptyEncapsulation(this._current.encoding):this._os.writeEncapsulation(t))}setFormat(e){this._format=e}warning(e){n.assert(null!==this._instance);const t=[];if(t.push("dispatch exception:"),t.push("\nidentity: "+Ice.identityToString(this._current.id,this._instance.toStringMode())),t.push("\nfacet: "+o.escapeString(this._current.facet,"",this._instance.toStringMode())),t.push("\noperation: "+this._current.operation),null!==this._connection)try{for(let e=this._connection.getInfo();e;e=e.underlying)e instanceof Ice.IPConnectionInfo&&t.push("\nremote host: "+e.remoteAddress+" remote port: "+e.remotePort)}catch(e){}e.stack&&(t.push("\n"),t.push(e.stack)),this._instance.initializationData().logger.warning(t.join(""))}handleException(t,i){n.assert(null!==this._connection);const s=this._instance.initializationData().properties;if(t instanceof Ice.RequestFailedException)null===t.id&&(t.id=this._current.id),null===t.facet&&(t.facet=this._current.facet),null!==t.operation&&0!==t.operation.length||(t.operation=this._current.operation),s.getPropertyAsIntWithDefault("Ice.Warn.Dispatch",1)>1&&this.warning(t),this._response?(this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),t instanceof Ice.ObjectNotExistException?this._os.writeByte(r.replyObjectNotExist):t instanceof Ice.FacetNotExistException?this._os.writeByte(r.replyFacetNotExist):t instanceof Ice.OperationNotExistException?this._os.writeByte(r.replyOperationNotExist):n.assert(!1),t.id._write(this._os),null===t.facet||0===t.facet.length?Ice.StringSeqHelper.write(this._os,null):Ice.StringSeqHelper.write(this._os,[t.facet]),this._os.writeString(t.operation),this._connection.sendResponse(this._os)):this._connection.sendNoResponse();else if(t instanceof Ice.UnknownLocalException)s.getPropertyAsIntWithDefault("Ice.Warn.Dispatch",1)>0&&this.warning(t),this._response?(this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),this._os.writeByte(r.replyUnknownLocalException),this._os.writeString(t.unknown),this._connection.sendResponse(this._os)):this._connection.sendNoResponse();else if(t instanceof Ice.UnknownUserException)s.getPropertyAsIntWithDefault("Ice.Warn.Dispatch",1)>0&&this.warning(t),this._response?(this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),this._os.writeByte(r.replyUnknownUserException),this._os.writeString(t.unknown),this._connection.sendResponse(this._os)):this._connection.sendNoResponse();else if(t instanceof Ice.UnknownException)s.getPropertyAsIntWithDefault("Ice.Warn.Dispatch",1)>0&&this.warning(t),this._response?(this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),this._os.writeByte(r.replyUnknownException),this._os.writeString(t.unknown),this._connection.sendResponse(this._os)):this._connection.sendNoResponse();else if(t instanceof Ice.LocalException)if(s.getPropertyAsIntWithDefault("Ice.Warn.Dispatch",1)>0&&this.warning(t),this._response){this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),this._os.writeByte(r.replyUnknownLocalException);const n=[t.ice_id()];t.stack&&(n.push("\n"),n.push(t.stack)),this._os.writeString(n.join("")),this._connection.sendResponse(this._os)}else this._connection.sendNoResponse();else t instanceof Ice.UserException?this._response?(this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),this._os.writeByte(r.replyUserException),this._os.startEncapsulation(this._current.encoding,this._format),this._os.writeException(t),this._os.endEncapsulation(),this._connection.sendResponse(this._os)):this._connection.sendNoResponse():(s.getPropertyAsIntWithDefault("Ice.Warn.Dispatch",1)>0&&this.warning(t),this._response?(this._os=new e(this._instance,r.currentProtocolEncoding),this._os.writeBlob(r.replyHdr),this._os.writeInt(this._current.requestId),this._os.writeByte(r.replyUnknownException),this._os.writeString(t.toString()+(t.stack?"\n"+t.stack:"")),this._connection.sendResponse(this._os)):this._connection.sendNoResponse());this._connection=null}invoke(e,t){this._is=t,this._current.id._read(this._is);const s=Ice.StringSeqHelper.read(this._is);if(s.length>0){if(s.length>1)throw new Ice.MarshalException;this._current.facet=s[0]}else this._current.facet="";this._current.operation=this._is.readString(),this._current.mode=Ice.OperationMode.valueOf(this._is.readByte()),this._current.ctx=new i;let r=this._is.readSize();for(;r-- >0;)this._current.ctx.set(this._is.readString(),this._is.readString());if(null!==e&&(this._servant=e.findServant(this._current.id,this._current.facet),null===this._servant&&(this._locator=e.findServantLocator(this._current.id.category),null===this._locator&&this._current.id.category.length>0&&(this._locator=e.findServantLocator("")),null!==this._locator)))try{this._servant=this._locator.locate(this._current,this._cookie)}catch(e){return this.skipReadParams(),void this.handleException(e,!1)}if(null===this._servant)try{throw null!==e&&e.hasServant(this._current.id)?new Ice.FacetNotExistException(this._current.id,this._current.facet,this._current.operation):new Ice.ObjectNotExistException(this._current.id,this._current.facet,this._current.operation)}catch(e){return this.skipReadParams(),void this.handleException(e,!1)}try{n.assert(null!==this._servant);const e=this._servant._iceDispatch(this,this._current);if(null!==e)return void e.then(()=>this.completed(null,!0),e=>this.completed(e,!0));n.assert(!this._response||null!==this._os),this.completed(null,!1)}catch(e){this.completed(e,!1)}}startReadParams(){return this._current.encoding=this._is.startEncapsulation(),this._is}endReadParams(){this._is.endEncapsulation()}readEmptyParams(){this._current.encoding=this._is.skipEmptyEncapsulation()}readParamEncaps(){return this._current.encoding=new Ice.EncodingVersion,this._is.readEncapsulation(this._current.encoding)}skipReadParams(){this._current.encoding=this._is.skipEncapsulation()}completed(e,t){try{if(null!==this._locator){n.assert(null!==this._locator&&null!==this._servant);try{this._locator.finished(this._current,this._servant,this._cookie.value)}catch(e){return void this.handleException(e,t)}}n.assert(null!==this._connection),null!==e?this.handleException(e,t):this._response?this._connection.sendResponse(this._os):this._connection.sendNoResponse()}catch(e){if(!(e instanceof Ice.LocalException))throw e;this._connection.invokeException(e,1)}this._connection=null}}}(),function(){const e=Ice.Debug;class t{constructor(e,t,n,i){if(void 0===e)return this.timeout=6e4,this.heartbeat=Ice.ACMHeartbeat.HeartbeatOnDispatch,void(this.close=Ice.ACMClose.CloseOnInvocationAndIdle);let s;s="Ice.ACM.Client"!=n&&"Ice.ACM.Server"!=n||0!==e.getProperty(n+".Timeout").length?n+".Timeout":n,this.timeout=1e3*e.getPropertyAsIntWithDefault(s,i.timeout/1e3),this.timeout<0&&(t.warning("invalid value for property `"+s+"', default value will be used instead"),this.timeout=i.timeout);const r=e.getPropertyAsIntWithDefault(n+".Heartbeat",i.heartbeat.value);r>=0&&r<=Ice.ACMHeartbeat.maxValue?this.heartbeat=Ice.ACMHeartbeat.valueOf(r):(t.warning("invalid value for property `"+n+".Heartbeat', default value will be used instead"),this.heartbeat=i.heartbeat);const o=e.getPropertyAsIntWithDefault(n+".Close",i.close.value);o>=0&&o<=Ice.ACMClose.maxValue?this.close=Ice.ACMClose.valueOf(o):(t.warning("invalid value for property `"+n+".Close', default value will be used instead"),this.close=i.close)}}class n{constructor(e,t,n){this._parent=e,this._timer=t,this._config=n,this._connection=null}add(t){e.assert(null===this._connection),this._connection=t,this._config.timeout>0&&(this._timerToken=this._timer.scheduleRepeated(()=>this.runTimerTask(),this._config.timeout/2))}remove(t){e.assert(this._connection===t),this._connection=null,this._config.timeout>0&&this._timer.cancel(this._timerToken)}reap(e){this._parent.reap(e)}acm(e,t,n){return this._parent.acm(e,t,n)}getACM(){return new Ice.ACM(this._config.timeout/1e3,this._config.close,this._config.heartbeat)}runTimerTask(){try{this._connection.monitor(Date.now(),this._config)}catch(e){this._parent.handleException(e)}}}Ice.FactoryACMMonitor=class{constructor(e,t){this._instance=e,this._config=t,this._reapedConnections=[],this._connections=[]}destroy(){null!==this._instance&&(this._instance=null)}add(e){0!==this._config.timeout&&(this._connections.push(e),1==this._connections.length&&(this._timerToken=this._instance.timer().scheduleRepeated(()=>this.runTimerTask(),this._config.timeout/2)))}remove(t){if(0===this._config.timeout)return;const n=this._connections.indexOf(t);e.assert(n>=0),this._connections.splice(n,1),0===this._connections.length&&this._instance.timer().cancel(this._timerToken)}reap(e){this._reapedConnections.push(e)}acm(i,s,r){e.assert(null!==this._instance);const o=new t;return o.timeout=this._config.timeout,o.close=this._config.close,o.heartbeat=this._config.heartbeat,void 0!==i&&(o.timeout=1e3*i),void 0!==s&&(o.close=s),void 0!==r&&(o.heartbeat=r),new n(this,this._instance.timer(),o)}getACM(){return new Ice.ACM(this._config.timeout/1e3,this._config.close,this._config.heartbeat)}swapReapedConnections(){if(0===this._reapedConnections.length)return null;const e=this._reapedConnections;return this._reapedConnections=[],e}runTimerTask(){if(null===this._instance)return void(this._connections=null);const e=Date.now();this._connections.forEach(t=>{try{t.monitor(e,this._config)}catch(e){this.handleException(e)}})}handleException(e){null!==this._instance&&this._instance.initializationData().logger.error("exception in connection monitor:\n"+e)}},Ice.ACMConfig=t}(),Ice.Process=class extends Ice.Object{},Ice.ProcessPrx=class extends Ice.ObjectPrx{},n.defineOperations(Ice.Process,Ice.ProcessPrx,["::Ice::Object","::Ice::Process"],1,{shutdown:[,,,,,,,,,],writeMessage:[,,,,,[[7],[3]],,,,]}),function(){const e=Ice.HashMap,t=Ice.Debug;class n{constructor(e,t){this.time=e,this.endpoints=t}}class i{constructor(e,t){this.time=e,this.reference=t}}Ice.LocatorTable=class{constructor(){this._adapterEndpointsTable=new Map,this._objectTable=new e(e.compareEquals)}clear(){this._adapterEndpointsTable.clear(),this._objectTable.clear()}getAdapterEndpoints(e,t,n){if(0===t)return n.value=!1,null;const i=this._adapterEndpointsTable.get(e);return void 0!==i?(n.value=this.checkTTL(i.time,t),i.endpoints):(n.value=!1,null)}addAdapterEndpoints(e,t){this._adapterEndpointsTable.set(e,new n(Date.now(),t))}removeAdapterEndpoints(e){const t=this._adapterEndpointsTable.get(e);return this._adapterEndpointsTable.delete(e),void 0!==t?t.endpoints:null}getObjectReference(e,t,n){if(0===t)return n.value=!1,null;const i=this._objectTable.get(e);return void 0!==i?(n.value=this.checkTTL(i.time,t),i.reference):(n.value=!1,null)}addObjectReference(e,t){this._objectTable.set(e,new i(Date.now(),t))}removeObjectReference(e){const t=this._objectTable.get(e);return this._objectTable.delete(e),void 0!==t?t.reference:null}checkTTL(e,n){return t.assert(0!==n),n<0||Date.now()-e<=1e3*n}}}(),function(){Ice.Address=class{constructor(e,t){this.host=e,this.port=t}}}(),function(){const e=Ice.Address,t=Ice.HashUtil,n=Ice.StringUtil,i=Ice.EndpointParseException;class s extends Ice.EndpointI{constructor(e,t,n,i,s){super(),this._instance=e,this._host=void 0===t?null:t,this._port=void 0===n?0:n,this._sourceAddr=void 0===i?null:i,this._connectionId=void 0===s?"":s}streamWrite(e){e.startEncapsulation(),this.streamWriteImpl(e),e.endEncapsulation()}getInfo(){const e=new Ice.IPEndpointInfo;return this.fillEndpointInfo(e),e}type(){return this._instance.type()}protocol(){return this._instance.protocol()}secure(){return this._instance.secure()}connectionId(){return this._connectionId}changeConnectionId(e){return e===this._connectionId?this:this.createEndpoint(this._host,this._port,e)}hashCode(){return void 0===this._hashCode&&(this._hashCode=this.hashInit(5381)),this._hashCode}options(){let e="";if(null!==this._host&&this._host.length>0){e+=" -h ";const t=-1!=this._host.indexOf(":");t&&(e+='"'),e+=this._host,t&&(e+='"')}if(e+=" -p "+this._port,null!==this._sourceAddr&&this._sourceAddr.length>0){e+=" --sourceAddress ";const t=-1!=this._sourceAddr.indexOf(":");t&&(e+='"'),e+=this._sourceAddr,t&&(e+='"')}return e}compareTo(e){return this===e?0:null===e?1:e instanceof s?this._portthis.type(),e.datagram=()=>this.datagram(),e.secure=()=>this.secure(),e.host=this._host,e.port=this._port,e.sourceAddress=this._sourceAddr}initWithOptions(e,t){if(super.initWithOptions(e),null===this._host||0===this._host.length)this._host=this._instance.defaultHost();else if("*"==this._host){if(!t)throw new i("`-h *' not valid for proxy endpoint `"+this+"'");this._host=""}if(null===this._host&&(this._host=""),null===this._sourceAddr)t||(this._sourceAddr=this._instance.defaultSourceAddress());else if(t)throw new i("`--sourceAddress not valid for object adapter endpoint `"+this+"'")}initWithStream(e){this._host=e.readString(),this._port=e.readInt()}checkOption(e,t,s){if("-h"===e){if(null===t)throw new i("no argument provided for -h option in endpoint "+s);this._host=t}else if("-p"===e){if(null===t)throw new i("no argument provided for -p option in endpoint "+s);try{this._port=n.toInt(t)}catch(e){throw new i("invalid port value `"+t+"' in endpoint "+s)}if(this._port<0||this._port>65535)throw new i("port value `"+t+"' out of range in endpoint "+s)}else{if("--sourceAddress"!==e)return!1;if(null===t)throw new i("no argument provided for --sourceAddress option in endpoint "+s);this._sourceAddr=t}return!0}}Ice.IPEndpointI=s}(),IceSSL.EndpointInfo=class extends Ice.EndpointInfo{constructor(e,t,n){super(e,t,n)}},Ice.ToStringMode=Ice.Slice.defineEnum([["Unicode",0],["ASCII",1],["Compat",2]]),Ice.TraceLevels=function(e){const t="Ice.Trace.",n=e.getPropertyAsInt(t+"Network"),i=e.getPropertyAsInt(t+"Protocol"),s=e.getPropertyAsInt(t+"Retry"),r=e.getPropertyAsInt(t+"Locator"),o=e.getPropertyAsInt(t+"Slicing");return e.getPropertyAsInt(t+"ThreadPool"),class{static get network(){return n}static get networkCat(){return"Network"}static get protocol(){return i}static get protocolCat(){return"Protocol"}static get retry(){return s}static get retryCat(){return"Retry"}static get location(){return r}static get locationCat(){return"Locator"}static get slicing(){return o}static get slicingCat(){return"Slicing"}}},function(){const e=Ice.AsyncStatus,t=Ice.AsyncResultBase,n=Ice.InputStream,i=Ice.OutputStream,s=Ice.BatchRequestQueue,r=Ice.ConnectionFlushBatch,o=Ice.HeartbeatAsync,c=Ice.Debug,a=Ice.ExUtil,h=Ice.HashMap,l=Ice.IncomingAsync,u=Ice.RetryException,d=Ice.Protocol,p=Ice.SocketOperation,_=Ice.Timer,g=Ice.TraceUtil,I=Ice.ProtocolVersion,f=Ice.EncodingVersion,m=Ice.ACM,w=Ice.ACMClose,y=Ice.ACMHeartbeat,x=Ice.ConnectionClose,S=0,E=1,v=2,b=3,C=4,M=5,P=6;class k{constructor(e){this.stream=new n(e,d.currentProtocolEncoding),this.invokeNum=0,this.requestId=0,this.servantManager=null,this.adapter=null,this.outAsync=null,this.heartbeatCallback=null}}class A{constructor(e,t,r,o,c,a,l){this._communicator=e,this._instance=t,this._monitor=r,this._transceiver=o,this._desc=o.toString(),this._type=o.type(),this._endpoint=c,this._incoming=a,this._adapter=l;const u=t.initializationData();this._logger=u.logger,this._traceLevels=t.traceLevels(),this._timer=t.timer(),this._writeTimeoutId=0,this._writeTimeoutScheduled=!1,this._readTimeoutId=0,this._readTimeoutScheduled=!1,this._hasMoreData={value:!1},this._warn=u.properties.getPropertyAsInt("Ice.Warn.Connections")>0,this._warnUdp=t.initializationData().properties.getPropertyAsInt("Ice.Warn.Datagrams")>0,this._acmLastActivity=null!==this._monitor&&this._monitor.getACM().timeout>0?Date.now():-1,this._nextRequestId=1,this._messageSizeMax=l?l.messageSizeMax():t.messageSizeMax(),this._batchRequestQueue=new s(t,c.datagram()),this._sendStreams=[],this._readStream=new n(t,d.currentProtocolEncoding),this._readHeader=!1,this._writeStream=new i(t,d.currentProtocolEncoding),this._readStreamPos=-1,this._writeStreamPos=-1,this._dispatchCount=0,this._state=S,this._shutdownInitiated=!1,this._initialized=!1,this._validated=!1,this._readProtocol=new I,this._readProtocolEncoding=new f,this._asyncRequests=new h,this._exception=null,this._startPromise=null,this._closePromises=[],this._finishedPromises=[],null!==this._adapter?this._servantManager=this._adapter.getServantManager():this._servantManager=null,this._closeCallback=null,this._heartbeatCallback=null}start(){c.assert(null===this._startPromise);try{if(this._state>=M)return c.assert(null!==this._exception),Ice.Promise.reject(this._exception);this._startPromise=new Ice.Promise,this._transceiver.setCallbacks(()=>this.message(p.Write),()=>this.message(p.Read),()=>this.message(p.Write)),this.initialize()}catch(e){const t=this._startPromise;return this.exception(e),t}return this._startPromise}activate(){this._state<=E||(this._acmLastActivity>0&&(this._acmLastActivity=Date.now()),this.setState(v))}hold(){this._state<=E||this.setState(b)}destroy(e){switch(e){case A.ObjectAdapterDeactivated:this.setState(C,new Ice.ObjectAdapterDeactivatedException);break;case A.CommunicatorDestroyed:this.setState(C,new Ice.CommunicatorDestroyedException);break;default:c.assert(!1)}}close(e){const n=new t(this._communicator,"close",this,null,null);return e==x.Forcefully?(this.setState(M,new Ice.ConnectionManuallyClosedException(!1)),n.resolve()):e==x.Gracefully?(this.setState(C,new Ice.ConnectionManuallyClosedException(!0)),n.resolve()):(c.assert(e==x.GracefullyWithWait),this._closePromises.push(n),this.checkClose()),n}checkClose(){0===this._asyncRequests.size&&this._closePromises.length>0&&_.setImmediate(()=>{this.setState(C,new Ice.ConnectionManuallyClosedException(!0)),this._closePromises.forEach(e=>e.resolve()),this._closePromises=[]})}isActiveOrHolding(){return this._state>E&&this._state=C),this._exception}waitUntilFinished(){const e=new Ice.Promise;return this._finishedPromises.push(e),this.checkState(),e}monitor(e,t){this._state===v&&((t.heartbeat==Ice.ACMHeartbeat.HeartbeatAlways||t.heartbeat!=Ice.ACMHeartbeat.HeartbeatOff&&this._writeStream.isEmpty()&&e>=this._acmLastActivity+t.timeout/4)&&(t.heartbeat!=Ice.ACMHeartbeat.HeartbeatOnDispatch||this._dispatchCount>0)&&this.sendHeartbeatNow(),this._readStream.size>d.headerSize||!this._writeStream.isEmpty()||t.close!=Ice.ACMClose.CloseOff&&e>=this._acmLastActivity+t.timeout&&(t.close==Ice.ACMClose.CloseOnIdleForceful||t.close!=Ice.ACMClose.CloseOnIdle&&this._asyncRequests.size>0?this.setState(M,new Ice.ConnectionTimeoutException):t.close!=Ice.ACMClose.CloseOnInvocation&&0===this._dispatchCount&&this._batchRequestQueue.isEmpty()&&0===this._asyncRequests.size&&this.setState(C,new Ice.ConnectionTimeoutException)))}sendAsyncRequest(e,t,n){let i=0;const s=e.getOs();if(null!==this._exception)throw new u(this._exception);let r;c.assert(this._state>E),c.assert(this._state0&&(s.pos=d.headerSize,s.writeInt(n));try{r=this.sendMessage(O.create(e,e.getOs(),i))}catch(e){throw e instanceof Ice.LocalException?(this.setState(M,e),c.assert(null!==this._exception),this._exception):e}return t&&this._asyncRequests.set(i,e),r}getBatchRequestQueue(){return this._batchRequestQueue}flushBatchRequests(){const e=new r(this,this._communicator,"flushBatchRequests");return e.invoke(),e}setCloseCallback(e){this._state>=M?null!==e&&_.setImmediate(()=>{try{e(this)}catch(e){this._logger.error("connection callback exception:\n"+e+"\n"+this._desc)}}):this._closeCallback=e}setHeartbeatCallback(e){this._state>=M||(this._heartbeatCallback=e)}heartbeat(){const e=new o(this,this._communicator);return e.invoke(),e}setACM(e,t,n){if(void 0!==e&&e<0)throw new RangeError("invalid negative ACM timeout value");null===this._monitor||this._state>=M||(this._state==v&&this._monitor.remove(this),this._monitor=this._monitor.acm(e,t,n),this._state==v&&this._monitor.add(this),this._monitor.getACM().timeout<=0?this._acmLastActivity=-1:this._state==v&&-1==this._acmLastActivity&&(this._acmLastActivity=Date.now()))}getACM(){return null!==this._monitor?this._monitor.getACM():new m(0,w.CloseOff,y.HeartbeatOff)}asyncRequestCanceled(e,t){for(let n=0;n0&&this._asyncRequests.delete(i.requestId),i.canceled(),0!==n&&this._sendStreams.splice(n,1),e.completedEx(t),void this.checkClose()}if(e instanceof Ice.OutgoingAsync)for(const[n,i]of this._asyncRequests)if(i===e)return this._asyncRequests.delete(n),e.completedEx(t),void this.checkClose()}sendResponse(e){c.assert(this._state>E);try{if(0==--this._dispatchCount&&(this._state===P&&this.reap(),this.checkState()),this._state>=M)throw c.assert(null!==this._exception),this._exception;this.sendMessage(O.createForStream(e,!0)),this._state===C&&0===this._dispatchCount&&this.initiateShutdown()}catch(e){if(!(e instanceof Ice.LocalException))throw e;this.setState(M,e)}}sendNoResponse(){c.assert(this._state>E);try{if(0==--this._dispatchCount&&(this._state===P&&this.reap(),this.checkState()),this._state>=M)throw c.assert(null!==this._exception),this._exception;this._state===C&&0===this._dispatchCount&&this.initiateShutdown()}catch(e){if(!(e instanceof Ice.LocalException))throw e;this.setState(M,e)}}endpoint(){return this._endpoint}setAdapter(e){if(null!==e){if(e.checkForDeactivation(),this._state<=E||this._state>=C)return;this._adapter=e,this._servantManager=e.getServantManager()}else{if(this._state<=E||this._state>=C)return;this._adapter=null,this._servantManager=null}}getAdapter(){return this._adapter}getEndpoint(){return this._endpoint}createProxy(e){return this._instance.proxyFactory().referenceToProxy(this._instance.referenceFactory().createFixed(e,this))}message(e){if(this._state>=M)return;this.unscheduleTimeout(e),this._hasMoreData.value=0!=(e&p.Read);let t=null;try{if(0!=(e&p.Write)&&this._writeStream.buffer.remaining>0){if(!this.write(this._writeStream.buffer))return c.assert(!this._writeStream.isEmpty()),void this.scheduleTimeout(p.Write);c.assert(0===this._writeStream.buffer.remaining)}if(0!=(e&p.Read)&&!this._readStream.isEmpty()){if(this._readHeader){if(!this.read(this._readStream.buffer))return;c.assert(0===this._readStream.buffer.remaining),this._readHeader=!1,this._validated=!0;const e=this._readStream.pos;if(ethis._messageSizeMax&&a.throwMemoryLimitException(r,this._messageSizeMax),r>this._readStream.size&&this._readStream.resize(r),this._readStream.pos=e}if(this._readStream.pos!=this._readStream.size){if(this._endpoint.datagram())throw new Ice.DatagramLimitException;if(!this.read(this._readStream.buffer))return c.assert(!this._readStream.isEmpty()),void this.scheduleTimeout(p.Read);c.assert(0===this._readStream.buffer.remaining)}}if(this._state<=E){if(this._state===S&&!this.initialize())return;if(this._state<=E&&!this.validate())return;this._transceiver.unregister(),this.setState(b),null!==this._startPromise&&++this._dispatchCount}else c.assert(this._state<=C),0!=(e&p.Read)&&(t=this.parseMessage()),0!=(e&p.Write)&&this.sendNextMessage()}catch(e){if(e instanceof Ice.DatagramLimitException)return this._warnUdp&&this._logger.warning("maximum datagram size of "+this._readStream.pos+" exceeded"),this._readStream.resize(d.headerSize),this._readStream.pos=0,void(this._readHeader=!0);if(e instanceof Ice.SocketException)return void this.setState(M,e);if(e instanceof Ice.LocalException)return void(this._endpoint.datagram()?(this._warn&&this._logger.warning("datagram connection exception:\n"+e+"\n"+this._desc),this._readStream.resize(d.headerSize),this._readStream.pos=0,this._readHeader=!0):this.setState(M,e));throw e}this._acmLastActivity>0&&(this._acmLastActivity=Date.now()),this.dispatch(t),this._hasMoreData.value&&_.setImmediate(()=>this.message(p.Read))}dispatch(e){let t=0;if(null!==this._startPromise&&(this._startPromise.resolve(),this._startPromise=null,++t),null!==e&&(null!==e.outAsync&&(e.outAsync.completed(e.stream),++t),e.invokeNum>0&&this.invokeAll(e.stream,e.invokeNum,e.requestId,e.servantManager,e.adapter),e.heartbeatCallback)){try{e.heartbeatCallback(this)}catch(e){this._logger.error("connection callback exception:\n"+e+"\n"+this._desc)}e.heartbeatCallback=null,++t}if(t>0&&(this._dispatchCount-=t,0===this._dispatchCount)){if(this._state===C)try{this.initiateShutdown()}catch(e){if(!(e instanceof Ice.LocalException))throw e;this.setState(M,e)}else this._state===P&&this.reap();this.checkState()}}finish(){c.assert(this._state===M),this.unscheduleTimeout(p.Read|p.Write|p.Connect);const e=this._instance.traceLevels();if(this._initialized){if(e.network>=1){const t=[];t.push("closed "),t.push(this._endpoint.protocol()),t.push(" connection\n"),t.push(this.toString()),this._exception instanceof Ice.CloseConnectionException||this._exception instanceof Ice.ConnectionManuallyClosedException||this._exception instanceof Ice.ConnectionTimeoutException||this._exception instanceof Ice.CommunicatorDestroyedException||this._exception instanceof Ice.ObjectAdapterDeactivatedException||(t.push("\n"),t.push(this._exception.toString())),this._instance.initializationData().logger.trace(e.networkCat,t.join(""))}}else if(e.network>=2){const t=[];t.push("failed to establish "),t.push(this._endpoint.protocol()),t.push(" connection\n"),t.push(this.toString()),t.push("\n"),t.push(this._exception.toString()),this._instance.initializationData().logger.trace(e.networkCat,t.join(""))}if(null!==this._startPromise&&(this._startPromise.reject(this._exception),this._startPromise=null),this._sendStreams.length>0){this._writeStream.isEmpty()||this._writeStream.swap(this._sendStreams[0].stream);for(let e=0;e0&&this._asyncRequests.delete(t.requestId),t.completed(this._exception)}this._sendStreams=[]}for(const e of this._asyncRequests.values())e.completedEx(this._exception);if(this._asyncRequests.clear(),this.checkClose(),this._readStream.clear(),this._readStream.buffer.clear(),this._writeStream.clear(),this._writeStream.buffer.clear(),null!==this._closeCallback){try{this._closeCallback(this)}catch(e){this._logger.error("connection callback exception:\n"+e+"\n"+this._desc)}this._closeCallback=null}this._heartbeatCallback=null,0===this._dispatchCount&&this.reap(),this.setState(P)}toString(){return this._desc}timedOut(e){this._state<=E?this.setState(M,new Ice.ConnectTimeoutException):this._state=M)throw this._exception;const e=this._transceiver.getInfo();for(let t=e;null!==t;t=t.underlying)t.adapterName=null!==this._adapter?this._adapter.getName():"",t.incoming=this._incoming;return e}setBufferSize(e,t){if(this._state>=M)throw this._exception;this._transceiver.setBufferSize(e,t)}exception(e){this.setState(M,e)}invokeException(e,t){this.setState(M,e),t>0&&(c.assert(this._dispatchCount>0),this._dispatchCount-=t,c.assert(this._dispatchCount>=0),0===this._dispatchCount&&(this._state===P&&this.reap(),this.checkState()))}setState(e,t){if(void 0!==t){if(c.assert(t instanceof Ice.LocalException),c.assert(e>=C),this._state===e)return;null===this._exception&&(this._exception=t,this._warn&&this._validated&&(this._exception instanceof Ice.CloseConnectionException||this._exception instanceof Ice.ConnectionManuallyClosedException||this._exception instanceof Ice.ConnectionTimeoutException||this._exception instanceof Ice.CommunicatorDestroyedException||this._exception instanceof Ice.ObjectAdapterDeactivatedException||this._exception instanceof Ice.ConnectionLostException&&this._state===C||this.warning("connection exception",this._exception)))}if(this._endpoint.datagram()&&e===C&&(e=M),this._state<=E&&e===C&&(e=M),this._state!==e){try{switch(e){case S:c.assert(!1);break;case E:if(this._state!==S)return void c.assert(this._state===M);this._endpoint.datagram()||this._incoming||this._transceiver.register();break;case v:if(this._state!==b&&this._state!==E)return;this._transceiver.register();break;case b:if(this._state!==v&&this._state!==E)return;this._state===v&&this._transceiver.unregister();break;case C:if(this._state>=M)return;this._state===b&&this._transceiver.register();break;case M:if(this._state===P)return;this._batchRequestQueue.destroy(this._exception),this._transceiver.unregister();break;case P:c.assert(this._state===M),this._transceiver.close(),this._communicator=null;break;default:c.assert(!1)}}catch(t){if(!(t instanceof Ice.LocalException))throw t;this._instance.initializationData().logger.error(`unexpected connection exception:\n${this._desc}\n${t.toString()}`)}if(null!==this._monitor&&(e===v?(this._monitor.add(this),this._acmLastActivity>0&&(this._acmLastActivity=Date.now())):this._state===v&&this._monitor.remove(this)),this._state=e,this._state===C&&0===this._dispatchCount)try{this.initiateShutdown()}catch(t){if(!(t instanceof Ice.LocalException))throw t;this.setState(M,t)}else this._state===M&&this.finish();this.checkState()}}initiateShutdown(){if(c.assert(this._state===C&&0===this._dispatchCount),!this._shutdownInitiated&&(this._shutdownInitiated=!0,!this._endpoint.datagram())){const t=new i(this._instance,d.currentProtocolEncoding);t.writeBlob(d.magic),d.currentProtocol._write(t),d.currentProtocolEncoding._write(t),t.writeByte(d.closeConnectionMsg),t.writeByte(0),t.writeInt(d.headerSize),(this.sendMessage(O.createForStream(t,!1))&e.Sent)>0&&this.scheduleTimeout(p.Read)}}sendHeartbeatNow(){if(c.assert(this._state===v),!this._endpoint.datagram()){const e=new i(this._instance,d.currentProtocolEncoding);e.writeBlob(d.magic),d.currentProtocol._write(e),d.currentProtocolEncoding._write(e),e.writeByte(d.validateConnectionMsg),e.writeByte(0),e.writeInt(d.headerSize);try{this.sendMessage(O.createForStream(e,!1))}catch(e){this.setState(M,e),c.assert(null!==this._exception)}}}initialize(){const e=this._transceiver.initialize(this._readStream.buffer,this._writeStream.buffer);return e!=p.None?(this.scheduleTimeout(e),!1):(this._desc=this._transceiver.toString(),this._initialized=!0,this.setState(E),!0)}validate(){if(!this._endpoint.datagram())if(null!==this._adapter){if(0===this._writeStream.size&&(this._writeStream.writeBlob(d.magic),d.currentProtocol._write(this._writeStream),d.currentProtocolEncoding._write(this._writeStream),this._writeStream.writeByte(d.validateConnectionMsg),this._writeStream.writeByte(0),this._writeStream.writeInt(d.headerSize),g.traceSend(this._writeStream,this._logger,this._traceLevels),this._writeStream.prepareWrite()),this._writeStream.pos!=this._writeStream.size&&!this.write(this._writeStream.buffer))return this.scheduleTimeout(p.Write),!1}else{if(0===this._readStream.size&&(this._readStream.resize(d.headerSize),this._readStream.pos=0),this._readStream.pos!==this._readStream.size&&!this.read(this._readStream.buffer))return this.scheduleTimeout(p.Read),!1;this._validated=!0,c.assert(this._readStream.pos===d.headerSize),this._readStream.pos=0;const e=this._readStream.readBlob(4);if(e[0]!==d.magic[0]||e[1]!==d.magic[1]||e[2]!==d.magic[2]||e[3]!==d.magic[3])throw new Ice.BadMagicException("",e);if(this._readProtocol._read(this._readStream),d.checkSupportedProtocol(this._readProtocol),this._readProtocolEncoding._read(this._readStream),d.checkSupportedProtocolEncoding(this._readProtocolEncoding),this._readStream.readByte()!==d.validateConnectionMsg)throw new Ice.ConnectionNotValidatedException;if(this._readStream.readByte(),this._readStream.readInt()!==d.headerSize)throw new Ice.IllegalMessageSizeException;g.traceRecv(this._readStream,this._logger,this._traceLevels)}this._writeStream.resize(0),this._writeStream.pos=0,this._readStream.resize(d.headerSize),this._readHeader=!0,this._readStream.pos=0;const e=this._instance.traceLevels();if(e.network>=1){const t=[];this._endpoint.datagram()?(t.push("starting to send "),t.push(this._endpoint.protocol()),t.push(" messages\n"),t.push(this._transceiver.toDetailedString())):(t.push("established "),t.push(this._endpoint.protocol()),t.push(" connection\n"),t.push(this.toString())),this._instance.initializationData().logger.trace(e.networkCat,t.join(""))}return!0}sendNextMessage(){if(0!==this._sendStreams.length){c.assert(!this._writeStream.isEmpty()&&this._writeStream.pos===this._writeStream.size);try{for(;;){let e=this._sendStreams.shift();if(this._writeStream.swap(e.stream),e.sent(),0===this._sendStreams.length)break;if(this._state>=M)return;e=this._sendStreams[0],c.assert(!e.prepared);const t=e.stream;if(t.pos=10,t.writeInt(t.size),t.prepareWrite(),e.prepared=!0,g.traceSend(t,this._logger,this._traceLevels),this._writeStream.swap(e.stream),this._writeStream.pos!=this._writeStream.size&&!this.write(this._writeStream.buffer))return c.assert(!this._writeStream.isEmpty()),void this.scheduleTimeout(p.Write)}}catch(e){if(e instanceof Ice.LocalException)return void this.setState(M,e);throw e}c.assert(this._writeStream.isEmpty()),this._state===C&&this._shutdownInitiated&&this.scheduleTimeout(p.Read)}}sendMessage(t){if(this._sendStreams.length>0)return t.doAdopt(),this._sendStreams.push(t),e.Queued;c.assert(this._state0&&(this._acmLastActivity=Date.now()),e.Sent):(t.doAdopt(),this._writeStream.swap(t.stream),this._sendStreams.push(t),this.scheduleTimeout(p.Write),e.Queued)}parseMessage(){c.assert(this._state>E&&this._state0;){new l(this._instance,this,s,!this._endpoint.datagram()&&0!==n,n).invoke(i,e),--t}e.clear()}catch(e){e instanceof Ice.LocalException?this.invokeException(e,t):(this._logger.error("unexpected exception:\n"+e.toString()),this.invokeException(new Ice.UnknownException(e),t))}}scheduleTimeout(e){let t;if(this._statethis.timedOut(),t),this._readTimeoutScheduled=!0),0!=(e&(p.Write|p.Connect))&&(this._writeTimeoutScheduled&&this._timer.cancel(this._writeTimeoutId),this._writeTimeoutId=this._timer.schedule(()=>this.timedOut(),t),this._writeTimeoutScheduled=!0))}unscheduleTimeout(e){0!=(e&p.Read)&&this._readTimeoutScheduled&&(this._timer.cancel(this._readTimeoutId),this._readTimeoutScheduled=!1),0!=(e&(p.Write|p.Connect))&&this._writeTimeoutScheduled&&(this._timer.cancel(this._writeTimeoutId),this._writeTimeoutScheduled=!1)}warning(e,t){this._logger.warning(e+":\n"+this._desc+"\n"+t.toString())}checkState(){this._state0||this._state===P&&this._finishedPromises.length>0&&(this._adapter=null,this._finishedPromises.forEach(e=>e.resolve()),this._finishedPromises=[])}reap(){null!==this._monitor&&this._monitor.reap(this)}read(e){const t=e.position,n=this._transceiver.read(e,this._hasMoreData);if(this._instance.traceLevels().network>=3&&e.position!=t){const n=[];n.push("received "),this._endpoint.datagram()?n.push(e.limit):(n.push(e.position-t),n.push(" of "),n.push(e.limit-t)),n.push(" bytes via "),n.push(this._endpoint.protocol()),n.push("\n"),n.push(this.toString()),this._instance.initializationData().logger.trace(this._instance.traceLevels().networkCat,n.join(""))}return n}write(e){const t=e.position,n=this._transceiver.write(e);if(this._instance.traceLevels().network>=3&&e.position!=t){const n=[];n.push("sent "),n.push(e.position-t),this._endpoint.datagram()||(n.push(" of "),n.push(e.limit-t)),n.push(" bytes via "),n.push(this._endpoint.protocol()),n.push("\n"),n.push(this.toString()),this._instance.initializationData().logger.trace(this._instance.traceLevels().networkCat,n.join(""))}return n}}A.ObjectAdapterDeactivated=0,A.CommunicatorDestroyed=1,Ice.ConnectionI=A;class O{constructor(){this.stream=null,this.outAsync=null,this.requestId=0,this.prepared=!1}canceled(){c.assert(null!==this.outAsync),this.outAsync=null}doAdopt(){if(this.adopt){const e=new i(this.stream.instance,d.currentProtocolEncoding);e.swap(this.stream),this.stream=e,this.adopt=!1}}sent(){null!==this.outAsync&&this.outAsync.sent()}completed(e){null!==this.outAsync&&this.outAsync.completedEx(e)}static createForStream(e,t){const n=new O;return n.stream=e,n.adopt=t,n.isSent=!1,n.requestId=0,n.outAsync=null,n}static create(e,t,n){const i=new O;return i.stream=t,i.outAsync=e,i.requestId=n,i.isSent=!1,i.adopt=!1,i}}}(),function(){const e=Ice.Base64,t=Ice.Debug,n=Ice.HashUtil,i=Ice.StringUtil,s=Ice.EndpointParseException;class r extends Ice.EndpointI{constructor(e){super(),this._rawEncoding=Ice.Encoding_1_0,this._type=void 0===e?-1:e,this._rawBytes=null}streamWrite(e){e.startEncapsulation(this._rawEncoding,Ice.FormatType.DefaultFormat),e.writeBlob(this._rawBytes),e.endEncapsulation()}getInfo(){return new o(null,-1,!1,this._rawEncoding,this._rawBytes,this._type)}type(){return this._type}protocol(){return"opaque"}timeout(){return-1}changeTimeout(e){return this}changeConnectionId(e){return this}compress(){return!1}changeCompress(e){return this}datagram(){return!1}secure(){return!1}rawBytes(){return this._rawBytes}transceiver(e){return e.value=null,null}acceptor(e,t){return e.value=this,null}connect(){return null}hashCode(){if(void 0===this._hashCode){let e=5381;e=n.addNumber(e,this._type),e=n.addHashable(e,this._rawEncoding),e=n.addArray(e,this._rawBytes,n.addNumber),this._hashCode=e}return this._hashCode}options(){let t="";return t+=" -t "+this._type,t+=" -e "+Ice.encodingVersionToString(this._rawEncoding),t+=" -v "+e.encode(this._rawBytes)}equals(e){if(!(e instanceof r))return!1;if(this===e)return!0;if(this._type!==e._type)return!1;if(!this._rawEncoding.equals(e._rawEncoding))return!1;if(this._rawBytes.length!==e._rawBytes.length)return!1;for(let t=0;t-1)throw new s("multiple -t options in endpoint "+r);if(null===n)throw new s("no argument provided for -t option in endpoint "+r);let e;try{e=i.toInt(n)}catch(e){throw new s("invalid type value `"+n+"' in endpoint "+r)}if(e<0||e>65535)throw new s("type value `"+n+"' out of range in endpoint "+r);return this._type=e,!0}case"v":if(this._rawBytes)throw new s("multiple -v options in endpoint "+r);if(null===n||0===n.length)throw new s("no argument provided for -v option in endpoint "+r);for(let t=0;t=5?5:.2,Math.min(e,25)}setCallbacks(e,t,n){this._connectedCallback=e,this._bytesAvailableCallback=t,this._bytesWrittenCallback=n}initialize(e,t){try{if(this._exception)throw this._exception;if(this._state===o)return this._state=c,this._fd=new WebSocket(this._url,"ice.zeroc.com"),this._fd.binaryType="arraybuffer",this._fd.onopen=e=>this.socketConnected(e),this._fd.onmessage=e=>this.socketBytesAvailable(e.data),this._fd.onclose=e=>this.socketClosed(e),s.Connect;this._state===c&&(this._desc="local address = \nremote address = "+(n=this._addr).host+":"+n.port,this._state=a)}catch(e){throw this._exception||(this._exception=d(this._state,e)),this._exception}var n;return i.assert(this._state===a),s.None}register(){this._registered=!0,(this._hasBytesAvailable||this._exception)&&(this._hasBytesAvailable=!1,r.setTimeout(()=>this._bytesAvailableCallback(),0))}unregister(){this._registered=!1}close(){if(null!==this._fd)if(!t&&!n||this._fd.readyState!==WebSocket.CONNECTING){i.assert(null!==this._fd);try{this._state=l,this._fd.close()}catch(e){throw d(this._state,e)}finally{this._fd=null}}else this._state=h;else i.assert(this._exception)}write(e){if(this._exception)throw this._exception;if(0===e.remaining)return!0;i.assert(this._fd);const t=()=>{if(this._fd){const n=this._maxSendPacketSize>0&&e.remaining>this._maxSendPacketSize?this._maxSendPacketSize:e.remaining;this._fd.bufferedAmount+n<=this._maxSendPacketSize?this._bytesWrittenCallback(0,0):r.setTimeout(t,this.writeReadyTimeout())}};for(;;){const s=this._maxSendPacketSize>0&&e.remaining>this._maxSendPacketSize?this._maxSendPacketSize:e.remaining;if(0===e.remaining)break;if(i.assert(s>0),this._fd.bufferedAmount+s>this._maxSendPacketSize)return r.setTimeout(t,this.writeReadyTimeout()),!1;this._writeReadyTimeout=0;const o=e.b.slice(e.position,e.position+s);if(this._fd.send(o),e.position+=s,n&&e.remaining>0)return r.setTimeout(t,this.writeReadyTimeout()),!1}return!0}read(e,t){if(this._exception)throw this._exception;if(t.value=!1,0===this._readBuffers.length)return!1;let n=this._readBuffers[0].byteLength-this._readPosition;for(i.assert(n>0);e.remaining>0;)if(n>e.remaining&&(n=e.remaining),new Uint8Array(e.b).set(new Uint8Array(this._readBuffers[0],this._readPosition,n),e.position),e.position+=n,this._readPosition+=n,this._readPosition===this._readBuffers[0].byteLength){if(this._readPosition=0,this._readBuffers.shift(),0===this._readBuffers.length)break;n=this._readBuffers[0].byteLength}return t.value=this._readBuffers.length>0,0===e.remaining}type(){return this._secure?"wss":"ws"}getInfo(){i.assert(null!==this._fd);const t=new Ice.WSConnectionInfo,n=new Ice.TCPConnectionInfo;return n.localAddress="",n.localPort=-1,n.remoteAddress=this._addr.host,n.remotePort=this._addr.port,t.underlying=this._secure?new e.ConnectionInfo(n,n.timeout,n.compress):n,t.rcvSize=-1,t.sndSize=this._maxSendPacketSize,t.headers={},t}checkSendSize(e){}setBufferSize(e,t){this._maxSendPacketSize=t}toString(){return this._desc}socketConnected(e){this._state!=h?(i.assert(null!==this._connectedCallback),this._connectedCallback()):this.close()}socketBytesAvailable(e){i.assert(null!==this._bytesAvailableCallback),e.byteLength>0&&(this._readBuffers.push(e),this._registered?this._bytesAvailableCallback():this._hasBytesAvailable||(this._hasBytesAvailable=!0))}socketClosed(e){this._state!=h?(this._exception=d(this._state,e),this._state\nremote address = "+n.host+":"+n.port,s._state=o,s._secure=t,s._exception=null,s}}function d(e,t){return ee.destroy(t.CommunicatorDestroyed)),this._destroyed=!0,this._communicator=null,this.checkFinished())}waitUntilFinished(){return this._waitPromise=new Ice.Promise,this.checkFinished(),this._waitPromise}create(e,t,i){n.assert(e.length>0);const s=this.applyOverrides(e);try{const e=this.findConnectionByEndpoint(s);if(null!==e)return Ice.Promise.resolve(e)}catch(e){return Ice.Promise.reject(e)}return new o(this,s,t,i).start()}setRouterInfo(e){return Ice.Promise.try(()=>{if(this._destroyed)throw new Ice.CommunicatorDestroyedException;return e.getClientEndpoints()}).then(t=>{const n=e.getAdapter(),i=this._instance.defaultsAndOverrides();t.forEach(e=>{i.overrideTimeout&&(e=e.changeTimeout(i.overrideTimeoutValue)),e=e.changeCompress(!1),this._connectionsByEndpoint.forEach(t=>{t.endpoint().equals(e)&&t.setAdapter(n)})})})}removeAdapter(e){this._destroyed||this._connectionsByEndpoint.forEach(t=>{t.getAdapter()===e&&t.setAdapter(null)})}flushAsyncBatchRequests(){const t=new e(this._communicator,"flushBatchRequests",null,null,null);return this._destroyed?(t.resolve(),t):(Ice.Promise.all(this._connectionsByEndpoint.map(e=>{if(e.isActiveOrHolding())return e.flushBatchRequests().catch(e=>{if(!(e instanceof Ice.LocalException))throw e})})).then(t.resolve,t.reject),t)}applyOverrides(e){const t=this._instance.defaultsAndOverrides();return e.map(e=>t.overrideTimeout?e.changeTimeout(t.overrideTimeoutValue):e)}findConnectionByEndpoint(e){if(this._destroyed)throw new Ice.CommunicatorDestroyedException;n.assert(e.length>0);for(let t=0;t=0),this._destroyed&&0===this._pendingConnectCount&&this.checkFinished()}getConnection(e,t){if(this._destroyed)throw new Ice.CommunicatorDestroyedException;const n=this._monitor.swapReapedConnections();for(null!==n&&n.forEach(e=>{this._connectionsByEndpoint.removeConnection(e.endpoint(),e),this._connectionsByEndpoint.removeConnection(e.endpoint().changeCompress(!0),e)});;){if(this._destroyed)throw new Ice.CommunicatorDestroyedException;const n=this.findConnectionByEndpoint(e);if(null!==n)return n;if(this.addToPending(t,e))return null;break}return t.nextEndpoint(),null}createConnection(e,i){n.assert(this._pending.has(i)&&null!==e);let s=null;try{if(this._destroyed)throw new Ice.CommunicatorDestroyedException;s=new t(this._communicator,this._instance,this._monitor,e,i.changeCompress(!1),!1,null)}catch(t){if(t instanceof Ice.LocalException)try{e.close()}catch(e){}throw t}return this._connectionsByEndpoint.set(s.endpoint(),s),this._connectionsByEndpoint.set(s.endpoint().changeCompress(!0),s),s}finishGetConnection(e,t,n,i){const s=[];null!==i&&s.push(i);const r=[];e.forEach(e=>{const n=this._pending.get(e);void 0!==n&&(this._pending.delete(e),n.forEach(e=>{e.hasEndpoint(t)?-1===s.indexOf(e)&&s.push(e):-1===r.indexOf(e)&&r.push(e)}))}),s.forEach(e=>{e.removeFromPending();const t=r.indexOf(e);-1!==t&&r.splice(t,1)}),r.forEach(e=>e.removeFromPending()),r.forEach(e=>e.getConnection()),s.forEach(e=>e.setConnection(n)),this.checkFinished()}finishGetConnectionEx(e,t,i){const s=[];null!==i&&s.push(i);const r=[];e.forEach(t=>{const n=this._pending.get(t);void 0!==n&&(this._pending.delete(t),n.forEach(t=>{t.removeEndpoints(e)?-1===s.indexOf(t)&&s.push(t):-1===r.indexOf(t)&&r.push(t)}))}),r.forEach(e=>{n.assert(-1===s.indexOf(e)),e.removeFromPending()}),this.checkFinished(),r.forEach(e=>e.getConnection()),s.forEach(e=>e.setException(t))}addToPending(e,t){let n=!1;return null!==e&&t.forEach(t=>{const i=this._pending.get(t);void 0!==i&&(n=!0,-1===i.indexOf(e)&&i.push(e))}),!!n||(t.forEach(e=>{this._pending.has(e)||this._pending.set(e,[])}),!1)}removeFromPending(e,t){t.forEach(t=>{const n=this._pending.get(t);if(void 0!==n){const t=n.indexOf(e);-1!==t&&n.splice(t,1)}})}handleConnectionException(e,t){const n=this._instance.traceLevels();if(n.network>=2){const i=[];i.push("connection to endpoint failed"),e instanceof Ice.CommunicatorDestroyedException?i.push("\n"):t?i.push(", trying next endpoint\n"):i.push(" and no more endpoints to try\n"),i.push(e.toString()),this._instance.initializationData().logger.trace(n.networkCat,i.join(""))}}handleException(e,t){const n=this._instance.traceLevels();if(n.network>=2){const i=[];i.push("couldn't resolve endpoint host"),e instanceof Ice.CommunicatorDestroyedException?i.push("\n"):t?i.push(", trying next endpoint\n"):i.push(" and no more endpoints to try\n"),i.push(e.toString()),this._instance.initializationData().logger.trace(n.networkCat,i.join(""))}}checkFinished(){!this._waitPromise||!this._destroyed||this._pending.size>0||this._pendingConnectCount>0||Ice.Promise.all(this._connectionsByEndpoint.map(e=>e.waitUntilFinished().catch(e=>n.assert(!1)))).then(()=>{const e=this._monitor.swapReapedConnections();if(null!==e){const t=[];this._connectionsByEndpoint.forEach(e=>{-1===t.indexOf(e)&&t.push(e)}),n.assert(e.length===t.length),this._connectionsByEndpoint.clear()}else n.assert(0===this._connectionsByEndpoint.size);n.assert(null!==this._waitPromise),this._waitPromise.resolve(),this._monitor.destroy()})}};class r extends i{constructor(e){super(e||i.compareEquals)}set(e,i){let s=this.get(e);void 0===s&&(s=[],super.set(e,s)),n.assert(i instanceof t),s.push(i)}removeConnection(e,t){const i=this.get(e);n.assert(null!==i);const s=i.indexOf(t);n.assert(-1!==s),i.splice(s,1),0===i.length&&this.delete(e)}map(e){const t=[];return this.forEach(n=>t.push(e(n))),t}forEach(e){for(const t of this.values())t.forEach(e)}}class o{constructor(e,t,n,i){this._factory=e,this._endpoints=t,this._hasMore=n,this._selType=i,this._promise=new Ice.Promise,this._index=0,this._current=null}connectionStartCompleted(e){e.activate(),this._factory.finishGetConnection(this._endpoints,this._current,e,this)}connectionStartFailed(e,t){n.assert(null!==this._current),this.connectionStartFailedImpl(t)&&this.nextEndpoint()}setConnection(e){this._promise.resolve(e),this._factory.decPendingConnectCount()}setException(e){this._promise.reject(e),this._factory.decPendingConnectCount()}hasEndpoint(e){return-1!==this.findEndpoint(e)}findEndpoint(e){return this._endpoints.findIndex(t=>e.equals(t))}removeEndpoints(e){return e.forEach(e=>{const t=this.findEndpoint(e);-1!==t&&this._endpoints.splice(t,1)}),this._index=0,0===this._endpoints.length}removeFromPending(){this._factory.removeFromPending(this,this._endpoints)}start(){try{this._factory.incPendingConnectCount()}catch(e){return void this._promise.reject(e)}return this.getConnection(),this._promise}getConnection(){try{const e=this._factory.getConnection(this._endpoints,this);if(null===e)return;this._promise.resolve(e),this._factory.decPendingConnectCount()}catch(e){this._promise.reject(e),this._factory.decPendingConnectCount()}}nextEndpoint(){const e=e=>{e.start().then(()=>{this.connectionStartCompleted(e)},t=>{this.connectionStartFailed(e,t)})};for(;;){const t=this._factory._instance.traceLevels();try{if(n.assert(this._index=2){const e=[];e.push("trying to establish "),e.push(this._current.protocol()),e.push(" connection to "),e.push(this._current.toConnectorString()),this._factory._instance.initializationData().logger.trace(t.networkCat,e.join(""))}e(this._factory.createConnection(this._current.connect(),this._current))}catch(e){if(t.network>=2){const n=[];n.push("failed to establish "),n.push(this._current.protocol()),n.push(" connection to "),n.push(this._current.toString()),n.push("\n"),n.push(e.toString()),this._factory._instance.initializationData().logger.trace(t.networkCat,n.join(""))}if(this.connectionStartFailedImpl(e))continue}break}}connectionStartFailedImpl(e){if(e instanceof Ice.LocalException)if(this._factory.handleConnectionException(e,this._hasMore||this._index0)throw new Ice.IllegalIdentityException(h);if(-1!=o.findFirstNotOf(e,i,s))throw new Ice.ProxyParseException("invalid characters after identity in `"+e+"'");return null}let l="",u=r.ModeTwoway,d=!1,p=this._instance.defaultsAndOverrides().defaultEncoding,_=Ice.Protocol_1_0,g="";for(;-1!==(c=o.findFirstNotOf(e,i,s))&&":"!=e.charAt(c)&&"@"!=e.charAt(c)&&(-1==(s=o.findFirstOf(e,i+":@",c))&&(s=e.length),c!=s);){const t=e.substring(c,s);if(2!=t.length||"-"!=t.charAt(0))throw new Ice.ProxyParseException("expected a proxy option but found `"+t+"' in `"+e+"'");let n=null;const a=o.findFirstNotOf(e,i,s);if(-1!=a){const r=e.charAt(a);if("@"!=r&&":"!=r&&"-"!=r){if(c=a,-1==(s=o.checkQuote(e,c)))throw new Ice.ProxyParseException("mismatched quotes around value for "+t+" option in `"+e+"'");0===s?(-1===(s=o.findFirstOf(e,i+":@",c))&&(s=e.length),n=e.substring(c,s)):(c++,n=e.substring(c,s),s++)}}switch(t.charAt(1)){case"f":if(null===n)throw new Ice.ProxyParseException("no argument provided for -f option in `"+e+"'");try{l=o.unescapeString(n,0,n.length)}catch(t){throw new Ice.ProxyParseException("invalid facet in `"+e+"': "+t.message)}break;case"t":if(null!==n)throw new Ice.ProxyParseException("unexpected argument `"+n+"' provided for -t option in `"+e+"'");u=r.ModeTwoway;break;case"o":if(null!==n)throw new Ice.ProxyParseException("unexpected argument `"+n+"' provided for -o option in `"+e+"'");u=r.ModeOneway;break;case"O":if(null!==n)throw new Ice.ProxyParseException("unexpected argument `"+n+"' provided for -O option in `"+e+"'");u=r.ModeBatchOneway;break;case"d":if(null!==n)throw new Ice.ProxyParseException("unexpected argument `"+n+"' provided for -d option in `"+e+"'");u=r.ModeDatagram;break;case"D":if(null!==n)throw new Ice.ProxyParseException("unexpected argument `"+n+"' provided for -D option in `"+e+"'");u=r.ModeBatchDatagram;break;case"s":if(null!==n)throw new Ice.ProxyParseException("unexpected argument `"+n+"' provided for -s option in `"+e+"'");d=!0;break;case"e":if(null===n)throw new Ice.ProxyParseException("no argument provided for -e option in `"+e+"'");try{p=Ice.stringToEncodingVersion(n)}catch(t){throw new Ice.ProxyParseException("invalid encoding version `"+n+"' in `"+e+"':\n"+t.str)}break;case"p":if(null===n)throw new Ice.ProxyParseException("no argument provided for -p option in `"+e+"'");try{_=Ice.stringToProtocolVersion(n)}catch(t){throw new Ice.ProxyParseException("invalid protocol version `"+n+"' in `"+e+"':\n"+t.str)}break;default:throw new Ice.ProxyParseException("unknown option `"+t+"' in `"+e+"'")}}if(-1===c)return this.createImpl(h,l,u,d,_,p,null,null,n);const I=[];if(":"==e.charAt(c)){const i=[];for(s=c;s0),new Ice.EndpointParseException("invalid endpoint `"+i[0]+"' in `"+e+"'");if(0!==i.length&&this._instance.initializationData().properties.getPropertyAsIntWithDefault("Ice.Warn.Endpoints",1)>0){const e=[];e.push("Proxy contains unknown endpoints:"),i.forEach(t=>{e.push(" `"),e.push(t),e.push("'")}),this._instance.initializationData().logger.warning(e.join(""))}return this.createImpl(h,l,u,d,_,p,I,null,n)}if("@"==e.charAt(c)){if(-1==(c=o.findFirstNotOf(e,i,c+1)))throw new Ice.ProxyParseException("missing adapter id in `"+e+"'");let t=null;if(-1===(s=o.checkQuote(e,c)))throw new Ice.ProxyParseException("mismatched quotes around adapter id in `"+e+"'");if(0===s?(-1===(s=o.findFirstOf(e,i,c))&&(s=e.length),t=e.substring(c,s)):(c++,t=e.substring(c,s),s++),s!==e.length&&-1!==o.findFirstNotOf(e,i,s))throw new Ice.ProxyParseException("invalid trailing characters after `"+e.substring(0,s+1)+"' in `"+e+"'");try{g=o.unescapeString(t,0,t.length)}catch(t){throw new Ice.ProxyParseException("invalid adapter id in `"+e+"': "+t.message)}if(0===g.length)throw new Ice.ProxyParseException("empty adapter id in `"+e+"'");return this.createImpl(h,l,u,d,_,p,null,g,n)}throw new Ice.ProxyParseException("malformed proxy `"+e+"'")}createFromStream(e,t){if(0===e.name.length&&0===e.category.length)return null;const n=c.read(t);let i;if(n.length>0){if(n.length>1)throw new Ice.ProxyUnmarshalException;i=n[0]}else i="";const s=t.readByte();if(s<0||s>r.ModeLast)throw new Ice.ProxyUnmarshalException;const o=t.readBool();let a=null,h=null;t.getEncoding().equals(Ice.Encoding_1_0)?(a=Ice.Protocol_1_0,h=Ice.Encoding_1_0):((a=new Ice.ProtocolVersion)._read(t),(h=new Ice.EncodingVersion)._read(t));let l=null,u=null;const d=t.readSize();if(d>0){l=[];for(let e=0;e!g.some(n=>t===e+"."+n)))).length>0){const n=[];n.push("found unknown properties for proxy '"),n.push(e),n.push("':"),t.forEach(e=>n.push("\n ",e)),this._instance.initializationData().logger.warning(n.join(""))}}createImpl(e,t,n,i,s,r,o,c,h){const d=this._instance.defaultsAndOverrides();let p=null;null!==this._defaultLocator&&(p=this._defaultLocator._getReference().getEncoding().equals(r)?this._instance.locatorManager().find(this._defaultLocator):this._instance.locatorManager().find(this._defaultLocator.ice_encodingVersion(r)));let _=this._instance.routerManager().find(this._defaultRouter),g=!0,I=d.defaultPreferSecure,f=d.defaultEndpointSelection,m=d.defaultLocatorCacheTimeout,y=d.defaultInvocationTimeout;if(null!==h&&h.length>0){const e=this._instance.initializationData().properties;e.getPropertyAsIntWithDefault("Ice.Warn.UnknownProperties",1)>0&&this.checkForUnknownProperties(h);let t=h+".Locator";const n=u.uncheckedCast(this._communicator.propertyToProxy(t));null!==n&&(p=n._getReference().getEncoding().equals(r)?this._instance.locatorManager().find(n):this._instance.locatorManager().find(n.ice_encodingVersion(r))),t=h+".Router";const i=l.uncheckedCast(this._communicator.propertyToProxy(t));if(null!==i){const n=".Router";h.lastIndexOf(n)==h.length-n.length?this._instance.initializationData().logger.warning("`"+t+"="+e.getProperty(t)+"': cannot set a router on a router; setting ignored"):_=this._instance.routerManager().find(i)}if(t=h+".ConnectionCached",g=e.getPropertyAsIntWithDefault(t,g?1:0)>0,t=h+".PreferSecure",I=e.getPropertyAsIntWithDefault(t,I?1:0)>0,t=h+".EndpointSelection",e.getProperty(t).length>0){const n=e.getProperty(t);if("Random"==n)f=a.Random;else{if("Ordered"!=n)throw new Ice.EndpointSelectionTypeParseException("illegal value `"+n+"'; expected `Random' or `Ordered'");f=a.Ordered}}t=h+".LocatorCacheTimeout";let s=e.getProperty(t);0!==s.length&&(m=e.getPropertyAsIntWithDefault(t,m))<-1&&(m=-1,this._instance.initializationData().logger.warning("invalid value for"+t+"`"+e.getProperty(t)+"': defaulting to -1")),t=h+".InvocationTimeout",0!==(s=e.getProperty(t)).length&&(y=e.getPropertyAsIntWithDefault(t,y))<1&&-1!==y&&(y=-1,this._instance.initializationData().logger.warning("invalid value for"+t+"`"+e.getProperty(t)+"': defaulting to -1"))}return new w(this._instance,this._communicator,e,t,n,i,s,r,o,c,p,_,g,I,f,m,y)}}Ice.ReferenceFactory=I;class f{constructor(e,n,i,s,r,o,c,a,h,l){t.assert(void 0===i||null!==i.name),t.assert(void 0===i||null!==i.category),t.assert(void 0===s||null!==s),this._instance=e,this._communicator=n,this._mode=r,this._secure=o,this._identity=i,this._context=void 0===l?f._emptyContext:l,this._facet=s,this._protocol=c,this._encoding=a,this._invocationTimeout=h,this._hashInitialized=!1}getMode(){return this._mode}getSecure(){return this._secure}getProtocol(){return this._protocol}getEncoding(){return this._encoding}getIdentity(){return this._identity}getFacet(){return this._facet}getInstance(){return this._instance}getContext(){return this._context}getInvocationTimeout(){return this._invocationTimeout}getCommunicator(){return this._communicator}getEndpoints(){return t.assert(!1),null}getAdapterId(){return t.assert(!1),""}getRouterInfo(){return t.assert(!1),null}getLocatorInfo(){return t.assert(!1),null}getCacheConnection(){return t.assert(!1),!1}getPreferSecure(){return t.assert(!1),!1}getEndpointSelection(){return t.assert(!1),null}getLocatorCacheTimeout(){return t.assert(!1),0}getConnectionId(){return t.assert(!1),""}getTimeout(){return t.assert(!1),""}changeContext(e){null==e&&(e=f._emptyContext);const t=this._instance.referenceFactory().copy(this);return 0===e.size?t._context=f._emptyContext:t._context=new Map(e),t}changeMode(e){if(e===this._mode)return this;const t=this._instance.referenceFactory().copy(this);return t._mode=e,t}changeSecure(e){if(e===this._secure)return this;const t=this._instance.referenceFactory().copy(this);return t._secure=e,t}changeIdentity(e){if(e.equals(this._identity))return this;const t=this._instance.referenceFactory().copy(this);return t._identity=new h(e.name,e.category),t}changeFacet(e){if(e===this._facet)return this;const t=this._instance.referenceFactory().copy(this);return t._facet=e,t}changeInvocationTimeout(e){if(e===this._invocationTimeout)return this;const t=this._instance.referenceFactory().copy(this);return t._invocationTimeout=e,t}changeEncoding(e){if(e.equals(this._encoding))return this;const t=this._instance.referenceFactory().copy(this);return t._encoding=e,t}changeAdapterId(e){return t.assert(!1),null}changeEndpoints(e){return t.assert(!1),null}changeLocator(e){return t.assert(!1),null}changeRouter(e){return t.assert(!1),null}changeCacheConnection(e){return t.assert(!1),null}changePreferSecure(e){return t.assert(!1),null}changeEndpointSelection(e){return t.assert(!1),null}changeLocatorCacheTimeout(e){return t.assert(!1),null}changeTimeout(e){return t.assert(!1),null}changeConnectionId(e){return t.assert(!1),null}changeConnection(e){return t.assert(!1),null}hashCode(){if(this._hashInitialized)return this._hashValue;let e=5381;if(e=i.addNumber(e,this._mode),e=i.addBoolean(e,this._secure),e=i.addHashable(e,this._identity),null!==this._context&&void 0!==this._context)for(const[t,n]of this._context)e=i.addString(e,t),e=i.addString(e,n);return e=i.addString(e,this._facet),e=i.addHashable(e,this._protocol),e=i.addHashable(e,this._encoding),e=i.addNumber(e,this._invocationTimeout),this._hashValue=e,this._hashInitialized=!0,this._hashValue}isIndirect(){return t.assert(!1),!1}isWellKnown(){return t.assert(!1),!1}streamWrite(e){0===this._facet.length?e.writeSize(0):(e.writeSize(1),e.writeString(this._facet)),e.writeByte(this._mode),e.writeBool(this._secure),e.getEncoding().equals(Ice.Encoding_1_0)||(this._protocol._write(e),this._encoding._write(e))}toString(){const e=[],n=this._instance.toStringMode(),i=Ice.identityToString(this._identity,n);if(-1!=i.search(/[ :@]/)?(e.push('"'),e.push(i),e.push('"')):e.push(i),this._facet.length>0){e.push(" -f ");const t=o.escapeString(this._facet,"",n);-1!=t.search(/[ :@]/)?(e.push('"'),e.push(t),e.push('"')):e.push(t)}switch(this._mode){case r.ModeTwoway:e.push(" -t");break;case r.ModeOneway:e.push(" -o");break;case r.ModeBatchOneway:e.push(" -O");break;case r.ModeDatagram:e.push(" -d");break;case r.ModeBatchDatagram:e.push(" -D");break;default:t.assert(!1)}return this._secure&&e.push(" -s"),this._protocol.equals(Ice.Protocol_1_0)||(e.push(" -p "),e.push(Ice.protocolVersionToString(this._protocol))),e.push(" -e "),e.push(Ice.encodingVersionToString(this._encoding)),e.join("")}toProperty(e){return t.assert(!1),null}getRequestHandler(e){t.assert(!1)}getBatchRequestQueue(){t.assert(!1)}equals(e){return this._mode===e._mode&&(this._secure===e._secure&&(!!this._identity.equals(e._identity)&&(!!_.equals(this._context,e._context)&&(this._facet===e._facet&&(!!this._protocol.equals(e._protocol)&&(!!this._encoding.equals(e._encoding)&&this._invocationTimeout===e._invocationTimeout))))))}clone(){return t.assert(!1),null}copyMembers(e){e._context=this._context}}f._emptyContext=new Map,f._emptyEndpoints=[],Ice.Reference=f;class m extends f{constructor(e,t,n,i,s,r,o,c,a,h,l){super(e,t,n,i,s,r,o,c,h,l),this._fixedConnection=a}getEndpoints(){return f._emptyEndpoints}getAdapterId(){return""}getRouterInfo(){return null}getLocatorInfo(){return null}getCacheConnection(){return!0}getPreferSecure(){return!1}getEndpointSelection(){return a.Random}getLocatorCacheTimeout(){return 0}getConnectionId(){return""}getTimeout(){}changeAdapterId(e){throw new Ice.FixedProxyException}changeEndpoints(e){throw new Ice.FixedProxyException}changeLocato(e){throw new Ice.FixedProxyException}changeRouter(e){throw new Ice.FixedProxyException}changeCacheConnection(e){throw new Ice.FixedProxyException}changePreferSecure(e){throw new Ice.FixedProxyException}changeEndpointSelection(e){throw new Ice.FixedProxyException}changeLocatorCacheTimeout(e){throw new Ice.FixedProxyException}changeTimeout(e){throw new Ice.FixedProxyException}changeConnectionId(e){throw new Ice.FixedProxyException}changeConnection(e){if(e==this._fixedConnection)return this;const t=this.getInstance().referenceFactory().copy(this);return t._fixedConnection=e,t}isIndirect(){return!1}isWellKnown(){return!1}streamWrite(e){throw new Ice.FixedProxyException}toProperty(e){throw new Ice.FixedProxyException}clone(){const e=new m(this.getInstance(),this.getCommunicator(),this.getIdentity(),this.getFacet(),this.getMode(),this.getSecure(),this.getProtocol(),this.getEncoding(),this._fixedConnection,this.getInvocationTimeout(),this.getContext());return this.copyMembers(e),e}getRequestHandler(e){switch(this.getMode()){case r.ModeTwoway:case r.ModeOneway:case r.ModeBatchOneway:if(this._fixedConnection.endpoint().datagram())throw new Ice.NoEndpointException(this.toString());break;case r.ModeDatagram:case r.ModeBatchDatagram:if(!this._fixedConnection.endpoint().datagram())throw new Ice.NoEndpointException(this.toString());break;default:t.assert(!1)}const n=this.getInstance().defaultsAndOverrides();if((n.overrideSecure?n.overrideSecureValue:this.getSecure())&&!this._fixedConnection.endpoint().secure())throw new Ice.NoEndpointException(this.toString());return this._fixedConnection.throwException(),e._setRequestHandler(new p(this,this._fixedConnection))}getBatchRequestQueue(){return this._fixedConnection.getBatchRequestQueue()}equals(e){return this===e||e instanceof m&&(!!super.equals(e)&&this._fixedConnection==e._fixedConnection)}}Ice.FixedReference=m;class w extends f{constructor(e,n,i,s,r,o,c,a,h,l,u,d,p,_,g,I,m,w){super(e,n,i,s,r,o,c,a,m,w),this._endpoints=h,this._adapterId=l,this._locatorInfo=u,this._routerInfo=d,this._cacheConnection=p,this._preferSecure=_,this._endpointSelection=g,this._locatorCacheTimeout=I,this._overrideTimeout=!1,this._timeout=-1,null===this._endpoints&&(this._endpoints=f._emptyEndpoints),null===this._adapterId&&(this._adapterId=""),this._connectionId="",t.assert(0===this._adapterId.length||0===this._endpoints.length)}getEndpoints(){return this._endpoints}getAdapterId(){return this._adapterId}getRouterInfo(){return this._routerInfo}getLocatorInfo(){return this._locatorInfo}getCacheConnection(){return this._cacheConnection}getPreferSecure(){return this._preferSecure}getEndpointSelection(){return this._endpointSelection}getLocatorCacheTimeout(){return this._locatorCacheTimeout}getConnectionId(){return this._connectionId}getTimeout(){return this._overrideTimeout?this._timeout:void 0}changeEncoding(e){const t=super.changeEncoding(e);return t!==this&&(null===t._locatorInfo||t._locatorInfo.getLocator().ice_getEncodingVersion().equals(e)||(t._locatorInfo=this.getInstance().locatorManager().find(t._locatorInfo.getLocator().ice_encodingVersion(e)))),t}changeAdapterId(e){if(this._adapterId===e)return this;const t=this.getInstance().referenceFactory().copy(this);return t._adapterId=e,t._endpoints=f._emptyEndpoints,t}changeEndpoints(t){if(e.equals(t,this._endpoints,(e,t)=>e.equals(t)))return this;const n=this.getInstance().referenceFactory().copy(this);return n._endpoints=t,n._adapterId="",n.applyOverrides(n._endpoints),n}changeLocator(e){const t=this.getInstance().locatorManager().find(e);if(null!==t&&null!==this._locatorInfo&&t.equals(this._locatorInfo))return this;const n=this.getInstance().referenceFactory().copy(this);return n._locatorInfo=t,n}changeRouter(e){const t=this.getInstance().routerManager().find(e);if(null!==t&&null!==this._routerInfo&&t.equals(this._routerInfo))return this;const n=this.getInstance().referenceFactory().copy(this);return n._routerInfo=t,n}changeCacheConnection(e){if(e===this._cacheConnection)return this;const t=this.getInstance().referenceFactory().copy(this);return t._cacheConnection=e,t}changePreferSecure(e){if(e===this._preferSecure)return this;const t=this.getInstance().referenceFactory().copy(this);return t._preferSecure=e,t}changeEndpointSelection(e){if(e===this._endpointSelection)return this;const t=this.getInstance().referenceFactory().copy(this);return t._endpointSelection=e,t}changeLocatorCacheTimeout(e){if(this._locatorCacheTimeout===e)return this;const t=this.getInstance().referenceFactory().copy(this);return t._locatorCacheTimeout=e,t}changeTimeout(e){if(this._overrideTimeout&&this._timeout===e)return this;const t=this.getInstance().referenceFactory().copy(this);return t._timeout=e,t._overrideTimeout=!0,t._endpoints=this._endpoints.map(t=>t.changeTimeout(e)),t}changeConnectionId(e){if(this._connectionId===e)return this;const t=this.getInstance().referenceFactory().copy(this);return t._connectionId=e,t._endpoints=this._endpoints.map(t=>t.changeConnectionId(e)),t}changeConnection(e){return new m(this.getInstance(),this.getCommunicator(),this.getIdentity(),this.getFacet(),this.getMode(),this.getSecure(),this.getProtocol(),this.getEncoding(),e,this.getInvocationTimeout(),this.getContext())}isIndirect(){return 0===this._endpoints.length}isWellKnown(){return 0===this._endpoints.length&&0===this._adapterId.length}streamWrite(e){super.streamWrite(e),e.writeSize(this._endpoints.length),this._endpoints.length>0?(t.assert(0===this._adapterId.length),this._endpoints.forEach(t=>{e.writeShort(t.type()),t.streamWrite(e)})):e.writeString(this._adapterId)}toString(){const e=[];if(e.push(super.toString()),this._endpoints.length>0)this._endpoints.forEach(t=>{const n=t.toString();null!==n&&n.length>0&&(e.push(":"),e.push(n))});else if(this._adapterId.length>0){e.push(" @ ");const t=o.escapeString(this._adapterId,null,this._instance.toStringMode());-1!=t.search(/[ :@]/)?(e.push('"'),e.push(t),e.push('"')):e.push(t)}return e.join("")}toProperty(e){const t=new Map;return t.set(e,this.toString()),t.set(e+".CollocationOptimized","0"),t.set(e+".ConnectionCached",this._cacheConnection?"1":"0"),t.set(e+".PreferSecure",this._preferSecure?"1":"0"),t.set(e+".EndpointSelection",this._endpointSelection===a.Random?"Random":"Ordered"),t.set(e+".LocatorCacheTimeout",String(this._locatorCacheTimeout)),t.set(e+".InvocationTimeout",String(this.getInvocationTimeout())),null!==this._routerInfo&&this._routerInfo.getRouter()._getReference().toProperty(e+".Router").forEach((e,n)=>t.set(n,e)),null!==this._locatorInfo&&this._locatorInfo.getLocator()._getReference().toProperty(e+".Locator").forEach((e,n)=>t.set(n,e)),t}hashCode(){return this._hashInitialized||(super.hashCode(),this._hashValue=i.addString(this._hashValue,this._adapterId)),this._hashValue}equals(t){return this===t||t instanceof w&&(!!super.equals(t)&&(!(null===this._locatorInfo?null!==t._locatorInfo:!this._locatorInfo.equals(t._locatorInfo))&&(!(null===this._routerInfo?null!==t._routerInfo:!this._routerInfo.equals(t._routerInfo))&&(this._cacheConnection===t._cacheConnection&&(this._preferSecure===t._preferSecure&&(this._endpointSelection===t._endpointSelection&&(this._locatorCacheTimeout===t._locatorCacheTimeout&&(this._connectionId===t._connectionId&&(this._overrideTimeout===t._overrideTimeout&&((!this._overrideTimeout||this._timeout===t._timeout)&&(!!e.equals(this._endpoints,t._endpoints,(e,t)=>e.equals(t))&&this._adapterId===t._adapterId)))))))))))}getRequestHandler(e){return this._instance.requestHandlerFactory().getRequestHandler(this,e)}getBatchRequestQueue(){return new n(this._instance,this._mode===r.ModeBatchDatagram)}getConnection(){const e=new Ice.Promise;return null!==this._routerInfo?this._routerInfo.getClientEndpoints().then(t=>{t.length>0?(this.applyOverrides(t),this.createConnection(t).then(e.resolve,e.reject)):this.getConnectionNoRouterInfo(e)}).catch(e.reject):this.getConnectionNoRouterInfo(e),e}getConnectionNoRouterInfo(e){this._endpoints.length>0?this.createConnection(this._endpoints).then(e.resolve).catch(e.reject):null!==this._locatorInfo?this._locatorInfo.getEndpoints(this,null,this._locatorCacheTimeout).then(n=>{const[i,s]=n;0!==i.length?(this.applyOverrides(i),this.createConnection(i).then(e.resolve,n=>{if(n instanceof Ice.NoEndpointException)e.reject(n);else{if(t.assert(null!==this._locatorInfo),this.getLocatorInfo().clearCache(this),s){const t=this.getInstance().traceLevels();return t.retry>=2&&this.getInstance().initializationData().logger.trace(t.retryCat,"connection to cached endpoints failed\nremoving endpoints from cache and trying again\n"+n.toString()),void this.getConnectionNoRouterInfo(e)}e.reject(n)}})):e.reject(new Ice.NoEndpointException(this.toString()))}).catch(e.reject):e.reject(new Ice.NoEndpointException(this.toString()))}clone(){const e=new w(this.getInstance(),this.getCommunicator(),this.getIdentity(),this.getFacet(),this.getMode(),this.getSecure(),this.getProtocol(),this.getEncoding(),this._endpoints,this._adapterId,this._locatorInfo,this._routerInfo,this._cacheConnection,this._preferSecure,this._endpointSelection,this._locatorCacheTimeout,this._invocationTimeout);return this.copyMembers(e),e}copyMembers(e){super.copyMembers(e),e._overrideTimeout=this._overrideTimeout,e._timeout=this._timeout,e._connectionId=this._connectionId}applyOverrides(e){for(let t=0;t!(e instanceof s)&&e.connectable());switch(this.getMode()){case r.ModeTwoway:case r.ModeOneway:case r.ModeBatchOneway:i=i.filter(e=>!e.datagram());break;case r.ModeDatagram:case r.ModeBatchDatagram:i=i.filter(e=>e.datagram());break;default:t.assert(!1)}switch(this.getEndpointSelection()){case a.Random:e.shuffle(i);break;case a.Ordered:break;default:t.assert(!1)}const o=this.getInstance().defaultsAndOverrides();if(o.overrideSecure?o.overrideSecureValue:this.getSecure())i=i.filter(e=>e.secure());else{const e=this.getPreferSecure(),t=(t,n)=>{const i=t.secure(),s=n.secure();return i&&s||!i&&!s?0:!i&&s?e?1:-1:e?-1:1};i.sort(t)}return i}createConnection(e){const t=this.filterEndpoints(e);if(0===t.length)return Ice.Promise.reject(new Ice.NoEndpointException(this.toString()));const n=new Ice.Promise,i=this.getInstance().outgoingConnectionFactory();if(this.getCacheConnection()||1==t.length){const e=new y(this,null,n);i.create(t,!1,this.getEndpointSelection()).then(t=>e.setConnection(t)).catch(t=>e.setException(t))}else{const e=new y(this,t,n);i.create([t[0]],!0,this.getEndpointSelection()).then(t=>e.setConnection(t)).catch(t=>e.setException(t))}return n}}Ice.RoutableReference=w;class y{constructor(e,t,n){this.ref=e,this.endpoints=t,this.promise=n,this.i=0,this.exception=null}setConnection(e){null!==this.ref.getRouterInfo()&&null!==this.ref.getRouterInfo().getAdapter()&&e.setAdapter(this.ref.getRouterInfo().getAdapter()),this.promise.resolve(e)}setException(e){null===this.exception&&(this.exception=e),null!==this.endpoints&&++this.i!==this.endpoints.length?this.ref.getInstance().outgoingConnectionFactory().create([this.endpoints[this.i]],this.i!=this.endpoints.length-1,this.ref.getEndpointSelection()).then(e=>this.setConnection(e)).catch(e=>this.setException(e)):this.promise.reject(this.exception)}}}(),function(){const e=Ice.HashUtil,t=Ice.EndpointI;class n extends t{constructor(e,t,n){super(),this._instance=e,this._delegate=t,this._resource=n||"/"}getInfo(){const e=new Ice.WSEndpointInfo;return e.type=()=>this.type(),e.datagram=()=>this.datagram(),e.secure=()=>this.secure(),e.resource=this._resource,e.underlying=this._delegate.getInfo(),e.timeout=e.underlying.timeout,e.compress=e.underlying.compress,e}type(){return this._delegate.type()}protocol(){return this._delegate.protocol()}streamWrite(e){e.startEncapsulation(),this._delegate.streamWriteImpl(e),e.writeString(this._resource),e.endEncapsulation()}timeout(){return this._delegate.timeout()}changeTimeout(e){return e===this._delegate.timeout()?this:new n(this._instance,this._delegate.changeTimeout(e),this._resource)}changeConnectionId(e){return e===this._delegate.connectionId()?this:new n(this._instance,this._delegate.changeConnectionId(e),this._resource)}compress(){return this._delegate.compress()}changeCompress(e){return e===this._delegate.compress()?this:new n(this._instance,this._delegate.changeCompress(e),this._resource)}datagram(){return this._delegate.datagram()}secure(){return this._delegate.secure()}connect(){return Ice.WSTransceiver.createOutgoing(this._instance,this._delegate.secure(),this._delegate.getAddress(),this._resource)}hashCode(){return void 0===this._hashCode&&(this._hashCode=this._delegate.hashCode(),this._hashCode=e.addString(this._hashCode,this._resource)),this._hashCode}compareTo(e){if(this===e)return 0;if(null===e)return 1;if(!(e instanceof n))return this.type()0&&(e+=" -r ",e+=-1!==this._resource.indexOf(":")?'"'+this._resource+'"':this._resource),e}toConnectorString(){return this._delegate.toConnectorString()}initWithStream(e){this._resource=e.readString()}checkOption(e,t,n){if("-r"!==e)return!1;if(null===t)throw new Ice.EndpointParseException("no argument provided for -r option in endpoint "+n);return this._resource=t,!0}connectable(){return void 0!==Ice.WSTransceiver}}Ice.WSEndpoint=n}(),function(){const e=Ice.Debug,t=Ice.StringUtil,n=Ice.HashMap;Ice.ServantManager=class{constructor(e,t){this._instance=e,this._adapterName=t,this._servantMapMap=new n(n.compareEquals),this._defaultServantMap=new Map,this._locatorMap=new Map}addServant(n,i,s){e.assert(null!==this._instance),null===s&&(s="");let r=this._servantMapMap.get(i);if(void 0===r)r=new Map,this._servantMapMap.set(i,r);else if(r.has(s)){const e=new Ice.AlreadyRegisteredException;throw e.id=Ice.identityToString(i,this._instance.toStringMode()),e.kindOfObject="servant",s.length>0&&(e.id+=" -f "+t.escapeString(s,"",this._instance.toStringMode())),e}r.set(s,n)}addDefaultServant(t,n){if(e.assert(null!==this._instance),this._defaultServantMap.has(n)){const e=new Ice.AlreadyRegisteredException;throw e.kindOfObject="default servant",e.id=n,e}this._defaultServantMap.set(n,t)}removeServant(n,i){e.assert(null!==this._instance),null===i&&(i="");const s=this._servantMapMap.get(n);if(void 0===s||!s.has(i)){const e=new Ice.NotRegisteredException;throw e.id=Ice.identityToString(n,this._instance.toStringMode()),e.kindOfObject="servant",i.length>0&&(e.id+=" -f "+t.escapeString(i,"",this._instance.toStringMode())),e}const r=s.get(i);return s.delete(i),0===s.size&&this._servantMapMap.delete(n),r}removeDefaultServant(t){e.assert(null!==this._instance);const n=this._defaultServantMap.get(t);if(void 0===n){const e=new Ice.NotRegisteredException;throw e.kindOfObject="default servant",e.id=t,e}return this._defaultServantMap.delete(t),n}removeAllFacets(t){e.assert(null!==this._instance);const n=this._servantMapMap.get(t);if(void 0===n){const e=new Ice.NotRegisteredException;throw e.id=Ice.identityToString(t,this._instance.toStringMode()),e.kindOfObject="servant",e}return this._servantMapMap.delete(t),n}findServant(e,t){null===t&&(t="");const n=this._servantMapMap.get(e);let i=null;return void 0===n?void 0===(i=this._defaultServantMap.get(e.category))&&(i=this._defaultServantMap.get("")):i=n.get(t),void 0===i?null:i}findDefaultServant(t){e.assert(null!==this._instance);const n=this._defaultServantMap.get(t);return void 0===n?null:n}findAllFacets(t){e.assert(null!==this._instance);const n=this._servantMapMap.get(t);return void 0!==n?new Map(n):new Map}hasServant(t){const n=this._servantMapMap.get(t);return void 0!==n&&(e.assert(n.size>0),!0)}addServantLocator(n,i){if(e.assert(null!==this._instance),this._locatorMap.has(i)){const e=new Ice.AlreadyRegisteredException;throw e.id=t.escapeString(i,"",this._instance.toStringMode()),e.kindOfObject="servant locator",e}this._locatorMap.set(i,n)}removeServantLocator(n){e.assert(null!==this._instance);const i=this._locatorMap.get(n);if(void 0===i){const e=new Ice.NotRegisteredException;throw e.id=t.escapeString(n,"",this._instance.toStringMode()),e.kindOfObject="servant locator",e}return this._locatorMap.delete(n),i}findServantLocator(e){const t=this._locatorMap.get(e);return void 0===t?null:t}destroy(){e.assert(null!==this._instance);const t=this._instance.initializationData().logger;this._servantMapMap.clear(),this._defaultServantMap.clear();const n=new Map(this._locatorMap);this._locatorMap.clear(),this._instance=null;for(const[e,i]of n)try{i.deactivate(e)}catch(n){t.error("exception during locator deactivation:\nobject adapter: `"+this._adapterName+"'\nlocator category: `"+e+"'\n"+n.toString())}}}}(),function(){const e=Ice.Context,t=Ice.InitializationException;class n{constructor(){this._context=new e}getContext(){return new e(this._context)}setContext(t){null!==t&&t.size>0?this._context=new e(t):this._context.clear()}containsKey(e){return null===e&&(e=""),this._context.has(e)}get(e){null===e&&(e="");let t=this._context.get(e);return null===t&&(t=""),t}put(e,t){null===e&&(e=""),null===t&&(t="");let n=this._context.get(e);return null===n&&(n=""),this._context.set(e,t),n}remove(e){null===e&&(e="");let t=this._context.get(e);return this._context.delete(e),null===t&&(t=""),t}write(t,n){if(0===t.size)Ice.ContextHelper.write(n,this._context);else{let i=null;if(0===this._context.size)i=t;else{i=new e(this._context);for(const[e,n]of t)i.set(e,n)}Ice.ContextHelper.write(n,i)}}static create(e){if(0===e.length||"None"===e)return null;if("Shared"===e)return new n;throw new t("'"+e+"' is not a valid value for Ice.ImplicitContext")}}Ice.ImplicitContextI=n}(),function(){const e=Ice.Debug,t=Ice.ObjectPrx,n=Ice.StringUtil,i=Ice.Identity;Ice.ProxyFactory=class{constructor(e){this._instance=e;const t=this._instance.initializationData().properties.getPropertyAsList("Ice.RetryIntervals");if(t.length>0){this._retryIntervals=[];for(let e=0;e0?i:0}}else this._retryIntervals=[0]}stringToProxy(e){return this.referenceToProxy(this._instance.referenceFactory().createFromString(e,null))}proxyToString(e){return null===e?"":e._getReference().toString()}propertyToProxy(e){const t=this._instance.initializationData().properties.getProperty(e),n=this._instance.referenceFactory().createFromString(t,e);return this.referenceToProxy(n)}proxyToProperty(e,t){return null===e?new Map:e._getReference().toProperty(t)}streamToProxy(e,t){const n=new i;return n._read(e),this.referenceToProxy(this._instance.referenceFactory().createFromStream(n,e),t)}referenceToProxy(e,n){if(null!==e){const i=n?new n:new t;return i._setup(e),i}return null}checkRetryAfterException(t,n,i,s){const r=this._instance.traceLevels(),o=this._instance.initializationData().logger;if(n.getMode()===Ice.Reference.ModeBatchOneway||n.getMode()===Ice.Reference.ModeBatchDatagram)throw t;if(t instanceof Ice.ObjectNotExistException){if(null!==n.getRouterInfo()&&"ice_add_proxy"===t.operation)return n.getRouterInfo().clearCache(n),r.retry>=1&&o.trace(r.retryCat,"retrying operation call to add proxy to router\n"+t.toString()),null!==i&&(i.value=0),s;if(!n.isIndirect())throw t;if(n.isWellKnown()){const e=n.getLocatorInfo();null!==e&&e.clearCache(n)}}else if(t instanceof Ice.RequestFailedException)throw t;if(t instanceof Ice.MarshalException)throw t;if(t instanceof Ice.CommunicatorDestroyedException||t instanceof Ice.ObjectAdapterDeactivatedException||t instanceof Ice.ConnectionManuallyClosedException)throw t;if(t instanceof Ice.InvocationTimeoutException||t instanceof Ice.InvocationCanceledException)throw t;let c;if(++s,e.assert(s>0),s===this._retryIntervals.length+1&&t instanceof Ice.CloseConnectionException)c=0;else{if(s>this._retryIntervals.length)throw r.retry>=1&&o.trace(r.retryCat,"cannot retry operation call because retry limit has been exceeded\n"+t.toString()),t;c=this._retryIntervals[s-1]}if(r.retry>=1){let e="retrying operation call";c>0&&(e+=" in "+c+"ms"),e+=" because of exception\n"+t.toString(),o.trace(r.retryCat,e)}return e.assert(null!==i),i.value=c,s}}}(),function(){const e=Ice.Debug,t=Ice.InputStream,n=Ice.OutputStream,i=Ice.EndpointParseException,s=Ice.OpaqueEndpointI,r=Ice.Protocol,o=Ice.StringUtil;Ice.EndpointFactoryManager=class{constructor(e){this._instance=e,this._factories=[]}add(t){e.assert(void 0===this._factories.find(e=>t.type()==e.type())),this._factories.push(t)}get(e){return this._factories.find(t=>e==t.type())||null}create(e,c){const a=e.trim();if(0===a.length)throw new i("value has no non-whitespace characters");const h=o.splitString(a," \t\n\r");if(0===h.length)throw new i("value has no non-whitespace characters");let l=h[0];h.splice(0,1),"default"===l&&(l=this._instance.defaultsAndOverrides().defaultProtocol);for(let t=0,n=this._factories.length;t0)throw new i("unrecognized argument `"+h[0]+"' in endpoint `"+e+"'");return n}if("opaque"===l){const o=new s;if(o.initWithOptions(h),h.length>0)throw new i("unrecognized argument `"+h[0]+"' in endpoint `"+e+"'");for(let e=0,i=this._factories.length;ee.destroy()),this._factories=[]}}}(),function(){const e=Ice.FormatType,t=Ice.EndpointSelectionType,n=Ice.Protocol;Ice.DefaultsAndOverrides=class{constructor(i,s){this.defaultProtocol=i.getPropertyWithDefault("Ice.Default.Protocol",void 0!==Ice.TcpEndpointFactory?"tcp":"ws");let r=i.getProperty("Ice.Default.Host");if(this.defaultHost=r.length>0?r:null,r=i.getProperty("Ice.Default.SourceAddress"),this.defaultSourceAddress=r.length>0?r:null,(r=i.getProperty("Ice.Override.Timeout")).length>0?(this.overrideTimeout=!0,this.overrideTimeoutValue=i.getPropertyAsInt("Ice.Override.Timeout"),this.overrideTimeoutValue<1&&-1!==this.overrideTimeoutValue&&(this.overrideTimeoutValue=-1,s.warning("invalid value for Ice.Override.Timeout `"+i.getProperty("Ice.Override.Timeout")+"': defaulting to -1"))):(this.overrideTimeout=!1,this.overrideTimeoutValue=-1),(r=i.getProperty("Ice.Override.ConnectTimeout")).length>0?(this.overrideConnectTimeout=!0,this.overrideConnectTimeoutValue=i.getPropertyAsInt("Ice.Override.ConnectTimeout"),this.overrideConnectTimeoutValue<1&&-1!==this.overrideConnectTimeoutValue&&(this.overrideConnectTimeoutValue=-1,s.warning("invalid value for Ice.Override.ConnectTimeout `"+i.getProperty("Ice.Override.ConnectTimeout")+"': defaulting to -1"))):(this.overrideConnectTimeout=!1,this.overrideConnectTimeoutValue=-1),(r=i.getProperty("Ice.Override.CloseTimeout")).length>0?(this.overrideCloseTimeout=!0,this.overrideCloseTimeoutValue=i.getPropertyAsInt("Ice.Override.CloseTimeout"),this.overrideCloseTimeoutValue<1&&-1!==this.overrideCloseTimeoutValue&&(this.overrideCloseTimeoutValue=-1,s.warning("invalid value for Ice.Override.CloseTimeout `"+i.getProperty("Ice.Override.CloseTimeout")+"': defaulting to -1"))):(this.overrideCloseTimeout=!1,this.overrideCloseTimeoutValue=-1),this.overrideSecure=!1,"Random"===(r=i.getPropertyWithDefault("Ice.Default.EndpointSelection","Random")))this.defaultEndpointSelection=t.Random;else{if("Ordered"!==r){const e=new Ice.EndpointSelectionTypeParseException;throw e.str="illegal value `"+r+"'; expected `Random' or `Ordered'",e}this.defaultEndpointSelection=t.Ordered}this.defaultTimeout=i.getPropertyAsIntWithDefault("Ice.Default.Timeout",6e4),this.defaultTimeout<1&&-1!==this.defaultTimeout&&(this.defaultTimeout=6e4,s.warning("invalid value for Ice.Default.Timeout `"+i.getProperty("Ice.Default.Timeout")+"': defaulting to 60000")),this.defaultLocatorCacheTimeout=i.getPropertyAsIntWithDefault("Ice.Default.LocatorCacheTimeout",-1),this.defaultLocatorCacheTimeout<-1&&(this.defaultLocatorCacheTimeout=-1,s.warning("invalid value for Ice.Default.LocatorCacheTimeout `"+i.getProperty("Ice.Default.LocatorCacheTimeout")+"': defaulting to -1")),this.defaultInvocationTimeout=i.getPropertyAsIntWithDefault("Ice.Default.InvocationTimeout",-1),this.defaultInvocationTimeout<1&&-1!==this.defaultInvocationTimeout&&(this.defaultInvocationTimeout=-1,s.warning("invalid value for Ice.Default.InvocationTimeout `"+i.getProperty("Ice.Default.InvocationTimeout")+"': defaulting to -1")),this.defaultPreferSecure=i.getPropertyAsIntWithDefault("Ice.Default.PreferSecure",0)>0,r=i.getPropertyWithDefault("Ice.Default.EncodingVersion",Ice.encodingVersionToString(n.currentEncoding)),this.defaultEncoding=Ice.stringToEncodingVersion(r),n.checkSupportedEncoding(this.defaultEncoding);const o=i.getPropertyAsIntWithDefault("Ice.Default.SlicedFormat",0)>0;this.defaultFormat=o?e.SlicedFormat:e.CompactFormat}}}(),function(){const e=Ice.Debug,t=Ice.Protocol,n=Ice.LocatorRegisterPrx,i=Ice.HashMap;class s{constructor(e,t,n){this._locator=e,this._locatorRegistry=null,this._table=t,this._background=n,this._adapterRequests=new Map,this._objectRequests=new i(i.compareEquals)}destroy(){this._locatorRegistry=null,this._table.clear()}equals(e){return this===e||e instanceof s&&this._locator.equals(e._locator)}hashCode(){return this._locator.hashCode()}getLocator(){return this._locator}getLocatorRegistry(){return null!==this._locatorRegistry?Ice.Promise.resolve(this._locatorRegistry):this._locator.getRegistry().then(e=>(this._locatorRegistry=n.uncheckedCast(e.ice_locator(null).ice_endpointSelection(Ice.EndpointSelectionType.Ordered)),this._locatorRegistry))}getEndpoints(t,n,i,s){const r=s||new Ice.Promise;e.assert(t.isIndirect());let o=null;const c={value:!1};if(t.isWellKnown()){const e=this._table.getObjectReference(t.getIdentity(),i,c);if(!c.value){if(!this._background||null===e)return this.getObjectRequest(t).addCallback(t,null,i,r),r;this.getObjectRequest(t).addCallback(t,null,i,null)}if(e.isIndirect()){if(!e.isWellKnown())return t.getInstance().traceLevels().location>=1&&this.traceWellKnown("found adapter for well-known object in locator cache",t,e),this.getEndpoints(e,t,i,r),r}else o=e.getEndpoints()}else if(o=this._table.getAdapterEndpoints(t.getAdapterId(),i,c),!c.value){if(!this._background||null===o)return this.getAdapterRequest(t).addCallback(t,n,i,r),r;this.getAdapterRequest(t).addCallback(t,n,i,null)}return e.assert(null!==o),t.getInstance().traceLevels().location>=1&&this.getEndpointsTrace(t,o,!0),r.resolve([o,!0]),r}clearCache(t){if(e.assert(t.isIndirect()),t.isWellKnown()){const e=this._table.removeObjectReference(t.getIdentity());null!==e&&(e.isIndirect()?e.isWellKnown()||(t.getInstance().traceLevels().location>=2&&this.traceWellKnown("removed adapter for well-known object from locator cache",t,e),this.clearCache(e)):t.getInstance().traceLevels().location>=2&&this.trace("removed endpoints for well-known object from locator cache",t,e.getEndpoints()))}else{const e=this._table.removeAdapterEndpoints(t.getAdapterId());null!==e&&t.getInstance().traceLevels().location>=2&&this.trace("removed endpoints for adapter from locator cache",t,e)}}trace(t,n,i){e.assert(n.isIndirect());const s=[];s.push(t),s.push("\n"),n.isWellKnown()?(s.push("well-known proxy = "),s.push(n.toString()),s.push("\n")):(s.push("adapter = "),s.push(n.getAdapterId()),s.push("\n")),s.push("endpoints = "),s.push(i.map(e=>e.toString()).join(":")),n.getInstance().initializationData().logger.trace(n.getInstance().traceLevels().locationCat,s.join(""))}traceWellKnown(t,n,i){e.assert(n.isWellKnown());const s=[];s.push(t),s.push("\n"),s.push("well-known proxy = "),s.push(n.toString()),s.push("\n"),s.push("adapter = "),s.push(i.getAdapterId()),n.getInstance().initializationData().logger.trace(n.getInstance().traceLevels().locationCat,s.join(""))}getEndpointsException(t,n){e.assert(t.isIndirect());const i=t.getInstance();try{throw n}catch(n){if(n instanceof Ice.AdapterNotFoundException){if(i.traceLevels().location>=1){const e=[];e.push("adapter not found\n"),e.push("adapter = "),e.push(t.getAdapterId()),i.initializationData().logger.trace(i.traceLevels().locationCat,e.join(""))}const e=new Ice.NotRegisteredException;throw e.kindOfObject="object adapter",e.id=t.getAdapterId(),e}if(n instanceof Ice.ObjectNotFoundException){if(i.traceLevels().location>=1){const e=[];e.push("object not found\n"),e.push("object = "),e.push(Ice.identityToString(t.getIdentity(),i.toStringMode())),i.initializationData().logger.trace(i.traceLevels().locationCat,e.join(""))}const e=new Ice.NotRegisteredException;throw e.kindOfObject="object",e.id=Ice.identityToString(t.getIdentity(),i.toStringMode()),e}if(n instanceof Ice.NotRegisteredException)throw n;if(n instanceof Ice.LocalException){if(i.traceLevels().location>=1){const e=[];e.push("couldn't contact the locator to retrieve endpoints\n"),t.getAdapterId().length>0?(e.push("adapter = "),e.push(t.getAdapterId()),e.push("\n")):(e.push("well-known proxy = "),e.push(t.toString()),e.push("\n")),e.push("reason = "+n.toString()),i.initializationData().logger.trace(i.traceLevels().locationCat,e.join(""))}throw n}e.assert(!1)}}getEndpointsTrace(e,t,n){if(null!==t&&t.length>0)n?e.isWellKnown()?this.trace("found endpoints for well-known proxy in locator cache",e,t):this.trace("found endpoints for adapter in locator cache",e,t):e.isWellKnown()?this.trace("retrieved endpoints for well-known proxy from locator, adding to locator cache",e,t):this.trace("retrieved endpoints for adapter from locator, adding to locator cache",e,t);else{const t=e.getInstance(),n=[];n.push("no endpoints configured for "),e.getAdapterId().length>0?(n.push("adapter\n"),n.push("adapter = "),n.push(e.getAdapterId()),n.push("\n")):(n.push("well-known object\n"),n.push("well-known proxy = "),n.push(e.toString()),n.push("\n")),t.initializationData().logger.trace(t.traceLevels().locationCat,n.join(""))}}getAdapterRequest(e){if(e.getInstance().traceLevels().location>=1){const t=e.getInstance(),n=[];n.push("searching for adapter by id\n"),n.push("adapter = "),n.push(e.getAdapterId()),t.initializationData().logger.trace(t.traceLevels().locationCat,n.join(""))}let t=this._adapterRequests.get(e.getAdapterId());return void 0!==t?t:(t=new a(this,e),this._adapterRequests.set(e.getAdapterId(),t),t)}getObjectRequest(e){if(e.getInstance().traceLevels().location>=1){const t=e.getInstance(),n=[];n.push("searching for well-known object\n"),n.push("well-known proxy = "),n.push(e.toString()),t.initializationData().logger.trace(t.traceLevels().locationCat,n.join(""))}let t=this._objectRequests.get(e.getIdentity());return void 0!==t?t:(t=new c(this,e),this._objectRequests.set(e.getIdentity(),t),t)}finishRequest(t,n,i,s){if(null===i||i._getReference().isIndirect())for(let e=0;e=1&&e.traceWellKnown("retrieved adapter for well-known object from locator, adding to locator cache",this._ref,s),void e.getEndpoints(s,this._ref,this._ttl).then(e=>{null!==this._promise&&this._promise.resolve(e)},e=>{null!==this._promise&&this._promise.reject(e)})}else i=s.getEndpoints()}this._ref.getInstance().traceLevels().location>=1&&e.getEndpointsTrace(this._ref,i,!1),null!==this._promise&&this._promise.resolve(null===i?[[],!1]:[i,!1])}exception(e,t){try{e.getEndpointsException(this._ref,t)}catch(e){null!==this._promise&&this._promise.reject(e)}}}class o{constructor(e,t){this._locatorInfo=e,this._ref=t,this._callbacks=[],this._wellKnownRefs=[],this._sent=!1,this._response=!1,this._proxy=null,this._exception=null}addCallback(e,t,n,i){const s=new r(e,n,i);this._response?s.response(this._locatorInfo,this._proxy):null!==this._exception?s.exception(this._locatorInfo,this._exception):(this._callbacks.push(s),null!==t&&this._wellKnownRefs.push(t),this._sent||(this._sent=!0,this.send()))}response(e){this._locatorInfo.finishRequest(this._ref,this._wellKnownRefs,e,!1),this._response=!0,this._proxy=e;for(let t=0;tthis.response(e),e=>this.exception(e))}catch(e){this.exception(e)}}}class a extends o{constructor(t,n){super(t,n),e.assert(n.isIndirect())}send(){try{this._locatorInfo.getLocator().findAdapterById(this._ref.getAdapterId()).then(e=>this.response(e),e=>this.exception(e))}catch(e){this.exception(e)}}}}(),function(){n.defineDictionary(Ice,"PropertyDict","PropertyDictHelper","Ice.StringHelper","Ice.StringHelper",!1,void 0,void 0);Ice.PropertiesAdmin=class extends Ice.Object{},Ice.PropertiesAdminPrx=class extends Ice.ObjectPrx{},n.defineOperations(Ice.PropertiesAdmin,Ice.PropertiesAdminPrx,["::Ice::Object","::Ice::PropertiesAdmin"],1,{getProperty:[,,,,[7],[[7]],,,,],getPropertiesForPrefix:[,,,,["Ice.PropertyDictHelper"],[[7]],,,,],setProperties:[,,,,,[["Ice.PropertyDictHelper"]],,,,]})}(),function(){const e=Ice.HashMap,t=Ice.LocatorInfo,n=Ice.LocatorTable,i=Ice.LocatorPrx;Ice.LocatorManager=class{constructor(t){this._background=t.getPropertyAsInt("Ice.BackgroundLocatorCacheUpdates")>0,this._table=new e(e.compareEquals),this._locatorTables=new e(e.compareEquals)}destroy(){for(const e of this._table.values())e.destroy();this._table.clear(),this._locatorTables.clear()}find(e){if(null===e)return null;const s=i.uncheckedCast(e.ice_locator(null));let r=this._table.get(s);if(void 0===r){let e=this._locatorTables.get(s.ice_getIdentity());void 0===e&&(e=new n,this._locatorTables.set(s.ice_getIdentity(),e)),r=new t(s,e,this._background),this._table.set(s,r)}return r}}}(),function(){const e=Ice.HashMap,t=Ice.RouterInfo,n=Ice.RouterPrx;Ice.RouterManager=class{constructor(){this._table=new e(e.compareEquals)}destroy(){for(const e of this._table.values())e.destroy();this._table.clear()}find(e){if(null===e)return null;const i=n.uncheckedCast(e.ice_router(null));let s=this._table.get(i);return void 0===s&&(s=new t(i),this._table.set(i,s)),s}erase(e){let t=null;if(null!==e){const i=n.uncheckedCast(e.ice_router(null));t=this._table.get(i),this._table.delete(i)}return t}}}(),function(){const e=Ice.HashMap,t=Ice.ConnectRequestHandler;Ice.RequestHandlerFactory=class{constructor(t){this._instance=t,this._handlers=new e(e.compareEquals)}getRequestHandler(e,n){let i,s=!1;return e.getCacheConnection()?(i=this._handlers.get(e))||(i=new t(e,n),this._handlers.set(e,i),s=!0):(s=!0,i=new t(e,n)),s&&e.getConnection().then(e=>{i.setConnection(e)},e=>{i.setException(e)}),n._setRequestHandler(i.connect(n))}removeRequestHandler(e,t){e.getCacheConnection()&&this._handlers.get(e)===t&&this._handlers.delete(e)}}}(),function(){n.defineDictionary(IceMX,"StringIntDict","StringIntDictHelper","Ice.StringHelper","Ice.IntHelper",!1,void 0,void 0);IceMX.Metrics=class extends Ice.Value{constructor(e="",t=new Ice.Long(0,0),n=0,i=new Ice.Long(0,0),s=0){super(),this.id=e,this.total=t,this.current=n,this.totalLifetime=i,this.failures=s}_iceWriteMemberImpl(e){e.writeString(this.id),e.writeLong(this.total),e.writeInt(this.current),e.writeLong(this.totalLifetime),e.writeInt(this.failures)}_iceReadMemberImpl(e){this.id=e.readString(),this.total=e.readLong(),this.current=e.readInt(),this.totalLifetime=e.readLong(),this.failures=e.readInt()}},n.defineValue(IceMX.Metrics,"::IceMX::Metrics",!1),IceMX.MetricsFailures=class{constructor(e="",t=null){this.id=e,this.failures=t}_write(e){e.writeString(this.id),IceMX.StringIntDictHelper.write(e,this.failures)}_read(e){this.id=e.readString(),this.failures=IceMX.StringIntDictHelper.read(e)}static get minWireSize(){return 2}},n.defineStruct(IceMX.MetricsFailures,!1,!0),n.defineSequence(IceMX,"MetricsFailuresSeqHelper","IceMX.MetricsFailures",!1),n.defineSequence(IceMX,"MetricsMapHelper","Ice.ObjectHelper",!1,"IceMX.Metrics"),n.defineDictionary(IceMX,"MetricsView","MetricsViewHelper","Ice.StringHelper","IceMX.MetricsMapHelper",!1,void 0,void 0,Ice.ArrayUtil.equals),IceMX.UnknownMetricsView=class extends Ice.UserException{constructor(e=""){super(e)}static get _parent(){return Ice.UserException}static get _id(){return"::IceMX::UnknownMetricsView"}_mostDerivedType(){return IceMX.UnknownMetricsView}};IceMX.MetricsAdmin=class extends Ice.Object{},IceMX.MetricsAdminPrx=class extends Ice.ObjectPrx{},n.defineOperations(IceMX.MetricsAdmin,IceMX.MetricsAdminPrx,["::Ice::Object","::IceMX::MetricsAdmin"],1,{getMetricsViewNames:[,,,2,["Ice.StringSeqHelper"],,[["Ice.StringSeqHelper"]],,,],enableMetricsView:[,,,2,,[[7]],,[IceMX.UnknownMetricsView],,],disableMetricsView:[,,,2,,[[7]],,[IceMX.UnknownMetricsView],,],getMetricsView:[,,,2,["IceMX.MetricsViewHelper"],[[7]],[[4]],[IceMX.UnknownMetricsView],,!0],getMapMetricsFailures:[,,,2,["IceMX.MetricsFailuresSeqHelper"],[[7],[7]],,[IceMX.UnknownMetricsView],,],getMetricsFailures:[,,,2,[IceMX.MetricsFailures],[[7],[7],[7]],,[IceMX.UnknownMetricsView],,]});IceMX.ThreadMetrics=class extends IceMX.Metrics{constructor(e,t,n,i,s,r=0,o=0,c=0){super(e,t,n,i,s),this.inUseForIO=r,this.inUseForUser=o,this.inUseForOther=c}_iceWriteMemberImpl(e){e.writeInt(this.inUseForIO),e.writeInt(this.inUseForUser),e.writeInt(this.inUseForOther)}_iceReadMemberImpl(e){this.inUseForIO=e.readInt(),this.inUseForUser=e.readInt(),this.inUseForOther=e.readInt()}},n.defineValue(IceMX.ThreadMetrics,"::IceMX::ThreadMetrics",!1);IceMX.DispatchMetrics=class extends IceMX.Metrics{constructor(e,t,n,i,s,r=0,o=new Ice.Long(0,0),c=new Ice.Long(0,0)){super(e,t,n,i,s),this.userException=r,this.size=o,this.replySize=c}_iceWriteMemberImpl(e){e.writeInt(this.userException),e.writeLong(this.size),e.writeLong(this.replySize)}_iceReadMemberImpl(e){this.userException=e.readInt(),this.size=e.readLong(),this.replySize=e.readLong()}},n.defineValue(IceMX.DispatchMetrics,"::IceMX::DispatchMetrics",!1);IceMX.ChildInvocationMetrics=class extends IceMX.Metrics{constructor(e,t,n,i,s,r=new Ice.Long(0,0),o=new Ice.Long(0,0)){super(e,t,n,i,s),this.size=r,this.replySize=o}_iceWriteMemberImpl(e){e.writeLong(this.size),e.writeLong(this.replySize)}_iceReadMemberImpl(e){this.size=e.readLong(),this.replySize=e.readLong()}},n.defineValue(IceMX.ChildInvocationMetrics,"::IceMX::ChildInvocationMetrics",!1);IceMX.CollocatedMetrics=class extends IceMX.ChildInvocationMetrics{constructor(e,t,n,i,s,r,o){super(e,t,n,i,s,r,o)}},n.defineValue(IceMX.CollocatedMetrics,"::IceMX::CollocatedMetrics",!1);IceMX.RemoteMetrics=class extends IceMX.ChildInvocationMetrics{constructor(e,t,n,i,s,r,o){super(e,t,n,i,s,r,o)}},n.defineValue(IceMX.RemoteMetrics,"::IceMX::RemoteMetrics",!1);IceMX.InvocationMetrics=class extends IceMX.Metrics{constructor(e,t,n,i,s,r=0,o=0,c=null,a=null){super(e,t,n,i,s),this.retry=r,this.userException=o,this.remotes=c,this.collocated=a}_iceWriteMemberImpl(e){e.writeInt(this.retry),e.writeInt(this.userException),IceMX.MetricsMapHelper.write(e,this.remotes),IceMX.MetricsMapHelper.write(e,this.collocated)}_iceReadMemberImpl(e){this.retry=e.readInt(),this.userException=e.readInt(),this.remotes=IceMX.MetricsMapHelper.read(e),this.collocated=IceMX.MetricsMapHelper.read(e)}},n.defineValue(IceMX.InvocationMetrics,"::IceMX::InvocationMetrics",!1);IceMX.ConnectionMetrics=class extends IceMX.Metrics{constructor(e,t,n,i,s,r=new Ice.Long(0,0),o=new Ice.Long(0,0)){super(e,t,n,i,s),this.receivedBytes=r,this.sentBytes=o}_iceWriteMemberImpl(e){e.writeLong(this.receivedBytes),e.writeLong(this.sentBytes)}_iceReadMemberImpl(e){this.receivedBytes=e.readLong(),this.sentBytes=e.readLong()}},n.defineValue(IceMX.ConnectionMetrics,"::IceMX::ConnectionMetrics",!1)}(),function(){const e=Ice.AsyncResultBase,t=Ice.Debug,n=Ice.Identity,i=Ice.PropertyNames,s=Ice.ServantManager,r=Ice.StringUtil,o=Ice.ArrayUtil,c=Ice.Timer,a=["ACM","AdapterId","Endpoints","Locator","Locator.EncodingVersion","Locator.EndpointSelection","Locator.ConnectionCached","Locator.PreferSecure","Locator.CollocationOptimized","Locator.Router","MessageSizeMax","PublishedEndpoints","ReplicaGroupId","Router","Router.EncodingVersion","Router.EndpointSelection","Router.ConnectionCached","Router.PreferSecure","Router.CollocationOptimized","Router.Locator","Router.Locator.EndpointSelection","Router.Locator.ConnectionCached","Router.Locator.PreferSecure","Router.Locator.CollocationOptimized","Router.Locator.LocatorCacheTimeout","Router.Locator.InvocationTimeout","Router.LocatorCacheTimeout","Router.InvocationTimeout","ProxyOptions","ThreadPool.Size","ThreadPool.SizeMax","ThreadPool.SizeWarn","ThreadPool.StackSize","ThreadPool.Serialize"],h=0,l=1,u=3,d=5,p=6;Ice.ObjectAdapterI=class{constructor(e,n,i,r,o,c,a){if(this._instance=e,this._communicator=n,this._objectAdapterFactory=i,this._servantManager=new s(e,r),this._name=r,this._publishedEndpoints=[],this._routerInfo=null,this._state=h,this._noConfig=c,this._statePromises=[],this._noConfig)return this._reference=this._instance.referenceFactory().createFromString("dummy -t",""),this._messageSizeMax=this._instance.messageSizeMax(),void a.resolve(this);const l=this._instance.initializationData().properties,u=[],d=this.filterProperties(u);if(0!==u.length&&l.getPropertyAsIntWithDefault("Ice.Warn.UnknownProperties",1)>0){const e=["found unknown properties for object adapter `"+r+"':"];u.forEach(t=>e.push("\n "+t)),this._instance.initializationData().logger.warning(e.join(""))}if(null===o&&d)throw new Ice.InitializationException(`object adapter \`${this._name}' requires configuration`);const p=l.getPropertyWithDefault(this._name+".ProxyOptions","-t");try{this._reference=this._instance.referenceFactory().createFromString("dummy "+p,"")}catch(e){throw e instanceof Ice.ProxyParseException?new Ice.InitializationException(`invalid proxy options \`${p}' for object adapter \`${r}'`):e}{const e=this._instance.messageSizeMax()/1024,t=l.getPropertyAsIntWithDefault(this._name+".MessageSizeMax",e);this._messageSizeMax=t<1||t>2147483647/1024?2147483647:1024*t}try{let e;if(null===o&&(o=Ice.RouterPrx.uncheckedCast(this._instance.proxyFactory().propertyToProxy(this._name+".Router"))),null!==o){if(this._routerInfo=this._instance.routerManager().find(o),t.assert(null!==this._routerInfo),null!==this._routerInfo.getAdapter())throw new Ice.AlreadyRegisteredException("object adapter with router",Ice.identityToString(o.ice_getIdentity(),this._instance.toStringMode()));this._routerInfo.setAdapter(this),e=this._instance.outgoingConnectionFactory().setRouterInfo(this._routerInfo)}else{if(l.getProperty(this._name+".Endpoints").length>0)throw new Ice.FeatureNotSupportedException("object adapter endpoints not supported");e=Ice.Promise.resolve()}e.then(()=>this.computePublishedEndpoints()).then(e=>{this._publishedEndpoints=e,a.resolve(this)},e=>{this.destroy(),a.reject(e)})}catch(e){throw this.destroy(),e}}getName(){return this._noConfig?"":this._name}getCommunicator(){return this._communicator}activate(){const t=new e(this._communicator,"activate",null,null,this);return this.setState(u),t.resolve(),t}hold(){this.checkForDeactivation(),this.setState(l)}waitForHold(){const t=new e(this._communicator,"waitForHold",null,null,this);try{this.checkForDeactivation(),this.waitState(l,t)}catch(e){t.reject(e)}return t}deactivate(){const t=new e(this._communicator,"deactivate",null,null,this);return this._state=d}destroy(){return this.deactivate().then(()=>{this._state{this._publishedEndpoints=e})}getPublishedEndpoints(){return o.clone(this._publishedEndpoints)}setPublishedEndpoints(e){if(this.checkForDeactivation(),null!==this._routerInfo)throw new Error("can't set published endpoints on object adapter associated with a router");this._publishedEndpoints=o.clone(e)}getServantManager(){return this._servantManager}setAdapterOnConnection(e){this.checkForDeactivation(),e.setAdapterAndServantManager(this,this._servantManager)}messageSizeMax(){return this._messageSizeMax}newProxy(e,t){return this._instance.proxyFactory().referenceToProxy(this._instance.referenceFactory().create(e,t,this._reference,this._publishedEndpoints))}checkForDeactivation(){if(this._state>=d){const e=new Ice.ObjectAdapterDeactivatedException;throw e.name=this.getName(),e}}checkIdentity(e){if(void 0===e.name||null===e.name||0===e.name.length)throw new Ice.IllegalIdentityException(e);void 0!==e.category&&null!==e.category||(e.category="")}checkServant(e){if(null==e)throw new Ice.IllegalServantException("cannot add null servant to Object Adapter")}computePublishedEndpoints(){let e;if(null!==this._routerInfo)e=this._routerInfo.getServerEndpoints().then(e=>{const t=[];return e.forEach(e=>{-1===t.findIndex(t=>e.equals(t))&&t.push(e)}),t});else{const t=[],n=this._instance.initializationData().properties.getProperty(this._name+".PublishedEndpoints"),i=" \t\n\r";let s,o=0;for(;o{if(this._instance.traceLevels().network>=1&&e.length>0){const t=[];t.push("published endpoints for object adapter `"),t.push(this._name),t.push("':\n");let n=!0;e.forEach(e=>{n||t.push(":"),t.push(e.toString()),n=!1}),this._instance.initializationData().logger.trace(this._instance.traceLevels().networkCat,t.toString())}return e})}filterProperties(e){let t=!0;const n=this._name+".";for(let e=0;e{this._statePromises[e]&&(t=t.concat(this._statePromises[e]),delete this._statePromises[e])}),t.length>0&&c.setImmediate(()=>t.forEach(e=>e.resolve()))}waitState(e,t){this._statee.deactivate())).then(()=>this._shutdownPromise.resolve()),this._shutdownPromise)}waitForShutdown(){return this._shutdownPromise.then(()=>t.all(this._adapters.map(e=>e.waitForDeactivate())))}isShutdown(){return null===this._instance}destroy(){return this.waitForShutdown().then(()=>t.all(this._adapters.map(e=>e.destroy())))}createObjectAdapter(t,n,i){if(null===this._instance)throw new Ice.ObjectAdapterDeactivatedException;let s=null;try{if(0===t.length)s=new e(this._instance,this._communicator,this,Ice.generateUUID(),null,!0,i);else{if(-1!==this._adapterNamesInUse.indexOf(t))throw new Ice.AlreadyRegisteredException("object adapter",t);s=new e(this._instance,this._communicator,this,t,n,!1,i),this._adapterNamesInUse.push(t)}this._adapters.push(s)}catch(e){i.reject(e)}}removeObjectAdapter(e){if(null===this._instance)return;let t=this._adapters.indexOf(e);-1!==t&&this._adapters.splice(t,1),-1!==(t=this._adapterNamesInUse.indexOf(e.getName()))&&this._adapterNamesInUse.splice(t,1)}}}(),Ice.ToStringMode=n.defineEnum([["Unicode",0],["ASCII",1],["Compat",2]]),function(){Ice.LogMessageType=n.defineEnum([["PrintMessage",0],["TraceMessage",1],["WarningMessage",2],["ErrorMessage",3]]),n.defineSequence(Ice,"LogMessageTypeSeqHelper","Ice.LogMessageType._helper",!1),Ice.LogMessage=class{constructor(e=Ice.LogMessageType.PrintMessage,t=new Ice.Long(0,0),n="",i=""){this.type=e,this.timestamp=t,this.traceCategory=n,this.message=i}_write(e){Ice.LogMessageType._write(e,this.type),e.writeLong(this.timestamp),e.writeString(this.traceCategory),e.writeString(this.message)}_read(e){this.type=Ice.LogMessageType._read(e),this.timestamp=e.readLong(),this.traceCategory=e.readString(),this.message=e.readString()}static get minWireSize(){return 11}},n.defineStruct(Ice.LogMessage,!0,!0),n.defineSequence(Ice,"LogMessageSeqHelper","Ice.LogMessage",!1);Ice.RemoteLogger=class extends Ice.Object{},Ice.RemoteLoggerPrx=class extends Ice.ObjectPrx{},n.defineOperations(Ice.RemoteLogger,Ice.RemoteLoggerPrx,["::Ice::Object","::Ice::RemoteLogger"],1,{init:[,,,,,[[7],["Ice.LogMessageSeqHelper"]],,,,],log:[,,,,,[[Ice.LogMessage]],,,,]}),Ice.RemoteLoggerAlreadyAttachedException=class extends Ice.UserException{constructor(e=""){super(e)}static get _parent(){return Ice.UserException}static get _id(){return"::Ice::RemoteLoggerAlreadyAttachedException"}_mostDerivedType(){return Ice.RemoteLoggerAlreadyAttachedException}};Ice.LoggerAdmin=class extends Ice.Object{},Ice.LoggerAdminPrx=class extends Ice.ObjectPrx{},n.defineOperations(Ice.LoggerAdmin,Ice.LoggerAdminPrx,["::Ice::LoggerAdmin","::Ice::Object"],0,{attachRemoteLogger:[,,,,,[["Ice.RemoteLoggerPrx"],["Ice.LogMessageTypeSeqHelper"],["Ice.StringSeqHelper"],[3]],,[Ice.RemoteLoggerAlreadyAttachedException],,],detachRemoteLogger:[,,,,[1],[["Ice.RemoteLoggerPrx"]],,,,],getLog:[,,,,["Ice.LogMessageSeqHelper"],[["Ice.LogMessageTypeSeqHelper"],["Ice.StringSeqHelper"],[3]],[[7]],,,]})}(),function(){const e=Ice.WSEndpoint;Ice.WSEndpointFactory=class{constructor(e,t){this._instance=e,this._delegate=t}type(){return this._instance.type()}protocol(){return this._instance.protocol()}create(t,n){const i=new e(this._instance,this._delegate.create(t,n));return i.initWithOptions(t),i}read(t){const n=new e(this._instance,this._delegate.read(t));return n.initWithStream(t),n}destroy(){this._delegate.destroy(),this._instance=null}}}(),n.defineDictionary(Ice,"SliceChecksumDict","SliceChecksumDictHelper","Ice.StringHelper","Ice.StringHelper",!1,void 0,void 0),function(){const e=Ice.Protocol;Ice.InitializationData=class{constructor(){this.properties=null,this.logger=null,this.valueFactoryManager=null}clone(){const e=new Ice.InitializationData;return e.properties=this.properties,e.logger=this.logger,e.valueFactoryManager=this.valueFactoryManager,e}},Ice.initialize=function(e,t){let n=null,i=null;if(e instanceof Array)n=e;else if(e instanceof Ice.InitializationData)i=e;else if(null!=e)throw new Ice.InitializationException("invalid argument to initialize");if(null!=t){if(!(t instanceof Ice.InitializationData&&null===i))throw new Ice.InitializationException("invalid argument to initialize");i=t}(i=null===i?new Ice.InitializationData:i.clone()).properties=Ice.createProperties(n,i.properties);const s=new Ice.Communicator(i);return s.finishSetup(null),s},Ice.createProperties=function(e,t){return new Ice.Properties(e,t)},Ice.currentProtocol=function(){return e.currentProtocol.clone()},Ice.currentEncoding=function(){return e.currentEncoding.clone()},Ice.stringVersion=function(){return"3.7.3"},Ice.intVersion=function(){return 30703}}(),function(){const e=Ice.TcpEndpointI;class t{constructor(e){this._instance=e}type(){return this._instance.type()}protocol(){return this._instance.protocol()}create(t,n){const i=new e(this._instance);return i.initWithOptions(t,n),i}read(t){const n=new e(this._instance);return n.initWithStream(t),n}destroy(){this._instance=null}clone(e){return new t(e)}}Ice.TcpEndpointFactory=t}(),function(){const e=Ice.AsyncResultBase,t=Ice.Debug,n=Ice.DefaultsAndOverrides,i=Ice.EndpointFactoryManager,s=Ice.ImplicitContextI,r=Ice.LocatorManager,o=Ice.ObjectAdapterFactory,c=Ice.ValueFactoryManagerI,a=Ice.OutgoingConnectionFactory,h=Ice.Properties,l=Ice.ProxyFactory,u=Ice.RetryQueue,d=Ice.RouterManager,p=Ice.Timer,_=Ice.TraceLevels,g=Ice.ReferenceFactory,I=Ice.RequestHandlerFactory,f=Ice.ACMConfig,m=0,w=1,y=2;Ice.Instance=class{constructor(e){this._state=m,this._initData=e,this._traceLevels=null,this._defaultsAndOverrides=null,this._messageSizeMax=0,this._batchAutoFlushSize=0,this._clientACM=null,this._toStringMode=Ice.ToStringMode.Unicode,this._implicitContext=null,this._routerManager=null,this._locatorManager=null,this._referenceFactory=null,this._requestHandlerFactory=null,this._proxyFactory=null,this._outgoingConnectionFactory=null,this._objectAdapterFactory=null,this._retryQueue=null,this._endpointHostResolver=null,this._endpointFactoryManager=null,this._objectFactoryMap=null}initializationData(){return this._initData}traceLevels(){return t.assert(null!==this._traceLevels),this._traceLevels}defaultsAndOverrides(){return t.assert(null!==this._defaultsAndOverrides),this._defaultsAndOverrides}routerManager(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._routerManager),this._routerManager}locatorManager(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._locatorManager),this._locatorManager}referenceFactory(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._referenceFactory),this._referenceFactory}requestHandlerFactory(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._requestHandlerFactory),this._requestHandlerFactory}proxyFactory(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._proxyFactory),this._proxyFactory}outgoingConnectionFactory(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._outgoingConnectionFactory),this._outgoingConnectionFactory}objectAdapterFactory(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._objectAdapterFactory),this._objectAdapterFactory}retryQueue(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._retryQueue),this._retryQueue}timer(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._timer),this._timer}endpointFactoryManager(){if(this._state===y)throw new Ice.CommunicatorDestroyedException;return t.assert(null!==this._endpointFactoryManager),this._endpointFactoryManager}messageSizeMax(){return this._messageSizeMax}batchAutoFlushSize(){return this._batchAutoFlushSize}clientACM(){return this._clientACM}toStringMode(){return this._toStringMode}getImplicitContext(){return this._implicitContext}setDefaultLocator(e){if(this._state==y)throw new Ice.CommunicatorDestroyedException;this._referenceFactory=this._referenceFactory.setDefaultLocator(e)}setDefaultRouter(e){if(this._state==y)throw new Ice.CommunicatorDestroyedException;this._referenceFactory=this._referenceFactory.setDefaultRouter(e)}setLogger(e){this._initData.logger=e}finishSetup(e,t){try{null===this._initData.properties&&(this._initData.properties=h.createProperties()),void 0===Ice._oneOfDone&&(Ice._printStackTraces=this._initData.properties.getPropertyAsIntWithDefault("Ice.PrintStackTraces",0)>0,Ice._oneOfDone=!0),null===this._initData.logger&&(this._initData.logger=Ice.getProcessLogger()),this._traceLevels=new _(this._initData.properties),this._defaultsAndOverrides=new n(this._initData.properties,this._initData.logger);const m=1024;let w=this._initData.properties.getPropertyAsIntWithDefault("Ice.MessageSizeMax",m);this._messageSizeMax=w<1||w>2147483647/1024?2147483647:1024*w,0===this._initData.properties.getProperty("Ice.BatchAutoFlushSize").length&&this._initData.properties.getProperty("Ice.BatchAutoFlush").length>0?this._initData.properties.getPropertyAsInt("Ice.BatchAutoFlush")>0&&(this._batchAutoFlushSize=this._messageSizeMax):(w=this._initData.properties.getPropertyAsIntWithDefault("Ice.BatchAutoFlushSize",1024),this._batchAutoFlushSize=w<1?w:w>2147483647/1024?2147483647:1024*w),this._clientACM=new f(this._initData.properties,this._initData.logger,"Ice.ACM.Client",new f(this._initData.properties,this._initData.logger,"Ice.ACM",new f));const y=this._initData.properties.getPropertyWithDefault("Ice.ToStringMode","Unicode");if("ASCII"===y)this._toStringMode=Ice.ToStringMode.ASCII;else if("Compat"===y)this._toStringMode=Ice.ToStringMode.Compat;else if("Unicode"!==y)throw new Ice.InitializationException("The value for Ice.ToStringMode must be Unicode, ASCII or Compat");this._implicitContext=s.create(this._initData.properties.getProperty("Ice.ImplicitContext")),this._routerManager=new d,this._locatorManager=new r(this._initData.properties),this._referenceFactory=new g(this,e),this._requestHandlerFactory=new I(this,e),this._proxyFactory=new l(this),this._endpointFactoryManager=new i(this);const x=new Ice.ProtocolInstance(this,Ice.TCPEndpointType,"tcp",!1),S=new Ice.TcpEndpointFactory(x);this._endpointFactoryManager.add(S);const E=new Ice.ProtocolInstance(this,Ice.WSEndpointType,"ws",!1),v=new Ice.WSEndpointFactory(E,S.clone(E));this._endpointFactoryManager.add(v);const b=new Ice.ProtocolInstance(this,Ice.SSLEndpointType,"ssl",!0),C=new Ice.TcpEndpointFactory(b);this._endpointFactoryManager.add(C);const M=new Ice.ProtocolInstance(this,Ice.WSSEndpointType,"wss",!0),P=new Ice.WSEndpointFactory(M,C.clone(M));this._endpointFactoryManager.add(P),this._outgoingConnectionFactory=new a(e,this),null===this._initData.valueFactoryManager&&(this._initData.valueFactoryManager=new c),this._objectAdapterFactory=new o(this,e),this._retryQueue=new u(this),this._timer=new p(this._initData.logger);const k=Ice.RouterPrx.uncheckedCast(this._proxyFactory.propertyToProxy("Ice.Default.Router"));null!==k&&(this._referenceFactory=this._referenceFactory.setDefaultRouter(k));const A=Ice.LocatorPrx.uncheckedCast(this._proxyFactory.propertyToProxy("Ice.Default.Locator"));null!==A&&(this._referenceFactory=this._referenceFactory.setDefaultLocator(A)),null!==t&&t.resolve(e)}catch(e){if(null===t)throw e instanceof Ice.LocalException&&this.destroy(),e;e instanceof Ice.LocalException?this.destroy().finally(()=>t.reject(e)):t.reject(e)}}destroy(){const t=new e(null,"destroy",null,this,null);return this._state==w?(this._destroyPromises||(this._destroyPromises=[]),this._destroyPromises.push(t),t):(this._state=w,Ice.Promise.try(()=>{if(this._objectAdapterFactory)return this._objectAdapterFactory.shutdown()}).then(()=>{if(null!==this._outgoingConnectionFactory&&this._outgoingConnectionFactory.destroy(),null!==this._objectAdapterFactory)return this._objectAdapterFactory.destroy()}).then(()=>{if(null!==this._outgoingConnectionFactory)return this._outgoingConnectionFactory.waitUntilFinished()}).then(()=>{if(this._retryQueue&&this._retryQueue.destroy(),this._timer&&this._timer.destroy(),null!==this._objectFactoryMap&&(this._objectFactoryMap.forEach(e=>e.destroy()),this._objectFactoryMap.clear()),this._routerManager&&this._routerManager.destroy(),this._locatorManager&&this._locatorManager.destroy(),this._endpointFactoryManager&&this._endpointFactoryManager.destroy(),this._initData.properties.getPropertyAsInt("Ice.Warn.UnusedProperties")>0){const e=this._initData.properties.getUnusedProperties();if(e.length>0){const t=[];t.push("The following properties were set but never read:"),e.forEach(e=>t.push("\n ",e)),this._initData.logger.warning(t.join(""))}}this._objectAdapterFactory=null,this._outgoingConnectionFactory=null,this._retryQueue=null,this._timer=null,this._referenceFactory=null,this._requestHandlerFactory=null,this._proxyFactory=null,this._routerManager=null,this._locatorManager=null,this._endpointFactoryManager=null,this._state=y,this._destroyPromises&&this._destroyPromises.forEach(e=>e.resolve()),t.resolve()}).catch(e=>{this._destroyPromises&&this._destroyPromises.forEach(t=>t.reject(e)),t.reject(e)}),t)}addObjectFactory(e,t){this._initData.valueFactoryManager.add(t=>e.create(t),t),null===this._objectFactoryMap&&(this._objectFactoryMap=new Map),this._objectFactoryMap.set(t,e)}findObjectFactory(e){let t=null;return null!==this._objectFactoryMap&&(t=this._objectFactoryMap.get(e)),void 0!==t?t:null}}}(),function(){const e=Ice.Instance,t=Ice.Debug;Ice.Communicator=class{constructor(t){this._instance=new e(t)}finishSetup(e){this._instance.finishSetup(this,e)}destroy(){return this._instance.destroy()}shutdown(){try{return this._instance.objectAdapterFactory().shutdown()}catch(e){return t.assert(e instanceof Ice.CommunicatorDestroyedException),Ice.Promise.resolve()}}waitForShutdown(){try{return this._instance.objectAdapterFactory().waitForShutdown()}catch(e){return t.assert(e instanceof Ice.CommunicatorDestroyedException),Ice.Promise.resolve()}}isShutdown(){try{return this._instance.objectAdapterFactory().isShutdown()}catch(e){if(!(e instanceof Ice.CommunicatorDestroyedException))throw e;return!0}}stringToProxy(e){return this._instance.proxyFactory().stringToProxy(e)}proxyToString(e){return this._instance.proxyFactory().proxyToString(e)}propertyToProxy(e){return this._instance.proxyFactory().propertyToProxy(e)}proxyToProperty(e,t){return this._instance.proxyFactory().proxyToProperty(e,t)}stringToIdentity(e){return Ice.stringToIdentity(e)}identityToString(e){return Ice.identityToString(e,this._instance.toStringMode())}createObjectAdapter(e){const t=new Ice.AsyncResultBase(this,"createObjectAdapter",this,null,null);return this._instance.objectAdapterFactory().createObjectAdapter(e,null,t),t}createObjectAdapterWithEndpoints(e,t){0===e.length&&(e=Ice.generateUUID()),this.getProperties().setProperty(e+".Endpoints",t);const n=new Ice.AsyncResultBase(this,"createObjectAdapterWithEndpoints",this,null,null);return this._instance.objectAdapterFactory().createObjectAdapter(e,null,n),n}createObjectAdapterWithRouter(e,t){0===e.length&&(e=Ice.generateUUID());const n=new Ice.AsyncResultBase(this,"createObjectAdapterWithRouter",this,null,null);return this.proxyToProperty(t,e+".Router").forEach((e,t)=>{this.getProperties().setProperty(t,e)}),this._instance.objectAdapterFactory().createObjectAdapter(e,t,n),n}addObjectFactory(e,t){this._instance.addObjectFactory(e,t)}findObjectFactory(e){return this._instance.findObjectFactory(e)}getValueFactoryManager(){return this._instance.initializationData().valueFactoryManager}getImplicitContext(){return this._instance.getImplicitContext()}getProperties(){return this._instance.initializationData().properties}getLogger(){return this._instance.initializationData().logger}getDefaultRouter(){return this._instance.referenceFactory().getDefaultRouter()}setDefaultRouter(e){this._instance.setDefaultRouter(e)}getDefaultLocator(){return this._instance.referenceFactory().getDefaultLocator()}setDefaultLocator(e){this._instance.setDefaultLocator(e)}flushBatchRequests(){return this._instance.outgoingConnectionFactory().flushAsyncBatchRequests()}get instance(){return this._instance}}}(),e.Ice=Ice,e.IceMX=IceMX,e.IceSSL=IceSSL,e.ice=t}();