|
|
!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;e<t;++e)if(void 0===(i=i[n[e]]))return;return i}}}(),function(){const e=Ice._ModuleRegistry,t=Ice.Slice,n=function(e,t){return e===t||null!=e&&null!=t&&(e.prototype===t.prototype&&("function"==typeof e.equals?e.equals(t):(e instanceof Array||e instanceof Uint8Array)&&i.equals(e,t,n)))};class i{static clone(e){return void 0===e?e:null===e?[]:e.slice()}static equals(e,t,i){if(e.length!=t.length)return!1;const s=i||n;for(let n=0;n<e.length;++n)if(!s.call(s,e[n],t[n]))return!1;return!0}static shuffle(e){for(let t=e.length;t>1;--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._limit<this.capacity?++this._shrinkCounter>2&&(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.capacity&&(this.b=this.b.slice(0,e),this.v=new DataView(this.b))}put(e){if(this._position===this._limit)throw new RangeError(t);this.v.setUint8(this._position,e),this._position++}putAt(e,t){if(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<n;++t)this.v.setUint8(this._position,e.charCodeAt(t)),this._position++}get(){if(this._position>=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<e;++n)i+=String.fromCharCode(t.getUint8(n));return this._position+=e,decodeURIComponent(escape(i))}get position(){return this._position}set position(e){e>=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(i<s),e.assert(s<=t.length),"\\"!=t.charAt(i))o.push(n(t,i++));else if(i+1===s)++i,o.push("\\");else{let c=t.charAt(++i);switch(c){case"\\":case"'":case'"':case"?":++i,o.push(c);break;case"a":++i,o.append("");break;case"b":++i,o.push("\b");break;case"f":++i,o.push("\f");break;case"n":++i,o.push("\n");break;case"r":++i,o.push("\r");break;case"t":++i,o.push("\t");break;case"v":++i,o.push("\v");break;case"u":case"U":{let e=0;const n="u"===c;let r=n?4:8;for(++i;r>0&&i<s;){let n=t.charCodeAt(i++);if(n>=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<s;){let n=t.charCodeAt(i++);if(n>=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&&i<s;++n){const s=t.charCodeAt(i++)-"0".charCodeAt(0);if(s<0||s>7){--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<s&&"\\"===t.charAt(i)){c=t.charAt(i+1);const e=t.charCodeAt(i+1);("x"===c||e>=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;i<e.length;i++){const n=e.charAt(i);if(-1!=t.indexOf(n))return i}return-1}static findFirstNotOf(e,t,n){for(let i=n=void 0===n?0:n;i<e.length;i++){const n=e.charAt(i);if(-1==t.indexOf(n))return i}return-1}static escapeString(n,i,s){if(null!==(i=void 0===i?null:i))for(let e=0;e<i.length;++e)if(i.charCodeAt(e)<32||i.charCodeAt(e)>126)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;n<e.length;++n){t(e.charCodeAt(n),r,i,s)}}else for(let o=0;o<n.length;++o){const c=n.charCodeAt(o);if(s===Ice.ToStringMode.Unicode||c<55296||c>57343)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;e<o.length;++e)if(o.charCodeAt(e)<32||o.charCodeAt(e)>126)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;c<r;)n(t,c++);return t.substring(s,r)}{const e=[];for(;s<r;)s=i(t,s,r,o,e);return e.join("")}}static splitString(e,t){const n=[];let i="",s=0,r=null;for(;s<e.length;)if(null!==r||'"'!==e.charAt(s)&&"'"!==e.charAt(s)){if(null===r&&"\\"===e.charAt(s)&&s+1<e.length&&('"'===e.charAt(s+1)||"'"===e.charAt(s+1)))++s;else if(null!==r&&"\\"===e.charAt(s)&&s+1<e.length&&e.charAt(s+1)===r)++s;else{if(null!==r&&e.charAt(s)===r){++s,r=null;continue}if(-1!==t.indexOf(e.charAt(s))&&null===r){++s,i.length>0&&(n.push(i),i="");continue}}s<e.length&&(i+=e.charAt(s++))}else r=e.charAt(s++);return i.length>0&&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++;t<e.length&&-1!=(i=e.indexOf(n,t));){if("\\"!=e.charAt(i-1))return i;t=i+1}return-1}return 0}static hashCode(e){let t=0;for(let n=0;n<e.length;n++)t=31*t+e.charCodeAt(n);return t}static toInt(e){const t=parseInt(e,10);if(isNaN(t))throw new RangeError("conversion of `"+e+"' to int failed");return t}}}(),Ice.ReferenceMode={ModeTwoway:0,ModeOneway:1,ModeBatchOneway:2,ModeDatagram:3,ModeBatchDatagram:4,ModeLast:4},Ice.OptionalFormat=Ice.Slice.defineEnum([["F1",0],["F2",1],["F4",2],["F8",3],["Size",4],["VSize",5],["FSize",6],["Class",7]]),function(){const e=Object.defineProperty,t=Ice.OptionalFormat,n={FSizeOptHelper:function(){this.writeOptional=function(e,n,i){if(void 0!==i&&e.writeOptional(n,t.FSize)){const t=e.startSize();this.write(e,i),e.endSize(t)}},this.readOptional=function(e,n){let i;return e.readOptional(n,t.FSize)&&(e.skip(4),i=this.read(e)),i}},VSizeOptHelper:function(){this.writeOptional=function(e,n,i){void 0!==i&&e.writeOptional(n,t.VSize)&&(e.writeSize(this.minWireSize),this.write(e,i))},this.readOptional=function(e,n){let i;return e.readOptional(n,t.VSize)&&(e.skipSize(),i=this.read(e)),i}},VSizeContainerOptHelper:function(e){this.writeOptional=function(n,i,s){if(void 0!==s&&n.writeOptional(i,t.VSize)){const t=this.size(s);n.writeSize(t>254?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;i<t.length;++i)n.write(e,t[i])}}read(e){const t=this.elementHelper,n=e.readAndCheckSeqSize(t.minWireSize),i=[];i.length=n;for(let s=0;s<n;++s)i[s]=t.read(e);return i}size(e){return null==e?0:e.length}get minWireSize(){return 1}}const s=new i;s.write=(e,t)=>e.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;e<t;++e)s(e);return n};n.generateSeqHelper=function(t,o,c){if(t===Ice.ByteHelper)return s;const a=new i;return o?1===t.minWireSize?n.VSizeContainer1OptHelper.call(a):n.VSizeContainerOptHelper.call(a,t.minWireSize):n.FSizeOptHelper.call(a),e(a,"elementHelper",{get:()=>t}),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;r<n;++r)t.set(i.read(e),s.read(e));return t}size(e){return null==e?0:e.size}get minWireSize(){return 1}}const c=function(e){const t=e.readSize(),n=new(0,this.mapType),i=this.valueType,s=function(t){e.readValue(e=>n.set(t,e),i)},r=this.keyHelper;for(let n=0;n<t;++n)s(r.read(e));return n};n.generateDictHelper=function(t,i,s,r,a){const h=new o;return s?n.VSizeContainerOptHelper.call(h,t.minWireSize+i.minWireSize):n.FSizeOptHelper.call(h),e(h,"mapType",{get:()=>a}),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;i<t.length;++i)e=n(e,t[i]);return e}}}(),function(){const e=Ice._ModuleRegistry,t=Ice.StringUtil;function n(e,t,n,i,s){for(let r=e._table[s];null!==r;r=r._nextInBucket)if(r._hash===i&&e.keysEqual(t,r._key))return void(r._value=n);e.add(t,n,i,s)}function i(e,t){return e===t}class s{constructor(e,t){let n,r,o;if("function"==typeof e?(r=e,o=t):e instanceof s&&(r=(n=e).keyComparator,o=n.valueComparator),this._size=0,this._head=null,this._initialCapacity=32,this._loadFactor=.75,this._table=[],this._keyComparator="function"==typeof r?r:i,this._valueComparator="function"==typeof o?o:i,n instanceof s&&n._size>0){this._threshold=n._threshold,this._table.length=n._table.length;for(let e=0;e<n._table.length;e++)this._table[e]=null;this.merge(n)}else{this._threshold=this._initialCapacity*this._loadFactor;for(let e=0;e<this._initialCapacity;e++)this._table[e]=null}}set(e,t){const i=this.computeHash(e),s=this.hashIndex(i.hash,this._table.length);return n(this,i.key,t,i.hash,s)}get(e){const t=this.computeHash(e),n=this.findEntry(t.key,t.hash);return void 0!==n?n._value:void 0}has(e){const t=this.computeHash(e);return void 0!==this.findEntry(t.key,t.hash)}delete(e){const t=this.computeHash(e),n=this.hashIndex(t.hash,this._table.length);let i=null;for(let e=this._table[n];null!==e;e=e._nextInBucket){if(e._hash===t.hash&&this.keysEqual(t.key,e._key))return this._size--,null!==i?i._nextInBucket=e._nextInBucket:this._table[n]=e._nextInBucket,null!==e._prev&&(e._prev._next=e._next),null!==e._next&&(e._next._prev=e._prev),this._head===e&&(this._head=e._next),e._value;i=e}}clear(){for(let e=0;e<this._table.length;++e)this._table[e]=null;this._head=null,this._size=0}forEach(e,t){t=void 0===t?e:t;for(let n=this._head;null!==n;n=n._next)e.call(t,n._value,n._key)}*entries(){for(let e=this._head;null!==e;e=e._next)yield[e._key,e._value]}*keys(){for(let e=this._head;null!==e;e=e._next)yield e._key}*values(){for(let e=this._head;null!==e;e=e._next)yield e._value}equals(e,t){if(null===e||!(e instanceof s)||this._size!==e._size)return!1;let n;n=t||((e,t)=>this._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<e.length;l+=3)n=255&e[l],s=0,r=0,l+1<e.length&&(s=255&e[l+1]),l+2<e.length&&(r=255&e[l+2]),o=n>>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+1<e.length?t.push(i(a)):t.push("="),l+2<e.length?t.push(i(h)):t.push("=");const l=t.join(""),u=[];let d=0;for(;l.length-d>76;)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<e.length;n++){const i=e.charAt(n);r.isBase64(i)&&t.push(i)}if(0===t.length)return null;const n=3*t.length/4+1,i=new Ice.Buffer;let o,c,a,h,l,u,d,p;i.resize(n);for(let e=0;e<t.length;e+=4)l="A",u="A",d="A",p="A",l=t[e],e+1<t.length&&(u=t[e+1]),e+2<t.length&&(d=t[e+2]),e+3<t.length&&(p=t[e+3]),o=255&s(l),c=255&s(u),a=255&s(d),h=255&s(p),i.put(o<<2|c>>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.currentProtocol.minor?e:t.currentProtocol},t.getCompatibleEncoding=function(e){return e.major!==t.currentEncoding.major?e:e.minor<t.currentEncoding.minor?e:t.currentEncoding},t.isSupported=function(e,t){return e.major===t.major&&e.minor<=t.minor},Ice.stringToProtocolVersion=function(e){return new Ice.ProtocolVersion(n(e),i(e))},Ice.stringToEncodingVersion=function(e){return new Ice.EncodingVersion(n(e),i(e))},Ice.protocolVersionToString=function(e){return s(e.major,e.minor)},Ice.encodingVersionToString=function(e){return s(e.major,e.minor)},t.OPTIONAL_END_MARKER=255,t.FLAG_HAS_TYPE_ID_STRING=1,t.FLAG_HAS_TYPE_ID_INDEX=2,t.FLAG_HAS_TYPE_ID_COMPACT=3,t.FLAG_HAS_OPTIONAL_MEMBERS=4,t.FLAG_HAS_INDIRECTION_TABLE=8,t.FLAG_HAS_SLICE_SIZE=16,t.FLAG_IS_LAST_SLICE=32,Ice.Protocol=t}(),function(){Ice.MapUtil=class{static equals(e,t){if(e===t)return!0;if(e.size!=t.size)return!1;for(const[n,i]of e)if(void 0===i){if(!t.has(n))return!1;if(t.get(n)!==i)return!1}else if(t.get(n)!==i)return!1;return!0}}}(),n.defineDictionary(Ice,"Context","ContextHelper","Ice.StringHelper","Ice.StringHelper",!1,void 0,void 0),Ice.OperationMode=n.defineEnum([["Normal",0],["Nonmutating",1],["Idempotent",2]]),Ice.Current=class{constructor(e=null,t=null,n=new Ice.Identity,i="",s="",r=Ice.OperationMode.Normal,o=null,c=0,a=new Ice.EncodingVersion){this.adapter=e,this.con=t,this.id=n,this.facet=i,this.operation=s,this.mode=r,this.ctx=o,this.requestId=c,this.encoding=a}},n.defineStruct(Ice.Current,!1,!0),Ice.Property=class{constructor(e,t,n){this._pattern=e,this._deprecated=t,this._deprecatedBy=n}get pattern(){return this._pattern}get deprecated(){return this._deprecated}get deprecatedBy(){return this._deprecatedBy}},function(){const e={},t=Ice.Property;e.IceProps=[new t("/^Ice.ACM.Client/",!0,null),new t("/^Ice.ACM.Server/",!0,null),new t("/^Ice.ACM.Timeout/",!1,null),new t("/^Ice.ACM.Heartbeat/",!1,null),new t("/^Ice.ACM.Close/",!1,null),new t("/^Ice.ACM/",!1,null),new t("/^Ice.ACM.Client.Timeout/",!1,null),new t("/^Ice.ACM.Client.Heartbeat/",!1,null),new t("/^Ice.ACM.Client.Close/",!1,null),new t("/^Ice.ACM.Client/",!1,null),new t("/^Ice.ACM.Server.Timeout/",!1,null),new t("/^Ice.ACM.Server.Heartbeat/",!1,null),new t("/^Ice.ACM.Server.Close/",!1,null),new t("/^Ice.ACM.Server/",!1,null),new t("/^Ice.Admin.ACM.Timeout/",!1,null),new t("/^Ice.Admin.ACM.Heartbeat/",!1,null),new t("/^Ice.Admin.ACM.Close/",!1,null),new t("/^Ice.Admin.ACM/",!1,null),new t("/^Ice.Admin.AdapterId/",!1,null),new t("/^Ice.Admin.Endpoints/",!1,null),new t("/^Ice.Admin.Locator.EndpointSelection/",!1,null),new t("/^Ice.Admin.Locator.ConnectionCached/",!1,null),new t("/^Ice.Admin.Locator.PreferSecure/",!1,null),new t("/^Ice.Admin.Locator.LocatorCacheTimeout/",!1,null),new t("/^Ice.Admin.Locator.InvocationTimeout/",!1,null),new t("/^Ice.Admin.Locator.Locator/",!1,null),new t("/^Ice.Admin.Locator.Router/",!1,null),new t("/^Ice.Admin.Locator.CollocationOptimized/",!1,null),new t("/^Ice.Admin.Locator.Context../",!1,null),new t("/^Ice.Admin.Locator/",!1,null),new t("/^Ice.Admin.PublishedEndpoints/",!1,null),new t("/^Ice.Admin.ReplicaGroupId/",!1,null),new t("/^Ice.Admin.Router.EndpointSelection/",!1,null),new t("/^Ice.Admin.Router.ConnectionCached/",!1,null),new t("/^Ice.Admin.Router.PreferSecure/",!1,null),new t("/^Ice.Admin.Router.LocatorCacheTimeout/",!1,null),new t("/^Ice.Admin.Router.InvocationTimeout/",!1,null),new t("/^Ice.Admin.Router.Locator/",!1,null),new t("/^Ice.Admin.Router.Router/",!1,null),new t("/^Ice.Admin.Router.CollocationOptimized/",!1,null),new t("/^Ice.Admin.Router.Context../",!1,null),new t("/^Ice.Admin.Router/",!1,null),new t("/^Ice.Admin.ProxyOptions/",!1,null),new t("/^Ice.Admin.ThreadPool.Size/",!1,null),new t("/^Ice.Admin.ThreadPool.SizeMax/",!1,null),new t("/^Ice.Admin.ThreadPool.SizeWarn/",!1,null),new t("/^Ice.Admin.ThreadPool.StackSize/",!1,null),new t("/^Ice.Admin.ThreadPool.Serialize/",!1,null),new t("/^Ice.Admin.ThreadPool.ThreadIdleTime/",!1,null),new t("/^Ice.Admin.ThreadPool.ThreadPriority/",!1,null),new t("/^Ice.Admin.MessageSizeMax/",!1,null),new t("/^Ice.Admin.DelayCreation/",!1,null),new t("/^Ice.Admin.Enabled/",!1,null),new t("/^Ice.Admin.Facets/",!1,null),new t("/^Ice.Admin.InstanceName/",!1,null),new t("/^Ice.Admin.Logger.KeepLogs/",!1,null),new t("/^Ice.Admin.Logger.KeepTraces/",!1,null),new t("/^Ice.Admin.Logger.Properties/",!1,null),new t("/^Ice.Admin.ServerId/",!1,null),new t("/^Ice.BackgroundLocatorCacheUpdates/",!1,null),new t("/^Ice.BatchAutoFlush/",!0,null),new t("/^Ice.BatchAutoFlushSize/",!1,null),new t("/^Ice.ChangeUser/",!1,null),new t("/^Ice.ClassGraphDepthMax/",!1,null),new t("/^Ice.ClientAccessPolicyProtocol/",!1,null),new t("/^Ice.Compression.Level/",!1,null),new t("/^Ice.CollectObjects/",!1,null),new t("/^Ice.Config/",!1,null),new t("/^Ice.ConsoleListener/",!1,null),new t("/^Ice.Default.CollocationOptimized/",!1,null),new t("/^Ice.Default.EncodingVersion/",!1,null),new t("/^Ice.Default.EndpointSelection/",!1,null),new t("/^Ice.Default.Host/",!1,null),new t("/^Ice.Default.Locator.EndpointSelection/",!1,null),new t("/^Ice.Default.Locator.ConnectionCached/",!1,null),new t("/^Ice.Default.Locator.PreferSecure/",!1,null),new t("/^Ice.Default.Locator.LocatorCacheTimeout/",!1,null),new t("/^Ice.Default.Locator.InvocationTimeout/",!1,null),new t("/^Ice.Default.Locator.Locator/",!1,null),new t("/^Ice.Default.Locator.Router/",!1,null),new t("/^Ice.Default.Locator.CollocationOptimized/",!1,null),new t("/^Ice.Default.Locator.Context../",!1,null),new t("/^Ice.Default.Locator/",!1,null),new t("/^Ice.Default.LocatorCacheTimeout/",!1,null),new t("/^Ice.Default.InvocationTimeout/",!1,null),new t("/^Ice.Default.Package/",!1,null),new t("/^Ice.Default.PreferSecure/",!1,null),new t("/^Ice.Default.Protocol/",!1,null),new t("/^Ice.Default.Router.EndpointSelection/",!1,null),new t("/^Ice.Default.Router.ConnectionCached/",!1,null),new t("/^Ice.Default.Router.PreferSecure/",!1,null),new t("/^Ice.Default.Router.LocatorCacheTimeout/",!1,null),new t("/^Ice.Default.Router.InvocationTimeout/",!1,null),new t("/^Ice.Default.Router.Locator/",!1,null),new t("/^Ice.Default.Router.Router/",!1,null),new t("/^Ice.Default.Router.CollocationOptimized/",!1,null),new t("/^Ice.Default.Router.Context../",!1,null),new t("/^Ice.Default.Router/",!1,null),new t("/^Ice.Default.SlicedFormat/",!1,null),new t("/^Ice.Default.SourceAddress/",!1,null),new t("/^Ice.Default.Timeout/",!1,null),new t("/^Ice.EventLog.Source/",!1,null),new t("/^Ice.FactoryAssemblies/",!1,null),new t("/^Ice.HTTPProxyHost/",!1,null),new t("/^Ice.HTTPProxyPort/",!1,null),new t("/^Ice.ImplicitContext/",!1,null),new t("/^Ice.InitPlugins/",!1,null),new t("/^Ice.IPv4/",!1,null),new t("/^Ice.IPv6/",!1,null),new t("/^Ice.LogFile/",!1,null),new t("/^Ice.LogFile.SizeMax/",!1,null),new t("/^Ice.LogStdErr.Convert/",!1,null),new t("/^Ice.MessageSizeMax/",!1,null),new t("/^Ice.Nohup/",!1,null),new t("/^Ice.NullHandleAbort/",!1,null),new t("/^Ice.Override.CloseTimeout/",!1,null),new t("/^Ice.Override.Compress/",!1,null),new t("/^Ice.Override.ConnectTimeout/",!1,null),new t("/^Ice.Override.Timeout/",!1,null),new t("/^Ice.Override.Secure/",!1,null),new t("/^Ice.Package../",!1,null),new t("/^Ice.Plugin../",!1,null),new t("/^Ice.PluginLoadOrder/",!1,null),new t("/^Ice.PreferIPv6Address/",!1,null),new t("/^Ice.PreloadAssemblies/",!1,null),new t("/^Ice.PrintAdapterReady/",!1,null),new t("/^Ice.PrintProcessId/",!1,null),new t("/^Ice.PrintStackTraces/",!1,null),new t("/^Ice.ProgramName/",!1,null),new t("/^Ice.RetryIntervals/",!1,null),new t("/^Ice.ServerIdleTime/",!1,null),new t("/^Ice.SOCKSProxyHost/",!1,null),new t("/^Ice.SOCKSProxyPort/",!1,null),new t("/^Ice.StdErr/",!1,null),new t("/^Ice.StdOut/",!1,null),new t("/^Ice.SyslogFacility/",!1,null),new t("/^Ice.ThreadPool.Client.Size/",!1,null),new t("/^Ice.ThreadPool.Client.SizeMax/",!1,null),new t("/^Ice.ThreadPool.Client.SizeWarn/",!1,null),new t("/^Ice.ThreadPool.Client.StackSize/",!1,null),new t("/^Ice.ThreadPool.Client.Serialize/",!1,null),new t("/^Ice.ThreadPool.Client.ThreadIdleTime/",!1,null),new t("/^Ice.ThreadPool.Client.ThreadPriority/",!1,null),new t("/^Ice.ThreadPool.Server.Size/",!1,null),new t("/^Ice.ThreadPool.Server.SizeMax/",!1,null),new t("/^Ice.ThreadPool.Server.SizeWarn/",!1,null),new t("/^Ice.ThreadPool.Server.StackSize/",!1,null),new t("/^Ice.ThreadPool.Server.Serialize/",!1,null),new t("/^Ice.ThreadPool.Server.ThreadIdleTime/",!1,null),new t("/^Ice.ThreadPool.Server.ThreadPriority/",!1,null),new t("/^Ice.ThreadPriority/",!1,null),new t("/^Ice.ToStringMode/",!1,null),new t("/^Ice.Trace.Admin.Properties/",!1,null),new t("/^Ice.Trace.Admin.Logger/",!1,null),new t("/^Ice.Trace.Locator/",!1,null),new t("/^Ice.Trace.Network/",!1,null),new t("/^Ice.Trace.Protocol/",!1,null),new t("/^Ice.Trace.Retry/",!1,null),new t("/^Ice.Trace.Slicing/",!1,null),new t("/^Ice.Trace.ThreadPool/",!1,null),new t("/^Ice.UDP.RcvSize/",!1,null),new t("/^Ice.UDP.SndSize/",!1,null),new t("/^Ice.TCP.Backlog/",!1,null),new t("/^Ice.TCP.RcvSize/",!1,null),new t("/^Ice.TCP.SndSize/",!1,null),new t("/^Ice.UseApplicationClassLoader/",!1,null),new t("/^Ice.UseOSLog/",!1,null),new t("/^Ice.UseSyslog/",!1,null),new t("/^Ice.UseSystemdJournal/",!1,null),new t("/^Ice.Warn.AMICallback/",!1,null),new t("/^Ice.Warn.Connections/",!1,null),new t("/^Ice.Warn.Datagrams/",!1,null),new t("/^Ice.Warn.Dispatch/",!1,null),new t("/^Ice.Warn.Endpoints/",!1,null),new t("/^Ice.Warn.UnknownProperties/",!1,null),new t("/^Ice.Warn.UnusedProperties/",!1,null),new t("/^Ice.CacheMessageBuffers/",!1,null),new t("/^Ice.ThreadInterruptSafe/",!1,null),new t("/^Ice.Voip/",!0,null)],e.validProps=[e.IceProps],e.clPropNames=["Ice"],Ice.PropertyNames=e}(),function(){const e=Ice.Timer;class t extends Promise{constructor(e){let t,n;super((i,s)=>{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<n;++i)e.push("\nrequest #"+i+":"),c(e,t)}(n,i);break;case t.replyMsg:!function(n,i){const s=i.readInt();n.push("\nrequest id = "+s);const r=i.readByte();switch(n.push("\nreply status = "+r+" "),r){case t.replyOK:n.push("(ok)");break;case t.replyUserException:n.push("(user exception)");break;case t.replyObjectNotExist:case t.replyFacetNotExist:case t.replyOperationNotExist:switch(r){case t.replyObjectNotExist:n.push("(object not exist)");break;case t.replyFacetNotExist:n.push("(facet not exist)");break;case t.replyOperationNotExist:n.push("(operation not exist)");break;default:e.assert(!1)}o(n,i);break;case t.replyUnknownException:case t.replyUnknownLocalException:case t.replyUnknownUserException:{switch(r){case t.replyUnknownException:n.push("(unknown exception)");break;case t.replyUnknownLocalException:n.push("(unknown local exception)");break;case t.replyUnknownUserException:n.push("(unknown user exception)");break;default:e.assert(!1)}const s=i.readString();n.push("\nunknown = "+s);break}default:n.push("(unknown)")}if(r===t.replyOK||r===t.replyUserException){const e=i.skipEncapsulation();e.equals(Ice.Encoding_1_0)||(n.push("\nencoding = "),n.push(Ice.encodingVersionToString(e)))}}(n,i)}return s}function h(e){switch(e){case t.requestMsg:return"request";case t.requestBatchMsg:return"batch request";case t.replyMsg:return"reply";case t.closeConnectionMsg:return"close connection";case t.validateConnectionMsg:return"validate connection";default:return"unknown"}}class l{static traceSlicing(e,t,n,i){r.has(t)||(i.trace(n,`unknown ${e} type \`${t}'`),r.set(t,1))}static traceSend(e,t,n){if(n.protocol>=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<e.length;n+=8){for(let i=n;i-n<8;i++)if(i<e.length){let n,s=e[i];s<0&&(s+=256),n=s<10?" "+s:s<100?" "+s:String(s),t.push(n+" ")}else t.push(" ");t.push('"');for(let i=n;i<e.length&&i-n<8;i++)e[i]>=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;e<i.length;++e)i[e](n);this._patchMap.delete(e)}}if(null!==this._patchMap&&0!==this._patchMap.size||null!==this._valueList){if(null===this._valueList&&(this._valueList=[]),this._valueList.push(n),null===this._patchMap||0===this._patchMap.size){for(let e=0;e<this._valueList.length;e++)try{this._valueList[e].ice_postUnmarshal()}catch(e){this._stream.instance.initializationData().logger.warning("exception raised by ice_postUnmarshal:\n"+e.toString())}this._valueList=[]}}else try{n.ice_postUnmarshal()}catch(e){this._stream.instance.initializationData().logger.warning("exception raised by ice_postUnmarshal:\n"+e.toString())}}}class d extends u{constructor(e,t,n,i){super(e,t,n,i),this._sliceType=h.NoSlice}readValue(e){t.assert(null!==e);let n=this._stream.readInt();if(n>0)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<n;++t)e[t]=this.readInstance(this._stream.readSize(),null);if(0===e.length)throw new Ice.MarshalException("empty indirection table");if((null===this._current.indirectPatchList||0===this._current.indirectPatchList.length)&&0==(this._current.sliceFlags&r.FLAG_HAS_OPTIONAL_MEMBERS))throw new Ice.MarshalException("no references to indirection table");null!==this._current.indirectPatchList&&(this._current.indirectPatchList.forEach(n=>{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;n<e;++n)t[n]=this.readInstance(this._stream.readSize(),null);this._current.indirectionTables.push(t)}else this._current.indirectionTables.push(null);this._current.slices.push(n)}readOptional(e,t){return null===this._current?this._stream.readOptImpl(e,t):0!=(this._current.sliceFlags&r.FLAG_HAS_OPTIONAL_MEMBERS)&&this._stream.readOptImpl(e,t)}readInstance(e,n){t.assert(e>0);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<this._current.slices.length;++e){const t=this._current.indirectionTables[e],n=this._current.slices[e];if(n.instances=[],t)for(let e=0;e<t.length;++e)this.addPatchEntry(t[e],_(n.instances,e,Ice.Value))}return new a(c.clone(this._current.slices))}push(e){null===this._current?this._current=new p.InstanceData(null):this._current=this._current.next?this._current.next:new p.InstanceData(this._current),this._current.sliceType=e,this._current.skipFirstSlice=!1}}p.InstanceData=class{constructor(e){null!==e&&(e.next=this),this.previous=e,this.next=null,this.sliceType=null,this.skipFirstSlice=!1,this.slices=null,this.indirectionTables=null,this.sliceFlags=0,this.sliceSize=0,this.typeId=null,this.compactId=0,this.indirectPatchList=null}};const _=function(e,t,i){return s=>{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<e)throw new Ice.UnmarshalOutOfBoundsException;try{return this._buf.getArray(e)}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readOptional(e,n){return t.assert(null!==this._encapsStack),null!==this._encapsStack.decoder?this._encapsStack.decoder.readOptional(e,n):this.readOptImpl(e,n)}readOptionalHelper(e,t,n){return this.readOptional(e,t)?n.call(this):void 0}readByte(){try{return this._buf.get()}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readByteSeq(){return this._buf.getArray(this.readAndCheckSeqSize(1))}readBool(){try{return 1===this._buf.get()}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readShort(){try{return this._buf.getShort()}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readInt(){try{return this._buf.getInt()}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readLong(){try{return this._buf.getLong()}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readFloat(){try{return this._buf.getFloat()}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readDouble(){try{return this._buf.getDouble()}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readString(){const e=this.readSize();if(0===e)return"";if(this._buf.remaining<e)throw new Ice.UnmarshalOutOfBoundsException;try{return this._buf.getString(e)}catch(e){throw new Ice.UnmarshalOutOfBoundsException}}readProxy(e){return this._instance.proxyFactory().streamToProxy(this,e)}readOptionalProxy(e,t){return this.readOptional(e,s.FSize)?(this.skip(4),this.readProxy(t)):void 0}readEnum(e){let t;t=this.getEncoding().equals(Ice.Encoding_1_0)?e.maxValue<127?this.readByte():e.maxValue<32767?this.readShort():this.readInt():this.readSize();const n=e.valueOf(t);if(void 0===n)throw new Ice.MarshalException("enumerator value "+t+" is out of range");return n}readOptionalEnum(e,t){return this.readOptional(e,s.Size)?this.readEnum(t):void 0}readValue(e,t){this.initEncaps(),this._encapsStack.decoder.readValue(null===e?null:i=>{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<e)){if(i!==t)throw new Ice.MarshalException("invalid optional data member `"+o+"': unexpected format");return!0}this.skipOptional(i)}}skipOptional(e){switch(e){case s.F1:this.skip(1);break;case s.F2:this.skip(2);break;case s.F4:this.skip(4);break;case s.F8:this.skip(8);break;case s.Size:this.skipSize();break;case s.VSize:this.skip(this.readSize());break;case s.FSize:this.skip(this.readInt());break;case s.Class:this.readValue(null,Ice.Value);break;default:t.assert(!1)}}skipOptionals(){for(;;){if(this._buf.position>=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);e<this._maxSize&&(this._maxSize=e)}}prepareBatchRequest(e){if(this._exception)throw this._exception;this._batchStream.swap(e)}finishBatchRequest(e,n,i){this._batchStream.swap(e);try{this._maxSize>0&&this._batchStream.size>=this._maxSize&&n.ice_flushBatchRequests(),t.assert(this._batchMarker<this._batchStream.size),this._batchMarker=this._batchStream.size,++this._batchRequestNum}finally{this._batchStream.resize(this._batchMarker)}}abortBatchRequest(e){this._batchStream.swap(e),this._batchStream.resize(this._batchMarker)}swap(e){if(0===this._batchRequestNum)return 0;let t=null;if(this._batchMarker<this._batchStream.size){const e=this._batchStream.size-this._batchMarker;this._batchStream.pos=this._batchMarker,t=this._batchStream.buffer.getArray(e),this._batchStream.resize(this._batchMarker)}const i=this._batchRequestNum;return this._batchStream.swap(e),this._batchRequestNum=0,this._batchStream.writeBlob(n.requestBatchHdr),this._batchMarker=this._batchStream.size,null!==t&&this._batchStream.writeBlob(t),i}destroy(e){this._exception=e}isEmpty(){return this._batchStream.size===n.requestBatchHdr.length}}}(),function(){const e=Ice.AsyncResultBase,t=Ice.Debug,n=Ice.Protocol,i=Ice.UserException,s=Ice.OutputStream;class r extends e{constructor(e,t,i,r,o,c){super(e,t,i,r,o),this._completed=c,this._is=null,this._os=null!==e?new s(this._instance,n.currentProtocolEncoding):null,this._state=0,this._exception=null,this._sentSynchronously=!1}cancel(){this.cancelWithException(new Ice.InvocationCanceledException)}isCompleted(){return(this._state&r.Done)>0}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+1<i.length)try{s.name=e.unescapeString(i,r+1,i.length,"/")}catch(e){throw new n(`invalid name in identity \`${i}': ${e.toString()}`)}else s.name=""}return s},Ice.identityToString=function(t,n=Ice.ToStringMode.Unicode){return null===t.category||0===t.category.length?e.escapeString(t.name,"/",n):e.escapeString(t.category,"/",n)+"/"+e.escapeString(t.name,"/",n)},Ice.proxyIdentityCompare=function(e,t){if(e===t)return 0;if(null===e&&null!==t)return-1;if(null!==e&&null===t)return 1;{const n=e.ice_getIdentity(),i=t.ice_getIdentity(),s=n.name.localeCompare(i.name);return 0!==s?s:n.category.localeCompare(i.category)}},Ice.proxyIdentityAndFacetCompare=function(e,t){if(e===t)return 0;if(null===e&&null!==t)return-1;if(null!==e&&null===t)return 1;{const n=e.ice_getIdentity(),i=t.ice_getIdentity();let s=n.name.localeCompare(i.name);if(0!==s)return s;if(0!==(s=n.category.localeCompare(i.category)))return s;const r=e.ice_getFacet(),o=t.ice_getFacet();return null===r&&null===o?0:null===r?-1:null===o?1:r.localeCompare(o)}}}(),function(){const e=Ice.AsyncStatus,t=Ice.AsyncResult,n=Ice.InputStream,i=Ice.OutputStream,s=Ice.Debug,r=Ice.RetryException,o=Ice.Protocol,c=Ice.Identity;class a extends t{constructor(e,t,n,s,r){super(e,t,n,s,r),this._os=new i(this._instance,o.currentProtocolEncoding)}getOs(){return this._os}sent(){this.markSent(!0)}completedEx(e){this.markFinishedEx(e)}}class h extends a{constructor(e,t){super(e.ice_getCommunicator(),t,null,e,null),this._mode=null,this._cnt=0,this._sent=!1,this._handler=null}completedEx(e){try{this._instance.retryQueue().add(this,this.handleException(e))}catch(e){this.markFinishedEx(e)}}retryException(e){try{this._proxy._updateRequestHandler(this._handler,null),this._instance.retryQueue().add(this,0)}catch(e){this.completedEx(e)}}retry(){this.invokeImpl(!1)}abort(e){this.markFinishedEx(e)}invokeImpl(t){try{if(t){const e=this._proxy._getReference().getInvocationTimeout();e>0&&(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<t.length;++i)if(n instanceof t[i])return e.reject(n),!1;return e.reject(new Ice.UnknownUserException(n.ice_id())),!1}return e.reject(n),!1}return!0}static dispatchLocalException(e,t){e.reject(t)}static checkedCast(e,n,i){let s=null;return null==e?(s=new t(null,"checkedCast",null,null,null)).resolve(null):(void 0!==n&&(e=e.ice_facet(n)),s=new t(e.ice_getCommunicator(),"checkedCast",null,e,null),e.ice_isA(this.ice_staticId(),i).then(t=>{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<t.length;++n)e.push(t[n])}}getProperty(e){return this.getPropertyWithDefault(e,"")}getPropertyWithDefault(e,t){const n=this._properties.get(e);return void 0!==n?(n.used=!0,n.value):t}getPropertyAsInt(e){return this.getPropertyAsIntWithDefault(e,0)}getPropertyAsIntWithDefault(e,t){const n=this._properties.get(e);return void 0!==n?(n.used=!0,parseInt(n.value)):t}getPropertyAsList(e){return this.getPropertyAsListWithDefault(e,0)}getPropertyAsListWithDefault(t,n){null==n&&(n=[]);const s=this._properties.get(t);if(void 0!==s){s.used=!0;let r=e.splitString(s.value,", \t\r\n");return null===r?(i().warning("mismatched quotes in property "+t+"'s value, returning default value"),n):(0===r.length&&(r=n),r)}return n}getPropertiesForPrefix(e=""){const t=new Map;return this._properties.forEach((n,i)=>{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;s<t.validProps.length;++s){let r=t.validProps[s][0].pattern;if(c=r.indexOf("."),n.assert(-1!=c),r.substring(0,c-1)!=i)continue;let a,h=!1,l=!1;for(let n=0;n<t.validProps[s][n].length&&!h;++n){r=t.validProps[s][n].pattern();let i=new RegExp(r);if((h=i.test(e))&&t.validProps[s][n].deprecated&&(o.warning("deprecated property: "+e),null!==t.validProps[s][n].deprecatedBy&&(e=t.validProps[s][n].deprecatedBy)),h)break;if(h=(i=new RegExp(r.toUpperCase())).test(e.toUpperCase())){l=!0,a=(a=(a=r.substr(2)).substr(0,a.length-1)).replace(/\\/g,"");break}}h?l&&o.warning("unknown property: `"+e+"'; did you mean `"+a+"'"):o.warning("unknown property: "+e)}}if(null!==r&&r.length>0){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;e<t.clPropNames.length;++e)n=this.parseCommandLineOptions(t.clPropNames[e],n);return n}parse(e){e.match(/[^\r\n]+/g).forEach(e=>this.parseLine(e))}parseLine(e){let t="",s="",c=r,a="",h="",l=!1;for(let i=0;i<e.length;++i){let u=e.charAt(i);switch(c){case r:switch(u){case"\\":if(i<e.length-1)switch(u=e.charAt(++i)){case"\\":case"#":case"=":t+=a,a="",t+=u;break;case" ":0!==t.length&&(a+=u);break;default:t+=a,a="",t+="\\",t+=u}else t+=a,t+=u;break;case" ":case"\t":case"\r":case"\n":0!==t.length&&(a+=u);break;case"=":a="",c=o;break;case"#":l=!0;break;default:t+=a,a="",t+=u}break;case o:switch(u){case"\\":if(i<e.length-1)switch(u=e.charAt(++i)){case"\\":case"#":case"=":s+=0===s.length?h:a,a="",h="",s+=u;break;case" ":a+=u,h+=u;break;default:s+=0===s.length?h:a,a="",h="",s+="\\",s+=u}else s+=0===s.length?h:a,s+=u;break;case" ":case"\t":case"\r":case"\n":0!==s.length&&(a+=u);break;case"#":l=!0;break;default:s+=0===s.length?h:a,a="",h="",s+=u}break;default:n.assert(!1)}if(l)break}s+=h,c===r&&0!==t.length||c==o&&0===t.length?i().warning('invalid config file entry: "'+e+'"'):0!==t.length&&this.setProperty(t,s)}clone(){return new c(null,this)}getUnusedProperties(){const e=[];return this._properties.forEach((t,n)=>{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;n<this._requests.length;n++)if(this._requests[n]===e)return e.completedEx(t),void this._requests.splice(n,1);n.assert(!1)}this._connection.asyncRequestCanceled(e,t)}}getReference(){return this._reference}getConnection(){if(null!==this._exception)throw this._exception;return this._connection}setConnection(e){n.assert(null===this._exception&&null===this._connection),this._connection=e;const t=this._reference.getRouterInfo();null===t?this.flushRequests():t.addProxy(this._proxy).then(()=>this.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<e.length;++t)-1!==e[t].search(/[ \t\n\r]+/)?n+=' "'+e[t]+'"':n+=" "+e[t];n+="'";for(let i=0;i<e.length;){const s=e[i++];if(s.length<2||"-"!=s.charAt(0)){t.push(s);continue}let r=null;i<e.length&&"-"!=e[i].charAt(0)&&(r=e[i++]),this.checkOption(s,r,n)||(t.push(s),null!==r&&t.push(r))}e.length=0;for(let n=0;n<t.length;n++)e.push(t[n])}equals(t){return t instanceof e&&0===this.compareTo(t)}checkOption(){return!1}}Ice.EndpointI=e}(),function(){class e{constructor(e,t,n,i){this._instance=e,this._queue=t,this._outAsync=n}run(){this._outAsync.retry(),this._queue.remove(this)}destroy(){try{this._outAsync.abort(new Ice.CommunicatorDestroyedException)}catch(e){}}asyncRequestCanceled(e,t){this._queue.cancel(this)&&(this._instance.traceLevels().retry>=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;e<t[5].length;++e){const i=n(t[5][e]);i.pos=e,r.push(i),i.tag&&o.push(i)}o.sort((e,t)=>e.tag-t.tag),i.inParams=r,i.inParamsOpt=o;const c=[],a=[];if(t[6]){const e=s?1:0;for(let i=0;i<t[6].length;++i){const s=n(t[6][i]);s.pos=i+e,c.push(s),s.tag&&a.push(s)}}s&&s.tag&&a.push(s),a.sort((e,t)=>e.tag-t.tag),i.outParams=c,i.outParamsOpt=a;const h=[];if(t[7])for(let e=0;e<t[7].length;++e)h.push(t[7][e]);return i.exceptions=h,i.sendsClasses=!0===t[8],i.returnsClasses=!0===t[9],i}class s{constructor(e){this.raw=e,this.parsed={}}find(e){let t=this.parsed[e];return void 0===t&&void 0!==this.raw[e]&&(t=i(e,this.raw[e]),this.parsed[e]=t),t}}function r(e,t,n,i,s,r,o){const c=(t,n)=>{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;e<n.length;++e)n[e].tag||c(n[e],!1);t&&c(t,!1);for(let e=0;e<i.length;++e)c(i[e],!0);s&&e.readPendingValues()}function o(e,t,n,i,s,r){for(let n=0;n<i.length;++n){const s=i[n];s.tag||s.type.write(e,t[s.pos])}n&&n.type.write(e,t[n.pos]);for(let n=0;n<s.length;++n){const i=s[n];i.type.writeOptional(e,i.tag,t[i.pos])}r&&e.writePendingValues()}function c(e,t,n){let i;for(let s=0;void 0===i&&s<e.length;++s){const r=e[s];void 0===(i=r[t])&&(-1===n.indexOf(r)&&n.push(r),r._iceImplements&&(i=c(r._iceImplements,t,n)))}return i}const a="_iceD_";function h(e,t){const n=a+t;let i,s=e[n];if(void 0===s){i=[];let t=e;for(;t&&void 0===s;)t._iceImplements&&(s=c(t._iceImplements,n,i)),t=Object.getPrototypeOf(t);void 0!==s&&(e[n]=s)}if(void 0===s){let c,a;if(e._iceOps&&(c=e._iceOps.find(t)),void 0===c){let n=Object.getPrototypeOf(e);for(;void 0===c&&n;)n._iceOps&&void 0!==(c=n._iceOps.find(t))&&(a=n),n=Object.getPrototypeOf(n);for(let e=0;void 0===c&&e<i.length;++e){const n=i[e];n._iceOps&&void 0!==(c=n._iceOps.find(t))&&(a=n)}}void 0!==c&&(s=function(e,t,n){return function(e,t,n,i){const s=e[t.servantMethod];if(void 0===s||"function"!=typeof s)throw new Ice.UnknownException("servant for identity "+i.adapter.getCommunicator().identityToString(i.id)+" does not define operation `"+t.servantMethod+"'");const c=[];0===t.inParams.length?n.readEmptyParams():(r(n.startReadParams(),void 0,t.inParams,t.inParamsOpt,t.sendsClasses,c,0),n.endReadParams());c.push(i),n.setFormat(t.format);const a=function(e){const i=t.outParams.length+(t.returns?1:0);if(i>1&&!(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;e<c.inParams.length;++e){const n=c.inParams[e],i=t[n.pos];if(!(n.tag&&void 0===i||"function"!=typeof n.type.validate||n.type.validate(i)))throw new Ice.MarshalException("invalid value for argument "+(e+1)+" in operation `"+c.servantMethod+"'")}o(e,t,void 0,c.inParams,c.inParamsOpt,c.sendsClasses)});let h=null;return(c.returns||c.outParams.length>0)&&(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._port<e._port?-1:e._port<this._port?1:this._host!=e._host?this._host<e._host?-1:1:this._sourceAddr!=e._sourceAddr?this._sourceAddr<e._sourceAddr?-1:1:this._connectionId!=e._connectionId?this._connectionId<e._connectionId?-1:1:0:this.type()<e.type()?-1:1}getAddress(){return new e(this._host,this._port)}toConnectorString(){return this._host+":"+this._port}streamWriteImpl(e){e.writeString(this._host),e.writeInt(this._port)}hashInit(e){return e=t.addNumber(e,this.type()),e=t.addString(e,this._host),e=t.addNumber(e,this._port),e=t.addString(e,this._sourceAddr),e=t.addString(e,this._connectionId)}fillEndpointInfo(e){e.type=()=>this.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}isFinished(){return this._state===P&&0===this._dispatchCount&&(c.assert(this._state===P),!0)}throwException(){if(null!==this._exception)throw c.assert(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._state<C),this._transceiver.checkSendSize(s),e.cancelable(this),t?((i=this._nextRequestId++)<=0&&(this._nextRequestId=1,i=this._nextRequestId++),s.pos=d.headerSize,s.writeInt(i)):n>0&&(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;n<this._sendStreams.length;n++){const i=this._sendStreams[n];if(i.outAsync===e)return i.requestId>0&&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(e<d.headerSize)throw new Ice.IllegalMessageSizeException;this._readStream.pos=0;const t=this._readStream.readByte(),n=this._readStream.readByte(),i=this._readStream.readByte(),s=this._readStream.readByte();if(t!==d.magic[0]||n!==d.magic[1]||i!==d.magic[2]||s!==d.magic[3])throw new Ice.BadMagicException("",new Uint8Array([t,n,i,s]));this._readProtocol._read(this._readStream),d.checkSupportedProtocol(this._readProtocol),this._readProtocolEncoding._read(this._readStream),d.checkSupportedProtocolEncoding(this._readProtocolEncoding),this._readStream.readByte(),this._readStream.readByte();const r=this._readStream.readInt();if(r<d.headerSize)throw new Ice.IllegalMessageSizeException;r>this._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;e<this._sendStreams.length;++e){const t=this._sendStreams[e];t.requestId>0&&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<C?this.setState(M,new Ice.TimeoutException):this._state===C&&this.setState(M,new Ice.CloseTimeoutException)}type(){return this._type}timeout(){return this._endpoint.timeout()}getInfo(){if(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._state<M),c.assert(!t.prepared);const n=t.stream;return n.pos=10,n.writeInt(n.size),n.prepareWrite(),t.prepared=!0,g.traceSend(n,this._logger,this._traceLevels),this.write(n.buffer)?(t.sent(),this._acmLastActivity>0&&(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._state<M);let e=new k(this._instance);this._readStream.swap(e.stream),this._readStream.resize(d.headerSize),this._readStream.pos=0,this._readHeader=!0,c.assert(e.stream.pos===e.stream.size);try{e.stream.pos=8;const t=e.stream.readByte();if(2===e.stream.readByte())throw new Ice.FeatureNotSupportedException("Cannot uncompress compressed message");switch(e.stream.pos=d.headerSize,t){case d.closeConnectionMsg:g.traceRecv(e.stream,this._logger,this._traceLevels),this._endpoint.datagram()?this._warn&&this._logger.warning("ignoring close connection message for datagram connection:\n"+this._desc):this.setState(M,new Ice.CloseConnectionException);break;case d.requestMsg:this._state===C?g.traceIn("received request during closing\n(ignored by server, client will retry)",e.stream,this._logger,this._traceLevels):(g.traceRecv(e.stream,this._logger,this._traceLevels),e.requestId=e.stream.readInt(),e.invokeNum=1,e.servantManager=this._servantManager,e.adapter=this._adapter,++this._dispatchCount);break;case d.requestBatchMsg:if(this._state===C)g.traceIn("received batch request during closing\n(ignored by server, client will retry)",e.stream,this._logger,this._traceLevels);else{if(g.traceRecv(e.stream,this._logger,this._traceLevels),e.invokeNum=e.stream.readInt(),e.invokeNum<0)throw e.invokeNum=0,new Ice.UnmarshalOutOfBoundsException;e.servantManager=this._servantManager,e.adapter=this._adapter,this._dispatchCount+=e.invokeNum}break;case d.replyMsg:g.traceRecv(e.stream,this._logger,this._traceLevels),e.requestId=e.stream.readInt(),e.outAsync=this._asyncRequests.get(e.requestId),e.outAsync?(this._asyncRequests.delete(e.requestId),++this._dispatchCount):e=null,this.checkClose();break;case d.validateConnectionMsg:g.traceRecv(e.stream,this._logger,this._traceLevels),null!==this._heartbeatCallback&&(e.heartbeatCallback=this._heartbeatCallback,++this._dispatchCount);break;default:throw g.traceIn("received unknown message\n(invalid, closing connection)",e.stream,this._logger,this._traceLevels),new Ice.UnknownMessageException}}catch(e){if(!(e instanceof Ice.LocalException))throw e;this._endpoint.datagram()?this._warn&&this._logger.warning("datagram connection exception:\n"+e+"\n"+this._desc):this.setState(M,e)}return e}invokeAll(e,t,n,i,s){try{for(;t>0;){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._state<v){const e=this._instance.defaultsAndOverrides();t=e.overrideConnectTimeout?e.overrideConnectTimeoutValue:this._endpoint.timeout()}else if(this._state<C)this._readHeader&&(e&=~p.Read),t=this._endpoint.timeout();else{const e=this._instance.defaultsAndOverrides();t=e.overrideCloseTimeout?e.overrideCloseTimeoutValue:this._endpoint.timeout()}t<0||(0!=(e&p.Read)&&(this._readTimeoutScheduled&&this._timer.cancel(this._readTimeoutId),this._readTimeoutId=this._timer.schedule(()=>this.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._state<b||this._dispatchCount>0||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<this._rawBytes.length;t++)if(this._rawBytes[t]!==e._rawBytes[t])return!1;return!0}compareTo(e){if(this===e)return 0;if(null===e)return 1;if(!(e instanceof r))return this.type()<e.type()?-1:1;if(this._type<e._type)return-1;if(e._type<this._type)return 1;if(this._rawEncoding.major<e._rawEncoding.major)return-1;if(e._rawEncoding.major<this._rawEncoding.major)return 1;if(this._rawEncoding.minor<e._rawEncoding.minor)return-1;if(e._rawEncoding.minor<this._rawEncoding.minor)return 1;if(this._rawBytes.length<e._rawBytes.length)return-1;if(e._rawBytes.length<this._rawBytes.length)return 1;for(let t=0;t<this._rawBytes.length;t++){if(this._rawBytes[t]<e._rawBytes[t])return-1;if(e._rawBytes[t]<this._rawBytes[t])return 1}return 0}checkOption(t,n,r){switch(t.charAt(1)){case"t":{if(this._type>-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<n.length;++t)if(!e.isBase64(n.charAt(t)))throw new s("invalid base64 character `"+n.charAt(t)+"' (ordinal "+n.charCodeAt(t)+") in endpoint "+r);return this._rawBytes=e.decode(n),!0;case"e":if(null===n)throw new s("no argument provided for -e option in endpoint "+r);try{this._rawEncoding=Ice.stringToEncodingVersion(n)}catch(e){throw new s("invalid encoding version `"+n+"' in endpoint "+r+":\n"+e.str)}return!0;default:return!1}}initWithOptions(e){if(super.initWithOptions(e),t.assert(this._rawEncoding),this._type<0)throw new s("no -t option in endpoint `"+this+"'");if(null===this._rawBytes||0===this._rawBytes.length)throw new s("no -v option in endpoint `"+this+"'")}initWithStream(e){this._rawEncoding=e.getEncoding(),this._rawBytes=e.readBlob(e.getEncapsulationSize())}}class o extends Ice.OpaqueEndpointInfo{constructor(e,t,n,i,s){super(-1,!1,n,i),this._type=s}type(){return this._type}datagram(){return!1}secure(){return!1}}Ice.OpaqueEndpointI=r}(),function(){Ice.AdapterNotFoundException=class extends Ice.UserException{constructor(e=""){super(e)}static get _parent(){return Ice.UserException}static get _id(){return"::Ice::AdapterNotFoundException"}_mostDerivedType(){return Ice.AdapterNotFoundException}},Ice.InvalidReplicaGroupIdException=class extends Ice.UserException{constructor(e=""){super(e)}static get _parent(){return Ice.UserException}static get _id(){return"::Ice::InvalidReplicaGroupIdException"}_mostDerivedType(){return Ice.InvalidReplicaGroupIdException}},Ice.AdapterAlreadyActiveException=class extends Ice.UserException{constructor(e=""){super(e)}static get _parent(){return Ice.UserException}static get _id(){return"::Ice::AdapterAlreadyActiveException"}_mostDerivedType(){return Ice.AdapterAlreadyActiveException}},Ice.ObjectNotFoundException=class extends Ice.UserException{constructor(e=""){super(e)}static get _parent(){return Ice.UserException}static get _id(){return"::Ice::ObjectNotFoundException"}_mostDerivedType(){return Ice.ObjectNotFoundException}},Ice.ServerNotFoundException=class extends Ice.UserException{constructor(e=""){super(e)}static get _parent(){return Ice.UserException}static get _id(){return"::Ice::ServerNotFoundException"}_mostDerivedType(){return Ice.ServerNotFoundException}};Ice.Locator=class extends Ice.Object{},Ice.LocatorPrx=class extends Ice.ObjectPrx{},n.defineOperations(Ice.Locator,Ice.LocatorPrx,["::Ice::Locator","::Ice::Object"],0,{findObjectById:[,2,1,,[9],[[Ice.Identity]],,[Ice.ObjectNotFoundException],,],findAdapterById:[,2,1,,[9],[[7]],,[Ice.AdapterNotFoundException],,],getRegistry:[,2,1,,["Ice.LocatorRegistryPrx"],,,,,]});Ice.LocatorRegistry=class extends Ice.Object{},Ice.LocatorRegistryPrx=class extends Ice.ObjectPrx{},n.defineOperations(Ice.LocatorRegistry,Ice.LocatorRegistryPrx,["::Ice::LocatorRegistry","::Ice::Object"],0,{setAdapterDirectProxy:[,2,2,,,[[7],[9]],,[Ice.AdapterAlreadyActiveException,Ice.AdapterNotFoundException],,],setReplicatedAdapterDirectProxy:[,2,2,,,[[7],[7],[9]],,[Ice.AdapterAlreadyActiveException,Ice.AdapterNotFoundException,Ice.InvalidReplicaGroupIdException],,],setServerProcessProxy:[,2,2,,,[[7],["Ice.ProcessPrx"]],,[Ice.ServerNotFoundException],,]});Ice.LocatorFinder=class extends Ice.Object{},Ice.LocatorFinderPrx=class extends Ice.ObjectPrx{},n.defineOperations(Ice.LocatorFinder,Ice.LocatorFinderPrx,["::Ice::LocatorFinder","::Ice::Object"],0,{getLocator:[,,,,["Ice.LocatorPrx"],,,,,]})}(),function(){const e=Ice.AlreadyRegisteredException;Ice.ValueFactoryManagerI=class{constructor(){this._factoryMap=new Map}add(t,n){if(this._factoryMap.has(n))throw new e("value factory",n);this._factoryMap.set(n,t)}find(e){return this._factoryMap.get(e)}destroy(){this._factoryMap=new Map}}}(),IceSSL.ConnectionInfo=class extends Ice.ConnectionInfo{constructor(e,t,n,i,s="",r=null,o=!1){super(e,t,n,i),this.cipher=s,this.certs=r,this.verified=o}},n.defineDictionary(Ice,"FacetMap","FacetMapHelper","Ice.StringHelper","Ice.ObjectHelper",!1,void 0,"Ice.Value"),function(){const e=Ice._ModuleRegistry.module("IceSSL"),t=-1===navigator.userAgent.indexOf("Edge/")&&-1!==navigator.userAgent.indexOf("Chrome/"),n=/^((?!chrome).)*safari/i.test(navigator.userAgent),i=Ice.Debug,s=Ice.SocketOperation,r=Ice.Timer,o=0,c=1,a=2,h=3,l=4;class u{constructor(e){this._readBuffers=[],this._readPosition=0,this._maxSendPacketSize=e.properties().getPropertyAsIntWithDefault("Ice.TCP.SndSize",524288),this._writeReadyTimeout=0}writeReadyTimeout(){const e=Math.round(this._writeReadyTimeout);return this._writeReadyTimeout+=this._writeReadyTimeout>=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 = <not available>\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<a?this._connectedCallback():this._registered&&this._bytesAvailableCallback()):this.close()}static createOutgoing(e,t,n,i){const s=new u(e);let r=t?"wss":"ws";return r+="://"+n.host,80!==n.port&&(r+=":"+n.port),r+=i||"/",s._url=r,s._fd=null,s._addr=n,s._desc="local address = <not available>\nremote address = "+n.host+":"+n.port,s._state=o,s._secure=t,s._exception=null,s}}function d(e,t){return e<a?new Ice.ConnectFailedException(t.code,t):1e3===t.code||1006===t.code?new Ice.ConnectionLostException:new Ice.SocketException(t.code,t)}Ice.WSTransceiver=u}(),function(){const e=Ice.AsyncResultBase,t=Ice.ConnectionI,n=Ice.Debug,i=Ice.HashMap,s=Ice.FactoryACMMonitor;Ice.OutgoingConnectionFactory=class{constructor(e,t){this._communicator=e,this._instance=t,this._destroyed=!1,this._monitor=new s(this._instance,this._instance.clientACM()),this._connectionsByEndpoint=new r,this._pending=new i(i.compareEquals),this._pendingConnectCount=0,this._waitPromise=null}destroy(){this._destroyed||(this._connectionsByEndpoint.forEach(e=>e.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<e.length;++t){const n=e[t];if(this._pending.has(n))continue;const i=this._connectionsByEndpoint.get(n);if(void 0!==i)for(let e=0;e<i.length;++e)if(i[e].isActiveOrHolding())return i[e]}return null}incPendingConnectCount(){if(this._destroyed)throw new Ice.CommunicatorDestroyedException;++this._pendingConnectCount}decPendingConnectCount(){--this._pendingConnectCount,n.assert(this._pendingConnectCount>=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<this._endpoints.length),this._current=this._endpoints[this._index++],t.network>=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._index<this._endpoints.length),e instanceof Ice.CommunicatorDestroyedException)this._factory.finishGetConnectionEx(this._endpoints,e,this);else{if(this._index<this._endpoints.length)return!0;this._factory.finishGetConnectionEx(this._endpoints,e,this)}else this._factory.finishGetConnectionEx(this._endpoints,e,this);return!1}}}(),function(){const e=Ice.Debug,t=Ice.HashUtil,n=Ice.StringUtil,i=void 0!==Ice.TcpTransceiver?Ice.TcpTransceiver:null;class s extends Ice.IPEndpointI{constructor(e,t,n,i,s,r,o){super(e,t,n,i,r),this._timeout=void 0===s?e?e.defaultTimeout():void 0:s,this._compress=void 0!==o&&o}getInfo(){const e=new Ice.TCPEndpointInfo;return this.fillEndpointInfo(e),this.secure()?new IceSSL.EndpointInfo(e,e.timeout,e.compress):e}timeout(){return this._timeout}changeTimeout(e){return e===this._timeout?this:new s(this._instance,this._host,this._port,this._sourceAddr,e,this._connectionId,this._compress)}changeConnectionId(e){return e===this._connectionId?this:new s(this._instance,this._host,this._port,this._sourceAddr,this._timeout,e,this._compress)}compress(){return this._compress}changeCompress(e){return e===this._compress?this:new s(this._instance,this._host,this._port,this._sourceAddr,this._timeout,this._connectionId,e)}datagram(){return!1}connectable(){return null!==i&&!this.secure()}connect(){return e.assert(!this.secure()),i.createOutgoing(this._instance,this.getAddress(),this._sourceAddr)}options(){let e=super.options();return-1==this._timeout?e+=" -t infinite":e+=" -t "+this._timeout,this._compress&&(e+=" -z"),e}compareTo(e){return this===e?0:null===e?1:e instanceof s?this._timeout<e._timeout?-1:e._timeout<this._timeout?1:!this._compress&&e._compress?-1:!e._compress&&this._compress?1:super.compareTo(e):this.type()<e.type()?-1:1}streamWriteImpl(e){super.streamWriteImpl(e),e.writeInt(this._timeout),e.writeBool(this._compress)}hashInit(e){return e=super.hashInit(e),e=t.addNumber(e,this._timeout),e=t.addBoolean(e,this._compress)}fillEndpointInfo(e){super.fillEndpointInfo(e),e.timeout=this._timeout,e.compress=this._compress}initWithStream(e){super.initWithStream(e),this._timeout=e.readInt(),this._compress=e.readBool()}checkOption(e,t,i){if(super.checkOption(e,t,i))return!0;if("-t"===e){if(null===t)throw new Ice.EndpointParseException("no argument provided for -t option in endpoint "+i);if("infinite"==t)this._timeout=-1;else{let e=!1;try{this._timeout=n.toInt(t)}catch(t){e=!0}if(e||this._timeout<1)throw new Ice.EndpointParseException("invalid timeout value `"+t+"' in endpoint "+i)}}else{if("-z"!==e)return!1;if(null!==t)throw new Ice.EndpointParseException("unexpected argument `"+t+"' provided for -z option in "+i);this._compress=!0}return!0}createEndpoint(e,t,n){return new s(this._instance,e,t,this._sourceAddr,this._timeout,n,this._compress)}}Ice.TcpEndpointI=s}(),function(){const e=Ice.ArrayUtil,t=Ice.Debug,n=Ice.BatchRequestQueue,i=Ice.HashUtil,s=Ice.OpaqueEndpointI,r=Ice.ReferenceMode,o=Ice.StringUtil,c=Ice.StringSeqHelper,a=Ice.EndpointSelectionType,h=Ice.Identity,l=Ice.RouterPrx,u=Ice.LocatorPrx,d=Ice.PropertyNames,p=Ice.ConnectionRequestHandler,_=Ice.MapUtil,g=["EndpointSelection","ConnectionCached","PreferSecure","EncodingVersion","LocatorCacheTimeout","InvocationTimeout","Locator","Router","CollocationOptimized"];class I{constructor(e,t){this._instance=e,this._communicator=t,this._defaultRouter=null,this._defaultLocator=null}create(e,t,n,i){return 0===e.name.length&&0===e.category.length?null:this.createImpl(e,t,n.getMode(),n.getSecure(),n.getProtocol(),n.getEncoding(),i,null,null)}createWithAdapterId(e,t,n,i){return 0===e.name.length&&0===e.category.length?null:this.createImpl(e,t,n.getMode(),n.getSecure(),n.getProtocol(),n.getEncoding(),null,i,null)}createFixed(e,t){return 0===e.name.length&&0===e.category.length?null:new m(this._instance,this._communicator,e,"",t.endpoint().datagram()?r.ModeDatagram:r.ModeTwoway,t.endpoint().secure(),Ice.Protocol_1_0,this._instance.defaultsAndOverrides().defaultEncoding,t,-1,null)}copy(e){const t=e.getIdentity();return 0===t.name.length&&0===t.category.length?null:e.clone()}createFromString(e,n){if(null==e||0===e.length)return null;const i=" \t\n\r";let s=0,c=o.findFirstNotOf(e,i,s);if(-1==c)throw new Ice.ProxyParseException("no non-whitespace characters found in `"+e+"'");let a=null;if(-1===(s=o.checkQuote(e,c)))throw new Ice.ProxyParseException("mismatched quotes around identity in `"+e+"'");if(0===s?(-1===(s=o.findFirstOf(e,i+":@",c))&&(s=e.length),a=e.substring(c,s)):(c++,a=e.substring(c,s),s++),c===s)throw new Ice.ProxyParseException("no identity in `"+e+"'");const h=Ice.stringToIdentity(a);if(0===h.name.length){if(h.category.length>0)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;s<e.length&&":"==e.charAt(s);){for(s=c=s+1;;){if(-1==(s=e.indexOf(":",s))){s=e.length;break}{let t=!1,n=c;for(;!(-1==(n=e.indexOf('"',n))||s<n)&&-1!=(n=e.indexOf('"',++n));){if(s<n){t=!0;break}++n}if(!t)break;++s}}const t=e.substring(c,s),n=this._instance.endpointFactoryManager().create(t,!1);null!==n?I.push(n):i.push(t)}if(0===I.length)throw t.assert(i.length>0),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<d;e++)l[e]=this._instance.endpointFactoryManager().read(t)}else u=t.readString();return this.createImpl(e,i,s,o,a,h,l,u,null)}setDefaultRouter(e){if(null===this._defaultRouter?null===e:this._defaultRouter.equals(e))return this;const t=new I(this._instance,this._communicator);return t._defaultLocator=this._defaultLocator,t._defaultRouter=e,t}getDefaultRouter(){return this._defaultRouter}setDefaultLocator(e){if(null===this._defaultLocator?null===e:this._defaultLocator.equals(e))return this;const t=new I(this._instance,this._communicator);return t._defaultRouter=this._defaultRouter,t._defaultLocator=e,t}getDefaultLocator(){return this._defaultLocator}checkForUnknownProperties(e){let t=[];for(let t=0;t<d.clPropNames.length;++t)if(0===e.indexOf(d.clPropNames[t]+"."))return;const n=this._instance.initializationData().properties.getPropertiesForPrefix(e+".");if((t=t.concat(Array.from(n.keys()).filter(t=>!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.length;++t)e[t]=e[t].changeConnectionId(this._connectionId),this._overrideTimeout&&(e[t]=e[t].changeTimeout(this._timeout))}filterEndpoints(n){let i=n.filter(e=>!(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()<e.type()?-1:1;const t=this._delegate.compareTo(e._delegate);return 0!==t?t:this._resource!==e._resource?this._resource<e._resource?-1:1:0}options(){let e=this._delegate.options();return null!==this._resource&&this._resource.length>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;e<t.length;e++){let i;try{i=n.toInt(t[e])}catch(e){i=0}if(0===e&&-1===i)break;this._retryIntervals[e]=i>0?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;t<n;++t)if(this._factories[t].protocol()===l){const n=this._factories[t].create(h,c);if(h.length>0)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;e<i;++e)if(this._factories[e].type()==o.type()){const i=new n(this._instance,r.currentProtocolEncoding);i.writeShort(o.type()),o.streamWrite(i);const s=new t(this._instance,r.currentProtocolEncoding,i.buffer);s.pos=0,s.readShort(),s.startEncapsulation();const c=this._factories[e].read(s);return s.endEncapsulation(),c}return o}return null}read(e){const t=e.readShort(),n=this.get(t);let i=null;return e.startEncapsulation(),n&&(i=n.read(e)),i||(i=new s(t)).initWithStream(e),e.endEncapsulation(),i}destroy(){this._factories.forEach(e=>e.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<n.length;++e)this._table.removeObjectReference(n[e].getIdentity());t.isWellKnown()?(null===i||i._getReference().isWellKnown()?s&&this._table.removeObjectReference(t.getIdentity()):this._table.addObjectReference(t.getIdentity(),i._getReference()),e.assert(this._objectRequests.has(t.getIdentity())),this._objectRequests.delete(t.getIdentity())):(null===i||i._getReference().isIndirect()?s&&this._table.removeAdapterEndpoints(t.getAdapterId()):this._table.addAdapterEndpoints(t.getAdapterId(),i._getReference().getEndpoints()),e.assert(this._adapterRequests.has(t.getAdapterId())),this._adapterRequests.delete(t.getAdapterId()))}}Ice.LocatorInfo=s;class r{constructor(e,t,n){this._ref=e,this._ttl=t,this._promise=n}response(e,n){let i=null;if(null!==n){const s=n._getReference();if(this._ref.isWellKnown()&&!t.isSupported(this._ref.getEncoding(),s.getEncoding()));else if(s.isIndirect()){if(this._ref.isWellKnown()&&!s.isWellKnown())return this._ref.getInstance().traceLevels().location>=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;t<this._callbacks.length;++t)this._callbacks[t].response(this._locatorInfo,e)}exception(e){this._locatorInfo.finishRequest(this._ref,this._wellKnownRefs,null,e instanceof Ice.UserException),this._exception=e;for(let t=0;t<this._callbacks.length;++t)this._callbacks[t].exception(this._locatorInfo,e)}}class c extends o{constructor(t,n){super(t,n),e.assert(n.isWellKnown())}send(){try{this._locatorInfo.getLocator().findObjectById(this._ref.getIdentity()).then(e=>this.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&&(this.setState(d),this._instance.outgoingConnectionFactory().removeAdapter(this)),t.resolve(),t}waitForDeactivate(){const t=new e(this._communicator,"waitForDeactivate",null,null,this);return this.waitState(d,t),t}isDeactivated(){return this._state>=d}destroy(){return this.deactivate().then(()=>{this._state<p&&(this.setState(p),this._servantManager.destroy(),this._objectAdapterFactory.removeObjectAdapter(this),this._publishedEndpoints=[]);const t=new e(this._communicator,"destroy",null,null,this);return t.resolve(),t})}add(e,t){return this.addFacet(e,t,"")}addFacet(e,t,n){this.checkForDeactivation(),this.checkIdentity(t),this.checkServant(e);const i=t.clone();return this._servantManager.addServant(e,i,n),this.newProxy(i,n)}addWithUUID(e){return this.addFacetWithUUID(e,"")}addFacetWithUUID(e,t){return this.addFacet(e,new n(Ice.generateUUID(),""),t)}addDefaultServant(e,t){this.checkServant(e),this.checkForDeactivation(),this._servantManager.addDefaultServant(e,t)}remove(e){return this.removeFacet(e,"")}removeFacet(e,t){return this.checkForDeactivation(),this.checkIdentity(e),this._servantManager.removeServant(e,t)}removeAllFacets(e){return this.checkForDeactivation(),this.checkIdentity(e),this._servantManager.removeAllFacets(e)}removeDefaultServant(e){return this.checkForDeactivation(),this._servantManager.removeDefaultServant(e)}find(e){return this.findFacet(e,"")}findFacet(e,t){return this.checkForDeactivation(),this.checkIdentity(e),this._servantManager.findServant(e,t)}findAllFacets(e){return this.checkForDeactivation(),this.checkIdentity(e),this._servantManager.findAllFacets(e)}findByProxy(e){this.checkForDeactivation();const t=e._getReference();return this.findFacet(t.getIdentity(),t.getFacet())}findDefaultServant(e){return this.checkForDeactivation(),this._servantManager.findDefaultServant(e)}addServantLocator(e,t){this.checkForDeactivation(),this._servantManager.addServantLocator(e,t)}removeServantLocator(e){return this.checkForDeactivation(),this._servantManager.removeServantLocator(e)}findServantLocator(e){return this.checkForDeactivation(),this._servantManager.findServantLocator(e)}createProxy(e){return this.checkForDeactivation(),this.checkIdentity(e),this.newProxy(e,"")}createDirectProxy(e){return this.createProxy(e)}createIndirectProxy(e){throw new Ice.FeatureNotSupportedException("createIndirectProxy not supported")}setLocator(e){throw new Ice.FeatureNotSupportedException("setLocator not supported")}getEndpoints(){return[]}refreshPublishedEndpoints(){return this.checkForDeactivation(),this.computePublishedEndpoints().then(e=>{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<n.length;){if(-1===(s=r.findFirstNotOf(n,i,o))){if(""!=n)throw new Ice.EndpointParseException("invalid empty object adapter endpoint");break}for(o=s;;){if(-1==(o=n.indexOf(":",o))){o=n.length;break}{let e=!1,t=s;for(;!(-1==(t=n.indexOf('"',t))||o<t)&&-1!=(t=n.indexOf('"',++t));){if(o<t){e=!0;break}++t}if(!e)break;++o}}const e=n.substring(s,o),c=this._instance.endpointFactoryManager().create(e,!1);if(null===c)throw new Ice.EndpointParseException("invalid object adapter endpoint `"+n+"'");t.push(c)}e=Ice.Promise.resolve(t)}return e.then(e=>{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<i.clPropNames.length;++e)if(0===n.indexOf(i.clPropNames[e]+".")){t=!1;break}let s=!0;const r=this._instance.initializationData().properties.getPropertiesForPrefix(n);for(const i of r.keys()){let r=!1;for(let e=0;e<a.length;++e)if(i===n+a[e]){s=!1,r=!0;break}!r&&t&&e.push(i)}return s}setState(e){if(this._state===e)return;this._state=e;let t=[];(e<d?[e]:[l,d]).forEach(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._state<d&&(e===l&&this._state!==l||e===d)?this._statePromises[e]?this._statePromises[e].push(t):this._statePromises[e]=[t]:t.resolve()}}}(),function(){const e=Ice.ObjectAdapterI,t=Ice.Promise;Ice.ObjectAdapterFactory=class{constructor(e,n){this._instance=e,this._communicator=n,this._adapters=[],this._adapterNamesInUse=[],this._shutdownPromise=new t}shutdown(){return null===this._instance?this._shutdownPromise:(this._instance=null,this._communicator=null,t.all(this._adapters.map(e=>e.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}(); |