diff --git a/examples/realtime-video/dist/assets/index-780c2a2a.js b/examples/realtime-video/dist/assets/index-780c2a2a.js new file mode 100644 index 00000000..a0683e0e --- /dev/null +++ b/examples/realtime-video/dist/assets/index-780c2a2a.js @@ -0,0 +1,265 @@ +var Jy=Object.defineProperty;var Ny=(o,s,_)=>s in o?Jy(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_;var Xn=(o,s,_)=>(Ny(o,typeof s!="symbol"?s+"":s,_),_);function _mergeNamespaces(o,s){for(var _=0;_j[$]})}}}return Object.freeze(Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}))}(function(){const s=document.createElement("link").relList;if(s&&s.supports&&s.supports("modulepreload"))return;for(const $ of document.querySelectorAll('link[rel="modulepreload"]'))j($);new MutationObserver($=>{for(const _e of $)if(_e.type==="childList")for(const et of _e.addedNodes)et.tagName==="LINK"&&et.rel==="modulepreload"&&j(et)}).observe(document,{childList:!0,subtree:!0});function _($){const _e={};return $.integrity&&(_e.integrity=$.integrity),$.referrerPolicy&&(_e.referrerPolicy=$.referrerPolicy),$.crossOrigin==="use-credentials"?_e.credentials="include":$.crossOrigin==="anonymous"?_e.credentials="omit":_e.credentials="same-origin",_e}function j($){if($.ep)return;$.ep=!0;const _e=_($);fetch($.href,_e)}})();var commonjsGlobal$1=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};function getDefaultExportFromCjs$1(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var jsxRuntimeExports={},jsxRuntime={get exports(){return jsxRuntimeExports},set exports(o){jsxRuntimeExports=o}},reactJsxRuntime_production_min={},reactExports={},react={get exports(){return reactExports},set exports(o){reactExports=o}},react_production_min={};/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var l$2=Symbol.for("react.element"),n$2=Symbol.for("react.portal"),p$3=Symbol.for("react.fragment"),q$2=Symbol.for("react.strict_mode"),r$2=Symbol.for("react.profiler"),t$1=Symbol.for("react.provider"),u=Symbol.for("react.context"),v$2=Symbol.for("react.forward_ref"),w$1=Symbol.for("react.suspense"),x$1=Symbol.for("react.memo"),y$1=Symbol.for("react.lazy"),z$2=Symbol.iterator;function A$2(o){return o===null||typeof o!="object"?null:(o=z$2&&o[z$2]||o["@@iterator"],typeof o=="function"?o:null)}var B$1={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C$1=Object.assign,D$1={};function E$1(o,s,_){this.props=o,this.context=s,this.refs=D$1,this.updater=_||B$1}E$1.prototype.isReactComponent={};E$1.prototype.setState=function(o,s){if(typeof o!="object"&&typeof o!="function"&&o!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,o,s,"setState")};E$1.prototype.forceUpdate=function(o){this.updater.enqueueForceUpdate(this,o,"forceUpdate")};function F(){}F.prototype=E$1.prototype;function G$1(o,s,_){this.props=o,this.context=s,this.refs=D$1,this.updater=_||B$1}var H$1=G$1.prototype=new F;H$1.constructor=G$1;C$1(H$1,E$1.prototype);H$1.isPureReactComponent=!0;var I$1=Array.isArray,J=Object.prototype.hasOwnProperty,K$1={current:null},L$1={key:!0,ref:!0,__self:!0,__source:!0};function M$1(o,s,_){var j,$={},_e=null,et=null;if(s!=null)for(j in s.ref!==void 0&&(et=s.ref),s.key!==void 0&&(_e=""+s.key),s)J.call(s,j)&&!L$1.hasOwnProperty(j)&&($[j]=s[j]);var tt=arguments.length-2;if(tt===1)$.children=_;else if(1>>1,qt=Pt[zt];if(0<$(qt,Yt))Pt[zt]=Yt,Pt[Mt]=qt,Mt=zt;else break e}}function _(Pt){return Pt.length===0?null:Pt[0]}function j(Pt){if(Pt.length===0)return null;var Yt=Pt[0],Mt=Pt.pop();if(Mt!==Yt){Pt[0]=Mt;e:for(var zt=0,qt=Pt.length,Xt=qt>>>1;zt$(It,Mt))$t$(un,It)?(Pt[zt]=un,Pt[$t]=Mt,zt=$t):(Pt[zt]=It,Pt[xt]=Mt,zt=xt);else if($t$(un,Mt))Pt[zt]=un,Pt[$t]=Mt,zt=$t;else break e}}return Yt}function $(Pt,Yt){var Mt=Pt.sortIndex-Yt.sortIndex;return Mt!==0?Mt:Pt.id-Yt.id}if(typeof performance=="object"&&typeof performance.now=="function"){var _e=performance;o.unstable_now=function(){return _e.now()}}else{var et=Date,tt=et.now();o.unstable_now=function(){return et.now()-tt}}var nt=[],rt=[],it=1,st=null,ut=3,Ft=!1,dt=!1,gt=!1,Ut=typeof setTimeout=="function"?setTimeout:null,ht=typeof clearTimeout=="function"?clearTimeout:null,ft=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function pt(Pt){for(var Yt=_(rt);Yt!==null;){if(Yt.callback===null)j(rt);else if(Yt.startTime<=Pt)j(rt),Yt.sortIndex=Yt.expirationTime,s(nt,Yt);else break;Yt=_(rt)}}function Rt(Pt){if(gt=!1,pt(Pt),!dt)if(_(nt)!==null)dt=!0,Et(Qt);else{var Yt=_(rt);Yt!==null&&Jt(Rt,Yt.startTime-Pt)}}function Qt(Pt,Yt){dt=!1,gt&&(gt=!1,ht(kt),kt=-1),Ft=!0;var Mt=ut;try{for(pt(Yt),st=_(nt);st!==null&&(!(st.expirationTime>Yt)||Pt&&!vt());){var zt=st.callback;if(typeof zt=="function"){st.callback=null,ut=st.priorityLevel;var qt=zt(st.expirationTime<=Yt);Yt=o.unstable_now(),typeof qt=="function"?st.callback=qt:st===_(nt)&&j(nt),pt(Yt)}else j(nt);st=_(nt)}if(st!==null)var Xt=!0;else{var xt=_(rt);xt!==null&&Jt(Rt,xt.startTime-Yt),Xt=!1}return Xt}finally{st=null,ut=Mt,Ft=!1}}var Nt=!1,At=null,kt=-1,Bt=5,jt=-1;function vt(){return!(o.unstable_now()-jtPt||125zt?(Pt.sortIndex=Mt,s(rt,Pt),_(nt)===null&&Pt===_(rt)&&(gt?(ht(kt),kt=-1):gt=!0,Jt(Rt,Mt-zt))):(Pt.sortIndex=qt,s(nt,Pt),dt||Ft||(dt=!0,Et(Qt))),Pt},o.unstable_shouldYield=vt,o.unstable_wrapCallback=function(Pt){var Yt=ut;return function(){var Mt=ut;ut=Yt;try{return Pt.apply(this,arguments)}finally{ut=Mt}}}})(scheduler_production_min);(function(o){o.exports=scheduler_production_min})(scheduler);/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var aa=reactExports,ca=schedulerExports;function p$1(o){for(var s="https://reactjs.org/docs/error-decoder.html?invariant="+o,_=1;_"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ja=Object.prototype.hasOwnProperty,ka=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,la={},ma={};function oa(o){return ja.call(ma,o)?!0:ja.call(la,o)?!1:ka.test(o)?ma[o]=!0:(la[o]=!0,!1)}function pa(o,s,_,j){if(_!==null&&_.type===0)return!1;switch(typeof s){case"function":case"symbol":return!0;case"boolean":return j?!1:_!==null?!_.acceptsBooleans:(o=o.toLowerCase().slice(0,5),o!=="data-"&&o!=="aria-");default:return!1}}function qa(o,s,_,j){if(s===null||typeof s>"u"||pa(o,s,_,j))return!0;if(j)return!1;if(_!==null)switch(_.type){case 3:return!s;case 4:return s===!1;case 5:return isNaN(s);case 6:return isNaN(s)||1>s}return!1}function v$1(o,s,_,j,$,_e,et){this.acceptsBooleans=s===2||s===3||s===4,this.attributeName=j,this.attributeNamespace=$,this.mustUseProperty=_,this.propertyName=o,this.type=s,this.sanitizeURL=_e,this.removeEmptyString=et}var z$1={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(o){z$1[o]=new v$1(o,0,!1,o,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(o){var s=o[0];z$1[s]=new v$1(s,1,!1,o[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(o){z$1[o]=new v$1(o,2,!1,o.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(o){z$1[o]=new v$1(o,2,!1,o,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(o){z$1[o]=new v$1(o,3,!1,o.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(o){z$1[o]=new v$1(o,3,!0,o,null,!1,!1)});["capture","download"].forEach(function(o){z$1[o]=new v$1(o,4,!1,o,null,!1,!1)});["cols","rows","size","span"].forEach(function(o){z$1[o]=new v$1(o,6,!1,o,null,!1,!1)});["rowSpan","start"].forEach(function(o){z$1[o]=new v$1(o,5,!1,o.toLowerCase(),null,!1,!1)});var ra=/[\-:]([a-z])/g;function sa(o){return o[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(o){var s=o.replace(ra,sa);z$1[s]=new v$1(s,1,!1,o,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(o){var s=o.replace(ra,sa);z$1[s]=new v$1(s,1,!1,o,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(o){var s=o.replace(ra,sa);z$1[s]=new v$1(s,1,!1,o,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(o){z$1[o]=new v$1(o,1,!1,o.toLowerCase(),null,!1,!1)});z$1.xlinkHref=new v$1("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(o){z$1[o]=new v$1(o,1,!1,o.toLowerCase(),null,!0,!0)});function ta(o,s,_,j){var $=z$1.hasOwnProperty(s)?z$1[s]:null;($!==null?$.type!==0:j||!(2tt||$[et]!==_e[tt]){var nt=` +`+$[et].replace(" at new "," at ");return o.displayName&&nt.includes("")&&(nt=nt.replace("",o.displayName)),nt}while(1<=et&&0<=tt);break}}}finally{Na=!1,Error.prepareStackTrace=_}return(o=o?o.displayName||o.name:"")?Ma(o):""}function Pa(o){switch(o.tag){case 5:return Ma(o.type);case 16:return Ma("Lazy");case 13:return Ma("Suspense");case 19:return Ma("SuspenseList");case 0:case 2:case 15:return o=Oa(o.type,!1),o;case 11:return o=Oa(o.type.render,!1),o;case 1:return o=Oa(o.type,!0),o;default:return""}}function Qa(o){if(o==null)return null;if(typeof o=="function")return o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case ya:return"Fragment";case wa:return"Portal";case Aa:return"Profiler";case za:return"StrictMode";case Ea:return"Suspense";case Fa:return"SuspenseList"}if(typeof o=="object")switch(o.$$typeof){case Ca:return(o.displayName||"Context")+".Consumer";case Ba:return(o._context.displayName||"Context")+".Provider";case Da:var s=o.render;return o=o.displayName,o||(o=s.displayName||s.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case Ga:return s=o.displayName||null,s!==null?s:Qa(o.type)||"Memo";case Ha:s=o._payload,o=o._init;try{return Qa(o(s))}catch{}}return null}function Ra(o){var s=o.type;switch(o.tag){case 24:return"Cache";case 9:return(s.displayName||"Context")+".Consumer";case 10:return(s._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return o=s.render,o=o.displayName||o.name||"",s.displayName||(o!==""?"ForwardRef("+o+")":"ForwardRef");case 7:return"Fragment";case 5:return s;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Qa(s);case 8:return s===za?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof s=="function")return s.displayName||s.name||null;if(typeof s=="string")return s}return null}function Sa(o){switch(typeof o){case"boolean":case"number":case"string":case"undefined":return o;case"object":return o;default:return""}}function Ta(o){var s=o.type;return(o=o.nodeName)&&o.toLowerCase()==="input"&&(s==="checkbox"||s==="radio")}function Ua(o){var s=Ta(o)?"checked":"value",_=Object.getOwnPropertyDescriptor(o.constructor.prototype,s),j=""+o[s];if(!o.hasOwnProperty(s)&&typeof _<"u"&&typeof _.get=="function"&&typeof _.set=="function"){var $=_.get,_e=_.set;return Object.defineProperty(o,s,{configurable:!0,get:function(){return $.call(this)},set:function(et){j=""+et,_e.call(this,et)}}),Object.defineProperty(o,s,{enumerable:_.enumerable}),{getValue:function(){return j},setValue:function(et){j=""+et},stopTracking:function(){o._valueTracker=null,delete o[s]}}}}function Va(o){o._valueTracker||(o._valueTracker=Ua(o))}function Wa(o){if(!o)return!1;var s=o._valueTracker;if(!s)return!0;var _=s.getValue(),j="";return o&&(j=Ta(o)?o.checked?"true":"false":o.value),o=j,o!==_?(s.setValue(o),!0):!1}function Xa(o){if(o=o||(typeof document<"u"?document:void 0),typeof o>"u")return null;try{return o.activeElement||o.body}catch{return o.body}}function Ya(o,s){var _=s.checked;return A$1({},s,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:_??o._wrapperState.initialChecked})}function Za(o,s){var _=s.defaultValue==null?"":s.defaultValue,j=s.checked!=null?s.checked:s.defaultChecked;_=Sa(s.value!=null?s.value:_),o._wrapperState={initialChecked:j,initialValue:_,controlled:s.type==="checkbox"||s.type==="radio"?s.checked!=null:s.value!=null}}function ab(o,s){s=s.checked,s!=null&&ta(o,"checked",s,!1)}function bb(o,s){ab(o,s);var _=Sa(s.value),j=s.type;if(_!=null)j==="number"?(_===0&&o.value===""||o.value!=_)&&(o.value=""+_):o.value!==""+_&&(o.value=""+_);else if(j==="submit"||j==="reset"){o.removeAttribute("value");return}s.hasOwnProperty("value")?cb(o,s.type,_):s.hasOwnProperty("defaultValue")&&cb(o,s.type,Sa(s.defaultValue)),s.checked==null&&s.defaultChecked!=null&&(o.defaultChecked=!!s.defaultChecked)}function db(o,s,_){if(s.hasOwnProperty("value")||s.hasOwnProperty("defaultValue")){var j=s.type;if(!(j!=="submit"&&j!=="reset"||s.value!==void 0&&s.value!==null))return;s=""+o._wrapperState.initialValue,_||s===o.value||(o.value=s),o.defaultValue=s}_=o.name,_!==""&&(o.name=""),o.defaultChecked=!!o._wrapperState.initialChecked,_!==""&&(o.name=_)}function cb(o,s,_){(s!=="number"||Xa(o.ownerDocument)!==o)&&(_==null?o.defaultValue=""+o._wrapperState.initialValue:o.defaultValue!==""+_&&(o.defaultValue=""+_))}var eb=Array.isArray;function fb(o,s,_,j){if(o=o.options,s){s={};for(var $=0;$<_.length;$++)s["$"+_[$]]=!0;for(_=0;_"+s.valueOf().toString()+"",s=mb.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;s.firstChild;)o.appendChild(s.firstChild)}});function ob(o,s){if(s){var _=o.firstChild;if(_&&_===o.lastChild&&_.nodeType===3){_.nodeValue=s;return}}o.textContent=s}var pb={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=["Webkit","ms","Moz","O"];Object.keys(pb).forEach(function(o){qb.forEach(function(s){s=s+o.charAt(0).toUpperCase()+o.substring(1),pb[s]=pb[o]})});function rb(o,s,_){return s==null||typeof s=="boolean"||s===""?"":_||typeof s!="number"||s===0||pb.hasOwnProperty(o)&&pb[o]?(""+s).trim():s+"px"}function sb(o,s){o=o.style;for(var _ in s)if(s.hasOwnProperty(_)){var j=_.indexOf("--")===0,$=rb(_,s[_],j);_==="float"&&(_="cssFloat"),j?o.setProperty(_,$):o[_]=$}}var tb=A$1({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ub(o,s){if(s){if(tb[o]&&(s.children!=null||s.dangerouslySetInnerHTML!=null))throw Error(p$1(137,o));if(s.dangerouslySetInnerHTML!=null){if(s.children!=null)throw Error(p$1(60));if(typeof s.dangerouslySetInnerHTML!="object"||!("__html"in s.dangerouslySetInnerHTML))throw Error(p$1(61))}if(s.style!=null&&typeof s.style!="object")throw Error(p$1(62))}}function vb(o,s){if(o.indexOf("-")===-1)return typeof s.is=="string";switch(o){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var wb=null;function xb(o){return o=o.target||o.srcElement||window,o.correspondingUseElement&&(o=o.correspondingUseElement),o.nodeType===3?o.parentNode:o}var yb=null,zb=null,Ab=null;function Bb(o){if(o=Cb(o)){if(typeof yb!="function")throw Error(p$1(280));var s=o.stateNode;s&&(s=Db(s),yb(o.stateNode,o.type,s))}}function Eb(o){zb?Ab?Ab.push(o):Ab=[o]:zb=o}function Fb(){if(zb){var o=zb,s=Ab;if(Ab=zb=null,Bb(o),s)for(o=0;o>>=0,o===0?32:31-(pc(o)/qc|0)|0}var rc=64,sc=4194304;function tc(o){switch(o&-o){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return o&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return o&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return o}}function uc(o,s){var _=o.pendingLanes;if(_===0)return 0;var j=0,$=o.suspendedLanes,_e=o.pingedLanes,et=_&268435455;if(et!==0){var tt=et&~$;tt!==0?j=tc(tt):(_e&=et,_e!==0&&(j=tc(_e)))}else et=_&~$,et!==0?j=tc(et):_e!==0&&(j=tc(_e));if(j===0)return 0;if(s!==0&&s!==j&&!(s&$)&&($=j&-j,_e=s&-s,$>=_e||$===16&&(_e&4194240)!==0))return s;if(j&4&&(j|=_&16),s=o.entangledLanes,s!==0)for(o=o.entanglements,s&=j;0_;_++)s.push(o);return s}function Ac(o,s,_){o.pendingLanes|=s,s!==536870912&&(o.suspendedLanes=0,o.pingedLanes=0),o=o.eventTimes,s=31-oc(s),o[s]=_}function Bc(o,s){var _=o.pendingLanes&~s;o.pendingLanes=s,o.suspendedLanes=0,o.pingedLanes=0,o.expiredLanes&=s,o.mutableReadLanes&=s,o.entangledLanes&=s,s=o.entanglements;var j=o.eventTimes;for(o=o.expirationTimes;0<_;){var $=31-oc(_),_e=1<<$;s[$]=0,j[$]=-1,o[$]=-1,_&=~_e}}function Cc(o,s){var _=o.entangledLanes|=s;for(o=o.entanglements;_;){var j=31-oc(_),$=1<=be),ee=String.fromCharCode(32),fe=!1;function ge(o,s){switch(o){case"keyup":return $d.indexOf(s.keyCode)!==-1;case"keydown":return s.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function he(o){return o=o.detail,typeof o=="object"&&"data"in o?o.data:null}var ie=!1;function je(o,s){switch(o){case"compositionend":return he(s);case"keypress":return s.which!==32?null:(fe=!0,ee);case"textInput":return o=s.data,o===ee&&fe?null:o;default:return null}}function ke(o,s){if(ie)return o==="compositionend"||!ae&&ge(o,s)?(o=nd(),md=ld=kd=null,ie=!1,o):null;switch(o){case"paste":return null;case"keypress":if(!(s.ctrlKey||s.altKey||s.metaKey)||s.ctrlKey&&s.altKey){if(s.char&&1=s)return{node:_,offset:s-o};o=j}e:{for(;_;){if(_.nextSibling){_=_.nextSibling;break e}_=_.parentNode}_=void 0}_=Je(_)}}function Le(o,s){return o&&s?o===s?!0:o&&o.nodeType===3?!1:s&&s.nodeType===3?Le(o,s.parentNode):"contains"in o?o.contains(s):o.compareDocumentPosition?!!(o.compareDocumentPosition(s)&16):!1:!1}function Me(){for(var o=window,s=Xa();s instanceof o.HTMLIFrameElement;){try{var _=typeof s.contentWindow.location.href=="string"}catch{_=!1}if(_)o=s.contentWindow;else break;s=Xa(o.document)}return s}function Ne(o){var s=o&&o.nodeName&&o.nodeName.toLowerCase();return s&&(s==="input"&&(o.type==="text"||o.type==="search"||o.type==="tel"||o.type==="url"||o.type==="password")||s==="textarea"||o.contentEditable==="true")}function Oe$1(o){var s=Me(),_=o.focusedElem,j=o.selectionRange;if(s!==_&&_&&_.ownerDocument&&Le(_.ownerDocument.documentElement,_)){if(j!==null&&Ne(_)){if(s=j.start,o=j.end,o===void 0&&(o=s),"selectionStart"in _)_.selectionStart=s,_.selectionEnd=Math.min(o,_.value.length);else if(o=(s=_.ownerDocument||document)&&s.defaultView||window,o.getSelection){o=o.getSelection();var $=_.textContent.length,_e=Math.min(j.start,$);j=j.end===void 0?_e:Math.min(j.end,$),!o.extend&&_e>j&&($=j,j=_e,_e=$),$=Ke$1(_,_e);var et=Ke$1(_,j);$&&et&&(o.rangeCount!==1||o.anchorNode!==$.node||o.anchorOffset!==$.offset||o.focusNode!==et.node||o.focusOffset!==et.offset)&&(s=s.createRange(),s.setStart($.node,$.offset),o.removeAllRanges(),_e>j?(o.addRange(s),o.extend(et.node,et.offset)):(s.setEnd(et.node,et.offset),o.addRange(s)))}}for(s=[],o=_;o=o.parentNode;)o.nodeType===1&&s.push({element:o,left:o.scrollLeft,top:o.scrollTop});for(typeof _.focus=="function"&&_.focus(),_=0;_=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;function Ue(o,s,_){var j=_.window===_?_.document:_.nodeType===9?_:_.ownerDocument;Te||Qe==null||Qe!==Xa(j)||(j=Qe,"selectionStart"in j&&Ne(j)?j={start:j.selectionStart,end:j.selectionEnd}:(j=(j.ownerDocument&&j.ownerDocument.defaultView||window).getSelection(),j={anchorNode:j.anchorNode,anchorOffset:j.anchorOffset,focusNode:j.focusNode,focusOffset:j.focusOffset}),Se&&Ie(Se,j)||(Se=j,j=oe(Re,"onSelect"),0Tf||(o.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(o,s){Tf++,Sf[Tf]=o.current,o.current=s}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(o,s){var _=o.type.contextTypes;if(!_)return Vf;var j=o.stateNode;if(j&&j.__reactInternalMemoizedUnmaskedChildContext===s)return j.__reactInternalMemoizedMaskedChildContext;var $={},_e;for(_e in _)$[_e]=s[_e];return j&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=s,o.__reactInternalMemoizedMaskedChildContext=$),$}function Zf(o){return o=o.childContextTypes,o!=null}function $f(){E(Wf),E(H)}function ag(o,s,_){if(H.current!==Vf)throw Error(p$1(168));G(H,s),G(Wf,_)}function bg(o,s,_){var j=o.stateNode;if(s=s.childContextTypes,typeof j.getChildContext!="function")return _;j=j.getChildContext();for(var $ in j)if(!($ in s))throw Error(p$1(108,Ra(o)||"Unknown",$));return A$1({},_,j)}function cg(o){return o=(o=o.stateNode)&&o.__reactInternalMemoizedMergedChildContext||Vf,Xf=H.current,G(H,o),G(Wf,Wf.current),!0}function dg(o,s,_){var j=o.stateNode;if(!j)throw Error(p$1(169));_?(o=bg(o,s,Xf),j.__reactInternalMemoizedMergedChildContext=o,E(Wf),E(H),G(H,o)):E(Wf),G(Wf,_)}var eg=null,fg=!1,gg=!1;function hg(o){eg===null?eg=[o]:eg.push(o)}function ig(o){fg=!0,hg(o)}function jg(){if(!gg&&eg!==null){gg=!0;var o=0,s=C;try{var _=eg;for(C=1;o<_.length;o++){var j=_[o];do j=j(!0);while(j!==null)}eg=null,fg=!1}catch($){throw eg!==null&&(eg=eg.slice(o+1)),ac(fc,jg),$}finally{C=s,gg=!1}}return null}var kg=[],lg=0,mg=null,ng=0,og=[],pg=0,qg=null,rg=1,sg="";function tg(o,s){kg[lg++]=ng,kg[lg++]=mg,mg=o,ng=s}function ug(o,s,_){og[pg++]=rg,og[pg++]=sg,og[pg++]=qg,qg=o;var j=rg;o=sg;var $=32-oc(j)-1;j&=~(1<<$),_+=1;var _e=32-oc(s)+$;if(30<_e){var et=$-$%5;_e=(j&(1<>=et,$-=et,rg=1<<32-oc(s)+$|_<<$|j,sg=_e+o}else rg=1<<_e|_<<$|j,sg=o}function vg(o){o.return!==null&&(tg(o,1),ug(o,1,0))}function wg(o){for(;o===mg;)mg=kg[--lg],kg[lg]=null,ng=kg[--lg],kg[lg]=null;for(;o===qg;)qg=og[--pg],og[pg]=null,sg=og[--pg],og[pg]=null,rg=og[--pg],og[pg]=null}var xg=null,yg=null,I=!1,zg=null;function Ag(o,s){var _=Bg(5,null,null,0);_.elementType="DELETED",_.stateNode=s,_.return=o,s=o.deletions,s===null?(o.deletions=[_],o.flags|=16):s.push(_)}function Cg(o,s){switch(o.tag){case 5:var _=o.type;return s=s.nodeType!==1||_.toLowerCase()!==s.nodeName.toLowerCase()?null:s,s!==null?(o.stateNode=s,xg=o,yg=Lf(s.firstChild),!0):!1;case 6:return s=o.pendingProps===""||s.nodeType!==3?null:s,s!==null?(o.stateNode=s,xg=o,yg=null,!0):!1;case 13:return s=s.nodeType!==8?null:s,s!==null?(_=qg!==null?{id:rg,overflow:sg}:null,o.memoizedState={dehydrated:s,treeContext:_,retryLane:1073741824},_=Bg(18,null,null,0),_.stateNode=s,_.return=o,o.child=_,xg=o,yg=null,!0):!1;default:return!1}}function Dg(o){return(o.mode&1)!==0&&(o.flags&128)===0}function Eg(o){if(I){var s=yg;if(s){var _=s;if(!Cg(o,s)){if(Dg(o))throw Error(p$1(418));s=Lf(_.nextSibling);var j=xg;s&&Cg(o,s)?Ag(j,_):(o.flags=o.flags&-4097|2,I=!1,xg=o)}}else{if(Dg(o))throw Error(p$1(418));o.flags=o.flags&-4097|2,I=!1,xg=o}}}function Fg(o){for(o=o.return;o!==null&&o.tag!==5&&o.tag!==3&&o.tag!==13;)o=o.return;xg=o}function Gg(o){if(o!==xg)return!1;if(!I)return Fg(o),I=!0,!1;var s;if((s=o.tag!==3)&&!(s=o.tag!==5)&&(s=o.type,s=s!=="head"&&s!=="body"&&!Ef(o.type,o.memoizedProps)),s&&(s=yg)){if(Dg(o))throw Hg(),Error(p$1(418));for(;s;)Ag(o,s),s=Lf(s.nextSibling)}if(Fg(o),o.tag===13){if(o=o.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(p$1(317));e:{for(o=o.nextSibling,s=0;o;){if(o.nodeType===8){var _=o.data;if(_==="/$"){if(s===0){yg=Lf(o.nextSibling);break e}s--}else _!=="$"&&_!=="$!"&&_!=="$?"||s++}o=o.nextSibling}yg=null}}else yg=xg?Lf(o.stateNode.nextSibling):null;return!0}function Hg(){for(var o=yg;o;)o=Lf(o.nextSibling)}function Ig(){yg=xg=null,I=!1}function Jg(o){zg===null?zg=[o]:zg.push(o)}var Kg=ua$1.ReactCurrentBatchConfig;function Lg(o,s){if(o&&o.defaultProps){s=A$1({},s),o=o.defaultProps;for(var _ in o)s[_]===void 0&&(s[_]=o[_]);return s}return s}var Mg=Uf(null),Ng=null,Og=null,Pg=null;function Qg(){Pg=Og=Ng=null}function Rg(o){var s=Mg.current;E(Mg),o._currentValue=s}function Sg(o,s,_){for(;o!==null;){var j=o.alternate;if((o.childLanes&s)!==s?(o.childLanes|=s,j!==null&&(j.childLanes|=s)):j!==null&&(j.childLanes&s)!==s&&(j.childLanes|=s),o===_)break;o=o.return}}function Tg(o,s){Ng=o,Pg=Og=null,o=o.dependencies,o!==null&&o.firstContext!==null&&(o.lanes&s&&(Ug=!0),o.firstContext=null)}function Vg(o){var s=o._currentValue;if(Pg!==o)if(o={context:o,memoizedValue:s,next:null},Og===null){if(Ng===null)throw Error(p$1(308));Og=o,Ng.dependencies={lanes:0,firstContext:o}}else Og=Og.next=o;return s}var Wg=null;function Xg(o){Wg===null?Wg=[o]:Wg.push(o)}function Yg(o,s,_,j){var $=s.interleaved;return $===null?(_.next=_,Xg(s)):(_.next=$.next,$.next=_),s.interleaved=_,Zg(o,j)}function Zg(o,s){o.lanes|=s;var _=o.alternate;for(_!==null&&(_.lanes|=s),_=o,o=o.return;o!==null;)o.childLanes|=s,_=o.alternate,_!==null&&(_.childLanes|=s),_=o,o=o.return;return _.tag===3?_.stateNode:null}var $g=!1;function ah(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function bh(o,s){o=o.updateQueue,s.updateQueue===o&&(s.updateQueue={baseState:o.baseState,firstBaseUpdate:o.firstBaseUpdate,lastBaseUpdate:o.lastBaseUpdate,shared:o.shared,effects:o.effects})}function ch(o,s){return{eventTime:o,lane:s,tag:0,payload:null,callback:null,next:null}}function dh(o,s,_){var j=o.updateQueue;if(j===null)return null;if(j=j.shared,K&2){var $=j.pending;return $===null?s.next=s:(s.next=$.next,$.next=s),j.pending=s,Zg(o,_)}return $=j.interleaved,$===null?(s.next=s,Xg(j)):(s.next=$.next,$.next=s),j.interleaved=s,Zg(o,_)}function eh(o,s,_){if(s=s.updateQueue,s!==null&&(s=s.shared,(_&4194240)!==0)){var j=s.lanes;j&=o.pendingLanes,_|=j,s.lanes=_,Cc(o,_)}}function fh(o,s){var _=o.updateQueue,j=o.alternate;if(j!==null&&(j=j.updateQueue,_===j)){var $=null,_e=null;if(_=_.firstBaseUpdate,_!==null){do{var et={eventTime:_.eventTime,lane:_.lane,tag:_.tag,payload:_.payload,callback:_.callback,next:null};_e===null?$=_e=et:_e=_e.next=et,_=_.next}while(_!==null);_e===null?$=_e=s:_e=_e.next=s}else $=_e=s;_={baseState:j.baseState,firstBaseUpdate:$,lastBaseUpdate:_e,shared:j.shared,effects:j.effects},o.updateQueue=_;return}o=_.lastBaseUpdate,o===null?_.firstBaseUpdate=s:o.next=s,_.lastBaseUpdate=s}function gh(o,s,_,j){var $=o.updateQueue;$g=!1;var _e=$.firstBaseUpdate,et=$.lastBaseUpdate,tt=$.shared.pending;if(tt!==null){$.shared.pending=null;var nt=tt,rt=nt.next;nt.next=null,et===null?_e=rt:et.next=rt,et=nt;var it=o.alternate;it!==null&&(it=it.updateQueue,tt=it.lastBaseUpdate,tt!==et&&(tt===null?it.firstBaseUpdate=rt:tt.next=rt,it.lastBaseUpdate=nt))}if(_e!==null){var st=$.baseState;et=0,it=rt=nt=null,tt=_e;do{var ut=tt.lane,Ft=tt.eventTime;if((j&ut)===ut){it!==null&&(it=it.next={eventTime:Ft,lane:0,tag:tt.tag,payload:tt.payload,callback:tt.callback,next:null});e:{var dt=o,gt=tt;switch(ut=s,Ft=_,gt.tag){case 1:if(dt=gt.payload,typeof dt=="function"){st=dt.call(Ft,st,ut);break e}st=dt;break e;case 3:dt.flags=dt.flags&-65537|128;case 0:if(dt=gt.payload,ut=typeof dt=="function"?dt.call(Ft,st,ut):dt,ut==null)break e;st=A$1({},st,ut);break e;case 2:$g=!0}}tt.callback!==null&&tt.lane!==0&&(o.flags|=64,ut=$.effects,ut===null?$.effects=[tt]:ut.push(tt))}else Ft={eventTime:Ft,lane:ut,tag:tt.tag,payload:tt.payload,callback:tt.callback,next:null},it===null?(rt=it=Ft,nt=st):it=it.next=Ft,et|=ut;if(tt=tt.next,tt===null){if(tt=$.shared.pending,tt===null)break;ut=tt,tt=ut.next,ut.next=null,$.lastBaseUpdate=ut,$.shared.pending=null}}while(1);if(it===null&&(nt=st),$.baseState=nt,$.firstBaseUpdate=rt,$.lastBaseUpdate=it,s=$.shared.interleaved,s!==null){$=s;do et|=$.lane,$=$.next;while($!==s)}else _e===null&&($.shared.lanes=0);hh|=et,o.lanes=et,o.memoizedState=st}}function ih(o,s,_){if(o=s.effects,s.effects=null,o!==null)for(s=0;skt?(Bt=At,At=null):Bt=At.sibling;var jt=ut(ht,At,pt[kt],Rt);if(jt===null){At===null&&(At=Bt);break}o&&At&&jt.alternate===null&&s(ht,At),ft=_e(jt,ft,kt),Nt===null?Qt=jt:Nt.sibling=jt,Nt=jt,At=Bt}if(kt===pt.length)return _(ht,At),I&&tg(ht,kt),Qt;if(At===null){for(;ktkt?(Bt=At,At=null):Bt=At.sibling;var vt=ut(ht,At,jt.value,Rt);if(vt===null){At===null&&(At=Bt);break}o&&At&&vt.alternate===null&&s(ht,At),ft=_e(vt,ft,kt),Nt===null?Qt=vt:Nt.sibling=vt,Nt=vt,At=Bt}if(jt.done)return _(ht,At),I&&tg(ht,kt),Qt;if(At===null){for(;!jt.done;kt++,jt=pt.next())jt=st(ht,jt.value,Rt),jt!==null&&(ft=_e(jt,ft,kt),Nt===null?Qt=jt:Nt.sibling=jt,Nt=jt);return I&&tg(ht,kt),Qt}for(At=j(ht,At);!jt.done;kt++,jt=pt.next())jt=Ft(At,ht,kt,jt.value,Rt),jt!==null&&(o&&jt.alternate!==null&&At.delete(jt.key===null?kt:jt.key),ft=_e(jt,ft,kt),Nt===null?Qt=jt:Nt.sibling=jt,Nt=jt);return o&&At.forEach(function(mt){return s(ht,mt)}),I&&tg(ht,kt),Qt}function Ut(ht,ft,pt,Rt){if(typeof pt=="object"&&pt!==null&&pt.type===ya&&pt.key===null&&(pt=pt.props.children),typeof pt=="object"&&pt!==null){switch(pt.$$typeof){case va:e:{for(var Qt=pt.key,Nt=ft;Nt!==null;){if(Nt.key===Qt){if(Qt=pt.type,Qt===ya){if(Nt.tag===7){_(ht,Nt.sibling),ft=$(Nt,pt.props.children),ft.return=ht,ht=ft;break e}}else if(Nt.elementType===Qt||typeof Qt=="object"&&Qt!==null&&Qt.$$typeof===Ha&&uh(Qt)===Nt.type){_(ht,Nt.sibling),ft=$(Nt,pt.props),ft.ref=sh(ht,Nt,pt),ft.return=ht,ht=ft;break e}_(ht,Nt);break}else s(ht,Nt);Nt=Nt.sibling}pt.type===ya?(ft=Ah(pt.props.children,ht.mode,Rt,pt.key),ft.return=ht,ht=ft):(Rt=yh(pt.type,pt.key,pt.props,null,ht.mode,Rt),Rt.ref=sh(ht,ft,pt),Rt.return=ht,ht=Rt)}return et(ht);case wa:e:{for(Nt=pt.key;ft!==null;){if(ft.key===Nt)if(ft.tag===4&&ft.stateNode.containerInfo===pt.containerInfo&&ft.stateNode.implementation===pt.implementation){_(ht,ft.sibling),ft=$(ft,pt.children||[]),ft.return=ht,ht=ft;break e}else{_(ht,ft);break}else s(ht,ft);ft=ft.sibling}ft=zh(pt,ht.mode,Rt),ft.return=ht,ht=ft}return et(ht);case Ha:return Nt=pt._init,Ut(ht,ft,Nt(pt._payload),Rt)}if(eb(pt))return dt(ht,ft,pt,Rt);if(Ka(pt))return gt(ht,ft,pt,Rt);th(ht,pt)}return typeof pt=="string"&&pt!==""||typeof pt=="number"?(pt=""+pt,ft!==null&&ft.tag===6?(_(ht,ft.sibling),ft=$(ft,pt),ft.return=ht,ht=ft):(_(ht,ft),ft=xh(pt,ht.mode,Rt),ft.return=ht,ht=ft),et(ht)):_(ht,ft)}return Ut}var Bh=vh(!0),Ch=vh(!1),Dh={},Eh=Uf(Dh),Fh=Uf(Dh),Gh=Uf(Dh);function Hh(o){if(o===Dh)throw Error(p$1(174));return o}function Ih(o,s){switch(G(Gh,s),G(Fh,o),G(Eh,Dh),o=s.nodeType,o){case 9:case 11:s=(s=s.documentElement)?s.namespaceURI:lb(null,"");break;default:o=o===8?s.parentNode:s,s=o.namespaceURI||null,o=o.tagName,s=lb(s,o)}E(Eh),G(Eh,s)}function Jh(){E(Eh),E(Fh),E(Gh)}function Kh(o){Hh(Gh.current);var s=Hh(Eh.current),_=lb(s,o.type);s!==_&&(G(Fh,o),G(Eh,_))}function Lh(o){Fh.current===o&&(E(Eh),E(Fh))}var M=Uf(0);function Mh(o){for(var s=o;s!==null;){if(s.tag===13){var _=s.memoizedState;if(_!==null&&(_=_.dehydrated,_===null||_.data==="$?"||_.data==="$!"))return s}else if(s.tag===19&&s.memoizedProps.revealOrder!==void 0){if(s.flags&128)return s}else if(s.child!==null){s.child.return=s,s=s.child;continue}if(s===o)break;for(;s.sibling===null;){if(s.return===null||s.return===o)return null;s=s.return}s.sibling.return=s.return,s=s.sibling}return null}var Nh=[];function Oh(){for(var o=0;o_?_:4,o(!0);var j=Qh.transition;Qh.transition={};try{o(!1),s()}finally{C=_,Qh.transition=j}}function Fi(){return di().memoizedState}function Gi(o,s,_){var j=lh(o);if(_={lane:j,action:_,hasEagerState:!1,eagerState:null,next:null},Hi(o))Ii(s,_);else if(_=Yg(o,s,_,j),_!==null){var $=L();mh(_,o,j,$),Ji(_,s,j)}}function ri(o,s,_){var j=lh(o),$={lane:j,action:_,hasEagerState:!1,eagerState:null,next:null};if(Hi(o))Ii(s,$);else{var _e=o.alternate;if(o.lanes===0&&(_e===null||_e.lanes===0)&&(_e=s.lastRenderedReducer,_e!==null))try{var et=s.lastRenderedState,tt=_e(et,_);if($.hasEagerState=!0,$.eagerState=tt,He(tt,et)){var nt=s.interleaved;nt===null?($.next=$,Xg(s)):($.next=nt.next,nt.next=$),s.interleaved=$;return}}catch{}finally{}_=Yg(o,s,$,j),_!==null&&($=L(),mh(_,o,j,$),Ji(_,s,j))}}function Hi(o){var s=o.alternate;return o===N||s!==null&&s===N}function Ii(o,s){Th=Sh=!0;var _=o.pending;_===null?s.next=s:(s.next=_.next,_.next=s),o.pending=s}function Ji(o,s,_){if(_&4194240){var j=s.lanes;j&=o.pendingLanes,_|=j,s.lanes=_,Cc(o,_)}}var ai={readContext:Vg,useCallback:Q,useContext:Q,useEffect:Q,useImperativeHandle:Q,useInsertionEffect:Q,useLayoutEffect:Q,useMemo:Q,useReducer:Q,useRef:Q,useState:Q,useDebugValue:Q,useDeferredValue:Q,useTransition:Q,useMutableSource:Q,useSyncExternalStore:Q,useId:Q,unstable_isNewReconciler:!1},Yh={readContext:Vg,useCallback:function(o,s){return ci().memoizedState=[o,s===void 0?null:s],o},useContext:Vg,useEffect:vi,useImperativeHandle:function(o,s,_){return _=_!=null?_.concat([o]):null,ti(4194308,4,yi.bind(null,s,o),_)},useLayoutEffect:function(o,s){return ti(4194308,4,o,s)},useInsertionEffect:function(o,s){return ti(4,2,o,s)},useMemo:function(o,s){var _=ci();return s=s===void 0?null:s,o=o(),_.memoizedState=[o,s],o},useReducer:function(o,s,_){var j=ci();return s=_!==void 0?_(s):s,j.memoizedState=j.baseState=s,o={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:o,lastRenderedState:s},j.queue=o,o=o.dispatch=Gi.bind(null,N,o),[j.memoizedState,o]},useRef:function(o){var s=ci();return o={current:o},s.memoizedState=o},useState:qi,useDebugValue:Ai,useDeferredValue:function(o){return ci().memoizedState=o},useTransition:function(){var o=qi(!1),s=o[0];return o=Ei.bind(null,o[1]),ci().memoizedState=o,[s,o]},useMutableSource:function(){},useSyncExternalStore:function(o,s,_){var j=N,$=ci();if(I){if(_===void 0)throw Error(p$1(407));_=_()}else{if(_=s(),R===null)throw Error(p$1(349));Rh&30||ni(j,s,_)}$.memoizedState=_;var _e={value:_,getSnapshot:s};return $.queue=_e,vi(ki.bind(null,j,_e,o),[o]),j.flags|=2048,li(9,mi.bind(null,j,_e,_,s),void 0,null),_},useId:function(){var o=ci(),s=R.identifierPrefix;if(I){var _=sg,j=rg;_=(j&~(1<<32-oc(j)-1)).toString(32)+_,s=":"+s+"R"+_,_=Uh++,0<_&&(s+="H"+_.toString(32)),s+=":"}else _=Vh++,s=":"+s+"r"+_.toString(32)+":";return o.memoizedState=s},unstable_isNewReconciler:!1},Zh={readContext:Vg,useCallback:Bi,useContext:Vg,useEffect:ji,useImperativeHandle:zi,useInsertionEffect:wi,useLayoutEffect:xi,useMemo:Ci,useReducer:fi,useRef:si,useState:function(){return fi(ei)},useDebugValue:Ai,useDeferredValue:function(o){var s=di();return Di(s,O.memoizedState,o)},useTransition:function(){var o=fi(ei)[0],s=di().memoizedState;return[o,s]},useMutableSource:hi,useSyncExternalStore:ii,useId:Fi,unstable_isNewReconciler:!1},$h={readContext:Vg,useCallback:Bi,useContext:Vg,useEffect:ji,useImperativeHandle:zi,useInsertionEffect:wi,useLayoutEffect:xi,useMemo:Ci,useReducer:gi,useRef:si,useState:function(){return gi(ei)},useDebugValue:Ai,useDeferredValue:function(o){var s=di();return O===null?s.memoizedState=o:Di(s,O.memoizedState,o)},useTransition:function(){var o=gi(ei)[0],s=di().memoizedState;return[o,s]},useMutableSource:hi,useSyncExternalStore:ii,useId:Fi,unstable_isNewReconciler:!1};function Ki(o,s){try{var _="",j=s;do _+=Pa(j),j=j.return;while(j);var $=_}catch(_e){$=` +Error generating stack: `+_e.message+` +`+_e.stack}return{value:o,source:s,stack:$,digest:null}}function Li(o,s,_){return{value:o,source:null,stack:_??null,digest:s??null}}function Mi(o,s){try{console.error(s.value)}catch(_){setTimeout(function(){throw _})}}var Ni=typeof WeakMap=="function"?WeakMap:Map;function Oi(o,s,_){_=ch(-1,_),_.tag=3,_.payload={element:null};var j=s.value;return _.callback=function(){Pi||(Pi=!0,Qi=j),Mi(o,s)},_}function Ri(o,s,_){_=ch(-1,_),_.tag=3;var j=o.type.getDerivedStateFromError;if(typeof j=="function"){var $=s.value;_.payload=function(){return j($)},_.callback=function(){Mi(o,s)}}var _e=o.stateNode;return _e!==null&&typeof _e.componentDidCatch=="function"&&(_.callback=function(){Mi(o,s),typeof j!="function"&&(Si===null?Si=new Set([this]):Si.add(this));var et=s.stack;this.componentDidCatch(s.value,{componentStack:et!==null?et:""})}),_}function Ti(o,s,_){var j=o.pingCache;if(j===null){j=o.pingCache=new Ni;var $=new Set;j.set(s,$)}else $=j.get(s),$===void 0&&($=new Set,j.set(s,$));$.has(_)||($.add(_),o=Ui.bind(null,o,s,_),s.then(o,o))}function Vi(o){do{var s;if((s=o.tag===13)&&(s=o.memoizedState,s=s!==null?s.dehydrated!==null:!0),s)return o;o=o.return}while(o!==null);return null}function Wi(o,s,_,j,$){return o.mode&1?(o.flags|=65536,o.lanes=$,o):(o===s?o.flags|=65536:(o.flags|=128,_.flags|=131072,_.flags&=-52805,_.tag===1&&(_.alternate===null?_.tag=17:(s=ch(-1,1),s.tag=2,dh(_,s,1))),_.lanes|=1),o)}var Xi=ua$1.ReactCurrentOwner,Ug=!1;function Yi(o,s,_,j){s.child=o===null?Ch(s,null,_,j):Bh(s,o.child,_,j)}function Zi(o,s,_,j,$){_=_.render;var _e=s.ref;return Tg(s,$),j=Xh(o,s,_,j,_e,$),_=bi(),o!==null&&!Ug?(s.updateQueue=o.updateQueue,s.flags&=-2053,o.lanes&=~$,$i(o,s,$)):(I&&_&&vg(s),s.flags|=1,Yi(o,s,j,$),s.child)}function aj(o,s,_,j,$){if(o===null){var _e=_.type;return typeof _e=="function"&&!bj(_e)&&_e.defaultProps===void 0&&_.compare===null&&_.defaultProps===void 0?(s.tag=15,s.type=_e,cj(o,s,_e,j,$)):(o=yh(_.type,null,j,s,s.mode,$),o.ref=s.ref,o.return=s,s.child=o)}if(_e=o.child,!(o.lanes&$)){var et=_e.memoizedProps;if(_=_.compare,_=_!==null?_:Ie,_(et,j)&&o.ref===s.ref)return $i(o,s,$)}return s.flags|=1,o=wh(_e,j),o.ref=s.ref,o.return=s,s.child=o}function cj(o,s,_,j,$){if(o!==null){var _e=o.memoizedProps;if(Ie(_e,j)&&o.ref===s.ref)if(Ug=!1,s.pendingProps=j=_e,(o.lanes&$)!==0)o.flags&131072&&(Ug=!0);else return s.lanes=o.lanes,$i(o,s,$)}return dj(o,s,_,j,$)}function ej(o,s,_){var j=s.pendingProps,$=j.children,_e=o!==null?o.memoizedState:null;if(j.mode==="hidden")if(!(s.mode&1))s.memoizedState={baseLanes:0,cachePool:null,transitions:null},G(fj,gj),gj|=_;else{if(!(_&1073741824))return o=_e!==null?_e.baseLanes|_:_,s.lanes=s.childLanes=1073741824,s.memoizedState={baseLanes:o,cachePool:null,transitions:null},s.updateQueue=null,G(fj,gj),gj|=o,null;s.memoizedState={baseLanes:0,cachePool:null,transitions:null},j=_e!==null?_e.baseLanes:_,G(fj,gj),gj|=j}else _e!==null?(j=_e.baseLanes|_,s.memoizedState=null):j=_,G(fj,gj),gj|=j;return Yi(o,s,$,_),s.child}function hj(o,s){var _=s.ref;(o===null&&_!==null||o!==null&&o.ref!==_)&&(s.flags|=512,s.flags|=2097152)}function dj(o,s,_,j,$){var _e=Zf(_)?Xf:H.current;return _e=Yf(s,_e),Tg(s,$),_=Xh(o,s,_,j,_e,$),j=bi(),o!==null&&!Ug?(s.updateQueue=o.updateQueue,s.flags&=-2053,o.lanes&=~$,$i(o,s,$)):(I&&j&&vg(s),s.flags|=1,Yi(o,s,_,$),s.child)}function ij(o,s,_,j,$){if(Zf(_)){var _e=!0;cg(s)}else _e=!1;if(Tg(s,$),s.stateNode===null)jj(o,s),ph(s,_,j),rh(s,_,j,$),j=!0;else if(o===null){var et=s.stateNode,tt=s.memoizedProps;et.props=tt;var nt=et.context,rt=_.contextType;typeof rt=="object"&&rt!==null?rt=Vg(rt):(rt=Zf(_)?Xf:H.current,rt=Yf(s,rt));var it=_.getDerivedStateFromProps,st=typeof it=="function"||typeof et.getSnapshotBeforeUpdate=="function";st||typeof et.UNSAFE_componentWillReceiveProps!="function"&&typeof et.componentWillReceiveProps!="function"||(tt!==j||nt!==rt)&&qh(s,et,j,rt),$g=!1;var ut=s.memoizedState;et.state=ut,gh(s,j,et,$),nt=s.memoizedState,tt!==j||ut!==nt||Wf.current||$g?(typeof it=="function"&&(kh(s,_,it,j),nt=s.memoizedState),(tt=$g||oh(s,_,tt,j,ut,nt,rt))?(st||typeof et.UNSAFE_componentWillMount!="function"&&typeof et.componentWillMount!="function"||(typeof et.componentWillMount=="function"&&et.componentWillMount(),typeof et.UNSAFE_componentWillMount=="function"&&et.UNSAFE_componentWillMount()),typeof et.componentDidMount=="function"&&(s.flags|=4194308)):(typeof et.componentDidMount=="function"&&(s.flags|=4194308),s.memoizedProps=j,s.memoizedState=nt),et.props=j,et.state=nt,et.context=rt,j=tt):(typeof et.componentDidMount=="function"&&(s.flags|=4194308),j=!1)}else{et=s.stateNode,bh(o,s),tt=s.memoizedProps,rt=s.type===s.elementType?tt:Lg(s.type,tt),et.props=rt,st=s.pendingProps,ut=et.context,nt=_.contextType,typeof nt=="object"&&nt!==null?nt=Vg(nt):(nt=Zf(_)?Xf:H.current,nt=Yf(s,nt));var Ft=_.getDerivedStateFromProps;(it=typeof Ft=="function"||typeof et.getSnapshotBeforeUpdate=="function")||typeof et.UNSAFE_componentWillReceiveProps!="function"&&typeof et.componentWillReceiveProps!="function"||(tt!==st||ut!==nt)&&qh(s,et,j,nt),$g=!1,ut=s.memoizedState,et.state=ut,gh(s,j,et,$);var dt=s.memoizedState;tt!==st||ut!==dt||Wf.current||$g?(typeof Ft=="function"&&(kh(s,_,Ft,j),dt=s.memoizedState),(rt=$g||oh(s,_,rt,j,ut,dt,nt)||!1)?(it||typeof et.UNSAFE_componentWillUpdate!="function"&&typeof et.componentWillUpdate!="function"||(typeof et.componentWillUpdate=="function"&&et.componentWillUpdate(j,dt,nt),typeof et.UNSAFE_componentWillUpdate=="function"&&et.UNSAFE_componentWillUpdate(j,dt,nt)),typeof et.componentDidUpdate=="function"&&(s.flags|=4),typeof et.getSnapshotBeforeUpdate=="function"&&(s.flags|=1024)):(typeof et.componentDidUpdate!="function"||tt===o.memoizedProps&&ut===o.memoizedState||(s.flags|=4),typeof et.getSnapshotBeforeUpdate!="function"||tt===o.memoizedProps&&ut===o.memoizedState||(s.flags|=1024),s.memoizedProps=j,s.memoizedState=dt),et.props=j,et.state=dt,et.context=nt,j=rt):(typeof et.componentDidUpdate!="function"||tt===o.memoizedProps&&ut===o.memoizedState||(s.flags|=4),typeof et.getSnapshotBeforeUpdate!="function"||tt===o.memoizedProps&&ut===o.memoizedState||(s.flags|=1024),j=!1)}return kj(o,s,_,j,_e,$)}function kj(o,s,_,j,$,_e){hj(o,s);var et=(s.flags&128)!==0;if(!j&&!et)return $&&dg(s,_,!1),$i(o,s,_e);j=s.stateNode,Xi.current=s;var tt=et&&typeof _.getDerivedStateFromError!="function"?null:j.render();return s.flags|=1,o!==null&&et?(s.child=Bh(s,o.child,null,_e),s.child=Bh(s,null,tt,_e)):Yi(o,s,tt,_e),s.memoizedState=j.state,$&&dg(s,_,!0),s.child}function lj(o){var s=o.stateNode;s.pendingContext?ag(o,s.pendingContext,s.pendingContext!==s.context):s.context&&ag(o,s.context,!1),Ih(o,s.containerInfo)}function mj(o,s,_,j,$){return Ig(),Jg($),s.flags|=256,Yi(o,s,_,j),s.child}var nj={dehydrated:null,treeContext:null,retryLane:0};function oj(o){return{baseLanes:o,cachePool:null,transitions:null}}function pj(o,s,_){var j=s.pendingProps,$=M.current,_e=!1,et=(s.flags&128)!==0,tt;if((tt=et)||(tt=o!==null&&o.memoizedState===null?!1:($&2)!==0),tt?(_e=!0,s.flags&=-129):(o===null||o.memoizedState!==null)&&($|=1),G(M,$&1),o===null)return Eg(s),o=s.memoizedState,o!==null&&(o=o.dehydrated,o!==null)?(s.mode&1?o.data==="$!"?s.lanes=8:s.lanes=1073741824:s.lanes=1,null):(et=j.children,o=j.fallback,_e?(j=s.mode,_e=s.child,et={mode:"hidden",children:et},!(j&1)&&_e!==null?(_e.childLanes=0,_e.pendingProps=et):_e=qj(et,j,0,null),o=Ah(o,j,_,null),_e.return=s,o.return=s,_e.sibling=o,s.child=_e,s.child.memoizedState=oj(_),s.memoizedState=nj,o):rj(s,et));if($=o.memoizedState,$!==null&&(tt=$.dehydrated,tt!==null))return sj(o,s,et,j,tt,$,_);if(_e){_e=j.fallback,et=s.mode,$=o.child,tt=$.sibling;var nt={mode:"hidden",children:j.children};return!(et&1)&&s.child!==$?(j=s.child,j.childLanes=0,j.pendingProps=nt,s.deletions=null):(j=wh($,nt),j.subtreeFlags=$.subtreeFlags&14680064),tt!==null?_e=wh(tt,_e):(_e=Ah(_e,et,_,null),_e.flags|=2),_e.return=s,j.return=s,j.sibling=_e,s.child=j,j=_e,_e=s.child,et=o.child.memoizedState,et=et===null?oj(_):{baseLanes:et.baseLanes|_,cachePool:null,transitions:et.transitions},_e.memoizedState=et,_e.childLanes=o.childLanes&~_,s.memoizedState=nj,j}return _e=o.child,o=_e.sibling,j=wh(_e,{mode:"visible",children:j.children}),!(s.mode&1)&&(j.lanes=_),j.return=s,j.sibling=null,o!==null&&(_=s.deletions,_===null?(s.deletions=[o],s.flags|=16):_.push(o)),s.child=j,s.memoizedState=null,j}function rj(o,s){return s=qj({mode:"visible",children:s},o.mode,0,null),s.return=o,o.child=s}function tj(o,s,_,j){return j!==null&&Jg(j),Bh(s,o.child,null,_),o=rj(s,s.pendingProps.children),o.flags|=2,s.memoizedState=null,o}function sj(o,s,_,j,$,_e,et){if(_)return s.flags&256?(s.flags&=-257,j=Li(Error(p$1(422))),tj(o,s,et,j)):s.memoizedState!==null?(s.child=o.child,s.flags|=128,null):(_e=j.fallback,$=s.mode,j=qj({mode:"visible",children:j.children},$,0,null),_e=Ah(_e,$,et,null),_e.flags|=2,j.return=s,_e.return=s,j.sibling=_e,s.child=j,s.mode&1&&Bh(s,o.child,null,et),s.child.memoizedState=oj(et),s.memoizedState=nj,_e);if(!(s.mode&1))return tj(o,s,et,null);if($.data==="$!"){if(j=$.nextSibling&&$.nextSibling.dataset,j)var tt=j.dgst;return j=tt,_e=Error(p$1(419)),j=Li(_e,j,void 0),tj(o,s,et,j)}if(tt=(et&o.childLanes)!==0,Ug||tt){if(j=R,j!==null){switch(et&-et){case 4:$=2;break;case 16:$=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:$=32;break;case 536870912:$=268435456;break;default:$=0}$=$&(j.suspendedLanes|et)?0:$,$!==0&&$!==_e.retryLane&&(_e.retryLane=$,Zg(o,$),mh(j,o,$,-1))}return uj(),j=Li(Error(p$1(421))),tj(o,s,et,j)}return $.data==="$?"?(s.flags|=128,s.child=o.child,s=vj.bind(null,o),$._reactRetry=s,null):(o=_e.treeContext,yg=Lf($.nextSibling),xg=s,I=!0,zg=null,o!==null&&(og[pg++]=rg,og[pg++]=sg,og[pg++]=qg,rg=o.id,sg=o.overflow,qg=s),s=rj(s,j.children),s.flags|=4096,s)}function wj(o,s,_){o.lanes|=s;var j=o.alternate;j!==null&&(j.lanes|=s),Sg(o.return,s,_)}function xj(o,s,_,j,$){var _e=o.memoizedState;_e===null?o.memoizedState={isBackwards:s,rendering:null,renderingStartTime:0,last:j,tail:_,tailMode:$}:(_e.isBackwards=s,_e.rendering=null,_e.renderingStartTime=0,_e.last=j,_e.tail=_,_e.tailMode=$)}function yj(o,s,_){var j=s.pendingProps,$=j.revealOrder,_e=j.tail;if(Yi(o,s,j.children,_),j=M.current,j&2)j=j&1|2,s.flags|=128;else{if(o!==null&&o.flags&128)e:for(o=s.child;o!==null;){if(o.tag===13)o.memoizedState!==null&&wj(o,_,s);else if(o.tag===19)wj(o,_,s);else if(o.child!==null){o.child.return=o,o=o.child;continue}if(o===s)break e;for(;o.sibling===null;){if(o.return===null||o.return===s)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}j&=1}if(G(M,j),!(s.mode&1))s.memoizedState=null;else switch($){case"forwards":for(_=s.child,$=null;_!==null;)o=_.alternate,o!==null&&Mh(o)===null&&($=_),_=_.sibling;_=$,_===null?($=s.child,s.child=null):($=_.sibling,_.sibling=null),xj(s,!1,$,_,_e);break;case"backwards":for(_=null,$=s.child,s.child=null;$!==null;){if(o=$.alternate,o!==null&&Mh(o)===null){s.child=$;break}o=$.sibling,$.sibling=_,_=$,$=o}xj(s,!0,_,null,_e);break;case"together":xj(s,!1,null,null,void 0);break;default:s.memoizedState=null}return s.child}function jj(o,s){!(s.mode&1)&&o!==null&&(o.alternate=null,s.alternate=null,s.flags|=2)}function $i(o,s,_){if(o!==null&&(s.dependencies=o.dependencies),hh|=s.lanes,!(_&s.childLanes))return null;if(o!==null&&s.child!==o.child)throw Error(p$1(153));if(s.child!==null){for(o=s.child,_=wh(o,o.pendingProps),s.child=_,_.return=s;o.sibling!==null;)o=o.sibling,_=_.sibling=wh(o,o.pendingProps),_.return=s;_.sibling=null}return s.child}function zj(o,s,_){switch(s.tag){case 3:lj(s),Ig();break;case 5:Kh(s);break;case 1:Zf(s.type)&&cg(s);break;case 4:Ih(s,s.stateNode.containerInfo);break;case 10:var j=s.type._context,$=s.memoizedProps.value;G(Mg,j._currentValue),j._currentValue=$;break;case 13:if(j=s.memoizedState,j!==null)return j.dehydrated!==null?(G(M,M.current&1),s.flags|=128,null):_&s.child.childLanes?pj(o,s,_):(G(M,M.current&1),o=$i(o,s,_),o!==null?o.sibling:null);G(M,M.current&1);break;case 19:if(j=(_&s.childLanes)!==0,o.flags&128){if(j)return yj(o,s,_);s.flags|=128}if($=s.memoizedState,$!==null&&($.rendering=null,$.tail=null,$.lastEffect=null),G(M,M.current),j)break;return null;case 22:case 23:return s.lanes=0,ej(o,s,_)}return $i(o,s,_)}var Aj,Bj,Cj,Dj;Aj=function(o,s){for(var _=s.child;_!==null;){if(_.tag===5||_.tag===6)o.appendChild(_.stateNode);else if(_.tag!==4&&_.child!==null){_.child.return=_,_=_.child;continue}if(_===s)break;for(;_.sibling===null;){if(_.return===null||_.return===s)return;_=_.return}_.sibling.return=_.return,_=_.sibling}};Bj=function(){};Cj=function(o,s,_,j){var $=o.memoizedProps;if($!==j){o=s.stateNode,Hh(Eh.current);var _e=null;switch(_){case"input":$=Ya(o,$),j=Ya(o,j),_e=[];break;case"select":$=A$1({},$,{value:void 0}),j=A$1({},j,{value:void 0}),_e=[];break;case"textarea":$=gb(o,$),j=gb(o,j),_e=[];break;default:typeof $.onClick!="function"&&typeof j.onClick=="function"&&(o.onclick=Bf)}ub(_,j);var et;_=null;for(rt in $)if(!j.hasOwnProperty(rt)&&$.hasOwnProperty(rt)&&$[rt]!=null)if(rt==="style"){var tt=$[rt];for(et in tt)tt.hasOwnProperty(et)&&(_||(_={}),_[et]="")}else rt!=="dangerouslySetInnerHTML"&&rt!=="children"&&rt!=="suppressContentEditableWarning"&&rt!=="suppressHydrationWarning"&&rt!=="autoFocus"&&(ea.hasOwnProperty(rt)?_e||(_e=[]):(_e=_e||[]).push(rt,null));for(rt in j){var nt=j[rt];if(tt=$!=null?$[rt]:void 0,j.hasOwnProperty(rt)&&nt!==tt&&(nt!=null||tt!=null))if(rt==="style")if(tt){for(et in tt)!tt.hasOwnProperty(et)||nt&&nt.hasOwnProperty(et)||(_||(_={}),_[et]="");for(et in nt)nt.hasOwnProperty(et)&&tt[et]!==nt[et]&&(_||(_={}),_[et]=nt[et])}else _||(_e||(_e=[]),_e.push(rt,_)),_=nt;else rt==="dangerouslySetInnerHTML"?(nt=nt?nt.__html:void 0,tt=tt?tt.__html:void 0,nt!=null&&tt!==nt&&(_e=_e||[]).push(rt,nt)):rt==="children"?typeof nt!="string"&&typeof nt!="number"||(_e=_e||[]).push(rt,""+nt):rt!=="suppressContentEditableWarning"&&rt!=="suppressHydrationWarning"&&(ea.hasOwnProperty(rt)?(nt!=null&&rt==="onScroll"&&D("scroll",o),_e||tt===nt||(_e=[])):(_e=_e||[]).push(rt,nt))}_&&(_e=_e||[]).push("style",_);var rt=_e;(s.updateQueue=rt)&&(s.flags|=4)}};Dj=function(o,s,_,j){_!==j&&(s.flags|=4)};function Ej(o,s){if(!I)switch(o.tailMode){case"hidden":s=o.tail;for(var _=null;s!==null;)s.alternate!==null&&(_=s),s=s.sibling;_===null?o.tail=null:_.sibling=null;break;case"collapsed":_=o.tail;for(var j=null;_!==null;)_.alternate!==null&&(j=_),_=_.sibling;j===null?s||o.tail===null?o.tail=null:o.tail.sibling=null:j.sibling=null}}function S(o){var s=o.alternate!==null&&o.alternate.child===o.child,_=0,j=0;if(s)for(var $=o.child;$!==null;)_|=$.lanes|$.childLanes,j|=$.subtreeFlags&14680064,j|=$.flags&14680064,$.return=o,$=$.sibling;else for($=o.child;$!==null;)_|=$.lanes|$.childLanes,j|=$.subtreeFlags,j|=$.flags,$.return=o,$=$.sibling;return o.subtreeFlags|=j,o.childLanes=_,s}function Fj(o,s,_){var j=s.pendingProps;switch(wg(s),s.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return S(s),null;case 1:return Zf(s.type)&&$f(),S(s),null;case 3:return j=s.stateNode,Jh(),E(Wf),E(H),Oh(),j.pendingContext&&(j.context=j.pendingContext,j.pendingContext=null),(o===null||o.child===null)&&(Gg(s)?s.flags|=4:o===null||o.memoizedState.isDehydrated&&!(s.flags&256)||(s.flags|=1024,zg!==null&&(Gj(zg),zg=null))),Bj(o,s),S(s),null;case 5:Lh(s);var $=Hh(Gh.current);if(_=s.type,o!==null&&s.stateNode!=null)Cj(o,s,_,j,$),o.ref!==s.ref&&(s.flags|=512,s.flags|=2097152);else{if(!j){if(s.stateNode===null)throw Error(p$1(166));return S(s),null}if(o=Hh(Eh.current),Gg(s)){j=s.stateNode,_=s.type;var _e=s.memoizedProps;switch(j[Of]=s,j[Pf]=_e,o=(s.mode&1)!==0,_){case"dialog":D("cancel",j),D("close",j);break;case"iframe":case"object":case"embed":D("load",j);break;case"video":case"audio":for($=0;$<\/script>",o=o.removeChild(o.firstChild)):typeof j.is=="string"?o=et.createElement(_,{is:j.is}):(o=et.createElement(_),_==="select"&&(et=o,j.multiple?et.multiple=!0:j.size&&(et.size=j.size))):o=et.createElementNS(o,_),o[Of]=s,o[Pf]=j,Aj(o,s,!1,!1),s.stateNode=o;e:{switch(et=vb(_,j),_){case"dialog":D("cancel",o),D("close",o),$=j;break;case"iframe":case"object":case"embed":D("load",o),$=j;break;case"video":case"audio":for($=0;$Hj&&(s.flags|=128,j=!0,Ej(_e,!1),s.lanes=4194304)}else{if(!j)if(o=Mh(et),o!==null){if(s.flags|=128,j=!0,_=o.updateQueue,_!==null&&(s.updateQueue=_,s.flags|=4),Ej(_e,!0),_e.tail===null&&_e.tailMode==="hidden"&&!et.alternate&&!I)return S(s),null}else 2*B()-_e.renderingStartTime>Hj&&_!==1073741824&&(s.flags|=128,j=!0,Ej(_e,!1),s.lanes=4194304);_e.isBackwards?(et.sibling=s.child,s.child=et):(_=_e.last,_!==null?_.sibling=et:s.child=et,_e.last=et)}return _e.tail!==null?(s=_e.tail,_e.rendering=s,_e.tail=s.sibling,_e.renderingStartTime=B(),s.sibling=null,_=M.current,G(M,j?_&1|2:_&1),s):(S(s),null);case 22:case 23:return Ij(),j=s.memoizedState!==null,o!==null&&o.memoizedState!==null!==j&&(s.flags|=8192),j&&s.mode&1?gj&1073741824&&(S(s),s.subtreeFlags&6&&(s.flags|=8192)):S(s),null;case 24:return null;case 25:return null}throw Error(p$1(156,s.tag))}function Jj(o,s){switch(wg(s),s.tag){case 1:return Zf(s.type)&&$f(),o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 3:return Jh(),E(Wf),E(H),Oh(),o=s.flags,o&65536&&!(o&128)?(s.flags=o&-65537|128,s):null;case 5:return Lh(s),null;case 13:if(E(M),o=s.memoizedState,o!==null&&o.dehydrated!==null){if(s.alternate===null)throw Error(p$1(340));Ig()}return o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 19:return E(M),null;case 4:return Jh(),null;case 10:return Rg(s.type._context),null;case 22:case 23:return Ij(),null;case 24:return null;default:return null}}var Kj=!1,U=!1,Lj=typeof WeakSet=="function"?WeakSet:Set,V=null;function Mj(o,s){var _=o.ref;if(_!==null)if(typeof _=="function")try{_(null)}catch(j){W(o,s,j)}else _.current=null}function Nj(o,s,_){try{_()}catch(j){W(o,s,j)}}var Oj=!1;function Pj(o,s){if(Cf=dd,o=Me(),Ne(o)){if("selectionStart"in o)var _={start:o.selectionStart,end:o.selectionEnd};else e:{_=(_=o.ownerDocument)&&_.defaultView||window;var j=_.getSelection&&_.getSelection();if(j&&j.rangeCount!==0){_=j.anchorNode;var $=j.anchorOffset,_e=j.focusNode;j=j.focusOffset;try{_.nodeType,_e.nodeType}catch{_=null;break e}var et=0,tt=-1,nt=-1,rt=0,it=0,st=o,ut=null;t:for(;;){for(var Ft;st!==_||$!==0&&st.nodeType!==3||(tt=et+$),st!==_e||j!==0&&st.nodeType!==3||(nt=et+j),st.nodeType===3&&(et+=st.nodeValue.length),(Ft=st.firstChild)!==null;)ut=st,st=Ft;for(;;){if(st===o)break t;if(ut===_&&++rt===$&&(tt=et),ut===_e&&++it===j&&(nt=et),(Ft=st.nextSibling)!==null)break;st=ut,ut=st.parentNode}st=Ft}_=tt===-1||nt===-1?null:{start:tt,end:nt}}else _=null}_=_||{start:0,end:0}}else _=null;for(Df={focusedElem:o,selectionRange:_},dd=!1,V=s;V!==null;)if(s=V,o=s.child,(s.subtreeFlags&1028)!==0&&o!==null)o.return=s,V=o;else for(;V!==null;){s=V;try{var dt=s.alternate;if(s.flags&1024)switch(s.tag){case 0:case 11:case 15:break;case 1:if(dt!==null){var gt=dt.memoizedProps,Ut=dt.memoizedState,ht=s.stateNode,ft=ht.getSnapshotBeforeUpdate(s.elementType===s.type?gt:Lg(s.type,gt),Ut);ht.__reactInternalSnapshotBeforeUpdate=ft}break;case 3:var pt=s.stateNode.containerInfo;pt.nodeType===1?pt.textContent="":pt.nodeType===9&&pt.documentElement&&pt.removeChild(pt.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p$1(163))}}catch(Rt){W(s,s.return,Rt)}if(o=s.sibling,o!==null){o.return=s.return,V=o;break}V=s.return}return dt=Oj,Oj=!1,dt}function Qj(o,s,_){var j=s.updateQueue;if(j=j!==null?j.lastEffect:null,j!==null){var $=j=j.next;do{if(($.tag&o)===o){var _e=$.destroy;$.destroy=void 0,_e!==void 0&&Nj(s,_,_e)}$=$.next}while($!==j)}}function Rj(o,s){if(s=s.updateQueue,s=s!==null?s.lastEffect:null,s!==null){var _=s=s.next;do{if((_.tag&o)===o){var j=_.create;_.destroy=j()}_=_.next}while(_!==s)}}function Sj(o){var s=o.ref;if(s!==null){var _=o.stateNode;switch(o.tag){case 5:o=_;break;default:o=_}typeof s=="function"?s(o):s.current=o}}function Tj(o){var s=o.alternate;s!==null&&(o.alternate=null,Tj(s)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(s=o.stateNode,s!==null&&(delete s[Of],delete s[Pf],delete s[of],delete s[Qf],delete s[Rf])),o.stateNode=null,o.return=null,o.dependencies=null,o.memoizedProps=null,o.memoizedState=null,o.pendingProps=null,o.stateNode=null,o.updateQueue=null}function Uj(o){return o.tag===5||o.tag===3||o.tag===4}function Vj(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||Uj(o.return))return null;o=o.return}for(o.sibling.return=o.return,o=o.sibling;o.tag!==5&&o.tag!==6&&o.tag!==18;){if(o.flags&2||o.child===null||o.tag===4)continue e;o.child.return=o,o=o.child}if(!(o.flags&2))return o.stateNode}}function Wj(o,s,_){var j=o.tag;if(j===5||j===6)o=o.stateNode,s?_.nodeType===8?_.parentNode.insertBefore(o,s):_.insertBefore(o,s):(_.nodeType===8?(s=_.parentNode,s.insertBefore(o,_)):(s=_,s.appendChild(o)),_=_._reactRootContainer,_!=null||s.onclick!==null||(s.onclick=Bf));else if(j!==4&&(o=o.child,o!==null))for(Wj(o,s,_),o=o.sibling;o!==null;)Wj(o,s,_),o=o.sibling}function Xj(o,s,_){var j=o.tag;if(j===5||j===6)o=o.stateNode,s?_.insertBefore(o,s):_.appendChild(o);else if(j!==4&&(o=o.child,o!==null))for(Xj(o,s,_),o=o.sibling;o!==null;)Xj(o,s,_),o=o.sibling}var X=null,Yj=!1;function Zj(o,s,_){for(_=_.child;_!==null;)ak(o,s,_),_=_.sibling}function ak(o,s,_){if(lc&&typeof lc.onCommitFiberUnmount=="function")try{lc.onCommitFiberUnmount(kc,_)}catch{}switch(_.tag){case 5:U||Mj(_,s);case 6:var j=X,$=Yj;X=null,Zj(o,s,_),X=j,Yj=$,X!==null&&(Yj?(o=X,_=_.stateNode,o.nodeType===8?o.parentNode.removeChild(_):o.removeChild(_)):X.removeChild(_.stateNode));break;case 18:X!==null&&(Yj?(o=X,_=_.stateNode,o.nodeType===8?Kf(o.parentNode,_):o.nodeType===1&&Kf(o,_),bd(o)):Kf(X,_.stateNode));break;case 4:j=X,$=Yj,X=_.stateNode.containerInfo,Yj=!0,Zj(o,s,_),X=j,Yj=$;break;case 0:case 11:case 14:case 15:if(!U&&(j=_.updateQueue,j!==null&&(j=j.lastEffect,j!==null))){$=j=j.next;do{var _e=$,et=_e.destroy;_e=_e.tag,et!==void 0&&(_e&2||_e&4)&&Nj(_,s,et),$=$.next}while($!==j)}Zj(o,s,_);break;case 1:if(!U&&(Mj(_,s),j=_.stateNode,typeof j.componentWillUnmount=="function"))try{j.props=_.memoizedProps,j.state=_.memoizedState,j.componentWillUnmount()}catch(tt){W(_,s,tt)}Zj(o,s,_);break;case 21:Zj(o,s,_);break;case 22:_.mode&1?(U=(j=U)||_.memoizedState!==null,Zj(o,s,_),U=j):Zj(o,s,_);break;default:Zj(o,s,_)}}function bk(o){var s=o.updateQueue;if(s!==null){o.updateQueue=null;var _=o.stateNode;_===null&&(_=o.stateNode=new Lj),s.forEach(function(j){var $=ck.bind(null,o,j);_.has(j)||(_.add(j),j.then($,$))})}}function dk(o,s){var _=s.deletions;if(_!==null)for(var j=0;j<_.length;j++){var $=_[j];try{var _e=o,et=s,tt=et;e:for(;tt!==null;){switch(tt.tag){case 5:X=tt.stateNode,Yj=!1;break e;case 3:X=tt.stateNode.containerInfo,Yj=!0;break e;case 4:X=tt.stateNode.containerInfo,Yj=!0;break e}tt=tt.return}if(X===null)throw Error(p$1(160));ak(_e,et,$),X=null,Yj=!1;var nt=$.alternate;nt!==null&&(nt.return=null),$.return=null}catch(rt){W($,s,rt)}}if(s.subtreeFlags&12854)for(s=s.child;s!==null;)ek(s,o),s=s.sibling}function ek(o,s){var _=o.alternate,j=o.flags;switch(o.tag){case 0:case 11:case 14:case 15:if(dk(s,o),fk(o),j&4){try{Qj(3,o,o.return),Rj(3,o)}catch(gt){W(o,o.return,gt)}try{Qj(5,o,o.return)}catch(gt){W(o,o.return,gt)}}break;case 1:dk(s,o),fk(o),j&512&&_!==null&&Mj(_,_.return);break;case 5:if(dk(s,o),fk(o),j&512&&_!==null&&Mj(_,_.return),o.flags&32){var $=o.stateNode;try{ob($,"")}catch(gt){W(o,o.return,gt)}}if(j&4&&($=o.stateNode,$!=null)){var _e=o.memoizedProps,et=_!==null?_.memoizedProps:_e,tt=o.type,nt=o.updateQueue;if(o.updateQueue=null,nt!==null)try{tt==="input"&&_e.type==="radio"&&_e.name!=null&&ab($,_e),vb(tt,et);var rt=vb(tt,_e);for(et=0;et$&&($=et),j&=~_e}if(j=$,j=B()-j,j=(120>j?120:480>j?480:1080>j?1080:1920>j?1920:3e3>j?3e3:4320>j?4320:1960*mk(j/1960))-j,10o?16:o,xk===null)var j=!1;else{if(o=xk,xk=null,yk=0,K&6)throw Error(p$1(331));var $=K;for(K|=4,V=o.current;V!==null;){var _e=V,et=_e.child;if(V.flags&16){var tt=_e.deletions;if(tt!==null){for(var nt=0;ntB()-gk?Lk(o,0):sk|=_),Ek(o,s)}function Zk(o,s){s===0&&(o.mode&1?(s=sc,sc<<=1,!(sc&130023424)&&(sc=4194304)):s=1);var _=L();o=Zg(o,s),o!==null&&(Ac(o,s,_),Ek(o,_))}function vj(o){var s=o.memoizedState,_=0;s!==null&&(_=s.retryLane),Zk(o,_)}function ck(o,s){var _=0;switch(o.tag){case 13:var j=o.stateNode,$=o.memoizedState;$!==null&&(_=$.retryLane);break;case 19:j=o.stateNode;break;default:throw Error(p$1(314))}j!==null&&j.delete(s),Zk(o,_)}var Wk;Wk=function(o,s,_){if(o!==null)if(o.memoizedProps!==s.pendingProps||Wf.current)Ug=!0;else{if(!(o.lanes&_)&&!(s.flags&128))return Ug=!1,zj(o,s,_);Ug=!!(o.flags&131072)}else Ug=!1,I&&s.flags&1048576&&ug(s,ng,s.index);switch(s.lanes=0,s.tag){case 2:var j=s.type;jj(o,s),o=s.pendingProps;var $=Yf(s,H.current);Tg(s,_),$=Xh(null,s,j,o,$,_);var _e=bi();return s.flags|=1,typeof $=="object"&&$!==null&&typeof $.render=="function"&&$.$$typeof===void 0?(s.tag=1,s.memoizedState=null,s.updateQueue=null,Zf(j)?(_e=!0,cg(s)):_e=!1,s.memoizedState=$.state!==null&&$.state!==void 0?$.state:null,ah(s),$.updater=nh,s.stateNode=$,$._reactInternals=s,rh(s,j,o,_),s=kj(null,s,j,!0,_e,_)):(s.tag=0,I&&_e&&vg(s),Yi(null,s,$,_),s=s.child),s;case 16:j=s.elementType;e:{switch(jj(o,s),o=s.pendingProps,$=j._init,j=$(j._payload),s.type=j,$=s.tag=$k(j),o=Lg(j,o),$){case 0:s=dj(null,s,j,o,_);break e;case 1:s=ij(null,s,j,o,_);break e;case 11:s=Zi(null,s,j,o,_);break e;case 14:s=aj(null,s,j,Lg(j.type,o),_);break e}throw Error(p$1(306,j,""))}return s;case 0:return j=s.type,$=s.pendingProps,$=s.elementType===j?$:Lg(j,$),dj(o,s,j,$,_);case 1:return j=s.type,$=s.pendingProps,$=s.elementType===j?$:Lg(j,$),ij(o,s,j,$,_);case 3:e:{if(lj(s),o===null)throw Error(p$1(387));j=s.pendingProps,_e=s.memoizedState,$=_e.element,bh(o,s),gh(s,j,null,_);var et=s.memoizedState;if(j=et.element,_e.isDehydrated)if(_e={element:j,isDehydrated:!1,cache:et.cache,pendingSuspenseBoundaries:et.pendingSuspenseBoundaries,transitions:et.transitions},s.updateQueue.baseState=_e,s.memoizedState=_e,s.flags&256){$=Ki(Error(p$1(423)),s),s=mj(o,s,j,_,$);break e}else if(j!==$){$=Ki(Error(p$1(424)),s),s=mj(o,s,j,_,$);break e}else for(yg=Lf(s.stateNode.containerInfo.firstChild),xg=s,I=!0,zg=null,_=Ch(s,null,j,_),s.child=_;_;)_.flags=_.flags&-3|4096,_=_.sibling;else{if(Ig(),j===$){s=$i(o,s,_);break e}Yi(o,s,j,_)}s=s.child}return s;case 5:return Kh(s),o===null&&Eg(s),j=s.type,$=s.pendingProps,_e=o!==null?o.memoizedProps:null,et=$.children,Ef(j,$)?et=null:_e!==null&&Ef(j,_e)&&(s.flags|=32),hj(o,s),Yi(o,s,et,_),s.child;case 6:return o===null&&Eg(s),null;case 13:return pj(o,s,_);case 4:return Ih(s,s.stateNode.containerInfo),j=s.pendingProps,o===null?s.child=Bh(s,null,j,_):Yi(o,s,j,_),s.child;case 11:return j=s.type,$=s.pendingProps,$=s.elementType===j?$:Lg(j,$),Zi(o,s,j,$,_);case 7:return Yi(o,s,s.pendingProps,_),s.child;case 8:return Yi(o,s,s.pendingProps.children,_),s.child;case 12:return Yi(o,s,s.pendingProps.children,_),s.child;case 10:e:{if(j=s.type._context,$=s.pendingProps,_e=s.memoizedProps,et=$.value,G(Mg,j._currentValue),j._currentValue=et,_e!==null)if(He(_e.value,et)){if(_e.children===$.children&&!Wf.current){s=$i(o,s,_);break e}}else for(_e=s.child,_e!==null&&(_e.return=s);_e!==null;){var tt=_e.dependencies;if(tt!==null){et=_e.child;for(var nt=tt.firstContext;nt!==null;){if(nt.context===j){if(_e.tag===1){nt=ch(-1,_&-_),nt.tag=2;var rt=_e.updateQueue;if(rt!==null){rt=rt.shared;var it=rt.pending;it===null?nt.next=nt:(nt.next=it.next,it.next=nt),rt.pending=nt}}_e.lanes|=_,nt=_e.alternate,nt!==null&&(nt.lanes|=_),Sg(_e.return,_,s),tt.lanes|=_;break}nt=nt.next}}else if(_e.tag===10)et=_e.type===s.type?null:_e.child;else if(_e.tag===18){if(et=_e.return,et===null)throw Error(p$1(341));et.lanes|=_,tt=et.alternate,tt!==null&&(tt.lanes|=_),Sg(et,_,s),et=_e.sibling}else et=_e.child;if(et!==null)et.return=_e;else for(et=_e;et!==null;){if(et===s){et=null;break}if(_e=et.sibling,_e!==null){_e.return=et.return,et=_e;break}et=et.return}_e=et}Yi(o,s,$.children,_),s=s.child}return s;case 9:return $=s.type,j=s.pendingProps.children,Tg(s,_),$=Vg($),j=j($),s.flags|=1,Yi(o,s,j,_),s.child;case 14:return j=s.type,$=Lg(j,s.pendingProps),$=Lg(j.type,$),aj(o,s,j,$,_);case 15:return cj(o,s,s.type,s.pendingProps,_);case 17:return j=s.type,$=s.pendingProps,$=s.elementType===j?$:Lg(j,$),jj(o,s),s.tag=1,Zf(j)?(o=!0,cg(s)):o=!1,Tg(s,_),ph(s,j,$),rh(s,j,$,_),kj(null,s,j,!0,o,_);case 19:return yj(o,s,_);case 22:return ej(o,s,_)}throw Error(p$1(156,s.tag))};function Gk(o,s){return ac(o,s)}function al(o,s,_,j){this.tag=o,this.key=_,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=s,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=j,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Bg(o,s,_,j){return new al(o,s,_,j)}function bj(o){return o=o.prototype,!(!o||!o.isReactComponent)}function $k(o){if(typeof o=="function")return bj(o)?1:0;if(o!=null){if(o=o.$$typeof,o===Da)return 11;if(o===Ga)return 14}return 2}function wh(o,s){var _=o.alternate;return _===null?(_=Bg(o.tag,s,o.key,o.mode),_.elementType=o.elementType,_.type=o.type,_.stateNode=o.stateNode,_.alternate=o,o.alternate=_):(_.pendingProps=s,_.type=o.type,_.flags=0,_.subtreeFlags=0,_.deletions=null),_.flags=o.flags&14680064,_.childLanes=o.childLanes,_.lanes=o.lanes,_.child=o.child,_.memoizedProps=o.memoizedProps,_.memoizedState=o.memoizedState,_.updateQueue=o.updateQueue,s=o.dependencies,_.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},_.sibling=o.sibling,_.index=o.index,_.ref=o.ref,_}function yh(o,s,_,j,$,_e){var et=2;if(j=o,typeof o=="function")bj(o)&&(et=1);else if(typeof o=="string")et=5;else e:switch(o){case ya:return Ah(_.children,$,_e,s);case za:et=8,$|=8;break;case Aa:return o=Bg(12,_,s,$|2),o.elementType=Aa,o.lanes=_e,o;case Ea:return o=Bg(13,_,s,$),o.elementType=Ea,o.lanes=_e,o;case Fa:return o=Bg(19,_,s,$),o.elementType=Fa,o.lanes=_e,o;case Ia:return qj(_,$,_e,s);default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case Ba:et=10;break e;case Ca:et=9;break e;case Da:et=11;break e;case Ga:et=14;break e;case Ha:et=16,j=null;break e}throw Error(p$1(130,o==null?o:typeof o,""))}return s=Bg(et,_,s,$),s.elementType=o,s.type=j,s.lanes=_e,s}function Ah(o,s,_,j){return o=Bg(7,o,j,s),o.lanes=_,o}function qj(o,s,_,j){return o=Bg(22,o,j,s),o.elementType=Ia,o.lanes=_,o.stateNode={isHidden:!1},o}function xh(o,s,_){return o=Bg(6,o,null,s),o.lanes=_,o}function zh(o,s,_){return s=Bg(4,o.children!==null?o.children:[],o.key,s),s.lanes=_,s.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},s}function bl(o,s,_,j,$){this.tag=s,this.containerInfo=o,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=zc(0),this.expirationTimes=zc(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=zc(0),this.identifierPrefix=j,this.onRecoverableError=$,this.mutableSourceEagerHydrationData=null}function cl(o,s,_,j,$,_e,et,tt,nt){return o=new bl(o,s,_,tt,nt),s===1?(s=1,_e===!0&&(s|=8)):s=0,_e=Bg(3,null,null,s),o.current=_e,_e.stateNode=o,_e.memoizedState={element:j,isDehydrated:_,cache:null,transitions:null,pendingSuspenseBoundaries:null},ah(_e),o}function dl(o,s,_){var j=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(_){console.error(_)}}s(),o.exports=reactDom_production_min})(reactDom);var m$1=reactDomExports;client.createRoot=m$1.createRoot,client.hydrateRoot=m$1.hydrateRoot;function sheetForTag(o){if(o.sheet)return o.sheet;for(var s=0;s0?charat(characters,--position):0,column--,character===10&&(column=1,line--),character}function next(){return character=position2||token(character)>3?"":" "}function escaping(o,s){for(;--s&&next()&&!(character<48||character>102||character>57&&character<65||character>70&&character<97););return slice(o,caret()+(s<6&&peek()==32&&next()==32))}function delimiter(o){for(;next();)switch(character){case o:return position;case 34:case 39:o!==34&&o!==39&&delimiter(character);break;case 40:o===41&&delimiter(o);break;case 92:next();break}return position}function commenter(o,s){for(;next()&&o+character!==47+10;)if(o+character===42+42&&peek()===47)break;return"/*"+slice(s,position-1)+"*"+from$1(o===47?o:next())}function identifier(o){for(;!token(peek());)next();return slice(o,position)}function compile(o){return dealloc(parse$1("",null,null,null,[""],o=alloc(o),0,[0],o))}function parse$1(o,s,_,j,$,_e,et,tt,nt){for(var rt=0,it=0,st=et,ut=0,Ft=0,dt=0,gt=1,Ut=1,ht=1,ft=0,pt="",Rt=$,Qt=_e,Nt=j,At=pt;Ut;)switch(dt=ft,ft=next()){case 40:if(dt!=108&&charat(At,st-1)==58){indexof(At+=replace(delimit(ft),"&","&\f"),"&\f")!=-1&&(ht=-1);break}case 34:case 39:case 91:At+=delimit(ft);break;case 9:case 10:case 13:case 32:At+=whitespace(dt);break;case 92:At+=escaping(caret()-1,7);continue;case 47:switch(peek()){case 42:case 47:append(comment(commenter(next(),caret()),s,_),nt);break;default:At+="/"}break;case 123*gt:tt[rt++]=strlen(At)*ht;case 125*gt:case 59:case 0:switch(ft){case 0:case 125:Ut=0;case 59+it:Ft>0&&strlen(At)-st&&append(Ft>32?declaration(At+";",j,_,st-1):declaration(replace(At," ","")+";",j,_,st-2),nt);break;case 59:At+=";";default:if(append(Nt=ruleset(At,s,_,rt,it,$,tt,pt,Rt=[],Qt=[],st),_e),ft===123)if(it===0)parse$1(At,s,Nt,Nt,Rt,_e,st,tt,Qt);else switch(ut===99&&charat(At,3)===110?100:ut){case 100:case 109:case 115:parse$1(o,Nt,Nt,j&&append(ruleset(o,Nt,Nt,0,0,$,tt,pt,$,Rt=[],st),Qt),$,Qt,st,tt,j?Rt:Qt);break;default:parse$1(At,Nt,Nt,Nt,[""],Qt,0,tt,Qt)}}rt=it=Ft=0,gt=ht=1,pt=At="",st=et;break;case 58:st=1+strlen(At),Ft=dt;default:if(gt<1){if(ft==123)--gt;else if(ft==125&>++==0&&prev()==125)continue}switch(At+=from$1(ft),ft*gt){case 38:ht=it>0?1:(At+="\f",-1);break;case 44:tt[rt++]=(strlen(At)-1)*ht,ht=1;break;case 64:peek()===45&&(At+=delimit(next())),ut=peek(),it=st=strlen(pt=At+=identifier(caret())),ft++;break;case 45:dt===45&&strlen(At)==2&&(gt=0)}}return _e}function ruleset(o,s,_,j,$,_e,et,tt,nt,rt,it){for(var st=$-1,ut=$===0?_e:[""],Ft=sizeof(ut),dt=0,gt=0,Ut=0;dt0?ut[ht]+" "+ft:replace(ft,/&\f/g,ut[ht])))&&(nt[Ut++]=pt);return node(o,s,_,$===0?RULESET:tt,nt,rt,it)}function comment(o,s,_){return node(o,s,_,COMMENT,from$1(char()),substr(o,2,-2),0)}function declaration(o,s,_,j){return node(o,s,_,DECLARATION,substr(o,0,j),substr(o,j+1,-1),j)}function serialize(o,s){for(var _="",j=sizeof(o),$=0;$6)switch(charat(o,s+1)){case 109:if(charat(o,s+4)!==45)break;case 102:return replace(o,/(.+:)(.+)-([^]+)/,"$1"+WEBKIT+"$2-$3$1"+MOZ+(charat(o,s+3)==108?"$3":"$2-$3"))+o;case 115:return~indexof(o,"stretch")?prefix(replace(o,"stretch","fill-available"),s)+o:o}break;case 4949:if(charat(o,s+1)!==115)break;case 6444:switch(charat(o,strlen(o)-3-(~indexof(o,"!important")&&10))){case 107:return replace(o,":",":"+WEBKIT)+o;case 101:return replace(o,/(.+:)([^;!]+)(;|!.+)?/,"$1"+WEBKIT+(charat(o,14)===45?"inline-":"")+"box$3$1"+WEBKIT+"$2$3$1"+MS+"$2box$3")+o}break;case 5936:switch(charat(o,s+11)){case 114:return WEBKIT+o+MS+replace(o,/[svh]\w+-[tblr]{2}/,"tb")+o;case 108:return WEBKIT+o+MS+replace(o,/[svh]\w+-[tblr]{2}/,"tb-rl")+o;case 45:return WEBKIT+o+MS+replace(o,/[svh]\w+-[tblr]{2}/,"lr")+o}return WEBKIT+o+MS+o+o}return o}var prefixer=function(s,_,j,$){if(s.length>-1&&!s.return)switch(s.type){case DECLARATION:s.return=prefix(s.value,s.length);break;case KEYFRAMES:return serialize([copy(s,{value:replace(s.value,"@","@"+WEBKIT)})],$);case RULESET:if(s.length)return combine(s.props,function(_e){switch(match(_e,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return serialize([copy(s,{props:[replace(_e,/:(read-\w+)/,":"+MOZ+"$1")]})],$);case"::placeholder":return serialize([copy(s,{props:[replace(_e,/:(plac\w+)/,":"+WEBKIT+"input-$1")]}),copy(s,{props:[replace(_e,/:(plac\w+)/,":"+MOZ+"$1")]}),copy(s,{props:[replace(_e,/:(plac\w+)/,MS+"input-$1")]})],$)}return""})}},defaultStylisPlugins=[prefixer],createCache=function(s){var _=s.key;if(_==="css"){var j=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(j,function(gt){var Ut=gt.getAttribute("data-emotion");Ut.indexOf(" ")!==-1&&(document.head.appendChild(gt),gt.setAttribute("data-s",""))})}var $=s.stylisPlugins||defaultStylisPlugins,_e={},et,tt=[];et=s.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+_+' "]'),function(gt){for(var Ut=gt.getAttribute("data-emotion").split(" "),ht=1;ht=4;++j,$-=4)_=o.charCodeAt(j)&255|(o.charCodeAt(++j)&255)<<8|(o.charCodeAt(++j)&255)<<16|(o.charCodeAt(++j)&255)<<24,_=(_&65535)*1540483477+((_>>>16)*59797<<16),_^=_>>>24,s=(_&65535)*1540483477+((_>>>16)*59797<<16)^(s&65535)*1540483477+((s>>>16)*59797<<16);switch($){case 3:s^=(o.charCodeAt(j+2)&255)<<16;case 2:s^=(o.charCodeAt(j+1)&255)<<8;case 1:s^=o.charCodeAt(j)&255,s=(s&65535)*1540483477+((s>>>16)*59797<<16)}return s^=s>>>13,s=(s&65535)*1540483477+((s>>>16)*59797<<16),((s^s>>>15)>>>0).toString(36)}var unitlessKeys={animationIterationCount:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},hyphenateRegex=/[A-Z]|^ms/g,animationRegex=/_EMO_([^_]+?)_([^]*?)_EMO_/g,isCustomProperty=function(s){return s.charCodeAt(1)===45},isProcessableValue=function(s){return s!=null&&typeof s!="boolean"},processStyleName=memoize$1(function(o){return isCustomProperty(o)?o:o.replace(hyphenateRegex,"-$&").toLowerCase()}),processStyleValue=function(s,_){switch(s){case"animation":case"animationName":if(typeof _=="string")return _.replace(animationRegex,function(j,$,_e){return cursor={name:$,styles:_e,next:cursor},$})}return unitlessKeys[s]!==1&&!isCustomProperty(s)&&typeof _=="number"&&_!==0?_+"px":_},noComponentSelectorMessage="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";function handleInterpolation(o,s,_){if(_==null)return"";if(_.__emotion_styles!==void 0)return _;switch(typeof _){case"boolean":return"";case"object":{if(_.anim===1)return cursor={name:_.name,styles:_.styles,next:cursor},_.name;if(_.styles!==void 0){var j=_.next;if(j!==void 0)for(;j!==void 0;)cursor={name:j.name,styles:j.styles,next:cursor},j=j.next;var $=_.styles+";";return $}return createStringFromObject(o,s,_)}case"function":{if(o!==void 0){var _e=cursor,et=_(o);return cursor=_e,handleInterpolation(o,s,et)}break}}if(s==null)return _;var tt=s[_];return tt!==void 0?tt:_}function createStringFromObject(o,s,_){var j="";if(Array.isArray(_))for(var $=0;$<_.length;$++)j+=handleInterpolation(o,s,_[$])+";";else for(var _e in _){var et=_[_e];if(typeof et!="object")s!=null&&s[et]!==void 0?j+=_e+"{"+s[et]+"}":isProcessableValue(et)&&(j+=processStyleName(_e)+":"+processStyleValue(_e,et)+";");else if(Array.isArray(et)&&typeof et[0]=="string"&&(s==null||s[et[0]]===void 0))for(var tt=0;tt{s[_]=deepClone(o[_])}),s}function deepmerge(o,s,_={clone:!0}){const j=_.clone?_extends$1({},o):o;return isPlainObject(o)&&isPlainObject(s)&&Object.keys(s).forEach($=>{$!=="__proto__"&&(isPlainObject(s[$])&&$ in o&&isPlainObject(o[$])?j[$]=deepmerge(o[$],s[$],_):_.clone?j[$]=isPlainObject(s[$])?deepClone(s[$]):s[$]:j[$]=s[$])}),j}function formatMuiErrorMessage(o){let s="https://mui.com/production-error/?code="+o;for(let _=1;_{if(j.toString().match(/^(components|slots)$/))_[j]=_extends$1({},o[j],_[j]);else if(j.toString().match(/^(componentsProps|slotProps)$/)){const $=o[j]||{},_e=s[j];_[j]={},!_e||!Object.keys(_e)?_[j]=$:!$||!Object.keys($)?_[j]=_e:(_[j]=_extends$1({},_e),Object.keys($).forEach(et=>{_[j][et]=resolveProps($[et],_e[et])}))}else _[j]===void 0&&(_[j]=o[j])}),_}function composeClasses(o,s,_){const j={};return Object.keys(o).forEach($=>{j[$]=o[$].reduce((_e,et)=>(et&&(_e.push(s(et)),_&&_[et]&&_e.push(_[et])),_e),[]).join(" ")}),j}const defaultGenerator=o=>o,createClassNameGenerator=()=>{let o=defaultGenerator;return{configure(s){o=s},generate(s){return o(s)},reset(){o=defaultGenerator}}},ClassNameGenerator=createClassNameGenerator(),ClassNameGenerator$1=ClassNameGenerator,globalStateClassesMapping={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",required:"required",selected:"selected"};function generateUtilityClass(o,s,_="Mui"){const j=globalStateClassesMapping[s];return j?`${_}-${j}`:`${ClassNameGenerator$1.generate(o)}-${s}`}function generateUtilityClasses(o,s,_="Mui"){const j={};return s.forEach($=>{j[$]=generateUtilityClass(o,$,_)}),j}var reactPropsRegex=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,isPropValid=memoize$1(function(o){return reactPropsRegex.test(o)||o.charCodeAt(0)===111&&o.charCodeAt(1)===110&&o.charCodeAt(2)<91}),Global=withEmotionCache(function(o,s){var _=o.styles,j=serializeStyles([_],void 0,reactExports.useContext(ThemeContext$2)),$=reactExports.useRef();return useInsertionEffectWithLayoutFallback(function(){var _e=s.key+"-globalThis",et=new s.sheet.constructor({key:_e,nonce:s.sheet.nonce,container:s.sheet.container,speedy:s.sheet.isSpeedy}),tt=!1,nt=document.querySelector('style[data-emotion="'+_e+" "+j.name+'"]');return s.sheet.tags.length&&(et.before=s.sheet.tags[0]),nt!==null&&(tt=!0,nt.setAttribute("data-emotion",_e),et.hydrate([nt])),$.current=[et,tt],function(){et.flush()}},[s]),useInsertionEffectWithLayoutFallback(function(){var _e=$.current,et=_e[0],tt=_e[1];if(tt){_e[1]=!1;return}if(j.next!==void 0&&insertStyles(s,j.next,!0),et.tags.length){var nt=et.tags[et.tags.length-1].nextElementSibling;et.before=nt,et.flush()}s.insert("",j,et,!1)},[s,j.name]),null}),testOmitPropsOnStringTag=isPropValid,testOmitPropsOnComponent=function(s){return s!=="theme"},getDefaultShouldForwardProp=function(s){return typeof s=="string"&&s.charCodeAt(0)>96?testOmitPropsOnStringTag:testOmitPropsOnComponent},composeShouldForwardProps=function(s,_,j){var $;if(_){var _e=_.shouldForwardProp;$=s.__emotion_forwardProp&&_e?function(et){return s.__emotion_forwardProp(et)&&_e(et)}:_e}return typeof $!="function"&&j&&($=s.__emotion_forwardProp),$},Insertion=function(s){var _=s.cache,j=s.serialized,$=s.isStringTag;return registerStyles(_,j,$),useInsertionEffectAlwaysWithSyncFallback(function(){return insertStyles(_,j,$)}),null},createStyled$1=function o(s,_){var j=s.__emotion_real===s,$=j&&s.__emotion_base||s,_e,et;_!==void 0&&(_e=_.label,et=_.target);var tt=composeShouldForwardProps(s,_,j),nt=tt||getDefaultShouldForwardProp($),rt=!nt("as");return function(){var it=arguments,st=j&&s.__emotion_styles!==void 0?s.__emotion_styles.slice(0):[];if(_e!==void 0&&st.push("label:"+_e+";"),it[0]==null||it[0].raw===void 0)st.push.apply(st,it);else{st.push(it[0][0]);for(var ut=it.length,Ft=1;Fts(isEmpty$2($)?_:$):s})}/** @license MUI v5.11.0 + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */function styled$2(o,s){return emStyled(o,s)}const internal_processStyles=(o,s)=>{Array.isArray(o.__emotion_styles)&&(o.__emotion_styles=s(o.__emotion_styles))};function merge$2(o,s){return s?deepmerge(o,s,{clone:!1}):o}const values={xs:0,sm:600,md:900,lg:1200,xl:1536},defaultBreakpoints={keys:["xs","sm","md","lg","xl"],up:o=>`@media (min-width:${values[o]}px)`};function handleBreakpoints(o,s,_){const j=o.theme||{};if(Array.isArray(s)){const _e=j.breakpoints||defaultBreakpoints;return s.reduce((et,tt,nt)=>(et[_e.up(_e.keys[nt])]=_(s[nt]),et),{})}if(typeof s=="object"){const _e=j.breakpoints||defaultBreakpoints;return Object.keys(s).reduce((et,tt)=>{if(Object.keys(_e.values||values).indexOf(tt)!==-1){const nt=_e.up(tt);et[nt]=_(s[tt],tt)}else{const nt=tt;et[nt]=s[nt]}return et},{})}return _(s)}function createEmptyBreakpointObject(o={}){var s;return((s=o.keys)==null?void 0:s.reduce((j,$)=>{const _e=o.up($);return j[_e]={},j},{}))||{}}function removeUnusedBreakpoints(o,s){return o.reduce((_,j)=>{const $=_[j];return(!$||Object.keys($).length===0)&&delete _[j],_},s)}function getPath(o,s,_=!0){if(!s||typeof s!="string")return null;if(o&&o.vars&&_){const j=`vars.${s}`.split(".").reduce(($,_e)=>$&&$[_e]?$[_e]:null,o);if(j!=null)return j}return s.split(".").reduce((j,$)=>j&&j[$]!=null?j[$]:null,o)}function getStyleValue(o,s,_,j=_){let $;return typeof o=="function"?$=o(_):Array.isArray(o)?$=o[_]||j:$=getPath(o,_)||j,s&&($=s($,j,o)),$}function style$1(o){const{prop:s,cssProperty:_=o.prop,themeKey:j,transform:$}=o,_e=et=>{if(et[s]==null)return null;const tt=et[s],nt=et.theme,rt=getPath(nt,j)||{};return handleBreakpoints(et,tt,st=>{let ut=getStyleValue(rt,$,st);return st===ut&&typeof st=="string"&&(ut=getStyleValue(rt,$,`${s}${st==="default"?"":capitalize(st)}`,st)),_===!1?ut:{[_]:ut}})};return _e.propTypes={},_e.filterProps=[s],_e}function compose(...o){const s=o.reduce((j,$)=>($.filterProps.forEach(_e=>{j[_e]=$}),j),{}),_=j=>Object.keys(j).reduce(($,_e)=>s[_e]?merge$2($,s[_e](j)):$,{});return _.propTypes={},_.filterProps=o.reduce((j,$)=>j.concat($.filterProps),[]),_}function memoize(o){const s={};return _=>(s[_]===void 0&&(s[_]=o(_)),s[_])}const properties={m:"margin",p:"padding"},directions={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},aliases={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},getCssProperties=memoize(o=>{if(o.length>2)if(aliases[o])o=aliases[o];else return[o];const[s,_]=o.split(""),j=properties[s],$=directions[_]||"";return Array.isArray($)?$.map(_e=>j+_e):[j+$]}),marginKeys=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],paddingKeys=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"];[...marginKeys,...paddingKeys];function createUnaryUnit(o,s,_,j){var $;const _e=($=getPath(o,s,!1))!=null?$:_;return typeof _e=="number"?et=>typeof et=="string"?et:_e*et:Array.isArray(_e)?et=>typeof et=="string"?et:_e[et]:typeof _e=="function"?_e:()=>{}}function createUnarySpacing(o){return createUnaryUnit(o,"spacing",8)}function getValue(o,s){if(typeof s=="string"||s==null)return s;const _=Math.abs(s),j=o(_);return s>=0?j:typeof j=="number"?-j:`-${j}`}function getStyleFromPropValue(o,s){return _=>o.reduce((j,$)=>(j[$]=getValue(s,_),j),{})}function resolveCssProperty(o,s,_,j){if(s.indexOf(_)===-1)return null;const $=getCssProperties(_),_e=getStyleFromPropValue($,j),et=o[_];return handleBreakpoints(o,et,_e)}function style(o,s){const _=createUnarySpacing(o.theme);return Object.keys(o).map(j=>resolveCssProperty(o,s,j,_)).reduce(merge$2,{})}function margin(o){return style(o,marginKeys)}margin.propTypes={};margin.filterProps=marginKeys;function padding(o){return style(o,paddingKeys)}padding.propTypes={};padding.filterProps=paddingKeys;function borderTransform(o){return typeof o!="number"?o:`${o}px solid`}const border=style$1({prop:"border",themeKey:"borders",transform:borderTransform}),borderTop=style$1({prop:"borderTop",themeKey:"borders",transform:borderTransform}),borderRight=style$1({prop:"borderRight",themeKey:"borders",transform:borderTransform}),borderBottom=style$1({prop:"borderBottom",themeKey:"borders",transform:borderTransform}),borderLeft=style$1({prop:"borderLeft",themeKey:"borders",transform:borderTransform}),borderColor=style$1({prop:"borderColor",themeKey:"palette"}),borderTopColor=style$1({prop:"borderTopColor",themeKey:"palette"}),borderRightColor=style$1({prop:"borderRightColor",themeKey:"palette"}),borderBottomColor=style$1({prop:"borderBottomColor",themeKey:"palette"}),borderLeftColor=style$1({prop:"borderLeftColor",themeKey:"palette"}),borderRadius=o=>{if(o.borderRadius!==void 0&&o.borderRadius!==null){const s=createUnaryUnit(o.theme,"shape.borderRadius",4),_=j=>({borderRadius:getValue(s,j)});return handleBreakpoints(o,o.borderRadius,_)}return null};borderRadius.propTypes={};borderRadius.filterProps=["borderRadius"];compose(border,borderTop,borderRight,borderBottom,borderLeft,borderColor,borderTopColor,borderRightColor,borderBottomColor,borderLeftColor,borderRadius);const gap=o=>{if(o.gap!==void 0&&o.gap!==null){const s=createUnaryUnit(o.theme,"spacing",8),_=j=>({gap:getValue(s,j)});return handleBreakpoints(o,o.gap,_)}return null};gap.propTypes={};gap.filterProps=["gap"];const columnGap=o=>{if(o.columnGap!==void 0&&o.columnGap!==null){const s=createUnaryUnit(o.theme,"spacing",8),_=j=>({columnGap:getValue(s,j)});return handleBreakpoints(o,o.columnGap,_)}return null};columnGap.propTypes={};columnGap.filterProps=["columnGap"];const rowGap=o=>{if(o.rowGap!==void 0&&o.rowGap!==null){const s=createUnaryUnit(o.theme,"spacing",8),_=j=>({rowGap:getValue(s,j)});return handleBreakpoints(o,o.rowGap,_)}return null};rowGap.propTypes={};rowGap.filterProps=["rowGap"];const gridColumn=style$1({prop:"gridColumn"}),gridRow=style$1({prop:"gridRow"}),gridAutoFlow=style$1({prop:"gridAutoFlow"}),gridAutoColumns=style$1({prop:"gridAutoColumns"}),gridAutoRows=style$1({prop:"gridAutoRows"}),gridTemplateColumns=style$1({prop:"gridTemplateColumns"}),gridTemplateRows=style$1({prop:"gridTemplateRows"}),gridTemplateAreas=style$1({prop:"gridTemplateAreas"}),gridArea=style$1({prop:"gridArea"});compose(gap,columnGap,rowGap,gridColumn,gridRow,gridAutoFlow,gridAutoColumns,gridAutoRows,gridTemplateColumns,gridTemplateRows,gridTemplateAreas,gridArea);function paletteTransform(o,s){return s==="grey"?s:o}const color$1=style$1({prop:"color",themeKey:"palette",transform:paletteTransform}),bgcolor=style$1({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:paletteTransform}),backgroundColor=style$1({prop:"backgroundColor",themeKey:"palette",transform:paletteTransform});compose(color$1,bgcolor,backgroundColor);function sizingTransform(o){return o<=1&&o!==0?`${o*100}%`:o}const width=style$1({prop:"width",transform:sizingTransform}),maxWidth=o=>{if(o.maxWidth!==void 0&&o.maxWidth!==null){const s=_=>{var j,$,_e;return{maxWidth:((j=o.theme)==null||($=j.breakpoints)==null||(_e=$.values)==null?void 0:_e[_])||values[_]||sizingTransform(_)}};return handleBreakpoints(o,o.maxWidth,s)}return null};maxWidth.filterProps=["maxWidth"];const minWidth=style$1({prop:"minWidth",transform:sizingTransform}),height=style$1({prop:"height",transform:sizingTransform}),maxHeight=style$1({prop:"maxHeight",transform:sizingTransform}),minHeight=style$1({prop:"minHeight",transform:sizingTransform});style$1({prop:"size",cssProperty:"width",transform:sizingTransform});style$1({prop:"size",cssProperty:"height",transform:sizingTransform});const boxSizing=style$1({prop:"boxSizing"});compose(width,maxWidth,minWidth,height,maxHeight,minHeight,boxSizing);const defaultSxConfig={border:{themeKey:"borders",transform:borderTransform},borderTop:{themeKey:"borders",transform:borderTransform},borderRight:{themeKey:"borders",transform:borderTransform},borderBottom:{themeKey:"borders",transform:borderTransform},borderLeft:{themeKey:"borders",transform:borderTransform},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:borderRadius},color:{themeKey:"palette",transform:paletteTransform},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:paletteTransform},backgroundColor:{themeKey:"palette",transform:paletteTransform},p:{style:padding},pt:{style:padding},pr:{style:padding},pb:{style:padding},pl:{style:padding},px:{style:padding},py:{style:padding},padding:{style:padding},paddingTop:{style:padding},paddingRight:{style:padding},paddingBottom:{style:padding},paddingLeft:{style:padding},paddingX:{style:padding},paddingY:{style:padding},paddingInline:{style:padding},paddingInlineStart:{style:padding},paddingInlineEnd:{style:padding},paddingBlock:{style:padding},paddingBlockStart:{style:padding},paddingBlockEnd:{style:padding},m:{style:margin},mt:{style:margin},mr:{style:margin},mb:{style:margin},ml:{style:margin},mx:{style:margin},my:{style:margin},margin:{style:margin},marginTop:{style:margin},marginRight:{style:margin},marginBottom:{style:margin},marginLeft:{style:margin},marginX:{style:margin},marginY:{style:margin},marginInline:{style:margin},marginInlineStart:{style:margin},marginInlineEnd:{style:margin},marginBlock:{style:margin},marginBlockStart:{style:margin},marginBlockEnd:{style:margin},displayPrint:{cssProperty:!1,transform:o=>({"@media print":{display:o}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:gap},rowGap:{style:rowGap},columnGap:{style:columnGap},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:sizingTransform},maxWidth:{style:maxWidth},minWidth:{transform:sizingTransform},height:{transform:sizingTransform},maxHeight:{transform:sizingTransform},minHeight:{transform:sizingTransform},boxSizing:{},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}},defaultSxConfig$1=defaultSxConfig;function objectsHaveSameKeys(...o){const s=o.reduce((j,$)=>j.concat(Object.keys($)),[]),_=new Set(s);return o.every(j=>_.size===Object.keys(j).length)}function callIfFn(o,s){return typeof o=="function"?o(s):o}function unstable_createStyleFunctionSx(){function o(_,j,$,_e){const et={[_]:j,theme:$},tt=_e[_];if(!tt)return{[_]:j};const{cssProperty:nt=_,themeKey:rt,transform:it,style:st}=tt;if(j==null)return null;const ut=getPath($,rt)||{};return st?st(et):handleBreakpoints(et,j,dt=>{let gt=getStyleValue(ut,it,dt);return dt===gt&&typeof dt=="string"&&(gt=getStyleValue(ut,it,`${_}${dt==="default"?"":capitalize(dt)}`,dt)),nt===!1?gt:{[nt]:gt}})}function s(_){var j;const{sx:$,theme:_e={}}=_||{};if(!$)return null;const et=(j=_e.unstable_sxConfig)!=null?j:defaultSxConfig$1;function tt(nt){let rt=nt;if(typeof nt=="function")rt=nt(_e);else if(typeof nt!="object")return nt;if(!rt)return null;const it=createEmptyBreakpointObject(_e.breakpoints),st=Object.keys(it);let ut=it;return Object.keys(rt).forEach(Ft=>{const dt=callIfFn(rt[Ft],_e);if(dt!=null)if(typeof dt=="object")if(et[Ft])ut=merge$2(ut,o(Ft,dt,_e,et));else{const gt=handleBreakpoints({theme:_e},dt,Ut=>({[Ft]:Ut}));objectsHaveSameKeys(gt,dt)?ut[Ft]=s({sx:dt,theme:_e}):ut=merge$2(ut,gt)}else ut=merge$2(ut,o(Ft,dt,_e,et))}),removeUnusedBreakpoints(st,ut)}return Array.isArray($)?$.map(tt):tt($)}return s}const styleFunctionSx=unstable_createStyleFunctionSx();styleFunctionSx.filterProps=["sx"];const styleFunctionSx$1=styleFunctionSx;function _objectWithoutPropertiesLoose$1(o,s){if(o==null)return{};var _={},j=Object.keys(o),$,_e;for(_e=0;_e=0)&&(_[$]=o[$]);return _}function r(o){var s,_,j="";if(typeof o=="string"||typeof o=="number")j+=o;else if(typeof o=="object")if(Array.isArray(o))for(s=0;s{const s=Object.keys(o).map(_=>({key:_,val:o[_]}))||[];return s.sort((_,j)=>_.val-j.val),s.reduce((_,j)=>_extends$1({},_,{[j.key]:j.val}),{})};function createBreakpoints(o){const{values:s={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:_="px",step:j=5}=o,$=_objectWithoutPropertiesLoose$1(o,_excluded$8),_e=sortBreakpointsValues(s),et=Object.keys(_e);function tt(ut){return`@media (min-width:${typeof s[ut]=="number"?s[ut]:ut}${_})`}function nt(ut){return`@media (max-width:${(typeof s[ut]=="number"?s[ut]:ut)-j/100}${_})`}function rt(ut,Ft){const dt=et.indexOf(Ft);return`@media (min-width:${typeof s[ut]=="number"?s[ut]:ut}${_}) and (max-width:${(dt!==-1&&typeof s[et[dt]]=="number"?s[et[dt]]:Ft)-j/100}${_})`}function it(ut){return et.indexOf(ut)+1(j.length===0?[1]:j).map(_e=>{const et=s(_e);return typeof et=="number"?`${et}px`:et}).join(" ");return _.mui=!0,_}const _excluded$7=["breakpoints","palette","spacing","shape"];function createTheme$1(o={},...s){const{breakpoints:_={},palette:j={},spacing:$,shape:_e={}}=o,et=_objectWithoutPropertiesLoose$1(o,_excluded$7),tt=createBreakpoints(_),nt=createSpacing($);let rt=deepmerge({breakpoints:tt,direction:"ltr",components:{},palette:_extends$1({mode:"light"},j),spacing:nt,shape:_extends$1({},shape$1,_e)},et);return rt=s.reduce((it,st)=>deepmerge(it,st),rt),rt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,et==null?void 0:et.unstable_sxConfig),rt.unstable_sx=function(st){return styleFunctionSx$1({sx:st,theme:this})},rt}const ThemeContext=reactExports.createContext(null),ThemeContext$1=ThemeContext;function useTheme$2(){return reactExports.useContext(ThemeContext$1)}const hasSymbol=typeof Symbol=="function"&&Symbol.for,nested=hasSymbol?Symbol.for("mui.nested"):"__THEME_NESTED__";function mergeOuterLocalTheme(o,s){return typeof s=="function"?s(o):_extends$1({},o,s)}function ThemeProvider$1(o){const{children:s,theme:_}=o,j=useTheme$2(),$=reactExports.useMemo(()=>{const _e=j===null?_:mergeOuterLocalTheme(j,_);return _e!=null&&(_e[nested]=j!==null),_e},[_,j]);return jsx$1(ThemeContext$1.Provider,{value:$,children:s})}function isObjectEmpty(o){return Object.keys(o).length===0}function useTheme$1(o=null){const s=useTheme$2();return!s||isObjectEmpty(s)?o:s}const systemDefaultTheme$1=createTheme$1();function useTheme(o=systemDefaultTheme$1){return useTheme$1(o)}const _excluded$6=["variant"];function isEmpty$1(o){return o.length===0}function propsToClassKey(o){const{variant:s}=o,_=_objectWithoutPropertiesLoose$1(o,_excluded$6);let j=s||"";return Object.keys(_).sort().forEach($=>{$==="color"?j+=isEmpty$1(j)?o[$]:capitalize(o[$]):j+=`${isEmpty$1(j)?$:capitalize($)}${capitalize(o[$].toString())}`}),j}const _excluded$5=["name","slot","skipVariantsResolver","skipSx","overridesResolver"],_excluded2=["theme"],_excluded3=["theme"];function isEmpty(o){return Object.keys(o).length===0}function isStringTag(o){return typeof o=="string"&&o.charCodeAt(0)>96}const getStyleOverrides=(o,s)=>s.components&&s.components[o]&&s.components[o].styleOverrides?s.components[o].styleOverrides:null,getVariantStyles=(o,s)=>{let _=[];s&&s.components&&s.components[o]&&s.components[o].variants&&(_=s.components[o].variants);const j={};return _.forEach($=>{const _e=propsToClassKey($.props);j[_e]=$.style}),j},variantsResolver=(o,s,_,j)=>{var $,_e;const{ownerState:et={}}=o,tt=[],nt=_==null||($=_.components)==null||(_e=$[j])==null?void 0:_e.variants;return nt&&nt.forEach(rt=>{let it=!0;Object.keys(rt.props).forEach(st=>{et[st]!==rt.props[st]&&o[st]!==rt.props[st]&&(it=!1)}),it&&tt.push(s[propsToClassKey(rt.props)])}),tt};function shouldForwardProp(o){return o!=="ownerState"&&o!=="theme"&&o!=="sx"&&o!=="as"}const systemDefaultTheme=createTheme$1();function createStyled(o={}){const{defaultTheme:s=systemDefaultTheme,rootShouldForwardProp:_=shouldForwardProp,slotShouldForwardProp:j=shouldForwardProp}=o,$=_e=>{const et=isEmpty(_e.theme)?s:_e.theme;return styleFunctionSx$1(_extends$1({},_e,{theme:et}))};return $.__mui_systemSx=!0,(_e,et={})=>{internal_processStyles(_e,pt=>pt.filter(Rt=>!(Rt!=null&&Rt.__mui_systemSx)));const{name:tt,slot:nt,skipVariantsResolver:rt,skipSx:it,overridesResolver:st}=et,ut=_objectWithoutPropertiesLoose$1(et,_excluded$5),Ft=rt!==void 0?rt:nt&&nt!=="Root"||!1,dt=it||!1;let gt,Ut=shouldForwardProp;nt==="Root"?Ut=_:nt?Ut=j:isStringTag(_e)&&(Ut=void 0);const ht=styled$2(_e,_extends$1({shouldForwardProp:Ut,label:gt},ut)),ft=(pt,...Rt)=>{const Qt=Rt?Rt.map(Bt=>typeof Bt=="function"&&Bt.__emotion_real!==Bt?jt=>{let{theme:vt}=jt,mt=_objectWithoutPropertiesLoose$1(jt,_excluded2);return Bt(_extends$1({theme:isEmpty(vt)?s:vt},mt))}:Bt):[];let Nt=pt;tt&&st&&Qt.push(Bt=>{const jt=isEmpty(Bt.theme)?s:Bt.theme,vt=getStyleOverrides(tt,jt);if(vt){const mt={};return Object.entries(vt).forEach(([yt,Vt])=>{mt[yt]=typeof Vt=="function"?Vt(_extends$1({},Bt,{theme:jt})):Vt}),st(Bt,mt)}return null}),tt&&!Ft&&Qt.push(Bt=>{const jt=isEmpty(Bt.theme)?s:Bt.theme;return variantsResolver(Bt,getVariantStyles(tt,jt),jt,tt)}),dt||Qt.push($);const At=Qt.length-Rt.length;if(Array.isArray(pt)&&At>0){const Bt=new Array(At).fill("");Nt=[...pt,...Bt],Nt.raw=[...pt.raw,...Bt]}else typeof pt=="function"&&pt.__emotion_real!==pt&&(Nt=Bt=>{let{theme:jt}=Bt,vt=_objectWithoutPropertiesLoose$1(Bt,_excluded3);return pt(_extends$1({theme:isEmpty(jt)?s:jt},vt))});return ht(Nt,...Qt)};return ht.withConfig&&(ft.withConfig=ht.withConfig),ft}}function getThemeProps(o){const{theme:s,name:_,props:j}=o;return!s||!s.components||!s.components[_]||!s.components[_].defaultProps?j:resolveProps(s.components[_].defaultProps,j)}function useThemeProps$1({props:o,name:s,defaultTheme:_}){const j=useTheme(_);return getThemeProps({theme:j,name:s,props:o})}function clamp(o,s=0,_=1){return Math.min(Math.max(s,o),_)}function hexToRgb(o){o=o.slice(1);const s=new RegExp(`.{1,${o.length>=6?2:1}}`,"g");let _=o.match(s);return _&&_[0].length===1&&(_=_.map(j=>j+j)),_?`rgb${_.length===4?"a":""}(${_.map((j,$)=>$<3?parseInt(j,16):Math.round(parseInt(j,16)/255*1e3)/1e3).join(", ")})`:""}function decomposeColor(o){if(o.type)return o;if(o.charAt(0)==="#")return decomposeColor(hexToRgb(o));const s=o.indexOf("("),_=o.substring(0,s);if(["rgb","rgba","hsl","hsla","color"].indexOf(_)===-1)throw new Error(formatMuiErrorMessage(9,o));let j=o.substring(s+1,o.length-1),$;if(_==="color"){if(j=j.split(" "),$=j.shift(),j.length===4&&j[3].charAt(0)==="/"&&(j[3]=j[3].slice(1)),["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].indexOf($)===-1)throw new Error(formatMuiErrorMessage(10,$))}else j=j.split(",");return j=j.map(_e=>parseFloat(_e)),{type:_,values:j,colorSpace:$}}function recomposeColor(o){const{type:s,colorSpace:_}=o;let{values:j}=o;return s.indexOf("rgb")!==-1?j=j.map(($,_e)=>_e<3?parseInt($,10):$):s.indexOf("hsl")!==-1&&(j[1]=`${j[1]}%`,j[2]=`${j[2]}%`),s.indexOf("color")!==-1?j=`${_} ${j.join(" ")}`:j=`${j.join(", ")}`,`${s}(${j})`}function hslToRgb(o){o=decomposeColor(o);const{values:s}=o,_=s[0],j=s[1]/100,$=s[2]/100,_e=j*Math.min($,1-$),et=(rt,it=(rt+_/30)%12)=>$-_e*Math.max(Math.min(it-3,9-it,1),-1);let tt="rgb";const nt=[Math.round(et(0)*255),Math.round(et(8)*255),Math.round(et(4)*255)];return o.type==="hsla"&&(tt+="a",nt.push(s[3])),recomposeColor({type:tt,values:nt})}function getLuminance(o){o=decomposeColor(o);let s=o.type==="hsl"||o.type==="hsla"?decomposeColor(hslToRgb(o)).values:o.values;return s=s.map(_=>(o.type!=="color"&&(_/=255),_<=.03928?_/12.92:((_+.055)/1.055)**2.4)),Number((.2126*s[0]+.7152*s[1]+.0722*s[2]).toFixed(3))}function getContrastRatio(o,s){const _=getLuminance(o),j=getLuminance(s);return(Math.max(_,j)+.05)/(Math.min(_,j)+.05)}function darken(o,s){if(o=decomposeColor(o),s=clamp(s),o.type.indexOf("hsl")!==-1)o.values[2]*=1-s;else if(o.type.indexOf("rgb")!==-1||o.type.indexOf("color")!==-1)for(let _=0;_<3;_+=1)o.values[_]*=1-s;return recomposeColor(o)}function lighten(o,s){if(o=decomposeColor(o),s=clamp(s),o.type.indexOf("hsl")!==-1)o.values[2]+=(100-o.values[2])*s;else if(o.type.indexOf("rgb")!==-1)for(let _=0;_<3;_+=1)o.values[_]+=(255-o.values[_])*s;else if(o.type.indexOf("color")!==-1)for(let _=0;_<3;_+=1)o.values[_]+=(1-o.values[_])*s;return recomposeColor(o)}const EMPTY_THEME={};function InnerThemeProvider(o){const s=useTheme();return jsx$1(ThemeContext$2.Provider,{value:typeof s=="object"?s:EMPTY_THEME,children:o.children})}function ThemeProvider(o){const{children:s,theme:_}=o;return jsx$1(ThemeProvider$1,{theme:_,children:jsx$1(InnerThemeProvider,{children:s})})}function createMixins(o,s){return _extends$1({toolbar:{minHeight:56,[o.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[o.up("sm")]:{minHeight:64}}},s)}const common$1={black:"#000",white:"#fff"},common$2=common$1,grey={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},grey$1=grey,purple={50:"#f3e5f5",100:"#e1bee7",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",600:"#8e24aa",700:"#7b1fa2",800:"#6a1b9a",900:"#4a148c",A100:"#ea80fc",A200:"#e040fb",A400:"#d500f9",A700:"#aa00ff"},purple$1=purple,red={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000"},red$1=red,orange={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},orange$1=orange,blue={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},blue$1=blue,lightBlue={50:"#e1f5fe",100:"#b3e5fc",200:"#81d4fa",300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",600:"#039be5",700:"#0288d1",800:"#0277bd",900:"#01579b",A100:"#80d8ff",A200:"#40c4ff",A400:"#00b0ff",A700:"#0091ea"},lightBlue$1=lightBlue,green={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"},green$1=green,_excluded$4=["mode","contrastThreshold","tonalOffset"],light={text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:common$2.white,default:common$2.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}},dark={text:{primary:common$2.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:common$2.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}};function addLightOrDark(o,s,_,j){const $=j.light||j,_e=j.dark||j*1.5;o[s]||(o.hasOwnProperty(_)?o[s]=o[_]:s==="light"?o.light=lighten(o.main,$):s==="dark"&&(o.dark=darken(o.main,_e)))}function getDefaultPrimary(o="light"){return o==="dark"?{main:blue$1[200],light:blue$1[50],dark:blue$1[400]}:{main:blue$1[700],light:blue$1[400],dark:blue$1[800]}}function getDefaultSecondary(o="light"){return o==="dark"?{main:purple$1[200],light:purple$1[50],dark:purple$1[400]}:{main:purple$1[500],light:purple$1[300],dark:purple$1[700]}}function getDefaultError(o="light"){return o==="dark"?{main:red$1[500],light:red$1[300],dark:red$1[700]}:{main:red$1[700],light:red$1[400],dark:red$1[800]}}function getDefaultInfo(o="light"){return o==="dark"?{main:lightBlue$1[400],light:lightBlue$1[300],dark:lightBlue$1[700]}:{main:lightBlue$1[700],light:lightBlue$1[500],dark:lightBlue$1[900]}}function getDefaultSuccess(o="light"){return o==="dark"?{main:green$1[400],light:green$1[300],dark:green$1[700]}:{main:green$1[800],light:green$1[500],dark:green$1[900]}}function getDefaultWarning(o="light"){return o==="dark"?{main:orange$1[400],light:orange$1[300],dark:orange$1[700]}:{main:"#ed6c02",light:orange$1[500],dark:orange$1[900]}}function createPalette(o){const{mode:s="light",contrastThreshold:_=3,tonalOffset:j=.2}=o,$=_objectWithoutPropertiesLoose$1(o,_excluded$4),_e=o.primary||getDefaultPrimary(s),et=o.secondary||getDefaultSecondary(s),tt=o.error||getDefaultError(s),nt=o.info||getDefaultInfo(s),rt=o.success||getDefaultSuccess(s),it=o.warning||getDefaultWarning(s);function st(gt){return getContrastRatio(gt,dark.text.primary)>=_?dark.text.primary:light.text.primary}const ut=({color:gt,name:Ut,mainShade:ht=500,lightShade:ft=300,darkShade:pt=700})=>{if(gt=_extends$1({},gt),!gt.main&>[ht]&&(gt.main=gt[ht]),!gt.hasOwnProperty("main"))throw new Error(formatMuiErrorMessage(11,Ut?` (${Ut})`:"",ht));if(typeof gt.main!="string")throw new Error(formatMuiErrorMessage(12,Ut?` (${Ut})`:"",JSON.stringify(gt.main)));return addLightOrDark(gt,"light",ft,j),addLightOrDark(gt,"dark",pt,j),gt.contrastText||(gt.contrastText=st(gt.main)),gt},Ft={dark,light};return deepmerge(_extends$1({common:_extends$1({},common$2),mode:s,primary:ut({color:_e,name:"primary"}),secondary:ut({color:et,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:ut({color:tt,name:"error"}),warning:ut({color:it,name:"warning"}),info:ut({color:nt,name:"info"}),success:ut({color:rt,name:"success"}),grey:grey$1,contrastThreshold:_,getContrastText:st,augmentColor:ut,tonalOffset:j},Ft[s]),$)}const _excluded$3=["fontFamily","fontSize","fontWeightLight","fontWeightRegular","fontWeightMedium","fontWeightBold","htmlFontSize","allVariants","pxToRem"];function round$1(o){return Math.round(o*1e5)/1e5}const caseAllCaps={textTransform:"uppercase"},defaultFontFamily='"Roboto", "Helvetica", "Arial", sans-serif';function createTypography(o,s){const _=typeof s=="function"?s(o):s,{fontFamily:j=defaultFontFamily,fontSize:$=14,fontWeightLight:_e=300,fontWeightRegular:et=400,fontWeightMedium:tt=500,fontWeightBold:nt=700,htmlFontSize:rt=16,allVariants:it,pxToRem:st}=_,ut=_objectWithoutPropertiesLoose$1(_,_excluded$3),Ft=$/14,dt=st||(ht=>`${ht/rt*Ft}rem`),gt=(ht,ft,pt,Rt,Qt)=>_extends$1({fontFamily:j,fontWeight:ht,fontSize:dt(ft),lineHeight:pt},j===defaultFontFamily?{letterSpacing:`${round$1(Rt/ft)}em`}:{},Qt,it),Ut={h1:gt(_e,96,1.167,-1.5),h2:gt(_e,60,1.2,-.5),h3:gt(et,48,1.167,0),h4:gt(et,34,1.235,.25),h5:gt(et,24,1.334,0),h6:gt(tt,20,1.6,.15),subtitle1:gt(et,16,1.75,.15),subtitle2:gt(tt,14,1.57,.1),body1:gt(et,16,1.5,.15),body2:gt(et,14,1.43,.15),button:gt(tt,14,1.75,.4,caseAllCaps),caption:gt(et,12,1.66,.4),overline:gt(et,12,2.66,1,caseAllCaps)};return deepmerge(_extends$1({htmlFontSize:rt,pxToRem:dt,fontFamily:j,fontSize:$,fontWeightLight:_e,fontWeightRegular:et,fontWeightMedium:tt,fontWeightBold:nt},Ut),ut,{clone:!1})}const shadowKeyUmbraOpacity=.2,shadowKeyPenumbraOpacity=.14,shadowAmbientShadowOpacity=.12;function createShadow(...o){return[`${o[0]}px ${o[1]}px ${o[2]}px ${o[3]}px rgba(0,0,0,${shadowKeyUmbraOpacity})`,`${o[4]}px ${o[5]}px ${o[6]}px ${o[7]}px rgba(0,0,0,${shadowKeyPenumbraOpacity})`,`${o[8]}px ${o[9]}px ${o[10]}px ${o[11]}px rgba(0,0,0,${shadowAmbientShadowOpacity})`].join(",")}const shadows=["none",createShadow(0,2,1,-1,0,1,1,0,0,1,3,0),createShadow(0,3,1,-2,0,2,2,0,0,1,5,0),createShadow(0,3,3,-2,0,3,4,0,0,1,8,0),createShadow(0,2,4,-1,0,4,5,0,0,1,10,0),createShadow(0,3,5,-1,0,5,8,0,0,1,14,0),createShadow(0,3,5,-1,0,6,10,0,0,1,18,0),createShadow(0,4,5,-2,0,7,10,1,0,2,16,1),createShadow(0,5,5,-3,0,8,10,1,0,3,14,2),createShadow(0,5,6,-3,0,9,12,1,0,3,16,2),createShadow(0,6,6,-3,0,10,14,1,0,4,18,3),createShadow(0,6,7,-4,0,11,15,1,0,4,20,3),createShadow(0,7,8,-4,0,12,17,2,0,5,22,4),createShadow(0,7,8,-4,0,13,19,2,0,5,24,4),createShadow(0,7,9,-4,0,14,21,2,0,5,26,4),createShadow(0,8,9,-5,0,15,22,2,0,6,28,5),createShadow(0,8,10,-5,0,16,24,2,0,6,30,5),createShadow(0,8,11,-5,0,17,26,2,0,6,32,5),createShadow(0,9,11,-5,0,18,28,2,0,7,34,6),createShadow(0,9,12,-6,0,19,29,2,0,7,36,6),createShadow(0,10,13,-6,0,20,31,3,0,8,38,7),createShadow(0,10,13,-6,0,21,33,3,0,8,40,7),createShadow(0,10,14,-6,0,22,35,3,0,8,42,7),createShadow(0,11,14,-7,0,23,36,3,0,9,44,8),createShadow(0,11,15,-7,0,24,38,3,0,9,46,8)],shadows$1=shadows,_excluded$2=["duration","easing","delay"],easing={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",easeIn:"cubic-bezier(0.4, 0, 1, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},duration$3={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function formatMs(o){return`${Math.round(o)}ms`}function getAutoHeightDuration(o){if(!o)return 0;const s=o/36;return Math.round((4+15*s**.25+s/5)*10)}function createTransitions(o){const s=_extends$1({},easing,o.easing),_=_extends$1({},duration$3,o.duration);return _extends$1({getAutoHeightDuration,create:($=["all"],_e={})=>{const{duration:et=_.standard,easing:tt=s.easeInOut,delay:nt=0}=_e;return _objectWithoutPropertiesLoose$1(_e,_excluded$2),(Array.isArray($)?$:[$]).map(rt=>`${rt} ${typeof et=="string"?et:formatMs(et)} ${tt} ${typeof nt=="string"?nt:formatMs(nt)}`).join(",")}},o,{easing:s,duration:_})}const zIndex={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500},zIndex$1=zIndex,_excluded$1=["breakpoints","mixins","spacing","palette","transitions","typography","shape"];function createTheme(o={},...s){const{mixins:_={},palette:j={},transitions:$={},typography:_e={}}=o,et=_objectWithoutPropertiesLoose$1(o,_excluded$1);if(o.vars)throw new Error(formatMuiErrorMessage(18));const tt=createPalette(j),nt=createTheme$1(o);let rt=deepmerge(nt,{mixins:createMixins(nt.breakpoints,_),palette:tt,shadows:shadows$1.slice(),typography:createTypography(tt,_e),transitions:createTransitions($),zIndex:_extends$1({},zIndex$1)});return rt=deepmerge(rt,et),rt=s.reduce((it,st)=>deepmerge(it,st),rt),rt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,et==null?void 0:et.unstable_sxConfig),rt.unstable_sx=function(st){return styleFunctionSx$1({sx:st,theme:this})},rt}const defaultTheme=createTheme(),defaultTheme$1=defaultTheme;function useThemeProps({props:o,name:s}){return useThemeProps$1({props:o,name:s,defaultTheme:defaultTheme$1})}function GlobalStyles(o){return jsx$1(GlobalStyles$1,_extends$1({},o,{defaultTheme:defaultTheme$1}))}const html=(o,s)=>_extends$1({WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",boxSizing:"border-box",WebkitTextSizeAdjust:"100%"},s&&!o.vars&&{colorScheme:o.palette.mode}),body=o=>_extends$1({color:(o.vars||o).palette.text.primary},o.typography.body1,{backgroundColor:(o.vars||o).palette.background.default,"@media print":{backgroundColor:(o.vars||o).palette.common.white}}),styles=(o,s=!1)=>{var _,j;const $={};s&&o.colorSchemes&&Object.entries(o.colorSchemes).forEach(([tt,nt])=>{var rt;$[o.getColorSchemeSelector(tt).replace(/\s*&/,"")]={colorScheme:(rt=nt.palette)==null?void 0:rt.mode}});let _e=_extends$1({html:html(o,s),"*, *::before, *::after":{boxSizing:"inherit"},"strong, b":{fontWeight:o.typography.fontWeightBold},body:_extends$1({margin:0},body(o),{"&::backdrop":{backgroundColor:(o.vars||o).palette.background.default}})},$);const et=(_=o.components)==null||(j=_.MuiCssBaseline)==null?void 0:j.styleOverrides;return et&&(_e=[_e,et]),_e};function CssBaseline(o){const s=useThemeProps({props:o,name:"MuiCssBaseline"}),{children:_,enableColorScheme:j=!1}=s;return jsxs$1(reactExports.Fragment,{children:[jsx$1(GlobalStyles,{styles:$=>styles($,j)}),_]})}const rootShouldForwardProp=o=>shouldForwardProp(o)&&o!=="classes",styled=createStyled({defaultTheme:defaultTheme$1,rootShouldForwardProp}),styled$1=styled;function getScopedCssBaselineUtilityClass(o){return generateUtilityClass("MuiScopedCssBaseline",o)}generateUtilityClasses("MuiScopedCssBaseline",["root"]);const _excluded=["className","component","enableColorScheme"],useUtilityClasses=o=>{const{classes:s}=o;return composeClasses({root:["root"]},getScopedCssBaselineUtilityClass,s)},ScopedCssBaselineRoot=styled$1("div",{name:"MuiScopedCssBaseline",slot:"Root",overridesResolver:(o,s)=>s.root})(({theme:o,ownerState:s})=>{const _={};return s.enableColorScheme&&o.colorSchemes&&Object.entries(o.colorSchemes).forEach(([j,$])=>{var _e;_[`&${o.getColorSchemeSelector(j).replace(/\s*&/,"")}`]={colorScheme:(_e=$.palette)==null?void 0:_e.mode}}),_extends$1({},html(o,s.enableColorScheme),body(o),{"& *, & *::before, & *::after":{boxSizing:"inherit"},"& strong, & b":{fontWeight:o.typography.fontWeightBold}},_)}),ScopedCssBaseline=reactExports.forwardRef(function(s,_){const j=useThemeProps({props:s,name:"MuiScopedCssBaseline"}),{className:$,component:_e="div"}=j,et=_objectWithoutPropertiesLoose$1(j,_excluded),tt=_extends$1({},j,{component:_e}),nt=useUtilityClasses(tt);return jsx$1(ScopedCssBaselineRoot,_extends$1({as:_e,className:clsx(nt.root,$),ref:_,ownerState:tt},et))}),D0=ScopedCssBaseline;var Fr=Object.defineProperty,yr=(o,s,_)=>s in o?Fr(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_,me=(o,s,_)=>(yr(o,typeof s!="symbol"?s+"":s,_),_);const DEFAULT_FORMANT_API_URL="https://api.formant.io";function whichFormantApiUrl(o,s,_){try{if(s.get("formant_prod"))return"https://api.formant.io";if(s.get("formant_stage"))return"https://api-stage.formant.io";if(s.get("formant_dev"))return"https://api-dev.formant.io";if(s.get("formant_local"))return"https://api.formant.local";if(s.get("formant_url")){const j=s.get("formant_url");if(j!==null)try{return new URL(j).origin}catch{console.warn(`Ignoring malformed \`formant_url\` url parameter: ${j}`)}}if(_){if(_.includes("app-dev.formant.io")||_.includes("v2-coherence-dev.vercel.app")||_.includes("localhost"))return"https://api-dev.formant.io";if(_.includes("app-stage.formant.io"))return"https://api-stage.formant.io";if(_.includes("app.formant.io")||_.includes("v2-coherence.vercel.app"))return"https://api.formant.io"}}catch{}if(_){if(_.includes("app-dev.formant.io"))return"https://api-dev.formant.io";if(_.includes("app-stage.formant.io"))return"https://api-stage.formant.io";if(_.includes("app.formant.io"))return"https://api.formant.io"}return typeof o<"u"&&"FORMANT_API_URL"in o&&typeof o.FORMANT_API_URL=="string"?o.FORMANT_API_URL:DEFAULT_FORMANT_API_URL}let FORMANT_API_URL=whichFormantApiUrl(typeof window<"u"?window:globalThis,new URLSearchParams(typeof window<"u"&&window.location?window.location.search:void 0),typeof window<"u"&&window.location?window.location.host:void 0);const setFormantApiUrl=o=>{FORMANT_API_URL=o};function addAccessTokenRefreshListener(o){function s(_){const j=_.data;j.type==="auth_token"&&o(j.token)}return window.addEventListener("message",s),()=>{window.removeEventListener("message",s)}}function getCurrentModuleContext(){return typeof window<"u"&&window.location?new URLSearchParams(window.location.search).get("module"):null}function sendAppMessage(o){if(!(window&&window.parent))throw new Error("cannot send message to non-existent parent");window.parent.postMessage(o,"*")}function refreshAuthToken(){const o=getCurrentModuleContext();if(!o)throw new Error("No module context");sendAppMessage({type:"refresh_auth_token",module:o})}var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};function getDefaultExportFromCjs(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var base64={exports:{}};/*! https://mths.be/base64 v1.0.0 by @mathias | MIT license */base64.exports;(function(o,s){(function(_){var j=s,$=o&&o.exports==j&&o,_e=typeof commonjsGlobal=="object"&&commonjsGlobal;(_e.global===_e||_e.window===_e)&&(_=_e);var et=function(dt){this.message=dt};et.prototype=new Error,et.prototype.name="InvalidCharacterError";var tt=function(dt){throw new et(dt)},nt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",rt=/[\t\n\f\r ]/g,it=function(dt){dt=String(dt).replace(rt,"");var gt=dt.length;gt%4==0&&(dt=dt.replace(/==?$/,""),gt=dt.length),(gt%4==1||/[^+a-zA-Z0-9/]/.test(dt))&&tt("Invalid character: the string to be decoded is not correctly encoded.");for(var Ut=0,ht,ft,pt="",Rt=-1;++Rt>(-2*Ut&6)));return pt},st=function(dt){dt=String(dt),/[^\0-\xFF]/.test(dt)&&tt("The string to be encoded contains characters outside of the Latin1 range.");for(var gt=dt.length%3,Ut="",ht=-1,ft,pt,Rt,Qt,Nt=dt.length-gt;++ht>18&63)+nt.charAt(Qt>>12&63)+nt.charAt(Qt>>6&63)+nt.charAt(Qt&63);return gt==2?(ft=dt.charCodeAt(ht)<<8,pt=dt.charCodeAt(++ht),Qt=ft+pt,Ut+=nt.charAt(Qt>>10)+nt.charAt(Qt>>4&63)+nt.charAt(Qt<<2&63)+"="):gt==1&&(Qt=dt.charCodeAt(ht),Ut+=nt.charAt(Qt>>2)+nt.charAt(Qt<<4&63)+"=="),Ut},ut={encode:st,decode:it,version:"1.0.0"};if(j&&!j.nodeType)if($)$.exports=ut;else for(var Ft in ut)ut.hasOwnProperty(Ft)&&(j[Ft]=ut[Ft]);else _.base64=ut})(commonjsGlobal)})(base64,base64.exports);var base64Exports=base64.exports;class LoginFailureError extends Error{constructor(s){super("login failed"),me(this,"reason"),this.reason=s,this.name="LoginFailureError",Object.setPrototypeOf(this,new.target.prototype)}}class LoginChallengedError extends Error{constructor(s){super("login challenged"),me(this,"challenge"),this.challenge=s,this.name="LoginChallengedError",Object.setPrototypeOf(this,new.target.prototype)}}class AuthenticationStore{constructor({apiUrl:s,refreshAuthToken:_,addAccessTokenRefreshListener:j}){me(this,"_refreshToken"),me(this,"_isShareToken",!1),me(this,"_currentOrganization"),me(this,"_currentUser"),me(this,"_defaultDeviceId"),me(this,"_token"),me(this,"_waitingForAuth",new Set),me(this,"_refreshTimer"),me(this,"_apiUrl"),me(this,"_refreshAuthToken"),me(this,"_addAccessTokenRefreshListener"),this._apiUrl=s,this._refreshAuthToken=_,this._addAccessTokenRefreshListener=j}set apiUrl(s){this._apiUrl=s,setFormantApiUrl(s)}get apiUrl(){return this._apiUrl}get token(){return this._token}get currentUser(){return this._currentUser}get currentOrganization(){return this._currentOrganization}get defaultDeviceId(){return this._defaultDeviceId}get refreshToken(){return this._refreshToken}get isShareToken(){return this._isShareToken}async login(s,_,j={}){const{advanced:$=!1}=j;try{const _e=await fetch(`${this._apiUrl}/v1/admin/auth/login`,{method:"POST",body:JSON.stringify({email:s,password:_}),headers:{"Content-Type":"application/json"}}),et=await _e.json();if(_e.status!==200)throw new LoginFailureError(et.message);if("challenge"in et)throw new LoginChallengedError(et.challenge);const{authentication:tt}=et;return await this.loginWithToken(tt.accessToken,tt.refreshToken),$?{result:"success",authentication:tt}:tt}catch(_e){if($||console.error("login() failed",{err:_e}),this._waitingForAuth.forEach(et=>et(!1)),this._waitingForAuth.clear(),!$)throw _e;return _e instanceof LoginChallengedError?{result:"challenged",challenge:_e.challenge}:{result:"failure",reason:_e instanceof LoginFailureError?_e.reason:_e instanceof Error?_e.message:String(_e)}}}async loginWithToken(s,_){var j;const $=JSON.parse(base64Exports.decode(s.split(".")[1]));try{let _e;if(this._isShareToken=$["formant:claims"]&&$["formant:claims"].type=="share",$["formant:claims"]&&(this._currentOrganization=$["formant:claims"].organizationId),$["custom:organization_id"]&&(this._currentOrganization=$["custom:organization_id"]),this._isShareToken||(_e=$.sub),$["formant:claims"]&&$["formant:claims"].userId&&(_e=$["formant:claims"].userId),_e&&((j=this._currentUser)==null?void 0:j.id)!==_e){const et=await fetch(`${this._apiUrl}/v1/admin/users/${_e}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+s}}),tt=await et.json();if(et.status===404)this._currentUser=void 0;else{if(et.status!==200)throw new Error(tt.message);this._currentUser=tt}}this._token=s,this._waitingForAuth.forEach(et=>et(!0))}catch(_e){console.error("loginWithToken() failed",{err:_e}),this._waitingForAuth.forEach(et=>et(!1))}finally{this._waitingForAuth.clear()}_&&(this._refreshToken=_,setInterval(async()=>{if(this._refreshToken){const _e=await(await fetch(`${this._apiUrl}/v1/admin/auth/refresh`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refreshToken:this._refreshToken})})).json();this._token=_e.authentication.accessToken}},1e3*60*60))}isAuthenticated(){return this._token!==void 0}async loginToPeer(s,_,j){if((await fetch(`${s}/login`,{method:"POST",body:JSON.stringify({username:_,password:j}),headers:{"Content-Type":"application/json"}})).status!==200)throw new LoginFailureError("Invalid authentication")}getCurrentUser(){return this._currentUser}async waitTilAuthenticated(){return this.token!==void 0?!0:new Promise(s=>{this._waitingForAuth.add(s)})}async listenForRefresh(){const s=()=>{this._refreshTimer=void 0,this._refreshAuthToken()};this._addAccessTokenRefreshListener(_=>{this._refreshTimer&&clearTimeout(this._refreshTimer),this._refreshTimer=setTimeout(s,36e5),this.loginWithToken(_)}),this._refreshTimer=setTimeout(s,36e5)}async forgotPassword(s){await fetch(`${this._apiUrl}/v1/admin/auth/forgot-password`,{method:"POST",body:JSON.stringify({email:s}),headers:{"Content-Type":"application/json"}})}async confirmForgotPassword(s){return(await fetch(`${this._apiUrl}/v1/admin/auth/confirm-forgot-password`,{method:"POST",body:JSON.stringify(s),headers:{"Content-Type":"application/json"}})).ok}async respondToNewPasswordRequiredChallenge(s){const _=await fetch(`${this._apiUrl}/v1/admin/auth/respond-to-new-password-required-challenge`,{method:"POST",body:JSON.stringify(s),headers:{"Content-Type":"application/json"}});if(_.ok)return await _.json();throw new Error("respond-to-new-password-required-challenge failed")}async loginWithGoogle(s){return await(await fetch(`${this._apiUrl}/v1/admin/auth/login-google`,{method:"POST",body:JSON.stringify(s),headers:{"Content-Type":"application/json"}})).json()}async refresh(s){const _=await(await fetch(`${this._apiUrl}/v1/admin/auth/refresh`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refreshToken:s})})).json();await this.loginWithToken(_.authentication.accessToken,s)}async checkSso(s,_){return await(await fetch(`${this._apiUrl}/v1/admin/auth/check-sso`,{method:"POST",body:JSON.stringify({email:s,allowUserAutoCreation:_}),headers:{"Content-Type":"application/json"}})).json()}async loginWithSso(s,_){const j=await(await fetch(`${this._apiUrl}/v1/admin/auth/login-sso`,{method:"POST",body:JSON.stringify({token:s,refreshToken:_}),headers:{"Content-Type":"application/json"}})).json();if(!j.authentication)throw new Error("Failed to login with SSO");return await this.loginWithToken(j.authentication.accessToken,j.authentication.refreshToken)}}const Authentication=new AuthenticationStore({apiUrl:FORMANT_API_URL,refreshAuthToken,addAccessTokenRefreshListener});async function getModuleConfiguration(o){return(await(await fetch(`${FORMANT_API_URL}/v1/admin/module-configurations/${o}`,{headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).configuration}function disableAnalyticsBottomBar(){sendAppMessage({type:"hide_analytics_date_picker"})}function goToDevice(o){sendAppMessage({type:"go_to_device",deviceId:o})}function goToTime(o){sendAppMessage({type:"go_to_time",time:o.getTime()})}function requestModuleData(){const o=getCurrentModuleContext();if(!o)throw new Error("No module context");sendAppMessage({type:"request_module_data",module:o})}function sendChannelData(o,s){const _=getCurrentModuleContext();if(!_)throw new Error("No module context");sendAppMessage({type:"send_channel_data",source:_,channel:o,data:s})}function setModuleDateTimeRange(o,s){const _=getCurrentModuleContext();if(!_)throw new Error("No module context");sendAppMessage({type:"set_module_data_time_range",module:_,before:o,after:s||0})}function setupModuleMenus(o){const s=getCurrentModuleContext();if(!s)throw new Error("No module context");sendAppMessage({type:"setup_module_menus",module:s,menus:o})}function showMessage(o){sendAppMessage({type:"show_message",message:o})}function addChannelDataListener(o,s){const _=j=>{const $=j.data;$.type==="channel_data"&&$.channel===o&&s({source:$.source,data:$.data})};return window.addEventListener("message",_),()=>window.removeEventListener("message",_)}function addMenuListener(o){const s=_=>{const j=_.data;j.type==="module_menu_item_clicked"&&o(j.menu)};return window.addEventListener("message",s),()=>window.removeEventListener("message",s)}function addModuleConfigurationListener(o){const s=_=>{const j=_.data;j.type==="module_configuration"&&o(j)};return window.addEventListener("message",s),()=>window.removeEventListener("message",s)}function addModuleDataListener(o){const s=getCurrentModuleContext();s&&sendAppMessage({type:"request_module_data",module:s});const _=j=>{const $=j.data;$.type==="module_data"&&o({streams:$.streams,time:$.time,queryRange:$.queryRange})};return window.addEventListener("message",_),()=>window.removeEventListener("message",_)}function addOverviewDeviceListener(o){sendAppMessage({type:"request_devices"});const s=_=>{const j=_.data;j.type==="overview_devices"&&o(j.data)};return window.addEventListener("message",s),()=>window.removeEventListener("message",s)}function _typeof$1(o){return _typeof$1=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},_typeof$1(o)}function toInteger(o){if(o===null||o===!0||o===!1)return NaN;var s=Number(o);return isNaN(s)?s:s<0?Math.ceil(s):Math.floor(s)}function requiredArgs(o,s){if(s.length1?"s":"")+" required, but only "+s.length+" present")}function toDate(o){requiredArgs(1,arguments);var s=Object.prototype.toString.call(o);return o instanceof Date||_typeof$1(o)==="object"&&s==="[object Date]"?new Date(o.getTime()):typeof o=="number"||s==="[object Number]"?new Date(o):((typeof o=="string"||s==="[object String]")&&typeof console<"u"&&(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn(new Error().stack)),new Date(NaN))}function addDays(o,s){requiredArgs(2,arguments);var _=toDate(o),j=toInteger(s);return isNaN(j)?new Date(NaN):(j&&_.setDate(_.getDate()+j),_)}function addMonths(o,s){requiredArgs(2,arguments);var _=toDate(o),j=toInteger(s);if(isNaN(j))return new Date(NaN);if(!j)return _;var $=_.getDate(),_e=new Date(_.getTime());_e.setMonth(_.getMonth()+j+1,0);var et=_e.getDate();return $>=et?_e:(_.setFullYear(_e.getFullYear(),_e.getMonth(),$),_)}function addMilliseconds(o,s){requiredArgs(2,arguments);var _=toDate(o).getTime(),j=toInteger(s);return new Date(_+j)}var MILLISECONDS_IN_HOUR=36e5;function addHours(o,s){requiredArgs(2,arguments);var _=toInteger(s);return addMilliseconds(o,_*MILLISECONDS_IN_HOUR)}var defaultOptions={};function getDefaultOptions(){return defaultOptions}function startOfWeek(o,s){var _,j,$,_e,et,tt,nt,rt;requiredArgs(1,arguments);var it=getDefaultOptions(),st=toInteger((_=(j=($=(_e=s==null?void 0:s.weekStartsOn)!==null&&_e!==void 0?_e:s==null||(et=s.locale)===null||et===void 0||(tt=et.options)===null||tt===void 0?void 0:tt.weekStartsOn)!==null&&$!==void 0?$:it.weekStartsOn)!==null&&j!==void 0?j:(nt=it.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.weekStartsOn)!==null&&_!==void 0?_:0);if(!(st>=0&&st<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var ut=toDate(o),Ft=ut.getDay(),dt=(Ft=et)throw new RangeError("Invalid interval");var tt=[],nt=j,rt=Number((_=s==null?void 0:s.step)!==null&&_!==void 0?_:1);if(rt<1||isNaN(rt))throw new RangeError("`options.step` must be a number equal to or greater than 1");for(;nt.getTime()<=et;)tt.push(toDate(nt)),nt=addMinutes(nt,rt);return tt}function eachMonthOfInterval(o){requiredArgs(1,arguments);var s=o||{},_=toDate(s.start),j=toDate(s.end),$=j.getTime(),_e=[];if(!(_.getTime()<=$))throw new RangeError("Invalid interval");var et=_;for(et.setHours(0,0,0,0),et.setDate(1);et.getTime()<=$;)_e.push(toDate(et)),et.setMonth(et.getMonth()+1);return _e}function startOfQuarter(o){requiredArgs(1,arguments);var s=toDate(o),_=s.getMonth(),j=_-_%3;return s.setMonth(j,1),s.setHours(0,0,0,0),s}function eachQuarterOfInterval(o){requiredArgs(1,arguments);var s=o||{},_=toDate(s.start),j=toDate(s.end),$=j.getTime();if(!(_.getTime()<=$))throw new RangeError("Invalid interval");var _e=startOfQuarter(_),et=startOfQuarter(j);$=et.getTime();for(var tt=[],nt=_e;nt.getTime()<=$;)tt.push(toDate(nt)),nt=addQuarters(nt,1);return tt}function eachWeekOfInterval(o,s){requiredArgs(1,arguments);var _=o||{},j=toDate(_.start),$=toDate(_.end),_e=$.getTime();if(!(j.getTime()<=_e))throw new RangeError("Invalid interval");var et=startOfWeek(j,s),tt=startOfWeek($,s);et.setHours(15),tt.setHours(15),_e=tt.getTime();for(var nt=[],rt=et;rt.getTime()<=_e;)rt.setHours(0),nt.push(toDate(rt)),rt=addWeeks(rt,1),rt.setHours(15);return nt}function startOfMonth(o){requiredArgs(1,arguments);var s=toDate(o);return s.setDate(1),s.setHours(0,0,0,0),s}function endOfYear(o){requiredArgs(1,arguments);var s=toDate(o),_=s.getFullYear();return s.setFullYear(_+1,0,0),s.setHours(23,59,59,999),s}function startOfYear(o){requiredArgs(1,arguments);var s=toDate(o),_=new Date(0);return _.setFullYear(s.getFullYear(),0,1),_.setHours(0,0,0,0),_}function eachYearOfInterval(o){requiredArgs(1,arguments);var s=o||{},_=toDate(s.start),j=toDate(s.end),$=j.getTime();if(!(_.getTime()<=$))throw new RangeError("Invalid interval");var _e=[],et=_;for(et.setHours(0,0,0,0),et.setMonth(0,1);et.getTime()<=$;)_e.push(toDate(et)),et.setFullYear(et.getFullYear()+1);return _e}function endOfHour(o){requiredArgs(1,arguments);var s=toDate(o);return s.setMinutes(59,59,999),s}function endOfWeek(o,s){var _,j,$,_e,et,tt,nt,rt;requiredArgs(1,arguments);var it=getDefaultOptions(),st=toInteger((_=(j=($=(_e=s==null?void 0:s.weekStartsOn)!==null&&_e!==void 0?_e:s==null||(et=s.locale)===null||et===void 0||(tt=et.options)===null||tt===void 0?void 0:tt.weekStartsOn)!==null&&$!==void 0?$:it.weekStartsOn)!==null&&j!==void 0?j:(nt=it.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.weekStartsOn)!==null&&_!==void 0?_:0);if(!(st>=0&&st<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var ut=toDate(o),Ft=ut.getDay(),dt=(Ft=1&&Ft<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var dt=new Date(0);dt.setFullYear(st+1,0,Ft),dt.setHours(0,0,0,0);var gt=startOfWeek(dt,s),Ut=new Date(0);Ut.setFullYear(st,0,Ft),Ut.setHours(0,0,0,0);var ht=startOfWeek(Ut,s);return it.getTime()>=gt.getTime()?st+1:it.getTime()>=ht.getTime()?st:st-1}function startOfWeekYear(o,s){var _,j,$,_e,et,tt,nt,rt;requiredArgs(1,arguments);var it=getDefaultOptions(),st=toInteger((_=(j=($=(_e=s==null?void 0:s.firstWeekContainsDate)!==null&&_e!==void 0?_e:s==null||(et=s.locale)===null||et===void 0||(tt=et.options)===null||tt===void 0?void 0:tt.firstWeekContainsDate)!==null&&$!==void 0?$:it.firstWeekContainsDate)!==null&&j!==void 0?j:(nt=it.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.firstWeekContainsDate)!==null&&_!==void 0?_:1),ut=getWeekYear(o,s),Ft=new Date(0);Ft.setFullYear(ut,0,st),Ft.setHours(0,0,0,0);var dt=startOfWeek(Ft,s);return dt}var MILLISECONDS_IN_WEEK=6048e5;function getWeek(o,s){requiredArgs(1,arguments);var _=toDate(o),j=startOfWeek(_,s).getTime()-startOfWeekYear(_,s).getTime();return Math.round(j/MILLISECONDS_IN_WEEK)+1}function getYear(o){return requiredArgs(1,arguments),toDate(o).getFullYear()}function startOfHour(o){requiredArgs(1,arguments);var s=toDate(o);return s.setMinutes(0,0,0),s}function subDays(o,s){requiredArgs(2,arguments);var _=toInteger(s);return addDays(o,-_)}function roundToNearestMinutes(o,s){var _;if(arguments.length<1)throw new TypeError("1 argument required, but only none provided present");var j=toInteger((_=s==null?void 0:s.nearestTo)!==null&&_!==void 0?_:1);if(j<1||j>30)throw new RangeError("`options.nearestTo` must be between 1 and 30");var $=toDate(o),_e=$.getSeconds(),et=$.getMinutes()+_e/60,tt=getRoundingMethod(s==null?void 0:s.roundingMethod),nt=tt(et/j)*j,rt=et%j,it=Math.round(rt/j)*j;return new Date($.getFullYear(),$.getMonth(),$.getDate(),$.getHours(),nt+it)}function subMonths(o,s){requiredArgs(2,arguments);var _=toInteger(s);return addMonths(o,-_)}function subHours(o,s){requiredArgs(2,arguments);var _=toInteger(s);return addHours(o,-_)}function subMinutes(o,s){requiredArgs(2,arguments);var _=toInteger(s);return addMinutes(o,-_)}function subQuarters(o,s){requiredArgs(2,arguments);var _=toInteger(s);return addQuarters(o,-_)}function subWeeks(o,s){requiredArgs(2,arguments);var _=toInteger(s);return addWeeks(o,-_)}function subYears(o,s){requiredArgs(2,arguments);var _=toInteger(s);return addYears(o,-_)}const millisecond$2=1,second$2=1e3,minute$2=60*second$2,hour$2=60*minute$2,day$2=24*hour$2,week$2=7*day$2,month$2=30*day$2,year$2=365*day$2,duration$2={millisecond:millisecond$2,second:second$2,minute:minute$2,hour:hour$2,day:day$2,week:week$2,month:month$2,year:year$2};function filterDataByType$1(o,s){return o.filter(_=>s.includes(_.type))}function filterDataByTime$1(o,s,_){const j=s.getTime(),$=_.getTime();return o.map(_e=>({..._e,points:_e.points.filter(([et])=>et>=j&&et<$)})).filter(({points:_e})=>_e.length>0)}let StoreCache$1=class{constructor({capacity:o,timeout:s}={}){me(this,"entries",new Map),me(this,"metadata",new Map),me(this,"capacity"),me(this,"staleIntervalMs"),this.capacity=o||1e4,this.staleIntervalMs=s||duration$2.minute}get(o,s){const _=this.keyToCacheKey(o);return this.isStale(_)&&!this.isGenerating(_)&&s&&this.generate(o,s),this.entries.get(_)}set(o,s){const _=this.keyToCacheKey(o);this.metadata.set(_,{generating:!1,staleAt:performance.now()+this.staleIntervalMs});const j=this.entries.get(_);JSON.stringify(j)===JSON.stringify(s)||(this.entries.set(_,s),this.enforceMaxSize())}clear(){this.entries.clear(),[...this.metadata.values()].forEach(o=>o.generating=!1)}clearKey(o){this.metadata.delete(o),this.entries.delete(o)}keyToCacheKey(o){return JSON.stringify(o)}enforceMaxSize(){for(;this.metadata.size>this.capacity&&this.metadata.size>0;){const[o]=[...this.metadata.entries()].reduce(([s,_],[j,$])=>$.staleAt<_.staleAt?[j,$]:[s,_]);this.clearKey(o)}}isStale(o){const s=this.metadata.get(o);return s?(s==null?void 0:s.staleAt){const et=this.metadata.get(_);return(et==null?void 0:et.generating)!==$||this.set(o,_e),_e}).catch(_e=>{throw this.metadata.delete(_),_e});this.metadata.set(_,{...j,generating:$,staleAt:performance.now()+this.staleIntervalMs})}};async function queryTelemetry(o){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/queries/queries`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}let QueryStore$1=class{constructor(){me(this,"queryStoreCache",new StoreCache$1({capacity:1e4,timeout:20*duration$2.second})),me(this,"liveQueryStoreCache",new StoreCache$1({capacity:1e4,timeout:200*duration$2.millisecond}))}moduleQuery(o,s,_,j,$,_e=!1){const et={...o,names:[...s],types:[..._]},tt=this.query(et,j,$,_e);return tt===void 0||tt==="too much data"?tt:filterDataByType$1(tt,_)}query(o,s,_,j=!1){const $={...o,start:startOfMinute(s).toISOString(),end:j?_.toISOString():addMinutes(roundToNearestMinutes(_),1).toISOString(),latestOnly:j},_e=_>addSeconds(new Date,-20);let et;return _e?et=this.liveQueryCache($):et=this.queryCache($),!et||et==="too much data"||j?et:filterDataByTime$1(et,s,_)}queryCache(o){return this.queryStoreCache.get(o,async()=>{try{return await queryTelemetry(o)}catch(s){throw s}})}liveQueryCache(o){return this.liveQueryStoreCache.get(o,async()=>{try{return await queryTelemetry(o)}catch(s){throw s}})}};const queryStore=new QueryStore$1;function addStreamListener(o,s,_){const j=$=>{const _e=$.data;if(_e.type==="module_data"){const{start:et,end:tt}=_e.queryRange;_(queryStore.moduleQuery({},o,s,new Date(et),new Date(tt),!1))}};return window.addEventListener("message",j),()=>window.removeEventListener("message",j)}async function getDate(o,s,_){return new Promise(j=>{sendAppMessage({type:"request_date",minTime:s,maxTime:_,time:o});const $=_e=>{const et=_e.data;et.type==="date_response"&&(window.removeEventListener("message",$),j(et.data))};window.addEventListener("message",$)})}async function prompt(o,s){return new Promise(_=>{const j=Math.random().toString();sendAppMessage({type:"prompt",promptId:j,schema:o,okText:s==null?void 0:s.okText,cancelText:s==null?void 0:s.cancelText});const $=_e=>{const et=_e.data;et.type==="prompt_response"&&et.promptId===j&&_(et.data),window.removeEventListener("message",$)};window.addEventListener("message",$)})}const rr=class{static isModule(){return getCurrentModuleContext()!==null}static async getCurrentModuleConfiguration(){let o=new URLSearchParams("");typeof window<"u"&&window.location&&(o=new URLSearchParams(window.location.search));const s=o.get("configuration");if(!(s===null||s.trim()===""))return getModuleConfiguration(s.trim())}static get isOnline(){return rr._isOnline}static listenForConnectionEvents(){const o=s=>{const{data:_}=s;_.type==="formant_online"&&(this._isOnline=_.online)};return window.addEventListener("message",o),()=>window.removeEventListener("message",o)}static checkConnection(o=1e3){return new Promise((s,_)=>{const j=setTimeout(()=>_(new Error("deadline expired: took too long")),o),$=_e=>{window.removeEventListener("message",$),clearTimeout(j);const{data:et}=_e;et.type==="formant_online"&&(this._isOnline=et.online,s(et.online))};window.addEventListener("message",$),sendAppMessage({type:"formant_online"})})}static waitForConnection(o=5e3){let s=!1;const _=new Promise((_e,et)=>{setTimeout(()=>{s=!0,et(new Error("deadline expired: took too long"))},o)}),j=_e=>new Promise(et=>setTimeout(et,_e)),$=async()=>{for(await j(50);!s&&!(this.isOnline||await this.checkConnection);)await j(500)};return Promise.race([_,$()])}};let App$2=rr;me(App$2,"getCurrentModuleContext",getCurrentModuleContext),me(App$2,"disableAnalyticsBottomBar",disableAnalyticsBottomBar),me(App$2,"goToDevice",goToDevice),me(App$2,"goToTime",goToTime),me(App$2,"refreshAuthToken",refreshAuthToken),me(App$2,"requestModuleData",requestModuleData),me(App$2,"sendChannelData",sendChannelData),me(App$2,"setModuleDateTimeRange",setModuleDateTimeRange),me(App$2,"setupModuleMenus",setupModuleMenus),me(App$2,"showMessage",showMessage),me(App$2,"addAccessTokenRefreshListener",addAccessTokenRefreshListener),me(App$2,"addChannelDataListener",addChannelDataListener),me(App$2,"addMenuListener",addMenuListener),me(App$2,"addModuleConfigurationListener",addModuleConfigurationListener),me(App$2,"addModuleDataListener",addModuleDataListener),me(App$2,"addOverviewDeviceListener",addOverviewDeviceListener),me(App$2,"addStreamListener",addStreamListener),me(App$2,"getDate",getDate),me(App$2,"prompt",prompt),me(App$2,"_isOnline",null);class CaptureStream{constructor(s){me(this,"token"),this.captureSession=s}async ingestJSON(s){if(!this.token){const _=await(await fetch(`${FORMANT_API_URL}/v1/admin/capture-sessions/${this.captureSession.code}/authenticate`,{method:"POST"})).json();this.token=_.token}await fetch(`${FORMANT_API_URL}/v1/ingest`,{method:"POST",body:JSON.stringify({deviceId:this.captureSession.deviceId,name:this.captureSession.streamName,type:"json",points:[[Date.now(),JSON.stringify(s)]]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.token}})}}class DataChannel{constructor(s){me(this,"ready",!1),me(this,"listeners",[]),me(this,"openListeners",[]),me(this,"closeListeners",[]),me(this,"errorListeners",[]),me(this,"binaryListeners",[]),me(this,"error"),me(this,"decoder",new TextDecoder),this.dataChannel=s,this.dataChannel.binaryType="arraybuffer",this.dataChannel.onopen=()=>{this.setReady()},this.dataChannel.onclose=()=>{this.ready=!1,this.closeListeners.forEach(_=>_())},this.dataChannel.onerror=_=>{console.error(_),this.error="An error occurred in DataChannel",this.errorListeners.forEach(j=>j(_))},this.dataChannel.onmessage=_=>{this.listeners.forEach(j=>{const $=new Uint8Array(_.data),_e=this.decoder.decode($);j(_e)}),this.binaryListeners.forEach(j=>{j(new Uint8Array(_.data))})}}setReady(){this.ready=!0,this.openListeners.forEach(s=>s())}addOpenListener(s){this.openListeners.push(s)}removeOpenListener(s){this.openListeners=this.openListeners.filter(_=>_!==s)}addCloseListener(s){this.closeListeners.push(s)}removeCloseListener(s){this.closeListeners=this.closeListeners.filter(_=>_!==s)}addErrorListener(s){this.errorListeners.push(s)}removeErrorListener(s){this.errorListeners=this.errorListeners.filter(_=>_!==s)}async waitTilReady(){return this.ready?!0:new Promise((s,_)=>{let j=setInterval(()=>{this.dataChannel.readyState==="open"&&this.setReady(),this.ready&&(clearInterval(j),s(!0)),this.error&&_(this.error)},10)})}send(s){if(!this.ready)throw new Error("Connection has been closed");this.dataChannel.send(s)}sendBinary(s){if(!this.ready)throw new Error("Connection has been closed");this.dataChannel.send(s)}addListener(s){this.listeners.push(s)}removeListener(s){const _=this.listeners.indexOf(s);if(_===-1)throw new Error("Could not find data channel listener to remove");if(this.error)throw new Error(this.error);this.listeners.splice(_,1)}addBinaryListener(s){this.binaryListeners.push(s)}removeBinaryListener(s){const _=this.binaryListeners.indexOf(s);if(_===-1)throw new Error("Could not find data channel listener to remove");if(this.error)throw new Error(this.error);this.binaryListeners.splice(_,1)}}function defined$1(o,s){if(o!==void 0)return o;throw new Error(s||"Value is undefined")}function delay$1(o){return new Promise(s=>setTimeout(s,o))}async function createDevice(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/devices`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */const Z_FIXED$1=4,Z_BINARY=0,Z_TEXT=1,Z_UNKNOWN$1=2;function zero$1(o){let s=o.length;for(;--s>=0;)o[s]=0}const STORED_BLOCK=0,STATIC_TREES=1,DYN_TREES=2,MIN_MATCH$1=3,MAX_MATCH$1=258,LENGTH_CODES$1=29,LITERALS$1=256,L_CODES$1=LITERALS$1+1+LENGTH_CODES$1,D_CODES$1=30,BL_CODES$1=19,HEAP_SIZE$1=2*L_CODES$1+1,MAX_BITS$1=15,Buf_size=16,MAX_BL_BITS=7,END_BLOCK=256,REP_3_6=16,REPZ_3_10=17,REPZ_11_138=18,extra_lbits=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),extra_dbits=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),extra_blbits=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),bl_order=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),DIST_CODE_LEN=512,static_ltree=new Array((L_CODES$1+2)*2);zero$1(static_ltree);const static_dtree=new Array(D_CODES$1*2);zero$1(static_dtree);const _dist_code=new Array(DIST_CODE_LEN);zero$1(_dist_code);const _length_code=new Array(MAX_MATCH$1-MIN_MATCH$1+1);zero$1(_length_code);const base_length=new Array(LENGTH_CODES$1);zero$1(base_length);const base_dist=new Array(D_CODES$1);zero$1(base_dist);function StaticTreeDesc(o,s,_,j,$){this.static_tree=o,this.extra_bits=s,this.extra_base=_,this.elems=j,this.max_length=$,this.has_stree=o&&o.length}let static_l_desc,static_d_desc,static_bl_desc;function TreeDesc(o,s){this.dyn_tree=o,this.max_code=0,this.stat_desc=s}const d_code=o=>o<256?_dist_code[o]:_dist_code[256+(o>>>7)],put_short=(o,s)=>{o.pending_buf[o.pending++]=s&255,o.pending_buf[o.pending++]=s>>>8&255},send_bits=(o,s,_)=>{o.bi_valid>Buf_size-_?(o.bi_buf|=s<>Buf_size-o.bi_valid,o.bi_valid+=_-Buf_size):(o.bi_buf|=s<{send_bits(o,_[s*2],_[s*2+1])},bi_reverse=(o,s)=>{let _=0;do _|=o&1,o>>>=1,_<<=1;while(--s>0);return _>>>1},bi_flush=o=>{o.bi_valid===16?(put_short(o,o.bi_buf),o.bi_buf=0,o.bi_valid=0):o.bi_valid>=8&&(o.pending_buf[o.pending++]=o.bi_buf&255,o.bi_buf>>=8,o.bi_valid-=8)},gen_bitlen=(o,s)=>{const _=s.dyn_tree,j=s.max_code,$=s.stat_desc.static_tree,_e=s.stat_desc.has_stree,et=s.stat_desc.extra_bits,tt=s.stat_desc.extra_base,nt=s.stat_desc.max_length;let rt,it,st,ut,Ft,dt,gt=0;for(ut=0;ut<=MAX_BITS$1;ut++)o.bl_count[ut]=0;for(_[o.heap[o.heap_max]*2+1]=0,rt=o.heap_max+1;rtnt&&(ut=nt,gt++),_[it*2+1]=ut,!(it>j)&&(o.bl_count[ut]++,Ft=0,it>=tt&&(Ft=et[it-tt]),dt=_[it*2],o.opt_len+=dt*(ut+Ft),_e&&(o.static_len+=dt*($[it*2+1]+Ft)));if(gt!==0){do{for(ut=nt-1;o.bl_count[ut]===0;)ut--;o.bl_count[ut]--,o.bl_count[ut+1]+=2,o.bl_count[nt]--,gt-=2}while(gt>0);for(ut=nt;ut!==0;ut--)for(it=o.bl_count[ut];it!==0;)st=o.heap[--rt],!(st>j)&&(_[st*2+1]!==ut&&(o.opt_len+=(ut-_[st*2+1])*_[st*2],_[st*2+1]=ut),it--)}},gen_codes=(o,s,_)=>{const j=new Array(MAX_BITS$1+1);let $=0,_e,et;for(_e=1;_e<=MAX_BITS$1;_e++)$=$+_[_e-1]<<1,j[_e]=$;for(et=0;et<=s;et++){let tt=o[et*2+1];tt!==0&&(o[et*2]=bi_reverse(j[tt]++,tt))}},tr_static_init=()=>{let o,s,_,j,$;const _e=new Array(MAX_BITS$1+1);for(_=0,j=0;j>=7;j{let s;for(s=0;s{o.bi_valid>8?put_short(o,o.bi_buf):o.bi_valid>0&&(o.pending_buf[o.pending++]=o.bi_buf),o.bi_buf=0,o.bi_valid=0},smaller=(o,s,_,j)=>{const $=s*2,_e=_*2;return o[$]{const j=o.heap[_];let $=_<<1;for(;$<=o.heap_len&&(${let j,$,_e=0,et,tt;if(o.sym_next!==0)do j=o.pending_buf[o.sym_buf+_e++]&255,j+=(o.pending_buf[o.sym_buf+_e++]&255)<<8,$=o.pending_buf[o.sym_buf+_e++],j===0?send_code(o,$,s):(et=_length_code[$],send_code(o,et+LITERALS$1+1,s),tt=extra_lbits[et],tt!==0&&($-=base_length[et],send_bits(o,$,tt)),j--,et=d_code(j),send_code(o,et,_),tt=extra_dbits[et],tt!==0&&(j-=base_dist[et],send_bits(o,j,tt)));while(_e{const _=s.dyn_tree,j=s.stat_desc.static_tree,$=s.stat_desc.has_stree,_e=s.stat_desc.elems;let et,tt,nt=-1,rt;for(o.heap_len=0,o.heap_max=HEAP_SIZE$1,et=0;et<_e;et++)_[et*2]!==0?(o.heap[++o.heap_len]=nt=et,o.depth[et]=0):_[et*2+1]=0;for(;o.heap_len<2;)rt=o.heap[++o.heap_len]=nt<2?++nt:0,_[rt*2]=1,o.depth[rt]=0,o.opt_len--,$&&(o.static_len-=j[rt*2+1]);for(s.max_code=nt,et=o.heap_len>>1;et>=1;et--)pqdownheap(o,_,et);rt=_e;do et=o.heap[1],o.heap[1]=o.heap[o.heap_len--],pqdownheap(o,_,1),tt=o.heap[1],o.heap[--o.heap_max]=et,o.heap[--o.heap_max]=tt,_[rt*2]=_[et*2]+_[tt*2],o.depth[rt]=(o.depth[et]>=o.depth[tt]?o.depth[et]:o.depth[tt])+1,_[et*2+1]=_[tt*2+1]=rt,o.heap[1]=rt++,pqdownheap(o,_,1);while(o.heap_len>=2);o.heap[--o.heap_max]=o.heap[1],gen_bitlen(o,s),gen_codes(_,nt,o.bl_count)},scan_tree=(o,s,_)=>{let j,$=-1,_e,et=s[0*2+1],tt=0,nt=7,rt=4;for(et===0&&(nt=138,rt=3),s[(_+1)*2+1]=65535,j=0;j<=_;j++)_e=et,et=s[(j+1)*2+1],!(++tt{let j,$=-1,_e,et=s[0*2+1],tt=0,nt=7,rt=4;for(et===0&&(nt=138,rt=3),j=0;j<=_;j++)if(_e=et,et=s[(j+1)*2+1],!(++tt{let s;for(scan_tree(o,o.dyn_ltree,o.l_desc.max_code),scan_tree(o,o.dyn_dtree,o.d_desc.max_code),build_tree(o,o.bl_desc),s=BL_CODES$1-1;s>=3&&o.bl_tree[bl_order[s]*2+1]===0;s--);return o.opt_len+=3*(s+1)+5+5+4,s},send_all_trees=(o,s,_,j)=>{let $;for(send_bits(o,s-257,5),send_bits(o,_-1,5),send_bits(o,j-4,4),$=0;${let s=4093624447,_;for(_=0;_<=31;_++,s>>>=1)if(s&1&&o.dyn_ltree[_*2]!==0)return Z_BINARY;if(o.dyn_ltree[9*2]!==0||o.dyn_ltree[10*2]!==0||o.dyn_ltree[13*2]!==0)return Z_TEXT;for(_=32;_{static_init_done||(tr_static_init(),static_init_done=!0),o.l_desc=new TreeDesc(o.dyn_ltree,static_l_desc),o.d_desc=new TreeDesc(o.dyn_dtree,static_d_desc),o.bl_desc=new TreeDesc(o.bl_tree,static_bl_desc),o.bi_buf=0,o.bi_valid=0,init_block(o)},_tr_stored_block$1=(o,s,_,j)=>{send_bits(o,(STORED_BLOCK<<1)+(j?1:0),3),bi_windup(o),put_short(o,_),put_short(o,~_),_&&o.pending_buf.set(o.window.subarray(s,s+_),o.pending),o.pending+=_},_tr_align$1=o=>{send_bits(o,STATIC_TREES<<1,3),send_code(o,END_BLOCK,static_ltree),bi_flush(o)},_tr_flush_block$1=(o,s,_,j)=>{let $,_e,et=0;o.level>0?(o.strm.data_type===Z_UNKNOWN$1&&(o.strm.data_type=detect_data_type(o)),build_tree(o,o.l_desc),build_tree(o,o.d_desc),et=build_bl_tree(o),$=o.opt_len+3+7>>>3,_e=o.static_len+3+7>>>3,_e<=$&&($=_e)):$=_e=_+5,_+4<=$&&s!==-1?_tr_stored_block$1(o,s,_,j):o.strategy===Z_FIXED$1||_e===$?(send_bits(o,(STATIC_TREES<<1)+(j?1:0),3),compress_block(o,static_ltree,static_dtree)):(send_bits(o,(DYN_TREES<<1)+(j?1:0),3),send_all_trees(o,o.l_desc.max_code+1,o.d_desc.max_code+1,et+1),compress_block(o,o.dyn_ltree,o.dyn_dtree)),init_block(o),j&&bi_windup(o)},_tr_tally$1=(o,s,_)=>(o.pending_buf[o.sym_buf+o.sym_next++]=s,o.pending_buf[o.sym_buf+o.sym_next++]=s>>8,o.pending_buf[o.sym_buf+o.sym_next++]=_,s===0?o.dyn_ltree[_*2]++:(o.matches++,s--,o.dyn_ltree[(_length_code[_]+LITERALS$1+1)*2]++,o.dyn_dtree[d_code(s)*2]++),o.sym_next===o.sym_end);var _tr_init_1=_tr_init$1,_tr_stored_block_1=_tr_stored_block$1,_tr_flush_block_1=_tr_flush_block$1,_tr_tally_1=_tr_tally$1,_tr_align_1=_tr_align$1,trees={_tr_init:_tr_init_1,_tr_stored_block:_tr_stored_block_1,_tr_flush_block:_tr_flush_block_1,_tr_tally:_tr_tally_1,_tr_align:_tr_align_1};const adler32=(o,s,_,j)=>{let $=o&65535|0,_e=o>>>16&65535|0,et=0;for(;_!==0;){et=_>2e3?2e3:_,_-=et;do $=$+s[j++]|0,_e=_e+$|0;while(--et);$%=65521,_e%=65521}return $|_e<<16|0};var adler32_1=adler32;const makeTable=()=>{let o,s=[];for(var _=0;_<256;_++){o=_;for(var j=0;j<8;j++)o=o&1?3988292384^o>>>1:o>>>1;s[_]=o}return s},crcTable=new Uint32Array(makeTable()),crc32=(o,s,_,j)=>{const $=crcTable,_e=j+_;o^=-1;for(let et=j;et<_e;et++)o=o>>>8^$[(o^s[et])&255];return o^-1};var crc32_1=crc32,messages={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},constants$2={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init,_tr_stored_block,_tr_flush_block,_tr_tally,_tr_align}=trees,{Z_NO_FLUSH:Z_NO_FLUSH$2,Z_PARTIAL_FLUSH,Z_FULL_FLUSH:Z_FULL_FLUSH$1,Z_FINISH:Z_FINISH$3,Z_BLOCK:Z_BLOCK$1,Z_OK:Z_OK$3,Z_STREAM_END:Z_STREAM_END$3,Z_STREAM_ERROR:Z_STREAM_ERROR$2,Z_DATA_ERROR:Z_DATA_ERROR$2,Z_BUF_ERROR:Z_BUF_ERROR$1,Z_DEFAULT_COMPRESSION:Z_DEFAULT_COMPRESSION$1,Z_FILTERED,Z_HUFFMAN_ONLY,Z_RLE,Z_FIXED,Z_DEFAULT_STRATEGY:Z_DEFAULT_STRATEGY$1,Z_UNKNOWN,Z_DEFLATED:Z_DEFLATED$2}=constants$2,MAX_MEM_LEVEL=9,MAX_WBITS$1=15,DEF_MEM_LEVEL=8,LENGTH_CODES=29,LITERALS=256,L_CODES=LITERALS+1+LENGTH_CODES,D_CODES=30,BL_CODES=19,HEAP_SIZE=2*L_CODES+1,MAX_BITS=15,MIN_MATCH=3,MAX_MATCH=258,MIN_LOOKAHEAD=MAX_MATCH+MIN_MATCH+1,PRESET_DICT=32,INIT_STATE=42,GZIP_STATE=57,EXTRA_STATE=69,NAME_STATE=73,COMMENT_STATE=91,HCRC_STATE=103,BUSY_STATE=113,FINISH_STATE=666,BS_NEED_MORE=1,BS_BLOCK_DONE=2,BS_FINISH_STARTED=3,BS_FINISH_DONE=4,OS_CODE=3,err=(o,s)=>(o.msg=messages[s],s),rank=o=>o*2-(o>4?9:0),zero=o=>{let s=o.length;for(;--s>=0;)o[s]=0},slide_hash=o=>{let s,_,j,$=o.w_size;s=o.hash_size,j=s;do _=o.head[--j],o.head[j]=_>=$?_-$:0;while(--s);s=$,j=s;do _=o.prev[--j],o.prev[j]=_>=$?_-$:0;while(--s)};let HASH_ZLIB=(o,s,_)=>(s<{const s=o.state;let _=s.pending;_>o.avail_out&&(_=o.avail_out),_!==0&&(o.output.set(s.pending_buf.subarray(s.pending_out,s.pending_out+_),o.next_out),o.next_out+=_,s.pending_out+=_,o.total_out+=_,o.avail_out-=_,s.pending-=_,s.pending===0&&(s.pending_out=0))},flush_block_only=(o,s)=>{_tr_flush_block(o,o.block_start>=0?o.block_start:-1,o.strstart-o.block_start,s),o.block_start=o.strstart,flush_pending(o.strm)},put_byte=(o,s)=>{o.pending_buf[o.pending++]=s},putShortMSB=(o,s)=>{o.pending_buf[o.pending++]=s>>>8&255,o.pending_buf[o.pending++]=s&255},read_buf=(o,s,_,j)=>{let $=o.avail_in;return $>j&&($=j),$===0?0:(o.avail_in-=$,s.set(o.input.subarray(o.next_in,o.next_in+$),_),o.state.wrap===1?o.adler=adler32_1(o.adler,s,$,_):o.state.wrap===2&&(o.adler=crc32_1(o.adler,s,$,_)),o.next_in+=$,o.total_in+=$,$)},longest_match=(o,s)=>{let _=o.max_chain_length,j=o.strstart,$,_e,et=o.prev_length,tt=o.nice_match;const nt=o.strstart>o.w_size-MIN_LOOKAHEAD?o.strstart-(o.w_size-MIN_LOOKAHEAD):0,rt=o.window,it=o.w_mask,st=o.prev,ut=o.strstart+MAX_MATCH;let Ft=rt[j+et-1],dt=rt[j+et];o.prev_length>=o.good_match&&(_>>=2),tt>o.lookahead&&(tt=o.lookahead);do if($=s,!(rt[$+et]!==dt||rt[$+et-1]!==Ft||rt[$]!==rt[j]||rt[++$]!==rt[j+1])){j+=2,$++;do;while(rt[++j]===rt[++$]&&rt[++j]===rt[++$]&&rt[++j]===rt[++$]&&rt[++j]===rt[++$]&&rt[++j]===rt[++$]&&rt[++j]===rt[++$]&&rt[++j]===rt[++$]&&rt[++j]===rt[++$]&&jet){if(o.match_start=s,et=_e,_e>=tt)break;Ft=rt[j+et-1],dt=rt[j+et]}}while((s=st[s&it])>nt&&--_!==0);return et<=o.lookahead?et:o.lookahead},fill_window=o=>{const s=o.w_size;let _,j,$;do{if(j=o.window_size-o.lookahead-o.strstart,o.strstart>=s+(s-MIN_LOOKAHEAD)&&(o.window.set(o.window.subarray(s,s+s-j),0),o.match_start-=s,o.strstart-=s,o.block_start-=s,o.insert>o.strstart&&(o.insert=o.strstart),slide_hash(o),j+=s),o.strm.avail_in===0)break;if(_=read_buf(o.strm,o.window,o.strstart+o.lookahead,j),o.lookahead+=_,o.lookahead+o.insert>=MIN_MATCH)for($=o.strstart-o.insert,o.ins_h=o.window[$],o.ins_h=HASH(o,o.ins_h,o.window[$+1]);o.insert&&(o.ins_h=HASH(o,o.ins_h,o.window[$+MIN_MATCH-1]),o.prev[$&o.w_mask]=o.head[o.ins_h],o.head[o.ins_h]=$,$++,o.insert--,!(o.lookahead+o.insert{let _=o.pending_buf_size-5>o.w_size?o.w_size:o.pending_buf_size-5,j,$,_e,et=0,tt=o.strm.avail_in;do{if(j=65535,_e=o.bi_valid+42>>3,o.strm.avail_out<_e||(_e=o.strm.avail_out-_e,$=o.strstart-o.block_start,j>$+o.strm.avail_in&&(j=$+o.strm.avail_in),j>_e&&(j=_e),j<_&&(j===0&&s!==Z_FINISH$3||s===Z_NO_FLUSH$2||j!==$+o.strm.avail_in)))break;et=s===Z_FINISH$3&&j===$+o.strm.avail_in?1:0,_tr_stored_block(o,0,0,et),o.pending_buf[o.pending-4]=j,o.pending_buf[o.pending-3]=j>>8,o.pending_buf[o.pending-2]=~j,o.pending_buf[o.pending-1]=~j>>8,flush_pending(o.strm),$&&($>j&&($=j),o.strm.output.set(o.window.subarray(o.block_start,o.block_start+$),o.strm.next_out),o.strm.next_out+=$,o.strm.avail_out-=$,o.strm.total_out+=$,o.block_start+=$,j-=$),j&&(read_buf(o.strm,o.strm.output,o.strm.next_out,j),o.strm.next_out+=j,o.strm.avail_out-=j,o.strm.total_out+=j)}while(et===0);return tt-=o.strm.avail_in,tt&&(tt>=o.w_size?(o.matches=2,o.window.set(o.strm.input.subarray(o.strm.next_in-o.w_size,o.strm.next_in),0),o.strstart=o.w_size,o.insert=o.strstart):(o.window_size-o.strstart<=tt&&(o.strstart-=o.w_size,o.window.set(o.window.subarray(o.w_size,o.w_size+o.strstart),0),o.matches<2&&o.matches++,o.insert>o.strstart&&(o.insert=o.strstart)),o.window.set(o.strm.input.subarray(o.strm.next_in-tt,o.strm.next_in),o.strstart),o.strstart+=tt,o.insert+=tt>o.w_size-o.insert?o.w_size-o.insert:tt),o.block_start=o.strstart),o.high_water_e&&o.block_start>=o.w_size&&(o.block_start-=o.w_size,o.strstart-=o.w_size,o.window.set(o.window.subarray(o.w_size,o.w_size+o.strstart),0),o.matches<2&&o.matches++,_e+=o.w_size,o.insert>o.strstart&&(o.insert=o.strstart)),_e>o.strm.avail_in&&(_e=o.strm.avail_in),_e&&(read_buf(o.strm,o.window,o.strstart,_e),o.strstart+=_e,o.insert+=_e>o.w_size-o.insert?o.w_size-o.insert:_e),o.high_water>3,_e=o.pending_buf_size-_e>65535?65535:o.pending_buf_size-_e,_=_e>o.w_size?o.w_size:_e,$=o.strstart-o.block_start,($>=_||($||s===Z_FINISH$3)&&s!==Z_NO_FLUSH$2&&o.strm.avail_in===0&&$<=_e)&&(j=$>_e?_e:$,et=s===Z_FINISH$3&&o.strm.avail_in===0&&j===$?1:0,_tr_stored_block(o,o.block_start,j,et),o.block_start+=j,flush_pending(o.strm)),et?BS_FINISH_STARTED:BS_NEED_MORE)},deflate_fast=(o,s)=>{let _,j;for(;;){if(o.lookahead=MIN_MATCH&&(o.ins_h=HASH(o,o.ins_h,o.window[o.strstart+MIN_MATCH-1]),_=o.prev[o.strstart&o.w_mask]=o.head[o.ins_h],o.head[o.ins_h]=o.strstart),_!==0&&o.strstart-_<=o.w_size-MIN_LOOKAHEAD&&(o.match_length=longest_match(o,_)),o.match_length>=MIN_MATCH)if(j=_tr_tally(o,o.strstart-o.match_start,o.match_length-MIN_MATCH),o.lookahead-=o.match_length,o.match_length<=o.max_lazy_match&&o.lookahead>=MIN_MATCH){o.match_length--;do o.strstart++,o.ins_h=HASH(o,o.ins_h,o.window[o.strstart+MIN_MATCH-1]),_=o.prev[o.strstart&o.w_mask]=o.head[o.ins_h],o.head[o.ins_h]=o.strstart;while(--o.match_length!==0);o.strstart++}else o.strstart+=o.match_length,o.match_length=0,o.ins_h=o.window[o.strstart],o.ins_h=HASH(o,o.ins_h,o.window[o.strstart+1]);else j=_tr_tally(o,0,o.window[o.strstart]),o.lookahead--,o.strstart++;if(j&&(flush_block_only(o,!1),o.strm.avail_out===0))return BS_NEED_MORE}return o.insert=o.strstart{let _,j,$;for(;;){if(o.lookahead=MIN_MATCH&&(o.ins_h=HASH(o,o.ins_h,o.window[o.strstart+MIN_MATCH-1]),_=o.prev[o.strstart&o.w_mask]=o.head[o.ins_h],o.head[o.ins_h]=o.strstart),o.prev_length=o.match_length,o.prev_match=o.match_start,o.match_length=MIN_MATCH-1,_!==0&&o.prev_length4096)&&(o.match_length=MIN_MATCH-1)),o.prev_length>=MIN_MATCH&&o.match_length<=o.prev_length){$=o.strstart+o.lookahead-MIN_MATCH,j=_tr_tally(o,o.strstart-1-o.prev_match,o.prev_length-MIN_MATCH),o.lookahead-=o.prev_length-1,o.prev_length-=2;do++o.strstart<=$&&(o.ins_h=HASH(o,o.ins_h,o.window[o.strstart+MIN_MATCH-1]),_=o.prev[o.strstart&o.w_mask]=o.head[o.ins_h],o.head[o.ins_h]=o.strstart);while(--o.prev_length!==0);if(o.match_available=0,o.match_length=MIN_MATCH-1,o.strstart++,j&&(flush_block_only(o,!1),o.strm.avail_out===0))return BS_NEED_MORE}else if(o.match_available){if(j=_tr_tally(o,0,o.window[o.strstart-1]),j&&flush_block_only(o,!1),o.strstart++,o.lookahead--,o.strm.avail_out===0)return BS_NEED_MORE}else o.match_available=1,o.strstart++,o.lookahead--}return o.match_available&&(j=_tr_tally(o,0,o.window[o.strstart-1]),o.match_available=0),o.insert=o.strstart{let _,j,$,_e;const et=o.window;for(;;){if(o.lookahead<=MAX_MATCH){if(fill_window(o),o.lookahead<=MAX_MATCH&&s===Z_NO_FLUSH$2)return BS_NEED_MORE;if(o.lookahead===0)break}if(o.match_length=0,o.lookahead>=MIN_MATCH&&o.strstart>0&&($=o.strstart-1,j=et[$],j===et[++$]&&j===et[++$]&&j===et[++$])){_e=o.strstart+MAX_MATCH;do;while(j===et[++$]&&j===et[++$]&&j===et[++$]&&j===et[++$]&&j===et[++$]&&j===et[++$]&&j===et[++$]&&j===et[++$]&&$<_e);o.match_length=MAX_MATCH-(_e-$),o.match_length>o.lookahead&&(o.match_length=o.lookahead)}if(o.match_length>=MIN_MATCH?(_=_tr_tally(o,1,o.match_length-MIN_MATCH),o.lookahead-=o.match_length,o.strstart+=o.match_length,o.match_length=0):(_=_tr_tally(o,0,o.window[o.strstart]),o.lookahead--,o.strstart++),_&&(flush_block_only(o,!1),o.strm.avail_out===0))return BS_NEED_MORE}return o.insert=0,s===Z_FINISH$3?(flush_block_only(o,!0),o.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):o.sym_next&&(flush_block_only(o,!1),o.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE},deflate_huff=(o,s)=>{let _;for(;;){if(o.lookahead===0&&(fill_window(o),o.lookahead===0)){if(s===Z_NO_FLUSH$2)return BS_NEED_MORE;break}if(o.match_length=0,_=_tr_tally(o,0,o.window[o.strstart]),o.lookahead--,o.strstart++,_&&(flush_block_only(o,!1),o.strm.avail_out===0))return BS_NEED_MORE}return o.insert=0,s===Z_FINISH$3?(flush_block_only(o,!0),o.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):o.sym_next&&(flush_block_only(o,!1),o.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE};function Config$1(o,s,_,j,$){this.good_length=o,this.max_lazy=s,this.nice_length=_,this.max_chain=j,this.func=$}const configuration_table=[new Config$1(0,0,0,0,deflate_stored),new Config$1(4,4,8,4,deflate_fast),new Config$1(4,5,16,8,deflate_fast),new Config$1(4,6,32,32,deflate_fast),new Config$1(4,4,16,16,deflate_slow),new Config$1(8,16,32,32,deflate_slow),new Config$1(8,16,128,128,deflate_slow),new Config$1(8,32,128,256,deflate_slow),new Config$1(32,128,258,1024,deflate_slow),new Config$1(32,258,258,4096,deflate_slow)],lm_init=o=>{o.window_size=2*o.w_size,zero(o.head),o.max_lazy_match=configuration_table[o.level].max_lazy,o.good_match=configuration_table[o.level].good_length,o.nice_match=configuration_table[o.level].nice_length,o.max_chain_length=configuration_table[o.level].max_chain,o.strstart=0,o.block_start=0,o.lookahead=0,o.insert=0,o.match_length=o.prev_length=MIN_MATCH-1,o.match_available=0,o.ins_h=0};function DeflateState(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Z_DEFLATED$2,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(HEAP_SIZE*2),this.dyn_dtree=new Uint16Array((2*D_CODES+1)*2),this.bl_tree=new Uint16Array((2*BL_CODES+1)*2),zero(this.dyn_ltree),zero(this.dyn_dtree),zero(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(MAX_BITS+1),this.heap=new Uint16Array(2*L_CODES+1),zero(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*L_CODES+1),zero(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const deflateStateCheck=o=>{if(!o)return 1;const s=o.state;return!s||s.strm!==o||s.status!==INIT_STATE&&s.status!==GZIP_STATE&&s.status!==EXTRA_STATE&&s.status!==NAME_STATE&&s.status!==COMMENT_STATE&&s.status!==HCRC_STATE&&s.status!==BUSY_STATE&&s.status!==FINISH_STATE?1:0},deflateResetKeep=o=>{if(deflateStateCheck(o))return err(o,Z_STREAM_ERROR$2);o.total_in=o.total_out=0,o.data_type=Z_UNKNOWN;const s=o.state;return s.pending=0,s.pending_out=0,s.wrap<0&&(s.wrap=-s.wrap),s.status=s.wrap===2?GZIP_STATE:s.wrap?INIT_STATE:BUSY_STATE,o.adler=s.wrap===2?0:1,s.last_flush=-2,_tr_init(s),Z_OK$3},deflateReset=o=>{const s=deflateResetKeep(o);return s===Z_OK$3&&lm_init(o.state),s},deflateSetHeader=(o,s)=>deflateStateCheck(o)||o.state.wrap!==2?Z_STREAM_ERROR$2:(o.state.gzhead=s,Z_OK$3),deflateInit2=(o,s,_,j,$,_e)=>{if(!o)return Z_STREAM_ERROR$2;let et=1;if(s===Z_DEFAULT_COMPRESSION$1&&(s=6),j<0?(et=0,j=-j):j>15&&(et=2,j-=16),$<1||$>MAX_MEM_LEVEL||_!==Z_DEFLATED$2||j<8||j>15||s<0||s>9||_e<0||_e>Z_FIXED||j===8&&et!==1)return err(o,Z_STREAM_ERROR$2);j===8&&(j=9);const tt=new DeflateState;return o.state=tt,tt.strm=o,tt.status=INIT_STATE,tt.wrap=et,tt.gzhead=null,tt.w_bits=j,tt.w_size=1<deflateInit2(o,s,Z_DEFLATED$2,MAX_WBITS$1,DEF_MEM_LEVEL,Z_DEFAULT_STRATEGY$1),deflate$2=(o,s)=>{if(deflateStateCheck(o)||s>Z_BLOCK$1||s<0)return o?err(o,Z_STREAM_ERROR$2):Z_STREAM_ERROR$2;const _=o.state;if(!o.output||o.avail_in!==0&&!o.input||_.status===FINISH_STATE&&s!==Z_FINISH$3)return err(o,o.avail_out===0?Z_BUF_ERROR$1:Z_STREAM_ERROR$2);const j=_.last_flush;if(_.last_flush=s,_.pending!==0){if(flush_pending(o),o.avail_out===0)return _.last_flush=-1,Z_OK$3}else if(o.avail_in===0&&rank(s)<=rank(j)&&s!==Z_FINISH$3)return err(o,Z_BUF_ERROR$1);if(_.status===FINISH_STATE&&o.avail_in!==0)return err(o,Z_BUF_ERROR$1);if(_.status===INIT_STATE&&_.wrap===0&&(_.status=BUSY_STATE),_.status===INIT_STATE){let $=Z_DEFLATED$2+(_.w_bits-8<<4)<<8,_e=-1;if(_.strategy>=Z_HUFFMAN_ONLY||_.level<2?_e=0:_.level<6?_e=1:_.level===6?_e=2:_e=3,$|=_e<<6,_.strstart!==0&&($|=PRESET_DICT),$+=31-$%31,putShortMSB(_,$),_.strstart!==0&&(putShortMSB(_,o.adler>>>16),putShortMSB(_,o.adler&65535)),o.adler=1,_.status=BUSY_STATE,flush_pending(o),_.pending!==0)return _.last_flush=-1,Z_OK$3}if(_.status===GZIP_STATE){if(o.adler=0,put_byte(_,31),put_byte(_,139),put_byte(_,8),_.gzhead)put_byte(_,(_.gzhead.text?1:0)+(_.gzhead.hcrc?2:0)+(_.gzhead.extra?4:0)+(_.gzhead.name?8:0)+(_.gzhead.comment?16:0)),put_byte(_,_.gzhead.time&255),put_byte(_,_.gzhead.time>>8&255),put_byte(_,_.gzhead.time>>16&255),put_byte(_,_.gzhead.time>>24&255),put_byte(_,_.level===9?2:_.strategy>=Z_HUFFMAN_ONLY||_.level<2?4:0),put_byte(_,_.gzhead.os&255),_.gzhead.extra&&_.gzhead.extra.length&&(put_byte(_,_.gzhead.extra.length&255),put_byte(_,_.gzhead.extra.length>>8&255)),_.gzhead.hcrc&&(o.adler=crc32_1(o.adler,_.pending_buf,_.pending,0)),_.gzindex=0,_.status=EXTRA_STATE;else if(put_byte(_,0),put_byte(_,0),put_byte(_,0),put_byte(_,0),put_byte(_,0),put_byte(_,_.level===9?2:_.strategy>=Z_HUFFMAN_ONLY||_.level<2?4:0),put_byte(_,OS_CODE),_.status=BUSY_STATE,flush_pending(o),_.pending!==0)return _.last_flush=-1,Z_OK$3}if(_.status===EXTRA_STATE){if(_.gzhead.extra){let $=_.pending,_e=(_.gzhead.extra.length&65535)-_.gzindex;for(;_.pending+_e>_.pending_buf_size;){let tt=_.pending_buf_size-_.pending;if(_.pending_buf.set(_.gzhead.extra.subarray(_.gzindex,_.gzindex+tt),_.pending),_.pending=_.pending_buf_size,_.gzhead.hcrc&&_.pending>$&&(o.adler=crc32_1(o.adler,_.pending_buf,_.pending-$,$)),_.gzindex+=tt,flush_pending(o),_.pending!==0)return _.last_flush=-1,Z_OK$3;$=0,_e-=tt}let et=new Uint8Array(_.gzhead.extra);_.pending_buf.set(et.subarray(_.gzindex,_.gzindex+_e),_.pending),_.pending+=_e,_.gzhead.hcrc&&_.pending>$&&(o.adler=crc32_1(o.adler,_.pending_buf,_.pending-$,$)),_.gzindex=0}_.status=NAME_STATE}if(_.status===NAME_STATE){if(_.gzhead.name){let $=_.pending,_e;do{if(_.pending===_.pending_buf_size){if(_.gzhead.hcrc&&_.pending>$&&(o.adler=crc32_1(o.adler,_.pending_buf,_.pending-$,$)),flush_pending(o),_.pending!==0)return _.last_flush=-1,Z_OK$3;$=0}_.gzindex<_.gzhead.name.length?_e=_.gzhead.name.charCodeAt(_.gzindex++)&255:_e=0,put_byte(_,_e)}while(_e!==0);_.gzhead.hcrc&&_.pending>$&&(o.adler=crc32_1(o.adler,_.pending_buf,_.pending-$,$)),_.gzindex=0}_.status=COMMENT_STATE}if(_.status===COMMENT_STATE){if(_.gzhead.comment){let $=_.pending,_e;do{if(_.pending===_.pending_buf_size){if(_.gzhead.hcrc&&_.pending>$&&(o.adler=crc32_1(o.adler,_.pending_buf,_.pending-$,$)),flush_pending(o),_.pending!==0)return _.last_flush=-1,Z_OK$3;$=0}_.gzindex<_.gzhead.comment.length?_e=_.gzhead.comment.charCodeAt(_.gzindex++)&255:_e=0,put_byte(_,_e)}while(_e!==0);_.gzhead.hcrc&&_.pending>$&&(o.adler=crc32_1(o.adler,_.pending_buf,_.pending-$,$))}_.status=HCRC_STATE}if(_.status===HCRC_STATE){if(_.gzhead.hcrc){if(_.pending+2>_.pending_buf_size&&(flush_pending(o),_.pending!==0))return _.last_flush=-1,Z_OK$3;put_byte(_,o.adler&255),put_byte(_,o.adler>>8&255),o.adler=0}if(_.status=BUSY_STATE,flush_pending(o),_.pending!==0)return _.last_flush=-1,Z_OK$3}if(o.avail_in!==0||_.lookahead!==0||s!==Z_NO_FLUSH$2&&_.status!==FINISH_STATE){let $=_.level===0?deflate_stored(_,s):_.strategy===Z_HUFFMAN_ONLY?deflate_huff(_,s):_.strategy===Z_RLE?deflate_rle(_,s):configuration_table[_.level].func(_,s);if(($===BS_FINISH_STARTED||$===BS_FINISH_DONE)&&(_.status=FINISH_STATE),$===BS_NEED_MORE||$===BS_FINISH_STARTED)return o.avail_out===0&&(_.last_flush=-1),Z_OK$3;if($===BS_BLOCK_DONE&&(s===Z_PARTIAL_FLUSH?_tr_align(_):s!==Z_BLOCK$1&&(_tr_stored_block(_,0,0,!1),s===Z_FULL_FLUSH$1&&(zero(_.head),_.lookahead===0&&(_.strstart=0,_.block_start=0,_.insert=0))),flush_pending(o),o.avail_out===0))return _.last_flush=-1,Z_OK$3}return s!==Z_FINISH$3?Z_OK$3:_.wrap<=0?Z_STREAM_END$3:(_.wrap===2?(put_byte(_,o.adler&255),put_byte(_,o.adler>>8&255),put_byte(_,o.adler>>16&255),put_byte(_,o.adler>>24&255),put_byte(_,o.total_in&255),put_byte(_,o.total_in>>8&255),put_byte(_,o.total_in>>16&255),put_byte(_,o.total_in>>24&255)):(putShortMSB(_,o.adler>>>16),putShortMSB(_,o.adler&65535)),flush_pending(o),_.wrap>0&&(_.wrap=-_.wrap),_.pending!==0?Z_OK$3:Z_STREAM_END$3)},deflateEnd=o=>{if(deflateStateCheck(o))return Z_STREAM_ERROR$2;const s=o.state.status;return o.state=null,s===BUSY_STATE?err(o,Z_DATA_ERROR$2):Z_OK$3},deflateSetDictionary=(o,s)=>{let _=s.length;if(deflateStateCheck(o))return Z_STREAM_ERROR$2;const j=o.state,$=j.wrap;if($===2||$===1&&j.status!==INIT_STATE||j.lookahead)return Z_STREAM_ERROR$2;if($===1&&(o.adler=adler32_1(o.adler,s,_,0)),j.wrap=0,_>=j.w_size){$===0&&(zero(j.head),j.strstart=0,j.block_start=0,j.insert=0);let nt=new Uint8Array(j.w_size);nt.set(s.subarray(_-j.w_size,_),0),s=nt,_=j.w_size}const _e=o.avail_in,et=o.next_in,tt=o.input;for(o.avail_in=_,o.next_in=0,o.input=s,fill_window(j);j.lookahead>=MIN_MATCH;){let nt=j.strstart,rt=j.lookahead-(MIN_MATCH-1);do j.ins_h=HASH(j,j.ins_h,j.window[nt+MIN_MATCH-1]),j.prev[nt&j.w_mask]=j.head[j.ins_h],j.head[j.ins_h]=nt,nt++;while(--rt);j.strstart=nt,j.lookahead=MIN_MATCH-1,fill_window(j)}return j.strstart+=j.lookahead,j.block_start=j.strstart,j.insert=j.lookahead,j.lookahead=0,j.match_length=j.prev_length=MIN_MATCH-1,j.match_available=0,o.next_in=et,o.input=tt,o.avail_in=_e,j.wrap=$,Z_OK$3};var deflateInit_1=deflateInit,deflateInit2_1=deflateInit2,deflateReset_1=deflateReset,deflateResetKeep_1=deflateResetKeep,deflateSetHeader_1=deflateSetHeader,deflate_2$1=deflate$2,deflateEnd_1=deflateEnd,deflateSetDictionary_1=deflateSetDictionary,deflateInfo="pako deflate (from Nodeca project)",deflate_1$2={deflateInit:deflateInit_1,deflateInit2:deflateInit2_1,deflateReset:deflateReset_1,deflateResetKeep:deflateResetKeep_1,deflateSetHeader:deflateSetHeader_1,deflate:deflate_2$1,deflateEnd:deflateEnd_1,deflateSetDictionary:deflateSetDictionary_1,deflateInfo};const _has=(o,s)=>Object.prototype.hasOwnProperty.call(o,s);var assign=function(o){const s=Array.prototype.slice.call(arguments,1);for(;s.length;){const _=s.shift();if(_){if(typeof _!="object")throw new TypeError(_+"must be non-object");for(const j in _)_has(_,j)&&(o[j]=_[j])}}return o},flattenChunks=o=>{let s=0;for(let j=0,$=o.length;j<$;j++)s+=o[j].length;const _=new Uint8Array(s);for(let j=0,$=0,_e=o.length;j<_e;j++){let et=o[j];_.set(et,$),$+=et.length}return _},common={assign,flattenChunks};let STR_APPLY_UIA_OK=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{STR_APPLY_UIA_OK=!1}const _utf8len=new Uint8Array(256);for(let o=0;o<256;o++)_utf8len[o]=o>=252?6:o>=248?5:o>=240?4:o>=224?3:o>=192?2:1;_utf8len[254]=_utf8len[254]=1;var string2buf=o=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(o);let s,_,j,$,_e,et=o.length,tt=0;for($=0;$>>6,s[_e++]=128|_&63):_<65536?(s[_e++]=224|_>>>12,s[_e++]=128|_>>>6&63,s[_e++]=128|_&63):(s[_e++]=240|_>>>18,s[_e++]=128|_>>>12&63,s[_e++]=128|_>>>6&63,s[_e++]=128|_&63);return s};const buf2binstring=(o,s)=>{if(s<65534&&o.subarray&&STR_APPLY_UIA_OK)return String.fromCharCode.apply(null,o.length===s?o:o.subarray(0,s));let _="";for(let j=0;j{const _=s||o.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(o.subarray(0,s));let j,$;const _e=new Array(_*2);for($=0,j=0;j<_;){let et=o[j++];if(et<128){_e[$++]=et;continue}let tt=_utf8len[et];if(tt>4){_e[$++]=65533,j+=tt-1;continue}for(et&=tt===2?31:tt===3?15:7;tt>1&&j<_;)et=et<<6|o[j++]&63,tt--;if(tt>1){_e[$++]=65533;continue}et<65536?_e[$++]=et:(et-=65536,_e[$++]=55296|et>>10&1023,_e[$++]=56320|et&1023)}return buf2binstring(_e,$)},utf8border=(o,s)=>{s=s||o.length,s>o.length&&(s=o.length);let _=s-1;for(;_>=0&&(o[_]&192)===128;)_--;return _<0||_===0?s:_+_utf8len[o[_]]>s?_:s},strings={string2buf,buf2string,utf8border};function ZStream(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var zstream=ZStream;const toString$1=Object.prototype.toString,{Z_NO_FLUSH:Z_NO_FLUSH$1,Z_SYNC_FLUSH,Z_FULL_FLUSH,Z_FINISH:Z_FINISH$2,Z_OK:Z_OK$2,Z_STREAM_END:Z_STREAM_END$2,Z_DEFAULT_COMPRESSION,Z_DEFAULT_STRATEGY,Z_DEFLATED:Z_DEFLATED$1}=constants$2;function Deflate$1(o){this.options=common.assign({level:Z_DEFAULT_COMPRESSION,method:Z_DEFLATED$1,chunkSize:16384,windowBits:15,memLevel:8,strategy:Z_DEFAULT_STRATEGY},o||{});let s=this.options;s.raw&&s.windowBits>0?s.windowBits=-s.windowBits:s.gzip&&s.windowBits>0&&s.windowBits<16&&(s.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new zstream,this.strm.avail_out=0;let _=deflate_1$2.deflateInit2(this.strm,s.level,s.method,s.windowBits,s.memLevel,s.strategy);if(_!==Z_OK$2)throw new Error(messages[_]);if(s.header&&deflate_1$2.deflateSetHeader(this.strm,s.header),s.dictionary){let j;if(typeof s.dictionary=="string"?j=strings.string2buf(s.dictionary):toString$1.call(s.dictionary)==="[object ArrayBuffer]"?j=new Uint8Array(s.dictionary):j=s.dictionary,_=deflate_1$2.deflateSetDictionary(this.strm,j),_!==Z_OK$2)throw new Error(messages[_]);this._dict_set=!0}}Deflate$1.prototype.push=function(o,s){const _=this.strm,j=this.options.chunkSize;let $,_e;if(this.ended)return!1;for(s===~~s?_e=s:_e=s===!0?Z_FINISH$2:Z_NO_FLUSH$1,typeof o=="string"?_.input=strings.string2buf(o):toString$1.call(o)==="[object ArrayBuffer]"?_.input=new Uint8Array(o):_.input=o,_.next_in=0,_.avail_in=_.input.length;;){if(_.avail_out===0&&(_.output=new Uint8Array(j),_.next_out=0,_.avail_out=j),(_e===Z_SYNC_FLUSH||_e===Z_FULL_FLUSH)&&_.avail_out<=6){this.onData(_.output.subarray(0,_.next_out)),_.avail_out=0;continue}if($=deflate_1$2.deflate(_,_e),$===Z_STREAM_END$2)return _.next_out>0&&this.onData(_.output.subarray(0,_.next_out)),$=deflate_1$2.deflateEnd(this.strm),this.onEnd($),this.ended=!0,$===Z_OK$2;if(_.avail_out===0){this.onData(_.output);continue}if(_e>0&&_.next_out>0){this.onData(_.output.subarray(0,_.next_out)),_.avail_out=0;continue}if(_.avail_in===0)break}return!0};Deflate$1.prototype.onData=function(o){this.chunks.push(o)};Deflate$1.prototype.onEnd=function(o){o===Z_OK$2&&(this.result=common.flattenChunks(this.chunks)),this.chunks=[],this.err=o,this.msg=this.strm.msg};function deflate$1(o,s){const _=new Deflate$1(s);if(_.push(o,!0),_.err)throw _.msg||messages[_.err];return _.result}function deflateRaw$1(o,s){return s=s||{},s.raw=!0,deflate$1(o,s)}function gzip$1(o,s){return s=s||{},s.gzip=!0,deflate$1(o,s)}var Deflate_1$1=Deflate$1,deflate_2=deflate$1,deflateRaw_1$1=deflateRaw$1,gzip_1$1=gzip$1,constants$1=constants$2,deflate_1$1={Deflate:Deflate_1$1,deflate:deflate_2,deflateRaw:deflateRaw_1$1,gzip:gzip_1$1,constants:constants$1};const{Deflate,deflate,deflateRaw,gzip}=deflate_1$1;var deflate_1=deflate,fromByteArray_1=fromByteArray,lookup=[],code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var i=0,len=code.length;i>18&63]+lookup[o>>12&63]+lookup[o>>6&63]+lookup[o&63]}function encodeChunk(o,s,_){for(var j,$=[],_e=s;_e<_;_e+=3)j=(o[_e]<<16&16711680)+(o[_e+1]<<8&65280)+(o[_e+2]&255),$.push(tripletToBase64(j));return $.join("")}function fromByteArray(o){for(var s,_=o.length,j=_%3,$=[],_e=16383,et=0,tt=_-j;ettt?tt:et+_e));return j===1?(s=o[_-1],$.push(lookup[s>>2]+lookup[s<<4&63]+"==")):j===2&&(s=(o[_-2]<<8)+o[_-1],$.push(lookup[s>>10]+lookup[s>>4&63]+lookup[s<<2&63]+"=")),$.join("")}const encoder=new TextEncoder;new TextDecoder;function serializeHash(o){const s=JSON.stringify(o),_=encoder.encode(s),j=deflate_1(_);return fromByteArray_1(j)}async function getViews(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/views`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function createShareLink(o,s){if(!Authentication.token)throw new Error("Not authenticated");const _=(await getViews()).filter(et=>et.name===s);if(_.length===0)return console.warn("View does not exist or it is misspell"),null;const j=await fetch(`${FORMANT_API_URL}/v1/admin/shares`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}}),$=FORMANT_API_URL.replace("api","app"),{code:_e}=await j.json();return`${$}/shares/${_e}#${serializeHash({viewId:_[0].id})}`}async function disableDevice(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/devices/${o}/disable`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}const aggregateByDateFunctions={day:{interval:eachDayOfInterval,start:startOfDay,end:endOfDay,sub:subDays,get:getDay},week:{interval:eachWeekOfInterval,start:startOfWeek,end:endOfWeek,sub:subWeeks,get:getWeek},month:{interval:eachMonthOfInterval,start:startOfMonth,end:endOfMonth,sub:subMonths,get:getMonth},year:{interval:eachYearOfInterval,start:startOfYear,end:endOfYear,sub:subYears,get:getYear},hour:{interval:eachHourOfInterval,start:startOfHour,end:endOfHour,sub:subHours,get:getHours},minute:{interval:eachMinuteOfInterval,start:startOfMinute,end:endOfMinute,sub:subMinutes,get:getMinutes},quarter:{interval:eachQuarterOfInterval,start:startOfQuarter,end:endOfQuarter,sub:subQuarters,get:getQuarter}},formatTimeFrameText=(o,s)=>o.split("/")[0]+"/"+o.split("/")[1]+"–"+s.split("/")[0]+"/"+s.split("/")[1];async function queryEvents(o){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/events/query`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function eventsCounter(o,s,_,j,$){const _e=aggregateByDateFunctions[s];return await Promise.all(Array(_).fill(0).map(async(et,tt)=>{const nt=new Date(j),rt=_e.sub(_e.start(nt),_-tt-1),it=_e.sub(_e.end(nt),_-tt-1),st=formatTimeFrameText(rt.toLocaleDateString(),it.toLocaleDateString()),ut=await queryEvents({...$,eventTypes:o,start:new Date(rt).toISOString(),end:new Date(it).toISOString()});return{date:st,events:ut}}))}async function getAnnotationCount(o,s){return(await queryEvents({...o,eventTypes:["annotation"]})).filter(_=>!!_.tags&&Object.keys(_.tags).includes(s)).reduce((_,j)=>{const $=j.tags[s];return $ in _?(_[$]+=1,_):(_[$]=1,_)},{})}async function getAnnotationCountByIntervals(o,s,_){const{end:j,start:$}=o,_e=aggregateByDateFunctions[_].interval({start:new Date($),end:new Date(j)}),et=_e.map((nt,rt)=>{const it=new Date(nt).toISOString(),st=rt===_e.length-1?new Date(Date.now()).toISOString():new Date(_e[rt+1]);return getAnnotationCount({...o,start:it,end:st},s)}),tt=await Promise.all(et);return _e.map((nt,rt)=>({date:new Date(nt).toISOString(),annotations:tt[rt]}))}async function getDevicesData(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/device-details/query`,{method:"POST",body:JSON.stringify({enabled:!0,type:"default"}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}var dist={exports:{}};/*! For license information please see index.js.LICENSE.txt */(function(module,exports){(function(o,s){module.exports=s()})(self,()=>(()=>{var __webpack_modules__={5475:(o,s,_)=>{var j={};o.exports=j,j.themes={};var $=_(9208),_e=j.styles=_(9253),et=Object.defineProperties,tt=new RegExp(/[\r\n]+/g);j.supportsColor=_(3822).supportsColor,j.enabled===void 0&&(j.enabled=j.supportsColor()!==!1),j.enable=function(){j.enabled=!0},j.disable=function(){j.enabled=!1},j.stripColors=j.strip=function(Ut){return(""+Ut).replace(/\x1B\[\d+m/g,"")},j.stylize=function(Ut,ht){if(!j.enabled)return Ut+"";var ft=_e[ht];return!ft&&ht in j?j[ht](Ut):ft.open+Ut+ft.close};var nt=/[|\\{}()[\]^$+*?.]/g;function rt(Ut){var ht=function ft(){return Ft.apply(ft,arguments)};return ht._styles=Ut,ht.__proto__=ut,ht}var it,st=(it={},_e.grey=_e.gray,Object.keys(_e).forEach(function(Ut){_e[Ut].closeRe=new RegExp(function(ht){if(typeof ht!="string")throw new TypeError("Expected a string");return ht.replace(nt,"\\$&")}(_e[Ut].close),"g"),it[Ut]={get:function(){return rt(this._styles.concat(Ut))}}}),it),ut=et(function(){},st);function Ft(){var Ut=Array.prototype.slice.call(arguments),ht=Ut.map(function(Nt){return Nt!=null&&Nt.constructor===String?Nt:$.inspect(Nt)}).join(" ");if(!j.enabled||!ht)return ht;for(var ft=ht.indexOf(` +`)!=-1,pt=this._styles,Rt=pt.length;Rt--;){var Qt=_e[pt[Rt]];ht=Qt.open+ht.replace(Qt.closeRe,Qt.open)+Qt.close,ft&&(ht=ht.replace(tt,function(Nt){return Qt.close+Nt+Qt.open}))}return ht}j.setTheme=function(Ut){if(typeof Ut!="string")for(var ht in Ut)(function(ft){j[ft]=function(pt){if(typeof Ut[ft]=="object"){var Rt=pt;for(var Qt in Ut[ft])Rt=j[Ut[ft][Qt]](Rt);return Rt}return j[Ut[ft]](pt)}})(ht);else console.log("colors.setTheme now only accepts an object, not a string. If you are trying to set a theme from a file, it is now your (the caller's) responsibility to require the file. The old syntax looked like colors.setTheme(__dirname + '/../themes/generic-logging.js'); The new syntax looks like colors.setTheme(require(__dirname + '/../themes/generic-logging.js'));")};var dt=function(Ut,ht){var ft=ht.split("");return(ft=ft.map(Ut)).join("")};for(var gt in j.trap=_(8740),j.zalgo=_(6798),j.maps={},j.maps.america=_(3427)(j),j.maps.zebra=_(860)(j),j.maps.rainbow=_(4517)(j),j.maps.random=_(6948)(j),j.maps)(function(Ut){j[Ut]=function(ht){return dt(j.maps[Ut],ht)}})(gt);et(j,function(){var Ut={};return Object.keys(st).forEach(function(ht){Ut[ht]={get:function(){return rt([ht])}}}),Ut}())},8740:o=>{o.exports=function(s,_){var j="";s=(s=s||"Run the trap, drop the bass").split("");var $={a:["@","Ą","Ⱥ","Ʌ","Δ","Λ","Д"],b:["ß","Ɓ","Ƀ","ɮ","β","฿"],c:["©","Ȼ","Ͼ"],d:["Ð","Ɗ","Ԁ","ԁ","Ԃ","ԃ"],e:["Ë","ĕ","Ǝ","ɘ","Σ","ξ","Ҽ","੬"],f:["Ӻ"],g:["ɢ"],h:["Ħ","ƕ","Ң","Һ","Ӈ","Ԋ"],i:["༏"],j:["Ĵ"],k:["ĸ","Ҡ","Ӄ","Ԟ"],l:["Ĺ"],m:["ʍ","Ӎ","ӎ","Ԡ","ԡ","൩"],n:["Ñ","ŋ","Ɲ","Ͷ","Π","Ҋ"],o:["Ø","õ","ø","Ǿ","ʘ","Ѻ","ם","۝","๏"],p:["Ƿ","Ҏ"],q:["্"],r:["®","Ʀ","Ȑ","Ɍ","ʀ","Я"],s:["§","Ϟ","ϟ","Ϩ"],t:["Ł","Ŧ","ͳ"],u:["Ʊ","Ս"],v:["ט"],w:["Ш","Ѡ","Ѽ","൰"],x:["Ҳ","Ӿ","Ӽ","ӽ"],y:["¥","Ұ","Ӌ"],z:["Ƶ","ɀ"]};return s.forEach(function(_e){_e=_e.toLowerCase();var et=$[_e]||[" "],tt=Math.floor(Math.random()*et.length);j+=$[_e]!==void 0?$[_e][tt]:_e}),j}},6798:o=>{o.exports=function(s,_){s=s||" he is here ";var j={up:["̍","̎","̄","̅","̿","̑","̆","̐","͒","͗","͑","̇","̈","̊","͂","̓","̈","͊","͋","͌","̃","̂","̌","͐","̀","́","̋","̏","̒","̓","̔","̽","̉","ͣ","ͤ","ͥ","ͦ","ͧ","ͨ","ͩ","ͪ","ͫ","ͬ","ͭ","ͮ","ͯ","̾","͛","͆","̚"],down:["̖","̗","̘","̙","̜","̝","̞","̟","̠","̤","̥","̦","̩","̪","̫","̬","̭","̮","̯","̰","̱","̲","̳","̹","̺","̻","̼","ͅ","͇","͈","͉","͍","͎","͓","͔","͕","͖","͙","͚","̣"],mid:["̕","̛","̀","́","͘","̡","̢","̧","̨","̴","̵","̶","͜","͝","͞","͟","͠","͢","̸","̷","͡"," ҉"]},$=[].concat(j.up,j.down,j.mid);function _e(tt){return Math.floor(Math.random()*tt)}function et(tt){var nt=!1;return $.filter(function(rt){nt=rt===tt}),nt}return function(tt,nt){var rt,it,st="";for(it in(nt=nt||{}).up=nt.up===void 0||nt.up,nt.mid=nt.mid===void 0||nt.mid,nt.down=nt.down===void 0||nt.down,nt.size=nt.size!==void 0?nt.size:"maxi",tt=tt.split(""))if(!et(it)){switch(st+=tt[it],rt={up:0,down:0,mid:0},nt.size){case"mini":rt.up=_e(8),rt.mid=_e(2),rt.down=_e(8);break;case"maxi":rt.up=_e(16)+3,rt.mid=_e(4)+1,rt.down=_e(64)+3;break;default:rt.up=_e(8)+1,rt.mid=_e(6)/2,rt.down=_e(8)+1}var ut=["up","mid","down"];for(var Ft in ut)for(var dt=ut[Ft],gt=0;gt<=rt[dt];gt++)nt[dt]&&(st+=j[dt][_e(j[dt].length)])}return st}(s,_)}},3427:o=>{o.exports=function(s){return function(_,j,$){if(_===" ")return _;switch(j%3){case 0:return s.red(_);case 1:return s.white(_);case 2:return s.blue(_)}}}},4517:o=>{o.exports=function(s){var _=["red","yellow","green","blue","magenta"];return function(j,$,_e){return j===" "?j:s[_[$++%_.length]](j)}}},6948:o=>{o.exports=function(s){var _=["underline","inverse","grey","yellow","red","green","blue","white","cyan","magenta","brightYellow","brightRed","brightGreen","brightBlue","brightWhite","brightCyan","brightMagenta"];return function(j,$,_e){return j===" "?j:s[_[Math.round(Math.random()*(_.length-2))]](j)}}},860:o=>{o.exports=function(s){return function(_,j,$){return j%2==0?_:s.inverse(_)}}},9253:o=>{var s={};o.exports=s;var _={reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29],black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],grey:[90,39],brightRed:[91,39],brightGreen:[92,39],brightYellow:[93,39],brightBlue:[94,39],brightMagenta:[95,39],brightCyan:[96,39],brightWhite:[97,39],bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgGray:[100,49],bgGrey:[100,49],bgBrightRed:[101,49],bgBrightGreen:[102,49],bgBrightYellow:[103,49],bgBrightBlue:[104,49],bgBrightMagenta:[105,49],bgBrightCyan:[106,49],bgBrightWhite:[107,49],blackBG:[40,49],redBG:[41,49],greenBG:[42,49],yellowBG:[43,49],blueBG:[44,49],magentaBG:[45,49],cyanBG:[46,49],whiteBG:[47,49]};Object.keys(_).forEach(function(j){var $=_[j],_e=s[j]=[];_e.open="\x1B["+$[0]+"m",_e.close="\x1B["+$[1]+"m"})},124:o=>{o.exports=function(s,_){var j=(_=_||process.argv||[]).indexOf("--"),$=/^-{1,2}/.test(s)?"":"--",_e=_.indexOf($+s);return _e!==-1&&(j===-1||_e{var j=_(2213),$=_(124),_e=process.env,et=void 0;function tt(nt){return function(rt){return rt!==0&&{level:rt,hasBasic:!0,has256:rt>=2,has16m:rt>=3}}(function(rt){if(et===!1)return 0;if($("color=16m")||$("color=full")||$("color=truecolor"))return 3;if($("color=256"))return 2;if(rt&&!rt.isTTY&&et!==!0)return 0;var it=et?1:0;if(process.platform==="win32"){var st=j.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(st[0])>=10&&Number(st[2])>=10586?Number(st[2])>=14931?3:2:1}return"CI"in _e?["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(function(ut){return ut in _e})||_e.CI_NAME==="codeship"?1:it:"TEAMCITY_VERSION"in _e?/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(_e.TEAMCITY_VERSION)?1:0:("TERM_PROGRAM"in _e&&parseInt("1.104.0".split(".")[0],10),/-256(color)?$/i.test("xterm-256color")?2:/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test("xterm-256color")||"COLORTERM"in _e?1:it)}(nt))}$("no-color")||$("no-colors")||$("color=false")?et=!1:($("color")||$("colors")||$("color=true")||$("color=always"))&&(et=!0),"FORCE_COLOR"in _e&&(et=_e.FORCE_COLOR.length===0||parseInt(_e.FORCE_COLOR,10)!==0),o.exports={supportsColor:tt,stdout:tt(process.stdout),stderr:tt(process.stderr)}},1158:(o,s,_)=>{var j=_(5475);o.exports=j},7147:(o,s,_)=>{o.exports=_(4968)},4968:(o,s,_)=>{var j=_(8636)(function $(_e,et){return(et=et||{}).namespace=_e,et.prod=!0,et.dev=!1,et.force||$.force?$.yep(et):$.nope(et)});o.exports=j},8636:o=>{var s=[],_=[],j=function(){};function $(Ft){return!~s.indexOf(Ft)&&(s.push(Ft),!0)}function _e(Ft){j=Ft}function et(Ft){for(var dt=[],gt=0;gt{function j(Xt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(xt){return typeof xt}:function(xt){return xt&&typeof Symbol=="function"&&xt.constructor===Symbol&&xt!==Symbol.prototype?"symbol":typeof xt})(Xt)}function $(Xt,xt){for(var It=0;It1?It-1:0),un=1;un1?It-1:0),un=1;un1?It-1:0),un=1;un1?It-1:0),un=1;un{function j(mt,yt){var Vt=Object.keys(mt);if(Object.getOwnPropertySymbols){var wt=Object.getOwnPropertySymbols(mt);yt&&(wt=wt.filter(function(Et){return Object.getOwnPropertyDescriptor(mt,Et).enumerable})),Vt.push.apply(Vt,wt)}return Vt}function $(mt){for(var yt=1;yt"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function Ft(mt,yt){return(Ft=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Vt,wt){return Vt.__proto__=wt,Vt})(mt,yt)}function dt(mt){return(dt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(yt){return yt.__proto__||Object.getPrototypeOf(yt)})(mt)}function gt(mt){return(gt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(yt){return typeof yt}:function(yt){return yt&&typeof Symbol=="function"&&yt.constructor===Symbol&&yt!==Symbol.prototype?"symbol":typeof yt})(mt)}var Ut=_(9208).inspect,ht=_(1342).codes.ERR_INVALID_ARG_TYPE;function ft(mt,yt,Vt){return(Vt===void 0||Vt>mt.length)&&(Vt=mt.length),mt.substring(Vt-yt.length,Vt)===yt}var pt="",Rt="",Qt="",Nt="",At={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"};function kt(mt){var yt=Object.keys(mt),Vt=Object.create(Object.getPrototypeOf(mt));return yt.forEach(function(wt){Vt[wt]=mt[wt]}),Object.defineProperty(Vt,"message",{value:mt.message}),Vt}function Bt(mt){return Ut(mt,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function jt(mt,yt,Vt){var wt="",Et="",Jt=0,Pt="",Yt=!1,Mt=Bt(mt),zt=Mt.split(` +`),qt=Bt(yt).split(` +`),Xt=0,xt="";if(Vt==="strictEqual"&>(mt)==="object"&>(yt)==="object"&&mt!==null&&yt!==null&&(Vt="strictEqualObject"),zt.length===1&&qt.length===1&&zt[0]!==qt[0]){var It=zt[0].length+qt[0].length;if(It<=10){if(!(gt(mt)==="object"&&mt!==null||gt(yt)==="object"&&yt!==null||mt===0&&yt===0))return"".concat(At[Vt],` + +`)+"".concat(zt[0]," !== ").concat(qt[0],` +`)}else if(Vt!=="strictEqualObject"&&It<(process.stderr&&process.stderr.isTTY?process.stderr.columns:80)){for(;zt[0][Xt]===qt[0][Xt];)Xt++;Xt>2&&(xt=` + `.concat(function(Zt,Ot){if(Ot=Math.floor(Ot),Zt.length==0||Ot==0)return"";var sn=Zt.length*Ot;for(Ot=Math.floor(Math.log(Ot)/Math.log(2));Ot;)Zt+=Zt,Ot--;return Zt+=Zt.substring(0,sn-Zt.length)}(" ",Xt),"^"),Xt=0)}}for(var $t=zt[zt.length-1],un=qt[qt.length-1];$t===un&&(Xt++<2?Pt=` + `.concat($t).concat(Pt):wt=$t,zt.pop(),qt.pop(),zt.length!==0&&qt.length!==0);)$t=zt[zt.length-1],un=qt[qt.length-1];var tn=Math.max(zt.length,qt.length);if(tn===0){var an=Mt.split(` +`);if(an.length>30)for(an[26]="".concat(pt,"...").concat(Nt);an.length>27;)an.pop();return"".concat(At.notIdentical,` + +`).concat(an.join(` +`),` +`)}Xt>3&&(Pt=` +`.concat(pt,"...").concat(Nt).concat(Pt),Yt=!0),wt!==""&&(Pt=` + `.concat(wt).concat(Pt),wt="");var Kt=0,Un=At[Vt]+` +`.concat(Rt,"+ actual").concat(Nt," ").concat(Qt,"- expected").concat(Nt),Bn=" ".concat(pt,"...").concat(Nt," Lines skipped");for(Xt=0;Xt1&&Xt>2&&(hn>4?(Et+=` +`.concat(pt,"...").concat(Nt),Yt=!0):hn>3&&(Et+=` + `.concat(qt[Xt-2]),Kt++),Et+=` + `.concat(qt[Xt-1]),Kt++),Jt=Xt,wt+=` +`.concat(Qt,"-").concat(Nt," ").concat(qt[Xt]),Kt++;else if(qt.length1&&Xt>2&&(hn>4?(Et+=` +`.concat(pt,"...").concat(Nt),Yt=!0):hn>3&&(Et+=` + `.concat(zt[Xt-2]),Kt++),Et+=` + `.concat(zt[Xt-1]),Kt++),Jt=Xt,Et+=` +`.concat(Rt,"+").concat(Nt," ").concat(zt[Xt]),Kt++;else{var En=qt[Xt],Cn=zt[Xt],Tt=Cn!==En&&(!ft(Cn,",")||Cn.slice(0,-1)!==En);Tt&&ft(En,",")&&En.slice(0,-1)===Cn&&(Tt=!1,Cn+=","),Tt?(hn>1&&Xt>2&&(hn>4?(Et+=` +`.concat(pt,"...").concat(Nt),Yt=!0):hn>3&&(Et+=` + `.concat(zt[Xt-2]),Kt++),Et+=` + `.concat(zt[Xt-1]),Kt++),Jt=Xt,Et+=` +`.concat(Rt,"+").concat(Nt," ").concat(Cn),wt+=` +`.concat(Qt,"-").concat(Nt," ").concat(En),Kt+=2):(Et+=wt,wt="",hn!==1&&Xt!==0||(Et+=` + `.concat(Cn),Kt++))}if(Kt>20&&Xt30)for(an[26]="".concat(pt,"...").concat(Nt);an.length>27;)an.pop();zt=an.length===1?Pt.call(this,"".concat(tn," ").concat(an[0])):Pt.call(this,"".concat(tn,` + +`).concat(an.join(` +`),` +`))}else{var Kt=Bt(It),Un="",Bn=At[Xt];Xt==="notDeepEqual"||Xt==="notEqual"?(Kt="".concat(At[Xt],` + +`).concat(Kt)).length>1024&&(Kt="".concat(Kt.slice(0,1021),"...")):(Un="".concat(Bt($t)),Kt.length>512&&(Kt="".concat(Kt.slice(0,509),"...")),Un.length>512&&(Un="".concat(Un.slice(0,509),"...")),Xt==="deepEqual"||Xt==="equal"?Kt="".concat(Bn,` + +`).concat(Kt,` + +should equal + +`):Un=" ".concat(Xt," ").concat(Un)),zt=Pt.call(this,"".concat(Kt).concat(Un))}return Error.stackTraceLimit=un,zt.generatedMessage=!qt,Object.defineProperty(rt(zt),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),zt.code="ERR_ASSERTION",zt.actual=It,zt.expected=$t,zt.operator=Xt,Error.captureStackTrace&&Error.captureStackTrace(rt(zt),xt),zt.stack,zt.name="AssertionError",nt(zt)}return Et=Yt,(Jt=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:yt,value:function(Mt,zt){return Ut(this,$($({},zt),{},{customInspect:!1,depth:0}))}}])&&et(Et.prototype,Jt),Object.defineProperty(Et,"prototype",{writable:!1}),Yt}(it(Error),Ut.custom);o.exports=vt},1342:(o,s,_)=>{function j(Ft){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(dt){return typeof dt}:function(dt){return dt&&typeof Symbol=="function"&&dt.constructor===Symbol&&dt!==Symbol.prototype?"symbol":typeof dt})(Ft)}function $(Ft,dt){return($=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(gt,Ut){return gt.__proto__=Ut,gt})(Ft,dt)}function _e(Ft){var dt=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}();return function(){var gt,Ut=tt(Ft);if(dt){var ht=tt(this).constructor;gt=Reflect.construct(Ut,arguments,ht)}else gt=Ut.apply(this,arguments);return et(this,gt)}}function et(Ft,dt){if(dt&&(j(dt)==="object"||typeof dt=="function"))return dt;if(dt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(gt){if(gt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return gt}(Ft)}function tt(Ft){return(tt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(dt){return dt.__proto__||Object.getPrototypeOf(dt)})(Ft)}var nt,rt,it={};function st(Ft,dt,gt){gt||(gt=Error);var Ut=function(ht){(function(Qt,Nt){if(typeof Nt!="function"&&Nt!==null)throw new TypeError("Super expression must either be null or a function");Qt.prototype=Object.create(Nt&&Nt.prototype,{constructor:{value:Qt,writable:!0,configurable:!0}}),Object.defineProperty(Qt,"prototype",{writable:!1}),Nt&&$(Qt,Nt)})(Rt,ht);var ft,pt=_e(Rt);function Rt(Qt,Nt,At){var kt;return function(Bt,jt){if(!(Bt instanceof jt))throw new TypeError("Cannot call a class as a function")}(this,Rt),(kt=pt.call(this,function(Bt,jt,vt){return typeof dt=="string"?dt:dt(Bt,jt,vt)}(Qt,Nt,At))).code=Ft,kt}return ft=Rt,Object.defineProperty(ft,"prototype",{writable:!1}),ft}(gt);it[Ft]=Ut}function ut(Ft,dt){if(Array.isArray(Ft)){var gt=Ft.length;return Ft=Ft.map(function(Ut){return String(Ut)}),gt>2?"one of ".concat(dt," ").concat(Ft.slice(0,gt-1).join(", "),", or ")+Ft[gt-1]:gt===2?"one of ".concat(dt," ").concat(Ft[0]," or ").concat(Ft[1]):"of ".concat(dt," ").concat(Ft[0])}return"of ".concat(dt," ").concat(String(Ft))}st("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),st("ERR_INVALID_ARG_TYPE",function(Ft,dt,gt){var Ut,ht,ft;if(nt===void 0&&(nt=_(6093)),nt(typeof Ft=="string","'name' must be a string"),typeof dt=="string"&&(ht="not ",dt.substr(0,ht.length)===ht)?(Ut="must not be",dt=dt.replace(/^not /,"")):Ut="must be",function(Rt,Qt,Nt){return(Nt===void 0||Nt>Rt.length)&&(Nt=Rt.length),Rt.substring(Nt-Qt.length,Nt)===Qt}(Ft," argument"))ft="The ".concat(Ft," ").concat(Ut," ").concat(ut(dt,"type"));else{var pt=function(Rt,Qt,Nt){return typeof Nt!="number"&&(Nt=0),!(Nt+Qt.length>Rt.length)&&Rt.indexOf(Qt,Nt)!==-1}(Ft,".")?"property":"argument";ft='The "'.concat(Ft,'" ').concat(pt," ").concat(Ut," ").concat(ut(dt,"type"))}return ft+=". Received type ".concat(j(gt))},TypeError),st("ERR_INVALID_ARG_VALUE",function(Ft,dt){var gt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";rt===void 0&&(rt=_(9208));var Ut=rt.inspect(dt);return Ut.length>128&&(Ut="".concat(Ut.slice(0,128),"...")),"The argument '".concat(Ft,"' ").concat(gt,". Received ").concat(Ut)},TypeError),st("ERR_INVALID_RETURN_VALUE",function(Ft,dt,gt){var Ut;return Ut=gt&>.constructor&>.constructor.name?"instance of ".concat(gt.constructor.name):"type ".concat(j(gt)),"Expected ".concat(Ft,' to be returned from the "').concat(dt,'"')+" function but got ".concat(Ut,".")},TypeError),st("ERR_MISSING_ARGS",function(){for(var Ft=arguments.length,dt=new Array(Ft),gt=0;gt0,"At least one arg needs to be specified");var Ut="The ",ht=dt.length;switch(dt=dt.map(function(ft){return'"'.concat(ft,'"')}),ht){case 1:Ut+="".concat(dt[0]," argument");break;case 2:Ut+="".concat(dt[0]," and ").concat(dt[1]," arguments");break;default:Ut+=dt.slice(0,ht-1).join(", "),Ut+=", and ".concat(dt[ht-1]," arguments")}return"".concat(Ut," must be specified")},TypeError),o.exports.codes=it},5656:(o,s,_)=>{function j(tn,an){return function(Kt){if(Array.isArray(Kt))return Kt}(tn)||function(Kt,Un){var Bn=Kt==null?null:typeof Symbol<"u"&&Kt[Symbol.iterator]||Kt["@@iterator"];if(Bn!=null){var hn,En,Cn,Tt,Zt=[],Ot=!0,sn=!1;try{if(Cn=(Bn=Bn.call(Kt)).next,Un===0){if(Object(Bn)!==Bn)return;Ot=!1}else for(;!(Ot=(hn=Cn.call(Bn)).done)&&(Zt.push(hn.value),Zt.length!==Un);Ot=!0);}catch(ln){sn=!0,En=ln}finally{try{if(!Ot&&Bn.return!=null&&(Tt=Bn.return(),Object(Tt)!==Tt))return}finally{if(sn)throw En}}return Zt}}(tn,an)||function(Kt,Un){if(Kt){if(typeof Kt=="string")return $(Kt,Un);var Bn=Object.prototype.toString.call(Kt).slice(8,-1);if(Bn==="Object"&&Kt.constructor&&(Bn=Kt.constructor.name),Bn==="Map"||Bn==="Set")return Array.from(Kt);if(Bn==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Bn))return $(Kt,Un)}}(tn,an)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function $(tn,an){(an==null||an>tn.length)&&(an=tn.length);for(var Kt=0,Un=new Array(an);Kt10)return!0;for(var an=0;an57)return!0}return tn.length===10&&tn>=Math.pow(2,32)}function Jt(tn){return Object.keys(tn).filter(Et).concat(it(tn).filter(Object.prototype.propertyIsEnumerable.bind(tn)))}function Pt(tn,an){if(tn===an)return 0;for(var Kt=tn.length,Un=an.length,Bn=0,hn=Math.min(Kt,Un);Bn{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(rt){return(0,_e.isAsync)(rt)?function(...it){const st=it.pop();return tt(rt.apply(this,it),st)}:(0,j.default)(function(it,st){var ut;try{ut=rt.apply(this,it)}catch(Ft){return st(Ft)}if(ut&&typeof ut.then=="function")return tt(ut,st);st(null,ut)})};var j=et(_(6172)),$=et(_(6857)),_e=_(1214);function et(rt){return rt&&rt.__esModule?rt:{default:rt}}function tt(rt,it){return rt.then(st=>{nt(it,null,st)},st=>{nt(it,st&&(st instanceof Error||st.message)?st:new Error(st))})}function nt(rt,it,st){try{rt(it,st)}catch(ut){(0,$.default)(Ft=>{throw Ft},ut)}}o.exports=s.default},108:(o,s,_)=>{Object.defineProperty(s,"__esModule",{value:!0});var j=it(_(7804)),$=it(_(1371)),_e=it(_(7485)),et=it(_(6297)),tt=it(_(6083)),nt=it(_(1214)),rt=it(_(6280));function it(Ft){return Ft&&Ft.__esModule?Ft:{default:Ft}}function st(Ft,dt,gt){gt=(0,et.default)(gt);var Ut=0,ht=0,{length:ft}=Ft,pt=!1;function Rt(Qt,Nt){Qt===!1&&(pt=!0),pt!==!0&&(Qt?gt(Qt):++ht!==ft&&Nt!==$.default||gt(null))}for(ft===0&>(null);Ut{Object.defineProperty(s,"__esModule",{value:!0});var j=et(_(6513)),$=et(_(1214)),_e=et(_(6280));function et(tt){return tt&&tt.__esModule?tt:{default:tt}}s.default=(0,_e.default)(function(tt,nt,rt,it){return(0,j.default)(nt)(tt,(0,$.default)(rt),it)},4),o.exports=s.default},5313:(o,s,_)=>{Object.defineProperty(s,"__esModule",{value:!0});var j=_e(_(7485)),$=_e(_(6280));function _e(et){return et&&et.__esModule?et:{default:et}}s.default=(0,$.default)(function(et,tt,nt){return(0,j.default)(et,1,tt,nt)},3),o.exports=s.default},5236:(o,s,_)=>{Object.defineProperty(s,"__esModule",{value:!0});var j=tt(_(108)),$=tt(_(4344)),_e=tt(_(1214)),et=tt(_(6280));function tt(nt){return nt&&nt.__esModule?nt:{default:nt}}s.default=(0,et.default)(function(nt,rt,it){return(0,j.default)(nt,(0,$.default)((0,_e.default)(rt)),it)},3),o.exports=s.default},6959:(o,s,_)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(et,tt,nt,rt){let it=!1,st=!1,ut=!1,Ft=0,dt=0;function gt(){Ft>=tt||ut||it||(ut=!0,et.next().then(({value:ft,done:pt})=>{if(!st&&!it){if(ut=!1,pt)return it=!0,void(Ft<=0&&rt(null));Ft++,nt(ft,dt,Ut),dt++,gt()}}).catch(ht))}function Ut(ft,pt){if(Ft-=1,!st)return ft?ht(ft):ft===!1?(it=!0,void(st=!0)):pt===_e.default||it&&Ft<=0?(it=!0,rt(null)):void gt()}function ht(ft){st||(ut=!1,it=!0,rt(ft))}gt()};var j,$=_(1371),_e=(j=$)&&j.__esModule?j:{default:j};o.exports=s.default},6280:(o,s)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(_,j){if(j||(j=_.length),!j)throw new Error("arity is undefined");return function(...$){return typeof $[j-1]=="function"?_.apply(this,$):new Promise((_e,et)=>{$[j-1]=(tt,...nt)=>{if(tt)return et(tt);_e(nt.length>1?nt:nt[0])},_.apply(this,$)})}},o.exports=s.default},1371:(o,s)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.default={},o.exports=s.default},6513:(o,s,_)=>{Object.defineProperty(s,"__esModule",{value:!0});var j=rt(_(6297)),$=rt(_(1586)),_e=rt(_(6083)),et=_(1214),tt=rt(_(6959)),nt=rt(_(1371));function rt(it){return it&&it.__esModule?it:{default:it}}s.default=it=>(st,ut,Ft)=>{if(Ft=(0,j.default)(Ft),it<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!st)return Ft(null);if((0,et.isAsyncGenerator)(st))return(0,tt.default)(st,it,ut,Ft);if((0,et.isAsyncIterable)(st))return(0,tt.default)(st[Symbol.asyncIterator](),it,ut,Ft);var dt=(0,$.default)(st),gt=!1,Ut=!1,ht=0,ft=!1;function pt(Qt,Nt){if(!Ut)if(ht-=1,Qt)gt=!0,Ft(Qt);else if(Qt===!1)gt=!0,Ut=!0;else{if(Nt===nt.default||gt&&ht<=0)return gt=!0,Ft(null);ft||Rt()}}function Rt(){for(ft=!0;ht{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(_){return _[Symbol.iterator]&&_[Symbol.iterator]()},o.exports=s.default},6172:(o,s)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(_){return function(...j){var $=j.pop();return _.call(this,j,$)}},o.exports=s.default},7804:(o,s)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(_){return _&&typeof _.length=="number"&&_.length>=0&&_.length%1==0},o.exports=s.default},1586:(o,s,_)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(et){if((0,j.default)(et))return function(ut){var Ft=-1,dt=ut.length;return function(){return++Ft{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(_){function j(...$){if(_!==null){var _e=_;_=null,_e.apply(this,$)}}return Object.assign(j,_),j},o.exports=s.default},6083:(o,s)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(_){return function(...j){if(_===null)throw new Error("Callback was already called.");var $=_;_=null,$.apply(this,j)}},o.exports=s.default},7075:(o,s,_)=>{Object.defineProperty(s,"__esModule",{value:!0});var j=et(_(7804)),$=et(_(1214)),_e=et(_(6280));function et(tt){return tt&&tt.__esModule?tt:{default:tt}}s.default=(0,_e.default)((tt,nt,rt)=>{var it=(0,j.default)(nt)?[]:{};tt(nt,(st,ut,Ft)=>{(0,$.default)(st)((dt,...gt)=>{gt.length<2&&([gt]=gt),it[ut]=gt,Ft(dt)})},st=>rt(st,it))},3),o.exports=s.default},6857:(o,s)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.fallback=et,s.wrap=tt;var _,j=s.hasQueueMicrotask=typeof queueMicrotask=="function"&&queueMicrotask,$=s.hasSetImmediate=typeof setImmediate=="function"&&setImmediate,_e=s.hasNextTick=typeof process=="object"&&typeof process.nextTick=="function";function et(nt){setTimeout(nt,0)}function tt(nt){return(rt,...it)=>nt(()=>rt(...it))}_=j?queueMicrotask:$?setImmediate:_e?process.nextTick:et,s.default=tt(_)},4344:(o,s)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(_){return(j,$,_e)=>_(j,_e)},o.exports=s.default},1214:(o,s,_)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.isAsyncIterable=s.isAsyncGenerator=s.isAsync=void 0;var j,$=_(2530),_e=(j=$)&&j.__esModule?j:{default:j};function et(tt){return tt[Symbol.toStringTag]==="AsyncFunction"}s.default=function(tt){if(typeof tt!="function")throw new Error("expected a function");return et(tt)?(0,_e.default)(tt):tt},s.isAsync=et,s.isAsyncGenerator=function(tt){return tt[Symbol.toStringTag]==="AsyncGenerator"},s.isAsyncIterable=function(tt){return typeof tt[Symbol.asyncIterator]=="function"}},481:(o,s,_)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(et,tt){return(0,j.default)($.default,et,tt)};var j=_e(_(7075)),$=_e(_(5313));function _e(et){return et&&et.__esModule?et:{default:et}}o.exports=s.default},7991:(o,s)=>{s.byteLength=function(it){var st=nt(it),ut=st[0],Ft=st[1];return 3*(ut+Ft)/4-Ft},s.toByteArray=function(it){var st,ut,Ft=nt(it),dt=Ft[0],gt=Ft[1],Ut=new $(function(pt,Rt,Qt){return 3*(Rt+Qt)/4-Qt}(0,dt,gt)),ht=0,ft=gt>0?dt-4:dt;for(ut=0;ut>16&255,Ut[ht++]=st>>8&255,Ut[ht++]=255&st;return gt===2&&(st=j[it.charCodeAt(ut)]<<2|j[it.charCodeAt(ut+1)]>>4,Ut[ht++]=255&st),gt===1&&(st=j[it.charCodeAt(ut)]<<10|j[it.charCodeAt(ut+1)]<<4|j[it.charCodeAt(ut+2)]>>2,Ut[ht++]=st>>8&255,Ut[ht++]=255&st),Ut},s.fromByteArray=function(it){for(var st,ut=it.length,Ft=ut%3,dt=[],gt=0,Ut=ut-Ft;gtUt?Ut:gt+16383));return Ft===1?(st=it[ut-1],dt.push(_[st>>2]+_[st<<4&63]+"==")):Ft===2&&(st=(it[ut-2]<<8)+it[ut-1],dt.push(_[st>>10]+_[st>>4&63]+_[st<<2&63]+"=")),dt.join("")};for(var _=[],j=[],$=typeof Uint8Array<"u"?Uint8Array:Array,_e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",et=0,tt=_e.length;et0)throw new Error("Invalid string. Length must be a multiple of 4");var ut=it.indexOf("=");return ut===-1&&(ut=st),[ut,ut===st?0:4-ut%4]}function rt(it,st,ut){for(var Ft,dt,gt=[],Ut=st;Ut>18&63]+_[dt>>12&63]+_[dt>>6&63]+_[63&dt]);return gt.join("")}j["-".charCodeAt(0)]=62,j["_".charCodeAt(0)]=63},9811:(o,s,_)=>{var j=_(6093),$=_(2495),_e=_(6446),et=_(8142),tt=_(7200);for(var nt in tt)s[nt]=tt[nt];s.NONE=0,s.DEFLATE=1,s.INFLATE=2,s.GZIP=3,s.GUNZIP=4,s.DEFLATERAW=5,s.INFLATERAW=6,s.UNZIP=7;function rt(it){if(typeof it!="number"||its.UNZIP)throw new TypeError("Bad argument");this.dictionary=null,this.err=0,this.flush=0,this.init_done=!1,this.level=0,this.memLevel=0,this.mode=it,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}rt.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,j(this.init_done,"close before init"),j(this.mode<=s.UNZIP),this.mode===s.DEFLATE||this.mode===s.GZIP||this.mode===s.DEFLATERAW?_e.deflateEnd(this.strm):this.mode!==s.INFLATE&&this.mode!==s.GUNZIP&&this.mode!==s.INFLATERAW&&this.mode!==s.UNZIP||et.inflateEnd(this.strm),this.mode=s.NONE,this.dictionary=null)},rt.prototype.write=function(it,st,ut,Ft,dt,gt,Ut){return this._write(!0,it,st,ut,Ft,dt,gt,Ut)},rt.prototype.writeSync=function(it,st,ut,Ft,dt,gt,Ut){return this._write(!1,it,st,ut,Ft,dt,gt,Ut)},rt.prototype._write=function(it,st,ut,Ft,dt,gt,Ut,ht){if(j.equal(arguments.length,8),j(this.init_done,"write before init"),j(this.mode!==s.NONE,"already finalized"),j.equal(!1,this.write_in_progress,"write already in progress"),j.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,j.equal(!1,st===void 0,"must provide flush value"),this.write_in_progress=!0,st!==s.Z_NO_FLUSH&&st!==s.Z_PARTIAL_FLUSH&&st!==s.Z_SYNC_FLUSH&&st!==s.Z_FULL_FLUSH&&st!==s.Z_FINISH&&st!==s.Z_BLOCK)throw new Error("Invalid flush value");if(ut==null&&(ut=Buffer.alloc(0),dt=0,Ft=0),this.strm.avail_in=dt,this.strm.input=ut,this.strm.next_in=Ft,this.strm.avail_out=ht,this.strm.output=gt,this.strm.next_out=Ut,this.flush=st,!it)return this._process(),this._checkError()?this._afterSync():void 0;var ft=this;return process.nextTick(function(){ft._process(),ft._after()}),this},rt.prototype._afterSync=function(){var it=this.strm.avail_out,st=this.strm.avail_in;return this.write_in_progress=!1,[st,it]},rt.prototype._process=function(){var it=null;switch(this.mode){case s.DEFLATE:case s.GZIP:case s.DEFLATERAW:this.err=_e.deflate(this.strm,this.flush);break;case s.UNZIP:switch(this.strm.avail_in>0&&(it=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(it===null)break;if(this.strm.input[it]!==31){this.mode=s.INFLATE;break}if(this.gzip_id_bytes_read=1,it++,this.strm.avail_in===1)break;case 1:if(it===null)break;this.strm.input[it]===139?(this.gzip_id_bytes_read=2,this.mode=s.GUNZIP):this.mode=s.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case s.INFLATE:case s.GUNZIP:case s.INFLATERAW:for(this.err=et.inflate(this.strm,this.flush),this.err===s.Z_NEED_DICT&&this.dictionary&&(this.err=et.inflateSetDictionary(this.strm,this.dictionary),this.err===s.Z_OK?this.err=et.inflate(this.strm,this.flush):this.err===s.Z_DATA_ERROR&&(this.err=s.Z_NEED_DICT));this.strm.avail_in>0&&this.mode===s.GUNZIP&&this.err===s.Z_STREAM_END&&this.strm.next_in[0]!==0;)this.reset(),this.err=et.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},rt.prototype._checkError=function(){switch(this.err){case s.Z_OK:case s.Z_BUF_ERROR:if(this.strm.avail_out!==0&&this.flush===s.Z_FINISH)return this._error("unexpected end of file"),!1;break;case s.Z_STREAM_END:break;case s.Z_NEED_DICT:return this.dictionary==null?this._error("Missing dictionary"):this._error("Bad dictionary"),!1;default:return this._error("Zlib error"),!1}return!0},rt.prototype._after=function(){if(this._checkError()){var it=this.strm.avail_out,st=this.strm.avail_in;this.write_in_progress=!1,this.callback(st,it),this.pending_close&&this.close()}},rt.prototype._error=function(it){this.strm.msg&&(it=this.strm.msg),this.onerror(it,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},rt.prototype.init=function(it,st,ut,Ft,dt){j(arguments.length===4||arguments.length===5,"init(windowBits, level, memLevel, strategy, [dictionary])"),j(it>=8&&it<=15,"invalid windowBits"),j(st>=-1&&st<=9,"invalid compression level"),j(ut>=1&&ut<=9,"invalid memlevel"),j(Ft===s.Z_FILTERED||Ft===s.Z_HUFFMAN_ONLY||Ft===s.Z_RLE||Ft===s.Z_FIXED||Ft===s.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(st,it,ut,Ft,dt),this._setDictionary()},rt.prototype.params=function(){throw new Error("deflateParams Not supported")},rt.prototype.reset=function(){this._reset(),this._setDictionary()},rt.prototype._init=function(it,st,ut,Ft,dt){switch(this.level=it,this.windowBits=st,this.memLevel=ut,this.strategy=Ft,this.flush=s.Z_NO_FLUSH,this.err=s.Z_OK,this.mode!==s.GZIP&&this.mode!==s.GUNZIP||(this.windowBits+=16),this.mode===s.UNZIP&&(this.windowBits+=32),this.mode!==s.DEFLATERAW&&this.mode!==s.INFLATERAW||(this.windowBits=-1*this.windowBits),this.strm=new $,this.mode){case s.DEFLATE:case s.GZIP:case s.DEFLATERAW:this.err=_e.deflateInit2(this.strm,this.level,s.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case s.INFLATE:case s.GUNZIP:case s.INFLATERAW:case s.UNZIP:this.err=et.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==s.Z_OK&&this._error("Init error"),this.dictionary=dt,this.write_in_progress=!1,this.init_done=!0},rt.prototype._setDictionary=function(){if(this.dictionary!=null){switch(this.err=s.Z_OK,this.mode){case s.DEFLATE:case s.DEFLATERAW:this.err=_e.deflateSetDictionary(this.strm,this.dictionary)}this.err!==s.Z_OK&&this._error("Failed to set dictionary")}},rt.prototype._reset=function(){switch(this.err=s.Z_OK,this.mode){case s.DEFLATE:case s.DEFLATERAW:case s.GZIP:this.err=_e.deflateReset(this.strm);break;case s.INFLATE:case s.INFLATERAW:case s.GUNZIP:this.err=et.inflateReset(this.strm)}this.err!==s.Z_OK&&this._error("Failed to reset stream")},s.Zlib=rt},7946:(o,s,_)=>{var j=_(1048).Buffer,$=_(1983).Transform,_e=_(9811),et=_(9208),tt=_(6093).ok,nt=_(1048).kMaxLength,rt="Cannot create final Buffer. It would be larger than 0x"+nt.toString(16)+" bytes";_e.Z_MIN_WINDOWBITS=8,_e.Z_MAX_WINDOWBITS=15,_e.Z_DEFAULT_WINDOWBITS=15,_e.Z_MIN_CHUNK=64,_e.Z_MAX_CHUNK=1/0,_e.Z_DEFAULT_CHUNK=16384,_e.Z_MIN_MEMLEVEL=1,_e.Z_MAX_MEMLEVEL=9,_e.Z_DEFAULT_MEMLEVEL=8,_e.Z_MIN_LEVEL=-1,_e.Z_MAX_LEVEL=9,_e.Z_DEFAULT_LEVEL=_e.Z_DEFAULT_COMPRESSION;for(var it=Object.keys(_e),st=0;st=nt?qt=new RangeError(rt):zt=j.concat(Jt,Pt),Jt=[],Vt.close(),Et(qt,zt)}Vt.on("error",function(zt){Vt.removeListener("end",Mt),Vt.removeListener("readable",Yt),Et(zt)}),Vt.on("end",Mt),Vt.end(wt),Yt()}function ft(Vt,wt){if(typeof wt=="string"&&(wt=j.from(wt)),!j.isBuffer(wt))throw new TypeError("Not a string or buffer");var Et=Vt._finishFlushFlag;return Vt._processChunk(wt,Et)}function pt(Vt){if(!(this instanceof pt))return new pt(Vt);vt.call(this,Vt,_e.DEFLATE)}function Rt(Vt){if(!(this instanceof Rt))return new Rt(Vt);vt.call(this,Vt,_e.INFLATE)}function Qt(Vt){if(!(this instanceof Qt))return new Qt(Vt);vt.call(this,Vt,_e.GZIP)}function Nt(Vt){if(!(this instanceof Nt))return new Nt(Vt);vt.call(this,Vt,_e.GUNZIP)}function At(Vt){if(!(this instanceof At))return new At(Vt);vt.call(this,Vt,_e.DEFLATERAW)}function kt(Vt){if(!(this instanceof kt))return new kt(Vt);vt.call(this,Vt,_e.INFLATERAW)}function Bt(Vt){if(!(this instanceof Bt))return new Bt(Vt);vt.call(this,Vt,_e.UNZIP)}function jt(Vt){return Vt===_e.Z_NO_FLUSH||Vt===_e.Z_PARTIAL_FLUSH||Vt===_e.Z_SYNC_FLUSH||Vt===_e.Z_FULL_FLUSH||Vt===_e.Z_FINISH||Vt===_e.Z_BLOCK}function vt(Vt,wt){var Et=this;if(this._opts=Vt=Vt||{},this._chunkSize=Vt.chunkSize||s.Z_DEFAULT_CHUNK,$.call(this,Vt),Vt.flush&&!jt(Vt.flush))throw new Error("Invalid flush flag: "+Vt.flush);if(Vt.finishFlush&&!jt(Vt.finishFlush))throw new Error("Invalid flush flag: "+Vt.finishFlush);if(this._flushFlag=Vt.flush||_e.Z_NO_FLUSH,this._finishFlushFlag=Vt.finishFlush!==void 0?Vt.finishFlush:_e.Z_FINISH,Vt.chunkSize&&(Vt.chunkSizes.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+Vt.chunkSize);if(Vt.windowBits&&(Vt.windowBitss.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+Vt.windowBits);if(Vt.level&&(Vt.levels.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+Vt.level);if(Vt.memLevel&&(Vt.memLevels.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+Vt.memLevel);if(Vt.strategy&&Vt.strategy!=s.Z_FILTERED&&Vt.strategy!=s.Z_HUFFMAN_ONLY&&Vt.strategy!=s.Z_RLE&&Vt.strategy!=s.Z_FIXED&&Vt.strategy!=s.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+Vt.strategy);if(Vt.dictionary&&!j.isBuffer(Vt.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new _e.Zlib(wt);var Jt=this;this._hadError=!1,this._handle.onerror=function(Mt,zt){mt(Jt),Jt._hadError=!0;var qt=new Error(Mt);qt.errno=zt,qt.code=s.codes[zt],Jt.emit("error",qt)};var Pt=s.Z_DEFAULT_COMPRESSION;typeof Vt.level=="number"&&(Pt=Vt.level);var Yt=s.Z_DEFAULT_STRATEGY;typeof Vt.strategy=="number"&&(Yt=Vt.strategy),this._handle.init(Vt.windowBits||s.Z_DEFAULT_WINDOWBITS,Pt,Vt.memLevel||s.Z_DEFAULT_MEMLEVEL,Yt,Vt.dictionary),this._buffer=j.allocUnsafe(this._chunkSize),this._offset=0,this._level=Pt,this._strategy=Yt,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!Et._handle},configurable:!0,enumerable:!0})}function mt(Vt,wt){wt&&process.nextTick(wt),Vt._handle&&(Vt._handle.close(),Vt._handle=null)}function yt(Vt){Vt.emit("close")}Object.defineProperty(s,"codes",{enumerable:!0,value:Object.freeze(Ft),writable:!1}),s.Deflate=pt,s.Inflate=Rt,s.Gzip=Qt,s.Gunzip=Nt,s.DeflateRaw=At,s.InflateRaw=kt,s.Unzip=Bt,s.createDeflate=function(Vt){return new pt(Vt)},s.createInflate=function(Vt){return new Rt(Vt)},s.createDeflateRaw=function(Vt){return new At(Vt)},s.createInflateRaw=function(Vt){return new kt(Vt)},s.createGzip=function(Vt){return new Qt(Vt)},s.createGunzip=function(Vt){return new Nt(Vt)},s.createUnzip=function(Vt){return new Bt(Vt)},s.deflate=function(Vt,wt,Et){return typeof wt=="function"&&(Et=wt,wt={}),ht(new pt(wt),Vt,Et)},s.deflateSync=function(Vt,wt){return ft(new pt(wt),Vt)},s.gzip=function(Vt,wt,Et){return typeof wt=="function"&&(Et=wt,wt={}),ht(new Qt(wt),Vt,Et)},s.gzipSync=function(Vt,wt){return ft(new Qt(wt),Vt)},s.deflateRaw=function(Vt,wt,Et){return typeof wt=="function"&&(Et=wt,wt={}),ht(new At(wt),Vt,Et)},s.deflateRawSync=function(Vt,wt){return ft(new At(wt),Vt)},s.unzip=function(Vt,wt,Et){return typeof wt=="function"&&(Et=wt,wt={}),ht(new Bt(wt),Vt,Et)},s.unzipSync=function(Vt,wt){return ft(new Bt(wt),Vt)},s.inflate=function(Vt,wt,Et){return typeof wt=="function"&&(Et=wt,wt={}),ht(new Rt(wt),Vt,Et)},s.inflateSync=function(Vt,wt){return ft(new Rt(wt),Vt)},s.gunzip=function(Vt,wt,Et){return typeof wt=="function"&&(Et=wt,wt={}),ht(new Nt(wt),Vt,Et)},s.gunzipSync=function(Vt,wt){return ft(new Nt(wt),Vt)},s.inflateRaw=function(Vt,wt,Et){return typeof wt=="function"&&(Et=wt,wt={}),ht(new kt(wt),Vt,Et)},s.inflateRawSync=function(Vt,wt){return ft(new kt(wt),Vt)},et.inherits(vt,$),vt.prototype.params=function(Vt,wt,Et){if(Vts.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+Vt);if(wt!=s.Z_FILTERED&&wt!=s.Z_HUFFMAN_ONLY&&wt!=s.Z_RLE&&wt!=s.Z_FIXED&&wt!=s.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+wt);if(this._level!==Vt||this._strategy!==wt){var Jt=this;this.flush(_e.Z_SYNC_FLUSH,function(){tt(Jt._handle,"zlib binding closed"),Jt._handle.params(Vt,wt),Jt._hadError||(Jt._level=Vt,Jt._strategy=wt,Et&&Et())})}else process.nextTick(Et)},vt.prototype.reset=function(){return tt(this._handle,"zlib binding closed"),this._handle.reset()},vt.prototype._flush=function(Vt){this._transform(j.alloc(0),"",Vt)},vt.prototype.flush=function(Vt,wt){var Et=this,Jt=this._writableState;(typeof Vt=="function"||Vt===void 0&&!wt)&&(wt=Vt,Vt=_e.Z_FULL_FLUSH),Jt.ended?wt&&process.nextTick(wt):Jt.ending?wt&&this.once("end",wt):Jt.needDrain?wt&&this.once("drain",function(){return Et.flush(Vt,wt)}):(this._flushFlag=Vt,this.write(j.alloc(0),"",wt))},vt.prototype.close=function(Vt){mt(this,Vt),process.nextTick(yt,this)},vt.prototype._transform=function(Vt,wt,Et){var Jt,Pt=this._writableState,Yt=(Pt.ending||Pt.ended)&&(!Vt||Pt.length===Vt.length);return Vt===null||j.isBuffer(Vt)?this._handle?(Yt?Jt=this._finishFlushFlag:(Jt=this._flushFlag,Vt.length>=Pt.length&&(this._flushFlag=this._opts.flush||_e.Z_NO_FLUSH)),void this._processChunk(Vt,Jt,Et)):Et(new Error("zlib binding closed")):Et(new Error("invalid input"))},vt.prototype._processChunk=function(Vt,wt,Et){var Jt=Vt&&Vt.length,Pt=this._chunkSize-this._offset,Yt=0,Mt=this,zt=typeof Et=="function";if(!zt){var qt,Xt=[],xt=0;this.on("error",function(an){qt=an}),tt(this._handle,"zlib binding closed");do var It=this._handle.writeSync(wt,Vt,Yt,Jt,this._buffer,this._offset,Pt);while(!this._hadError&&tn(It[0],It[1]));if(this._hadError)throw qt;if(xt>=nt)throw mt(this),new RangeError(rt);var $t=j.concat(Xt,xt);return mt(this),$t}tt(this._handle,"zlib binding closed");var un=this._handle.write(wt,Vt,Yt,Jt,this._buffer,this._offset,Pt);function tn(an,Kt){if(this&&(this.buffer=null,this.callback=null),!Mt._hadError){var Un=Pt-Kt;if(tt(Un>=0,"have should not go down"),Un>0){var Bn=Mt._buffer.slice(Mt._offset,Mt._offset+Un);Mt._offset+=Un,zt?Mt.push(Bn):(Xt.push(Bn),xt+=Bn.length)}if((Kt===0||Mt._offset>=Mt._chunkSize)&&(Pt=Mt._chunkSize,Mt._offset=0,Mt._buffer=j.allocUnsafe(Mt._chunkSize)),Kt===0){if(Yt+=Jt-an,Jt=an,!zt)return!0;var hn=Mt._handle.write(wt,Vt,Yt,Jt,Mt._buffer,Mt._offset,Mt._chunkSize);return hn.callback=tn,void(hn.buffer=Vt)}if(!zt)return!1;Et()}}un.buffer=Vt,un.callback=tn},et.inherits(pt,vt),et.inherits(Rt,vt),et.inherits(Qt,vt),et.inherits(Nt,vt),et.inherits(At,vt),et.inherits(kt,vt),et.inherits(Bt,vt)},1048:(o,s,_)=>{const j=_(7991),$=_(9318),_e=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;s.Buffer=tt,s.SlowBuffer=function(Tt){return+Tt!=Tt&&(Tt=0),tt.alloc(+Tt)},s.INSPECT_MAX_BYTES=50;function et(Tt){if(Tt>2147483647)throw new RangeError('The value "'+Tt+'" is invalid for option "size"');const Zt=new Uint8Array(Tt);return Object.setPrototypeOf(Zt,tt.prototype),Zt}function tt(Tt,Zt,Ot){if(typeof Tt=="number"){if(typeof Zt=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return it(Tt)}return nt(Tt,Zt,Ot)}function nt(Tt,Zt,Ot){if(typeof Tt=="string")return function(cn,fn){if(typeof fn=="string"&&fn!==""||(fn="utf8"),!tt.isEncoding(fn))throw new TypeError("Unknown encoding: "+fn);const _n=0|dt(cn,fn);let On=et(_n);const xn=On.write(cn,fn);return xn!==_n&&(On=On.slice(0,xn)),On}(Tt,Zt);if(ArrayBuffer.isView(Tt))return function(cn){if(Un(cn,Uint8Array)){const fn=new Uint8Array(cn);return ut(fn.buffer,fn.byteOffset,fn.byteLength)}return st(cn)}(Tt);if(Tt==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Tt);if(Un(Tt,ArrayBuffer)||Tt&&Un(Tt.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Un(Tt,SharedArrayBuffer)||Tt&&Un(Tt.buffer,SharedArrayBuffer)))return ut(Tt,Zt,Ot);if(typeof Tt=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const sn=Tt.valueOf&&Tt.valueOf();if(sn!=null&&sn!==Tt)return tt.from(sn,Zt,Ot);const ln=function(cn){if(tt.isBuffer(cn)){const fn=0|Ft(cn.length),_n=et(fn);return _n.length===0||cn.copy(_n,0,0,fn),_n}if(cn.length!==void 0)return typeof cn.length!="number"||Bn(cn.length)?et(0):st(cn);if(cn.type==="Buffer"&&Array.isArray(cn.data))return st(cn.data)}(Tt);if(ln)return ln;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Tt[Symbol.toPrimitive]=="function")return tt.from(Tt[Symbol.toPrimitive]("string"),Zt,Ot);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Tt)}function rt(Tt){if(typeof Tt!="number")throw new TypeError('"size" argument must be of type number');if(Tt<0)throw new RangeError('The value "'+Tt+'" is invalid for option "size"')}function it(Tt){return rt(Tt),et(Tt<0?0:0|Ft(Tt))}function st(Tt){const Zt=Tt.length<0?0:0|Ft(Tt.length),Ot=et(Zt);for(let sn=0;sn=2147483647)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+2147483647 .toString(16)+" bytes");return 0|Tt}function dt(Tt,Zt){if(tt.isBuffer(Tt))return Tt.length;if(ArrayBuffer.isView(Tt)||Un(Tt,ArrayBuffer))return Tt.byteLength;if(typeof Tt!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof Tt);const Ot=Tt.length,sn=arguments.length>2&&arguments[2]===!0;if(!sn&&Ot===0)return 0;let ln=!1;for(;;)switch(Zt){case"ascii":case"latin1":case"binary":return Ot;case"utf8":case"utf-8":return tn(Tt).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*Ot;case"hex":return Ot>>>1;case"base64":return an(Tt).length;default:if(ln)return sn?-1:tn(Tt).length;Zt=(""+Zt).toLowerCase(),ln=!0}}function gt(Tt,Zt,Ot){let sn=!1;if((Zt===void 0||Zt<0)&&(Zt=0),Zt>this.length||((Ot===void 0||Ot>this.length)&&(Ot=this.length),Ot<=0)||(Ot>>>=0)<=(Zt>>>=0))return"";for(Tt||(Tt="utf8");;)switch(Tt){case"hex":return mt(this,Zt,Ot);case"utf8":case"utf-8":return Bt(this,Zt,Ot);case"ascii":return jt(this,Zt,Ot);case"latin1":case"binary":return vt(this,Zt,Ot);case"base64":return kt(this,Zt,Ot);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return yt(this,Zt,Ot);default:if(sn)throw new TypeError("Unknown encoding: "+Tt);Tt=(Tt+"").toLowerCase(),sn=!0}}function Ut(Tt,Zt,Ot){const sn=Tt[Zt];Tt[Zt]=Tt[Ot],Tt[Ot]=sn}function ht(Tt,Zt,Ot,sn,ln){if(Tt.length===0)return-1;if(typeof Ot=="string"?(sn=Ot,Ot=0):Ot>2147483647?Ot=2147483647:Ot<-2147483648&&(Ot=-2147483648),Bn(Ot=+Ot)&&(Ot=ln?0:Tt.length-1),Ot<0&&(Ot=Tt.length+Ot),Ot>=Tt.length){if(ln)return-1;Ot=Tt.length-1}else if(Ot<0){if(!ln)return-1;Ot=0}if(typeof Zt=="string"&&(Zt=tt.from(Zt,sn)),tt.isBuffer(Zt))return Zt.length===0?-1:ft(Tt,Zt,Ot,sn,ln);if(typeof Zt=="number")return Zt&=255,typeof Uint8Array.prototype.indexOf=="function"?ln?Uint8Array.prototype.indexOf.call(Tt,Zt,Ot):Uint8Array.prototype.lastIndexOf.call(Tt,Zt,Ot):ft(Tt,[Zt],Ot,sn,ln);throw new TypeError("val must be string, number or Buffer")}function ft(Tt,Zt,Ot,sn,ln){let cn,fn=1,_n=Tt.length,On=Zt.length;if(sn!==void 0&&((sn=String(sn).toLowerCase())==="ucs2"||sn==="ucs-2"||sn==="utf16le"||sn==="utf-16le")){if(Tt.length<2||Zt.length<2)return-1;fn=2,_n/=2,On/=2,Ot/=2}function xn(Ln,Pn){return fn===1?Ln[Pn]:Ln.readUInt16BE(Pn*fn)}if(ln){let Ln=-1;for(cn=Ot;cn<_n;cn++)if(xn(Tt,cn)===xn(Zt,Ln===-1?0:cn-Ln)){if(Ln===-1&&(Ln=cn),cn-Ln+1===On)return Ln*fn}else Ln!==-1&&(cn-=cn-Ln),Ln=-1}else for(Ot+On>_n&&(Ot=_n-On),cn=Ot;cn>=0;cn--){let Ln=!0;for(let Pn=0;Pnln&&(sn=ln):sn=ln;const cn=Zt.length;let fn;for(sn>cn/2&&(sn=cn/2),fn=0;fn>8,On=fn%256,xn.push(On),xn.push(_n);return xn}(Zt,Tt.length-Ot),Tt,Ot,sn)}function kt(Tt,Zt,Ot){return Zt===0&&Ot===Tt.length?j.fromByteArray(Tt):j.fromByteArray(Tt.slice(Zt,Ot))}function Bt(Tt,Zt,Ot){Ot=Math.min(Tt.length,Ot);const sn=[];let ln=Zt;for(;ln239?4:cn>223?3:cn>191?2:1;if(ln+_n<=Ot){let On,xn,Ln,Pn;switch(_n){case 1:cn<128&&(fn=cn);break;case 2:On=Tt[ln+1],(192&On)==128&&(Pn=(31&cn)<<6|63&On,Pn>127&&(fn=Pn));break;case 3:On=Tt[ln+1],xn=Tt[ln+2],(192&On)==128&&(192&xn)==128&&(Pn=(15&cn)<<12|(63&On)<<6|63&xn,Pn>2047&&(Pn<55296||Pn>57343)&&(fn=Pn));break;case 4:On=Tt[ln+1],xn=Tt[ln+2],Ln=Tt[ln+3],(192&On)==128&&(192&xn)==128&&(192&Ln)==128&&(Pn=(15&cn)<<18|(63&On)<<12|(63&xn)<<6|63&Ln,Pn>65535&&Pn<1114112&&(fn=Pn))}}fn===null?(fn=65533,_n=1):fn>65535&&(fn-=65536,sn.push(fn>>>10&1023|55296),fn=56320|1023&fn),sn.push(fn),ln+=_n}return function(cn){const fn=cn.length;if(fn<=4096)return String.fromCharCode.apply(String,cn);let _n="",On=0;for(;On"u"||typeof console.error!="function"||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(tt.prototype,"parent",{enumerable:!0,get:function(){if(tt.isBuffer(this))return this.buffer}}),Object.defineProperty(tt.prototype,"offset",{enumerable:!0,get:function(){if(tt.isBuffer(this))return this.byteOffset}}),tt.poolSize=8192,tt.from=function(Tt,Zt,Ot){return nt(Tt,Zt,Ot)},Object.setPrototypeOf(tt.prototype,Uint8Array.prototype),Object.setPrototypeOf(tt,Uint8Array),tt.alloc=function(Tt,Zt,Ot){return function(sn,ln,cn){return rt(sn),sn<=0?et(sn):ln!==void 0?typeof cn=="string"?et(sn).fill(ln,cn):et(sn).fill(ln):et(sn)}(Tt,Zt,Ot)},tt.allocUnsafe=function(Tt){return it(Tt)},tt.allocUnsafeSlow=function(Tt){return it(Tt)},tt.isBuffer=function(Tt){return Tt!=null&&Tt._isBuffer===!0&&Tt!==tt.prototype},tt.compare=function(Tt,Zt){if(Un(Tt,Uint8Array)&&(Tt=tt.from(Tt,Tt.offset,Tt.byteLength)),Un(Zt,Uint8Array)&&(Zt=tt.from(Zt,Zt.offset,Zt.byteLength)),!tt.isBuffer(Tt)||!tt.isBuffer(Zt))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(Tt===Zt)return 0;let Ot=Tt.length,sn=Zt.length;for(let ln=0,cn=Math.min(Ot,sn);lnsn.length?(tt.isBuffer(cn)||(cn=tt.from(cn)),cn.copy(sn,ln)):Uint8Array.prototype.set.call(sn,cn,ln);else{if(!tt.isBuffer(cn))throw new TypeError('"list" argument must be an Array of Buffers');cn.copy(sn,ln)}ln+=cn.length}return sn},tt.byteLength=dt,tt.prototype._isBuffer=!0,tt.prototype.swap16=function(){const Tt=this.length;if(Tt%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let Zt=0;ZtZt&&(Tt+=" ... "),""},_e&&(tt.prototype[_e]=tt.prototype.inspect),tt.prototype.compare=function(Tt,Zt,Ot,sn,ln){if(Un(Tt,Uint8Array)&&(Tt=tt.from(Tt,Tt.offset,Tt.byteLength)),!tt.isBuffer(Tt))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof Tt);if(Zt===void 0&&(Zt=0),Ot===void 0&&(Ot=Tt?Tt.length:0),sn===void 0&&(sn=0),ln===void 0&&(ln=this.length),Zt<0||Ot>Tt.length||sn<0||ln>this.length)throw new RangeError("out of range index");if(sn>=ln&&Zt>=Ot)return 0;if(sn>=ln)return-1;if(Zt>=Ot)return 1;if(this===Tt)return 0;let cn=(ln>>>=0)-(sn>>>=0),fn=(Ot>>>=0)-(Zt>>>=0);const _n=Math.min(cn,fn),On=this.slice(sn,ln),xn=Tt.slice(Zt,Ot);for(let Ln=0;Ln<_n;++Ln)if(On[Ln]!==xn[Ln]){cn=On[Ln],fn=xn[Ln];break}return cn>>=0,isFinite(Ot)?(Ot>>>=0,sn===void 0&&(sn="utf8")):(sn=Ot,Ot=void 0)}const ln=this.length-Zt;if((Ot===void 0||Ot>ln)&&(Ot=ln),Tt.length>0&&(Ot<0||Zt<0)||Zt>this.length)throw new RangeError("Attempt to write outside buffer bounds");sn||(sn="utf8");let cn=!1;for(;;)switch(sn){case"hex":return pt(this,Tt,Zt,Ot);case"utf8":case"utf-8":return Rt(this,Tt,Zt,Ot);case"ascii":case"latin1":case"binary":return Qt(this,Tt,Zt,Ot);case"base64":return Nt(this,Tt,Zt,Ot);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return At(this,Tt,Zt,Ot);default:if(cn)throw new TypeError("Unknown encoding: "+sn);sn=(""+sn).toLowerCase(),cn=!0}},tt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function jt(Tt,Zt,Ot){let sn="";Ot=Math.min(Tt.length,Ot);for(let ln=Zt;lnsn)&&(Ot=sn);let ln="";for(let cn=Zt;cnOt)throw new RangeError("Trying to access beyond buffer length")}function wt(Tt,Zt,Ot,sn,ln,cn){if(!tt.isBuffer(Tt))throw new TypeError('"buffer" argument must be a Buffer instance');if(Zt>ln||ZtTt.length)throw new RangeError("Index out of range")}function Et(Tt,Zt,Ot,sn,ln){xt(Zt,sn,ln,Tt,Ot,7);let cn=Number(Zt&BigInt(4294967295));Tt[Ot++]=cn,cn>>=8,Tt[Ot++]=cn,cn>>=8,Tt[Ot++]=cn,cn>>=8,Tt[Ot++]=cn;let fn=Number(Zt>>BigInt(32)&BigInt(4294967295));return Tt[Ot++]=fn,fn>>=8,Tt[Ot++]=fn,fn>>=8,Tt[Ot++]=fn,fn>>=8,Tt[Ot++]=fn,Ot}function Jt(Tt,Zt,Ot,sn,ln){xt(Zt,sn,ln,Tt,Ot,7);let cn=Number(Zt&BigInt(4294967295));Tt[Ot+7]=cn,cn>>=8,Tt[Ot+6]=cn,cn>>=8,Tt[Ot+5]=cn,cn>>=8,Tt[Ot+4]=cn;let fn=Number(Zt>>BigInt(32)&BigInt(4294967295));return Tt[Ot+3]=fn,fn>>=8,Tt[Ot+2]=fn,fn>>=8,Tt[Ot+1]=fn,fn>>=8,Tt[Ot]=fn,Ot+8}function Pt(Tt,Zt,Ot,sn,ln,cn){if(Ot+sn>Tt.length)throw new RangeError("Index out of range");if(Ot<0)throw new RangeError("Index out of range")}function Yt(Tt,Zt,Ot,sn,ln){return Zt=+Zt,Ot>>>=0,ln||Pt(Tt,0,Ot,4),$.write(Tt,Zt,Ot,sn,23,4),Ot+4}function Mt(Tt,Zt,Ot,sn,ln){return Zt=+Zt,Ot>>>=0,ln||Pt(Tt,0,Ot,8),$.write(Tt,Zt,Ot,sn,52,8),Ot+8}tt.prototype.slice=function(Tt,Zt){const Ot=this.length;(Tt=~~Tt)<0?(Tt+=Ot)<0&&(Tt=0):Tt>Ot&&(Tt=Ot),(Zt=Zt===void 0?Ot:~~Zt)<0?(Zt+=Ot)<0&&(Zt=0):Zt>Ot&&(Zt=Ot),Zt>>=0,Zt>>>=0,Ot||Vt(Tt,Zt,this.length);let sn=this[Tt],ln=1,cn=0;for(;++cn>>=0,Zt>>>=0,Ot||Vt(Tt,Zt,this.length);let sn=this[Tt+--Zt],ln=1;for(;Zt>0&&(ln*=256);)sn+=this[Tt+--Zt]*ln;return sn},tt.prototype.readUint8=tt.prototype.readUInt8=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,1,this.length),this[Tt]},tt.prototype.readUint16LE=tt.prototype.readUInt16LE=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,2,this.length),this[Tt]|this[Tt+1]<<8},tt.prototype.readUint16BE=tt.prototype.readUInt16BE=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,2,this.length),this[Tt]<<8|this[Tt+1]},tt.prototype.readUint32LE=tt.prototype.readUInt32LE=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,4,this.length),(this[Tt]|this[Tt+1]<<8|this[Tt+2]<<16)+16777216*this[Tt+3]},tt.prototype.readUint32BE=tt.prototype.readUInt32BE=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,4,this.length),16777216*this[Tt]+(this[Tt+1]<<16|this[Tt+2]<<8|this[Tt+3])},tt.prototype.readBigUInt64LE=En(function(Tt){It(Tt>>>=0,"offset");const Zt=this[Tt],Ot=this[Tt+7];Zt!==void 0&&Ot!==void 0||$t(Tt,this.length-8);const sn=Zt+256*this[++Tt]+65536*this[++Tt]+this[++Tt]*2**24,ln=this[++Tt]+256*this[++Tt]+65536*this[++Tt]+Ot*2**24;return BigInt(sn)+(BigInt(ln)<>>=0,"offset");const Zt=this[Tt],Ot=this[Tt+7];Zt!==void 0&&Ot!==void 0||$t(Tt,this.length-8);const sn=Zt*2**24+65536*this[++Tt]+256*this[++Tt]+this[++Tt],ln=this[++Tt]*2**24+65536*this[++Tt]+256*this[++Tt]+Ot;return(BigInt(sn)<>>=0,Zt>>>=0,Ot||Vt(Tt,Zt,this.length);let sn=this[Tt],ln=1,cn=0;for(;++cn=ln&&(sn-=Math.pow(2,8*Zt)),sn},tt.prototype.readIntBE=function(Tt,Zt,Ot){Tt>>>=0,Zt>>>=0,Ot||Vt(Tt,Zt,this.length);let sn=Zt,ln=1,cn=this[Tt+--sn];for(;sn>0&&(ln*=256);)cn+=this[Tt+--sn]*ln;return ln*=128,cn>=ln&&(cn-=Math.pow(2,8*Zt)),cn},tt.prototype.readInt8=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,1,this.length),128&this[Tt]?-1*(255-this[Tt]+1):this[Tt]},tt.prototype.readInt16LE=function(Tt,Zt){Tt>>>=0,Zt||Vt(Tt,2,this.length);const Ot=this[Tt]|this[Tt+1]<<8;return 32768&Ot?4294901760|Ot:Ot},tt.prototype.readInt16BE=function(Tt,Zt){Tt>>>=0,Zt||Vt(Tt,2,this.length);const Ot=this[Tt+1]|this[Tt]<<8;return 32768&Ot?4294901760|Ot:Ot},tt.prototype.readInt32LE=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,4,this.length),this[Tt]|this[Tt+1]<<8|this[Tt+2]<<16|this[Tt+3]<<24},tt.prototype.readInt32BE=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,4,this.length),this[Tt]<<24|this[Tt+1]<<16|this[Tt+2]<<8|this[Tt+3]},tt.prototype.readBigInt64LE=En(function(Tt){It(Tt>>>=0,"offset");const Zt=this[Tt],Ot=this[Tt+7];Zt!==void 0&&Ot!==void 0||$t(Tt,this.length-8);const sn=this[Tt+4]+256*this[Tt+5]+65536*this[Tt+6]+(Ot<<24);return(BigInt(sn)<>>=0,"offset");const Zt=this[Tt],Ot=this[Tt+7];Zt!==void 0&&Ot!==void 0||$t(Tt,this.length-8);const sn=(Zt<<24)+65536*this[++Tt]+256*this[++Tt]+this[++Tt];return(BigInt(sn)<>>=0,Zt||Vt(Tt,4,this.length),$.read(this,Tt,!0,23,4)},tt.prototype.readFloatBE=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,4,this.length),$.read(this,Tt,!1,23,4)},tt.prototype.readDoubleLE=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,8,this.length),$.read(this,Tt,!0,52,8)},tt.prototype.readDoubleBE=function(Tt,Zt){return Tt>>>=0,Zt||Vt(Tt,8,this.length),$.read(this,Tt,!1,52,8)},tt.prototype.writeUintLE=tt.prototype.writeUIntLE=function(Tt,Zt,Ot,sn){Tt=+Tt,Zt>>>=0,Ot>>>=0,!sn&&wt(this,Tt,Zt,Ot,Math.pow(2,8*Ot)-1,0);let ln=1,cn=0;for(this[Zt]=255&Tt;++cn>>=0,Ot>>>=0,!sn&&wt(this,Tt,Zt,Ot,Math.pow(2,8*Ot)-1,0);let ln=Ot-1,cn=1;for(this[Zt+ln]=255&Tt;--ln>=0&&(cn*=256);)this[Zt+ln]=Tt/cn&255;return Zt+Ot},tt.prototype.writeUint8=tt.prototype.writeUInt8=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,1,255,0),this[Zt]=255&Tt,Zt+1},tt.prototype.writeUint16LE=tt.prototype.writeUInt16LE=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,2,65535,0),this[Zt]=255&Tt,this[Zt+1]=Tt>>>8,Zt+2},tt.prototype.writeUint16BE=tt.prototype.writeUInt16BE=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,2,65535,0),this[Zt]=Tt>>>8,this[Zt+1]=255&Tt,Zt+2},tt.prototype.writeUint32LE=tt.prototype.writeUInt32LE=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,4,4294967295,0),this[Zt+3]=Tt>>>24,this[Zt+2]=Tt>>>16,this[Zt+1]=Tt>>>8,this[Zt]=255&Tt,Zt+4},tt.prototype.writeUint32BE=tt.prototype.writeUInt32BE=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,4,4294967295,0),this[Zt]=Tt>>>24,this[Zt+1]=Tt>>>16,this[Zt+2]=Tt>>>8,this[Zt+3]=255&Tt,Zt+4},tt.prototype.writeBigUInt64LE=En(function(Tt,Zt=0){return Et(this,Tt,Zt,BigInt(0),BigInt("0xffffffffffffffff"))}),tt.prototype.writeBigUInt64BE=En(function(Tt,Zt=0){return Jt(this,Tt,Zt,BigInt(0),BigInt("0xffffffffffffffff"))}),tt.prototype.writeIntLE=function(Tt,Zt,Ot,sn){if(Tt=+Tt,Zt>>>=0,!sn){const _n=Math.pow(2,8*Ot-1);wt(this,Tt,Zt,Ot,_n-1,-_n)}let ln=0,cn=1,fn=0;for(this[Zt]=255&Tt;++ln>0)-fn&255;return Zt+Ot},tt.prototype.writeIntBE=function(Tt,Zt,Ot,sn){if(Tt=+Tt,Zt>>>=0,!sn){const _n=Math.pow(2,8*Ot-1);wt(this,Tt,Zt,Ot,_n-1,-_n)}let ln=Ot-1,cn=1,fn=0;for(this[Zt+ln]=255&Tt;--ln>=0&&(cn*=256);)Tt<0&&fn===0&&this[Zt+ln+1]!==0&&(fn=1),this[Zt+ln]=(Tt/cn>>0)-fn&255;return Zt+Ot},tt.prototype.writeInt8=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,1,127,-128),Tt<0&&(Tt=255+Tt+1),this[Zt]=255&Tt,Zt+1},tt.prototype.writeInt16LE=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,2,32767,-32768),this[Zt]=255&Tt,this[Zt+1]=Tt>>>8,Zt+2},tt.prototype.writeInt16BE=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,2,32767,-32768),this[Zt]=Tt>>>8,this[Zt+1]=255&Tt,Zt+2},tt.prototype.writeInt32LE=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,4,2147483647,-2147483648),this[Zt]=255&Tt,this[Zt+1]=Tt>>>8,this[Zt+2]=Tt>>>16,this[Zt+3]=Tt>>>24,Zt+4},tt.prototype.writeInt32BE=function(Tt,Zt,Ot){return Tt=+Tt,Zt>>>=0,Ot||wt(this,Tt,Zt,4,2147483647,-2147483648),Tt<0&&(Tt=4294967295+Tt+1),this[Zt]=Tt>>>24,this[Zt+1]=Tt>>>16,this[Zt+2]=Tt>>>8,this[Zt+3]=255&Tt,Zt+4},tt.prototype.writeBigInt64LE=En(function(Tt,Zt=0){return Et(this,Tt,Zt,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),tt.prototype.writeBigInt64BE=En(function(Tt,Zt=0){return Jt(this,Tt,Zt,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),tt.prototype.writeFloatLE=function(Tt,Zt,Ot){return Yt(this,Tt,Zt,!0,Ot)},tt.prototype.writeFloatBE=function(Tt,Zt,Ot){return Yt(this,Tt,Zt,!1,Ot)},tt.prototype.writeDoubleLE=function(Tt,Zt,Ot){return Mt(this,Tt,Zt,!0,Ot)},tt.prototype.writeDoubleBE=function(Tt,Zt,Ot){return Mt(this,Tt,Zt,!1,Ot)},tt.prototype.copy=function(Tt,Zt,Ot,sn){if(!tt.isBuffer(Tt))throw new TypeError("argument should be a Buffer");if(Ot||(Ot=0),sn||sn===0||(sn=this.length),Zt>=Tt.length&&(Zt=Tt.length),Zt||(Zt=0),sn>0&&sn=this.length)throw new RangeError("Index out of range");if(sn<0)throw new RangeError("sourceEnd out of bounds");sn>this.length&&(sn=this.length),Tt.length-Zt>>=0,Ot=Ot===void 0?this.length:Ot>>>0,Tt||(Tt=0),typeof Tt=="number")for(ln=Zt;ln=sn+4;Ot-=3)Zt=`_${Tt.slice(Ot-3,Ot)}${Zt}`;return`${Tt.slice(0,Ot)}${Zt}`}function xt(Tt,Zt,Ot,sn,ln,cn){if(Tt>Ot||Tt3?Zt===0||Zt===BigInt(0)?`>= 0${fn} and < 2${fn} ** ${8*(cn+1)}${fn}`:`>= -(2${fn} ** ${8*(cn+1)-1}${fn}) and < 2 ** ${8*(cn+1)-1}${fn}`:`>= ${Zt}${fn} and <= ${Ot}${fn}`,new zt.ERR_OUT_OF_RANGE("value",_n,Tt)}(function(fn,_n,On){It(_n,"offset"),fn[_n]!==void 0&&fn[_n+On]!==void 0||$t(_n,fn.length-(On+1))})(sn,ln,cn)}function It(Tt,Zt){if(typeof Tt!="number")throw new zt.ERR_INVALID_ARG_TYPE(Zt,"number",Tt)}function $t(Tt,Zt,Ot){throw Math.floor(Tt)!==Tt?(It(Tt,Ot),new zt.ERR_OUT_OF_RANGE(Ot||"offset","an integer",Tt)):Zt<0?new zt.ERR_BUFFER_OUT_OF_BOUNDS:new zt.ERR_OUT_OF_RANGE(Ot||"offset",`>= ${Ot?1:0} and <= ${Zt}`,Tt)}qt("ERR_BUFFER_OUT_OF_BOUNDS",function(Tt){return Tt?Tt+" is outside of buffer bounds":"Attempt to access memory outside buffer bounds"},RangeError),qt("ERR_INVALID_ARG_TYPE",function(Tt,Zt){return`The "${Tt}" argument must be of type number. Received type ${typeof Zt}`},TypeError),qt("ERR_OUT_OF_RANGE",function(Tt,Zt,Ot){let sn=`The value of "${Tt}" is out of range.`,ln=Ot;return Number.isInteger(Ot)&&Math.abs(Ot)>4294967296?ln=Xt(String(Ot)):typeof Ot=="bigint"&&(ln=String(Ot),(Ot>BigInt(2)**BigInt(32)||Ot<-(BigInt(2)**BigInt(32)))&&(ln=Xt(ln)),ln+="n"),sn+=` It must be ${Zt}. Received ${ln}`,sn},RangeError);const un=/[^+/0-9A-Za-z-_]/g;function tn(Tt,Zt){let Ot;Zt=Zt||1/0;const sn=Tt.length;let ln=null;const cn=[];for(let fn=0;fn55295&&Ot<57344){if(!ln){if(Ot>56319){(Zt-=3)>-1&&cn.push(239,191,189);continue}if(fn+1===sn){(Zt-=3)>-1&&cn.push(239,191,189);continue}ln=Ot;continue}if(Ot<56320){(Zt-=3)>-1&&cn.push(239,191,189),ln=Ot;continue}Ot=65536+(ln-55296<<10|Ot-56320)}else ln&&(Zt-=3)>-1&&cn.push(239,191,189);if(ln=null,Ot<128){if((Zt-=1)<0)break;cn.push(Ot)}else if(Ot<2048){if((Zt-=2)<0)break;cn.push(Ot>>6|192,63&Ot|128)}else if(Ot<65536){if((Zt-=3)<0)break;cn.push(Ot>>12|224,Ot>>6&63|128,63&Ot|128)}else{if(!(Ot<1114112))throw new Error("Invalid code point");if((Zt-=4)<0)break;cn.push(Ot>>18|240,Ot>>12&63|128,Ot>>6&63|128,63&Ot|128)}}return cn}function an(Tt){return j.toByteArray(function(Zt){if((Zt=(Zt=Zt.split("=")[0]).trim().replace(un,"")).length<2)return"";for(;Zt.length%4!=0;)Zt+="=";return Zt}(Tt))}function Kt(Tt,Zt,Ot,sn){let ln;for(ln=0;ln=Zt.length||ln>=Tt.length);++ln)Zt[ln+Ot]=Tt[ln];return ln}function Un(Tt,Zt){return Tt instanceof Zt||Tt!=null&&Tt.constructor!=null&&Tt.constructor.name!=null&&Tt.constructor.name===Zt.name}function Bn(Tt){return Tt!=Tt}const hn=function(){const Tt=new Array(256);for(let Zt=0;Zt<16;++Zt){const Ot=16*Zt;for(let sn=0;sn<16;++sn)Tt[Ot+sn]="0123456789abcdef"[Zt]+"0123456789abcdef"[sn]}return Tt}();function En(Tt){return typeof BigInt>"u"?Cn:Tt}function Cn(){throw new Error("BigInt not supported")}},49:o=>{o.exports={100:"Continue",101:"Switching Protocols",102:"Processing",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",208:"Already Reported",226:"IM Used",300:"Multiple Choices",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"I'm a teapot",421:"Misdirected Request",422:"Unprocessable Entity",423:"Locked",424:"Failed Dependency",425:"Unordered Collection",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",509:"Bandwidth Limit Exceeded",510:"Not Extended",511:"Network Authentication Required"}},8165:(o,s,_)=>{var j=_(9138),$=_(6095),_e=_(4531),et=_(7196);o.exports=et||j.call(_e,$)},6095:o=>{o.exports=Function.prototype.apply},4531:o=>{o.exports=Function.prototype.call},9903:(o,s,_)=>{var j=_(9138),$=_(3468),_e=_(4531),et=_(8165);o.exports=function(tt){if(tt.length<1||typeof tt[0]!="function")throw new $("a function is required");return et(j,_e,tt)}},7196:o=>{o.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply},9818:(o,s,_)=>{var j=_(528),$=_(8498),_e=$(j("String.prototype.indexOf"));o.exports=function(et,tt){var nt=j(et,!!tt);return typeof nt=="function"&&_e(et,".prototype.")>-1?$(nt):nt}},8498:(o,s,_)=>{var j=_(9138),$=_(528),_e=_(6108),et=_(3468),tt=$("%Function.prototype.apply%"),nt=$("%Function.prototype.call%"),rt=$("%Reflect.apply%",!0)||j.call(nt,tt),it=_(4940),st=$("%Math.max%");o.exports=function(Ft){if(typeof Ft!="function")throw new et("a function is required");var dt=rt(j,nt,arguments);return _e(dt,1+st(0,Ft.length-(arguments.length-1)),!0)};var ut=function(){return rt(j,tt,arguments)};it?it(o.exports,"apply",{value:ut}):o.exports.apply=ut},288:function(o,s){var _=typeof self<"u"?self:this,j=function(){function _e(){this.fetch=!1,this.DOMException=_.DOMException}return _e.prototype=_,new _e}();(function(_e){(function(et){var tt="URLSearchParams"in _e,nt="Symbol"in _e&&"iterator"in Symbol,rt="FileReader"in _e&&"Blob"in _e&&function(){try{return new Blob,!0}catch{return!1}}(),it="FormData"in _e,st="ArrayBuffer"in _e;if(st)var ut=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],Ft=ArrayBuffer.isView||function(yt){return yt&&ut.indexOf(Object.prototype.toString.call(yt))>-1};function dt(yt){if(typeof yt!="string"&&(yt=String(yt)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(yt))throw new TypeError("Invalid character in header field name");return yt.toLowerCase()}function gt(yt){return typeof yt!="string"&&(yt=String(yt)),yt}function Ut(yt){var Vt={next:function(){var wt=yt.shift();return{done:wt===void 0,value:wt}}};return nt&&(Vt[Symbol.iterator]=function(){return Vt}),Vt}function ht(yt){this.map={},yt instanceof ht?yt.forEach(function(Vt,wt){this.append(wt,Vt)},this):Array.isArray(yt)?yt.forEach(function(Vt){this.append(Vt[0],Vt[1])},this):yt&&Object.getOwnPropertyNames(yt).forEach(function(Vt){this.append(Vt,yt[Vt])},this)}function ft(yt){if(yt.bodyUsed)return Promise.reject(new TypeError("Already read"));yt.bodyUsed=!0}function pt(yt){return new Promise(function(Vt,wt){yt.onload=function(){Vt(yt.result)},yt.onerror=function(){wt(yt.error)}})}function Rt(yt){var Vt=new FileReader,wt=pt(Vt);return Vt.readAsArrayBuffer(yt),wt}function Qt(yt){if(yt.slice)return yt.slice(0);var Vt=new Uint8Array(yt.byteLength);return Vt.set(new Uint8Array(yt)),Vt.buffer}function Nt(){return this.bodyUsed=!1,this._initBody=function(yt){var Vt;this._bodyInit=yt,yt?typeof yt=="string"?this._bodyText=yt:rt&&Blob.prototype.isPrototypeOf(yt)?this._bodyBlob=yt:it&&FormData.prototype.isPrototypeOf(yt)?this._bodyFormData=yt:tt&&URLSearchParams.prototype.isPrototypeOf(yt)?this._bodyText=yt.toString():st&&rt&&(Vt=yt)&&DataView.prototype.isPrototypeOf(Vt)?(this._bodyArrayBuffer=Qt(yt.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):st&&(ArrayBuffer.prototype.isPrototypeOf(yt)||Ft(yt))?this._bodyArrayBuffer=Qt(yt):this._bodyText=yt=Object.prototype.toString.call(yt):this._bodyText="",this.headers.get("content-type")||(typeof yt=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):tt&&URLSearchParams.prototype.isPrototypeOf(yt)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},rt&&(this.blob=function(){var yt=ft(this);if(yt)return yt;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?ft(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(Rt)}),this.text=function(){var yt,Vt,wt,Et=ft(this);if(Et)return Et;if(this._bodyBlob)return yt=this._bodyBlob,Vt=new FileReader,wt=pt(Vt),Vt.readAsText(yt),wt;if(this._bodyArrayBuffer)return Promise.resolve(function(Jt){for(var Pt=new Uint8Array(Jt),Yt=new Array(Pt.length),Mt=0;Mt-1?Et:wt),this.mode=Vt.mode||this.mode||null,this.signal=Vt.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&Jt)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(Jt)}function Bt(yt){var Vt=new FormData;return yt.trim().split("&").forEach(function(wt){if(wt){var Et=wt.split("="),Jt=Et.shift().replace(/\+/g," "),Pt=Et.join("=").replace(/\+/g," ");Vt.append(decodeURIComponent(Jt),decodeURIComponent(Pt))}}),Vt}function jt(yt,Vt){Vt||(Vt={}),this.type="default",this.status=Vt.status===void 0?200:Vt.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in Vt?Vt.statusText:"OK",this.headers=new ht(Vt.headers),this.url=Vt.url||"",this._initBody(yt)}kt.prototype.clone=function(){return new kt(this,{body:this._bodyInit})},Nt.call(kt.prototype),Nt.call(jt.prototype),jt.prototype.clone=function(){return new jt(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new ht(this.headers),url:this.url})},jt.error=function(){var yt=new jt(null,{status:0,statusText:""});return yt.type="error",yt};var vt=[301,302,303,307,308];jt.redirect=function(yt,Vt){if(vt.indexOf(Vt)===-1)throw new RangeError("Invalid status code");return new jt(null,{status:Vt,headers:{location:yt}})},et.DOMException=_e.DOMException;try{new et.DOMException}catch{et.DOMException=function(yt,Vt){this.message=yt,this.name=Vt;var wt=Error(yt);this.stack=wt.stack},et.DOMException.prototype=Object.create(Error.prototype),et.DOMException.prototype.constructor=et.DOMException}function mt(yt,Vt){return new Promise(function(wt,Et){var Jt=new kt(yt,Vt);if(Jt.signal&&Jt.signal.aborted)return Et(new et.DOMException("Aborted","AbortError"));var Pt=new XMLHttpRequest;function Yt(){Pt.abort()}Pt.onload=function(){var Mt,zt,qt={status:Pt.status,statusText:Pt.statusText,headers:(Mt=Pt.getAllResponseHeaders()||"",zt=new ht,Mt.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(xt){var It=xt.split(":"),$t=It.shift().trim();if($t){var un=It.join(":").trim();zt.append($t,un)}}),zt)};qt.url="responseURL"in Pt?Pt.responseURL:qt.headers.get("X-Request-URL");var Xt="response"in Pt?Pt.response:Pt.responseText;wt(new jt(Xt,qt))},Pt.onerror=function(){Et(new TypeError("Network request failed"))},Pt.ontimeout=function(){Et(new TypeError("Network request failed"))},Pt.onabort=function(){Et(new et.DOMException("Aborted","AbortError"))},Pt.open(Jt.method,Jt.url,!0),Jt.credentials==="include"?Pt.withCredentials=!0:Jt.credentials==="omit"&&(Pt.withCredentials=!1),"responseType"in Pt&&rt&&(Pt.responseType="blob"),Jt.headers.forEach(function(Mt,zt){Pt.setRequestHeader(zt,Mt)}),Jt.signal&&(Jt.signal.addEventListener("abort",Yt),Pt.onreadystatechange=function(){Pt.readyState===4&&Jt.signal.removeEventListener("abort",Yt)}),Pt.send(Jt._bodyInit===void 0?null:Jt._bodyInit)})}mt.polyfill=!0,_e.fetch||(_e.fetch=mt,_e.Headers=ht,_e.Request=kt,_e.Response=jt),et.Headers=ht,et.Request=kt,et.Response=jt,et.fetch=mt,Object.defineProperty(et,"__esModule",{value:!0})})({})})(j),j.fetch.ponyfill=!0,delete j.fetch.polyfill;var $=j;(s=$.fetch).default=$.fetch,s.fetch=$.fetch,s.Headers=$.Headers,s.Request=$.Request,s.Response=$.Response,o.exports=s},686:(o,s,_)=>{var j=_(4940),$=_(5731),_e=_(3468),et=_(9336);o.exports=function(tt,nt,rt){if(!tt||typeof tt!="object"&&typeof tt!="function")throw new _e("`obj` must be an object or a function`");if(typeof nt!="string"&&typeof nt!="symbol")throw new _e("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new _e("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new _e("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new _e("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new _e("`loose`, if provided, must be a boolean");var it=arguments.length>3?arguments[3]:null,st=arguments.length>4?arguments[4]:null,ut=arguments.length>5?arguments[5]:null,Ft=arguments.length>6&&arguments[6],dt=!!et&&et(tt,nt);if(j)j(tt,nt,{configurable:ut===null&&dt?dt.configurable:!ut,enumerable:it===null&&dt?dt.enumerable:!it,value:rt,writable:st===null&&dt?dt.writable:!st});else{if(!Ft&&(it||st||ut))throw new $("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");tt[nt]=rt}}},1857:(o,s,_)=>{var j=_(9228),$=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",_e=Object.prototype.toString,et=Array.prototype.concat,tt=_(686),nt=_(7239)(),rt=function(st,ut,Ft,dt){if(ut in st){if(dt===!0){if(st[ut]===Ft)return}else if(typeof(gt=dt)!="function"||_e.call(gt)!=="[object Function]"||!dt())return}var gt;nt?tt(st,ut,Ft,!0):tt(st,ut,Ft)},it=function(st,ut){var Ft=arguments.length>2?arguments[2]:{},dt=j(ut);$&&(dt=et.call(dt,Object.getOwnPropertySymbols(ut)));for(var gt=0;gt{var j,$=_(9903),_e=_(9336);try{j=[].__proto__===Array.prototype}catch(rt){if(!rt||typeof rt!="object"||!("code"in rt)||rt.code!=="ERR_PROTO_ACCESS")throw rt}var et=!!j&&_e&&_e(Object.prototype,"__proto__"),tt=Object,nt=tt.getPrototypeOf;o.exports=et&&typeof et.get=="function"?$([et.get]):typeof nt=="function"&&function(rt){return nt(rt==null?rt:tt(rt))}},2078:(o,s,_)=>{const j=_(5365),$=_(5757),_e=(et,tt,nt)=>({from:_e,EnvVarError:_(5757),get:function(rt){if(!rt)return et;if(arguments.length>1)throw new $("It looks like you passed more than one argument to env.get(). Since env-var@6.0.0 this is no longer supported. To set a default value use env.get(TARGET).default(DEFAULT)");return j(et,rt,tt||{},nt||function(){})},accessors:_(7350),logger:_(7869)(console.log,et.NODE_ENV)});o.exports=_e(function(){try{return process.env}catch{return{}}}())},2555:(o,s,_)=>{const j=_(6261);o.exports=function($,_e){return _e=_e||",",$.length?j($).split(_e).filter(Boolean):[]}},7808:o=>{o.exports=function(s){const _=s.toLowerCase();if(_!=="false"&&_!=="true")throw new Error('should be either "true", "false", "TRUE", or "FALSE"');return _!=="false"}},3576:o=>{o.exports=function(s){const _=s.toLowerCase();if(["false","0","true","1"].indexOf(_)===-1)throw new Error('should be either "true", "false", "TRUE", "FALSE", 1, or 0');return!(_==="0"||_==="false")}},349:(o,s,_)=>{const j=_(6261),$=/^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\u0001-\u0008\u000b\u000c\u000e-\u001f\u0021\u0023-\u005b\u005d-\u007f]|\\[\u0001-\u0009\u000b\u000c\u000e-\u007f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9]))\.){3}(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9])|[a-z0-9-]*[a-z0-9]:(?:[\u0001-\u0008\u000b\u000c\u000e-\u001f\u0021-\u005a\u0053-\u007f]|\\[\u0001-\u0009\u000b\u000c\u000e-\u007f])+)\])$/;o.exports=function(_e){const et=j(_e);if(!$.test(et))throw new Error("should be a valid email address");return et}},129:(o,s,_)=>{const j=_(6261);o.exports=function($,_e){const et=j($);if(_e.indexOf(et)<0)throw new Error(`should be one of [${_e.join(", ")}]`);return et}},2222:(o,s,_)=>{const j=_(5384);o.exports=function($){const _e=j($);if(_e>0)throw new Error("should be a negative float");return _e}},3674:(o,s,_)=>{const j=_(5384);o.exports=function($){const _e=j($);if(_e<0)throw new Error("should be a positive float");return _e}},5384:o=>{o.exports=function(s){const _=parseFloat(s);if(isNaN(_)||isNaN(s))throw new Error("should be a valid float");return _}},7350:(o,s,_)=>{o.exports={asArray:_(2555),asSet:_(7374),asBoolStrict:_(7808),asBool:_(3576),asPortNumber:_(4647),asEnum:_(129),asFloatNegative:_(2222),asFloatPositive:_(3674),asFloat:_(5384),asIntNegative:_(8455),asIntPositive:_(879),asInt:_(9799),asJsonArray:_(9974),asJsonObject:_(8124),asJson:_(3566),asRegExp:_(1045),asString:_(6261),asUrlObject:_(6912),asUrlString:_(5549),asEmailString:_(349)}},8455:(o,s,_)=>{const j=_(9799);o.exports=function($){const _e=j($);if(_e>0)throw new Error("should be a negative integer");return _e}},879:(o,s,_)=>{const j=_(9799);o.exports=function($){const _e=j($);if(_e<0)throw new Error("should be a positive integer");return _e}},9799:o=>{o.exports=function(s){const _=parseInt(s,10);if(isNaN(_)||_.toString(10)!==s)throw new Error("should be a valid integer");return _}},9974:(o,s,_)=>{const j=_(3566);o.exports=function($){var _e=j($);if(!Array.isArray(_e))throw new Error("should be a parseable JSON Array");return _e}},8124:(o,s,_)=>{const j=_(3566);o.exports=function($){var _e=j($);if(Array.isArray(_e))throw new Error("should be a parseable JSON Object");return _e}},3566:o=>{o.exports=function(s){try{return JSON.parse(s)}catch{throw new Error("should be valid (parseable) JSON")}}},4647:(o,s,_)=>{const j=_(879);o.exports=function($){var _e=j($);if(_e>65535)throw new Error("cannot assign a port number greater than 65535");return _e}},1045:o=>{o.exports=function(s,_){try{RegExp(void 0,_)}catch{throw new Error("invalid regexp flags")}try{return new RegExp(s,_)}catch{throw new Error("should be a valid regexp")}}},7374:(o,s,_)=>{const j=_(2555);o.exports=function($,_e){return $.length?new Set(j($,_e)):new Set}},6261:o=>{o.exports=function(s){return s}},6912:(o,s,_)=>{const j=_(6261);o.exports=function($){const _e=j($);try{return new URL(_e)}catch{throw new Error("should be a valid URL")}}},5549:(o,s,_)=>{const j=_(6912);o.exports=function($){return j($).toString()}},5757:o=>{class s extends Error{constructor(j,...$){super("env-var: "+j,...$),Error.captureStackTrace&&Error.captureStackTrace(this,s),this.name="EnvVarError"}}o.exports=s},7869:o=>{o.exports=function(s,_){return function(j,$){_&&_.match(/prod|production/)||s(`env-var (${j}): ${$}`)}}},5365:(o,s,_)=>{const j=_(5757),$=/^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$/;o.exports=function(_e,et,tt,nt){let rt,it,st=!1,ut=!1;const Ft=_(7350);function dt(ht){nt(et,ht)}function gt(ht,ft){let pt=`"${et}" ${ft}`;throw ht&&(pt=""+pt),it&&(pt=`${pt}. An example of a valid value would be: ${it}`),new j(pt)}const Ut={convertFromBase64:function(){return dt("marking for base64 conversion"),st=!0,Ut},default:function(ht){if(typeof ht=="number")rt=ht.toString();else if(Array.isArray(ht)||typeof ht=="object"&&ht!==null)rt=JSON.stringify(ht);else{if(typeof ht!="string")throw new j("values passed to default() must be of Number, String, Array, or Object type");rt=ht}return dt(`setting default value to "${rt}"`),Ut},required:function(ht){return ht===void 0?(dt("marked as required"),ut=!0):(dt("setting required flag to "+ht),ut=ht),Ut},example:function(ht){return it=ht,Ut}};return Object.entries({...Ft,...tt}).forEach(([ht,ft])=>{Ut[ht]=function(pt){return function(){let Rt=_e[et];if(dt(`will be read from the environment using "${pt.name}" accessor`),Rt===void 0)if(rt===void 0&&ut)dt("was not found in the environment, but is required to be set"),gt(void 0,"is a required variable, but it was not set");else{if(rt===void 0)return void dt("was not found in the environment, but is not required. returning undefined");dt(`was not found in the environment, parsing default value "${rt}" instead`),Rt=rt}ut&&(dt("verifying variable value is not an empty string"),Rt.trim().length===0&>(void 0,"is a required variable, but its value was empty")),st&&(dt("verifying variable is a valid base64 string"),Rt.match($)||gt(Rt,"should be a valid base64 string if using convertFromBase64"),dt("converting from base64 to utf8 string"),Rt=Buffer.from(Rt,"base64").toString());const Qt=[Rt].concat(Array.prototype.slice.call(arguments));try{dt(`passing value "${Rt}" to "${pt.name}" accessor`);const Nt=pt.apply(pt,Qt);return dt("parsed successfully, returning "+Nt),Nt}catch(Nt){gt(Rt,Nt.message)}}}(ft)}),Ut}},4940:o=>{var s=Object.defineProperty||!1;if(s)try{s({},"a",{value:1})}catch{s=!1}o.exports=s},9110:o=>{o.exports=EvalError},9838:o=>{o.exports=Error},1155:o=>{o.exports=RangeError},4943:o=>{o.exports=ReferenceError},5731:o=>{o.exports=SyntaxError},3468:o=>{o.exports=TypeError},2140:o=>{o.exports=URIError},9629:o=>{o.exports=Object},46:o=>{var s,_=typeof Reflect=="object"?Reflect:null,j=_&&typeof _.apply=="function"?_.apply:function(Ut,ht,ft){return Function.prototype.apply.call(Ut,ht,ft)};s=_&&typeof _.ownKeys=="function"?_.ownKeys:Object.getOwnPropertySymbols?function(Ut){return Object.getOwnPropertyNames(Ut).concat(Object.getOwnPropertySymbols(Ut))}:function(Ut){return Object.getOwnPropertyNames(Ut)};var $=Number.isNaN||function(Ut){return Ut!=Ut};function _e(){_e.init.call(this)}o.exports=_e,o.exports.once=function(Ut,ht){return new Promise(function(ft,pt){function Rt(Nt){Ut.removeListener(ht,Qt),pt(Nt)}function Qt(){typeof Ut.removeListener=="function"&&Ut.removeListener("error",Rt),ft([].slice.call(arguments))}gt(Ut,ht,Qt,{once:!0}),ht!=="error"&&function(Nt,At,kt){typeof Nt.on=="function"&>(Nt,"error",At,kt)}(Ut,Rt,{once:!0})})},_e.EventEmitter=_e,_e.prototype._events=void 0,_e.prototype._eventsCount=0,_e.prototype._maxListeners=void 0;var et=10;function tt(Ut){if(typeof Ut!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof Ut)}function nt(Ut){return Ut._maxListeners===void 0?_e.defaultMaxListeners:Ut._maxListeners}function rt(Ut,ht,ft,pt){var Rt,Qt,Nt,At;if(tt(ft),(Qt=Ut._events)===void 0?(Qt=Ut._events=Object.create(null),Ut._eventsCount=0):(Qt.newListener!==void 0&&(Ut.emit("newListener",ht,ft.listener?ft.listener:ft),Qt=Ut._events),Nt=Qt[ht]),Nt===void 0)Nt=Qt[ht]=ft,++Ut._eventsCount;else if(typeof Nt=="function"?Nt=Qt[ht]=pt?[ft,Nt]:[Nt,ft]:pt?Nt.unshift(ft):Nt.push(ft),(Rt=nt(Ut))>0&&Nt.length>Rt&&!Nt.warned){Nt.warned=!0;var kt=new Error("Possible EventEmitter memory leak detected. "+Nt.length+" "+String(ht)+" listeners added. Use emitter.setMaxListeners() to increase limit");kt.name="MaxListenersExceededWarning",kt.emitter=Ut,kt.type=ht,kt.count=Nt.length,At=kt,console&&console.warn&&console.warn(At)}return Ut}function it(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function st(Ut,ht,ft){var pt={fired:!1,wrapFn:void 0,target:Ut,type:ht,listener:ft},Rt=it.bind(pt);return Rt.listener=ft,pt.wrapFn=Rt,Rt}function ut(Ut,ht,ft){var pt=Ut._events;if(pt===void 0)return[];var Rt=pt[ht];return Rt===void 0?[]:typeof Rt=="function"?ft?[Rt.listener||Rt]:[Rt]:ft?function(Qt){for(var Nt=new Array(Qt.length),At=0;At0&&(Qt=ht[0]),Qt instanceof Error)throw Qt;var Nt=new Error("Unhandled error."+(Qt?" ("+Qt.message+")":""));throw Nt.context=Qt,Nt}var At=Rt[Ut];if(At===void 0)return!1;if(typeof At=="function")j(At,this,ht);else{var kt=At.length,Bt=dt(At,kt);for(ft=0;ft=0;Qt--)if(ft[Qt]===ht||ft[Qt].listener===ht){Nt=ft[Qt].listener,Rt=Qt;break}if(Rt<0)return this;Rt===0?ft.shift():function(At,kt){for(;kt+1=0;pt--)this.removeListener(Ut,ht[pt]);return this},_e.prototype.listeners=function(Ut){return ut(this,Ut,!0)},_e.prototype.rawListeners=function(Ut){return ut(this,Ut,!1)},_e.listenerCount=function(Ut,ht){return typeof Ut.listenerCount=="function"?Ut.listenerCount(ht):Ft.call(Ut,ht)},_e.prototype.listenerCount=Ft,_e.prototype.eventNames=function(){return this._eventsCount>0?s(this._events):[]}},6075:o=>{o.exports=function(s,_){_||(_={}),typeof _=="function"&&(_={cmp:_});var j,$=typeof _.cycles=="boolean"&&_.cycles,_e=_.cmp&&(j=_.cmp,function(tt){return function(nt,rt){var it={key:nt,value:tt[nt]},st={key:rt,value:tt[rt]};return j(it,st)}}),et=[];return function tt(nt){if(nt&&nt.toJSON&&typeof nt.toJSON=="function"&&(nt=nt.toJSON()),nt!==void 0){if(typeof nt=="number")return isFinite(nt)?""+nt:"null";if(typeof nt!="object")return JSON.stringify(nt);var rt,it;if(Array.isArray(nt)){for(it="[",rt=0;rt=ft-1){var At=pt.subarray(0,Qt);if(Rt.push(String.fromCharCode.apply(null,At)),!Nt)return Rt.join("");Ut=Ut.subarray(ht),ht=0,Qt=0}var kt=Ut[ht++];if(!(128&kt))pt[Qt++]=kt;else if((224&kt)==192){var Bt=63&Ut[ht++];pt[Qt++]=(31&kt)<<6|Bt}else if((240&kt)==224){Bt=63&Ut[ht++];var jt=63&Ut[ht++];pt[Qt++]=(31&kt)<<12|Bt<<6|jt}else if((248&kt)==240){var vt=(7&kt)<<18|(Bt=63&Ut[ht++])<<12|(jt=63&Ut[ht++])<<6|63&Ut[ht++];vt>65535&&(vt-=65536,pt[Qt++]=vt>>>10&1023|55296,vt=56320|1023&vt),pt[Qt++]=vt}}}var _e="Failed to ",et=function(Ut,ht,ft){if(Ut)throw new Error("".concat(_e).concat(ht,": the '").concat(ft,"' option is unsupported."))},tt=typeof Buffer=="function"&&Buffer.from,nt=tt?function(Ut){return Buffer.from(Ut)}:function(Ut){for(var ht=0,ft=Ut.length,pt=0,Rt=Math.max(32,ft+(ft>>>1)+7),Qt=new Uint8Array(Rt>>>3<<3);ht=55296&&Nt<=56319){if(ht=55296&&Nt<=56319)continue}if(pt+4>Qt.length){Rt+=8,Rt=(Rt*=1+ht/Ut.length*2)>>>3<<3;var kt=new Uint8Array(Rt);kt.set(Qt),Qt=kt}if(4294967168&Nt){if(!(4294965248&Nt))Qt[pt++]=Nt>>>6&31|192;else if(!(4294901760&Nt))Qt[pt++]=Nt>>>12&15|224,Qt[pt++]=Nt>>>6&63|128;else{if(4292870144&Nt)continue;Qt[pt++]=Nt>>>18&7|240,Qt[pt++]=Nt>>>12&63|128,Qt[pt++]=Nt>>>6&63|128}Qt[pt++]=63&Nt|128}else Qt[pt++]=Nt}return Qt.slice?Qt.slice(0,pt):Qt.subarray(0,pt)};function rt(){this.encoding="utf-8"}rt.prototype.encode=function(Ut,ht){return et(ht&&ht.stream,"encode","stream"),nt(Ut)};var it=!tt&&typeof Blob=="function"&&typeof URL=="function"&&typeof URL.createObjectURL=="function",st=["utf-8","utf8","unicode-1-1-utf-8"],ut=$;tt?ut=function(Ut,ht){return(Ut instanceof Buffer?Ut:Buffer.from(Ut.buffer,Ut.byteOffset,Ut.byteLength)).toString(ht)}:it&&(ut=function(Ut){try{return function(ht){var ft;try{var pt=new Blob([ht],{type:"text/plain;charset=UTF-8"});ft=URL.createObjectURL(pt);var Rt=new XMLHttpRequest;return Rt.open("GET",ft,!1),Rt.send(),Rt.responseText}finally{ft&&URL.revokeObjectURL(ft)}}(Ut)}catch{return $(Ut)}});var Ft="construct 'TextDecoder'",dt="".concat(_e," ").concat(Ft,": the ");function gt(Ut,ht){if(et(ht&&ht.fatal,Ft,"fatal"),Ut=Ut||"utf-8",!(tt?Buffer.isEncoding(Ut):st.indexOf(Ut.toLowerCase())!==-1))throw new RangeError("".concat(dt," encoding label provided ('").concat(Ut,"') is invalid."));this.encoding=Ut,this.fatal=!1,this.ignoreBOM=!1}gt.prototype.decode=function(Ut,ht){var ft;return et(ht&&ht.stream,"decode","stream"),ft=Ut instanceof Uint8Array?Ut:Ut.buffer instanceof ArrayBuffer?new Uint8Array(Ut.buffer):new Uint8Array(Ut),ut(ft,this.encoding)},j.TextEncoder=j.TextEncoder||rt,j.TextDecoder=j.TextDecoder||gt})(typeof window<"u"?window:_.g!==void 0?_.g:this)},4798:(o,s,_)=>{_.r(s),_.d(s,{assign:()=>nt,default:()=>mt,defaultI18n:()=>ut,format:()=>jt,parse:()=>vt,setGlobalDateI18n:()=>dt,setGlobalDateMasks:()=>Bt});var j=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,$="[^\\s]+",_e=/\[([^]*?)\]/gm;function et(yt,Vt){for(var wt=[],Et=0,Jt=yt.length;Et-1?Et:null}};function nt(yt){for(var Vt=[],wt=1;wt3?0:(yt-yt%10!=10?1:0)*yt%10]}},Ft=nt({},ut),dt=function(yt){return Ft=nt(Ft,yt)},gt=function(yt){return yt.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},Ut=function(yt,Vt){for(Vt===void 0&&(Vt=2),yt=String(yt);yt.length0?"-":"+")+Ut(100*Math.floor(Math.abs(Vt)/60)+Math.abs(Vt)%60,4)},Z:function(yt){var Vt=yt.getTimezoneOffset();return(Vt>0?"-":"+")+Ut(Math.floor(Math.abs(Vt)/60),2)+":"+Ut(Math.abs(Vt)%60,2)}},ft=function(yt){return+yt-1},pt=[null,"\\d\\d?"],Rt=[null,$],Qt=["isPm",$,function(yt,Vt){var wt=yt.toLowerCase();return wt===Vt.amPm[0]?0:wt===Vt.amPm[1]?1:null}],Nt=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(yt){var Vt=(yt+"").match(/([+-]|\d\d)/gi);if(Vt){var wt=60*+Vt[1]+parseInt(Vt[2],10);return Vt[0]==="+"?wt:-wt}return 0}],At={D:["day","\\d\\d?"],DD:["day","\\d\\d"],Do:["day","\\d\\d?"+$,function(yt){return parseInt(yt,10)}],M:["month","\\d\\d?",ft],MM:["month","\\d\\d",ft],YY:["year","\\d\\d",function(yt){var Vt=+(""+new Date().getFullYear()).substr(0,2);return+(""+(+yt>68?Vt-1:Vt)+yt)}],h:["hour","\\d\\d?",void 0,"isPm"],hh:["hour","\\d\\d",void 0,"isPm"],H:["hour","\\d\\d?"],HH:["hour","\\d\\d"],m:["minute","\\d\\d?"],mm:["minute","\\d\\d"],s:["second","\\d\\d?"],ss:["second","\\d\\d"],YYYY:["year","\\d{4}"],S:["millisecond","\\d",function(yt){return 100*+yt}],SS:["millisecond","\\d\\d",function(yt){return 10*+yt}],SSS:["millisecond","\\d{3}"],d:pt,dd:pt,ddd:Rt,dddd:Rt,MMM:["month",$,tt("monthNamesShort")],MMMM:["month",$,tt("monthNames")],a:Qt,A:Qt,ZZ:Nt,Z:Nt},kt={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},Bt=function(yt){return nt(kt,yt)},jt=function(yt,Vt,wt){if(Vt===void 0&&(Vt=kt.default),wt===void 0&&(wt={}),typeof yt=="number"&&(yt=new Date(yt)),Object.prototype.toString.call(yt)!=="[object Date]"||isNaN(yt.getTime()))throw new Error("Invalid Date pass to format");var Et=[];Vt=(Vt=kt[Vt]||Vt).replace(_e,function(Pt,Yt){return Et.push(Yt),"@@@"});var Jt=nt(nt({},Ft),wt);return(Vt=Vt.replace(j,function(Pt){return ht[Pt](yt,Jt)})).replace(/@@@/g,function(){return Et.shift()})};function vt(yt,Vt,wt){if(wt===void 0&&(wt={}),typeof Vt!="string")throw new Error("Invalid format in fecha parse");if(Vt=kt[Vt]||Vt,yt.length>1e3)return null;var Et={year:new Date().getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},Jt=[],Pt=[],Yt=Vt.replace(_e,function(Bn,hn){return Pt.push(gt(hn)),"@@@"}),Mt={},zt={};Yt=gt(Yt).replace(j,function(Bn){var hn=At[Bn],En=hn[0],Cn=hn[1],Tt=hn[3];if(Mt[En])throw new Error("Invalid format. "+En+" specified twice in format");return Mt[En]=!0,Tt&&(zt[Tt]=!0),Jt.push(hn),"("+Cn+")"}),Object.keys(zt).forEach(function(Bn){if(!Mt[Bn])throw new Error("Invalid format. "+Bn+" is required in specified format")}),Yt=Yt.replace(/@@@/g,function(){return Pt.shift()});var qt=yt.match(new RegExp(Yt,"i"));if(!qt)return null;for(var Xt,xt=nt(nt({},Ft),wt),It=1;It11||Et.month<0||Et.day>31||Et.day<1||Et.hour>23||Et.hour<0||Et.minute>59||Et.minute<0||Et.second>59||Et.second<0)return null;return Xt}const mt={format:jt,parse:vt,defaultI18n:ut,setGlobalDateI18n:dt,setGlobalDateMasks:Bt}},9827:o=>{var s=Object.prototype.toString;o.exports=function(_){if(typeof _.displayName=="string"&&_.constructor.name)return _.displayName;if(typeof _.name=="string"&&_.name)return _.name;if(typeof _=="object"&&_.constructor&&typeof _.constructor.name=="string")return _.constructor.name;var j=_.toString(),$=s.call(_).slice(8,-1);return(j=$==="Function"?j.substring(j.indexOf("(")+1,j.indexOf(")")):$)||"anonymous"}},705:(o,s,_)=>{var j=_(9617),$=Object.prototype.toString,_e=Object.prototype.hasOwnProperty,et=function(rt,it,st){for(var ut=0,Ft=rt.length;ut=3&&(ut=st),$.call(rt)==="[object Array]"?et(rt,it,ut):typeof rt=="string"?tt(rt,it,ut):nt(rt,it,ut)}},8794:o=>{var s="Function.prototype.bind called on incompatible ",_=Object.prototype.toString,j=Math.max,$=function(tt,nt){for(var rt=[],it=0;it{var j=_(8794);o.exports=Function.prototype.bind||j},528:(o,s,_)=>{var j=_(9629),$=_(9838),_e=_(9110),et=_(1155),tt=_(4943),nt=_(5731),rt=_(3468),it=_(2140),st=_(8479),ut=_(8449),Ft=_(8129),dt=_(2387),gt=_(5865),Ut=_(1319),ht=_(6882),ft=Function,pt=function(Kt){try{return ft('"use strict"; return ('+Kt+").constructor;")()}catch{}},Rt=_(9336),Qt=_(4940),Nt=function(){throw new rt},At=Rt?function(){try{return Nt}catch{try{return Rt(arguments,"callee").get}catch{return Nt}}}():Nt,kt=_(3558)(),Bt=_(6369),jt=_(7345),vt=_(7859),mt=_(6095),yt=_(4531),Vt={},wt=typeof Uint8Array<"u"&&Bt?Bt(Uint8Array):void 0,Et={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?void 0:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?void 0:ArrayBuffer,"%ArrayIteratorPrototype%":kt&&Bt?Bt([][Symbol.iterator]()):void 0,"%AsyncFromSyncIteratorPrototype%":void 0,"%AsyncFunction%":Vt,"%AsyncGenerator%":Vt,"%AsyncGeneratorFunction%":Vt,"%AsyncIteratorPrototype%":Vt,"%Atomics%":typeof Atomics>"u"?void 0:Atomics,"%BigInt%":typeof BigInt>"u"?void 0:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?void 0:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?void 0:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?void 0:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":$,"%eval%":eval,"%EvalError%":_e,"%Float16Array%":typeof Float16Array>"u"?void 0:Float16Array,"%Float32Array%":typeof Float32Array>"u"?void 0:Float32Array,"%Float64Array%":typeof Float64Array>"u"?void 0:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?void 0:FinalizationRegistry,"%Function%":ft,"%GeneratorFunction%":Vt,"%Int8Array%":typeof Int8Array>"u"?void 0:Int8Array,"%Int16Array%":typeof Int16Array>"u"?void 0:Int16Array,"%Int32Array%":typeof Int32Array>"u"?void 0:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":kt&&Bt?Bt(Bt([][Symbol.iterator]())):void 0,"%JSON%":typeof JSON=="object"?JSON:void 0,"%Map%":typeof Map>"u"?void 0:Map,"%MapIteratorPrototype%":typeof Map<"u"&&kt&&Bt?Bt(new Map()[Symbol.iterator]()):void 0,"%Math%":Math,"%Number%":Number,"%Object%":j,"%Object.getOwnPropertyDescriptor%":Rt,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?void 0:Promise,"%Proxy%":typeof Proxy>"u"?void 0:Proxy,"%RangeError%":et,"%ReferenceError%":tt,"%Reflect%":typeof Reflect>"u"?void 0:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?void 0:Set,"%SetIteratorPrototype%":typeof Set<"u"&&kt&&Bt?Bt(new Set()[Symbol.iterator]()):void 0,"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?void 0:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":kt&&Bt?Bt(""[Symbol.iterator]()):void 0,"%Symbol%":kt?Symbol:void 0,"%SyntaxError%":nt,"%ThrowTypeError%":At,"%TypedArray%":wt,"%TypeError%":rt,"%Uint8Array%":typeof Uint8Array>"u"?void 0:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?void 0:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?void 0:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?void 0:Uint32Array,"%URIError%":it,"%WeakMap%":typeof WeakMap>"u"?void 0:WeakMap,"%WeakRef%":typeof WeakRef>"u"?void 0:WeakRef,"%WeakSet%":typeof WeakSet>"u"?void 0:WeakSet,"%Function.prototype.call%":yt,"%Function.prototype.apply%":mt,"%Object.defineProperty%":Qt,"%Object.getPrototypeOf%":jt,"%Math.abs%":st,"%Math.floor%":ut,"%Math.max%":Ft,"%Math.min%":dt,"%Math.pow%":gt,"%Math.round%":Ut,"%Math.sign%":ht,"%Reflect.getPrototypeOf%":vt};if(Bt)try{null.error}catch(Kt){var Jt=Bt(Bt(Kt));Et["%Error.prototype%"]=Jt}var Pt={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},Yt=_(9138),Mt=_(8554),zt=Yt.call(yt,Array.prototype.concat),qt=Yt.call(mt,Array.prototype.splice),Xt=Yt.call(yt,String.prototype.replace),xt=Yt.call(yt,String.prototype.slice),It=Yt.call(yt,RegExp.prototype.exec),$t=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,un=/\\(\\)?/g,tn=function(Kt){var Un=xt(Kt,0,1),Bn=xt(Kt,-1);if(Un==="%"&&Bn!=="%")throw new nt("invalid intrinsic syntax, expected closing `%`");if(Bn==="%"&&Un!=="%")throw new nt("invalid intrinsic syntax, expected opening `%`");var hn=[];return Xt(Kt,$t,function(En,Cn,Tt,Zt){hn[hn.length]=Tt?Xt(Zt,un,"$1"):Cn||En}),hn},an=function(Kt,Un){var Bn,hn=Kt;if(Mt(Pt,hn)&&(hn="%"+(Bn=Pt[hn])[0]+"%"),Mt(Et,hn)){var En=Et[hn];if(En===Vt&&(En=function Cn(Tt){var Zt;if(Tt==="%AsyncFunction%")Zt=pt("async function () {}");else if(Tt==="%GeneratorFunction%")Zt=pt("function* () {}");else if(Tt==="%AsyncGeneratorFunction%")Zt=pt("async function* () {}");else if(Tt==="%AsyncGenerator%"){var Ot=Cn("%AsyncGeneratorFunction%");Ot&&(Zt=Ot.prototype)}else if(Tt==="%AsyncIteratorPrototype%"){var sn=Cn("%AsyncGenerator%");sn&&Bt&&(Zt=Bt(sn.prototype))}return Et[Tt]=Zt,Zt}(hn)),En===void 0&&!Un)throw new rt("intrinsic "+Kt+" exists, but is not available. Please file an issue!");return{alias:Bn,name:hn,value:En}}throw new nt("intrinsic "+Kt+" does not exist!")};o.exports=function(Kt,Un){if(typeof Kt!="string"||Kt.length===0)throw new rt("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof Un!="boolean")throw new rt('"allowMissing" argument must be a boolean');if(It(/^%?[^%]*%?$/,Kt)===null)throw new nt("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var Bn=tn(Kt),hn=Bn.length>0?Bn[0]:"",En=an("%"+hn+"%",Un),Cn=En.name,Tt=En.value,Zt=!1,Ot=En.alias;Ot&&(hn=Ot[0],qt(Bn,zt([0,1],Ot)));for(var sn=1,ln=!0;sn=Bn.length){var On=Rt(Tt,cn);Tt=(ln=!!On)&&"get"in On&&!("originalValue"in On.get)?On.get:Tt[cn]}else ln=Mt(Tt,cn),Tt=Tt[cn];ln&&!Zt&&(Et[Cn]=Tt)}}return Tt}},7345:(o,s,_)=>{var j=_(9629);o.exports=j.getPrototypeOf||null},7859:o=>{o.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null},6369:(o,s,_)=>{var j=_(7859),$=_(7345),_e=_(6423);o.exports=j?function(et){return j(et)}:$?function(et){if(!et||typeof et!="object"&&typeof et!="function")throw new TypeError("getProto: not an object");return $(et)}:_e?function(et){return _e(et)}:null},7186:function(__unused_webpack_module,exports,__webpack_require__){var $jscomp=$jscomp||{};$jscomp.scope={},$jscomp.findInternal=function(o,s,_){o instanceof String&&(o=String(o));for(var j=o.length,$=0;$=$}},"es6","es3"),$jscomp.polyfill("Array.prototype.find",function(o){return o||function(s,_){return $jscomp.findInternal(this,s,_).v}},"es6","es3"),$jscomp.polyfill("String.prototype.startsWith",function(o){return o||function(s,_){var j=$jscomp.checkStringArgs(this,s,"startsWith");s+="";var $=j.length,_e=s.length;_=Math.max(0,Math.min(0|_,j.length));for(var et=0;et<_e&&_<$;)if(j[_++]!=s[et++])return!1;return et>=_e}},"es6","es3"),$jscomp.polyfill("String.prototype.repeat",function(o){return o||function(s){var _=$jscomp.checkStringArgs(this,null,"repeat");if(0>s||1342177279>>=1)&&(_+=_);return j}},"es6","es3");var COMPILED=!0,goog=goog||{};goog.global=this||self,goog.exportPath_=function(o,s,_){o=o.split("."),_=_||goog.global,o[0]in _||_.execScript===void 0||_.execScript("var "+o[0]);for(var j;o.length&&(j=o.shift());)o.length||s===void 0?_=_[j]&&_[j]!==Object.prototype[j]?_[j]:_[j]={}:_[j]=s},goog.define=function(o,s){return s},goog.FEATURESET_YEAR=2012,goog.DEBUG=!0,goog.LOCALE="en",goog.TRUSTED_SITE=!0,goog.STRICT_MODE_COMPATIBLE=!1,goog.DISALLOW_TEST_ONLY_CODE=!goog.DEBUG,goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING=!1,goog.provide=function(o){if(goog.isInModuleLoader_())throw Error("goog.provide cannot be used within a module.");goog.constructNamespace_(o)},goog.constructNamespace_=function(o,s){goog.exportPath_(o,s)},goog.getScriptNonce=function(o){return o&&o!=goog.global?goog.getScriptNonce_(o.document):(goog.cspNonce_===null&&(goog.cspNonce_=goog.getScriptNonce_(goog.global.document)),goog.cspNonce_)},goog.NONCE_PATTERN_=/^[\w+/_-]+[=]{0,2}$/,goog.cspNonce_=null,goog.getScriptNonce_=function(o){return(o=o.querySelector&&o.querySelector("script[nonce]"))&&(o=o.nonce||o.getAttribute("nonce"))&&goog.NONCE_PATTERN_.test(o)?o:""},goog.VALID_MODULE_RE_=/^[a-zA-Z_$][a-zA-Z0-9._$]*$/,goog.module=function(o){if(typeof o!="string"||!o||o.search(goog.VALID_MODULE_RE_)==-1)throw Error("Invalid module identifier");if(!goog.isInGoogModuleLoader_())throw Error("Module "+o+" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.");if(goog.moduleLoaderState_.moduleName)throw Error("goog.module may only be called once per module.");goog.moduleLoaderState_.moduleName=o},goog.module.get=function(o){return goog.module.getInternal_(o)},goog.module.getInternal_=function(o){return null},goog.ModuleType={ES6:"es6",GOOG:"goog"},goog.moduleLoaderState_=null,goog.isInModuleLoader_=function(){return goog.isInGoogModuleLoader_()||goog.isInEs6ModuleLoader_()},goog.isInGoogModuleLoader_=function(){return!!goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.GOOG},goog.isInEs6ModuleLoader_=function(){if(goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.ES6)return!0;var o=goog.global.$jscomp;return!!o&&typeof o.getCurrentModulePath=="function"&&!!o.getCurrentModulePath()},goog.module.declareLegacyNamespace=function(){goog.moduleLoaderState_.declareLegacyNamespace=!0},goog.declareModuleId=function(o){if(goog.moduleLoaderState_)goog.moduleLoaderState_.moduleName=o;else{var s=goog.global.$jscomp;if(!s||typeof s.getCurrentModulePath!="function")throw Error('Module with namespace "'+o+'" has been loaded incorrectly.');s=s.require(s.getCurrentModulePath()),goog.loadedModules_[o]={exports:s,type:goog.ModuleType.ES6,moduleId:o}}},goog.setTestOnly=function(o){if(goog.DISALLOW_TEST_ONLY_CODE)throw o=o||"",Error("Importing test-only code into non-debug environment"+(o?": "+o:"."))},goog.forwardDeclare=function(o){},goog.getObjectByName=function(o,s){o=o.split("."),s=s||goog.global;for(var _=0;_>>0),goog.uidCounter_=0,goog.getHashCode=goog.getUid,goog.removeHashCode=goog.removeUid,goog.cloneObject=function(o){var s=goog.typeOf(o);if(s=="object"||s=="array"){if(typeof o.clone=="function")return o.clone();for(var _ in s=s=="array"?[]:{},o)s[_]=goog.cloneObject(o[_]);return s}return o},goog.bindNative_=function(o,s,_){return o.call.apply(o.bind,arguments)},goog.bindJs_=function(o,s,_){if(!o)throw Error();if(2_?Math.max(0,o.length+_):_,typeof o=="string")return typeof s!="string"||s.length!=1?-1:o.indexOf(s,_);for(;_(_=_??o.length-1)&&(_=Math.max(0,o.length+_)),typeof o=="string")return typeof s!="string"||s.length!=1?-1:o.lastIndexOf(s,_);for(;0<=_;_--)if(_ in o&&o[_]===s)return _;return-1},goog.array.forEach=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.forEach)?function(o,s,_){goog.asserts.assert(o.length!=null),Array.prototype.forEach.call(o,s,_)}:function(o,s,_){for(var j=o.length,$=typeof o=="string"?o.split(""):o,_e=0;_e(s=goog.array.findIndex(o,s,_))?null:typeof o=="string"?o.charAt(s):o[s]},goog.array.findIndex=function(o,s,_){for(var j=o.length,$=typeof o=="string"?o.split(""):o,_e=0;_e(s=goog.array.findIndexRight(o,s,_))?null:typeof o=="string"?o.charAt(s):o[s]},goog.array.findIndexRight=function(o,s,_){var j=o.length,$=typeof o=="string"?o.split(""):o;for(--j;0<=j;j--)if(j in $&&s.call(_,$[j],j,o))return j;return-1},goog.array.contains=function(o,s){return 0<=goog.array.indexOf(o,s)},goog.array.isEmpty=function(o){return o.length==0},goog.array.clear=function(o){if(!Array.isArray(o))for(var s=o.length-1;0<=s;s--)delete o[s];o.length=0},goog.array.insert=function(o,s){goog.array.contains(o,s)||o.push(s)},goog.array.insertAt=function(o,s,_){goog.array.splice(o,_,0,s)},goog.array.insertArrayAt=function(o,s,_){goog.partial(goog.array.splice,o,_,0).apply(null,s)},goog.array.insertBefore=function(o,s,_){var j;arguments.length==2||0>(j=goog.array.indexOf(o,_))?o.push(s):goog.array.insertAt(o,s,j)},goog.array.remove=function(o,s){var _;return(_=0<=(s=goog.array.indexOf(o,s)))&&goog.array.removeAt(o,s),_},goog.array.removeLast=function(o,s){return 0<=(s=goog.array.lastIndexOf(o,s))&&(goog.array.removeAt(o,s),!0)},goog.array.removeAt=function(o,s){return goog.asserts.assert(o.length!=null),Array.prototype.splice.call(o,s,1).length==1},goog.array.removeIf=function(o,s,_){return 0<=(s=goog.array.findIndex(o,s,_))&&(goog.array.removeAt(o,s),!0)},goog.array.removeAllIf=function(o,s,_){var j=0;return goog.array.forEachRight(o,function($,_e){s.call(_,$,_e,o)&&goog.array.removeAt(o,_e)&&j++}),j},goog.array.concat=function(o){return Array.prototype.concat.apply([],arguments)},goog.array.join=function(o){return Array.prototype.concat.apply([],arguments)},goog.array.toArray=function(o){var s=o.length;if(0=arguments.length?Array.prototype.slice.call(o,s):Array.prototype.slice.call(o,s,_)},goog.array.removeDuplicates=function(o,s,_){s=s||o;var j=function(nt){return goog.isObject(nt)?"o"+goog.getUid(nt):(typeof nt).charAt(0)+nt};_=_||j,j={};for(var $=0,_e=0;_e>>1),rt=_?s.call($,o[nt],nt,o):s(j,o[nt]);0s?1:o(_=goog.array.binarySearch(o,s,_))&&(goog.array.insertAt(o,s,-(_+1)),!0)},goog.array.binaryRemove=function(o,s,_){return 0<=(s=goog.array.binarySearch(o,s,_))&&goog.array.removeAt(o,s)},goog.array.bucket=function(o,s,_){for(var j={},$=0;$(_=_||1)*(_e-$))return[];if(0<_)for(o=$;o<_e;o+=_)j.push(o);else for(o=$;o>_e;o+=_)j.push(o);return j},goog.array.repeat=function(o,s){for(var _=[],j=0;js&&Array.prototype.push.apply(o,o.splice(0,-s))),o},goog.array.moveItem=function(o,s,_){goog.asserts.assert(0<=s&&s>=8),s[_++]=$}return s},goog.crypt.byteArrayToString=function(o){if(8192>=o.length)return String.fromCharCode.apply(null,o);for(var s="",_=0;_$?s[_++]=$:(2048>$?s[_++]=$>>6|192:((64512&$)==55296&&j+1>18|240,s[_++]=$>>12&63|128):s[_++]=$>>12|224,s[_++]=$>>6&63|128),s[_++]=63&$|128)}return s},goog.crypt.utf8ByteArrayToString=function(o){for(var s=[],_=0,j=0;_$)s[j++]=String.fromCharCode($);else if(191<$&&224>$){var _e=o[_++];s[j++]=String.fromCharCode((31&$)<<6|63&_e)}else if(239<$&&365>$){_e=o[_++];var et=o[_++];$=((7&$)<<18|(63&_e)<<12|(63&et)<<6|63&o[_++])-65536,s[j++]=String.fromCharCode(55296+($>>10)),s[j++]=String.fromCharCode(56320+(1023&$))}else _e=o[_++],et=o[_++],s[j++]=String.fromCharCode((15&$)<<12|(63&_e)<<6|63&et)}return s.join("")},goog.crypt.xorByteArray=function(o,s){goog.asserts.assert(o.length==s.length,"XOR array lengths must match");for(var _=[],j=0;j"}},goog.dom.asserts.getWindow_=function(o){try{var s=o&&o.ownerDocument,_=s&&(s.defaultView||s.parentWindow);if((_=_||goog.global).Element&&_.Location)return _}catch{}return null},goog.functions={},goog.functions.constant=function(o){return function(){return o}},goog.functions.FALSE=function(){return!1},goog.functions.TRUE=function(){return!0},goog.functions.NULL=function(){return null},goog.functions.identity=function(o,s){return o},goog.functions.error=function(o){return function(){throw Error(o)}},goog.functions.fail=function(o){return function(){throw o}},goog.functions.lock=function(o,s){return s=s||0,function(){return o.apply(this,Array.prototype.slice.call(arguments,0,s))}},goog.functions.nth=function(o){return function(){return arguments[o]}},goog.functions.partialRight=function(o,s){var _=Array.prototype.slice.call(arguments,1);return function(){var j=Array.prototype.slice.call(arguments);return j.push.apply(j,_),o.apply(this,j)}},goog.functions.withReturnValue=function(o,s){return goog.functions.sequence(o,goog.functions.constant(s))},goog.functions.equalTo=function(o,s){return function(_){return s?o==_:o===_}},goog.functions.compose=function(o,s){var _=arguments,j=_.length;return function(){var $;j&&($=_[j-1].apply(this,arguments));for(var _e=j-2;0<=_e;_e--)$=_[_e].call(this,$);return $}},goog.functions.sequence=function(o){var s=arguments,_=s.length;return function(){for(var j,$=0;$<_;$++)j=s[$].apply(this,arguments);return j}},goog.functions.and=function(o){var s=arguments,_=s.length;return function(){for(var j=0;j<_;j++)if(!s[j].apply(this,arguments))return!1;return!0}},goog.functions.or=function(o){var s=arguments,_=s.length;return function(){for(var j=0;j<_;j++)if(s[j].apply(this,arguments))return!0;return!1}},goog.functions.not=function(o){return function(){return!o.apply(this,arguments)}},goog.functions.create=function(o,s){var _=function(){};return _.prototype=o.prototype,_=new _,o.apply(_,Array.prototype.slice.call(arguments,1)),_},goog.functions.CACHE_RETURN_VALUE=!0,goog.functions.cacheReturnValue=function(o){var s,_=!1;return function(){return goog.functions.CACHE_RETURN_VALUE?(_||(s=o(),_=!0),s):o()}},goog.functions.once=function(o){var s=o;return function(){if(s){var _=s;s=null,_()}}},goog.functions.debounce=function(o,s,_){var j=0;return function($){goog.global.clearTimeout(j);var _e=arguments;j=goog.global.setTimeout(function(){o.apply(_,_e)},s)}},goog.functions.throttle=function(o,s,_){var j=0,$=!1,_e=[],et=function(){j=0,$&&($=!1,tt())},tt=function(){j=goog.global.setTimeout(et,s),o.apply(_,_e)};return function(nt){_e=arguments,j?$=!0:tt()}},goog.functions.rateLimit=function(o,s,_){var j=0,$=function(){j=0};return function(_e){j||(j=goog.global.setTimeout($,s),o.apply(_,arguments))}},goog.dom.HtmlElement=function(){},goog.dom.TagName=function(o){this.tagName_=o},goog.dom.TagName.prototype.toString=function(){return this.tagName_},goog.dom.TagName.A=new goog.dom.TagName("A"),goog.dom.TagName.ABBR=new goog.dom.TagName("ABBR"),goog.dom.TagName.ACRONYM=new goog.dom.TagName("ACRONYM"),goog.dom.TagName.ADDRESS=new goog.dom.TagName("ADDRESS"),goog.dom.TagName.APPLET=new goog.dom.TagName("APPLET"),goog.dom.TagName.AREA=new goog.dom.TagName("AREA"),goog.dom.TagName.ARTICLE=new goog.dom.TagName("ARTICLE"),goog.dom.TagName.ASIDE=new goog.dom.TagName("ASIDE"),goog.dom.TagName.AUDIO=new goog.dom.TagName("AUDIO"),goog.dom.TagName.B=new goog.dom.TagName("B"),goog.dom.TagName.BASE=new goog.dom.TagName("BASE"),goog.dom.TagName.BASEFONT=new goog.dom.TagName("BASEFONT"),goog.dom.TagName.BDI=new goog.dom.TagName("BDI"),goog.dom.TagName.BDO=new goog.dom.TagName("BDO"),goog.dom.TagName.BIG=new goog.dom.TagName("BIG"),goog.dom.TagName.BLOCKQUOTE=new goog.dom.TagName("BLOCKQUOTE"),goog.dom.TagName.BODY=new goog.dom.TagName("BODY"),goog.dom.TagName.BR=new goog.dom.TagName("BR"),goog.dom.TagName.BUTTON=new goog.dom.TagName("BUTTON"),goog.dom.TagName.CANVAS=new goog.dom.TagName("CANVAS"),goog.dom.TagName.CAPTION=new goog.dom.TagName("CAPTION"),goog.dom.TagName.CENTER=new goog.dom.TagName("CENTER"),goog.dom.TagName.CITE=new goog.dom.TagName("CITE"),goog.dom.TagName.CODE=new goog.dom.TagName("CODE"),goog.dom.TagName.COL=new goog.dom.TagName("COL"),goog.dom.TagName.COLGROUP=new goog.dom.TagName("COLGROUP"),goog.dom.TagName.COMMAND=new goog.dom.TagName("COMMAND"),goog.dom.TagName.DATA=new goog.dom.TagName("DATA"),goog.dom.TagName.DATALIST=new goog.dom.TagName("DATALIST"),goog.dom.TagName.DD=new goog.dom.TagName("DD"),goog.dom.TagName.DEL=new goog.dom.TagName("DEL"),goog.dom.TagName.DETAILS=new goog.dom.TagName("DETAILS"),goog.dom.TagName.DFN=new goog.dom.TagName("DFN"),goog.dom.TagName.DIALOG=new goog.dom.TagName("DIALOG"),goog.dom.TagName.DIR=new goog.dom.TagName("DIR"),goog.dom.TagName.DIV=new goog.dom.TagName("DIV"),goog.dom.TagName.DL=new goog.dom.TagName("DL"),goog.dom.TagName.DT=new goog.dom.TagName("DT"),goog.dom.TagName.EM=new goog.dom.TagName("EM"),goog.dom.TagName.EMBED=new goog.dom.TagName("EMBED"),goog.dom.TagName.FIELDSET=new goog.dom.TagName("FIELDSET"),goog.dom.TagName.FIGCAPTION=new goog.dom.TagName("FIGCAPTION"),goog.dom.TagName.FIGURE=new goog.dom.TagName("FIGURE"),goog.dom.TagName.FONT=new goog.dom.TagName("FONT"),goog.dom.TagName.FOOTER=new goog.dom.TagName("FOOTER"),goog.dom.TagName.FORM=new goog.dom.TagName("FORM"),goog.dom.TagName.FRAME=new goog.dom.TagName("FRAME"),goog.dom.TagName.FRAMESET=new goog.dom.TagName("FRAMESET"),goog.dom.TagName.H1=new goog.dom.TagName("H1"),goog.dom.TagName.H2=new goog.dom.TagName("H2"),goog.dom.TagName.H3=new goog.dom.TagName("H3"),goog.dom.TagName.H4=new goog.dom.TagName("H4"),goog.dom.TagName.H5=new goog.dom.TagName("H5"),goog.dom.TagName.H6=new goog.dom.TagName("H6"),goog.dom.TagName.HEAD=new goog.dom.TagName("HEAD"),goog.dom.TagName.HEADER=new goog.dom.TagName("HEADER"),goog.dom.TagName.HGROUP=new goog.dom.TagName("HGROUP"),goog.dom.TagName.HR=new goog.dom.TagName("HR"),goog.dom.TagName.HTML=new goog.dom.TagName("HTML"),goog.dom.TagName.I=new goog.dom.TagName("I"),goog.dom.TagName.IFRAME=new goog.dom.TagName("IFRAME"),goog.dom.TagName.IMG=new goog.dom.TagName("IMG"),goog.dom.TagName.INPUT=new goog.dom.TagName("INPUT"),goog.dom.TagName.INS=new goog.dom.TagName("INS"),goog.dom.TagName.ISINDEX=new goog.dom.TagName("ISINDEX"),goog.dom.TagName.KBD=new goog.dom.TagName("KBD"),goog.dom.TagName.KEYGEN=new goog.dom.TagName("KEYGEN"),goog.dom.TagName.LABEL=new goog.dom.TagName("LABEL"),goog.dom.TagName.LEGEND=new goog.dom.TagName("LEGEND"),goog.dom.TagName.LI=new goog.dom.TagName("LI"),goog.dom.TagName.LINK=new goog.dom.TagName("LINK"),goog.dom.TagName.MAIN=new goog.dom.TagName("MAIN"),goog.dom.TagName.MAP=new goog.dom.TagName("MAP"),goog.dom.TagName.MARK=new goog.dom.TagName("MARK"),goog.dom.TagName.MATH=new goog.dom.TagName("MATH"),goog.dom.TagName.MENU=new goog.dom.TagName("MENU"),goog.dom.TagName.MENUITEM=new goog.dom.TagName("MENUITEM"),goog.dom.TagName.META=new goog.dom.TagName("META"),goog.dom.TagName.METER=new goog.dom.TagName("METER"),goog.dom.TagName.NAV=new goog.dom.TagName("NAV"),goog.dom.TagName.NOFRAMES=new goog.dom.TagName("NOFRAMES"),goog.dom.TagName.NOSCRIPT=new goog.dom.TagName("NOSCRIPT"),goog.dom.TagName.OBJECT=new goog.dom.TagName("OBJECT"),goog.dom.TagName.OL=new goog.dom.TagName("OL"),goog.dom.TagName.OPTGROUP=new goog.dom.TagName("OPTGROUP"),goog.dom.TagName.OPTION=new goog.dom.TagName("OPTION"),goog.dom.TagName.OUTPUT=new goog.dom.TagName("OUTPUT"),goog.dom.TagName.P=new goog.dom.TagName("P"),goog.dom.TagName.PARAM=new goog.dom.TagName("PARAM"),goog.dom.TagName.PICTURE=new goog.dom.TagName("PICTURE"),goog.dom.TagName.PRE=new goog.dom.TagName("PRE"),goog.dom.TagName.PROGRESS=new goog.dom.TagName("PROGRESS"),goog.dom.TagName.Q=new goog.dom.TagName("Q"),goog.dom.TagName.RP=new goog.dom.TagName("RP"),goog.dom.TagName.RT=new goog.dom.TagName("RT"),goog.dom.TagName.RTC=new goog.dom.TagName("RTC"),goog.dom.TagName.RUBY=new goog.dom.TagName("RUBY"),goog.dom.TagName.S=new goog.dom.TagName("S"),goog.dom.TagName.SAMP=new goog.dom.TagName("SAMP"),goog.dom.TagName.SCRIPT=new goog.dom.TagName("SCRIPT"),goog.dom.TagName.SECTION=new goog.dom.TagName("SECTION"),goog.dom.TagName.SELECT=new goog.dom.TagName("SELECT"),goog.dom.TagName.SMALL=new goog.dom.TagName("SMALL"),goog.dom.TagName.SOURCE=new goog.dom.TagName("SOURCE"),goog.dom.TagName.SPAN=new goog.dom.TagName("SPAN"),goog.dom.TagName.STRIKE=new goog.dom.TagName("STRIKE"),goog.dom.TagName.STRONG=new goog.dom.TagName("STRONG"),goog.dom.TagName.STYLE=new goog.dom.TagName("STYLE"),goog.dom.TagName.SUB=new goog.dom.TagName("SUB"),goog.dom.TagName.SUMMARY=new goog.dom.TagName("SUMMARY"),goog.dom.TagName.SUP=new goog.dom.TagName("SUP"),goog.dom.TagName.SVG=new goog.dom.TagName("SVG"),goog.dom.TagName.TABLE=new goog.dom.TagName("TABLE"),goog.dom.TagName.TBODY=new goog.dom.TagName("TBODY"),goog.dom.TagName.TD=new goog.dom.TagName("TD"),goog.dom.TagName.TEMPLATE=new goog.dom.TagName("TEMPLATE"),goog.dom.TagName.TEXTAREA=new goog.dom.TagName("TEXTAREA"),goog.dom.TagName.TFOOT=new goog.dom.TagName("TFOOT"),goog.dom.TagName.TH=new goog.dom.TagName("TH"),goog.dom.TagName.THEAD=new goog.dom.TagName("THEAD"),goog.dom.TagName.TIME=new goog.dom.TagName("TIME"),goog.dom.TagName.TITLE=new goog.dom.TagName("TITLE"),goog.dom.TagName.TR=new goog.dom.TagName("TR"),goog.dom.TagName.TRACK=new goog.dom.TagName("TRACK"),goog.dom.TagName.TT=new goog.dom.TagName("TT"),goog.dom.TagName.U=new goog.dom.TagName("U"),goog.dom.TagName.UL=new goog.dom.TagName("UL"),goog.dom.TagName.VAR=new goog.dom.TagName("VAR"),goog.dom.TagName.VIDEO=new goog.dom.TagName("VIDEO"),goog.dom.TagName.WBR=new goog.dom.TagName("WBR"),goog.dom.tags={},goog.dom.tags.VOID_TAGS_={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},goog.dom.tags.isVoidTag=function(o){return goog.dom.tags.VOID_TAGS_[o]===!0},goog.html={},goog.html.trustedtypes={},goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY=goog.TRUSTED_TYPES_POLICY_NAME?goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME+"#html"):null,goog.string={},goog.string.TypedString=function(){},goog.string.Const=function(o,s){this.stringConstValueWithSecurityContract__googStringSecurityPrivate_=o===goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_&&s||"",this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_=goog.string.Const.TYPE_MARKER_},goog.string.Const.prototype.implementsGoogStringTypedString=!0,goog.string.Const.prototype.getTypedStringValue=function(){return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_},goog.DEBUG&&(goog.string.Const.prototype.toString=function(){return"Const{"+this.stringConstValueWithSecurityContract__googStringSecurityPrivate_+"}"}),goog.string.Const.unwrap=function(o){return o instanceof goog.string.Const&&o.constructor===goog.string.Const&&o.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_===goog.string.Const.TYPE_MARKER_?o.stringConstValueWithSecurityContract__googStringSecurityPrivate_:(goog.asserts.fail("expected object of type Const, got '"+o+"'"),"type_error:Const")},goog.string.Const.from=function(o){return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_,o)},goog.string.Const.TYPE_MARKER_={},goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_={},goog.string.Const.EMPTY=goog.string.Const.from(""),goog.html.SafeScript=function(){this.privateDoNotAccessOrElseSafeScriptWrappedValue_="",this.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_},goog.html.SafeScript.prototype.implementsGoogStringTypedString=!0,goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_={},goog.html.SafeScript.fromConstant=function(o){return(o=goog.string.Const.unwrap(o)).length===0?goog.html.SafeScript.EMPTY:goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeScript.fromConstantAndArgs=function(o,s){for(var _=[],j=1;jo?goog.i18n.bidi.Dir.RTL:s?null:goog.i18n.bidi.Dir.NEUTRAL:o==null?null:o?goog.i18n.bidi.Dir.RTL:goog.i18n.bidi.Dir.LTR},goog.i18n.bidi.ltrChars_="A-Za-zÀ-ÖØ-öø-ʸ̀-֐ऀ-῿‎Ⰰ-\uD801\uD804-\uD839\uD83C-\uDBFF豈-﬜︀-﹯﻽-￿",goog.i18n.bidi.rtlChars_="֑-ۯۺ-ࣿ‏\uD802-\uD803\uD83A-\uD83Bיִ-﷿ﹰ-ﻼ",goog.i18n.bidi.htmlSkipReg_=/<[^>]*>|&[^;]+;/g,goog.i18n.bidi.stripHtmlIfNeeded_=function(o,s){return s?o.replace(goog.i18n.bidi.htmlSkipReg_,""):o},goog.i18n.bidi.rtlCharReg_=new RegExp("["+goog.i18n.bidi.rtlChars_+"]"),goog.i18n.bidi.ltrCharReg_=new RegExp("["+goog.i18n.bidi.ltrChars_+"]"),goog.i18n.bidi.hasAnyRtl=function(o,s){return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.hasRtlChar=goog.i18n.bidi.hasAnyRtl,goog.i18n.bidi.hasAnyLtr=function(o,s){return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.ltrRe_=new RegExp("^["+goog.i18n.bidi.ltrChars_+"]"),goog.i18n.bidi.rtlRe_=new RegExp("^["+goog.i18n.bidi.rtlChars_+"]"),goog.i18n.bidi.isRtlChar=function(o){return goog.i18n.bidi.rtlRe_.test(o)},goog.i18n.bidi.isLtrChar=function(o){return goog.i18n.bidi.ltrRe_.test(o)},goog.i18n.bidi.isNeutralChar=function(o){return!goog.i18n.bidi.isLtrChar(o)&&!goog.i18n.bidi.isRtlChar(o)},goog.i18n.bidi.ltrDirCheckRe_=new RegExp("^[^"+goog.i18n.bidi.rtlChars_+"]*["+goog.i18n.bidi.ltrChars_+"]"),goog.i18n.bidi.rtlDirCheckRe_=new RegExp("^[^"+goog.i18n.bidi.ltrChars_+"]*["+goog.i18n.bidi.rtlChars_+"]"),goog.i18n.bidi.startsWithRtl=function(o,s){return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.isRtlText=goog.i18n.bidi.startsWithRtl,goog.i18n.bidi.startsWithLtr=function(o,s){return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.isLtrText=goog.i18n.bidi.startsWithLtr,goog.i18n.bidi.isRequiredLtrRe_=/^http:\/\/.*/,goog.i18n.bidi.isNeutralText=function(o,s){return o=goog.i18n.bidi.stripHtmlIfNeeded_(o,s),goog.i18n.bidi.isRequiredLtrRe_.test(o)||!goog.i18n.bidi.hasAnyLtr(o)&&!goog.i18n.bidi.hasAnyRtl(o)},goog.i18n.bidi.ltrExitDirCheckRe_=new RegExp("["+goog.i18n.bidi.ltrChars_+"][^"+goog.i18n.bidi.rtlChars_+"]*$"),goog.i18n.bidi.rtlExitDirCheckRe_=new RegExp("["+goog.i18n.bidi.rtlChars_+"][^"+goog.i18n.bidi.ltrChars_+"]*$"),goog.i18n.bidi.endsWithLtr=function(o,s){return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.isLtrExitText=goog.i18n.bidi.endsWithLtr,goog.i18n.bidi.endsWithRtl=function(o,s){return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.isRtlExitText=goog.i18n.bidi.endsWithRtl,goog.i18n.bidi.rtlLocalesRe_=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i,goog.i18n.bidi.isRtlLanguage=function(o){return goog.i18n.bidi.rtlLocalesRe_.test(o)},goog.i18n.bidi.bracketGuardTextRe_=/(\(.*?\)+)|(\[.*?\]+)|(\{.*?\}+)|(<.*?>+)/g,goog.i18n.bidi.guardBracketInText=function(o,s){return s=(s===void 0?goog.i18n.bidi.hasAnyRtl(o):s)?goog.i18n.bidi.Format.RLM:goog.i18n.bidi.Format.LRM,o.replace(goog.i18n.bidi.bracketGuardTextRe_,s+"$&"+s)},goog.i18n.bidi.enforceRtlInHtml=function(o){return o.charAt(0)=="<"?o.replace(/<\w+/,"$& dir=rtl"):` +`+o+""},goog.i18n.bidi.enforceRtlInText=function(o){return goog.i18n.bidi.Format.RLE+o+goog.i18n.bidi.Format.PDF},goog.i18n.bidi.enforceLtrInHtml=function(o){return o.charAt(0)=="<"?o.replace(/<\w+/,"$& dir=ltr"):` +`+o+""},goog.i18n.bidi.enforceLtrInText=function(o){return goog.i18n.bidi.Format.LRE+o+goog.i18n.bidi.Format.PDF},goog.i18n.bidi.dimensionsRe_=/:\s*([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)/g,goog.i18n.bidi.leftRe_=/left/gi,goog.i18n.bidi.rightRe_=/right/gi,goog.i18n.bidi.tempRe_=/%%%%/g,goog.i18n.bidi.mirrorCSS=function(o){return o.replace(goog.i18n.bidi.dimensionsRe_,":$1 $4 $3 $2").replace(goog.i18n.bidi.leftRe_,"%%%%").replace(goog.i18n.bidi.rightRe_,goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_,goog.i18n.bidi.RIGHT)},goog.i18n.bidi.doubleQuoteSubstituteRe_=/([\u0591-\u05f2])"/g,goog.i18n.bidi.singleQuoteSubstituteRe_=/([\u0591-\u05f2])'/g,goog.i18n.bidi.normalizeHebrewQuote=function(o){return o.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_,"$1״").replace(goog.i18n.bidi.singleQuoteSubstituteRe_,"$1׳")},goog.i18n.bidi.wordSeparatorRe_=/\s+/,goog.i18n.bidi.hasNumeralsRe_=/[\d\u06f0-\u06f9]/,goog.i18n.bidi.rtlDetectionThreshold_=.4,goog.i18n.bidi.estimateDirection=function(o,s){var _=0,j=0,$=!1;for(o=goog.i18n.bidi.stripHtmlIfNeeded_(o,s).split(goog.i18n.bidi.wordSeparatorRe_),s=0;sgoog.i18n.bidi.rtlDetectionThreshold_?goog.i18n.bidi.Dir.RTL:goog.i18n.bidi.Dir.LTR},goog.i18n.bidi.detectRtlDirectionality=function(o,s){return goog.i18n.bidi.estimateDirection(o,s)==goog.i18n.bidi.Dir.RTL},goog.i18n.bidi.setElementDirAndAlign=function(o,s){o&&(s=goog.i18n.bidi.toDir(s))&&(o.style.textAlign=s==goog.i18n.bidi.Dir.RTL?goog.i18n.bidi.RIGHT:goog.i18n.bidi.LEFT,o.dir=s==goog.i18n.bidi.Dir.RTL?"rtl":"ltr")},goog.i18n.bidi.setElementDirByTextDirectionality=function(o,s){switch(goog.i18n.bidi.estimateDirection(s)){case goog.i18n.bidi.Dir.LTR:o.dir="ltr";break;case goog.i18n.bidi.Dir.RTL:o.dir="rtl";break;default:o.removeAttribute("dir")}},goog.i18n.bidi.DirectionalString=function(){},goog.html.TrustedResourceUrl=function(o,s){this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_=o===goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_&&s||"",this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_},goog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString=!0,goog.html.TrustedResourceUrl.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString()},goog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString=!0,goog.html.TrustedResourceUrl.prototype.getDirection=function(){return goog.i18n.bidi.Dir.LTR},goog.html.TrustedResourceUrl.prototype.cloneWithParams=function(o,s){var _=goog.html.TrustedResourceUrl.unwrap(this),j=(_=goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(_))[3]||"";return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(_[1]+goog.html.TrustedResourceUrl.stringifyParams_("?",_[2]||"",o)+goog.html.TrustedResourceUrl.stringifyParams_("#",j,s))},goog.DEBUG&&(goog.html.TrustedResourceUrl.prototype.toString=function(){return"TrustedResourceUrl{"+this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_+"}"}),goog.html.TrustedResourceUrl.unwrap=function(o){return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(o).toString()},goog.html.TrustedResourceUrl.unwrapTrustedScriptURL=function(o){return o instanceof goog.html.TrustedResourceUrl&&o.constructor===goog.html.TrustedResourceUrl&&o.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_?o.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_:(goog.asserts.fail("expected object of type TrustedResourceUrl, got '"+o+"' of type "+goog.typeOf(o)),"type_error:TrustedResourceUrl")},goog.html.TrustedResourceUrl.format=function(o,s){var _=goog.string.Const.unwrap(o);if(!goog.html.TrustedResourceUrl.BASE_URL_.test(_))throw Error("Invalid TrustedResourceUrl format: "+_);return o=_.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_,function(j,$){if(!Object.prototype.hasOwnProperty.call(s,$))throw Error('Found marker, "'+$+'", in format string, "'+_+'", but no valid label mapping found in args: '+JSON.stringify(s));return(j=s[$])instanceof goog.string.Const?goog.string.Const.unwrap(j):encodeURIComponent(String(j))}),goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.TrustedResourceUrl.FORMAT_MARKER_=/%{(\w+)}/g,goog.html.TrustedResourceUrl.BASE_URL_=/^((https:)?\/\/[0-9a-z.:[\]-]+\/|\/[^/\\]|[^:/\\%]+\/|[^:/\\%]*[?#]|about:blank#)/i,goog.html.TrustedResourceUrl.URL_PARAM_PARSER_=/^([^?#]*)(\?[^#]*)?(#[\s\S]*)?/,goog.html.TrustedResourceUrl.formatWithParams=function(o,s,_,j){return goog.html.TrustedResourceUrl.format(o,s).cloneWithParams(_,j)},goog.html.TrustedResourceUrl.fromConstant=function(o){return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(o))},goog.html.TrustedResourceUrl.fromConstants=function(o){for(var s="",_=0;_o.length?"&":"")+encodeURIComponent(j)+"="+encodeURIComponent(String(et)))}}return s},goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_={},goog.string.internal={},goog.string.internal.startsWith=function(o,s){return o.lastIndexOf(s,0)==0},goog.string.internal.endsWith=function(o,s){var _=o.length-s.length;return 0<=_&&o.indexOf(s,_)==_},goog.string.internal.caseInsensitiveStartsWith=function(o,s){return goog.string.internal.caseInsensitiveCompare(s,o.substr(0,s.length))==0},goog.string.internal.caseInsensitiveEndsWith=function(o,s){return goog.string.internal.caseInsensitiveCompare(s,o.substr(o.length-s.length,s.length))==0},goog.string.internal.caseInsensitiveEquals=function(o,s){return o.toLowerCase()==s.toLowerCase()},goog.string.internal.isEmptyOrWhitespace=function(o){return/^[\s\xa0]*$/.test(o)},goog.string.internal.trim=goog.TRUSTED_SITE&&String.prototype.trim?function(o){return o.trim()}:function(o){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(o)[1]},goog.string.internal.caseInsensitiveCompare=function(o,s){return(o=String(o).toLowerCase())<(s=String(s).toLowerCase())?-1:o==s?0:1},goog.string.internal.newLineToBr=function(o,s){return o.replace(/(\r\n|\r|\n)/g,s?"
":"
")},goog.string.internal.htmlEscape=function(o,s){if(s)o=o.replace(goog.string.internal.AMP_RE_,"&").replace(goog.string.internal.LT_RE_,"<").replace(goog.string.internal.GT_RE_,">").replace(goog.string.internal.QUOT_RE_,""").replace(goog.string.internal.SINGLE_QUOTE_RE_,"'").replace(goog.string.internal.NULL_RE_,"�");else{if(!goog.string.internal.ALL_RE_.test(o))return o;o.indexOf("&")!=-1&&(o=o.replace(goog.string.internal.AMP_RE_,"&")),o.indexOf("<")!=-1&&(o=o.replace(goog.string.internal.LT_RE_,"<")),o.indexOf(">")!=-1&&(o=o.replace(goog.string.internal.GT_RE_,">")),o.indexOf('"')!=-1&&(o=o.replace(goog.string.internal.QUOT_RE_,""")),o.indexOf("'")!=-1&&(o=o.replace(goog.string.internal.SINGLE_QUOTE_RE_,"'")),o.indexOf("\0")!=-1&&(o=o.replace(goog.string.internal.NULL_RE_,"�"))}return o},goog.string.internal.AMP_RE_=/&/g,goog.string.internal.LT_RE_=//g,goog.string.internal.QUOT_RE_=/"/g,goog.string.internal.SINGLE_QUOTE_RE_=/'/g,goog.string.internal.NULL_RE_=/\x00/g,goog.string.internal.ALL_RE_=/[\x00&<>"']/,goog.string.internal.whitespaceEscape=function(o,s){return goog.string.internal.newLineToBr(o.replace(/ /g,"  "),s)},goog.string.internal.contains=function(o,s){return o.indexOf(s)!=-1},goog.string.internal.caseInsensitiveContains=function(o,s){return goog.string.internal.contains(o.toLowerCase(),s.toLowerCase())},goog.string.internal.compareVersions=function(o,s){var _=0;o=goog.string.internal.trim(String(o)).split("."),s=goog.string.internal.trim(String(s)).split(".");for(var j=Math.max(o.length,s.length),$=0;_==0&&$s?1:0},goog.html.SafeUrl=function(o,s){this.privateDoNotAccessOrElseSafeUrlWrappedValue_=o===goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_&&s||"",this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_},goog.html.SafeUrl.INNOCUOUS_STRING="about:invalid#zClosurez",goog.html.SafeUrl.prototype.implementsGoogStringTypedString=!0,goog.html.SafeUrl.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString()},goog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString=!0,goog.html.SafeUrl.prototype.getDirection=function(){return goog.i18n.bidi.Dir.LTR},goog.DEBUG&&(goog.html.SafeUrl.prototype.toString=function(){return"SafeUrl{"+this.privateDoNotAccessOrElseSafeUrlWrappedValue_+"}"}),goog.html.SafeUrl.unwrap=function(o){return o instanceof goog.html.SafeUrl&&o.constructor===goog.html.SafeUrl&&o.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_?o.privateDoNotAccessOrElseSafeUrlWrappedValue_:(goog.asserts.fail("expected object of type SafeUrl, got '"+o+"' of type "+goog.typeOf(o)),"type_error:SafeUrl")},goog.html.SafeUrl.fromConstant=function(o){return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(o))},goog.html.SAFE_MIME_TYPE_PATTERN_=/^(?:audio\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-matroska|x-wav|wav|webm)|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\/csv|video\/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))(?:;\w+=(?:\w+|"[\w;,= ]+"))*$/i,goog.html.SafeUrl.isSafeMimeType=function(o){return goog.html.SAFE_MIME_TYPE_PATTERN_.test(o)},goog.html.SafeUrl.fromBlob=function(o){return o=goog.html.SafeUrl.isSafeMimeType(o.type)?goog.fs.url.createObjectUrl(o):goog.html.SafeUrl.INNOCUOUS_STRING,goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.fromMediaSource=function(o){return goog.asserts.assert("MediaSource"in goog.global,"No support for MediaSource"),o=o instanceof MediaSource?goog.fs.url.createObjectUrl(o):goog.html.SafeUrl.INNOCUOUS_STRING,goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.DATA_URL_PATTERN_=/^data:(.*);base64,[a-z0-9+\/]+=*$/i,goog.html.SafeUrl.fromDataUrl=function(o){var s=(o=o.replace(/(%0A|%0D)/g,"")).match(goog.html.DATA_URL_PATTERN_);return s=s&&goog.html.SafeUrl.isSafeMimeType(s[1]),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(s?o:goog.html.SafeUrl.INNOCUOUS_STRING)},goog.html.SafeUrl.fromTelUrl=function(o){return goog.string.internal.caseInsensitiveStartsWith(o,"tel:")||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SIP_URL_PATTERN_=/^sip[s]?:[+a-z0-9_.!$%&'*\/=^`{|}~-]+@([a-z0-9-]+\.)+[a-z0-9]{2,63}$/i,goog.html.SafeUrl.fromSipUrl=function(o){return goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(o))||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.fromFacebookMessengerUrl=function(o){return goog.string.internal.caseInsensitiveStartsWith(o,"fb-messenger://share")||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.fromWhatsAppUrl=function(o){return goog.string.internal.caseInsensitiveStartsWith(o,"whatsapp://send")||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.fromSmsUrl=function(o){return goog.string.internal.caseInsensitiveStartsWith(o,"sms:")&&goog.html.SafeUrl.isSmsUrlBodyValid_(o)||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.isSmsUrlBodyValid_=function(o){var s=o.indexOf("#");if(0+~[\]()=^$|]+$/.test(_))throw Error("Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|] and strings, got: "+o);if(!goog.html.SafeStyleSheet.hasBalancedBrackets_(_))throw Error("() and [] in selector must be balanced, got: "+o);return s instanceof goog.html.SafeStyle||(s=goog.html.SafeStyle.create(s)),o=o+"{"+goog.html.SafeStyle.unwrap(s).replace(/",null)},goog.html.SafeHtml.VALID_NAMES_IN_TAG_=/^[a-zA-Z0-9-]+$/,goog.html.SafeHtml.URL_ATTRIBUTES_={action:!0,cite:!0,data:!0,formaction:!0,href:!0,manifest:!0,poster:!0,src:!0},goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_={APPLET:!0,BASE:!0,EMBED:!0,IFRAME:!0,LINK:!0,MATH:!0,META:!0,OBJECT:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0},goog.html.SafeHtml.create=function(o,s,_){return goog.html.SafeHtml.verifyTagName(String(o)),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(o),s,_)},goog.html.SafeHtml.verifyTagName=function(o){if(!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(o))throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?"Invalid tag name <"+o+">.":"");if(o.toUpperCase()in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_)throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?"Tag name <"+o+"> is not allowed for SafeHtml.":"")},goog.html.SafeHtml.createIframe=function(o,s,_,j){o&&goog.html.TrustedResourceUrl.unwrap(o);var $={};return $.src=o||null,$.srcdoc=s&&goog.html.SafeHtml.unwrap(s),o=goog.html.SafeHtml.combineAttributes($,{sandbox:""},_),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",o,j)},goog.html.SafeHtml.createSandboxIframe=function(o,s,_,j){if(!goog.html.SafeHtml.canUseSandboxIframe())throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?"The browser does not support sandboxed iframes.":"");var $={};return $.src=o?goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(o)):null,$.srcdoc=s||null,$.sandbox="",o=goog.html.SafeHtml.combineAttributes($,{},_),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",o,j)},goog.html.SafeHtml.canUseSandboxIframe=function(){return goog.global.HTMLIFrameElement&&"sandbox"in goog.global.HTMLIFrameElement.prototype},goog.html.SafeHtml.createScriptSrc=function(o,s){return goog.html.TrustedResourceUrl.unwrap(o),o=goog.html.SafeHtml.combineAttributes({src:o},{},s),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("script",o)},goog.html.SafeHtml.createScript=function(o,s){for(var _ in s){var j=_.toLowerCase();if(j=="language"||j=="src"||j=="text"||j=="type")throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Cannot set "'+j+'" attribute':"")}for(_="",o=goog.array.concat(o),j=0;j does not allow content."),$+=">"):(j=goog.html.SafeHtml.concat(_),$+=">"+goog.html.SafeHtml.unwrap(j)+"",j=j.getDirection()),(o=s&&s.dir)&&(j=/^(ltr|rtl|auto)$/i.test(o)?goog.i18n.bidi.Dir.NEUTRAL:null),goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse($,j)},goog.html.SafeHtml.stringifyAttributes=function(o,s){var _="";if(s)for(var j in s){if(!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(j))throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Invalid attribute name "'+j+'".':"");var $=s[j];$!=null&&(_+=" "+goog.html.SafeHtml.getAttrNameAndValue_(o,j,$))}return _},goog.html.SafeHtml.combineAttributes=function(o,s,_){var j,$={};for(j in o)goog.asserts.assert(j.toLowerCase()==j,"Must be lower case"),$[j]=o[j];for(j in s)goog.asserts.assert(j.toLowerCase()==j,"Must be lower case"),$[j]=s[j];if(_)for(j in _){var _e=j.toLowerCase();if(_e in o)throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Cannot override "'+_e+'" attribute, got "'+j+'" with value "'+_[j]+'"':"");_e in s&&delete $[_e],$[j]=_[j]}return $},goog.html.SafeHtml.DOCTYPE_HTML=goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("",goog.i18n.bidi.Dir.NEUTRAL),goog.html.SafeHtml.EMPTY=goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("",goog.i18n.bidi.Dir.NEUTRAL),goog.html.SafeHtml.BR=goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("
",goog.i18n.bidi.Dir.NEUTRAL),goog.html.uncheckedconversions={},goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract=function(o,s,_){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(s,_||null)},goog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(s)},goog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(s)},goog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(s)},goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(s)},goog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(s)},goog.dom.safe={},goog.dom.safe.InsertAdjacentHtmlPosition={AFTERBEGIN:"afterbegin",AFTEREND:"afterend",BEFOREBEGIN:"beforebegin",BEFOREEND:"beforeend"},goog.dom.safe.insertAdjacentHtml=function(o,s,_){o.insertAdjacentHTML(s,goog.html.SafeHtml.unwrapTrustedHTML(_))},goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_={MATH:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0},goog.dom.safe.isInnerHtmlCleanupRecursive_=goog.functions.cacheReturnValue(function(){if(goog.DEBUG&&typeof document>"u")return!1;var o=document.createElement("div"),s=document.createElement("div");return s.appendChild(document.createElement("div")),o.appendChild(s),!(goog.DEBUG&&!o.firstChild)&&(s=o.firstChild.firstChild,o.innerHTML=goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY),!s.parentElement)}),goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse=function(o,s){if(goog.dom.safe.isInnerHtmlCleanupRecursive_())for(;o.lastChild;)o.removeChild(o.lastChild);o.innerHTML=goog.html.SafeHtml.unwrapTrustedHTML(s)},goog.dom.safe.setInnerHtml=function(o,s){if(goog.asserts.ENABLE_ASSERTS){var _=o.tagName.toUpperCase();if(goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[_])throw Error("goog.dom.safe.setInnerHtml cannot be used to set content of "+o.tagName+".")}goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(o,s)},goog.dom.safe.setOuterHtml=function(o,s){o.outerHTML=goog.html.SafeHtml.unwrapTrustedHTML(s)},goog.dom.safe.setFormElementAction=function(o,s){s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),goog.dom.asserts.assertIsHTMLFormElement(o).action=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setButtonFormAction=function(o,s){s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),goog.dom.asserts.assertIsHTMLButtonElement(o).formAction=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setInputFormAction=function(o,s){s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),goog.dom.asserts.assertIsHTMLInputElement(o).formAction=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setStyle=function(o,s){o.style.cssText=goog.html.SafeStyle.unwrap(s)},goog.dom.safe.documentWrite=function(o,s){o.write(goog.html.SafeHtml.unwrapTrustedHTML(s))},goog.dom.safe.setAnchorHref=function(o,s){goog.dom.asserts.assertIsHTMLAnchorElement(o),s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),o.href=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setImageSrc=function(o,s){if(goog.dom.asserts.assertIsHTMLImageElement(o),!(s instanceof goog.html.SafeUrl)){var _=/^data:image\//i.test(s);s=goog.html.SafeUrl.sanitizeAssertUnchanged(s,_)}o.src=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setAudioSrc=function(o,s){if(goog.dom.asserts.assertIsHTMLAudioElement(o),!(s instanceof goog.html.SafeUrl)){var _=/^data:audio\//i.test(s);s=goog.html.SafeUrl.sanitizeAssertUnchanged(s,_)}o.src=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setVideoSrc=function(o,s){if(goog.dom.asserts.assertIsHTMLVideoElement(o),!(s instanceof goog.html.SafeUrl)){var _=/^data:video\//i.test(s);s=goog.html.SafeUrl.sanitizeAssertUnchanged(s,_)}o.src=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setEmbedSrc=function(o,s){goog.dom.asserts.assertIsHTMLEmbedElement(o),o.src=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(s)},goog.dom.safe.setFrameSrc=function(o,s){goog.dom.asserts.assertIsHTMLFrameElement(o),o.src=goog.html.TrustedResourceUrl.unwrap(s)},goog.dom.safe.setIframeSrc=function(o,s){goog.dom.asserts.assertIsHTMLIFrameElement(o),o.src=goog.html.TrustedResourceUrl.unwrap(s)},goog.dom.safe.setIframeSrcdoc=function(o,s){goog.dom.asserts.assertIsHTMLIFrameElement(o),o.srcdoc=goog.html.SafeHtml.unwrapTrustedHTML(s)},goog.dom.safe.setLinkHrefAndRel=function(o,s,_){goog.dom.asserts.assertIsHTMLLinkElement(o),o.rel=_,goog.string.internal.caseInsensitiveContains(_,"stylesheet")?(goog.asserts.assert(s instanceof goog.html.TrustedResourceUrl,'URL must be TrustedResourceUrl because "rel" contains "stylesheet"'),o.href=goog.html.TrustedResourceUrl.unwrap(s)):o.href=s instanceof goog.html.TrustedResourceUrl?goog.html.TrustedResourceUrl.unwrap(s):s instanceof goog.html.SafeUrl?goog.html.SafeUrl.unwrap(s):goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitizeAssertUnchanged(s))},goog.dom.safe.setObjectData=function(o,s){goog.dom.asserts.assertIsHTMLObjectElement(o),o.data=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(s)},goog.dom.safe.setScriptSrc=function(o,s){goog.dom.asserts.assertIsHTMLScriptElement(o),o.src=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(s),(s=goog.getScriptNonce())&&o.setAttribute("nonce",s)},goog.dom.safe.setScriptContent=function(o,s){goog.dom.asserts.assertIsHTMLScriptElement(o),o.text=goog.html.SafeScript.unwrapTrustedScript(s),(s=goog.getScriptNonce())&&o.setAttribute("nonce",s)},goog.dom.safe.setLocationHref=function(o,s){goog.dom.asserts.assertIsLocation(o),s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),o.href=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.assignLocation=function(o,s){goog.dom.asserts.assertIsLocation(o),s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),o.assign(goog.html.SafeUrl.unwrap(s))},goog.dom.safe.replaceLocation=function(o,s){s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),o.replace(goog.html.SafeUrl.unwrap(s))},goog.dom.safe.openInWindow=function(o,s,_,j,$){return o=o instanceof goog.html.SafeUrl?o:goog.html.SafeUrl.sanitizeAssertUnchanged(o),s=s||goog.global,_=_ instanceof goog.string.Const?goog.string.Const.unwrap(_):_||"",s.open(goog.html.SafeUrl.unwrap(o),_,j,$)},goog.dom.safe.parseFromStringHtml=function(o,s){return goog.dom.safe.parseFromString(o,s,"text/html")},goog.dom.safe.parseFromString=function(o,s,_){return o.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(s),_)},goog.dom.safe.createImageFromBlob=function(o){if(!/^image\/.*/g.test(o.type))throw Error("goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.");var s=goog.global.URL.createObjectURL(o);return(o=new goog.global.Image).onload=function(){goog.global.URL.revokeObjectURL(s)},goog.dom.safe.setImageSrc(o,goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from("Image blob URL."),s)),o},goog.string.DETECT_DOUBLE_ESCAPING=!1,goog.string.FORCE_NON_DOM_HTML_UNESCAPING=!1,goog.string.Unicode={NBSP:" "},goog.string.startsWith=goog.string.internal.startsWith,goog.string.endsWith=goog.string.internal.endsWith,goog.string.caseInsensitiveStartsWith=goog.string.internal.caseInsensitiveStartsWith,goog.string.caseInsensitiveEndsWith=goog.string.internal.caseInsensitiveEndsWith,goog.string.caseInsensitiveEquals=goog.string.internal.caseInsensitiveEquals,goog.string.subs=function(o,s){for(var _=o.split("%s"),j="",$=Array.prototype.slice.call(arguments,1);$.length&&1<_.length;)j+=_.shift()+$.shift();return j+_.join("%s")},goog.string.collapseWhitespace=function(o){return o.replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")},goog.string.isEmptyOrWhitespace=goog.string.internal.isEmptyOrWhitespace,goog.string.isEmptyString=function(o){return o.length==0},goog.string.isEmpty=goog.string.isEmptyOrWhitespace,goog.string.isEmptyOrWhitespaceSafe=function(o){return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(o))},goog.string.isEmptySafe=goog.string.isEmptyOrWhitespaceSafe,goog.string.isBreakingWhitespace=function(o){return!/[^\t\n\r ]/.test(o)},goog.string.isAlpha=function(o){return!/[^a-zA-Z]/.test(o)},goog.string.isNumeric=function(o){return!/[^0-9]/.test(o)},goog.string.isAlphaNumeric=function(o){return!/[^a-zA-Z0-9]/.test(o)},goog.string.isSpace=function(o){return o==" "},goog.string.isUnicodeChar=function(o){return o.length==1&&" "<=o&&"~">=o||"€"<=o&&"�">=o},goog.string.stripNewlines=function(o){return o.replace(/(\r\n|\r|\n)+/g," ")},goog.string.canonicalizeNewlines=function(o){return o.replace(/(\r\n|\r|\n)/g,` +`)},goog.string.normalizeWhitespace=function(o){return o.replace(/\xa0|\s/g," ")},goog.string.normalizeSpaces=function(o){return o.replace(/\xa0|[ \t]+/g," ")},goog.string.collapseBreakingSpaces=function(o){return o.replace(/[\t\r\n ]+/g," ").replace(/^[\t\r\n ]+|[\t\r\n ]+$/g,"")},goog.string.trim=goog.string.internal.trim,goog.string.trimLeft=function(o){return o.replace(/^[\s\xa0]+/,"")},goog.string.trimRight=function(o){return o.replace(/[\s\xa0]+$/,"")},goog.string.caseInsensitiveCompare=goog.string.internal.caseInsensitiveCompare,goog.string.numberAwareCompare_=function(o,s,_){if(o==s)return 0;if(!o)return-1;if(!s)return 1;for(var j=o.toLowerCase().match(_),$=s.toLowerCase().match(_),_e=Math.min(j.length,$.length),et=0;et<_e;et++){_=j[et];var tt=$[et];if(_!=tt)return o=parseInt(_,10),!isNaN(o)&&(s=parseInt(tt,10),!isNaN(s)&&o-s)?o-s:_",""":'"'},j=s?s.createElement("div"):goog.global.document.createElement("div");return o.replace(goog.string.HTML_ENTITY_PATTERN_,function($,_e){var et=_[$];return et||(_e.charAt(0)=="#"&&(_e=+("0"+_e.substr(1)),isNaN(_e)||(et=String.fromCharCode(_e))),et||(goog.dom.safe.setInnerHtml(j,goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from("Single HTML entity."),$+" ")),et=j.firstChild.nodeValue.slice(0,-1)),_[$]=et)})},goog.string.unescapePureXmlEntities_=function(o){return o.replace(/&([^;]+);/g,function(s,_){switch(_){case"amp":return"&";case"lt":return"<";case"gt":return">";case"quot":return'"';default:return _.charAt(0)!="#"||(_=+("0"+_.substr(1)),isNaN(_))?s:String.fromCharCode(_)}})},goog.string.HTML_ENTITY_PATTERN_=/&([^;\s<&]+);?/g,goog.string.whitespaceEscape=function(o,s){return goog.string.newLineToBr(o.replace(/ /g,"  "),s)},goog.string.preserveSpaces=function(o){return o.replace(/(^|[\n ]) /g,"$1"+goog.string.Unicode.NBSP)},goog.string.stripQuotes=function(o,s){for(var _=s.length,j=0;j<_;j++){var $=_==1?s:s.charAt(j);if(o.charAt(0)==$&&o.charAt(o.length-1)==$)return o.substring(1,o.length-1)}return o},goog.string.truncate=function(o,s,_){return _&&(o=goog.string.unescapeEntities(o)),o.length>s&&(o=o.substring(0,s-3)+"..."),_&&(o=goog.string.htmlEscape(o)),o},goog.string.truncateMiddle=function(o,s,_,j){if(_&&(o=goog.string.unescapeEntities(o)),j&&o.length>s){j>s&&(j=s);var $=o.length-j;o=o.substring(0,s-j)+"..."+o.substring($)}else o.length>s&&(j=Math.floor(s/2),$=o.length-j,o=o.substring(0,j+s%2)+"..."+o.substring($));return _&&(o=goog.string.htmlEscape(o)),o},goog.string.specialEscapeChars_={"\0":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\x0B",'"':'\\"',"\\":"\\\\","<":"\\u003C"},goog.string.jsEscapeCache_={"'":"\\'"},goog.string.quote=function(o){o=String(o);for(var s=['"'],_=0;_$?j:goog.string.escapeChar(j))}return s.push('"'),s.join("")},goog.string.escapeString=function(o){for(var s=[],_=0;_s)var _=o;else 256>s?(_="\\x",(16>s||256s&&(_+="0")),_+=s.toString(16).toUpperCase();return goog.string.jsEscapeCache_[o]=_},goog.string.contains=goog.string.internal.contains,goog.string.caseInsensitiveContains=goog.string.internal.caseInsensitiveContains,goog.string.countOf=function(o,s){return o&&s?o.split(s).length-1:0},goog.string.removeAt=function(o,s,_){var j=o;return 0<=s&&s>>0;return s},goog.string.uniqueStringCounter_=2147483648*Math.random()|0,goog.string.createUniqueString=function(){return"goog_"+goog.string.uniqueStringCounter_++},goog.string.toNumber=function(o){var s=Number(o);return s==0&&goog.string.isEmptyOrWhitespace(o)?NaN:s},goog.string.isLowerCamelCase=function(o){return/^[a-z]+([A-Z][a-z]*)*$/.test(o)},goog.string.isUpperCamelCase=function(o){return/^([A-Z][a-z]*)+$/.test(o)},goog.string.toCamelCase=function(o){return String(o).replace(/\-([a-z])/g,function(s,_){return _.toUpperCase()})},goog.string.toSelectorCase=function(o){return String(o).replace(/([A-Z])/g,"-$1").toLowerCase()},goog.string.toTitleCase=function(o,s){return s=typeof s=="string"?goog.string.regExpEscape(s):"\\s",o.replace(new RegExp("(^"+(s?"|["+s+"]+":"")+")([a-z])","g"),function(_,j,$){return j+$.toUpperCase()})},goog.string.capitalize=function(o){return String(o.charAt(0)).toUpperCase()+String(o.substr(1)).toLowerCase()},goog.string.parseInt=function(o){return isFinite(o)&&(o=String(o)),typeof o=="string"?/^\s*-?0x/i.test(o)?parseInt(o,16):parseInt(o,10):NaN},goog.string.splitLimit=function(o,s,_){o=o.split(s);for(var j=[];0<_&&o.length;)j.push(o.shift()),_--;return o.length&&j.push(o.join(s)),j},goog.string.lastComponent=function(o,s){if(!s)return o;typeof s=="string"&&(s=[s]);for(var _=-1,j=0;j_&&(_=$)}return _==-1?o:o.slice(_+1)},goog.string.editDistance=function(o,s){var _=[],j=[];if(o==s)return 0;if(!o.length||!s.length)return Math.max(o.length,s.length);for(var $=0;$parseFloat(o)?String(s):o},goog.userAgent.getVersionRegexResult_=function(){var o=goog.userAgent.getUserAgentString();return goog.userAgent.GECKO?/rv:([^\);]+)(\)|;)/.exec(o):goog.userAgent.EDGE?/Edge\/([\d\.]+)/.exec(o):goog.userAgent.IE?/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(o):goog.userAgent.WEBKIT?/WebKit\/(\S+)/.exec(o):goog.userAgent.OPERA?/(?:Version)[ \/]?(\S+)/.exec(o):void 0},goog.userAgent.getDocumentMode_=function(){var o=goog.global.document;return o?o.documentMode:void 0},goog.userAgent.VERSION=goog.userAgent.determineVersion_(),goog.userAgent.compare=function(o,s){return goog.string.compareVersions(o,s)},goog.userAgent.isVersionOrHigherCache_={},goog.userAgent.isVersionOrHigher=function(o){return goog.userAgent.ASSUME_ANY_VERSION||goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_,o,function(){return 0<=goog.string.compareVersions(goog.userAgent.VERSION,o)})},goog.userAgent.isVersion=goog.userAgent.isVersionOrHigher,goog.userAgent.isDocumentModeOrHigher=function(o){return Number(goog.userAgent.DOCUMENT_MODE)>=o},goog.userAgent.isDocumentMode=goog.userAgent.isDocumentModeOrHigher,goog.userAgent.DOCUMENT_MODE=function(){if(goog.global.document&&goog.userAgent.IE){var o=goog.userAgent.getDocumentMode_();return o||parseInt(goog.userAgent.VERSION,10)||void 0}}(),goog.userAgent.product={},goog.userAgent.product.ASSUME_FIREFOX=!1,goog.userAgent.product.ASSUME_IPHONE=!1,goog.userAgent.product.ASSUME_IPAD=!1,goog.userAgent.product.ASSUME_ANDROID=!1,goog.userAgent.product.ASSUME_CHROME=!1,goog.userAgent.product.ASSUME_SAFARI=!1,goog.userAgent.product.PRODUCT_KNOWN_=goog.userAgent.ASSUME_IE||goog.userAgent.ASSUME_EDGE||goog.userAgent.ASSUME_OPERA||goog.userAgent.product.ASSUME_FIREFOX||goog.userAgent.product.ASSUME_IPHONE||goog.userAgent.product.ASSUME_IPAD||goog.userAgent.product.ASSUME_ANDROID||goog.userAgent.product.ASSUME_CHROME||goog.userAgent.product.ASSUME_SAFARI,goog.userAgent.product.OPERA=goog.userAgent.OPERA,goog.userAgent.product.IE=goog.userAgent.IE,goog.userAgent.product.EDGE=goog.userAgent.EDGE,goog.userAgent.product.FIREFOX=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_FIREFOX:goog.labs.userAgent.browser.isFirefox(),goog.userAgent.product.isIphoneOrIpod_=function(){return goog.labs.userAgent.platform.isIphone()||goog.labs.userAgent.platform.isIpod()},goog.userAgent.product.IPHONE=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_IPHONE:goog.userAgent.product.isIphoneOrIpod_(),goog.userAgent.product.IPAD=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_IPAD:goog.labs.userAgent.platform.isIpad(),goog.userAgent.product.ANDROID=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_ANDROID:goog.labs.userAgent.browser.isAndroidBrowser(),goog.userAgent.product.CHROME=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_CHROME:goog.labs.userAgent.browser.isChrome(),goog.userAgent.product.isSafariDesktop_=function(){return goog.labs.userAgent.browser.isSafari()&&!goog.labs.userAgent.platform.isIos()},goog.userAgent.product.SAFARI=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_SAFARI:goog.userAgent.product.isSafariDesktop_(),goog.crypt.base64={},goog.crypt.base64.DEFAULT_ALPHABET_COMMON_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",goog.crypt.base64.ENCODED_VALS=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_+"+/=",goog.crypt.base64.ENCODED_VALS_WEBSAFE=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_+"-_.",goog.crypt.base64.Alphabet={DEFAULT:0,NO_PADDING:1,WEBSAFE:2,WEBSAFE_DOT_PADDING:3,WEBSAFE_NO_PADDING:4},goog.crypt.base64.paddingChars_="=.",goog.crypt.base64.isPadding_=function(o){return goog.string.contains(goog.crypt.base64.paddingChars_,o)},goog.crypt.base64.byteToCharMaps_={},goog.crypt.base64.charToByteMap_=null,goog.crypt.base64.ASSUME_NATIVE_SUPPORT_=goog.userAgent.GECKO||goog.userAgent.WEBKIT&&!goog.userAgent.product.SAFARI||goog.userAgent.OPERA,goog.crypt.base64.HAS_NATIVE_ENCODE_=goog.crypt.base64.ASSUME_NATIVE_SUPPORT_||typeof goog.global.btoa=="function",goog.crypt.base64.HAS_NATIVE_DECODE_=goog.crypt.base64.ASSUME_NATIVE_SUPPORT_||!goog.userAgent.product.SAFARI&&!goog.userAgent.IE&&typeof goog.global.atob=="function",goog.crypt.base64.encodeByteArray=function(o,s){goog.asserts.assert(goog.isArrayLike(o),"encodeByteArray takes an array as a parameter"),s===void 0&&(s=goog.crypt.base64.Alphabet.DEFAULT),goog.crypt.base64.init_(),s=goog.crypt.base64.byteToCharMaps_[s];for(var _=[],j=0;j>2;$=(3&$)<<4|et>>4,et=(15&et)<<2|nt>>6,nt&=63,tt||(nt=64,_e||(et=64)),_.push(s[rt],s[$],s[et]||"",s[nt]||"")}return _.join("")},goog.crypt.base64.encodeString=function(o,s){return goog.crypt.base64.HAS_NATIVE_ENCODE_&&!s?goog.global.btoa(o):goog.crypt.base64.encodeByteArray(goog.crypt.stringToByteArray(o),s)},goog.crypt.base64.decodeString=function(o,s){if(goog.crypt.base64.HAS_NATIVE_DECODE_&&!s)return goog.global.atob(o);var _="";return goog.crypt.base64.decodeStringInternal_(o,function(j){_+=String.fromCharCode(j)}),_},goog.crypt.base64.decodeStringToByteArray=function(o,s){var _=[];return goog.crypt.base64.decodeStringInternal_(o,function(j){_.push(j)}),_},goog.crypt.base64.decodeStringToUint8Array=function(o){goog.asserts.assert(!goog.userAgent.IE||goog.userAgent.isVersionOrHigher("10"),"Browser does not support typed arrays");var s=o.length,_=3*s/4;_%3?_=Math.floor(_):goog.crypt.base64.isPadding_(o[s-1])&&(_=goog.crypt.base64.isPadding_(o[s-2])?_-2:_-1);var j=new Uint8Array(_),$=0;return goog.crypt.base64.decodeStringInternal_(o,function(_e){j[$++]=_e}),j.subarray(0,$)},goog.crypt.base64.decodeStringInternal_=function(o,s){function _(nt){for(;j>4),et!=64&&(s(_e<<4&240|et>>2),tt!=64&&s(et<<6&192|tt))}},goog.crypt.base64.init_=function(){if(!goog.crypt.base64.charToByteMap_){goog.crypt.base64.charToByteMap_={};for(var o=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_.split(""),s=["+/=","+/","-_=","-_.","-_"],_=0;5>_;_++){var j=o.concat(s[_].split(""));goog.crypt.base64.byteToCharMaps_[_]=j;for(var $=0;$>>0;o=Math.floor((o-s)/jspb.BinaryConstants.TWO_TO_32)>>>0,jspb.utils.split64Low=s,jspb.utils.split64High=o},jspb.utils.splitInt64=function(o){var s=0>o,_=(o=Math.abs(o))>>>0;o=Math.floor((o-_)/jspb.BinaryConstants.TWO_TO_32),o>>>=0,s&&(o=~o>>>0,4294967295<(_=1+(~_>>>0))&&(_=0,4294967295<++o&&(o=0))),jspb.utils.split64Low=_,jspb.utils.split64High=o},jspb.utils.splitZigzag64=function(o){var s=0>o;o=2*Math.abs(o),jspb.utils.splitUint64(o),o=jspb.utils.split64Low;var _=jspb.utils.split64High;s&&(o==0?_==0?_=o=4294967295:(_--,o=4294967295):o--),jspb.utils.split64Low=o,jspb.utils.split64High=_},jspb.utils.splitFloat32=function(o){var s=0>o?1:0;if((o=s?-o:o)===0)0<1/o?(jspb.utils.split64High=0,jspb.utils.split64Low=0):(jspb.utils.split64High=0,jspb.utils.split64Low=2147483648);else if(isNaN(o))jspb.utils.split64High=0,jspb.utils.split64Low=2147483647;else if(o>jspb.BinaryConstants.FLOAT32_MAX)jspb.utils.split64High=0,jspb.utils.split64Low=(s<<31|2139095040)>>>0;else if(o>>0;else{var _=Math.floor(Math.log(o)/Math.LN2);o*=Math.pow(2,-_),16777216<=(o=Math.round(o*jspb.BinaryConstants.TWO_TO_23))&&++_,jspb.utils.split64High=0,jspb.utils.split64Low=(s<<31|_+127<<23|8388607&o)>>>0}},jspb.utils.splitFloat64=function(o){var s=0>o?1:0;if((o=s?-o:o)===0)jspb.utils.split64High=0<1/o?0:2147483648,jspb.utils.split64Low=0;else if(isNaN(o))jspb.utils.split64High=2147483647,jspb.utils.split64Low=4294967295;else if(o>jspb.BinaryConstants.FLOAT64_MAX)jspb.utils.split64High=(s<<31|2146435072)>>>0,jspb.utils.split64Low=0;else if(o>>0,jspb.utils.split64Low=_>>>0}else{var j=0;if(2<=(_=o))for(;2<=_&&1023>j;)j++,_/=2;else for(;1>_&&-1022>>0,jspb.utils.split64High=(s<<31|j+1023<<20|o)>>>0,jspb.utils.split64Low=_}},jspb.utils.splitHash64=function(o){var s=o.charCodeAt(0),_=o.charCodeAt(1),j=o.charCodeAt(2),$=o.charCodeAt(3),_e=o.charCodeAt(4),et=o.charCodeAt(5),tt=o.charCodeAt(6);o=o.charCodeAt(7),jspb.utils.split64Low=s+(_<<8)+(j<<16)+($<<24)>>>0,jspb.utils.split64High=_e+(et<<8)+(tt<<16)+(o<<24)>>>0},jspb.utils.joinUint64=function(o,s){return s*jspb.BinaryConstants.TWO_TO_32+(o>>>0)},jspb.utils.joinInt64=function(o,s){var _=2147483648&s;return _&&(s=~s>>>0,(o=1+~o>>>0)==0&&(s=s+1>>>0)),o=jspb.utils.joinUint64(o,s),_?-o:o},jspb.utils.toZigzag64=function(o,s,_){var j=s>>31;return _(o<<1^j,(s<<1|o>>>31)^j)},jspb.utils.joinZigzag64=function(o,s){return jspb.utils.fromZigzag64(o,s,jspb.utils.joinInt64)},jspb.utils.fromZigzag64=function(o,s,_){var j=-(1&o);return _((o>>>1|s<<31)^j,s>>>1^j)},jspb.utils.joinFloat32=function(o,s){s=2*(o>>31)+1;var _=o>>>23&255;return o&=8388607,_==255?o?NaN:1/0*s:_==0?s*Math.pow(2,-149)*o:s*Math.pow(2,_-150)*(o+Math.pow(2,23))},jspb.utils.joinFloat64=function(o,s){var _=2*(s>>31)+1,j=s>>>20&2047;return o=jspb.BinaryConstants.TWO_TO_32*(1048575&s)+o,j==2047?o?NaN:1/0*_:j==0?_*Math.pow(2,-1074)*o:_*Math.pow(2,j-1075)*(o+jspb.BinaryConstants.TWO_TO_52)},jspb.utils.joinHash64=function(o,s){return String.fromCharCode(o>>>0&255,o>>>8&255,o>>>16&255,o>>>24&255,s>>>0&255,s>>>8&255,s>>>16&255,s>>>24&255)},jspb.utils.DIGITS="0123456789abcdef".split(""),jspb.utils.ZERO_CHAR_CODE_=48,jspb.utils.A_CHAR_CODE_=97,jspb.utils.joinUnsignedDecimalString=function(o,s){function _($,_e){return $=$?String($):"",_e?"0000000".slice($.length)+$:$}if(2097151>=s)return""+jspb.utils.joinUint64(o,s);var j=(o>>>24|s<<8)>>>0&16777215;return o=(16777215&o)+6777216*j+6710656*(s=s>>16&65535),j+=8147497*s,s*=2,1e7<=o&&(j+=Math.floor(o/1e7),o%=1e7),1e7<=j&&(s+=Math.floor(j/1e7),j%=1e7),_(s,0)+_(j,s)+_(o,1)},jspb.utils.joinSignedDecimalString=function(o,s){var _=2147483648&s;return _&&(s=~s+((o=1+~o>>>0)==0?1:0)>>>0),o=jspb.utils.joinUnsignedDecimalString(o,s),_?"-"+o:o},jspb.utils.hash64ToDecimalString=function(o,s){jspb.utils.splitHash64(o),o=jspb.utils.split64Low;var _=jspb.utils.split64High;return s?jspb.utils.joinSignedDecimalString(o,_):jspb.utils.joinUnsignedDecimalString(o,_)},jspb.utils.hash64ArrayToDecimalStrings=function(o,s){for(var _=Array(o.length),j=0;jtt&&(_e!==1||0>>=8}jspb.asserts.assert(0_e;_e++)j[_e]=255&~j[_e]}(),s(1,1)),goog.crypt.byteArrayToString(j)},jspb.utils.splitDecimalString=function(o){jspb.utils.splitHash64(jspb.utils.decimalStringToHash64(o))},jspb.utils.toHexDigit_=function(o){return String.fromCharCode(10>o?jspb.utils.ZERO_CHAR_CODE_+o:jspb.utils.A_CHAR_CODE_-10+o)},jspb.utils.fromHexCharCode_=function(o){return o>=jspb.utils.A_CHAR_CODE_?o-jspb.utils.A_CHAR_CODE_+10:o-jspb.utils.ZERO_CHAR_CODE_},jspb.utils.hash64ToHexString=function(o){var s=Array(18);s[0]="0",s[1]="x";for(var _=0;8>_;_++){var j=o.charCodeAt(7-_);s[2*_+2]=jspb.utils.toHexDigit_(j>>4),s[2*_+3]=jspb.utils.toHexDigit_(15&j)}return s.join("")},jspb.utils.hexStringToHash64=function(o){o=o.toLowerCase(),jspb.asserts.assert(o.length==18),jspb.asserts.assert(o[0]=="0"),jspb.asserts.assert(o[1]=="x");for(var s="",_=0;8>_;_++){var j=jspb.utils.fromHexCharCode_(o.charCodeAt(2*_+2)),$=jspb.utils.fromHexCharCode_(o.charCodeAt(2*_+3));s=String.fromCharCode(16*j+$)+s}return s},jspb.utils.hash64ToNumber=function(o,s){jspb.utils.splitHash64(o),o=jspb.utils.split64Low;var _=jspb.utils.split64High;return s?jspb.utils.joinInt64(o,_):jspb.utils.joinUint64(o,_)},jspb.utils.numberToHash64=function(o){return jspb.utils.splitInt64(o),jspb.utils.joinHash64(jspb.utils.split64Low,jspb.utils.split64High)},jspb.utils.countVarints=function(o,s,_){for(var j=0,$=s;$<_;$++)j+=o[$]>>7;return _-s-j},jspb.utils.countVarintFields=function(o,s,_,j){var $=0;if(128>(j=8*j+jspb.BinaryConstants.WireType.VARINT))for(;s<_&&o[s++]==j;)for($++;;){var _e=o[s++];if(!(128&_e))break}else for(;s<_;){for(_e=j;128<_e;){if(o[s]!=(127&_e|128))return $;s++,_e>>=7}if(o[s++]!=_e)break;for($++;128&(_e=o[s++]););}return $},jspb.utils.countFixedFields_=function(o,s,_,j,$){var _e=0;if(128>j)for(;s<_&&o[s++]==j;)_e++,s+=$;else for(;s<_;){for(var et=j;128>=7}if(o[s++]!=et)break;_e++,s+=$}return _e},jspb.utils.countFixed32Fields=function(o,s,_,j){return jspb.utils.countFixedFields_(o,s,_,8*j+jspb.BinaryConstants.WireType.FIXED32,4)},jspb.utils.countFixed64Fields=function(o,s,_,j){return jspb.utils.countFixedFields_(o,s,_,8*j+jspb.BinaryConstants.WireType.FIXED64,8)},jspb.utils.countDelimitedFields=function(o,s,_,j){var $=0;for(j=8*j+jspb.BinaryConstants.WireType.DELIMITED;s<_;){for(var _e=j;128<_e;){if(o[s++]!=(127&_e|128))return $;_e>>=7}if(o[s++]!=_e)break;$++;for(var et=0,tt=1;et+=(127&(_e=o[s++]))*tt,tt*=128,(128&_e)!=0;);s+=et}return $},jspb.utils.debugBytesToTextFormat=function(o){var s='"';if(o){o=jspb.utils.byteSourceToUint8Array(o);for(var _=0;_o[_]&&(s+="0"),s+=o[_].toString(16)}return s+'"'},jspb.utils.debugScalarToTextFormat=function(o){return typeof o=="string"?goog.string.quote(o):o.toString()},jspb.utils.stringToByteArray=function(o){for(var s=new Uint8Array(o.length),_=0;_jspb.BinaryDecoder.instanceCache_.length&&jspb.BinaryDecoder.instanceCache_.push(this)},jspb.BinaryDecoder.prototype.clone=function(){return jspb.BinaryDecoder.alloc(this.bytes_,this.start_,this.end_-this.start_)},jspb.BinaryDecoder.prototype.clear=function(){this.bytes_=null,this.cursor_=this.end_=this.start_=0,this.error_=!1},jspb.BinaryDecoder.prototype.getBuffer=function(){return this.bytes_},jspb.BinaryDecoder.prototype.setBlock=function(o,s,_){this.bytes_=jspb.utils.byteSourceToUint8Array(o),this.start_=s!==void 0?s:0,this.end_=_!==void 0?this.start_+_:this.bytes_.length,this.cursor_=this.start_},jspb.BinaryDecoder.prototype.getEnd=function(){return this.end_},jspb.BinaryDecoder.prototype.setEnd=function(o){this.end_=o},jspb.BinaryDecoder.prototype.reset=function(){this.cursor_=this.start_},jspb.BinaryDecoder.prototype.getCursor=function(){return this.cursor_},jspb.BinaryDecoder.prototype.setCursor=function(o){this.cursor_=o},jspb.BinaryDecoder.prototype.advance=function(o){this.cursor_+=o,jspb.asserts.assert(this.cursor_<=this.end_)},jspb.BinaryDecoder.prototype.atEnd=function(){return this.cursor_==this.end_},jspb.BinaryDecoder.prototype.pastEnd=function(){return this.cursor_>this.end_},jspb.BinaryDecoder.prototype.getError=function(){return this.error_||0>this.cursor_||this.cursor_>this.end_},jspb.BinaryDecoder.prototype.readSplitVarint64=function(o){for(var s=128,_=0,j=0,$=0;4>$&&128<=s;$++)_|=(127&(s=this.bytes_[this.cursor_++]))<<7*$;if(128<=s&&(_|=(127&(s=this.bytes_[this.cursor_++]))<<28,j|=(127&s)>>4),128<=s)for($=0;5>$&&128<=s;$++)j|=(127&(s=this.bytes_[this.cursor_++]))<<7*$+3;if(128>s)return o(_>>>0,j>>>0);jspb.asserts.fail("Failed to read varint, encoding is invalid."),this.error_=!0},jspb.BinaryDecoder.prototype.readSplitZigzagVarint64=function(o){return this.readSplitVarint64(function(s,_){return jspb.utils.fromZigzag64(s,_,o)})},jspb.BinaryDecoder.prototype.readSplitFixed64=function(o){var s=this.bytes_,_=this.cursor_;this.cursor_+=8;for(var j=0,$=0,_e=_+7;_e>=_;_e--)j=j<<8|s[_e],$=$<<8|s[_e+4];return o(j,$)},jspb.BinaryDecoder.prototype.skipVarint=function(){for(;128&this.bytes_[this.cursor_];)this.cursor_++;this.cursor_++},jspb.BinaryDecoder.prototype.unskipVarint=function(o){for(;128>>=7;this.cursor_--},jspb.BinaryDecoder.prototype.readUnsignedVarint32=function(){var o=this.bytes_,s=o[this.cursor_+0],_=127&s;return 128>s?(this.cursor_+=1,jspb.asserts.assert(this.cursor_<=this.end_),_):(_|=(127&(s=o[this.cursor_+1]))<<7,128>s?(this.cursor_+=2,jspb.asserts.assert(this.cursor_<=this.end_),_):(_|=(127&(s=o[this.cursor_+2]))<<14,128>s?(this.cursor_+=3,jspb.asserts.assert(this.cursor_<=this.end_),_):(_|=(127&(s=o[this.cursor_+3]))<<21,128>s?(this.cursor_+=4,jspb.asserts.assert(this.cursor_<=this.end_),_):(_|=(15&(s=o[this.cursor_+4]))<<28,128>s?(this.cursor_+=5,jspb.asserts.assert(this.cursor_<=this.end_),_>>>0):(this.cursor_+=5,128<=o[this.cursor_++]&&128<=o[this.cursor_++]&&128<=o[this.cursor_++]&&128<=o[this.cursor_++]&&128<=o[this.cursor_++]&&jspb.asserts.assert(!1),jspb.asserts.assert(this.cursor_<=this.end_),_)))))},jspb.BinaryDecoder.prototype.readSignedVarint32=function(){return~~this.readUnsignedVarint32()},jspb.BinaryDecoder.prototype.readUnsignedVarint32String=function(){return this.readUnsignedVarint32().toString()},jspb.BinaryDecoder.prototype.readSignedVarint32String=function(){return this.readSignedVarint32().toString()},jspb.BinaryDecoder.prototype.readZigzagVarint32=function(){var o=this.readUnsignedVarint32();return o>>>1^-(1&o)},jspb.BinaryDecoder.prototype.readUnsignedVarint64=function(){return this.readSplitVarint64(jspb.utils.joinUint64)},jspb.BinaryDecoder.prototype.readUnsignedVarint64String=function(){return this.readSplitVarint64(jspb.utils.joinUnsignedDecimalString)},jspb.BinaryDecoder.prototype.readSignedVarint64=function(){return this.readSplitVarint64(jspb.utils.joinInt64)},jspb.BinaryDecoder.prototype.readSignedVarint64String=function(){return this.readSplitVarint64(jspb.utils.joinSignedDecimalString)},jspb.BinaryDecoder.prototype.readZigzagVarint64=function(){return this.readSplitVarint64(jspb.utils.joinZigzag64)},jspb.BinaryDecoder.prototype.readZigzagVarintHash64=function(){return this.readSplitZigzagVarint64(jspb.utils.joinHash64)},jspb.BinaryDecoder.prototype.readZigzagVarint64String=function(){return this.readSplitZigzagVarint64(jspb.utils.joinSignedDecimalString)},jspb.BinaryDecoder.prototype.readUint8=function(){var o=this.bytes_[this.cursor_+0];return this.cursor_+=1,jspb.asserts.assert(this.cursor_<=this.end_),o},jspb.BinaryDecoder.prototype.readUint16=function(){var o=this.bytes_[this.cursor_+0],s=this.bytes_[this.cursor_+1];return this.cursor_+=2,jspb.asserts.assert(this.cursor_<=this.end_),o<<0|s<<8},jspb.BinaryDecoder.prototype.readUint32=function(){var o=this.bytes_[this.cursor_+0],s=this.bytes_[this.cursor_+1],_=this.bytes_[this.cursor_+2],j=this.bytes_[this.cursor_+3];return this.cursor_+=4,jspb.asserts.assert(this.cursor_<=this.end_),(o<<0|s<<8|_<<16|j<<24)>>>0},jspb.BinaryDecoder.prototype.readUint64=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinUint64(o,s)},jspb.BinaryDecoder.prototype.readUint64String=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinUnsignedDecimalString(o,s)},jspb.BinaryDecoder.prototype.readInt8=function(){var o=this.bytes_[this.cursor_+0];return this.cursor_+=1,jspb.asserts.assert(this.cursor_<=this.end_),o<<24>>24},jspb.BinaryDecoder.prototype.readInt16=function(){var o=this.bytes_[this.cursor_+0],s=this.bytes_[this.cursor_+1];return this.cursor_+=2,jspb.asserts.assert(this.cursor_<=this.end_),(o<<0|s<<8)<<16>>16},jspb.BinaryDecoder.prototype.readInt32=function(){var o=this.bytes_[this.cursor_+0],s=this.bytes_[this.cursor_+1],_=this.bytes_[this.cursor_+2],j=this.bytes_[this.cursor_+3];return this.cursor_+=4,jspb.asserts.assert(this.cursor_<=this.end_),o<<0|s<<8|_<<16|j<<24},jspb.BinaryDecoder.prototype.readInt64=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinInt64(o,s)},jspb.BinaryDecoder.prototype.readInt64String=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinSignedDecimalString(o,s)},jspb.BinaryDecoder.prototype.readFloat=function(){var o=this.readUint32();return jspb.utils.joinFloat32(o,0)},jspb.BinaryDecoder.prototype.readDouble=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinFloat64(o,s)},jspb.BinaryDecoder.prototype.readBool=function(){return!!this.bytes_[this.cursor_++]},jspb.BinaryDecoder.prototype.readEnum=function(){return this.readSignedVarint32()},jspb.BinaryDecoder.prototype.readString=function(o){var s=this.bytes_,_=this.cursor_;o=_+o;for(var j=[],$="";__e)j.push(_e);else{if(192>_e)continue;if(224>_e){var et=s[_++];j.push((31&_e)<<6|63&et)}else if(240>_e){et=s[_++];var tt=s[_++];j.push((15&_e)<<12|(63&et)<<6|63&tt)}else 248>_e&&(_e=(7&_e)<<18|(63&(et=s[_++]))<<12|(63&(tt=s[_++]))<<6|63&s[_++],_e-=65536,j.push(55296+(_e>>10&1023),56320+(1023&_e)))}8192<=j.length&&($+=String.fromCharCode.apply(null,j),j.length=0)}return $+=goog.crypt.byteArrayToString(j),this.cursor_=_,$},jspb.BinaryDecoder.prototype.readStringWithLength=function(){var o=this.readUnsignedVarint32();return this.readString(o)},jspb.BinaryDecoder.prototype.readBytes=function(o){if(0>o||this.cursor_+o>this.bytes_.length)return this.error_=!0,jspb.asserts.fail("Invalid byte length!"),new Uint8Array(0);var s=this.bytes_.subarray(this.cursor_,this.cursor_+o);return this.cursor_+=o,jspb.asserts.assert(this.cursor_<=this.end_),s},jspb.BinaryDecoder.prototype.readVarintHash64=function(){return this.readSplitVarint64(jspb.utils.joinHash64)},jspb.BinaryDecoder.prototype.readFixedHash64=function(){var o=this.bytes_,s=this.cursor_,_=o[s+0],j=o[s+1],$=o[s+2],_e=o[s+3],et=o[s+4],tt=o[s+5],nt=o[s+6];return o=o[s+7],this.cursor_+=8,String.fromCharCode(_,j,$,_e,et,tt,nt,o)},jspb.BinaryReader=function(o,s,_){this.decoder_=jspb.BinaryDecoder.alloc(o,s,_),this.fieldCursor_=this.decoder_.getCursor(),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID,this.error_=!1,this.readCallbacks_=null},jspb.BinaryReader.instanceCache_=[],jspb.BinaryReader.alloc=function(o,s,_){if(jspb.BinaryReader.instanceCache_.length){var j=jspb.BinaryReader.instanceCache_.pop();return o&&j.decoder_.setBlock(o,s,_),j}return new jspb.BinaryReader(o,s,_)},jspb.BinaryReader.prototype.alloc=jspb.BinaryReader.alloc,jspb.BinaryReader.prototype.free=function(){this.decoder_.clear(),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID,this.error_=!1,this.readCallbacks_=null,100>jspb.BinaryReader.instanceCache_.length&&jspb.BinaryReader.instanceCache_.push(this)},jspb.BinaryReader.prototype.getFieldCursor=function(){return this.fieldCursor_},jspb.BinaryReader.prototype.getCursor=function(){return this.decoder_.getCursor()},jspb.BinaryReader.prototype.getBuffer=function(){return this.decoder_.getBuffer()},jspb.BinaryReader.prototype.getFieldNumber=function(){return this.nextField_},goog.exportProperty(jspb.BinaryReader.prototype,"getFieldNumber",jspb.BinaryReader.prototype.getFieldNumber),jspb.BinaryReader.prototype.getWireType=function(){return this.nextWireType_},jspb.BinaryReader.prototype.isDelimited=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED},goog.exportProperty(jspb.BinaryReader.prototype,"isDelimited",jspb.BinaryReader.prototype.isDelimited),jspb.BinaryReader.prototype.isEndGroup=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP},goog.exportProperty(jspb.BinaryReader.prototype,"isEndGroup",jspb.BinaryReader.prototype.isEndGroup),jspb.BinaryReader.prototype.getError=function(){return this.error_||this.decoder_.getError()},jspb.BinaryReader.prototype.setBlock=function(o,s,_){this.decoder_.setBlock(o,s,_),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID},jspb.BinaryReader.prototype.reset=function(){this.decoder_.reset(),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID},jspb.BinaryReader.prototype.advance=function(o){this.decoder_.advance(o)},jspb.BinaryReader.prototype.nextField=function(){if(this.decoder_.atEnd())return!1;if(this.getError())return jspb.asserts.fail("Decoder hit an error"),!1;this.fieldCursor_=this.decoder_.getCursor();var o=this.decoder_.readUnsignedVarint32(),s=o>>>3;return(o&=7)!=jspb.BinaryConstants.WireType.VARINT&&o!=jspb.BinaryConstants.WireType.FIXED32&&o!=jspb.BinaryConstants.WireType.FIXED64&&o!=jspb.BinaryConstants.WireType.DELIMITED&&o!=jspb.BinaryConstants.WireType.START_GROUP&&o!=jspb.BinaryConstants.WireType.END_GROUP?(jspb.asserts.fail("Invalid wire type: %s (at position %s)",o,this.fieldCursor_),this.error_=!0,!1):(this.nextField_=s,this.nextWireType_=o,!0)},goog.exportProperty(jspb.BinaryReader.prototype,"nextField",jspb.BinaryReader.prototype.nextField),jspb.BinaryReader.prototype.unskipHeader=function(){this.decoder_.unskipVarint(this.nextField_<<3|this.nextWireType_)},jspb.BinaryReader.prototype.skipMatchingFields=function(){var o=this.nextField_;for(this.unskipHeader();this.nextField()&&this.getFieldNumber()==o;)this.skipField();this.decoder_.atEnd()||this.unskipHeader()},jspb.BinaryReader.prototype.skipVarintField=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.VARINT?(jspb.asserts.fail("Invalid wire type for skipVarintField"),this.skipField()):this.decoder_.skipVarint()},jspb.BinaryReader.prototype.skipDelimitedField=function(){if(this.nextWireType_!=jspb.BinaryConstants.WireType.DELIMITED)jspb.asserts.fail("Invalid wire type for skipDelimitedField"),this.skipField();else{var o=this.decoder_.readUnsignedVarint32();this.decoder_.advance(o)}},jspb.BinaryReader.prototype.skipFixed32Field=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.FIXED32?(jspb.asserts.fail("Invalid wire type for skipFixed32Field"),this.skipField()):this.decoder_.advance(4)},jspb.BinaryReader.prototype.skipFixed64Field=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.FIXED64?(jspb.asserts.fail("Invalid wire type for skipFixed64Field"),this.skipField()):this.decoder_.advance(8)},jspb.BinaryReader.prototype.skipGroup=function(){for(var o=this.nextField_;;){if(!this.nextField()){jspb.asserts.fail("Unmatched start-group tag: stream EOF"),this.error_=!0;break}if(this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP){this.nextField_!=o&&(jspb.asserts.fail("Unmatched end-group tag"),this.error_=!0);break}this.skipField()}},jspb.BinaryReader.prototype.skipField=function(){switch(this.nextWireType_){case jspb.BinaryConstants.WireType.VARINT:this.skipVarintField();break;case jspb.BinaryConstants.WireType.FIXED64:this.skipFixed64Field();break;case jspb.BinaryConstants.WireType.DELIMITED:this.skipDelimitedField();break;case jspb.BinaryConstants.WireType.FIXED32:this.skipFixed32Field();break;case jspb.BinaryConstants.WireType.START_GROUP:this.skipGroup();break;default:jspb.asserts.fail("Invalid wire encoding for field.")}},jspb.BinaryReader.prototype.registerReadCallback=function(o,s){this.readCallbacks_===null&&(this.readCallbacks_={}),jspb.asserts.assert(!this.readCallbacks_[o]),this.readCallbacks_[o]=s},jspb.BinaryReader.prototype.runReadCallback=function(o){return jspb.asserts.assert(this.readCallbacks_!==null),o=this.readCallbacks_[o],jspb.asserts.assert(o),o(this)},jspb.BinaryReader.prototype.readAny=function(o){this.nextWireType_=jspb.BinaryConstants.FieldTypeToWireType(o);var s=jspb.BinaryConstants.FieldType;switch(o){case s.DOUBLE:return this.readDouble();case s.FLOAT:return this.readFloat();case s.INT64:return this.readInt64();case s.UINT64:return this.readUint64();case s.INT32:return this.readInt32();case s.FIXED64:return this.readFixed64();case s.FIXED32:return this.readFixed32();case s.BOOL:return this.readBool();case s.STRING:return this.readString();case s.GROUP:jspb.asserts.fail("Group field type not supported in readAny()");case s.MESSAGE:jspb.asserts.fail("Message field type not supported in readAny()");case s.BYTES:return this.readBytes();case s.UINT32:return this.readUint32();case s.ENUM:return this.readEnum();case s.SFIXED32:return this.readSfixed32();case s.SFIXED64:return this.readSfixed64();case s.SINT32:return this.readSint32();case s.SINT64:return this.readSint64();case s.FHASH64:return this.readFixedHash64();case s.VHASH64:return this.readVarintHash64();default:jspb.asserts.fail("Invalid field type in readAny()")}return 0},jspb.BinaryReader.prototype.readMessage=function(o,s){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var _=this.decoder_.getEnd(),j=this.decoder_.readUnsignedVarint32();j=this.decoder_.getCursor()+j,this.decoder_.setEnd(j),s(o,this),this.decoder_.setCursor(j),this.decoder_.setEnd(_)},goog.exportProperty(jspb.BinaryReader.prototype,"readMessage",jspb.BinaryReader.prototype.readMessage),jspb.BinaryReader.prototype.readGroup=function(o,s,_){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.START_GROUP),jspb.asserts.assert(this.nextField_==o),_(s,this),this.error_||this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP||(jspb.asserts.fail("Group submessage did not end with an END_GROUP tag"),this.error_=!0)},goog.exportProperty(jspb.BinaryReader.prototype,"readGroup",jspb.BinaryReader.prototype.readGroup),jspb.BinaryReader.prototype.getFieldDecoder=function(){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var o=this.decoder_.readUnsignedVarint32(),s=this.decoder_.getCursor(),_=s+o;return o=jspb.BinaryDecoder.alloc(this.decoder_.getBuffer(),s,o),this.decoder_.setCursor(_),o},jspb.BinaryReader.prototype.readInt32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readInt32",jspb.BinaryReader.prototype.readInt32),jspb.BinaryReader.prototype.readInt32String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32String()},jspb.BinaryReader.prototype.readInt64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readInt64",jspb.BinaryReader.prototype.readInt64),jspb.BinaryReader.prototype.readInt64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64String()},jspb.BinaryReader.prototype.readUint32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readUint32",jspb.BinaryReader.prototype.readUint32),jspb.BinaryReader.prototype.readUint32String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32String()},jspb.BinaryReader.prototype.readUint64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readUint64",jspb.BinaryReader.prototype.readUint64),jspb.BinaryReader.prototype.readUint64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64String()},jspb.BinaryReader.prototype.readSint32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readSint32",jspb.BinaryReader.prototype.readSint32),jspb.BinaryReader.prototype.readSint64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readSint64",jspb.BinaryReader.prototype.readSint64),jspb.BinaryReader.prototype.readSint64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64String()},jspb.BinaryReader.prototype.readFixed32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readUint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readFixed32",jspb.BinaryReader.prototype.readFixed32),jspb.BinaryReader.prototype.readFixed64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readFixed64",jspb.BinaryReader.prototype.readFixed64),jspb.BinaryReader.prototype.readFixed64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64String()},jspb.BinaryReader.prototype.readSfixed32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32()},goog.exportProperty(jspb.BinaryReader.prototype,"readSfixed32",jspb.BinaryReader.prototype.readSfixed32),jspb.BinaryReader.prototype.readSfixed32String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32().toString()},jspb.BinaryReader.prototype.readSfixed64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64()},goog.exportProperty(jspb.BinaryReader.prototype,"readSfixed64",jspb.BinaryReader.prototype.readSfixed64),jspb.BinaryReader.prototype.readSfixed64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64String()},jspb.BinaryReader.prototype.readFloat=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readFloat()},goog.exportProperty(jspb.BinaryReader.prototype,"readFloat",jspb.BinaryReader.prototype.readFloat),jspb.BinaryReader.prototype.readDouble=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readDouble()},goog.exportProperty(jspb.BinaryReader.prototype,"readDouble",jspb.BinaryReader.prototype.readDouble),jspb.BinaryReader.prototype.readBool=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),!!this.decoder_.readUnsignedVarint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readBool",jspb.BinaryReader.prototype.readBool),jspb.BinaryReader.prototype.readEnum=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readEnum",jspb.BinaryReader.prototype.readEnum),jspb.BinaryReader.prototype.readString=function(){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var o=this.decoder_.readUnsignedVarint32();return this.decoder_.readString(o)},goog.exportProperty(jspb.BinaryReader.prototype,"readString",jspb.BinaryReader.prototype.readString),jspb.BinaryReader.prototype.readBytes=function(){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var o=this.decoder_.readUnsignedVarint32();return this.decoder_.readBytes(o)},goog.exportProperty(jspb.BinaryReader.prototype,"readBytes",jspb.BinaryReader.prototype.readBytes),jspb.BinaryReader.prototype.readVarintHash64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readVarintHash64()},jspb.BinaryReader.prototype.readSintHash64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarintHash64()},jspb.BinaryReader.prototype.readSplitVarint64=function(o){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSplitVarint64(o)},jspb.BinaryReader.prototype.readSplitZigzagVarint64=function(o){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSplitVarint64(function(s,_){return jspb.utils.fromZigzag64(s,_,o)})},jspb.BinaryReader.prototype.readFixedHash64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readFixedHash64()},jspb.BinaryReader.prototype.readSplitFixed64=function(o){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readSplitFixed64(o)},jspb.BinaryReader.prototype.readPackedField_=function(o){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var s=this.decoder_.readUnsignedVarint32();s=this.decoder_.getCursor()+s;for(var _=[];this.decoder_.getCursor()>>7|s<<25)>>>0,s>>>=7;this.buffer_.push(o)},jspb.BinaryEncoder.prototype.writeSplitFixed64=function(o,s){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(s==Math.floor(s)),jspb.asserts.assert(0<=o&&o>>=7;this.buffer_.push(o)},jspb.BinaryEncoder.prototype.writeSignedVarint32=function(o){if(jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_31&&os;s++)this.buffer_.push(127&o|128),o>>=7;this.buffer_.push(1)}},jspb.BinaryEncoder.prototype.writeUnsignedVarint64=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&o=-jspb.BinaryConstants.TWO_TO_63&&o=-jspb.BinaryConstants.TWO_TO_31&&o>31)>>>0)},jspb.BinaryEncoder.prototype.writeZigzagVarint64=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_63&&o>>0,j>>>0)})},jspb.BinaryEncoder.prototype.writeUint8=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&256>o),this.buffer_.push(o>>>0&255)},jspb.BinaryEncoder.prototype.writeUint16=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&65536>o),this.buffer_.push(o>>>0&255),this.buffer_.push(o>>>8&255)},jspb.BinaryEncoder.prototype.writeUint32=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&o>>0&255),this.buffer_.push(o>>>8&255),this.buffer_.push(o>>>16&255),this.buffer_.push(o>>>24&255)},jspb.BinaryEncoder.prototype.writeUint64=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&oo),this.buffer_.push(o>>>0&255)},jspb.BinaryEncoder.prototype.writeInt16=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(-32768<=o&&32768>o),this.buffer_.push(o>>>0&255),this.buffer_.push(o>>>8&255)},jspb.BinaryEncoder.prototype.writeInt32=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_31&&o>>0&255),this.buffer_.push(o>>>8&255),this.buffer_.push(o>>>16&255),this.buffer_.push(o>>>24&255)},jspb.BinaryEncoder.prototype.writeInt64=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_63&&o=-jspb.BinaryConstants.TWO_TO_63&&+o=-jspb.BinaryConstants.FLOAT32_MAX&&o<=jspb.BinaryConstants.FLOAT32_MAX),jspb.utils.splitFloat32(o),this.writeUint32(jspb.utils.split64Low)},jspb.BinaryEncoder.prototype.writeDouble=function(o){jspb.asserts.assert(o===1/0||o===-1/0||isNaN(o)||o>=-jspb.BinaryConstants.FLOAT64_MAX&&o<=jspb.BinaryConstants.FLOAT64_MAX),jspb.utils.splitFloat64(o),this.writeUint32(jspb.utils.split64Low),this.writeUint32(jspb.utils.split64High)},jspb.BinaryEncoder.prototype.writeBool=function(o){jspb.asserts.assert(typeof o=="boolean"||typeof o=="number"),this.buffer_.push(o?1:0)},jspb.BinaryEncoder.prototype.writeEnum=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_31&&oj)this.buffer_.push(j);else if(2048>j)this.buffer_.push(j>>6|192),this.buffer_.push(63&j|128);else if(65536>j)if(55296<=j&&56319>=j&&_+1=$&&(j=1024*(j-55296)+$-56320+65536,this.buffer_.push(j>>18|240),this.buffer_.push(j>>12&63|128),this.buffer_.push(j>>6&63|128),this.buffer_.push(63&j|128),_++)}else this.buffer_.push(j>>12|224),this.buffer_.push(j>>6&63|128),this.buffer_.push(63&j|128)}return this.buffer_.length-s},jspb.arith={},jspb.arith.UInt64=function(o,s){this.lo=o,this.hi=s},jspb.arith.UInt64.prototype.cmp=function(o){return this.hi>>1|(1&this.hi)<<31)>>>0,this.hi>>>1>>>0)},jspb.arith.UInt64.prototype.leftShift=function(){return new jspb.arith.UInt64(this.lo<<1>>>0,(this.hi<<1|this.lo>>>31)>>>0)},jspb.arith.UInt64.prototype.msb=function(){return!!(2147483648&this.hi)},jspb.arith.UInt64.prototype.lsb=function(){return!!(1&this.lo)},jspb.arith.UInt64.prototype.zero=function(){return this.lo==0&&this.hi==0},jspb.arith.UInt64.prototype.add=function(o){return new jspb.arith.UInt64((this.lo+o.lo&4294967295)>>>0>>>0,((this.hi+o.hi&4294967295)>>>0)+(4294967296<=this.lo+o.lo?1:0)>>>0)},jspb.arith.UInt64.prototype.sub=function(o){return new jspb.arith.UInt64((this.lo-o.lo&4294967295)>>>0>>>0,((this.hi-o.hi&4294967295)>>>0)-(0>this.lo-o.lo?1:0)>>>0)},jspb.arith.UInt64.mul32x32=function(o,s){var _=65535&o,j=65535&s,$=s>>>16;for(s=_*j+65536*(_*$&65535)+65536*((o>>>=16)*j&65535),_=o*$+(_*$>>>16)+(o*j>>>16);4294967296<=s;)s-=4294967296,_+=1;return new jspb.arith.UInt64(s>>>0,_>>>0)},jspb.arith.UInt64.prototype.mul=function(o){var s=jspb.arith.UInt64.mul32x32(this.lo,o);return(o=jspb.arith.UInt64.mul32x32(this.hi,o)).hi=o.lo,o.lo=0,s.add(o)},jspb.arith.UInt64.prototype.div=function(o){if(o==0)return[];var s=new jspb.arith.UInt64(0,0),_=new jspb.arith.UInt64(this.lo,this.hi);o=new jspb.arith.UInt64(o,0);for(var j=new jspb.arith.UInt64(1,0);!o.msb();)o=o.leftShift(),j=j.leftShift();for(;!j.zero();)0>=o.cmp(_)&&(s=s.add(j),_=_.sub(o)),o=o.rightShift(),j=j.rightShift();return[s,_]},jspb.arith.UInt64.prototype.toString=function(){for(var o="",s=this;!s.zero();){var _=(s=s.div(10))[0];o=s[1].lo+o,s=_}return o==""&&(o="0"),o},jspb.arith.UInt64.fromString=function(o){for(var s=new jspb.arith.UInt64(0,0),_=new jspb.arith.UInt64(0,0),j=0;jo[j]||"9">>0>>>0,((this.hi+o.hi&4294967295)>>>0)+(4294967296<=this.lo+o.lo?1:0)>>>0)},jspb.arith.Int64.prototype.sub=function(o){return new jspb.arith.Int64((this.lo-o.lo&4294967295)>>>0>>>0,((this.hi-o.hi&4294967295)>>>0)-(0>this.lo-o.lo?1:0)>>>0)},jspb.arith.Int64.prototype.clone=function(){return new jspb.arith.Int64(this.lo,this.hi)},jspb.arith.Int64.prototype.toString=function(){var o=(2147483648&this.hi)!=0,s=new jspb.arith.UInt64(this.lo,this.hi);return o&&(s=new jspb.arith.UInt64(0,0).sub(s)),(o?"-":"")+s.toString()},jspb.arith.Int64.fromString=function(o){var s=0>>=7,this.totalLength_++;o.push(s),this.totalLength_++},jspb.BinaryWriter.prototype.writeSerializedMessage=function(o,s,_){this.appendUint8Array_(o.subarray(s,_))},jspb.BinaryWriter.prototype.maybeWriteSerializedMessage=function(o,s,_){o!=null&&s!=null&&_!=null&&this.writeSerializedMessage(o,s,_)},jspb.BinaryWriter.prototype.reset=function(){this.blocks_=[],this.encoder_.end(),this.totalLength_=0,this.bookmarks_=[]},jspb.BinaryWriter.prototype.getResultBuffer=function(){jspb.asserts.assert(this.bookmarks_.length==0);for(var o=new Uint8Array(this.totalLength_+this.encoder_.length()),s=this.blocks_,_=s.length,j=0,$=0;$<_;$++){var _e=s[$];o.set(_e,j),j+=_e.length}return s=this.encoder_.end(),o.set(s,j),j+=s.length,jspb.asserts.assert(j==o.length),this.blocks_=[o],o},goog.exportProperty(jspb.BinaryWriter.prototype,"getResultBuffer",jspb.BinaryWriter.prototype.getResultBuffer),jspb.BinaryWriter.prototype.getResultBase64String=function(o){return goog.crypt.base64.encodeByteArray(this.getResultBuffer(),o)},jspb.BinaryWriter.prototype.beginSubMessage=function(o){this.bookmarks_.push(this.beginDelimited_(o))},jspb.BinaryWriter.prototype.endSubMessage=function(){jspb.asserts.assert(0<=this.bookmarks_.length),this.endDelimited_(this.bookmarks_.pop())},jspb.BinaryWriter.prototype.writeFieldHeader_=function(o,s){jspb.asserts.assert(1<=o&&o==Math.floor(o)),this.encoder_.writeUnsignedVarint32(8*o+s)},jspb.BinaryWriter.prototype.writeAny=function(o,s,_){var j=jspb.BinaryConstants.FieldType;switch(o){case j.DOUBLE:this.writeDouble(s,_);break;case j.FLOAT:this.writeFloat(s,_);break;case j.INT64:this.writeInt64(s,_);break;case j.UINT64:this.writeUint64(s,_);break;case j.INT32:this.writeInt32(s,_);break;case j.FIXED64:this.writeFixed64(s,_);break;case j.FIXED32:this.writeFixed32(s,_);break;case j.BOOL:this.writeBool(s,_);break;case j.STRING:this.writeString(s,_);break;case j.GROUP:jspb.asserts.fail("Group field type not supported in writeAny()");break;case j.MESSAGE:jspb.asserts.fail("Message field type not supported in writeAny()");break;case j.BYTES:this.writeBytes(s,_);break;case j.UINT32:this.writeUint32(s,_);break;case j.ENUM:this.writeEnum(s,_);break;case j.SFIXED32:this.writeSfixed32(s,_);break;case j.SFIXED64:this.writeSfixed64(s,_);break;case j.SINT32:this.writeSint32(s,_);break;case j.SINT64:this.writeSint64(s,_);break;case j.FHASH64:this.writeFixedHash64(s,_);break;case j.VHASH64:this.writeVarintHash64(s,_);break;default:jspb.asserts.fail("Invalid field type in writeAny()")}},jspb.BinaryWriter.prototype.writeUnsignedVarint32_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeUnsignedVarint32(s))},jspb.BinaryWriter.prototype.writeSignedVarint32_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeSignedVarint32(s))},jspb.BinaryWriter.prototype.writeUnsignedVarint64_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeUnsignedVarint64(s))},jspb.BinaryWriter.prototype.writeSignedVarint64_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeSignedVarint64(s))},jspb.BinaryWriter.prototype.writeZigzagVarint32_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeZigzagVarint32(s))},jspb.BinaryWriter.prototype.writeZigzagVarint64_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeZigzagVarint64(s))},jspb.BinaryWriter.prototype.writeZigzagVarint64String_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeZigzagVarint64String(s))},jspb.BinaryWriter.prototype.writeZigzagVarintHash64_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeZigzagVarintHash64(s))},jspb.BinaryWriter.prototype.writeInt32=function(o,s){s!=null&&(jspb.asserts.assert(s>=-jspb.BinaryConstants.TWO_TO_31&&s=-jspb.BinaryConstants.TWO_TO_31&&s=-jspb.BinaryConstants.TWO_TO_63&&s=-jspb.BinaryConstants.TWO_TO_31&&s=-jspb.BinaryConstants.TWO_TO_63&&s=-jspb.BinaryConstants.TWO_TO_31&&s=-jspb.BinaryConstants.TWO_TO_63&&s=-jspb.BinaryConstants.TWO_TO_31&&s>>0,_e>>>0)})},jspb.BinaryWriter.prototype.writeRepeatedInt32=function(o,s){if(s!=null)for(var _=0;_>>0,tt>>>0)});this.endDelimited_(o)}},jspb.BinaryWriter.prototype.writePackedInt64String=function(o,s){if(s!=null&&s.length){o=this.beginDelimited_(o);for(var _=0;_s.length?_.length:s.length;for(o.getJsPbMessageId()&&(j[0]=o.getJsPbMessageId(),$=1);$<_e;$++)jspb.Message.compareFields(_[$],s[$])||(j[$]=s[$]);return new o.constructor(j)},goog.exportProperty(jspb.Message,"difference",jspb.Message.difference),jspb.Message.equals=function(o,s){return o==s||!(!o||!s)&&o instanceof s.constructor&&jspb.Message.compareFields(o.toArray(),s.toArray())},goog.exportProperty(jspb.Message,"equals",jspb.Message.equals),jspb.Message.compareExtensions=function(o,s){o=o||{},s=s||{};var _,j={};for(_ in o)j[_]=0;for(_ in s)j[_]=0;for(_ in j)if(!jspb.Message.compareFields(o[_],s[_]))return!1;return!0},goog.exportProperty(jspb.Message,"compareExtensions",jspb.Message.compareExtensions),jspb.Message.compareFields=function(o,s){if(o==s)return!0;if(!goog.isObject(o)||!goog.isObject(s))return!!(typeof o=="number"&&isNaN(o)||typeof s=="number"&&isNaN(s))&&String(o)==String(s);if(o.constructor!=s.constructor)return!1;if(jspb.Message.SUPPORTS_UINT8ARRAY_&&o.constructor===Uint8Array){if(o.length!=s.length)return!1;for(var _=0;_{var j=_(7186),$=j,_e=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||_e!==void 0&&_e||typeof self<"u"&&self||function(){return this}.call(null)||Function("return this")();$.exportSymbol("proto.google.protobuf.BoolValue",null,_e),$.exportSymbol("proto.google.protobuf.BytesValue",null,_e),$.exportSymbol("proto.google.protobuf.DoubleValue",null,_e),$.exportSymbol("proto.google.protobuf.FloatValue",null,_e),$.exportSymbol("proto.google.protobuf.Int32Value",null,_e),$.exportSymbol("proto.google.protobuf.Int64Value",null,_e),$.exportSymbol("proto.google.protobuf.StringValue",null,_e),$.exportSymbol("proto.google.protobuf.UInt32Value",null,_e),$.exportSymbol("proto.google.protobuf.UInt64Value",null,_e),proto.google.protobuf.DoubleValue=function(et){j.Message.initialize(this,et,0,-1,null,null)},$.inherits(proto.google.protobuf.DoubleValue,j.Message),$.DEBUG&&!COMPILED&&(proto.google.protobuf.DoubleValue.displayName="proto.google.protobuf.DoubleValue"),proto.google.protobuf.FloatValue=function(et){j.Message.initialize(this,et,0,-1,null,null)},$.inherits(proto.google.protobuf.FloatValue,j.Message),$.DEBUG&&!COMPILED&&(proto.google.protobuf.FloatValue.displayName="proto.google.protobuf.FloatValue"),proto.google.protobuf.Int64Value=function(et){j.Message.initialize(this,et,0,-1,null,null)},$.inherits(proto.google.protobuf.Int64Value,j.Message),$.DEBUG&&!COMPILED&&(proto.google.protobuf.Int64Value.displayName="proto.google.protobuf.Int64Value"),proto.google.protobuf.UInt64Value=function(et){j.Message.initialize(this,et,0,-1,null,null)},$.inherits(proto.google.protobuf.UInt64Value,j.Message),$.DEBUG&&!COMPILED&&(proto.google.protobuf.UInt64Value.displayName="proto.google.protobuf.UInt64Value"),proto.google.protobuf.Int32Value=function(et){j.Message.initialize(this,et,0,-1,null,null)},$.inherits(proto.google.protobuf.Int32Value,j.Message),$.DEBUG&&!COMPILED&&(proto.google.protobuf.Int32Value.displayName="proto.google.protobuf.Int32Value"),proto.google.protobuf.UInt32Value=function(et){j.Message.initialize(this,et,0,-1,null,null)},$.inherits(proto.google.protobuf.UInt32Value,j.Message),$.DEBUG&&!COMPILED&&(proto.google.protobuf.UInt32Value.displayName="proto.google.protobuf.UInt32Value"),proto.google.protobuf.BoolValue=function(et){j.Message.initialize(this,et,0,-1,null,null)},$.inherits(proto.google.protobuf.BoolValue,j.Message),$.DEBUG&&!COMPILED&&(proto.google.protobuf.BoolValue.displayName="proto.google.protobuf.BoolValue"),proto.google.protobuf.StringValue=function(et){j.Message.initialize(this,et,0,-1,null,null)},$.inherits(proto.google.protobuf.StringValue,j.Message),$.DEBUG&&!COMPILED&&(proto.google.protobuf.StringValue.displayName="proto.google.protobuf.StringValue"),proto.google.protobuf.BytesValue=function(et){j.Message.initialize(this,et,0,-1,null,null)},$.inherits(proto.google.protobuf.BytesValue,j.Message),$.DEBUG&&!COMPILED&&(proto.google.protobuf.BytesValue.displayName="proto.google.protobuf.BytesValue"),j.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.DoubleValue.prototype.toObject=function(et){return proto.google.protobuf.DoubleValue.toObject(et,this)},proto.google.protobuf.DoubleValue.toObject=function(et,tt){var nt={value:j.Message.getFloatingPointFieldWithDefault(tt,1,0)};return et&&(nt.$jspbMessageInstance=tt),nt}),proto.google.protobuf.DoubleValue.deserializeBinary=function(et){var tt=new j.BinaryReader(et),nt=new proto.google.protobuf.DoubleValue;return proto.google.protobuf.DoubleValue.deserializeBinaryFromReader(nt,tt)},proto.google.protobuf.DoubleValue.deserializeBinaryFromReader=function(et,tt){for(;tt.nextField()&&!tt.isEndGroup();)switch(tt.getFieldNumber()){case 1:var nt=tt.readDouble();et.setValue(nt);break;default:tt.skipField()}return et},proto.google.protobuf.DoubleValue.prototype.serializeBinary=function(){var et=new j.BinaryWriter;return proto.google.protobuf.DoubleValue.serializeBinaryToWriter(this,et),et.getResultBuffer()},proto.google.protobuf.DoubleValue.serializeBinaryToWriter=function(et,tt){var nt;(nt=et.getValue())!==0&&tt.writeDouble(1,nt)},proto.google.protobuf.DoubleValue.prototype.getValue=function(){return j.Message.getFloatingPointFieldWithDefault(this,1,0)},proto.google.protobuf.DoubleValue.prototype.setValue=function(et){return j.Message.setProto3FloatField(this,1,et)},j.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.FloatValue.prototype.toObject=function(et){return proto.google.protobuf.FloatValue.toObject(et,this)},proto.google.protobuf.FloatValue.toObject=function(et,tt){var nt={value:j.Message.getFloatingPointFieldWithDefault(tt,1,0)};return et&&(nt.$jspbMessageInstance=tt),nt}),proto.google.protobuf.FloatValue.deserializeBinary=function(et){var tt=new j.BinaryReader(et),nt=new proto.google.protobuf.FloatValue;return proto.google.protobuf.FloatValue.deserializeBinaryFromReader(nt,tt)},proto.google.protobuf.FloatValue.deserializeBinaryFromReader=function(et,tt){for(;tt.nextField()&&!tt.isEndGroup();)switch(tt.getFieldNumber()){case 1:var nt=tt.readFloat();et.setValue(nt);break;default:tt.skipField()}return et},proto.google.protobuf.FloatValue.prototype.serializeBinary=function(){var et=new j.BinaryWriter;return proto.google.protobuf.FloatValue.serializeBinaryToWriter(this,et),et.getResultBuffer()},proto.google.protobuf.FloatValue.serializeBinaryToWriter=function(et,tt){var nt;(nt=et.getValue())!==0&&tt.writeFloat(1,nt)},proto.google.protobuf.FloatValue.prototype.getValue=function(){return j.Message.getFloatingPointFieldWithDefault(this,1,0)},proto.google.protobuf.FloatValue.prototype.setValue=function(et){return j.Message.setProto3FloatField(this,1,et)},j.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.Int64Value.prototype.toObject=function(et){return proto.google.protobuf.Int64Value.toObject(et,this)},proto.google.protobuf.Int64Value.toObject=function(et,tt){var nt={value:j.Message.getFieldWithDefault(tt,1,0)};return et&&(nt.$jspbMessageInstance=tt),nt}),proto.google.protobuf.Int64Value.deserializeBinary=function(et){var tt=new j.BinaryReader(et),nt=new proto.google.protobuf.Int64Value;return proto.google.protobuf.Int64Value.deserializeBinaryFromReader(nt,tt)},proto.google.protobuf.Int64Value.deserializeBinaryFromReader=function(et,tt){for(;tt.nextField()&&!tt.isEndGroup();)switch(tt.getFieldNumber()){case 1:var nt=tt.readInt64();et.setValue(nt);break;default:tt.skipField()}return et},proto.google.protobuf.Int64Value.prototype.serializeBinary=function(){var et=new j.BinaryWriter;return proto.google.protobuf.Int64Value.serializeBinaryToWriter(this,et),et.getResultBuffer()},proto.google.protobuf.Int64Value.serializeBinaryToWriter=function(et,tt){var nt;(nt=et.getValue())!==0&&tt.writeInt64(1,nt)},proto.google.protobuf.Int64Value.prototype.getValue=function(){return j.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.Int64Value.prototype.setValue=function(et){return j.Message.setProto3IntField(this,1,et)},j.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.UInt64Value.prototype.toObject=function(et){return proto.google.protobuf.UInt64Value.toObject(et,this)},proto.google.protobuf.UInt64Value.toObject=function(et,tt){var nt={value:j.Message.getFieldWithDefault(tt,1,0)};return et&&(nt.$jspbMessageInstance=tt),nt}),proto.google.protobuf.UInt64Value.deserializeBinary=function(et){var tt=new j.BinaryReader(et),nt=new proto.google.protobuf.UInt64Value;return proto.google.protobuf.UInt64Value.deserializeBinaryFromReader(nt,tt)},proto.google.protobuf.UInt64Value.deserializeBinaryFromReader=function(et,tt){for(;tt.nextField()&&!tt.isEndGroup();)switch(tt.getFieldNumber()){case 1:var nt=tt.readUint64();et.setValue(nt);break;default:tt.skipField()}return et},proto.google.protobuf.UInt64Value.prototype.serializeBinary=function(){var et=new j.BinaryWriter;return proto.google.protobuf.UInt64Value.serializeBinaryToWriter(this,et),et.getResultBuffer()},proto.google.protobuf.UInt64Value.serializeBinaryToWriter=function(et,tt){var nt;(nt=et.getValue())!==0&&tt.writeUint64(1,nt)},proto.google.protobuf.UInt64Value.prototype.getValue=function(){return j.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.UInt64Value.prototype.setValue=function(et){return j.Message.setProto3IntField(this,1,et)},j.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.Int32Value.prototype.toObject=function(et){return proto.google.protobuf.Int32Value.toObject(et,this)},proto.google.protobuf.Int32Value.toObject=function(et,tt){var nt={value:j.Message.getFieldWithDefault(tt,1,0)};return et&&(nt.$jspbMessageInstance=tt),nt}),proto.google.protobuf.Int32Value.deserializeBinary=function(et){var tt=new j.BinaryReader(et),nt=new proto.google.protobuf.Int32Value;return proto.google.protobuf.Int32Value.deserializeBinaryFromReader(nt,tt)},proto.google.protobuf.Int32Value.deserializeBinaryFromReader=function(et,tt){for(;tt.nextField()&&!tt.isEndGroup();)switch(tt.getFieldNumber()){case 1:var nt=tt.readInt32();et.setValue(nt);break;default:tt.skipField()}return et},proto.google.protobuf.Int32Value.prototype.serializeBinary=function(){var et=new j.BinaryWriter;return proto.google.protobuf.Int32Value.serializeBinaryToWriter(this,et),et.getResultBuffer()},proto.google.protobuf.Int32Value.serializeBinaryToWriter=function(et,tt){var nt;(nt=et.getValue())!==0&&tt.writeInt32(1,nt)},proto.google.protobuf.Int32Value.prototype.getValue=function(){return j.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.Int32Value.prototype.setValue=function(et){return j.Message.setProto3IntField(this,1,et)},j.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.UInt32Value.prototype.toObject=function(et){return proto.google.protobuf.UInt32Value.toObject(et,this)},proto.google.protobuf.UInt32Value.toObject=function(et,tt){var nt={value:j.Message.getFieldWithDefault(tt,1,0)};return et&&(nt.$jspbMessageInstance=tt),nt}),proto.google.protobuf.UInt32Value.deserializeBinary=function(et){var tt=new j.BinaryReader(et),nt=new proto.google.protobuf.UInt32Value;return proto.google.protobuf.UInt32Value.deserializeBinaryFromReader(nt,tt)},proto.google.protobuf.UInt32Value.deserializeBinaryFromReader=function(et,tt){for(;tt.nextField()&&!tt.isEndGroup();)switch(tt.getFieldNumber()){case 1:var nt=tt.readUint32();et.setValue(nt);break;default:tt.skipField()}return et},proto.google.protobuf.UInt32Value.prototype.serializeBinary=function(){var et=new j.BinaryWriter;return proto.google.protobuf.UInt32Value.serializeBinaryToWriter(this,et),et.getResultBuffer()},proto.google.protobuf.UInt32Value.serializeBinaryToWriter=function(et,tt){var nt;(nt=et.getValue())!==0&&tt.writeUint32(1,nt)},proto.google.protobuf.UInt32Value.prototype.getValue=function(){return j.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.UInt32Value.prototype.setValue=function(et){return j.Message.setProto3IntField(this,1,et)},j.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.BoolValue.prototype.toObject=function(et){return proto.google.protobuf.BoolValue.toObject(et,this)},proto.google.protobuf.BoolValue.toObject=function(et,tt){var nt={value:j.Message.getBooleanFieldWithDefault(tt,1,!1)};return et&&(nt.$jspbMessageInstance=tt),nt}),proto.google.protobuf.BoolValue.deserializeBinary=function(et){var tt=new j.BinaryReader(et),nt=new proto.google.protobuf.BoolValue;return proto.google.protobuf.BoolValue.deserializeBinaryFromReader(nt,tt)},proto.google.protobuf.BoolValue.deserializeBinaryFromReader=function(et,tt){for(;tt.nextField()&&!tt.isEndGroup();)switch(tt.getFieldNumber()){case 1:var nt=tt.readBool();et.setValue(nt);break;default:tt.skipField()}return et},proto.google.protobuf.BoolValue.prototype.serializeBinary=function(){var et=new j.BinaryWriter;return proto.google.protobuf.BoolValue.serializeBinaryToWriter(this,et),et.getResultBuffer()},proto.google.protobuf.BoolValue.serializeBinaryToWriter=function(et,tt){var nt;(nt=et.getValue())&&tt.writeBool(1,nt)},proto.google.protobuf.BoolValue.prototype.getValue=function(){return j.Message.getBooleanFieldWithDefault(this,1,!1)},proto.google.protobuf.BoolValue.prototype.setValue=function(et){return j.Message.setProto3BooleanField(this,1,et)},j.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.StringValue.prototype.toObject=function(et){return proto.google.protobuf.StringValue.toObject(et,this)},proto.google.protobuf.StringValue.toObject=function(et,tt){var nt={value:j.Message.getFieldWithDefault(tt,1,"")};return et&&(nt.$jspbMessageInstance=tt),nt}),proto.google.protobuf.StringValue.deserializeBinary=function(et){var tt=new j.BinaryReader(et),nt=new proto.google.protobuf.StringValue;return proto.google.protobuf.StringValue.deserializeBinaryFromReader(nt,tt)},proto.google.protobuf.StringValue.deserializeBinaryFromReader=function(et,tt){for(;tt.nextField()&&!tt.isEndGroup();)switch(tt.getFieldNumber()){case 1:var nt=tt.readString();et.setValue(nt);break;default:tt.skipField()}return et},proto.google.protobuf.StringValue.prototype.serializeBinary=function(){var et=new j.BinaryWriter;return proto.google.protobuf.StringValue.serializeBinaryToWriter(this,et),et.getResultBuffer()},proto.google.protobuf.StringValue.serializeBinaryToWriter=function(et,tt){var nt;(nt=et.getValue()).length>0&&tt.writeString(1,nt)},proto.google.protobuf.StringValue.prototype.getValue=function(){return j.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.StringValue.prototype.setValue=function(et){return j.Message.setProto3StringField(this,1,et)},j.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.BytesValue.prototype.toObject=function(et){return proto.google.protobuf.BytesValue.toObject(et,this)},proto.google.protobuf.BytesValue.toObject=function(et,tt){var nt={value:tt.getValue_asB64()};return et&&(nt.$jspbMessageInstance=tt),nt}),proto.google.protobuf.BytesValue.deserializeBinary=function(et){var tt=new j.BinaryReader(et),nt=new proto.google.protobuf.BytesValue;return proto.google.protobuf.BytesValue.deserializeBinaryFromReader(nt,tt)},proto.google.protobuf.BytesValue.deserializeBinaryFromReader=function(et,tt){for(;tt.nextField()&&!tt.isEndGroup();)switch(tt.getFieldNumber()){case 1:var nt=tt.readBytes();et.setValue(nt);break;default:tt.skipField()}return et},proto.google.protobuf.BytesValue.prototype.serializeBinary=function(){var et=new j.BinaryWriter;return proto.google.protobuf.BytesValue.serializeBinaryToWriter(this,et),et.getResultBuffer()},proto.google.protobuf.BytesValue.serializeBinaryToWriter=function(et,tt){var nt;(nt=et.getValue_asU8()).length>0&&tt.writeBytes(1,nt)},proto.google.protobuf.BytesValue.prototype.getValue=function(){return j.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.BytesValue.prototype.getValue_asB64=function(){return j.Message.bytesAsB64(this.getValue())},proto.google.protobuf.BytesValue.prototype.getValue_asU8=function(){return j.Message.bytesAsU8(this.getValue())},proto.google.protobuf.BytesValue.prototype.setValue=function(et){return j.Message.setProto3BytesField(this,1,et)},$.object.extend(s,proto.google.protobuf)},1292:o=>{o.exports=Object.getOwnPropertyDescriptor},9336:(o,s,_)=>{var j=_(1292);if(j)try{j([],"length")}catch{j=null}o.exports=j},5949:function(o,s,_){var j;function $(Wt){var Gt=0;return function(){return Gt(on=on||0)&&(on=Math.max(on+Jn,0));onGt?1:0}e:{var Cn=Qt.navigator;if(Cn){var Tt=Cn.userAgent;if(Tt){Kt=Tt;break e}}Kt=""}var Zt="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function Ot(Wt){var Gt=1;Wt=Wt.split(":");for(var on=[];0parseFloat(Pn)){ln=String(tr);break e}}ln=Pn}var xr={};function Kr(){return function(Wt){var Gt=xr;return Object.prototype.hasOwnProperty.call(Gt,9)?Gt[9]:Gt[9]=Wt(9)}(function(){for(var Wt=0,Gt=Bn(String(ln)).split("."),on=Bn("9").split("."),Qn=Math.max(Gt.length,on.length),Jn=0;Wt==0&&Jn>>0);function Vs(Wt){return typeof Wt=="function"?Wt:(Wt[gs]||(Wt[gs]=function(Gt){return Wt.handleEvent(Gt)}),Wt[gs])}function Fo(){Gr.call(this),this.f=new Bo(this),this.U=this}function no(Wt,Gt){Wt=Wt.U;var on=Gt.type||Gt;if(typeof Gt=="string")Gt=new oo(Gt,Wt);else if(Gt instanceof oo)Gt.target=Gt.target||Wt;else{var Qn=Gt;(function(Jn,Wn){for(var yn,kn,Mn=1;Mn=(Wt?Tn(Rn(Fn(),Wt.getName())):bn).value),Qn&&(Gt=Gt||bn,Qn=Rn(Fn(),Wt.getName()),typeof on=="function"&&(on=on()),Js||(Js=new nn),function(Jn,Wn){for(;Jn;)Jn.f.forEach(function(yn){yn(Wn)}),Jn=Jn.b}(Qn,Wt=new dn(Gt,on,Wt=Wt.getName())))}function zn(Wt,Gt){Wt&&Zn(Wt,Lt,Gt)}function sr(){}function fr(Wt){var Gt;return(Gt=Wt.a)||(Gt={},Yr(Wt)&&(Gt[0]=!0,Gt[1]=!0),Gt=Wt.a=Gt),Gt}function jr(){}function Br(Wt){return(Wt=Yr(Wt))?new ActiveXObject(Wt):new XMLHttpRequest}function Yr(Wt){if(!Wt.b&&typeof XMLHttpRequest>"u"&&typeof ActiveXObject<"u"){for(var Gt=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],on=0;on2*this.size&&Vo(this),!0)},j.get=function(Wt,Gt){return wo(this.o,Wt)?this.o[Wt]:Gt},j.set=function(Wt,Gt){wo(this.o,Wt)||(this.size+=1,this.j.push(Wt),this.B++),this.o[Wt]=Gt},j.addAll=function(Wt){if(Wt instanceof so)for(var Gt=Wt.G(),on=0;on=Qn.j.length)throw ar;var Wn=Qn.j[Gt++];return Wt?Wn:Qn.o[Wn]},Jn.next=Jn.a.bind(Jn),Jn};var _u=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^\\/?#]*)@)?([^\\/?#]*?)(?::([0-9]+))?(?=[\\/?#]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/;function Ws(Wt){Fo.call(this),this.headers=new so,this.C=Wt||null,this.c=!1,this.J=this.a=null,this.P=this.v="",this.g=0,this.l="",this.i=this.N=this.s=this.L=!1,this.h=0,this.w=null,this.m=Ls,this.I=this.M=!1}mt(Ws,Fo);var Ls="";Ws.prototype.b=Rn(Fn(),"goog.net.XhrIo",void 0).g;var $a=/^https?$/i,ps=["POST","PUT"];function xl(Wt,Gt,on){if(Wt.a)throw Error("[goog.net.XhrIo] Object is active with another request="+Wt.v+"; newUri="+Gt);Wt.v=Gt,Wt.l="",Wt.g=0,Wt.P="POST",Wt.L=!1,Wt.c=!0,Wt.a=Wt.C?Br(Wt.C):Br(Ns),Wt.J=Wt.C?fr(Wt.C):fr(Ns),Wt.a.onreadystatechange=vt(Wt.R,Wt);try{zn(Wt.b,zo(Wt,"Opening Xhr")),Wt.N=!0,Wt.a.open("POST",String(Gt),!0),Wt.N=!1}catch(Wn){return zn(Wt.b,zo(Wt,"Error opening Xhr: "+Wn.message)),void Ul(Wt,Wn)}Gt=on||"";var Qn=(on=Wt.headers.clone()).G().find(function(Wn){return Wn.toLowerCase()=="content-type"}),Jn=Qt.FormData&&Gt instanceof Qt.FormData;!(0<=Un(ps,"POST"))||Qn||Jn||on.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8"),on.forEach(function(Wn,yn){this.a.setRequestHeader(yn,Wn)},Wt),Wt.m&&(Wt.a.responseType=Wt.m),"withCredentials"in Wt.a&&Wt.a.withCredentials!==Wt.M&&(Wt.a.withCredentials=Wt.M);try{Ql(Wt),0>4),$n!=64&&(yn(Kn<<4&240|$n>>2),pr!=64&&yn($n<<6&192|pr))}}(Wt,function(Wn){Qn[Jn++]=Wn}),Qn.subarray(0,Jn)}function zl(){if(!ks){ks={};for(var Wt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),Gt=["+/=","+/","-_=","-_.","-_"],on=0;5>on;on++){var Qn=Wt.concat(Gt[on].split(""));Ll[on]=Qn;for(var Jn=0;Jn(kn=Jn.indexOf("#"))&&(kn=Jn.length),0>(yn=Jn.indexOf("?"))||yn>kn?(yn=kn,Mn=""):Mn=Jn.substring(yn+1,kn),kn=(Jn=[Jn.substr(0,yn),Mn,Jn.substr(kn)])[1],Jn[1]=Kn?kn?kn+"&"+Kn:Kn:kn,Jn=Jn[0]+(Jn[1]?"?"+Jn[1]:"")+Jn[2])):Jn.a("$httpHeaders",kn))}for(Qn=(Gt=(0,Qn.a)(Gt.getRequestMessage())).length,Kn=[0,0,0,0],kn=new Uint8Array(5+Qn),yn=3;0<=yn;yn--)Kn[yn]=Qn%256,Qn>>>=8;if(kn.set(new Uint8Array(Kn),1),kn.set(Gt,5),Gt=kn,Wt.a=="text"){var $n;for(Wt=Gt,$n===void 0&&($n=0),zl(),$n=Ll[$n],Gt=Array(Math.floor(Wt.length/3)),Qn=$n[64]||"",Kn=kn=0;kn>2],Yn=$n[(3&Yn)<<4|pr>>4],pr=$n[(15&pr)<<2|Mn>>6],Mn=$n[63&Mn],Gt[Kn++]=yn+Yn+pr+Mn}switch(yn=0,Mn=Qn,Wt.length-kn){case 2:Mn=$n[(15&(yn=Wt[kn+1]))<<2]||Qn;case 1:Wt=Wt[kn],Gt[Kn]=$n[Wt>>2]+$n[(3&Wt)<<4|yn>>4]+Mn+Qn}Gt=Gt.join("")}else Wt.a=="binary"&&(on.m="arraybuffer");return xl(on,Jn,Gt),Wn}function Gl(Wt,Gt,on){var Qn=!1,Jn=null,Wn=!1;Wt.on("data",function(yn){Qn=!0,Jn=yn}),Wt.on("error",function(yn){yn.code==0||Wn||(Wn=!0,Gt(yn,null))}),Wt.on("status",function(yn){yn.code==0||Wn?on&&Gt(null,null,yn):(Wn=!0,Gt({code:yn.code,message:yn.details,metadata:yn.metadata},null))}),on&&Wt.on("metadata",function(yn){Gt(null,null,null,yn)}),Wt.on("end",function(){Wn||(Qn?on?Gt(null,Jn,null,null,!0):Gt(null,Jn):Gt({code:2,message:"Incomplete response"})),on&&Gt(null,null)})}function Rl(Wt,Gt){var on=Wt;return Gt.forEach(function(Qn){var Jn=on;on=function(Wn){return Qn.intercept(Wn,Jn)}}),on}Zo.prototype.on=function(Wt,Gt){return Wt=="data"?this.b.push(Gt):Wt=="status"?this.h.push(Gt):Wt=="metadata"?this.g.push(Gt):Wt=="end"?this.c.push(Gt):Wt=="error"&&this.f.push(Gt),this},Zo.prototype.removeListener=function(Wt,Gt){return Wt=="data"?_s(this.b,Gt):Wt=="status"?_s(this.h,Gt):Wt=="metadata"?_s(this.g,Gt):Wt=="end"?_s(this.c,Gt):Wt=="error"&&_s(this.f,Gt),this},Zo.prototype.cancel=function(){this.l=!0,this.a.abort()},Zo.prototype.cancel=Zo.prototype.cancel,Zo.prototype.removeListener=Zo.prototype.removeListener,Zo.prototype.on=Zo.prototype.on,go.prototype.X=function(Wt,Gt,on,Qn,Jn){var Wn=this,yn=Wt.substr(0,Wt.length-Qn.name.length);return Gl(Wt=Rl(function(kn){return Bl(Wn,kn,yn)},this.b).call(this,Jt(Qn,Gt,on)),Jn,!1),new Yt(Wt)},go.prototype.S=function(Wt,Gt,on,Qn){var Jn=this,Wn=Wt.substr(0,Wt.length-Qn.name.length);return Rl(function(yn){return new Promise(function(kn,Mn){var Yn,Kn,$n;Gl(Bl(Jn,yn,Wn),function(pr,br,kr,er,Tr){pr?Mn(pr):Tr?$n=br:kr?Kn=kr:er?Yn=er:(pr=yn.getMethodDescriptor(),kn(new wt($n,pr,br=(br=Yn)===void 0?{}:br,Kn===void 0?null:Kn)))},!0)})},this.h).call(this,Jt(Qn,Gt,on)).then(function(yn){return yn.getResponseMessage()})},go.prototype.unaryCall=function(Wt,Gt,on,Qn){return this.S(Wt,Gt,on,Qn)},go.prototype.Y=function(Wt,Gt,on,Qn){var Jn=this,Wn=Wt.substr(0,Wt.length-Qn.name.length);return Rl(function(yn){return Bl(Jn,yn,Wn)},this.b).call(this,Jt(Qn,Gt,on))},go.prototype.serverStreaming=go.prototype.Y,go.prototype.unaryCall=go.prototype.unaryCall,go.prototype.thenableCall=go.prototype.S,go.prototype.rpcCall=go.prototype.X,o.exports.CallOptions=yt,o.exports.MethodDescriptor=Et,o.exports.GrpcWebClientBase=go,o.exports.RpcError=Pt,o.exports.StatusCode={OK:0,CANCELLED:1,UNKNOWN:2,INVALID_ARGUMENT:3,DEADLINE_EXCEEDED:4,NOT_FOUND:5,ALREADY_EXISTS:6,PERMISSION_DENIED:7,UNAUTHENTICATED:16,RESOURCE_EXHAUSTED:8,FAILED_PRECONDITION:9,ABORTED:10,OUT_OF_RANGE:11,UNIMPLEMENTED:12,INTERNAL:13,UNAVAILABLE:14,DATA_LOSS:15},o.exports.MethodType={UNARY:"unary",SERVER_STREAMING:"server_streaming",BIDI_STREAMING:"bidi_streaming"},Ts=typeof globalThis<"u"&&globalThis||self},7239:(o,s,_)=>{var j=_(4940),$=function(){return!!j};$.hasArrayLengthDefineBug=function(){if(!j)return null;try{return j([],"length",{value:1}).length!==1}catch{return!0}},o.exports=$},3558:(o,s,_)=>{var j=typeof Symbol<"u"&&Symbol,$=_(2908);o.exports=function(){return typeof j=="function"&&typeof Symbol=="function"&&typeof j("foo")=="symbol"&&typeof Symbol("bar")=="symbol"&&$()}},2908:o=>{o.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var s={},_=Symbol("test"),j=Object(_);if(typeof _=="string"||Object.prototype.toString.call(_)!=="[object Symbol]"||Object.prototype.toString.call(j)!=="[object Symbol]")return!1;for(var $ in s[_]=42,s)return!1;if(typeof Object.keys=="function"&&Object.keys(s).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(s).length!==0)return!1;var _e=Object.getOwnPropertySymbols(s);if(_e.length!==1||_e[0]!==_||!Object.prototype.propertyIsEnumerable.call(s,_))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var et=Object.getOwnPropertyDescriptor(s,_);if(et.value!==42||et.enumerable!==!0)return!1}return!0}},1913:(o,s,_)=>{var j=_(2908);o.exports=function(){return j()&&!!Symbol.toStringTag}},8554:(o,s,_)=>{var j=Function.prototype.call,$=Object.prototype.hasOwnProperty,_e=_(9138);o.exports=_e.call(j,$)},7500:(o,s,_)=>{var j=_(4865),$=_(5442),_e=o.exports;for(var et in j)j.hasOwnProperty(et)&&(_e[et]=j[et]);function tt(nt){if(typeof nt=="string"&&(nt=$.parse(nt)),nt.protocol||(nt.protocol="https:"),nt.protocol!=="https:")throw new Error('Protocol "'+nt.protocol+'" not supported. Expected "https:"');return nt}_e.request=function(nt,rt){return nt=tt(nt),j.request.call(this,nt,rt)},_e.get=function(nt,rt){return nt=tt(nt),j.get.call(this,nt,rt)}},9318:(o,s)=>{s.read=function(_,j,$,_e,et){var tt,nt,rt=8*et-_e-1,it=(1<>1,ut=-7,Ft=$?et-1:0,dt=$?-1:1,gt=_[j+Ft];for(Ft+=dt,tt=gt&(1<<-ut)-1,gt>>=-ut,ut+=rt;ut>0;tt=256*tt+_[j+Ft],Ft+=dt,ut-=8);for(nt=tt&(1<<-ut)-1,tt>>=-ut,ut+=_e;ut>0;nt=256*nt+_[j+Ft],Ft+=dt,ut-=8);if(tt===0)tt=1-st;else{if(tt===it)return nt?NaN:1/0*(gt?-1:1);nt+=Math.pow(2,_e),tt-=st}return(gt?-1:1)*nt*Math.pow(2,tt-_e)},s.write=function(_,j,$,_e,et,tt){var nt,rt,it,st=8*tt-et-1,ut=(1<>1,dt=et===23?Math.pow(2,-24)-Math.pow(2,-77):0,gt=_e?0:tt-1,Ut=_e?1:-1,ht=j<0||j===0&&1/j<0?1:0;for(j=Math.abs(j),isNaN(j)||j===1/0?(rt=isNaN(j)?1:0,nt=ut):(nt=Math.floor(Math.log(j)/Math.LN2),j*(it=Math.pow(2,-nt))<1&&(nt--,it*=2),(j+=nt+Ft>=1?dt/it:dt*Math.pow(2,1-Ft))*it>=2&&(nt++,it/=2),nt+Ft>=ut?(rt=0,nt=ut):nt+Ft>=1?(rt=(j*it-1)*Math.pow(2,et),nt+=Ft):(rt=j*Math.pow(2,Ft-1)*Math.pow(2,et),nt=0));et>=8;_[$+gt]=255&rt,gt+=Ut,rt/=256,et-=8);for(nt=nt<0;_[$+gt]=255&nt,gt+=Ut,nt/=256,st-=8);_[$+gt-Ut]|=128*ht}},5615:o=>{typeof Object.create=="function"?o.exports=function(s,_){_&&(s.super_=_,s.prototype=Object.create(_.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}))}:o.exports=function(s,_){if(_){s.super_=_;var j=function(){};j.prototype=_.prototype,s.prototype=new j,s.prototype.constructor=s}}},5387:(o,s,_)=>{var j=_(1913)(),$=_(9818)("Object.prototype.toString"),_e=function(nt){return!(j&&nt&&typeof nt=="object"&&Symbol.toStringTag in nt)&&$(nt)==="[object Arguments]"},et=function(nt){return!!_e(nt)||nt!==null&&typeof nt=="object"&&typeof nt.length=="number"&&nt.length>=0&&$(nt)!=="[object Array]"&&$(nt.callee)==="[object Function]"},tt=function(){return _e(arguments)}();_e.isLegacyArguments=et,o.exports=tt?_e:et},9617:o=>{var s,_,j=Function.prototype.toString,$=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply;if(typeof $=="function"&&typeof Object.defineProperty=="function")try{s=Object.defineProperty({},"length",{get:function(){throw _}}),_={},$(function(){throw 42},null,s)}catch(Ft){Ft!==_&&($=null)}else $=null;var _e=/^\s*class\b/,et=function(Ft){try{var dt=j.call(Ft);return _e.test(dt)}catch{return!1}},tt=function(Ft){try{return!et(Ft)&&(j.call(Ft),!0)}catch{return!1}},nt=Object.prototype.toString,rt=typeof Symbol=="function"&&!!Symbol.toStringTag,it=!(0 in[,]),st=function(){return!1};if(typeof document=="object"){var ut=document.all;nt.call(ut)===nt.call(document.all)&&(st=function(Ft){if((it||!Ft)&&(Ft===void 0||typeof Ft=="object"))try{var dt=nt.call(Ft);return(dt==="[object HTMLAllCollection]"||dt==="[object HTML document.all class]"||dt==="[object HTMLCollection]"||dt==="[object Object]")&&Ft("")==null}catch{}return!1})}o.exports=$?function(Ft){if(st(Ft))return!0;if(!Ft||typeof Ft!="function"&&typeof Ft!="object")return!1;try{$(Ft,null,s)}catch(dt){if(dt!==_)return!1}return!et(Ft)&&tt(Ft)}:function(Ft){if(st(Ft))return!0;if(!Ft||typeof Ft!="function"&&typeof Ft!="object")return!1;if(rt)return tt(Ft);if(et(Ft))return!1;var dt=nt.call(Ft);return!(dt!=="[object Function]"&&dt!=="[object GeneratorFunction]"&&!/^\[object HTML/.test(dt))&&tt(Ft)}},2625:(o,s,_)=>{var j,$=Object.prototype.toString,_e=Function.prototype.toString,et=/^\s*(?:function)?\*/,tt=_(1913)(),nt=Object.getPrototypeOf;o.exports=function(rt){if(typeof rt!="function")return!1;if(et.test(_e.call(rt)))return!0;if(!tt)return $.call(rt)==="[object GeneratorFunction]";if(!nt)return!1;if(j===void 0){var it=function(){if(!tt)return!1;try{return Function("return function*() {}")()}catch{}}();j=!!it&&nt(it)}return nt(rt)===j}},8006:o=>{o.exports=function(s){return s!=s}},7838:(o,s,_)=>{var j=_(8498),$=_(1857),_e=_(8006),et=_(1591),tt=_(1641),nt=j(et(),Number);$(nt,{getPolyfill:et,implementation:_e,shim:tt}),o.exports=nt},1591:(o,s,_)=>{var j=_(8006);o.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:j}},1641:(o,s,_)=>{var j=_(1857),$=_(1591);o.exports=function(){var _e=$();return j(Number,{isNaN:_e},{isNaN:function(){return Number.isNaN!==_e}}),_e}},6605:o=>{const s=_=>_!==null&&typeof _=="object"&&typeof _.pipe=="function";s.writable=_=>s(_)&&_.writable!==!1&&typeof _._write=="function"&&typeof _._writableState=="object",s.readable=_=>s(_)&&_.readable!==!1&&typeof _._read=="function"&&typeof _._readableState=="object",s.duplex=_=>s.writable(_)&&s.readable(_),s.transform=_=>s.duplex(_)&&typeof _._transform=="function",o.exports=s},5943:(o,s,_)=>{var j=_(2730);o.exports=function($){return!!j($)}},8311:(o,s,_)=>{_(3737),o.exports={encode:j=>new TextEncoder().encode(j),decode:j=>new TextDecoder().decode(j)}},8278:(o,s,_)=>{var j=_(1616);o.exports=j(function($){return $.message=" ".concat($.message),$})},8911:(o,s,_)=>{var j=s.format=_(1616);s.levels=_(3084),Object.defineProperty(j,"align",{value:_(8278)}),Object.defineProperty(j,"cli",{value:_(8877)}),Object.defineProperty(j,"colorize",{value:_(452)}),Object.defineProperty(j,"combine",{value:_(4450)}),Object.defineProperty(j,"errors",{value:_(2244)}),Object.defineProperty(j,"json",{value:_(9181)}),Object.defineProperty(j,"label",{value:_(4673)}),Object.defineProperty(j,"logstash",{value:_(372)}),Object.defineProperty(j,"metadata",{value:_(5350)}),Object.defineProperty(j,"ms",{value:_(4659)}),Object.defineProperty(j,"padLevels",{value:_(8071)}),Object.defineProperty(j,"prettyPrint",{value:_(9121)}),Object.defineProperty(j,"printf",{value:_(7016)}),Object.defineProperty(j,"simple",{value:_(205)}),Object.defineProperty(j,"splat",{value:_(2695)}),Object.defineProperty(j,"timestamp",{value:_(8215)}),Object.defineProperty(j,"uncolorize",{value:_(1083)})},8877:(o,s,_)=>{function j(Ft){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(dt){return typeof dt}:function(dt){return dt&&typeof Symbol=="function"&&dt.constructor===Symbol&&dt!==Symbol.prototype?"symbol":typeof dt})(Ft)}function $(Ft,dt){if(!(Ft instanceof dt))throw new TypeError("Cannot call a class as a function")}function _e(Ft,dt){for(var gt=0;gt0&&arguments[0]!==void 0?arguments[0]:{};$(this,Ft),Ut.levels||(Ut.levels=it.cli.levels),this.colorizer=new tt(Ut),this.padder=new nt(Ut),this.options=Ut}var dt,gt;return dt=Ft,(gt=[{key:"transform",value:function(Ut,ht){return this.colorizer.transform(this.padder.transform(Ut,ht),ht),Ut[st]="".concat(Ut.level,":").concat(Ut.message),Ut}}])&&_e(dt.prototype,gt),Object.defineProperty(dt,"prototype",{writable:!1}),Ft}();o.exports=function(Ft){return new ut(Ft)},o.exports.Format=ut},452:(o,s,_)=>{function j(Ft){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(dt){return typeof dt}:function(dt){return dt&&typeof Symbol=="function"&&dt.constructor===Symbol&&dt!==Symbol.prototype?"symbol":typeof dt})(Ft)}function $(Ft,dt){if(!(Ft instanceof dt))throw new TypeError("Cannot call a class as a function")}function _e(Ft,dt){for(var gt=0;gt0&&arguments[0]!==void 0?arguments[0]:{};$(this,Ft),ht.colors&&this.addColors(ht.colors),this.options=ht}var dt,gt,Ut;return dt=Ft,Ut=[{key:"addColors",value:function(ht){var ft=Object.keys(ht).reduce(function(pt,Rt){return pt[Rt]=st.test(ht[Rt])?ht[Rt].split(st):ht[Rt],pt},{});return Ft.allColors=Object.assign({},Ft.allColors||{},ft),Ft.allColors}}],(gt=[{key:"addColors",value:function(ht){return Ft.addColors(ht)}},{key:"colorize",value:function(ht,ft,pt){if(pt===void 0&&(pt=ft),!Array.isArray(Ft.allColors[ht]))return tt[Ft.allColors[ht]](pt);for(var Rt=0,Qt=Ft.allColors[ht].length;Rt{var j=_(1616);function $(et){if(et.every(_e))return function(tt){for(var nt=tt,rt=0;rt{function j(rt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(it){return typeof it}:function(it){return it&&typeof Symbol=="function"&&it.constructor===Symbol&&it!==Symbol.prototype?"symbol":typeof it})(rt)}function $(rt,it,st){var ut;return ut=function(Ft,dt){if(j(Ft)!="object"||!Ft)return Ft;var gt=Ft[Symbol.toPrimitive];if(gt!==void 0){var Ut=gt.call(Ft,dt||"default");if(j(Ut)!="object")return Ut;throw new TypeError("@@toPrimitive must return a primitive value.")}return(dt==="string"?String:Number)(Ft)}(it,"string"),(it=j(ut)=="symbol"?ut:String(ut))in rt?Object.defineProperty(rt,it,{value:st,enumerable:!0,configurable:!0,writable:!0}):rt[it]=st,rt}var _e=_(1616),et=_(4966),tt=et.LEVEL,nt=et.MESSAGE;o.exports=_e(function(rt,it){var st=it.stack,ut=it.cause;if(rt instanceof Error){var Ft=Object.assign({},rt,$($($({level:rt.level},tt,rt[tt]||rt.level),"message",rt.message),nt,rt[nt]||rt.message));return st&&(Ft.stack=rt.stack),ut&&(Ft.cause=rt.cause),Ft}if(!(rt.message instanceof Error))return rt;var dt=rt.message;return Object.assign(rt,dt),rt.message=dt.message,rt[nt]=dt.message,st&&(rt.stack=dt.stack),ut&&(rt.cause=dt.cause),rt})},1616:o=>{function s(it){return(s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(st){return typeof st}:function(st){return st&&typeof Symbol=="function"&&st.constructor===Symbol&&st!==Symbol.prototype?"symbol":typeof st})(it)}function _(it,st){if(st&&(s(st)==="object"||typeof st=="function"))return st;if(st!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return j(it)}function j(it){if(it===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return it}function $(it){var st=typeof Map=="function"?new Map:void 0;return($=function(ut){if(ut===null||!function(dt){try{return Function.toString.call(dt).indexOf("[native code]")!==-1}catch{return typeof dt=="function"}}(ut))return ut;if(typeof ut!="function")throw new TypeError("Super expression must either be null or a function");if(st!==void 0){if(st.has(ut))return st.get(ut);st.set(ut,Ft)}function Ft(){return _e(ut,arguments,nt(this).constructor)}return Ft.prototype=Object.create(ut.prototype,{constructor:{value:Ft,enumerable:!1,writable:!0,configurable:!0}}),tt(Ft,ut)})(it)}function _e(it,st,ut){return(_e=et()?Reflect.construct.bind():function(Ft,dt,gt){var Ut=[null];Ut.push.apply(Ut,dt);var ht=new(Function.bind.apply(Ft,Ut));return gt&&tt(ht,gt.prototype),ht}).apply(null,arguments)}function et(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function tt(it,st){return(tt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(ut,Ft){return ut.__proto__=Ft,ut})(it,st)}function nt(it){return(nt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(st){return st.__proto__||Object.getPrototypeOf(st)})(it)}var rt=function(it){(function(Ut,ht){if(typeof ht!="function"&&ht!==null)throw new TypeError("Super expression must either be null or a function");Ut.prototype=Object.create(ht&&ht.prototype,{constructor:{value:Ut,writable:!0,configurable:!0}}),Object.defineProperty(Ut,"prototype",{writable:!1}),ht&&tt(Ut,ht)})(gt,it);var st,ut,Ft,dt=(st=gt,ut=et(),function(){var Ut,ht=nt(st);if(ut){var ft=nt(this).constructor;Ut=Reflect.construct(ht,arguments,ft)}else Ut=ht.apply(this,arguments);return _(this,Ut)});function gt(Ut){var ht;return function(ft,pt){if(!(ft instanceof pt))throw new TypeError("Cannot call a class as a function")}(this,gt),ht=dt.call(this,`Format functions must be synchronous taking a two arguments: (info, opts) +Found: `.concat(Ut.toString().split(` +`)[0],` +`)),Error.captureStackTrace(j(ht),gt),ht}return Ft=gt,Object.defineProperty(Ft,"prototype",{writable:!1}),Ft}($(Error));o.exports=function(it){if(it.length>2)throw new rt(it);function st(){var Ft=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.options=Ft}function ut(Ft){return new st(Ft)}return st.prototype.transform=it,ut.Format=st,ut}},9181:(o,s,_)=>{var j=_(1616),$=_(4966).MESSAGE,_e=_(1145);function et(tt,nt){return typeof nt=="bigint"?nt.toString():nt}o.exports=j(function(tt,nt){var rt=_e.configure(nt);return tt[$]=rt(tt,nt.replacer||et,nt.space),tt})},4673:(o,s,_)=>{var j=_(1616);o.exports=j(function($,_e){return _e.message?($.message="[".concat(_e.label,"] ").concat($.message),$):($.label=_e.label,$)})},3084:(o,s,_)=>{var j=_(452).Colorizer;o.exports=function($){return j.addColors($.colors||$),$}},372:(o,s,_)=>{var j=_(1616),$=_(4966).MESSAGE,_e=_(1145);o.exports=j(function(et){var tt={};return et.message&&(tt["@message"]=et.message,delete et.message),et.timestamp&&(tt["@timestamp"]=et.timestamp,delete et.timestamp),tt["@fields"]=et,et[$]=_e(tt),et})},5350:(o,s,_)=>{function j(nt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(rt){return typeof rt}:function(rt){return rt&&typeof Symbol=="function"&&rt.constructor===Symbol&&rt!==Symbol.prototype?"symbol":typeof rt})(nt)}function $(nt,rt,it){var st;return st=function(ut,Ft){if(j(ut)!="object"||!ut)return ut;var dt=ut[Symbol.toPrimitive];if(dt!==void 0){var gt=dt.call(ut,Ft||"default");if(j(gt)!="object")return gt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Ft==="string"?String:Number)(ut)}(rt,"string"),(rt=j(st)=="symbol"?st:String(st))in nt?Object.defineProperty(nt,rt,{value:it,enumerable:!0,configurable:!0,writable:!0}):nt[rt]=it,nt}var _e=_(1616);function et(nt,rt,it){var st=rt.reduce(function(Ft,dt){return Ft[dt]=nt[dt],delete nt[dt],Ft},{}),ut=Object.keys(nt).reduce(function(Ft,dt){return Ft[dt]=nt[dt],delete nt[dt],Ft},{});return Object.assign(nt,st,$({},it,ut)),nt}function tt(nt,rt,it){return nt[it]=rt.reduce(function(st,ut){return st[ut]=nt[ut],delete nt[ut],st},{}),nt}o.exports=_e(function(nt){var rt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},it="metadata";rt.key&&(it=rt.key);var st=[];return rt.fillExcept||rt.fillWith||(st.push("level"),st.push("message")),rt.fillExcept&&(st=rt.fillExcept),st.length>0?et(nt,st,it):rt.fillWith?tt(nt,rt.fillWith,it):nt})},4659:(o,s,_)=>{var j=_(1616),$=_(7250);o.exports=j(function(_e){var et=+new Date;return(void 0).diff=et-((void 0).prevTime||et),(void 0).prevTime=et,_e.ms="+".concat($((void 0).diff)),_e})},8071:(o,s,_)=>{function j(dt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(gt){return typeof gt}:function(gt){return gt&&typeof Symbol=="function"&>.constructor===Symbol&>!==Symbol.prototype?"symbol":typeof gt})(dt)}function $(dt){return function(gt){if(Array.isArray(gt))return _e(gt)}(dt)||function(gt){if(typeof Symbol<"u"&>[Symbol.iterator]!=null||gt["@@iterator"]!=null)return Array.from(gt)}(dt)||function(gt,Ut){if(gt){if(typeof gt=="string")return _e(gt,Ut);var ht=Object.prototype.toString.call(gt).slice(8,-1);if(ht==="Object"&>.constructor&&(ht=gt.constructor.name),ht==="Map"||ht==="Set")return Array.from(gt);if(ht==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(ht))return _e(gt,Ut)}}(dt)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function _e(dt,gt){(gt==null||gt>dt.length)&&(gt=dt.length);for(var Ut=0,ht=new Array(gt);Ut0&&arguments[0]!==void 0?arguments[0]:{levels:it.npm.levels};et(this,dt),this.paddings=dt.paddingForLevels(ft.levels,ft.filler),this.options=ft}var gt,Ut,ht;return gt=dt,ht=[{key:"getLongestLevel",value:function(ft){var pt=Object.keys(ft).map(function(Rt){return Rt.length});return Math.max.apply(Math,$(pt))}},{key:"paddingForLevel",value:function(ft,pt,Rt){var Qt=Rt+1-ft.length,Nt=Math.floor(Qt/pt.length);return"".concat(pt).concat(pt.repeat(Nt)).slice(0,Qt)}},{key:"paddingForLevels",value:function(ft){var pt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:" ",Rt=dt.getLongestLevel(ft);return Object.keys(ft).reduce(function(Qt,Nt){return Qt[Nt]=dt.paddingForLevel(Nt,pt,Rt),Qt},{})}}],(Ut=[{key:"transform",value:function(ft,pt){return ft.message="".concat(this.paddings[ft[st]]).concat(ft.message),ft[ut]&&(ft[ut]="".concat(this.paddings[ft[st]]).concat(ft[ut])),ft}}])&&tt(gt.prototype,Ut),ht&&tt(gt,ht),Object.defineProperty(gt,"prototype",{writable:!1}),dt}();o.exports=function(dt){return new Ft(dt)},o.exports.Padder=o.exports.Format=Ft},9121:(o,s,_)=>{var j=_(9208).inspect,$=_(1616),_e=_(4966),et=_e.LEVEL,tt=_e.MESSAGE,nt=_e.SPLAT;o.exports=$(function(rt){var it=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},st=Object.assign({},rt);return delete st[et],delete st[tt],delete st[nt],rt[tt]=j(st,!1,it.depth||null,it.colorize),rt})},7016:(o,s,_)=>{function j(nt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(rt){return typeof rt}:function(rt){return rt&&typeof Symbol=="function"&&rt.constructor===Symbol&&rt!==Symbol.prototype?"symbol":typeof rt})(nt)}function $(nt,rt){for(var it=0;it{var j=_(1616),$=_(4966).MESSAGE,_e=_(1145);o.exports=j(function(et){var tt=_e(Object.assign({},et,{level:void 0,message:void 0,splat:void 0})),nt=et.padding&&et.padding[et.level]||"";return et[$]=tt!=="{}"?"".concat(et.level,":").concat(nt," ").concat(et.message," ").concat(tt):"".concat(et.level,":").concat(nt," ").concat(et.message),et})},2695:(o,s,_)=>{function j(Ft){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(dt){return typeof dt}:function(dt){return dt&&typeof Symbol=="function"&&dt.constructor===Symbol&&dt!==Symbol.prototype?"symbol":typeof dt})(Ft)}function $(Ft){return function(dt){if(Array.isArray(dt))return _e(dt)}(Ft)||function(dt){if(typeof Symbol<"u"&&dt[Symbol.iterator]!=null||dt["@@iterator"]!=null)return Array.from(dt)}(Ft)||function(dt,gt){if(dt){if(typeof dt=="string")return _e(dt,gt);var Ut=Object.prototype.toString.call(dt).slice(8,-1);if(Ut==="Object"&&dt.constructor&&(Ut=dt.constructor.name),Ut==="Map"||Ut==="Set")return Array.from(dt);if(Ut==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Ut))return _e(dt,gt)}}(Ft)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function _e(Ft,dt){(dt==null||dt>Ft.length)&&(dt=Ft.length);for(var gt=0,Ut=new Array(dt);gt1?ft.splice(0):ft,Qt=Rt.length;if(Qt)for(var Nt=0;Nt{var j=_(4798),$=_(1616);o.exports=$(function(_e){var et=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return et.format&&(_e.timestamp=typeof et.format=="function"?et.format():j.format(new Date,et.format)),_e.timestamp||(_e.timestamp=new Date().toISOString()),et.alias&&(_e[et.alias]=_e.timestamp),_e})},1083:(o,s,_)=>{var j=_(1158),$=_(1616),_e=_(4966).MESSAGE;o.exports=$(function(et,tt){return tt.level!==!1&&(et.level=j.strip(et.level)),tt.message!==!1&&(et.message=j.strip(String(et.message))),tt.raw!==!1&&et[_e]&&(et[_e]=j.strip(String(et[_e]))),et})},9327:o=>{class s extends Error{constructor(j){super(`Format functions must be synchronous taking a two arguments: (info, opts) +Found: ${j.toString().split(` +`)[0]} +`),Error.captureStackTrace(this,s)}}o.exports=_=>{if(_.length>2)throw new s(_);function j(_e={}){this.options=_e}function $(_e){return new j(_e)}return j.prototype.transform=_,$.Format=j,$}},2598:(o,s,_)=>{const j=_(9327),{MESSAGE:$}=_(4966),_e=_(1145);function et(tt,nt){return typeof nt=="bigint"?nt.toString():nt}o.exports=j((tt,nt)=>{const rt=_e.configure(nt);return tt[$]=rt(tt,nt.replacer||et,nt.space),tt})},8479:o=>{o.exports=Math.abs},8449:o=>{o.exports=Math.floor},2422:o=>{o.exports=Number.isNaN||function(s){return s!=s}},8129:o=>{o.exports=Math.max},2387:o=>{o.exports=Math.min},5865:o=>{o.exports=Math.pow},1319:o=>{o.exports=Math.round},6882:(o,s,_)=>{var j=_(2422);o.exports=function($){return j($)||$===0?$:$<0?-1:1}},7250:o=>{var s=1e3,_=6e4,j=60*_,$=24*j;function _e(et,tt,nt,rt){var it=tt>=1.5*nt;return Math.round(et/nt)+" "+rt+(it?"s":"")}o.exports=function(et,tt){tt=tt||{};var nt=typeof et;if(nt==="string"&&et.length>0)return function(rt){if(!((rt=String(rt)).length>100)){var it=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(rt);if(it){var st=parseFloat(it[1]);switch((it[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*st;case"weeks":case"week":case"w":return 6048e5*st;case"days":case"day":case"d":return st*$;case"hours":case"hour":case"hrs":case"hr":case"h":return st*j;case"minutes":case"minute":case"mins":case"min":case"m":return st*_;case"seconds":case"second":case"secs":case"sec":case"s":return st*s;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return st;default:return}}}}(et);if(nt==="number"&&isFinite(et))return tt.long?function(rt){var it=Math.abs(rt);return it>=$?_e(rt,it,$,"day"):it>=j?_e(rt,it,j,"hour"):it>=_?_e(rt,it,_,"minute"):it>=s?_e(rt,it,s,"second"):rt+" ms"}(et):function(rt){var it=Math.abs(rt);return it>=$?Math.round(rt/$)+"d":it>=j?Math.round(rt/j)+"h":it>=_?Math.round(rt/_)+"m":it>=s?Math.round(rt/s)+"s":rt+"ms"}(et);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(et))}},8660:(o,s,_)=>{var j=typeof Map=="function"&&Map.prototype,$=Object.getOwnPropertyDescriptor&&j?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,_e=j&&$&&typeof $.get=="function"?$.get:null,et=j&&Map.prototype.forEach,tt=typeof Set=="function"&&Set.prototype,nt=Object.getOwnPropertyDescriptor&&tt?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,rt=tt&&nt&&typeof nt.get=="function"?nt.get:null,it=tt&&Set.prototype.forEach,st=typeof WeakMap=="function"&&WeakMap.prototype?WeakMap.prototype.has:null,ut=typeof WeakSet=="function"&&WeakSet.prototype?WeakSet.prototype.has:null,Ft=typeof WeakRef=="function"&&WeakRef.prototype?WeakRef.prototype.deref:null,dt=Boolean.prototype.valueOf,gt=Object.prototype.toString,Ut=Function.prototype.toString,ht=String.prototype.match,ft=String.prototype.slice,pt=String.prototype.replace,Rt=String.prototype.toUpperCase,Qt=String.prototype.toLowerCase,Nt=RegExp.prototype.test,At=Array.prototype.concat,kt=Array.prototype.join,Bt=Array.prototype.slice,jt=Math.floor,vt=typeof BigInt=="function"?BigInt.prototype.valueOf:null,mt=Object.getOwnPropertySymbols,yt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Vt=typeof Symbol=="function"&&typeof Symbol.iterator=="object",wt=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Vt||"symbol")?Symbol.toStringTag:null,Et=Object.prototype.propertyIsEnumerable,Jt=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(Zt){return Zt.__proto__}:null);function Pt(Zt,Ot){if(Zt===1/0||Zt===-1/0||Zt!=Zt||Zt&&Zt>-1e3&&Zt<1e3||Nt.call(/e/,Ot))return Ot;var sn=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof Zt=="number"){var ln=Zt<0?-jt(-Zt):jt(Zt);if(ln!==Zt){var cn=String(ln),fn=ft.call(Ot,cn.length+1);return pt.call(cn,sn,"$&_")+"."+pt.call(pt.call(fn,/([0-9]{3})/g,"$&_"),/_$/,"")}}return pt.call(Ot,sn,"$&_")}var Yt=_(6973),Mt=Yt.custom,zt=$t(Mt)?Mt:null;function qt(Zt,Ot,sn){var ln=(sn.quoteStyle||Ot)==="double"?'"':"'";return ln+Zt+ln}function Xt(Zt){return pt.call(String(Zt),/"/g,""")}function xt(Zt){return!(an(Zt)!=="[object Array]"||wt&&typeof Zt=="object"&&wt in Zt)}function It(Zt){return!(an(Zt)!=="[object RegExp]"||wt&&typeof Zt=="object"&&wt in Zt)}function $t(Zt){if(Vt)return Zt&&typeof Zt=="object"&&Zt instanceof Symbol;if(typeof Zt=="symbol")return!0;if(!Zt||typeof Zt!="object"||!yt)return!1;try{return yt.call(Zt),!0}catch{}return!1}o.exports=function Zt(Ot,sn,ln,cn){var fn=sn||{};if(tn(fn,"quoteStyle")&&fn.quoteStyle!=="single"&&fn.quoteStyle!=="double")throw new TypeError('option "quoteStyle" must be "single" or "double"');if(tn(fn,"maxStringLength")&&(typeof fn.maxStringLength=="number"?fn.maxStringLength<0&&fn.maxStringLength!==1/0:fn.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var _n=!tn(fn,"customInspect")||fn.customInspect;if(typeof _n!="boolean"&&_n!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(tn(fn,"indent")&&fn.indent!==null&&fn.indent!==" "&&!(parseInt(fn.indent,10)===fn.indent&&fn.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(tn(fn,"numericSeparator")&&typeof fn.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var On=fn.numericSeparator;if(Ot===void 0)return"undefined";if(Ot===null)return"null";if(typeof Ot=="boolean")return Ot?"true":"false";if(typeof Ot=="string")return function In(wr,Zr){if(wr.length>Zr.maxStringLength){var io=wr.length-Zr.maxStringLength,bo="... "+io+" more character"+(io>1?"s":"");return In(ft.call(wr,0,Zr.maxStringLength),Zr)+bo}return qt(pt.call(pt.call(wr,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,Un),"single",Zr)}(Ot,fn);if(typeof Ot=="number"){if(Ot===0)return 1/0/Ot>0?"0":"-0";var xn=String(Ot);return On?Pt(Ot,xn):xn}if(typeof Ot=="bigint"){var Ln=String(Ot)+"n";return On?Pt(Ot,Ln):Ln}var Pn=fn.depth===void 0?5:fn.depth;if(ln===void 0&&(ln=0),ln>=Pn&&Pn>0&&typeof Ot=="object")return xt(Ot)?"[Array]":"[Object]";var Er=function(In,wr){var Zr;if(In.indent===" ")Zr=" ";else{if(!(typeof In.indent=="number"&&In.indent>0))return null;Zr=kt.call(Array(In.indent+1)," ")}return{base:Zr,prev:kt.call(Array(wr+1),Zr)}}(fn,ln);if(cn===void 0)cn=[];else if(Kt(cn,Ot)>=0)return"[Circular]";function tr(In,wr,Zr){if(wr&&(cn=Bt.call(cn)).push(wr),Zr){var io={depth:fn.depth};return tn(fn,"quoteStyle")&&(io.quoteStyle=fn.quoteStyle),Zt(In,io,ln+1,cn)}return Zt(In,fn,ln+1,cn)}if(typeof Ot=="function"&&!It(Ot)){var zr=function(In){if(In.name)return In.name;var wr=ht.call(Ut.call(In),/^function\s*([\w$]+)/);return wr?wr[1]:null}(Ot),xr=Tt(Ot,tr);return"[Function"+(zr?": "+zr:" (anonymous)")+"]"+(xr.length>0?" { "+kt.call(xr,", ")+" }":"")}if($t(Ot)){var Kr=Vt?pt.call(String(Ot),/^(Symbol\(.*\))_[^)]*$/,"$1"):yt.call(Ot);return typeof Ot!="object"||Vt?Kr:Bn(Kr)}if(function(In){return!In||typeof In!="object"?!1:typeof HTMLElement<"u"&&In instanceof HTMLElement?!0:typeof In.nodeName=="string"&&typeof In.getAttribute=="function"}(Ot)){for(var Gr="<"+Qt.call(String(Ot.nodeName)),Lo=Ot.attributes||[],oo=0;oo"}if(xt(Ot)){if(Ot.length===0)return"[]";var eo=Tt(Ot,tr);return Er&&!function(In){for(var wr=0;wr=0)return!1;return!0}(eo)?"["+Cn(eo,Er)+"]":"[ "+kt.call(eo,", ")+" ]"}if(function(In){return!(an(In)!=="[object Error]"||wt&&typeof In=="object"&&wt in In)}(Ot)){var Uo=Tt(Ot,tr);return"cause"in Error.prototype||!("cause"in Ot)||Et.call(Ot,"cause")?Uo.length===0?"["+String(Ot)+"]":"{ ["+String(Ot)+"] "+kt.call(Uo,", ")+" }":"{ ["+String(Ot)+"] "+kt.call(At.call("[cause]: "+tr(Ot.cause),Uo),", ")+" }"}if(typeof Ot=="object"&&_n){if(zt&&typeof Ot[zt]=="function"&&Yt)return Yt(Ot,{depth:Pn-ln});if(_n!=="symbol"&&typeof Ot.inspect=="function")return Ot.inspect()}if(function(In){if(!_e||!In||typeof In!="object")return!1;try{_e.call(In);try{rt.call(In)}catch{return!0}return In instanceof Map}catch{}return!1}(Ot)){var Fs=[];return et&&et.call(Ot,function(In,wr){Fs.push(tr(wr,Ot,!0)+" => "+tr(In,Ot))}),En("Map",_e.call(Ot),Fs,Er)}if(function(In){if(!rt||!In||typeof In!="object")return!1;try{rt.call(In);try{_e.call(In)}catch{return!0}return In instanceof Set}catch{}return!1}(Ot)){var _o=[];return it&&it.call(Ot,function(In){_o.push(tr(In,Ot))}),En("Set",rt.call(Ot),_o,Er)}if(function(In){if(!st||!In||typeof In!="object")return!1;try{st.call(In,st);try{ut.call(In,ut)}catch{return!0}return In instanceof WeakMap}catch{}return!1}(Ot))return hn("WeakMap");if(function(In){if(!ut||!In||typeof In!="object")return!1;try{ut.call(In,ut);try{st.call(In,st)}catch{return!0}return In instanceof WeakSet}catch{}return!1}(Ot))return hn("WeakSet");if(function(In){if(!Ft||!In||typeof In!="object")return!1;try{return Ft.call(In),!0}catch{}return!1}(Ot))return hn("WeakRef");if(function(In){return!(an(In)!=="[object Number]"||wt&&typeof In=="object"&&wt in In)}(Ot))return Bn(tr(Number(Ot)));if(function(In){if(!In||typeof In!="object"||!vt)return!1;try{return vt.call(In),!0}catch{}return!1}(Ot))return Bn(tr(vt.call(Ot)));if(function(In){return!(an(In)!=="[object Boolean]"||wt&&typeof In=="object"&&wt in In)}(Ot))return Bn(dt.call(Ot));if(function(In){return!(an(In)!=="[object String]"||wt&&typeof In=="object"&&wt in In)}(Ot))return Bn(tr(String(Ot)));if(typeof window<"u"&&Ot===window)return"{ [object Window] }";if(typeof globalThis<"u"&&Ot===globalThis||_.g!==void 0&&Ot===_.g)return"{ [object globalThis] }";if(!function(In){return!(an(In)!=="[object Date]"||wt&&typeof In=="object"&&wt in In)}(Ot)&&!It(Ot)){var Po=Tt(Ot,tr),Ko=Jt?Jt(Ot)===Object.prototype:Ot instanceof Object||Ot.constructor===Object,Eo=Ot instanceof Object?"":"null prototype",Bo=!Ko&&wt&&Object(Ot)===Ot&&wt in Ot?ft.call(an(Ot),8,-1):Eo?"Object":"",Co=(Ko||typeof Ot.constructor!="function"?"":Ot.constructor.name?Ot.constructor.name+" ":"")+(Bo||Eo?"["+kt.call(At.call([],Bo||[],Eo||[]),": ")+"] ":"");return Po.length===0?Co+"{}":Er?Co+"{"+Cn(Po,Er)+"}":Co+"{ "+kt.call(Po,", ")+" }"}return String(Ot)};var un=Object.prototype.hasOwnProperty||function(Zt){return Zt in this};function tn(Zt,Ot){return un.call(Zt,Ot)}function an(Zt){return gt.call(Zt)}function Kt(Zt,Ot){if(Zt.indexOf)return Zt.indexOf(Ot);for(var sn=0,ln=Zt.length;sn{var s=function(_){return _!=_};o.exports=function(_,j){return _===0&&j===0?1/_==1/j:_===j||!(!s(_)||!s(j))}},5968:(o,s,_)=>{var j=_(1857),$=_(8498),_e=_(2372),et=_(1937),tt=_(5087),nt=$(et(),Object);j(nt,{getPolyfill:et,implementation:_e,shim:tt}),o.exports=nt},1937:(o,s,_)=>{var j=_(2372);o.exports=function(){return typeof Object.is=="function"?Object.is:j}},5087:(o,s,_)=>{var j=_(1937),$=_(1857);o.exports=function(){var _e=j();return $(Object,{is:_e},{is:function(){return Object.is!==_e}}),_e}},8160:(o,s,_)=>{var j;if(!Object.keys){var $=Object.prototype.hasOwnProperty,_e=Object.prototype.toString,et=_(968),tt=Object.prototype.propertyIsEnumerable,nt=!tt.call({toString:null},"toString"),rt=tt.call(function(){},"prototype"),it=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],st=function(dt){var gt=dt.constructor;return gt&>.prototype===dt},ut={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},Ft=function(){if(typeof window>"u")return!1;for(var dt in window)try{if(!ut["$"+dt]&&$.call(window,dt)&&window[dt]!==null&&typeof window[dt]=="object")try{st(window[dt])}catch{return!0}}catch{return!0}return!1}();j=function(dt){var gt=dt!==null&&typeof dt=="object",Ut=_e.call(dt)==="[object Function]",ht=et(dt),ft=gt&&_e.call(dt)==="[object String]",pt=[];if(!gt&&!Ut&&!ht)throw new TypeError("Object.keys called on a non-object");var Rt=rt&&Ut;if(ft&&dt.length>0&&!$.call(dt,0))for(var Qt=0;Qt0)for(var Nt=0;Nt"u"||!Ft)return st(jt);try{return st(jt)}catch{return!1}}(dt),Bt=0;Bt{var j=Array.prototype.slice,$=_(968),_e=Object.keys,et=_e?function(nt){return _e(nt)}:_(8160),tt=Object.keys;et.shim=function(){return Object.keys?function(){var nt=Object.keys(arguments);return nt&&nt.length===arguments.length}(1,2)||(Object.keys=function(nt){return $(nt)?tt(j.call(nt)):tt(nt)}):Object.keys=et,Object.keys||et},o.exports=et},968:o=>{var s=Object.prototype.toString;o.exports=function(_){var j=s.call(_),$=j==="[object Arguments]";return $||($=j!=="[object Array]"&&_!==null&&typeof _=="object"&&typeof _.length=="number"&&_.length>=0&&s.call(_.callee)==="[object Function]"),$}},5164:(o,s,_)=>{var j=_(9228),$=_(2908)(),_e=_(9818),et=Object,tt=_e("Array.prototype.push"),nt=_e("Object.prototype.propertyIsEnumerable"),rt=$?Object.getOwnPropertySymbols:null;o.exports=function(it,st){if(it==null)throw new TypeError("target must be an object");var ut=et(it);if(arguments.length===1)return ut;for(var Ft=1;Ft{var j=_(5164);o.exports=function(){return Object.assign?function(){if(!Object.assign)return!1;for(var $="abcdefghijklmnopqrst",_e=$.split(""),et={},tt=0;tt<_e.length;++tt)et[_e[tt]]=_e[tt];var nt=Object.assign({},et),rt="";for(var it in nt)rt+=it;return $!==rt}()||function(){if(!Object.assign||!Object.preventExtensions)return!1;var $=Object.preventExtensions({1:2});try{Object.assign($,"xy")}catch{return $[1]==="y"}return!1}()?j:Object.assign:j}},960:(o,s,_)=>{var j=_(9827);o.exports=function($){var _e,et=0;function tt(){return et||(et=1,_e=$.apply(this,arguments),$=null),_e}return tt.displayName=j($),tt}},2213:(o,s)=>{s.endianness=function(){return"LE"},s.hostname=function(){return typeof location<"u"?location.hostname:""},s.loadavg=function(){return[]},s.uptime=function(){return 0},s.freemem=function(){return Number.MAX_VALUE},s.totalmem=function(){return Number.MAX_VALUE},s.cpus=function(){return[]},s.type=function(){return"Browser"},s.release=function(){return typeof navigator<"u"?navigator.appVersion:""},s.networkInterfaces=s.getNetworkInterfaces=function(){return{}},s.arch=function(){return"javascript"},s.platform=function(){return"browser"},s.tmpdir=s.tmpDir=function(){return"/tmp"},s.EOL=` +`,s.homedir=function(){return"/"}},1824:(o,s)=>{var _=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function j(et,tt){return Object.prototype.hasOwnProperty.call(et,tt)}s.assign=function(et){for(var tt=Array.prototype.slice.call(arguments,1);tt.length;){var nt=tt.shift();if(nt){if(typeof nt!="object")throw new TypeError(nt+"must be non-object");for(var rt in nt)j(nt,rt)&&(et[rt]=nt[rt])}}return et},s.shrinkBuf=function(et,tt){return et.length===tt?et:et.subarray?et.subarray(0,tt):(et.length=tt,et)};var $={arraySet:function(et,tt,nt,rt,it){if(tt.subarray&&et.subarray)et.set(tt.subarray(nt,nt+rt),it);else for(var st=0;st{o.exports=function(s,_,j,$){for(var _e=65535&s|0,et=s>>>16&65535|0,tt=0;j!==0;){j-=tt=j>2e3?2e3:j;do et=et+(_e=_e+_[$++]|0)|0;while(--tt);_e%=65521,et%=65521}return _e|et<<16|0}},7200:o=>{o.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},2506:o=>{var s=function(){for(var _,j=[],$=0;$<256;$++){_=$;for(var _e=0;_e<8;_e++)_=1&_?3988292384^_>>>1:_>>>1;j[$]=_}return j}();o.exports=function(_,j,$,_e){var et=s,tt=_e+$;_^=-1;for(var nt=_e;nt>>8^et[255&(_^j[nt])];return-1^_}},6446:(o,s,_)=>{var j,$=_(1824),_e=_(9708),et=_(6904),tt=_(2506),nt=_(2817);function rt(Bt,jt){return Bt.msg=nt[jt],jt}function it(Bt){return(Bt<<1)-(Bt>4?9:0)}function st(Bt){for(var jt=Bt.length;--jt>=0;)Bt[jt]=0}function ut(Bt){var jt=Bt.state,vt=jt.pending;vt>Bt.avail_out&&(vt=Bt.avail_out),vt!==0&&($.arraySet(Bt.output,jt.pending_buf,jt.pending_out,vt,Bt.next_out),Bt.next_out+=vt,jt.pending_out+=vt,Bt.total_out+=vt,Bt.avail_out-=vt,jt.pending-=vt,jt.pending===0&&(jt.pending_out=0))}function Ft(Bt,jt){_e._tr_flush_block(Bt,Bt.block_start>=0?Bt.block_start:-1,Bt.strstart-Bt.block_start,jt),Bt.block_start=Bt.strstart,ut(Bt.strm)}function dt(Bt,jt){Bt.pending_buf[Bt.pending++]=jt}function gt(Bt,jt){Bt.pending_buf[Bt.pending++]=jt>>>8&255,Bt.pending_buf[Bt.pending++]=255&jt}function Ut(Bt,jt){var vt,mt,yt=Bt.max_chain_length,Vt=Bt.strstart,wt=Bt.prev_length,Et=Bt.nice_match,Jt=Bt.strstart>Bt.w_size-262?Bt.strstart-(Bt.w_size-262):0,Pt=Bt.window,Yt=Bt.w_mask,Mt=Bt.prev,zt=Bt.strstart+258,qt=Pt[Vt+wt-1],Xt=Pt[Vt+wt];Bt.prev_length>=Bt.good_match&&(yt>>=2),Et>Bt.lookahead&&(Et=Bt.lookahead);do if(Pt[(vt=jt)+wt]===Xt&&Pt[vt+wt-1]===qt&&Pt[vt]===Pt[Vt]&&Pt[++vt]===Pt[Vt+1]){Vt+=2,vt++;do;while(Pt[++Vt]===Pt[++vt]&&Pt[++Vt]===Pt[++vt]&&Pt[++Vt]===Pt[++vt]&&Pt[++Vt]===Pt[++vt]&&Pt[++Vt]===Pt[++vt]&&Pt[++Vt]===Pt[++vt]&&Pt[++Vt]===Pt[++vt]&&Pt[++Vt]===Pt[++vt]&&Vtwt){if(Bt.match_start=jt,wt=mt,mt>=Et)break;qt=Pt[Vt+wt-1],Xt=Pt[Vt+wt]}}while((jt=Mt[jt&Yt])>Jt&&--yt!=0);return wt<=Bt.lookahead?wt:Bt.lookahead}function ht(Bt){var jt,vt,mt,yt,Vt,wt,Et,Jt,Pt,Yt,Mt=Bt.w_size;do{if(yt=Bt.window_size-Bt.lookahead-Bt.strstart,Bt.strstart>=Mt+(Mt-262)){$.arraySet(Bt.window,Bt.window,Mt,Mt,0),Bt.match_start-=Mt,Bt.strstart-=Mt,Bt.block_start-=Mt,jt=vt=Bt.hash_size;do mt=Bt.head[--jt],Bt.head[jt]=mt>=Mt?mt-Mt:0;while(--vt);jt=vt=Mt;do mt=Bt.prev[--jt],Bt.prev[jt]=mt>=Mt?mt-Mt:0;while(--vt);yt+=Mt}if(Bt.strm.avail_in===0)break;if(wt=Bt.strm,Et=Bt.window,Jt=Bt.strstart+Bt.lookahead,Pt=yt,Yt=void 0,(Yt=wt.avail_in)>Pt&&(Yt=Pt),vt=Yt===0?0:(wt.avail_in-=Yt,$.arraySet(Et,wt.input,wt.next_in,Yt,Jt),wt.state.wrap===1?wt.adler=et(wt.adler,Et,Yt,Jt):wt.state.wrap===2&&(wt.adler=tt(wt.adler,Et,Yt,Jt)),wt.next_in+=Yt,wt.total_in+=Yt,Yt),Bt.lookahead+=vt,Bt.lookahead+Bt.insert>=3)for(Vt=Bt.strstart-Bt.insert,Bt.ins_h=Bt.window[Vt],Bt.ins_h=(Bt.ins_h<=3&&(Bt.ins_h=(Bt.ins_h<=3)if(mt=_e._tr_tally(Bt,Bt.strstart-Bt.match_start,Bt.match_length-3),Bt.lookahead-=Bt.match_length,Bt.match_length<=Bt.max_lazy_match&&Bt.lookahead>=3){Bt.match_length--;do Bt.strstart++,Bt.ins_h=(Bt.ins_h<=3&&(Bt.ins_h=(Bt.ins_h<4096)&&(Bt.match_length=2)),Bt.prev_length>=3&&Bt.match_length<=Bt.prev_length){yt=Bt.strstart+Bt.lookahead-3,mt=_e._tr_tally(Bt,Bt.strstart-1-Bt.prev_match,Bt.prev_length-3),Bt.lookahead-=Bt.prev_length-1,Bt.prev_length-=2;do++Bt.strstart<=yt&&(Bt.ins_h=(Bt.ins_h<15&&(wt=2,mt-=16),yt<1||yt>9||vt!==8||mt<8||mt>15||jt<0||jt>9||Vt<0||Vt>4)return rt(Bt,-2);mt===8&&(mt=9);var Et=new Qt;return Bt.state=Et,Et.strm=Bt,Et.wrap=wt,Et.gzhead=null,Et.w_bits=mt,Et.w_size=1<Bt.pending_buf_size-5&&(vt=Bt.pending_buf_size-5);;){if(Bt.lookahead<=1){if(ht(Bt),Bt.lookahead===0&&jt===0)return 1;if(Bt.lookahead===0)break}Bt.strstart+=Bt.lookahead,Bt.lookahead=0;var mt=Bt.block_start+vt;if((Bt.strstart===0||Bt.strstart>=mt)&&(Bt.lookahead=Bt.strstart-mt,Bt.strstart=mt,Ft(Bt,!1),Bt.strm.avail_out===0)||Bt.strstart-Bt.block_start>=Bt.w_size-262&&(Ft(Bt,!1),Bt.strm.avail_out===0))return 1}return Bt.insert=0,jt===4?(Ft(Bt,!0),Bt.strm.avail_out===0?3:4):(Bt.strstart>Bt.block_start&&(Ft(Bt,!1),Bt.strm.avail_out),1)}),new Rt(4,4,8,4,ft),new Rt(4,5,16,8,ft),new Rt(4,6,32,32,ft),new Rt(4,4,16,16,pt),new Rt(8,16,32,32,pt),new Rt(8,16,128,128,pt),new Rt(8,32,128,256,pt),new Rt(32,128,258,1024,pt),new Rt(32,258,258,4096,pt)],s.deflateInit=function(Bt,jt){return kt(Bt,jt,8,15,8,0)},s.deflateInit2=kt,s.deflateReset=At,s.deflateResetKeep=Nt,s.deflateSetHeader=function(Bt,jt){return Bt&&Bt.state?Bt.state.wrap!==2?-2:(Bt.state.gzhead=jt,0):-2},s.deflate=function(Bt,jt){var vt,mt,yt,Vt;if(!Bt||!Bt.state||jt>5||jt<0)return Bt?rt(Bt,-2):-2;if(mt=Bt.state,!Bt.output||!Bt.input&&Bt.avail_in!==0||mt.status===666&&jt!==4)return rt(Bt,Bt.avail_out===0?-5:-2);if(mt.strm=Bt,vt=mt.last_flush,mt.last_flush=jt,mt.status===42)if(mt.wrap===2)Bt.adler=0,dt(mt,31),dt(mt,139),dt(mt,8),mt.gzhead?(dt(mt,(mt.gzhead.text?1:0)+(mt.gzhead.hcrc?2:0)+(mt.gzhead.extra?4:0)+(mt.gzhead.name?8:0)+(mt.gzhead.comment?16:0)),dt(mt,255&mt.gzhead.time),dt(mt,mt.gzhead.time>>8&255),dt(mt,mt.gzhead.time>>16&255),dt(mt,mt.gzhead.time>>24&255),dt(mt,mt.level===9?2:mt.strategy>=2||mt.level<2?4:0),dt(mt,255&mt.gzhead.os),mt.gzhead.extra&&mt.gzhead.extra.length&&(dt(mt,255&mt.gzhead.extra.length),dt(mt,mt.gzhead.extra.length>>8&255)),mt.gzhead.hcrc&&(Bt.adler=tt(Bt.adler,mt.pending_buf,mt.pending,0)),mt.gzindex=0,mt.status=69):(dt(mt,0),dt(mt,0),dt(mt,0),dt(mt,0),dt(mt,0),dt(mt,mt.level===9?2:mt.strategy>=2||mt.level<2?4:0),dt(mt,3),mt.status=113);else{var wt=8+(mt.w_bits-8<<4)<<8;wt|=(mt.strategy>=2||mt.level<2?0:mt.level<6?1:mt.level===6?2:3)<<6,mt.strstart!==0&&(wt|=32),wt+=31-wt%31,mt.status=113,gt(mt,wt),mt.strstart!==0&&(gt(mt,Bt.adler>>>16),gt(mt,65535&Bt.adler)),Bt.adler=1}if(mt.status===69)if(mt.gzhead.extra){for(yt=mt.pending;mt.gzindex<(65535&mt.gzhead.extra.length)&&(mt.pending!==mt.pending_buf_size||(mt.gzhead.hcrc&&mt.pending>yt&&(Bt.adler=tt(Bt.adler,mt.pending_buf,mt.pending-yt,yt)),ut(Bt),yt=mt.pending,mt.pending!==mt.pending_buf_size));)dt(mt,255&mt.gzhead.extra[mt.gzindex]),mt.gzindex++;mt.gzhead.hcrc&&mt.pending>yt&&(Bt.adler=tt(Bt.adler,mt.pending_buf,mt.pending-yt,yt)),mt.gzindex===mt.gzhead.extra.length&&(mt.gzindex=0,mt.status=73)}else mt.status=73;if(mt.status===73)if(mt.gzhead.name){yt=mt.pending;do{if(mt.pending===mt.pending_buf_size&&(mt.gzhead.hcrc&&mt.pending>yt&&(Bt.adler=tt(Bt.adler,mt.pending_buf,mt.pending-yt,yt)),ut(Bt),yt=mt.pending,mt.pending===mt.pending_buf_size)){Vt=1;break}Vt=mt.gzindexyt&&(Bt.adler=tt(Bt.adler,mt.pending_buf,mt.pending-yt,yt)),Vt===0&&(mt.gzindex=0,mt.status=91)}else mt.status=91;if(mt.status===91)if(mt.gzhead.comment){yt=mt.pending;do{if(mt.pending===mt.pending_buf_size&&(mt.gzhead.hcrc&&mt.pending>yt&&(Bt.adler=tt(Bt.adler,mt.pending_buf,mt.pending-yt,yt)),ut(Bt),yt=mt.pending,mt.pending===mt.pending_buf_size)){Vt=1;break}Vt=mt.gzindexyt&&(Bt.adler=tt(Bt.adler,mt.pending_buf,mt.pending-yt,yt)),Vt===0&&(mt.status=103)}else mt.status=103;if(mt.status===103&&(mt.gzhead.hcrc?(mt.pending+2>mt.pending_buf_size&&ut(Bt),mt.pending+2<=mt.pending_buf_size&&(dt(mt,255&Bt.adler),dt(mt,Bt.adler>>8&255),Bt.adler=0,mt.status=113)):mt.status=113),mt.pending!==0){if(ut(Bt),Bt.avail_out===0)return mt.last_flush=-1,0}else if(Bt.avail_in===0&&it(jt)<=it(vt)&&jt!==4)return rt(Bt,-5);if(mt.status===666&&Bt.avail_in!==0)return rt(Bt,-5);if(Bt.avail_in!==0||mt.lookahead!==0||jt!==0&&mt.status!==666){var Et=mt.strategy===2?function(Jt,Pt){for(var Yt;;){if(Jt.lookahead===0&&(ht(Jt),Jt.lookahead===0)){if(Pt===0)return 1;break}if(Jt.match_length=0,Yt=_e._tr_tally(Jt,0,Jt.window[Jt.strstart]),Jt.lookahead--,Jt.strstart++,Yt&&(Ft(Jt,!1),Jt.strm.avail_out===0))return 1}return Jt.insert=0,Pt===4?(Ft(Jt,!0),Jt.strm.avail_out===0?3:4):Jt.last_lit&&(Ft(Jt,!1),Jt.strm.avail_out===0)?1:2}(mt,jt):mt.strategy===3?function(Jt,Pt){for(var Yt,Mt,zt,qt,Xt=Jt.window;;){if(Jt.lookahead<=258){if(ht(Jt),Jt.lookahead<=258&&Pt===0)return 1;if(Jt.lookahead===0)break}if(Jt.match_length=0,Jt.lookahead>=3&&Jt.strstart>0&&(Mt=Xt[zt=Jt.strstart-1])===Xt[++zt]&&Mt===Xt[++zt]&&Mt===Xt[++zt]){qt=Jt.strstart+258;do;while(Mt===Xt[++zt]&&Mt===Xt[++zt]&&Mt===Xt[++zt]&&Mt===Xt[++zt]&&Mt===Xt[++zt]&&Mt===Xt[++zt]&&Mt===Xt[++zt]&&Mt===Xt[++zt]&&ztJt.lookahead&&(Jt.match_length=Jt.lookahead)}if(Jt.match_length>=3?(Yt=_e._tr_tally(Jt,1,Jt.match_length-3),Jt.lookahead-=Jt.match_length,Jt.strstart+=Jt.match_length,Jt.match_length=0):(Yt=_e._tr_tally(Jt,0,Jt.window[Jt.strstart]),Jt.lookahead--,Jt.strstart++),Yt&&(Ft(Jt,!1),Jt.strm.avail_out===0))return 1}return Jt.insert=0,Pt===4?(Ft(Jt,!0),Jt.strm.avail_out===0?3:4):Jt.last_lit&&(Ft(Jt,!1),Jt.strm.avail_out===0)?1:2}(mt,jt):j[mt.level].func(mt,jt);if(Et!==3&&Et!==4||(mt.status=666),Et===1||Et===3)return Bt.avail_out===0&&(mt.last_flush=-1),0;if(Et===2&&(jt===1?_e._tr_align(mt):jt!==5&&(_e._tr_stored_block(mt,0,0,!1),jt===3&&(st(mt.head),mt.lookahead===0&&(mt.strstart=0,mt.block_start=0,mt.insert=0))),ut(Bt),Bt.avail_out===0))return mt.last_flush=-1,0}return jt!==4?0:mt.wrap<=0?1:(mt.wrap===2?(dt(mt,255&Bt.adler),dt(mt,Bt.adler>>8&255),dt(mt,Bt.adler>>16&255),dt(mt,Bt.adler>>24&255),dt(mt,255&Bt.total_in),dt(mt,Bt.total_in>>8&255),dt(mt,Bt.total_in>>16&255),dt(mt,Bt.total_in>>24&255)):(gt(mt,Bt.adler>>>16),gt(mt,65535&Bt.adler)),ut(Bt),mt.wrap>0&&(mt.wrap=-mt.wrap),mt.pending!==0?0:1)},s.deflateEnd=function(Bt){var jt;return Bt&&Bt.state?(jt=Bt.state.status)!==42&&jt!==69&&jt!==73&&jt!==91&&jt!==103&&jt!==113&&jt!==666?rt(Bt,-2):(Bt.state=null,jt===113?rt(Bt,-3):0):-2},s.deflateSetDictionary=function(Bt,jt){var vt,mt,yt,Vt,wt,Et,Jt,Pt,Yt=jt.length;if(!Bt||!Bt.state||(Vt=(vt=Bt.state).wrap)===2||Vt===1&&vt.status!==42||vt.lookahead)return-2;for(Vt===1&&(Bt.adler=et(Bt.adler,jt,Yt,0)),vt.wrap=0,Yt>=vt.w_size&&(Vt===0&&(st(vt.head),vt.strstart=0,vt.block_start=0,vt.insert=0),Pt=new $.Buf8(vt.w_size),$.arraySet(Pt,jt,Yt-vt.w_size,vt.w_size,0),jt=Pt,Yt=vt.w_size),wt=Bt.avail_in,Et=Bt.next_in,Jt=Bt.input,Bt.avail_in=Yt,Bt.next_in=0,Bt.input=jt,ht(vt);vt.lookahead>=3;){mt=vt.strstart,yt=vt.lookahead-2;do vt.ins_h=(vt.ins_h<{o.exports=function(s,_){var j,$,_e,et,tt,nt,rt,it,st,ut,Ft,dt,gt,Ut,ht,ft,pt,Rt,Qt,Nt,At,kt,Bt,jt,vt;j=s.state,$=s.next_in,jt=s.input,_e=$+(s.avail_in-5),et=s.next_out,vt=s.output,tt=et-(_-s.avail_out),nt=et+(s.avail_out-257),rt=j.dmax,it=j.wsize,st=j.whave,ut=j.wnext,Ft=j.window,dt=j.hold,gt=j.bits,Ut=j.lencode,ht=j.distcode,ft=(1<>>=Qt=Rt>>>24,gt-=Qt,(Qt=Rt>>>16&255)===0)vt[et++]=65535&Rt;else{if(!(16&Qt)){if(!(64&Qt)){Rt=Ut[(65535&Rt)+(dt&(1<>>=Qt,gt-=Qt),gt<15&&(dt+=jt[$++]<>>=Qt=Rt>>>24,gt-=Qt,!(16&(Qt=Rt>>>16&255))){if(!(64&Qt)){Rt=ht[(65535&Rt)+(dt&(1<rt){s.msg="invalid distance too far back",j.mode=30;break e}if(dt>>>=Qt,gt-=Qt,At>(Qt=et-tt)){if((Qt=At-Qt)>st&&j.sane){s.msg="invalid distance too far back",j.mode=30;break e}if(kt=0,Bt=Ft,ut===0){if(kt+=it-Qt,Qt2;)vt[et++]=Bt[kt++],vt[et++]=Bt[kt++],vt[et++]=Bt[kt++],Nt-=3;Nt&&(vt[et++]=Bt[kt++],Nt>1&&(vt[et++]=Bt[kt++]))}else{kt=et-At;do vt[et++]=vt[kt++],vt[et++]=vt[kt++],vt[et++]=vt[kt++],Nt-=3;while(Nt>2);Nt&&(vt[et++]=vt[kt++],Nt>1&&(vt[et++]=vt[kt++]))}break}}break}}while($<_e&&et>3,dt&=(1<<(gt-=Nt<<3))-1,s.next_in=$,s.next_out=et,s.avail_in=$<_e?_e-$+5:5-($-_e),s.avail_out=et{var j=_(1824),$=_(6904),_e=_(2506),et=_(2128),tt=_(9673);function nt(pt){return(pt>>>24&255)+(pt>>>8&65280)+((65280&pt)<<8)+((255&pt)<<24)}function rt(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new j.Buf16(320),this.work=new j.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function it(pt){var Rt;return pt&&pt.state?(Rt=pt.state,pt.total_in=pt.total_out=Rt.total=0,pt.msg="",Rt.wrap&&(pt.adler=1&Rt.wrap),Rt.mode=1,Rt.last=0,Rt.havedict=0,Rt.dmax=32768,Rt.head=null,Rt.hold=0,Rt.bits=0,Rt.lencode=Rt.lendyn=new j.Buf32(852),Rt.distcode=Rt.distdyn=new j.Buf32(592),Rt.sane=1,Rt.back=-1,0):-2}function st(pt){var Rt;return pt&&pt.state?((Rt=pt.state).wsize=0,Rt.whave=0,Rt.wnext=0,it(pt)):-2}function ut(pt,Rt){var Qt,Nt;return pt&&pt.state?(Nt=pt.state,Rt<0?(Qt=0,Rt=-Rt):(Qt=1+(Rt>>4),Rt<48&&(Rt&=15)),Rt&&(Rt<8||Rt>15)?-2:(Nt.window!==null&&Nt.wbits!==Rt&&(Nt.window=null),Nt.wrap=Qt,Nt.wbits=Rt,st(pt))):-2}function Ft(pt,Rt){var Qt,Nt;return pt?(Nt=new rt,pt.state=Nt,Nt.window=null,(Qt=ut(pt,Rt))!==0&&(pt.state=null),Qt):-2}var dt,gt,Ut=!0;function ht(pt){if(Ut){var Rt;for(dt=new j.Buf32(512),gt=new j.Buf32(32),Rt=0;Rt<144;)pt.lens[Rt++]=8;for(;Rt<256;)pt.lens[Rt++]=9;for(;Rt<280;)pt.lens[Rt++]=7;for(;Rt<288;)pt.lens[Rt++]=8;for(tt(1,pt.lens,0,288,dt,0,pt.work,{bits:9}),Rt=0;Rt<32;)pt.lens[Rt++]=5;tt(2,pt.lens,0,32,gt,0,pt.work,{bits:5}),Ut=!1}pt.lencode=dt,pt.lenbits=9,pt.distcode=gt,pt.distbits=5}function ft(pt,Rt,Qt,Nt){var At,kt=pt.state;return kt.window===null&&(kt.wsize=1<=kt.wsize?(j.arraySet(kt.window,Rt,Qt-kt.wsize,kt.wsize,0),kt.wnext=0,kt.whave=kt.wsize):((At=kt.wsize-kt.wnext)>Nt&&(At=Nt),j.arraySet(kt.window,Rt,Qt-Nt,At,kt.wnext),(Nt-=At)?(j.arraySet(kt.window,Rt,Qt-Nt,Nt,0),kt.wnext=Nt,kt.whave=kt.wsize):(kt.wnext+=At,kt.wnext===kt.wsize&&(kt.wnext=0),kt.whave>>8&255,Qt.check=_e(Qt.check,Kt,2,0),mt=0,yt=0,Qt.mode=2;break}if(Qt.flags=0,Qt.head&&(Qt.head.done=!1),!(1&Qt.wrap)||(((255&mt)<<8)+(mt>>8))%31){pt.msg="incorrect header check",Qt.mode=30;break}if((15&mt)!=8){pt.msg="unknown compression method",Qt.mode=30;break}if(yt-=4,It=8+(15&(mt>>>=4)),Qt.wbits===0)Qt.wbits=It;else if(It>Qt.wbits){pt.msg="invalid window size",Qt.mode=30;break}Qt.dmax=1<>8&1),512&Qt.flags&&(Kt[0]=255&mt,Kt[1]=mt>>>8&255,Qt.check=_e(Qt.check,Kt,2,0)),mt=0,yt=0,Qt.mode=3;case 3:for(;yt<32;){if(jt===0)break e;jt--,mt+=Nt[kt++]<>>8&255,Kt[2]=mt>>>16&255,Kt[3]=mt>>>24&255,Qt.check=_e(Qt.check,Kt,4,0)),mt=0,yt=0,Qt.mode=4;case 4:for(;yt<16;){if(jt===0)break e;jt--,mt+=Nt[kt++]<>8),512&Qt.flags&&(Kt[0]=255&mt,Kt[1]=mt>>>8&255,Qt.check=_e(Qt.check,Kt,2,0)),mt=0,yt=0,Qt.mode=5;case 5:if(1024&Qt.flags){for(;yt<16;){if(jt===0)break e;jt--,mt+=Nt[kt++]<>>8&255,Qt.check=_e(Qt.check,Kt,2,0)),mt=0,yt=0}else Qt.head&&(Qt.head.extra=null);Qt.mode=6;case 6:if(1024&Qt.flags&&((Et=Qt.length)>jt&&(Et=jt),Et&&(Qt.head&&(It=Qt.head.extra_len-Qt.length,Qt.head.extra||(Qt.head.extra=new Array(Qt.head.extra_len)),j.arraySet(Qt.head.extra,Nt,kt,Et,It)),512&Qt.flags&&(Qt.check=_e(Qt.check,Nt,Et,kt)),jt-=Et,kt+=Et,Qt.length-=Et),Qt.length))break e;Qt.length=0,Qt.mode=7;case 7:if(2048&Qt.flags){if(jt===0)break e;Et=0;do It=Nt[kt+Et++],Qt.head&&It&&Qt.length<65536&&(Qt.head.name+=String.fromCharCode(It));while(It&&Et>9&1,Qt.head.done=!0),pt.adler=Qt.check=0,Qt.mode=12;break;case 10:for(;yt<32;){if(jt===0)break e;jt--,mt+=Nt[kt++]<>>=7&yt,yt-=7&yt,Qt.mode=27;break}for(;yt<3;){if(jt===0)break e;jt--,mt+=Nt[kt++]<>>=1)){case 0:Qt.mode=14;break;case 1:if(ht(Qt),Qt.mode=20,Rt===6){mt>>>=2,yt-=2;break e}break;case 2:Qt.mode=17;break;case 3:pt.msg="invalid block type",Qt.mode=30}mt>>>=2,yt-=2;break;case 14:for(mt>>>=7&yt,yt-=7&yt;yt<32;){if(jt===0)break e;jt--,mt+=Nt[kt++]<>>16^65535)){pt.msg="invalid stored block lengths",Qt.mode=30;break}if(Qt.length=65535&mt,mt=0,yt=0,Qt.mode=15,Rt===6)break e;case 15:Qt.mode=16;case 16:if(Et=Qt.length){if(Et>jt&&(Et=jt),Et>vt&&(Et=vt),Et===0)break e;j.arraySet(At,Nt,kt,Et,Bt),jt-=Et,kt+=Et,vt-=Et,Bt+=Et,Qt.length-=Et;break}Qt.mode=12;break;case 17:for(;yt<14;){if(jt===0)break e;jt--,mt+=Nt[kt++]<>>=5,yt-=5,Qt.ndist=1+(31&mt),mt>>>=5,yt-=5,Qt.ncode=4+(15&mt),mt>>>=4,yt-=4,Qt.nlen>286||Qt.ndist>30){pt.msg="too many length or distance symbols",Qt.mode=30;break}Qt.have=0,Qt.mode=18;case 18:for(;Qt.have>>=3,yt-=3}for(;Qt.have<19;)Qt.lens[Un[Qt.have++]]=0;if(Qt.lencode=Qt.lendyn,Qt.lenbits=7,un={bits:Qt.lenbits},$t=tt(0,Qt.lens,0,19,Qt.lencode,0,Qt.work,un),Qt.lenbits=un.bits,$t){pt.msg="invalid code lengths set",Qt.mode=30;break}Qt.have=0,Qt.mode=19;case 19:for(;Qt.have>>16&255,zt=65535&an,!((Yt=an>>>24)<=yt);){if(jt===0)break e;jt--,mt+=Nt[kt++]<>>=Yt,yt-=Yt,Qt.lens[Qt.have++]=zt;else{if(zt===16){for(tn=Yt+2;yt>>=Yt,yt-=Yt,Qt.have===0){pt.msg="invalid bit length repeat",Qt.mode=30;break}It=Qt.lens[Qt.have-1],Et=3+(3&mt),mt>>>=2,yt-=2}else if(zt===17){for(tn=Yt+3;yt>>=Yt)),mt>>>=3,yt-=3}else{for(tn=Yt+7;yt>>=Yt)),mt>>>=7,yt-=7}if(Qt.have+Et>Qt.nlen+Qt.ndist){pt.msg="invalid bit length repeat",Qt.mode=30;break}for(;Et--;)Qt.lens[Qt.have++]=It}}if(Qt.mode===30)break;if(Qt.lens[256]===0){pt.msg="invalid code -- missing end-of-block",Qt.mode=30;break}if(Qt.lenbits=9,un={bits:Qt.lenbits},$t=tt(1,Qt.lens,0,Qt.nlen,Qt.lencode,0,Qt.work,un),Qt.lenbits=un.bits,$t){pt.msg="invalid literal/lengths set",Qt.mode=30;break}if(Qt.distbits=6,Qt.distcode=Qt.distdyn,un={bits:Qt.distbits},$t=tt(2,Qt.lens,Qt.nlen,Qt.ndist,Qt.distcode,0,Qt.work,un),Qt.distbits=un.bits,$t){pt.msg="invalid distances set",Qt.mode=30;break}if(Qt.mode=20,Rt===6)break e;case 20:Qt.mode=21;case 21:if(jt>=6&&vt>=258){pt.next_out=Bt,pt.avail_out=vt,pt.next_in=kt,pt.avail_in=jt,Qt.hold=mt,Qt.bits=yt,et(pt,wt),Bt=pt.next_out,At=pt.output,vt=pt.avail_out,kt=pt.next_in,Nt=pt.input,jt=pt.avail_in,mt=Qt.hold,yt=Qt.bits,Qt.mode===12&&(Qt.back=-1);break}for(Qt.back=0;Mt=(an=Qt.lencode[mt&(1<>>16&255,zt=65535&an,!((Yt=an>>>24)<=yt);){if(jt===0)break e;jt--,mt+=Nt[kt++]<>qt)])>>>16&255,zt=65535&an,!(qt+(Yt=an>>>24)<=yt);){if(jt===0)break e;jt--,mt+=Nt[kt++]<>>=qt,yt-=qt,Qt.back+=qt}if(mt>>>=Yt,yt-=Yt,Qt.back+=Yt,Qt.length=zt,Mt===0){Qt.mode=26;break}if(32&Mt){Qt.back=-1,Qt.mode=12;break}if(64&Mt){pt.msg="invalid literal/length code",Qt.mode=30;break}Qt.extra=15&Mt,Qt.mode=22;case 22:if(Qt.extra){for(tn=Qt.extra;yt>>=Qt.extra,yt-=Qt.extra,Qt.back+=Qt.extra}Qt.was=Qt.length,Qt.mode=23;case 23:for(;Mt=(an=Qt.distcode[mt&(1<>>16&255,zt=65535&an,!((Yt=an>>>24)<=yt);){if(jt===0)break e;jt--,mt+=Nt[kt++]<>qt)])>>>16&255,zt=65535&an,!(qt+(Yt=an>>>24)<=yt);){if(jt===0)break e;jt--,mt+=Nt[kt++]<>>=qt,yt-=qt,Qt.back+=qt}if(mt>>>=Yt,yt-=Yt,Qt.back+=Yt,64&Mt){pt.msg="invalid distance code",Qt.mode=30;break}Qt.offset=zt,Qt.extra=15&Mt,Qt.mode=24;case 24:if(Qt.extra){for(tn=Qt.extra;yt>>=Qt.extra,yt-=Qt.extra,Qt.back+=Qt.extra}if(Qt.offset>Qt.dmax){pt.msg="invalid distance too far back",Qt.mode=30;break}Qt.mode=25;case 25:if(vt===0)break e;if(Et=wt-vt,Qt.offset>Et){if((Et=Qt.offset-Et)>Qt.whave&&Qt.sane){pt.msg="invalid distance too far back",Qt.mode=30;break}Et>Qt.wnext?(Et-=Qt.wnext,Jt=Qt.wsize-Et):Jt=Qt.wnext-Et,Et>Qt.length&&(Et=Qt.length),Pt=Qt.window}else Pt=At,Jt=Bt-Qt.offset,Et=Qt.length;Et>vt&&(Et=vt),vt-=Et,Qt.length-=Et;do At[Bt++]=Pt[Jt++];while(--Et);Qt.length===0&&(Qt.mode=21);break;case 26:if(vt===0)break e;At[Bt++]=Qt.length,vt--,Qt.mode=21;break;case 27:if(Qt.wrap){for(;yt<32;){if(jt===0)break e;jt--,mt|=Nt[kt++]<{var j=_(1824),$=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],_e=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],et=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],tt=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];o.exports=function(nt,rt,it,st,ut,Ft,dt,gt){var Ut,ht,ft,pt,Rt,Qt,Nt,At,kt,Bt=gt.bits,jt=0,vt=0,mt=0,yt=0,Vt=0,wt=0,Et=0,Jt=0,Pt=0,Yt=0,Mt=null,zt=0,qt=new j.Buf16(16),Xt=new j.Buf16(16),xt=null,It=0;for(jt=0;jt<=15;jt++)qt[jt]=0;for(vt=0;vt=1&&qt[yt]===0;yt--);if(Vt>yt&&(Vt=yt),yt===0)return ut[Ft++]=20971520,ut[Ft++]=20971520,gt.bits=1,0;for(mt=1;mt0&&(nt===0||yt!==1))return-1;for(Xt[1]=0,jt=1;jt<15;jt++)Xt[jt+1]=Xt[jt]+qt[jt];for(vt=0;vt852||nt===2&&Pt>592)return 1;for(;;){Nt=jt-Et,dt[vt]Qt?(At=xt[It+dt[vt]],kt=Mt[zt+dt[vt]]):(At=96,kt=0),Ut=1<>Et)+(ht-=Ut)]=Nt<<24|At<<16|kt|0;while(ht!==0);for(Ut=1<>=1;if(Ut!==0?(Yt&=Ut-1,Yt+=Ut):Yt=0,vt++,--qt[jt]==0){if(jt===yt)break;jt=rt[it+dt[vt]]}if(jt>Vt&&(Yt&pt)!==ft){for(Et===0&&(Et=Vt),Rt+=mt,Jt=1<<(wt=jt-Et);wt+Et852||nt===2&&Pt>592)return 1;ut[ft=Yt&pt]=Vt<<24|wt<<16|Rt-Ft|0}}return Yt!==0&&(ut[Rt+Yt]=jt-Et<<24|4194304|0),gt.bits=Vt,0}},2817:o=>{o.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},9708:(o,s,_)=>{var j=_(1824);function $(Mt){for(var zt=Mt.length;--zt>=0;)Mt[zt]=0}var _e=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],et=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],tt=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],nt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],rt=new Array(576);$(rt);var it=new Array(60);$(it);var st=new Array(512);$(st);var ut=new Array(256);$(ut);var Ft=new Array(29);$(Ft);var dt,gt,Ut,ht=new Array(30);function ft(Mt,zt,qt,Xt,xt){this.static_tree=Mt,this.extra_bits=zt,this.extra_base=qt,this.elems=Xt,this.max_length=xt,this.has_stree=Mt&&Mt.length}function pt(Mt,zt){this.dyn_tree=Mt,this.max_code=0,this.stat_desc=zt}function Rt(Mt){return Mt<256?st[Mt]:st[256+(Mt>>>7)]}function Qt(Mt,zt){Mt.pending_buf[Mt.pending++]=255&zt,Mt.pending_buf[Mt.pending++]=zt>>>8&255}function Nt(Mt,zt,qt){Mt.bi_valid>16-qt?(Mt.bi_buf|=zt<>16-Mt.bi_valid,Mt.bi_valid+=qt-16):(Mt.bi_buf|=zt<>>=1,qt<<=1;while(--zt>0);return qt>>>1}function Bt(Mt,zt,qt){var Xt,xt,It=new Array(16),$t=0;for(Xt=1;Xt<=15;Xt++)It[Xt]=$t=$t+qt[Xt-1]<<1;for(xt=0;xt<=zt;xt++){var un=Mt[2*xt+1];un!==0&&(Mt[2*xt]=kt(It[un]++,un))}}function jt(Mt){var zt;for(zt=0;zt<286;zt++)Mt.dyn_ltree[2*zt]=0;for(zt=0;zt<30;zt++)Mt.dyn_dtree[2*zt]=0;for(zt=0;zt<19;zt++)Mt.bl_tree[2*zt]=0;Mt.dyn_ltree[512]=1,Mt.opt_len=Mt.static_len=0,Mt.last_lit=Mt.matches=0}function vt(Mt){Mt.bi_valid>8?Qt(Mt,Mt.bi_buf):Mt.bi_valid>0&&(Mt.pending_buf[Mt.pending++]=Mt.bi_buf),Mt.bi_buf=0,Mt.bi_valid=0}function mt(Mt,zt,qt,Xt){var xt=2*zt,It=2*qt;return Mt[xt]>1;qt>=1;qt--)yt(Mt,It,qt);xt=tn;do qt=Mt.heap[1],Mt.heap[1]=Mt.heap[Mt.heap_len--],yt(Mt,It,1),Xt=Mt.heap[1],Mt.heap[--Mt.heap_max]=qt,Mt.heap[--Mt.heap_max]=Xt,It[2*xt]=It[2*qt]+It[2*Xt],Mt.depth[xt]=(Mt.depth[qt]>=Mt.depth[Xt]?Mt.depth[qt]:Mt.depth[Xt])+1,It[2*qt+1]=It[2*Xt+1]=xt,Mt.heap[1]=xt++,yt(Mt,It,1);while(Mt.heap_len>=2);Mt.heap[--Mt.heap_max]=Mt.heap[1],function(Kt,Un){var Bn,hn,En,Cn,Tt,Zt,Ot=Un.dyn_tree,sn=Un.max_code,ln=Un.stat_desc.static_tree,cn=Un.stat_desc.has_stree,fn=Un.stat_desc.extra_bits,_n=Un.stat_desc.extra_base,On=Un.stat_desc.max_length,xn=0;for(Cn=0;Cn<=15;Cn++)Kt.bl_count[Cn]=0;for(Ot[2*Kt.heap[Kt.heap_max]+1]=0,Bn=Kt.heap_max+1;Bn<573;Bn++)(Cn=Ot[2*Ot[2*(hn=Kt.heap[Bn])+1]+1]+1)>On&&(Cn=On,xn++),Ot[2*hn+1]=Cn,hn>sn||(Kt.bl_count[Cn]++,Tt=0,hn>=_n&&(Tt=fn[hn-_n]),Zt=Ot[2*hn],Kt.opt_len+=Zt*(Cn+Tt),cn&&(Kt.static_len+=Zt*(ln[2*hn+1]+Tt)));if(xn!==0){do{for(Cn=On-1;Kt.bl_count[Cn]===0;)Cn--;Kt.bl_count[Cn]--,Kt.bl_count[Cn+1]+=2,Kt.bl_count[On]--,xn-=2}while(xn>0);for(Cn=On;Cn!==0;Cn--)for(hn=Kt.bl_count[Cn];hn!==0;)(En=Kt.heap[--Bn])>sn||(Ot[2*En+1]!==Cn&&(Kt.opt_len+=(Cn-Ot[2*En+1])*Ot[2*En],Ot[2*En+1]=Cn),hn--)}}(Mt,zt),Bt(It,an,Mt.bl_count)}function Et(Mt,zt,qt){var Xt,xt,It=-1,$t=zt[1],un=0,tn=7,an=4;for($t===0&&(tn=138,an=3),zt[2*(qt+1)+1]=65535,Xt=0;Xt<=qt;Xt++)xt=$t,$t=zt[2*(Xt+1)+1],++un>=7;xt<30;xt++)for(ht[xt]=It<<7,zt=0;zt<1<0?(Mt.strm.data_type===2&&(Mt.strm.data_type=function(un){var tn,an=4093624447;for(tn=0;tn<=31;tn++,an>>>=1)if(1&an&&un.dyn_ltree[2*tn]!==0)return 0;if(un.dyn_ltree[18]!==0||un.dyn_ltree[20]!==0||un.dyn_ltree[26]!==0)return 1;for(tn=32;tn<256;tn++)if(un.dyn_ltree[2*tn]!==0)return 1;return 0}(Mt)),wt(Mt,Mt.l_desc),wt(Mt,Mt.d_desc),$t=function(un){var tn;for(Et(un,un.dyn_ltree,un.l_desc.max_code),Et(un,un.dyn_dtree,un.d_desc.max_code),wt(un,un.bl_desc),tn=18;tn>=3&&un.bl_tree[2*nt[tn]+1]===0;tn--);return un.opt_len+=3*(tn+1)+5+5+4,tn}(Mt),xt=Mt.opt_len+3+7>>>3,(It=Mt.static_len+3+7>>>3)<=xt&&(xt=It)):xt=It=qt+5,qt+4<=xt&&zt!==-1?Yt(Mt,zt,qt,Xt):Mt.strategy===4||It===xt?(Nt(Mt,2+(Xt?1:0),3),Vt(Mt,rt,it)):(Nt(Mt,4+(Xt?1:0),3),function(un,tn,an,Kt){var Un;for(Nt(un,tn-257,5),Nt(un,an-1,5),Nt(un,Kt-4,4),Un=0;Un>>8&255,Mt.pending_buf[Mt.d_buf+2*Mt.last_lit+1]=255&zt,Mt.pending_buf[Mt.l_buf+Mt.last_lit]=255&qt,Mt.last_lit++,zt===0?Mt.dyn_ltree[2*qt]++:(Mt.matches++,zt--,Mt.dyn_ltree[2*(ut[qt]+256+1)]++,Mt.dyn_dtree[2*Rt(zt)]++),Mt.last_lit===Mt.lit_bufsize-1},s._tr_align=function(Mt){Nt(Mt,2,3),At(Mt,256,rt),function(zt){zt.bi_valid===16?(Qt(zt,zt.bi_buf),zt.bi_buf=0,zt.bi_valid=0):zt.bi_valid>=8&&(zt.pending_buf[zt.pending++]=255&zt.bi_buf,zt.bi_buf>>=8,zt.bi_valid-=8)}(Mt)}},2495:o=>{o.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},5402:o=>{typeof Object.create=="function"?o.exports=function(s,_){s.super_=_,s.prototype=Object.create(_.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}})}:o.exports=function(s,_){s.super_=_;var j=function(){};j.prototype=_.prototype,s.prototype=new j,s.prototype.constructor=s}},8575:o=>{o.exports=function(s){return s&&typeof s=="object"&&typeof s.copy=="function"&&typeof s.fill=="function"&&typeof s.readUInt8=="function"}},25:(o,s,_)=>{var j=/%[sdj%]/g;s.format=function(mt){if(!Ut(mt)){for(var yt=[],Vt=0;Vt=Et)return Yt;switch(Yt){case"%s":return String(wt[Vt++]);case"%d":return Number(wt[Vt++]);case"%j":try{return JSON.stringify(wt[Vt++])}catch{return"[Circular]"}default:return Yt}}),Pt=wt[Vt];Vt=3&&(Vt.depth=arguments[2]),arguments.length>=4&&(Vt.colors=arguments[3]),Ft(yt)?Vt.showHidden=yt:yt&&s._extend(Vt,yt),ht(Vt.showHidden)&&(Vt.showHidden=!1),ht(Vt.depth)&&(Vt.depth=2),ht(Vt.colors)&&(Vt.colors=!1),ht(Vt.customInspect)&&(Vt.customInspect=!0),Vt.colors&&(Vt.stylize=tt),rt(Vt,mt,Vt.depth)}function tt(mt,yt){var Vt=et.styles[yt];return Vt?"\x1B["+et.colors[Vt][0]+"m"+mt+"\x1B["+et.colors[Vt][1]+"m":mt}function nt(mt,yt){return mt}function rt(mt,yt,Vt){if(mt.customInspect&&yt&&Nt(yt.inspect)&&yt.inspect!==s.inspect&&(!yt.constructor||yt.constructor.prototype!==yt)){var wt=yt.inspect(Vt,mt);return Ut(wt)||(wt=rt(mt,wt,Vt)),wt}var Et=function(xt,It){if(ht(It))return xt.stylize("undefined","undefined");if(Ut(It)){var $t="'"+JSON.stringify(It).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return xt.stylize($t,"string")}if(gt(It))return xt.stylize(""+It,"number");if(Ft(It))return xt.stylize(""+It,"boolean");if(dt(It))return xt.stylize("null","null")}(mt,yt);if(Et)return Et;var Jt=Object.keys(yt),Pt=function(xt){var It={};return xt.forEach(function($t,un){It[$t]=!0}),It}(Jt);if(mt.showHidden&&(Jt=Object.getOwnPropertyNames(yt)),Qt(yt)&&(Jt.indexOf("message")>=0||Jt.indexOf("description")>=0))return it(yt);if(Jt.length===0){if(Nt(yt)){var Yt=yt.name?": "+yt.name:"";return mt.stylize("[Function"+Yt+"]","special")}if(ft(yt))return mt.stylize(RegExp.prototype.toString.call(yt),"regexp");if(Rt(yt))return mt.stylize(Date.prototype.toString.call(yt),"date");if(Qt(yt))return it(yt)}var Mt,zt="",qt=!1,Xt=["{","}"];return ut(yt)&&(qt=!0,Xt=["[","]"]),Nt(yt)&&(zt=" [Function"+(yt.name?": "+yt.name:"")+"]"),ft(yt)&&(zt=" "+RegExp.prototype.toString.call(yt)),Rt(yt)&&(zt=" "+Date.prototype.toUTCString.call(yt)),Qt(yt)&&(zt=" "+it(yt)),Jt.length!==0||qt&&yt.length!=0?Vt<0?ft(yt)?mt.stylize(RegExp.prototype.toString.call(yt),"regexp"):mt.stylize("[Object]","special"):(mt.seen.push(yt),Mt=qt?function(xt,It,$t,un,tn){for(var an=[],Kt=0,Un=It.length;Kt=0,un+tn.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?$t[0]+(It===""?"":It+` + `)+" "+xt.join(`, + `)+" "+$t[1]:$t[0]+It+" "+xt.join(", ")+" "+$t[1]}(Mt,zt,Xt)):Xt[0]+zt+Xt[1]}function it(mt){return"["+Error.prototype.toString.call(mt)+"]"}function st(mt,yt,Vt,wt,Et,Jt){var Pt,Yt,Mt;if((Mt=Object.getOwnPropertyDescriptor(yt,Et)||{value:yt[Et]}).get?Yt=Mt.set?mt.stylize("[Getter/Setter]","special"):mt.stylize("[Getter]","special"):Mt.set&&(Yt=mt.stylize("[Setter]","special")),vt(wt,Et)||(Pt="["+Et+"]"),Yt||(mt.seen.indexOf(Mt.value)<0?(Yt=dt(Vt)?rt(mt,Mt.value,null):rt(mt,Mt.value,Vt-1)).indexOf(` +`)>-1&&(Yt=Jt?Yt.split(` +`).map(function(zt){return" "+zt}).join(` +`).substr(2):` +`+Yt.split(` +`).map(function(zt){return" "+zt}).join(` +`)):Yt=mt.stylize("[Circular]","special")),ht(Pt)){if(Jt&&Et.match(/^\d+$/))return Yt;(Pt=JSON.stringify(""+Et)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(Pt=Pt.substr(1,Pt.length-2),Pt=mt.stylize(Pt,"name")):(Pt=Pt.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),Pt=mt.stylize(Pt,"string"))}return Pt+": "+Yt}function ut(mt){return Array.isArray(mt)}function Ft(mt){return typeof mt=="boolean"}function dt(mt){return mt===null}function gt(mt){return typeof mt=="number"}function Ut(mt){return typeof mt=="string"}function ht(mt){return mt===void 0}function ft(mt){return pt(mt)&&At(mt)==="[object RegExp]"}function pt(mt){return typeof mt=="object"&&mt!==null}function Rt(mt){return pt(mt)&&At(mt)==="[object Date]"}function Qt(mt){return pt(mt)&&(At(mt)==="[object Error]"||mt instanceof Error)}function Nt(mt){return typeof mt=="function"}function At(mt){return Object.prototype.toString.call(mt)}function kt(mt){return mt<10?"0"+mt.toString(10):mt.toString(10)}s.debuglog=function(mt){if(ht($)&&($={}.NODE_DEBUG||""),mt=mt.toUpperCase(),!_e[mt])if(new RegExp("\\b"+mt+"\\b","i").test($)){var yt=process.pid;_e[mt]=function(){var Vt=s.format.apply(s,arguments);console.error("%s %d: %s",mt,yt,Vt)}}else _e[mt]=function(){};return _e[mt]},s.inspect=et,et.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},et.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},s.isArray=ut,s.isBoolean=Ft,s.isNull=dt,s.isNullOrUndefined=function(mt){return mt==null},s.isNumber=gt,s.isString=Ut,s.isSymbol=function(mt){return typeof mt=="symbol"},s.isUndefined=ht,s.isRegExp=ft,s.isObject=pt,s.isDate=Rt,s.isError=Qt,s.isFunction=Nt,s.isPrimitive=function(mt){return mt===null||typeof mt=="boolean"||typeof mt=="number"||typeof mt=="string"||typeof mt=="symbol"||mt===void 0},s.isBuffer=_(8575);var Bt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function jt(){var mt=new Date,yt=[kt(mt.getHours()),kt(mt.getMinutes()),kt(mt.getSeconds())].join(":");return[mt.getDate(),Bt[mt.getMonth()],yt].join(" ")}function vt(mt,yt){return Object.prototype.hasOwnProperty.call(mt,yt)}s.log=function(){console.log("%s - %s",jt(),s.format.apply(s,arguments))},s.inherits=_(5402),s._extend=function(mt,yt){if(!yt||!pt(yt))return mt;for(var Vt=Object.keys(yt),wt=Vt.length;wt--;)mt[Vt[wt]]=yt[Vt[wt]];return mt}},8558:(o,s,_)=>{var j=process.platform==="win32",$=_(25);function _e(Ut,ht){for(var ft=[],pt=0;pt=0&&!Ut[pt];pt--);return ft===0&&pt===ht?Ut:ft>pt?[]:Ut.slice(ft,pt+1)}var tt=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/,nt=/^([\s\S]*?)((?:\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))(?:[\\\/]*)$/,rt={};function it(Ut){var ht=tt.exec(Ut),ft=(ht[1]||"")+(ht[2]||""),pt=ht[3]||"",Rt=nt.exec(pt);return[ft,Rt[1],Rt[2],Rt[3]]}function st(Ut){var ht=tt.exec(Ut),ft=ht[1]||"",pt=!!ft&&ft[1]!==":";return{device:ft,isUnc:pt,isAbsolute:pt||!!ht[2],tail:ht[3]}}function ut(Ut){return"\\\\"+Ut.replace(/^[\\\/]+/,"").replace(/[\\\/]+/g,"\\")}rt.resolve=function(){for(var Ut="",ht="",ft=!1,pt=arguments.length-1;pt>=-1;pt--){var Rt;if(pt>=0?Rt=arguments[pt]:Ut?(Rt=process.env["="+Ut])&&Rt.substr(0,3).toLowerCase()===Ut.toLowerCase()+"\\"||(Rt=Ut+"\\"):Rt=process.cwd(),!$.isString(Rt))throw new TypeError("Arguments to path.resolve must be strings");if(Rt){var Qt=st(Rt),Nt=Qt.device,At=Qt.isUnc,kt=Qt.isAbsolute,Bt=Qt.tail;if((!Nt||!Ut||Nt.toLowerCase()===Ut.toLowerCase())&&(Ut||(Ut=Nt),ft||(ht=Bt+"\\"+ht,ft=kt),Ut&&ft))break}}return At&&(Ut=ut(Ut)),Ut+(ft?"\\":"")+(ht=_e(ht.split(/[\\\/]+/),!ft).join("\\"))||"."},rt.normalize=function(Ut){var ht=st(Ut),ft=ht.device,pt=ht.isUnc,Rt=ht.isAbsolute,Qt=ht.tail,Nt=/[\\\/]$/.test(Qt);return(Qt=_e(Qt.split(/[\\\/]+/),!Rt).join("\\"))||Rt||(Qt="."),Qt&&Nt&&(Qt+="\\"),pt&&(ft=ut(ft)),ft+(Rt?"\\":"")+Qt},rt.isAbsolute=function(Ut){return st(Ut).isAbsolute},rt.join=function(){for(var Ut=[],ht=0;ht=-1&&!ht;ft--){var pt=ft>=0?arguments[ft]:process.cwd();if(!$.isString(pt))throw new TypeError("Arguments to path.resolve must be strings");pt&&(Ut=pt+"/"+Ut,ht=pt[0]==="/")}return(ht?"/":"")+(Ut=_e(Ut.split("/"),!ht).join("/"))||"."},dt.normalize=function(Ut){var ht=dt.isAbsolute(Ut),ft=Ut&&Ut[Ut.length-1]==="/";return(Ut=_e(Ut.split("/"),!ht).join("/"))||ht||(Ut="."),Ut&&ft&&(Ut+="/"),(ht?"/":"")+Ut},dt.isAbsolute=function(Ut){return Ut.charAt(0)==="/"},dt.join=function(){for(var Ut="",ht=0;ht{o.exports=["Float32Array","Float64Array","Int8Array","Int16Array","Int32Array","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array"]},1830:o=>{var s=String.prototype.replace,_=/%20/g,j="RFC1738",$="RFC3986";o.exports={default:$,formatters:{RFC1738:function(_e){return s.call(_e,_,"+")},RFC3986:function(_e){return String(_e)}},RFC1738:j,RFC3986:$}},5810:(o,s,_)=>{var j=_(6623),$=_(6193),_e=_(1830);o.exports={formats:_e,parse:$,stringify:j}},6193:(o,s,_)=>{var j=_(1539),$=Object.prototype.hasOwnProperty,_e=Array.isArray,et={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:j.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},tt=function(it){return it.replace(/&#(\d+);/g,function(st,ut){return String.fromCharCode(parseInt(ut,10))})},nt=function(it,st){return it&&typeof it=="string"&&st.comma&&it.indexOf(",")>-1?it.split(","):it},rt=function(it,st,ut,Ft){if(it){var dt=ut.allowDots?it.replace(/\.([^.[]+)/g,"[$1]"):it,gt=/(\[[^[\]]*])/g,Ut=ut.depth>0&&/(\[[^[\]]*])/.exec(dt),ht=Ut?dt.slice(0,Ut.index):dt,ft=[];if(ht){if(!ut.plainObjects&&$.call(Object.prototype,ht)&&!ut.allowPrototypes)return;ft.push(ht)}for(var pt=0;ut.depth>0&&(Ut=gt.exec(dt))!==null&&pt=0;--Bt){var jt,vt=Rt[Bt];if(vt==="[]"&&Nt.parseArrays)jt=Nt.allowEmptyArrays&&(kt===""||Nt.strictNullHandling&&kt===null)?[]:[].concat(kt);else{jt=Nt.plainObjects?Object.create(null):{};var mt=vt.charAt(0)==="["&&vt.charAt(vt.length-1)==="]"?vt.slice(1,-1):vt,yt=Nt.decodeDotInKeys?mt.replace(/%2E/g,"."):mt,Vt=parseInt(yt,10);Nt.parseArrays||yt!==""?!isNaN(Vt)&&vt!==yt&&String(Vt)===yt&&Vt>=0&&Nt.parseArrays&&Vt<=Nt.arrayLimit?(jt=[])[Vt]=kt:yt!=="__proto__"&&(jt[yt]=kt):jt={0:kt}}kt=jt}return kt}(ft,st,ut,Ft)}};o.exports=function(it,st){var ut=function(pt){if(!pt)return et;if(pt.allowEmptyArrays!==void 0&&typeof pt.allowEmptyArrays!="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(pt.decodeDotInKeys!==void 0&&typeof pt.decodeDotInKeys!="boolean")throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(pt.decoder!==null&&pt.decoder!==void 0&&typeof pt.decoder!="function")throw new TypeError("Decoder has to be a function.");if(pt.charset!==void 0&&pt.charset!=="utf-8"&&pt.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var Rt=pt.charset===void 0?et.charset:pt.charset,Qt=pt.duplicates===void 0?et.duplicates:pt.duplicates;if(Qt!=="combine"&&Qt!=="first"&&Qt!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:pt.allowDots===void 0?pt.decodeDotInKeys===!0||et.allowDots:!!pt.allowDots,allowEmptyArrays:typeof pt.allowEmptyArrays=="boolean"?!!pt.allowEmptyArrays:et.allowEmptyArrays,allowPrototypes:typeof pt.allowPrototypes=="boolean"?pt.allowPrototypes:et.allowPrototypes,allowSparse:typeof pt.allowSparse=="boolean"?pt.allowSparse:et.allowSparse,arrayLimit:typeof pt.arrayLimit=="number"?pt.arrayLimit:et.arrayLimit,charset:Rt,charsetSentinel:typeof pt.charsetSentinel=="boolean"?pt.charsetSentinel:et.charsetSentinel,comma:typeof pt.comma=="boolean"?pt.comma:et.comma,decodeDotInKeys:typeof pt.decodeDotInKeys=="boolean"?pt.decodeDotInKeys:et.decodeDotInKeys,decoder:typeof pt.decoder=="function"?pt.decoder:et.decoder,delimiter:typeof pt.delimiter=="string"||j.isRegExp(pt.delimiter)?pt.delimiter:et.delimiter,depth:typeof pt.depth=="number"||pt.depth===!1?+pt.depth:et.depth,duplicates:Qt,ignoreQueryPrefix:pt.ignoreQueryPrefix===!0,interpretNumericEntities:typeof pt.interpretNumericEntities=="boolean"?pt.interpretNumericEntities:et.interpretNumericEntities,parameterLimit:typeof pt.parameterLimit=="number"?pt.parameterLimit:et.parameterLimit,parseArrays:pt.parseArrays!==!1,plainObjects:typeof pt.plainObjects=="boolean"?pt.plainObjects:et.plainObjects,strictNullHandling:typeof pt.strictNullHandling=="boolean"?pt.strictNullHandling:et.strictNullHandling}}(st);if(it===""||it==null)return ut.plainObjects?Object.create(null):{};for(var Ft=typeof it=="string"?function(pt,Rt){var Qt={__proto__:null},Nt=Rt.ignoreQueryPrefix?pt.replace(/^\?/,""):pt;Nt=Nt.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var At,kt=Rt.parameterLimit===1/0?void 0:Rt.parameterLimit,Bt=Nt.split(Rt.delimiter,kt),jt=-1,vt=Rt.charset;if(Rt.charsetSentinel)for(At=0;At-1&&(yt=_e(yt)?[yt]:yt);var Jt=$.call(Qt,mt);Jt&&Rt.duplicates==="combine"?Qt[mt]=j.combine(Qt[mt],yt):Jt&&Rt.duplicates!=="last"||(Qt[mt]=yt)}return Qt}(it,ut):it,dt=ut.plainObjects?Object.create(null):{},gt=Object.keys(Ft),Ut=0;Ut{var j=_(7575),$=_(1539),_e=_(1830),et=Object.prototype.hasOwnProperty,tt={brackets:function(Ut){return Ut+"[]"},comma:"comma",indices:function(Ut,ht){return Ut+"["+ht+"]"},repeat:function(Ut){return Ut}},nt=Array.isArray,rt=Array.prototype.push,it=function(Ut,ht){rt.apply(Ut,nt(ht)?ht:[ht])},st=Date.prototype.toISOString,ut=_e.default,Ft={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:$.encode,encodeValuesOnly:!1,format:ut,formatter:_e.formatters[ut],indices:!1,serializeDate:function(Ut){return st.call(Ut)},skipNulls:!1,strictNullHandling:!1},dt={},gt=function Ut(ht,ft,pt,Rt,Qt,Nt,At,kt,Bt,jt,vt,mt,yt,Vt,wt,Et,Jt,Pt){for(var Yt,Mt=ht,zt=Pt,qt=0,Xt=!1;(zt=zt.get(dt))!==void 0&&!Xt;){var xt=zt.get(ht);if(qt+=1,xt!==void 0){if(xt===qt)throw new RangeError("Cyclic object value");Xt=!0}zt.get(dt)===void 0&&(qt=0)}if(typeof jt=="function"?Mt=jt(ft,Mt):Mt instanceof Date?Mt=yt(Mt):pt==="comma"&&nt(Mt)&&(Mt=$.maybeMap(Mt,function(Tt){return Tt instanceof Date?yt(Tt):Tt})),Mt===null){if(Nt)return Bt&&!Et?Bt(ft,Ft.encoder,Jt,"key",Vt):ft;Mt=""}if(typeof(Yt=Mt)=="string"||typeof Yt=="number"||typeof Yt=="boolean"||typeof Yt=="symbol"||typeof Yt=="bigint"||$.isBuffer(Mt))return Bt?[wt(Et?ft:Bt(ft,Ft.encoder,Jt,"key",Vt))+"="+wt(Bt(Mt,Ft.encoder,Jt,"value",Vt))]:[wt(ft)+"="+wt(String(Mt))];var It,$t=[];if(Mt===void 0)return $t;if(pt==="comma"&&nt(Mt))Et&&Bt&&(Mt=$.maybeMap(Mt,Bt)),It=[{value:Mt.length>0?Mt.join(",")||null:void 0}];else if(nt(jt))It=jt;else{var un=Object.keys(Mt);It=vt?un.sort(vt):un}var tn=kt?ft.replace(/\./g,"%2E"):ft,an=Rt&&nt(Mt)&&Mt.length===1?tn+"[]":tn;if(Qt&&nt(Mt)&&Mt.length===0)return an+"[]";for(var Kt=0;Kt0?mt+vt:""}},1539:(o,s,_)=>{var j=_(1830),$=Object.prototype.hasOwnProperty,_e=Array.isArray,et=function(){for(var nt=[],rt=0;rt<256;++rt)nt.push("%"+((rt<16?"0":"")+rt.toString(16)).toUpperCase());return nt}(),tt=function(nt,rt){for(var it=rt&&rt.plainObjects?Object.create(null):{},st=0;st1;){var pt=ft.pop(),Rt=pt.obj[pt.prop];if(_e(Rt)){for(var Qt=[],Nt=0;Nt=1024?Ft.slice(gt,gt+1024):Ft,ht=[],ft=0;ft=48&&pt<=57||pt>=65&&pt<=90||pt>=97&&pt<=122||ut===j.RFC1738&&(pt===40||pt===41)?ht[ht.length]=Ut.charAt(ft):pt<128?ht[ht.length]=et[pt]:pt<2048?ht[ht.length]=et[192|pt>>6]+et[128|63&pt]:pt<55296||pt>=57344?ht[ht.length]=et[224|pt>>12]+et[128|pt>>6&63]+et[128|63&pt]:(ft+=1,pt=65536+((1023&pt)<<10|1023&Ut.charCodeAt(ft)),ht[ht.length]=et[240|pt>>18]+et[128|pt>>12&63]+et[128|pt>>6&63]+et[128|63&pt])}dt+=ht.join("")}return dt},isBuffer:function(nt){return!(!nt||typeof nt!="object")&&!!(nt.constructor&&nt.constructor.isBuffer&&nt.constructor.isBuffer(nt))},isRegExp:function(nt){return Object.prototype.toString.call(nt)==="[object RegExp]"},maybeMap:function(nt,rt){if(_e(nt)){for(var it=[],st=0;st{var s={};function _($,_e,et){et||(et=Error);var tt=function(nt){var rt,it;function st(ut,Ft,dt){return nt.call(this,function(gt,Ut,ht){return typeof _e=="string"?_e:_e(gt,Ut,ht)}(ut,Ft,dt))||this}return it=nt,(rt=st).prototype=Object.create(it.prototype),rt.prototype.constructor=rt,rt.__proto__=it,st}(et);tt.prototype.name=et.name,tt.prototype.code=$,s[$]=tt}function j($,_e){if(Array.isArray($)){var et=$.length;return $=$.map(function(tt){return String(tt)}),et>2?"one of ".concat(_e," ").concat($.slice(0,et-1).join(", "),", or ")+$[et-1]:et===2?"one of ".concat(_e," ").concat($[0]," or ").concat($[1]):"of ".concat(_e," ").concat($[0])}return"of ".concat(_e," ").concat(String($))}_("ERR_INVALID_OPT_VALUE",function($,_e){return'The value "'+_e+'" is invalid for option "'+$+'"'},TypeError),_("ERR_INVALID_ARG_TYPE",function($,_e,et){var tt,nt,rt;if(typeof _e=="string"&&(nt="not ",_e.substr(0,nt.length)===nt)?(tt="must not be",_e=_e.replace(/^not /,"")):tt="must be",function(st,ut,Ft){return(Ft===void 0||Ft>st.length)&&(Ft=st.length),st.substring(Ft-ut.length,Ft)===ut}($," argument"))rt="The ".concat($," ").concat(tt," ").concat(j(_e,"type"));else{var it=function(st,ut,Ft){return typeof Ft!="number"&&(Ft=0),!(Ft+ut.length>st.length)&&st.indexOf(ut,Ft)!==-1}($,".")?"property":"argument";rt='The "'.concat($,'" ').concat(it," ").concat(tt," ").concat(j(_e,"type"))}return rt+=". Received type ".concat(typeof et)},TypeError),_("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),_("ERR_METHOD_NOT_IMPLEMENTED",function($){return"The "+$+" method is not implemented"}),_("ERR_STREAM_PREMATURE_CLOSE","Premature close"),_("ERR_STREAM_DESTROYED",function($){return"Cannot call "+$+" after a stream was destroyed"}),_("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),_("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),_("ERR_STREAM_WRITE_AFTER_END","write after end"),_("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),_("ERR_UNKNOWN_ENCODING",function($){return"Unknown encoding: "+$},TypeError),_("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),o.exports.F=s},1265:(o,s,_)=>{var j=Object.keys||function(ut){var Ft=[];for(var dt in ut)Ft.push(dt);return Ft};o.exports=rt;var $=_(8199),_e=_(5291);_(5615)(rt,$);for(var et=j(_e.prototype),tt=0;tt{o.exports=$;var j=_(9415);function $(_e){if(!(this instanceof $))return new $(_e);j.call(this,_e)}_(5615)($,j),$.prototype._transform=function(_e,et,tt){tt(null,_e)}},8199:(o,s,_)=>{var j;o.exports=kt,kt.ReadableState=At,_(46).EventEmitter;var $=function(xt,It){return xt.listeners(It).length},_e=_(4856),et=_(1048).Buffer,tt=(_.g!==void 0?_.g:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},nt,rt=_(3951);nt=rt&&rt.debuglog?rt.debuglog("stream"):function(){};var it,st,ut,Ft=_(82),dt=_(6527),gt=_(9952).getHighWaterMark,Ut=_(5699).F,ht=Ut.ERR_INVALID_ARG_TYPE,ft=Ut.ERR_STREAM_PUSH_AFTER_EOF,pt=Ut.ERR_METHOD_NOT_IMPLEMENTED,Rt=Ut.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;_(5615)(kt,_e);var Qt=dt.errorOrDestroy,Nt=["error","close","destroy","pause","resume"];function At(xt,It,$t){j=j||_(1265),xt=xt||{},typeof $t!="boolean"&&($t=It instanceof j),this.objectMode=!!xt.objectMode,$t&&(this.objectMode=this.objectMode||!!xt.readableObjectMode),this.highWaterMark=gt(this,xt,"readableHighWaterMark",$t),this.buffer=new Ft,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=xt.emitClose!==!1,this.autoDestroy=!!xt.autoDestroy,this.destroyed=!1,this.defaultEncoding=xt.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,xt.encoding&&(it||(it=_(8888).StringDecoder),this.decoder=new it(xt.encoding),this.encoding=xt.encoding)}function kt(xt){if(j=j||_(1265),!(this instanceof kt))return new kt(xt);var It=this instanceof j;this._readableState=new At(xt,this,It),this.readable=!0,xt&&(typeof xt.read=="function"&&(this._read=xt.read),typeof xt.destroy=="function"&&(this._destroy=xt.destroy)),_e.call(this)}function Bt(xt,It,$t,un,tn){nt("readableAddChunk",It);var an,Kt=xt._readableState;if(It===null)Kt.reading=!1,function(Un,Bn){if(nt("onEofChunk"),!Bn.ended){if(Bn.decoder){var hn=Bn.decoder.end();hn&&hn.length&&(Bn.buffer.push(hn),Bn.length+=Bn.objectMode?1:hn.length)}Bn.ended=!0,Bn.sync?mt(Un):(Bn.needReadable=!1,Bn.emittedReadable||(Bn.emittedReadable=!0,yt(Un)))}}(xt,Kt);else if(tn||(an=function(Un,Bn){var hn;En=Bn,et.isBuffer(En)||En instanceof tt||typeof Bn=="string"||Bn===void 0||Un.objectMode||(hn=new ht("chunk",["string","Buffer","Uint8Array"],Bn));var En;return hn}(Kt,It)),an)Qt(xt,an);else if(Kt.objectMode||It&&It.length>0)if(typeof It=="string"||Kt.objectMode||Object.getPrototypeOf(It)===et.prototype||(It=function(Un){return et.from(Un)}(It)),un)Kt.endEmitted?Qt(xt,new Rt):jt(xt,Kt,It,!0);else if(Kt.ended)Qt(xt,new ft);else{if(Kt.destroyed)return!1;Kt.reading=!1,Kt.decoder&&!$t?(It=Kt.decoder.write(It),Kt.objectMode||It.length!==0?jt(xt,Kt,It,!1):Vt(xt,Kt)):jt(xt,Kt,It,!1)}else un||(Kt.reading=!1,Vt(xt,Kt));return!Kt.ended&&(Kt.lengthIt.highWaterMark&&(It.highWaterMark=function($t){return $t>=1073741824?$t=1073741824:($t--,$t|=$t>>>1,$t|=$t>>>2,$t|=$t>>>4,$t|=$t>>>8,$t|=$t>>>16,$t++),$t}(xt)),xt<=It.length?xt:It.ended?It.length:(It.needReadable=!0,0))}function mt(xt){var It=xt._readableState;nt("emitReadable",It.needReadable,It.emittedReadable),It.needReadable=!1,It.emittedReadable||(nt("emitReadable",It.flowing),It.emittedReadable=!0,process.nextTick(yt,xt))}function yt(xt){var It=xt._readableState;nt("emitReadable_",It.destroyed,It.length,It.ended),It.destroyed||!It.length&&!It.ended||(xt.emit("readable"),It.emittedReadable=!1),It.needReadable=!It.flowing&&!It.ended&&It.length<=It.highWaterMark,Yt(xt)}function Vt(xt,It){It.readingMore||(It.readingMore=!0,process.nextTick(wt,xt,It))}function wt(xt,It){for(;!It.reading&&!It.ended&&(It.length0,It.resumeScheduled&&!It.paused?It.flowing=!0:xt.listenerCount("data")>0&&xt.resume()}function Jt(xt){nt("readable nexttick read 0"),xt.read(0)}function Pt(xt,It){nt("resume",It.reading),It.reading||xt.read(0),It.resumeScheduled=!1,xt.emit("resume"),Yt(xt),It.flowing&&!It.reading&&xt.read(0)}function Yt(xt){var It=xt._readableState;for(nt("flow",It.flowing);It.flowing&&xt.read()!==null;);}function Mt(xt,It){return It.length===0?null:(It.objectMode?$t=It.buffer.shift():!xt||xt>=It.length?($t=It.decoder?It.buffer.join(""):It.buffer.length===1?It.buffer.first():It.buffer.concat(It.length),It.buffer.clear()):$t=It.buffer.consume(xt,It.decoder),$t);var $t}function zt(xt){var It=xt._readableState;nt("endReadable",It.endEmitted),It.endEmitted||(It.ended=!0,process.nextTick(qt,It,xt))}function qt(xt,It){if(nt("endReadableNT",xt.endEmitted,xt.length),!xt.endEmitted&&xt.length===0&&(xt.endEmitted=!0,It.readable=!1,It.emit("end"),xt.autoDestroy)){var $t=It._writableState;(!$t||$t.autoDestroy&&$t.finished)&&It.destroy()}}function Xt(xt,It){for(var $t=0,un=xt.length;$t=It.highWaterMark:It.length>0)||It.ended))return nt("read: emitReadable",It.length,It.ended),It.length===0&&It.ended?zt(this):mt(this),null;if((xt=vt(xt,It))===0&&It.ended)return It.length===0&&zt(this),null;var un,tn=It.needReadable;return nt("need readable",tn),(It.length===0||It.length-xt0?Mt(xt,It):null)===null?(It.needReadable=It.length<=It.highWaterMark,xt=0):(It.length-=xt,It.awaitDrain=0),It.length===0&&(It.ended||(It.needReadable=!0),$t!==xt&&It.ended&&zt(this)),un!==null&&this.emit("data",un),un},kt.prototype._read=function(xt){Qt(this,new pt("_read()"))},kt.prototype.pipe=function(xt,It){var $t=this,un=this._readableState;switch(un.pipesCount){case 0:un.pipes=xt;break;case 1:un.pipes=[un.pipes,xt];break;default:un.pipes.push(xt)}un.pipesCount+=1,nt("pipe count=%d opts=%j",un.pipesCount,It);var tn=(!It||It.end!==!1)&&xt!==process.stdout&&xt!==process.stderr?Kt:Zt;function an(Ot,sn){nt("onunpipe"),Ot===$t&&sn&&sn.hasUnpiped===!1&&(sn.hasUnpiped=!0,nt("cleanup"),xt.removeListener("close",Cn),xt.removeListener("finish",Tt),xt.removeListener("drain",Un),xt.removeListener("error",En),xt.removeListener("unpipe",an),$t.removeListener("end",Kt),$t.removeListener("end",Zt),$t.removeListener("data",hn),Bn=!0,!un.awaitDrain||xt._writableState&&!xt._writableState.needDrain||Un())}function Kt(){nt("onend"),xt.end()}un.endEmitted?process.nextTick(tn):$t.once("end",tn),xt.on("unpipe",an);var Un=function(Ot){return function(){var sn=Ot._readableState;nt("pipeOnDrain",sn.awaitDrain),sn.awaitDrain&&sn.awaitDrain--,sn.awaitDrain===0&&$(Ot,"data")&&(sn.flowing=!0,Yt(Ot))}}($t);xt.on("drain",Un);var Bn=!1;function hn(Ot){nt("ondata");var sn=xt.write(Ot);nt("dest.write",sn),sn===!1&&((un.pipesCount===1&&un.pipes===xt||un.pipesCount>1&&Xt(un.pipes,xt)!==-1)&&!Bn&&(nt("false write response, pause",un.awaitDrain),un.awaitDrain++),$t.pause())}function En(Ot){nt("onerror",Ot),Zt(),xt.removeListener("error",En),$(xt,"error")===0&&Qt(xt,Ot)}function Cn(){xt.removeListener("finish",Tt),Zt()}function Tt(){nt("onfinish"),xt.removeListener("close",Cn),Zt()}function Zt(){nt("unpipe"),$t.unpipe(xt)}return $t.on("data",hn),function(Ot,sn,ln){if(typeof Ot.prependListener=="function")return Ot.prependListener(sn,ln);Ot._events&&Ot._events[sn]?Array.isArray(Ot._events[sn])?Ot._events[sn].unshift(ln):Ot._events[sn]=[ln,Ot._events[sn]]:Ot.on(sn,ln)}(xt,"error",En),xt.once("close",Cn),xt.once("finish",Tt),xt.emit("pipe",$t),un.flowing||(nt("pipe resume"),$t.resume()),xt},kt.prototype.unpipe=function(xt){var It=this._readableState,$t={hasUnpiped:!1};if(It.pipesCount===0)return this;if(It.pipesCount===1)return xt&&xt!==It.pipes||(xt||(xt=It.pipes),It.pipes=null,It.pipesCount=0,It.flowing=!1,xt&&xt.emit("unpipe",this,$t)),this;if(!xt){var un=It.pipes,tn=It.pipesCount;It.pipes=null,It.pipesCount=0,It.flowing=!1;for(var an=0;an0,un.flowing!==!1&&this.resume()):xt==="readable"&&(un.endEmitted||un.readableListening||(un.readableListening=un.needReadable=!0,un.flowing=!1,un.emittedReadable=!1,nt("on readable",un.length,un.reading),un.length?mt(this):un.reading||process.nextTick(Jt,this))),$t},kt.prototype.addListener=kt.prototype.on,kt.prototype.removeListener=function(xt,It){var $t=_e.prototype.removeListener.call(this,xt,It);return xt==="readable"&&process.nextTick(Et,this),$t},kt.prototype.removeAllListeners=function(xt){var It=_e.prototype.removeAllListeners.apply(this,arguments);return xt!=="readable"&&xt!==void 0||process.nextTick(Et,this),It},kt.prototype.resume=function(){var xt=this._readableState;return xt.flowing||(nt("resume"),xt.flowing=!xt.readableListening,function(It,$t){$t.resumeScheduled||($t.resumeScheduled=!0,process.nextTick(Pt,It,$t))}(this,xt)),xt.paused=!1,this},kt.prototype.pause=function(){return nt("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(nt("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},kt.prototype.wrap=function(xt){var It=this,$t=this._readableState,un=!1;for(var tn in xt.on("end",function(){if(nt("wrapped end"),$t.decoder&&!$t.ended){var Kt=$t.decoder.end();Kt&&Kt.length&&It.push(Kt)}It.push(null)}),xt.on("data",function(Kt){nt("wrapped data"),$t.decoder&&(Kt=$t.decoder.write(Kt)),$t.objectMode&&Kt==null||($t.objectMode||Kt&&Kt.length)&&(It.push(Kt)||(un=!0,xt.pause()))}),xt)this[tn]===void 0&&typeof xt[tn]=="function"&&(this[tn]=function(Kt){return function(){return xt[Kt].apply(xt,arguments)}}(tn));for(var an=0;an{o.exports=it;var j=_(5699).F,$=j.ERR_METHOD_NOT_IMPLEMENTED,_e=j.ERR_MULTIPLE_CALLBACK,et=j.ERR_TRANSFORM_ALREADY_TRANSFORMING,tt=j.ERR_TRANSFORM_WITH_LENGTH_0,nt=_(1265);function rt(Ft,dt){var gt=this._transformState;gt.transforming=!1;var Ut=gt.writecb;if(Ut===null)return this.emit("error",new _e);gt.writechunk=null,gt.writecb=null,dt!=null&&this.push(dt),Ut(Ft);var ht=this._readableState;ht.reading=!1,(ht.needReadable||ht.length{function j(wt){var Et=this;this.next=null,this.entry=null,this.finish=function(){(function(Jt,Pt,Yt){var Mt=Jt.entry;for(Jt.entry=null;Mt;){var zt=Mt.callback;Pt.pendingcb--,zt(Yt),Mt=Mt.next}Pt.corkedRequestsFree.next=Jt})(Et,wt)}}var $;o.exports=kt,kt.WritableState=At;var _e={deprecate:_(6732)},et=_(4856),tt=_(1048).Buffer,nt=(_.g!==void 0?_.g:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},rt,it=_(6527),st=_(9952).getHighWaterMark,ut=_(5699).F,Ft=ut.ERR_INVALID_ARG_TYPE,dt=ut.ERR_METHOD_NOT_IMPLEMENTED,gt=ut.ERR_MULTIPLE_CALLBACK,Ut=ut.ERR_STREAM_CANNOT_PIPE,ht=ut.ERR_STREAM_DESTROYED,ft=ut.ERR_STREAM_NULL_VALUES,pt=ut.ERR_STREAM_WRITE_AFTER_END,Rt=ut.ERR_UNKNOWN_ENCODING,Qt=it.errorOrDestroy;function Nt(){}function At(wt,Et,Jt){$=$||_(1265),wt=wt||{},typeof Jt!="boolean"&&(Jt=Et instanceof $),this.objectMode=!!wt.objectMode,Jt&&(this.objectMode=this.objectMode||!!wt.writableObjectMode),this.highWaterMark=st(this,wt,"writableHighWaterMark",Jt),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var Pt=wt.decodeStrings===!1;this.decodeStrings=!Pt,this.defaultEncoding=wt.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(Yt){(function(Mt,zt){var qt=Mt._writableState,Xt=qt.sync,xt=qt.writecb;if(typeof xt!="function")throw new gt;if(function($t){$t.writing=!1,$t.writecb=null,$t.length-=$t.writelen,$t.writelen=0}(qt),zt)(function($t,un,tn,an,Kt){--un.pendingcb,tn?(process.nextTick(Kt,an),process.nextTick(Vt,$t,un),$t._writableState.errorEmitted=!0,Qt($t,an)):(Kt(an),$t._writableState.errorEmitted=!0,Qt($t,an),Vt($t,un))})(Mt,qt,Xt,zt,xt);else{var It=mt(qt)||Mt.destroyed;It||qt.corked||qt.bufferProcessing||!qt.bufferedRequest||vt(Mt,qt),Xt?process.nextTick(jt,Mt,qt,It,xt):jt(Mt,qt,It,xt)}})(Et,Yt)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=wt.emitClose!==!1,this.autoDestroy=!!wt.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new j(this)}function kt(wt){var Et=this instanceof($=$||_(1265));if(!Et&&!rt.call(kt,this))return new kt(wt);this._writableState=new At(wt,this,Et),this.writable=!0,wt&&(typeof wt.write=="function"&&(this._write=wt.write),typeof wt.writev=="function"&&(this._writev=wt.writev),typeof wt.destroy=="function"&&(this._destroy=wt.destroy),typeof wt.final=="function"&&(this._final=wt.final)),et.call(this)}function Bt(wt,Et,Jt,Pt,Yt,Mt,zt){Et.writelen=Pt,Et.writecb=zt,Et.writing=!0,Et.sync=!0,Et.destroyed?Et.onwrite(new ht("write")):Jt?wt._writev(Yt,Et.onwrite):wt._write(Yt,Mt,Et.onwrite),Et.sync=!1}function jt(wt,Et,Jt,Pt){Jt||function(Yt,Mt){Mt.length===0&&Mt.needDrain&&(Mt.needDrain=!1,Yt.emit("drain"))}(wt,Et),Et.pendingcb--,Pt(),Vt(wt,Et)}function vt(wt,Et){Et.bufferProcessing=!0;var Jt=Et.bufferedRequest;if(wt._writev&&Jt&&Jt.next){var Pt=Et.bufferedRequestCount,Yt=new Array(Pt),Mt=Et.corkedRequestsFree;Mt.entry=Jt;for(var zt=0,qt=!0;Jt;)Yt[zt]=Jt,Jt.isBuf||(qt=!1),Jt=Jt.next,zt+=1;Yt.allBuffers=qt,Bt(wt,Et,!0,Et.length,Yt,"",Mt.finish),Et.pendingcb++,Et.lastBufferedRequest=null,Mt.next?(Et.corkedRequestsFree=Mt.next,Mt.next=null):Et.corkedRequestsFree=new j(Et),Et.bufferedRequestCount=0}else{for(;Jt;){var Xt=Jt.chunk,xt=Jt.encoding,It=Jt.callback;if(Bt(wt,Et,!1,Et.objectMode?1:Xt.length,Xt,xt,It),Jt=Jt.next,Et.bufferedRequestCount--,Et.writing)break}Jt===null&&(Et.lastBufferedRequest=null)}Et.bufferedRequest=Jt,Et.bufferProcessing=!1}function mt(wt){return wt.ending&&wt.length===0&&wt.bufferedRequest===null&&!wt.finished&&!wt.writing}function yt(wt,Et){wt._final(function(Jt){Et.pendingcb--,Jt&&Qt(wt,Jt),Et.prefinished=!0,wt.emit("prefinish"),Vt(wt,Et)})}function Vt(wt,Et){var Jt=mt(Et);if(Jt&&(function(Yt,Mt){Mt.prefinished||Mt.finalCalled||(typeof Yt._final!="function"||Mt.destroyed?(Mt.prefinished=!0,Yt.emit("prefinish")):(Mt.pendingcb++,Mt.finalCalled=!0,process.nextTick(yt,Yt,Mt)))}(wt,Et),Et.pendingcb===0&&(Et.finished=!0,wt.emit("finish"),Et.autoDestroy))){var Pt=wt._readableState;(!Pt||Pt.autoDestroy&&Pt.endEmitted)&&wt.destroy()}return Jt}_(5615)(kt,et),At.prototype.getBuffer=function(){for(var wt=this.bufferedRequest,Et=[];wt;)Et.push(wt),wt=wt.next;return Et},function(){try{Object.defineProperty(At.prototype,"buffer",{get:_e.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}(),typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(rt=Function.prototype[Symbol.hasInstance],Object.defineProperty(kt,Symbol.hasInstance,{value:function(wt){return!!rt.call(this,wt)||this===kt&&wt&&wt._writableState instanceof At}})):rt=function(wt){return wt instanceof this},kt.prototype.pipe=function(){Qt(this,new Ut)},kt.prototype.write=function(wt,Et,Jt){var Pt,Yt=this._writableState,Mt=!1,zt=!Yt.objectMode&&(Pt=wt,tt.isBuffer(Pt)||Pt instanceof nt);return zt&&!tt.isBuffer(wt)&&(wt=function(qt){return tt.from(qt)}(wt)),typeof Et=="function"&&(Jt=Et,Et=null),zt?Et="buffer":Et||(Et=Yt.defaultEncoding),typeof Jt!="function"&&(Jt=Nt),Yt.ending?function(qt,Xt){var xt=new pt;Qt(qt,xt),process.nextTick(Xt,xt)}(this,Jt):(zt||function(qt,Xt,xt,It){var $t;return xt===null?$t=new ft:typeof xt=="string"||Xt.objectMode||($t=new Ft("chunk",["string","Buffer"],xt)),!$t||(Qt(qt,$t),process.nextTick(It,$t),!1)}(this,Yt,wt,Jt))&&(Yt.pendingcb++,Mt=function(qt,Xt,xt,It,$t,un){if(!xt){var tn=function(Bn,hn,En){return Bn.objectMode||Bn.decodeStrings===!1||typeof hn!="string"||(hn=tt.from(hn,En)),hn}(Xt,It,$t);It!==tn&&(xt=!0,$t="buffer",It=tn)}var an=Xt.objectMode?1:It.length;Xt.length+=an;var Kt=Xt.length-1))throw new Rt(wt);return this._writableState.defaultEncoding=wt,this},Object.defineProperty(kt.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(kt.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),kt.prototype._write=function(wt,Et,Jt){Jt(new dt("_write()"))},kt.prototype._writev=null,kt.prototype.end=function(wt,Et,Jt){var Pt=this._writableState;return typeof wt=="function"?(Jt=wt,wt=null,Et=null):typeof Et=="function"&&(Jt=Et,Et=null),wt!=null&&this.write(wt,Et),Pt.corked&&(Pt.corked=1,this.uncork()),Pt.ending||function(Yt,Mt,zt){Mt.ending=!0,Vt(Yt,Mt),zt&&(Mt.finished?process.nextTick(zt):Yt.once("finish",zt)),Mt.ended=!0,Yt.writable=!1}(this,Pt,Jt),this},Object.defineProperty(kt.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(kt.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(wt){this._writableState&&(this._writableState.destroyed=wt)}}),kt.prototype.destroy=it.destroy,kt.prototype._undestroy=it.undestroy,kt.prototype._destroy=function(wt,Et){Et(wt)}},534:(o,s,_)=>{var j;function $(ft,pt,Rt){return(pt=function(Qt){var Nt=function(At,kt){if(typeof At!="object"||At===null)return At;var Bt=At[Symbol.toPrimitive];if(Bt!==void 0){var jt=Bt.call(At,kt||"default");if(typeof jt!="object")return jt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(kt==="string"?String:Number)(At)}(Qt,"string");return typeof Nt=="symbol"?Nt:String(Nt)}(pt))in ft?Object.defineProperty(ft,pt,{value:Rt,enumerable:!0,configurable:!0,writable:!0}):ft[pt]=Rt,ft}var _e=_(4869),et=Symbol("lastResolve"),tt=Symbol("lastReject"),nt=Symbol("error"),rt=Symbol("ended"),it=Symbol("lastPromise"),st=Symbol("handlePromise"),ut=Symbol("stream");function Ft(ft,pt){return{value:ft,done:pt}}function dt(ft){var pt=ft[et];if(pt!==null){var Rt=ft[ut].read();Rt!==null&&(ft[it]=null,ft[et]=null,ft[tt]=null,pt(Ft(Rt,!1)))}}function gt(ft){process.nextTick(dt,ft)}var Ut=Object.getPrototypeOf(function(){}),ht=Object.setPrototypeOf(($(j={get stream(){return this[ut]},next:function(){var ft=this,pt=this[nt];if(pt!==null)return Promise.reject(pt);if(this[rt])return Promise.resolve(Ft(void 0,!0));if(this[ut].destroyed)return new Promise(function(At,kt){process.nextTick(function(){ft[nt]?kt(ft[nt]):At(Ft(void 0,!0))})});var Rt,Qt=this[it];if(Qt)Rt=new Promise(function(At,kt){return function(Bt,jt){At.then(function(){kt[rt]?Bt(Ft(void 0,!0)):kt[st](Bt,jt)},jt)}}(Qt,this));else{var Nt=this[ut].read();if(Nt!==null)return Promise.resolve(Ft(Nt,!1));Rt=new Promise(this[st])}return this[it]=Rt,Rt}},Symbol.asyncIterator,function(){return this}),$(j,"return",function(){var ft=this;return new Promise(function(pt,Rt){ft[ut].destroy(null,function(Qt){Qt?Rt(Qt):pt(Ft(void 0,!0))})})}),j),Ut);o.exports=function(ft){var pt,Rt=Object.create(ht,($(pt={},ut,{value:ft,writable:!0}),$(pt,et,{value:null,writable:!0}),$(pt,tt,{value:null,writable:!0}),$(pt,nt,{value:null,writable:!0}),$(pt,rt,{value:ft._readableState.endEmitted,writable:!0}),$(pt,st,{value:function(Qt,Nt){var At=Rt[ut].read();At?(Rt[it]=null,Rt[et]=null,Rt[tt]=null,Qt(Ft(At,!1))):(Rt[et]=Qt,Rt[tt]=Nt)},writable:!0}),pt));return Rt[it]=null,_e(ft,function(Qt){if(Qt&&Qt.code!=="ERR_STREAM_PREMATURE_CLOSE"){var Nt=Rt[tt];return Nt!==null&&(Rt[it]=null,Rt[et]=null,Rt[tt]=null,Nt(Qt)),void(Rt[nt]=Qt)}var At=Rt[et];At!==null&&(Rt[it]=null,Rt[et]=null,Rt[tt]=null,At(Ft(void 0,!0))),Rt[rt]=!0}),ft.on("readable",gt.bind(null,Rt)),Rt}},82:(o,s,_)=>{function j(st,ut){var Ft=Object.keys(st);if(Object.getOwnPropertySymbols){var dt=Object.getOwnPropertySymbols(st);ut&&(dt=dt.filter(function(gt){return Object.getOwnPropertyDescriptor(st,gt).enumerable})),Ft.push.apply(Ft,dt)}return Ft}function $(st){for(var ut=1;ut0?this.tail.next=gt:this.head=gt,this.tail=gt,++this.length}},{key:"unshift",value:function(dt){var gt={data:dt,next:this.head};this.length===0&&(this.tail=gt),this.head=gt,++this.length}},{key:"shift",value:function(){if(this.length!==0){var dt=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,dt}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(dt){if(this.length===0)return"";for(var gt=this.head,Ut=""+gt.data;gt=gt.next;)Ut+=dt+gt.data;return Ut}},{key:"concat",value:function(dt){if(this.length===0)return nt.alloc(0);for(var gt,Ut,ht,ft=nt.allocUnsafe(dt>>>0),pt=this.head,Rt=0;pt;)gt=pt.data,Ut=ft,ht=Rt,nt.prototype.copy.call(gt,Ut,ht),Rt+=pt.data.length,pt=pt.next;return ft}},{key:"consume",value:function(dt,gt){var Ut;return dtft.length?ft.length:dt;if(pt===ft.length?ht+=ft:ht+=ft.slice(0,dt),(dt-=pt)==0){pt===ft.length?(++Ut,gt.next?this.head=gt.next:this.head=this.tail=null):(this.head=gt,gt.data=ft.slice(pt));break}++Ut}return this.length-=Ut,ht}},{key:"_getBuffer",value:function(dt){var gt=nt.allocUnsafe(dt),Ut=this.head,ht=1;for(Ut.data.copy(gt),dt-=Ut.data.length;Ut=Ut.next;){var ft=Ut.data,pt=dt>ft.length?ft.length:dt;if(ft.copy(gt,gt.length-dt,0,pt),(dt-=pt)==0){pt===ft.length?(++ht,Ut.next?this.head=Ut.next:this.head=this.tail=null):(this.head=Ut,Ut.data=ft.slice(pt));break}++ht}return this.length-=ht,gt}},{key:it,value:function(dt,gt){return rt(this,$($({},gt),{},{depth:0,customInspect:!1}))}}])&&et(ut.prototype,Ft),Object.defineProperty(ut,"prototype",{writable:!1}),st}()},6527:o=>{function s($,_e){j($,_e),_($)}function _($){$._writableState&&!$._writableState.emitClose||$._readableState&&!$._readableState.emitClose||$.emit("close")}function j($,_e){$.emit("error",_e)}o.exports={destroy:function($,_e){var et=this,tt=this._readableState&&this._readableState.destroyed,nt=this._writableState&&this._writableState.destroyed;return tt||nt?(_e?_e($):$&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(j,this,$)):process.nextTick(j,this,$)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy($||null,function(rt){!_e&&rt?et._writableState?et._writableState.errorEmitted?process.nextTick(_,et):(et._writableState.errorEmitted=!0,process.nextTick(s,et,rt)):process.nextTick(s,et,rt):_e?(process.nextTick(_,et),_e(rt)):process.nextTick(_,et)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function($,_e){var et=$._readableState,tt=$._writableState;et&&et.autoDestroy||tt&&tt.autoDestroy?$.destroy(_e):$.emit("error",_e)}}},4869:(o,s,_)=>{var j=_(5699).F.ERR_STREAM_PREMATURE_CLOSE;function $(){}o.exports=function _e(et,tt,nt){if(typeof tt=="function")return _e(et,null,tt);tt||(tt={}),nt=function(pt){var Rt=!1;return function(){if(!Rt){Rt=!0;for(var Qt=arguments.length,Nt=new Array(Qt),At=0;At{o.exports=function(){throw new Error("Readable.from is not available in the browser")}},6815:(o,s,_)=>{var j,$=_(5699).F,_e=$.ERR_MISSING_ARGS,et=$.ERR_STREAM_DESTROYED;function tt(ut){if(ut)throw ut}function nt(ut,Ft,dt,gt){gt=function(ft){var pt=!1;return function(){pt||(pt=!0,ft.apply(void 0,arguments))}}(gt);var Ut=!1;ut.on("close",function(){Ut=!0}),j===void 0&&(j=_(4869)),j(ut,{readable:Ft,writable:dt},function(ft){if(ft)return gt(ft);Ut=!0,gt()});var ht=!1;return function(ft){if(!Ut&&!ht)return ht=!0,function(pt){return pt.setHeader&&typeof pt.abort=="function"}(ut)?ut.abort():typeof ut.destroy=="function"?ut.destroy():void gt(ft||new et("pipe"))}}function rt(ut){ut()}function it(ut,Ft){return ut.pipe(Ft)}function st(ut){return ut.length?typeof ut[ut.length-1]!="function"?tt:ut.pop():tt}o.exports=function(){for(var ut=arguments.length,Ft=new Array(ut),dt=0;dt0,function(Qt){gt||(gt=Qt),Qt&&ht.forEach(rt),Rt||(ht.forEach(rt),Ut(gt))})});return Ft.reduce(it)}},9952:(o,s,_)=>{var j=_(5699).F.ERR_INVALID_OPT_VALUE;o.exports={getHighWaterMark:function($,_e,et,tt){var nt=function(rt,it,st){return rt.highWaterMark!=null?rt.highWaterMark:it?rt[st]:null}(_e,tt,et);if(nt!=null){if(!isFinite(nt)||Math.floor(nt)!==nt||nt<0)throw new j(tt?et:"highWaterMark",nt);return Math.floor(nt)}return $.objectMode?16:16384}}},4856:(o,s,_)=>{o.exports=_(46).EventEmitter},4156:(o,s,_)=>{(s=o.exports=_(8199)).Stream=s,s.Readable=s,s.Writable=_(5291),s.Duplex=_(1265),s.Transform=_(9415),s.PassThrough=_(4421),s.finished=_(4869),s.pipeline=_(6815)},5636:(o,s,_)=>{var j=_(1048),$=j.Buffer;function _e(tt,nt){for(var rt in tt)nt[rt]=tt[rt]}function et(tt,nt,rt){return $(tt,nt,rt)}$.from&&$.alloc&&$.allocUnsafe&&$.allocUnsafeSlow?o.exports=j:(_e(j,s),s.Buffer=et),et.prototype=Object.create($.prototype),_e($,et),et.from=function(tt,nt,rt){if(typeof tt=="number")throw new TypeError("Argument must not be a number");return $(tt,nt,rt)},et.alloc=function(tt,nt,rt){if(typeof tt!="number")throw new TypeError("Argument must be a number");var it=$(tt);return nt!==void 0?typeof rt=="string"?it.fill(nt,rt):it.fill(nt):it.fill(0),it},et.allocUnsafe=function(tt){if(typeof tt!="number")throw new TypeError("Argument must be a number");return $(tt)},et.allocUnsafeSlow=function(tt){if(typeof tt!="number")throw new TypeError("Argument must be a number");return j.SlowBuffer(tt)}},1145:(o,s)=>{const{hasOwnProperty:_}=Object.prototype,j=dt();j.configure=dt,j.stringify=j,j.default=j,s.stringify=j,s.configure=dt,o.exports=j;const $=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]|[\ud800-\udbff](?![\udc00-\udfff])|(?:[^\ud800-\udbff]|^)[\udc00-\udfff]/;function _e(gt){return gt.length<5e3&&!$.test(gt)?`"${gt}"`:JSON.stringify(gt)}function et(gt){if(gt.length>200)return gt.sort();for(let Ut=1;Utht;)gt[ft]=gt[ft-1],ft--;gt[ft]=ht}return gt}const tt=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function nt(gt){return tt.call(gt)!==void 0&>.length!==0}function rt(gt,Ut,ht){gt.length= 1`)}return ht===void 0?1/0:ht}function ut(gt){return gt===1?"1 item":gt+" items"}function Ft(gt){const Ut=new Set;for(const ht of gt)typeof ht!="string"&&typeof ht!="number"||Ut.add(String(ht));return Ut}function dt(gt){const Ut=function(jt){if(_.call(jt,"strict")){const vt=jt.strict;if(typeof vt!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(vt)return mt=>{let yt="Object can not safely be stringified. Received type "+typeof mt;throw typeof mt!="function"&&(yt+=` (${mt.toString()})`),new Error(yt)}}}(gt={...gt});Ut&&(gt.bigint===void 0&&(gt.bigint=!1),"circularValue"in gt||(gt.circularValue=Error));const ht=function(jt){if(_.call(jt,"circularValue")){const vt=jt.circularValue;if(typeof vt=="string")return`"${vt}"`;if(vt==null)return vt;if(vt===Error||vt===TypeError)return{toString(){throw new TypeError("Converting circular structure to JSON")}};throw new TypeError('The "circularValue" argument must be of type string or the value null or undefined')}return'"[Circular]"'}(gt),ft=it(gt,"bigint"),pt=it(gt,"deterministic"),Rt=st(gt,"maximumDepth"),Qt=st(gt,"maximumBreadth");function Nt(jt,vt,mt,yt,Vt,wt){let Et=vt[jt];switch(typeof Et=="object"&&Et!==null&&typeof Et.toJSON=="function"&&(Et=Et.toJSON(jt)),Et=yt.call(vt,jt,Et),typeof Et){case"string":return _e(Et);case"object":{if(Et===null)return"null";if(mt.indexOf(Et)!==-1)return ht;let Jt="",Pt=",";const Yt=wt;if(Array.isArray(Et)){if(Et.length===0)return"[]";if(RtQt&&(Jt+=`${Pt}"... ${ut(Et.length-Qt-1)} not stringified"`),Vt!==""&&(Jt+=` +`+Yt),mt.pop(),`[${Jt}]`}let Mt=Object.keys(Et);const zt=Mt.length;if(zt===0)return"{}";if(RtQt&&(Jt+=`${Xt}"...":${qt}"${ut(zt-Qt)} not stringified"`,Xt=Pt),Vt!==""&&Xt.length>1&&(Jt=` +${wt}${Jt} +${Yt}`),mt.pop(),`{${Jt}}`}case"number":return isFinite(Et)?String(Et):Ut?Ut(Et):"null";case"boolean":return Et===!0?"true":"false";case"undefined":return;case"bigint":if(ft)return String(Et);default:return Ut?Ut(Et):void 0}}function At(jt,vt,mt,yt,Vt,wt){switch(typeof vt=="object"&&vt!==null&&typeof vt.toJSON=="function"&&(vt=vt.toJSON(jt)),typeof vt){case"string":return _e(vt);case"object":{if(vt===null)return"null";if(mt.indexOf(vt)!==-1)return ht;const Et=wt;let Jt="",Pt=",";if(Array.isArray(vt)){if(vt.length===0)return"[]";if(RtQt&&(Jt+=`${Pt}"... ${ut(vt.length-Qt-1)} not stringified"`),Vt!==""&&(Jt+=` +`+Et),mt.pop(),`[${Jt}]`}mt.push(vt);let Yt="";Vt!==""&&(Pt=`, +`+(wt+=Vt),Yt=" ");let Mt="";for(const zt of yt){const qt=At(zt,vt[zt],mt,yt,Vt,wt);qt!==void 0&&(Jt+=`${Mt}${_e(zt)}:${Yt}${qt}`,Mt=Pt)}return Vt!==""&&Mt.length>1&&(Jt=` +${wt}${Jt} +${Et}`),mt.pop(),`{${Jt}}`}case"number":return isFinite(vt)?String(vt):Ut?Ut(vt):"null";case"boolean":return vt===!0?"true":"false";case"undefined":return;case"bigint":if(ft)return String(vt);default:return Ut?Ut(vt):void 0}}function kt(jt,vt,mt,yt,Vt){switch(typeof vt){case"string":return _e(vt);case"object":{if(vt===null)return"null";if(typeof vt.toJSON=="function"){if(typeof(vt=vt.toJSON(jt))!="object")return kt(jt,vt,mt,yt,Vt);if(vt===null)return"null"}if(mt.indexOf(vt)!==-1)return ht;const wt=Vt;if(Array.isArray(vt)){if(vt.length===0)return"[]";if(RtQt&&(qt+=`${Xt}"... ${ut(vt.length-Qt-1)} not stringified"`),qt+=` +`+wt,mt.pop(),`[${qt}]`}let Et=Object.keys(vt);const Jt=Et.length;if(Jt===0)return"{}";if(RtQt&&(Yt+=`${Mt}"...": "${ut(Jt-Qt)} not stringified"`,Mt=Pt),Mt!==""&&(Yt=` +${Vt}${Yt} +${wt}`),mt.pop(),`{${Yt}}`}case"number":return isFinite(vt)?String(vt):Ut?Ut(vt):"null";case"boolean":return vt===!0?"true":"false";case"undefined":return;case"bigint":if(ft)return String(vt);default:return Ut?Ut(vt):void 0}}function Bt(jt,vt,mt){switch(typeof vt){case"string":return _e(vt);case"object":{if(vt===null)return"null";if(typeof vt.toJSON=="function"){if(typeof(vt=vt.toJSON(jt))!="object")return Bt(jt,vt,mt);if(vt===null)return"null"}if(mt.indexOf(vt)!==-1)return ht;let yt="";if(Array.isArray(vt)){if(vt.length===0)return"[]";if(RtQt&&(yt+=`,"... ${ut(vt.length-Qt-1)} not stringified"`),mt.pop(),`[${yt}]`}let Vt=Object.keys(vt);const wt=Vt.length;if(wt===0)return"{}";if(RtQt&&(yt+=`${Et}"...":"${ut(wt-Qt)} not stringified"`),mt.pop(),`{${yt}}`}case"number":return isFinite(vt)?String(vt):Ut?Ut(vt):"null";case"boolean":return vt===!0?"true":"false";case"undefined":return;case"bigint":if(ft)return String(vt);default:return Ut?Ut(vt):void 0}}return function(jt,vt,mt){if(arguments.length>1){let yt="";if(typeof mt=="number"?yt=" ".repeat(Math.min(mt,10)):typeof mt=="string"&&(yt=mt.slice(0,10)),vt!=null){if(typeof vt=="function")return Nt("",{"":jt},[],vt,yt,"");if(Array.isArray(vt))return At("",jt,[],Ft(vt),yt,"")}if(yt.length!==0)return kt("",jt,[],yt,"")}return Bt("",jt,[])}}},6108:(o,s,_)=>{var j=_(528),$=_(686),_e=_(7239)(),et=_(9336),tt=_(3468),nt=j("%Math.floor%");o.exports=function(rt,it){if(typeof rt!="function")throw new tt("`fn` is not a function");if(typeof it!="number"||it<0||it>4294967295||nt(it)!==it)throw new tt("`length` must be a positive 32-bit integer");var st=arguments.length>2&&!!arguments[2],ut=!0,Ft=!0;if("length"in rt&&et){var dt=et(rt,"length");dt&&!dt.configurable&&(ut=!1),dt&&!dt.writable&&(Ft=!1)}return(ut||Ft||!st)&&(_e?$(rt,"length",it,!0,!0):$(rt,"length",it)),rt}},7575:(o,s,_)=>{var j=_(528),$=_(9818),_e=_(8660),et=_(3468),tt=j("%WeakMap%",!0),nt=j("%Map%",!0),rt=$("WeakMap.prototype.get",!0),it=$("WeakMap.prototype.set",!0),st=$("WeakMap.prototype.has",!0),ut=$("Map.prototype.get",!0),Ft=$("Map.prototype.set",!0),dt=$("Map.prototype.has",!0),gt=function(Ut,ht){for(var ft,pt=Ut;(ft=pt.next)!==null;pt=ft)if(ft.key===ht)return pt.next=ft.next,ft.next=Ut.next,Ut.next=ft,ft};o.exports=function(){var Ut,ht,ft,pt={assert:function(Rt){if(!pt.has(Rt))throw new et("Side channel does not contain "+_e(Rt))},get:function(Rt){if(tt&&Rt&&(typeof Rt=="object"||typeof Rt=="function")){if(Ut)return rt(Ut,Rt)}else if(nt){if(ht)return ut(ht,Rt)}else if(ft)return function(Qt,Nt){var At=gt(Qt,Nt);return At&&At.value}(ft,Rt)},has:function(Rt){if(tt&&Rt&&(typeof Rt=="object"||typeof Rt=="function")){if(Ut)return st(Ut,Rt)}else if(nt){if(ht)return dt(ht,Rt)}else if(ft)return function(Qt,Nt){return!!gt(Qt,Nt)}(ft,Rt);return!1},set:function(Rt,Qt){tt&&Rt&&(typeof Rt=="object"||typeof Rt=="function")?(Ut||(Ut=new tt),it(Ut,Rt,Qt)):nt?(ht||(ht=new nt),Ft(ht,Rt,Qt)):(ft||(ft={key:{},next:null}),function(Nt,At,kt){var Bt=gt(Nt,At);Bt?Bt.value=kt:Nt.next={key:At,next:Nt.next,value:kt}}(ft,Rt,Qt))}};return pt}},5082:(o,s)=>{function _(j){for(var $ in j)this[$]=j[$]}s.get=function(j){var $=Error.stackTraceLimit;Error.stackTraceLimit=1/0;var _e={},et=Error.prepareStackTrace;Error.prepareStackTrace=function(nt,rt){return rt},Error.captureStackTrace(_e,j||s.get);var tt=_e.stack;return Error.prepareStackTrace=et,Error.stackTraceLimit=$,tt},s.parse=function(j){if(!j.stack)return[];var $=this;return j.stack.split(` +`).slice(1).map(function(_e){if(_e.match(/^\s*[-]{4,}$/))return $._createParsedCallSite({fileName:_e,lineNumber:null,functionName:null,typeName:null,methodName:null,columnNumber:null,native:null});var et=_e.match(/at (?:(.+)\s+\()?(?:(.+?):(\d+)(?::(\d+))?|([^)]+))\)?/);if(et){var tt=null,nt=null,rt=null,it=null,st=null,ut=et[5]==="native";if(et[1]){var Ft=(rt=et[1]).lastIndexOf(".");if(rt[Ft-1]=="."&&Ft--,Ft>0){tt=rt.substr(0,Ft),nt=rt.substr(Ft+1);var dt=tt.indexOf(".Module");dt>0&&(rt=rt.substr(dt+1),tt=tt.substr(0,dt))}it=null}nt&&(it=tt,st=nt),nt===""&&(st=null,rt=null);var gt={fileName:et[2]||null,lineNumber:parseInt(et[3],10)||null,functionName:rt,typeName:it,methodName:st,columnNumber:parseInt(et[4],10)||null,native:ut};return $._createParsedCallSite(gt)}}).filter(function(_e){return!!_e})},["this","typeName","functionName","methodName","fileName","lineNumber","columnNumber","function","evalOrigin"].forEach(function(j){_.prototype[j]=null,_.prototype["get"+j[0].toUpperCase()+j.substr(1)]=function(){return this[j]}}),["topLevel","eval","native","constructor"].forEach(function(j){_.prototype[j]=!1,_.prototype["is"+j[0].toUpperCase()+j.substr(1)]=function(){return this[j]}}),s._createParsedCallSite=function(j){return new _(j)}},1983:(o,s,_)=>{o.exports=$;var j=_(46).EventEmitter;function $(){j.call(this)}_(5615)($,j),$.Readable=_(8199),$.Writable=_(5291),$.Duplex=_(1265),$.Transform=_(9415),$.PassThrough=_(4421),$.finished=_(4869),$.pipeline=_(6815),$.Stream=$,$.prototype.pipe=function(_e,et){var tt=this;function nt(gt){_e.writable&&_e.write(gt)===!1&&tt.pause&&tt.pause()}function rt(){tt.readable&&tt.resume&&tt.resume()}tt.on("data",nt),_e.on("drain",rt),_e._isStdio||et&&et.end===!1||(tt.on("end",st),tt.on("close",ut));var it=!1;function st(){it||(it=!0,_e.end())}function ut(){it||(it=!0,typeof _e.destroy=="function"&&_e.destroy())}function Ft(gt){if(dt(),j.listenerCount(this,"error")===0)throw gt}function dt(){tt.removeListener("data",nt),_e.removeListener("drain",rt),tt.removeListener("end",st),tt.removeListener("close",ut),tt.removeListener("error",Ft),_e.removeListener("error",Ft),tt.removeListener("end",dt),tt.removeListener("close",dt),_e.removeListener("close",dt)}return tt.on("error",Ft),_e.on("error",Ft),tt.on("end",dt),tt.on("close",dt),_e.on("close",dt),_e.emit("pipe",tt),_e}},4865:(o,s,_)=>{var j=_(6255),$=_(6846),_e=_(3227),et=_(49),tt=_(5442),nt=s;nt.request=function(rt,it){rt=typeof rt=="string"?tt.parse(rt):_e(rt);var st=_.g.location.protocol.search(/^https?:$/)===-1?"http:":"",ut=rt.protocol||st,Ft=rt.hostname||rt.host,dt=rt.port,gt=rt.path||"/";Ft&&Ft.indexOf(":")!==-1&&(Ft="["+Ft+"]"),rt.url=(Ft?ut+"//"+Ft:"")+(dt?":"+dt:"")+gt,rt.method=(rt.method||"GET").toUpperCase(),rt.headers=rt.headers||{};var Ut=new j(rt);return it&&Ut.on("response",it),Ut},nt.get=function(rt,it){var st=nt.request(rt,it);return st.end(),st},nt.ClientRequest=j,nt.IncomingMessage=$.IncomingMessage,nt.Agent=function(){},nt.Agent.defaultMaxSockets=4,nt.globalAgent=new nt.Agent,nt.STATUS_CODES=et,nt.METHODS=["CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REPORT","SEARCH","SUBSCRIBE","TRACE","UNLOCK","UNSUBSCRIBE"]},2271:(o,s,_)=>{var j;function $(){if(j!==void 0)return j;if(_.g.XMLHttpRequest){j=new _.g.XMLHttpRequest;try{j.open("GET",_.g.XDomainRequest?"/":"https://example.com")}catch{j=null}}else j=null;return j}function _e(tt){var nt=$();if(!nt)return!1;try{return nt.responseType=tt,nt.responseType===tt}catch{}return!1}function et(tt){return typeof tt=="function"}s.fetch=et(_.g.fetch)&&et(_.g.ReadableStream),s.writableStream=et(_.g.WritableStream),s.abortController=et(_.g.AbortController),s.arraybuffer=s.fetch||_e("arraybuffer"),s.msstream=!s.fetch&&_e("ms-stream"),s.mozchunkedarraybuffer=!s.fetch&&_e("moz-chunked-arraybuffer"),s.overrideMimeType=s.fetch||!!$()&&et($().overrideMimeType),j=null},6255:(o,s,_)=>{var j=_(2271),$=_(5615),_e=_(6846),et=_(4156),tt=_e.IncomingMessage,nt=_e.readyStates,rt=o.exports=function(st){var ut,Ft=this;et.Writable.call(Ft),Ft._opts=st,Ft._body=[],Ft._headers={},st.auth&&Ft.setHeader("Authorization","Basic "+Buffer.from(st.auth).toString("base64")),Object.keys(st.headers).forEach(function(gt){Ft.setHeader(gt,st.headers[gt])});var dt=!0;if(st.mode==="disable-fetch"||"requestTimeout"in st&&!j.abortController)dt=!1,ut=!0;else if(st.mode==="prefer-streaming")ut=!1;else if(st.mode==="allow-wrong-content-type")ut=!j.overrideMimeType;else{if(st.mode&&st.mode!=="default"&&st.mode!=="prefer-fast")throw new Error("Invalid value for opts.mode");ut=!0}Ft._mode=function(gt,Ut){return j.fetch&&Ut?"fetch":j.mozchunkedarraybuffer?"moz-chunked-arraybuffer":j.msstream?"ms-stream":j.arraybuffer&>?"arraybuffer":"text"}(ut,dt),Ft._fetchTimer=null,Ft._socketTimeout=null,Ft._socketTimer=null,Ft.on("finish",function(){Ft._onFinish()})};$(rt,et.Writable),rt.prototype.setHeader=function(st,ut){var Ft=st.toLowerCase();it.indexOf(Ft)===-1&&(this._headers[Ft]={name:st,value:ut})},rt.prototype.getHeader=function(st){var ut=this._headers[st.toLowerCase()];return ut?ut.value:null},rt.prototype.removeHeader=function(st){delete this._headers[st.toLowerCase()]},rt.prototype._onFinish=function(){var st=this;if(!st._destroyed){var ut=st._opts;"timeout"in ut&&ut.timeout!==0&&st.setTimeout(ut.timeout);var Ft=st._headers,dt=null;ut.method!=="GET"&&ut.method!=="HEAD"&&(dt=new Blob(st._body,{type:(Ft["content-type"]||{}).value||""}));var gt=[];if(Object.keys(Ft).forEach(function(pt){var Rt=Ft[pt].name,Qt=Ft[pt].value;Array.isArray(Qt)?Qt.forEach(function(Nt){gt.push([Rt,Nt])}):gt.push([Rt,Qt])}),st._mode==="fetch"){var Ut=null;if(j.abortController){var ht=new AbortController;Ut=ht.signal,st._fetchAbortController=ht,"requestTimeout"in ut&&ut.requestTimeout!==0&&(st._fetchTimer=_.g.setTimeout(function(){st.emit("requestTimeout"),st._fetchAbortController&&st._fetchAbortController.abort()},ut.requestTimeout))}_.g.fetch(st._opts.url,{method:st._opts.method,headers:gt,body:dt||void 0,mode:"cors",credentials:ut.withCredentials?"include":"same-origin",signal:Ut}).then(function(pt){st._fetchResponse=pt,st._resetTimers(!1),st._connect()},function(pt){st._resetTimers(!0),st._destroyed||st.emit("error",pt)})}else{var ft=st._xhr=new _.g.XMLHttpRequest;try{ft.open(st._opts.method,st._opts.url,!0)}catch(pt){return void process.nextTick(function(){st.emit("error",pt)})}"responseType"in ft&&(ft.responseType=st._mode),"withCredentials"in ft&&(ft.withCredentials=!!ut.withCredentials),st._mode==="text"&&"overrideMimeType"in ft&&ft.overrideMimeType("text/plain; charset=x-user-defined"),"requestTimeout"in ut&&(ft.timeout=ut.requestTimeout,ft.ontimeout=function(){st.emit("requestTimeout")}),gt.forEach(function(pt){ft.setRequestHeader(pt[0],pt[1])}),st._response=null,ft.onreadystatechange=function(){switch(ft.readyState){case nt.LOADING:case nt.DONE:st._onXHRProgress()}},st._mode==="moz-chunked-arraybuffer"&&(ft.onprogress=function(){st._onXHRProgress()}),ft.onerror=function(){st._destroyed||(st._resetTimers(!0),st.emit("error",new Error("XHR error")))};try{ft.send(dt)}catch(pt){return void process.nextTick(function(){st.emit("error",pt)})}}}},rt.prototype._onXHRProgress=function(){this._resetTimers(!1),function(st){try{var ut=st.status;return ut!==null&&ut!==0}catch{return!1}}(this._xhr)&&!this._destroyed&&(this._response||this._connect(),this._response._onXHRProgress(this._resetTimers.bind(this)))},rt.prototype._connect=function(){var st=this;st._destroyed||(st._response=new tt(st._xhr,st._fetchResponse,st._mode,st._resetTimers.bind(st)),st._response.on("error",function(ut){st.emit("error",ut)}),st.emit("response",st._response))},rt.prototype._write=function(st,ut,Ft){this._body.push(st),Ft()},rt.prototype._resetTimers=function(st){var ut=this;_.g.clearTimeout(ut._socketTimer),ut._socketTimer=null,st?(_.g.clearTimeout(ut._fetchTimer),ut._fetchTimer=null):ut._socketTimeout&&(ut._socketTimer=_.g.setTimeout(function(){ut.emit("timeout")},ut._socketTimeout))},rt.prototype.abort=rt.prototype.destroy=function(st){this._destroyed=!0,this._resetTimers(!0),this._response&&(this._response._destroyed=!0),this._xhr?this._xhr.abort():this._fetchAbortController&&this._fetchAbortController.abort(),st&&this.emit("error",st)},rt.prototype.end=function(st,ut,Ft){typeof st=="function"&&(Ft=st,st=void 0),et.Writable.prototype.end.call(this,st,ut,Ft)},rt.prototype.setTimeout=function(st,ut){ut&&this.once("timeout",ut),this._socketTimeout=st,this._resetTimers(!1)},rt.prototype.flushHeaders=function(){},rt.prototype.setNoDelay=function(){},rt.prototype.setSocketKeepAlive=function(){};var it=["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","cookie","cookie2","date","dnt","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"]},6846:(o,s,_)=>{var j=_(2271),$=_(5615),_e=_(4156),et=s.readyStates={UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4},tt=s.IncomingMessage=function(nt,rt,it,st){var ut=this;if(_e.Readable.call(ut),ut._mode=it,ut.headers={},ut.rawHeaders=[],ut.trailers={},ut.rawTrailers=[],ut.on("end",function(){process.nextTick(function(){ut.emit("close")})}),it==="fetch"){if(ut._fetchResponse=rt,ut.url=rt.url,ut.statusCode=rt.status,ut.statusMessage=rt.statusText,rt.headers.forEach(function(ht,ft){ut.headers[ft.toLowerCase()]=ht,ut.rawHeaders.push(ft,ht)}),j.writableStream){var Ft=new WritableStream({write:function(ht){return st(!1),new Promise(function(ft,pt){ut._destroyed?pt():ut.push(Buffer.from(ht))?ft():ut._resumeFetch=ft})},close:function(){st(!0),ut._destroyed||ut.push(null)},abort:function(ht){st(!0),ut._destroyed||ut.emit("error",ht)}});try{return void rt.body.pipeTo(Ft).catch(function(ht){st(!0),ut._destroyed||ut.emit("error",ht)})}catch{}}var dt=rt.body.getReader();(function ht(){dt.read().then(function(ft){ut._destroyed||(st(ft.done),ft.done?ut.push(null):(ut.push(Buffer.from(ft.value)),ht()))}).catch(function(ft){st(!0),ut._destroyed||ut.emit("error",ft)})})()}else if(ut._xhr=nt,ut._pos=0,ut.url=nt.responseURL,ut.statusCode=nt.status,ut.statusMessage=nt.statusText,nt.getAllResponseHeaders().split(/\r?\n/).forEach(function(ht){var ft=ht.match(/^([^:]+):\s*(.*)/);if(ft){var pt=ft[1].toLowerCase();pt==="set-cookie"?(ut.headers[pt]===void 0&&(ut.headers[pt]=[]),ut.headers[pt].push(ft[2])):ut.headers[pt]!==void 0?ut.headers[pt]+=", "+ft[2]:ut.headers[pt]=ft[2],ut.rawHeaders.push(ft[1],ft[2])}}),ut._charset="x-user-defined",!j.overrideMimeType){var gt=ut.rawHeaders["mime-type"];if(gt){var Ut=gt.match(/;\s*charset=([^;])(;|$)/);Ut&&(ut._charset=Ut[1].toLowerCase())}ut._charset||(ut._charset="utf-8")}};$(tt,_e.Readable),tt.prototype._read=function(){var nt=this._resumeFetch;nt&&(this._resumeFetch=null,nt())},tt.prototype._onXHRProgress=function(nt){var rt=this,it=rt._xhr,st=null;switch(rt._mode){case"text":if((st=it.responseText).length>rt._pos){var ut=st.substr(rt._pos);if(rt._charset==="x-user-defined"){for(var Ft=Buffer.alloc(ut.length),dt=0;dtrt._pos&&(rt.push(Buffer.from(new Uint8Array(gt.result.slice(rt._pos)))),rt._pos=gt.result.byteLength)},gt.onload=function(){nt(!0),rt.push(null)},gt.readAsArrayBuffer(st)}rt._xhr.readyState===et.DONE&&rt._mode!=="ms-stream"&&(nt(!0),rt.push(null))}},8888:(o,s,_)=>{var j=_(5636).Buffer,$=j.isEncoding||function(dt){switch((dt=""+dt)&&dt.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function _e(dt){var gt;switch(this.encoding=function(Ut){var ht=function(ft){if(!ft)return"utf8";for(var pt;;)switch(ft){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return ft;default:if(pt)return;ft=(""+ft).toLowerCase(),pt=!0}}(Ut);if(typeof ht!="string"&&(j.isEncoding===$||!$(Ut)))throw new Error("Unknown encoding: "+Ut);return ht||Ut}(dt),this.encoding){case"utf16le":this.text=nt,this.end=rt,gt=4;break;case"utf8":this.fillLast=tt,gt=4;break;case"base64":this.text=it,this.end=st,gt=3;break;default:return this.write=ut,void(this.end=Ft)}this.lastNeed=0,this.lastTotal=0,this.lastChar=j.allocUnsafe(gt)}function et(dt){return dt<=127?0:dt>>5==6?2:dt>>4==14?3:dt>>3==30?4:dt>>6==2?-1:-2}function tt(dt){var gt=this.lastTotal-this.lastNeed,Ut=function(ht,ft,pt){if((192&ft[0])!=128)return ht.lastNeed=0,"�";if(ht.lastNeed>1&&ft.length>1){if((192&ft[1])!=128)return ht.lastNeed=1,"�";if(ht.lastNeed>2&&ft.length>2&&(192&ft[2])!=128)return ht.lastNeed=2,"�"}}(this,dt);return Ut!==void 0?Ut:this.lastNeed<=dt.length?(dt.copy(this.lastChar,gt,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(dt.copy(this.lastChar,gt,0,dt.length),void(this.lastNeed-=dt.length))}function nt(dt,gt){if((dt.length-gt)%2==0){var Ut=dt.toString("utf16le",gt);if(Ut){var ht=Ut.charCodeAt(Ut.length-1);if(ht>=55296&&ht<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=dt[dt.length-2],this.lastChar[1]=dt[dt.length-1],Ut.slice(0,-1)}return Ut}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=dt[dt.length-1],dt.toString("utf16le",gt,dt.length-1)}function rt(dt){var gt=dt&&dt.length?this.write(dt):"";if(this.lastNeed){var Ut=this.lastTotal-this.lastNeed;return gt+this.lastChar.toString("utf16le",0,Ut)}return gt}function it(dt,gt){var Ut=(dt.length-gt)%3;return Ut===0?dt.toString("base64",gt):(this.lastNeed=3-Ut,this.lastTotal=3,Ut===1?this.lastChar[0]=dt[dt.length-1]:(this.lastChar[0]=dt[dt.length-2],this.lastChar[1]=dt[dt.length-1]),dt.toString("base64",gt,dt.length-Ut))}function st(dt){var gt=dt&&dt.length?this.write(dt):"";return this.lastNeed?gt+this.lastChar.toString("base64",0,3-this.lastNeed):gt}function ut(dt){return dt.toString(this.encoding)}function Ft(dt){return dt&&dt.length?this.write(dt):""}s.StringDecoder=_e,_e.prototype.write=function(dt){if(dt.length===0)return"";var gt,Ut;if(this.lastNeed){if((gt=this.fillLast(dt))===void 0)return"";Ut=this.lastNeed,this.lastNeed=0}else Ut=0;return Ut=0?(Nt>0&&(ft.lastNeed=Nt-1),Nt):--Qt=0?(Nt>0&&(ft.lastNeed=Nt-2),Nt):--Qt=0?(Nt>0&&(Nt===2?Nt=0:ft.lastNeed=Nt-3),Nt):0}(this,dt,gt);if(!this.lastNeed)return dt.toString("utf8",gt);this.lastTotal=Ut;var ht=dt.length-(Ut-this.lastNeed);return dt.copy(this.lastChar,0,ht),dt.toString("utf8",gt,ht)},_e.prototype.fillLast=function(dt){if(this.lastNeed<=dt.length)return dt.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);dt.copy(this.lastChar,this.lastTotal-this.lastNeed,0,dt.length),this.lastNeed-=dt.length}},9023:(o,s)=>{s.levels={error:0,warn:1,help:2,data:3,info:4,debug:5,prompt:6,verbose:7,input:8,silly:9},s.colors={error:"red",warn:"yellow",help:"cyan",data:"grey",info:"green",debug:"blue",prompt:"grey",verbose:"cyan",input:"grey",silly:"magenta"}},2797:(o,s,_)=>{Object.defineProperty(s,"cli",{value:_(9023)}),Object.defineProperty(s,"npm",{value:_(5828)}),Object.defineProperty(s,"syslog",{value:_(7408)})},5828:(o,s)=>{s.levels={error:0,warn:1,info:2,http:3,verbose:4,debug:5,silly:6},s.colors={error:"red",warn:"yellow",info:"green",http:"green",verbose:"cyan",debug:"blue",silly:"magenta"}},7408:(o,s)=>{s.levels={emerg:0,alert:1,crit:2,error:3,warning:4,notice:5,info:6,debug:7},s.colors={emerg:"red",alert:"yellow",crit:"red",error:"red",warning:"red",notice:"yellow",info:"green",debug:"blue"}},4966:(o,s,_)=>{Object.defineProperty(s,"LEVEL",{value:Symbol.for("level")}),Object.defineProperty(s,"MESSAGE",{value:Symbol.for("message")}),Object.defineProperty(s,"SPLAT",{value:Symbol.for("splat")}),Object.defineProperty(s,"configs",{value:_(2797)})},7396:(o,s,_)=>{_.d(s,{V:()=>Ut});var j=_(288),$=_.n(j),_e=_(3778);class et extends Error{constructor(ft,pt,Rt){super("Connection failure: "+ft.message),this.cause=ft,this.url=pt,this.retryable=Rt,this.name="ConnectionError",Object.setPrototypeOf(this,new.target.prototype)}}var tt=_(7221),nt=_(4356),rt=_(1597),it=_(3721),st=_(7197);class ut extends Error{constructor(ft,pt){super(`Invalid headers (${JSON.stringify(ft)}) for response: ${pt.message}`),this.validationErrors=ft,this.responseError=pt}}var Ft=function(ht,ft,pt,Rt){return new(pt||(pt=Promise))(function(Qt,Nt){function At(jt){try{Bt(Rt.next(jt))}catch(vt){Nt(vt)}}function kt(jt){try{Bt(Rt.throw(jt))}catch(vt){Nt(vt)}}function Bt(jt){var vt;jt.done?Qt(jt.value):(vt=jt.value,vt instanceof pt?vt:new pt(function(mt){mt(vt)})).then(At,kt)}Bt((Rt=Rt.apply(ht,ft||[])).next())})},dt=function(ht,ft){var pt={};for(var Rt in ht)Object.prototype.hasOwnProperty.call(ht,Rt)&&ft.indexOf(Rt)<0&&(pt[Rt]=ht[Rt]);if(ht!=null&&typeof Object.getOwnPropertySymbols=="function"){var Qt=0;for(Rt=Object.getOwnPropertySymbols(ht);Qtpt.validateHeaders?pt.validateHeaders(Rt):{},this.verbose=pt.verbose!==!1,pt.retries!==void 0&&!(pt.retries>=0))throw new Error("retries must be positive or zero");if(this.configuredRetries=pt.retries,pt.timeoutMs!==void 0&&!(pt.timeoutMs>0))throw new Error("timeoutMs must be positive");if(this.timeoutMs=pt.timeoutMs,pt.maxBackoffDelayMs!==void 0&&!(pt.maxBackoffDelayMs>0))throw new Error("maxBackoffDelayMs must be positive");this.maxBackoffDelayMs=pt.maxBackoffDelayMs||30*_e.p.second,this.json=pt.json!==!1}getRetries(){return this.configuredRetries!==void 0?this.configuredRetries:this.getConstructor().retries}getHeaders(){return{}}fetch(ft){return Ft(this,arguments,void 0,function*(pt,Rt={}){return(yield this.fetchVerbose(pt,Rt)).body})}fetchVerbose(ft){return Ft(this,arguments,void 0,function*(pt,Rt={}){let Qt=100*_e.p.millisecond,Nt=0;const At=this.timeoutMs!==void 0?new Date().getTime()+this.timeoutMs:void 0,kt=At?()=>Math.max(At-new Date().getTime(),0):void 0;for(;;)try{return yield this.doFetch(pt,Rt,kt)}catch(Bt){const jt=Bt,vt=(0,it.e)(jt,et);if((kt==null?void 0:kt())===0||Nt===this.getRetries()||!vt.retryable)throw vt;Nt++,Qt=Math.min(...kt?[kt()]:[],Qt*(2+.1*(Math.random()-.5)),this.maxBackoffDelayMs),yield(0,tt.c)(Qt),this.verbose&&rt.vF.warn("Connection failure, retrying. Error: "+jt.cause.message,{url:jt.url,error:jt.cause,attempt:Nt})}})}doFetch(ft,pt,Rt){return Ft(this,void 0,void 0,function*(){const{token:Qt,json:Nt=this.json,allowUnsafeRetries:At}=pt,kt=dt(pt,["token","json","allowUnsafeRetries"]),{token:Bt,traceId:jt}=typeof Qt=="string"?{token:Qt}:Qt??{},vt=(kt.method||"GET").toUpperCase(),mt=this.endpoint!==void 0?`${this.endpoint}${ft?"/"+ft:""}`:ft,yt=new AbortController;let Vt;if(Rt){const wt=Rt();wt>0?Vt=setTimeout(()=>{yt.abort()},wt):yt.abort()}try{let wt;yield Promise.race([this.getConstructor().waitForConnectivity(),new Promise(qt=>{wt=setTimeout(qt,Rt?Math.min(_e.p.minute,Rt()):_e.p.minute)})]),wt&&clearTimeout(wt);const Et=yield $()(mt,Object.assign(Object.assign(Object.assign({},kt),kt.body!==void 0?{body:Nt!==!1?JSON.stringify(kt.body):kt.body}:{}),{headers:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},Nt!==!1?{"Content-Type":"application/json"}:{}),this.getHeaders()),kt.headers||{}),Bt!==void 0?{Authorization:"Bearer "+Bt}:{}),jt&&{"Trace-ID":jt}),signal:yt.signal})),Jt=Et.headers.get("content-type")||"",Pt=Jt&&Jt.startsWith("application/json"),Yt=Pt?yield Et.json():yield Et.text(),Mt=()=>new st.o(vt,mt,kt.body,Et.status,Et.headers,Yt,Yt&&Yt.validationErrors||{});if(!Et.ok)throw this.verbose&&rt.vF[Et.status>=500?"warn":"info"]("Response error",{method:vt,url:mt,statusCode:Et.status}),Mt();const zt=this.validateHeaders(Et.headers);if(Object.keys(zt).length!==0)throw new ut(zt,Mt());if(Et.status===204)return{body:void 0,headers:Et.headers};if(Nt&&!Pt)throw new Error("Response is not JSON: "+JSON.stringify(Yt));return{body:Yt,headers:Et.headers}}catch(wt){const Et=wt,Jt=At||gt.has(vt);if(Et.message==="Network request failed")throw new et(Et,mt,Jt);if(["EAI_AGAIN","ECONNREFUSED","EHOSTUNREACH","ENOTFOUND"].includes(Et.code))throw new et(Et,mt,!0);if(["ETIMEDOUT","ECONNRESET","ESOCKETTIMEDOUT","EPIPE"].includes(Et.code))throw new et(Et,mt,Jt);if(Et.name==="AbortError")throw new et(Et,mt,Jt);const Pt=(0,it.e)(Et,st.o),{statusCode:Yt}=Pt;if(Yt===408||Yt===429||Yt===502||Yt===503||Yt===504)throw this.verbose&&!Jt&&rt.vF.warn("Potentially unsafe retry"),new et(Et,mt,!0);if(Yt===500&&["/online-devices","/stream-current-value","/events/counts","/queries/queries"].some(zt=>mt.includes(zt)))throw new et(Et,mt,Jt);const Mt=this.validateHeaders(Pt.headers);throw Object.keys(Mt).length!==0?new ut(Mt,Pt):(yield this.getConstructor().onResponseError(Pt),Et)}finally{Vt&&clearTimeout(Vt)}})}getConstructor(){return Object.getPrototypeOf(this).constructor}static isNetworkError(ft){return(0,nt.x)(ft,st.o)||(0,nt.x)(ft,et)||(ft==null?void 0:ft.name)==="TimeoutError"||(ft==null?void 0:ft.name)==="RequestAbortedError"}}Ut.retries=8,Ut.waitForConnectivity=()=>Ft(void 0,void 0,void 0,function*(){}),Ut.onResponseError=()=>Ft(void 0,void 0,void 0,function*(){})},6331:(o,s,_)=>{_.d(s,{S:()=>et});var j=_(7396),$=_(2273);const _e={"app-id":["app-id must match formant/*"]};class et extends j.V{constructor(nt,rt={}){super(nt,Object.assign({validateHeaders:it=>(""+it.get("app-id")).startsWith("formant/")?{}:_e},rt)),this.endpoint=nt}getHeaders(){return Object.assign(Object.assign({},et.headers),{"App-ID":"formant/"+$.yA,"App-Version":$.rE})}}et.headers={}},4495:(o,s,_)=>{_.r(s),_.d(s,{LogClient:()=>tt});var j=_(6331),$=_(3721),_e=_(7197),et=function(nt,rt,it,st){return new(it||(it=Promise))(function(ut,Ft){function dt(ht){try{Ut(st.next(ht))}catch(ft){Ft(ft)}}function gt(ht){try{Ut(st.throw(ht))}catch(ft){Ft(ft)}}function Ut(ht){var ft;ht.done?ut(ht.value):(ft=ht.value,ft instanceof it?ft:new it(function(pt){pt(ft)})).then(dt,gt)}Ut((st=st.apply(nt,rt||[])).next())})};class tt extends j.S{log(rt){return et(this,void 0,void 0,function*(){const it=tt.token;try{yield this.fetch("logs",{token:it,method:"POST",body:{logs:rt},allowUnsafeRetries:!0})}catch(st){(0,$.e)(st,_e.o,ut=>ut.statusCode===401&&it!==void 0),tt.token===it&&delete tt.token,yield this.log(rt)}})}}},7197:(o,s,_)=>{_.d(s,{o:()=>$});var j=_(7207);class $ extends Error{constructor(et,tt,nt,rt,it,st,ut={}){super("Response error "+JSON.stringify({method:et,url:tt,requestBody:(0,j.E$)(nt),statusCode:rt,responseHeaders:it?(0,j.E$)([...it.entries()].reduce((Ft,[dt,gt])=>(Ft[dt]=gt,Ft),{})):{},responseBody:(0,j.E$)(st)})),this.method=et,this.url=tt,this.requestBody=nt,this.statusCode=rt,this.headers=it,this.body=st,this.validationErrors=ut,this.name="ResponseError",Object.setPrototypeOf(this,new.target.prototype)}}},2273:(o,s,_)=>{_.d(s,{IW:()=>dt,MF:()=>et,NQ:()=>nt,Zm:()=>st,_P:()=>ut,dF:()=>it,dm:()=>rt,op:()=>Ft,rE:()=>tt,yA:()=>_e});var j=_(2078);const $=j.from({ENVIRONMENT:{}.ENV,AGGREGATE_LEVEL:{}.AGGREGATE_LEVEL,API_ENDPOINT:{}.API_ENDPOINT,APP:"realtime-sdk",APP_PATH:{}.APP_PATH,BUILD_TAG:{}.BUILD_TAG,ENABLE_SELF_SERVE:{}.ENABLE_SELF_SERVE,ENABLE_SENTRY:{}.ENABLE_SENTRY,ENABLE_SENTRY_PROFILING:{}.ENABLE_SENTRY_PROFILING,GIT_COMMIT:{}.GIT_COMMIT,JEST_WORKER_ID:{}.JEST_WORKER_ID,LOG_API_ENDPOINT:{}.LOG_API_ENDPOINT,LOG_JSON:"false",LOG_LEVEL:{}.LOG_LEVEL,LOG_TO_CONSOLE:{}.LOG_TO_CONSOLE,LOG_TO_FILE:{}.LOG_TO_FILE,NAMESPACE:"production",SENTRY_DSN:{}.SENTRY_DSN,SHEET_EXPORT_MAX_ROW_COUNT:{}.SHEET_EXPORT_MAX_ROW_COUNT,STABLE_AGENT_VERSION:"1.291.2",VERSION:{}.VERSION,AUDIT_LOGS_ENABLED:{}.AUDIT_LOGS_ENABLED,WORKFLOW_GOOGLE_DRIVE_CLIENT_ID:{}.WORKFLOW_GOOGLE_DRIVE_CLIENT_ID}),_e=($.get("WORKFLOW_GOOGLE_DRIVE_CLIENT_ID").default("").asString(),$.get("ENVIRONMENT").default("").asString(),$.get("APP").default("").asString()),et=($.get("APP_PATH").default("").asString(),$.get("API_ENDPOINT").default("").asString(),$.get("NAMESPACE").default("").asString()),tt=$.get("VERSION").default("").asString(),nt=$.get("BUILD_TAG").default("").asString(),rt=($.get("GIT_COMMIT").default("").asString(),$.get("ENABLE_SENTRY").default("false").asBool(),$.get("ENABLE_SENTRY_PROFILING").default("false").asBool(),$.get("SENTRY_DSN").default("").asString(),$.get("LOG_LEVEL").default("debug").asString()),it=$.get("LOG_JSON").default("true").asBool(),st=$.get("LOG_TO_CONSOLE").default("true").asBool(),ut=($.get("STABLE_AGENT_VERSION").default("").asString(),$.get("LOG_API_ENDPOINT").asString()),Ft=$.get("JEST_WORKER_ID").asString(),dt=($.get("SHEET_EXPORT_MAX_ROW_COUNT").default("10000").asIntPositive(),$.get("LOG_TO_FILE").default("false").asBoolStrict());$.get("ENABLE_SELF_SERVE").default("true").asBoolStrict(),$.get("AGGREGATE_LEVEL").default("hour").asEnum(["day","hour","minute"]),$.get("AUDIT_LOGS_ENABLED").default("true").asBoolStrict()},7221:(o,s,_)=>{_.d(s,{c:()=>j});const j=$=>new Promise(_e=>setTimeout(_e,$||0))},4356:(o,s,_)=>{function j($,_e,et=()=>!0){return $ instanceof _e&&et($)}_.d(s,{x:()=>j})},1597:(o,s,_)=>{_.d(s,{vF:()=>tn});var j=_(2213),$=_(8558),_e=_(6075),et=_.n(_e),tt=_(6563);function nt(Kt,Un){if(Un.length1?"s":"")+" required, but only "+Un.length+" present")}function rt(Kt){if(Kt===null||Kt===!0||Kt===!1)return NaN;var Un=Number(Kt);return isNaN(Un)?Un:Un<0?Math.ceil(Un):Math.floor(Un)}var it={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},st=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,ut=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,Ft=/^([+-])(\d{2})(?::?(\d{2}))?$/;function dt(Kt){var Un,Bn={},hn=Kt.split(it.dateTimeDelimiter);if(hn.length>2)return Bn;if(/:/.test(hn[0])?Un=hn[0]:(Bn.date=hn[0],Un=hn[1],it.timeZoneDelimiter.test(Bn.date)&&(Bn.date=Kt.split(it.timeZoneDelimiter)[0],Un=Kt.substr(Bn.date.length,Kt.length))),Un){var En=it.timezone.exec(Un);En?(Bn.time=Un.replace(En[1],""),Bn.timezone=En[1]):Bn.time=Un}return Bn}function gt(Kt,Un){var Bn=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+Un)+"})|(\\d{2}|[+-]\\d{"+(2+Un)+"})$)"),hn=Kt.match(Bn);if(!hn)return{year:NaN,restDateString:""};var En=hn[1]?parseInt(hn[1]):null,Cn=hn[2]?parseInt(hn[2]):null;return{year:Cn===null?En:100*Cn,restDateString:Kt.slice((hn[1]||hn[2]).length)}}function Ut(Kt,Un){if(Un===null)return new Date(NaN);var Bn=Kt.match(st);if(!Bn)return new Date(NaN);var hn=!!Bn[4],En=ht(Bn[1]),Cn=ht(Bn[2])-1,Tt=ht(Bn[3]),Zt=ht(Bn[4]),Ot=ht(Bn[5])-1;if(hn)return function(ln,cn,fn){return cn>=1&&cn<=53&&fn>=0&&fn<=6}(0,Zt,Ot)?function(ln,cn,fn){var _n=new Date(0);_n.setUTCFullYear(ln,0,4);var On=_n.getUTCDay()||7,xn=7*(cn-1)+fn+1-On;return _n.setUTCDate(_n.getUTCDate()+xn),_n}(Un,Zt,Ot):new Date(NaN);var sn=new Date(0);return function(ln,cn,fn){return cn>=0&&cn<=11&&fn>=1&&fn<=(Qt[cn]||(Nt(ln)?29:28))}(Un,Cn,Tt)&&function(ln,cn){return cn>=1&&cn<=(Nt(ln)?366:365)}(Un,En)?(sn.setUTCFullYear(Un,Cn,Math.max(En,Tt)),sn):new Date(NaN)}function ht(Kt){return Kt?parseInt(Kt):1}function ft(Kt){var Un=Kt.match(ut);if(!Un)return NaN;var Bn=pt(Un[1]),hn=pt(Un[2]),En=pt(Un[3]);return function(Cn,Tt,Zt){return Cn===24?Tt===0&&Zt===0:Zt>=0&&Zt<60&&Tt>=0&&Tt<60&&Cn>=0&&Cn<25}(Bn,hn,En)?36e5*Bn+6e4*hn+1e3*En:NaN}function pt(Kt){return Kt&&parseFloat(Kt.replace(",","."))||0}function Rt(Kt){if(Kt==="Z")return 0;var Un=Kt.match(Ft);if(!Un)return 0;var Bn=Un[1]==="+"?-1:1,hn=parseInt(Un[2]),En=Un[3]&&parseInt(Un[3])||0;return function(Cn,Tt){return Tt>=0&&Tt<=59}(0,En)?Bn*(36e5*hn+6e4*En):NaN}var Qt=[31,null,31,30,31,30,31,31,30,31,30,31];function Nt(Kt){return Kt%400==0||Kt%4==0&&Kt%100!=0}function At(Kt){return(At=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Un){return typeof Un}:function(Un){return Un&&typeof Symbol=="function"&&Un.constructor===Symbol&&Un!==Symbol.prototype?"symbol":typeof Un})(Kt)}function kt(Kt){return nt(1,arguments),Kt instanceof Date||At(Kt)==="object"&&Object.prototype.toString.call(Kt)==="[object Date]"}function Bt(Kt){nt(1,arguments);var Un=Object.prototype.toString.call(Kt);return Kt instanceof Date||At(Kt)==="object"&&Un==="[object Date]"?new Date(Kt.getTime()):typeof Kt=="number"||Un==="[object Number]"?new Date(Kt):(typeof Kt!="string"&&Un!=="[object String]"||typeof console>"u"||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn(new Error().stack)),new Date(NaN))}function jt(Kt){const Un=function(Bn,hn){var En;nt(1,arguments);var Cn=rt((En=hn==null?void 0:hn.additionalDigits)!==null&&En!==void 0?En:2);if(Cn!==2&&Cn!==1&&Cn!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(typeof Bn!="string"&&Object.prototype.toString.call(Bn)!=="[object String]")return new Date(NaN);var Tt,Zt=dt(Bn);if(Zt.date){var Ot=gt(Zt.date,Cn);Tt=Ut(Ot.restDateString,Ot.year)}if(!Tt||isNaN(Tt.getTime()))return new Date(NaN);var sn,ln=Tt.getTime(),cn=0;if(Zt.time&&(cn=ft(Zt.time),isNaN(cn)))return new Date(NaN);if(!Zt.timezone){var fn=new Date(ln+cn),_n=new Date(0);return _n.setFullYear(fn.getUTCFullYear(),fn.getUTCMonth(),fn.getUTCDate()),_n.setHours(fn.getUTCHours(),fn.getUTCMinutes(),fn.getUTCSeconds(),fn.getUTCMilliseconds()),_n}return sn=Rt(Zt.timezone),isNaN(sn)?new Date(NaN):new Date(ln+cn+sn)}(Kt);if(!function(Bn){if(nt(1,arguments),!kt(Bn)&&typeof Bn!="number")return!1;var hn=Bt(Bn);return!isNaN(Number(hn))}(Un))throw new Error(`Invalid ISO 8601 date string (${Kt})`);return Un}const vt=Math.pow(2,20),mt=vt;var yt=_(2273),Vt=_(7207);function wt(Kt){return et()(Kt,{cycles:!0})}var Et=function(Kt,Un){var Bn={};for(var hn in Kt)Object.prototype.hasOwnProperty.call(Kt,hn)&&Un.indexOf(hn)<0&&(Bn[hn]=Kt[hn]);if(Kt!=null&&typeof Object.getOwnPropertySymbols=="function"){var En=0;for(hn=Object.getOwnPropertySymbols(Kt);EnBn?(0,Vt.E$)(Ot):Ot;if(!Kt.stack)return{message:wt(hn(Kt))};const{name:En,message:Cn,stack:Tt}=Kt,Zt=Et(Kt,["name","message","stack"]);return{name:En,message:Cn!==void 0?Cn:wt(hn(Kt)),stack:Tt,meta:Zt&&Object.keys(Zt).length===0?void 0:hn(Zt)}}function Pt(Kt,Un={}){const{message:Bn,stack:hn,meta:En}=Jt(Kt,Un);return`${hn||Bn||""}${En&&Object.keys(En).length>0?" -- "+wt(En):""}`}const Yt=(0,_(2964).A)();var Mt=_(6155),zt=_.n(Mt),qt=function(Kt,Un,Bn,hn){return new(Bn||(Bn=Promise))(function(En,Cn){function Tt(sn){try{Ot(hn.next(sn))}catch(ln){Cn(ln)}}function Zt(sn){try{Ot(hn.throw(sn))}catch(ln){Cn(ln)}}function Ot(sn){var ln;sn.done?En(sn.value):(ln=sn.value,ln instanceof Bn?ln:new Bn(function(cn){cn(ln)})).then(Tt,Zt)}Ot((hn=hn.apply(Kt,Un||[])).next())})},Xt=function(Kt,Un){var Bn={};for(var hn in Kt)Object.prototype.hasOwnProperty.call(Kt,hn)&&Un.indexOf(hn)<0&&(Bn[hn]=Kt[hn]);if(Kt!=null&&typeof Object.getOwnPropertySymbols=="function"){var En=0;for(hn=Object.getOwnPropertySymbols(Kt);En{var{timestamp:Un,level:Bn,message:hn,error:En}=Kt,Cn=It(Kt,["timestamp","level","message","error"]);const Tt=Object.assign(Object.assign({timestamp:Un?jt(Un).getTime():new Date().getTime(),level:Bn.toUpperCase(),message:hn},En?{error:Jt(En)}:{}),{meta:Object.assign(Object.assign({},$t),Cn)});return Tt.message.length>1e5&&(console.log("Raw message: "+Tt.message),Tt.message=function(Zt,Ot){const{maxMessageLength:sn=1e5,truncatedMessageEndLength:ln=1e3}=Ot??{};return Zt.length>sn?`${Zt.slice(0,sn-ln)} ... [TRUNCATED] ... ${Zt.slice(-ln)}`:Zt}(Tt.message,{maxMessageLength:1e5,truncatedMessageEndLength:1e3})),et()(Tt,{cycles:!0})}):tt.format.printf(Kt=>{var{timestamp:Un,level:Bn,message:hn,error:En}=Kt,Cn=It(Kt,["timestamp","level","message","error"]);let Tt=`${Un||new Date().toISOString()} ${Bn.toUpperCase()}: ${hn} `;return Object.keys(Cn).length>0&&(Tt+=et()(Cn,{cycles:!0})),En&&(Tt+=` +`+Pt(En)),Tt}),tn=(0,tt.createLogger)({level:yt.dm});if(tn.add(new tt.transports.Console({format:un,level:"debug"})),tn.transports.forEach(Kt=>{Kt.silent=!yt.Zm}),yt._P&&tn.add(new xt(yt._P,$t)),yt.IW){const Kt=$.resolve(j.tmpdir(),`silly-${yt.yA}.log`);tn.debug("Logging silly logs to file",{filename:Kt}),tn.add(new tt.transports.File({filename:Kt,maxsize:1*mt,maxFiles:10,format:tt.format.combine((an="silly",(0,tt.format)(Un=>Un.level===an&&Un)()),un),level:"silly"}))}var an},3721:(o,s,_)=>{_.d(s,{e:()=>$});var j=_(4356);function $(_e,et,tt=()=>!0){if((0,j.x)(_e,et,tt))return _e;throw _e}},7207:(o,s,_)=>{_.d(s,{E$:()=>nt,x:()=>rt});const j=new Set(["query","tagKey"].map(it=>it.toLowerCase())),$=["missing tag(s) to access this resource","expected one of:","maybe you meant:","in query:","while processing query","column"],_e=["password","secret","token","key","buffer","authorization"],et=new Set(["email","firstName","lastName","phoneNumber","phoneNumbers"]),tt=it=>_e.some(st=>it.toLowerCase().includes(st.toLowerCase()))||et.has(it);function nt(it,st=new WeakSet){return st.has(it)?"[ RECURSIVE ]":Array.isArray(it)?(st.add(it),it.map(Ft=>nt(Ft,st))):!(ut=it)||typeof ut!="object"&&typeof ut!="function"?typeof it=="string"&&!$.some(Ft=>it.toLowerCase().includes(Ft))&&tt(it)?"[ REDACTED ]":it:(st.add(it),Object.keys(it).reduce((Ft,dt)=>j.has(dt.toLowerCase())?(Ft[dt]=it[dt],Ft):(Ft[dt]=tt(dt)?"[ REDACTED ]":nt(it[dt],st),Ft),{}));var ut}const rt=it=>{const st=JSON.stringify(it).replace(/\\"username\\":\\"([a-zA-Z0-9+=]+)\\"/gi,'\\"username\\":\\"\\"').replace(/\\"credential\\":\\"([a-zA-Z0-9+=]+)\\"/gi,'\\"credential\\":\\"\\"');return JSON.parse(st)}},3778:(o,s,_)=>{_.d(s,{p:()=>$});const j=864e5,$={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:j,week:6048e5,month:2592e6,year:31536e6}},2113:function(o,s,_){var j;o=_.nmd(o),function($){s&&s.nodeType,o&&o.nodeType;var _e=typeof _.g=="object"&&_.g;_e.global!==_e&&_e.window!==_e&&_e.self;var et,tt=2147483647,nt=/^xn--/,rt=/[^\x20-\x7E]/,it=/[\x2E\u3002\uFF0E\uFF61]/g,st={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},ut=Math.floor,Ft=String.fromCharCode;function dt(At){throw new RangeError(st[At])}function gt(At,kt){for(var Bt=At.length,jt=[];Bt--;)jt[Bt]=kt(At[Bt]);return jt}function Ut(At,kt){var Bt=At.split("@"),jt="";return Bt.length>1&&(jt=Bt[0]+"@",At=Bt[1]),jt+gt((At=At.replace(it,".")).split("."),kt).join(".")}function ht(At){for(var kt,Bt,jt=[],vt=0,mt=At.length;vt=55296&&kt<=56319&&vt65535&&(Bt+=Ft((kt-=65536)>>>10&1023|55296),kt=56320|1023&kt),Bt+=Ft(kt)}).join("")}function pt(At,kt){return At+22+75*(At<26)-((kt!=0)<<5)}function Rt(At,kt,Bt){var jt=0;for(At=Bt?ut(At/700):At>>1,At+=ut(At/kt);At>455;jt+=36)At=ut(At/35);return ut(jt+36*At/(At+38))}function Qt(At){var kt,Bt,jt,vt,mt,yt,Vt,wt,Et,Jt,Pt,Yt=[],Mt=At.length,zt=0,qt=128,Xt=72;for((Bt=At.lastIndexOf("-"))<0&&(Bt=0),jt=0;jt=128&&dt("not-basic"),Yt.push(At.charCodeAt(jt));for(vt=Bt>0?Bt+1:0;vt=Mt&&dt("invalid-input"),((wt=(Pt=At.charCodeAt(vt++))-48<10?Pt-22:Pt-65<26?Pt-65:Pt-97<26?Pt-97:36)>=36||wt>ut((tt-zt)/yt))&&dt("overflow"),zt+=wt*yt,!(wt<(Et=Vt<=Xt?1:Vt>=Xt+26?26:Vt-Xt));Vt+=36)yt>ut(tt/(Jt=36-Et))&&dt("overflow"),yt*=Jt;Xt=Rt(zt-mt,kt=Yt.length+1,mt==0),ut(zt/kt)>tt-qt&&dt("overflow"),qt+=ut(zt/kt),zt%=kt,Yt.splice(zt++,0,qt)}return ft(Yt)}function Nt(At){var kt,Bt,jt,vt,mt,yt,Vt,wt,Et,Jt,Pt,Yt,Mt,zt,qt,Xt=[];for(Yt=(At=ht(At)).length,kt=128,Bt=0,mt=72,yt=0;yt=kt&&Ptut((tt-Bt)/(Mt=jt+1))&&dt("overflow"),Bt+=(Vt-kt)*Mt,kt=Vt,yt=0;yttt&&dt("overflow"),Pt==kt){for(wt=Bt,Et=36;!(wt<(Jt=Et<=mt?1:Et>=mt+26?26:Et-mt));Et+=36)qt=wt-Jt,zt=36-Jt,Xt.push(Ft(pt(Jt+qt%zt,0))),wt=ut(qt/zt);Xt.push(Ft(pt(wt,0))),mt=Rt(Bt,Mt,jt==vt),Bt=0,++jt}++Bt,++kt}return Xt.join("")}et={version:"1.4.1",ucs2:{decode:ht,encode:ft},decode:Qt,encode:Nt,toASCII:function(At){return Ut(At,function(kt){return rt.test(kt)?"xn--"+Nt(kt):kt})},toUnicode:function(At){return Ut(At,function(kt){return nt.test(kt)?Qt(kt.slice(4).toLowerCase()):kt})}},(j=function(){return et}.call(s,_,s,o))===void 0||(o.exports=j)}()},5442:(o,s,_)=>{var j=_(2113);function $(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}var _e=/^([a-z0-9.+-]+:)/i,et=/:[0-9]*$/,tt=/^(\/\/?(?!\/)[^?\s]*)(\?[^\s]*)?$/,nt=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r",` +`," "]),rt=["'"].concat(nt),it=["%","/","?",";","#"].concat(rt),st=["/","?","#"],ut=/^[+a-z0-9A-Z_-]{0,63}$/,Ft=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,dt={javascript:!0,"javascript:":!0},gt={javascript:!0,"javascript:":!0},Ut={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},ht=_(5810);function ft(pt,Rt,Qt){if(pt&&typeof pt=="object"&&pt instanceof $)return pt;var Nt=new $;return Nt.parse(pt,Rt,Qt),Nt}$.prototype.parse=function(pt,Rt,Qt){if(typeof pt!="string")throw new TypeError("Parameter 'url' must be a string, not "+typeof pt);var Nt=pt.indexOf("?"),At=Nt!==-1&&Nt127?Xt+="x":Xt+=qt[xt];if(!Xt.match(ut)){var $t=Mt.slice(0,Jt),un=Mt.slice(Jt+1),tn=qt.match(Ft);tn&&($t.push(tn[1]),un.unshift(tn[2])),un.length&&(Bt="/"+un.join(".")+Bt),this.hostname=$t.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),Yt||(this.hostname=j.toASCII(this.hostname));var an=this.port?":"+this.port:"",Kt=this.hostname||"";this.host=Kt+an,this.href+=this.host,Yt&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),Bt[0]!=="/"&&(Bt="/"+Bt))}if(!dt[mt])for(Jt=0,zt=rt.length;Jt0)&&Qt.host.split("@"))&&(Qt.auth=tn.shift(),Qt.hostname=tn.shift(),Qt.host=Qt.hostname)),Qt.search=pt.search,Qt.query=pt.query,Qt.pathname===null&&Qt.search===null||(Qt.path=(Qt.pathname?Qt.pathname:"")+(Qt.search?Qt.search:"")),Qt.href=Qt.format(),Qt;if(!qt.length)return Qt.pathname=null,Qt.search?Qt.path="/"+Qt.search:Qt.path=null,Qt.href=Qt.format(),Qt;for(var xt=qt.slice(-1)[0],It=(Qt.host||pt.host||qt.length>1)&&(xt==="."||xt==="..")||xt==="",$t=0,un=qt.length;un>=0;un--)(xt=qt[un])==="."?qt.splice(un,1):xt===".."?(qt.splice(un,1),$t++):$t&&(qt.splice(un,1),$t--);if(!Mt&&!zt)for(;$t--;$t)qt.unshift("..");!Mt||qt[0]===""||qt[0]&&qt[0].charAt(0)==="/"||qt.unshift(""),It&&qt.join("/").substr(-1)!=="/"&&qt.push("");var tn,an=qt[0]===""||qt[0]&&qt[0].charAt(0)==="/";return Xt&&(Qt.hostname=an?"":qt.length?qt.shift():"",Qt.host=Qt.hostname,(tn=!!(Qt.host&&Qt.host.indexOf("@")>0)&&Qt.host.split("@"))&&(Qt.auth=tn.shift(),Qt.hostname=tn.shift(),Qt.host=Qt.hostname)),(Mt=Mt||Qt.host&&qt.length)&&!an&&qt.unshift(""),qt.length>0?Qt.pathname=qt.join("/"):(Qt.pathname=null,Qt.path=null),Qt.pathname===null&&Qt.search===null||(Qt.path=(Qt.pathname?Qt.pathname:"")+(Qt.search?Qt.search:"")),Qt.auth=pt.auth||Qt.auth,Qt.slashes=Qt.slashes||pt.slashes,Qt.href=Qt.format(),Qt},$.prototype.parseHost=function(){var pt=this.host,Rt=et.exec(pt);Rt&&((Rt=Rt[0])!==":"&&(this.port=Rt.substr(1)),pt=pt.substr(0,pt.length-Rt.length)),pt&&(this.hostname=pt)},s.parse=ft,s.resolve=function(pt,Rt){return ft(pt,!1,!0).resolve(Rt)},s.resolveObject=function(pt,Rt){return pt?ft(pt,!1,!0).resolveObject(Rt):Rt},s.format=function(pt){return typeof pt=="string"&&(pt=ft(pt)),pt instanceof $?pt.format():$.prototype.format.call(pt)},s.Url=$},6732:(o,s,_)=>{function j($){try{if(!_.g.localStorage)return!1}catch{return!1}var _e=_.g.localStorage[$];return _e!=null&&String(_e).toLowerCase()==="true"}o.exports=function($,_e){if(j("noDeprecation"))return $;var et=!1;return function(){if(!et){if(j("throwDeprecation"))throw new Error(_e);j("traceDeprecation")?console.trace(_e):console.warn(_e),et=!0}return $.apply(this,arguments)}}},5272:o=>{o.exports=function(s){return s&&typeof s=="object"&&typeof s.copy=="function"&&typeof s.fill=="function"&&typeof s.readUInt8=="function"}},1531:(o,s,_)=>{var j=_(5387),$=_(2625),_e=_(2730),et=_(5943);function tt(Jt){return Jt.call.bind(Jt)}var nt=typeof BigInt<"u",rt=typeof Symbol<"u",it=tt(Object.prototype.toString),st=tt(Number.prototype.valueOf),ut=tt(String.prototype.valueOf),Ft=tt(Boolean.prototype.valueOf);if(nt)var dt=tt(BigInt.prototype.valueOf);if(rt)var gt=tt(Symbol.prototype.valueOf);function Ut(Jt,Pt){if(typeof Jt!="object")return!1;try{return Pt(Jt),!0}catch{return!1}}function ht(Jt){return it(Jt)==="[object Map]"}function ft(Jt){return it(Jt)==="[object Set]"}function pt(Jt){return it(Jt)==="[object WeakMap]"}function Rt(Jt){return it(Jt)==="[object WeakSet]"}function Qt(Jt){return it(Jt)==="[object ArrayBuffer]"}function Nt(Jt){return typeof ArrayBuffer<"u"&&(Qt.working?Qt(Jt):Jt instanceof ArrayBuffer)}function At(Jt){return it(Jt)==="[object DataView]"}function kt(Jt){return typeof DataView<"u"&&(At.working?At(Jt):Jt instanceof DataView)}s.isArgumentsObject=j,s.isGeneratorFunction=$,s.isTypedArray=et,s.isPromise=function(Jt){return typeof Promise<"u"&&Jt instanceof Promise||Jt!==null&&typeof Jt=="object"&&typeof Jt.then=="function"&&typeof Jt.catch=="function"},s.isArrayBufferView=function(Jt){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(Jt):et(Jt)||kt(Jt)},s.isUint8Array=function(Jt){return _e(Jt)==="Uint8Array"},s.isUint8ClampedArray=function(Jt){return _e(Jt)==="Uint8ClampedArray"},s.isUint16Array=function(Jt){return _e(Jt)==="Uint16Array"},s.isUint32Array=function(Jt){return _e(Jt)==="Uint32Array"},s.isInt8Array=function(Jt){return _e(Jt)==="Int8Array"},s.isInt16Array=function(Jt){return _e(Jt)==="Int16Array"},s.isInt32Array=function(Jt){return _e(Jt)==="Int32Array"},s.isFloat32Array=function(Jt){return _e(Jt)==="Float32Array"},s.isFloat64Array=function(Jt){return _e(Jt)==="Float64Array"},s.isBigInt64Array=function(Jt){return _e(Jt)==="BigInt64Array"},s.isBigUint64Array=function(Jt){return _e(Jt)==="BigUint64Array"},ht.working=typeof Map<"u"&&ht(new Map),s.isMap=function(Jt){return typeof Map<"u"&&(ht.working?ht(Jt):Jt instanceof Map)},ft.working=typeof Set<"u"&&ft(new Set),s.isSet=function(Jt){return typeof Set<"u"&&(ft.working?ft(Jt):Jt instanceof Set)},pt.working=typeof WeakMap<"u"&&pt(new WeakMap),s.isWeakMap=function(Jt){return typeof WeakMap<"u"&&(pt.working?pt(Jt):Jt instanceof WeakMap)},Rt.working=typeof WeakSet<"u"&&Rt(new WeakSet),s.isWeakSet=function(Jt){return Rt(Jt)},Qt.working=typeof ArrayBuffer<"u"&&Qt(new ArrayBuffer),s.isArrayBuffer=Nt,At.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&At(new DataView(new ArrayBuffer(1),0,1)),s.isDataView=kt;var Bt=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function jt(Jt){return it(Jt)==="[object SharedArrayBuffer]"}function vt(Jt){return Bt!==void 0&&(jt.working===void 0&&(jt.working=jt(new Bt)),jt.working?jt(Jt):Jt instanceof Bt)}function mt(Jt){return Ut(Jt,st)}function yt(Jt){return Ut(Jt,ut)}function Vt(Jt){return Ut(Jt,Ft)}function wt(Jt){return nt&&Ut(Jt,dt)}function Et(Jt){return rt&&Ut(Jt,gt)}s.isSharedArrayBuffer=vt,s.isAsyncFunction=function(Jt){return it(Jt)==="[object AsyncFunction]"},s.isMapIterator=function(Jt){return it(Jt)==="[object Map Iterator]"},s.isSetIterator=function(Jt){return it(Jt)==="[object Set Iterator]"},s.isGeneratorObject=function(Jt){return it(Jt)==="[object Generator]"},s.isWebAssemblyCompiledModule=function(Jt){return it(Jt)==="[object WebAssembly.Module]"},s.isNumberObject=mt,s.isStringObject=yt,s.isBooleanObject=Vt,s.isBigIntObject=wt,s.isSymbolObject=Et,s.isBoxedPrimitive=function(Jt){return mt(Jt)||yt(Jt)||Vt(Jt)||wt(Jt)||Et(Jt)},s.isAnyArrayBuffer=function(Jt){return typeof Uint8Array<"u"&&(Nt(Jt)||vt(Jt))},["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(Jt){Object.defineProperty(s,Jt,{enumerable:!1,value:function(){throw new Error(Jt+" is not supported in userland")}})})},9208:(o,s,_)=>{var j=Object.getOwnPropertyDescriptors||function(Et){for(var Jt=Object.keys(Et),Pt={},Yt=0;Yt=Mt)return Xt;switch(Xt){case"%s":return String(Yt[Pt++]);case"%d":return Number(Yt[Pt++]);case"%j":try{return JSON.stringify(Yt[Pt++])}catch{return"[Circular]"}default:return Xt}}),qt=Yt[Pt];Pt"u")return function(){return s.deprecate(Et,Jt).apply(this,arguments)};var Pt=!1;return function(){if(!Pt){if(process.throwDeprecation)throw new Error(Jt);process.traceDeprecation?console.trace(Jt):console.error(Jt),Pt=!0}return Et.apply(this,arguments)}};var _e={},et=/^$/;if({}.NODE_DEBUG){var tt={}.NODE_DEBUG;tt=tt.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),et=new RegExp("^"+tt+"$","i")}function nt(Et,Jt){var Pt={seen:[],stylize:it};return arguments.length>=3&&(Pt.depth=arguments[2]),arguments.length>=4&&(Pt.colors=arguments[3]),gt(Jt)?Pt.showHidden=Jt:Jt&&s._extend(Pt,Jt),pt(Pt.showHidden)&&(Pt.showHidden=!1),pt(Pt.depth)&&(Pt.depth=2),pt(Pt.colors)&&(Pt.colors=!1),pt(Pt.customInspect)&&(Pt.customInspect=!0),Pt.colors&&(Pt.stylize=rt),st(Pt,Et,Pt.depth)}function rt(Et,Jt){var Pt=nt.styles[Jt];return Pt?"\x1B["+nt.colors[Pt][0]+"m"+Et+"\x1B["+nt.colors[Pt][1]+"m":Et}function it(Et,Jt){return Et}function st(Et,Jt,Pt){if(Et.customInspect&&Jt&&kt(Jt.inspect)&&Jt.inspect!==s.inspect&&(!Jt.constructor||Jt.constructor.prototype!==Jt)){var Yt=Jt.inspect(Pt,Et);return ft(Yt)||(Yt=st(Et,Yt,Pt)),Yt}var Mt=function(tn,an){if(pt(an))return tn.stylize("undefined","undefined");if(ft(an)){var Kt="'"+JSON.stringify(an).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return tn.stylize(Kt,"string")}if(ht(an))return tn.stylize(""+an,"number");if(gt(an))return tn.stylize(""+an,"boolean");if(Ut(an))return tn.stylize("null","null")}(Et,Jt);if(Mt)return Mt;var zt=Object.keys(Jt),qt=function(tn){var an={};return tn.forEach(function(Kt,Un){an[Kt]=!0}),an}(zt);if(Et.showHidden&&(zt=Object.getOwnPropertyNames(Jt)),At(Jt)&&(zt.indexOf("message")>=0||zt.indexOf("description")>=0))return ut(Jt);if(zt.length===0){if(kt(Jt)){var Xt=Jt.name?": "+Jt.name:"";return Et.stylize("[Function"+Xt+"]","special")}if(Rt(Jt))return Et.stylize(RegExp.prototype.toString.call(Jt),"regexp");if(Nt(Jt))return Et.stylize(Date.prototype.toString.call(Jt),"date");if(At(Jt))return ut(Jt)}var xt,It="",$t=!1,un=["{","}"];return dt(Jt)&&($t=!0,un=["[","]"]),kt(Jt)&&(It=" [Function"+(Jt.name?": "+Jt.name:"")+"]"),Rt(Jt)&&(It=" "+RegExp.prototype.toString.call(Jt)),Nt(Jt)&&(It=" "+Date.prototype.toUTCString.call(Jt)),At(Jt)&&(It=" "+ut(Jt)),zt.length!==0||$t&&Jt.length!=0?Pt<0?Rt(Jt)?Et.stylize(RegExp.prototype.toString.call(Jt),"regexp"):Et.stylize("[Object]","special"):(Et.seen.push(Jt),xt=$t?function(tn,an,Kt,Un,Bn){for(var hn=[],En=0,Cn=an.length;En=0,Un+Bn.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?Kt[0]+(an===""?"":an+` + `)+" "+tn.join(`, + `)+" "+Kt[1]:Kt[0]+an+" "+tn.join(", ")+" "+Kt[1]}(xt,It,un)):un[0]+It+un[1]}function ut(Et){return"["+Error.prototype.toString.call(Et)+"]"}function Ft(Et,Jt,Pt,Yt,Mt,zt){var qt,Xt,xt;if((xt=Object.getOwnPropertyDescriptor(Jt,Mt)||{value:Jt[Mt]}).get?Xt=xt.set?Et.stylize("[Getter/Setter]","special"):Et.stylize("[Getter]","special"):xt.set&&(Xt=Et.stylize("[Setter]","special")),yt(Yt,Mt)||(qt="["+Mt+"]"),Xt||(Et.seen.indexOf(xt.value)<0?(Xt=Ut(Pt)?st(Et,xt.value,null):st(Et,xt.value,Pt-1)).indexOf(` +`)>-1&&(Xt=zt?Xt.split(` +`).map(function(It){return" "+It}).join(` +`).slice(2):` +`+Xt.split(` +`).map(function(It){return" "+It}).join(` +`)):Xt=Et.stylize("[Circular]","special")),pt(qt)){if(zt&&Mt.match(/^\d+$/))return Xt;(qt=JSON.stringify(""+Mt)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(qt=qt.slice(1,-1),qt=Et.stylize(qt,"name")):(qt=qt.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),qt=Et.stylize(qt,"string"))}return qt+": "+Xt}function dt(Et){return Array.isArray(Et)}function gt(Et){return typeof Et=="boolean"}function Ut(Et){return Et===null}function ht(Et){return typeof Et=="number"}function ft(Et){return typeof Et=="string"}function pt(Et){return Et===void 0}function Rt(Et){return Qt(Et)&&Bt(Et)==="[object RegExp]"}function Qt(Et){return typeof Et=="object"&&Et!==null}function Nt(Et){return Qt(Et)&&Bt(Et)==="[object Date]"}function At(Et){return Qt(Et)&&(Bt(Et)==="[object Error]"||Et instanceof Error)}function kt(Et){return typeof Et=="function"}function Bt(Et){return Object.prototype.toString.call(Et)}function jt(Et){return Et<10?"0"+Et.toString(10):Et.toString(10)}s.debuglog=function(Et){if(Et=Et.toUpperCase(),!_e[Et])if(et.test(Et)){var Jt=process.pid;_e[Et]=function(){var Pt=s.format.apply(s,arguments);console.error("%s %d: %s",Et,Jt,Pt)}}else _e[Et]=function(){};return _e[Et]},s.inspect=nt,nt.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},nt.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},s.types=_(1531),s.isArray=dt,s.isBoolean=gt,s.isNull=Ut,s.isNullOrUndefined=function(Et){return Et==null},s.isNumber=ht,s.isString=ft,s.isSymbol=function(Et){return typeof Et=="symbol"},s.isUndefined=pt,s.isRegExp=Rt,s.types.isRegExp=Rt,s.isObject=Qt,s.isDate=Nt,s.types.isDate=Nt,s.isError=At,s.types.isNativeError=At,s.isFunction=kt,s.isPrimitive=function(Et){return Et===null||typeof Et=="boolean"||typeof Et=="number"||typeof Et=="string"||typeof Et=="symbol"||Et===void 0},s.isBuffer=_(5272);var vt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function mt(){var Et=new Date,Jt=[jt(Et.getHours()),jt(Et.getMinutes()),jt(Et.getSeconds())].join(":");return[Et.getDate(),vt[Et.getMonth()],Jt].join(" ")}function yt(Et,Jt){return Object.prototype.hasOwnProperty.call(Et,Jt)}s.log=function(){console.log("%s - %s",mt(),s.format.apply(s,arguments))},s.inherits=_(5615),s._extend=function(Et,Jt){if(!Jt||!Qt(Jt))return Et;for(var Pt=Object.keys(Jt),Yt=Pt.length;Yt--;)Et[Pt[Yt]]=Jt[Pt[Yt]];return Et};var Vt=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;function wt(Et,Jt){if(!Et){var Pt=new Error("Promise was rejected with a falsy value");Pt.reason=Et,Et=Pt}return Jt(Et)}s.promisify=function(Et){if(typeof Et!="function")throw new TypeError('The "original" argument must be of type Function');if(Vt&&Et[Vt]){var Jt;if(typeof(Jt=Et[Vt])!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Jt,Vt,{value:Jt,enumerable:!1,writable:!1,configurable:!0}),Jt}function Jt(){for(var Pt,Yt,Mt=new Promise(function(Xt,xt){Pt=Xt,Yt=xt}),zt=[],qt=0;qt{_.d(s,{A:()=>rt});const j={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};let $;const _e=new Uint8Array(16);function et(){if(!$&&($=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!$))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return $(_e)}const tt=[];for(let it=0;it<256;++it)tt.push((it+256).toString(16).slice(1));function nt(it,st=0){return tt[it[st+0]]+tt[it[st+1]]+tt[it[st+2]]+tt[it[st+3]]+"-"+tt[it[st+4]]+tt[it[st+5]]+"-"+tt[it[st+6]]+tt[it[st+7]]+"-"+tt[it[st+8]]+tt[it[st+9]]+"-"+tt[it[st+10]]+tt[it[st+11]]+tt[it[st+12]]+tt[it[st+13]]+tt[it[st+14]]+tt[it[st+15]]}const rt=function(it,st,ut){if(j.randomUUID&&!st&&!it)return j.randomUUID();const Ft=(it=it||{}).random||(it.rng||et)();if(Ft[6]=15&Ft[6]|64,Ft[8]=63&Ft[8]|128,st){ut=ut||0;for(let dt=0;dt<16;++dt)st[ut+dt]=Ft[dt];return st}return nt(Ft)}},2730:(o,s,_)=>{var j=_(705),$=_(4834),_e=_(8498),et=_(9818),tt=_(9336),nt=et("Object.prototype.toString"),rt=_(1913)(),it=typeof globalThis>"u"?_.g:globalThis,st=$(),ut=et("String.prototype.slice"),Ft=Object.getPrototypeOf,dt=et("Array.prototype.indexOf",!0)||function(Ut,ht){for(var ft=0;ft-1?ht:ht==="Object"&&function(ft){var pt=!1;return j(gt,function(Rt,Qt){if(!pt)try{Rt(ft),pt=ut(Qt,1)}catch{}}),pt}(Ut)}return tt?function(ft){var pt=!1;return j(gt,function(Rt,Qt){if(!pt)try{"$"+Rt(ft)===Qt&&(pt=ut(Qt,1))}catch{}}),pt}(Ut):null}},6155:(o,s,_)=>{o.exports=_(5700),o.exports.LegacyTransportStream=_(6668)},6668:(o,s,_)=>{var j=_(9208),$=_(4966).LEVEL,_e=_(5700),et=o.exports=function(){var tt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(_e.call(this,tt),!tt.transport||typeof tt.transport.log!="function")throw new Error("Invalid transport, must be an object with a log method.");function nt(rt){this.emit("error",rt,this.transport)}this.transport=tt.transport,this.level=this.level||tt.transport.level,this.handleExceptions=this.handleExceptions||tt.transport.handleExceptions,this._deprecated(),this.transport.__winstonError||(this.transport.__winstonError=nt.bind(this),this.transport.on("error",this.transport.__winstonError))};j.inherits(et,_e),et.prototype._write=function(tt,nt,rt){if(this.silent||tt.exception===!0&&!this.handleExceptions)return rt(null);(!this.level||this.levels[this.level]>=this.levels[tt[$]])&&this.transport.log(tt[$],tt.message,tt,this._nop),rt(null)},et.prototype._writev=function(tt,nt){for(var rt=0;rt{var j=_(9208),$=_(5291),_e=_(4966).LEVEL,et=o.exports=function(){var tt=this,nt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};$.call(this,{objectMode:!0,highWaterMark:nt.highWaterMark}),this.format=nt.format,this.level=nt.level,this.handleExceptions=nt.handleExceptions,this.handleRejections=nt.handleRejections,this.silent=nt.silent,nt.log&&(this.log=nt.log),nt.logv&&(this.logv=nt.logv),nt.close&&(this.close=nt.close),this.once("pipe",function(rt){tt.levels=rt.levels,tt.parent=rt}),this.once("unpipe",function(rt){rt===tt.parent&&(tt.parent=null,tt.close&&tt.close())})};j.inherits(et,$),et.prototype._write=function(tt,nt,rt){if(this.silent||tt.exception===!0&&!this.handleExceptions)return rt(null);var it=this.level||this.parent&&this.parent.level;if(!it||this.levels[it]>=this.levels[tt[_e]]){if(tt&&!this.format)return this.log(tt,rt);var st=void 0,ut=void 0;try{ut=this.format.transform(Object.assign({},tt),this.format.options)}catch(Ft){st=Ft}if(st||!ut){if(rt(),st)throw st;return}return this.log(ut,rt)}return this._writableState.sync=!1,rt(null)},et.prototype._writev=function(tt,nt){if(this.logv){var rt=tt.filter(this._accept,this);return rt.length?this.logv(rt,nt):nt(null)}for(var it=0;it=this.levels[nt[_e]])||!this.handleExceptions&&nt.exception===!0)},et.prototype._nop=function(){}},1127:(o,s,_)=>{const j=_(9208),{LEVEL:$}=_(4966),_e=_(4927),et=o.exports=function(tt={}){if(_e.call(this,tt),!tt.transport||typeof tt.transport.log!="function")throw new Error("Invalid transport, must be an object with a log method.");this.transport=tt.transport,this.level=this.level||tt.transport.level,this.handleExceptions=this.handleExceptions||tt.transport.handleExceptions,this._deprecated(),this.transport.__winstonError||(this.transport.__winstonError=function(nt){this.emit("error",nt,this.transport)}.bind(this),this.transport.on("error",this.transport.__winstonError))};j.inherits(et,_e),et.prototype._write=function(tt,nt,rt){if(this.silent||tt.exception===!0&&!this.handleExceptions)return rt(null);(!this.level||this.levels[this.level]>=this.levels[tt[$]])&&this.transport.log(tt[$],tt.message,tt,this._nop),rt(null)},et.prototype._writev=function(tt,nt){for(let rt=0;rt{const j=_(9208),$=_(5291),{LEVEL:_e}=_(4966),et=o.exports=function(tt={}){$.call(this,{objectMode:!0,highWaterMark:tt.highWaterMark}),this.format=tt.format,this.level=tt.level,this.handleExceptions=tt.handleExceptions,this.handleRejections=tt.handleRejections,this.silent=tt.silent,tt.log&&(this.log=tt.log),tt.logv&&(this.logv=tt.logv),tt.close&&(this.close=tt.close),this.once("pipe",nt=>{this.levels=nt.levels,this.parent=nt}),this.once("unpipe",nt=>{nt===this.parent&&(this.parent=null,this.close&&this.close())})};j.inherits(et,$),et.prototype._write=function(tt,nt,rt){if(this.silent||tt.exception===!0&&!this.handleExceptions)return rt(null);const it=this.level||this.parent&&this.parent.level;if(!it||this.levels[it]>=this.levels[tt[_e]]){if(tt&&!this.format)return this.log(tt,rt);let st,ut;try{ut=this.format.transform(Object.assign({},tt),this.format.options)}catch(Ft){st=Ft}if(st||!ut){if(rt(),st)throw st;return}return this.log(ut,rt)}return this._writableState.sync=!1,rt(null)},et.prototype._writev=function(tt,nt){if(this.logv){const rt=tt.filter(this._accept,this);return rt.length?this.logv(rt,nt):nt(null)}for(let rt=0;rt=this.levels[nt[_e]])||!this.handleExceptions&&nt.exception===!0)},et.prototype._nop=function(){}},6563:(o,s,_)=>{var j=_(8911),$=_(1735).warn;s.version=_(7241).version,s.transports=_(3307),s.config=_(9127),s.addColors=j.levels,s.format=j.format,s.createLogger=_(8727),s.Logger=_(2162),s.ExceptionHandler=_(8624),s.RejectionHandler=_(8846),s.Container=_(9456),s.Transport=_(6155),s.loggers=new s.Container;var _e=s.createLogger();Object.keys(s.config.npm.levels).concat(["log","query","stream","add","remove","clear","profile","startTimer","handleExceptions","unhandleExceptions","handleRejections","unhandleRejections","configure","child"]).forEach(function(et){return s[et]=function(){return _e[et].apply(_e,arguments)}}),Object.defineProperty(s,"level",{get:function(){return _e.level},set:function(et){_e.level=et}}),Object.defineProperty(s,"exceptions",{get:function(){return _e.exceptions}}),Object.defineProperty(s,"rejections",{get:function(){return _e.rejections}}),["exitOnError"].forEach(function(et){Object.defineProperty(s,et,{get:function(){return _e[et]},set:function(tt){_e[et]=tt}})}),Object.defineProperty(s,"default",{get:function(){return{exceptionHandlers:_e.exceptionHandlers,rejectionHandlers:_e.rejectionHandlers,transports:_e.transports}}}),$.deprecated(s,"setLevels"),$.forFunctions(s,"useFormat",["cli"]),$.forProperties(s,"useFormat",["padLevels","stripColors"]),$.forFunctions(s,"deprecated",["addRewriter","addFilter","clone","extend"]),$.forProperties(s,"deprecated",["emitErrs","levelLength"])},1735:(o,s,_)=>{var j=_(9208).format;s.warn={deprecated:function($){return function(){throw new Error(j("{ %s } was removed in winston@3.0.0.",$))}},useFormat:function($){return function(){throw new Error([j("{ %s } was removed in winston@3.0.0.",$),"Use a custom winston.format = winston.format(function) instead."].join(` +`))}},forFunctions:function($,_e,et){et.forEach(function(tt){$[tt]=s.warn[_e](tt)})},forProperties:function($,_e,et){et.forEach(function(tt){var nt=s.warn[_e](tt);Object.defineProperty($,tt,{get:nt,set:nt})})}}},9127:(o,s,_)=>{var j=_(8911),$=_(4966).configs;s.cli=j.levels($.cli),s.npm=j.levels($.npm),s.syslog=j.levels($.syslog),s.addColors=j.levels},9456:(o,s,_)=>{function j(nt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(rt){return typeof rt}:function(rt){return rt&&typeof Symbol=="function"&&rt.constructor===Symbol&&rt!==Symbol.prototype?"symbol":typeof rt})(nt)}function $(nt,rt){if(!(nt instanceof rt))throw new TypeError("Cannot call a class as a function")}function _e(nt,rt){for(var it=0;it0&&arguments[0]!==void 0?arguments[0]:{};$(this,st),this.loggers=new Map,this.options=ut},(rt=[{key:"add",value:function(st,ut){var Ft=this;if(!this.loggers.has(st)){var dt=(ut=Object.assign({},ut||this.options)).transports||this.options.transports;ut.transports=dt?Array.isArray(dt)?dt.slice():[dt]:[];var gt=tt(ut);gt.on("close",function(){return Ft._delete(st)}),this.loggers.set(st,gt)}return this.loggers.get(st)}},{key:"get",value:function(st,ut){return this.add(st,ut)}},{key:"has",value:function(st){return!!this.loggers.has(st)}},{key:"close",value:function(st){var ut=this;if(st)return this._removeLogger(st);this.loggers.forEach(function(Ft,dt){return ut._removeLogger(dt)})}},{key:"_removeLogger",value:function(st){this.loggers.has(st)&&(this.loggers.get(st).close(),this._delete(st))}},{key:"_delete",value:function(st){this.loggers.delete(st)}}])&&_e(nt.prototype,rt),it&&_e(nt,it),Object.defineProperty(nt,"prototype",{writable:!1}),nt;var nt,rt,it}()},8727:(o,s,_)=>{function j(ht){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ft){return typeof ft}:function(ft){return ft&&typeof Symbol=="function"&&ft.constructor===Symbol&&ft!==Symbol.prototype?"symbol":typeof ft})(ht)}function $(ht,ft){for(var pt=0;pt0&&arguments[0]!==void 0?arguments[0]:{};ht.levels=ht.levels||Ft.npm.levels;var ft=function(Rt){function Qt(Nt){return tt(this,Qt),nt(this,Qt,[Nt])}return it(Qt,Rt),_e(Qt)}(dt),pt=new ft(ht);return Object.keys(ht.levels).forEach(function(Rt){gt('Define prototype method for "%s"',Rt),Rt!=="log"?(ft.prototype[Rt]=function(){for(var Qt=this||pt,Nt=arguments.length,At=new Array(Nt),kt=0;kt{function j(ut){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Ft){return typeof Ft}:function(Ft){return Ft&&typeof Symbol=="function"&&Ft.constructor===Symbol&&Ft!==Symbol.prototype?"symbol":typeof Ft})(ut)}function $(ut,Ft){for(var dt=0;dt{function j(it){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(st){return typeof st}:function(st){return st&&typeof Symbol=="function"&&st.constructor===Symbol&&st!==Symbol.prototype?"symbol":typeof st})(it)}function $(it,st){for(var ut=0;ut{function j(vt,mt,yt){return(mt=et(mt))in vt?Object.defineProperty(vt,mt,{value:yt,enumerable:!0,configurable:!0,writable:!0}):vt[mt]=yt,vt}function $(vt){return($=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(mt){return typeof mt}:function(mt){return mt&&typeof Symbol=="function"&&mt.constructor===Symbol&&mt!==Symbol.prototype?"symbol":typeof mt})(vt)}function _e(vt,mt){for(var yt=0;yt0&&arguments[0]!==void 0?arguments[0]:{},Pt=Jt.silent,Yt=Jt.format,Mt=Jt.defaultMeta,zt=Jt.levels,qt=Jt.level,Xt=qt===void 0?"info":qt,xt=Jt.exitOnError,It=xt===void 0||xt,$t=Jt.transports,un=Jt.colors,tn=Jt.emitErrs,an=Jt.formatters,Kt=Jt.padLevels,Un=Jt.rewriters,Bn=Jt.stripColors,hn=Jt.exceptionHandlers,En=Jt.rejectionHandlers;if(this.transports.length&&this.clear(),this.silent=Pt,this.format=Yt||this.format||_(2598)(),this.defaultMeta=Mt||null,this.levels=zt||this.levels||At.npm.levels,this.level=Xt,this.exceptions&&this.exceptions.unhandle(),this.rejections&&this.rejections.unhandle(),this.exceptions=new ft(this),this.rejections=new pt(this),this.profilers={},this.exitOnError=It,$t&&($t=Array.isArray($t)?$t:[$t]).forEach(function(Cn){return Et.add(Cn)}),un||tn||an||Kt||Un||Bn)throw new Error(["{ colors, emitErrs, formatters, padLevels, rewriters, stripColors } were removed in winston@3.0.0.","Use a custom winston.format(function) instead.","See: https://github.com/winstonjs/winston/tree/master/UPGRADE-3.0.md"].join(` +`));hn&&this.exceptions.handle(hn),En&&this.rejections.handle(En)}},{key:"isLevelEnabled",value:function(Et){var Jt=this,Pt=jt(this.levels,Et);if(Pt===null)return!1;var Yt=jt(this.levels,this.level);return Yt!==null&&(this.transports&&this.transports.length!==0?this.transports.findIndex(function(Mt){var zt=jt(Jt.levels,Mt.level);return zt===null&&(zt=Yt),zt>=Pt})!==-1:Yt>=Pt)}},{key:"log",value:function(Et,Jt){for(var Pt=arguments.length,Yt=new Array(Pt>2?Pt-2:0),Mt=2;Mt2?new Rt({transport:Et}):Et;if(!Jt._writableState||!Jt._writableState.objectMode)throw new Error("Transports must WritableStreams in objectMode. Set { objectMode: true }.");return this._onEvent("error",Jt),this._onEvent("warn",Jt),this.pipe(Jt),Et.handleExceptions&&this.exceptions.handle(),Et.handleRejections&&this.rejections.handle(),this}},{key:"remove",value:function(Et){if(!Et)return this;var Jt=Et;return(!ht(Et)||Et.log.length>2)&&(Jt=this.transports.filter(function(Pt){return Pt.transport===Et})[0]),Jt&&this.unpipe(Jt),this}},{key:"clear",value:function(){return this.unpipe(),this}},{key:"close",value:function(){return this.exceptions.unhandle(),this.rejections.unhandle(),this.clear(),this.emit("close"),this}},{key:"setLevels",value:function(){Nt.deprecated("setLevels")}},{key:"query",value:function(Et,Jt){typeof Et=="function"&&(Jt=Et,Et={}),Et=Et||{};var Pt={},Yt=Object.assign({},Et.query||{});Ft(this.transports.filter(function(Mt){return!!Mt.query}),function(Mt,zt){(function(qt,Xt){Et.query&&typeof qt.formatQuery=="function"&&(Et.query=qt.formatQuery(Yt)),qt.query(Et,function(xt,It){if(xt)return Xt(xt);typeof qt.formatResults=="function"&&(It=qt.formatResults(It,Et.format)),Xt(null,It)})})(Mt,function(qt,Xt){zt&&((Xt=qt||Xt)&&(Pt[Mt.name]=Xt),zt()),zt=null})},function(){return Jt(null,Pt)})}},{key:"stream",value:function(){var Et=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Jt=new st,Pt=[];return Jt._streams=Pt,Jt.destroy=function(){for(var Yt=Pt.length;Yt--;)Pt[Yt].destroy()},this.transports.filter(function(Yt){return!!Yt.stream}).forEach(function(Yt){var Mt=Yt.stream(Et);Mt&&(Pt.push(Mt),Mt.on("log",function(zt){zt.transport=zt.transport||[],zt.transport.push(Yt.name),Jt.emit("log",zt)}),Mt.on("error",function(zt){zt.transport=zt.transport||[],zt.transport.push(Yt.name),Jt.emit("error",zt)}))}),Jt}},{key:"startTimer",value:function(){return new Qt(this)}},{key:"profile",value:function(Et){var Jt=Date.now();if(this.profilers[Et]){var Pt=this.profilers[Et];delete this.profilers[Et];for(var Yt=arguments.length,Mt=new Array(Yt>1?Yt-1:0),zt=1;zt{function j(tt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(nt){return typeof nt}:function(nt){return nt&&typeof Symbol=="function"&&nt.constructor===Symbol&&nt!==Symbol.prototype?"symbol":typeof nt})(tt)}function $(tt,nt){for(var rt=0;rt{function j(ut){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Ft){return typeof Ft}:function(Ft){return Ft&&typeof Symbol=="function"&&Ft.constructor===Symbol&&Ft!==Symbol.prototype?"symbol":typeof Ft})(ut)}function $(ut,Ft){for(var dt=0;dt{function j(it){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(st){return typeof st}:function(st){return st&&typeof Symbol=="function"&&st.constructor===Symbol&&st!==Symbol.prototype?"symbol":typeof st})(it)}function $(it,st){for(var ut=0;ut{var j=_(2627),$=_(8888).StringDecoder,_e=_(4156).Stream;function et(){}o.exports=function(tt,nt){var rt=Buffer.alloc(65536),it=new $("utf8"),st=new _e,ut="",Ft=0,dt=0;return tt.start===-1&&delete tt.start,st.readable=!0,st.destroy=function(){st.destroyed=!0,st.emit("end"),st.emit("close")},j.open(tt.file,"a+","0644",function(gt,Ut){if(gt)return nt?nt(gt):st.emit("error",gt),void st.destroy();(function ht(){if(!st.destroyed)return j.read(Ut,rt,0,rt.length,Ft,function(ft,pt){if(ft)return nt?nt(ft):st.emit("error",ft),void st.destroy();if(!pt)return ut&&((tt.start==null||dt>tt.start)&&(nt?nt(null,ut):st.emit("line",ut)),dt++,ut=""),setTimeout(ht,1e3);var Rt=it.write(rt.slice(0,pt));nt||st.emit("data",Rt);for(var Qt=(Rt=(ut+Rt).split(/\n+/)).length-1,Nt=0;Nttt.start)&&(nt?nt(null,Rt[Nt]):st.emit("line",Rt[Nt])),dt++;return ut=Rt[Qt],Ft+=pt,ht()});j.close(Ut,et)})()}),nt?st.destroy:st}},810:(o,s,_)=>{function j(gt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Ut){return typeof Ut}:function(Ut){return Ut&&typeof Symbol=="function"&&Ut.constructor===Symbol&&Ut!==Symbol.prototype?"symbol":typeof Ut})(gt)}function $(gt,Ut){if(!(gt instanceof Ut))throw new TypeError("Cannot call a class as a function")}function _e(gt,Ut){for(var ht=0;ht0&&arguments[0]!==void 0?arguments[0]:{};return $(this,Ut),(Rt=tt(this,Ut,[Qt])).name=Qt.name||"console",Rt.stderrLevels=Rt._stringArrayToSet(Qt.stderrLevels),Rt.consoleWarnLevels=Rt._stringArrayToSet(Qt.consoleWarnLevels),Rt.eol=typeof Qt.eol=="string"?Qt.eol:it.EOL,Rt.forceConsole=Qt.forceConsole||!1,Rt._consoleLog=console.log.bind(console),Rt._consoleWarn=console.warn.bind(console),Rt._consoleError=console.error.bind(console),Rt.setMaxListeners(30),Rt}return function(Rt,Qt){if(typeof Qt!="function"&&Qt!==null)throw new TypeError("Super expression must either be null or a function");Rt.prototype=Object.create(Qt&&Qt.prototype,{constructor:{value:Rt,writable:!0,configurable:!0}}),Object.defineProperty(Rt,"prototype",{writable:!1}),Qt&&rt(Rt,Qt)}(Ut,gt),ht=Ut,(ft=[{key:"log",value:function(Rt,Qt){var Nt=this;return setImmediate(function(){return Nt.emit("logged",Rt)}),this.stderrLevels[Rt[ut]]?(console._stderr&&!this.forceConsole?console._stderr.write("".concat(Rt[Ft]).concat(this.eol)):this._consoleError(Rt[Ft]),void(Qt&&Qt())):this.consoleWarnLevels[Rt[ut]]?(console._stderr&&!this.forceConsole?console._stderr.write("".concat(Rt[Ft]).concat(this.eol)):this._consoleWarn(Rt[Ft]),void(Qt&&Qt())):(console._stdout&&!this.forceConsole?console._stdout.write("".concat(Rt[Ft]).concat(this.eol)):this._consoleLog(Rt[Ft]),void(Qt&&Qt()))}},{key:"_stringArrayToSet",value:function(Rt,Qt){if(!Rt)return{};if(Qt=Qt||"Cannot make set from type other than Array of string elements",!Array.isArray(Rt))throw new Error(Qt);return Rt.reduce(function(Nt,At){if(typeof At!="string")throw new Error(Qt);return Nt[At]=!0,Nt},{})}}])&&_e(ht.prototype,ft),pt&&_e(ht,pt),Object.defineProperty(ht,"prototype",{writable:!1}),ht;var ht,ft,pt}(dt)},3329:(o,s,_)=>{function j(Nt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(At){return typeof At}:function(At){return At&&typeof Symbol=="function"&&At.constructor===Symbol&&At!==Symbol.prototype?"symbol":typeof At})(Nt)}function $(Nt,At){if(!(Nt instanceof At))throw new TypeError("Cannot call a class as a function")}function _e(Nt,At){for(var kt=0;kt0&&arguments[0]!==void 0?arguments[0]:{};function yt(Vt){for(var wt=arguments.length,Et=new Array(wt>1?wt-1:0),Jt=1;Jt1&&arguments[1]!==void 0?arguments[1]:function(){};if(this.silent)return yt(),!0;if(this._drain)this._stream.once("drain",function(){mt._drain=!1,mt.log(vt,yt)});else{if(!this._rotate){if(this.lazy){if(!this._fileExist)return this._opening||this.open(),void this.once("open",function(){mt._fileExist=!0,mt.log(vt,yt)});if(this._needsNewFile(this._pendingSize))return void this._dest.once("close",function(){mt._opening||mt.open(),mt.once("open",function(){mt.log(vt,yt)})})}var Vt="".concat(vt[dt]).concat(this.eol),wt=Buffer.byteLength(Vt);this._pendingSize+=wt,this._opening&&!this.rotatedWhileOpening&&this._needsNewFile(this._size+this._pendingSize)&&(this.rotatedWhileOpening=!0);var Et=this._stream.write(Vt,Jt.bind(this));return Et?yt():(this._drain=!0,this._stream.once("drain",function(){mt._drain=!1,yt()})),pt("written",Et,this._drain),this.finishIfEnding(),Et}this._stream.once("rotate",function(){mt._rotate=!1,mt.log(vt,yt)})}function Jt(){var Pt=this;this._size+=wt,this._pendingSize-=wt,pt("logged %s %s",this._size,Vt),this.emit("logged",vt),this._rotate||this._opening||this._needsNewFile()&&(this.lazy?this._endStream(function(){Pt.emit("fileclosed")}):(this._rotate=!0,this._endStream(function(){return Pt._rotateFile()})))}}},{key:"query",value:function(vt,mt){typeof vt=="function"&&(mt=vt,vt={}),vt=function(Yt){return(Yt=Yt||{}).rows=Yt.rows||Yt.limit||10,Yt.start=Yt.start||0,Yt.until=Yt.until||new Date,j(Yt.until)!=="object"&&(Yt.until=new Date(Yt.until)),Yt.from=Yt.from||Yt.until-864e5,j(Yt.from)!=="object"&&(Yt.from=new Date(Yt.from)),Yt.order=Yt.order||"desc",Yt}(vt);var yt=st.join(this.dirname,this.filename),Vt="",wt=[],Et=0,Jt=it.createReadStream(yt,{encoding:"utf8"});function Pt(Yt,Mt){try{var zt=JSON.parse(Yt);(function(qt){if(qt&&j(qt)==="object"){var Xt=new Date(qt.timestamp);if(!(vt.from&&Xtvt.until||vt.level&&vt.level!==qt.level))return!0}})(zt)&&function(qt){vt.rows&&wt.length>=vt.rows&&vt.order!=="desc"?Jt.readable&&Jt.destroy():(vt.fields&&(qt=vt.fields.reduce(function(Xt,xt){return Xt[xt]=qt[xt],Xt},{})),vt.order==="desc"&&wt.length>=vt.rows&&wt.shift(),wt.push(qt))}(zt)}catch(qt){Mt||Jt.emit("error",qt)}}Jt.on("error",function(Yt){if(Jt.readable&&Jt.destroy(),mt)return Yt.code!=="ENOENT"?mt(Yt):mt(null,wt)}),Jt.on("data",function(Yt){for(var Mt=(Yt=(Vt+Yt).split(/\n+/)).length-1,zt=0;zt=vt.start)&&Pt(Yt[zt]),Et++;Vt=Yt[Mt]}),Jt.on("close",function(){Vt&&Pt(Vt,!0),vt.order==="desc"&&(wt=wt.reverse()),mt&&mt(null,wt)})}},{key:"stream",value:function(){var vt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},mt=st.join(this.dirname,this.filename),yt=new Ut,Vt={file:mt,start:vt.start};return yt.destroy=Qt(Vt,function(wt,Et){if(wt)return yt.emit("error",wt);try{yt.emit("data",Et),Et=JSON.parse(Et),yt.emit("log",Et)}catch(Jt){yt.emit("error",Jt)}}),yt}},{key:"open",value:function(){var vt=this;this.filename&&(this._opening||(this._opening=!0,this.stat(function(mt,yt){if(mt)return vt.emit("error",mt);pt("stat done: %s { size: %s }",vt.filename,yt),vt._size=yt,vt._dest=vt._createStream(vt._stream),vt._opening=!1,vt.once("open",function(){vt._stream.emit("rotate")||(vt._rotate=!1)})})))}},{key:"stat",value:function(vt){var mt=this,yt=this._getFile(),Vt=st.join(this.dirname,yt);it.stat(Vt,function(wt,Et){return wt&&wt.code==="ENOENT"?(pt("ENOENT ok",Vt),mt.filename=yt,vt(null,0)):wt?(pt("err ".concat(wt.code," ").concat(Vt)),vt(wt)):!Et||mt._needsNewFile(Et.size)?mt._incFile(function(){return mt.stat(vt)}):(mt.filename=yt,void vt(null,Et.size))})}},{key:"close",value:function(vt){var mt=this;this._stream&&this._stream.end(function(){vt&&vt(),mt.emit("flush"),mt.emit("closed")})}},{key:"_needsNewFile",value:function(vt){return vt=vt||this._size,this.maxsize&&vt>=this.maxsize}},{key:"_onError",value:function(vt){this.emit("error",vt)}},{key:"_setupStream",value:function(vt){return vt.on("error",this._onError),vt}},{key:"_cleanupStream",value:function(vt){return vt.removeListener("error",this._onError),vt.destroy(),vt}},{key:"_rotateFile",value:function(){var vt=this;this._incFile(function(){return vt.open()})}},{key:"_endStream",value:function(){var vt=this,mt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){};this._dest?(this._stream.unpipe(this._dest),this._dest.end(function(){vt._cleanupStream(vt._dest),mt()})):mt()}},{key:"_createStream",value:function(vt){var mt=this,yt=st.join(this.dirname,this.filename);pt("create stream start",yt,this.options);var Vt=it.createWriteStream(yt,this.options).on("error",function(wt){return pt(wt)}).on("close",function(){return pt("close",Vt.path,Vt.bytesWritten)}).on("open",function(){pt("file open ok",yt),mt.emit("open",yt),vt.pipe(Vt),mt.rotatedWhileOpening&&(mt._stream=new ht,mt._stream.setMaxListeners(30),mt._rotateFile(),mt.rotatedWhileOpening=!1,mt._cleanupStream(Vt),vt.end())});return pt("create stream ok",yt),Vt}},{key:"_incFile",value:function(vt){pt("_incFile",this.filename);var mt=st.extname(this._basename),yt=st.basename(this._basename,mt),Vt=[];this.zippedArchive&&Vt.push(function(wt){var Et=this._created>0&&!this.tailable?this._created:"";this._compressFile(st.join(this.dirname,"".concat(yt).concat(Et).concat(mt)),st.join(this.dirname,"".concat(yt).concat(Et).concat(mt,".gz")),wt)}.bind(this)),Vt.push(function(wt){this.tailable?this._checkMaxFilesTailable(mt,yt,wt):(this._created+=1,this._checkMaxFilesIncrementing(mt,yt,wt))}.bind(this)),ut(Vt,vt)}},{key:"_getFile",value:function(){var vt=st.extname(this._basename),mt=st.basename(this._basename,vt),yt=this.rotationFormat?this.rotationFormat():this._created;return!this.tailable&&this._created?"".concat(mt).concat(yt).concat(vt):"".concat(mt).concat(vt)}},{key:"_checkMaxFilesIncrementing",value:function(vt,mt,yt){if(!this.maxFiles||this._created1;Jt--)wt.push(function(Pt,Yt){var Mt=this,zt="".concat(mt).concat(Pt-1).concat(vt).concat(Et),qt=st.join(this.dirname,zt);it.exists(qt,function(Xt){if(!Xt)return Yt(null);zt="".concat(mt).concat(Pt).concat(vt).concat(Et),it.rename(qt,st.join(Mt.dirname,zt),Yt)})}.bind(this,Jt));ut(wt,function(){it.rename(st.join(Vt.dirname,"".concat(mt).concat(vt).concat(Et)),st.join(Vt.dirname,"".concat(mt,"1").concat(vt).concat(Et)),yt)})}}},{key:"_compressFile",value:function(vt,mt,yt){it.access(vt,it.F_OK,function(Vt){if(Vt)return yt();var wt=Ft.createGzip(),Et=it.createReadStream(vt),Jt=it.createWriteStream(mt);Jt.on("finish",function(){it.unlink(vt,yt)}),Et.pipe(wt).pipe(Jt)})}},{key:"_createLogDirIfNotExist",value:function(vt){it.existsSync(vt)||it.mkdirSync(vt,{recursive:!0})}}])&&_e(kt.prototype,Bt),jt&&_e(kt,jt),Object.defineProperty(kt,"prototype",{writable:!1}),kt;var kt,Bt,jt}(ft)},7543:(o,s,_)=>{function j(ft){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(pt){return typeof pt}:function(pt){return pt&&typeof Symbol=="function"&&pt.constructor===Symbol&&pt!==Symbol.prototype?"symbol":typeof pt})(ft)}function $(ft,pt){var Rt=Object.keys(ft);if(Object.getOwnPropertySymbols){var Qt=Object.getOwnPropertySymbols(ft);pt&&(Qt=Qt.filter(function(Nt){return Object.getOwnPropertyDescriptor(ft,Nt).enumerable})),Rt.push.apply(Rt,Qt)}return Rt}function _e(ft){for(var pt=1;pt0&&arguments[0]!==void 0?arguments[0]:{};return tt(this,pt),(At=it(this,pt,[kt])).options=kt,At.name=kt.name||"http",At.ssl=!!kt.ssl,At.host=kt.host||"localhost",At.port=kt.port,At.auth=kt.auth,At.path=kt.path||"",At.maximumDepth=kt.maximumDepth,At.agent=kt.agent,At.headers=kt.headers||{},At.headers["content-type"]="application/json",At.batch=kt.batch||!1,At.batchInterval=kt.batchInterval||5e3,At.batchCount=kt.batchCount||10,At.batchOptions=[],At.batchTimeoutID=-1,At.batchCallback={},At.port||(At.port=At.ssl?443:80),At}return function(At,kt){if(typeof kt!="function"&&kt!==null)throw new TypeError("Super expression must either be null or a function");At.prototype=Object.create(kt&&kt.prototype,{constructor:{value:At,writable:!0,configurable:!0}}),Object.defineProperty(At,"prototype",{writable:!1}),kt&&ut(At,kt)}(pt,ft),Rt=pt,(Qt=[{key:"log",value:function(At,kt){var Bt=this;this._request(At,null,null,function(jt,vt){vt&&vt.statusCode!==200&&(jt=new Error("Invalid HTTP Status Code: ".concat(vt.statusCode))),jt?Bt.emit("warn",jt):Bt.emit("logged",At)}),kt&&setImmediate(kt)}},{key:"query",value:function(At,kt){typeof At=="function"&&(kt=At,At={});var Bt=(At={method:"query",params:this.normalizeQuery(At)}).params.auth||null;delete At.params.auth;var jt=At.params.path||null;delete At.params.path,this._request(At,Bt,jt,function(vt,mt,yt){if(mt&&mt.statusCode!==200&&(vt=new Error("Invalid HTTP Status Code: ".concat(mt.statusCode))),vt)return kt(vt);if(typeof yt=="string")try{yt=JSON.parse(yt)}catch(Vt){return kt(Vt)}kt(null,yt)})}},{key:"stream",value:function(){var At=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},kt=new gt,Bt=(At={method:"stream",params:At}).params.path||null;delete At.params.path;var jt=At.params.auth||null;delete At.params.auth;var vt="",mt=this._request(At,jt,Bt);return kt.destroy=function(){return mt.destroy()},mt.on("data",function(yt){for(var Vt=(yt=(vt+yt).split(/\n+/)).length-1,wt=0;wt0&&(clearTimeout(this.batchTimeoutID),this.batchTimeoutID=-1);var jt=this.batchOptions.slice();this.batchOptions=[],this._doRequest(jt,At,kt,Bt)}},{key:"_doRequest",value:function(At,kt,Bt,jt){var vt=Object.assign({},this.headers);Bt&&Bt.bearer&&(vt.Authorization="Bearer ".concat(Bt.bearer));var mt=(this.ssl?dt:Ft).request(_e(_e({},this.options),{},{method:"POST",host:this.host,port:this.port,path:"/".concat(jt.replace(/^\//,"")),headers:vt,auth:Bt&&Bt.username&&Bt.password?"".concat(Bt.username,":").concat(Bt.password):"",agent:this.agent}));mt.on("error",kt),mt.on("response",function(Vt){return Vt.on("end",function(){return kt(null,Vt)}).resume()});var yt=ht(_e({},this.maximumDepth&&{maximumDepth:this.maximumDepth}));mt.end(Buffer.from(yt(At,this.options.replacer),"utf8"))}}])&&nt(Rt.prototype,Qt),Nt&&nt(Rt,Nt),Object.defineProperty(Rt,"prototype",{writable:!1}),Rt;var Rt,Qt,Nt}(Ut)},3307:(o,s,_)=>{Object.defineProperty(s,"Console",{configurable:!0,enumerable:!0,get:function(){return _(810)}}),Object.defineProperty(s,"File",{configurable:!0,enumerable:!0,get:function(){return _(3329)}}),Object.defineProperty(s,"Http",{configurable:!0,enumerable:!0,get:function(){return _(7543)}}),Object.defineProperty(s,"Stream",{configurable:!0,enumerable:!0,get:function(){return _(4149)}})},4149:(o,s,_)=>{function j(dt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(gt){return typeof gt}:function(gt){return gt&&typeof Symbol=="function"&>.constructor===Symbol&>!==Symbol.prototype?"symbol":typeof gt})(dt)}function $(dt,gt){if(!(dt instanceof gt))throw new TypeError("Cannot call a class as a function")}function _e(dt,gt){for(var Ut=0;Ut0&&arguments[0]!==void 0?arguments[0]:{};if($(this,gt),pt=tt(this,gt,[Rt]),!Rt.stream||!it(Rt.stream))throw new Error("options.stream is required.");return pt._stream=Rt.stream,pt._stream.setMaxListeners(1/0),pt.isObjectMode=Rt.stream._writableState.objectMode,pt.eol=typeof Rt.eol=="string"?Rt.eol:ut.EOL,pt}return function(pt,Rt){if(typeof Rt!="function"&&Rt!==null)throw new TypeError("Super expression must either be null or a function");pt.prototype=Object.create(Rt&&Rt.prototype,{constructor:{value:pt,writable:!0,configurable:!0}}),Object.defineProperty(pt,"prototype",{writable:!1}),Rt&&rt(pt,Rt)}(gt,dt),Ut=gt,(ht=[{key:"log",value:function(pt,Rt){var Qt=this;if(setImmediate(function(){return Qt.emit("logged",pt)}),this.isObjectMode)return this._stream.write(pt),void(Rt&&Rt());this._stream.write("".concat(pt[st]).concat(this.eol)),Rt&&Rt()}}])&&_e(Ut.prototype,ht),ft&&_e(Ut,ft),Object.defineProperty(Ut,"prototype",{writable:!1}),Ut;var Ut,ht,ft}(Ft)},3227:o=>{o.exports=function(){for(var _={},j=0;j{const j={};j.web=_(5949),_(8052);const $={v1:{}};$.v1.signaling={},$.v1.signaling.api=_(4620),$.v1.signaling.api.SignalingClient=function(dt,gt,Ut){Ut||(Ut={}),Ut.format="text",this.client_=new j.web.GrpcWebClientBase(Ut),this.hostname_=dt.replace(/\/+$/,"")},$.v1.signaling.api.SignalingPromiseClient=function(dt,gt,Ut){Ut||(Ut={}),Ut.format="text",this.client_=new j.web.GrpcWebClientBase(Ut),this.hostname_=dt.replace(/\/+$/,"")};const _e=new j.web.MethodDescriptor("/v1.signaling.api.Signaling/GetHealth",j.web.MethodType.UNARY,$.v1.signaling.api.GetHealthRequest,$.v1.signaling.api.GetHealthResponse,function(dt){return dt.serializeBinary()},$.v1.signaling.api.GetHealthResponse.deserializeBinary);$.v1.signaling.api.SignalingClient.prototype.getHealth=function(dt,gt,Ut){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetHealth",dt,gt||{},_e,Ut)},$.v1.signaling.api.SignalingPromiseClient.prototype.getHealth=function(dt,gt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetHealth",dt,gt||{},_e)};const et=new j.web.MethodDescriptor("/v1.signaling.api.Signaling/CreatePeer",j.web.MethodType.UNARY,$.v1.signaling.api.CreatePeerRequest,$.v1.signaling.api.CreatePeerResponse,function(dt){return dt.serializeBinary()},$.v1.signaling.api.CreatePeerResponse.deserializeBinary);$.v1.signaling.api.SignalingClient.prototype.createPeer=function(dt,gt,Ut){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/CreatePeer",dt,gt||{},et,Ut)},$.v1.signaling.api.SignalingPromiseClient.prototype.createPeer=function(dt,gt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/CreatePeer",dt,gt||{},et)};const tt=new j.web.MethodDescriptor("/v1.signaling.api.Signaling/DeletePeer",j.web.MethodType.UNARY,$.v1.signaling.api.DeletePeerRequest,$.v1.signaling.api.DeletePeerResponse,function(dt){return dt.serializeBinary()},$.v1.signaling.api.DeletePeerResponse.deserializeBinary);$.v1.signaling.api.SignalingClient.prototype.deletePeer=function(dt,gt,Ut){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/DeletePeer",dt,gt||{},tt,Ut)},$.v1.signaling.api.SignalingPromiseClient.prototype.deletePeer=function(dt,gt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/DeletePeer",dt,gt||{},tt)};const nt=new j.web.MethodDescriptor("/v1.signaling.api.Signaling/RefreshPeer",j.web.MethodType.UNARY,$.v1.signaling.api.RefreshPeerRequest,$.v1.signaling.api.RefreshPeerResponse,function(dt){return dt.serializeBinary()},$.v1.signaling.api.RefreshPeerResponse.deserializeBinary);$.v1.signaling.api.SignalingClient.prototype.refreshPeer=function(dt,gt,Ut){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/RefreshPeer",dt,gt||{},nt,Ut)},$.v1.signaling.api.SignalingPromiseClient.prototype.refreshPeer=function(dt,gt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/RefreshPeer",dt,gt||{},nt)};const rt=new j.web.MethodDescriptor("/v1.signaling.api.Signaling/GetPeers",j.web.MethodType.UNARY,$.v1.signaling.api.GetPeersRequest,$.v1.signaling.api.GetPeersResponse,function(dt){return dt.serializeBinary()},$.v1.signaling.api.GetPeersResponse.deserializeBinary);$.v1.signaling.api.SignalingClient.prototype.getPeers=function(dt,gt,Ut){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetPeers",dt,gt||{},rt,Ut)},$.v1.signaling.api.SignalingPromiseClient.prototype.getPeers=function(dt,gt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetPeers",dt,gt||{},rt)};const it=new j.web.MethodDescriptor("/v1.signaling.api.Signaling/GetIceServers",j.web.MethodType.UNARY,$.v1.signaling.api.GetIceServersRequest,$.v1.signaling.api.GetIceServersResponse,function(dt){return dt.serializeBinary()},$.v1.signaling.api.GetIceServersResponse.deserializeBinary);$.v1.signaling.api.SignalingClient.prototype.getIceServers=function(dt,gt,Ut){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetIceServers",dt,gt||{},it,Ut)},$.v1.signaling.api.SignalingPromiseClient.prototype.getIceServers=function(dt,gt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetIceServers",dt,gt||{},it)};const st=new j.web.MethodDescriptor("/v1.signaling.api.Signaling/SendSignal",j.web.MethodType.UNARY,$.v1.signaling.api.SendSignalRequest,$.v1.signaling.api.SendSignalResponse,function(dt){return dt.serializeBinary()},$.v1.signaling.api.SendSignalResponse.deserializeBinary);$.v1.signaling.api.SignalingClient.prototype.sendSignal=function(dt,gt,Ut){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/SendSignal",dt,gt||{},st,Ut)},$.v1.signaling.api.SignalingPromiseClient.prototype.sendSignal=function(dt,gt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/SendSignal",dt,gt||{},st)};const ut=new j.web.MethodDescriptor("/v1.signaling.api.Signaling/ReceiveSignalStream",j.web.MethodType.SERVER_STREAMING,$.v1.signaling.api.ReceiveSignalStreamRequest,$.v1.signaling.api.ReceiveSignalStreamResponse,function(dt){return dt.serializeBinary()},$.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinary);$.v1.signaling.api.SignalingClient.prototype.receiveSignalStream=function(dt,gt){return this.client_.serverStreaming(this.hostname_+"/v1.signaling.api.Signaling/ReceiveSignalStream",dt,gt||{},ut)},$.v1.signaling.api.SignalingPromiseClient.prototype.receiveSignalStream=function(dt,gt){return this.client_.serverStreaming(this.hostname_+"/v1.signaling.api.Signaling/ReceiveSignalStream",dt,gt||{},ut)};const Ft=new j.web.MethodDescriptor("/v1.signaling.api.Signaling/GetSessions",j.web.MethodType.UNARY,$.v1.signaling.api.GetSessionsRequest,$.v1.signaling.api.GetSessionsResponse,function(dt){return dt.serializeBinary()},$.v1.signaling.api.GetSessionsResponse.deserializeBinary);$.v1.signaling.api.SignalingClient.prototype.getSessions=function(dt,gt,Ut){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetSessions",dt,gt||{},Ft,Ut)},$.v1.signaling.api.SignalingPromiseClient.prototype.getSessions=function(dt,gt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetSessions",dt,gt||{},Ft)},o.exports=$.v1.signaling.api},4620:(o,s,_)=>{var j=_(7186),$=j,_e=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||_e!==void 0&&_e||typeof self<"u"&&self||function(){return this}.call(null)||Function("return this")(),et=_(8052);$.object.extend(proto,et),$.exportSymbol("proto.v1.signaling.api.CreatePeerRequest",null,_e),$.exportSymbol("proto.v1.signaling.api.CreatePeerResponse",null,_e),$.exportSymbol("proto.v1.signaling.api.DeletePeerRequest",null,_e),$.exportSymbol("proto.v1.signaling.api.DeletePeerResponse",null,_e),$.exportSymbol("proto.v1.signaling.api.GetHealthRequest",null,_e),$.exportSymbol("proto.v1.signaling.api.GetHealthResponse",null,_e),$.exportSymbol("proto.v1.signaling.api.GetIceServersRequest",null,_e),$.exportSymbol("proto.v1.signaling.api.GetIceServersResponse",null,_e),$.exportSymbol("proto.v1.signaling.api.GetPeersRequest",null,_e),$.exportSymbol("proto.v1.signaling.api.GetPeersResponse",null,_e),$.exportSymbol("proto.v1.signaling.api.GetSessionsRequest",null,_e),$.exportSymbol("proto.v1.signaling.api.GetSessionsResponse",null,_e),$.exportSymbol("proto.v1.signaling.api.Peer",null,_e),$.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamRequest",null,_e),$.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamResponse",null,_e),$.exportSymbol("proto.v1.signaling.api.RefreshPeerRequest",null,_e),$.exportSymbol("proto.v1.signaling.api.RefreshPeerResponse",null,_e),$.exportSymbol("proto.v1.signaling.api.RtcSession",null,_e),$.exportSymbol("proto.v1.signaling.api.SendSignalRequest",null,_e),$.exportSymbol("proto.v1.signaling.api.SendSignalResponse",null,_e),$.exportSymbol("proto.v1.signaling.api.SessionType",null,_e),$.exportSymbol("proto.v1.signaling.api.Signal",null,_e),proto.v1.signaling.api.Peer=function(tt){j.Message.initialize(this,tt,0,-1,proto.v1.signaling.api.Peer.repeatedFields_,null)},$.inherits(proto.v1.signaling.api.Peer,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Peer.displayName="proto.v1.signaling.api.Peer"),proto.v1.signaling.api.Signal=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.Signal,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Signal.displayName="proto.v1.signaling.api.Signal"),proto.v1.signaling.api.RtcSession=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.RtcSession,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RtcSession.displayName="proto.v1.signaling.api.RtcSession"),proto.v1.signaling.api.GetSessionsRequest=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.GetSessionsRequest,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetSessionsRequest.displayName="proto.v1.signaling.api.GetSessionsRequest"),proto.v1.signaling.api.GetSessionsResponse=function(tt){j.Message.initialize(this,tt,0,-1,proto.v1.signaling.api.GetSessionsResponse.repeatedFields_,null)},$.inherits(proto.v1.signaling.api.GetSessionsResponse,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetSessionsResponse.displayName="proto.v1.signaling.api.GetSessionsResponse"),proto.v1.signaling.api.GetHealthRequest=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.GetHealthRequest,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthRequest.displayName="proto.v1.signaling.api.GetHealthRequest"),proto.v1.signaling.api.GetHealthResponse=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.GetHealthResponse,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthResponse.displayName="proto.v1.signaling.api.GetHealthResponse"),proto.v1.signaling.api.CreatePeerRequest=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.CreatePeerRequest,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerRequest.displayName="proto.v1.signaling.api.CreatePeerRequest"),proto.v1.signaling.api.CreatePeerResponse=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.CreatePeerResponse,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerResponse.displayName="proto.v1.signaling.api.CreatePeerResponse"),proto.v1.signaling.api.DeletePeerRequest=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.DeletePeerRequest,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerRequest.displayName="proto.v1.signaling.api.DeletePeerRequest"),proto.v1.signaling.api.DeletePeerResponse=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.DeletePeerResponse,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerResponse.displayName="proto.v1.signaling.api.DeletePeerResponse"),proto.v1.signaling.api.RefreshPeerRequest=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.RefreshPeerRequest,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerRequest.displayName="proto.v1.signaling.api.RefreshPeerRequest"),proto.v1.signaling.api.RefreshPeerResponse=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.RefreshPeerResponse,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerResponse.displayName="proto.v1.signaling.api.RefreshPeerResponse"),proto.v1.signaling.api.GetPeersRequest=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.GetPeersRequest,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersRequest.displayName="proto.v1.signaling.api.GetPeersRequest"),proto.v1.signaling.api.GetPeersResponse=function(tt){j.Message.initialize(this,tt,0,-1,proto.v1.signaling.api.GetPeersResponse.repeatedFields_,null)},$.inherits(proto.v1.signaling.api.GetPeersResponse,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersResponse.displayName="proto.v1.signaling.api.GetPeersResponse"),proto.v1.signaling.api.GetIceServersRequest=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.GetIceServersRequest,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersRequest.displayName="proto.v1.signaling.api.GetIceServersRequest"),proto.v1.signaling.api.GetIceServersResponse=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.GetIceServersResponse,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersResponse.displayName="proto.v1.signaling.api.GetIceServersResponse"),proto.v1.signaling.api.SendSignalRequest=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.SendSignalRequest,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalRequest.displayName="proto.v1.signaling.api.SendSignalRequest"),proto.v1.signaling.api.SendSignalResponse=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.SendSignalResponse,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalResponse.displayName="proto.v1.signaling.api.SendSignalResponse"),proto.v1.signaling.api.ReceiveSignalStreamRequest=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.ReceiveSignalStreamRequest,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.displayName="proto.v1.signaling.api.ReceiveSignalStreamRequest"),proto.v1.signaling.api.ReceiveSignalStreamResponse=function(tt){j.Message.initialize(this,tt,0,-1,null,null)},$.inherits(proto.v1.signaling.api.ReceiveSignalStreamResponse,j.Message),$.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.displayName="proto.v1.signaling.api.ReceiveSignalStreamResponse"),proto.v1.signaling.api.Peer.repeatedFields_=[5],j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Peer.prototype.toObject=function(tt){return proto.v1.signaling.api.Peer.toObject(tt,this)},proto.v1.signaling.api.Peer.toObject=function(tt,nt){var rt,it={peerId:j.Message.getFieldWithDefault(nt,1,""),organizationId:j.Message.getFieldWithDefault(nt,2,""),userId:(rt=nt.getUserId())&&et.StringValue.toObject(tt,rt),deviceId:(rt=nt.getDeviceId())&&et.StringValue.toObject(tt,rt),sessionIdsList:(rt=j.Message.getRepeatedField(nt,5))==null?void 0:rt,peerCreatedTimestamp:(rt=nt.getPeerCreatedTimestamp())&&et.Int64Value.toObject(tt,rt)};return tt&&(it.$jspbMessageInstance=nt),it}),proto.v1.signaling.api.Peer.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.Peer;return proto.v1.signaling.api.Peer.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.Peer.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=nt.readString();tt.setPeerId(rt);break;case 2:rt=nt.readString(),tt.setOrganizationId(rt);break;case 3:rt=new et.StringValue,nt.readMessage(rt,et.StringValue.deserializeBinaryFromReader),tt.setUserId(rt);break;case 4:rt=new et.StringValue,nt.readMessage(rt,et.StringValue.deserializeBinaryFromReader),tt.setDeviceId(rt);break;case 5:rt=nt.readString(),tt.addSessionIds(rt);break;case 6:rt=new et.Int64Value,nt.readMessage(rt,et.Int64Value.deserializeBinaryFromReader),tt.setPeerCreatedTimestamp(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.Peer.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.Peer.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.Peer.serializeBinaryToWriter=function(tt,nt){var rt=void 0;(rt=tt.getPeerId()).length>0&&nt.writeString(1,rt),(rt=tt.getOrganizationId()).length>0&&nt.writeString(2,rt),(rt=tt.getUserId())!=null&&nt.writeMessage(3,rt,et.StringValue.serializeBinaryToWriter),(rt=tt.getDeviceId())!=null&&nt.writeMessage(4,rt,et.StringValue.serializeBinaryToWriter),(rt=tt.getSessionIdsList()).length>0&&nt.writeRepeatedString(5,rt),(rt=tt.getPeerCreatedTimestamp())!=null&&nt.writeMessage(6,rt,et.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.Peer.prototype.getPeerId=function(){return j.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.Peer.prototype.setPeerId=function(tt){return j.Message.setProto3StringField(this,1,tt)},proto.v1.signaling.api.Peer.prototype.getOrganizationId=function(){return j.Message.getFieldWithDefault(this,2,"")},proto.v1.signaling.api.Peer.prototype.setOrganizationId=function(tt){return j.Message.setProto3StringField(this,2,tt)},proto.v1.signaling.api.Peer.prototype.getUserId=function(){return j.Message.getWrapperField(this,et.StringValue,3)},proto.v1.signaling.api.Peer.prototype.setUserId=function(tt){return j.Message.setWrapperField(this,3,tt)},proto.v1.signaling.api.Peer.prototype.clearUserId=function(){return this.setUserId(void 0)},proto.v1.signaling.api.Peer.prototype.hasUserId=function(){return j.Message.getField(this,3)!=null},proto.v1.signaling.api.Peer.prototype.getDeviceId=function(){return j.Message.getWrapperField(this,et.StringValue,4)},proto.v1.signaling.api.Peer.prototype.setDeviceId=function(tt){return j.Message.setWrapperField(this,4,tt)},proto.v1.signaling.api.Peer.prototype.clearDeviceId=function(){return this.setDeviceId(void 0)},proto.v1.signaling.api.Peer.prototype.hasDeviceId=function(){return j.Message.getField(this,4)!=null},proto.v1.signaling.api.Peer.prototype.getSessionIdsList=function(){return j.Message.getRepeatedField(this,5)},proto.v1.signaling.api.Peer.prototype.setSessionIdsList=function(tt){return j.Message.setField(this,5,tt||[])},proto.v1.signaling.api.Peer.prototype.addSessionIds=function(tt,nt){return j.Message.addToRepeatedField(this,5,tt,nt)},proto.v1.signaling.api.Peer.prototype.clearSessionIdsList=function(){return this.setSessionIdsList([])},proto.v1.signaling.api.Peer.prototype.getPeerCreatedTimestamp=function(){return j.Message.getWrapperField(this,et.Int64Value,6)},proto.v1.signaling.api.Peer.prototype.setPeerCreatedTimestamp=function(tt){return j.Message.setWrapperField(this,6,tt)},proto.v1.signaling.api.Peer.prototype.clearPeerCreatedTimestamp=function(){return this.setPeerCreatedTimestamp(void 0)},proto.v1.signaling.api.Peer.prototype.hasPeerCreatedTimestamp=function(){return j.Message.getField(this,6)!=null},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Signal.prototype.toObject=function(tt){return proto.v1.signaling.api.Signal.toObject(tt,this)},proto.v1.signaling.api.Signal.toObject=function(tt,nt){var rt,it={sessionId:(rt=nt.getSessionId())&&et.StringValue.toObject(tt,rt),sessionCreatedTimestamp:(rt=nt.getSessionCreatedTimestamp())&&et.Int64Value.toObject(tt,rt),senderId:j.Message.getFieldWithDefault(nt,3,""),receiverId:j.Message.getFieldWithDefault(nt,4,""),payload:j.Message.getFieldWithDefault(nt,5,""),iceServers:j.Message.getFieldWithDefault(nt,6,""),iceTransportPolicy:j.Message.getFieldWithDefault(nt,7,""),sessionType:j.Message.getFieldWithDefault(nt,8,0)};return tt&&(it.$jspbMessageInstance=nt),it}),proto.v1.signaling.api.Signal.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.Signal;return proto.v1.signaling.api.Signal.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.Signal.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=new et.StringValue;nt.readMessage(rt,et.StringValue.deserializeBinaryFromReader),tt.setSessionId(rt);break;case 2:rt=new et.Int64Value,nt.readMessage(rt,et.Int64Value.deserializeBinaryFromReader),tt.setSessionCreatedTimestamp(rt);break;case 3:rt=nt.readString(),tt.setSenderId(rt);break;case 4:rt=nt.readString(),tt.setReceiverId(rt);break;case 5:rt=nt.readString(),tt.setPayload(rt);break;case 6:rt=nt.readString(),tt.setIceServers(rt);break;case 7:rt=nt.readString(),tt.setIceTransportPolicy(rt);break;case 8:rt=nt.readEnum(),tt.setSessionType(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.Signal.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.Signal.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.Signal.serializeBinaryToWriter=function(tt,nt){var rt=void 0;(rt=tt.getSessionId())!=null&&nt.writeMessage(1,rt,et.StringValue.serializeBinaryToWriter),(rt=tt.getSessionCreatedTimestamp())!=null&&nt.writeMessage(2,rt,et.Int64Value.serializeBinaryToWriter),(rt=tt.getSenderId()).length>0&&nt.writeString(3,rt),(rt=tt.getReceiverId()).length>0&&nt.writeString(4,rt),(rt=tt.getPayload()).length>0&&nt.writeString(5,rt),(rt=tt.getIceServers()).length>0&&nt.writeString(6,rt),(rt=tt.getIceTransportPolicy()).length>0&&nt.writeString(7,rt),(rt=tt.getSessionType())!==0&&nt.writeEnum(8,rt)},proto.v1.signaling.api.Signal.prototype.getSessionId=function(){return j.Message.getWrapperField(this,et.StringValue,1)},proto.v1.signaling.api.Signal.prototype.setSessionId=function(tt){return j.Message.setWrapperField(this,1,tt)},proto.v1.signaling.api.Signal.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionId=function(){return j.Message.getField(this,1)!=null},proto.v1.signaling.api.Signal.prototype.getSessionCreatedTimestamp=function(){return j.Message.getWrapperField(this,et.Int64Value,2)},proto.v1.signaling.api.Signal.prototype.setSessionCreatedTimestamp=function(tt){return j.Message.setWrapperField(this,2,tt)},proto.v1.signaling.api.Signal.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionCreatedTimestamp=function(){return j.Message.getField(this,2)!=null},proto.v1.signaling.api.Signal.prototype.getSenderId=function(){return j.Message.getFieldWithDefault(this,3,"")},proto.v1.signaling.api.Signal.prototype.setSenderId=function(tt){return j.Message.setProto3StringField(this,3,tt)},proto.v1.signaling.api.Signal.prototype.getReceiverId=function(){return j.Message.getFieldWithDefault(this,4,"")},proto.v1.signaling.api.Signal.prototype.setReceiverId=function(tt){return j.Message.setProto3StringField(this,4,tt)},proto.v1.signaling.api.Signal.prototype.getPayload=function(){return j.Message.getFieldWithDefault(this,5,"")},proto.v1.signaling.api.Signal.prototype.setPayload=function(tt){return j.Message.setProto3StringField(this,5,tt)},proto.v1.signaling.api.Signal.prototype.getIceServers=function(){return j.Message.getFieldWithDefault(this,6,"")},proto.v1.signaling.api.Signal.prototype.setIceServers=function(tt){return j.Message.setProto3StringField(this,6,tt)},proto.v1.signaling.api.Signal.prototype.getIceTransportPolicy=function(){return j.Message.getFieldWithDefault(this,7,"")},proto.v1.signaling.api.Signal.prototype.setIceTransportPolicy=function(tt){return j.Message.setProto3StringField(this,7,tt)},proto.v1.signaling.api.Signal.prototype.getSessionType=function(){return j.Message.getFieldWithDefault(this,8,0)},proto.v1.signaling.api.Signal.prototype.setSessionType=function(tt){return j.Message.setProto3EnumField(this,8,tt)},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RtcSession.prototype.toObject=function(tt){return proto.v1.signaling.api.RtcSession.toObject(tt,this)},proto.v1.signaling.api.RtcSession.toObject=function(tt,nt){var rt={sessionId:j.Message.getFieldWithDefault(nt,1,""),offerPeerId:j.Message.getFieldWithDefault(nt,2,""),answerPeerId:j.Message.getFieldWithDefault(nt,3,""),organizationId:j.Message.getFieldWithDefault(nt,4,""),sessionType:j.Message.getFieldWithDefault(nt,5,"")};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.RtcSession.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.RtcSession;return proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=nt.readString();tt.setSessionId(rt);break;case 2:rt=nt.readString(),tt.setOfferPeerId(rt);break;case 3:rt=nt.readString(),tt.setAnswerPeerId(rt);break;case 4:rt=nt.readString(),tt.setOrganizationId(rt);break;case 5:rt=nt.readString(),tt.setSessionType(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.RtcSession.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.RtcSession.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.RtcSession.serializeBinaryToWriter=function(tt,nt){var rt=void 0;(rt=tt.getSessionId()).length>0&&nt.writeString(1,rt),(rt=tt.getOfferPeerId()).length>0&&nt.writeString(2,rt),(rt=tt.getAnswerPeerId()).length>0&&nt.writeString(3,rt),(rt=tt.getOrganizationId()).length>0&&nt.writeString(4,rt),(rt=tt.getSessionType()).length>0&&nt.writeString(5,rt)},proto.v1.signaling.api.RtcSession.prototype.getSessionId=function(){return j.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.RtcSession.prototype.setSessionId=function(tt){return j.Message.setProto3StringField(this,1,tt)},proto.v1.signaling.api.RtcSession.prototype.getOfferPeerId=function(){return j.Message.getFieldWithDefault(this,2,"")},proto.v1.signaling.api.RtcSession.prototype.setOfferPeerId=function(tt){return j.Message.setProto3StringField(this,2,tt)},proto.v1.signaling.api.RtcSession.prototype.getAnswerPeerId=function(){return j.Message.getFieldWithDefault(this,3,"")},proto.v1.signaling.api.RtcSession.prototype.setAnswerPeerId=function(tt){return j.Message.setProto3StringField(this,3,tt)},proto.v1.signaling.api.RtcSession.prototype.getOrganizationId=function(){return j.Message.getFieldWithDefault(this,4,"")},proto.v1.signaling.api.RtcSession.prototype.setOrganizationId=function(tt){return j.Message.setProto3StringField(this,4,tt)},proto.v1.signaling.api.RtcSession.prototype.getSessionType=function(){return j.Message.getFieldWithDefault(this,5,"")},proto.v1.signaling.api.RtcSession.prototype.setSessionType=function(tt){return j.Message.setProto3StringField(this,5,tt)},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetSessionsRequest.prototype.toObject=function(tt){return proto.v1.signaling.api.GetSessionsRequest.toObject(tt,this)},proto.v1.signaling.api.GetSessionsRequest.toObject=function(tt,nt){var rt={};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.GetSessionsRequest.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.GetSessionsRequest;return proto.v1.signaling.api.GetSessionsRequest.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.GetSessionsRequest.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)nt.getFieldNumber(),nt.skipField();return tt},proto.v1.signaling.api.GetSessionsRequest.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.GetSessionsRequest.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.GetSessionsRequest.serializeBinaryToWriter=function(tt,nt){},proto.v1.signaling.api.GetSessionsResponse.repeatedFields_=[1],j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetSessionsResponse.prototype.toObject=function(tt){return proto.v1.signaling.api.GetSessionsResponse.toObject(tt,this)},proto.v1.signaling.api.GetSessionsResponse.toObject=function(tt,nt){var rt={sessionsList:j.Message.toObjectList(nt.getSessionsList(),proto.v1.signaling.api.RtcSession.toObject,tt)};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.GetSessionsResponse.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.GetSessionsResponse;return proto.v1.signaling.api.GetSessionsResponse.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.GetSessionsResponse.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=new proto.v1.signaling.api.RtcSession;nt.readMessage(rt,proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader),tt.addSessions(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.GetSessionsResponse.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.GetSessionsResponse.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.GetSessionsResponse.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getSessionsList()).length>0&&nt.writeRepeatedMessage(1,rt,proto.v1.signaling.api.RtcSession.serializeBinaryToWriter)},proto.v1.signaling.api.GetSessionsResponse.prototype.getSessionsList=function(){return j.Message.getRepeatedWrapperField(this,proto.v1.signaling.api.RtcSession,1)},proto.v1.signaling.api.GetSessionsResponse.prototype.setSessionsList=function(tt){return j.Message.setRepeatedWrapperField(this,1,tt)},proto.v1.signaling.api.GetSessionsResponse.prototype.addSessions=function(tt,nt){return j.Message.addToRepeatedWrapperField(this,1,tt,proto.v1.signaling.api.RtcSession,nt)},proto.v1.signaling.api.GetSessionsResponse.prototype.clearSessionsList=function(){return this.setSessionsList([])},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthRequest.prototype.toObject=function(tt){return proto.v1.signaling.api.GetHealthRequest.toObject(tt,this)},proto.v1.signaling.api.GetHealthRequest.toObject=function(tt,nt){var rt={};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.GetHealthRequest.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.GetHealthRequest;return proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)nt.getFieldNumber(),nt.skipField();return tt},proto.v1.signaling.api.GetHealthRequest.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter=function(tt,nt){},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthResponse.prototype.toObject=function(tt){return proto.v1.signaling.api.GetHealthResponse.toObject(tt,this)},proto.v1.signaling.api.GetHealthResponse.toObject=function(tt,nt){var rt={version:j.Message.getFieldWithDefault(nt,1,"")};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.GetHealthResponse.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.GetHealthResponse;return proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=nt.readString();tt.setVersion(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.GetHealthResponse.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getVersion()).length>0&&nt.writeString(1,rt)},proto.v1.signaling.api.GetHealthResponse.prototype.getVersion=function(){return j.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetHealthResponse.prototype.setVersion=function(tt){return j.Message.setProto3StringField(this,1,tt)},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerRequest.prototype.toObject=function(tt){return proto.v1.signaling.api.CreatePeerRequest.toObject(tt,this)},proto.v1.signaling.api.CreatePeerRequest.toObject=function(tt,nt){var rt={};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.CreatePeerRequest.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.CreatePeerRequest;return proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)nt.getFieldNumber(),nt.skipField();return tt},proto.v1.signaling.api.CreatePeerRequest.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter=function(tt,nt){},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerResponse.prototype.toObject=function(tt){return proto.v1.signaling.api.CreatePeerResponse.toObject(tt,this)},proto.v1.signaling.api.CreatePeerResponse.toObject=function(tt,nt){var rt,it={peer:(rt=nt.getPeer())&&proto.v1.signaling.api.Peer.toObject(tt,rt)};return tt&&(it.$jspbMessageInstance=nt),it}),proto.v1.signaling.api.CreatePeerResponse.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.CreatePeerResponse;return proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=new proto.v1.signaling.api.Peer;nt.readMessage(rt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),tt.setPeer(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.CreatePeerResponse.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getPeer())!=null&&nt.writeMessage(1,rt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.CreatePeerResponse.prototype.getPeer=function(){return j.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.CreatePeerResponse.prototype.setPeer=function(tt){return j.Message.setWrapperField(this,1,tt)},proto.v1.signaling.api.CreatePeerResponse.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.CreatePeerResponse.prototype.hasPeer=function(){return j.Message.getField(this,1)!=null},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerRequest.prototype.toObject=function(tt){return proto.v1.signaling.api.DeletePeerRequest.toObject(tt,this)},proto.v1.signaling.api.DeletePeerRequest.toObject=function(tt,nt){var rt={peerId:j.Message.getFieldWithDefault(nt,1,"")};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.DeletePeerRequest.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.DeletePeerRequest;return proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=nt.readString();tt.setPeerId(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.DeletePeerRequest.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getPeerId()).length>0&&nt.writeString(1,rt)},proto.v1.signaling.api.DeletePeerRequest.prototype.getPeerId=function(){return j.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.DeletePeerRequest.prototype.setPeerId=function(tt){return j.Message.setProto3StringField(this,1,tt)},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerResponse.prototype.toObject=function(tt){return proto.v1.signaling.api.DeletePeerResponse.toObject(tt,this)},proto.v1.signaling.api.DeletePeerResponse.toObject=function(tt,nt){var rt={};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.DeletePeerResponse.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.DeletePeerResponse;return proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)nt.getFieldNumber(),nt.skipField();return tt},proto.v1.signaling.api.DeletePeerResponse.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter=function(tt,nt){},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerRequest.prototype.toObject=function(tt){return proto.v1.signaling.api.RefreshPeerRequest.toObject(tt,this)},proto.v1.signaling.api.RefreshPeerRequest.toObject=function(tt,nt){var rt,it={peer:(rt=nt.getPeer())&&proto.v1.signaling.api.Peer.toObject(tt,rt)};return tt&&(it.$jspbMessageInstance=nt),it}),proto.v1.signaling.api.RefreshPeerRequest.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.RefreshPeerRequest;return proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=new proto.v1.signaling.api.Peer;nt.readMessage(rt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),tt.setPeer(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.RefreshPeerRequest.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getPeer())!=null&&nt.writeMessage(1,rt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.RefreshPeerRequest.prototype.getPeer=function(){return j.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.RefreshPeerRequest.prototype.setPeer=function(tt){return j.Message.setWrapperField(this,1,tt)},proto.v1.signaling.api.RefreshPeerRequest.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.RefreshPeerRequest.prototype.hasPeer=function(){return j.Message.getField(this,1)!=null},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerResponse.prototype.toObject=function(tt){return proto.v1.signaling.api.RefreshPeerResponse.toObject(tt,this)},proto.v1.signaling.api.RefreshPeerResponse.toObject=function(tt,nt){var rt={};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.RefreshPeerResponse.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.RefreshPeerResponse;return proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)nt.getFieldNumber(),nt.skipField();return tt},proto.v1.signaling.api.RefreshPeerResponse.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter=function(tt,nt){},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersRequest.prototype.toObject=function(tt){return proto.v1.signaling.api.GetPeersRequest.toObject(tt,this)},proto.v1.signaling.api.GetPeersRequest.toObject=function(tt,nt){var rt={};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.GetPeersRequest.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.GetPeersRequest;return proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)nt.getFieldNumber(),nt.skipField();return tt},proto.v1.signaling.api.GetPeersRequest.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter=function(tt,nt){},proto.v1.signaling.api.GetPeersResponse.repeatedFields_=[1],j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersResponse.prototype.toObject=function(tt){return proto.v1.signaling.api.GetPeersResponse.toObject(tt,this)},proto.v1.signaling.api.GetPeersResponse.toObject=function(tt,nt){var rt={peersList:j.Message.toObjectList(nt.getPeersList(),proto.v1.signaling.api.Peer.toObject,tt)};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.GetPeersResponse.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.GetPeersResponse;return proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=new proto.v1.signaling.api.Peer;nt.readMessage(rt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),tt.addPeers(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.GetPeersResponse.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getPeersList()).length>0&&nt.writeRepeatedMessage(1,rt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.GetPeersResponse.prototype.getPeersList=function(){return j.Message.getRepeatedWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.GetPeersResponse.prototype.setPeersList=function(tt){return j.Message.setRepeatedWrapperField(this,1,tt)},proto.v1.signaling.api.GetPeersResponse.prototype.addPeers=function(tt,nt){return j.Message.addToRepeatedWrapperField(this,1,tt,proto.v1.signaling.api.Peer,nt)},proto.v1.signaling.api.GetPeersResponse.prototype.clearPeersList=function(){return this.setPeersList([])},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersRequest.prototype.toObject=function(tt){return proto.v1.signaling.api.GetIceServersRequest.toObject(tt,this)},proto.v1.signaling.api.GetIceServersRequest.toObject=function(tt,nt){var rt={};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.GetIceServersRequest.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.GetIceServersRequest;return proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)nt.getFieldNumber(),nt.skipField();return tt},proto.v1.signaling.api.GetIceServersRequest.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter=function(tt,nt){},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersResponse.prototype.toObject=function(tt){return proto.v1.signaling.api.GetIceServersResponse.toObject(tt,this)},proto.v1.signaling.api.GetIceServersResponse.toObject=function(tt,nt){var rt={iceServers:j.Message.getFieldWithDefault(nt,1,"")};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.GetIceServersResponse.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.GetIceServersResponse;return proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=nt.readString();tt.setIceServers(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.GetIceServersResponse.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getIceServers()).length>0&&nt.writeString(1,rt)},proto.v1.signaling.api.GetIceServersResponse.prototype.getIceServers=function(){return j.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetIceServersResponse.prototype.setIceServers=function(tt){return j.Message.setProto3StringField(this,1,tt)},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalRequest.prototype.toObject=function(tt){return proto.v1.signaling.api.SendSignalRequest.toObject(tt,this)},proto.v1.signaling.api.SendSignalRequest.toObject=function(tt,nt){var rt,it={signal:(rt=nt.getSignal())&&proto.v1.signaling.api.Signal.toObject(tt,rt)};return tt&&(it.$jspbMessageInstance=nt),it}),proto.v1.signaling.api.SendSignalRequest.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.SendSignalRequest;return proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=new proto.v1.signaling.api.Signal;nt.readMessage(rt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),tt.setSignal(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.SendSignalRequest.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getSignal())!=null&&nt.writeMessage(1,rt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalRequest.prototype.getSignal=function(){return j.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.SendSignalRequest.prototype.setSignal=function(tt){return j.Message.setWrapperField(this,1,tt)},proto.v1.signaling.api.SendSignalRequest.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.SendSignalRequest.prototype.hasSignal=function(){return j.Message.getField(this,1)!=null},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalResponse.prototype.toObject=function(tt){return proto.v1.signaling.api.SendSignalResponse.toObject(tt,this)},proto.v1.signaling.api.SendSignalResponse.toObject=function(tt,nt){var rt,it={sessionId:(rt=nt.getSessionId())&&et.StringValue.toObject(tt,rt),sessionCreatedTimestamp:(rt=nt.getSessionCreatedTimestamp())&&et.Int64Value.toObject(tt,rt)};return tt&&(it.$jspbMessageInstance=nt),it}),proto.v1.signaling.api.SendSignalResponse.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.SendSignalResponse;return proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=new et.StringValue;nt.readMessage(rt,et.StringValue.deserializeBinaryFromReader),tt.setSessionId(rt);break;case 2:rt=new et.Int64Value,nt.readMessage(rt,et.Int64Value.deserializeBinaryFromReader),tt.setSessionCreatedTimestamp(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.SendSignalResponse.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter=function(tt,nt){var rt=void 0;(rt=tt.getSessionId())!=null&&nt.writeMessage(1,rt,et.StringValue.serializeBinaryToWriter),(rt=tt.getSessionCreatedTimestamp())!=null&&nt.writeMessage(2,rt,et.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionId=function(){return j.Message.getWrapperField(this,et.StringValue,1)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionId=function(tt){return j.Message.setWrapperField(this,1,tt)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionId=function(){return j.Message.getField(this,1)!=null},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionCreatedTimestamp=function(){return j.Message.getWrapperField(this,et.Int64Value,2)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionCreatedTimestamp=function(tt){return j.Message.setWrapperField(this,2,tt)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionCreatedTimestamp=function(){return j.Message.getField(this,2)!=null},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.toObject=function(tt){return proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject(tt,this)},proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject=function(tt,nt){var rt={peerId:j.Message.getFieldWithDefault(nt,1,"")};return tt&&(rt.$jspbMessageInstance=nt),rt}),proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.ReceiveSignalStreamRequest;return proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=nt.readString();tt.setPeerId(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getPeerId()).length>0&&nt.writeString(1,rt)},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.getPeerId=function(){return j.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.setPeerId=function(tt){return j.Message.setProto3StringField(this,1,tt)},j.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.toObject=function(tt){return proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject(tt,this)},proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject=function(tt,nt){var rt,it={signal:(rt=nt.getSignal())&&proto.v1.signaling.api.Signal.toObject(tt,rt)};return tt&&(it.$jspbMessageInstance=nt),it}),proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinary=function(tt){var nt=new j.BinaryReader(tt),rt=new proto.v1.signaling.api.ReceiveSignalStreamResponse;return proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader(rt,nt)},proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader=function(tt,nt){for(;nt.nextField()&&!nt.isEndGroup();)switch(nt.getFieldNumber()){case 1:var rt=new proto.v1.signaling.api.Signal;nt.readMessage(rt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),tt.setSignal(rt);break;default:nt.skipField()}return tt},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.serializeBinary=function(){var tt=new j.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter(this,tt),tt.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter=function(tt,nt){var rt;(rt=tt.getSignal())!=null&&nt.writeMessage(1,rt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.getSignal=function(){return j.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.setSignal=function(tt){return j.Message.setWrapperField(this,1,tt)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.hasSignal=function(){return j.Message.getField(this,1)!=null},proto.v1.signaling.api.SessionType={UNKNOWN:0,TELEOP:1,PORT_FORWARD:2,OBSERVE:3,HEADLESS:4},$.object.extend(s,proto.v1.signaling.api)},3449:(o,s,_)=>{const j={..._(4620),..._(3804)};o.exports=j},6973:()=>{},3011:()=>{},3951:()=>{},9256:()=>{},2627:()=>{},4834:(o,s,_)=>{var j=_(9501),$=typeof globalThis>"u"?_.g:globalThis;o.exports=function(){for(var _e=[],et=0;et{o.exports={version:"3.14.2"}}},__webpack_module_cache__={};function __webpack_require__(o){var s=__webpack_module_cache__[o];if(s!==void 0)return s.exports;var _=__webpack_module_cache__[o]={id:o,loaded:!1,exports:{}};return __webpack_modules__[o].call(_.exports,_,_.exports,__webpack_require__),_.loaded=!0,_.exports}__webpack_require__.n=o=>{var s=o&&o.__esModule?()=>o.default:()=>o;return __webpack_require__.d(s,{a:s}),s},__webpack_require__.d=(o,s)=>{for(var _ in s)__webpack_require__.o(s,_)&&!__webpack_require__.o(o,_)&&Object.defineProperty(o,_,{enumerable:!0,get:s[_]})},__webpack_require__.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),__webpack_require__.o=(o,s)=>Object.prototype.hasOwnProperty.call(o,s),__webpack_require__.r=o=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})},__webpack_require__.nmd=o=>(o.paths=[],o.children||(o.children=[]),o);var __webpack_exports__={};return(()=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{AuthClient:()=>_,Credentials:()=>It,RtcClient:()=>Vs,RtcClientV1:()=>Ns,RtcSignalingClient:()=>un,SignalingPromiseClient:()=>tn.SignalingPromiseClient,createRtcStreamMessage:()=>Bo});var o=__webpack_require__(6331),s=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class _ extends o.S{adminSignup(bt,_t){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/admin-signup",{token:_t,method:"POST",body:bt})})}login(bt){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/login",{method:"POST",body:bt,allowUnsafeRetries:!0})})}loginWithGoogleToken(bt){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/login-google",{method:"POST",body:bt,allowUnsafeRetries:!0})})}refresh(bt,_t){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/refresh",{method:"POST",body:{refreshToken:bt,tokenExpirationSeconds:_t},allowUnsafeRetries:!0})})}respondToNewPasswordRequiredChallenge(bt){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/respond-to-new-password-required-challenge",{method:"POST",body:bt})})}forgotPassword(bt){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/forgot-password",{method:"POST",body:{email:bt}})})}confirmForgotPassword(bt){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/confirm-forgot-password",{method:"POST",body:bt})})}resendInvitation(bt){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/resend-invitation",{method:"POST",body:{email:bt}})})}changePassword(bt){return s(this,arguments,void 0,function*({token:_t,refreshToken:Lt,currentPassword:nn,newPassword:dn}){return yield this.fetch("auth/change-password",{token:_t,method:"POST",body:{refreshToken:Lt,currentPassword:nn,newPassword:dn}})})}getDeviceCredentials(bt){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/device-credentials",{token:bt,method:"POST",allowUnsafeRetries:!0})})}impersonate(bt,_t){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/impersonate",{token:bt,method:"POST",allowUnsafeRetries:!0,body:{userId:_t}})})}createServiceAccount(bt,_t,Lt,nn,dn){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/service-account",{token:bt,method:"POST",allowUnsafeRetries:!0,body:{name:_t,roleId:Lt,tags:nn,description:dn}})})}getFeatures(bt){return s(this,void 0,void 0,function*(){return(yield this.fetch("auth/features",{token:bt})).features})}checkSso(bt,_t){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/check-sso",{method:"POST",body:{email:bt,allowUserAutoCreation:_t}})})}loginWithSso(bt,_t){return s(this,void 0,void 0,function*(){return yield this.fetch("auth/login-sso",{method:"POST",body:{token:bt,refreshToken:_t}})})}}var j=__webpack_require__(3778),$=__webpack_require__(7221),_e=__webpack_require__(6075),et=__webpack_require__.n(_e);const tt=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,nt=typeof AbortController=="function"?AbortController:class{constructor(){this.signal=new st}abort(bn=new Error("This operation was aborted")){this.signal.reason=this.signal.reason||bn,this.signal.aborted=!0,this.signal.dispatchEvent({type:"abort",target:this.signal})}},rt=typeof AbortSignal=="function",it=typeof nt.AbortSignal=="function",st=rt?AbortSignal:it?nt.AbortController:class{constructor(){this.reason=void 0,this.aborted=!1,this._listeners=[]}dispatchEvent(bn){bn.type==="abort"&&(this.aborted=!0,this.onabort(bn),this._listeners.forEach(bt=>bt(bn),this))}onabort(){}addEventListener(bn,bt){bn==="abort"&&this._listeners.push(bt)}removeEventListener(bn,bt){bn==="abort"&&(this._listeners=this._listeners.filter(_t=>_t!==bt))}},ut=new Set,Ft=(bn,bt)=>{const _t="LRU_CACHE_OPTION_"+bn;Ut(_t)&&ht(_t,bn+" option","options."+bt,Nt)},dt=(bn,bt)=>{const _t="LRU_CACHE_METHOD_"+bn;if(Ut(_t)){const{prototype:Lt}=Nt,{get:nn}=Object.getOwnPropertyDescriptor(Lt,bn);ht(_t,bn+" method",`cache.${bt}()`,nn)}},gt=(...bn)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...bn):console.error(...bn)},Ut=bn=>!ut.has(bn),ht=(bn,bt,_t,Lt)=>{ut.add(bn),gt(`The ${bt} is deprecated. Please use ${_t} instead.`,"DeprecationWarning",bn,Lt)},ft=bn=>bn&&bn===Math.floor(bn)&&bn>0&&isFinite(bn),pt=bn=>ft(bn)?bn<=Math.pow(2,8)?Uint8Array:bn<=Math.pow(2,16)?Uint16Array:bn<=Math.pow(2,32)?Uint32Array:bn<=Number.MAX_SAFE_INTEGER?Rt:null:null;class Rt extends Array{constructor(bt){super(bt),this.fill(0)}}class Qt{constructor(bt){if(bt===0)return[];const _t=pt(bt);this.heap=new _t(bt),this.length=0}push(bt){this.heap[this.length++]=bt}pop(){return this.heap[--this.length]}}class Nt{constructor(bt={}){const{max:_t=0,ttl:Lt,ttlResolution:nn=1,ttlAutopurge:dn,updateAgeOnGet:pn,updateAgeOnHas:Tn,allowStale:vn,dispose:Rn,disposeAfter:Fn,noDisposeOnSet:Zn,noUpdateTTL:zn,maxSize:sr=0,maxEntrySize:fr=0,sizeCalculation:jr,fetchMethod:Br,fetchContext:Yr,noDeleteOnFetchRejection:Wr,noDeleteOnStaleGet:ar,allowStaleOnFetchRejection:cr,allowStaleOnFetchAbort:Dr,ignoreFetchAbort:Ar}=bt,{length:Or,maxAge:Vr,stale:Cr}=bt instanceof Nt?{}:bt;if(_t!==0&&!ft(_t))throw new TypeError("max option must be a nonnegative integer");const so=_t?pt(_t):Array;if(!so)throw new Error("invalid max value: "+_t);if(this.max=_t,this.maxSize=sr,this.maxEntrySize=fr||this.maxSize,this.sizeCalculation=jr||Or,this.sizeCalculation){if(!this.maxSize&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(this.fetchMethod=Br||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=Yr,!this.fetchMethod&&Yr!==void 0)throw new TypeError("cannot set fetchContext without fetchMethod");if(this.keyMap=new Map,this.keyList=new Array(_t).fill(null),this.valList=new Array(_t).fill(null),this.next=new so(_t),this.prev=new so(_t),this.head=0,this.tail=0,this.free=new Qt(_t),this.initialFill=1,this.size=0,typeof Rn=="function"&&(this.dispose=Rn),typeof Fn=="function"?(this.disposeAfter=Fn,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!Zn,this.noUpdateTTL=!!zn,this.noDeleteOnFetchRejection=!!Wr,this.allowStaleOnFetchRejection=!!cr,this.allowStaleOnFetchAbort=!!Dr,this.ignoreFetchAbort=!!Ar,this.maxEntrySize!==0){if(this.maxSize!==0&&!ft(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!ft(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!vn||!!Cr,this.noDeleteOnStaleGet=!!ar,this.updateAgeOnGet=!!pn,this.updateAgeOnHas=!!Tn,this.ttlResolution=ft(nn)||nn===0?nn:1,this.ttlAutopurge=!!dn,this.ttl=Lt||Vr||0,this.ttl){if(!ft(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.initializeTTLTracking()}if(this.max===0&&this.ttl===0&&this.maxSize===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.max&&!this.maxSize){const Vo="LRU_CACHE_UNBOUNDED";Ut(Vo)&&(ut.add(Vo),gt("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",Vo,Nt))}Cr&&Ft("stale","allowStale"),Vr&&Ft("maxAge","ttl"),Or&&Ft("length","sizeCalculation")}getRemainingTTL(bt){return this.has(bt,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new Rt(this.max),this.starts=new Rt(this.max),this.setItemTTL=(Lt,nn,dn=tt.now())=>{if(this.starts[Lt]=nn!==0?dn:0,this.ttls[Lt]=nn,nn!==0&&this.ttlAutopurge){const pn=setTimeout(()=>{this.isStale(Lt)&&this.delete(this.keyList[Lt])},nn+1);pn.unref&&pn.unref()}},this.updateItemAge=Lt=>{this.starts[Lt]=this.ttls[Lt]!==0?tt.now():0},this.statusTTL=(Lt,nn)=>{Lt&&(Lt.ttl=this.ttls[nn],Lt.start=this.starts[nn],Lt.now=bt||_t(),Lt.remainingTTL=Lt.now+Lt.ttl-Lt.start)};let bt=0;const _t=()=>{const Lt=tt.now();if(this.ttlResolution>0){bt=Lt;const nn=setTimeout(()=>bt=0,this.ttlResolution);nn.unref&&nn.unref()}return Lt};this.getRemainingTTL=Lt=>{const nn=this.keyMap.get(Lt);return nn===void 0?0:this.ttls[nn]===0||this.starts[nn]===0?1/0:this.starts[nn]+this.ttls[nn]-(bt||_t())},this.isStale=Lt=>this.ttls[Lt]!==0&&this.starts[Lt]!==0&&(bt||_t())-this.starts[Lt]>this.ttls[Lt]}updateItemAge(bt){}statusTTL(bt,_t){}setItemTTL(bt,_t,Lt){}isStale(bt){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new Rt(this.max),this.removeItemSize=bt=>{this.calculatedSize-=this.sizes[bt],this.sizes[bt]=0},this.requireSize=(bt,_t,Lt,nn)=>{if(this.isBackgroundFetch(_t))return 0;if(!ft(Lt)){if(!nn)throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");if(typeof nn!="function")throw new TypeError("sizeCalculation must be a function");if(Lt=nn(_t,bt),!ft(Lt))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}return Lt},this.addItemSize=(bt,_t,Lt)=>{if(this.sizes[bt]=_t,this.maxSize){const nn=this.maxSize-this.sizes[bt];for(;this.calculatedSize>nn;)this.evict(!0)}this.calculatedSize+=this.sizes[bt],Lt&&(Lt.entrySize=_t,Lt.totalCalculatedSize=this.calculatedSize)}}removeItemSize(bt){}addItemSize(bt,_t){}requireSize(bt,_t,Lt,nn){if(Lt||nn)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:bt=this.allowStale}={}){if(this.size)for(let _t=this.tail;this.isValidIndex(_t)&&(!bt&&this.isStale(_t)||(yield _t),_t!==this.head);)_t=this.prev[_t]}*rindexes({allowStale:bt=this.allowStale}={}){if(this.size)for(let _t=this.head;this.isValidIndex(_t)&&(!bt&&this.isStale(_t)||(yield _t),_t!==this.tail);)_t=this.next[_t]}isValidIndex(bt){return bt!==void 0&&this.keyMap.get(this.keyList[bt])===bt}*entries(){for(const bt of this.indexes())this.valList[bt]===void 0||this.keyList[bt]===void 0||this.isBackgroundFetch(this.valList[bt])||(yield[this.keyList[bt],this.valList[bt]])}*rentries(){for(const bt of this.rindexes())this.valList[bt]===void 0||this.keyList[bt]===void 0||this.isBackgroundFetch(this.valList[bt])||(yield[this.keyList[bt],this.valList[bt]])}*keys(){for(const bt of this.indexes())this.keyList[bt]===void 0||this.isBackgroundFetch(this.valList[bt])||(yield this.keyList[bt])}*rkeys(){for(const bt of this.rindexes())this.keyList[bt]===void 0||this.isBackgroundFetch(this.valList[bt])||(yield this.keyList[bt])}*values(){for(const bt of this.indexes())this.valList[bt]===void 0||this.isBackgroundFetch(this.valList[bt])||(yield this.valList[bt])}*rvalues(){for(const bt of this.rindexes())this.valList[bt]===void 0||this.isBackgroundFetch(this.valList[bt])||(yield this.valList[bt])}[Symbol.iterator](){return this.entries()}find(bt,_t){for(const Lt of this.indexes()){const nn=this.valList[Lt],dn=this.isBackgroundFetch(nn)?nn.__staleWhileFetching:nn;if(dn!==void 0&&bt(dn,this.keyList[Lt],this))return this.get(this.keyList[Lt],_t)}}forEach(bt,_t=this){for(const Lt of this.indexes()){const nn=this.valList[Lt],dn=this.isBackgroundFetch(nn)?nn.__staleWhileFetching:nn;dn!==void 0&&bt.call(_t,dn,this.keyList[Lt],this)}}rforEach(bt,_t=this){for(const Lt of this.rindexes()){const nn=this.valList[Lt],dn=this.isBackgroundFetch(nn)?nn.__staleWhileFetching:nn;dn!==void 0&&bt.call(_t,dn,this.keyList[Lt],this)}}get prune(){return dt("prune","purgeStale"),this.purgeStale}purgeStale(){let bt=!1;for(const _t of this.rindexes({allowStale:!0}))this.isStale(_t)&&(this.delete(this.keyList[_t]),bt=!0);return bt}dump(){const bt=[];for(const _t of this.indexes({allowStale:!0})){const Lt=this.keyList[_t],nn=this.valList[_t],dn=this.isBackgroundFetch(nn)?nn.__staleWhileFetching:nn;if(dn===void 0)continue;const pn={value:dn};if(this.ttls){pn.ttl=this.ttls[_t];const Tn=tt.now()-this.starts[_t];pn.start=Math.floor(Date.now()-Tn)}this.sizes&&(pn.size=this.sizes[_t]),bt.unshift([Lt,pn])}return bt}load(bt){this.clear();for(const[_t,Lt]of bt){if(Lt.start){const nn=Date.now()-Lt.start;Lt.start=tt.now()-nn}this.set(_t,Lt.value,Lt)}}dispose(bt,_t,Lt){}set(bt,_t,{ttl:Lt=this.ttl,start:nn,noDisposeOnSet:dn=this.noDisposeOnSet,size:pn=0,sizeCalculation:Tn=this.sizeCalculation,noUpdateTTL:vn=this.noUpdateTTL,status:Rn}={}){if(pn=this.requireSize(bt,_t,pn,Tn),this.maxEntrySize&&pn>this.maxEntrySize)return Rn&&(Rn.set="miss",Rn.maxEntrySizeExceeded=!0),this.delete(bt),this;let Fn=this.size===0?void 0:this.keyMap.get(bt);if(Fn===void 0)Fn=this.newIndex(),this.keyList[Fn]=bt,this.valList[Fn]=_t,this.keyMap.set(bt,Fn),this.next[this.tail]=Fn,this.prev[Fn]=this.tail,this.tail=Fn,this.size++,this.addItemSize(Fn,pn,Rn),Rn&&(Rn.set="add"),vn=!1;else{this.moveToTail(Fn);const Zn=this.valList[Fn];if(_t!==Zn){if(this.isBackgroundFetch(Zn)?Zn.__abortController.abort(new Error("replaced")):dn||(this.dispose(Zn,bt,"set"),this.disposeAfter&&this.disposed.push([Zn,bt,"set"])),this.removeItemSize(Fn),this.valList[Fn]=_t,this.addItemSize(Fn,pn,Rn),Rn){Rn.set="replace";const zn=Zn&&this.isBackgroundFetch(Zn)?Zn.__staleWhileFetching:Zn;zn!==void 0&&(Rn.oldValue=zn)}}else Rn&&(Rn.set="update")}if(Lt===0||this.ttl!==0||this.ttls||this.initializeTTLTracking(),vn||this.setItemTTL(Fn,Lt,nn),this.statusTTL(Rn,Fn),this.disposeAfter)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return this}newIndex(){return this.size===0?this.tail:this.size===this.max&&this.max!==0?this.evict(!1):this.free.length!==0?this.free.pop():this.initialFill++}pop(){if(this.size){const bt=this.valList[this.head];return this.evict(!0),bt}}evict(bt){const _t=this.head,Lt=this.keyList[_t],nn=this.valList[_t];return this.isBackgroundFetch(nn)?nn.__abortController.abort(new Error("evicted")):(this.dispose(nn,Lt,"evict"),this.disposeAfter&&this.disposed.push([nn,Lt,"evict"])),this.removeItemSize(_t),bt&&(this.keyList[_t]=null,this.valList[_t]=null,this.free.push(_t)),this.head=this.next[_t],this.keyMap.delete(Lt),this.size--,_t}has(bt,{updateAgeOnHas:_t=this.updateAgeOnHas,status:Lt}={}){const nn=this.keyMap.get(bt);if(nn!==void 0){if(!this.isStale(nn))return _t&&this.updateItemAge(nn),Lt&&(Lt.has="hit"),this.statusTTL(Lt,nn),!0;Lt&&(Lt.has="stale",this.statusTTL(Lt,nn))}else Lt&&(Lt.has="miss");return!1}peek(bt,{allowStale:_t=this.allowStale}={}){const Lt=this.keyMap.get(bt);if(Lt!==void 0&&(_t||!this.isStale(Lt))){const nn=this.valList[Lt];return this.isBackgroundFetch(nn)?nn.__staleWhileFetching:nn}}backgroundFetch(bt,_t,Lt,nn){const dn=_t===void 0?void 0:this.valList[_t];if(this.isBackgroundFetch(dn))return dn;const pn=new nt;Lt.signal&&Lt.signal.addEventListener("abort",()=>pn.abort(Lt.signal.reason));const Tn={signal:pn.signal,options:Lt,context:nn},vn=(Zn,zn=!1)=>{const{aborted:sr}=pn.signal,fr=Lt.ignoreFetchAbort&&Zn!==void 0;return Lt.status&&(sr&&!zn?(Lt.status.fetchAborted=!0,Lt.status.fetchError=pn.signal.reason,fr&&(Lt.status.fetchAbortIgnored=!0)):Lt.status.fetchResolved=!0),!sr||fr||zn?(this.valList[_t]===Fn&&(Zn===void 0?Fn.__staleWhileFetching?this.valList[_t]=Fn.__staleWhileFetching:this.delete(bt):(Lt.status&&(Lt.status.fetchUpdated=!0),this.set(bt,Zn,Tn.options))),Zn):Rn(pn.signal.reason)},Rn=Zn=>{const{aborted:zn}=pn.signal,sr=zn&&Lt.allowStaleOnFetchAbort,fr=sr||Lt.allowStaleOnFetchRejection,jr=fr||Lt.noDeleteOnFetchRejection;if(this.valList[_t]===Fn&&(!jr||Fn.__staleWhileFetching===void 0?this.delete(bt):sr||(this.valList[_t]=Fn.__staleWhileFetching)),fr)return Lt.status&&Fn.__staleWhileFetching!==void 0&&(Lt.status.returnedStale=!0),Fn.__staleWhileFetching;if(Fn.__returned===Fn)throw Zn};Lt.status&&(Lt.status.fetchDispatched=!0);const Fn=new Promise((Zn,zn)=>{this.fetchMethod(bt,dn,Tn).then(sr=>Zn(sr),zn),pn.signal.addEventListener("abort",()=>{Lt.ignoreFetchAbort&&!Lt.allowStaleOnFetchAbort||(Zn(),Lt.allowStaleOnFetchAbort&&(Zn=sr=>vn(sr,!0)))})}).then(vn,Zn=>(Lt.status&&(Lt.status.fetchRejected=!0,Lt.status.fetchError=Zn),Rn(Zn)));return Fn.__abortController=pn,Fn.__staleWhileFetching=dn,Fn.__returned=null,_t===void 0?(this.set(bt,Fn,{...Tn.options,status:void 0}),_t=this.keyMap.get(bt)):this.valList[_t]=Fn,Fn}isBackgroundFetch(bt){return bt&&typeof bt=="object"&&typeof bt.then=="function"&&Object.prototype.hasOwnProperty.call(bt,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(bt,"__returned")&&(bt.__returned===bt||bt.__returned===null)}async fetch(bt,{allowStale:_t=this.allowStale,updateAgeOnGet:Lt=this.updateAgeOnGet,noDeleteOnStaleGet:nn=this.noDeleteOnStaleGet,ttl:dn=this.ttl,noDisposeOnSet:pn=this.noDisposeOnSet,size:Tn=0,sizeCalculation:vn=this.sizeCalculation,noUpdateTTL:Rn=this.noUpdateTTL,noDeleteOnFetchRejection:Fn=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:Zn=this.allowStaleOnFetchRejection,ignoreFetchAbort:zn=this.ignoreFetchAbort,allowStaleOnFetchAbort:sr=this.allowStaleOnFetchAbort,fetchContext:fr=this.fetchContext,forceRefresh:jr=!1,status:Br,signal:Yr}={}){if(!this.fetchMethod)return Br&&(Br.fetch="get"),this.get(bt,{allowStale:_t,updateAgeOnGet:Lt,noDeleteOnStaleGet:nn,status:Br});const Wr={allowStale:_t,updateAgeOnGet:Lt,noDeleteOnStaleGet:nn,ttl:dn,noDisposeOnSet:pn,size:Tn,sizeCalculation:vn,noUpdateTTL:Rn,noDeleteOnFetchRejection:Fn,allowStaleOnFetchRejection:Zn,allowStaleOnFetchAbort:sr,ignoreFetchAbort:zn,status:Br,signal:Yr};let ar=this.keyMap.get(bt);if(ar===void 0){Br&&(Br.fetch="miss");const cr=this.backgroundFetch(bt,ar,Wr,fr);return cr.__returned=cr}{const cr=this.valList[ar];if(this.isBackgroundFetch(cr)){const Cr=_t&&cr.__staleWhileFetching!==void 0;return Br&&(Br.fetch="inflight",Cr&&(Br.returnedStale=!0)),Cr?cr.__staleWhileFetching:cr.__returned=cr}const Dr=this.isStale(ar);if(!jr&&!Dr)return Br&&(Br.fetch="hit"),this.moveToTail(ar),Lt&&this.updateItemAge(ar),this.statusTTL(Br,ar),cr;const Ar=this.backgroundFetch(bt,ar,Wr,fr),Or=Ar.__staleWhileFetching!==void 0,Vr=Or&&_t;return Br&&(Br.fetch=Or&&Dr?"stale":"refresh",Vr&&Dr&&(Br.returnedStale=!0)),Vr?Ar.__staleWhileFetching:Ar.__returned=Ar}}get(bt,{allowStale:_t=this.allowStale,updateAgeOnGet:Lt=this.updateAgeOnGet,noDeleteOnStaleGet:nn=this.noDeleteOnStaleGet,status:dn}={}){const pn=this.keyMap.get(bt);if(pn!==void 0){const Tn=this.valList[pn],vn=this.isBackgroundFetch(Tn);return this.statusTTL(dn,pn),this.isStale(pn)?(dn&&(dn.get="stale"),vn?(dn&&(dn.returnedStale=_t&&Tn.__staleWhileFetching!==void 0),_t?Tn.__staleWhileFetching:void 0):(nn||this.delete(bt),dn&&(dn.returnedStale=_t),_t?Tn:void 0)):(dn&&(dn.get="hit"),vn?Tn.__staleWhileFetching:(this.moveToTail(pn),Lt&&this.updateItemAge(pn),Tn))}dn&&(dn.get="miss")}connect(bt,_t){this.prev[_t]=bt,this.next[bt]=_t}moveToTail(bt){bt!==this.tail&&(bt===this.head?this.head=this.next[bt]:this.connect(this.prev[bt],this.next[bt]),this.connect(this.tail,bt),this.tail=bt)}get del(){return dt("del","delete"),this.delete}delete(bt){let _t=!1;if(this.size!==0){const Lt=this.keyMap.get(bt);if(Lt!==void 0)if(_t=!0,this.size===1)this.clear();else{this.removeItemSize(Lt);const nn=this.valList[Lt];this.isBackgroundFetch(nn)?nn.__abortController.abort(new Error("deleted")):(this.dispose(nn,bt,"delete"),this.disposeAfter&&this.disposed.push([nn,bt,"delete"])),this.keyMap.delete(bt),this.keyList[Lt]=null,this.valList[Lt]=null,Lt===this.tail?this.tail=this.prev[Lt]:Lt===this.head?this.head=this.next[Lt]:(this.next[this.prev[Lt]]=this.next[Lt],this.prev[this.next[Lt]]=this.prev[Lt]),this.size--,this.free.push(Lt)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return _t}clear(){for(const bt of this.rindexes({allowStale:!0})){const _t=this.valList[bt];if(this.isBackgroundFetch(_t))_t.__abortController.abort(new Error("deleted"));else{const Lt=this.keyList[bt];this.dispose(_t,Lt,"delete"),this.disposeAfter&&this.disposed.push([_t,Lt,"delete"])}}if(this.keyMap.clear(),this.valList.fill(null),this.keyList.fill(null),this.ttls&&(this.ttls.fill(0),this.starts.fill(0)),this.sizes&&this.sizes.fill(0),this.head=0,this.tail=0,this.initialFill=1,this.free.length=0,this.calculatedSize=0,this.size=0,this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift())}get reset(){return dt("reset","clear"),this.clear}get length(){return((bt,_t)=>{const Lt="LRU_CACHE_PROPERTY_"+bt;if(Ut(Lt)){const{prototype:nn}=Nt,{get:dn}=Object.getOwnPropertyDescriptor(nn,bt);ht(Lt,bt+" property","cache."+_t,dn)}})("length","size"),this.size}static get AbortController(){return nt}static get AbortSignal(){return st}}const At=Nt;var kt=__webpack_require__(2273),Bt=__webpack_require__(1597),jt=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class vt extends class{constructor(bt,_t){this.type=bt,this.name=_t}}{constructor(bt){super("simple","LogReporter"),this.message=bt}send(bt){return jt(this,void 0,void 0,function*(){var _t,Lt;Bt.vF.debug(this.message,(_t=bt.reduce((nn,dn)=>Object.assign(Object.assign({},nn),{[dn.name]:dn.stat}),{}),Lt=nn=>{const{sum:dn,count:pn}=nn,Tn=dn/pn;return Object.assign(Object.assign({},nn),{average:Tn})},Object.keys(_t).reduce((nn,dn)=>Object.assign(Object.assign({},nn),{[dn]:Lt(_t[dn])}),{})))})}}var mt=__webpack_require__(8758),yt=__webpack_require__.n(mt);const Vt=/^[a-zA-Z0-9-_.,:?'"()@\/#$+ ]{1,255}$/;function wt(bn,bt){return!!bn&&(bt!=null&&bt.allowStar&&bn[0]==="*"?bn==="*":Vt.test(bn))}var Et=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};function Jt({func:bn,delay:bt,immediate:_t=!0}){let Lt=!1,nn=setTimeout(function pn(){return Et(this,void 0,void 0,function*(){if(Lt)return;const Tn=new Date().getTime();try{dn=bn(),yield dn}finally{if(!Lt){const vn=new Date().getTime();nn=setTimeout(pn,Math.max(bt-(vn-Tn),0))}}})},_t?0:bt),dn=Promise.resolve();return{stop(){return Et(this,void 0,void 0,function*(){Lt=!0,clearTimeout(nn),yield dn})},pending(){return Et(this,void 0,void 0,function*(){yield dn})}}}var Pt=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class Yt{constructor(bt){this.buffer={},this.reporters=[],this.flushInterval=Jt({func:()=>this.flushStats(),delay:Yt.samplePeriodMs}),this.tags=this.filterTags((bt==null?void 0:bt.tags)||{app:kt.yA,version:kt.rE,namespace:kt.MF})}shutdown(){return Pt(this,void 0,void 0,function*(){yield this.flushInterval.stop(),yield this.flushStats(),yield(0,$.c)(2*j.p.second)})}aggregate(bt,_t,Lt){this.addToBuffer(this.buffer,this.encodeKey({metric:bt,tags:this.filterTags(Lt||{})}),typeof _t=="number"?{min:_t,max:_t,sum:_t,count:1}:_t)}increment(bt,_t){this.aggregate(bt,1,_t)}timer(bt,_t,Lt){return Pt(this,void 0,void 0,function*(){const nn=yt()(),dn=yield _t(),pn=yt()();return this.aggregate(bt,pn-nn,Lt),dn})}registerStatsReporter(bt){this.reporters.push(bt)}setTag(bt,_t){const Lt=this.filterTags({[bt]:_t});this.tags=Object.assign(Object.assign({},this.tags),Lt)}addToBuffer(bt,_t,Lt){if(bt[_t]){const{min:nn,max:dn,sum:pn,count:Tn}=bt[_t];bt[_t]={min:Math.min(nn,Lt.min),max:Math.max(dn,Lt.max),sum:pn+Lt.sum,count:Tn+Lt.count}}else bt[_t]=Lt}write(bt){return Pt(this,void 0,void 0,function*(){yield Promise.all(this.reporters.map(_t=>Pt(this,void 0,void 0,function*(){let Lt;const nn={};switch(_t.type){case"simple":for(const[pn,Tn]of Object.entries(bt)){const{metric:vn}=this.decodeKey(pn);this.addToBuffer(nn,this.encodeKey({metric:vn}),Tn)}Lt=nn;break;case"tagged":Lt=bt;break;default:(function(pn){throw new Error(`Unreachable type encountered (${pn})`)})(_t.type)}const dn=Object.entries(Lt);if(dn.length>0)return _t.send(dn.map(([pn,Tn])=>{const{metric:vn,tags:Rn}=this.decodeKey(pn);return{name:vn,tags:Object.assign(Object.assign({},Rn),this.tags),stat:Tn}}),Yt.samplePeriodMs).catch(pn=>{Bt.vF.debug("Failed to write stats to "+_t.name,{error:pn})})})))})}flushStats(){return Pt(this,void 0,void 0,function*(){yield this.write(this.buffer),this.buffer={}})}encodeKey(bt){return et()(Object.assign(Object.assign({},bt),Object.keys(bt.tags||{}).length>0?{tags:bt.tags}:{}))}decodeKey(bt){return JSON.parse(bt)}filterTags(bt){return Object.entries(bt||{}).reduce((_t,[Lt,nn])=>(wt(Lt)&&wt(nn)&&(_t[Lt]=nn),_t),{})}}Yt.samplePeriodMs=5*j.p.minute;const Mt=!!kt.op,zt=new Yt;Mt||["local","on-prem"].includes(kt.MF)||zt.registerStatsReporter(new vt("stats"));var qt=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class Xt extends class{constructor(bt){this.options=bt,this.cache=new At(Object.assign(Object.assign(Object.assign({},bt.dispose||bt.disposeAfter?{ttlAutopurge:!0}:{}),bt),{dispose:(..._t)=>{var Lt;_t[2]==="evict"&&zt.increment("lru-eviction",{name:bt.name}),(Lt=bt.dispose)===null||Lt===void 0||Lt.call(bt,..._t)},disposeAfter:(..._t)=>{var Lt;this.updateStats(),(Lt=bt.disposeAfter)===null||Lt===void 0||Lt.call(bt,..._t)}})),this.stringify=bt.fastStringify?JSON.stringify:et()}set(bt,_t,Lt){const nn=this.stringify(bt);if(!this.cache.set(nn,_t,{ttl:Lt})){const dn=this.cache.sizeCalculation?this.cache.sizeCalculation(_t,nn):"unknown";throw Error(`Value too large (${dn} > ${this.cache.max})`)}this.updateStats()}get(bt){const{name:_t}=this.options,Lt=this.stringify(bt),nn=this.cache.getRemainingTTL(Lt);return nn<=0?zt.increment("cache-miss",{name:_t}):nn!==1/0&&zt.aggregate("cache-item-ttl",nn,{name:_t}),this.cache.get(Lt)}delete(bt){this.cache.delete(this.stringify(bt))}peek(bt){return this.cache.peek(this.stringify(bt))}size(){return this.cache.size}clear(){this.cache.clear()}forEach(bt){this.cache.forEach(bt)}purgeStale(){return this.cache.purgeStale()}updateStats(){const{name:bt}=this.options;zt.aggregate("cache-item-count",this.cache.size,{name:bt}),this.cache.calculatedSize!==void 0&&zt.aggregate("cache-length",this.cache.calculatedSize,{name:bt})}}{constructor(bt){if(super(bt),this.expireRejectedPromiseValues=bt.expireRejectedPromiseValues===void 0||bt.expireRejectedPromiseValues,this.rejectedPromiseValueTtl=bt.rejectedPromiseValueTtl!==void 0?bt.rejectedPromiseValueTtl:j.p.second,this.rejectedPromiseValueTtl<0)throw new Error("rejectedPromiseValueTtl must not be negative")}set(bt,_t,Lt){super.set(bt,_t,Lt),this.expireRejectedPromiseValues&&_t.catch(()=>qt(this,void 0,void 0,function*(){yield(0,$.c)(this.rejectedPromiseValueTtl),this.peek(bt)===_t&&this.delete(bt)}))}}var xt=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class It{constructor(bt,_t,Lt){this.authClient=bt,this.email=_t,this.password=Lt,this.tokenTtlMs=1*j.p.hour,this.tokenCache=new Xt({name:"Credentials-tokenCache",max:100,ttl:this.tokenTtlMs-5*j.p.minute,fastStringify:!0})}getToken(){return xt(this,void 0,void 0,function*(){let bt=this.tokenCache.get(this.email);return bt||(bt=(()=>xt(this,void 0,void 0,function*(){const{authentication:_t}=yield this.authClient.login({email:this.email,password:this.password,tokenExpirationSeconds:this.tokenTtlMs/j.p.second});if(!_t)throw new Error("User account not verified.");return _t.accessToken}))(),this.tokenCache.set(this.email,bt)),bt})}}var $t=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class un extends o.S{createPeer(bt,_t){return $t(this,void 0,void 0,function*(){return yield this.fetch("peers",{token:bt,method:"POST",body:_t})})}getPeers(bt){return $t(this,void 0,void 0,function*(){return(yield this.fetch("peers",{token:bt})).items})}refreshPeer(bt,_t){return $t(this,void 0,void 0,function*(){yield this.fetch(`peers/${_t}/refresh`,{token:bt,method:"POST",allowUnsafeRetries:!0})})}createSession(bt,_t){return $t(this,void 0,void 0,function*(){return yield this.fetch("sessions",{token:bt,method:"POST",body:_t})})}refreshSession(bt,_t){return $t(this,void 0,void 0,function*(){yield this.fetch(`sessions/${_t}/refresh`,{token:bt,method:"POST",allowUnsafeRetries:!0})})}deleteSession(bt,_t){return $t(this,void 0,void 0,function*(){yield this.fetch("sessions/"+_t,{token:bt,method:"DELETE",allowUnsafeRetries:!0})})}getSessions(bt){return $t(this,void 0,void 0,function*(){return(yield this.fetch("sessions",{token:bt})).items})}getIceServers(bt){return $t(this,void 0,void 0,function*(){return(yield this.fetch("ice-servers",{token:bt})).items})}addSignals(bt,_t,Lt){return $t(this,void 0,void 0,function*(){yield this.fetch(`sessions/${_t}/add-signals`,{token:bt,method:"POST",body:Lt})})}takeSignals(bt,_t){return $t(this,void 0,void 0,function*(){return(yield this.fetch(`sessions/${_t}/take-signals`,{token:bt,method:"POST"})).items})}}var tn=__webpack_require__(3449),an=__webpack_require__(5949),Kt=__webpack_require__(2964),Un=__webpack_require__(7396),Bn=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class hn extends Un.V{constructor(bt){super(bt)}postLanRtcOffer(bt){return Bn(this,void 0,void 0,function*(){return yield this.fetch("v1/lan-rtc-offer",{method:"POST",body:bt})})}}var En=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};function Cn(bn){return En(this,void 0,void 0,function*(){return(yield Promise.all(bn.map(bt=>bt.catch(_t=>_t)))).filter(bt=>bt instanceof Error)})}function Tt(bn,bt){if(bn===void 0)throw new Error("Value is undefined"+(bt?": "+bt:""))}function Zt(bn,bt){if(bn===null)throw new Error("Value is null"+(bt?": "+bt:""))}function Ot(bn){return Tt(bn),bn}function sn(bn,bt){const _t=bn.reduce((Lt,nn)=>[...Lt,...nn.urls],[]).filter(Lt=>ln(Lt,bt)).sort(Lt=>cn(Lt,"udp")?-1:0).shift();if(_t)return Object.assign(Object.assign({},Ot(bn.find(Lt=>Lt.urls.includes(_t)))),{urls:[_t]})}function ln(bn,bt){switch(bt){case"stun":return/^stuns?:/.test(bn);case"turn":return/^turns?:/.test(bn)}}function cn(bn,bt){return bn.endsWith("transport="+bt)}var fn=__webpack_require__(7207);class _n extends Error{constructor(bt,_t){super(`Deadline expired after ${bt}ms + ${_t}ms`)}}class On{static withDeadline(bt,_t){const Lt=new Promise((nn,dn)=>{setTimeout(()=>{dn(new _n(_t,this.grpcCallDeadlineSlopMs))},_t+this.grpcCallDeadlineSlopMs)});return Promise.race([bt,Lt])}}On.grpcCallDeadlineSlopMs=500*j.p.millisecond;var xn=__webpack_require__(8311);const Ln={ordered:!1,maxPacketLifeTime:300*j.p.millisecond},Pn={ordered:!0},Er={ordered:!0},tr={ordered:!1,maxRetransmits:0},zr={ordered:!1,maxRetransmits:0},xr=bn=>"received"in bn&&bn.received!==void 0,Kr=bn=>!("received"in bn)||bn.received===void 0,Gr=2*j.p.second,Lo=10*j.p.second;function oo(bn,bt={}){const _t=Array.from(bn.values()),Lt=_t.filter(xr),nn=Lt.length>0,dn=Math.max(..._t.map(Fn=>Fn.sent)),pn=Math.max(...Lt.map(Fn=>Fn.received));let Tn;if(nn){const Fn=Date.now()-dn<=j.p.millisecond?_t.length-1:_t.length,Zn=Lt.length>Fn?Fn:Lt.length,zn=Lt.map(ar=>ar.received-ar.sent),{standardDeviation:sr,mean:fr,jitter:jr}=function(ar){const cr=ar.length;if(cr===0)return{mean:NaN,standardDeviation:-1,jitter:NaN};const Dr=ar.reduce((Vr,Cr)=>Vr+Cr,0)/cr,Ar=Math.sqrt(ar.map(Vr=>Math.pow(Vr-Dr,2)).reduce((Vr,Cr)=>Vr+Cr)/cr);if(cr===1)return{mean:Dr,standardDeviation:Ar,jitter:NaN};let Or=0;for(let Vr=1;Vrar.sent{const[Zn,zn]=Fn;zn.sent{var dn,pn;return{streamId:nn,sentCount:(dn=_t.get(nn))!==null&&dn!==void 0?dn:0,receivedCount:(pn=Lt.get(nn))!==null&&pn!==void 0?pn:0}}),timestamp:bt}}incrementLocalSent(bt){const{localSent:_t}=this.counts,Lt=eo(bt.header.stream);_t.set(Lt,(_t.get(Lt)||0)+1)}incrementLocalReceived(bt){const{localReceived:_t}=this.counts,Lt=eo(bt.header.stream),nn=_t.get(Lt)||0;if(nn===0){const{streamName:dn,streamType:pn}=bt.header.stream;Bt.vF.debug("RTC client received first message for stream",{streamName:dn,streamType:pn})}_t.set(Lt,nn+1)}uploadMetrics(){return Uo(this,void 0,void 0,function*(){const{sessionId:bt}=this,_t=yield this.connection.peerConnection.getStats(),Lt={};_t.forEach(Rn=>Lt[Rn.id]=Rn),Bt.vF.debug("rtc-stats",Object.assign(Object.assign({},Lt),{sessionId:bt}));const{localSent:nn,localReceived:dn,remoteSent:pn,remoteReceived:Tn}=this.counts,vn=[...new Set([...nn.keys(),...dn.keys()])].reduce((Rn,Fn)=>{const Zn=nn.get(Fn),zn=dn.get(Fn),sr=pn.get(Fn),fr=Tn.get(Fn);return Object.assign(Object.assign({},Rn),{[`local-${Fn}-sent`]:Zn,[`local-${Fn}-received`]:zn,[`remote-${Fn}-sent`]:sr,[`remote-${Fn}-received`]:fr})},{sessionId:bt});Bt.vF.debug("rtc-message-report",Object.assign({deviceId:this.connection.getRemoteDeviceId()},vn))})}}var _o=__webpack_require__(7186);function Po(bn){if(bn.byteLength<4)return!1;const bt=new Uint8Array(bn);return bt[0]===72&&bt[1]===50&&bt[2]===54&&bt[3]===52}function Ko(bn){if(bn.byteLength<4)return!1;const bt=new Uint8Array(bn);return bt[0]===66&&bt[1]===67&&bt[2]===72&&bt[3]===75}function Eo(bn){if(!Po(bn))throw new Error("Data is not a binary H264 message");const bt=new DataView(bn),_t=Number(bt.getBigUint64(4,!1)),Lt=bt.getUint16(12,!1),nn=new Uint8Array(bn,14,Lt),dn=14+Lt;return{communicationType:"binary-h264",timestamp:_t,streamName:new TextDecoder().decode(nn),frame:function(pn){const Tn=new _o.BinaryReader(new Uint8Array(pn));let vn=0,Rn=0,Fn="";try{for(;Tn.nextField()&&!Tn.isEndGroup();)switch(Tn.getFieldNumber()){case 1:vn=Tn.readInt32();break;case 2:Rn=Tn.readInt32();break;case 3:{const Zn=Tn.readBytes();Fn=btoa(String.fromCharCode(...Zn));break}default:Tn.skipField()}return{index:vn,flags:Rn,frame_data:Fn}}catch(Zn){throw new Error("Failed to decode H264VideoFrame: "+Zn)}}(bn.slice(dn))}}function Bo(bn,bt,_t){return{header:{stream:bn,created:Date.now(),frameId:_t||""},payload:bt}}function Co(bn){const bt=bn.localCandidate.candidateType,_t=bn.remoteCandidate.candidateType;return bt==="host"&&_t==="host"?"local":bt==="relay"||_t==="relay"?"TURN":"STUN"}function In(bn){return new Set(["disconnected","failed","closed"]).has(bn.iceConnectionState)}function wr(bn){switch(bn.header.stream.streamType){case"twist":{const{twist:bt}=bn.payload;if(!bt)throw Error("twist not in payload of RTC message with type twist");return{header:bn.header,payload:{twist:{linear:Object.assign({x:0,y:0,z:0},bt.linear),angular:Object.assign({x:0,y:0,z:0},bt.angular)}}}}case"pose":{const{pose:bt}=bn.payload;if(!bt)throw Error("pose not in payload of RTC message with type pose");return{header:bn.header,payload:{pose:{translation:Object.assign({x:0,y:0,z:0},bt.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},bt.rotation)}}}}case"pose-with-covariance":{const{poseWithCovariance:bt}=bn.payload;if(!bt)throw Error("poseWithCovariance not in payload of RTC message with type pose-with-covariance");const _t=new Array(36).fill(0);return bt.covariance.forEach((Lt,nn)=>{if(nn>=36)throw Error("covariance contains more than 36 elements");_t[nn]=Lt}),{header:bn.header,payload:{poseWithCovariance:{pose:{translation:Object.assign({x:0,y:0,z:0},bt.pose.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},bt.pose.rotation)},covariance:_t}}}}case"point":{const{point:bt}=bn.payload;if(!bt)throw Error("point not in payload of RTC message with type point");return{header:bn.header,payload:{point:Object.assign({x:0,y:0,z:0},bt)}}}default:return bn}}var Zr=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class io{get peerConnection(){return Zt(this._peerConnection,"RTCPeerConnection is closed!"),this._peerConnection}constructor(bt,_t,Lt,nn){this.iceServers=_t,this.config=Lt,this.dataChannelNotifier=nn,this.connectTimeoutMs=20*j.p.second,this.iceGatheringTimeoutMs=3*j.p.second,this.pingUpdateTimeoutMs=1*j.p.second,this.pingV2UpdateTimeoutMs=250*j.p.millisecond,this.pingV2MetricsGatherTimeoutMs=1*j.p.second,this.streamsInfoUpdateTimeoutMs=2*j.p.second,this.reassemblyTimeoutMs=500*j.p.millisecond,this.reassemblyTableCleanupMs=1*j.p.second,this.heartbeatTimeoutMs=20*j.p.millisecond,this._peerConnection=null,this.heartbeatChannel=null,this.latestTtlStreamChannel=null,this.reliableStreamChannel=null,this.latestReliableStreamChannel=null,this.latestTryOnceStreamChannel=null,this.streamLatestTimestamp=new Map,this.reassemblyTable=new Map,this.reassemblyTableLastTimestamp=new Map,this.binaryReassemblyTable=new Map,this.binaryReassemblyTableLastTimestamp=new Map,this.closeCalled=!1,this.gotOffer=!1,this.hasIceCandidate=!1,this.pingV2Map=new Map,this.sendPingV2=()=>{const{latestTryOnceStreamChannel:pn}=this;if(!pn)return;const Tn=new Date().getTime(),vn=(0,Kt.A)();this.sendSystemMessage(pn,{type:"ping-v2",payload:{timestamp:Tn,id:vn}}),this.pingV2Map.set(vn,{sent:Tn})},this.gatherPingV2Metrics=()=>{const pn=oo(this.pingV2Map);if(pn){const Tn=this.getRemoteDeviceId();this.pingInfo=pn,zt.aggregate("rtc-ping-average",pn.average,Object.assign({},Tn?{deviceId:Tn}:{})),zt.aggregate("rtc-ping-loss",pn.loss,Object.assign({},Tn?{deviceId:Tn}:{})),zt.aggregate("rtc-jitter",pn.jitter,Object.assign({},Tn?{deviceId:Tn}:{}))}},this._peerConnection=bt;const{isOffer:dn}=Lt.baseConfig;dn?this.initializeChannels(bt):bt.ondatachannel=pn=>{switch(pn.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=pn.channel;break;case"stream.reliable":this.reliableStreamChannel=pn.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=pn.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=pn.channel;break;case"heartbeat":return void(this.heartbeatChannel=pn.channel);default:return void this.dataChannelNotifier(pn.channel)}this.setupChannel(pn.channel)},this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:pn}=this;pn&&this.sendSystemMessage(pn,{type:"ping"})},this.pingUpdateTimeoutMs),this.pingV2UpdateTimeout=setInterval(this.sendPingV2,this.pingV2UpdateTimeoutMs),this.pingV2MetricsGatherTimeout=setInterval(this.gatherPingV2Metrics,this.pingV2MetricsGatherTimeoutMs),this.streamsInfoUpdateTimeout=setInterval(()=>{const{latestTtlStreamChannel:pn}=this;pn&&this.sendSystemMessage(pn,{type:"streams-info"})},this.streamsInfoUpdateTimeoutMs),this.reassemblyTableCleanupTimeout=setInterval(()=>{const pn=new Date().getTime();this.reassemblyTableLastTimestamp.forEach((Tn,vn,Rn)=>{pn>vn+this.reassemblyTimeoutMs&&this.reassemblyTable.delete(Tn)})},this.reassemblyTableCleanupMs),this.heartbeatTimeout=setInterval(()=>{const{heartbeatChannel:pn}=this;if(!pn||pn.readyState!=="open")return;const Tn=new Uint8Array([1]);pn.send(Tn.buffer)},this.heartbeatTimeoutMs)}handleSignal(bt){return Zr(this,void 0,void 0,function*(){const{peerConnection:_t}=this,{track:Lt}=this.config.baseConfig,nn=(()=>{try{return JSON.parse(bt.getPayload())}catch{return}})();if(!nn)return void Bt.vF.error("Received unparseable signal.");Bt.vF.debug("Handling signal",{description:nn});const{sdp:dn,type:pn}=nn;if(!dn||!pn)return void Bt.vF.warn("Received non-SDP signal");const{signalingState:Tn,connectionState:vn}=_t;if(Tn!=="stable"||vn!=="connected")if(_t.remoteDescription)Bt.vF.warn("Received SDP after remote description was set: "+dn);else{if(pn==="offer"){if(Tn!=="stable")return void Bt.vF.warn("Received offer SDP when signaling is ongoing.");yield _t.setRemoteDescription(nn);const Rn=yield _t.createAnswer();yield _t.setLocalDescription(Rn);const Fn=bt.clone();return Lt==null||Lt("Answer Received",Fn),Fn.setPayload(JSON.stringify(Rn)),Fn.setReceiverId(bt.getSenderId()),Fn.setSenderId(bt.getReceiverId()),Fn}if(pn==="answer"){if(Tn==="stable")return void Bt.vF.warn("Received answer SDP when signaling hasn't started.");yield _t.setRemoteDescription(nn)}}else Bt.vF.warn("Received SDP when already connected: "+dn)})}send(bt,_t){const Lt=this.getChannelFromLabel(_t.channelLabel);Lt?this.sendOnChannel(Lt,bt):Bt.vF.warn("Send called with unexpected channel label",{channelLabel:_t.channelLabel})}controlRemoteStream(bt){var _t;this.sendSystemMessage((Zt(_t=this.reliableStreamChannel),_t),{type:"stream-control",streamControl:bt})}isActive(){return new Set(["new","checking","connected","completed"]).has(this.peerConnection.iceConnectionState)||this.isReady()}isReady(){const{reliableStreamChannel:bt,latestTtlStreamChannel:_t,latestTryOnceStreamChannel:Lt,latestReliableStreamChannel:nn}=this;return(bt==null?void 0:bt.readyState)==="open"&&(_t==null?void 0:_t.readyState)==="open"&&(Lt==null?void 0:Lt.readyState)==="open"&&(nn==null?void 0:nn.readyState)==="open"}close(){return Zr(this,void 0,void 0,function*(){var bt,_t,Lt,nn,dn,pn,Tn;this.closeCalled||(this.closeCalled=!0,yield(bt=this.sessionMetrics)===null||bt===void 0?void 0:bt.uploadMetrics(),bo(this.pingUpdateTimeout),bo(this.pingV2UpdateTimeout),bo(this.pingV2MetricsGatherTimeout),bo(this.reassemblyTableCleanupTimeout),bo(this.streamsInfoUpdateTimeout),bo(this.heartbeatTimeout),(_t=this._peerConnection)===null||_t===void 0||_t.close(),(Lt=this.heartbeatChannel)===null||Lt===void 0||Lt.close(),(nn=this.latestReliableStreamChannel)===null||nn===void 0||nn.close(),(dn=this.latestTryOnceStreamChannel)===null||dn===void 0||dn.close(),(pn=this.latestTtlStreamChannel)===null||pn===void 0||pn.close(),(Tn=this.reliableStreamChannel)===null||Tn===void 0||Tn.close(),this._peerConnection=null,this.heartbeatChannel=null,this.latestReliableStreamChannel=null,this.latestTryOnceStreamChannel=null,this.latestTtlStreamChannel=null,this.reliableStreamChannel=null)})}getPing(){return this.pingTimeMs}getPingInfo(){return this.pingInfo}getLastMessageTimestamp(){return this.lastMessageTimestamp}getSessionCreatedTimestamp(){var bt;return(bt=this.config.remoteConfig)===null||bt===void 0?void 0:bt.sessionCreatedTimestamp}setSessionCreatedTimestamp(bt){this.config.remoteConfig&&(this.config.remoteConfig.sessionCreatedTimestamp=bt)}getSessionId(){var bt;return(bt=this.config.remoteConfig)===null||bt===void 0?void 0:bt.sessionId}setSessionId(bt){this.config.remoteConfig&&(this.config.remoteConfig.sessionId=bt,this.sessionMetrics=new Fs(bt,this))}getRemotePeerId(){return this.config.baseConfig.remotePeerId}getRemoteDeviceId(){var bt;return(bt=this.config.baseConfig)===null||bt===void 0?void 0:bt.remoteDeviceId}setRemoteDeviceId(bt){this.config.baseConfig.remoteDeviceId=bt}getSessionMetricsMessageCounts(){var bt;return(bt=this.sessionMetrics)===null||bt===void 0?void 0:bt.counts}getConnectionStatsInfo(){return Zr(this,void 0,void 0,function*(){const{peerConnection:bt}=this;if(!bt)return;const _t=yield bt.getStats(null),Lt=[];_t.forEach(vn=>{Lt.push(vn)});const nn=Lt.find(vn=>vn.type==="transport");if(!nn)return;const dn=Lt.find(vn=>(vn.type==="candidate-pair"||vn.type==="candidatepair")&&vn.id===nn.selectedCandidatePairId);if(!dn)return;const pn=Lt.find(vn=>vn.id===dn.localCandidateId),Tn=Lt.find(vn=>vn.id===dn.remoteCandidateId);return pn&&Tn&&(pn.address=pn.address||pn.ip,Tn.address=Tn.address||Tn.ip,pn.address!==void 0&&Tn.address!==void 0)?{transport:nn,localCandidate:pn,remoteCandidate:Tn,candidatePair:dn}:void 0})}initializeChannels(bt){this.heartbeatChannel=bt.createDataChannel("heartbeat",zr),this.heartbeatChannel.binaryType="arraybuffer",this.latestTtlStreamChannel=bt.createDataChannel("stream.latest-ttl",Ln),this.latestTtlStreamChannel.binaryType="arraybuffer",this.reliableStreamChannel=bt.createDataChannel("stream.reliable",Pn),this.reliableStreamChannel.binaryType="arraybuffer",this.latestReliableStreamChannel=bt.createDataChannel("stream.latest-reliable",Er),this.latestReliableStreamChannel.binaryType="arraybuffer",this.latestTryOnceStreamChannel=bt.createDataChannel("stream.latest-try-once",tr),this.latestTryOnceStreamChannel.binaryType="arraybuffer",this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}getOffer(){return Zr(this,void 0,void 0,function*(){var bt,_t;const{gotOffer:Lt}=this,{peerConnection:nn,config:dn}=this;if(this.config.baseConfig.isLan)throw new Error('"getOffer" method can only be called with internet connections. LAN connections should call the "getLanOffer" method.');const pn=(bt=this.config.remoteConfig)===null||bt===void 0?void 0:bt.sessionId;if(Lt)return void Bt.vF.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,In(this.peerConnection))return void Bt.vF.debug("Failed to generate offer because the peer connection was inactive.");const Tn=dn.baseConfig.track;nn.onicecandidate=()=>{this.hasIceCandidate=!0},nn.oniceconnectionstatechange=()=>Zr(this,void 0,void 0,function*(){const sr=nn.iceConnectionState;if(sr==="connected"||sr==="completed"){const fr=yield this.getConnectionStatsInfo(),jr=fr?Co(fr):void 0;Bt.vF.info("ICE connection state changed to "+sr,{sessionId:pn,connectionStatsInfo:fr,iceMode:jr}),Tn==null||Tn("ICE connection state change",{iceConnectionState:sr,sessionId:pn,connectionStatsInfo:fr,iceMode:jr})}}),yield nn.setLocalDescription(yield nn.createOffer());const vn=nn.getConfiguration?nn.getConfiguration().iceTransportPolicy:"all",Rn=new Date().getTime();for(;;){const sr=new Date().getTime()-Rn;if(sr>this.connectTimeoutMs)return void Bt.vF.debug("Failed to generate offer because ICE gathering timed out.");if(sr>this.iceGatheringTimeoutMs&&this.hasIceCandidate){Bt.vF.debug("ICE gathering partially completed; proceeding",{iceTransportPolicy:vn,waitTime:sr}),Tn==null||Tn("ICE gathering partially completed",{sessionId:pn,iceTransportPolicy:vn,waitTime:sr});break}if(nn.iceGatheringState==="complete"){Bt.vF.debug("ICE gathering complete",{iceTransportPolicy:vn,waitTime:sr}),Tn==null||Tn("ICE gathering completed",{sessionId:pn,iceTransportPolicy:vn,waitTime:sr});break}yield(0,$.c)(.1*j.p.second)}const Fn=(_t=this.iceServers)!==null&&_t!==void 0?_t:[];for(const sr of Fn)"credentialType"in sr&&(sr.credentialType=void 0);const Zn=JSON.stringify(Fn),zn=new tn.Signal;return zn.setPayload(JSON.stringify(nn.localDescription)),zn.setSenderId(this.config.baseConfig.localPeerId),zn.setReceiverId(this.config.baseConfig.remotePeerId),zn.setIceServers(Zn),zn.setIceTransportPolicy(vn??"all"),this.config.baseConfig.sessionType!==void 0?zn.setSessionType(this.config.baseConfig.sessionType):zn.setSessionType(tn.SessionType.TELEOP),Bt.vF.debug("Sending offer signal with description",{description:zn.getPayload()}),zn})}getLanOffer(){return Zr(this,void 0,void 0,function*(){const{peerConnection:bt,gotOffer:_t}=this;if(!this.config.baseConfig.isLan)throw new Error('"getLanOffer" method can only be used with LAN connections. Internet connections should call the "getOffer" method.');if(_t)return void Bt.vF.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,In(this.peerConnection))return void Bt.vF.debug("Failed to generate offer because the peer connection was inactive.");yield bt.setLocalDescription(yield bt.createOffer());const Lt=new Date().getTime();for(;;){if(new Date().getTime()-Lt>this.iceGatheringTimeoutMs)return void Bt.vF.debug("Failed to generate offer because ICE gathering timed out.");if(bt.iceGatheringState==="complete")break;yield(0,$.c)(.1*j.p.second)}const nn=bt.localDescription;if(nn)return Bt.vF.debug("Sending LAN offer signal with description",{description:nn}),nn;Bt.vF.error("Failed to generate LAN offer description")})}handleLanAnswer(bt){return Zr(this,void 0,void 0,function*(){const{peerConnection:_t}=this;if(!this.config.baseConfig.isLan)throw new Error('"handleLanAnswer" method can only be used with LAN connections. Internet connections should call the "handleSignal" method.');yield _t.setRemoteDescription(bt)})}getChannelFromLabel(bt){switch(bt){case"stream.latest-ttl":return this.latestTtlStreamChannel;case"stream.reliable":return this.reliableStreamChannel;case"stream.latest-reliable":return this.latestReliableStreamChannel;case"stream.latest-try-once":return this.latestTryOnceStreamChannel}}sendOnChannel(bt,_t){var Lt;let nn;try{nn=(0,xn.encode)(JSON.stringify(_t))}catch(dn){return void Bt.vF.warn("Failed to encode RTC message",{error:dn})}try{const dn=new Uint8Array(nn);bt.send(dn.buffer),(Lt=this.sessionMetrics)===null||Lt===void 0||Lt.incrementLocalSent(_t)}catch(dn){Bt.vF.warn("Failed to send message to channel",{error:dn,channel:bt.label})}}channelNotRecognized(bt){return bt!==this.latestTtlStreamChannel&&bt!==this.latestReliableStreamChannel&&bt!==this.latestTryOnceStreamChannel&&bt!==this.reliableStreamChannel}setupChannel(bt){bt.onmessage=_t=>{var Lt,nn,dn,pn;if(this.channelNotRecognized(bt))return void Bt.vF.warn("Received message on unrecognized data channel.");let Tn;if(_t.data instanceof ArrayBuffer)try{if(Po(_t.data)){const Rn=Eo(_t.data);return void this.receiveBinaryH264Message(bt,Rn)}if(Ko(_t.data)){const Rn=function(Fn){if(!Ko(Fn))throw new Error("Data is not a binary chunk message");const Zn=new DataView(Fn);return{communicationType:"binary-chunk",chunkId:Zn.getUint32(4,!1),sequence:Zn.getUint32(8,!1),total:Zn.getUint32(12,!1),data:new Uint8Array(Fn.slice(16))}}(_t.data);return void this.receiveBinaryChunkMessage(bt,Rn)}const vn=(0,xn.decode)(new Uint8Array(_t.data));Tn=JSON.parse(vn)}catch(vn){return void Bt.vF.warn("Received unparseable binary message on RTC stream data channel",{error:vn,channel:bt.label})}else try{const vn=typeof _t.data=="string"?_t.data:(0,xn.decode)(_t.data instanceof ArrayBuffer?new Uint8Array(_t.data):_t.data);Tn=JSON.parse(vn)}catch(vn){return void Bt.vF.warn("Received unparseable JSON message on RTC stream data channel",{error:vn,channel:bt.label})}if(Tn.communicationType==="message-chunk")this.receiveChannelMessageChunk(bt,Tn);else{const vn=Tn;if(!((Lt=vn.payload)===null||Lt===void 0)&&Lt.h264VideoFrame){const Rn={communicationType:"binary-h264",timestamp:((nn=vn.header)===null||nn===void 0?void 0:nn.created)||Date.now(),streamName:((pn=(dn=vn.header)===null||dn===void 0?void 0:dn.stream)===null||pn===void 0?void 0:pn.streamName)||bt.label,frame:vn.payload.h264VideoFrame};this.receiveBinaryH264Message(bt,Rn)}else this.receiveChannelMessage(bt,vn)}},bt.onerror=_t=>{Bt.vF.warn("Channel error: "+_t.error,{error:_t.error,sessionId:this.getSessionId(),channelLabel:bt.label})},bt.onopen=()=>{Bt.vF.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:bt.label})},bt.onclose=()=>{const _t={bufferedAmount:bt.bufferedAmount,sessionId:this.getSessionId(),channelLabel:bt.label};this.closeCalled===!1?Bt.vF.debug("Unexpected channel closed",_t):Bt.vF.debug("Channel closed",_t)}}receiveChannelMessage(bt,_t){var Lt;const{config:nn}=this,{remotePeerId:dn}=this.config.baseConfig;this.lastMessageTimestamp=new Date().getTime(),_t=wr(_t),(Lt=this.sessionMetrics)===null||Lt===void 0||Lt.incrementLocalReceived(_t),!this.handleSystemMessage(bt,_t)&&((bt===this.latestTryOnceStreamChannel||bt===this.latestTtlStreamChannel||bt===this.latestReliableStreamChannel)&&!this.isLatestMessage(_t)||nn.baseConfig.receive(dn,_t))}receiveChannelMessageChunk(bt,_t){const Lt=this.reassemblyTable.get(_t.id)||[];if(Lt.push(_t),Lt.length===_t.total){const nn=function(dn){const pn=dn.sort((Tn,vn)=>Tn.seqTn.part).reduce((Tn,vn)=>Tn+vn);try{return JSON.parse(pn)}catch{return void Bt.vF.warn("Could not reassemble RTC message chunks")}}(Lt);return nn&&this.receiveChannelMessage(bt,nn),void this.reassemblyTable.delete(_t.id)}this.reassemblyTable.set(_t.id,Lt),this.reassemblyTableLastTimestamp.set(_t.id,new Date().getTime())}receiveBinaryH264Message(bt,_t){const Lt={communicationType:"message",header:{stream:{entityId:this.config.baseConfig.remotePeerId||"",streamName:_t.streamName,streamType:"h264-video-frame"},created:_t.timestamp,frameId:""},payload:{h264VideoFrame:_t.frame}};this.receiveChannelMessage(bt,Lt)}receiveBinaryChunkMessage(bt,_t){const Lt=_t.chunkId,nn=this.binaryReassemblyTable.get(Lt)||new Map;if(nn.set(_t.sequence,_t.data),nn.size===_t.total){let dn=0;for(const vn of nn.values())dn+=vn.length;const pn=new Uint8Array(dn);let Tn=0;for(let vn=0;vn<_t.total;vn++){const Rn=nn.get(vn);Rn&&(pn.set(Rn,Tn),Tn+=Rn.length)}try{if(Po(pn.buffer)){const vn=Eo(pn.buffer);this.receiveBinaryH264Message(bt,vn)}}catch(vn){Bt.vF.warn("Failed to parse reassembled binary message",{error:vn,chunkId:Lt,channel:bt.label})}return this.binaryReassemblyTable.delete(Lt),void this.binaryReassemblyTableLastTimestamp.delete(Lt)}this.binaryReassemblyTable.set(Lt,nn),this.binaryReassemblyTableLastTimestamp.set(Lt,new Date().getTime())}handleSystemMessage(bt,_t){var Lt,nn;const{config:dn}=this,{baseConfig:pn}=dn,{remotePeerId:Tn,remoteDeviceId:vn}=pn;switch(_t.header.stream.streamType){case"ping":return this.sendSystemMessage(bt,{type:"pong",timestamp:Ot(_t.payload.ping)}),!0;case"pong":{const Rn=new Date().getTime()-Ot(_t.payload.pong);return this.pingTimeMs=Rn,zt.aggregate("rtc-ping-time",Rn,Object.assign({},vn?{deviceId:vn}:{})),!0}case"ping-v2":return this.sendPingV2(),!0;case"pong-v2":{const Rn=Ot(_t.payload.pongV2),Fn=this.pingV2Map.get(Rn.id);return(Fn==null?void 0:Fn.sent)!==Rn.timestamp&&Bt.vF.warn("Pong timestamp doesn't match stored value",{currentEntry:Fn,pong:Rn}),this.pingV2Map.set(Rn.id,{sent:Rn.timestamp,received:new Date().getTime()}),!0}case"streams-info":{const{sessionMetrics:Rn}=this,Fn=(Lt=_t.payload.streamsInfo)===null||Lt===void 0?void 0:Lt.timestamp;return!!Fn&&(Rn==null||Rn.updateRemoteMessagesCounts(_t),(nn=pn.onStreamsInfoUpdate)===null||nn===void 0||nn.call(pn,Tn,Fn),!0)}case"stream-control":return!0;default:return!1}}sendSystemMessage(bt,_t){var Lt;const{localUserId:nn,localPeerId:dn}=this.config.baseConfig;if(bt.readyState!=="open")return;const pn={entityId:nn??dn,streamName:"$."+_t.type,streamType:_t.type};let Tn;switch(_t.type){case"ping":Tn={ping:new Date().getTime()};break;case"pong":Tn={pong:_t.timestamp};break;case"ping-v2":Tn={pingV2:_t.payload};break;case"pong-v2":Tn={pongV2:_t.payload};break;case"stream-control":Tn={streamControl:_t.streamControl};break;case"streams-info":Tn={streamsInfo:(Lt=this.sessionMetrics)===null||Lt===void 0?void 0:Lt.getLocalStreamsInfo(new Date().getTime())}}this.sendOnChannel(bt,Bo(pn,Tn))}isLatestMessage(bt){const _t=eo(bt.header.stream),Lt=(this.streamLatestTimestamp.get(_t)||0)<=bt.header.created;return Lt&&this.streamLatestTimestamp.set(_t,bt.header.created),Lt}}function bo(bn){bn&&clearInterval(bn)}function bs(){Bt.vF.debug("forceGarbageCollection() triggered"),queueMicrotask(()=>{let bn=document.createElement("img");bn.src=window.URL.createObjectURL(new Blob([new ArrayBuffer(5e7)])),bn.onerror=function(){window.URL.revokeObjectURL(this.src),bn=null}})}function ts(bn){try{return bn instanceof Error?`${bn.name}: ${bn.message}`:typeof bn=="object"?JSON.stringify(bn):String(bn)}catch{return"Unknown error"}}function js(bn){var bt,_t;return{userId:(bt=bn.getUserId())===null||bt===void 0?void 0:bt.getValue(),deviceId:(_t=bn.getDeviceId())===null||_t===void 0?void 0:_t.getValue(),organizationId:bn.getOrganizationId(),id:bn.getPeerId(),capabilities:[],capabilitySet:{}}}var Sr=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};const gs=bn=>bn.map(bt=>Object.assign(Object.assign(Object.assign({},bt),bt.username?{username:""}:null),bt.credential?{credential:""}:null));class Vs{constructor(bt){this.config=bt,this.grpcCallDeadline=5*j.p.second,this.refreshIntervalDelayMs=2*j.p.second,this.iceServersTtl=30*j.p.minute,this.connections=[],this.localConnections=[],this.isConnectionInitiator=new WeakSet,this.isOutgoingConnection=new Set,this.peerDataChannelListeners=[],this.rtcInstancesConstructed=0,this.statsLoopsExecuted=0;const{refreshIntervalDelayMs:_t}=this;this.refreshInterval=Jt({func:()=>Sr(this,void 0,void 0,function*(){try{yield this.update()}catch(Lt){Bt.vF.warn("RTC refresh failed",{error:Lt})}}),delay:_t})}send(bt,_t,Lt){const nn=this.getActiveConnection(bt);nn?nn.isReady()?nn.send(_t,Lt):Bt.vF.warn("Send called with unready connection."):Bt.vF.warn("Send called with no connection.")}controlRemoteStream(bt,_t){const Lt=this.getActiveConnection(bt);Lt?Lt.isReady()?Lt.controlRemoteStream(_t):Bt.vF.warn("controlRemoteStream called with unready connection."):Bt.vF.warn("controlRemoteStream called with no connection.")}getLocalPeer(){return Sr(this,void 0,void 0,function*(){for(;!this.localPeer;)yield(0,$.c)(.1*j.p.second);return js(this.localPeer)})}connect(bt,_t){return Sr(this,void 0,void 0,function*(){var Lt,nn,dn;if(this.config.lanOnlyMode===!0)throw new Error("connect method called in local only mode.");const{track:pn,signalingClient:Tn}=this.config,{localPeer:vn,receiveSignalStream:Rn,iceServers:Fn}=this;if(!vn||!Rn||!Fn)return void Bt.vF.warn("Connect called prior to local peer, receiveSignalStream, and ICE servers ready");if(this.getActiveConnection(bt))return void Bt.vF.warn("Connect called for peer with existing connection.");if(this.isOutgoingConnection.has(bt))return void Bt.vF.warn("Connect called for peer with an existing outgoing connection offer.");this.isOutgoingConnection.add(bt);const Zn=function(Wr,ar,cr){const{rtcIceTransportPolicies:Dr,rtcIceServerProtocol:Ar,useAllServers:Or}=ar||{},Vr=Wr.map(Cr=>Object.assign(Object.assign({},Cr),{urls:Cr.urls.filter(so=>{const Vo=(Dr===void 0||Dr.some(wo=>ln(so,wo)))&&(Ar===void 0||cn(so,Ar));return Vo||Bt.vF.debug("Ignoring ICE server: "+so,{organizationId:cr}),Vo})})).filter(({urls:Cr})=>Cr.filter(so=>so).length>0);return Or?Vr:[sn(Vr,"stun"),sn(Vr,"turn")].filter(Cr=>Cr!==void 0).map(Cr=>Ot(Cr))}(Fn,_t);Bt.vF.debug("Received ICE servers:",gs(Fn)),Bt.vF.debug("Using ICE servers:",gs(Zn));const zn=new io(yield this.createRTCPeerConnection(Zn),Zn,{baseConfig:{isOffer:!0,isLan:!1,receive:(Wr,ar)=>this.config.receive(Wr,ar),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Wr,ar)=>{var cr,Dr;return(Dr=(cr=this.config).onStreamsInfoUpdate)===null||Dr===void 0?void 0:Dr.call(cr,Wr,ar)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(Lt=vn.getUserId())===null||Lt===void 0?void 0:Lt.getValue(),localPeerId:vn.getPeerId(),remotePeerId:bt,sessionType:this.config.sessionType},remoteConfig:{}},Wr=>this.onCustomDataChannel(bt,Wr)),sr=yield zn.getOffer();if(!sr)return Bt.vF.error("Failed to generate offer."),void this.isOutgoingConnection.delete(bt);Bt.vF.debug("Sending offer."),pn==null||pn("Sending offer",(0,fn.x)(sr));const fr=new tn.SendSignalRequest;fr.setSignal(sr);const jr=yield(()=>Sr(this,void 0,void 0,function*(){try{return yield On.withDeadline(Tn.sendSignal(fr,yield this.getMetadata()),this.grpcCallDeadline)}catch(Wr){Bt.vF.warn("Error when sending signal",{error:Wr})}}))();if(!this.isOutgoingConnection.has(bt))return void Bt.vF.debug("No offer set after receiving offer signal response.");Bt.vF.debug("Offer sent.");const Br=(nn=jr==null?void 0:jr.getSessionId())===null||nn===void 0?void 0:nn.getValue(),Yr=(dn=jr==null?void 0:jr.getSessionCreatedTimestamp())===null||dn===void 0?void 0:dn.getValue();return Br&&Yr?(zn.setSessionId(Br),zn.setSessionCreatedTimestamp(Yr),this.isOutgoingConnection.delete(bt),this.connections.push(zn),this.isConnectionInitiator.add(zn),this.setupHandlers(zn),Br):(Bt.vF.warn("No session ID or no session created timestamp on send signal response."),void this.isOutgoingConnection.delete(bt))})}connectLan(bt){return Sr(this,void 0,void 0,function*(){var _t,Lt;const nn=new hn(bt),dn=new io(yield this.createRTCPeerConnection([]),[],{baseConfig:{isOffer:!0,isLan:!0,receive:(Rn,Fn)=>this.config.receive(Rn,Fn),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Rn,Fn)=>{var Zn,zn;return(zn=(Zn=this.config).onStreamsInfoUpdate)===null||zn===void 0?void 0:zn.call(Zn,Rn,Fn)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(Lt=(_t=this.localPeer)===null||_t===void 0?void 0:_t.getUserId())===null||Lt===void 0?void 0:Lt.getValue(),localPeerId:"lan_client",remotePeerId:bt}},Rn=>this.onCustomDataChannel(bt,Rn)),pn=yield dn.getLanOffer();if(!pn)return Bt.vF.warn("Could not generate LAN offer"),!1;const Tn=yield nn.postLanRtcOffer({offer:JSON.stringify(pn)}),vn=new RTCSessionDescription(JSON.parse(Tn.answer));return yield dn.handleLanAnswer(vn),this.localConnections.push(dn),this.isConnectionInitiator.add(dn),(0,Kt.A)()})}getConnections(){return[...this.connections,...this.localConnections]}createCustomDataChannel(bt,_t,Lt,nn,dn){const pn=this.getActiveConnection(bt);if(pn&&this.isConnectionInitiator.has(pn)){const vn=pn.peerConnection.createDataChannel("custom."+_t,Lt);return nn&&(vn.binaryType="arraybuffer"),dn(bt,vn),()=>{}}const Tn=(vn,Rn)=>{bt===vn&&Rn.label==="custom."+_t&&dn(bt,Rn)};return this.peerDataChannelListeners.push(Tn),()=>{this.peerDataChannelListeners=this.peerDataChannelListeners.filter(vn=>vn!==Tn)}}onCustomDataChannel(bt,_t){this.peerDataChannelListeners.forEach(Lt=>Lt(bt,_t))}getConnectionStatus(bt){if(this.isOutgoingConnection.has(bt))return"connecting";const _t=this.getActiveConnection(bt);return _t?_t.isReady()?"connected":"connecting":"disconnected"}getConnectionStatsInfo(bt){return Sr(this,void 0,void 0,function*(){const _t=this.getActiveConnection(bt);if(_t)return yield _t.getConnectionStatsInfo()})}disconnect(bt){return Sr(this,void 0,void 0,function*(){const _t=this.getActiveConnection(bt);_t&&(yield _t.close(),this.connections=this.connections.filter(Lt=>Lt!==_t),this.localConnections=this.localConnections.filter(Lt=>Lt!==_t))})}getPeers(){return Sr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:bt}=this.config,_t=yield(()=>Sr(this,void 0,void 0,function*(){try{return yield On.withDeadline(bt.getPeers(new tn.GetPeersRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(dn){Bt.vF.warn("Error when getting peers",{error:dn})}}))();if(!_t)return[];const Lt=_t.getPeersList();if(!Lt)return[];const nn=dn=>{var pn,Tn;return(Tn=(pn=dn.getPeerCreatedTimestamp())===null||pn===void 0?void 0:pn.getValue())!==null&&Tn!==void 0?Tn:0};return Lt.sort((dn,pn)=>nn(pn)-nn(dn)).map(dn=>js(dn))})}getSessions(){return Sr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:bt}=this.config,_t=yield(()=>Sr(this,void 0,void 0,function*(){try{return yield On.withDeadline(bt.getPeers(new tn.GetPeersRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(dn){Bt.vF.warn("Error when getting peers",{error:dn})}}))();if(!_t)return{};const Lt=_t.getPeersList(),nn={};for(const dn of Lt)nn[dn.getPeerId()]=dn.getSessionIdsList();return nn})}getPing(bt){const _t=this.getActiveConnection(bt);if(_t)return _t.getPing();Bt.vF.warn("Attempted to get ping time from inactive peer.")}getPingInfo(bt){const _t=this.getActiveConnection(bt);if(_t)return _t.getPingInfo();Bt.vF.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(bt){const _t=this.getActiveConnection(bt);if(_t)return _t.getLastMessageTimestamp();Bt.vF.warn("Attempted to get last message time from inactive peer.")}getSessionMetricsMessageCounts(bt){const _t=this.getActiveConnection(bt);if(_t)return _t.getSessionMetricsMessageCounts();Bt.vF.warn("Attempted to get session metrics counts from inactive peer.")}isReady(){if(this.config.lanOnlyMode)return!0;const{localPeer:bt,receiveSignalStream:_t,iceServers:Lt}=this;return!!(bt&&_t&&Lt)}shutdown(){return Sr(this,void 0,void 0,function*(){yield this.refreshInterval.stop(),this.receiveSignalStream&&this.receiveSignalStream.cancel();const bt=this.connections;this.connections=[],yield this.closeConnections(bt);const _t=this.localConnections;this.localConnections=[],yield this.closeConnections(_t),this.isOutgoingConnection.clear(),this.peerDataChannelListeners=[];const{localPeer:Lt}=this;if(!Lt||this.config.lanOnlyMode)return;const{signalingClient:nn}=this.config;yield(()=>Sr(this,void 0,void 0,function*(){try{const dn=new tn.DeletePeerRequest;dn.setPeerId(Lt.getPeerId()),yield On.withDeadline(nn.deletePeer(dn,yield this.getMetadata()),this.grpcCallDeadline)}catch(dn){return void Bt.vF.warn("Error deleting local peer",{error:dn})}}))()})}createPeer(){return Sr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createPeer method cannot be used in local-only mode.");const{signalingClient:bt}=this.config,_t=yield(()=>Sr(this,void 0,void 0,function*(){try{return yield On.withDeadline(bt.createPeer(new tn.CreatePeerRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(nn){const dn=nn;Bt.vF.debug("createPeer failed",{error:dn});const pn=ts(dn);throw new Error("Was not able to create peer: "+pn)}}))(),Lt=_t==null?void 0:_t.getPeer();if(!Lt)throw new Error("Response did not provide peer.");return this.localPeer=Lt})}createReceiveSignalStream(){return Sr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createReceiveSignalStream method cannot be used in local-only mode.");const{signalingClient:bt}=this.config,{localPeer:_t,iceServers:Lt}=this;if(!_t||!Lt)return;const{receiveSignalStream:nn}=this;nn&&nn.cancel();const dn=new tn.ReceiveSignalStreamRequest;dn.setPeerId(_t.getPeerId());const pn=yield(()=>Sr(this,void 0,void 0,function*(){try{return bt.receiveSignalStream(dn,yield this.getMetadata({hasDeadline:!1}))}catch(Tn){Bt.vF.debug("createReceiveSignalStream failed",{error:Tn});const vn=ts(Tn);throw new Error("Unable to create receive signal stream: "+vn)}}))();if(!pn)throw new Error("Response did not provide stream.");return pn.on("data",Tn=>Sr(this,void 0,void 0,function*(){var vn,Rn,Fn,Zn;const zn=Tn.getSignal(),sr=(vn=zn==null?void 0:zn.getSessionId())===null||vn===void 0?void 0:vn.getValue(),fr=zn==null?void 0:zn.getSenderId(),jr=zn==null?void 0:zn.getReceiverId(),Br=(Rn=zn==null?void 0:zn.getSessionCreatedTimestamp())===null||Rn===void 0?void 0:Rn.getValue();if(!(zn&&sr&&fr&&jr&&Br))return void Bt.vF.warn("Received signal with missing information.");const Yr=this.getActiveConnection(fr);if(Yr)if(Yr.getSessionId()!==sr){if(Bt.vF.debug("Received signal: different session for a peer we're already connected to."),(Yr.getSessionCreatedTimestamp()||0)>Br)return;const Wr=new io(yield this.createRTCPeerConnection(Lt),Lt,{baseConfig:{isOffer:!1,isLan:!1,receive:(ar,cr)=>this.config.receive(ar,cr),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(ar,cr)=>{var Dr,Ar;return(Ar=(Dr=this.config).onStreamsInfoUpdate)===null||Ar===void 0?void 0:Ar.call(Dr,ar,cr)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:_t.getPeerId(),localUserId:(Zn=_t.getUserId())===null||Zn===void 0?void 0:Zn.getValue(),remotePeerId:fr},remoteConfig:{sessionId:sr,sessionCreatedTimestamp:Br}},ar=>this.onCustomDataChannel(fr,ar));yield Wr.handleSignal(zn),this.connections.push(Wr)}else Bt.vF.debug("Received signal: for an existing connection."),yield Yr.handleSignal(zn);else{Bt.vF.debug("Received signal: new connection.");const Wr=new io(yield this.createRTCPeerConnection(Lt),Lt,{baseConfig:{isOffer:!1,isLan:!1,receive:(ar,cr)=>this.config.receive(ar,cr),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(ar,cr)=>{var Dr,Ar;return(Ar=(Dr=this.config).onStreamsInfoUpdate)===null||Ar===void 0?void 0:Ar.call(Dr,ar,cr)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:_t.getPeerId(),localUserId:(Fn=_t.getUserId())===null||Fn===void 0?void 0:Fn.getValue(),remotePeerId:fr},remoteConfig:{sessionId:sr,sessionCreatedTimestamp:Br}},ar=>this.onCustomDataChannel(fr,ar));yield Wr.handleSignal(zn),this.connections.push(Wr)}})),pn.on("end",()=>{pn.cancel(),this.receiveSignalStream=void 0}),pn.on("error",Tn=>{switch(Tn.code){case an.StatusCode.CANCELLED:case an.StatusCode.UNAVAILABLE:case an.StatusCode.UNKNOWN:Bt.vF.debug("Receive signal stream error",{error:Tn});break;case an.StatusCode.UNAUTHENTICATED:Bt.vF.warn("Receive signal stream error",{error:Tn});break;default:Bt.vF.error("Receive signal stream error",{error:Tn})}pn.cancel(),this.receiveSignalStream=void 0}),this.receiveSignalStream=pn})}createRTCPeerConnection(bt){return Sr(this,void 0,void 0,function*(){var _t;const Lt=(_t=this.config.alternateRTCPeerConnection)!==null&&_t!==void 0?_t:window.RTCPeerConnection;if(!Lt)throw function(){if(typeof navigator>"u")throw new Error("not a browser");const{userAgent:nn}=navigator;return nn.includes("Firefox/")?"Firefox":nn.includes("Edg/")?"Edge":nn.includes("Chrome/")?"Chrome":nn.includes("Safari/")?"Safari":nn.includes("MSIE/")||nn.includes("Trident/")?"IE":"Other"}()!=="Chrome"?new Error("WebRTC is not enabled. Please try again with the latest version of Google Chrome."):new Error("WebRTC is not enabled. Please ensure WebRTC is not disabled by ad blocking software.");this.rtcInstancesConstructed++,this.rtcInstancesConstructed%20||bs();try{return new Lt({iceServers:bt})}catch(nn){throw Bt.vF.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),nn}})}closeConnections(bt){return Sr(this,void 0,void 0,function*(){const _t=yield Cn(bt.map(Lt=>Sr(this,void 0,void 0,function*(){yield Lt.close()})));for(const Lt of _t)Bt.vF.warn("Request to close session failed",{error:Lt})})}getActiveConnection(bt){return this.getConnections().find(_t=>_t.getRemotePeerId()===bt&&_t.isActive())}update(){return Sr(this,void 0,void 0,function*(){var bt;if(this.localConnections=this.localConnections.filter(Zn=>Zn.isActive()),this.config.lanOnlyMode)return;const{signalingClient:_t}=this.config;if(!this.localPeer||!this.receiveSignalStream||!this.iceServers){const Zn=[];return this.localPeer||Zn.push(this.createPeer()),this.iceServers||Zn.push(this.updateIceServers()),yield Promise.all(Zn),void(this.receiveSignalStream||(yield this.createReceiveSignalStream()))}const[Lt,nn]=(dn=this.connections,pn=Zn=>Zn.isActive(),dn.reduce((Zn,zn,sr,fr)=>{const[jr,Br]=Zn;return(pn(zn,sr,fr)?jr:Br).push(zn),Zn},[[],[]]));var dn,pn;yield this.closeConnections(nn),this.connections=Lt,this.gatherConnectionStats().catch(Zn=>{Bt.vF.warn("Error calling gatherConnectionStats",{error:Zn})}),this.statsLoopsExecuted++;const{localPeer:Tn}=this,vn=this.connections.filter(Zn=>Zn.getSessionId).map(Zn=>Ot(Zn.getSessionId()));Tn.setSessionIdsList(vn);const Rn=new tn.RefreshPeerRequest;Rn.setPeer(Tn);try{yield On.withDeadline(_t.refreshPeer(Rn,yield this.getMetadata()),this.grpcCallDeadline)}catch(Zn){Zn instanceof an.RpcError&&Zn.code===an.StatusCode.NOT_FOUND?(Bt.vF.warn("Peer expired, creating new peer",{peerId:Tn.getPeerId()}),yield this.reset()):Bt.vF.warn("Error calling RefreshPeer",{error:Zn})}const Fn=yield this.getPeers();for(const Zn of this.connections)Zn.setRemoteDeviceId((bt=Fn.find(zn=>zn.id===Zn.getRemotePeerId()))===null||bt===void 0?void 0:bt.deviceId)})}gatherConnectionStats(){return Sr(this,void 0,void 0,function*(){if(this.statsLoopsExecuted%10!=0||this.connections.length!==1)return;const bt=yield this.connections[0].getConnectionStatsInfo(),_t=bt?Co(bt):void 0;_t?zt.setTag("rtc-connection-type",_t):zt.setTag("rtc-connection-type","unknown")})}reset(){return Sr(this,void 0,void 0,function*(){yield this.closeConnections(this.connections),this.connections=[],this.isOutgoingConnection.clear(),yield this.createPeer(),yield this.createReceiveSignalStream()})}updateIceServers(){return Sr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)return;const{iceServersLastUpdate:bt,iceServersTtl:_t}=this,Lt=new Date().getTime();if(!bt||Lt-bt>_t)try{const nn=(yield On.withDeadline(this.config.signalingClient.getIceServers(new tn.GetIceServersRequest,yield this.getMetadata()),this.grpcCallDeadline)).getIceServers();this.iceServers=JSON.parse(nn),this.iceServersLastUpdate=Lt}catch(nn){Bt.vF.warn("Error in updateIceServers",{error:nn})}})}setupHandlers(bt){const{peerConnection:_t}=bt,Lt=bt.getSessionCreatedTimestamp();_t.onconnectionstatechange=()=>Sr(this,void 0,void 0,function*(){const nn=_t.connectionState;if(!Lt)return;const dn=bt.getRemoteDeviceId();switch(nn){case"connected":zt.aggregate("rtc-connect-time",new Date().getTime()-Lt,Object.assign({},dn?{deviceId:dn}:{}));break;case"failed":zt.increment("rtc-connect-failed",Object.assign({},dn?{deviceId:dn}:{}))}})}getMetadata(){return Sr(this,arguments,void 0,function*(bt={}){if(this.config.lanOnlyMode)throw new Error("getMetadata method cannot be called in local-only mode");const{getToken:_t}=this.config,{grpcCallDeadline:Lt}=this,{hasDeadline:nn=!0}=bt,dn=nn?{deadline:(Date.now()+Lt).toString(10)}:null;try{const pn=yield _t();return Object.assign({authorization:pn},dn)}catch(pn){throw Bt.vF.error("getToken() failed",{error:pn}),new Error("Cannot get authorization token")}})}}var Fo=__webpack_require__(3721),no=__webpack_require__(7197),Is=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class Ts{constructor(bt,_t){this.sentMessagesCounts=new Map,this.receivedMessagesCounts=new Map,this.sessionId=bt,this.connection=_t}incrementMessageSent(bt){const _t=eo(bt.header.stream);this.sentMessagesCounts.set(_t,(this.sentMessagesCounts.get(_t)||0)+1)}incrementMessageReceived(bt){const _t=eo(bt.header.stream);this.receivedMessagesCounts.set(_t,(this.receivedMessagesCounts.get(_t)||0)+1)}uploadMetrics(){return Is(this,void 0,void 0,function*(){const{sessionId:bt}=this,_t=yield this.connection.peerConnection.getStats(),Lt={};_t.forEach(dn=>Lt[dn.id]=dn),Bt.vF.debug("rtc-stats",Object.assign(Object.assign({},Lt),{sessionId:bt}));const nn=[...new Set(Array.from(this.sentMessagesCounts.keys()).concat(Array.from(this.receivedMessagesCounts.keys())))].reduce((dn,pn)=>{const Tn=this.sentMessagesCounts.get(pn),vn=this.receivedMessagesCounts.get(pn);return Object.assign(Object.assign({},dn),{[pn+"-sent"]:Tn,[pn+"-received"]:vn})},{sessionId:bt});Bt.vF.debug("rtc-message-report",nn)})}}function vs(bn,bt){return eo(bn)===eo(bt)}var lo=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class Js{constructor(bt,_t){this.peerConnection=bt,this.config=_t,this.connectTimeoutMs=10*j.p.second,this.gatherIceTimeoutMs=5*j.p.second,this.pingUpdateTimeoutMs=2*j.p.second,this.streamLatestTimestamp=new Map,this.closeCalled=!1,this.connectCalled=!1,this.sentOffer=!1,this.receivedIceCandidate=!1;const{isOffer:Lt}=_t;Lt?this.initializeChannels(bt):bt.ondatachannel=nn=>{switch(nn.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=nn.channel;break;case"stream.reliable":this.reliableStreamChannel=nn.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=nn.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=nn.channel}this.setupChannel(nn.channel)},this.sessionMetrics=new Ts(this.getSessionId(),this)}connect(){return lo(this,void 0,void 0,function*(){if(this.connectCalled)return;this.connectCalled=!0,this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:nn}=this;nn&&this.sendSystemMessage(nn,{type:"ping"})},this.pingUpdateTimeoutMs),this.connectTimeout=setTimeout(()=>lo(this,void 0,void 0,function*(){this.isReady()||(Bt.vF.warn("RTC connect timed out, closing connection"),yield this.close())}),this.connectTimeoutMs);const{peerConnection:bt,config:{isOffer:_t,sessionId:Lt}}=this;if(_t){const nn=yield bt.createOffer();yield bt.setLocalDescription(nn)}_t&&(this.gatherIceTimeout=setTimeout(()=>lo(this,void 0,void 0,function*(){this.sentOffer||(Bt.vF.warn("ICE gathering timed out"),this.receivedIceCandidate?(Bt.vF.warn("Attempting to connect with partial ICE candidate pool"),yield this.sendOffer()):yield this.close())}),this.gatherIceTimeoutMs),bt.onicecandidate=nn=>lo(this,void 0,void 0,function*(){nn.candidate?this.receivedIceCandidate=!0:yield this.sendOffer()}),bt.onicegatheringstatechange=()=>lo(this,void 0,void 0,function*(){bt.iceGatheringState==="complete"&&(yield this.sendOffer())}),bt.onnegotiationneeded=()=>{Bt.vF.debug("Negotiation needed",{sessionId:Lt})})})}handleSignal(bt){return lo(this,void 0,void 0,function*(){const{peerConnection:_t,config:{sessionId:Lt,sendSignal:nn}}=this,{description:dn}=JSON.parse(bt.payload);if(Bt.vF.debug("Handling signal",{sessionId:Lt,description:JSON.stringify(dn)}),dn)if(_t.signalingState!=="stable"||_t.connectionState!=="connected")if(_t.remoteDescription)Bt.vF.warn("Received SDP signal during negotiation when remote description is already set: "+JSON.stringify(bt));else if(dn.type==="offer"){yield _t.setRemoteDescription(dn);const pn=yield _t.createAnswer();yield _t.setLocalDescription(pn),yield nn({payload:JSON.stringify({description:pn})})}else dn.type==="answer"&&(yield _t.setRemoteDescription(dn));else Bt.vF.warn("Received SDP signal when signaling is stable and connected: "+JSON.stringify(bt));else Bt.vF.warn("Received non-SDP signal: "+JSON.stringify(bt))})}send(bt,_t){const Lt=this.getChannelFromLabel(_t.channelLabel);Lt?this.sendOnChannel(Lt,bt):Bt.vF.warn("Send called with unexpected channel label",{channelLabel:_t.channelLabel})}controlRemoteStream(bt){this.sendSystemMessage(Ot(this.reliableStreamChannel),{type:"stream-control",streamControl:bt})}isActive(){return new Set(["new","connecting","connected"]).has(this.peerConnection.connectionState)}isReady(){const{peerConnection:bt,latestTtlStreamChannel:_t,reliableStreamChannel:Lt,latestTryOnceStreamChannel:nn}=this;return!!(Lt&&_t&&nn)&&bt.connectionState==="connected"&&Lt.readyState==="open"&&_t.readyState==="open"&&nn.readyState==="open"}isClosed(){const{peerConnection:bt,reliableStreamChannel:_t,latestTryOnceStreamChannel:Lt,latestTtlStreamChannel:nn}=this;return!(bt.connectionState!=="closed"||_t!==void 0&&_t.readyState!=="closed"||Lt!==void 0&&Lt.readyState!=="closed"||nn!==void 0&&nn.readyState!=="closed")}needsClosing(){const{peerConnection:bt,latestTtlStreamChannel:_t,reliableStreamChannel:Lt,latestTryOnceStreamChannel:nn}=this;if(this.isClosed())return!1;const dn=new Set(["closing","closed"]),pn=Tn=>Tn&&dn.has(Tn.readyState);return In(bt)||pn(_t)||pn(Lt)||pn(nn)}close(){return lo(this,void 0,void 0,function*(){this.closeCalled||(this.closeCalled=!0,yield this.sessionMetrics.uploadMetrics(),this.pingUpdateTimeout&&clearInterval(this.pingUpdateTimeout),this.connectTimeout&&clearTimeout(this.connectTimeout),this.gatherIceTimeout&&clearTimeout(this.gatherIceTimeout),this.peerConnection.close())})}getPing(){return this.pingTimeMs}getLastMessageTimestamp(){return this.lastMessageTimestamp}getSessionId(){return this.config.sessionId}getRemotePeer(){return this.config.remotePeer}initializeChannels(bt){this.latestTtlStreamChannel=bt.createDataChannel("stream.latest-ttl",Ln),this.reliableStreamChannel=bt.createDataChannel("stream.reliable",Pn),this.latestReliableStreamChannel=bt.createDataChannel("stream.latest-reliable",Er),this.latestTryOnceStreamChannel=bt.createDataChannel("stream.latest-try-once",tr),this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}sendOffer(){return lo(this,void 0,void 0,function*(){if(this.sentOffer||(this.sentOffer=!0,In(this.peerConnection)))return;const{peerConnection:bt,config:{sendSignal:_t}}=this,Lt=yield bt.createOffer();yield bt.setLocalDescription(Lt);const nn={payload:JSON.stringify({description:Lt})};yield _t(nn)})}getChannelFromLabel(bt){switch(bt){case"stream.latest-ttl":return this.latestTtlStreamChannel;case"stream.reliable":return this.reliableStreamChannel;case"stream.latest-reliable":return this.latestReliableStreamChannel;case"stream.latest-try-once":return this.latestTryOnceStreamChannel}}sendOnChannel(bt,_t){let Lt;try{Lt=(0,xn.encode)(JSON.stringify(_t))}catch(nn){return void Bt.vF.warn("Failed to encode RTC message",{error:nn})}try{bt.send(Lt),this.sessionMetrics.incrementMessageSent(_t)}catch(nn){Bt.vF.warn("Failed to send message to channel",{error:nn,channel:bt.label})}}channelNotRecognized(bt){return bt!==this.latestTtlStreamChannel&&bt!==this.latestReliableStreamChannel&&bt!==this.latestTryOnceStreamChannel&&bt!==this.reliableStreamChannel}setupChannel(bt){bt.onmessage=_t=>{if(this.channelNotRecognized(bt))return void Bt.vF.warn("Received message on unrecognized data channel.");let Lt;try{Lt=JSON.parse((0,xn.decode)(_t.data))}catch(nn){return void Bt.vF.warn("Received unparseable RTC message",{error:nn,channel:bt.label})}if(this.lastMessageTimestamp=new Date().getTime(),Lt=wr(Lt),this.sessionMetrics.incrementMessageReceived(Lt),!this.handleSystemMessage(bt,Lt)){if(!this.hasCapabilities(Lt))return void Bt.vF.warn("Received RTC message that was not within the capability scope of the connection.");(bt===this.latestTryOnceStreamChannel||bt===this.latestTtlStreamChannel||bt===this.latestReliableStreamChannel)&&!this.isLatestMessage(Lt)||this.config.receive(this.config.remotePeer.id,Lt)}},bt.onerror=_t=>{Bt.vF.warn("Channel error: "+_t.error,{error:_t.error,sessionId:this.getSessionId(),channelLabel:bt.label})},bt.onopen=()=>{Bt.vF.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:bt.label})},bt.onclose=()=>{const _t={bufferedAmount:bt.bufferedAmount,sessionId:this.getSessionId(),channelLabel:bt.label};this.closeCalled===!1?Bt.vF.debug("Unexpected channel closed",_t):Bt.vF.debug("Channel closed",_t)}}handleSystemMessage(bt,_t){switch(_t.header.stream.streamType){case"ping":return this.sendSystemMessage(bt,{type:"pong",timestamp:Ot(_t.payload.ping)}),!0;case"pong":{const Lt=new Date().getTime()-Ot(_t.payload.pong);return this.pingTimeMs=Lt,zt.aggregate("rtc-ping-time",Lt),!0}case"stream-control":return!0;default:return!1}}sendSystemMessage(bt,_t){if(bt.readyState!=="open")return;const Lt={entityId:Ot(this.config.localPeer.deviceId||this.config.localPeer.userId),streamName:"$."+_t.type,streamType:_t.type};let nn;switch(_t.type){case"ping":nn={ping:new Date().getTime()};break;case"pong":nn={pong:_t.timestamp};break;case"stream-control":nn={streamControl:_t.streamControl}}this.sendOnChannel(bt,Bo(Lt,nn))}hasCapabilities(bt){var _t,Lt;const{localPeer:nn,remotePeer:dn}=this.config,pn=(_t=nn.capabilitySet.streaming)===null||_t===void 0?void 0:_t.streams,Tn=pn&&pn.some(Fn=>Fn.receive&&vs(Fn.stream,bt.header.stream)),vn=(Lt=dn.capabilitySet.streaming)===null||Lt===void 0?void 0:Lt.streams,Rn=vn&&vn.some(Fn=>Fn.send&&vs(Fn.stream,bt.header.stream));return Tn||Rn}isLatestMessage(bt){const _t=eo(bt.header.stream),Lt=(this.streamLatestTimestamp.get(_t)||0)<=bt.header.created;return Lt&&this.streamLatestTimestamp.set(_t,bt.header.created),Lt}}var Nr=function(bn,bt,_t,Lt){return new(_t||(_t=Promise))(function(nn,dn){function pn(Rn){try{vn(Lt.next(Rn))}catch(Fn){dn(Fn)}}function Tn(Rn){try{vn(Lt.throw(Rn))}catch(Fn){dn(Fn)}}function vn(Rn){var Fn;Rn.done?nn(Rn.value):(Fn=Rn.value,Fn instanceof _t?Fn:new _t(function(Zn){Zn(Fn)})).then(pn,Tn)}vn((Lt=Lt.apply(bn,bt||[])).next())})};class Ns{constructor(bt){this.config=bt,this.connections=[],this.connectingSessions=new Map,this.rtcInstancesConstructed=0,this.updateInterval=Jt({func:()=>Nr(this,void 0,void 0,function*(){try{yield this.update()}catch(_t){Bt.vF.warn("RTC update failed",{error:_t})}}),delay:250*j.p.millisecond}),this.localPeer=this.createPeer()}send(bt,_t,Lt){const nn=this.getActiveConnection(bt);nn?nn.isReady()?nn.send(_t,Lt):Bt.vF.warn("Attempted to send with an active connection to that peer which was not yet ready."):Bt.vF.warn("Attempted to send with no active connection to that peer.")}controlRemoteStream(bt,_t){const Lt=this.getActiveConnection(bt);Lt?Lt.isReady()?Lt.controlRemoteStream(_t):Bt.vF.warn("Attempted to control remote stream with an active connection to that peer which was not yet ready."):Bt.vF.warn("Attempted to control remote stream with no active connection to that peer.")}connect(bt){return Nr(this,void 0,void 0,function*(){const _t=yield this.getLocalPeer();if(this.getActiveConnection(bt))return void Bt.vF.warn("Attempted to connect to peer with an already active connection.");let Lt;try{Lt=yield this.config.signalingClient.createSession(yield this.config.getToken(),{offerPeerId:_t.id,answerPeerId:bt})}catch(nn){(0,Fo.e)(nn,no.o,dn=>dn.statusCode===404),Bt.vF.warn("Attempted to connect to peer that does not exist.")}if(Lt)for(this.connectingSessions.set(Lt.id,new Date().getTime()),yield this.connectToSession(Lt);;)switch(yield(0,$.c)(.1),this.getConnectionStatus(bt)){case"connecting":continue;case"connected":return Lt.id;case"disconnected":return}})}getConnectionStatus(bt){const _t=this.getActiveConnection(bt);return _t?_t.isReady()?"connected":"connecting":"disconnected"}getIceMode(bt){const _t=this.getActiveConnection(bt);if(_t)return _t.iceMode}disconnect(bt){return Nr(this,void 0,void 0,function*(){const _t=this.getActiveConnection(bt);_t&&(yield this.closeConnection(_t))})}getLocalPeer(){return Nr(this,void 0,void 0,function*(){return yield this.localPeer})}getPeers(){return Nr(this,void 0,void 0,function*(){return yield this.config.signalingClient.getPeers(yield this.config.getToken())})}getPing(bt){const _t=this.getActiveConnection(bt);if(_t)return _t.getPing();Bt.vF.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(bt){const _t=this.getActiveConnection(bt);if(_t)return _t.getLastMessageTimestamp();Bt.vF.warn("Attempted to get ping time from inactive peer.")}shutdown(){return Nr(this,void 0,void 0,function*(){yield this.updateInterval.stop();const bt=this.connections;this.connections=[],yield this.closeConnections(bt)})}closeConnection(bt){return Nr(this,void 0,void 0,function*(){this.connectingSessions.delete(bt.getSessionId()),yield bt.close();try{yield this.config.signalingClient.deleteSession(yield this.config.getToken(),bt.getSessionId())}catch(_t){(0,Fo.e)(_t,no.o,Lt=>Lt.statusCode===404)}})}getSessions(){return Nr(this,void 0,void 0,function*(){const bt=yield this.getLocalPeer();return(yield this.config.signalingClient.getSessions(yield this.config.getToken())).filter(_t=>_t.offer.peer.id===bt.id||_t.answer.peer.id===bt.id)})}createPeer(){return Nr(this,void 0,void 0,function*(){return yield this.config.signalingClient.createPeer(yield this.config.getToken(),{capabilitySet:this.config.capabilitySet||{}})})}createRTCPeerConnection(){return Nr(this,arguments,void 0,function*(bt={}){const _t=this.config.alternateRTCPeerConnection||RTCPeerConnection;this.rtcInstancesConstructed++,this.rtcInstancesConstructed%20||bs();try{return new _t(Object.assign({iceServers:yield this.config.signalingClient.getIceServers(yield this.config.getToken())},bt))}catch(Lt){throw Bt.vF.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),Lt}})}closeConnections(bt){return Nr(this,void 0,void 0,function*(){const _t=yield Cn(bt.map(Lt=>Nr(this,void 0,void 0,function*(){yield this.closeConnection(Lt)})));for(const Lt of _t)Bt.vF.warn("Request to close session failed",{error:Lt})})}reset(){return Nr(this,void 0,void 0,function*(){yield this.closeConnections(this.connections),this.connections=[],this.connectingSessions=new Map,this.localPeer=this.createPeer(),yield this.localPeer})}getActiveConnection(bt){return this.connections.find(_t=>_t.getRemotePeer().id===bt&&_t.isActive())}update(){return Nr(this,void 0,void 0,function*(){const bt=yield this.getLocalPeer();try{yield this.config.signalingClient.refreshPeer(yield this.config.getToken(),bt.id)}catch(_t){(0,Fo.e)(_t,no.o,Lt=>Lt.statusCode===404),Bt.vF.warn("Peer expired, creating new peer",{peerId:bt.id}),yield this.reset()}yield this.handleSessions(yield this.getSessions())})}handleSessions(bt){return Nr(this,void 0,void 0,function*(){yield this.syncConnectionsAndSessions(bt);const _t=bt.map(Lt=>({session:Lt,connection:this.connections.find(nn=>nn.getSessionId()===Lt.id)}));yield Promise.all(_t.map(Lt=>Nr(this,[Lt],void 0,function*({session:nn,connection:dn}){return yield this.maintainConnection(nn,dn)})))})}syncConnectionsAndSessions(bt){return Nr(this,void 0,void 0,function*(){const _t=new Set(bt.map(dn=>dn.id)),Lt=dn=>_t.has(dn.getSessionId())||this.connectingSessions.has(dn.getSessionId());this.connections=this.connections.filter(dn=>Lt(dn));const nn=this.connections.filter(dn=>!Lt(dn)||dn.needsClosing());yield Promise.all(nn.map(dn=>Nr(this,void 0,void 0,function*(){yield this.closeConnection(dn)})))})}maintainConnection(bt,_t){return Nr(this,void 0,void 0,function*(){const Lt=yield this.getLocalPeer(),nn=bt.offer.peer.id===Lt.id;if(_t){if(_t.isReady())try{yield this.config.signalingClient.refreshSession(yield this.config.getToken(),bt.id)}catch(dn){(0,Fo.e)(dn,no.o,pn=>pn.statusCode===404),Bt.vF.debug("Refresh session not found",{sessionId:bt.id})}else if(_t.isActive())try{yield this.consumeSignals(_t)}catch(dn){Bt.vF.warn("Failed to ingest signals, closing connection",{error:dn}),yield this.closeConnection(_t)}}else{if(nn)return;yield this.connectToSession(bt)}})}connectToSession(bt){return Nr(this,void 0,void 0,function*(){const _t=yield this.getLocalPeer(),Lt=bt.offer.peer.id===_t.id,nn=yield this.createRTCPeerConnection(),dn=new Js(nn,{localPeer:Lt?bt.offer.peer:bt.answer.peer,remotePeer:Lt?bt.answer.peer:bt.offer.peer,sessionId:bt.id,isOffer:Lt,sendSignal:pn=>this.sendSignal(bt.id,pn),receive:(pn,Tn)=>this.config.receive(pn,Tn)});if(this.connections.find(pn=>pn.getSessionId()===bt.id))return Bt.vF.warn("connectToSession called on a session that already has a connection.",{sessionId:bt.id}),void(yield dn.close());this.setupHandlers(dn),this.connections.push(dn);try{yield dn.connect()}catch(pn){Bt.vF.warn("Failed to handle negotiation, closing connection",{error:pn}),yield this.closeConnection(dn)}})}setupHandlers(bt){const{peerConnection:_t}=bt,Lt=bt.getSessionId();_t.onconnectionstatechange=()=>Nr(this,void 0,void 0,function*(){const nn=this.connectingSessions.get(Lt);if(nn===void 0)return;const dn=_t.connectionState;switch(In(_t)&&this.connectingSessions.delete(Lt),dn){case"connected":{this.connectingSessions.delete(Lt);const pn=new Date().getTime()-nn;zt.aggregate("rtc-connect-time",pn);break}case"failed":zt.increment("rtc-connect-failed"),yield this.closeConnection(bt)}})}consumeSignals(bt){return Nr(this,void 0,void 0,function*(){let _t=[];try{_t=yield this.config.signalingClient.takeSignals(yield this.config.getToken(),bt.getSessionId())}catch(Lt){(0,Fo.e)(Lt,no.o,nn=>nn.statusCode===404)}for(const Lt of _t)yield bt.handleSignal(Lt)})}sendSignal(bt,_t){return Nr(this,void 0,void 0,function*(){try{yield this.config.signalingClient.addSignals(yield this.config.getToken(),bt,{signals:[_t]})}catch(Lt){(0,Fo.e)(Lt,no.o,nn=>nn.statusCode===404)}})}}})(),__webpack_exports__})())})(dist);var distExports=dist.exports;const SessionTypes={UNKNOWN:0,TELEOP:1,PORT_FORWARD:2,OBSERVE:3,HEADLESS:4},SessionTypeConstants={...SessionTypes,Unknown:SessionTypes.UNKNOWN,Teleop:SessionTypes.TELEOP,PortForward:SessionTypes.PORT_FORWARD,Observe:SessionTypes.OBSERVE,Headless:SessionTypes.HEADLESS,unknown:SessionTypes.UNKNOWN,teleop:SessionTypes.TELEOP,portForward:SessionTypes.PORT_FORWARD,observe:SessionTypes.OBSERVE,headless:SessionTypes.HEADLESS},singleton=Symbol("RtcClientPool.instance");var Qr;class RtcClientPool{constructor(s){me(this,Qr,null),me(this,"createClient"),me(this,"ttlMs"),me(this,"proxyHandler"),me(this,"proxyReceivers",new Map),me(this,"teardownTimeout",null),me(this,"dispatch",($,_e)=>{this.proxyReceivers.forEach(et=>et==null?void 0:et($,_e))});const{createClient:_,ttlMs:j=0}=s;this.createClient=_,this.ttlMs=Math.max(j,0),this.proxyHandler={get:($,_e,et)=>{switch(_e){case"shutdown":return()=>this.releaseInstance(et);default:return Reflect.get($,_e,et)}}}}get isActive(){return this[singleton]!==null}get size(){return this.proxyReceivers.size}get(s){const _=new Proxy(this.allocate(),this.proxyHandler);return this.proxyReceivers.set(_,s??null),_}allocate(){if(this[singleton])return this.teardownTimeout&&(clearTimeout(this.teardownTimeout),this.teardownTimeout=null),this[singleton];const s=this.createClient(this.dispatch);return this[singleton]=s,s}async teardown(){const s=this[singleton];if(!s){console.warn("singleton has already been shutdown!");return}try{await s.shutdown()}finally{this[singleton]=null}}async releaseInstance(s){return this.proxyReceivers.delete(s)?this.proxyReceivers.size!==0?!1:(!this.teardownTimeout&&Number.isFinite(this.ttlMs)&&(this.ttlMs===0?await this.teardown():this.teardownTimeout=setTimeout(()=>{this.teardown().catch(_=>console.error("teardown failed",{err:_})).finally(()=>this.teardownTimeout=null)},this.ttlMs)),!0):(console.warn("this instance has already been released!"),!1)}}Qr=singleton;const getToken=async()=>defined$1(Authentication.token,"Realtime when user isn't authorized"),EnumRtcClientPools={[SessionTypes.UNKNOWN]:new RtcClientPool({ttlMs:2500,createClient:o=>new distExports.RtcClient({signalingClient:new distExports.SignalingPromiseClient(FORMANT_API_URL),getToken,sessionType:SessionTypes.UNKNOWN,receive:o})}),[SessionTypes.TELEOP]:new RtcClientPool({ttlMs:2500,createClient:o=>new distExports.RtcClient({signalingClient:new distExports.SignalingPromiseClient(FORMANT_API_URL),getToken,sessionType:SessionTypes.TELEOP,receive:o})}),[SessionTypes.PORT_FORWARD]:new RtcClientPool({ttlMs:2500,createClient:o=>new distExports.RtcClient({signalingClient:new distExports.SignalingPromiseClient(FORMANT_API_URL),getToken,sessionType:SessionTypes.PORT_FORWARD,receive:o})}),[SessionTypes.OBSERVE]:new RtcClientPool({ttlMs:2500,createClient:o=>new distExports.RtcClient({signalingClient:new distExports.SignalingPromiseClient(FORMANT_API_URL),getToken,sessionType:SessionTypes.OBSERVE,receive:o})}),[SessionTypes.HEADLESS]:new RtcClientPool({ttlMs:2500,createClient:o=>new distExports.RtcClient({signalingClient:new distExports.SignalingPromiseClient(FORMANT_API_URL),getToken,sessionType:SessionTypes.HEADLESS,receive:o})})},AppRtcClientPools={...EnumRtcClientPools,unknown:EnumRtcClientPools[SessionTypes.UNKNOWN],teleop:EnumRtcClientPools[SessionTypes.TELEOP],portForward:EnumRtcClientPools[SessionTypes.PORT_FORWARD],observe:EnumRtcClientPools[SessionTypes.OBSERVE],headless:EnumRtcClientPools[SessionTypes.HEADLESS]},defaultRtcClientPool=EnumRtcClientPools[SessionTypes.TELEOP],getRtcClientPool=o=>{const{sessionType:s}=o;return s?AppRtcClientPools[s]:defaultRtcClientPool};async function getPeers(){if(!Authentication.token)throw new Error("Not authenticated");const o=defaultRtcClientPool.get();try{return await o.getPeers()}finally{await o.shutdown()}}async function getRealtimeSessions(){if(!Authentication.token)throw new Error("Not authenticated");const o=defaultRtcClientPool.get();try{return await o.getSessions()}finally{await o.shutdown()}}async function getTelemetry(o,s,_,j,$,_e){let et=o;Array.isArray(o)||(et=[o]);let tt=s;return Array.isArray(s)||(tt=[s]),(await(await fetch(`${FORMANT_API_URL}/v1/queries/queries`,{method:"POST",body:JSON.stringify({deviceIds:et,end:j.toISOString(),names:tt,start:_.toISOString(),tags:$,latestOnly:_e}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function patchDevice(o,s){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/devices/${o}`,{method:"PATCH",body:JSON.stringify(s),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function queryDevicesData(o){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/devices/query`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}const isRtcPeer=o=>o!==void 0&&o.capabilities!==void 0&&o.capabilitySet!==void 0;var eventemitter3={exports:{}};(function(o){var s=Object.prototype.hasOwnProperty,_="~";function j(){}Object.create&&(j.prototype=Object.create(null),new j().__proto__||(_=!1));function $(nt,rt,it){this.fn=nt,this.context=rt,this.once=it||!1}function _e(nt,rt,it,st,ut){if(typeof it!="function")throw new TypeError("The listener must be a function");var Ft=new $(it,st||nt,ut),dt=_?_+rt:rt;return nt._events[dt]?nt._events[dt].fn?nt._events[dt]=[nt._events[dt],Ft]:nt._events[dt].push(Ft):(nt._events[dt]=Ft,nt._eventsCount++),nt}function et(nt,rt){--nt._eventsCount===0?nt._events=new j:delete nt._events[rt]}function tt(){this._events=new j,this._eventsCount=0}tt.prototype.eventNames=function(){var nt=[],rt,it;if(this._eventsCount===0)return nt;for(it in rt=this._events)s.call(rt,it)&&nt.push(_?it.slice(1):it);return Object.getOwnPropertySymbols?nt.concat(Object.getOwnPropertySymbols(rt)):nt},tt.prototype.listeners=function(nt){var rt=_?_+nt:nt,it=this._events[rt];if(!it)return[];if(it.fn)return[it.fn];for(var st=0,ut=it.length,Ft=new Array(ut);st{$.payload.jointState&&this.currentListeners.forEach(_e=>{$.payload.jointState&&_e($.payload.jointState)})}),this.device=s,this.config=_}async synchronize(){this.device.addRealtimeListener(this.onRealtimeMessage),this.device.startListeningToRealtimeDataStream(this.config.currentJointStateStream)}async desynchronize(){this.device.removeRealtimeListener(this.onRealtimeMessage),this.device.stopListeningToRealtimeDataStream(this.config.currentJointStateStream)}async addCurrentJointStateListener(s){this.currentListeners.push(s)}}class RequestDataChannel{constructor(s,_,j){me(this,"channel"),me(this,"requestIdToResponseMap",new Map),this.device=s,this.channel_name=_,this.timeout=j}addOpenListener(s){defined$1(this.channel,"channel not initalized").addOpenListener(s)}removeOpenListener(s){defined$1(this.channel,"channel not initalized").removeOpenListener(s)}addCloseListener(s){defined$1(this.channel,"channel not initalized").addCloseListener(s)}removeCloseListener(s){defined$1(this.channel,"channel not initalized").removeCloseListener(s)}addErrorListener(s){defined$1(this.channel,"channel not initalized").addErrorListener(s)}removeErrorListener(s){defined$1(this.channel,"channel not initalized").removeErrorListener(s)}}class BinaryRequestDataChannel extends RequestDataChannel{constructor(){super(...arguments),me(this,"RESPONSE_SUCCESS_BYTE",0),me(this,"decoder",new TextDecoder)}generateBinaryId(){const s=new Uint8Array(16);for(let _=0;_{const _=s.slice(0,16).toString();if(_.length===0)throw new Error("Invalid response");const j=s.slice(16);if(j.length===0)throw new Error("Invalid response");this.requestIdToResponseMap.has(_)&&this.requestIdToResponseMap.set(_,j)})}async request(s){if(this.channel||await this.initialize(),!this.channel)throw new Error("Failed to create channel");const{channel:_,requestIdToResponseMap:j,timeout:$}=this;await _.waitTilReady();const _e=this.generateBinaryId(),et=_e.toString();j.set(et,!0),_.sendBinary(new Uint8Array([..._e,...s]));const tt=new Date().getTime();for(;new Date().getTime(){const _=JSON.parse(s),{id:j,data:$,error:_e}=_;if(!j)throw new Error("Invalid response");if(!$&&!_e)throw new Error("Invalid response");this.requestIdToResponseMap.has(j)&&this.requestIdToResponseMap.set(j,_)})}async request(s){if(this.channel||await this.initialize(),!this.channel)throw new Error("Failed to create channel");const{channel:_,requestIdToResponseMap:j,timeout:$}=this;await _.waitTilReady();const _e=this.generateTextId();j.set(_e,!0),_.send(JSON.stringify({id:_e,data:s}));const et=new Date().getTime();for(;new Date().getTime(){this.realtimeListeners.forEach(j=>j(s,_))})}stopConnectionMonitoring(){clearInterval(this.connectionMonitorInterval),this.connectionMonitorInterval=void 0}assertNotCancelled(s){if(s)throw new Error("Cancelled by deadline")}getRealtimeStatus(){if(this.rtcClient&&this.remoteDevicePeerId)return this.rtcClient.getConnectionStatus(this.remoteDevicePeerId);throw new Error("Realtime connection hasn't been started")}getRealtimePingInfo(){if(this.rtcClient&&this.remoteDevicePeerId)return this.rtcClient.getPingInfo(this.remoteDevicePeerId);throw new Error("Realtime connection hasn't been started")}getRealtimePing(){if(this.rtcClient&&this.remoteDevicePeerId)return this.rtcClient.getPing(this.remoteDevicePeerId);throw new Error("Realtime connection hasn't been started")}addRealtimeListener(s){this.realtimeListeners.push(s)}removeRealtimeListener(s){const _=this.realtimeListeners.indexOf(s);if(_===-1)throw new Error("Could not find realtime listener to remove");this.realtimeListeners.splice(_,1)}async getRealtimeManipulators(){var s;const _=await this.getConfiguration(),j=[];for(const $ of(s=_.teleop.rosStreams)!=null?s:[])$.topicType=="sensor_msgs/JointState"&&j.push(new Manipulator(this,{currentJointStateStream:{name:$.topicName},plannedJointStateStream:$.plannedTopic?{name:$.plannedTopic}:void 0,planValidStream:$.planValidTopic?{name:$.planValidTopic}:void 0,endEffectorStream:$.endEffectorTopic?{name:$.endEffectorTopic}:void 0,endEffectorLinkName:$.endEffectorLinkName,baseReferenceFrame:$.baseReferenceFrame,localFrame:$.localFrame}));return j}async getRealtimeVideoStreams(){var s,_,j,$,_e,et;const tt=await this.getConfiguration(),nt=[];for(const rt of(_=(s=tt.teleop)==null?void 0:s.hardwareStreams)!=null?_:[])rt.rtcStreamType==="h264-video-frame"&&nt.push({name:rt.name});for(const rt of($=(j=tt.teleop)==null?void 0:j.rosStreams)!=null?$:[])rt.topicType=="formant/H264VideoFrame"&&nt.push({name:rt.topicName}),(rt.topicType==="sensor_msgs/Image"||rt.topicType==="sensor_msgs/CompressedImage")&&rt.encodeVideo&&nt.push({name:rt.topicName});for(const rt of(et=(_e=tt.teleop)==null?void 0:_e.customStreams)!=null?et:[])rt.rtcStreamType==="h264-video-frame"&&nt.push({name:rt.name});return nt}createCustomRequestDataChannel(s,_=3e3){return new TextRequestDataChannel(this,s,_)}createCustomBinaryRequestDataChannel(s,_=3e3){return new BinaryRequestDataChannel(this,s,_)}async startListeningToRealtimeVideo(s){const _=defined$1(this.rtcClient,"Realtime connection has not been started"),j=await this.getRemotePeer();_.controlRemoteStream(defined$1(j).id,{streamName:s.name,enable:!0,pipeline:"rtc"})}async stopListeningToRealtimeVideo(s){const _=defined$1(this.rtcClient,"Realtime connection has not been started"),j=await this.getRemotePeer();_.controlRemoteStream(defined$1(j).id,{streamName:s.name,enable:!1,pipeline:"rtc"})}async startListeningToRealtimeDataStream(s){const _=defined$1(this.rtcClient,"Realtime connection has not been started"),j=await this.getRemotePeer();_.controlRemoteStream(defined$1(j).id,{streamName:s.name,enable:!0,pipeline:"rtc"})}async stopListeningToRealtimeDataStream(s){const _=defined$1(this.rtcClient,"Realtime connection has not been started"),j=await this.getRemotePeer();_.controlRemoteStream(defined$1(j).id,{streamName:s.name,enable:!1,pipeline:"rtc"})}async enableRealtimeTelemetryPriorityIngestion(s){const _=defined$1(this.rtcClient,"Realtime connection has not been started"),j=await this.getRemotePeer();_.controlRemoteStream(defined$1(j).id,{streamName:s,enablePriorityUpload:!0,pipeline:"telemetry"})}async disableRealtimeTelemetryPriorityIngestion(s){const _=defined$1(this.rtcClient,"Realtime connection has not been started"),j=await this.getRemotePeer();_.controlRemoteStream(defined$1(j).id,{streamName:s,enablePriorityUpload:!1,pipeline:"telemetry"})}async changeStreamAudioType(s,_){const j=defined$1(this.rtcClient,"Realtime connection has not been started"),$=await this.getRemotePeer();j.controlRemoteStream(defined$1($).id,{streamName:s,setAudioFormat:_})}async createCustomDataChannel(s,_){const j=defined$1(this.rtcClient,"Realtime connection has not been started"),$=await this.getRemotePeer(),_e=await new Promise(et=>{j.createCustomDataChannel(defined$1($).id,s,{ordered:!0,..._},!1,(tt,nt)=>{const rt=new DataChannel(nt);et(rt)})});return await _e.waitTilReady(),_e}async sendRealtimeMessage(s,_={channelLabel:"stream.reliable"}){const j=defined$1(this.rtcClient,"Realtime connection has not been started"),$=await this.getRemotePeer();j.send(defined$1($).id,s,_)}async getRealtimeAudioStreams(){var s,_,j,$,_e,et;const tt=await this.getConfiguration(),nt=[];for(const rt of(_=(s=tt.teleop)==null?void 0:s.hardwareStreams)!=null?_:[])rt.rtcStreamType==="audio-chunk"&&nt.push({name:rt.name});for(const rt of($=(j=tt.teleop)==null?void 0:j.rosStreams)!=null?$:[])rt.topicType=="audio_common_msgs/AudioData"&&nt.push({name:rt.topicName});for(const rt of(et=(_e=tt.teleop)==null?void 0:_e.customStreams)!=null?et:[])rt.rtcStreamType==="audio-chunk"&&nt.push({name:rt.name});return nt}}class Device extends BaseDevice{constructor(s,_,j,$){super(),this.id=s,this.name=_,this.organizationId=j,this.tags=$}async getLatestTelemetry(){return(await(await fetch(`${FORMANT_API_URL}/v1/queries/stream-current-value`,{method:"POST",body:JSON.stringify({deviceIds:[this.id]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async getConfiguration(s=!1){let _=await fetch(`${FORMANT_API_URL}/v1/admin/devices/${this.id}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}});const j=await _.json();if(!j.state.reportedConfiguration)throw new Error("Device has no configuration, has it ever been turned on?");const $=s?j.desiredConfigurationVersion:j.state.reportedConfiguration.version;return _=await fetch(`${FORMANT_API_URL}/v1/admin/devices/${this.id}/configurations/${$}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}}),(await _.json()).document}async getAgentVersion(){var s;const _=await(await fetch(`${FORMANT_API_URL}/v1/admin/devices/${this.id}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json();return(s=_==null?void 0:_.state)==null?void 0:s.agentVersion}async getFileUrl(s){return(await(await fetch(`${FORMANT_API_URL}/v1/admin/files/query`,{method:"POST",body:JSON.stringify({fileIds:[s]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).fileUrls}async startRealtimeConnection(s={}){if(console.debug(`${new Date().toISOString()} :: Connection start requested`),this.rtcClient&&this.connectionMonitorInterval!==void 0)throw new Error(`Already created realtime connection to device ${this.id}`);this.rtcClient&&console.warn("overwriting existing rtcClient due to missing connectionMonitorInterval");const{sessionType:_,deadlineMs:j=1e4,maxConnectRetries:$=3}=typeof s=="number"?{sessionType:s}:s,_e=getRtcClientPool({sessionType:_}).get(this.handleMessage);let et=!1;const tt=new Promise((rt,it)=>setTimeout(()=>{et=!0,it(new Error("Connection timed out: the connection could not be finalized in time, possibly due to network issues or misconfigured settings."))},j)),nt=async()=>{if("isReady"in _e)for(;!_e.isReady();)this.assertNotCancelled(et),await delay$1(100);const rt=await this.getRemoteDevicePeerId(_e);this.assertNotCancelled(et);let it;for(let ut=0;ut<$&&(it=await _e.connect(rt),!it);ut++)delay$1(100),this.assertNotCancelled(et);if(!it)throw new Error(`Session could not be created: exhausted ${$} retries`);let st=0;for(;!et&&_e.getConnectionStatus(rt)!=="connected";)await delay$1(100),st+=1;return this.assertNotCancelled(et),console.debug(`${new Date().toISOString()} :: Connection completed after ${st} retries`),rt};return Promise.race([nt(),tt]).then(rt=>{this.remoteDevicePeerId=rt,this.initConnectionMonitoring(),this.rtcClient=_e,this.emit("connect")}).catch(rt=>{throw console.debug(`${new Date().toISOString()} :: Connection failed: %o`,rt),this.remoteDevicePeerId=null,_e.shutdown().catch(it=>{console.error("rtcClient cannot shutdown: %o",it)}),this.emit("connection_failed",rt),rt})}async getRemoteDevicePeerId(s){const _=(await s.getPeers()).find(j=>j.deviceId===this.id);if(!isRtcPeer(_))throw new Error("Cannot find peer, is the robot offline?");return _.id}initConnectionMonitoring(){this.connectionMonitorInterval=setInterval(async()=>{let s=!1;if(this.rtcClient){const _=this.rtcClient.getConnections().find(j=>j.getRemotePeerId()===this.remoteDevicePeerId&&j.isActive());(_===void 0||!_.isReady())&&(console.debug(`${new Date().toISOString()} :: data channel closed`),s=!0)}(!this.rtcClient||!this.remoteDevicePeerId||await this.rtcClient.getConnectionStatsInfo(this.remoteDevicePeerId)===void 0||s)&&(this.emit("disconnect"),this.stopRealtimeConnection().catch(_=>{console.error(_)}))},1e3)}async getRemotePeer(){const s=(await defined$1(this.rtcClient,"Realtime connection has not been started").getPeers()).find(_=>_.deviceId===this.id);return defined$1(s,"Could not find remote peer for device "+this.id)}async stopRealtimeConnection(){let s=!1;if(this.rtcClient){this.stopConnectionMonitoring(),this.remoteDevicePeerId?(await this.rtcClient.disconnect(this.remoteDevicePeerId),this.remoteDevicePeerId=null):s=!0;try{await this.rtcClient.shutdown()}finally{this.rtcClient=void 0}}if(s)throw new Error(`Realtime connection hasn't been started for ${this.id}`)}async isInRealtimeSession(){const s=await getPeers(),_=await getRealtimeSessions(),j=s.find($=>$.deviceId===this.id);return j?_[j.id].length>0:!1}async getAvailableCommands(s=!0){return(await(await fetch(`${FORMANT_API_URL}/v1/admin/command-templates/`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items.filter(_=>s?!0:_.enabled)}async sendCommand(s,_,j,$,_e){var et;const tt=(await this.getAvailableCommands(!1)).find(it=>_e?it.id===_e:it.name===s);if(!tt)throw new Error(`Could not find command with name "${s}"`);let nt="";_===void 0?tt.parameterEnabled&&tt.parameterValue&&(nt=tt.parameterValue):nt=_;let rt={value:nt,scrubberTime:(j||new Date).toISOString(),meta:{...tt.parameterMeta,...$}};return await fetch(`${FORMANT_API_URL}/v1/admin/commands`,{method:"POST",body:JSON.stringify({commandTemplateId:tt.id,organizationId:this.organizationId,deviceId:this.id,command:tt.command,parameter:rt,userId:(et=Authentication.currentUser)==null?void 0:et.id}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})}async getCommand(s){return await fetch(`${FORMANT_API_URL}/v1/admin/commands/${s}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})}async createCaptureStream(s){const _=await(await fetch(`${FORMANT_API_URL}/v1/admin/capture-sessions`,{method:"POST",body:JSON.stringify({deviceId:this.id,streamName:s,tags:{}}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json();return new CaptureStream(_)}async getTelemetry(s,_,j,$,_e,et,tt){if(_e!==void 0||et!==void 0)throw new Error("Limit and offset are not supported in this method");return await getTelemetry(this.id,s,_,j,$,tt)}async queryEvents(s){if(s.deviceIds)throw new Error("Cannot filter multiple devices via Device class");return s.deviceIds=[this.id],queryEvents(s)}async getTelemetryStreams(){var s,_;const j=await this.getConfiguration(),$=await fetch(`${FORMANT_API_URL}/v1/queries/metadata/stream-names`,{method:"POST",body:JSON.stringify({deviceIds:[this.id]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}}),_e=[],et=[];return(_=(s=j.telemetry)==null?void 0:s.streams)==null||_.forEach(tt=>{tt.disabled!==!0&&_e.push(tt.name),tt.onDemand===!0&&et.push(tt.name)}),console.log(et),(await $.json()).items.filter(tt=>!_e.includes(tt)).map(tt=>({name:tt,onDemand:et.includes(tt)}))}async createInterventionRequest(s,_,j,$){return await(await fetch(`${FORMANT_API_URL}/v1/admin/intervention-requests`,{method:"POST",body:JSON.stringify({message:s,interventionType:_,time:new Date().toISOString(),deviceId:this.id,tags:$,data:j}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async addInterventionResponse(s,_,j){return await(await fetch(`${FORMANT_API_URL}/v1/admin/intervention-responses`,{method:"POST",body:JSON.stringify({interventionId:s,interventionType:_,data:j}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async getAnnotationCount(s,_){return await getAnnotationCount({...s,deviceIds:[this.id]},_)}async getAnnotationCountByIntervals(s,_,j){return await getAnnotationCountByIntervals({...s,deviceIds:[this.id]},_,j)}async eventsCounter(s,_,j,$,_e){return await eventsCounter(s,_,j,$,{..._e,deviceIds:[this.id]})}async createShareLink(s,_){return s.scope.deviceIds=[this.id],await createShareLink(s,_)}}me(Device,"createDevice",createDevice),me(Device,"patchDevice",patchDevice),me(Device,"getDevicesData",getDevicesData),me(Device,"queryDevicesData",queryDevicesData),me(Device,"disableDevice",disableDevice);class PeerDevice extends BaseDevice{constructor(s){super(),me(this,"id"),me(this,"telemetryStreamActive",!1),me(this,"streamTelemetry",{}),this.peerUrl=s}async getLatestTelemetry(){this.telemetryStreamActive||this.subscribeToTelemetry();const s=this.streamTelemetry;return Object.entries(s).map(([_,j])=>({deviceId:this.id,streamName:_,streamType:"json",currentValue:j,currentValueTime:j.timestamp,tags:{}}))}async getTelemetry(s,_,j,$,_e,et,tt){if(Array.isArray(s))throw new Error("Multiple stream names not supported");if($)throw new Error("Tags not supported");if(tt&&_e===void 0)_e=1;else if(tt&&_e!==void 0)throw new Error("latestOnly and limit cannot be used together");let nt=`${this.peerUrl}/v1/querydatapoints?stream_name=${s}&start=${_.toISOString()}&end=${j.toISOString()}`;_e!=null&&_e>0&&(nt+=`&limit=${_e}`),et!=null&&et>=0&&(nt+=`&offset=${et}`);const rt=await(await fetch(nt)).json(),it=[];for(const st of rt.results){const ut=parseInt(st.timestamp),Ft=st.tags.data_type;delete st.tags.data_type,it.push({deviceId:this.id,name:st.stream,points:[[ut,this.getPointPayload(Ft,st)]],tags:st.tags,type:Ft})}return it.reverse()}async queryEvents(s){const _=["id","viewed","keyword","message","sort","eventTypes","notificationEnabled","userIds","annotationTemplateIds","disableNullMatches","severities","deviceIds","names","types","tags","notNames"];this.checkKeysAndThrow(s,_);let j=`${this.peerUrl}/v1/queryevents?start=${s.start}&end=${s.end}`;s.count!=null&&s.count>0&&(j+=`&limit=${s.count}`),s.offset!=null&&s.offset>=0&&(j+=`&offset=${s.offset}`);const $=await(await fetch(j)).json(),_e=[];for(const et of $.results){const tt=parseInt(et.timestamp),nt={deviceId:this.id,time:new Date(tt).toISOString(),message:et.message,notificationEnabled:et.notificationEnabled,type:et.type,tags:et.tags};et.id!==""&&(nt.id=et.id),et.type!==""&&(nt.type=et.type),et.streamName!==""&&(nt.streamName=et.streamName),et.streamType!==""&&(nt.streamType=et.streamType),et.severity!==""&&(nt.severity=et.severity.toLowerCase()),et.tags&&(nt.tags=et.tags),et.endTimestamp!=="0"&&(nt.endTime=new Date(parseInt(et.endTimestamp)).toISOString()),_e.push(nt)}return _e.reverse()}checkKeysAndThrow(s,_){const j=_.filter($=>$ in s);if(j.length>0)throw new Error(`Filters not currently supported: ${j.join(", ")}.`)}getPointPayload(s,_){switch(s){case"numeric":return _.numeric.value;case"numeric set":return _.numericSet.numerics;case"text":return _.text.value;case"json":return _.json.value;case"bitset":const j=[],$=[];for(const _e of _.bitset.bits)j.push(_e.key),$.push(_e.value);return{keys:j,values:$};case"location":return _.location;case"health":return _.health;case"battery":return _.battery;default:return{}}}subscribeToTelemetry(){this.telemetryStreamActive=!0;let s=0;const _=new XMLHttpRequest;_.responseType="text",_.addEventListener("error",j=>{this.handleXHRError("error")}),_.addEventListener("abort",j=>{this.handleXHRError("abort")}),_.addEventListener("timeout",j=>{this.handleXHRError("timeout")}),_.addEventListener("readystatechange",j=>{_.readyState===XMLHttpRequest.DONE&&this.handleXHRError("closed")}),_.addEventListener("progress",j=>{const $=j.loaded,_e=$-s;s=$,_.responseText.substr(-_e).split(` +`).forEach(et=>{var tt;if(et.length>0){const nt=JSON.parse(et);if((tt=nt.result)!=null&&tt.datapoint){const rt=nt.result.datapoint,it=rt.stream;delete rt.stream,this.streamTelemetry[it]=rt}}})}),_.open("POST",`${this.peerUrl}/v1/telemetry`),_.send()}handleXHRError(s){console.warn(`Telemetry stream ended: ${s}`),this.telemetryStreamActive=!1}async getDeviceId(){return(await(await fetch(`${this.peerUrl}/v1/config`)).json()).configuration.id}async getConfiguration(){return(await(await fetch(`${this.peerUrl}/v1/config`)).json()).configuration.document}async getViews(){return(await(await fetch(`${this.peerUrl}/v1/views`)).json()).views}async startRealtimeConnection(s){if(console.debug(`${new Date().toISOString()} :: Connection start requested`),this.rtcClient&&this.connectionMonitorInterval!==void 0)throw new Error(`Already created realtime connection to device ${this.id}`);this.rtcClient&&console.warn("overwriting existing rtcClient due to missing connectionMonitorInterval");const _=new distExports.RtcClient({lanOnlyMode:!0,receive:this.handleMessage,sessionType:s});for(await _.connectLan(this.peerUrl);_.getConnectionStatus(this.peerUrl)!=="connected";)await delay$1(100);this.rtcClient=_,this.initConnectionMonitoring()}initConnectionMonitoring(){this.connectionMonitorInterval=setInterval(async()=>{let s=!1;this.rtcClient&&this.rtcClient.getConnectionStatus(this.peerUrl)!=="connected"&&(console.debug(`${new Date().toISOString()} :: data channel closed`),s=!0),(!this.rtcClient||s)&&(this.emit("disconnect"),this.stopRealtimeConnection().catch(_=>{console.error(_)}))},1e3)}async getRemotePeer(){return{id:this.peerUrl,organizationId:"",deviceId:this.id,capabilities:[],capabilitySet:{}}}async stopRealtimeConnection(){let s=!1;if(this.rtcClient){this.stopConnectionMonitoring(),this.id?(await this.rtcClient.disconnect(this.id),this.remoteDevicePeerId=null):s=!0;try{await this.rtcClient.shutdown()}finally{this.rtcClient=void 0}}if(s)throw new Error(`Realtime connection hasn't been started for ${this.id}`)}async getCommandMetadata(){return(await fetch(`${this.peerUrl}/v1/commands`)).json()}async sendCommand(s,_,j,$){const _e={value:_,scrubberTime:(j||new Date).toISOString(),meta:$};return await fetch(`${this.peerUrl}/v1/enqueue-command`,{method:"POST",body:JSON.stringify({command:s,parameter:_e}),headers:{"Content-Type":"application/json"}})}}async function addDeviceToFleet(o,s){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/devices/${o}`,{method:"PATCH",body:JSON.stringify({fleetId:s}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function aggregateTelemetry(o){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/queries/queries`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).aggregates}async function deleteFleet(o){if(!Authentication.token)throw new Error("Not authenticated");await fetch(`${FORMANT_API_URL}/v1/admin/fleets/${o}`,{method:"DELETE",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})}async function getAnalyticStreams(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/queries/analytics/streams`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function getAnalyticsModules(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/analytics-modules`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function getAnalyticsRows(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/queries/analytics/rows`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function queryDevices(o){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/devices/query`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items.map(s=>new Device(s.id,s.name,s.organizationId,s.tags))}async function getCurrentGroup(){if(!Authentication.token)throw new Error("Not authenticated");let o=new URLSearchParams("");typeof window<"u"&&window.location&&(o=new URLSearchParams(window.location.search));const s=o.get("group");if(s===null||s.trim()==="")return;const _=await fetch(`${FORMANT_API_URL}/v1/admin/groups/`+s,{headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}}),{tagKey:j,tagValue:$}=await _.json();return await queryDevices({tags:{[j]:[$]},enabled:!0,type:"default"})}async function getDevice(o){if(!Authentication.token)throw new Error("Not authenticated");const s=await(await fetch(`${FORMANT_API_URL}/v1/admin/devices/${o}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json(),_=s.name;return new Device(o,_,s.organizationId,s.tags)}async function getDevices(){if(!Authentication.token)throw new Error("Not authenticated");const o=await(await fetch(`${FORMANT_API_URL}/v1/admin/device-details/query`,{method:"POST",body:JSON.stringify({enabled:!0,type:"default"}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json();return o.items,o.items.map(s=>new Device(s.id,s.name,defined$1(Authentication.currentOrganization),s.tags))}async function getEvent(o){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/events/query/id=${o}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function getFileUrl(o){const s=await(await fetch(`${FORMANT_API_URL}/v1/admin/files/query`,{method:"POST",body:JSON.stringify({fileIds:[o]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json();if(s.fileUrls.length===0)throw new Error("File not found");return s.fileUrls[0]}async function getFleet(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/fleets/${o}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function getFleetDevices(o){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/fleets/${o}/devices`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function getInterventions(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/intervention-requests`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function getLatestTelemetry(...o){const s=o.flat().filter(_=>!!_);return s.length===0?[]:(await(await fetch(`${FORMANT_API_URL}/v1/queries/stream-current-value`,{method:"POST",body:JSON.stringify({deviceIds:s}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function getOnlineDevices(){if(!Authentication.token)throw new Error("Not authenticated");const o=(await(await fetch(`${FORMANT_API_URL}/v1/queries/online-devices`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items;return(await getDevices()).filter(s=>o.includes(s.id))}async function getRealtimeDevices(){if(!Authentication.token)throw new Error("Not authenticated");const o=(await(await fetch(`${FORMANT_API_URL}/v1/signaling/peers`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items.map(s=>s.deviceId);return(await getDevices()).filter(s=>o.includes(s.id))}async function getStreams(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/streams`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items.filter(o=>o.enabled)}async function getTaskReportRows(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/queries/analytics/task-report-rows`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function getTaskReportTables(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/queries/analytics/task-reports`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function listFleets(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/fleets`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function patchFleet(o,s){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/fleets/${o}`,{method:"PATCH",body:JSON.stringify(s),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function patchStream(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/streams/${o.id}`,{method:"PATCH",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function patchView(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/views/${o.id}`,{method:"PATCH",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function queryAnalytics(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/queries/analytics`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function createFleet(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/fleets`,{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function getAllEventTriggerGroup(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${FORMANT_API_URL}/v1/admin/event-trigger-groups`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function getEventTriggerGroup(o){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/event-trigger-groups/${o}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}async function patchEventTriggerGroup(o,s){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${FORMANT_API_URL}/v1/admin/event-trigger-groups/${o}`,{method:"PATCH",body:JSON.stringify(s),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}const Ct=class{static async setDefaultDevice(o){Ct.defaultDeviceId=o}static async getCurrentDevice(){if(!Authentication.token)throw new Error("Not authenticated");if(!Ct.defaultDeviceId)throw new Error("No known default device");const o=(await(await fetch(`${FORMANT_API_URL}/v1/admin/device-details/query`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items.find(j=>j.id===Ct.defaultDeviceId),s=o.name,_=new Device(Ct.defaultDeviceId,s,defined$1(Authentication.currentOrganization),o.tags);return Ct.knownContext.push(new WeakRef(_)),_}static async getPeerDevice(o){const s=new PeerDevice(o);return s.id=await s.getDeviceId(),s}static async getDevice(o){const s=await getDevice(o);return Ct.knownContext.push(new WeakRef(s)),s}};let Fleet=Ct;me(Fleet,"defaultDeviceId"),me(Fleet,"knownContext",[]),me(Fleet,"createFleet",createFleet),me(Fleet,"listFleets",listFleets),me(Fleet,"getFleet",getFleet),me(Fleet,"patchFleet",patchFleet),me(Fleet,"deleteFleet",deleteFleet),me(Fleet,"addDeviceToFleet",addDeviceToFleet),me(Fleet,"getFleetDevices",getFleetDevices),me(Fleet,"aggregateTelemetry",aggregateTelemetry),me(Fleet,"createShareLink",createShareLink),me(Fleet,"eventsCounter",eventsCounter),me(Fleet,"getAnalyticStreams",getAnalyticStreams),me(Fleet,"getAnalyticsModules",getAnalyticsModules),me(Fleet,"getAnalyticsRows",getAnalyticsRows),me(Fleet,"getAnnotationCount",getAnnotationCount),me(Fleet,"getAnnotationCountByIntervals",getAnnotationCountByIntervals),me(Fleet,"getCurrentGroup",getCurrentGroup),me(Fleet,"getDevices",getDevices),me(Fleet,"getEvent",getEvent),me(Fleet,"getFileUrl",getFileUrl),me(Fleet,"getInterventions",getInterventions),me(Fleet,"getLatestTelemetry",getLatestTelemetry),me(Fleet,"getOnlineDevices",getOnlineDevices),me(Fleet,"getPeers",getPeers),me(Fleet,"getRealtimeDevices",getRealtimeDevices),me(Fleet,"getRealtimeSessions",getRealtimeSessions),me(Fleet,"getStreams",getStreams),me(Fleet,"getTaskReportRows",getTaskReportRows),me(Fleet,"getTaskReportTables",getTaskReportTables),me(Fleet,"getTelemetry",getTelemetry),me(Fleet,"getViews",getViews),me(Fleet,"patchStream",patchStream),me(Fleet,"patchView",patchView),me(Fleet,"queryAnalytics",queryAnalytics),me(Fleet,"queryDevices",queryDevices),me(Fleet,"queryEvents",queryEvents),me(Fleet,"queryTelemetry",queryTelemetry),me(Fleet,"getAllEventTriggerGroup",getAllEventTriggerGroup),me(Fleet,"getEventTriggerGroup",getEventTriggerGroup),me(Fleet,"patchEventTriggergroup",patchEventTriggerGroup);async function request(o,s){if(!Authentication.token)throw new Error("Not authenticated");const _=await fetch(`${FORMANT_API_URL}/v1${o}`,{...s,headers:{"Content-Type":"application/json",Authorization:`Bearer ${Authentication.token}`,...s==null?void 0:s.headers}});if(!_.ok)throw new Error(`Error: ${_.statusText}`);return _.status===204||_.headers.get("content-length")==="0"?null:await _.json()}async function fetchTeleopViews(){return(await request("/admin/teleop-views")).items}async function getTeleopView(o){return await request(`/admin/teleop-views/${o}`)}async function createTeleopView(o){return await request("/admin/teleop-views",{method:"POST",body:JSON.stringify(o)})}async function updateTeleopView(o,s){return await request(`/admin/teleop-views/${o}`,{method:"PATCH",body:JSON.stringify(s)})}async function deleteTeleopView(o){await request(`/admin/teleop-views/${o}`,{method:"DELETE"})}class Views{constructor(){}}me(Views,"createTeleopView",createTeleopView),me(Views,"updateTeleopView",updateTeleopView),me(Views,"deleteTeleopView",deleteTeleopView),me(Views,"getTeleopView",getTeleopView),me(Views,"fetchTeleopViews",fetchTeleopViews);try{const o=typeof window<"u"&&window.location?new URLSearchParams(window.location.search):new URLSearchParams(""),s=o.get("device");s&&Fleet.setDefaultDevice(s);const _=o.get("auth");_&&Authentication.loginWithToken(_),o.get("module")&&Authentication.listenForRefresh(),typeof window<"u"&&App$2.listenForConnectionEvents()}catch(o){}var signaling_pb={},googleProtobuf={};(function(exports){var $jscomp=$jscomp||{};$jscomp.scope={},$jscomp.findInternal=function(o,s,_){o instanceof String&&(o=String(o));for(var j=o.length,$=0;$=$}},"es6","es3"),$jscomp.polyfill("Array.prototype.find",function(o){return o||function(s,_){return $jscomp.findInternal(this,s,_).v}},"es6","es3"),$jscomp.polyfill("String.prototype.startsWith",function(o){return o||function(s,_){var j=$jscomp.checkStringArgs(this,s,"startsWith");s+="";var $=j.length,_e=s.length;_=Math.max(0,Math.min(_|0,j.length));for(var et=0;et<_e&&_<$;)if(j[_++]!=s[et++])return!1;return et>=_e}},"es6","es3"),$jscomp.polyfill("String.prototype.repeat",function(o){return o||function(s){var _=$jscomp.checkStringArgs(this,null,"repeat");if(0>s||1342177279>>=1)&&(_+=_);return j}},"es6","es3");var COMPILED=!0,goog=goog||{};goog.global=commonjsGlobal||self,goog.exportPath_=function(o,s,_){o=o.split("."),_=_||goog.global,o[0]in _||typeof _.execScript>"u"||_.execScript("var "+o[0]);for(var j;o.length&&(j=o.shift());)o.length||s===void 0?_=_[j]&&_[j]!==Object.prototype[j]?_[j]:_[j]={}:_[j]=s},goog.define=function(o,s){return s},goog.FEATURESET_YEAR=2012,goog.DEBUG=!0,goog.LOCALE="en",goog.TRUSTED_SITE=!0,goog.STRICT_MODE_COMPATIBLE=!1,goog.DISALLOW_TEST_ONLY_CODE=!goog.DEBUG,goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING=!1,goog.provide=function(o){if(goog.isInModuleLoader_())throw Error("goog.provide cannot be used within a module.");goog.constructNamespace_(o)},goog.constructNamespace_=function(o,s){goog.exportPath_(o,s)},goog.getScriptNonce=function(o){return o&&o!=goog.global?goog.getScriptNonce_(o.document):(goog.cspNonce_===null&&(goog.cspNonce_=goog.getScriptNonce_(goog.global.document)),goog.cspNonce_)},goog.NONCE_PATTERN_=/^[\w+/_-]+[=]{0,2}$/,goog.cspNonce_=null,goog.getScriptNonce_=function(o){return(o=o.querySelector&&o.querySelector("script[nonce]"))&&(o=o.nonce||o.getAttribute("nonce"))&&goog.NONCE_PATTERN_.test(o)?o:""},goog.VALID_MODULE_RE_=/^[a-zA-Z_$][a-zA-Z0-9._$]*$/,goog.module=function(o){if(typeof o!="string"||!o||o.search(goog.VALID_MODULE_RE_)==-1)throw Error("Invalid module identifier");if(!goog.isInGoogModuleLoader_())throw Error("Module "+o+" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.");if(goog.moduleLoaderState_.moduleName)throw Error("goog.module may only be called once per module.");goog.moduleLoaderState_.moduleName=o},goog.module.get=function(o){return goog.module.getInternal_(o)},goog.module.getInternal_=function(o){return null},goog.ModuleType={ES6:"es6",GOOG:"goog"},goog.moduleLoaderState_=null,goog.isInModuleLoader_=function(){return goog.isInGoogModuleLoader_()||goog.isInEs6ModuleLoader_()},goog.isInGoogModuleLoader_=function(){return!!goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.GOOG},goog.isInEs6ModuleLoader_=function(){if(goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.ES6)return!0;var o=goog.global.$jscomp;return o?typeof o.getCurrentModulePath!="function"?!1:!!o.getCurrentModulePath():!1},goog.module.declareLegacyNamespace=function(){goog.moduleLoaderState_.declareLegacyNamespace=!0},goog.declareModuleId=function(o){if(goog.moduleLoaderState_)goog.moduleLoaderState_.moduleName=o;else{var s=goog.global.$jscomp;if(!s||typeof s.getCurrentModulePath!="function")throw Error('Module with namespace "'+o+'" has been loaded incorrectly.');s=s.require(s.getCurrentModulePath()),goog.loadedModules_[o]={exports:s,type:goog.ModuleType.ES6,moduleId:o}}},goog.setTestOnly=function(o){if(goog.DISALLOW_TEST_ONLY_CODE)throw o=o||"",Error("Importing test-only code into non-debug environment"+(o?": "+o:"."))},goog.forwardDeclare=function(o){},goog.getObjectByName=function(o,s){o=o.split("."),s=s||goog.global;for(var _=0;_"u")return"object";return s},goog.isArray=function(o){return goog.typeOf(o)=="array"},goog.isArrayLike=function(o){var s=goog.typeOf(o);return s=="array"||s=="object"&&typeof o.length=="number"},goog.isDateLike=function(o){return goog.isObject(o)&&typeof o.getFullYear=="function"},goog.isFunction=function(o){return goog.typeOf(o)=="function"},goog.isObject=function(o){var s=typeof o;return s=="object"&&o!=null||s=="function"},goog.getUid=function(o){return Object.prototype.hasOwnProperty.call(o,goog.UID_PROPERTY_)&&o[goog.UID_PROPERTY_]||(o[goog.UID_PROPERTY_]=++goog.uidCounter_)},goog.hasUid=function(o){return!!o[goog.UID_PROPERTY_]},goog.removeUid=function(o){o!==null&&"removeAttribute"in o&&o.removeAttribute(goog.UID_PROPERTY_);try{delete o[goog.UID_PROPERTY_]}catch{}},goog.UID_PROPERTY_="closure_uid_"+(1e9*Math.random()>>>0),goog.uidCounter_=0,goog.getHashCode=goog.getUid,goog.removeHashCode=goog.removeUid,goog.cloneObject=function(o){var s=goog.typeOf(o);if(s=="object"||s=="array"){if(typeof o.clone=="function")return o.clone();s=s=="array"?[]:{};for(var _ in o)s[_]=goog.cloneObject(o[_]);return s}return o},goog.bindNative_=function(o,s,_){return o.call.apply(o.bind,arguments)},goog.bindJs_=function(o,s,_){if(!o)throw Error();if(2_?Math.max(0,o.length+_):_,typeof o=="string")return typeof s!="string"||s.length!=1?-1:o.indexOf(s,_);for(;__&&(_=Math.max(0,o.length+_)),typeof o=="string")return typeof s!="string"||s.length!=1?-1:o.lastIndexOf(s,_);for(;0<=_;_--)if(_ in o&&o[_]===s)return _;return-1},goog.array.forEach=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.forEach)?function(o,s,_){goog.asserts.assert(o.length!=null),Array.prototype.forEach.call(o,s,_)}:function(o,s,_){for(var j=o.length,$=typeof o=="string"?o.split(""):o,_e=0;_es?null:typeof o=="string"?o.charAt(s):o[s]},goog.array.findIndex=function(o,s,_){for(var j=o.length,$=typeof o=="string"?o.split(""):o,_e=0;_es?null:typeof o=="string"?o.charAt(s):o[s]},goog.array.findIndexRight=function(o,s,_){var j=o.length,$=typeof o=="string"?o.split(""):o;for(--j;0<=j;j--)if(j in $&&s.call(_,$[j],j,o))return j;return-1},goog.array.contains=function(o,s){return 0<=goog.array.indexOf(o,s)},goog.array.isEmpty=function(o){return o.length==0},goog.array.clear=function(o){if(!Array.isArray(o))for(var s=o.length-1;0<=s;s--)delete o[s];o.length=0},goog.array.insert=function(o,s){goog.array.contains(o,s)||o.push(s)},goog.array.insertAt=function(o,s,_){goog.array.splice(o,_,0,s)},goog.array.insertArrayAt=function(o,s,_){goog.partial(goog.array.splice,o,_,0).apply(null,s)},goog.array.insertBefore=function(o,s,_){var j;arguments.length==2||0>(j=goog.array.indexOf(o,_))?o.push(s):goog.array.insertAt(o,s,j)},goog.array.remove=function(o,s){s=goog.array.indexOf(o,s);var _;return(_=0<=s)&&goog.array.removeAt(o,s),_},goog.array.removeLast=function(o,s){return s=goog.array.lastIndexOf(o,s),0<=s?(goog.array.removeAt(o,s),!0):!1},goog.array.removeAt=function(o,s){return goog.asserts.assert(o.length!=null),Array.prototype.splice.call(o,s,1).length==1},goog.array.removeIf=function(o,s,_){return s=goog.array.findIndex(o,s,_),0<=s?(goog.array.removeAt(o,s),!0):!1},goog.array.removeAllIf=function(o,s,_){var j=0;return goog.array.forEachRight(o,function($,_e){s.call(_,$,_e,o)&&goog.array.removeAt(o,_e)&&j++}),j},goog.array.concat=function(o){return Array.prototype.concat.apply([],arguments)},goog.array.join=function(o){return Array.prototype.concat.apply([],arguments)},goog.array.toArray=function(o){var s=o.length;if(0=arguments.length?Array.prototype.slice.call(o,s):Array.prototype.slice.call(o,s,_)},goog.array.removeDuplicates=function(o,s,_){s=s||o;var j=function(nt){return goog.isObject(nt)?"o"+goog.getUid(nt):(typeof nt).charAt(0)+nt};_=_||j,j={};for(var $=0,_e=0;_e>>1),rt=_?s.call($,o[nt],nt,o):s(j,o[nt]);0s?1:o_?(goog.array.insertAt(o,s,-(_+1)),!0):!1},goog.array.binaryRemove=function(o,s,_){return s=goog.array.binarySearch(o,s,_),0<=s?goog.array.removeAt(o,s):!1},goog.array.bucket=function(o,s,_){for(var j={},$=0;$_*(_e-$))return[];if(0<_)for(o=$;o<_e;o+=_)j.push(o);else for(o=$;o>_e;o+=_)j.push(o);return j},goog.array.repeat=function(o,s){for(var _=[],j=0;js&&Array.prototype.push.apply(o,o.splice(0,-s))),o},goog.array.moveItem=function(o,s,_){goog.asserts.assert(0<=s&&s>=8),s[_++]=$}return s},goog.crypt.byteArrayToString=function(o){if(8192>=o.length)return String.fromCharCode.apply(null,o);for(var s="",_=0;_$?s[_++]=$:(2048>$?s[_++]=$>>6|192:(($&64512)==55296&&j+1>18|240,s[_++]=$>>12&63|128):s[_++]=$>>12|224,s[_++]=$>>6&63|128),s[_++]=$&63|128)}return s},goog.crypt.utf8ByteArrayToString=function(o){for(var s=[],_=0,j=0;_$)s[j++]=String.fromCharCode($);else if(191<$&&224>$){var _e=o[_++];s[j++]=String.fromCharCode(($&31)<<6|_e&63)}else if(239<$&&365>$){_e=o[_++];var et=o[_++],tt=o[_++];$=(($&7)<<18|(_e&63)<<12|(et&63)<<6|tt&63)-65536,s[j++]=String.fromCharCode(55296+($>>10)),s[j++]=String.fromCharCode(56320+($&1023))}else _e=o[_++],et=o[_++],s[j++]=String.fromCharCode(($&15)<<12|(_e&63)<<6|et&63)}return s.join("")},goog.crypt.xorByteArray=function(o,s){goog.asserts.assert(o.length==s.length,"XOR array lengths must match");for(var _=[],j=0;j"}else return o===void 0?"undefined":o===null?"null":typeof o},goog.dom.asserts.getWindow_=function(o){try{var s=o&&o.ownerDocument,_=s&&(s.defaultView||s.parentWindow);if(_=_||goog.global,_.Element&&_.Location)return _}catch{}return null},goog.functions={},goog.functions.constant=function(o){return function(){return o}},goog.functions.FALSE=function(){return!1},goog.functions.TRUE=function(){return!0},goog.functions.NULL=function(){return null},goog.functions.identity=function(o,s){return o},goog.functions.error=function(o){return function(){throw Error(o)}},goog.functions.fail=function(o){return function(){throw o}},goog.functions.lock=function(o,s){return s=s||0,function(){return o.apply(this,Array.prototype.slice.call(arguments,0,s))}},goog.functions.nth=function(o){return function(){return arguments[o]}},goog.functions.partialRight=function(o,s){var _=Array.prototype.slice.call(arguments,1);return function(){var j=Array.prototype.slice.call(arguments);return j.push.apply(j,_),o.apply(this,j)}},goog.functions.withReturnValue=function(o,s){return goog.functions.sequence(o,goog.functions.constant(s))},goog.functions.equalTo=function(o,s){return function(_){return s?o==_:o===_}},goog.functions.compose=function(o,s){var _=arguments,j=_.length;return function(){var $;j&&($=_[j-1].apply(this,arguments));for(var _e=j-2;0<=_e;_e--)$=_[_e].call(this,$);return $}},goog.functions.sequence=function(o){var s=arguments,_=s.length;return function(){for(var j,$=0;$<_;$++)j=s[$].apply(this,arguments);return j}},goog.functions.and=function(o){var s=arguments,_=s.length;return function(){for(var j=0;j<_;j++)if(!s[j].apply(this,arguments))return!1;return!0}},goog.functions.or=function(o){var s=arguments,_=s.length;return function(){for(var j=0;j<_;j++)if(s[j].apply(this,arguments))return!0;return!1}},goog.functions.not=function(o){return function(){return!o.apply(this,arguments)}},goog.functions.create=function(o,s){var _=function(){};return _.prototype=o.prototype,_=new _,o.apply(_,Array.prototype.slice.call(arguments,1)),_},goog.functions.CACHE_RETURN_VALUE=!0,goog.functions.cacheReturnValue=function(o){var s=!1,_;return function(){return goog.functions.CACHE_RETURN_VALUE?(s||(_=o(),s=!0),_):o()}},goog.functions.once=function(o){var s=o;return function(){if(s){var _=s;s=null,_()}}},goog.functions.debounce=function(o,s,_){var j=0;return function($){goog.global.clearTimeout(j);var _e=arguments;j=goog.global.setTimeout(function(){o.apply(_,_e)},s)}},goog.functions.throttle=function(o,s,_){var j=0,$=!1,_e=[],et=function(){j=0,$&&($=!1,tt())},tt=function(){j=goog.global.setTimeout(et,s),o.apply(_,_e)};return function(nt){_e=arguments,j?$=!0:tt()}},goog.functions.rateLimit=function(o,s,_){var j=0,$=function(){j=0};return function(_e){j||(j=goog.global.setTimeout($,s),o.apply(_,arguments))}},goog.dom.HtmlElement=function(){},goog.dom.TagName=function(o){this.tagName_=o},goog.dom.TagName.prototype.toString=function(){return this.tagName_},goog.dom.TagName.A=new goog.dom.TagName("A"),goog.dom.TagName.ABBR=new goog.dom.TagName("ABBR"),goog.dom.TagName.ACRONYM=new goog.dom.TagName("ACRONYM"),goog.dom.TagName.ADDRESS=new goog.dom.TagName("ADDRESS"),goog.dom.TagName.APPLET=new goog.dom.TagName("APPLET"),goog.dom.TagName.AREA=new goog.dom.TagName("AREA"),goog.dom.TagName.ARTICLE=new goog.dom.TagName("ARTICLE"),goog.dom.TagName.ASIDE=new goog.dom.TagName("ASIDE"),goog.dom.TagName.AUDIO=new goog.dom.TagName("AUDIO"),goog.dom.TagName.B=new goog.dom.TagName("B"),goog.dom.TagName.BASE=new goog.dom.TagName("BASE"),goog.dom.TagName.BASEFONT=new goog.dom.TagName("BASEFONT"),goog.dom.TagName.BDI=new goog.dom.TagName("BDI"),goog.dom.TagName.BDO=new goog.dom.TagName("BDO"),goog.dom.TagName.BIG=new goog.dom.TagName("BIG"),goog.dom.TagName.BLOCKQUOTE=new goog.dom.TagName("BLOCKQUOTE"),goog.dom.TagName.BODY=new goog.dom.TagName("BODY"),goog.dom.TagName.BR=new goog.dom.TagName("BR"),goog.dom.TagName.BUTTON=new goog.dom.TagName("BUTTON"),goog.dom.TagName.CANVAS=new goog.dom.TagName("CANVAS"),goog.dom.TagName.CAPTION=new goog.dom.TagName("CAPTION"),goog.dom.TagName.CENTER=new goog.dom.TagName("CENTER"),goog.dom.TagName.CITE=new goog.dom.TagName("CITE"),goog.dom.TagName.CODE=new goog.dom.TagName("CODE"),goog.dom.TagName.COL=new goog.dom.TagName("COL"),goog.dom.TagName.COLGROUP=new goog.dom.TagName("COLGROUP"),goog.dom.TagName.COMMAND=new goog.dom.TagName("COMMAND"),goog.dom.TagName.DATA=new goog.dom.TagName("DATA"),goog.dom.TagName.DATALIST=new goog.dom.TagName("DATALIST"),goog.dom.TagName.DD=new goog.dom.TagName("DD"),goog.dom.TagName.DEL=new goog.dom.TagName("DEL"),goog.dom.TagName.DETAILS=new goog.dom.TagName("DETAILS"),goog.dom.TagName.DFN=new goog.dom.TagName("DFN"),goog.dom.TagName.DIALOG=new goog.dom.TagName("DIALOG"),goog.dom.TagName.DIR=new goog.dom.TagName("DIR"),goog.dom.TagName.DIV=new goog.dom.TagName("DIV"),goog.dom.TagName.DL=new goog.dom.TagName("DL"),goog.dom.TagName.DT=new goog.dom.TagName("DT"),goog.dom.TagName.EM=new goog.dom.TagName("EM"),goog.dom.TagName.EMBED=new goog.dom.TagName("EMBED"),goog.dom.TagName.FIELDSET=new goog.dom.TagName("FIELDSET"),goog.dom.TagName.FIGCAPTION=new goog.dom.TagName("FIGCAPTION"),goog.dom.TagName.FIGURE=new goog.dom.TagName("FIGURE"),goog.dom.TagName.FONT=new goog.dom.TagName("FONT"),goog.dom.TagName.FOOTER=new goog.dom.TagName("FOOTER"),goog.dom.TagName.FORM=new goog.dom.TagName("FORM"),goog.dom.TagName.FRAME=new goog.dom.TagName("FRAME"),goog.dom.TagName.FRAMESET=new goog.dom.TagName("FRAMESET"),goog.dom.TagName.H1=new goog.dom.TagName("H1"),goog.dom.TagName.H2=new goog.dom.TagName("H2"),goog.dom.TagName.H3=new goog.dom.TagName("H3"),goog.dom.TagName.H4=new goog.dom.TagName("H4"),goog.dom.TagName.H5=new goog.dom.TagName("H5"),goog.dom.TagName.H6=new goog.dom.TagName("H6"),goog.dom.TagName.HEAD=new goog.dom.TagName("HEAD"),goog.dom.TagName.HEADER=new goog.dom.TagName("HEADER"),goog.dom.TagName.HGROUP=new goog.dom.TagName("HGROUP"),goog.dom.TagName.HR=new goog.dom.TagName("HR"),goog.dom.TagName.HTML=new goog.dom.TagName("HTML"),goog.dom.TagName.I=new goog.dom.TagName("I"),goog.dom.TagName.IFRAME=new goog.dom.TagName("IFRAME"),goog.dom.TagName.IMG=new goog.dom.TagName("IMG"),goog.dom.TagName.INPUT=new goog.dom.TagName("INPUT"),goog.dom.TagName.INS=new goog.dom.TagName("INS"),goog.dom.TagName.ISINDEX=new goog.dom.TagName("ISINDEX"),goog.dom.TagName.KBD=new goog.dom.TagName("KBD"),goog.dom.TagName.KEYGEN=new goog.dom.TagName("KEYGEN"),goog.dom.TagName.LABEL=new goog.dom.TagName("LABEL"),goog.dom.TagName.LEGEND=new goog.dom.TagName("LEGEND"),goog.dom.TagName.LI=new goog.dom.TagName("LI"),goog.dom.TagName.LINK=new goog.dom.TagName("LINK"),goog.dom.TagName.MAIN=new goog.dom.TagName("MAIN"),goog.dom.TagName.MAP=new goog.dom.TagName("MAP"),goog.dom.TagName.MARK=new goog.dom.TagName("MARK"),goog.dom.TagName.MATH=new goog.dom.TagName("MATH"),goog.dom.TagName.MENU=new goog.dom.TagName("MENU"),goog.dom.TagName.MENUITEM=new goog.dom.TagName("MENUITEM"),goog.dom.TagName.META=new goog.dom.TagName("META"),goog.dom.TagName.METER=new goog.dom.TagName("METER"),goog.dom.TagName.NAV=new goog.dom.TagName("NAV"),goog.dom.TagName.NOFRAMES=new goog.dom.TagName("NOFRAMES"),goog.dom.TagName.NOSCRIPT=new goog.dom.TagName("NOSCRIPT"),goog.dom.TagName.OBJECT=new goog.dom.TagName("OBJECT"),goog.dom.TagName.OL=new goog.dom.TagName("OL"),goog.dom.TagName.OPTGROUP=new goog.dom.TagName("OPTGROUP"),goog.dom.TagName.OPTION=new goog.dom.TagName("OPTION"),goog.dom.TagName.OUTPUT=new goog.dom.TagName("OUTPUT"),goog.dom.TagName.P=new goog.dom.TagName("P"),goog.dom.TagName.PARAM=new goog.dom.TagName("PARAM"),goog.dom.TagName.PICTURE=new goog.dom.TagName("PICTURE"),goog.dom.TagName.PRE=new goog.dom.TagName("PRE"),goog.dom.TagName.PROGRESS=new goog.dom.TagName("PROGRESS"),goog.dom.TagName.Q=new goog.dom.TagName("Q"),goog.dom.TagName.RP=new goog.dom.TagName("RP"),goog.dom.TagName.RT=new goog.dom.TagName("RT"),goog.dom.TagName.RTC=new goog.dom.TagName("RTC"),goog.dom.TagName.RUBY=new goog.dom.TagName("RUBY"),goog.dom.TagName.S=new goog.dom.TagName("S"),goog.dom.TagName.SAMP=new goog.dom.TagName("SAMP"),goog.dom.TagName.SCRIPT=new goog.dom.TagName("SCRIPT"),goog.dom.TagName.SECTION=new goog.dom.TagName("SECTION"),goog.dom.TagName.SELECT=new goog.dom.TagName("SELECT"),goog.dom.TagName.SMALL=new goog.dom.TagName("SMALL"),goog.dom.TagName.SOURCE=new goog.dom.TagName("SOURCE"),goog.dom.TagName.SPAN=new goog.dom.TagName("SPAN"),goog.dom.TagName.STRIKE=new goog.dom.TagName("STRIKE"),goog.dom.TagName.STRONG=new goog.dom.TagName("STRONG"),goog.dom.TagName.STYLE=new goog.dom.TagName("STYLE"),goog.dom.TagName.SUB=new goog.dom.TagName("SUB"),goog.dom.TagName.SUMMARY=new goog.dom.TagName("SUMMARY"),goog.dom.TagName.SUP=new goog.dom.TagName("SUP"),goog.dom.TagName.SVG=new goog.dom.TagName("SVG"),goog.dom.TagName.TABLE=new goog.dom.TagName("TABLE"),goog.dom.TagName.TBODY=new goog.dom.TagName("TBODY"),goog.dom.TagName.TD=new goog.dom.TagName("TD"),goog.dom.TagName.TEMPLATE=new goog.dom.TagName("TEMPLATE"),goog.dom.TagName.TEXTAREA=new goog.dom.TagName("TEXTAREA"),goog.dom.TagName.TFOOT=new goog.dom.TagName("TFOOT"),goog.dom.TagName.TH=new goog.dom.TagName("TH"),goog.dom.TagName.THEAD=new goog.dom.TagName("THEAD"),goog.dom.TagName.TIME=new goog.dom.TagName("TIME"),goog.dom.TagName.TITLE=new goog.dom.TagName("TITLE"),goog.dom.TagName.TR=new goog.dom.TagName("TR"),goog.dom.TagName.TRACK=new goog.dom.TagName("TRACK"),goog.dom.TagName.TT=new goog.dom.TagName("TT"),goog.dom.TagName.U=new goog.dom.TagName("U"),goog.dom.TagName.UL=new goog.dom.TagName("UL"),goog.dom.TagName.VAR=new goog.dom.TagName("VAR"),goog.dom.TagName.VIDEO=new goog.dom.TagName("VIDEO"),goog.dom.TagName.WBR=new goog.dom.TagName("WBR"),goog.dom.tags={},goog.dom.tags.VOID_TAGS_={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},goog.dom.tags.isVoidTag=function(o){return goog.dom.tags.VOID_TAGS_[o]===!0},goog.html={},goog.html.trustedtypes={},goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY=goog.TRUSTED_TYPES_POLICY_NAME?goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME+"#html"):null,goog.string={},goog.string.TypedString=function(){},goog.string.Const=function(o,s){this.stringConstValueWithSecurityContract__googStringSecurityPrivate_=o===goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_&&s||"",this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_=goog.string.Const.TYPE_MARKER_},goog.string.Const.prototype.implementsGoogStringTypedString=!0,goog.string.Const.prototype.getTypedStringValue=function(){return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_},goog.DEBUG&&(goog.string.Const.prototype.toString=function(){return"Const{"+this.stringConstValueWithSecurityContract__googStringSecurityPrivate_+"}"}),goog.string.Const.unwrap=function(o){return o instanceof goog.string.Const&&o.constructor===goog.string.Const&&o.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_===goog.string.Const.TYPE_MARKER_?o.stringConstValueWithSecurityContract__googStringSecurityPrivate_:(goog.asserts.fail("expected object of type Const, got '"+o+"'"),"type_error:Const")},goog.string.Const.from=function(o){return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_,o)},goog.string.Const.TYPE_MARKER_={},goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_={},goog.string.Const.EMPTY=goog.string.Const.from(""),goog.html.SafeScript=function(){this.privateDoNotAccessOrElseSafeScriptWrappedValue_="",this.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_},goog.html.SafeScript.prototype.implementsGoogStringTypedString=!0,goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_={},goog.html.SafeScript.fromConstant=function(o){return o=goog.string.Const.unwrap(o),o.length===0?goog.html.SafeScript.EMPTY:goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeScript.fromConstantAndArgs=function(o,s){for(var _=[],j=1;jo?goog.i18n.bidi.Dir.RTL:s?null:goog.i18n.bidi.Dir.NEUTRAL:o==null?null:o?goog.i18n.bidi.Dir.RTL:goog.i18n.bidi.Dir.LTR},goog.i18n.bidi.ltrChars_="A-Za-zÀ-ÖØ-öø-ʸ̀-֐ऀ-῿‎Ⰰ-\uD801\uD804-\uD839\uD83C-\uDBFF豈-﬜︀-﹯﻽-￿",goog.i18n.bidi.rtlChars_="֑-ۯۺ-ࣿ‏\uD802-\uD803\uD83A-\uD83Bיִ-﷿ﹰ-ﻼ",goog.i18n.bidi.htmlSkipReg_=/<[^>]*>|&[^;]+;/g,goog.i18n.bidi.stripHtmlIfNeeded_=function(o,s){return s?o.replace(goog.i18n.bidi.htmlSkipReg_,""):o},goog.i18n.bidi.rtlCharReg_=new RegExp("["+goog.i18n.bidi.rtlChars_+"]"),goog.i18n.bidi.ltrCharReg_=new RegExp("["+goog.i18n.bidi.ltrChars_+"]"),goog.i18n.bidi.hasAnyRtl=function(o,s){return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.hasRtlChar=goog.i18n.bidi.hasAnyRtl,goog.i18n.bidi.hasAnyLtr=function(o,s){return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.ltrRe_=new RegExp("^["+goog.i18n.bidi.ltrChars_+"]"),goog.i18n.bidi.rtlRe_=new RegExp("^["+goog.i18n.bidi.rtlChars_+"]"),goog.i18n.bidi.isRtlChar=function(o){return goog.i18n.bidi.rtlRe_.test(o)},goog.i18n.bidi.isLtrChar=function(o){return goog.i18n.bidi.ltrRe_.test(o)},goog.i18n.bidi.isNeutralChar=function(o){return!goog.i18n.bidi.isLtrChar(o)&&!goog.i18n.bidi.isRtlChar(o)},goog.i18n.bidi.ltrDirCheckRe_=new RegExp("^[^"+goog.i18n.bidi.rtlChars_+"]*["+goog.i18n.bidi.ltrChars_+"]"),goog.i18n.bidi.rtlDirCheckRe_=new RegExp("^[^"+goog.i18n.bidi.ltrChars_+"]*["+goog.i18n.bidi.rtlChars_+"]"),goog.i18n.bidi.startsWithRtl=function(o,s){return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.isRtlText=goog.i18n.bidi.startsWithRtl,goog.i18n.bidi.startsWithLtr=function(o,s){return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.isLtrText=goog.i18n.bidi.startsWithLtr,goog.i18n.bidi.isRequiredLtrRe_=/^http:\/\/.*/,goog.i18n.bidi.isNeutralText=function(o,s){return o=goog.i18n.bidi.stripHtmlIfNeeded_(o,s),goog.i18n.bidi.isRequiredLtrRe_.test(o)||!goog.i18n.bidi.hasAnyLtr(o)&&!goog.i18n.bidi.hasAnyRtl(o)},goog.i18n.bidi.ltrExitDirCheckRe_=new RegExp("["+goog.i18n.bidi.ltrChars_+"][^"+goog.i18n.bidi.rtlChars_+"]*$"),goog.i18n.bidi.rtlExitDirCheckRe_=new RegExp("["+goog.i18n.bidi.rtlChars_+"][^"+goog.i18n.bidi.ltrChars_+"]*$"),goog.i18n.bidi.endsWithLtr=function(o,s){return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.isLtrExitText=goog.i18n.bidi.endsWithLtr,goog.i18n.bidi.endsWithRtl=function(o,s){return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(o,s))},goog.i18n.bidi.isRtlExitText=goog.i18n.bidi.endsWithRtl,goog.i18n.bidi.rtlLocalesRe_=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i,goog.i18n.bidi.isRtlLanguage=function(o){return goog.i18n.bidi.rtlLocalesRe_.test(o)},goog.i18n.bidi.bracketGuardTextRe_=/(\(.*?\)+)|(\[.*?\]+)|(\{.*?\}+)|(<.*?>+)/g,goog.i18n.bidi.guardBracketInText=function(o,s){return s=(s===void 0?goog.i18n.bidi.hasAnyRtl(o):s)?goog.i18n.bidi.Format.RLM:goog.i18n.bidi.Format.LRM,o.replace(goog.i18n.bidi.bracketGuardTextRe_,s+"$&"+s)},goog.i18n.bidi.enforceRtlInHtml=function(o){return o.charAt(0)=="<"?o.replace(/<\w+/,"$& dir=rtl"):` +`+o+""},goog.i18n.bidi.enforceRtlInText=function(o){return goog.i18n.bidi.Format.RLE+o+goog.i18n.bidi.Format.PDF},goog.i18n.bidi.enforceLtrInHtml=function(o){return o.charAt(0)=="<"?o.replace(/<\w+/,"$& dir=ltr"):` +`+o+""},goog.i18n.bidi.enforceLtrInText=function(o){return goog.i18n.bidi.Format.LRE+o+goog.i18n.bidi.Format.PDF},goog.i18n.bidi.dimensionsRe_=/:\s*([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)/g,goog.i18n.bidi.leftRe_=/left/gi,goog.i18n.bidi.rightRe_=/right/gi,goog.i18n.bidi.tempRe_=/%%%%/g,goog.i18n.bidi.mirrorCSS=function(o){return o.replace(goog.i18n.bidi.dimensionsRe_,":$1 $4 $3 $2").replace(goog.i18n.bidi.leftRe_,"%%%%").replace(goog.i18n.bidi.rightRe_,goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_,goog.i18n.bidi.RIGHT)},goog.i18n.bidi.doubleQuoteSubstituteRe_=/([\u0591-\u05f2])"/g,goog.i18n.bidi.singleQuoteSubstituteRe_=/([\u0591-\u05f2])'/g,goog.i18n.bidi.normalizeHebrewQuote=function(o){return o.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_,"$1״").replace(goog.i18n.bidi.singleQuoteSubstituteRe_,"$1׳")},goog.i18n.bidi.wordSeparatorRe_=/\s+/,goog.i18n.bidi.hasNumeralsRe_=/[\d\u06f0-\u06f9]/,goog.i18n.bidi.rtlDetectionThreshold_=.4,goog.i18n.bidi.estimateDirection=function(o,s){var _=0,j=0,$=!1;for(o=goog.i18n.bidi.stripHtmlIfNeeded_(o,s).split(goog.i18n.bidi.wordSeparatorRe_),s=0;sgoog.i18n.bidi.rtlDetectionThreshold_?goog.i18n.bidi.Dir.RTL:goog.i18n.bidi.Dir.LTR},goog.i18n.bidi.detectRtlDirectionality=function(o,s){return goog.i18n.bidi.estimateDirection(o,s)==goog.i18n.bidi.Dir.RTL},goog.i18n.bidi.setElementDirAndAlign=function(o,s){o&&(s=goog.i18n.bidi.toDir(s))&&(o.style.textAlign=s==goog.i18n.bidi.Dir.RTL?goog.i18n.bidi.RIGHT:goog.i18n.bidi.LEFT,o.dir=s==goog.i18n.bidi.Dir.RTL?"rtl":"ltr")},goog.i18n.bidi.setElementDirByTextDirectionality=function(o,s){switch(goog.i18n.bidi.estimateDirection(s)){case goog.i18n.bidi.Dir.LTR:o.dir="ltr";break;case goog.i18n.bidi.Dir.RTL:o.dir="rtl";break;default:o.removeAttribute("dir")}},goog.i18n.bidi.DirectionalString=function(){},goog.html.TrustedResourceUrl=function(o,s){this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_=o===goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_&&s||"",this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_},goog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString=!0,goog.html.TrustedResourceUrl.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString()},goog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString=!0,goog.html.TrustedResourceUrl.prototype.getDirection=function(){return goog.i18n.bidi.Dir.LTR},goog.html.TrustedResourceUrl.prototype.cloneWithParams=function(o,s){var _=goog.html.TrustedResourceUrl.unwrap(this);_=goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(_);var j=_[3]||"";return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(_[1]+goog.html.TrustedResourceUrl.stringifyParams_("?",_[2]||"",o)+goog.html.TrustedResourceUrl.stringifyParams_("#",j,s))},goog.DEBUG&&(goog.html.TrustedResourceUrl.prototype.toString=function(){return"TrustedResourceUrl{"+this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_+"}"}),goog.html.TrustedResourceUrl.unwrap=function(o){return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(o).toString()},goog.html.TrustedResourceUrl.unwrapTrustedScriptURL=function(o){return o instanceof goog.html.TrustedResourceUrl&&o.constructor===goog.html.TrustedResourceUrl&&o.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_?o.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_:(goog.asserts.fail("expected object of type TrustedResourceUrl, got '"+o+"' of type "+goog.typeOf(o)),"type_error:TrustedResourceUrl")},goog.html.TrustedResourceUrl.format=function(o,s){var _=goog.string.Const.unwrap(o);if(!goog.html.TrustedResourceUrl.BASE_URL_.test(_))throw Error("Invalid TrustedResourceUrl format: "+_);return o=_.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_,function(j,$){if(!Object.prototype.hasOwnProperty.call(s,$))throw Error('Found marker, "'+$+'", in format string, "'+_+'", but no valid label mapping found in args: '+JSON.stringify(s));return j=s[$],j instanceof goog.string.Const?goog.string.Const.unwrap(j):encodeURIComponent(String(j))}),goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.TrustedResourceUrl.FORMAT_MARKER_=/%{(\w+)}/g,goog.html.TrustedResourceUrl.BASE_URL_=/^((https:)?\/\/[0-9a-z.:[\]-]+\/|\/[^/\\]|[^:/\\%]+\/|[^:/\\%]*[?#]|about:blank#)/i,goog.html.TrustedResourceUrl.URL_PARAM_PARSER_=/^([^?#]*)(\?[^#]*)?(#[\s\S]*)?/,goog.html.TrustedResourceUrl.formatWithParams=function(o,s,_,j){return goog.html.TrustedResourceUrl.format(o,s).cloneWithParams(_,j)},goog.html.TrustedResourceUrl.fromConstant=function(o){return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(o))},goog.html.TrustedResourceUrl.fromConstants=function(o){for(var s="",_=0;_o.length?"&":"")+encodeURIComponent(j)+"="+encodeURIComponent(String(et)))}}return s},goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_={},goog.string.internal={},goog.string.internal.startsWith=function(o,s){return o.lastIndexOf(s,0)==0},goog.string.internal.endsWith=function(o,s){var _=o.length-s.length;return 0<=_&&o.indexOf(s,_)==_},goog.string.internal.caseInsensitiveStartsWith=function(o,s){return goog.string.internal.caseInsensitiveCompare(s,o.substr(0,s.length))==0},goog.string.internal.caseInsensitiveEndsWith=function(o,s){return goog.string.internal.caseInsensitiveCompare(s,o.substr(o.length-s.length,s.length))==0},goog.string.internal.caseInsensitiveEquals=function(o,s){return o.toLowerCase()==s.toLowerCase()},goog.string.internal.isEmptyOrWhitespace=function(o){return/^[\s\xa0]*$/.test(o)},goog.string.internal.trim=goog.TRUSTED_SITE&&String.prototype.trim?function(o){return o.trim()}:function(o){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(o)[1]},goog.string.internal.caseInsensitiveCompare=function(o,s){return o=String(o).toLowerCase(),s=String(s).toLowerCase(),o":"
")},goog.string.internal.htmlEscape=function(o,s){if(s)o=o.replace(goog.string.internal.AMP_RE_,"&").replace(goog.string.internal.LT_RE_,"<").replace(goog.string.internal.GT_RE_,">").replace(goog.string.internal.QUOT_RE_,""").replace(goog.string.internal.SINGLE_QUOTE_RE_,"'").replace(goog.string.internal.NULL_RE_,"�");else{if(!goog.string.internal.ALL_RE_.test(o))return o;o.indexOf("&")!=-1&&(o=o.replace(goog.string.internal.AMP_RE_,"&")),o.indexOf("<")!=-1&&(o=o.replace(goog.string.internal.LT_RE_,"<")),o.indexOf(">")!=-1&&(o=o.replace(goog.string.internal.GT_RE_,">")),o.indexOf('"')!=-1&&(o=o.replace(goog.string.internal.QUOT_RE_,""")),o.indexOf("'")!=-1&&(o=o.replace(goog.string.internal.SINGLE_QUOTE_RE_,"'")),o.indexOf("\0")!=-1&&(o=o.replace(goog.string.internal.NULL_RE_,"�"))}return o},goog.string.internal.AMP_RE_=/&/g,goog.string.internal.LT_RE_=//g,goog.string.internal.QUOT_RE_=/"/g,goog.string.internal.SINGLE_QUOTE_RE_=/'/g,goog.string.internal.NULL_RE_=/\x00/g,goog.string.internal.ALL_RE_=/[\x00&<>"']/,goog.string.internal.whitespaceEscape=function(o,s){return goog.string.internal.newLineToBr(o.replace(/ /g,"  "),s)},goog.string.internal.contains=function(o,s){return o.indexOf(s)!=-1},goog.string.internal.caseInsensitiveContains=function(o,s){return goog.string.internal.contains(o.toLowerCase(),s.toLowerCase())},goog.string.internal.compareVersions=function(o,s){var _=0;o=goog.string.internal.trim(String(o)).split("."),s=goog.string.internal.trim(String(s)).split(".");for(var j=Math.max(o.length,s.length),$=0;_==0&&$s?1:0},goog.html.SafeUrl=function(o,s){this.privateDoNotAccessOrElseSafeUrlWrappedValue_=o===goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_&&s||"",this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_},goog.html.SafeUrl.INNOCUOUS_STRING="about:invalid#zClosurez",goog.html.SafeUrl.prototype.implementsGoogStringTypedString=!0,goog.html.SafeUrl.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString()},goog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString=!0,goog.html.SafeUrl.prototype.getDirection=function(){return goog.i18n.bidi.Dir.LTR},goog.DEBUG&&(goog.html.SafeUrl.prototype.toString=function(){return"SafeUrl{"+this.privateDoNotAccessOrElseSafeUrlWrappedValue_+"}"}),goog.html.SafeUrl.unwrap=function(o){return o instanceof goog.html.SafeUrl&&o.constructor===goog.html.SafeUrl&&o.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_?o.privateDoNotAccessOrElseSafeUrlWrappedValue_:(goog.asserts.fail("expected object of type SafeUrl, got '"+o+"' of type "+goog.typeOf(o)),"type_error:SafeUrl")},goog.html.SafeUrl.fromConstant=function(o){return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(o))},goog.html.SAFE_MIME_TYPE_PATTERN_=/^(?:audio\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-matroska|x-wav|wav|webm)|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\/csv|video\/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))(?:;\w+=(?:\w+|"[\w;,= ]+"))*$/i,goog.html.SafeUrl.isSafeMimeType=function(o){return goog.html.SAFE_MIME_TYPE_PATTERN_.test(o)},goog.html.SafeUrl.fromBlob=function(o){return o=goog.html.SafeUrl.isSafeMimeType(o.type)?goog.fs.url.createObjectUrl(o):goog.html.SafeUrl.INNOCUOUS_STRING,goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.fromMediaSource=function(o){return goog.asserts.assert("MediaSource"in goog.global,"No support for MediaSource"),o=o instanceof MediaSource?goog.fs.url.createObjectUrl(o):goog.html.SafeUrl.INNOCUOUS_STRING,goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.DATA_URL_PATTERN_=/^data:(.*);base64,[a-z0-9+\/]+=*$/i,goog.html.SafeUrl.fromDataUrl=function(o){o=o.replace(/(%0A|%0D)/g,"");var s=o.match(goog.html.DATA_URL_PATTERN_);return s=s&&goog.html.SafeUrl.isSafeMimeType(s[1]),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(s?o:goog.html.SafeUrl.INNOCUOUS_STRING)},goog.html.SafeUrl.fromTelUrl=function(o){return goog.string.internal.caseInsensitiveStartsWith(o,"tel:")||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SIP_URL_PATTERN_=/^sip[s]?:[+a-z0-9_.!$%&'*\/=^`{|}~-]+@([a-z0-9-]+\.)+[a-z0-9]{2,63}$/i,goog.html.SafeUrl.fromSipUrl=function(o){return goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(o))||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.fromFacebookMessengerUrl=function(o){return goog.string.internal.caseInsensitiveStartsWith(o,"fb-messenger://share")||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.fromWhatsAppUrl=function(o){return goog.string.internal.caseInsensitiveStartsWith(o,"whatsapp://send")||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.fromSmsUrl=function(o){return goog.string.internal.caseInsensitiveStartsWith(o,"sms:")&&goog.html.SafeUrl.isSmsUrlBodyValid_(o)||(o=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(o)},goog.html.SafeUrl.isSmsUrlBodyValid_=function(o){var s=o.indexOf("#");if(0+~[\]()=^$|]+$/.test(_))throw Error("Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|] and strings, got: "+o);if(!goog.html.SafeStyleSheet.hasBalancedBrackets_(_))throw Error("() and [] in selector must be balanced, got: "+o);return s instanceof goog.html.SafeStyle||(s=goog.html.SafeStyle.create(s)),o=o+"{"+goog.html.SafeStyle.unwrap(s).replace(/",null)},goog.html.SafeHtml.VALID_NAMES_IN_TAG_=/^[a-zA-Z0-9-]+$/,goog.html.SafeHtml.URL_ATTRIBUTES_={action:!0,cite:!0,data:!0,formaction:!0,href:!0,manifest:!0,poster:!0,src:!0},goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_={APPLET:!0,BASE:!0,EMBED:!0,IFRAME:!0,LINK:!0,MATH:!0,META:!0,OBJECT:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0},goog.html.SafeHtml.create=function(o,s,_){return goog.html.SafeHtml.verifyTagName(String(o)),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(o),s,_)},goog.html.SafeHtml.verifyTagName=function(o){if(!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(o))throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?"Invalid tag name <"+o+">.":"");if(o.toUpperCase()in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_)throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?"Tag name <"+o+"> is not allowed for SafeHtml.":"")},goog.html.SafeHtml.createIframe=function(o,s,_,j){o&&goog.html.TrustedResourceUrl.unwrap(o);var $={};return $.src=o||null,$.srcdoc=s&&goog.html.SafeHtml.unwrap(s),o=goog.html.SafeHtml.combineAttributes($,{sandbox:""},_),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",o,j)},goog.html.SafeHtml.createSandboxIframe=function(o,s,_,j){if(!goog.html.SafeHtml.canUseSandboxIframe())throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?"The browser does not support sandboxed iframes.":"");var $={};return $.src=o?goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(o)):null,$.srcdoc=s||null,$.sandbox="",o=goog.html.SafeHtml.combineAttributes($,{},_),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",o,j)},goog.html.SafeHtml.canUseSandboxIframe=function(){return goog.global.HTMLIFrameElement&&"sandbox"in goog.global.HTMLIFrameElement.prototype},goog.html.SafeHtml.createScriptSrc=function(o,s){return goog.html.TrustedResourceUrl.unwrap(o),o=goog.html.SafeHtml.combineAttributes({src:o},{},s),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("script",o)},goog.html.SafeHtml.createScript=function(o,s){for(var _ in s){var j=_.toLowerCase();if(j=="language"||j=="src"||j=="text"||j=="type")throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Cannot set "'+j+'" attribute':"")}for(_="",o=goog.array.concat(o),j=0;j does not allow content."),$+=">"):(j=goog.html.SafeHtml.concat(_),$+=">"+goog.html.SafeHtml.unwrap(j)+"",j=j.getDirection()),(o=s&&s.dir)&&(j=/^(ltr|rtl|auto)$/i.test(o)?goog.i18n.bidi.Dir.NEUTRAL:null),goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse($,j)},goog.html.SafeHtml.stringifyAttributes=function(o,s){var _="";if(s)for(var j in s){if(!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(j))throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Invalid attribute name "'+j+'".':"");var $=s[j];$!=null&&(_+=" "+goog.html.SafeHtml.getAttrNameAndValue_(o,j,$))}return _},goog.html.SafeHtml.combineAttributes=function(o,s,_){var j={},$;for($ in o)goog.asserts.assert($.toLowerCase()==$,"Must be lower case"),j[$]=o[$];for($ in s)goog.asserts.assert($.toLowerCase()==$,"Must be lower case"),j[$]=s[$];if(_)for($ in _){var _e=$.toLowerCase();if(_e in o)throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Cannot override "'+_e+'" attribute, got "'+$+'" with value "'+_[$]+'"':"");_e in s&&delete j[_e],j[$]=_[$]}return j},goog.html.SafeHtml.DOCTYPE_HTML=goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("",goog.i18n.bidi.Dir.NEUTRAL),goog.html.SafeHtml.EMPTY=goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("",goog.i18n.bidi.Dir.NEUTRAL),goog.html.SafeHtml.BR=goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("
",goog.i18n.bidi.Dir.NEUTRAL),goog.html.uncheckedconversions={},goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract=function(o,s,_){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(s,_||null)},goog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(s)},goog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(s)},goog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(s)},goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(s)},goog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract=function(o,s){return goog.asserts.assertString(goog.string.Const.unwrap(o),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(o)),"must provide non-empty justification"),goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(s)},goog.dom.safe={},goog.dom.safe.InsertAdjacentHtmlPosition={AFTERBEGIN:"afterbegin",AFTEREND:"afterend",BEFOREBEGIN:"beforebegin",BEFOREEND:"beforeend"},goog.dom.safe.insertAdjacentHtml=function(o,s,_){o.insertAdjacentHTML(s,goog.html.SafeHtml.unwrapTrustedHTML(_))},goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_={MATH:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0},goog.dom.safe.isInnerHtmlCleanupRecursive_=goog.functions.cacheReturnValue(function(){if(goog.DEBUG&&typeof document>"u")return!1;var o=document.createElement("div"),s=document.createElement("div");return s.appendChild(document.createElement("div")),o.appendChild(s),goog.DEBUG&&!o.firstChild?!1:(s=o.firstChild.firstChild,o.innerHTML=goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY),!s.parentElement)}),goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse=function(o,s){if(goog.dom.safe.isInnerHtmlCleanupRecursive_())for(;o.lastChild;)o.removeChild(o.lastChild);o.innerHTML=goog.html.SafeHtml.unwrapTrustedHTML(s)},goog.dom.safe.setInnerHtml=function(o,s){if(goog.asserts.ENABLE_ASSERTS){var _=o.tagName.toUpperCase();if(goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[_])throw Error("goog.dom.safe.setInnerHtml cannot be used to set content of "+o.tagName+".")}goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(o,s)},goog.dom.safe.setOuterHtml=function(o,s){o.outerHTML=goog.html.SafeHtml.unwrapTrustedHTML(s)},goog.dom.safe.setFormElementAction=function(o,s){s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),goog.dom.asserts.assertIsHTMLFormElement(o).action=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setButtonFormAction=function(o,s){s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),goog.dom.asserts.assertIsHTMLButtonElement(o).formAction=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setInputFormAction=function(o,s){s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),goog.dom.asserts.assertIsHTMLInputElement(o).formAction=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setStyle=function(o,s){o.style.cssText=goog.html.SafeStyle.unwrap(s)},goog.dom.safe.documentWrite=function(o,s){o.write(goog.html.SafeHtml.unwrapTrustedHTML(s))},goog.dom.safe.setAnchorHref=function(o,s){goog.dom.asserts.assertIsHTMLAnchorElement(o),s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),o.href=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setImageSrc=function(o,s){if(goog.dom.asserts.assertIsHTMLImageElement(o),!(s instanceof goog.html.SafeUrl)){var _=/^data:image\//i.test(s);s=goog.html.SafeUrl.sanitizeAssertUnchanged(s,_)}o.src=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setAudioSrc=function(o,s){if(goog.dom.asserts.assertIsHTMLAudioElement(o),!(s instanceof goog.html.SafeUrl)){var _=/^data:audio\//i.test(s);s=goog.html.SafeUrl.sanitizeAssertUnchanged(s,_)}o.src=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setVideoSrc=function(o,s){if(goog.dom.asserts.assertIsHTMLVideoElement(o),!(s instanceof goog.html.SafeUrl)){var _=/^data:video\//i.test(s);s=goog.html.SafeUrl.sanitizeAssertUnchanged(s,_)}o.src=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.setEmbedSrc=function(o,s){goog.dom.asserts.assertIsHTMLEmbedElement(o),o.src=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(s)},goog.dom.safe.setFrameSrc=function(o,s){goog.dom.asserts.assertIsHTMLFrameElement(o),o.src=goog.html.TrustedResourceUrl.unwrap(s)},goog.dom.safe.setIframeSrc=function(o,s){goog.dom.asserts.assertIsHTMLIFrameElement(o),o.src=goog.html.TrustedResourceUrl.unwrap(s)},goog.dom.safe.setIframeSrcdoc=function(o,s){goog.dom.asserts.assertIsHTMLIFrameElement(o),o.srcdoc=goog.html.SafeHtml.unwrapTrustedHTML(s)},goog.dom.safe.setLinkHrefAndRel=function(o,s,_){goog.dom.asserts.assertIsHTMLLinkElement(o),o.rel=_,goog.string.internal.caseInsensitiveContains(_,"stylesheet")?(goog.asserts.assert(s instanceof goog.html.TrustedResourceUrl,'URL must be TrustedResourceUrl because "rel" contains "stylesheet"'),o.href=goog.html.TrustedResourceUrl.unwrap(s)):o.href=s instanceof goog.html.TrustedResourceUrl?goog.html.TrustedResourceUrl.unwrap(s):s instanceof goog.html.SafeUrl?goog.html.SafeUrl.unwrap(s):goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitizeAssertUnchanged(s))},goog.dom.safe.setObjectData=function(o,s){goog.dom.asserts.assertIsHTMLObjectElement(o),o.data=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(s)},goog.dom.safe.setScriptSrc=function(o,s){goog.dom.asserts.assertIsHTMLScriptElement(o),o.src=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(s),(s=goog.getScriptNonce())&&o.setAttribute("nonce",s)},goog.dom.safe.setScriptContent=function(o,s){goog.dom.asserts.assertIsHTMLScriptElement(o),o.text=goog.html.SafeScript.unwrapTrustedScript(s),(s=goog.getScriptNonce())&&o.setAttribute("nonce",s)},goog.dom.safe.setLocationHref=function(o,s){goog.dom.asserts.assertIsLocation(o),s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),o.href=goog.html.SafeUrl.unwrap(s)},goog.dom.safe.assignLocation=function(o,s){goog.dom.asserts.assertIsLocation(o),s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),o.assign(goog.html.SafeUrl.unwrap(s))},goog.dom.safe.replaceLocation=function(o,s){s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),o.replace(goog.html.SafeUrl.unwrap(s))},goog.dom.safe.openInWindow=function(o,s,_,j,$){return o=o instanceof goog.html.SafeUrl?o:goog.html.SafeUrl.sanitizeAssertUnchanged(o),s=s||goog.global,_=_ instanceof goog.string.Const?goog.string.Const.unwrap(_):_||"",s.open(goog.html.SafeUrl.unwrap(o),_,j,$)},goog.dom.safe.parseFromStringHtml=function(o,s){return goog.dom.safe.parseFromString(o,s,"text/html")},goog.dom.safe.parseFromString=function(o,s,_){return o.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(s),_)},goog.dom.safe.createImageFromBlob=function(o){if(!/^image\/.*/g.test(o.type))throw Error("goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.");var s=goog.global.URL.createObjectURL(o);return o=new goog.global.Image,o.onload=function(){goog.global.URL.revokeObjectURL(s)},goog.dom.safe.setImageSrc(o,goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from("Image blob URL."),s)),o},goog.string.DETECT_DOUBLE_ESCAPING=!1,goog.string.FORCE_NON_DOM_HTML_UNESCAPING=!1,goog.string.Unicode={NBSP:" "},goog.string.startsWith=goog.string.internal.startsWith,goog.string.endsWith=goog.string.internal.endsWith,goog.string.caseInsensitiveStartsWith=goog.string.internal.caseInsensitiveStartsWith,goog.string.caseInsensitiveEndsWith=goog.string.internal.caseInsensitiveEndsWith,goog.string.caseInsensitiveEquals=goog.string.internal.caseInsensitiveEquals,goog.string.subs=function(o,s){for(var _=o.split("%s"),j="",$=Array.prototype.slice.call(arguments,1);$.length&&1<_.length;)j+=_.shift()+$.shift();return j+_.join("%s")},goog.string.collapseWhitespace=function(o){return o.replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")},goog.string.isEmptyOrWhitespace=goog.string.internal.isEmptyOrWhitespace,goog.string.isEmptyString=function(o){return o.length==0},goog.string.isEmpty=goog.string.isEmptyOrWhitespace,goog.string.isEmptyOrWhitespaceSafe=function(o){return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(o))},goog.string.isEmptySafe=goog.string.isEmptyOrWhitespaceSafe,goog.string.isBreakingWhitespace=function(o){return!/[^\t\n\r ]/.test(o)},goog.string.isAlpha=function(o){return!/[^a-zA-Z]/.test(o)},goog.string.isNumeric=function(o){return!/[^0-9]/.test(o)},goog.string.isAlphaNumeric=function(o){return!/[^a-zA-Z0-9]/.test(o)},goog.string.isSpace=function(o){return o==" "},goog.string.isUnicodeChar=function(o){return o.length==1&&" "<=o&&"~">=o||"€"<=o&&"�">=o},goog.string.stripNewlines=function(o){return o.replace(/(\r\n|\r|\n)+/g," ")},goog.string.canonicalizeNewlines=function(o){return o.replace(/(\r\n|\r|\n)/g,` +`)},goog.string.normalizeWhitespace=function(o){return o.replace(/\xa0|\s/g," ")},goog.string.normalizeSpaces=function(o){return o.replace(/\xa0|[ \t]+/g," ")},goog.string.collapseBreakingSpaces=function(o){return o.replace(/[\t\r\n ]+/g," ").replace(/^[\t\r\n ]+|[\t\r\n ]+$/g,"")},goog.string.trim=goog.string.internal.trim,goog.string.trimLeft=function(o){return o.replace(/^[\s\xa0]+/,"")},goog.string.trimRight=function(o){return o.replace(/[\s\xa0]+$/,"")},goog.string.caseInsensitiveCompare=goog.string.internal.caseInsensitiveCompare,goog.string.numberAwareCompare_=function(o,s,_){if(o==s)return 0;if(!o)return-1;if(!s)return 1;for(var j=o.toLowerCase().match(_),$=s.toLowerCase().match(_),_e=Math.min(j.length,$.length),et=0;et<_e;et++){_=j[et];var tt=$[et];if(_!=tt)return o=parseInt(_,10),!isNaN(o)&&(s=parseInt(tt,10),!isNaN(s)&&o-s)?o-s:_",""":'"'},j=s?s.createElement("div"):goog.global.document.createElement("div");return o.replace(goog.string.HTML_ENTITY_PATTERN_,function($,_e){var et=_[$];return et||(_e.charAt(0)=="#"&&(_e=+("0"+_e.substr(1)),isNaN(_e)||(et=String.fromCharCode(_e))),et||(goog.dom.safe.setInnerHtml(j,goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from("Single HTML entity."),$+" ")),et=j.firstChild.nodeValue.slice(0,-1)),_[$]=et)})},goog.string.unescapePureXmlEntities_=function(o){return o.replace(/&([^;]+);/g,function(s,_){switch(_){case"amp":return"&";case"lt":return"<";case"gt":return">";case"quot":return'"';default:return _.charAt(0)!="#"||(_=+("0"+_.substr(1)),isNaN(_))?s:String.fromCharCode(_)}})},goog.string.HTML_ENTITY_PATTERN_=/&([^;\s<&]+);?/g,goog.string.whitespaceEscape=function(o,s){return goog.string.newLineToBr(o.replace(/ /g,"  "),s)},goog.string.preserveSpaces=function(o){return o.replace(/(^|[\n ]) /g,"$1"+goog.string.Unicode.NBSP)},goog.string.stripQuotes=function(o,s){for(var _=s.length,j=0;j<_;j++){var $=_==1?s:s.charAt(j);if(o.charAt(0)==$&&o.charAt(o.length-1)==$)return o.substring(1,o.length-1)}return o},goog.string.truncate=function(o,s,_){return _&&(o=goog.string.unescapeEntities(o)),o.length>s&&(o=o.substring(0,s-3)+"..."),_&&(o=goog.string.htmlEscape(o)),o},goog.string.truncateMiddle=function(o,s,_,j){if(_&&(o=goog.string.unescapeEntities(o)),j&&o.length>s){j>s&&(j=s);var $=o.length-j;o=o.substring(0,s-j)+"..."+o.substring($)}else o.length>s&&(j=Math.floor(s/2),$=o.length-j,o=o.substring(0,j+s%2)+"..."+o.substring($));return _&&(o=goog.string.htmlEscape(o)),o},goog.string.specialEscapeChars_={"\0":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\x0B",'"':'\\"',"\\":"\\\\","<":"\\u003C"},goog.string.jsEscapeCache_={"'":"\\'"},goog.string.quote=function(o){o=String(o);for(var s=['"'],_=0;_$?j:goog.string.escapeChar(j))}return s.push('"'),s.join("")},goog.string.escapeString=function(o){for(var s=[],_=0;_s)var _=o;else 256>s?(_="\\x",(16>s||256s&&(_+="0")),_+=s.toString(16).toUpperCase();return goog.string.jsEscapeCache_[o]=_},goog.string.contains=goog.string.internal.contains,goog.string.caseInsensitiveContains=goog.string.internal.caseInsensitiveContains,goog.string.countOf=function(o,s){return o&&s?o.split(s).length-1:0},goog.string.removeAt=function(o,s,_){var j=o;return 0<=s&&s>>0;return s},goog.string.uniqueStringCounter_=2147483648*Math.random()|0,goog.string.createUniqueString=function(){return"goog_"+goog.string.uniqueStringCounter_++},goog.string.toNumber=function(o){var s=Number(o);return s==0&&goog.string.isEmptyOrWhitespace(o)?NaN:s},goog.string.isLowerCamelCase=function(o){return/^[a-z]+([A-Z][a-z]*)*$/.test(o)},goog.string.isUpperCamelCase=function(o){return/^([A-Z][a-z]*)+$/.test(o)},goog.string.toCamelCase=function(o){return String(o).replace(/\-([a-z])/g,function(s,_){return _.toUpperCase()})},goog.string.toSelectorCase=function(o){return String(o).replace(/([A-Z])/g,"-$1").toLowerCase()},goog.string.toTitleCase=function(o,s){return s=typeof s=="string"?goog.string.regExpEscape(s):"\\s",o.replace(new RegExp("(^"+(s?"|["+s+"]+":"")+")([a-z])","g"),function(_,j,$){return j+$.toUpperCase()})},goog.string.capitalize=function(o){return String(o.charAt(0)).toUpperCase()+String(o.substr(1)).toLowerCase()},goog.string.parseInt=function(o){return isFinite(o)&&(o=String(o)),typeof o=="string"?/^\s*-?0x/i.test(o)?parseInt(o,16):parseInt(o,10):NaN},goog.string.splitLimit=function(o,s,_){o=o.split(s);for(var j=[];0<_&&o.length;)j.push(o.shift()),_--;return o.length&&j.push(o.join(s)),j},goog.string.lastComponent=function(o,s){if(s)typeof s=="string"&&(s=[s]);else return o;for(var _=-1,j=0;j_&&(_=$)}return _==-1?o:o.slice(_+1)},goog.string.editDistance=function(o,s){var _=[],j=[];if(o==s)return 0;if(!o.length||!s.length)return Math.max(o.length,s.length);for(var $=0;$parseFloat(o))?String(s):o},goog.userAgent.getVersionRegexResult_=function(){var o=goog.userAgent.getUserAgentString();if(goog.userAgent.GECKO)return/rv:([^\);]+)(\)|;)/.exec(o);if(goog.userAgent.EDGE)return/Edge\/([\d\.]+)/.exec(o);if(goog.userAgent.IE)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(o);if(goog.userAgent.WEBKIT)return/WebKit\/(\S+)/.exec(o);if(goog.userAgent.OPERA)return/(?:Version)[ \/]?(\S+)/.exec(o)},goog.userAgent.getDocumentMode_=function(){var o=goog.global.document;return o?o.documentMode:void 0},goog.userAgent.VERSION=goog.userAgent.determineVersion_(),goog.userAgent.compare=function(o,s){return goog.string.compareVersions(o,s)},goog.userAgent.isVersionOrHigherCache_={},goog.userAgent.isVersionOrHigher=function(o){return goog.userAgent.ASSUME_ANY_VERSION||goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_,o,function(){return 0<=goog.string.compareVersions(goog.userAgent.VERSION,o)})},goog.userAgent.isVersion=goog.userAgent.isVersionOrHigher,goog.userAgent.isDocumentModeOrHigher=function(o){return Number(goog.userAgent.DOCUMENT_MODE)>=o},goog.userAgent.isDocumentMode=goog.userAgent.isDocumentModeOrHigher,goog.userAgent.DOCUMENT_MODE=function(){if(goog.global.document&&goog.userAgent.IE){var o=goog.userAgent.getDocumentMode_();return o||parseInt(goog.userAgent.VERSION,10)||void 0}}(),goog.userAgent.product={},goog.userAgent.product.ASSUME_FIREFOX=!1,goog.userAgent.product.ASSUME_IPHONE=!1,goog.userAgent.product.ASSUME_IPAD=!1,goog.userAgent.product.ASSUME_ANDROID=!1,goog.userAgent.product.ASSUME_CHROME=!1,goog.userAgent.product.ASSUME_SAFARI=!1,goog.userAgent.product.PRODUCT_KNOWN_=goog.userAgent.ASSUME_IE||goog.userAgent.ASSUME_EDGE||goog.userAgent.ASSUME_OPERA||goog.userAgent.product.ASSUME_FIREFOX||goog.userAgent.product.ASSUME_IPHONE||goog.userAgent.product.ASSUME_IPAD||goog.userAgent.product.ASSUME_ANDROID||goog.userAgent.product.ASSUME_CHROME||goog.userAgent.product.ASSUME_SAFARI,goog.userAgent.product.OPERA=goog.userAgent.OPERA,goog.userAgent.product.IE=goog.userAgent.IE,goog.userAgent.product.EDGE=goog.userAgent.EDGE,goog.userAgent.product.FIREFOX=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_FIREFOX:goog.labs.userAgent.browser.isFirefox(),goog.userAgent.product.isIphoneOrIpod_=function(){return goog.labs.userAgent.platform.isIphone()||goog.labs.userAgent.platform.isIpod()},goog.userAgent.product.IPHONE=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_IPHONE:goog.userAgent.product.isIphoneOrIpod_(),goog.userAgent.product.IPAD=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_IPAD:goog.labs.userAgent.platform.isIpad(),goog.userAgent.product.ANDROID=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_ANDROID:goog.labs.userAgent.browser.isAndroidBrowser(),goog.userAgent.product.CHROME=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_CHROME:goog.labs.userAgent.browser.isChrome(),goog.userAgent.product.isSafariDesktop_=function(){return goog.labs.userAgent.browser.isSafari()&&!goog.labs.userAgent.platform.isIos()},goog.userAgent.product.SAFARI=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_SAFARI:goog.userAgent.product.isSafariDesktop_(),goog.crypt.base64={},goog.crypt.base64.DEFAULT_ALPHABET_COMMON_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",goog.crypt.base64.ENCODED_VALS=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_+"+/=",goog.crypt.base64.ENCODED_VALS_WEBSAFE=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_+"-_.",goog.crypt.base64.Alphabet={DEFAULT:0,NO_PADDING:1,WEBSAFE:2,WEBSAFE_DOT_PADDING:3,WEBSAFE_NO_PADDING:4},goog.crypt.base64.paddingChars_="=.",goog.crypt.base64.isPadding_=function(o){return goog.string.contains(goog.crypt.base64.paddingChars_,o)},goog.crypt.base64.byteToCharMaps_={},goog.crypt.base64.charToByteMap_=null,goog.crypt.base64.ASSUME_NATIVE_SUPPORT_=goog.userAgent.GECKO||goog.userAgent.WEBKIT&&!goog.userAgent.product.SAFARI||goog.userAgent.OPERA,goog.crypt.base64.HAS_NATIVE_ENCODE_=goog.crypt.base64.ASSUME_NATIVE_SUPPORT_||typeof goog.global.btoa=="function",goog.crypt.base64.HAS_NATIVE_DECODE_=goog.crypt.base64.ASSUME_NATIVE_SUPPORT_||!goog.userAgent.product.SAFARI&&!goog.userAgent.IE&&typeof goog.global.atob=="function",goog.crypt.base64.encodeByteArray=function(o,s){goog.asserts.assert(goog.isArrayLike(o),"encodeByteArray takes an array as a parameter"),s===void 0&&(s=goog.crypt.base64.Alphabet.DEFAULT),goog.crypt.base64.init_(),s=goog.crypt.base64.byteToCharMaps_[s];for(var _=[],j=0;j>2;$=($&3)<<4|et>>4,et=(et&15)<<2|nt>>6,nt&=63,tt||(nt=64,_e||(et=64)),_.push(s[rt],s[$],s[et]||"",s[nt]||"")}return _.join("")},goog.crypt.base64.encodeString=function(o,s){return goog.crypt.base64.HAS_NATIVE_ENCODE_&&!s?goog.global.btoa(o):goog.crypt.base64.encodeByteArray(goog.crypt.stringToByteArray(o),s)},goog.crypt.base64.decodeString=function(o,s){if(goog.crypt.base64.HAS_NATIVE_DECODE_&&!s)return goog.global.atob(o);var _="";return goog.crypt.base64.decodeStringInternal_(o,function(j){_+=String.fromCharCode(j)}),_},goog.crypt.base64.decodeStringToByteArray=function(o,s){var _=[];return goog.crypt.base64.decodeStringInternal_(o,function(j){_.push(j)}),_},goog.crypt.base64.decodeStringToUint8Array=function(o){goog.asserts.assert(!goog.userAgent.IE||goog.userAgent.isVersionOrHigher("10"),"Browser does not support typed arrays");var s=o.length,_=3*s/4;_%3?_=Math.floor(_):goog.crypt.base64.isPadding_(o[s-1])&&(_=goog.crypt.base64.isPadding_(o[s-2])?_-2:_-1);var j=new Uint8Array(_),$=0;return goog.crypt.base64.decodeStringInternal_(o,function(_e){j[$++]=_e}),j.subarray(0,$)},goog.crypt.base64.decodeStringInternal_=function(o,s){function _(nt){for(;j>4),et!=64&&(s(_e<<4&240|et>>2),tt!=64&&s(et<<6&192|tt))}},goog.crypt.base64.init_=function(){if(!goog.crypt.base64.charToByteMap_){goog.crypt.base64.charToByteMap_={};for(var o=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_.split(""),s=["+/=","+/","-_=","-_.","-_"],_=0;5>_;_++){var j=o.concat(s[_].split(""));goog.crypt.base64.byteToCharMaps_[_]=j;for(var $=0;$>>0;o=Math.floor((o-s)/jspb.BinaryConstants.TWO_TO_32)>>>0,jspb.utils.split64Low=s,jspb.utils.split64High=o},jspb.utils.splitInt64=function(o){var s=0>o;o=Math.abs(o);var _=o>>>0;o=Math.floor((o-_)/jspb.BinaryConstants.TWO_TO_32),o>>>=0,s&&(o=~o>>>0,_=(~_>>>0)+1,4294967295<_&&(_=0,o++,4294967295o;o=2*Math.abs(o),jspb.utils.splitUint64(o),o=jspb.utils.split64Low;var _=jspb.utils.split64High;s&&(o==0?_==0?_=o=4294967295:(_--,o=4294967295):o--),jspb.utils.split64Low=o,jspb.utils.split64High=_},jspb.utils.splitFloat32=function(o){var s=0>o?1:0;if(o=s?-o:o,o===0)0<1/o?(jspb.utils.split64High=0,jspb.utils.split64Low=0):(jspb.utils.split64High=0,jspb.utils.split64Low=2147483648);else if(isNaN(o))jspb.utils.split64High=0,jspb.utils.split64Low=2147483647;else if(o>jspb.BinaryConstants.FLOAT32_MAX)jspb.utils.split64High=0,jspb.utils.split64Low=(s<<31|2139095040)>>>0;else if(o>>0;else{var _=Math.floor(Math.log(o)/Math.LN2);o*=Math.pow(2,-_),o=Math.round(o*jspb.BinaryConstants.TWO_TO_23),16777216<=o&&++_,jspb.utils.split64High=0,jspb.utils.split64Low=(s<<31|_+127<<23|o&8388607)>>>0}},jspb.utils.splitFloat64=function(o){var s=0>o?1:0;if(o=s?-o:o,o===0)jspb.utils.split64High=0<1/o?0:2147483648,jspb.utils.split64Low=0;else if(isNaN(o))jspb.utils.split64High=2147483647,jspb.utils.split64Low=4294967295;else if(o>jspb.BinaryConstants.FLOAT64_MAX)jspb.utils.split64High=(s<<31|2146435072)>>>0,jspb.utils.split64Low=0;else if(o>>0,jspb.utils.split64Low=_>>>0}else{_=o;var j=0;if(2<=_)for(;2<=_&&1023>j;)j++,_/=2;else for(;1>_&&-1022>>0,jspb.utils.split64High=(s<<31|j+1023<<20|o)>>>0,jspb.utils.split64Low=_}},jspb.utils.splitHash64=function(o){var s=o.charCodeAt(0),_=o.charCodeAt(1),j=o.charCodeAt(2),$=o.charCodeAt(3),_e=o.charCodeAt(4),et=o.charCodeAt(5),tt=o.charCodeAt(6);o=o.charCodeAt(7),jspb.utils.split64Low=s+(_<<8)+(j<<16)+($<<24)>>>0,jspb.utils.split64High=_e+(et<<8)+(tt<<16)+(o<<24)>>>0},jspb.utils.joinUint64=function(o,s){return s*jspb.BinaryConstants.TWO_TO_32+(o>>>0)},jspb.utils.joinInt64=function(o,s){var _=s&2147483648;return _&&(o=~o+1>>>0,s=~s>>>0,o==0&&(s=s+1>>>0)),o=jspb.utils.joinUint64(o,s),_?-o:o},jspb.utils.toZigzag64=function(o,s,_){var j=s>>31;return _(o<<1^j,(s<<1|o>>>31)^j)},jspb.utils.joinZigzag64=function(o,s){return jspb.utils.fromZigzag64(o,s,jspb.utils.joinInt64)},jspb.utils.fromZigzag64=function(o,s,_){var j=-(o&1);return _((o>>>1|s<<31)^j,s>>>1^j)},jspb.utils.joinFloat32=function(o,s){s=2*(o>>31)+1;var _=o>>>23&255;return o&=8388607,_==255?o?NaN:1/0*s:_==0?s*Math.pow(2,-149)*o:s*Math.pow(2,_-150)*(o+Math.pow(2,23))},jspb.utils.joinFloat64=function(o,s){var _=2*(s>>31)+1,j=s>>>20&2047;return o=jspb.BinaryConstants.TWO_TO_32*(s&1048575)+o,j==2047?o?NaN:1/0*_:j==0?_*Math.pow(2,-1074)*o:_*Math.pow(2,j-1075)*(o+jspb.BinaryConstants.TWO_TO_52)},jspb.utils.joinHash64=function(o,s){return String.fromCharCode(o>>>0&255,o>>>8&255,o>>>16&255,o>>>24&255,s>>>0&255,s>>>8&255,s>>>16&255,s>>>24&255)},jspb.utils.DIGITS="0123456789abcdef".split(""),jspb.utils.ZERO_CHAR_CODE_=48,jspb.utils.A_CHAR_CODE_=97,jspb.utils.joinUnsignedDecimalString=function(o,s){function _($,_e){return $=$?String($):"",_e?"0000000".slice($.length)+$:$}if(2097151>=s)return""+jspb.utils.joinUint64(o,s);var j=(o>>>24|s<<8)>>>0&16777215;return s=s>>16&65535,o=(o&16777215)+6777216*j+6710656*s,j+=8147497*s,s*=2,1e7<=o&&(j+=Math.floor(o/1e7),o%=1e7),1e7<=j&&(s+=Math.floor(j/1e7),j%=1e7),_(s,0)+_(j,s)+_(o,1)},jspb.utils.joinSignedDecimalString=function(o,s){var _=s&2147483648;return _&&(o=~o+1>>>0,s=~s+(o==0?1:0)>>>0),o=jspb.utils.joinUnsignedDecimalString(o,s),_?"-"+o:o},jspb.utils.hash64ToDecimalString=function(o,s){jspb.utils.splitHash64(o),o=jspb.utils.split64Low;var _=jspb.utils.split64High;return s?jspb.utils.joinSignedDecimalString(o,_):jspb.utils.joinUnsignedDecimalString(o,_)},jspb.utils.hash64ArrayToDecimalStrings=function(o,s){for(var _=Array(o.length),j=0;jnt&&(et!==1||0>>=8}function _(){for(var et=0;8>et;et++)$[et]=~$[et]&255}jspb.asserts.assert(0o?jspb.utils.ZERO_CHAR_CODE_+o:jspb.utils.A_CHAR_CODE_-10+o)},jspb.utils.fromHexCharCode_=function(o){return o>=jspb.utils.A_CHAR_CODE_?o-jspb.utils.A_CHAR_CODE_+10:o-jspb.utils.ZERO_CHAR_CODE_},jspb.utils.hash64ToHexString=function(o){var s=Array(18);s[0]="0",s[1]="x";for(var _=0;8>_;_++){var j=o.charCodeAt(7-_);s[2*_+2]=jspb.utils.toHexDigit_(j>>4),s[2*_+3]=jspb.utils.toHexDigit_(j&15)}return s.join("")},jspb.utils.hexStringToHash64=function(o){o=o.toLowerCase(),jspb.asserts.assert(o.length==18),jspb.asserts.assert(o[0]=="0"),jspb.asserts.assert(o[1]=="x");for(var s="",_=0;8>_;_++){var j=jspb.utils.fromHexCharCode_(o.charCodeAt(2*_+2)),$=jspb.utils.fromHexCharCode_(o.charCodeAt(2*_+3));s=String.fromCharCode(16*j+$)+s}return s},jspb.utils.hash64ToNumber=function(o,s){jspb.utils.splitHash64(o),o=jspb.utils.split64Low;var _=jspb.utils.split64High;return s?jspb.utils.joinInt64(o,_):jspb.utils.joinUint64(o,_)},jspb.utils.numberToHash64=function(o){return jspb.utils.splitInt64(o),jspb.utils.joinHash64(jspb.utils.split64Low,jspb.utils.split64High)},jspb.utils.countVarints=function(o,s,_){for(var j=0,$=s;$<_;$++)j+=o[$]>>7;return _-s-j},jspb.utils.countVarintFields=function(o,s,_,j){var $=0;if(j=8*j+jspb.BinaryConstants.WireType.VARINT,128>j)for(;s<_&&o[s++]==j;)for($++;;){var _e=o[s++];if(!(_e&128))break}else for(;s<_;){for(_e=j;128<_e;){if(o[s]!=(_e&127|128))return $;s++,_e>>=7}if(o[s++]!=_e)break;for($++;_e=o[s++],(_e&128)!=0;);}return $},jspb.utils.countFixedFields_=function(o,s,_,j,$){var _e=0;if(128>j)for(;s<_&&o[s++]==j;)_e++,s+=$;else for(;s<_;){for(var et=j;128>=7}if(o[s++]!=et)break;_e++,s+=$}return _e},jspb.utils.countFixed32Fields=function(o,s,_,j){return jspb.utils.countFixedFields_(o,s,_,8*j+jspb.BinaryConstants.WireType.FIXED32,4)},jspb.utils.countFixed64Fields=function(o,s,_,j){return jspb.utils.countFixedFields_(o,s,_,8*j+jspb.BinaryConstants.WireType.FIXED64,8)},jspb.utils.countDelimitedFields=function(o,s,_,j){var $=0;for(j=8*j+jspb.BinaryConstants.WireType.DELIMITED;s<_;){for(var _e=j;128<_e;){if(o[s++]!=(_e&127|128))return $;_e>>=7}if(o[s++]!=_e)break;$++;for(var et=0,tt=1;_e=o[s++],et+=(_e&127)*tt,tt*=128,(_e&128)!=0;);s+=et}return $},jspb.utils.debugBytesToTextFormat=function(o){var s='"';if(o){o=jspb.utils.byteSourceToUint8Array(o);for(var _=0;_o[_]&&(s+="0"),s+=o[_].toString(16)}return s+'"'},jspb.utils.debugScalarToTextFormat=function(o){return typeof o=="string"?goog.string.quote(o):o.toString()},jspb.utils.stringToByteArray=function(o){for(var s=new Uint8Array(o.length),_=0;_jspb.BinaryDecoder.instanceCache_.length&&jspb.BinaryDecoder.instanceCache_.push(this)},jspb.BinaryDecoder.prototype.clone=function(){return jspb.BinaryDecoder.alloc(this.bytes_,this.start_,this.end_-this.start_)},jspb.BinaryDecoder.prototype.clear=function(){this.bytes_=null,this.cursor_=this.end_=this.start_=0,this.error_=!1},jspb.BinaryDecoder.prototype.getBuffer=function(){return this.bytes_},jspb.BinaryDecoder.prototype.setBlock=function(o,s,_){this.bytes_=jspb.utils.byteSourceToUint8Array(o),this.start_=s!==void 0?s:0,this.end_=_!==void 0?this.start_+_:this.bytes_.length,this.cursor_=this.start_},jspb.BinaryDecoder.prototype.getEnd=function(){return this.end_},jspb.BinaryDecoder.prototype.setEnd=function(o){this.end_=o},jspb.BinaryDecoder.prototype.reset=function(){this.cursor_=this.start_},jspb.BinaryDecoder.prototype.getCursor=function(){return this.cursor_},jspb.BinaryDecoder.prototype.setCursor=function(o){this.cursor_=o},jspb.BinaryDecoder.prototype.advance=function(o){this.cursor_+=o,jspb.asserts.assert(this.cursor_<=this.end_)},jspb.BinaryDecoder.prototype.atEnd=function(){return this.cursor_==this.end_},jspb.BinaryDecoder.prototype.pastEnd=function(){return this.cursor_>this.end_},jspb.BinaryDecoder.prototype.getError=function(){return this.error_||0>this.cursor_||this.cursor_>this.end_},jspb.BinaryDecoder.prototype.readSplitVarint64=function(o){for(var s=128,_=0,j=0,$=0;4>$&&128<=s;$++)s=this.bytes_[this.cursor_++],_|=(s&127)<<7*$;if(128<=s&&(s=this.bytes_[this.cursor_++],_|=(s&127)<<28,j|=(s&127)>>4),128<=s)for($=0;5>$&&128<=s;$++)s=this.bytes_[this.cursor_++],j|=(s&127)<<7*$+3;if(128>s)return o(_>>>0,j>>>0);jspb.asserts.fail("Failed to read varint, encoding is invalid."),this.error_=!0},jspb.BinaryDecoder.prototype.readSplitZigzagVarint64=function(o){return this.readSplitVarint64(function(s,_){return jspb.utils.fromZigzag64(s,_,o)})},jspb.BinaryDecoder.prototype.readSplitFixed64=function(o){var s=this.bytes_,_=this.cursor_;this.cursor_+=8;for(var j=0,$=0,_e=_+7;_e>=_;_e--)j=j<<8|s[_e],$=$<<8|s[_e+4];return o(j,$)},jspb.BinaryDecoder.prototype.skipVarint=function(){for(;this.bytes_[this.cursor_]&128;)this.cursor_++;this.cursor_++},jspb.BinaryDecoder.prototype.unskipVarint=function(o){for(;128>>=7;this.cursor_--},jspb.BinaryDecoder.prototype.readUnsignedVarint32=function(){var o=this.bytes_,s=o[this.cursor_+0],_=s&127;return 128>s?(this.cursor_+=1,jspb.asserts.assert(this.cursor_<=this.end_),_):(s=o[this.cursor_+1],_|=(s&127)<<7,128>s?(this.cursor_+=2,jspb.asserts.assert(this.cursor_<=this.end_),_):(s=o[this.cursor_+2],_|=(s&127)<<14,128>s?(this.cursor_+=3,jspb.asserts.assert(this.cursor_<=this.end_),_):(s=o[this.cursor_+3],_|=(s&127)<<21,128>s?(this.cursor_+=4,jspb.asserts.assert(this.cursor_<=this.end_),_):(s=o[this.cursor_+4],_|=(s&15)<<28,128>s?(this.cursor_+=5,jspb.asserts.assert(this.cursor_<=this.end_),_>>>0):(this.cursor_+=5,128<=o[this.cursor_++]&&128<=o[this.cursor_++]&&128<=o[this.cursor_++]&&128<=o[this.cursor_++]&&128<=o[this.cursor_++]&&jspb.asserts.assert(!1),jspb.asserts.assert(this.cursor_<=this.end_),_)))))},jspb.BinaryDecoder.prototype.readSignedVarint32=function(){return~~this.readUnsignedVarint32()},jspb.BinaryDecoder.prototype.readUnsignedVarint32String=function(){return this.readUnsignedVarint32().toString()},jspb.BinaryDecoder.prototype.readSignedVarint32String=function(){return this.readSignedVarint32().toString()},jspb.BinaryDecoder.prototype.readZigzagVarint32=function(){var o=this.readUnsignedVarint32();return o>>>1^-(o&1)},jspb.BinaryDecoder.prototype.readUnsignedVarint64=function(){return this.readSplitVarint64(jspb.utils.joinUint64)},jspb.BinaryDecoder.prototype.readUnsignedVarint64String=function(){return this.readSplitVarint64(jspb.utils.joinUnsignedDecimalString)},jspb.BinaryDecoder.prototype.readSignedVarint64=function(){return this.readSplitVarint64(jspb.utils.joinInt64)},jspb.BinaryDecoder.prototype.readSignedVarint64String=function(){return this.readSplitVarint64(jspb.utils.joinSignedDecimalString)},jspb.BinaryDecoder.prototype.readZigzagVarint64=function(){return this.readSplitVarint64(jspb.utils.joinZigzag64)},jspb.BinaryDecoder.prototype.readZigzagVarintHash64=function(){return this.readSplitZigzagVarint64(jspb.utils.joinHash64)},jspb.BinaryDecoder.prototype.readZigzagVarint64String=function(){return this.readSplitZigzagVarint64(jspb.utils.joinSignedDecimalString)},jspb.BinaryDecoder.prototype.readUint8=function(){var o=this.bytes_[this.cursor_+0];return this.cursor_+=1,jspb.asserts.assert(this.cursor_<=this.end_),o},jspb.BinaryDecoder.prototype.readUint16=function(){var o=this.bytes_[this.cursor_+0],s=this.bytes_[this.cursor_+1];return this.cursor_+=2,jspb.asserts.assert(this.cursor_<=this.end_),o<<0|s<<8},jspb.BinaryDecoder.prototype.readUint32=function(){var o=this.bytes_[this.cursor_+0],s=this.bytes_[this.cursor_+1],_=this.bytes_[this.cursor_+2],j=this.bytes_[this.cursor_+3];return this.cursor_+=4,jspb.asserts.assert(this.cursor_<=this.end_),(o<<0|s<<8|_<<16|j<<24)>>>0},jspb.BinaryDecoder.prototype.readUint64=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinUint64(o,s)},jspb.BinaryDecoder.prototype.readUint64String=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinUnsignedDecimalString(o,s)},jspb.BinaryDecoder.prototype.readInt8=function(){var o=this.bytes_[this.cursor_+0];return this.cursor_+=1,jspb.asserts.assert(this.cursor_<=this.end_),o<<24>>24},jspb.BinaryDecoder.prototype.readInt16=function(){var o=this.bytes_[this.cursor_+0],s=this.bytes_[this.cursor_+1];return this.cursor_+=2,jspb.asserts.assert(this.cursor_<=this.end_),(o<<0|s<<8)<<16>>16},jspb.BinaryDecoder.prototype.readInt32=function(){var o=this.bytes_[this.cursor_+0],s=this.bytes_[this.cursor_+1],_=this.bytes_[this.cursor_+2],j=this.bytes_[this.cursor_+3];return this.cursor_+=4,jspb.asserts.assert(this.cursor_<=this.end_),o<<0|s<<8|_<<16|j<<24},jspb.BinaryDecoder.prototype.readInt64=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinInt64(o,s)},jspb.BinaryDecoder.prototype.readInt64String=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinSignedDecimalString(o,s)},jspb.BinaryDecoder.prototype.readFloat=function(){var o=this.readUint32();return jspb.utils.joinFloat32(o,0)},jspb.BinaryDecoder.prototype.readDouble=function(){var o=this.readUint32(),s=this.readUint32();return jspb.utils.joinFloat64(o,s)},jspb.BinaryDecoder.prototype.readBool=function(){return!!this.bytes_[this.cursor_++]},jspb.BinaryDecoder.prototype.readEnum=function(){return this.readSignedVarint32()},jspb.BinaryDecoder.prototype.readString=function(o){var s=this.bytes_,_=this.cursor_;o=_+o;for(var j=[],$="";__e)j.push(_e);else{if(192>_e)continue;if(224>_e){var et=s[_++];j.push((_e&31)<<6|et&63)}else if(240>_e){et=s[_++];var tt=s[_++];j.push((_e&15)<<12|(et&63)<<6|tt&63)}else if(248>_e){et=s[_++],tt=s[_++];var nt=s[_++];_e=(_e&7)<<18|(et&63)<<12|(tt&63)<<6|nt&63,_e-=65536,j.push((_e>>10&1023)+55296,(_e&1023)+56320)}}8192<=j.length&&($+=String.fromCharCode.apply(null,j),j.length=0)}return $+=goog.crypt.byteArrayToString(j),this.cursor_=_,$},jspb.BinaryDecoder.prototype.readStringWithLength=function(){var o=this.readUnsignedVarint32();return this.readString(o)},jspb.BinaryDecoder.prototype.readBytes=function(o){if(0>o||this.cursor_+o>this.bytes_.length)return this.error_=!0,jspb.asserts.fail("Invalid byte length!"),new Uint8Array(0);var s=this.bytes_.subarray(this.cursor_,this.cursor_+o);return this.cursor_+=o,jspb.asserts.assert(this.cursor_<=this.end_),s},jspb.BinaryDecoder.prototype.readVarintHash64=function(){return this.readSplitVarint64(jspb.utils.joinHash64)},jspb.BinaryDecoder.prototype.readFixedHash64=function(){var o=this.bytes_,s=this.cursor_,_=o[s+0],j=o[s+1],$=o[s+2],_e=o[s+3],et=o[s+4],tt=o[s+5],nt=o[s+6];return o=o[s+7],this.cursor_+=8,String.fromCharCode(_,j,$,_e,et,tt,nt,o)},jspb.BinaryReader=function(o,s,_){this.decoder_=jspb.BinaryDecoder.alloc(o,s,_),this.fieldCursor_=this.decoder_.getCursor(),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID,this.error_=!1,this.readCallbacks_=null},jspb.BinaryReader.instanceCache_=[],jspb.BinaryReader.alloc=function(o,s,_){if(jspb.BinaryReader.instanceCache_.length){var j=jspb.BinaryReader.instanceCache_.pop();return o&&j.decoder_.setBlock(o,s,_),j}return new jspb.BinaryReader(o,s,_)},jspb.BinaryReader.prototype.alloc=jspb.BinaryReader.alloc,jspb.BinaryReader.prototype.free=function(){this.decoder_.clear(),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID,this.error_=!1,this.readCallbacks_=null,100>jspb.BinaryReader.instanceCache_.length&&jspb.BinaryReader.instanceCache_.push(this)},jspb.BinaryReader.prototype.getFieldCursor=function(){return this.fieldCursor_},jspb.BinaryReader.prototype.getCursor=function(){return this.decoder_.getCursor()},jspb.BinaryReader.prototype.getBuffer=function(){return this.decoder_.getBuffer()},jspb.BinaryReader.prototype.getFieldNumber=function(){return this.nextField_},goog.exportProperty(jspb.BinaryReader.prototype,"getFieldNumber",jspb.BinaryReader.prototype.getFieldNumber),jspb.BinaryReader.prototype.getWireType=function(){return this.nextWireType_},jspb.BinaryReader.prototype.isDelimited=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED},goog.exportProperty(jspb.BinaryReader.prototype,"isDelimited",jspb.BinaryReader.prototype.isDelimited),jspb.BinaryReader.prototype.isEndGroup=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP},goog.exportProperty(jspb.BinaryReader.prototype,"isEndGroup",jspb.BinaryReader.prototype.isEndGroup),jspb.BinaryReader.prototype.getError=function(){return this.error_||this.decoder_.getError()},jspb.BinaryReader.prototype.setBlock=function(o,s,_){this.decoder_.setBlock(o,s,_),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID},jspb.BinaryReader.prototype.reset=function(){this.decoder_.reset(),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID},jspb.BinaryReader.prototype.advance=function(o){this.decoder_.advance(o)},jspb.BinaryReader.prototype.nextField=function(){if(this.decoder_.atEnd())return!1;if(this.getError())return jspb.asserts.fail("Decoder hit an error"),!1;this.fieldCursor_=this.decoder_.getCursor();var o=this.decoder_.readUnsignedVarint32(),s=o>>>3;return o&=7,o!=jspb.BinaryConstants.WireType.VARINT&&o!=jspb.BinaryConstants.WireType.FIXED32&&o!=jspb.BinaryConstants.WireType.FIXED64&&o!=jspb.BinaryConstants.WireType.DELIMITED&&o!=jspb.BinaryConstants.WireType.START_GROUP&&o!=jspb.BinaryConstants.WireType.END_GROUP?(jspb.asserts.fail("Invalid wire type: %s (at position %s)",o,this.fieldCursor_),this.error_=!0,!1):(this.nextField_=s,this.nextWireType_=o,!0)},goog.exportProperty(jspb.BinaryReader.prototype,"nextField",jspb.BinaryReader.prototype.nextField),jspb.BinaryReader.prototype.unskipHeader=function(){this.decoder_.unskipVarint(this.nextField_<<3|this.nextWireType_)},jspb.BinaryReader.prototype.skipMatchingFields=function(){var o=this.nextField_;for(this.unskipHeader();this.nextField()&&this.getFieldNumber()==o;)this.skipField();this.decoder_.atEnd()||this.unskipHeader()},jspb.BinaryReader.prototype.skipVarintField=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.VARINT?(jspb.asserts.fail("Invalid wire type for skipVarintField"),this.skipField()):this.decoder_.skipVarint()},jspb.BinaryReader.prototype.skipDelimitedField=function(){if(this.nextWireType_!=jspb.BinaryConstants.WireType.DELIMITED)jspb.asserts.fail("Invalid wire type for skipDelimitedField"),this.skipField();else{var o=this.decoder_.readUnsignedVarint32();this.decoder_.advance(o)}},jspb.BinaryReader.prototype.skipFixed32Field=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.FIXED32?(jspb.asserts.fail("Invalid wire type for skipFixed32Field"),this.skipField()):this.decoder_.advance(4)},jspb.BinaryReader.prototype.skipFixed64Field=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.FIXED64?(jspb.asserts.fail("Invalid wire type for skipFixed64Field"),this.skipField()):this.decoder_.advance(8)},jspb.BinaryReader.prototype.skipGroup=function(){var o=this.nextField_;do{if(!this.nextField()){jspb.asserts.fail("Unmatched start-group tag: stream EOF"),this.error_=!0;break}if(this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP){this.nextField_!=o&&(jspb.asserts.fail("Unmatched end-group tag"),this.error_=!0);break}this.skipField()}while(1)},jspb.BinaryReader.prototype.skipField=function(){switch(this.nextWireType_){case jspb.BinaryConstants.WireType.VARINT:this.skipVarintField();break;case jspb.BinaryConstants.WireType.FIXED64:this.skipFixed64Field();break;case jspb.BinaryConstants.WireType.DELIMITED:this.skipDelimitedField();break;case jspb.BinaryConstants.WireType.FIXED32:this.skipFixed32Field();break;case jspb.BinaryConstants.WireType.START_GROUP:this.skipGroup();break;default:jspb.asserts.fail("Invalid wire encoding for field.")}},jspb.BinaryReader.prototype.registerReadCallback=function(o,s){this.readCallbacks_===null&&(this.readCallbacks_={}),jspb.asserts.assert(!this.readCallbacks_[o]),this.readCallbacks_[o]=s},jspb.BinaryReader.prototype.runReadCallback=function(o){return jspb.asserts.assert(this.readCallbacks_!==null),o=this.readCallbacks_[o],jspb.asserts.assert(o),o(this)},jspb.BinaryReader.prototype.readAny=function(o){this.nextWireType_=jspb.BinaryConstants.FieldTypeToWireType(o);var s=jspb.BinaryConstants.FieldType;switch(o){case s.DOUBLE:return this.readDouble();case s.FLOAT:return this.readFloat();case s.INT64:return this.readInt64();case s.UINT64:return this.readUint64();case s.INT32:return this.readInt32();case s.FIXED64:return this.readFixed64();case s.FIXED32:return this.readFixed32();case s.BOOL:return this.readBool();case s.STRING:return this.readString();case s.GROUP:jspb.asserts.fail("Group field type not supported in readAny()");case s.MESSAGE:jspb.asserts.fail("Message field type not supported in readAny()");case s.BYTES:return this.readBytes();case s.UINT32:return this.readUint32();case s.ENUM:return this.readEnum();case s.SFIXED32:return this.readSfixed32();case s.SFIXED64:return this.readSfixed64();case s.SINT32:return this.readSint32();case s.SINT64:return this.readSint64();case s.FHASH64:return this.readFixedHash64();case s.VHASH64:return this.readVarintHash64();default:jspb.asserts.fail("Invalid field type in readAny()")}return 0},jspb.BinaryReader.prototype.readMessage=function(o,s){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var _=this.decoder_.getEnd(),j=this.decoder_.readUnsignedVarint32();j=this.decoder_.getCursor()+j,this.decoder_.setEnd(j),s(o,this),this.decoder_.setCursor(j),this.decoder_.setEnd(_)},goog.exportProperty(jspb.BinaryReader.prototype,"readMessage",jspb.BinaryReader.prototype.readMessage),jspb.BinaryReader.prototype.readGroup=function(o,s,_){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.START_GROUP),jspb.asserts.assert(this.nextField_==o),_(s,this),this.error_||this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP||(jspb.asserts.fail("Group submessage did not end with an END_GROUP tag"),this.error_=!0)},goog.exportProperty(jspb.BinaryReader.prototype,"readGroup",jspb.BinaryReader.prototype.readGroup),jspb.BinaryReader.prototype.getFieldDecoder=function(){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var o=this.decoder_.readUnsignedVarint32(),s=this.decoder_.getCursor(),_=s+o;return o=jspb.BinaryDecoder.alloc(this.decoder_.getBuffer(),s,o),this.decoder_.setCursor(_),o},jspb.BinaryReader.prototype.readInt32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readInt32",jspb.BinaryReader.prototype.readInt32),jspb.BinaryReader.prototype.readInt32String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32String()},jspb.BinaryReader.prototype.readInt64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readInt64",jspb.BinaryReader.prototype.readInt64),jspb.BinaryReader.prototype.readInt64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64String()},jspb.BinaryReader.prototype.readUint32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readUint32",jspb.BinaryReader.prototype.readUint32),jspb.BinaryReader.prototype.readUint32String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32String()},jspb.BinaryReader.prototype.readUint64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readUint64",jspb.BinaryReader.prototype.readUint64),jspb.BinaryReader.prototype.readUint64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64String()},jspb.BinaryReader.prototype.readSint32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readSint32",jspb.BinaryReader.prototype.readSint32),jspb.BinaryReader.prototype.readSint64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readSint64",jspb.BinaryReader.prototype.readSint64),jspb.BinaryReader.prototype.readSint64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64String()},jspb.BinaryReader.prototype.readFixed32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readUint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readFixed32",jspb.BinaryReader.prototype.readFixed32),jspb.BinaryReader.prototype.readFixed64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readFixed64",jspb.BinaryReader.prototype.readFixed64),jspb.BinaryReader.prototype.readFixed64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64String()},jspb.BinaryReader.prototype.readSfixed32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32()},goog.exportProperty(jspb.BinaryReader.prototype,"readSfixed32",jspb.BinaryReader.prototype.readSfixed32),jspb.BinaryReader.prototype.readSfixed32String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32().toString()},jspb.BinaryReader.prototype.readSfixed64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64()},goog.exportProperty(jspb.BinaryReader.prototype,"readSfixed64",jspb.BinaryReader.prototype.readSfixed64),jspb.BinaryReader.prototype.readSfixed64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64String()},jspb.BinaryReader.prototype.readFloat=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readFloat()},goog.exportProperty(jspb.BinaryReader.prototype,"readFloat",jspb.BinaryReader.prototype.readFloat),jspb.BinaryReader.prototype.readDouble=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readDouble()},goog.exportProperty(jspb.BinaryReader.prototype,"readDouble",jspb.BinaryReader.prototype.readDouble),jspb.BinaryReader.prototype.readBool=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),!!this.decoder_.readUnsignedVarint32()},goog.exportProperty(jspb.BinaryReader.prototype,"readBool",jspb.BinaryReader.prototype.readBool),jspb.BinaryReader.prototype.readEnum=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()},goog.exportProperty(jspb.BinaryReader.prototype,"readEnum",jspb.BinaryReader.prototype.readEnum),jspb.BinaryReader.prototype.readString=function(){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var o=this.decoder_.readUnsignedVarint32();return this.decoder_.readString(o)},goog.exportProperty(jspb.BinaryReader.prototype,"readString",jspb.BinaryReader.prototype.readString),jspb.BinaryReader.prototype.readBytes=function(){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var o=this.decoder_.readUnsignedVarint32();return this.decoder_.readBytes(o)},goog.exportProperty(jspb.BinaryReader.prototype,"readBytes",jspb.BinaryReader.prototype.readBytes),jspb.BinaryReader.prototype.readVarintHash64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readVarintHash64()},jspb.BinaryReader.prototype.readSintHash64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarintHash64()},jspb.BinaryReader.prototype.readSplitVarint64=function(o){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSplitVarint64(o)},jspb.BinaryReader.prototype.readSplitZigzagVarint64=function(o){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSplitVarint64(function(s,_){return jspb.utils.fromZigzag64(s,_,o)})},jspb.BinaryReader.prototype.readFixedHash64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readFixedHash64()},jspb.BinaryReader.prototype.readSplitFixed64=function(o){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readSplitFixed64(o)},jspb.BinaryReader.prototype.readPackedField_=function(o){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var s=this.decoder_.readUnsignedVarint32();s=this.decoder_.getCursor()+s;for(var _=[];this.decoder_.getCursor()>>7|s<<25)>>>0,s>>>=7;this.buffer_.push(o)},jspb.BinaryEncoder.prototype.writeSplitFixed64=function(o,s){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(s==Math.floor(s)),jspb.asserts.assert(0<=o&&o>>=7;this.buffer_.push(o)},jspb.BinaryEncoder.prototype.writeSignedVarint32=function(o){if(jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_31&&os;s++)this.buffer_.push(o&127|128),o>>=7;this.buffer_.push(1)}},jspb.BinaryEncoder.prototype.writeUnsignedVarint64=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&o=-jspb.BinaryConstants.TWO_TO_63&&o=-jspb.BinaryConstants.TWO_TO_31&&o>31)>>>0)},jspb.BinaryEncoder.prototype.writeZigzagVarint64=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_63&&o>>0,j>>>0)})},jspb.BinaryEncoder.prototype.writeUint8=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&256>o),this.buffer_.push(o>>>0&255)},jspb.BinaryEncoder.prototype.writeUint16=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&65536>o),this.buffer_.push(o>>>0&255),this.buffer_.push(o>>>8&255)},jspb.BinaryEncoder.prototype.writeUint32=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&o>>0&255),this.buffer_.push(o>>>8&255),this.buffer_.push(o>>>16&255),this.buffer_.push(o>>>24&255)},jspb.BinaryEncoder.prototype.writeUint64=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(0<=o&&oo),this.buffer_.push(o>>>0&255)},jspb.BinaryEncoder.prototype.writeInt16=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(-32768<=o&&32768>o),this.buffer_.push(o>>>0&255),this.buffer_.push(o>>>8&255)},jspb.BinaryEncoder.prototype.writeInt32=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_31&&o>>0&255),this.buffer_.push(o>>>8&255),this.buffer_.push(o>>>16&255),this.buffer_.push(o>>>24&255)},jspb.BinaryEncoder.prototype.writeInt64=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_63&&o=-jspb.BinaryConstants.TWO_TO_63&&+o=-jspb.BinaryConstants.FLOAT32_MAX&&o<=jspb.BinaryConstants.FLOAT32_MAX),jspb.utils.splitFloat32(o),this.writeUint32(jspb.utils.split64Low)},jspb.BinaryEncoder.prototype.writeDouble=function(o){jspb.asserts.assert(o===1/0||o===-1/0||isNaN(o)||o>=-jspb.BinaryConstants.FLOAT64_MAX&&o<=jspb.BinaryConstants.FLOAT64_MAX),jspb.utils.splitFloat64(o),this.writeUint32(jspb.utils.split64Low),this.writeUint32(jspb.utils.split64High)},jspb.BinaryEncoder.prototype.writeBool=function(o){jspb.asserts.assert(typeof o=="boolean"||typeof o=="number"),this.buffer_.push(o?1:0)},jspb.BinaryEncoder.prototype.writeEnum=function(o){jspb.asserts.assert(o==Math.floor(o)),jspb.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_31&&oj)this.buffer_.push(j);else if(2048>j)this.buffer_.push(j>>6|192),this.buffer_.push(j&63|128);else if(65536>j)if(55296<=j&&56319>=j&&_+1=$&&(j=1024*(j-55296)+$-56320+65536,this.buffer_.push(j>>18|240),this.buffer_.push(j>>12&63|128),this.buffer_.push(j>>6&63|128),this.buffer_.push(j&63|128),_++)}else this.buffer_.push(j>>12|224),this.buffer_.push(j>>6&63|128),this.buffer_.push(j&63|128)}return this.buffer_.length-s},jspb.arith={},jspb.arith.UInt64=function(o,s){this.lo=o,this.hi=s},jspb.arith.UInt64.prototype.cmp=function(o){return this.hi>>1|(this.hi&1)<<31)>>>0,this.hi>>>1>>>0)},jspb.arith.UInt64.prototype.leftShift=function(){return new jspb.arith.UInt64(this.lo<<1>>>0,(this.hi<<1|this.lo>>>31)>>>0)},jspb.arith.UInt64.prototype.msb=function(){return!!(this.hi&2147483648)},jspb.arith.UInt64.prototype.lsb=function(){return!!(this.lo&1)},jspb.arith.UInt64.prototype.zero=function(){return this.lo==0&&this.hi==0},jspb.arith.UInt64.prototype.add=function(o){return new jspb.arith.UInt64((this.lo+o.lo&4294967295)>>>0>>>0,((this.hi+o.hi&4294967295)>>>0)+(4294967296<=this.lo+o.lo?1:0)>>>0)},jspb.arith.UInt64.prototype.sub=function(o){return new jspb.arith.UInt64((this.lo-o.lo&4294967295)>>>0>>>0,((this.hi-o.hi&4294967295)>>>0)-(0>this.lo-o.lo?1:0)>>>0)},jspb.arith.UInt64.mul32x32=function(o,s){var _=o&65535;o>>>=16;var j=s&65535,$=s>>>16;for(s=_*j+65536*(_*$&65535)+65536*(o*j&65535),_=o*$+(_*$>>>16)+(o*j>>>16);4294967296<=s;)s-=4294967296,_+=1;return new jspb.arith.UInt64(s>>>0,_>>>0)},jspb.arith.UInt64.prototype.mul=function(o){var s=jspb.arith.UInt64.mul32x32(this.lo,o);return o=jspb.arith.UInt64.mul32x32(this.hi,o),o.hi=o.lo,o.lo=0,s.add(o)},jspb.arith.UInt64.prototype.div=function(o){if(o==0)return[];var s=new jspb.arith.UInt64(0,0),_=new jspb.arith.UInt64(this.lo,this.hi);o=new jspb.arith.UInt64(o,0);for(var j=new jspb.arith.UInt64(1,0);!o.msb();)o=o.leftShift(),j=j.leftShift();for(;!j.zero();)0>=o.cmp(_)&&(s=s.add(j),_=_.sub(o)),o=o.rightShift(),j=j.rightShift();return[s,_]},jspb.arith.UInt64.prototype.toString=function(){for(var o="",s=this;!s.zero();){s=s.div(10);var _=s[0];o=s[1].lo+o,s=_}return o==""&&(o="0"),o},jspb.arith.UInt64.fromString=function(o){for(var s=new jspb.arith.UInt64(0,0),_=new jspb.arith.UInt64(0,0),j=0;jo[j]||"9">>0>>>0,((this.hi+o.hi&4294967295)>>>0)+(4294967296<=this.lo+o.lo?1:0)>>>0)},jspb.arith.Int64.prototype.sub=function(o){return new jspb.arith.Int64((this.lo-o.lo&4294967295)>>>0>>>0,((this.hi-o.hi&4294967295)>>>0)-(0>this.lo-o.lo?1:0)>>>0)},jspb.arith.Int64.prototype.clone=function(){return new jspb.arith.Int64(this.lo,this.hi)},jspb.arith.Int64.prototype.toString=function(){var o=(this.hi&2147483648)!=0,s=new jspb.arith.UInt64(this.lo,this.hi);return o&&(s=new jspb.arith.UInt64(0,0).sub(s)),(o?"-":"")+s.toString()},jspb.arith.Int64.fromString=function(o){var s=0>>=7,this.totalLength_++;o.push(s),this.totalLength_++},jspb.BinaryWriter.prototype.writeSerializedMessage=function(o,s,_){this.appendUint8Array_(o.subarray(s,_))},jspb.BinaryWriter.prototype.maybeWriteSerializedMessage=function(o,s,_){o!=null&&s!=null&&_!=null&&this.writeSerializedMessage(o,s,_)},jspb.BinaryWriter.prototype.reset=function(){this.blocks_=[],this.encoder_.end(),this.totalLength_=0,this.bookmarks_=[]},jspb.BinaryWriter.prototype.getResultBuffer=function(){jspb.asserts.assert(this.bookmarks_.length==0);for(var o=new Uint8Array(this.totalLength_+this.encoder_.length()),s=this.blocks_,_=s.length,j=0,$=0;$<_;$++){var _e=s[$];o.set(_e,j),j+=_e.length}return s=this.encoder_.end(),o.set(s,j),j+=s.length,jspb.asserts.assert(j==o.length),this.blocks_=[o],o},goog.exportProperty(jspb.BinaryWriter.prototype,"getResultBuffer",jspb.BinaryWriter.prototype.getResultBuffer),jspb.BinaryWriter.prototype.getResultBase64String=function(o){return goog.crypt.base64.encodeByteArray(this.getResultBuffer(),o)},jspb.BinaryWriter.prototype.beginSubMessage=function(o){this.bookmarks_.push(this.beginDelimited_(o))},jspb.BinaryWriter.prototype.endSubMessage=function(){jspb.asserts.assert(0<=this.bookmarks_.length),this.endDelimited_(this.bookmarks_.pop())},jspb.BinaryWriter.prototype.writeFieldHeader_=function(o,s){jspb.asserts.assert(1<=o&&o==Math.floor(o)),this.encoder_.writeUnsignedVarint32(8*o+s)},jspb.BinaryWriter.prototype.writeAny=function(o,s,_){var j=jspb.BinaryConstants.FieldType;switch(o){case j.DOUBLE:this.writeDouble(s,_);break;case j.FLOAT:this.writeFloat(s,_);break;case j.INT64:this.writeInt64(s,_);break;case j.UINT64:this.writeUint64(s,_);break;case j.INT32:this.writeInt32(s,_);break;case j.FIXED64:this.writeFixed64(s,_);break;case j.FIXED32:this.writeFixed32(s,_);break;case j.BOOL:this.writeBool(s,_);break;case j.STRING:this.writeString(s,_);break;case j.GROUP:jspb.asserts.fail("Group field type not supported in writeAny()");break;case j.MESSAGE:jspb.asserts.fail("Message field type not supported in writeAny()");break;case j.BYTES:this.writeBytes(s,_);break;case j.UINT32:this.writeUint32(s,_);break;case j.ENUM:this.writeEnum(s,_);break;case j.SFIXED32:this.writeSfixed32(s,_);break;case j.SFIXED64:this.writeSfixed64(s,_);break;case j.SINT32:this.writeSint32(s,_);break;case j.SINT64:this.writeSint64(s,_);break;case j.FHASH64:this.writeFixedHash64(s,_);break;case j.VHASH64:this.writeVarintHash64(s,_);break;default:jspb.asserts.fail("Invalid field type in writeAny()")}},jspb.BinaryWriter.prototype.writeUnsignedVarint32_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeUnsignedVarint32(s))},jspb.BinaryWriter.prototype.writeSignedVarint32_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeSignedVarint32(s))},jspb.BinaryWriter.prototype.writeUnsignedVarint64_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeUnsignedVarint64(s))},jspb.BinaryWriter.prototype.writeSignedVarint64_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeSignedVarint64(s))},jspb.BinaryWriter.prototype.writeZigzagVarint32_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeZigzagVarint32(s))},jspb.BinaryWriter.prototype.writeZigzagVarint64_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeZigzagVarint64(s))},jspb.BinaryWriter.prototype.writeZigzagVarint64String_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeZigzagVarint64String(s))},jspb.BinaryWriter.prototype.writeZigzagVarintHash64_=function(o,s){s!=null&&(this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.VARINT),this.encoder_.writeZigzagVarintHash64(s))},jspb.BinaryWriter.prototype.writeInt32=function(o,s){s!=null&&(jspb.asserts.assert(s>=-jspb.BinaryConstants.TWO_TO_31&&s=-jspb.BinaryConstants.TWO_TO_31&&s=-jspb.BinaryConstants.TWO_TO_63&&s=-jspb.BinaryConstants.TWO_TO_31&&s=-jspb.BinaryConstants.TWO_TO_63&&s=-jspb.BinaryConstants.TWO_TO_31&&s=-jspb.BinaryConstants.TWO_TO_63&&s=-jspb.BinaryConstants.TWO_TO_31&&s>>0,_e>>>0)})},jspb.BinaryWriter.prototype.writeRepeatedInt32=function(o,s){if(s!=null)for(var _=0;_>>0,tt>>>0)});this.endDelimited_(o)}},jspb.BinaryWriter.prototype.writePackedInt64String=function(o,s){if(s!=null&&s.length){o=this.beginDelimited_(o);for(var _=0;_s.length?_.length:s.length;for(o.getJsPbMessageId()&&(j[0]=o.getJsPbMessageId(),$=1);$<_e;$++)jspb.Message.compareFields(_[$],s[$])||(j[$]=s[$]);return new o.constructor(j)},goog.exportProperty(jspb.Message,"difference",jspb.Message.difference),jspb.Message.equals=function(o,s){return o==s||!(!o||!s)&&o instanceof s.constructor&&jspb.Message.compareFields(o.toArray(),s.toArray())},goog.exportProperty(jspb.Message,"equals",jspb.Message.equals),jspb.Message.compareExtensions=function(o,s){o=o||{},s=s||{};var _={},j;for(j in o)_[j]=0;for(j in s)_[j]=0;for(j in _)if(!jspb.Message.compareFields(o[j],s[j]))return!1;return!0},goog.exportProperty(jspb.Message,"compareExtensions",jspb.Message.compareExtensions),jspb.Message.compareFields=function(o,s){if(o==s)return!0;if(!goog.isObject(o)||!goog.isObject(s))return typeof o=="number"&&isNaN(o)||typeof s=="number"&&isNaN(s)?String(o)==String(s):!1;if(o.constructor!=s.constructor)return!1;if(jspb.Message.SUPPORTS_UINT8ARRAY_&&o.constructor===Uint8Array){if(o.length!=s.length)return!1;for(var _=0;_0&&_e.writeString(1,et)},proto.google.protobuf.StringValue.prototype.getValue=function(){return s.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.StringValue.prototype.setValue=function($){return s.Message.setProto3StringField(this,1,$)},s.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.BytesValue.prototype.toObject=function($){return proto.google.protobuf.BytesValue.toObject($,this)},proto.google.protobuf.BytesValue.toObject=function($,_e){var et={value:_e.getValue_asB64()};return $&&(et.$jspbMessageInstance=_e),et}),proto.google.protobuf.BytesValue.deserializeBinary=function($){var _e=new s.BinaryReader($),et=new proto.google.protobuf.BytesValue;return proto.google.protobuf.BytesValue.deserializeBinaryFromReader(et,_e)},proto.google.protobuf.BytesValue.deserializeBinaryFromReader=function($,_e){for(;_e.nextField()&&!_e.isEndGroup();){var et=_e.getFieldNumber();switch(et){case 1:var tt=_e.readBytes();$.setValue(tt);break;default:_e.skipField();break}}return $},proto.google.protobuf.BytesValue.prototype.serializeBinary=function(){var $=new s.BinaryWriter;return proto.google.protobuf.BytesValue.serializeBinaryToWriter(this,$),$.getResultBuffer()},proto.google.protobuf.BytesValue.serializeBinaryToWriter=function($,_e){var et=void 0;et=$.getValue_asU8(),et.length>0&&_e.writeBytes(1,et)},proto.google.protobuf.BytesValue.prototype.getValue=function(){return s.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.BytesValue.prototype.getValue_asB64=function(){return s.Message.bytesAsB64(this.getValue())},proto.google.protobuf.BytesValue.prototype.getValue_asU8=function(){return s.Message.bytesAsU8(this.getValue())},proto.google.protobuf.BytesValue.prototype.setValue=function($){return s.Message.setProto3BytesField(this,1,$)},_.object.extend(o,proto.google.protobuf)})(wrappers_pb);(function(o){var s=googleProtobuf,_=s,j=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||typeof j<"u"&&j||typeof self<"u"&&self||function(){return this}.call(null)||Function("return this")(),$=wrappers_pb;_.object.extend(proto,$),_.exportSymbol("proto.v1.signaling.api.CreatePeerRequest",null,j),_.exportSymbol("proto.v1.signaling.api.CreatePeerResponse",null,j),_.exportSymbol("proto.v1.signaling.api.DeletePeerRequest",null,j),_.exportSymbol("proto.v1.signaling.api.DeletePeerResponse",null,j),_.exportSymbol("proto.v1.signaling.api.GetHealthRequest",null,j),_.exportSymbol("proto.v1.signaling.api.GetHealthResponse",null,j),_.exportSymbol("proto.v1.signaling.api.GetIceServersRequest",null,j),_.exportSymbol("proto.v1.signaling.api.GetIceServersResponse",null,j),_.exportSymbol("proto.v1.signaling.api.GetPeersRequest",null,j),_.exportSymbol("proto.v1.signaling.api.GetPeersResponse",null,j),_.exportSymbol("proto.v1.signaling.api.GetSessionsRequest",null,j),_.exportSymbol("proto.v1.signaling.api.GetSessionsResponse",null,j),_.exportSymbol("proto.v1.signaling.api.Peer",null,j),_.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamRequest",null,j),_.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamResponse",null,j),_.exportSymbol("proto.v1.signaling.api.RefreshPeerRequest",null,j),_.exportSymbol("proto.v1.signaling.api.RefreshPeerResponse",null,j),_.exportSymbol("proto.v1.signaling.api.RtcSession",null,j),_.exportSymbol("proto.v1.signaling.api.SendSignalRequest",null,j),_.exportSymbol("proto.v1.signaling.api.SendSignalResponse",null,j),_.exportSymbol("proto.v1.signaling.api.SessionType",null,j),_.exportSymbol("proto.v1.signaling.api.Signal",null,j),proto.v1.signaling.api.Peer=function(_e){s.Message.initialize(this,_e,0,-1,proto.v1.signaling.api.Peer.repeatedFields_,null)},_.inherits(proto.v1.signaling.api.Peer,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Peer.displayName="proto.v1.signaling.api.Peer"),proto.v1.signaling.api.Signal=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.Signal,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Signal.displayName="proto.v1.signaling.api.Signal"),proto.v1.signaling.api.RtcSession=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.RtcSession,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RtcSession.displayName="proto.v1.signaling.api.RtcSession"),proto.v1.signaling.api.GetSessionsRequest=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.GetSessionsRequest,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetSessionsRequest.displayName="proto.v1.signaling.api.GetSessionsRequest"),proto.v1.signaling.api.GetSessionsResponse=function(_e){s.Message.initialize(this,_e,0,-1,proto.v1.signaling.api.GetSessionsResponse.repeatedFields_,null)},_.inherits(proto.v1.signaling.api.GetSessionsResponse,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetSessionsResponse.displayName="proto.v1.signaling.api.GetSessionsResponse"),proto.v1.signaling.api.GetHealthRequest=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.GetHealthRequest,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthRequest.displayName="proto.v1.signaling.api.GetHealthRequest"),proto.v1.signaling.api.GetHealthResponse=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.GetHealthResponse,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthResponse.displayName="proto.v1.signaling.api.GetHealthResponse"),proto.v1.signaling.api.CreatePeerRequest=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.CreatePeerRequest,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerRequest.displayName="proto.v1.signaling.api.CreatePeerRequest"),proto.v1.signaling.api.CreatePeerResponse=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.CreatePeerResponse,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerResponse.displayName="proto.v1.signaling.api.CreatePeerResponse"),proto.v1.signaling.api.DeletePeerRequest=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.DeletePeerRequest,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerRequest.displayName="proto.v1.signaling.api.DeletePeerRequest"),proto.v1.signaling.api.DeletePeerResponse=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.DeletePeerResponse,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerResponse.displayName="proto.v1.signaling.api.DeletePeerResponse"),proto.v1.signaling.api.RefreshPeerRequest=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.RefreshPeerRequest,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerRequest.displayName="proto.v1.signaling.api.RefreshPeerRequest"),proto.v1.signaling.api.RefreshPeerResponse=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.RefreshPeerResponse,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerResponse.displayName="proto.v1.signaling.api.RefreshPeerResponse"),proto.v1.signaling.api.GetPeersRequest=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.GetPeersRequest,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersRequest.displayName="proto.v1.signaling.api.GetPeersRequest"),proto.v1.signaling.api.GetPeersResponse=function(_e){s.Message.initialize(this,_e,0,-1,proto.v1.signaling.api.GetPeersResponse.repeatedFields_,null)},_.inherits(proto.v1.signaling.api.GetPeersResponse,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersResponse.displayName="proto.v1.signaling.api.GetPeersResponse"),proto.v1.signaling.api.GetIceServersRequest=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.GetIceServersRequest,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersRequest.displayName="proto.v1.signaling.api.GetIceServersRequest"),proto.v1.signaling.api.GetIceServersResponse=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.GetIceServersResponse,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersResponse.displayName="proto.v1.signaling.api.GetIceServersResponse"),proto.v1.signaling.api.SendSignalRequest=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.SendSignalRequest,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalRequest.displayName="proto.v1.signaling.api.SendSignalRequest"),proto.v1.signaling.api.SendSignalResponse=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.SendSignalResponse,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalResponse.displayName="proto.v1.signaling.api.SendSignalResponse"),proto.v1.signaling.api.ReceiveSignalStreamRequest=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.ReceiveSignalStreamRequest,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.displayName="proto.v1.signaling.api.ReceiveSignalStreamRequest"),proto.v1.signaling.api.ReceiveSignalStreamResponse=function(_e){s.Message.initialize(this,_e,0,-1,null,null)},_.inherits(proto.v1.signaling.api.ReceiveSignalStreamResponse,s.Message),_.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.displayName="proto.v1.signaling.api.ReceiveSignalStreamResponse"),proto.v1.signaling.api.Peer.repeatedFields_=[5],s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Peer.prototype.toObject=function(_e){return proto.v1.signaling.api.Peer.toObject(_e,this)},proto.v1.signaling.api.Peer.toObject=function(_e,et){var tt,nt={peerId:s.Message.getFieldWithDefault(et,1,""),organizationId:s.Message.getFieldWithDefault(et,2,""),userId:(tt=et.getUserId())&&$.StringValue.toObject(_e,tt),deviceId:(tt=et.getDeviceId())&&$.StringValue.toObject(_e,tt),sessionIdsList:(tt=s.Message.getRepeatedField(et,5))==null?void 0:tt,peerCreatedTimestamp:(tt=et.getPeerCreatedTimestamp())&&$.Int64Value.toObject(_e,tt)};return _e&&(nt.$jspbMessageInstance=et),nt}),proto.v1.signaling.api.Peer.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.Peer;return proto.v1.signaling.api.Peer.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.Peer.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=et.readString();_e.setPeerId(nt);break;case 2:var nt=et.readString();_e.setOrganizationId(nt);break;case 3:var nt=new $.StringValue;et.readMessage(nt,$.StringValue.deserializeBinaryFromReader),_e.setUserId(nt);break;case 4:var nt=new $.StringValue;et.readMessage(nt,$.StringValue.deserializeBinaryFromReader),_e.setDeviceId(nt);break;case 5:var nt=et.readString();_e.addSessionIds(nt);break;case 6:var nt=new $.Int64Value;et.readMessage(nt,$.Int64Value.deserializeBinaryFromReader),_e.setPeerCreatedTimestamp(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.Peer.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.Peer.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.Peer.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getPeerId(),tt.length>0&&et.writeString(1,tt),tt=_e.getOrganizationId(),tt.length>0&&et.writeString(2,tt),tt=_e.getUserId(),tt!=null&&et.writeMessage(3,tt,$.StringValue.serializeBinaryToWriter),tt=_e.getDeviceId(),tt!=null&&et.writeMessage(4,tt,$.StringValue.serializeBinaryToWriter),tt=_e.getSessionIdsList(),tt.length>0&&et.writeRepeatedString(5,tt),tt=_e.getPeerCreatedTimestamp(),tt!=null&&et.writeMessage(6,tt,$.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.Peer.prototype.getPeerId=function(){return s.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.Peer.prototype.setPeerId=function(_e){return s.Message.setProto3StringField(this,1,_e)},proto.v1.signaling.api.Peer.prototype.getOrganizationId=function(){return s.Message.getFieldWithDefault(this,2,"")},proto.v1.signaling.api.Peer.prototype.setOrganizationId=function(_e){return s.Message.setProto3StringField(this,2,_e)},proto.v1.signaling.api.Peer.prototype.getUserId=function(){return s.Message.getWrapperField(this,$.StringValue,3)},proto.v1.signaling.api.Peer.prototype.setUserId=function(_e){return s.Message.setWrapperField(this,3,_e)},proto.v1.signaling.api.Peer.prototype.clearUserId=function(){return this.setUserId(void 0)},proto.v1.signaling.api.Peer.prototype.hasUserId=function(){return s.Message.getField(this,3)!=null},proto.v1.signaling.api.Peer.prototype.getDeviceId=function(){return s.Message.getWrapperField(this,$.StringValue,4)},proto.v1.signaling.api.Peer.prototype.setDeviceId=function(_e){return s.Message.setWrapperField(this,4,_e)},proto.v1.signaling.api.Peer.prototype.clearDeviceId=function(){return this.setDeviceId(void 0)},proto.v1.signaling.api.Peer.prototype.hasDeviceId=function(){return s.Message.getField(this,4)!=null},proto.v1.signaling.api.Peer.prototype.getSessionIdsList=function(){return s.Message.getRepeatedField(this,5)},proto.v1.signaling.api.Peer.prototype.setSessionIdsList=function(_e){return s.Message.setField(this,5,_e||[])},proto.v1.signaling.api.Peer.prototype.addSessionIds=function(_e,et){return s.Message.addToRepeatedField(this,5,_e,et)},proto.v1.signaling.api.Peer.prototype.clearSessionIdsList=function(){return this.setSessionIdsList([])},proto.v1.signaling.api.Peer.prototype.getPeerCreatedTimestamp=function(){return s.Message.getWrapperField(this,$.Int64Value,6)},proto.v1.signaling.api.Peer.prototype.setPeerCreatedTimestamp=function(_e){return s.Message.setWrapperField(this,6,_e)},proto.v1.signaling.api.Peer.prototype.clearPeerCreatedTimestamp=function(){return this.setPeerCreatedTimestamp(void 0)},proto.v1.signaling.api.Peer.prototype.hasPeerCreatedTimestamp=function(){return s.Message.getField(this,6)!=null},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Signal.prototype.toObject=function(_e){return proto.v1.signaling.api.Signal.toObject(_e,this)},proto.v1.signaling.api.Signal.toObject=function(_e,et){var tt,nt={sessionId:(tt=et.getSessionId())&&$.StringValue.toObject(_e,tt),sessionCreatedTimestamp:(tt=et.getSessionCreatedTimestamp())&&$.Int64Value.toObject(_e,tt),senderId:s.Message.getFieldWithDefault(et,3,""),receiverId:s.Message.getFieldWithDefault(et,4,""),payload:s.Message.getFieldWithDefault(et,5,""),iceServers:s.Message.getFieldWithDefault(et,6,""),iceTransportPolicy:s.Message.getFieldWithDefault(et,7,""),sessionType:s.Message.getFieldWithDefault(et,8,0)};return _e&&(nt.$jspbMessageInstance=et),nt}),proto.v1.signaling.api.Signal.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.Signal;return proto.v1.signaling.api.Signal.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.Signal.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=new $.StringValue;et.readMessage(nt,$.StringValue.deserializeBinaryFromReader),_e.setSessionId(nt);break;case 2:var nt=new $.Int64Value;et.readMessage(nt,$.Int64Value.deserializeBinaryFromReader),_e.setSessionCreatedTimestamp(nt);break;case 3:var nt=et.readString();_e.setSenderId(nt);break;case 4:var nt=et.readString();_e.setReceiverId(nt);break;case 5:var nt=et.readString();_e.setPayload(nt);break;case 6:var nt=et.readString();_e.setIceServers(nt);break;case 7:var nt=et.readString();_e.setIceTransportPolicy(nt);break;case 8:var nt=et.readEnum();_e.setSessionType(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.Signal.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.Signal.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.Signal.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getSessionId(),tt!=null&&et.writeMessage(1,tt,$.StringValue.serializeBinaryToWriter),tt=_e.getSessionCreatedTimestamp(),tt!=null&&et.writeMessage(2,tt,$.Int64Value.serializeBinaryToWriter),tt=_e.getSenderId(),tt.length>0&&et.writeString(3,tt),tt=_e.getReceiverId(),tt.length>0&&et.writeString(4,tt),tt=_e.getPayload(),tt.length>0&&et.writeString(5,tt),tt=_e.getIceServers(),tt.length>0&&et.writeString(6,tt),tt=_e.getIceTransportPolicy(),tt.length>0&&et.writeString(7,tt),tt=_e.getSessionType(),tt!==0&&et.writeEnum(8,tt)},proto.v1.signaling.api.Signal.prototype.getSessionId=function(){return s.Message.getWrapperField(this,$.StringValue,1)},proto.v1.signaling.api.Signal.prototype.setSessionId=function(_e){return s.Message.setWrapperField(this,1,_e)},proto.v1.signaling.api.Signal.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionId=function(){return s.Message.getField(this,1)!=null},proto.v1.signaling.api.Signal.prototype.getSessionCreatedTimestamp=function(){return s.Message.getWrapperField(this,$.Int64Value,2)},proto.v1.signaling.api.Signal.prototype.setSessionCreatedTimestamp=function(_e){return s.Message.setWrapperField(this,2,_e)},proto.v1.signaling.api.Signal.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionCreatedTimestamp=function(){return s.Message.getField(this,2)!=null},proto.v1.signaling.api.Signal.prototype.getSenderId=function(){return s.Message.getFieldWithDefault(this,3,"")},proto.v1.signaling.api.Signal.prototype.setSenderId=function(_e){return s.Message.setProto3StringField(this,3,_e)},proto.v1.signaling.api.Signal.prototype.getReceiverId=function(){return s.Message.getFieldWithDefault(this,4,"")},proto.v1.signaling.api.Signal.prototype.setReceiverId=function(_e){return s.Message.setProto3StringField(this,4,_e)},proto.v1.signaling.api.Signal.prototype.getPayload=function(){return s.Message.getFieldWithDefault(this,5,"")},proto.v1.signaling.api.Signal.prototype.setPayload=function(_e){return s.Message.setProto3StringField(this,5,_e)},proto.v1.signaling.api.Signal.prototype.getIceServers=function(){return s.Message.getFieldWithDefault(this,6,"")},proto.v1.signaling.api.Signal.prototype.setIceServers=function(_e){return s.Message.setProto3StringField(this,6,_e)},proto.v1.signaling.api.Signal.prototype.getIceTransportPolicy=function(){return s.Message.getFieldWithDefault(this,7,"")},proto.v1.signaling.api.Signal.prototype.setIceTransportPolicy=function(_e){return s.Message.setProto3StringField(this,7,_e)},proto.v1.signaling.api.Signal.prototype.getSessionType=function(){return s.Message.getFieldWithDefault(this,8,0)},proto.v1.signaling.api.Signal.prototype.setSessionType=function(_e){return s.Message.setProto3EnumField(this,8,_e)},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RtcSession.prototype.toObject=function(_e){return proto.v1.signaling.api.RtcSession.toObject(_e,this)},proto.v1.signaling.api.RtcSession.toObject=function(_e,et){var tt={sessionId:s.Message.getFieldWithDefault(et,1,""),offerPeerId:s.Message.getFieldWithDefault(et,2,""),answerPeerId:s.Message.getFieldWithDefault(et,3,""),organizationId:s.Message.getFieldWithDefault(et,4,""),sessionType:s.Message.getFieldWithDefault(et,5,"")};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.RtcSession.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.RtcSession;return proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=et.readString();_e.setSessionId(nt);break;case 2:var nt=et.readString();_e.setOfferPeerId(nt);break;case 3:var nt=et.readString();_e.setAnswerPeerId(nt);break;case 4:var nt=et.readString();_e.setOrganizationId(nt);break;case 5:var nt=et.readString();_e.setSessionType(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.RtcSession.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.RtcSession.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.RtcSession.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getSessionId(),tt.length>0&&et.writeString(1,tt),tt=_e.getOfferPeerId(),tt.length>0&&et.writeString(2,tt),tt=_e.getAnswerPeerId(),tt.length>0&&et.writeString(3,tt),tt=_e.getOrganizationId(),tt.length>0&&et.writeString(4,tt),tt=_e.getSessionType(),tt.length>0&&et.writeString(5,tt)},proto.v1.signaling.api.RtcSession.prototype.getSessionId=function(){return s.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.RtcSession.prototype.setSessionId=function(_e){return s.Message.setProto3StringField(this,1,_e)},proto.v1.signaling.api.RtcSession.prototype.getOfferPeerId=function(){return s.Message.getFieldWithDefault(this,2,"")},proto.v1.signaling.api.RtcSession.prototype.setOfferPeerId=function(_e){return s.Message.setProto3StringField(this,2,_e)},proto.v1.signaling.api.RtcSession.prototype.getAnswerPeerId=function(){return s.Message.getFieldWithDefault(this,3,"")},proto.v1.signaling.api.RtcSession.prototype.setAnswerPeerId=function(_e){return s.Message.setProto3StringField(this,3,_e)},proto.v1.signaling.api.RtcSession.prototype.getOrganizationId=function(){return s.Message.getFieldWithDefault(this,4,"")},proto.v1.signaling.api.RtcSession.prototype.setOrganizationId=function(_e){return s.Message.setProto3StringField(this,4,_e)},proto.v1.signaling.api.RtcSession.prototype.getSessionType=function(){return s.Message.getFieldWithDefault(this,5,"")},proto.v1.signaling.api.RtcSession.prototype.setSessionType=function(_e){return s.Message.setProto3StringField(this,5,_e)},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetSessionsRequest.prototype.toObject=function(_e){return proto.v1.signaling.api.GetSessionsRequest.toObject(_e,this)},proto.v1.signaling.api.GetSessionsRequest.toObject=function(_e,et){var tt={};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.GetSessionsRequest.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.GetSessionsRequest;return proto.v1.signaling.api.GetSessionsRequest.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.GetSessionsRequest.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){default:et.skipField();break}}return _e},proto.v1.signaling.api.GetSessionsRequest.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.GetSessionsRequest.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.GetSessionsRequest.serializeBinaryToWriter=function(_e,et){},proto.v1.signaling.api.GetSessionsResponse.repeatedFields_=[1],s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetSessionsResponse.prototype.toObject=function(_e){return proto.v1.signaling.api.GetSessionsResponse.toObject(_e,this)},proto.v1.signaling.api.GetSessionsResponse.toObject=function(_e,et){var tt={sessionsList:s.Message.toObjectList(et.getSessionsList(),proto.v1.signaling.api.RtcSession.toObject,_e)};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.GetSessionsResponse.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.GetSessionsResponse;return proto.v1.signaling.api.GetSessionsResponse.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.GetSessionsResponse.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=new proto.v1.signaling.api.RtcSession;et.readMessage(nt,proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader),_e.addSessions(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.GetSessionsResponse.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.GetSessionsResponse.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.GetSessionsResponse.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getSessionsList(),tt.length>0&&et.writeRepeatedMessage(1,tt,proto.v1.signaling.api.RtcSession.serializeBinaryToWriter)},proto.v1.signaling.api.GetSessionsResponse.prototype.getSessionsList=function(){return s.Message.getRepeatedWrapperField(this,proto.v1.signaling.api.RtcSession,1)},proto.v1.signaling.api.GetSessionsResponse.prototype.setSessionsList=function(_e){return s.Message.setRepeatedWrapperField(this,1,_e)},proto.v1.signaling.api.GetSessionsResponse.prototype.addSessions=function(_e,et){return s.Message.addToRepeatedWrapperField(this,1,_e,proto.v1.signaling.api.RtcSession,et)},proto.v1.signaling.api.GetSessionsResponse.prototype.clearSessionsList=function(){return this.setSessionsList([])},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthRequest.prototype.toObject=function(_e){return proto.v1.signaling.api.GetHealthRequest.toObject(_e,this)},proto.v1.signaling.api.GetHealthRequest.toObject=function(_e,et){var tt={};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.GetHealthRequest.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.GetHealthRequest;return proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){default:et.skipField();break}}return _e},proto.v1.signaling.api.GetHealthRequest.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter=function(_e,et){},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthResponse.prototype.toObject=function(_e){return proto.v1.signaling.api.GetHealthResponse.toObject(_e,this)},proto.v1.signaling.api.GetHealthResponse.toObject=function(_e,et){var tt={version:s.Message.getFieldWithDefault(et,1,"")};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.GetHealthResponse.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.GetHealthResponse;return proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=et.readString();_e.setVersion(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.GetHealthResponse.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getVersion(),tt.length>0&&et.writeString(1,tt)},proto.v1.signaling.api.GetHealthResponse.prototype.getVersion=function(){return s.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetHealthResponse.prototype.setVersion=function(_e){return s.Message.setProto3StringField(this,1,_e)},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerRequest.prototype.toObject=function(_e){return proto.v1.signaling.api.CreatePeerRequest.toObject(_e,this)},proto.v1.signaling.api.CreatePeerRequest.toObject=function(_e,et){var tt={};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.CreatePeerRequest.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.CreatePeerRequest;return proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){default:et.skipField();break}}return _e},proto.v1.signaling.api.CreatePeerRequest.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter=function(_e,et){},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerResponse.prototype.toObject=function(_e){return proto.v1.signaling.api.CreatePeerResponse.toObject(_e,this)},proto.v1.signaling.api.CreatePeerResponse.toObject=function(_e,et){var tt,nt={peer:(tt=et.getPeer())&&proto.v1.signaling.api.Peer.toObject(_e,tt)};return _e&&(nt.$jspbMessageInstance=et),nt}),proto.v1.signaling.api.CreatePeerResponse.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.CreatePeerResponse;return proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=new proto.v1.signaling.api.Peer;et.readMessage(nt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),_e.setPeer(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.CreatePeerResponse.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getPeer(),tt!=null&&et.writeMessage(1,tt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.CreatePeerResponse.prototype.getPeer=function(){return s.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.CreatePeerResponse.prototype.setPeer=function(_e){return s.Message.setWrapperField(this,1,_e)},proto.v1.signaling.api.CreatePeerResponse.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.CreatePeerResponse.prototype.hasPeer=function(){return s.Message.getField(this,1)!=null},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerRequest.prototype.toObject=function(_e){return proto.v1.signaling.api.DeletePeerRequest.toObject(_e,this)},proto.v1.signaling.api.DeletePeerRequest.toObject=function(_e,et){var tt={peerId:s.Message.getFieldWithDefault(et,1,"")};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.DeletePeerRequest.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.DeletePeerRequest;return proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=et.readString();_e.setPeerId(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.DeletePeerRequest.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getPeerId(),tt.length>0&&et.writeString(1,tt)},proto.v1.signaling.api.DeletePeerRequest.prototype.getPeerId=function(){return s.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.DeletePeerRequest.prototype.setPeerId=function(_e){return s.Message.setProto3StringField(this,1,_e)},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerResponse.prototype.toObject=function(_e){return proto.v1.signaling.api.DeletePeerResponse.toObject(_e,this)},proto.v1.signaling.api.DeletePeerResponse.toObject=function(_e,et){var tt={};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.DeletePeerResponse.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.DeletePeerResponse;return proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){default:et.skipField();break}}return _e},proto.v1.signaling.api.DeletePeerResponse.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter=function(_e,et){},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerRequest.prototype.toObject=function(_e){return proto.v1.signaling.api.RefreshPeerRequest.toObject(_e,this)},proto.v1.signaling.api.RefreshPeerRequest.toObject=function(_e,et){var tt,nt={peer:(tt=et.getPeer())&&proto.v1.signaling.api.Peer.toObject(_e,tt)};return _e&&(nt.$jspbMessageInstance=et),nt}),proto.v1.signaling.api.RefreshPeerRequest.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.RefreshPeerRequest;return proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=new proto.v1.signaling.api.Peer;et.readMessage(nt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),_e.setPeer(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.RefreshPeerRequest.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getPeer(),tt!=null&&et.writeMessage(1,tt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.RefreshPeerRequest.prototype.getPeer=function(){return s.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.RefreshPeerRequest.prototype.setPeer=function(_e){return s.Message.setWrapperField(this,1,_e)},proto.v1.signaling.api.RefreshPeerRequest.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.RefreshPeerRequest.prototype.hasPeer=function(){return s.Message.getField(this,1)!=null},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerResponse.prototype.toObject=function(_e){return proto.v1.signaling.api.RefreshPeerResponse.toObject(_e,this)},proto.v1.signaling.api.RefreshPeerResponse.toObject=function(_e,et){var tt={};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.RefreshPeerResponse.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.RefreshPeerResponse;return proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){default:et.skipField();break}}return _e},proto.v1.signaling.api.RefreshPeerResponse.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter=function(_e,et){},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersRequest.prototype.toObject=function(_e){return proto.v1.signaling.api.GetPeersRequest.toObject(_e,this)},proto.v1.signaling.api.GetPeersRequest.toObject=function(_e,et){var tt={};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.GetPeersRequest.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.GetPeersRequest;return proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){default:et.skipField();break}}return _e},proto.v1.signaling.api.GetPeersRequest.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter=function(_e,et){},proto.v1.signaling.api.GetPeersResponse.repeatedFields_=[1],s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersResponse.prototype.toObject=function(_e){return proto.v1.signaling.api.GetPeersResponse.toObject(_e,this)},proto.v1.signaling.api.GetPeersResponse.toObject=function(_e,et){var tt={peersList:s.Message.toObjectList(et.getPeersList(),proto.v1.signaling.api.Peer.toObject,_e)};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.GetPeersResponse.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.GetPeersResponse;return proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=new proto.v1.signaling.api.Peer;et.readMessage(nt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),_e.addPeers(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.GetPeersResponse.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getPeersList(),tt.length>0&&et.writeRepeatedMessage(1,tt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.GetPeersResponse.prototype.getPeersList=function(){return s.Message.getRepeatedWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.GetPeersResponse.prototype.setPeersList=function(_e){return s.Message.setRepeatedWrapperField(this,1,_e)},proto.v1.signaling.api.GetPeersResponse.prototype.addPeers=function(_e,et){return s.Message.addToRepeatedWrapperField(this,1,_e,proto.v1.signaling.api.Peer,et)},proto.v1.signaling.api.GetPeersResponse.prototype.clearPeersList=function(){return this.setPeersList([])},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersRequest.prototype.toObject=function(_e){return proto.v1.signaling.api.GetIceServersRequest.toObject(_e,this)},proto.v1.signaling.api.GetIceServersRequest.toObject=function(_e,et){var tt={};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.GetIceServersRequest.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.GetIceServersRequest;return proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){default:et.skipField();break}}return _e},proto.v1.signaling.api.GetIceServersRequest.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter=function(_e,et){},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersResponse.prototype.toObject=function(_e){return proto.v1.signaling.api.GetIceServersResponse.toObject(_e,this)},proto.v1.signaling.api.GetIceServersResponse.toObject=function(_e,et){var tt={iceServers:s.Message.getFieldWithDefault(et,1,"")};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.GetIceServersResponse.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.GetIceServersResponse;return proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=et.readString();_e.setIceServers(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.GetIceServersResponse.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getIceServers(),tt.length>0&&et.writeString(1,tt)},proto.v1.signaling.api.GetIceServersResponse.prototype.getIceServers=function(){return s.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetIceServersResponse.prototype.setIceServers=function(_e){return s.Message.setProto3StringField(this,1,_e)},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalRequest.prototype.toObject=function(_e){return proto.v1.signaling.api.SendSignalRequest.toObject(_e,this)},proto.v1.signaling.api.SendSignalRequest.toObject=function(_e,et){var tt,nt={signal:(tt=et.getSignal())&&proto.v1.signaling.api.Signal.toObject(_e,tt)};return _e&&(nt.$jspbMessageInstance=et),nt}),proto.v1.signaling.api.SendSignalRequest.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.SendSignalRequest;return proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=new proto.v1.signaling.api.Signal;et.readMessage(nt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),_e.setSignal(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.SendSignalRequest.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getSignal(),tt!=null&&et.writeMessage(1,tt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalRequest.prototype.getSignal=function(){return s.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.SendSignalRequest.prototype.setSignal=function(_e){return s.Message.setWrapperField(this,1,_e)},proto.v1.signaling.api.SendSignalRequest.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.SendSignalRequest.prototype.hasSignal=function(){return s.Message.getField(this,1)!=null},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalResponse.prototype.toObject=function(_e){return proto.v1.signaling.api.SendSignalResponse.toObject(_e,this)},proto.v1.signaling.api.SendSignalResponse.toObject=function(_e,et){var tt,nt={sessionId:(tt=et.getSessionId())&&$.StringValue.toObject(_e,tt),sessionCreatedTimestamp:(tt=et.getSessionCreatedTimestamp())&&$.Int64Value.toObject(_e,tt)};return _e&&(nt.$jspbMessageInstance=et),nt}),proto.v1.signaling.api.SendSignalResponse.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.SendSignalResponse;return proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=new $.StringValue;et.readMessage(nt,$.StringValue.deserializeBinaryFromReader),_e.setSessionId(nt);break;case 2:var nt=new $.Int64Value;et.readMessage(nt,$.Int64Value.deserializeBinaryFromReader),_e.setSessionCreatedTimestamp(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.SendSignalResponse.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getSessionId(),tt!=null&&et.writeMessage(1,tt,$.StringValue.serializeBinaryToWriter),tt=_e.getSessionCreatedTimestamp(),tt!=null&&et.writeMessage(2,tt,$.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionId=function(){return s.Message.getWrapperField(this,$.StringValue,1)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionId=function(_e){return s.Message.setWrapperField(this,1,_e)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionId=function(){return s.Message.getField(this,1)!=null},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionCreatedTimestamp=function(){return s.Message.getWrapperField(this,$.Int64Value,2)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionCreatedTimestamp=function(_e){return s.Message.setWrapperField(this,2,_e)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionCreatedTimestamp=function(){return s.Message.getField(this,2)!=null},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.toObject=function(_e){return proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject(_e,this)},proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject=function(_e,et){var tt={peerId:s.Message.getFieldWithDefault(et,1,"")};return _e&&(tt.$jspbMessageInstance=et),tt}),proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.ReceiveSignalStreamRequest;return proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=et.readString();_e.setPeerId(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getPeerId(),tt.length>0&&et.writeString(1,tt)},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.getPeerId=function(){return s.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.setPeerId=function(_e){return s.Message.setProto3StringField(this,1,_e)},s.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.toObject=function(_e){return proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject(_e,this)},proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject=function(_e,et){var tt,nt={signal:(tt=et.getSignal())&&proto.v1.signaling.api.Signal.toObject(_e,tt)};return _e&&(nt.$jspbMessageInstance=et),nt}),proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinary=function(_e){var et=new s.BinaryReader(_e),tt=new proto.v1.signaling.api.ReceiveSignalStreamResponse;return proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader(tt,et)},proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader=function(_e,et){for(;et.nextField()&&!et.isEndGroup();){var tt=et.getFieldNumber();switch(tt){case 1:var nt=new proto.v1.signaling.api.Signal;et.readMessage(nt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),_e.setSignal(nt);break;default:et.skipField();break}}return _e},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.serializeBinary=function(){var _e=new s.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter(this,_e),_e.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter=function(_e,et){var tt=void 0;tt=_e.getSignal(),tt!=null&&et.writeMessage(1,tt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.getSignal=function(){return s.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.setSignal=function(_e){return s.Message.setWrapperField(this,1,_e)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.hasSignal=function(){return s.Message.getField(this,1)!=null},proto.v1.signaling.api.SessionType={UNKNOWN:0,TELEOP:1,PORT_FORWARD:2,OBSERVE:3,HEADLESS:4},_.object.extend(o,proto.v1.signaling.api)})(signaling_pb);const encodedJs$2="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiOyhmdW5jdGlvbihTKXt0eXBlb2YgZGVmaW5lPT0iZnVuY3Rpb24iJiZkZWZpbmUuYW1kP2RlZmluZShTKTpTKCl9KShmdW5jdGlvbigpe2NvbnN0IEo9e21pbGxpc2Vjb25kOjEsc2Vjb25kOjFlMyxtaW51dGU6NmU0LGhvdXI6MzZlNSxkYXk6ODY0ZTUsd2Vlazo2MDQ4ZTUsbW9udGg6MjU5MmU2LHllYXI6MzE1MzZlNn07dmFyIHk9e30sRj17fSxhPXt9O09iamVjdC5kZWZpbmVQcm9wZXJ0eShhLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTtjb25zdCBHPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPSI7ZnVuY3Rpb24gaChBKXtsZXQgST1BLmxlbmd0aDtBW0EubGVuZ3RoLTJdPT09Ij0iP0ktPTI6QVtBLmxlbmd0aC0xXT09PSI9IiYmSS0tO2NvbnN0IGc9SS80KjN8MCxCPW5ldyBVaW50OEFycmF5KGcpO2ZvcihsZXQgUT0wLEM9MDtRPGc7USs9Myl7Y29uc3QgRD1HLmluZGV4T2YoQVtDKytdKSxFPUcuaW5kZXhPZihBW0MrK10pO2lmKEJbUV09RDw8MnxFPj40LEM9PT1JKWJyZWFrO2NvbnN0IHc9Ry5pbmRleE9mKEFbQysrXXx8Ij0iKTtpZihCW1ErMV09KEUmMTUpPDw0fHc+PjIsQz09PUkpYnJlYWs7Y29uc3Qgbz1HLmluZGV4T2YoQVtDKytdfHwiPSIpO0JbUSsyXT0odyYzKTw8NnxvfXJldHVybiBCfWEuZGVjb2RlPWgsT2JqZWN0LmRlZmluZVByb3BlcnR5KEYsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO2NvbnN0IEw9IkFHRnpiUUVBQUFBQmx3RVRZQUovZndGL1lBUi9mMzkvQVg5Z0FuOS9BR0FEZjM5L0FYOWdBWDhBWUFsL2YzOS9mMzkvZjM4QVlBRi9BWDlnQkg5L2YzOEFZQVovZjM5L2YzOEJmMkFJZjM5L2YzOS9mMzhBWUFOL2YzOEFZQVYvZjM5L2Z3Ri9ZQUFBWUFWL2YzOS9md0JnQm45L2YzOS9md0JnQ245L2YzOS9mMzkvZjM4QVlBQUJmMkFIZjM5L2YzOS9md0YvWUFoL2YzOS9mMzkvZndGL0FqQURCR2d5TmpRR2JXVnRZM0I1QUFNRWFESTJOQVp5WlhOcGVtVUFCZ1JvTWpZMEJtMWxiVzl5ZVFJQmdBS0FnQUlEWTJJQUFBUUFBUU1LQVFZQUJRTUZCZ2NBQndZQUF3NERCd2NGQWdBQ0F3UUFCUVVGQlFvRUFnUUpBUWNBQXdZR0FnSUJCZ1FEQWdJQkN3RUJBd01MRFFJQkFBQUNDUWtKRHdJRkJRQUJDZ0FTQ3hFSUNBY0lDQWNFQVFRSUNBWUJFQWdBQVFZSkFYOEJRYkRFd0FJTEJ5WUVCbTFoYkd4dll3QUtDV2d5TmpSaGJHeHZZd0JnQm1SbFkyOWtaUUJoQkdsdWFYUUFZZ3IycFFWaXdBSUJBbjhnQUJBUElnSkJmMHdFUUNBQVFRRVFDeG9nQVVFQU5nSUFRUUFQQ3dKQUFrQWdBa0dBZ0lDQUJFOEVRQ0FBUVFNUUMwRi9SZ1JBUVFFUEN5QUJJQUpCSFhaQkFYRkJBV28yQWdBTUFRc2dBa0dBZ0lDQUFrOEVRQ0FBUVFVUUMwRi9SZ1JBUVFFUEN5QUJJQUpCRzNaQkEzRkJBMm8yQWdBTUFRc2dBa0dBZ0lDQUFVOEVRQ0FBUVFjUUMwRi9SZ1JBUVFFUEN5QUJJQUpCR1haQkIzRkJCMm8yQWdBTUFRc2dBaEF2SWdOQkJHb2lBa0VnUmdSQUlBRkJBRFlDQUNBQVFTQVFDeHBCQVNFQ0lBQkJBUkFEUVFGSERRSWdBQkFQSVFNZ0FFRWdFQXRCZjBZTkFpQURRUUZMRFFJZ0EwRUJhd1JBSUFGQmZ6WUNBQXdDQ3lBQlFYODJBZ0JCQVE4TElBQWdBMEVGYWhBTEdpQUFJQUlRQXlJQVFYOUdCRUJCQVE4TElBRWdBRUYvSUFKMFFYOXphallDQUF0QkFDRUNDeUFDQzRnQ0FRZC9JQUFvQWdRaEJBSkFJQUFvQWd4QkEzUWlCeUFBS0FJUUlnaHJJZ0pCSUU0RVFDQUVLQUFBSWdOQkdIUWdBMEVJZEVHQWdQd0hjWElnQTBFSWRrR0EvZ054SUFOQkdIWnljaUVESUFBb0FnZ2lBa1VOQVNBRElBSjBJQVF0QUFSQkNDQUNhM1p5SVFNTUFRc2dBa0VCU0FSQURBRUxJQVF0QUFBZ0FDZ0NDQ0lGUVJocUlnWjBJUU1nQWlBRmFrRjRhaUlDUVFGSURRQURRQ0FFTFFBQklBWkJlR29pQm5RZ0EzSWhBeUFDUVFoS0lRVWdCRUVCYWlFRUlBSkJlR29oQWlBRkRRQUxDeUFBSUFFZ0NHb2lCRFlDRUNBQUlBUkJCM0UyQWdoQmZ5RUNJQVFnQjAwRWZ5QUFJQUFvQWdBZ0JFRURkbW8yQWdRZ0EwRWdJQUZyZGdWQmZ3c0xxZzBCQjM4Q1FDQUFSUTBBSUFCQmVHb2lBeUFBUVh4cUtBSUFJZ0ZCZUhFaUFHb2hCUUpBSUFGQkFYRU5BQ0FCUVFOeFJRMEJJQU1nQXlnQ0FDSUNheUlEUWNUQUFDZ0NBQ0lFU1EwQklBQWdBbW9oQUNBRFFjakFBQ2dDQUVjRVFDQUNRZjhCVFFSQUlBTW9BZ2dpQkNBQ1FRTjJJZ0pCQTNSQjNNQUFha2NhSUFRZ0F5Z0NEQ0lCUmdSQVFiVEFBRUcwd0FBb0FnQkJmaUFDZDNFMkFnQU1Bd3NnQkNBQk5nSU1JQUVnQkRZQ0NBd0NDeUFES0FJWUlRWUNRQ0FESUFNb0Fnd2lBVWNFUUNBRUlBTW9BZ2dpQWswRVFDQUNLQUlNR2dzZ0FpQUJOZ0lNSUFFZ0FqWUNDQXdCQ3dKQUlBTkJGR29pQWlnQ0FDSUVEUUFnQTBFUWFpSUNLQUlBSWdRTkFFRUFJUUVNQVFzRFFDQUNJUWNnQkNJQlFSUnFJZ0lvQWdBaUJBMEFJQUZCRUdvaEFpQUJLQUlRSWdRTkFBc2dCMEVBTmdJQUN5QUdSUTBCQWtBZ0F5QURLQUljSWdKQkFuUkI1TUlBYWlJRUtBSUFSZ1JBSUFRZ0FUWUNBQ0FCRFFGQnVNQUFRYmpBQUNnQ0FFRitJQUozY1RZQ0FBd0RDeUFHUVJCQkZDQUdLQUlRSUFOR0cyb2dBVFlDQUNBQlJRMENDeUFCSUFZMkFoZ2dBeWdDRUNJQ0JFQWdBU0FDTmdJUUlBSWdBVFlDR0FzZ0F5Z0NGQ0lDUlEwQklBRWdBallDRkNBQ0lBRTJBaGdNQVFzZ0JTZ0NCQ0lCUVFOeFFRTkhEUUJCdk1BQUlBQTJBZ0FnQlNBQlFYNXhOZ0lFSUFNZ0FFRUJjallDQkNBQUlBTnFJQUEyQWdBUEN5QUZJQU5ORFFBZ0JTZ0NCQ0lCUVFGeFJRMEFBa0FnQVVFQ2NVVUVRQ0FGUWN6QUFDZ0NBRVlFUUVITXdBQWdBellDQUVIQXdBQkJ3TUFBS0FJQUlBQnFJZ0EyQWdBZ0F5QUFRUUZ5TmdJRUlBTkJ5TUFBS0FJQVJ3MERRYnpBQUVFQU5nSUFRY2pBQUVFQU5nSUFEd3NnQlVISXdBQW9BZ0JHQkVCQnlNQUFJQU0yQWdCQnZNQUFRYnpBQUNnQ0FDQUFhaUlBTmdJQUlBTWdBRUVCY2pZQ0JDQUFJQU5xSUFBMkFnQVBDeUFCUVhoeElBQnFJUUFDUUNBQlFmOEJUUVJBSUFVb0Fnd2hBaUFGS0FJSUlnUWdBVUVEZGlJQlFRTjBRZHpBQUdvaUIwY0VRRUhFd0FBb0FnQWFDeUFDSUFSR0JFQkJ0TUFBUWJUQUFDZ0NBRUYrSUFGM2NUWUNBQXdDQ3lBQ0lBZEhCRUJCeE1BQUtBSUFHZ3NnQkNBQ05nSU1JQUlnQkRZQ0NBd0JDeUFGS0FJWUlRWUNRQ0FGSUFVb0Fnd2lBVWNFUUVIRXdBQW9BZ0FnQlNnQ0NDSUNUUVJBSUFJb0Fnd2FDeUFDSUFFMkFnd2dBU0FDTmdJSURBRUxBa0FnQlVFVWFpSUNLQUlBSWdRTkFDQUZRUkJxSWdJb0FnQWlCQTBBUVFBaEFRd0JDd05BSUFJaEJ5QUVJZ0ZCRkdvaUFpZ0NBQ0lFRFFBZ0FVRVFhaUVDSUFFb0FoQWlCQTBBQ3lBSFFRQTJBZ0FMSUFaRkRRQUNRQ0FGSUFVb0Fod2lBa0VDZEVIa3dnQnFJZ1FvQWdCR0JFQWdCQ0FCTmdJQUlBRU5BVUc0d0FCQnVNQUFLQUlBUVg0Z0FuZHhOZ0lBREFJTElBWkJFRUVVSUFZb0FoQWdCVVliYWlBQk5nSUFJQUZGRFFFTElBRWdCallDR0NBRktBSVFJZ0lFUUNBQklBSTJBaEFnQWlBQk5nSVlDeUFGS0FJVUlnSkZEUUFnQVNBQ05nSVVJQUlnQVRZQ0dBc2dBeUFBUVFGeU5nSUVJQUFnQTJvZ0FEWUNBQ0FEUWNqQUFDZ0NBRWNOQVVHOHdBQWdBRFlDQUE4TElBVWdBVUYrY1RZQ0JDQURJQUJCQVhJMkFnUWdBQ0FEYWlBQU5nSUFDeUFBUWY4QlRRUkFJQUJCQTNZaUFVRURkRUhjd0FCcUlRQUNmMEcwd0FBb0FnQWlBa0VCSUFGMElnRnhSUVJBUWJUQUFDQUJJQUp5TmdJQUlBQU1BUXNnQUNnQ0NBc2hBaUFBSUFNMkFnZ2dBaUFETmdJTUlBTWdBRFlDRENBRElBSTJBZ2dQQ3lBRFFnQTNBaEFnQXdKL1FRQWdBRUVJZGlJQlJRMEFHa0VmSUFCQi8vLy9CMHNOQUJvZ0FTQUJRWUQrUDJwQkVIWkJDSEVpQVhRaUFpQUNRWURnSDJwQkVIWkJCSEVpQW5RaUJDQUVRWUNBRDJwQkVIWkJBbkVpQkhSQkQzWWdBU0FDY2lBRWNtc2lBVUVCZENBQUlBRkJGV3AyUVFGeGNrRWNhZ3NpQWpZQ0hDQUNRUUowUWVUQ0FHb2hBUUpBQWtBQ1FFRzR3QUFvQWdBaUJFRUJJQUowSWdkeFJRUkFRYmpBQUNBRUlBZHlOZ0lBSUFFZ0F6WUNBQ0FESUFFMkFoZ01BUXNnQUVFQVFSa2dBa0VCZG1zZ0FrRWZSaHQwSVFJZ0FTZ0NBQ0VCQTBBZ0FTSUVLQUlFUVhoeElBQkdEUUlnQWtFZGRpRUJJQUpCQVhRaEFpQUVJQUZCQkhGcUlnZEJFR29vQWdBaUFRMEFDeUFISUFNMkFoQWdBeUFFTmdJWUN5QURJQU0yQWd3Z0F5QUROZ0lJREFFTElBUW9BZ2dpQUNBRE5nSU1JQVFnQXpZQ0NDQURRUUEyQWhnZ0F5QUVOZ0lNSUFNZ0FEWUNDQXRCMU1BQVFkVEFBQ2dDQUVGL2FpSUFOZ0lBSUFBTkFFSDh3d0FoQXdOQUlBTW9BZ0FpQUVFSWFpRURJQUFOQUF0QjFNQUFRWDgyQWdBTEMzUUJBbjhqQUVFUWF5SUNKQUFnQWtFQU5nSU1JQUFnQWtFTWFoQUNJUUFDZnlBQ0tBSU1JZ05CZjBZRVFFRUJJQUJGRFFFYUlBRkJnSUNBZ0hnMkFnQkJBQXdCQzBFQklBQU5BQm9nQVNBRFFRRnFRUUYySWdGQkFDQUJheUFEUVFGeEd6WUNBRUVBQ3lFQUlBSkJFR29rQUNBQUM4Y0xBUlIvSUFGQm9EMXFMUUFBUVF4c0lnWkIxRHhxS0FJQUlRVWdCa0hRUEdvb0FnQWdBVUdRUEdvdEFBQWlCM1FoQkNBQ1JRUkFJQUFnQUNnQ0FDQUViRFlDQUFzZ0JTQUhkQ0VCQWtBQ1FDQURRWnovQTNFRVFDQUFJQVpCMkR4cUtBSUFJQWQwSWdNZ0FDZ0NQR3cyQWp3Z0FDQUFLQUk0SUFGc05nSTRRUUVoQWlBQUlBQW9BaXdnQkd3aUJ5QUFLQUlNSUFSc0lnVnFJZ2tnQUNnQ0lDQUJiQ0lLSUFBb0FqUWdBV3dpRDBFQmRXb2lFR3NpQmpZQ0xDQUFLQUlvSVFnZ0FDQUZJQWRySWdVZ0NrRUJkU0FQYXlJS2F5SUhOZ0lvSUFBb0FpUWhEaUFBSUFVZ0Ntb2lCVFlDSkNBQUlBQW9BaHdnQVd3aUR5QUFLQUlJSUFGc0lndHFJaE1nQUNnQ0VDQURiQ0lSSUFBb0FqQWdBMndpREVFQmRXb2lGV3NpQ2pZQ0hDQUFLQUlZSVEwZ0FDQUxJQTlySWdzZ0VVRUJkU0FNYXlJUmF5SVBOZ0lZSUFBb0FoUWhEQ0FBSUFzZ0VXb2lDellDRkNBQUlBUWdER3dpQkNBQUtBSUFJZ3hxSWhRZ0FDZ0NCQ0FCYkNJU0lBRWdEV3dpRFVFQmRXb2lGbXNpRVRZQ0RDQUFJQXdnQkdzaUJDQVNRUUYxSUExcklnMXJJZ3cyQWdnZ0FDQUVJQTFxSWcwMkFnUWdBQ0FCSUE1c0lnUWdBQ2dDT0NJT2F5SVNJQU1nQ0d3aUNFRUJkU0FBS0FJOEloZHJJZ05ySWdFMkFqZ2dBQ0FESUJKcUlnTTJBalFnQUNBRUlBNXFJZzRnRjBFQmRTQUlhaUlJYXlJRU5nSThJQUFnRkNBV2FpSVVJQWtnRUdvaUVHdEJJR29pRWlBSUlBNXFJZ2tnRXlBVmFpSUlRUUYxSWc1cmFrRUdkU0lUTmdJZ0lBQWdFaUFPSUFscmFrRUdkU0lPTmdJUUlBQWdFQ0FVYWtFZ2FpSVFJQWxCQVhVZ0NHb2lDV3RCQm5VaUNEWUNNQ0FBSUFrZ0VHcEJCblVpQ1RZQ0FDQUpRWUFFYWlBT1FZQUVhbkpCL3dkTERRSWdDRUdBQkdvZ0UwR0FCR3B5UWY4SFN3MENJQUFnQlNBTmFrRWdhaUlKSUFOQkFYVWdDMm9pRUd0QkJuVWlDRFlDTkNBQUlBMGdCV3RCSUdvaUJTQURJQXRCQVhVaUMydHFRUVoxSWcwMkFpUWdBQ0FGSUFzZ0EydHFRUVoxSWdNMkFoUWdBQ0FKSUJCcVFRWjFJZ1UyQWdRZ0JVR0FCR29nQTBHQUJHcHlRZjhIU3cwQ0lBaEJnQVJxSUExQmdBUnFja0gvQjBzTkFpQUFJQWNnREdwQklHb2lBeUFCUVFGMUlBOXFJZ1ZyUVFaMUlnczJBamdnQUNBTUlBZHJRU0JxSWdjZ0FTQVBRUUYxSWc5cmFrRUdkU0lNTmdJb0lBQWdCeUFQSUFGcmFrRUdkU0lCTmdJWUlBQWdBeUFGYWtFR2RTSUROZ0lJSUFOQmdBUnFJQUZCZ0FScWNrSC9CMHNOQWlBTFFZQUVhaUFNUVlBRWFuSkIvd2RMRFFJZ0FDQUdJQkZxUVNCcUlnRWdCRUVCZFNBS2FpSURhMEVHZFNJSE5nSThJQUFnRVNBR2EwRWdhaUlHSUFRZ0NrRUJkU0lGYTJwQkJuVWlDallDTENBQUlBWWdCU0FFYTJwQkJuVWlCRFlDSENBQUlBRWdBMnBCQm5VaUFEWUNEQ0FBUVlBRWFpQUVRWUFFYW5KQi93ZExEUUlnQjBHQUJHb2dDa0dBQkdweVFmOEhUUTBCREFJTElBTkI0Z0J4UlFSQVFRRWhBaUFBS0FJQVFTQnFRUVoxSWdGQmdBUnFRZjhIU3cwQ0lBQWdBVFlDT0NBQUlBRTJBandnQUNBQk5nSTBJQUFnQVRZQ01DQUFJQUUyQWl3Z0FDQUJOZ0lvSUFBZ0FUWUNKQ0FBSUFFMkFpQWdBQ0FCTmdJY0lBQWdBVFlDR0NBQUlBRTJBaFFnQUNBQk5nSVFJQUFnQVRZQ0RDQUFJQUUyQWdnZ0FDQUJOZ0lFSUFBZ0FUWUNBQXdCQzBFQklRSWdBQ0FBS0FJRUlBRnNJZ2NnQUNnQ0dDQUJiQ0lHUVFGMWFpSURJQUFvQWdBaUJTQUFLQUlVSUFSc0lnUnFJZ3BxUVNCcVFRWjFJZ0UyQWpBZ0FDQUtJQU5yUVNCcVFRWjFJZ00yQWd3Z0FDQUZJQVJySWdVZ0JpQUhRUUYxSWdkcmFrRWdha0VHZFNJRU5nSUlJQUFnQnlBR2F5QUZha0VnYWtFR2RTSUdOZ0lFSUFBZ0FUWUNBQ0FBSUFFMkFpQWdBQ0FHTmdJMElBQWdBVFlDRUNBQUlBWTJBaVFnQUNBRU5nSTRJQUFnQmpZQ0ZDQUFJQVEyQWlnZ0FDQUROZ0k4SUFBZ0JEWUNHQ0FBSUFNMkFpd2dBQ0FETmdJY0lBTkJnQVJxSUFGQmdBUnFJQVJCZ0FScUlBWkJnQVJxY25KeVFmOEhTdzBCQzBFQUlRSUxJQUlMOHdJQ0FuOEJmZ0pBSUFKRkRRQWdBQ0FDYWlJRFFYOXFJQUU2QUFBZ0FDQUJPZ0FBSUFKQkEwa05BQ0FEUVg1cUlBRTZBQUFnQUNBQk9nQUJJQU5CZldvZ0FUb0FBQ0FBSUFFNkFBSWdBa0VIU1EwQUlBTkJmR29nQVRvQUFDQUFJQUU2QUFNZ0FrRUpTUTBBSUFCQkFDQUFhMEVEY1NJRWFpSURJQUZCL3dGeFFZR0NoQWhzSWdFMkFnQWdBeUFDSUFSclFYeHhJZ1JxSWdKQmZHb2dBVFlDQUNBRVFRbEpEUUFnQXlBQk5nSUlJQU1nQVRZQ0JDQUNRWGhxSUFFMkFnQWdBa0YwYWlBQk5nSUFJQVJCR1VrTkFDQURJQUUyQWhnZ0F5QUJOZ0lVSUFNZ0FUWUNFQ0FESUFFMkFnd2dBa0Z3YWlBQk5nSUFJQUpCYkdvZ0FUWUNBQ0FDUVdocUlBRTJBZ0FnQWtGa2FpQUJOZ0lBSUFRZ0EwRUVjVUVZY2lJRWF5SUNRU0JKRFFBZ0FhMGlCVUlnaGlBRmhDRUZJQU1nQkdvaEFRTkFJQUVnQlRjREdDQUJJQVUzQXhBZ0FTQUZOd01JSUFFZ0JUY0RBQ0FCUVNCcUlRRWdBa0ZnYWlJQ1FSOUxEUUFMQ3lBQUMvSURBUU4vSUFFb0FnQWlBMEgvLy84SFJ3UkFJQUVvQWdRaEJDQUFJQUlnQWtFRGNTQUNRUkJKSWdJYlFRSjBJZ1ZCOENscUtBSUFRUkJCQ0NBQ0d5SUNiR29nQlVHd0tXb29BZ0JxSWdBZ0F5QUFMUUFBYWtHd0xtb3RBQUE2QUFBZ0FTZ0NDQ0VESUFBZ0JDQUFMUUFCYWtHd0xtb3RBQUE2QUFFZ0FTZ0NEQ0VFSUFBZ0F5QUFMUUFDYWtHd0xtb3RBQUE2QUFJZ0FDQUVJQUF0QUFOcVFiQXVhaTBBQURvQUF5QUJLQUlVSVFNZ0FDQUNhaUlBSUFFb0FoQWdBQzBBQUdwQnNDNXFMUUFBT2dBQUlBRW9BaGdoQkNBQUlBTWdBQzBBQVdwQnNDNXFMUUFBT2dBQklBRW9BaHdoQXlBQUlBUWdBQzBBQW1wQnNDNXFMUUFBT2dBQ0lBQWdBeUFBTFFBRGFrR3dMbW90QUFBNkFBTWdBU2dDSkNFRElBQWdBbW9pQUNBQktBSWdJQUF0QUFCcVFiQXVhaTBBQURvQUFDQUJLQUlvSVFRZ0FDQURJQUF0QUFGcVFiQXVhaTBBQURvQUFTQUJLQUlzSVFNZ0FDQUVJQUF0QUFKcVFiQXVhaTBBQURvQUFpQUFJQU1nQUMwQUEycEJzQzVxTFFBQU9nQURJQUVvQWpRaEF5QUFJQUpxSWdBZ0FTZ0NNQ0FBTFFBQWFrR3dMbW90QUFBNkFBQWdBU2dDT0NFQ0lBQWdBeUFBTFFBQmFrR3dMbW90QUFBNkFBRWdBU2dDUENFQklBQWdBaUFBTFFBQ2FrR3dMbW90QUFBNkFBSWdBQ0FCSUFBdEFBTnFRYkF1YWkwQUFEb0FBd3NMMHhBQkRIOGpBRUdBQVdzaUNpUUFJQUFRRHlFRVFRRWhCUUpBQWtBQ2Z5QUNRUUZOQkVBZ0JFRUFTQTBDSUFSQkdYWkIvZ0J4UVlBSWFpQUVRWUNBZ09BQVR3MEJHaUFFUVJWMlFmNFBjVUhBQ0dvZ0JFR0FnSUFJVHcwQkdpQUVRUkYyUWY3L0FYRkJrQWxxSUFSQmdJQ0FBVThOQVJvZ0JFRVFka0VCZEVHUUNtb01BUXNnQWtFRFRRUkFJQVJCZjB3RVFFRUNRYUlRSUFSQmdJQ0FnQVJ4R3lFRkRBTUxJQVJCR1haQi9nQnhRZEFLYWlBRVFZQ0FnSUFCVHcwQkdpQUVRUloyUWY0SGNVR1FDMm9nQkVHQWdJQVFUdzBCR2lBRVFSRjJRZjcvQVhGQjBBdHFEQUVMSUFKQkIwMEVRQ0FFUVJwMklnSkJlR3BCT0VrRVFDQUNRUUYwUWRBTmFnd0NDeUFFUVJWMlFmNFBjVUhRRG1vTUFRc2dCRUVaZGtIK0FIRkIwQkJxSUFKQkVFME5BQm9nQkVFZGRpSUNCRUFnQWtFQmRFSFFFV29NQVFzZ0JFRVhka0grQTNGQjRCRnFDeThCQUNJRkRRQkJBU0VMREFFTFFRRWhDeUFGUVF0Mklna2dBMHNOQUVFZ0lBVkJIM0VpQm1zaEFnSkFJQWxGQkVBTUFRc2dCQ0FHZENFRUFrQWdCVUVGZGtFL2NTSU1SUVJBREFFTElBSWdERWtFUUNBQUlBWVFDMEYvUmcwRElBQVFEeUVFUVNBaEFnc2dCQ0FNZENFR1FRRWdERUYvYW5RaEJ5QUVRU0FnREd0MklRUURRQ0FLUVVCcklBaEJBblJxUVg5QkFTQUVJQWR4R3pZQ0FDQUlRUUZxSVFnZ0IwRUJkaUlIRFFBTElBSWdER3NoQWlBR0lRUUxJQWdnQ1VrRVFDQU1RUU5KSWc4Z0JVSC9yd0ZMY1NFRkEwQWdBa0VQVFFSQUlBQkJJQ0FDYXhBTFFYOUdCRUFNQlFzZ0FCQVBJUVJCSUNFQ0MwRUFJUVlDUUFKQUFuOENRQ0FFUVFCSURRQkJBU0VHSUFSQi8vLy8vd05MRFFCQkFpRUdJQVJCLy8vLy93RkxEUUJCQXlFR0lBUkIvLy8vL3dCTERRQkJCQ0VHSUFSQi8vLy9QMHNOQUVFRklRWWdCRUgvLy84ZlN3MEFRUVloQmlBRVFmLy8vdzlMRFFCQkJ5RUdJQVJCLy8vL0Iwc05BRUVJSVFZZ0JFSC8vLzhEU3cwQVFRa2hCaUFFUWYvLy93RkxEUUJCQ2lFR0lBUkIvLy8vQUVzTkFFRUxJUVlnQkVILy96OUxEUUJCRENFR0lBUkIvLzhmU3cwQVFRMGhCaUFFUWYvL0Qwc05BQUovQWtBZ0JFSC8vd2ROQkVBZ0JFR0FnSHh4UVlDQUJFWU5BUXdLQ3lBRlFRUWdCUnNoQmlBRVFROTBJUVJCRGlFSElBSkJjV29NQVFzZ0JVRUJJQVViSVFVZ0JFRVFkQ0VFUVF3aEJrRVBJUWNnQWtGd2Fnc2hBaUFISUFWMElRY2dCVVVNQVFzZ0JpQUZkQ0VIUVFFaERpQUNJQVpCQVdvaUJtc2hBaUFFSUFaMElRUWdCVVVOQVNBRklRWkJBQXNoRGlBQ0lBWlBCSDhnQkFVZ0FFRWdJQUpyRUF0QmYwWUVRQXdIQzBFZ0lRSWdBQkFQQ3lFTklBSWdCbXNoQWlBTklBWjBJUVFnRFVFZ0lBWnJkaUFIYWlFSERBRUxRUUFoQlFzZ0NrRkFheUFJUVFKMGFrRUFJQWRCQW1vZ0J5QUlJQXhHR3lBSElBOGJJZzFCQW1wQkFYWWlCbXNnQmlBTlFRRnhHellDQUVFQklBVWdEaHNpQlNBRlFRWkpJQVpCQXlBRlFYOXFkRXB4YWlFRklBaEJBV29pQ0NBSlJ3MEFDd3RCQUNFSEFrQWdDU0FEVHdSQVFRQWhDQXdCQ3dKQUlBSkJDRXNFUUNBQ0lRVU1BUXRCSUNFRklBQkJJQ0FDYXhBTFFYOUdEUU1nQUJBUElRUUxBa0FDUUFKL0FrQWdBMEVFUndSQUlBbEJmMm9pQWtFTlN3MERBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQWdBa0VCYXc0TkFBRUNBd1FGQmdjSUNRb0xEQTRMSUFSQkduWkI0QkpxREE0TElBUkJHblpCb0JOcURBMExJQVJCRzNaQjRCTnFEQXdMSUFSQkczWkJnQlJxREFzTElBUkJHblpCb0JScURBb0xJQVJCR25aQjRCUnFEQWtMSUFSQkduWkJvQlZxREFnTElBUkJHblpCNEJWcURBY0xJQVJCRzNaQm9CWnFEQVlMSUFSQkhIWkJ3QlpxREFVTElBUkJISFpCMEJacURBUUxJQVJCSFhaQjRCWnFEQU1MSUFSQkhuWkI2QlpxREFJTElBUkJBRWdFUUVFQklRSU1CQXRCRVNFQ0lBbEJBMFlOQTBFU0lRSWdCRUgvLy8vL0Ewc05BMEVpSVFJZ0NVRUNSZzBEUVNOQk15QUVRZi8vLy84QlN4c2hBZ3dEQ3lBRVFSdDJRYUFTYWlBRVFSZDJRY0FTYWlBRVFmLy8vLzhBU3hzTExRQUFJZ0lOQVF3RUMwRVJRUUVnQkVFQVNCc2hBZ3NnQWtFRWRpRUlJQVVnQWtFUGNTSURheUVDSUFRZ0EzUWhCQXNnQ1VGL2FpSURCRUFEUUFKL0lBZ0VRQ0FDUVFwTkJFQWdBRUVnSUFKckVBdEJmMFlFUUF3SEN5QUFFQThoQkVFZ0lRSUxBa0FDZndKQUlBaEJmMm9pQlVFRlRRUkFBa0FDUUFKQUFrQUNRQ0FGUVFGckRnVUFBUUlEQkFZTElBUkJIblpCN2hacURBWUxJQVJCSG5aQjhoWnFEQVVMSUFSQkhYWkI5aFpxREFRTElBUkJIWFpCL2hacURBTUxJQVJCSFhaQmhoZHFEQUlMQW45Qjh3QWdCRUVaZGtId0FIRnJJQVJCZ0lDQWdBSlBEUUFhUWZRQUlBUkIvLy8vL3dCTERRQWFRWVVCSUFSQi8vLy9QMHNOQUJwQmxnRWdCRUgvLy84ZlN3MEFHa0duQVNBRVFmLy8vdzlMRFFBYVFiZ0JJQVJCLy8vL0Iwc05BQnBCeVFFZ0JFSC8vLzhEU3cwQUdrSGFBU0FFUWYvLy93RkxEUUFhUVFCQjZ3RWdCRUdBZ0lBQlNSc0xJZ1ZCQkhZZ0NFME5BZ3dJQ3lBRVFSOTJRZXdXYWdzdEFBQWhCUXNnQlVVRVFBd0dDeUFLSUFkQkFuUnFJQVZCQkhZaUJrRUJhallDQUNBQ0lBVkJEM0VpQldzaEFpQUVJQVYwSVFRZ0NDQUdhd3dCQ3lBS0lBZEJBblJxUVFFMkFnQkJBQXNoQ0NBSFFRRnFJZ2NnQTBjTkFBc2dBU0FJUVFKMGFpQUtRVUJySUFOQkFuUnFLQUlBTmdJQUlBbEJmbW9oQlVFQklBaDBJUWNEUUNBQklBb2dCU0lEUVFKMElnVnFLQUlBSUFocUlnaEJBblJxSUFwQlFHc2dCV29vQWdBMkFnQWdBMEYvYWlFRlFRRWdDSFFnQjNJaEJ5QUREUUFMREFFTElBRWdDRUVDZEdvZ0NrRkFheUFEUVFKMGFpZ0NBRFlDQUVFQklBaDBJUWNMSUFCQklDQUNheEFMRFFBZ0IwRVFkQ0FKUVFSMGNpRUxDeUFLUVlBQmFpUUFJQXNMelM0QkMzOGpBRUVRYXlJTEpBQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUFCQjlBRk5CRUJCdE1BQUtBSUFJZ1pCRUNBQVFRdHFRWGh4SUFCQkMwa2JJZ1ZCQTNZaUFIWWlBVUVEY1FSQUlBRkJmM05CQVhFZ0FHb2lBa0VEZENJRVFlVEFBR29vQWdBaUFVRUlhaUVBQWtBZ0FTZ0NDQ0lESUFSQjNNQUFhaUlFUmdSQVFiVEFBQ0FHUVg0Z0FuZHhOZ0lBREFFTFFjVEFBQ2dDQUJvZ0F5QUVOZ0lNSUFRZ0F6WUNDQXNnQVNBQ1FRTjBJZ0pCQTNJMkFnUWdBU0FDYWlJQklBRW9BZ1JCQVhJMkFnUU1EQXNnQlVHOHdBQW9BZ0FpQ0UwTkFTQUJCRUFDUUVFQ0lBQjBJZ0pCQUNBQ2EzSWdBU0FBZEhFaUFFRUFJQUJyY1VGL2FpSUFJQUJCREhaQkVIRWlBSFlpQVVFRmRrRUljU0lDSUFCeUlBRWdBbllpQUVFQ2RrRUVjU0lCY2lBQUlBRjJJZ0JCQVhaQkFuRWlBWElnQUNBQmRpSUFRUUYyUVFGeElnRnlJQUFnQVhacUlnSkJBM1FpQTBIa3dBQnFLQUlBSWdFb0FnZ2lBQ0FEUWR6QUFHb2lBMFlFUUVHMHdBQWdCa0YrSUFKM2NTSUdOZ0lBREFFTFFjVEFBQ2dDQUJvZ0FDQUROZ0lNSUFNZ0FEWUNDQXNnQVVFSWFpRUFJQUVnQlVFRGNqWUNCQ0FCSUFWcUlnY2dBa0VEZENJQ0lBVnJJZ05CQVhJMkFnUWdBU0FDYWlBRE5nSUFJQWdFUUNBSVFRTjJJZ1JCQTNSQjNNQUFhaUVCUWNqQUFDZ0NBQ0VDQW44Z0JrRUJJQVIwSWdSeFJRUkFRYlRBQUNBRUlBWnlOZ0lBSUFFTUFRc2dBU2dDQ0FzaEJDQUJJQUkyQWdnZ0JDQUNOZ0lNSUFJZ0FUWUNEQ0FDSUFRMkFnZ0xRY2pBQUNBSE5nSUFRYnpBQUNBRE5nSUFEQXdMUWJqQUFDZ0NBQ0lLUlEwQklBcEJBQ0FLYTNGQmYyb2lBQ0FBUVF4MlFSQnhJZ0IySWdGQkJYWkJDSEVpQWlBQWNpQUJJQUoySWdCQkFuWkJCSEVpQVhJZ0FDQUJkaUlBUVFGMlFRSnhJZ0Z5SUFBZ0FYWWlBRUVCZGtFQmNTSUJjaUFBSUFGMmFrRUNkRUhrd2dCcUtBSUFJZ0VvQWdSQmVIRWdCV3NoQXlBQklRSURRQUpBSUFJb0FoQWlBRVVFUUNBQ0tBSVVJZ0JGRFFFTElBQW9BZ1JCZUhFZ0JXc2lBaUFESUFJZ0Ewa2lBaHNoQXlBQUlBRWdBaHNoQVNBQUlRSU1BUXNMSUFFb0FoZ2hDU0FCSUFFb0Fnd2lCRWNFUUVIRXdBQW9BZ0FnQVNnQ0NDSUFUUVJBSUFBb0Fnd2FDeUFBSUFRMkFnd2dCQ0FBTmdJSURBc0xJQUZCRkdvaUFpZ0NBQ0lBUlFSQUlBRW9BaEFpQUVVTkF5QUJRUkJxSVFJTEEwQWdBaUVISUFBaUJFRVVhaUlDS0FJQUlnQU5BQ0FFUVJCcUlRSWdCQ2dDRUNJQURRQUxJQWRCQURZQ0FBd0tDMEYvSVFVZ0FFRy9mMHNOQUNBQVFRdHFJZ0JCZUhFaEJVRzR3QUFvQWdBaUIwVU5BRUVBSUFWcklRSUNRQUpBQWtBQ2YwRUFJQUJCQ0hZaUFFVU5BQnBCSHlBRlFmLy8vd2RMRFFBYUlBQWdBRUdBL2o5cVFSQjJRUWh4SWdCMElnRWdBVUdBNEI5cVFSQjJRUVJ4SWdGMElnTWdBMEdBZ0E5cVFSQjJRUUp4SWdOMFFROTJJQUFnQVhJZ0EzSnJJZ0JCQVhRZ0JTQUFRUlZxZGtFQmNYSkJIR29MSWdoQkFuUkI1TUlBYWlnQ0FDSURSUVJBUVFBaEFBd0JDeUFGUVFCQkdTQUlRUUYyYXlBSVFSOUdHM1FoQVVFQUlRQURRQUpBSUFNb0FnUkJlSEVnQldzaUJpQUNUdzBBSUFNaEJDQUdJZ0lOQUVFQUlRSWdBeUVBREFNTElBQWdBeWdDRkNJR0lBWWdBeUFCUVIxMlFRUnhhaWdDRUNJRFJoc2dBQ0FHR3lFQUlBRWdBMEVBUjNRaEFTQUREUUFMQ3lBQUlBUnlSUVJBUVFJZ0NIUWlBRUVBSUFCcmNpQUhjU0lBUlEwRElBQkJBQ0FBYTNGQmYyb2lBQ0FBUVF4MlFSQnhJZ0IySWdGQkJYWkJDSEVpQXlBQWNpQUJJQU4ySWdCQkFuWkJCSEVpQVhJZ0FDQUJkaUlBUVFGMlFRSnhJZ0Z5SUFBZ0FYWWlBRUVCZGtFQmNTSUJjaUFBSUFGMmFrRUNkRUhrd2dCcUtBSUFJUUFMSUFCRkRRRUxBMEFnQUNnQ0JFRjRjU0FGYXlJRElBSkpJUUVnQXlBQ0lBRWJJUUlnQUNBRUlBRWJJUVFnQUNnQ0VDSUJCSDhnQVFVZ0FDZ0NGQXNpQUEwQUN3c2dCRVVOQUNBQ1FiekFBQ2dDQUNBRmEwOE5BQ0FFS0FJWUlRZ2dCQ0FFS0FJTUlnRkhCRUJCeE1BQUtBSUFJQVFvQWdnaUFFMEVRQ0FBS0FJTUdnc2dBQ0FCTmdJTUlBRWdBRFlDQ0F3SkN5QUVRUlJxSWdNb0FnQWlBRVVFUUNBRUtBSVFJZ0JGRFFNZ0JFRVFhaUVEQ3dOQUlBTWhCaUFBSWdGQkZHb2lBeWdDQUNJQURRQWdBVUVRYWlFRElBRW9BaEFpQUEwQUN5QUdRUUEyQWdBTUNBdEJ2TUFBS0FJQUlnRWdCVThFUUVISXdBQW9BZ0FoQUFKQUlBRWdCV3NpQWtFUVR3UkFRYnpBQUNBQ05nSUFRY2pBQUNBQUlBVnFJZ00yQWdBZ0F5QUNRUUZ5TmdJRUlBQWdBV29nQWpZQ0FDQUFJQVZCQTNJMkFnUU1BUXRCeU1BQVFRQTJBZ0JCdk1BQVFRQTJBZ0FnQUNBQlFRTnlOZ0lFSUFBZ0FXb2lBU0FCS0FJRVFRRnlOZ0lFQ3lBQVFRaHFJUUFNQ2d0QndNQUFLQUlBSWdFZ0JVc0VRRUhBd0FBZ0FTQUZheUlCTmdJQVFjekFBRUhNd0FBb0FnQWlBQ0FGYWlJQ05nSUFJQUlnQVVFQmNqWUNCQ0FBSUFWQkEzSTJBZ1FnQUVFSWFpRUFEQW9MUVFBaEFDQUZRUzlxSWdRQ2YwR014QUFvQWdBRVFFR1V4QUFvQWdBTUFRdEJtTVFBUW44M0FnQkJrTVFBUW9DZ2dJQ0FnQVEzQWdCQmpNUUFJQXRCREdwQmNIRkIyS3JWcWdWek5nSUFRYURFQUVFQU5nSUFRZkREQUVFQU5nSUFRWUFnQ3lJQ2FpSUdRUUFnQW1zaUIzRWlBaUFGVFEwSlFlekRBQ2dDQUNJREJFQkI1TU1BS0FJQUlnZ2dBbW9pQ1NBSVRRMEtJQWtnQTBzTkNndEI4TU1BTFFBQVFRUnhEUVFDUUFKQVFjekFBQ2dDQUNJREJFQkI5TU1BSVFBRFFDQUFLQUlBSWdnZ0EwMEVRQ0FJSUFBb0FnUnFJQU5MRFFNTElBQW9BZ2dpQUEwQUN3dEJBQkFUSWdGQmYwWU5CU0FDSVFaQmtNUUFLQUlBSWdCQmYyb2lBeUFCY1FSQUlBSWdBV3NnQVNBRGFrRUFJQUJyY1dvaEJnc2dCaUFGVFEwRklBWkIvdi8vL3dkTERRVkI3TU1BS0FJQUlnQUVRRUhrd3dBb0FnQWlBeUFHYWlJSElBTk5EUVlnQnlBQVN3MEdDeUFHRUJNaUFDQUJSdzBCREFjTElBWWdBV3NnQjNFaUJrSCsvLy8vQjBzTkJDQUdFQk1pQVNBQUtBSUFJQUFvQWdScVJnMERJQUVoQUFzQ1FDQUZRVEJxSUFaTkRRQWdBRUYvUmcwQVFaVEVBQ2dDQUNJQklBUWdCbXRxUVFBZ0FXdHhJZ0ZCL3YvLy93ZExCRUFnQUNFQkRBY0xJQUVRRTBGL1J3UkFJQUVnQm1vaEJpQUFJUUVNQnd0QkFDQUdheEFUR2d3RUN5QUFJZ0ZCZjBjTkJRd0RDMEVBSVFRTUJ3dEJBQ0VCREFVTElBRkJmMGNOQWd0QjhNTUFRZkREQUNnQ0FFRUVjallDQUFzZ0FrSCsvLy8vQjBzTkFTQUNFQk1pQVVFQUVCTWlBRThOQVNBQlFYOUdEUUVnQUVGL1JnMEJJQUFnQVdzaUJpQUZRU2hxVFEwQkMwSGt3d0JCNU1NQUtBSUFJQVpxSWdBMkFnQWdBRUhvd3dBb0FnQkxCRUJCNk1NQUlBQTJBZ0FMQWtBQ1FBSkFRY3pBQUNnQ0FDSURCRUJCOU1NQUlRQURRQ0FCSUFBb0FnQWlBaUFBS0FJRUlnUnFSZzBDSUFBb0FnZ2lBQTBBQ3d3Q0MwSEV3QUFvQWdBaUFFRUFJQUVnQUU4YlJRUkFRY1RBQUNBQk5nSUFDMEVBSVFCQitNTUFJQVkyQWdCQjlNTUFJQUUyQWdCQjFNQUFRWDgyQWdCQjJNQUFRWXpFQUNnQ0FEWUNBRUdBeEFCQkFEWUNBQU5BSUFCQkEzUWlBa0hrd0FCcUlBSkIzTUFBYWlJRE5nSUFJQUpCNk1BQWFpQUROZ0lBSUFCQkFXb2lBRUVnUncwQUMwSEF3QUFnQmtGWWFpSUFRWGdnQVd0QkIzRkJBQ0FCUVFocVFRZHhHeUlDYXlJRE5nSUFRY3pBQUNBQklBSnFJZ0kyQWdBZ0FpQURRUUZ5TmdJRUlBQWdBV3BCS0RZQ0JFSFF3QUJCbk1RQUtBSUFOZ0lBREFJTElBQXRBQXhCQ0hFTkFDQUJJQU5ORFFBZ0FpQURTdzBBSUFBZ0JDQUdhallDQkVITXdBQWdBMEY0SUFOclFRZHhRUUFnQTBFSWFrRUhjUnNpQUdvaUFUWUNBRUhBd0FCQndNQUFLQUlBSUFacUlnSWdBR3NpQURZQ0FDQUJJQUJCQVhJMkFnUWdBaUFEYWtFb05nSUVRZERBQUVHY3hBQW9BZ0EyQWdBTUFRc2dBVUhFd0FBb0FnQWlCRWtFUUVIRXdBQWdBVFlDQUNBQklRUUxJQUVnQm1vaEFrSDB3d0FoQUFKQUFrQUNRQUpBQWtBQ1FBTkFJQUlnQUNnQ0FFY0VRQ0FBS0FJSUlnQU5BUXdDQ3dzZ0FDMEFERUVJY1VVTkFRdEI5TU1BSVFBRFFDQUFLQUlBSWdJZ0EwMEVRQ0FDSUFBb0FnUnFJZ1FnQTBzTkF3c2dBQ2dDQ0NFQURBQUFDd0FMSUFBZ0FUWUNBQ0FBSUFBb0FnUWdCbW8yQWdRZ0FVRjRJQUZyUVFkeFFRQWdBVUVJYWtFSGNSdHFJZ2tnQlVFRGNqWUNCQ0FDUVhnZ0FtdEJCM0ZCQUNBQ1FRaHFRUWR4RzJvaUFTQUpheUFGYXlFQUlBVWdDV29oQnlBQklBTkdCRUJCek1BQUlBYzJBZ0JCd01BQVFjREFBQ2dDQUNBQWFpSUFOZ0lBSUFjZ0FFRUJjallDQkF3REN5QUJRY2pBQUNnQ0FFWUVRRUhJd0FBZ0J6WUNBRUc4d0FCQnZNQUFLQUlBSUFCcUlnQTJBZ0FnQnlBQVFRRnlOZ0lFSUFBZ0Iyb2dBRFlDQUF3REN5QUJLQUlFSWdKQkEzRkJBVVlFUUNBQ1FYaHhJUW9DUUNBQ1FmOEJUUVJBSUFFb0FnZ2lBeUFDUVFOMklnUkJBM1JCM01BQWFrY2FJQU1nQVNnQ0RDSUNSZ1JBUWJUQUFFRzB3QUFvQWdCQmZpQUVkM0UyQWdBTUFnc2dBeUFDTmdJTUlBSWdBellDQ0F3QkN5QUJLQUlZSVFnQ1FDQUJJQUVvQWd3aUJrY0VRQ0FFSUFFb0FnZ2lBazBFUUNBQ0tBSU1HZ3NnQWlBR05nSU1JQVlnQWpZQ0NBd0JDd0pBSUFGQkZHb2lBeWdDQUNJRkRRQWdBVUVRYWlJREtBSUFJZ1VOQUVFQUlRWU1BUXNEUUNBRElRSWdCU0lHUVJScUlnTW9BZ0FpQlEwQUlBWkJFR29oQXlBR0tBSVFJZ1VOQUFzZ0FrRUFOZ0lBQ3lBSVJRMEFBa0FnQVNBQktBSWNJZ0pCQW5SQjVNSUFhaUlES0FJQVJnUkFJQU1nQmpZQ0FDQUdEUUZCdU1BQVFiakFBQ2dDQUVGK0lBSjNjVFlDQUF3Q0N5QUlRUkJCRkNBSUtBSVFJQUZHRzJvZ0JqWUNBQ0FHUlEwQkN5QUdJQWcyQWhnZ0FTZ0NFQ0lDQkVBZ0JpQUNOZ0lRSUFJZ0JqWUNHQXNnQVNnQ0ZDSUNSUTBBSUFZZ0FqWUNGQ0FDSUFZMkFoZ0xJQUVnQ21vaEFTQUFJQXBxSVFBTElBRWdBU2dDQkVGK2NUWUNCQ0FISUFCQkFYSTJBZ1FnQUNBSGFpQUFOZ0lBSUFCQi93Rk5CRUFnQUVFRGRpSUJRUU4wUWR6QUFHb2hBQUovUWJUQUFDZ0NBQ0lDUVFFZ0FYUWlBWEZGQkVCQnRNQUFJQUVnQW5JMkFnQWdBQXdCQ3lBQUtBSUlDeUVCSUFBZ0J6WUNDQ0FCSUFjMkFnd2dCeUFBTmdJTUlBY2dBVFlDQ0F3REN5QUhBbjlCQUNBQVFRaDJJZ0ZGRFFBYVFSOGdBRUgvLy84SFN3MEFHaUFCSUFGQmdQNC9ha0VRZGtFSWNTSUJkQ0lDSUFKQmdPQWZha0VRZGtFRWNTSUNkQ0lESUFOQmdJQVBha0VRZGtFQ2NTSURkRUVQZGlBQklBSnlJQU55YXlJQlFRRjBJQUFnQVVFVmFuWkJBWEZ5UVJ4cUN5SUJOZ0ljSUFkQ0FEY0NFQ0FCUVFKMFFlVENBR29oQWdKQVFiakFBQ2dDQUNJRFFRRWdBWFFpQkhGRkJFQkJ1TUFBSUFNZ0JISTJBZ0FnQWlBSE5nSUFEQUVMSUFCQkFFRVpJQUZCQVhacklBRkJIMFliZENFRElBSW9BZ0FoQVFOQUlBRWlBaWdDQkVGNGNTQUFSZzBESUFOQkhYWWhBU0FEUVFGMElRTWdBaUFCUVFSeGFpSUVLQUlRSWdFTkFBc2dCQ0FITmdJUUN5QUhJQUkyQWhnZ0J5QUhOZ0lNSUFjZ0J6WUNDQXdDQzBIQXdBQWdCa0ZZYWlJQVFYZ2dBV3RCQjNGQkFDQUJRUWhxUVFkeEd5SUNheUlITmdJQVFjekFBQ0FCSUFKcUlnSTJBZ0FnQWlBSFFRRnlOZ0lFSUFBZ0FXcEJLRFlDQkVIUXdBQkJuTVFBS0FJQU5nSUFJQU1nQkVFbklBUnJRUWR4UVFBZ0JFRlpha0VIY1J0cVFWRnFJZ0FnQUNBRFFSQnFTUnNpQWtFYk5nSUVJQUpCL01NQUtRSUFOd0lRSUFKQjlNTUFLUUlBTndJSVFmekRBQ0FDUVFocU5nSUFRZmpEQUNBR05nSUFRZlREQUNBQk5nSUFRWURFQUVFQU5nSUFJQUpCR0dvaEFBTkFJQUJCQnpZQ0JDQUFRUWhxSVFFZ0FFRUVhaUVBSUFRZ0FVc05BQXNnQWlBRFJnMERJQUlnQWlnQ0JFRitjVFlDQkNBRElBSWdBMnNpQkVFQmNqWUNCQ0FDSUFRMkFnQWdCRUgvQVUwRVFDQUVRUU4ySWdGQkEzUkIzTUFBYWlFQUFuOUJ0TUFBS0FJQUlnSkJBU0FCZENJQmNVVUVRRUcwd0FBZ0FTQUNjallDQUNBQURBRUxJQUFvQWdnTElRRWdBQ0FETmdJSUlBRWdBellDRENBRElBQTJBZ3dnQXlBQk5nSUlEQVFMSUFOQ0FEY0NFQ0FEQW45QkFDQUVRUWgySWdCRkRRQWFRUjhnQkVILy8vOEhTdzBBR2lBQUlBQkJnUDQvYWtFUWRrRUljU0lBZENJQklBRkJnT0FmYWtFUWRrRUVjU0lCZENJQ0lBSkJnSUFQYWtFUWRrRUNjU0lDZEVFUGRpQUFJQUZ5SUFKeWF5SUFRUUYwSUFRZ0FFRVZhblpCQVhGeVFSeHFDeUlBTmdJY0lBQkJBblJCNU1JQWFpRUJBa0JCdU1BQUtBSUFJZ0pCQVNBQWRDSUdjVVVFUUVHNHdBQWdBaUFHY2pZQ0FDQUJJQU0yQWdBZ0F5QUJOZ0lZREFFTElBUkJBRUVaSUFCQkFYWnJJQUJCSDBZYmRDRUFJQUVvQWdBaEFRTkFJQUVpQWlnQ0JFRjRjU0FFUmcwRUlBQkJIWFloQVNBQVFRRjBJUUFnQWlBQlFRUnhhaUlHS0FJUUlnRU5BQXNnQmlBRE5nSVFJQU1nQWpZQ0dBc2dBeUFETmdJTUlBTWdBellDQ0F3REN5QUNLQUlJSWdBZ0J6WUNEQ0FDSUFjMkFnZ2dCMEVBTmdJWUlBY2dBallDRENBSElBQTJBZ2dMSUFsQkNHb2hBQXdGQ3lBQ0tBSUlJZ0FnQXpZQ0RDQUNJQU0yQWdnZ0EwRUFOZ0lZSUFNZ0FqWUNEQ0FESUFBMkFnZ0xRY0RBQUNnQ0FDSUFJQVZORFFCQndNQUFJQUFnQldzaUFUWUNBRUhNd0FCQnpNQUFLQUlBSWdBZ0JXb2lBallDQUNBQ0lBRkJBWEkyQWdRZ0FDQUZRUU55TmdJRUlBQkJDR29oQUF3REMwR3d3QUJCTURZQ0FFRUFJUUFNQWdzQ1FDQUlSUTBBQWtBZ0JDZ0NIQ0lBUVFKMFFlVENBR29pQXlnQ0FDQUVSZ1JBSUFNZ0FUWUNBQ0FCRFFGQnVNQUFJQWRCZmlBQWQzRWlCellDQUF3Q0N5QUlRUkJCRkNBSUtBSVFJQVJHRzJvZ0FUWUNBQ0FCUlEwQkN5QUJJQWcyQWhnZ0JDZ0NFQ0lBQkVBZ0FTQUFOZ0lRSUFBZ0FUWUNHQXNnQkNnQ0ZDSUFSUTBBSUFFZ0FEWUNGQ0FBSUFFMkFoZ0xBa0FnQWtFUFRRUkFJQVFnQWlBRmFpSUFRUU55TmdJRUlBQWdCR29pQUNBQUtBSUVRUUZ5TmdJRURBRUxJQVFnQlVFRGNqWUNCQ0FFSUFWcUlnTWdBa0VCY2pZQ0JDQUNJQU5xSUFJMkFnQWdBa0gvQVUwRVFDQUNRUU4ySWdGQkEzUkIzTUFBYWlFQUFuOUJ0TUFBS0FJQUlnSkJBU0FCZENJQmNVVUVRRUcwd0FBZ0FTQUNjallDQUNBQURBRUxJQUFvQWdnTElRRWdBQ0FETmdJSUlBRWdBellDRENBRElBQTJBZ3dnQXlBQk5nSUlEQUVMSUFNQ2YwRUFJQUpCQ0hZaUFFVU5BQnBCSHlBQ1FmLy8vd2RMRFFBYUlBQWdBRUdBL2o5cVFSQjJRUWh4SWdCMElnRWdBVUdBNEI5cVFSQjJRUVJ4SWdGMElnVWdCVUdBZ0E5cVFSQjJRUUp4SWdWMFFROTJJQUFnQVhJZ0JYSnJJZ0JCQVhRZ0FpQUFRUlZxZGtFQmNYSkJIR29MSWdBMkFod2dBMElBTndJUUlBQkJBblJCNU1JQWFpRUJBa0FDUUNBSFFRRWdBSFFpQlhGRkJFQkJ1TUFBSUFVZ0IzSTJBZ0FnQVNBRE5nSUFEQUVMSUFKQkFFRVpJQUJCQVhacklBQkJIMFliZENFQUlBRW9BZ0FoQlFOQUlBVWlBU2dDQkVGNGNTQUNSZzBDSUFCQkhYWWhCU0FBUVFGMElRQWdBU0FGUVFSeGFpSUdLQUlRSWdVTkFBc2dCaUFETmdJUUN5QURJQUUyQWhnZ0F5QUROZ0lNSUFNZ0F6WUNDQXdCQ3lBQktBSUlJZ0FnQXpZQ0RDQUJJQU0yQWdnZ0EwRUFOZ0lZSUFNZ0FUWUNEQ0FESUFBMkFnZ0xJQVJCQ0dvaEFBd0JDd0pBSUFsRkRRQUNRQ0FCS0FJY0lnQkJBblJCNU1JQWFpSUNLQUlBSUFGR0JFQWdBaUFFTmdJQUlBUU5BVUc0d0FBZ0NrRitJQUIzY1RZQ0FBd0NDeUFKUVJCQkZDQUpLQUlRSUFGR0cyb2dCRFlDQUNBRVJRMEJDeUFFSUFrMkFoZ2dBU2dDRUNJQUJFQWdCQ0FBTmdJUUlBQWdCRFlDR0FzZ0FTZ0NGQ0lBUlEwQUlBUWdBRFlDRkNBQUlBUTJBaGdMQWtBZ0EwRVBUUVJBSUFFZ0F5QUZhaUlBUVFOeU5nSUVJQUFnQVdvaUFDQUFLQUlFUVFGeU5nSUVEQUVMSUFFZ0JVRURjallDQkNBQklBVnFJZ1FnQTBFQmNqWUNCQ0FESUFScUlBTTJBZ0FnQ0FSQUlBaEJBM1lpQlVFRGRFSGN3QUJxSVFCQnlNQUFLQUlBSVFJQ2YwRUJJQVYwSWdVZ0JuRkZCRUJCdE1BQUlBVWdCbkkyQWdBZ0FBd0JDeUFBS0FJSUN5RUZJQUFnQWpZQ0NDQUZJQUkyQWd3Z0FpQUFOZ0lNSUFJZ0JUWUNDQXRCeU1BQUlBUTJBZ0JCdk1BQUlBTTJBZ0FMSUFGQkNHb2hBQXNnQzBFUWFpUUFJQUFMUkFFQmZ5QUFJQUFvQWhBZ0FXb2lBVFlDRUNBQUlBRkJCM0UyQWdoQmZ5RUNJQUVnQUNnQ0RFRURkRTBFZnlBQUlBQW9BZ0FnQVVFRGRtbzJBZ1JCQUFWQmZ3c0w1UWNCQ0g4Z0FDQUVRUUFnQm1zZ0FpQUNJQVpxUVFCSUd5SUNJQUlnQkVvYklnSnFJQUFnQWtFQVNoc2lDU0FGUVFBZ0Iyc2dBeUFESUFkcVFRQklHeUlBSUFBZ0JVb2JJZ0FnQkd4cUlBa2dBRUVBU2hzaEF5QUhRUUFnQUdzZ0FFRWZkWEVpQ1dzZ0FDQUhhaUlBSUFWcklneEJBQ0FBSUFWS0d5SVBheUVMSUFaQkFDQUNheUlPSUFKQkgzVnhJZzFySUFJZ0Jtb2lBQ0FFYTBFQUlBQWdCRW9pQlJzaUNtc2hBQUpBSUFKQkFFZ2dCWElpRUVVRVFDQUpCRUFEUUNBQklBTWdBQkFWSUFocUlRRWdDVUYvYWlJSkRRQUxDeUFMUlEwQkEwQWdBU0FESUFBUUZTQUlhaUVCSUFNZ0JHb2hBeUFMUVg5cUlnc05BQXNNQVFzQ1FDQUpSUTBBSUExRkJFQURRQ0FBSVFjZ0FTRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQVNBSWFpRUJJQWxCZjJvaUNRMEFEQUlBQ3dBTElBRWdEbW9oQmdOQUlBRWdBeTBBQUNBTkVBY2hBU0FBSVFjZ0JpRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQmlBSWFpRUdJQUVnQ0dvaEFTQUpRWDlxSWdrTkFBc0xJQXRGRFFBZ0RVVUVRQU5BSUFBaEJ5QUJJUUlnQXlFRklBQUVRQU5BSUFJZ0JTMEFBRG9BQUNBQ1FRRnFJUUlnQlVFQmFpRUZJQWRCZjJvaUJ3MEFDd3NnQ2dSQUlBSWdCVUYvYWkwQUFDQUtFQWNhQ3lBQklBaHFJUUVnQXlBRWFpRURJQXRCZjJvaUN3MEFEQUlBQ3dBTElBRWdEbW9oQ1FOQUlBRWdBeTBBQUNBTkVBY2hBU0FBSVFjZ0NTRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQ0NBSmFpRUpJQUVnQ0dvaEFTQURJQVJxSVFNZ0MwRi9haUlMRFFBTEN3SkFJQTlGRFFBZ0F5QUVheUVESUJCRkJFQURRQ0FCSUFNZ0FCQVZJQWhxSVFFZ0RFRi9haUlNRFFBTUFnQUxBQXNnRFVVRVFBTkFJQU1oQWlBQklRVWdBQ0VISUFBRVFBTkFJQVVnQWkwQUFEb0FBQ0FGUVFGcUlRVWdBa0VCYWlFQ0lBZEJmMm9pQncwQUN3c2dDZ1JBSUFVZ0FrRi9haTBBQUNBS0VBY2FDeUFCSUFocUlRRWdERUYvYWlJTURRQU1BZ0FMQUFzZ0FTQU9haUVKQTBBZ0FTQURMUUFBSUEwUUJ5RUJJQUFoQnlBSklRSWdBeUVGSUFBRVFBTkFJQUlnQlMwQUFEb0FBQ0FDUVFGcUlRSWdCVUVCYWlFRklBZEJmMm9pQncwQUN3c2dDZ1JBSUFJZ0JVRi9haTBBQUNBS0VBY2FDeUFJSUFscUlRa2dBU0FJYWlFQklBeEJmMm9pREEwQUN3c0w5QUlCQTM4Z0FVRURkRUh3Tm1vaUF5Z0NBQ0VGSUFNdEFBUWhBeUFCUVFOMFFiQTFhaUlCTFFBRUlRUUNRQ0FCS0FJQVFRUkdCRUFnQWlBRVFRRjBhaTRCQUNFQklBVkJCRVlFUUNBQklBSWdBMEVCZEdvdUFRQnFRUUZxUVFGMUR3c0NmeUFBS0FMTUFTSUNCRUFnQUNnQ0JDQUNLQUlFUmd3QkMwRUFDMFVOQVNBQklBQW9Bc3dCSUFOQkFYUnFMZ0VjYWtFQmFrRUJkUThMSUFWQkJFWUVRQ0FDSUFOQkFYUnFMZ0VBSVFFQ2Z5QUFLQUxJQVNJQ0JFQWdBQ2dDQkNBQ0tBSUVSZ3dCQzBFQUMwVU5BU0FCSUFBb0FzZ0JJQVJCQVhScUxnRWNha0VCYWtFQmRROExBbjhDZnlBQUtBTElBU0lCQkVBZ0FDZ0NCQ0FCS0FJRVJnd0JDMEVBQzBVRVFFRUFJUUpCQUF3QkMwRUJJUUlnQUNnQ3lBRWdCRUVCZEdvdUFSd0xJUUVDZnlBQUtBTE1BU0lFQkVBZ0FDZ0NCQ0FFS0FJRVJnd0JDMEVBQzBVTkFDQUFLQUxNQVNBRFFRRjBhaTRCSENFQUlBSkZCRUFnQUE4TElBQWdBV3BCQVdwQkFYVWhBUXNnQVF1SkJ3RUhmeUFESUFWcUlnMGdBUzRCQUNJTVFRSjFhaUVESUFRZ0Jtb2lEaUFCTGdFQ0lnOUJBblZxSVFRZ0FpZ0NDRUVFZENFSklBSW9BZ1JCQkhRaENpQUFJQVpCQkhScUlBVnFJUXNDUUNBTVFRTnhRUVIwSUE5QkEzRkJBblJ5UWRBN2FpZ0NBQ0lNUVE1TkJFQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnREVFQmF3NE9BUUlEQkFVR0J3Z0pDZ3NNRFE0QUN5QUNLQUlBSUFzZ0F5QUVJQW9nQ1NBSElBaEJFQkFNREE4TElBSW9BZ0FnQ3lBRElBUkJmbW9nQ2lBSklBY2dDRUVBRUNRTURnc2dBaWdDQUNBTElBTWdCRUYrYWlBS0lBa2dCeUFJRUVjTURRc2dBaWdDQUNBTElBTWdCRUYrYWlBS0lBa2dCeUFJUVFFUUpBd01DeUFDS0FJQUlBc2dBMEYrYWlBRUlBb2dDU0FISUFoQkFCQWpEQXNMSUFJb0FnQWdDeUFEUVg1cUlBUkJmbW9nQ2lBSklBY2dDRUVBRUJvTUNnc2dBaWdDQUNBTElBTkJmbW9nQkVGK2FpQUtJQWtnQnlBSVFRQVFJUXdKQ3lBQ0tBSUFJQXNnQTBGK2FpQUVRWDVxSUFvZ0NTQUhJQWhCQWhBYURBZ0xJQUlvQWdBZ0N5QURRWDVxSUFRZ0NpQUpJQWNnQ0JCR0RBY0xJQUlvQWdBZ0N5QURRWDVxSUFSQmZtb2dDaUFKSUFjZ0NFRUFFQ0lNQmdzZ0FpZ0NBQ0FMSUFOQmZtb2dCRUYrYWlBS0lBa2dCeUFJRUVVTUJRc2dBaWdDQUNBTElBTkJmbW9nQkVGK2FpQUtJQWtnQnlBSVFRRVFJZ3dFQ3lBQ0tBSUFJQXNnQTBGK2FpQUVJQW9nQ1NBSElBaEJBUkFqREFNTElBSW9BZ0FnQ3lBRFFYNXFJQVJCZm1vZ0NpQUpJQWNnQ0VFQkVCb01BZ3NnQWlnQ0FDQUxJQU5CZm1vZ0JFRithaUFLSUFrZ0J5QUlRUUVRSVF3QkN5QUNLQUlBSUFzZ0EwRithaUFFUVg1cUlBb2dDU0FISUFoQkF4QWFDeUFOUVFGMklBRXVBUUFpQ1VFRGRXb2hBeUFPUVFGMklBRXVBUUlpQVVFRGRXb2hCQ0FDS0FJQUlBSW9BZ1FpQ2lBQ0tBSUlJZ3RzUVFoMGFpRUNJQUFnQmtFQ2RFRjRjV29nQlVFQmRtcEJnQUpxSVFVZ0NFRUJkaUVHSUFkQkFYWWhCeUFCUVFkeElRZ2dDMEVEZENFQUlBcEJBM1FoQVFKQUlBbEJCM0VpQ1VVTkFDQUlSUTBBSUFJZ0JTQURJQVFnQVNBQUlBa2dDQ0FISUFZUVNBOExJQWtFUUNBQ0lBVWdBeUFFSUFFZ0FDQUpJQWNnQmhCTER3c2dDQVJBSUFJZ0JTQURJQVFnQVNBQUlBZ2dCeUFHRUVvUEN5QUNJQVVnQXlBRUlBRWdBQ0FISUFaQkNCQU1JQUlnQUNBQmJHb2dCVUZBYXlBRElBUWdBU0FBSUFjZ0JrRUlFQXdMeHdFQkJIOGdBQ2dDQkNFQ0FrQWdBQ2dDREVFRGRDQUFLQUlRYXlJRFFTQk9CRUFnQWlnQUFDSUJRUmgwSUFGQkNIUkJnSUQ4QjNGeUlBRkJDSFpCZ1A0RGNTQUJRUmgyY25JaEFTQUFLQUlJSWdCRkRRRWdBU0FBZENBQ0xRQUVRUWdnQUd0MmNnOExJQU5CQVVnRVFFRUFEd3NnQWkwQUFDQUFLQUlJSWdCQkdHb2lCSFFoQVNBQUlBTnFRWGhxSWdCQkFVZ05BQU5BSUFJdEFBRWdCRUY0YWlJRWRDQUJjaUVCSUFCQkNFb2hBeUFDUVFGcUlRSWdBRUY0YWlFQUlBTU5BQXNMSUFFTGpBUUJCMzhDUUNBQVFYOXFJZ2d0QUFBaUJTQUFMUUFBSWdacklnUWdCRUVmZFNJRWFpQUVjeUFDS0FJRVR3MEFJQUJCZm1vdEFBQWlCQ0FGYXlJSElBZEJIM1VpQjJvZ0IzTWdBaWdDQ0NJSlR3MEFJQUF0QUFFaUJ5QUdheUlLSUFwQkgzVWlDbW9nQ25NZ0NVOE5BQ0FCUVFOTkJFQWdDQ0FGSUFFZ0FpZ0NBR3BCZjJvdEFBQWlDRUYvY3lJSklBaEJBV29pQ0NBR0lBVnJRUUowSUFkcklBUnFRUVJxUVFOMUlnVWdCU0FJU2hzZ0JTQUpTQnNpQldwQnNDNXFMUUFBT2dBQUlBQWdCaUFGYTBHd0xtb3RBQUE2QUFBTUFRc2dDQ0FGSUFkcUlBUkJBWFJxUVFKcVFRSjJPZ0FBSUFBZ0JpQUhRUUYwYWlBRWFrRUNha0VDZGpvQUFBc0NRQ0FBSUFOcUlnQkJmMm9pQnkwQUFDSURJQUF0QUFBaUJXc2lCaUFHUVI5MUlnWnFJQVp6SUFJb0FnUlBEUUFnQUVGK2FpMEFBQ0lHSUFOcklnUWdCRUVmZFNJRWFpQUVjeUFDS0FJSUlnaFBEUUFnQUMwQUFTSUVJQVZySWdrZ0NVRWZkU0lKYWlBSmN5QUlUdzBBSUFGQkEwMEVRQ0FISUFFZ0FpZ0NBR3BCZjJvdEFBQWlBVUYvY3lJQ0lBRkJBV29pQnlBRklBTnJRUUowSUFScklBWnFRUVJxUVFOMUlnRWdBU0FIU2hzZ0FTQUNTQnNpQVNBRGFrR3dMbW90QUFBNkFBQWdBQ0FGSUFGclFiQXVhaTBBQURvQUFBOExJQWNnQXlBRWFpQUdRUUYwYWtFQ2FrRUNkam9BQUNBQUlBVWdCRUVCZEdvZ0JtcEJBbXBCQW5ZNkFBQUxDMGNBQWtBZ0FVRUVUUVJBQWtBQ1FBSkFBa0FnQVVFQmF3NEVBUUlEQlFBTElBQW9Bc2dCRHdzZ0FDZ0N6QUVQQ3lBQUtBTFFBUThMSUFBb0F0UUJEd3RCQUNFQUN5QUFDNlVEQVF0L1FRQWdBMnNpQzBFQmRDRUVJQUVnQWlnQ0FHcEJmMm90QUFBaUFVRUJhaUVKSUFGQmYzTWhDZ0pBSUFBZ0Eyc2lCeTBBQUNJRklBQXRBQUFpQm1zaUFTQUJRUjkxSWdGcUlBRnpJQUlvQWdRaUFVOE5BQ0FBSUFScUxRQUFJZzBnQldzaUNDQUlRUjkxSWdocUlBaHpJQUlvQWdnaUNFOE5BQ0FBSUFOcUxRQUFJZzRnQm1zaURDQU1RUjkxSWd4cUlBeHpJQWhQRFFBZ0J5QUtJQWtnQmlBRmEwRUNkQ0FPYXlBTmFrRUVha0VEZFNJQklBRWdDVW9iSUFFZ0NrZ2JJZ0VnQldwQnNDNXFMUUFBT2dBQUlBQWdCaUFCYTBHd0xtb3RBQUE2QUFBZ0FpZ0NCQ0VCQ3dKQUlBQkJBV29pQlNBTGFpSUxMUUFBSWdZZ0FDMEFBU0lBYXlJSElBZEJIM1VpQjJvZ0IzTWdBVThOQUNBRUlBVnFMUUFBSWdFZ0Jtc2lCQ0FFUVI5MUlnUnFJQVJ6SUFJb0FnZ2lBazhOQUNBRElBVnFMUUFBSWdNZ0FHc2lCQ0FFUVI5MUlnUnFJQVJ6SUFKUERRQWdDeUFLSUFrZ0FDQUdhMEVDZENBRGF5QUJha0VFYWtFRGRTSUJJQUVnQ1VvYklBRWdDa2diSWdFZ0JtcEJzQzVxTFFBQU9nQUFJQVVnQUNBQmEwR3dMbW90QUFBNkFBQUxDMFFCQW44L0FDRUJBa0JCc01RQUtBSUFJZ0lnQUVFRGFrRjhjV29pQUNBQlFSQjBUUTBBSUFBUUFRMEFRYkRBQUVFd05nSUFRWDhQQzBHd3hBQWdBRFlDQUNBQ0N6UUJBWDhDUUNBQlFSQkxEUUFnQUNnQ0JDQUJRUUowYWlnQ0FDSUFSUTBBSUFBb0FoUkJBa2tOQUNBQUtBSUFJUUlMSUFJTGdnUUJBMzhnQWtHQUJFOEVRQ0FBSUFFZ0FoQUFHaUFBRHdzZ0FDQUNhaUVEQWtBZ0FDQUJjMEVEY1VVRVFBSkFJQUpCQVVnRVFDQUFJUUlNQVFzZ0FFRURjVVVFUUNBQUlRSU1BUXNnQUNFQ0EwQWdBaUFCTFFBQU9nQUFJQUZCQVdvaEFTQUNRUUZxSWdJZ0EwOE5BU0FDUVFOeERRQUxDd0pBSUFOQmZIRWlCRUhBQUVrTkFDQUNJQVJCUUdvaUJVc05BQU5BSUFJZ0FTZ0NBRFlDQUNBQ0lBRW9BZ1EyQWdRZ0FpQUJLQUlJTmdJSUlBSWdBU2dDRERZQ0RDQUNJQUVvQWhBMkFoQWdBaUFCS0FJVU5nSVVJQUlnQVNnQ0dEWUNHQ0FDSUFFb0FodzJBaHdnQWlBQktBSWdOZ0lnSUFJZ0FTZ0NKRFlDSkNBQ0lBRW9BaWcyQWlnZ0FpQUJLQUlzTmdJc0lBSWdBU2dDTURZQ01DQUNJQUVvQWpRMkFqUWdBaUFCS0FJNE5nSTRJQUlnQVNnQ1BEWUNQQ0FCUVVCcklRRWdBa0ZBYXlJQ0lBVk5EUUFMQ3lBQ0lBUlBEUUVEUUNBQ0lBRW9BZ0EyQWdBZ0FVRUVhaUVCSUFKQkJHb2lBaUFFU1EwQUN3d0JDeUFEUVFSSkJFQWdBQ0VDREFFTElBTkJmR29pQkNBQVNRUkFJQUFoQWd3QkN5QUFJUUlEUUNBQ0lBRXRBQUE2QUFBZ0FpQUJMUUFCT2dBQklBSWdBUzBBQWpvQUFpQUNJQUV0QUFNNkFBTWdBVUVFYWlFQklBSkJCR29pQWlBRVRRMEFDd3NnQWlBRFNRUkFBMEFnQWlBQkxRQUFPZ0FBSUFGQkFXb2hBU0FDUVFGcUlnSWdBMGNOQUFzTElBQUx3UmdCSUg4akFFSFFBMnNpQmlRQUlBRW9BZ2doRkNBQklBRW9BZ1FpQ2lBQ2JDSWFJQU5xRUIwZ0FTZ0NBQ0VKSUFCQkFEWUNDQ0FBUWlnM0FoUWdBRUlBTndJTUlBQkJCallDQUNBRFFRUjBJUWNDUUFKQUFrQWdCRUYrYWlJRVFRVkxEUUFDUUNBRVFRRnJEZ1FCQVFFQkFBc01BUXNnQmtFQU5nSU1JQVlnRkRZQ0dDQUdJQW8yQWhRZ0JpQUZOZ0lRSUFVRVFDQUdRZEFBYWlBR1FReHFJQVpCRUdvZ0J5QUNRUVIwUVFCQkFFRVFRUkFRRGd3Q0N3c2dCa0hRQUdwQkFFR0FBeEFIR2lBSklCcEJDSFJxSUFkcUlRd2dCa0lBTndOSUlBWkJRR3RDQURjREFDQUdRZ0EzQXpnZ0JrSUFOd013SUFaQ0FEY0RLQ0FHUWdBM0F5QWdCa0lBTndNWUlBWkNBRGNERUVFQUlRa0NmMEVBSUFKRkRRQWFRUUFnQUVFQUlBcHJRZGdCYkdvb0FzUUJSUTBBR2lBR0lBd2dDa0VFZEdzaUJDMEFCU0FFTFFBRWFpQUVMUUFHYWlBRUxRQUhhaUlYSUFRdEFBTWdCQzBBQWlBRUxRQUJJQVF0QUFCcWFtb2lGbW9pQlNBRUxRQUxJQVF0QUFvZ0JDMEFDU0FFTFFBSWFtcHFJaEpySUFRdEFBOGdCQzBBRGlBRUxRQU5JQVF0QUF4cWFtb2lFMnNpQ0RZQ0ZDQUdJQVVnRW1vZ0Uyb2lDVFlDRUVFQkN5RUZBbjhDUUNBQ0lCUkJmMnBIQkVBZ0FDQUtRZGdCYkdvb0FzUUJEUUVMSUFVTUFRc2dCaUFNSUFwQkNIUnFJZ0l0QUFVZ0FpMEFCR29nQWkwQUJtb2dBaTBBQjJvaUhpQUNMUUFESUFJdEFBSWdBaTBBQVNBQ0xRQUFhbXBxSWg5cUlnUWdBaTBBQ3lBQ0xRQUtJQUl0QUFrZ0FpMEFDR3BxYWlJWWF5QUNMUUFQSUFJdEFBNGdBaTBBRFNBQ0xRQU1hbXBxSWhscklBaHFJZ2cyQWhRZ0JpQUVJQmhxSUFscUlCbHFJZ2syQWhCQkFTRVFJQVZCQVdvTElRZEJBQ0VFQW44Q1FDQURSUTBBSUFCQmJHb29BZ0JGRFFBZ0JpQU1RWDlxSWdJZ0NrRUdkQ0lPYWlJRUlBcEJCSFFpQzJvdEFBQWdCQzBBQUdvZ0JDQUtRUVYwSWc5cUxRQUFhaUFFSUFwQk1Hd2lEV290QUFCcUloc2dBaUFOYWkwQUFDQUNJQTlxTFFBQUlBSWdDMm90QUFBZ0FpMEFBR3BxYWlJY2FpSVJJQVFnRG1vaUFpQUxhaTBBQUNBQ0xRQUFhaUFDSUE5cUxRQUFhaUFDSUExcUxRQUFhaUlWYXlBQ0lBNXFJZ0lnQzJvdEFBQWdBaTBBQUdvZ0FpQVBhaTBBQUdvZ0FpQU5haTBBQUdvaUQyc2lCRFlDSUNBR0lCRWdGV29nQ1dvZ0Qyb2lDVFlDRUNBSFFRRnFJUXRCQVF3QkN5QUhJUXRCQUFzaEFnSkFBa0FDUUFKQUFrQUNRQ0FESUFwQmYycEhCRUFnQUNnQ25BTU5BUXRCQUNFT0lBSkJBRWNoRVNBSERRRU1BZ3NnQmlBRUlBeEJFR29pQkNBS1FRWjBJaDFxSWdBZ0NrRUVkQ0lOYWkwQUFDQUFMUUFBYWlBQUlBcEJCWFFpRG1vdEFBQnFJQUFnQ2tFd2JDSVJhaTBBQUdvaUlDQUVJQkZxTFFBQUlBUWdEbW90QUFBZ0JDQU5haTBBQUNBTUxRQVFhbXBxSWlGcUlpSWdBQ0FkYWlJQUlBMXFMUUFBSUFBdEFBQnFJQUFnRG1vdEFBQnFJQUFnRVdvdEFBQnFJZ3hySUFBZ0hXb2lBQ0FOYWkwQUFDQUFMUUFBYWlBQUlBNXFMUUFBYWlBQUlCRnFMUUFBYWlJTmEyb2lCRFlDSUNBR0lBd2dJbW9nQ1dvZ0RXb2lDVFlDRUNBQ1FRQkhJUkZCQVNFT0lBSkJBV29oQUNBTFFRRnFJUXNDUUNBSERRQWdBa1VOQUNBR0lCc2dIR29nRldvZ0Qyb2dJV3NnSUdzZ0RHc2dEV3RCQlhVaUNEWUNGQXdEQ3lBSFJRMENJQUFoQWdzZ0JpQUlJQWRCQTJwMUlnZzJBaFFMQWtBZ0VFVU5BQ0FGUlEwQUlBSU5BQ0FHSUJZZ0Yyb2dFbW9nRTJvZ0dXc2dHR3NnSG1zZ0gydEJCWFVpQkRZQ0lFRUJJUkJCQVNFTkRBTUxJQkJCQUVjaEVDQUZRUUJISVEwZ0FrVU5BZ3dCQ3lBUVFRQkhJUkFnQlVFQVJ5RU5JQUFoQWdzZ0JpQUVJQUpCQTJwMUlnUTJBaUFMSUFZQ2Z5QUxRWDlxSWdCQkFrMEVRQUpBQWtBQ1FDQUFRUUZyRGdJQkFnQUxJQWxCQkhZTUF3c2dDVUVGZGd3Q0N5QUpRUlZzUVFwMURBRUxJQWxCQm5ZTElnQTJBaEFDUUNBRUlBaHlSUVJBSUFZZ0FEWUNTQ0FHSUFBMkFrd2dCaUFBTmdKRUlBWWdBRFlDUUNBR0lBQTJBandnQmlBQU5nSTRJQVlnQURZQ05DQUdJQUEyQWpBZ0JpQUFOZ0lzSUFZZ0FEWUNLQ0FHSUFBMkFpUWdCaUFBTmdJZ0lBWWdBRFlDSENBR0lBQTJBaGdnQmlBQU5nSVVEQUVMSUFZZ0FDQUlhaUlGSUFSck5nSkFJQVlnQlNBRVFRRjFJZ0pyTmdJd0lBWWdBaUFGYWpZQ0lDQUdJQVFnQldvMkFoQWdCaUFBSUFocklnVWdCR3MyQWt3Z0JpQUZJQUpyTmdJOElBWWdBaUFGYWpZQ0xDQUdJQVFnQldvMkFod2dCaUFBSUFoQkFYVWlCMm9pQlNBRWF6WUNSQ0FHSUFVZ0FtczJBalFnQmlBQ0lBVnFOZ0lrSUFZZ0JDQUZhallDRkNBR0lBQWdCMnNpQUNBRWF6WUNTQ0FHSUFBZ0FtczJBamdnQmlBQUlBSnFOZ0lvSUFZZ0FDQUVhallDR0FzZ0JrSFFBR29oQ0NBR1FSQnFJUUJCQUNFRUEwQWdDQ0FBSUFSQkRIRnFLQUlBSWdKQi93RWdBa0gvQVVnYklnSkJBQ0FDUVFCS0d6b0FBQ0FBSUFCQkVHb2dCRUVCYWlJRVFUOXhHeUVBSUFoQkFXb2hDQ0FFUVlBQ1J3MEFDeUFCS0FJQUlBb2dGR3dpQUVFSWRHb2dHa0VHZEdvZ0EwRURkR29oQXlBS1FRUjBJUXdnQ2tFR2RDRWFJQUJCQm5RaEhVRUFJQXBCQTNRaUMyc2hJQ0FHUWRBQ2FpRWhJQVpCUUdzaElrRUFJUVVEUUNBR1FnQTNBMGdnSWtJQU53TUFJQVpDQURjRE9DQUdRZ0EzQXpBZ0JrSUFOd01vSUFaQ0FEY0RJQ0FHUWdBM0F4Z2dCa0lBTndNUVFRQWhDRUVBSVFSQkFDRUpJQTBFUUNBR0lBTWdJR29pQUMwQUF5QUFMUUFDYWlJWElBQXRBQUVnQUMwQUFHb2lGbW9pQWlBQUxRQUZJQUF0QUFScUloSnJJQUF0QUFjZ0FDMEFCbW9pRTJzaUNEWUNGQ0FHSUFJZ0Vtb2dFMm9pQkRZQ0VFRUJJUWtMSUJBRVFDQUdJQU1nR21vaUFDMEFBeUFBTFFBQ2FpSWVJQUF0QUFFZ0FDMEFBR29pSDJvaUFpQUFMUUFGSUFBdEFBUnFJaGhySUFBdEFBY2dBQzBBQm1vaUdXc2dDR29pQ0RZQ0ZDQUdJQUlnR0dvZ0JHb2dHV29pQkRZQ0VDQUpRUUZxSVFrTFFRQWhBQUovSUJGRkJFQWdDU0VIUVFBTUFRc2dCaUFEUVg5cUlnQWdER29pQWlBTGFpMEFBQ0FDTFFBQWFpSWJJQUFnQzJvdEFBQWdBQzBBQUdvaUhHb2lCeUFDSUF4cUlnQWdDMm90QUFBZ0FDMEFBR29pRldzZ0FDQU1haUlBSUF0cUxRQUFJQUF0QUFCcUlnOXJJZ0EyQWlBZ0JpQUhJQlZxSUFScUlBOXFJZ1EyQWhBZ0NVRUJhaUVIUVFFTElRSUNRQ0FHQW44Q1FBSkFBa0FnRGtVRVFDQUpEUUVNQWdzZ0JpQUFJQU5CQ0dvaUNpQU1haUlBSUF0cUxRQUFJQUF0QUFCcUlpTWdDaUFMYWkwQUFDQURMUUFJYWlJa2FpSWxJQUFnREdvaUFDQUxhaTBBQUNBQUxRQUFhaUlLYXlBQUlBeHFJZ0FnQzJvdEFBQWdBQzBBQUdvaUZHdHFJZ0EyQWlBZ0JpQUtJQ1ZxSUFScUlCUnFJZ1EyQWhBZ0FrRUJhaUVDSUFkQkFXb2hCeUFSUVFGeklBbEJBRWR5UlFSQUlBWWdHeUFjYWlBVmFpQVBhaUFrYXlBamF5QUtheUFVYTBFRWRTSUlOZ0lVREFNTElBbEZEUUlMSUFZZ0NDQUpRUUpxZFNJSU5nSVVDeUFXSUJkcUlCSnFJQk5xSUJscklCaHJJQjVySUI5clFRUjFJQkFnRFNBQ1JYRnhRUUZHRFFFYUlBSkZEUUlMSUFBZ0FrRUNhblVMSWdBMkFpQUxJQVlDZnlBSFFYOXFJZ0pCQWswRVFBSkFBa0FDUUNBQ1FRRnJEZ0lCQWdBTElBUkJBM1lNQXdzZ0JFRUVkZ3dDQ3lBRVFSVnNRUWwyREFFTElBUkJCWFlMSWdRMkFoQUNRQ0FBSUFoeVJRUkFJQVlnQkRZQ1NDQUdJQVEyQWt3Z0JpQUVOZ0pFSUFZZ0JEWUNRQ0FHSUFRMkFqd2dCaUFFTmdJNElBWWdCRFlDTkNBR0lBUTJBakFnQmlBRU5nSXNJQVlnQkRZQ0tDQUdJQVEyQWlRZ0JpQUVOZ0lnSUFZZ0JEWUNIQ0FHSUFRMkFoZ2dCaUFFTmdJVURBRUxJQVlnQkNBSWFpSUhJQUJyTmdKQUlBWWdCeUFBUVFGMUlnSnJOZ0l3SUFZZ0FpQUhhallDSUNBR0lBQWdCMm8yQWhBZ0JpQUVJQWhySWdjZ0FHczJBa3dnQmlBSElBSnJOZ0k4SUFZZ0FpQUhhallDTENBR0lBQWdCMm8yQWh3Z0JpQUVJQWhCQVhVaUNXb2lCeUFBYXpZQ1JDQUdJQWNnQW1zMkFqUWdCaUFDSUFkcU5nSWtJQVlnQUNBSGFqWUNGQ0FHSUFRZ0NXc2lCQ0FBYXpZQ1NDQUdJQVFnQW1zMkFqZ2dCaUFDSUFScU5nSW9JQVlnQUNBRWFqWUNHQXNnSVNBRlFRWjBhaUVJUVFBaEFDQUdRUkJxSVFRRFFDQUlJQVFnQUVFQmRFRU1jV29vQWdBaUFrSC9BU0FDUWY4QlNCc2lBa0VBSUFKQkFFb2JPZ0FBSUFRZ0JFRVFhaUFBUVFGcUlnQkJEM0ViSVFRZ0NFRUJhaUVJSUFCQndBQkhEUUFMSUFNZ0hXb2hBeUFGUVFGcUlnVkJBa2NOQUFzTElBRWdCa0hRQUdvUUd5QUdRZEFEYWlRQUN6WUFJQUlFUUNBQUlBRVFBZzhMUVFFaEFpQUJJQUJCQVJBRElnQTJBZ0FnQUVGL1J3Ui9JQUVnQUVFQmN6WUNBRUVBQlVFQkN3dk1Bd0VTZnlBRFFRRjBJUThnQTBGOWJDRVFRUUFnQTJzaUVVRUJkQ0VTSUFFZ0FpZ0NBR3BCZjJvdEFBQWlCMEVCYWlFVFFRQWdCMnNoQ2tFRUlRRURRQUpBSUFBZ0VXb2lGQzBBQUNJRklBQXRBQUFpQ0dzaUJDQUVRUjkxSWdScUlBUnpJQUlvQWdSUERRQWdBQ0FTYWlJTExRQUFJZ3dnQldzaUJDQUVRUjkxSWdScUlBUnpJQUlvQWdnaUJrOE5BQ0FBSUFOcUloVXRBQUFpRFNBSWF5SUVJQVJCSDNVaUJHb2dCSE1nQms4TkFDQUhJUVFnQUNBUWFpMEFBQ0lKSUFWcklnNGdEa0VmZFNJT2FpQU9jeUFHU1FSQUlBc2dEQ0FLSUFjZ0JTQUlha0VCYWtFQmRpQU1RUUYwYXlBSmFrRUJkU0lFSUFRZ0Iwb2JJQVFnQ2tnYmFqb0FBQ0FDS0FJSUlRWWdFeUVFQ3lBVUlBVUNmeUFBSUE5cUxRQUFJZ3NnQ0dzaUNTQUpRUjkxSWdscUlBbHpJQVpKQkVBZ0ZTQU5JQW9nQnlBRklBaHFRUUZxUVFGMklBMUJBWFJySUF0cVFRRjFJZ1lnQmlBSFNoc2dCaUFLU0J0cU9nQUFJQVJCQVdvaEJBdEJBQ0FFYXlJR0N5QUVJQWdnQld0QkFuUWdEV3NnREdwQkJHcEJBM1VpQlNBRklBUktHeUFGSUFaSUd5SUVha0d3TG1vdEFBQTZBQUFnQUNBSUlBUnJRYkF1YWkwQUFEb0FBQXNnQUVFQmFpRUFJQUZCZjJvaUFRMEFDd3Y3QmdFT2Z5QUNLQUlJSVFvZ0FpZ0NCQ0VQQWtBZ0FVRUVUd1JBSUE5QkFuWkJBbW9oRUVFRUlRSURRQUpBSUFCQmYyb2lCUzBBQUNJSElBQXRBQUFpQ0dzaUFTQUJRUjkxSWdGcUlBRnpJZzBnRDA4TkFDQUFRWDVxSWc0dEFBQWlBU0FIYXlJRUlBUkJIM1VpQkdvZ0JITWdDazhOQUNBQUxRQUJJZ2tnQ0dzaUJDQUVRUjkxSWdScUlBUnpJQXBQRFFBQ1FDQU5JQkJKQkVBZ0FDMEFBaUVMQW44Z0FFRjlhaUlOTFFBQUlnUWdCMnNpQmlBR1FSOTFJZ1pxSUFaeklBcEpCRUJCQXlFR0lBVWdDU0FISUFocUlBRnFJZ1ZCQVhScUlBUnFRUVJxUVFOMk9nQUFJQTRnQkNBRmFrRUNha0VDZGpvQUFDQUVRUU5zSVE0Z0JVRUVhaUVNSUFCQmZHb3RBQUFNQVFzZ0J5QUphaUVNUVFJaERrRUNJUVlnQlNFTklBRUxJUVFnRFNBTUlBNXFJQVJCQVhScUlBWjJPZ0FBSUFzZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6SUFwUERRRWdBQ0FISUFscUlBaHFJZ1VnQzJwQkFtcEJBblk2QUFFZ0FDQUZJQXRCQTJ4cUlBQXRBQU5CQVhScVFRUnFRUU4yT2dBQ0lBQWdBU0FGUVFGMGFpQUxha0VFYWtFRGRqb0FBQXdDQ3lBRklBY2dDV29nQVVFQmRHcEJBbXBCQW5ZNkFBQUxJQUFnQVNBSWFpQUpRUUYwYWtFQ2FrRUNkam9BQUFzZ0FDQURhaUVBSUFKQmYyb2lBZzBBQ3d3QkN5QUJJQUlvQWdCcVFYOXFMUUFBSWdWQkFXb2hEVUVBSUFWcklRaEJCQ0VDQTBBQ1FDQUFRWDlxSWc0dEFBQWlCQ0FBTFFBQUlnZHJJZ0VnQVVFZmRTSUJhaUFCY3lBUFR3MEFJQUJCZm1vaURDMEFBQ0lKSUFScklnRWdBVUVmZFNJQmFpQUJjeUFLVHcwQUlBQXRBQUVpQ3lBSGF5SUJJQUZCSDNVaUFXb2dBWE1nQ2s4TkFDQUFMUUFDSVFZZ0JTRUJJQUJCZldvdEFBQWlFQ0FFYXlJUklCRkJIM1VpRVdvZ0VYTWdDa2tFUUNBTUlBa2dDQ0FGSUFRZ0IycEJBV3BCQVhZZ0NVRUJkR3NnRUdwQkFYVWlBU0FCSUFWS0d5QUJJQWhJRzJvNkFBQWdEU0VCQ3lBT0lBUUNmeUFHSUFkcklnd2dERUVmZFNJTWFpQU1jeUFLU1FSQUlBQWdDeUFJSUFVZ0JDQUhha0VCYWtFQmRpQUxRUUYwYXlBR2FrRUJkU0lHSUFZZ0JVb2JJQVlnQ0VnYmFqb0FBU0FCUVFGcUlRRUxRUUFnQVdzaUJnc2dBU0FKSUF0cklBY2dCR3RCQW5ScVFRUnFRUU4xSWdRZ0JDQUJTaHNnQkNBR1NCc2lBV3BCc0M1cUxRQUFPZ0FBSUFBZ0J5QUJhMEd3TG1vdEFBQTZBQUFMSUFBZ0Eyb2hBQ0FDUVg5cUlnSU5BQXNMQzlvSEFRMS9Jd0JCd0FOckloRWtBQ0FHUVFWcUlRa0NRQUpBSUFKQkFFZ05BQ0FEUVFCSURRQWdBaUFKYWlBRVN3MEFJQU1nQjJwQkJXb2dCVXNOQUNBRUlRa2dBeUVLREFFTElBQWdFU0FDSUFNZ0JDQUZJQWtnQjBFRmFpQUpFQXdnRVNFQVFRQWhBZ3NDUUNBSFJRMEFJQUFnQ1NBS2JDQUNhbW9oRTBFUUlBWnJJUlFDUUNBR1FRSjJJaElFUUNBSklBWnJJUlVnRXlBSklBaEJBWFpCQVhGQkFuSnNha0VGYWlFQ0lBY2hCQU5BSUFKQmYyb3RBQUFoQUNBQ1FYNXFMUUFBSVFNZ0FrRjlhaTBBQUNFRklBSkJmR290QUFBaEN5QUNRWHRxTFFBQUlRMGdFaUVQQTBBZ0FTQUNMUUFBSWdvZ0RTQUFJQXRxSWd4cklBTWdCV3BCRkd4cUlBeEJBblJyYWtFUWFrRUZkVUd3TG1vdEFBQTZBQUFnQVNBQ0xRQUJJZ3dnQ3lBQUlBTnFRUlJzYWlBRklBcHFJZ3RySUF0QkFuUnJha0VRYWtFRmRVR3dMbW90QUFBNkFBRWdBU0FDTFFBQ0loQWdCU0FBSUFwcVFSUnNhaUFESUF4cUlnVnJJQVZCQW5ScmFrRVFha0VGZFVHd0xtb3RBQUE2QUFJZ0FTQUNMUUFESWc0Z0F5QUtJQXhxUVJSc2FpQUFJQkJxSWdOcklBTkJBblJyYWtFUWFrRUZkVUd3TG1vdEFBQTZBQU1nQVVFRWFpRUJJQUpCQkdvaEFpQUFJUTBnQ2lFTElBd2hCU0FRSVFNZ0RpRUFJQTlCZjJvaUR3MEFDeUFCSUJScUlRRWdBaUFWYWlFQ0lBUkJmMm9pQkEwQUN3d0JDeUFIUVg5cUlCUnNJQVpySUFGcVFSQnFJUUVMSUFkQkFuWWlCRVVOQUVIQUFDQUdheUVRSUFsQkFYUWhDaUFKUVFKMElBWnJJUXRCQUNBSmF5SU1RUUYwSVJJZ0FTQUhRUVIwYXlFQ0lBa2dFMm9nQ0VFQmNXcEJBbW9pQUNBSlFRVnNhaUVCQTBBZ0JpSURCRUFEUUNBQ0lBQWdDbW90QUFBaUJTQUJJQXBxTFFBQUlBRWdDV290QUFBaURpQUJJQkpxTFFBQUlnZHFJZ2hySUFoQkFuUnJhaUFCTFFBQUlnMGdBU0FNYWkwQUFDSUlha0VVYkdwQkVHcEJCWFZCc0M1cUxRQUFJQUl0QURCcVFRRnFRUUYyT2dBd0lBSWdBQ0FKYWkwQUFDSVBJQTRnQnlBSWFrRVViR29nQlNBTmFpSU9heUFPUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBSUFJdEFDQnFRUUZxUVFGMk9nQWdJQUlnQUMwQUFDSU9JQTBnQlNBSGFrRVViR29nQ0NBUGFpSU5heUFOUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBSUFJdEFCQnFRUUZxUVFGMk9nQVFJQUlnQUNBTWFpMEFBQ0FJSUFVZ0QycEJGR3hxSUFjZ0Rtb2lCV3NnQlVFQ2RHdHFRUkJxUVFWMVFiQXVhaTBBQUNBQ0xRQUFha0VCYWtFQmRqb0FBQ0FBUVFGcUlRQWdBa0VCYWlFQ0lBRkJBV29oQVNBRFFYOXFJZ01OQUFzTElBSWdFR29oQWlBQklBdHFJUUVnQUNBTGFpRUFJQVJCZjJvaUJBMEFDd3NnRVVIQUEyb2tBQXUxQlFFRWZ5QUFLQUlVSVFNZ0FDZ0NFQ0VFSUFBb0FnUWhCU0FBS0FJTUlnSWdBU2tDQURjQ0FDQUNJQUVwQWdnM0FnZ2dBaUFGUVFSMElnQnFJZ0lnQVNrQ0VEY0NBQ0FDSUFFcEFoZzNBZ2dnQUNBQ2FpSUNJQUVwQWlBM0FnQWdBaUFCS1FJb053SUlJQUFnQW1vaUFpQUJLUUl3TndJQUlBSWdBU2tDT0RjQ0NDQUFJQUpxSWdJZ0FTa0NRRGNDQUNBQ0lBRXBBa2czQWdnZ0FDQUNhaUlDSUFFcEFsQTNBZ0FnQWlBQktRSllOd0lJSUFBZ0Ftb2lBaUFCS1FKZ053SUFJQUlnQVNrQ2FEY0NDQ0FBSUFKcUlnSWdBU2tDY0RjQ0FDQUNJQUVwQW5nM0FnZ2dBQ0FDYWlJQ0lBRXBBb0FCTndJQUlBSWdBU2tDaUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBcEFCTndJQUlBSWdBU2tDbUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBcUFCTndJQUlBSWdBU2tDcUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBckFCTndJQUlBSWdBU2tDdUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBc0FCTndJQUlBSWdBU2tDeUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBdEFCTndJQUlBSWdBU2tDMkFFM0FnZ2dBQ0FDYWlJQ0lBRXBBdUFCTndJQUlBSWdBU2tDNkFFM0FnZ2dBQ0FDYWlJQUlBRXBBdkFCTndJQUlBQWdBU2tDK0FFM0FnZ2dCQ0FCS1FLQUFqY0NBQ0FFSUFWQkEzUWlBR29pQkNBQktRS0lBamNDQUNBQUlBUnFJZ1FnQVNrQ2tBSTNBZ0FnQUNBRWFpSUVJQUVwQXBnQ053SUFJQUFnQkdvaUJDQUJLUUtnQWpjQ0FDQUFJQVJxSWdRZ0FTa0NxQUkzQWdBZ0FDQUVhaUlFSUFFcEFyQUNOd0lBSUFBZ0JHb2dBU2tDdUFJM0FnQWdBeUFCS1FMQUFqY0NBQ0FBSUFOcUlnTWdBU2tDeUFJM0FnQWdBQ0FEYWlJRElBRXBBdEFDTndJQUlBQWdBMm9pQXlBQktRTFlBamNDQUNBQUlBTnFJZ01nQVNrQzRBSTNBZ0FnQUNBRGFpSURJQUVwQXVnQ053SUFJQUFnQTJvaUF5QUJLUUx3QWpjQ0FDQUFJQU5xSUFFcEF2Z0NOd0lBQytnQ0FRVi9Ba0FnQUNBQkVBSWlBdzBBUVFFaEF5QUJJQUVvQWdCQkFXb2lBallDQUNBQ1FTQkxEUUFnQUVFRUVBTWlBa0YvUmcwQUlBRWdBallDQkNBQVFRUVFBeUlDUVg5R0RRQWdBU0FDTmdJSUlBRW9BZ0FFUUFOQUlBQWdBU0FGUVFKMGFpSUNJZ1JCREdvUUFpSUREUUpCQVNFRElBUW9BZ3dpQmtGL1JnMENJQVFnQmtFQmFpSUROZ0lNSUFRZ0F5QUJLQUlFUVFacWREWUNEQ0FBSUFKQmpBRnFFQUlpQXcwQ1FRRWhBeUFDS0FLTUFTSUVRWDlHRFFJZ0FpQUVRUUZxSWdRMkFvd0JJQUlnQkNBQktBSUlRUVJxZERZQ2pBRWdBRUVCRUFNaUJFRi9SZzBDSUFJZ0JFRUJSallDakFJZ0JVRUJhaUlGSUFFb0FnQkpEUUFMQ3lBQVFRVVFBeUlDUVg5R0RRQWdBU0FDUVFGcU5nS01BeUFBUVFVUUF5SUNRWDlHRFFBZ0FTQUNRUUZxTmdLUUF5QUFRUVVRQXlJQ1FYOUdEUUFnQVNBQ1FRRnFOZ0tVQXlBQVFRVVFBeUlBUVg5R0RRQWdBU0FBTmdLWUEwRUFJUU1MSUFNTFd3RURmeUFBSUFBb0FnQWlCQ0FCSUFBb0FnUWlBbkFpQTBFRWRHb2dBU0FEYXlJQlFRaDBhallDRENBQUlBUWdBaUFBS0FJSWJDSUNRUWgwYWlBQlFRWjBhaUFEUVFOMGFpSUJOZ0lRSUFBZ0FTQUNRUVowYWpZQ0ZBdFZBUUovSUFFZ0FrRUJhaUlESUFNZ0FVa2JJUU1nQUNBQ1FRSjBhaWdDQUNFRUEwQUNRQ0FDUVFGcUlnSWdBVThFUUNBRElRSU1BUXNnQUNBQ1FRSjBhaWdDQUNBRVJ3MEJDd3RCQUNBQ0lBRWdBa1liQ3ljQUlBQkJDQ0FBS0FJSUlnQnJFQU5CZjBZRVFBOExRUUFnQUd0QkFuUkJ6RDlxS0FJQUdndDZBUUovSXdCQklHc2lBaVFBSUFJZ0FDZ0NFRFlDRUNBQ0lBQXBBZ2czQXdnZ0FpQUFLUUlBTndNQUFrQWdBaUFDUVJ4cUVBSWlBQTBBSUFJZ0FrRWNhaEFDSWdBTkFDQUNJQUpCSEdvUUFpSUFEUUJCQVNFQUlBSW9BaHdpQTBIL0FVc05BQ0FCSUFNMkFnQkJBQ0VBQ3lBQ1FTQnFKQUFnQUF2bkJ3RVNmeU1BUVlBT2F5SU1KQUFnQmtFRmFpRUpBa0FDUUNBQ1FRQklEUUFnQTBFQVNBMEFJQUlnQ1dvZ0JFc05BQ0FESUFkcVFRVnFJQVZMRFFBZ0F5RUtEQUVMSUFBZ0RFSEFDbW9nQWlBRElBUWdCU0FKSUFkQkJXb2dDUkFNSUF4QndBcHFJUUFnQ1NFRVFRQWhBZ3NDUUNBSFFRSjJJaFJGRFFBZ0NVVU5BQ0FFUVFGMElSVkJBQ0FFYXlJV1FRRjBJUm9nQkVFQ2RDQUdhMEY3YWlFWElBQWdCQ0FLYkNBQ2Ftb2dCR29pQUNBRVFRVnNhaUVDSUF3Z0NVRUNkQ0lRYWlFRElBbEJBM1FoRFVFQUlBbHJRUUowSVE0Z0NVRURiRUVDZENFUEEwQWdDU0VGQTBBZ0F5QU5haUFBSUJWcUxRQUFJaEVnQWlBVmFpMEFBQ0FDSUFScUxRQUFJZ3NnQWlBYWFpMEFBQ0lTYWlJS2F5QUtRUUowYTJvZ0FpMEFBQ0lZSUFJZ0Ztb3RBQUFpRTJwQkZHeHFOZ0lBSUFNZ0VHb2dBQ0FFYWkwQUFDSVpJQXNnRWlBVGFrRVViR29nRVNBWWFpSUtheUFLUVFKMGEybzJBZ0FnQXlBQUxRQUFJZ3NnR0NBUklCSnFRUlJzYWlBVElCbHFJZ3BySUFwQkFuUnJhallDQUNBRElBNXFJQUFnRm1vdEFBQWdFeUFSSUJscVFSUnNhaUFMSUJKcUlncHJJQXBCQW5ScmFqWUNBQ0FBUVFGcUlRQWdBMEVFYWlFRElBSkJBV29oQWlBRlFYOXFJZ1VOQUFzZ0FpQVhhaUVDSUFBZ0Yyb2hBQ0FESUE5cUlRTWdGRUYvYWlJVURRQUxDeUFIQkVCQkVDQUdheUVRSUFaQkFuWWhDaUFNSUFoQkFuUnFRUWhxSVFBZ0RFRVVhaUVDQTBBZ0NnUkFJQUpCYkdvb0FnQWhCQ0FDUVhCcUtBSUFJUThnQWtGMGFpZ0NBQ0VOSUFKQmVHb29BZ0FoQlNBQ1FYeHFLQUlBSVFNZ0NpRUpBMEFnQVNBQ0tBSUFJZzRnQkNBRElBOXFJZ1JySUFVZ0RXcEJGR3hxSUFSQkFuUnJha0dBQkdwQkNuVkJzQzVxTFFBQUlBQW9BZ0JCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFDQUJJQUlvQWdRaUN5QVBJQU1nQldwQkZHeHFJQTBnRG1vaUJHc2dCRUVDZEd0cVFZQUVha0VLZFVHd0xtb3RBQUFnQUNnQ0JFRVFha0VGZFVHd0xtb3RBQUJxUVFGcVFRRjJPZ0FCSUFFZ0FpZ0NDQ0lJSUEwZ0F5QU9ha0VVYkdvZ0JTQUxhaUlFYXlBRVFRSjBhMnBCZ0FScVFRcDFRYkF1YWkwQUFDQUFLQUlJUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFBSWdBU0FDS0FJTUlnWWdCU0FMSUE1cVFSUnNhaUFESUFocUlnUnJJQVJCQW5ScmFrR0FCR3BCQ25WQnNDNXFMUUFBSUFBb0FneEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQXlBQlFRUnFJUUVnQUVFUWFpRUFJQUpCRUdvaEFpQURJUVFnRGlFUElBc2hEU0FJSVFVZ0JpRURJQWxCZjJvaUNRMEFDd3NnQVNBUWFpRUJJQUJCRkdvaEFDQUNRUlJxSVFJZ0IwRi9haUlIRFFBTEN5QU1RWUFPYWlRQUM5RUhBUXgvSXdCQmdBNXJJZzhrQUNBR1FRVnFJUWtDUUFKQUlBSkJBRWdOQUNBRFFRQklEUUFnQWlBSmFpQUVTdzBBSUFkQkJXb2lEaUFEYWlBRlN3MEFJQVFoQ1NBRElRb01BUXNnQUNBUFFjQUthaUFDSUFNZ0JDQUZJQWtnQjBFRmFpSU9JQWtRRENBUFFjQUthaUVBUVFBaEFnc0NRQ0FPUlEwQUlBWkJBbllpRWtVTkFDQUpJQVpySVJNZ0FDQUpJQXBzSUFKcWFrRUZhaUVDSUE4aEFBTkFJQUpCZjJvdEFBQWhDU0FDUVg1cUxRQUFJUU1nQWtGOWFpMEFBQ0VGSUFKQmZHb3RBQUFoQ2lBQ1FYdHFMUUFBSVF3Z0VpRU5BMEFnQUNBQ0xRQUFJZ1FnRENBSklBcHFJZ3RySUFNZ0JXcEJGR3hxSUF0QkFuUnJhallDQUNBQUlBSXRBQUVpQ3lBRElBbHFRUlJzSUFwcUlBUWdCV29pQ21zZ0NrRUNkR3RxTmdJRUlBQWdBaTBBQWlJUUlBUWdDV3BCRkd3Z0JXb2dBeUFMYWlJRmF5QUZRUUowYTJvMkFnZ2dBQ0FDTFFBREloUWdCQ0FMYWtFVWJDQURhaUFKSUJCcUlnTnJJQU5CQW5ScmFqWUNEQ0FBUVJCcUlRQWdBa0VFYWlFQ0lBa2hEQ0FFSVFvZ0N5RUZJQkFoQXlBVUlRa2dEVUYvYWlJTkRRQUxJQUlnRTJvaEFpQU9RWDlxSWc0TkFBc0xJQWRCQW5ZaUJ3UkFRY0FBSUFacklSUWdEeUFHUVFKMElnUnFJZ2tnQmtFVWJHb2hBaUFKSUFoQkFtb2dCbXhCQW5ScUlRQWdCa0VEYkVFQ2RDRUZRUUFnQm1zaURrRURkQ0VUSUFaQkEzUWhDQU5BSUFZaEF5QUdCRUFEUUNBQklBZ2dDV29vQWdBaUNpQUNJQWhxS0FJQUlBSWdCR29vQWdBaUVTQUNJQk5xS0FJQUlndHFJZ3hySUF4QkFuUnJhaUFDS0FJQUlnMGdBaUFPUVFKMEloQnFLQUlBSWd4cVFSUnNha0dBQkdwQkNuVkJzQzVxTFFBQUlBQWdDR29vQWdCQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FNQ0FCSUFRZ0NXb29BZ0FpRWlBUklBc2dER3BCRkd4cUlBb2dEV29pRVdzZ0VVRUNkR3RxUVlBRWFrRUtkVUd3TG1vdEFBQWdBQ0FFYWlnQ0FFRVFha0VGZFVHd0xtb3RBQUJxUVFGcVFRRjJPZ0FnSUFFZ0NTZ0NBQ0lSSUEwZ0NpQUxha0VVYkdvZ0RDQVNhaUlOYXlBTlFRSjBhMnBCZ0FScVFRcDFRYkF1YWkwQUFDQUFLQUlBUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFCQWdBU0FKSUJCcUtBSUFJQXdnQ2lBU2FrRVViR29nQ3lBUmFpSUtheUFLUVFKMGEycEJnQVJxUVFwMVFiQXVhaTBBQUNBQUlCQnFLQUlBUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFBQWdBRUVFYWlFQUlBbEJCR29oQ1NBQlFRRnFJUUVnQWtFRWFpRUNJQU5CZjJvaUF3MEFDd3NnQVNBVWFpRUJJQUFnQldvaEFDQUNJQVZxSVFJZ0JTQUphaUVKSUFkQmYyb2lCdzBBQ3dzZ0QwR0FEbW9rQUF1MEJnRUpmeU1BUWNBRGF5SU5KQUFnQmtFRmFpRUpBa0FDUUNBQ1FRQklEUUFnQXlBSGFpQUZTdzBBSUFOQkFFZ05BQ0FDSUFscUlBUkxEUUFnQkNFSklBTWhDZ3dCQ3lBQUlBMGdBaUFESUFRZ0JTQUpJQWNnQ1JBTUlBMGhBRUVBSVFJTElBY0VRRUVRSUFacklSQWdDU0FHYXlFUklBWkJBblloRHlBQUlBa2dDbXdnQW1wcVFRVnFJUWtEUUFKQUlBOUZEUUFnQ1VGL2FpMEFBQ0VDSUFsQmZtb3RBQUFoQmlBSlFYMXFMUUFBSVFNZ0NVRjhhaTBBQUNFRklBbEJlMm90QUFBaENpQVBJZ0FoQ3lBSUJFQURRQ0FCSUFZZ0NTMEFBQ0lFSUFvZ0FpQUZhaUlLYXlBRElBWnFRUlJzYWlBS1FRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFDQUJJQUlnQ1MwQUFTSUxJQVVnQWlBR2FrRVViR29nQXlBRWFpSUZheUFGUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQVNBQklBUWdDUzBBQWlJTUlBTWdBaUFFYWtFVWJHb2dCaUFMYWlJRGF5QURRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBaUFCSUFzZ0NTMEFBeUlPSUFZZ0JDQUxha0VVYkdvZ0FpQU1haUlEYXlBRFFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUF5QUJRUVJxSVFFZ0NVRUVhaUVKSUFJaENpQUVJUVVnQ3lFRElBd2hCaUFPSVFJZ0FFRi9haUlBRFFBTUFnQUxBQXNEUUNBQklBTWdDUzBBQUNJQUlBb2dBaUFGYWlJRWF5QURJQVpxUVJSc2FpQUVRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBQ0FCSUFZZ0NTMEFBU0lFSUFVZ0FpQUdha0VVYkdvZ0FDQURhaUlGYXlBRlFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFTQUJJQUlnQ1MwQUFpSU1JQU1nQUNBQ2FrRVViR29nQkNBR2FpSURheUFEUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQWlBQklBQWdDUzBBQXlJT0lBWWdBQ0FFYWtFVWJHb2dBaUFNYWlJRGF5QURRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBeUFCUVFScUlRRWdDVUVFYWlFSklBSWhDaUFBSVFVZ0JDRURJQXdoQmlBT0lRSWdDMEYvYWlJTERRQUxDeUFCSUJCcUlRRWdDU0FSYWlFSklBZEJmMm9pQncwQUN3c2dEVUhBQTJva0FBdkdCQUVMZnlNQVFjQURheUlOSkFBQ1FBSkFJQUpCQUVnTkFDQURRUUJJRFFBZ0FpQUdhaUFFU3cwQUlBTWdCMnBCQldvZ0JVc05BQ0FESVFrTUFRc2dBQ0FOSUFJZ0F5QUVJQVVnQmlBSFFRVnFJQVlRRENBTklRQWdCaUVFUVFBaEFnc2dCMEVDZGlJUUJFQkJ3QUFnQm1zaEVpQUVRUUYwSVFVZ0JFRUNkQ0FHYXlFT1FRQWdCR3NpRDBFQmRDRVRJQUFnQkNBSmJDQUNhbW9nQkdvaUFDQUVRUVZzYWlFQ0lBQWdCQ0FJUVFKcWJHb2hCd05BSUFZaEF5QUdCRUFEUUNBQklBQWdCV290QUFBaUNDQUNJQVZxTFFBQUlBSWdCR290QUFBaUNpQUNJQk5xTFFBQUlnbHFJZ3RySUF0QkFuUnJhaUFDTFFBQUlnd2dBaUFQYWkwQUFDSUxha0VVYkdwQkVHcEJCWFZCc0M1cUxRQUFJQVVnQjJvdEFBQnFRUUZxUVFGMk9nQXdJQUVnQUNBRWFpMEFBQ0lSSUFvZ0NTQUxha0VVYkdvZ0NDQU1haUlLYXlBS1FRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQUlBUWdCMm90QUFCcVFRRnFRUUYyT2dBZ0lBRWdBQzBBQUNJS0lBd2dDQ0FKYWtFVWJHb2dDeUFSYWlJTWF5QU1RUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFJQWN0QUFCcVFRRnFRUUYyT2dBUUlBRWdBQ0FQYWkwQUFDQUxJQWdnRVdwQkZHeHFJQWtnQ21vaUNHc2dDRUVDZEd0cVFSQnFRUVYxUWJBdWFpMEFBQ0FISUE5cUxRQUFha0VCYWtFQmRqb0FBQ0FIUVFGcUlRY2dBRUVCYWlFQUlBRkJBV29oQVNBQ1FRRnFJUUlnQTBGL2FpSUREUUFMQ3lBQklCSnFJUUVnQnlBT2FpRUhJQUlnRG1vaEFpQUFJQTVxSVFBZ0VFRi9haUlRRFFBTEN5QU5RY0FEYWlRQUM0OEhBUXgvSUFFb0FnZ2hDeUFCS0FJRUlRWUNRQUpBQWtBZ0FrRUZTdzBBSUFKQkFXc09CQUFBQUFBQkN5QUFLQUs0R2cwQURBRUxJQUJCeEFscUlRUURRQ0FFSUFNUUZDRUhJQU5CRGtzTkFTQURRUUZxSVFNZ0IwVU5BQXNMQWtBQ1FBSkFBa0FnQUNnQ21Ba2lDQVJBSUFBb0Fyd0pJUXBCQUNFRFFRQWhCQU5BSUFvZ0EwSFlBV3hxS0FMRUFVVUVRRUVBSUFSQkFXb2lCQ0FFSUFaR0lnVWJJUVFnQlNBSmFpRUpJQU5CQVdvaUF5QUlTUTBCQ3dzZ0F5QUlSdzBCQ3dKQUFrQWdBa0YrYWlJQ1FRVkxEUUFDUUNBQ1FRRnJEZ1FCQVFFQkFBc2dCMFVOQVNBQUtBSzRHa1VOQVF3REN5QUhEUUlMSUFFb0FnQkJnQUVnQmlBTGJFR0FBMndRQnhvTUFnc2dBQ2dDdkFrZ0JpQUpiRUhZQVd4cUlRZ2dCQVJBSUFRaEF3TkFJQWdnQTBGL2FpSURRZGdCYkdvaUNpQUJJQWtnQXlBQ0lBY1FGaUFLUVFFMkFzUUJJQUFnQUNnQ3RBbEJBV28yQXJRSklBTU5BQXNMSUFSQkFXb2lBeUFHU1FSQUEwQWdDQ0FEUWRnQmJHb2lCQ2dDeEFGRkJFQWdCQ0FCSUFrZ0F5QUNJQWNRRmlBRVFRRTJBc1FCSUFBZ0FDZ0N0QWxCQVdvMkFyUUpDeUFEUVFGcUlnTWdCa2NOQUFzTEFrQWdDVVVOQUNBR1JRMEFRUUFoQlNBSlFYOXFJZ3dnQm13aERTQU1SUVJBQTBBZ0FDZ0N2QWtnRFVIWUFXeHFJQVZCMkFGc2FpSUVJQUZCQUNBRklBSWdCeEFXSUFSQkFUWUN4QUVnQUNBQUtBSzBDVUVCYWpZQ3RBa2dCVUVCYWlJRklBWkhEUUFNQWdBTEFBc2dDVUYrYWlFSVFRQWdCbXRCMkFGc0lRNERRQ0FBS0FLOENTQU5RZGdCYkdvZ0JVSFlBV3hxSWdNZ0FTQU1JQVVnQWlBSEVCWWdBMEVCTmdMRUFTQUFJQUFvQXJRSlFRRnFOZ0swQ1NBSUlRUURRQ0FESUE1cUlnTWdBU0FFSWdvZ0JTQUNJQWNRRmlBRFFRRTJBc1FCSUFBZ0FDZ0N0QWxCQVdvMkFyUUpJQVJCZjJvaEJDQUtEUUFMSUFWQkFXb2lCU0FHUncwQUN3c2dDVUVCYWlJRklBdFBEUUlnQmtVTkFnTkFJQUFvQXJ3SklBVWdCbXhCMkFGc2FpRUlRUUFoQXdOQUlBZ2dBMEhZQVd4cUlnUW9Bc1FCUlFSQUlBUWdBU0FGSUFNZ0FpQUhFQllnQkVFQk5nTEVBU0FBSUFBb0FyUUpRUUZxTmdLMENRc2dBMEVCYWlJRElBWkhEUUFMSUFWQkFXb2lCU0FMUncwQUN3d0NDeUFCS0FJQUlBY2dCaUFMYkVHQUEyd1FGUm9MSUFBZ0FDZ0NtQWtpQVRZQ3RBa2dBVVVOQUNBQUtBSzhDU0VBUVFBaEF3TkFJQUFnQTBIWUFXeHFRUUUyQWdnZ0EwRUJhaUlESUFGSERRQUxDd3MyQVFKL0lBQW9BaWdpQWdSQUEwQWdBQ2dDQkNBQlFRSjBhaUFBS0FJQUlBRkJLR3hxTmdJQUlBRkJBV29pQVNBQ1J3MEFDd3NMOXdRQ0RIOEJma0VISVFVakFFRWdheUlJSVF3RFFDQUZJQUZKQkVBZ0FFRUFJQVZyUVNoc2FpRUtJQVVoQmdOQUlBQWdCa0VvYkdvaUFpZ0NDQ0VKSUFJcEFnQWhEaUFJSUFJcEFndzNBeGdnQWlnQ0dDRU5JQUlvQWhRaEN5QU1JQUlvQWlRMkFoQWdDQ0FDS1FJY053TUlBa0FnQmlJRElBVkpEUUFDUUNBTFJRUkFBMEFnQ2lBRFFTaHNJZ0pxSWdRb0FoUU5BaUFOUlEwQ0lBUW9BaGdOQWlBQUlBSnFJZ1FnQUNBRElBVnJJZ05CS0d4cUlnSXBBZ0EzQWdBZ0JDQUNLUUlnTndJZ0lBUWdBaWtDR0RjQ0dDQUVJQUlwQWhBM0FoQWdCQ0FDS1FJSU53SUlJQU1nQlU4TkFBd0RBQXNBQ3lBTFFYOXFRUUZOQkVBRFFBSi9Ba0FnQ2lBRFFTaHNJZ0pxSWdRb0FoUWlCMFVOQUNBSFFYOXFRUUZMRFFBZ0JDZ0NDQ0lISUFsS0RRUWdBQ0FDYWlJRUlBY2dDVWdOQVJvZ0JDRUNEQVVMSUFBZ0Ftb0xJZ1FnQUNBRElBVnJJZ05CS0d4cUlnSXBBZ0EzQWdBZ0JDQUNLUUlnTndJZ0lBUWdBaWtDR0RjQ0dDQUVJQUlwQWhBM0FoQWdCQ0FDS1FJSU53SUlJQU1nQlU4TkFBd0RBQXNBQ3dOQUlBb2dBMEVvYkNJQ2FpSUVLQUlVSWdjRVFDQUhRWDlxUVFKSkRRSWdCQ2dDQ0NBSlRBMENDeUFBSUFKcUlnUWdBQ0FESUFWcklnTkJLR3hxSWdJcEFnQTNBZ0FnQkNBQ0tRSWdOd0lnSUFRZ0Fpa0NHRGNDR0NBRUlBSXBBaEEzQWhBZ0JDQUNLUUlJTndJSUlBTWdCVThOQUFzTUFRc2dBQ0FEUVNoc2FpRUNDeUFDSUE0M0FnQWdBQ0FEUVNoc2FpSURJQWsyQWdnZ0NDa0RHQ0VPSUFNZ0RUWUNHQ0FESUFzMkFoUWdBeUFPTndJTUlBTWdDQ2tEQ0RjQ0hDQURJQXdvQWhBMkFpUWdCa0VCYWlJR0lBRkhEUUFMQ3lBRlFRRjJJZ1VOQUFzTHJRVUJBWDhDUUNBQUtBSUFJZ0VvQWhSRkRRQWdBVUVBTmdJVUlBRW9BaGdOQUNBQUlBQW9BaXhCZjJvMkFpd0xBa0FnQVNnQ1BFVU5BQ0FCUVFBMkFqd2dBVUZBYXlnQ0FBMEFJQUFnQUNnQ0xFRi9hallDTEFzQ1FDQUJLQUprUlEwQUlBRkJBRFlDWkNBQktBSm9EUUFnQUNBQUtBSXNRWDlxTmdJc0N3SkFJQUVvQW93QlJRMEFJQUZCQURZQ2pBRWdBU2dDa0FFTkFDQUFJQUFvQWl4QmYybzJBaXdMQWtBZ0FTZ0N0QUZGRFFBZ0FVRUFOZ0swQVNBQktBSzRBUTBBSUFBZ0FDZ0NMRUYvYWpZQ0xBc0NRQ0FCS0FMY0FVVU5BQ0FCUVFBMkF0d0JJQUVvQXVBQkRRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3dKQUlBRW9Bb1FDUlEwQUlBRkJBRFlDaEFJZ0FTZ0NpQUlOQUNBQUlBQW9BaXhCZjJvMkFpd0xBa0FnQVNnQ3JBSkZEUUFnQVVFQU5nS3NBaUFCS0FLd0FnMEFJQUFnQUNnQ0xFRi9hallDTEFzQ1FDQUJLQUxVQWtVTkFDQUJRUUEyQXRRQ0lBRW9BdGdDRFFBZ0FDQUFLQUlzUVg5cU5nSXNDd0pBSUFFb0F2d0NSUTBBSUFGQkFEWUMvQUlnQVNnQ2dBTU5BQ0FBSUFBb0FpeEJmMm8yQWl3TEFrQWdBU2dDcEFORkRRQWdBVUVBTmdLa0F5QUJLQUtvQXcwQUlBQWdBQ2dDTEVGL2FqWUNMQXNDUUNBQktBTE1BMFVOQUNBQlFRQTJBc3dESUFFb0F0QUREUUFnQUNBQUtBSXNRWDlxTmdJc0N3SkFJQUVvQXZRRFJRMEFJQUZCQURZQzlBTWdBU2dDK0FNTkFDQUFJQUFvQWl4QmYybzJBaXdMQWtBZ0FTZ0NuQVJGRFFBZ0FVRUFOZ0tjQkNBQktBS2dCQTBBSUFBZ0FDZ0NMRUYvYWpZQ0xBc0NRQ0FCS0FMRUJFVU5BQ0FCUVFBMkFzUUVJQUVvQXNnRURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3dKQUlBRW9BdXdFUlEwQUlBRkJBRFlDN0FRZ0FTZ0M4QVFOQUNBQUlBQW9BaXhCZjJvMkFpd0xBMEFnQUJCZVJRMEFDeUFBUVFBMkFqQWdBRUwvL3dNM0FpUUwzUTRCQ1g4Z0FpZ0NBQ0FBS0FJSUlnSW9BZ0JHQkVBZ0FFRUFOZ0kwSUFBb0FqZ2lDMFVoRFFKQUlBRkZCRUFnQWlBRE5nSU1JQUpCQURZQ0ZDQUNJQTAyQWhnZ0FpQUVOZ0lRSUFJZ0F6WUNDQ0FMRFFFZ0FDQUFLQUlzUVFGcU5nSXNEQUVMSUFVRVFDQUFRZ0EzQWhBZ0FCQW9Ba0FnQVNnQ0FFVUVRQ0FBS0FJNFJRMEJDeUFBUWdBM0FoQUxJQUFvQWdnaUFrRURRUUlnQVNnQ0JDSUJHellDRkNBQVFRQkIvLzhESUFFYk5nSWtJQUlnRFRZQ0dDQUNRUUEyQWhBZ0FrSUFOd0lJSUFCQ2dZQ0FnQkEzQWlnTUFRc0NRQUpBQWtBZ0FTZ0NDQVJBUVFBaEN3TkFJQUVnQzBFVWJHb2lDQ2dDRENJQ1FRWkxEUUlDUUFKQUFrQUNRQUpBQWtBQ1FDQUNRUUZyRGdZQUFRSURCQVVKQ3lBQUtBSVlJZ2xGRFFnZ0F5QUlLQUlRYXlFTUlBQW9BZ0FoQ2tFQUlRZ0RRQUpBSUFvZ0NFRW9iR29pQWlnQ0ZFRi9ha0VCVFFSQUlBSW9BZ2dnREVZTkFRc2dDRUVCYWlJSUlBbEhEUUVNQ2dzTElBaEJBRWdOQ0NBQ1FRQTJBaFFnQUNBQUtBSW9RWDlxTmdJb0lBSW9BaGdOQlNBQUlBQW9BaXhCZjJvMkFpd2dDMEVCYWlFTERBWUxJQUFvQWhnaUNVVU5CeUFJS0FJVUlRd2dBQ2dDQUNFS1FRQWhDQU5BQWtBZ0NpQUlRU2hzYWlJQ0tBSVVRUU5HQkVBZ0FpZ0NDQ0FNUmcwQkN5QUlRUUZxSWdnZ0NVY05BUXdKQ3dzZ0NFRUFTQTBISUFKQkFEWUNGQ0FBSUFBb0FpaEJmMm8yQWlnZ0FpZ0NHQTBFSUFBZ0FDZ0NMRUYvYWpZQ0xDQUxRUUZxSVFzTUJRc2dBQ2dDSkNJQ1FmLy9BMFlOQmlBQ0lBZ29BaGdpREVrTkJpQUFLQUlZSWdsRkRRWWdDQ2dDRUNFT0lBQW9BZ0FoQ2tFQUlRSURRQUpBQWtBZ0NpQUNRU2hzYWlJSUtBSVVRUU5IRFFBZ0NDZ0NDQ0FNUncwQUlBaEJBRFlDRkNBQUlBQW9BaWhCZjJvMkFpZ2dDQ2dDR0EwQklBQWdBQ2dDTEVGL2FqWUNMQXdCQ3lBQ1FRRnFJZ0lnQ1VjTkFRc0xJQWxCQVNBSlFRRkxHeUVKSUFNZ0Rtc2hEa0VBSVFnRFFBSkFJQW9nQ0VFb2JHb2lBaWdDRkNJUFFYOXFRUUZOQkVBZ0FpZ0NDQ0FPUmcwQkN5QUlRUUZxSWdnZ0NVY05BUXdJQ3dzZ0NFRUFTQTBHSUE5QkFra05CaUFDUVFNMkFoUWdBaUFNTmdJSUlBdEJBV29oQ3d3RUN5QUFJQWdvQWh3aUNUWUNKQ0FBS0FJWUlneEZEUUlnQUNnQ0FDRUtRUUFoQWlBSlFmLy9BMFlFUUFOQUFrQWdDaUFDUVNoc2FpSUlLQUlVUVFOSERRQWdDRUVBTmdJVUlBQWdBQ2dDS0VGL2FqWUNLQ0FJS0FJWURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3lBQ1FRRnFJZ0lnREVjTkFBd0VBQXNBQ3dOQUFrQWdDaUFDUVNoc2FpSUlLQUlVUVFOSERRQWdDQ2dDQ0NBSlRRMEFJQWhCQURZQ0ZDQUFJQUFvQWloQmYybzJBaWdnQ0NnQ0dBMEFJQUFnQUNnQ0xFRi9hallDTEFzZ0FrRUJhaUlDSUF4SERRQUxEQUlMSUFBUUtDQUFRUUUyQWpSQkFDRURJQXRCQVdvaEN3d0NDeUFBS0FJa0lnSkIvLzhEUmcwRElBSWdDQ2dDR0NJTVNRMERJQUFvQWhnaUNrVU5BeUFBS0FJQUlRaEJBQ0VDQWtBRFFBSkFJQWdnQWtFb2JHb2lDU2dDRkVFRFJ3MEFJQWtvQWdnZ0RFY05BQ0FKUVFBMkFoUWdBQ0FBS0FJb1FYOXFJZ2cyQWlnZ0NTZ0NHQTBDSUFBZ0FDZ0NMRUYvYWpZQ0xBd0NDeUFDUVFGcUlnSWdDa2NOQUFzZ0FDZ0NLQ0VJQ3lBSUlBcFBEUU1nQUNnQ0NDSUNRUU0yQWhRZ0FpQUVOZ0lRSUFJZ0REWUNDQ0FDSUFNMkFnd2dBaUFBS0FJNFJUWUNHRUVCSVJBZ0FDQUlRUUZxTmdJb0lBQWdBQ2dDTEVFQmFqWUNMQXNnQzBFQmFpRUxEQUFBQ3dBTFFRQWhBaUFBS0FJb0lna2dBQ2dDR0NJTFNRMEJJQWxGQkVCQkFDRUpEQUlMSUFBb0FnQWhERUYvSVFFRFFDQU1JQUpCS0d4cUlnb29BaFJCZjJwQkFVMEVRQ0FLS0FJSUlnb2dDQ0FCUVg5R0lBb2dDRWh5SWdvYklRZ2dBaUFCSUFvYklRRUxJQUpCQVdvaUFpQUpSdzBBQ3lBQlFRQklEUUVnRENBQlFTaHNhaUlCUVFBMkFoUWdBQ0FKUVg5cUlnazJBaWdnQVNnQ0dBMEJJQUFnQUNnQ0xFRi9hallDTEF3QkN5QVFEUUVnQUNnQ0dDRUxJQUFvQWlnaENRc2dDU0FMVHcwQklBQW9BZ2dpQVNBTk5nSVlJQUZCQWpZQ0ZDQUJJQVEyQWhBZ0FTQUROZ0lJSUFFZ0F6WUNEQ0FBSUFsQkFXbzJBaWdnQUNBQUtBSXNRUUZxTmdJc0N3c2dBQ2dDQ0NJQklBYzJBaUFnQVNBR05nSWNJQUVnQlRZQ0pBSkFJQUFvQWpoRkJFQWdBQ2dDTENJSklBQW9BaHdpQTAwTkFTQUFLQUlBSVFRRFFFSC8vLy8vQnlFRlFRQWhCa0VBSVFJRFFDQUVJQUpCS0d4cUlnRW9BaGdFUUNBQklBWWdBU2dDRUNJQklBVklJZ2NiSVFZZ0FTQUZJQWNiSVFVTElBSkJBV29pQWlBRFRRMEFDd0pBSUFaRkRRQWdBQ2dDRENBQUtBSVFJZ0pCQkhScUlnRWdCaWdDQURZQ0FDQUJJQVlvQWlRMkFnd2dBU0FHS0FJY05nSUVJQUVnQmlnQ0lEWUNDQ0FBSUFKQkFXbzJBaEFnQmtFQU5nSVlJQVlvQWhRTkFDQUFJQWxCZjJvaUNUWUNMQXNnQ1NBRFN3MEFDd3dCQ3lBQktBSUFJUUlnQUNnQ0RDQUFLQUlRSWdOQkJIUnFJZ0VnQlRZQ0RDQUJJQUkyQWdBZ0FTQUhOZ0lJSUFFZ0JqWUNCQ0FBSUFOQkFXbzJBaEFnQUNnQ0hDRURDeUFBS0FJQUlBTkJBV29RSndzTDFBc0NBbjhCZmlNQVFaQUJheUlFSkFBZ0JFRUFOZ0lNQWtBQ1FBSkFJQUFvQXBBYVJRMEFJQUFvQXBRYUlBRkhEUUFnQkNBQVFhUWFhaWtDQURjREdDQUFLUUtjR2lFR0lBUkJBRFlDR0NBRUlBWTNBeEFnQkVFQU5nSWdJQVFnQmo0Q0ZDQURJQUFvQXBnYU5nSUFEQUVMUVFNaEJTQUJJQUlnQkVFUWFpQURFR01OQVNBQUlBUXBBeEEzQXB3YUlBQkJyQnBxSUFRb0FpQTJBZ0FnQUVHa0dtb2dCQ2tER0RjQ0FDQURLQUlBSVFJZ0FDQUJOZ0tVR2lBQUlBSTJBcGdhQzBFQUlRVWdBRUVBTmdLUUdpQUVRUkJxSUFSQmlBRnFFRThFUUVFRElRVU1BUXNnQkNnQ2lBRkJmMnBCQzBzTkFDQUVRUkJxSUFSQmlBRnFJQUFnQkVFTWFoQXlJZ0VFUUVFRUlRVWdBVUh3L3dOR0RRRkJBeUVGREFFTEFrQWdCQ2dDREFSQUFrQWdBQ2dDb0FsRkRRQWdBQ2dDRUVVTkFFRURJUVVnQUNnQ3RCb05Bd0pBSUFBb0FxUUpSUVJBSUFCQnhBbHFJZ0lpQVNBQktBSUFJQUVvQWh4QktHeHFJZ0UyQWdnZ0FDQUJLQUlBTmdLNENpQUNFQ1lnQUNBQVFiZ0tha0VBRUNVTUFRc2dBQ0FBUWJnS2FpQUFRZHdLYWlnQ0FCQWxDeUFEUVFBMkFnQWdBRUVBTmdLY0NTQUFRUUUyQXBBYURBSUxJQUJCQURZQ25Ba2dBRUVBTmdLa0NRc2dCQ2dDaUFGQmYyb2lBVUVIU3cwQkFrQUNRQUpBSUFGQkFXc09Cd1FFQkFJRUFBRUNDeUFFUVJCcUlBUkJLR29RUXdSQUlBUW9BbEFRQkNBRVFRQTJBbEFnQkNnQ2ZCQUVJQVJCQURZQ2ZFRURJUVVNQkFzZ0FDQUVRU2hxRURjTUF3c2dCRUVRYWlBRVFTaHFFRXdFUUNBRUtBSThFQVFnQkVFQU5nSThJQVFvQWtBUUJDQUVRUUEyQWtBZ0JDZ0NSQkFFSUFSQkFEWUNSQ0FFS0FKVUVBUWdCRUVBTmdKVVFRTWhCUXdEQ3lBQUlBUkJLR29RTmd3Q0N5QUFLQUtjQ1EwQklBQkJBVFlDb0FrQ1FDQUFLQUtrQ1EwQUlBQkNBRGNDdEFrZ0JFRVFhaUFFUVNocUVDQWFJQUFvQWdnaEFTQUFJQVFvQWlnZ0JDZ0NpQUZCQlVZUU5TSUNCRUFnQUVLQWdvQ0FnQVEzQWdRZ0FFRUFOZ0swR2lBQVFnQTNBZ3hCQlVFRUlBSkIvLzhEUmhzaEJRd0RDeUFCSUFBb0FnaEdEUUFnQUNnQ0VDRUJJQVJCQVRZQ0NDQUFLQUlBSWdKQkgwMEVRQ0FBSUFKQkFuUnFLQUlVSVFVTElBTkJBRFlDQUNBQVFRRTJBcEFhQWtBQ1FBSkFJQVFvQW9nQlFRVkhEUUFnQkVFSWFpQUVRUkJxSUFFZ0FDZ0NEQkE0SUFRb0FnaHlEUUFnQlVVTkFDQUFRZndKYWlnQ0FBMEFJQVVvQWpRZ0FTZ0NORWNOQUNBRktBSTRJQUVvQWpoSERRQWdCU2dDV0NBQktBSllSZzBCQ3lBQVFZQUtha0VBTmdJQURBRUxJQUJCeEFscUVGa0xJQUFnQUNnQ0NEWUNBRUVDSVFVTUFnc2dBQ2dDdEJvRVFFRURJUVVNQWdzZ0JFRVFhaUFBUWJRU2FpSUNJQUFvQWhBZ0FDZ0NEQ0FFUVlnQmFoQStCRUJCQXlFRkRBSUxJQUFvQXFRSlJRUkFBa0FnQkNnQ2lBRkJCVVlOQUNBQVFjUUphaUFBUWNBU2FpZ0NBQ0FFS0FLTUFVRUFSeUFBS0FJUUtBSXdFRnBGRFFCQkF5RUZEQU1MSUFCQnhBbHFJZ0VnQVNnQ0FDQUJLQUljUVNoc2FpSUJOZ0lJSUFBZ0FTZ0NBRFlDdUFvTElBQkIyQXBxSUFKQjNBY1FGU0VCSUFCQkFUWUNwQWtnQUNBRUtRT0lBVGNDMEFvZ0FDZ0NsQWtnQUNnQ0RDQUFRWmdMYWlnQ0FDQUFLQUlRSWdJb0FqUWdBaWdDT0JBL0lBQkJ4QWxxSWdJUUppQUNJQUJCbkF0cUlBQkI1QXBxS0FJQUlBQkJoQXRxS0FJQUVGOEVRRUVESVFVTUFnc2dCRUVRYWlBQUlBQkJ1QXBxSUFFUVFRUkFJQUFnQUNnQzJBb1FRRUVESVFVTUFnc2dBQkF6UlEwQklBQkJBVFlDbkFrTElBQkJ1QXBxSWdFZ0FDZ0N2QWtRU1NBQUVEUWdBRUdFQ21vZ0FDZ0NFQ0FBUWRnS2FpQUFRZEFLYWhCTklRSUNRQ0FBS0FLa0NVVU5BQ0FBUWNRSmFpRURJQUJCMUFwcUtBSUFCRUFnQXlBQVFld01haUFCSUFCQjVBcHFLQUlBSUFJZ0FDZ0MwQXBCQlVZZ0FDZ0N1QWtnQUNnQ3RBa1FLUXdCQ3lBRFFRQWdBU0FBUWVRS2FpZ0NBQ0FDSUFBb0F0QUtRUVZHSUFBb0FyZ0pJQUFvQXJRSkVDa0xJQUJDQURjQ29BbEJBU0VGQ3lBRVFaQUJhaVFBSUFVTHFBd0JDMzhDUUNBQlFRUlBCRUJCQUNBRGF5SU5RUUYwSVFvQ1FDQUFJQU5ySWdVdEFBQWlCaUFBTFFBQUlnaHJJZ0VnQVVFZmRTSUJhaUFCY3lBQ0tBSUVJZ0ZQRFFBZ0FDQUthaTBBQUNJSElBWnJJZ1FnQkVFZmRTSUVhaUFFY3lBQ0tBSUlJZ3hQRFFBZ0FDQURhaTBBQUNJRUlBaHJJZ3NnQzBFZmRTSUxhaUFMY3lBTVR3MEFJQVVnQkNBR2FpQUhRUUYwYWtFQ2FrRUNkam9BQUNBQUlBZ2dCRUVCZEdvZ0IycEJBbXBCQW5ZNkFBQWdBaWdDQkNFQkN3SkFJQUJCQVdvaUJpQU5haUlNTFFBQUlnZ2dBQzBBQVNJSGF5SUVJQVJCSDNVaUJHb2dCSE1nQVU4TkFDQUdJQXBxTFFBQUlnUWdDR3NpQlNBRlFSOTFJZ1ZxSUFWeklBSW9BZ2dpQzA4TkFDQURJQVpxTFFBQUlnVWdCMnNpQ1NBSlFSOTFJZ2xxSUFseklBdFBEUUFnRENBRklBaHFJQVJCQVhScVFRSnFRUUoyT2dBQUlBWWdCeUFGUVFGMGFpQUVha0VDYWtFQ2Rqb0FBQ0FDS0FJRUlRRUxBa0FnQUVFQ2FpSUdJQTFxSWd3dEFBQWlDQ0FBTFFBQ0lnZHJJZ1FnQkVFZmRTSUVhaUFFY3lBQlR3MEFJQVlnQ21vdEFBQWlCQ0FJYXlJRklBVkJIM1VpQldvZ0JYTWdBaWdDQ0NJTFR3MEFJQU1nQm1vdEFBQWlCU0FIYXlJSklBbEJIM1VpQ1dvZ0NYTWdDMDhOQUNBTUlBVWdDR29nQkVFQmRHcEJBbXBCQW5ZNkFBQWdCaUFISUFWQkFYUnFJQVJxUVFKcVFRSjJPZ0FBSUFJb0FnUWhBUXNDUUNBQVFRTnFJZ1lnRFdvaURDMEFBQ0lJSUFBdEFBTWlCMnNpQkNBRVFSOTFJZ1JxSUFSeklBRlBEUUFnQmlBS2FpMEFBQ0lFSUFocklnVWdCVUVmZFNJRmFpQUZjeUFDS0FJSUlndFBEUUFnQXlBR2FpMEFBQ0lGSUFkcklna2dDVUVmZFNJSmFpQUpjeUFMVHcwQUlBd2dCU0FJYWlBRVFRRjBha0VDYWtFQ2Rqb0FBQ0FHSUFjZ0JVRUJkR29nQkdwQkFtcEJBblk2QUFBZ0FpZ0NCQ0VCQ3dKQUlBQkJCR29pQmlBTmFpSU1MUUFBSWdnZ0FDMEFCQ0lIYXlJRUlBUkJIM1VpQkdvZ0JITWdBVThOQUNBR0lBcHFMUUFBSWdRZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6SUFJb0FnZ2lDMDhOQUNBRElBWnFMUUFBSWdVZ0Iyc2lDU0FKUVI5MUlnbHFJQWx6SUF0UERRQWdEQ0FGSUFocUlBUkJBWFJxUVFKcVFRSjJPZ0FBSUFZZ0J5QUZRUUYwYWlBRWFrRUNha0VDZGpvQUFDQUNLQUlFSVFFTEFrQWdBRUVGYWlJR0lBMXFJZ3d0QUFBaUNDQUFMUUFGSWdkcklnUWdCRUVmZFNJRWFpQUVjeUFCVHcwQUlBWWdDbW90QUFBaUJDQUlheUlGSUFWQkgzVWlCV29nQlhNZ0FpZ0NDQ0lMVHcwQUlBTWdCbW90QUFBaUJTQUhheUlKSUFsQkgzVWlDV29nQ1hNZ0MwOE5BQ0FNSUFVZ0NHb2dCRUVCZEdwQkFtcEJBblk2QUFBZ0JpQUhJQVZCQVhScUlBUnFRUUpxUVFKMk9nQUFJQUlvQWdRaEFRc0NRQ0FBUVFacUlnWWdEV29pREMwQUFDSUlJQUF0QUFZaUIyc2lCQ0FFUVI5MUlnUnFJQVJ6SUFGUERRQWdCaUFLYWkwQUFDSUVJQWhySWdVZ0JVRWZkU0lGYWlBRmN5QUNLQUlJSWd0UERRQWdBeUFHYWkwQUFDSUZJQWRySWdrZ0NVRWZkU0lKYWlBSmN5QUxUdzBBSUF3Z0JTQUlhaUFFUVFGMGFrRUNha0VDZGpvQUFDQUdJQWNnQlVFQmRHb2dCR3BCQW1wQkFuWTZBQUFnQWlnQ0JDRUJDeUFOSUFCQkIyb2lEV29pQ0MwQUFDSUdJQUF0QUFjaUFHc2lCeUFIUVI5MUlnZHFJQWR6SUFGUERRRWdDaUFOYWkwQUFDSUJJQVpySWdvZ0NrRWZkU0lLYWlBS2N5QUNLQUlJSWdwUERRRWdBeUFOYWkwQUFDSUNJQUJySWdNZ0EwRWZkU0lEYWlBRGN5QUtUdzBCSUFnZ0FpQUdhaUFCUVFGMGFrRUNha0VDZGpvQUFDQU5JQUFnQWtFQmRHb2dBV3BCQW1wQkFuWTZBQUFQQzBFQUlBTnJJZ2RCQVhRaEJDQUJJQUlvQWdCcVFYOXFMUUFBSWdGQkFXb2hCaUFCUVg5eklRaEJDQ0VCQTBBQ1FDQUFJQWRxSWdVdEFBQWlDaUFBTFFBQUlnMXJJZ3dnREVFZmRTSU1haUFNY3lBQ0tBSUVUdzBBSUFBZ0JHb3RBQUFpRENBS2F5SUxJQXRCSDNVaUMyb2dDM01nQWlnQ0NDSUxUdzBBSUFBZ0Eyb3RBQUFpQ1NBTmF5SU9JQTVCSDNVaURtb2dEbk1nQzA4TkFDQUZJQW9nQ0NBR0lBMGdDbXRCQW5RZ0NXc2dER3BCQkdwQkEzVWlDaUFLSUFaS0d5QUtJQWhJR3lJS2FrR3dMbW90QUFBNkFBQWdBQ0FOSUFwclFiQXVhaTBBQURvQUFBc2dBRUVCYWlFQUlBRkJmMm9pQVEwQUN3c0w2Z2dCQW44Z0FVRUFRYmdIRUFjaEFrRUJJUUVDUUFKQUlBQkJBUkFESWdOQmYwWU5BQ0FDSUFOQkFVWTJBZ0FDUUNBRFFRRkhEUUFnQUVFSUVBTWlBMEYvUmcwQklBSWdBellDQkNBRFFmOEJSdzBBSUFCQkVCQURJZ05CZjBZTkFTQUNJQU0yQWdnZ0FFRVFFQU1pQTBGL1JnMEJJQUlnQXpZQ0RBc2dBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDRUNBRFFRRkdCRUFnQUVFQkVBTWlBMEYvUmcwQklBSWdBMEVCUmpZQ0ZBc2dBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDR0FKQUFrQWdBMEVCUmdSQUlBQkJBeEFESWdOQmYwWU5BeUFDSUFNMkFod2dBRUVCRUFNaUEwRi9SZzBESUFJZ0EwRUJSallDSUNBQVFRRVFBeUlEUVg5R0RRTWdBaUFEUVFGR05nSWtJQU5CQVVjTkFTQUFRUWdRQXlJRFFYOUdEUU1nQWlBRE5nSW9JQUJCQ0JBRElnTkJmMFlOQXlBQ0lBTTJBaXdnQUVFSUVBTWlBMEYvUncwQ0RBTUxJQUpCQlRZQ0hBc2dBa0tDZ0lDQUlEY0NLRUVDSVFNTElBSWdBellDTUNBQVFRRVFBeUlEUVg5R0RRQWdBaUFEUVFGR05nSTBBa0FnQTBFQlJ3MEFJQUFnQWtFNGFoQUNJZ0VOQVNBQ0tBSTRRUVZMRFFJZ0FDQUNRVHhxRUFJaUFRMEJJQUlvQWp4QkJVME5BQXdDQzBFQklRRWdBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDUUNBRFFRRkdCRUFnQUJBUElRRWdBRUVnRUFzaEF5QUJSUTBDSUFOQmYwWU5BaUFDSUFFMkFrUWdBQkFQSVFFZ0FFRWdFQXNoQXlBQlJRMENJQU5CZjBZTkFpQUNJQUUyQWtoQkFTRUJJQUJCQVJBRElnTkJmMFlOQVNBQ0lBTkJBVVkyQWt3TElBQkJBUkFESWdOQmYwWU5BQ0FDSUFOQkFVWTJBbEFDUUNBRFFRRkdCRUFnQUNBQ1FkUUFhaEFjSWdGRkRRRU1BZ3NnQWtFQk5nSlVJQUpDbUlDQWdJQUROd0xvQXlBQ1FwaUFnSUNBQXpjQzRBTWdBa0dCa0txSkFUWUM0QUVnQWtHQmtLcUpBVFlDWUF0QkFTRUJJQUJCQVJBRElnTkJmMFlOQUNBQ0lBTkJBVVkyQXZBREFrQWdBMEVCUmdSQUlBQWdBa0gwQTJvUUhDSUJSUTBCREFJTElBSkJBVFlDOUFNZ0FrS1lnSUNBZ0FNM0FvZ0hJQUpDbUlDQWdJQUROd0tBQnlBQ1FZRzR1UElBTmdLQUJTQUNRWUc0dVBJQU5nS0FCQXNDUUNBQ0tBSlFSUVJBSUFJb0F2QURSUTBCQzBFQklRRWdBRUVCRUFNaUEwRi9SZzBCSUFJZ0EwRUJSallDa0FjTFFRRWhBU0FBUVFFUUF5SURRWDlHRFFBZ0FpQURRUUZHTmdLVUJ5QUFRUUVRQXlJRFFYOUdEUUFnQWlBRFFRRkdOZ0tZQndKQUlBTkJBVVlFUUNBQVFRRVFBeUlEUVg5R0RRSWdBaUFEUVFGR05nS2NCeUFBSUFKQm9BZHFFQUlpQVEwQ0lBSW9BcUFIUVJCTERRTWdBQ0FDUWFRSGFoQUNJZ0VOQWlBQ0tBS2tCMEVRU3cwRElBQWdBa0dvQjJvUUFpSUJEUUlnQWlnQ3FBZEJFRXNOQXlBQUlBSkJyQWRxRUFJaUFRMENRUUVoQVNBQ0tBS3NCMEVRU3cwQ0lBQWdBa0d3QjJvUUFpSUJEUUlnQUNBQ1FiUUhhaEFDSWdGRkRRRU1BZ3NnQWtFUU5nSzBCeUFDUXBDQWdJQ0FBamNDckFjZ0FrS0JnSUNBZ0FJM0FxUUhJQUpDZ1lDQWdDQTNBcHdIQzBFQUlRRUxJQUVQQzBFQkMwMEJBbjhqQUVFUWF5SURKQUJCQVNFRUFrQWdBQ0FEUVF4cUVBSU5BQ0FES0FJTUlnQkJMMHNOQUNBQlFkQS9RWURBQUNBQ0d5QUFhaTBBQURZQ0FFRUFJUVFMSUFOQkVHb2tBQ0FFQ3o0QkFuOENRQ0FBS0FJTVFRTjBJQUFvQWhCcklnRkZCRUFNQVF0QkFTRUNJQUZCQ0VzTkFFRUJJQUZCZjJwMElBQVFEMEVnSUFGcmRrY1BDeUFDQ3pJQkFuOENRRUdBZ0lEQUFDSUJJQUJ4RFFBRFFDQUNRUUZxSVFJZ0FVRUJkaUlCUlEwQklBQWdBWEZGRFFBTEN5QUNDNG9DQVFkL0lBRkJvRDFxTFFBQVFReHNRZEE4YWlnQ0FDRUNRUUVoQXlBQlFRWlBCRUJCQUNFRElBSWdBVUdRUEdvdEFBQkJmMnAwSVFJTElBQWdBQ2dDQUNJQklBQW9BZ2dpQkdzaUJTQUFLQUlFSWdZZ0FDZ0NEQ0lIYXlJSWF5QUNiQ0FEZFRZQ0RDQUFJQVVnQ0dvZ0Ftd2dBM1UyQWdnZ0FDQUJJQVJxSWdFZ0JpQUhhaUlFYXlBQ2JDQURkVFlDQkNBQUlBRWdCR29nQW13Z0EzVTJBZ0FnQUNBQUtBSWNJZ0VnQUNnQ0ZDSUVhaUlGSUFBb0FoZ2lCaUFBS0FJUUlnZHFJZ2hxSUFKc0lBTjFOZ0lRSUFBZ0JDQUJheUlCSUFjZ0Jtc2lCR29nQW13Z0EzVTJBaGdnQUNBSUlBVnJJQUpzSUFOMU5nSVVJQUFnQkNBQmF5QUNiQ0FEZFRZQ0hBdlBDQUVVZnlBQUlBQW9BaXdpQWlBQUtBSU1JZ1pxSWdVZ0FDZ0NOQ0lFSUFBb0FpQWlFR29pQ21zaUVUWUNMQ0FBS0FJb0lRTWdBQ0FHSUFKcklnY2dFQ0FFYXlJRWF5SUdOZ0lvSUFBb0FpUWhBaUFBSUFRZ0Iyb2lCRFlDSkNBQUlBVWdDbW9pQlRZQ0lDQUFJQUFvQWh3aUNpQUFLQUlJSWdkcUlnZ2dBQ2dDTUNJTUlBQW9BaEFpQ1dvaUMyc2lFRFlDSENBQUtBSVlJUThnQUNBSElBcHJJZ2NnQ1NBTWF5SU1heUlLTmdJWUlBQW9BaFFoQ1NBQUlBY2dER29pQnpZQ0ZDQUFJQWdnQzJvaUNEWUNFQ0FBSUFrZ0FDZ0NBQ0lMYWlJU0lBOGdBQ2dDQkNJTmFpSU9heUlNTmdJTUlBQWdDeUFKYXlJSklBMGdEMnNpQzJzaUR6WUNDQ0FBSUFrZ0Myb2lDVFlDQkNBQUlBNGdFbW9pQ3pZQ0FDQUFJQUlnQUNnQ09DSU5haUlUSUFNZ0FDZ0NQQ0lPYWlJVWF5SVNOZ0k4SUFBZ0FpQU5heUlDSUFNZ0Rtc2lBMnNpRFRZQ09DQUFJQUlnQTJvaURqWUNOQ0FBSUJNZ0ZHb2lFellDTUNBQlFaQThhaTBBQUNFQ0lBRkJvRDFxTFFBQVFReHNRZEE4YWlnQ0FDRURJQUZCREU4RVFDQUFJQU1nQWtGK2FuUWlBU0FGSUF0cUlnTWdDQ0FUYWlJQ2EydzJBakFnQUNBTElBVnJJZ1VnQ0NBVGF5SUlheUFCYkRZQ0lDQUFJQVVnQ0dvZ0FXdzJBaEFnQUNBQ0lBTnFJQUZzTmdJQUlBQWdCQ0FKYWlJRElBY2dEbW9pQW1zZ0FXdzJBalFnQUNBSklBUnJJZ1FnQnlBT2F5SUZheUFCYkRZQ0pDQUFJQVFnQldvZ0FXdzJBaFFnQUNBQ0lBTnFJQUZzTmdJRUlBQWdCaUFQYWlJRElBb2dEV29pQW1zZ0FXdzJBamdnQUNBUElBWnJJZ1lnQ2lBTmF5SUVheUFCYkRZQ0tDQUFJQVFnQm1vZ0FXdzJBaGdnQUNBQ0lBTnFJQUZzTmdJSUlBQWdEQ0FSYXlJRElCQWdFbXNpQW1zZ0FXdzJBaXdnQUNBQ0lBTnFJQUZzTmdJY0lBQWdFQ0FTYWlJRElBd2dFV29pQW1vZ0FXdzJBZ3dnQUNBQ0lBTnJJQUZzTmdJOER3c2dBRUVCUVFJZ0FVRjZha0VHU1JzaUFTQUZJQXRxSWhRZ0NDQVRhaUlWYXlBRGJHcEJBaUFDYXlJQ2RUWUNNQ0FBSUFzZ0JXc2lCU0FJSUJOcklnaHJJQU5zSUFGcUlBSjFOZ0lnSUFBZ0JTQUlhaUFEYkNBQmFpQUNkVFlDRUNBQUlCUWdGV29nQTJ3Z0FXb2dBblUyQWdBZ0FDQUVJQWxxSWdVZ0J5QU9haUlJYXlBRGJDQUJhaUFDZFRZQ05DQUFJQWtnQkdzaUJDQUhJQTVySWdkcklBTnNJQUZxSUFKMU5nSWtJQUFnQkNBSGFpQURiQ0FCYWlBQ2RUWUNGQ0FBSUFVZ0NHb2dBMndnQVdvZ0FuVTJBZ1FnQUNBR0lBOXFJZ1FnQ2lBTmFpSUZheUFEYkNBQmFpQUNkVFlDT0NBQUlBOGdCbXNpQmlBS0lBMXJJZ3BySUFOc0lBRnFJQUoxTmdJb0lBQWdCaUFLYWlBRGJDQUJhaUFDZFRZQ0dDQUFJQVFnQldvZ0Eyd2dBV29nQW5VMkFnZ2dBQ0FNSUJGcklnWWdFQ0FTYXlJRWF5QURiQ0FCYWlBQ2RUWUNMQ0FBSUFRZ0Jtb2dBMndnQVdvZ0FuVTJBaHdnQUNBUUlCSnFJZ1lnRENBUmFpSVJhaUFEYkNBQmFpQUNkVFlDRENBQUlCRWdCbXNnQTJ3Z0FXb2dBblUyQWp3THZRVUJCbjhqQUVFZ2F5SUZKQUFnQTBFQU5nSUFBa0FnQVNnQ0FDSUdRUkpMRFFCQkFTQUdkQ0lHUWNEZkgzRkZCRUFnQmtFaWNVVU5BU0FDUWJRS2FpZ0NBQVJBSUFOQkFUWUNBQ0FDUVFBMkFyUUtDeUFBSUFWQkhHb1FJQ0lFRFFGQjhQOERJUVFnQWlBRktBSWNRUUowYWlnQ2xBRWlDRVVOQVNBQ0lBZ29BZ1FpQmtFQ2RHb29BaFFpQjBVTkFRSkFJQUlvQWdnaUNVRWdSZzBBSUFZZ0NVWU5BQ0FCS0FJQVFRVkhEUUlMQWtBZ0FrR1lDbW9vQWdBaUJDQUJLQUlFSWdaR0RRQWdCRUVBSUFZYkRRQWdBMEVCTmdJQUN5QUJLQUlBSVFRQ1FBSkFJQUlvQXBRS1FRVkdCRUFnQkVFRlJ3MEJEQUlMSUFSQkJVY05BUXNnQTBFQk5nSUFDMEVCSVFRZ0FDQUhLQUlNSUFWQkdHb1FQUTBCSUFVb0FoZ2lCaUFDUVp3S2FpZ0NBRWNFUUNBQ0lBWTJBcHdLSUFOQkFUWUNBQXNnQVNnQ0FFRUZSZ1JBSUFBZ0J5Z0NEQ0FGUVJScUVEd05BZ0pBSUFJb0FwUUtRUVZIQkVBZ0JTZ0NGQ0VFREFFTElBSkJvQXBxS0FJQUlnUWdCU2dDRkNJR1JnMEFJQU5CQVRZQ0FDQUdJUVFMSUFKQm9BcHFJQVEyQWdBTEFrQWdCeWdDRUNJRVFRRkxEUUFnQkVFQmF3UkFRUUVoQkNBQUlBY2dBU2dDQUNBRlFRaHFFRHNOQXlBRktBSUlJZ1FnQWtHa0Ntb29BZ0JIQkVBZ0FpQUVOZ0trQ2lBRFFRRTJBZ0FMSUFnb0FnaEZEUUVnQUNBSElBRW9BZ0FnQlVFUWFoQTZJZ1FOQXlBRktBSVFJZ0FnQWtHb0Ntb29BZ0JHRFFFZ0FpQUFOZ0tvQ2lBRFFRRTJBZ0FNQVFzZ0J5Z0NHQTBBSUFBZ0J5QUJLQUlBSUFnb0FnZ2dCVUVJYWhBNUlnUU5BaUFGS0FJSUlnQWdBa0dzQ21vb0FnQkhCRUFnQWlBQU5nS3NDaUFEUVFFMkFnQUxJQWdvQWdoRkRRQWdCU2dDRENJQUlBSkJzQXBxS0FJQVJnMEFJQUlnQURZQ3NBb2dBMEVCTmdJQUN5QUNJQUVwQWdBM0FwUUtRUUFoQkF3QkN5QURRUUUyQWdBTElBVkJJR29rQUNBRUMzOEJBMzhDUUFKQUFrQWdBRUg4Q21vb0FnQUVRQ0FBS0FLWUNTSUREUUZCQVE4TFFRRWhBU0FBUWF3SmFpZ0NBQ0FBS0FLWUNVY05BUXdDQ3lBQUtBSzhDU0VCUVFBaEFBTkFJQUlnQVNBQVFkZ0JiR29vQXNRQlFRQkhhaUVDSUFCQkFXb2lBQ0FEUncwQUMwRUJJUUVnQWlBRFJnMEJDMEVBSVFFTElBRUxTZ0VEZnlBQVFnQTNBcWdKSUFBb0FwZ0pJZ0VFUUNBQUtBSzhDU0VDUVFBaEFBTkFJQUlnQUVIWUFXeHFJZ05CQURZQ3hBRWdBMEVBTmdJRUlBQkJBV29pQUNBQlJ3MEFDd3NMZ3dZQkRIOUJBU0VHQWtBZ0FDQUJRUUowYWlnQ2xBRWlCRVVOQUNBQUlBUW9BZ1FpQ1VFQ2RHb2lDa0VVYWlnQ0FDSURSUTBBQWtBZ0JDZ0NEQ0lGUVFKSkRRQWdBeWdDTkNJSElBTW9BamhzSVFnQ1FDQUVLQUlRSWdOQkFrc05BQUpBQWtBQ1FDQURRUUZyRGdJREFBRUxJQVZCZjJvaEN5QUVLQUljSVF3Z0JDZ0NHQ0VOUVFBaEF3d0JDeUFFS0FJVUlRZEJBQ0VEQTBBZ0J5QURRUUowYWlnQ0FDQUlUUVJBSUFVZ0EwRUJhaUlEUncwQkRBUUxDMEVCRHdzRFFDQU5JQU5CQW5RaUJXb29BZ0FpRGlBRklBeHFLQUlBSWdWTERRTWdCU0FJVHcwRElBNGdCM0FnQlNBSGNFMEVRQ0FEUVFGcUlnTWdDMFlOQXd3QkN3dEJBUThMSUFOQmZXcEJBazBFUUNBRUtBSWtJQWhORFFFTUFnc2dBMEVHUncwQUlBUW9BaWdnQ0VrTkFRc0NRQ0FBS0FJRUlnTkJnQUpHQkVBZ0FDQUVOZ0lNSUFBZ0FUWUNCQ0FBSUFrMkFnZ2dBQ0FLS0FJVUlnRTJBaEFnQVNnQ05DRUNJQUVvQWpnaEFTQUFRUUUyQXJRYUlBQkJ3QXBxSUFFMkFnQWdBRUc4Q21vZ0FqWUNBQ0FBSUFFZ0FtdzJBcGdKREFFTElBQW9BclFhQkVBZ0FFRUFOZ0swR2lBQUtBSzhDUkFFSUFCQkFEWUN2QWtnQUNnQ2xBa1FCQ0FBSUFBb0FwZ0pJZ0ZCMkFGc0lnUVFDaUlDTmdLOENTQUFJQUZCQW5RUUNpSUROZ0tVQ1VILy93TWhCaUFDUlEwQ0lBTkZEUUlnQWtFQUlBUVFCeUFBS0FJUUtBSTBJQUVRVGlBQUtBSVFJUUZCQVNFQ0FrQWdBQ2dDd0FrTkFDQUJLQUlRUVFKR0RRQUNRQ0FCS0FKUVJRMEFJQUVvQWxRaUJDZ0NtQWRGRFFBZ0JDZ0NzQWRGRFFFTFFRQWhBZ3NnQUVIRUNXb2dBU2dDT0NBQktBSTBiQ0FCS0FKWUlBRW9BaXdnQVNnQ0RDQUNFRndpQmtVTkFRd0NDeUFCSUFOR0RRQWdBQ2dDQ0NBSlJ3UkFJQUpGRFFJZ0FDQUVOZ0lNSUFBZ0FUWUNCQ0FBSUFrMkFnZ2dBQ0FLS0FJVUlnRTJBaEFnQVNnQ05DRUNJQUVvQWpnaEFTQUFRUUUyQXJRYUlBQkJ3QXBxSUFFMkFnQWdBRUc4Q21vZ0FqWUNBQ0FBSUFFZ0FtdzJBcGdKREFFTElBQWdCRFlDRENBQUlBRTJBZ1FMUVFBaEJnc2dCZ3UyQVFFRGZ3SkFJQUFnQVNnQ0FDSURRUUowYWlJQ0tBS1VBU0lFUlFSQUlBSkJ5QUFRQ2lJQU5nS1VBU0FBRFFFUEN3SkFJQU1nQUNnQ0JFY05BQ0FCS0FJRUlBQW9BZ2hHRFFBZ0FFR0JBallDQkFzZ0JDZ0NGQkFFSUFJb0FwUUJRUUEyQWhRZ0FpZ0NsQUVvQWhnUUJDQUNLQUtVQVVFQU5nSVlJQUlvQXBRQktBSWNFQVFnQWlnQ2xBRkJBRFlDSENBQ0tBS1VBU2dDTEJBRUlBSW9BcFFCUVFBMkFpd0xJQUlvQXBRQklBRkJ5QUFRRlJvTDFnRUJBMzhDUUNBQUlBRW9BZ2dpQTBFQ2RHb2lBaWdDRkNJRVJRUkFJQUpCM0FBUUNpSUFOZ0lVSUFBTkFROExJQUFvQWdnZ0EwWUVRQ0FCSUFBb0FoQVFRZ1JBSUFJb0FoUW9BaWdRQkNBQ0tBSVVRUUEyQWlnZ0FpZ0NGQ2dDVkJBRUlBSW9BaFJCQURZQ1ZDQUFRUUEyQWhBZ0FFR0JBallDQkNBQVFpRTNBZ2dNQWdzZ0FTZ0NLQkFFSUFGQkFEWUNLQ0FCS0FKVUVBUWdBVUVBTmdKVUR3c2dCQ2dDS0JBRUlBSW9BaFJCQURZQ0tDQUNLQUlVS0FKVUVBUWdBaWdDRkVFQU5nSlVDeUFDS0FJVUlBRkIzQUFRRlJvTDBnSUJBMzhqQUVFZ2F5SUVKQUFnQkNBQktBSVFOZ0lRSUFRZ0FTa0NDRGNEQ0NBRUlBRXBBZ0EzQXdBQ1FDQUVJQVJCSEdvUUFpSUJEUUFnQkNBRVFSeHFFQUlpQVEwQUlBUWdCRUVjYWhBQ0lnRU5BQ0FDS0FJTUlRWkJBQ0VCQTBBZ0FTSUZRUUZxSVFFZ0JpQUZkZzBBQ3lBRUlBVkJmMm9RQTBGL1JnUkFRUUVoQVF3QkN5QUVJQVJCSEdvUUFpSUJEUUFDUUNBQ0tBSVFJZ0VFZnlBQkJTQUNLQUlVSVFaQkFDRUJBMEFnQVNJRlFRRnFJUUVnQmlBRmRnMEFDeUFFSUFWQmYyb1FBMEYvUmdSQVFRRWhBUXdEQ3lBREtBSUlCRUFnQkNBRVFSaHFFQVVpQVEwREN5QUNLQUlRQzBFQlJ3MEFJQUlvQWhnTkFDQUVJQVJCR0dvUUJTSUJEUUVnQXlnQ0NFVU5BQ0FFSUFSQkdHb1FCU0lCRFFFTElBTW9Ba1FFUUNBRUlBUkJIR29RQWlJQkRRRUxJQUFnQkVFQkVBTWlBRFlDQUNBQVFYOUdJUUVMSUFSQklHb2tBQ0FCQzhZQkFRSi9Jd0JCSUdzaUJTUUFJQVVnQUNnQ0VEWUNFQ0FGSUFBcEFnZzNBd2dnQlNBQUtRSUFOd01BQWtBZ0JTQUZRUnhxRUFJaUFBMEFJQVVnQlVFY2FoQUNJZ0FOQUNBRklBVkJIR29RQWlJQURRQWdBU2dDRENFR1FRQWhBQU5BSUFBaUFVRUJhaUVBSUFZZ0FYWU5BQXNnQlNBQlFYOXFFQU5CZjBZRVFFRUJJUUFNQVFzZ0FrRUZSZ1JBSUFVZ0JVRWNhaEFDSWdBTkFRc2dCU0FFRUFVaUFBMEFJQU1FUUNBRklBUkJCR29RQlNJQURRRUxRUUFoQUFzZ0JVRWdhaVFBSUFBTDRRRUJBMzhqQUVFZ2F5SUVKQUFnQkNBQUtBSVFOZ0lRSUFRZ0FDa0NDRGNEQ0NBRUlBQXBBZ0EzQXdBQ1FDQUVJQVJCSEdvUUFpSUFEUUFnQkNBRVFSeHFFQUlpQUEwQUlBUWdCRUVjYWhBQ0lnQU5BQ0FCS0FJTUlRWkJBQ0VBQTBBZ0FDSUZRUUZxSVFBZ0JpQUZkZzBBQ3lBRUlBVkJmMm9RQTBGL1JnUkFRUUVoQUF3QkN5QUNRUVZHQkVBZ0JDQUVRUnhxRUFJaUFBMEJDeUFCS0FJVUlRSkJBQ0VBQTBBZ0FDSUJRUUZxSVFBZ0FpQUJkZzBBQ3lBRUlBRkJmMm9RQTBGL1JnUkFRUUVoQUF3QkN5QUVJQU1RQlNFQUN5QUVRU0JxSkFBZ0FBdm1BUUVEZnlNQVFTQnJJZ1FrQUNBRUlBQW9BaEEyQWhBZ0JDQUFLUUlJTndNSUlBUWdBQ2tDQURjREFBSkFJQVFnQkVFY2FoQUNJZ0FOQUNBRUlBUkJIR29RQWlJQURRQWdCQ0FFUVJ4cUVBSWlBQTBBSUFFb0Fnd2hCa0VBSVFBRFFDQUFJZ1ZCQVdvaEFDQUdJQVYyRFFBTElBUWdCVUYvYWhBRFFYOUdCRUJCQVNFQURBRUxJQUpCQlVZRVFDQUVJQVJCSEdvUUFpSUFEUUVMSUFFb0FoUWhBa0VBSVFBRFFDQUFJZ0ZCQVdvaEFDQUNJQUYyRFFBTElBUWdBVUYvYWhBRElnQkJmMFlFUUVFQklRQU1BUXNnQXlBQU5nSUFRUUFoQUFzZ0JFRWdhaVFBSUFBTGtnRUJBbjhqQUVFZ2F5SURKQUFnQXlBQUtBSVFOZ0lRSUFNZ0FDa0NBRGNEQUNBRElBQXBBZ2czQXdnQ1FDQURJQU5CSEdvUUFpSUFEUUFnQXlBRFFSeHFFQUlpQUEwQUlBTWdBMEVjYWhBQ0lnQU5BRUVBSVFBRFFDQUFJZ1JCQVdvaEFDQUJJQVIyRFFBTElBTWdCRUYvYWhBRFFYOUdCRUJCQVNFQURBRUxJQU1nQWhBQ0lRQUxJQU5CSUdva0FDQUFDNWNCQVFKL0l3QkJJR3NpQXlRQUlBTWdBQ2dDRURZQ0VDQURJQUFwQWdnM0F3Z2dBeUFBS1FJQU53TUFBa0FnQXlBRFFSeHFFQUlpQUEwQUlBTWdBMEVjYWhBQ0lnQU5BQ0FESUFOQkhHb1FBaUlBRFFCQkFDRUFBMEFnQUNJRVFRRnFJUUFnQVNBRWRnMEFDeUFESUFSQmYyb1FBeUlBUVg5R0JFQkJBU0VBREFFTElBSWdBRFlDQUVFQUlRQUxJQU5CSUdva0FDQUFDNjhPQVFwL0l3QkJFR3NpQlNRQUlBRkJBRUhjQnhBSElRY2dBaWdDTkNFR0lBSW9BamdoQ0FKQUlBQWdCVUVFYWhBQ0lnRU5BQ0FISUFVb0FnUWlBVFlDQUNBQklBWWdDR3dpQzA4RVFFRUJJUUVNQVFzZ0FDQUZRUVJxRUFJaUFRMEFJQWNnQlNnQ0JDSUdOZ0lFSUFaQkIwc0VRRUVCSVFFTUFRdEJBU0VCQWtBQ1FDQUdRUUZyRGdjQ0FRSUNBQUlCQUFzZ0JDZ0NBRUVGUmdSQURBSUxJQUlvQWl3TkFBd0JDeUFBSUFWQkJHb1FBaUlCRFFBZ0J5QUZLQUlFSWdZMkFnaEJBU0VCSUFZZ0F5Z0NBRWNOQUNBQ0tBSU1JUWhCQUNFQkEwQWdBU0lHUVFGcUlRRWdDQ0FHZGcwQUMwRUJJUUVnQUNBR1FYOXFFQU1pQmtGL1JnMEFJQVpCQUNBRUtBSUFJZ2hCQlVZYkRRQWdCeUFHTmdJTUlBaEJCVVlFUUNBQUlBVkJCR29RQWlJQkRRRWdCeUFGS0FJRUlnWTJBaEJCQVNFQklBWkIvLzhEU3cwQkN3SkFJQUlvQWhBaUFRUi9JQUVGSUFJb0FoUWhDRUVBSVFFRFFDQUJJZ1pCQVdvaEFTQUlJQVoyRFFBTElBQWdCa0YvYWhBRElnRkJmMFlFUUVFQklRRU1Bd3NnQnlBQk5nSVVJQU1vQWdnRVFDQUFJQVVRQlNJQkRRTWdCeUFGS0FJQU5nSVlDeUFFS0FJQVFRVkdCRUJCQVNFQklBY29BaFFpQmlBQ0tBSVVRUUYyU3cwRElBWkJBQ0FIS0FJWUlnaEJIM1VnQ0hGclJ3MERDeUFDS0FJUUMwRUJSdzBBSUFJb0FoZ05BQ0FBSUFVUUJTSUJEUUVnQnlBRktBSUFOZ0ljSUFNb0FnZ0VRQ0FBSUFVUUJTSUJEUUlnQnlBRktBSUFOZ0lnQ3lBRUtBSUFRUVZIRFFCQkFTRUJJQWNvQWh3aUJpQUhLQUlnSUFZZ0FpZ0NJR3BxSWdnZ0JpQUlTQnNOQVFzZ0F5Z0NSQVJBSUFBZ0JVRUVhaEFDSWdFTkFTQUhJQVVvQWdRaUJqWUNKRUVCSVFFZ0JrSC9BRXNOQVFzQ1FDQUhLQUlFSWdGQkJVc05BQUpBSUFGQkFXc09CQUVCQVFFQUMwRUJJUUVnQUVFQkVBTWlCa0YvUmcwQklBY2dCallDS0FKQUlBWUVRQ0FBSUFWQkJHb1FBaUlCRFFOQkFTRUJJQVVvQWdRaUJrRVBTdzBESUFaQkFXb2hCZ3dCQ3lBREtBSXdJZ1pCRUVzTkFnc2dCeUFHTmdJc0lBY29BZ1FoQVFzQ1FDQUJRUVZMRFFBQ1FDQUJRUUZyRGdRQkFRRUJBQXNnQWlnQ0RDRUpJQWNvQWl3aENrRUJJUUVnQUVFQkVBTWlCa0YvUmcwQklBY2dCallDUkNBR1JRMEFRUUFoQVFOQUlBRWlCaUFLU3dSQVFRRWhBUXdEQ3lBQUlBVkJDR29RQWlJQkRRSWdCU2dDQ0NJQlFRTkxCRUJCQVNFQkRBTUxJQWNnQmtFTWJHb2lDQ0FCTmdKSUFrQWdBVUVCVFFSQUlBQWdCVUVNYWhBQ0lnRU5CQ0FGS0FJTUlnRWdDVThFUUVFQklRRU1CUXNnQ0NBQlFRRnFOZ0pNREFFTElBRkJBa2NOQUNBQUlBVkJER29RQWlJQkRRTWdDQ0FGS0FJTU5nSlFDeUFHUVFGcUlRRWdCU2dDQ0VFRFJ3MEFDMEVCSVFFZ0JrVU5BUXNDUUNBRUtBSUVSUTBBSUFRb0FnQWhCQ0FDS0FJc0lRbEJBU0VCSUFCQkFSQURJUUlnQkVFRlJnUkFJQUpCZjBZTkFpQUhJQUkyQXBRQ0lBQkJBUkFESWdKQmYwWU5BaUFISUFJMkFwZ0NJQWtOQVNBQ1JRMEJEQUlMSUFKQmYwWU5BU0FISUFJMkFwd0NJQUpGRFFBZ0NVRUJkRUVEYWlFT1FRQWhCa0VBSVFwQkFDRUVBMEFnQmlBT1JnUkFRUUVoQVF3REN5QUFJQVZCQ0dvUUFpSUJEUUlnQlNnQ0NDSUNRUVpMQkVCQkFTRUJEQU1MSUFjZ0JrRVViR29pQ0NBQ05nS2dBZ0ovSUFKQkFuSkJBMFlFUUNBQUlBVkJER29RQWlJQkRRUWdDQ0FGS0FJTVFRRnFOZ0trQWlBRktBSUlJUUlMSUFKQkFrWUxCRUFnQUNBRlFReHFFQUlpQVEwRElBZ2dCU2dDRERZQ3FBSWdCU2dDQ0NFQ0N3SkFJQUpCZldvaUFVRURTdzBBQWtBZ0FVRUJhdzRDQVFFQUN5QUFJQVZCREdvUUFpSUJEUU1nQ0NBRktBSU1OZ0tzQWlBRktBSUlJUUlMSUFKQkJFWUVRQ0FBSUFWQkRHb1FBaUlCRFFNZ0JTZ0NEQ0lCSUFsTEJFQkJBU0VCREFRTElBZ2dBVUYvYWtILy93TWdBUnMyQXJBQ0lBcEJBV29oQ2lBRktBSUlJUUlMSUFaQkFXb2hCaUFNSUFKQkJrWnFJUXdnQkNBQ1FRVkdhaUVFSUEwZ0FrRi9ha0VEU1dvaERTQUNEUUFMUVFFaEFTQUVJQXB5SUF4eVFRRkxEUUVnQkVVTkFDQU5EUUVMSUFBZ0JSQUZJZ0VOQUNBSElBVW9BZ0FpQVRZQ01DQUZJQUVnQXlnQ05Hb2lBallDQUVFQklRRWdBa0V6U3cwQUFrQWdBeWdDUEVVTkFDQUFJQVZCQkdvUUFpSUJEUUVnQnlBRktBSUVJZ0kyQWpSQkFTRUJJQUpCQWtzTkFTQUNRUUZHRFFBZ0FDQUZFQVVpQVEwQlFRRWhBU0FGS0FJQUlnSkJCbXBCREVzTkFTQUhJQUpCQVhRMkFqZ2dBQ0FGRUFVaUFRMEJRUUVoQVNBRktBSUFJZ0pCQm1wQkRFc05BU0FISUFKQkFYUTJBandMQWtBZ0F5Z0NERUVDU1EwQUlBTW9BaEJCZldwQkFrc05BRUVDUVFFZ0N5QUxJQU1vQWlRaUFXNGlBaUFCYkdzYklBSnFJUVJCQUNFQ0EwQWdCQ0FDSWdGQkFXb2lBbllOQUFzZ0JTQUFJQUlnQVNBRVFYOGdBWFJCZjNOeEd4QURJZ0EyQWdSQkFTRUJJQUJCZjBZTkFTQUhJQUEyQWtBZ0FDQUxJQU1vQWlRaUFHcEJmMm9nQUc1TERRRUxRUUFoQVFzZ0JVRVFhaVFBSUFFTHdRa0JEWDhnQXlBRWJDRUZJQUVvQWd3aUNVRUJSZ1JBSUFCQkFDQUZRUUowRUFjYUR3c0NRQUpBQWtBQ1FDQUJLQUlRSWdaQmZXcEJBazBFUUNBQktBSWtJQUpzSWdJZ0JTQUNJQVZKR3lFTElBWkJmbkZCQkVjTkFTQUZJQXRySUFzZ0FTZ0NJQnNoQndzQ1FBSkFBa0FnQmtFRlRRUkFJQVpCQVdzT0JRWUZCQU1DQVFzZ0JVVU5CaUFCS0FJc0lRSkJBQ0VCQTBBZ0FDQUJRUUowSWdOcUlBSWdBMm9vQWdBMkFnQWdBVUVCYWlJQklBVkhEUUFMREFZTEFrQWdDUVJBSUFFb0FoUWhBa0VBSVFZTUFRc2dCVVVOQmdOQURBQUFDd0FMQTBCQkFDRUVJQVlnQlU4TkJnTkFRUUFoQndKQUlBSWdCRUVDZEdvaUF5Z0NBQ0lCUlEwQUlBRWhCeUFGSUFaTkRRQkJBQ0VCUVFBZ0JTQUdheUlISUFjZ0JVc2JJUWdEUUNBQUlBRWdCbXBCQW5ScUlBUTJBZ0FnQVVFQmFpSUJJQU1vQWdBaUIwOE5BU0FCSUFoSERRQUxDeUFFUVFGcUlnUWdDVWxCQUNBR0lBZHFJZ1lnQlVrYkRRQUxJQVlnQlVrTkFBc01CUXNnQTBVTkJDQUVSUTBFUVFFZ0FTZ0NJQ0lKYXlFSVFRQWhCVUVBSVFJRFFFRUFJUUVnQlNFR0EwQWdBQ0FCSUFOc0lBSnFRUUowYWlBSklBZ2dCaUFIU1JzMkFnQWdCa0VCYWlFR0lBRkJBV29pQVNBRVJ3MEFDeUFFSUFWcUlRVWdBa0VCYWlJQ0lBTkhEUUFMREFRTElBVkZEUU5CQVNBQktBSWdJZ0pySVFOQkFDRUJBMEFnQUNBQlFRSjBhaUFDSUFNZ0FTQUhTUnMyQWdBZ0FVRUJhaUlCSUFWSERRQUxEQU1MSUFFb0FpQWhBaUFGQkVCQkFDRUJBMEFnQUNBQlFRSjBha0VCTmdJQUlBRkJBV29pQVNBRlJ3MEFDd3NnQzBVTkFpQURRWDlxSVE4Z0JFRi9haUVRSUFKQmYyb2hCa0VCSUFKQkFYUWlBV3NoQlNBQlFYOXFJUWtnQkNBQ2EwRUJkaUlLSVF3Z0F5QUNhMEVCZGlJTklRUWdDaUVJSUEwaEFVRUFJUWNEUUNBQUlBTWdDR3dnQVdwQkFuUnFJZzRvQWdBaUVVRUJSZ1JBSUE1QkFEWUNBQXNnRVVFQlJpRU9Ba0FDUUNBR1FYOUhEUUFnQVNBRVJ3MEFRUUFoQmlBSklRSWdCRUVCSUFSQkFVb2JRWDlxSWdFaEJBd0JDd0pBSUFaQkFVY05BQ0FCSUExSERRQkJBQ0VHSUFVaEFpQU5RUUZxSWdFZ0R5QUJJQTlJR3lJQklRME1BUXNDUUNBQ1FYOUhEUUFnQ0NBTVJ3MEFRUUFoQWlBRklRWWdERUVCSUF4QkFVb2JRWDlxSWdnaERBd0JDd0pBSUFKQkFVY05BQ0FJSUFwSERRQkJBQ0VDSUFraEJpQUtRUUZxSWdnZ0VDQUlJQkJJR3lJSUlRb01BUXNnQWlBSWFpRUlJQUVnQm1vaEFRc2dCeUFPYWlJSElBdEpEUUFMREFJTElBRW9BaHdoQnlBQktBSVlJUWdnQlFSQUlBbEJmMm9oQWtFQUlRRURRQ0FBSUFGQkFuUnFJQUkyQWdBZ0FVRUJhaUlCSUFWSERRQUxJQUpGRFFJTElBbEJmbW9oQVFOQUFrQWdDQ0FCSWdSQkFuUWlBV29vQWdBaUJpQURiaUlDSUFFZ0Iyb29BZ0FpQVNBRGJpSUZTdzBBSUFZZ0FpQURiR3NpQmlBQklBTWdCV3hySWdsTEJFQURRQ0FDUVFGcUlnSWdCVTBOQUF3Q0FBc0FDd05BSUFJZ0Eyd2hDaUFHSVFFRFFDQUFJQUVnQ21wQkFuUnFJQVEyQWdBZ0FVRUJhaUlCSUFsTkRRQUxJQUpCQVdvaUFpQUZUUTBBQ3dzZ0JFRi9haUVCSUFRTkFBc01BUXNnQlVVTkFFRUFJUUVEUUNBQUlBRkJBblJxSUFFZ0EyNGlBaUFKYkVFQmRpQUJJQUlnQTJ4cmFpQUpjRFlDQUNBQlFRRnFJZ0VnQlVjTkFBc0xDOFFCQVFWL0lBQW9BcWdKSVFRQ1FDQUFRYkFKYWlnQ0FDSUNSUTBBSUFKQmYyb2lBaUFCVFFSQUlBSWhBUXdCQ3lBQUtBSzhDU0VGQTBBQ1FDQUZJQUpCMkFGc2FpZ0NCQ0FFUncwQUlBTkJBV29pQXlBQUtBSVFLQUkwSWdaQkNpQUdRUXBMRzBrTkFDQUNJUUVNQWdzZ0FrRi9haUlDSUFGTERRQUxDd05BQWtBZ0FDZ0N2QWtnQVVIWUFXeHFJZ0lvQWdRZ0JFY05BQ0FDS0FMRUFTSURSUTBBSUFJZ0EwRi9hallDeEFFZ0FDZ0NsQWtnQUNnQ21Ba2dBUkFlSWdFTkFRc0xDNzBFQWd0L0FYNGpBRUhBQTJzaUJTUUFJQU1vQWdBaEJ5QUJLQUt3R2lFSUlBVkJBRFlDRENBQlFiQUpha0VBTmdJQUlBRWdBU2dDcUFsQkFXbzJBcWdKSUFVZ0F5Z0NNQ0FCS0FJTUtBSTBhallDQ0NBQlFjUUphaUVOSUFoQkRHb2hEZ0pBQTBBZ0FTZ0N2QWtoQkFKQUlBTW9BaVFOQUNBRUlBZEIyQUZzYWlnQ3hBRkZEUUJCQVNFRURBSUxJQU1wQWpRaER5QURLQUk4SVFzZ0FTZ0NxQWtoRENBRUlBZEIyQUZzSWdacUlnUWdBU2dDRENnQ09EWUNHQ0FFSUFzMkFoQWdCQ0FQTndJSUlBUWdERFlDQkFKQUlBTW9BZ1FpQkVFQ1JnMEFJQWtOQUNBRVFRZEdEUUFnQUNBRlFReHFFQUlpQkEwQ0lBVW9BZ3dpQkNBQktBS1lDU0FIYTBzRVFFRUJJUVFNQXdzZ0JFVUVRRUVBSVFrTUFRc2dEa0VBUWFRQkVBY2FJQWhCQURZQ0FFRUJJUWtMQWtBZ0JTZ0NEQ0lFQkVBZ0JTQUVRWDlxTmdJTURBRUxRUUFoQ1NBQUlBZ2dBU2dDdkFrZ0Jtb2dBeWdDQkNBREtBSXNFRkVpQkEwQ0N5QUJLQUs4Q1NBR2FpQUlJQUlnRFNBRlFRaHFJQWNnQVNnQ0RDZ0NRQ0FGUVJCcUVGQWlCQTBCSUFFb0Fyd0pJQVpxS0FMRUFTRUxJQUFRTGlFRUlBVW9BZ3doQmdKQUlBTW9BZ1JCZm1vaURFRUZTdzBBQWtBZ0RFRUJhdzRFQVFFQkFRQUxJQUVnQnpZQ3NBa0xJQVFnQm5JaEJrRUJJUVFnQVNnQ2xBa2dBU2dDbUFrZ0J4QWVJZ2RGUVFBZ0Joc05BU0FLSUF0QkFVWnFJUW9nQmcwQUN5QUJRYXdKYWlnQ0FDQUthaUlBSUFFb0FwZ0pTdzBBSUFFZ0FEWUNyQWxCQUNFRUN5QUZRY0FEYWlRQUlBUUw1Z0lCQjM5QkFTRUNBa0FnQUNnQ0FDQUJLQUlBUncwQUlBQW9BZ1FnQVNnQ0JFY05BQ0FBS0FJTUlBRW9BZ3hIRFFBZ0FDZ0NFQ0lESUFFb0FoQkhEUUFnQUNnQ0xDQUJLQUlzUncwQUlBQW9BakFnQVNnQ01FY05BQ0FBS0FJMElBRW9BalJIRFFBZ0FDZ0NPQ0FCS0FJNFJ3MEFJQUFvQWp3aUJTQUJLQUk4UncwQUlBQW9BbEFnQVNnQ1VFY05BQUpBSUFOQkFVc05BQ0FEUVFGclJRUkFJQUFvQWhnZ0FTZ0NHRWNOQWlBQUtBSWNJQUVvQWh4SERRSWdBQ2dDSUNBQktBSWdSdzBDSUFBb0FpUWlCQ0FCS0FJa1J3MENJQVJGRFFFZ0FTZ0NLQ0VHSUFBb0FpZ2hCMEVBSVFNRFFDQUhJQU5CQW5RaUNHb29BZ0FnQmlBSWFpZ0NBRWNOQXlBRUlBTkJBV29pQTBjTkFBc01BUXNnQUNnQ0ZDQUJLQUlVUncwQkN5QUZCRUFnQUNnQ1FDQUJLQUpBUncwQklBQW9Ba1FnQVNnQ1JFY05BU0FBS0FKSUlBRW9Ba2hIRFFFZ0FDZ0NUQ0FCS0FKTVJ3MEJDMEVBSVFJTElBSUwvd2tCQm44akFFRVFheUlFSkFBZ0FVRUFRZHdBRUFjaEF3SkFJQUJCQ0JBRElnRkJmMFlFUUVFQklRRU1BUXNnQXlBQk5nSUFJQUJCQVJBREdpQUFRUUVRQXhvZ0FFRUJFQU5CZjBZRVFFRUJJUUVNQVFzZ0FFRUZFQU5CZjBZRVFFRUJJUUVNQVFzZ0FFRUlFQU1pQVVGL1JnUkFRUUVoQVF3QkN5QURJQUUyQWdRZ0FDQURRUWhxRUFJaUFRMEFJQU1vQWdoQkgwc0VRRUVCSVFFTUFRc2dBQ0FFUVF4cUVBSWlBUTBBUVFFaEFTQUVLQUlNSWdKQkRFc05BQ0FEUVFFZ0FrRUVhblEyQWd3Z0FDQUVRUXhxRUFJaUFRMEFRUUVoQVNBRUtBSU1JZ0pCQWtzTkFDQURJQUkyQWhBQ1FDQUNRUUZMRFFBZ0FrRUJhd1JBSUFBZ0JFRU1haEFDSWdFTkFrRUJJUUVnQkNnQ0RDSUNRUXhMRFFJZ0EwRUJJQUpCQkdwME5nSVVEQUVMSUFCQkFSQURJZ0pCZjBZTkFTQURJQUpCQVVZMkFoZ2dBQ0FEUVJ4cUVBVWlBUTBCSUFBZ0EwRWdhaEFGSWdFTkFTQUFJQU5CSkdvUUFpSUJEUUZCQVNFQklBTW9BaVFpQWtIL0FVc05BU0FDQkVBZ0F5QUNRUUowRUFvaUFUWUNLQ0FCUlFSQVFmLy9BeUVCREFNTElBQWdBUkFGSWdFTkFrRUJJUUlEUUNBQ0lBTW9BaVJQRFFJZ0FrRUNkQ0VCSUFKQkFXb2hBaUFBSUFFZ0F5Z0NLR29RQlNJQlJRMEFDd3dDQ3lBRFFRQTJBaWdMSUFBZ0EwRXNhaEFDSWdFTkFFRUJJUUVnQXlnQ0xFRVFTdzBBSUFCQkFSQURJZ0pCZjBZTkFDQURJQUpCQVVZMkFqQWdBQ0FFUVF4cUVBSWlBUTBBSUFNZ0JDZ0NERUVCYWpZQ05DQUFJQVJCREdvUUFpSUJEUUJCQVNFQklBTWdCQ2dDREVFQmFqWUNPQ0FBUVFFUUEwRUJha0VDU1EwQUlBQkJBUkFEUVg5R0RRQWdBRUVCRUFNaUFrRi9SZzBBSUFNZ0FrRUJSaUlCTmdJOEFrQWdBVVVFUUNBREtBSTRJUVVnQXlnQ05DRUdEQUVMSUFBZ0EwRkFheEFDSWdFTkFTQUFJQU5CeEFCcUVBSWlBUTBCSUFBZ0EwSElBR29RQWlJQkRRRWdBQ0FEUWN3QWFoQUNJZ0VOQVVFQklRRWdBeWdDUUNBREtBSkVRWDl6SUFNb0FqUWlCa0VEZEdwS0RRRWdBeWdDU0NBREtBSk1RWDl6SUFNb0FqZ2lCVUVEZEdwS0RRRUxBa0FDUUFKQUFrQWdBeWdDQkVGMmFpSUhRU2xMRFFCQjR3QWhBVUdBcEFraEFnSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnQjBFQmF3NHBBQUVCQ3dzTEN3c0xBUUlEQ3dzTEN3c0xDd01FQlFzTEN3c0xDd3NHQmdjTEN3c0xDd3NMQ0FrS0MwR01BeUVCUVlDTUZTRUNEQWtMUVl3RElRRkJnTmczSVFJTUNBdEJtQVloQVVHQXNPOEFJUUlNQnd0QjFBd2hBVUdBN0wwQklRSU1CZ3RCa0J3aEFVR0E4S1VESVFJTUJRdEJnQ2doQVVHQWdPQURJUUlNQkF0QmdNQUFJUUZCZ0lDQUJpRUNEQU1MUVlERUFDRUJRWUNBc0FZaEFnd0NDMEhBckFFaEFVR0F3SnNVSVFJTUFRdEJnS0FDSVFGQmdJRGdJU0VDQ3lBQklBVWdCbXdpQVU4TkFRc2dCRUgvLy8vL0J6WUNEQ0FES0FJc0lRSU1BUXNnQkNBQ0lBRkJnQU5zYmlJQlFSQWdBVUVRU1JzaUFUWUNEQ0FES0FJc0lnSWdBVTBOQVFzZ0JDQUNOZ0lNSUFJaEFRc2dBeUFCTmdKWVFRRWhBU0FBUVFFUUF5SUNRWDlHRFFBZ0F5QUNRUUZHTmdKUUFrQWdBa0VCUncwQUlBTkJ1QWNRQ2lJQk5nSlVJQUZGQkVCQi8vOERJUUVNQWdzZ0FDQUJFQ3dpQVEwQklBTW9BbFFpQWlnQ21BZEZEUUJCQVNFQklBSW9BckFISUFJb0FyUUhJZ0pMRFFFZ0FpQURLQUlzU1EwQklBSWdBeWdDV0VzTkFTQURJQUpCQVNBQ0d6WUNXQXNnQUJBZlFRQWhBUXNnQkVFUWFpUUFJQUVMalFRQkRuOGdBUUovQWtBZ0FDOEJJQ0lIRFFBZ0FDOEJIQTBBUVFBTUFRdEJBZ3MyQWlBZ0FRSi9Ba0FnQUM4QklpSUNEUUFnQUM4QkhnMEFRUUFNQVF0QkFnczJBaWdnQVFKL0FrQWdBQzhCS0NJRERRQWdBQzhCSkEwQVFRQU1BUXRCQWdzMkFqQWdBUUovQWtBZ0FDOEJLaUlJRFFBZ0FDOEJKZzBBUVFBTUFRdEJBZ3MyQWpnZ0FTQUhJQUF2QVN3aUNYSkJBRWRCQVhRMkFrQWdBU0FDSUFBdkFTNGlCSEpCQUVkQkFYUTJBa2dnQVNBRElBQXZBVFFpQlhKQkFFZEJBWFEyQWxBZ0FTQUlJQUF2QVRZaUNuSkJBRWRCQVhRMkFsZ2dBU0FBTHdFd0lnMGdDWEpCQUVkQkFYUTJBbUFnQVNBQUx3RXlJZ3NnQkhKQkFFZEJBWFEyQW1nZ0FTQUFMd0U0SWd3Z0JYSkJBRWRCQVhRMkFuQWdBU0FBTHdFNklnNGdDbkpCQUVkQkFYUTJBbmhCQWlFR0lBRWdBQzhCSGlJUEJIOUJBZ1VnQUM4QkhFRUFSMEVCZEFzMkFnd2dBU0FQSUFBdkFTUWlCbkpCQUVkQkFYUTJBaFFnQUM4QkppRUFJQUVnRENBT2NrRUFSMEVCZERZQ2ZDQUJJQXNnREhKQkFFZEJBWFEyQW5RZ0FTQUxJQTF5UVFCSFFRRjBOZ0pzSUFFZ0JTQUtja0VBUjBFQmREWUNYQ0FCSUFRZ0JYSkJBRWRCQVhRMkFsUWdBU0FFSUFseVFRQkhRUUYwTmdKTUlBRWdBeUFJY2tFQVIwRUJkRFlDUENBQklBSWdBM0pCQUVkQkFYUTJBalFnQVNBQ0lBZHlRUUJIUVFGME5nSXNJQUVnQUNBR2NrRUFSMEVCZERZQ0hBdk1CZ0VMZnlNQVFZQU9heUlPSkFBZ0JrRUZhaUVJQWtBQ1FDQUNRUUJJRFFBZ0EwRUFTQTBBSUFJZ0NHb2dCRXNOQUNBSFFRVnFJZ29nQTJvZ0JVc05BQ0FFSVFnZ0F5RUpEQUVMSUFBZ0RrSEFDbW9nQWlBRElBUWdCU0FJSUFkQkJXb2lDaUFJRUF3Z0RrSEFDbW9oQUVFQUlRSUxBa0FnQ2tVTkFDQUdRUUoySWhCRkRRQWdDQ0FHYXlFUklBQWdDQ0FKYkNBQ2FtcEJCV29oQWlBT0lRQURRQ0FDUVg5cUxRQUFJUWdnQWtGK2FpMEFBQ0VESUFKQmZXb3RBQUFoQlNBQ1FYeHFMUUFBSVFRZ0FrRjdhaTBBQUNFTUlCQWhEUU5BSUFBZ0FpMEFBQ0lKSUF3Z0JDQUlhaUlMYXlBRElBVnFRUlJzYWlBTFFRSjBhMm8yQWdBZ0FDQUNMUUFCSWdzZ0F5QUlha0VVYkNBRWFpQUZJQWxxSWdScklBUkJBblJyYWpZQ0JDQUFJQUl0QUFJaUR5QUlJQWxxUVJSc0lBVnFJQU1nQzJvaUJHc2dCRUVDZEd0cU5nSUlJQUFnQWkwQUF5SVNJQWtnQzJwQkZHd2dBMm9nQ0NBUGFpSURheUFEUVFKMGEybzJBZ3dnQUVFUWFpRUFJQUpCQkdvaEFpQUlJUXdnQ1NFRUlBc2hCU0FQSVFNZ0VpRUlJQTFCZjJvaURRMEFDeUFDSUJGcUlRSWdDa0YvYWlJS0RRQUxDd0pBSUFkQkFuWWlCMFVOQUNBR1JRMEFRY0FBSUFacklROGdEaUFHUVFKMGFpSUlJQVpCRkd4cUlRSkJBQ0FHYXlJUVFRTjBJUklnQmtFRGRDRUpJQVpCQTJ4QkFuUWhDd05BSUFZaEJBTkFJQUVnQ0NBSmFpZ0NBQ0lBSUFJZ0NXb29BZ0FnQWlBR1FRSjBJZzFxS0FJQUlnb2dBaUFTYWlnQ0FDSURhaUlGYXlBRlFRSjBhMm9nQWlnQ0FDSU1JQUlnRUVFQ2RDSVJhaWdDQUNJRmFrRVViR3BCZ0FScVFRcDFRYkF1YWkwQUFEb0FNQ0FCSUFnZ0RXb29BZ0FpRFNBS0lBTWdCV3BCRkd4cUlBQWdER29pQ21zZ0NrRUNkR3RxUVlBRWFrRUtkVUd3TG1vdEFBQTZBQ0FnQVNBSUtBSUFJZ29nRENBQUlBTnFRUlJzYWlBRklBMXFJZ3hySUF4QkFuUnJha0dBQkdwQkNuVkJzQzVxTFFBQU9nQVFJQUVnQ0NBUmFpZ0NBQ0FGSUFBZ0RXcEJGR3hxSUFNZ0Ntb2lBR3NnQUVFQ2RHdHFRWUFFYWtFS2RVR3dMbW90QUFBNkFBQWdDRUVFYWlFSUlBRkJBV29oQVNBQ1FRUnFJUUlnQkVGL2FpSUVEUUFMSUFFZ0Qyb2hBU0FDSUF0cUlRSWdDQ0FMYWlFSUlBZEJmMm9pQncwQUN3c2dEa0dBRG1va0FBdmxBd0VKZnlNQVFjQURheUlLSkFBZ0JrRUZhaUVJQWtBQ1FDQUNRUUJJRFFBZ0F5QUhhaUFGU3cwQUlBTkJBRWdOQUNBQ0lBaHFJQVJMRFFBZ0JDRUlJQU1oQ1F3QkN5QUFJQW9nQWlBRElBUWdCU0FJSUFjZ0NCQU1JQW9oQUVFQUlRSUxBa0FnQjBVTkFDQUdRUUoySWcxRkRRQkJFQ0FHYXlFT0lBZ2dCbXNoRHlBQUlBZ2dDV3dnQW1wcVFRVnFJUUlEUUNBQ1FYOXFMUUFBSVFnZ0FrRithaTBBQUNFR0lBSkJmV290QUFBaEFDQUNRWHhxTFFBQUlRVWdBa0Y3YWkwQUFDRUpJQTBoQ3dOQUlBRWdBaTBBQUNJRElBa2dCU0FJYWlJRWF5QUFJQVpxUVJSc2FpQUVRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFPZ0FBSUFFZ0FpMEFBU0lFSUFVZ0JpQUlha0VVYkdvZ0FDQURhaUlGYXlBRlFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQU9nQUJJQUVnQWkwQUFpSU1JQUFnQXlBSWFrRVViR29nQkNBR2FpSUFheUFBUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBT2dBQ0lBRWdBaTBBQXlJUUlBWWdBeUFFYWtFVWJHb2dDQ0FNYWlJQWF5QUFRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFPZ0FESUFGQkJHb2hBU0FDUVFScUlRSWdDQ0VKSUFNaEJTQUVJUUFnRENFR0lCQWhDQ0FMUVg5cUlnc05BQXNnQVNBT2FpRUJJQUlnRDJvaEFpQUhRWDlxSWdjTkFBc0xJQXBCd0FOcUpBQUw5UU1CQzM4akFFSEFBMnNpQ3lRQUFrQUNRQ0FDUVFCSURRQWdBMEVBU0EwQUlBSWdCbW9nQkVzTkFDQURJQWRxUVFWcUlBVkxEUUFnQXlFSURBRUxJQUFnQ3lBQ0lBTWdCQ0FGSUFZZ0IwRUZhaUFHRUF3Z0N5RUFJQVloQkVFQUlRSUxBa0FnQjBFQ2RpSU1SUTBBSUFaRkRRQkJ3QUFnQm1zaEVTQUVRUUYwSVEwZ0JFRUNkQ0FHYXlFT1FRQWdCR3NpRDBFQmRDRVNJQUFnQkNBSWJDQUNhbW9nQkdvaUJ5QUVRUVZzYWlFQ0EwQWdCaUVBQTBBZ0FTQUhJQTFxTFFBQUlnTWdBaUFOYWkwQUFDQUNJQVJxTFFBQUlna2dBaUFTYWkwQUFDSUZhaUlJYXlBSVFRSjBhMm9nQWkwQUFDSUtJQUlnRDJvdEFBQWlDR3BCRkd4cVFSQnFRUVYxUWJBdWFpMEFBRG9BTUNBQklBUWdCMm90QUFBaUVDQUpJQVVnQ0dwQkZHeHFJQU1nQ21vaUNXc2dDVUVDZEd0cVFSQnFRUVYxUWJBdWFpMEFBRG9BSUNBQklBY3RBQUFpQ1NBS0lBTWdCV3BCRkd4cUlBZ2dFR29pQ21zZ0NrRUNkR3RxUVJCcVFRVjFRYkF1YWkwQUFEb0FFQ0FCSUFjZ0Qyb3RBQUFnQ0NBRElCQnFRUlJzYWlBRklBbHFJZ05ySUFOQkFuUnJha0VRYWtFRmRVR3dMbW90QUFBNkFBQWdCMEVCYWlFSElBRkJBV29oQVNBQ1FRRnFJUUlnQUVGL2FpSUFEUUFMSUFFZ0VXb2hBU0FDSUE1cUlRSWdCeUFPYWlFSElBeEJmMm9pREEwQUN3c2dDMEhBQTJva0FBdXFCZ0VOZnlNQVFiQUJheUlSSkFBZ0NFRUJhaUVLQWtBQ1FDQUNRUUJJRFFBZ0EwRUFTQTBBSUFJZ0Ntb2dCRXNOQUNBRElBbHFRUUZxSUFWTERRQWdCU0VNSUFRaENpQURJUThNQVFzZ0FDQVJJQUlnQXlBRUlBVWdDaUFKUVFGcUlnd2dDaEFNSUFBZ0JDQUZiR29nRVNBS0lBeHNhaUFDSUFNZ0JDQUZJQW9nRENBS0VBd2dFU0VBUVFBaEFnc0NRQ0FKUVFGMklnVkZEUUFnQ0VFQmRpSUVSUTBBUVJBZ0NHc2hFMEVJSUFkcklRdEJDQ0FHYXlFTklBcEJBWFFpRGlBSWF5RVVJQUFnQW1vaUZpQUtJQTlzYWlFQ0lBRWhBQ0FGSVJVRFFDQUNJQTVxTFFBQUlBZHNJQXNnQWlBS2FpMEFBQ0lEYkdvaENDQURJQWRzSUFzZ0FpMEFBR3hxSVFrZ0JDRURBMEFnQWtFQmFpSVFJQTVxTFFBQUlSSWdBQ0FKSUExc0lBb2dFR290QUFBaUNTQUhiQ0FMSUFJdEFBRnNhaUlRSUFac2FrRWdha0VHZGpvQUFDQUFJQWdnRFd3Z0J5QVNiQ0FKSUF0c2FpSUlJQVpzYWtFZ2FrRUdkam9BQ0NBQ0xRQUNJUWtnQWtFQ2FpSUNJQTVxTFFBQUlSSWdBQ0FOSUJCc0lBSWdDbW90QUFBaUVDQUhiQ0FKSUF0c2FpSUpJQVpzYWtFZ2FrRUdkam9BQVNBQUlBZ2dEV3dnQnlBU2JDQUxJQkJzYWlJSUlBWnNha0VnYWtFR2Rqb0FDU0FBUVFKcUlRQWdBMEYvYWlJRERRQUxJQUlnRkdvaEFpQUFJQk5xSVFBZ0ZVRi9haUlWRFFBTElBRkJRR3NoQUNBV0lBd2dEMm9nQ214cUlRSURRQ0FDSUE1cUxRQUFJQWRzSUFzZ0FpQUthaTBBQUNJQmJHb2hDQ0FCSUFkc0lBc2dBaTBBQUd4cUlRa2dCQ0VEQTBBZ0FrRUJhaUlCSUE1cUxRQUFJUXdnQUNBSklBMXNJQUVnQ21vdEFBQWlBU0FIYkNBTElBSXRBQUZzYWlJSklBWnNha0VnYWtFR2Rqb0FBQ0FBSUFnZ0RXd2dCeUFNYkNBQklBdHNhaUlCSUFac2FrRWdha0VHZGpvQUNDQUNMUUFDSVFnZ0FrRUNhaUlDSUE1cUxRQUFJUXdnQUNBSklBMXNJQUlnQ21vdEFBQWlEeUFIYkNBSUlBdHNhaUlKSUFac2FrRWdha0VHZGpvQUFTQUFJQUVnRFd3Z0J5QU1iQ0FMSUE5c2FpSUlJQVpzYWtFZ2FrRUdkam9BQ1NBQVFRSnFJUUFnQTBGL2FpSUREUUFMSUFJZ0ZHb2hBaUFBSUJOcUlRQWdCVUYvYWlJRkRRQUxDeUFSUWJBQmFpUUFDLzlFQVVGL0l3QkJzQUZySWdNa0FDQUFLQUlJSWdRRVFDQUFLQUlFSWg5QkEzUWhGaUFFSUI5c0lnUkJCblFoT3lBRVFRaDBJVHdnSDBFR2RDRTlJQjlCTUd3aFBpQWZRUVYwSVNVZ0gwRlFiQ0VyUVFBZ0gwRUVkQ0lhYXlJb1FRSjBJVDhnS0VFQmRDRXNJQU5CR0dvaElpQURRUXh5SVNNRFFBSkFJQUVvQWdnaUNVRUJSZzBBQWtBQ1FBSkFBa0FnQVNnQ3lBRWlBa1VFUUVFQklRWU1BUXRCQlNFR0lBbEJBa2NOQUVFRlFRRWdBU2dDQkNJSklBSW9BZ1JHR3lFR0lBRW9Bc3dCSWdRTkFVRUFJUVFNQXdzZ0FTZ0N6QUVpQkVVRVFFRUFJUVFNQXdzZ0NVRUNSdzBCSUFFb0FnUWhDUXNnQ1NBRUtBSUVSdzBCQ3lBR1FRSnlJUVlMQW44Z0JrRUNjU0l0QkVBQ1FDQUJLQUlBUVFWTkJFQWdCQ2dDQUVFR1NRMEJDeUFEUVFRMkFrQWdBMEVFTmdKSUlBTkJCRFlDT0NBRFFRUTJBakJCQVF3Q0MwRUNJUTlCQWlFSkFrQWdBUzhCSEEwQUlBUXZBVEFOQUVFQklRa2dBU2dDZENBRUtBSjhSdzBBSUFFdUFZUUJJQVF1QWF3QmF5SUZJQVZCSDNVaUJXb2dCWE5CQTBzTkFDQUJMZ0dHQVNBRUxnR3VBV3NpQ1NBSlFSOTFJZ2xxSUFselFRTkxJUWtMSUFNZ0NUWUNNQUpBSUFFdkFSNE5BQ0FFTHdFeURRQkJBU0VQSUFFb0FuUWdCQ2dDZkVjTkFDQUJMZ0dJQVNBRUxnR3dBV3NpQlNBRlFSOTFJZ1ZxSUFWelFRTkxEUUFnQVM0QmlnRWdCQzRCc2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFUEN5QURJQTgyQWpoQkFpRUZRUUloQ2dKQUlBRXZBU1FOQUNBRUx3RTREUUJCQVNFS0lBRW9BbmdnQkNnQ2dBRkhEUUFnQVM0QmxBRWdCQzRCdkFGcklnZ2dDRUVmZFNJSWFpQUljMEVEU3cwQUlBRXVBWllCSUFRdUFiNEJheUlJSUFoQkgzVWlDR29nQ0hOQkEwc2hDZ3NnQXlBS05nSkFBa0FnQVM4QkpnMEFJQVF2QVRvTkFFRUJJUVVnQVNnQ2VDQUVLQUtBQVVjTkFDQUJMZ0dZQVNBRUxnSEFBV3NpQ0NBSVFSOTFJZ2hxSUFoelFRTkxEUUFnQVM0Qm1nRWdCQzRCd2dGcklnUWdCRUVmZFNJRWFpQUVjMEVEU3lFRkN5QURJQVUyQWtnZ0NTQVBjaUFLY2lBRmNrRUFSd3dCQ3lBRFFRQTJBa0FnQTBFQU5nSklJQU5CQURZQ09DQURRUUEyQWpCQkFBc2hDUUpBQWtBQ1FBSkFJQVpCQkhFaUxnUkFBa0FnQVNnQ0FDSUdRUVZOQkVBZ0FpZ0NBRUVHU1EwQkN5QURRUVEyQW5RZ0EwRUVOZ0tVQVNBRFFRUTJBbFFnQTBFRU5nSTBRUUVoQ1F3Q0MwRUNJUTlCQWlFRUFrQWdBUzhCSEEwQUlBSXZBU1lOQUVFQklRUWdBU2dDZENBQ0tBSjRSdzBBSUFFdUFZUUJJQUl1QVpnQmF5SUZJQVZCSDNVaUJXb2dCWE5CQTBzTkFDQUJMZ0dHQVNBQ0xnR2FBV3NpQkNBRVFSOTFJZ1JxSUFSelFRTkxJUVFMSUFNZ0JEWUNOQUpBSUFFdkFTQU5BQ0FDTHdFcURRQkJBU0VQSUFFb0FuUWdBaWdDZUVjTkFDQUJMZ0dNQVNBQ0xnR2dBV3NpQlNBRlFSOTFJZ1ZxSUFWelFRTkxEUUFnQVM0QmpnRWdBaTRCb2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFUEN5QURJQTgyQWxSQkFpRUZRUUloQ2dKQUlBRXZBU3dOQUNBQ0x3RTJEUUJCQVNFS0lBRW9BbndnQWlnQ2dBRkhEUUFnQVM0QnBBRWdBaTRCdUFGcklnZ2dDRUVmZFNJSWFpQUljMEVEU3cwQUlBRXVBYVlCSUFJdUFib0JheUlJSUFoQkgzVWlDR29nQ0hOQkEwc2hDZ3NnQXlBS05nSjBBa0FnQVM4Qk1BMEFJQUl2QVRvTkFFRUJJUVVnQVNnQ2ZDQUNLQUtBQVVjTkFDQUJMZ0dzQVNBQ0xnSEFBV3NpQ0NBSVFSOTFJZ2hxSUFoelFRTkxEUUFnQVM0QnJnRWdBaTRCd2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFRkN5QURJQVUyQXBRQklBbEZEUUpCQVNFSkRBTUxJQU5CQURZQ2RDQURRUUEyQXBRQklBTkJBRFlDVkNBRFFRQTJBalFnQVNnQ0FDRUdDeUFHUVFaSkRRRWdBMEVETmdLZ0FTQURRb09BZ0lBd053S2tBU0FEUVFNMkFwQUJJQU5CQXpZQ2NDQURRUU0yQXF3QklBTkNnNENBZ0RBM0E1Z0JJQU5DZzRDQWdEQTNBNGdCSUFOQ2c0Q0FnREEzQTRBQklBTkNnNENBZ0RBM0EzZ2dBMEtEZ0lDQU1EY0RhQ0FEUW9PQWdJQXdOd05nSUFOQ2c0Q0FnREEzQTFnZ0EwS0RnSUNBTURjQ1RDQURRUU0yQWtRZ0EwRUROZ0k4REFJTElBUWdEM0lnQ25JZ0JYSkJBRWNoQ1FzQ1FBSi9JQVpCQTAwRVFDQUdRUUowUVl3MWFpZ0NBQXdCQzBFRUMwRUJSZ1JBSUFFZ0EwRXdhaEJFSUFNb0Fxd0JJUWNnQXlnQ3BBRWhEaUFES0FLY0FTRVFJQU1vQW93QklSa2dBeWdDaEFFaEJpQURLQUo4SVJjZ0F5Z0NiQ0VJSUFNb0FtUWhCQ0FES0FKY0lSUWdBeWdDVENFTUlBTW9Ba1FoQWlBREtBSThJUkVnQXlnQ3FBRWhIQ0FES0FLZ0FTRW1JQU1vQXBnQklRMGdBeWdDa0FFaEhTQURLQUtJQVNFU0lBTW9Bb0FCSVJVZ0F5Z0NlQ0ViSUFNb0FuQWhFeUFES0FKb0lRb2dBeWdDWUNFUElBTW9BbGdoQlNBREtBSlFJU2NNQVFzZ0F3Si9Ba0FnQXdKL0FrQUNRQ0FCS0FJQVFYNXFJZ1JCQVUwRVFDQUVRUUZyQkVBZ0F3Si9Ba0FnQVM4QklDSUVEUUFnQVM4QkhBMEFRUUFNQVF0QkFnc2lKellDVUNBREFuOENRQ0FCTHdFaUlnY05BQ0FCTHdFZURRQkJBQXdCQzBFQ0N5SUZOZ0pZSUFNQ2Z3SkFJQUV2QVNnaUJnMEFJQUV2QVNRTkFFRUFEQUVMUVFJTElnODJBbUFnQXdKL0FrQWdBUzhCS2lJT0RRQWdBUzhCSmcwQVFRQU1BUXRCQWdzaUNqWUNhQ0FEQW44Q1FDQUJMd0V3SWg0TkFDQUJMd0VzRFFCQkFBd0JDMEVDQ3lJZE5nS1FBU0FEQW44Q1FDQUJMd0V5SWhBTkFDQUJMd0V1RFFCQkFBd0JDMEVDQ3lJTk5nS1lBU0FEQW44Q1FDQUJMd0U0SWdzTkFDQUJMd0UwRFFCQkFBd0JDMEVDQ3lJbU5nS2dBU0FEQW44Q1FDQUJMd0U2SWhnTkFDQUJMd0UyRFFCQkFBd0JDMEVDQ3lJY05nS29BVUVDSVJ0QkFpRVRBa0FnQkNBQkx3RXNJaGR5RFFCQkFTRVRJQUV1QWFRQklBRXVBWXdCYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBQkxnR21BU0FCTGdHT0FXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWdBU2dDZkNBQktBSjBSeUVUQ3lBRElCTTJBbkFDUUNBSElBRXZBUzRpSUhJTkFFRUJJUnNnQVM0QnFBRWdBUzRCa0FGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRXVBYW9CSUFFdUFaSUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQ0FCS0FKOElBRW9BblJISVJzTElBTWdHellDZUVFQ0lSSkJBaUVWQWtBZ0JpQUJMd0UwSWhseURRQkJBU0VWSUFFdUFiUUJJQUV1QVp3QmF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTkFDQUJMZ0cyQVNBQkxnR2VBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVNnQ2dBRWdBU2dDZUVjaEZRc2dBeUFWTmdLQUFRSkFJQTRnQVM4Qk5pSWhjZzBBUVFFaEVpQUJMZ0c0QVNBQkxnR2dBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVM0QnVnRWdBUzRCb2dGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRW9Bb0FCSUFFb0FuaEhJUklMSUFNZ0VqWUNpQUVnQVM4QkhnMENJQUV2QVJ3RVFFRUNJUkVnQTBFQ05nSThJQUV2QVNRaUNBMEdRUUFoREVFQURBY0xRUUFoRVNBRFFRQTJBanhCQUNFTVFRQWdBUzhCSkNJSVJRMEdHZ3dGQ3lBREFuOENRQ0FCTHdFZ0lnSU5BQ0FCTHdFY0RRQkJBQXdCQzBFQ0N5SW5OZ0pRSUFNQ2Z3SkFJQUV2QVNJaUJnMEFJQUV2QVI0TkFFRUFEQUVMUVFJTElnVTJBbGdnQXdKL0FrQWdBUzhCS0NJT0RRQWdBUzhCSkEwQVFRQU1BUXRCQWdzaUR6WUNZQ0FEQW44Q1FDQUJMd0VxSWdnTkFDQUJMd0VtRFFCQkFBd0JDMEVDQ3lJS05nSm9JQU1nQWlBQkx3RXNJaGR5UVFCSFFRRjBJaE0yQW5BZ0F5QUdJQUV2QVM0aUMzSkJBRWRCQVhRaUd6WUNlQ0FESUE0Z0FTOEJOQ0llY2tFQVIwRUJkQ0lWTmdLQUFTQURJQWdnQVM4Qk5pSVpja0VBUjBFQmRDSVNOZ0tJQVNBRElBRXZBVEFpRUNBWGNrRUFSMEVCZENJZE5nS1FBU0FESUFFdkFUSWlJQ0FMY2tFQVIwRUJkQ0lOTmdLWUFTQURJQUV2QVRnaUlTQWVja0VBUjBFQmRDSW1OZ0tnQVNBRElBRXZBVG9pQnlBWmNrRUFSMEVCZENJY05nS29BU0FEQW44Q1FDQUJMd0VlSWlRTkFDQUJMd0VjRFFCQkFBd0JDMEVDQ3lJUk5nSThJQUV2QVNZRVFDQUJMd0VrSVJnTUF3c2dBUzhCSkNJWURRSkJBQ0VZUVFBTUF3c2dBUzRCaGdFaEZDQUJMZ0dPQVNFRVFRSWhCU0FEQW45QkFpQUJMd0VjSWhFZ0FTOEJJQ0l2Y2cwQUdrRUJJQUV1QVl3QklBRXVBWVFCYXlJR0lBWkJIM1VpQm1vZ0JuTkJBMHNOQUJvZ0JDQVVheUlHSUFaQkgzVWlCbW9nQm5OQkEwc0xJaWMyQWxBZ0FTNEJpZ0VoQ0NBQkxnR1NBU0VHQWtBZ0FTOEJIaUl3SUFFdkFTSWlFSElOQUVFQklRVWdBUzRCa0FFZ0FTNEJpQUZySWdJZ0FrRWZkU0lDYWlBQ2MwRURTdzBBSUFZZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6UVFOTElRVUxJQU1nQlRZQ1dDQUJMZ0dXQVNFTUlBRXVBWjRCSVFkQkFpRUtJQU1DZjBFQ0lBRXZBU1FpTVNBQkx3RW9JaGR5RFFBYVFRRWdBUzRCbkFFZ0FTNEJsQUZySWdJZ0FrRWZkU0lDYWlBQ2MwRURTdzBBR2lBSElBeHJJZ0lnQWtFZmRTSUNhaUFDYzBFRFN3c2lEellDWUNBQkxnR2FBU0V5SUFFdUFhSUJJUXNDUUNBQkx3RW1Ja0FnQVM4QktpSXpjZzBBUVFFaENpQUJMZ0dnQVNBQkxnR1lBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQ3lBeWF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzaENnc2dBeUFLTmdKb0lBRXVBYVlCSVI1QkFpRWJRUUloRXdKQUlDOGdBUzhCTENJMGNnMEFRUUVoRXlBQkxnR2tBU0FCTGdHTUFXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWdIaUFFYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBQktBSjhJQUVvQW5SSElSTUxJQU1nRXpZQ2NDQUJMZ0dxQVNFT0FrQWdFQ0FCTHdFdUloaHlEUUJCQVNFYklBRXVBYWdCSUFFdUFaQUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQ0FPSUFacklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRW9BbndnQVNnQ2RFY2hHd3NnQXlBYk5nSjRJQUV1QWJZQklSbEJBaUVTUVFJaEZRSkFJQmNnQVM4Qk5DSWdjZzBBUVFFaEZTQUJMZ0cwQVNBQkxnR2NBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnR1NBSGF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTkFDQUJLQUtBQVNBQktBSjRSeUVWQ3lBRElCVTJBb0FCSUFFdUFib0JJU0VDUUNBeklBRXZBVFlpTlhJTkFFRUJJUklnQVM0QnVBRWdBUzRCb0FGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlDRWdDMnNpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVNnQ2dBRWdBU2dDZUVjaEVnc2dBeUFTTmdLSUFTQUJMZ0d1QVNFMlFRSWhEU0FEQW45QkFpQTBJQUV2QVRBaVFYSU5BQnBCQVNBQkxnR3NBU0FCTGdHa0FXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWFJRFlnSG1zaUFpQUNRUjkxSWdKcUlBSnpRUU5MQ3lJZE5nS1FBU0FCTGdHeUFTRWtBa0FnR0NBQkx3RXlJamR5RFFCQkFTRU5JQUV1QWJBQklBRXVBYWdCYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBa0lBNXJJZ0lnQWtFZmRTSUNhaUFDYzBFRFN5RU5DeUFESUEwMkFwZ0JJQUV1QWI0QklTbEJBaUVjSUFNQ2YwRUNJQ0FnQVM4Qk9DSTRjZzBBR2tFQklBRXVBYndCSUFFdUFiUUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQm9nS1NBWmF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTElpWTJBcUFCSUFFdUFjSUJJVGtDUUNBMUlBRXZBVG9pUW5JTkFFRUJJUndnQVM0QndBRWdBUzRCdUFGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlEa2dJV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxJUndMSUFNZ0hEWUNxQUZCQWlFQ0lBTUNmMEVDSUJFZ01ISU5BQnBCQVNBQkxnR0lBU0FCTGdHRUFXc2lFU0FSUVI5MUloRnFJQkZ6UVFOTERRQWFJQWdnRkdzaUZDQVVRUjkxSWhScUlCUnpRUU5MQ3lJUk5nSThBa0FnTUNBeGNnMEFRUUVoQWlBQkxnR1VBU0FCTGdHSUFXc2lGQ0FVUVI5MUloUnFJQlJ6UVFOTERRQWdEQ0FJYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUNBQktBSjRJQUVvQW5SSElRSUxJQU1nQWpZQ1JFRUNJUlFnQXdKL1FRSWdNU0JBY2cwQUdrRUJJQUV1QVpnQklBRXVBWlFCYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUJvZ01pQU1heUlJSUFoQkgzVWlDR29nQ0hOQkEwc0xJZ3cyQWt3Q1FDQVFJQzl5RFFCQkFTRVVJQUV1QVpBQklBRXVBWXdCYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUNBR0lBUnJJZ1FnQkVFZmRTSUVhaUFFYzBFRFN5RVVDeUFESUJRMkFseEJBaUVJUVFJaEJBSkFJQkFnRjNJTkFFRUJJUVFnQVM0Qm5BRWdBUzRCa0FGckloQWdFRUVmZFNJUWFpQVFjMEVEU3cwQUlBY2dCbXNpQmlBR1FSOTFJZ1pxSUFaelFRTkxEUUFnQVNnQ2VDQUJLQUowUnlFRUN5QURJQVEyQW1RQ1FDQVhJRE55RFFCQkFTRUlJQUV1QWFBQklBRXVBWndCYXlJR0lBWkJIM1VpQm1vZ0JuTkJBMHNOQUNBTElBZHJJZ1lnQmtFZmRTSUdhaUFHYzBFRFN5RUlDeUFESUFnMkFteEJBaUVHSUFNQ2YwRUNJQmdnTkhJTkFCcEJBU0FCTGdHb0FTQUJMZ0drQVdzaUJ5QUhRUjkxSWdkcUlBZHpRUU5MRFFBYUlBNGdIbXNpQnlBSFFSOTFJZ2RxSUFkelFRTkxDeUlYTmdKOEFrQWdHQ0FnY2cwQVFRRWhCaUFCTGdHMEFTQUJMZ0dvQVdzaUJ5QUhRUjkxSWdkcUlBZHpRUU5MRFFBZ0dTQU9heUlISUFkQkgzVWlCMm9nQjNOQkEwc05BQ0FCS0FLQUFTQUJLQUo4UnlFR0N5QURJQVkyQW9RQlFRSWhFQ0FEQW45QkFpQWdJRFZ5RFFBYVFRRWdBUzRCdUFFZ0FTNEJ0QUZySWdjZ0IwRWZkU0lIYWlBSGMwRURTdzBBR2lBaElCbHJJZ2NnQjBFZmRTSUhhaUFIYzBFRFN3c2lHVFlDakFFQ1FDQTNJRUZ5RFFCQkFTRVFJQUV1QWJBQklBRXVBYXdCYXlJSElBZEJIM1VpQjJvZ0IzTkJBMHNOQUNBa0lEWnJJZ2NnQjBFZmRTSUhhaUFIYzBFRFN5RVFDeUFESUJBMkFwd0JRUUloQjBFQ0lRNENRQ0EzSURoeURRQkJBU0VPSUFFdUFid0JJQUV1QWJBQmF5SUxJQXRCSDNVaUMyb2dDM05CQTBzTkFDQXBJQ1JySWdzZ0MwRWZkU0lMYWlBTGMwRURTdzBBSUFFb0FvQUJJQUVvQW54SElRNExJQU1nRGpZQ3BBRUNRQ0E0SUVKeURRQkJBU0VISUFFdUFjQUJJQUV1QWJ3QmF5SUxJQXRCSDNVaUMyb2dDM05CQTBzTkFDQTVJQ2xySWdjZ0IwRWZkU0lIYWlBSGMwRURTeUVIQ3lBRElBYzJBcXdCREFVTFFRSWhFU0FEUVFJMkFqd2dBUzhCSkNFSURBSUxRUUlMSWd3MkFreEJBaUVFSUFOQkFpQUlRUUJIUVFGMElBNGJJZ2cyQW13Z0EwRUNJQVpCQUVkQkFYUWdBaHNpRkRZQ1hDQURJQWNnSVhKQkFFZEJBWFFpQnpZQ3JBRWdBeUFRSUNCeVFRQkhRUUYwSWhBMkFwd0JJQU1nR1NBZWNrRUFSMEVCZENJWk5nS01BU0FESUFzZ0YzSkJBRWRCQVhRaUZ6WUNmRUVDSVFJQ1FDQVlJQ1J5RFFCQkFTRUNJQUV1QVpRQklBRXVBWWdCYXlJWUlCaEJIM1VpR0dvZ0dITkJBMHNOQUNBQkxnR1dBU0FCTGdHS0FXc2lHQ0FZUVI5MUloaHFJQmh6UVFOTERRQWdBU2dDZUNBQktBSjBSeUVDQ3lBRElBSTJBa1FDUUNBR0lBNXlEUUJCQVNFRUlBRXVBWndCSUFFdUFaQUJheUlHSUFaQkgzVWlCbW9nQm5OQkEwc05BQ0FCTGdHZUFTQUJMZ0dTQVdzaUJpQUdRUjkxSWdacUlBWnpRUU5MRFFBZ0FTZ0NlQ0FCS0FKMFJ5RUVDeUFESUFRMkFtUkJBaUVPUVFJaEJnSkFJQXNnSG5JTkFFRUJJUVlnQVM0QnRBRWdBUzRCcUFGcklnc2dDMEVmZFNJTGFpQUxjMEVEU3cwQUlBRXVBYllCSUFFdUFhb0JheUlMSUF0QkgzVWlDMm9nQzNOQkEwc05BQ0FCS0FLQUFTQUJLQUo4UnlFR0N5QURJQVkyQW9RQkFrQWdJQ0FoY2cwQVFRRWhEaUFCTGdHOEFTQUJMZ0d3QVdzaUN5QUxRUjkxSWd0cUlBdHpRUU5MRFFBZ0FTNEJ2Z0VnQVM0QnNnRnJJZ3NnQzBFZmRTSUxhaUFMYzBFRFN3MEFJQUVvQW9BQklBRW9BbnhISVE0TElBTWdEallDcEFFTUFnc2dDQ0VNUVFJTElnSTJBa1FnQXlBQkx3RW1JQXhCLy84RGNYSkJBRWRCQVhRaUREWUNUQ0FEQW44Q1FDQUhSUVJBSUFRRVFFRUNJUlFnQTBFQ05nSmNJQVlOQWtFQURBTUxRUUFoRkNBRFFRQTJBbHhCQUNBR1JRMENHZ3dCQzBFQ0lSUWdBMEVDTmdKY0MwRUNDeUlFTmdKa0lBTkJBaUFPUVFCSFFRRjBJQVliSWdnMkFtd2dBd0ovQWtBZ0lFVUVRQ0FYQkVCQkFpRVhJQU5CQWpZQ2ZDQVpEUUpCQUF3REMwRUFJUmNnQTBFQU5nSjhRUUFnR1VVTkFob01BUXRCQWlFWElBTkJBallDZkF0QkFnc2lCallDaEFFZ0F5QUxJQmh5UVFCSFFRRjBJZ2MyQXF3QklBTWdDeUFRY2tFQVIwRUJkQ0lPTmdLa0FTQURRUUlnRUVFQVIwRUJkQ0FlR3lJUU5nS2NBU0FESUJrZ0lYSkJBRWRCQVhRaUdUWUNqQUVMSUFrZ0ozSWdCWElnRDNJZ0NuSWdFM0lnRzNJZ0ZYSWdFbklnSFhJZ0RYSWdKbklnSEhJZ0VYSWdBbklnREhJZ0ZISWdCSElnQ0hJZ0YzSWdCbklnR1hJZ0VISWdEbklnQjNKRkRRRUxJQUVvQWd3aENTQURJQUVvQWhBaUJTQUJLQUlVSWdScUlnWkJNeUFHUVROSUd5SUdRUUFnQmtFQVNodEIwQmRxTFFBQUlnWTJBaUFnQXlBRUlBbHFJZ0pCTXlBQ1FUTklHeUlDUVFBZ0FrRUFTaHNpQ0VHUUYyb3RBQUFpQWpZQ0hDQURJQWhCQTJ4QmtCaHFJZ2cyQWhnQ1FDQXRSUTBBSUFRZ0FTZ0N6QUVvQWhRaUIwY0VRQ0FESUFRZ0IycEJBV3BCQVhZaUJ5QUZhaUlOUVRNZ0RVRXpTQnNpRFVFQUlBMUJBRW9iUWRBWGFpMEFBRFlDQ0NBRElBY2dDV29pQjBFeklBZEJNMGdiSWdkQkFDQUhRUUJLR3lJSFFaQVhhaTBBQURZQ0JDQURJQWRCQTJ4QmtCaHFOZ0lBREFFTElBTWdCallDQ0NBRElBSTJBZ1FnQXlBSU5nSUFDd0pBSUM1RkRRQWdCQ0FCS0FMSUFTZ0NGQ0lIUndSQUlBTWdCQ0FIYWtFQmFrRUJkaUlFSUFWcUlnVkJNeUFGUVROSUd5SUZRUUFnQlVFQVNodEIwQmRxTFFBQU5nSVVJQU1nQkNBSmFpSUVRVE1nQkVFelNCc2lCRUVBSUFSQkFFb2JJZ1JCa0JkcUxRQUFOZ0lRSUFNZ0JFRURiRUdRR0dvMkFnd01BUXNnQXlBR05nSVVJQU1nQWpZQ0VDQURJQWcyQWd3TElBQW9BZ0FnSHlBNmJDSVVRUWgwYWlBcVFRUjBhaUVKUVFBaEFrRURJUVFnQTBFd2FpRUdBMEFnQmlnQ0JDSUZCRUFnQ1NBRklDTWdHaEFaQ3lBR0tBSU1JZ1VFUUNBSlFRUnFJQVVnSWlBYUVCa0xJQVlvQWhRaUJRUkFJQWxCQ0dvZ0JTQWlJQm9RR1FzZ0JpZ0NIQ0lGQkVBZ0NVRU1haUFGSUNJZ0doQVpDeUFFSVFnQ1FBSkFBa0FnQmlnQ0FDSUVJQVlvQWdnaUQwY05BQ0FFSUFZb0FoQkhEUUFnQkNBR0tBSVlSdzBBSUFSRkRRSWdBeUFDUVF4c2FpSUZLQUlJSVF3Z0JTZ0NCQ0ViSUFSQkJFa05BU0FiUVFKMlFRSnFJUkJCRUNFUElBa2hCQU5BQWtBZ0JDQW9haUlDTFFBQUlnb2dCQzBBQUNJT2F5SUZJQVZCSDNVaUJXb2dCWE1pQnlBYlR3MEFJQVFnTEdvaUVTMEFBQ0lGSUFwcklnMGdEVUVmZFNJTmFpQU5jeUFNVHcwQUlBUWdHbW9pSEMwQUFDSVNJQTVySWcwZ0RVRWZkU0lOYWlBTmN5QU1UdzBBQWtBZ0J5QVFTUVJBSUFRZ0pXb2lGeTBBQUNFVkFuOGdCQ0FyYWlJTkxRQUFJaE1nQ21zaUJ5QUhRUjkxSWdkcUlBZHpJQXhKQkVCQkF5RWRJQUlnRWlBS0lBNXFJQVZxSWdKQkFYUnFJQk5xUVFScVFRTjJPZ0FBSUJFZ0FpQVRha0VDYWtFQ2Rqb0FBQ0FDUVFScUlSRWdCQ0EvYWkwQUFDRUhJQk5CQTJ3TUFRc2dDaUFTYWlFUklBVWhCMEVDSVIwZ0FpRU5RUUlMSVFJZ0RTQUNJQkZxSUFkQkFYUnFJQjEyT2dBQUlCVWdEbXNpQWlBQ1FSOTFJZ0pxSUFKeklBeFBEUUVnQkNBRklBb2dFbW9nRG1vaUFrRUJkR29nRldwQkJHcEJBM1k2QUFBZ0hDQUNJQlZxUVFKcVFRSjJPZ0FBSUJjZ0FpQVZRUU5zYWlBRUlENXFMUUFBUVFGMGFrRUVha0VEZGpvQUFBd0NDeUFDSUFvZ0Vtb2dCVUVCZEdwQkFtcEJBblk2QUFBTElBUWdCU0FPYWlBU1FRRjBha0VDYWtFQ2Rqb0FBQXNnQkVFQmFpRUVJQTlCZjJvaUR3MEFDd3dDQ3dKL0lBUUVRQ0FKSUFRZ0F5QUNRUXhzYWlBYUVCZ2dCaWdDQ0NFUEN5QVBDd1JBSUFsQkJHb2dEeUFESUFKQkRHeHFJQm9RR0FzZ0JpZ0NFQ0lFQkVBZ0NVRUlhaUFFSUFNZ0FrRU1iR29nR2hBWUN5QUdLQUlZSWdSRkRRRWdDVUVNYWlBRUlBTWdBa0VNYkdvZ0doQVlEQUVMSUFRZ0JTZ0NBR3BCZjJvdEFBQWlBa0VCYWlFSFFRQWdBbXNoRGtFUUlROGdDU0VFQTBBQ1FDQUVJQ2hxSWhNdEFBQWlEU0FFTFFBQUlncHJJZ1VnQlVFZmRTSUZhaUFGY3lBYlR3MEFJQVFnTEdvaUVTMEFBQ0lTSUExcklnVWdCVUVmZFNJRmFpQUZjeUFNVHcwQUlBUWdHbW9pRUMwQUFDSVZJQXBySWdVZ0JVRWZkU0lGYWlBRmN5QU1UdzBBSUFJaEJTQUVJQ3RxTFFBQUlod2dEV3NpSFNBZFFSOTFJaDFxSUIxeklBeEpCRUFnRVNBU0lBNGdBaUFLSUExcVFRRnFRUUYySUJKQkFYUnJJQnhxUVFGMUlnVWdCU0FDU2hzZ0JTQU9TQnRxT2dBQUlBY2hCUXNnRXlBTkFuOGdCQ0FsYWkwQUFDSVRJQXBySWhFZ0VVRWZkU0lSYWlBUmN5QU1TUVJBSUJBZ0ZTQU9JQUlnQ2lBTmFrRUJha0VCZGlBVlFRRjBheUFUYWtFQmRTSVRJQk1nQWtvYklCTWdEa2diYWpvQUFDQUZRUUZxSVFVTFFRQWdCV3NpRXdzZ0JTQVNJQlZySUFvZ0RXdEJBblJxUVFScVFRTjFJaElnRWlBRlNoc2dFaUFUU0JzaUJXcEJzQzVxTFFBQU9nQUFJQVFnQ2lBRmEwR3dMbW90QUFBNkFBQUxJQVJCQVdvaEJDQVBRWDlxSWc4TkFBc0xJQWhCZjJvaEJDQUdRU0JxSVFZZ0NTQTlhaUVKUVFJaEFpQUlEUUFMSUFFb0Fnd2hCQ0FESUFFb0FoQWlCU0FCS0FJVUlnWWdBU2dDR0NJQ2FpSUpRVE1nQ1VFelNCc2lDVUVBSUFsQkFFb2JRUUowUWVBOWFpZ0NBQ0lKYWlJSVFUTWdDRUV6U0JzaUNFRUFJQWhCQUVvYlFkQVhhaTBBQUNJSU5nSWdJQU1nQkNBSmFpSUhRVE1nQjBFelNCc2lCMEVBSUFkQkFFb2JJZzFCa0JkcUxRQUFJZ2MyQWh3Z0F5QU5RUU5zUVpBWWFpSU5OZ0lZQWtBZ0xVVU5BQ0FHSUFFb0Fzd0JLQUlVSWd4SEJFQWdBeUFKSUFJZ0RHb2lERUV6SUF4Qk0wZ2JJZ3hCQUNBTVFRQktHMEVDZEVIZ1BXb29BZ0JxUVFGcVFRRjJJZ3dnQldvaUQwRXpJQTlCTTBnYklnOUJBQ0FQUVFCS0cwSFFGMm90QUFBMkFnZ2dBeUFFSUF4cUlneEJNeUFNUVROSUd5SU1RUUFnREVFQVNoc2lERUdRRjJvdEFBQTJBZ1FnQXlBTVFRTnNRWkFZYWpZQ0FBd0JDeUFESUFnMkFnZ2dBeUFITmdJRUlBTWdEVFlDQUFzQ1FDQXVSUTBBSUFZZ0FTZ0N5QUVvQWhRaURFY0VRQ0FESUFVZ0NTQUNJQXhxSWdaQk15QUdRVE5JR3lJR1FRQWdCa0VBU2h0QkFuUkI0RDFxS0FJQWFrRUJha0VCZGlJSmFpSUZRVE1nQlVFelNCc2lCVUVBSUFWQkFFb2JRZEFYYWkwQUFEWUNGQ0FESUFRZ0NXb2lCRUV6SUFSQk0wZ2JJZ1JCQUNBRVFRQktHeUlFUVpBWGFpMEFBRFlDRUNBRElBUkJBMnhCa0JocU5nSU1EQUVMSUFNZ0NEWUNGQ0FESUFjMkFoQWdBeUFOTmdJTUN5QUFLQUlBSUR4cUlCUkJCblJxSUNwQkEzUnFJZ2tnTzJvaEJFRUFJUW9nQTBFd2FpRUdRUUFoQWdOQUlBWW9BZ1FpQlFSQUlBa2dCU0FqSUJZUUVDQUVJQVlvQWdRZ0l5QVdFQkFMSUFZb0FpUWlCUVJBSUFrZ0dtb2dCU0FqSUJZUUVDQUVJQnBxSUFZb0FpUWdJeUFXRUJBTElBWW9BaFFpQlFSQUlBbEJCR29nQlNBaUlCWVFFQ0FFUVFScUlBWW9BaFFnSWlBV0VCQUxJQVlvQWpRaUJRUkFJQWtnR21wQkJHb2dCU0FpSUJZUUVDQUVJQnBxUVFScUlBWW9BalFnSWlBV0VCQUxJQUloQlFKQUFrQWdCaWdDQUNJQ0lBWW9BZ2dpRDBjTkFDQUNJQVlvQWhCSERRQWdBaUFHS0FJWVJ3MEFJQUpGRFFFZ0NTQUNJQU1nQ2tFTWJHb2lBaUFXRUNzZ0JDQUdLQUlBSUFJZ0ZoQXJEQUVMQW44Z0FnUkFJQWtnQWlBRElBcEJER3hxSWdJZ0ZoQVNJQVFnQmlnQ0FDQUNJQllRRWlBR0tBSUlJUThMSUE4TEJFQWdDVUVDYWlBUElBTWdDa0VNYkdvaUFpQVdFQklnQkVFQ2FpQUdLQUlJSUFJZ0ZoQVNDeUFHS0FJUUlnSUVRQ0FKUVFScUlBSWdBeUFLUVF4c2FpSUNJQllRRWlBRVFRUnFJQVlvQWhBZ0FpQVdFQklMSUFZb0FoZ2lBa1VOQUNBSlFRWnFJQUlnQXlBS1FReHNhaUlDSUJZUUVpQUVRUVpxSUFZb0FoZ2dBaUFXRUJJTElBUWdKV29oQkNBSklDVnFJUWtnQmtGQWF5RUdRUUVoQWtFQ0lRb2dCVVVOQUFzTFFRQWdLa0VCYWlJRUlBUWdIMFlpQkJzaEtpQUJRZGdCYWlFQklBUWdPbW9pT2lBQUtBSUlTUTBBQ3dzZ0EwR3dBV29rQUF1Q0JRRUtmeU1BUVpBQmF5SUxKQUFDUUFKQUlBSkJBRWdOQUNBRFFRQklEUUFnQWlBSGFpQUVTdzBBSUFNZ0NHcEJBV29nQlVzTkFDQUZJUXdnQXlFT0RBRUxJQUFnQ3lBQ0lBTWdCQ0FGSUFjZ0NFRUJhaUlNSUFjUURDQUFJQVFnQld4cUlBc2dCeUFNYkdvZ0FpQURJQVFnQlNBSElBd2dCeEFNSUFzaEFDQUhJUVJCQUNFQ0N3SkFJQWhCQVhZaUJVVU5BQ0FIUVFGMklnTkZEUUJCRUNBSGF5RVFRUWdnQm1zaENTQUVRUUYwSWcwZ0Iyc2hFU0FBSUFKcUloSWdCQ0FPYkdvaEJ5QUJJUUlnQlNFSUEwQWdBeUVBQTBBZ0J5QU5haTBBQUNFS0lBSWdDU0FITFFBQWJDQUVJQWRxTFFBQUlnOGdCbXhxUVFOMFFTQnFRUVoyT2dBQUlBSWdDU0FQYkNBR0lBcHNha0VEZEVFZ2FrRUdkam9BQ0NBSFFRRnFJZ29nRFdvdEFBQWhEeUFDSUFrZ0J5MEFBV3dnQkNBS2FpMEFBQ0lLSUFac2FrRURkRUVnYWtFR2Rqb0FBU0FDSUFrZ0Ntd2dCaUFQYkdwQkEzUkJJR3BCQm5ZNkFBa2dBa0VDYWlFQ0lBZEJBbW9oQnlBQVFYOXFJZ0FOQUFzZ0J5QVJhaUVISUFJZ0VHb2hBaUFJUVg5cUlnZ05BQXNnQVVGQWF5RUNJQklnRENBT2FpQUViR29oQndOQUlBTWhBQU5BSUFjZ0RXb3RBQUFoQVNBQ0lBa2dCeTBBQUd3Z0JDQUhhaTBBQUNJSUlBWnNha0VEZEVFZ2FrRUdkam9BQUNBQ0lBZ2dDV3dnQVNBR2JHcEJBM1JCSUdwQkJuWTZBQWdnQjBFQmFpSUJJQTFxTFFBQUlRZ2dBaUFKSUFjdEFBRnNJQUVnQkdvdEFBQWlBU0FHYkdwQkEzUkJJR3BCQm5ZNkFBRWdBaUFCSUFsc0lBWWdDR3hxUVFOMFFTQnFRUVoyT2dBSklBSkJBbW9oQWlBSFFRSnFJUWNnQUVGL2FpSUFEUUFMSUFjZ0VXb2hCeUFDSUJCcUlRSWdCVUYvYWlJRkRRQUxDeUFMUVpBQmFpUUFDLzBFQVF0L0l3QkJrQUZySWd3a0FDQUhRUUZxSVFrQ1FBSkFJQUpCQUVnTkFDQURJQWhxSUFWTERRQWdBMEVBU0EwQUlBSWdDV29nQkVzTkFDQUVJUWtnQXlFTERBRUxJQUFnRENBQ0lBTWdCQ0FGSUFrZ0NDQUpFQXdnQUNBRUlBVnNhaUFNSUFnZ0NXeHFJQUlnQXlBRUlBVWdDU0FJSUFrUURDQU1JUUFnQ0NFRlFRQWhBZ3NDUUNBSVFRRjJJZ2hGRFFBZ0IwRUJkaUlFUlEwQVFSQWdCMnNoRGtFSUlBWnJJUW9nQ1VFQmRDQUhheUVQSUFBZ0Ftb2lFU0FKSUF0c2FpRUNJQUVoQXlBSUlRQURRQ0FFSVFjRFFDQUNRUUZxSUFscUxRQUFJUkFnQWlBSmFpMEFBQ0VOSUFNZ0FpMEFBU0lTSUFac0lBb2dBaTBBQUd4cVFRTjBRU0JxUVFaMk9nQUFJQU1nQmlBUWJDQUtJQTFzYWtFRGRFRWdha0VHZGpvQUNDQUNMUUFDSVEwZ0FrRUNhaUlDSUFscUxRQUFJUk1nQXlBR0lBMXNJQW9nRW14cVFRTjBRU0JxUVFaMk9nQUJJQU1nQmlBVGJDQUtJQkJzYWtFRGRFRWdha0VHZGpvQUNTQURRUUpxSVFNZ0IwRi9haUlIRFFBTElBSWdEMm9oQWlBRElBNXFJUU1nQUVGL2FpSUFEUUFMSUFGQlFHc2hBeUFSSUFVZ0Myb2dDV3hxSVFJRFFDQUVJUWNEUUNBQ1FRRnFJQWxxTFFBQUlRQWdBaUFKYWkwQUFDRUJJQU1nQWkwQUFTSUZJQVpzSUFvZ0FpMEFBR3hxUVFOMFFTQnFRUVoyT2dBQUlBTWdBQ0FHYkNBQklBcHNha0VEZEVFZ2FrRUdkam9BQ0NBQ0xRQUNJUUVnQWtFQ2FpSUNJQWxxTFFBQUlRc2dBeUFCSUFac0lBVWdDbXhxUVFOMFFTQnFRUVoyT2dBQklBTWdCaUFMYkNBQUlBcHNha0VEZEVFZ2FrRUdkam9BQ1NBRFFRSnFJUU1nQjBGL2FpSUhEUUFMSUFJZ0Qyb2hBaUFESUE1cUlRTWdDRUYvYWlJSURRQUxDeUFNUVpBQmFpUUFDN2tIQVFWL0l3QkJFR3NpQkNRQUFrQWdBQ0FCUVFCQnlBQVFCeUlERUFJaUFRMEFRUUVoQVNBREtBSUFRZjhCU3cwQUlBQWdBMEVFYWhBQ0lnRU5BRUVCSVFFZ0F5Z0NCRUVmU3cwQUlBQkJBUkFERFFBZ0FFRUJFQU1pQWtGL1JnMEFJQU1nQWtFQlJqWUNDQ0FBSUFSQkRHb1FBaUlCRFFBZ0F5QUVLQUlNUVFGcUlnRTJBZ3dnQVVFSVN3UkFRUUVoQVF3QkN3SkFJQUZCQWtrTkFDQUFJQU5CRUdvUUFpSUJEUUVnQXlnQ0VDSUJRUVpMSWdJRVFFRUJJUUVNQWdzZ0FnMEFBa0FDUUFKQUFrQWdBVUVCYXc0R0JBRUNBZ0lEQUFzZ0F5QURLQUlNSWdGQkFuUVFDaUlDTmdJVUlBSkZCRUJCLy84RElRRU1CUXNnQVVVTkEwRUFJUUlEUUNBQUlBUkJER29RQWlJQkRRVWdBeWdDRkNBQ1FRSjBhaUFFS0FJTVFRRnFOZ0lBSUFKQkFXb2lBaUFES0FJTVNRMEFDd3dEQ3lBRElBTW9BZ3dpQWtFQ2RFRjhhaUlCRUFvaUJUWUNHQ0FESUFFUUNpSUdOZ0ljUWYvL0F5RUJJQVZGRFFNZ0JrVU5BeUFDUVFGR0RRSkJBQ0VDQTBBZ0FDQUVRUXhxRUFJaUFRMEVJQUpCQW5RaUJTQURLQUlZYWlBRUtBSU1OZ0lBSUFBZ0JFRU1haEFDSWdFTkJDQURLQUljSUFWcUlBUW9BZ3cyQWdBZ0FrRUJhaUlDSUFNb0FneEJmMnBKRFFBTERBSUxRUUVoQVNBQVFRRVFBeUlDUVg5R0RRSWdBeUFDUVFGR05nSWdJQUFnQkVFTWFoQUNJZ0VOQWlBRElBUW9BZ3hCQVdvMkFpUU1BUXNnQUNBRVFReHFFQUlpQVEwQklBTWdCQ2dDREVFQmFpSUJOZ0lvSUFNZ0FVRUNkQkFLSWdJMkFpd2dBa1VFUUVILy93TWhBUXdDQ3lBQlJRMEFJQU1vQWd4QkFuUkJyRHRxS0FJQUlRWkJBQ0VDQTBBZ0FDQUdFQU1oQlNBREtBSXNJQUpCQW5ScUlBVTJBZ0JCQVNFQklBVWdBeWdDREU4TkFpQUNRUUZxSWdJZ0F5Z0NLRWtOQUFzTElBQWdCRUVNYWhBQ0lnRU5BRUVCSVFFZ0JDZ0NEQ0lDUVI5TERRQWdBeUFDUVFGcU5nSXdJQUFnQkVFTWFoQUNJZ0VOQUVFQklRRWdCQ2dDREVFZlN3MEFJQUJCQVJBREJFQU1BUXNnQUVFQ0VBTkJBa3NFUUF3QkN5QUFJQVJCQ0dvUUJTSUJEUUFnQkNnQ0NFRWFhaUlCUVROTEJFQkJBU0VCREFFTElBTWdBVFlDTkNBQUlBUkJDR29RQlNJQkRRQWdCQ2dDQ0VFYWFrRXpTd1JBUVFFaEFRd0JDeUFBSUFSQkNHb1FCU0lCRFFCQkFTRUJJQVFvQWdnaUFrRU1ha0VZU3cwQUlBTWdBallDT0NBQVFRRVFBeUlDUVg5R0RRQWdBeUFDUVFGR05nSThJQUJCQVJBRElnSkJmMFlOQUNBRElBSkJBVVkyQWtBZ0FFRUJFQU1pQWtGL1JnMEFJQU1nQWtFQlJqWUNSQ0FBRUI5QkFDRUJDeUFFUVJCcUpBQWdBUXZxQlFFSmZ3SkFJQUlvQXB3Q1JRUkFEQUVMUVFFaEJnTkFBa0FDUUNBQ0lBVkJGR3hxS0FLZ0FpSUVRUVZMRFFBZ0JFRUJhdzRGQUFBQUFBTUJDeUFGUVFGcUlRVU1BUXNMSUFRaEJnc0Nmd0pBSUFFb0FoQWlCRUVCVFFSQUlBUkJBV3NFUUNBREtBSUFRUVZHQkVBZ0FFSUFOd0lBSUFJb0FoUWhCVUVBSVFRTUF3c2dBQ2dDQUNJRUlBSW9BaFFpQlUwTkFpQUVJQVZySUFFb0FoUWlCMEVCZGtrTkFpQUFLQUlFSUFkcURBTUxRUUFoQlFKL1FRQWdBeWdDQUVFRlJnMEFHaUFBS0FJTUlnY2dBQ2dDQ0NBQ0tBSU1UUTBBR2lBQktBSU1JQWRxQ3lFSFFRQWhCQUovSUFFb0FpUWlDQVJBSUFJb0Fnd2dCMm9oQlFzZ0JTQURLQUlFSWdwRklBVkJBRWR4YXlJSkN3UkFJQWxCZjJvaUF5QURJQWh1SWdzZ0NHeHJJUU1MSUFnRVFDQUJLQUlvSVF4QkFDRUZBMEFnRENBRlFRSjBhaWdDQUNBRWFpRUVJQVZCQVdvaUJTQUlSdzBBQ3dzQ1FDQUpSUVJBUVFBaEJBd0JDeUFFSUF0c0lRUWdBU2dDS0NFSVFRQWhCUU5BSUFnZ0JVRUNkR29vQWdBZ0JHb2hCQ0FGUVFGcUlnVWdBMDBOQUFzTElBcEZCRUFnQVNnQ0hDQUVhaUVFQ3lBR1JRUkFJQUlvQWlBaEF5QUJLQUlnSVFFZ0FpZ0NIQ0VHSUFBZ0J6WUNEQ0FBSUFJb0FndzJBZ2dnQmlBQklBTnFJZ0JCSDNVZ0FIRWdCR3BxRHdzZ0FFSUFOd0lJUVFBUEMwRUFJUVZCQUNFRUlBTW9BZ0JCQlVjRVFDQUFLQUlNSVFVZ0FDZ0NDQ0FDS0FJTUlnUkxCRUFnQVNnQ0RDQUZhaUVGQ3lBRUlBVnFRUUYwSUFNb0FnUkZheUVFQ3lBR1JRUkFJQUFnQlRZQ0RDQUFJQUlvQWd3MkFnZ2dCQThMSUFCQ0FEY0NDRUVBRHdzQ1FDQUZJQVJORFFBZ0JTQUVheUFCS0FJVUlnRkJBWFpORFFBZ0FDZ0NCQ0FCYXd3QkN5QUFLQUlFQ3lFRUlBTW9BZ1JGQkVBZ0JDQUZhaUFDS0FJWUlnQkJIM1VnQUhGcUR3c2dBQ0FFTmdJRUlBSW9BaGdoQVNBR0JFQWdBRUVBTmdJRUlBQkJBQ0FCYXlBQlFSOTFjVFlDQUVFQUR3c2dBQ0FGTmdJQUlBUWdCV29nQVVFZmRTQUJjV29MdkFFQkNIOGdBZ1JBSUFGQmYyb2hCMEVBSUFGclFkZ0JiQ0VJUVFFZ0FXdEIyQUZzSVFrZ0FVRi9jMEhZQVd3aENnTkFJQUFnQmtIWUFXeHFJZ01nQTBHb2ZtcEJBQ0FFR3pZQ3lBRWdBd0ovSUFWRkJFQWdBMEVBTmdMTUFVRUFEQUVMSUFNZ0F5QUlhallDekFFZ0F5QUpha0VBSUFRZ0Iwa2JDellDMEFFZ0F5QURJQXBxUVFBZ0JCdEJBQ0FGR3pZQzFBRkJBQ0FFUVFGcUlnTWdBU0FEUmlJREd5RUVJQU1nQldvaEJTQUdRUUZxSWdZZ0FrY05BQXNMQzNjQkFuOUJBU0VDQWtBZ0FFRUJFQU5CZjBZTkFDQUJJQUJCQWhBRE5nSUVJQUVnQUVFRkVBTWlBRFlDQUNBQVFYNXFRUU5KRFFBQ1FDQUFRUXhMRFFCQkFTQUFkQ0lEUWNBOGNVVUVRQ0FEUWFBRGNVVU5BU0FBUVFaR0RRSWdBU2dDQkEwQkRBSUxJQUVvQWdRTkFRdEJBQ0VDQ3lBQ0M1SVRBUVovSUFBZ0FTZ0NBQ0lOTmdJQUlBQWdBQ2dDeEFGQkFXbzJBc1FCSUFJZ0JSQWRBa0FDUUFKQUFrQUNRQ0FOUVI5R0JFQWdBRUVBTmdJVUlBQW9Bc1FCUVFGTERRRWdBRUVjYWlFSklBRkJ5QUpxSVFSQkZ5RUJJQWNoQUFOQUlBbEJFRHNCQUNBQUlBUW9BZ0E2QUFBZ0FDQUVLQUlFT2dBQklBQWdCQ2dDQ0RvQUFpQUFJQVFvQWd3NkFBTWdBQ0FFS0FJUU9nQUVJQUFnQkNnQ0ZEb0FCU0FBSUFRb0FoZzZBQVlnQUNBRUtBSWNPZ0FISUFBZ0JDZ0NJRG9BQ0NBQUlBUW9BaVE2QUFrZ0FDQUVLQUlvT2dBS0lBQWdCQ2dDTERvQUN5QUFJQVFvQWpBNkFBd2dBQ0FFS0FJME9nQU5JQUFnQkNnQ09Eb0FEaUFBSUFRb0FqdzZBQThnQVNJRFFYOXFJUUVnQ1VFQ2FpRUpJQUJCRUdvaEFDQUVRVUJySVFRZ0F3MEFDeUFDSUFjUUd3d0VDeUFBUVJ4cUlRa2dEUVJBSUFrZ0FTa0NrQUkzQWdBZ0NTQUJLUUcrQWpjQkxpQUpJQUVwQXJnQ053SW9JQWtnQVNrQ3NBSTNBaUFnQ1NBQktRS29BamNDR0NBSklBRXBBcUFDTndJUUlBa2dBU2tDbUFJM0FnZ2dCQ2dDQUNFS0FrQWdBU2dDQ0NJTFJRMEFJQVFnQ2lBTGFpSUtOZ0lBSUFRZ0NrRi9UQVIvSUFwQk5Hb0ZJQXBCTkVnTkFTQUtRVXhxQ3lJS05nSUFDeUFBSUFvMkFoUWdBVUhJRDJvaERDQUJRY2dDYWlFRUFrQUNRQ0FBS0FJQVFRWk5CRUFnQ1M4QkFFVU5BVUVCSVFnZ0JDQUtRUUFnRENnQ0FCQUdSUTBDREFnTElBQXZBVXdFUUNBQlFjZ09haUFLRURFTFFiQTBJUXBCRHlFSUEwQWdDQ0VMSUFRZ0FTQUtLQUlBUVFKMGFrSElEbW9vQWdBaUNEWUNBQUpBQWtBZ0NFVUVRQ0FKTHdFQVJRMEJDMEVCSVFnZ0JDQUFLQUlVUVFFZ0RDZ0NBQkFHUlEwQkRBb0xJQVJCLy8vL0J6WUNBQXNnQ2tFRWFpRUtJQXRCZjJvaENDQU1RUVJxSVF3Z0NVRUNhaUVKSUFSQlFHc2hCQ0FMRFFBTERBUUxJQVJCLy8vL0J6WUNBQXNnQVVHSUEyb2hCQUpBSUFBdkFSNEVRRUVCSVFnZ0JDQUFLQUlVUVFBZ0FVSE1EMm9vQWdBUUJrVU5BUXdIQ3lBRVFmLy8vd2MyQWdBTElBRkJ5QU5xSVFRQ1FDQUFMd0VnQkVCQkFTRUlJQVFnQUNnQ0ZFRUFJQUZCMEE5cUtBSUFFQVpGRFFFTUJ3c2dCRUgvLy84SE5nSUFDeUFCUVlnRWFpRUVBa0FnQUM4QklnUkFRUUVoQ0NBRUlBQW9BaFJCQUNBQlFkUVBhaWdDQUJBR1JRMEJEQWNMSUFSQi8vLy9CellDQUFzZ0FVSElCR29oQkFKQUlBQXZBU1FFUUVFQklRZ2dCQ0FBS0FJVVFRQWdBVUhZRDJvb0FnQVFCa1VOQVF3SEN5QUVRZi8vL3djMkFnQUxJQUZCaUFWcUlRUUNRQ0FBTHdFbUJFQkJBU0VJSUFRZ0FDZ0NGRUVBSUFGQjNBOXFLQUlBRUFaRkRRRU1Cd3NnQkVILy8vOEhOZ0lBQ3lBQlFjZ0ZhaUVFQWtBZ0FDOEJLQVJBUVFFaENDQUVJQUFvQWhSQkFDQUJRZUFQYWlnQ0FCQUdSUTBCREFjTElBUkIvLy8vQnpZQ0FBc2dBVUdJQm1vaEJBSkFJQUF2QVNvRVFFRUJJUWdnQkNBQUtBSVVRUUFnQVVIa0Qyb29BZ0FRQmtVTkFRd0hDeUFFUWYvLy93YzJBZ0FMSUFGQnlBWnFJUVFDUUNBQUx3RXNCRUJCQVNFSUlBUWdBQ2dDRkVFQUlBRkI2QTlxS0FJQUVBWkZEUUVNQndzZ0JFSC8vLzhITmdJQUN5QUJRWWdIYWlFRUFrQWdBQzhCTGdSQVFRRWhDQ0FFSUFBb0FoUkJBQ0FCUWV3UGFpZ0NBQkFHUlEwQkRBY0xJQVJCLy8vL0J6WUNBQXNnQVVISUIyb2hCQUpBSUFBdkFUQUVRRUVCSVFnZ0JDQUFLQUlVUVFBZ0FVSHdEMm9vQWdBUUJrVU5BUXdIQ3lBRVFmLy8vd2MyQWdBTElBRkJpQWhxSVFRQ1FDQUFMd0V5QkVCQkFTRUlJQVFnQUNnQ0ZFRUFJQUZCOUE5cUtBSUFFQVpGRFFFTUJ3c2dCRUgvLy84SE5nSUFDeUFCUWNnSWFpRUVBa0FnQUM4Qk5BUkFRUUVoQ0NBRUlBQW9BaFJCQUNBQlFmZ1BhaWdDQUJBR1JRMEJEQWNMSUFSQi8vLy9CellDQUFzZ0FVR0lDV29oQkFKQUlBQXZBVFlFUUVFQklRZ2dCQ0FBS0FJVVFRQWdBVUg4RDJvb0FnQVFCa1VOQVF3SEN5QUVRZi8vL3djMkFnQUxJQUZCeUFscUlRUUNRQ0FBTHdFNEJFQkJBU0VJSUFRZ0FDZ0NGRUVBSUFGQmdCQnFLQUlBRUFaRkRRRU1Cd3NnQkVILy8vOEhOZ0lBQ3lBQlFZZ0thaUVFQWtBZ0FDOEJPZ1JBUVFFaENDQUVJQUFvQWhSQkFDQUJRWVFRYWlnQ0FCQUdSUTBCREFjTElBUkIvLy8vQnpZQ0FBc2dBVUdJRUdvaERDQUJRY2dLYWlFRURBSUxJQWxDQURjQ0FDQUpRZ0EzQVM0Z0NVSUFOd0lvSUFsQ0FEY0NJQ0FKUWdBM0FoZ2dDVUlBTndJUUlBbENBRGNDQ0NBQUlBUW9BZ0EyQWhRTUFnc2dBRUtRZ01DQWdJS0FDRGNCSENBQVFwQ0F3SUNBZ29BSU53RkVJQUJDa0lEQWdJQ0NnQWczQVR3Z0FFS1FnTUNBZ0lLQUNEY0JOQ0FBUXBDQXdJQ0Fnb0FJTndFc0lBQkNrSURBZ0lDQ2dBZzNBU1JCQUE4TElBQW9BaGdnQUNnQ0ZHb2lDMEV6SUF0Qk0wZ2JJZ3RCQUNBTFFRQktHMEVDZEVIZ1BXb29BZ0FoQ1FKQUlBQXZBVTVGQkVBZ0FDOEJVRVVOQVFzZ0FVR0lEMm9nQ1JBd0N5QUVJQUZCaUE5cUtBSUFJZ3MyQWdBQ1FBSkFJQXRGQkVBZ0FDOEJQRVVOQVF0QkFTRUlJQVFnQ1VFQklBd29BZ0FRQmtVTkFRd0VDeUFFUWYvLy93YzJBZ0FMSUFRZ0FTZ0NqQThpQ3pZQ1FDQUVRVUJySVFvQ1FBSkFJQXRGQkVBZ0FDOEJQa1VOQVF0QkFTRUlJQW9nQ1VFQklBd29BZ1FRQmtVTkFRd0VDeUFLUWYvLy93YzJBZ0FMSUFRZ0FTZ0NrQThpQ3pZQ2dBRWdCRUdBQVdvaENnSkFBa0FnQzBVRVFDQUFRVUJyTHdFQVJRMEJDMEVCSVFnZ0NpQUpRUUVnRENnQ0NCQUdSUTBCREFRTElBcEIvLy8vQnpZQ0FBc2dCQ0FCS0FLVUR5SUxOZ0xBQVNBRVFjQUJhaUVLQWtBQ1FDQUxSUVJBSUFBdkFVSkZEUUVMUVFFaENDQUtJQWxCQVNBTUtBSU1FQVpGRFFFTUJBc2dDa0gvLy84SE5nSUFDeUFFSUFFb0FwZ1BJZ3MyQW9BQ0lBUkJnQUpxSVFvQ1FBSkFJQXRGQkVBZ0FDOEJSRVVOQVF0QkFTRUlJQW9nQ1VFQklBd29BaEFRQmtVTkFRd0VDeUFLUWYvLy93YzJBZ0FMSUFRZ0FTZ0NuQThpQ3pZQ3dBSWdCRUhBQW1vaENnSkFBa0FnQzBVRVFDQUFMd0ZHUlEwQkMwRUJJUWdnQ2lBSlFRRWdEQ2dDRkJBR1JRMEJEQVFMSUFwQi8vLy9CellDQUFzZ0JDQUJLQUtnRHlJTE5nS0FBeUFFUVlBRGFpRUtBa0FDUUNBTFJRUkFJQUF2QVVoRkRRRUxRUUVoQ0NBS0lBbEJBU0FNS0FJWUVBWkZEUUVNQkFzZ0NrSC8vLzhITmdJQUN5QUVJQUVvQXFRUElnczJBc0FESUFSQndBTnFJUVFDUUFKQUlBdEZCRUFnQUM4QlNrVU5BUXRCQVNFSUlBUWdDVUVCSUF3b0Fod1FCa1VOQVF3RUN5QUVRZi8vL3djMkFnQUxJQTFCQmtrTkFDQUFJQUVnQWlBRklBWWdCeEJXSWdoRkRRRU1BZ3NnQUNBQklBTWdCU0FDSUFjUVZ5SUlEUUVMUVFBaENBc2dDQXVXSFFFSGZ5TUFRUkJySWdja0FDQUJRUUJCcUJBUUJ5RUZJQUFnQjBFRWFoQUNJUUVnQnlnQ0JDRUlBa0FDUUFKQUlBTkJmbW9pQTBFRlN3MEFBa0FnQTBFQmF3NEVBUUVCQVFBTFFRRWhBeUFCRFFJZ0NFRUdhaUlHUVI5TkRRRU1BZ3RCQVNFRElBRU5BU0FJUVFGcUlnWkJIMHNOQVFzZ0JTQUdOZ0lBQWtBZ0JrRWZSZ1JBQTBBZ0FDZ0NDQVJBSUFCQkFSQURSUTBCREFRTEN5QUZRY2dDYWlFR0EwQWdCeUFBUVFnUUF5SUJOZ0lFSUFGQmYwWU5BeUFHSUFFMkFnQWdCa0VFYWlFR0lBbEJBV29pQ1VHQUEwY05BQXNNQVF0QkFpQUdRUVpISUFaQkJra2JJUW9DUUFKQUlBWkJCRWtOQUNBR1FRVkxEUUFnQUNBSFFReHFFQUlOQVNBSEtBSU1JZ0ZCQTBzTkFTQUZJQUUyQXJBQklBQWdCMEVNYWhBQ0RRRWdCeWdDRENJQlFRTkxEUUVnQlNBQk5nSzBBU0FBSUFkQkRHb1FBZzBCSUFjb0Fnd2lBVUVEU3cwQklBVWdBVFlDdUFFZ0FDQUhRUXhxRUFJTkFTQUhLQUlNSWdGQkEwc05BU0FGSUFFMkFyd0JBa0FnQkVFQ1NRMEFJQVpCQlVZTkFDQUFJQWRCREdvZ0JFRUNTeUlCRUJjTkFpQUhLQUlNSWdnZ0JFOE5BaUFGSUFnMkFzQUJJQUFnQjBFTWFpQUJFQmNOQWlBSEtBSU1JZ2dnQkU4TkFpQUZJQWcyQXNRQklBQWdCMEVNYWlBQkVCY05BaUFIS0FJTUlnZ2dCRThOQWlBRklBZzJBc2dCSUFBZ0IwRU1haUFCRUJjTkFpQUhLQUlNSWdFZ0JFOE5BaUFGSUFFMkFzd0JDeUFISUFVb0FyQUJJZ0ZCQWswRWZ5QUJRUUowUWZBMGFpZ0NBQVZCQXdzMkFneEJBQ0VHQTBBZ0FDQUhRUWhxRUFVaUF3MENJQVVnQmtFQ2RHb2lBU0FIS0FJSU93SFFBU0FBSUFkQkNHb1FCU0lERFFJZ0FTQUhLQUlJT3dIU0FTQUhJQWNvQWd3aUFVRi9hallDRENBR1FRRnFJUVlnQVEwQUN5QUhJQVVvQXJRQklnRkJBazBFZnlBQlFRSjBRZkEwYWlnQ0FBVkJBd3MyQWd4QkFDRUdBMEFnQUNBSFFRaHFFQVVpQXcwQ0lBVWdCa0VDZEdvaUFTQUhLQUlJT3dIZ0FTQUFJQWRCQ0dvUUJTSUREUUlnQVNBSEtBSUlPd0hpQVNBSElBY29BZ3dpQVVGL2FqWUNEQ0FHUVFGcUlRWWdBUTBBQ3lBSElBVW9BcmdCSWdGQkFrMEVmeUFCUVFKMFFmQTBhaWdDQUFWQkF3czJBZ3hCQUNFR0EwQWdBQ0FIUVFocUVBVWlBdzBDSUFVZ0JrRUNkR29pQVNBSEtBSUlPd0h3QVNBQUlBZEJDR29RQlNJRERRSWdBU0FIS0FJSU93SHlBU0FISUFjb0Fnd2lBVUYvYWpZQ0RDQUdRUUZxSVFZZ0FRMEFDeUFISUFVb0Fyd0JJZ0ZCQWswRWZ5QUJRUUowUWZBMGFpZ0NBQVZCQXdzMkFneEJBQ0VHQTBBZ0FDQUhRUWhxRUFVaUF3MENJQVVnQmtFQ2RHb2lBU0FIS0FJSU93R0FBaUFBSUFkQkNHb1FCU0lERFFJZ0FTQUhLQUlJT3dHQ0FpQUhJQWNvQWd3aUFVRi9hallDRENBR1FRRnFJUVpCQUNFRElBRU5BQXNNQVF0QkFDRURJQXBCQWtzTkFBSkFBbjhDUUFKQUFrQWdDa0VCYXc0Q0JBRUFDeUFIUVFBMkFnZ2dCU0FBRUE4aUFVRWZkallDRENBQlFRQk9EUUVnQVVFQmRDRUdRUUFNQWdzZ0JFRUNUd1JBUVFNaEFTQUdRUU5OQkVBZ0JrRUNkRUg4Tkdvb0FnQWhBUXNnQkVFQ1N5RUxRUUVoQXdOQUlBQWdCMEVNYWlBTEVCY05CU0FIS0FJTUlnZ2dCRThOQlNBRklBbEJBblJxSUFnMkFwQUJJQUVpQ0VGL2FpRUJJQWxCQVdvaENTQUlEUUFMQzBFRElRTWdCa0VEVFFSQUlBWkJBblJCL0RScUtBSUFJUU1MUVFBaEJnTkFJQU1oQVNBQUlBZEJDR29RQlNJRERRUWdCU0FHUVFKMGFpSUVJQWNvQWdnN0FhQUJJQUFnQjBFSWFoQUZJZ01OQkNBRUlBY29BZ2c3QWFJQklBRkJmMm9oQXlBR1FRRnFJUVlnQVEwQUMwRUFJUU1NQXdzZ0JTQUJRUngyTmdKTUlBRkJCSFFoQmtFQkN5RURJQVVnQmtFZmRqWUNFQ0FGSUFaQkFFZ0VmeUFHUVFGMEJTQUZJQVpCSEhZMkFsQWdBMEVCYWlFRElBWkJCSFFMSWdGQkgzWTJBaFFnQlNBQlFRQklCSDhnQVVFQmRBVWdCU0FCUVJ4Mk5nSlVJQU5CQVdvaEF5QUJRUVIwQ3lJQlFSOTJOZ0lZSUFVZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNXQ0FEUVFGcUlRTWdBVUVFZEFzaUFVRWZkallDSENBRklBRkJBRWdFZnlBQlFRRjBCU0FGSUFGQkhIWTJBbHdnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWlBZ0JTQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0pnSUFOQkFXb2hBeUFCUVFSMEN5SUJRUjkyTmdJa0lBVWdBVUVBU0FSL0lBRkJBWFFGSUFVZ0FVRWNkallDWkNBRFFRRnFJUU1nQVVFRWRBc2lBVUVmZGpZQ0tDQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0pvSUFOQkFXb2hBeUFCUVFSMEN5RUdBa0FnQUNBRFFRTnNRUWhxRUF0QmYwWU5BQ0FIUVFFMkFnZ2dCU0FBRUE4aUFVRWZkallDTEFKL0lBRkJBRWdFUUNBQlFRRjBJUVpCQUF3QkN5QUZJQUZCSEhZMkFtd2dBVUVFZENFR1FRRUxJUU1nQlNBR1FSOTJOZ0l3SUFVZ0JrRUFTQVIvSUFaQkFYUUZJQVVnQmtFY2RqWUNjQ0FEUVFGcUlRTWdCa0VFZEFzaUFVRWZkallDTkNBRklBRkJBRWdFZnlBQlFRRjBCU0FGSUFGQkhIWTJBblFnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWpnZ0JTQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0o0SUFOQkFXb2hBeUFCUVFSMEN5SUJRUjkyTmdJOElBVkJRR3NnQVVFQVNBUi9JQUZCQVhRRklBVWdBVUVjZGpZQ2ZDQURRUUZxSVFNZ0FVRUVkQXNpQVVFZmRqWUNBQ0FGSUFGQkFFZ0VmeUFCUVFGMEJTQUZJQUZCSEhZMkFvQUJJQU5CQVdvaEF5QUJRUVIwQ3lJQlFSOTJOZ0pFSUFVZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNoQUVnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWtnZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNpQUVnQTBFQmFpRURJQUZCQkhRTElRWWdBQ0FEUVFOc1FRaHFFQXRCZjBZTkFDQUhJQVkyQWd3Z0IwRUNOZ0lJREFFTElBY2dCallDREVFQklRTU1BUXRCQVNFRElBQWdCMEVNYWhBQ0RRQWdCeWdDRENJQlFRTkxEUUFnQlNBQk5nS01BVUVBSVFNTElBTU5BUUpBSUFwQkFVY0VRQ0FBSUFkQkJHb2dDa1VRTFNJRERRTWdCU0FIS0FJRUlnRTJBZ1FnQVVVTkFnd0JDeUFGSUFVb0FnQWlBVUY1YWlJRFFRSjBRWEJ4SWdSQlVHb2dCQ0FEUVF0TEcwRVBRUUFnQVVFU1N4dHlOZ0lFQzBFQklRTWdBQ0FIUVF4cUVBVU5BU0FIS0FJTUlnRkJHbXBCTTBzTkFTQUZJQUUyQWdnZ0JVR1FBbW9oQ0NBRktBSUVJUVFDUUFKQUlBVW9BZ0JCQjBrRVFFRUFJUWxCQXlFREEwQWdBeUVCSUFSQkFYRUVRQ0FJSUFsQkFuUnFRYmdOYWlBQUlBZ2dDVUVHZEdwQk9Hb2dBaUFKSUFnUURVRVFFQWtpQTBFUWRqWUNBQ0FEUVE5eERRUWdDQ0FKUVFGMGFpQURRUVIyUWY4QmNUc0JBQ0FJSUFsQkFYSWlCa0VDZEdwQnVBMXFJQUFnQ0NBR1FRWjBha0U0YWlBQ0lBWWdDQkFOUVJBUUNTSURRUkIyTmdJQUlBTkJEM0VOQkNBSUlBWkJBWFJxSUFOQkJIWkIvd0Z4T3dFQUlBZ2dDVUVDY2lJR1FRSjBha0c0RFdvZ0FDQUlJQVpCQm5ScVFUaHFJQUlnQmlBSUVBMUJFQkFKSWdOQkVIWTJBZ0FnQTBFUGNRMEVJQWdnQmtFQmRHb2dBMEVFZGtIL0FYRTdBUUFnQ0NBSlFRTnlJZ1pCQW5ScVFiZ05haUFBSUFnZ0JrRUdkR3BCT0dvZ0FpQUdJQWdRRFVFUUVBa2lBMEVRZGpZQ0FDQURRUTl4RFFRZ0JTQUdRUUYwYWlBRFFRUjJRZjhCY1RzQmtBSUxJQVJCQVhZaEJDQUJRWDlxSVFNZ0NVRUVhaUVKSUFFTkFBc01BUXRCQUNFSklBQWdCVUhJRG1vZ0FrRUFJQWdRRFVFUUVBa2lBMEVQY1EwQklBVWdBMEVFZGtIL0FYRTdBY0FDSUFWQmtBSnFJUVpCQXlFREEwQWdBeUVCSUFSQkFYRUVRQ0FHSUFsQkFuUnFRYmdOYWlBQUlBWWdDVUVHZEdwQlBHb2dBaUFKSUFnUURVRVBFQWtpQTBFUGRqWUNBQ0FEUVE5eERRTWdCaUFKUVFGMGFpQURRUVIyUWY4QmNUc0JBQ0FHSUFsQkFYSWlDa0VDZEdwQnVBMXFJQUFnQmlBS1FRWjBha0U4YWlBQ0lBb2dDQkFOUVE4UUNTSURRUTkyTmdJQUlBTkJEM0VOQXlBR0lBcEJBWFJxSUFOQkJIWkIvd0Z4T3dFQUlBWWdDVUVDY2lJS1FRSjBha0c0RFdvZ0FDQUdJQXBCQm5ScVFUeHFJQUlnQ2lBSUVBMUJEeEFKSWdOQkQzWTJBZ0FnQTBFUGNRMERJQVlnQ2tFQmRHb2dBMEVFZGtIL0FYRTdBUUFnQmlBSlFRTnlJZ3BCQW5ScVFiZ05haUFBSUFZZ0NrRUdkR3BCUEdvZ0FpQUtJQWdRRFVFUEVBa2lBMEVQZGpZQ0FDQURRUTl4RFFNZ0JTQUtRUUYwYWlBRFFRUjJRZjhCY1RzQmtBSUxJQVJCQVhZaEJDQUJRWDlxSVFNZ0NVRUVhaUVKSUFFTkFBc0xJQVJCQTNFRVFDQUFJQVZCaUE5cVFYOUJCQkFKSWdOQkQzRU5BU0FGSUFOQkJIWkIvd0Z4T3dIQ0FpQUFJQVZCbUE5cVFYOUJCQkFKSWdOQkQzRU5BU0FGSUFOQkJIWkIvd0Z4T3dIRUFndEJBQ0VESUFSQkFuRkZEUUFnQUNBRlFjd0thaUFDUVJBZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCaUJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0JzQUlnQUNBRlFZd0xhaUFDUVJFZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCakJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0JzZ0lnQUNBRlFjd0xhaUFDUVJJZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCa0JCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J0QUlnQUNBRlFZd01haUFDUVJNZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbEJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J0Z0lnQUNBRlFjd01haUFDUVJRZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbUJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J1QUlnQUNBRlFZd05haUFDUVJVZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbkJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J1Z0lnQUNBRlFjd05haUFDUVJZZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCb0JCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J2QUlnQUNBRlFZd09haUFDUVJjZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCcEJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J2Z0lMSUFBZ0FDZ0NDQ0FBS0FJRUlBQW9BZ0JyUVFOMGFqWUNFQ0FERFFFTFFRQWhBd3NnQjBFUWFpUUFJQU1McFJRQkRIOENmeUFBS0FMSUFTSUhCRUFnQUNnQ0JDQUhLQUlFUmd3QkMwRUFDeUVLQWtBZ0JrVU5BQ0FLUlEwQVFRQWdDa0VDSUFBb0FzZ0JLQUlBSWdkQkJrY2dCMEVHU1J0QkFrWWJJUW9MQW44Z0FDZ0N6QUVpQndSQUlBQW9BZ1FnQnlnQ0JFWU1BUXRCQUFzaEJ3SkFJQVpGRFFBZ0IwVU5BRUVBSUFkQkFpQUFLQUxNQVNnQ0FDSUhRUVpISUFkQkJra2JRUUpHR3lFSEN3Si9JQUFvQXRRQklna0VRQ0FBS0FJRUlBa29BZ1JHREFFTFFRQUxJUWtDUUNBR1JRMEFJQWxGRFFCQkFpQUFLQUxVQVNnQ0FDSUFRUVpISUFCQkJra2JRUUpISVFrTElBcEJBRWNnQjBFQVIzRWlEU0FKUVFCSGNTRU9JQVZCQWtzaEQwRVFJUXNEUUFKQUlBOUZCRUFDUUFKQUFrQWdCVUVCYXc0Q0FRSUFDeUFCQW44Z0RRUkFJQVF0QUFNZ0JDMEFBaUFFTFFBQklBUXRBQUFnQXkwQUJDQURMUUFESUFNdEFBRWdBeTBBQW1wcWFtcHFhbXBCQkdwQkEzWWhCaUFETFFBSUlBTXRBQWNnQXkwQUJTQURMUUFHYW1wcVFRSnFRUUoyREFFTElBY0VRQ0FETFFBRUlBTXRBQU1nQXkwQUFTQURMUUFDYW1wcVFRSnFRUUoySVFZZ0F5MEFDQ0FETFFBSElBTXRBQVVnQXkwQUJtcHFha0VDYWtFQ2Rnd0JDeUFLUlFSQVFZQUJJUVpCZ0FFTUFRc2dCQzBBQXlBRUxRQUNJQVF0QUFBZ0JDMEFBV3BxYWtFQ2FrRUNkaUlHQzBIL0FYRkJnWUtFQ0d3aUFEWUFIQ0FCSUFaQi93RnhRWUdDaEFoc0lnWTJBQmdnQVNBQU5nQVVJQUVnQmpZQUVDQUJJQUEyQUF3Z0FTQUdOZ0FJSUFFZ0FEWUFCQ0FCSUFZMkFBQUNmeUFLQkVBZ0JDMEFCeUFFTFFBR0lBUXRBQVVnQkMwQUJHcHFhaUlHUVFKcVFRSjJJZ0FnQjBVTkFSb2dBeTBBQ0NBRExRQUhJQU10QUFZZ0JpQURMUUFGYW1wcWFrRUVha0VEZGd3QkN5QUhSUVJBUVlBQklRQkJnQUVNQVFzZ0F5MEFCQ0FETFFBRElBTXRBQUVnQXkwQUFtcHFha0VDYWtFQ2RpRUFJQU10QUFnZ0F5MEFCeUFETFFBRklBTXRBQVpxYW1wQkFtcEJBbllMSVFZZ0FTQUFRZjhCY1VHQmdvUUliQ0lBTmdBZ0lBRWdCa0gvQVhGQmdZS0VDR3dpQmpZQVBDQUJJQUEyQURnZ0FTQUdOZ0EwSUFFZ0FEWUFNQ0FCSUFZMkFDd2dBU0FBTmdBb0lBRWdCallBSkF3REN5QUtSUVJBUVFFUEN5QUJJQVF0QUFBNkFBQWdBU0FFTFFBQU9nQUJJQUVnQkMwQUFEb0FBaUFCSUFRdEFBQTZBQU1nQVNBRUxRQUFPZ0FFSUFFZ0JDMEFBRG9BQlNBQklBUXRBQUE2QUFZZ0FTQUVMUUFBT2dBSElBRWdCQzBBQVRvQUNDQUJJQVF0QUFFNkFBa2dBU0FFTFFBQk9nQUtJQUVnQkMwQUFUb0FDeUFCSUFRdEFBRTZBQXdnQVNBRUxRQUJPZ0FOSUFFZ0JDMEFBVG9BRGlBQklBUXRBQUU2QUE4Z0FTQUVMUUFDT2dBUUlBRWdCQzBBQWpvQUVTQUJJQVF0QUFJNkFCSWdBU0FFTFFBQ09nQVRJQUVnQkMwQUFqb0FGQ0FCSUFRdEFBSTZBQlVnQVNBRUxRQUNPZ0FXSUFFZ0JDMEFBam9BRnlBQklBUXRBQU02QUJnZ0FTQUVMUUFET2dBWklBRWdCQzBBQXpvQUdpQUJJQVF0QUFNNkFCc2dBU0FFTFFBRE9nQWNJQUVnQkMwQUF6b0FIU0FCSUFRdEFBTTZBQjRnQVNBRUxRQURPZ0FmSUFFZ0JDMEFCRG9BSUNBQklBUXRBQVE2QUNFZ0FTQUVMUUFFT2dBaUlBRWdCQzBBQkRvQUl5QUJJQVF0QUFRNkFDUWdBU0FFTFFBRU9nQWxJQUVnQkMwQUJEb0FKaUFCSUFRdEFBUTZBQ2NnQVNBRUxRQUZPZ0FvSUFFZ0JDMEFCVG9BS1NBQklBUXRBQVU2QUNvZ0FTQUVMUUFGT2dBcklBRWdCQzBBQlRvQUxDQUJJQVF0QUFVNkFDMGdBU0FFTFFBRk9nQXVJQUVnQkMwQUJUb0FMeUFCSUFRdEFBWTZBREFnQVNBRUxRQUdPZ0F4SUFFZ0JDMEFCam9BTWlBQklBUXRBQVk2QURNZ0FTQUVMUUFHT2dBMElBRWdCQzBBQmpvQU5TQUJJQVF0QUFZNkFEWWdBU0FFTFFBR09nQTNJQUVnQkMwQUJ6b0FPQ0FCSUFRdEFBYzZBRGtnQVNBRUxRQUhPZ0E2SUFFZ0JDMEFCem9BT3lBQklBUXRBQWM2QUR3Z0FTQUVMUUFIT2dBOUlBRWdCQzBBQnpvQVBpQUJJQVF0QUFjNkFEOE1BZ3NnQjBVRVFFRUJEd3NnQVNBRExRQUJPZ0FBSUFFZ0F5MEFBVG9BQ0NBQklBTXRBQUU2QUJBZ0FTQURMUUFCT2dBWUlBRWdBeTBBQVRvQUlDQUJJQU10QUFFNkFDZ2dBU0FETFFBQk9nQXdJQUVnQXkwQUFUb0FPQ0FCSUFNdEFBSTZBQUVnQVNBRExRQUNPZ0FKSUFFZ0F5MEFBam9BRVNBQklBTXRBQUk2QUJrZ0FTQURMUUFDT2dBaElBRWdBeTBBQWpvQUtTQUJJQU10QUFJNkFERWdBU0FETFFBQ09nQTVJQUVnQXkwQUF6b0FBaUFCSUFNdEFBTTZBQW9nQVNBRExRQURPZ0FTSUFFZ0F5MEFBem9BR2lBQklBTXRBQU02QUNJZ0FTQURMUUFET2dBcUlBRWdBeTBBQXpvQU1pQUJJQU10QUFNNkFEb2dBU0FETFFBRU9nQURJQUVnQXkwQUJEb0FDeUFCSUFNdEFBUTZBQk1nQVNBRExRQUVPZ0FiSUFFZ0F5MEFCRG9BSXlBQklBTXRBQVE2QUNzZ0FTQURMUUFFT2dBeklBRWdBeTBBQkRvQU95QUJJQU10QUFVNkFBUWdBU0FETFFBRk9nQU1JQUVnQXkwQUJUb0FGQ0FCSUFNdEFBVTZBQndnQVNBRExRQUZPZ0FrSUFFZ0F5MEFCVG9BTENBQklBTXRBQVU2QURRZ0FTQURMUUFGT2dBOElBRWdBeTBBQmpvQUJTQUJJQU10QUFZNkFBMGdBU0FETFFBR09nQVZJQUVnQXkwQUJqb0FIU0FCSUFNdEFBWTZBQ1VnQVNBRExRQUdPZ0F0SUFFZ0F5MEFCam9BTlNBQklBTXRBQVk2QUQwZ0FTQURMUUFIT2dBR0lBRWdBeTBBQnpvQURpQUJJQU10QUFjNkFCWWdBU0FETFFBSE9nQWVJQUVnQXkwQUJ6b0FKaUFCSUFNdEFBYzZBQzRnQVNBRExRQUhPZ0EySUFFZ0F5MEFCem9BUGlBQklBTXRBQWc2QUFjZ0FTQURMUUFJT2dBUElBRWdBeTBBQ0RvQUZ5QUJJQU10QUFnNkFCOGdBU0FETFFBSU9nQW5JQUVnQXkwQUNEb0FMeUFCSUFNdEFBZzZBRGNnQVNBRExRQUlPZ0EvREFFTElBNUZCRUJCQVE4TElBTXRBQVVnQXkwQUEyc2dBeTBBQmlBRExRQUNhMEVCZEdvZ0F5MEFCeUFETFFBQmEwRURiR29nQXkwQUNDSUFJQU10QUFBaUNXdEJBblJxUVJGc1FSQnFRUVYxSWdaQmZXd2hFQ0FBSUFRdEFBY2lER3BCQkhRZ0JDMEFCQ0FFTFFBQ2F5QU1JQWxyUVFKMGFpQUVMUUFGSUFRdEFBRnJRUUYwYWlBRUxRQUdJQVF0QUFCclFRTnNha0VSYkVFUWFrRUZkU0lSUVgxc2FrRVFhaUVKUVFnaERDQUJJUUFEUUNBQUlBa2dFR29pQ0VFRmRVR3dMbW90QUFBNkFBQWdBQ0FHSUFocUlnaEJCWFZCc0M1cUxRQUFPZ0FCSUFBZ0JpQUlhaUlJUVFWMVFiQXVhaTBBQURvQUFpQUFJQVlnQ0dvaUNFRUZkVUd3TG1vdEFBQTZBQU1nQUNBR0lBaHFJZ2hCQlhWQnNDNXFMUUFBT2dBRUlBQWdCaUFJYWlJSVFRVjFRYkF1YWkwQUFEb0FCU0FBSUFZZ0NHb2lDRUVGZFVHd0xtb3RBQUE2QUFZZ0FDQUdJQWhxUVFWMVFiQXVhaTBBQURvQUJ5QUpJQkZxSVFrZ0FFRUlhaUVBSUF4QmYyb2lEQTBBQ3dzZ0FTQUNJQXNRQ0NBQklBSkJRR3NnQzBFQmNoQUlJQUVnQWtHQUFXb2dDMEVDY2hBSUlBRWdBa0hBQVdvZ0MwRURjaEFJSUFKQmdBSnFJUUlnQkVFSWFpRUVJQU5CQ1dvaEF5QUJRVUJySVFFZ0MwRUVhaUVMSUJKQkFXb2lFa0VDUncwQUMwRUFDNkVWQWhoL0FuNENmd05BQW44Z0FDSUlJQlpCQTNSQnNEVnFLUUlBSWg2bkVCRWlDU0lHQkVBZ0NDZ0NCQ0FHS0FJRVJnd0JDMEVBQ3lFTkFrQWdCVVVOQUNBTlJRMEFRUUFnRFVFQ0lBa29BZ0FpQmtFR1J5QUdRUVpKRzBFQ1Joc2hEUXNDZnlBSUlCWkJBM1JCOERacUtRSUFJaCtuRUJFaUJ5SUdCRUFnQ0NnQ0JDQUdLQUlFUmd3QkMwRUFDeUVQQWtBZ0JVVU5BQ0FQUlEwQVFRQWdEMEVDSUFjb0FnQWlCa0VHUnlBR1FRWkpHMEVDUmhzaER3dEJBaUVNSUExQkFFY2dEMEVBUjNFaUVrRUJSZ1JBUVFJaEJnSi9RUUlnQ1NnQ0FDSUxRUVpISUF0QkJra2JSUVJBSUFrZ0hrSWdpS2RCL3dGeGFpMEFVaUVHQ3lBR0N3Si9RUUlnQnlnQ0FDSUpRUVpISUFsQkJra2JSUVJBSUFjZ0gwSWdpS2RCL3dGeGFpMEFVaUVNQ3lBTUN5QUdJQXhKR3lFTUN5QUNJQlpCQW5RaUNXb2lCaWdDREVVRVFDQUdLQUpNSWdZZ0JpQU1UMm9oREFzZ0NDQVdhaUFNT2dCU0FuOGdDQ0FXUVFOMFFiQTRhaWdDQUJBUklnWWlCd1JBSUFnb0FnUWdCeWdDQkVZTUFRdEJBQXNoRGdKQUlBVkZEUUFnRGtVTkFFRUFJQTVCQWlBR0tBSUFJZ1pCQmtjZ0JrRUdTUnRCQWtZYklRNExBbjhnQUNBV1FRTjBRZkE1YWlnQ0FCQVJJZ2dpQmdSQUlBQW9BZ1FnQmlnQ0JFWU1BUXRCQUFzaEVRSkFJQVZGRFFBZ0VVVU5BRUVBSUJGQkFpQUlLQUlBSWdoQkJrY2dDRUVHU1J0QkFrWWJJUkVMSUFsQjhDbHFLQUlBSVJjZ0NVR3dLV29vQWdBaEdBSi9RWVVLSUJaMlFRRnhJaHdFUUNBWFFRTnFJUWNnQkNBWGFpSUlRUUpxSVFZZ0NFRUJhaUVMSUFRTUFRc2dGMEVFZENBWWFpSUlRUzlxSVFjZ0FTQUlhaUlJUVI5cUlRWWdDRUVQYWlFTElBaEJmMm9oQ0NBQkN5RUpJQWNnQ1dvdEFBQWhDaUFHTFFBQUlSQWdDeTBBQUNFVElBZ3RBQUFoRkFKQVFUTWdGblpCQVhFRVFDQURJQmhxSWdjdEFBZ2hHeUFITFFBSElSa2dCeTBBQmlFVklBY3RBQVVoR2lBSExRQUVJUVlnQnkwQUF5RUxJQWN0QUFJaENTQUhMUUFCSVFnTUFRc2dBU0FYUVg5cUloMUJCSFFnR0dwcUlnY3RBQUFoQ0NBSExRQUhJUnNnQnkwQUJpRVpJQWN0QUFVaEZTQUhMUUFFSVJvZ0J5MEFBeUVHSUFjdEFBSWhDeUFITFFBQklRa2dIQVJBSUFRZ0hXb2hCd3dCQ3lBSFFYOXFJUWNMQWtBZ0RFRUhUUVJBSUFjdEFBQWhCd0pBQWtBQ1FBSkFBa0FDUUFKQUFrQWdERUVCYXc0SEFRSURCQVVHQndBTElBOUZCRUJCQVE4TElBaEIvd0Z4SUF0Qi93RnhRUkIwSUFaQkdIUnljaUFKUWY4QmNVRUlkSEloRlNBSUlnd2hEU0FKSWc0aEVpQUxJZzhoQ2lBR0loRWhCd3dJQ3lBTlJRUkFRUUVQQ3lBS1FZR0NoQWhzSVJVZ0VFR0Jnb1FJYkNJTlFSaDJJUWNnRFVFUWRpRUtJQTFCQ0hZaEVpQVRRWUdDaEFoc0lneEJHSFloRVNBTVFSQjJJUThnREVFSWRpRU9JQlJCZ1lLRUNHd2lDRUVZZGlFR0lBaEJFSFloQ3lBSVFRaDJJUWtNQndzQ2Z5QVRJQlJxSUFwcUlCQnFJQVpCL3dGeGFpQUxRZjhCY1dvZ0NVSC9BWEZxSUFoQi93Rnhha0VFYWtFRGRpQVNEUUFhSUJNZ0ZHb2dDbW9nRUdwQkFtcEJBbllnRFEwQUdrR0FBU0FQUlEwQUdpQUdRZjhCY1NBTFFmOEJjV29nQ1VIL0FYRnFJQWhCL3dGeGFrRUNha0VDZGdzaUNFR0Jnb1FJYkNFVklBZ2lDU0lMSWdZaURDSU9JZzhpRVNJTkloSWlDaUVIREFZTElBOUZCRUJCQVE4TElBWkIvd0Z4SWcxQkFtb2lFU0FWSUFZZ0RodEIvd0Z4SWdkcUlCb2dCaUFPRzBIL0FYRWlDa0VCZEdwQkFuWWlEeUFaSUFZZ0RodEIvd0Z4SWd3Z0d5QUdJQTRiUWY4QmNTSUdRUU5zYWtFV2RFR0FnSUFFYWtHQWdJQjRjWElnQ2lBTWFpQUhRUUYwYWtFQ2FpSVFRUVowUVlEK0EzRnlJQVlnQjJvZ0RFRUJkR3BCQW1vaUJrRU9kRUdBZ1B3SGNYSWhGU0FHUVFKMklRY2dDMEgvQVhFaUJrRUNhaUlMSUFoQi93RnhhaUFKUWY4QmNTSUpRUUYwYWtFQ2RpRUlJQWtnRVdvZ0JrRUJkR3BCQW5ZaUNTRU1JQW9nQzJvZ0RVRUJkR3BCQW5ZaUN5RU9JQXNoRFNBUElnWWhFaUFRUVFKMkloRWhDZ3dGQzBFQklCRkZJQkpCQVhOeURRWWFJQlFnRTBFQmRHb2dFR3BCQW1vaURrRUdkRUdBL2dOeElBb2dFMEVDYWlJUGFpQVFRUUYwYWtFQ2RuSWdDRUgvQVhFaUNrRUNhaUlNSUJScUlBZEJBWFJxUVFKMklnaEJHSFJ5SUE4Z0ZFRUJkR29nQjJvaUVFRU9kRUdBZ1B3SGNYSWhGU0FKUWY4QmNTSVJRUUpxSWdrZ0JrSC9BWEZxSUF0Qi93RnhJZ3RCQVhScVFRSjJJUVlnRGtFQ2RpRU5JQWtnQ2tFQmRHb2dCMnBCQW5ZaUNTRVBJQkZCQVhRZ0Myb2dER3BCQW5ZaUN5RVJJQkJCQW5ZaURDRVNJQWdpRGlFS0lBa2hCd3dFQzBFQklCRkZJQkpCQVhOeURRVWFJQWhCL3dGeElncEJBbW9pRGlBTFFmOEJjU0lJSUFsQi93RnhJZ3RCQVhScWFrRUNkaUlQUVJoMElCUWdFMEVCZEdvZ0VHcEJBbXBCQW5aeUlBNGdGR29nQjBFQmRHb2lDVUVHZEVHQS9nTnhjaUFMUVFKcUlnNGdDa0VCZEdvZ0Iyb2lEVUVPZEVHQWdQd0hjWEloRlNBSVFRRnFJaEFnQmtIL0FYRWlER3BCQVhZaEJpQU1JQTVxSUFoQkFYUnFRUUoySVJFZ0NVRUNkaUVNSUExQkFuWWhEaUFUSUJSQkFYUnFJQWRxUVFKcVFRSjJJUTBnQnlBS2FrRUJha0VCZGlJSUlSSWdDaUFMYWtFQmFrRUJkaUlKSVFvZ0N5QVFha0VCZGlJTElRY01Bd3RCQVNBUlJTQVNRUUZ6Y2cwRUdpQVRRUUpxSWc0Z0Ntb2dFRUVCZEdwQkJuUkJnUDREY1NBUUlCTnFRUUZxSWc5QkQzUkJnSUQ4QjNFZ0ZFRUNhaUlNSUJOQkFYUnFJQkJxUVFKMkloSkJHSFJ5SUFvZ0VHcEJBV3BCQVhaeWNpRVZJQWhCL3dGeElnZ2dDMEgvQVhGcUlBbEIvd0Z4SWdsQkFYUnFRUUpxUVFKMklRWWdDU0FJUVFGMGFpQUhha0VDYWtFQ2RpRUxJQTlCQVhZaERTQUlJQXhxSUFkQkFYUnFRUUoySWhFaENTQVVRUUZxSWdvZ0IycEJBWFlpQ0NFUElBb2dFMnBCQVhZaURDRUtJQTRnRkVFQmRHb2dCMnBCQW5ZaURpRUhEQUlMSUE5RkJFQkJBUThMSUJvZ0JpQU9HMEgvQVhFaUNpQVpJQVlnRGh0Qi93RnhhaUFWSUFZZ0RodEIvd0Z4SWdkQkFYUnFRUlowSUF0Qi93RnhJZ3RCQW1vaURDQUthaUFHUWY4QmNTSUdRUUYwYWlJUFFRWjBja0dBZ0lBRWFrR0Evb040Y1NBR1FRSnFJZzBnQ1VIL0FYRWlDV29nQzBFQmRHcEJBbllpRG5JZ0J5QU5haUFLUVFGMGFpSU5RUTUwUVlDQS9BZHhjaUVWSUFjZ0NtcEJBV3BCQVhZaEJ5QU5RUUoySVJFZ0NTQUlRZjhCY1NJTmFrRUJha0VCZGlFSUlBOUJBblloRHlBTUlBMXFJQWxCQVhScVFRSjJJUXdnQ1NBTGFrRUJha0VCZGlJSklRMGdCa0VCYWlJR0lBdHFRUUYySWdzaEVpQUdJQXBxUVFGMklnWWhDZ3dCQ3lBTlJRUkFRUUVQQ3lBS1FRaDBJQXB5SUFwQkVIUnlJQXBCR0hSeUlSVWdFRUVDYWlJSElCUnFJQk5CQVhScVFRSjJJUWtnRTBFQmFpSUdJQlJxUVFGMklRZ2dCaUFRYWtFQmRpSUxJUXdnQ2lBVGFpQVFRUUYwYWtFQ2FrRUNkaUlHSVE0Z0NpQVFha0VCYWtFQmRpSVBJUTBnQnlBS1FRTnNha0VDZGlJUklSSWdDaUVIQ3lBQklCZEJCSFFnR0dwcUloQWdGVFlDTUNBUUlBMUIvd0Z4SUJKQi93RnhRUWgwY2lBS1FmOEJjVUVRZEhJZ0IwRVlkSEkyQWlBZ0VDQU1RZjhCY1NBT1FmOEJjVUVJZEhJZ0QwSC9BWEZCRUhSeUlCRkJHSFJ5TmdJUUlCQWdDRUgvQVhFZ0NVSC9BWEZCQ0hSeUlBdEIvd0Z4UVJCMGNpQUdRUmgwY2pZQ0FDQUJJQUlnRmtFR2RHcEJ5QUpxSUJZUUNDQVdRUUZxSWhaQkVFY05BQXRCQUFzTHhSSUJFSDhDZnlBQUtBTElBU0lIQkVBZ0FDZ0NCQ0FIS0FJRVJnd0JDMEVBQ3lFSEFrQWdCVVVOQUNBSFJRMEFRUUFnQjBFQ0lBQW9Bc2dCS0FJQUlnZEJCa2NnQjBFR1NSdEJBa1liSVFjTEFuOGdBQ2dDekFFaUNBUkFJQUFvQWdRZ0NDZ0NCRVlNQVF0QkFBc2hDQUpBSUFWRkRRQWdDRVVOQUVFQUlBaEJBaUFBS0FMTUFTZ0NBQ0lJUVFaSElBaEJCa2tiUVFKR0d5RUlDd0ovSUFBb0F0UUJJZ2tFUUNBQUtBSUVJQWtvQWdSR0RBRUxRUUFMSVFrQ1FDQUZSUTBBSUFsRkRRQkJBaUFBS0FMVUFTZ0NBQ0lGUVFaSElBVkJCa2tiUVFKSElRa0xBa0FDUUNBQUtBSUFRUUZxUVFOeElnQkJBazBFUUFKQUFrQUNRQ0FBUVFGckRnSUJBZ0FMSUFoRkJFQkJBUThMUVFBaEJTQUJJUUFEUUNBQUlBTXRBQUU2QUFBZ0FDQURMUUFDT2dBQklBQWdBeTBBQXpvQUFpQUFJQU10QUFRNkFBTWdBQ0FETFFBRk9nQUVJQUFnQXkwQUJqb0FCU0FBSUFNdEFBYzZBQVlnQUNBRExRQUlPZ0FISUFBZ0F5MEFDVG9BQ0NBQUlBTXRBQW82QUFrZ0FDQURMUUFMT2dBS0lBQWdBeTBBRERvQUN5QUFJQU10QUEwNkFBd2dBQ0FETFFBT09nQU5JQUFnQXkwQUR6b0FEaUFBSUFNdEFCQTZBQThnQUVFUWFpRUFJQVZCQVdvaUJVRVFSdzBBQ3d3REN5QUhSUVJBUVFFUEMwRUFJUVVnQVNFQUEwQWdBQ0FFSUFWcUlnTXRBQUE2QUFBZ0FDQURMUUFBT2dBQklBQWdBeTBBQURvQUFpQUFJQU10QUFBNkFBTWdBQ0FETFFBQU9nQUVJQUFnQXkwQUFEb0FCU0FBSUFNdEFBQTZBQVlnQUNBRExRQUFPZ0FISUFBZ0F5MEFBRG9BQ0NBQUlBTXRBQUE2QUFrZ0FDQURMUUFBT2dBS0lBQWdBeTBBQURvQUN5QUFJQU10QUFBNkFBd2dBQ0FETFFBQU9nQU5JQUFnQXkwQUFEb0FEaUFBSUFNdEFBQTZBQThnQUVFUWFpRUFJQVZCQVdvaUJVRVFSdzBBQ3d3Q0N5QUJBbjhDUUNBSFJRMEFJQWhGRFFBZ0JDMEFEeUFETFFBUUlBUXRBQTRnQXkwQUR5QUVMUUFOSUFNdEFBNGdCQzBBRENBRExRQU5JQVF0QUFzZ0F5MEFEQ0FFTFFBS0lBTXRBQXNnQkMwQUNTQURMUUFLSUFRdEFBZ2dBeTBBQ1NBRUxRQUhJQU10QUFnZ0JDMEFCaUFETFFBSElBUXRBQVVnQXkwQUJpQUVMUUFFSUFNdEFBVWdCQzBBQXlBRExRQUVJQVF0QUFJZ0F5MEFBeUFFTFFBQklBTXRBQUlnQXkwQUFTQUVMUUFBYW1wcWFtcHFhbXBxYW1wcWFtcHFhbXBxYW1wcWFtcHFhbXBxYW1wcWFrRVFha0VGZGd3QkN5QUhCRUFnQkMwQUR5QUVMUUFPSUFRdEFBMGdCQzBBRENBRUxRQUxJQVF0QUFvZ0JDMEFDU0FFTFFBSUlBUXRBQWNnQkMwQUJpQUVMUUFGSUFRdEFBUWdCQzBBQXlBRUxRQUNJQVF0QUFBZ0JDMEFBV3BxYW1wcWFtcHFhbXBxYW1wcWFrRUlha0VFZGd3QkMwR0FBU0FJUlEwQUdpQURMUUFRSUFNdEFBOGdBeTBBRGlBRExRQU5JQU10QUF3Z0F5MEFDeUFETFFBS0lBTXRBQWtnQXkwQUNDQURMUUFISUFNdEFBWWdBeTBBQlNBRExRQUVJQU10QUFNZ0F5MEFBU0FETFFBQ2FtcHFhbXBxYW1wcWFtcHFhbXBxUVFocVFRUjJDMEdBQWhBSEdnd0JDMEVCSVFBZ0IwVU5BU0FJUlEwQklBbEZEUUVnQkMwQUNDQUVMUUFHYXlBRUxRQVBJZ0FnQXkwQUFDSUZhMEVEZEdvZ0JDMEFDU0FFTFFBRmEwRUJkR29nQkMwQUNpQUVMUUFFYTBFRGJHb2dCQzBBQ3lBRUxRQURhMEVDZEdvZ0JDMEFEQ0FFTFFBQ2EwRUZiR29nQkMwQURTQUVMUUFCYTBFR2JHb2dCQzBBRGlBRUxRQUFhMEVIYkdwQkJXeEJJR3BCQm5VaEJ5QURMUUFKSUFNdEFBZHJJQU10QUFvZ0F5MEFCbXRCQVhScUlBTXRBQXNnQXkwQUJXdEJBMnhxSUFNdEFBd2dBeTBBQkd0QkFuUnFJQU10QUEwZ0F5MEFBMnRCQld4cUlBTXRBQTRnQXkwQUFtdEJCbXhxSUFNdEFBOGdBeTBBQVd0QkIyeHFJQU10QUJBaUF5QUZhMEVEZEdwQkJXeEJJR3BCQm5VaUJFRURkQ0VJSUFSQkIyd2hDU0FFUVFac0lRb2dCRUVGYkNFTElBUkJBMndoRENBRVFYMXNJUTBnQkVGN2JDRU9JQVJCZW13aER5QUVRWGxzSVJCQkFDQUVRUUYwSWhGcklSSkJBQ0FFUVFKMEloTnJJUlFnQUNBRGFrRUVkRUVRYWlFVlFRQWhCUU5BSUFFZ0JVRUVkQ0lBYWlBVklBVkJlV29nQjJ4cUlnTWdFR3BCQlhVaUJrSC9BU0FHUWY4QlNCc2lCa0VBSUFaQkFFb2JPZ0FBSUFFZ0FFRUJjbW9nQXlBUGFrRUZkU0lHUWY4QklBWkIvd0ZJR3lJR1FRQWdCa0VBU2hzNkFBQWdBU0FBUVFKeWFpQURJQTVxUVFWMUlnWkIvd0VnQmtIL0FVZ2JJZ1pCQUNBR1FRQktHem9BQUNBQklBQkJBM0pxSUFNZ0ZHcEJCWFVpQmtIL0FTQUdRZjhCU0JzaUJrRUFJQVpCQUVvYk9nQUFJQUVnQUVFRWNtb2dBeUFOYWtFRmRTSUdRZjhCSUFaQi93RklHeUlHUVFBZ0JrRUFTaHM2QUFBZ0FTQUFRUVZ5YWlBRElCSnFRUVYxSWdaQi93RWdCa0gvQVVnYklnWkJBQ0FHUVFCS0d6b0FBQ0FCSUFCQkJuSnFJQU1nQkd0QkJYVWlCa0gvQVNBR1FmOEJTQnNpQmtFQUlBWkJBRW9iT2dBQUlBRWdBRUVIY21vZ0EwRUZkU0lHUWY4QklBWkIvd0ZJR3lJR1FRQWdCa0VBU2hzNkFBQWdBU0FBUVFoeWFpQURJQVJxUVFWMUlnWkIvd0VnQmtIL0FVZ2JJZ1pCQUNBR1FRQktHem9BQUNBQklBQkJDWEpxSUFNZ0VXcEJCWFVpQmtIL0FTQUdRZjhCU0JzaUJrRUFJQVpCQUVvYk9nQUFJQUVnQUVFS2Ntb2dBeUFNYWtFRmRTSUdRZjhCSUFaQi93RklHeUlHUVFBZ0JrRUFTaHM2QUFBZ0FTQUFRUXR5YWlBRElCTnFRUVYxSWdaQi93RWdCa0gvQVVnYklnWkJBQ0FHUVFCS0d6b0FBQ0FCSUFCQkRISnFJQU1nQzJwQkJYVWlCa0gvQVNBR1FmOEJTQnNpQmtFQUlBWkJBRW9iT2dBQUlBRWdBRUVOY21vZ0F5QUtha0VGZFNJR1FmOEJJQVpCL3dGSUd5SUdRUUFnQmtFQVNoczZBQUFnQVNBQVFRNXlhaUFESUFscVFRVjFJZ1pCL3dFZ0JrSC9BVWdiSWdaQkFDQUdRUUJLR3pvQUFDQUJJQUJCRDNKcUlBTWdDR3BCQlhVaUFFSC9BU0FBUWY4QlNCc2lBRUVBSUFCQkFFb2JPZ0FBSUFWQkFXb2lCVUVRUncwQUN3dEJBQ0VBSUFFZ0FrRUFFQWdnQVNBQ1FVQnJRUUVRQ0NBQklBSkJnQUZxUVFJUUNDQUJJQUpCd0FGcVFRTVFDQ0FCSUFKQmdBSnFRUVFRQ0NBQklBSkJ3QUpxUVFVUUNDQUJJQUpCZ0FOcVFRWVFDQ0FCSUFKQndBTnFRUWNRQ0NBQklBSkJnQVJxUVFnUUNDQUJJQUpCd0FScVFRa1FDQ0FCSUFKQmdBVnFRUW9RQ0NBQklBSkJ3QVZxUVFzUUNDQUJJQUpCZ0FacVFRd1FDQ0FCSUFKQndBWnFRUTBRQ0NBQklBSkJnQWRxUVE0UUNDQUJJQUpCd0FkcVFROFFDQXNnQUF1N0NBRUhmd0pBSUFORkRRQWdBQ2dDQUNBRElBQW9BZ1FpQlc0aUNDQUZiQ0lFUVFoMGFpQURJQVJySWdkQkJIUnFJUVlnQlVFRWRDRUVJQUFvQWdnaENTQUZJQU5MSWdwRkJFQWdBU0FHSUFSQkFYSnJJZ010QUFBNkFBQWdBU0FETFFBQk9nQUJJQUVnQXkwQUFqb0FBaUFCSUFNdEFBTTZBQU1nQVNBRExRQUVPZ0FFSUFFZ0F5MEFCVG9BQlNBQklBTXRBQVk2QUFZZ0FTQURMUUFIT2dBSElBRWdBeTBBQ0RvQUNDQUJJQU10QUFrNkFBa2dBU0FETFFBS09nQUtJQUVnQXkwQUN6b0FDeUFCSUFNdEFBdzZBQXdnQVNBRExRQU5PZ0FOSUFFZ0F5MEFEam9BRGlBQklBTXRBQTg2QUE4Z0FTQURMUUFRT2dBUUlBRWdBeTBBRVRvQUVTQUJJQU10QUJJNkFCSWdBU0FETFFBVE9nQVRJQUVnQXkwQUZEb0FGQ0FCUVJWcUlRRUxJQWNFUUNBQ0lBWkJmMm9pQXkwQUFEb0FBQ0FDSUFNZ0JHb2lBeTBBQURvQUFTQUNJQU1nQkdvaUF5MEFBRG9BQWlBQ0lBTWdCR29pQXkwQUFEb0FBeUFDSUFNZ0JHb2lBeTBBQURvQUJDQUNJQU1nQkdvaUF5MEFBRG9BQlNBQ0lBTWdCR29pQXkwQUFEb0FCaUFDSUFNZ0JHb2lBeTBBQURvQUJ5QUNJQU1nQkdvaUF5MEFBRG9BQ0NBQ0lBTWdCR29pQXkwQUFEb0FDU0FDSUFNZ0JHb2lBeTBBQURvQUNpQUNJQU1nQkdvaUF5MEFBRG9BQ3lBQ0lBTWdCR29pQXkwQUFEb0FEQ0FDSUFNZ0JHb2lBeTBBQURvQURTQUNJQU1nQkdvaUF5MEFBRG9BRGlBQ0lBTWdCR290QUFBNkFBOGdBa0VRYWlFQ0N5QUFLQUlBSUFVZ0NXd2lCRUVJZEdvZ0NDQUZRUU4wSWdCc1FRTjBhaUFIUVFOMGFpRUdJQUJCK1AvLy93ZHhJUUFnQ2tVRVFDQUJJQVlnQUVFQmNtc2lBeTBBQURvQUFDQUJJQU10QUFFNkFBRWdBU0FETFFBQ09nQUNJQUVnQXkwQUF6b0FBeUFCSUFNdEFBUTZBQVFnQVNBRExRQUZPZ0FGSUFFZ0F5MEFCam9BQmlBQklBTXRBQWM2QUFjZ0FTQURRUWhxSWdNdEFBQTZBQWdnQVNBRVFRWjBJQU5xSWdOQmVHb3RBQUE2QUFrZ0FTQURRWGxxTFFBQU9nQUtJQUVnQTBGNmFpMEFBRG9BQ3lBQklBTkJlMm90QUFBNkFBd2dBU0FEUVh4cUxRQUFPZ0FOSUFFZ0EwRjlhaTBBQURvQURpQUJJQU5CZm1vdEFBQTZBQThnQVNBRFFYOXFMUUFBT2dBUUlBRWdBeTBBQURvQUVRc2dCMFVOQUNBQ0lBWkJmMm9pQVMwQUFEb0FBQ0FDSUFBZ0FXb2lBUzBBQURvQUFTQUNJQUFnQVdvaUFTMEFBRG9BQWlBQ0lBQWdBV29pQVMwQUFEb0FBeUFDSUFBZ0FXb2lBUzBBQURvQUJDQUNJQUFnQVdvaUFTMEFBRG9BQlNBQ0lBQWdBV29pQVMwQUFEb0FCaUFDSUFBZ0FXb2lBUzBBQURvQUJ5QUNJQUFnQVdvZ0JDQUZhMEVHZEdvaUFTMEFBRG9BQ0NBQ0lBQWdBV29pQVMwQUFEb0FDU0FDSUFBZ0FXb2lBUzBBQURvQUNpQUNJQUFnQVdvaUFTMEFBRG9BQ3lBQ0lBQWdBV29pQVMwQUFEb0FEQ0FDSUFBZ0FXb2lBUzBBQURvQURTQUNJQUFnQVdvaUFTMEFBRG9BRGlBQ0lBQWdBV290QUFBNkFBOExDNjhCQVFGL0l3QkIwQUJySWdZa0FDQUNJQVpCSUdvZ0JpQURFRlVDUUFKQVFRSWdBQ2dDQUNJRFFRWkhJQU5CQmtrYlFRRkdCRUFnQUNBRklBRkJ5QUpxSUFaQklHb2dCaUFFRUZRaUEwVU5BUXdDQ3lBQUlBVWdBU0FHUVNCcUlBWWdCQkJUSWdNTkFRc2dBQ0FGUVlBQ2FpQUJRY2dLYWlBR1FUVnFJQVpCRUdvZ0FTZ0NqQUVnQkJCU0lnTU5BRUVBSVFNZ0FDZ0N4QUZCQVVzTkFDQUNJQVVRR3dzZ0JrSFFBR29rQUNBREM2TXFBU1IvSXdCQklHc2lFQ1FBSUJBZ0JDZ0NCQ0lJTmdJTUlCQWdCQ2dDQ0RZQ0VDQURJQWh1SWdaQkJIUWhGQ0FESUFZZ0NHeHJRUVIwSVJVQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUFBb0FnQWlCa0VEVFFSQUFrQUNRQUpBSUFaQkFtc09BZ0VDQUFzZ0FTZ0NrQUVoRXlBQUtBSUVJUTVCZnlFUEFuOGdBQ2dDeUFFaUNVVUVRRUVBSVFoQmZ3d0JDMEVBSVFoQmZ5QUpLQUlFSUE1SERRQWFRUUVoRWtGL0lBa29BZ0JCQlVzTkFCb2dDU2dDbUFFaUNFRVFkaUVISUFrb0FtZ0xJUTBnQUNnQ3pBRWlDVVVOQ0NBSktBSUVJQTVIRFFoQkFTRVdJQWtvQWdCQkJVc05DQ0FKS0FLc0FTSVJRUkIySVFvZ0NTZ0NiQ0VQREFnTElBRW9BcEFCSVJNZ0FTOEJvZ0VoRFNBQkx3R2dBU0VNSUFBb0FnUWhDMEYvSVFjQ1FDQUFLQUxNQVNJR1JRMEFJQXNnQmlnQ0JFY0VRQXdCQzBFQklSSWdCaWdDQUVFRlN3MEFJQVlvQXF3QklnbEJFSFloQ2lBR0tBSnNJUWNMSUFjZ0UwWUVRQ0FLSVFjZ0NTRUdEQWNMUVg4aER3SkFBa0FDUUNBQUtBTElBU0lJUlFSQVFRQWhCd3dCQzBFQUlRY2dDQ2dDQkNBTFJnMEJDMEVBSVFZTUFRdEJBU0VYSUFnb0FnQkJCVXNFUUVFQUlRWU1BUXNnQ0NnQ21BRWlCa0VRZGlFSElBZ29BbWdoRHdzQ1FBSkFJQUFvQXRBQklnaEZEUUFnQ0NnQ0JDQUxSdzBBSUFnb0FnQkJCVTBOQVF3R0N3SkFJQUFvQXRRQklnaEZEUUFnQ0NnQ0JDQUxSdzBBSUFnb0FnQkJCVXNOQmlBSUtBSndJUllnQ0NnQ3dBRWhDQXdIQzBFQUlRaEJmeUVXSUJJTkJpQVhSUTBHREFjTElBZ29BbXdoRmlBSUtBS3NBU0VJREFVTElBRW9BcEFCSVE4Z0FTOEJvZ0VoRFNBQkx3R2dBU0VNSUFBb0FnUWhCa0YvSVFjQ1FDQUFLQUxJQVNJS1JRUkFRUUFoQ0F3QkMwRUFJUWdnQmlBS0tBSUVSd1JBREFFTFFRRWhFU0FLS0FJQVFRVkxEUUFnQ2lnQ21BRWlDVUVRZGlFSUlBb29BbWdoQndzZ0J5QVBSZzBCQW44Q2Z3SkFBa0FnQUNnQ3pBRWlCMFVOQUNBSEtBSUVJQVpIRFFBZ0J5Z0NBRUVGU3cwQklBY29BbkFoRVNBSEtBSzhBU0VLSUFjb0Ftd2hFaUFIS0FLc0FTSUdRUkIyREFNTEFrQWdBQ2dDMUFFaUIwVU5BQ0FIS0FJRUlBWkhEUUJCQUNFR1FYOGhFaUFIS0FJQVFRVkxCRUJCZnlFUlFRQU1Bd3NnQnlnQ2NDRVJJQWNvQXNBQkRBSUxJQkVOQkF0QmZ5RVJRWDhoRWtFQUlRWkJBQXNoQ2tFQUN5RUhJQThnRWtZaUN5QVBJQkZHYWtFQlJ3UkFJQWNnQ0NBSFFSQjBRUkIxSWdzZ0NFRVFkRUVRZFNJT1NpSUlHeUlISUE0Z0N5QU9JQXNnRGtnYklBZ2JJZ2dnQ2tFUWRTSUxJQWdnQzBvYklBZEJFSFJCRUhVZ0MwZ2JJUWNnQmlBSklBWkJFSFJCRUhVaUN5QUpRUkIwUVJCMUlnbEtJZ1liSWdoQi8vOERjU0FKSUFzZ0NTQUxJQWxJR3lBR0d5SUdJQXBCRUhSQkVIVWlDU0FHSUFsS0d5QUlRUkIwUVJCMUlBbElHeUVHREFNTElBc05BaUFLUVJCMklRY2dDaUVHREFJTFFRRWhHeUFBUVlRQmFpRWNBMEFDZnlBQklCMUJBblFpSG1vaUlDSWtLQUt3QVNJR1FRSk5CRUFnQmtFQ2RFR2NOV29vQWdBTUFRdEJCQXNoSWlBQUlCNXFJZ1lnSUNnQ3dBRTJBbVFnQmlBQ0lDQW9Bc0FCRUJRaUJqWUNkQ0FHUlEwSUlDSUVRQ0FjSUIxQkJIUWlIMm9pSlNFbUlCd2dIMEVNY21vaUowRUNhaUVvSUJ3Z0gwRUljbW9pS1NFUklCd2dIMEVFY21vaUZpRVRRUUFoQmdOQUlBRWdIMm9nQmtFQ2RHb2lDQzhCMGdFaER5QUlMd0hRQVNFT0lDQW9Bc0FCSVNGQmZ5RVhBbjhnQUNBZFFRZDBJQ1FvQXJBQklpTkJCWFJxSUFaQkEzUnFJaHBCc0JscUtBSUFFQkVpQ1VVRVFFRUFJUXhCQUNFSVFRQWhDa0YvREFFTFFRQWhERUVBSVFoQkFDRUtRWDhnQ1NnQ0JDQUFLQUlFUncwQUdrRUJJUXBCZnlBSktBSUFRUVZMRFFBYUlBa2dHa0cwR1dvdEFBQWlCMEVDZEdvb0FvUUJJZ2hCRUhZaERDQUpJQWRCL0FGeGFpZ0NaQXNoRFFKQUFrQUNRQ0FBSUJwQnNCMXFLQUlBRUJFaUdFVUVRRUVBSVFrTUFRdEJBQ0VKSUJnb0FnUWdBQ2dDQkVZTkFRdEJBQ0VTUVFBaEN3d0JDMEVCSVFzZ0dDZ0NBRUVGU3dSQVFRQWhFZ3dCQ3lBWUlCcEJ0QjFxTFFBQUlnZEJBblJxS0FLRUFTSVNRUkIySVFrZ0dDQUhRZndCY1dvb0FtUWhGd3NDUUFKQUFrQUNRQUpBSUFBZ0drR3dJV29vQWdBUUVTSVpSUTBBSUJrb0FnUWdBQ2dDQkVjTkFDQVpLQUlBUVFWTkRRRU1BZ3NDUUNBQUlCcEJzQ1ZxS0FJQUVCRWlHVVVOQUNBWktBSUVJQUFvQWdSSERRQWdHU2dDQUVFRlN3MENJQmtnR2tHMEpXb3RBQUFpQjBIOEFYRnFLQUprSVJnZ0dTQUhRUUowYWlnQ2hBRWhCd3dEQzBFQUlRZEJmeUVZSUFwRkRRSWdDdzBDREFNTElCa2dHa0cwSVdvdEFBQWlCMEg4QVhGcUtBSmtJUmdnR1NBSFFRSjBhaWdDaEFFaEJ3d0JDMEVBSVFkQmZ5RVlDeUFYSUNGR0lnb2dEU0FoUmlJTGFpQVlJQ0ZHYWtFQlJ3UkFJQWtnRENBSlFSQjBRUkIxSWdzZ0RFRVFkRUVRZFNJTVNpSUpHeUlLSUF3Z0N5QU1JQXNnREVnYklBa2JJZ2tnQjBFUWRTSUxJQWtnQzBvYklBcEJFSFJCRUhVZ0MwZ2JJUXdnRWlBSUlCSkJFSFJCRUhVaUNpQUlRUkIwUVJCMUlndEtJZ2diSWdsQi8vOERjU0FMSUFvZ0N5QUtJQXRJR3lBSUd5SUlJQWRCRUhSQkVIVWlCeUFJSUFkS0d5QUpRUkIwUVJCMUlBZElHeUVJREFFTElBZ2dFaUFMR3lFSUlBd2dDU0FMR3lFTUlBc05BQ0FLRFFBZ0IwRVFkaUVNSUFjaENBc2dDQ0FPYWlJS1FSQjBRUkIxUVlCQWEwSC8vd0JMRFFvZ0RDQVBhaUlKUVJCMFFSQjFRWUFRYWtIL0gwc05DaUFqUVFOTkJFQUNmd0pBQWtBQ1FBSkFJQ05CQVdzT0F3RUNBd0FMSUNVZ0Nqc0JBQ0FtSUFrN0FRSWdGaUFLT3dFQUlCTWdDVHNCQWlBcElBbzdBUUFnRVNBSk93RUNJQ2NnQ2pzQkFDQW9EQU1MSUJ3Z0JrRUJkQ0FlYWtFQ2RDSUhhaUlJSUFrN0FRSWdDQ0FLT3dFQUlCd2dCMEVFY21vaUNDQUtPd0VBSUFoQkFtb01BZ3NnQUNBR0lCNXFRUUowYWlJSUlBbzdBWXdCSUFnZ0NUc0JoZ0VnQ0NBS093R0VBU0FJUVk0QmFnd0JDeUFBSUFZZ0htcEJBblJxSWdnZ0Nqc0JoQUVnQ0VHR0FXb0xJQWs3QVFBTElBWkJBV29pQmlBaVJ3MEFDd3NnSFVFQmFpSWRRUVJIRFFBTFFRQWhEQU5BSUJBZ0FDQU1RUUowSWdKcUtBSjBOZ0lJSUF4QkFVdEJBM1FoQ1NBTVFRTjBRUWh4SVFjQ1FDQUJJQUpxS0FLd0FTSUNRUUpOQkVBQ1FBSkFBa0FnQWtFQmF3NENBUUlBQ3lBRklBQWdERUVFZEdwQmhBRnFJQkJCQ0dvZ0ZTQVVJQWNnQ1VFSVFRZ1FEZ3dEQ3lBRklBQWdERUVFZEdvaUFrR0VBV29nRUVFSWFpQVZJQlFnQnlBSlFRaEJCQkFPSUFVZ0FrR01BV29nRUVFSWFpQVZJQlFnQnlBSlFRUnlRUWhCQkJBT0RBSUxJQVVnQUNBTVFRUjBhaUlDUVlRQmFpQVFRUWhxSUJVZ0ZDQUhJQWxCQkVFSUVBNGdCU0FDUVlnQmFpQVFRUWhxSUJVZ0ZDQUhRUVJ5SUFsQkJFRUlFQTRNQVFzZ0JTQUFJQXhCQkhScUlnaEJoQUZxSUJCQkNHb2dGU0FVSUFjZ0NVRUVRUVFRRGlBRklBaEJpQUZxSUJCQkNHb2dGU0FVSUFkQkJISWlCaUFKUVFSQkJCQU9JQVVnQ0VHTUFXb2dFRUVJYWlBVklCUWdCeUFKUVFSeUlnSkJCRUVFRUE0Z0JTQUlRWkFCYWlBUVFRaHFJQlVnRkNBR0lBSkJCRUVFRUE0TElBeEJBV29pREVFRVJ3MEFDd3dHQ3lBSUlRY2dDU0VHQzBFQklSc2dCaUFNYWlJSVFSQjBRUkIxUVlCQWEwSC8vd0JMRFFVZ0J5QU5haUlHUVJCMFFSQjFRWUFRYWtIL0gwc05CU0FDSUE4UUZDSUhSUTBGSUFBZ0Jqc0JzZ0VnQUNBSU93R3dBU0FBSUFjMkFuUWdBQ0FQTmdKa0lBQWdCellDZkNBQUlBODJBbXdnQUNBQUtBS3dBU0lHTmdLc0FTQUFJQVkyQXFnQklBQWdCallDcEFFZ0FDQUdOZ0tRQVNBQUlBWTJBb3dCSUFBZ0JqWUNpQUVnQUNBR05nS0VBU0FCS0FLVUFTRU9JQUV2QWFZQklRd2dBUzhCcEFFaEN5QUFLQUlFSVFrQ1FBSkFJQUFvQXRBQklnZEZEUUFnQnlnQ0JDQUpSdzBBUVFFaEVTQUhLQUlBUVFWTEJFQkJmeUVJUVFBaEJ3d0NDeUFIS0FKc0lRZ2dCeWdDckFFaEJ3d0JDMEYvSVFoQkFDRUhJQUFvQXN3QklncEZCRUJCQUNFUkRBRUxJQWtnQ2lnQ0JFY0VRRUVBSVJFTUFRdEJBU0VSSUFvb0FnQkJCVXNOQUNBS0tBSnNJUWdnQ2lnQ3NBRWhCd3NDUUNBSUlBNUdSUVJBSUFaQkVIWWhDQUovQWtBQ1FDQUFLQUxNQVNJTlJRMEFJQTBvQWdRZ0NVY05BQ0FOS0FJQVFRVkxEUUVnRFNnQ3ZBRWlFVUVRZGlFS0lBMG9BbkFNQWdzZ0VVVU5Bd3RCQUNFUlFRQWhDa0YvQ3lFTklBNGdEMFlpQ1NBTklBNUdha0VCUndSQUlBb2dDQ0FLUVJCMFFSQjFJZzBnQ0VFUWRFRVFkVW9pQ0JzaUNTQUdRUkIxSWdvZ0RTQUtJQW9nRFVvYklBZ2JJZ2dnQjBFUWRTSUtJQWdnQ2tvYklBbEJFSFJCRUhVZ0NrZ2JJUWdnRVNBR0lCRkJFSFJCRUhVaUNpQUdRUkIwUVJCMUlnMUtJZ1liSWdsQi8vOERjU0FOSUFvZ0RTQU5JQXBLR3lBR0d5SUdJQWRCRUhSQkVIVWlCeUFHSUFkS0d5QUpRUkIwUVJCMUlBZElHeUVHREFJTElBa05BU0FOSUE1R0JFQWdFVUgvL3dOeElBcEJFSFJ5SVFZZ0NpRUlEQUlMQ3lBSFFSQjJJUWdnQnlFR0N5QUdJQXRxSWdkQkVIUkJFSFZCZ0VCclFmLy9BRXNOQlNBSUlBeHFJZ1pCRUhSQkVIVkJnQkJxUWY4ZlN3MEZJQUlnRGhBVUlnSkZEUVVnQUNBR093SENBU0FBSUFjN0FjQUJJQUFnQWpZQ2dBRWdBQ0FDTmdKNElBQWdEallDY0NBQUlBNDJBbWdnQUNBQUtBTEFBU0lHTmdLOEFTQUFJQVkyQXJnQklBQWdCallDdEFFZ0FDQUdOZ0tnQVNBQUlBWTJBcHdCSUFBZ0JqWUNtQUVnQUVHVUFXb2lBaUFHTmdJQUlCQWdBQ2dDZERZQ0NDQUZJQUJCaEFGcUlCQkJDR29nRlNBVVFRQkJBRUVJUVJBUURpQVFJQUFvQW5nMkFnZ2dCU0FDSUJCQkNHb2dGU0FVUVFoQkFFRUlRUkFRRGd3RUMwRUFJUWhCZnlFV0N5QVBJQk5HSWdzZ0V5QVdSbXBCQVVjRVFDQUtJQWNnQ2tFUWRFRVFkU0lMSUFkQkVIUkJFSFVpRGtvaUJ4c2lDaUFPSUFzZ0RpQUxJQTVJR3lBSEd5SUhJQWhCRUhVaUN5QUhJQXRLR3lBS1FSQjBRUkIxSUF0SUd5RUhJQWtnQmlBSlFSQjBRUkIxSWdvZ0JrRVFkRUVRZFNJTFNpSUdHeUlKUWYvL0EzRWdDeUFLSUFzZ0NpQUxTQnNnQmhzaUJpQUlRUkIwUVJCMUlnZ2dCaUFJU2hzZ0NVRVFkRUVRZFNBSVNCc2hCZ3dCQ3lBTERRQWdDRUVRZGlFSElBZ2hCZ3RCQVNFYklBWWdER29pQ0VFUWRFRVFkVUdBUUd0Qi8vOEFTdzBDSUFjZ0RXb2lCa0VRZEVFUWRVR0FFR3BCL3g5TERRSWdBaUFURUJRaUIwVU5BaUFBSUFZN0FhSUJJQUFnQ0RzQm9BRWdBQ0FITmdKMElBQWdFellDWkNBQUlBYzJBbmdnQUNBVE5nSm9JQUFnQUNnQ29BRWlEellDbkFFZ0FDQVBOZ0tZQVNBQUlBODJBcFFCSUFBZ0R6WUNrQUVnQUNBUE5nS01BU0FBSUE4MkFvZ0JJQUFnRHpZQ2hBRWdBU2dDbEFFaERpQUJMd0dtQVNFTklBRXZBYVFCSVF3Q2Z3SkFBa0FDUUNBQUtBTElBU0lHQkVBZ0JpZ0NCQ0FBS0FJRVJnUkFJQVlvQWdCQkJVMEVRQ0FHS0FLNEFTSUxRUkIySVFjZ0JpZ0NjQ0FPUncwRUlBc2hDUXdEQzBGL0lSSkJBQ0VKUVFBaEIwRUFJUXRCQUNFS0lBNUJmMFlOQWd3RUMwRi9JUkpCQUNFSlFRQWhCMEVBSVF0QkFDRUtJQTVCZjBZTkFRd0RDMEYvSVJKQkFDRUpRUUFoQjBFQUlRdEJBQ0VLSUE1QmYwY05BZ3NnQ1VILy93TnhJQWRCRUhSeURBSUxJQVlvQW1naEVpQUdLQUtnQVNFS0lBY2hDUXNnRDBFUWRpRUlJQTRnRTBZaUJpQU9JQkpHYWtFQlJ3UkFJQWdnQ1NBSlFSQjBRUkIxSWdrZ0NFRVFkRUVRZFVnaUJ4c2lDQ0FKSUE5QkVIVWlCaUFKSUFZZ0NVZ2JJQWNiSWdZZ0NrRVFkU0lISUFZZ0Iwb2JJQWhCRUhSQkVIVWdCMGdiSVFjZ0R5QUxJQXRCRUhSQkVIVWlDeUFQUVJCMFFSQjFJZ2xJSWdZYklnaEIvLzhEY1NBTElBa2dDeUFKSUF0SUd5QUdHeUlHSUFwQkVIUkJFSFVpQ1NBR0lBbEtHeUFJUVJCMFFSQjFJQWxJR3d3QkN5QUlJQXBCRUhZZ0Joc2hCeUFQSUFvZ0Joc0xJQXhxSWdoQkVIUkJFSFZCZ0VCclFmLy9BRXNOQWlBSElBMXFJZ1pCRUhSQkVIVkJnQkJxUWY4ZlN3MENJQUlnRGhBVUlnSkZEUUlnQUNBR093SENBU0FBSUFnN0FjQUJJQUFnQWpZQ2dBRWdBQ0FDTmdKOElBQWdEallDY0NBQUlBNDJBbXdnQUNBQUtBTEFBU0lHTmdLOEFTQUFJQVkyQXJnQklBQWdCallDdEFFZ0FDQUdOZ0t3QVNBQUlBWTJBcXdCSUFBZ0JqWUNxQUVnQUVHa0FXb2lBaUFHTmdJQUlCQWdBQ2dDZERZQ0NDQUZJQUJCaEFGcUlCQkJDR29nRlNBVVFRQkJBRUVRUVFnUURpQVFJQUFvQW53MkFnZ2dCU0FDSUJCQkNHb2dGU0FVUVFCQkNFRVFRUWdRRGd3QkN3SkFJQVpGQkVBZ0VrVUVRRUVBSVFrTUFnc2dGa1VFUUVFQUlRa01BZ3NnQ0VILy93TnhJQWRCRUhSeUlBMXlSUVJBUVFBaENRd0NDMEVBSVFrZ0VVSC8vd054SUFwQkVIUnlJQTl5UlEwQkN5QUJMd0dpQVNFTElBRXZBYUFCSVFrQ1FBSkFBa0FDUUFKQUlBQW9BdEFCSWdaRkRRQWdCaWdDQkNBT1J3MEFJQVlvQWdCQkJVME5BUXdDQ3dKQUlBQW9BdFFCSWdaRkRRQWdCaWdDQkNBT1J3MEFJQVlvQWdCQkJVc05BaUFHS0FKd0lSY2dCaWdDd0FFaERBd0RDMEYvSVJjZ0VrVU5BaUFXRFFJTUF3c2dCaWdDYkNFWElBWW9BcXdCSVF3TUFRdEJmeUVYQ3lBUElCTkdJZ1lnRFNBVFJpSU5haUFUSUJkR2FrRUJSd1JBSUFvZ0J5QUtRUkIwUVJCMUlnb2dCMEVRZEVFUWRTSU5TaUlHR3lJSElBMGdDaUFOSUFvZ0RVZ2JJQVliSWdZZ0RFRVFkU0lLSUFZZ0Nrb2JJQWRCRUhSQkVIVWdDa2diSVFjZ0VTQUlJQkZCRUhSQkVIVWlDaUFJUVJCMFFSQjFJZzFLSWdZYklnaEIvLzhEY1NBTklBb2dEU0FLSUExSUd5QUdHeUlHSUF4QkVIUkJFSFVpQ2lBR0lBcEtHeUFJUVJCMFFSQjFJQXBJR3lFSURBRUxJQWdnRVNBTkd5RUlJQWNnQ2lBTkd5RUhJQTBOQUNBR0RRQWdERUVRZGlFSElBd2hDQXRCQVNFYklBZ2dDV29pREVFUWRFRVFkVUdBUUd0Qi8vOEFTdzBDSUFjZ0Myb2lDVUVRZEVFUWRVR0FFR3BCL3g5TERRSUxJQUlnRXhBVUlnSkZCRUJCQVNFYkRBSUxJQUFnQ1RzQndnRWdBQ0FNT3dIQUFTQUFJQUkyQW5RZ0FDQVROZ0prSUFBZ0FqWUNnQUVnQUNBQ05nSjhJQUFnQWpZQ2VDQUFJQk0yQW5BZ0FDQVROZ0pzSUFBZ0V6WUNhQ0FBSUFBb0FzQUJJZ1kyQXJ3QklBQWdCallDdUFFZ0FDQUdOZ0swQVNBQUlBWTJBckFCSUFBZ0JqWUNyQUVnQUNBR05nS29BU0FBSUFZMkFxUUJJQUFnQmpZQ29BRWdBQ0FHTmdLY0FTQUFJQVkyQXBnQklBQWdCallDbEFFZ0FDQUdOZ0tRQVNBQUlBWTJBb3dCSUFBZ0JqWUNpQUVnQUNBR05nS0VBU0FRSUFJMkFnZ2dCU0FBUVlRQmFpQVFRUWhxSUJVZ0ZFRUFRUUJCRUVFUUVBNExRUUFoR3lBQUtBTEVBVUVCU3cwQUlBQW9BZ0FFUUNBRUlBTWdCU0FCUWNnQ2FoQllEQUVMSUFRZ0JSQWJDeUFRUVNCcUpBQWdHd3VUQ3dFUGZ5QUFLQUlBSWhFZ0FTQUJJQUFvQWdRaUNuQWlBV3NpQkVFSWRHb2dBVUVFZEdvaEJTQUtRUVIwSVFzZ0FDZ0NDQ0FLYkNJQVFRWjBJUVlnQVVFRGRDRUpJQUJCQ0hRaERDQUVRUVowSVJJZ0NrRUNkRUg4Ly8vL0EzRkJBblFoRUFOQUlBVWdEa0VDZENJQVFmQXBhaWdDQUNJQklBdHNhaUFBUWJBcGFpZ0NBQ0lBYWlFRUlBSWdBVUVFZEdvZ0FHb2hBQUpBSUFNZ0RrRUdkR29pQVNnQ0FDSUhRZi8vL3dkSEJFQWdBU2dDQkNFSUlBQXRBQUVoRFNBRUlBY2dBQzBBQUdwQnNDNXFMUUFBT2dBQUlBRW9BZ2doQnlBQUxRQUNJUThnQkNBSUlBMXFRYkF1YWkwQUFEb0FBU0FCS0FJTUlRZ2dBQzBBQXlFTklBUWdCeUFQYWtHd0xtb3RBQUE2QUFJZ0JDQUlJQTFxUWJBdWFpMEFBRG9BQXlBQktBSVVJUWNnQUMwQUVTRUlJQVFnQzJvaUJDQUJLQUlRSUFBdEFCQnFRYkF1YWkwQUFEb0FBQ0FCS0FJWUlRMGdBQzBBRWlFUElBUWdCeUFJYWtHd0xtb3RBQUE2QUFFZ0FTZ0NIQ0VISUFBdEFCTWhDQ0FFSUEwZ0QycEJzQzVxTFFBQU9nQUNJQVFnQnlBSWFrR3dMbW90QUFBNkFBTWdBU2dDSkNFSElBQXRBQ0VoQ0NBRUlBdHFJZ1FnQVNnQ0lDQUFMUUFnYWtHd0xtb3RBQUE2QUFBZ0FTZ0NLQ0VOSUFBdEFDSWhEeUFFSUFjZ0NHcEJzQzVxTFFBQU9nQUJJQUVvQWl3aEJ5QUFMUUFqSVFnZ0JDQU5JQTlxUWJBdWFpMEFBRG9BQWlBRUlBY2dDR3BCc0M1cUxRQUFPZ0FESUFFb0FqUWhCeUFBTFFBeElRZ2dCQ0FMYWlJRUlBRW9BakFnQUMwQU1HcEJzQzVxTFFBQU9nQUFJQUVvQWpnaERTQUFMUUF5SVE4Z0JDQUhJQWhxUWJBdWFpMEFBRG9BQVNBQktBSThJUUVnQUMwQU15RUFJQVFnRFNBUGFrR3dMbW90QUFBNkFBSWdCQ0FBSUFGcVFiQXVhaTBBQURvQUF3d0JDeUFBS0FJUUlRRWdCQ0FBS0FJQU5nSUFJQVFnRUdvaUJDQUJOZ0lBSUFBb0FqQWhBU0FFSUJCcUlnUWdBQ2dDSURZQ0FDQUVJQkJxSUFFMkFnQUxJQTVCQVdvaURrRVFSdzBBQ3lBTUlCRnFJQkpxSUFscUloQWdCbW9oRVNBS1FRTjBRZmovLy84SGNTSUxRUUoyUVFKMElRNUJFQ0VLQTBBZ0NrRUNkRUVNY1NJQVFmQXBhaWdDQUNJQklBdHNJQUJCc0NscUtBSUFJZ0JxSUJFZ0VDQUtRUk5MSWdVYmFpRUVJQUpCd0FKQmdBSWdCUnRxSUFGQkEzUWdBR3BxSVFBQ1FDQURJQXBCQm5ScUlnRW9BZ0FpQlVILy8vOEhSd1JBSUFFb0FnUWhCaUFBTFFBQklRa2dCQ0FGSUFBdEFBQnFRYkF1YWkwQUFEb0FBQ0FCS0FJSUlRVWdBQzBBQWlFTUlBUWdCaUFKYWtHd0xtb3RBQUE2QUFFZ0FTZ0NEQ0VHSUFBdEFBTWhDU0FFSUFVZ0RHcEJzQzVxTFFBQU9nQUNJQVFnQmlBSmFrR3dMbW90QUFBNkFBTWdBU2dDRkNFRklBQXRBQWtoQmlBRUlBdHFJZ1FnQVNnQ0VDQUFMUUFJYWtHd0xtb3RBQUE2QUFBZ0FTZ0NHQ0VKSUFBdEFBb2hEQ0FFSUFVZ0JtcEJzQzVxTFFBQU9nQUJJQUVvQWh3aEJTQUFMUUFMSVFZZ0JDQUpJQXhxUWJBdWFpMEFBRG9BQWlBRUlBVWdCbXBCc0M1cUxRQUFPZ0FESUFFb0FpUWhCU0FBTFFBUklRWWdCQ0FMYWlJRUlBRW9BaUFnQUMwQUVHcEJzQzVxTFFBQU9nQUFJQUVvQWlnaENTQUFMUUFTSVF3Z0JDQUZJQVpxUWJBdWFpMEFBRG9BQVNBQktBSXNJUVVnQUMwQUV5RUdJQVFnQ1NBTWFrR3dMbW90QUFBNkFBSWdCQ0FGSUFacVFiQXVhaTBBQURvQUF5QUJLQUkwSVFVZ0FDMEFHU0VHSUFRZ0Myb2lCQ0FCS0FJd0lBQXRBQmhxUWJBdWFpMEFBRG9BQUNBQktBSTRJUWtnQUMwQUdpRU1JQVFnQlNBR2FrR3dMbW90QUFBNkFBRWdBU2dDUENFQklBQXRBQnNoQUNBRUlBa2dER3BCc0M1cUxRQUFPZ0FDSUFRZ0FDQUJha0d3TG1vdEFBQTZBQU1NQVFzZ0FDZ0NDQ0VCSUFRZ0FDZ0NBRFlDQUNBRUlBNXFJZ1FnQVRZQ0FDQUFLQUlZSVFFZ0JDQU9haUlFSUFBb0FoQTJBZ0FnQkNBT2FpQUJOZ0lBQ3lBS1FRRnFJZ3BCR0VjTkFBc0w1Z0VCQjM4Q1FDQUFLQUlBSWdWRkRRQWdBRUVCTmdJOElBQW9BamdOQUNBQUtBSWNJUVpCLy8vLy93Y2hBZ05BQTBBZ0JTQURRU2hzYWlJRUtBSVlCRUFnQkNBQklBUW9BaEFpQkNBQ1NDSUhHeUVCSUFRZ0FpQUhHeUVDQ3lBRFFRRnFJZ01nQmswTkFDQUJSUTBDSUFBb0Fnd2dBQ2dDRUNJRFFRUjBhaUlDSUFFb0FnQTJBZ0FnQWlBQktBSWtOZ0lNSUFJZ0FTZ0NIRFlDQkNBQ0lBRW9BaUEyQWdnZ0FDQURRUUZxTmdJUVFRQWhBeUFCUVFBMkFoZ2dBU2dDRkNFRVFRQWhBVUgvLy8vL0J5RUNJQVFOQUFzZ0FDQUFLQUlzUVg5cU5nSXNEQUFBQ3dBTEM5d0dBUXAvSUFCQ0FEY0NFQUpBQWtBQ1FDQURSUTBBQWtBQ1FDQUJJQUFvQWpBaUEwY0VRQ0FEUVFGcUlBQW9BaUFpQkhBaUNTQUJSZzBCSUFBb0FnQWdBQ2dDSEVFb2JHb29BZ0FoQ3dOQUFrQUNRQ0FBS0FJb0lnY0VRQ0FBS0FJQUlRaEJBQ0VEQTBBZ0NDQURRU2hzYWlJRktBSVVRWDlxUVFGTkJFQWdCU0FGS0FJTUlnVWdCRUVBSUFVZ0NVc2JhellDQ0FzZ0EwRUJhaUlESUFkSERRQUxJQWNnQUNnQ0dFa05Ba0YvSVFWQkFDRURRUUFoQkFOQUlBZ2dBMEVvYkdvaUJpZ0NGRUYvYWtFQlRRUkFJQVlvQWdnaUJpQUVJQVZCZjBZZ0JpQUVTSElpQmhzaEJDQURJQVVnQmhzaEJRc2dBMEVCYWlJRElBZEhEUUFMSUFWQkFFNE5BVUVCRHd0QkFDRUhJQUFvQWhnTkFVRUJEd3NnQ0NBRlFTaHNhaUlEUVFBMkFoUWdBQ0FIUVg5cUlnYzJBaWdnQXlnQ0dBMEFJQUFnQUNnQ0xFRi9hallDTEFzZ0FDZ0NMQ0lGSUFBb0Fod2lDRThFUUNBQUtBSTREUVlnQUNnQ0FDRU1BMEJCQUNFRVFmLy8vLzhISVFaQkFDRURBMEFnRENBRFFTaHNhaUlLS0FJWUJFQWdDaUFFSUFvb0FoQWlDaUFHU0NJTkd5RUVJQW9nQmlBTkd5RUdDeUFEUVFGcUlnTWdDRTBOQUFzQ1FDQUVSUTBBSUFBb0Fnd2dBQ2dDRUNJR1FRUjBhaUlESUFRb0FnQTJBZ0FnQXlBRUtBSWtOZ0lNSUFNZ0JDZ0NIRFlDQkNBRElBUW9BaUEyQWdnZ0FDQUdRUUZxTmdJUUlBUkJBRFlDR0NBRUtBSVVEUUFnQUNBRlFYOXFJZ1UyQWl3TElBVWdDRThOQUFzTElBQW9BZ0FpQkNBSVFTaHNhaUlESUFrMkFnd2dBMEtBZ0lDQUVEY0NFQ0FEUVFBMkFoZ2dBeUFKTmdJSUlBQWdCMEVCYWpZQ0tDQUFJQVZCQVdvMkFpd2dCQ0FJUVFGcUVDY2dDVUVCYWlBQUtBSWdJZ1J3SWdrZ0FVY05BQXNDUUNBQUtBSVFJZ2xGRFFBZ0FDZ0NBQ0lGSUFBb0Fod2lCRUVvYkdvaUNDZ0NBQ0VISUFBb0Fnd2hCa0VBSVFNRFFDQUhJQVlnQTBFRWRHb29BZ0JIQkVBZ0NTQURRUUZxSWdOSERRRU1BZ3NMSUFSRkRRQkJBQ0VEQTBBZ0N5QUZJQU5CS0d4cUlna29BZ0JIQkVBZ0JDQURRUUZxSWdOSERRRU1BZ3NMSUFrZ0J6WUNBQ0FJSUFzMkFnQUxJQUlOQlNBQUtBSXdJUU1NQWdzZ0FrRUFSdzhMSUFJTkF3c2dBU0FEUmcwQUlBQWdBU0FBS0FJZ0lnQnFRWDlxSUFCd05nSXdDMEVBRHdzRFFBd0FBQXNBQ3lBQUlBRTJBakJCQUF0MUFRTi9Ba0FnQUNnQ0FDSUJSUTBBSUFBb0FoeEJmMFlOQUFOQUlBRWdBa0VvYkNJRGFpZ0NCQkFFSUFBb0FnQWlBU0FEYWtFQU5nSUVJQUpCQVdvaUFpQUFLQUljUVFGcVNRMEFDd3NnQVJBRUlBQkJBRFlDQUNBQUtBSUVFQVFnQUVFQU5nSUVJQUFvQWd3UUJDQUFRUUEyQWd3TGd3RUJBMzhDUUNBQUtBSUFJZ1pGRFFBZ0FDZ0NIRUYvUmcwQUEwQWdCaUFIUVNoc0lnaHFLQUlFRUFRZ0FDZ0NBQ0lHSUFocVFRQTJBZ1FnQjBFQmFpSUhJQUFvQWh4QkFXcEpEUUFMQ3lBR0VBUWdBRUVBTmdJQUlBQW9BZ1FRQkNBQVFRQTJBZ1FnQUNnQ0RCQUVJQUJCQURZQ0RDQUFJQUVnQWlBRElBUWdCUkJkQzRBQ0FRSi9JQUFnQlRZQ09DQUFJQVEyQWlBZ0FFTC8vd00zQWlRZ0FFSUFOd0lzSUFBZ0EwRUJJQU5CQVVzYklnTTJBaGdnQUNBRElBSWdCUnNpQWpZQ0hDQUFRYWdGRUFvaUF6WUNBRUgvL3dNaEJBSkFJQU5GRFFCQkFDRUZJQU5CQUVHb0JSQUhJUVlnQWtGL1J3UkFJQUZCZ0FOc1FTOXlJUVZCQUNFREEwQWdCaUFEUVNoc2FpSUhJQVVRQ2lJQk5nSUVJQUZGRFFJZ0J5QUJRUUFnQVd0QkQzRnFOZ0lBSUFNZ0Fra2hBU0FEUVFGcUlRTWdBUTBBQ3lBQ1FRUjBRUkJxSVFVTElBQkJ4QUFRQ2lJQk5nSUVJQUFnQlJBS0lnSTJBZ3dnQWtVTkFDQUJSUTBBUVFBaEJDQUJRUUJCeEFBUUJ4b2dBRUlBTndJUUN5QUVDOU1CQVFkL1FRRWhBUUpBSUFBb0FqZ05BQ0FBS0FJY0lRVWdBQ2dDQUNFR1FmLy8vLzhISVFOQkFDRUJBMEFnQmlBQlFTaHNhaUlFS0FJWUJFQWdCQ0FDSUFRb0FoQWlCQ0FEU0NJSEd5RUNJQVFnQXlBSEd5RURDeUFCUVFGcUlnRWdCVTBOQUFzZ0FrVUVRRUVCRHdzZ0FDZ0NEQ0FBS0FJUUlnTkJCSFJxSWdFZ0FpZ0NBRFlDQUNBQklBSW9BaVEyQWd3Z0FTQUNLQUljTmdJRUlBRWdBaWdDSURZQ0NDQUFJQU5CQVdvMkFoQkJBQ0VCSUFKQkFEWUNHQ0FDS0FJVURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3lBQkMvVUVBUWgvSUFBb0FpZ2lCQVJBSUFBb0FnQWhCd05BSUFjZ0JVRW9iR29pQmlnQ0ZFRi9ha0VCVFFSQUlBWWdCaWdDRENJSUlBSkxCSDhnQ0NBQUtBSWdhd1VnQ0FzMkFnZ0xJQVZCQVdvaUJTQUVSdzBBQ3d0QkFDRUVBa0FnQVNnQ0FFVU5BQ0FCS0FJRUlnVkJBa3NOQUVFQUlRY2dBaUVHQTBBQ1FBSkFBa0FnQlVFQ1J3UkFJQUVnQjBFTWJHb29BZ2doQkFKQUlBVkZCRUFnQmlBRWF5SUdRWDlLRFFFZ0FDZ0NJQ0FHYWlFR0RBRUxJQVFnQm1vaUJrRUFJQUFvQWlBaUJTQUdJQVZJRzJzaEJnc2dCaUVKSUFZZ0Frc0VRQ0FHSUFBb0FpQnJJUWtMSUFBb0FoZ2lDa1VFUUVFQkR3c2dBQ2dDQUNFSVFRQWhCUU5BSUFnZ0JVRW9iR29pQkNnQ0ZDSUxRWDlxUVFGTkJFQWdCQ2dDQ0NBSlJnMERDMEVCSVFRZ0JVRUJhaUlGSUFwSERRQUxEQVVMUVFFaEJDQUFLQUlZSWdsRkRRUWdBU0FIUVF4c2FpZ0NEQ0VLSUFBb0FnQWhDRUVBSVFVRFFDQUlJQVZCS0d4cUlnUW9BaFJCQTBZRVFDQUVLQUlJSUFwR0RRTUxRUUVoQkNBRlFRRnFJZ1VnQ1VjTkFBc01CQXNnQlVFQVNBUkFRUUVQQzBFQklRUWdDMEVCU3cwQkRBTUxRUUVoQkNBRlFRQklEUUlMSUFjZ0F5SUVTUVJBQTBBZ0FDZ0NCQ0lKSUFSQkFuUnFJQWtnQkVGL2FpSUVRUUowYWlnQ0FEWUNBQ0FFSUFkTERRQUxJQUFvQWdBaENBc2dBQ2dDQkNBSFFRSjBhaUFJSUFWQktHd2lDV28yQWdBZ0IwRUJhaUlISVFRZ0J5SUZJQU5OQkVBRFFDQUFLQUlFSWdnZ0JVRUNkR29vQWdBaUNpQUFLQUlBSUFscVJ3UkFJQWdnQkVFQ2RHb2dDallDQUNBRVFRRnFJUVFMSUFWQkFXb2lCU0FEVFEwQUN3dEJBQ0VFSUFFZ0IwRU1iR29vQWdRaUJVRURTUTBBQ3dzZ0JBc0hBRUhFR2hBS0M3Y0JBUUovSXdCQkVHc2lCaVFBSUFaQkFEWUNEQ0FBSUFFZ0FpQUdRUXhxRUNvaUIwRjljVVVFUUFOQUlBQWdBU0FHS0FJTUlnZHFJZ0VnQWlBSGF5SUNJQVpCREdvUUtpSUhRWDF4UlEwQUN3c2dCMEVCUmdSQUlBUWdBQ2dDRUNJQktBSTBRUVIwTmdJQUlBVWdBU2dDT0VFRWREWUNBQ0FESUFCQnhBbHFJZ0FvQWhRaUFTQUFLQUlRU1FSL0lBQWdBVUVCYWpZQ0ZDQUFLQUlNSUFGQkJIUnFCVUVBQ3lnQ0FEWUNBQXNnQmtFUWFpUUFJQWNMU1FFQmZ5QUFRUUJCeEJvUUJ5SUNRYlFLYWtFQk5nSUFJQUpDZ0lLQWdJQUVOd0lFSUFCQndCQVFDaUlDTmdLd0dpQUNSUVJBUVFFUEN5QUJCRUFnQUVFQk5nTEFDUXRCQUF1NkJBRUpmd0pBQWtBZ0FVRUVTUTBBSUFBdEFBQU5BQ0FBTFFBQkRRQWdBQzBBQWlJSFFRRkxEUUJCQXlFRUlBQkJBMm9oQlVFQ0lRaEJmU0VNQWtBRFFDQUZJUVlDZnlBSVFRRnFJQWRCL3dGeElnVkZEUUFhUVFBaEJ5QUZRUUZHUVFBZ0NFRUJTeHNOQWtFQUN5RUlJQVJCZjNNaERDQUdRUUZxSVFVZ0JpMEFBQ0VISUFSQkFXb2lCQ0FCUncwQUN5QURJQUUyQWdCQkFROExJQVFoQ2tFQUlRaEJBQ0VGQTBCQkFTQUlJQWNnQmkwQUFDSUxSV29pQ1VFQ1Joc2dDQ0FMUVFOR0d5RUlJQXBCQVdvaENnSkFJQXRCQVVjTkFDQUpRUUpKRFFBZ0FpQUtJQXhxSUFsQmYzTnFJZ0UyQWd4QkFDQUpRWDFxSWdZZ0JpQUpTeHNoQnd3REMwRUFJQWtnQ3hzaEIwRUJJQVVnQ1VFQ1N4c2dCU0FMR3lFRklBWkJBV29oQmlBQklBcEhEUUFMSUFJZ0FTQU1haUFIYXlJQk5nSU1EQUVMSUFJZ0FUWUNERUVCSVFoQkFDRUhDeUFDUVFBMkFoQWdBa0VBTmdJSUlBSWdBQ0FFYWlJQU5nSUVJQUlnQURZQ0FDQURJQVFnQjJvZ0FXbzJBZ0JCQVNFREFrQWdCUTBBUVFBaEF5QUlSUTBBSUFJQ2Z5QUNLQUlNSWdGRkJFQWdBQ0VFUVFBTUFRc2dBQ0VFUVFBaEJnTkFJQUZCZjJvaEFTQUVMUUFBSVFVQ2Z3SkFJQVpCQWtjTkFDQUZRUU5HQkVBZ0FVVUVRRUVCRHdzZ0JDMEFBVUVEU3dSQVFRRVBDMEVBSVFZZ0JFRUJhZ3dDQ3lBRlFRTlBEUUJCQVE4TElBQWdCVG9BQUVFQUlBWkJBV29nQlJzaEJpQUFRUUZxSVFBZ0JFRUJhZ3NoQkNBQkRRQUxJQUlvQWd3TElBQWdCR3RxTmdJTUN5QURDd3Z0TWhrQVFZWUlDOG9GWmlBbUVBWUlaUmhsR0VNUVF4QkRFRU1RUXhCREVFTVFReEFpQ0NJSUlnZ2lDQ0lJSWdnaUNDSUlJZ2dpQ0NJSUlnZ2lDQ0lJSWdnaUNBQUFBQUFBQUFBQWFrQktNQ29vQ2lCcE9HazRTU2hKS0NrZ0tTQUpHQWtZYURCb01HZ3dhREJJSUVnZ1NDQklJQ2dZS0Jnb0dDZ1lDQkFJRUFnUUNCQm5LR2NvWnlobktHY29aeWhuS0djb1J4aEhHRWNZUnhoSEdFY1lSeGhIR0c1Z1RsZ3VVQTVRYmxoT1VDNUlEa2dOUUExQVRVaE5TQzFBTFVBTk9BMDRiVkJ0VUUxQVRVQXRPQzA0RFRBTk1HdElhMGhyU0d0SWEwaHJTR3RJYTBoTE9FczRTemhMT0VzNFN6aExPRXM0S3pBck1Dc3dLekFyTUNzd0t6QXJNQXNvQ3lnTEtBc29DeWdMS0Fzb0N5Z0FBQUFBTDJndmFCQ0FVSUF3Z0JCNGNJQlFlREI0RUhCd2VGQndNSEFRYUc5d2IzQlBhRTlvTDJBdllBOWdEMkJ2YUc5b1QyQlBZQzlZTDFnUFdBOVlBQUFBQUFBQUFBQm1PRVlnSmlBR0VHWXdSaGdtR0FZSVpTaGxLQ1VRSlJCa0lHUWdaQ0JrSUdRWVpCaGtHR1FZUXhCREVFTVFReEJERUVNUVF4QkRFQUFBQUFBQUFBQUFhVWhKT0NrNENUQUlLQWdvU0RCSU1DZ3dLREFJSUFnZ1owQm5RR2RBWjBCSEtFY29SeWhIS0Njb0p5Z25LQ2NvQnhnSEdBY1lCeGdBQUFBQWJYaHRlRzZBVG9BdWdBNkFMbmdPZUU1NExuQk5jRTF3RFhBTmNHMXdiWEJOYUUxb0xXZ3RhQTFvRFdodGFHMW9UV0JOWUMxZ0xXQU5ZQTFnREZnTVdBeFlERmhNV0V4WVRGaE1XQ3hZTEZnc1dDeFlERkFNVUF4UURGQnNZR3hnYkdCc1lFeFFURkJNVUV4UUxGQXNVQ3hRTEZBTVNBeElERWdNU0d0WWExaHJXR3RZYTFocldHdFlhMWhMU0V0SVMwaExTRXRJUzBoTFNFdElLMGdyU0N0SUswZ3JTQ3RJSzBnclNBdEFDMEFMUUF0QUMwQUxRQXRBQzBCclVHdFFhMUJyVUd0UWExQnJVR3RRUzBCTFFFdEFTMEJMUUV0QVMwQkxRQ3RBSzBBclFDdEFLMEFyUUN0QUswQUxPQXM0Q3pnTE9BczRDemdMT0FzNEFFSGdEUXV1Q1FZWVJqZ21PQVlRWmtoR01DWXdCZ2dsS0NVb1JTaEZLQ1VnSlNCRklFVWdKUmdsR0dWQVpVQkZHRVVZSlJBbEVHUTRaRGhrT0dRNFpEQmtNR1F3WkRCa0tHUW9aQ2hrS0dRZ1pDQmtJR1FnWkJoa0dHUVlaQmhFRUVRUVJCQkVFQ1FJSkFna0NDUUlCQUFFQUFRQUJBQUFBQXFBYW9CS2dDcUFDbmhxZUVwNEtuZ0tjR3B3U25BcWNBcG9LV2dwYUFsZ0NXQkphRWxvS1dBcFlBbFlDVmhwYUdsb1NXQkpZQ2xZS1ZnSlVBbFFhR0JvWUdoZ2FHQklXRWhZU0ZoSVdDaFFLRkFvVUNoUUNFZ0lTQWhJQ0Vob1dHaFlhRmhvV0VoUVNGQklVRWhRS0Vnb1NDaElLRWdJUUFoQUNFQUlRQWM0QnpnSE9BYzRCemdIT0FjNEJ6Z0hNQWN3QnpBSE1BY3dCekFITUFjd1IwaEhTRWRJUjBoSFNFZElSMGhIU0Fjb0J5Z0hLQWNvQnlnSEtBY29CeWhuVUdkUVoxQm5VR2RRWjFCblVHZFFSMEJIUUVkQVIwQkhRRWRBUjBCSFFDZEFKMEFuUUNkQUowQW5RQ2RBSjBBSElBY2dCeUFISUFjZ0J5QUhJQWNnQmdnbUNBQUFCZ0FHRUNZUVJoQUFBQVlZSmhoR0dHWVlCaUFtSUVZZ1ppQUdLQ1lvUmlobUtBWXdKakJHTUdZd0JqZ21PRVk0WmpnR1FDWkFSa0JtUUFaSUpraEdTR1pJQmxBbVVFWlFabEFHV0NaWVJsaG1XQVpnSm1CR1lHWmdCbWdtYUVab1ptZ0djQ1p3Um5CbWNBWjRKbmhHZUdaNEJvQW1nRWFBWm9BQUFFTVFBZ0FDQUNFSUlRZ2hDQ0VJWnlCbklFZ2dLQ0JIR0VjWUp4Z25HQVlnQmlBR0lBWWdCaGdHR0FZWUJoZ0dFQVlRQmhBR0VHWVlaaGhtR0dZWUpoQW1FQ1lRSmhBR0NBWUlCZ2dHQ0FBQVpWVkVSRFEwSXlNakl4TVRFeE1CQVFFQkFRRUJBUUVCQVFFQkFRRUJBUG5wMmNqSXVMaW5wNmVubDVlWGw0YUdob2FHaG9hR2RuWjJkbloyZG5ibTFzYTJwYVdWbFlTRWhJUjBkSFIwWkdSa1pGUlVWRlJEUTBORFEwTkRRek16TXpNek16TXpJeU1qSXlNakl5TVRFeE1URXhNVEV3TURBd01EQXdNRDFyYkZ4YVdsbFpXRWhJU0VWRlJVVkVSRVJFUUVCQVFFYzNOemMzTnpjM05qWTJOalkyTmpZek16TXpNek16TXpJeU1qSXlNakl5TVRFeE1URXhNVEU4VzFwUVdVbEhSME5EUWtKSU9EZzROalkyTmpVMU5UVTBORFEwTVRFeE1UdFpXa3BJU0VKQ1FVRkFRRWMzTnpjMk5qWTJOVFUxTlRRME5EUXpNek16T21CaFVWaElTRWhKT1RrNU9UazVPVGMzTnpjM056YzNOalkyTmpZMk5qWTFOVFUxTlRVMU5UUTBORFEwTkRRME16TXpNek16TXpNeU1qSXlNakl5TWpsZ1lWRlhSMGRIU0RnNE9EZzRPRGcyTmpZMk5qWTJOalEwTkRRME5EUTBNek16TXpNek16TXlNakl5TWpJeU1qVWxKU1VsSlNVbEpTVWxKU1VsSlNVb1lHSlNVVUZCUVVjM056YzNOemMzTmpZMk5qWTJOall6TXpNek16TXpNelVsSlNVbEpTVWxKU1VsSlNVbEpTVWtKQ1FrSkNRa0pDUWtKQ1FrSkNRa0lXQm5WMUpDUWtKRk5UVTFOVFUxTlRZbUppWW1KaVltSmlZbUppWW1KaVlrSkNRa0pDUWtKQ1FrSkNRa0pDUWtJeU1qSXlNakl5TWpJeU1qSXlNakl5RlFWa1pDTWpJeU5TVWxKU1VsSlNVa0pDUWtKQ1FrSkNNakl5TWpJeU1qSUVGQ01qTXpOVFUwRkJRVUZCUVVGQkJCUkRReUlpSWlJeE1URXhNVEV4TVFNVE1qSWhJU0VoQWhJaElSRUJJaElCQVRJaUVnSkRNeUlpRWhJQ0FsTkRNeU1TRWdJQ0V5TkRNMk5UQWdJQVFhQVhDeVFFQkFVR0J3Z0pDZ3dORHhFVUZoa2NJQ1FvTFRJNFAwZFFXbVZ4ZjVDaXRzdmkvLzhBUWVBWEN5UUNBZ0lEQXdNREJBUUVCZ1lIQndnSUNRa0tDZ3NMREF3TkRRNE9EdzhRRUJFUkVoSUFRY1VZQzRRQkFRQUFBUUFBQVFBQUFRQUJBUUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBZ0VCQWdFQkFnRUJBZ0VDQXdFQ0F3SUNBd0lDQkFJREJBSURCQU1EQlFNRUJnTUVCZ1FGQndRRkNBUUdDUVVIQ2dZSUN3WUlEUWNLRGdnTEVBa01FZ29ORkFzUEZ3MFJHUUFBQUFBQUFBQUFCUUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUVIVUdRc1ZCUUFBQUFBQUFBQUhBQUFBL3dBQUFBQUFBQUQvQUVIMEdRc1ZCUUFBQUFRQUFBQUFBQUFBL3dBQUFBQUFBQUQvQUVHVUdnc0ZCUUFBQUFRQVFhUWFDNlVCQndBQUFBUUFBQUFDQUFBQUJBQUFBQUVBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUFRQUFBQVFBQUFBREFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFCQUFBQUJBQUFBQVFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBRUFBQUFFQUFBQUJBQUFBQVFBQUFBREFBQUFCQUFBQUFZQUFBQUFBQUFBRFFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFEL0FFSFVHd3NWRFFBQUFBQUFBQUFQQUFBQS93QUFBQUFBQUFEL0FFSDBHd3NWRFFBQUFBUUFBQUFJQUFBQS93QUFBQUFBQUFEL0FFR1VIQXUxQ3cwQUFBQUVBQUFBQ0FBQUFBQUFBQUFQQUFBQUJBQUFBQW9BQUFBRUFBQUFDUUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQVFBQUFBSkFBQUFCQUFBQUFzQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUJBQUFBQWtBQUFBRUFBQUFEQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUNRQUFBQVFBQUFBTUFBQUFCQUFBQUFzQUFBQUVBQUFBRGdBQUFBRUFBQUFLQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBb0FBQUFFQUFBQUFBQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUJBQUFBQ2dBQUFBRUFBQUFMQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFFQUFBQUtBQUFBQVFBQUFBc0FBQUFFQUFBQUFBQUFBQVFBQUFBQkFBQUFBUUFBQUE0QUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBQkFBQUFEZ0FBQUFRQUFBQUVBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQUVBQUFBT0FBQUFBUUFBQUE4QUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUFRQUFBQTRBQUFBQkFBQUFEd0FBQUFRQUFBQUVBQUFBQkFBQUFBVUFBQUFFQUFBQUFnQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFDQUFBQUJBQUFBQWdBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBSUFBQUFFQUFBQUF3QUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUVBQUFBQWdBQUFBUUFBQUFEQUFBQUJBQUFBQWdBQUFBRUFBQUFDUUFBQUFRQUFBQUdBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFCQUFBQUFZQUFBQUVBQUFBREFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBRUFBQUFCZ0FBQUFRQUFBQUhBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQVFBQUFBR0FBQUFCQUFBQUFjQUFBQUVBQUFBREFBQUFBUUFBQUFOQUFBQUFRQUFBQTRBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFCQUFBQURnQUFBUDhBQUFBRUFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBRUFBQUFMQUFBQUFRQUFBQTRBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBc0FBQUFCQUFBQURnQUFBQVFBQUFBQkFBQUEvd0FBQUFRQUFBQUNBQUFBQ2dBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFJQUFBQUtBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFBUUFBQUE4QUFBQUNBQUFBQ2dBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBQkFBQUFEd0FBQUFJQUFBQUtBQUFBQkFBQUFBVUFBQUQvQUFBQUFBQUFBQVFBQUFBR0FBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUJBQUFBQVlBQUFEL0FBQUFEQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUF3QUFBQVFBQUFBR0FBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFEQUFBQUJBQUFBQVlBQUFBRUFBQUFDUUFBQVA4QUFBQU1BQUFBL3dBQUFBSUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBRC9BQUFBQWdBQUFQOEFBQUFJQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFRQUFBQUhBQUFBL3dBQUFBSUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFCQUFBQUFjQUFBRC9BQUFBQWdBQUFBUUFBQUFOQUFBQS93QUFBQWdBQUFBREFBQUFEd0FBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQU1BQUFBUEFBQUFBQUFBQUFVQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUF3QUFBQThBQUFBQkFBQUFDZ0FBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFEQUFBQUR3QUFBQUVBQUFBS0FBQUFBQUFBQUFVQUFBQUVBQUFBQUFBQUFBRUFBQUFMQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBc0FBQUFFQUFBQUFRQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUJBQUFBQ3dBQUFBRUFBQUFPQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFFQUFBQUxBQUFBQVFBQUFBNEFBQUFFQUFBQUFRQUFBQVFBQUFBRUFBQUFBQUFBQUFjQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQS93QkIxQ2NMRlFjQUFBQUFBQUFBRFFBQUFQOEFBQUFBQUFBQS93QkI5Q2NMRlFjQUFBQUVBQUFBQWdBQUFQOEFBQUFBQUFBQS93QkJsQ2dMMlFFSEFBQUFCQUFBQUFJQUFBQUFBQUFBRFFBQUFBUUFBQUFJQUFBQUJBQUFBQU1BQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUF3QUFBQVFBQUFBSkFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFEQUFBQUJBQUFBQVlBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBTUFBQUFFQUFBQUJnQUFBQVFBQUFBSkFBQUFCQUFBQUF3QUFBQUFBQUFBQkFBQUFBQUFBQUFFQUFBQUNBQUFBQXdBQUFBSUFBQUFEQUFBQUFBQUFBQUVBQUFBQUFBQUFBUUFBQUFJQUFBQURBQUFBQWdBQUFBTUFFSDRLUXNGQkFBQUFBUUFRWWdxQ3lVRUFBQUFCQUFBQUFnQUFBQUlBQUFBREFBQUFBd0FBQUFJQUFBQUNBQUFBQXdBQUFBTUFFR3hMZ3ZJQmdFQ0F3UUZCZ2NJQ1FvTERBME9EeEFSRWhNVUZSWVhHQmthR3h3ZEhoOGdJU0lqSkNVbUp5Z3BLaXNzTFM0dk1ERXlNelExTmpjNE9UbzdQRDArUDBCQlFrTkVSVVpIU0VsS1MweE5UazlRVVZKVFZGVldWMWhaV2x0Y1hWNWZZR0ZpWTJSbFptZG9hV3ByYkcxdWIzQnhjbk4wZFhaM2VIbDZlM3g5Zm4rQWdZS0RoSVdHaDRpSmlvdU1qWTZQa0pHU2s1U1ZscGVZbVpxYm5KMmVuNkNob3FPa3BhYW5xS21xcTZ5dHJxK3dzYkt6dExXMnQ3aTV1cnU4dmI2L3dNSEN3OFRGeHNmSXljckx6TTNPejlEUjB0UFUxZGJYMk5uYTI5emQzdC9nNGVMajVPWG01K2pwNnV2czdlN3Y4UEh5OC9UMTl2ZjQrZnI3L1AzKy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL0FBQUFBQUVBQUFBRUFBQUFCUUFBQUFJQUFBQURBQUFBQmdBQUFBY0FBQUFJQUFBQUNRQUFBQXdBQUFBTkFBQUFDZ0FBQUFzQUFBQU9BQUFBRHdBQUFBQUFBQUFCQUFBQUFRQkJoRFVMSVFFQUFBQUJBQUFBQVFBQUFBRUFBQUFDQUFBQUFnQUFBQUVBQUFBQ0FBQUFBZ0JCdERVTEJRVUFBQUFFQUVIRU5RdkpCZ2NBQUFBRUFBQUFBZ0FBQUFRQUFBQUJBQUFBQkFBQUFBUUFBQUFFQUFBQUF3QUFBQVFBQUFBR0FBQUFBQUFBQUEwQUFBQUVBQUFBQ0FBQUFBQUFBQUFQQUFBQUJBQUFBQW9BQUFBRUFBQUFDUUFBQUFRQUFBQU1BQUFBQkFBQUFBc0FBQUFFQUFBQURnQUFBQUFBQUFBUkFBQUFCQUFBQUJBQUFBQUFBQUFBRXdBQUFBUUFBQUFTQUFBQUFBQUFBQlVBQUFBRUFBQUFGQUFBQUFBQUFBQVhBQUFBQkFBQUFCWUFBQUFCQUFBQUNnQUFBQUVBQUFBTEFBQUFCQUFBQUFBQUFBQUVBQUFBQVFBQUFBRUFBQUFPQUFBQUFRQUFBQThBQUFBRUFBQUFCQUFBQUFRQUFBQUZBQUFBQkFBQUFBSUFBQUFFQUFBQUF3QUFBQVFBQUFBSUFBQUFCQUFBQUFrQUFBQUVBQUFBQmdBQUFBUUFBQUFIQUFBQUJBQUFBQXdBQUFBRUFBQUFEUUFBQUFFQUFBQVNBQUFBQVFBQUFCTUFBQUFFQUFBQUVBQUFBQVFBQUFBUkFBQUFBUUFBQUJZQUFBQUJBQUFBRndBQUFBUUFBQUFVQUFBQUJBQUFBQlVBQUFBQkFBQUFDd0FBQUFFQUFBQU9BQUFBQkFBQUFBRUFBQUQvQUFBQUJBQUFBQUVBQUFBUEFBQUFBZ0FBQUFvQUFBQUVBQUFBQlFBQUFQOEFBQUFBQUFBQUJBQUFBQU1BQUFBRUFBQUFCZ0FBQUFRQUFBQUpBQUFBL3dBQUFBd0FBQUFFQUFBQUJ3QUFBUDhBQUFBQ0FBQUFCQUFBQUEwQUFBRC9BQUFBQ0FBQUFBRUFBQUFUQUFBQUFnQUFBQklBQUFBRUFBQUFFUUFBQVA4QUFBQVFBQUFBQVFBQUFCY0FBQUFDQUFBQUZnQUFBQVFBQUFBVkFBQUEvd0FBQUJRQUFBQURBQUFBRHdBQUFBRUFBQUFLQUFBQUFBQUFBQVVBQUFBRUFBQUFBQUFBQUFFQUFBQUxBQUFBQVFBQUFBNEFBQUFFQUFBQUFRQUFBQVFBQUFBRUFBQUFBQUFBQUFjQUFBQUVBQUFBQWdBQUFBQUFBQUFOQUFBQUJBQUFBQWdBQUFBRUFBQUFBd0FBQUFRQUFBQUdBQUFBQkFBQUFBa0FBQUFFQUFBQURBQUFBQU1BQUFBVEFBQUFBUUFBQUJJQUFBQUFBQUFBRVFBQUFBUUFBQUFRQUFBQUF3QUFBQmNBQUFBQkFBQUFGZ0FBQUFBQUFBQVZBQUFBQkFBQUFCUUFBQUFCQUFBQUFRQUFBQUlBQUFBQ0FBQUFBd0FBQUFNQUFBQURBQUFBQXdBQUFBQUFBQUFCQUFBQUFnQUFBQU1BQUFBRUFBQUFCUUFBQUFZQUFBQUhBQUFBQ0FBQUFBa0FBQUFLQUFBQUN3QUFBQXdBQUFBTkFBQUFEZ0FBQUE4QVFaWThDeTRCQVFFQkFRRUNBZ0lDQWdJREF3TURBd01FQkFRRUJBUUZCUVVGQlFVR0JnWUdCZ1lIQndjSEJ3Y0lDQWdJQUVIUVBBdEZDZ0FBQUEwQUFBQVFBQUFBQ3dBQUFBNEFBQUFTQUFBQURRQUFBQkFBQUFBVUFBQUFEZ0FBQUJJQUFBQVhBQUFBRUFBQUFCUUFBQUFaQUFBQUVnQUFBQmNBQUFBZEFFR2hQUXN6QVFJREJBVUFBUUlEQkFVQUFRSURCQVVBQVFJREJBVUFBUUlEQkFVQUFRSURCQVVBQVFJREJBVUFBUUlEQkFVQUFRSURBRUhrUFF2TUFnRUFBQUFDQUFBQUF3QUFBQVFBQUFBRkFBQUFCZ0FBQUFjQUFBQUlBQUFBQ1FBQUFBb0FBQUFMQUFBQURBQUFBQTBBQUFBT0FBQUFEd0FBQUJBQUFBQVJBQUFBRWdBQUFCTUFBQUFVQUFBQUZRQUFBQllBQUFBWEFBQUFHQUFBQUJrQUFBQWFBQUFBR3dBQUFCd0FBQUFkQUFBQUhRQUFBQjRBQUFBZkFBQUFJQUFBQUNBQUFBQWhBQUFBSWdBQUFDSUFBQUFqQUFBQUl3QUFBQ1FBQUFBa0FBQUFKUUFBQUNVQUFBQWxBQUFBSmdBQUFDWUFBQUFtQUFBQUp3QUFBQ2NBQUFBbkFBQUFKd0FBQUFFQUFBQUNBQUFBQkFBQUFBZ0FBQUFRQUFBQUlBQUFBRUFBQUFDQUFBQUFMeDhQQUJjYkhSNEhDdzBPSnlzdExoQURCUW9NRXhVYUhDTWxLaXdCQWdRSUVSSVVHQVlKRmhrZ0lTSWtLQ1lwQUJBQkFnUUlJQU1GQ2d3UEx3Y0xEUTRHQ1I4akpTb3NJU0lrS0NjckxTNFJFaFFZRXhVYUhCY2JIUjRXR1NZcEFMQXRCRzVoYldVQjZ3TmtBQVp0WlcxamNIa0JCbkpsYzJsNlpRSUNaaklEQW1ZekJBRm1CUUptTlFZQ1pqWUhBbVkzQ0FKbU9Ba0NaamtLQVdVTEEyWXhNUXdEWmpFeURRTm1NVE1PQTJZeE5BOERaakUxRUFObU1UWVJBMll4TnhJRFpqRTRFd05tTVRrVUEyWXlNQlVEWmpJeEZnTm1NaklYQTJZeU14Z0RaakkwR1FObU1qVWFBMll5TmhzRFpqSTNIQU5tTWpnZEEyWXlPUjREWmpNd0h3Tm1NekVnQTJZek1pRURaak16SWdObU16UWpBMll6TlNRRFpqTTJKUU5tTXpjbUEyWXpPQ2NEWmpNNUtBTm1OREFwQTJZME1Tb0RaalF5S3dObU5ETXNBMlkwTkMwRFpqUTFMZ05tTkRZdkEyWTBOekFEWmpRNE1RTm1ORGt5QTJZMU1ETURaalV4TkFObU5USTFBMlkxTXpZRFpqVTBOd05tTlRVNEEyWTFOamtEWmpVM09nTm1OVGc3QTJZMU9Ud0Raall3UFFObU5qRStBMlkyTWo4RFpqWXpRQU5tTmpSQkEyWTJOVUlEWmpZMlF3Tm1OamRFQTJZMk9FVURaalk1UmdObU56QkhBMlkzTVVnRFpqY3lTUU5tTnpOS0EyWTNORXNEWmpjMVRBTm1OelpOQTJZM04wNERaamM0VHdObU56bFFBMlk0TUZFRFpqZ3hVZ05tT0RKVEEyWTRNMVFEWmpnMFZRTm1PRFZXQTJZNE5sY0RaamczV0FObU9EaFpBMlk0T1ZvRFpqa3dXd05tT1RGY0EyWTVNbDBEWmprelhnTm1PVFJmQTJZNU5XQUJhV0VCWjJJQlpHTUVaakV3TVFLNktXUUFBd0FBQVFBQ0FBRUJBQUFDQkFBQ2NEQUJBbkF4QWdKc01nTUNiRE1EQ1FBQ2NEQUJBbkF4QWdKc01nTUNiRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FRSUFBSndNQUVDYkRFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNGQkFBQ2NEQUJBbkF4QWdKc01nTUNiRE1HR0FBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpFV0Eyd3lNaGNEYkRJekJ3WUFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQVVDYkRVSUJnQUNjREFCQW5BeEFnSndNZ01DYkRNRUFtdzBCUUpzTlFrUUFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUVBBMnd4TlFvTUFBSndNQUVDYkRFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVMQXdBQ2NEQUJBbkF4QWdKc01nd1JBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRFFZQUFuQXdBUUp3TVFJQ2NESURBbXd6QkFKc05BVUNiRFVPRUFBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDY0RZSEFuQTNDQUp3T0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVQQlFBQ2NEQUJBbXd4QWdKc01nTUNiRE1FQW13MEVBc0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQVJBZ0FDY0RBQkFuQXhFZzhBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkJNREFBSndNQUVDYkRFQ0Ftd3lGQU1BQW5Bd0FRSndNUUlDYkRJVkJnQUNjREFCQW5BeEFnSndNZ01DYkRNRUFtdzBCUUpzTlJZbUFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2NEUUZBbkExQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUVBBMnd4TlJBRGJERTJFUU5zTVRjU0Eyd3hPQk1EYkRFNUZBTnNNakFWQTJ3eU1SWURiREl5RndOc01qTVlBMnd5TkJrRGJESTFHZ05zTWpZYkEyd3lOeHdEYkRJNEhRTnNNamtlQTJ3ek1COERiRE14SUFOc016SWhBMnd6TXlJRGJETTBJd05zTXpVa0Eyd3pOaVVEYkRNM0Z3TUFBbkF3QVFKd01RSUNjRElZRmdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpFWkVnQUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaEVEYkRFM0doWUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0p3TndnQ2NEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0RXdOc01Ua1VBMnd5TUJVRGJESXhHd1lBQW5Bd0FRSndNUUlDYkRJREFtd3pCQUpzTkFVQ2JEVWNCd0FDY0RBQkFuQXhBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlkQlFBQ2NEQUJBbkF4QWdKc01nTUNiRE1FQW13MEhnVUFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQjhCQUFKd01DQUVBQUp3TUFFQ2NERUNBbXd5QXdKc015RWJBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRVFOc01UY1NBMnd4T0JNRGJERTVGQU5zTWpBVkEyd3lNUllEYkRJeUZ3TnNNak1ZQTJ3eU5Ca0RiREkxR2dOc01qWWlGUUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNjRFlIQW5BM0NBSndPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPUlFEYkRJd0l4SUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0p3TndnQ2NEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE55UVVBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRVFOc01UY1NBMnd4T0JNRGJERTVKUThBQW5Bd0FRSndNUUlDY0RJREFtd3pCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkNZREFBSndNQUVDYkRFQ0Ftd3lKdzhBQW5Bd0FRSndNUUlDYkRJREFtd3pCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkNnQ0FBSndNQUVDYkRFcEVRQUNjREFCQW5BeEFnSndNZ01DY0RNRUFuQTBCUUp3TlFZQ2NEWUhBbkEzQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaW9IQUFKd01BRUNjREVDQW5BeUF3SndNd1FDYkRRRkFtdzFCZ0pzTmlzUEFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUXNCQUFDY0RBQkFuQXhBZ0pzTWdNQ2JETXRCUUFDY0RBQkFuQXhBZ0p3TWdNQ2JETUVBbXcwTGdNQUFuQXdBUUpzTVFJQ2JESXZBd0FDY0RBQkFtd3hBZ0pzTWpBSkFBSndNQUVDY0RFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NE1SWUFBbkF3QVFKd01RSUNiRElEQW13ekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0RXdOc01Ua1VBMnd5TUJVRGJESXhNZ29BQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NU13UUFBbkF3QVFKc01RSUNiRElEQW13ek5BUUFBbkF3QVFKc01RSUNiRElEQW13ek5ROEFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hORFlGQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRM0JRQUNjREFCQW5BeEFnSnNNZ01DYkRNRUFtdzBPQWNBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyT1FjQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNiRFVHQW13Mk9nY0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJPd2NBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyUEFVQUFuQXdBUUp3TVFJQ2NESURBbXd6QkFKc05EMEZBQUp3TUFFQ2NERUNBbkF5QXdKc013UUNiRFErRHdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMFB4SUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE4wQUhBQUp3TUFFQ2NERUNBbXd5QXdKc013UUNiRFFGQW13MUJnSnNOa0VRQUFKd01BRUNjREVDQW5BeUF3SndNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOVUlKQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0UXdnQUFuQXdBUUp3TVFJQ2JESURBbXd6QkFKc05BVUNiRFVHQW13MkJ3SnNOMFFRQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOVVVUQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0p3TmdjQ2NEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOUkFEYkRFMkVRTnNNVGNTQTJ3eE9FWVJBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFtdzRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyUnhNQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNjRFVHQW5BMkJ3SndOd2dDYkRnSkFtdzVDZ05zTVRBTEEyd3hNUXdEYkRFeURRTnNNVE1PQTJ3eE5BOERiREUxRUFOc01UWVJBMnd4TnhJRGJERTRTQmNBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUp3TkFVQ2NEVUdBbkEyQndKd053Z0NjRGdKQW5BNUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkE4RGJERTFFQU5zTVRZUkEyd3hOeElEYkRFNEV3TnNNVGtVQTJ3eU1CVURiREl4RmdOc01qSkpRd0FDY0RBQkFuQXhBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlIQW13M0NBSnNPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPUlFEYkRJd0ZRTnNNakVXQTJ3eU1oY0RiREl6R0FOc01qUVpBMnd5TlJvRGJESTJHd05zTWpjY0Eyd3lPQjBEYkRJNUhnTnNNekFmQTJ3ek1TQURiRE15SVFOc016TWlBMnd6TkNNRGJETTFKQU5zTXpZbEEyd3pOeVlEYkRNNEp3TnNNemtvQTJ3ME1Da0RiRFF4S2dOc05ESXJBMncwTXl3RGJEUTBMUU5zTkRVdUEydzBOaThEYkRRM01BTnNORGd4QTJ3ME9USURiRFV3TXdOc05URTBBMncxTWpVRGJEVXpOZ05zTlRRM0EydzFOVGdEYkRVMk9RTnNOVGM2QTJ3MU9Ec0RiRFU1UEFOc05qQTlBMncyTVQ0RGJEWXlQd05zTmpOQUEydzJORUVEYkRZMVFnTnNOalpLRXdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDY0RZSEFuQTNDQUp3T0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UaExGQUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNjRFlIQW5BM0NBSndPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPVXdIQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmswTkFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1rNExBQUp3TUFFQ2NERUNBbkF5QXdKc013UUNiRFFGQW13MUJnSnNOZ2NDYkRjSUFtdzRDUUpzT1FvRGJERXdUd1FBQW5Bd0FRSndNUUlDYkRJREFtd3pVQTRBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUp3TkFVQ2NEVUdBbkEyQndKd053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTlJEQUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKc05RWUNiRFlIQW13M0NBSnNPQWtDYkRrS0Eyd3hNQXNEYkRFeFVoTUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0VXlBQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNjRFVHQW13MkJ3SnNOd2dDYkRnSkFtdzVDZ05zTVRBTEEyd3hNUXdEYkRFeURRTnNNVE1PQTJ3eE5BOERiREUxRUFOc01UWVJBMnd4TnhJRGJERTRFd05zTVRrVUEyd3lNQlVEYkRJeEZnTnNNaklYQTJ3eU14Z0RiREkwR1FOc01qVWFBMnd5TmhzRGJESTNIQU5zTWpnZEEyd3lPUjREYkRNd0h3TnNNekZVRmdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpGVkN3QUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1GWUhBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSnNObGNxQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOUkFEYkRFMkVRTnNNVGNTQTJ3eE9CTURiREU1RkFOc01qQVZBMnd5TVJZRGJESXlGd05zTWpNWUEyd3lOQmtEYkRJMUdnTnNNalliQTJ3eU54d0RiREk0SFFOc01qa2VBMnd6TUI4RGJETXhJQU5zTXpJaEEyd3pNeUlEYkRNMEl3TnNNelVrQTJ3ek5pVURiRE0zSmdOc016Z25BMnd6T1NnRGJEUXdLUU5zTkRGWUV3QUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaEVEYkRFM0VnTnNNVGhaQ0FBQ2NEQUJBbXd4QWdKc01nTUNiRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNXZzRBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTmJCQUFDY0RBQkFtd3hBZ0pzTWdNQ2JETmNDUUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNiRFlIQW13M0NBSnNPRjBJQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0pzTmdjQ2JEZGVDQUFDY0RBQkFtd3hBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlIQW13M1h3d0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVdBQVlRZ0FBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FtdzJCd0pzTjJJREFBSndNQUVDY0RFQ0Ftd3lZdzBBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5IixVPWE7Ri5oMjY0TW9kdWxlPW5ldyBXZWJBc3NlbWJseS5Nb2R1bGUoVS5kZWNvZGUoTCkpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh5LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTtjb25zdCBZPUYscT1BPT4oSSxnLEIpPT57QS5IRUFQVTguY29weVdpdGhpbihJLGcsZytCKX07ZnVuY3Rpb24gSyhBLEkpe2NvbnN0IGc9QSVJO3JldHVybiBnPjA/QStJLWc6QX1jb25zdCBIPUE9Pkk9Pntjb25zdCBnPUEuSEVBUFU4Lmxlbmd0aCxCPTY1NTM2LFE9MjE0NzQ4MzY0ODtpZihJPlEpcmV0dXJuITE7Y29uc3QgQz0xNjc3NzIxNjtmb3IobGV0IEQ9MTtEPD00O0QqPTIpe2xldCBFPWcqKDErLjIvRCk7RT1NYXRoLm1pbihFLEkrMTAwNjYzMjk2KTtjb25zdCB3PU1hdGgubWluKFEsSyhNYXRoLm1heChDLEksRSksQikpO3RyeXtjb25zdHttZW1vcnk6b309QTtvLmdyb3cody1vLmJ1ZmZlci5ieXRlTGVuZ3RoKzY1NTM1Pj4+MTYpO2NvbnN0e2J1ZmZlcjpOfT1vO3JldHVybiBBLkhFQVA4PW5ldyBJbnQ4QXJyYXkoTiksQS5IRUFQVTg9bmV3IFVpbnQ4QXJyYXkoTiksQS5IRUFQMzI9bmV3IEludDMyQXJyYXkoTiksITB9Y2F0Y2h7fX1yZXR1cm4hMX0sUj02NTUzNixjPTUyNTE3OTIsZD04NzUyLHQ9MTY3NzcyMTY7Y2xhc3MgaXtjb25zdHJ1Y3Rvcigpe3RoaXMud2lkdGg9MCx0aGlzLmhlaWdodD0wLHRoaXMucGljPW5ldyBVaW50OEFycmF5KDApO2NvbnN0IEk9bmV3IFdlYkFzc2VtYmx5Lk1lbW9yeSh7aW5pdGlhbDp0L1IsbWF4aW11bToyMTQ3NDgzNjQ4L1J9KSxnPXttZW1vcnk6SSxIRUFQODpuZXcgSW50OEFycmF5KEkuYnVmZmVyKSxIRUFQVTg6bmV3IFVpbnQ4QXJyYXkoSS5idWZmZXIpLEhFQVAzMjpuZXcgSW50MzJBcnJheShJLmJ1ZmZlcil9O2cuSEVBUDMyW2Q+PjJdPWM7Y29uc3R7ZXhwb3J0czpCfT1uZXcgV2ViQXNzZW1ibHkuSW5zdGFuY2UoWS5oMjY0TW9kdWxlLHtoMjY0OnttZW1vcnk6SSxtZW1jcHk6cShnKSxyZXNpemU6SChnKX19KTt0aGlzLm1lbW9yeT1nLHRoaXMuYXNtPUIsdGhpcy5wU3RvcmFnZT1CLmgyNjRhbGxvYygpLHRoaXMucFdpZHRoPUIubWFsbG9jKDQpLHRoaXMucEhlaWdodD1CLm1hbGxvYyg0KSx0aGlzLnBQaWN0dXJlPUIubWFsbG9jKDQpLHRoaXMuZGVjQnVmZmVyPUIubWFsbG9jKDEwMjQqMTAyNCksQi5pbml0KHRoaXMucFN0b3JhZ2UsMCl9ZGVjb2RlKEkpe2NvbnN0e21lbW9yeTpnLGFzbTpCfT10aGlzO2cuSEVBUFU4LnNldChJLHRoaXMuZGVjQnVmZmVyKTtjb25zdCBRPUIuZGVjb2RlKHRoaXMucFN0b3JhZ2UsdGhpcy5kZWNCdWZmZXIsSS5ieXRlTGVuZ3RoLHRoaXMucFBpY3R1cmUsdGhpcy5wV2lkdGgsdGhpcy5wSGVpZ2h0KTtpZihRPT09aS5QSUNfUkRZKXtjb25zdCBDPXRoaXMud2lkdGg9Zy5IRUFQMzJbdGhpcy5wV2lkdGg+Pj4yXSxEPXRoaXMuaGVpZ2h0PWcuSEVBUDMyW3RoaXMucEhlaWdodD4+PjJdLEU9Zy5IRUFQMzJbdGhpcy5wUGljdHVyZT4+Ml0sdz1DKkQqMy8yO3RoaXMucGljPWcuSEVBUFU4LnN1YmFycmF5KEUsRSt3KX1yZXR1cm4gUX19dmFyIGI9eS5IMjY0RGVjb2Rlcj1pO2kuUkRZPTAsaS5QSUNfUkRZPTEsaS5IRFJTX1JEWT0yLGkuRVJST1I9MyxpLlBBUkFNX1NFVF9FUlJPUj00LGkuTUVNQUxMT0NfRVJST1I9NTtmdW5jdGlvbiB4KEEpe3JldHVybiBVaW50OEFycmF5LmZyb20oYXRvYihBKSxJPT5JLmNoYXJDb2RlQXQoMCkpfWNvbnN0IHM9c2VsZixrPW5ldyBiLG09Si5zZWNvbmQvNTthZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixBPT57Y29uc3R7dGltZXN0YW1wOkksZmxhZ3M6ZyxpbmRleDpCfT1BLmRhdGEsUT1EYXRlLm5vdygpLUk7aWYoUT5tJiZnIT09Myl7TShgRnJhbWUgaXMgJHtRfW1zIGxhdGUsIGRyb3BwaW5nYCxCKTtyZXR1cm59Y29uc3QgQz14KEEuZGF0YS5lbmNvZGVkRnJhbWUpLEQ9ay5kZWNvZGUoQyk7dHJ5e2lmKEQhPT0xKXtNKGBmYWlsZWQgdG8gZGVjb2RlIGZyYW1lLCBzdGF0dXM6ICR7bihEKX1gLEIsQyk7cmV0dXJufWNvbnN0e3BpYzpFLGhlaWdodDp3LHdpZHRoOm99PWs7aWYoRS5sZW5ndGg9PT0wfHx3PT09MHx8bz09PTApe00oImRlY29kZWQgZnJhbWUgaGFzIG5vIGRhdGEiLEIsQyk7cmV0dXJufWNvbnN0IE49bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KEUpO3MucG9zdE1lc3NhZ2Uoe3RpbWVzdGFtcDpBLmRhdGEudGltZXN0YW1wLHl1djpOLGhlaWdodDp3LHdpZHRoOm8saW5kZXg6Qn0pfWNhdGNoKEUpe00oRSxCKX19KTtmdW5jdGlvbiBNKEEsSSxnKXtzLnBvc3RNZXNzYWdlKHtlcnJvcjpgaDI2NCBkZWNvZGVyIHdvcmtlcjogJHtBfWAsaW5kZXg6SX0pfWZ1bmN0aW9uIG4oQSl7c3dpdGNoKEEpe2Nhc2UgMDpyZXR1cm4iUkRZIjtjYXNlIDE6cmV0dXJuIlBJQ19SRFkiO2Nhc2UgMjpyZXR1cm4iSERSU19SRFkiO2Nhc2UgMzpyZXR1cm4iRVJST1IiO2Nhc2UgNDpyZXR1cm4iUEFSQU1fU0VUX0VSUk9SIjtjYXNlIDU6cmV0dXJuIk1FTUFMTE9DX0VSUk9SIjtkZWZhdWx0OnJldHVybiBBLnRvU3RyaW5nKCl9fX0pfSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9dWktc2RrLXJlYWx0aW1lLXBsYXllci1jb3JlLXdvcmtlci51bWQtNjhhNmUxNmEuanMubWFwCg==";typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs$2)],{type:"text/javascript;charset=utf-8"});const encodedJs$1="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIE8odCl7cmV0dXJuIHQmJnQuX19lc01vZHVsZSYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsImRlZmF1bHQiKT90LmRlZmF1bHQ6dH12YXIgaD1mdW5jdGlvbih0LGUpe2V8fChlPXt9KSx0eXBlb2YgZT09ImZ1bmN0aW9uIiYmKGU9e2NtcDplfSk7dmFyIHM9dHlwZW9mIGUuY3ljbGVzPT0iYm9vbGVhbiI/ZS5jeWNsZXM6ITEsYT1lLmNtcCYmZnVuY3Rpb24odSl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiBmdW5jdGlvbihuLGkpe3ZhciBsPXtrZXk6bix2YWx1ZTpyW25dfSxmPXtrZXk6aSx2YWx1ZTpyW2ldfTtyZXR1cm4gdShsLGYpfX19KGUuY21wKSxjPVtdO3JldHVybiBmdW5jdGlvbiB1KHIpe2lmKHImJnIudG9KU09OJiZ0eXBlb2Ygci50b0pTT049PSJmdW5jdGlvbiImJihyPXIudG9KU09OKCkpLHIhPT12b2lkIDApe2lmKHR5cGVvZiByPT0ibnVtYmVyIilyZXR1cm4gaXNGaW5pdGUocik/IiIrcjoibnVsbCI7aWYodHlwZW9mIHIhPSJvYmplY3QiKXJldHVybiBKU09OLnN0cmluZ2lmeShyKTt2YXIgbixpO2lmKEFycmF5LmlzQXJyYXkocikpe2ZvcihpPSJbIixuPTA7bjxyLmxlbmd0aDtuKyspbiYmKGkrPSIsIiksaSs9dShyW25dKXx8Im51bGwiO3JldHVybiBpKyJdIn1pZihyPT09bnVsbClyZXR1cm4ibnVsbCI7aWYoYy5pbmRleE9mKHIpIT09LTEpe2lmKHMpcmV0dXJuIEpTT04uc3RyaW5naWZ5KCJfX2N5Y2xlX18iKTt0aHJvdyBuZXcgVHlwZUVycm9yKCJDb252ZXJ0aW5nIGNpcmN1bGFyIHN0cnVjdHVyZSB0byBKU09OIil9dmFyIGw9Yy5wdXNoKHIpLTEsZj1PYmplY3Qua2V5cyhyKS5zb3J0KGEmJmEocikpO2ZvcihpPSIiLG49MDtuPGYubGVuZ3RoO24rKyl7dmFyIG09ZltuXSxwPXUoclttXSk7cCYmKGkmJihpKz0iLCIpLGkrPUpTT04uc3RyaW5naWZ5KG0pKyI6IitwKX1yZXR1cm4gYy5zcGxpY2UobCwxKSwieyIraSsifSJ9fSh0KX0sdj1PKGgpO2Z1bmN0aW9uIG8odCl7cmV0dXJuIHYodCx7Y3ljbGVzOiEwfSl9ZnVuY3Rpb24gUyh0KXtpZighdC5zdGFjaylyZXR1cm57bWVzc2FnZTpvKHQpfTtjb25zdHtuYW1lOmUsbWVzc2FnZTpzLHN0YWNrOmEsLi4uY309dDtyZXR1cm57bmFtZTplLG1lc3NhZ2U6cyE9PXZvaWQgMD9zOm8odCksc3RhY2s6YSxtZXRhOmMmJk9iamVjdC5rZXlzKGMpLmxlbmd0aD09PTA/dm9pZCAwOmN9fWZ1bmN0aW9uIHkodCl7Y29uc3R7bWVzc2FnZTplLHN0YWNrOnMsbWV0YTphfT1TKHQpO3JldHVybmAke3N8fGV8fCIifSR7YSYmT2JqZWN0LmtleXMoYSkubGVuZ3RoPjA/YCAtLSAke28oYSl9YDoiIn1gfWNvbnN0IGc9c2VsZixiPTFlMzthZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixhc3luYyB0PT57dmFyIGU7dHJ5e2NvbnN0IHM9dC5kYXRhO3RyeXtjb25zdCBjPWF3YWl0KGF3YWl0IGZldGNoKHMse21vZGU6ImNvcnMifSkpLnRleHQoKTtnLnBvc3RNZXNzYWdlKHtqc29uOkpTT04ucGFyc2UoYykscHJldmlldzpjLnN1YnN0cmluZygwLGIpLGxlbmd0aDpjLmxlbmd0aCx1cmw6c30pfWNhdGNoKGEpe3Rocm93IG5ldyBFcnJvcihgTG9hZCBmYWlsZWQgJHt5KGEpfWApfX1jYXRjaChzKXtnLnBvc3RNZXNzYWdlKHtlcnJvcjp5KHMpLHVybDooZT10PT1udWxsP3ZvaWQgMDp0LmRhdGEpPT1udWxsP3ZvaWQgMDplLnVybH0pfX0pfSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YS1sb2FkZXIud29ya2VyLWE2ZmQ5NzRkLmpzLm1hcAo=",blob$1=typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs$1)],{type:"text/javascript;charset=utf-8"});function WorkerWrapper$1(){let o;try{if(o=blob$1&&(window.URL||window.webkitURL).createObjectURL(blob$1),!o)throw"";return new Worker(o)}catch{return new Worker("data:application/javascript;base64,"+encodedJs$1)}finally{o&&(window.URL||window.webkitURL).revokeObjectURL(o)}}const millisecond$1=1,second$1=1e3,minute$1=60*second$1,hour$1=60*minute$1,day$1=24*hour$1,week$1=7*day$1,month$1=30*day$1,year$1=365*day$1,duration$1={millisecond:millisecond$1,second:second$1,minute:minute$1,hour:hour$1,day:day$1,week:week$1,month:month$1,year:year$1};function delay(o){return new Promise(s=>setTimeout(s,o))}var fastJsonStableStringify=function(o,s){s||(s={}),typeof s=="function"&&(s={cmp:s});var _=typeof s.cycles=="boolean"?s.cycles:!1,j=s.cmp&&function(_e){return function(et){return function(tt,nt){var rt={key:tt,value:et[tt]},it={key:nt,value:et[nt]};return _e(rt,it)}}}(s.cmp),$=[];return function _e(et){if(et&&et.toJSON&&typeof et.toJSON=="function"&&(et=et.toJSON()),et!==void 0){if(typeof et=="number")return isFinite(et)?""+et:"null";if(typeof et!="object")return JSON.stringify(et);var tt,nt;if(Array.isArray(et)){for(nt="[",tt=0;tts(o),this))}onabort(){}addEventListener(o,s){o==="abort"&&this._listeners.push(s)}removeEventListener(o,s){o==="abort"&&(this._listeners=this._listeners.filter(_=>_!==s))}},warned=new Set,deprecatedOption=(o,s)=>{const _=`LRU_CACHE_OPTION_${o}`;shouldWarn(_)&&warn(_,`${o} option`,`options.${s}`,LRUCache)},deprecatedMethod=(o,s)=>{const _=`LRU_CACHE_METHOD_${o}`;if(shouldWarn(_)){const{prototype:j}=LRUCache,{get:$}=Object.getOwnPropertyDescriptor(j,o);warn(_,`${o} method`,`cache.${s}()`,$)}},deprecatedProperty=(o,s)=>{const _=`LRU_CACHE_PROPERTY_${o}`;if(shouldWarn(_)){const{prototype:j}=LRUCache,{get:$}=Object.getOwnPropertyDescriptor(j,o);warn(_,`${o} property`,`cache.${s}`,$)}},emitWarning=(...o)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...o):console.error(...o)},shouldWarn=o=>!warned.has(o),warn=(o,s,_,j)=>{warned.add(o);const $=`The ${s} is deprecated. Please use ${_} instead.`;emitWarning($,"DeprecationWarning",o,j)},isPosInt=o=>o&&o===Math.floor(o)&&o>0&&isFinite(o),getUintArray=o=>isPosInt(o)?o<=Math.pow(2,8)?Uint8Array:o<=Math.pow(2,16)?Uint16Array:o<=Math.pow(2,32)?Uint32Array:o<=Number.MAX_SAFE_INTEGER?ZeroArray:null:null;class ZeroArray extends Array{constructor(s){super(s),this.fill(0)}}class Stack{constructor(s){if(s===0)return[];const _=getUintArray(s);this.heap=new _(s),this.length=0}push(s){this.heap[this.length++]=s}pop(){return this.heap[--this.length]}}class LRUCache{constructor(s={}){const{max:_=0,ttl:j,ttlResolution:$=1,ttlAutopurge:_e,updateAgeOnGet:et,updateAgeOnHas:tt,allowStale:nt,dispose:rt,disposeAfter:it,noDisposeOnSet:st,noUpdateTTL:ut,maxSize:Ft=0,maxEntrySize:dt=0,sizeCalculation:gt,fetchMethod:Ut,fetchContext:ht,noDeleteOnFetchRejection:ft,noDeleteOnStaleGet:pt,allowStaleOnFetchRejection:Rt,allowStaleOnFetchAbort:Qt,ignoreFetchAbort:Nt}=s,{length:At,maxAge:kt,stale:Bt}=s instanceof LRUCache?{}:s;if(_!==0&&!isPosInt(_))throw new TypeError("max option must be a nonnegative integer");const jt=_?getUintArray(_):Array;if(!jt)throw new Error("invalid max value: "+_);if(this.max=_,this.maxSize=Ft,this.maxEntrySize=dt||this.maxSize,this.sizeCalculation=gt||At,this.sizeCalculation){if(!this.maxSize&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(this.fetchMethod=Ut||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=ht,!this.fetchMethod&&ht!==void 0)throw new TypeError("cannot set fetchContext without fetchMethod");if(this.keyMap=new Map,this.keyList=new Array(_).fill(null),this.valList=new Array(_).fill(null),this.next=new jt(_),this.prev=new jt(_),this.head=0,this.tail=0,this.free=new Stack(_),this.initialFill=1,this.size=0,typeof rt=="function"&&(this.dispose=rt),typeof it=="function"?(this.disposeAfter=it,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!st,this.noUpdateTTL=!!ut,this.noDeleteOnFetchRejection=!!ft,this.allowStaleOnFetchRejection=!!Rt,this.allowStaleOnFetchAbort=!!Qt,this.ignoreFetchAbort=!!Nt,this.maxEntrySize!==0){if(this.maxSize!==0&&!isPosInt(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!isPosInt(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!nt||!!Bt,this.noDeleteOnStaleGet=!!pt,this.updateAgeOnGet=!!et,this.updateAgeOnHas=!!tt,this.ttlResolution=isPosInt($)||$===0?$:1,this.ttlAutopurge=!!_e,this.ttl=j||kt||0,this.ttl){if(!isPosInt(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.initializeTTLTracking()}if(this.max===0&&this.ttl===0&&this.maxSize===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.max&&!this.maxSize){const vt="LRU_CACHE_UNBOUNDED";shouldWarn(vt)&&(warned.add(vt),emitWarning("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",vt,LRUCache))}Bt&&deprecatedOption("stale","allowStale"),kt&&deprecatedOption("maxAge","ttl"),At&&deprecatedOption("length","sizeCalculation")}getRemainingTTL(s){return this.has(s,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new ZeroArray(this.max),this.starts=new ZeroArray(this.max),this.setItemTTL=(j,$,_e=perf.now())=>{if(this.starts[j]=$!==0?_e:0,this.ttls[j]=$,$!==0&&this.ttlAutopurge){const et=setTimeout(()=>{this.isStale(j)&&this.delete(this.keyList[j])},$+1);et.unref&&et.unref()}},this.updateItemAge=j=>{this.starts[j]=this.ttls[j]!==0?perf.now():0},this.statusTTL=(j,$)=>{j&&(j.ttl=this.ttls[$],j.start=this.starts[$],j.now=s||_(),j.remainingTTL=j.now+j.ttl-j.start)};let s=0;const _=()=>{const j=perf.now();if(this.ttlResolution>0){s=j;const $=setTimeout(()=>s=0,this.ttlResolution);$.unref&&$.unref()}return j};this.getRemainingTTL=j=>{const $=this.keyMap.get(j);return $===void 0?0:this.ttls[$]===0||this.starts[$]===0?1/0:this.starts[$]+this.ttls[$]-(s||_())},this.isStale=j=>this.ttls[j]!==0&&this.starts[j]!==0&&(s||_())-this.starts[j]>this.ttls[j]}updateItemAge(s){}statusTTL(s,_){}setItemTTL(s,_,j){}isStale(s){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new ZeroArray(this.max),this.removeItemSize=s=>{this.calculatedSize-=this.sizes[s],this.sizes[s]=0},this.requireSize=(s,_,j,$)=>{if(this.isBackgroundFetch(_))return 0;if(!isPosInt(j))if($){if(typeof $!="function")throw new TypeError("sizeCalculation must be a function");if(j=$(_,s),!isPosInt(j))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return j},this.addItemSize=(s,_,j)=>{if(this.sizes[s]=_,this.maxSize){const $=this.maxSize-this.sizes[s];for(;this.calculatedSize>$;)this.evict(!0)}this.calculatedSize+=this.sizes[s],j&&(j.entrySize=_,j.totalCalculatedSize=this.calculatedSize)}}removeItemSize(s){}addItemSize(s,_){}requireSize(s,_,j,$){if(j||$)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:s=this.allowStale}={}){if(this.size)for(let _=this.tail;!(!this.isValidIndex(_)||((s||!this.isStale(_))&&(yield _),_===this.head));)_=this.prev[_]}*rindexes({allowStale:s=this.allowStale}={}){if(this.size)for(let _=this.head;!(!this.isValidIndex(_)||((s||!this.isStale(_))&&(yield _),_===this.tail));)_=this.next[_]}isValidIndex(s){return s!==void 0&&this.keyMap.get(this.keyList[s])===s}*entries(){for(const s of this.indexes())this.valList[s]!==void 0&&this.keyList[s]!==void 0&&!this.isBackgroundFetch(this.valList[s])&&(yield[this.keyList[s],this.valList[s]])}*rentries(){for(const s of this.rindexes())this.valList[s]!==void 0&&this.keyList[s]!==void 0&&!this.isBackgroundFetch(this.valList[s])&&(yield[this.keyList[s],this.valList[s]])}*keys(){for(const s of this.indexes())this.keyList[s]!==void 0&&!this.isBackgroundFetch(this.valList[s])&&(yield this.keyList[s])}*rkeys(){for(const s of this.rindexes())this.keyList[s]!==void 0&&!this.isBackgroundFetch(this.valList[s])&&(yield this.keyList[s])}*values(){for(const s of this.indexes())this.valList[s]!==void 0&&!this.isBackgroundFetch(this.valList[s])&&(yield this.valList[s])}*rvalues(){for(const s of this.rindexes())this.valList[s]!==void 0&&!this.isBackgroundFetch(this.valList[s])&&(yield this.valList[s])}[Symbol.iterator](){return this.entries()}find(s,_){for(const j of this.indexes()){const $=this.valList[j],_e=this.isBackgroundFetch($)?$.__staleWhileFetching:$;if(_e!==void 0&&s(_e,this.keyList[j],this))return this.get(this.keyList[j],_)}}forEach(s,_=this){for(const j of this.indexes()){const $=this.valList[j],_e=this.isBackgroundFetch($)?$.__staleWhileFetching:$;_e!==void 0&&s.call(_,_e,this.keyList[j],this)}}rforEach(s,_=this){for(const j of this.rindexes()){const $=this.valList[j],_e=this.isBackgroundFetch($)?$.__staleWhileFetching:$;_e!==void 0&&s.call(_,_e,this.keyList[j],this)}}get prune(){return deprecatedMethod("prune","purgeStale"),this.purgeStale}purgeStale(){let s=!1;for(const _ of this.rindexes({allowStale:!0}))this.isStale(_)&&(this.delete(this.keyList[_]),s=!0);return s}dump(){const s=[];for(const _ of this.indexes({allowStale:!0})){const j=this.keyList[_],$=this.valList[_],_e=this.isBackgroundFetch($)?$.__staleWhileFetching:$;if(_e===void 0)continue;const et={value:_e};if(this.ttls){et.ttl=this.ttls[_];const tt=perf.now()-this.starts[_];et.start=Math.floor(Date.now()-tt)}this.sizes&&(et.size=this.sizes[_]),s.unshift([j,et])}return s}load(s){this.clear();for(const[_,j]of s){if(j.start){const $=Date.now()-j.start;j.start=perf.now()-$}this.set(_,j.value,j)}}dispose(s,_,j){}set(s,_,{ttl:j=this.ttl,start:$,noDisposeOnSet:_e=this.noDisposeOnSet,size:et=0,sizeCalculation:tt=this.sizeCalculation,noUpdateTTL:nt=this.noUpdateTTL,status:rt}={}){if(et=this.requireSize(s,_,et,tt),this.maxEntrySize&&et>this.maxEntrySize)return rt&&(rt.set="miss",rt.maxEntrySizeExceeded=!0),this.delete(s),this;let it=this.size===0?void 0:this.keyMap.get(s);if(it===void 0)it=this.newIndex(),this.keyList[it]=s,this.valList[it]=_,this.keyMap.set(s,it),this.next[this.tail]=it,this.prev[it]=this.tail,this.tail=it,this.size++,this.addItemSize(it,et,rt),rt&&(rt.set="add"),nt=!1;else{this.moveToTail(it);const st=this.valList[it];if(_!==st){if(this.isBackgroundFetch(st)?st.__abortController.abort(new Error("replaced")):_e||(this.dispose(st,s,"set"),this.disposeAfter&&this.disposed.push([st,s,"set"])),this.removeItemSize(it),this.valList[it]=_,this.addItemSize(it,et,rt),rt){rt.set="replace";const ut=st&&this.isBackgroundFetch(st)?st.__staleWhileFetching:st;ut!==void 0&&(rt.oldValue=ut)}}else rt&&(rt.set="update")}if(j!==0&&this.ttl===0&&!this.ttls&&this.initializeTTLTracking(),nt||this.setItemTTL(it,j,$),this.statusTTL(rt,it),this.disposeAfter)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return this}newIndex(){return this.size===0?this.tail:this.size===this.max&&this.max!==0?this.evict(!1):this.free.length!==0?this.free.pop():this.initialFill++}pop(){if(this.size){const s=this.valList[this.head];return this.evict(!0),s}}evict(s){const _=this.head,j=this.keyList[_],$=this.valList[_];return this.isBackgroundFetch($)?$.__abortController.abort(new Error("evicted")):(this.dispose($,j,"evict"),this.disposeAfter&&this.disposed.push([$,j,"evict"])),this.removeItemSize(_),s&&(this.keyList[_]=null,this.valList[_]=null,this.free.push(_)),this.head=this.next[_],this.keyMap.delete(j),this.size--,_}has(s,{updateAgeOnHas:_=this.updateAgeOnHas,status:j}={}){const $=this.keyMap.get(s);if($!==void 0)if(this.isStale($))j&&(j.has="stale",this.statusTTL(j,$));else return _&&this.updateItemAge($),j&&(j.has="hit"),this.statusTTL(j,$),!0;else j&&(j.has="miss");return!1}peek(s,{allowStale:_=this.allowStale}={}){const j=this.keyMap.get(s);if(j!==void 0&&(_||!this.isStale(j))){const $=this.valList[j];return this.isBackgroundFetch($)?$.__staleWhileFetching:$}}backgroundFetch(s,_,j,$){const _e=_===void 0?void 0:this.valList[_];if(this.isBackgroundFetch(_e))return _e;const et=new AC;j.signal&&j.signal.addEventListener("abort",()=>et.abort(j.signal.reason));const tt={signal:et.signal,options:j,context:$},nt=(Ft,dt=!1)=>{const{aborted:gt}=et.signal,Ut=j.ignoreFetchAbort&&Ft!==void 0;return j.status&&(gt&&!dt?(j.status.fetchAborted=!0,j.status.fetchError=et.signal.reason,Ut&&(j.status.fetchAbortIgnored=!0)):j.status.fetchResolved=!0),gt&&!Ut&&!dt?it(et.signal.reason):(this.valList[_]===ut&&(Ft===void 0?ut.__staleWhileFetching?this.valList[_]=ut.__staleWhileFetching:this.delete(s):(j.status&&(j.status.fetchUpdated=!0),this.set(s,Ft,tt.options))),Ft)},rt=Ft=>(j.status&&(j.status.fetchRejected=!0,j.status.fetchError=Ft),it(Ft)),it=Ft=>{const{aborted:dt}=et.signal,gt=dt&&j.allowStaleOnFetchAbort,Ut=gt||j.allowStaleOnFetchRejection,ht=Ut||j.noDeleteOnFetchRejection;if(this.valList[_]===ut&&(!ht||ut.__staleWhileFetching===void 0?this.delete(s):gt||(this.valList[_]=ut.__staleWhileFetching)),Ut)return j.status&&ut.__staleWhileFetching!==void 0&&(j.status.returnedStale=!0),ut.__staleWhileFetching;if(ut.__returned===ut)throw Ft},st=(Ft,dt)=>{this.fetchMethod(s,_e,tt).then(gt=>Ft(gt),dt),et.signal.addEventListener("abort",()=>{(!j.ignoreFetchAbort||j.allowStaleOnFetchAbort)&&(Ft(),j.allowStaleOnFetchAbort&&(Ft=gt=>nt(gt,!0)))})};j.status&&(j.status.fetchDispatched=!0);const ut=new Promise(st).then(nt,rt);return ut.__abortController=et,ut.__staleWhileFetching=_e,ut.__returned=null,_===void 0?(this.set(s,ut,{...tt.options,status:void 0}),_=this.keyMap.get(s)):this.valList[_]=ut,ut}isBackgroundFetch(s){return s&&typeof s=="object"&&typeof s.then=="function"&&Object.prototype.hasOwnProperty.call(s,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(s,"__returned")&&(s.__returned===s||s.__returned===null)}async fetch(s,{allowStale:_=this.allowStale,updateAgeOnGet:j=this.updateAgeOnGet,noDeleteOnStaleGet:$=this.noDeleteOnStaleGet,ttl:_e=this.ttl,noDisposeOnSet:et=this.noDisposeOnSet,size:tt=0,sizeCalculation:nt=this.sizeCalculation,noUpdateTTL:rt=this.noUpdateTTL,noDeleteOnFetchRejection:it=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:st=this.allowStaleOnFetchRejection,ignoreFetchAbort:ut=this.ignoreFetchAbort,allowStaleOnFetchAbort:Ft=this.allowStaleOnFetchAbort,fetchContext:dt=this.fetchContext,forceRefresh:gt=!1,status:Ut,signal:ht}={}){if(!this.fetchMethod)return Ut&&(Ut.fetch="get"),this.get(s,{allowStale:_,updateAgeOnGet:j,noDeleteOnStaleGet:$,status:Ut});const ft={allowStale:_,updateAgeOnGet:j,noDeleteOnStaleGet:$,ttl:_e,noDisposeOnSet:et,size:tt,sizeCalculation:nt,noUpdateTTL:rt,noDeleteOnFetchRejection:it,allowStaleOnFetchRejection:st,allowStaleOnFetchAbort:Ft,ignoreFetchAbort:ut,status:Ut,signal:ht};let pt=this.keyMap.get(s);if(pt===void 0){Ut&&(Ut.fetch="miss");const Rt=this.backgroundFetch(s,pt,ft,dt);return Rt.__returned=Rt}else{const Rt=this.valList[pt];if(this.isBackgroundFetch(Rt)){const Bt=_&&Rt.__staleWhileFetching!==void 0;return Ut&&(Ut.fetch="inflight",Bt&&(Ut.returnedStale=!0)),Bt?Rt.__staleWhileFetching:Rt.__returned=Rt}const Qt=this.isStale(pt);if(!gt&&!Qt)return Ut&&(Ut.fetch="hit"),this.moveToTail(pt),j&&this.updateItemAge(pt),this.statusTTL(Ut,pt),Rt;const Nt=this.backgroundFetch(s,pt,ft,dt),At=Nt.__staleWhileFetching!==void 0,kt=At&&_;return Ut&&(Ut.fetch=At&&Qt?"stale":"refresh",kt&&Qt&&(Ut.returnedStale=!0)),kt?Nt.__staleWhileFetching:Nt.__returned=Nt}}get(s,{allowStale:_=this.allowStale,updateAgeOnGet:j=this.updateAgeOnGet,noDeleteOnStaleGet:$=this.noDeleteOnStaleGet,status:_e}={}){const et=this.keyMap.get(s);if(et!==void 0){const tt=this.valList[et],nt=this.isBackgroundFetch(tt);return this.statusTTL(_e,et),this.isStale(et)?(_e&&(_e.get="stale"),nt?(_e&&(_e.returnedStale=_&&tt.__staleWhileFetching!==void 0),_?tt.__staleWhileFetching:void 0):($||this.delete(s),_e&&(_e.returnedStale=_),_?tt:void 0)):(_e&&(_e.get="hit"),nt?tt.__staleWhileFetching:(this.moveToTail(et),j&&this.updateItemAge(et),tt))}else _e&&(_e.get="miss")}connect(s,_){this.prev[_]=s,this.next[s]=_}moveToTail(s){s!==this.tail&&(s===this.head?this.head=this.next[s]:this.connect(this.prev[s],this.next[s]),this.connect(this.tail,s),this.tail=s)}get del(){return deprecatedMethod("del","delete"),this.delete}delete(s){let _=!1;if(this.size!==0){const j=this.keyMap.get(s);if(j!==void 0)if(_=!0,this.size===1)this.clear();else{this.removeItemSize(j);const $=this.valList[j];this.isBackgroundFetch($)?$.__abortController.abort(new Error("deleted")):(this.dispose($,s,"delete"),this.disposeAfter&&this.disposed.push([$,s,"delete"])),this.keyMap.delete(s),this.keyList[j]=null,this.valList[j]=null,j===this.tail?this.tail=this.prev[j]:j===this.head?this.head=this.next[j]:(this.next[this.prev[j]]=this.next[j],this.prev[this.next[j]]=this.prev[j]),this.size--,this.free.push(j)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return _}clear(){for(const s of this.rindexes({allowStale:!0})){const _=this.valList[s];if(this.isBackgroundFetch(_))_.__abortController.abort(new Error("deleted"));else{const j=this.keyList[s];this.dispose(_,j,"delete"),this.disposeAfter&&this.disposed.push([_,j,"delete"])}}if(this.keyMap.clear(),this.valList.fill(null),this.keyList.fill(null),this.ttls&&(this.ttls.fill(0),this.starts.fill(0)),this.sizes&&this.sizes.fill(0),this.head=0,this.tail=0,this.initialFill=1,this.free.length=0,this.calculatedSize=0,this.size=0,this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift())}get reset(){return deprecatedMethod("reset","clear"),this.clear}get length(){return deprecatedProperty("length","size"),this.size}static get AbortController(){return AC}static get AbortSignal(){return AS}}const BaseLruCache=LRUCache;class LruCache{constructor(s){me(this,"cache"),me(this,"stringify"),this.cache=new BaseLruCache({...s.dispose||s.disposeAfter?{ttlAutopurge:!0}:{},...s,dispose:(..._)=>{var j;(j=s.dispose)==null||j.call(s,..._)},disposeAfter:(..._)=>{var j;(j=s.disposeAfter)==null||j.call(s,..._)}}),this.stringify=s.fastStringify?JSON.stringify:stringify}set(s,_,j){const $=this.stringify(s);if(!this.cache.set($,_,{ttl:j})){const _e=this.cache.sizeCalculation?this.cache.sizeCalculation(_,$):"unknown";throw Error(`Value too large (${_e} > ${this.cache.max})`)}}get(s){const _=this.stringify(s);return this.cache.get(_)}delete(s){this.cache.delete(this.stringify(s))}peek(s){return this.cache.peek(this.stringify(s))}size(){return this.cache.size}clear(){this.cache.clear()}forEach(s){this.cache.forEach(s)}purgeStale(){return this.cache.purgeStale()}}class PromiseLruCache extends LruCache{constructor(s){if(super(s),me(this,"expireRejectedPromiseValues"),me(this,"rejectedPromiseValueTtl"),this.expireRejectedPromiseValues=s.expireRejectedPromiseValues!==void 0?s.expireRejectedPromiseValues:!0,this.rejectedPromiseValueTtl=s.rejectedPromiseValueTtl!==void 0?s.rejectedPromiseValueTtl:duration$1.second,this.rejectedPromiseValueTtl<0)throw new Error("rejectedPromiseValueTtl must not be negative")}set(s,_,j){super.set(s,_,j),this.expireRejectedPromiseValues&&_.catch(async()=>{await delay(this.rejectedPromiseValueTtl),this.peek(s)===_&&this.delete(s)})}}const range=(o,s)=>s<=o?[]:new Array(s-o).fill(0).map((_,j)=>j+o),workerCount=4,ct=class{constructor(){me(this,"workers"),me(this,"cache",new PromiseLruCache({name:"DataLoader-cache",max:5e3})),me(this,"nextWorkerIndex",-1),me(this,"resolveMap",{}),me(this,"rejectMap",{})}static get(){return ct.references++,ct.instance||(ct.instance=new ct),ct.instance}static release(o){var s;if(ct.instance!==o){console.error("Releasing an unallocated/unowned loader!");return}ct.references--,!(ct.references>0)&&((s=ct.instance.workers)==null||s.forEach(_=>_.terminate()),ct.instance.workers=void 0,ct.instance.cache.clear(),ct.instance=null,ct.references=0)}load(o){const s=this.cache.get(o);if(s)return s;const _=this.nextWorker(),j=new Promise(($,_e)=>{this.resolveMap[o]=$,this.rejectMap[o]=_e});return this.cache.set(o,j),_.postMessage(o),j}nextWorker(){return this.workers||(this.workers=range(0,workerCount).map(o=>{const s=new WorkerWrapper$1;return s.onmessage=({data:_})=>{const{url:j}=_;if(!j)return;const $=this.rejectMap[j],_e=this.resolveMap[j];if(delete this.rejectMap[j],delete this.resolveMap[j],!(!$||!_e)){if(_.error){const et=new Error(`Worker failure: ${_.error}`);et.cause=_.error,$(et);return}_e({json:_.json,preview:_.preview,length:_.length})}},s})),this.nextWorkerIndex=(this.nextWorkerIndex+1)%workerCount,this.workers[this.nextWorkerIndex]}};let DataLoader=ct;me(DataLoader,"references",0),me(DataLoader,"instance",null);new URLSearchParams(window.location.search).get("debug");const encodedJs$3="dmFyIFI9T2JqZWN0LmRlZmluZVByb3BlcnR5O3ZhciBHPShNLGIseCk9PmIgaW4gTT9SKE0sYix7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6eH0pOk1bYl09eDt2YXIgST0oTSxiLHgpPT4oRyhNLHR5cGVvZiBiIT0ic3ltYm9sIj9iKyIiOmIseCkseCk7KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IFM9e21pbGxpc2Vjb25kOjEsc2Vjb25kOjFlMyxtaW51dGU6NmU0LGhvdXI6MzZlNSxkYXk6ODY0ZTUsd2Vlazo2MDQ4ZTUsbW9udGg6MjU5MmU2LHllYXI6MzE1MzZlNn07ZnVuY3Rpb24gcShvKXt9Y2xhc3MgX3tjb25zdHJ1Y3Rvcih7Y2FwYWNpdHk6dCx0aW1lb3V0Om59PXt9KXtJKHRoaXMsImVudHJpZXMiLG5ldyBNYXApO0kodGhpcywibWV0YWRhdGEiLG5ldyBNYXApO0kodGhpcywiY2FwYWNpdHkiKTtJKHRoaXMsInRpbWVvdXQiKTt0aGlzLmNhcGFjaXR5PXR8fDFlNCx0aGlzLnRpbWVvdXQ9bnx8Uy5taW51dGV9Z2V0KHQsbil7Y29uc3QgZT10aGlzLmtleVRvQ2FjaGVLZXkodCksYz10aGlzLmVudHJpZXMuZ2V0KGUpLGk9dGhpcy5tZXRhZGF0YS5nZXQoZSk7cmV0dXJuKGM9PT12b2lkIDB8fGkmJihpPT1udWxsP3ZvaWQgMDppLmV4cGlyYXRpb24uZ2V0VGltZSgpKTxEYXRlLm5vdygpKSYmIShpIT1udWxsJiZpLmdlbmVyYXRpbmcpJiZuJiZ0aGlzLmdlbmVyYXRlKHQsbigpKSxjPT09dm9pZCAwJiZpJiZpLmxhc3RWYWx1ZSE9PXZvaWQgMD9pLmxhc3RWYWx1ZTpjfXNldCh0LG4pe2NvbnN0IGU9dGhpcy5rZXlUb0NhY2hlS2V5KHQpO3RoaXMubWV0YWRhdGEuc2V0KGUse2dlbmVyYXRpbmc6ITEsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCksbGFzdFZhbHVlOm59KSx0aGlzLmVudHJpZXMuc2V0KGUsbiksdGhpcy5tZXRhZGF0YS5zaXplPnRoaXMuY2FwYWNpdHkmJnRoaXMuZGVsZXRlT2xkZXN0RW50cnkoKX1jbGVhcigpe3RoaXMuZW50cmllcy5jbGVhcigpLFsuLi50aGlzLm1ldGFkYXRhLnZhbHVlcygpXS5mb3JFYWNoKHQ9PnQuZ2VuZXJhdGluZz0hMSl9Y2xlYXJLZXkodCl7dGhpcy5tZXRhZGF0YS5kZWxldGUodCksdGhpcy5lbnRyaWVzLmRlbGV0ZSh0KX1rZXlUb0NhY2hlS2V5KHQpe3JldHVybiBKU09OLnN0cmluZ2lmeSh0KX1kZWxldGVPbGRlc3RFbnRyeSgpe2lmKHRoaXMubWV0YWRhdGEuc2l6ZTwxKXJldHVybjtjb25zdFt0XT1bLi4udGhpcy5tZXRhZGF0YS5lbnRyaWVzKCldLnJlZHVjZSgoW24sZV0sW2MsaV0pPT5pLmV4cGlyYXRpb24uZ2V0VGltZSgpPGUuZXhwaXJhdGlvbi5nZXRUaW1lKCk/W2MsaV06W24sZV0pO3RoaXMuY2xlYXJLZXkodCl9Z2VuZXJhdGUodCxuKXtjb25zdCBlPXRoaXMua2V5VG9DYWNoZUtleSh0KSxjPXRoaXMubWV0YWRhdGEuZ2V0KGUpfHx7fTt0aGlzLm1ldGFkYXRhLnNldChlLHsuLi5jLGdlbmVyYXRpbmc6ITAsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCl9KSxzZXRUaW1lb3V0KCgpPT57bi50aGVuKGk9Pntjb25zdCByPXRoaXMubWV0YWRhdGEuZ2V0KGUpOyEociE9bnVsbCYmci5nZW5lcmF0aW5nKXx8dGhpcy5zZXQodCxpKX0pfSwwKX19LyoqCiAqIExaRiBjb21wcmVzc2lvbi9kZWNvbXByZXNzaW9uIG1vZHVsZS4gUG9ydGVkIGZyb20gdGhlIEMKICogaW1wbGVtZW50YXRpb24gb2YgbGlibHpmLCBzcGVjZmljYWxseSBsemZfYy5jIGFuZCBsemZfZC5jCiAqIEBsaWNlbnNlIEJTRC0yLUNsYXVzZQogKi9mdW5jdGlvbiBLKG8pe3ZhciB0PW5ldyBVaW50OEFycmF5KG8pLG49W10sZT0wLGM9MDtkb3t2YXIgaT10W2UrK107aWYoaTwxPDw1KXtpZihpKyssZStpPnQubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBpbnB1dCIpO2Zvcig7aS0tOyluW2MrK109dFtlKytdfWVsc2V7dmFyIHI9aT4+NSxmPWMtKChpJjMxKTw8OCktMTtpZihlPj10Lmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQiKTtpZihyPT03JiYocis9dFtlKytdLGU+PXQubGVuZ3RoKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQiKTtpZihmLT10W2UrK10sZjwwKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBpbnB1dCIpO3IrPTI7ZG8gbltjKytdPW5bZisrXTt3aGlsZSgtLXIpfX13aGlsZShlPHQubGVuZ3RoKTtpZih0eXBlb2YgQnVmZmVyIT0idW5kZWZpbmVkIilyZXR1cm4gbmV3IEJ1ZmZlcihuKTt2YXIgdT1uZXcgVWludDhBcnJheShuLmxlbmd0aCk7cmV0dXJuIHUuc2V0KG4pLHV9ZnVuY3Rpb24gTyhvKXt2YXIgdD0xNixuPTE8PHQsZT0xPDwxMyxjPSgxPDw4KSsoMTw8MyksaT0xPDw1O2Z1bmN0aW9uIHIodixUKXtyZXR1cm4gdltUXTw8OHx2W1QrMV19ZnVuY3Rpb24gZih2LFQsUCl7cmV0dXJuIHY8PDh8VFtQKzJdfWZ1bmN0aW9uIHUodil7cmV0dXJuIHYqNTA2ODMyODI5Pj4zMi10LTgmbi0xfWZvcih2YXIgcz1uZXcgVWludDhBcnJheShvKSxhPVtdLGQ9bmV3IFVpbnQzMkFycmF5KG4pLHk9cy5sZW5ndGgsaD0wLGc9cihzLGgpLHA9MSxsPTA7aDx5LTI7KXtnPWYoZyxvLGgpO3ZhciB6PXUoZyksbT1kW3pdO2Rbel09aDt2YXIgRTtpZihtPGgmJihFPWgtbS0xKTxlJiZtPjAmJnNbbSsyXT09c1toKzJdJiZzW20rMV09PXNbaCsxXSYmc1ttXT09c1toXSl7dmFyIHc9MixGPXktaC13O0Y9Rj5jP2M6RixhW3AtbC0xXT1sLTEmMjU1LGw9PTAmJihwLT0xKTtkbyB3Kys7d2hpbGUodzxGJiZzW20rd109PXNbaCt3XSk7aWYody09MixoKyssdzw3P2FbcCsrXT0oRT4+OCkrKHc8PDUpJjI1NTooYVtwKytdPShFPj44KSsoNzw8NSkmMjU1LGFbcCsrXT13LTcmMjU1KSxhW3ArK109RSYyNTUsbD0wLHArKyxoKz13KzEsaD49eS0yKWJyZWFrOy0taCwtLWgsZz1yKHMsaCksZz1mKGcscyxoKSxkW3UoZyldPWgrKyxnPWYoZyxzLGgpLGRbdShnKV09aCsrfWVsc2UgbCsrLGFbcCsrXT1zW2grK10sbD09aSYmKGFbcC1sLTFdPWwtMSYyNTUsbD0wLHArKyl9Zm9yKDtoPHk7KWwrKyxhW3ArK109c1toKytdLGw9PWkmJihhW3AtbC0xXT1sLTEmMjU1LGw9MCxwKyspO2lmKGwhPTAmJihhW3AtbC0xXT1sLTEmMjU1KSx0eXBlb2YgQnVmZmVyIT0idW5kZWZpbmVkIilyZXR1cm4gbmV3IEJ1ZmZlcihhKTt2YXIgVT1uZXcgVWludDhBcnJheShhLmxlbmd0aCk7cmV0dXJuIFUuc2V0KGEpLFV9dmFyIEI9e2RlY29tcHJlc3M6Syxjb21wcmVzczpPfTtjb25zdCBDPShvLHQpPT50PD1vP1tdOm5ldyBBcnJheSh0LW8pLmZpbGwoMCkubWFwKChuLGUpPT5lK28pLEE9ITA7ZnVuY3Rpb24gSChvKXtjb25zdCB0PWF0b2Iobyksbj10Lmxlbmd0aCxlPW5ldyBVaW50OEFycmF5KG4pO2ZvcihsZXQgYz0wO2M8bjtjKz0xKWVbY109dC5jaGFyQ29kZUF0KGMpO3JldHVybiBlLmJ1ZmZlcn1mdW5jdGlvbiBMKG8pe2NvbnN0IHQ9bmV3IFVpbnQ4QXJyYXkobyk7bGV0IG49IiIsZT0wO2Zvcig7ZTx0Lmxlbmd0aCYmbi5zZWFyY2goL1tcclxuXURBVEFccyhcUyopXHMvaSk9PT0tMTtlKz0xKW4rPVN0cmluZy5mcm9tQ2hhckNvZGUodFtlXSk7cmV0dXJue2JvZHk6by5zbGljZShlKSxoZWFkZXI6bi5yZXBsYWNlKC8jLiovZ2ksIiIpfX1mdW5jdGlvbiBWKG8pe2NvbnN0IG49bmV3IFVpbnQzMkFycmF5KG8sMCwyKVswXTtyZXR1cm4gbj09PTA/bmV3IEFycmF5QnVmZmVyKDApOkIuZGVjb21wcmVzcyhuZXcgVWludDhBcnJheShvLDgsbikpLmJ1ZmZlcn1mdW5jdGlvbiBrKG8pe2NvbnN0e2hlYWRlcjp0LGJvZHk6bn09TChvKSxlPS9WRVJTSU9OICguKikvaS5leGVjKHQpO2lmKGU9PT1udWxsKXRocm93IG5ldyBFcnJvcihgTWlzc2luZyB2ZXJzaW9uLiBIZWFkZXIgJHt0fWApO2NvbnN0IGM9ZVsxXSxpPS9GSUVMRFMgKC4qKS9pLmV4ZWModCk7aWYoIWkpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIGZpZWxkcyIpO2NvbnN0IHI9aVsxXS5zcGxpdCgiICIpLGY9L1NJWkUgKC4qKS9pLmV4ZWModCk7aWYoIWYpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIHNpemUiKTtjb25zdCB1PWZbMV0uc3BsaXQoIiAiKS5tYXAodj0+cGFyc2VJbnQodiwxMCkpLHM9L1RZUEUgKC4qKS9pLmV4ZWModCk7aWYoIXMpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIHR5cGUiKTtjb25zdCBhPXNbMV0uc3BsaXQoIiAiKSxkPS9DT1VOVCAoLiopL2kuZXhlYyh0KTtsZXQgeTtkJiYoeT1kWzFdLnNwbGl0KCIgIikubWFwKHY9PnBhcnNlSW50KHYsMTApKSk7Y29uc3QgaD15fHxyLm1hcCh2PT4xKSxnPS9XSURUSCAoLiopL2kuZXhlYyh0KTtpZighZyl0aHJvdyBuZXcgRXJyb3IoIk1pc3Npbmcgd2lkdGgiKTtjb25zdCBwPXBhcnNlSW50KGdbMV0sMTApLGw9L0hFSUdIVCAoLiopL2kuZXhlYyh0KTtpZighbCl0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgaGVpZ2h0Iik7Y29uc3Qgej1wYXJzZUludChsWzFdLDEwKSxtPS9QT0lOVFMgKC4qKS9pLmV4ZWModCk7bGV0IEU7bSYmKEU9cGFyc2VJbnQobVsxXSwxMCkpO2NvbnN0IHc9RXx8cCp6LEY9L0RBVEEgKC4qKS9pLmV4ZWModCk7aWYoIUYpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIGRhdGEiKTtjb25zdCBVPUZbMV07cmV0dXJue2JvZHk6bixoZWFkZXI6e2NvdW50OmgsZGF0YTpVLGZpZWxkczpyLGhlaWdodDp6LHBvaW50czp3LHNpemU6dSx0eXBlOmEsdmVyc2lvbjpjLHdpZHRoOnB9fX1mdW5jdGlvbiBOKG8pe2NvbnN0IHQ9e307cmV0dXJuIG8uZmllbGRzLnJlZHVjZSgoe29mZnNldHM6bixzaXplOmV9LGMsaSk9PntsZXQgcj1lO3JldHVybiBjPT09IngiJiYobi54PXIpLGM9PT0ieSImJihuLnk9ciksYz09PSJ6IiYmKG4uej1yKSxjPT09InJnYiImJihuLnJnYj1yKSxjPT09InJnYmEiJiYobi5yZ2JhPXIpLGM9PT0iaW50ZW5zaXR5IiYmKG4uaW50ZW5zaXR5PXIpLG8uZGF0YT09PSJhc2NpaSI/cis9MTpvLmRhdGE9PT0iYmluYXJ5Ij9yKz1vLnNpemVbaV0qby5jb3VudFtpXTpvLmRhdGE9PT0iYmluYXJ5X2NvbXByZXNzZWQiJiYocis9by5zaXplW2ldKm8uY291bnRbaV0qby5wb2ludHMpLHtvZmZzZXRzOm4sc2l6ZTpyfX0se29mZnNldHM6dCxzaXplOjB9KX1mdW5jdGlvbiBEKG8pe2NvbnN0e2hlYWRlcjp0LGJvZHk6bn09ayhvKSx7b2Zmc2V0czplLHNpemU6Y309Tih0KTtsZXQgaTtlLnghPT12b2lkIDAmJmUueSE9PXZvaWQgMCYmZS56IT09dm9pZCAwJiYoaT1uZXcgRmxvYXQzMkFycmF5KHQucG9pbnRzKjMpKTtsZXQgcjsoZS5yZ2IhPT12b2lkIDB8fGUucmdiYSE9PXZvaWQgMCkmJihyPW5ldyBGbG9hdDMyQXJyYXkodC5wb2ludHMqNCkpO2xldCBmO2lmKGUuaW50ZW5zaXR5IT09dm9pZCAwJiYoZj1uZXcgRmxvYXQzMkFycmF5KHQucG9pbnRzKSksdC5kYXRhPT09ImFzY2lpIilTdHJpbmcuZnJvbUNoYXJDb2RlKC4uLm5ldyBVaW50OEFycmF5KG4pKS5zcGxpdChgCmApLmZvckVhY2goKGEsZCk9Pntjb25zdCB5PWEuc3BsaXQoIiAiKTtpZihpIT09dm9pZCAwJiYoaVtkKjMrMF09cGFyc2VGbG9hdCh5W2UueHx8MF0pLGlbZCozKzFdPXBhcnNlRmxvYXQoeVtlLnl8fDBdKSxpW2QqMysyXT1wYXJzZUZsb2F0KHlbZS56fHwwXSkpLHIhPT12b2lkIDApe2NvbnN0IGg9bmV3IEludDMyQXJyYXkoW3BhcnNlSW50KHlbZS5yZ2J8fGUucmdiYXx8MF0sMTApXSksZz1uZXcgRGF0YVZpZXcoaC5idWZmZXIsMCk7cltkKjMrMF09Zy5nZXRVaW50OCgyKS8yNTUscltkKjMrMV09Zy5nZXRVaW50OCgxKS8yNTUscltkKjMrMl09Zy5nZXRVaW50OCgwKS8yNTV9ZiE9PXZvaWQgMCYmKGZbZF09cGFyc2VGbG9hdCh5W2UuaW50ZW5zaXR5fHwwXSkpfSk7ZWxzZSBpZih0LmRhdGE9PT0iYmluYXJ5Iil7Y29uc3QgdT1uZXcgRGF0YVZpZXcobik7QygwLHQucG9pbnRzKS5mb3JFYWNoKHM9Pntjb25zdCBhPWMqcztpZihpIT09dm9pZCAwJiYoaVtzKjMrMF09dS5nZXRGbG9hdDMyKGErKGUueHx8MCksQSksaVtzKjMrMV09dS5nZXRGbG9hdDMyKGErKGUueXx8MCksQSksaVtzKjMrMl09dS5nZXRGbG9hdDMyKGErKGUuenx8MCksQSkpLHIhPT12b2lkIDApe2NvbnN0IGQ9YSsoZS5yZ2J8fGUucmdiYXx8MCk7ZCsyPD11LmJ5dGVMZW5ndGgmJihyW3MqNCswXT11LmdldFVpbnQ4KGQrMikvMjU1LHJbcyo0KzFdPXUuZ2V0VWludDgoZCsxKS8yNTUscltzKjQrMl09dS5nZXRVaW50OChkKzApLzI1NSxyW3MqNCszXT0xKX1mIT09dm9pZCAwJiYoZltzXT11LmdldEZsb2F0MzIoYSsoZS5pbnRlbnNpdHl8fDApLEEpKX0pfWVsc2UgaWYodC5kYXRhPT09ImJpbmFyeV9jb21wcmVzc2VkIil7Y29uc3QgdT1WKG4pLHM9bmV3IERhdGFWaWV3KHUpO0MoMCx0LnBvaW50cykuZm9yRWFjaChhPT57aWYoaSE9PXZvaWQgMCYmKGlbYSozKzBdPXMuZ2V0RmxvYXQzMigoZS54fHwwKSthKjQsQSksaVthKjMrMV09cy5nZXRGbG9hdDMyKChlLnl8fDApK2EqNCxBKSxpW2EqMysyXT1zLmdldEZsb2F0MzIoKGUuenx8MCkrYSo0LEEpKSxyIT09dm9pZCAwKXtjb25zdCBkPShlLnJnYnx8ZS5yZ2JhfHwwKSthKjQ7ZCsyPD1zLmJ5dGVMZW5ndGgmJihyW2EqNCswXT1zLmdldFVpbnQ4KGQrMikvMjU1LHJbYSo0KzFdPXMuZ2V0VWludDgoZCsxKS8yNTUsclthKjQrMl09cy5nZXRVaW50OChkKzApLzI1NSxyW2EqNCszXT0xKX1mIT09dm9pZCAwJiYoZlthXT1zLmdldEZsb2F0MzIoKGUuaW50ZW5zaXR5fHwwKSthKjQsQSkpfSl9cmV0dXJue2NvbG9yczpyLGhlYWRlcjp0LGludGVuc2l0eTpmLHBvc2l0aW9uczppfX1mdW5jdGlvbiBYKG8pe3JldHVybiBEKEgobykpfWNvbnN0IFo9bmV3IF8oe2NhcGFjaXR5OjFlMyx0aW1lb3V0OjEqUy5taW51dGV9KTtvbm1lc3NhZ2U9YXN5bmMgbz0+e2NvbnN0e3VybDp0LGlkOm4scG9pbnRDbG91ZDplfT1vLmRhdGE7aWYodCl7Y29uc3QgYz1aLmdldCh0LGFzeW5jKCk9PkQoYXdhaXQgZmV0Y2godCx7bW9kZToiY29ycyJ9KS50aGVuKHI9PnIuYXJyYXlCdWZmZXIoKSkpKTtjJiZwb3N0TWVzc2FnZSh7dXJsOnQscGNkOmN9KX1pZihuJiZlKXtjb25zdCBjPVgoZSk7cG9zdE1lc3NhZ2Uoe2lkOm4scGNkOmN9KX19fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9UGNkTG9hZGVyV29ya2VyLWVhYWMwYjMxLmpzLm1hcAo=";typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs$3)],{type:"text/javascript;charset=utf-8"});distExports.RtcClient;distExports.RtcClientV1;distExports.RtcSignalingClient;distExports.createRtcStreamMessage;var lodashExports={},lodash={get exports(){return lodashExports},set exports(o){lodashExports=o}};/** + * @license + * Lodash + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */(function(o,s){(function(){var _,j="4.17.21",$=200,_e="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",et="Expected a function",tt="Invalid `variable` option passed into `_.template`",nt="__lodash_hash_undefined__",rt=500,it="__lodash_placeholder__",st=1,ut=2,Ft=4,dt=1,gt=2,Ut=1,ht=2,ft=4,pt=8,Rt=16,Qt=32,Nt=64,At=128,kt=256,Bt=512,jt=30,vt="...",mt=800,yt=16,Vt=1,wt=2,Et=3,Jt=1/0,Pt=9007199254740991,Yt=17976931348623157e292,Mt=0/0,zt=4294967295,qt=zt-1,Xt=zt>>>1,xt=[["ary",At],["bind",Ut],["bindKey",ht],["curry",pt],["curryRight",Rt],["flip",Bt],["partial",Qt],["partialRight",Nt],["rearg",kt]],It="[object Arguments]",$t="[object Array]",un="[object AsyncFunction]",tn="[object Boolean]",an="[object Date]",Kt="[object DOMException]",Un="[object Error]",Bn="[object Function]",hn="[object GeneratorFunction]",En="[object Map]",Cn="[object Number]",Tt="[object Null]",Zt="[object Object]",Ot="[object Promise]",sn="[object Proxy]",ln="[object RegExp]",cn="[object Set]",fn="[object String]",_n="[object Symbol]",On="[object Undefined]",xn="[object WeakMap]",Ln="[object WeakSet]",Pn="[object ArrayBuffer]",Er="[object DataView]",tr="[object Float32Array]",zr="[object Float64Array]",xr="[object Int8Array]",Kr="[object Int16Array]",Gr="[object Int32Array]",Lo="[object Uint8Array]",oo="[object Uint8ClampedArray]",eo="[object Uint16Array]",Uo="[object Uint32Array]",Fs=/\b__p \+= '';/g,_o=/\b(__p \+=) '' \+/g,Po=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Ko=/&(?:amp|lt|gt|quot|#39);/g,Eo=/[&<>"']/g,Bo=RegExp(Ko.source),Co=RegExp(Eo.source),In=/<%-([\s\S]+?)%>/g,wr=/<%([\s\S]+?)%>/g,Zr=/<%=([\s\S]+?)%>/g,io=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,bo=/^\w*$/,bs=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ts=/[\\^$.*+?()[\]{}|]/g,js=RegExp(ts.source),Sr=/^\s+/,gs=/\s/,Vs=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Fo=/\{\n\/\* \[wrapped with (.+)\] \*/,no=/,? & /,Is=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ts=/[()=,{}\[\]\/\s]/,vs=/\\(\\)?/g,lo=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Js=/\w*$/,Nr=/^[-+]0x[0-9a-f]+$/i,Ns=/^0b[01]+$/i,bn=/^\[object .+?Constructor\]$/,bt=/^0o[0-7]+$/i,_t=/^(?:0|[1-9]\d*)$/,Lt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,nn=/($^)/,dn=/['\n\r\u2028\u2029\\]/g,pn="\\ud800-\\udfff",Tn="\\u0300-\\u036f",vn="\\ufe20-\\ufe2f",Rn="\\u20d0-\\u20ff",Fn=Tn+vn+Rn,Zn="\\u2700-\\u27bf",zn="a-z\\xdf-\\xf6\\xf8-\\xff",sr="\\xac\\xb1\\xd7\\xf7",fr="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",jr="\\u2000-\\u206f",Br=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Yr="A-Z\\xc0-\\xd6\\xd8-\\xde",Wr="\\ufe0e\\ufe0f",ar=sr+fr+jr+Br,cr="['’]",Dr="["+pn+"]",Ar="["+ar+"]",Or="["+Fn+"]",Vr="\\d+",Cr="["+Zn+"]",so="["+zn+"]",Vo="[^"+pn+ar+Vr+Zn+zn+Yr+"]",wo="\\ud83c[\\udffb-\\udfff]",_u="(?:"+Or+"|"+wo+")",Ws="[^"+pn+"]",Ls="(?:\\ud83c[\\udde6-\\uddff]){2}",$a="[\\ud800-\\udbff][\\udc00-\\udfff]",ps="["+Yr+"]",xl="\\u200d",Ul="(?:"+so+"|"+Vo+")",Il="(?:"+ps+"|"+Vo+")",Fl="(?:"+cr+"(?:d|ll|m|re|s|t|ve))?",Ps="(?:"+cr+"(?:D|LL|M|RE|S|T|VE))?",Ql=_u+"?",ns="["+Wr+"]?",zo="(?:"+xl+"(?:"+[Ws,Ls,$a].join("|")+")"+ns+Ql+")*",Ll="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",ks="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Pl=ns+Ql+zo,zl="(?:"+[Cr,Ls,$a].join("|")+")"+Pl,Cu="(?:"+[Ws+Or+"?",Or,Ls,$a,Dr].join("|")+")",Zo=RegExp(cr,"g"),_s=RegExp(Or,"g"),qo=RegExp(wo+"(?="+wo+")|"+Cu+Pl,"g"),go=RegExp([ps+"?"+so+"+"+Fl+"(?="+[Ar,ps,"$"].join("|")+")",Il+"+"+Ps+"(?="+[Ar,ps+Ul,"$"].join("|")+")",ps+"?"+Ul+"+"+Fl,ps+"+"+Ps,ks,Ll,Vr,zl].join("|"),"g"),Bl=RegExp("["+xl+pn+Fn+Wr+"]"),Gl=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Rl=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Wt=-1,Gt={};Gt[tr]=Gt[zr]=Gt[xr]=Gt[Kr]=Gt[Gr]=Gt[Lo]=Gt[oo]=Gt[eo]=Gt[Uo]=!0,Gt[It]=Gt[$t]=Gt[Pn]=Gt[tn]=Gt[Er]=Gt[an]=Gt[Un]=Gt[Bn]=Gt[En]=Gt[Cn]=Gt[Zt]=Gt[ln]=Gt[cn]=Gt[fn]=Gt[xn]=!1;var on={};on[It]=on[$t]=on[Pn]=on[Er]=on[tn]=on[an]=on[tr]=on[zr]=on[xr]=on[Kr]=on[Gr]=on[En]=on[Cn]=on[Zt]=on[ln]=on[cn]=on[fn]=on[_n]=on[Lo]=on[oo]=on[eo]=on[Uo]=!0,on[Un]=on[Bn]=on[xn]=!1;var Qn={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Jn={"&":"&","<":"<",">":">",'"':""","'":"'"},Wn={"&":"&","<":"<",">":">",""":'"',"'":"'"},yn={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},kn=parseFloat,Mn=parseInt,Yn=typeof globalThis=="object"&&globalThis&&globalThis.Object===Object&&globalThis,Kn=typeof self=="object"&&self&&self.Object===Object&&self,$n=Yn||Kn||Function("return this")(),pr=s&&!s.nodeType&&s,br=pr&&!0&&o&&!o.nodeType&&o,kr=br&&br.exports===pr,er=kr&&Yn.process,Tr=function(){try{var mn=br&&br.require&&br.require("util").types;return mn||er&&er.binding&&er.binding("util")}catch{}}(),po=Tr&&Tr.isArrayBuffer,DU=Tr&&Tr.isDate,MU=Tr&&Tr.isMap,AU=Tr&&Tr.isRegExp,OU=Tr&&Tr.isSet,xU=Tr&&Tr.isTypedArray;function To(mn,wn,Nn){switch(Nn.length){case 0:return mn.call(wn);case 1:return mn.call(wn,Nn[0]);case 2:return mn.call(wn,Nn[0],Nn[1]);case 3:return mn.call(wn,Nn[0],Nn[1],Nn[2])}return mn.apply(wn,Nn)}function Op(mn,wn,Nn,Hn){for(var lr=-1,vr=mn==null?0:mn.length;++lr-1}function wu(mn,wn,Nn){for(var Hn=-1,lr=mn==null?0:mn.length;++Hn-1;);return Nn}function HU(mn,wn){for(var Nn=mn.length;Nn--&&zs(wn,mn[Nn],0)>-1;);return Nn}function Hp(mn,wn){for(var Nn=mn.length,Hn=0;Nn--;)mn[Nn]===wn&&++Hn;return Hn}var Xp=Au(Qn),Kp=Au(Jn);function qp(mn){return"\\"+yn[mn]}function $p(mn,wn){return mn==null?_:mn[wn]}function Gs(mn){return Bl.test(mn)}function _h(mn){return Gl.test(mn)}function eQ(mn){for(var wn,Nn=[];!(wn=mn.next()).done;)Nn.push(wn.value);return Nn}function Iu(mn){var wn=-1,Nn=Array(mn.size);return mn.forEach(function(Hn,lr){Nn[++wn]=[lr,Hn]}),Nn}function XU(mn,wn){return function(Nn){return mn(wn(Nn))}}function fs(mn,wn){for(var Nn=-1,Hn=mn.length,lr=0,vr=[];++Nn-1}function xQ(ot,lt){var St=this.__data__,Dt=du(St,ot);return Dt<0?(++this.size,St.push([ot,lt])):St[Dt][1]=lt,this}rs.prototype.clear=DQ,rs.prototype.delete=MQ,rs.prototype.get=AQ,rs.prototype.has=OQ,rs.prototype.set=xQ;function is(ot){var lt=-1,St=ot==null?0:ot.length;for(this.clear();++lt=lt?ot:lt)),ot}function Oo(ot,lt,St,Dt,Ht,rn){var gn,Sn=lt&st,Vn=lt&ut,Dn=lt&Ft;if(St&&(gn=Ht?St(ot,Dt,Ht,rn):St(ot)),gn!==_)return gn;if(!Lr(ot))return ot;var An=ur(ot);if(An){if(gn=LB(ot),!Sn)return Ro(ot,gn)}else{var jn=uo(ot),Gn=jn==Bn||jn==hn;if(Es(ot))return kF(ot,Sn);if(jn==Zt||jn==It||Gn&&!Ht){if(gn=Vn||Gn?{}:KF(ot),!Sn)return Vn?_B(ot,nB(gn,ot)):kB(ot,lF(gn,ot))}else{if(!on[jn])return Ht?ot:{};gn=PB(ot,jn,Sn)}}rn||(rn=new Yo);var qn=rn.get(ot);if(qn)return qn;rn.set(ot,gn),bp(ot)?ot.forEach(function(ir){gn.add(Oo(ir,lt,St,ir,ot,rn))}):yp(ot)&&ot.forEach(function(ir,hr){gn.set(hr,Oo(ir,lt,St,hr,ot,rn))});var or=Dn?Vn?gU:FU:Vn?mo:ro,Ur=An?_:or(ot);return Do(Ur||ot,function(ir,hr){Ur&&(hr=ir,ir=ot[hr]),Nl(gn,hr,Oo(ir,lt,St,hr,ot,rn))}),gn}function rB(ot){var lt=ro(ot);return function(St){return cF(St,ot,lt)}}function cF(ot,lt,St){var Dt=St.length;if(ot==null)return!Dt;for(ot=Mr(ot);Dt--;){var Ht=St[Dt],rn=lt[Ht],gn=ot[Ht];if(gn===_&&!(Ht in ot)||!rn(gn))return!1}return!0}function uF(ot,lt,St){if(typeof ot!="function")throw new Mo(et);return Al(function(){ot.apply(_,St)},lt)}function Wl(ot,lt,St,Dt){var Ht=-1,rn=Yl,gn=!0,Sn=ot.length,Vn=[],Dn=lt.length;if(!Sn)return Vn;St&&(lt=Ir(lt,vo(St))),Dt?(rn=wu,gn=!1):lt.length>=$&&(rn=Sl,gn=!1,lt=new Zs(lt));e:for(;++HtHt?0:Ht+St),Dt=Dt===_||Dt>Ht?Ht:dr(Dt),Dt<0&&(Dt+=Ht),Dt=St>Dt?0:Tp(Dt);St0&&St(Sn)?lt>1?ao(Sn,lt-1,St,Dt,Ht):Qs(Ht,Sn):Dt||(Ht[Ht.length]=Sn)}return Ht}var Xu=MF(),FF=MF(!0);function $o(ot,lt){return ot&&Xu(ot,lt,ro)}function Ku(ot,lt){return ot&&FF(ot,lt,ro)}function Fu(ot,lt){return hs(lt,function(St){return us(ot[St])})}function Ms(ot,lt){lt=ms(lt,ot);for(var St=0,Dt=lt.length;ot!=null&&Stlt}function sB(ot,lt){return ot!=null&&_r.call(ot,lt)}function aB(ot,lt){return ot!=null&< in Mr(ot)}function lB(ot,lt,St){return ot>=co(lt,St)&&ot<$r(lt,St)}function $u(ot,lt,St){for(var Dt=St?wu:Yl,Ht=ot[0].length,rn=ot.length,gn=rn,Sn=Nn(rn),Vn=1/0,Dn=[];gn--;){var An=ot[gn];gn&<&&(An=Ir(An,vo(lt))),Vn=co(An.length,Vn),Sn[gn]=!St&&(lt||Ht>=120&&An.length>=120)?new Zs(gn&&An):_}An=ot[0];var jn=-1,Gn=Sn[0];e:for(;++jn-1;)Sn!==ot&&ou.call(Sn,Vn,1),ou.call(ot,Vn,1);return ot}function EF(ot,lt){for(var St=ot?lt.length:0,Dt=St-1;St--;){var Ht=lt[St];if(St==Dt||Ht!==rn){var rn=Ht;cs(Ht)?ou.call(ot,Ht,1):sU(ot,Ht)}}return ot}function rU(ot,lt){return ot+au(oF()*(lt-ot+1))}function SB(ot,lt,St,Dt){for(var Ht=-1,rn=$r(su((lt-ot)/(St||1)),0),gn=Nn(rn);rn--;)gn[Dt?rn:++Ht]=ot,ot+=St;return gn}function oU(ot,lt){var St="";if(!ot||lt<1||lt>Pt)return St;do lt%2&&(St+=ot),lt=au(lt/2),lt&&(ot+=ot);while(lt);return St}function gr(ot,lt){return SU(_g(ot,lt,yo),ot+"")}function mB(ot){return aF(xa(ot))}function yB(ot,lt){var St=xa(ot);return Eu(St,Ds(lt,0,St.length))}function Zl(ot,lt,St,Dt){if(!Lr(ot))return ot;lt=ms(lt,ot);for(var Ht=-1,rn=lt.length,gn=rn-1,Sn=ot;Sn!=null&&++HtHt?0:Ht+lt),St=St>Ht?Ht:St,St<0&&(St+=Ht),Ht=lt>St?0:St-lt>>>0,lt>>>=0;for(var rn=Nn(Ht);++Dt>>1,gn=ot[rn];gn!==null&&!No(gn)&&(St?gn<=lt:gn=$){var Dn=lt?null:DB(ot);if(Dn)return Xl(Dn);gn=!1,Ht=Sl,Vn=new Zs}else Vn=lt?[]:Sn;e:for(;++Dt=Dt?ot:xo(ot,lt,St)}var WF=pQ||function(ot){return $n.clearTimeout(ot)};function kF(ot,lt){if(lt)return ot.slice();var St=ot.length,Dt=$U?$U(St):new ot.constructor(St);return ot.copy(Dt),Dt}function uU(ot){var lt=new ot.constructor(ot.byteLength);return new nu(lt).set(new nu(ot)),lt}function vB(ot,lt){var St=lt?uU(ot.buffer):ot.buffer;return new ot.constructor(St,ot.byteOffset,ot.byteLength)}function JB(ot){var lt=new ot.constructor(ot.source,Js.exec(ot));return lt.lastIndex=ot.lastIndex,lt}function NB(ot){return Jl?Mr(Jl.call(ot)):{}}function _F(ot,lt){var St=lt?uU(ot.buffer):ot.buffer;return new ot.constructor(St,ot.byteOffset,ot.length)}function CF(ot,lt){if(ot!==lt){var St=ot!==_,Dt=ot===null,Ht=ot===ot,rn=No(ot),gn=lt!==_,Sn=lt===null,Vn=lt===lt,Dn=No(lt);if(!Sn&&!Dn&&!rn&&ot>lt||rn&&gn&&Vn&&!Sn&&!Dn||Dt&&gn&&Vn||!St&&Vn||!Ht)return 1;if(!Dt&&!rn&&!Dn&&ot=Sn)return Vn;var Dn=St[Dt];return Vn*(Dn=="desc"?-1:1)}}return ot.index-lt.index}function wF(ot,lt,St,Dt){for(var Ht=-1,rn=ot.length,gn=St.length,Sn=-1,Vn=lt.length,Dn=$r(rn-gn,0),An=Nn(Vn+Dn),jn=!Dt;++Sn1?St[Ht-1]:_,gn=Ht>2?St[2]:_;for(rn=ot.length>3&&typeof rn=="function"?(Ht--,rn):_,gn&&Qo(St[0],St[1],gn)&&(rn=Ht<3?_:rn,Ht=1),lt=Mr(lt);++Dt-1?Ht[rn?lt[gn]:gn]:_}}function xF(ot){return ls(function(lt){var St=lt.length,Dt=St,Ht=Ao.prototype.thru;for(ot&<.reverse();Dt--;){var rn=lt[Dt];if(typeof rn!="function")throw new Mo(et);if(Ht&&!gn&&mu(rn)=="wrapper")var gn=new Ao([],!0)}for(Dt=gn?Dt:St;++Dt1&&mr.reverse(),An&&VnSn))return!1;var Dn=rn.get(ot),An=rn.get(lt);if(Dn&&An)return Dn==lt&&An==ot;var jn=-1,Gn=!0,qn=St>?new Zs:_;for(rn.set(ot,lt),rn.set(lt,ot);++jn1?"& ":"")+lt[Dt],lt=lt.join(St>2?", ":" "),ot.replace(Vs,`{ +/* [wrapped with `+lt+`] */ +`)}function GB(ot){return ur(ot)||xs(ot)||!!(nF&&ot&&ot[nF])}function cs(ot,lt){var St=typeof ot;return lt=lt??Pt,!!lt&&(St=="number"||St!="symbol"&&_t.test(ot))&&ot>-1&&ot%1==0&&ot0){if(++lt>=mt)return arguments[0]}else lt=0;return ot.apply(_,arguments)}}function Eu(ot,lt){var St=-1,Dt=ot.length,Ht=Dt-1;for(lt=lt===_?Dt:lt;++St1?ot[lt-1]:_;return St=typeof St=="function"?(ot.pop(),St):_,dp(ot,St)});function Up(ot){var lt=en(ot);return lt.__chain__=!0,lt}function hR(ot,lt){return lt(ot),ot}function bu(ot,lt){return lt(ot)}var QR=ls(function(ot){var lt=ot.length,St=lt?ot[0]:0,Dt=this.__wrapped__,Ht=function(rn){return Hu(rn,ot)};return lt>1||this.__actions__.length||!(Dt instanceof Rr)||!cs(St)?this.thru(Ht):(Dt=Dt.slice(St,+St+(lt?1:0)),Dt.__actions__.push({func:bu,args:[Ht],thisArg:_}),new Ao(Dt,this.__chain__).thru(function(rn){return lt&&!rn.length&&rn.push(_),rn}))});function fR(){return Up(this)}function BR(){return new Ao(this.value(),this.__chain__)}function RR(){this.__values__===_&&(this.__values__=Vp(this.value()));var ot=this.__index__>=this.__values__.length,lt=ot?_:this.__values__[this.__index__++];return{done:ot,value:lt}}function SR(){return this}function mR(ot){for(var lt,St=this;St instanceof uu;){var Dt=ip(St);Dt.__index__=0,Dt.__values__=_,lt?Ht.__wrapped__=Dt:lt=Dt;var Ht=Dt;St=St.__wrapped__}return Ht.__wrapped__=ot,lt}function yR(){var ot=this.__wrapped__;if(ot instanceof Rr){var lt=ot;return this.__actions__.length&&(lt=new Rr(this)),lt=lt.reverse(),lt.__actions__.push({func:bu,args:[mU],thisArg:_}),new Ao(lt,this.__chain__)}return this.thru(mU)}function ER(){return JF(this.__wrapped__,this.__actions__)}var bR=Qu(function(ot,lt,St){_r.call(ot,St)?++ot[St]:ss(ot,St,1)});function VR(ot,lt,St){var Dt=ur(ot)?jU:oB;return St&&Qo(ot,lt,St)&&(lt=_),Dt(ot,nr(lt,3))}function TR(ot,lt){var St=ur(ot)?hs:UF;return St(ot,nr(lt,3))}var vR=OF(sp),JR=OF(ap);function NR(ot,lt){return ao(Vu(ot,lt),1)}function WR(ot,lt){return ao(Vu(ot,lt),Jt)}function kR(ot,lt,St){return St=St===_?1:dr(St),ao(Vu(ot,lt),St)}function Fp(ot,lt){var St=ur(ot)?Do:Rs;return St(ot,nr(lt,3))}function gp(ot,lt){var St=ur(ot)?xp:dF;return St(ot,nr(lt,3))}var _R=Qu(function(ot,lt,St){_r.call(ot,St)?ot[St].push(lt):ss(ot,St,[lt])});function CR(ot,lt,St,Dt){ot=So(ot)?ot:xa(ot),St=St&&!Dt?dr(St):0;var Ht=ot.length;return St<0&&(St=$r(Ht+St,0)),Wu(ot)?St<=Ht&&ot.indexOf(lt,St)>-1:!!Ht&&zs(ot,lt,St)>-1}var wR=gr(function(ot,lt,St){var Dt=-1,Ht=typeof lt=="function",rn=So(ot)?Nn(ot.length):[];return Rs(ot,function(gn){rn[++Dt]=Ht?To(lt,gn,St):_l(gn,lt,St)}),rn}),ZR=Qu(function(ot,lt,St){ss(ot,St,lt)});function Vu(ot,lt){var St=ur(ot)?Ir:fF;return St(ot,nr(lt,3))}function DR(ot,lt,St,Dt){return ot==null?[]:(ur(lt)||(lt=lt==null?[]:[lt]),St=Dt?_:St,ur(St)||(St=St==null?[]:[St]),mF(ot,lt,St))}var MR=Qu(function(ot,lt,St){ot[St?0:1].push(lt)},function(){return[[],[]]});function AR(ot,lt,St){var Dt=ur(ot)?Zu:zU,Ht=arguments.length<3;return Dt(ot,nr(lt,4),St,Ht,Rs)}function OR(ot,lt,St){var Dt=ur(ot)?jp:zU,Ht=arguments.length<3;return Dt(ot,nr(lt,4),St,Ht,dF)}function xR(ot,lt){var St=ur(ot)?hs:UF;return St(ot,Ju(nr(lt,3)))}function jR(ot){var lt=ur(ot)?aF:mB;return lt(ot)}function IR(ot,lt,St){(St?Qo(ot,lt,St):lt===_)?lt=1:lt=dr(lt);var Dt=ur(ot)?_f:yB;return Dt(ot,lt)}function LR(ot){var lt=ur(ot)?eB:bB;return lt(ot)}function PR(ot){if(ot==null)return 0;if(So(ot))return Wu(ot)?Ys(ot):ot.length;var lt=uo(ot);return lt==En||lt==cn?ot.size:eU(ot).length}function zR(ot,lt,St){var Dt=ur(ot)?Du:VB;return St&&Qo(ot,lt,St)&&(lt=_),Dt(ot,nr(lt,3))}var GR=gr(function(ot,lt){if(ot==null)return[];var St=lt.length;return St>1&&Qo(ot,lt[0],lt[1])?lt=[]:St>2&&Qo(lt[0],lt[1],lt[2])&&(lt=[lt[0]]),mF(ot,ao(lt,1),[])}),Tu=hQ||function(){return $n.Date.now()};function YR(ot,lt){if(typeof lt!="function")throw new Mo(et);return ot=dr(ot),function(){if(--ot<1)return lt.apply(this,arguments)}}function pp(ot,lt,St){return lt=St?_:lt,lt=ot&<==null?ot.length:lt,as(ot,At,_,_,_,_,lt)}function hp(ot,lt){var St;if(typeof lt!="function")throw new Mo(et);return ot=dr(ot),function(){return--ot>0&&(St=lt.apply(this,arguments)),ot<=1&&(lt=_),St}}var EU=gr(function(ot,lt,St){var Dt=Ut;if(St.length){var Ht=fs(St,ba(EU));Dt|=Qt}return as(ot,Dt,lt,St,Ht)}),Qp=gr(function(ot,lt,St){var Dt=Ut|ht;if(St.length){var Ht=fs(St,ba(Qp));Dt|=Qt}return as(lt,Dt,ot,St,Ht)});function fp(ot,lt,St){lt=St?_:lt;var Dt=as(ot,pt,_,_,_,_,_,lt);return Dt.placeholder=fp.placeholder,Dt}function Bp(ot,lt,St){lt=St?_:lt;var Dt=as(ot,Rt,_,_,_,_,_,lt);return Dt.placeholder=Bp.placeholder,Dt}function Rp(ot,lt,St){var Dt,Ht,rn,gn,Sn,Vn,Dn=0,An=!1,jn=!1,Gn=!0;if(typeof ot!="function")throw new Mo(et);lt=Io(lt)||0,Lr(St)&&(An=!!St.leading,jn="maxWait"in St,rn=jn?$r(Io(St.maxWait)||0,lt):rn,Gn="trailing"in St?!!St.trailing:Gn);function qn(Xr){var Xo=Dt,Us=Ht;return Dt=Ht=_,Dn=Xr,gn=ot.apply(Us,Xo),gn}function or(Xr){return Dn=Xr,Sn=Al(hr,lt),An?qn(Xr):gn}function Ur(Xr){var Xo=Xr-Vn,Us=Xr-Dn,Ap=lt-Xo;return jn?co(Ap,rn-Us):Ap}function ir(Xr){var Xo=Xr-Vn,Us=Xr-Dn;return Vn===_||Xo>=lt||Xo<0||jn&&Us>=rn}function hr(){var Xr=Tu();if(ir(Xr))return mr(Xr);Sn=Al(hr,Ur(Xr))}function mr(Xr){return Sn=_,Gn&&Dt?qn(Xr):(Dt=Ht=_,gn)}function Wo(){Sn!==_&&WF(Sn),Dn=0,Dt=Vn=Ht=Sn=_}function fo(){return Sn===_?gn:mr(Tu())}function ko(){var Xr=Tu(),Xo=ir(Xr);if(Dt=arguments,Ht=this,Vn=Xr,Xo){if(Sn===_)return or(Vn);if(jn)return WF(Sn),Sn=Al(hr,lt),qn(Vn)}return Sn===_&&(Sn=Al(hr,lt)),gn}return ko.cancel=Wo,ko.flush=fo,ko}var HR=gr(function(ot,lt){return uF(ot,1,lt)}),XR=gr(function(ot,lt,St){return uF(ot,Io(lt)||0,St)});function KR(ot){return as(ot,Bt)}function vu(ot,lt){if(typeof ot!="function"||lt!=null&&typeof lt!="function")throw new Mo(et);var St=function(){var Dt=arguments,Ht=lt?lt.apply(this,Dt):Dt[0],rn=St.cache;if(rn.has(Ht))return rn.get(Ht);var gn=ot.apply(this,Dt);return St.cache=rn.set(Ht,gn)||rn,gn};return St.cache=new(vu.Cache||is),St}vu.Cache=is;function Ju(ot){if(typeof ot!="function")throw new Mo(et);return function(){var lt=arguments;switch(lt.length){case 0:return!ot.call(this);case 1:return!ot.call(this,lt[0]);case 2:return!ot.call(this,lt[0],lt[1]);case 3:return!ot.call(this,lt[0],lt[1],lt[2])}return!ot.apply(this,lt)}}function qR(ot){return hp(2,ot)}var $R=TB(function(ot,lt){lt=lt.length==1&&ur(lt[0])?Ir(lt[0],vo(nr())):Ir(ao(lt,1),vo(nr()));var St=lt.length;return gr(function(Dt){for(var Ht=-1,rn=co(Dt.length,St);++Ht=lt}),xs=pF(function(){return arguments}())?pF:function(ot){return Pr(ot)&&_r.call(ot,"callee")&&!tF.call(ot,"callee")},ur=Nn.isArray,gS=po?vo(po):uB;function So(ot){return ot!=null&&Nu(ot.length)&&!us(ot)}function Hr(ot){return Pr(ot)&&So(ot)}function pS(ot){return ot===!0||ot===!1||Pr(ot)&&ho(ot)==tn}var Es=fQ||ZU,hS=DU?vo(DU):dB;function QS(ot){return Pr(ot)&&ot.nodeType===1&&!Ol(ot)}function fS(ot){if(ot==null)return!0;if(So(ot)&&(ur(ot)||typeof ot=="string"||typeof ot.splice=="function"||Es(ot)||_a(ot)||xs(ot)))return!ot.length;var lt=uo(ot);if(lt==En||lt==cn)return!ot.size;if(Ml(ot))return!eU(ot).length;for(var St in ot)if(_r.call(ot,St))return!1;return!0}function BS(ot,lt){return Cl(ot,lt)}function RS(ot,lt,St){St=typeof St=="function"?St:_;var Dt=St?St(ot,lt):_;return Dt===_?Cl(ot,lt,_,St):!!Dt}function VU(ot){if(!Pr(ot))return!1;var lt=ho(ot);return lt==Un||lt==Kt||typeof ot.message=="string"&&typeof ot.name=="string"&&!Ol(ot)}function SS(ot){return typeof ot=="number"&&rF(ot)}function us(ot){if(!Lr(ot))return!1;var lt=ho(ot);return lt==Bn||lt==hn||lt==un||lt==sn}function mp(ot){return typeof ot=="number"&&ot==dr(ot)}function Nu(ot){return typeof ot=="number"&&ot>-1&&ot%1==0&&ot<=Pt}function Lr(ot){var lt=typeof ot;return ot!=null&&(lt=="object"||lt=="function")}function Pr(ot){return ot!=null&&typeof ot=="object"}var yp=MU?vo(MU):FB;function mS(ot,lt){return ot===lt||_d(ot,lt,hU(lt))}function yS(ot,lt,St){return St=typeof St=="function"?St:_,_d(ot,lt,hU(lt),St)}function ES(ot){return Ep(ot)&&ot!=+ot}function bS(ot){if(XB(ot))throw new lr(_e);return hF(ot)}function VS(ot){return ot===null}function TS(ot){return ot==null}function Ep(ot){return typeof ot=="number"||Pr(ot)&&ho(ot)==Cn}function Ol(ot){if(!Pr(ot)||ho(ot)!=Zt)return!1;var lt=ru(ot);if(lt===null)return!0;var St=_r.call(lt,"constructor")&<.constructor;return typeof St=="function"&&St instanceof St&&_c.call(St)==UQ}var TU=AU?vo(AU):gB;function vS(ot){return mp(ot)&&ot>=-Pt&&ot<=Pt}var bp=OU?vo(OU):pB;function Wu(ot){return typeof ot=="string"||!ur(ot)&&Pr(ot)&&ho(ot)==fn}function No(ot){return typeof ot=="symbol"||Pr(ot)&&ho(ot)==_n}var _a=xU?vo(xU):hB;function JS(ot){return ot===_}function NS(ot){return Pr(ot)&&uo(ot)==xn}function WS(ot){return Pr(ot)&&ho(ot)==Ln}var kS=Su(tU),_S=Su(function(ot,lt){return ot<=lt});function Vp(ot){if(!ot)return[];if(So(ot))return Wu(ot)?Go(ot):Ro(ot);if(yl&&ot[yl])return eQ(ot[yl]());var lt=uo(ot),St=lt==En?Iu:lt==cn?Xl:xa;return St(ot)}function ds(ot){if(!ot)return ot===0?ot:0;if(ot=Io(ot),ot===Jt||ot===-Jt){var lt=ot<0?-1:1;return lt*Yt}return ot===ot?ot:0}function dr(ot){var lt=ds(ot),St=lt%1;return lt===lt?St?lt-St:lt:0}function Tp(ot){return ot?Ds(dr(ot),0,zt):0}function Io(ot){if(typeof ot=="number")return ot;if(No(ot))return Mt;if(Lr(ot)){var lt=typeof ot.valueOf=="function"?ot.valueOf():ot;ot=Lr(lt)?lt+"":lt}if(typeof ot!="string")return ot===0?ot:+ot;ot=GU(ot);var St=Ns.test(ot);return St||bt.test(ot)?Mn(ot.slice(2),St?2:8):Nr.test(ot)?Mt:+ot}function vp(ot){return _i(ot,mo(ot))}function CS(ot){return ot?Ds(dr(ot),-Pt,Pt):ot===0?ot:0}function Jr(ot){return ot==null?"":Jo(ot)}var wS=na(function(ot,lt){if(Ml(lt)||So(lt)){_i(lt,ro(lt),ot);return}for(var St in lt)_r.call(lt,St)&&Nl(ot,St,lt[St])}),Jp=na(function(ot,lt){_i(lt,mo(lt),ot)}),ku=na(function(ot,lt,St,Dt){_i(lt,mo(lt),ot,Dt)}),ZS=na(function(ot,lt,St,Dt){_i(lt,ro(lt),ot,Dt)}),DS=ls(Hu);function OS(ot,lt){var St=$s(ot);return lt==null?St:lF(St,lt)}var xS=gr(function(ot,lt){ot=Mr(ot);var St=-1,Dt=lt.length,Ht=Dt>2?lt[2]:_;for(Ht&&Qo(lt[0],lt[1],Ht)&&(Dt=1);++St1),rn}),_i(ot,gU(ot),St),Dt&&(St=Oo(St,st|ut|Ft,MB));for(var Ht=lt.length;Ht--;)sU(St,lt[Ht]);return St});function im(ot,lt){return Wp(ot,Ju(nr(lt)))}var sm=ls(function(ot,lt){return ot==null?{}:BB(ot,lt)});function Wp(ot,lt){if(ot==null)return{};var St=Ir(gU(ot),function(Dt){return[Dt]});return lt=nr(lt),yF(ot,St,function(Dt,Ht){return lt(Dt,Ht[0])})}function am(ot,lt,St){lt=ms(lt,ot);var Dt=-1,Ht=lt.length;for(Ht||(Ht=1,ot=_);++Dtlt){var Dt=ot;ot=lt,lt=Dt}if(St||ot%1||lt%1){var Ht=oF();return co(ot+Ht*(lt-ot+kn("1e-"+((Ht+"").length-1))),lt)}return rU(ot,lt)}var fm=ga(function(ot,lt,St){return lt=lt.toLowerCase(),ot+(St?Cp(lt):lt)});function Cp(ot){return NU(Jr(ot).toLowerCase())}function wp(ot){return ot=Jr(ot),ot&&ot.replace(Lt,Xp).replace(_s,"")}function Bm(ot,lt,St){ot=Jr(ot),lt=Jo(lt);var Dt=ot.length;St=St===_?Dt:Ds(dr(St),0,Dt);var Ht=St;return St-=lt.length,St>=0&&ot.slice(St,Ht)==lt}function Rm(ot){return ot=Jr(ot),ot&&Co.test(ot)?ot.replace(Eo,Kp):ot}function Sm(ot){return ot=Jr(ot),ot&&js.test(ot)?ot.replace(ts,"\\$&"):ot}var mm=ga(function(ot,lt,St){return ot+(St?"-":"")+lt.toLowerCase()}),ym=ga(function(ot,lt,St){return ot+(St?" ":"")+lt.toLowerCase()}),Em=AF("toLowerCase");function bm(ot,lt,St){ot=Jr(ot),lt=dr(lt);var Dt=lt?Ys(ot):0;if(!lt||Dt>=lt)return ot;var Ht=(lt-Dt)/2;return Ru(au(Ht),St)+ot+Ru(su(Ht),St)}function Vm(ot,lt,St){ot=Jr(ot),lt=dr(lt);var Dt=lt?Ys(ot):0;return lt&&Dt>>0,St?(ot=Jr(ot),ot&&(typeof lt=="string"||lt!=null&&!TU(lt))&&(lt=Jo(lt),!lt&&Gs(ot))?ys(Go(ot),0,St):ot.split(lt,St)):[]}var _m=ga(function(ot,lt,St){return ot+(St?" ":"")+NU(lt)});function Cm(ot,lt,St){return ot=Jr(ot),St=St==null?0:Ds(dr(St),0,ot.length),lt=Jo(lt),ot.slice(St,St+lt.length)==lt}function wm(ot,lt,St){var Dt=en.templateSettings;St&&Qo(ot,lt,St)&&(lt=_),ot=Jr(ot),lt=ku({},lt,Dt,zF);var Ht=ku({},lt.imports,Dt.imports,zF),rn=ro(Ht),gn=ju(Ht,rn),Sn,Vn,Dn=0,An=lt.interpolate||nn,jn="__p += '",Gn=Lu((lt.escape||nn).source+"|"+An.source+"|"+(An===Zr?lo:nn).source+"|"+(lt.evaluate||nn).source+"|$","g"),qn="//# sourceURL="+(_r.call(lt,"sourceURL")?(lt.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Wt+"]")+` +`;ot.replace(Gn,function(ir,hr,mr,Wo,fo,ko){return mr||(mr=Wo),jn+=ot.slice(Dn,ko).replace(dn,qp),hr&&(Sn=!0,jn+=`' + +__e(`+hr+`) + +'`),fo&&(Vn=!0,jn+=`'; +`+fo+`; +__p += '`),mr&&(jn+=`' + +((__t = (`+mr+`)) == null ? '' : __t) + +'`),Dn=ko+ir.length,ir}),jn+=`'; +`;var or=_r.call(lt,"variable")&<.variable;if(!or)jn=`with (obj) { +`+jn+` +} +`;else if(Ts.test(or))throw new lr(tt);jn=(Vn?jn.replace(Fs,""):jn).replace(_o,"$1").replace(Po,"$1;"),jn="function("+(or||"obj")+`) { +`+(or?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(Sn?", __e = _.escape":"")+(Vn?`, __j = Array.prototype.join; +function print() { __p += __j.call(arguments, '') } +`:`; +`)+jn+`return __p +}`;var Ur=Dp(function(){return vr(rn,qn+"return "+jn).apply(_,gn)});if(Ur.source=jn,VU(Ur))throw Ur;return Ur}function Zm(ot){return Jr(ot).toLowerCase()}function Dm(ot){return Jr(ot).toUpperCase()}function Mm(ot,lt,St){if(ot=Jr(ot),ot&&(St||lt===_))return GU(ot);if(!ot||!(lt=Jo(lt)))return ot;var Dt=Go(ot),Ht=Go(lt),rn=YU(Dt,Ht),gn=HU(Dt,Ht)+1;return ys(Dt,rn,gn).join("")}function Am(ot,lt,St){if(ot=Jr(ot),ot&&(St||lt===_))return ot.slice(0,KU(ot)+1);if(!ot||!(lt=Jo(lt)))return ot;var Dt=Go(ot),Ht=HU(Dt,Go(lt))+1;return ys(Dt,0,Ht).join("")}function Om(ot,lt,St){if(ot=Jr(ot),ot&&(St||lt===_))return ot.replace(Sr,"");if(!ot||!(lt=Jo(lt)))return ot;var Dt=Go(ot),Ht=YU(Dt,Go(lt));return ys(Dt,Ht).join("")}function xm(ot,lt){var St=jt,Dt=vt;if(Lr(lt)){var Ht="separator"in lt?lt.separator:Ht;St="length"in lt?dr(lt.length):St,Dt="omission"in lt?Jo(lt.omission):Dt}ot=Jr(ot);var rn=ot.length;if(Gs(ot)){var gn=Go(ot);rn=gn.length}if(St>=rn)return ot;var Sn=St-Ys(Dt);if(Sn<1)return Dt;var Vn=gn?ys(gn,0,Sn).join(""):ot.slice(0,Sn);if(Ht===_)return Vn+Dt;if(gn&&(Sn+=Vn.length-Sn),TU(Ht)){if(ot.slice(Sn).search(Ht)){var Dn,An=Vn;for(Ht.global||(Ht=Lu(Ht.source,Jr(Js.exec(Ht))+"g")),Ht.lastIndex=0;Dn=Ht.exec(An);)var jn=Dn.index;Vn=Vn.slice(0,jn===_?Sn:jn)}}else if(ot.indexOf(Jo(Ht),Sn)!=Sn){var Gn=Vn.lastIndexOf(Ht);Gn>-1&&(Vn=Vn.slice(0,Gn))}return Vn+Dt}function jm(ot){return ot=Jr(ot),ot&&Bo.test(ot)?ot.replace(Ko,oQ):ot}var Im=ga(function(ot,lt,St){return ot+(St?" ":"")+lt.toUpperCase()}),NU=AF("toUpperCase");function Zp(ot,lt,St){return ot=Jr(ot),lt=St?_:lt,lt===_?_h(ot)?aQ(ot):Pp(ot):ot.match(lt)||[]}var Dp=gr(function(ot,lt){try{return To(ot,_,lt)}catch(St){return VU(St)?St:new lr(St)}}),Lm=ls(function(ot,lt){return Do(lt,function(St){St=es(St),ss(ot,St,EU(ot[St],ot))}),ot});function Pm(ot){var lt=ot==null?0:ot.length,St=nr();return ot=lt?Ir(ot,function(Dt){if(typeof Dt[1]!="function")throw new Mo(et);return[St(Dt[0]),Dt[1]]}):[],gr(function(Dt){for(var Ht=-1;++HtPt)return[];var St=zt,Dt=co(ot,zt);lt=nr(lt),ot-=zt;for(var Ht=xu(Dt,lt);++St0||lt<0)?new Rr(St):(ot<0?St=St.takeRight(-ot):ot&&(St=St.drop(ot)),lt!==_&&(lt=dr(lt),St=lt<0?St.dropRight(-lt):St.take(lt-ot)),St)},Rr.prototype.takeRightWhile=function(ot){return this.reverse().takeWhile(ot).reverse()},Rr.prototype.toArray=function(){return this.take(zt)},$o(Rr.prototype,function(ot,lt){var St=/^(?:filter|find|map|reject)|While$/.test(lt),Dt=/^(?:head|last)$/.test(lt),Ht=en[Dt?"take"+(lt=="last"?"Right":""):lt],rn=Dt||/^find/.test(lt);Ht&&(en.prototype[lt]=function(){var gn=this.__wrapped__,Sn=Dt?[1]:arguments,Vn=gn instanceof Rr,Dn=Sn[0],An=Vn||ur(gn),jn=function(hr){var mr=Ht.apply(en,Qs([hr],Sn));return Dt&&Gn?mr[0]:mr};An&&St&&typeof Dn=="function"&&Dn.length!=1&&(Vn=An=!1);var Gn=this.__chain__,qn=!!this.__actions__.length,or=rn&&!Gn,Ur=Vn&&!qn;if(!rn&&An){gn=Ur?gn:new Rr(this);var ir=ot.apply(gn,Sn);return ir.__actions__.push({func:bu,args:[jn],thisArg:_}),new Ao(ir,Gn)}return or&&Ur?ot.apply(this,Sn):(ir=this.thru(jn),or?Dt?ir.value()[0]:ir.value():ir)})}),Do(["pop","push","shift","sort","splice","unshift"],function(ot){var lt=Kl[ot],St=/^(?:push|sort|unshift)$/.test(ot)?"tap":"thru",Dt=/^(?:pop|shift)$/.test(ot);en.prototype[ot]=function(){var Ht=arguments;if(Dt&&!this.__chain__){var rn=this.value();return lt.apply(ur(rn)?rn:[],Ht)}return this[St](function(gn){return lt.apply(ur(gn)?gn:[],Ht)})}}),$o(Rr.prototype,function(ot,lt){var St=en[lt];if(St){var Dt=St.name+"";_r.call(qs,Dt)||(qs[Dt]=[]),qs[Dt].push({name:lt,func:St})}}),qs[fu(_,ht).name]=[{name:"wrapper",func:_}],Rr.prototype.clone=JQ,Rr.prototype.reverse=NQ,Rr.prototype.value=WQ,en.prototype.at=QR,en.prototype.chain=fR,en.prototype.commit=BR,en.prototype.next=RR,en.prototype.plant=mR,en.prototype.reverse=yR,en.prototype.toJSON=en.prototype.valueOf=en.prototype.value=ER,en.prototype.first=en.prototype.head,yl&&(en.prototype[yl]=SR),en},Hs=lQ();br?((br.exports=Hs)._=Hs,pr._=Hs):$n._=Hs}).call(commonjsGlobal$1)})(lodash,lodashExports);var lib={},uaParser_minExports={},uaParser_min={get exports(){return uaParser_minExports},set exports(o){uaParser_minExports=o}};(function(o,s){(function(_,j){var $="0.7.33",_e="",et="?",tt="function",nt="undefined",rt="object",it="string",st="major",ut="model",Ft="name",dt="type",gt="vendor",Ut="version",ht="architecture",ft="console",pt="mobile",Rt="tablet",Qt="smarttv",Nt="wearable",At="embedded",kt=350,Bt="Amazon",jt="Apple",vt="ASUS",mt="BlackBerry",yt="Browser",Vt="Chrome",wt="Edge",Et="Firefox",Jt="Google",Pt="Huawei",Yt="LG",Mt="Microsoft",zt="Motorola",qt="Opera",Xt="Samsung",xt="Sharp",It="Sony",$t="Xiaomi",un="Zebra",tn="Facebook",an=function(_n,On){var xn={};for(var Ln in _n)On[Ln]&&On[Ln].length%2===0?xn[Ln]=On[Ln].concat(_n[Ln]):xn[Ln]=_n[Ln];return xn},Kt=function(_n){for(var On={},xn=0;xn<_n.length;xn++)On[_n[xn].toUpperCase()]=_n[xn];return On},Un=function(_n,On){return typeof _n===it?Bn(On).indexOf(Bn(_n))!==-1:!1},Bn=function(_n){return _n.toLowerCase()},hn=function(_n){return typeof _n===it?_n.replace(/[^\d\.]/g,_e).split(".")[0]:j},En=function(_n,On){if(typeof _n===it)return _n=_n.replace(/^\s\s*/,_e),typeof On===nt?_n:_n.substring(0,kt)},Cn=function(_n,On){for(var xn=0,Ln,Pn,Er,tr,zr,xr;xn0?tr.length===2?typeof tr[1]==tt?this[tr[0]]=tr[1].call(this,xr):this[tr[0]]=tr[1]:tr.length===3?typeof tr[1]===tt&&!(tr[1].exec&&tr[1].test)?this[tr[0]]=xr?tr[1].call(this,xr,tr[2]):j:this[tr[0]]=xr?xr.replace(tr[1],tr[2]):j:tr.length===4&&(this[tr[0]]=xr?tr[3].call(this,xr.replace(tr[1],tr[2])):j):this[tr]=xr||j;xn+=2}},Tt=function(_n,On){for(var xn in On)if(typeof On[xn]===rt&&On[xn].length>0){for(var Ln=0;Lnkt?En(Pn,kt):Pn,this},this.setUA(xn),this};ln.VERSION=$,ln.BROWSER=Kt([Ft,Ut,st]),ln.CPU=Kt([ht]),ln.DEVICE=Kt([ut,gt,dt,ft,pt,Qt,Rt,Nt,At]),ln.ENGINE=ln.OS=Kt([Ft,Ut]),o.exports&&(s=o.exports=ln),s.UAParser=ln;var cn=typeof _!==nt&&(_.jQuery||_.Zepto);if(cn&&!cn.ua){var fn=new ln;cn.ua=fn.getResult(),cn.ua.get=function(){return fn.getUA()},cn.ua.set=function(_n){fn.setUA(_n);var On=fn.getResult();for(var xn in On)cn.ua[xn]=On[xn]}}})(typeof window=="object"?window:commonjsGlobal$1)})(uaParser_min,uaParser_minExports);Object.defineProperty(lib,"__esModule",{value:!0});function _interopDefault(o){return o&&typeof o=="object"&&"default"in o?o.default:o}var React=reactExports,React__default=_interopDefault(React),UAParser=uaParser_minExports,ClientUAInstance=new UAParser,browser=ClientUAInstance.getBrowser(),cpu=ClientUAInstance.getCPU(),device=ClientUAInstance.getDevice(),engine=ClientUAInstance.getEngine(),os=ClientUAInstance.getOS(),ua=ClientUAInstance.getUA(),setUa=function o(s){return ClientUAInstance.setUA(s)},parseUserAgent=function o(s){if(!s){console.error("No userAgent string was provided");return}var _=new UAParser(s);return{UA:_,browser:_.getBrowser(),cpu:_.getCPU(),device:_.getDevice(),engine:_.getEngine(),os:_.getOS(),ua:_.getUA(),setUserAgent:function($){return _.setUA($)}}},UAHelper=Object.freeze({ClientUAInstance,browser,cpu,device,engine,os,ua,setUa,parseUserAgent});function ownKeys(o,s){var _=Object.keys(o);if(Object.getOwnPropertySymbols){var j=Object.getOwnPropertySymbols(o);s&&(j=j.filter(function($){return Object.getOwnPropertyDescriptor(o,$).enumerable})),_.push.apply(_,j)}return _}function _objectSpread2(o){for(var s=1;s=0)&&(_[$]=o[$]);return _}function _objectWithoutProperties(o,s){if(o==null)return{};var _=_objectWithoutPropertiesLoose(o,s),j,$;if(Object.getOwnPropertySymbols){var _e=Object.getOwnPropertySymbols(o);for($=0;$<_e.length;$++)j=_e[$],!(s.indexOf(j)>=0)&&Object.prototype.propertyIsEnumerable.call(o,j)&&(_[j]=o[j])}return _}function _assertThisInitialized(o){if(o===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return o}function _possibleConstructorReturn(o,s){if(s&&(typeof s=="object"||typeof s=="function"))return s;if(s!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(o)}function _slicedToArray(o,s){return _arrayWithHoles(o)||_iterableToArrayLimit(o,s)||_unsupportedIterableToArray(o,s)||_nonIterableRest()}function _arrayWithHoles(o){if(Array.isArray(o))return o}function _iterableToArrayLimit(o,s){var _=o==null?null:typeof Symbol<"u"&&o[Symbol.iterator]||o["@@iterator"];if(_!=null){var j=[],$=!0,_e=!1,et,tt;try{for(_=_.call(o);!($=(et=_.next()).done)&&(j.push(et.value),!(s&&j.length===s));$=!0);}catch(nt){_e=!0,tt=nt}finally{try{!$&&_.return!=null&&_.return()}finally{if(_e)throw tt}}return j}}function _unsupportedIterableToArray(o,s){if(o){if(typeof o=="string")return _arrayLikeToArray(o,s);var _=Object.prototype.toString.call(o).slice(8,-1);if(_==="Object"&&o.constructor&&(_=o.constructor.name),_==="Map"||_==="Set")return Array.from(o);if(_==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(_))return _arrayLikeToArray(o,s)}}function _arrayLikeToArray(o,s){(s==null||s>o.length)&&(s=o.length);for(var _=0,j=new Array(s);_1&&arguments[1]!==void 0?arguments[1]:"none";return s||_},getNavigatorInstance=function o(){return typeof window<"u"&&(window.navigator||navigator)?window.navigator||navigator:!1},isIOS13Check=function o(s){var _=getNavigatorInstance();return _&&_.platform&&(_.platform.indexOf(s)!==-1||_.platform==="MacIntel"&&_.maxTouchPoints>1&&!window.MSStream)},browserPayload=function o(s,_,j,$,_e){return{isBrowser:s,browserMajorVersion:setDefaults(_.major),browserFullVersion:setDefaults(_.version),browserName:setDefaults(_.name),engineName:setDefaults(j.name),engineVersion:setDefaults(j.version),osName:setDefaults($.name),osVersion:setDefaults($.version),userAgent:setDefaults(_e)}},mobilePayload=function o(s,_,j,$){return _objectSpread2({},s,{vendor:setDefaults(_.vendor),model:setDefaults(_.model),os:setDefaults(j.name),osVersion:setDefaults(j.version),ua:setDefaults($)})},smartTvPayload=function o(s,_,j,$){return{isSmartTV:s,engineName:setDefaults(_.name),engineVersion:setDefaults(_.version),osName:setDefaults(j.name),osVersion:setDefaults(j.version),userAgent:setDefaults($)}},consolePayload=function o(s,_,j,$){return{isConsole:s,engineName:setDefaults(_.name),engineVersion:setDefaults(_.version),osName:setDefaults(j.name),osVersion:setDefaults(j.version),userAgent:setDefaults($)}},wearablePayload=function o(s,_,j,$){return{isWearable:s,engineName:setDefaults(_.name),engineVersion:setDefaults(_.version),osName:setDefaults(j.name),osVersion:setDefaults(j.version),userAgent:setDefaults($)}},embeddedPayload=function o(s,_,j,$,_e){return{isEmbedded:s,vendor:setDefaults(_.vendor),model:setDefaults(_.model),engineName:setDefaults(j.name),engineVersion:setDefaults(j.version),osName:setDefaults($.name),osVersion:setDefaults($.version),userAgent:setDefaults(_e)}};function deviceDetect(o){var s=o?parseUserAgent(o):UAHelper,_=s.device,j=s.browser,$=s.engine,_e=s.os,et=s.ua,tt=checkDeviceType(_.type),nt=tt.isBrowser,rt=tt.isMobile,it=tt.isTablet,st=tt.isSmartTV,ut=tt.isConsole,Ft=tt.isWearable,dt=tt.isEmbedded;if(nt)return browserPayload(nt,j,$,_e,et);if(st)return smartTvPayload(st,$,_e,et);if(ut)return consolePayload(ut,$,_e,et);if(rt||it)return mobilePayload(tt,_,_e,et);if(Ft)return wearablePayload(Ft,$,_e,et);if(dt)return embeddedPayload(dt,_,$,_e,et)}var isMobileType=function o(s){var _=s.type;return _===DeviceTypes.Mobile},isTabletType=function o(s){var _=s.type;return _===DeviceTypes.Tablet},isMobileAndTabletType=function o(s){var _=s.type;return _===DeviceTypes.Mobile||_===DeviceTypes.Tablet},isSmartTVType=function o(s){var _=s.type;return _===DeviceTypes.SmartTv},isBrowserType=function o(s){var _=s.type;return _===DeviceTypes.Browser},isWearableType=function o(s){var _=s.type;return _===DeviceTypes.Wearable},isConsoleType=function o(s){var _=s.type;return _===DeviceTypes.Console},isEmbeddedType=function o(s){var _=s.type;return _===DeviceTypes.Embedded},getMobileVendor=function o(s){var _=s.vendor;return setDefaults(_)},getMobileModel=function o(s){var _=s.model;return setDefaults(_)},getDeviceType=function o(s){var _=s.type;return setDefaults(_,"browser")},isAndroidType=function o(s){var _=s.name;return _===OsTypes.Android},isWindowsType=function o(s){var _=s.name;return _===OsTypes.Windows},isMacOsType=function o(s){var _=s.name;return _===OsTypes.MAC_OS},isWinPhoneType=function o(s){var _=s.name;return _===OsTypes.WindowsPhone},isIOSType=function o(s){var _=s.name;return _===OsTypes.IOS},getOsVersion=function o(s){var _=s.version;return setDefaults(_)},getOsName=function o(s){var _=s.name;return setDefaults(_)},isChromeType=function o(s){var _=s.name;return _===BrowserTypes.Chrome},isFirefoxType=function o(s){var _=s.name;return _===BrowserTypes.Firefox},isChromiumType=function o(s){var _=s.name;return _===BrowserTypes.Chromium},isEdgeType=function o(s){var _=s.name;return _===BrowserTypes.Edge},isYandexType=function o(s){var _=s.name;return _===BrowserTypes.Yandex},isSafariType=function o(s){var _=s.name;return _===BrowserTypes.Safari||_===BrowserTypes.MobileSafari},isMobileSafariType=function o(s){var _=s.name;return _===BrowserTypes.MobileSafari},isOperaType=function o(s){var _=s.name;return _===BrowserTypes.Opera},isIEType=function o(s){var _=s.name;return _===BrowserTypes.InternetExplorer||_===BrowserTypes.Ie},isMIUIType=function o(s){var _=s.name;return _===BrowserTypes.MIUI},isSamsungBrowserType=function o(s){var _=s.name;return _===BrowserTypes.SamsungBrowser},getBrowserFullVersion=function o(s){var _=s.version;return setDefaults(_)},getBrowserVersion=function o(s){var _=s.major;return setDefaults(_)},getBrowserName=function o(s){var _=s.name;return setDefaults(_)},getEngineName=function o(s){var _=s.name;return setDefaults(_)},getEngineVersion=function o(s){var _=s.version;return setDefaults(_)},isElectronType=function o(){var s=getNavigatorInstance(),_=s&&s.userAgent&&s.userAgent.toLowerCase();return typeof _=="string"?/electron/.test(_):!1},isEdgeChromiumType=function o(s){return typeof s=="string"&&s.indexOf("Edg/")!==-1},getIOS13=function o(){var s=getNavigatorInstance();return s&&(/iPad|iPhone|iPod/.test(s.platform)||s.platform==="MacIntel"&&s.maxTouchPoints>1)&&!window.MSStream},getIPad13=function o(){return isIOS13Check("iPad")},getIphone13=function o(){return isIOS13Check("iPhone")},getIPod13=function o(){return isIOS13Check("iPod")},getUseragent=function o(s){return setDefaults(s)};function buildSelectorsObject(o){var s=o||UAHelper,_=s.device,j=s.browser,$=s.os,_e=s.engine,et=s.ua;return{isSmartTV:isSmartTVType(_),isConsole:isConsoleType(_),isWearable:isWearableType(_),isEmbedded:isEmbeddedType(_),isMobileSafari:isMobileSafariType(j)||getIPad13(),isChromium:isChromiumType(j),isMobile:isMobileAndTabletType(_)||getIPad13(),isMobileOnly:isMobileType(_),isTablet:isTabletType(_)||getIPad13(),isBrowser:isBrowserType(_),isDesktop:isBrowserType(_),isAndroid:isAndroidType($),isWinPhone:isWinPhoneType($),isIOS:isIOSType($)||getIPad13(),isChrome:isChromeType(j),isFirefox:isFirefoxType(j),isSafari:isSafariType(j),isOpera:isOperaType(j),isIE:isIEType(j),osVersion:getOsVersion($),osName:getOsName($),fullBrowserVersion:getBrowserFullVersion(j),browserVersion:getBrowserVersion(j),browserName:getBrowserName(j),mobileVendor:getMobileVendor(_),mobileModel:getMobileModel(_),engineName:getEngineName(_e),engineVersion:getEngineVersion(_e),getUA:getUseragent(et),isEdge:isEdgeType(j)||isEdgeChromiumType(et),isYandex:isYandexType(j),deviceType:getDeviceType(_),isIOS13:getIOS13(),isIPad13:getIPad13(),isIPhone13:getIphone13(),isIPod13:getIPod13(),isElectron:isElectronType(),isEdgeChromium:isEdgeChromiumType(et),isLegacyEdge:isEdgeType(j)&&!isEdgeChromiumType(et),isWindows:isWindowsType($),isMacOs:isMacOsType($),isMIUI:isMIUIType(j),isSamsungBrowser:isSamsungBrowserType(j)}}var isSmartTV=isSmartTVType(device),isConsole=isConsoleType(device),isWearable=isWearableType(device),isEmbedded=isEmbeddedType(device),isMobileSafari=isMobileSafariType(browser)||getIPad13(),isChromium=isChromiumType(browser),isMobile=isMobileAndTabletType(device)||getIPad13(),isMobileOnly=isMobileType(device),isTablet=isTabletType(device)||getIPad13(),isBrowser=isBrowserType(device),isDesktop=isBrowserType(device),isAndroid=isAndroidType(os),isWinPhone=isWinPhoneType(os),isIOS=isIOSType(os)||getIPad13(),isChrome=isChromeType(browser),isFirefox=isFirefoxType(browser),isSafari=isSafariType(browser),isOpera=isOperaType(browser),isIE=isIEType(browser),osVersion=getOsVersion(os),osName=getOsName(os),fullBrowserVersion=getBrowserFullVersion(browser),browserVersion=getBrowserVersion(browser),browserName=getBrowserName(browser),mobileVendor=getMobileVendor(device),mobileModel=getMobileModel(device),engineName=getEngineName(engine),engineVersion=getEngineVersion(engine),getUA=getUseragent(ua),isEdge=isEdgeType(browser)||isEdgeChromiumType(ua),isYandex=isYandexType(browser),deviceType=getDeviceType(device),isIOS13=getIOS13(),isIPad13=getIPad13(),isIPhone13=getIphone13(),isIPod13=getIPod13(),isElectron=isElectronType(),isEdgeChromium=isEdgeChromiumType(ua),isLegacyEdge=isEdgeType(browser)&&!isEdgeChromiumType(ua),isWindows=isWindowsType(os),isMacOs=isMacOsType(os),isMIUI=isMIUIType(browser),isSamsungBrowser=isSamsungBrowserType(browser),getSelectorsByUserAgent=function o(s){if(!s||typeof s!="string"){console.error("No valid user agent string was provided");return}var _=parseUserAgent(s),j=_.device,$=_.browser,_e=_.os,et=_.engine,tt=_.ua;return buildSelectorsObject({device:j,browser:$,os:_e,engine:et,ua:tt})},AndroidView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isAndroid?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},BrowserView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isBrowser?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},IEView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isIE?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},IOSView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isIOS?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},MobileView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isMobile?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},TabletView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isTablet?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},WinPhoneView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isWinPhone?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},MobileOnlyView=function o(s){var _=s.renderWithFragment,j=s.children;s.viewClassName,s.style;var $=_objectWithoutProperties(s,["renderWithFragment","children","viewClassName","style"]);return isMobileOnly?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},SmartTVView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isSmartTV?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},ConsoleView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isConsole?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},WearableView=function o(s){var _=s.renderWithFragment,j=s.children,$=_objectWithoutProperties(s,["renderWithFragment","children"]);return isWearable?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",$,j):null},CustomView=function o(s){var _=s.renderWithFragment,j=s.children;s.viewClassName,s.style;var $=s.condition,_e=_objectWithoutProperties(s,["renderWithFragment","children","viewClassName","style","condition"]);return $?_?React__default.createElement(React.Fragment,null,j):React__default.createElement("div",_e,j):null};function withOrientationChange(o){return function(s){_inherits(_,s);function _(j){var $;return _classCallCheck(this,_),$=_possibleConstructorReturn(this,_getPrototypeOf(_).call(this,j)),$.isEventListenerAdded=!1,$.handleOrientationChange=$.handleOrientationChange.bind(_assertThisInitialized($)),$.onOrientationChange=$.onOrientationChange.bind(_assertThisInitialized($)),$.onPageLoad=$.onPageLoad.bind(_assertThisInitialized($)),$.state={isLandscape:!1,isPortrait:!1},$}return _createClass(_,[{key:"handleOrientationChange",value:function(){this.isEventListenerAdded||(this.isEventListenerAdded=!0);var $=window.innerWidth>window.innerHeight?90:0;this.setState({isPortrait:$===0,isLandscape:$===90})}},{key:"onOrientationChange",value:function(){this.handleOrientationChange()}},{key:"onPageLoad",value:function(){this.handleOrientationChange()}},{key:"componentDidMount",value:function(){(typeof window>"u"?"undefined":_typeof(window))!==void 0&&isMobile&&(this.isEventListenerAdded?window.removeEventListener("load",this.onPageLoad,!1):(this.handleOrientationChange(),window.addEventListener("load",this.onPageLoad,!1)),window.addEventListener("resize",this.onOrientationChange,!1))}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this.onOrientationChange,!1)}},{key:"render",value:function(){return React__default.createElement(o,_extends({},this.props,{isLandscape:this.state.isLandscape,isPortrait:this.state.isPortrait}))}}]),_}(React__default.Component)}function useMobileOrientation(){var o=React.useState(function(){var _e=window.innerWidth>window.innerHeight?90:0;return{isPortrait:_e===0,isLandscape:_e===90,orientation:_e===0?"portrait":"landscape"}}),s=_slicedToArray(o,2),_=s[0],j=s[1],$=React.useCallback(function(){var _e=window.innerWidth>window.innerHeight?90:0,et={isPortrait:_e===0,isLandscape:_e===90,orientation:_e===0?"portrait":"landscape"};_.orientation!==et.orientation&&j(et)},[_.orientation]);return React.useEffect(function(){return(typeof window>"u"?"undefined":_typeof(window))!==void 0&&isMobile&&($(),window.addEventListener("load",$,!1),window.addEventListener("resize",$,!1)),function(){window.removeEventListener("resize",$,!1),window.removeEventListener("load",$,!1)}},[$]),_}function useDeviceData(o){var s=o||window.navigator.userAgent;return parseUserAgent(s)}function useDeviceSelectors(o){var s=o||window.navigator.userAgent,_=useDeviceData(s),j=buildSelectorsObject(_);return[j,_]}lib.AndroidView=AndroidView;lib.BrowserTypes=BrowserTypes;lib.BrowserView=BrowserView;lib.ConsoleView=ConsoleView;lib.CustomView=CustomView;lib.IEView=IEView;lib.IOSView=IOSView;lib.MobileOnlyView=MobileOnlyView;lib.MobileView=MobileView;lib.OsTypes=OsTypes;lib.SmartTVView=SmartTVView;lib.TabletView=TabletView;lib.WearableView=WearableView;lib.WinPhoneView=WinPhoneView;lib.browserName=browserName;lib.browserVersion=browserVersion;lib.deviceDetect=deviceDetect;lib.deviceType=deviceType;lib.engineName=engineName;lib.engineVersion=engineVersion;lib.fullBrowserVersion=fullBrowserVersion;lib.getSelectorsByUserAgent=getSelectorsByUserAgent;lib.getUA=getUA;lib.isAndroid=isAndroid;lib.isBrowser=isBrowser;lib.isChrome=isChrome;lib.isChromium=isChromium;lib.isConsole=isConsole;lib.isDesktop=isDesktop;lib.isEdge=isEdge;lib.isEdgeChromium=isEdgeChromium;lib.isElectron=isElectron;lib.isEmbedded=isEmbedded;lib.isFirefox=isFirefox;lib.isIE=isIE;lib.isIOS=isIOS;lib.isIOS13=isIOS13;lib.isIPad13=isIPad13;lib.isIPhone13=isIPhone13;lib.isIPod13=isIPod13;lib.isLegacyEdge=isLegacyEdge;lib.isMIUI=isMIUI;lib.isMacOs=isMacOs;lib.isMobile=isMobile;lib.isMobileOnly=isMobileOnly;lib.isMobileSafari=isMobileSafari;lib.isOpera=isOpera;lib.isSafari=isSafari;lib.isSamsungBrowser=isSamsungBrowser;lib.isSmartTV=isSmartTV;lib.isTablet=isTablet;lib.isWearable=isWearable;lib.isWinPhone=isWinPhone;lib.isWindows=isWindows;lib.isYandex=isYandex;lib.mobileModel=mobileModel;lib.mobileVendor=mobileVendor;lib.osName=osName;lib.osVersion=osVersion;lib.parseUserAgent=parseUserAgent;lib.setUserAgent=setUserAgent;lib.useDeviceData=useDeviceData;lib.useDeviceSelectors=useDeviceSelectors;lib.useMobileOrientation=useMobileOrientation;lib.withOrientationChange=withOrientationChange;/*! + * @kurkle/color v0.3.2 + * https://github.com/kurkle/color#readme + * (c) 2023 Jukka Kurkela + * Released under the MIT License + */function round(o){return o+.5|0}const lim=(o,s,_)=>Math.max(Math.min(o,_),s);function p2b(o){return lim(round(o*2.55),0,255)}function n2b(o){return lim(round(o*255),0,255)}function b2n(o){return lim(round(o/2.55)/100,0,1)}function n2p(o){return lim(round(o*100),0,100)}const map$1={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},hex=[..."0123456789ABCDEF"],h1=o=>hex[o&15],h2=o=>hex[(o&240)>>4]+hex[o&15],eq=o=>(o&240)>>4===(o&15),isShort=o=>eq(o.r)&&eq(o.g)&&eq(o.b)&&eq(o.a);function hexParse(o){var s=o.length,_;return o[0]==="#"&&(s===4||s===5?_={r:255&map$1[o[1]]*17,g:255&map$1[o[2]]*17,b:255&map$1[o[3]]*17,a:s===5?map$1[o[4]]*17:255}:(s===7||s===9)&&(_={r:map$1[o[1]]<<4|map$1[o[2]],g:map$1[o[3]]<<4|map$1[o[4]],b:map$1[o[5]]<<4|map$1[o[6]],a:s===9?map$1[o[7]]<<4|map$1[o[8]]:255})),_}const alpha=(o,s)=>o<255?s(o):"";function hexString(o){var s=isShort(o)?h1:h2;return o?"#"+s(o.r)+s(o.g)+s(o.b)+alpha(o.a,s):void 0}const HUE_RE=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function hsl2rgbn(o,s,_){const j=s*Math.min(_,1-_),$=(_e,et=(_e+o/30)%12)=>_-j*Math.max(Math.min(et-3,9-et,1),-1);return[$(0),$(8),$(4)]}function hsv2rgbn(o,s,_){const j=($,_e=($+o/60)%6)=>_-_*s*Math.max(Math.min(_e,4-_e,1),0);return[j(5),j(3),j(1)]}function hwb2rgbn(o,s,_){const j=hsl2rgbn(o,1,.5);let $;for(s+_>1&&($=1/(s+_),s*=$,_*=$),$=0;$<3;$++)j[$]*=1-s-_,j[$]+=s;return j}function hueValue(o,s,_,j,$){return o===$?(s-_)/j+(s<_?6:0):s===$?(_-o)/j+2:(o-s)/j+4}function rgb2hsl(o){const _=o.r/255,j=o.g/255,$=o.b/255,_e=Math.max(_,j,$),et=Math.min(_,j,$),tt=(_e+et)/2;let nt,rt,it;return _e!==et&&(it=_e-et,rt=tt>.5?it/(2-_e-et):it/(_e+et),nt=hueValue(_,j,$,it,_e),nt=nt*60+.5),[nt|0,rt||0,tt]}function calln(o,s,_,j){return(Array.isArray(s)?o(s[0],s[1],s[2]):o(s,_,j)).map(n2b)}function hsl2rgb(o,s,_){return calln(hsl2rgbn,o,s,_)}function hwb2rgb(o,s,_){return calln(hwb2rgbn,o,s,_)}function hsv2rgb(o,s,_){return calln(hsv2rgbn,o,s,_)}function hue(o){return(o%360+360)%360}function hueParse(o){const s=HUE_RE.exec(o);let _=255,j;if(!s)return;s[5]!==j&&(_=s[6]?p2b(+s[5]):n2b(+s[5]));const $=hue(+s[2]),_e=+s[3]/100,et=+s[4]/100;return s[1]==="hwb"?j=hwb2rgb($,_e,et):s[1]==="hsv"?j=hsv2rgb($,_e,et):j=hsl2rgb($,_e,et),{r:j[0],g:j[1],b:j[2],a:_}}function rotate(o,s){var _=rgb2hsl(o);_[0]=hue(_[0]+s),_=hsl2rgb(_),o.r=_[0],o.g=_[1],o.b=_[2]}function hslString(o){if(!o)return;const s=rgb2hsl(o),_=s[0],j=n2p(s[1]),$=n2p(s[2]);return o.a<255?`hsla(${_}, ${j}%, ${$}%, ${b2n(o.a)})`:`hsl(${_}, ${j}%, ${$}%)`}const map$2={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},names$1={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};function unpack(){const o={},s=Object.keys(names$1),_=Object.keys(map$2);let j,$,_e,et,tt;for(j=0;j>16&255,_e>>8&255,_e&255]}return o}let names;function nameParse(o){names||(names=unpack(),names.transparent=[0,0,0,0]);const s=names[o.toLowerCase()];return s&&{r:s[0],g:s[1],b:s[2],a:s.length===4?s[3]:255}}const RGB_RE=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;function rgbParse(o){const s=RGB_RE.exec(o);let _=255,j,$,_e;if(s){if(s[7]!==j){const et=+s[7];_=s[8]?p2b(et):lim(et*255,0,255)}return j=+s[1],$=+s[3],_e=+s[5],j=255&(s[2]?p2b(j):lim(j,0,255)),$=255&(s[4]?p2b($):lim($,0,255)),_e=255&(s[6]?p2b(_e):lim(_e,0,255)),{r:j,g:$,b:_e,a:_}}}function rgbString(o){return o&&(o.a<255?`rgba(${o.r}, ${o.g}, ${o.b}, ${b2n(o.a)})`:`rgb(${o.r}, ${o.g}, ${o.b})`)}const to=o=>o<=.0031308?o*12.92:Math.pow(o,1/2.4)*1.055-.055,from=o=>o<=.04045?o/12.92:Math.pow((o+.055)/1.055,2.4);function interpolate$1(o,s,_){const j=from(b2n(o.r)),$=from(b2n(o.g)),_e=from(b2n(o.b));return{r:n2b(to(j+_*(from(b2n(s.r))-j))),g:n2b(to($+_*(from(b2n(s.g))-$))),b:n2b(to(_e+_*(from(b2n(s.b))-_e))),a:o.a+_*(s.a-o.a)}}function modHSL(o,s,_){if(o){let j=rgb2hsl(o);j[s]=Math.max(0,Math.min(j[s]+j[s]*_,s===0?360:1)),j=hsl2rgb(j),o.r=j[0],o.g=j[1],o.b=j[2]}}function clone$1(o,s){return o&&Object.assign(s||{},o)}function fromObject(o){var s={r:0,g:0,b:0,a:255};return Array.isArray(o)?o.length>=3&&(s={r:o[0],g:o[1],b:o[2],a:255},o.length>3&&(s.a=n2b(o[3]))):(s=clone$1(o,{r:0,g:0,b:0,a:1}),s.a=n2b(s.a)),s}function functionParse(o){return o.charAt(0)==="r"?rgbParse(o):hueParse(o)}class Color{constructor(s){if(s instanceof Color)return s;const _=typeof s;let j;_==="object"?j=fromObject(s):_==="string"&&(j=hexParse(s)||nameParse(s)||functionParse(s)),this._rgb=j,this._valid=!!j}get valid(){return this._valid}get rgb(){var s=clone$1(this._rgb);return s&&(s.a=b2n(s.a)),s}set rgb(s){this._rgb=fromObject(s)}rgbString(){return this._valid?rgbString(this._rgb):void 0}hexString(){return this._valid?hexString(this._rgb):void 0}hslString(){return this._valid?hslString(this._rgb):void 0}mix(s,_){if(s){const j=this.rgb,$=s.rgb;let _e;const et=_===_e?.5:_,tt=2*et-1,nt=j.a-$.a,rt=((tt*nt===-1?tt:(tt+nt)/(1+tt*nt))+1)/2;_e=1-rt,j.r=255&rt*j.r+_e*$.r+.5,j.g=255&rt*j.g+_e*$.g+.5,j.b=255&rt*j.b+_e*$.b+.5,j.a=et*j.a+(1-et)*$.a,this.rgb=j}return this}interpolate(s,_){return s&&(this._rgb=interpolate$1(this._rgb,s._rgb,_)),this}clone(){return new Color(this.rgb)}alpha(s){return this._rgb.a=n2b(s),this}clearer(s){const _=this._rgb;return _.a*=1-s,this}greyscale(){const s=this._rgb,_=round(s.r*.3+s.g*.59+s.b*.11);return s.r=s.g=s.b=_,this}opaquer(s){const _=this._rgb;return _.a*=1+s,this}negate(){const s=this._rgb;return s.r=255-s.r,s.g=255-s.g,s.b=255-s.b,this}lighten(s){return modHSL(this._rgb,2,s),this}darken(s){return modHSL(this._rgb,2,-s),this}saturate(s){return modHSL(this._rgb,1,s),this}desaturate(s){return modHSL(this._rgb,1,-s),this}rotate(s){return rotate(this._rgb,s),this}}/*! + * Chart.js v4.2.1 + * https://www.chartjs.org + * (c) 2023 Chart.js Contributors + * Released under the MIT License + */function noop(){}const uid=(()=>{let o=0;return()=>o++})();function isNullOrUndef(o){return o===null||typeof o>"u"}function isArray(o){if(Array.isArray&&Array.isArray(o))return!0;const s=Object.prototype.toString.call(o);return s.slice(0,7)==="[object"&&s.slice(-6)==="Array]"}function isObject(o){return o!==null&&Object.prototype.toString.call(o)==="[object Object]"}function isNumberFinite(o){return(typeof o=="number"||o instanceof Number)&&isFinite(+o)}function finiteOrDefault(o,s){return isNumberFinite(o)?o:s}function valueOrDefault(o,s){return typeof o>"u"?s:o}const toPercentage=(o,s)=>typeof o=="string"&&o.endsWith("%")?parseFloat(o)/100:+o/s,toDimension=(o,s)=>typeof o=="string"&&o.endsWith("%")?parseFloat(o)/100*s:+o;function callback(o,s,_){if(o&&typeof o.call=="function")return o.apply(_,s)}function each(o,s,_,j){let $,_e,et;if(isArray(o))if(_e=o.length,j)for($=_e-1;$>=0;$--)s.call(_,o[$],$);else for($=0;$<_e;$++)s.call(_,o[$],$);else if(isObject(o))for(et=Object.keys(o),_e=et.length,$=0;$<_e;$++)s.call(_,o[et[$]],et[$])}function _elementsEqual(o,s){let _,j,$,_e;if(!o||!s||o.length!==s.length)return!1;for(_=0,j=o.length;_o,x:o=>o.x,y:o=>o.y};function _splitKey(o){const s=o.split("."),_=[];let j="";for(const $ of s)j+=$,j.endsWith("\\")?j=j.slice(0,-1)+".":(_.push(j),j="");return _}function _getKeyResolver(o){const s=_splitKey(o);return _=>{for(const j of s){if(j==="")break;_=_&&_[j]}return _}}function resolveObjectKey(o,s){return(keyResolvers[s]||(keyResolvers[s]=_getKeyResolver(s)))(o)}function _capitalize(o){return o.charAt(0).toUpperCase()+o.slice(1)}const defined=o=>typeof o<"u",isFunction=o=>typeof o=="function",setsEqual=(o,s)=>{if(o.size!==s.size)return!1;for(const _ of o)if(!s.has(_))return!1;return!0};function _isClickEvent(o){return o.type==="mouseup"||o.type==="click"||o.type==="contextmenu"}const PI=Math.PI,TAU=2*PI,PITAU=TAU+PI,INFINITY=Number.POSITIVE_INFINITY,RAD_PER_DEG=PI/180,HALF_PI=PI/2,QUARTER_PI=PI/4,TWO_THIRDS_PI=PI*2/3,log10=Math.log10,sign=Math.sign;function almostEquals(o,s,_){return Math.abs(o-s)<_}function niceNum(o){const s=Math.round(o);o=almostEquals(o,s,o/1e3)?s:o;const _=Math.pow(10,Math.floor(log10(o))),j=o/_;return(j<=1?1:j<=2?2:j<=5?5:10)*_}function _factorize(o){const s=[],_=Math.sqrt(o);let j;for(j=1;j<_;j++)o%j===0&&(s.push(j),s.push(o/j));return _===(_|0)&&s.push(_),s.sort(($,_e)=>$-_e).pop(),s}function isNumber(o){return!isNaN(parseFloat(o))&&isFinite(o)}function almostWhole(o,s){const _=Math.round(o);return _-s<=o&&_+s>=o}function _setMinAndMaxByKey(o,s,_){let j,$,_e;for(j=0,$=o.length;j<$;j++)_e=o[j][_],isNaN(_e)||(s.min=Math.min(s.min,_e),s.max=Math.max(s.max,_e))}function toRadians(o){return o*(PI/180)}function toDegrees(o){return o*(180/PI)}function _decimalPlaces(o){if(!isNumberFinite(o))return;let s=1,_=0;for(;Math.round(o*s)/s!==o;)s*=10,_++;return _}function getAngleFromPoint(o,s){const _=s.x-o.x,j=s.y-o.y,$=Math.sqrt(_*_+j*j);let _e=Math.atan2(j,_);return _e<-.5*PI&&(_e+=TAU),{angle:_e,distance:$}}function distanceBetweenPoints(o,s){return Math.sqrt(Math.pow(s.x-o.x,2)+Math.pow(s.y-o.y,2))}function _angleDiff(o,s){return(o-s+PITAU)%TAU-PI}function _normalizeAngle(o){return(o%TAU+TAU)%TAU}function _angleBetween(o,s,_,j){const $=_normalizeAngle(o),_e=_normalizeAngle(s),et=_normalizeAngle(_),tt=_normalizeAngle(_e-$),nt=_normalizeAngle(et-$),rt=_normalizeAngle($-_e),it=_normalizeAngle($-et);return $===_e||$===et||j&&_e===et||tt>nt&&rt=Math.min(s,_)-j&&o<=Math.max(s,_)+j}function _lookup(o,s,_){_=_||(et=>o[et]1;)_e=$+j>>1,_(_e)?$=_e:j=_e;return{lo:$,hi:j}}const _lookupByKey=(o,s,_,j)=>_lookup(o,_,j?$=>{const _e=o[$][s];return _e<_||_e===_&&o[$+1][s]===_}:$=>o[$][s]<_),_rlookupByKey=(o,s,_)=>_lookup(o,_,j=>o[j][s]>=_);function _filterBetween(o,s,_){let j=0,$=o.length;for(;j<$&&o[j]j&&o[$-1]>_;)$--;return j>0||${const j="_onData"+_capitalize(_),$=o[_];Object.defineProperty(o,_,{configurable:!0,enumerable:!1,value(..._e){const et=$.apply(this,_e);return o._chartjs.listeners.forEach(tt=>{typeof tt[j]=="function"&&tt[j](..._e)}),et}})})}function unlistenArrayEvents(o,s){const _=o._chartjs;if(!_)return;const j=_.listeners,$=j.indexOf(s);$!==-1&&j.splice($,1),!(j.length>0)&&(arrayEvents.forEach(_e=>{delete o[_e]}),delete o._chartjs)}function _arrayUnique(o){const s=new Set;let _,j;for(_=0,j=o.length;_"u"?function(o){return o()}:window.requestAnimationFrame}();function throttled(o,s){let _=[],j=!1;return function(...$){_=$,j||(j=!0,requestAnimFrame.call(window,()=>{j=!1,o.apply(s,_)}))}}function debounce(o,s){let _;return function(...j){return s?(clearTimeout(_),_=setTimeout(o,s,j)):o.apply(this,j),s}}const _toLeftRightCenter=o=>o==="start"?"left":o==="end"?"right":"center",_alignStartEnd=(o,s,_)=>o==="start"?s:o==="end"?_:(s+_)/2,_textX=(o,s,_,j)=>o===(j?"left":"right")?_:o==="center"?(s+_)/2:s;function _getStartAndCountOfVisiblePoints(o,s,_){const j=s.length;let $=0,_e=j;if(o._sorted){const{iScale:et,_parsed:tt}=o,nt=et.axis,{min:rt,max:it,minDefined:st,maxDefined:ut}=et.getUserBounds();st&&($=_limitValue(Math.min(_lookupByKey(tt,et.axis,rt).lo,_?j:_lookupByKey(s,nt,et.getPixelForValue(rt)).lo),0,j-1)),ut?_e=_limitValue(Math.max(_lookupByKey(tt,et.axis,it,!0).hi+1,_?0:_lookupByKey(s,nt,et.getPixelForValue(it),!0).hi+1),$,j)-$:_e=j-$}return{start:$,count:_e}}function _scaleRangesChanged(o){const{xScale:s,yScale:_,_scaleRanges:j}=o,$={xmin:s.min,xmax:s.max,ymin:_.min,ymax:_.max};if(!j)return o._scaleRanges=$,!0;const _e=j.xmin!==s.min||j.xmax!==s.max||j.ymin!==_.min||j.ymax!==_.max;return Object.assign(j,$),_e}const atEdge=o=>o===0||o===1,elasticIn=(o,s,_)=>-(Math.pow(2,10*(o-=1))*Math.sin((o-s)*TAU/_)),elasticOut=(o,s,_)=>Math.pow(2,-10*o)*Math.sin((o-s)*TAU/_)+1,effects={linear:o=>o,easeInQuad:o=>o*o,easeOutQuad:o=>-o*(o-2),easeInOutQuad:o=>(o/=.5)<1?.5*o*o:-.5*(--o*(o-2)-1),easeInCubic:o=>o*o*o,easeOutCubic:o=>(o-=1)*o*o+1,easeInOutCubic:o=>(o/=.5)<1?.5*o*o*o:.5*((o-=2)*o*o+2),easeInQuart:o=>o*o*o*o,easeOutQuart:o=>-((o-=1)*o*o*o-1),easeInOutQuart:o=>(o/=.5)<1?.5*o*o*o*o:-.5*((o-=2)*o*o*o-2),easeInQuint:o=>o*o*o*o*o,easeOutQuint:o=>(o-=1)*o*o*o*o+1,easeInOutQuint:o=>(o/=.5)<1?.5*o*o*o*o*o:.5*((o-=2)*o*o*o*o+2),easeInSine:o=>-Math.cos(o*HALF_PI)+1,easeOutSine:o=>Math.sin(o*HALF_PI),easeInOutSine:o=>-.5*(Math.cos(PI*o)-1),easeInExpo:o=>o===0?0:Math.pow(2,10*(o-1)),easeOutExpo:o=>o===1?1:-Math.pow(2,-10*o)+1,easeInOutExpo:o=>atEdge(o)?o:o<.5?.5*Math.pow(2,10*(o*2-1)):.5*(-Math.pow(2,-10*(o*2-1))+2),easeInCirc:o=>o>=1?o:-(Math.sqrt(1-o*o)-1),easeOutCirc:o=>Math.sqrt(1-(o-=1)*o),easeInOutCirc:o=>(o/=.5)<1?-.5*(Math.sqrt(1-o*o)-1):.5*(Math.sqrt(1-(o-=2)*o)+1),easeInElastic:o=>atEdge(o)?o:elasticIn(o,.075,.3),easeOutElastic:o=>atEdge(o)?o:elasticOut(o,.075,.3),easeInOutElastic(o){return atEdge(o)?o:o<.5?.5*elasticIn(o*2,.1125,.45):.5+.5*elasticOut(o*2-1,.1125,.45)},easeInBack(o){return o*o*((1.70158+1)*o-1.70158)},easeOutBack(o){return(o-=1)*o*((1.70158+1)*o+1.70158)+1},easeInOutBack(o){let s=1.70158;return(o/=.5)<1?.5*(o*o*(((s*=1.525)+1)*o-s)):.5*((o-=2)*o*(((s*=1.525)+1)*o+s)+2)},easeInBounce:o=>1-effects.easeOutBounce(1-o),easeOutBounce(o){return o<1/2.75?7.5625*o*o:o<2/2.75?7.5625*(o-=1.5/2.75)*o+.75:o<2.5/2.75?7.5625*(o-=2.25/2.75)*o+.9375:7.5625*(o-=2.625/2.75)*o+.984375},easeInOutBounce:o=>o<.5?effects.easeInBounce(o*2)*.5:effects.easeOutBounce(o*2-1)*.5+.5};function isPatternOrGradient(o){if(o&&typeof o=="object"){const s=o.toString();return s==="[object CanvasPattern]"||s==="[object CanvasGradient]"}return!1}function color(o){return isPatternOrGradient(o)?o:new Color(o)}function getHoverColor(o){return isPatternOrGradient(o)?o:new Color(o).saturate(.5).darken(.1).hexString()}const numbers=["x","y","borderWidth","radius","tension"],colors=["color","borderColor","backgroundColor"];function applyAnimationsDefaults(o){o.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),o.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:s=>s!=="onProgress"&&s!=="onComplete"&&s!=="fn"}),o.set("animations",{colors:{type:"color",properties:colors},numbers:{type:"number",properties:numbers}}),o.describe("animations",{_fallback:"animation"}),o.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:s=>s|0}}}})}function applyLayoutsDefaults(o){o.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})}const intlCache=new Map;function getNumberFormat(o,s){s=s||{};const _=o+JSON.stringify(s);let j=intlCache.get(_);return j||(j=new Intl.NumberFormat(o,s),intlCache.set(_,j)),j}function formatNumber(o,s,_){return getNumberFormat(s,_).format(o)}const formatters={values(o){return isArray(o)?o:""+o},numeric(o,s,_){if(o===0)return"0";const j=this.chart.options.locale;let $,_e=o;if(_.length>1){const rt=Math.max(Math.abs(_[0].value),Math.abs(_[_.length-1].value));(rt<1e-4||rt>1e15)&&($="scientific"),_e=calculateDelta(o,_)}const et=log10(Math.abs(_e)),tt=Math.max(Math.min(-1*Math.floor(et),20),0),nt={notation:$,minimumFractionDigits:tt,maximumFractionDigits:tt};return Object.assign(nt,this.options.ticks.format),formatNumber(o,j,nt)},logarithmic(o,s,_){if(o===0)return"0";const j=_[s].significand||o/Math.pow(10,Math.floor(log10(o)));return[1,2,3,5,10,15].includes(j)||s>.8*_.length?formatters.numeric.call(this,o,s,_):""}};function calculateDelta(o,s){let _=s.length>3?s[2].value-s[1].value:s[1].value-s[0].value;return Math.abs(_)>=1&&o!==Math.floor(o)&&(_=o-Math.floor(o)),_}var Ticks={formatters};function applyScaleDefaults(o){o.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(s,_)=>_.lineWidth,tickColor:(s,_)=>_.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:Ticks.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),o.route("scale.ticks","color","","color"),o.route("scale.grid","color","","borderColor"),o.route("scale.border","color","","borderColor"),o.route("scale.title","color","","color"),o.describe("scale",{_fallback:!1,_scriptable:s=>!s.startsWith("before")&&!s.startsWith("after")&&s!=="callback"&&s!=="parser",_indexable:s=>s!=="borderDash"&&s!=="tickBorderDash"&&s!=="dash"}),o.describe("scales",{_fallback:"scale"}),o.describe("scale.ticks",{_scriptable:s=>s!=="backdropPadding"&&s!=="callback",_indexable:s=>s!=="backdropPadding"})}const overrides=Object.create(null),descriptors=Object.create(null);function getScope$1(o,s){if(!s)return o;const _=s.split(".");for(let j=0,$=_.length;j<$;++j){const _e=_[j];o=o[_e]||(o[_e]=Object.create(null))}return o}function set(o,s,_){return typeof s=="string"?merge$1(getScope$1(o,s),_):merge$1(getScope$1(o,""),s)}class Defaults{constructor(s,_){this.animation=void 0,this.backgroundColor="rgba(0,0,0,0.1)",this.borderColor="rgba(0,0,0,0.1)",this.color="#666",this.datasets={},this.devicePixelRatio=j=>j.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(j,$)=>getHoverColor($.backgroundColor),this.hoverBorderColor=(j,$)=>getHoverColor($.borderColor),this.hoverColor=(j,$)=>getHoverColor($.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(s),this.apply(_)}set(s,_){return set(this,s,_)}get(s){return getScope$1(this,s)}describe(s,_){return set(descriptors,s,_)}override(s,_){return set(overrides,s,_)}route(s,_,j,$){const _e=getScope$1(this,s),et=getScope$1(this,j),tt="_"+_;Object.defineProperties(_e,{[tt]:{value:_e[_],writable:!0},[_]:{enumerable:!0,get(){const nt=this[tt],rt=et[$];return isObject(nt)?Object.assign({},rt,nt):valueOrDefault(nt,rt)},set(nt){this[tt]=nt}}})}apply(s){s.forEach(_=>_(this))}}var defaults=new Defaults({_scriptable:o=>!o.startsWith("on"),_indexable:o=>o!=="events",hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[applyAnimationsDefaults,applyLayoutsDefaults,applyScaleDefaults]);function toFontString(o){return!o||isNullOrUndef(o.size)||isNullOrUndef(o.family)?null:(o.style?o.style+" ":"")+(o.weight?o.weight+" ":"")+o.size+"px "+o.family}function _measureText(o,s,_,j,$){let _e=s[$];return _e||(_e=s[$]=o.measureText($).width,_.push($)),_e>j&&(j=_e),j}function _longestText(o,s,_,j){j=j||{};let $=j.data=j.data||{},_e=j.garbageCollect=j.garbageCollect||[];j.font!==s&&($=j.data={},_e=j.garbageCollect=[],j.font=s),o.save(),o.font=s;let et=0;const tt=_.length;let nt,rt,it,st,ut;for(nt=0;nt_.length){for(nt=0;nt0&&o.stroke()}}function _isPointInArea(o,s,_){return _=_||.5,!s||o&&o.x>s.left-_&&o.xs.top-_&&o.y0&&_e.strokeColor!=="";let nt,rt;for(o.save(),o.font=$.string,setRenderOpts(o,_e),nt=0;nt+o||0;function _readValueToProps(o,s){const _={},j=isObject(s),$=j?Object.keys(s):s,_e=isObject(o)?j?et=>valueOrDefault(o[et],o[s[et]]):et=>o[et]:()=>o;for(const et of $)_[et]=numberOrZero(_e(et));return _}function toTRBL(o){return _readValueToProps(o,{top:"y",right:"x",bottom:"y",left:"x"})}function toTRBLCorners(o){return _readValueToProps(o,["topLeft","topRight","bottomLeft","bottomRight"])}function toPadding(o){const s=toTRBL(o);return s.width=s.left+s.right,s.height=s.top+s.bottom,s}function toFont(o,s){o=o||{},s=s||defaults.font;let _=valueOrDefault(o.size,s.size);typeof _=="string"&&(_=parseInt(_,10));let j=valueOrDefault(o.style,s.style);j&&!(""+j).match(FONT_STYLE)&&(console.warn('Invalid font style specified: "'+j+'"'),j=void 0);const $={family:valueOrDefault(o.family,s.family),lineHeight:toLineHeight(valueOrDefault(o.lineHeight,s.lineHeight),_),size:_,style:j,weight:valueOrDefault(o.weight,s.weight),string:""};return $.string=toFontString($),$}function resolve(o,s,_,j){let $=!0,_e,et,tt;for(_e=0,et=o.length;_e_&&tt===0?0:tt+nt;return{min:et(j,-Math.abs(_e)),max:et($,_e)}}function createContext(o,s){return Object.assign(Object.create(o),s)}function _createResolver(o,s=[""],_=o,j,$=()=>o[0]){defined(j)||(j=_resolve("_fallback",o));const _e={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:o,_rootScopes:_,_fallback:j,_getTarget:$,override:et=>_createResolver([et,...o],s,_,j)};return new Proxy(_e,{deleteProperty(et,tt){return delete et[tt],delete et._keys,delete o[0][tt],!0},get(et,tt){return _cached(et,tt,()=>_resolveWithPrefixes(tt,s,o,et))},getOwnPropertyDescriptor(et,tt){return Reflect.getOwnPropertyDescriptor(et._scopes[0],tt)},getPrototypeOf(){return Reflect.getPrototypeOf(o[0])},has(et,tt){return getKeysFromAllScopes(et).includes(tt)},ownKeys(et){return getKeysFromAllScopes(et)},set(et,tt,nt){const rt=et._storage||(et._storage=$());return et[tt]=rt[tt]=nt,delete et._keys,!0}})}function _attachContext(o,s,_,j){const $={_cacheable:!1,_proxy:o,_context:s,_subProxy:_,_stack:new Set,_descriptors:_descriptors(o,j),setContext:_e=>_attachContext(o,_e,_,j),override:_e=>_attachContext(o.override(_e),s,_,j)};return new Proxy($,{deleteProperty(_e,et){return delete _e[et],delete o[et],!0},get(_e,et,tt){return _cached(_e,et,()=>_resolveWithContext(_e,et,tt))},getOwnPropertyDescriptor(_e,et){return _e._descriptors.allKeys?Reflect.has(o,et)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(o,et)},getPrototypeOf(){return Reflect.getPrototypeOf(o)},has(_e,et){return Reflect.has(o,et)},ownKeys(){return Reflect.ownKeys(o)},set(_e,et,tt){return o[et]=tt,delete _e[et],!0}})}function _descriptors(o,s={scriptable:!0,indexable:!0}){const{_scriptable:_=s.scriptable,_indexable:j=s.indexable,_allKeys:$=s.allKeys}=o;return{allKeys:$,scriptable:_,indexable:j,isScriptable:isFunction(_)?_:()=>_,isIndexable:isFunction(j)?j:()=>j}}const readKey=(o,s)=>o?o+_capitalize(s):s,needsSubResolver=(o,s)=>isObject(s)&&o!=="adapters"&&(Object.getPrototypeOf(s)===null||s.constructor===Object);function _cached(o,s,_){if(Object.prototype.hasOwnProperty.call(o,s))return o[s];const j=_();return o[s]=j,j}function _resolveWithContext(o,s,_){const{_proxy:j,_context:$,_subProxy:_e,_descriptors:et}=o;let tt=j[s];return isFunction(tt)&&et.isScriptable(s)&&(tt=_resolveScriptable(s,tt,o,_)),isArray(tt)&&tt.length&&(tt=_resolveArray(s,tt,o,et.isIndexable)),needsSubResolver(s,tt)&&(tt=_attachContext(tt,$,_e&&_e[s],et)),tt}function _resolveScriptable(o,s,_,j){const{_proxy:$,_context:_e,_subProxy:et,_stack:tt}=_;if(tt.has(o))throw new Error("Recursion detected: "+Array.from(tt).join("->")+"->"+o);return tt.add(o),s=s(_e,et||j),tt.delete(o),needsSubResolver(o,s)&&(s=createSubResolver($._scopes,$,o,s)),s}function _resolveArray(o,s,_,j){const{_proxy:$,_context:_e,_subProxy:et,_descriptors:tt}=_;if(defined(_e.index)&&j(o))s=s[_e.index%s.length];else if(isObject(s[0])){const nt=s,rt=$._scopes.filter(it=>it!==nt);s=[];for(const it of nt){const st=createSubResolver(rt,$,o,it);s.push(_attachContext(st,_e,et&&et[o],tt))}}return s}function resolveFallback(o,s,_){return isFunction(o)?o(s,_):o}const getScope=(o,s)=>o===!0?s:typeof o=="string"?resolveObjectKey(s,o):void 0;function addScopes(o,s,_,j,$){for(const _e of s){const et=getScope(_,_e);if(et){o.add(et);const tt=resolveFallback(et._fallback,_,$);if(defined(tt)&&tt!==_&&tt!==j)return tt}else if(et===!1&&defined(j)&&_!==j)return null}return!1}function createSubResolver(o,s,_,j){const $=s._rootScopes,_e=resolveFallback(s._fallback,_,j),et=[...o,...$],tt=new Set;tt.add(j);let nt=addScopesFromKey(tt,et,_,_e||_,j);return nt===null||defined(_e)&&_e!==_&&(nt=addScopesFromKey(tt,et,_e,nt,j),nt===null)?!1:_createResolver(Array.from(tt),[""],$,_e,()=>subGetTarget(s,_,j))}function addScopesFromKey(o,s,_,j,$){for(;_;)_=addScopes(o,s,_,j,$);return _}function subGetTarget(o,s,_){const j=o._getTarget();s in j||(j[s]={});const $=j[s];return isArray($)&&isObject(_)?_:$||{}}function _resolveWithPrefixes(o,s,_,j){let $;for(const _e of s)if($=_resolve(readKey(_e,o),_),defined($))return needsSubResolver(o,$)?createSubResolver(_,j,o,$):$}function _resolve(o,s){for(const _ of s){if(!_)continue;const j=_[o];if(defined(j))return j}}function getKeysFromAllScopes(o){let s=o._keys;return s||(s=o._keys=resolveKeysFromAllScopes(o._scopes)),s}function resolveKeysFromAllScopes(o){const s=new Set;for(const _ of o)for(const j of Object.keys(_).filter($=>!$.startsWith("_")))s.add(j);return Array.from(s)}function _parseObjectDataRadialScale(o,s,_,j){const{iScale:$}=o,{key:_e="r"}=this._parsing,et=new Array(j);let tt,nt,rt,it;for(tt=0,nt=j;ttso==="x"?"y":"x";function splineCurve(o,s,_,j){const $=o.skip?s:o,_e=s,et=_.skip?s:_,tt=distanceBetweenPoints(_e,$),nt=distanceBetweenPoints(et,_e);let rt=tt/(tt+nt),it=nt/(tt+nt);rt=isNaN(rt)?0:rt,it=isNaN(it)?0:it;const st=j*rt,ut=j*it;return{previous:{x:_e.x-st*(et.x-$.x),y:_e.y-st*(et.y-$.y)},next:{x:_e.x+ut*(et.x-$.x),y:_e.y+ut*(et.y-$.y)}}}function monotoneAdjust(o,s,_){const j=o.length;let $,_e,et,tt,nt,rt=getPoint(o,0);for(let it=0;it!rt.skip)),s.cubicInterpolationMode==="monotone")splineCurveMonotone(o,$);else{let rt=j?o[o.length-1]:o[0];for(_e=0,et=o.length;_eo.ownerDocument.defaultView.getComputedStyle(o,null);function getStyle(o,s){return getComputedStyle(o).getPropertyValue(s)}const positions=["top","right","bottom","left"];function getPositionedStyle(o,s,_){const j={};_=_?"-"+_:"";for(let $=0;$<4;$++){const _e=positions[$];j[_e]=parseFloat(o[s+"-"+_e+_])||0}return j.width=j.left+j.right,j.height=j.top+j.bottom,j}const useOffsetPos=(o,s,_)=>(o>0||s>0)&&(!_||!_.shadowRoot);function getCanvasPosition(o,s){const _=o.touches,j=_&&_.length?_[0]:o,{offsetX:$,offsetY:_e}=j;let et=!1,tt,nt;if(useOffsetPos($,_e,o.target))tt=$,nt=_e;else{const rt=s.getBoundingClientRect();tt=j.clientX-rt.left,nt=j.clientY-rt.top,et=!0}return{x:tt,y:nt,box:et}}function getRelativePosition(o,s){if("native"in o)return o;const{canvas:_,currentDevicePixelRatio:j}=s,$=getComputedStyle(_),_e=$.boxSizing==="border-box",et=getPositionedStyle($,"padding"),tt=getPositionedStyle($,"border","width"),{x:nt,y:rt,box:it}=getCanvasPosition(o,_),st=et.left+(it&&tt.left),ut=et.top+(it&&tt.top);let{width:Ft,height:dt}=s;return _e&&(Ft-=et.width+tt.width,dt-=et.height+tt.height),{x:Math.round((nt-st)/Ft*_.width/j),y:Math.round((rt-ut)/dt*_.height/j)}}function getContainerSize(o,s,_){let j,$;if(s===void 0||_===void 0){const _e=_getParentNode(o);if(!_e)s=o.clientWidth,_=o.clientHeight;else{const et=_e.getBoundingClientRect(),tt=getComputedStyle(_e),nt=getPositionedStyle(tt,"border","width"),rt=getPositionedStyle(tt,"padding");s=et.width-rt.width-nt.width,_=et.height-rt.height-nt.height,j=parseMaxStyle(tt.maxWidth,_e,"clientWidth"),$=parseMaxStyle(tt.maxHeight,_e,"clientHeight")}}return{width:s,height:_,maxWidth:j||INFINITY,maxHeight:$||INFINITY}}const round1=o=>Math.round(o*10)/10;function getMaximumSize(o,s,_,j){const $=getComputedStyle(o),_e=getPositionedStyle($,"margin"),et=parseMaxStyle($.maxWidth,o,"clientWidth")||INFINITY,tt=parseMaxStyle($.maxHeight,o,"clientHeight")||INFINITY,nt=getContainerSize(o,s,_);let{width:rt,height:it}=nt;if($.boxSizing==="content-box"){const ut=getPositionedStyle($,"border","width"),Ft=getPositionedStyle($,"padding");rt-=Ft.width+ut.width,it-=Ft.height+ut.height}return rt=Math.max(0,rt-_e.width),it=Math.max(0,j?rt/j:it-_e.height),rt=round1(Math.min(rt,et,nt.maxWidth)),it=round1(Math.min(it,tt,nt.maxHeight)),rt&&!it&&(it=round1(rt/2)),(s!==void 0||_!==void 0)&&j&&nt.height&&it>nt.height&&(it=nt.height,rt=round1(Math.floor(it*j))),{width:rt,height:it}}function retinaScale(o,s,_){const j=s||1,$=Math.floor(o.height*j),_e=Math.floor(o.width*j);o.height=Math.floor(o.height),o.width=Math.floor(o.width);const et=o.canvas;return et.style&&(_||!et.style.height&&!et.style.width)&&(et.style.height=`${o.height}px`,et.style.width=`${o.width}px`),o.currentDevicePixelRatio!==j||et.height!==$||et.width!==_e?(o.currentDevicePixelRatio=j,et.height=$,et.width=_e,o.ctx.setTransform(j,0,0,j,0,0),!0):!1}const supportsEventListenerOptions=function(){let o=!1;try{const s={get passive(){return o=!0,!1}};window.addEventListener("test",null,s),window.removeEventListener("test",null,s)}catch{}return o}();function readUsedSize(o,s){const _=getStyle(o,s),j=_&&_.match(/^(\d+)(\.\d+)?px$/);return j?+j[1]:void 0}function _pointInLine(o,s,_,j){return{x:o.x+_*(s.x-o.x),y:o.y+_*(s.y-o.y)}}function _steppedInterpolation(o,s,_,j){return{x:o.x+_*(s.x-o.x),y:j==="middle"?_<.5?o.y:s.y:j==="after"?_<1?o.y:s.y:_>0?s.y:o.y}}function _bezierInterpolation(o,s,_,j){const $={x:o.cp2x,y:o.cp2y},_e={x:s.cp1x,y:s.cp1y},et=_pointInLine(o,$,_),tt=_pointInLine($,_e,_),nt=_pointInLine(_e,s,_),rt=_pointInLine(et,tt,_),it=_pointInLine(tt,nt,_);return _pointInLine(rt,it,_)}const getRightToLeftAdapter=function(o,s){return{x(_){return o+o+s-_},setWidth(_){s=_},textAlign(_){return _==="center"?_:_==="right"?"left":"right"},xPlus(_,j){return _-j},leftForLtr(_,j){return _-j}}},getLeftToRightAdapter=function(){return{x(o){return o},setWidth(o){},textAlign(o){return o},xPlus(o,s){return o+s},leftForLtr(o,s){return o}}};function getRtlAdapter(o,s,_){return o?getRightToLeftAdapter(s,_):getLeftToRightAdapter()}function overrideTextDirection(o,s){let _,j;(s==="ltr"||s==="rtl")&&(_=o.canvas.style,j=[_.getPropertyValue("direction"),_.getPropertyPriority("direction")],_.setProperty("direction",s,"important"),o.prevTextDirection=j)}function restoreTextDirection(o,s){s!==void 0&&(delete o.prevTextDirection,o.canvas.style.setProperty("direction",s[0],s[1]))}function propertyFn(o){return o==="angle"?{between:_angleBetween,compare:_angleDiff,normalize:_normalizeAngle}:{between:_isBetween,compare:(s,_)=>s-_,normalize:s=>s}}function normalizeSegment({start:o,end:s,count:_,loop:j,style:$}){return{start:o%_,end:s%_,loop:j&&(s-o+1)%_===0,style:$}}function getSegment(o,s,_){const{property:j,start:$,end:_e}=_,{between:et,normalize:tt}=propertyFn(j),nt=s.length;let{start:rt,end:it,loop:st}=o,ut,Ft;if(st){for(rt+=nt,it+=nt,ut=0,Ft=nt;utnt($,pt,ht)&&tt($,pt)!==0,Qt=()=>tt(_e,ht)===0||nt(_e,pt,ht),Nt=()=>gt||Rt(),At=()=>!gt||Qt();for(let kt=it,Bt=it;kt<=st;++kt)ft=s[kt%et],!ft.skip&&(ht=rt(ft[j]),ht!==pt&&(gt=nt(ht,$,_e),Ut===null&&Nt()&&(Ut=tt(ht,$)===0?kt:Bt),Ut!==null&&At()&&(dt.push(normalizeSegment({start:Ut,end:kt,loop:ut,count:et,style:Ft})),Ut=null),Bt=kt,pt=ht));return Ut!==null&&dt.push(normalizeSegment({start:Ut,end:st,loop:ut,count:et,style:Ft})),dt}function _boundSegments(o,s){const _=[],j=o.segments;for(let $=0;$$&&o[_e%s].skip;)_e--;return _e%=s,{start:$,end:_e}}function solidSegments(o,s,_,j){const $=o.length,_e=[];let et=s,tt=o[s],nt;for(nt=s+1;nt<=_;++nt){const rt=o[nt%$];rt.skip||rt.stop?tt.skip||(j=!1,_e.push({start:s%$,end:(nt-1)%$,loop:j}),s=et=rt.stop?nt:null):(et=nt,tt.skip&&(s=nt)),tt=rt}return et!==null&&_e.push({start:s%$,end:et%$,loop:j}),_e}function _computeSegments(o,s){const _=o.points,j=o.options.spanGaps,$=_.length;if(!$)return[];const _e=!!o._loop,{start:et,end:tt}=findStartAndEnd(_,$,_e,j);if(j===!0)return splitByStyles(o,[{start:et,end:tt,loop:_e}],_,s);const nt=tttt({chart:s,initial:_.initial,numSteps:et,currentStep:Math.min(j-_.start,et)}))}_refresh(){this._request||(this._running=!0,this._request=requestAnimFrame.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(s=Date.now()){let _=0;this._charts.forEach((j,$)=>{if(!j.running||!j.items.length)return;const _e=j.items;let et=_e.length-1,tt=!1,nt;for(;et>=0;--et)nt=_e[et],nt._active?(nt._total>j.duration&&(j.duration=nt._total),nt.tick(s),tt=!0):(_e[et]=_e[_e.length-1],_e.pop());tt&&($.draw(),this._notify($,j,s,"progress")),_e.length||(j.running=!1,this._notify($,j,s,"complete"),j.initial=!1),_+=_e.length}),this._lastDate=s,_===0&&(this._running=!1)}_getAnims(s){const _=this._charts;let j=_.get(s);return j||(j={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},_.set(s,j)),j}listen(s,_,j){this._getAnims(s).listeners[_].push(j)}add(s,_){!_||!_.length||this._getAnims(s).items.push(..._)}has(s){return this._getAnims(s).items.length>0}start(s){const _=this._charts.get(s);_&&(_.running=!0,_.start=Date.now(),_.duration=_.items.reduce((j,$)=>Math.max(j,$._duration),0),this._refresh())}running(s){if(!this._running)return!1;const _=this._charts.get(s);return!(!_||!_.running||!_.items.length)}stop(s){const _=this._charts.get(s);if(!_||!_.items.length)return;const j=_.items;let $=j.length-1;for(;$>=0;--$)j[$].cancel();_.items=[],this._notify(s,_,Date.now(),"complete")}remove(s){return this._charts.delete(s)}}var animator=new Animator;const transparent="transparent",interpolators={boolean(o,s,_){return _>.5?s:o},color(o,s,_){const j=color(o||transparent),$=j.valid&&color(s||transparent);return $&&$.valid?$.mix(j,_).hexString():s},number(o,s,_){return o+(s-o)*_}};class Animation{constructor(s,_,j,$){const _e=_[j];$=resolve([s.to,$,_e,s.from]);const et=resolve([s.from,_e,$]);this._active=!0,this._fn=s.fn||interpolators[s.type||typeof et],this._easing=effects[s.easing]||effects.linear,this._start=Math.floor(Date.now()+(s.delay||0)),this._duration=this._total=Math.floor(s.duration),this._loop=!!s.loop,this._target=_,this._prop=j,this._from=et,this._to=$,this._promises=void 0}active(){return this._active}update(s,_,j){if(this._active){this._notify(!1);const $=this._target[this._prop],_e=j-this._start,et=this._duration-_e;this._start=j,this._duration=Math.floor(Math.max(et,s.duration)),this._total+=_e,this._loop=!!s.loop,this._to=resolve([s.to,_,$,s.from]),this._from=resolve([s.from,$,_])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(s){const _=s-this._start,j=this._duration,$=this._prop,_e=this._from,et=this._loop,tt=this._to;let nt;if(this._active=_e!==tt&&(et||_1?2-nt:nt,nt=this._easing(Math.min(1,Math.max(0,nt))),this._target[$]=this._fn(_e,tt,nt)}wait(){const s=this._promises||(this._promises=[]);return new Promise((_,j)=>{s.push({res:_,rej:j})})}_notify(s){const _=s?"res":"rej",j=this._promises||[];for(let $=0;${const _e=s[$];if(!isObject(_e))return;const et={};for(const tt of _)et[tt]=_e[tt];(isArray(_e.properties)&&_e.properties||[$]).forEach(tt=>{(tt===$||!j.has(tt))&&j.set(tt,et)})})}_animateOptions(s,_){const j=_.options,$=resolveTargetOptions(s,j);if(!$)return[];const _e=this._createAnimations($,j);return j.$shared&&awaitAll(s.options.$animations,j).then(()=>{s.options=j},()=>{}),_e}_createAnimations(s,_){const j=this._properties,$=[],_e=s.$animations||(s.$animations={}),et=Object.keys(_),tt=Date.now();let nt;for(nt=et.length-1;nt>=0;--nt){const rt=et[nt];if(rt.charAt(0)==="$")continue;if(rt==="options"){$.push(...this._animateOptions(s,_));continue}const it=_[rt];let st=_e[rt];const ut=j.get(rt);if(st)if(ut&&st.active()){st.update(ut,it,tt);continue}else st.cancel();if(!ut||!ut.duration){s[rt]=it;continue}_e[rt]=st=new Animation(ut,s,rt,it),$.push(st)}return $}update(s,_){if(this._properties.size===0){Object.assign(s,_);return}const j=this._createAnimations(s,_);if(j.length)return animator.add(this._chart,j),!0}}function awaitAll(o,s){const _=[],j=Object.keys(s);for(let $=0;$0||!_&&_e<0)return $.index}return null}function updateStacks(o,s){const{chart:_,_cachedMeta:j}=o,$=_._stacks||(_._stacks={}),{iScale:_e,vScale:et,index:tt}=j,nt=_e.axis,rt=et.axis,it=getStackKey(_e,et,j),st=s.length;let ut;for(let Ft=0;Ft_[j].axis===s).shift()}function createDatasetContext(o,s){return createContext(o,{active:!1,dataset:void 0,datasetIndex:s,index:s,mode:"default",type:"dataset"})}function createDataContext(o,s,_){return createContext(o,{active:!1,dataIndex:s,parsed:void 0,raw:void 0,element:_,index:s,mode:"default",type:"data"})}function clearStacks(o,s){const _=o.controller.index,j=o.vScale&&o.vScale.axis;if(j){s=s||o._parsed;for(const $ of s){const _e=$._stacks;if(!_e||_e[j]===void 0||_e[j][_]===void 0)return;delete _e[j][_],_e[j]._visualValues!==void 0&&_e[j]._visualValues[_]!==void 0&&delete _e[j]._visualValues[_]}}}const isDirectUpdateMode=o=>o==="reset"||o==="none",cloneIfNotShared=(o,s)=>s?o:Object.assign({},o),createStack=(o,s,_)=>o&&!s.hidden&&s._stacked&&{keys:getSortedDatasetIndices(_,!0),values:null};class DatasetController{constructor(s,_){this.chart=s,this._ctx=s.ctx,this.index=_,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const s=this._cachedMeta;this.configure(),this.linkScales(),s._stacked=isStacked(s.vScale,s),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(s){this.index!==s&&clearStacks(this._cachedMeta),this.index=s}linkScales(){const s=this.chart,_=this._cachedMeta,j=this.getDataset(),$=(st,ut,Ft,dt)=>st==="x"?ut:st==="r"?dt:Ft,_e=_.xAxisID=valueOrDefault(j.xAxisID,getFirstScaleId(s,"x")),et=_.yAxisID=valueOrDefault(j.yAxisID,getFirstScaleId(s,"y")),tt=_.rAxisID=valueOrDefault(j.rAxisID,getFirstScaleId(s,"r")),nt=_.indexAxis,rt=_.iAxisID=$(nt,_e,et,tt),it=_.vAxisID=$(nt,et,_e,tt);_.xScale=this.getScaleForId(_e),_.yScale=this.getScaleForId(et),_.rScale=this.getScaleForId(tt),_.iScale=this.getScaleForId(rt),_.vScale=this.getScaleForId(it)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(s){return this.chart.scales[s]}_getOtherScale(s){const _=this._cachedMeta;return s===_.iScale?_.vScale:_.iScale}reset(){this._update("reset")}_destroy(){const s=this._cachedMeta;this._data&&unlistenArrayEvents(this._data,this),s._stacked&&clearStacks(s)}_dataCheck(){const s=this.getDataset(),_=s.data||(s.data=[]),j=this._data;if(isObject(_))this._data=convertObjectDataToArray(_);else if(j!==_){if(j){unlistenArrayEvents(j,this);const $=this._cachedMeta;clearStacks($),$._parsed=[]}_&&Object.isExtensible(_)&&listenArrayEvents(_,this),this._syncList=[],this._data=_}}addElements(){const s=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(s.dataset=new this.datasetElementType)}buildOrUpdateElements(s){const _=this._cachedMeta,j=this.getDataset();let $=!1;this._dataCheck();const _e=_._stacked;_._stacked=isStacked(_.vScale,_),_.stack!==j.stack&&($=!0,clearStacks(_),_.stack=j.stack),this._resyncElements(s),($||_e!==_._stacked)&&updateStacks(this,_._parsed)}configure(){const s=this.chart.config,_=s.datasetScopeKeys(this._type),j=s.getOptionScopes(this.getDataset(),_,!0);this.options=s.createResolver(j,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(s,_){const{_cachedMeta:j,_data:$}=this,{iScale:_e,_stacked:et}=j,tt=_e.axis;let nt=s===0&&_===$.length?!0:j._sorted,rt=s>0&&j._parsed[s-1],it,st,ut;if(this._parsing===!1)j._parsed=$,j._sorted=!0,ut=$;else{isArray($[s])?ut=this.parseArrayData(j,$,s,_):isObject($[s])?ut=this.parseObjectData(j,$,s,_):ut=this.parsePrimitiveData(j,$,s,_);const Ft=()=>st[tt]===null||rt&&st[tt]gt||st=0;--ut)if(!dt()){this.updateRangeFromParsed(rt,s,Ft,nt);break}}return rt}getAllParsedValues(s){const _=this._cachedMeta._parsed,j=[];let $,_e,et;for($=0,_e=_.length;$<_e;++$)et=_[$][s.axis],isNumberFinite(et)&&j.push(et);return j}getMaxOverflow(){return!1}getLabelAndValue(s){const _=this._cachedMeta,j=_.iScale,$=_.vScale,_e=this.getParsed(s);return{label:j?""+j.getLabelForValue(_e[j.axis]):"",value:$?""+$.getLabelForValue(_e[$.axis]):""}}_update(s){const _=this._cachedMeta;this.update(s||"default"),_._clip=toClip(valueOrDefault(this.options.clip,defaultClip(_.xScale,_.yScale,this.getMaxOverflow())))}update(s){}draw(){const s=this._ctx,_=this.chart,j=this._cachedMeta,$=j.data||[],_e=_.chartArea,et=[],tt=this._drawStart||0,nt=this._drawCount||$.length-tt,rt=this.options.drawActiveElementsOnTop;let it;for(j.dataset&&j.dataset.draw(s,_e,tt,nt),it=tt;it=0&&sthis.getContext(j,$,_),gt=rt.resolveNamedOptions(ut,Ft,dt,st);return gt.$shared&&(gt.$shared=nt,_e[et]=Object.freeze(cloneIfNotShared(gt,nt))),gt}_resolveAnimations(s,_,j){const $=this.chart,_e=this._cachedDataOpts,et=`animation-${_}`,tt=_e[et];if(tt)return tt;let nt;if($.options.animation!==!1){const it=this.chart.config,st=it.datasetAnimationScopeKeys(this._type,_),ut=it.getOptionScopes(this.getDataset(),st);nt=it.createResolver(ut,this.getContext(s,j,_))}const rt=new Animations($,nt&&nt.animations);return nt&&nt._cacheable&&(_e[et]=Object.freeze(rt)),rt}getSharedOptions(s){if(s.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},s))}includeOptions(s,_){return!_||isDirectUpdateMode(s)||this.chart._animationsDisabled}_getSharedOptions(s,_){const j=this.resolveDataElementOptions(s,_),$=this._sharedOptions,_e=this.getSharedOptions(j),et=this.includeOptions(_,_e)||_e!==$;return this.updateSharedOptions(_e,_,j),{sharedOptions:_e,includeOptions:et}}updateElement(s,_,j,$){isDirectUpdateMode($)?Object.assign(s,j):this._resolveAnimations(_,$).update(s,j)}updateSharedOptions(s,_,j){s&&!isDirectUpdateMode(_)&&this._resolveAnimations(void 0,_).update(s,j)}_setStyle(s,_,j,$){s.active=$;const _e=this.getStyle(_,$);this._resolveAnimations(_,j,$).update(s,{options:!$&&this.getSharedOptions(_e)||_e})}removeHoverStyle(s,_,j){this._setStyle(s,j,"active",!1)}setHoverStyle(s,_,j){this._setStyle(s,j,"active",!0)}_removeDatasetHoverStyle(){const s=this._cachedMeta.dataset;s&&this._setStyle(s,void 0,"active",!1)}_setDatasetHoverStyle(){const s=this._cachedMeta.dataset;s&&this._setStyle(s,void 0,"active",!0)}_resyncElements(s){const _=this._data,j=this._cachedMeta.data;for(const[tt,nt,rt]of this._syncList)this[tt](nt,rt);this._syncList=[];const $=j.length,_e=_.length,et=Math.min(_e,$);et&&this.parse(0,et),_e>$?this._insertElements($,_e-$,s):_e<$&&this._removeElements(_e,$-_e)}_insertElements(s,_,j=!0){const $=this._cachedMeta,_e=$.data,et=s+_;let tt;const nt=rt=>{for(rt.length+=_,tt=rt.length-1;tt>=et;tt--)rt[tt]=rt[tt-_]};for(nt(_e),tt=s;tt$-_e))}return o._cache.$bar}function computeMinSampleSize(o){const s=o.iScale,_=getAllScaleValues(s,o.type);let j=s._length,$,_e,et,tt;const nt=()=>{et===32767||et===-32768||(defined(tt)&&(j=Math.min(j,Math.abs(et-tt)||j)),tt=et)};for($=0,_e=_.length;$<_e;++$)et=s.getPixelForValue(_[$]),nt();for(tt=void 0,$=0,_e=s.ticks.length;$<_e;++$)et=s.getPixelForTick($),nt();return j}function computeFitCategoryTraits(o,s,_,j){const $=_.barThickness;let _e,et;return isNullOrUndef($)?(_e=s.min*_.categoryPercentage,et=_.barPercentage):(_e=$*j,et=1),{chunk:_e/j,ratio:et,start:s.pixels[o]-_e/2}}function computeFlexCategoryTraits(o,s,_,j){const $=s.pixels,_e=$[o];let et=o>0?$[o-1]:null,tt=o<$.length-1?$[o+1]:null;const nt=_.categoryPercentage;et===null&&(et=_e-(tt===null?s.end-s.start:tt-_e)),tt===null&&(tt=_e+_e-et);const rt=_e-(_e-Math.min(et,tt))/2*nt;return{chunk:Math.abs(tt-et)/2*nt/j,ratio:_.barPercentage,start:rt}}function parseFloatBar(o,s,_,j){const $=_.parse(o[0],j),_e=_.parse(o[1],j),et=Math.min($,_e),tt=Math.max($,_e);let nt=et,rt=tt;Math.abs(et)>Math.abs(tt)&&(nt=tt,rt=et),s[_.axis]=rt,s._custom={barStart:nt,barEnd:rt,start:$,end:_e,min:et,max:tt}}function parseValue(o,s,_,j){return isArray(o)?parseFloatBar(o,s,_,j):s[_.axis]=_.parse(o,j),s}function parseArrayOrPrimitive(o,s,_,j){const $=o.iScale,_e=o.vScale,et=$.getLabels(),tt=$===_e,nt=[];let rt,it,st,ut;for(rt=_,it=_+j;rt=_?1:-1)}function borderProps(o){let s,_,j,$,_e;return o.horizontal?(s=o.base>o.x,_="left",j="right"):(s=o.basent.controller.options.grouped),_e=j.options.stacked,et=[],tt=nt=>{const rt=nt.controller.getParsed(_),it=rt&&rt[nt.vScale.axis];if(isNullOrUndef(it)||isNaN(it))return!0};for(const nt of $)if(!(_!==void 0&&tt(nt))&&((_e===!1||et.indexOf(nt.stack)===-1||_e===void 0&&nt.stack===void 0)&&et.push(nt.stack),nt.index===s))break;return et.length||et.push(void 0),et}_getStackCount(s){return this._getStacks(void 0,s).length}_getStackIndex(s,_,j){const $=this._getStacks(s,j),_e=_!==void 0?$.indexOf(_):-1;return _e===-1?$.length-1:_e}_getRuler(){const s=this.options,_=this._cachedMeta,j=_.iScale,$=[];let _e,et;for(_e=0,et=_.data.length;_e=0;--j)_=Math.max(_,s[j].size(this.resolveDataElementOptions(j))/2);return _>0&&_}getLabelAndValue(s){const _=this._cachedMeta,j=this.chart.data.labels||[],{xScale:$,yScale:_e}=_,et=this.getParsed(s),tt=$.getLabelForValue(et.x),nt=_e.getLabelForValue(et.y),rt=et._custom;return{label:j[s]||"",value:"("+tt+", "+nt+(rt?", "+rt:"")+")"}}update(s){const _=this._cachedMeta.data;this.updateElements(_,0,_.length,s)}updateElements(s,_,j,$){const _e=$==="reset",{iScale:et,vScale:tt}=this._cachedMeta,{sharedOptions:nt,includeOptions:rt}=this._getSharedOptions(_,$),it=et.axis,st=tt.axis;for(let ut=_;ut<_+j;ut++){const Ft=s[ut],dt=!_e&&this.getParsed(ut),gt={},Ut=gt[it]=_e?et.getPixelForDecimal(.5):et.getPixelForValue(dt[it]),ht=gt[st]=_e?tt.getBasePixel():tt.getPixelForValue(dt[st]);gt.skip=isNaN(Ut)||isNaN(ht),rt&&(gt.options=nt||this.resolveDataElementOptions(ut,Ft.active?"active":$),_e&&(gt.options.radius=0)),this.updateElement(Ft,ut,gt,$)}}resolveDataElementOptions(s,_){const j=this.getParsed(s);let $=super.resolveDataElementOptions(s,_);$.$shared&&($=Object.assign({},$,{$shared:!1}));const _e=$.radius;return _!=="active"&&($.radius=0),$.radius+=valueOrDefault(j&&j._custom,_e),$}}Xn(BubbleController,"id","bubble"),Xn(BubbleController,"defaults",{datasetElementType:!1,dataElementType:"point",animations:{numbers:{type:"number",properties:["x","y","borderWidth","radius"]}}}),Xn(BubbleController,"overrides",{scales:{x:{type:"linear"},y:{type:"linear"}}});function getRatioAndOffset(o,s,_){let j=1,$=1,_e=0,et=0;if(s_angleBetween(pt,tt,nt,!0)?1:Math.max(Rt,Rt*_,Qt,Qt*_),dt=(pt,Rt,Qt)=>_angleBetween(pt,tt,nt,!0)?-1:Math.min(Rt,Rt*_,Qt,Qt*_),gt=Ft(0,rt,st),Ut=Ft(HALF_PI,it,ut),ht=dt(PI,rt,st),ft=dt(PI+HALF_PI,it,ut);j=(gt-ht)/2,$=(Ut-ft)/2,_e=-(gt+ht)/2,et=-(Ut+ft)/2}return{ratioX:j,ratioY:$,offsetX:_e,offsetY:et}}class DoughnutController extends DatasetController{constructor(s,_){super(s,_),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(s,_){const j=this.getDataset().data,$=this._cachedMeta;if(this._parsing===!1)$._parsed=j;else{let _e=nt=>+j[nt];if(isObject(j[s])){const{key:nt="value"}=this._parsing;_e=rt=>+resolveObjectKey(j[rt],nt)}let et,tt;for(et=s,tt=s+_;et0&&!isNaN(s)?TAU*(Math.abs(s)/_):0}getLabelAndValue(s){const _=this._cachedMeta,j=this.chart,$=j.data.labels||[],_e=formatNumber(_._parsed[s],j.options.locale);return{label:$[s]||"",value:_e}}getMaxBorderWidth(s){let _=0;const j=this.chart;let $,_e,et,tt,nt;if(!s){for($=0,_e=j.data.datasets.length;$<_e;++$)if(j.isDatasetVisible($)){et=j.getDatasetMeta($),s=et.data,tt=et.controller;break}}if(!s)return 0;for($=0,_e=s.length;$<_e;++$)nt=tt.resolveDataElementOptions($),nt.borderAlign!=="inner"&&(_=Math.max(_,nt.borderWidth||0,nt.hoverBorderWidth||0));return _}getMaxOffset(s){let _=0;for(let j=0,$=s.length;j<$;++j){const _e=this.resolveDataElementOptions(j);_=Math.max(_,_e.offset||0,_e.hoverOffset||0)}return _}_getRingWeightOffset(s){let _=0;for(let j=0;js!=="spacing",_indexable:s=>s!=="spacing"}),Xn(DoughnutController,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(s){const _=s.data;if(_.labels.length&&_.datasets.length){const{labels:{pointStyle:j,color:$}}=s.legend.options;return _.labels.map((_e,et)=>{const nt=s.getDatasetMeta(0).controller.getStyle(et);return{text:_e,fillStyle:nt.backgroundColor,strokeStyle:nt.borderColor,fontColor:$,lineWidth:nt.borderWidth,pointStyle:j,hidden:!s.getDataVisibility(et),index:et}})}return[]}},onClick(s,_,j){j.chart.toggleDataVisibility(_.index),j.chart.update()}}}});class LineController extends DatasetController{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(s){const _=this._cachedMeta,{dataset:j,data:$=[],_dataset:_e}=_,et=this.chart._animationsDisabled;let{start:tt,count:nt}=_getStartAndCountOfVisiblePoints(_,$,et);this._drawStart=tt,this._drawCount=nt,_scaleRangesChanged(_)&&(tt=0,nt=$.length),j._chart=this.chart,j._datasetIndex=this.index,j._decimated=!!_e._decimated,j.points=$;const rt=this.resolveDatasetElementOptions(s);this.options.showLine||(rt.borderWidth=0),rt.segment=this.options.segment,this.updateElement(j,void 0,{animated:!et,options:rt},s),this.updateElements($,tt,nt,s)}updateElements(s,_,j,$){const _e=$==="reset",{iScale:et,vScale:tt,_stacked:nt,_dataset:rt}=this._cachedMeta,{sharedOptions:it,includeOptions:st}=this._getSharedOptions(_,$),ut=et.axis,Ft=tt.axis,{spanGaps:dt,segment:gt}=this.options,Ut=isNumber(dt)?dt:Number.POSITIVE_INFINITY,ht=this.chart._animationsDisabled||_e||$==="none",ft=_+j,pt=s.length;let Rt=_>0&&this.getParsed(_-1);for(let Qt=0;Qt=ft){At.skip=!0;continue}const kt=this.getParsed(Qt),Bt=isNullOrUndef(kt[Ft]),jt=At[ut]=et.getPixelForValue(kt[ut],Qt),vt=At[Ft]=_e||Bt?tt.getBasePixel():tt.getPixelForValue(nt?this.applyStack(tt,kt,nt):kt[Ft],Qt);At.skip=isNaN(jt)||isNaN(vt)||Bt,At.stop=Qt>0&&Math.abs(kt[ut]-Rt[ut])>Ut,gt&&(At.parsed=kt,At.raw=rt.data[Qt]),st&&(At.options=it||this.resolveDataElementOptions(Qt,Nt.active?"active":$)),ht||this.updateElement(Nt,Qt,At,$),Rt=kt}}getMaxOverflow(){const s=this._cachedMeta,_=s.dataset,j=_.options&&_.options.borderWidth||0,$=s.data||[];if(!$.length)return j;const _e=$[0].size(this.resolveDataElementOptions(0)),et=$[$.length-1].size(this.resolveDataElementOptions($.length-1));return Math.max(j,_e,et)/2}draw(){const s=this._cachedMeta;s.dataset.updateControlPoints(this.chart.chartArea,s.iScale.axis),super.draw()}}Xn(LineController,"id","line"),Xn(LineController,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),Xn(LineController,"overrides",{scales:{_index_:{type:"category"},_value_:{type:"linear"}}});class PolarAreaController extends DatasetController{constructor(s,_){super(s,_),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(s){const _=this._cachedMeta,j=this.chart,$=j.data.labels||[],_e=formatNumber(_._parsed[s].r,j.options.locale);return{label:$[s]||"",value:_e}}parseObjectData(s,_,j,$){return _parseObjectDataRadialScale.bind(this)(s,_,j,$)}update(s){const _=this._cachedMeta.data;this._updateRadius(),this.updateElements(_,0,_.length,s)}getMinMax(){const s=this._cachedMeta,_={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return s.data.forEach((j,$)=>{const _e=this.getParsed($).r;!isNaN(_e)&&this.chart.getDataVisibility($)&&(_e<_.min&&(_.min=_e),_e>_.max&&(_.max=_e))}),_}_updateRadius(){const s=this.chart,_=s.chartArea,j=s.options,$=Math.min(_.right-_.left,_.bottom-_.top),_e=Math.max($/2,0),et=Math.max(j.cutoutPercentage?_e/100*j.cutoutPercentage:1,0),tt=(_e-et)/s.getVisibleDatasetCount();this.outerRadius=_e-tt*this.index,this.innerRadius=this.outerRadius-tt}updateElements(s,_,j,$){const _e=$==="reset",et=this.chart,nt=et.options.animation,rt=this._cachedMeta.rScale,it=rt.xCenter,st=rt.yCenter,ut=rt.getIndexAngle(0)-.5*PI;let Ft=ut,dt;const gt=360/this.countVisibleElements();for(dt=0;dt<_;++dt)Ft+=this._computeAngle(dt,$,gt);for(dt=_;dt<_+j;dt++){const Ut=s[dt];let ht=Ft,ft=Ft+this._computeAngle(dt,$,gt),pt=et.getDataVisibility(dt)?rt.getDistanceFromCenterForValue(this.getParsed(dt).r):0;Ft=ft,_e&&(nt.animateScale&&(pt=0),nt.animateRotate&&(ht=ft=ut));const Rt={x:it,y:st,innerRadius:0,outerRadius:pt,startAngle:ht,endAngle:ft,options:this.resolveDataElementOptions(dt,Ut.active?"active":$)};this.updateElement(Ut,dt,Rt,$)}}countVisibleElements(){const s=this._cachedMeta;let _=0;return s.data.forEach((j,$)=>{!isNaN(this.getParsed($).r)&&this.chart.getDataVisibility($)&&_++}),_}_computeAngle(s,_,j){return this.chart.getDataVisibility(s)?toRadians(this.resolveDataElementOptions(s,_).angle||j):0}}Xn(PolarAreaController,"id","polarArea"),Xn(PolarAreaController,"defaults",{dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0}),Xn(PolarAreaController,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(s){const _=s.data;if(_.labels.length&&_.datasets.length){const{labels:{pointStyle:j,color:$}}=s.legend.options;return _.labels.map((_e,et)=>{const nt=s.getDatasetMeta(0).controller.getStyle(et);return{text:_e,fillStyle:nt.backgroundColor,strokeStyle:nt.borderColor,fontColor:$,lineWidth:nt.borderWidth,pointStyle:j,hidden:!s.getDataVisibility(et),index:et}})}return[]}},onClick(s,_,j){j.chart.toggleDataVisibility(_.index),j.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}});class PieController extends DoughnutController{}Xn(PieController,"id","pie"),Xn(PieController,"defaults",{cutout:0,rotation:0,circumference:360,radius:"100%"});class RadarController extends DatasetController{getLabelAndValue(s){const _=this._cachedMeta.vScale,j=this.getParsed(s);return{label:_.getLabels()[s],value:""+_.getLabelForValue(j[_.axis])}}parseObjectData(s,_,j,$){return _parseObjectDataRadialScale.bind(this)(s,_,j,$)}update(s){const _=this._cachedMeta,j=_.dataset,$=_.data||[],_e=_.iScale.getLabels();if(j.points=$,s!=="resize"){const et=this.resolveDatasetElementOptions(s);this.options.showLine||(et.borderWidth=0);const tt={_loop:!0,_fullLoop:_e.length===$.length,options:et};this.updateElement(j,void 0,tt,s)}this.updateElements($,0,$.length,s)}updateElements(s,_,j,$){const _e=this._cachedMeta.rScale,et=$==="reset";for(let tt=_;tt<_+j;tt++){const nt=s[tt],rt=this.resolveDataElementOptions(tt,nt.active?"active":$),it=_e.getPointPositionForValue(tt,this.getParsed(tt).r),st=et?_e.xCenter:it.x,ut=et?_e.yCenter:it.y,Ft={x:st,y:ut,angle:it.angle,skip:isNaN(st)||isNaN(ut),options:rt};this.updateElement(nt,tt,Ft,$)}}}Xn(RadarController,"id","radar"),Xn(RadarController,"defaults",{datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}}),Xn(RadarController,"overrides",{aspectRatio:1,scales:{r:{type:"radialLinear"}}});class ScatterController extends DatasetController{getLabelAndValue(s){const _=this._cachedMeta,j=this.chart.data.labels||[],{xScale:$,yScale:_e}=_,et=this.getParsed(s),tt=$.getLabelForValue(et.x),nt=_e.getLabelForValue(et.y);return{label:j[s]||"",value:"("+tt+", "+nt+")"}}update(s){const _=this._cachedMeta,{data:j=[]}=_,$=this.chart._animationsDisabled;let{start:_e,count:et}=_getStartAndCountOfVisiblePoints(_,j,$);if(this._drawStart=_e,this._drawCount=et,_scaleRangesChanged(_)&&(_e=0,et=j.length),this.options.showLine){const{dataset:tt,_dataset:nt}=_;tt._chart=this.chart,tt._datasetIndex=this.index,tt._decimated=!!nt._decimated,tt.points=j;const rt=this.resolveDatasetElementOptions(s);rt.segment=this.options.segment,this.updateElement(tt,void 0,{animated:!$,options:rt},s)}this.updateElements(j,_e,et,s)}addElements(){const{showLine:s}=this.options;!this.datasetElementType&&s&&(this.datasetElementType=this.chart.registry.getElement("line")),super.addElements()}updateElements(s,_,j,$){const _e=$==="reset",{iScale:et,vScale:tt,_stacked:nt,_dataset:rt}=this._cachedMeta,it=this.resolveDataElementOptions(_,$),st=this.getSharedOptions(it),ut=this.includeOptions($,st),Ft=et.axis,dt=tt.axis,{spanGaps:gt,segment:Ut}=this.options,ht=isNumber(gt)?gt:Number.POSITIVE_INFINITY,ft=this.chart._animationsDisabled||_e||$==="none";let pt=_>0&&this.getParsed(_-1);for(let Rt=_;Rt<_+j;++Rt){const Qt=s[Rt],Nt=this.getParsed(Rt),At=ft?Qt:{},kt=isNullOrUndef(Nt[dt]),Bt=At[Ft]=et.getPixelForValue(Nt[Ft],Rt),jt=At[dt]=_e||kt?tt.getBasePixel():tt.getPixelForValue(nt?this.applyStack(tt,Nt,nt):Nt[dt],Rt);At.skip=isNaN(Bt)||isNaN(jt)||kt,At.stop=Rt>0&&Math.abs(Nt[Ft]-pt[Ft])>ht,Ut&&(At.parsed=Nt,At.raw=rt.data[Rt]),ut&&(At.options=st||this.resolveDataElementOptions(Rt,Qt.active?"active":$)),ft||this.updateElement(Qt,Rt,At,$),pt=Nt}this.updateSharedOptions(st,$,it)}getMaxOverflow(){const s=this._cachedMeta,_=s.data||[];if(!this.options.showLine){let tt=0;for(let nt=_.length-1;nt>=0;--nt)tt=Math.max(tt,_[nt].size(this.resolveDataElementOptions(nt))/2);return tt>0&&tt}const j=s.dataset,$=j.options&&j.options.borderWidth||0;if(!_.length)return $;const _e=_[0].size(this.resolveDataElementOptions(0)),et=_[_.length-1].size(this.resolveDataElementOptions(_.length-1));return Math.max($,_e,et)/2}}Xn(ScatterController,"id","scatter"),Xn(ScatterController,"defaults",{datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1}),Xn(ScatterController,"overrides",{interaction:{mode:"point"},scales:{x:{type:"linear"},y:{type:"linear"}}});var controllers=Object.freeze({__proto__:null,BarController,BubbleController,DoughnutController,LineController,PolarAreaController,PieController,RadarController,ScatterController});function abstract(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class DateAdapterBase{static override(s){Object.assign(DateAdapterBase.prototype,s)}constructor(s){this.options=s||{}}init(){}formats(){return abstract()}parse(){return abstract()}format(){return abstract()}add(){return abstract()}diff(){return abstract()}startOf(){return abstract()}endOf(){return abstract()}}var adapters={_date:DateAdapterBase};function binarySearch(o,s,_,j){const{controller:$,data:_e,_sorted:et}=o,tt=$._cachedMeta.iScale;if(tt&&s===tt.axis&&s!=="r"&&et&&_e.length){const nt=tt._reversePixels?_rlookupByKey:_lookupByKey;if(j){if($._sharedOptions){const rt=_e[0],it=typeof rt.getRange=="function"&&rt.getRange(s);if(it){const st=nt(_e,s,_-it),ut=nt(_e,s,_+it);return{lo:st.lo,hi:ut.hi}}}}else return nt(_e,s,_)}return{lo:0,hi:_e.length-1}}function evaluateInteractionItems(o,s,_,j,$){const _e=o.getSortedVisibleDatasetMetas(),et=_[s];for(let tt=0,nt=_e.length;tt{nt[et](s[_],$)&&(_e.push({element:nt,datasetIndex:rt,index:it}),tt=tt||nt.inRange(s.x,s.y,$))}),j&&!tt?[]:_e}var Interaction={evaluateInteractionItems,modes:{index(o,s,_,j){const $=getRelativePosition(s,o),_e=_.axis||"x",et=_.includeInvisible||!1,tt=_.intersect?getIntersectItems(o,$,_e,j,et):getNearestItems(o,$,_e,!1,j,et),nt=[];return tt.length?(o.getSortedVisibleDatasetMetas().forEach(rt=>{const it=tt[0].index,st=rt.data[it];st&&!st.skip&&nt.push({element:st,datasetIndex:rt.index,index:it})}),nt):[]},dataset(o,s,_,j){const $=getRelativePosition(s,o),_e=_.axis||"xy",et=_.includeInvisible||!1;let tt=_.intersect?getIntersectItems(o,$,_e,j,et):getNearestItems(o,$,_e,!1,j,et);if(tt.length>0){const nt=tt[0].datasetIndex,rt=o.getDatasetMeta(nt).data;tt=[];for(let it=0;it_.pos===s)}function filterDynamicPositionByAxis(o,s){return o.filter(_=>STATIC_POSITIONS.indexOf(_.pos)===-1&&_.box.axis===s)}function sortByWeight(o,s){return o.sort((_,j)=>{const $=s?j:_,_e=s?_:j;return $.weight===_e.weight?$.index-_e.index:$.weight-_e.weight})}function wrapBoxes(o){const s=[];let _,j,$,_e,et,tt;for(_=0,j=(o||[]).length;_rt.box.fullSize),!0),j=sortByWeight(filterByPosition(s,"left"),!0),$=sortByWeight(filterByPosition(s,"right")),_e=sortByWeight(filterByPosition(s,"top"),!0),et=sortByWeight(filterByPosition(s,"bottom")),tt=filterDynamicPositionByAxis(s,"x"),nt=filterDynamicPositionByAxis(s,"y");return{fullSize:_,leftAndTop:j.concat(_e),rightAndBottom:$.concat(nt).concat(et).concat(tt),chartArea:filterByPosition(s,"chartArea"),vertical:j.concat($).concat(nt),horizontal:_e.concat(et).concat(tt)}}function getCombinedMax(o,s,_,j){return Math.max(o[_],s[_])+Math.max(o[j],s[j])}function updateMaxPadding(o,s){o.top=Math.max(o.top,s.top),o.left=Math.max(o.left,s.left),o.bottom=Math.max(o.bottom,s.bottom),o.right=Math.max(o.right,s.right)}function updateDims(o,s,_,j){const{pos:$,box:_e}=_,et=o.maxPadding;if(!isObject($)){_.size&&(o[$]-=_.size);const st=j[_.stack]||{size:0,count:1};st.size=Math.max(st.size,_.horizontal?_e.height:_e.width),_.size=st.size/st.count,o[$]+=_.size}_e.getPadding&&updateMaxPadding(et,_e.getPadding());const tt=Math.max(0,s.outerWidth-getCombinedMax(et,o,"left","right")),nt=Math.max(0,s.outerHeight-getCombinedMax(et,o,"top","bottom")),rt=tt!==o.w,it=nt!==o.h;return o.w=tt,o.h=nt,_.horizontal?{same:rt,other:it}:{same:it,other:rt}}function handleMaxPadding(o){const s=o.maxPadding;function _(j){const $=Math.max(s[j]-o[j],0);return o[j]+=$,$}o.y+=_("top"),o.x+=_("left"),_("right"),_("bottom")}function getMargins(o,s){const _=s.maxPadding;function j($){const _e={left:0,top:0,right:0,bottom:0};return $.forEach(et=>{_e[et]=Math.max(s[et],_[et])}),_e}return j(o?["left","right"]:["top","bottom"])}function fitBoxes(o,s,_,j){const $=[];let _e,et,tt,nt,rt,it;for(_e=0,et=o.length,rt=0;_e{typeof gt.beforeLayout=="function"&>.beforeLayout()});const it=nt.reduce((gt,Ut)=>Ut.box.options&&Ut.box.options.display===!1?gt:gt+1,0)||1,st=Object.freeze({outerWidth:s,outerHeight:_,padding:$,availableWidth:_e,availableHeight:et,vBoxMaxWidth:_e/2/it,hBoxMaxHeight:et/2}),ut=Object.assign({},$);updateMaxPadding(ut,toPadding(j));const Ft=Object.assign({maxPadding:ut,w:_e,h:et,x:$.left,y:$.top},$),dt=setLayoutDims(nt.concat(rt),st);fitBoxes(tt.fullSize,Ft,st,dt),fitBoxes(nt,Ft,st,dt),fitBoxes(rt,Ft,st,dt)&&fitBoxes(nt,Ft,st,dt),handleMaxPadding(Ft),placeBoxes(tt.leftAndTop,Ft,st,dt),Ft.x+=Ft.w,Ft.y+=Ft.h,placeBoxes(tt.rightAndBottom,Ft,st,dt),o.chartArea={left:Ft.left,top:Ft.top,right:Ft.left+Ft.w,bottom:Ft.top+Ft.h,height:Ft.h,width:Ft.w},each(tt.chartArea,gt=>{const Ut=gt.box;Object.assign(Ut,o.chartArea),Ut.update(Ft.w,Ft.h,{left:0,top:0,right:0,bottom:0})})}};class BasePlatform{acquireContext(s,_){}releaseContext(s){return!1}addEventListener(s,_,j){}removeEventListener(s,_,j){}getDevicePixelRatio(){return 1}getMaximumSize(s,_,j,$){return _=Math.max(0,_||s.width),j=j||s.height,{width:_,height:Math.max(0,$?Math.floor(_/$):j)}}isAttached(s){return!0}updateConfig(s){}}class BasicPlatform extends BasePlatform{acquireContext(s){return s&&s.getContext&&s.getContext("2d")||null}updateConfig(s){s.options.animation=!1}}const EXPANDO_KEY="$chartjs",EVENT_TYPES={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},isNullOrEmpty=o=>o===null||o==="";function initCanvas(o,s){const _=o.style,j=o.getAttribute("height"),$=o.getAttribute("width");if(o[EXPANDO_KEY]={initial:{height:j,width:$,style:{display:_.display,height:_.height,width:_.width}}},_.display=_.display||"block",_.boxSizing=_.boxSizing||"border-box",isNullOrEmpty($)){const _e=readUsedSize(o,"width");_e!==void 0&&(o.width=_e)}if(isNullOrEmpty(j))if(o.style.height==="")o.height=o.width/(s||2);else{const _e=readUsedSize(o,"height");_e!==void 0&&(o.height=_e)}return o}const eventListenerOptions=supportsEventListenerOptions?{passive:!0}:!1;function addListener(o,s,_){o.addEventListener(s,_,eventListenerOptions)}function removeListener(o,s,_){o.canvas.removeEventListener(s,_,eventListenerOptions)}function fromNativeEvent(o,s){const _=EVENT_TYPES[o.type]||o.type,{x:j,y:$}=getRelativePosition(o,s);return{type:_,chart:s,native:o,x:j!==void 0?j:null,y:$!==void 0?$:null}}function nodeListContains(o,s){for(const _ of o)if(_===s||_.contains(s))return!0}function createAttachObserver(o,s,_){const j=o.canvas,$=new MutationObserver(_e=>{let et=!1;for(const tt of _e)et=et||nodeListContains(tt.addedNodes,j),et=et&&!nodeListContains(tt.removedNodes,j);et&&_()});return $.observe(document,{childList:!0,subtree:!0}),$}function createDetachObserver(o,s,_){const j=o.canvas,$=new MutationObserver(_e=>{let et=!1;for(const tt of _e)et=et||nodeListContains(tt.removedNodes,j),et=et&&!nodeListContains(tt.addedNodes,j);et&&_()});return $.observe(document,{childList:!0,subtree:!0}),$}const drpListeningCharts=new Map;let oldDevicePixelRatio=0;function onWindowResize(){const o=window.devicePixelRatio;o!==oldDevicePixelRatio&&(oldDevicePixelRatio=o,drpListeningCharts.forEach((s,_)=>{_.currentDevicePixelRatio!==o&&s()}))}function listenDevicePixelRatioChanges(o,s){drpListeningCharts.size||window.addEventListener("resize",onWindowResize),drpListeningCharts.set(o,s)}function unlistenDevicePixelRatioChanges(o){drpListeningCharts.delete(o),drpListeningCharts.size||window.removeEventListener("resize",onWindowResize)}function createResizeObserver(o,s,_){const j=o.canvas,$=j&&_getParentNode(j);if(!$)return;const _e=throttled((tt,nt)=>{const rt=$.clientWidth;_(tt,nt),rt<$.clientWidth&&_()},window),et=new ResizeObserver(tt=>{const nt=tt[0],rt=nt.contentRect.width,it=nt.contentRect.height;rt===0&&it===0||_e(rt,it)});return et.observe($),listenDevicePixelRatioChanges(o,_e),et}function releaseObserver(o,s,_){_&&_.disconnect(),s==="resize"&&unlistenDevicePixelRatioChanges(o)}function createProxyAndListen(o,s,_){const j=o.canvas,$=throttled(_e=>{o.ctx!==null&&_(fromNativeEvent(_e,o))},o);return addListener(j,s,$),$}class DomPlatform extends BasePlatform{acquireContext(s,_){const j=s&&s.getContext&&s.getContext("2d");return j&&j.canvas===s?(initCanvas(s,_),j):null}releaseContext(s){const _=s.canvas;if(!_[EXPANDO_KEY])return!1;const j=_[EXPANDO_KEY].initial;["height","width"].forEach(_e=>{const et=j[_e];isNullOrUndef(et)?_.removeAttribute(_e):_.setAttribute(_e,et)});const $=j.style||{};return Object.keys($).forEach(_e=>{_.style[_e]=$[_e]}),_.width=_.width,delete _[EXPANDO_KEY],!0}addEventListener(s,_,j){this.removeEventListener(s,_);const $=s.$proxies||(s.$proxies={}),et={attach:createAttachObserver,detach:createDetachObserver,resize:createResizeObserver}[_]||createProxyAndListen;$[_]=et(s,_,j)}removeEventListener(s,_){const j=s.$proxies||(s.$proxies={}),$=j[_];if(!$)return;({attach:releaseObserver,detach:releaseObserver,resize:releaseObserver}[_]||removeListener)(s,_,$),j[_]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(s,_,j,$){return getMaximumSize(s,_,j,$)}isAttached(s){const _=_getParentNode(s);return!!(_&&_.isConnected)}}function _detectPlatform(o){return!_isDomSupported()||typeof OffscreenCanvas<"u"&&o instanceof OffscreenCanvas?BasicPlatform:DomPlatform}class Element{constructor(){Xn(this,"active",!1)}tooltipPosition(s){const{x:_,y:j}=this.getProps(["x","y"],s);return{x:_,y:j}}hasValue(){return isNumber(this.x)&&isNumber(this.y)}getProps(s,_){const j=this.$animations;if(!_||!j)return this;const $={};return s.forEach(_e=>{$[_e]=j[_e]&&j[_e].active()?j[_e]._to:this[_e]}),$}}Xn(Element,"defaults",{}),Xn(Element,"defaultRoutes");function autoSkip(o,s){const _=o.options.ticks,j=determineMaxTicks(o),$=Math.min(_.maxTicksLimit||j,j),_e=_.major.enabled?getMajorIndices(s):[],et=_e.length,tt=_e[0],nt=_e[et-1],rt=[];if(et>$)return skipMajors(s,rt,_e,et/$),rt;const it=calculateSpacing(_e,s,$);if(et>0){let st,ut;const Ft=et>1?Math.round((nt-tt)/(et-1)):null;for(skip(s,rt,it,isNullOrUndef(Ft)?0:tt-Ft,tt),st=0,ut=et-1;st$)return nt}return Math.max($,1)}function getMajorIndices(o){const s=[];let _,j;for(_=0,j=o.length;_o==="left"?"right":o==="right"?"left":o,offsetFromEdge=(o,s,_)=>s==="top"||s==="left"?o[s]+_:o[s]-_,getTicksLimit=(o,s)=>Math.min(s||o,o);function sample(o,s){const _=[],j=o.length/s,$=o.length;let _e=0;for(;_e<$;_e+=j)_.push(o[Math.floor(_e)]);return _}function getPixelForGridLine(o,s,_){const j=o.ticks.length,$=Math.min(s,j-1),_e=o._startPixel,et=o._endPixel,tt=1e-6;let nt=o.getPixelForTick($),rt;if(!(_&&(j===1?rt=Math.max(nt-_e,et-nt):s===0?rt=(o.getPixelForTick(1)-nt)/2:rt=(nt-o.getPixelForTick($-1))/2,nt+=$et+tt)))return nt}function garbageCollect(o,s){each(o,_=>{const j=_.gc,$=j.length/2;let _e;if($>s){for(_e=0;_e<$;++_e)delete _.data[j[_e]];j.splice(0,$)}})}function getTickMarkLength(o){return o.drawTicks?o.tickLength:0}function getTitleHeight(o,s){if(!o.display)return 0;const _=toFont(o.font,s),j=toPadding(o.padding);return(isArray(o.text)?o.text.length:1)*_.lineHeight+j.height}function createScaleContext(o,s){return createContext(o,{scale:s,type:"scale"})}function createTickContext(o,s,_){return createContext(o,{tick:_,index:s,type:"tick"})}function titleAlign(o,s,_){let j=_toLeftRightCenter(o);return(_&&s!=="right"||!_&&s==="right")&&(j=reverseAlign(j)),j}function titleArgs(o,s,_,j){const{top:$,left:_e,bottom:et,right:tt,chart:nt}=o,{chartArea:rt,scales:it}=nt;let st=0,ut,Ft,dt;const gt=et-$,Ut=tt-_e;if(o.isHorizontal()){if(Ft=_alignStartEnd(j,_e,tt),isObject(_)){const ht=Object.keys(_)[0],ft=_[ht];dt=it[ht].getPixelForValue(ft)+gt-s}else _==="center"?dt=(rt.bottom+rt.top)/2+gt-s:dt=offsetFromEdge(o,_,s);ut=tt-_e}else{if(isObject(_)){const ht=Object.keys(_)[0],ft=_[ht];Ft=it[ht].getPixelForValue(ft)-Ut+s}else _==="center"?Ft=(rt.left+rt.right)/2-Ut+s:Ft=offsetFromEdge(o,_,s);dt=_alignStartEnd(j,et,$),st=_==="left"?-HALF_PI:HALF_PI}return{titleX:Ft,titleY:dt,maxWidth:ut,rotation:st}}class Scale extends Element{constructor(s){super(),this.id=s.id,this.type=s.type,this.options=void 0,this.ctx=s.ctx,this.chart=s.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(s){this.options=s.setContext(this.getContext()),this.axis=s.axis,this._userMin=this.parse(s.min),this._userMax=this.parse(s.max),this._suggestedMin=this.parse(s.suggestedMin),this._suggestedMax=this.parse(s.suggestedMax)}parse(s,_){return s}getUserBounds(){let{_userMin:s,_userMax:_,_suggestedMin:j,_suggestedMax:$}=this;return s=finiteOrDefault(s,Number.POSITIVE_INFINITY),_=finiteOrDefault(_,Number.NEGATIVE_INFINITY),j=finiteOrDefault(j,Number.POSITIVE_INFINITY),$=finiteOrDefault($,Number.NEGATIVE_INFINITY),{min:finiteOrDefault(s,j),max:finiteOrDefault(_,$),minDefined:isNumberFinite(s),maxDefined:isNumberFinite(_)}}getMinMax(s){let{min:_,max:j,minDefined:$,maxDefined:_e}=this.getUserBounds(),et;if($&&_e)return{min:_,max:j};const tt=this.getMatchingVisibleMetas();for(let nt=0,rt=tt.length;ntj?j:_,j=$&&_>j?_:j,{min:finiteOrDefault(_,finiteOrDefault(j,_)),max:finiteOrDefault(j,finiteOrDefault(_,j))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const s=this.chart.data;return this.options.labels||(this.isHorizontal()?s.xLabels:s.yLabels)||s.labels||[]}getLabelItems(s=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(s))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){callback(this.options.beforeUpdate,[this])}update(s,_,j){const{beginAtZero:$,grace:_e,ticks:et}=this.options,tt=et.sampleSize;this.beforeUpdate(),this.maxWidth=s,this.maxHeight=_,this._margins=j=Object.assign({left:0,right:0,top:0,bottom:0},j),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+j.left+j.right:this.height+j.top+j.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=_addGrace(this,_e,$),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const nt=tt=_e||j<=1||!this.isHorizontal()){this.labelRotation=$;return}const it=this._getLabelSizes(),st=it.widest.width,ut=it.highest.height,Ft=_limitValue(this.chart.width-st,0,this.maxWidth);tt=s.offset?this.maxWidth/j:Ft/(j-1),st+6>tt&&(tt=Ft/(j-(s.offset?.5:1)),nt=this.maxHeight-getTickMarkLength(s.grid)-_.padding-getTitleHeight(s.title,this.chart.options.font),rt=Math.sqrt(st*st+ut*ut),et=toDegrees(Math.min(Math.asin(_limitValue((it.highest.height+6)/tt,-1,1)),Math.asin(_limitValue(nt/rt,-1,1))-Math.asin(_limitValue(ut/rt,-1,1)))),et=Math.max($,Math.min(_e,et))),this.labelRotation=et}afterCalculateLabelRotation(){callback(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){callback(this.options.beforeFit,[this])}fit(){const s={width:0,height:0},{chart:_,options:{ticks:j,title:$,grid:_e}}=this,et=this._isVisible(),tt=this.isHorizontal();if(et){const nt=getTitleHeight($,_.options.font);if(tt?(s.width=this.maxWidth,s.height=getTickMarkLength(_e)+nt):(s.height=this.maxHeight,s.width=getTickMarkLength(_e)+nt),j.display&&this.ticks.length){const{first:rt,last:it,widest:st,highest:ut}=this._getLabelSizes(),Ft=j.padding*2,dt=toRadians(this.labelRotation),gt=Math.cos(dt),Ut=Math.sin(dt);if(tt){const ht=j.mirror?0:Ut*st.width+gt*ut.height;s.height=Math.min(this.maxHeight,s.height+ht+Ft)}else{const ht=j.mirror?0:gt*st.width+Ut*ut.height;s.width=Math.min(this.maxWidth,s.width+ht+Ft)}this._calculatePadding(rt,it,Ut,gt)}}this._handleMargins(),tt?(this.width=this._length=_.width-this._margins.left-this._margins.right,this.height=s.height):(this.width=s.width,this.height=this._length=_.height-this._margins.top-this._margins.bottom)}_calculatePadding(s,_,j,$){const{ticks:{align:_e,padding:et},position:tt}=this.options,nt=this.labelRotation!==0,rt=tt!=="top"&&this.axis==="x";if(this.isHorizontal()){const it=this.getPixelForTick(0)-this.left,st=this.right-this.getPixelForTick(this.ticks.length-1);let ut=0,Ft=0;nt?rt?(ut=$*s.width,Ft=j*_.height):(ut=j*s.height,Ft=$*_.width):_e==="start"?Ft=_.width:_e==="end"?ut=s.width:_e!=="inner"&&(ut=s.width/2,Ft=_.width/2),this.paddingLeft=Math.max((ut-it+et)*this.width/(this.width-it),0),this.paddingRight=Math.max((Ft-st+et)*this.width/(this.width-st),0)}else{let it=_.height/2,st=s.height/2;_e==="start"?(it=0,st=s.height):_e==="end"&&(it=_.height,st=0),this.paddingTop=it+et,this.paddingBottom=st+et}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){callback(this.options.afterFit,[this])}isHorizontal(){const{axis:s,position:_}=this.options;return _==="top"||_==="bottom"||s==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(s){this.beforeTickToLabelConversion(),this.generateTickLabels(s);let _,j;for(_=0,j=s.length;_({width:et[Bt]||0,height:tt[Bt]||0});return{first:kt(0),last:kt(_-1),widest:kt(Nt),highest:kt(At),widths:et,heights:tt}}getLabelForValue(s){return s}getPixelForValue(s,_){return NaN}getValueForPixel(s){}getPixelForTick(s){const _=this.ticks;return s<0||s>_.length-1?null:this.getPixelForValue(_[s].value)}getPixelForDecimal(s){this._reversePixels&&(s=1-s);const _=this._startPixel+s*this._length;return _int16Range(this._alignToPixels?_alignPixel(this.chart,_,0):_)}getDecimalForPixel(s){const _=(s-this._startPixel)/this._length;return this._reversePixels?1-_:_}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:s,max:_}=this;return s<0&&_<0?_:s>0&&_>0?s:0}getContext(s){const _=this.ticks||[];if(s>=0&&s<_.length){const j=_[s];return j.$context||(j.$context=createTickContext(this.getContext(),s,j))}return this.$context||(this.$context=createScaleContext(this.chart.getContext(),this))}_tickSize(){const s=this.options.ticks,_=toRadians(this.labelRotation),j=Math.abs(Math.cos(_)),$=Math.abs(Math.sin(_)),_e=this._getLabelSizes(),et=s.autoSkipPadding||0,tt=_e?_e.widest.width+et:0,nt=_e?_e.highest.height+et:0;return this.isHorizontal()?nt*j>tt*$?tt/j:nt/$:nt*$0}_computeGridLineItems(s){const _=this.axis,j=this.chart,$=this.options,{grid:_e,position:et,border:tt}=$,nt=_e.offset,rt=this.isHorizontal(),st=this.ticks.length+(nt?1:0),ut=getTickMarkLength(_e),Ft=[],dt=tt.setContext(this.getContext()),gt=dt.display?dt.width:0,Ut=gt/2,ht=function(Et){return _alignPixel(j,Et,gt)};let ft,pt,Rt,Qt,Nt,At,kt,Bt,jt,vt,mt,yt;if(et==="top")ft=ht(this.bottom),At=this.bottom-ut,Bt=ft-Ut,vt=ht(s.top)+Ut,yt=s.bottom;else if(et==="bottom")ft=ht(this.top),vt=s.top,yt=ht(s.bottom)-Ut,At=ft+Ut,Bt=this.top+ut;else if(et==="left")ft=ht(this.right),Nt=this.right-ut,kt=ft-Ut,jt=ht(s.left)+Ut,mt=s.right;else if(et==="right")ft=ht(this.left),jt=s.left,mt=ht(s.right)-Ut,Nt=ft+Ut,kt=this.left+ut;else if(_==="x"){if(et==="center")ft=ht((s.top+s.bottom)/2+.5);else if(isObject(et)){const Et=Object.keys(et)[0],Jt=et[Et];ft=ht(this.chart.scales[Et].getPixelForValue(Jt))}vt=s.top,yt=s.bottom,At=ft+Ut,Bt=At+ut}else if(_==="y"){if(et==="center")ft=ht((s.left+s.right)/2);else if(isObject(et)){const Et=Object.keys(et)[0],Jt=et[Et];ft=ht(this.chart.scales[Et].getPixelForValue(Jt))}Nt=ft-Ut,kt=Nt-ut,jt=s.left,mt=s.right}const Vt=valueOrDefault($.ticks.maxTicksLimit,st),wt=Math.max(1,Math.ceil(st/Vt));for(pt=0;pt_e.value===s);return $>=0?_.setContext(this.getContext($)).lineWidth:0}drawGrid(s){const _=this.options.grid,j=this.ctx,$=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(s));let _e,et;const tt=(nt,rt,it)=>{!it.width||!it.color||(j.save(),j.lineWidth=it.width,j.strokeStyle=it.color,j.setLineDash(it.borderDash||[]),j.lineDashOffset=it.borderDashOffset,j.beginPath(),j.moveTo(nt.x,nt.y),j.lineTo(rt.x,rt.y),j.stroke(),j.restore())};if(_.display)for(_e=0,et=$.length;_e{this.draw(_e)}}]:[{z:j,draw:_e=>{this.drawBackground(),this.drawGrid(_e),this.drawTitle()}},{z:$,draw:()=>{this.drawBorder()}},{z:_,draw:_e=>{this.drawLabels(_e)}}]}getMatchingVisibleMetas(s){const _=this.chart.getSortedVisibleDatasetMetas(),j=this.axis+"AxisID",$=[];let _e,et;for(_e=0,et=_.length;_e{const j=_.split("."),$=j.pop(),_e=[o].concat(j).join("."),et=s[_].split("."),tt=et.pop(),nt=et.join(".");defaults.route(_e,$,nt,tt)})}function isIChartComponent(o){return"id"in o&&"defaults"in o}class Registry{constructor(){this.controllers=new TypedRegistry(DatasetController,"datasets",!0),this.elements=new TypedRegistry(Element,"elements"),this.plugins=new TypedRegistry(Object,"plugins"),this.scales=new TypedRegistry(Scale,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...s){this._each("register",s)}remove(...s){this._each("unregister",s)}addControllers(...s){this._each("register",s,this.controllers)}addElements(...s){this._each("register",s,this.elements)}addPlugins(...s){this._each("register",s,this.plugins)}addScales(...s){this._each("register",s,this.scales)}getController(s){return this._get(s,this.controllers,"controller")}getElement(s){return this._get(s,this.elements,"element")}getPlugin(s){return this._get(s,this.plugins,"plugin")}getScale(s){return this._get(s,this.scales,"scale")}removeControllers(...s){this._each("unregister",s,this.controllers)}removeElements(...s){this._each("unregister",s,this.elements)}removePlugins(...s){this._each("unregister",s,this.plugins)}removeScales(...s){this._each("unregister",s,this.scales)}_each(s,_,j){[..._].forEach($=>{const _e=j||this._getRegistryForType($);j||_e.isForType($)||_e===this.plugins&&$.id?this._exec(s,_e,$):each($,et=>{const tt=j||this._getRegistryForType(et);this._exec(s,tt,et)})})}_exec(s,_,j){const $=_capitalize(s);callback(j["before"+$],[],j),_[s](j),callback(j["after"+$],[],j)}_getRegistryForType(s){for(let _=0;__e.filter(tt=>!et.some(nt=>tt.plugin.id===nt.plugin.id));this._notify($(_,j),s,"stop"),this._notify($(j,_),s,"start")}}function allPlugins(o){const s={},_=[],j=Object.keys(registry.plugins.items);for(let _e=0;_e1&&determineAxis(o[0].toLowerCase(),s),o))return o;throw new Error(`Cannot determine type of '${name}' axis. Please provide 'axis' or 'position' option.`)}function mergeScaleConfig(o,s){const _=overrides[o.type]||{scales:{}},j=s.scales||{},$=getIndexAxis(o.type,s),_e=Object.create(null);return Object.keys(j).forEach(et=>{const tt=j[et];if(!isObject(tt))return console.error(`Invalid scale configuration for scale: ${et}`);if(tt._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${et}`);const nt=determineAxis(et,tt),rt=getDefaultScaleIDFromAxis(nt,$),it=_.scales||{};_e[et]=mergeIf(Object.create(null),[{axis:nt},tt,it[nt],it[rt]])}),o.data.datasets.forEach(et=>{const tt=et.type||o.type,nt=et.indexAxis||getIndexAxis(tt,s),it=(overrides[tt]||{}).scales||{};Object.keys(it).forEach(st=>{const ut=getAxisFromDefaultScaleID(st,nt),Ft=et[ut+"AxisID"]||ut;_e[Ft]=_e[Ft]||Object.create(null),mergeIf(_e[Ft],[{axis:ut},j[Ft],it[st]])})}),Object.keys(_e).forEach(et=>{const tt=_e[et];mergeIf(tt,[defaults.scales[tt.type],defaults.scale])}),_e}function initOptions(o){const s=o.options||(o.options={});s.plugins=valueOrDefault(s.plugins,{}),s.scales=mergeScaleConfig(o,s)}function initData(o){return o=o||{},o.datasets=o.datasets||[],o.labels=o.labels||[],o}function initConfig(o){return o=o||{},o.data=initData(o.data),initOptions(o),o}const keyCache=new Map,keysCached=new Set;function cachedKeys(o,s){let _=keyCache.get(o);return _||(_=s(),keyCache.set(o,_),keysCached.add(_)),_}const addIfFound=(o,s,_)=>{const j=resolveObjectKey(s,_);j!==void 0&&o.add(j)};class Config{constructor(s){this._config=initConfig(s),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(s){this._config.type=s}get data(){return this._config.data}set data(s){this._config.data=initData(s)}get options(){return this._config.options}set options(s){this._config.options=s}get plugins(){return this._config.plugins}update(){const s=this._config;this.clearCache(),initOptions(s)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(s){return cachedKeys(s,()=>[[`datasets.${s}`,""]])}datasetAnimationScopeKeys(s,_){return cachedKeys(`${s}.transition.${_}`,()=>[[`datasets.${s}.transitions.${_}`,`transitions.${_}`],[`datasets.${s}`,""]])}datasetElementScopeKeys(s,_){return cachedKeys(`${s}-${_}`,()=>[[`datasets.${s}.elements.${_}`,`datasets.${s}`,`elements.${_}`,""]])}pluginScopeKeys(s){const _=s.id,j=this.type;return cachedKeys(`${j}-plugin-${_}`,()=>[[`plugins.${_}`,...s.additionalOptionScopes||[]]])}_cachedScopes(s,_){const j=this._scopeCache;let $=j.get(s);return(!$||_)&&($=new Map,j.set(s,$)),$}getOptionScopes(s,_,j){const{options:$,type:_e}=this,et=this._cachedScopes(s,j),tt=et.get(_);if(tt)return tt;const nt=new Set;_.forEach(it=>{s&&(nt.add(s),it.forEach(st=>addIfFound(nt,s,st))),it.forEach(st=>addIfFound(nt,$,st)),it.forEach(st=>addIfFound(nt,overrides[_e]||{},st)),it.forEach(st=>addIfFound(nt,defaults,st)),it.forEach(st=>addIfFound(nt,descriptors,st))});const rt=Array.from(nt);return rt.length===0&&rt.push(Object.create(null)),keysCached.has(_)&&et.set(_,rt),rt}chartOptionScopes(){const{options:s,type:_}=this;return[s,overrides[_]||{},defaults.datasets[_]||{},{type:_},defaults,descriptors]}resolveNamedOptions(s,_,j,$=[""]){const _e={$shared:!0},{resolver:et,subPrefixes:tt}=getResolver(this._resolverCache,s,$);let nt=et;if(needContext(et,_)){_e.$shared=!1,j=isFunction(j)?j():j;const rt=this.createResolver(s,j,tt);nt=_attachContext(et,j,rt)}for(const rt of _)_e[rt]=nt[rt];return _e}createResolver(s,_,j=[""],$){const{resolver:_e}=getResolver(this._resolverCache,s,j);return isObject(_)?_attachContext(_e,_,void 0,$):_e}}function getResolver(o,s,_){let j=o.get(s);j||(j=new Map,o.set(s,j));const $=_.join();let _e=j.get($);return _e||(_e={resolver:_createResolver(s,_),subPrefixes:_.filter(tt=>!tt.toLowerCase().includes("hover"))},j.set($,_e)),_e}const hasFunction=o=>isObject(o)&&Object.getOwnPropertyNames(o).reduce((s,_)=>s||isFunction(o[_]),!1);function needContext(o,s){const{isScriptable:_,isIndexable:j}=_descriptors(o);for(const $ of s){const _e=_($),et=j($),tt=(et||_e)&&o[$];if(_e&&(isFunction(tt)||hasFunction(tt))||et&&isArray(tt))return!0}return!1}var version="4.2.1";const KNOWN_POSITIONS=["top","bottom","left","right","chartArea"];function positionIsHorizontal(o,s){return o==="top"||o==="bottom"||KNOWN_POSITIONS.indexOf(o)===-1&&s==="x"}function compare2Level(o,s){return function(_,j){return _[o]===j[o]?_[s]-j[s]:_[o]-j[o]}}function onAnimationsComplete(o){const s=o.chart,_=s.options.animation;s.notifyPlugins("afterRender"),callback(_&&_.onComplete,[o],s)}function onAnimationProgress(o){const s=o.chart,_=s.options.animation;callback(_&&_.onProgress,[o],s)}function getCanvas(o){return _isDomSupported()&&typeof o=="string"?o=document.getElementById(o):o&&o.length&&(o=o[0]),o&&o.canvas&&(o=o.canvas),o}const instances={},getChart=o=>{const s=getCanvas(o);return Object.values(instances).filter(_=>_.canvas===s).pop()};function moveNumericKeys(o,s,_){const j=Object.keys(o);for(const $ of j){const _e=+$;if(_e>=s){const et=o[$];delete o[$],(_>0||_e>s)&&(o[_e+_]=et)}}}function determineLastEvent(o,s,_,j){return!_||o.type==="mouseout"?null:j?s:o}function getDatasetArea(o){const{xScale:s,yScale:_}=o;if(s&&_)return{left:s.left,right:s.right,top:_.top,bottom:_.bottom}}class Chart{static register(...s){registry.add(...s),invalidatePlugins()}static unregister(...s){registry.remove(...s),invalidatePlugins()}constructor(s,_){const j=this.config=new Config(_),$=getCanvas(s),_e=getChart($);if(_e)throw new Error("Canvas is already in use. Chart with ID '"+_e.id+"' must be destroyed before the canvas with ID '"+_e.canvas.id+"' can be reused.");const et=j.createResolver(j.chartOptionScopes(),this.getContext());this.platform=new(j.platform||_detectPlatform($)),this.platform.updateConfig(j);const tt=this.platform.acquireContext($,et.aspectRatio),nt=tt&&tt.canvas,rt=nt&&nt.height,it=nt&&nt.width;if(this.id=uid(),this.ctx=tt,this.canvas=nt,this.width=it,this.height=rt,this._options=et,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new PluginService,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=debounce(st=>this.update(st),et.resizeDelay||0),this._dataChanges=[],instances[this.id]=this,!tt||!nt){console.error("Failed to create chart: can't acquire context from the given item");return}animator.listen(this,"complete",onAnimationsComplete),animator.listen(this,"progress",onAnimationProgress),this._initialize(),this.attached&&this.update()}get aspectRatio(){const{options:{aspectRatio:s,maintainAspectRatio:_},width:j,height:$,_aspectRatio:_e}=this;return isNullOrUndef(s)?_&&_e?_e:$?j/$:null:s}get data(){return this.config.data}set data(s){this.config.data=s}get options(){return this._options}set options(s){this.config.options=s}get registry(){return registry}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():retinaScale(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return clearCanvas(this.canvas,this.ctx),this}stop(){return animator.stop(this),this}resize(s,_){animator.running(this)?this._resizeBeforeDraw={width:s,height:_}:this._resize(s,_)}_resize(s,_){const j=this.options,$=this.canvas,_e=j.maintainAspectRatio&&this.aspectRatio,et=this.platform.getMaximumSize($,s,_,_e),tt=j.devicePixelRatio||this.platform.getDevicePixelRatio(),nt=this.width?"resize":"attach";this.width=et.width,this.height=et.height,this._aspectRatio=this.aspectRatio,retinaScale(this,tt,!0)&&(this.notifyPlugins("resize",{size:et}),callback(j.onResize,[this,et],this),this.attached&&this._doResize(nt)&&this.render())}ensureScalesHaveIDs(){const _=this.options.scales||{};each(_,(j,$)=>{j.id=$})}buildOrUpdateScales(){const s=this.options,_=s.scales,j=this.scales,$=Object.keys(j).reduce((et,tt)=>(et[tt]=!1,et),{});let _e=[];_&&(_e=_e.concat(Object.keys(_).map(et=>{const tt=_[et],nt=determineAxis(et,tt),rt=nt==="r",it=nt==="x";return{options:tt,dposition:rt?"chartArea":it?"bottom":"left",dtype:rt?"radialLinear":it?"category":"linear"}}))),each(_e,et=>{const tt=et.options,nt=tt.id,rt=determineAxis(nt,tt),it=valueOrDefault(tt.type,et.dtype);(tt.position===void 0||positionIsHorizontal(tt.position,rt)!==positionIsHorizontal(et.dposition))&&(tt.position=et.dposition),$[nt]=!0;let st=null;if(nt in j&&j[nt].type===it)st=j[nt];else{const ut=registry.getScale(it);st=new ut({id:nt,type:it,ctx:this.ctx,chart:this}),j[st.id]=st}st.init(tt,s)}),each($,(et,tt)=>{et||delete j[tt]}),each(j,et=>{layouts.configure(this,et,et.options),layouts.addBox(this,et)})}_updateMetasets(){const s=this._metasets,_=this.data.datasets.length,j=s.length;if(s.sort(($,_e)=>$.index-_e.index),j>_){for(let $=_;$_.length&&delete this._stacks,s.forEach((j,$)=>{_.filter(_e=>_e===j._dataset).length===0&&this._destroyDatasetMeta($)})}buildOrUpdateControllers(){const s=[],_=this.data.datasets;let j,$;for(this._removeUnreferencedMetasets(),j=0,$=_.length;j<$;j++){const _e=_[j];let et=this.getDatasetMeta(j);const tt=_e.type||this.config.type;if(et.type&&et.type!==tt&&(this._destroyDatasetMeta(j),et=this.getDatasetMeta(j)),et.type=tt,et.indexAxis=_e.indexAxis||getIndexAxis(tt,this.options),et.order=_e.order||0,et.index=j,et.label=""+_e.label,et.visible=this.isDatasetVisible(j),et.controller)et.controller.updateIndex(j),et.controller.linkScales();else{const nt=registry.getController(tt),{datasetElementType:rt,dataElementType:it}=defaults.datasets[tt];Object.assign(nt,{dataElementType:registry.getElement(it),datasetElementType:rt&®istry.getElement(rt)}),et.controller=new nt(this,j),s.push(et.controller)}}return this._updateMetasets(),s}_resetElements(){each(this.data.datasets,(s,_)=>{this.getDatasetMeta(_).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(s){const _=this.config;_.update();const j=this._options=_.createResolver(_.chartOptionScopes(),this.getContext()),$=this._animationsDisabled=!j.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:s,cancelable:!0})===!1)return;const _e=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let et=0;for(let rt=0,it=this.data.datasets.length;rt{rt.reset()}),this._updateDatasets(s),this.notifyPlugins("afterUpdate",{mode:s}),this._layers.sort(compare2Level("z","_idx"));const{_active:tt,_lastEvent:nt}=this;nt?this._eventHandler(nt,!0):tt.length&&this._updateHoverStyles(tt,tt,!0),this.render()}_updateScales(){each(this.scales,s=>{layouts.removeBox(this,s)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const s=this.options,_=new Set(Object.keys(this._listeners)),j=new Set(s.events);(!setsEqual(_,j)||!!this._responsiveListeners!==s.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:s}=this,_=this._getUniformDataChanges()||[];for(const{method:j,start:$,count:_e}of _){const et=j==="_removeElements"?-_e:_e;moveNumericKeys(s,$,et)}}_getUniformDataChanges(){const s=this._dataChanges;if(!s||!s.length)return;this._dataChanges=[];const _=this.data.datasets.length,j=_e=>new Set(s.filter(et=>et[0]===_e).map((et,tt)=>tt+","+et.splice(1).join(","))),$=j(0);for(let _e=1;_e<_;_e++)if(!setsEqual($,j(_e)))return;return Array.from($).map(_e=>_e.split(",")).map(_e=>({method:_e[1],start:+_e[2],count:+_e[3]}))}_updateLayout(s){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;layouts.update(this,this.width,this.height,s);const _=this.chartArea,j=_.width<=0||_.height<=0;this._layers=[],each(this.boxes,$=>{j&&$.position==="chartArea"||($.configure&&$.configure(),this._layers.push(...$._layers()))},this),this._layers.forEach(($,_e)=>{$._idx=_e}),this.notifyPlugins("afterLayout")}_updateDatasets(s){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:s,cancelable:!0})!==!1){for(let _=0,j=this.data.datasets.length;_=0;--_)this._drawDataset(s[_]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(s){const _=this.ctx,j=s._clip,$=!j.disabled,_e=getDatasetArea(s)||this.chartArea,et={meta:s,index:s.index,cancelable:!0};this.notifyPlugins("beforeDatasetDraw",et)!==!1&&($&&clipArea(_,{left:j.left===!1?0:_e.left-j.left,right:j.right===!1?this.width:_e.right+j.right,top:j.top===!1?0:_e.top-j.top,bottom:j.bottom===!1?this.height:_e.bottom+j.bottom}),s.controller.draw(),$&&unclipArea(_),et.cancelable=!1,this.notifyPlugins("afterDatasetDraw",et))}isPointInArea(s){return _isPointInArea(s,this.chartArea,this._minPadding)}getElementsAtEventForMode(s,_,j,$){const _e=Interaction.modes[_];return typeof _e=="function"?_e(this,s,j,$):[]}getDatasetMeta(s){const _=this.data.datasets[s],j=this._metasets;let $=j.filter(_e=>_e&&_e._dataset===_).pop();return $||($={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:_&&_.order||0,index:s,_dataset:_,_parsed:[],_sorted:!1},j.push($)),$}getContext(){return this.$context||(this.$context=createContext(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(s){const _=this.data.datasets[s];if(!_)return!1;const j=this.getDatasetMeta(s);return typeof j.hidden=="boolean"?!j.hidden:!_.hidden}setDatasetVisibility(s,_){const j=this.getDatasetMeta(s);j.hidden=!_}toggleDataVisibility(s){this._hiddenIndices[s]=!this._hiddenIndices[s]}getDataVisibility(s){return!this._hiddenIndices[s]}_updateVisibility(s,_,j){const $=j?"show":"hide",_e=this.getDatasetMeta(s),et=_e.controller._resolveAnimations(void 0,$);defined(_)?(_e.data[_].hidden=!j,this.update()):(this.setDatasetVisibility(s,j),et.update(_e,{visible:j}),this.update(tt=>tt.datasetIndex===s?$:void 0))}hide(s,_){this._updateVisibility(s,_,!1)}show(s,_){this._updateVisibility(s,_,!0)}_destroyDatasetMeta(s){const _=this._metasets[s];_&&_.controller&&_.controller._destroy(),delete this._metasets[s]}_stop(){let s,_;for(this.stop(),animator.remove(this),s=0,_=this.data.datasets.length;s<_;++s)this._destroyDatasetMeta(s)}destroy(){this.notifyPlugins("beforeDestroy");const{canvas:s,ctx:_}=this;this._stop(),this.config.clearCache(),s&&(this.unbindEvents(),clearCanvas(s,_),this.platform.releaseContext(_),this.canvas=null,this.ctx=null),delete instances[this.id],this.notifyPlugins("afterDestroy")}toBase64Image(...s){return this.canvas.toDataURL(...s)}bindEvents(){this.bindUserEvents(),this.options.responsive?this.bindResponsiveEvents():this.attached=!0}bindUserEvents(){const s=this._listeners,_=this.platform,j=(_e,et)=>{_.addEventListener(this,_e,et),s[_e]=et},$=(_e,et,tt)=>{_e.offsetX=et,_e.offsetY=tt,this._eventHandler(_e)};each(this.options.events,_e=>j(_e,$))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const s=this._responsiveListeners,_=this.platform,j=(nt,rt)=>{_.addEventListener(this,nt,rt),s[nt]=rt},$=(nt,rt)=>{s[nt]&&(_.removeEventListener(this,nt,rt),delete s[nt])},_e=(nt,rt)=>{this.canvas&&this.resize(nt,rt)};let et;const tt=()=>{$("attach",tt),this.attached=!0,this.resize(),j("resize",_e),j("detach",et)};et=()=>{this.attached=!1,$("resize",_e),this._stop(),this._resize(0,0),j("attach",tt)},_.isAttached(this.canvas)?tt():et()}unbindEvents(){each(this._listeners,(s,_)=>{this.platform.removeEventListener(this,_,s)}),this._listeners={},each(this._responsiveListeners,(s,_)=>{this.platform.removeEventListener(this,_,s)}),this._responsiveListeners=void 0}updateHoverStyle(s,_,j){const $=j?"set":"remove";let _e,et,tt,nt;for(_==="dataset"&&(_e=this.getDatasetMeta(s[0].datasetIndex),_e.controller["_"+$+"DatasetHoverStyle"]()),tt=0,nt=s.length;tt{const tt=this.getDatasetMeta(_e);if(!tt)throw new Error("No dataset found at index "+_e);return{datasetIndex:_e,element:tt.data[et],index:et}});!_elementsEqual(j,_)&&(this._active=j,this._lastEvent=null,this._updateHoverStyles(j,_))}notifyPlugins(s,_,j){return this._plugins.notify(this,s,_,j)}isPluginEnabled(s){return this._plugins._cache.filter(_=>_.plugin.id===s).length===1}_updateHoverStyles(s,_,j){const $=this.options.hover,_e=(nt,rt)=>nt.filter(it=>!rt.some(st=>it.datasetIndex===st.datasetIndex&&it.index===st.index)),et=_e(_,s),tt=j?s:_e(s,_);et.length&&this.updateHoverStyle(et,$.mode,!1),tt.length&&$.mode&&this.updateHoverStyle(tt,$.mode,!0)}_eventHandler(s,_){const j={event:s,replay:_,cancelable:!0,inChartArea:this.isPointInArea(s)},$=et=>(et.options.events||this.options.events).includes(s.native.type);if(this.notifyPlugins("beforeEvent",j,$)===!1)return;const _e=this._handleEvent(s,_,j.inChartArea);return j.cancelable=!1,this.notifyPlugins("afterEvent",j,$),(_e||j.changed)&&this.render(),this}_handleEvent(s,_,j){const{_active:$=[],options:_e}=this,et=_,tt=this._getActiveElements(s,$,j,et),nt=_isClickEvent(s),rt=determineLastEvent(s,this._lastEvent,j,nt);j&&(this._lastEvent=null,callback(_e.onHover,[s,tt,this],this),nt&&callback(_e.onClick,[s,tt,this],this));const it=!_elementsEqual(tt,$);return(it||_)&&(this._active=tt,this._updateHoverStyles(tt,$,_)),this._lastEvent=rt,it}_getActiveElements(s,_,j,$){if(s.type==="mouseout")return[];if(!j)return _;const _e=this.options.hover;return this.getElementsAtEventForMode(s,_e.mode,_e,$)}}Xn(Chart,"defaults",defaults),Xn(Chart,"instances",instances),Xn(Chart,"overrides",overrides),Xn(Chart,"registry",registry),Xn(Chart,"version",version),Xn(Chart,"getChart",getChart);function invalidatePlugins(){return each(Chart.instances,o=>o._plugins.invalidate())}function clipArc(o,s,_){const{startAngle:j,pixelMargin:$,x:_e,y:et,outerRadius:tt,innerRadius:nt}=s;let rt=$/tt;o.beginPath(),o.arc(_e,et,tt,j-rt,_+rt),nt>$?(rt=$/nt,o.arc(_e,et,nt,_+rt,j-rt,!0)):o.arc(_e,et,$,_+HALF_PI,j-HALF_PI),o.closePath(),o.clip()}function toRadiusCorners(o){return _readValueToProps(o,["outerStart","outerEnd","innerStart","innerEnd"])}function parseBorderRadius$1(o,s,_,j){const $=toRadiusCorners(o.options.borderRadius),_e=(_-s)/2,et=Math.min(_e,j*s/2),tt=nt=>{const rt=(_-Math.min(_e,nt))*j/2;return _limitValue(nt,0,Math.min(_e,rt))};return{outerStart:tt($.outerStart),outerEnd:tt($.outerEnd),innerStart:_limitValue($.innerStart,0,et),innerEnd:_limitValue($.innerEnd,0,et)}}function rThetaToXY(o,s,_,j){return{x:_+o*Math.cos(s),y:j+o*Math.sin(s)}}function pathArc(o,s,_,j,$,_e){const{x:et,y:tt,startAngle:nt,pixelMargin:rt,innerRadius:it}=s,st=Math.max(s.outerRadius+j+_-rt,0),ut=it>0?it+j+_+rt:0;let Ft=0;const dt=$-nt;if(j){const wt=it>0?it-j:0,Et=st>0?st-j:0,Jt=(wt+Et)/2,Pt=Jt!==0?dt*Jt/(Jt+j):dt;Ft=(dt-Pt)/2}const gt=Math.max(.001,dt*st-_/PI)/st,Ut=(dt-gt)/2,ht=nt+Ut+Ft,ft=$-Ut-Ft,{outerStart:pt,outerEnd:Rt,innerStart:Qt,innerEnd:Nt}=parseBorderRadius$1(s,ut,st,ft-ht),At=st-pt,kt=st-Rt,Bt=ht+pt/At,jt=ft-Rt/kt,vt=ut+Qt,mt=ut+Nt,yt=ht+Qt/vt,Vt=ft-Nt/mt;if(o.beginPath(),_e){const wt=(Bt+jt)/2;if(o.arc(et,tt,st,Bt,wt),o.arc(et,tt,st,wt,jt),Rt>0){const Yt=rThetaToXY(kt,jt,et,tt);o.arc(Yt.x,Yt.y,Rt,jt,ft+HALF_PI)}const Et=rThetaToXY(mt,ft,et,tt);if(o.lineTo(Et.x,Et.y),Nt>0){const Yt=rThetaToXY(mt,Vt,et,tt);o.arc(Yt.x,Yt.y,Nt,ft+HALF_PI,Vt+Math.PI)}const Jt=(ft-Nt/ut+(ht+Qt/ut))/2;if(o.arc(et,tt,ut,ft-Nt/ut,Jt,!0),o.arc(et,tt,ut,Jt,ht+Qt/ut,!0),Qt>0){const Yt=rThetaToXY(vt,yt,et,tt);o.arc(Yt.x,Yt.y,Qt,yt+Math.PI,ht-HALF_PI)}const Pt=rThetaToXY(At,ht,et,tt);if(o.lineTo(Pt.x,Pt.y),pt>0){const Yt=rThetaToXY(At,Bt,et,tt);o.arc(Yt.x,Yt.y,pt,ht-HALF_PI,Bt)}}else{o.moveTo(et,tt);const wt=Math.cos(Bt)*st+et,Et=Math.sin(Bt)*st+tt;o.lineTo(wt,Et);const Jt=Math.cos(jt)*st+et,Pt=Math.sin(jt)*st+tt;o.lineTo(Jt,Pt)}o.closePath()}function drawArc(o,s,_,j,$){const{fullCircles:_e,startAngle:et,circumference:tt}=s;let nt=s.endAngle;if(_e){pathArc(o,s,_,j,nt,$);for(let rt=0;rt<_e;++rt)o.fill();isNaN(tt)||(nt=et+(tt%TAU||TAU))}return pathArc(o,s,_,j,nt,$),o.fill(),nt}function drawBorder(o,s,_,j,$){const{fullCircles:_e,startAngle:et,circumference:tt,options:nt}=s,{borderWidth:rt,borderJoinStyle:it}=nt,st=nt.borderAlign==="inner";if(!rt)return;st?(o.lineWidth=rt*2,o.lineJoin=it||"round"):(o.lineWidth=rt,o.lineJoin=it||"bevel");let ut=s.endAngle;if(_e){pathArc(o,s,_,j,ut,$);for(let Ft=0;Ft<_e;++Ft)o.stroke();isNaN(tt)||(ut=et+(tt%TAU||TAU))}st&&clipArc(o,s,ut),_e||(pathArc(o,s,_,j,ut,$),o.stroke())}class ArcElement extends Element{constructor(s){super(),this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,s&&Object.assign(this,s)}inRange(s,_,j){const $=this.getProps(["x","y"],j),{angle:_e,distance:et}=getAngleFromPoint($,{x:s,y:_}),{startAngle:tt,endAngle:nt,innerRadius:rt,outerRadius:it,circumference:st}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],j),ut=this.options.spacing/2,dt=valueOrDefault(st,nt-tt)>=TAU||_angleBetween(_e,tt,nt),gt=_isBetween(et,rt+ut,it+ut);return dt&>}getCenterPoint(s){const{x:_,y:j,startAngle:$,endAngle:_e,innerRadius:et,outerRadius:tt}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],s),{offset:nt,spacing:rt}=this.options,it=($+_e)/2,st=(et+tt+rt+nt)/2;return{x:_+Math.cos(it)*st,y:j+Math.sin(it)*st}}tooltipPosition(s){return this.getCenterPoint(s)}draw(s){const{options:_,circumference:j}=this,$=(_.offset||0)/4,_e=(_.spacing||0)/2,et=_.circular;if(this.pixelMargin=_.borderAlign==="inner"?.33:0,this.fullCircles=j>TAU?Math.floor(j/TAU):0,j===0||this.innerRadius<0||this.outerRadius<0)return;s.save();const tt=(this.startAngle+this.endAngle)/2;s.translate(Math.cos(tt)*$,Math.sin(tt)*$);const nt=1-Math.sin(Math.min(PI,j||0)),rt=$*nt;s.fillStyle=_.backgroundColor,s.strokeStyle=_.borderColor,drawArc(s,this,rt,_e,et),drawBorder(s,this,rt,_e,et),s.restore()}}Xn(ArcElement,"id","arc"),Xn(ArcElement,"defaults",{borderAlign:"center",borderColor:"#fff",borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0}),Xn(ArcElement,"defaultRoutes",{backgroundColor:"backgroundColor"});function setStyle(o,s,_=s){o.lineCap=valueOrDefault(_.borderCapStyle,s.borderCapStyle),o.setLineDash(valueOrDefault(_.borderDash,s.borderDash)),o.lineDashOffset=valueOrDefault(_.borderDashOffset,s.borderDashOffset),o.lineJoin=valueOrDefault(_.borderJoinStyle,s.borderJoinStyle),o.lineWidth=valueOrDefault(_.borderWidth,s.borderWidth),o.strokeStyle=valueOrDefault(_.borderColor,s.borderColor)}function lineTo(o,s,_){o.lineTo(_.x,_.y)}function getLineMethod(o){return o.stepped?_steppedLineTo:o.tension||o.cubicInterpolationMode==="monotone"?_bezierCurveTo:lineTo}function pathVars(o,s,_={}){const j=o.length,{start:$=0,end:_e=j-1}=_,{start:et,end:tt}=s,nt=Math.max($,et),rt=Math.min(_e,tt),it=$tt&&_e>tt;return{count:j,start:nt,loop:s.loop,ilen:rt(et+(rt?tt-Rt:Rt))%_e,pt=()=>{gt!==Ut&&(o.lineTo(it,Ut),o.lineTo(it,gt),o.lineTo(it,ht))};for(nt&&(Ft=$[ft(0)],o.moveTo(Ft.x,Ft.y)),ut=0;ut<=tt;++ut){if(Ft=$[ft(ut)],Ft.skip)continue;const Rt=Ft.x,Qt=Ft.y,Nt=Rt|0;Nt===dt?(QtUt&&(Ut=Qt),it=(st*it+Rt)/++st):(pt(),o.lineTo(Rt,Qt),dt=Nt,st=0,gt=Ut=Qt),ht=Qt}pt()}function _getSegmentMethod(o){const s=o.options,_=s.borderDash&&s.borderDash.length;return!o._decimated&&!o._loop&&!s.tension&&s.cubicInterpolationMode!=="monotone"&&!s.stepped&&!_?fastPathSegment:pathSegment}function _getInterpolationMethod(o){return o.stepped?_steppedInterpolation:o.tension||o.cubicInterpolationMode==="monotone"?_bezierInterpolation:_pointInLine}function strokePathWithCache(o,s,_,j){let $=s._path;$||($=s._path=new Path2D,s.path($,_,j)&&$.closePath()),setStyle(o,s.options),o.stroke($)}function strokePathDirect(o,s,_,j){const{segments:$,options:_e}=s,et=_getSegmentMethod(s);for(const tt of $)setStyle(o,_e,tt.style),o.beginPath(),et(o,s,tt,{start:_,end:_+j-1})&&o.closePath(),o.stroke()}const usePath2D=typeof Path2D=="function";function draw(o,s,_,j){usePath2D&&!s.options.segment?strokePathWithCache(o,s,_,j):strokePathDirect(o,s,_,j)}class LineElement extends Element{constructor(s){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,s&&Object.assign(this,s)}updateControlPoints(s,_){const j=this.options;if((j.tension||j.cubicInterpolationMode==="monotone")&&!j.stepped&&!this._pointsUpdated){const $=j.spanGaps?this._loop:this._fullLoop;_updateBezierControlPoints(this._points,j,s,$,_),this._pointsUpdated=!0}}set points(s){this._points=s,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=_computeSegments(this,this.options.segment))}first(){const s=this.segments,_=this.points;return s.length&&_[s[0].start]}last(){const s=this.segments,_=this.points,j=s.length;return j&&_[s[j-1].end]}interpolate(s,_){const j=this.options,$=s[_],_e=this.points,et=_boundSegments(this,{property:_,start:$,end:$});if(!et.length)return;const tt=[],nt=_getInterpolationMethod(j);let rt,it;for(rt=0,it=et.length;rts!=="borderDash"&&s!=="fill"});function inRange$1(o,s,_,j){const $=o.options,{[_]:_e}=o.getProps([_],j);return Math.abs(s-_e)<$.radius+$.hitRadius}class PointElement extends Element{constructor(s){super(),this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,s&&Object.assign(this,s)}inRange(s,_,j){const $=this.options,{x:_e,y:et}=this.getProps(["x","y"],j);return Math.pow(s-_e,2)+Math.pow(_-et,2)o.replace("rgb(","rgba(").replace(")",", 0.5)"));function getBorderColor(o){return BORDER_COLORS[o%BORDER_COLORS.length]}function getBackgroundColor(o){return BACKGROUND_COLORS[o%BACKGROUND_COLORS.length]}function colorizeDefaultDataset(o,s){return o.borderColor=getBorderColor(s),o.backgroundColor=getBackgroundColor(s),++s}function colorizeDoughnutDataset(o,s){return o.backgroundColor=o.data.map(()=>getBorderColor(s++)),s}function colorizePolarAreaDataset(o,s){return o.backgroundColor=o.data.map(()=>getBackgroundColor(s++)),s}function getColorizer(o){let s=0;return(_,j)=>{const $=o.getDatasetMeta(j).controller;$ instanceof DoughnutController?s=colorizeDoughnutDataset(_,s):$ instanceof PolarAreaController?s=colorizePolarAreaDataset(_,s):$&&(s=colorizeDefaultDataset(_,s))}}function containsColorsDefinitions(o){let s;for(s in o)if(o[s].borderColor||o[s].backgroundColor)return!0;return!1}function containsColorsDefinition(o){return o&&(o.borderColor||o.backgroundColor)}var plugin_colors={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(o,s,_){if(!_.enabled)return;const{data:{datasets:j},options:$}=o.config,{elements:_e}=$;if(!_.forceOverride&&(containsColorsDefinitions(j)||containsColorsDefinition($)||_e&&containsColorsDefinitions(_e)))return;const et=getColorizer(o);j.forEach(et)}};function lttbDecimation(o,s,_,j,$){const _e=$.samples||j;if(_e>=_)return o.slice(s,s+_);const et=[],tt=(_-2)/(_e-2);let nt=0;const rt=s+_-1;let it=s,st,ut,Ft,dt,gt;for(et[nt++]=o[it],st=0;st<_e-2;st++){let Ut=0,ht=0,ft;const pt=Math.floor((st+1)*tt)+1+s,Rt=Math.min(Math.floor((st+2)*tt)+1,_)+s,Qt=Rt-pt;for(ft=pt;ftFt&&(Ft=dt,ut=o[ft],gt=ft);et[nt++]=ut,it=gt}return et[nt++]=o[rt],et}function minMaxDecimation(o,s,_,j){let $=0,_e=0,et,tt,nt,rt,it,st,ut,Ft,dt,gt;const Ut=[],ht=s+_-1,ft=o[s].x,Rt=o[ht].x-ft;for(et=s;etgt&&(gt=rt,ut=et),$=(_e*$+tt.x)/++_e;else{const Nt=et-1;if(!isNullOrUndef(st)&&!isNullOrUndef(ut)){const At=Math.min(st,ut),kt=Math.max(st,ut);At!==Ft&&At!==Nt&&Ut.push({...o[At],x:$}),kt!==Ft&&kt!==Nt&&Ut.push({...o[kt],x:$})}et>0&&Nt!==Ft&&Ut.push(o[Nt]),Ut.push(tt),it=Qt,_e=0,dt=gt=rt,st=ut=Ft=et}}return Ut}function cleanDecimatedDataset(o){if(o._decimated){const s=o._data;delete o._decimated,delete o._data,Object.defineProperty(o,"data",{configurable:!0,enumerable:!0,writable:!0,value:s})}}function cleanDecimatedData(o){o.data.datasets.forEach(s=>{cleanDecimatedDataset(s)})}function getStartAndCountOfVisiblePointsSimplified(o,s){const _=s.length;let j=0,$;const{iScale:_e}=o,{min:et,max:tt,minDefined:nt,maxDefined:rt}=_e.getUserBounds();return nt&&(j=_limitValue(_lookupByKey(s,_e.axis,et).lo,0,_-1)),rt?$=_limitValue(_lookupByKey(s,_e.axis,tt).hi+1,j,_)-j:$=_-j,{start:j,count:$}}var plugin_decimation={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(o,s,_)=>{if(!_.enabled){cleanDecimatedData(o);return}const j=o.width;o.data.datasets.forEach(($,_e)=>{const{_data:et,indexAxis:tt}=$,nt=o.getDatasetMeta(_e),rt=et||$.data;if(resolve([tt,o.options.indexAxis])==="y"||!nt.controller.supportsDecimation)return;const it=o.scales[nt.xAxisID];if(it.type!=="linear"&&it.type!=="time"||o.options.parsing)return;let{start:st,count:ut}=getStartAndCountOfVisiblePointsSimplified(nt,rt);const Ft=_.threshold||4*j;if(ut<=Ft){cleanDecimatedDataset($);return}isNullOrUndef(et)&&($._data=rt,delete $.data,Object.defineProperty($,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(gt){this._data=gt}}));let dt;switch(_.algorithm){case"lttb":dt=lttbDecimation(rt,st,ut,j,_);break;case"min-max":dt=minMaxDecimation(rt,st,ut,j);break;default:throw new Error(`Unsupported decimation algorithm '${_.algorithm}'`)}$._decimated=dt})},destroy(o){cleanDecimatedData(o)}};function _segments(o,s,_){const j=o.segments,$=o.points,_e=s.points,et=[];for(const tt of j){let{start:nt,end:rt}=tt;rt=_findSegmentEnd(nt,rt,$);const it=_getBounds(_,$[nt],$[rt],tt.loop);if(!s.segments){et.push({source:tt,target:it,start:$[nt],end:$[rt]});continue}const st=_boundSegments(s,it);for(const ut of st){const Ft=_getBounds(_,_e[ut.start],_e[ut.end],ut.loop),dt=_boundSegment(tt,$,Ft);for(const gt of dt)et.push({source:gt,target:ut,start:{[_]:_getEdge(it,Ft,"start",Math.max)},end:{[_]:_getEdge(it,Ft,"end",Math.min)}})}}return et}function _getBounds(o,s,_,j){if(j)return;let $=s[o],_e=_[o];return o==="angle"&&($=_normalizeAngle($),_e=_normalizeAngle(_e)),{property:o,start:$,end:_e}}function _pointsFromSegments(o,s){const{x:_=null,y:j=null}=o||{},$=s.points,_e=[];return s.segments.forEach(({start:et,end:tt})=>{tt=_findSegmentEnd(et,tt,$);const nt=$[et],rt=$[tt];j!==null?(_e.push({x:nt.x,y:j}),_e.push({x:rt.x,y:j})):_!==null&&(_e.push({x:_,y:nt.y}),_e.push({x:_,y:rt.y}))}),_e}function _findSegmentEnd(o,s,_){for(;s>o;s--){const j=_[s];if(!isNaN(j.x)&&!isNaN(j.y))break}return s}function _getEdge(o,s,_,j){return o&&s?j(o[_],s[_]):o?o[_]:s?s[_]:0}function _createBoundaryLine(o,s){let _=[],j=!1;return isArray(o)?(j=!0,_=o):_=_pointsFromSegments(o,s),_.length?new LineElement({points:_,options:{tension:0},_loop:j,_fullLoop:j}):null}function _shouldApplyFill(o){return o&&o.fill!==!1}function _resolveTarget(o,s,_){let $=o[s].fill;const _e=[s];let et;if(!_)return $;for(;$!==!1&&_e.indexOf($)===-1;){if(!isNumberFinite($))return $;if(et=o[$],!et)return!1;if(et.visible)return $;_e.push($),$=et.fill}return!1}function _decodeFill(o,s,_){const j=parseFillOption(o);if(isObject(j))return isNaN(j.value)?!1:j;let $=parseFloat(j);return isNumberFinite($)&&Math.floor($)===$?decodeTargetIndex(j[0],s,$,_):["origin","start","end","stack","shape"].indexOf(j)>=0&&j}function decodeTargetIndex(o,s,_,j){return(o==="-"||o==="+")&&(_=s+_),_===s||_<0||_>=j?!1:_}function _getTargetPixel(o,s){let _=null;return o==="start"?_=s.bottom:o==="end"?_=s.top:isObject(o)?_=s.getPixelForValue(o.value):s.getBasePixel&&(_=s.getBasePixel()),_}function _getTargetValue(o,s,_){let j;return o==="start"?j=_:o==="end"?j=s.options.reverse?s.min:s.max:isObject(o)?j=o.value:j=s.getBaseValue(),j}function parseFillOption(o){const s=o.options,_=s.fill;let j=valueOrDefault(_&&_.target,_);return j===void 0&&(j=!!s.backgroundColor),j===!1||j===null?!1:j===!0?"origin":j}function _buildStackLine(o){const{scale:s,index:_,line:j}=o,$=[],_e=j.segments,et=j.points,tt=getLinesBelow(s,_);tt.push(_createBoundaryLine({x:null,y:s.bottom},j));for(let nt=0;nt<_e.length;nt++){const rt=_e[nt];for(let it=rt.start;it<=rt.end;it++)addPointsBelow($,et[it],tt)}return new LineElement({points:$,options:{}})}function getLinesBelow(o,s){const _=[],j=o.getMatchingVisibleMetas("line");for(let $=0;$=0;--et){const tt=$[et].$filler;tt&&(tt.line.updateControlPoints(_e,tt.axis),j&&tt.fill&&_drawfill(o.ctx,tt,_e))}},beforeDatasetsDraw(o,s,_){if(_.drawTime!=="beforeDatasetsDraw")return;const j=o.getSortedVisibleDatasetMetas();for(let $=j.length-1;$>=0;--$){const _e=j[$].$filler;_shouldApplyFill(_e)&&_drawfill(o.ctx,_e,o.chartArea)}},beforeDatasetDraw(o,s,_){const j=s.meta.$filler;!_shouldApplyFill(j)||_.drawTime!=="beforeDatasetDraw"||_drawfill(o.ctx,j,o.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const getBoxSize=(o,s)=>{let{boxHeight:_=s,boxWidth:j=s}=o;return o.usePointStyle&&(_=Math.min(_,s),j=o.pointStyleWidth||Math.min(j,s)),{boxWidth:j,boxHeight:_,itemHeight:Math.max(s,_)}},itemsEqual=(o,s)=>o!==null&&s!==null&&o.datasetIndex===s.datasetIndex&&o.index===s.index;class Legend extends Element{constructor(s){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=s.chart,this.options=s.options,this.ctx=s.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(s,_,j){this.maxWidth=s,this.maxHeight=_,this._margins=j,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const s=this.options.labels||{};let _=callback(s.generateLabels,[this.chart],this)||[];s.filter&&(_=_.filter(j=>s.filter(j,this.chart.data))),s.sort&&(_=_.sort((j,$)=>s.sort(j,$,this.chart.data))),this.options.reverse&&_.reverse(),this.legendItems=_}fit(){const{options:s,ctx:_}=this;if(!s.display){this.width=this.height=0;return}const j=s.labels,$=toFont(j.font),_e=$.size,et=this._computeTitleHeight(),{boxWidth:tt,itemHeight:nt}=getBoxSize(j,_e);let rt,it;_.font=$.string,this.isHorizontal()?(rt=this.maxWidth,it=this._fitRows(et,_e,tt,nt)+10):(it=this.maxHeight,rt=this._fitCols(et,$,tt,nt)+10),this.width=Math.min(rt,s.maxWidth||this.maxWidth),this.height=Math.min(it,s.maxHeight||this.maxHeight)}_fitRows(s,_,j,$){const{ctx:_e,maxWidth:et,options:{labels:{padding:tt}}}=this,nt=this.legendHitBoxes=[],rt=this.lineWidths=[0],it=$+tt;let st=s;_e.textAlign="left",_e.textBaseline="middle";let ut=-1,Ft=-it;return this.legendItems.forEach((dt,gt)=>{const Ut=j+_/2+_e.measureText(dt.text).width;(gt===0||rt[rt.length-1]+Ut+2*tt>et)&&(st+=it,rt[rt.length-(gt>0?0:1)]=0,Ft+=it,ut++),nt[gt]={left:0,top:Ft,row:ut,width:Ut,height:$},rt[rt.length-1]+=Ut+tt}),st}_fitCols(s,_,j,$){const{ctx:_e,maxHeight:et,options:{labels:{padding:tt}}}=this,nt=this.legendHitBoxes=[],rt=this.columnSizes=[],it=et-s;let st=tt,ut=0,Ft=0,dt=0,gt=0;return this.legendItems.forEach((Ut,ht)=>{const{itemWidth:ft,itemHeight:pt}=calculateItemSize(j,_,_e,Ut,$);ht>0&&Ft+pt+2*tt>it&&(st+=ut+tt,rt.push({width:ut,height:Ft}),dt+=ut+tt,gt++,ut=Ft=0),nt[ht]={left:dt,top:Ft,col:gt,width:ft,height:pt},ut=Math.max(ut,ft),Ft+=pt+tt}),st+=ut,rt.push({width:ut,height:Ft}),st}adjustHitBoxes(){if(!this.options.display)return;const s=this._computeTitleHeight(),{legendHitBoxes:_,options:{align:j,labels:{padding:$},rtl:_e}}=this,et=getRtlAdapter(_e,this.left,this.width);if(this.isHorizontal()){let tt=0,nt=_alignStartEnd(j,this.left+$,this.right-this.lineWidths[tt]);for(const rt of _)tt!==rt.row&&(tt=rt.row,nt=_alignStartEnd(j,this.left+$,this.right-this.lineWidths[tt])),rt.top+=this.top+s+$,rt.left=et.leftForLtr(et.x(nt),rt.width),nt+=rt.width+$}else{let tt=0,nt=_alignStartEnd(j,this.top+s+$,this.bottom-this.columnSizes[tt].height);for(const rt of _)rt.col!==tt&&(tt=rt.col,nt=_alignStartEnd(j,this.top+s+$,this.bottom-this.columnSizes[tt].height)),rt.top=nt,rt.left+=this.left+$,rt.left=et.leftForLtr(et.x(rt.left),rt.width),nt+=rt.height+$}}isHorizontal(){return this.options.position==="top"||this.options.position==="bottom"}draw(){if(this.options.display){const s=this.ctx;clipArea(s,this),this._draw(),unclipArea(s)}}_draw(){const{options:s,columnSizes:_,lineWidths:j,ctx:$}=this,{align:_e,labels:et}=s,tt=defaults.color,nt=getRtlAdapter(s.rtl,this.left,this.width),rt=toFont(et.font),{padding:it}=et,st=rt.size,ut=st/2;let Ft;this.drawTitle(),$.textAlign=nt.textAlign("left"),$.textBaseline="middle",$.lineWidth=.5,$.font=rt.string;const{boxWidth:dt,boxHeight:gt,itemHeight:Ut}=getBoxSize(et,st),ht=function(Nt,At,kt){if(isNaN(dt)||dt<=0||isNaN(gt)||gt<0)return;$.save();const Bt=valueOrDefault(kt.lineWidth,1);if($.fillStyle=valueOrDefault(kt.fillStyle,tt),$.lineCap=valueOrDefault(kt.lineCap,"butt"),$.lineDashOffset=valueOrDefault(kt.lineDashOffset,0),$.lineJoin=valueOrDefault(kt.lineJoin,"miter"),$.lineWidth=Bt,$.strokeStyle=valueOrDefault(kt.strokeStyle,tt),$.setLineDash(valueOrDefault(kt.lineDash,[])),et.usePointStyle){const jt={radius:gt*Math.SQRT2/2,pointStyle:kt.pointStyle,rotation:kt.rotation,borderWidth:Bt},vt=nt.xPlus(Nt,dt/2),mt=At+ut;drawPointLegend($,jt,vt,mt,et.pointStyleWidth&&dt)}else{const jt=At+Math.max((st-gt)/2,0),vt=nt.leftForLtr(Nt,dt),mt=toTRBLCorners(kt.borderRadius);$.beginPath(),Object.values(mt).some(yt=>yt!==0)?addRoundedRectPath($,{x:vt,y:jt,w:dt,h:gt,radius:mt}):$.rect(vt,jt,dt,gt),$.fill(),Bt!==0&&$.stroke()}$.restore()},ft=function(Nt,At,kt){renderText($,kt.text,Nt,At+Ut/2,rt,{strikethrough:kt.hidden,textAlign:nt.textAlign(kt.textAlign)})},pt=this.isHorizontal(),Rt=this._computeTitleHeight();pt?Ft={x:_alignStartEnd(_e,this.left+it,this.right-j[0]),y:this.top+it+Rt,line:0}:Ft={x:this.left+it,y:_alignStartEnd(_e,this.top+Rt+it,this.bottom-_[0].height),line:0},overrideTextDirection(this.ctx,s.textDirection);const Qt=Ut+it;this.legendItems.forEach((Nt,At)=>{$.strokeStyle=Nt.fontColor,$.fillStyle=Nt.fontColor;const kt=$.measureText(Nt.text).width,Bt=nt.textAlign(Nt.textAlign||(Nt.textAlign=et.textAlign)),jt=dt+ut+kt;let vt=Ft.x,mt=Ft.y;nt.setWidth(this.width),pt?At>0&&vt+jt+it>this.right&&(mt=Ft.y+=Qt,Ft.line++,vt=Ft.x=_alignStartEnd(_e,this.left+it,this.right-j[Ft.line])):At>0&&mt+Qt>this.bottom&&(vt=Ft.x=vt+_[Ft.line].width+it,Ft.line++,mt=Ft.y=_alignStartEnd(_e,this.top+Rt+it,this.bottom-_[Ft.line].height));const yt=nt.x(vt);if(ht(yt,mt,Nt),vt=_textX(Bt,vt+dt+ut,pt?vt+jt:this.right,s.rtl),ft(nt.x(vt),mt,Nt),pt)Ft.x+=jt+it;else if(typeof Nt.text!="string"){const Vt=rt.lineHeight;Ft.y+=calculateLegendItemHeight(Nt,Vt)}else Ft.y+=Qt}),restoreTextDirection(this.ctx,s.textDirection)}drawTitle(){const s=this.options,_=s.title,j=toFont(_.font),$=toPadding(_.padding);if(!_.display)return;const _e=getRtlAdapter(s.rtl,this.left,this.width),et=this.ctx,tt=_.position,nt=j.size/2,rt=$.top+nt;let it,st=this.left,ut=this.width;if(this.isHorizontal())ut=Math.max(...this.lineWidths),it=this.top+rt,st=_alignStartEnd(s.align,st,this.right-ut);else{const dt=this.columnSizes.reduce((gt,Ut)=>Math.max(gt,Ut.height),0);it=rt+_alignStartEnd(s.align,this.top,this.bottom-dt-s.labels.padding-this._computeTitleHeight())}const Ft=_alignStartEnd(tt,st,st+ut);et.textAlign=_e.textAlign(_toLeftRightCenter(tt)),et.textBaseline="middle",et.strokeStyle=_.color,et.fillStyle=_.color,et.font=j.string,renderText(et,_.text,Ft,it,j)}_computeTitleHeight(){const s=this.options.title,_=toFont(s.font),j=toPadding(s.padding);return s.display?_.lineHeight+j.height:0}_getLegendItemAt(s,_){let j,$,_e;if(_isBetween(s,this.left,this.right)&&_isBetween(_,this.top,this.bottom)){for(_e=this.legendHitBoxes,j=0;j<_e.length;++j)if($=_e[j],_isBetween(s,$.left,$.left+$.width)&&_isBetween(_,$.top,$.top+$.height))return this.legendItems[j]}return null}handleEvent(s){const _=this.options;if(!isListened(s.type,_))return;const j=this._getLegendItemAt(s.x,s.y);if(s.type==="mousemove"||s.type==="mouseout"){const $=this._hoveredItem,_e=itemsEqual($,j);$&&!_e&&callback(_.onLeave,[s,$,this],this),this._hoveredItem=j,j&&!_e&&callback(_.onHover,[s,j,this],this)}else j&&callback(_.onClick,[s,j,this],this)}}function calculateItemSize(o,s,_,j,$){const _e=calculateItemWidth(j,o,s,_),et=calculateItemHeight($,j,s.lineHeight);return{itemWidth:_e,itemHeight:et}}function calculateItemWidth(o,s,_,j){let $=o.text;return $&&typeof $!="string"&&($=$.reduce((_e,et)=>_e.length>et.length?_e:et)),s+_.size/2+j.measureText($).width}function calculateItemHeight(o,s,_){let j=o;return typeof s.text!="string"&&(j=calculateLegendItemHeight(s,_)),j}function calculateLegendItemHeight(o,s){const _=o.text?o.text.length+.5:0;return s*_}function isListened(o,s){return!!((o==="mousemove"||o==="mouseout")&&(s.onHover||s.onLeave)||s.onClick&&(o==="click"||o==="mouseup"))}var plugin_legend={id:"legend",_element:Legend,start(o,s,_){const j=o.legend=new Legend({ctx:o.ctx,options:_,chart:o});layouts.configure(o,j,_),layouts.addBox(o,j)},stop(o){layouts.removeBox(o,o.legend),delete o.legend},beforeUpdate(o,s,_){const j=o.legend;layouts.configure(o,j,_),j.options=_},afterUpdate(o){const s=o.legend;s.buildLabels(),s.adjustHitBoxes()},afterEvent(o,s){s.replay||o.legend.handleEvent(s.event)},defaults:{display:!0,position:"top",align:"center",fullSize:!0,reverse:!1,weight:1e3,onClick(o,s,_){const j=s.datasetIndex,$=_.chart;$.isDatasetVisible(j)?($.hide(j),s.hidden=!0):($.show(j),s.hidden=!1)},onHover:null,onLeave:null,labels:{color:o=>o.chart.options.color,boxWidth:40,padding:10,generateLabels(o){const s=o.data.datasets,{labels:{usePointStyle:_,pointStyle:j,textAlign:$,color:_e,useBorderRadius:et,borderRadius:tt}}=o.legend.options;return o._getSortedDatasetMetas().map(nt=>{const rt=nt.controller.getStyle(_?0:void 0),it=toPadding(rt.borderWidth);return{text:s[nt.index].label,fillStyle:rt.backgroundColor,fontColor:_e,hidden:!nt.visible,lineCap:rt.borderCapStyle,lineDash:rt.borderDash,lineDashOffset:rt.borderDashOffset,lineJoin:rt.borderJoinStyle,lineWidth:(it.width+it.height)/4,strokeStyle:rt.borderColor,pointStyle:j||rt.pointStyle,rotation:rt.rotation,textAlign:$||rt.textAlign,borderRadius:et&&(tt||rt.borderRadius),datasetIndex:nt.index}},this)}},title:{color:o=>o.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:o=>!o.startsWith("on"),labels:{_scriptable:o=>!["generateLabels","filter","sort"].includes(o)}}};class Title extends Element{constructor(s){super(),this.chart=s.chart,this.options=s.options,this.ctx=s.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(s,_){const j=this.options;if(this.left=0,this.top=0,!j.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=s,this.height=this.bottom=_;const $=isArray(j.text)?j.text.length:1;this._padding=toPadding(j.padding);const _e=$*toFont(j.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=_e:this.width=_e}isHorizontal(){const s=this.options.position;return s==="top"||s==="bottom"}_drawArgs(s){const{top:_,left:j,bottom:$,right:_e,options:et}=this,tt=et.align;let nt=0,rt,it,st;return this.isHorizontal()?(it=_alignStartEnd(tt,j,_e),st=_+s,rt=_e-j):(et.position==="left"?(it=j+s,st=_alignStartEnd(tt,$,_),nt=PI*-.5):(it=_e-s,st=_alignStartEnd(tt,_,$),nt=PI*.5),rt=$-_),{titleX:it,titleY:st,maxWidth:rt,rotation:nt}}draw(){const s=this.ctx,_=this.options;if(!_.display)return;const j=toFont(_.font),_e=j.lineHeight/2+this._padding.top,{titleX:et,titleY:tt,maxWidth:nt,rotation:rt}=this._drawArgs(_e);renderText(s,_.text,0,0,j,{color:_.color,maxWidth:nt,rotation:rt,textAlign:_toLeftRightCenter(_.align),textBaseline:"middle",translation:[et,tt]})}}function createTitle(o,s){const _=new Title({ctx:o.ctx,options:s,chart:o});layouts.configure(o,_,s),layouts.addBox(o,_),o.titleBlock=_}var plugin_title={id:"title",_element:Title,start(o,s,_){createTitle(o,_)},stop(o){const s=o.titleBlock;layouts.removeBox(o,s),delete o.titleBlock},beforeUpdate(o,s,_){const j=o.titleBlock;layouts.configure(o,j,_),j.options=_},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const map=new WeakMap;var plugin_subtitle={id:"subtitle",start(o,s,_){const j=new Title({ctx:o.ctx,options:_,chart:o});layouts.configure(o,j,_),layouts.addBox(o,j),map.set(o,j)},stop(o){layouts.removeBox(o,map.get(o)),map.delete(o)},beforeUpdate(o,s,_){const j=map.get(o);layouts.configure(o,j,_),j.options=_},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const positioners={average(o){if(!o.length)return!1;let s,_,j=0,$=0,_e=0;for(s=0,_=o.length;s<_;++s){const et=o[s].element;if(et&&et.hasValue()){const tt=et.tooltipPosition();j+=tt.x,$+=tt.y,++_e}}return{x:j/_e,y:$/_e}},nearest(o,s){if(!o.length)return!1;let _=s.x,j=s.y,$=Number.POSITIVE_INFINITY,_e,et,tt;for(_e=0,et=o.length;_e-1?o.split(` +`):o}function createTooltipItem(o,s){const{element:_,datasetIndex:j,index:$}=s,_e=o.getDatasetMeta(j).controller,{label:et,value:tt}=_e.getLabelAndValue($);return{chart:o,label:et,parsed:_e.getParsed($),raw:o.data.datasets[j].data[$],formattedValue:tt,dataset:_e.getDataset(),dataIndex:$,datasetIndex:j,element:_}}function getTooltipSize(o,s){const _=o.chart.ctx,{body:j,footer:$,title:_e}=o,{boxWidth:et,boxHeight:tt}=s,nt=toFont(s.bodyFont),rt=toFont(s.titleFont),it=toFont(s.footerFont),st=_e.length,ut=$.length,Ft=j.length,dt=toPadding(s.padding);let gt=dt.height,Ut=0,ht=j.reduce((Rt,Qt)=>Rt+Qt.before.length+Qt.lines.length+Qt.after.length,0);if(ht+=o.beforeBody.length+o.afterBody.length,st&&(gt+=st*rt.lineHeight+(st-1)*s.titleSpacing+s.titleMarginBottom),ht){const Rt=s.displayColors?Math.max(tt,nt.lineHeight):nt.lineHeight;gt+=Ft*Rt+(ht-Ft)*nt.lineHeight+(ht-1)*s.bodySpacing}ut&&(gt+=s.footerMarginTop+ut*it.lineHeight+(ut-1)*s.footerSpacing);let ft=0;const pt=function(Rt){Ut=Math.max(Ut,_.measureText(Rt).width+ft)};return _.save(),_.font=rt.string,each(o.title,pt),_.font=nt.string,each(o.beforeBody.concat(o.afterBody),pt),ft=s.displayColors?et+2+s.boxPadding:0,each(j,Rt=>{each(Rt.before,pt),each(Rt.lines,pt),each(Rt.after,pt)}),ft=0,_.font=it.string,each(o.footer,pt),_.restore(),Ut+=dt.width,{width:Ut,height:gt}}function determineYAlign(o,s){const{y:_,height:j}=s;return _o.height-j/2?"bottom":"center"}function doesNotFitWithAlign(o,s,_,j){const{x:$,width:_e}=j,et=_.caretSize+_.caretPadding;if(o==="left"&&$+_e+et>s.width||o==="right"&&$-_e-et<0)return!0}function determineXAlign(o,s,_,j){const{x:$,width:_e}=_,{width:et,chartArea:{left:tt,right:nt}}=o;let rt="center";return j==="center"?rt=$<=(tt+nt)/2?"left":"right":$<=_e/2?rt="left":$>=et-_e/2&&(rt="right"),doesNotFitWithAlign(rt,o,s,_)&&(rt="center"),rt}function determineAlignment(o,s,_){const j=_.yAlign||s.yAlign||determineYAlign(o,_);return{xAlign:_.xAlign||s.xAlign||determineXAlign(o,s,_,j),yAlign:j}}function alignX(o,s){let{x:_,width:j}=o;return s==="right"?_-=j:s==="center"&&(_-=j/2),_}function alignY(o,s,_){let{y:j,height:$}=o;return s==="top"?j+=_:s==="bottom"?j-=$+_:j-=$/2,j}function getBackgroundPoint(o,s,_,j){const{caretSize:$,caretPadding:_e,cornerRadius:et}=o,{xAlign:tt,yAlign:nt}=_,rt=$+_e,{topLeft:it,topRight:st,bottomLeft:ut,bottomRight:Ft}=toTRBLCorners(et);let dt=alignX(s,tt);const gt=alignY(s,nt,rt);return nt==="center"?tt==="left"?dt+=rt:tt==="right"&&(dt-=rt):tt==="left"?dt-=Math.max(it,ut)+$:tt==="right"&&(dt+=Math.max(st,Ft)+$),{x:_limitValue(dt,0,j.width-s.width),y:_limitValue(gt,0,j.height-s.height)}}function getAlignedX(o,s,_){const j=toPadding(_.padding);return s==="center"?o.x+o.width/2:s==="right"?o.x+o.width-j.right:o.x+j.left}function getBeforeAfterBodyLines(o){return pushOrConcat([],splitNewlines(o))}function createTooltipContext(o,s,_){return createContext(o,{tooltip:s,tooltipItems:_,type:"tooltip"})}function overrideCallbacks(o,s){const _=s&&s.dataset&&s.dataset.tooltip&&s.dataset.tooltip.callbacks;return _?o.override(_):o}const defaultCallbacks={beforeTitle:noop,title(o){if(o.length>0){const s=o[0],_=s.chart.data.labels,j=_?_.length:0;if(this&&this.options&&this.options.mode==="dataset")return s.dataset.label||"";if(s.label)return s.label;if(j>0&&s.dataIndex"u"?defaultCallbacks[s].call(_,j):$}class Tooltip extends Element{constructor(s){super(),this.opacity=0,this._active=[],this._eventPosition=void 0,this._size=void 0,this._cachedAnimations=void 0,this._tooltipItems=[],this.$animations=void 0,this.$context=void 0,this.chart=s.chart,this.options=s.options,this.dataPoints=void 0,this.title=void 0,this.beforeBody=void 0,this.body=void 0,this.afterBody=void 0,this.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(s){this.options=s,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const s=this._cachedAnimations;if(s)return s;const _=this.chart,j=this.options.setContext(this.getContext()),$=j.enabled&&_.options.animation&&j.animations,_e=new Animations(this.chart,$);return $._cacheable&&(this._cachedAnimations=Object.freeze(_e)),_e}getContext(){return this.$context||(this.$context=createTooltipContext(this.chart.getContext(),this,this._tooltipItems))}getTitle(s,_){const{callbacks:j}=_,$=invokeCallbackWithFallback(j,"beforeTitle",this,s),_e=invokeCallbackWithFallback(j,"title",this,s),et=invokeCallbackWithFallback(j,"afterTitle",this,s);let tt=[];return tt=pushOrConcat(tt,splitNewlines($)),tt=pushOrConcat(tt,splitNewlines(_e)),tt=pushOrConcat(tt,splitNewlines(et)),tt}getBeforeBody(s,_){return getBeforeAfterBodyLines(invokeCallbackWithFallback(_.callbacks,"beforeBody",this,s))}getBody(s,_){const{callbacks:j}=_,$=[];return each(s,_e=>{const et={before:[],lines:[],after:[]},tt=overrideCallbacks(j,_e);pushOrConcat(et.before,splitNewlines(invokeCallbackWithFallback(tt,"beforeLabel",this,_e))),pushOrConcat(et.lines,invokeCallbackWithFallback(tt,"label",this,_e)),pushOrConcat(et.after,splitNewlines(invokeCallbackWithFallback(tt,"afterLabel",this,_e))),$.push(et)}),$}getAfterBody(s,_){return getBeforeAfterBodyLines(invokeCallbackWithFallback(_.callbacks,"afterBody",this,s))}getFooter(s,_){const{callbacks:j}=_,$=invokeCallbackWithFallback(j,"beforeFooter",this,s),_e=invokeCallbackWithFallback(j,"footer",this,s),et=invokeCallbackWithFallback(j,"afterFooter",this,s);let tt=[];return tt=pushOrConcat(tt,splitNewlines($)),tt=pushOrConcat(tt,splitNewlines(_e)),tt=pushOrConcat(tt,splitNewlines(et)),tt}_createItems(s){const _=this._active,j=this.chart.data,$=[],_e=[],et=[];let tt=[],nt,rt;for(nt=0,rt=_.length;nts.filter(it,st,ut,j))),s.itemSort&&(tt=tt.sort((it,st)=>s.itemSort(it,st,j))),each(tt,it=>{const st=overrideCallbacks(s.callbacks,it);$.push(invokeCallbackWithFallback(st,"labelColor",this,it)),_e.push(invokeCallbackWithFallback(st,"labelPointStyle",this,it)),et.push(invokeCallbackWithFallback(st,"labelTextColor",this,it))}),this.labelColors=$,this.labelPointStyles=_e,this.labelTextColors=et,this.dataPoints=tt,tt}update(s,_){const j=this.options.setContext(this.getContext()),$=this._active;let _e,et=[];if(!$.length)this.opacity!==0&&(_e={opacity:0});else{const tt=positioners[j.position].call(this,$,this._eventPosition);et=this._createItems(j),this.title=this.getTitle(et,j),this.beforeBody=this.getBeforeBody(et,j),this.body=this.getBody(et,j),this.afterBody=this.getAfterBody(et,j),this.footer=this.getFooter(et,j);const nt=this._size=getTooltipSize(this,j),rt=Object.assign({},tt,nt),it=determineAlignment(this.chart,j,rt),st=getBackgroundPoint(j,rt,it,this.chart);this.xAlign=it.xAlign,this.yAlign=it.yAlign,_e={opacity:1,x:st.x,y:st.y,width:nt.width,height:nt.height,caretX:tt.x,caretY:tt.y}}this._tooltipItems=et,this.$context=void 0,_e&&this._resolveAnimations().update(this,_e),s&&j.external&&j.external.call(this,{chart:this.chart,tooltip:this,replay:_})}drawCaret(s,_,j,$){const _e=this.getCaretPosition(s,j,$);_.lineTo(_e.x1,_e.y1),_.lineTo(_e.x2,_e.y2),_.lineTo(_e.x3,_e.y3)}getCaretPosition(s,_,j){const{xAlign:$,yAlign:_e}=this,{caretSize:et,cornerRadius:tt}=j,{topLeft:nt,topRight:rt,bottomLeft:it,bottomRight:st}=toTRBLCorners(tt),{x:ut,y:Ft}=s,{width:dt,height:gt}=_;let Ut,ht,ft,pt,Rt,Qt;return _e==="center"?(Rt=Ft+gt/2,$==="left"?(Ut=ut,ht=Ut-et,pt=Rt+et,Qt=Rt-et):(Ut=ut+dt,ht=Ut+et,pt=Rt-et,Qt=Rt+et),ft=Ut):($==="left"?ht=ut+Math.max(nt,it)+et:$==="right"?ht=ut+dt-Math.max(rt,st)-et:ht=this.caretX,_e==="top"?(pt=Ft,Rt=pt-et,Ut=ht-et,ft=ht+et):(pt=Ft+gt,Rt=pt+et,Ut=ht+et,ft=ht-et),Qt=pt),{x1:Ut,x2:ht,x3:ft,y1:pt,y2:Rt,y3:Qt}}drawTitle(s,_,j){const $=this.title,_e=$.length;let et,tt,nt;if(_e){const rt=getRtlAdapter(j.rtl,this.x,this.width);for(s.x=getAlignedX(this,j.titleAlign,j),_.textAlign=rt.textAlign(j.titleAlign),_.textBaseline="middle",et=toFont(j.titleFont),tt=j.titleSpacing,_.fillStyle=j.titleColor,_.font=et.string,nt=0;nt<_e;++nt)_.fillText($[nt],rt.x(s.x),s.y+et.lineHeight/2),s.y+=et.lineHeight+tt,nt+1===_e&&(s.y+=j.titleMarginBottom-tt)}}_drawColorBox(s,_,j,$,_e){const et=this.labelColors[j],tt=this.labelPointStyles[j],{boxHeight:nt,boxWidth:rt,boxPadding:it}=_e,st=toFont(_e.bodyFont),ut=getAlignedX(this,"left",_e),Ft=$.x(ut),dt=ntpt!==0)?(s.beginPath(),s.fillStyle=_e.multiKeyBackground,addRoundedRectPath(s,{x:Ut,y:gt,w:rt,h:nt,radius:ft}),s.fill(),s.stroke(),s.fillStyle=et.backgroundColor,s.beginPath(),addRoundedRectPath(s,{x:ht,y:gt+1,w:rt-2,h:nt-2,radius:ft}),s.fill()):(s.fillStyle=_e.multiKeyBackground,s.fillRect(Ut,gt,rt,nt),s.strokeRect(Ut,gt,rt,nt),s.fillStyle=et.backgroundColor,s.fillRect(ht,gt+1,rt-2,nt-2))}s.fillStyle=this.labelTextColors[j]}drawBody(s,_,j){const{body:$}=this,{bodySpacing:_e,bodyAlign:et,displayColors:tt,boxHeight:nt,boxWidth:rt,boxPadding:it}=j,st=toFont(j.bodyFont);let ut=st.lineHeight,Ft=0;const dt=getRtlAdapter(j.rtl,this.x,this.width),gt=function(kt){_.fillText(kt,dt.x(s.x+Ft),s.y+ut/2),s.y+=ut+_e},Ut=dt.textAlign(et);let ht,ft,pt,Rt,Qt,Nt,At;for(_.textAlign=et,_.textBaseline="middle",_.font=st.string,s.x=getAlignedX(this,Ut,j),_.fillStyle=j.bodyColor,each(this.beforeBody,gt),Ft=tt&&Ut!=="right"?et==="center"?rt/2+it:rt+2+it:0,Rt=0,Nt=$.length;Rt0&&_.stroke()}_updateAnimationTarget(s){const _=this.chart,j=this.$animations,$=j&&j.x,_e=j&&j.y;if($||_e){const et=positioners[s.position].call(this,this._active,this._eventPosition);if(!et)return;const tt=this._size=getTooltipSize(this,s),nt=Object.assign({},et,this._size),rt=determineAlignment(_,s,nt),it=getBackgroundPoint(s,nt,rt,_);($._to!==it.x||_e._to!==it.y)&&(this.xAlign=rt.xAlign,this.yAlign=rt.yAlign,this.width=tt.width,this.height=tt.height,this.caretX=et.x,this.caretY=et.y,this._resolveAnimations().update(this,it))}}_willRender(){return!!this.opacity}draw(s){const _=this.options.setContext(this.getContext());let j=this.opacity;if(!j)return;this._updateAnimationTarget(_);const $={width:this.width,height:this.height},_e={x:this.x,y:this.y};j=Math.abs(j)<.001?0:j;const et=toPadding(_.padding),tt=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;_.enabled&&tt&&(s.save(),s.globalAlpha=j,this.drawBackground(_e,s,$,_),overrideTextDirection(s,_.textDirection),_e.y+=et.top,this.drawTitle(_e,s,_),this.drawBody(_e,s,_),this.drawFooter(_e,s,_),restoreTextDirection(s,_.textDirection),s.restore())}getActiveElements(){return this._active||[]}setActiveElements(s,_){const j=this._active,$=s.map(({datasetIndex:tt,index:nt})=>{const rt=this.chart.getDatasetMeta(tt);if(!rt)throw new Error("Cannot find a dataset at index "+tt);return{datasetIndex:tt,element:rt.data[nt],index:nt}}),_e=!_elementsEqual(j,$),et=this._positionChanged($,_);(_e||et)&&(this._active=$,this._eventPosition=_,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(s,_,j=!0){if(_&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const $=this.options,_e=this._active||[],et=this._getActiveElements(s,_e,_,j),tt=this._positionChanged(et,s),nt=_||!_elementsEqual(et,_e)||tt;return nt&&(this._active=et,($.enabled||$.external)&&(this._eventPosition={x:s.x,y:s.y},this.update(!0,_))),nt}_getActiveElements(s,_,j,$){const _e=this.options;if(s.type==="mouseout")return[];if(!$)return _;const et=this.chart.getElementsAtEventForMode(s,_e.mode,_e,j);return _e.reverse&&et.reverse(),et}_positionChanged(s,_){const{caretX:j,caretY:$,options:_e}=this,et=positioners[_e.position].call(this,s,_);return et!==!1&&(j!==et.x||$!==et.y)}}Xn(Tooltip,"positioners",positioners);var plugin_tooltip={id:"tooltip",_element:Tooltip,positioners,afterInit(o,s,_){_&&(o.tooltip=new Tooltip({chart:o,options:_}))},beforeUpdate(o,s,_){o.tooltip&&o.tooltip.initialize(_)},reset(o,s,_){o.tooltip&&o.tooltip.initialize(_)},afterDraw(o){const s=o.tooltip;if(s&&s._willRender()){const _={tooltip:s};if(o.notifyPlugins("beforeTooltipDraw",{..._,cancelable:!0})===!1)return;s.draw(o.ctx),o.notifyPlugins("afterTooltipDraw",_)}},afterEvent(o,s){if(o.tooltip){const _=s.replay;o.tooltip.handleEvent(s.event,_,s.inChartArea)&&(s.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(o,s)=>s.bodyFont.size,boxWidth:(o,s)=>s.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:defaultCallbacks},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:o=>o!=="filter"&&o!=="itemSort"&&o!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]},plugins=Object.freeze({__proto__:null,Colors:plugin_colors,Decimation:plugin_decimation,Filler:index$1,Legend:plugin_legend,SubTitle:plugin_subtitle,Title:plugin_title,Tooltip:plugin_tooltip});const addIfString=(o,s,_,j)=>(typeof s=="string"?(_=o.push(s)-1,j.unshift({index:_,label:s})):isNaN(s)&&(_=null),_);function findOrAddLabel(o,s,_,j){const $=o.indexOf(s);if($===-1)return addIfString(o,s,_,j);const _e=o.lastIndexOf(s);return $!==_e?_:$}const validIndex=(o,s)=>o===null?null:_limitValue(Math.round(o),0,s);function _getLabelForValue(o){const s=this.getLabels();return o>=0&&o_.length-1?null:this.getPixelForValue(_[s].value)}getValueForPixel(s){return Math.round(this._startValue+this.getDecimalForPixel(s)*this._valueRange)}getBasePixel(){return this.bottom}}Xn(CategoryScale,"id","category"),Xn(CategoryScale,"defaults",{ticks:{callback:_getLabelForValue}});function generateTicks$1(o,s){const _=[],{bounds:$,step:_e,min:et,max:tt,precision:nt,count:rt,maxTicks:it,maxDigits:st,includeBounds:ut}=o,Ft=_e||1,dt=it-1,{min:gt,max:Ut}=s,ht=!isNullOrUndef(et),ft=!isNullOrUndef(tt),pt=!isNullOrUndef(rt),Rt=(Ut-gt)/(st+1);let Qt=niceNum((Ut-gt)/dt/Ft)*Ft,Nt,At,kt,Bt;if(Qt<1e-14&&!ht&&!ft)return[{value:gt},{value:Ut}];Bt=Math.ceil(Ut/Qt)-Math.floor(gt/Qt),Bt>dt&&(Qt=niceNum(Bt*Qt/dt/Ft)*Ft),isNullOrUndef(nt)||(Nt=Math.pow(10,nt),Qt=Math.ceil(Qt*Nt)/Nt),$==="ticks"?(At=Math.floor(gt/Qt)*Qt,kt=Math.ceil(Ut/Qt)*Qt):(At=gt,kt=Ut),ht&&ft&&_e&&almostWhole((tt-et)/_e,Qt/1e3)?(Bt=Math.round(Math.min((tt-et)/Qt,it)),Qt=(tt-et)/Bt,At=et,kt=tt):pt?(At=ht?et:At,kt=ft?tt:kt,Bt=rt-1,Qt=(kt-At)/Bt):(Bt=(kt-At)/Qt,almostEquals(Bt,Math.round(Bt),Qt/1e3)?Bt=Math.round(Bt):Bt=Math.ceil(Bt));const jt=Math.max(_decimalPlaces(Qt),_decimalPlaces(At));Nt=Math.pow(10,isNullOrUndef(nt)?jt:nt),At=Math.round(At*Nt)/Nt,kt=Math.round(kt*Nt)/Nt;let vt=0;for(ht&&(ut&&At!==et?(_.push({value:et}),At$=_?$:nt,tt=nt=>_e=j?_e:nt;if(s){const nt=sign($),rt=sign(_e);nt<0&&rt<0?tt(0):nt>0&&rt>0&&et(0)}if($===_e){let nt=_e===0?1:Math.abs(_e*.05);tt(_e+nt),s||et($-nt)}this.min=$,this.max=_e}getTickLimit(){const s=this.options.ticks;let{maxTicksLimit:_,stepSize:j}=s,$;return j?($=Math.ceil(this.max/j)-Math.floor(this.min/j)+1,$>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${j} would result generating up to ${$} ticks. Limiting to 1000.`),$=1e3)):($=this.computeTickLimit(),_=_||11),_&&($=Math.min(_,$)),$}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const s=this.options,_=s.ticks;let j=this.getTickLimit();j=Math.max(2,j);const $={maxTicks:j,bounds:s.bounds,min:s.min,max:s.max,precision:_.precision,step:_.stepSize,count:_.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:_.minRotation||0,includeBounds:_.includeBounds!==!1},_e=this._range||this,et=generateTicks$1($,_e);return s.bounds==="ticks"&&_setMinAndMaxByKey(et,this,"value"),s.reverse?(et.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),et}configure(){const s=this.ticks;let _=this.min,j=this.max;if(super.configure(),this.options.offset&&s.length){const $=(j-_)/Math.max(s.length-1,1)/2;_-=$,j+=$}this._startValue=_,this._endValue=j,this._valueRange=j-_}getLabelForValue(s){return formatNumber(s,this.chart.options.locale,this.options.ticks.format)}}class LinearScale extends LinearScaleBase{determineDataLimits(){const{min:s,max:_}=this.getMinMax(!0);this.min=isNumberFinite(s)?s:0,this.max=isNumberFinite(_)?_:1,this.handleTickRangeOptions()}computeTickLimit(){const s=this.isHorizontal(),_=s?this.width:this.height,j=toRadians(this.options.ticks.minRotation),$=(s?Math.sin(j):Math.cos(j))||.001,_e=this._resolveTickFontOptions(0);return Math.ceil(_/Math.min(40,_e.lineHeight/$))}getPixelForValue(s){return s===null?NaN:this.getPixelForDecimal((s-this._startValue)/this._valueRange)}getValueForPixel(s){return this._startValue+this.getDecimalForPixel(s)*this._valueRange}}Xn(LinearScale,"id","linear"),Xn(LinearScale,"defaults",{ticks:{callback:Ticks.formatters.numeric}});const log10Floor=o=>Math.floor(log10(o)),changeExponent=(o,s)=>Math.pow(10,log10Floor(o)+s);function isMajor(o){return o/Math.pow(10,log10Floor(o))===1}function steps(o,s,_){const j=Math.pow(10,_),$=Math.floor(o/j);return Math.ceil(s/j)-$}function startExp(o,s){const _=s-o;let j=log10Floor(_);for(;steps(o,s,j)>10;)j++;for(;steps(o,s,j)<10;)j--;return Math.min(j,log10Floor(o))}function generateTicks(o,{min:s,max:_}){s=finiteOrDefault(o.min,s);const j=[],$=log10Floor(s);let _e=startExp(s,_),et=_e<0?Math.pow(10,Math.abs(_e)):1;const tt=Math.pow(10,_e),nt=$>_e?Math.pow(10,$):0,rt=Math.round((s-nt)*et)/et,it=Math.floor((s-nt)/tt/10)*tt*10;let st=Math.floor((rt-it)/Math.pow(10,_e)),ut=finiteOrDefault(o.min,Math.round((nt+it+st*Math.pow(10,_e))*et)/et);for(;ut<_;)j.push({value:ut,major:isMajor(ut),significand:st}),st>=10?st=st<15?15:20:st++,st>=20&&(_e++,st=2,et=_e>=0?1:et),ut=Math.round((nt+it+st*Math.pow(10,_e))*et)/et;const Ft=finiteOrDefault(o.max,ut);return j.push({value:Ft,major:isMajor(Ft),significand:st}),j}class LogarithmicScale extends Scale{constructor(s){super(s),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(s,_){const j=LinearScaleBase.prototype.parse.apply(this,[s,_]);if(j===0){this._zero=!0;return}return isNumberFinite(j)&&j>0?j:null}determineDataLimits(){const{min:s,max:_}=this.getMinMax(!0);this.min=isNumberFinite(s)?Math.max(0,s):null,this.max=isNumberFinite(_)?Math.max(0,_):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!isNumberFinite(this._userMin)&&(this.min=s===changeExponent(this.min,0)?changeExponent(this.min,-1):changeExponent(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:s,maxDefined:_}=this.getUserBounds();let j=this.min,$=this.max;const _e=tt=>j=s?j:tt,et=tt=>$=_?$:tt;j===$&&(j<=0?(_e(1),et(10)):(_e(changeExponent(j,-1)),et(changeExponent($,1)))),j<=0&&_e(changeExponent($,-1)),$<=0&&et(changeExponent(j,1)),this.min=j,this.max=$}buildTicks(){const s=this.options,_={min:this._userMin,max:this._userMax},j=generateTicks(_,this);return s.bounds==="ticks"&&_setMinAndMaxByKey(j,this,"value"),s.reverse?(j.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),j}getLabelForValue(s){return s===void 0?"0":formatNumber(s,this.chart.options.locale,this.options.ticks.format)}configure(){const s=this.min;super.configure(),this._startValue=log10(s),this._valueRange=log10(this.max)-log10(s)}getPixelForValue(s){return(s===void 0||s===0)&&(s=this.min),s===null||isNaN(s)?NaN:this.getPixelForDecimal(s===this.min?0:(log10(s)-this._startValue)/this._valueRange)}getValueForPixel(s){const _=this.getDecimalForPixel(s);return Math.pow(10,this._startValue+_*this._valueRange)}}Xn(LogarithmicScale,"id","logarithmic"),Xn(LogarithmicScale,"defaults",{ticks:{callback:Ticks.formatters.logarithmic,major:{enabled:!0}}});function getTickBackdropHeight(o){const s=o.ticks;if(s.display&&o.display){const _=toPadding(s.backdropPadding);return valueOrDefault(s.font&&s.font.size,defaults.font.size)+_.height}return 0}function measureLabelSize(o,s,_){return _=isArray(_)?_:[_],{w:_longestText(o,s.string,_),h:_.length*s.lineHeight}}function determineLimits(o,s,_,j,$){return o===j||o===$?{start:s-_/2,end:s+_/2}:o$?{start:s-_,end:s}:{start:s,end:s+_}}function fitWithPointLabels(o){const s={l:o.left+o._padding.left,r:o.right-o._padding.right,t:o.top+o._padding.top,b:o.bottom-o._padding.bottom},_=Object.assign({},s),j=[],$=[],_e=o._pointLabels.length,et=o.options.pointLabels,tt=et.centerPointLabels?PI/_e:0;for(let nt=0;nt<_e;nt++){const rt=et.setContext(o.getPointLabelContext(nt));$[nt]=rt.padding;const it=o.getPointPosition(nt,o.drawingArea+$[nt],tt),st=toFont(rt.font),ut=measureLabelSize(o.ctx,st,o._pointLabels[nt]);j[nt]=ut;const Ft=_normalizeAngle(o.getIndexAngle(nt)+tt),dt=Math.round(toDegrees(Ft)),gt=determineLimits(dt,it.x,ut.w,0,180),Ut=determineLimits(dt,it.y,ut.h,90,270);updateLimits(_,s,Ft,gt,Ut)}o.setCenterPoint(s.l-_.l,_.r-s.r,s.t-_.t,_.b-s.b),o._pointLabelItems=buildPointLabelItems(o,j,$)}function updateLimits(o,s,_,j,$){const _e=Math.abs(Math.sin(_)),et=Math.abs(Math.cos(_));let tt=0,nt=0;j.starts.r&&(tt=(j.end-s.r)/_e,o.r=Math.max(o.r,s.r+tt)),$.starts.b&&(nt=($.end-s.b)/et,o.b=Math.max(o.b,s.b+nt))}function buildPointLabelItems(o,s,_){const j=[],$=o._pointLabels.length,_e=o.options,et=getTickBackdropHeight(_e)/2,tt=o.drawingArea,nt=_e.pointLabels.centerPointLabels?PI/$:0;for(let rt=0;rt<$;rt++){const it=o.getPointPosition(rt,tt+et+_[rt],nt),st=Math.round(toDegrees(_normalizeAngle(it.angle+HALF_PI))),ut=s[rt],Ft=yForAngle(it.y,ut.h,st),dt=getTextAlignForAngle(st),gt=leftForTextAlign(it.x,ut.w,dt);j.push({x:it.x,y:Ft,textAlign:dt,left:gt,top:Ft,right:gt+ut.w,bottom:Ft+ut.h})}return j}function getTextAlignForAngle(o){return o===0||o===180?"center":o<180?"left":"right"}function leftForTextAlign(o,s,_){return _==="right"?o-=s:_==="center"&&(o-=s/2),o}function yForAngle(o,s,_){return _===90||_===270?o-=s/2:(_>270||_<90)&&(o-=s),o}function drawPointLabels(o,s){const{ctx:_,options:{pointLabels:j}}=o;for(let $=s-1;$>=0;$--){const _e=j.setContext(o.getPointLabelContext($)),et=toFont(_e.font),{x:tt,y:nt,textAlign:rt,left:it,top:st,right:ut,bottom:Ft}=o._pointLabelItems[$],{backdropColor:dt}=_e;if(!isNullOrUndef(dt)){const gt=toTRBLCorners(_e.borderRadius),Ut=toPadding(_e.backdropPadding);_.fillStyle=dt;const ht=it-Ut.left,ft=st-Ut.top,pt=ut-it+Ut.width,Rt=Ft-st+Ut.height;Object.values(gt).some(Qt=>Qt!==0)?(_.beginPath(),addRoundedRectPath(_,{x:ht,y:ft,w:pt,h:Rt,radius:gt}),_.fill()):_.fillRect(ht,ft,pt,Rt)}renderText(_,o._pointLabels[$],tt,nt+et.lineHeight/2,et,{color:_e.color,textAlign:rt,textBaseline:"middle"})}}function pathRadiusLine(o,s,_,j){const{ctx:$}=o;if(_)$.arc(o.xCenter,o.yCenter,s,0,TAU);else{let _e=o.getPointPosition(0,s);$.moveTo(_e.x,_e.y);for(let et=1;et{const $=callback(this.options.pointLabels.callback,[_,j],this);return $||$===0?$:""}).filter((_,j)=>this.chart.getDataVisibility(j))}fit(){const s=this.options;s.display&&s.pointLabels.display?fitWithPointLabels(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(s,_,j,$){this.xCenter+=Math.floor((s-_)/2),this.yCenter+=Math.floor((j-$)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(s,_,j,$))}getIndexAngle(s){const _=TAU/(this._pointLabels.length||1),j=this.options.startAngle||0;return _normalizeAngle(s*_+toRadians(j))}getDistanceFromCenterForValue(s){if(isNullOrUndef(s))return NaN;const _=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-s)*_:(s-this.min)*_}getValueForDistanceFromCenter(s){if(isNullOrUndef(s))return NaN;const _=s/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-_:this.min+_}getPointLabelContext(s){const _=this._pointLabels||[];if(s>=0&&s<_.length){const j=_[s];return createPointLabelContext(this.getContext(),s,j)}}getPointPosition(s,_,j=0){const $=this.getIndexAngle(s)-HALF_PI+j;return{x:Math.cos($)*_+this.xCenter,y:Math.sin($)*_+this.yCenter,angle:$}}getPointPositionForValue(s,_){return this.getPointPosition(s,this.getDistanceFromCenterForValue(_))}getBasePosition(s){return this.getPointPositionForValue(s||0,this.getBaseValue())}getPointLabelPosition(s){const{left:_,top:j,right:$,bottom:_e}=this._pointLabelItems[s];return{left:_,top:j,right:$,bottom:_e}}drawBackground(){const{backgroundColor:s,grid:{circular:_}}=this.options;if(s){const j=this.ctx;j.save(),j.beginPath(),pathRadiusLine(this,this.getDistanceFromCenterForValue(this._endValue),_,this._pointLabels.length),j.closePath(),j.fillStyle=s,j.fill(),j.restore()}}drawGrid(){const s=this.ctx,_=this.options,{angleLines:j,grid:$,border:_e}=_,et=this._pointLabels.length;let tt,nt,rt;if(_.pointLabels.display&&drawPointLabels(this,et),$.display&&this.ticks.forEach((it,st)=>{if(st!==0){nt=this.getDistanceFromCenterForValue(it.value);const ut=this.getContext(st),Ft=$.setContext(ut),dt=_e.setContext(ut);drawRadiusLine(this,Ft,nt,et,dt)}}),j.display){for(s.save(),tt=et-1;tt>=0;tt--){const it=j.setContext(this.getPointLabelContext(tt)),{color:st,lineWidth:ut}=it;!ut||!st||(s.lineWidth=ut,s.strokeStyle=st,s.setLineDash(it.borderDash),s.lineDashOffset=it.borderDashOffset,nt=this.getDistanceFromCenterForValue(_.ticks.reverse?this.min:this.max),rt=this.getPointPosition(tt,nt),s.beginPath(),s.moveTo(this.xCenter,this.yCenter),s.lineTo(rt.x,rt.y),s.stroke())}s.restore()}}drawBorder(){}drawLabels(){const s=this.ctx,_=this.options,j=_.ticks;if(!j.display)return;const $=this.getIndexAngle(0);let _e,et;s.save(),s.translate(this.xCenter,this.yCenter),s.rotate($),s.textAlign="center",s.textBaseline="middle",this.ticks.forEach((tt,nt)=>{if(nt===0&&!_.reverse)return;const rt=j.setContext(this.getContext(nt)),it=toFont(rt.font);if(_e=this.getDistanceFromCenterForValue(this.ticks[nt].value),rt.showLabelBackdrop){s.font=it.string,et=s.measureText(tt.label).width,s.fillStyle=rt.backdropColor;const st=toPadding(rt.backdropPadding);s.fillRect(-et/2-st.left,-_e-it.size/2-st.top,et+st.width,it.size+st.height)}renderText(s,tt.label,0,-_e,it,{color:rt.color})}),s.restore()}drawTitle(){}}Xn(RadialLinearScale,"id","radialLinear"),Xn(RadialLinearScale,"defaults",{display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:Ticks.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback(s){return s},padding:5,centerPointLabels:!1}}),Xn(RadialLinearScale,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),Xn(RadialLinearScale,"descriptors",{angleLines:{_fallback:"grid"}});const INTERVALS={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},UNITS=Object.keys(INTERVALS);function sorter(o,s){return o-s}function parse(o,s){if(isNullOrUndef(s))return null;const _=o._adapter,{parser:j,round:$,isoWeekday:_e}=o._parseOpts;let et=s;return typeof j=="function"&&(et=j(et)),isNumberFinite(et)||(et=typeof j=="string"?_.parse(et,j):_.parse(et)),et===null?null:($&&(et=$==="week"&&(isNumber(_e)||_e===!0)?_.startOf(et,"isoWeek",_e):_.startOf(et,$)),+et)}function determineUnitForAutoTicks(o,s,_,j){const $=UNITS.length;for(let _e=UNITS.indexOf(o);_e<$-1;++_e){const et=INTERVALS[UNITS[_e]],tt=et.steps?et.steps:Number.MAX_SAFE_INTEGER;if(et.common&&Math.ceil((_-s)/(tt*et.size))<=j)return UNITS[_e]}return UNITS[$-1]}function determineUnitForFormatting(o,s,_,j,$){for(let _e=UNITS.length-1;_e>=UNITS.indexOf(_);_e--){const et=UNITS[_e];if(INTERVALS[et].common&&o._adapter.diff($,j,et)>=s-1)return et}return UNITS[_?UNITS.indexOf(_):0]}function determineMajorUnit(o){for(let s=UNITS.indexOf(o)+1,_=UNITS.length;s<_;++s)if(INTERVALS[UNITS[s]].common)return UNITS[s]}function addTick(o,s,_){if(!_)o[s]=!0;else if(_.length){const{lo:j,hi:$}=_lookup(_,s),_e=_[j]>=s?_[j]:_[$];o[_e]=!0}}function setMajorTicks(o,s,_,j){const $=o._adapter,_e=+$.startOf(s[0].value,j),et=s[s.length-1].value;let tt,nt;for(tt=_e;tt<=et;tt=+$.add(tt,1,j))nt=_[tt],nt>=0&&(s[nt].major=!0);return s}function ticksFromTimestamps(o,s,_){const j=[],$={},_e=s.length;let et,tt;for(et=0;et<_e;++et)tt=s[et],$[tt]=et,j.push({value:tt,major:!1});return _e===0||!_?j:setMajorTicks(o,j,$,_)}class TimeScale extends Scale{constructor(s){super(s),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(s,_={}){const j=s.time||(s.time={}),$=this._adapter=new adapters._date(s.adapters.date);$.init(_),mergeIf(j.displayFormats,$.formats()),this._parseOpts={parser:j.parser,round:j.round,isoWeekday:j.isoWeekday},super.init(s),this._normalized=_.normalized}parse(s,_){return s===void 0?null:parse(this,s)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const s=this.options,_=this._adapter,j=s.time.unit||"day";let{min:$,max:_e,minDefined:et,maxDefined:tt}=this.getUserBounds();function nt(rt){!et&&!isNaN(rt.min)&&($=Math.min($,rt.min)),!tt&&!isNaN(rt.max)&&(_e=Math.max(_e,rt.max))}(!et||!tt)&&(nt(this._getLabelBounds()),(s.bounds!=="ticks"||s.ticks.source!=="labels")&&nt(this.getMinMax(!1))),$=isNumberFinite($)&&!isNaN($)?$:+_.startOf(Date.now(),j),_e=isNumberFinite(_e)&&!isNaN(_e)?_e:+_.endOf(Date.now(),j)+1,this.min=Math.min($,_e-1),this.max=Math.max($+1,_e)}_getLabelBounds(){const s=this.getLabelTimestamps();let _=Number.POSITIVE_INFINITY,j=Number.NEGATIVE_INFINITY;return s.length&&(_=s[0],j=s[s.length-1]),{min:_,max:j}}buildTicks(){const s=this.options,_=s.time,j=s.ticks,$=j.source==="labels"?this.getLabelTimestamps():this._generate();s.bounds==="ticks"&&$.length&&(this.min=this._userMin||$[0],this.max=this._userMax||$[$.length-1]);const _e=this.min,et=this.max,tt=_filterBetween($,_e,et);return this._unit=_.unit||(j.autoSkip?determineUnitForAutoTicks(_.minUnit,this.min,this.max,this._getLabelCapacity(_e)):determineUnitForFormatting(this,tt.length,_.minUnit,this.min,this.max)),this._majorUnit=!j.major.enabled||this._unit==="year"?void 0:determineMajorUnit(this._unit),this.initOffsets($),s.reverse&&tt.reverse(),ticksFromTimestamps(this,tt,this._majorUnit)}afterAutoSkip(){this.options.offsetAfterAutoskip&&this.initOffsets(this.ticks.map(s=>+s.value))}initOffsets(s=[]){let _=0,j=0,$,_e;this.options.offset&&s.length&&($=this.getDecimalForValue(s[0]),s.length===1?_=1-$:_=(this.getDecimalForValue(s[1])-$)/2,_e=this.getDecimalForValue(s[s.length-1]),s.length===1?j=_e:j=(_e-this.getDecimalForValue(s[s.length-2]))/2);const et=s.length<3?.5:.25;_=_limitValue(_,0,et),j=_limitValue(j,0,et),this._offsets={start:_,end:j,factor:1/(_+1+j)}}_generate(){const s=this._adapter,_=this.min,j=this.max,$=this.options,_e=$.time,et=_e.unit||determineUnitForAutoTicks(_e.minUnit,_,j,this._getLabelCapacity(_)),tt=valueOrDefault($.ticks.stepSize,1),nt=et==="week"?_e.isoWeekday:!1,rt=isNumber(nt)||nt===!0,it={};let st=_,ut,Ft;if(rt&&(st=+s.startOf(st,"isoWeek",nt)),st=+s.startOf(st,rt?"day":et),s.diff(j,_,et)>1e5*tt)throw new Error(_+" and "+j+" are too far apart with stepSize of "+tt+" "+et);const dt=$.ticks.source==="data"&&this.getDataTimestamps();for(ut=st,Ft=0;utgt-Ut).map(gt=>+gt)}getLabelForValue(s){const _=this._adapter,j=this.options.time;return j.tooltipFormat?_.format(s,j.tooltipFormat):_.format(s,j.displayFormats.datetime)}format(s,_){const $=this.options.time.displayFormats,_e=this._unit,et=_||$[_e];return this._adapter.format(s,et)}_tickFormatFunction(s,_,j,$){const _e=this.options,et=_e.ticks.callback;if(et)return callback(et,[s,_,j],this);const tt=_e.time.displayFormats,nt=this._unit,rt=this._majorUnit,it=nt&&tt[nt],st=rt&&tt[rt],ut=j[_],Ft=rt&&st&&ut&&ut.major;return this._adapter.format(s,$||(Ft?st:it))}generateTickLabels(s){let _,j,$;for(_=0,j=s.length;_0?tt:1}getDataTimestamps(){let s=this._cache.data||[],_,j;if(s.length)return s;const $=this.getMatchingVisibleMetas();if(this._normalized&&$.length)return this._cache.data=$[0].controller.getAllParsedValues(this);for(_=0,j=$.length;_=o[j].pos&&s<=o[$].pos&&({lo:j,hi:$}=_lookupByKey(o,"pos",s)),{pos:_e,time:tt}=o[j],{pos:et,time:nt}=o[$]):(s>=o[j].time&&s<=o[$].time&&({lo:j,hi:$}=_lookupByKey(o,"time",s)),{time:_e,pos:tt}=o[j],{time:et,pos:nt}=o[$]);const rt=et-_e;return rt?tt+(nt-tt)*(s-_e)/rt:tt}class TimeSeriesScale extends TimeScale{constructor(s){super(s),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const s=this._getTimestampsForTable(),_=this._table=this.buildLookupTable(s);this._minPos=interpolate(_,this.min),this._tableRange=interpolate(_,this.max)-this._minPos,super.initOffsets(s)}buildLookupTable(s){const{min:_,max:j}=this,$=[],_e=[];let et,tt,nt,rt,it;for(et=0,tt=s.length;et=_&&rt<=j&&$.push(rt);if($.length<2)return[{time:_,pos:0},{time:j,pos:1}];for(et=0,tt=$.length;ets in o?__defProp(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_,__publicField=(o,s,_)=>(__defNormalProp(o,typeof s!="symbol"?s+"":s,_),_),__defProp2=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp2=(o,s,_)=>s in o?__defProp2(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_,__spreadValues=(o,s)=>{for(var _ in s||(s={}))__hasOwnProp.call(s,_)&&__defNormalProp2(o,_,s[_]);if(__getOwnPropSymbols)for(var _ of __getOwnPropSymbols(s))__propIsEnum.call(s,_)&&__defNormalProp2(o,_,s[_]);return o},__spreadProps=(o,s)=>__defProps(o,__getOwnPropDescs(s)),__publicField2=(o,s,_)=>(__defNormalProp2(o,typeof s!="symbol"?s+"":s,_),_);const millisecond=1,second=1e3,minute=60*second,hour=60*minute,day=24*hour,week=7*day,month=30*day,year=365*day,duration={millisecond,second,minute,hour,day,week,month,year};class H264Decoder{constructor(s,_,j){__publicField2(this,"worker"),__publicField2(this,"onReceive"),__publicField2(this,"onError"),__publicField2(this,"onReceiveMessage",_e=>{const{data:et}=_e;if(et.error){const tt=new Error(`${et.error}`);tt.cause=et.error,console.warn("H264 worker failure",{error:tt}),this.onError(et.index);return}this.onReceive(et)});var $;this.worker=s,($=this.worker)==null||$.addEventListener("message",this.onReceiveMessage),this.onReceive=_,this.onError=j}post(s,_,j,$){var _e;(_e=this.worker)==null||_e.postMessage({timestamp:s,encodedFrame:_,flags:j,index:$})}release(){var s,_;(s=this.worker)==null||s.removeEventListener("message",this.onReceiveMessage),(_=this.worker)==null||_.terminate(),this.worker=void 0}}class YUVCanvas{constructor(s){__publicField2(this,"gl"),__publicField2(this,"program"),__publicField2(this,"texturePosBuffer"),__publicField2(this,"textureRef"),__publicField2(this,"height",0),__publicField2(this,"width",0),this.gl=s,this.program=this.initProgram();const{texturePosBuffer:_}=this.initBuffers();this.texturePosBuffer=_;const{textureRef:j}=this.initTextures();this.textureRef=j}draw(s){const{gl:_,height:j,width:$,texturePosBuffer:_e,textureRef:et}=this;_.viewport(0,0,$,j);const tt=new Float32Array([1,0,0,0,1,1,0,1]);return _.bindBuffer(_.ARRAY_BUFFER,_e),_.bufferData(_.ARRAY_BUFFER,tt,_.DYNAMIC_DRAW),_.activeTexture(_.TEXTURE0),_.bindTexture(_.TEXTURE_2D,et),_.texImage2D(_.TEXTURE_2D,0,_.LUMINANCE,$,j+j/2,0,_.LUMINANCE,_.UNSIGNED_BYTE,s),_.drawArrays(_.TRIANGLE_STRIP,0,4),_.getError()}initProgram(){const{gl:s}=this,_=` + attribute vec4 vertexPos; + attribute vec4 texturePos; + varying vec2 textureCoord; + + void main() { + gl_Position = vertexPos; + textureCoord = texturePos.xy; + } + `,j=` + precision highp float; + varying highp vec2 textureCoord; + uniform sampler2D yuvSampler; + uniform mat4 YUV2RGB; + + void main(void) { + highp vec2 yScale = vec2(1.0, 2.0 / 3.0); + highp vec2 yTextureCoord = textureCoord * yScale; + + highp vec2 uScale = vec2(0.5, 0.5 / 3.0); + highp vec2 uOffset = vec2(0.0, 2.0 / 3.0); + highp vec2 uTextureCoord = (textureCoord * uScale) + uOffset; + + highp vec2 vScale = vec2(0.5, 0.5 / 3.0); + highp vec2 vOffset = vec2(0.0, 2.5 / 3.0); + highp vec2 vTextureCoord = (textureCoord * vScale) + vOffset; + + highp float y = texture2D(yuvSampler, yTextureCoord).r; + highp float u = texture2D(yuvSampler, uTextureCoord).r; + highp float v = texture2D(yuvSampler, vTextureCoord).r; + + gl_FragColor = vec4(y, u, v, 1) * YUV2RGB; + } + `,$=[1.16438,0,1.59603,-.87079,1.16438,-.39176,-.81297,.52959,1.16438,2.01723,0,-1.08139,0,0,0,1],_e=s.createShader(s.VERTEX_SHADER);if(!_e)throw new Error("Failed to create vertex shader");s.shaderSource(_e,_),s.compileShader(_e);const et=s.createShader(s.FRAGMENT_SHADER);if(!et)throw new Error("Failed to create fragment shader");s.shaderSource(et,j),s.compileShader(et);const tt=s.createProgram();if(!tt)throw new Error("Failed to create webgl program");s.attachShader(tt,_e),s.attachShader(tt,et),s.linkProgram(tt),s.useProgram(tt);const nt=s.getUniformLocation(tt,"YUV2RGB");return s.uniformMatrix4fv(nt,!1,$),tt}initBuffers(){const{gl:s,program:_}=this,j=s.createBuffer();s.bindBuffer(s.ARRAY_BUFFER,j),s.bufferData(s.ARRAY_BUFFER,new Float32Array([1,1,-1,1,1,-1,-1,-1]),s.STATIC_DRAW);const $=s.getAttribLocation(_,"vertexPos");s.enableVertexAttribArray($),s.vertexAttribPointer($,2,s.FLOAT,!1,0,0);const _e=s.createBuffer();if(!_e)throw new Error("Failed to create WebGL buffer");s.bindBuffer(s.ARRAY_BUFFER,_e),s.bufferData(s.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),s.STATIC_DRAW);const et=s.getAttribLocation(_,"texturePos");return s.enableVertexAttribArray(et),s.vertexAttribPointer(et,2,s.FLOAT,!1,0,0),{texturePosBuffer:_e}}initTextures(){const{gl:s,program:_}=this,j=this.initTexture(),$=s.getUniformLocation(_,"yuvSampler");return s.uniform1i($,0),{textureRef:j}}initTexture(){const{gl:s}=this,_=s.createTexture();if(!_)throw new Error("Failed to initialize texture");return s.bindTexture(s.TEXTURE_2D,_),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MAG_FILTER,s.NEAREST),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MIN_FILTER,s.NEAREST),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_S,s.CLAMP_TO_EDGE),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_T,s.CLAMP_TO_EDGE),s.bindTexture(s.TEXTURE_2D,null),_}}const decoderNotWorkingThreshold=duration.second*2.5,warnPerformanceThreshold=duration.second/3,noSignalThreshold=duration.second*2,maxQueueSize=5,maxDropRatio=30/25,numRetries=5,hardwareIncompatibleErrorCode=1282;class H264BytestreamCanvasDrawer{constructor(s,_,j,$,_e){__publicField2(this,"_waitingForDecoder",!0),__publicField2(this,"_noSignal",!0),__publicField2(this,"_lostSignal",!1),__publicField2(this,"_overWaitingThreshold",!1),__publicField2(this,"_retries",0),__publicField2(this,"_webglYUVSupported"),__publicField2(this,"lastDecodedFrameTime"),__publicField2(this,"lastReceivedFrameTime"),__publicField2(this,"lastNoSignalTime",new Date().getTime()),__publicField2(this,"moduleStartTime",Date.now()),__publicField2(this,"moduleCreateTime",Date.now()),__publicField2(this,"timesRestarted",0),__publicField2(this,"canvas"),__publicField2(this,"decoder"),__publicField2(this,"yuvCanvas"),__publicField2(this,"webglContext"),__publicField2(this,"frameQueue",[]),__publicField2(this,"minFrameSize",1/0),__publicField2(this,"maxFrameSize",0),__publicField2(this,"decoderQueue",[]),__publicField2(this,"decoderQueueLocked",!1),__publicField2(this,"decodeNextFrameAttempted",!1),__publicField2(this,"numFramesDecoded",0),__publicField2(this,"numFramesReceived",0),__publicField2(this,"hasReceivedKeyframe",!1),__publicField2(this,"medianFrameSize",0),__publicField2(this,"currentFrameIndex"),__publicField2(this,"frameCheckpointMap",new Map),__publicField2(this,"lastDrawnFrameTime"),__publicField2(this,"minJitter"),__publicField2(this,"maxJitter"),__publicField2(this,"start",()=>{const{canvas:et}=this;if(!et)return;const tt=et.getContext("webgl");this.webglContext=tt||void 0,this.lastDecodedFrameTime=void 0,this.lastReceivedFrameTime=void 0,this.hasReceivedKeyframe=!1,this.currentFrameIndex=void 0,!(!this.canvas||!this.webglContext)&&(this.yuvCanvas||(this.yuvCanvas=new YUVCanvas(this.webglContext)),this.moduleStartTime=Date.now())}),__publicField2(this,"stop",()=>{var et;(et=this.decoder)==null||et.release(),this.webglContext=void 0,this.decoderQueueLocked=!1}),__publicField2(this,"reset",()=>{this.retries=0,this.restart()}),__publicField2(this,"notifyWarningTextChanged",()=>{var et;(et=this.onWarningTextChanged)==null||et.call(this,this.getWarningText())}),__publicField2(this,"restart",()=>{console.info("Restarting decoder"),console.info("BytestreamPlayer restarting",__spreadProps(__spreadValues({},this.trackInfo),{Restart:this.timesRestarted})),this.frameQueue=[],this.decoderQueue=[],this.stop(),this.decoder=new H264Decoder(this.workerFactory(),this.onReceiveDecodedFrame,this.onDecoderError),this.start(),this.retries++,this.timesRestarted++}),__publicField2(this,"onTrackTick",()=>{if(this.numFramesDecoded===0){if(this.lastDecodedFrameTime===void 0){const it=Date.now();console.info("BytestreamPlayer waiting for video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Waited":it-this.moduleCreateTime}))}return}this.numFramesReceived/this.numFramesDecoded>maxDropRatio&&this.warnPerformanceProblems(),this.numFramesReceived=0,this.numFramesDecoded=0;const tt=Array.from(this.frameCheckpointMap.entries()).reduce((it,[st,ut])=>{var Ft;return!this.currentFrameIndex||st>this.currentFrameIndex-60||ut==="FrameDrawn"||(it[ut]=((Ft=it[ut])!=null?Ft:0)+1,this.frameCheckpointMap.delete(st)),it},{});Object.keys(tt).map(it=>{console.info("BytestreamPlayer Frame Dropped",__spreadProps(__spreadValues({},this.trackInfo),{"Num Dropped":tt[it],"Frame State":it}))});const{minJitter:nt,maxJitter:rt}=this;nt&&rt&&(console.info("BytestreamPlayer Jitter",__spreadProps(__spreadValues({},this.trackInfo),{minJitter:nt,maxJitter:rt})),this.minJitter=void 0,this.maxJitter=void 0)}),__publicField2(this,"onTick",()=>{var et;const{lastReceivedFrameTime:tt,lastDecodedFrameTime:nt,moduleStartTime:rt,noSignal:it,retries:st}=this,ut=new Date().getTime();it&&(this.lastNoSignalTime=ut),this.overWaitingThreshold=ut-rt>noSignalThreshold;const Ft=ut-rt>decoderNotWorkingThreshold;if(!nt){tt&&Ft&&stnoSignalThreshold&&dtwarnPerformanceThreshold&&this.warnPerformanceProblems(),dt>noSignalThreshold&&(this.lostSignal=!0)}this.overWaitingThreshold&&(this.waitingForDecoder||this.noSignal||this.lostSignal)&&((et=this.onCanvasDrawerWarning)==null||et.call(this,"ShouldDisableControl"))}),__publicField2(this,"receiveEncodedFrame",et=>{if(!et)return;const tt=et.index;if(tt&&this.frameCheckpointMap.set(tt,"FrameReceived"),!(!et||!this.canvas||!this.webglContext)){if(this.isKeyframe(et),!this.hasReceivedKeyframe)return console.info("Dropping frame because no keyframe detected"),!1;this.lastReceivedFrameTime===void 0&&console.debug("Received first frame on bytestream player",__spreadValues({},this.trackInfo)),this.checkOrder(et),this.numFramesReceived++,this.lastReceivedFrameTime=Date.now(),this.lostSignal&&this.restart(),this.noSignal=!1,this.lostSignal=!1,this.frameQueue.push(et),tt&&this.frameCheckpointMap.set(tt,"FrameQueued"),this.frameQueue.length>maxQueueSize&&(this.frameQueue=this.frameQueue.filter(nt=>this.isKeyframe(nt))),this.frameQueue.length>maxQueueSize&&(this.frameQueue=[],this.decoderQueue=[]),this.decodeNextFrame()}}),__publicField2(this,"onDecoderError",et=>{this.frameQueue=[],this.decoderQueue=[],this.hasReceivedKeyframe=!1,console.info("BytestreamPlayer decode error",__spreadProps(__spreadValues({},this.trackInfo),{"Frame Index":et}))}),__publicField2(this,"onReceiveDecodedFrame",et=>{var tt,nt;const{canvas:rt,yuvCanvas:it,decoderQueue:st}=this,{timestamp:ut,yuv:Ft,height:dt,width:gt,index:Ut}=et;this.frameCheckpointMap.set(Ut,"FrameDecoded"),this.numFramesDecoded++;const ht=Date.now();if(this.lastDecodedFrameTime===void 0&&console.info("BytestreamPlayer started video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Until Video":ht-this.moduleCreateTime})),this.lastDecodedFrameTime=ht,this.waitingForDecoder=!1,this.decoderQueue=st.filter(Rt=>ht-Rtduration.second||!it||!rt||dt===0||gt===0)return;dt!==rt.height&&(rt.height=dt,it.height=dt),gt!==rt.width&&(rt.width=gt,it.width=gt);const ft=it.draw(Ft),pt=Date.now();if(this.lastDrawnFrameTime){const Rt=pt-this.lastDrawnFrameTime;this.minJitter=Math.min(Rt,(tt=this.minJitter)!=null?tt:Number.MAX_SAFE_INTEGER),this.maxJitter=Math.max(Rt,(nt=this.maxJitter)!=null?nt:0)}this.lastDrawnFrameTime=pt,this.frameCheckpointMap.set(Ut,"FrameDrawn"),ft===0&&(this.webglYUVSupported=!0),ft===hardwareIncompatibleErrorCode&&(this.webglYUVSupported=!1),this.frameQueue.length>0&&this.decodeNextFrame()}),this.workerFactory=s,this.onWebglYUVSupportedChanged=_,this.onWarningTextChanged=j,this.onCanvasDrawerWarning=$,this.trackInfo=_e,this.decoder=new H264Decoder(this.workerFactory(),this.onReceiveDecodedFrame,this.onDecoderError),setInterval(this.onTick,duration.millisecond*200),setInterval(this.onTrackTick,duration.second*5)}get waitingForDecoder(){return this._waitingForDecoder}set waitingForDecoder(s){this._waitingForDecoder=s,this.notifyWarningTextChanged()}get noSignal(){return this._noSignal}set noSignal(s){this._noSignal=s,this.notifyWarningTextChanged()}get lostSignal(){return this._lostSignal}set lostSignal(s){this._lostSignal=s,this.notifyWarningTextChanged()}get overWaitingThreshold(){return this._overWaitingThreshold}set overWaitingThreshold(s){this._overWaitingThreshold=s,this.notifyWarningTextChanged()}get retries(){return this._retries}set retries(s){this._retries=s,this.notifyWarningTextChanged()}get webglYUVSupported(){return this._webglYUVSupported}set webglYUVSupported(s){var _;this._webglYUVSupported=s,(_=this.onWebglYUVSupportedChanged)==null||_.call(this,s),this.notifyWarningTextChanged()}setCanvas(s){this.canvas=s}getWarningText(){var s;const{waitingForDecoder:_,noSignal:j,overWaitingThreshold:$,lostSignal:_e,retries:et,webglYUVSupported:tt}=this,nt=tt===!1,it=_?et===numRetries?"Decoder failed to start":"Starting decoder":void 0,st=nt?"Hardware decoding not supported on this device":void 0;return(s=st??(_e?"Lost signal":j?$?"No signal":"Waiting for signal":void 0))!=null?s:it}decodeNextFrame(){if(this.decoderQueueLocked&&(this.decodeNextFrameAttempted=!0),this.decoderQueueLocked=!0,this.decoderQueue.length>maxQueueSize){this.decoderQueueLocked=!1,this.decodeNextFrameAttempted=!1;return}const s=this.frameQueue.shift();if(!s){this.decoderQueueLocked=!1,this.decodeNextFrameAttempted=!1;return}const _=Date.now();this.frameCheckpointMap.set(s.index,"FrameSentToDecoder"),this.decoder.post(_,s.frame_data,s.flags,s.index),this.decoderQueue.push(_),this.decoderQueueLocked=!1,this.decodeNextFrameAttempted&&(this.decodeNextFrameAttempted=!1,this.decodeNextFrame())}warnPerformanceProblems(){var s;this.lastDecodedFrameTime&&this.overWaitingThreshold&&!this.lostSignal&&!this.noSignal&&((s=this.onCanvasDrawerWarning)==null||s.call(this,"ShouldDegradeVideo"))}checkOrder(s){if(this.currentFrameIndex!==void 0&&s.indexDate.now()?!1:$>this.medianFrameSize?(this.hasReceivedKeyframe=!0,!0):!1}}const encodedJs="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiOyhmdW5jdGlvbihTKXt0eXBlb2YgZGVmaW5lPT0iZnVuY3Rpb24iJiZkZWZpbmUuYW1kP2RlZmluZShTKTpTKCl9KShmdW5jdGlvbigpe2NvbnN0IEo9e21pbGxpc2Vjb25kOjEsc2Vjb25kOjFlMyxtaW51dGU6NmU0LGhvdXI6MzZlNSxkYXk6ODY0ZTUsd2Vlazo2MDQ4ZTUsbW9udGg6MjU5MmU2LHllYXI6MzE1MzZlNn07dmFyIHk9e30sRj17fSxhPXt9O09iamVjdC5kZWZpbmVQcm9wZXJ0eShhLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTtjb25zdCBHPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPSI7ZnVuY3Rpb24gaChBKXtsZXQgST1BLmxlbmd0aDtBW0EubGVuZ3RoLTJdPT09Ij0iP0ktPTI6QVtBLmxlbmd0aC0xXT09PSI9IiYmSS0tO2NvbnN0IGc9SS80KjN8MCxCPW5ldyBVaW50OEFycmF5KGcpO2ZvcihsZXQgUT0wLEM9MDtRPGc7USs9Myl7Y29uc3QgRD1HLmluZGV4T2YoQVtDKytdKSxFPUcuaW5kZXhPZihBW0MrK10pO2lmKEJbUV09RDw8MnxFPj40LEM9PT1JKWJyZWFrO2NvbnN0IHc9Ry5pbmRleE9mKEFbQysrXXx8Ij0iKTtpZihCW1ErMV09KEUmMTUpPDw0fHc+PjIsQz09PUkpYnJlYWs7Y29uc3Qgbz1HLmluZGV4T2YoQVtDKytdfHwiPSIpO0JbUSsyXT0odyYzKTw8NnxvfXJldHVybiBCfWEuZGVjb2RlPWgsT2JqZWN0LmRlZmluZVByb3BlcnR5KEYsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO2NvbnN0IEw9IkFHRnpiUUVBQUFBQmx3RVRZQUovZndGL1lBUi9mMzkvQVg5Z0FuOS9BR0FEZjM5L0FYOWdBWDhBWUFsL2YzOS9mMzkvZjM4QVlBRi9BWDlnQkg5L2YzOEFZQVovZjM5L2YzOEJmMkFJZjM5L2YzOS9mMzhBWUFOL2YzOEFZQVYvZjM5L2Z3Ri9ZQUFBWUFWL2YzOS9md0JnQm45L2YzOS9md0JnQ245L2YzOS9mMzkvZjM4QVlBQUJmMkFIZjM5L2YzOS9md0YvWUFoL2YzOS9mMzkvZndGL0FqQURCR2d5TmpRR2JXVnRZM0I1QUFNRWFESTJOQVp5WlhOcGVtVUFCZ1JvTWpZMEJtMWxiVzl5ZVFJQmdBS0FnQUlEWTJJQUFBUUFBUU1LQVFZQUJRTUZCZ2NBQndZQUF3NERCd2NGQWdBQ0F3UUFCUVVGQlFvRUFnUUpBUWNBQXdZR0FnSUJCZ1FEQWdJQkN3RUJBd01MRFFJQkFBQUNDUWtKRHdJRkJRQUJDZ0FTQ3hFSUNBY0lDQWNFQVFRSUNBWUJFQWdBQVFZSkFYOEJRYkRFd0FJTEJ5WUVCbTFoYkd4dll3QUtDV2d5TmpSaGJHeHZZd0JnQm1SbFkyOWtaUUJoQkdsdWFYUUFZZ3IycFFWaXdBSUJBbjhnQUJBUElnSkJmMHdFUUNBQVFRRVFDeG9nQVVFQU5nSUFRUUFQQ3dKQUFrQWdBa0dBZ0lDQUJFOEVRQ0FBUVFNUUMwRi9SZ1JBUVFFUEN5QUJJQUpCSFhaQkFYRkJBV28yQWdBTUFRc2dBa0dBZ0lDQUFrOEVRQ0FBUVFVUUMwRi9SZ1JBUVFFUEN5QUJJQUpCRzNaQkEzRkJBMm8yQWdBTUFRc2dBa0dBZ0lDQUFVOEVRQ0FBUVFjUUMwRi9SZ1JBUVFFUEN5QUJJQUpCR1haQkIzRkJCMm8yQWdBTUFRc2dBaEF2SWdOQkJHb2lBa0VnUmdSQUlBRkJBRFlDQUNBQVFTQVFDeHBCQVNFQ0lBQkJBUkFEUVFGSERRSWdBQkFQSVFNZ0FFRWdFQXRCZjBZTkFpQURRUUZMRFFJZ0EwRUJhd1JBSUFGQmZ6WUNBQXdDQ3lBQlFYODJBZ0JCQVE4TElBQWdBMEVGYWhBTEdpQUFJQUlRQXlJQVFYOUdCRUJCQVE4TElBRWdBRUYvSUFKMFFYOXphallDQUF0QkFDRUNDeUFDQzRnQ0FRZC9JQUFvQWdRaEJBSkFJQUFvQWd4QkEzUWlCeUFBS0FJUUlnaHJJZ0pCSUU0RVFDQUVLQUFBSWdOQkdIUWdBMEVJZEVHQWdQd0hjWElnQTBFSWRrR0EvZ054SUFOQkdIWnljaUVESUFBb0FnZ2lBa1VOQVNBRElBSjBJQVF0QUFSQkNDQUNhM1p5SVFNTUFRc2dBa0VCU0FSQURBRUxJQVF0QUFBZ0FDZ0NDQ0lGUVJocUlnWjBJUU1nQWlBRmFrRjRhaUlDUVFGSURRQURRQ0FFTFFBQklBWkJlR29pQm5RZ0EzSWhBeUFDUVFoS0lRVWdCRUVCYWlFRUlBSkJlR29oQWlBRkRRQUxDeUFBSUFFZ0NHb2lCRFlDRUNBQUlBUkJCM0UyQWdoQmZ5RUNJQVFnQjAwRWZ5QUFJQUFvQWdBZ0JFRURkbW8yQWdRZ0EwRWdJQUZyZGdWQmZ3c0xxZzBCQjM4Q1FDQUFSUTBBSUFCQmVHb2lBeUFBUVh4cUtBSUFJZ0ZCZUhFaUFHb2hCUUpBSUFGQkFYRU5BQ0FCUVFOeFJRMEJJQU1nQXlnQ0FDSUNheUlEUWNUQUFDZ0NBQ0lFU1EwQklBQWdBbW9oQUNBRFFjakFBQ2dDQUVjRVFDQUNRZjhCVFFSQUlBTW9BZ2dpQkNBQ1FRTjJJZ0pCQTNSQjNNQUFha2NhSUFRZ0F5Z0NEQ0lCUmdSQVFiVEFBRUcwd0FBb0FnQkJmaUFDZDNFMkFnQU1Bd3NnQkNBQk5nSU1JQUVnQkRZQ0NBd0NDeUFES0FJWUlRWUNRQ0FESUFNb0Fnd2lBVWNFUUNBRUlBTW9BZ2dpQWswRVFDQUNLQUlNR2dzZ0FpQUJOZ0lNSUFFZ0FqWUNDQXdCQ3dKQUlBTkJGR29pQWlnQ0FDSUVEUUFnQTBFUWFpSUNLQUlBSWdRTkFFRUFJUUVNQVFzRFFDQUNJUWNnQkNJQlFSUnFJZ0lvQWdBaUJBMEFJQUZCRUdvaEFpQUJLQUlRSWdRTkFBc2dCMEVBTmdJQUN5QUdSUTBCQWtBZ0F5QURLQUljSWdKQkFuUkI1TUlBYWlJRUtBSUFSZ1JBSUFRZ0FUWUNBQ0FCRFFGQnVNQUFRYmpBQUNnQ0FFRitJQUozY1RZQ0FBd0RDeUFHUVJCQkZDQUdLQUlRSUFOR0cyb2dBVFlDQUNBQlJRMENDeUFCSUFZMkFoZ2dBeWdDRUNJQ0JFQWdBU0FDTmdJUUlBSWdBVFlDR0FzZ0F5Z0NGQ0lDUlEwQklBRWdBallDRkNBQ0lBRTJBaGdNQVFzZ0JTZ0NCQ0lCUVFOeFFRTkhEUUJCdk1BQUlBQTJBZ0FnQlNBQlFYNXhOZ0lFSUFNZ0FFRUJjallDQkNBQUlBTnFJQUEyQWdBUEN5QUZJQU5ORFFBZ0JTZ0NCQ0lCUVFGeFJRMEFBa0FnQVVFQ2NVVUVRQ0FGUWN6QUFDZ0NBRVlFUUVITXdBQWdBellDQUVIQXdBQkJ3TUFBS0FJQUlBQnFJZ0EyQWdBZ0F5QUFRUUZ5TmdJRUlBTkJ5TUFBS0FJQVJ3MERRYnpBQUVFQU5nSUFRY2pBQUVFQU5nSUFEd3NnQlVISXdBQW9BZ0JHQkVCQnlNQUFJQU0yQWdCQnZNQUFRYnpBQUNnQ0FDQUFhaUlBTmdJQUlBTWdBRUVCY2pZQ0JDQUFJQU5xSUFBMkFnQVBDeUFCUVhoeElBQnFJUUFDUUNBQlFmOEJUUVJBSUFVb0Fnd2hBaUFGS0FJSUlnUWdBVUVEZGlJQlFRTjBRZHpBQUdvaUIwY0VRRUhFd0FBb0FnQWFDeUFDSUFSR0JFQkJ0TUFBUWJUQUFDZ0NBRUYrSUFGM2NUWUNBQXdDQ3lBQ0lBZEhCRUJCeE1BQUtBSUFHZ3NnQkNBQ05nSU1JQUlnQkRZQ0NBd0JDeUFGS0FJWUlRWUNRQ0FGSUFVb0Fnd2lBVWNFUUVIRXdBQW9BZ0FnQlNnQ0NDSUNUUVJBSUFJb0Fnd2FDeUFDSUFFMkFnd2dBU0FDTmdJSURBRUxBa0FnQlVFVWFpSUNLQUlBSWdRTkFDQUZRUkJxSWdJb0FnQWlCQTBBUVFBaEFRd0JDd05BSUFJaEJ5QUVJZ0ZCRkdvaUFpZ0NBQ0lFRFFBZ0FVRVFhaUVDSUFFb0FoQWlCQTBBQ3lBSFFRQTJBZ0FMSUFaRkRRQUNRQ0FGSUFVb0Fod2lBa0VDZEVIa3dnQnFJZ1FvQWdCR0JFQWdCQ0FCTmdJQUlBRU5BVUc0d0FCQnVNQUFLQUlBUVg0Z0FuZHhOZ0lBREFJTElBWkJFRUVVSUFZb0FoQWdCVVliYWlBQk5nSUFJQUZGRFFFTElBRWdCallDR0NBRktBSVFJZ0lFUUNBQklBSTJBaEFnQWlBQk5nSVlDeUFGS0FJVUlnSkZEUUFnQVNBQ05nSVVJQUlnQVRZQ0dBc2dBeUFBUVFGeU5nSUVJQUFnQTJvZ0FEWUNBQ0FEUWNqQUFDZ0NBRWNOQVVHOHdBQWdBRFlDQUE4TElBVWdBVUYrY1RZQ0JDQURJQUJCQVhJMkFnUWdBQ0FEYWlBQU5nSUFDeUFBUWY4QlRRUkFJQUJCQTNZaUFVRURkRUhjd0FCcUlRQUNmMEcwd0FBb0FnQWlBa0VCSUFGMElnRnhSUVJBUWJUQUFDQUJJQUp5TmdJQUlBQU1BUXNnQUNnQ0NBc2hBaUFBSUFNMkFnZ2dBaUFETmdJTUlBTWdBRFlDRENBRElBSTJBZ2dQQ3lBRFFnQTNBaEFnQXdKL1FRQWdBRUVJZGlJQlJRMEFHa0VmSUFCQi8vLy9CMHNOQUJvZ0FTQUJRWUQrUDJwQkVIWkJDSEVpQVhRaUFpQUNRWURnSDJwQkVIWkJCSEVpQW5RaUJDQUVRWUNBRDJwQkVIWkJBbkVpQkhSQkQzWWdBU0FDY2lBRWNtc2lBVUVCZENBQUlBRkJGV3AyUVFGeGNrRWNhZ3NpQWpZQ0hDQUNRUUowUWVUQ0FHb2hBUUpBQWtBQ1FFRzR3QUFvQWdBaUJFRUJJQUowSWdkeFJRUkFRYmpBQUNBRUlBZHlOZ0lBSUFFZ0F6WUNBQ0FESUFFMkFoZ01BUXNnQUVFQVFSa2dBa0VCZG1zZ0FrRWZSaHQwSVFJZ0FTZ0NBQ0VCQTBBZ0FTSUVLQUlFUVhoeElBQkdEUUlnQWtFZGRpRUJJQUpCQVhRaEFpQUVJQUZCQkhGcUlnZEJFR29vQWdBaUFRMEFDeUFISUFNMkFoQWdBeUFFTmdJWUN5QURJQU0yQWd3Z0F5QUROZ0lJREFFTElBUW9BZ2dpQUNBRE5nSU1JQVFnQXpZQ0NDQURRUUEyQWhnZ0F5QUVOZ0lNSUFNZ0FEWUNDQXRCMU1BQVFkVEFBQ2dDQUVGL2FpSUFOZ0lBSUFBTkFFSDh3d0FoQXdOQUlBTW9BZ0FpQUVFSWFpRURJQUFOQUF0QjFNQUFRWDgyQWdBTEMzUUJBbjhqQUVFUWF5SUNKQUFnQWtFQU5nSU1JQUFnQWtFTWFoQUNJUUFDZnlBQ0tBSU1JZ05CZjBZRVFFRUJJQUJGRFFFYUlBRkJnSUNBZ0hnMkFnQkJBQXdCQzBFQklBQU5BQm9nQVNBRFFRRnFRUUYySWdGQkFDQUJheUFEUVFGeEd6WUNBRUVBQ3lFQUlBSkJFR29rQUNBQUM4Y0xBUlIvSUFGQm9EMXFMUUFBUVF4c0lnWkIxRHhxS0FJQUlRVWdCa0hRUEdvb0FnQWdBVUdRUEdvdEFBQWlCM1FoQkNBQ1JRUkFJQUFnQUNnQ0FDQUViRFlDQUFzZ0JTQUhkQ0VCQWtBQ1FDQURRWnovQTNFRVFDQUFJQVpCMkR4cUtBSUFJQWQwSWdNZ0FDZ0NQR3cyQWp3Z0FDQUFLQUk0SUFGc05nSTRRUUVoQWlBQUlBQW9BaXdnQkd3aUJ5QUFLQUlNSUFSc0lnVnFJZ2tnQUNnQ0lDQUJiQ0lLSUFBb0FqUWdBV3dpRDBFQmRXb2lFR3NpQmpZQ0xDQUFLQUlvSVFnZ0FDQUZJQWRySWdVZ0NrRUJkU0FQYXlJS2F5SUhOZ0lvSUFBb0FpUWhEaUFBSUFVZ0Ntb2lCVFlDSkNBQUlBQW9BaHdnQVd3aUR5QUFLQUlJSUFGc0lndHFJaE1nQUNnQ0VDQURiQ0lSSUFBb0FqQWdBMndpREVFQmRXb2lGV3NpQ2pZQ0hDQUFLQUlZSVEwZ0FDQUxJQTlySWdzZ0VVRUJkU0FNYXlJUmF5SVBOZ0lZSUFBb0FoUWhEQ0FBSUFzZ0VXb2lDellDRkNBQUlBUWdER3dpQkNBQUtBSUFJZ3hxSWhRZ0FDZ0NCQ0FCYkNJU0lBRWdEV3dpRFVFQmRXb2lGbXNpRVRZQ0RDQUFJQXdnQkdzaUJDQVNRUUYxSUExcklnMXJJZ3cyQWdnZ0FDQUVJQTFxSWcwMkFnUWdBQ0FCSUE1c0lnUWdBQ2dDT0NJT2F5SVNJQU1nQ0d3aUNFRUJkU0FBS0FJOEloZHJJZ05ySWdFMkFqZ2dBQ0FESUJKcUlnTTJBalFnQUNBRUlBNXFJZzRnRjBFQmRTQUlhaUlJYXlJRU5nSThJQUFnRkNBV2FpSVVJQWtnRUdvaUVHdEJJR29pRWlBSUlBNXFJZ2tnRXlBVmFpSUlRUUYxSWc1cmFrRUdkU0lUTmdJZ0lBQWdFaUFPSUFscmFrRUdkU0lPTmdJUUlBQWdFQ0FVYWtFZ2FpSVFJQWxCQVhVZ0NHb2lDV3RCQm5VaUNEWUNNQ0FBSUFrZ0VHcEJCblVpQ1RZQ0FDQUpRWUFFYWlBT1FZQUVhbkpCL3dkTERRSWdDRUdBQkdvZ0UwR0FCR3B5UWY4SFN3MENJQUFnQlNBTmFrRWdhaUlKSUFOQkFYVWdDMm9pRUd0QkJuVWlDRFlDTkNBQUlBMGdCV3RCSUdvaUJTQURJQXRCQVhVaUMydHFRUVoxSWcwMkFpUWdBQ0FGSUFzZ0EydHFRUVoxSWdNMkFoUWdBQ0FKSUJCcVFRWjFJZ1UyQWdRZ0JVR0FCR29nQTBHQUJHcHlRZjhIU3cwQ0lBaEJnQVJxSUExQmdBUnFja0gvQjBzTkFpQUFJQWNnREdwQklHb2lBeUFCUVFGMUlBOXFJZ1ZyUVFaMUlnczJBamdnQUNBTUlBZHJRU0JxSWdjZ0FTQVBRUUYxSWc5cmFrRUdkU0lNTmdJb0lBQWdCeUFQSUFGcmFrRUdkU0lCTmdJWUlBQWdBeUFGYWtFR2RTSUROZ0lJSUFOQmdBUnFJQUZCZ0FScWNrSC9CMHNOQWlBTFFZQUVhaUFNUVlBRWFuSkIvd2RMRFFJZ0FDQUdJQkZxUVNCcUlnRWdCRUVCZFNBS2FpSURhMEVHZFNJSE5nSThJQUFnRVNBR2EwRWdhaUlHSUFRZ0NrRUJkU0lGYTJwQkJuVWlDallDTENBQUlBWWdCU0FFYTJwQkJuVWlCRFlDSENBQUlBRWdBMnBCQm5VaUFEWUNEQ0FBUVlBRWFpQUVRWUFFYW5KQi93ZExEUUlnQjBHQUJHb2dDa0dBQkdweVFmOEhUUTBCREFJTElBTkI0Z0J4UlFSQVFRRWhBaUFBS0FJQVFTQnFRUVoxSWdGQmdBUnFRZjhIU3cwQ0lBQWdBVFlDT0NBQUlBRTJBandnQUNBQk5nSTBJQUFnQVRZQ01DQUFJQUUyQWl3Z0FDQUJOZ0lvSUFBZ0FUWUNKQ0FBSUFFMkFpQWdBQ0FCTmdJY0lBQWdBVFlDR0NBQUlBRTJBaFFnQUNBQk5nSVFJQUFnQVRZQ0RDQUFJQUUyQWdnZ0FDQUJOZ0lFSUFBZ0FUWUNBQXdCQzBFQklRSWdBQ0FBS0FJRUlBRnNJZ2NnQUNnQ0dDQUJiQ0lHUVFGMWFpSURJQUFvQWdBaUJTQUFLQUlVSUFSc0lnUnFJZ3BxUVNCcVFRWjFJZ0UyQWpBZ0FDQUtJQU5yUVNCcVFRWjFJZ00yQWd3Z0FDQUZJQVJySWdVZ0JpQUhRUUYxSWdkcmFrRWdha0VHZFNJRU5nSUlJQUFnQnlBR2F5QUZha0VnYWtFR2RTSUdOZ0lFSUFBZ0FUWUNBQ0FBSUFFMkFpQWdBQ0FHTmdJMElBQWdBVFlDRUNBQUlBWTJBaVFnQUNBRU5nSTRJQUFnQmpZQ0ZDQUFJQVEyQWlnZ0FDQUROZ0k4SUFBZ0JEWUNHQ0FBSUFNMkFpd2dBQ0FETmdJY0lBTkJnQVJxSUFGQmdBUnFJQVJCZ0FScUlBWkJnQVJxY25KeVFmOEhTdzBCQzBFQUlRSUxJQUlMOHdJQ0FuOEJmZ0pBSUFKRkRRQWdBQ0FDYWlJRFFYOXFJQUU2QUFBZ0FDQUJPZ0FBSUFKQkEwa05BQ0FEUVg1cUlBRTZBQUFnQUNBQk9nQUJJQU5CZldvZ0FUb0FBQ0FBSUFFNkFBSWdBa0VIU1EwQUlBTkJmR29nQVRvQUFDQUFJQUU2QUFNZ0FrRUpTUTBBSUFCQkFDQUFhMEVEY1NJRWFpSURJQUZCL3dGeFFZR0NoQWhzSWdFMkFnQWdBeUFDSUFSclFYeHhJZ1JxSWdKQmZHb2dBVFlDQUNBRVFRbEpEUUFnQXlBQk5nSUlJQU1nQVRZQ0JDQUNRWGhxSUFFMkFnQWdBa0YwYWlBQk5nSUFJQVJCR1VrTkFDQURJQUUyQWhnZ0F5QUJOZ0lVSUFNZ0FUWUNFQ0FESUFFMkFnd2dBa0Z3YWlBQk5nSUFJQUpCYkdvZ0FUWUNBQ0FDUVdocUlBRTJBZ0FnQWtGa2FpQUJOZ0lBSUFRZ0EwRUVjVUVZY2lJRWF5SUNRU0JKRFFBZ0FhMGlCVUlnaGlBRmhDRUZJQU1nQkdvaEFRTkFJQUVnQlRjREdDQUJJQVUzQXhBZ0FTQUZOd01JSUFFZ0JUY0RBQ0FCUVNCcUlRRWdBa0ZnYWlJQ1FSOUxEUUFMQ3lBQUMvSURBUU4vSUFFb0FnQWlBMEgvLy84SFJ3UkFJQUVvQWdRaEJDQUFJQUlnQWtFRGNTQUNRUkJKSWdJYlFRSjBJZ1ZCOENscUtBSUFRUkJCQ0NBQ0d5SUNiR29nQlVHd0tXb29BZ0JxSWdBZ0F5QUFMUUFBYWtHd0xtb3RBQUE2QUFBZ0FTZ0NDQ0VESUFBZ0JDQUFMUUFCYWtHd0xtb3RBQUE2QUFFZ0FTZ0NEQ0VFSUFBZ0F5QUFMUUFDYWtHd0xtb3RBQUE2QUFJZ0FDQUVJQUF0QUFOcVFiQXVhaTBBQURvQUF5QUJLQUlVSVFNZ0FDQUNhaUlBSUFFb0FoQWdBQzBBQUdwQnNDNXFMUUFBT2dBQUlBRW9BaGdoQkNBQUlBTWdBQzBBQVdwQnNDNXFMUUFBT2dBQklBRW9BaHdoQXlBQUlBUWdBQzBBQW1wQnNDNXFMUUFBT2dBQ0lBQWdBeUFBTFFBRGFrR3dMbW90QUFBNkFBTWdBU2dDSkNFRElBQWdBbW9pQUNBQktBSWdJQUF0QUFCcVFiQXVhaTBBQURvQUFDQUJLQUlvSVFRZ0FDQURJQUF0QUFGcVFiQXVhaTBBQURvQUFTQUJLQUlzSVFNZ0FDQUVJQUF0QUFKcVFiQXVhaTBBQURvQUFpQUFJQU1nQUMwQUEycEJzQzVxTFFBQU9nQURJQUVvQWpRaEF5QUFJQUpxSWdBZ0FTZ0NNQ0FBTFFBQWFrR3dMbW90QUFBNkFBQWdBU2dDT0NFQ0lBQWdBeUFBTFFBQmFrR3dMbW90QUFBNkFBRWdBU2dDUENFQklBQWdBaUFBTFFBQ2FrR3dMbW90QUFBNkFBSWdBQ0FCSUFBdEFBTnFRYkF1YWkwQUFEb0FBd3NMMHhBQkRIOGpBRUdBQVdzaUNpUUFJQUFRRHlFRVFRRWhCUUpBQWtBQ2Z5QUNRUUZOQkVBZ0JFRUFTQTBDSUFSQkdYWkIvZ0J4UVlBSWFpQUVRWUNBZ09BQVR3MEJHaUFFUVJWMlFmNFBjVUhBQ0dvZ0JFR0FnSUFJVHcwQkdpQUVRUkYyUWY3L0FYRkJrQWxxSUFSQmdJQ0FBVThOQVJvZ0JFRVFka0VCZEVHUUNtb01BUXNnQWtFRFRRUkFJQVJCZjB3RVFFRUNRYUlRSUFSQmdJQ0FnQVJ4R3lFRkRBTUxJQVJCR1haQi9nQnhRZEFLYWlBRVFZQ0FnSUFCVHcwQkdpQUVRUloyUWY0SGNVR1FDMm9nQkVHQWdJQVFUdzBCR2lBRVFSRjJRZjcvQVhGQjBBdHFEQUVMSUFKQkIwMEVRQ0FFUVJwMklnSkJlR3BCT0VrRVFDQUNRUUYwUWRBTmFnd0NDeUFFUVJWMlFmNFBjVUhRRG1vTUFRc2dCRUVaZGtIK0FIRkIwQkJxSUFKQkVFME5BQm9nQkVFZGRpSUNCRUFnQWtFQmRFSFFFV29NQVFzZ0JFRVhka0grQTNGQjRCRnFDeThCQUNJRkRRQkJBU0VMREFFTFFRRWhDeUFGUVF0Mklna2dBMHNOQUVFZ0lBVkJIM0VpQm1zaEFnSkFJQWxGQkVBTUFRc2dCQ0FHZENFRUFrQWdCVUVGZGtFL2NTSU1SUVJBREFFTElBSWdERWtFUUNBQUlBWVFDMEYvUmcwRElBQVFEeUVFUVNBaEFnc2dCQ0FNZENFR1FRRWdERUYvYW5RaEJ5QUVRU0FnREd0MklRUURRQ0FLUVVCcklBaEJBblJxUVg5QkFTQUVJQWR4R3pZQ0FDQUlRUUZxSVFnZ0IwRUJkaUlIRFFBTElBSWdER3NoQWlBR0lRUUxJQWdnQ1VrRVFDQU1RUU5KSWc4Z0JVSC9yd0ZMY1NFRkEwQWdBa0VQVFFSQUlBQkJJQ0FDYXhBTFFYOUdCRUFNQlFzZ0FCQVBJUVJCSUNFQ0MwRUFJUVlDUUFKQUFuOENRQ0FFUVFCSURRQkJBU0VHSUFSQi8vLy8vd05MRFFCQkFpRUdJQVJCLy8vLy93RkxEUUJCQXlFR0lBUkIvLy8vL3dCTERRQkJCQ0VHSUFSQi8vLy9QMHNOQUVFRklRWWdCRUgvLy84ZlN3MEFRUVloQmlBRVFmLy8vdzlMRFFCQkJ5RUdJQVJCLy8vL0Iwc05BRUVJSVFZZ0JFSC8vLzhEU3cwQVFRa2hCaUFFUWYvLy93RkxEUUJCQ2lFR0lBUkIvLy8vQUVzTkFFRUxJUVlnQkVILy96OUxEUUJCRENFR0lBUkIvLzhmU3cwQVFRMGhCaUFFUWYvL0Qwc05BQUovQWtBZ0JFSC8vd2ROQkVBZ0JFR0FnSHh4UVlDQUJFWU5BUXdLQ3lBRlFRUWdCUnNoQmlBRVFROTBJUVJCRGlFSElBSkJjV29NQVFzZ0JVRUJJQVViSVFVZ0JFRVFkQ0VFUVF3aEJrRVBJUWNnQWtGd2Fnc2hBaUFISUFWMElRY2dCVVVNQVFzZ0JpQUZkQ0VIUVFFaERpQUNJQVpCQVdvaUJtc2hBaUFFSUFaMElRUWdCVVVOQVNBRklRWkJBQXNoRGlBQ0lBWlBCSDhnQkFVZ0FFRWdJQUpyRUF0QmYwWUVRQXdIQzBFZ0lRSWdBQkFQQ3lFTklBSWdCbXNoQWlBTklBWjBJUVFnRFVFZ0lBWnJkaUFIYWlFSERBRUxRUUFoQlFzZ0NrRkFheUFJUVFKMGFrRUFJQWRCQW1vZ0J5QUlJQXhHR3lBSElBOGJJZzFCQW1wQkFYWWlCbXNnQmlBTlFRRnhHellDQUVFQklBVWdEaHNpQlNBRlFRWkpJQVpCQXlBRlFYOXFkRXB4YWlFRklBaEJBV29pQ0NBSlJ3MEFDd3RCQUNFSEFrQWdDU0FEVHdSQVFRQWhDQXdCQ3dKQUlBSkJDRXNFUUNBQ0lRVU1BUXRCSUNFRklBQkJJQ0FDYXhBTFFYOUdEUU1nQUJBUElRUUxBa0FDUUFKL0FrQWdBMEVFUndSQUlBbEJmMm9pQWtFTlN3MERBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQWdBa0VCYXc0TkFBRUNBd1FGQmdjSUNRb0xEQTRMSUFSQkduWkI0QkpxREE0TElBUkJHblpCb0JOcURBMExJQVJCRzNaQjRCTnFEQXdMSUFSQkczWkJnQlJxREFzTElBUkJHblpCb0JScURBb0xJQVJCR25aQjRCUnFEQWtMSUFSQkduWkJvQlZxREFnTElBUkJHblpCNEJWcURBY0xJQVJCRzNaQm9CWnFEQVlMSUFSQkhIWkJ3QlpxREFVTElBUkJISFpCMEJacURBUUxJQVJCSFhaQjRCWnFEQU1MSUFSQkhuWkI2QlpxREFJTElBUkJBRWdFUUVFQklRSU1CQXRCRVNFQ0lBbEJBMFlOQTBFU0lRSWdCRUgvLy8vL0Ewc05BMEVpSVFJZ0NVRUNSZzBEUVNOQk15QUVRZi8vLy84QlN4c2hBZ3dEQ3lBRVFSdDJRYUFTYWlBRVFSZDJRY0FTYWlBRVFmLy8vLzhBU3hzTExRQUFJZ0lOQVF3RUMwRVJRUUVnQkVFQVNCc2hBZ3NnQWtFRWRpRUlJQVVnQWtFUGNTSURheUVDSUFRZ0EzUWhCQXNnQ1VGL2FpSURCRUFEUUFKL0lBZ0VRQ0FDUVFwTkJFQWdBRUVnSUFKckVBdEJmMFlFUUF3SEN5QUFFQThoQkVFZ0lRSUxBa0FDZndKQUlBaEJmMm9pQlVFRlRRUkFBa0FDUUFKQUFrQUNRQ0FGUVFGckRnVUFBUUlEQkFZTElBUkJIblpCN2hacURBWUxJQVJCSG5aQjhoWnFEQVVMSUFSQkhYWkI5aFpxREFRTElBUkJIWFpCL2hacURBTUxJQVJCSFhaQmhoZHFEQUlMQW45Qjh3QWdCRUVaZGtId0FIRnJJQVJCZ0lDQWdBSlBEUUFhUWZRQUlBUkIvLy8vL3dCTERRQWFRWVVCSUFSQi8vLy9QMHNOQUJwQmxnRWdCRUgvLy84ZlN3MEFHa0duQVNBRVFmLy8vdzlMRFFBYVFiZ0JJQVJCLy8vL0Iwc05BQnBCeVFFZ0JFSC8vLzhEU3cwQUdrSGFBU0FFUWYvLy93RkxEUUFhUVFCQjZ3RWdCRUdBZ0lBQlNSc0xJZ1ZCQkhZZ0NFME5BZ3dJQ3lBRVFSOTJRZXdXYWdzdEFBQWhCUXNnQlVVRVFBd0dDeUFLSUFkQkFuUnFJQVZCQkhZaUJrRUJhallDQUNBQ0lBVkJEM0VpQldzaEFpQUVJQVYwSVFRZ0NDQUdhd3dCQ3lBS0lBZEJBblJxUVFFMkFnQkJBQXNoQ0NBSFFRRnFJZ2NnQTBjTkFBc2dBU0FJUVFKMGFpQUtRVUJySUFOQkFuUnFLQUlBTmdJQUlBbEJmbW9oQlVFQklBaDBJUWNEUUNBQklBb2dCU0lEUVFKMElnVnFLQUlBSUFocUlnaEJBblJxSUFwQlFHc2dCV29vQWdBMkFnQWdBMEYvYWlFRlFRRWdDSFFnQjNJaEJ5QUREUUFMREFFTElBRWdDRUVDZEdvZ0NrRkFheUFEUVFKMGFpZ0NBRFlDQUVFQklBaDBJUWNMSUFCQklDQUNheEFMRFFBZ0IwRVFkQ0FKUVFSMGNpRUxDeUFLUVlBQmFpUUFJQXNMelM0QkMzOGpBRUVRYXlJTEpBQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUFCQjlBRk5CRUJCdE1BQUtBSUFJZ1pCRUNBQVFRdHFRWGh4SUFCQkMwa2JJZ1ZCQTNZaUFIWWlBVUVEY1FSQUlBRkJmM05CQVhFZ0FHb2lBa0VEZENJRVFlVEFBR29vQWdBaUFVRUlhaUVBQWtBZ0FTZ0NDQ0lESUFSQjNNQUFhaUlFUmdSQVFiVEFBQ0FHUVg0Z0FuZHhOZ0lBREFFTFFjVEFBQ2dDQUJvZ0F5QUVOZ0lNSUFRZ0F6WUNDQXNnQVNBQ1FRTjBJZ0pCQTNJMkFnUWdBU0FDYWlJQklBRW9BZ1JCQVhJMkFnUU1EQXNnQlVHOHdBQW9BZ0FpQ0UwTkFTQUJCRUFDUUVFQ0lBQjBJZ0pCQUNBQ2EzSWdBU0FBZEhFaUFFRUFJQUJyY1VGL2FpSUFJQUJCREhaQkVIRWlBSFlpQVVFRmRrRUljU0lDSUFCeUlBRWdBbllpQUVFQ2RrRUVjU0lCY2lBQUlBRjJJZ0JCQVhaQkFuRWlBWElnQUNBQmRpSUFRUUYyUVFGeElnRnlJQUFnQVhacUlnSkJBM1FpQTBIa3dBQnFLQUlBSWdFb0FnZ2lBQ0FEUWR6QUFHb2lBMFlFUUVHMHdBQWdCa0YrSUFKM2NTSUdOZ0lBREFFTFFjVEFBQ2dDQUJvZ0FDQUROZ0lNSUFNZ0FEWUNDQXNnQVVFSWFpRUFJQUVnQlVFRGNqWUNCQ0FCSUFWcUlnY2dBa0VEZENJQ0lBVnJJZ05CQVhJMkFnUWdBU0FDYWlBRE5nSUFJQWdFUUNBSVFRTjJJZ1JCQTNSQjNNQUFhaUVCUWNqQUFDZ0NBQ0VDQW44Z0JrRUJJQVIwSWdSeFJRUkFRYlRBQUNBRUlBWnlOZ0lBSUFFTUFRc2dBU2dDQ0FzaEJDQUJJQUkyQWdnZ0JDQUNOZ0lNSUFJZ0FUWUNEQ0FDSUFRMkFnZ0xRY2pBQUNBSE5nSUFRYnpBQUNBRE5nSUFEQXdMUWJqQUFDZ0NBQ0lLUlEwQklBcEJBQ0FLYTNGQmYyb2lBQ0FBUVF4MlFSQnhJZ0IySWdGQkJYWkJDSEVpQWlBQWNpQUJJQUoySWdCQkFuWkJCSEVpQVhJZ0FDQUJkaUlBUVFGMlFRSnhJZ0Z5SUFBZ0FYWWlBRUVCZGtFQmNTSUJjaUFBSUFGMmFrRUNkRUhrd2dCcUtBSUFJZ0VvQWdSQmVIRWdCV3NoQXlBQklRSURRQUpBSUFJb0FoQWlBRVVFUUNBQ0tBSVVJZ0JGRFFFTElBQW9BZ1JCZUhFZ0JXc2lBaUFESUFJZ0Ewa2lBaHNoQXlBQUlBRWdBaHNoQVNBQUlRSU1BUXNMSUFFb0FoZ2hDU0FCSUFFb0Fnd2lCRWNFUUVIRXdBQW9BZ0FnQVNnQ0NDSUFUUVJBSUFBb0Fnd2FDeUFBSUFRMkFnd2dCQ0FBTmdJSURBc0xJQUZCRkdvaUFpZ0NBQ0lBUlFSQUlBRW9BaEFpQUVVTkF5QUJRUkJxSVFJTEEwQWdBaUVISUFBaUJFRVVhaUlDS0FJQUlnQU5BQ0FFUVJCcUlRSWdCQ2dDRUNJQURRQUxJQWRCQURZQ0FBd0tDMEYvSVFVZ0FFRy9mMHNOQUNBQVFRdHFJZ0JCZUhFaEJVRzR3QUFvQWdBaUIwVU5BRUVBSUFWcklRSUNRQUpBQWtBQ2YwRUFJQUJCQ0hZaUFFVU5BQnBCSHlBRlFmLy8vd2RMRFFBYUlBQWdBRUdBL2o5cVFSQjJRUWh4SWdCMElnRWdBVUdBNEI5cVFSQjJRUVJ4SWdGMElnTWdBMEdBZ0E5cVFSQjJRUUp4SWdOMFFROTJJQUFnQVhJZ0EzSnJJZ0JCQVhRZ0JTQUFRUlZxZGtFQmNYSkJIR29MSWdoQkFuUkI1TUlBYWlnQ0FDSURSUVJBUVFBaEFBd0JDeUFGUVFCQkdTQUlRUUYyYXlBSVFSOUdHM1FoQVVFQUlRQURRQUpBSUFNb0FnUkJlSEVnQldzaUJpQUNUdzBBSUFNaEJDQUdJZ0lOQUVFQUlRSWdBeUVBREFNTElBQWdBeWdDRkNJR0lBWWdBeUFCUVIxMlFRUnhhaWdDRUNJRFJoc2dBQ0FHR3lFQUlBRWdBMEVBUjNRaEFTQUREUUFMQ3lBQUlBUnlSUVJBUVFJZ0NIUWlBRUVBSUFCcmNpQUhjU0lBUlEwRElBQkJBQ0FBYTNGQmYyb2lBQ0FBUVF4MlFSQnhJZ0IySWdGQkJYWkJDSEVpQXlBQWNpQUJJQU4ySWdCQkFuWkJCSEVpQVhJZ0FDQUJkaUlBUVFGMlFRSnhJZ0Z5SUFBZ0FYWWlBRUVCZGtFQmNTSUJjaUFBSUFGMmFrRUNkRUhrd2dCcUtBSUFJUUFMSUFCRkRRRUxBMEFnQUNnQ0JFRjRjU0FGYXlJRElBSkpJUUVnQXlBQ0lBRWJJUUlnQUNBRUlBRWJJUVFnQUNnQ0VDSUJCSDhnQVFVZ0FDZ0NGQXNpQUEwQUN3c2dCRVVOQUNBQ1FiekFBQ2dDQUNBRmEwOE5BQ0FFS0FJWUlRZ2dCQ0FFS0FJTUlnRkhCRUJCeE1BQUtBSUFJQVFvQWdnaUFFMEVRQ0FBS0FJTUdnc2dBQ0FCTmdJTUlBRWdBRFlDQ0F3SkN5QUVRUlJxSWdNb0FnQWlBRVVFUUNBRUtBSVFJZ0JGRFFNZ0JFRVFhaUVEQ3dOQUlBTWhCaUFBSWdGQkZHb2lBeWdDQUNJQURRQWdBVUVRYWlFRElBRW9BaEFpQUEwQUN5QUdRUUEyQWdBTUNBdEJ2TUFBS0FJQUlnRWdCVThFUUVISXdBQW9BZ0FoQUFKQUlBRWdCV3NpQWtFUVR3UkFRYnpBQUNBQ05nSUFRY2pBQUNBQUlBVnFJZ00yQWdBZ0F5QUNRUUZ5TmdJRUlBQWdBV29nQWpZQ0FDQUFJQVZCQTNJMkFnUU1BUXRCeU1BQVFRQTJBZ0JCdk1BQVFRQTJBZ0FnQUNBQlFRTnlOZ0lFSUFBZ0FXb2lBU0FCS0FJRVFRRnlOZ0lFQ3lBQVFRaHFJUUFNQ2d0QndNQUFLQUlBSWdFZ0JVc0VRRUhBd0FBZ0FTQUZheUlCTmdJQVFjekFBRUhNd0FBb0FnQWlBQ0FGYWlJQ05nSUFJQUlnQVVFQmNqWUNCQ0FBSUFWQkEzSTJBZ1FnQUVFSWFpRUFEQW9MUVFBaEFDQUZRUzlxSWdRQ2YwR014QUFvQWdBRVFFR1V4QUFvQWdBTUFRdEJtTVFBUW44M0FnQkJrTVFBUW9DZ2dJQ0FnQVEzQWdCQmpNUUFJQXRCREdwQmNIRkIyS3JWcWdWek5nSUFRYURFQUVFQU5nSUFRZkREQUVFQU5nSUFRWUFnQ3lJQ2FpSUdRUUFnQW1zaUIzRWlBaUFGVFEwSlFlekRBQ2dDQUNJREJFQkI1TU1BS0FJQUlnZ2dBbW9pQ1NBSVRRMEtJQWtnQTBzTkNndEI4TU1BTFFBQVFRUnhEUVFDUUFKQVFjekFBQ2dDQUNJREJFQkI5TU1BSVFBRFFDQUFLQUlBSWdnZ0EwMEVRQ0FJSUFBb0FnUnFJQU5MRFFNTElBQW9BZ2dpQUEwQUN3dEJBQkFUSWdGQmYwWU5CU0FDSVFaQmtNUUFLQUlBSWdCQmYyb2lBeUFCY1FSQUlBSWdBV3NnQVNBRGFrRUFJQUJyY1dvaEJnc2dCaUFGVFEwRklBWkIvdi8vL3dkTERRVkI3TU1BS0FJQUlnQUVRRUhrd3dBb0FnQWlBeUFHYWlJSElBTk5EUVlnQnlBQVN3MEdDeUFHRUJNaUFDQUJSdzBCREFjTElBWWdBV3NnQjNFaUJrSCsvLy8vQjBzTkJDQUdFQk1pQVNBQUtBSUFJQUFvQWdScVJnMERJQUVoQUFzQ1FDQUZRVEJxSUFaTkRRQWdBRUYvUmcwQVFaVEVBQ2dDQUNJQklBUWdCbXRxUVFBZ0FXdHhJZ0ZCL3YvLy93ZExCRUFnQUNFQkRBY0xJQUVRRTBGL1J3UkFJQUVnQm1vaEJpQUFJUUVNQnd0QkFDQUdheEFUR2d3RUN5QUFJZ0ZCZjBjTkJRd0RDMEVBSVFRTUJ3dEJBQ0VCREFVTElBRkJmMGNOQWd0QjhNTUFRZkREQUNnQ0FFRUVjallDQUFzZ0FrSCsvLy8vQjBzTkFTQUNFQk1pQVVFQUVCTWlBRThOQVNBQlFYOUdEUUVnQUVGL1JnMEJJQUFnQVdzaUJpQUZRU2hxVFEwQkMwSGt3d0JCNU1NQUtBSUFJQVpxSWdBMkFnQWdBRUhvd3dBb0FnQkxCRUJCNk1NQUlBQTJBZ0FMQWtBQ1FBSkFRY3pBQUNnQ0FDSURCRUJCOU1NQUlRQURRQ0FCSUFBb0FnQWlBaUFBS0FJRUlnUnFSZzBDSUFBb0FnZ2lBQTBBQ3d3Q0MwSEV3QUFvQWdBaUFFRUFJQUVnQUU4YlJRUkFRY1RBQUNBQk5nSUFDMEVBSVFCQitNTUFJQVkyQWdCQjlNTUFJQUUyQWdCQjFNQUFRWDgyQWdCQjJNQUFRWXpFQUNnQ0FEWUNBRUdBeEFCQkFEWUNBQU5BSUFCQkEzUWlBa0hrd0FCcUlBSkIzTUFBYWlJRE5nSUFJQUpCNk1BQWFpQUROZ0lBSUFCQkFXb2lBRUVnUncwQUMwSEF3QUFnQmtGWWFpSUFRWGdnQVd0QkIzRkJBQ0FCUVFocVFRZHhHeUlDYXlJRE5nSUFRY3pBQUNBQklBSnFJZ0kyQWdBZ0FpQURRUUZ5TmdJRUlBQWdBV3BCS0RZQ0JFSFF3QUJCbk1RQUtBSUFOZ0lBREFJTElBQXRBQXhCQ0hFTkFDQUJJQU5ORFFBZ0FpQURTdzBBSUFBZ0JDQUdhallDQkVITXdBQWdBMEY0SUFOclFRZHhRUUFnQTBFSWFrRUhjUnNpQUdvaUFUWUNBRUhBd0FCQndNQUFLQUlBSUFacUlnSWdBR3NpQURZQ0FDQUJJQUJCQVhJMkFnUWdBaUFEYWtFb05nSUVRZERBQUVHY3hBQW9BZ0EyQWdBTUFRc2dBVUhFd0FBb0FnQWlCRWtFUUVIRXdBQWdBVFlDQUNBQklRUUxJQUVnQm1vaEFrSDB3d0FoQUFKQUFrQUNRQUpBQWtBQ1FBTkFJQUlnQUNnQ0FFY0VRQ0FBS0FJSUlnQU5BUXdDQ3dzZ0FDMEFERUVJY1VVTkFRdEI5TU1BSVFBRFFDQUFLQUlBSWdJZ0EwMEVRQ0FDSUFBb0FnUnFJZ1FnQTBzTkF3c2dBQ2dDQ0NFQURBQUFDd0FMSUFBZ0FUWUNBQ0FBSUFBb0FnUWdCbW8yQWdRZ0FVRjRJQUZyUVFkeFFRQWdBVUVJYWtFSGNSdHFJZ2tnQlVFRGNqWUNCQ0FDUVhnZ0FtdEJCM0ZCQUNBQ1FRaHFRUWR4RzJvaUFTQUpheUFGYXlFQUlBVWdDV29oQnlBQklBTkdCRUJCek1BQUlBYzJBZ0JCd01BQVFjREFBQ2dDQUNBQWFpSUFOZ0lBSUFjZ0FFRUJjallDQkF3REN5QUJRY2pBQUNnQ0FFWUVRRUhJd0FBZ0J6WUNBRUc4d0FCQnZNQUFLQUlBSUFCcUlnQTJBZ0FnQnlBQVFRRnlOZ0lFSUFBZ0Iyb2dBRFlDQUF3REN5QUJLQUlFSWdKQkEzRkJBVVlFUUNBQ1FYaHhJUW9DUUNBQ1FmOEJUUVJBSUFFb0FnZ2lBeUFDUVFOMklnUkJBM1JCM01BQWFrY2FJQU1nQVNnQ0RDSUNSZ1JBUWJUQUFFRzB3QUFvQWdCQmZpQUVkM0UyQWdBTUFnc2dBeUFDTmdJTUlBSWdBellDQ0F3QkN5QUJLQUlZSVFnQ1FDQUJJQUVvQWd3aUJrY0VRQ0FFSUFFb0FnZ2lBazBFUUNBQ0tBSU1HZ3NnQWlBR05nSU1JQVlnQWpZQ0NBd0JDd0pBSUFGQkZHb2lBeWdDQUNJRkRRQWdBVUVRYWlJREtBSUFJZ1VOQUVFQUlRWU1BUXNEUUNBRElRSWdCU0lHUVJScUlnTW9BZ0FpQlEwQUlBWkJFR29oQXlBR0tBSVFJZ1VOQUFzZ0FrRUFOZ0lBQ3lBSVJRMEFBa0FnQVNBQktBSWNJZ0pCQW5SQjVNSUFhaUlES0FJQVJnUkFJQU1nQmpZQ0FDQUdEUUZCdU1BQVFiakFBQ2dDQUVGK0lBSjNjVFlDQUF3Q0N5QUlRUkJCRkNBSUtBSVFJQUZHRzJvZ0JqWUNBQ0FHUlEwQkN5QUdJQWcyQWhnZ0FTZ0NFQ0lDQkVBZ0JpQUNOZ0lRSUFJZ0JqWUNHQXNnQVNnQ0ZDSUNSUTBBSUFZZ0FqWUNGQ0FDSUFZMkFoZ0xJQUVnQ21vaEFTQUFJQXBxSVFBTElBRWdBU2dDQkVGK2NUWUNCQ0FISUFCQkFYSTJBZ1FnQUNBSGFpQUFOZ0lBSUFCQi93Rk5CRUFnQUVFRGRpSUJRUU4wUWR6QUFHb2hBQUovUWJUQUFDZ0NBQ0lDUVFFZ0FYUWlBWEZGQkVCQnRNQUFJQUVnQW5JMkFnQWdBQXdCQ3lBQUtBSUlDeUVCSUFBZ0J6WUNDQ0FCSUFjMkFnd2dCeUFBTmdJTUlBY2dBVFlDQ0F3REN5QUhBbjlCQUNBQVFRaDJJZ0ZGRFFBYVFSOGdBRUgvLy84SFN3MEFHaUFCSUFGQmdQNC9ha0VRZGtFSWNTSUJkQ0lDSUFKQmdPQWZha0VRZGtFRWNTSUNkQ0lESUFOQmdJQVBha0VRZGtFQ2NTSURkRUVQZGlBQklBSnlJQU55YXlJQlFRRjBJQUFnQVVFVmFuWkJBWEZ5UVJ4cUN5SUJOZ0ljSUFkQ0FEY0NFQ0FCUVFKMFFlVENBR29oQWdKQVFiakFBQ2dDQUNJRFFRRWdBWFFpQkhGRkJFQkJ1TUFBSUFNZ0JISTJBZ0FnQWlBSE5nSUFEQUVMSUFCQkFFRVpJQUZCQVhacklBRkJIMFliZENFRElBSW9BZ0FoQVFOQUlBRWlBaWdDQkVGNGNTQUFSZzBESUFOQkhYWWhBU0FEUVFGMElRTWdBaUFCUVFSeGFpSUVLQUlRSWdFTkFBc2dCQ0FITmdJUUN5QUhJQUkyQWhnZ0J5QUhOZ0lNSUFjZ0J6WUNDQXdDQzBIQXdBQWdCa0ZZYWlJQVFYZ2dBV3RCQjNGQkFDQUJRUWhxUVFkeEd5SUNheUlITmdJQVFjekFBQ0FCSUFKcUlnSTJBZ0FnQWlBSFFRRnlOZ0lFSUFBZ0FXcEJLRFlDQkVIUXdBQkJuTVFBS0FJQU5nSUFJQU1nQkVFbklBUnJRUWR4UVFBZ0JFRlpha0VIY1J0cVFWRnFJZ0FnQUNBRFFSQnFTUnNpQWtFYk5nSUVJQUpCL01NQUtRSUFOd0lRSUFKQjlNTUFLUUlBTndJSVFmekRBQ0FDUVFocU5nSUFRZmpEQUNBR05nSUFRZlREQUNBQk5nSUFRWURFQUVFQU5nSUFJQUpCR0dvaEFBTkFJQUJCQnpZQ0JDQUFRUWhxSVFFZ0FFRUVhaUVBSUFRZ0FVc05BQXNnQWlBRFJnMERJQUlnQWlnQ0JFRitjVFlDQkNBRElBSWdBMnNpQkVFQmNqWUNCQ0FDSUFRMkFnQWdCRUgvQVUwRVFDQUVRUU4ySWdGQkEzUkIzTUFBYWlFQUFuOUJ0TUFBS0FJQUlnSkJBU0FCZENJQmNVVUVRRUcwd0FBZ0FTQUNjallDQUNBQURBRUxJQUFvQWdnTElRRWdBQ0FETmdJSUlBRWdBellDRENBRElBQTJBZ3dnQXlBQk5nSUlEQVFMSUFOQ0FEY0NFQ0FEQW45QkFDQUVRUWgySWdCRkRRQWFRUjhnQkVILy8vOEhTdzBBR2lBQUlBQkJnUDQvYWtFUWRrRUljU0lBZENJQklBRkJnT0FmYWtFUWRrRUVjU0lCZENJQ0lBSkJnSUFQYWtFUWRrRUNjU0lDZEVFUGRpQUFJQUZ5SUFKeWF5SUFRUUYwSUFRZ0FFRVZhblpCQVhGeVFSeHFDeUlBTmdJY0lBQkJBblJCNU1JQWFpRUJBa0JCdU1BQUtBSUFJZ0pCQVNBQWRDSUdjVVVFUUVHNHdBQWdBaUFHY2pZQ0FDQUJJQU0yQWdBZ0F5QUJOZ0lZREFFTElBUkJBRUVaSUFCQkFYWnJJQUJCSDBZYmRDRUFJQUVvQWdBaEFRTkFJQUVpQWlnQ0JFRjRjU0FFUmcwRUlBQkJIWFloQVNBQVFRRjBJUUFnQWlBQlFRUnhhaUlHS0FJUUlnRU5BQXNnQmlBRE5nSVFJQU1nQWpZQ0dBc2dBeUFETmdJTUlBTWdBellDQ0F3REN5QUNLQUlJSWdBZ0J6WUNEQ0FDSUFjMkFnZ2dCMEVBTmdJWUlBY2dBallDRENBSElBQTJBZ2dMSUFsQkNHb2hBQXdGQ3lBQ0tBSUlJZ0FnQXpZQ0RDQUNJQU0yQWdnZ0EwRUFOZ0lZSUFNZ0FqWUNEQ0FESUFBMkFnZ0xRY0RBQUNnQ0FDSUFJQVZORFFCQndNQUFJQUFnQldzaUFUWUNBRUhNd0FCQnpNQUFLQUlBSWdBZ0JXb2lBallDQUNBQ0lBRkJBWEkyQWdRZ0FDQUZRUU55TmdJRUlBQkJDR29oQUF3REMwR3d3QUJCTURZQ0FFRUFJUUFNQWdzQ1FDQUlSUTBBQWtBZ0JDZ0NIQ0lBUVFKMFFlVENBR29pQXlnQ0FDQUVSZ1JBSUFNZ0FUWUNBQ0FCRFFGQnVNQUFJQWRCZmlBQWQzRWlCellDQUF3Q0N5QUlRUkJCRkNBSUtBSVFJQVJHRzJvZ0FUWUNBQ0FCUlEwQkN5QUJJQWcyQWhnZ0JDZ0NFQ0lBQkVBZ0FTQUFOZ0lRSUFBZ0FUWUNHQXNnQkNnQ0ZDSUFSUTBBSUFFZ0FEWUNGQ0FBSUFFMkFoZ0xBa0FnQWtFUFRRUkFJQVFnQWlBRmFpSUFRUU55TmdJRUlBQWdCR29pQUNBQUtBSUVRUUZ5TmdJRURBRUxJQVFnQlVFRGNqWUNCQ0FFSUFWcUlnTWdBa0VCY2pZQ0JDQUNJQU5xSUFJMkFnQWdBa0gvQVUwRVFDQUNRUU4ySWdGQkEzUkIzTUFBYWlFQUFuOUJ0TUFBS0FJQUlnSkJBU0FCZENJQmNVVUVRRUcwd0FBZ0FTQUNjallDQUNBQURBRUxJQUFvQWdnTElRRWdBQ0FETmdJSUlBRWdBellDRENBRElBQTJBZ3dnQXlBQk5nSUlEQUVMSUFNQ2YwRUFJQUpCQ0hZaUFFVU5BQnBCSHlBQ1FmLy8vd2RMRFFBYUlBQWdBRUdBL2o5cVFSQjJRUWh4SWdCMElnRWdBVUdBNEI5cVFSQjJRUVJ4SWdGMElnVWdCVUdBZ0E5cVFSQjJRUUp4SWdWMFFROTJJQUFnQVhJZ0JYSnJJZ0JCQVhRZ0FpQUFRUlZxZGtFQmNYSkJIR29MSWdBMkFod2dBMElBTndJUUlBQkJBblJCNU1JQWFpRUJBa0FDUUNBSFFRRWdBSFFpQlhGRkJFQkJ1TUFBSUFVZ0IzSTJBZ0FnQVNBRE5nSUFEQUVMSUFKQkFFRVpJQUJCQVhacklBQkJIMFliZENFQUlBRW9BZ0FoQlFOQUlBVWlBU2dDQkVGNGNTQUNSZzBDSUFCQkhYWWhCU0FBUVFGMElRQWdBU0FGUVFSeGFpSUdLQUlRSWdVTkFBc2dCaUFETmdJUUN5QURJQUUyQWhnZ0F5QUROZ0lNSUFNZ0F6WUNDQXdCQ3lBQktBSUlJZ0FnQXpZQ0RDQUJJQU0yQWdnZ0EwRUFOZ0lZSUFNZ0FUWUNEQ0FESUFBMkFnZ0xJQVJCQ0dvaEFBd0JDd0pBSUFsRkRRQUNRQ0FCS0FJY0lnQkJBblJCNU1JQWFpSUNLQUlBSUFGR0JFQWdBaUFFTmdJQUlBUU5BVUc0d0FBZ0NrRitJQUIzY1RZQ0FBd0NDeUFKUVJCQkZDQUpLQUlRSUFGR0cyb2dCRFlDQUNBRVJRMEJDeUFFSUFrMkFoZ2dBU2dDRUNJQUJFQWdCQ0FBTmdJUUlBQWdCRFlDR0FzZ0FTZ0NGQ0lBUlEwQUlBUWdBRFlDRkNBQUlBUTJBaGdMQWtBZ0EwRVBUUVJBSUFFZ0F5QUZhaUlBUVFOeU5nSUVJQUFnQVdvaUFDQUFLQUlFUVFGeU5nSUVEQUVMSUFFZ0JVRURjallDQkNBQklBVnFJZ1FnQTBFQmNqWUNCQ0FESUFScUlBTTJBZ0FnQ0FSQUlBaEJBM1lpQlVFRGRFSGN3QUJxSVFCQnlNQUFLQUlBSVFJQ2YwRUJJQVYwSWdVZ0JuRkZCRUJCdE1BQUlBVWdCbkkyQWdBZ0FBd0JDeUFBS0FJSUN5RUZJQUFnQWpZQ0NDQUZJQUkyQWd3Z0FpQUFOZ0lNSUFJZ0JUWUNDQXRCeU1BQUlBUTJBZ0JCdk1BQUlBTTJBZ0FMSUFGQkNHb2hBQXNnQzBFUWFpUUFJQUFMUkFFQmZ5QUFJQUFvQWhBZ0FXb2lBVFlDRUNBQUlBRkJCM0UyQWdoQmZ5RUNJQUVnQUNnQ0RFRURkRTBFZnlBQUlBQW9BZ0FnQVVFRGRtbzJBZ1JCQUFWQmZ3c0w1UWNCQ0g4Z0FDQUVRUUFnQm1zZ0FpQUNJQVpxUVFCSUd5SUNJQUlnQkVvYklnSnFJQUFnQWtFQVNoc2lDU0FGUVFBZ0Iyc2dBeUFESUFkcVFRQklHeUlBSUFBZ0JVb2JJZ0FnQkd4cUlBa2dBRUVBU2hzaEF5QUhRUUFnQUdzZ0FFRWZkWEVpQ1dzZ0FDQUhhaUlBSUFWcklneEJBQ0FBSUFWS0d5SVBheUVMSUFaQkFDQUNheUlPSUFKQkgzVnhJZzFySUFJZ0Jtb2lBQ0FFYTBFQUlBQWdCRW9pQlJzaUNtc2hBQUpBSUFKQkFFZ2dCWElpRUVVRVFDQUpCRUFEUUNBQklBTWdBQkFWSUFocUlRRWdDVUYvYWlJSkRRQUxDeUFMUlEwQkEwQWdBU0FESUFBUUZTQUlhaUVCSUFNZ0JHb2hBeUFMUVg5cUlnc05BQXNNQVFzQ1FDQUpSUTBBSUExRkJFQURRQ0FBSVFjZ0FTRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQVNBSWFpRUJJQWxCZjJvaUNRMEFEQUlBQ3dBTElBRWdEbW9oQmdOQUlBRWdBeTBBQUNBTkVBY2hBU0FBSVFjZ0JpRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQmlBSWFpRUdJQUVnQ0dvaEFTQUpRWDlxSWdrTkFBc0xJQXRGRFFBZ0RVVUVRQU5BSUFBaEJ5QUJJUUlnQXlFRklBQUVRQU5BSUFJZ0JTMEFBRG9BQUNBQ1FRRnFJUUlnQlVFQmFpRUZJQWRCZjJvaUJ3MEFDd3NnQ2dSQUlBSWdCVUYvYWkwQUFDQUtFQWNhQ3lBQklBaHFJUUVnQXlBRWFpRURJQXRCZjJvaUN3MEFEQUlBQ3dBTElBRWdEbW9oQ1FOQUlBRWdBeTBBQUNBTkVBY2hBU0FBSVFjZ0NTRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQ0NBSmFpRUpJQUVnQ0dvaEFTQURJQVJxSVFNZ0MwRi9haUlMRFFBTEN3SkFJQTlGRFFBZ0F5QUVheUVESUJCRkJFQURRQ0FCSUFNZ0FCQVZJQWhxSVFFZ0RFRi9haUlNRFFBTUFnQUxBQXNnRFVVRVFBTkFJQU1oQWlBQklRVWdBQ0VISUFBRVFBTkFJQVVnQWkwQUFEb0FBQ0FGUVFGcUlRVWdBa0VCYWlFQ0lBZEJmMm9pQncwQUN3c2dDZ1JBSUFVZ0FrRi9haTBBQUNBS0VBY2FDeUFCSUFocUlRRWdERUYvYWlJTURRQU1BZ0FMQUFzZ0FTQU9haUVKQTBBZ0FTQURMUUFBSUEwUUJ5RUJJQUFoQnlBSklRSWdBeUVGSUFBRVFBTkFJQUlnQlMwQUFEb0FBQ0FDUVFGcUlRSWdCVUVCYWlFRklBZEJmMm9pQncwQUN3c2dDZ1JBSUFJZ0JVRi9haTBBQUNBS0VBY2FDeUFJSUFscUlRa2dBU0FJYWlFQklBeEJmMm9pREEwQUN3c0w5QUlCQTM4Z0FVRURkRUh3Tm1vaUF5Z0NBQ0VGSUFNdEFBUWhBeUFCUVFOMFFiQTFhaUlCTFFBRUlRUUNRQ0FCS0FJQVFRUkdCRUFnQWlBRVFRRjBhaTRCQUNFQklBVkJCRVlFUUNBQklBSWdBMEVCZEdvdUFRQnFRUUZxUVFGMUR3c0NmeUFBS0FMTUFTSUNCRUFnQUNnQ0JDQUNLQUlFUmd3QkMwRUFDMFVOQVNBQklBQW9Bc3dCSUFOQkFYUnFMZ0VjYWtFQmFrRUJkUThMSUFWQkJFWUVRQ0FDSUFOQkFYUnFMZ0VBSVFFQ2Z5QUFLQUxJQVNJQ0JFQWdBQ2dDQkNBQ0tBSUVSZ3dCQzBFQUMwVU5BU0FCSUFBb0FzZ0JJQVJCQVhScUxnRWNha0VCYWtFQmRROExBbjhDZnlBQUtBTElBU0lCQkVBZ0FDZ0NCQ0FCS0FJRVJnd0JDMEVBQzBVRVFFRUFJUUpCQUF3QkMwRUJJUUlnQUNnQ3lBRWdCRUVCZEdvdUFSd0xJUUVDZnlBQUtBTE1BU0lFQkVBZ0FDZ0NCQ0FFS0FJRVJnd0JDMEVBQzBVTkFDQUFLQUxNQVNBRFFRRjBhaTRCSENFQUlBSkZCRUFnQUE4TElBQWdBV3BCQVdwQkFYVWhBUXNnQVF1SkJ3RUhmeUFESUFWcUlnMGdBUzRCQUNJTVFRSjFhaUVESUFRZ0Jtb2lEaUFCTGdFQ0lnOUJBblZxSVFRZ0FpZ0NDRUVFZENFSklBSW9BZ1JCQkhRaENpQUFJQVpCQkhScUlBVnFJUXNDUUNBTVFRTnhRUVIwSUE5QkEzRkJBblJ5UWRBN2FpZ0NBQ0lNUVE1TkJFQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnREVFQmF3NE9BUUlEQkFVR0J3Z0pDZ3NNRFE0QUN5QUNLQUlBSUFzZ0F5QUVJQW9nQ1NBSElBaEJFQkFNREE4TElBSW9BZ0FnQ3lBRElBUkJmbW9nQ2lBSklBY2dDRUVBRUNRTURnc2dBaWdDQUNBTElBTWdCRUYrYWlBS0lBa2dCeUFJRUVjTURRc2dBaWdDQUNBTElBTWdCRUYrYWlBS0lBa2dCeUFJUVFFUUpBd01DeUFDS0FJQUlBc2dBMEYrYWlBRUlBb2dDU0FISUFoQkFCQWpEQXNMSUFJb0FnQWdDeUFEUVg1cUlBUkJmbW9nQ2lBSklBY2dDRUVBRUJvTUNnc2dBaWdDQUNBTElBTkJmbW9nQkVGK2FpQUtJQWtnQnlBSVFRQVFJUXdKQ3lBQ0tBSUFJQXNnQTBGK2FpQUVRWDVxSUFvZ0NTQUhJQWhCQWhBYURBZ0xJQUlvQWdBZ0N5QURRWDVxSUFRZ0NpQUpJQWNnQ0JCR0RBY0xJQUlvQWdBZ0N5QURRWDVxSUFSQmZtb2dDaUFKSUFjZ0NFRUFFQ0lNQmdzZ0FpZ0NBQ0FMSUFOQmZtb2dCRUYrYWlBS0lBa2dCeUFJRUVVTUJRc2dBaWdDQUNBTElBTkJmbW9nQkVGK2FpQUtJQWtnQnlBSVFRRVFJZ3dFQ3lBQ0tBSUFJQXNnQTBGK2FpQUVJQW9nQ1NBSElBaEJBUkFqREFNTElBSW9BZ0FnQ3lBRFFYNXFJQVJCZm1vZ0NpQUpJQWNnQ0VFQkVCb01BZ3NnQWlnQ0FDQUxJQU5CZm1vZ0JFRithaUFLSUFrZ0J5QUlRUUVRSVF3QkN5QUNLQUlBSUFzZ0EwRithaUFFUVg1cUlBb2dDU0FISUFoQkF4QWFDeUFOUVFGMklBRXVBUUFpQ1VFRGRXb2hBeUFPUVFGMklBRXVBUUlpQVVFRGRXb2hCQ0FDS0FJQUlBSW9BZ1FpQ2lBQ0tBSUlJZ3RzUVFoMGFpRUNJQUFnQmtFQ2RFRjRjV29nQlVFQmRtcEJnQUpxSVFVZ0NFRUJkaUVHSUFkQkFYWWhCeUFCUVFkeElRZ2dDMEVEZENFQUlBcEJBM1FoQVFKQUlBbEJCM0VpQ1VVTkFDQUlSUTBBSUFJZ0JTQURJQVFnQVNBQUlBa2dDQ0FISUFZUVNBOExJQWtFUUNBQ0lBVWdBeUFFSUFFZ0FDQUpJQWNnQmhCTER3c2dDQVJBSUFJZ0JTQURJQVFnQVNBQUlBZ2dCeUFHRUVvUEN5QUNJQVVnQXlBRUlBRWdBQ0FISUFaQkNCQU1JQUlnQUNBQmJHb2dCVUZBYXlBRElBUWdBU0FBSUFjZ0JrRUlFQXdMeHdFQkJIOGdBQ2dDQkNFQ0FrQWdBQ2dDREVFRGRDQUFLQUlRYXlJRFFTQk9CRUFnQWlnQUFDSUJRUmgwSUFGQkNIUkJnSUQ4QjNGeUlBRkJDSFpCZ1A0RGNTQUJRUmgyY25JaEFTQUFLQUlJSWdCRkRRRWdBU0FBZENBQ0xRQUVRUWdnQUd0MmNnOExJQU5CQVVnRVFFRUFEd3NnQWkwQUFDQUFLQUlJSWdCQkdHb2lCSFFoQVNBQUlBTnFRWGhxSWdCQkFVZ05BQU5BSUFJdEFBRWdCRUY0YWlJRWRDQUJjaUVCSUFCQkNFb2hBeUFDUVFGcUlRSWdBRUY0YWlFQUlBTU5BQXNMSUFFTGpBUUJCMzhDUUNBQVFYOXFJZ2d0QUFBaUJTQUFMUUFBSWdacklnUWdCRUVmZFNJRWFpQUVjeUFDS0FJRVR3MEFJQUJCZm1vdEFBQWlCQ0FGYXlJSElBZEJIM1VpQjJvZ0IzTWdBaWdDQ0NJSlR3MEFJQUF0QUFFaUJ5QUdheUlLSUFwQkgzVWlDbW9nQ25NZ0NVOE5BQ0FCUVFOTkJFQWdDQ0FGSUFFZ0FpZ0NBR3BCZjJvdEFBQWlDRUYvY3lJSklBaEJBV29pQ0NBR0lBVnJRUUowSUFkcklBUnFRUVJxUVFOMUlnVWdCU0FJU2hzZ0JTQUpTQnNpQldwQnNDNXFMUUFBT2dBQUlBQWdCaUFGYTBHd0xtb3RBQUE2QUFBTUFRc2dDQ0FGSUFkcUlBUkJBWFJxUVFKcVFRSjJPZ0FBSUFBZ0JpQUhRUUYwYWlBRWFrRUNha0VDZGpvQUFBc0NRQ0FBSUFOcUlnQkJmMm9pQnkwQUFDSURJQUF0QUFBaUJXc2lCaUFHUVI5MUlnWnFJQVp6SUFJb0FnUlBEUUFnQUVGK2FpMEFBQ0lHSUFOcklnUWdCRUVmZFNJRWFpQUVjeUFDS0FJSUlnaFBEUUFnQUMwQUFTSUVJQVZySWdrZ0NVRWZkU0lKYWlBSmN5QUlUdzBBSUFGQkEwMEVRQ0FISUFFZ0FpZ0NBR3BCZjJvdEFBQWlBVUYvY3lJQ0lBRkJBV29pQnlBRklBTnJRUUowSUFScklBWnFRUVJxUVFOMUlnRWdBU0FIU2hzZ0FTQUNTQnNpQVNBRGFrR3dMbW90QUFBNkFBQWdBQ0FGSUFGclFiQXVhaTBBQURvQUFBOExJQWNnQXlBRWFpQUdRUUYwYWtFQ2FrRUNkam9BQUNBQUlBVWdCRUVCZEdvZ0JtcEJBbXBCQW5ZNkFBQUxDMGNBQWtBZ0FVRUVUUVJBQWtBQ1FBSkFBa0FnQVVFQmF3NEVBUUlEQlFBTElBQW9Bc2dCRHdzZ0FDZ0N6QUVQQ3lBQUtBTFFBUThMSUFBb0F0UUJEd3RCQUNFQUN5QUFDNlVEQVF0L1FRQWdBMnNpQzBFQmRDRUVJQUVnQWlnQ0FHcEJmMm90QUFBaUFVRUJhaUVKSUFGQmYzTWhDZ0pBSUFBZ0Eyc2lCeTBBQUNJRklBQXRBQUFpQm1zaUFTQUJRUjkxSWdGcUlBRnpJQUlvQWdRaUFVOE5BQ0FBSUFScUxRQUFJZzBnQldzaUNDQUlRUjkxSWdocUlBaHpJQUlvQWdnaUNFOE5BQ0FBSUFOcUxRQUFJZzRnQm1zaURDQU1RUjkxSWd4cUlBeHpJQWhQRFFBZ0J5QUtJQWtnQmlBRmEwRUNkQ0FPYXlBTmFrRUVha0VEZFNJQklBRWdDVW9iSUFFZ0NrZ2JJZ0VnQldwQnNDNXFMUUFBT2dBQUlBQWdCaUFCYTBHd0xtb3RBQUE2QUFBZ0FpZ0NCQ0VCQ3dKQUlBQkJBV29pQlNBTGFpSUxMUUFBSWdZZ0FDMEFBU0lBYXlJSElBZEJIM1VpQjJvZ0IzTWdBVThOQUNBRUlBVnFMUUFBSWdFZ0Jtc2lCQ0FFUVI5MUlnUnFJQVJ6SUFJb0FnZ2lBazhOQUNBRElBVnFMUUFBSWdNZ0FHc2lCQ0FFUVI5MUlnUnFJQVJ6SUFKUERRQWdDeUFLSUFrZ0FDQUdhMEVDZENBRGF5QUJha0VFYWtFRGRTSUJJQUVnQ1VvYklBRWdDa2diSWdFZ0JtcEJzQzVxTFFBQU9nQUFJQVVnQUNBQmEwR3dMbW90QUFBNkFBQUxDMFFCQW44L0FDRUJBa0JCc01RQUtBSUFJZ0lnQUVFRGFrRjhjV29pQUNBQlFSQjBUUTBBSUFBUUFRMEFRYkRBQUVFd05nSUFRWDhQQzBHd3hBQWdBRFlDQUNBQ0N6UUJBWDhDUUNBQlFSQkxEUUFnQUNnQ0JDQUJRUUowYWlnQ0FDSUFSUTBBSUFBb0FoUkJBa2tOQUNBQUtBSUFJUUlMSUFJTGdnUUJBMzhnQWtHQUJFOEVRQ0FBSUFFZ0FoQUFHaUFBRHdzZ0FDQUNhaUVEQWtBZ0FDQUJjMEVEY1VVRVFBSkFJQUpCQVVnRVFDQUFJUUlNQVFzZ0FFRURjVVVFUUNBQUlRSU1BUXNnQUNFQ0EwQWdBaUFCTFFBQU9nQUFJQUZCQVdvaEFTQUNRUUZxSWdJZ0EwOE5BU0FDUVFOeERRQUxDd0pBSUFOQmZIRWlCRUhBQUVrTkFDQUNJQVJCUUdvaUJVc05BQU5BSUFJZ0FTZ0NBRFlDQUNBQ0lBRW9BZ1EyQWdRZ0FpQUJLQUlJTmdJSUlBSWdBU2dDRERZQ0RDQUNJQUVvQWhBMkFoQWdBaUFCS0FJVU5nSVVJQUlnQVNnQ0dEWUNHQ0FDSUFFb0FodzJBaHdnQWlBQktBSWdOZ0lnSUFJZ0FTZ0NKRFlDSkNBQ0lBRW9BaWcyQWlnZ0FpQUJLQUlzTmdJc0lBSWdBU2dDTURZQ01DQUNJQUVvQWpRMkFqUWdBaUFCS0FJNE5nSTRJQUlnQVNnQ1BEWUNQQ0FCUVVCcklRRWdBa0ZBYXlJQ0lBVk5EUUFMQ3lBQ0lBUlBEUUVEUUNBQ0lBRW9BZ0EyQWdBZ0FVRUVhaUVCSUFKQkJHb2lBaUFFU1EwQUN3d0JDeUFEUVFSSkJFQWdBQ0VDREFFTElBTkJmR29pQkNBQVNRUkFJQUFoQWd3QkN5QUFJUUlEUUNBQ0lBRXRBQUE2QUFBZ0FpQUJMUUFCT2dBQklBSWdBUzBBQWpvQUFpQUNJQUV0QUFNNkFBTWdBVUVFYWlFQklBSkJCR29pQWlBRVRRMEFDd3NnQWlBRFNRUkFBMEFnQWlBQkxRQUFPZ0FBSUFGQkFXb2hBU0FDUVFGcUlnSWdBMGNOQUFzTElBQUx3UmdCSUg4akFFSFFBMnNpQmlRQUlBRW9BZ2doRkNBQklBRW9BZ1FpQ2lBQ2JDSWFJQU5xRUIwZ0FTZ0NBQ0VKSUFCQkFEWUNDQ0FBUWlnM0FoUWdBRUlBTndJTUlBQkJCallDQUNBRFFRUjBJUWNDUUFKQUFrQWdCRUYrYWlJRVFRVkxEUUFDUUNBRVFRRnJEZ1FCQVFFQkFBc01BUXNnQmtFQU5nSU1JQVlnRkRZQ0dDQUdJQW8yQWhRZ0JpQUZOZ0lRSUFVRVFDQUdRZEFBYWlBR1FReHFJQVpCRUdvZ0J5QUNRUVIwUVFCQkFFRVFRUkFRRGd3Q0N3c2dCa0hRQUdwQkFFR0FBeEFIR2lBSklCcEJDSFJxSUFkcUlRd2dCa0lBTndOSUlBWkJRR3RDQURjREFDQUdRZ0EzQXpnZ0JrSUFOd013SUFaQ0FEY0RLQ0FHUWdBM0F5QWdCa0lBTndNWUlBWkNBRGNERUVFQUlRa0NmMEVBSUFKRkRRQWFRUUFnQUVFQUlBcHJRZGdCYkdvb0FzUUJSUTBBR2lBR0lBd2dDa0VFZEdzaUJDMEFCU0FFTFFBRWFpQUVMUUFHYWlBRUxRQUhhaUlYSUFRdEFBTWdCQzBBQWlBRUxRQUJJQVF0QUFCcWFtb2lGbW9pQlNBRUxRQUxJQVF0QUFvZ0JDMEFDU0FFTFFBSWFtcHFJaEpySUFRdEFBOGdCQzBBRGlBRUxRQU5JQVF0QUF4cWFtb2lFMnNpQ0RZQ0ZDQUdJQVVnRW1vZ0Uyb2lDVFlDRUVFQkN5RUZBbjhDUUNBQ0lCUkJmMnBIQkVBZ0FDQUtRZGdCYkdvb0FzUUJEUUVMSUFVTUFRc2dCaUFNSUFwQkNIUnFJZ0l0QUFVZ0FpMEFCR29nQWkwQUJtb2dBaTBBQjJvaUhpQUNMUUFESUFJdEFBSWdBaTBBQVNBQ0xRQUFhbXBxSWg5cUlnUWdBaTBBQ3lBQ0xRQUtJQUl0QUFrZ0FpMEFDR3BxYWlJWWF5QUNMUUFQSUFJdEFBNGdBaTBBRFNBQ0xRQU1hbXBxSWhscklBaHFJZ2cyQWhRZ0JpQUVJQmhxSUFscUlCbHFJZ2syQWhCQkFTRVFJQVZCQVdvTElRZEJBQ0VFQW44Q1FDQURSUTBBSUFCQmJHb29BZ0JGRFFBZ0JpQU1RWDlxSWdJZ0NrRUdkQ0lPYWlJRUlBcEJCSFFpQzJvdEFBQWdCQzBBQUdvZ0JDQUtRUVYwSWc5cUxRQUFhaUFFSUFwQk1Hd2lEV290QUFCcUloc2dBaUFOYWkwQUFDQUNJQTlxTFFBQUlBSWdDMm90QUFBZ0FpMEFBR3BxYWlJY2FpSVJJQVFnRG1vaUFpQUxhaTBBQUNBQ0xRQUFhaUFDSUE5cUxRQUFhaUFDSUExcUxRQUFhaUlWYXlBQ0lBNXFJZ0lnQzJvdEFBQWdBaTBBQUdvZ0FpQVBhaTBBQUdvZ0FpQU5haTBBQUdvaUQyc2lCRFlDSUNBR0lCRWdGV29nQ1dvZ0Qyb2lDVFlDRUNBSFFRRnFJUXRCQVF3QkN5QUhJUXRCQUFzaEFnSkFBa0FDUUFKQUFrQUNRQ0FESUFwQmYycEhCRUFnQUNnQ25BTU5BUXRCQUNFT0lBSkJBRWNoRVNBSERRRU1BZ3NnQmlBRUlBeEJFR29pQkNBS1FRWjBJaDFxSWdBZ0NrRUVkQ0lOYWkwQUFDQUFMUUFBYWlBQUlBcEJCWFFpRG1vdEFBQnFJQUFnQ2tFd2JDSVJhaTBBQUdvaUlDQUVJQkZxTFFBQUlBUWdEbW90QUFBZ0JDQU5haTBBQUNBTUxRQVFhbXBxSWlGcUlpSWdBQ0FkYWlJQUlBMXFMUUFBSUFBdEFBQnFJQUFnRG1vdEFBQnFJQUFnRVdvdEFBQnFJZ3hySUFBZ0hXb2lBQ0FOYWkwQUFDQUFMUUFBYWlBQUlBNXFMUUFBYWlBQUlCRnFMUUFBYWlJTmEyb2lCRFlDSUNBR0lBd2dJbW9nQ1dvZ0RXb2lDVFlDRUNBQ1FRQkhJUkZCQVNFT0lBSkJBV29oQUNBTFFRRnFJUXNDUUNBSERRQWdBa1VOQUNBR0lCc2dIR29nRldvZ0Qyb2dJV3NnSUdzZ0RHc2dEV3RCQlhVaUNEWUNGQXdEQ3lBSFJRMENJQUFoQWdzZ0JpQUlJQWRCQTJwMUlnZzJBaFFMQWtBZ0VFVU5BQ0FGUlEwQUlBSU5BQ0FHSUJZZ0Yyb2dFbW9nRTJvZ0dXc2dHR3NnSG1zZ0gydEJCWFVpQkRZQ0lFRUJJUkJCQVNFTkRBTUxJQkJCQUVjaEVDQUZRUUJISVEwZ0FrVU5BZ3dCQ3lBUVFRQkhJUkFnQlVFQVJ5RU5JQUFoQWdzZ0JpQUVJQUpCQTJwMUlnUTJBaUFMSUFZQ2Z5QUxRWDlxSWdCQkFrMEVRQUpBQWtBQ1FDQUFRUUZyRGdJQkFnQUxJQWxCQkhZTUF3c2dDVUVGZGd3Q0N5QUpRUlZzUVFwMURBRUxJQWxCQm5ZTElnQTJBaEFDUUNBRUlBaHlSUVJBSUFZZ0FEWUNTQ0FHSUFBMkFrd2dCaUFBTmdKRUlBWWdBRFlDUUNBR0lBQTJBandnQmlBQU5nSTRJQVlnQURZQ05DQUdJQUEyQWpBZ0JpQUFOZ0lzSUFZZ0FEWUNLQ0FHSUFBMkFpUWdCaUFBTmdJZ0lBWWdBRFlDSENBR0lBQTJBaGdnQmlBQU5nSVVEQUVMSUFZZ0FDQUlhaUlGSUFSck5nSkFJQVlnQlNBRVFRRjFJZ0pyTmdJd0lBWWdBaUFGYWpZQ0lDQUdJQVFnQldvMkFoQWdCaUFBSUFocklnVWdCR3MyQWt3Z0JpQUZJQUpyTmdJOElBWWdBaUFGYWpZQ0xDQUdJQVFnQldvMkFod2dCaUFBSUFoQkFYVWlCMm9pQlNBRWF6WUNSQ0FHSUFVZ0FtczJBalFnQmlBQ0lBVnFOZ0lrSUFZZ0JDQUZhallDRkNBR0lBQWdCMnNpQUNBRWF6WUNTQ0FHSUFBZ0FtczJBamdnQmlBQUlBSnFOZ0lvSUFZZ0FDQUVhallDR0FzZ0JrSFFBR29oQ0NBR1FSQnFJUUJCQUNFRUEwQWdDQ0FBSUFSQkRIRnFLQUlBSWdKQi93RWdBa0gvQVVnYklnSkJBQ0FDUVFCS0d6b0FBQ0FBSUFCQkVHb2dCRUVCYWlJRVFUOXhHeUVBSUFoQkFXb2hDQ0FFUVlBQ1J3MEFDeUFCS0FJQUlBb2dGR3dpQUVFSWRHb2dHa0VHZEdvZ0EwRURkR29oQXlBS1FRUjBJUXdnQ2tFR2RDRWFJQUJCQm5RaEhVRUFJQXBCQTNRaUMyc2hJQ0FHUWRBQ2FpRWhJQVpCUUdzaElrRUFJUVVEUUNBR1FnQTNBMGdnSWtJQU53TUFJQVpDQURjRE9DQUdRZ0EzQXpBZ0JrSUFOd01vSUFaQ0FEY0RJQ0FHUWdBM0F4Z2dCa0lBTndNUVFRQWhDRUVBSVFSQkFDRUpJQTBFUUNBR0lBTWdJR29pQUMwQUF5QUFMUUFDYWlJWElBQXRBQUVnQUMwQUFHb2lGbW9pQWlBQUxRQUZJQUF0QUFScUloSnJJQUF0QUFjZ0FDMEFCbW9pRTJzaUNEWUNGQ0FHSUFJZ0Vtb2dFMm9pQkRZQ0VFRUJJUWtMSUJBRVFDQUdJQU1nR21vaUFDMEFBeUFBTFFBQ2FpSWVJQUF0QUFFZ0FDMEFBR29pSDJvaUFpQUFMUUFGSUFBdEFBUnFJaGhySUFBdEFBY2dBQzBBQm1vaUdXc2dDR29pQ0RZQ0ZDQUdJQUlnR0dvZ0JHb2dHV29pQkRZQ0VDQUpRUUZxSVFrTFFRQWhBQUovSUJGRkJFQWdDU0VIUVFBTUFRc2dCaUFEUVg5cUlnQWdER29pQWlBTGFpMEFBQ0FDTFFBQWFpSWJJQUFnQzJvdEFBQWdBQzBBQUdvaUhHb2lCeUFDSUF4cUlnQWdDMm90QUFBZ0FDMEFBR29pRldzZ0FDQU1haUlBSUF0cUxRQUFJQUF0QUFCcUlnOXJJZ0EyQWlBZ0JpQUhJQlZxSUFScUlBOXFJZ1EyQWhBZ0NVRUJhaUVIUVFFTElRSUNRQ0FHQW44Q1FBSkFBa0FnRGtVRVFDQUpEUUVNQWdzZ0JpQUFJQU5CQ0dvaUNpQU1haUlBSUF0cUxRQUFJQUF0QUFCcUlpTWdDaUFMYWkwQUFDQURMUUFJYWlJa2FpSWxJQUFnREdvaUFDQUxhaTBBQUNBQUxRQUFhaUlLYXlBQUlBeHFJZ0FnQzJvdEFBQWdBQzBBQUdvaUZHdHFJZ0EyQWlBZ0JpQUtJQ1ZxSUFScUlCUnFJZ1EyQWhBZ0FrRUJhaUVDSUFkQkFXb2hCeUFSUVFGeklBbEJBRWR5UlFSQUlBWWdHeUFjYWlBVmFpQVBhaUFrYXlBamF5QUtheUFVYTBFRWRTSUlOZ0lVREFNTElBbEZEUUlMSUFZZ0NDQUpRUUpxZFNJSU5nSVVDeUFXSUJkcUlCSnFJQk5xSUJscklCaHJJQjVySUI5clFRUjFJQkFnRFNBQ1JYRnhRUUZHRFFFYUlBSkZEUUlMSUFBZ0FrRUNhblVMSWdBMkFpQUxJQVlDZnlBSFFYOXFJZ0pCQWswRVFBSkFBa0FDUUNBQ1FRRnJEZ0lCQWdBTElBUkJBM1lNQXdzZ0JFRUVkZ3dDQ3lBRVFSVnNRUWwyREFFTElBUkJCWFlMSWdRMkFoQUNRQ0FBSUFoeVJRUkFJQVlnQkRZQ1NDQUdJQVEyQWt3Z0JpQUVOZ0pFSUFZZ0JEWUNRQ0FHSUFRMkFqd2dCaUFFTmdJNElBWWdCRFlDTkNBR0lBUTJBakFnQmlBRU5nSXNJQVlnQkRZQ0tDQUdJQVEyQWlRZ0JpQUVOZ0lnSUFZZ0JEWUNIQ0FHSUFRMkFoZ2dCaUFFTmdJVURBRUxJQVlnQkNBSWFpSUhJQUJyTmdKQUlBWWdCeUFBUVFGMUlnSnJOZ0l3SUFZZ0FpQUhhallDSUNBR0lBQWdCMm8yQWhBZ0JpQUVJQWhySWdjZ0FHczJBa3dnQmlBSElBSnJOZ0k4SUFZZ0FpQUhhallDTENBR0lBQWdCMm8yQWh3Z0JpQUVJQWhCQVhVaUNXb2lCeUFBYXpZQ1JDQUdJQWNnQW1zMkFqUWdCaUFDSUFkcU5nSWtJQVlnQUNBSGFqWUNGQ0FHSUFRZ0NXc2lCQ0FBYXpZQ1NDQUdJQVFnQW1zMkFqZ2dCaUFDSUFScU5nSW9JQVlnQUNBRWFqWUNHQXNnSVNBRlFRWjBhaUVJUVFBaEFDQUdRUkJxSVFRRFFDQUlJQVFnQUVFQmRFRU1jV29vQWdBaUFrSC9BU0FDUWY4QlNCc2lBa0VBSUFKQkFFb2JPZ0FBSUFRZ0JFRVFhaUFBUVFGcUlnQkJEM0ViSVFRZ0NFRUJhaUVJSUFCQndBQkhEUUFMSUFNZ0hXb2hBeUFGUVFGcUlnVkJBa2NOQUFzTElBRWdCa0hRQUdvUUd5QUdRZEFEYWlRQUN6WUFJQUlFUUNBQUlBRVFBZzhMUVFFaEFpQUJJQUJCQVJBRElnQTJBZ0FnQUVGL1J3Ui9JQUVnQUVFQmN6WUNBRUVBQlVFQkN3dk1Bd0VTZnlBRFFRRjBJUThnQTBGOWJDRVFRUUFnQTJzaUVVRUJkQ0VTSUFFZ0FpZ0NBR3BCZjJvdEFBQWlCMEVCYWlFVFFRQWdCMnNoQ2tFRUlRRURRQUpBSUFBZ0VXb2lGQzBBQUNJRklBQXRBQUFpQ0dzaUJDQUVRUjkxSWdScUlBUnpJQUlvQWdSUERRQWdBQ0FTYWlJTExRQUFJZ3dnQldzaUJDQUVRUjkxSWdScUlBUnpJQUlvQWdnaUJrOE5BQ0FBSUFOcUloVXRBQUFpRFNBSWF5SUVJQVJCSDNVaUJHb2dCSE1nQms4TkFDQUhJUVFnQUNBUWFpMEFBQ0lKSUFWcklnNGdEa0VmZFNJT2FpQU9jeUFHU1FSQUlBc2dEQ0FLSUFjZ0JTQUlha0VCYWtFQmRpQU1RUUYwYXlBSmFrRUJkU0lFSUFRZ0Iwb2JJQVFnQ2tnYmFqb0FBQ0FDS0FJSUlRWWdFeUVFQ3lBVUlBVUNmeUFBSUE5cUxRQUFJZ3NnQ0dzaUNTQUpRUjkxSWdscUlBbHpJQVpKQkVBZ0ZTQU5JQW9nQnlBRklBaHFRUUZxUVFGMklBMUJBWFJySUF0cVFRRjFJZ1lnQmlBSFNoc2dCaUFLU0J0cU9nQUFJQVJCQVdvaEJBdEJBQ0FFYXlJR0N5QUVJQWdnQld0QkFuUWdEV3NnREdwQkJHcEJBM1VpQlNBRklBUktHeUFGSUFaSUd5SUVha0d3TG1vdEFBQTZBQUFnQUNBSUlBUnJRYkF1YWkwQUFEb0FBQXNnQUVFQmFpRUFJQUZCZjJvaUFRMEFDd3Y3QmdFT2Z5QUNLQUlJSVFvZ0FpZ0NCQ0VQQWtBZ0FVRUVUd1JBSUE5QkFuWkJBbW9oRUVFRUlRSURRQUpBSUFCQmYyb2lCUzBBQUNJSElBQXRBQUFpQ0dzaUFTQUJRUjkxSWdGcUlBRnpJZzBnRDA4TkFDQUFRWDVxSWc0dEFBQWlBU0FIYXlJRUlBUkJIM1VpQkdvZ0JITWdDazhOQUNBQUxRQUJJZ2tnQ0dzaUJDQUVRUjkxSWdScUlBUnpJQXBQRFFBQ1FDQU5JQkJKQkVBZ0FDMEFBaUVMQW44Z0FFRjlhaUlOTFFBQUlnUWdCMnNpQmlBR1FSOTFJZ1pxSUFaeklBcEpCRUJCQXlFR0lBVWdDU0FISUFocUlBRnFJZ1ZCQVhScUlBUnFRUVJxUVFOMk9nQUFJQTRnQkNBRmFrRUNha0VDZGpvQUFDQUVRUU5zSVE0Z0JVRUVhaUVNSUFCQmZHb3RBQUFNQVFzZ0J5QUphaUVNUVFJaERrRUNJUVlnQlNFTklBRUxJUVFnRFNBTUlBNXFJQVJCQVhScUlBWjJPZ0FBSUFzZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6SUFwUERRRWdBQ0FISUFscUlBaHFJZ1VnQzJwQkFtcEJBblk2QUFFZ0FDQUZJQXRCQTJ4cUlBQXRBQU5CQVhScVFRUnFRUU4yT2dBQ0lBQWdBU0FGUVFGMGFpQUxha0VFYWtFRGRqb0FBQXdDQ3lBRklBY2dDV29nQVVFQmRHcEJBbXBCQW5ZNkFBQUxJQUFnQVNBSWFpQUpRUUYwYWtFQ2FrRUNkam9BQUFzZ0FDQURhaUVBSUFKQmYyb2lBZzBBQ3d3QkN5QUJJQUlvQWdCcVFYOXFMUUFBSWdWQkFXb2hEVUVBSUFWcklRaEJCQ0VDQTBBQ1FDQUFRWDlxSWc0dEFBQWlCQ0FBTFFBQUlnZHJJZ0VnQVVFZmRTSUJhaUFCY3lBUFR3MEFJQUJCZm1vaURDMEFBQ0lKSUFScklnRWdBVUVmZFNJQmFpQUJjeUFLVHcwQUlBQXRBQUVpQ3lBSGF5SUJJQUZCSDNVaUFXb2dBWE1nQ2s4TkFDQUFMUUFDSVFZZ0JTRUJJQUJCZldvdEFBQWlFQ0FFYXlJUklCRkJIM1VpRVdvZ0VYTWdDa2tFUUNBTUlBa2dDQ0FGSUFRZ0IycEJBV3BCQVhZZ0NVRUJkR3NnRUdwQkFYVWlBU0FCSUFWS0d5QUJJQWhJRzJvNkFBQWdEU0VCQ3lBT0lBUUNmeUFHSUFkcklnd2dERUVmZFNJTWFpQU1jeUFLU1FSQUlBQWdDeUFJSUFVZ0JDQUhha0VCYWtFQmRpQUxRUUYwYXlBR2FrRUJkU0lHSUFZZ0JVb2JJQVlnQ0VnYmFqb0FBU0FCUVFGcUlRRUxRUUFnQVdzaUJnc2dBU0FKSUF0cklBY2dCR3RCQW5ScVFRUnFRUU4xSWdRZ0JDQUJTaHNnQkNBR1NCc2lBV3BCc0M1cUxRQUFPZ0FBSUFBZ0J5QUJhMEd3TG1vdEFBQTZBQUFMSUFBZ0Eyb2hBQ0FDUVg5cUlnSU5BQXNMQzlvSEFRMS9Jd0JCd0FOckloRWtBQ0FHUVFWcUlRa0NRQUpBSUFKQkFFZ05BQ0FEUVFCSURRQWdBaUFKYWlBRVN3MEFJQU1nQjJwQkJXb2dCVXNOQUNBRUlRa2dBeUVLREFFTElBQWdFU0FDSUFNZ0JDQUZJQWtnQjBFRmFpQUpFQXdnRVNFQVFRQWhBZ3NDUUNBSFJRMEFJQUFnQ1NBS2JDQUNhbW9oRTBFUUlBWnJJUlFDUUNBR1FRSjJJaElFUUNBSklBWnJJUlVnRXlBSklBaEJBWFpCQVhGQkFuSnNha0VGYWlFQ0lBY2hCQU5BSUFKQmYyb3RBQUFoQUNBQ1FYNXFMUUFBSVFNZ0FrRjlhaTBBQUNFRklBSkJmR290QUFBaEN5QUNRWHRxTFFBQUlRMGdFaUVQQTBBZ0FTQUNMUUFBSWdvZ0RTQUFJQXRxSWd4cklBTWdCV3BCRkd4cUlBeEJBblJyYWtFUWFrRUZkVUd3TG1vdEFBQTZBQUFnQVNBQ0xRQUJJZ3dnQ3lBQUlBTnFRUlJzYWlBRklBcHFJZ3RySUF0QkFuUnJha0VRYWtFRmRVR3dMbW90QUFBNkFBRWdBU0FDTFFBQ0loQWdCU0FBSUFwcVFSUnNhaUFESUF4cUlnVnJJQVZCQW5ScmFrRVFha0VGZFVHd0xtb3RBQUE2QUFJZ0FTQUNMUUFESWc0Z0F5QUtJQXhxUVJSc2FpQUFJQkJxSWdOcklBTkJBblJyYWtFUWFrRUZkVUd3TG1vdEFBQTZBQU1nQVVFRWFpRUJJQUpCQkdvaEFpQUFJUTBnQ2lFTElBd2hCU0FRSVFNZ0RpRUFJQTlCZjJvaUR3MEFDeUFCSUJScUlRRWdBaUFWYWlFQ0lBUkJmMm9pQkEwQUN3d0JDeUFIUVg5cUlCUnNJQVpySUFGcVFSQnFJUUVMSUFkQkFuWWlCRVVOQUVIQUFDQUdheUVRSUFsQkFYUWhDaUFKUVFKMElBWnJJUXRCQUNBSmF5SU1RUUYwSVJJZ0FTQUhRUVIwYXlFQ0lBa2dFMm9nQ0VFQmNXcEJBbW9pQUNBSlFRVnNhaUVCQTBBZ0JpSURCRUFEUUNBQ0lBQWdDbW90QUFBaUJTQUJJQXBxTFFBQUlBRWdDV290QUFBaURpQUJJQkpxTFFBQUlnZHFJZ2hySUFoQkFuUnJhaUFCTFFBQUlnMGdBU0FNYWkwQUFDSUlha0VVYkdwQkVHcEJCWFZCc0M1cUxRQUFJQUl0QURCcVFRRnFRUUYyT2dBd0lBSWdBQ0FKYWkwQUFDSVBJQTRnQnlBSWFrRVViR29nQlNBTmFpSU9heUFPUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBSUFJdEFDQnFRUUZxUVFGMk9nQWdJQUlnQUMwQUFDSU9JQTBnQlNBSGFrRVViR29nQ0NBUGFpSU5heUFOUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBSUFJdEFCQnFRUUZxUVFGMk9nQVFJQUlnQUNBTWFpMEFBQ0FJSUFVZ0QycEJGR3hxSUFjZ0Rtb2lCV3NnQlVFQ2RHdHFRUkJxUVFWMVFiQXVhaTBBQUNBQ0xRQUFha0VCYWtFQmRqb0FBQ0FBUVFGcUlRQWdBa0VCYWlFQ0lBRkJBV29oQVNBRFFYOXFJZ01OQUFzTElBSWdFR29oQWlBQklBdHFJUUVnQUNBTGFpRUFJQVJCZjJvaUJBMEFDd3NnRVVIQUEyb2tBQXUxQlFFRWZ5QUFLQUlVSVFNZ0FDZ0NFQ0VFSUFBb0FnUWhCU0FBS0FJTUlnSWdBU2tDQURjQ0FDQUNJQUVwQWdnM0FnZ2dBaUFGUVFSMElnQnFJZ0lnQVNrQ0VEY0NBQ0FDSUFFcEFoZzNBZ2dnQUNBQ2FpSUNJQUVwQWlBM0FnQWdBaUFCS1FJb053SUlJQUFnQW1vaUFpQUJLUUl3TndJQUlBSWdBU2tDT0RjQ0NDQUFJQUpxSWdJZ0FTa0NRRGNDQUNBQ0lBRXBBa2czQWdnZ0FDQUNhaUlDSUFFcEFsQTNBZ0FnQWlBQktRSllOd0lJSUFBZ0Ftb2lBaUFCS1FKZ053SUFJQUlnQVNrQ2FEY0NDQ0FBSUFKcUlnSWdBU2tDY0RjQ0FDQUNJQUVwQW5nM0FnZ2dBQ0FDYWlJQ0lBRXBBb0FCTndJQUlBSWdBU2tDaUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBcEFCTndJQUlBSWdBU2tDbUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBcUFCTndJQUlBSWdBU2tDcUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBckFCTndJQUlBSWdBU2tDdUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBc0FCTndJQUlBSWdBU2tDeUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBdEFCTndJQUlBSWdBU2tDMkFFM0FnZ2dBQ0FDYWlJQ0lBRXBBdUFCTndJQUlBSWdBU2tDNkFFM0FnZ2dBQ0FDYWlJQUlBRXBBdkFCTndJQUlBQWdBU2tDK0FFM0FnZ2dCQ0FCS1FLQUFqY0NBQ0FFSUFWQkEzUWlBR29pQkNBQktRS0lBamNDQUNBQUlBUnFJZ1FnQVNrQ2tBSTNBZ0FnQUNBRWFpSUVJQUVwQXBnQ053SUFJQUFnQkdvaUJDQUJLUUtnQWpjQ0FDQUFJQVJxSWdRZ0FTa0NxQUkzQWdBZ0FDQUVhaUlFSUFFcEFyQUNOd0lBSUFBZ0JHb2dBU2tDdUFJM0FnQWdBeUFCS1FMQUFqY0NBQ0FBSUFOcUlnTWdBU2tDeUFJM0FnQWdBQ0FEYWlJRElBRXBBdEFDTndJQUlBQWdBMm9pQXlBQktRTFlBamNDQUNBQUlBTnFJZ01nQVNrQzRBSTNBZ0FnQUNBRGFpSURJQUVwQXVnQ053SUFJQUFnQTJvaUF5QUJLUUx3QWpjQ0FDQUFJQU5xSUFFcEF2Z0NOd0lBQytnQ0FRVi9Ba0FnQUNBQkVBSWlBdzBBUVFFaEF5QUJJQUVvQWdCQkFXb2lBallDQUNBQ1FTQkxEUUFnQUVFRUVBTWlBa0YvUmcwQUlBRWdBallDQkNBQVFRUVFBeUlDUVg5R0RRQWdBU0FDTmdJSUlBRW9BZ0FFUUFOQUlBQWdBU0FGUVFKMGFpSUNJZ1JCREdvUUFpSUREUUpCQVNFRElBUW9BZ3dpQmtGL1JnMENJQVFnQmtFQmFpSUROZ0lNSUFRZ0F5QUJLQUlFUVFacWREWUNEQ0FBSUFKQmpBRnFFQUlpQXcwQ1FRRWhBeUFDS0FLTUFTSUVRWDlHRFFJZ0FpQUVRUUZxSWdRMkFvd0JJQUlnQkNBQktBSUlRUVJxZERZQ2pBRWdBRUVCRUFNaUJFRi9SZzBDSUFJZ0JFRUJSallDakFJZ0JVRUJhaUlGSUFFb0FnQkpEUUFMQ3lBQVFRVVFBeUlDUVg5R0RRQWdBU0FDUVFGcU5nS01BeUFBUVFVUUF5SUNRWDlHRFFBZ0FTQUNRUUZxTmdLUUF5QUFRUVVRQXlJQ1FYOUdEUUFnQVNBQ1FRRnFOZ0tVQXlBQVFRVVFBeUlBUVg5R0RRQWdBU0FBTmdLWUEwRUFJUU1MSUFNTFd3RURmeUFBSUFBb0FnQWlCQ0FCSUFBb0FnUWlBbkFpQTBFRWRHb2dBU0FEYXlJQlFRaDBhallDRENBQUlBUWdBaUFBS0FJSWJDSUNRUWgwYWlBQlFRWjBhaUFEUVFOMGFpSUJOZ0lRSUFBZ0FTQUNRUVowYWpZQ0ZBdFZBUUovSUFFZ0FrRUJhaUlESUFNZ0FVa2JJUU1nQUNBQ1FRSjBhaWdDQUNFRUEwQUNRQ0FDUVFGcUlnSWdBVThFUUNBRElRSU1BUXNnQUNBQ1FRSjBhaWdDQUNBRVJ3MEJDd3RCQUNBQ0lBRWdBa1liQ3ljQUlBQkJDQ0FBS0FJSUlnQnJFQU5CZjBZRVFBOExRUUFnQUd0QkFuUkJ6RDlxS0FJQUdndDZBUUovSXdCQklHc2lBaVFBSUFJZ0FDZ0NFRFlDRUNBQ0lBQXBBZ2czQXdnZ0FpQUFLUUlBTndNQUFrQWdBaUFDUVJ4cUVBSWlBQTBBSUFJZ0FrRWNhaEFDSWdBTkFDQUNJQUpCSEdvUUFpSUFEUUJCQVNFQUlBSW9BaHdpQTBIL0FVc05BQ0FCSUFNMkFnQkJBQ0VBQ3lBQ1FTQnFKQUFnQUF2bkJ3RVNmeU1BUVlBT2F5SU1KQUFnQmtFRmFpRUpBa0FDUUNBQ1FRQklEUUFnQTBFQVNBMEFJQUlnQ1dvZ0JFc05BQ0FESUFkcVFRVnFJQVZMRFFBZ0F5RUtEQUVMSUFBZ0RFSEFDbW9nQWlBRElBUWdCU0FKSUFkQkJXb2dDUkFNSUF4QndBcHFJUUFnQ1NFRVFRQWhBZ3NDUUNBSFFRSjJJaFJGRFFBZ0NVVU5BQ0FFUVFGMElSVkJBQ0FFYXlJV1FRRjBJUm9nQkVFQ2RDQUdhMEY3YWlFWElBQWdCQ0FLYkNBQ2Ftb2dCR29pQUNBRVFRVnNhaUVDSUF3Z0NVRUNkQ0lRYWlFRElBbEJBM1FoRFVFQUlBbHJRUUowSVE0Z0NVRURiRUVDZENFUEEwQWdDU0VGQTBBZ0F5QU5haUFBSUJWcUxRQUFJaEVnQWlBVmFpMEFBQ0FDSUFScUxRQUFJZ3NnQWlBYWFpMEFBQ0lTYWlJS2F5QUtRUUowYTJvZ0FpMEFBQ0lZSUFJZ0Ztb3RBQUFpRTJwQkZHeHFOZ0lBSUFNZ0VHb2dBQ0FFYWkwQUFDSVpJQXNnRWlBVGFrRVViR29nRVNBWWFpSUtheUFLUVFKMGEybzJBZ0FnQXlBQUxRQUFJZ3NnR0NBUklCSnFRUlJzYWlBVElCbHFJZ3BySUFwQkFuUnJhallDQUNBRElBNXFJQUFnRm1vdEFBQWdFeUFSSUJscVFSUnNhaUFMSUJKcUlncHJJQXBCQW5ScmFqWUNBQ0FBUVFGcUlRQWdBMEVFYWlFRElBSkJBV29oQWlBRlFYOXFJZ1VOQUFzZ0FpQVhhaUVDSUFBZ0Yyb2hBQ0FESUE5cUlRTWdGRUYvYWlJVURRQUxDeUFIQkVCQkVDQUdheUVRSUFaQkFuWWhDaUFNSUFoQkFuUnFRUWhxSVFBZ0RFRVVhaUVDQTBBZ0NnUkFJQUpCYkdvb0FnQWhCQ0FDUVhCcUtBSUFJUThnQWtGMGFpZ0NBQ0VOSUFKQmVHb29BZ0FoQlNBQ1FYeHFLQUlBSVFNZ0NpRUpBMEFnQVNBQ0tBSUFJZzRnQkNBRElBOXFJZ1JySUFVZ0RXcEJGR3hxSUFSQkFuUnJha0dBQkdwQkNuVkJzQzVxTFFBQUlBQW9BZ0JCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFDQUJJQUlvQWdRaUN5QVBJQU1nQldwQkZHeHFJQTBnRG1vaUJHc2dCRUVDZEd0cVFZQUVha0VLZFVHd0xtb3RBQUFnQUNnQ0JFRVFha0VGZFVHd0xtb3RBQUJxUVFGcVFRRjJPZ0FCSUFFZ0FpZ0NDQ0lJSUEwZ0F5QU9ha0VVYkdvZ0JTQUxhaUlFYXlBRVFRSjBhMnBCZ0FScVFRcDFRYkF1YWkwQUFDQUFLQUlJUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFBSWdBU0FDS0FJTUlnWWdCU0FMSUE1cVFSUnNhaUFESUFocUlnUnJJQVJCQW5ScmFrR0FCR3BCQ25WQnNDNXFMUUFBSUFBb0FneEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQXlBQlFRUnFJUUVnQUVFUWFpRUFJQUpCRUdvaEFpQURJUVFnRGlFUElBc2hEU0FJSVFVZ0JpRURJQWxCZjJvaUNRMEFDd3NnQVNBUWFpRUJJQUJCRkdvaEFDQUNRUlJxSVFJZ0IwRi9haUlIRFFBTEN5QU1RWUFPYWlRQUM5RUhBUXgvSXdCQmdBNXJJZzhrQUNBR1FRVnFJUWtDUUFKQUlBSkJBRWdOQUNBRFFRQklEUUFnQWlBSmFpQUVTdzBBSUFkQkJXb2lEaUFEYWlBRlN3MEFJQVFoQ1NBRElRb01BUXNnQUNBUFFjQUthaUFDSUFNZ0JDQUZJQWtnQjBFRmFpSU9JQWtRRENBUFFjQUthaUVBUVFBaEFnc0NRQ0FPUlEwQUlBWkJBbllpRWtVTkFDQUpJQVpySVJNZ0FDQUpJQXBzSUFKcWFrRUZhaUVDSUE4aEFBTkFJQUpCZjJvdEFBQWhDU0FDUVg1cUxRQUFJUU1nQWtGOWFpMEFBQ0VGSUFKQmZHb3RBQUFoQ2lBQ1FYdHFMUUFBSVF3Z0VpRU5BMEFnQUNBQ0xRQUFJZ1FnRENBSklBcHFJZ3RySUFNZ0JXcEJGR3hxSUF0QkFuUnJhallDQUNBQUlBSXRBQUVpQ3lBRElBbHFRUlJzSUFwcUlBUWdCV29pQ21zZ0NrRUNkR3RxTmdJRUlBQWdBaTBBQWlJUUlBUWdDV3BCRkd3Z0JXb2dBeUFMYWlJRmF5QUZRUUowYTJvMkFnZ2dBQ0FDTFFBREloUWdCQ0FMYWtFVWJDQURhaUFKSUJCcUlnTnJJQU5CQW5ScmFqWUNEQ0FBUVJCcUlRQWdBa0VFYWlFQ0lBa2hEQ0FFSVFvZ0N5RUZJQkFoQXlBVUlRa2dEVUYvYWlJTkRRQUxJQUlnRTJvaEFpQU9RWDlxSWc0TkFBc0xJQWRCQW5ZaUJ3UkFRY0FBSUFacklSUWdEeUFHUVFKMElnUnFJZ2tnQmtFVWJHb2hBaUFKSUFoQkFtb2dCbXhCQW5ScUlRQWdCa0VEYkVFQ2RDRUZRUUFnQm1zaURrRURkQ0VUSUFaQkEzUWhDQU5BSUFZaEF5QUdCRUFEUUNBQklBZ2dDV29vQWdBaUNpQUNJQWhxS0FJQUlBSWdCR29vQWdBaUVTQUNJQk5xS0FJQUlndHFJZ3hySUF4QkFuUnJhaUFDS0FJQUlnMGdBaUFPUVFKMEloQnFLQUlBSWd4cVFSUnNha0dBQkdwQkNuVkJzQzVxTFFBQUlBQWdDR29vQWdCQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FNQ0FCSUFRZ0NXb29BZ0FpRWlBUklBc2dER3BCRkd4cUlBb2dEV29pRVdzZ0VVRUNkR3RxUVlBRWFrRUtkVUd3TG1vdEFBQWdBQ0FFYWlnQ0FFRVFha0VGZFVHd0xtb3RBQUJxUVFGcVFRRjJPZ0FnSUFFZ0NTZ0NBQ0lSSUEwZ0NpQUxha0VVYkdvZ0RDQVNhaUlOYXlBTlFRSjBhMnBCZ0FScVFRcDFRYkF1YWkwQUFDQUFLQUlBUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFCQWdBU0FKSUJCcUtBSUFJQXdnQ2lBU2FrRVViR29nQ3lBUmFpSUtheUFLUVFKMGEycEJnQVJxUVFwMVFiQXVhaTBBQUNBQUlCQnFLQUlBUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFBQWdBRUVFYWlFQUlBbEJCR29oQ1NBQlFRRnFJUUVnQWtFRWFpRUNJQU5CZjJvaUF3MEFDd3NnQVNBVWFpRUJJQUFnQldvaEFDQUNJQVZxSVFJZ0JTQUphaUVKSUFkQmYyb2lCdzBBQ3dzZ0QwR0FEbW9rQUF1MEJnRUpmeU1BUWNBRGF5SU5KQUFnQmtFRmFpRUpBa0FDUUNBQ1FRQklEUUFnQXlBSGFpQUZTdzBBSUFOQkFFZ05BQ0FDSUFscUlBUkxEUUFnQkNFSklBTWhDZ3dCQ3lBQUlBMGdBaUFESUFRZ0JTQUpJQWNnQ1JBTUlBMGhBRUVBSVFJTElBY0VRRUVRSUFacklSQWdDU0FHYXlFUklBWkJBblloRHlBQUlBa2dDbXdnQW1wcVFRVnFJUWtEUUFKQUlBOUZEUUFnQ1VGL2FpMEFBQ0VDSUFsQmZtb3RBQUFoQmlBSlFYMXFMUUFBSVFNZ0NVRjhhaTBBQUNFRklBbEJlMm90QUFBaENpQVBJZ0FoQ3lBSUJFQURRQ0FCSUFZZ0NTMEFBQ0lFSUFvZ0FpQUZhaUlLYXlBRElBWnFRUlJzYWlBS1FRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFDQUJJQUlnQ1MwQUFTSUxJQVVnQWlBR2FrRVViR29nQXlBRWFpSUZheUFGUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQVNBQklBUWdDUzBBQWlJTUlBTWdBaUFFYWtFVWJHb2dCaUFMYWlJRGF5QURRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBaUFCSUFzZ0NTMEFBeUlPSUFZZ0JDQUxha0VVYkdvZ0FpQU1haUlEYXlBRFFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUF5QUJRUVJxSVFFZ0NVRUVhaUVKSUFJaENpQUVJUVVnQ3lFRElBd2hCaUFPSVFJZ0FFRi9haUlBRFFBTUFnQUxBQXNEUUNBQklBTWdDUzBBQUNJQUlBb2dBaUFGYWlJRWF5QURJQVpxUVJSc2FpQUVRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBQ0FCSUFZZ0NTMEFBU0lFSUFVZ0FpQUdha0VVYkdvZ0FDQURhaUlGYXlBRlFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFTQUJJQUlnQ1MwQUFpSU1JQU1nQUNBQ2FrRVViR29nQkNBR2FpSURheUFEUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQWlBQklBQWdDUzBBQXlJT0lBWWdBQ0FFYWtFVWJHb2dBaUFNYWlJRGF5QURRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBeUFCUVFScUlRRWdDVUVFYWlFSklBSWhDaUFBSVFVZ0JDRURJQXdoQmlBT0lRSWdDMEYvYWlJTERRQUxDeUFCSUJCcUlRRWdDU0FSYWlFSklBZEJmMm9pQncwQUN3c2dEVUhBQTJva0FBdkdCQUVMZnlNQVFjQURheUlOSkFBQ1FBSkFJQUpCQUVnTkFDQURRUUJJRFFBZ0FpQUdhaUFFU3cwQUlBTWdCMnBCQldvZ0JVc05BQ0FESVFrTUFRc2dBQ0FOSUFJZ0F5QUVJQVVnQmlBSFFRVnFJQVlRRENBTklRQWdCaUVFUVFBaEFnc2dCMEVDZGlJUUJFQkJ3QUFnQm1zaEVpQUVRUUYwSVFVZ0JFRUNkQ0FHYXlFT1FRQWdCR3NpRDBFQmRDRVRJQUFnQkNBSmJDQUNhbW9nQkdvaUFDQUVRUVZzYWlFQ0lBQWdCQ0FJUVFKcWJHb2hCd05BSUFZaEF5QUdCRUFEUUNBQklBQWdCV290QUFBaUNDQUNJQVZxTFFBQUlBSWdCR290QUFBaUNpQUNJQk5xTFFBQUlnbHFJZ3RySUF0QkFuUnJhaUFDTFFBQUlnd2dBaUFQYWkwQUFDSUxha0VVYkdwQkVHcEJCWFZCc0M1cUxRQUFJQVVnQjJvdEFBQnFRUUZxUVFGMk9nQXdJQUVnQUNBRWFpMEFBQ0lSSUFvZ0NTQUxha0VVYkdvZ0NDQU1haUlLYXlBS1FRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQUlBUWdCMm90QUFCcVFRRnFRUUYyT2dBZ0lBRWdBQzBBQUNJS0lBd2dDQ0FKYWtFVWJHb2dDeUFSYWlJTWF5QU1RUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFJQWN0QUFCcVFRRnFRUUYyT2dBUUlBRWdBQ0FQYWkwQUFDQUxJQWdnRVdwQkZHeHFJQWtnQ21vaUNHc2dDRUVDZEd0cVFSQnFRUVYxUWJBdWFpMEFBQ0FISUE5cUxRQUFha0VCYWtFQmRqb0FBQ0FIUVFGcUlRY2dBRUVCYWlFQUlBRkJBV29oQVNBQ1FRRnFJUUlnQTBGL2FpSUREUUFMQ3lBQklCSnFJUUVnQnlBT2FpRUhJQUlnRG1vaEFpQUFJQTVxSVFBZ0VFRi9haUlRRFFBTEN5QU5RY0FEYWlRQUM0OEhBUXgvSUFFb0FnZ2hDeUFCS0FJRUlRWUNRQUpBQWtBZ0FrRUZTdzBBSUFKQkFXc09CQUFBQUFBQkN5QUFLQUs0R2cwQURBRUxJQUJCeEFscUlRUURRQ0FFSUFNUUZDRUhJQU5CRGtzTkFTQURRUUZxSVFNZ0IwVU5BQXNMQWtBQ1FBSkFBa0FnQUNnQ21Ba2lDQVJBSUFBb0Fyd0pJUXBCQUNFRFFRQWhCQU5BSUFvZ0EwSFlBV3hxS0FMRUFVVUVRRUVBSUFSQkFXb2lCQ0FFSUFaR0lnVWJJUVFnQlNBSmFpRUpJQU5CQVdvaUF5QUlTUTBCQ3dzZ0F5QUlSdzBCQ3dKQUFrQWdBa0YrYWlJQ1FRVkxEUUFDUUNBQ1FRRnJEZ1FCQVFFQkFBc2dCMFVOQVNBQUtBSzRHa1VOQVF3REN5QUhEUUlMSUFFb0FnQkJnQUVnQmlBTGJFR0FBMndRQnhvTUFnc2dBQ2dDdkFrZ0JpQUpiRUhZQVd4cUlRZ2dCQVJBSUFRaEF3TkFJQWdnQTBGL2FpSURRZGdCYkdvaUNpQUJJQWtnQXlBQ0lBY1FGaUFLUVFFMkFzUUJJQUFnQUNnQ3RBbEJBV28yQXJRSklBTU5BQXNMSUFSQkFXb2lBeUFHU1FSQUEwQWdDQ0FEUWRnQmJHb2lCQ2dDeEFGRkJFQWdCQ0FCSUFrZ0F5QUNJQWNRRmlBRVFRRTJBc1FCSUFBZ0FDZ0N0QWxCQVdvMkFyUUpDeUFEUVFGcUlnTWdCa2NOQUFzTEFrQWdDVVVOQUNBR1JRMEFRUUFoQlNBSlFYOXFJZ3dnQm13aERTQU1SUVJBQTBBZ0FDZ0N2QWtnRFVIWUFXeHFJQVZCMkFGc2FpSUVJQUZCQUNBRklBSWdCeEFXSUFSQkFUWUN4QUVnQUNBQUtBSzBDVUVCYWpZQ3RBa2dCVUVCYWlJRklBWkhEUUFNQWdBTEFBc2dDVUYrYWlFSVFRQWdCbXRCMkFGc0lRNERRQ0FBS0FLOENTQU5RZGdCYkdvZ0JVSFlBV3hxSWdNZ0FTQU1JQVVnQWlBSEVCWWdBMEVCTmdMRUFTQUFJQUFvQXJRSlFRRnFOZ0swQ1NBSUlRUURRQ0FESUE1cUlnTWdBU0FFSWdvZ0JTQUNJQWNRRmlBRFFRRTJBc1FCSUFBZ0FDZ0N0QWxCQVdvMkFyUUpJQVJCZjJvaEJDQUtEUUFMSUFWQkFXb2lCU0FHUncwQUN3c2dDVUVCYWlJRklBdFBEUUlnQmtVTkFnTkFJQUFvQXJ3SklBVWdCbXhCMkFGc2FpRUlRUUFoQXdOQUlBZ2dBMEhZQVd4cUlnUW9Bc1FCUlFSQUlBUWdBU0FGSUFNZ0FpQUhFQllnQkVFQk5nTEVBU0FBSUFBb0FyUUpRUUZxTmdLMENRc2dBMEVCYWlJRElBWkhEUUFMSUFWQkFXb2lCU0FMUncwQUN3d0NDeUFCS0FJQUlBY2dCaUFMYkVHQUEyd1FGUm9MSUFBZ0FDZ0NtQWtpQVRZQ3RBa2dBVVVOQUNBQUtBSzhDU0VBUVFBaEF3TkFJQUFnQTBIWUFXeHFRUUUyQWdnZ0EwRUJhaUlESUFGSERRQUxDd3MyQVFKL0lBQW9BaWdpQWdSQUEwQWdBQ2dDQkNBQlFRSjBhaUFBS0FJQUlBRkJLR3hxTmdJQUlBRkJBV29pQVNBQ1J3MEFDd3NMOXdRQ0RIOEJma0VISVFVakFFRWdheUlJSVF3RFFDQUZJQUZKQkVBZ0FFRUFJQVZyUVNoc2FpRUtJQVVoQmdOQUlBQWdCa0VvYkdvaUFpZ0NDQ0VKSUFJcEFnQWhEaUFJSUFJcEFndzNBeGdnQWlnQ0dDRU5JQUlvQWhRaEN5QU1JQUlvQWlRMkFoQWdDQ0FDS1FJY053TUlBa0FnQmlJRElBVkpEUUFDUUNBTFJRUkFBMEFnQ2lBRFFTaHNJZ0pxSWdRb0FoUU5BaUFOUlEwQ0lBUW9BaGdOQWlBQUlBSnFJZ1FnQUNBRElBVnJJZ05CS0d4cUlnSXBBZ0EzQWdBZ0JDQUNLUUlnTndJZ0lBUWdBaWtDR0RjQ0dDQUVJQUlwQWhBM0FoQWdCQ0FDS1FJSU53SUlJQU1nQlU4TkFBd0RBQXNBQ3lBTFFYOXFRUUZOQkVBRFFBSi9Ba0FnQ2lBRFFTaHNJZ0pxSWdRb0FoUWlCMFVOQUNBSFFYOXFRUUZMRFFBZ0JDZ0NDQ0lISUFsS0RRUWdBQ0FDYWlJRUlBY2dDVWdOQVJvZ0JDRUNEQVVMSUFBZ0Ftb0xJZ1FnQUNBRElBVnJJZ05CS0d4cUlnSXBBZ0EzQWdBZ0JDQUNLUUlnTndJZ0lBUWdBaWtDR0RjQ0dDQUVJQUlwQWhBM0FoQWdCQ0FDS1FJSU53SUlJQU1nQlU4TkFBd0RBQXNBQ3dOQUlBb2dBMEVvYkNJQ2FpSUVLQUlVSWdjRVFDQUhRWDlxUVFKSkRRSWdCQ2dDQ0NBSlRBMENDeUFBSUFKcUlnUWdBQ0FESUFWcklnTkJLR3hxSWdJcEFnQTNBZ0FnQkNBQ0tRSWdOd0lnSUFRZ0Fpa0NHRGNDR0NBRUlBSXBBaEEzQWhBZ0JDQUNLUUlJTndJSUlBTWdCVThOQUFzTUFRc2dBQ0FEUVNoc2FpRUNDeUFDSUE0M0FnQWdBQ0FEUVNoc2FpSURJQWsyQWdnZ0NDa0RHQ0VPSUFNZ0RUWUNHQ0FESUFzMkFoUWdBeUFPTndJTUlBTWdDQ2tEQ0RjQ0hDQURJQXdvQWhBMkFpUWdCa0VCYWlJR0lBRkhEUUFMQ3lBRlFRRjJJZ1VOQUFzTHJRVUJBWDhDUUNBQUtBSUFJZ0VvQWhSRkRRQWdBVUVBTmdJVUlBRW9BaGdOQUNBQUlBQW9BaXhCZjJvMkFpd0xBa0FnQVNnQ1BFVU5BQ0FCUVFBMkFqd2dBVUZBYXlnQ0FBMEFJQUFnQUNnQ0xFRi9hallDTEFzQ1FDQUJLQUprUlEwQUlBRkJBRFlDWkNBQktBSm9EUUFnQUNBQUtBSXNRWDlxTmdJc0N3SkFJQUVvQW93QlJRMEFJQUZCQURZQ2pBRWdBU2dDa0FFTkFDQUFJQUFvQWl4QmYybzJBaXdMQWtBZ0FTZ0N0QUZGRFFBZ0FVRUFOZ0swQVNBQktBSzRBUTBBSUFBZ0FDZ0NMRUYvYWpZQ0xBc0NRQ0FCS0FMY0FVVU5BQ0FCUVFBMkF0d0JJQUVvQXVBQkRRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3dKQUlBRW9Bb1FDUlEwQUlBRkJBRFlDaEFJZ0FTZ0NpQUlOQUNBQUlBQW9BaXhCZjJvMkFpd0xBa0FnQVNnQ3JBSkZEUUFnQVVFQU5nS3NBaUFCS0FLd0FnMEFJQUFnQUNnQ0xFRi9hallDTEFzQ1FDQUJLQUxVQWtVTkFDQUJRUUEyQXRRQ0lBRW9BdGdDRFFBZ0FDQUFLQUlzUVg5cU5nSXNDd0pBSUFFb0F2d0NSUTBBSUFGQkFEWUMvQUlnQVNnQ2dBTU5BQ0FBSUFBb0FpeEJmMm8yQWl3TEFrQWdBU2dDcEFORkRRQWdBVUVBTmdLa0F5QUJLQUtvQXcwQUlBQWdBQ2dDTEVGL2FqWUNMQXNDUUNBQktBTE1BMFVOQUNBQlFRQTJBc3dESUFFb0F0QUREUUFnQUNBQUtBSXNRWDlxTmdJc0N3SkFJQUVvQXZRRFJRMEFJQUZCQURZQzlBTWdBU2dDK0FNTkFDQUFJQUFvQWl4QmYybzJBaXdMQWtBZ0FTZ0NuQVJGRFFBZ0FVRUFOZ0tjQkNBQktBS2dCQTBBSUFBZ0FDZ0NMRUYvYWpZQ0xBc0NRQ0FCS0FMRUJFVU5BQ0FCUVFBMkFzUUVJQUVvQXNnRURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3dKQUlBRW9BdXdFUlEwQUlBRkJBRFlDN0FRZ0FTZ0M4QVFOQUNBQUlBQW9BaXhCZjJvMkFpd0xBMEFnQUJCZVJRMEFDeUFBUVFBMkFqQWdBRUwvL3dNM0FpUUwzUTRCQ1g4Z0FpZ0NBQ0FBS0FJSUlnSW9BZ0JHQkVBZ0FFRUFOZ0kwSUFBb0FqZ2lDMFVoRFFKQUlBRkZCRUFnQWlBRE5nSU1JQUpCQURZQ0ZDQUNJQTAyQWhnZ0FpQUVOZ0lRSUFJZ0F6WUNDQ0FMRFFFZ0FDQUFLQUlzUVFGcU5nSXNEQUVMSUFVRVFDQUFRZ0EzQWhBZ0FCQW9Ba0FnQVNnQ0FFVUVRQ0FBS0FJNFJRMEJDeUFBUWdBM0FoQUxJQUFvQWdnaUFrRURRUUlnQVNnQ0JDSUJHellDRkNBQVFRQkIvLzhESUFFYk5nSWtJQUlnRFRZQ0dDQUNRUUEyQWhBZ0FrSUFOd0lJSUFCQ2dZQ0FnQkEzQWlnTUFRc0NRQUpBQWtBZ0FTZ0NDQVJBUVFBaEN3TkFJQUVnQzBFVWJHb2lDQ2dDRENJQ1FRWkxEUUlDUUFKQUFrQUNRQUpBQWtBQ1FDQUNRUUZyRGdZQUFRSURCQVVKQ3lBQUtBSVlJZ2xGRFFnZ0F5QUlLQUlRYXlFTUlBQW9BZ0FoQ2tFQUlRZ0RRQUpBSUFvZ0NFRW9iR29pQWlnQ0ZFRi9ha0VCVFFSQUlBSW9BZ2dnREVZTkFRc2dDRUVCYWlJSUlBbEhEUUVNQ2dzTElBaEJBRWdOQ0NBQ1FRQTJBaFFnQUNBQUtBSW9RWDlxTmdJb0lBSW9BaGdOQlNBQUlBQW9BaXhCZjJvMkFpd2dDMEVCYWlFTERBWUxJQUFvQWhnaUNVVU5CeUFJS0FJVUlRd2dBQ2dDQUNFS1FRQWhDQU5BQWtBZ0NpQUlRU2hzYWlJQ0tBSVVRUU5HQkVBZ0FpZ0NDQ0FNUmcwQkN5QUlRUUZxSWdnZ0NVY05BUXdKQ3dzZ0NFRUFTQTBISUFKQkFEWUNGQ0FBSUFBb0FpaEJmMm8yQWlnZ0FpZ0NHQTBFSUFBZ0FDZ0NMRUYvYWpZQ0xDQUxRUUZxSVFzTUJRc2dBQ2dDSkNJQ1FmLy9BMFlOQmlBQ0lBZ29BaGdpREVrTkJpQUFLQUlZSWdsRkRRWWdDQ2dDRUNFT0lBQW9BZ0FoQ2tFQUlRSURRQUpBQWtBZ0NpQUNRU2hzYWlJSUtBSVVRUU5IRFFBZ0NDZ0NDQ0FNUncwQUlBaEJBRFlDRkNBQUlBQW9BaWhCZjJvMkFpZ2dDQ2dDR0EwQklBQWdBQ2dDTEVGL2FqWUNMQXdCQ3lBQ1FRRnFJZ0lnQ1VjTkFRc0xJQWxCQVNBSlFRRkxHeUVKSUFNZ0Rtc2hEa0VBSVFnRFFBSkFJQW9nQ0VFb2JHb2lBaWdDRkNJUFFYOXFRUUZOQkVBZ0FpZ0NDQ0FPUmcwQkN5QUlRUUZxSWdnZ0NVY05BUXdJQ3dzZ0NFRUFTQTBHSUE5QkFra05CaUFDUVFNMkFoUWdBaUFNTmdJSUlBdEJBV29oQ3d3RUN5QUFJQWdvQWh3aUNUWUNKQ0FBS0FJWUlneEZEUUlnQUNnQ0FDRUtRUUFoQWlBSlFmLy9BMFlFUUFOQUFrQWdDaUFDUVNoc2FpSUlLQUlVUVFOSERRQWdDRUVBTmdJVUlBQWdBQ2dDS0VGL2FqWUNLQ0FJS0FJWURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3lBQ1FRRnFJZ0lnREVjTkFBd0VBQXNBQ3dOQUFrQWdDaUFDUVNoc2FpSUlLQUlVUVFOSERRQWdDQ2dDQ0NBSlRRMEFJQWhCQURZQ0ZDQUFJQUFvQWloQmYybzJBaWdnQ0NnQ0dBMEFJQUFnQUNnQ0xFRi9hallDTEFzZ0FrRUJhaUlDSUF4SERRQUxEQUlMSUFBUUtDQUFRUUUyQWpSQkFDRURJQXRCQVdvaEN3d0NDeUFBS0FJa0lnSkIvLzhEUmcwRElBSWdDQ2dDR0NJTVNRMERJQUFvQWhnaUNrVU5BeUFBS0FJQUlRaEJBQ0VDQWtBRFFBSkFJQWdnQWtFb2JHb2lDU2dDRkVFRFJ3MEFJQWtvQWdnZ0RFY05BQ0FKUVFBMkFoUWdBQ0FBS0FJb1FYOXFJZ2cyQWlnZ0NTZ0NHQTBDSUFBZ0FDZ0NMRUYvYWpZQ0xBd0NDeUFDUVFGcUlnSWdDa2NOQUFzZ0FDZ0NLQ0VJQ3lBSUlBcFBEUU1nQUNnQ0NDSUNRUU0yQWhRZ0FpQUVOZ0lRSUFJZ0REWUNDQ0FDSUFNMkFnd2dBaUFBS0FJNFJUWUNHRUVCSVJBZ0FDQUlRUUZxTmdJb0lBQWdBQ2dDTEVFQmFqWUNMQXNnQzBFQmFpRUxEQUFBQ3dBTFFRQWhBaUFBS0FJb0lna2dBQ2dDR0NJTFNRMEJJQWxGQkVCQkFDRUpEQUlMSUFBb0FnQWhERUYvSVFFRFFDQU1JQUpCS0d4cUlnb29BaFJCZjJwQkFVMEVRQ0FLS0FJSUlnb2dDQ0FCUVg5R0lBb2dDRWh5SWdvYklRZ2dBaUFCSUFvYklRRUxJQUpCQVdvaUFpQUpSdzBBQ3lBQlFRQklEUUVnRENBQlFTaHNhaUlCUVFBMkFoUWdBQ0FKUVg5cUlnazJBaWdnQVNnQ0dBMEJJQUFnQUNnQ0xFRi9hallDTEF3QkN5QVFEUUVnQUNnQ0dDRUxJQUFvQWlnaENRc2dDU0FMVHcwQklBQW9BZ2dpQVNBTk5nSVlJQUZCQWpZQ0ZDQUJJQVEyQWhBZ0FTQUROZ0lJSUFFZ0F6WUNEQ0FBSUFsQkFXbzJBaWdnQUNBQUtBSXNRUUZxTmdJc0N3c2dBQ2dDQ0NJQklBYzJBaUFnQVNBR05nSWNJQUVnQlRZQ0pBSkFJQUFvQWpoRkJFQWdBQ2dDTENJSklBQW9BaHdpQTAwTkFTQUFLQUlBSVFRRFFFSC8vLy8vQnlFRlFRQWhCa0VBSVFJRFFDQUVJQUpCS0d4cUlnRW9BaGdFUUNBQklBWWdBU2dDRUNJQklBVklJZ2NiSVFZZ0FTQUZJQWNiSVFVTElBSkJBV29pQWlBRFRRMEFDd0pBSUFaRkRRQWdBQ2dDRENBQUtBSVFJZ0pCQkhScUlnRWdCaWdDQURZQ0FDQUJJQVlvQWlRMkFnd2dBU0FHS0FJY05nSUVJQUVnQmlnQ0lEWUNDQ0FBSUFKQkFXbzJBaEFnQmtFQU5nSVlJQVlvQWhRTkFDQUFJQWxCZjJvaUNUWUNMQXNnQ1NBRFN3MEFDd3dCQ3lBQktBSUFJUUlnQUNnQ0RDQUFLQUlRSWdOQkJIUnFJZ0VnQlRZQ0RDQUJJQUkyQWdBZ0FTQUhOZ0lJSUFFZ0JqWUNCQ0FBSUFOQkFXbzJBaEFnQUNnQ0hDRURDeUFBS0FJQUlBTkJBV29RSndzTDFBc0NBbjhCZmlNQVFaQUJheUlFSkFBZ0JFRUFOZ0lNQWtBQ1FBSkFJQUFvQXBBYVJRMEFJQUFvQXBRYUlBRkhEUUFnQkNBQVFhUWFhaWtDQURjREdDQUFLUUtjR2lFR0lBUkJBRFlDR0NBRUlBWTNBeEFnQkVFQU5nSWdJQVFnQmo0Q0ZDQURJQUFvQXBnYU5nSUFEQUVMUVFNaEJTQUJJQUlnQkVFUWFpQURFR01OQVNBQUlBUXBBeEEzQXB3YUlBQkJyQnBxSUFRb0FpQTJBZ0FnQUVHa0dtb2dCQ2tER0RjQ0FDQURLQUlBSVFJZ0FDQUJOZ0tVR2lBQUlBSTJBcGdhQzBFQUlRVWdBRUVBTmdLUUdpQUVRUkJxSUFSQmlBRnFFRThFUUVFRElRVU1BUXNnQkNnQ2lBRkJmMnBCQzBzTkFDQUVRUkJxSUFSQmlBRnFJQUFnQkVFTWFoQXlJZ0VFUUVFRUlRVWdBVUh3L3dOR0RRRkJBeUVGREFFTEFrQWdCQ2dDREFSQUFrQWdBQ2dDb0FsRkRRQWdBQ2dDRUVVTkFFRURJUVVnQUNnQ3RCb05Bd0pBSUFBb0FxUUpSUVJBSUFCQnhBbHFJZ0lpQVNBQktBSUFJQUVvQWh4QktHeHFJZ0UyQWdnZ0FDQUJLQUlBTmdLNENpQUNFQ1lnQUNBQVFiZ0tha0VBRUNVTUFRc2dBQ0FBUWJnS2FpQUFRZHdLYWlnQ0FCQWxDeUFEUVFBMkFnQWdBRUVBTmdLY0NTQUFRUUUyQXBBYURBSUxJQUJCQURZQ25Ba2dBRUVBTmdLa0NRc2dCQ2dDaUFGQmYyb2lBVUVIU3cwQkFrQUNRQUpBSUFGQkFXc09Cd1FFQkFJRUFBRUNDeUFFUVJCcUlBUkJLR29RUXdSQUlBUW9BbEFRQkNBRVFRQTJBbEFnQkNnQ2ZCQUVJQVJCQURZQ2ZFRURJUVVNQkFzZ0FDQUVRU2hxRURjTUF3c2dCRUVRYWlBRVFTaHFFRXdFUUNBRUtBSThFQVFnQkVFQU5nSThJQVFvQWtBUUJDQUVRUUEyQWtBZ0JDZ0NSQkFFSUFSQkFEWUNSQ0FFS0FKVUVBUWdCRUVBTmdKVVFRTWhCUXdEQ3lBQUlBUkJLR29RTmd3Q0N5QUFLQUtjQ1EwQklBQkJBVFlDb0FrQ1FDQUFLQUtrQ1EwQUlBQkNBRGNDdEFrZ0JFRVFhaUFFUVNocUVDQWFJQUFvQWdnaEFTQUFJQVFvQWlnZ0JDZ0NpQUZCQlVZUU5TSUNCRUFnQUVLQWdvQ0FnQVEzQWdRZ0FFRUFOZ0swR2lBQVFnQTNBZ3hCQlVFRUlBSkIvLzhEUmhzaEJRd0RDeUFCSUFBb0FnaEdEUUFnQUNnQ0VDRUJJQVJCQVRZQ0NDQUFLQUlBSWdKQkgwMEVRQ0FBSUFKQkFuUnFLQUlVSVFVTElBTkJBRFlDQUNBQVFRRTJBcEFhQWtBQ1FBSkFJQVFvQW9nQlFRVkhEUUFnQkVFSWFpQUVRUkJxSUFFZ0FDZ0NEQkE0SUFRb0FnaHlEUUFnQlVVTkFDQUFRZndKYWlnQ0FBMEFJQVVvQWpRZ0FTZ0NORWNOQUNBRktBSTRJQUVvQWpoSERRQWdCU2dDV0NBQktBSllSZzBCQ3lBQVFZQUtha0VBTmdJQURBRUxJQUJCeEFscUVGa0xJQUFnQUNnQ0NEWUNBRUVDSVFVTUFnc2dBQ2dDdEJvRVFFRURJUVVNQWdzZ0JFRVFhaUFBUWJRU2FpSUNJQUFvQWhBZ0FDZ0NEQ0FFUVlnQmFoQStCRUJCQXlFRkRBSUxJQUFvQXFRSlJRUkFBa0FnQkNnQ2lBRkJCVVlOQUNBQVFjUUphaUFBUWNBU2FpZ0NBQ0FFS0FLTUFVRUFSeUFBS0FJUUtBSXdFRnBGRFFCQkF5RUZEQU1MSUFCQnhBbHFJZ0VnQVNnQ0FDQUJLQUljUVNoc2FpSUJOZ0lJSUFBZ0FTZ0NBRFlDdUFvTElBQkIyQXBxSUFKQjNBY1FGU0VCSUFCQkFUWUNwQWtnQUNBRUtRT0lBVGNDMEFvZ0FDZ0NsQWtnQUNnQ0RDQUFRWmdMYWlnQ0FDQUFLQUlRSWdJb0FqUWdBaWdDT0JBL0lBQkJ4QWxxSWdJUUppQUNJQUJCbkF0cUlBQkI1QXBxS0FJQUlBQkJoQXRxS0FJQUVGOEVRRUVESVFVTUFnc2dCRUVRYWlBQUlBQkJ1QXBxSUFFUVFRUkFJQUFnQUNnQzJBb1FRRUVESVFVTUFnc2dBQkF6UlEwQklBQkJBVFlDbkFrTElBQkJ1QXBxSWdFZ0FDZ0N2QWtRU1NBQUVEUWdBRUdFQ21vZ0FDZ0NFQ0FBUWRnS2FpQUFRZEFLYWhCTklRSUNRQ0FBS0FLa0NVVU5BQ0FBUWNRSmFpRURJQUJCMUFwcUtBSUFCRUFnQXlBQVFld01haUFCSUFCQjVBcHFLQUlBSUFJZ0FDZ0MwQXBCQlVZZ0FDZ0N1QWtnQUNnQ3RBa1FLUXdCQ3lBRFFRQWdBU0FBUWVRS2FpZ0NBQ0FDSUFBb0F0QUtRUVZHSUFBb0FyZ0pJQUFvQXJRSkVDa0xJQUJDQURjQ29BbEJBU0VGQ3lBRVFaQUJhaVFBSUFVTHFBd0JDMzhDUUNBQlFRUlBCRUJCQUNBRGF5SU5RUUYwSVFvQ1FDQUFJQU5ySWdVdEFBQWlCaUFBTFFBQUlnaHJJZ0VnQVVFZmRTSUJhaUFCY3lBQ0tBSUVJZ0ZQRFFBZ0FDQUthaTBBQUNJSElBWnJJZ1FnQkVFZmRTSUVhaUFFY3lBQ0tBSUlJZ3hQRFFBZ0FDQURhaTBBQUNJRUlBaHJJZ3NnQzBFZmRTSUxhaUFMY3lBTVR3MEFJQVVnQkNBR2FpQUhRUUYwYWtFQ2FrRUNkam9BQUNBQUlBZ2dCRUVCZEdvZ0IycEJBbXBCQW5ZNkFBQWdBaWdDQkNFQkN3SkFJQUJCQVdvaUJpQU5haUlNTFFBQUlnZ2dBQzBBQVNJSGF5SUVJQVJCSDNVaUJHb2dCSE1nQVU4TkFDQUdJQXBxTFFBQUlnUWdDR3NpQlNBRlFSOTFJZ1ZxSUFWeklBSW9BZ2dpQzA4TkFDQURJQVpxTFFBQUlnVWdCMnNpQ1NBSlFSOTFJZ2xxSUFseklBdFBEUUFnRENBRklBaHFJQVJCQVhScVFRSnFRUUoyT2dBQUlBWWdCeUFGUVFGMGFpQUVha0VDYWtFQ2Rqb0FBQ0FDS0FJRUlRRUxBa0FnQUVFQ2FpSUdJQTFxSWd3dEFBQWlDQ0FBTFFBQ0lnZHJJZ1FnQkVFZmRTSUVhaUFFY3lBQlR3MEFJQVlnQ21vdEFBQWlCQ0FJYXlJRklBVkJIM1VpQldvZ0JYTWdBaWdDQ0NJTFR3MEFJQU1nQm1vdEFBQWlCU0FIYXlJSklBbEJIM1VpQ1dvZ0NYTWdDMDhOQUNBTUlBVWdDR29nQkVFQmRHcEJBbXBCQW5ZNkFBQWdCaUFISUFWQkFYUnFJQVJxUVFKcVFRSjJPZ0FBSUFJb0FnUWhBUXNDUUNBQVFRTnFJZ1lnRFdvaURDMEFBQ0lJSUFBdEFBTWlCMnNpQkNBRVFSOTFJZ1JxSUFSeklBRlBEUUFnQmlBS2FpMEFBQ0lFSUFocklnVWdCVUVmZFNJRmFpQUZjeUFDS0FJSUlndFBEUUFnQXlBR2FpMEFBQ0lGSUFkcklna2dDVUVmZFNJSmFpQUpjeUFMVHcwQUlBd2dCU0FJYWlBRVFRRjBha0VDYWtFQ2Rqb0FBQ0FHSUFjZ0JVRUJkR29nQkdwQkFtcEJBblk2QUFBZ0FpZ0NCQ0VCQ3dKQUlBQkJCR29pQmlBTmFpSU1MUUFBSWdnZ0FDMEFCQ0lIYXlJRUlBUkJIM1VpQkdvZ0JITWdBVThOQUNBR0lBcHFMUUFBSWdRZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6SUFJb0FnZ2lDMDhOQUNBRElBWnFMUUFBSWdVZ0Iyc2lDU0FKUVI5MUlnbHFJQWx6SUF0UERRQWdEQ0FGSUFocUlBUkJBWFJxUVFKcVFRSjJPZ0FBSUFZZ0J5QUZRUUYwYWlBRWFrRUNha0VDZGpvQUFDQUNLQUlFSVFFTEFrQWdBRUVGYWlJR0lBMXFJZ3d0QUFBaUNDQUFMUUFGSWdkcklnUWdCRUVmZFNJRWFpQUVjeUFCVHcwQUlBWWdDbW90QUFBaUJDQUlheUlGSUFWQkgzVWlCV29nQlhNZ0FpZ0NDQ0lMVHcwQUlBTWdCbW90QUFBaUJTQUhheUlKSUFsQkgzVWlDV29nQ1hNZ0MwOE5BQ0FNSUFVZ0NHb2dCRUVCZEdwQkFtcEJBblk2QUFBZ0JpQUhJQVZCQVhScUlBUnFRUUpxUVFKMk9nQUFJQUlvQWdRaEFRc0NRQ0FBUVFacUlnWWdEV29pREMwQUFDSUlJQUF0QUFZaUIyc2lCQ0FFUVI5MUlnUnFJQVJ6SUFGUERRQWdCaUFLYWkwQUFDSUVJQWhySWdVZ0JVRWZkU0lGYWlBRmN5QUNLQUlJSWd0UERRQWdBeUFHYWkwQUFDSUZJQWRySWdrZ0NVRWZkU0lKYWlBSmN5QUxUdzBBSUF3Z0JTQUlhaUFFUVFGMGFrRUNha0VDZGpvQUFDQUdJQWNnQlVFQmRHb2dCR3BCQW1wQkFuWTZBQUFnQWlnQ0JDRUJDeUFOSUFCQkIyb2lEV29pQ0MwQUFDSUdJQUF0QUFjaUFHc2lCeUFIUVI5MUlnZHFJQWR6SUFGUERRRWdDaUFOYWkwQUFDSUJJQVpySWdvZ0NrRWZkU0lLYWlBS2N5QUNLQUlJSWdwUERRRWdBeUFOYWkwQUFDSUNJQUJySWdNZ0EwRWZkU0lEYWlBRGN5QUtUdzBCSUFnZ0FpQUdhaUFCUVFGMGFrRUNha0VDZGpvQUFDQU5JQUFnQWtFQmRHb2dBV3BCQW1wQkFuWTZBQUFQQzBFQUlBTnJJZ2RCQVhRaEJDQUJJQUlvQWdCcVFYOXFMUUFBSWdGQkFXb2hCaUFCUVg5eklRaEJDQ0VCQTBBQ1FDQUFJQWRxSWdVdEFBQWlDaUFBTFFBQUlnMXJJZ3dnREVFZmRTSU1haUFNY3lBQ0tBSUVUdzBBSUFBZ0JHb3RBQUFpRENBS2F5SUxJQXRCSDNVaUMyb2dDM01nQWlnQ0NDSUxUdzBBSUFBZ0Eyb3RBQUFpQ1NBTmF5SU9JQTVCSDNVaURtb2dEbk1nQzA4TkFDQUZJQW9nQ0NBR0lBMGdDbXRCQW5RZ0NXc2dER3BCQkdwQkEzVWlDaUFLSUFaS0d5QUtJQWhJR3lJS2FrR3dMbW90QUFBNkFBQWdBQ0FOSUFwclFiQXVhaTBBQURvQUFBc2dBRUVCYWlFQUlBRkJmMm9pQVEwQUN3c0w2Z2dCQW44Z0FVRUFRYmdIRUFjaEFrRUJJUUVDUUFKQUlBQkJBUkFESWdOQmYwWU5BQ0FDSUFOQkFVWTJBZ0FDUUNBRFFRRkhEUUFnQUVFSUVBTWlBMEYvUmcwQklBSWdBellDQkNBRFFmOEJSdzBBSUFCQkVCQURJZ05CZjBZTkFTQUNJQU0yQWdnZ0FFRVFFQU1pQTBGL1JnMEJJQUlnQXpZQ0RBc2dBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDRUNBRFFRRkdCRUFnQUVFQkVBTWlBMEYvUmcwQklBSWdBMEVCUmpZQ0ZBc2dBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDR0FKQUFrQWdBMEVCUmdSQUlBQkJBeEFESWdOQmYwWU5BeUFDSUFNMkFod2dBRUVCRUFNaUEwRi9SZzBESUFJZ0EwRUJSallDSUNBQVFRRVFBeUlEUVg5R0RRTWdBaUFEUVFGR05nSWtJQU5CQVVjTkFTQUFRUWdRQXlJRFFYOUdEUU1nQWlBRE5nSW9JQUJCQ0JBRElnTkJmMFlOQXlBQ0lBTTJBaXdnQUVFSUVBTWlBMEYvUncwQ0RBTUxJQUpCQlRZQ0hBc2dBa0tDZ0lDQUlEY0NLRUVDSVFNTElBSWdBellDTUNBQVFRRVFBeUlEUVg5R0RRQWdBaUFEUVFGR05nSTBBa0FnQTBFQlJ3MEFJQUFnQWtFNGFoQUNJZ0VOQVNBQ0tBSTRRUVZMRFFJZ0FDQUNRVHhxRUFJaUFRMEJJQUlvQWp4QkJVME5BQXdDQzBFQklRRWdBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDUUNBRFFRRkdCRUFnQUJBUElRRWdBRUVnRUFzaEF5QUJSUTBDSUFOQmYwWU5BaUFDSUFFMkFrUWdBQkFQSVFFZ0FFRWdFQXNoQXlBQlJRMENJQU5CZjBZTkFpQUNJQUUyQWtoQkFTRUJJQUJCQVJBRElnTkJmMFlOQVNBQ0lBTkJBVVkyQWt3TElBQkJBUkFESWdOQmYwWU5BQ0FDSUFOQkFVWTJBbEFDUUNBRFFRRkdCRUFnQUNBQ1FkUUFhaEFjSWdGRkRRRU1BZ3NnQWtFQk5nSlVJQUpDbUlDQWdJQUROd0xvQXlBQ1FwaUFnSUNBQXpjQzRBTWdBa0dCa0txSkFUWUM0QUVnQWtHQmtLcUpBVFlDWUF0QkFTRUJJQUJCQVJBRElnTkJmMFlOQUNBQ0lBTkJBVVkyQXZBREFrQWdBMEVCUmdSQUlBQWdBa0gwQTJvUUhDSUJSUTBCREFJTElBSkJBVFlDOUFNZ0FrS1lnSUNBZ0FNM0FvZ0hJQUpDbUlDQWdJQUROd0tBQnlBQ1FZRzR1UElBTmdLQUJTQUNRWUc0dVBJQU5nS0FCQXNDUUNBQ0tBSlFSUVJBSUFJb0F2QURSUTBCQzBFQklRRWdBRUVCRUFNaUEwRi9SZzBCSUFJZ0EwRUJSallDa0FjTFFRRWhBU0FBUVFFUUF5SURRWDlHRFFBZ0FpQURRUUZHTmdLVUJ5QUFRUUVRQXlJRFFYOUdEUUFnQWlBRFFRRkdOZ0tZQndKQUlBTkJBVVlFUUNBQVFRRVFBeUlEUVg5R0RRSWdBaUFEUVFGR05nS2NCeUFBSUFKQm9BZHFFQUlpQVEwQ0lBSW9BcUFIUVJCTERRTWdBQ0FDUWFRSGFoQUNJZ0VOQWlBQ0tBS2tCMEVRU3cwRElBQWdBa0dvQjJvUUFpSUJEUUlnQWlnQ3FBZEJFRXNOQXlBQUlBSkJyQWRxRUFJaUFRMENRUUVoQVNBQ0tBS3NCMEVRU3cwQ0lBQWdBa0d3QjJvUUFpSUJEUUlnQUNBQ1FiUUhhaEFDSWdGRkRRRU1BZ3NnQWtFUU5nSzBCeUFDUXBDQWdJQ0FBamNDckFjZ0FrS0JnSUNBZ0FJM0FxUUhJQUpDZ1lDQWdDQTNBcHdIQzBFQUlRRUxJQUVQQzBFQkMwMEJBbjhqQUVFUWF5SURKQUJCQVNFRUFrQWdBQ0FEUVF4cUVBSU5BQ0FES0FJTUlnQkJMMHNOQUNBQlFkQS9RWURBQUNBQ0d5QUFhaTBBQURZQ0FFRUFJUVFMSUFOQkVHb2tBQ0FFQ3o0QkFuOENRQ0FBS0FJTVFRTjBJQUFvQWhCcklnRkZCRUFNQVF0QkFTRUNJQUZCQ0VzTkFFRUJJQUZCZjJwMElBQVFEMEVnSUFGcmRrY1BDeUFDQ3pJQkFuOENRRUdBZ0lEQUFDSUJJQUJ4RFFBRFFDQUNRUUZxSVFJZ0FVRUJkaUlCUlEwQklBQWdBWEZGRFFBTEN5QUNDNG9DQVFkL0lBRkJvRDFxTFFBQVFReHNRZEE4YWlnQ0FDRUNRUUVoQXlBQlFRWlBCRUJCQUNFRElBSWdBVUdRUEdvdEFBQkJmMnAwSVFJTElBQWdBQ2dDQUNJQklBQW9BZ2dpQkdzaUJTQUFLQUlFSWdZZ0FDZ0NEQ0lIYXlJSWF5QUNiQ0FEZFRZQ0RDQUFJQVVnQ0dvZ0Ftd2dBM1UyQWdnZ0FDQUJJQVJxSWdFZ0JpQUhhaUlFYXlBQ2JDQURkVFlDQkNBQUlBRWdCR29nQW13Z0EzVTJBZ0FnQUNBQUtBSWNJZ0VnQUNnQ0ZDSUVhaUlGSUFBb0FoZ2lCaUFBS0FJUUlnZHFJZ2hxSUFKc0lBTjFOZ0lRSUFBZ0JDQUJheUlCSUFjZ0Jtc2lCR29nQW13Z0EzVTJBaGdnQUNBSUlBVnJJQUpzSUFOMU5nSVVJQUFnQkNBQmF5QUNiQ0FEZFRZQ0hBdlBDQUVVZnlBQUlBQW9BaXdpQWlBQUtBSU1JZ1pxSWdVZ0FDZ0NOQ0lFSUFBb0FpQWlFR29pQ21zaUVUWUNMQ0FBS0FJb0lRTWdBQ0FHSUFKcklnY2dFQ0FFYXlJRWF5SUdOZ0lvSUFBb0FpUWhBaUFBSUFRZ0Iyb2lCRFlDSkNBQUlBVWdDbW9pQlRZQ0lDQUFJQUFvQWh3aUNpQUFLQUlJSWdkcUlnZ2dBQ2dDTUNJTUlBQW9BaEFpQ1dvaUMyc2lFRFlDSENBQUtBSVlJUThnQUNBSElBcHJJZ2NnQ1NBTWF5SU1heUlLTmdJWUlBQW9BaFFoQ1NBQUlBY2dER29pQnpZQ0ZDQUFJQWdnQzJvaUNEWUNFQ0FBSUFrZ0FDZ0NBQ0lMYWlJU0lBOGdBQ2dDQkNJTmFpSU9heUlNTmdJTUlBQWdDeUFKYXlJSklBMGdEMnNpQzJzaUR6WUNDQ0FBSUFrZ0Myb2lDVFlDQkNBQUlBNGdFbW9pQ3pZQ0FDQUFJQUlnQUNnQ09DSU5haUlUSUFNZ0FDZ0NQQ0lPYWlJVWF5SVNOZ0k4SUFBZ0FpQU5heUlDSUFNZ0Rtc2lBMnNpRFRZQ09DQUFJQUlnQTJvaURqWUNOQ0FBSUJNZ0ZHb2lFellDTUNBQlFaQThhaTBBQUNFQ0lBRkJvRDFxTFFBQVFReHNRZEE4YWlnQ0FDRURJQUZCREU4RVFDQUFJQU1nQWtGK2FuUWlBU0FGSUF0cUlnTWdDQ0FUYWlJQ2EydzJBakFnQUNBTElBVnJJZ1VnQ0NBVGF5SUlheUFCYkRZQ0lDQUFJQVVnQ0dvZ0FXdzJBaEFnQUNBQ0lBTnFJQUZzTmdJQUlBQWdCQ0FKYWlJRElBY2dEbW9pQW1zZ0FXdzJBalFnQUNBSklBUnJJZ1FnQnlBT2F5SUZheUFCYkRZQ0pDQUFJQVFnQldvZ0FXdzJBaFFnQUNBQ0lBTnFJQUZzTmdJRUlBQWdCaUFQYWlJRElBb2dEV29pQW1zZ0FXdzJBamdnQUNBUElBWnJJZ1lnQ2lBTmF5SUVheUFCYkRZQ0tDQUFJQVFnQm1vZ0FXdzJBaGdnQUNBQ0lBTnFJQUZzTmdJSUlBQWdEQ0FSYXlJRElCQWdFbXNpQW1zZ0FXdzJBaXdnQUNBQ0lBTnFJQUZzTmdJY0lBQWdFQ0FTYWlJRElBd2dFV29pQW1vZ0FXdzJBZ3dnQUNBQ0lBTnJJQUZzTmdJOER3c2dBRUVCUVFJZ0FVRjZha0VHU1JzaUFTQUZJQXRxSWhRZ0NDQVRhaUlWYXlBRGJHcEJBaUFDYXlJQ2RUWUNNQ0FBSUFzZ0JXc2lCU0FJSUJOcklnaHJJQU5zSUFGcUlBSjFOZ0lnSUFBZ0JTQUlhaUFEYkNBQmFpQUNkVFlDRUNBQUlCUWdGV29nQTJ3Z0FXb2dBblUyQWdBZ0FDQUVJQWxxSWdVZ0J5QU9haUlJYXlBRGJDQUJhaUFDZFRZQ05DQUFJQWtnQkdzaUJDQUhJQTVySWdkcklBTnNJQUZxSUFKMU5nSWtJQUFnQkNBSGFpQURiQ0FCYWlBQ2RUWUNGQ0FBSUFVZ0NHb2dBMndnQVdvZ0FuVTJBZ1FnQUNBR0lBOXFJZ1FnQ2lBTmFpSUZheUFEYkNBQmFpQUNkVFlDT0NBQUlBOGdCbXNpQmlBS0lBMXJJZ3BySUFOc0lBRnFJQUoxTmdJb0lBQWdCaUFLYWlBRGJDQUJhaUFDZFRZQ0dDQUFJQVFnQldvZ0Eyd2dBV29nQW5VMkFnZ2dBQ0FNSUJGcklnWWdFQ0FTYXlJRWF5QURiQ0FCYWlBQ2RUWUNMQ0FBSUFRZ0Jtb2dBMndnQVdvZ0FuVTJBaHdnQUNBUUlCSnFJZ1lnRENBUmFpSVJhaUFEYkNBQmFpQUNkVFlDRENBQUlCRWdCbXNnQTJ3Z0FXb2dBblUyQWp3THZRVUJCbjhqQUVFZ2F5SUZKQUFnQTBFQU5nSUFBa0FnQVNnQ0FDSUdRUkpMRFFCQkFTQUdkQ0lHUWNEZkgzRkZCRUFnQmtFaWNVVU5BU0FDUWJRS2FpZ0NBQVJBSUFOQkFUWUNBQ0FDUVFBMkFyUUtDeUFBSUFWQkhHb1FJQ0lFRFFGQjhQOERJUVFnQWlBRktBSWNRUUowYWlnQ2xBRWlDRVVOQVNBQ0lBZ29BZ1FpQmtFQ2RHb29BaFFpQjBVTkFRSkFJQUlvQWdnaUNVRWdSZzBBSUFZZ0NVWU5BQ0FCS0FJQVFRVkhEUUlMQWtBZ0FrR1lDbW9vQWdBaUJDQUJLQUlFSWdaR0RRQWdCRUVBSUFZYkRRQWdBMEVCTmdJQUN5QUJLQUlBSVFRQ1FBSkFJQUlvQXBRS1FRVkdCRUFnQkVFRlJ3MEJEQUlMSUFSQkJVY05BUXNnQTBFQk5nSUFDMEVCSVFRZ0FDQUhLQUlNSUFWQkdHb1FQUTBCSUFVb0FoZ2lCaUFDUVp3S2FpZ0NBRWNFUUNBQ0lBWTJBcHdLSUFOQkFUWUNBQXNnQVNnQ0FFRUZSZ1JBSUFBZ0J5Z0NEQ0FGUVJScUVEd05BZ0pBSUFJb0FwUUtRUVZIQkVBZ0JTZ0NGQ0VFREFFTElBSkJvQXBxS0FJQUlnUWdCU2dDRkNJR1JnMEFJQU5CQVRZQ0FDQUdJUVFMSUFKQm9BcHFJQVEyQWdBTEFrQWdCeWdDRUNJRVFRRkxEUUFnQkVFQmF3UkFRUUVoQkNBQUlBY2dBU2dDQUNBRlFRaHFFRHNOQXlBRktBSUlJZ1FnQWtHa0Ntb29BZ0JIQkVBZ0FpQUVOZ0trQ2lBRFFRRTJBZ0FMSUFnb0FnaEZEUUVnQUNBSElBRW9BZ0FnQlVFUWFoQTZJZ1FOQXlBRktBSVFJZ0FnQWtHb0Ntb29BZ0JHRFFFZ0FpQUFOZ0tvQ2lBRFFRRTJBZ0FNQVFzZ0J5Z0NHQTBBSUFBZ0J5QUJLQUlBSUFnb0FnZ2dCVUVJYWhBNUlnUU5BaUFGS0FJSUlnQWdBa0dzQ21vb0FnQkhCRUFnQWlBQU5nS3NDaUFEUVFFMkFnQUxJQWdvQWdoRkRRQWdCU2dDRENJQUlBSkJzQXBxS0FJQVJnMEFJQUlnQURZQ3NBb2dBMEVCTmdJQUN5QUNJQUVwQWdBM0FwUUtRUUFoQkF3QkN5QURRUUUyQWdBTElBVkJJR29rQUNBRUMzOEJBMzhDUUFKQUFrQWdBRUg4Q21vb0FnQUVRQ0FBS0FLWUNTSUREUUZCQVE4TFFRRWhBU0FBUWF3SmFpZ0NBQ0FBS0FLWUNVY05BUXdDQ3lBQUtBSzhDU0VCUVFBaEFBTkFJQUlnQVNBQVFkZ0JiR29vQXNRQlFRQkhhaUVDSUFCQkFXb2lBQ0FEUncwQUMwRUJJUUVnQWlBRFJnMEJDMEVBSVFFTElBRUxTZ0VEZnlBQVFnQTNBcWdKSUFBb0FwZ0pJZ0VFUUNBQUtBSzhDU0VDUVFBaEFBTkFJQUlnQUVIWUFXeHFJZ05CQURZQ3hBRWdBMEVBTmdJRUlBQkJBV29pQUNBQlJ3MEFDd3NMZ3dZQkRIOUJBU0VHQWtBZ0FDQUJRUUowYWlnQ2xBRWlCRVVOQUNBQUlBUW9BZ1FpQ1VFQ2RHb2lDa0VVYWlnQ0FDSURSUTBBQWtBZ0JDZ0NEQ0lGUVFKSkRRQWdBeWdDTkNJSElBTW9BamhzSVFnQ1FDQUVLQUlRSWdOQkFrc05BQUpBQWtBQ1FDQURRUUZyRGdJREFBRUxJQVZCZjJvaEN5QUVLQUljSVF3Z0JDZ0NHQ0VOUVFBaEF3d0JDeUFFS0FJVUlRZEJBQ0VEQTBBZ0J5QURRUUowYWlnQ0FDQUlUUVJBSUFVZ0EwRUJhaUlEUncwQkRBUUxDMEVCRHdzRFFDQU5JQU5CQW5RaUJXb29BZ0FpRGlBRklBeHFLQUlBSWdWTERRTWdCU0FJVHcwRElBNGdCM0FnQlNBSGNFMEVRQ0FEUVFGcUlnTWdDMFlOQXd3QkN3dEJBUThMSUFOQmZXcEJBazBFUUNBRUtBSWtJQWhORFFFTUFnc2dBMEVHUncwQUlBUW9BaWdnQ0VrTkFRc0NRQ0FBS0FJRUlnTkJnQUpHQkVBZ0FDQUVOZ0lNSUFBZ0FUWUNCQ0FBSUFrMkFnZ2dBQ0FLS0FJVUlnRTJBaEFnQVNnQ05DRUNJQUVvQWpnaEFTQUFRUUUyQXJRYUlBQkJ3QXBxSUFFMkFnQWdBRUc4Q21vZ0FqWUNBQ0FBSUFFZ0FtdzJBcGdKREFFTElBQW9BclFhQkVBZ0FFRUFOZ0swR2lBQUtBSzhDUkFFSUFCQkFEWUN2QWtnQUNnQ2xBa1FCQ0FBSUFBb0FwZ0pJZ0ZCMkFGc0lnUVFDaUlDTmdLOENTQUFJQUZCQW5RUUNpSUROZ0tVQ1VILy93TWhCaUFDUlEwQ0lBTkZEUUlnQWtFQUlBUVFCeUFBS0FJUUtBSTBJQUVRVGlBQUtBSVFJUUZCQVNFQ0FrQWdBQ2dDd0FrTkFDQUJLQUlRUVFKR0RRQUNRQ0FCS0FKUVJRMEFJQUVvQWxRaUJDZ0NtQWRGRFFBZ0JDZ0NzQWRGRFFFTFFRQWhBZ3NnQUVIRUNXb2dBU2dDT0NBQktBSTBiQ0FCS0FKWUlBRW9BaXdnQVNnQ0RDQUNFRndpQmtVTkFRd0NDeUFCSUFOR0RRQWdBQ2dDQ0NBSlJ3UkFJQUpGRFFJZ0FDQUVOZ0lNSUFBZ0FUWUNCQ0FBSUFrMkFnZ2dBQ0FLS0FJVUlnRTJBaEFnQVNnQ05DRUNJQUVvQWpnaEFTQUFRUUUyQXJRYUlBQkJ3QXBxSUFFMkFnQWdBRUc4Q21vZ0FqWUNBQ0FBSUFFZ0FtdzJBcGdKREFFTElBQWdCRFlDRENBQUlBRTJBZ1FMUVFBaEJnc2dCZ3UyQVFFRGZ3SkFJQUFnQVNnQ0FDSURRUUowYWlJQ0tBS1VBU0lFUlFSQUlBSkJ5QUFRQ2lJQU5nS1VBU0FBRFFFUEN3SkFJQU1nQUNnQ0JFY05BQ0FCS0FJRUlBQW9BZ2hHRFFBZ0FFR0JBallDQkFzZ0JDZ0NGQkFFSUFJb0FwUUJRUUEyQWhRZ0FpZ0NsQUVvQWhnUUJDQUNLQUtVQVVFQU5nSVlJQUlvQXBRQktBSWNFQVFnQWlnQ2xBRkJBRFlDSENBQ0tBS1VBU2dDTEJBRUlBSW9BcFFCUVFBMkFpd0xJQUlvQXBRQklBRkJ5QUFRRlJvTDFnRUJBMzhDUUNBQUlBRW9BZ2dpQTBFQ2RHb2lBaWdDRkNJRVJRUkFJQUpCM0FBUUNpSUFOZ0lVSUFBTkFROExJQUFvQWdnZ0EwWUVRQ0FCSUFBb0FoQVFRZ1JBSUFJb0FoUW9BaWdRQkNBQ0tBSVVRUUEyQWlnZ0FpZ0NGQ2dDVkJBRUlBSW9BaFJCQURZQ1ZDQUFRUUEyQWhBZ0FFR0JBallDQkNBQVFpRTNBZ2dNQWdzZ0FTZ0NLQkFFSUFGQkFEWUNLQ0FCS0FKVUVBUWdBVUVBTmdKVUR3c2dCQ2dDS0JBRUlBSW9BaFJCQURZQ0tDQUNLQUlVS0FKVUVBUWdBaWdDRkVFQU5nSlVDeUFDS0FJVUlBRkIzQUFRRlJvTDBnSUJBMzhqQUVFZ2F5SUVKQUFnQkNBQktBSVFOZ0lRSUFRZ0FTa0NDRGNEQ0NBRUlBRXBBZ0EzQXdBQ1FDQUVJQVJCSEdvUUFpSUJEUUFnQkNBRVFSeHFFQUlpQVEwQUlBUWdCRUVjYWhBQ0lnRU5BQ0FDS0FJTUlRWkJBQ0VCQTBBZ0FTSUZRUUZxSVFFZ0JpQUZkZzBBQ3lBRUlBVkJmMm9RQTBGL1JnUkFRUUVoQVF3QkN5QUVJQVJCSEdvUUFpSUJEUUFDUUNBQ0tBSVFJZ0VFZnlBQkJTQUNLQUlVSVFaQkFDRUJBMEFnQVNJRlFRRnFJUUVnQmlBRmRnMEFDeUFFSUFWQmYyb1FBMEYvUmdSQVFRRWhBUXdEQ3lBREtBSUlCRUFnQkNBRVFSaHFFQVVpQVEwREN5QUNLQUlRQzBFQlJ3MEFJQUlvQWhnTkFDQUVJQVJCR0dvUUJTSUJEUUVnQXlnQ0NFVU5BQ0FFSUFSQkdHb1FCU0lCRFFFTElBTW9Ba1FFUUNBRUlBUkJIR29RQWlJQkRRRUxJQUFnQkVFQkVBTWlBRFlDQUNBQVFYOUdJUUVMSUFSQklHb2tBQ0FCQzhZQkFRSi9Jd0JCSUdzaUJTUUFJQVVnQUNnQ0VEWUNFQ0FGSUFBcEFnZzNBd2dnQlNBQUtRSUFOd01BQWtBZ0JTQUZRUnhxRUFJaUFBMEFJQVVnQlVFY2FoQUNJZ0FOQUNBRklBVkJIR29RQWlJQURRQWdBU2dDRENFR1FRQWhBQU5BSUFBaUFVRUJhaUVBSUFZZ0FYWU5BQXNnQlNBQlFYOXFFQU5CZjBZRVFFRUJJUUFNQVFzZ0FrRUZSZ1JBSUFVZ0JVRWNhaEFDSWdBTkFRc2dCU0FFRUFVaUFBMEFJQU1FUUNBRklBUkJCR29RQlNJQURRRUxRUUFoQUFzZ0JVRWdhaVFBSUFBTDRRRUJBMzhqQUVFZ2F5SUVKQUFnQkNBQUtBSVFOZ0lRSUFRZ0FDa0NDRGNEQ0NBRUlBQXBBZ0EzQXdBQ1FDQUVJQVJCSEdvUUFpSUFEUUFnQkNBRVFSeHFFQUlpQUEwQUlBUWdCRUVjYWhBQ0lnQU5BQ0FCS0FJTUlRWkJBQ0VBQTBBZ0FDSUZRUUZxSVFBZ0JpQUZkZzBBQ3lBRUlBVkJmMm9RQTBGL1JnUkFRUUVoQUF3QkN5QUNRUVZHQkVBZ0JDQUVRUnhxRUFJaUFBMEJDeUFCS0FJVUlRSkJBQ0VBQTBBZ0FDSUJRUUZxSVFBZ0FpQUJkZzBBQ3lBRUlBRkJmMm9RQTBGL1JnUkFRUUVoQUF3QkN5QUVJQU1RQlNFQUN5QUVRU0JxSkFBZ0FBdm1BUUVEZnlNQVFTQnJJZ1FrQUNBRUlBQW9BaEEyQWhBZ0JDQUFLUUlJTndNSUlBUWdBQ2tDQURjREFBSkFJQVFnQkVFY2FoQUNJZ0FOQUNBRUlBUkJIR29RQWlJQURRQWdCQ0FFUVJ4cUVBSWlBQTBBSUFFb0Fnd2hCa0VBSVFBRFFDQUFJZ1ZCQVdvaEFDQUdJQVYyRFFBTElBUWdCVUYvYWhBRFFYOUdCRUJCQVNFQURBRUxJQUpCQlVZRVFDQUVJQVJCSEdvUUFpSUFEUUVMSUFFb0FoUWhBa0VBSVFBRFFDQUFJZ0ZCQVdvaEFDQUNJQUYyRFFBTElBUWdBVUYvYWhBRElnQkJmMFlFUUVFQklRQU1BUXNnQXlBQU5nSUFRUUFoQUFzZ0JFRWdhaVFBSUFBTGtnRUJBbjhqQUVFZ2F5SURKQUFnQXlBQUtBSVFOZ0lRSUFNZ0FDa0NBRGNEQUNBRElBQXBBZ2czQXdnQ1FDQURJQU5CSEdvUUFpSUFEUUFnQXlBRFFSeHFFQUlpQUEwQUlBTWdBMEVjYWhBQ0lnQU5BRUVBSVFBRFFDQUFJZ1JCQVdvaEFDQUJJQVIyRFFBTElBTWdCRUYvYWhBRFFYOUdCRUJCQVNFQURBRUxJQU1nQWhBQ0lRQUxJQU5CSUdva0FDQUFDNWNCQVFKL0l3QkJJR3NpQXlRQUlBTWdBQ2dDRURZQ0VDQURJQUFwQWdnM0F3Z2dBeUFBS1FJQU53TUFBa0FnQXlBRFFSeHFFQUlpQUEwQUlBTWdBMEVjYWhBQ0lnQU5BQ0FESUFOQkhHb1FBaUlBRFFCQkFDRUFBMEFnQUNJRVFRRnFJUUFnQVNBRWRnMEFDeUFESUFSQmYyb1FBeUlBUVg5R0JFQkJBU0VBREFFTElBSWdBRFlDQUVFQUlRQUxJQU5CSUdva0FDQUFDNjhPQVFwL0l3QkJFR3NpQlNRQUlBRkJBRUhjQnhBSElRY2dBaWdDTkNFR0lBSW9BamdoQ0FKQUlBQWdCVUVFYWhBQ0lnRU5BQ0FISUFVb0FnUWlBVFlDQUNBQklBWWdDR3dpQzA4RVFFRUJJUUVNQVFzZ0FDQUZRUVJxRUFJaUFRMEFJQWNnQlNnQ0JDSUdOZ0lFSUFaQkIwc0VRRUVCSVFFTUFRdEJBU0VCQWtBQ1FDQUdRUUZyRGdjQ0FRSUNBQUlCQUFzZ0JDZ0NBRUVGUmdSQURBSUxJQUlvQWl3TkFBd0JDeUFBSUFWQkJHb1FBaUlCRFFBZ0J5QUZLQUlFSWdZMkFnaEJBU0VCSUFZZ0F5Z0NBRWNOQUNBQ0tBSU1JUWhCQUNFQkEwQWdBU0lHUVFGcUlRRWdDQ0FHZGcwQUMwRUJJUUVnQUNBR1FYOXFFQU1pQmtGL1JnMEFJQVpCQUNBRUtBSUFJZ2hCQlVZYkRRQWdCeUFHTmdJTUlBaEJCVVlFUUNBQUlBVkJCR29RQWlJQkRRRWdCeUFGS0FJRUlnWTJBaEJCQVNFQklBWkIvLzhEU3cwQkN3SkFJQUlvQWhBaUFRUi9JQUVGSUFJb0FoUWhDRUVBSVFFRFFDQUJJZ1pCQVdvaEFTQUlJQVoyRFFBTElBQWdCa0YvYWhBRElnRkJmMFlFUUVFQklRRU1Bd3NnQnlBQk5nSVVJQU1vQWdnRVFDQUFJQVVRQlNJQkRRTWdCeUFGS0FJQU5nSVlDeUFFS0FJQVFRVkdCRUJCQVNFQklBY29BaFFpQmlBQ0tBSVVRUUYyU3cwRElBWkJBQ0FIS0FJWUlnaEJIM1VnQ0hGclJ3MERDeUFDS0FJUUMwRUJSdzBBSUFJb0FoZ05BQ0FBSUFVUUJTSUJEUUVnQnlBRktBSUFOZ0ljSUFNb0FnZ0VRQ0FBSUFVUUJTSUJEUUlnQnlBRktBSUFOZ0lnQ3lBRUtBSUFRUVZIRFFCQkFTRUJJQWNvQWh3aUJpQUhLQUlnSUFZZ0FpZ0NJR3BxSWdnZ0JpQUlTQnNOQVFzZ0F5Z0NSQVJBSUFBZ0JVRUVhaEFDSWdFTkFTQUhJQVVvQWdRaUJqWUNKRUVCSVFFZ0JrSC9BRXNOQVFzQ1FDQUhLQUlFSWdGQkJVc05BQUpBSUFGQkFXc09CQUVCQVFFQUMwRUJJUUVnQUVFQkVBTWlCa0YvUmcwQklBY2dCallDS0FKQUlBWUVRQ0FBSUFWQkJHb1FBaUlCRFFOQkFTRUJJQVVvQWdRaUJrRVBTdzBESUFaQkFXb2hCZ3dCQ3lBREtBSXdJZ1pCRUVzTkFnc2dCeUFHTmdJc0lBY29BZ1FoQVFzQ1FDQUJRUVZMRFFBQ1FDQUJRUUZyRGdRQkFRRUJBQXNnQWlnQ0RDRUpJQWNvQWl3aENrRUJJUUVnQUVFQkVBTWlCa0YvUmcwQklBY2dCallDUkNBR1JRMEFRUUFoQVFOQUlBRWlCaUFLU3dSQVFRRWhBUXdEQ3lBQUlBVkJDR29RQWlJQkRRSWdCU2dDQ0NJQlFRTkxCRUJCQVNFQkRBTUxJQWNnQmtFTWJHb2lDQ0FCTmdKSUFrQWdBVUVCVFFSQUlBQWdCVUVNYWhBQ0lnRU5CQ0FGS0FJTUlnRWdDVThFUUVFQklRRU1CUXNnQ0NBQlFRRnFOZ0pNREFFTElBRkJBa2NOQUNBQUlBVkJER29RQWlJQkRRTWdDQ0FGS0FJTU5nSlFDeUFHUVFGcUlRRWdCU2dDQ0VFRFJ3MEFDMEVCSVFFZ0JrVU5BUXNDUUNBRUtBSUVSUTBBSUFRb0FnQWhCQ0FDS0FJc0lRbEJBU0VCSUFCQkFSQURJUUlnQkVFRlJnUkFJQUpCZjBZTkFpQUhJQUkyQXBRQ0lBQkJBUkFESWdKQmYwWU5BaUFISUFJMkFwZ0NJQWtOQVNBQ1JRMEJEQUlMSUFKQmYwWU5BU0FISUFJMkFwd0NJQUpGRFFBZ0NVRUJkRUVEYWlFT1FRQWhCa0VBSVFwQkFDRUVBMEFnQmlBT1JnUkFRUUVoQVF3REN5QUFJQVZCQ0dvUUFpSUJEUUlnQlNnQ0NDSUNRUVpMQkVCQkFTRUJEQU1MSUFjZ0JrRVViR29pQ0NBQ05nS2dBZ0ovSUFKQkFuSkJBMFlFUUNBQUlBVkJER29RQWlJQkRRUWdDQ0FGS0FJTVFRRnFOZ0trQWlBRktBSUlJUUlMSUFKQkFrWUxCRUFnQUNBRlFReHFFQUlpQVEwRElBZ2dCU2dDRERZQ3FBSWdCU2dDQ0NFQ0N3SkFJQUpCZldvaUFVRURTdzBBQWtBZ0FVRUJhdzRDQVFFQUN5QUFJQVZCREdvUUFpSUJEUU1nQ0NBRktBSU1OZ0tzQWlBRktBSUlJUUlMSUFKQkJFWUVRQ0FBSUFWQkRHb1FBaUlCRFFNZ0JTZ0NEQ0lCSUFsTEJFQkJBU0VCREFRTElBZ2dBVUYvYWtILy93TWdBUnMyQXJBQ0lBcEJBV29oQ2lBRktBSUlJUUlMSUFaQkFXb2hCaUFNSUFKQkJrWnFJUXdnQkNBQ1FRVkdhaUVFSUEwZ0FrRi9ha0VEU1dvaERTQUNEUUFMUVFFaEFTQUVJQXB5SUF4eVFRRkxEUUVnQkVVTkFDQU5EUUVMSUFBZ0JSQUZJZ0VOQUNBSElBVW9BZ0FpQVRZQ01DQUZJQUVnQXlnQ05Hb2lBallDQUVFQklRRWdBa0V6U3cwQUFrQWdBeWdDUEVVTkFDQUFJQVZCQkdvUUFpSUJEUUVnQnlBRktBSUVJZ0kyQWpSQkFTRUJJQUpCQWtzTkFTQUNRUUZHRFFBZ0FDQUZFQVVpQVEwQlFRRWhBU0FGS0FJQUlnSkJCbXBCREVzTkFTQUhJQUpCQVhRMkFqZ2dBQ0FGRUFVaUFRMEJRUUVoQVNBRktBSUFJZ0pCQm1wQkRFc05BU0FISUFKQkFYUTJBandMQWtBZ0F5Z0NERUVDU1EwQUlBTW9BaEJCZldwQkFrc05BRUVDUVFFZ0N5QUxJQU1vQWlRaUFXNGlBaUFCYkdzYklBSnFJUVJCQUNFQ0EwQWdCQ0FDSWdGQkFXb2lBbllOQUFzZ0JTQUFJQUlnQVNBRVFYOGdBWFJCZjNOeEd4QURJZ0EyQWdSQkFTRUJJQUJCZjBZTkFTQUhJQUEyQWtBZ0FDQUxJQU1vQWlRaUFHcEJmMm9nQUc1TERRRUxRUUFoQVFzZ0JVRVFhaVFBSUFFTHdRa0JEWDhnQXlBRWJDRUZJQUVvQWd3aUNVRUJSZ1JBSUFCQkFDQUZRUUowRUFjYUR3c0NRQUpBQWtBQ1FDQUJLQUlRSWdaQmZXcEJBazBFUUNBQktBSWtJQUpzSWdJZ0JTQUNJQVZKR3lFTElBWkJmbkZCQkVjTkFTQUZJQXRySUFzZ0FTZ0NJQnNoQndzQ1FBSkFBa0FnQmtFRlRRUkFJQVpCQVdzT0JRWUZCQU1DQVFzZ0JVVU5CaUFCS0FJc0lRSkJBQ0VCQTBBZ0FDQUJRUUowSWdOcUlBSWdBMm9vQWdBMkFnQWdBVUVCYWlJQklBVkhEUUFMREFZTEFrQWdDUVJBSUFFb0FoUWhBa0VBSVFZTUFRc2dCVVVOQmdOQURBQUFDd0FMQTBCQkFDRUVJQVlnQlU4TkJnTkFRUUFoQndKQUlBSWdCRUVDZEdvaUF5Z0NBQ0lCUlEwQUlBRWhCeUFGSUFaTkRRQkJBQ0VCUVFBZ0JTQUdheUlISUFjZ0JVc2JJUWdEUUNBQUlBRWdCbXBCQW5ScUlBUTJBZ0FnQVVFQmFpSUJJQU1vQWdBaUIwOE5BU0FCSUFoSERRQUxDeUFFUVFGcUlnUWdDVWxCQUNBR0lBZHFJZ1lnQlVrYkRRQUxJQVlnQlVrTkFBc01CUXNnQTBVTkJDQUVSUTBFUVFFZ0FTZ0NJQ0lKYXlFSVFRQWhCVUVBSVFJRFFFRUFJUUVnQlNFR0EwQWdBQ0FCSUFOc0lBSnFRUUowYWlBSklBZ2dCaUFIU1JzMkFnQWdCa0VCYWlFR0lBRkJBV29pQVNBRVJ3MEFDeUFFSUFWcUlRVWdBa0VCYWlJQ0lBTkhEUUFMREFRTElBVkZEUU5CQVNBQktBSWdJZ0pySVFOQkFDRUJBMEFnQUNBQlFRSjBhaUFDSUFNZ0FTQUhTUnMyQWdBZ0FVRUJhaUlCSUFWSERRQUxEQU1MSUFFb0FpQWhBaUFGQkVCQkFDRUJBMEFnQUNBQlFRSjBha0VCTmdJQUlBRkJBV29pQVNBRlJ3MEFDd3NnQzBVTkFpQURRWDlxSVE4Z0JFRi9haUVRSUFKQmYyb2hCa0VCSUFKQkFYUWlBV3NoQlNBQlFYOXFJUWtnQkNBQ2EwRUJkaUlLSVF3Z0F5QUNhMEVCZGlJTklRUWdDaUVJSUEwaEFVRUFJUWNEUUNBQUlBTWdDR3dnQVdwQkFuUnFJZzRvQWdBaUVVRUJSZ1JBSUE1QkFEWUNBQXNnRVVFQlJpRU9Ba0FDUUNBR1FYOUhEUUFnQVNBRVJ3MEFRUUFoQmlBSklRSWdCRUVCSUFSQkFVb2JRWDlxSWdFaEJBd0JDd0pBSUFaQkFVY05BQ0FCSUExSERRQkJBQ0VHSUFVaEFpQU5RUUZxSWdFZ0R5QUJJQTlJR3lJQklRME1BUXNDUUNBQ1FYOUhEUUFnQ0NBTVJ3MEFRUUFoQWlBRklRWWdERUVCSUF4QkFVb2JRWDlxSWdnaERBd0JDd0pBSUFKQkFVY05BQ0FJSUFwSERRQkJBQ0VDSUFraEJpQUtRUUZxSWdnZ0VDQUlJQkJJR3lJSUlRb01BUXNnQWlBSWFpRUlJQUVnQm1vaEFRc2dCeUFPYWlJSElBdEpEUUFMREFJTElBRW9BaHdoQnlBQktBSVlJUWdnQlFSQUlBbEJmMm9oQWtFQUlRRURRQ0FBSUFGQkFuUnFJQUkyQWdBZ0FVRUJhaUlCSUFWSERRQUxJQUpGRFFJTElBbEJmbW9oQVFOQUFrQWdDQ0FCSWdSQkFuUWlBV29vQWdBaUJpQURiaUlDSUFFZ0Iyb29BZ0FpQVNBRGJpSUZTdzBBSUFZZ0FpQURiR3NpQmlBQklBTWdCV3hySWdsTEJFQURRQ0FDUVFGcUlnSWdCVTBOQUF3Q0FBc0FDd05BSUFJZ0Eyd2hDaUFHSVFFRFFDQUFJQUVnQ21wQkFuUnFJQVEyQWdBZ0FVRUJhaUlCSUFsTkRRQUxJQUpCQVdvaUFpQUZUUTBBQ3dzZ0JFRi9haUVCSUFRTkFBc01BUXNnQlVVTkFFRUFJUUVEUUNBQUlBRkJBblJxSUFFZ0EyNGlBaUFKYkVFQmRpQUJJQUlnQTJ4cmFpQUpjRFlDQUNBQlFRRnFJZ0VnQlVjTkFBc0xDOFFCQVFWL0lBQW9BcWdKSVFRQ1FDQUFRYkFKYWlnQ0FDSUNSUTBBSUFKQmYyb2lBaUFCVFFSQUlBSWhBUXdCQ3lBQUtBSzhDU0VGQTBBQ1FDQUZJQUpCMkFGc2FpZ0NCQ0FFUncwQUlBTkJBV29pQXlBQUtBSVFLQUkwSWdaQkNpQUdRUXBMRzBrTkFDQUNJUUVNQWdzZ0FrRi9haUlDSUFGTERRQUxDd05BQWtBZ0FDZ0N2QWtnQVVIWUFXeHFJZ0lvQWdRZ0JFY05BQ0FDS0FMRUFTSURSUTBBSUFJZ0EwRi9hallDeEFFZ0FDZ0NsQWtnQUNnQ21Ba2dBUkFlSWdFTkFRc0xDNzBFQWd0L0FYNGpBRUhBQTJzaUJTUUFJQU1vQWdBaEJ5QUJLQUt3R2lFSUlBVkJBRFlDRENBQlFiQUpha0VBTmdJQUlBRWdBU2dDcUFsQkFXbzJBcWdKSUFVZ0F5Z0NNQ0FCS0FJTUtBSTBhallDQ0NBQlFjUUphaUVOSUFoQkRHb2hEZ0pBQTBBZ0FTZ0N2QWtoQkFKQUlBTW9BaVFOQUNBRUlBZEIyQUZzYWlnQ3hBRkZEUUJCQVNFRURBSUxJQU1wQWpRaER5QURLQUk4SVFzZ0FTZ0NxQWtoRENBRUlBZEIyQUZzSWdacUlnUWdBU2dDRENnQ09EWUNHQ0FFSUFzMkFoQWdCQ0FQTndJSUlBUWdERFlDQkFKQUlBTW9BZ1FpQkVFQ1JnMEFJQWtOQUNBRVFRZEdEUUFnQUNBRlFReHFFQUlpQkEwQ0lBVW9BZ3dpQkNBQktBS1lDU0FIYTBzRVFFRUJJUVFNQXdzZ0JFVUVRRUVBSVFrTUFRc2dEa0VBUWFRQkVBY2FJQWhCQURZQ0FFRUJJUWtMQWtBZ0JTZ0NEQ0lFQkVBZ0JTQUVRWDlxTmdJTURBRUxRUUFoQ1NBQUlBZ2dBU2dDdkFrZ0Jtb2dBeWdDQkNBREtBSXNFRkVpQkEwQ0N5QUJLQUs4Q1NBR2FpQUlJQUlnRFNBRlFRaHFJQWNnQVNnQ0RDZ0NRQ0FGUVJCcUVGQWlCQTBCSUFFb0Fyd0pJQVpxS0FMRUFTRUxJQUFRTGlFRUlBVW9BZ3doQmdKQUlBTW9BZ1JCZm1vaURFRUZTdzBBQWtBZ0RFRUJhdzRFQVFFQkFRQUxJQUVnQnpZQ3NBa0xJQVFnQm5JaEJrRUJJUVFnQVNnQ2xBa2dBU2dDbUFrZ0J4QWVJZ2RGUVFBZ0Joc05BU0FLSUF0QkFVWnFJUW9nQmcwQUN5QUJRYXdKYWlnQ0FDQUthaUlBSUFFb0FwZ0pTdzBBSUFFZ0FEWUNyQWxCQUNFRUN5QUZRY0FEYWlRQUlBUUw1Z0lCQjM5QkFTRUNBa0FnQUNnQ0FDQUJLQUlBUncwQUlBQW9BZ1FnQVNnQ0JFY05BQ0FBS0FJTUlBRW9BZ3hIRFFBZ0FDZ0NFQ0lESUFFb0FoQkhEUUFnQUNnQ0xDQUJLQUlzUncwQUlBQW9BakFnQVNnQ01FY05BQ0FBS0FJMElBRW9BalJIRFFBZ0FDZ0NPQ0FCS0FJNFJ3MEFJQUFvQWp3aUJTQUJLQUk4UncwQUlBQW9BbEFnQVNnQ1VFY05BQUpBSUFOQkFVc05BQ0FEUVFGclJRUkFJQUFvQWhnZ0FTZ0NHRWNOQWlBQUtBSWNJQUVvQWh4SERRSWdBQ2dDSUNBQktBSWdSdzBDSUFBb0FpUWlCQ0FCS0FJa1J3MENJQVJGRFFFZ0FTZ0NLQ0VHSUFBb0FpZ2hCMEVBSVFNRFFDQUhJQU5CQW5RaUNHb29BZ0FnQmlBSWFpZ0NBRWNOQXlBRUlBTkJBV29pQTBjTkFBc01BUXNnQUNnQ0ZDQUJLQUlVUncwQkN5QUZCRUFnQUNnQ1FDQUJLQUpBUncwQklBQW9Ba1FnQVNnQ1JFY05BU0FBS0FKSUlBRW9Ba2hIRFFFZ0FDZ0NUQ0FCS0FKTVJ3MEJDMEVBSVFJTElBSUwvd2tCQm44akFFRVFheUlFSkFBZ0FVRUFRZHdBRUFjaEF3SkFJQUJCQ0JBRElnRkJmMFlFUUVFQklRRU1BUXNnQXlBQk5nSUFJQUJCQVJBREdpQUFRUUVRQXhvZ0FFRUJFQU5CZjBZRVFFRUJJUUVNQVFzZ0FFRUZFQU5CZjBZRVFFRUJJUUVNQVFzZ0FFRUlFQU1pQVVGL1JnUkFRUUVoQVF3QkN5QURJQUUyQWdRZ0FDQURRUWhxRUFJaUFRMEFJQU1vQWdoQkgwc0VRRUVCSVFFTUFRc2dBQ0FFUVF4cUVBSWlBUTBBUVFFaEFTQUVLQUlNSWdKQkRFc05BQ0FEUVFFZ0FrRUVhblEyQWd3Z0FDQUVRUXhxRUFJaUFRMEFRUUVoQVNBRUtBSU1JZ0pCQWtzTkFDQURJQUkyQWhBQ1FDQUNRUUZMRFFBZ0FrRUJhd1JBSUFBZ0JFRU1haEFDSWdFTkFrRUJJUUVnQkNnQ0RDSUNRUXhMRFFJZ0EwRUJJQUpCQkdwME5nSVVEQUVMSUFCQkFSQURJZ0pCZjBZTkFTQURJQUpCQVVZMkFoZ2dBQ0FEUVJ4cUVBVWlBUTBCSUFBZ0EwRWdhaEFGSWdFTkFTQUFJQU5CSkdvUUFpSUJEUUZCQVNFQklBTW9BaVFpQWtIL0FVc05BU0FDQkVBZ0F5QUNRUUowRUFvaUFUWUNLQ0FCUlFSQVFmLy9BeUVCREFNTElBQWdBUkFGSWdFTkFrRUJJUUlEUUNBQ0lBTW9BaVJQRFFJZ0FrRUNkQ0VCSUFKQkFXb2hBaUFBSUFFZ0F5Z0NLR29RQlNJQlJRMEFDd3dDQ3lBRFFRQTJBaWdMSUFBZ0EwRXNhaEFDSWdFTkFFRUJJUUVnQXlnQ0xFRVFTdzBBSUFCQkFSQURJZ0pCZjBZTkFDQURJQUpCQVVZMkFqQWdBQ0FFUVF4cUVBSWlBUTBBSUFNZ0JDZ0NERUVCYWpZQ05DQUFJQVJCREdvUUFpSUJEUUJCQVNFQklBTWdCQ2dDREVFQmFqWUNPQ0FBUVFFUUEwRUJha0VDU1EwQUlBQkJBUkFEUVg5R0RRQWdBRUVCRUFNaUFrRi9SZzBBSUFNZ0FrRUJSaUlCTmdJOEFrQWdBVVVFUUNBREtBSTRJUVVnQXlnQ05DRUdEQUVMSUFBZ0EwRkFheEFDSWdFTkFTQUFJQU5CeEFCcUVBSWlBUTBCSUFBZ0EwSElBR29RQWlJQkRRRWdBQ0FEUWN3QWFoQUNJZ0VOQVVFQklRRWdBeWdDUUNBREtBSkVRWDl6SUFNb0FqUWlCa0VEZEdwS0RRRWdBeWdDU0NBREtBSk1RWDl6SUFNb0FqZ2lCVUVEZEdwS0RRRUxBa0FDUUFKQUFrQWdBeWdDQkVGMmFpSUhRU2xMRFFCQjR3QWhBVUdBcEFraEFnSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnQjBFQmF3NHBBQUVCQ3dzTEN3c0xBUUlEQ3dzTEN3c0xDd01FQlFzTEN3c0xDd3NHQmdjTEN3c0xDd3NMQ0FrS0MwR01BeUVCUVlDTUZTRUNEQWtMUVl3RElRRkJnTmczSVFJTUNBdEJtQVloQVVHQXNPOEFJUUlNQnd0QjFBd2hBVUdBN0wwQklRSU1CZ3RCa0J3aEFVR0E4S1VESVFJTUJRdEJnQ2doQVVHQWdPQURJUUlNQkF0QmdNQUFJUUZCZ0lDQUJpRUNEQU1MUVlERUFDRUJRWUNBc0FZaEFnd0NDMEhBckFFaEFVR0F3SnNVSVFJTUFRdEJnS0FDSVFGQmdJRGdJU0VDQ3lBQklBVWdCbXdpQVU4TkFRc2dCRUgvLy8vL0J6WUNEQ0FES0FJc0lRSU1BUXNnQkNBQ0lBRkJnQU5zYmlJQlFSQWdBVUVRU1JzaUFUWUNEQ0FES0FJc0lnSWdBVTBOQVFzZ0JDQUNOZ0lNSUFJaEFRc2dBeUFCTmdKWVFRRWhBU0FBUVFFUUF5SUNRWDlHRFFBZ0F5QUNRUUZHTmdKUUFrQWdBa0VCUncwQUlBTkJ1QWNRQ2lJQk5nSlVJQUZGQkVCQi8vOERJUUVNQWdzZ0FDQUJFQ3dpQVEwQklBTW9BbFFpQWlnQ21BZEZEUUJCQVNFQklBSW9BckFISUFJb0FyUUhJZ0pMRFFFZ0FpQURLQUlzU1EwQklBSWdBeWdDV0VzTkFTQURJQUpCQVNBQ0d6WUNXQXNnQUJBZlFRQWhBUXNnQkVFUWFpUUFJQUVMalFRQkRuOGdBUUovQWtBZ0FDOEJJQ0lIRFFBZ0FDOEJIQTBBUVFBTUFRdEJBZ3MyQWlBZ0FRSi9Ba0FnQUM4QklpSUNEUUFnQUM4QkhnMEFRUUFNQVF0QkFnczJBaWdnQVFKL0FrQWdBQzhCS0NJRERRQWdBQzhCSkEwQVFRQU1BUXRCQWdzMkFqQWdBUUovQWtBZ0FDOEJLaUlJRFFBZ0FDOEJKZzBBUVFBTUFRdEJBZ3MyQWpnZ0FTQUhJQUF2QVN3aUNYSkJBRWRCQVhRMkFrQWdBU0FDSUFBdkFTNGlCSEpCQUVkQkFYUTJBa2dnQVNBRElBQXZBVFFpQlhKQkFFZEJBWFEyQWxBZ0FTQUlJQUF2QVRZaUNuSkJBRWRCQVhRMkFsZ2dBU0FBTHdFd0lnMGdDWEpCQUVkQkFYUTJBbUFnQVNBQUx3RXlJZ3NnQkhKQkFFZEJBWFEyQW1nZ0FTQUFMd0U0SWd3Z0JYSkJBRWRCQVhRMkFuQWdBU0FBTHdFNklnNGdDbkpCQUVkQkFYUTJBbmhCQWlFR0lBRWdBQzhCSGlJUEJIOUJBZ1VnQUM4QkhFRUFSMEVCZEFzMkFnd2dBU0FQSUFBdkFTUWlCbkpCQUVkQkFYUTJBaFFnQUM4QkppRUFJQUVnRENBT2NrRUFSMEVCZERZQ2ZDQUJJQXNnREhKQkFFZEJBWFEyQW5RZ0FTQUxJQTF5UVFCSFFRRjBOZ0pzSUFFZ0JTQUtja0VBUjBFQmREWUNYQ0FCSUFRZ0JYSkJBRWRCQVhRMkFsUWdBU0FFSUFseVFRQkhRUUYwTmdKTUlBRWdBeUFJY2tFQVIwRUJkRFlDUENBQklBSWdBM0pCQUVkQkFYUTJBalFnQVNBQ0lBZHlRUUJIUVFGME5nSXNJQUVnQUNBR2NrRUFSMEVCZERZQ0hBdk1CZ0VMZnlNQVFZQU9heUlPSkFBZ0JrRUZhaUVJQWtBQ1FDQUNRUUJJRFFBZ0EwRUFTQTBBSUFJZ0NHb2dCRXNOQUNBSFFRVnFJZ29nQTJvZ0JVc05BQ0FFSVFnZ0F5RUpEQUVMSUFBZ0RrSEFDbW9nQWlBRElBUWdCU0FJSUFkQkJXb2lDaUFJRUF3Z0RrSEFDbW9oQUVFQUlRSUxBa0FnQ2tVTkFDQUdRUUoySWhCRkRRQWdDQ0FHYXlFUklBQWdDQ0FKYkNBQ2FtcEJCV29oQWlBT0lRQURRQ0FDUVg5cUxRQUFJUWdnQWtGK2FpMEFBQ0VESUFKQmZXb3RBQUFoQlNBQ1FYeHFMUUFBSVFRZ0FrRjdhaTBBQUNFTUlCQWhEUU5BSUFBZ0FpMEFBQ0lKSUF3Z0JDQUlhaUlMYXlBRElBVnFRUlJzYWlBTFFRSjBhMm8yQWdBZ0FDQUNMUUFCSWdzZ0F5QUlha0VVYkNBRWFpQUZJQWxxSWdScklBUkJBblJyYWpZQ0JDQUFJQUl0QUFJaUR5QUlJQWxxUVJSc0lBVnFJQU1nQzJvaUJHc2dCRUVDZEd0cU5nSUlJQUFnQWkwQUF5SVNJQWtnQzJwQkZHd2dBMm9nQ0NBUGFpSURheUFEUVFKMGEybzJBZ3dnQUVFUWFpRUFJQUpCQkdvaEFpQUlJUXdnQ1NFRUlBc2hCU0FQSVFNZ0VpRUlJQTFCZjJvaURRMEFDeUFDSUJGcUlRSWdDa0YvYWlJS0RRQUxDd0pBSUFkQkFuWWlCMFVOQUNBR1JRMEFRY0FBSUFacklROGdEaUFHUVFKMGFpSUlJQVpCRkd4cUlRSkJBQ0FHYXlJUVFRTjBJUklnQmtFRGRDRUpJQVpCQTJ4QkFuUWhDd05BSUFZaEJBTkFJQUVnQ0NBSmFpZ0NBQ0lBSUFJZ0NXb29BZ0FnQWlBR1FRSjBJZzFxS0FJQUlnb2dBaUFTYWlnQ0FDSURhaUlGYXlBRlFRSjBhMm9nQWlnQ0FDSU1JQUlnRUVFQ2RDSVJhaWdDQUNJRmFrRVViR3BCZ0FScVFRcDFRYkF1YWkwQUFEb0FNQ0FCSUFnZ0RXb29BZ0FpRFNBS0lBTWdCV3BCRkd4cUlBQWdER29pQ21zZ0NrRUNkR3RxUVlBRWFrRUtkVUd3TG1vdEFBQTZBQ0FnQVNBSUtBSUFJZ29nRENBQUlBTnFRUlJzYWlBRklBMXFJZ3hySUF4QkFuUnJha0dBQkdwQkNuVkJzQzVxTFFBQU9nQVFJQUVnQ0NBUmFpZ0NBQ0FGSUFBZ0RXcEJGR3hxSUFNZ0Ntb2lBR3NnQUVFQ2RHdHFRWUFFYWtFS2RVR3dMbW90QUFBNkFBQWdDRUVFYWlFSUlBRkJBV29oQVNBQ1FRUnFJUUlnQkVGL2FpSUVEUUFMSUFFZ0Qyb2hBU0FDSUF0cUlRSWdDQ0FMYWlFSUlBZEJmMm9pQncwQUN3c2dEa0dBRG1va0FBdmxBd0VKZnlNQVFjQURheUlLSkFBZ0JrRUZhaUVJQWtBQ1FDQUNRUUJJRFFBZ0F5QUhhaUFGU3cwQUlBTkJBRWdOQUNBQ0lBaHFJQVJMRFFBZ0JDRUlJQU1oQ1F3QkN5QUFJQW9nQWlBRElBUWdCU0FJSUFjZ0NCQU1JQW9oQUVFQUlRSUxBa0FnQjBVTkFDQUdRUUoySWcxRkRRQkJFQ0FHYXlFT0lBZ2dCbXNoRHlBQUlBZ2dDV3dnQW1wcVFRVnFJUUlEUUNBQ1FYOXFMUUFBSVFnZ0FrRithaTBBQUNFR0lBSkJmV290QUFBaEFDQUNRWHhxTFFBQUlRVWdBa0Y3YWkwQUFDRUpJQTBoQ3dOQUlBRWdBaTBBQUNJRElBa2dCU0FJYWlJRWF5QUFJQVpxUVJSc2FpQUVRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFPZ0FBSUFFZ0FpMEFBU0lFSUFVZ0JpQUlha0VVYkdvZ0FDQURhaUlGYXlBRlFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQU9nQUJJQUVnQWkwQUFpSU1JQUFnQXlBSWFrRVViR29nQkNBR2FpSUFheUFBUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBT2dBQ0lBRWdBaTBBQXlJUUlBWWdBeUFFYWtFVWJHb2dDQ0FNYWlJQWF5QUFRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFPZ0FESUFGQkJHb2hBU0FDUVFScUlRSWdDQ0VKSUFNaEJTQUVJUUFnRENFR0lCQWhDQ0FMUVg5cUlnc05BQXNnQVNBT2FpRUJJQUlnRDJvaEFpQUhRWDlxSWdjTkFBc0xJQXBCd0FOcUpBQUw5UU1CQzM4akFFSEFBMnNpQ3lRQUFrQUNRQ0FDUVFCSURRQWdBMEVBU0EwQUlBSWdCbW9nQkVzTkFDQURJQWRxUVFWcUlBVkxEUUFnQXlFSURBRUxJQUFnQ3lBQ0lBTWdCQ0FGSUFZZ0IwRUZhaUFHRUF3Z0N5RUFJQVloQkVFQUlRSUxBa0FnQjBFQ2RpSU1SUTBBSUFaRkRRQkJ3QUFnQm1zaEVTQUVRUUYwSVEwZ0JFRUNkQ0FHYXlFT1FRQWdCR3NpRDBFQmRDRVNJQUFnQkNBSWJDQUNhbW9nQkdvaUJ5QUVRUVZzYWlFQ0EwQWdCaUVBQTBBZ0FTQUhJQTFxTFFBQUlnTWdBaUFOYWkwQUFDQUNJQVJxTFFBQUlna2dBaUFTYWkwQUFDSUZhaUlJYXlBSVFRSjBhMm9nQWkwQUFDSUtJQUlnRDJvdEFBQWlDR3BCRkd4cVFSQnFRUVYxUWJBdWFpMEFBRG9BTUNBQklBUWdCMm90QUFBaUVDQUpJQVVnQ0dwQkZHeHFJQU1nQ21vaUNXc2dDVUVDZEd0cVFSQnFRUVYxUWJBdWFpMEFBRG9BSUNBQklBY3RBQUFpQ1NBS0lBTWdCV3BCRkd4cUlBZ2dFR29pQ21zZ0NrRUNkR3RxUVJCcVFRVjFRYkF1YWkwQUFEb0FFQ0FCSUFjZ0Qyb3RBQUFnQ0NBRElCQnFRUlJzYWlBRklBbHFJZ05ySUFOQkFuUnJha0VRYWtFRmRVR3dMbW90QUFBNkFBQWdCMEVCYWlFSElBRkJBV29oQVNBQ1FRRnFJUUlnQUVGL2FpSUFEUUFMSUFFZ0VXb2hBU0FDSUE1cUlRSWdCeUFPYWlFSElBeEJmMm9pREEwQUN3c2dDMEhBQTJva0FBdXFCZ0VOZnlNQVFiQUJheUlSSkFBZ0NFRUJhaUVLQWtBQ1FDQUNRUUJJRFFBZ0EwRUFTQTBBSUFJZ0Ntb2dCRXNOQUNBRElBbHFRUUZxSUFWTERRQWdCU0VNSUFRaENpQURJUThNQVFzZ0FDQVJJQUlnQXlBRUlBVWdDaUFKUVFGcUlnd2dDaEFNSUFBZ0JDQUZiR29nRVNBS0lBeHNhaUFDSUFNZ0JDQUZJQW9nRENBS0VBd2dFU0VBUVFBaEFnc0NRQ0FKUVFGMklnVkZEUUFnQ0VFQmRpSUVSUTBBUVJBZ0NHc2hFMEVJSUFkcklRdEJDQ0FHYXlFTklBcEJBWFFpRGlBSWF5RVVJQUFnQW1vaUZpQUtJQTlzYWlFQ0lBRWhBQ0FGSVJVRFFDQUNJQTVxTFFBQUlBZHNJQXNnQWlBS2FpMEFBQ0lEYkdvaENDQURJQWRzSUFzZ0FpMEFBR3hxSVFrZ0JDRURBMEFnQWtFQmFpSVFJQTVxTFFBQUlSSWdBQ0FKSUExc0lBb2dFR290QUFBaUNTQUhiQ0FMSUFJdEFBRnNhaUlRSUFac2FrRWdha0VHZGpvQUFDQUFJQWdnRFd3Z0J5QVNiQ0FKSUF0c2FpSUlJQVpzYWtFZ2FrRUdkam9BQ0NBQ0xRQUNJUWtnQWtFQ2FpSUNJQTVxTFFBQUlSSWdBQ0FOSUJCc0lBSWdDbW90QUFBaUVDQUhiQ0FKSUF0c2FpSUpJQVpzYWtFZ2FrRUdkam9BQVNBQUlBZ2dEV3dnQnlBU2JDQUxJQkJzYWlJSUlBWnNha0VnYWtFR2Rqb0FDU0FBUVFKcUlRQWdBMEYvYWlJRERRQUxJQUlnRkdvaEFpQUFJQk5xSVFBZ0ZVRi9haUlWRFFBTElBRkJRR3NoQUNBV0lBd2dEMm9nQ214cUlRSURRQ0FDSUE1cUxRQUFJQWRzSUFzZ0FpQUthaTBBQUNJQmJHb2hDQ0FCSUFkc0lBc2dBaTBBQUd4cUlRa2dCQ0VEQTBBZ0FrRUJhaUlCSUE1cUxRQUFJUXdnQUNBSklBMXNJQUVnQ21vdEFBQWlBU0FIYkNBTElBSXRBQUZzYWlJSklBWnNha0VnYWtFR2Rqb0FBQ0FBSUFnZ0RXd2dCeUFNYkNBQklBdHNhaUlCSUFac2FrRWdha0VHZGpvQUNDQUNMUUFDSVFnZ0FrRUNhaUlDSUE1cUxRQUFJUXdnQUNBSklBMXNJQUlnQ21vdEFBQWlEeUFIYkNBSUlBdHNhaUlKSUFac2FrRWdha0VHZGpvQUFTQUFJQUVnRFd3Z0J5QU1iQ0FMSUE5c2FpSUlJQVpzYWtFZ2FrRUdkam9BQ1NBQVFRSnFJUUFnQTBGL2FpSUREUUFMSUFJZ0ZHb2hBaUFBSUJOcUlRQWdCVUYvYWlJRkRRQUxDeUFSUWJBQmFpUUFDLzlFQVVGL0l3QkJzQUZySWdNa0FDQUFLQUlJSWdRRVFDQUFLQUlFSWg5QkEzUWhGaUFFSUI5c0lnUkJCblFoT3lBRVFRaDBJVHdnSDBFR2RDRTlJQjlCTUd3aFBpQWZRUVYwSVNVZ0gwRlFiQ0VyUVFBZ0gwRUVkQ0lhYXlJb1FRSjBJVDhnS0VFQmRDRXNJQU5CR0dvaElpQURRUXh5SVNNRFFBSkFJQUVvQWdnaUNVRUJSZzBBQWtBQ1FBSkFBa0FnQVNnQ3lBRWlBa1VFUUVFQklRWU1BUXRCQlNFR0lBbEJBa2NOQUVFRlFRRWdBU2dDQkNJSklBSW9BZ1JHR3lFR0lBRW9Bc3dCSWdRTkFVRUFJUVFNQXdzZ0FTZ0N6QUVpQkVVRVFFRUFJUVFNQXdzZ0NVRUNSdzBCSUFFb0FnUWhDUXNnQ1NBRUtBSUVSdzBCQ3lBR1FRSnlJUVlMQW44Z0JrRUNjU0l0QkVBQ1FDQUJLQUlBUVFWTkJFQWdCQ2dDQUVFR1NRMEJDeUFEUVFRMkFrQWdBMEVFTmdKSUlBTkJCRFlDT0NBRFFRUTJBakJCQVF3Q0MwRUNJUTlCQWlFSkFrQWdBUzhCSEEwQUlBUXZBVEFOQUVFQklRa2dBU2dDZENBRUtBSjhSdzBBSUFFdUFZUUJJQVF1QWF3QmF5SUZJQVZCSDNVaUJXb2dCWE5CQTBzTkFDQUJMZ0dHQVNBRUxnR3VBV3NpQ1NBSlFSOTFJZ2xxSUFselFRTkxJUWtMSUFNZ0NUWUNNQUpBSUFFdkFSNE5BQ0FFTHdFeURRQkJBU0VQSUFFb0FuUWdCQ2dDZkVjTkFDQUJMZ0dJQVNBRUxnR3dBV3NpQlNBRlFSOTFJZ1ZxSUFWelFRTkxEUUFnQVM0QmlnRWdCQzRCc2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFUEN5QURJQTgyQWpoQkFpRUZRUUloQ2dKQUlBRXZBU1FOQUNBRUx3RTREUUJCQVNFS0lBRW9BbmdnQkNnQ2dBRkhEUUFnQVM0QmxBRWdCQzRCdkFGcklnZ2dDRUVmZFNJSWFpQUljMEVEU3cwQUlBRXVBWllCSUFRdUFiNEJheUlJSUFoQkgzVWlDR29nQ0hOQkEwc2hDZ3NnQXlBS05nSkFBa0FnQVM4QkpnMEFJQVF2QVRvTkFFRUJJUVVnQVNnQ2VDQUVLQUtBQVVjTkFDQUJMZ0dZQVNBRUxnSEFBV3NpQ0NBSVFSOTFJZ2hxSUFoelFRTkxEUUFnQVM0Qm1nRWdCQzRCd2dGcklnUWdCRUVmZFNJRWFpQUVjMEVEU3lFRkN5QURJQVUyQWtnZ0NTQVBjaUFLY2lBRmNrRUFSd3dCQ3lBRFFRQTJBa0FnQTBFQU5nSklJQU5CQURZQ09DQURRUUEyQWpCQkFBc2hDUUpBQWtBQ1FBSkFJQVpCQkhFaUxnUkFBa0FnQVNnQ0FDSUdRUVZOQkVBZ0FpZ0NBRUVHU1EwQkN5QURRUVEyQW5RZ0EwRUVOZ0tVQVNBRFFRUTJBbFFnQTBFRU5nSTBRUUVoQ1F3Q0MwRUNJUTlCQWlFRUFrQWdBUzhCSEEwQUlBSXZBU1lOQUVFQklRUWdBU2dDZENBQ0tBSjRSdzBBSUFFdUFZUUJJQUl1QVpnQmF5SUZJQVZCSDNVaUJXb2dCWE5CQTBzTkFDQUJMZ0dHQVNBQ0xnR2FBV3NpQkNBRVFSOTFJZ1JxSUFSelFRTkxJUVFMSUFNZ0JEWUNOQUpBSUFFdkFTQU5BQ0FDTHdFcURRQkJBU0VQSUFFb0FuUWdBaWdDZUVjTkFDQUJMZ0dNQVNBQ0xnR2dBV3NpQlNBRlFSOTFJZ1ZxSUFWelFRTkxEUUFnQVM0QmpnRWdBaTRCb2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFUEN5QURJQTgyQWxSQkFpRUZRUUloQ2dKQUlBRXZBU3dOQUNBQ0x3RTJEUUJCQVNFS0lBRW9BbndnQWlnQ2dBRkhEUUFnQVM0QnBBRWdBaTRCdUFGcklnZ2dDRUVmZFNJSWFpQUljMEVEU3cwQUlBRXVBYVlCSUFJdUFib0JheUlJSUFoQkgzVWlDR29nQ0hOQkEwc2hDZ3NnQXlBS05nSjBBa0FnQVM4Qk1BMEFJQUl2QVRvTkFFRUJJUVVnQVNnQ2ZDQUNLQUtBQVVjTkFDQUJMZ0dzQVNBQ0xnSEFBV3NpQ0NBSVFSOTFJZ2hxSUFoelFRTkxEUUFnQVM0QnJnRWdBaTRCd2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFRkN5QURJQVUyQXBRQklBbEZEUUpCQVNFSkRBTUxJQU5CQURZQ2RDQURRUUEyQXBRQklBTkJBRFlDVkNBRFFRQTJBalFnQVNnQ0FDRUdDeUFHUVFaSkRRRWdBMEVETmdLZ0FTQURRb09BZ0lBd053S2tBU0FEUVFNMkFwQUJJQU5CQXpZQ2NDQURRUU0yQXF3QklBTkNnNENBZ0RBM0E1Z0JJQU5DZzRDQWdEQTNBNGdCSUFOQ2c0Q0FnREEzQTRBQklBTkNnNENBZ0RBM0EzZ2dBMEtEZ0lDQU1EY0RhQ0FEUW9PQWdJQXdOd05nSUFOQ2c0Q0FnREEzQTFnZ0EwS0RnSUNBTURjQ1RDQURRUU0yQWtRZ0EwRUROZ0k4REFJTElBUWdEM0lnQ25JZ0JYSkJBRWNoQ1FzQ1FBSi9JQVpCQTAwRVFDQUdRUUowUVl3MWFpZ0NBQXdCQzBFRUMwRUJSZ1JBSUFFZ0EwRXdhaEJFSUFNb0Fxd0JJUWNnQXlnQ3BBRWhEaUFES0FLY0FTRVFJQU1vQW93QklSa2dBeWdDaEFFaEJpQURLQUo4SVJjZ0F5Z0NiQ0VJSUFNb0FtUWhCQ0FES0FKY0lSUWdBeWdDVENFTUlBTW9Ba1FoQWlBREtBSThJUkVnQXlnQ3FBRWhIQ0FES0FLZ0FTRW1JQU1vQXBnQklRMGdBeWdDa0FFaEhTQURLQUtJQVNFU0lBTW9Bb0FCSVJVZ0F5Z0NlQ0ViSUFNb0FuQWhFeUFES0FKb0lRb2dBeWdDWUNFUElBTW9BbGdoQlNBREtBSlFJU2NNQVFzZ0F3Si9Ba0FnQXdKL0FrQUNRQ0FCS0FJQVFYNXFJZ1JCQVUwRVFDQUVRUUZyQkVBZ0F3Si9Ba0FnQVM4QklDSUVEUUFnQVM4QkhBMEFRUUFNQVF0QkFnc2lKellDVUNBREFuOENRQ0FCTHdFaUlnY05BQ0FCTHdFZURRQkJBQXdCQzBFQ0N5SUZOZ0pZSUFNQ2Z3SkFJQUV2QVNnaUJnMEFJQUV2QVNRTkFFRUFEQUVMUVFJTElnODJBbUFnQXdKL0FrQWdBUzhCS2lJT0RRQWdBUzhCSmcwQVFRQU1BUXRCQWdzaUNqWUNhQ0FEQW44Q1FDQUJMd0V3SWg0TkFDQUJMd0VzRFFCQkFBd0JDMEVDQ3lJZE5nS1FBU0FEQW44Q1FDQUJMd0V5SWhBTkFDQUJMd0V1RFFCQkFBd0JDMEVDQ3lJTk5nS1lBU0FEQW44Q1FDQUJMd0U0SWdzTkFDQUJMd0UwRFFCQkFBd0JDMEVDQ3lJbU5nS2dBU0FEQW44Q1FDQUJMd0U2SWhnTkFDQUJMd0UyRFFCQkFBd0JDMEVDQ3lJY05nS29BVUVDSVJ0QkFpRVRBa0FnQkNBQkx3RXNJaGR5RFFCQkFTRVRJQUV1QWFRQklBRXVBWXdCYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBQkxnR21BU0FCTGdHT0FXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWdBU2dDZkNBQktBSjBSeUVUQ3lBRElCTTJBbkFDUUNBSElBRXZBUzRpSUhJTkFFRUJJUnNnQVM0QnFBRWdBUzRCa0FGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRXVBYW9CSUFFdUFaSUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQ0FCS0FKOElBRW9BblJISVJzTElBTWdHellDZUVFQ0lSSkJBaUVWQWtBZ0JpQUJMd0UwSWhseURRQkJBU0VWSUFFdUFiUUJJQUV1QVp3QmF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTkFDQUJMZ0cyQVNBQkxnR2VBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVNnQ2dBRWdBU2dDZUVjaEZRc2dBeUFWTmdLQUFRSkFJQTRnQVM4Qk5pSWhjZzBBUVFFaEVpQUJMZ0c0QVNBQkxnR2dBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVM0QnVnRWdBUzRCb2dGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRW9Bb0FCSUFFb0FuaEhJUklMSUFNZ0VqWUNpQUVnQVM4QkhnMENJQUV2QVJ3RVFFRUNJUkVnQTBFQ05nSThJQUV2QVNRaUNBMEdRUUFoREVFQURBY0xRUUFoRVNBRFFRQTJBanhCQUNFTVFRQWdBUzhCSkNJSVJRMEdHZ3dGQ3lBREFuOENRQ0FCTHdFZ0lnSU5BQ0FCTHdFY0RRQkJBQXdCQzBFQ0N5SW5OZ0pRSUFNQ2Z3SkFJQUV2QVNJaUJnMEFJQUV2QVI0TkFFRUFEQUVMUVFJTElnVTJBbGdnQXdKL0FrQWdBUzhCS0NJT0RRQWdBUzhCSkEwQVFRQU1BUXRCQWdzaUR6WUNZQ0FEQW44Q1FDQUJMd0VxSWdnTkFDQUJMd0VtRFFCQkFBd0JDMEVDQ3lJS05nSm9JQU1nQWlBQkx3RXNJaGR5UVFCSFFRRjBJaE0yQW5BZ0F5QUdJQUV2QVM0aUMzSkJBRWRCQVhRaUd6WUNlQ0FESUE0Z0FTOEJOQ0llY2tFQVIwRUJkQ0lWTmdLQUFTQURJQWdnQVM4Qk5pSVpja0VBUjBFQmRDSVNOZ0tJQVNBRElBRXZBVEFpRUNBWGNrRUFSMEVCZENJZE5nS1FBU0FESUFFdkFUSWlJQ0FMY2tFQVIwRUJkQ0lOTmdLWUFTQURJQUV2QVRnaUlTQWVja0VBUjBFQmRDSW1OZ0tnQVNBRElBRXZBVG9pQnlBWmNrRUFSMEVCZENJY05nS29BU0FEQW44Q1FDQUJMd0VlSWlRTkFDQUJMd0VjRFFCQkFBd0JDMEVDQ3lJUk5nSThJQUV2QVNZRVFDQUJMd0VrSVJnTUF3c2dBUzhCSkNJWURRSkJBQ0VZUVFBTUF3c2dBUzRCaGdFaEZDQUJMZ0dPQVNFRVFRSWhCU0FEQW45QkFpQUJMd0VjSWhFZ0FTOEJJQ0l2Y2cwQUdrRUJJQUV1QVl3QklBRXVBWVFCYXlJR0lBWkJIM1VpQm1vZ0JuTkJBMHNOQUJvZ0JDQVVheUlHSUFaQkgzVWlCbW9nQm5OQkEwc0xJaWMyQWxBZ0FTNEJpZ0VoQ0NBQkxnR1NBU0VHQWtBZ0FTOEJIaUl3SUFFdkFTSWlFSElOQUVFQklRVWdBUzRCa0FFZ0FTNEJpQUZySWdJZ0FrRWZkU0lDYWlBQ2MwRURTdzBBSUFZZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6UVFOTElRVUxJQU1nQlRZQ1dDQUJMZ0dXQVNFTUlBRXVBWjRCSVFkQkFpRUtJQU1DZjBFQ0lBRXZBU1FpTVNBQkx3RW9JaGR5RFFBYVFRRWdBUzRCbkFFZ0FTNEJsQUZySWdJZ0FrRWZkU0lDYWlBQ2MwRURTdzBBR2lBSElBeHJJZ0lnQWtFZmRTSUNhaUFDYzBFRFN3c2lEellDWUNBQkxnR2FBU0V5SUFFdUFhSUJJUXNDUUNBQkx3RW1Ja0FnQVM4QktpSXpjZzBBUVFFaENpQUJMZ0dnQVNBQkxnR1lBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQ3lBeWF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzaENnc2dBeUFLTmdKb0lBRXVBYVlCSVI1QkFpRWJRUUloRXdKQUlDOGdBUzhCTENJMGNnMEFRUUVoRXlBQkxnR2tBU0FCTGdHTUFXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWdIaUFFYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBQktBSjhJQUVvQW5SSElSTUxJQU1nRXpZQ2NDQUJMZ0dxQVNFT0FrQWdFQ0FCTHdFdUloaHlEUUJCQVNFYklBRXVBYWdCSUFFdUFaQUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQ0FPSUFacklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRW9BbndnQVNnQ2RFY2hHd3NnQXlBYk5nSjRJQUV1QWJZQklSbEJBaUVTUVFJaEZRSkFJQmNnQVM4Qk5DSWdjZzBBUVFFaEZTQUJMZ0cwQVNBQkxnR2NBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnR1NBSGF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTkFDQUJLQUtBQVNBQktBSjRSeUVWQ3lBRElCVTJBb0FCSUFFdUFib0JJU0VDUUNBeklBRXZBVFlpTlhJTkFFRUJJUklnQVM0QnVBRWdBUzRCb0FGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlDRWdDMnNpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVNnQ2dBRWdBU2dDZUVjaEVnc2dBeUFTTmdLSUFTQUJMZ0d1QVNFMlFRSWhEU0FEQW45QkFpQTBJQUV2QVRBaVFYSU5BQnBCQVNBQkxnR3NBU0FCTGdHa0FXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWFJRFlnSG1zaUFpQUNRUjkxSWdKcUlBSnpRUU5MQ3lJZE5nS1FBU0FCTGdHeUFTRWtBa0FnR0NBQkx3RXlJamR5RFFCQkFTRU5JQUV1QWJBQklBRXVBYWdCYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBa0lBNXJJZ0lnQWtFZmRTSUNhaUFDYzBFRFN5RU5DeUFESUEwMkFwZ0JJQUV1QWI0QklTbEJBaUVjSUFNQ2YwRUNJQ0FnQVM4Qk9DSTRjZzBBR2tFQklBRXVBYndCSUFFdUFiUUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQm9nS1NBWmF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTElpWTJBcUFCSUFFdUFjSUJJVGtDUUNBMUlBRXZBVG9pUW5JTkFFRUJJUndnQVM0QndBRWdBUzRCdUFGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlEa2dJV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxJUndMSUFNZ0hEWUNxQUZCQWlFQ0lBTUNmMEVDSUJFZ01ISU5BQnBCQVNBQkxnR0lBU0FCTGdHRUFXc2lFU0FSUVI5MUloRnFJQkZ6UVFOTERRQWFJQWdnRkdzaUZDQVVRUjkxSWhScUlCUnpRUU5MQ3lJUk5nSThBa0FnTUNBeGNnMEFRUUVoQWlBQkxnR1VBU0FCTGdHSUFXc2lGQ0FVUVI5MUloUnFJQlJ6UVFOTERRQWdEQ0FJYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUNBQktBSjRJQUVvQW5SSElRSUxJQU1nQWpZQ1JFRUNJUlFnQXdKL1FRSWdNU0JBY2cwQUdrRUJJQUV1QVpnQklBRXVBWlFCYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUJvZ01pQU1heUlJSUFoQkgzVWlDR29nQ0hOQkEwc0xJZ3cyQWt3Q1FDQVFJQzl5RFFCQkFTRVVJQUV1QVpBQklBRXVBWXdCYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUNBR0lBUnJJZ1FnQkVFZmRTSUVhaUFFYzBFRFN5RVVDeUFESUJRMkFseEJBaUVJUVFJaEJBSkFJQkFnRjNJTkFFRUJJUVFnQVM0Qm5BRWdBUzRCa0FGckloQWdFRUVmZFNJUWFpQVFjMEVEU3cwQUlBY2dCbXNpQmlBR1FSOTFJZ1pxSUFaelFRTkxEUUFnQVNnQ2VDQUJLQUowUnlFRUN5QURJQVEyQW1RQ1FDQVhJRE55RFFCQkFTRUlJQUV1QWFBQklBRXVBWndCYXlJR0lBWkJIM1VpQm1vZ0JuTkJBMHNOQUNBTElBZHJJZ1lnQmtFZmRTSUdhaUFHYzBFRFN5RUlDeUFESUFnMkFteEJBaUVHSUFNQ2YwRUNJQmdnTkhJTkFCcEJBU0FCTGdHb0FTQUJMZ0drQVdzaUJ5QUhRUjkxSWdkcUlBZHpRUU5MRFFBYUlBNGdIbXNpQnlBSFFSOTFJZ2RxSUFkelFRTkxDeUlYTmdKOEFrQWdHQ0FnY2cwQVFRRWhCaUFCTGdHMEFTQUJMZ0dvQVdzaUJ5QUhRUjkxSWdkcUlBZHpRUU5MRFFBZ0dTQU9heUlISUFkQkgzVWlCMm9nQjNOQkEwc05BQ0FCS0FLQUFTQUJLQUo4UnlFR0N5QURJQVkyQW9RQlFRSWhFQ0FEQW45QkFpQWdJRFZ5RFFBYVFRRWdBUzRCdUFFZ0FTNEJ0QUZySWdjZ0IwRWZkU0lIYWlBSGMwRURTdzBBR2lBaElCbHJJZ2NnQjBFZmRTSUhhaUFIYzBFRFN3c2lHVFlDakFFQ1FDQTNJRUZ5RFFCQkFTRVFJQUV1QWJBQklBRXVBYXdCYXlJSElBZEJIM1VpQjJvZ0IzTkJBMHNOQUNBa0lEWnJJZ2NnQjBFZmRTSUhhaUFIYzBFRFN5RVFDeUFESUJBMkFwd0JRUUloQjBFQ0lRNENRQ0EzSURoeURRQkJBU0VPSUFFdUFid0JJQUV1QWJBQmF5SUxJQXRCSDNVaUMyb2dDM05CQTBzTkFDQXBJQ1JySWdzZ0MwRWZkU0lMYWlBTGMwRURTdzBBSUFFb0FvQUJJQUVvQW54SElRNExJQU1nRGpZQ3BBRUNRQ0E0SUVKeURRQkJBU0VISUFFdUFjQUJJQUV1QWJ3QmF5SUxJQXRCSDNVaUMyb2dDM05CQTBzTkFDQTVJQ2xySWdjZ0IwRWZkU0lIYWlBSGMwRURTeUVIQ3lBRElBYzJBcXdCREFVTFFRSWhFU0FEUVFJMkFqd2dBUzhCSkNFSURBSUxRUUlMSWd3MkFreEJBaUVFSUFOQkFpQUlRUUJIUVFGMElBNGJJZ2cyQW13Z0EwRUNJQVpCQUVkQkFYUWdBaHNpRkRZQ1hDQURJQWNnSVhKQkFFZEJBWFFpQnpZQ3JBRWdBeUFRSUNCeVFRQkhRUUYwSWhBMkFwd0JJQU1nR1NBZWNrRUFSMEVCZENJWk5nS01BU0FESUFzZ0YzSkJBRWRCQVhRaUZ6WUNmRUVDSVFJQ1FDQVlJQ1J5RFFCQkFTRUNJQUV1QVpRQklBRXVBWWdCYXlJWUlCaEJIM1VpR0dvZ0dITkJBMHNOQUNBQkxnR1dBU0FCTGdHS0FXc2lHQ0FZUVI5MUloaHFJQmh6UVFOTERRQWdBU2dDZUNBQktBSjBSeUVDQ3lBRElBSTJBa1FDUUNBR0lBNXlEUUJCQVNFRUlBRXVBWndCSUFFdUFaQUJheUlHSUFaQkgzVWlCbW9nQm5OQkEwc05BQ0FCTGdHZUFTQUJMZ0dTQVdzaUJpQUdRUjkxSWdacUlBWnpRUU5MRFFBZ0FTZ0NlQ0FCS0FKMFJ5RUVDeUFESUFRMkFtUkJBaUVPUVFJaEJnSkFJQXNnSG5JTkFFRUJJUVlnQVM0QnRBRWdBUzRCcUFGcklnc2dDMEVmZFNJTGFpQUxjMEVEU3cwQUlBRXVBYllCSUFFdUFhb0JheUlMSUF0QkgzVWlDMm9nQzNOQkEwc05BQ0FCS0FLQUFTQUJLQUo4UnlFR0N5QURJQVkyQW9RQkFrQWdJQ0FoY2cwQVFRRWhEaUFCTGdHOEFTQUJMZ0d3QVdzaUN5QUxRUjkxSWd0cUlBdHpRUU5MRFFBZ0FTNEJ2Z0VnQVM0QnNnRnJJZ3NnQzBFZmRTSUxhaUFMYzBFRFN3MEFJQUVvQW9BQklBRW9BbnhISVE0TElBTWdEallDcEFFTUFnc2dDQ0VNUVFJTElnSTJBa1FnQXlBQkx3RW1JQXhCLy84RGNYSkJBRWRCQVhRaUREWUNUQ0FEQW44Q1FDQUhSUVJBSUFRRVFFRUNJUlFnQTBFQ05nSmNJQVlOQWtFQURBTUxRUUFoRkNBRFFRQTJBbHhCQUNBR1JRMENHZ3dCQzBFQ0lSUWdBMEVDTmdKY0MwRUNDeUlFTmdKa0lBTkJBaUFPUVFCSFFRRjBJQVliSWdnMkFtd2dBd0ovQWtBZ0lFVUVRQ0FYQkVCQkFpRVhJQU5CQWpZQ2ZDQVpEUUpCQUF3REMwRUFJUmNnQTBFQU5nSjhRUUFnR1VVTkFob01BUXRCQWlFWElBTkJBallDZkF0QkFnc2lCallDaEFFZ0F5QUxJQmh5UVFCSFFRRjBJZ2MyQXF3QklBTWdDeUFRY2tFQVIwRUJkQ0lPTmdLa0FTQURRUUlnRUVFQVIwRUJkQ0FlR3lJUU5nS2NBU0FESUJrZ0lYSkJBRWRCQVhRaUdUWUNqQUVMSUFrZ0ozSWdCWElnRDNJZ0NuSWdFM0lnRzNJZ0ZYSWdFbklnSFhJZ0RYSWdKbklnSEhJZ0VYSWdBbklnREhJZ0ZISWdCSElnQ0hJZ0YzSWdCbklnR1hJZ0VISWdEbklnQjNKRkRRRUxJQUVvQWd3aENTQURJQUVvQWhBaUJTQUJLQUlVSWdScUlnWkJNeUFHUVROSUd5SUdRUUFnQmtFQVNodEIwQmRxTFFBQUlnWTJBaUFnQXlBRUlBbHFJZ0pCTXlBQ1FUTklHeUlDUVFBZ0FrRUFTaHNpQ0VHUUYyb3RBQUFpQWpZQ0hDQURJQWhCQTJ4QmtCaHFJZ2cyQWhnQ1FDQXRSUTBBSUFRZ0FTZ0N6QUVvQWhRaUIwY0VRQ0FESUFRZ0IycEJBV3BCQVhZaUJ5QUZhaUlOUVRNZ0RVRXpTQnNpRFVFQUlBMUJBRW9iUWRBWGFpMEFBRFlDQ0NBRElBY2dDV29pQjBFeklBZEJNMGdiSWdkQkFDQUhRUUJLR3lJSFFaQVhhaTBBQURZQ0JDQURJQWRCQTJ4QmtCaHFOZ0lBREFFTElBTWdCallDQ0NBRElBSTJBZ1FnQXlBSU5nSUFDd0pBSUM1RkRRQWdCQ0FCS0FMSUFTZ0NGQ0lIUndSQUlBTWdCQ0FIYWtFQmFrRUJkaUlFSUFWcUlnVkJNeUFGUVROSUd5SUZRUUFnQlVFQVNodEIwQmRxTFFBQU5nSVVJQU1nQkNBSmFpSUVRVE1nQkVFelNCc2lCRUVBSUFSQkFFb2JJZ1JCa0JkcUxRQUFOZ0lRSUFNZ0JFRURiRUdRR0dvMkFnd01BUXNnQXlBR05nSVVJQU1nQWpZQ0VDQURJQWcyQWd3TElBQW9BZ0FnSHlBNmJDSVVRUWgwYWlBcVFRUjBhaUVKUVFBaEFrRURJUVFnQTBFd2FpRUdBMEFnQmlnQ0JDSUZCRUFnQ1NBRklDTWdHaEFaQ3lBR0tBSU1JZ1VFUUNBSlFRUnFJQVVnSWlBYUVCa0xJQVlvQWhRaUJRUkFJQWxCQ0dvZ0JTQWlJQm9RR1FzZ0JpZ0NIQ0lGQkVBZ0NVRU1haUFGSUNJZ0doQVpDeUFFSVFnQ1FBSkFBa0FnQmlnQ0FDSUVJQVlvQWdnaUQwY05BQ0FFSUFZb0FoQkhEUUFnQkNBR0tBSVlSdzBBSUFSRkRRSWdBeUFDUVF4c2FpSUZLQUlJSVF3Z0JTZ0NCQ0ViSUFSQkJFa05BU0FiUVFKMlFRSnFJUkJCRUNFUElBa2hCQU5BQWtBZ0JDQW9haUlDTFFBQUlnb2dCQzBBQUNJT2F5SUZJQVZCSDNVaUJXb2dCWE1pQnlBYlR3MEFJQVFnTEdvaUVTMEFBQ0lGSUFwcklnMGdEVUVmZFNJTmFpQU5jeUFNVHcwQUlBUWdHbW9pSEMwQUFDSVNJQTVySWcwZ0RVRWZkU0lOYWlBTmN5QU1UdzBBQWtBZ0J5QVFTUVJBSUFRZ0pXb2lGeTBBQUNFVkFuOGdCQ0FyYWlJTkxRQUFJaE1nQ21zaUJ5QUhRUjkxSWdkcUlBZHpJQXhKQkVCQkF5RWRJQUlnRWlBS0lBNXFJQVZxSWdKQkFYUnFJQk5xUVFScVFRTjJPZ0FBSUJFZ0FpQVRha0VDYWtFQ2Rqb0FBQ0FDUVFScUlSRWdCQ0EvYWkwQUFDRUhJQk5CQTJ3TUFRc2dDaUFTYWlFUklBVWhCMEVDSVIwZ0FpRU5RUUlMSVFJZ0RTQUNJQkZxSUFkQkFYUnFJQjEyT2dBQUlCVWdEbXNpQWlBQ1FSOTFJZ0pxSUFKeklBeFBEUUVnQkNBRklBb2dFbW9nRG1vaUFrRUJkR29nRldwQkJHcEJBM1k2QUFBZ0hDQUNJQlZxUVFKcVFRSjJPZ0FBSUJjZ0FpQVZRUU5zYWlBRUlENXFMUUFBUVFGMGFrRUVha0VEZGpvQUFBd0NDeUFDSUFvZ0Vtb2dCVUVCZEdwQkFtcEJBblk2QUFBTElBUWdCU0FPYWlBU1FRRjBha0VDYWtFQ2Rqb0FBQXNnQkVFQmFpRUVJQTlCZjJvaUR3MEFDd3dDQ3dKL0lBUUVRQ0FKSUFRZ0F5QUNRUXhzYWlBYUVCZ2dCaWdDQ0NFUEN5QVBDd1JBSUFsQkJHb2dEeUFESUFKQkRHeHFJQm9RR0FzZ0JpZ0NFQ0lFQkVBZ0NVRUlhaUFFSUFNZ0FrRU1iR29nR2hBWUN5QUdLQUlZSWdSRkRRRWdDVUVNYWlBRUlBTWdBa0VNYkdvZ0doQVlEQUVMSUFRZ0JTZ0NBR3BCZjJvdEFBQWlBa0VCYWlFSFFRQWdBbXNoRGtFUUlROGdDU0VFQTBBQ1FDQUVJQ2hxSWhNdEFBQWlEU0FFTFFBQUlncHJJZ1VnQlVFZmRTSUZhaUFGY3lBYlR3MEFJQVFnTEdvaUVTMEFBQ0lTSUExcklnVWdCVUVmZFNJRmFpQUZjeUFNVHcwQUlBUWdHbW9pRUMwQUFDSVZJQXBySWdVZ0JVRWZkU0lGYWlBRmN5QU1UdzBBSUFJaEJTQUVJQ3RxTFFBQUlod2dEV3NpSFNBZFFSOTFJaDFxSUIxeklBeEpCRUFnRVNBU0lBNGdBaUFLSUExcVFRRnFRUUYySUJKQkFYUnJJQnhxUVFGMUlnVWdCU0FDU2hzZ0JTQU9TQnRxT2dBQUlBY2hCUXNnRXlBTkFuOGdCQ0FsYWkwQUFDSVRJQXBySWhFZ0VVRWZkU0lSYWlBUmN5QU1TUVJBSUJBZ0ZTQU9JQUlnQ2lBTmFrRUJha0VCZGlBVlFRRjBheUFUYWtFQmRTSVRJQk1nQWtvYklCTWdEa2diYWpvQUFDQUZRUUZxSVFVTFFRQWdCV3NpRXdzZ0JTQVNJQlZySUFvZ0RXdEJBblJxUVFScVFRTjFJaElnRWlBRlNoc2dFaUFUU0JzaUJXcEJzQzVxTFFBQU9nQUFJQVFnQ2lBRmEwR3dMbW90QUFBNkFBQUxJQVJCQVdvaEJDQVBRWDlxSWc4TkFBc0xJQWhCZjJvaEJDQUdRU0JxSVFZZ0NTQTlhaUVKUVFJaEFpQUlEUUFMSUFFb0Fnd2hCQ0FESUFFb0FoQWlCU0FCS0FJVUlnWWdBU2dDR0NJQ2FpSUpRVE1nQ1VFelNCc2lDVUVBSUFsQkFFb2JRUUowUWVBOWFpZ0NBQ0lKYWlJSVFUTWdDRUV6U0JzaUNFRUFJQWhCQUVvYlFkQVhhaTBBQUNJSU5nSWdJQU1nQkNBSmFpSUhRVE1nQjBFelNCc2lCMEVBSUFkQkFFb2JJZzFCa0JkcUxRQUFJZ2MyQWh3Z0F5QU5RUU5zUVpBWWFpSU5OZ0lZQWtBZ0xVVU5BQ0FHSUFFb0Fzd0JLQUlVSWd4SEJFQWdBeUFKSUFJZ0RHb2lERUV6SUF4Qk0wZ2JJZ3hCQUNBTVFRQktHMEVDZEVIZ1BXb29BZ0JxUVFGcVFRRjJJZ3dnQldvaUQwRXpJQTlCTTBnYklnOUJBQ0FQUVFCS0cwSFFGMm90QUFBMkFnZ2dBeUFFSUF4cUlneEJNeUFNUVROSUd5SU1RUUFnREVFQVNoc2lERUdRRjJvdEFBQTJBZ1FnQXlBTVFRTnNRWkFZYWpZQ0FBd0JDeUFESUFnMkFnZ2dBeUFITmdJRUlBTWdEVFlDQUFzQ1FDQXVSUTBBSUFZZ0FTZ0N5QUVvQWhRaURFY0VRQ0FESUFVZ0NTQUNJQXhxSWdaQk15QUdRVE5JR3lJR1FRQWdCa0VBU2h0QkFuUkI0RDFxS0FJQWFrRUJha0VCZGlJSmFpSUZRVE1nQlVFelNCc2lCVUVBSUFWQkFFb2JRZEFYYWkwQUFEWUNGQ0FESUFRZ0NXb2lCRUV6SUFSQk0wZ2JJZ1JCQUNBRVFRQktHeUlFUVpBWGFpMEFBRFlDRUNBRElBUkJBMnhCa0JocU5nSU1EQUVMSUFNZ0NEWUNGQ0FESUFjMkFoQWdBeUFOTmdJTUN5QUFLQUlBSUR4cUlCUkJCblJxSUNwQkEzUnFJZ2tnTzJvaEJFRUFJUW9nQTBFd2FpRUdRUUFoQWdOQUlBWW9BZ1FpQlFSQUlBa2dCU0FqSUJZUUVDQUVJQVlvQWdRZ0l5QVdFQkFMSUFZb0FpUWlCUVJBSUFrZ0dtb2dCU0FqSUJZUUVDQUVJQnBxSUFZb0FpUWdJeUFXRUJBTElBWW9BaFFpQlFSQUlBbEJCR29nQlNBaUlCWVFFQ0FFUVFScUlBWW9BaFFnSWlBV0VCQUxJQVlvQWpRaUJRUkFJQWtnR21wQkJHb2dCU0FpSUJZUUVDQUVJQnBxUVFScUlBWW9BalFnSWlBV0VCQUxJQUloQlFKQUFrQWdCaWdDQUNJQ0lBWW9BZ2dpRDBjTkFDQUNJQVlvQWhCSERRQWdBaUFHS0FJWVJ3MEFJQUpGRFFFZ0NTQUNJQU1nQ2tFTWJHb2lBaUFXRUNzZ0JDQUdLQUlBSUFJZ0ZoQXJEQUVMQW44Z0FnUkFJQWtnQWlBRElBcEJER3hxSWdJZ0ZoQVNJQVFnQmlnQ0FDQUNJQllRRWlBR0tBSUlJUThMSUE4TEJFQWdDVUVDYWlBUElBTWdDa0VNYkdvaUFpQVdFQklnQkVFQ2FpQUdLQUlJSUFJZ0ZoQVNDeUFHS0FJUUlnSUVRQ0FKUVFScUlBSWdBeUFLUVF4c2FpSUNJQllRRWlBRVFRUnFJQVlvQWhBZ0FpQVdFQklMSUFZb0FoZ2lBa1VOQUNBSlFRWnFJQUlnQXlBS1FReHNhaUlDSUJZUUVpQUVRUVpxSUFZb0FoZ2dBaUFXRUJJTElBUWdKV29oQkNBSklDVnFJUWtnQmtGQWF5RUdRUUVoQWtFQ0lRb2dCVVVOQUFzTFFRQWdLa0VCYWlJRUlBUWdIMFlpQkJzaEtpQUJRZGdCYWlFQklBUWdPbW9pT2lBQUtBSUlTUTBBQ3dzZ0EwR3dBV29rQUF1Q0JRRUtmeU1BUVpBQmF5SUxKQUFDUUFKQUlBSkJBRWdOQUNBRFFRQklEUUFnQWlBSGFpQUVTdzBBSUFNZ0NHcEJBV29nQlVzTkFDQUZJUXdnQXlFT0RBRUxJQUFnQ3lBQ0lBTWdCQ0FGSUFjZ0NFRUJhaUlNSUFjUURDQUFJQVFnQld4cUlBc2dCeUFNYkdvZ0FpQURJQVFnQlNBSElBd2dCeEFNSUFzaEFDQUhJUVJCQUNFQ0N3SkFJQWhCQVhZaUJVVU5BQ0FIUVFGMklnTkZEUUJCRUNBSGF5RVFRUWdnQm1zaENTQUVRUUYwSWcwZ0Iyc2hFU0FBSUFKcUloSWdCQ0FPYkdvaEJ5QUJJUUlnQlNFSUEwQWdBeUVBQTBBZ0J5QU5haTBBQUNFS0lBSWdDU0FITFFBQWJDQUVJQWRxTFFBQUlnOGdCbXhxUVFOMFFTQnFRUVoyT2dBQUlBSWdDU0FQYkNBR0lBcHNha0VEZEVFZ2FrRUdkam9BQ0NBSFFRRnFJZ29nRFdvdEFBQWhEeUFDSUFrZ0J5MEFBV3dnQkNBS2FpMEFBQ0lLSUFac2FrRURkRUVnYWtFR2Rqb0FBU0FDSUFrZ0Ntd2dCaUFQYkdwQkEzUkJJR3BCQm5ZNkFBa2dBa0VDYWlFQ0lBZEJBbW9oQnlBQVFYOXFJZ0FOQUFzZ0J5QVJhaUVISUFJZ0VHb2hBaUFJUVg5cUlnZ05BQXNnQVVGQWF5RUNJQklnRENBT2FpQUViR29oQndOQUlBTWhBQU5BSUFjZ0RXb3RBQUFoQVNBQ0lBa2dCeTBBQUd3Z0JDQUhhaTBBQUNJSUlBWnNha0VEZEVFZ2FrRUdkam9BQUNBQ0lBZ2dDV3dnQVNBR2JHcEJBM1JCSUdwQkJuWTZBQWdnQjBFQmFpSUJJQTFxTFFBQUlRZ2dBaUFKSUFjdEFBRnNJQUVnQkdvdEFBQWlBU0FHYkdwQkEzUkJJR3BCQm5ZNkFBRWdBaUFCSUFsc0lBWWdDR3hxUVFOMFFTQnFRUVoyT2dBSklBSkJBbW9oQWlBSFFRSnFJUWNnQUVGL2FpSUFEUUFMSUFjZ0VXb2hCeUFDSUJCcUlRSWdCVUYvYWlJRkRRQUxDeUFMUVpBQmFpUUFDLzBFQVF0L0l3QkJrQUZySWd3a0FDQUhRUUZxSVFrQ1FBSkFJQUpCQUVnTkFDQURJQWhxSUFWTERRQWdBMEVBU0EwQUlBSWdDV29nQkVzTkFDQUVJUWtnQXlFTERBRUxJQUFnRENBQ0lBTWdCQ0FGSUFrZ0NDQUpFQXdnQUNBRUlBVnNhaUFNSUFnZ0NXeHFJQUlnQXlBRUlBVWdDU0FJSUFrUURDQU1JUUFnQ0NFRlFRQWhBZ3NDUUNBSVFRRjJJZ2hGRFFBZ0IwRUJkaUlFUlEwQVFSQWdCMnNoRGtFSUlBWnJJUW9nQ1VFQmRDQUhheUVQSUFBZ0Ftb2lFU0FKSUF0c2FpRUNJQUVoQXlBSUlRQURRQ0FFSVFjRFFDQUNRUUZxSUFscUxRQUFJUkFnQWlBSmFpMEFBQ0VOSUFNZ0FpMEFBU0lTSUFac0lBb2dBaTBBQUd4cVFRTjBRU0JxUVFaMk9nQUFJQU1nQmlBUWJDQUtJQTFzYWtFRGRFRWdha0VHZGpvQUNDQUNMUUFDSVEwZ0FrRUNhaUlDSUFscUxRQUFJUk1nQXlBR0lBMXNJQW9nRW14cVFRTjBRU0JxUVFaMk9nQUJJQU1nQmlBVGJDQUtJQkJzYWtFRGRFRWdha0VHZGpvQUNTQURRUUpxSVFNZ0IwRi9haUlIRFFBTElBSWdEMm9oQWlBRElBNXFJUU1nQUVGL2FpSUFEUUFMSUFGQlFHc2hBeUFSSUFVZ0Myb2dDV3hxSVFJRFFDQUVJUWNEUUNBQ1FRRnFJQWxxTFFBQUlRQWdBaUFKYWkwQUFDRUJJQU1nQWkwQUFTSUZJQVpzSUFvZ0FpMEFBR3hxUVFOMFFTQnFRUVoyT2dBQUlBTWdBQ0FHYkNBQklBcHNha0VEZEVFZ2FrRUdkam9BQ0NBQ0xRQUNJUUVnQWtFQ2FpSUNJQWxxTFFBQUlRc2dBeUFCSUFac0lBVWdDbXhxUVFOMFFTQnFRUVoyT2dBQklBTWdCaUFMYkNBQUlBcHNha0VEZEVFZ2FrRUdkam9BQ1NBRFFRSnFJUU1nQjBGL2FpSUhEUUFMSUFJZ0Qyb2hBaUFESUE1cUlRTWdDRUYvYWlJSURRQUxDeUFNUVpBQmFpUUFDN2tIQVFWL0l3QkJFR3NpQkNRQUFrQWdBQ0FCUVFCQnlBQVFCeUlERUFJaUFRMEFRUUVoQVNBREtBSUFRZjhCU3cwQUlBQWdBMEVFYWhBQ0lnRU5BRUVCSVFFZ0F5Z0NCRUVmU3cwQUlBQkJBUkFERFFBZ0FFRUJFQU1pQWtGL1JnMEFJQU1nQWtFQlJqWUNDQ0FBSUFSQkRHb1FBaUlCRFFBZ0F5QUVLQUlNUVFGcUlnRTJBZ3dnQVVFSVN3UkFRUUVoQVF3QkN3SkFJQUZCQWtrTkFDQUFJQU5CRUdvUUFpSUJEUUVnQXlnQ0VDSUJRUVpMSWdJRVFFRUJJUUVNQWdzZ0FnMEFBa0FDUUFKQUFrQWdBVUVCYXc0R0JBRUNBZ0lEQUFzZ0F5QURLQUlNSWdGQkFuUVFDaUlDTmdJVUlBSkZCRUJCLy84RElRRU1CUXNnQVVVTkEwRUFJUUlEUUNBQUlBUkJER29RQWlJQkRRVWdBeWdDRkNBQ1FRSjBhaUFFS0FJTVFRRnFOZ0lBSUFKQkFXb2lBaUFES0FJTVNRMEFDd3dEQ3lBRElBTW9BZ3dpQWtFQ2RFRjhhaUlCRUFvaUJUWUNHQ0FESUFFUUNpSUdOZ0ljUWYvL0F5RUJJQVZGRFFNZ0JrVU5BeUFDUVFGR0RRSkJBQ0VDQTBBZ0FDQUVRUXhxRUFJaUFRMEVJQUpCQW5RaUJTQURLQUlZYWlBRUtBSU1OZ0lBSUFBZ0JFRU1haEFDSWdFTkJDQURLQUljSUFWcUlBUW9BZ3cyQWdBZ0FrRUJhaUlDSUFNb0FneEJmMnBKRFFBTERBSUxRUUVoQVNBQVFRRVFBeUlDUVg5R0RRSWdBeUFDUVFGR05nSWdJQUFnQkVFTWFoQUNJZ0VOQWlBRElBUW9BZ3hCQVdvMkFpUU1BUXNnQUNBRVFReHFFQUlpQVEwQklBTWdCQ2dDREVFQmFpSUJOZ0lvSUFNZ0FVRUNkQkFLSWdJMkFpd2dBa1VFUUVILy93TWhBUXdDQ3lBQlJRMEFJQU1vQWd4QkFuUkJyRHRxS0FJQUlRWkJBQ0VDQTBBZ0FDQUdFQU1oQlNBREtBSXNJQUpCQW5ScUlBVTJBZ0JCQVNFQklBVWdBeWdDREU4TkFpQUNRUUZxSWdJZ0F5Z0NLRWtOQUFzTElBQWdCRUVNYWhBQ0lnRU5BRUVCSVFFZ0JDZ0NEQ0lDUVI5TERRQWdBeUFDUVFGcU5nSXdJQUFnQkVFTWFoQUNJZ0VOQUVFQklRRWdCQ2dDREVFZlN3MEFJQUJCQVJBREJFQU1BUXNnQUVFQ0VBTkJBa3NFUUF3QkN5QUFJQVJCQ0dvUUJTSUJEUUFnQkNnQ0NFRWFhaUlCUVROTEJFQkJBU0VCREFFTElBTWdBVFlDTkNBQUlBUkJDR29RQlNJQkRRQWdCQ2dDQ0VFYWFrRXpTd1JBUVFFaEFRd0JDeUFBSUFSQkNHb1FCU0lCRFFCQkFTRUJJQVFvQWdnaUFrRU1ha0VZU3cwQUlBTWdBallDT0NBQVFRRVFBeUlDUVg5R0RRQWdBeUFDUVFGR05nSThJQUJCQVJBRElnSkJmMFlOQUNBRElBSkJBVVkyQWtBZ0FFRUJFQU1pQWtGL1JnMEFJQU1nQWtFQlJqWUNSQ0FBRUI5QkFDRUJDeUFFUVJCcUpBQWdBUXZxQlFFSmZ3SkFJQUlvQXB3Q1JRUkFEQUVMUVFFaEJnTkFBa0FDUUNBQ0lBVkJGR3hxS0FLZ0FpSUVRUVZMRFFBZ0JFRUJhdzRGQUFBQUFBTUJDeUFGUVFGcUlRVU1BUXNMSUFRaEJnc0Nmd0pBSUFFb0FoQWlCRUVCVFFSQUlBUkJBV3NFUUNBREtBSUFRUVZHQkVBZ0FFSUFOd0lBSUFJb0FoUWhCVUVBSVFRTUF3c2dBQ2dDQUNJRUlBSW9BaFFpQlUwTkFpQUVJQVZySUFFb0FoUWlCMEVCZGtrTkFpQUFLQUlFSUFkcURBTUxRUUFoQlFKL1FRQWdBeWdDQUVFRlJnMEFHaUFBS0FJTUlnY2dBQ2dDQ0NBQ0tBSU1UUTBBR2lBQktBSU1JQWRxQ3lFSFFRQWhCQUovSUFFb0FpUWlDQVJBSUFJb0Fnd2dCMm9oQlFzZ0JTQURLQUlFSWdwRklBVkJBRWR4YXlJSkN3UkFJQWxCZjJvaUF5QURJQWh1SWdzZ0NHeHJJUU1MSUFnRVFDQUJLQUlvSVF4QkFDRUZBMEFnRENBRlFRSjBhaWdDQUNBRWFpRUVJQVZCQVdvaUJTQUlSdzBBQ3dzQ1FDQUpSUVJBUVFBaEJBd0JDeUFFSUF0c0lRUWdBU2dDS0NFSVFRQWhCUU5BSUFnZ0JVRUNkR29vQWdBZ0JHb2hCQ0FGUVFGcUlnVWdBMDBOQUFzTElBcEZCRUFnQVNnQ0hDQUVhaUVFQ3lBR1JRUkFJQUlvQWlBaEF5QUJLQUlnSVFFZ0FpZ0NIQ0VHSUFBZ0J6WUNEQ0FBSUFJb0FndzJBZ2dnQmlBQklBTnFJZ0JCSDNVZ0FIRWdCR3BxRHdzZ0FFSUFOd0lJUVFBUEMwRUFJUVZCQUNFRUlBTW9BZ0JCQlVjRVFDQUFLQUlNSVFVZ0FDZ0NDQ0FDS0FJTUlnUkxCRUFnQVNnQ0RDQUZhaUVGQ3lBRUlBVnFRUUYwSUFNb0FnUkZheUVFQ3lBR1JRUkFJQUFnQlRZQ0RDQUFJQUlvQWd3MkFnZ2dCQThMSUFCQ0FEY0NDRUVBRHdzQ1FDQUZJQVJORFFBZ0JTQUVheUFCS0FJVUlnRkJBWFpORFFBZ0FDZ0NCQ0FCYXd3QkN5QUFLQUlFQ3lFRUlBTW9BZ1JGQkVBZ0JDQUZhaUFDS0FJWUlnQkJIM1VnQUhGcUR3c2dBQ0FFTmdJRUlBSW9BaGdoQVNBR0JFQWdBRUVBTmdJRUlBQkJBQ0FCYXlBQlFSOTFjVFlDQUVFQUR3c2dBQ0FGTmdJQUlBUWdCV29nQVVFZmRTQUJjV29MdkFFQkNIOGdBZ1JBSUFGQmYyb2hCMEVBSUFGclFkZ0JiQ0VJUVFFZ0FXdEIyQUZzSVFrZ0FVRi9jMEhZQVd3aENnTkFJQUFnQmtIWUFXeHFJZ01nQTBHb2ZtcEJBQ0FFR3pZQ3lBRWdBd0ovSUFWRkJFQWdBMEVBTmdMTUFVRUFEQUVMSUFNZ0F5QUlhallDekFFZ0F5QUpha0VBSUFRZ0Iwa2JDellDMEFFZ0F5QURJQXBxUVFBZ0JCdEJBQ0FGR3pZQzFBRkJBQ0FFUVFGcUlnTWdBU0FEUmlJREd5RUVJQU1nQldvaEJTQUdRUUZxSWdZZ0FrY05BQXNMQzNjQkFuOUJBU0VDQWtBZ0FFRUJFQU5CZjBZTkFDQUJJQUJCQWhBRE5nSUVJQUVnQUVFRkVBTWlBRFlDQUNBQVFYNXFRUU5KRFFBQ1FDQUFRUXhMRFFCQkFTQUFkQ0lEUWNBOGNVVUVRQ0FEUWFBRGNVVU5BU0FBUVFaR0RRSWdBU2dDQkEwQkRBSUxJQUVvQWdRTkFRdEJBQ0VDQ3lBQ0M1SVRBUVovSUFBZ0FTZ0NBQ0lOTmdJQUlBQWdBQ2dDeEFGQkFXbzJBc1FCSUFJZ0JSQWRBa0FDUUFKQUFrQUNRQ0FOUVI5R0JFQWdBRUVBTmdJVUlBQW9Bc1FCUVFGTERRRWdBRUVjYWlFSklBRkJ5QUpxSVFSQkZ5RUJJQWNoQUFOQUlBbEJFRHNCQUNBQUlBUW9BZ0E2QUFBZ0FDQUVLQUlFT2dBQklBQWdCQ2dDQ0RvQUFpQUFJQVFvQWd3NkFBTWdBQ0FFS0FJUU9nQUVJQUFnQkNnQ0ZEb0FCU0FBSUFRb0FoZzZBQVlnQUNBRUtBSWNPZ0FISUFBZ0JDZ0NJRG9BQ0NBQUlBUW9BaVE2QUFrZ0FDQUVLQUlvT2dBS0lBQWdCQ2dDTERvQUN5QUFJQVFvQWpBNkFBd2dBQ0FFS0FJME9nQU5JQUFnQkNnQ09Eb0FEaUFBSUFRb0FqdzZBQThnQVNJRFFYOXFJUUVnQ1VFQ2FpRUpJQUJCRUdvaEFDQUVRVUJySVFRZ0F3MEFDeUFDSUFjUUd3d0VDeUFBUVJ4cUlRa2dEUVJBSUFrZ0FTa0NrQUkzQWdBZ0NTQUJLUUcrQWpjQkxpQUpJQUVwQXJnQ053SW9JQWtnQVNrQ3NBSTNBaUFnQ1NBQktRS29BamNDR0NBSklBRXBBcUFDTndJUUlBa2dBU2tDbUFJM0FnZ2dCQ2dDQUNFS0FrQWdBU2dDQ0NJTFJRMEFJQVFnQ2lBTGFpSUtOZ0lBSUFRZ0NrRi9UQVIvSUFwQk5Hb0ZJQXBCTkVnTkFTQUtRVXhxQ3lJS05nSUFDeUFBSUFvMkFoUWdBVUhJRDJvaERDQUJRY2dDYWlFRUFrQUNRQ0FBS0FJQVFRWk5CRUFnQ1M4QkFFVU5BVUVCSVFnZ0JDQUtRUUFnRENnQ0FCQUdSUTBDREFnTElBQXZBVXdFUUNBQlFjZ09haUFLRURFTFFiQTBJUXBCRHlFSUEwQWdDQ0VMSUFRZ0FTQUtLQUlBUVFKMGFrSElEbW9vQWdBaUNEWUNBQUpBQWtBZ0NFVUVRQ0FKTHdFQVJRMEJDMEVCSVFnZ0JDQUFLQUlVUVFFZ0RDZ0NBQkFHUlEwQkRBb0xJQVJCLy8vL0J6WUNBQXNnQ2tFRWFpRUtJQXRCZjJvaENDQU1RUVJxSVF3Z0NVRUNhaUVKSUFSQlFHc2hCQ0FMRFFBTERBUUxJQVJCLy8vL0J6WUNBQXNnQVVHSUEyb2hCQUpBSUFBdkFSNEVRRUVCSVFnZ0JDQUFLQUlVUVFBZ0FVSE1EMm9vQWdBUUJrVU5BUXdIQ3lBRVFmLy8vd2MyQWdBTElBRkJ5QU5xSVFRQ1FDQUFMd0VnQkVCQkFTRUlJQVFnQUNnQ0ZFRUFJQUZCMEE5cUtBSUFFQVpGRFFFTUJ3c2dCRUgvLy84SE5nSUFDeUFCUVlnRWFpRUVBa0FnQUM4QklnUkFRUUVoQ0NBRUlBQW9BaFJCQUNBQlFkUVBhaWdDQUJBR1JRMEJEQWNMSUFSQi8vLy9CellDQUFzZ0FVSElCR29oQkFKQUlBQXZBU1FFUUVFQklRZ2dCQ0FBS0FJVVFRQWdBVUhZRDJvb0FnQVFCa1VOQVF3SEN5QUVRZi8vL3djMkFnQUxJQUZCaUFWcUlRUUNRQ0FBTHdFbUJFQkJBU0VJSUFRZ0FDZ0NGRUVBSUFGQjNBOXFLQUlBRUFaRkRRRU1Cd3NnQkVILy8vOEhOZ0lBQ3lBQlFjZ0ZhaUVFQWtBZ0FDOEJLQVJBUVFFaENDQUVJQUFvQWhSQkFDQUJRZUFQYWlnQ0FCQUdSUTBCREFjTElBUkIvLy8vQnpZQ0FBc2dBVUdJQm1vaEJBSkFJQUF2QVNvRVFFRUJJUWdnQkNBQUtBSVVRUUFnQVVIa0Qyb29BZ0FRQmtVTkFRd0hDeUFFUWYvLy93YzJBZ0FMSUFGQnlBWnFJUVFDUUNBQUx3RXNCRUJCQVNFSUlBUWdBQ2dDRkVFQUlBRkI2QTlxS0FJQUVBWkZEUUVNQndzZ0JFSC8vLzhITmdJQUN5QUJRWWdIYWlFRUFrQWdBQzhCTGdSQVFRRWhDQ0FFSUFBb0FoUkJBQ0FCUWV3UGFpZ0NBQkFHUlEwQkRBY0xJQVJCLy8vL0J6WUNBQXNnQVVISUIyb2hCQUpBSUFBdkFUQUVRRUVCSVFnZ0JDQUFLQUlVUVFBZ0FVSHdEMm9vQWdBUUJrVU5BUXdIQ3lBRVFmLy8vd2MyQWdBTElBRkJpQWhxSVFRQ1FDQUFMd0V5QkVCQkFTRUlJQVFnQUNnQ0ZFRUFJQUZCOUE5cUtBSUFFQVpGRFFFTUJ3c2dCRUgvLy84SE5nSUFDeUFCUWNnSWFpRUVBa0FnQUM4Qk5BUkFRUUVoQ0NBRUlBQW9BaFJCQUNBQlFmZ1BhaWdDQUJBR1JRMEJEQWNMSUFSQi8vLy9CellDQUFzZ0FVR0lDV29oQkFKQUlBQXZBVFlFUUVFQklRZ2dCQ0FBS0FJVVFRQWdBVUg4RDJvb0FnQVFCa1VOQVF3SEN5QUVRZi8vL3djMkFnQUxJQUZCeUFscUlRUUNRQ0FBTHdFNEJFQkJBU0VJSUFRZ0FDZ0NGRUVBSUFGQmdCQnFLQUlBRUFaRkRRRU1Cd3NnQkVILy8vOEhOZ0lBQ3lBQlFZZ0thaUVFQWtBZ0FDOEJPZ1JBUVFFaENDQUVJQUFvQWhSQkFDQUJRWVFRYWlnQ0FCQUdSUTBCREFjTElBUkIvLy8vQnpZQ0FBc2dBVUdJRUdvaERDQUJRY2dLYWlFRURBSUxJQWxDQURjQ0FDQUpRZ0EzQVM0Z0NVSUFOd0lvSUFsQ0FEY0NJQ0FKUWdBM0FoZ2dDVUlBTndJUUlBbENBRGNDQ0NBQUlBUW9BZ0EyQWhRTUFnc2dBRUtRZ01DQWdJS0FDRGNCSENBQVFwQ0F3SUNBZ29BSU53RkVJQUJDa0lEQWdJQ0NnQWczQVR3Z0FFS1FnTUNBZ0lLQUNEY0JOQ0FBUXBDQXdJQ0Fnb0FJTndFc0lBQkNrSURBZ0lDQ2dBZzNBU1JCQUE4TElBQW9BaGdnQUNnQ0ZHb2lDMEV6SUF0Qk0wZ2JJZ3RCQUNBTFFRQktHMEVDZEVIZ1BXb29BZ0FoQ1FKQUlBQXZBVTVGQkVBZ0FDOEJVRVVOQVFzZ0FVR0lEMm9nQ1JBd0N5QUVJQUZCaUE5cUtBSUFJZ3MyQWdBQ1FBSkFJQXRGQkVBZ0FDOEJQRVVOQVF0QkFTRUlJQVFnQ1VFQklBd29BZ0FRQmtVTkFRd0VDeUFFUWYvLy93YzJBZ0FMSUFRZ0FTZ0NqQThpQ3pZQ1FDQUVRVUJySVFvQ1FBSkFJQXRGQkVBZ0FDOEJQa1VOQVF0QkFTRUlJQW9nQ1VFQklBd29BZ1FRQmtVTkFRd0VDeUFLUWYvLy93YzJBZ0FMSUFRZ0FTZ0NrQThpQ3pZQ2dBRWdCRUdBQVdvaENnSkFBa0FnQzBVRVFDQUFRVUJyTHdFQVJRMEJDMEVCSVFnZ0NpQUpRUUVnRENnQ0NCQUdSUTBCREFRTElBcEIvLy8vQnpZQ0FBc2dCQ0FCS0FLVUR5SUxOZ0xBQVNBRVFjQUJhaUVLQWtBQ1FDQUxSUVJBSUFBdkFVSkZEUUVMUVFFaENDQUtJQWxCQVNBTUtBSU1FQVpGRFFFTUJBc2dDa0gvLy84SE5nSUFDeUFFSUFFb0FwZ1BJZ3MyQW9BQ0lBUkJnQUpxSVFvQ1FBSkFJQXRGQkVBZ0FDOEJSRVVOQVF0QkFTRUlJQW9nQ1VFQklBd29BaEFRQmtVTkFRd0VDeUFLUWYvLy93YzJBZ0FMSUFRZ0FTZ0NuQThpQ3pZQ3dBSWdCRUhBQW1vaENnSkFBa0FnQzBVRVFDQUFMd0ZHUlEwQkMwRUJJUWdnQ2lBSlFRRWdEQ2dDRkJBR1JRMEJEQVFMSUFwQi8vLy9CellDQUFzZ0JDQUJLQUtnRHlJTE5nS0FBeUFFUVlBRGFpRUtBa0FDUUNBTFJRUkFJQUF2QVVoRkRRRUxRUUVoQ0NBS0lBbEJBU0FNS0FJWUVBWkZEUUVNQkFzZ0NrSC8vLzhITmdJQUN5QUVJQUVvQXFRUElnczJBc0FESUFSQndBTnFJUVFDUUFKQUlBdEZCRUFnQUM4QlNrVU5BUXRCQVNFSUlBUWdDVUVCSUF3b0Fod1FCa1VOQVF3RUN5QUVRZi8vL3djMkFnQUxJQTFCQmtrTkFDQUFJQUVnQWlBRklBWWdCeEJXSWdoRkRRRU1BZ3NnQUNBQklBTWdCU0FDSUFjUVZ5SUlEUUVMUVFBaENBc2dDQXVXSFFFSGZ5TUFRUkJySWdja0FDQUJRUUJCcUJBUUJ5RUZJQUFnQjBFRWFoQUNJUUVnQnlnQ0JDRUlBa0FDUUFKQUlBTkJmbW9pQTBFRlN3MEFBa0FnQTBFQmF3NEVBUUVCQVFBTFFRRWhBeUFCRFFJZ0NFRUdhaUlHUVI5TkRRRU1BZ3RCQVNFRElBRU5BU0FJUVFGcUlnWkJIMHNOQVFzZ0JTQUdOZ0lBQWtBZ0JrRWZSZ1JBQTBBZ0FDZ0NDQVJBSUFCQkFSQURSUTBCREFRTEN5QUZRY2dDYWlFR0EwQWdCeUFBUVFnUUF5SUJOZ0lFSUFGQmYwWU5BeUFHSUFFMkFnQWdCa0VFYWlFR0lBbEJBV29pQ1VHQUEwY05BQXNNQVF0QkFpQUdRUVpISUFaQkJra2JJUW9DUUFKQUlBWkJCRWtOQUNBR1FRVkxEUUFnQUNBSFFReHFFQUlOQVNBSEtBSU1JZ0ZCQTBzTkFTQUZJQUUyQXJBQklBQWdCMEVNYWhBQ0RRRWdCeWdDRENJQlFRTkxEUUVnQlNBQk5nSzBBU0FBSUFkQkRHb1FBZzBCSUFjb0Fnd2lBVUVEU3cwQklBVWdBVFlDdUFFZ0FDQUhRUXhxRUFJTkFTQUhLQUlNSWdGQkEwc05BU0FGSUFFMkFyd0JBa0FnQkVFQ1NRMEFJQVpCQlVZTkFDQUFJQWRCREdvZ0JFRUNTeUlCRUJjTkFpQUhLQUlNSWdnZ0JFOE5BaUFGSUFnMkFzQUJJQUFnQjBFTWFpQUJFQmNOQWlBSEtBSU1JZ2dnQkU4TkFpQUZJQWcyQXNRQklBQWdCMEVNYWlBQkVCY05BaUFIS0FJTUlnZ2dCRThOQWlBRklBZzJBc2dCSUFBZ0IwRU1haUFCRUJjTkFpQUhLQUlNSWdFZ0JFOE5BaUFGSUFFMkFzd0JDeUFISUFVb0FyQUJJZ0ZCQWswRWZ5QUJRUUowUWZBMGFpZ0NBQVZCQXdzMkFneEJBQ0VHQTBBZ0FDQUhRUWhxRUFVaUF3MENJQVVnQmtFQ2RHb2lBU0FIS0FJSU93SFFBU0FBSUFkQkNHb1FCU0lERFFJZ0FTQUhLQUlJT3dIU0FTQUhJQWNvQWd3aUFVRi9hallDRENBR1FRRnFJUVlnQVEwQUN5QUhJQVVvQXJRQklnRkJBazBFZnlBQlFRSjBRZkEwYWlnQ0FBVkJBd3MyQWd4QkFDRUdBMEFnQUNBSFFRaHFFQVVpQXcwQ0lBVWdCa0VDZEdvaUFTQUhLQUlJT3dIZ0FTQUFJQWRCQ0dvUUJTSUREUUlnQVNBSEtBSUlPd0hpQVNBSElBY29BZ3dpQVVGL2FqWUNEQ0FHUVFGcUlRWWdBUTBBQ3lBSElBVW9BcmdCSWdGQkFrMEVmeUFCUVFKMFFmQTBhaWdDQUFWQkF3czJBZ3hCQUNFR0EwQWdBQ0FIUVFocUVBVWlBdzBDSUFVZ0JrRUNkR29pQVNBSEtBSUlPd0h3QVNBQUlBZEJDR29RQlNJRERRSWdBU0FIS0FJSU93SHlBU0FISUFjb0Fnd2lBVUYvYWpZQ0RDQUdRUUZxSVFZZ0FRMEFDeUFISUFVb0Fyd0JJZ0ZCQWswRWZ5QUJRUUowUWZBMGFpZ0NBQVZCQXdzMkFneEJBQ0VHQTBBZ0FDQUhRUWhxRUFVaUF3MENJQVVnQmtFQ2RHb2lBU0FIS0FJSU93R0FBaUFBSUFkQkNHb1FCU0lERFFJZ0FTQUhLQUlJT3dHQ0FpQUhJQWNvQWd3aUFVRi9hallDRENBR1FRRnFJUVpCQUNFRElBRU5BQXNNQVF0QkFDRURJQXBCQWtzTkFBSkFBbjhDUUFKQUFrQWdDa0VCYXc0Q0JBRUFDeUFIUVFBMkFnZ2dCU0FBRUE4aUFVRWZkallDRENBQlFRQk9EUUVnQVVFQmRDRUdRUUFNQWdzZ0JFRUNUd1JBUVFNaEFTQUdRUU5OQkVBZ0JrRUNkRUg4Tkdvb0FnQWhBUXNnQkVFQ1N5RUxRUUVoQXdOQUlBQWdCMEVNYWlBTEVCY05CU0FIS0FJTUlnZ2dCRThOQlNBRklBbEJBblJxSUFnMkFwQUJJQUVpQ0VGL2FpRUJJQWxCQVdvaENTQUlEUUFMQzBFRElRTWdCa0VEVFFSQUlBWkJBblJCL0RScUtBSUFJUU1MUVFBaEJnTkFJQU1oQVNBQUlBZEJDR29RQlNJRERRUWdCU0FHUVFKMGFpSUVJQWNvQWdnN0FhQUJJQUFnQjBFSWFoQUZJZ01OQkNBRUlBY29BZ2c3QWFJQklBRkJmMm9oQXlBR1FRRnFJUVlnQVEwQUMwRUFJUU1NQXdzZ0JTQUJRUngyTmdKTUlBRkJCSFFoQmtFQkN5RURJQVVnQmtFZmRqWUNFQ0FGSUFaQkFFZ0VmeUFHUVFGMEJTQUZJQVpCSEhZMkFsQWdBMEVCYWlFRElBWkJCSFFMSWdGQkgzWTJBaFFnQlNBQlFRQklCSDhnQVVFQmRBVWdCU0FCUVJ4Mk5nSlVJQU5CQVdvaEF5QUJRUVIwQ3lJQlFSOTJOZ0lZSUFVZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNXQ0FEUVFGcUlRTWdBVUVFZEFzaUFVRWZkallDSENBRklBRkJBRWdFZnlBQlFRRjBCU0FGSUFGQkhIWTJBbHdnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWlBZ0JTQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0pnSUFOQkFXb2hBeUFCUVFSMEN5SUJRUjkyTmdJa0lBVWdBVUVBU0FSL0lBRkJBWFFGSUFVZ0FVRWNkallDWkNBRFFRRnFJUU1nQVVFRWRBc2lBVUVmZGpZQ0tDQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0pvSUFOQkFXb2hBeUFCUVFSMEN5RUdBa0FnQUNBRFFRTnNRUWhxRUF0QmYwWU5BQ0FIUVFFMkFnZ2dCU0FBRUE4aUFVRWZkallDTEFKL0lBRkJBRWdFUUNBQlFRRjBJUVpCQUF3QkN5QUZJQUZCSEhZMkFtd2dBVUVFZENFR1FRRUxJUU1nQlNBR1FSOTJOZ0l3SUFVZ0JrRUFTQVIvSUFaQkFYUUZJQVVnQmtFY2RqWUNjQ0FEUVFGcUlRTWdCa0VFZEFzaUFVRWZkallDTkNBRklBRkJBRWdFZnlBQlFRRjBCU0FGSUFGQkhIWTJBblFnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWpnZ0JTQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0o0SUFOQkFXb2hBeUFCUVFSMEN5SUJRUjkyTmdJOElBVkJRR3NnQVVFQVNBUi9JQUZCQVhRRklBVWdBVUVjZGpZQ2ZDQURRUUZxSVFNZ0FVRUVkQXNpQVVFZmRqWUNBQ0FGSUFGQkFFZ0VmeUFCUVFGMEJTQUZJQUZCSEhZMkFvQUJJQU5CQVdvaEF5QUJRUVIwQ3lJQlFSOTJOZ0pFSUFVZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNoQUVnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWtnZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNpQUVnQTBFQmFpRURJQUZCQkhRTElRWWdBQ0FEUVFOc1FRaHFFQXRCZjBZTkFDQUhJQVkyQWd3Z0IwRUNOZ0lJREFFTElBY2dCallDREVFQklRTU1BUXRCQVNFRElBQWdCMEVNYWhBQ0RRQWdCeWdDRENJQlFRTkxEUUFnQlNBQk5nS01BVUVBSVFNTElBTU5BUUpBSUFwQkFVY0VRQ0FBSUFkQkJHb2dDa1VRTFNJRERRTWdCU0FIS0FJRUlnRTJBZ1FnQVVVTkFnd0JDeUFGSUFVb0FnQWlBVUY1YWlJRFFRSjBRWEJ4SWdSQlVHb2dCQ0FEUVF0TEcwRVBRUUFnQVVFU1N4dHlOZ0lFQzBFQklRTWdBQ0FIUVF4cUVBVU5BU0FIS0FJTUlnRkJHbXBCTTBzTkFTQUZJQUUyQWdnZ0JVR1FBbW9oQ0NBRktBSUVJUVFDUUFKQUlBVW9BZ0JCQjBrRVFFRUFJUWxCQXlFREEwQWdBeUVCSUFSQkFYRUVRQ0FJSUFsQkFuUnFRYmdOYWlBQUlBZ2dDVUVHZEdwQk9Hb2dBaUFKSUFnUURVRVFFQWtpQTBFUWRqWUNBQ0FEUVE5eERRUWdDQ0FKUVFGMGFpQURRUVIyUWY4QmNUc0JBQ0FJSUFsQkFYSWlCa0VDZEdwQnVBMXFJQUFnQ0NBR1FRWjBha0U0YWlBQ0lBWWdDQkFOUVJBUUNTSURRUkIyTmdJQUlBTkJEM0VOQkNBSUlBWkJBWFJxSUFOQkJIWkIvd0Z4T3dFQUlBZ2dDVUVDY2lJR1FRSjBha0c0RFdvZ0FDQUlJQVpCQm5ScVFUaHFJQUlnQmlBSUVBMUJFQkFKSWdOQkVIWTJBZ0FnQTBFUGNRMEVJQWdnQmtFQmRHb2dBMEVFZGtIL0FYRTdBUUFnQ0NBSlFRTnlJZ1pCQW5ScVFiZ05haUFBSUFnZ0JrRUdkR3BCT0dvZ0FpQUdJQWdRRFVFUUVBa2lBMEVRZGpZQ0FDQURRUTl4RFFRZ0JTQUdRUUYwYWlBRFFRUjJRZjhCY1RzQmtBSUxJQVJCQVhZaEJDQUJRWDlxSVFNZ0NVRUVhaUVKSUFFTkFBc01BUXRCQUNFSklBQWdCVUhJRG1vZ0FrRUFJQWdRRFVFUUVBa2lBMEVQY1EwQklBVWdBMEVFZGtIL0FYRTdBY0FDSUFWQmtBSnFJUVpCQXlFREEwQWdBeUVCSUFSQkFYRUVRQ0FHSUFsQkFuUnFRYmdOYWlBQUlBWWdDVUVHZEdwQlBHb2dBaUFKSUFnUURVRVBFQWtpQTBFUGRqWUNBQ0FEUVE5eERRTWdCaUFKUVFGMGFpQURRUVIyUWY4QmNUc0JBQ0FHSUFsQkFYSWlDa0VDZEdwQnVBMXFJQUFnQmlBS1FRWjBha0U4YWlBQ0lBb2dDQkFOUVE4UUNTSURRUTkyTmdJQUlBTkJEM0VOQXlBR0lBcEJBWFJxSUFOQkJIWkIvd0Z4T3dFQUlBWWdDVUVDY2lJS1FRSjBha0c0RFdvZ0FDQUdJQXBCQm5ScVFUeHFJQUlnQ2lBSUVBMUJEeEFKSWdOQkQzWTJBZ0FnQTBFUGNRMERJQVlnQ2tFQmRHb2dBMEVFZGtIL0FYRTdBUUFnQmlBSlFRTnlJZ3BCQW5ScVFiZ05haUFBSUFZZ0NrRUdkR3BCUEdvZ0FpQUtJQWdRRFVFUEVBa2lBMEVQZGpZQ0FDQURRUTl4RFFNZ0JTQUtRUUYwYWlBRFFRUjJRZjhCY1RzQmtBSUxJQVJCQVhZaEJDQUJRWDlxSVFNZ0NVRUVhaUVKSUFFTkFBc0xJQVJCQTNFRVFDQUFJQVZCaUE5cVFYOUJCQkFKSWdOQkQzRU5BU0FGSUFOQkJIWkIvd0Z4T3dIQ0FpQUFJQVZCbUE5cVFYOUJCQkFKSWdOQkQzRU5BU0FGSUFOQkJIWkIvd0Z4T3dIRUFndEJBQ0VESUFSQkFuRkZEUUFnQUNBRlFjd0thaUFDUVJBZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCaUJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0JzQUlnQUNBRlFZd0xhaUFDUVJFZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCakJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0JzZ0lnQUNBRlFjd0xhaUFDUVJJZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCa0JCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J0QUlnQUNBRlFZd01haUFDUVJNZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbEJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J0Z0lnQUNBRlFjd01haUFDUVJRZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbUJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J1QUlnQUNBRlFZd05haUFDUVJVZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbkJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J1Z0lnQUNBRlFjd05haUFDUVJZZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCb0JCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J2QUlnQUNBRlFZd09haUFDUVJjZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCcEJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J2Z0lMSUFBZ0FDZ0NDQ0FBS0FJRUlBQW9BZ0JyUVFOMGFqWUNFQ0FERFFFTFFRQWhBd3NnQjBFUWFpUUFJQU1McFJRQkRIOENmeUFBS0FMSUFTSUhCRUFnQUNnQ0JDQUhLQUlFUmd3QkMwRUFDeUVLQWtBZ0JrVU5BQ0FLUlEwQVFRQWdDa0VDSUFBb0FzZ0JLQUlBSWdkQkJrY2dCMEVHU1J0QkFrWWJJUW9MQW44Z0FDZ0N6QUVpQndSQUlBQW9BZ1FnQnlnQ0JFWU1BUXRCQUFzaEJ3SkFJQVpGRFFBZ0IwVU5BRUVBSUFkQkFpQUFLQUxNQVNnQ0FDSUhRUVpISUFkQkJra2JRUUpHR3lFSEN3Si9JQUFvQXRRQklna0VRQ0FBS0FJRUlBa29BZ1JHREFFTFFRQUxJUWtDUUNBR1JRMEFJQWxGRFFCQkFpQUFLQUxVQVNnQ0FDSUFRUVpISUFCQkJra2JRUUpISVFrTElBcEJBRWNnQjBFQVIzRWlEU0FKUVFCSGNTRU9JQVZCQWtzaEQwRVFJUXNEUUFKQUlBOUZCRUFDUUFKQUFrQWdCVUVCYXc0Q0FRSUFDeUFCQW44Z0RRUkFJQVF0QUFNZ0JDMEFBaUFFTFFBQklBUXRBQUFnQXkwQUJDQURMUUFESUFNdEFBRWdBeTBBQW1wcWFtcHFhbXBCQkdwQkEzWWhCaUFETFFBSUlBTXRBQWNnQXkwQUJTQURMUUFHYW1wcVFRSnFRUUoyREFFTElBY0VRQ0FETFFBRUlBTXRBQU1nQXkwQUFTQURMUUFDYW1wcVFRSnFRUUoySVFZZ0F5MEFDQ0FETFFBSElBTXRBQVVnQXkwQUJtcHFha0VDYWtFQ2Rnd0JDeUFLUlFSQVFZQUJJUVpCZ0FFTUFRc2dCQzBBQXlBRUxRQUNJQVF0QUFBZ0JDMEFBV3BxYWtFQ2FrRUNkaUlHQzBIL0FYRkJnWUtFQ0d3aUFEWUFIQ0FCSUFaQi93RnhRWUdDaEFoc0lnWTJBQmdnQVNBQU5nQVVJQUVnQmpZQUVDQUJJQUEyQUF3Z0FTQUdOZ0FJSUFFZ0FEWUFCQ0FCSUFZMkFBQUNmeUFLQkVBZ0JDMEFCeUFFTFFBR0lBUXRBQVVnQkMwQUJHcHFhaUlHUVFKcVFRSjJJZ0FnQjBVTkFSb2dBeTBBQ0NBRExRQUhJQU10QUFZZ0JpQURMUUFGYW1wcWFrRUVha0VEZGd3QkN5QUhSUVJBUVlBQklRQkJnQUVNQVFzZ0F5MEFCQ0FETFFBRElBTXRBQUVnQXkwQUFtcHFha0VDYWtFQ2RpRUFJQU10QUFnZ0F5MEFCeUFETFFBRklBTXRBQVpxYW1wQkFtcEJBbllMSVFZZ0FTQUFRZjhCY1VHQmdvUUliQ0lBTmdBZ0lBRWdCa0gvQVhGQmdZS0VDR3dpQmpZQVBDQUJJQUEyQURnZ0FTQUdOZ0EwSUFFZ0FEWUFNQ0FCSUFZMkFDd2dBU0FBTmdBb0lBRWdCallBSkF3REN5QUtSUVJBUVFFUEN5QUJJQVF0QUFBNkFBQWdBU0FFTFFBQU9nQUJJQUVnQkMwQUFEb0FBaUFCSUFRdEFBQTZBQU1nQVNBRUxRQUFPZ0FFSUFFZ0JDMEFBRG9BQlNBQklBUXRBQUE2QUFZZ0FTQUVMUUFBT2dBSElBRWdCQzBBQVRvQUNDQUJJQVF0QUFFNkFBa2dBU0FFTFFBQk9nQUtJQUVnQkMwQUFUb0FDeUFCSUFRdEFBRTZBQXdnQVNBRUxRQUJPZ0FOSUFFZ0JDMEFBVG9BRGlBQklBUXRBQUU2QUE4Z0FTQUVMUUFDT2dBUUlBRWdCQzBBQWpvQUVTQUJJQVF0QUFJNkFCSWdBU0FFTFFBQ09nQVRJQUVnQkMwQUFqb0FGQ0FCSUFRdEFBSTZBQlVnQVNBRUxRQUNPZ0FXSUFFZ0JDMEFBam9BRnlBQklBUXRBQU02QUJnZ0FTQUVMUUFET2dBWklBRWdCQzBBQXpvQUdpQUJJQVF0QUFNNkFCc2dBU0FFTFFBRE9nQWNJQUVnQkMwQUF6b0FIU0FCSUFRdEFBTTZBQjRnQVNBRUxRQURPZ0FmSUFFZ0JDMEFCRG9BSUNBQklBUXRBQVE2QUNFZ0FTQUVMUUFFT2dBaUlBRWdCQzBBQkRvQUl5QUJJQVF0QUFRNkFDUWdBU0FFTFFBRU9nQWxJQUVnQkMwQUJEb0FKaUFCSUFRdEFBUTZBQ2NnQVNBRUxRQUZPZ0FvSUFFZ0JDMEFCVG9BS1NBQklBUXRBQVU2QUNvZ0FTQUVMUUFGT2dBcklBRWdCQzBBQlRvQUxDQUJJQVF0QUFVNkFDMGdBU0FFTFFBRk9nQXVJQUVnQkMwQUJUb0FMeUFCSUFRdEFBWTZBREFnQVNBRUxRQUdPZ0F4SUFFZ0JDMEFCam9BTWlBQklBUXRBQVk2QURNZ0FTQUVMUUFHT2dBMElBRWdCQzBBQmpvQU5TQUJJQVF0QUFZNkFEWWdBU0FFTFFBR09nQTNJQUVnQkMwQUJ6b0FPQ0FCSUFRdEFBYzZBRGtnQVNBRUxRQUhPZ0E2SUFFZ0JDMEFCem9BT3lBQklBUXRBQWM2QUR3Z0FTQUVMUUFIT2dBOUlBRWdCQzBBQnpvQVBpQUJJQVF0QUFjNkFEOE1BZ3NnQjBVRVFFRUJEd3NnQVNBRExRQUJPZ0FBSUFFZ0F5MEFBVG9BQ0NBQklBTXRBQUU2QUJBZ0FTQURMUUFCT2dBWUlBRWdBeTBBQVRvQUlDQUJJQU10QUFFNkFDZ2dBU0FETFFBQk9nQXdJQUVnQXkwQUFUb0FPQ0FCSUFNdEFBSTZBQUVnQVNBRExRQUNPZ0FKSUFFZ0F5MEFBam9BRVNBQklBTXRBQUk2QUJrZ0FTQURMUUFDT2dBaElBRWdBeTBBQWpvQUtTQUJJQU10QUFJNkFERWdBU0FETFFBQ09nQTVJQUVnQXkwQUF6b0FBaUFCSUFNdEFBTTZBQW9nQVNBRExRQURPZ0FTSUFFZ0F5MEFBem9BR2lBQklBTXRBQU02QUNJZ0FTQURMUUFET2dBcUlBRWdBeTBBQXpvQU1pQUJJQU10QUFNNkFEb2dBU0FETFFBRU9nQURJQUVnQXkwQUJEb0FDeUFCSUFNdEFBUTZBQk1nQVNBRExRQUVPZ0FiSUFFZ0F5MEFCRG9BSXlBQklBTXRBQVE2QUNzZ0FTQURMUUFFT2dBeklBRWdBeTBBQkRvQU95QUJJQU10QUFVNkFBUWdBU0FETFFBRk9nQU1JQUVnQXkwQUJUb0FGQ0FCSUFNdEFBVTZBQndnQVNBRExRQUZPZ0FrSUFFZ0F5MEFCVG9BTENBQklBTXRBQVU2QURRZ0FTQURMUUFGT2dBOElBRWdBeTBBQmpvQUJTQUJJQU10QUFZNkFBMGdBU0FETFFBR09nQVZJQUVnQXkwQUJqb0FIU0FCSUFNdEFBWTZBQ1VnQVNBRExRQUdPZ0F0SUFFZ0F5MEFCam9BTlNBQklBTXRBQVk2QUQwZ0FTQURMUUFIT2dBR0lBRWdBeTBBQnpvQURpQUJJQU10QUFjNkFCWWdBU0FETFFBSE9nQWVJQUVnQXkwQUJ6b0FKaUFCSUFNdEFBYzZBQzRnQVNBRExRQUhPZ0EySUFFZ0F5MEFCem9BUGlBQklBTXRBQWc2QUFjZ0FTQURMUUFJT2dBUElBRWdBeTBBQ0RvQUZ5QUJJQU10QUFnNkFCOGdBU0FETFFBSU9nQW5JQUVnQXkwQUNEb0FMeUFCSUFNdEFBZzZBRGNnQVNBRExRQUlPZ0EvREFFTElBNUZCRUJCQVE4TElBTXRBQVVnQXkwQUEyc2dBeTBBQmlBRExRQUNhMEVCZEdvZ0F5MEFCeUFETFFBQmEwRURiR29nQXkwQUNDSUFJQU10QUFBaUNXdEJBblJxUVJGc1FSQnFRUVYxSWdaQmZXd2hFQ0FBSUFRdEFBY2lER3BCQkhRZ0JDMEFCQ0FFTFFBQ2F5QU1JQWxyUVFKMGFpQUVMUUFGSUFRdEFBRnJRUUYwYWlBRUxRQUdJQVF0QUFCclFRTnNha0VSYkVFUWFrRUZkU0lSUVgxc2FrRVFhaUVKUVFnaERDQUJJUUFEUUNBQUlBa2dFR29pQ0VFRmRVR3dMbW90QUFBNkFBQWdBQ0FHSUFocUlnaEJCWFZCc0M1cUxRQUFPZ0FCSUFBZ0JpQUlhaUlJUVFWMVFiQXVhaTBBQURvQUFpQUFJQVlnQ0dvaUNFRUZkVUd3TG1vdEFBQTZBQU1nQUNBR0lBaHFJZ2hCQlhWQnNDNXFMUUFBT2dBRUlBQWdCaUFJYWlJSVFRVjFRYkF1YWkwQUFEb0FCU0FBSUFZZ0NHb2lDRUVGZFVHd0xtb3RBQUE2QUFZZ0FDQUdJQWhxUVFWMVFiQXVhaTBBQURvQUJ5QUpJQkZxSVFrZ0FFRUlhaUVBSUF4QmYyb2lEQTBBQ3dzZ0FTQUNJQXNRQ0NBQklBSkJRR3NnQzBFQmNoQUlJQUVnQWtHQUFXb2dDMEVDY2hBSUlBRWdBa0hBQVdvZ0MwRURjaEFJSUFKQmdBSnFJUUlnQkVFSWFpRUVJQU5CQ1dvaEF5QUJRVUJySVFFZ0MwRUVhaUVMSUJKQkFXb2lFa0VDUncwQUMwRUFDNkVWQWhoL0FuNENmd05BQW44Z0FDSUlJQlpCQTNSQnNEVnFLUUlBSWg2bkVCRWlDU0lHQkVBZ0NDZ0NCQ0FHS0FJRVJnd0JDMEVBQ3lFTkFrQWdCVVVOQUNBTlJRMEFRUUFnRFVFQ0lBa29BZ0FpQmtFR1J5QUdRUVpKRzBFQ1Joc2hEUXNDZnlBSUlCWkJBM1JCOERacUtRSUFJaCtuRUJFaUJ5SUdCRUFnQ0NnQ0JDQUdLQUlFUmd3QkMwRUFDeUVQQWtBZ0JVVU5BQ0FQUlEwQVFRQWdEMEVDSUFjb0FnQWlCa0VHUnlBR1FRWkpHMEVDUmhzaER3dEJBaUVNSUExQkFFY2dEMEVBUjNFaUVrRUJSZ1JBUVFJaEJnSi9RUUlnQ1NnQ0FDSUxRUVpISUF0QkJra2JSUVJBSUFrZ0hrSWdpS2RCL3dGeGFpMEFVaUVHQ3lBR0N3Si9RUUlnQnlnQ0FDSUpRUVpISUFsQkJra2JSUVJBSUFjZ0gwSWdpS2RCL3dGeGFpMEFVaUVNQ3lBTUN5QUdJQXhKR3lFTUN5QUNJQlpCQW5RaUNXb2lCaWdDREVVRVFDQUdLQUpNSWdZZ0JpQU1UMm9oREFzZ0NDQVdhaUFNT2dCU0FuOGdDQ0FXUVFOMFFiQTRhaWdDQUJBUklnWWlCd1JBSUFnb0FnUWdCeWdDQkVZTUFRdEJBQXNoRGdKQUlBVkZEUUFnRGtVTkFFRUFJQTVCQWlBR0tBSUFJZ1pCQmtjZ0JrRUdTUnRCQWtZYklRNExBbjhnQUNBV1FRTjBRZkE1YWlnQ0FCQVJJZ2dpQmdSQUlBQW9BZ1FnQmlnQ0JFWU1BUXRCQUFzaEVRSkFJQVZGRFFBZ0VVVU5BRUVBSUJGQkFpQUlLQUlBSWdoQkJrY2dDRUVHU1J0QkFrWWJJUkVMSUFsQjhDbHFLQUlBSVJjZ0NVR3dLV29vQWdBaEdBSi9RWVVLSUJaMlFRRnhJaHdFUUNBWFFRTnFJUWNnQkNBWGFpSUlRUUpxSVFZZ0NFRUJhaUVMSUFRTUFRc2dGMEVFZENBWWFpSUlRUzlxSVFjZ0FTQUlhaUlJUVI5cUlRWWdDRUVQYWlFTElBaEJmMm9oQ0NBQkN5RUpJQWNnQ1dvdEFBQWhDaUFHTFFBQUlSQWdDeTBBQUNFVElBZ3RBQUFoRkFKQVFUTWdGblpCQVhFRVFDQURJQmhxSWdjdEFBZ2hHeUFITFFBSElSa2dCeTBBQmlFVklBY3RBQVVoR2lBSExRQUVJUVlnQnkwQUF5RUxJQWN0QUFJaENTQUhMUUFCSVFnTUFRc2dBU0FYUVg5cUloMUJCSFFnR0dwcUlnY3RBQUFoQ0NBSExRQUhJUnNnQnkwQUJpRVpJQWN0QUFVaEZTQUhMUUFFSVJvZ0J5MEFBeUVHSUFjdEFBSWhDeUFITFFBQklRa2dIQVJBSUFRZ0hXb2hCd3dCQ3lBSFFYOXFJUWNMQWtBZ0RFRUhUUVJBSUFjdEFBQWhCd0pBQWtBQ1FBSkFBa0FDUUFKQUFrQWdERUVCYXc0SEFRSURCQVVHQndBTElBOUZCRUJCQVE4TElBaEIvd0Z4SUF0Qi93RnhRUkIwSUFaQkdIUnljaUFKUWY4QmNVRUlkSEloRlNBSUlnd2hEU0FKSWc0aEVpQUxJZzhoQ2lBR0loRWhCd3dJQ3lBTlJRUkFRUUVQQ3lBS1FZR0NoQWhzSVJVZ0VFR0Jnb1FJYkNJTlFSaDJJUWNnRFVFUWRpRUtJQTFCQ0hZaEVpQVRRWUdDaEFoc0lneEJHSFloRVNBTVFSQjJJUThnREVFSWRpRU9JQlJCZ1lLRUNHd2lDRUVZZGlFR0lBaEJFSFloQ3lBSVFRaDJJUWtNQndzQ2Z5QVRJQlJxSUFwcUlCQnFJQVpCL3dGeGFpQUxRZjhCY1dvZ0NVSC9BWEZxSUFoQi93Rnhha0VFYWtFRGRpQVNEUUFhSUJNZ0ZHb2dDbW9nRUdwQkFtcEJBbllnRFEwQUdrR0FBU0FQUlEwQUdpQUdRZjhCY1NBTFFmOEJjV29nQ1VIL0FYRnFJQWhCL3dGeGFrRUNha0VDZGdzaUNFR0Jnb1FJYkNFVklBZ2lDU0lMSWdZaURDSU9JZzhpRVNJTkloSWlDaUVIREFZTElBOUZCRUJCQVE4TElBWkIvd0Z4SWcxQkFtb2lFU0FWSUFZZ0RodEIvd0Z4SWdkcUlCb2dCaUFPRzBIL0FYRWlDa0VCZEdwQkFuWWlEeUFaSUFZZ0RodEIvd0Z4SWd3Z0d5QUdJQTRiUWY4QmNTSUdRUU5zYWtFV2RFR0FnSUFFYWtHQWdJQjRjWElnQ2lBTWFpQUhRUUYwYWtFQ2FpSVFRUVowUVlEK0EzRnlJQVlnQjJvZ0RFRUJkR3BCQW1vaUJrRU9kRUdBZ1B3SGNYSWhGU0FHUVFKMklRY2dDMEgvQVhFaUJrRUNhaUlMSUFoQi93RnhhaUFKUWY4QmNTSUpRUUYwYWtFQ2RpRUlJQWtnRVdvZ0JrRUJkR3BCQW5ZaUNTRU1JQW9nQzJvZ0RVRUJkR3BCQW5ZaUN5RU9JQXNoRFNBUElnWWhFaUFRUVFKMkloRWhDZ3dGQzBFQklCRkZJQkpCQVhOeURRWWFJQlFnRTBFQmRHb2dFR3BCQW1vaURrRUdkRUdBL2dOeElBb2dFMEVDYWlJUGFpQVFRUUYwYWtFQ2RuSWdDRUgvQVhFaUNrRUNhaUlNSUJScUlBZEJBWFJxUVFKMklnaEJHSFJ5SUE4Z0ZFRUJkR29nQjJvaUVFRU9kRUdBZ1B3SGNYSWhGU0FKUWY4QmNTSVJRUUpxSWdrZ0JrSC9BWEZxSUF0Qi93RnhJZ3RCQVhScVFRSjJJUVlnRGtFQ2RpRU5JQWtnQ2tFQmRHb2dCMnBCQW5ZaUNTRVBJQkZCQVhRZ0Myb2dER3BCQW5ZaUN5RVJJQkJCQW5ZaURDRVNJQWdpRGlFS0lBa2hCd3dFQzBFQklCRkZJQkpCQVhOeURRVWFJQWhCL3dGeElncEJBbW9pRGlBTFFmOEJjU0lJSUFsQi93RnhJZ3RCQVhScWFrRUNkaUlQUVJoMElCUWdFMEVCZEdvZ0VHcEJBbXBCQW5aeUlBNGdGR29nQjBFQmRHb2lDVUVHZEVHQS9nTnhjaUFMUVFKcUlnNGdDa0VCZEdvZ0Iyb2lEVUVPZEVHQWdQd0hjWEloRlNBSVFRRnFJaEFnQmtIL0FYRWlER3BCQVhZaEJpQU1JQTVxSUFoQkFYUnFRUUoySVJFZ0NVRUNkaUVNSUExQkFuWWhEaUFUSUJSQkFYUnFJQWRxUVFKcVFRSjJJUTBnQnlBS2FrRUJha0VCZGlJSUlSSWdDaUFMYWtFQmFrRUJkaUlKSVFvZ0N5QVFha0VCZGlJTElRY01Bd3RCQVNBUlJTQVNRUUZ6Y2cwRUdpQVRRUUpxSWc0Z0Ntb2dFRUVCZEdwQkJuUkJnUDREY1NBUUlCTnFRUUZxSWc5QkQzUkJnSUQ4QjNFZ0ZFRUNhaUlNSUJOQkFYUnFJQkJxUVFKMkloSkJHSFJ5SUFvZ0VHcEJBV3BCQVhaeWNpRVZJQWhCL3dGeElnZ2dDMEgvQVhGcUlBbEIvd0Z4SWdsQkFYUnFRUUpxUVFKMklRWWdDU0FJUVFGMGFpQUhha0VDYWtFQ2RpRUxJQTlCQVhZaERTQUlJQXhxSUFkQkFYUnFRUUoySWhFaENTQVVRUUZxSWdvZ0IycEJBWFlpQ0NFUElBb2dFMnBCQVhZaURDRUtJQTRnRkVFQmRHb2dCMnBCQW5ZaURpRUhEQUlMSUE5RkJFQkJBUThMSUJvZ0JpQU9HMEgvQVhFaUNpQVpJQVlnRGh0Qi93RnhhaUFWSUFZZ0RodEIvd0Z4SWdkQkFYUnFRUlowSUF0Qi93RnhJZ3RCQW1vaURDQUthaUFHUWY4QmNTSUdRUUYwYWlJUFFRWjBja0dBZ0lBRWFrR0Evb040Y1NBR1FRSnFJZzBnQ1VIL0FYRWlDV29nQzBFQmRHcEJBbllpRG5JZ0J5QU5haUFLUVFGMGFpSU5RUTUwUVlDQS9BZHhjaUVWSUFjZ0NtcEJBV3BCQVhZaEJ5QU5RUUoySVJFZ0NTQUlRZjhCY1NJTmFrRUJha0VCZGlFSUlBOUJBblloRHlBTUlBMXFJQWxCQVhScVFRSjJJUXdnQ1NBTGFrRUJha0VCZGlJSklRMGdCa0VCYWlJR0lBdHFRUUYySWdzaEVpQUdJQXBxUVFGMklnWWhDZ3dCQ3lBTlJRUkFRUUVQQ3lBS1FRaDBJQXB5SUFwQkVIUnlJQXBCR0hSeUlSVWdFRUVDYWlJSElCUnFJQk5CQVhScVFRSjJJUWtnRTBFQmFpSUdJQlJxUVFGMklRZ2dCaUFRYWtFQmRpSUxJUXdnQ2lBVGFpQVFRUUYwYWtFQ2FrRUNkaUlHSVE0Z0NpQVFha0VCYWtFQmRpSVBJUTBnQnlBS1FRTnNha0VDZGlJUklSSWdDaUVIQ3lBQklCZEJCSFFnR0dwcUloQWdGVFlDTUNBUUlBMUIvd0Z4SUJKQi93RnhRUWgwY2lBS1FmOEJjVUVRZEhJZ0IwRVlkSEkyQWlBZ0VDQU1RZjhCY1NBT1FmOEJjVUVJZEhJZ0QwSC9BWEZCRUhSeUlCRkJHSFJ5TmdJUUlCQWdDRUgvQVhFZ0NVSC9BWEZCQ0hSeUlBdEIvd0Z4UVJCMGNpQUdRUmgwY2pZQ0FDQUJJQUlnRmtFR2RHcEJ5QUpxSUJZUUNDQVdRUUZxSWhaQkVFY05BQXRCQUFzTHhSSUJFSDhDZnlBQUtBTElBU0lIQkVBZ0FDZ0NCQ0FIS0FJRVJnd0JDMEVBQ3lFSEFrQWdCVVVOQUNBSFJRMEFRUUFnQjBFQ0lBQW9Bc2dCS0FJQUlnZEJCa2NnQjBFR1NSdEJBa1liSVFjTEFuOGdBQ2dDekFFaUNBUkFJQUFvQWdRZ0NDZ0NCRVlNQVF0QkFBc2hDQUpBSUFWRkRRQWdDRVVOQUVFQUlBaEJBaUFBS0FMTUFTZ0NBQ0lJUVFaSElBaEJCa2tiUVFKR0d5RUlDd0ovSUFBb0F0UUJJZ2tFUUNBQUtBSUVJQWtvQWdSR0RBRUxRUUFMSVFrQ1FDQUZSUTBBSUFsRkRRQkJBaUFBS0FMVUFTZ0NBQ0lGUVFaSElBVkJCa2tiUVFKSElRa0xBa0FDUUNBQUtBSUFRUUZxUVFOeElnQkJBazBFUUFKQUFrQUNRQ0FBUVFGckRnSUJBZ0FMSUFoRkJFQkJBUThMUVFBaEJTQUJJUUFEUUNBQUlBTXRBQUU2QUFBZ0FDQURMUUFDT2dBQklBQWdBeTBBQXpvQUFpQUFJQU10QUFRNkFBTWdBQ0FETFFBRk9nQUVJQUFnQXkwQUJqb0FCU0FBSUFNdEFBYzZBQVlnQUNBRExRQUlPZ0FISUFBZ0F5MEFDVG9BQ0NBQUlBTXRBQW82QUFrZ0FDQURMUUFMT2dBS0lBQWdBeTBBRERvQUN5QUFJQU10QUEwNkFBd2dBQ0FETFFBT09nQU5JQUFnQXkwQUR6b0FEaUFBSUFNdEFCQTZBQThnQUVFUWFpRUFJQVZCQVdvaUJVRVFSdzBBQ3d3REN5QUhSUVJBUVFFUEMwRUFJUVVnQVNFQUEwQWdBQ0FFSUFWcUlnTXRBQUE2QUFBZ0FDQURMUUFBT2dBQklBQWdBeTBBQURvQUFpQUFJQU10QUFBNkFBTWdBQ0FETFFBQU9nQUVJQUFnQXkwQUFEb0FCU0FBSUFNdEFBQTZBQVlnQUNBRExRQUFPZ0FISUFBZ0F5MEFBRG9BQ0NBQUlBTXRBQUE2QUFrZ0FDQURMUUFBT2dBS0lBQWdBeTBBQURvQUN5QUFJQU10QUFBNkFBd2dBQ0FETFFBQU9nQU5JQUFnQXkwQUFEb0FEaUFBSUFNdEFBQTZBQThnQUVFUWFpRUFJQVZCQVdvaUJVRVFSdzBBQ3d3Q0N5QUJBbjhDUUNBSFJRMEFJQWhGRFFBZ0JDMEFEeUFETFFBUUlBUXRBQTRnQXkwQUR5QUVMUUFOSUFNdEFBNGdCQzBBRENBRExRQU5JQVF0QUFzZ0F5MEFEQ0FFTFFBS0lBTXRBQXNnQkMwQUNTQURMUUFLSUFRdEFBZ2dBeTBBQ1NBRUxRQUhJQU10QUFnZ0JDMEFCaUFETFFBSElBUXRBQVVnQXkwQUJpQUVMUUFFSUFNdEFBVWdCQzBBQXlBRExRQUVJQVF0QUFJZ0F5MEFBeUFFTFFBQklBTXRBQUlnQXkwQUFTQUVMUUFBYW1wcWFtcHFhbXBxYW1wcWFtcHFhbXBxYW1wcWFtcHFhbXBxYW1wcWFrRVFha0VGZGd3QkN5QUhCRUFnQkMwQUR5QUVMUUFPSUFRdEFBMGdCQzBBRENBRUxRQUxJQVF0QUFvZ0JDMEFDU0FFTFFBSUlBUXRBQWNnQkMwQUJpQUVMUUFGSUFRdEFBUWdCQzBBQXlBRUxRQUNJQVF0QUFBZ0JDMEFBV3BxYW1wcWFtcHFhbXBxYW1wcWFrRUlha0VFZGd3QkMwR0FBU0FJUlEwQUdpQURMUUFRSUFNdEFBOGdBeTBBRGlBRExRQU5JQU10QUF3Z0F5MEFDeUFETFFBS0lBTXRBQWtnQXkwQUNDQURMUUFISUFNdEFBWWdBeTBBQlNBRExRQUVJQU10QUFNZ0F5MEFBU0FETFFBQ2FtcHFhbXBxYW1wcWFtcHFhbXBxUVFocVFRUjJDMEdBQWhBSEdnd0JDMEVCSVFBZ0IwVU5BU0FJUlEwQklBbEZEUUVnQkMwQUNDQUVMUUFHYXlBRUxRQVBJZ0FnQXkwQUFDSUZhMEVEZEdvZ0JDMEFDU0FFTFFBRmEwRUJkR29nQkMwQUNpQUVMUUFFYTBFRGJHb2dCQzBBQ3lBRUxRQURhMEVDZEdvZ0JDMEFEQ0FFTFFBQ2EwRUZiR29nQkMwQURTQUVMUUFCYTBFR2JHb2dCQzBBRGlBRUxRQUFhMEVIYkdwQkJXeEJJR3BCQm5VaEJ5QURMUUFKSUFNdEFBZHJJQU10QUFvZ0F5MEFCbXRCQVhScUlBTXRBQXNnQXkwQUJXdEJBMnhxSUFNdEFBd2dBeTBBQkd0QkFuUnFJQU10QUEwZ0F5MEFBMnRCQld4cUlBTXRBQTRnQXkwQUFtdEJCbXhxSUFNdEFBOGdBeTBBQVd0QkIyeHFJQU10QUJBaUF5QUZhMEVEZEdwQkJXeEJJR3BCQm5VaUJFRURkQ0VJSUFSQkIyd2hDU0FFUVFac0lRb2dCRUVGYkNFTElBUkJBMndoRENBRVFYMXNJUTBnQkVGN2JDRU9JQVJCZW13aER5QUVRWGxzSVJCQkFDQUVRUUYwSWhGcklSSkJBQ0FFUVFKMEloTnJJUlFnQUNBRGFrRUVkRUVRYWlFVlFRQWhCUU5BSUFFZ0JVRUVkQ0lBYWlBVklBVkJlV29nQjJ4cUlnTWdFR3BCQlhVaUJrSC9BU0FHUWY4QlNCc2lCa0VBSUFaQkFFb2JPZ0FBSUFFZ0FFRUJjbW9nQXlBUGFrRUZkU0lHUWY4QklBWkIvd0ZJR3lJR1FRQWdCa0VBU2hzNkFBQWdBU0FBUVFKeWFpQURJQTVxUVFWMUlnWkIvd0VnQmtIL0FVZ2JJZ1pCQUNBR1FRQktHem9BQUNBQklBQkJBM0pxSUFNZ0ZHcEJCWFVpQmtIL0FTQUdRZjhCU0JzaUJrRUFJQVpCQUVvYk9nQUFJQUVnQUVFRWNtb2dBeUFOYWtFRmRTSUdRZjhCSUFaQi93RklHeUlHUVFBZ0JrRUFTaHM2QUFBZ0FTQUFRUVZ5YWlBRElCSnFRUVYxSWdaQi93RWdCa0gvQVVnYklnWkJBQ0FHUVFCS0d6b0FBQ0FCSUFCQkJuSnFJQU1nQkd0QkJYVWlCa0gvQVNBR1FmOEJTQnNpQmtFQUlBWkJBRW9iT2dBQUlBRWdBRUVIY21vZ0EwRUZkU0lHUWY4QklBWkIvd0ZJR3lJR1FRQWdCa0VBU2hzNkFBQWdBU0FBUVFoeWFpQURJQVJxUVFWMUlnWkIvd0VnQmtIL0FVZ2JJZ1pCQUNBR1FRQktHem9BQUNBQklBQkJDWEpxSUFNZ0VXcEJCWFVpQmtIL0FTQUdRZjhCU0JzaUJrRUFJQVpCQUVvYk9nQUFJQUVnQUVFS2Ntb2dBeUFNYWtFRmRTSUdRZjhCSUFaQi93RklHeUlHUVFBZ0JrRUFTaHM2QUFBZ0FTQUFRUXR5YWlBRElCTnFRUVYxSWdaQi93RWdCa0gvQVVnYklnWkJBQ0FHUVFCS0d6b0FBQ0FCSUFCQkRISnFJQU1nQzJwQkJYVWlCa0gvQVNBR1FmOEJTQnNpQmtFQUlBWkJBRW9iT2dBQUlBRWdBRUVOY21vZ0F5QUtha0VGZFNJR1FmOEJJQVpCL3dGSUd5SUdRUUFnQmtFQVNoczZBQUFnQVNBQVFRNXlhaUFESUFscVFRVjFJZ1pCL3dFZ0JrSC9BVWdiSWdaQkFDQUdRUUJLR3pvQUFDQUJJQUJCRDNKcUlBTWdDR3BCQlhVaUFFSC9BU0FBUWY4QlNCc2lBRUVBSUFCQkFFb2JPZ0FBSUFWQkFXb2lCVUVRUncwQUN3dEJBQ0VBSUFFZ0FrRUFFQWdnQVNBQ1FVQnJRUUVRQ0NBQklBSkJnQUZxUVFJUUNDQUJJQUpCd0FGcVFRTVFDQ0FCSUFKQmdBSnFRUVFRQ0NBQklBSkJ3QUpxUVFVUUNDQUJJQUpCZ0FOcVFRWVFDQ0FCSUFKQndBTnFRUWNRQ0NBQklBSkJnQVJxUVFnUUNDQUJJQUpCd0FScVFRa1FDQ0FCSUFKQmdBVnFRUW9RQ0NBQklBSkJ3QVZxUVFzUUNDQUJJQUpCZ0FacVFRd1FDQ0FCSUFKQndBWnFRUTBRQ0NBQklBSkJnQWRxUVE0UUNDQUJJQUpCd0FkcVFROFFDQXNnQUF1N0NBRUhmd0pBSUFORkRRQWdBQ2dDQUNBRElBQW9BZ1FpQlc0aUNDQUZiQ0lFUVFoMGFpQURJQVJySWdkQkJIUnFJUVlnQlVFRWRDRUVJQUFvQWdnaENTQUZJQU5MSWdwRkJFQWdBU0FHSUFSQkFYSnJJZ010QUFBNkFBQWdBU0FETFFBQk9nQUJJQUVnQXkwQUFqb0FBaUFCSUFNdEFBTTZBQU1nQVNBRExRQUVPZ0FFSUFFZ0F5MEFCVG9BQlNBQklBTXRBQVk2QUFZZ0FTQURMUUFIT2dBSElBRWdBeTBBQ0RvQUNDQUJJQU10QUFrNkFBa2dBU0FETFFBS09nQUtJQUVnQXkwQUN6b0FDeUFCSUFNdEFBdzZBQXdnQVNBRExRQU5PZ0FOSUFFZ0F5MEFEam9BRGlBQklBTXRBQTg2QUE4Z0FTQURMUUFRT2dBUUlBRWdBeTBBRVRvQUVTQUJJQU10QUJJNkFCSWdBU0FETFFBVE9nQVRJQUVnQXkwQUZEb0FGQ0FCUVJWcUlRRUxJQWNFUUNBQ0lBWkJmMm9pQXkwQUFEb0FBQ0FDSUFNZ0JHb2lBeTBBQURvQUFTQUNJQU1nQkdvaUF5MEFBRG9BQWlBQ0lBTWdCR29pQXkwQUFEb0FBeUFDSUFNZ0JHb2lBeTBBQURvQUJDQUNJQU1nQkdvaUF5MEFBRG9BQlNBQ0lBTWdCR29pQXkwQUFEb0FCaUFDSUFNZ0JHb2lBeTBBQURvQUJ5QUNJQU1nQkdvaUF5MEFBRG9BQ0NBQ0lBTWdCR29pQXkwQUFEb0FDU0FDSUFNZ0JHb2lBeTBBQURvQUNpQUNJQU1nQkdvaUF5MEFBRG9BQ3lBQ0lBTWdCR29pQXkwQUFEb0FEQ0FDSUFNZ0JHb2lBeTBBQURvQURTQUNJQU1nQkdvaUF5MEFBRG9BRGlBQ0lBTWdCR290QUFBNkFBOGdBa0VRYWlFQ0N5QUFLQUlBSUFVZ0NXd2lCRUVJZEdvZ0NDQUZRUU4wSWdCc1FRTjBhaUFIUVFOMGFpRUdJQUJCK1AvLy93ZHhJUUFnQ2tVRVFDQUJJQVlnQUVFQmNtc2lBeTBBQURvQUFDQUJJQU10QUFFNkFBRWdBU0FETFFBQ09nQUNJQUVnQXkwQUF6b0FBeUFCSUFNdEFBUTZBQVFnQVNBRExRQUZPZ0FGSUFFZ0F5MEFCam9BQmlBQklBTXRBQWM2QUFjZ0FTQURRUWhxSWdNdEFBQTZBQWdnQVNBRVFRWjBJQU5xSWdOQmVHb3RBQUE2QUFrZ0FTQURRWGxxTFFBQU9nQUtJQUVnQTBGNmFpMEFBRG9BQ3lBQklBTkJlMm90QUFBNkFBd2dBU0FEUVh4cUxRQUFPZ0FOSUFFZ0EwRjlhaTBBQURvQURpQUJJQU5CZm1vdEFBQTZBQThnQVNBRFFYOXFMUUFBT2dBUUlBRWdBeTBBQURvQUVRc2dCMFVOQUNBQ0lBWkJmMm9pQVMwQUFEb0FBQ0FDSUFBZ0FXb2lBUzBBQURvQUFTQUNJQUFnQVdvaUFTMEFBRG9BQWlBQ0lBQWdBV29pQVMwQUFEb0FBeUFDSUFBZ0FXb2lBUzBBQURvQUJDQUNJQUFnQVdvaUFTMEFBRG9BQlNBQ0lBQWdBV29pQVMwQUFEb0FCaUFDSUFBZ0FXb2lBUzBBQURvQUJ5QUNJQUFnQVdvZ0JDQUZhMEVHZEdvaUFTMEFBRG9BQ0NBQ0lBQWdBV29pQVMwQUFEb0FDU0FDSUFBZ0FXb2lBUzBBQURvQUNpQUNJQUFnQVdvaUFTMEFBRG9BQ3lBQ0lBQWdBV29pQVMwQUFEb0FEQ0FDSUFBZ0FXb2lBUzBBQURvQURTQUNJQUFnQVdvaUFTMEFBRG9BRGlBQ0lBQWdBV290QUFBNkFBOExDNjhCQVFGL0l3QkIwQUJySWdZa0FDQUNJQVpCSUdvZ0JpQURFRlVDUUFKQVFRSWdBQ2dDQUNJRFFRWkhJQU5CQmtrYlFRRkdCRUFnQUNBRklBRkJ5QUpxSUFaQklHb2dCaUFFRUZRaUEwVU5BUXdDQ3lBQUlBVWdBU0FHUVNCcUlBWWdCQkJUSWdNTkFRc2dBQ0FGUVlBQ2FpQUJRY2dLYWlBR1FUVnFJQVpCRUdvZ0FTZ0NqQUVnQkJCU0lnTU5BRUVBSVFNZ0FDZ0N4QUZCQVVzTkFDQUNJQVVRR3dzZ0JrSFFBR29rQUNBREM2TXFBU1IvSXdCQklHc2lFQ1FBSUJBZ0JDZ0NCQ0lJTmdJTUlCQWdCQ2dDQ0RZQ0VDQURJQWh1SWdaQkJIUWhGQ0FESUFZZ0NHeHJRUVIwSVJVQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUFBb0FnQWlCa0VEVFFSQUFrQUNRQUpBSUFaQkFtc09BZ0VDQUFzZ0FTZ0NrQUVoRXlBQUtBSUVJUTVCZnlFUEFuOGdBQ2dDeUFFaUNVVUVRRUVBSVFoQmZ3d0JDMEVBSVFoQmZ5QUpLQUlFSUE1SERRQWFRUUVoRWtGL0lBa29BZ0JCQlVzTkFCb2dDU2dDbUFFaUNFRVFkaUVISUFrb0FtZ0xJUTBnQUNnQ3pBRWlDVVVOQ0NBSktBSUVJQTVIRFFoQkFTRVdJQWtvQWdCQkJVc05DQ0FKS0FLc0FTSVJRUkIySVFvZ0NTZ0NiQ0VQREFnTElBRW9BcEFCSVJNZ0FTOEJvZ0VoRFNBQkx3R2dBU0VNSUFBb0FnUWhDMEYvSVFjQ1FDQUFLQUxNQVNJR1JRMEFJQXNnQmlnQ0JFY0VRQXdCQzBFQklSSWdCaWdDQUVFRlN3MEFJQVlvQXF3QklnbEJFSFloQ2lBR0tBSnNJUWNMSUFjZ0UwWUVRQ0FLSVFjZ0NTRUdEQWNMUVg4aER3SkFBa0FDUUNBQUtBTElBU0lJUlFSQVFRQWhCd3dCQzBFQUlRY2dDQ2dDQkNBTFJnMEJDMEVBSVFZTUFRdEJBU0VYSUFnb0FnQkJCVXNFUUVFQUlRWU1BUXNnQ0NnQ21BRWlCa0VRZGlFSElBZ29BbWdoRHdzQ1FBSkFJQUFvQXRBQklnaEZEUUFnQ0NnQ0JDQUxSdzBBSUFnb0FnQkJCVTBOQVF3R0N3SkFJQUFvQXRRQklnaEZEUUFnQ0NnQ0JDQUxSdzBBSUFnb0FnQkJCVXNOQmlBSUtBSndJUllnQ0NnQ3dBRWhDQXdIQzBFQUlRaEJmeUVXSUJJTkJpQVhSUTBHREFjTElBZ29BbXdoRmlBSUtBS3NBU0VJREFVTElBRW9BcEFCSVE4Z0FTOEJvZ0VoRFNBQkx3R2dBU0VNSUFBb0FnUWhCa0YvSVFjQ1FDQUFLQUxJQVNJS1JRUkFRUUFoQ0F3QkMwRUFJUWdnQmlBS0tBSUVSd1JBREFFTFFRRWhFU0FLS0FJQVFRVkxEUUFnQ2lnQ21BRWlDVUVRZGlFSUlBb29BbWdoQndzZ0J5QVBSZzBCQW44Q2Z3SkFBa0FnQUNnQ3pBRWlCMFVOQUNBSEtBSUVJQVpIRFFBZ0J5Z0NBRUVGU3cwQklBY29BbkFoRVNBSEtBSzhBU0VLSUFjb0Ftd2hFaUFIS0FLc0FTSUdRUkIyREFNTEFrQWdBQ2dDMUFFaUIwVU5BQ0FIS0FJRUlBWkhEUUJCQUNFR1FYOGhFaUFIS0FJQVFRVkxCRUJCZnlFUlFRQU1Bd3NnQnlnQ2NDRVJJQWNvQXNBQkRBSUxJQkVOQkF0QmZ5RVJRWDhoRWtFQUlRWkJBQXNoQ2tFQUN5RUhJQThnRWtZaUN5QVBJQkZHYWtFQlJ3UkFJQWNnQ0NBSFFSQjBRUkIxSWdzZ0NFRVFkRUVRZFNJT1NpSUlHeUlISUE0Z0N5QU9JQXNnRGtnYklBZ2JJZ2dnQ2tFUWRTSUxJQWdnQzBvYklBZEJFSFJCRUhVZ0MwZ2JJUWNnQmlBSklBWkJFSFJCRUhVaUN5QUpRUkIwUVJCMUlnbEtJZ1liSWdoQi8vOERjU0FKSUFzZ0NTQUxJQWxJR3lBR0d5SUdJQXBCRUhSQkVIVWlDU0FHSUFsS0d5QUlRUkIwUVJCMUlBbElHeUVHREFNTElBc05BaUFLUVJCMklRY2dDaUVHREFJTFFRRWhHeUFBUVlRQmFpRWNBMEFDZnlBQklCMUJBblFpSG1vaUlDSWtLQUt3QVNJR1FRSk5CRUFnQmtFQ2RFR2NOV29vQWdBTUFRdEJCQXNoSWlBQUlCNXFJZ1lnSUNnQ3dBRTJBbVFnQmlBQ0lDQW9Bc0FCRUJRaUJqWUNkQ0FHUlEwSUlDSUVRQ0FjSUIxQkJIUWlIMm9pSlNFbUlCd2dIMEVNY21vaUowRUNhaUVvSUJ3Z0gwRUljbW9pS1NFUklCd2dIMEVFY21vaUZpRVRRUUFoQmdOQUlBRWdIMm9nQmtFQ2RHb2lDQzhCMGdFaER5QUlMd0hRQVNFT0lDQW9Bc0FCSVNGQmZ5RVhBbjhnQUNBZFFRZDBJQ1FvQXJBQklpTkJCWFJxSUFaQkEzUnFJaHBCc0JscUtBSUFFQkVpQ1VVRVFFRUFJUXhCQUNFSVFRQWhDa0YvREFFTFFRQWhERUVBSVFoQkFDRUtRWDhnQ1NnQ0JDQUFLQUlFUncwQUdrRUJJUXBCZnlBSktBSUFRUVZMRFFBYUlBa2dHa0cwR1dvdEFBQWlCMEVDZEdvb0FvUUJJZ2hCRUhZaERDQUpJQWRCL0FGeGFpZ0NaQXNoRFFKQUFrQUNRQ0FBSUJwQnNCMXFLQUlBRUJFaUdFVUVRRUVBSVFrTUFRdEJBQ0VKSUJnb0FnUWdBQ2dDQkVZTkFRdEJBQ0VTUVFBaEN3d0JDMEVCSVFzZ0dDZ0NBRUVGU3dSQVFRQWhFZ3dCQ3lBWUlCcEJ0QjFxTFFBQUlnZEJBblJxS0FLRUFTSVNRUkIySVFrZ0dDQUhRZndCY1dvb0FtUWhGd3NDUUFKQUFrQUNRQUpBSUFBZ0drR3dJV29vQWdBUUVTSVpSUTBBSUJrb0FnUWdBQ2dDQkVjTkFDQVpLQUlBUVFWTkRRRU1BZ3NDUUNBQUlCcEJzQ1ZxS0FJQUVCRWlHVVVOQUNBWktBSUVJQUFvQWdSSERRQWdHU2dDQUVFRlN3MENJQmtnR2tHMEpXb3RBQUFpQjBIOEFYRnFLQUprSVJnZ0dTQUhRUUowYWlnQ2hBRWhCd3dEQzBFQUlRZEJmeUVZSUFwRkRRSWdDdzBDREFNTElCa2dHa0cwSVdvdEFBQWlCMEg4QVhGcUtBSmtJUmdnR1NBSFFRSjBhaWdDaEFFaEJ3d0JDMEVBSVFkQmZ5RVlDeUFYSUNGR0lnb2dEU0FoUmlJTGFpQVlJQ0ZHYWtFQlJ3UkFJQWtnRENBSlFSQjBRUkIxSWdzZ0RFRVFkRUVRZFNJTVNpSUpHeUlLSUF3Z0N5QU1JQXNnREVnYklBa2JJZ2tnQjBFUWRTSUxJQWtnQzBvYklBcEJFSFJCRUhVZ0MwZ2JJUXdnRWlBSUlCSkJFSFJCRUhVaUNpQUlRUkIwUVJCMUlndEtJZ2diSWdsQi8vOERjU0FMSUFvZ0N5QUtJQXRJR3lBSUd5SUlJQWRCRUhSQkVIVWlCeUFJSUFkS0d5QUpRUkIwUVJCMUlBZElHeUVJREFFTElBZ2dFaUFMR3lFSUlBd2dDU0FMR3lFTUlBc05BQ0FLRFFBZ0IwRVFkaUVNSUFjaENBc2dDQ0FPYWlJS1FSQjBRUkIxUVlCQWEwSC8vd0JMRFFvZ0RDQVBhaUlKUVJCMFFSQjFRWUFRYWtIL0gwc05DaUFqUVFOTkJFQUNmd0pBQWtBQ1FBSkFJQ05CQVdzT0F3RUNBd0FMSUNVZ0Nqc0JBQ0FtSUFrN0FRSWdGaUFLT3dFQUlCTWdDVHNCQWlBcElBbzdBUUFnRVNBSk93RUNJQ2NnQ2pzQkFDQW9EQU1MSUJ3Z0JrRUJkQ0FlYWtFQ2RDSUhhaUlJSUFrN0FRSWdDQ0FLT3dFQUlCd2dCMEVFY21vaUNDQUtPd0VBSUFoQkFtb01BZ3NnQUNBR0lCNXFRUUowYWlJSUlBbzdBWXdCSUFnZ0NUc0JoZ0VnQ0NBS093R0VBU0FJUVk0QmFnd0JDeUFBSUFZZ0htcEJBblJxSWdnZ0Nqc0JoQUVnQ0VHR0FXb0xJQWs3QVFBTElBWkJBV29pQmlBaVJ3MEFDd3NnSFVFQmFpSWRRUVJIRFFBTFFRQWhEQU5BSUJBZ0FDQU1RUUowSWdKcUtBSjBOZ0lJSUF4QkFVdEJBM1FoQ1NBTVFRTjBRUWh4SVFjQ1FDQUJJQUpxS0FLd0FTSUNRUUpOQkVBQ1FBSkFBa0FnQWtFQmF3NENBUUlBQ3lBRklBQWdERUVFZEdwQmhBRnFJQkJCQ0dvZ0ZTQVVJQWNnQ1VFSVFRZ1FEZ3dEQ3lBRklBQWdERUVFZEdvaUFrR0VBV29nRUVFSWFpQVZJQlFnQnlBSlFRaEJCQkFPSUFVZ0FrR01BV29nRUVFSWFpQVZJQlFnQnlBSlFRUnlRUWhCQkJBT0RBSUxJQVVnQUNBTVFRUjBhaUlDUVlRQmFpQVFRUWhxSUJVZ0ZDQUhJQWxCQkVFSUVBNGdCU0FDUVlnQmFpQVFRUWhxSUJVZ0ZDQUhRUVJ5SUFsQkJFRUlFQTRNQVFzZ0JTQUFJQXhCQkhScUlnaEJoQUZxSUJCQkNHb2dGU0FVSUFjZ0NVRUVRUVFRRGlBRklBaEJpQUZxSUJCQkNHb2dGU0FVSUFkQkJISWlCaUFKUVFSQkJCQU9JQVVnQ0VHTUFXb2dFRUVJYWlBVklCUWdCeUFKUVFSeUlnSkJCRUVFRUE0Z0JTQUlRWkFCYWlBUVFRaHFJQlVnRkNBR0lBSkJCRUVFRUE0TElBeEJBV29pREVFRVJ3MEFDd3dHQ3lBSUlRY2dDU0VHQzBFQklSc2dCaUFNYWlJSVFSQjBRUkIxUVlCQWEwSC8vd0JMRFFVZ0J5QU5haUlHUVJCMFFSQjFRWUFRYWtIL0gwc05CU0FDSUE4UUZDSUhSUTBGSUFBZ0Jqc0JzZ0VnQUNBSU93R3dBU0FBSUFjMkFuUWdBQ0FQTmdKa0lBQWdCellDZkNBQUlBODJBbXdnQUNBQUtBS3dBU0lHTmdLc0FTQUFJQVkyQXFnQklBQWdCallDcEFFZ0FDQUdOZ0tRQVNBQUlBWTJBb3dCSUFBZ0JqWUNpQUVnQUNBR05nS0VBU0FCS0FLVUFTRU9JQUV2QWFZQklRd2dBUzhCcEFFaEN5QUFLQUlFSVFrQ1FBSkFJQUFvQXRBQklnZEZEUUFnQnlnQ0JDQUpSdzBBUVFFaEVTQUhLQUlBUVFWTEJFQkJmeUVJUVFBaEJ3d0NDeUFIS0FKc0lRZ2dCeWdDckFFaEJ3d0JDMEYvSVFoQkFDRUhJQUFvQXN3QklncEZCRUJCQUNFUkRBRUxJQWtnQ2lnQ0JFY0VRRUVBSVJFTUFRdEJBU0VSSUFvb0FnQkJCVXNOQUNBS0tBSnNJUWdnQ2lnQ3NBRWhCd3NDUUNBSUlBNUdSUVJBSUFaQkVIWWhDQUovQWtBQ1FDQUFLQUxNQVNJTlJRMEFJQTBvQWdRZ0NVY05BQ0FOS0FJQVFRVkxEUUVnRFNnQ3ZBRWlFVUVRZGlFS0lBMG9BbkFNQWdzZ0VVVU5Bd3RCQUNFUlFRQWhDa0YvQ3lFTklBNGdEMFlpQ1NBTklBNUdha0VCUndSQUlBb2dDQ0FLUVJCMFFSQjFJZzBnQ0VFUWRFRVFkVW9pQ0JzaUNTQUdRUkIxSWdvZ0RTQUtJQW9nRFVvYklBZ2JJZ2dnQjBFUWRTSUtJQWdnQ2tvYklBbEJFSFJCRUhVZ0NrZ2JJUWdnRVNBR0lCRkJFSFJCRUhVaUNpQUdRUkIwUVJCMUlnMUtJZ1liSWdsQi8vOERjU0FOSUFvZ0RTQU5JQXBLR3lBR0d5SUdJQWRCRUhSQkVIVWlCeUFHSUFkS0d5QUpRUkIwUVJCMUlBZElHeUVHREFJTElBa05BU0FOSUE1R0JFQWdFVUgvL3dOeElBcEJFSFJ5SVFZZ0NpRUlEQUlMQ3lBSFFSQjJJUWdnQnlFR0N5QUdJQXRxSWdkQkVIUkJFSFZCZ0VCclFmLy9BRXNOQlNBSUlBeHFJZ1pCRUhSQkVIVkJnQkJxUWY4ZlN3MEZJQUlnRGhBVUlnSkZEUVVnQUNBR093SENBU0FBSUFjN0FjQUJJQUFnQWpZQ2dBRWdBQ0FDTmdKNElBQWdEallDY0NBQUlBNDJBbWdnQUNBQUtBTEFBU0lHTmdLOEFTQUFJQVkyQXJnQklBQWdCallDdEFFZ0FDQUdOZ0tnQVNBQUlBWTJBcHdCSUFBZ0JqWUNtQUVnQUVHVUFXb2lBaUFHTmdJQUlCQWdBQ2dDZERZQ0NDQUZJQUJCaEFGcUlCQkJDR29nRlNBVVFRQkJBRUVJUVJBUURpQVFJQUFvQW5nMkFnZ2dCU0FDSUJCQkNHb2dGU0FVUVFoQkFFRUlRUkFRRGd3RUMwRUFJUWhCZnlFV0N5QVBJQk5HSWdzZ0V5QVdSbXBCQVVjRVFDQUtJQWNnQ2tFUWRFRVFkU0lMSUFkQkVIUkJFSFVpRGtvaUJ4c2lDaUFPSUFzZ0RpQUxJQTVJR3lBSEd5SUhJQWhCRUhVaUN5QUhJQXRLR3lBS1FSQjBRUkIxSUF0SUd5RUhJQWtnQmlBSlFSQjBRUkIxSWdvZ0JrRVFkRUVRZFNJTFNpSUdHeUlKUWYvL0EzRWdDeUFLSUFzZ0NpQUxTQnNnQmhzaUJpQUlRUkIwUVJCMUlnZ2dCaUFJU2hzZ0NVRVFkRUVRZFNBSVNCc2hCZ3dCQ3lBTERRQWdDRUVRZGlFSElBZ2hCZ3RCQVNFYklBWWdER29pQ0VFUWRFRVFkVUdBUUd0Qi8vOEFTdzBDSUFjZ0RXb2lCa0VRZEVFUWRVR0FFR3BCL3g5TERRSWdBaUFURUJRaUIwVU5BaUFBSUFZN0FhSUJJQUFnQ0RzQm9BRWdBQ0FITmdKMElBQWdFellDWkNBQUlBYzJBbmdnQUNBVE5nSm9JQUFnQUNnQ29BRWlEellDbkFFZ0FDQVBOZ0tZQVNBQUlBODJBcFFCSUFBZ0R6WUNrQUVnQUNBUE5nS01BU0FBSUE4MkFvZ0JJQUFnRHpZQ2hBRWdBU2dDbEFFaERpQUJMd0dtQVNFTklBRXZBYVFCSVF3Q2Z3SkFBa0FDUUNBQUtBTElBU0lHQkVBZ0JpZ0NCQ0FBS0FJRVJnUkFJQVlvQWdCQkJVMEVRQ0FHS0FLNEFTSUxRUkIySVFjZ0JpZ0NjQ0FPUncwRUlBc2hDUXdEQzBGL0lSSkJBQ0VKUVFBaEIwRUFJUXRCQUNFS0lBNUJmMFlOQWd3RUMwRi9JUkpCQUNFSlFRQWhCMEVBSVF0QkFDRUtJQTVCZjBZTkFRd0RDMEYvSVJKQkFDRUpRUUFoQjBFQUlRdEJBQ0VLSUE1QmYwY05BZ3NnQ1VILy93TnhJQWRCRUhSeURBSUxJQVlvQW1naEVpQUdLQUtnQVNFS0lBY2hDUXNnRDBFUWRpRUlJQTRnRTBZaUJpQU9JQkpHYWtFQlJ3UkFJQWdnQ1NBSlFSQjBRUkIxSWdrZ0NFRVFkRUVRZFVnaUJ4c2lDQ0FKSUE5QkVIVWlCaUFKSUFZZ0NVZ2JJQWNiSWdZZ0NrRVFkU0lISUFZZ0Iwb2JJQWhCRUhSQkVIVWdCMGdiSVFjZ0R5QUxJQXRCRUhSQkVIVWlDeUFQUVJCMFFSQjFJZ2xJSWdZYklnaEIvLzhEY1NBTElBa2dDeUFKSUF0SUd5QUdHeUlHSUFwQkVIUkJFSFVpQ1NBR0lBbEtHeUFJUVJCMFFSQjFJQWxJR3d3QkN5QUlJQXBCRUhZZ0Joc2hCeUFQSUFvZ0Joc0xJQXhxSWdoQkVIUkJFSFZCZ0VCclFmLy9BRXNOQWlBSElBMXFJZ1pCRUhSQkVIVkJnQkJxUWY4ZlN3MENJQUlnRGhBVUlnSkZEUUlnQUNBR093SENBU0FBSUFnN0FjQUJJQUFnQWpZQ2dBRWdBQ0FDTmdKOElBQWdEallDY0NBQUlBNDJBbXdnQUNBQUtBTEFBU0lHTmdLOEFTQUFJQVkyQXJnQklBQWdCallDdEFFZ0FDQUdOZ0t3QVNBQUlBWTJBcXdCSUFBZ0JqWUNxQUVnQUVHa0FXb2lBaUFHTmdJQUlCQWdBQ2dDZERZQ0NDQUZJQUJCaEFGcUlCQkJDR29nRlNBVVFRQkJBRUVRUVFnUURpQVFJQUFvQW53MkFnZ2dCU0FDSUJCQkNHb2dGU0FVUVFCQkNFRVFRUWdRRGd3QkN3SkFJQVpGQkVBZ0VrVUVRRUVBSVFrTUFnc2dGa1VFUUVFQUlRa01BZ3NnQ0VILy93TnhJQWRCRUhSeUlBMXlSUVJBUVFBaENRd0NDMEVBSVFrZ0VVSC8vd054SUFwQkVIUnlJQTl5UlEwQkN5QUJMd0dpQVNFTElBRXZBYUFCSVFrQ1FBSkFBa0FDUUFKQUlBQW9BdEFCSWdaRkRRQWdCaWdDQkNBT1J3MEFJQVlvQWdCQkJVME5BUXdDQ3dKQUlBQW9BdFFCSWdaRkRRQWdCaWdDQkNBT1J3MEFJQVlvQWdCQkJVc05BaUFHS0FKd0lSY2dCaWdDd0FFaERBd0RDMEYvSVJjZ0VrVU5BaUFXRFFJTUF3c2dCaWdDYkNFWElBWW9BcXdCSVF3TUFRdEJmeUVYQ3lBUElCTkdJZ1lnRFNBVFJpSU5haUFUSUJkR2FrRUJSd1JBSUFvZ0J5QUtRUkIwUVJCMUlnb2dCMEVRZEVFUWRTSU5TaUlHR3lJSElBMGdDaUFOSUFvZ0RVZ2JJQVliSWdZZ0RFRVFkU0lLSUFZZ0Nrb2JJQWRCRUhSQkVIVWdDa2diSVFjZ0VTQUlJQkZCRUhSQkVIVWlDaUFJUVJCMFFSQjFJZzFLSWdZYklnaEIvLzhEY1NBTklBb2dEU0FLSUExSUd5QUdHeUlHSUF4QkVIUkJFSFVpQ2lBR0lBcEtHeUFJUVJCMFFSQjFJQXBJR3lFSURBRUxJQWdnRVNBTkd5RUlJQWNnQ2lBTkd5RUhJQTBOQUNBR0RRQWdERUVRZGlFSElBd2hDQXRCQVNFYklBZ2dDV29pREVFUWRFRVFkVUdBUUd0Qi8vOEFTdzBDSUFjZ0Myb2lDVUVRZEVFUWRVR0FFR3BCL3g5TERRSUxJQUlnRXhBVUlnSkZCRUJCQVNFYkRBSUxJQUFnQ1RzQndnRWdBQ0FNT3dIQUFTQUFJQUkyQW5RZ0FDQVROZ0prSUFBZ0FqWUNnQUVnQUNBQ05nSjhJQUFnQWpZQ2VDQUFJQk0yQW5BZ0FDQVROZ0pzSUFBZ0V6WUNhQ0FBSUFBb0FzQUJJZ1kyQXJ3QklBQWdCallDdUFFZ0FDQUdOZ0swQVNBQUlBWTJBckFCSUFBZ0JqWUNyQUVnQUNBR05nS29BU0FBSUFZMkFxUUJJQUFnQmpZQ29BRWdBQ0FHTmdLY0FTQUFJQVkyQXBnQklBQWdCallDbEFFZ0FDQUdOZ0tRQVNBQUlBWTJBb3dCSUFBZ0JqWUNpQUVnQUNBR05nS0VBU0FRSUFJMkFnZ2dCU0FBUVlRQmFpQVFRUWhxSUJVZ0ZFRUFRUUJCRUVFUUVBNExRUUFoR3lBQUtBTEVBVUVCU3cwQUlBQW9BZ0FFUUNBRUlBTWdCU0FCUWNnQ2FoQllEQUVMSUFRZ0JSQWJDeUFRUVNCcUpBQWdHd3VUQ3dFUGZ5QUFLQUlBSWhFZ0FTQUJJQUFvQWdRaUNuQWlBV3NpQkVFSWRHb2dBVUVFZEdvaEJTQUtRUVIwSVFzZ0FDZ0NDQ0FLYkNJQVFRWjBJUVlnQVVFRGRDRUpJQUJCQ0hRaERDQUVRUVowSVJJZ0NrRUNkRUg4Ly8vL0EzRkJBblFoRUFOQUlBVWdEa0VDZENJQVFmQXBhaWdDQUNJQklBdHNhaUFBUWJBcGFpZ0NBQ0lBYWlFRUlBSWdBVUVFZEdvZ0FHb2hBQUpBSUFNZ0RrRUdkR29pQVNnQ0FDSUhRZi8vL3dkSEJFQWdBU2dDQkNFSUlBQXRBQUVoRFNBRUlBY2dBQzBBQUdwQnNDNXFMUUFBT2dBQUlBRW9BZ2doQnlBQUxRQUNJUThnQkNBSUlBMXFRYkF1YWkwQUFEb0FBU0FCS0FJTUlRZ2dBQzBBQXlFTklBUWdCeUFQYWtHd0xtb3RBQUE2QUFJZ0JDQUlJQTFxUWJBdWFpMEFBRG9BQXlBQktBSVVJUWNnQUMwQUVTRUlJQVFnQzJvaUJDQUJLQUlRSUFBdEFCQnFRYkF1YWkwQUFEb0FBQ0FCS0FJWUlRMGdBQzBBRWlFUElBUWdCeUFJYWtHd0xtb3RBQUE2QUFFZ0FTZ0NIQ0VISUFBdEFCTWhDQ0FFSUEwZ0QycEJzQzVxTFFBQU9nQUNJQVFnQnlBSWFrR3dMbW90QUFBNkFBTWdBU2dDSkNFSElBQXRBQ0VoQ0NBRUlBdHFJZ1FnQVNnQ0lDQUFMUUFnYWtHd0xtb3RBQUE2QUFBZ0FTZ0NLQ0VOSUFBdEFDSWhEeUFFSUFjZ0NHcEJzQzVxTFFBQU9nQUJJQUVvQWl3aEJ5QUFMUUFqSVFnZ0JDQU5JQTlxUWJBdWFpMEFBRG9BQWlBRUlBY2dDR3BCc0M1cUxRQUFPZ0FESUFFb0FqUWhCeUFBTFFBeElRZ2dCQ0FMYWlJRUlBRW9BakFnQUMwQU1HcEJzQzVxTFFBQU9nQUFJQUVvQWpnaERTQUFMUUF5SVE4Z0JDQUhJQWhxUWJBdWFpMEFBRG9BQVNBQktBSThJUUVnQUMwQU15RUFJQVFnRFNBUGFrR3dMbW90QUFBNkFBSWdCQ0FBSUFGcVFiQXVhaTBBQURvQUF3d0JDeUFBS0FJUUlRRWdCQ0FBS0FJQU5nSUFJQVFnRUdvaUJDQUJOZ0lBSUFBb0FqQWhBU0FFSUJCcUlnUWdBQ2dDSURZQ0FDQUVJQkJxSUFFMkFnQUxJQTVCQVdvaURrRVFSdzBBQ3lBTUlCRnFJQkpxSUFscUloQWdCbW9oRVNBS1FRTjBRZmovLy84SGNTSUxRUUoyUVFKMElRNUJFQ0VLQTBBZ0NrRUNkRUVNY1NJQVFmQXBhaWdDQUNJQklBdHNJQUJCc0NscUtBSUFJZ0JxSUJFZ0VDQUtRUk5MSWdVYmFpRUVJQUpCd0FKQmdBSWdCUnRxSUFGQkEzUWdBR3BxSVFBQ1FDQURJQXBCQm5ScUlnRW9BZ0FpQlVILy8vOEhSd1JBSUFFb0FnUWhCaUFBTFFBQklRa2dCQ0FGSUFBdEFBQnFRYkF1YWkwQUFEb0FBQ0FCS0FJSUlRVWdBQzBBQWlFTUlBUWdCaUFKYWtHd0xtb3RBQUE2QUFFZ0FTZ0NEQ0VHSUFBdEFBTWhDU0FFSUFVZ0RHcEJzQzVxTFFBQU9nQUNJQVFnQmlBSmFrR3dMbW90QUFBNkFBTWdBU2dDRkNFRklBQXRBQWtoQmlBRUlBdHFJZ1FnQVNnQ0VDQUFMUUFJYWtHd0xtb3RBQUE2QUFBZ0FTZ0NHQ0VKSUFBdEFBb2hEQ0FFSUFVZ0JtcEJzQzVxTFFBQU9nQUJJQUVvQWh3aEJTQUFMUUFMSVFZZ0JDQUpJQXhxUWJBdWFpMEFBRG9BQWlBRUlBVWdCbXBCc0M1cUxRQUFPZ0FESUFFb0FpUWhCU0FBTFFBUklRWWdCQ0FMYWlJRUlBRW9BaUFnQUMwQUVHcEJzQzVxTFFBQU9nQUFJQUVvQWlnaENTQUFMUUFTSVF3Z0JDQUZJQVpxUWJBdWFpMEFBRG9BQVNBQktBSXNJUVVnQUMwQUV5RUdJQVFnQ1NBTWFrR3dMbW90QUFBNkFBSWdCQ0FGSUFacVFiQXVhaTBBQURvQUF5QUJLQUkwSVFVZ0FDMEFHU0VHSUFRZ0Myb2lCQ0FCS0FJd0lBQXRBQmhxUWJBdWFpMEFBRG9BQUNBQktBSTRJUWtnQUMwQUdpRU1JQVFnQlNBR2FrR3dMbW90QUFBNkFBRWdBU2dDUENFQklBQXRBQnNoQUNBRUlBa2dER3BCc0M1cUxRQUFPZ0FDSUFRZ0FDQUJha0d3TG1vdEFBQTZBQU1NQVFzZ0FDZ0NDQ0VCSUFRZ0FDZ0NBRFlDQUNBRUlBNXFJZ1FnQVRZQ0FDQUFLQUlZSVFFZ0JDQU9haUlFSUFBb0FoQTJBZ0FnQkNBT2FpQUJOZ0lBQ3lBS1FRRnFJZ3BCR0VjTkFBc0w1Z0VCQjM4Q1FDQUFLQUlBSWdWRkRRQWdBRUVCTmdJOElBQW9BamdOQUNBQUtBSWNJUVpCLy8vLy93Y2hBZ05BQTBBZ0JTQURRU2hzYWlJRUtBSVlCRUFnQkNBQklBUW9BaEFpQkNBQ1NDSUhHeUVCSUFRZ0FpQUhHeUVDQ3lBRFFRRnFJZ01nQmswTkFDQUJSUTBDSUFBb0Fnd2dBQ2dDRUNJRFFRUjBhaUlDSUFFb0FnQTJBZ0FnQWlBQktBSWtOZ0lNSUFJZ0FTZ0NIRFlDQkNBQ0lBRW9BaUEyQWdnZ0FDQURRUUZxTmdJUVFRQWhBeUFCUVFBMkFoZ2dBU2dDRkNFRVFRQWhBVUgvLy8vL0J5RUNJQVFOQUFzZ0FDQUFLQUlzUVg5cU5nSXNEQUFBQ3dBTEM5d0dBUXAvSUFCQ0FEY0NFQUpBQWtBQ1FDQURSUTBBQWtBQ1FDQUJJQUFvQWpBaUEwY0VRQ0FEUVFGcUlBQW9BaUFpQkhBaUNTQUJSZzBCSUFBb0FnQWdBQ2dDSEVFb2JHb29BZ0FoQ3dOQUFrQUNRQ0FBS0FJb0lnY0VRQ0FBS0FJQUlRaEJBQ0VEQTBBZ0NDQURRU2hzYWlJRktBSVVRWDlxUVFGTkJFQWdCU0FGS0FJTUlnVWdCRUVBSUFVZ0NVc2JhellDQ0FzZ0EwRUJhaUlESUFkSERRQUxJQWNnQUNnQ0dFa05Ba0YvSVFWQkFDRURRUUFoQkFOQUlBZ2dBMEVvYkdvaUJpZ0NGRUYvYWtFQlRRUkFJQVlvQWdnaUJpQUVJQVZCZjBZZ0JpQUVTSElpQmhzaEJDQURJQVVnQmhzaEJRc2dBMEVCYWlJRElBZEhEUUFMSUFWQkFFNE5BVUVCRHd0QkFDRUhJQUFvQWhnTkFVRUJEd3NnQ0NBRlFTaHNhaUlEUVFBMkFoUWdBQ0FIUVg5cUlnYzJBaWdnQXlnQ0dBMEFJQUFnQUNnQ0xFRi9hallDTEFzZ0FDZ0NMQ0lGSUFBb0Fod2lDRThFUUNBQUtBSTREUVlnQUNnQ0FDRU1BMEJCQUNFRVFmLy8vLzhISVFaQkFDRURBMEFnRENBRFFTaHNhaUlLS0FJWUJFQWdDaUFFSUFvb0FoQWlDaUFHU0NJTkd5RUVJQW9nQmlBTkd5RUdDeUFEUVFGcUlnTWdDRTBOQUFzQ1FDQUVSUTBBSUFBb0Fnd2dBQ2dDRUNJR1FRUjBhaUlESUFRb0FnQTJBZ0FnQXlBRUtBSWtOZ0lNSUFNZ0JDZ0NIRFlDQkNBRElBUW9BaUEyQWdnZ0FDQUdRUUZxTmdJUUlBUkJBRFlDR0NBRUtBSVVEUUFnQUNBRlFYOXFJZ1UyQWl3TElBVWdDRThOQUFzTElBQW9BZ0FpQkNBSVFTaHNhaUlESUFrMkFnd2dBMEtBZ0lDQUVEY0NFQ0FEUVFBMkFoZ2dBeUFKTmdJSUlBQWdCMEVCYWpZQ0tDQUFJQVZCQVdvMkFpd2dCQ0FJUVFGcUVDY2dDVUVCYWlBQUtBSWdJZ1J3SWdrZ0FVY05BQXNDUUNBQUtBSVFJZ2xGRFFBZ0FDZ0NBQ0lGSUFBb0Fod2lCRUVvYkdvaUNDZ0NBQ0VISUFBb0Fnd2hCa0VBSVFNRFFDQUhJQVlnQTBFRWRHb29BZ0JIQkVBZ0NTQURRUUZxSWdOSERRRU1BZ3NMSUFSRkRRQkJBQ0VEQTBBZ0N5QUZJQU5CS0d4cUlna29BZ0JIQkVBZ0JDQURRUUZxSWdOSERRRU1BZ3NMSUFrZ0J6WUNBQ0FJSUFzMkFnQUxJQUlOQlNBQUtBSXdJUU1NQWdzZ0FrRUFSdzhMSUFJTkF3c2dBU0FEUmcwQUlBQWdBU0FBS0FJZ0lnQnFRWDlxSUFCd05nSXdDMEVBRHdzRFFBd0FBQXNBQ3lBQUlBRTJBakJCQUF0MUFRTi9Ba0FnQUNnQ0FDSUJSUTBBSUFBb0FoeEJmMFlOQUFOQUlBRWdBa0VvYkNJRGFpZ0NCQkFFSUFBb0FnQWlBU0FEYWtFQU5nSUVJQUpCQVdvaUFpQUFLQUljUVFGcVNRMEFDd3NnQVJBRUlBQkJBRFlDQUNBQUtBSUVFQVFnQUVFQU5nSUVJQUFvQWd3UUJDQUFRUUEyQWd3TGd3RUJBMzhDUUNBQUtBSUFJZ1pGRFFBZ0FDZ0NIRUYvUmcwQUEwQWdCaUFIUVNoc0lnaHFLQUlFRUFRZ0FDZ0NBQ0lHSUFocVFRQTJBZ1FnQjBFQmFpSUhJQUFvQWh4QkFXcEpEUUFMQ3lBR0VBUWdBRUVBTmdJQUlBQW9BZ1FRQkNBQVFRQTJBZ1FnQUNnQ0RCQUVJQUJCQURZQ0RDQUFJQUVnQWlBRElBUWdCUkJkQzRBQ0FRSi9JQUFnQlRZQ09DQUFJQVEyQWlBZ0FFTC8vd00zQWlRZ0FFSUFOd0lzSUFBZ0EwRUJJQU5CQVVzYklnTTJBaGdnQUNBRElBSWdCUnNpQWpZQ0hDQUFRYWdGRUFvaUF6WUNBRUgvL3dNaEJBSkFJQU5GRFFCQkFDRUZJQU5CQUVHb0JSQUhJUVlnQWtGL1J3UkFJQUZCZ0FOc1FTOXlJUVZCQUNFREEwQWdCaUFEUVNoc2FpSUhJQVVRQ2lJQk5nSUVJQUZGRFFJZ0J5QUJRUUFnQVd0QkQzRnFOZ0lBSUFNZ0Fra2hBU0FEUVFGcUlRTWdBUTBBQ3lBQ1FRUjBRUkJxSVFVTElBQkJ4QUFRQ2lJQk5nSUVJQUFnQlJBS0lnSTJBZ3dnQWtVTkFDQUJSUTBBUVFBaEJDQUJRUUJCeEFBUUJ4b2dBRUlBTndJUUN5QUVDOU1CQVFkL1FRRWhBUUpBSUFBb0FqZ05BQ0FBS0FJY0lRVWdBQ2dDQUNFR1FmLy8vLzhISVFOQkFDRUJBMEFnQmlBQlFTaHNhaUlFS0FJWUJFQWdCQ0FDSUFRb0FoQWlCQ0FEU0NJSEd5RUNJQVFnQXlBSEd5RURDeUFCUVFGcUlnRWdCVTBOQUFzZ0FrVUVRRUVCRHdzZ0FDZ0NEQ0FBS0FJUUlnTkJCSFJxSWdFZ0FpZ0NBRFlDQUNBQklBSW9BaVEyQWd3Z0FTQUNLQUljTmdJRUlBRWdBaWdDSURZQ0NDQUFJQU5CQVdvMkFoQkJBQ0VCSUFKQkFEWUNHQ0FDS0FJVURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3lBQkMvVUVBUWgvSUFBb0FpZ2lCQVJBSUFBb0FnQWhCd05BSUFjZ0JVRW9iR29pQmlnQ0ZFRi9ha0VCVFFSQUlBWWdCaWdDRENJSUlBSkxCSDhnQ0NBQUtBSWdhd1VnQ0FzMkFnZ0xJQVZCQVdvaUJTQUVSdzBBQ3d0QkFDRUVBa0FnQVNnQ0FFVU5BQ0FCS0FJRUlnVkJBa3NOQUVFQUlRY2dBaUVHQTBBQ1FBSkFBa0FnQlVFQ1J3UkFJQUVnQjBFTWJHb29BZ2doQkFKQUlBVkZCRUFnQmlBRWF5SUdRWDlLRFFFZ0FDZ0NJQ0FHYWlFR0RBRUxJQVFnQm1vaUJrRUFJQUFvQWlBaUJTQUdJQVZJRzJzaEJnc2dCaUVKSUFZZ0Frc0VRQ0FHSUFBb0FpQnJJUWtMSUFBb0FoZ2lDa1VFUUVFQkR3c2dBQ2dDQUNFSVFRQWhCUU5BSUFnZ0JVRW9iR29pQkNnQ0ZDSUxRWDlxUVFGTkJFQWdCQ2dDQ0NBSlJnMERDMEVCSVFRZ0JVRUJhaUlGSUFwSERRQUxEQVVMUVFFaEJDQUFLQUlZSWdsRkRRUWdBU0FIUVF4c2FpZ0NEQ0VLSUFBb0FnQWhDRUVBSVFVRFFDQUlJQVZCS0d4cUlnUW9BaFJCQTBZRVFDQUVLQUlJSUFwR0RRTUxRUUVoQkNBRlFRRnFJZ1VnQ1VjTkFBc01CQXNnQlVFQVNBUkFRUUVQQzBFQklRUWdDMEVCU3cwQkRBTUxRUUVoQkNBRlFRQklEUUlMSUFjZ0F5SUVTUVJBQTBBZ0FDZ0NCQ0lKSUFSQkFuUnFJQWtnQkVGL2FpSUVRUUowYWlnQ0FEWUNBQ0FFSUFkTERRQUxJQUFvQWdBaENBc2dBQ2dDQkNBSFFRSjBhaUFJSUFWQktHd2lDV28yQWdBZ0IwRUJhaUlISVFRZ0J5SUZJQU5OQkVBRFFDQUFLQUlFSWdnZ0JVRUNkR29vQWdBaUNpQUFLQUlBSUFscVJ3UkFJQWdnQkVFQ2RHb2dDallDQUNBRVFRRnFJUVFMSUFWQkFXb2lCU0FEVFEwQUN3dEJBQ0VFSUFFZ0IwRU1iR29vQWdRaUJVRURTUTBBQ3dzZ0JBc0hBRUhFR2hBS0M3Y0JBUUovSXdCQkVHc2lCaVFBSUFaQkFEWUNEQ0FBSUFFZ0FpQUdRUXhxRUNvaUIwRjljVVVFUUFOQUlBQWdBU0FHS0FJTUlnZHFJZ0VnQWlBSGF5SUNJQVpCREdvUUtpSUhRWDF4UlEwQUN3c2dCMEVCUmdSQUlBUWdBQ2dDRUNJQktBSTBRUVIwTmdJQUlBVWdBU2dDT0VFRWREWUNBQ0FESUFCQnhBbHFJZ0FvQWhRaUFTQUFLQUlRU1FSL0lBQWdBVUVCYWpZQ0ZDQUFLQUlNSUFGQkJIUnFCVUVBQ3lnQ0FEWUNBQXNnQmtFUWFpUUFJQWNMU1FFQmZ5QUFRUUJCeEJvUUJ5SUNRYlFLYWtFQk5nSUFJQUpDZ0lLQWdJQUVOd0lFSUFCQndCQVFDaUlDTmdLd0dpQUNSUVJBUVFFUEN5QUJCRUFnQUVFQk5nTEFDUXRCQUF1NkJBRUpmd0pBQWtBZ0FVRUVTUTBBSUFBdEFBQU5BQ0FBTFFBQkRRQWdBQzBBQWlJSFFRRkxEUUJCQXlFRUlBQkJBMm9oQlVFQ0lRaEJmU0VNQWtBRFFDQUZJUVlDZnlBSVFRRnFJQWRCL3dGeElnVkZEUUFhUVFBaEJ5QUZRUUZHUVFBZ0NFRUJTeHNOQWtFQUN5RUlJQVJCZjNNaERDQUdRUUZxSVFVZ0JpMEFBQ0VISUFSQkFXb2lCQ0FCUncwQUN5QURJQUUyQWdCQkFROExJQVFoQ2tFQUlRaEJBQ0VGQTBCQkFTQUlJQWNnQmkwQUFDSUxSV29pQ1VFQ1Joc2dDQ0FMUVFOR0d5RUlJQXBCQVdvaENnSkFJQXRCQVVjTkFDQUpRUUpKRFFBZ0FpQUtJQXhxSUFsQmYzTnFJZ0UyQWd4QkFDQUpRWDFxSWdZZ0JpQUpTeHNoQnd3REMwRUFJQWtnQ3hzaEIwRUJJQVVnQ1VFQ1N4c2dCU0FMR3lFRklBWkJBV29oQmlBQklBcEhEUUFMSUFJZ0FTQU1haUFIYXlJQk5nSU1EQUVMSUFJZ0FUWUNERUVCSVFoQkFDRUhDeUFDUVFBMkFoQWdBa0VBTmdJSUlBSWdBQ0FFYWlJQU5nSUVJQUlnQURZQ0FDQURJQVFnQjJvZ0FXbzJBZ0JCQVNFREFrQWdCUTBBUVFBaEF5QUlSUTBBSUFJQ2Z5QUNLQUlNSWdGRkJFQWdBQ0VFUVFBTUFRc2dBQ0VFUVFBaEJnTkFJQUZCZjJvaEFTQUVMUUFBSVFVQ2Z3SkFJQVpCQWtjTkFDQUZRUU5HQkVBZ0FVVUVRRUVCRHdzZ0JDMEFBVUVEU3dSQVFRRVBDMEVBSVFZZ0JFRUJhZ3dDQ3lBRlFRTlBEUUJCQVE4TElBQWdCVG9BQUVFQUlBWkJBV29nQlJzaEJpQUFRUUZxSVFBZ0JFRUJhZ3NoQkNBQkRRQUxJQUlvQWd3TElBQWdCR3RxTmdJTUN5QURDd3Z0TWhrQVFZWUlDOG9GWmlBbUVBWUlaUmhsR0VNUVF4QkRFRU1RUXhCREVFTVFReEFpQ0NJSUlnZ2lDQ0lJSWdnaUNDSUlJZ2dpQ0NJSUlnZ2lDQ0lJSWdnaUNBQUFBQUFBQUFBQWFrQktNQ29vQ2lCcE9HazRTU2hKS0NrZ0tTQUpHQWtZYURCb01HZ3dhREJJSUVnZ1NDQklJQ2dZS0Jnb0dDZ1lDQkFJRUFnUUNCQm5LR2NvWnlobktHY29aeWhuS0djb1J4aEhHRWNZUnhoSEdFY1lSeGhIR0c1Z1RsZ3VVQTVRYmxoT1VDNUlEa2dOUUExQVRVaE5TQzFBTFVBTk9BMDRiVkJ0VUUxQVRVQXRPQzA0RFRBTk1HdElhMGhyU0d0SWEwaHJTR3RJYTBoTE9FczRTemhMT0VzNFN6aExPRXM0S3pBck1Dc3dLekFyTUNzd0t6QXJNQXNvQ3lnTEtBc29DeWdMS0Fzb0N5Z0FBQUFBTDJndmFCQ0FVSUF3Z0JCNGNJQlFlREI0RUhCd2VGQndNSEFRYUc5d2IzQlBhRTlvTDJBdllBOWdEMkJ2YUc5b1QyQlBZQzlZTDFnUFdBOVlBQUFBQUFBQUFBQm1PRVlnSmlBR0VHWXdSaGdtR0FZSVpTaGxLQ1VRSlJCa0lHUWdaQ0JrSUdRWVpCaGtHR1FZUXhCREVFTVFReEJERUVNUVF4QkRFQUFBQUFBQUFBQUFhVWhKT0NrNENUQUlLQWdvU0RCSU1DZ3dLREFJSUFnZ1owQm5RR2RBWjBCSEtFY29SeWhIS0Njb0p5Z25LQ2NvQnhnSEdBY1lCeGdBQUFBQWJYaHRlRzZBVG9BdWdBNkFMbmdPZUU1NExuQk5jRTF3RFhBTmNHMXdiWEJOYUUxb0xXZ3RhQTFvRFdodGFHMW9UV0JOWUMxZ0xXQU5ZQTFnREZnTVdBeFlERmhNV0V4WVRGaE1XQ3hZTEZnc1dDeFlERkFNVUF4UURGQnNZR3hnYkdCc1lFeFFURkJNVUV4UUxGQXNVQ3hRTEZBTVNBeElERWdNU0d0WWExaHJXR3RZYTFocldHdFlhMWhMU0V0SVMwaExTRXRJUzBoTFNFdElLMGdyU0N0SUswZ3JTQ3RJSzBnclNBdEFDMEFMUUF0QUMwQUxRQXRBQzBCclVHdFFhMUJyVUd0UWExQnJVR3RRUzBCTFFFdEFTMEJMUUV0QVMwQkxRQ3RBSzBBclFDdEFLMEFyUUN0QUswQUxPQXM0Q3pnTE9BczRDemdMT0FzNEFFSGdEUXV1Q1FZWVJqZ21PQVlRWmtoR01DWXdCZ2dsS0NVb1JTaEZLQ1VnSlNCRklFVWdKUmdsR0dWQVpVQkZHRVVZSlJBbEVHUTRaRGhrT0dRNFpEQmtNR1F3WkRCa0tHUW9aQ2hrS0dRZ1pDQmtJR1FnWkJoa0dHUVlaQmhFRUVRUVJCQkVFQ1FJSkFna0NDUUlCQUFFQUFRQUJBQUFBQXFBYW9CS2dDcUFDbmhxZUVwNEtuZ0tjR3B3U25BcWNBcG9LV2dwYUFsZ0NXQkphRWxvS1dBcFlBbFlDVmhwYUdsb1NXQkpZQ2xZS1ZnSlVBbFFhR0JvWUdoZ2FHQklXRWhZU0ZoSVdDaFFLRkFvVUNoUUNFZ0lTQWhJQ0Vob1dHaFlhRmhvV0VoUVNGQklVRWhRS0Vnb1NDaElLRWdJUUFoQUNFQUlRQWM0QnpnSE9BYzRCemdIT0FjNEJ6Z0hNQWN3QnpBSE1BY3dCekFITUFjd1IwaEhTRWRJUjBoSFNFZElSMGhIU0Fjb0J5Z0hLQWNvQnlnSEtBY29CeWhuVUdkUVoxQm5VR2RRWjFCblVHZFFSMEJIUUVkQVIwQkhRRWRBUjBCSFFDZEFKMEFuUUNkQUowQW5RQ2RBSjBBSElBY2dCeUFISUFjZ0J5QUhJQWNnQmdnbUNBQUFCZ0FHRUNZUVJoQUFBQVlZSmhoR0dHWVlCaUFtSUVZZ1ppQUdLQ1lvUmlobUtBWXdKakJHTUdZd0JqZ21PRVk0WmpnR1FDWkFSa0JtUUFaSUpraEdTR1pJQmxBbVVFWlFabEFHV0NaWVJsaG1XQVpnSm1CR1lHWmdCbWdtYUVab1ptZ0djQ1p3Um5CbWNBWjRKbmhHZUdaNEJvQW1nRWFBWm9BQUFFTVFBZ0FDQUNFSUlRZ2hDQ0VJWnlCbklFZ2dLQ0JIR0VjWUp4Z25HQVlnQmlBR0lBWWdCaGdHR0FZWUJoZ0dFQVlRQmhBR0VHWVlaaGhtR0dZWUpoQW1FQ1lRSmhBR0NBWUlCZ2dHQ0FBQVpWVkVSRFEwSXlNakl4TVRFeE1CQVFFQkFRRUJBUUVCQVFFQkFRRUJBUG5wMmNqSXVMaW5wNmVubDVlWGw0YUdob2FHaG9hR2RuWjJkbloyZG5ibTFzYTJwYVdWbFlTRWhJUjBkSFIwWkdSa1pGUlVWRlJEUTBORFEwTkRRek16TXpNek16TXpJeU1qSXlNakl5TVRFeE1URXhNVEV3TURBd01EQXdNRDFyYkZ4YVdsbFpXRWhJU0VWRlJVVkVSRVJFUUVCQVFFYzNOemMzTnpjM05qWTJOalkyTmpZek16TXpNek16TXpJeU1qSXlNakl5TVRFeE1URXhNVEU4VzFwUVdVbEhSME5EUWtKSU9EZzROalkyTmpVMU5UVTBORFEwTVRFeE1UdFpXa3BJU0VKQ1FVRkFRRWMzTnpjMk5qWTJOVFUxTlRRME5EUXpNek16T21CaFVWaElTRWhKT1RrNU9UazVPVGMzTnpjM056YzNOalkyTmpZMk5qWTFOVFUxTlRVMU5UUTBORFEwTkRRME16TXpNek16TXpNeU1qSXlNakl5TWpsZ1lWRlhSMGRIU0RnNE9EZzRPRGcyTmpZMk5qWTJOalEwTkRRME5EUTBNek16TXpNek16TXlNakl5TWpJeU1qVWxKU1VsSlNVbEpTVWxKU1VsSlNVb1lHSlNVVUZCUVVjM056YzNOemMzTmpZMk5qWTJOall6TXpNek16TXpNelVsSlNVbEpTVWxKU1VsSlNVbEpTVWtKQ1FrSkNRa0pDUWtKQ1FrSkNRa0lXQm5WMUpDUWtKRk5UVTFOVFUxTlRZbUppWW1KaVltSmlZbUppWW1KaVlrSkNRa0pDUWtKQ1FrSkNRa0pDUWtJeU1qSXlNakl5TWpJeU1qSXlNakl5RlFWa1pDTWpJeU5TVWxKU1VsSlNVa0pDUWtKQ1FrSkNNakl5TWpJeU1qSUVGQ01qTXpOVFUwRkJRVUZCUVVGQkJCUkRReUlpSWlJeE1URXhNVEV4TVFNVE1qSWhJU0VoQWhJaElSRUJJaElCQVRJaUVnSkRNeUlpRWhJQ0FsTkRNeU1TRWdJQ0V5TkRNMk5UQWdJQVFhQVhDeVFFQkFVR0J3Z0pDZ3dORHhFVUZoa2NJQ1FvTFRJNFAwZFFXbVZ4ZjVDaXRzdmkvLzhBUWVBWEN5UUNBZ0lEQXdNREJBUUVCZ1lIQndnSUNRa0tDZ3NMREF3TkRRNE9EdzhRRUJFUkVoSUFRY1VZQzRRQkFRQUFBUUFBQVFBQUFRQUJBUUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBZ0VCQWdFQkFnRUJBZ0VDQXdFQ0F3SUNBd0lDQkFJREJBSURCQU1EQlFNRUJnTUVCZ1FGQndRRkNBUUdDUVVIQ2dZSUN3WUlEUWNLRGdnTEVBa01FZ29ORkFzUEZ3MFJHUUFBQUFBQUFBQUFCUUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUVIVUdRc1ZCUUFBQUFBQUFBQUhBQUFBL3dBQUFBQUFBQUQvQUVIMEdRc1ZCUUFBQUFRQUFBQUFBQUFBL3dBQUFBQUFBQUQvQUVHVUdnc0ZCUUFBQUFRQVFhUWFDNlVCQndBQUFBUUFBQUFDQUFBQUJBQUFBQUVBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUFRQUFBQVFBQUFBREFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFCQUFBQUJBQUFBQVFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBRUFBQUFFQUFBQUJBQUFBQVFBQUFBREFBQUFCQUFBQUFZQUFBQUFBQUFBRFFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFEL0FFSFVHd3NWRFFBQUFBQUFBQUFQQUFBQS93QUFBQUFBQUFEL0FFSDBHd3NWRFFBQUFBUUFBQUFJQUFBQS93QUFBQUFBQUFEL0FFR1VIQXUxQ3cwQUFBQUVBQUFBQ0FBQUFBQUFBQUFQQUFBQUJBQUFBQW9BQUFBRUFBQUFDUUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQVFBQUFBSkFBQUFCQUFBQUFzQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUJBQUFBQWtBQUFBRUFBQUFEQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUNRQUFBQVFBQUFBTUFBQUFCQUFBQUFzQUFBQUVBQUFBRGdBQUFBRUFBQUFLQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBb0FBQUFFQUFBQUFBQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUJBQUFBQ2dBQUFBRUFBQUFMQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFFQUFBQUtBQUFBQVFBQUFBc0FBQUFFQUFBQUFBQUFBQVFBQUFBQkFBQUFBUUFBQUE0QUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBQkFBQUFEZ0FBQUFRQUFBQUVBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQUVBQUFBT0FBQUFBUUFBQUE4QUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUFRQUFBQTRBQUFBQkFBQUFEd0FBQUFRQUFBQUVBQUFBQkFBQUFBVUFBQUFFQUFBQUFnQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFDQUFBQUJBQUFBQWdBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBSUFBQUFFQUFBQUF3QUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUVBQUFBQWdBQUFBUUFBQUFEQUFBQUJBQUFBQWdBQUFBRUFBQUFDUUFBQUFRQUFBQUdBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFCQUFBQUFZQUFBQUVBQUFBREFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBRUFBQUFCZ0FBQUFRQUFBQUhBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQVFBQUFBR0FBQUFCQUFBQUFjQUFBQUVBQUFBREFBQUFBUUFBQUFOQUFBQUFRQUFBQTRBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFCQUFBQURnQUFBUDhBQUFBRUFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBRUFBQUFMQUFBQUFRQUFBQTRBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBc0FBQUFCQUFBQURnQUFBQVFBQUFBQkFBQUEvd0FBQUFRQUFBQUNBQUFBQ2dBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFJQUFBQUtBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFBUUFBQUE4QUFBQUNBQUFBQ2dBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBQkFBQUFEd0FBQUFJQUFBQUtBQUFBQkFBQUFBVUFBQUQvQUFBQUFBQUFBQVFBQUFBR0FBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUJBQUFBQVlBQUFEL0FBQUFEQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUF3QUFBQVFBQUFBR0FBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFEQUFBQUJBQUFBQVlBQUFBRUFBQUFDUUFBQVA4QUFBQU1BQUFBL3dBQUFBSUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBRC9BQUFBQWdBQUFQOEFBQUFJQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFRQUFBQUhBQUFBL3dBQUFBSUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFCQUFBQUFjQUFBRC9BQUFBQWdBQUFBUUFBQUFOQUFBQS93QUFBQWdBQUFBREFBQUFEd0FBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQU1BQUFBUEFBQUFBQUFBQUFVQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUF3QUFBQThBQUFBQkFBQUFDZ0FBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFEQUFBQUR3QUFBQUVBQUFBS0FBQUFBQUFBQUFVQUFBQUVBQUFBQUFBQUFBRUFBQUFMQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBc0FBQUFFQUFBQUFRQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUJBQUFBQ3dBQUFBRUFBQUFPQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFFQUFBQUxBQUFBQVFBQUFBNEFBQUFFQUFBQUFRQUFBQVFBQUFBRUFBQUFBQUFBQUFjQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQS93QkIxQ2NMRlFjQUFBQUFBQUFBRFFBQUFQOEFBQUFBQUFBQS93QkI5Q2NMRlFjQUFBQUVBQUFBQWdBQUFQOEFBQUFBQUFBQS93QkJsQ2dMMlFFSEFBQUFCQUFBQUFJQUFBQUFBQUFBRFFBQUFBUUFBQUFJQUFBQUJBQUFBQU1BQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUF3QUFBQVFBQUFBSkFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFEQUFBQUJBQUFBQVlBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBTUFBQUFFQUFBQUJnQUFBQVFBQUFBSkFBQUFCQUFBQUF3QUFBQUFBQUFBQkFBQUFBQUFBQUFFQUFBQUNBQUFBQXdBQUFBSUFBQUFEQUFBQUFBQUFBQUVBQUFBQUFBQUFBUUFBQUFJQUFBQURBQUFBQWdBQUFBTUFFSDRLUXNGQkFBQUFBUUFRWWdxQ3lVRUFBQUFCQUFBQUFnQUFBQUlBQUFBREFBQUFBd0FBQUFJQUFBQUNBQUFBQXdBQUFBTUFFR3hMZ3ZJQmdFQ0F3UUZCZ2NJQ1FvTERBME9EeEFSRWhNVUZSWVhHQmthR3h3ZEhoOGdJU0lqSkNVbUp5Z3BLaXNzTFM0dk1ERXlNelExTmpjNE9UbzdQRDArUDBCQlFrTkVSVVpIU0VsS1MweE5UazlRVVZKVFZGVldWMWhaV2x0Y1hWNWZZR0ZpWTJSbFptZG9hV3ByYkcxdWIzQnhjbk4wZFhaM2VIbDZlM3g5Zm4rQWdZS0RoSVdHaDRpSmlvdU1qWTZQa0pHU2s1U1ZscGVZbVpxYm5KMmVuNkNob3FPa3BhYW5xS21xcTZ5dHJxK3dzYkt6dExXMnQ3aTV1cnU4dmI2L3dNSEN3OFRGeHNmSXljckx6TTNPejlEUjB0UFUxZGJYMk5uYTI5emQzdC9nNGVMajVPWG01K2pwNnV2czdlN3Y4UEh5OC9UMTl2ZjQrZnI3L1AzKy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL0FBQUFBQUVBQUFBRUFBQUFCUUFBQUFJQUFBQURBQUFBQmdBQUFBY0FBQUFJQUFBQUNRQUFBQXdBQUFBTkFBQUFDZ0FBQUFzQUFBQU9BQUFBRHdBQUFBQUFBQUFCQUFBQUFRQkJoRFVMSVFFQUFBQUJBQUFBQVFBQUFBRUFBQUFDQUFBQUFnQUFBQUVBQUFBQ0FBQUFBZ0JCdERVTEJRVUFBQUFFQUVIRU5RdkpCZ2NBQUFBRUFBQUFBZ0FBQUFRQUFBQUJBQUFBQkFBQUFBUUFBQUFFQUFBQUF3QUFBQVFBQUFBR0FBQUFBQUFBQUEwQUFBQUVBQUFBQ0FBQUFBQUFBQUFQQUFBQUJBQUFBQW9BQUFBRUFBQUFDUUFBQUFRQUFBQU1BQUFBQkFBQUFBc0FBQUFFQUFBQURnQUFBQUFBQUFBUkFBQUFCQUFBQUJBQUFBQUFBQUFBRXdBQUFBUUFBQUFTQUFBQUFBQUFBQlVBQUFBRUFBQUFGQUFBQUFBQUFBQVhBQUFBQkFBQUFCWUFBQUFCQUFBQUNnQUFBQUVBQUFBTEFBQUFCQUFBQUFBQUFBQUVBQUFBQVFBQUFBRUFBQUFPQUFBQUFRQUFBQThBQUFBRUFBQUFCQUFBQUFRQUFBQUZBQUFBQkFBQUFBSUFBQUFFQUFBQUF3QUFBQVFBQUFBSUFBQUFCQUFBQUFrQUFBQUVBQUFBQmdBQUFBUUFBQUFIQUFBQUJBQUFBQXdBQUFBRUFBQUFEUUFBQUFFQUFBQVNBQUFBQVFBQUFCTUFBQUFFQUFBQUVBQUFBQVFBQUFBUkFBQUFBUUFBQUJZQUFBQUJBQUFBRndBQUFBUUFBQUFVQUFBQUJBQUFBQlVBQUFBQkFBQUFDd0FBQUFFQUFBQU9BQUFBQkFBQUFBRUFBQUQvQUFBQUJBQUFBQUVBQUFBUEFBQUFBZ0FBQUFvQUFBQUVBQUFBQlFBQUFQOEFBQUFBQUFBQUJBQUFBQU1BQUFBRUFBQUFCZ0FBQUFRQUFBQUpBQUFBL3dBQUFBd0FBQUFFQUFBQUJ3QUFBUDhBQUFBQ0FBQUFCQUFBQUEwQUFBRC9BQUFBQ0FBQUFBRUFBQUFUQUFBQUFnQUFBQklBQUFBRUFBQUFFUUFBQVA4QUFBQVFBQUFBQVFBQUFCY0FBQUFDQUFBQUZnQUFBQVFBQUFBVkFBQUEvd0FBQUJRQUFBQURBQUFBRHdBQUFBRUFBQUFLQUFBQUFBQUFBQVVBQUFBRUFBQUFBQUFBQUFFQUFBQUxBQUFBQVFBQUFBNEFBQUFFQUFBQUFRQUFBQVFBQUFBRUFBQUFBQUFBQUFjQUFBQUVBQUFBQWdBQUFBQUFBQUFOQUFBQUJBQUFBQWdBQUFBRUFBQUFBd0FBQUFRQUFBQUdBQUFBQkFBQUFBa0FBQUFFQUFBQURBQUFBQU1BQUFBVEFBQUFBUUFBQUJJQUFBQUFBQUFBRVFBQUFBUUFBQUFRQUFBQUF3QUFBQmNBQUFBQkFBQUFGZ0FBQUFBQUFBQVZBQUFBQkFBQUFCUUFBQUFCQUFBQUFRQUFBQUlBQUFBQ0FBQUFBd0FBQUFNQUFBQURBQUFBQXdBQUFBQUFBQUFCQUFBQUFnQUFBQU1BQUFBRUFBQUFCUUFBQUFZQUFBQUhBQUFBQ0FBQUFBa0FBQUFLQUFBQUN3QUFBQXdBQUFBTkFBQUFEZ0FBQUE4QVFaWThDeTRCQVFFQkFRRUNBZ0lDQWdJREF3TURBd01FQkFRRUJBUUZCUVVGQlFVR0JnWUdCZ1lIQndjSEJ3Y0lDQWdJQUVIUVBBdEZDZ0FBQUEwQUFBQVFBQUFBQ3dBQUFBNEFBQUFTQUFBQURRQUFBQkFBQUFBVUFBQUFEZ0FBQUJJQUFBQVhBQUFBRUFBQUFCUUFBQUFaQUFBQUVnQUFBQmNBQUFBZEFFR2hQUXN6QVFJREJBVUFBUUlEQkFVQUFRSURCQVVBQVFJREJBVUFBUUlEQkFVQUFRSURCQVVBQVFJREJBVUFBUUlEQkFVQUFRSURBRUhrUFF2TUFnRUFBQUFDQUFBQUF3QUFBQVFBQUFBRkFBQUFCZ0FBQUFjQUFBQUlBQUFBQ1FBQUFBb0FBQUFMQUFBQURBQUFBQTBBQUFBT0FBQUFEd0FBQUJBQUFBQVJBQUFBRWdBQUFCTUFBQUFVQUFBQUZRQUFBQllBQUFBWEFBQUFHQUFBQUJrQUFBQWFBQUFBR3dBQUFCd0FBQUFkQUFBQUhRQUFBQjRBQUFBZkFBQUFJQUFBQUNBQUFBQWhBQUFBSWdBQUFDSUFBQUFqQUFBQUl3QUFBQ1FBQUFBa0FBQUFKUUFBQUNVQUFBQWxBQUFBSmdBQUFDWUFBQUFtQUFBQUp3QUFBQ2NBQUFBbkFBQUFKd0FBQUFFQUFBQUNBQUFBQkFBQUFBZ0FBQUFRQUFBQUlBQUFBRUFBQUFDQUFBQUFMeDhQQUJjYkhSNEhDdzBPSnlzdExoQURCUW9NRXhVYUhDTWxLaXdCQWdRSUVSSVVHQVlKRmhrZ0lTSWtLQ1lwQUJBQkFnUUlJQU1GQ2d3UEx3Y0xEUTRHQ1I4akpTb3NJU0lrS0NjckxTNFJFaFFZRXhVYUhCY2JIUjRXR1NZcEFMQXRCRzVoYldVQjZ3TmtBQVp0WlcxamNIa0JCbkpsYzJsNlpRSUNaaklEQW1ZekJBRm1CUUptTlFZQ1pqWUhBbVkzQ0FKbU9Ba0NaamtLQVdVTEEyWXhNUXdEWmpFeURRTm1NVE1PQTJZeE5BOERaakUxRUFObU1UWVJBMll4TnhJRFpqRTRFd05tTVRrVUEyWXlNQlVEWmpJeEZnTm1NaklYQTJZeU14Z0RaakkwR1FObU1qVWFBMll5TmhzRFpqSTNIQU5tTWpnZEEyWXlPUjREWmpNd0h3Tm1NekVnQTJZek1pRURaak16SWdObU16UWpBMll6TlNRRFpqTTJKUU5tTXpjbUEyWXpPQ2NEWmpNNUtBTm1OREFwQTJZME1Tb0RaalF5S3dObU5ETXNBMlkwTkMwRFpqUTFMZ05tTkRZdkEyWTBOekFEWmpRNE1RTm1ORGt5QTJZMU1ETURaalV4TkFObU5USTFBMlkxTXpZRFpqVTBOd05tTlRVNEEyWTFOamtEWmpVM09nTm1OVGc3QTJZMU9Ud0Raall3UFFObU5qRStBMlkyTWo4RFpqWXpRQU5tTmpSQkEyWTJOVUlEWmpZMlF3Tm1OamRFQTJZMk9FVURaalk1UmdObU56QkhBMlkzTVVnRFpqY3lTUU5tTnpOS0EyWTNORXNEWmpjMVRBTm1OelpOQTJZM04wNERaamM0VHdObU56bFFBMlk0TUZFRFpqZ3hVZ05tT0RKVEEyWTRNMVFEWmpnMFZRTm1PRFZXQTJZNE5sY0RaamczV0FObU9EaFpBMlk0T1ZvRFpqa3dXd05tT1RGY0EyWTVNbDBEWmprelhnTm1PVFJmQTJZNU5XQUJhV0VCWjJJQlpHTUVaakV3TVFLNktXUUFBd0FBQVFBQ0FBRUJBQUFDQkFBQ2NEQUJBbkF4QWdKc01nTUNiRE1EQ1FBQ2NEQUJBbkF4QWdKc01nTUNiRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FRSUFBSndNQUVDYkRFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNGQkFBQ2NEQUJBbkF4QWdKc01nTUNiRE1HR0FBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpFV0Eyd3lNaGNEYkRJekJ3WUFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQVVDYkRVSUJnQUNjREFCQW5BeEFnSndNZ01DYkRNRUFtdzBCUUpzTlFrUUFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUVBBMnd4TlFvTUFBSndNQUVDYkRFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVMQXdBQ2NEQUJBbkF4QWdKc01nd1JBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRFFZQUFuQXdBUUp3TVFJQ2NESURBbXd6QkFKc05BVUNiRFVPRUFBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDY0RZSEFuQTNDQUp3T0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVQQlFBQ2NEQUJBbXd4QWdKc01nTUNiRE1FQW13MEVBc0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQVJBZ0FDY0RBQkFuQXhFZzhBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkJNREFBSndNQUVDYkRFQ0Ftd3lGQU1BQW5Bd0FRSndNUUlDYkRJVkJnQUNjREFCQW5BeEFnSndNZ01DYkRNRUFtdzBCUUpzTlJZbUFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2NEUUZBbkExQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUVBBMnd4TlJBRGJERTJFUU5zTVRjU0Eyd3hPQk1EYkRFNUZBTnNNakFWQTJ3eU1SWURiREl5RndOc01qTVlBMnd5TkJrRGJESTFHZ05zTWpZYkEyd3lOeHdEYkRJNEhRTnNNamtlQTJ3ek1COERiRE14SUFOc016SWhBMnd6TXlJRGJETTBJd05zTXpVa0Eyd3pOaVVEYkRNM0Z3TUFBbkF3QVFKd01RSUNjRElZRmdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpFWkVnQUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaEVEYkRFM0doWUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0p3TndnQ2NEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0RXdOc01Ua1VBMnd5TUJVRGJESXhHd1lBQW5Bd0FRSndNUUlDYkRJREFtd3pCQUpzTkFVQ2JEVWNCd0FDY0RBQkFuQXhBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlkQlFBQ2NEQUJBbkF4QWdKc01nTUNiRE1FQW13MEhnVUFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQjhCQUFKd01DQUVBQUp3TUFFQ2NERUNBbXd5QXdKc015RWJBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRVFOc01UY1NBMnd4T0JNRGJERTVGQU5zTWpBVkEyd3lNUllEYkRJeUZ3TnNNak1ZQTJ3eU5Ca0RiREkxR2dOc01qWWlGUUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNjRFlIQW5BM0NBSndPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPUlFEYkRJd0l4SUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0p3TndnQ2NEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE55UVVBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRVFOc01UY1NBMnd4T0JNRGJERTVKUThBQW5Bd0FRSndNUUlDY0RJREFtd3pCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkNZREFBSndNQUVDYkRFQ0Ftd3lKdzhBQW5Bd0FRSndNUUlDYkRJREFtd3pCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkNnQ0FBSndNQUVDYkRFcEVRQUNjREFCQW5BeEFnSndNZ01DY0RNRUFuQTBCUUp3TlFZQ2NEWUhBbkEzQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaW9IQUFKd01BRUNjREVDQW5BeUF3SndNd1FDYkRRRkFtdzFCZ0pzTmlzUEFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUXNCQUFDY0RBQkFuQXhBZ0pzTWdNQ2JETXRCUUFDY0RBQkFuQXhBZ0p3TWdNQ2JETUVBbXcwTGdNQUFuQXdBUUpzTVFJQ2JESXZBd0FDY0RBQkFtd3hBZ0pzTWpBSkFBSndNQUVDY0RFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NE1SWUFBbkF3QVFKd01RSUNiRElEQW13ekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0RXdOc01Ua1VBMnd5TUJVRGJESXhNZ29BQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NU13UUFBbkF3QVFKc01RSUNiRElEQW13ek5BUUFBbkF3QVFKc01RSUNiRElEQW13ek5ROEFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hORFlGQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRM0JRQUNjREFCQW5BeEFnSnNNZ01DYkRNRUFtdzBPQWNBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyT1FjQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNiRFVHQW13Mk9nY0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJPd2NBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyUEFVQUFuQXdBUUp3TVFJQ2NESURBbXd6QkFKc05EMEZBQUp3TUFFQ2NERUNBbkF5QXdKc013UUNiRFErRHdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMFB4SUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE4wQUhBQUp3TUFFQ2NERUNBbXd5QXdKc013UUNiRFFGQW13MUJnSnNOa0VRQUFKd01BRUNjREVDQW5BeUF3SndNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOVUlKQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0UXdnQUFuQXdBUUp3TVFJQ2JESURBbXd6QkFKc05BVUNiRFVHQW13MkJ3SnNOMFFRQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOVVVUQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0p3TmdjQ2NEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOUkFEYkRFMkVRTnNNVGNTQTJ3eE9FWVJBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFtdzRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyUnhNQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNjRFVHQW5BMkJ3SndOd2dDYkRnSkFtdzVDZ05zTVRBTEEyd3hNUXdEYkRFeURRTnNNVE1PQTJ3eE5BOERiREUxRUFOc01UWVJBMnd4TnhJRGJERTRTQmNBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUp3TkFVQ2NEVUdBbkEyQndKd053Z0NjRGdKQW5BNUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkE4RGJERTFFQU5zTVRZUkEyd3hOeElEYkRFNEV3TnNNVGtVQTJ3eU1CVURiREl4RmdOc01qSkpRd0FDY0RBQkFuQXhBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlIQW13M0NBSnNPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPUlFEYkRJd0ZRTnNNakVXQTJ3eU1oY0RiREl6R0FOc01qUVpBMnd5TlJvRGJESTJHd05zTWpjY0Eyd3lPQjBEYkRJNUhnTnNNekFmQTJ3ek1TQURiRE15SVFOc016TWlBMnd6TkNNRGJETTFKQU5zTXpZbEEyd3pOeVlEYkRNNEp3TnNNemtvQTJ3ME1Da0RiRFF4S2dOc05ESXJBMncwTXl3RGJEUTBMUU5zTkRVdUEydzBOaThEYkRRM01BTnNORGd4QTJ3ME9USURiRFV3TXdOc05URTBBMncxTWpVRGJEVXpOZ05zTlRRM0EydzFOVGdEYkRVMk9RTnNOVGM2QTJ3MU9Ec0RiRFU1UEFOc05qQTlBMncyTVQ0RGJEWXlQd05zTmpOQUEydzJORUVEYkRZMVFnTnNOalpLRXdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDY0RZSEFuQTNDQUp3T0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UaExGQUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNjRFlIQW5BM0NBSndPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPVXdIQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmswTkFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1rNExBQUp3TUFFQ2NERUNBbkF5QXdKc013UUNiRFFGQW13MUJnSnNOZ2NDYkRjSUFtdzRDUUpzT1FvRGJERXdUd1FBQW5Bd0FRSndNUUlDYkRJREFtd3pVQTRBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUp3TkFVQ2NEVUdBbkEyQndKd053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTlJEQUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKc05RWUNiRFlIQW13M0NBSnNPQWtDYkRrS0Eyd3hNQXNEYkRFeFVoTUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0VXlBQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNjRFVHQW13MkJ3SnNOd2dDYkRnSkFtdzVDZ05zTVRBTEEyd3hNUXdEYkRFeURRTnNNVE1PQTJ3eE5BOERiREUxRUFOc01UWVJBMnd4TnhJRGJERTRFd05zTVRrVUEyd3lNQlVEYkRJeEZnTnNNaklYQTJ3eU14Z0RiREkwR1FOc01qVWFBMnd5TmhzRGJESTNIQU5zTWpnZEEyd3lPUjREYkRNd0h3TnNNekZVRmdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpGVkN3QUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1GWUhBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSnNObGNxQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOUkFEYkRFMkVRTnNNVGNTQTJ3eE9CTURiREU1RkFOc01qQVZBMnd5TVJZRGJESXlGd05zTWpNWUEyd3lOQmtEYkRJMUdnTnNNalliQTJ3eU54d0RiREk0SFFOc01qa2VBMnd6TUI4RGJETXhJQU5zTXpJaEEyd3pNeUlEYkRNMEl3TnNNelVrQTJ3ek5pVURiRE0zSmdOc016Z25BMnd6T1NnRGJEUXdLUU5zTkRGWUV3QUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaEVEYkRFM0VnTnNNVGhaQ0FBQ2NEQUJBbXd4QWdKc01nTUNiRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNXZzRBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTmJCQUFDY0RBQkFtd3hBZ0pzTWdNQ2JETmNDUUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNiRFlIQW13M0NBSnNPRjBJQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0pzTmdjQ2JEZGVDQUFDY0RBQkFtd3hBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlIQW13M1h3d0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVdBQVlRZ0FBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FtdzJCd0pzTjJJREFBSndNQUVDY0RFQ0Ftd3lZdzBBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5IixVPWE7Ri5oMjY0TW9kdWxlPW5ldyBXZWJBc3NlbWJseS5Nb2R1bGUoVS5kZWNvZGUoTCkpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh5LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTtjb25zdCBZPUYscT1BPT4oSSxnLEIpPT57QS5IRUFQVTguY29weVdpdGhpbihJLGcsZytCKX07ZnVuY3Rpb24gSyhBLEkpe2NvbnN0IGc9QSVJO3JldHVybiBnPjA/QStJLWc6QX1jb25zdCBIPUE9Pkk9Pntjb25zdCBnPUEuSEVBUFU4Lmxlbmd0aCxCPTY1NTM2LFE9MjE0NzQ4MzY0ODtpZihJPlEpcmV0dXJuITE7Y29uc3QgQz0xNjc3NzIxNjtmb3IobGV0IEQ9MTtEPD00O0QqPTIpe2xldCBFPWcqKDErLjIvRCk7RT1NYXRoLm1pbihFLEkrMTAwNjYzMjk2KTtjb25zdCB3PU1hdGgubWluKFEsSyhNYXRoLm1heChDLEksRSksQikpO3RyeXtjb25zdHttZW1vcnk6b309QTtvLmdyb3cody1vLmJ1ZmZlci5ieXRlTGVuZ3RoKzY1NTM1Pj4+MTYpO2NvbnN0e2J1ZmZlcjpOfT1vO3JldHVybiBBLkhFQVA4PW5ldyBJbnQ4QXJyYXkoTiksQS5IRUFQVTg9bmV3IFVpbnQ4QXJyYXkoTiksQS5IRUFQMzI9bmV3IEludDMyQXJyYXkoTiksITB9Y2F0Y2h7fX1yZXR1cm4hMX0sUj02NTUzNixjPTUyNTE3OTIsZD04NzUyLHQ9MTY3NzcyMTY7Y2xhc3MgaXtjb25zdHJ1Y3Rvcigpe3RoaXMud2lkdGg9MCx0aGlzLmhlaWdodD0wLHRoaXMucGljPW5ldyBVaW50OEFycmF5KDApO2NvbnN0IEk9bmV3IFdlYkFzc2VtYmx5Lk1lbW9yeSh7aW5pdGlhbDp0L1IsbWF4aW11bToyMTQ3NDgzNjQ4L1J9KSxnPXttZW1vcnk6SSxIRUFQODpuZXcgSW50OEFycmF5KEkuYnVmZmVyKSxIRUFQVTg6bmV3IFVpbnQ4QXJyYXkoSS5idWZmZXIpLEhFQVAzMjpuZXcgSW50MzJBcnJheShJLmJ1ZmZlcil9O2cuSEVBUDMyW2Q+PjJdPWM7Y29uc3R7ZXhwb3J0czpCfT1uZXcgV2ViQXNzZW1ibHkuSW5zdGFuY2UoWS5oMjY0TW9kdWxlLHtoMjY0OnttZW1vcnk6SSxtZW1jcHk6cShnKSxyZXNpemU6SChnKX19KTt0aGlzLm1lbW9yeT1nLHRoaXMuYXNtPUIsdGhpcy5wU3RvcmFnZT1CLmgyNjRhbGxvYygpLHRoaXMucFdpZHRoPUIubWFsbG9jKDQpLHRoaXMucEhlaWdodD1CLm1hbGxvYyg0KSx0aGlzLnBQaWN0dXJlPUIubWFsbG9jKDQpLHRoaXMuZGVjQnVmZmVyPUIubWFsbG9jKDEwMjQqMTAyNCksQi5pbml0KHRoaXMucFN0b3JhZ2UsMCl9ZGVjb2RlKEkpe2NvbnN0e21lbW9yeTpnLGFzbTpCfT10aGlzO2cuSEVBUFU4LnNldChJLHRoaXMuZGVjQnVmZmVyKTtjb25zdCBRPUIuZGVjb2RlKHRoaXMucFN0b3JhZ2UsdGhpcy5kZWNCdWZmZXIsSS5ieXRlTGVuZ3RoLHRoaXMucFBpY3R1cmUsdGhpcy5wV2lkdGgsdGhpcy5wSGVpZ2h0KTtpZihRPT09aS5QSUNfUkRZKXtjb25zdCBDPXRoaXMud2lkdGg9Zy5IRUFQMzJbdGhpcy5wV2lkdGg+Pj4yXSxEPXRoaXMuaGVpZ2h0PWcuSEVBUDMyW3RoaXMucEhlaWdodD4+PjJdLEU9Zy5IRUFQMzJbdGhpcy5wUGljdHVyZT4+Ml0sdz1DKkQqMy8yO3RoaXMucGljPWcuSEVBUFU4LnN1YmFycmF5KEUsRSt3KX1yZXR1cm4gUX19dmFyIGI9eS5IMjY0RGVjb2Rlcj1pO2kuUkRZPTAsaS5QSUNfUkRZPTEsaS5IRFJTX1JEWT0yLGkuRVJST1I9MyxpLlBBUkFNX1NFVF9FUlJPUj00LGkuTUVNQUxMT0NfRVJST1I9NTtmdW5jdGlvbiB4KEEpe3JldHVybiBVaW50OEFycmF5LmZyb20oYXRvYihBKSxJPT5JLmNoYXJDb2RlQXQoMCkpfWNvbnN0IHM9c2VsZixrPW5ldyBiLG09Si5zZWNvbmQvNTthZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixBPT57Y29uc3R7dGltZXN0YW1wOkksZmxhZ3M6ZyxpbmRleDpCfT1BLmRhdGEsUT1EYXRlLm5vdygpLUk7aWYoUT5tJiZnIT09Myl7TShgRnJhbWUgaXMgJHtRfW1zIGxhdGUsIGRyb3BwaW5nYCxCKTtyZXR1cm59Y29uc3QgQz14KEEuZGF0YS5lbmNvZGVkRnJhbWUpLEQ9ay5kZWNvZGUoQyk7dHJ5e2lmKEQhPT0xKXtNKGBmYWlsZWQgdG8gZGVjb2RlIGZyYW1lLCBzdGF0dXM6ICR7bihEKX1gLEIsQyk7cmV0dXJufWNvbnN0e3BpYzpFLGhlaWdodDp3LHdpZHRoOm99PWs7aWYoRS5sZW5ndGg9PT0wfHx3PT09MHx8bz09PTApe00oImRlY29kZWQgZnJhbWUgaGFzIG5vIGRhdGEiLEIsQyk7cmV0dXJufWNvbnN0IE49bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KEUpO3MucG9zdE1lc3NhZ2Uoe3RpbWVzdGFtcDpBLmRhdGEudGltZXN0YW1wLHl1djpOLGhlaWdodDp3LHdpZHRoOm8saW5kZXg6Qn0pfWNhdGNoKEUpe00oRSxCKX19KTtmdW5jdGlvbiBNKEEsSSxnKXtzLnBvc3RNZXNzYWdlKHtlcnJvcjpgaDI2NCBkZWNvZGVyIHdvcmtlcjogJHtBfWAsaW5kZXg6SX0pfWZ1bmN0aW9uIG4oQSl7c3dpdGNoKEEpe2Nhc2UgMDpyZXR1cm4iUkRZIjtjYXNlIDE6cmV0dXJuIlBJQ19SRFkiO2Nhc2UgMjpyZXR1cm4iSERSU19SRFkiO2Nhc2UgMzpyZXR1cm4iRVJST1IiO2Nhc2UgNDpyZXR1cm4iUEFSQU1fU0VUX0VSUk9SIjtjYXNlIDU6cmV0dXJuIk1FTUFMTE9DX0VSUk9SIjtkZWZhdWx0OnJldHVybiBBLnRvU3RyaW5nKCl9fX0pfSkoKTsK",blob=typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs)],{type:"text/javascript;charset=utf-8"});function WorkerWrapper(){const o=blob&&(window.URL||window.webkitURL).createObjectURL(blob);try{return o?new Worker(o,{}):new Worker("data:application/javascript;base64,"+encodedJs,{type:"module"})}finally{o&&(window.URL||window.webkitURL).revokeObjectURL(o)}}class RealtimePlayer extends HTMLElement{constructor(){super(),__publicField(this,"drawer"),this.drawer=new H264BytestreamCanvasDrawer(()=>new WorkerWrapper,()=>{},()=>{})}connectedCallback(){this.style.background="black",this.innerHTML='',this.drawer.start(),this.drawer.setCanvas(this.querySelector("canvas"))}drawVideoFrame(s){this.drawer.receiveEncodedFrame(s)}}customElements.define("formant-realtime-player",RealtimePlayer);var classnamesExports={},classnames$1={get exports(){return classnamesExports},set exports(o){classnamesExports=o}};/*! + Copyright (c) 2018 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames +*/(function(o){(function(){var s={}.hasOwnProperty;function _(){for(var j=[],$=0;${const[s,_]=reactExports.useState();return reactExports.useEffect(()=>{K0(o).then(j=>_(j)).catch(j=>{throw console.log("Failed fetching device",{err:j}),new Error("Authentication failed, please authenticate and try again")})},[o]),s},z1=async o=>{try{if(await Authentication.waitTilAuthenticated())return o()}catch(s){throw s}},$1=(o,s)=>s?JSON.parse(o):o,J0=async(o,s)=>{await z1(async()=>{try{const _=await App$2.getCurrentModuleConfiguration();if(!_)return;const j=$1(_,s);o(j),App$2.addModuleConfigurationListener($=>{const _e=$1($.configuration,s);o(_e)})}catch(_){throw _}})},X0=o=>{const[s,_]=reactExports.useState("");return reactExports.useEffect(()=>{J0(_,o==null?void 0:o.parse)},[]),s};function Oe(){return reactExports.useContext(d0)}const d0=reactExports.createContext(void 0);function Ke({theme:o,children:s,parseConfiguration:_,scoped:j=!1}){const $=X0({parse:!!_}),_e=createTheme(o==="dark"?c0:o==="light"?P0:O0),et={configuration:$};return jsx(ThemeProvider,{theme:_e,children:jsx(j?D0:CssBaseline,{children:jsx(d0.Provider,{value:et,children:s})})})}Chart.register(...registerables);Chart.register(...registerables);Chart.register(...registerables);Chart.register(...registerables);Chart.register(...registerables);Chart.register(...registerables);Chart.register(...registerables);const I2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACGFjVEwAAAAwAAAAAChseJYAAAAaZmNUTAAAAAAAAAAwAAAAMAAAAAAAAAAAAAQAZAAAR67u9QAAAK9JREFUaN7t0zEKwkAQheEVCxvPYGFla+UFbD1CwNY6ra23sPEAxgRNNKBpLWITA6IsBCV6A/txV1svsPB/8GCYah/LKAUA/4hI4xQWAxs7O/X4JNGtY1BkeXCWX4pMm50zBUZx5U3WWmbRVRbhRQ6rUvJl6bnzBbun397W0kvuMowrGZsy0+jmu1Ng/+iaEm8TsWmaubMxO7cO4dVXaT3/xs4AAAAAAAAAAAAAYH0AgOhTVFHYG+UAAAAaZmNUTAAAAAEAAAALAAAADwAAABUAAAAGAAQAZAAAZ7Lt7AAAAWFmZEFUAAAAAmjefZG/S0JxFMXPveKv7wu0paBcAh0iaHYKHGsIJBD6LyQS2qopsCGClpZoaWp6BZo0uDcIEUE/ECG33veJkz6R926DT9OUDlwuX/icA+d+qVT6DBuOU1aQDAAAUo1H1GZqK9XDH7Hu9XOaOGMTowsCQJm209nHDLFmWrCJoImgidEihgM+qJm1pSn4G0FTE/c1sW8gaKI5yw2d/IUJAPbuPs4UJG+IQEGgRGBAJCpIZ7NrT6NkAGi5wWObWA/SGfZgk010LiI0AV9nV9oW4XAIj036wnzbnYABgDrJS030Ml7WJobNXDytPBsT8G2OXIsD+d/UgckiWracSGFUcFzrpYapBNuGX1RBYIh0oxxYnYITD81kxPNeDUjIv4pv8q5o1k/Nl5tFBSlMwqjPhPFYj4Xd8Lsh3qIC/Lt797NhAKh8bUD4JgJJREVqMbg7+FdHwqg24sPnD+oal8W6KwosAAAAGmZjVEwAAAADAAAAEQAAABkAAAAVAAAABQAEAGQAALMDT1sAAAImZmRBVAAAAARo3p3UPWgUQRQH8FUEbcQvLPRACxVRiU2QJGDwNKD4BRHR4oIYJIpK1OJSKBI5gqASBY1E8AOSIim8Yr9mdu4M5FIIKiJiuK/dzO3ebQ4EwUrSqJjn2xyrG6sZH/xhmeK3b94woyhYALDkrT7d8gETfCuyxRhfnlULuUktD6/VPLxTp3Mc16SQtFY6o2pFIFoBXmFyDeymFDKqlZNjehFeYjTEaAObmySfYsLIkMa3PNNLP0b0EowjlF7ACkD1/JhUN4+M8oNhowzPERr9i83rerFdGLln2CsHDfszYvBkMfYxlYKlwtAAcXruGDbcx0SxEaN4ThgJ/thvOu8HTBv+wb48TburhKE+wtuum848YhDFHuvlQakhXyUz40lzBhCDELtr2N8fGvZ2YeQicWKXCJ9DDELsFua26UxIddNNK/09hANiEGB9iN1AKEWcI+LIVHVFgrreWVKBALuMudbA+BWZe9VpuSdP0QokMN2InQ8x6iSltnWUuhOd1IXTCHUtYDzAvl3IljYII/uzfNdBy/t5DKETUYzyF1Ld7LW84QOWB4cwEexXl+nuEUaaqL+mlVW/tltVWIx5bxSZV7CJ1XqbWQ1aEfqDUQ+OW25CGIlPwbIdrJbfjVAzIiHWYXn1wzJHvinjd2xlPiAGIdaGiZNqXGrIGzOz6maEolgL83dKIetIPbY+M1tBDAJsG/OHlP8qnMFqVt+3NtLBb68GzUQnZ+QFAAAAGmZjVEwAAAAFAAAAFgAAACIAAAAVAAAABQAEAGQAAAaksUUAAALMZmRBVAAAAAZo3q3WW0gUYRTAcQu6EUQPUZAVZQhGF6noRkJiYWiKRVgYGEuJSWQkFsUuxYqaUVQqRkp2sSxSY+c+m5BW9JhBsM7uzM7szmw+JD1E0I2k9nRGZ2va19PAgWUe/r8z3zzMZmTgBQDThlllyysc+3fG/7hkWZ8lBUaHB5lReMaE4EUgNGzfI4f7mXAlwyjAY1jCsYGhQMhHDvcySv1jVoEBHAajNiAzo1+GhLeZpPA9JrSyhw1PPMSwDTz5AygPyFt3M8rVO2wY7uO4gGQgoOSRwu2yPu8mF3l/C8NuoI9R3vj9MJ0Ub+Mj1R1cBDpxbOBuCmAUDylsb3aNi7xuw3AaMN6LT0SKX+TU7Zc5NYkA2MANB7jNKi3kF9nIq30tnApXcFIAPsGPTiGcTQr7WGOpn1e/NvEquIF2LsySt/bxWsN5XoMGnCYMX3KAVjaymxSu6x+bc47XLC+GL7gBXg13dY3MIMVP8dGKej4KZzHqBpr5SC35SE7w0ZcIwGkH8E0C0Y9+QVtACtdw+vrjgv6rVoiCG/ByWgd56ypR764WdEAAbKBuCvjp5dR1pHBlwFjoEYxPRzF8zAFOTgL6EHnrCsk4UykY4MHov4C2jxQu71dmHhANrUI0IAVUTQExz3NzNileJsRL94sxQAAOuQFR95KPpESIyWUYTwM+H+HUxaRwoWDmFInxiRIM73WAgzYgGT3krQvk2PVCKQ4IgAtIlgsx2mcsnzHn75DiHwowngJKp4AR8mdsq2TW5EkmIAA7HaAY4yWCcZh2HrjZJskc2YbxNGC8iPoZyw0m8jbIVhIBSAH5NiDGm8kvcrVsDeTKFiAAm/8C33eJiSxSOCdoLs+RrW8IQBrQSt56hfSuMVtOAAKwxgE2StYjcnjR4PjcZcGEkYVxG1iF5742aBX/l//YS4SxzEx5rBWB3qyn1h773m+SXYWCYYXpgQAAABpmY1RMAAAABwAAABsAAAArAAAAFQAAAAUABABkAACqa+X8AAADYGZkQVQAAAAIaN612GlIFVEUB3CLKCgqqA8RFQmStBethPEorGglizLbLJFKLLV9p16FFZK2K9FitFhJvlnuzJgUBkVfwqLSmTfvzbx572W0QH1opYU8nZtvcPTzvRcODPPlx/9yuPdwk5JwAUCnOlGfXI9Fv5N4LU2zuimBpnpNaII6rPuBxnr6jwtWIxirBUEHCSEF6z8aaNzHBasS9G3Vog53sQSEEuhXQl4MYI5dFRpTbor671uIeVFZ0K9xSXdVNMquiQYgCi5aI+gtgYA+lTl2Q7N6XRaNd4iCi95uRRv8fujMHKwQ9Q0XEbqCRdHrCfSO1LSGOUYTlMvBhguIdEDf0+TMwbOSmXZOCraUS0HwopVisJhLs5yUgtWnEUMUXPSSaPyqJMYQ5lipaA8qlczviIKLVlBUMGq4pDsqmUdKJBNOYFH0TAI9T4Kz2DcLaeheLJnxY4hRtLQN1f0PH3ZhD0rmqsOyCYjCcQ9aJhv57PcSr5oDcuixXw7BES8qm5/OBYJ9mXt7iTVunxz6iyh0QE9xaZZdcrhyD0KIggf9U6wYI5ljRZLTb7sc/rxTDoMXPSSHHnBJt5mE9mxBDFHYiRBF91OUWAuYY0ur9a6bSDhcRMLgorsoSkJ2AY8RIo/Yi/KJBQUIUnRrAt1Nwju4bOc6YtXlIdgB/bK5xujPHMsRreG5xPqDKHjRQmJd5JIuW4mcX4sIouCiG4n1t0gOTWTfLPea+6xU7I/ZxAYXXd+KPkniMeBmqnbhcsWGlQhSNMdNqthZzLFpePIvUSKvMhGk6Ko2tHl13csezMEMEklfpEQAUVjWDrX8XJplvmJLCxFb3B79sUJ1BjPH5mhWylwl8nMBQl40S7GruKSboTolsxUHEAUvmqmGfcyxNMnsma46b2eqDnjRDOI85zJN+5RY7jTEEAUXnfcfdXLZ7yUmSFOjT31qFFx0FkWJ82HG/Uhv5t4kEpsyRY22TEXQh9D0NrSES7NMUKNVkxFDFDzor3Q1ksocG629GThOi31DFNqhmiNxSTeyNn5wjBYDRKEDOps5Np687T5ci8VHIeaiE1vRF1zSpda+zhqKCKJA0bEJlM/jCt5rKWr80RAtDhQd0Yo2c3vMSa6NJidr8WcpCKZq8eZhquP7ByfqQHlEWABmAAAAGmZjVEwAAAAJAAAAMAAAACUAAAAAAAAACwAEAGQAAKmGMjkAAANYZmRBVAAAAApo3tXYaUgUYRgH8C2kKDuwqOy+sMNOpAMzFsOSLumgzNKskFLssKL73AorJLtLwsqgg1qoZuadmd2lwA/Rl5CoaHdn59rdRjqgPhSdSD49kw6Osn6M7X3h//35vc/zMMPrcPyjc0tUelxjAu9uMAG4ibnN+OEuxs3461wu6Oig4VQx/uJqLP46xg65x75eQwXAvOnLXLDuChbeBvLe7BAViAuslHGRDTZeZoNgh9QwwXIHLecMG3SfQwBCwIJcZQK/akgghQpAJaMOrmSlbwgBC1JlQh4G7lPTheOsdKyCleAUxoScb4ZcIsFsOhaa1HUtZ6XoCQSYkMoWiN9VW5tAB4KVCo5yEiAETtogp7lAKR1zBNDhEBd64uJCcMwO4aRPFx8Ee1Nh2EeUtP1c6DdCoA3kLDULvZuTa/Zi8QgBG6ShnA+MpwJQxur9dnDy512cDHbIES70mJoubCWhvdsQgBDYhcWbkAMmhCg5VACWu/2dNhFZLiMyWJDdJoSE1M2i0pkKRAlRl5QSBTYjwoRsb4bsIfJOakZpPVF8JYhoA/my9X6gPxWAdYySWkSUBoSAHbKFKNXUdKGQ1y6txcIRAhZkI1F+l3GhqXQstNfolc+rHwuJChZkQxPkqfn1pgKRK6hbVvIq5CPChKyzOsKreVQAMvGPdBmvvcpFhAkpaIEYq30vE6lALCZa1hJeA4TAilYQxUXNQi/kVXYRApa2hnxfJehDqQDME5WR83ntZw4Wb4fk8eodarowW9Ar5vI6IATskFxBdlIByGCl7lmC/naOoIMdspjoz6l51XPykaJMBCAELMiCvxC9iI45wpvOEMLPnEIYLEi2CSH6h9mPtJ5UGKaRSHq6EG6ciQgnFj+rBVJBzUJPEcJ3piMAIWCD/MoStFFUACaK9YPSxMhXhEAriKiz/82sJ3vfHBzgMYKDPVFtmBjVhmNSMKMxqWJEmyBGfkwSI4AQsENmiHr8X/V6euqLe3veQB9MMmYgBiGAEBiBQQiMwcIRAggBCzK1CfLCMZOPJsUTkOgx3D08BiRhTEjfGJCRMSCTmyF/WxhPQCefcbiL14BuCGgPMiQGZFwTxIj/DvjeJyZ469nOXqOxPUj/GJBRYtQYK+jOP0moWT95E2zZAAAAGmZjVEwAAAALAAAADgAAAAUAAAAVAAAAKwAEAGQAAH1y1dMAAAB5ZmRBVAAAAAxo3n3MsQ3CQAxG4c93qZmAOeip2IE9WINpKLJBJmCCjBGIKe4UoQhh6cmy/fsFGOcrcYt0KKhSwYCykSobYZxPxNTvIPpQe7hkC++l5+8nSLyxCitKZOvZdhWDiKf0sxIvxE6wJsXl+MAdC/8Fi2gEHzF0I+cJ3N4OAAAAGmZjVEwAAAANAAAAJgAAACsAAAAKAAAABQAEAGQAAHinmB8AAAQvZmRBVAAAAA5o3sWYXYhVVRTHf/9976iZZfmgYL2kTOaYhigZJcFQWI2pZWZICX1ARUWTfSmIcDFRQ/xAqpcQ66UHH2oUHbGQiR56yAStRHQaxFQsSCGl6c7Z557Vw73n3jNnxmAg716wH849m3t++7/W2nvtJUZoZqaje3+6F2DOklk/SDKug2kkk7u7e0dPKPcfFGp3VcyeW8aMfay1o3Xg/wZzI5k8dqC83OPaPcIDFdR+udz/7vVQbERgMUz0Ai+owgmPW/P9nmO3BQWLoMsj76nBCWIxLm4pbAoK1vHkzD5vfNRQq+rSCJ7r+fLE/GBgAG7M6JIXv3ugOoRHisSOUslcMLCOjtYrHpVStRrD5sybdWJlMDCAE8faPvXiqJfwyrhUfNjd3XtzMLBSSUmsQqcHaySC8NKkcjla3fQNNm+fd53cI+xpAQ7DVVcaFQq6e9mitt6mK5ZahfgdD/2ZJMDDqIGYzUFcmdqLT8w858W2wUkgvFj62VcnFwQDA5Dr3+Sl3xqJUAWsyLaXenqKwcBeWTS3P0Zr64qlgFLb5L8mvRwk+LOl0NZ9p75z2HxX+1MHSFwm5s43lk6/1HTFACTZgEs6PUqyR1VsTKgUbF0wxVLb0HVqt5M9nypWG3GxkMzufLztl6Yrllq/WtZ46Uq1LKqPYjl2O4K4MrWNS6b84Y3N1S0jHeDFQxu6Ti4KBgZQHIi3etQ7eF8TlYLbvrO7d3QwsNLyGVEsWz2k+jCm/lmxN4MEf9be2nf6kIMFje3DcHBVvjJt41NtF5uuWP0cTbTKi7iRCMKjm+KWlvVBFQN4dX/vx854TY3KA2ckDrtv6+JpR4IoBuCL0boILg26IwgXiR2YKRjYrkdnXPZo/ZDqA3f/6wf6ngkGBnB23LlPKujnfJZGZltWHjp+YzCwb9vb4witqpffjbP09pZo7HtBgj9ry/b/utfB4mz14Yx/Rjk3fdfCKWebrli9veDsbY8GstWHFzeULdkUxJWpdXW09nnTTl/tgdRdGsGK5QdOPxgMDMAl0QceXcxnaZQUh9zimwq2b8ldVyNYl0sCYtnso3PPvBAMDODwj3fsjuBIvZ1Vg4yNjQ9/0zc+GBglJVHiOj2yxgUGvGOii7S26dtF3uYdOPNFAVakZ2jtPI0cNvPwwqmnXSgwFL/v4e9cO2uUl9vSUOzrCw+Q2GaMyYM2QIzcxaJeWwkoZOYW6rFhOGvESCGjSHa+qmNyAcY4G/wdyR4R+8/eSrFwBhg/3F6ShXSALA9qOejcOxvu3bUWDDXI40WKxTlg44dTO6k3T8Ch9BLb6OwYqPZ7HrL6LJwyMPVFaeiC02cJwT1FxCmMGPjPPkOSAU0hnTIwOcihqqi2qKGQufIbB+erMXbwwkso2QYaUTdQ14pHu0YYDOe6mrsz785jevZfJmHP8r30AXEAAAAaZmNUTAAAAA8AAAAwAAAAKgAAAAAAAAAGAAQAZAAAcRPiHgAABDJmZEFUAAAAEGje1ZlvaFV1GMc/z+9e3TSt6IWC+cZkmbMVli9EJBiK1WxaVqtRUb2ooMhhWRPG4GLgjLUc9udFIb4L8UXN4VYSMojozQomNsStYX8Ui9CW4vXu/M45Ty/uufeec3YnBS5+PvB7cQ6/+/x+n/M83/M893eEWbDxwfGayUL+S5DG4h0durV2/sN1TXVT13stMxsAk1cLLZXNA0jjZCG/czbWmhUADxb5QAhoBWLXd4dHbr8hAAqGPotYi1AcEMCCzBzpuiEANjzWMGHRD62AFSiDqHn2289H1zsPADBVOy/nifxuiSCKQwIJezWnxnmApqa6Sz6Sq6RRcXhw//F7Rp9zHgBgeKT+Ux/5wQKVIfjCu4OD4zc7D5DLSWiNtllES2KOxuKw4LVfjzWE/8EO9Y0eNvCkRAsaBUG9bGDubn6iftzZCJRMCd+0kC9HQMCKzC1k2Ot0CpWs9dGG36zK+/G6UATRbYe+OLnJeQCAqWy+y8KvJSGXh2T2DQ0NZZ0HeKV5Td4T05F8I4GF+p//Xvyy0yIua0FVPug/9U0GWV8RtCJwsSaUO5/ftvKCsxEAEBENDG0WwooOBCtyWz6jnc5HoGTv9Z0+iOgLgmKiTQj4ZHR12yP1PzobgbKgxdtl4VKqzcgGvul1OoVK1rG14Q8f3VvsVGND2NDdd6rZeQCAYCrssZjxSAPljtUT2bd/cLzGeYBcyyrPE22PN3nFuiDL/wp0u9Mijlt7/9gx0E0SPc1I0JdDG6zY83j9eWcjUDI/lB0W8ZOCZiFzMrtviAgAbD96+iNUXi12qVGBg1DRtT1bVgw7HQGAK1m/0yIX4mK2ggmFXlTFeYADD626aNHd6UbPw6x7bWDsKecBAJYuOPexhZPpZs9X073z2ImbnAfINTb6HmZHSsxYWDrpzX/LaRHH7emjPx0R2GIA0bKgr2aNWXlg8x2/OBuBkhWMvmGRqdR50ryChl1Op1DJ+prqJqzK/iqp1NoyMPaA8wAAGnrv+HA+3Wb4YbY3lzrVcxKgf+tdly3SmTpLwoquHllz5kXnAQDWfr/soBWGy91qqTao7tn49cQtzgPkchL6oWmzoAlBG1lkPOlw9jWatnUDZz4z0Frskcp/QT2DNhzfvHzMuA4QiP+2hSupNmOuJ6a7GIEjfy6kxusBbUQxJhaWDBrvDsv5luzdNXEd6+mnz9G478o8idaiio/oeomo1k7zL/qg8NW5T0BfmqlMJzeTBIpVyth9rfK76UDx1vlaPgwzzFPFwIkswsbYl7jk+5jKR7oAECTpRDTlFEw059qbEYzEN5YEivuo+uCKZ0wYuDdLoKMYlv2rAhONsByh6UBJmMqc9GaST1wQicFMi67MlLZns0jmdQiWAPf954pZBagCk0onrbYZrZImkQ9JRVCTERQ4KyrP/APT7dIdHNFWEAAAABpmY1RMAAAAEQAAACwAAAAMAAAAAAAAACEABABkAgD8ivGfAAACBmZkQVQAAAASaN7Flb1rFEEYh5/f3AWDhQSCEBRJYnIgNiI2MYUggpADPwoRxT9B1CaxCcoJ2gSLQFoh2NhLNKeNH4WIeJWIFjkS9UBRG5EouZvdfS12b+/2ONvNDwZm2HdmnnfejxX/0eTq2o7dFKci3M835dEP5KBLK2snHXoqwAHCSOaVe6dKtwDUb+OhlcZeVwhfCiacGUhLtfLY1TygLzyqPxScdoCMNvBfF3Jg+exkw/XbFBTCRQ8THvASAVw5vPr5YB7A3jTrUSu+Ox07fZGFvi88Wf101JleCeSSkAiQ7Pj7mfEXeUCfWVlfcLK59t0Jh5npWPaFzRSgux7kAY/a4+uWBa/JSa1CeNvD95gh5VAkFjPAI0++nPNo2ktxKJINAXajXi418wKulku/AzQfg3Y4WnCkA1yrDQSmOxmvJLz0bn1z9D45a6o2vuzF24QhjXYKvOvHyGUvlXq98sYc5xXmDVypKAoid82DdRegAIaebww1m8W6jGHXLrK4nTz7NbPvBNuo6ccbDxxcVNKXHcDmVnHeo+E0d+MRtczNss0KFVz38KedpqL6bQyFH4FB0j8MCLwza3S9dpo/ythZZt0ToayNdfpooctOQAHrc3a63iOzQQFFFN5swwJEHecGJO3PXm5ZGAMlhdDTM3ugFc/VcSCyLFSY2PSekZ6t+Ps/kTTHxalO1YsAAAAaZmNUTAAAABMAAAAnAAAAFQAAAAAAAAAYAAQAZAIAtADR+wAAAwVmZEFUAAAAFGjexZZNaBVXFMd/5848Y56hxSCI+IXGBCXdCFnUjRBdNJoYhFJRsKtCLYJBrREJ2EZLm42gNigoSLtrURdqYlT8WkpBFyIVk/hJWosFIyjSvrkzc7qYybyZmNQYX5I/nMUMh3P+93/OufcI74CvunrnGpxWIZxlhF86m2rOM07s7+rdI6odRkGIzABGtbl1/bIu4n9jwueXbs8o8/K3DVTFwdTBNB1ZV9UzHnLbevrLZvrhXQOLo3iKAUTpt4Xgo/YNtZ4ZazDx8q0+UmWB2MQT3Txe5TrXVhc8YVcxnkQmUm2m51rGrNxnXb1zc+L0CeQlW4bDP69bsp33wO5zfVcEXT1U1jj2y1BzNWNSLjC5HzwkbwEriXn/ONrJe8KGwQ6L+IlyCBY+ULHfv1W55p7+5YTmpoBJnQxBD5xuWtJKCdDS3XsEla3DhiN8q3KF0DlkEZPqNTwYFLesgxLhtevvtchzK5KujPlfcvXnH3zqCysjZ4kMIRD55lTD/MFSkTvRUDto0f2ZwUAYlVztyd+nWUxH3ANF1YR7z2YPHqfEmFfx51ELd9K5RiVXkS9vsVA9/DS+MV/fqquzpSbXXl/ve5gd6VwjDkTtxYHKaWHQL1BpVJMmdeDajcZFq5lAbOy+f1ag2YyqXBjss1AZXR0yZIGHu50Jxr9Gd1qkMGJZay49WmqRLRbBz0yonrjVOP/ORJM7s7b6gVX5ccSBsL45YCE3rNdeoXzLJEFD7zsf/sr03Oyex6tcMVeThzi+FI3S9rBxYQeTiIbuh1+4yddJdQIZOKjJCyAYAYEBDdzDTDI+vrnop0S5Dy/88SXoMROrluxXsOnZmgW/MgWIyF3/u6K8UOgTZU76/XSE3158Mm8FIjoV5FwA1/PaLDJHBAzJvaaq4a6pIhYpd/npAsLwHko52Z0qMKpPMit0Su6in2a+08q/4aPFBdLJbDjgoG/EdgnCdoiIAYRF4o6ILM4m0mxijQcnQ0gzSU08XAJDA4aghJolF8Q+6Rj/AQB4LsR2B2nNAAAAGmZjVEwAAAAVAAAAIgAAAB4AAAAAAAAADwAEAGQAACn7SAcAAAOxZmRBVAAAABZo3r1XT2gcZRT//b7ZLc1APfRqttSmEDSkHgKBiJdSikibiGxJQYh/DlLwYPEQO2CkkZYQuhZXRA+C1autpqlbElAQFL15CWiT7aLm0Cw0h/6xSZudb+Z7PUxmdmbapLubrA++wwxv3veb3/d+772P2KJ9dWVhF8Sct4CDBK8Zwcm3Xn12Me7z7fRflwgcIwACUAIoyprvm558/sA/AKC2CkTDfOEBb7vAfg0ZMpDv0z73RY1q4IEGoAFoAi6406hMIfThVkB8Oj3/giJ+I0Cu/xUBGEvvfufogdtx328uXztDYizwE4TsQOHQa0M9P7fMiIjQU/xEA4z+NFhLy3/03k37K1tPusBS4MNo+YbFixfFahnIxJXrI1rQHw+qQbjAR+PjNGn/1196flVTOSnQ0EDv6o75Ey0dzXipalPuLShIjgAo60kIzO2rdfcND9PfiMXPfpj/1QJfrCeugMCtlhjxsOJoIBcxwWDVYEY3AgEAJMVXOKkBU09cQpO7m2bk/ZlKJzwpE2KHybnOxtSZoe58IzE+ni5/DcqbhEQJ3jQjNV8KGrBTueGu0XcajkHX0cB/8RhNATlRqgx44HHNoBZoBvR6RLEw+Fyl0TgfvNJ704NMht/rphgRoQ8UA7nG2CCXV3ZaE80y69fMeQ1VCfOrYSBvXP17xAP70/JzwbEvD3fdbVp5wz2uSznVFCODpartKpwNqIznBubuPOi60GotmhzsvuyBPzYMJMs1RwtzYZ8Il6es0UubyLWhUmD4nga9J8r35ZlKZ9aoMoGEXAlMfXe0K49tsHevlj/PPDFHjSpo0I5rnoBrBA62yVYz3oebMnKotDgAZX5PdFcBSDk3e6TrFLbR1GZyrSkpajDZXYllvQMT2Gbb8Gj6Z/8d0WB/cByMyrCijP3SglxbAtJXqtoa+iwpYXeMumtu5ZkLaIM9Fsia5ToEcgSgyAiIJdyyXDfszOkX+2dudFrwywDs+EhHwdSfR/bm0SbLPDpreAUftIOjiNhwLaMctNESQJ6evTGgYY4HmwtUffIqXh/MVdoJRCXkClOsD8Ph5KWWkfUm0GaLGHlqdmlEM5Sr1OUqGFtqg1wfn6ylqt2R9RcoyKXGv7k79zr70CalPMJIJmscDebI5OVH0Yz+HyACRn6q7oExCxB0IHZbI2CUyGKMnSihmPCTxHOK0aSP1OuFlezkyMD3TwPsCJHFbkaK5L5kUEluIkH5T24uiQ0SLYJ1YEaSQB4CgnuSISYCxzkAAAAaZmNUTAAAABcAAAAhAAAAIwAAAAEAAAAHAAQAZAAApfNfPQAABAtmZEFUAAAAGGjetVddaBxVFP6+u5u0a2IffBGbkGgVEhNrS6VarYp5UMTmpw1tqI1FwScJKIltU4mBQLtNlPQnWPsgiogUyqJ2w6apCBKQIEKfRLPNpmDEbYSqhBqSmJ07M8eH3UxmNj/sJjsHDiyzc8/97nfOd88ZosB245ufuwCe9j6V93c37wivtoaFBDA6OL5VWUaCQKnKBM9sMKtNu/qZlp1TK61ThQShbeOMBks1iCUHLKA0UMRe35n49uv4roCybhBQzJyOACjObwHU88821476woSI0FL2BQ2qbBY0HadF+4L0iPIFRDQ6dlgDz2kAXqfHDeCJ7x8fO1rwdEQiyZBdPHMzAFR66Zd4hoQd7iJVwJ+bNKvqWmpnC8aEUTx73AQqndNndjaJDlOhTYPipCbtW+eCeK9gTHwRS5RZlpUgUOI5LTHU2lTTAABXomMRBRxy/hOAECNoqccaDtbc2jATC5b0aqAkqxb0AtQxp2hhv6uBeS9TLF4IoG/D6bgYi+8yKK2ahMeBi282VScW33t1//akFp7zKAaApjRfufrLS+sGISJM2WpAA8rDAjE9Z8jp7PdTwfleDfyxTDEMnB8ZGQmuqybC0ZtHAuRleqsepN3W0VhzaaU1lwbHX1Nif6my1wBteTNxLpIMmUqdcS4hhwmJz9x755PV1r3VWHXZIEazUgcNnMobxD+h+RMaqFyiNO2pADp66urMVfsDKZbCOxqwl9JHaPK+vNLRHkuUFQkThHglCYmdaqxuzCVGfzTxOShvEOL0l/yYEPSlJekuLmozIMdyDZGicVIDM+4YOYNouzbxlEHV6mpI0AAMmx/17nt0Itc4XU3b75iQPnc9qRw1yZTwrAaYxcI0NxnhfOvKStlnNdStxXrKCcTrQ78dMYV7s7ukCek6/3LtdL4gelpqDYPSmTMThyLJkKakJellIf5A6dSn671x+xqqrprgdzmBkJDRaYAVWQMKtEj7WpLMxUyb7Ro015RofSxRphhc1iUJDn5Vv21/IQait4cSHwfXRMqiDwiUuDVNwAhQThRqNp0Lmt2rMvHC8OSegMiPBOjc8wIQ6L9ev+14Iad0tZokTZF+DdKtBoP4+z/NMApsK6Zj97XJVk3uTaeA7o7X/cOBh+76DuLpSDK0oKxwehQTd9uNb77n98/ggy0DMVNqniRYkZ4V6QJht/+0QUnm9AX2yPDtcgVrPC1JcUkS0V9fefAAfDIPE6aYH5IsSZ/cYcFQEuiEj+aAuH/49h5N+3B6Y8mM5gAFA5P7yif8BKEWJWnRHkh3SbgmJvUXi80wfLYgAGy5PnVUk09mPt8cSSrY3VMvPvyv3yCISDIU2oJxCiqyJuGxu5vLd6KOpt8g/gfmUtaG5klergAAABpmY1RMAAAAGQAAAB8AAAAjAAAADwAAAAcABABkAAC7TR7vAAADymZkQVQAAAAaaN61V11sFFUU/r47C1ipUR8koiGSWLBLRZO69UFsDG8KJUvAWGLE6IM2UQnUStDU2JXUoobKopLYxpioMUoNv21Rn4xBTQho1MTWtStEEGOr1loxdefO3OPDzuzPQGF3s3OS83Jzz3z3O/c795whZrHj+7/tBNhdtCh8sGn98ndRJVMXWvz80A/XafBpB4ABIN46gQWookUutKiN3aPAWnqnIwBCNCLqUKjgH+8baXTgbiSzoHlw7Lkr3pCuJnhR2kWErjJJDSoNIu+Y1DKnG1W2IuYHD36/gUAz82yzpxM+t3pd9M/QwAcGztRkOL3D8oHFT7mMjv/+Xz9CsBy4PffcVgA3GB+cWXAFtLe1xXQY4ASAtwdT17uumyIwv0BgIGT4gbUNLYUB7x8YXRyh2a0EyyzKp2SkIx6v/6di5jPG9BCYH1C3FlodwQADs88BGhUBF6wj3BoAGytinjycarLEHGM204V1nWyLL2sv3Pze0HdXO05kMrtP/EOKRWlujd/8Rdml5ookNUANwHcb+MO1nO3BzWMnlv9tA2ez+3KlSFvU7kRCVNngGrijuKYJh9L1WMstfwU3JxI0GkgUHtTz2xbfOvpw+eAENAs/JCPTV4zPWloT30TfssnjmkTOAdhkT9/AT1eWydxj7H0oY+HJxMqVzmwBiQSNFmzRgOQOTEITC9x5mc5y055j7UAGu1qin1wqqGNt9EsN7PWe3gLn5tf3jy6thLl2LHmq1EDjRLZq4N+AXubaFnrLu3MAtuFrO1ZHfyw1cNv6Jb/YkJ3FegE02LLzcOqe0pmTk5xnv1CuWqcytS9p8Oe8+LLizYi80td3Yk5Jd+5AOnfd3TBZLviu+xbN2MS2Atb+FdaPL6x9vIS0c2Rh7dk3K20OL665aa8GPwvWvg12PXNk7JqLg4u0X6y0SjHbwhYNuoEB5Cpqd/slu1o1bNPgWD8hjygpGkSMKHV7b0vdVyVPr5WY1nxWg1OFwtOEco1JQoShgr+xrm5Ck92BpgNN3vnEcPreUMEBQF079aoGU+c1HkHvo4O/Xh4qeH8sprVRmwLCgwYWGZ7rCE1whdY6lB5WwCrlDaKe+GYErH9nzY2nQ2Gee/ddbNZgJtvxcl5jaHpCS7tvH8br0g6xJ5h+G7x/w9DJ5lDBASBD87wGfgs8vbQhSX/kCg38o1VLpm2orvN7Phq/jp18KDTB5aceUUebTh0jECsSn8iEfRmWhgoOAM1H0iuUqKPKG8398VxBXg4dHABWDJ/6gECr9z/g/xvY/wMSR7zfnh0m2AAAABpmY1RMAAAAGwAAACcAAAAdAAAACQAAAA8ABABkAACQMqAdAAADhWZkQVQAAAAcaN7FmF1oHFUUx///u8nqdpFCHwStobRpNVp8qAgigtiHomaThvpQjClSEPTBB9102ypRWdQ0taUmLXlSFMWPhwpq2AbrB6QK+qI+CBLcxYRiqqJGUUp2mzkz9/iwXzOTzTbNx/TAebgzw8zvno//vXeIJvZ2Lr/R87w8gaQBwIob4kxfz23dWGNraXbzkqdDAJIE4IMThckgAlsUbjQ3eYdjtY8gAnCqo0/0dOSjgDONLqoq5605KYARADUn/plz9GVEZLFGF+M7Hn5EybQFUXUFYamZ/oe2fxUV3IK0vnp6JnHRFI9YaCWNlSaATl667o/XEKEtgJtNFA8ZxSZTqTWyDAej/dmdO90o4egfpHP5ja3KPKFB6YDmXtrdsRsRWzByiqMCJAnWu5OQmLEZXAWrwT05XrjLsexjpdZMtd5UR4+lbi0s9wODY4WUge0lMBs3PN7ffcuvVyYlqpy3HBaAAqLm5Kx68ReXC5bN5Ttdak6IPpd4qmT1y+Of/pC8IrhHz0z3uuDdAU0r69oLI3s2/7tcOFHsC0yYbC86icNLhuvO/bZOjB4VAv6oOeCPNyYvvL6SmnHJPxdMWDUzMD65aUlwraZ0UJRtlUj5nOmVSodDnBJwPlAqQMJ6sWNLgnMVB8uz8r/AjL3f1f7FSrttuOvmaQFGylmpOiHg3gNjhXsvCydgMhR6x6MeWi05mFM7KDC/CxnIjEuMZLNqmsOVU1j28qxOfZRqL6wW3Js9HRcd6nPh7Ljkjr/v/Hn/ZSJXj5pD/FUSDq62mLZ9t/UtgX4bbg5HMfT451Prm6W1Phvw+XMrkI5F9S5LKzRPC6i+xoAA13sl++xSIjdp1p1/Y62Wone7tn4jBqdrdVdPb3p/bmrbIjVXqTdq+twa7zocakbAYki24kJ9pVnkPv6+c8tna72Qf9i57YIDngjpHgTY0zs+vatRzTmuthxGRHZNsXVIgF9Cuod51eH7JiZagnCKkz+lbipEBffB3raSCw74olb17euLbY8F4Bh3BxGxnU1tfs8hvg7pK0R55P6zMxtqcNO72v+LfBdJqgMeEECDzcEN8GSg4TY9artn/Pw7hO4rHwe0uvsWGNw+8eCWvLmacNbGnhFgLrS0tboWJwCA134yM2V8p+vgrwcNjIOHntAzWk9DzPccAcSgDd5dG99A1cSCe4oH/geA/qt59cXVmAAAABpmY1RMAAAAHQAAACkAAAAOAAAABAAAABgABABkAADVd96AAAABxGZkQVQAAAAeaN7N1E1PE0EAxvE1mhg9Ga/GBF+KaSkB1AIK2k0LKqRo0VaBKm0VtLE06Dfo3XjxM8ClB8DOS/XEhS+gCQc7s7tdqx5IuOGhl47PgjUYE4+bmeR32jn8D7OPYfznFFl9qEhEe4nUVQmW4VUV3ou3hhZHqSMLVGw9J0K9gAK8BETvvv6wfVqLxiyxMjkiVR5hT+EZLO4H1wtaBKYrzRNzVLoZKtVjhD6BechRuV3e3DymRWSKWOUUtdRDRD6CGZiFDBG3tAhMkC9n7lJr7x4ip+E+PIAUtTcMXc4daq9MUFtNIiwBU4Do1jSzurUINLkzHGd2e4zZahxuA6IVot9oMzmjzN66yRwVRZwJsQM75rpzSovGCG9khhB4Da7DCNw44Nvk5DdEKF8V0RIXx//5eIX8ODnAG83LvKGuIiwCgzDMnM/pijrqRyDm7l1n7rJEynn8wH9dCDOnHEZgL/RBPwx4am7cl13mInR47ua8uaNy7c+FCx+/n73E3Z+ggggLQY+n5vo2OUkizMNzl0akFz3LZWz/Qhf/unoOgefhIgSgm7utIGkG/IqcwBvE3H37PXcq2dloZn3yntsv5ZpZTXufdM4AAAAaZmNUTAAAAB8AAAAvAAAADAAAAAEAAAAhAAQAZAAAQRf7KAAAAX9mZEFUAAAAIGjezZUxa1NhFIaf9yRIYiS4FUoIiv0BLpZ2M0OXZnITrLuT4GQXoUsWt44OTt261EFau3bqD2hLcLCF3CxO1UFK7809DrnJvUluO38vfHDPx7mH57x8nCNK9OL7ry2T9gxQdrLvdyfdp18IRNX5i/X9Qf3GRj0B5l6Ev6g9vPpKQFqA//so2RZqCzCpAJ9+OO10kpDgVQxWDqOWMeoLGkbuuuDb2eaTVwSmGecTTz5Laoydnrp+a175SICawi8dRmux0tdjYMc8c93Zvey2foYIbwC4a6R0NwbFQIyIJWLZbz1IegSqKkDzaPg2llYtc30yGo3003Dj2Z9Q4cX+oF5v0pfTnpvr59e11nM6SkKFt2qT7Ri1x8+E6Ulc70MEf3lw+Zgdt7Hzx9E/nDr5FkWQmvtVcbtaYbbmeT4Tl2zkPMfzuVwp5Amo4CW1C/FkWYqaOctCkZG+ET8iv2sBzIL4XMEyYC/5b7GZ6STj/hqljWTNGIr+A3aWb1YDMT8GAAAAGmZjVEwAAAAhAAAAMAAAACgAAAAAAAAACAAEAGQBAH8nJFcAAAQ9ZmRBVAAAACJo3s2ZT2gcVRzHv9/frKnrxnhvNGlpDq1BsGmwleAhoCht2pqqEBN6qJd6EUmJbaW0eGhSK1aM1oNFBS8eFgoJadeDnkoFT0XBxmyotrBpQYvRRpRk3sz8PMzs7OxmTTfJ/pkvPBbmzbx5n/f7895vlqiyrk1e2+i6iSyA5uh1Kke6X3riXLXfJ9UecMlNjHklkwdgmJBJ1ECJag525eKPXQ54kAAECglWiMQnO/Z33qgFQNUsoKq0xfrQEGIIGDDf5j194DRqpKpZIDNxfUCAZwQEoRD6q2MpT/Uc2PZHrQCqYoF0Opc0wBkDwG/h6v+curt4ATVUdSzQtPCWAdtFA5/P+z8x3H2429QSgOsd4MupbGvCdbIEUvmgFQBQXnq5//G9qLHWbQHHdc8omGI4eYUAxhIZQR20LoBPp6a7HBdDXmBKH4AQ4Pyr+7dm6wGw5iBWVS55GDekGBKGDAIY87atp1EnWWt9sHn7wKCSwwpAAXgAlIQnGHn9QOeVegGsyYU+SOeSi/hnLBq0hILA9MLDv11AHbUmgL+T/x6Fsl2gKKROAqpH3untdeoJsOo0emIq2wpFVoCizANg6tS+rftQZ63aAkuKdwVMie8ywYZFY4k3ggZoVQBvXp7daTwM+W7DEICefnx277bZRgBUnkZVuaQ8Z0AaAmED5u0NzigapIot8NqlG4MG6IlsVr4FqCfOv9A5H2uAV9K5pMHSWJlCZbo1dfszNFAVATC5eMyQbcyvvuYPbDpc77S56jTaN5VtbWIiyzBthhaY/Kqv40U0WPe1gDJx1g6Oyiz4v50gjiIGWhHg2czNXbbqoAAQLRQqFvSji3s6ZuMAICulTVv1fQPQwE+ZDgkD3qWxRhET/a8Fdl6+OeSQPSWFCoQ8OdG/+a9YAzydziVtOqNlCpXpxEO3PkeMVBZgodk5boFtYeBqfvV1+GqD0+Z902hHZu5RC+6MQCOZBxBg4ofdm/oRMy2zgKPOex6ZKjouQG1V9xhiqCKA1szcLkNvoLhQAagc/2XPltk4Akg0bRp64w5Ag6BIJ2ETv2uTM4qYKrRAy9e3D9rkU0WFit9O/vrclntxBfCDOJ1LJlswI4q24sDV6/MPPvYkeunE2gLSwrcN0CbUQuAqkBAdjvPkfQt8c6cNnjcDRTIsEf3V90RxS4quhX0ovZ7frRmem/yPTvl+K+iL3g8AlkbGUt6B8Pj3u9u/qxwgM/cFBIfK+Vb0m084SV2hr9j9lt1bugDL+nyYextUNl/ta/+zIheioFfLneUAuEFjsCcEu3HhxRrtK50UIYxMWKMALA9PQoBHHAs7AHxbEYB6+AmCTSvWBBGY6NeIEEZL6uRlLsbwHxtGYIrGKmQ/hzTZyoOY1huAuxFAVyUPeMGvG11JRiwQgSnvYgUYgQb3hzALFvVI9vmOXKUA/wHPJ3pHqnUMtAAAABpmY1RMAAAAIwAAABsAAAAoAAAAAAAAAAgABABkAAAH2SvHAAADw2ZkQVQAAAAkaN6t1n2IFHUcx/ExlbpQz8cyT82uy/OhujxFvRCpRDMtkkCs6zCCMEsKQ3ugUE+xIktFCPEBQzqT2Lyd55k9jBa74+jsfLrd2b19mN2d2yUpuL86Ag/uvn3GnTnX88R/vgPvf+fFb/jMMILAfF2WL8/4M9j1L6LSOpsjO7gt4WKw6/RwCPVfkq0qVqiz+VotbjxwByZ2HWaFiGgUTvX7CKfq7QjGp7BirWL0jXbc/I87sW2sUHugvew3MZK7IEaoNRghF+0oQrHO451jWTEjaO1uEaP0KzCgdAFgm4ueu/oiK6SqVysUMdqnATORj4bFiMo+9YBk/dgsWiQCAUoe2m/K16pZoSY1VvuTZA38LFkElIbQYPQQ+9RPybHW01KMmhBQctFfJKs3ELAms2JHpXj9MSAn0Q/IR89KsfdZoUOBfNkRKZ77Xo7TUXT8FmqFw+ExrNg3cmLPd3I3HQZ0BPnoCSnOO/X9aqJiv9zd9zWwA2gIVeIK+9R3KYmmPUqC9ind9CUgD+0/GIzPZYV2SsllnymJwc+BAaVGD/1Kjh8UmLc+aruSatuhJOljBJS+KKK9jSHmqW9VU29uU5P0IdoOzEU/cVE1uZUV2oipv6OmnC1qit5DPvqRkrQauafeoKYa31LT9DYgoOSjH6ipNbynwtQ3aXZfvZamBoBDqJaS2Kf+qmafeU2zaSOwTchDb2zWbd6pv2Rkl6/T7MFXgG1APvq6lv6Wfeov6Jm21XqG1moZWg/IQ//ZIGYnslrPapmGlXqWnge2Cq3x0HV6+l1WqA5TX6pnnTpgK9BKQEXUtp7jnnqNkd27yMjREkDL0BBqZHinXmUUZi4wcn1PAqtBtbdQkX3qlXru7BOGQ9UIKD1VRG/UcE+9wigsn2U6g3MAVSIXnQdsoZ47wD71h8yejulmD1UgoOSijxvO35Xn7XJWa4JR2DzJzNMUQEDJR2ebzhbmP818WVko74wDNgGVoFEhTLxTvy9U2DcmVKD7Q3kCSj46ucVZzXuq83/NFloK/wnAgFIJOgDULkeTzB57KnoYPYJmIjxe+zHDsavQXITl2gvR0+gZtFjP2vgw2HhlrqzQc/VFLJQ/5UKluehYD33QO2m5e1I8WqAElIASUHoUIwJKQAkozcd63XcUKPkfBqADdWpmKbBCejh2N3T8COiMm6hzG1pdgtZ46GIt+6kgmAXlbthw9AEXNW9Hp42AVpagC3xUd14Gdn0ObnjpXqDb6BHQiSXodA+dVYLiw9A/z8zd/NX7HzEvJHngoXNkAAAAGmZjVEwAAAAlAAAADgAAAAUAAAANAAAAKwAEAGQBAJ/K/NgAAABTZmRBVAAAACZo3mOQ2f74uvyOB7UMDf+ZGEgB4tsf/ZcEYuntD9NJ0igE1CQCxOLbH68iSSPv9sf/+YFYaPvjepI0cux4/I9r+5ON4jtfcJOiDwCu9COhqRjjzAAAABpmY1RMAAAAJwAAAA0AAAAFAAAAAAAAACsABABkAQAanuSfAAAAYGZkQVQAAAAoaN5jYNj2RIZhx5OvQPyfCYhZgJh9x+P/nDsfr2PACXY8ngvSgIyBmn8ANarg0fTkDromhp2Puxjwgu1PNqFpesGw+y4/AU3PFYAKz0I1PGbY+ciOgQAAAF9eSoCTwHWxAAAAGmZjVEwAAAApAAAAGgAAACMAAAABAAAACAAEAGQAACJuQm4AAAK1ZmRBVAAAACpo3u3VW0gUYRTA8cmNLqggGmSJYCYUCUKBoBTZBQJNIioqhCipEIokySCwixRZgd2IioouqGRsOLNz25nNaCkwNAV1173O7s6us0ZFPRRhkeTpTO7m4vPpqQ78nwa+H99whmEYwnltHcrr73J97WddkNpAl/sYpcPgoe0zEezHAOdeSob0sa5yPHRyJvSGG24lQ5qbIe0l6+7rYd3Qm4qwrveD3GAWGaTaPLXdnBteYK8QM8G+KeggGcLz/kyeG3krcSOgYiboxPCGg1ar1UIGddq8F602D7CcBxCEJPiMdVWQIQ+6goWPbN7v7TYvdCKWBAXO84R0nW/xPv4OIvcxBKEDIQTHOzlfARlyWQxsvMr74AaGINxNgA85TzPdOjuds1t4v+sS74dWLAne5n1Gm2M4nQxqEoP1p4UAnBX8cB6hJHid9+4mQxpUT3ajEPx4AqEm7EwCvMD7ewBgFhl0SNJu1otBaBCCcBwzwZNC4OcpIVBKhtTatBUHRG2iTtTgMDYNavdI17lGDjv2iCHYhwiCkAC/HFW9i8iQLVJ423YpDDulENRgJliL0H4h1EiGVNq1uZVSJFiN0FbMBHdNgaEj+IwMWitFmjbIEdiEIQhJcIccriZDSmU9t0zWP6+WdahAKAlWSZFu0gUoUaJtK+1RQBAQhDVT4MR6VSsmQ4rsetkye2yyGKESbFUCLJf1K3RXwa88X432LrHHoAhbjkgC/FSuGtlkTo4S27tQGYXFWL4Sgz+gotfR3cb5ISNDMcayFANyEJoGR4cYK9D9ntMc8ZY5qgHzsUzETHABQrmKsY7uNs9jhYwa/4aBBUsBn5KuMwLXTCQ1iyM+Pk/RC4gh4/FMiHHEzzHkoxhVePhkChRiHO/Smb8yanwzo4x1/H6NopHH/J9/Yn4ByYxYN7/uQDkAAAAaZmNUTAAAACsAAAAVAAAAHgAAAAUAAAAJAAQAZAEAs3ud4wAAAfBmZEFUAAAALGje7dRPSBRhGMfx8Q9pggUZFoqBEQgSgQSCZbSQXhQURA8S5GE7FJUHFfKgsHkxaS9FeglBUC97mNnZd+Yd96Kgl7IlaLfR3XF23d1xV7xIFyFEfXpGZmnxEjx63B98rx/emRdeQTjHvonhhe9iGM50SAY1MdyyLEVO1sQIfM1D16WfXhLo8UCxJOnrivQLghji4OB7IV/oKgmdkzbci34dfJiEaA5fkSJuEjglRyun5c3sF/8GzGF5+A/7C0jopBzzfpCj8FHehBnMwU/m/fojEjgqm3fGArE/7wIxmETY6+B48gXyjb9mhjoUMOAtouPYRCBq4wfvmX6LBA4o8U4324IX2BtmwDDiozbOjDES2OfTL/WyeLRfMeEZM8HGX2KDzEh5WLaChLYpiZEOJQ7dWC9m4wOIP1eMHhL4IGhWt6rbv11qAtqxHN6nxJfJl9PIk7NNPAnN6jY8xBz8qEtO3COBNTzZVM9Txw08BXcR/ocnPtOOCFB0TUuv3tDSUKel4DbCDr5/n2Wvk8ySoPW0fMmCSs2CKoRvOni9mnxFOyXfKhOWdiwMSrDLiF+xcZ6OCCtQSnwsLZcN5leKlWs7T+hPOt9tPIsKwYwonHta5lMeagrMqhUuZPaJufX49B8XVlhh/99fDnKESFU/MpsAAAAaZmNUTAAAAC0AAAALAAAADQAAABAAAAAIAAQAZAEA9UdUDgAAAThmZEFUAAAALmjefZBPK0RhFMZ/58wted+ZspYssFCWslBKFkpZsGEhn0EpCwsLyp+NBWXFN7DRlBQb38ByjJpYkJKbycJcZsY9FjNu103z1Ls4T7/zvKdHyOiqWO4tfNfvAsinfTFZC7Jw1Zp7X6J5j+HMyLXshgRa/APvn92OhsKyx4gwHEZ76WhsbqSiCWkmrzk9CEU1FCX13qrN3DZAkrx0fr8Uik60UsEBHiGCjYXF4bcEHj997H7Vxq4zTb53rVNKXYXnk9/AAKCaj9c/0f7srZ/Y6vHUVDNppPviqc9JXHaY92Y4wJnhseLl7MB8uoAgUtuKUB/9SaVe0++1bK0ByCRADaEmgjejJvFhODNUycKKUUobHyIvYdDc4R8p5FaAm/b8hMSLTA++01HXDz1smnZCfgAx7nr6AIqbTAAAABpmY1RMAAAALwAAAAYAAAAEAAAAFQAAAAcABABkAADHjO1dAAAAQGZkQVQAAAAwaN5jOL32cuzpdZf+o2CgGMOZtZeL0SVAYgyn115SAuIvCNVANlCMAQROr7lgeHrtxTlgDGSDxAAF5EHBroZQLgAAABpmY1RMAAAAMQAAAA8AAAAJAAAAFQAAAAUABABkAACeX6S1AAABHWZkQVQAAAAyaN6Nj0ErRGEYhZ/3u/d+N5ntWFpM2ZgNo252UhaSYiFlMT/BD7DzF+QPyMKsJKXLykZJjVm4UmpCMigsxuY2zL3zWhjCqJlnc+qczqkjAKoqld0oaCkZJzXP4jVfCnOFB7og1bDq1xvxPsjkn+xVIRLkSFvpVrAwctFRLm+fFxHdpDsVQdf7EreUX8y/A5hD1x04djxOHY/IuFwal2vjUBPDkxjqIsQICYwpshG76U1552wJQKb2bnMeaWTRfotiAattRbH6qf5vX63qrAAQ3o9ao8u+as6iWR8GrWrme6BjULFQkn/fraphvJYDMw1aBIKfsQF8dE3ohYO7AFgBmW87VzR1orfyF+HjMCRZaJwwM/T2AQyzafxz+v/6AAAAGmZjVEwAAAAzAAAAFgAAAA8AAAAVAAAABgAEAGQAAK3aH+QAAAHSZmRBVAAAADRo3q2Sv2uTURSGn3PviSVEu0h1cwhULEG0igHHDoI/0IBWQaEKXcRBSgfBRcg/UEUUXIMFhThUqSZxdq2KFQcbRDEZFFOhQ0oa/b7jkDb9Uqsl2hcul3Pv5TnvuedIoVDu6WssFkGG6NSCwawgLywMHqSH97+jC8mzqbcjHrnvMRTwBorhAdf59qVgd+I/9WHqXKq5Edh9Q3fURKiJ+219F8eCCHURGsjBH0iursHHmak3V/L5vP+r41tP55ISBLMKCQ+otdwq0K4ich65e+UCLg8N751ZFwxw40l50Etw1UNSzfoU2eWxrauQPyZsaMjFzOnUo3XBa5XNmmsMfkjGCI6qMOLN0u0ERBKYoRCqyNilzMDdDcFrNT79Pu1DuaZiZzxI27W1v8YUxscye253BV7R6HT5cAzuKezrBBseTJHR7Kndua7BAMcK5Z7e0E167GwLHGkwVt/iggM3TwzMuW7BxeP9S+Fi8vy8SK4mwvzyaC7via9hLIeZdO14tcPm0oc+TSpc6Ghqq4oj/w4Gdj7/kugNll4r1h8dSzWu/xcYYHvpc8Ybj9uuDWLGSTZDrlSdiJWqzXip0txWrE6wqcpX4uQr8ZXwF/buq2nt8Lx5AAAAGmZjVEwAAAA1AAAAGQAAABkAAAAVAAAABQAEAGQAAFT/qnAAAAKNZmRBVAAAADZo3q2UT0iUURTFz3nvUxOFKKyFRgvD0PzXTDLYrhZhRFJqDrWwRUHQosIoajm7Ni3KJLdmYDAFkxgTQUTQpiIxLbUU0ijaJIHZ92b8M99tMc44M/ZHne/AXbzN+3HPvecSAESEL/uGfVpQqGPqO3MWpr1HvN/gkhgOT+TlRqOPNbFfC6ABaAg0MCPAMMEX4sR6fcd2j6wbEgqNtmk4PfHPk4B4yfKbwAAht/IXrXuV/sr5tUCUDdlqSBgSBhnF5YqCe+bBbtuKTb4JDZ0NBoN61ZB5JydkQDv+KZAOxAqgTRYbUbdLrIrXrx68q1uVXQDQ0TfiyaU6p0RKtWCLBrZroPBv1iVtJaLKkZP7mmvu/xeSqUBA1DbPaCmgDmqRNg34/gF0LPDCgabKzjVBMtUV+uiz6FzWkBYN8A9A0ZD2xqbqm+uGJNTZP7ZXO+jSIrXLtiW7EktwqqWpsjsrCAB0hCfynIXFuxpojXeSOifYuQ69x5srxtO2a62Q84fK5ornyk/Yoroz19yQBbNK7gQCorKCAIDfz1j07c7ThuhNzxZgyPoiz5g/K7tSdenJUEHeXP6ghpQlZxNfhFEzWF4dCNBZdycJXW+otW3yTFpwSRiqXdrz4WhWdqXqRmPZ8wj5bMVporriGgQAZqmu2SBsEDaT58nX/nCs2jVIz+EdTw04mOgiAYzonHrXIABgk/0Z6wwD1ACA5RYkQgxr4VL6GQ8nWeUuRPG9coi0cyNSlXVOUtUaFP2pYOqXBjak3rSY6M2uQQCgIjz1VQMlKZ3A0SxWbkIMOJlxYn6iaHraVUgEuGrImaXtWjTExYG6ugVX7QKAjY8+b4KGVytr/EdDyRcA+A3D0hL1rKSxAAAAABpmY1RMAAAANwAAABkAAAAiAAAAFQAAAAUABABkAACrOn62AAADL2ZkQVQAAAA4aN6t1llIVFEcx3FLWqAeCgLDoEXKAsnQ9oVWi6IgKgwLRSEKFNswKorKQikyipKixcwsra7jXeYu0+KWWWpOonM9M+M4zThD9dJLkNBLzb+fmS2itHgOfGFA8MOZ//9eJiwMh4iGVMlsfq3UuqrBYsbWKc2RYTyPYXSMsIltVY+kNqqQTKpGtaJJz0XzQ4PoqG0SzdyXlpaYQSHlkjNFAmBFOnqIngCqQk+B1aF60UFNosNuF1tTmcCG/zNSKrGsBzIjC5Ik1j8m/cReio63dqk1XRCE8L9GCss9UcWys6sEyH1UhkRgChAN2dBjVAmoBj0D9qIHe9VoMef8NVSgsLhC2VV4W3HW3JUZuyezjwKwcmAyABUZqJ+5fWoUHYn/NafsbBp6R2FT7yssE1jjH7AvdZIjc9AbWCKxeZhbGeYWGmBJQpjbXi7rXiq6FuJ2Lf3PzQxVSo40LtAlPFdYEmGAJemqEF3RXCBBoPAimd3CkhCWhH5bEtms754pF6j7HxXKrKRIdtIdVAqo93kTxbYkbq+k4keto65LTs9NIH0wxu023Sdfci2/orjoGoACdAvh4aYSxdzM9SV7QXFVXgJ0GV0FcKMHa+SK5MmehHOKm4DRD+zb7VwzuUI5iqv5DKA8dB7AxR5sJ1fkhLX95ClrO+UC+QXL54octnq2HAVyHJ1EOVY3nba6q7kiexX39ANWDx0CcAQdQ9nW9vdckUS8Bfaonk/7Af2KHdYcY7lCu9SOtxlqB+1WPbQPUBY6qLj5/ihJU73vdgABRukoE1gmTySt2j9yu+b9nKJ6CRh9x0IZAhvNDdmk+mZt0V7TVs1L21AyoFTVG+T6Va3VfMkbgGxEm1EioCTNa+OKJBi+vDW6j9ZpPurFcLuz3IDZdvuwJbo/sAzISrQa4Wa0HrfjhsTbAslzdT8tQIvRUiArdN8XgJO4AJOxVTFGp3+W0UnxqBdbpPslbreYogdSphkBmgEAGMWiODTHCCzmhkx4GMyaaAvQFEBT0XQUo3dqXLcqQgtEjbcFuybYgvQd64rS30SH8T5jjM64cbZgQQSKxOe+f/8KwVMMQUzpBO4AAAAaZmNUTAAAADkAAAAZAAAAKQAAABUAAAAFAAQAZAAAmL3pFAAAA+1mZEFUAAAAOmjerddrbFNlHMfx6jKQiC5DvOEUMycacUNAmQuKI6BGYzQi4I0Fb4iYEYKXKF5ivRAFJBIVvOEmOHAetnO/tCIdDpAVq1l7+uy0Xdv17AzemBiMBF4o+/sbQ6yAyVifk3xfrp895/88zzqfDw8RnRWSWXVIis5qb7GrdiuJcT6ej2l2j9TFeMiS4vQd2iHZtBPtFu2DP4qx9rBor9zX0jmxIESQuupEiZECQEeDmH0C2yXaBIzCYiwSEaMLmcBGnDGyVWLPfyszakESABUZKIC2AwmhH8RjK6O9wPaJsf0RKbpEEISiISMNranyJpkd+gaIgFqxKhmAhkwURN8DakPtgPagDmA/ibGfwy32jUOGNips8ibZafhaYTu3yowB+2OI2JGIGJs3rDn5/XS2oLAKVI95hf87r/jJ8zoalmL1Be9AQWLTRJFtw7z6T5nX4E7s75Ciy7hsd0F0arA5Ov9nc/TvkWKPcTtXrTLGdvp5Hdoldk7gsyKBirDlG089X8Bkey9hplyggc3RLLMt27DtT8aCYvwhblfS5mD0XBzm1GkOM/PzWs3A0yg5tU1yF504zPLg+dJFew7XS7ZBcnZsAoSbg/JujjBX5HO5a/ZGII1oM9oCpPkY5lRyhTYozi+fAcjHmpT4Iq7IOtV582PFoU8QVkZfoq8k9hFXZK3qPPABgA/RevQp+kLuauOKvK0krlmlJOh9lIf9yhUZuAXeURJH3gWyGq0Fsg5t0GOlXKE31OT+t9QErQTyHlqDVvH+UrJCSx54TU0SMPoH44r423rOeUFN/fUSgFfQ68ivJvv9AhvNDVmqJSct01L0nJqiF9HLQF5Vk71cX9VivXvBEq2b6gH9iyUtrsjjemrNU0AWo2fRUkDLldRqbsDTkUjxAi3tLtTS9ASAReiZgVVhddyQuVrm0fl6mh5GwOg4dvRJIzue21/Ie/UMu1/P0Fz0IKBHUJ2Wlrit4k4jW3eXnqV7ANyH5qB5aL6Zns4FqDW7y2qN7G+zjCzdgfKwEBdg6vZMyc1GT3i60UMz0EwgsxFWRncb2RkFA5W6WzrJzHVMMXN0EwBgdAu6DQCw5oKBci1zxQTTjV8HoBLdgKYCmIZqjJxXE/DGDPvDK/DN8TLLXTHedH8vN126Gl0LYCKqQpPN3OEpevbW4f/6+J/yAssNXWT10qWozHIJGOVhh6833NsLekWjDK/6fMujUgBj0cVoHLoc2JWme/AqPTez4DkUB73qUQGPRgMqQWMAXIgusXq9Msur4nPi8LqKAn2hEYCOY3+WWH3rz9MOjOV6y/oweF+gr6442Ld8ZMCrOJMf/RuAQ7maj2/maQAAABpmY1RMAAAAOwAAABkAAAArAAAAFQAAAAUABABkAADdrYtsAAAEPmZkQVQAAAA8aN6tl01oXFUUx//nnjdNUlMkgl2EGtqhak2aSWvbMYW6iAjmo9Km1QErqVAholJEQQKCMAvBjS7EqktThYijJq2RaWnVVLPQSkQz6aS0oYSQGBctxZSkybyPe1y8eW8+Mm2TybvwmDswc3/vfP3vOQQAIkLnTo9HQ2JXG466rkKhG/sObJtFQIuSyYkKZylzhgktDIAhYAAsmGNQSkGGWTt90ed2pMuGJAbGuwzIF/7h/uPDvP2fDPm4yja+aog1mKuBKBuy0SLAIoIF5D3Z7+TtaZcF6l0wnMmRgdFXE4kErxiypEMDFrDgHki5w30QuaAcrNYW+nSLse2Pi9+O7V6RuwDg5On0Tog6bpAOs+BBBupYUF3owrx9zoVLDBzdfSjyzT0hxSseF1W/czysgFbW0sVAtHSsAIZog/DGns7IiVVBitfAQDpKIm8z4TADVAImTPrN5s6mj8qGeKu///JeJuczBppKuFAMkmN7OyO9a4IAQDI5UWGamS+V4PllLtRYUOQ8/uShHVcLsmu1kPb2hzOm2fCCBepdloUK99mKT0pc1JogABCLkTM2Wv+yTdS3LOUFzT9F0rE1Q9wMJH27yu42gYnCQibYhHfjedaotQjf0WeaFizo7hKFXP9E5NLBQCAA0NXZeMES9bMvQR6MqCcwCADYJO/7wc/CTKLoqVOpxsAgxw7W/2gBfxUIK4AMqebAIABgKRosTmlbUwQAjKAgJpAyiKABaBH3k2h7oJCM0CWBf7gH2l6WrNxpJRLCUxVX5hlSmX/DClsPBBaTWIwcC7hZkGUAHGddVWDuygaftAi0ABpufNYFmV3xoclKS7AxW4ieJaIyzq3ALLk1bz4aAlgDueBDZl6PNcwHBnFINcJL3WyWOaB0oClsQZo0Za0QNx5K9FhgFd89MhKyhGIFLRQAG5wKzJLb/9bEDEid5yYNgibRJvNwIJbE46IckndyzZ+vX99/0hGeCsSSv/dMvshC9QyBplw8ROODsruV/NWWnNiktEoxUFPUuQz17d/6lPe7si15+vy1+02TvmNCjVvhuXgIOfH835YF2ffDVM2iqc8wENWem5BVXqKv+zse+XVNkF2D1+oWoZMMNPiZlJP4GYdDrxX/Z+WQhPBjG6ZeWRK8x0BNweXkiuGiI3Lkl9aHbq66Ta0dnF3PbL+kIG8ZwNZlPTAAFllUkAMXO8LnV9ZwJ6arqtc7m1mpCBNaGXKYQRv8w2XZyDenNDpH928euvvocHb6CEA9BIQZecOPlBiA3Df39v8octqvtIVTdx+Czk5HAfotv/pV/psKSk1bwoTPqyyj5+qztTfu5XIDQEuxvPh3gqtBWWUFNEg05BxExWfbNv2+0pwxQJSG3OGOyGXOfxqSEI0Tcx11Y6ue492YzHwI4DiAUFbfrgO4DGAMIsOotJNo2bJUrjr8DzgKCvJ3CR9TAAAAGmZjVEwAAAA9AAAAIgAAACsAAAAMAAAABQAEAGQAAHrt1WoAAAS9ZmRBVAAAAD5o3r2Yb2iVZRjGf/f9nunmZrbAPoiKDu2Pc5t/h4J+MKJsM3SaByxUMDCKIgoi6NP5EAQRQWT1yVADo1M2TZuW2aQRWExkm1NKzcbUCEUU57Zz3vM+dx/On51zXDVl573h4cB77ufl4rru+3qf5xbGGGYmJw90Nzqjygv0qpT51xatXXSFcQoZS1Jb27mJ1cODhxVZpYV/3TToFqTDXLC38ZkFvSUFcry1Z7MaexRQjPTvqJtPCvZhRSryeW20Nnk3QHQsSUl40BfwBXwkt1KAK0xdbMiuwUhwsbO168V4PO6NLxBnrT5y20fIASoABQFgI1ummcnHsyOP/PrLVz1Lxk0agAMHehdGAveKitZ42FTBZipUKaBGTq586TIxLLBlyfr6L8cFSHHEYqbLFp6p8VywWpDNCo2FoApqySG8urSlfse4AymOI629jWrBG57IBgUZhSUTsdcaWxo+KCmQbBz+unu5J/KJQkMOyAhLJsK25S31u0oOJOs7kkx8psbGfInUQI3bSLBo5foFv99119xtNDXNTdxKntnkw678zvIFfKUyUG+3xUxLDgQgGo0GnV21z6dgr0+h//jGsmP1vdGSS5Mfe77rqqwajJxSbO5I8YLCmRNdtXWxmLiSMpKNLU823E7gtvuSJ1F6zVtSf3pdyaXJj00tdcd948e0IwtZUCmRN0MFAuCLvFPAiEBKpHH//rN1oQLZum7eDz6cSn8s0x9MH0hIsCxUIAAp7GAqVyMZeZzUA0TCBJJQ7Y4YqI2YXCAyP3Qggclpw1CRPLe1+aH4SH7E4+b1T/xtQLHyfE8Rz38g1BqJRiXw4XqB7QNBMKEiVGkAfEXUZdlIS5QIW5pY+8Vydys5oODlzimGJRPBfaEyMjSQfHgERIYR4VIsWjsQKhDfaZ2KFR8le0Nv36RnDZ5lT2zp+hBzPaE66/bOzrKUSbTgSgKk8LpDZST115SowMz8blHB4XkdoTESi5kmRd4q9g8fvvmouaYvNEZ6l55/Tk3mqWRtPc0IjvdCOyqubzs33TntVqgu6pb2vWvmPJbNKykjjx+9MGU4IfsEqy7wDsCTIJafWzIgKw71VbtkcDgpNCqSadk0GyLyxcHmh34qOZAVBy/MNFybj9TmpJAcG5fwyl4q3hMBmHKor8Y8b60K1264oThNcxP3AmBj3Lw/Jve9kHD2tuRqQvLvwEOe8eyx1TOu33HlLGu7vFDVdShUZu6o59Xs/cogsvvK09MGxwJg8cErkwa9xFZFXleYk3foyb/HDCm29ufmmqOjX8KP9O9UZFvxKEGNW4rsE3NHIs51Vwx6f16KzhgCmB7vr/AmBbOcar1ntlqFDQqT73jHyLopjpaTa2a1//tY4kj/TpBt2V6+Y+BSMF5gIPO8SotzjVEAGAqXRVzT6adquv97dOV0B8IQmdFTUHTKLhxVUeUjVUXumMnLrtxz89FP/WDCgv8DMWJoh/vrEX0X7IlikxsDS8VymMD3YkHsctPsE/c23vy2vw6VlxGiwP2jTf5GqaVse95QI17m2PF384ye8Zmztl8sZzjShMhKoA54FJgKlGU2+QpXFc4qrkdNOobKU22smj18r97zD55t9cK/Y9FxAAAAGmZjVEwAAAA/AAAAKAAAACoAAAAFAAAABgAEAGQAABkw4gcAAAUQZmRBVAAAAEBo3s3Ye0yVdRzH8ccbitc0BS+EhCh5AWaa6PA6pcuareFMVzKrpYU6rbTbWo1yrmY1ui1npdSapUd5nnN4riiCl0oOUIPznEeQA+f2HPynDZk43Fzy7fPAOXm42JDg8Py293Z2+D0Pr/34nd+eA8P8z+GSXCMr2OqSCtZBXWouZx0XKlj1QPmpqvnMYI2yAjW7vDuupyor2eqtmkWLiijwYoG69zdWpUtAlKFeYBsrueoci8UyLCLA4gJH4jlOvXEByIvIwP7eO+wf9lPq4oggz9i0hWdZ9WgJp54DVjvPqi29xN6sZB0bI74vc3NpaKlNSyrlHLuAtXfF2jsjb1dgHjOY4yynLTnHOk4C22Zgf+2ObSvnqvcwgz2KWccybIOqUk6l88E9G4YF0vH8oCMlnJunrU5LMZDAUidsgXrDzlbNGXSkccTInDO/iHPSaQA7Ya3qJcIeHnSk8UHiOecxEUhgKRxbzDo3M2YYRUXVYzjOWVcInIBCWIVzarlmWEVjnOTU1QWcRhyyAmdgeQPMqlmMWcYJTjtrsWp0EoVh7aYB/mi9vO4YcD+j4yiEtVprUkyD/MF6+U9A6ScUwp6wObeZBvitVfvge+COImCpHctpX5kGeKiwZsMhWw0dBuw7FMSWmgb4ua02+UsAv0bfoCD2L9MALRYa9pmt5mYeYF+gEJYx0/jYVtt40FZLnyJgKc9swP187dUDwH2EgCUDaxpcbqln1PuFV/7OLbxCH6L9hbUEbJtpgG/xV9LeAexd9B4CloD1mwb4us215Y3COnoTvQ1cECubBrhbqPvkVb6OXgNwL9pnYG11B02B215ZOSKHd/l28i7aBeRutAcZq9oxg2hIquhJX4SM15EGvsi7nnsJuO3oZQQs7eBdt3eK7plMEr4jzJO9JfMlL6WgNLw23ovkk3W2UK9t5evpBcCAJQO7jXdx7ROSRF/2bMlHc9BDAM5DC0TPK5ECbhZd2ZuFenoWbQEyGxnYrbb6jPYJMyXvvgTgHkSzUBDblCQF4gYalyW54jYIDU2INgK4CQWxJf9Omi55F86Q/RQn+ygehbBYWXvimYYJA4Vbh3s/KTTY1wP3FHoaZSED+4xYt7LT5Cmy/5dYIKehcCxWtyxe8E3sb9xy3DNTdJc9KrrpccFNTwAFLBnY9aL7eLcLxiv6pEmyX58MXAwKYae3Y/1OrGR8v+H4hvhVgse5Grg1aC1ah4JY/TFYerxwnOJfMUHWWyfKOgFLXbBNwO5g8EjUV9hGXPuI4N2RLnqalokeykDL0Uq0qgPbulZwr/jPm4wp8mWOBXIckMBSOHZKB9Y1VfLnTOevju4tbBHmpkqenDTJ61qIE+JhtBioJQhYCmJbM0R3Zq9uOEoJrIlW9ObRik7AUgh7Xyes7zpWNz9W8m+aJnjnxln06ND1xuuZeG8WfjZb9OUnS77rc0PHV+isRWHY5nTBu+ae/hxRsp46vCgQGAnkKGRgx/SAvf/OytJU2d+CbdCCPUsPtH/AOk6ERONECB5fyeFnbQc2sEB2p/Zt0/BXJw9V9CPDlEDbCCVAUfeGbf+Azbg7ti1Z8h+Zg9/RD/8vCyxllEZlCKDA0t2w43vAxnTHtsVLPiVB8izt/5NV1FMYOXCYUQLXgKWu2OgesBNDWMV/LUbWD8ca9xjwgUdzRtazAM1DxcA2Antr+B3sLWAbgS0eq/jzAM1KMK7p4/gHhfht8rs3/k0AAAAaZmNUTAAAAEEAAAArAAAAKQAAAAIAAAAHAAQAZAAAz3myWAAABXlmZEFUAAAAQmjezZhtTJVlGMf///s5xwAxZFM+kJKedL4Qh0wF23JFs0zAEp3HmlqrNluu1mpzbs4P50Nf2lxby16/qLWsKCIlEULFjbVpUY5DUFMZAidaL5NShMPzdvXhwHl5eBEQOefant3bc5499++5z/++7uv6E1MYP1Y07wTl43E8+hMh76Sars9yfbn6eN+vphJWB7JMADYAGfvRlQIe7nNZ7Y2VTS+Vl5dr0w5rQyoN4Q0DhAHCBGCNDZ4twvcWupb+cP6r5lU3ez8xxVF3rGWFZtmvaISHgrkEchSQTgjU4ISjrFCIwDOrNnu/nDZYZ/j9oh5a0erRbOtxCncSKFCQCDTjIWwQr64u8x5MCKwzTle2FGhi7VHgFgUwDB0HL0J5raAs/+2Eww7Fqa8DD2jk+wTylSAGVqAAUcTzBWXew0kBCwDV1ZfumKEPfEKRrRFYiYw33LTuL9x838Xbkg0mGsXFiweu6q1PG+DhcAYBDA5eCjND0I6IX1RSwAKAz+ezzjXlvqADR4dSXgz4mtPeFl9SyCA2amubZob6tAsEFsemOAKt55py8/x+2ipZYNevz7+hQ3ZFVjV6LV/l/WVTUsggNraW5Z01gTMGCZNDpyBhknuTSgZD8ek3resAqXNIAW4or0o22O2blp8ywAtxGw3AAK01SQcbrt6kKqrZMLRu0+tKRlhLqYAtACWm+CHvdQHArqrutD7071GQZZqg/tDGez4CKQmDNdEsGkAyplKTXAUAPew7alL8BrFNV/hgx4m2/Ylc2SxzaZsBhOJTGOeqrXVtGSb4hEPQOxJ7qtEywKvOTeYa6HPPtDWD0eUmCMxKtG4NBdIeSl1hOahrd16/ZoDiODmyHq5vT0kUqL++PcUUZhlktLABRJ0tyu3ViWD4JsMXqKX3ypJEwfb36kt0QItNXQYZVABggi1xYiYwQOQlTAK2ynPq1QBaVDgJs3lYeaaQnyhYU5N856FgCJsVABhiBxxpAobQt7Kx0T3doLsaG92G0BenVwImGFAAIESDQdpRzQIGkOP+a45v2lf1jwyfAeTErSpoD7i0BgUAF0o8HSZwPKrZMLQO7ENMWzEdbbtF7huhpj3+bomnIwJigAdGKnzzV3duny7Y31Zf3q4Dy8OpirFFzIFh9aznZMcZJShytMU9Lri8geJ5wdsJurn60jzaKkAg0+He1B8tXfTIsE7BsOkfttHAzJBYFZ66tozbBbquri1Dt1WFDmQ6tAqTtn/UhjG7pvNzCrZFXBIZsnjkvGlzQ2fp3T1TCVrybUemTuukAgrDnkHUnQH5RVWJ56lRW/FecLcBBGNOjnDqIAup0OCpasuZKtAHq9pyemE3GEBh1DOInKJBXXPvvqkjk1nTuVYJagmkOnshBfQQ2N91ff6H8NGaVGNYLlpnWseLpLyhgEzHHgGBfiVYf7rU0zAu+yijtuNR2OqYAlKdduXgeJmCt8RyHenemN03HsiVVd1phjbwrAJfV8CiuE4gOvYD8uT3JZ66CRlz6TXBIohUEsiIqdgdL5frCqyAoMZt2wGrT7sS9M3vB4B55V2pqWnWAirlhcjjirJFAbMccIN7Q0DgP01Ydr50Qf2kLM8ZJ7u8SqFaCe6KmGbD/zbn2Dv4e3q8Qxj3kc77v7toF/+8wRO4NTO5qnuO2229SeC5iKcqN508MkY+bGRw0SCHLGvG3osbs/8ZC2NiJkd1cI2m6CfkMQWJdhcjQoy66kMfJkrwHWD7rxQvPDee6SfnyJzoylOKL5PwEZg9DG6sVSf+pbAcNg7+WTK/eSLT3pp9VN+egpCrWJFrBcjTgGUE5iqIexDOoOBvDfgVlGYlbJidYlZfKVoYmsx0/wMN5mfvJKM07gAAABpmY1RMAAAAQwAAACsAAAAMAAAAAgAAAA8ABABkAACqQq/DAAABy2ZkQVQAAABEaN7Flb9rFEEYhp939k7QQhC0sbQwel4uihYRIRCIpL0IHng2VmlFUayELQOp7O1EkUsTibExqKUIGjgTA0YL/4FgYSB7s7ufxW72stff3QvDwvxgHmaeb1YMZHl1px1IjwU4s+X7zYuvGGI6nU5wslp7LrjnMAQ4yL7G55lu/YZCpeR9RZbe/Jwx0o8OXL4odamuP1yY+DJM4DA0d3Vq+0UA7T6s4QBMd+Zu1V+T9xcLIuyZF84LPODBRYHNMuSEodJjJ5JFD7v5vniER8TiaRiaK8FGV3abXlw+nOQlvCDGthlB5uen9nvYYrY/R1vtWmOrWYKNxaOBSXjc1+TbhXeMKLcXJj/F8MFLxMpPFhFLTwpnH6zvTFoSdAuxD51JdXOpeX6DEebl6o85sPdlFqjiGg4gSqvTXlC0zJnNUYMC3G3WNjzaLHTMbzlSMu0APNboD2a+xs7WGFN62NpgofVSNSoZLPXBY3epuuOCTZzrpgYy6/NI9UpWXLokK/taCYLv44KNTFsBhqQjPwiru/bbP6d6cKbsrA7+7p/7PS7Ys9HELw8HpZdJOu3+JTpe8hXwYm+lpWRcsK2WEo/2BovsP/LZyUqNvyewAAAAGmZjVEwAAABFAAAADQAAAAwAAAAFAAAACAAEAGQAABBMi7MAAAFBZmRBVAAAAEZo3n2STSuEURiGr/vxamws/QKbySTEwlYWVlNGGSULRWyUhY2NmrK0kI+yQ8LGYhpZSfIPSIMiSxtsKd5557GYDzMac+p06vRc57rPeY5oMtxdF9l8CmPMnHeCaG042fui/4Cz7G2/S9vmGhRggOA5isUSDaGT3N24OQdy2gynBqIFHwr+Ake5u4XQ2TAwCQyVIAfhFGSvddBe7n4xdNYFKp3sVYMJQFsTo4n7aryd04dpK/qugWrjlNe8ebQ0leo+p7zPZvap06xwDbRXi90rsXJR8Dk5nxz4rAiCTMbt2x4PDdrrDBJy9jvC+Gw6paj2Gtba95gO8cEQ8TuhII7fbuIz6XQ9ABAUxErV4BWTnoqxr7lMRsVGLQlC6BIqFQsMR/K55ZGej/8aH4T1r4Shy9Vk/KrZ9/oBXY1omw5NKvUAAAAaZmNUTAAAAEcAAAAgAAAAKQAAAAsAAAAFAAQAZAAAZJZ0ogAABJ5mZEFUAAAASGjexVhdbFRVEP6+ubtY/mxqJCYVGmwEhA1bfrdoNBpDFIuEtOBNwKiJJBBJfNCEF+PDPpj4QGJCJDH6QEpIUBZL25QAK5ImEuVHLG1xG40U+an1AUJCKOz2nnvv+LA/7K5tLbRcJzm5D+ec+31nZs6cmSHGKV3tXdVqwo97lj8LACxPrjNsbixbv2wQExCONnH22+4Ixdqs0BcIRAFUjrL0lgK9BE+q7+2PbVySemACqURqyo2QbhLo+wIsJxSSWyTj/+cvhH4+1Q19HbEjzrgIJBIJqyq8cCugHwtYnQekooiAFohwLNXdk0FSP7lkfv/Ktm1vVALt7RdWiI8vBVxWDFAO+F+ExnIf3+e2+o2Lz41IoKUtlaaiYkTAwlchwBCBqwJcz5GZRaBGgBnjMFWGwNsrmqIHyydCBqggAQGzP9ACIAicJbgvLDz20/lFl+Jx+sWb43GVF5f21Vq+t4bKtwjERjFVhQLf/Nza+8TKxujuEg3sa+vTshMogRYodtqNkbP349EnWlMxS70dAm4QgCOYSpX6QayxbleBwJ62Pi0sIHtCHt7b3LTw1ETu9veHep+1yC8I1GU1WmJKFeLdWGO0GQDEADAAjKI9LXeemyg4AKxuip5KP1JR75IHDYHCAGFAOj53nznUPT9LgIQBmx81CzdsW7fiLiZJGhrmDd90+jYZsDkLXEREMD0Da6/GVcQl9l/vfmaLbdPDJItt297pnsgWB9ifOz2KyKw6EU3Z3Jnsmb7j1bo7eIiSTPZMz9y1zhOYV3bN+4iA5GDrhZcE0vkAEXXy5EBr6gSJl/PxRu7vjZm4uOSnBoBb5JCBagAAmtv6ugRYmg9SEjQBB9pRiD0gQkET8ER6fQWo2dMHTmBY+asFBcngnRAAqocXXDRAJm+GwAnYNj0D3sxHxcBNAABGQPrjyqYmX+Kdf1bgtjMEwPpfnDA95CywACsfjgMnYHxZ7FMLiW3gBFxL63w//yIy2Fuw9dy5sFHahiy8BYFqwP270vazqTyIgANRPK7ikR8VMqLcCEwDv628+CaVi0hAlIWkRKJHBmY/bPCmI3/MNiq7/pWcEp2SUa+l9nh/5cMCX328v9LxpcUBqvJPcH649ONiiBiMlaw5fKVqssHXHr5SRYdJQ8bKbe+QBxJr5/8ghoBL1lNwsrajv2aywJ/v6K8Zgn/SAPX31E7k6pABxwpvz1VGOZWQEScU7p5z9Op2JNR6UOA3EmrVH7683RXpNkSkpBbIjrQBNifXzLkJAHzs6FUdoSS/SMVn6oX2Dq6rHle1tLxjcJqxht8R8EMBns5nPGX/TQO6/se1tccLxenMo9d09KaE3hawBYpjYd/v9e5alwfsOWkAmJ24NnXqNG8uRaJQXSPUDQLMHLHHoAoCtyxl45nX53aWlOcVyWsDoniytPtR0iMo/w7l5meUVr5jdlf+CtFv6Hqttrdcc5JxrCUG2GMIvVfFll6XYu81wIzsyDqUm4vrbm7eze11s3vVA/ZkvClLRgIv7ZIdGVhlCeOEviJQFiKVjtqyGev0KorvAD9+ueGp02P5zj9F+PJVVhzSogAAABpmY1RMAAAASQAAAA0AAAAJAAAAGAAAAAUABABkAAAnmz+BAAAAvWZkQVQAAABKaN5jOLPhovn///8ZGUgBp9dd+n963cV9t7fdZidRExCvvRxLtKZTUE1n1l4uRpc7tuqC9Jl1lyecWXdpyal1l4Pg3ji67vL/42svfTm99pISsgaQc4GG3YG7BIiBFhw/u/6SMcOBdZfnHVxz1RDdluPrLzsga0DC33E6+9CGq1rHgIqOA/FJiC1wjXj9e2j95UmHgM4/AsRgbwA1nCCkCQT2rr/stn/95csH1l/+DzLgMBADAOTpoMvneFgUAAAAGmZjVEwAAABLAAAADQAAAAwAAAAeAAAACAAEAGQBAGnzyCEAAAB4ZmRBVAAAAExo3u3OoQ3CUACE4f+uzENQtaQz4NiDKVAsQepKXRMGAE1SdgHxDlH/cCh+fV9y8O/H6dvgennsm+ggwCXH7W59rqJpmNuQm8EiGIqcblVDb6Uj2IAQBqvoVEWvktkyJghYMJvqvSTqx+e9gVaAs8APAjUhlh67PNsAAAAaZmNUTAAAAE0AAAATAAAAHAAAABsAAAARAAQAZAEAxHV91wAAAgZmZEFUAAAATmje7ZQ9aJNRFIaf935plUgt2bVoKREsouLP5KI4tKbiH1bQwa0FR0dxCOIiOrjo6CgqOLSVOhQJKA5CcYhIK1okpeomiNGafF/ucciPSe3fl7kHLme55+U57zn3wkZsxLKhdorMTPfHZkfkdFRmM879uj168uDvRDtid8dnriPdcGYIcD65HzjdFtmtsdkPgrQDhOHASqXOVFtkoaNLHqpiwoG0KdwSmyyb+7yZn+UiEDTIDAtLla2xyRaL5V0BBKKJTCxkh/uLscVC7/Z41YynnnkPEFssCmyv99REVM3GO2qk646R6emO0DQcSoSicSKUj00Wfese9tDTNEUEPkoEr2KRZbPmKtK1EBFC8xm/l+ktxCKbPfTpkky7JXCmuvHguRPrbZ6d/LhN3uUFqdrG18VyD4f6jtXvrUl2fGquu1ziqSC1xCsCVbLNd1cVyzwrpMrlyvNQHJa17BVIjycy6ZfrEjsyMddTxE8K+h0gtezVggUdV5bW/Cd2/okF88nCaCS76SH1r62GV4sOLr4Y2P59xc/xwMTXZBiULjt01UGfrMXoel4EO/U60zu17E+bnpy/gNmAk51z0LWkuNaWIfgRmM68GdqRW8maRBl75NQ6pWajBTjpS0L+xPTgzvxqA3P1dxbVNrqaRYQIkVXgwZ9K5763g735tdboL3R+tcS6Adb4AAAAGmZjVEwAAABPAAAAKAAAACkAAAADAAAABwAEAGQBAFnJ6ywAAAUEZmRBVAAAAFBo3s2YW2xUVRiF1/rPmdISSJ0IPFSug1EotIRbig8kNlGRUmILMgZMVKKBKBCjkfiCySSaGKPBeEkML6KihgypTa29IEo1jREJiLYpJC0FWgaMYqiGXpieOef3YWbOXCvl0nZWcjInM3Nyvqz97/3vvYibUEewI6/P1M2A7hLocgFAADLSA8qnVm4sOYDbkDmaPwWDQcPrWbjtD9h7BCwiAFEiAajIBktgBm5TNwSsq2tfYTjYZ4HLiCiUQEEiAZUGG/0OAwKtHVPAQ3UdmyKKzxxofrJDArr3hEKisP0C9BK8QsU5U+WDsscXnbtdQI70wxd1HTtF8R4BkTiMZgzncQEPiKD52Knic4EAHdxhZQXcX3f6RSreFYBZakwJ1JiKt6urFx3HGCsD8KOvzzxjOPoxAbrOxT/J3w0bz2/ZsPBnjJNSAN+v7ZovEjlFYKpbbxoteirqbHNwy/b1KwYxjnInSSCgMiydnwswNWVCkBDFJ3dbC57zV9PGOMtdtjxLO/0R6CoLROICLOLLP39b8KzfP/5w7hAHAipc1tku0OLoTHUd7JL88NLda5YMYIJkAkB4aVeVARQLmLQAK2jrttcmEM4FjBCvOOkzFjz6evWCHzDBMl9qOFNi2XhAkNauHL6JHJAZdjyrSAep3YKn9lbd911OAFrQ0sQmACAVQq1Hjsi0wMWMtbJY7UEctOUMYIRYBE1yEArTMNpzBnAYmB5fWqI1yOv9A77uXBripH2egsTVQxPUNUYATF7/CP7PHnEiJBapbt+NXjMebDmfnzOAw0DIImCR0Qs0pvTr/TkDGAE7ktyDRSBMlOSQg2zP2GIJluRODarTluIgCEvpX37ihCcnAJVotUgnWn8u6GzPX9P8406jym0NnWU7GjrLoEp3w7q48UItgKq0Q9Lpk8fnlGAMjpLZtKuxa9KAjSYC5TGGlkkG1gqiw/pO2lIDCyhesrL3yfEy76otWy2wPGkulA9G4HcXZV9Tz1FRlz4eYfSZMEvbKmaGxhJuQ2PXTNNhmwBeJm37DMVu99BkOQxkTBbQG1a7xneku3Cs4DYd6S60HamxQG/aYQ1hU79PaWtFzb0HRfEEoRBNzmL0l2GHa3sr5/TdSbh13/R4HdhNhJZlhATAwa8q529Oifb6wReGgZAFJjoLAQssE0Grr7579p2Ce6i+e/YQnFaLKIt1MCTNg5Bh5u3IGn14m3tXi+KwAAUJB9267BNwT8+1WftwizueTUE1Lk3u2S7UNwh43bgu8Z4hUaw5XOlrHTE8Kjzc8zAdqSO0IN362P1ZUey1bfPTy+uLRhWFLK+/PBlG+Gk4fFmo96YNZ7yUhgA89uM635Ebxm9TmkPlVK0lUOjmgBl1otcErBFFszhOmz1oXAj5Zw0BwMzgxYKCyfZcU7SUKo+SulGSMx8A1JTU7F9DWf1T5dyWUeWDAJDXdLHUEDSKg3tSHdRsrsZd6I8lrFOylMgIz+AS6FT8utbXNuoA01X95Wl5HvstAlsFYPLszpZPpzkcS8iyDicYzRr3F9h5r55cX/T3TSWsGWoMrTKFAYHziJsd3gA2q+vR7EcF+JZwAmcr5h27pQh4RDVcLBHhTiH8AtyV9uLsDsa/I/4RZZAOPgytmzWqk+Otnz9azufjulkh5GoBSgAsNKDTBfDEYC0CVwQ4Y1DbqWydmh9pvFA+7/rNvOY/L9Lne0Dh1moAAAAaZmNUTAAAAFEAAAAiAAAAKQAAAAIAAAAHAAQAZAEACVOYiAAABG5mZEFUAAAAUmjexZhdTFxFFMf/58xdCtiKKO0DSqtoVBahUkqkMTzw4AdtSYrVNdZE22hqNBgToyYaHvZNjUbjx0t9INYa06yhZEUoVdPW8GBsGlE2iIFCC2yIESOmLCwwe+/x4S67e7fAbgl7Pclks7tzZ35z7pnzPzOE67TBwGDeVSP2FINeZqA24wNCz9QdrDqRqZuRLUAgEFC3eCqOTsNsY+FSBsAQ2J8ArfIcAduyGT8rkO5gaDdbOBYD7bIAMNmTs1ACJBUq6Q3MCaRzQ0BOnRp8Qot8wUC+PVHK5JScPA4VYciEAqYJGCOxPql7/P6xbEBorT9PBgdbSfARA8ziXHVKu8CwThisen/s9475/WRhHbYqyPHg76+Q4EOG0DWTC4RFOhTRe80tlRewAbYiyGedQ4eJpJ2BNAgBE35TJr/oe6ziJ2ygXQPycefIncyxfga22KtP2RmC4JIxf+iF5t3z2GBzBKvfL6x5+MsEBAAmikNYn9+svc8faSETOTDHbvPUDPs0pF6DYDdAA1gifPXnr97nfL7cQDhejd8vTLuGQwzx2jsk0UaQv1jz+iM755BDS7yaxZqRAwrwMiiesAQsgLLk6Js5hnCAxAivWY4dQmDC2baWe8/DBTMAoLV7qEqb2OPImhAYFr0Nl8wAAMvy1GuSZOYUgEH97xy4+wdXQTSkmlJ1hASKpAsumgEAS6D7nDpCiFkYcB1EEyqTkm4DKaVCroIc+na8WENvTdQYILBgYXaufNRVkIhJBawoXdj++TqHWXRFkCiAvPT8kaFOyYnW6Btnr2oiSdUWDWw7fO5yvqsg5xsrIxoIawI0LYsdqb8jco+rIHYeocGEN8hui4Sq/wMklJT++Cti7HQfhGkgJT6gQYgJ+WovXvS4ChK1zD5NZNkxkgDa7vmrxOcqyNC+8nENfGPHCCWbyFvwC7sGAgAm6P20LYwYkbembuJpN0Aciav89PhZFjSmHSFnGEb1wN7bwq54BAC0Rf7UgI23Yi1mR+33o0WueQQASnsnTrLIk8kCKaFBP2+yqCm0f8dMzj0CABHQS0ugsMZy0MbjBfRAlNFX3jW63RWPAEBx70SDEpxRQIFDlW0PzSiitkuzZcewToVu6hnZFBPlI0iJR4xg9/4dY6uqbNGZ8YeURUF2wCShSHBJgT5YMI3jU82lWR1Ba7umCgvV4rNk0atM1l3x8eZA3LCm3G/uDTcqkU4Gila+khCwYFYJOoioly1rIDqvroR9ZVEA2BOYLFgsNG8HSzUJP8qwDjqOs4kxqD1j3XHD6clqAnoYuDX9ZmgFqOXvkfhvm1fsK5J+zdGeVQG0pWuqxPSY75LgiPOqQjIBYc2+NlDUIHrwuioxT0+4XrH4GXiYJRPQalCJvsKg7wwy3/ilqXxgXSVhXvdkFTFameBjwU0ZV+4E+peBgBL+9I99ZaGs7tAy2rnL+XkLxl4iaWBQlRJUMLCVAU8cSDMwzaAhRRIioT4jP9ZzpfGOhfSh/gMVwbrySbrr8QAAABpmY1RMAAAAUwAAABkAAAApAAAAAgAAAAcABABkAABi76wSAAAD82ZkQVQAAABUaN6tl19oW3UUx7/nd25qx+i2yLqHyWqpaFlqMtturnvYQxEVVwKraEAHMlEGSsUHFYbsIS8iQ1F0T/NB1MnASC2x3daqbMMJwzGpa4kdq22Xtfig4sD+W/O7+R0ffkmam9k2ae6B30O4uefD+Z7f+XMJFVoqkapZdNznBPQagPY1XxB6wSnXeSKR4B2B5iPzkj1GoO3lvkfANirnj98lR3c7BidZ0MYAGAK2DtaIAvMAImtGMvBN6llX5AsBag0JDAAjBFMEK7I5Am4J8BeASYg5seeZRyZXhSSSqZ6MwUcsUAaAgXVeArvCJKccxYNtw6FJipMp9bMi5FTyt9ddkQ+FQAYEIznHFiZZMb1M/N5j3S1XysjL3fZJ39hhh+RTBigvCQNgARzINSXmlejTkcsVJN9rH/eNP+Aod5hF6grO8/oLkhudxeej0d0LlVx7j1zxuChXXf9SgDpDOf2XZfosoEMvR7spW2ltqeIfgdYbMQ3q0CBowB4iZBSdvvlr6KVYrHKAR654XBS13RhlkZBHImBc12Za33py1zzWaQW5llrHDzIQsjIJjOSurJEj1QA8EE14s+iKwhBgIOePdu+8iCrNAYCeM2NhbbAvX8kGNtkw6l34YA4AuCbQYSC2kqVQ2cPvHHzoB98gS5CIU5Ap3zKkHz6ZjQT0sEDg6U/AiK8QTWix/Wk5Hy7zqG+QroF0UMOttzkpdNY7C/NNE75BOEsbNN/Vxv/5ep3V/b+QRQAOqCCThQnBR1N60+y/miCefgXadvjCVK1vkIudLXMamNFkm2EOxn/PSbNvkNwVThUiycFcQthXiAaN5mQqSOYq7PIVsqRopCgf9ghi7VevBnyDZEz2kiYyNicFWMPGP7fGfIOMdTWlNfBtfhLmYRmRtxEX5QsEADKg90vHrgZCe/dMHaoW4im6pnPp8yzodIrXIOB2ADry84EHZ6qOBAC0obhbnHwbVXBJanrbv5/Y7Atkuqvhx4yir7w3DdAkj2rNQ+GBdLBqiNWPXtVEtgN4o9oLJZfa+ycaqspJ3uoHb+1nwRADG3KbY/EmedshHGuevf9kuZ16xW5771D6ccdQ0oIAFkHJPvY7Qz4IZO/5/Jfo9oV1QQBgy+BMpyOmj4HNRftwKWyWhXqZzGCNoRFa4JuXYzsWy4YAQPDcdIQgZxm4r2T5LoUtH4M5Jplk0PGfuhpPlzWc6vr/2MqB7HEWedF+TuQ/JWRlkH1mlJF9FU3ATWdnOpgkzpAnlmGrR+UYObquMRs8Mx0mhR4mibFgy2owJRStapY3Xpiqnb3jHFAk+1ko7EB2skg9AwEGNJOcuP5U4xv/AaU65cQdibPpAAAAGmZjVEwAAABVAAAAGQAAACcAAAACAAAACQAEAGQAADJpvUAAAAOJZmRBVAAAAFZo3t2WS2hcZRiGn+//T0wKtiWg4iKNEK9M2tTEFuNCMbiwTRxsREfQjaAUFMGNLhQXs/KCoqgg6EK8IVKsYazSeKEpZCENhWhCFBKTknQ2XrBQc5tz+T8X58zNVJPMnJUvHGZz5n/O+36Xc4Qt6JvC9AHreMdCn1WwKBYwm/1RWQF6vM3uK3w+80Cg+qGDNofiBJwKjipMqrcvCywp/A4soO6tg/ffvPCfkGOFmSdDxxuqGAc44sOdaPwbwyY80Y88Y0f7JjMLkhf3z3Pk3wAfFH56yqq+bkEsUBuTBbXKcU/klbuGuyc2S+OSkHdHfn7EiL5XAVQPxyo/tmj0ePa+nu/ZojZA3hyZu9aYcNLCTqs1hwOeauFyb+2hbPbAKttQXU3yeTXrZvZjD3ZawIokT69Y9P3WIPNYdlgitqm6LjS9s7kQ7Q8Q4gsCwDfyyfkfMo/mctsH1MWVz6txfbPTFjIWTQoNHsxFbaXeZ+7ev0KDqsS12jt3xEAmzl+wEscUOT36bBOAOogvPG3Lc0AyByKnnh++6TRNygM4+tX8vsC52xyK0/LQKTh5kRTkAYRO+7USU9K2KpMvH7nhu/Qg0BPHVF0datwJUpKX1GOvRZKo4nqok6l0IUi3ReOOQrAKvjXTqUGGvlxsDwivdLWdJayHK13zqUH8SHYYKzVLUPDQPz9rcLovCVkFWiUpeKUmIqQo07Lrr4sBogEQCAQiBMhVd46da0sNcnqge9mHoo8QX+ALtnVZb0wNAhAYmSlv3PL2LQn7UoX4julAJIkqBkXG7E/byZQPSVRxZCXV3C1nz7ak6CQaDxBXiSx21Wl+uyKXGuTcUNdigH6x4Y0Iz5FXkwokWS2v+pJEVu20zN6DSw83C6kbuqtPLp6yyEDt69fChVZsz9RgR7FpJwCRk3yljSudRvuaRse7vp3fnYoTgPbR4qdG3YPV762yKz0TOjm8dM81F5pyAhChT/hIsW4442671RjGu07MdzbtBKBtdOl2T+VrCzvqPlFjZxc9x0tG/Nd+Gby+1JATgPVDneOBcff6hrW6nRZ33q6SkRd8uewkqtKwk8p7YLQ4YNERC7ur3VbjzEl/cWjPmYaclBUe6hgrKXf4SDGQ2gVaHdiG46rT4T1TYWB6fZG3fZGwPLAlZOzXwY6JpuPaoNHz1xmRrFX+CNzaMbZY+P+P/gZjNJnGDOT1EQAAABpmY1RMAAAAVwAAABMAAAAmAAAAAgAAAAgABABkAQCkfZTAAAACtmZkQVQAAABYaN7tlF1oT3EYxz/P7zn/mYtdSEYWeSkzMwu74I4bJMqUv+JGWZMoJa642J28lCgXSigvabI1TJJQklqrsTVqa5mQi2kXspdz5n8eF+f/Nm32P3O7b/3q/OqcT8/zPd/nEQpUY2OjliXK69XktMLCid6RQkDPWrpqXMhVhXVqoIBi6F/v6VSgpqbuPaHwKEQWhQihEB2EMF2L5J1Jdael+6galxRcVJHhMb4yhTbFbjmnTyeFXWv5cEyNiwqS9yFpqKnxwBM5v622su2fnl1++PGAGtcVRC0PhKHCe025w8ndFW+n/AHnmnuXO5fqUKwkBwE1Q42WMW9436GdNcMTFeHlXxoazI1oz23PKFHkL2/kZunYyrpkraQms8blX0bW9iQD2OCL4IvgAz6CL3L3x7uVB5PJyUHjotHQYG5k4eA9Q+YZYICJYOJ6i2aN7jhVtyCYKkbZNr/X9O7yTFYphlquxYSk6k9urR4qJNxZWGByIhV5g0raK3Mvzu4sf1XoyHkA+1v7qgKzjZlgpg3HOTtDDHkAw6FsUAEViyoz8LCOGztWPI8NCyRc4xCycRDjNzwipjwA37nVaulgZn2TzunBTCqjUZHs/AnWFRtW9fjzHJ9w3rjEC6Nzh5b1xYZ5RTI7+C25+YuiMXh/irRPCBtOz1RkfBYqTENuMFH800fMJzOL4IuUbnr5qTg2bGBz6a9A5GsABEj6oAO+lceGEVXTnd0Ukt4UplXTggVIV7ZFMutHqqdbWWeuRSEAAiO5vr09ERs2GuprXyT0hVybIov7B+bvjQPLReDpl2aQXfmr2pn0DxWPVbB56WjBlUVP7gJAKu+vjoktKfYTe2K1CcCWsjdAa+aag1IaHxYRjgP5K3oo9FLN8T3L6Mm3tWh4JIK7K2wv62BGM/o//QFuzQanlLTaOQAAABpmY1RMAAAAWQAAABQAAAAWAAAAAgAAAAgABABkAQDPl48GAAAB/2ZkQVQAAABaaN6dlL9rU2EUhp/zna/SpYOgi0UcioGmVlHuUP8ClxZUMIOToBQFQRAFB4dsDgri2EXEFikRkagVBREHQSnYUIMorYmIOAgVUdqbSJsch+ZHbzBtcl84cO/H5eE953vPFTpUJpPR/p7BcWd2VWGXtPlOOoHNZPOBqzKhcEgBBdRAMRRw3QCnsx9OOOOuGr11QLOsFb68KXAi+/G8N7ul4CIAQK3xPKvIJI5nb3PJYlvgjeynCx67qSAtABTMYw+8cT11bGh2yxmmHy2cUqq31WqwDe48zLsK584eH3zT0aVcfrg4IGo5xfoiMAOFbNktn0yPBWG7znzEWdrcD/95SqFPkTpkvYQ7C+XEmfspqWw29403TiEopEJkJEQIEUIRQoFQ5F7PXOL0VrBIy+m0ufmgmPdYsiVri2vbwoOTRw6sdJLZRsuvg+JRjyQjORPwZuPTHcIiwJJzl9ajIU13Zi+fju19RRfyAMMz34ZDKodb3Sl2jS7lAUKpjnikBmlsQu7d6MCLWMASsl/FUJMG0Is9JoZqDmVfs81akKvyPjawJAy5liA7NB8P+OTr9r/ITgDXnGG5vNJfiAf01lt/qdZqVeQnHWzF/1dvx9IS2J/IqfGFmHIEwSrmLgJrtbPfOLkSF9j8fT3/vpuqJahU5hjd8ysu8B/6h7Fbz1BUNQAAABpmY1RMAAAAWwAAABUAAAANAAAABQAAAAgABABkAQBGTvCFAAABdmZkQVQAAABcaN6tkcsrrVEYh593rfdzGVBmcimlk8gIfwIx2RNlIspIKWXCzMDEhHLSGZ2JtJXBV9KXS+r8Aaf2RAaKhHIZyOiULdvlew32pYNNmzy1Wq3eelq/3yt8QBiGviZoHQ2waW9SpxgeED7m3XkyOujy8dNvFTo8oJYVekABj6GWf2dnABjpotK56GBAsaSHCs2LctKCEPAGit14OAuQa2fxSZl3v95IJ6PDcSeyqJgrSCwnyf9KLBWYrATEOxe7bSczMxK/G39o43jCYz8VkyIxzRtr6mx+NtGSKqnTnq3TEW+25DF58ats9D2BsWTix19KQADat8+alXhXzape96YQlccVgxuJultKxGMm7vjfZkak+Q4hI8KdZO8Mbrk+3TS03l99zycQ3bnsFuyPYrltFnpcvUo1DvNqCaWgj8SdIDwg/zUsRzgd/YoQwCGyXyTAFL21ab6Io7dhE1gAHnJngb76iG8hPK8kPK/8DtUztGqCyuea2MoAAAAaZmNUTAAAAF0AAAAPAAAABgAAAAwAAAAIAAQAZAAAeXELuwAAAMFmZEFUAAAAXmjejY4xTgJRGIS/yXv7HlcQsDK21FyAxNBQk3AMD2BHY6VH8AIGjJBY2e4BoCBsAR3barbZ3d9iSTRbqF8zyZ+Z+UcAD4vtNBr3iVk3YAQg2FkxgjXq+EamW41W+3FS8RJAP42xFWwVfrrSDfybwsx56RcjoeYjyA4JlkeUeZWPq8l15kGnCigQhQB03kUKeoJ6TdrPuFNNC7E89kj0Dlw1J3sG5txcpvxB8+Z1F6EzBJ8zvtjwT74AljFC6d2II+4AAAASdEVYdFNvZnR3YXJlAGV6Z2lmLmNvbaDDs1gAAAAxdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIGV6Z2lmLmNvbSBBbmltYXRlZCBQTkcgbWFrZXKphWVeAAAAAElFTkSuQmCC",z2=()=>jsx(D2,{children:jsx("img",{src:I2})}),D2=createStyled$1("div",{target:"e1ho5dd50"})({name:"hmtpto",styles:"height:24px;width:24px;overflow:hidden;img{height:100%;}"}),at=({device:o,id:s,cameraName:_,height:j,width:$})=>{const[_e,et]=reactExports.useState(!0),tt=async st=>{await Authentication.waitTilAuthenticated();const ut=await rt();o.addRealtimeListener((Ft,dt)=>{dt.header.stream.streamName===_&&st.drawVideoFrame(dt.payload.h264VideoFrame)}),o.startListeningToRealtimeVideo(ut),et(!1)},nt=async()=>{const st=await Fleet.getCurrentDevice(),ut=await rt();await st.stopListeningToRealtimeVideo(ut)},rt=reactExports.useCallback(async()=>{const st=(await o.getRealtimeVideoStreams()).filter(ut=>ut.name===_);return st.length===0&&console.error("Error: Camera name is incorrect or doesn't exist"),st[0]},[_]),it=reactExports.useCallback(async()=>{const st=document.querySelector(`#${s}`);st.drawer.start(),await tt(st)},[]);return reactExports.useLayoutEffect(()=>{if(o)return it().then(st=>console.warn("video mounted")),()=>{nt()}},[o]),jsxs(T2,{height:j,width:$,children:[_e&&jsx(z2,{}),jsx("formant-realtime-player",{id:s,style:{display:_e?"none":"block",backgroundColor:"transparent",height:"100%",width:"100%"}})]})},T2=createStyled$1("div",{target:"ee073z40"})("display:flex;align-items:center;justify-content:center;width:",o=>o.width?o.width:"100%",";height:",o=>o.height?o.height:"100%",";");Chart.register(...registerables);const App$1="";function timeout(o){return new Promise(s=>setTimeout(s,o))}function App(){const o=Oe(),{camera:s,isTeleopModule:_}=o.configuration,j=s0(),[$,_e]=reactExports.useState(!0),et=reactExports.useCallback(async()=>{if(!j)return;await j.startRealtimeConnection({sessionType:SessionTypeConstants.OBSERVE,maxConnectRetries:10,deadlineMs:1e4});let tt=!1;for(;!tt;)tt=await j.isInRealtimeSession(),console.warn("Waiting for the main connection to establish."),await timeout(2e3);console.warn("Main connection completed"),_e(!1)},[j]);return reactExports.useEffect(()=>{if(!(!j||!s)){if(!_){j.startRealtimeConnection({sessionType:SessionTypeConstants.OBSERVE,maxConnectRetries:50,deadlineMs:2e4}).then(()=>_e(!1));return}return et(),()=>{j.stopRealtimeConnection()}}},[j,s]),jsx$1("div",{className:"App",children:$||!j?jsx$1(z2,{}):jsx$1(at,{cameraName:s,device:j,id:"rtc-video"})})}const index="";client.createRoot(document.getElementById("root")).render(jsx$1(Ke,{parseConfiguration:!0,children:jsx$1(App,{})})); diff --git a/examples/realtime-video/dist/index.html b/examples/realtime-video/dist/index.html index 70fdda41..ca34d98e 100644 --- a/examples/realtime-video/dist/index.html +++ b/examples/realtime-video/dist/index.html @@ -5,7 +5,7 @@ Vite + React + TS - +