From 76501ff1cb0edcf8687305c16a4a1c7267d351e3 Mon Sep 17 00:00:00 2001 From: Amir Nathoo Date: Mon, 8 Sep 2025 17:10:44 -0700 Subject: [PATCH 1/2] Revert "Bump realtime sdk (#223)" This reverts commit 3ce0e493b399ad6e2fa593b816deba582b5fe7d0. --- .../dist/assets/index-42125c84.js | 259 ++ .../dist/assets/index-643462ad.js | 210 - examples/realtime-video/dist/index.html | 2 +- examples/realtime-video/package-lock.json | 3574 ++++++++++++----- examples/realtime-video/yarn.lock | 1355 ++++--- 5 files changed, 3644 insertions(+), 1756 deletions(-) create mode 100644 examples/realtime-video/dist/assets/index-42125c84.js delete mode 100644 examples/realtime-video/dist/assets/index-643462ad.js diff --git a/examples/realtime-video/dist/assets/index-42125c84.js b/examples/realtime-video/dist/assets/index-42125c84.js new file mode 100644 index 000000000..8986e30f0 --- /dev/null +++ b/examples/realtime-video/dist/assets/index-42125c84.js @@ -0,0 +1,259 @@ +var by=Object.defineProperty;var vy=(o,s,_)=>s in o?by(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_;var dr=(o,s,_)=>(vy(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 global<"u"?global: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,Ct=bt[At];if(0<$(Ct,Jt))bt[At]=Jt,bt[wt]=Ct,wt=At;else break e}}function _(bt){return bt.length===0?null:bt[0]}function j(bt){if(bt.length===0)return null;var Jt=bt[0],wt=bt.pop();if(wt!==Jt){bt[0]=wt;e:for(var At=0,Ct=bt.length,Mt=Ct>>>1;At$(sn,wt))Lt$(tn,sn)?(bt[At]=tn,bt[Lt]=wt,At=Lt):(bt[At]=sn,bt[nn]=wt,At=nn);else if(Lt$(tn,wt))bt[At]=tn,bt[Lt]=wt,At=Lt;else break e}}return Jt}function $(bt,Jt){var wt=bt.sortIndex-Jt.sortIndex;return wt!==0?wt:bt.id-Jt.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=[],lt=1,ut=null,Ut=3,ot=!1,st=!1,dt=!1,St=typeof setTimeout=="function"?setTimeout:null,pt=typeof clearTimeout=="function"?clearTimeout:null,Rt=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function Bt(bt){for(var Jt=_(rt);Jt!==null;){if(Jt.callback===null)j(rt);else if(Jt.startTime<=bt)j(rt),Jt.sortIndex=Jt.expirationTime,s(nt,Jt);else break;Jt=_(rt)}}function ht(bt){if(dt=!1,Bt(bt),!st)if(_(nt)!==null)st=!0,qt(mt);else{var Jt=_(rt);Jt!==null&&kt(ht,Jt.startTime-bt)}}function mt(bt,Jt){st=!1,dt&&(dt=!1,pt(Tt),Tt=-1),ot=!0;var wt=Ut;try{for(Bt(Jt),ut=_(nt);ut!==null&&(!(ut.expirationTime>Jt)||bt&&!yt());){var At=ut.callback;if(typeof At=="function"){ut.callback=null,Ut=ut.priorityLevel;var Ct=At(ut.expirationTime<=Jt);Jt=o.unstable_now(),typeof Ct=="function"?ut.callback=Ct:ut===_(nt)&&j(nt),Bt(Jt)}else j(nt);ut=_(nt)}if(ut!==null)var Mt=!0;else{var nn=_(rt);nn!==null&&kt(ht,nn.startTime-Jt),Mt=!1}return Mt}finally{ut=null,Ut=wt,ot=!1}}var gt=!1,Vt=null,Tt=-1,ft=5,Wt=-1;function yt(){return!(o.unstable_now()-Wtbt||125At?(bt.sortIndex=wt,s(rt,bt),_(nt)===null&&bt===_(rt)&&(dt?(pt(Tt),Tt=-1):dt=!0,kt(ht,wt-At))):(bt.sortIndex=Ct,s(nt,bt),st||ot||(st=!0,qt(mt))),bt},o.unstable_shouldYield=yt,o.unstable_wrapCallback=function(bt){var Jt=Ut;return function(){var wt=Ut;Ut=Jt;try{return bt.apply(this,arguments)}finally{Ut=wt}}}})(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$1(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 lt=o.alternate;lt!==null&&(lt=lt.updateQueue,tt=lt.lastBaseUpdate,tt!==et&&(tt===null?lt.firstBaseUpdate=rt:tt.next=rt,lt.lastBaseUpdate=nt))}if(_e!==null){var ut=$.baseState;et=0,lt=rt=nt=null,tt=_e;do{var Ut=tt.lane,ot=tt.eventTime;if((j&Ut)===Ut){lt!==null&&(lt=lt.next={eventTime:ot,lane:0,tag:tt.tag,payload:tt.payload,callback:tt.callback,next:null});e:{var st=o,dt=tt;switch(Ut=s,ot=_,dt.tag){case 1:if(st=dt.payload,typeof st=="function"){ut=st.call(ot,ut,Ut);break e}ut=st;break e;case 3:st.flags=st.flags&-65537|128;case 0:if(st=dt.payload,Ut=typeof st=="function"?st.call(ot,ut,Ut):st,Ut==null)break e;ut=A$1({},ut,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 ot={eventTime:ot,lane:Ut,tag:tt.tag,payload:tt.payload,callback:tt.callback,next:null},lt===null?(rt=lt=ot,nt=ut):lt=lt.next=ot,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(lt===null&&(nt=ut),$.baseState=nt,$.firstBaseUpdate=rt,$.lastBaseUpdate=lt,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=ut}}function ih(o,s,_){if(o=s.effects,s.effects=null,o!==null)for(s=0;sTt?(ft=Vt,Vt=null):ft=Vt.sibling;var Wt=Ut(pt,Vt,Bt[Tt],ht);if(Wt===null){Vt===null&&(Vt=ft);break}o&&Vt&&Wt.alternate===null&&s(pt,Vt),Rt=_e(Wt,Rt,Tt),gt===null?mt=Wt:gt.sibling=Wt,gt=Wt,Vt=ft}if(Tt===Bt.length)return _(pt,Vt),I&&tg(pt,Tt),mt;if(Vt===null){for(;TtTt?(ft=Vt,Vt=null):ft=Vt.sibling;var yt=Ut(pt,Vt,Wt.value,ht);if(yt===null){Vt===null&&(Vt=ft);break}o&&Vt&&yt.alternate===null&&s(pt,Vt),Rt=_e(yt,Rt,Tt),gt===null?mt=yt:gt.sibling=yt,gt=yt,Vt=ft}if(Wt.done)return _(pt,Vt),I&&tg(pt,Tt),mt;if(Vt===null){for(;!Wt.done;Tt++,Wt=Bt.next())Wt=ut(pt,Wt.value,ht),Wt!==null&&(Rt=_e(Wt,Rt,Tt),gt===null?mt=Wt:gt.sibling=Wt,gt=Wt);return I&&tg(pt,Tt),mt}for(Vt=j(pt,Vt);!Wt.done;Tt++,Wt=Bt.next())Wt=ot(Vt,pt,Tt,Wt.value,ht),Wt!==null&&(o&&Wt.alternate!==null&&Vt.delete(Wt.key===null?Tt:Wt.key),Rt=_e(Wt,Rt,Tt),gt===null?mt=Wt:gt.sibling=Wt,gt=Wt);return o&&Vt.forEach(function(Kt){return s(pt,Kt)}),I&&tg(pt,Tt),mt}function St(pt,Rt,Bt,ht){if(typeof Bt=="object"&&Bt!==null&&Bt.type===ya&&Bt.key===null&&(Bt=Bt.props.children),typeof Bt=="object"&&Bt!==null){switch(Bt.$$typeof){case va:e:{for(var mt=Bt.key,gt=Rt;gt!==null;){if(gt.key===mt){if(mt=Bt.type,mt===ya){if(gt.tag===7){_(pt,gt.sibling),Rt=$(gt,Bt.props.children),Rt.return=pt,pt=Rt;break e}}else if(gt.elementType===mt||typeof mt=="object"&&mt!==null&&mt.$$typeof===Ha&&uh(mt)===gt.type){_(pt,gt.sibling),Rt=$(gt,Bt.props),Rt.ref=sh(pt,gt,Bt),Rt.return=pt,pt=Rt;break e}_(pt,gt);break}else s(pt,gt);gt=gt.sibling}Bt.type===ya?(Rt=Ah(Bt.props.children,pt.mode,ht,Bt.key),Rt.return=pt,pt=Rt):(ht=yh(Bt.type,Bt.key,Bt.props,null,pt.mode,ht),ht.ref=sh(pt,Rt,Bt),ht.return=pt,pt=ht)}return et(pt);case wa:e:{for(gt=Bt.key;Rt!==null;){if(Rt.key===gt)if(Rt.tag===4&&Rt.stateNode.containerInfo===Bt.containerInfo&&Rt.stateNode.implementation===Bt.implementation){_(pt,Rt.sibling),Rt=$(Rt,Bt.children||[]),Rt.return=pt,pt=Rt;break e}else{_(pt,Rt);break}else s(pt,Rt);Rt=Rt.sibling}Rt=zh(Bt,pt.mode,ht),Rt.return=pt,pt=Rt}return et(pt);case Ha:return gt=Bt._init,St(pt,Rt,gt(Bt._payload),ht)}if(eb(Bt))return st(pt,Rt,Bt,ht);if(Ka(Bt))return dt(pt,Rt,Bt,ht);th(pt,Bt)}return typeof Bt=="string"&&Bt!==""||typeof Bt=="number"?(Bt=""+Bt,Rt!==null&&Rt.tag===6?(_(pt,Rt.sibling),Rt=$(Rt,Bt),Rt.return=pt,pt=Rt):(_(pt,Rt),Rt=xh(Bt,pt.mode,ht),Rt.return=pt,pt=Rt),et(pt)):_(pt,Rt)}return St}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 lt=_.getDerivedStateFromProps,ut=typeof lt=="function"||typeof et.getSnapshotBeforeUpdate=="function";ut||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 lt=="function"&&(kh(s,_,lt,j),nt=s.memoizedState),(tt=$g||oh(s,_,tt,j,Ut,nt,rt))?(ut||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,ut=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 ot=_.getDerivedStateFromProps;(lt=typeof ot=="function"||typeof et.getSnapshotBeforeUpdate=="function")||typeof et.UNSAFE_componentWillReceiveProps!="function"&&typeof et.componentWillReceiveProps!="function"||(tt!==ut||Ut!==nt)&&qh(s,et,j,nt),$g=!1,Ut=s.memoizedState,et.state=Ut,gh(s,j,et,$);var st=s.memoizedState;tt!==ut||Ut!==st||Wf.current||$g?(typeof ot=="function"&&(kh(s,_,ot,j),st=s.memoizedState),(rt=$g||oh(s,_,rt,j,Ut,st,nt)||!1)?(lt||typeof et.UNSAFE_componentWillUpdate!="function"&&typeof et.componentWillUpdate!="function"||(typeof et.componentWillUpdate=="function"&&et.componentWillUpdate(j,st,nt),typeof et.UNSAFE_componentWillUpdate=="function"&&et.UNSAFE_componentWillUpdate(j,st,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=st),et.props=j,et.state=st,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,lt=0,ut=o,Ut=null;t:for(;;){for(var ot;ut!==_||$!==0&&ut.nodeType!==3||(tt=et+$),ut!==_e||j!==0&&ut.nodeType!==3||(nt=et+j),ut.nodeType===3&&(et+=ut.nodeValue.length),(ot=ut.firstChild)!==null;)Ut=ut,ut=ot;for(;;){if(ut===o)break t;if(Ut===_&&++rt===$&&(tt=et),Ut===_e&&++lt===j&&(nt=et),(ot=ut.nextSibling)!==null)break;ut=Ut,Ut=ut.parentNode}ut=ot}_=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 st=s.alternate;if(s.flags&1024)switch(s.tag){case 0:case 11:case 15:break;case 1:if(st!==null){var dt=st.memoizedProps,St=st.memoizedState,pt=s.stateNode,Rt=pt.getSnapshotBeforeUpdate(s.elementType===s.type?dt:Lg(s.type,dt),St);pt.__reactInternalSnapshotBeforeUpdate=Rt}break;case 3:var Bt=s.stateNode.containerInfo;Bt.nodeType===1?Bt.textContent="":Bt.nodeType===9&&Bt.documentElement&&Bt.removeChild(Bt.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p$1(163))}}catch(ht){W(s,s.return,ht)}if(o=s.sibling,o!==null){o.return=s.return,V=o;break}V=s.return}return st=Oj,Oj=!1,st}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(dt){W(o,o.return,dt)}try{Qj(5,o,o.return)}catch(dt){W(o,o.return,dt)}}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(dt){W(o,o.return,dt)}}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 lt=rt.pending;lt===null?nt.next=nt:(nt.next=lt.next,lt.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,lt=0,ut=et,Ut=0,ot=0,st=0,dt=1,St=1,pt=1,Rt=0,Bt="",ht=$,mt=_e,gt=j,Vt=Bt;St;)switch(st=Rt,Rt=next()){case 40:if(st!=108&&charat(Vt,ut-1)==58){indexof(Vt+=replace(delimit(Rt),"&","&\f"),"&\f")!=-1&&(pt=-1);break}case 34:case 39:case 91:Vt+=delimit(Rt);break;case 9:case 10:case 13:case 32:Vt+=whitespace(st);break;case 92:Vt+=escaping(caret()-1,7);continue;case 47:switch(peek()){case 42:case 47:append(comment(commenter(next(),caret()),s,_),nt);break;default:Vt+="/"}break;case 123*dt:tt[rt++]=strlen(Vt)*pt;case 125*dt:case 59:case 0:switch(Rt){case 0:case 125:St=0;case 59+lt:ot>0&&strlen(Vt)-ut&&append(ot>32?declaration(Vt+";",j,_,ut-1):declaration(replace(Vt," ","")+";",j,_,ut-2),nt);break;case 59:Vt+=";";default:if(append(gt=ruleset(Vt,s,_,rt,lt,$,tt,Bt,ht=[],mt=[],ut),_e),Rt===123)if(lt===0)parse$1(Vt,s,gt,gt,ht,_e,ut,tt,mt);else switch(Ut===99&&charat(Vt,3)===110?100:Ut){case 100:case 109:case 115:parse$1(o,gt,gt,j&&append(ruleset(o,gt,gt,0,0,$,tt,Bt,$,ht=[],ut),mt),$,mt,ut,tt,j?ht:mt);break;default:parse$1(Vt,gt,gt,gt,[""],mt,0,tt,mt)}}rt=lt=ot=0,dt=pt=1,Bt=Vt="",ut=et;break;case 58:ut=1+strlen(Vt),ot=st;default:if(dt<1){if(Rt==123)--dt;else if(Rt==125&&dt++==0&&prev()==125)continue}switch(Vt+=from$1(Rt),Rt*dt){case 38:pt=lt>0?1:(Vt+="\f",-1);break;case 44:tt[rt++]=(strlen(Vt)-1)*pt,pt=1;break;case 64:peek()===45&&(Vt+=delimit(next())),Ut=peek(),lt=ut=strlen(Bt=Vt+=identifier(caret())),Rt++;break;case 45:st===45&&strlen(Vt)==2&&(dt=0)}}return _e}function ruleset(o,s,_,j,$,_e,et,tt,nt,rt,lt){for(var ut=$-1,Ut=$===0?_e:[""],ot=sizeof(Ut),st=0,dt=0,St=0;st0?Ut[pt]+" "+Rt:replace(Rt,/&\f/g,Ut[pt])))&&(nt[St++]=Bt);return node(o,s,_,$===0?RULESET:tt,nt,rt,lt)}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(dt){var St=dt.getAttribute("data-emotion");St.indexOf(" ")!==-1&&(document.head.appendChild(dt),dt.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(dt){for(var St=dt.getAttribute("data-emotion").split(" "),pt=1;pt=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+"-global",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 lt=arguments,ut=j&&s.__emotion_styles!==void 0?s.__emotion_styles.slice(0):[];if(_e!==void 0&&ut.push("label:"+_e+";"),lt[0]==null||lt[0].raw===void 0)ut.push.apply(ut,lt);else{ut.push(lt[0][0]);for(var Ut=lt.length,ot=1;ots(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,ut=>{let Ut=getStyleValue(rt,$,ut);return ut===Ut&&typeof ut=="string"&&(Ut=getStyleValue(rt,$,`${s}${ut==="default"?"":capitalize(ut)}`,ut)),_===!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:lt,style:ut}=tt;if(j==null)return null;const Ut=getPath($,rt)||{};return ut?ut(et):handleBreakpoints(et,j,st=>{let dt=getStyleValue(Ut,lt,st);return st===dt&&typeof st=="string"&&(dt=getStyleValue(Ut,lt,`${_}${st==="default"?"":capitalize(st)}`,st)),nt===!1?dt:{[nt]:dt}})}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 lt=createEmptyBreakpointObject(_e.breakpoints),ut=Object.keys(lt);let Ut=lt;return Object.keys(rt).forEach(ot=>{const st=callIfFn(rt[ot],_e);if(st!=null)if(typeof st=="object")if(et[ot])Ut=merge$2(Ut,o(ot,st,_e,et));else{const dt=handleBreakpoints({theme:_e},st,St=>({[ot]:St}));objectsHaveSameKeys(dt,st)?Ut[ot]=s({sx:st,theme:_e}):Ut=merge$2(Ut,dt)}else Ut=merge$2(Ut,o(ot,st,_e,et))}),removeUnusedBreakpoints(ut,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,ot){const st=et.indexOf(ot);return`@media (min-width:${typeof s[Ut]=="number"?s[Ut]:Ut}${_}) and (max-width:${(st!==-1&&typeof s[et[st]]=="number"?s[et[st]]:ot)-j/100}${_})`}function lt(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((lt,ut)=>deepmerge(lt,ut),rt),rt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,et==null?void 0:et.unstable_sxConfig),rt.unstable_sx=function(ut){return styleFunctionSx$1({sx:ut,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 lt=!0;Object.keys(rt.props).forEach(ut=>{et[ut]!==rt.props[ut]&&o[ut]!==rt.props[ut]&&(lt=!1)}),lt&&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,Bt=>Bt.filter(ht=>!(ht!=null&&ht.__mui_systemSx)));const{name:tt,slot:nt,skipVariantsResolver:rt,skipSx:lt,overridesResolver:ut}=et,Ut=_objectWithoutPropertiesLoose$1(et,_excluded$5),ot=rt!==void 0?rt:nt&&nt!=="Root"||!1,st=lt||!1;let dt,St=shouldForwardProp;nt==="Root"?St=_:nt?St=j:isStringTag(_e)&&(St=void 0);const pt=styled$2(_e,_extends$1({shouldForwardProp:St,label:dt},Ut)),Rt=(Bt,...ht)=>{const mt=ht?ht.map(ft=>typeof ft=="function"&&ft.__emotion_real!==ft?Wt=>{let{theme:yt}=Wt,Kt=_objectWithoutPropertiesLoose$1(Wt,_excluded2);return ft(_extends$1({theme:isEmpty(yt)?s:yt},Kt))}:ft):[];let gt=Bt;tt&&ut&&mt.push(ft=>{const Wt=isEmpty(ft.theme)?s:ft.theme,yt=getStyleOverrides(tt,Wt);if(yt){const Kt={};return Object.entries(yt).forEach(([$t,Ht])=>{Kt[$t]=typeof Ht=="function"?Ht(_extends$1({},ft,{theme:Wt})):Ht}),ut(ft,Kt)}return null}),tt&&!ot&&mt.push(ft=>{const Wt=isEmpty(ft.theme)?s:ft.theme;return variantsResolver(ft,getVariantStyles(tt,Wt),Wt,tt)}),st||mt.push($);const Vt=mt.length-ht.length;if(Array.isArray(Bt)&&Vt>0){const ft=new Array(Vt).fill("");gt=[...Bt,...ft],gt.raw=[...Bt.raw,...ft]}else typeof Bt=="function"&&Bt.__emotion_real!==Bt&&(gt=ft=>{let{theme:Wt}=ft,yt=_objectWithoutPropertiesLoose$1(ft,_excluded3);return Bt(_extends$1({theme:isEmpty(Wt)?s:Wt},yt))});return pt(gt,...mt)};return pt.withConfig&&(Rt.withConfig=pt.withConfig),Rt}}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,lt=(rt+_/30)%12)=>$-_e*Math.max(Math.min(lt-3,9-lt,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),lt=o.warning||getDefaultWarning(s);function ut(dt){return getContrastRatio(dt,dark.text.primary)>=_?dark.text.primary:light.text.primary}const Ut=({color:dt,name:St,mainShade:pt=500,lightShade:Rt=300,darkShade:Bt=700})=>{if(dt=_extends$1({},dt),!dt.main&&dt[pt]&&(dt.main=dt[pt]),!dt.hasOwnProperty("main"))throw new Error(formatMuiErrorMessage(11,St?` (${St})`:"",pt));if(typeof dt.main!="string")throw new Error(formatMuiErrorMessage(12,St?` (${St})`:"",JSON.stringify(dt.main)));return addLightOrDark(dt,"light",Rt,j),addLightOrDark(dt,"dark",Bt,j),dt.contrastText||(dt.contrastText=ut(dt.main)),dt},ot={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:lt,name:"warning"}),info:Ut({color:nt,name:"info"}),success:Ut({color:rt,name:"success"}),grey:grey$1,contrastThreshold:_,getContrastText:ut,augmentColor:Ut,tonalOffset:j},ot[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:lt,pxToRem:ut}=_,Ut=_objectWithoutPropertiesLoose$1(_,_excluded$3),ot=$/14,st=ut||(pt=>`${pt/rt*ot}rem`),dt=(pt,Rt,Bt,ht,mt)=>_extends$1({fontFamily:j,fontWeight:pt,fontSize:st(Rt),lineHeight:Bt},j===defaultFontFamily?{letterSpacing:`${round$1(ht/Rt)}em`}:{},mt,lt),St={h1:dt(_e,96,1.167,-1.5),h2:dt(_e,60,1.2,-.5),h3:dt(et,48,1.167,0),h4:dt(et,34,1.235,.25),h5:dt(et,24,1.334,0),h6:dt(tt,20,1.6,.15),subtitle1:dt(et,16,1.75,.15),subtitle2:dt(tt,14,1.57,.1),body1:dt(et,16,1.5,.15),body2:dt(et,14,1.43,.15),button:dt(tt,14,1.75,.4,caseAllCaps),caption:dt(et,12,1.66,.4),overline:dt(et,12,2.66,1,caseAllCaps)};return deepmerge(_extends$1({htmlFontSize:rt,pxToRem:st,fontFamily:j,fontSize:$,fontWeightLight:_e,fontWeightRegular:et,fontWeightMedium:tt,fontWeightBold:nt},St),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$1={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$1,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((lt,ut)=>deepmerge(lt,ut),rt),rt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,et==null?void 0:et.unstable_sxConfig),rt.unstable_sx=function(ut){return styleFunctionSx$1({sx:ut,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 mn=Object.defineProperty,bn=(o,s,_)=>s in o?mn(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_,ke=(o,s,_)=>(bn(o,typeof s!="symbol"?s+"":s,_),_);const DEFAULT_FORMANT_API_URL="https://api.formant.io";function whichFormantApiUrl(o,s,_){try{if(_){if(_.includes("app-dev.formant.io")||_.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"))return"https://api.formant.local"}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}`)}}}catch{}return typeof o<"u"&&"FORMANT_API_URL"in o&&typeof o.FORMANT_API_URL=="string"?o.FORMANT_API_URL:DEFAULT_FORMANT_API_URL}const 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);var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global: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(st){this.message=st};et.prototype=new Error,et.prototype.name="InvalidCharacterError";var tt=function(st){throw new et(st)},nt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",rt=/[\t\n\f\r ]/g,lt=function(st){st=String(st).replace(rt,"");var dt=st.length;dt%4==0&&(st=st.replace(/==?$/,""),dt=st.length),(dt%4==1||/[^+a-zA-Z0-9/]/.test(st))&&tt("Invalid character: the string to be decoded is not correctly encoded.");for(var St=0,pt,Rt,Bt="",ht=-1;++ht>(-2*St&6)));return Bt},ut=function(st){st=String(st),/[^\0-\xFF]/.test(st)&&tt("The string to be encoded contains characters outside of the Latin1 range.");for(var dt=st.length%3,St="",pt=-1,Rt,Bt,ht,mt,gt=st.length-dt;++pt>18&63)+nt.charAt(mt>>12&63)+nt.charAt(mt>>6&63)+nt.charAt(mt&63);return dt==2?(Rt=st.charCodeAt(pt)<<8,Bt=st.charCodeAt(++pt),mt=Rt+Bt,St+=nt.charAt(mt>>10)+nt.charAt(mt>>4&63)+nt.charAt(mt<<2&63)+"="):dt==1&&(mt=st.charCodeAt(pt),St+=nt.charAt(mt>>2)+nt.charAt(mt<<4&63)+"=="),St},Ut={encode:ut,decode:lt,version:"1.0.0"};if(j&&!j.nodeType)if($)$.exports=Ut;else for(var ot in Ut)Ut.hasOwnProperty(ot)&&(j[ot]=Ut[ot]);else _.base64=Ut})(commonjsGlobal)})(base64,base64.exports);var base64Exports=base64.exports;class LoginFailureError extends Error{constructor(s){super("login failed"),ke(this,"reason"),this.reason=s,this.name="LoginFailureError",Object.setPrototypeOf(this,new.target.prototype)}}class LoginChallengedError extends Error{constructor(s){super("login challenged"),ke(this,"challenge"),this.challenge=s,this.name="LoginChallengedError",Object.setPrototypeOf(this,new.target.prototype)}}class AuthenticationStore{constructor({apiUrl:s,refreshAuthToken:_,addAccessTokenRefreshListener:j}){ke(this,"_refreshToken"),ke(this,"_isShareToken",!1),ke(this,"_currentOrganization"),ke(this,"_currentUser"),ke(this,"_defaultDeviceId"),ke(this,"_token"),ke(this,"_waitingForAuth",new Set),ke(this,"_refreshTimer"),ke(this,"_apiUrl"),ke(this,"_refreshAuthToken"),ke(this,"_addAccessTokenRefreshListener"),this._apiUrl=s,this._refreshAuthToken=_,this._addAccessTokenRefreshListener=j}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!==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)}}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})}function addAccessTokenRefreshListener(o){function s(_){const j=_.data;j.type==="auth_token"&&o(j.token)}return window.addEventListener("message",s),()=>{window.removeEventListener("message",s)}}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 lt=getDefaultOptions(),ut=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?$:lt.weekStartsOn)!==null&&j!==void 0?j:(nt=lt.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.weekStartsOn)!==null&&_!==void 0?_:0);if(!(ut>=0&&ut<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Ut=toDate(o),ot=Ut.getDay(),st=(ot=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 lt=getDefaultOptions(),ut=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?$:lt.weekStartsOn)!==null&&j!==void 0?j:(nt=lt.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.weekStartsOn)!==null&&_!==void 0?_:0);if(!(ut>=0&&ut<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Ut=toDate(o),ot=Ut.getDay(),st=(ot=1&&ot<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var st=new Date(0);st.setFullYear(ut+1,0,ot),st.setHours(0,0,0,0);var dt=startOfWeek(st,s),St=new Date(0);St.setFullYear(ut,0,ot),St.setHours(0,0,0,0);var pt=startOfWeek(St,s);return lt.getTime()>=dt.getTime()?ut+1:lt.getTime()>=pt.getTime()?ut:ut-1}function startOfWeekYear(o,s){var _,j,$,_e,et,tt,nt,rt;requiredArgs(1,arguments);var lt=getDefaultOptions(),ut=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?$:lt.firstWeekContainsDate)!==null&&j!==void 0?j:(nt=lt.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.firstWeekContainsDate)!==null&&_!==void 0?_:1),Ut=getWeekYear(o,s),ot=new Date(0);ot.setFullYear(Ut,0,ut),ot.setHours(0,0,0,0);var st=startOfWeek(ot,s);return st}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,lt=Math.round(rt/j)*j;return new Date($.getFullYear(),$.getMonth(),$.getDate(),$.getHours(),nt+lt)}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}={}){ke(this,"entries",new Map),ke(this,"metadata",new Map),ke(this,"capacity"),ke(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(){ke(this,"queryStoreCache",new StoreCache$1({capacity:1e4,timeout:20*duration$2.second})),ke(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 ln=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 ln._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=ln;ke(App$2,"getCurrentModuleContext",getCurrentModuleContext),ke(App$2,"disableAnalyticsBottomBar",disableAnalyticsBottomBar),ke(App$2,"goToDevice",goToDevice),ke(App$2,"goToTime",goToTime),ke(App$2,"refreshAuthToken",refreshAuthToken),ke(App$2,"requestModuleData",requestModuleData),ke(App$2,"sendChannelData",sendChannelData),ke(App$2,"setModuleDateTimeRange",setModuleDateTimeRange),ke(App$2,"setupModuleMenus",setupModuleMenus),ke(App$2,"showMessage",showMessage),ke(App$2,"addAccessTokenRefreshListener",addAccessTokenRefreshListener),ke(App$2,"addChannelDataListener",addChannelDataListener),ke(App$2,"addMenuListener",addMenuListener),ke(App$2,"addModuleConfigurationListener",addModuleConfigurationListener),ke(App$2,"addModuleDataListener",addModuleDataListener),ke(App$2,"addOverviewDeviceListener",addOverviewDeviceListener),ke(App$2,"addStreamListener",addStreamListener),ke(App$2,"getDate",getDate),ke(App$2,"prompt",prompt),ke(App$2,"_isOnline",null);function defined$1(o,s){if(o!==void 0)return o;throw new Error(s||"Value is undefined")}var dist={exports:{}};/*! For license information please see index.js.LICENSE.txt */(function(o,s){(function(_,j){o.exports=j()})(self,()=>(()=>{var _={5475:(et,tt,nt)=>{var rt={};et.exports=rt,rt.themes={};var lt=nt(9208),ut=rt.styles=nt(9253),Ut=Object.defineProperties,ot=new RegExp(/[\r\n]+/g);rt.supportsColor=nt(3822).supportsColor,rt.enabled===void 0&&(rt.enabled=rt.supportsColor()!==!1),rt.enable=function(){rt.enabled=!0},rt.disable=function(){rt.enabled=!1},rt.stripColors=rt.strip=function(gt){return(""+gt).replace(/\x1B\[\d+m/g,"")},rt.stylize=function(gt,Vt){if(!rt.enabled)return gt+"";var Tt=ut[Vt];return!Tt&&Vt in rt?rt[Vt](gt):Tt.open+gt+Tt.close};var st=/[|\\{}()[\]^$+*?.]/g;function dt(gt){var Vt=function Tt(){return Bt.apply(Tt,arguments)};return Vt._styles=gt,Vt.__proto__=Rt,Vt}var St,pt=(St={},ut.grey=ut.gray,Object.keys(ut).forEach(function(gt){ut[gt].closeRe=new RegExp(function(Vt){if(typeof Vt!="string")throw new TypeError("Expected a string");return Vt.replace(st,"\\$&")}(ut[gt].close),"g"),St[gt]={get:function(){return dt(this._styles.concat(gt))}}}),St),Rt=Ut(function(){},pt);function Bt(){var gt=Array.prototype.slice.call(arguments),Vt=gt.map(function(Kt){return Kt!=null&&Kt.constructor===String?Kt:lt.inspect(Kt)}).join(" ");if(!rt.enabled||!Vt)return Vt;for(var Tt=Vt.indexOf(` +`)!=-1,ft=this._styles,Wt=ft.length;Wt--;){var yt=ut[ft[Wt]];Vt=yt.open+Vt.replace(yt.closeRe,yt.open)+yt.close,Tt&&(Vt=Vt.replace(ot,function(Kt){return yt.close+Kt+yt.open}))}return Vt}rt.setTheme=function(gt){if(typeof gt!="string")for(var Vt in gt)(function(Tt){rt[Tt]=function(ft){if(typeof gt[Tt]=="object"){var Wt=ft;for(var yt in gt[Tt])Wt=rt[gt[Tt][yt]](Wt);return Wt}return rt[gt[Tt]](ft)}})(Vt);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 ht=function(gt,Vt){var Tt=Vt.split("");return(Tt=Tt.map(gt)).join("")};for(var mt in rt.trap=nt(8740),rt.zalgo=nt(6798),rt.maps={},rt.maps.america=nt(3427)(rt),rt.maps.zebra=nt(8479)(rt),rt.maps.rainbow=nt(4517)(rt),rt.maps.random=nt(6948)(rt),rt.maps)(function(gt){rt[gt]=function(Vt){return ht(rt.maps[gt],Vt)}})(mt);Ut(rt,function(){var gt={};return Object.keys(pt).forEach(function(Vt){gt[Vt]={get:function(){return dt([Vt])}}}),gt}())},8740:et=>{et.exports=function(tt,nt){var rt="";tt=(tt=tt||"Run the trap, drop the bass").split("");var lt={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 tt.forEach(function(ut){ut=ut.toLowerCase();var Ut=lt[ut]||[" "],ot=Math.floor(Math.random()*Ut.length);rt+=lt[ut]!==void 0?lt[ut][ot]:ut}),rt}},6798:et=>{et.exports=function(tt,nt){tt=tt||" he is here ";var rt={up:["̍","̎","̄","̅","̿","̑","̆","̐","͒","͗","͑","̇","̈","̊","͂","̓","̈","͊","͋","͌","̃","̂","̌","͐","̀","́","̋","̏","̒","̓","̔","̽","̉","ͣ","ͤ","ͥ","ͦ","ͧ","ͨ","ͩ","ͪ","ͫ","ͬ","ͭ","ͮ","ͯ","̾","͛","͆","̚"],down:["̖","̗","̘","̙","̜","̝","̞","̟","̠","̤","̥","̦","̩","̪","̫","̬","̭","̮","̯","̰","̱","̲","̳","̹","̺","̻","̼","ͅ","͇","͈","͉","͍","͎","͓","͔","͕","͖","͙","͚","̣"],mid:["̕","̛","̀","́","͘","̡","̢","̧","̨","̴","̵","̶","͜","͝","͞","͟","͠","͢","̸","̷","͡"," ҉"]},lt=[].concat(rt.up,rt.down,rt.mid);function ut(ot){return Math.floor(Math.random()*ot)}function Ut(ot){var st=!1;return lt.filter(function(dt){st=dt===ot}),st}return function(ot,st){var dt,St,pt="";for(St in(st=st||{}).up=st.up===void 0||st.up,st.mid=st.mid===void 0||st.mid,st.down=st.down===void 0||st.down,st.size=st.size!==void 0?st.size:"maxi",ot=ot.split(""))if(!Ut(St)){switch(pt+=ot[St],dt={up:0,down:0,mid:0},st.size){case"mini":dt.up=ut(8),dt.mid=ut(2),dt.down=ut(8);break;case"maxi":dt.up=ut(16)+3,dt.mid=ut(4)+1,dt.down=ut(64)+3;break;default:dt.up=ut(8)+1,dt.mid=ut(6)/2,dt.down=ut(8)+1}var Rt=["up","mid","down"];for(var Bt in Rt)for(var ht=Rt[Bt],mt=0;mt<=dt[ht];mt++)st[ht]&&(pt+=rt[ht][ut(rt[ht].length)])}return pt}(tt,nt)}},3427:et=>{et.exports=function(tt){return function(nt,rt,lt){if(nt===" ")return nt;switch(rt%3){case 0:return tt.red(nt);case 1:return tt.white(nt);case 2:return tt.blue(nt)}}}},4517:et=>{et.exports=function(tt){var nt=["red","yellow","green","blue","magenta"];return function(rt,lt,ut){return rt===" "?rt:tt[nt[lt++%nt.length]](rt)}}},6948:et=>{et.exports=function(tt){var nt=["underline","inverse","grey","yellow","red","green","blue","white","cyan","magenta","brightYellow","brightRed","brightGreen","brightBlue","brightWhite","brightCyan","brightMagenta"];return function(rt,lt,ut){return rt===" "?rt:tt[nt[Math.round(Math.random()*(nt.length-2))]](rt)}}},8479:et=>{et.exports=function(tt){return function(nt,rt,lt){return rt%2==0?nt:tt.inverse(nt)}}},9253:et=>{var tt={};et.exports=tt;var nt={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(nt).forEach(function(rt){var lt=nt[rt],ut=tt[rt]=[];ut.open="\x1B["+lt[0]+"m",ut.close="\x1B["+lt[1]+"m"})},124:et=>{et.exports=function(tt,nt){var rt=(nt=nt||process.argv||[]).indexOf("--"),lt=/^-{1,2}/.test(tt)?"":"--",ut=nt.indexOf(lt+tt);return ut!==-1&&(rt===-1||ut{var rt=nt(2213),lt=nt(124),ut=process.env,Ut=void 0;function ot(st){return function(dt){return dt!==0&&{level:dt,hasBasic:!0,has256:dt>=2,has16m:dt>=3}}(function(dt){if(Ut===!1)return 0;if(lt("color=16m")||lt("color=full")||lt("color=truecolor"))return 3;if(lt("color=256"))return 2;if(dt&&!dt.isTTY&&Ut!==!0)return 0;var St=Ut?1:0;if(process.platform==="win32"){var pt=rt.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(pt[0])>=10&&Number(pt[2])>=10586?Number(pt[2])>=14931?3:2:1}return"CI"in ut?["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(function(Rt){return Rt in ut})||ut.CI_NAME==="codeship"?1:St:"TEAMCITY_VERSION"in ut?/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ut.TEAMCITY_VERSION)?1:0:("TERM_PROGRAM"in ut&&parseInt("1.92.1".split(".")[0],10),/-256(color)?$/i.test("xterm-256color")?2:/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test("xterm-256color")||"COLORTERM"in ut?1:St)}(st))}lt("no-color")||lt("no-colors")||lt("color=false")?Ut=!1:(lt("color")||lt("colors")||lt("color=true")||lt("color=always"))&&(Ut=!0),"FORCE_COLOR"in ut&&(Ut=ut.FORCE_COLOR.length===0||parseInt(ut.FORCE_COLOR,10)!==0),et.exports={supportsColor:ot,stdout:ot(process.stdout),stderr:ot(process.stderr)}},1158:(et,tt,nt)=>{var rt=nt(5475);et.exports=rt},7147:(et,tt,nt)=>{et.exports=nt(4968)},4968:(et,tt,nt)=>{var rt=nt(8636)(function lt(ut,Ut){return(Ut=Ut||{}).namespace=ut,Ut.prod=!0,Ut.dev=!1,Ut.force||lt.force?lt.yep(Ut):lt.nope(Ut)});et.exports=rt},8636:et=>{var tt=[],nt=[],rt=function(){};function lt(Bt){return!~tt.indexOf(Bt)&&(tt.push(Bt),!0)}function ut(Bt){rt=Bt}function Ut(Bt){for(var ht=[],mt=0;mt{function rt(on){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Gt){return typeof Gt}:function(Gt){return Gt&&typeof Symbol=="function"&&Gt.constructor===Symbol&&Gt!==Symbol.prototype?"symbol":typeof Gt})(on)}function lt(on,Gt){for(var Xt=0;Xt1?Xt-1:0),Vn=1;Vn1?Xt-1:0),Vn=1;Vn1?Xt-1:0),Vn=1;Vn1?Xt-1:0),Vn=1;Vn{function rt(bt,Jt){var wt=Object.keys(bt);if(Object.getOwnPropertySymbols){var At=Object.getOwnPropertySymbols(bt);Jt&&(At=At.filter(function(Ct){return Object.getOwnPropertyDescriptor(bt,Ct).enumerable})),wt.push.apply(wt,At)}return wt}function lt(bt){for(var Jt=1;Jt"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 Bt(bt,Jt){return(Bt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(wt,At){return wt.__proto__=At,wt})(bt,Jt)}function ht(bt){return(ht=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Jt){return Jt.__proto__||Object.getPrototypeOf(Jt)})(bt)}function mt(bt){return(mt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Jt){return typeof Jt}:function(Jt){return Jt&&typeof Symbol=="function"&&Jt.constructor===Symbol&&Jt!==Symbol.prototype?"symbol":typeof Jt})(bt)}var gt=nt(9208).inspect,Vt=nt(1342).codes.ERR_INVALID_ARG_TYPE;function Tt(bt,Jt,wt){return(wt===void 0||wt>bt.length)&&(wt=bt.length),bt.substring(wt-Jt.length,wt)===Jt}var ft="",Wt="",yt="",Kt="",$t={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 Ht(bt){var Jt=Object.keys(bt),wt=Object.create(Object.getPrototypeOf(bt));return Jt.forEach(function(At){wt[At]=bt[At]}),Object.defineProperty(wt,"message",{value:bt.message}),wt}function Nt(bt){return gt(bt,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function qt(bt,Jt,wt){var At="",Ct="",Mt=0,nn="",sn=!1,Lt=Nt(bt),tn=Lt.split(` +`),cn=Nt(Jt).split(` +`),on=0,Gt="";if(wt==="strictEqual"&&mt(bt)==="object"&&mt(Jt)==="object"&&bt!==null&&Jt!==null&&(wt="strictEqualObject"),tn.length===1&&cn.length===1&&tn[0]!==cn[0]){var Xt=tn[0].length+cn[0].length;if(Xt<=10){if(!(mt(bt)==="object"&&bt!==null||mt(Jt)==="object"&&Jt!==null||bt===0&&Jt===0))return"".concat($t[wt],` + +`)+"".concat(tn[0]," !== ").concat(cn[0],` +`)}else if(wt!=="strictEqualObject"&&Xt<(process.stderr&&process.stderr.isTTY?process.stderr.columns:80)){for(;tn[0][on]===cn[0][on];)on++;on>2&&(Gt=` + `.concat(function(Ot,jt){if(jt=Math.floor(jt),Ot.length==0||jt==0)return"";var pn=Ot.length*jt;for(jt=Math.floor(Math.log(jt)/Math.log(2));jt;)Ot+=Ot,jt--;return Ot+=Ot.substring(0,pn-Ot.length)}(" ",on),"^"),on=0)}}for(var dn=tn[tn.length-1],Vn=cn[cn.length-1];dn===Vn&&(on++<2?nn=` + `.concat(dn).concat(nn):At=dn,tn.pop(),cn.pop(),tn.length!==0&&cn.length!==0);)dn=tn[tn.length-1],Vn=cn[cn.length-1];var Fn=Math.max(tn.length,cn.length);if(Fn===0){var fn=Lt.split(` +`);if(fn.length>30)for(fn[26]="".concat(ft,"...").concat(Kt);fn.length>27;)fn.pop();return"".concat($t.notIdentical,` + +`).concat(fn.join(` +`),` +`)}on>3&&(nn=` +`.concat(ft,"...").concat(Kt).concat(nn),sn=!0),At!==""&&(nn=` + `.concat(At).concat(nn),At="");var Un=0,Jn=$t[wt]+` +`.concat(Wt,"+ actual").concat(Kt," ").concat(yt,"- expected").concat(Kt),_n=" ".concat(ft,"...").concat(Kt," Lines skipped");for(on=0;on1&&on>2&&(Zn>4?(Ct+=` +`.concat(ft,"...").concat(Kt),sn=!0):Zn>3&&(Ct+=` + `.concat(cn[on-2]),Un++),Ct+=` + `.concat(cn[on-1]),Un++),Mt=on,At+=` +`.concat(yt,"-").concat(Kt," ").concat(cn[on]),Un++;else if(cn.length1&&on>2&&(Zn>4?(Ct+=` +`.concat(ft,"...").concat(Kt),sn=!0):Zn>3&&(Ct+=` + `.concat(tn[on-2]),Un++),Ct+=` + `.concat(tn[on-1]),Un++),Mt=on,Ct+=` +`.concat(Wt,"+").concat(Kt," ").concat(tn[on]),Un++;else{var On=cn[on],Yn=tn[on],_t=Yn!==On&&(!Tt(Yn,",")||Yn.slice(0,-1)!==On);_t&&Tt(On,",")&&On.slice(0,-1)===Yn&&(_t=!1,Yn+=","),_t?(Zn>1&&on>2&&(Zn>4?(Ct+=` +`.concat(ft,"...").concat(Kt),sn=!0):Zn>3&&(Ct+=` + `.concat(tn[on-2]),Un++),Ct+=` + `.concat(tn[on-1]),Un++),Mt=on,Ct+=` +`.concat(Wt,"+").concat(Kt," ").concat(Yn),At+=` +`.concat(yt,"-").concat(Kt," ").concat(On),Un+=2):(Ct+=At,At="",Zn!==1&&on!==0||(Ct+=` + `.concat(Yn),Un++))}if(Un>20&&on30)for(fn[26]="".concat(ft,"...").concat(Kt);fn.length>27;)fn.pop();tn=fn.length===1?nn.call(this,"".concat(Fn," ").concat(fn[0])):nn.call(this,"".concat(Fn,` + +`).concat(fn.join(` +`),` +`))}else{var Un=Nt(Xt),Jn="",_n=$t[on];on==="notDeepEqual"||on==="notEqual"?(Un="".concat($t[on],` + +`).concat(Un)).length>1024&&(Un="".concat(Un.slice(0,1021),"...")):(Jn="".concat(Nt(dn)),Un.length>512&&(Un="".concat(Un.slice(0,509),"...")),Jn.length>512&&(Jn="".concat(Jn.slice(0,509),"...")),on==="deepEqual"||on==="equal"?Un="".concat(_n,` + +`).concat(Un,` + +should equal + +`):Jn=" ".concat(on," ").concat(Jn)),tn=nn.call(this,"".concat(Un).concat(Jn))}return Error.stackTraceLimit=Vn,tn.generatedMessage=!cn,Object.defineProperty(dt(tn),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),tn.code="ERR_ASSERTION",tn.actual=Xt,tn.expected=dn,tn.operator=on,Error.captureStackTrace&&Error.captureStackTrace(dt(tn),Gt),tn.stack,tn.name="AssertionError",st(tn)}return Ct=sn,(Mt=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:Jt,value:function(Lt,tn){return gt(this,lt(lt({},tn),{},{customInspect:!1,depth:0}))}}])&&Ut(Ct.prototype,Mt),Object.defineProperty(Ct,"prototype",{writable:!1}),sn}(St(Error),gt.custom);et.exports=kt},1342:(et,tt,nt)=>{function rt(Bt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ht){return typeof ht}:function(ht){return ht&&typeof Symbol=="function"&&ht.constructor===Symbol&&ht!==Symbol.prototype?"symbol":typeof ht})(Bt)}function lt(Bt,ht){return(lt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(mt,gt){return mt.__proto__=gt,mt})(Bt,ht)}function ut(Bt){var ht=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 mt,gt=ot(Bt);if(ht){var Vt=ot(this).constructor;mt=Reflect.construct(gt,arguments,Vt)}else mt=gt.apply(this,arguments);return Ut(this,mt)}}function Ut(Bt,ht){if(ht&&(rt(ht)==="object"||typeof ht=="function"))return ht;if(ht!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(mt){if(mt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return mt}(Bt)}function ot(Bt){return(ot=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(ht){return ht.__proto__||Object.getPrototypeOf(ht)})(Bt)}var st,dt,St={};function pt(Bt,ht,mt){mt||(mt=Error);var gt=function(Vt){(function(yt,Kt){if(typeof Kt!="function"&&Kt!==null)throw new TypeError("Super expression must either be null or a function");yt.prototype=Object.create(Kt&&Kt.prototype,{constructor:{value:yt,writable:!0,configurable:!0}}),Object.defineProperty(yt,"prototype",{writable:!1}),Kt&<(yt,Kt)})(Wt,Vt);var Tt,ft=ut(Wt);function Wt(yt,Kt,$t){var Ht;return function(Nt,qt){if(!(Nt instanceof qt))throw new TypeError("Cannot call a class as a function")}(this,Wt),(Ht=ft.call(this,function(Nt,qt,kt){return typeof ht=="string"?ht:ht(Nt,qt,kt)}(yt,Kt,$t))).code=Bt,Ht}return Tt=Wt,Object.defineProperty(Tt,"prototype",{writable:!1}),Tt}(mt);St[Bt]=gt}function Rt(Bt,ht){if(Array.isArray(Bt)){var mt=Bt.length;return Bt=Bt.map(function(gt){return String(gt)}),mt>2?"one of ".concat(ht," ").concat(Bt.slice(0,mt-1).join(", "),", or ")+Bt[mt-1]:mt===2?"one of ".concat(ht," ").concat(Bt[0]," or ").concat(Bt[1]):"of ".concat(ht," ").concat(Bt[0])}return"of ".concat(ht," ").concat(String(Bt))}pt("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),pt("ERR_INVALID_ARG_TYPE",function(Bt,ht,mt){var gt,Vt,Tt;if(st===void 0&&(st=nt(6093)),st(typeof Bt=="string","'name' must be a string"),typeof ht=="string"&&(Vt="not ",ht.substr(0,Vt.length)===Vt)?(gt="must not be",ht=ht.replace(/^not /,"")):gt="must be",function(Wt,yt,Kt){return(Kt===void 0||Kt>Wt.length)&&(Kt=Wt.length),Wt.substring(Kt-yt.length,Kt)===yt}(Bt," argument"))Tt="The ".concat(Bt," ").concat(gt," ").concat(Rt(ht,"type"));else{var ft=function(Wt,yt,Kt){return typeof Kt!="number"&&(Kt=0),!(Kt+yt.length>Wt.length)&&Wt.indexOf(yt,Kt)!==-1}(Bt,".")?"property":"argument";Tt='The "'.concat(Bt,'" ').concat(ft," ").concat(gt," ").concat(Rt(ht,"type"))}return Tt+=". Received type ".concat(rt(mt))},TypeError),pt("ERR_INVALID_ARG_VALUE",function(Bt,ht){var mt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";dt===void 0&&(dt=nt(9208));var gt=dt.inspect(ht);return gt.length>128&&(gt="".concat(gt.slice(0,128),"...")),"The argument '".concat(Bt,"' ").concat(mt,". Received ").concat(gt)},TypeError),pt("ERR_INVALID_RETURN_VALUE",function(Bt,ht,mt){var gt;return gt=mt&&mt.constructor&&mt.constructor.name?"instance of ".concat(mt.constructor.name):"type ".concat(rt(mt)),"Expected ".concat(Bt,' to be returned from the "').concat(ht,'"')+" function but got ".concat(gt,".")},TypeError),pt("ERR_MISSING_ARGS",function(){for(var Bt=arguments.length,ht=new Array(Bt),mt=0;mt0,"At least one arg needs to be specified");var gt="The ",Vt=ht.length;switch(ht=ht.map(function(Tt){return'"'.concat(Tt,'"')}),Vt){case 1:gt+="".concat(ht[0]," argument");break;case 2:gt+="".concat(ht[0]," and ").concat(ht[1]," arguments");break;default:gt+=ht.slice(0,Vt-1).join(", "),gt+=", and ".concat(ht[Vt-1]," arguments")}return"".concat(gt," must be specified")},TypeError),et.exports.codes=St},5656:(et,tt,nt)=>{function rt(Fn,fn){return function(Un){if(Array.isArray(Un))return Un}(Fn)||function(Un,Jn){var _n=Un==null?null:typeof Symbol<"u"&&Un[Symbol.iterator]||Un["@@iterator"];if(_n!=null){var Zn,On,Yn,_t,Ot=[],jt=!0,pn=!1;try{if(Yn=(_n=_n.call(Un)).next,Jn===0){if(Object(_n)!==_n)return;jt=!1}else for(;!(jt=(Zn=Yn.call(_n)).done)&&(Ot.push(Zn.value),Ot.length!==Jn);jt=!0);}catch(En){pn=!0,On=En}finally{try{if(!jt&&_n.return!=null&&(_t=_n.return(),Object(_t)!==_t))return}finally{if(pn)throw On}}return Ot}}(Fn,fn)||function(Un,Jn){if(Un){if(typeof Un=="string")return lt(Un,Jn);var _n=Object.prototype.toString.call(Un).slice(8,-1);if(_n==="Object"&&Un.constructor&&(_n=Un.constructor.name),_n==="Map"||_n==="Set")return Array.from(Un);if(_n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(_n))return lt(Un,Jn)}}(Fn,fn)||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 lt(Fn,fn){(fn==null||fn>Fn.length)&&(fn=Fn.length);for(var Un=0,Jn=new Array(fn);Un10)return!0;for(var fn=0;fn57)return!0}return Fn.length===10&&Fn>=Math.pow(2,32)}function Mt(Fn){return Object.keys(Fn).filter(Ct).concat(St(Fn).filter(Object.prototype.propertyIsEnumerable.bind(Fn)))}function nn(Fn,fn){if(Fn===fn)return 0;for(var Un=Fn.length,Jn=fn.length,_n=0,Zn=Math.min(Un,Jn);_n{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(dt){return(0,ut.isAsync)(dt)?function(...St){const pt=St.pop();return ot(dt.apply(this,St),pt)}:(0,rt.default)(function(St,pt){var Rt;try{Rt=dt.apply(this,St)}catch(Bt){return pt(Bt)}if(Rt&&typeof Rt.then=="function")return ot(Rt,pt);pt(null,Rt)})};var rt=Ut(nt(6172)),lt=Ut(nt(6857)),ut=nt(1214);function Ut(dt){return dt&&dt.__esModule?dt:{default:dt}}function ot(dt,St){return dt.then(pt=>{st(St,null,pt)},pt=>{st(St,pt&&(pt instanceof Error||pt.message)?pt:new Error(pt))})}function st(dt,St,pt){try{dt(St,pt)}catch(Rt){(0,lt.default)(Bt=>{throw Bt},Rt)}}et.exports=tt.default},108:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=St(nt(7804)),lt=St(nt(1371)),ut=St(nt(7485)),Ut=St(nt(6297)),ot=St(nt(6083)),st=St(nt(1214)),dt=St(nt(6280));function St(Bt){return Bt&&Bt.__esModule?Bt:{default:Bt}}function pt(Bt,ht,mt){mt=(0,Ut.default)(mt);var gt=0,Vt=0,{length:Tt}=Bt,ft=!1;function Wt(yt,Kt){yt===!1&&(ft=!0),ft!==!0&&(yt?mt(yt):++Vt!==Tt&&Kt!==lt.default||mt(null))}for(Tt===0&&mt(null);gt{Object.defineProperty(tt,"__esModule",{value:!0});var rt=Ut(nt(6513)),lt=Ut(nt(1214)),ut=Ut(nt(6280));function Ut(ot){return ot&&ot.__esModule?ot:{default:ot}}tt.default=(0,ut.default)(function(ot,st,dt,St){return(0,rt.default)(st)(ot,(0,lt.default)(dt),St)},4),et.exports=tt.default},5313:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=ut(nt(7485)),lt=ut(nt(6280));function ut(Ut){return Ut&&Ut.__esModule?Ut:{default:Ut}}tt.default=(0,lt.default)(function(Ut,ot,st){return(0,rt.default)(Ut,1,ot,st)},3),et.exports=tt.default},5236:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=ot(nt(108)),lt=ot(nt(4344)),ut=ot(nt(1214)),Ut=ot(nt(6280));function ot(st){return st&&st.__esModule?st:{default:st}}tt.default=(0,Ut.default)(function(st,dt,St){return(0,rt.default)(st,(0,lt.default)((0,ut.default)(dt)),St)},3),et.exports=tt.default},6959:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(Ut,ot,st,dt){let St=!1,pt=!1,Rt=!1,Bt=0,ht=0;function mt(){Bt>=ot||Rt||St||(Rt=!0,Ut.next().then(({value:Tt,done:ft})=>{if(!pt&&!St){if(Rt=!1,ft)return St=!0,void(Bt<=0&&dt(null));Bt++,st(Tt,ht,gt),ht++,mt()}}).catch(Vt))}function gt(Tt,ft){if(Bt-=1,!pt)return Tt?Vt(Tt):Tt===!1?(St=!0,void(pt=!0)):ft===ut.default||St&&Bt<=0?(St=!0,dt(null)):void mt()}function Vt(Tt){pt||(Rt=!1,St=!0,dt(Tt))}mt()};var rt,lt=nt(1371),ut=(rt=lt)&&rt.__esModule?rt:{default:rt};et.exports=tt.default},6280:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt,rt){if(rt||(rt=nt.length),!rt)throw new Error("arity is undefined");return function(...lt){return typeof lt[rt-1]=="function"?nt.apply(this,lt):new Promise((ut,Ut)=>{lt[rt-1]=(ot,...st)=>{if(ot)return Ut(ot);ut(st.length>1?st:st[0])},nt.apply(this,lt)})}},et.exports=tt.default},1371:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default={},et.exports=tt.default},6513:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=dt(nt(6297)),lt=dt(nt(1586)),ut=dt(nt(6083)),Ut=nt(1214),ot=dt(nt(6959)),st=dt(nt(1371));function dt(St){return St&&St.__esModule?St:{default:St}}tt.default=St=>(pt,Rt,Bt)=>{if(Bt=(0,rt.default)(Bt),St<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!pt)return Bt(null);if((0,Ut.isAsyncGenerator)(pt))return(0,ot.default)(pt,St,Rt,Bt);if((0,Ut.isAsyncIterable)(pt))return(0,ot.default)(pt[Symbol.asyncIterator](),St,Rt,Bt);var ht=(0,lt.default)(pt),mt=!1,gt=!1,Vt=0,Tt=!1;function ft(yt,Kt){if(!gt)if(Vt-=1,yt)mt=!0,Bt(yt);else if(yt===!1)mt=!0,gt=!0;else{if(Kt===st.default||mt&&Vt<=0)return mt=!0,Bt(null);Tt||Wt()}}function Wt(){for(Tt=!0;Vt{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return nt[Symbol.iterator]&&nt[Symbol.iterator]()},et.exports=tt.default},6172:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return function(...rt){var lt=rt.pop();return nt.call(this,rt,lt)}},et.exports=tt.default},7804:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return nt&&typeof nt.length=="number"&&nt.length>=0&&nt.length%1==0},et.exports=tt.default},1586:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(Ut){if((0,rt.default)(Ut))return function(Rt){var Bt=-1,ht=Rt.length;return function(){return++Bt{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){function rt(...lt){if(nt!==null){var ut=nt;nt=null,ut.apply(this,lt)}}return Object.assign(rt,nt),rt},et.exports=tt.default},6083:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return function(...rt){if(nt===null)throw new Error("Callback was already called.");var lt=nt;nt=null,lt.apply(this,rt)}},et.exports=tt.default},7075:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=Ut(nt(7804)),lt=Ut(nt(1214)),ut=Ut(nt(6280));function Ut(ot){return ot&&ot.__esModule?ot:{default:ot}}tt.default=(0,ut.default)((ot,st,dt)=>{var St=(0,rt.default)(st)?[]:{};ot(st,(pt,Rt,Bt)=>{(0,lt.default)(pt)((ht,...mt)=>{mt.length<2&&([mt]=mt),St[Rt]=mt,Bt(ht)})},pt=>dt(pt,St))},3),et.exports=tt.default},6857:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.fallback=Ut,tt.wrap=ot;var nt,rt=tt.hasQueueMicrotask=typeof queueMicrotask=="function"&&queueMicrotask,lt=tt.hasSetImmediate=typeof setImmediate=="function"&&setImmediate,ut=tt.hasNextTick=typeof process=="object"&&typeof process.nextTick=="function";function Ut(st){setTimeout(st,0)}function ot(st){return(dt,...St)=>st(()=>dt(...St))}nt=rt?queueMicrotask:lt?setImmediate:ut?process.nextTick:Ut,tt.default=ot(nt)},4344:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return(rt,lt,ut)=>nt(rt,ut)},et.exports=tt.default},1214:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.isAsyncIterable=tt.isAsyncGenerator=tt.isAsync=void 0;var rt,lt=nt(2530),ut=(rt=lt)&&rt.__esModule?rt:{default:rt};function Ut(ot){return ot[Symbol.toStringTag]==="AsyncFunction"}tt.default=function(ot){if(typeof ot!="function")throw new Error("expected a function");return Ut(ot)?(0,ut.default)(ot):ot},tt.isAsync=Ut,tt.isAsyncGenerator=function(ot){return ot[Symbol.toStringTag]==="AsyncGenerator"},tt.isAsyncIterable=function(ot){return typeof ot[Symbol.asyncIterator]=="function"}},481:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(Ut,ot){return(0,rt.default)(lt.default,Ut,ot)};var rt=ut(nt(7075)),lt=ut(nt(5313));function ut(Ut){return Ut&&Ut.__esModule?Ut:{default:Ut}}et.exports=tt.default},7991:(et,tt)=>{tt.byteLength=function(St){var pt=st(St),Rt=pt[0],Bt=pt[1];return 3*(Rt+Bt)/4-Bt},tt.toByteArray=function(St){var pt,Rt,Bt=st(St),ht=Bt[0],mt=Bt[1],gt=new lt(function(ft,Wt,yt){return 3*(Wt+yt)/4-yt}(0,ht,mt)),Vt=0,Tt=mt>0?ht-4:ht;for(Rt=0;Rt>16&255,gt[Vt++]=pt>>8&255,gt[Vt++]=255&pt;return mt===2&&(pt=rt[St.charCodeAt(Rt)]<<2|rt[St.charCodeAt(Rt+1)]>>4,gt[Vt++]=255&pt),mt===1&&(pt=rt[St.charCodeAt(Rt)]<<10|rt[St.charCodeAt(Rt+1)]<<4|rt[St.charCodeAt(Rt+2)]>>2,gt[Vt++]=pt>>8&255,gt[Vt++]=255&pt),gt},tt.fromByteArray=function(St){for(var pt,Rt=St.length,Bt=Rt%3,ht=[],mt=0,gt=Rt-Bt;mtgt?gt:mt+16383));return Bt===1?(pt=St[Rt-1],ht.push(nt[pt>>2]+nt[pt<<4&63]+"==")):Bt===2&&(pt=(St[Rt-2]<<8)+St[Rt-1],ht.push(nt[pt>>10]+nt[pt>>4&63]+nt[pt<<2&63]+"=")),ht.join("")};for(var nt=[],rt=[],lt=typeof Uint8Array<"u"?Uint8Array:Array,ut="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Ut=0,ot=ut.length;Ut0)throw new Error("Invalid string. Length must be a multiple of 4");var Rt=St.indexOf("=");return Rt===-1&&(Rt=pt),[Rt,Rt===pt?0:4-Rt%4]}function dt(St,pt,Rt){for(var Bt,ht,mt=[],gt=pt;gt>18&63]+nt[ht>>12&63]+nt[ht>>6&63]+nt[63&ht]);return mt.join("")}rt["-".charCodeAt(0)]=62,rt["_".charCodeAt(0)]=63},9811:(et,tt,nt)=>{var rt=nt(6093),lt=nt(4019),ut=nt(4442),Ut=nt(930),ot=nt(8388);for(var st in ot)tt[st]=ot[st];tt.NONE=0,tt.DEFLATE=1,tt.INFLATE=2,tt.GZIP=3,tt.GUNZIP=4,tt.DEFLATERAW=5,tt.INFLATERAW=6,tt.UNZIP=7;function dt(St){if(typeof St!="number"||Sttt.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=St,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}dt.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,rt(this.init_done,"close before init"),rt(this.mode<=tt.UNZIP),this.mode===tt.DEFLATE||this.mode===tt.GZIP||this.mode===tt.DEFLATERAW?ut.deflateEnd(this.strm):this.mode!==tt.INFLATE&&this.mode!==tt.GUNZIP&&this.mode!==tt.INFLATERAW&&this.mode!==tt.UNZIP||Ut.inflateEnd(this.strm),this.mode=tt.NONE,this.dictionary=null)},dt.prototype.write=function(St,pt,Rt,Bt,ht,mt,gt){return this._write(!0,St,pt,Rt,Bt,ht,mt,gt)},dt.prototype.writeSync=function(St,pt,Rt,Bt,ht,mt,gt){return this._write(!1,St,pt,Rt,Bt,ht,mt,gt)},dt.prototype._write=function(St,pt,Rt,Bt,ht,mt,gt,Vt){if(rt.equal(arguments.length,8),rt(this.init_done,"write before init"),rt(this.mode!==tt.NONE,"already finalized"),rt.equal(!1,this.write_in_progress,"write already in progress"),rt.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,rt.equal(!1,pt===void 0,"must provide flush value"),this.write_in_progress=!0,pt!==tt.Z_NO_FLUSH&&pt!==tt.Z_PARTIAL_FLUSH&&pt!==tt.Z_SYNC_FLUSH&&pt!==tt.Z_FULL_FLUSH&&pt!==tt.Z_FINISH&&pt!==tt.Z_BLOCK)throw new Error("Invalid flush value");if(Rt==null&&(Rt=Buffer.alloc(0),ht=0,Bt=0),this.strm.avail_in=ht,this.strm.input=Rt,this.strm.next_in=Bt,this.strm.avail_out=Vt,this.strm.output=mt,this.strm.next_out=gt,this.flush=pt,!St)return this._process(),this._checkError()?this._afterSync():void 0;var Tt=this;return process.nextTick(function(){Tt._process(),Tt._after()}),this},dt.prototype._afterSync=function(){var St=this.strm.avail_out,pt=this.strm.avail_in;return this.write_in_progress=!1,[pt,St]},dt.prototype._process=function(){var St=null;switch(this.mode){case tt.DEFLATE:case tt.GZIP:case tt.DEFLATERAW:this.err=ut.deflate(this.strm,this.flush);break;case tt.UNZIP:switch(this.strm.avail_in>0&&(St=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(St===null)break;if(this.strm.input[St]!==31){this.mode=tt.INFLATE;break}if(this.gzip_id_bytes_read=1,St++,this.strm.avail_in===1)break;case 1:if(St===null)break;this.strm.input[St]===139?(this.gzip_id_bytes_read=2,this.mode=tt.GUNZIP):this.mode=tt.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case tt.INFLATE:case tt.GUNZIP:case tt.INFLATERAW:for(this.err=Ut.inflate(this.strm,this.flush),this.err===tt.Z_NEED_DICT&&this.dictionary&&(this.err=Ut.inflateSetDictionary(this.strm,this.dictionary),this.err===tt.Z_OK?this.err=Ut.inflate(this.strm,this.flush):this.err===tt.Z_DATA_ERROR&&(this.err=tt.Z_NEED_DICT));this.strm.avail_in>0&&this.mode===tt.GUNZIP&&this.err===tt.Z_STREAM_END&&this.strm.next_in[0]!==0;)this.reset(),this.err=Ut.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},dt.prototype._checkError=function(){switch(this.err){case tt.Z_OK:case tt.Z_BUF_ERROR:if(this.strm.avail_out!==0&&this.flush===tt.Z_FINISH)return this._error("unexpected end of file"),!1;break;case tt.Z_STREAM_END:break;case tt.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},dt.prototype._after=function(){if(this._checkError()){var St=this.strm.avail_out,pt=this.strm.avail_in;this.write_in_progress=!1,this.callback(pt,St),this.pending_close&&this.close()}},dt.prototype._error=function(St){this.strm.msg&&(St=this.strm.msg),this.onerror(St,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},dt.prototype.init=function(St,pt,Rt,Bt,ht){rt(arguments.length===4||arguments.length===5,"init(windowBits, level, memLevel, strategy, [dictionary])"),rt(St>=8&&St<=15,"invalid windowBits"),rt(pt>=-1&&pt<=9,"invalid compression level"),rt(Rt>=1&&Rt<=9,"invalid memlevel"),rt(Bt===tt.Z_FILTERED||Bt===tt.Z_HUFFMAN_ONLY||Bt===tt.Z_RLE||Bt===tt.Z_FIXED||Bt===tt.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(pt,St,Rt,Bt,ht),this._setDictionary()},dt.prototype.params=function(){throw new Error("deflateParams Not supported")},dt.prototype.reset=function(){this._reset(),this._setDictionary()},dt.prototype._init=function(St,pt,Rt,Bt,ht){switch(this.level=St,this.windowBits=pt,this.memLevel=Rt,this.strategy=Bt,this.flush=tt.Z_NO_FLUSH,this.err=tt.Z_OK,this.mode!==tt.GZIP&&this.mode!==tt.GUNZIP||(this.windowBits+=16),this.mode===tt.UNZIP&&(this.windowBits+=32),this.mode!==tt.DEFLATERAW&&this.mode!==tt.INFLATERAW||(this.windowBits=-1*this.windowBits),this.strm=new lt,this.mode){case tt.DEFLATE:case tt.GZIP:case tt.DEFLATERAW:this.err=ut.deflateInit2(this.strm,this.level,tt.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case tt.INFLATE:case tt.GUNZIP:case tt.INFLATERAW:case tt.UNZIP:this.err=Ut.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==tt.Z_OK&&this._error("Init error"),this.dictionary=ht,this.write_in_progress=!1,this.init_done=!0},dt.prototype._setDictionary=function(){if(this.dictionary!=null){switch(this.err=tt.Z_OK,this.mode){case tt.DEFLATE:case tt.DEFLATERAW:this.err=ut.deflateSetDictionary(this.strm,this.dictionary)}this.err!==tt.Z_OK&&this._error("Failed to set dictionary")}},dt.prototype._reset=function(){switch(this.err=tt.Z_OK,this.mode){case tt.DEFLATE:case tt.DEFLATERAW:case tt.GZIP:this.err=ut.deflateReset(this.strm);break;case tt.INFLATE:case tt.INFLATERAW:case tt.GUNZIP:this.err=Ut.inflateReset(this.strm)}this.err!==tt.Z_OK&&this._error("Failed to reset stream")},tt.Zlib=dt},7946:(et,tt,nt)=>{var rt=nt(1048).Buffer,lt=nt(1983).Transform,ut=nt(9811),Ut=nt(9208),ot=nt(6093).ok,st=nt(1048).kMaxLength,dt="Cannot create final Buffer. It would be larger than 0x"+st.toString(16)+" bytes";ut.Z_MIN_WINDOWBITS=8,ut.Z_MAX_WINDOWBITS=15,ut.Z_DEFAULT_WINDOWBITS=15,ut.Z_MIN_CHUNK=64,ut.Z_MAX_CHUNK=1/0,ut.Z_DEFAULT_CHUNK=16384,ut.Z_MIN_MEMLEVEL=1,ut.Z_MAX_MEMLEVEL=9,ut.Z_DEFAULT_MEMLEVEL=8,ut.Z_MIN_LEVEL=-1,ut.Z_MAX_LEVEL=9,ut.Z_DEFAULT_LEVEL=ut.Z_DEFAULT_COMPRESSION;for(var St=Object.keys(ut),pt=0;pt=st?cn=new RangeError(dt):tn=rt.concat(Mt,nn),Mt=[],wt.close(),Ct(cn,tn)}wt.on("error",function(tn){wt.removeListener("end",Lt),wt.removeListener("readable",sn),Ct(tn)}),wt.on("end",Lt),wt.end(At),sn()}function Tt(wt,At){if(typeof At=="string"&&(At=rt.from(At)),!rt.isBuffer(At))throw new TypeError("Not a string or buffer");var Ct=wt._finishFlushFlag;return wt._processChunk(At,Ct)}function ft(wt){if(!(this instanceof ft))return new ft(wt);kt.call(this,wt,ut.DEFLATE)}function Wt(wt){if(!(this instanceof Wt))return new Wt(wt);kt.call(this,wt,ut.INFLATE)}function yt(wt){if(!(this instanceof yt))return new yt(wt);kt.call(this,wt,ut.GZIP)}function Kt(wt){if(!(this instanceof Kt))return new Kt(wt);kt.call(this,wt,ut.GUNZIP)}function $t(wt){if(!(this instanceof $t))return new $t(wt);kt.call(this,wt,ut.DEFLATERAW)}function Ht(wt){if(!(this instanceof Ht))return new Ht(wt);kt.call(this,wt,ut.INFLATERAW)}function Nt(wt){if(!(this instanceof Nt))return new Nt(wt);kt.call(this,wt,ut.UNZIP)}function qt(wt){return wt===ut.Z_NO_FLUSH||wt===ut.Z_PARTIAL_FLUSH||wt===ut.Z_SYNC_FLUSH||wt===ut.Z_FULL_FLUSH||wt===ut.Z_FINISH||wt===ut.Z_BLOCK}function kt(wt,At){var Ct=this;if(this._opts=wt=wt||{},this._chunkSize=wt.chunkSize||tt.Z_DEFAULT_CHUNK,lt.call(this,wt),wt.flush&&!qt(wt.flush))throw new Error("Invalid flush flag: "+wt.flush);if(wt.finishFlush&&!qt(wt.finishFlush))throw new Error("Invalid flush flag: "+wt.finishFlush);if(this._flushFlag=wt.flush||ut.Z_NO_FLUSH,this._finishFlushFlag=wt.finishFlush!==void 0?wt.finishFlush:ut.Z_FINISH,wt.chunkSize&&(wt.chunkSizett.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+wt.chunkSize);if(wt.windowBits&&(wt.windowBitstt.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+wt.windowBits);if(wt.level&&(wt.leveltt.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+wt.level);if(wt.memLevel&&(wt.memLeveltt.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+wt.memLevel);if(wt.strategy&&wt.strategy!=tt.Z_FILTERED&&wt.strategy!=tt.Z_HUFFMAN_ONLY&&wt.strategy!=tt.Z_RLE&&wt.strategy!=tt.Z_FIXED&&wt.strategy!=tt.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+wt.strategy);if(wt.dictionary&&!rt.isBuffer(wt.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new ut.Zlib(At);var Mt=this;this._hadError=!1,this._handle.onerror=function(Lt,tn){bt(Mt),Mt._hadError=!0;var cn=new Error(Lt);cn.errno=tn,cn.code=tt.codes[tn],Mt.emit("error",cn)};var nn=tt.Z_DEFAULT_COMPRESSION;typeof wt.level=="number"&&(nn=wt.level);var sn=tt.Z_DEFAULT_STRATEGY;typeof wt.strategy=="number"&&(sn=wt.strategy),this._handle.init(wt.windowBits||tt.Z_DEFAULT_WINDOWBITS,nn,wt.memLevel||tt.Z_DEFAULT_MEMLEVEL,sn,wt.dictionary),this._buffer=rt.allocUnsafe(this._chunkSize),this._offset=0,this._level=nn,this._strategy=sn,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!Ct._handle},configurable:!0,enumerable:!0})}function bt(wt,At){At&&process.nextTick(At),wt._handle&&(wt._handle.close(),wt._handle=null)}function Jt(wt){wt.emit("close")}Object.defineProperty(tt,"codes",{enumerable:!0,value:Object.freeze(Bt),writable:!1}),tt.Deflate=ft,tt.Inflate=Wt,tt.Gzip=yt,tt.Gunzip=Kt,tt.DeflateRaw=$t,tt.InflateRaw=Ht,tt.Unzip=Nt,tt.createDeflate=function(wt){return new ft(wt)},tt.createInflate=function(wt){return new Wt(wt)},tt.createDeflateRaw=function(wt){return new $t(wt)},tt.createInflateRaw=function(wt){return new Ht(wt)},tt.createGzip=function(wt){return new yt(wt)},tt.createGunzip=function(wt){return new Kt(wt)},tt.createUnzip=function(wt){return new Nt(wt)},tt.deflate=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new ft(At),wt,Ct)},tt.deflateSync=function(wt,At){return Tt(new ft(At),wt)},tt.gzip=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new yt(At),wt,Ct)},tt.gzipSync=function(wt,At){return Tt(new yt(At),wt)},tt.deflateRaw=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new $t(At),wt,Ct)},tt.deflateRawSync=function(wt,At){return Tt(new $t(At),wt)},tt.unzip=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new Nt(At),wt,Ct)},tt.unzipSync=function(wt,At){return Tt(new Nt(At),wt)},tt.inflate=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new Wt(At),wt,Ct)},tt.inflateSync=function(wt,At){return Tt(new Wt(At),wt)},tt.gunzip=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new Kt(At),wt,Ct)},tt.gunzipSync=function(wt,At){return Tt(new Kt(At),wt)},tt.inflateRaw=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new Ht(At),wt,Ct)},tt.inflateRawSync=function(wt,At){return Tt(new Ht(At),wt)},Ut.inherits(kt,lt),kt.prototype.params=function(wt,At,Ct){if(wttt.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+wt);if(At!=tt.Z_FILTERED&&At!=tt.Z_HUFFMAN_ONLY&&At!=tt.Z_RLE&&At!=tt.Z_FIXED&&At!=tt.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+At);if(this._level!==wt||this._strategy!==At){var Mt=this;this.flush(ut.Z_SYNC_FLUSH,function(){ot(Mt._handle,"zlib binding closed"),Mt._handle.params(wt,At),Mt._hadError||(Mt._level=wt,Mt._strategy=At,Ct&&Ct())})}else process.nextTick(Ct)},kt.prototype.reset=function(){return ot(this._handle,"zlib binding closed"),this._handle.reset()},kt.prototype._flush=function(wt){this._transform(rt.alloc(0),"",wt)},kt.prototype.flush=function(wt,At){var Ct=this,Mt=this._writableState;(typeof wt=="function"||wt===void 0&&!At)&&(At=wt,wt=ut.Z_FULL_FLUSH),Mt.ended?At&&process.nextTick(At):Mt.ending?At&&this.once("end",At):Mt.needDrain?At&&this.once("drain",function(){return Ct.flush(wt,At)}):(this._flushFlag=wt,this.write(rt.alloc(0),"",At))},kt.prototype.close=function(wt){bt(this,wt),process.nextTick(Jt,this)},kt.prototype._transform=function(wt,At,Ct){var Mt,nn=this._writableState,sn=(nn.ending||nn.ended)&&(!wt||nn.length===wt.length);return wt===null||rt.isBuffer(wt)?this._handle?(sn?Mt=this._finishFlushFlag:(Mt=this._flushFlag,wt.length>=nn.length&&(this._flushFlag=this._opts.flush||ut.Z_NO_FLUSH)),void this._processChunk(wt,Mt,Ct)):Ct(new Error("zlib binding closed")):Ct(new Error("invalid input"))},kt.prototype._processChunk=function(wt,At,Ct){var Mt=wt&&wt.length,nn=this._chunkSize-this._offset,sn=0,Lt=this,tn=typeof Ct=="function";if(!tn){var cn,on=[],Gt=0;this.on("error",function(fn){cn=fn}),ot(this._handle,"zlib binding closed");do var Xt=this._handle.writeSync(At,wt,sn,Mt,this._buffer,this._offset,nn);while(!this._hadError&&Fn(Xt[0],Xt[1]));if(this._hadError)throw cn;if(Gt>=st)throw bt(this),new RangeError(dt);var dn=rt.concat(on,Gt);return bt(this),dn}ot(this._handle,"zlib binding closed");var Vn=this._handle.write(At,wt,sn,Mt,this._buffer,this._offset,nn);function Fn(fn,Un){if(this&&(this.buffer=null,this.callback=null),!Lt._hadError){var Jn=nn-Un;if(ot(Jn>=0,"have should not go down"),Jn>0){var _n=Lt._buffer.slice(Lt._offset,Lt._offset+Jn);Lt._offset+=Jn,tn?Lt.push(_n):(on.push(_n),Gt+=_n.length)}if((Un===0||Lt._offset>=Lt._chunkSize)&&(nn=Lt._chunkSize,Lt._offset=0,Lt._buffer=rt.allocUnsafe(Lt._chunkSize)),Un===0){if(sn+=Mt-fn,Mt=fn,!tn)return!0;var Zn=Lt._handle.write(At,wt,sn,Mt,Lt._buffer,Lt._offset,Lt._chunkSize);return Zn.callback=Fn,void(Zn.buffer=wt)}if(!tn)return!1;Ct()}}Vn.buffer=wt,Vn.callback=Fn},Ut.inherits(ft,kt),Ut.inherits(Wt,kt),Ut.inherits(yt,kt),Ut.inherits(Kt,kt),Ut.inherits($t,kt),Ut.inherits(Ht,kt),Ut.inherits(Nt,kt)},9860:(et,tt)=>{var nt=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function rt(Ut,ot){return Object.prototype.hasOwnProperty.call(Ut,ot)}tt.assign=function(Ut){for(var ot=Array.prototype.slice.call(arguments,1);ot.length;){var st=ot.shift();if(st){if(typeof st!="object")throw new TypeError(st+"must be non-object");for(var dt in st)rt(st,dt)&&(Ut[dt]=st[dt])}}return Ut},tt.shrinkBuf=function(Ut,ot){return Ut.length===ot?Ut:Ut.subarray?Ut.subarray(0,ot):(Ut.length=ot,Ut)};var lt={arraySet:function(Ut,ot,st,dt,St){if(ot.subarray&&Ut.subarray)Ut.set(ot.subarray(st,st+dt),St);else for(var pt=0;pt{et.exports=function(tt,nt,rt,lt){for(var ut=65535&tt|0,Ut=tt>>>16&65535|0,ot=0;rt!==0;){rt-=ot=rt>2e3?2e3:rt;do Ut=Ut+(ut=ut+nt[lt++]|0)|0;while(--ot);ut%=65521,Ut%=65521}return ut|Ut<<16|0}},8388:et=>{et.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}},7430:et=>{var tt=function(){for(var nt,rt=[],lt=0;lt<256;lt++){nt=lt;for(var ut=0;ut<8;ut++)nt=1&nt?3988292384^nt>>>1:nt>>>1;rt[lt]=nt}return rt}();et.exports=function(nt,rt,lt,ut){var Ut=tt,ot=ut+lt;nt^=-1;for(var st=ut;st>>8^Ut[255&(nt^rt[st])];return-1^nt}},4442:(et,tt,nt)=>{var rt,lt=nt(9860),ut=nt(7504),Ut=nt(1196),ot=nt(7430),st=nt(1925);function dt(Nt,qt){return Nt.msg=st[qt],qt}function St(Nt){return(Nt<<1)-(Nt>4?9:0)}function pt(Nt){for(var qt=Nt.length;--qt>=0;)Nt[qt]=0}function Rt(Nt){var qt=Nt.state,kt=qt.pending;kt>Nt.avail_out&&(kt=Nt.avail_out),kt!==0&&(lt.arraySet(Nt.output,qt.pending_buf,qt.pending_out,kt,Nt.next_out),Nt.next_out+=kt,qt.pending_out+=kt,Nt.total_out+=kt,Nt.avail_out-=kt,qt.pending-=kt,qt.pending===0&&(qt.pending_out=0))}function Bt(Nt,qt){ut._tr_flush_block(Nt,Nt.block_start>=0?Nt.block_start:-1,Nt.strstart-Nt.block_start,qt),Nt.block_start=Nt.strstart,Rt(Nt.strm)}function ht(Nt,qt){Nt.pending_buf[Nt.pending++]=qt}function mt(Nt,qt){Nt.pending_buf[Nt.pending++]=qt>>>8&255,Nt.pending_buf[Nt.pending++]=255&qt}function gt(Nt,qt){var kt,bt,Jt=Nt.max_chain_length,wt=Nt.strstart,At=Nt.prev_length,Ct=Nt.nice_match,Mt=Nt.strstart>Nt.w_size-262?Nt.strstart-(Nt.w_size-262):0,nn=Nt.window,sn=Nt.w_mask,Lt=Nt.prev,tn=Nt.strstart+258,cn=nn[wt+At-1],on=nn[wt+At];Nt.prev_length>=Nt.good_match&&(Jt>>=2),Ct>Nt.lookahead&&(Ct=Nt.lookahead);do if(nn[(kt=qt)+At]===on&&nn[kt+At-1]===cn&&nn[kt]===nn[wt]&&nn[++kt]===nn[wt+1]){wt+=2,kt++;do;while(nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&wtAt){if(Nt.match_start=qt,At=bt,bt>=Ct)break;cn=nn[wt+At-1],on=nn[wt+At]}}while((qt=Lt[qt&sn])>Mt&&--Jt!=0);return At<=Nt.lookahead?At:Nt.lookahead}function Vt(Nt){var qt,kt,bt,Jt,wt,At,Ct,Mt,nn,sn,Lt=Nt.w_size;do{if(Jt=Nt.window_size-Nt.lookahead-Nt.strstart,Nt.strstart>=Lt+(Lt-262)){lt.arraySet(Nt.window,Nt.window,Lt,Lt,0),Nt.match_start-=Lt,Nt.strstart-=Lt,Nt.block_start-=Lt,qt=kt=Nt.hash_size;do bt=Nt.head[--qt],Nt.head[qt]=bt>=Lt?bt-Lt:0;while(--kt);qt=kt=Lt;do bt=Nt.prev[--qt],Nt.prev[qt]=bt>=Lt?bt-Lt:0;while(--kt);Jt+=Lt}if(Nt.strm.avail_in===0)break;if(At=Nt.strm,Ct=Nt.window,Mt=Nt.strstart+Nt.lookahead,nn=Jt,sn=void 0,(sn=At.avail_in)>nn&&(sn=nn),kt=sn===0?0:(At.avail_in-=sn,lt.arraySet(Ct,At.input,At.next_in,sn,Mt),At.state.wrap===1?At.adler=Ut(At.adler,Ct,sn,Mt):At.state.wrap===2&&(At.adler=ot(At.adler,Ct,sn,Mt)),At.next_in+=sn,At.total_in+=sn,sn),Nt.lookahead+=kt,Nt.lookahead+Nt.insert>=3)for(wt=Nt.strstart-Nt.insert,Nt.ins_h=Nt.window[wt],Nt.ins_h=(Nt.ins_h<=3&&(Nt.ins_h=(Nt.ins_h<=3)if(bt=ut._tr_tally(Nt,Nt.strstart-Nt.match_start,Nt.match_length-3),Nt.lookahead-=Nt.match_length,Nt.match_length<=Nt.max_lazy_match&&Nt.lookahead>=3){Nt.match_length--;do Nt.strstart++,Nt.ins_h=(Nt.ins_h<=3&&(Nt.ins_h=(Nt.ins_h<4096)&&(Nt.match_length=2)),Nt.prev_length>=3&&Nt.match_length<=Nt.prev_length){Jt=Nt.strstart+Nt.lookahead-3,bt=ut._tr_tally(Nt,Nt.strstart-1-Nt.prev_match,Nt.prev_length-3),Nt.lookahead-=Nt.prev_length-1,Nt.prev_length-=2;do++Nt.strstart<=Jt&&(Nt.ins_h=(Nt.ins_h<15&&(At=2,bt-=16),Jt<1||Jt>9||kt!==8||bt<8||bt>15||qt<0||qt>9||wt<0||wt>4)return dt(Nt,-2);bt===8&&(bt=9);var Ct=new yt;return Nt.state=Ct,Ct.strm=Nt,Ct.wrap=At,Ct.gzhead=null,Ct.w_bits=bt,Ct.w_size=1<Nt.pending_buf_size-5&&(kt=Nt.pending_buf_size-5);;){if(Nt.lookahead<=1){if(Vt(Nt),Nt.lookahead===0&&qt===0)return 1;if(Nt.lookahead===0)break}Nt.strstart+=Nt.lookahead,Nt.lookahead=0;var bt=Nt.block_start+kt;if((Nt.strstart===0||Nt.strstart>=bt)&&(Nt.lookahead=Nt.strstart-bt,Nt.strstart=bt,Bt(Nt,!1),Nt.strm.avail_out===0)||Nt.strstart-Nt.block_start>=Nt.w_size-262&&(Bt(Nt,!1),Nt.strm.avail_out===0))return 1}return Nt.insert=0,qt===4?(Bt(Nt,!0),Nt.strm.avail_out===0?3:4):(Nt.strstart>Nt.block_start&&(Bt(Nt,!1),Nt.strm.avail_out),1)}),new Wt(4,4,8,4,Tt),new Wt(4,5,16,8,Tt),new Wt(4,6,32,32,Tt),new Wt(4,4,16,16,ft),new Wt(8,16,32,32,ft),new Wt(8,16,128,128,ft),new Wt(8,32,128,256,ft),new Wt(32,128,258,1024,ft),new Wt(32,258,258,4096,ft)],tt.deflateInit=function(Nt,qt){return Ht(Nt,qt,8,15,8,0)},tt.deflateInit2=Ht,tt.deflateReset=$t,tt.deflateResetKeep=Kt,tt.deflateSetHeader=function(Nt,qt){return Nt&&Nt.state?Nt.state.wrap!==2?-2:(Nt.state.gzhead=qt,0):-2},tt.deflate=function(Nt,qt){var kt,bt,Jt,wt;if(!Nt||!Nt.state||qt>5||qt<0)return Nt?dt(Nt,-2):-2;if(bt=Nt.state,!Nt.output||!Nt.input&&Nt.avail_in!==0||bt.status===666&&qt!==4)return dt(Nt,Nt.avail_out===0?-5:-2);if(bt.strm=Nt,kt=bt.last_flush,bt.last_flush=qt,bt.status===42)if(bt.wrap===2)Nt.adler=0,ht(bt,31),ht(bt,139),ht(bt,8),bt.gzhead?(ht(bt,(bt.gzhead.text?1:0)+(bt.gzhead.hcrc?2:0)+(bt.gzhead.extra?4:0)+(bt.gzhead.name?8:0)+(bt.gzhead.comment?16:0)),ht(bt,255&bt.gzhead.time),ht(bt,bt.gzhead.time>>8&255),ht(bt,bt.gzhead.time>>16&255),ht(bt,bt.gzhead.time>>24&255),ht(bt,bt.level===9?2:bt.strategy>=2||bt.level<2?4:0),ht(bt,255&bt.gzhead.os),bt.gzhead.extra&&bt.gzhead.extra.length&&(ht(bt,255&bt.gzhead.extra.length),ht(bt,bt.gzhead.extra.length>>8&255)),bt.gzhead.hcrc&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending,0)),bt.gzindex=0,bt.status=69):(ht(bt,0),ht(bt,0),ht(bt,0),ht(bt,0),ht(bt,0),ht(bt,bt.level===9?2:bt.strategy>=2||bt.level<2?4:0),ht(bt,3),bt.status=113);else{var At=8+(bt.w_bits-8<<4)<<8;At|=(bt.strategy>=2||bt.level<2?0:bt.level<6?1:bt.level===6?2:3)<<6,bt.strstart!==0&&(At|=32),At+=31-At%31,bt.status=113,mt(bt,At),bt.strstart!==0&&(mt(bt,Nt.adler>>>16),mt(bt,65535&Nt.adler)),Nt.adler=1}if(bt.status===69)if(bt.gzhead.extra){for(Jt=bt.pending;bt.gzindex<(65535&bt.gzhead.extra.length)&&(bt.pending!==bt.pending_buf_size||(bt.gzhead.hcrc&&bt.pending>Jt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),Rt(Nt),Jt=bt.pending,bt.pending!==bt.pending_buf_size));)ht(bt,255&bt.gzhead.extra[bt.gzindex]),bt.gzindex++;bt.gzhead.hcrc&&bt.pending>Jt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),bt.gzindex===bt.gzhead.extra.length&&(bt.gzindex=0,bt.status=73)}else bt.status=73;if(bt.status===73)if(bt.gzhead.name){Jt=bt.pending;do{if(bt.pending===bt.pending_buf_size&&(bt.gzhead.hcrc&&bt.pending>Jt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),Rt(Nt),Jt=bt.pending,bt.pending===bt.pending_buf_size)){wt=1;break}wt=bt.gzindexJt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),wt===0&&(bt.gzindex=0,bt.status=91)}else bt.status=91;if(bt.status===91)if(bt.gzhead.comment){Jt=bt.pending;do{if(bt.pending===bt.pending_buf_size&&(bt.gzhead.hcrc&&bt.pending>Jt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),Rt(Nt),Jt=bt.pending,bt.pending===bt.pending_buf_size)){wt=1;break}wt=bt.gzindexJt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),wt===0&&(bt.status=103)}else bt.status=103;if(bt.status===103&&(bt.gzhead.hcrc?(bt.pending+2>bt.pending_buf_size&&Rt(Nt),bt.pending+2<=bt.pending_buf_size&&(ht(bt,255&Nt.adler),ht(bt,Nt.adler>>8&255),Nt.adler=0,bt.status=113)):bt.status=113),bt.pending!==0){if(Rt(Nt),Nt.avail_out===0)return bt.last_flush=-1,0}else if(Nt.avail_in===0&&St(qt)<=St(kt)&&qt!==4)return dt(Nt,-5);if(bt.status===666&&Nt.avail_in!==0)return dt(Nt,-5);if(Nt.avail_in!==0||bt.lookahead!==0||qt!==0&&bt.status!==666){var Ct=bt.strategy===2?function(Mt,nn){for(var sn;;){if(Mt.lookahead===0&&(Vt(Mt),Mt.lookahead===0)){if(nn===0)return 1;break}if(Mt.match_length=0,sn=ut._tr_tally(Mt,0,Mt.window[Mt.strstart]),Mt.lookahead--,Mt.strstart++,sn&&(Bt(Mt,!1),Mt.strm.avail_out===0))return 1}return Mt.insert=0,nn===4?(Bt(Mt,!0),Mt.strm.avail_out===0?3:4):Mt.last_lit&&(Bt(Mt,!1),Mt.strm.avail_out===0)?1:2}(bt,qt):bt.strategy===3?function(Mt,nn){for(var sn,Lt,tn,cn,on=Mt.window;;){if(Mt.lookahead<=258){if(Vt(Mt),Mt.lookahead<=258&&nn===0)return 1;if(Mt.lookahead===0)break}if(Mt.match_length=0,Mt.lookahead>=3&&Mt.strstart>0&&(Lt=on[tn=Mt.strstart-1])===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]){cn=Mt.strstart+258;do;while(Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&tnMt.lookahead&&(Mt.match_length=Mt.lookahead)}if(Mt.match_length>=3?(sn=ut._tr_tally(Mt,1,Mt.match_length-3),Mt.lookahead-=Mt.match_length,Mt.strstart+=Mt.match_length,Mt.match_length=0):(sn=ut._tr_tally(Mt,0,Mt.window[Mt.strstart]),Mt.lookahead--,Mt.strstart++),sn&&(Bt(Mt,!1),Mt.strm.avail_out===0))return 1}return Mt.insert=0,nn===4?(Bt(Mt,!0),Mt.strm.avail_out===0?3:4):Mt.last_lit&&(Bt(Mt,!1),Mt.strm.avail_out===0)?1:2}(bt,qt):rt[bt.level].func(bt,qt);if(Ct!==3&&Ct!==4||(bt.status=666),Ct===1||Ct===3)return Nt.avail_out===0&&(bt.last_flush=-1),0;if(Ct===2&&(qt===1?ut._tr_align(bt):qt!==5&&(ut._tr_stored_block(bt,0,0,!1),qt===3&&(pt(bt.head),bt.lookahead===0&&(bt.strstart=0,bt.block_start=0,bt.insert=0))),Rt(Nt),Nt.avail_out===0))return bt.last_flush=-1,0}return qt!==4?0:bt.wrap<=0?1:(bt.wrap===2?(ht(bt,255&Nt.adler),ht(bt,Nt.adler>>8&255),ht(bt,Nt.adler>>16&255),ht(bt,Nt.adler>>24&255),ht(bt,255&Nt.total_in),ht(bt,Nt.total_in>>8&255),ht(bt,Nt.total_in>>16&255),ht(bt,Nt.total_in>>24&255)):(mt(bt,Nt.adler>>>16),mt(bt,65535&Nt.adler)),Rt(Nt),bt.wrap>0&&(bt.wrap=-bt.wrap),bt.pending!==0?0:1)},tt.deflateEnd=function(Nt){var qt;return Nt&&Nt.state?(qt=Nt.state.status)!==42&&qt!==69&&qt!==73&&qt!==91&&qt!==103&&qt!==113&&qt!==666?dt(Nt,-2):(Nt.state=null,qt===113?dt(Nt,-3):0):-2},tt.deflateSetDictionary=function(Nt,qt){var kt,bt,Jt,wt,At,Ct,Mt,nn,sn=qt.length;if(!Nt||!Nt.state||(wt=(kt=Nt.state).wrap)===2||wt===1&&kt.status!==42||kt.lookahead)return-2;for(wt===1&&(Nt.adler=Ut(Nt.adler,qt,sn,0)),kt.wrap=0,sn>=kt.w_size&&(wt===0&&(pt(kt.head),kt.strstart=0,kt.block_start=0,kt.insert=0),nn=new lt.Buf8(kt.w_size),lt.arraySet(nn,qt,sn-kt.w_size,kt.w_size,0),qt=nn,sn=kt.w_size),At=Nt.avail_in,Ct=Nt.next_in,Mt=Nt.input,Nt.avail_in=sn,Nt.next_in=0,Nt.input=qt,Vt(kt);kt.lookahead>=3;){bt=kt.strstart,Jt=kt.lookahead-2;do kt.ins_h=(kt.ins_h<{et.exports=function(tt,nt){var rt,lt,ut,Ut,ot,st,dt,St,pt,Rt,Bt,ht,mt,gt,Vt,Tt,ft,Wt,yt,Kt,$t,Ht,Nt,qt,kt;rt=tt.state,lt=tt.next_in,qt=tt.input,ut=lt+(tt.avail_in-5),Ut=tt.next_out,kt=tt.output,ot=Ut-(nt-tt.avail_out),st=Ut+(tt.avail_out-257),dt=rt.dmax,St=rt.wsize,pt=rt.whave,Rt=rt.wnext,Bt=rt.window,ht=rt.hold,mt=rt.bits,gt=rt.lencode,Vt=rt.distcode,Tt=(1<>>=yt=Wt>>>24,mt-=yt,(yt=Wt>>>16&255)===0)kt[Ut++]=65535&Wt;else{if(!(16&yt)){if(!(64&yt)){Wt=gt[(65535&Wt)+(ht&(1<>>=yt,mt-=yt),mt<15&&(ht+=qt[lt++]<>>=yt=Wt>>>24,mt-=yt,!(16&(yt=Wt>>>16&255))){if(!(64&yt)){Wt=Vt[(65535&Wt)+(ht&(1<dt){tt.msg="invalid distance too far back",rt.mode=30;break e}if(ht>>>=yt,mt-=yt,$t>(yt=Ut-ot)){if((yt=$t-yt)>pt&&rt.sane){tt.msg="invalid distance too far back",rt.mode=30;break e}if(Ht=0,Nt=Bt,Rt===0){if(Ht+=St-yt,yt2;)kt[Ut++]=Nt[Ht++],kt[Ut++]=Nt[Ht++],kt[Ut++]=Nt[Ht++],Kt-=3;Kt&&(kt[Ut++]=Nt[Ht++],Kt>1&&(kt[Ut++]=Nt[Ht++]))}else{Ht=Ut-$t;do kt[Ut++]=kt[Ht++],kt[Ut++]=kt[Ht++],kt[Ut++]=kt[Ht++],Kt-=3;while(Kt>2);Kt&&(kt[Ut++]=kt[Ht++],Kt>1&&(kt[Ut++]=kt[Ht++]))}break}}break}}while(lt>3,ht&=(1<<(mt-=Kt<<3))-1,tt.next_in=lt,tt.next_out=Ut,tt.avail_in=lt{var rt=nt(9860),lt=nt(1196),ut=nt(7430),Ut=nt(1628),ot=nt(7765);function st(ft){return(ft>>>24&255)+(ft>>>8&65280)+((65280&ft)<<8)+((255&ft)<<24)}function dt(){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 rt.Buf16(320),this.work=new rt.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function St(ft){var Wt;return ft&&ft.state?(Wt=ft.state,ft.total_in=ft.total_out=Wt.total=0,ft.msg="",Wt.wrap&&(ft.adler=1&Wt.wrap),Wt.mode=1,Wt.last=0,Wt.havedict=0,Wt.dmax=32768,Wt.head=null,Wt.hold=0,Wt.bits=0,Wt.lencode=Wt.lendyn=new rt.Buf32(852),Wt.distcode=Wt.distdyn=new rt.Buf32(592),Wt.sane=1,Wt.back=-1,0):-2}function pt(ft){var Wt;return ft&&ft.state?((Wt=ft.state).wsize=0,Wt.whave=0,Wt.wnext=0,St(ft)):-2}function Rt(ft,Wt){var yt,Kt;return ft&&ft.state?(Kt=ft.state,Wt<0?(yt=0,Wt=-Wt):(yt=1+(Wt>>4),Wt<48&&(Wt&=15)),Wt&&(Wt<8||Wt>15)?-2:(Kt.window!==null&&Kt.wbits!==Wt&&(Kt.window=null),Kt.wrap=yt,Kt.wbits=Wt,pt(ft))):-2}function Bt(ft,Wt){var yt,Kt;return ft?(Kt=new dt,ft.state=Kt,Kt.window=null,(yt=Rt(ft,Wt))!==0&&(ft.state=null),yt):-2}var ht,mt,gt=!0;function Vt(ft){if(gt){var Wt;for(ht=new rt.Buf32(512),mt=new rt.Buf32(32),Wt=0;Wt<144;)ft.lens[Wt++]=8;for(;Wt<256;)ft.lens[Wt++]=9;for(;Wt<280;)ft.lens[Wt++]=7;for(;Wt<288;)ft.lens[Wt++]=8;for(ot(1,ft.lens,0,288,ht,0,ft.work,{bits:9}),Wt=0;Wt<32;)ft.lens[Wt++]=5;ot(2,ft.lens,0,32,mt,0,ft.work,{bits:5}),gt=!1}ft.lencode=ht,ft.lenbits=9,ft.distcode=mt,ft.distbits=5}function Tt(ft,Wt,yt,Kt){var $t,Ht=ft.state;return Ht.window===null&&(Ht.wsize=1<=Ht.wsize?(rt.arraySet(Ht.window,Wt,yt-Ht.wsize,Ht.wsize,0),Ht.wnext=0,Ht.whave=Ht.wsize):(($t=Ht.wsize-Ht.wnext)>Kt&&($t=Kt),rt.arraySet(Ht.window,Wt,yt-Kt,$t,Ht.wnext),(Kt-=$t)?(rt.arraySet(Ht.window,Wt,yt-Kt,Kt,0),Ht.wnext=Kt,Ht.whave=Ht.wsize):(Ht.wnext+=$t,Ht.wnext===Ht.wsize&&(Ht.wnext=0),Ht.whave>>8&255,yt.check=ut(yt.check,Un,2,0),bt=0,Jt=0,yt.mode=2;break}if(yt.flags=0,yt.head&&(yt.head.done=!1),!(1&yt.wrap)||(((255&bt)<<8)+(bt>>8))%31){ft.msg="incorrect header check",yt.mode=30;break}if((15&bt)!=8){ft.msg="unknown compression method",yt.mode=30;break}if(Jt-=4,Xt=8+(15&(bt>>>=4)),yt.wbits===0)yt.wbits=Xt;else if(Xt>yt.wbits){ft.msg="invalid window size",yt.mode=30;break}yt.dmax=1<>8&1),512&yt.flags&&(Un[0]=255&bt,Un[1]=bt>>>8&255,yt.check=ut(yt.check,Un,2,0)),bt=0,Jt=0,yt.mode=3;case 3:for(;Jt<32;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>8&255,Un[2]=bt>>>16&255,Un[3]=bt>>>24&255,yt.check=ut(yt.check,Un,4,0)),bt=0,Jt=0,yt.mode=4;case 4:for(;Jt<16;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>8),512&yt.flags&&(Un[0]=255&bt,Un[1]=bt>>>8&255,yt.check=ut(yt.check,Un,2,0)),bt=0,Jt=0,yt.mode=5;case 5:if(1024&yt.flags){for(;Jt<16;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>8&255,yt.check=ut(yt.check,Un,2,0)),bt=0,Jt=0}else yt.head&&(yt.head.extra=null);yt.mode=6;case 6:if(1024&yt.flags&&((Ct=yt.length)>qt&&(Ct=qt),Ct&&(yt.head&&(Xt=yt.head.extra_len-yt.length,yt.head.extra||(yt.head.extra=new Array(yt.head.extra_len)),rt.arraySet(yt.head.extra,Kt,Ht,Ct,Xt)),512&yt.flags&&(yt.check=ut(yt.check,Kt,Ct,Ht)),qt-=Ct,Ht+=Ct,yt.length-=Ct),yt.length))break e;yt.length=0,yt.mode=7;case 7:if(2048&yt.flags){if(qt===0)break e;Ct=0;do Xt=Kt[Ht+Ct++],yt.head&&Xt&&yt.length<65536&&(yt.head.name+=String.fromCharCode(Xt));while(Xt&&Ct>9&1,yt.head.done=!0),ft.adler=yt.check=0,yt.mode=12;break;case 10:for(;Jt<32;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=7&Jt,Jt-=7&Jt,yt.mode=27;break}for(;Jt<3;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=1)){case 0:yt.mode=14;break;case 1:if(Vt(yt),yt.mode=20,Wt===6){bt>>>=2,Jt-=2;break e}break;case 2:yt.mode=17;break;case 3:ft.msg="invalid block type",yt.mode=30}bt>>>=2,Jt-=2;break;case 14:for(bt>>>=7&Jt,Jt-=7&Jt;Jt<32;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>16^65535)){ft.msg="invalid stored block lengths",yt.mode=30;break}if(yt.length=65535&bt,bt=0,Jt=0,yt.mode=15,Wt===6)break e;case 15:yt.mode=16;case 16:if(Ct=yt.length){if(Ct>qt&&(Ct=qt),Ct>kt&&(Ct=kt),Ct===0)break e;rt.arraySet($t,Kt,Ht,Ct,Nt),qt-=Ct,Ht+=Ct,kt-=Ct,Nt+=Ct,yt.length-=Ct;break}yt.mode=12;break;case 17:for(;Jt<14;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=5,Jt-=5,yt.ndist=1+(31&bt),bt>>>=5,Jt-=5,yt.ncode=4+(15&bt),bt>>>=4,Jt-=4,yt.nlen>286||yt.ndist>30){ft.msg="too many length or distance symbols",yt.mode=30;break}yt.have=0,yt.mode=18;case 18:for(;yt.have>>=3,Jt-=3}for(;yt.have<19;)yt.lens[Jn[yt.have++]]=0;if(yt.lencode=yt.lendyn,yt.lenbits=7,Vn={bits:yt.lenbits},dn=ot(0,yt.lens,0,19,yt.lencode,0,yt.work,Vn),yt.lenbits=Vn.bits,dn){ft.msg="invalid code lengths set",yt.mode=30;break}yt.have=0,yt.mode=19;case 19:for(;yt.have>>16&255,tn=65535&fn,!((sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=sn,Jt-=sn,yt.lens[yt.have++]=tn;else{if(tn===16){for(Fn=sn+2;Jt>>=sn,Jt-=sn,yt.have===0){ft.msg="invalid bit length repeat",yt.mode=30;break}Xt=yt.lens[yt.have-1],Ct=3+(3&bt),bt>>>=2,Jt-=2}else if(tn===17){for(Fn=sn+3;Jt>>=sn)),bt>>>=3,Jt-=3}else{for(Fn=sn+7;Jt>>=sn)),bt>>>=7,Jt-=7}if(yt.have+Ct>yt.nlen+yt.ndist){ft.msg="invalid bit length repeat",yt.mode=30;break}for(;Ct--;)yt.lens[yt.have++]=Xt}}if(yt.mode===30)break;if(yt.lens[256]===0){ft.msg="invalid code -- missing end-of-block",yt.mode=30;break}if(yt.lenbits=9,Vn={bits:yt.lenbits},dn=ot(1,yt.lens,0,yt.nlen,yt.lencode,0,yt.work,Vn),yt.lenbits=Vn.bits,dn){ft.msg="invalid literal/lengths set",yt.mode=30;break}if(yt.distbits=6,yt.distcode=yt.distdyn,Vn={bits:yt.distbits},dn=ot(2,yt.lens,yt.nlen,yt.ndist,yt.distcode,0,yt.work,Vn),yt.distbits=Vn.bits,dn){ft.msg="invalid distances set",yt.mode=30;break}if(yt.mode=20,Wt===6)break e;case 20:yt.mode=21;case 21:if(qt>=6&&kt>=258){ft.next_out=Nt,ft.avail_out=kt,ft.next_in=Ht,ft.avail_in=qt,yt.hold=bt,yt.bits=Jt,Ut(ft,At),Nt=ft.next_out,$t=ft.output,kt=ft.avail_out,Ht=ft.next_in,Kt=ft.input,qt=ft.avail_in,bt=yt.hold,Jt=yt.bits,yt.mode===12&&(yt.back=-1);break}for(yt.back=0;Lt=(fn=yt.lencode[bt&(1<>>16&255,tn=65535&fn,!((sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>cn)])>>>16&255,tn=65535&fn,!(cn+(sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=cn,Jt-=cn,yt.back+=cn}if(bt>>>=sn,Jt-=sn,yt.back+=sn,yt.length=tn,Lt===0){yt.mode=26;break}if(32&Lt){yt.back=-1,yt.mode=12;break}if(64&Lt){ft.msg="invalid literal/length code",yt.mode=30;break}yt.extra=15&Lt,yt.mode=22;case 22:if(yt.extra){for(Fn=yt.extra;Jt>>=yt.extra,Jt-=yt.extra,yt.back+=yt.extra}yt.was=yt.length,yt.mode=23;case 23:for(;Lt=(fn=yt.distcode[bt&(1<>>16&255,tn=65535&fn,!((sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>cn)])>>>16&255,tn=65535&fn,!(cn+(sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=cn,Jt-=cn,yt.back+=cn}if(bt>>>=sn,Jt-=sn,yt.back+=sn,64&Lt){ft.msg="invalid distance code",yt.mode=30;break}yt.offset=tn,yt.extra=15&Lt,yt.mode=24;case 24:if(yt.extra){for(Fn=yt.extra;Jt>>=yt.extra,Jt-=yt.extra,yt.back+=yt.extra}if(yt.offset>yt.dmax){ft.msg="invalid distance too far back",yt.mode=30;break}yt.mode=25;case 25:if(kt===0)break e;if(Ct=At-kt,yt.offset>Ct){if((Ct=yt.offset-Ct)>yt.whave&&yt.sane){ft.msg="invalid distance too far back",yt.mode=30;break}Ct>yt.wnext?(Ct-=yt.wnext,Mt=yt.wsize-Ct):Mt=yt.wnext-Ct,Ct>yt.length&&(Ct=yt.length),nn=yt.window}else nn=$t,Mt=Nt-yt.offset,Ct=yt.length;Ct>kt&&(Ct=kt),kt-=Ct,yt.length-=Ct;do $t[Nt++]=nn[Mt++];while(--Ct);yt.length===0&&(yt.mode=21);break;case 26:if(kt===0)break e;$t[Nt++]=yt.length,kt--,yt.mode=21;break;case 27:if(yt.wrap){for(;Jt<32;){if(qt===0)break e;qt--,bt|=Kt[Ht++]<{var rt=nt(9860),lt=[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],ut=[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],Ut=[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],ot=[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];et.exports=function(st,dt,St,pt,Rt,Bt,ht,mt){var gt,Vt,Tt,ft,Wt,yt,Kt,$t,Ht,Nt=mt.bits,qt=0,kt=0,bt=0,Jt=0,wt=0,At=0,Ct=0,Mt=0,nn=0,sn=0,Lt=null,tn=0,cn=new rt.Buf16(16),on=new rt.Buf16(16),Gt=null,Xt=0;for(qt=0;qt<=15;qt++)cn[qt]=0;for(kt=0;kt=1&&cn[Jt]===0;Jt--);if(wt>Jt&&(wt=Jt),Jt===0)return Rt[Bt++]=20971520,Rt[Bt++]=20971520,mt.bits=1,0;for(bt=1;bt0&&(st===0||Jt!==1))return-1;for(on[1]=0,qt=1;qt<15;qt++)on[qt+1]=on[qt]+cn[qt];for(kt=0;kt852||st===2&&nn>592)return 1;for(;;){Kt=qt-Ct,ht[kt]yt?($t=Gt[Xt+ht[kt]],Ht=Lt[tn+ht[kt]]):($t=96,Ht=0),gt=1<>Ct)+(Vt-=gt)]=Kt<<24|$t<<16|Ht|0;while(Vt!==0);for(gt=1<>=1;if(gt!==0?(sn&=gt-1,sn+=gt):sn=0,kt++,--cn[qt]==0){if(qt===Jt)break;qt=dt[St+ht[kt]]}if(qt>wt&&(sn&ft)!==Tt){for(Ct===0&&(Ct=wt),Wt+=bt,Mt=1<<(At=qt-Ct);At+Ct852||st===2&&nn>592)return 1;Rt[Tt=sn&ft]=wt<<24|At<<16|Wt-Bt|0}}return sn!==0&&(Rt[Wt+sn]=qt-Ct<<24|4194304|0),mt.bits=wt,0}},1925:et=>{et.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"}},7504:(et,tt,nt)=>{var rt=nt(9860);function lt(Lt){for(var tn=Lt.length;--tn>=0;)Lt[tn]=0}var ut=[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],Ut=[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],ot=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],st=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],dt=new Array(576);lt(dt);var St=new Array(60);lt(St);var pt=new Array(512);lt(pt);var Rt=new Array(256);lt(Rt);var Bt=new Array(29);lt(Bt);var ht,mt,gt,Vt=new Array(30);function Tt(Lt,tn,cn,on,Gt){this.static_tree=Lt,this.extra_bits=tn,this.extra_base=cn,this.elems=on,this.max_length=Gt,this.has_stree=Lt&&Lt.length}function ft(Lt,tn){this.dyn_tree=Lt,this.max_code=0,this.stat_desc=tn}function Wt(Lt){return Lt<256?pt[Lt]:pt[256+(Lt>>>7)]}function yt(Lt,tn){Lt.pending_buf[Lt.pending++]=255&tn,Lt.pending_buf[Lt.pending++]=tn>>>8&255}function Kt(Lt,tn,cn){Lt.bi_valid>16-cn?(Lt.bi_buf|=tn<>16-Lt.bi_valid,Lt.bi_valid+=cn-16):(Lt.bi_buf|=tn<>>=1,cn<<=1;while(--tn>0);return cn>>>1}function Nt(Lt,tn,cn){var on,Gt,Xt=new Array(16),dn=0;for(on=1;on<=15;on++)Xt[on]=dn=dn+cn[on-1]<<1;for(Gt=0;Gt<=tn;Gt++){var Vn=Lt[2*Gt+1];Vn!==0&&(Lt[2*Gt]=Ht(Xt[Vn]++,Vn))}}function qt(Lt){var tn;for(tn=0;tn<286;tn++)Lt.dyn_ltree[2*tn]=0;for(tn=0;tn<30;tn++)Lt.dyn_dtree[2*tn]=0;for(tn=0;tn<19;tn++)Lt.bl_tree[2*tn]=0;Lt.dyn_ltree[512]=1,Lt.opt_len=Lt.static_len=0,Lt.last_lit=Lt.matches=0}function kt(Lt){Lt.bi_valid>8?yt(Lt,Lt.bi_buf):Lt.bi_valid>0&&(Lt.pending_buf[Lt.pending++]=Lt.bi_buf),Lt.bi_buf=0,Lt.bi_valid=0}function bt(Lt,tn,cn,on){var Gt=2*tn,Xt=2*cn;return Lt[Gt]>1;cn>=1;cn--)Jt(Lt,Xt,cn);Gt=Fn;do cn=Lt.heap[1],Lt.heap[1]=Lt.heap[Lt.heap_len--],Jt(Lt,Xt,1),on=Lt.heap[1],Lt.heap[--Lt.heap_max]=cn,Lt.heap[--Lt.heap_max]=on,Xt[2*Gt]=Xt[2*cn]+Xt[2*on],Lt.depth[Gt]=(Lt.depth[cn]>=Lt.depth[on]?Lt.depth[cn]:Lt.depth[on])+1,Xt[2*cn+1]=Xt[2*on+1]=Gt,Lt.heap[1]=Gt++,Jt(Lt,Xt,1);while(Lt.heap_len>=2);Lt.heap[--Lt.heap_max]=Lt.heap[1],function(Un,Jn){var _n,Zn,On,Yn,_t,Ot,jt=Jn.dyn_tree,pn=Jn.max_code,En=Jn.stat_desc.static_tree,yn=Jn.stat_desc.has_stree,Cn=Jn.stat_desc.extra_bits,Gn=Jn.stat_desc.extra_base,Wn=Jn.stat_desc.max_length,ir=0;for(Yn=0;Yn<=15;Yn++)Un.bl_count[Yn]=0;for(jt[2*Un.heap[Un.heap_max]+1]=0,_n=Un.heap_max+1;_n<573;_n++)(Yn=jt[2*jt[2*(Zn=Un.heap[_n])+1]+1]+1)>Wn&&(Yn=Wn,ir++),jt[2*Zn+1]=Yn,Zn>pn||(Un.bl_count[Yn]++,_t=0,Zn>=Gn&&(_t=Cn[Zn-Gn]),Ot=jt[2*Zn],Un.opt_len+=Ot*(Yn+_t),yn&&(Un.static_len+=Ot*(En[2*Zn+1]+_t)));if(ir!==0){do{for(Yn=Wn-1;Un.bl_count[Yn]===0;)Yn--;Un.bl_count[Yn]--,Un.bl_count[Yn+1]+=2,Un.bl_count[Wn]--,ir-=2}while(ir>0);for(Yn=Wn;Yn!==0;Yn--)for(Zn=Un.bl_count[Yn];Zn!==0;)(On=Un.heap[--_n])>pn||(jt[2*On+1]!==Yn&&(Un.opt_len+=(Yn-jt[2*On+1])*jt[2*On],jt[2*On+1]=Yn),Zn--)}}(Lt,tn),Nt(Xt,fn,Lt.bl_count)}function Ct(Lt,tn,cn){var on,Gt,Xt=-1,dn=tn[1],Vn=0,Fn=7,fn=4;for(dn===0&&(Fn=138,fn=3),tn[2*(cn+1)+1]=65535,on=0;on<=cn;on++)Gt=dn,dn=tn[2*(on+1)+1],++Vn>=7;Gt<30;Gt++)for(Vt[Gt]=Xt<<7,tn=0;tn<1<0?(Lt.strm.data_type===2&&(Lt.strm.data_type=function(Vn){var Fn,fn=4093624447;for(Fn=0;Fn<=31;Fn++,fn>>>=1)if(1&fn&&Vn.dyn_ltree[2*Fn]!==0)return 0;if(Vn.dyn_ltree[18]!==0||Vn.dyn_ltree[20]!==0||Vn.dyn_ltree[26]!==0)return 1;for(Fn=32;Fn<256;Fn++)if(Vn.dyn_ltree[2*Fn]!==0)return 1;return 0}(Lt)),At(Lt,Lt.l_desc),At(Lt,Lt.d_desc),dn=function(Vn){var Fn;for(Ct(Vn,Vn.dyn_ltree,Vn.l_desc.max_code),Ct(Vn,Vn.dyn_dtree,Vn.d_desc.max_code),At(Vn,Vn.bl_desc),Fn=18;Fn>=3&&Vn.bl_tree[2*st[Fn]+1]===0;Fn--);return Vn.opt_len+=3*(Fn+1)+5+5+4,Fn}(Lt),Gt=Lt.opt_len+3+7>>>3,(Xt=Lt.static_len+3+7>>>3)<=Gt&&(Gt=Xt)):Gt=Xt=cn+5,cn+4<=Gt&&tn!==-1?sn(Lt,tn,cn,on):Lt.strategy===4||Xt===Gt?(Kt(Lt,2+(on?1:0),3),wt(Lt,dt,St)):(Kt(Lt,4+(on?1:0),3),function(Vn,Fn,fn,Un){var Jn;for(Kt(Vn,Fn-257,5),Kt(Vn,fn-1,5),Kt(Vn,Un-4,4),Jn=0;Jn>>8&255,Lt.pending_buf[Lt.d_buf+2*Lt.last_lit+1]=255&tn,Lt.pending_buf[Lt.l_buf+Lt.last_lit]=255&cn,Lt.last_lit++,tn===0?Lt.dyn_ltree[2*cn]++:(Lt.matches++,tn--,Lt.dyn_ltree[2*(Rt[cn]+256+1)]++,Lt.dyn_dtree[2*Wt(tn)]++),Lt.last_lit===Lt.lit_bufsize-1},tt._tr_align=function(Lt){Kt(Lt,2,3),$t(Lt,256,dt),function(tn){tn.bi_valid===16?(yt(tn,tn.bi_buf),tn.bi_buf=0,tn.bi_valid=0):tn.bi_valid>=8&&(tn.pending_buf[tn.pending++]=255&tn.bi_buf,tn.bi_buf>>=8,tn.bi_valid-=8)}(Lt)}},4019:et=>{et.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}},1048:(et,tt,nt)=>{const rt=nt(7991),lt=nt(9318),ut=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;tt.Buffer=ot,tt.SlowBuffer=function(_t){return+_t!=_t&&(_t=0),ot.alloc(+_t)},tt.INSPECT_MAX_BYTES=50;function Ut(_t){if(_t>2147483647)throw new RangeError('The value "'+_t+'" is invalid for option "size"');const Ot=new Uint8Array(_t);return Object.setPrototypeOf(Ot,ot.prototype),Ot}function ot(_t,Ot,jt){if(typeof _t=="number"){if(typeof Ot=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return St(_t)}return st(_t,Ot,jt)}function st(_t,Ot,jt){if(typeof _t=="string")return function(yn,Cn){if(typeof Cn=="string"&&Cn!==""||(Cn="utf8"),!ot.isEncoding(Cn))throw new TypeError("Unknown encoding: "+Cn);const Gn=0|ht(yn,Cn);let Wn=Ut(Gn);const ir=Wn.write(yn,Cn);return ir!==Gn&&(Wn=Wn.slice(0,ir)),Wn}(_t,Ot);if(ArrayBuffer.isView(_t))return function(yn){if(Jn(yn,Uint8Array)){const Cn=new Uint8Array(yn);return Rt(Cn.buffer,Cn.byteOffset,Cn.byteLength)}return pt(yn)}(_t);if(_t==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof _t);if(Jn(_t,ArrayBuffer)||_t&&Jn(_t.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Jn(_t,SharedArrayBuffer)||_t&&Jn(_t.buffer,SharedArrayBuffer)))return Rt(_t,Ot,jt);if(typeof _t=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const pn=_t.valueOf&&_t.valueOf();if(pn!=null&&pn!==_t)return ot.from(pn,Ot,jt);const En=function(yn){if(ot.isBuffer(yn)){const Cn=0|Bt(yn.length),Gn=Ut(Cn);return Gn.length===0||yn.copy(Gn,0,0,Cn),Gn}if(yn.length!==void 0)return typeof yn.length!="number"||_n(yn.length)?Ut(0):pt(yn);if(yn.type==="Buffer"&&Array.isArray(yn.data))return pt(yn.data)}(_t);if(En)return En;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof _t[Symbol.toPrimitive]=="function")return ot.from(_t[Symbol.toPrimitive]("string"),Ot,jt);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof _t)}function dt(_t){if(typeof _t!="number")throw new TypeError('"size" argument must be of type number');if(_t<0)throw new RangeError('The value "'+_t+'" is invalid for option "size"')}function St(_t){return dt(_t),Ut(_t<0?0:0|Bt(_t))}function pt(_t){const Ot=_t.length<0?0:0|Bt(_t.length),jt=Ut(Ot);for(let pn=0;pn=2147483647)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+2147483647 .toString(16)+" bytes");return 0|_t}function ht(_t,Ot){if(ot.isBuffer(_t))return _t.length;if(ArrayBuffer.isView(_t)||Jn(_t,ArrayBuffer))return _t.byteLength;if(typeof _t!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof _t);const jt=_t.length,pn=arguments.length>2&&arguments[2]===!0;if(!pn&&jt===0)return 0;let En=!1;for(;;)switch(Ot){case"ascii":case"latin1":case"binary":return jt;case"utf8":case"utf-8":return Fn(_t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*jt;case"hex":return jt>>>1;case"base64":return fn(_t).length;default:if(En)return pn?-1:Fn(_t).length;Ot=(""+Ot).toLowerCase(),En=!0}}function mt(_t,Ot,jt){let pn=!1;if((Ot===void 0||Ot<0)&&(Ot=0),Ot>this.length||((jt===void 0||jt>this.length)&&(jt=this.length),jt<=0)||(jt>>>=0)<=(Ot>>>=0))return"";for(_t||(_t="utf8");;)switch(_t){case"hex":return bt(this,Ot,jt);case"utf8":case"utf-8":return Nt(this,Ot,jt);case"ascii":return qt(this,Ot,jt);case"latin1":case"binary":return kt(this,Ot,jt);case"base64":return Ht(this,Ot,jt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Jt(this,Ot,jt);default:if(pn)throw new TypeError("Unknown encoding: "+_t);_t=(_t+"").toLowerCase(),pn=!0}}function gt(_t,Ot,jt){const pn=_t[Ot];_t[Ot]=_t[jt],_t[jt]=pn}function Vt(_t,Ot,jt,pn,En){if(_t.length===0)return-1;if(typeof jt=="string"?(pn=jt,jt=0):jt>2147483647?jt=2147483647:jt<-2147483648&&(jt=-2147483648),_n(jt=+jt)&&(jt=En?0:_t.length-1),jt<0&&(jt=_t.length+jt),jt>=_t.length){if(En)return-1;jt=_t.length-1}else if(jt<0){if(!En)return-1;jt=0}if(typeof Ot=="string"&&(Ot=ot.from(Ot,pn)),ot.isBuffer(Ot))return Ot.length===0?-1:Tt(_t,Ot,jt,pn,En);if(typeof Ot=="number")return Ot&=255,typeof Uint8Array.prototype.indexOf=="function"?En?Uint8Array.prototype.indexOf.call(_t,Ot,jt):Uint8Array.prototype.lastIndexOf.call(_t,Ot,jt):Tt(_t,[Ot],jt,pn,En);throw new TypeError("val must be string, number or Buffer")}function Tt(_t,Ot,jt,pn,En){let yn,Cn=1,Gn=_t.length,Wn=Ot.length;if(pn!==void 0&&((pn=String(pn).toLowerCase())==="ucs2"||pn==="ucs-2"||pn==="utf16le"||pn==="utf-16le")){if(_t.length<2||Ot.length<2)return-1;Cn=2,Gn/=2,Wn/=2,jt/=2}function ir(lr,Rn){return Cn===1?lr[Rn]:lr.readUInt16BE(Rn*Cn)}if(En){let lr=-1;for(yn=jt;ynGn&&(jt=Gn-Wn),yn=jt;yn>=0;yn--){let lr=!0;for(let Rn=0;RnEn&&(pn=En):pn=En;const yn=Ot.length;let Cn;for(pn>yn/2&&(pn=yn/2),Cn=0;Cn>8,Wn=Cn%256,ir.push(Wn),ir.push(Gn);return ir}(Ot,_t.length-jt),_t,jt,pn)}function Ht(_t,Ot,jt){return Ot===0&&jt===_t.length?rt.fromByteArray(_t):rt.fromByteArray(_t.slice(Ot,jt))}function Nt(_t,Ot,jt){jt=Math.min(_t.length,jt);const pn=[];let En=Ot;for(;En239?4:yn>223?3:yn>191?2:1;if(En+Gn<=jt){let Wn,ir,lr,Rn;switch(Gn){case 1:yn<128&&(Cn=yn);break;case 2:Wn=_t[En+1],(192&Wn)==128&&(Rn=(31&yn)<<6|63&Wn,Rn>127&&(Cn=Rn));break;case 3:Wn=_t[En+1],ir=_t[En+2],(192&Wn)==128&&(192&ir)==128&&(Rn=(15&yn)<<12|(63&Wn)<<6|63&ir,Rn>2047&&(Rn<55296||Rn>57343)&&(Cn=Rn));break;case 4:Wn=_t[En+1],ir=_t[En+2],lr=_t[En+3],(192&Wn)==128&&(192&ir)==128&&(192&lr)==128&&(Rn=(15&yn)<<18|(63&Wn)<<12|(63&ir)<<6|63&lr,Rn>65535&&Rn<1114112&&(Cn=Rn))}}Cn===null?(Cn=65533,Gn=1):Cn>65535&&(Cn-=65536,pn.push(Cn>>>10&1023|55296),Cn=56320|1023&Cn),pn.push(Cn),En+=Gn}return function(yn){const Cn=yn.length;if(Cn<=4096)return String.fromCharCode.apply(String,yn);let Gn="",Wn=0;for(;Wn"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(ot.prototype,"parent",{enumerable:!0,get:function(){if(ot.isBuffer(this))return this.buffer}}),Object.defineProperty(ot.prototype,"offset",{enumerable:!0,get:function(){if(ot.isBuffer(this))return this.byteOffset}}),ot.poolSize=8192,ot.from=function(_t,Ot,jt){return st(_t,Ot,jt)},Object.setPrototypeOf(ot.prototype,Uint8Array.prototype),Object.setPrototypeOf(ot,Uint8Array),ot.alloc=function(_t,Ot,jt){return function(pn,En,yn){return dt(pn),pn<=0?Ut(pn):En!==void 0?typeof yn=="string"?Ut(pn).fill(En,yn):Ut(pn).fill(En):Ut(pn)}(_t,Ot,jt)},ot.allocUnsafe=function(_t){return St(_t)},ot.allocUnsafeSlow=function(_t){return St(_t)},ot.isBuffer=function(_t){return _t!=null&&_t._isBuffer===!0&&_t!==ot.prototype},ot.compare=function(_t,Ot){if(Jn(_t,Uint8Array)&&(_t=ot.from(_t,_t.offset,_t.byteLength)),Jn(Ot,Uint8Array)&&(Ot=ot.from(Ot,Ot.offset,Ot.byteLength)),!ot.isBuffer(_t)||!ot.isBuffer(Ot))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(_t===Ot)return 0;let jt=_t.length,pn=Ot.length;for(let En=0,yn=Math.min(jt,pn);Enpn.length?(ot.isBuffer(yn)||(yn=ot.from(yn)),yn.copy(pn,En)):Uint8Array.prototype.set.call(pn,yn,En);else{if(!ot.isBuffer(yn))throw new TypeError('"list" argument must be an Array of Buffers');yn.copy(pn,En)}En+=yn.length}return pn},ot.byteLength=ht,ot.prototype._isBuffer=!0,ot.prototype.swap16=function(){const _t=this.length;if(_t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let Ot=0;Ot<_t;Ot+=2)gt(this,Ot,Ot+1);return this},ot.prototype.swap32=function(){const _t=this.length;if(_t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let Ot=0;Ot<_t;Ot+=4)gt(this,Ot,Ot+3),gt(this,Ot+1,Ot+2);return this},ot.prototype.swap64=function(){const _t=this.length;if(_t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let Ot=0;Ot<_t;Ot+=8)gt(this,Ot,Ot+7),gt(this,Ot+1,Ot+6),gt(this,Ot+2,Ot+5),gt(this,Ot+3,Ot+4);return this},ot.prototype.toString=function(){const _t=this.length;return _t===0?"":arguments.length===0?Nt(this,0,_t):mt.apply(this,arguments)},ot.prototype.toLocaleString=ot.prototype.toString,ot.prototype.equals=function(_t){if(!ot.isBuffer(_t))throw new TypeError("Argument must be a Buffer");return this===_t||ot.compare(this,_t)===0},ot.prototype.inspect=function(){let _t="";const Ot=tt.INSPECT_MAX_BYTES;return _t=this.toString("hex",0,Ot).replace(/(.{2})/g,"$1 ").trim(),this.length>Ot&&(_t+=" ... "),""},ut&&(ot.prototype[ut]=ot.prototype.inspect),ot.prototype.compare=function(_t,Ot,jt,pn,En){if(Jn(_t,Uint8Array)&&(_t=ot.from(_t,_t.offset,_t.byteLength)),!ot.isBuffer(_t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof _t);if(Ot===void 0&&(Ot=0),jt===void 0&&(jt=_t?_t.length:0),pn===void 0&&(pn=0),En===void 0&&(En=this.length),Ot<0||jt>_t.length||pn<0||En>this.length)throw new RangeError("out of range index");if(pn>=En&&Ot>=jt)return 0;if(pn>=En)return-1;if(Ot>=jt)return 1;if(this===_t)return 0;let yn=(En>>>=0)-(pn>>>=0),Cn=(jt>>>=0)-(Ot>>>=0);const Gn=Math.min(yn,Cn),Wn=this.slice(pn,En),ir=_t.slice(Ot,jt);for(let lr=0;lr>>=0,isFinite(jt)?(jt>>>=0,pn===void 0&&(pn="utf8")):(pn=jt,jt=void 0)}const En=this.length-Ot;if((jt===void 0||jt>En)&&(jt=En),_t.length>0&&(jt<0||Ot<0)||Ot>this.length)throw new RangeError("Attempt to write outside buffer bounds");pn||(pn="utf8");let yn=!1;for(;;)switch(pn){case"hex":return ft(this,_t,Ot,jt);case"utf8":case"utf-8":return Wt(this,_t,Ot,jt);case"ascii":case"latin1":case"binary":return yt(this,_t,Ot,jt);case"base64":return Kt(this,_t,Ot,jt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return $t(this,_t,Ot,jt);default:if(yn)throw new TypeError("Unknown encoding: "+pn);pn=(""+pn).toLowerCase(),yn=!0}},ot.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function qt(_t,Ot,jt){let pn="";jt=Math.min(_t.length,jt);for(let En=Ot;Enpn)&&(jt=pn);let En="";for(let yn=Ot;ynjt)throw new RangeError("Trying to access beyond buffer length")}function At(_t,Ot,jt,pn,En,yn){if(!ot.isBuffer(_t))throw new TypeError('"buffer" argument must be a Buffer instance');if(Ot>En||Ot_t.length)throw new RangeError("Index out of range")}function Ct(_t,Ot,jt,pn,En){Gt(Ot,pn,En,_t,jt,7);let yn=Number(Ot&BigInt(4294967295));_t[jt++]=yn,yn>>=8,_t[jt++]=yn,yn>>=8,_t[jt++]=yn,yn>>=8,_t[jt++]=yn;let Cn=Number(Ot>>BigInt(32)&BigInt(4294967295));return _t[jt++]=Cn,Cn>>=8,_t[jt++]=Cn,Cn>>=8,_t[jt++]=Cn,Cn>>=8,_t[jt++]=Cn,jt}function Mt(_t,Ot,jt,pn,En){Gt(Ot,pn,En,_t,jt,7);let yn=Number(Ot&BigInt(4294967295));_t[jt+7]=yn,yn>>=8,_t[jt+6]=yn,yn>>=8,_t[jt+5]=yn,yn>>=8,_t[jt+4]=yn;let Cn=Number(Ot>>BigInt(32)&BigInt(4294967295));return _t[jt+3]=Cn,Cn>>=8,_t[jt+2]=Cn,Cn>>=8,_t[jt+1]=Cn,Cn>>=8,_t[jt]=Cn,jt+8}function nn(_t,Ot,jt,pn,En,yn){if(jt+pn>_t.length)throw new RangeError("Index out of range");if(jt<0)throw new RangeError("Index out of range")}function sn(_t,Ot,jt,pn,En){return Ot=+Ot,jt>>>=0,En||nn(_t,0,jt,4),lt.write(_t,Ot,jt,pn,23,4),jt+4}function Lt(_t,Ot,jt,pn,En){return Ot=+Ot,jt>>>=0,En||nn(_t,0,jt,8),lt.write(_t,Ot,jt,pn,52,8),jt+8}ot.prototype.slice=function(_t,Ot){const jt=this.length;(_t=~~_t)<0?(_t+=jt)<0&&(_t=0):_t>jt&&(_t=jt),(Ot=Ot===void 0?jt:~~Ot)<0?(Ot+=jt)<0&&(Ot=0):Ot>jt&&(Ot=jt),Ot<_t&&(Ot=_t);const pn=this.subarray(_t,Ot);return Object.setPrototypeOf(pn,ot.prototype),pn},ot.prototype.readUintLE=ot.prototype.readUIntLE=function(_t,Ot,jt){_t>>>=0,Ot>>>=0,jt||wt(_t,Ot,this.length);let pn=this[_t],En=1,yn=0;for(;++yn>>=0,Ot>>>=0,jt||wt(_t,Ot,this.length);let pn=this[_t+--Ot],En=1;for(;Ot>0&&(En*=256);)pn+=this[_t+--Ot]*En;return pn},ot.prototype.readUint8=ot.prototype.readUInt8=function(_t,Ot){return _t>>>=0,Ot||wt(_t,1,this.length),this[_t]},ot.prototype.readUint16LE=ot.prototype.readUInt16LE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,2,this.length),this[_t]|this[_t+1]<<8},ot.prototype.readUint16BE=ot.prototype.readUInt16BE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,2,this.length),this[_t]<<8|this[_t+1]},ot.prototype.readUint32LE=ot.prototype.readUInt32LE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),(this[_t]|this[_t+1]<<8|this[_t+2]<<16)+16777216*this[_t+3]},ot.prototype.readUint32BE=ot.prototype.readUInt32BE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),16777216*this[_t]+(this[_t+1]<<16|this[_t+2]<<8|this[_t+3])},ot.prototype.readBigUInt64LE=On(function(_t){Xt(_t>>>=0,"offset");const Ot=this[_t],jt=this[_t+7];Ot!==void 0&&jt!==void 0||dn(_t,this.length-8);const pn=Ot+256*this[++_t]+65536*this[++_t]+this[++_t]*2**24,En=this[++_t]+256*this[++_t]+65536*this[++_t]+jt*2**24;return BigInt(pn)+(BigInt(En)<>>=0,"offset");const Ot=this[_t],jt=this[_t+7];Ot!==void 0&&jt!==void 0||dn(_t,this.length-8);const pn=Ot*2**24+65536*this[++_t]+256*this[++_t]+this[++_t],En=this[++_t]*2**24+65536*this[++_t]+256*this[++_t]+jt;return(BigInt(pn)<>>=0,Ot>>>=0,jt||wt(_t,Ot,this.length);let pn=this[_t],En=1,yn=0;for(;++yn=En&&(pn-=Math.pow(2,8*Ot)),pn},ot.prototype.readIntBE=function(_t,Ot,jt){_t>>>=0,Ot>>>=0,jt||wt(_t,Ot,this.length);let pn=Ot,En=1,yn=this[_t+--pn];for(;pn>0&&(En*=256);)yn+=this[_t+--pn]*En;return En*=128,yn>=En&&(yn-=Math.pow(2,8*Ot)),yn},ot.prototype.readInt8=function(_t,Ot){return _t>>>=0,Ot||wt(_t,1,this.length),128&this[_t]?-1*(255-this[_t]+1):this[_t]},ot.prototype.readInt16LE=function(_t,Ot){_t>>>=0,Ot||wt(_t,2,this.length);const jt=this[_t]|this[_t+1]<<8;return 32768&jt?4294901760|jt:jt},ot.prototype.readInt16BE=function(_t,Ot){_t>>>=0,Ot||wt(_t,2,this.length);const jt=this[_t+1]|this[_t]<<8;return 32768&jt?4294901760|jt:jt},ot.prototype.readInt32LE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),this[_t]|this[_t+1]<<8|this[_t+2]<<16|this[_t+3]<<24},ot.prototype.readInt32BE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),this[_t]<<24|this[_t+1]<<16|this[_t+2]<<8|this[_t+3]},ot.prototype.readBigInt64LE=On(function(_t){Xt(_t>>>=0,"offset");const Ot=this[_t],jt=this[_t+7];Ot!==void 0&&jt!==void 0||dn(_t,this.length-8);const pn=this[_t+4]+256*this[_t+5]+65536*this[_t+6]+(jt<<24);return(BigInt(pn)<>>=0,"offset");const Ot=this[_t],jt=this[_t+7];Ot!==void 0&&jt!==void 0||dn(_t,this.length-8);const pn=(Ot<<24)+65536*this[++_t]+256*this[++_t]+this[++_t];return(BigInt(pn)<>>=0,Ot||wt(_t,4,this.length),lt.read(this,_t,!0,23,4)},ot.prototype.readFloatBE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),lt.read(this,_t,!1,23,4)},ot.prototype.readDoubleLE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,8,this.length),lt.read(this,_t,!0,52,8)},ot.prototype.readDoubleBE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,8,this.length),lt.read(this,_t,!1,52,8)},ot.prototype.writeUintLE=ot.prototype.writeUIntLE=function(_t,Ot,jt,pn){_t=+_t,Ot>>>=0,jt>>>=0,!pn&&At(this,_t,Ot,jt,Math.pow(2,8*jt)-1,0);let En=1,yn=0;for(this[Ot]=255&_t;++yn>>=0,jt>>>=0,!pn&&At(this,_t,Ot,jt,Math.pow(2,8*jt)-1,0);let En=jt-1,yn=1;for(this[Ot+En]=255&_t;--En>=0&&(yn*=256);)this[Ot+En]=_t/yn&255;return Ot+jt},ot.prototype.writeUint8=ot.prototype.writeUInt8=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,1,255,0),this[Ot]=255&_t,Ot+1},ot.prototype.writeUint16LE=ot.prototype.writeUInt16LE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,2,65535,0),this[Ot]=255&_t,this[Ot+1]=_t>>>8,Ot+2},ot.prototype.writeUint16BE=ot.prototype.writeUInt16BE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,2,65535,0),this[Ot]=_t>>>8,this[Ot+1]=255&_t,Ot+2},ot.prototype.writeUint32LE=ot.prototype.writeUInt32LE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,4,4294967295,0),this[Ot+3]=_t>>>24,this[Ot+2]=_t>>>16,this[Ot+1]=_t>>>8,this[Ot]=255&_t,Ot+4},ot.prototype.writeUint32BE=ot.prototype.writeUInt32BE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,4,4294967295,0),this[Ot]=_t>>>24,this[Ot+1]=_t>>>16,this[Ot+2]=_t>>>8,this[Ot+3]=255&_t,Ot+4},ot.prototype.writeBigUInt64LE=On(function(_t,Ot=0){return Ct(this,_t,Ot,BigInt(0),BigInt("0xffffffffffffffff"))}),ot.prototype.writeBigUInt64BE=On(function(_t,Ot=0){return Mt(this,_t,Ot,BigInt(0),BigInt("0xffffffffffffffff"))}),ot.prototype.writeIntLE=function(_t,Ot,jt,pn){if(_t=+_t,Ot>>>=0,!pn){const Gn=Math.pow(2,8*jt-1);At(this,_t,Ot,jt,Gn-1,-Gn)}let En=0,yn=1,Cn=0;for(this[Ot]=255&_t;++En>0)-Cn&255;return Ot+jt},ot.prototype.writeIntBE=function(_t,Ot,jt,pn){if(_t=+_t,Ot>>>=0,!pn){const Gn=Math.pow(2,8*jt-1);At(this,_t,Ot,jt,Gn-1,-Gn)}let En=jt-1,yn=1,Cn=0;for(this[Ot+En]=255&_t;--En>=0&&(yn*=256);)_t<0&&Cn===0&&this[Ot+En+1]!==0&&(Cn=1),this[Ot+En]=(_t/yn>>0)-Cn&255;return Ot+jt},ot.prototype.writeInt8=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,1,127,-128),_t<0&&(_t=255+_t+1),this[Ot]=255&_t,Ot+1},ot.prototype.writeInt16LE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,2,32767,-32768),this[Ot]=255&_t,this[Ot+1]=_t>>>8,Ot+2},ot.prototype.writeInt16BE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,2,32767,-32768),this[Ot]=_t>>>8,this[Ot+1]=255&_t,Ot+2},ot.prototype.writeInt32LE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,4,2147483647,-2147483648),this[Ot]=255&_t,this[Ot+1]=_t>>>8,this[Ot+2]=_t>>>16,this[Ot+3]=_t>>>24,Ot+4},ot.prototype.writeInt32BE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,4,2147483647,-2147483648),_t<0&&(_t=4294967295+_t+1),this[Ot]=_t>>>24,this[Ot+1]=_t>>>16,this[Ot+2]=_t>>>8,this[Ot+3]=255&_t,Ot+4},ot.prototype.writeBigInt64LE=On(function(_t,Ot=0){return Ct(this,_t,Ot,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),ot.prototype.writeBigInt64BE=On(function(_t,Ot=0){return Mt(this,_t,Ot,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),ot.prototype.writeFloatLE=function(_t,Ot,jt){return sn(this,_t,Ot,!0,jt)},ot.prototype.writeFloatBE=function(_t,Ot,jt){return sn(this,_t,Ot,!1,jt)},ot.prototype.writeDoubleLE=function(_t,Ot,jt){return Lt(this,_t,Ot,!0,jt)},ot.prototype.writeDoubleBE=function(_t,Ot,jt){return Lt(this,_t,Ot,!1,jt)},ot.prototype.copy=function(_t,Ot,jt,pn){if(!ot.isBuffer(_t))throw new TypeError("argument should be a Buffer");if(jt||(jt=0),pn||pn===0||(pn=this.length),Ot>=_t.length&&(Ot=_t.length),Ot||(Ot=0),pn>0&&pn=this.length)throw new RangeError("Index out of range");if(pn<0)throw new RangeError("sourceEnd out of bounds");pn>this.length&&(pn=this.length),_t.length-Ot>>=0,jt=jt===void 0?this.length:jt>>>0,_t||(_t=0),typeof _t=="number")for(En=Ot;En=pn+4;jt-=3)Ot=`_${_t.slice(jt-3,jt)}${Ot}`;return`${_t.slice(0,jt)}${Ot}`}function Gt(_t,Ot,jt,pn,En,yn){if(_t>jt||_t3?Ot===0||Ot===BigInt(0)?`>= 0${Cn} and < 2${Cn} ** ${8*(yn+1)}${Cn}`:`>= -(2${Cn} ** ${8*(yn+1)-1}${Cn}) and < 2 ** ${8*(yn+1)-1}${Cn}`:`>= ${Ot}${Cn} and <= ${jt}${Cn}`,new tn.ERR_OUT_OF_RANGE("value",Gn,_t)}(function(Cn,Gn,Wn){Xt(Gn,"offset"),Cn[Gn]!==void 0&&Cn[Gn+Wn]!==void 0||dn(Gn,Cn.length-(Wn+1))})(pn,En,yn)}function Xt(_t,Ot){if(typeof _t!="number")throw new tn.ERR_INVALID_ARG_TYPE(Ot,"number",_t)}function dn(_t,Ot,jt){throw Math.floor(_t)!==_t?(Xt(_t,jt),new tn.ERR_OUT_OF_RANGE(jt||"offset","an integer",_t)):Ot<0?new tn.ERR_BUFFER_OUT_OF_BOUNDS:new tn.ERR_OUT_OF_RANGE(jt||"offset",`>= ${jt?1:0} and <= ${Ot}`,_t)}cn("ERR_BUFFER_OUT_OF_BOUNDS",function(_t){return _t?_t+" is outside of buffer bounds":"Attempt to access memory outside buffer bounds"},RangeError),cn("ERR_INVALID_ARG_TYPE",function(_t,Ot){return`The "${_t}" argument must be of type number. Received type ${typeof Ot}`},TypeError),cn("ERR_OUT_OF_RANGE",function(_t,Ot,jt){let pn=`The value of "${_t}" is out of range.`,En=jt;return Number.isInteger(jt)&&Math.abs(jt)>4294967296?En=on(String(jt)):typeof jt=="bigint"&&(En=String(jt),(jt>BigInt(2)**BigInt(32)||jt<-(BigInt(2)**BigInt(32)))&&(En=on(En)),En+="n"),pn+=` It must be ${Ot}. Received ${En}`,pn},RangeError);const Vn=/[^+/0-9A-Za-z-_]/g;function Fn(_t,Ot){let jt;Ot=Ot||1/0;const pn=_t.length;let En=null;const yn=[];for(let Cn=0;Cn55295&&jt<57344){if(!En){if(jt>56319){(Ot-=3)>-1&&yn.push(239,191,189);continue}if(Cn+1===pn){(Ot-=3)>-1&&yn.push(239,191,189);continue}En=jt;continue}if(jt<56320){(Ot-=3)>-1&&yn.push(239,191,189),En=jt;continue}jt=65536+(En-55296<<10|jt-56320)}else En&&(Ot-=3)>-1&&yn.push(239,191,189);if(En=null,jt<128){if((Ot-=1)<0)break;yn.push(jt)}else if(jt<2048){if((Ot-=2)<0)break;yn.push(jt>>6|192,63&jt|128)}else if(jt<65536){if((Ot-=3)<0)break;yn.push(jt>>12|224,jt>>6&63|128,63&jt|128)}else{if(!(jt<1114112))throw new Error("Invalid code point");if((Ot-=4)<0)break;yn.push(jt>>18|240,jt>>12&63|128,jt>>6&63|128,63&jt|128)}}return yn}function fn(_t){return rt.toByteArray(function(Ot){if((Ot=(Ot=Ot.split("=")[0]).trim().replace(Vn,"")).length<2)return"";for(;Ot.length%4!=0;)Ot+="=";return Ot}(_t))}function Un(_t,Ot,jt,pn){let En;for(En=0;En=Ot.length||En>=_t.length);++En)Ot[En+jt]=_t[En];return En}function Jn(_t,Ot){return _t instanceof Ot||_t!=null&&_t.constructor!=null&&_t.constructor.name!=null&&_t.constructor.name===Ot.name}function _n(_t){return _t!=_t}const Zn=function(){const _t=new Array(256);for(let Ot=0;Ot<16;++Ot){const jt=16*Ot;for(let pn=0;pn<16;++pn)_t[jt+pn]="0123456789abcdef"[Ot]+"0123456789abcdef"[pn]}return _t}();function On(_t){return typeof BigInt>"u"?Yn:_t}function Yn(){throw new Error("BigInt not supported")}},49:et=>{et.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"}},9818:(et,tt,nt)=>{var rt=nt(528),lt=nt(8498),ut=lt(rt("String.prototype.indexOf"));et.exports=function(Ut,ot){var st=rt(Ut,!!ot);return typeof st=="function"&&ut(Ut,".prototype.")>-1?lt(st):st}},8498:(et,tt,nt)=>{var rt=nt(9138),lt=nt(528),ut=nt(6108),Ut=nt(3468),ot=lt("%Function.prototype.apply%"),st=lt("%Function.prototype.call%"),dt=lt("%Reflect.apply%",!0)||rt.call(st,ot),St=nt(4940),pt=lt("%Math.max%");et.exports=function(Bt){if(typeof Bt!="function")throw new Ut("a function is required");var ht=dt(rt,st,arguments);return ut(ht,1+pt(0,Bt.length-(arguments.length-1)),!0)};var Rt=function(){return dt(rt,ot,arguments)};St?St(et.exports,"apply",{value:Rt}):et.exports.apply=Rt},288:function(et,tt){var nt=typeof self<"u"?self:this,rt=function(){function ut(){this.fetch=!1,this.DOMException=nt.DOMException}return ut.prototype=nt,new ut}();(function(ut){(function(Ut){var ot="URLSearchParams"in ut,st="Symbol"in ut&&"iterator"in Symbol,dt="FileReader"in ut&&"Blob"in ut&&function(){try{return new Blob,!0}catch{return!1}}(),St="FormData"in ut,pt="ArrayBuffer"in ut;if(pt)var Rt=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],Bt=ArrayBuffer.isView||function(Jt){return Jt&&Rt.indexOf(Object.prototype.toString.call(Jt))>-1};function ht(Jt){if(typeof Jt!="string"&&(Jt=String(Jt)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(Jt))throw new TypeError("Invalid character in header field name");return Jt.toLowerCase()}function mt(Jt){return typeof Jt!="string"&&(Jt=String(Jt)),Jt}function gt(Jt){var wt={next:function(){var At=Jt.shift();return{done:At===void 0,value:At}}};return st&&(wt[Symbol.iterator]=function(){return wt}),wt}function Vt(Jt){this.map={},Jt instanceof Vt?Jt.forEach(function(wt,At){this.append(At,wt)},this):Array.isArray(Jt)?Jt.forEach(function(wt){this.append(wt[0],wt[1])},this):Jt&&Object.getOwnPropertyNames(Jt).forEach(function(wt){this.append(wt,Jt[wt])},this)}function Tt(Jt){if(Jt.bodyUsed)return Promise.reject(new TypeError("Already read"));Jt.bodyUsed=!0}function ft(Jt){return new Promise(function(wt,At){Jt.onload=function(){wt(Jt.result)},Jt.onerror=function(){At(Jt.error)}})}function Wt(Jt){var wt=new FileReader,At=ft(wt);return wt.readAsArrayBuffer(Jt),At}function yt(Jt){if(Jt.slice)return Jt.slice(0);var wt=new Uint8Array(Jt.byteLength);return wt.set(new Uint8Array(Jt)),wt.buffer}function Kt(){return this.bodyUsed=!1,this._initBody=function(Jt){var wt;this._bodyInit=Jt,Jt?typeof Jt=="string"?this._bodyText=Jt:dt&&Blob.prototype.isPrototypeOf(Jt)?this._bodyBlob=Jt:St&&FormData.prototype.isPrototypeOf(Jt)?this._bodyFormData=Jt:ot&&URLSearchParams.prototype.isPrototypeOf(Jt)?this._bodyText=Jt.toString():pt&&dt&&(wt=Jt)&&DataView.prototype.isPrototypeOf(wt)?(this._bodyArrayBuffer=yt(Jt.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):pt&&(ArrayBuffer.prototype.isPrototypeOf(Jt)||Bt(Jt))?this._bodyArrayBuffer=yt(Jt):this._bodyText=Jt=Object.prototype.toString.call(Jt):this._bodyText="",this.headers.get("content-type")||(typeof Jt=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):ot&&URLSearchParams.prototype.isPrototypeOf(Jt)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},dt&&(this.blob=function(){var Jt=Tt(this);if(Jt)return Jt;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?Tt(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(Wt)}),this.text=function(){var Jt,wt,At,Ct=Tt(this);if(Ct)return Ct;if(this._bodyBlob)return Jt=this._bodyBlob,wt=new FileReader,At=ft(wt),wt.readAsText(Jt),At;if(this._bodyArrayBuffer)return Promise.resolve(function(Mt){for(var nn=new Uint8Array(Mt),sn=new Array(nn.length),Lt=0;Lt-1?Ct:At),this.mode=wt.mode||this.mode||null,this.signal=wt.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&Mt)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(Mt)}function Nt(Jt){var wt=new FormData;return Jt.trim().split("&").forEach(function(At){if(At){var Ct=At.split("="),Mt=Ct.shift().replace(/\+/g," "),nn=Ct.join("=").replace(/\+/g," ");wt.append(decodeURIComponent(Mt),decodeURIComponent(nn))}}),wt}function qt(Jt,wt){wt||(wt={}),this.type="default",this.status=wt.status===void 0?200:wt.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in wt?wt.statusText:"OK",this.headers=new Vt(wt.headers),this.url=wt.url||"",this._initBody(Jt)}Ht.prototype.clone=function(){return new Ht(this,{body:this._bodyInit})},Kt.call(Ht.prototype),Kt.call(qt.prototype),qt.prototype.clone=function(){return new qt(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Vt(this.headers),url:this.url})},qt.error=function(){var Jt=new qt(null,{status:0,statusText:""});return Jt.type="error",Jt};var kt=[301,302,303,307,308];qt.redirect=function(Jt,wt){if(kt.indexOf(wt)===-1)throw new RangeError("Invalid status code");return new qt(null,{status:wt,headers:{location:Jt}})},Ut.DOMException=ut.DOMException;try{new Ut.DOMException}catch{Ut.DOMException=function(Jt,wt){this.message=Jt,this.name=wt;var At=Error(Jt);this.stack=At.stack},Ut.DOMException.prototype=Object.create(Error.prototype),Ut.DOMException.prototype.constructor=Ut.DOMException}function bt(Jt,wt){return new Promise(function(At,Ct){var Mt=new Ht(Jt,wt);if(Mt.signal&&Mt.signal.aborted)return Ct(new Ut.DOMException("Aborted","AbortError"));var nn=new XMLHttpRequest;function sn(){nn.abort()}nn.onload=function(){var Lt,tn,cn={status:nn.status,statusText:nn.statusText,headers:(Lt=nn.getAllResponseHeaders()||"",tn=new Vt,Lt.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(Gt){var Xt=Gt.split(":"),dn=Xt.shift().trim();if(dn){var Vn=Xt.join(":").trim();tn.append(dn,Vn)}}),tn)};cn.url="responseURL"in nn?nn.responseURL:cn.headers.get("X-Request-URL");var on="response"in nn?nn.response:nn.responseText;At(new qt(on,cn))},nn.onerror=function(){Ct(new TypeError("Network request failed"))},nn.ontimeout=function(){Ct(new TypeError("Network request failed"))},nn.onabort=function(){Ct(new Ut.DOMException("Aborted","AbortError"))},nn.open(Mt.method,Mt.url,!0),Mt.credentials==="include"?nn.withCredentials=!0:Mt.credentials==="omit"&&(nn.withCredentials=!1),"responseType"in nn&&dt&&(nn.responseType="blob"),Mt.headers.forEach(function(Lt,tn){nn.setRequestHeader(tn,Lt)}),Mt.signal&&(Mt.signal.addEventListener("abort",sn),nn.onreadystatechange=function(){nn.readyState===4&&Mt.signal.removeEventListener("abort",sn)}),nn.send(Mt._bodyInit===void 0?null:Mt._bodyInit)})}bt.polyfill=!0,ut.fetch||(ut.fetch=bt,ut.Headers=Vt,ut.Request=Ht,ut.Response=qt),Ut.Headers=Vt,Ut.Request=Ht,Ut.Response=qt,Ut.fetch=bt,Object.defineProperty(Ut,"__esModule",{value:!0})})({})})(rt),rt.fetch.ponyfill=!0,delete rt.fetch.polyfill;var lt=rt;(tt=lt.fetch).default=lt.fetch,tt.fetch=lt.fetch,tt.Headers=lt.Headers,tt.Request=lt.Request,tt.Response=lt.Response,et.exports=tt},686:(et,tt,nt)=>{var rt=nt(4940),lt=nt(5731),ut=nt(3468),Ut=nt(9336);et.exports=function(ot,st,dt){if(!ot||typeof ot!="object"&&typeof ot!="function")throw new ut("`obj` must be an object or a function`");if(typeof st!="string"&&typeof st!="symbol")throw new ut("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new ut("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new ut("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new ut("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new ut("`loose`, if provided, must be a boolean");var St=arguments.length>3?arguments[3]:null,pt=arguments.length>4?arguments[4]:null,Rt=arguments.length>5?arguments[5]:null,Bt=arguments.length>6&&arguments[6],ht=!!Ut&&Ut(ot,st);if(rt)rt(ot,st,{configurable:Rt===null&&ht?ht.configurable:!Rt,enumerable:St===null&&ht?ht.enumerable:!St,value:dt,writable:pt===null&&ht?ht.writable:!pt});else{if(!Bt&&(St||pt||Rt))throw new lt("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");ot[st]=dt}}},1857:(et,tt,nt)=>{var rt=nt(9228),lt=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",ut=Object.prototype.toString,Ut=Array.prototype.concat,ot=nt(686),st=nt(7239)(),dt=function(pt,Rt,Bt,ht){if(Rt in pt){if(ht===!0){if(pt[Rt]===Bt)return}else if(typeof(mt=ht)!="function"||ut.call(mt)!=="[object Function]"||!ht())return}var mt;st?ot(pt,Rt,Bt,!0):ot(pt,Rt,Bt)},St=function(pt,Rt){var Bt=arguments.length>2?arguments[2]:{},ht=rt(Rt);lt&&(ht=Ut.call(ht,Object.getOwnPropertySymbols(Rt)));for(var mt=0;mt{const rt=nt(5365),lt=nt(5757),ut=(Ut,ot,st)=>({from:ut,EnvVarError:nt(5757),get:function(dt){if(!dt)return Ut;if(arguments.length>1)throw new lt("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 rt(Ut,dt,ot||{},st||function(){})},accessors:nt(7350),logger:nt(7869)(console.log,Ut.NODE_ENV)});et.exports=ut(function(){try{return process.env}catch{return{}}}())},2555:(et,tt,nt)=>{const rt=nt(6261);et.exports=function(lt,ut){return ut=ut||",",lt.length?rt(lt).split(ut).filter(Boolean):[]}},7808:et=>{et.exports=function(tt){const nt=tt.toLowerCase();if(nt!=="false"&&nt!=="true")throw new Error('should be either "true", "false", "TRUE", or "FALSE"');return nt!=="false"}},3576:et=>{et.exports=function(tt){const nt=tt.toLowerCase();if(["false","0","true","1"].indexOf(nt)===-1)throw new Error('should be either "true", "false", "TRUE", "FALSE", 1, or 0');return!(nt==="0"||nt==="false")}},349:(et,tt,nt)=>{const rt=nt(6261),lt=/^(?:[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])+)\])$/;et.exports=function(ut){const Ut=rt(ut);if(!lt.test(Ut))throw new Error("should be a valid email address");return Ut}},129:(et,tt,nt)=>{const rt=nt(6261);et.exports=function(lt,ut){const Ut=rt(lt);if(ut.indexOf(Ut)<0)throw new Error(`should be one of [${ut.join(", ")}]`);return Ut}},2222:(et,tt,nt)=>{const rt=nt(5384);et.exports=function(lt){const ut=rt(lt);if(ut>0)throw new Error("should be a negative float");return ut}},3674:(et,tt,nt)=>{const rt=nt(5384);et.exports=function(lt){const ut=rt(lt);if(ut<0)throw new Error("should be a positive float");return ut}},5384:et=>{et.exports=function(tt){const nt=parseFloat(tt);if(isNaN(nt)||isNaN(tt))throw new Error("should be a valid float");return nt}},7350:(et,tt,nt)=>{et.exports={asArray:nt(2555),asSet:nt(7374),asBoolStrict:nt(7808),asBool:nt(3576),asPortNumber:nt(4647),asEnum:nt(129),asFloatNegative:nt(2222),asFloatPositive:nt(3674),asFloat:nt(5384),asIntNegative:nt(8455),asIntPositive:nt(879),asInt:nt(9799),asJsonArray:nt(9974),asJsonObject:nt(8124),asJson:nt(3566),asRegExp:nt(1045),asString:nt(6261),asUrlObject:nt(4531),asUrlString:nt(5549),asEmailString:nt(349)}},8455:(et,tt,nt)=>{const rt=nt(9799);et.exports=function(lt){const ut=rt(lt);if(ut>0)throw new Error("should be a negative integer");return ut}},879:(et,tt,nt)=>{const rt=nt(9799);et.exports=function(lt){const ut=rt(lt);if(ut<0)throw new Error("should be a positive integer");return ut}},9799:et=>{et.exports=function(tt){const nt=parseInt(tt,10);if(isNaN(nt)||nt.toString(10)!==tt)throw new Error("should be a valid integer");return nt}},9974:(et,tt,nt)=>{const rt=nt(3566);et.exports=function(lt){var ut=rt(lt);if(!Array.isArray(ut))throw new Error("should be a parseable JSON Array");return ut}},8124:(et,tt,nt)=>{const rt=nt(3566);et.exports=function(lt){var ut=rt(lt);if(Array.isArray(ut))throw new Error("should be a parseable JSON Object");return ut}},3566:et=>{et.exports=function(tt){try{return JSON.parse(tt)}catch{throw new Error("should be valid (parseable) JSON")}}},4647:(et,tt,nt)=>{const rt=nt(879);et.exports=function(lt){var ut=rt(lt);if(ut>65535)throw new Error("cannot assign a port number greater than 65535");return ut}},1045:et=>{et.exports=function(tt,nt){try{RegExp(void 0,nt)}catch{throw new Error("invalid regexp flags")}try{return new RegExp(tt,nt)}catch{throw new Error("should be a valid regexp")}}},7374:(et,tt,nt)=>{const rt=nt(2555);et.exports=function(lt,ut){return lt.length?new Set(rt(lt,ut)):new Set}},6261:et=>{et.exports=function(tt){return tt}},4531:(et,tt,nt)=>{const rt=nt(6261);et.exports=function(lt){const ut=rt(lt);try{return new URL(ut)}catch{throw new Error("should be a valid URL")}}},5549:(et,tt,nt)=>{const rt=nt(4531);et.exports=function(lt){return rt(lt).toString()}},5757:et=>{class tt extends Error{constructor(rt,...lt){super("env-var: "+rt,...lt),Error.captureStackTrace&&Error.captureStackTrace(this,tt),this.name="EnvVarError"}}et.exports=tt},7869:et=>{et.exports=function(tt,nt){return function(rt,lt){nt&&nt.match(/prod|production/)||tt(`env-var (${rt}): ${lt}`)}}},5365:(et,tt,nt)=>{const rt=nt(5757),lt=/^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$/;et.exports=function(ut,Ut,ot,st){let dt,St,pt=!1,Rt=!1;const Bt=nt(7350);function ht(Vt){st(Ut,Vt)}function mt(Vt,Tt){let ft=`"${Ut}" ${Tt}`;throw Vt&&(ft=""+ft),St&&(ft=`${ft}. An example of a valid value would be: ${St}`),new rt(ft)}const gt={convertFromBase64:function(){return ht("marking for base64 conversion"),pt=!0,gt},default:function(Vt){if(typeof Vt=="number")dt=Vt.toString();else if(Array.isArray(Vt)||typeof Vt=="object"&&Vt!==null)dt=JSON.stringify(Vt);else{if(typeof Vt!="string")throw new rt("values passed to default() must be of Number, String, Array, or Object type");dt=Vt}return ht(`setting default value to "${dt}"`),gt},required:function(Vt){return Vt===void 0?(ht("marked as required"),Rt=!0):(ht("setting required flag to "+Vt),Rt=Vt),gt},example:function(Vt){return St=Vt,gt}};return Object.entries({...Bt,...ot}).forEach(([Vt,Tt])=>{gt[Vt]=function(ft){return function(){let Wt=ut[Ut];if(ht(`will be read from the environment using "${ft.name}" accessor`),Wt===void 0)if(dt===void 0&&Rt)ht("was not found in the environment, but is required to be set"),mt(void 0,"is a required variable, but it was not set");else{if(dt===void 0)return void ht("was not found in the environment, but is not required. returning undefined");ht(`was not found in the environment, parsing default value "${dt}" instead`),Wt=dt}Rt&&(ht("verifying variable value is not an empty string"),Wt.trim().length===0&&mt(void 0,"is a required variable, but its value was empty")),pt&&(ht("verifying variable is a valid base64 string"),Wt.match(lt)||mt(Wt,"should be a valid base64 string if using convertFromBase64"),ht("converting from base64 to utf8 string"),Wt=Buffer.from(Wt,"base64").toString());const yt=[Wt].concat(Array.prototype.slice.call(arguments));try{ht(`passing value "${Wt}" to "${ft.name}" accessor`);const Kt=ft.apply(ft,yt);return ht("parsed successfully, returning "+Kt),Kt}catch(Kt){mt(Wt,Kt.message)}}}(Tt)}),gt}},4940:(et,tt,nt)=>{var rt=nt(528)("%Object.defineProperty%",!0)||!1;if(rt)try{rt({},"a",{value:1})}catch{rt=!1}et.exports=rt},9110:et=>{et.exports=EvalError},9838:et=>{et.exports=Error},1155:et=>{et.exports=RangeError},4943:et=>{et.exports=ReferenceError},5731:et=>{et.exports=SyntaxError},3468:et=>{et.exports=TypeError},2140:et=>{et.exports=URIError},46:et=>{var tt,nt=typeof Reflect=="object"?Reflect:null,rt=nt&&typeof nt.apply=="function"?nt.apply:function(gt,Vt,Tt){return Function.prototype.apply.call(gt,Vt,Tt)};tt=nt&&typeof nt.ownKeys=="function"?nt.ownKeys:Object.getOwnPropertySymbols?function(gt){return Object.getOwnPropertyNames(gt).concat(Object.getOwnPropertySymbols(gt))}:function(gt){return Object.getOwnPropertyNames(gt)};var lt=Number.isNaN||function(gt){return gt!=gt};function ut(){ut.init.call(this)}et.exports=ut,et.exports.once=function(gt,Vt){return new Promise(function(Tt,ft){function Wt(Kt){gt.removeListener(Vt,yt),ft(Kt)}function yt(){typeof gt.removeListener=="function"&>.removeListener("error",Wt),Tt([].slice.call(arguments))}mt(gt,Vt,yt,{once:!0}),Vt!=="error"&&function(Kt,$t,Ht){typeof Kt.on=="function"&&mt(Kt,"error",$t,Ht)}(gt,Wt,{once:!0})})},ut.EventEmitter=ut,ut.prototype._events=void 0,ut.prototype._eventsCount=0,ut.prototype._maxListeners=void 0;var Ut=10;function ot(gt){if(typeof gt!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof gt)}function st(gt){return gt._maxListeners===void 0?ut.defaultMaxListeners:gt._maxListeners}function dt(gt,Vt,Tt,ft){var Wt,yt,Kt,$t;if(ot(Tt),(yt=gt._events)===void 0?(yt=gt._events=Object.create(null),gt._eventsCount=0):(yt.newListener!==void 0&&(gt.emit("newListener",Vt,Tt.listener?Tt.listener:Tt),yt=gt._events),Kt=yt[Vt]),Kt===void 0)Kt=yt[Vt]=Tt,++gt._eventsCount;else if(typeof Kt=="function"?Kt=yt[Vt]=ft?[Tt,Kt]:[Kt,Tt]:ft?Kt.unshift(Tt):Kt.push(Tt),(Wt=st(gt))>0&&Kt.length>Wt&&!Kt.warned){Kt.warned=!0;var Ht=new Error("Possible EventEmitter memory leak detected. "+Kt.length+" "+String(Vt)+" listeners added. Use emitter.setMaxListeners() to increase limit");Ht.name="MaxListenersExceededWarning",Ht.emitter=gt,Ht.type=Vt,Ht.count=Kt.length,$t=Ht,console&&console.warn&&console.warn($t)}return gt}function St(){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 pt(gt,Vt,Tt){var ft={fired:!1,wrapFn:void 0,target:gt,type:Vt,listener:Tt},Wt=St.bind(ft);return Wt.listener=Tt,ft.wrapFn=Wt,Wt}function Rt(gt,Vt,Tt){var ft=gt._events;if(ft===void 0)return[];var Wt=ft[Vt];return Wt===void 0?[]:typeof Wt=="function"?Tt?[Wt.listener||Wt]:[Wt]:Tt?function(yt){for(var Kt=new Array(yt.length),$t=0;$t0&&(yt=Vt[0]),yt instanceof Error)throw yt;var Kt=new Error("Unhandled error."+(yt?" ("+yt.message+")":""));throw Kt.context=yt,Kt}var $t=Wt[gt];if($t===void 0)return!1;if(typeof $t=="function")rt($t,this,Vt);else{var Ht=$t.length,Nt=ht($t,Ht);for(Tt=0;Tt=0;yt--)if(Tt[yt]===Vt||Tt[yt].listener===Vt){Kt=Tt[yt].listener,Wt=yt;break}if(Wt<0)return this;Wt===0?Tt.shift():function($t,Ht){for(;Ht+1<$t.length;Ht++)$t[Ht]=$t[Ht+1];$t.pop()}(Tt,Wt),Tt.length===1&&(ft[gt]=Tt[0]),ft.removeListener!==void 0&&this.emit("removeListener",gt,Kt||Vt)}return this},ut.prototype.off=ut.prototype.removeListener,ut.prototype.removeAllListeners=function(gt){var Vt,Tt,ft;if((Tt=this._events)===void 0)return this;if(Tt.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):Tt[gt]!==void 0&&(--this._eventsCount==0?this._events=Object.create(null):delete Tt[gt]),this;if(arguments.length===0){var Wt,yt=Object.keys(Tt);for(ft=0;ft=0;ft--)this.removeListener(gt,Vt[ft]);return this},ut.prototype.listeners=function(gt){return Rt(this,gt,!0)},ut.prototype.rawListeners=function(gt){return Rt(this,gt,!1)},ut.listenerCount=function(gt,Vt){return typeof gt.listenerCount=="function"?gt.listenerCount(Vt):Bt.call(gt,Vt)},ut.prototype.listenerCount=Bt,ut.prototype.eventNames=function(){return this._eventsCount>0?tt(this._events):[]}},6075:et=>{et.exports=function(tt,nt){nt||(nt={}),typeof nt=="function"&&(nt={cmp:nt});var rt,lt=typeof nt.cycles=="boolean"&&nt.cycles,ut=nt.cmp&&(rt=nt.cmp,function(ot){return function(st,dt){var St={key:st,value:ot[st]},pt={key:dt,value:ot[dt]};return rt(St,pt)}}),Ut=[];return function ot(st){if(st&&st.toJSON&&typeof st.toJSON=="function"&&(st=st.toJSON()),st!==void 0){if(typeof st=="number")return isFinite(st)?""+st:"null";if(typeof st!="object")return JSON.stringify(st);var dt,St;if(Array.isArray(st)){for(St="[",dt=0;dt=Tt-1){var $t=ft.subarray(0,yt);if(Wt.push(String.fromCharCode.apply(null,$t)),!Kt)return Wt.join("");gt=gt.subarray(Vt),Vt=0,yt=0}var Ht=gt[Vt++];if(!(128&Ht))ft[yt++]=Ht;else if((224&Ht)==192){var Nt=63>[Vt++];ft[yt++]=(31&Ht)<<6|Nt}else if((240&Ht)==224){Nt=63>[Vt++];var qt=63>[Vt++];ft[yt++]=(31&Ht)<<12|Nt<<6|qt}else if((248&Ht)==240){var kt=(7&Ht)<<18|(Nt=63>[Vt++])<<12|(qt=63>[Vt++])<<6|63>[Vt++];kt>65535&&(kt-=65536,ft[yt++]=kt>>>10&1023|55296,kt=56320|1023&kt),ft[yt++]=kt}}}var ut="Failed to ",Ut=function(gt,Vt,Tt){if(gt)throw new Error("".concat(ut).concat(Vt,": the '").concat(Tt,"' option is unsupported."))},ot=typeof Buffer=="function"&&Buffer.from,st=ot?function(gt){return Buffer.from(gt)}:function(gt){for(var Vt=0,Tt=gt.length,ft=0,Wt=Math.max(32,Tt+(Tt>>>1)+7),yt=new Uint8Array(Wt>>>3<<3);Vt=55296&&Kt<=56319){if(Vt=55296&&Kt<=56319)continue}if(ft+4>yt.length){Wt+=8,Wt=(Wt*=1+Vt/gt.length*2)>>>3<<3;var Ht=new Uint8Array(Wt);Ht.set(yt),yt=Ht}if(4294967168&Kt){if(!(4294965248&Kt))yt[ft++]=Kt>>>6&31|192;else if(!(4294901760&Kt))yt[ft++]=Kt>>>12&15|224,yt[ft++]=Kt>>>6&63|128;else{if(4292870144&Kt)continue;yt[ft++]=Kt>>>18&7|240,yt[ft++]=Kt>>>12&63|128,yt[ft++]=Kt>>>6&63|128}yt[ft++]=63&Kt|128}else yt[ft++]=Kt}return yt.slice?yt.slice(0,ft):yt.subarray(0,ft)};function dt(){this.encoding="utf-8"}dt.prototype.encode=function(gt,Vt){return Ut(Vt&&Vt.stream,"encode","stream"),st(gt)};var St=!ot&&typeof Blob=="function"&&typeof URL=="function"&&typeof URL.createObjectURL=="function",pt=["utf-8","utf8","unicode-1-1-utf-8"],Rt=lt;ot?Rt=function(gt,Vt){return(gt instanceof Buffer?gt:Buffer.from(gt.buffer,gt.byteOffset,gt.byteLength)).toString(Vt)}:St&&(Rt=function(gt){try{return function(Vt){var Tt;try{var ft=new Blob([Vt],{type:"text/plain;charset=UTF-8"});Tt=URL.createObjectURL(ft);var Wt=new XMLHttpRequest;return Wt.open("GET",Tt,!1),Wt.send(),Wt.responseText}finally{Tt&&URL.revokeObjectURL(Tt)}}(gt)}catch{return lt(gt)}});var Bt="construct 'TextDecoder'",ht="".concat(ut," ").concat(Bt,": the ");function mt(gt,Vt){if(Ut(Vt&&Vt.fatal,Bt,"fatal"),gt=gt||"utf-8",!(ot?Buffer.isEncoding(gt):pt.indexOf(gt.toLowerCase())!==-1))throw new RangeError("".concat(ht," encoding label provided ('").concat(gt,"') is invalid."));this.encoding=gt,this.fatal=!1,this.ignoreBOM=!1}mt.prototype.decode=function(gt,Vt){var Tt;return Ut(Vt&&Vt.stream,"decode","stream"),Tt=gt instanceof Uint8Array?gt:gt.buffer instanceof ArrayBuffer?new Uint8Array(gt.buffer):new Uint8Array(gt),Rt(Tt,this.encoding)},rt.TextEncoder=rt.TextEncoder||dt,rt.TextDecoder=rt.TextDecoder||mt})(typeof window<"u"?window:nt.g!==void 0?nt.g:this)},4798:(et,tt,nt)=>{nt.r(tt),nt.d(tt,{assign:()=>st,default:()=>bt,defaultI18n:()=>Rt,format:()=>qt,parse:()=>kt,setGlobalDateI18n:()=>ht,setGlobalDateMasks:()=>Nt});var rt=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,lt="[^\\s]+",ut=/\[([^]*?)\]/gm;function Ut(Jt,wt){for(var At=[],Ct=0,Mt=Jt.length;Ct-1?Ct:null}};function st(Jt){for(var wt=[],At=1;At3?0:(Jt-Jt%10!=10?1:0)*Jt%10]}},Bt=st({},Rt),ht=function(Jt){return Bt=st(Bt,Jt)},mt=function(Jt){return Jt.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},gt=function(Jt,wt){for(wt===void 0&&(wt=2),Jt=String(Jt);Jt.length0?"-":"+")+gt(100*Math.floor(Math.abs(wt)/60)+Math.abs(wt)%60,4)},Z:function(Jt){var wt=Jt.getTimezoneOffset();return(wt>0?"-":"+")+gt(Math.floor(Math.abs(wt)/60),2)+":"+gt(Math.abs(wt)%60,2)}},Tt=function(Jt){return+Jt-1},ft=[null,"\\d\\d?"],Wt=[null,lt],yt=["isPm",lt,function(Jt,wt){var At=Jt.toLowerCase();return At===wt.amPm[0]?0:At===wt.amPm[1]?1:null}],Kt=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(Jt){var wt=(Jt+"").match(/([+-]|\d\d)/gi);if(wt){var At=60*+wt[1]+parseInt(wt[2],10);return wt[0]==="+"?At:-At}return 0}],$t={D:["day","\\d\\d?"],DD:["day","\\d\\d"],Do:["day","\\d\\d?"+lt,function(Jt){return parseInt(Jt,10)}],M:["month","\\d\\d?",Tt],MM:["month","\\d\\d",Tt],YY:["year","\\d\\d",function(Jt){var wt=+(""+new Date().getFullYear()).substr(0,2);return+(""+(+Jt>68?wt-1:wt)+Jt)}],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(Jt){return 100*+Jt}],SS:["millisecond","\\d\\d",function(Jt){return 10*+Jt}],SSS:["millisecond","\\d{3}"],d:ft,dd:ft,ddd:Wt,dddd:Wt,MMM:["month",lt,ot("monthNamesShort")],MMMM:["month",lt,ot("monthNames")],a:yt,A:yt,ZZ:Kt,Z:Kt},Ht={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"},Nt=function(Jt){return st(Ht,Jt)},qt=function(Jt,wt,At){if(wt===void 0&&(wt=Ht.default),At===void 0&&(At={}),typeof Jt=="number"&&(Jt=new Date(Jt)),Object.prototype.toString.call(Jt)!=="[object Date]"||isNaN(Jt.getTime()))throw new Error("Invalid Date pass to format");var Ct=[];wt=(wt=Ht[wt]||wt).replace(ut,function(nn,sn){return Ct.push(sn),"@@@"});var Mt=st(st({},Bt),At);return(wt=wt.replace(rt,function(nn){return Vt[nn](Jt,Mt)})).replace(/@@@/g,function(){return Ct.shift()})};function kt(Jt,wt,At){if(At===void 0&&(At={}),typeof wt!="string")throw new Error("Invalid format in fecha parse");if(wt=Ht[wt]||wt,Jt.length>1e3)return null;var Ct={year:new Date().getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},Mt=[],nn=[],sn=wt.replace(ut,function(_n,Zn){return nn.push(mt(Zn)),"@@@"}),Lt={},tn={};sn=mt(sn).replace(rt,function(_n){var Zn=$t[_n],On=Zn[0],Yn=Zn[1],_t=Zn[3];if(Lt[On])throw new Error("Invalid format. "+On+" specified twice in format");return Lt[On]=!0,_t&&(tn[_t]=!0),Mt.push(Zn),"("+Yn+")"}),Object.keys(tn).forEach(function(_n){if(!Lt[_n])throw new Error("Invalid format. "+_n+" is required in specified format")}),sn=sn.replace(/@@@/g,function(){return nn.shift()});var cn=Jt.match(new RegExp(sn,"i"));if(!cn)return null;for(var on,Gt=st(st({},Bt),At),Xt=1;Xt11||Ct.month<0||Ct.day>31||Ct.day<1||Ct.hour>23||Ct.hour<0||Ct.minute>59||Ct.minute<0||Ct.second>59||Ct.second<0)return null;return on}const bt={format:qt,parse:kt,defaultI18n:Rt,setGlobalDateI18n:ht,setGlobalDateMasks:Nt}},9827:et=>{var tt=Object.prototype.toString;et.exports=function(nt){if(typeof nt.displayName=="string"&&nt.constructor.name)return nt.displayName;if(typeof nt.name=="string"&&nt.name)return nt.name;if(typeof nt=="object"&&nt.constructor&&typeof nt.constructor.name=="string")return nt.constructor.name;var rt=nt.toString(),lt=tt.call(nt).slice(8,-1);return(rt=lt==="Function"?rt.substring(rt.indexOf("(")+1,rt.indexOf(")")):lt)||"anonymous"}},705:(et,tt,nt)=>{var rt=nt(9617),lt=Object.prototype.toString,ut=Object.prototype.hasOwnProperty,Ut=function(dt,St,pt){for(var Rt=0,Bt=dt.length;Rt=3&&(Rt=pt),lt.call(dt)==="[object Array]"?Ut(dt,St,Rt):typeof dt=="string"?ot(dt,St,Rt):st(dt,St,Rt)}},8794:et=>{var tt="Function.prototype.bind called on incompatible ",nt=Object.prototype.toString,rt=Math.max,lt=function(ot,st){for(var dt=[],St=0;St{var rt=nt(8794);et.exports=Function.prototype.bind||rt},528:(et,tt,nt)=>{var rt=nt(9838),lt=nt(9110),ut=nt(1155),Ut=nt(4943),ot=nt(5731),st=nt(3468),dt=nt(2140),St=Function,pt=function(nn){try{return St('"use strict"; return ('+nn+").constructor;")()}catch{}},Rt=Object.getOwnPropertyDescriptor;if(Rt)try{Rt({},"")}catch{Rt=null}var Bt=function(){throw new st},ht=Rt?function(){try{return Bt}catch{try{return Rt(arguments,"callee").get}catch{return Bt}}}():Bt,mt=nt(3558)(),gt=nt(6869)(),Vt=Object.getPrototypeOf||(gt?function(nn){return nn.__proto__}:null),Tt={},ft=typeof Uint8Array<"u"&&Vt?Vt(Uint8Array):void 0,Wt={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?void 0:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?void 0:ArrayBuffer,"%ArrayIteratorPrototype%":mt&&Vt?Vt([][Symbol.iterator]()):void 0,"%AsyncFromSyncIteratorPrototype%":void 0,"%AsyncFunction%":Tt,"%AsyncGenerator%":Tt,"%AsyncGeneratorFunction%":Tt,"%AsyncIteratorPrototype%":Tt,"%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%":rt,"%eval%":eval,"%EvalError%":lt,"%Float32Array%":typeof Float32Array>"u"?void 0:Float32Array,"%Float64Array%":typeof Float64Array>"u"?void 0:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?void 0:FinalizationRegistry,"%Function%":St,"%GeneratorFunction%":Tt,"%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%":mt&&Vt?Vt(Vt([][Symbol.iterator]())):void 0,"%JSON%":typeof JSON=="object"?JSON:void 0,"%Map%":typeof Map>"u"?void 0:Map,"%MapIteratorPrototype%":typeof Map<"u"&&mt&&Vt?Vt(new Map()[Symbol.iterator]()):void 0,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?void 0:Promise,"%Proxy%":typeof Proxy>"u"?void 0:Proxy,"%RangeError%":ut,"%ReferenceError%":Ut,"%Reflect%":typeof Reflect>"u"?void 0:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?void 0:Set,"%SetIteratorPrototype%":typeof Set<"u"&&mt&&Vt?Vt(new Set()[Symbol.iterator]()):void 0,"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?void 0:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":mt&&Vt?Vt(""[Symbol.iterator]()):void 0,"%Symbol%":mt?Symbol:void 0,"%SyntaxError%":ot,"%ThrowTypeError%":ht,"%TypedArray%":ft,"%TypeError%":st,"%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%":dt,"%WeakMap%":typeof WeakMap>"u"?void 0:WeakMap,"%WeakRef%":typeof WeakRef>"u"?void 0:WeakRef,"%WeakSet%":typeof WeakSet>"u"?void 0:WeakSet};if(Vt)try{null.error}catch(nn){var yt=Vt(Vt(nn));Wt["%Error.prototype%"]=yt}var Kt={__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"]},$t=nt(9138),Ht=nt(8554),Nt=$t.call(Function.call,Array.prototype.concat),qt=$t.call(Function.apply,Array.prototype.splice),kt=$t.call(Function.call,String.prototype.replace),bt=$t.call(Function.call,String.prototype.slice),Jt=$t.call(Function.call,RegExp.prototype.exec),wt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,At=/\\(\\)?/g,Ct=function(nn){var sn=bt(nn,0,1),Lt=bt(nn,-1);if(sn==="%"&&Lt!=="%")throw new ot("invalid intrinsic syntax, expected closing `%`");if(Lt==="%"&&sn!=="%")throw new ot("invalid intrinsic syntax, expected opening `%`");var tn=[];return kt(nn,wt,function(cn,on,Gt,Xt){tn[tn.length]=Gt?kt(Xt,At,"$1"):on||cn}),tn},Mt=function(nn,sn){var Lt,tn=nn;if(Ht(Kt,tn)&&(tn="%"+(Lt=Kt[tn])[0]+"%"),Ht(Wt,tn)){var cn=Wt[tn];if(cn===Tt&&(cn=function on(Gt){var Xt;if(Gt==="%AsyncFunction%")Xt=pt("async function () {}");else if(Gt==="%GeneratorFunction%")Xt=pt("function* () {}");else if(Gt==="%AsyncGeneratorFunction%")Xt=pt("async function* () {}");else if(Gt==="%AsyncGenerator%"){var dn=on("%AsyncGeneratorFunction%");dn&&(Xt=dn.prototype)}else if(Gt==="%AsyncIteratorPrototype%"){var Vn=on("%AsyncGenerator%");Vn&&Vt&&(Xt=Vt(Vn.prototype))}return Wt[Gt]=Xt,Xt}(tn)),cn===void 0&&!sn)throw new st("intrinsic "+nn+" exists, but is not available. Please file an issue!");return{alias:Lt,name:tn,value:cn}}throw new ot("intrinsic "+nn+" does not exist!")};et.exports=function(nn,sn){if(typeof nn!="string"||nn.length===0)throw new st("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof sn!="boolean")throw new st('"allowMissing" argument must be a boolean');if(Jt(/^%?[^%]*%?$/,nn)===null)throw new ot("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var Lt=Ct(nn),tn=Lt.length>0?Lt[0]:"",cn=Mt("%"+tn+"%",sn),on=cn.name,Gt=cn.value,Xt=!1,dn=cn.alias;dn&&(tn=dn[0],qt(Lt,Nt([0,1],dn)));for(var Vn=1,Fn=!0;Vn=Lt.length){var _n=Rt(Gt,fn);Gt=(Fn=!!_n)&&"get"in _n&&!("originalValue"in _n.get)?_n.get:Gt[fn]}else Fn=Ht(Gt,fn),Gt=Gt[fn];Fn&&!Xt&&(Wt[on]=Gt)}}return Gt}},7186:function(et,tt,nt){var rt=typeof Object.defineProperties=="function"?Object.defineProperty:function(ct,Qt,vt){ct!=Array.prototype&&ct!=Object.prototype&&(ct[Qt]=vt.value)},lt=typeof window<"u"&&window===this?this:nt.g!==void 0&&nt.g!=null?nt.g:this;function ut(){ut=function(){},lt.Symbol||(lt.Symbol=st)}function Ut(ct,Qt){this.a=ct,rt(this,"description",{configurable:!0,writable:!0,value:Qt})}Ut.prototype.toString=function(){return this.a};var ot,st=(ot=0,function ct(Qt){if(this instanceof ct)throw new TypeError("Symbol is not a constructor");return new Ut("jscomp_symbol_"+(Qt||"")+"_"+ot++,Qt)});function dt(){ut();var ct=lt.Symbol.iterator;ct||(ct=lt.Symbol.iterator=lt.Symbol("Symbol.iterator")),typeof Array.prototype[ct]!="function"&&rt(Array.prototype,ct,{configurable:!0,writable:!0,value:function(){return function(Qt){return dt(),(Qt={next:Qt})[lt.Symbol.iterator]=function(){return this},Qt}(function(Qt){var vt=0;return function(){return vt=arguments.length?Array.prototype.slice.call(ct,Qt):Array.prototype.slice.call(ct,Qt,vt)}function Tt(ct,Qt,vt,Pt){var en="Assertion failed";if(vt){en+=": "+vt;var Bn=Pt}else ct&&(en+=": "+ct,Bn=Qt);throw Error(en,Bn||[])}function ft(ct,Qt,vt){for(var Pt=[],en=2;en=ct.length)return String.fromCharCode.apply(null,ct);for(var Qt="",vt=0;vt>2;en=(3&en)<<4|jn>>4,jn=(15&jn)<<2|ur>>6,ur&=63,$n||(ur=64,Bn||(jn=64)),vt.push(Qt[Rr],Qt[en],Qt[jn]||"",Qt[ur]||"")}return vt.join("")}function nn(ct){var Qt=ct.length,vt=3*Qt/4;vt%3?vt=Math.floor(vt):"=.".indexOf(ct[Qt-1])!=-1&&(vt="=.".indexOf(ct[Qt-2])!=-1?vt-2:vt-1);var Pt=new Uint8Array(vt),en=0;return function(Bn,jn){function $n(hr){for(;ur>4),Yr!=64&&(jn(Sr<<4&240|Yr>>2),Mr!=64&&jn(Yr<<6&192|Mr))}}(ct,function(Bn){Pt[en++]=Bn}),Pt.subarray(0,en)}function sn(){if(!Ct){Ct={};for(var ct="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),Qt=["+/=","+/","-_=","-_.","-_"],vt=0;5>vt;vt++){var Pt=ct.concat(Qt[vt].split(""));At[vt]=Pt;for(var en=0;en>>0;ct=Math.floor((ct-Qt)/4294967296)>>>0,Lt=Qt,tn=ct}function on(ct){var Qt=0>ct,vt=(ct=Math.abs(ct))>>>0;ct=Math.floor((ct-vt)/4294967296),ct>>>=0,Qt&&(ct=~ct>>>0,4294967295<(vt=1+(~vt>>>0))&&(vt=0,4294967295<++ct&&(ct=0))),Lt=vt,tn=ct}function Gt(ct){var Qt=0>ct;cn(ct=2*Math.abs(ct)),ct=Lt;var vt=tn;Qt&&(ct==0?vt==0?vt=ct=4294967295:(vt--,ct=4294967295):ct--),Lt=ct,tn=vt}function Xt(ct){var Qt=0>ct?1:0;if((ct=Qt?-ct:ct)===0)0<1/ct?Lt=tn=0:(tn=0,Lt=2147483648);else if(isNaN(ct))tn=0,Lt=2147483647;else if(34028234663852886e22>>0;else if(11754943508222875e-54>ct)ct=Math.round(ct/Math.pow(2,-149)),tn=0,Lt=(Qt<<31|ct)>>>0;else{var vt=Math.floor(Math.log(ct)/Math.LN2);ct*=Math.pow(2,-vt),16777216<=(ct=Math.round(8388608*ct))&&++vt,tn=0,Lt=(Qt<<31|vt+127<<23|8388607&ct)>>>0}}function dn(ct){var Qt=0>ct?1:0;if((ct=Qt?-ct:ct)===0)tn=0<1/ct?0:2147483648,Lt=0;else if(isNaN(ct))tn=2147483647,Lt=4294967295;else if(17976931348623157e292>>0,Lt=0;else if(22250738585072014e-324>ct)ct/=Math.pow(2,-1074),tn=(Qt<<31|ct/4294967296)>>>0,Lt=ct>>>0;else{var vt=ct,Pt=0;if(2<=vt)for(;2<=vt&&1023>Pt;)Pt++,vt/=2;else for(;1>vt&&-1022>>0,Lt=4503599627370496*ct>>>0}}function Vn(ct){var Qt=ct.charCodeAt(4),vt=ct.charCodeAt(5),Pt=ct.charCodeAt(6),en=ct.charCodeAt(7);Lt=ct.charCodeAt(0)+(ct.charCodeAt(1)<<8)+(ct.charCodeAt(2)<<16)+(ct.charCodeAt(3)<<24)>>>0,tn=Qt+(vt<<8)+(Pt<<16)+(en<<24)>>>0}function Fn(ct,Qt){return 4294967296*Qt+(ct>>>0)}function fn(ct,Qt){var vt=2147483648&Qt;return vt&&(Qt=~Qt>>>0,(ct=1+~ct>>>0)==0&&(Qt=Qt+1>>>0)),ct=Fn(ct,Qt),vt?-ct:ct}function Un(ct,Qt,vt){var Pt=Qt>>31;return vt(ct<<1^Pt,(Qt<<1|ct>>>31)^Pt)}function Jn(ct,Qt){return _n(ct,Qt,fn)}function _n(ct,Qt,vt){var Pt=-(1&ct);return vt((ct>>>1|Qt<<31)^Pt,Qt>>>1^Pt)}function Zn(ct){var Qt=2*(ct>>31)+1,vt=ct>>>23&255;return ct&=8388607,vt==255?ct?NaN:1/0*Qt:vt==0?Qt*Math.pow(2,-149)*ct:Qt*Math.pow(2,vt-150)*(ct+Math.pow(2,23))}function On(ct,Qt){var vt=2*(Qt>>31)+1,Pt=Qt>>>20&2047;return ct=4294967296*(1048575&Qt)+ct,Pt==2047?ct?NaN:1/0*vt:Pt==0?vt*Math.pow(2,-1074)*ct:vt*Math.pow(2,Pt-1075)*(ct+4503599627370496)}function Yn(ct,Qt){return String.fromCharCode(ct>>>0&255,ct>>>8&255,ct>>>16&255,ct>>>24&255,Qt>>>0&255,Qt>>>8&255,Qt>>>16&255,Qt>>>24&255)}function _t(ct,Qt){function vt(en,Bn){return en=en?String(en):"",Bn?"0000000".slice(en.length)+en:en}if(2097151>=Qt)return""+Fn(ct,Qt);var Pt=(ct>>>24|Qt<<8)>>>0&16777215;return ct=(16777215&ct)+6777216*Pt+6710656*(Qt=Qt>>16&65535),Pt+=8147497*Qt,Qt*=2,1e7<=ct&&(Pt+=Math.floor(ct/1e7),ct%=1e7),1e7<=Pt&&(Qt+=Math.floor(Pt/1e7),Pt%=1e7),vt(Qt,0)+vt(Pt,Qt)+vt(ct,1)}function Ot(ct,Qt){var vt=2147483648&Qt;return vt&&(Qt=~Qt+((ct=1+~ct>>>0)==0?1:0)>>>0),ct=_t(ct,Qt),vt?"-"+ct:ct}function jt(ct,Qt){Vn(ct),ct=Lt;var vt=tn;return Qt?Ot(ct,vt):_t(ct,vt)}function pn(ct){function Qt(Bn,jn){for(var $n=0;8>$n&&(Bn!==1||0>>=8}ft(0Bn;Bn++)Pt[Bn]=255&~Pt[Bn]}(),Qt(1,1)),bt(Pt)}function En(ct){return String.fromCharCode(10>ct?48+ct:87+ct)}function yn(ct){return 97<=ct?ct-97+10:ct-48}function Cn(ct,Qt,vt,Pt,en){var Bn=0;if(128>Pt)for(;Qt>=7}if(ct[Qt++]!=jn)break;Bn++,Qt+=en}return Bn}function Gn(ct){return ct.constructor===Uint8Array?ct:ct.constructor===ArrayBuffer||ct.constructor===Array?new Uint8Array(ct):ct.constructor===String?nn(ct):ct instanceof Uint8Array?new Uint8Array(ct.buffer,ct.byteOffset,ct.byteLength):(Wt("Type not convertible to Uint8Array."),new Uint8Array(0))}function Wn(ct,Qt,vt){this.b=null,this.a=this.c=this.h=0,this.v=!1,ct&&this.H(ct,Qt,vt)}pt("jspb.utils.getSplit64Low",function(){return Lt},void 0),pt("jspb.utils.getSplit64High",function(){return tn},void 0),pt("jspb.utils.splitUint64",cn,void 0),pt("jspb.utils.splitInt64",on,void 0),pt("jspb.utils.splitZigzag64",Gt,void 0),pt("jspb.utils.splitFloat32",Xt,void 0),pt("jspb.utils.splitFloat64",dn,void 0),pt("jspb.utils.splitHash64",Vn,void 0),pt("jspb.utils.joinUint64",Fn,void 0),pt("jspb.utils.joinInt64",fn,void 0),pt("jspb.utils.toZigzag64",Un,void 0),pt("jspb.utils.joinZigzag64",Jn,void 0),pt("jspb.utils.fromZigzag64",_n,void 0),pt("jspb.utils.joinFloat32",Zn,void 0),pt("jspb.utils.joinFloat64",On,void 0),pt("jspb.utils.joinHash64",Yn,void 0),pt("jspb.utils.DIGITS","0123456789abcdef".split(""),void 0),pt("jspb.utils.joinUnsignedDecimalString",_t,void 0),pt("jspb.utils.joinSignedDecimalString",Ot,void 0),pt("jspb.utils.hash64ToDecimalString",jt,void 0),pt("jspb.utils.hash64ArrayToDecimalStrings",function(ct,Qt){for(var vt=Array(ct.length),Pt=0;Ptvt;vt++){var Pt=ct.charCodeAt(7-vt);Qt[2*vt+2]=En(Pt>>4),Qt[2*vt+3]=En(15&Pt)}return Qt.join("")},void 0),pt("jspb.utils.hexStringToHash64",function(ct){ft((ct=ct.toLowerCase()).length==18),ft(ct[0]=="0"),ft(ct[1]=="x");for(var Qt="",vt=0;8>vt;vt++)Qt=String.fromCharCode(16*yn(ct.charCodeAt(2*vt+2))+yn(ct.charCodeAt(2*vt+3)))+Qt;return Qt},void 0),pt("jspb.utils.hash64ToNumber",function(ct,Qt){Vn(ct),ct=Lt;var vt=tn;return Qt?fn(ct,vt):Fn(ct,vt)},void 0),pt("jspb.utils.numberToHash64",function(ct){return on(ct),Yn(Lt,tn)},void 0),pt("jspb.utils.countVarints",function(ct,Qt,vt){for(var Pt=0,en=Qt;en>7;return vt-Qt-Pt},void 0),pt("jspb.utils.countVarintFields",function(ct,Qt,vt,Pt){var en=0;if(128>(Pt*=8))for(;Qt>=7}if(ct[Qt++]!=Bn)break;for(en++;128&(Bn=ct[Qt++]););}return en},void 0),pt("jspb.utils.countFixed32Fields",function(ct,Qt,vt,Pt){return Cn(ct,Qt,vt,8*Pt+5,4)},void 0),pt("jspb.utils.countFixed64Fields",function(ct,Qt,vt,Pt){return Cn(ct,Qt,vt,8*Pt+1,8)},void 0),pt("jspb.utils.countDelimitedFields",function(ct,Qt,vt,Pt){var en=0;for(Pt=8*Pt+2;Qt>=7}if(ct[Qt++]!=Bn)break;en++;for(var jn=0,$n=1;jn+=(127&(Bn=ct[Qt++]))*$n,$n*=128,(128&Bn)!=0;);Qt+=jn}return en},void 0),pt("jspb.utils.debugBytesToTextFormat",function(ct){var Qt='"';if(ct){ct=Gn(ct);for(var vt=0;vtct[vt]&&(Qt+="0"),Qt+=ct[vt].toString(16)}return Qt+'"'},void 0),pt("jspb.utils.debugScalarToTextFormat",function(ct){if(typeof ct=="string"){ct=String(ct);for(var Qt=['"'],vt=0;vtBn||((Bn=en)in wt?en=wt[Bn]:Bn in Jt?en=wt[Bn]=Jt[Bn]:(31<(Pt=Bn.charCodeAt(0))&&127>Pt?en=Bn:(256>Pt?(en="\\x",(16>Pt||256Pt&&(en+="0")),en+=Pt.toString(16).toUpperCase()),en=wt[Bn]=en)),Pt=en),Qt[jn]=Pt}Qt.push('"'),ct=Qt.join("")}else ct=ct.toString();return ct},void 0),pt("jspb.utils.stringToByteArray",function(ct){for(var Qt=new Uint8Array(ct.length),vt=0;vtir.length&&ir.push(this)},Wn.prototype.free=Wn.prototype.Ca,Wn.prototype.clone=function(){return lr(this.b,this.h,this.c-this.h)},Wn.prototype.clone=Wn.prototype.clone,Wn.prototype.clear=function(){this.b=null,this.a=this.c=this.h=0,this.v=!1},Wn.prototype.clear=Wn.prototype.clear,Wn.prototype.Y=function(){return this.b},Wn.prototype.getBuffer=Wn.prototype.Y,Wn.prototype.H=function(ct,Qt,vt){this.b=Gn(ct),this.h=Qt!==void 0?Qt:0,this.c=vt!==void 0?this.h+vt:this.b.length,this.a=this.h},Wn.prototype.setBlock=Wn.prototype.H,Wn.prototype.Db=function(){return this.c},Wn.prototype.getEnd=Wn.prototype.Db,Wn.prototype.setEnd=function(ct){this.c=ct},Wn.prototype.setEnd=Wn.prototype.setEnd,Wn.prototype.reset=function(){this.a=this.h},Wn.prototype.reset=Wn.prototype.reset,Wn.prototype.B=function(){return this.a},Wn.prototype.getCursor=Wn.prototype.B,Wn.prototype.Ma=function(ct){this.a=ct},Wn.prototype.setCursor=Wn.prototype.Ma,Wn.prototype.advance=function(ct){this.a+=ct,ft(this.a<=this.c)},Wn.prototype.advance=Wn.prototype.advance,Wn.prototype.ya=function(){return this.a==this.c},Wn.prototype.atEnd=Wn.prototype.ya,Wn.prototype.Qb=function(){return this.a>this.c},Wn.prototype.pastEnd=Wn.prototype.Qb,Wn.prototype.getError=function(){return this.v||0>this.a||this.a>this.c},Wn.prototype.getError=Wn.prototype.getError,Wn.prototype.w=function(ct){for(var Qt=128,vt=0,Pt=0,en=0;4>en&&128<=Qt;en++)vt|=(127&(Qt=this.b[this.a++]))<<7*en;if(128<=Qt&&(vt|=(127&(Qt=this.b[this.a++]))<<28,Pt|=(127&Qt)>>4),128<=Qt)for(en=0;5>en&&128<=Qt;en++)Pt|=(127&(Qt=this.b[this.a++]))<<7*en+3;if(128>Qt)return ct(vt>>>0,Pt>>>0);Wt("Failed to read varint, encoding is invalid."),this.v=!0},Wn.prototype.readSplitVarint64=Wn.prototype.w,Wn.prototype.ea=function(ct){return this.w(function(Qt,vt){return _n(Qt,vt,ct)})},Wn.prototype.readSplitZigzagVarint64=Wn.prototype.ea,Wn.prototype.ta=function(ct){var Qt=this.b,vt=this.a;this.a+=8;for(var Pt=0,en=0,Bn=vt+7;Bn>=vt;Bn--)Pt=Pt<<8|Qt[Bn],en=en<<8|Qt[Bn+4];return ct(Pt,en)},Wn.prototype.readSplitFixed64=Wn.prototype.ta,Wn.prototype.kb=function(){for(;128&this.b[this.a];)this.a++;this.a++},Wn.prototype.skipVarint=Wn.prototype.kb,Wn.prototype.mb=function(ct){for(;128>>=7;this.a--},Wn.prototype.unskipVarint=Wn.prototype.mb,Wn.prototype.o=function(){var ct=this.b,Qt=ct[this.a],vt=127&Qt;return 128>Qt?(this.a+=1,ft(this.a<=this.c),vt):(vt|=(127&(Qt=ct[this.a+1]))<<7,128>Qt?(this.a+=2,ft(this.a<=this.c),vt):(vt|=(127&(Qt=ct[this.a+2]))<<14,128>Qt?(this.a+=3,ft(this.a<=this.c),vt):(vt|=(127&(Qt=ct[this.a+3]))<<21,128>Qt?(this.a+=4,ft(this.a<=this.c),vt):(vt|=(15&(Qt=ct[this.a+4]))<<28,128>Qt?(this.a+=5,ft(this.a<=this.c),vt>>>0):(this.a+=5,128<=ct[this.a++]&&128<=ct[this.a++]&&128<=ct[this.a++]&&128<=ct[this.a++]&&128<=ct[this.a++]&&ft(!1),ft(this.a<=this.c),vt)))))},Wn.prototype.readUnsignedVarint32=Wn.prototype.o,Wn.prototype.da=function(){return~~this.o()},Wn.prototype.readSignedVarint32=Wn.prototype.da,Wn.prototype.O=function(){return this.o().toString()},Wn.prototype.Ea=function(){return this.da().toString()},Wn.prototype.readSignedVarint32String=Wn.prototype.Ea,Wn.prototype.Ia=function(){var ct=this.o();return ct>>>1^-(1&ct)},Wn.prototype.readZigzagVarint32=Wn.prototype.Ia,Wn.prototype.Ga=function(){return this.w(Fn)},Wn.prototype.readUnsignedVarint64=Wn.prototype.Ga,Wn.prototype.Ha=function(){return this.w(_t)},Wn.prototype.readUnsignedVarint64String=Wn.prototype.Ha,Wn.prototype.sa=function(){return this.w(fn)},Wn.prototype.readSignedVarint64=Wn.prototype.sa,Wn.prototype.Fa=function(){return this.w(Ot)},Wn.prototype.readSignedVarint64String=Wn.prototype.Fa,Wn.prototype.Ja=function(){return this.w(Jn)},Wn.prototype.readZigzagVarint64=Wn.prototype.Ja,Wn.prototype.fb=function(){return this.ea(Yn)},Wn.prototype.readZigzagVarintHash64=Wn.prototype.fb,Wn.prototype.Ka=function(){return this.ea(Ot)},Wn.prototype.readZigzagVarint64String=Wn.prototype.Ka,Wn.prototype.Gc=function(){var ct=this.b[this.a];return this.a+=1,ft(this.a<=this.c),ct},Wn.prototype.readUint8=Wn.prototype.Gc,Wn.prototype.Ec=function(){var ct=this.b[this.a],Qt=this.b[this.a+1];return this.a+=2,ft(this.a<=this.c),ct<<0|Qt<<8},Wn.prototype.readUint16=Wn.prototype.Ec,Wn.prototype.m=function(){var ct=this.b[this.a],Qt=this.b[this.a+1],vt=this.b[this.a+2],Pt=this.b[this.a+3];return this.a+=4,ft(this.a<=this.c),(ct<<0|Qt<<8|vt<<16|Pt<<24)>>>0},Wn.prototype.readUint32=Wn.prototype.m,Wn.prototype.ga=function(){return Fn(this.m(),this.m())},Wn.prototype.readUint64=Wn.prototype.ga,Wn.prototype.ha=function(){return _t(this.m(),this.m())},Wn.prototype.readUint64String=Wn.prototype.ha,Wn.prototype.Xb=function(){var ct=this.b[this.a];return this.a+=1,ft(this.a<=this.c),ct<<24>>24},Wn.prototype.readInt8=Wn.prototype.Xb,Wn.prototype.Vb=function(){var ct=this.b[this.a],Qt=this.b[this.a+1];return this.a+=2,ft(this.a<=this.c),(ct<<0|Qt<<8)<<16>>16},Wn.prototype.readInt16=Wn.prototype.Vb,Wn.prototype.P=function(){var ct=this.b[this.a],Qt=this.b[this.a+1],vt=this.b[this.a+2],Pt=this.b[this.a+3];return this.a+=4,ft(this.a<=this.c),ct<<0|Qt<<8|vt<<16|Pt<<24},Wn.prototype.readInt32=Wn.prototype.P,Wn.prototype.ba=function(){return fn(this.m(),this.m())},Wn.prototype.readInt64=Wn.prototype.ba,Wn.prototype.ca=function(){return Ot(this.m(),this.m())},Wn.prototype.readInt64String=Wn.prototype.ca,Wn.prototype.aa=function(){return Zn(this.m())},Wn.prototype.readFloat=Wn.prototype.aa,Wn.prototype.Z=function(){return On(this.m(),this.m())},Wn.prototype.readDouble=Wn.prototype.Z,Wn.prototype.pa=function(){return!!this.b[this.a++]},Wn.prototype.readBool=Wn.prototype.pa,Wn.prototype.ra=function(){return this.da()},Wn.prototype.readEnum=Wn.prototype.ra,Wn.prototype.fa=function(ct){var Qt=this.b,vt=this.a;ct=vt+ct;for(var Pt=[],en="";vtBn)Pt.push(Bn);else{if(192>Bn)continue;if(224>Bn){var jn=Qt[vt++];Pt.push((31&Bn)<<6|63&jn)}else if(240>Bn){jn=Qt[vt++];var $n=Qt[vt++];Pt.push((15&Bn)<<12|(63&jn)<<6|63&$n)}else 248>Bn&&(Bn=(7&Bn)<<18|(63&(jn=Qt[vt++]))<<12|(63&($n=Qt[vt++]))<<6|63&Qt[vt++],Bn-=65536,Pt.push(55296+(Bn>>10&1023),56320+(1023&Bn)))}8192<=Pt.length&&(en+=String.fromCharCode.apply(null,Pt),Pt.length=0)}return en+=bt(Pt),this.a=vt,en},Wn.prototype.readString=Wn.prototype.fa,Wn.prototype.Dc=function(){var ct=this.o();return this.fa(ct)},Wn.prototype.readStringWithLength=Wn.prototype.Dc,Wn.prototype.qa=function(ct){if(0>ct||this.a+ct>this.b.length)return this.v=!0,Wt("Invalid byte length!"),new Uint8Array(0);var Qt=this.b.subarray(this.a,this.a+ct);return this.a+=ct,ft(this.a<=this.c),Qt},Wn.prototype.readBytes=Wn.prototype.qa,Wn.prototype.ia=function(){return this.w(Yn)},Wn.prototype.readVarintHash64=Wn.prototype.ia,Wn.prototype.$=function(){var ct=this.b,Qt=this.a,vt=ct[Qt],Pt=ct[Qt+1],en=ct[Qt+2],Bn=ct[Qt+3],jn=ct[Qt+4],$n=ct[Qt+5],ur=ct[Qt+6];return ct=ct[Qt+7],this.a+=8,String.fromCharCode(vt,Pt,en,Bn,jn,$n,ur,ct)},Wn.prototype.readFixedHash64=Wn.prototype.$,pt("jspb.BinaryReader",Rn,void 0);var _r=[];function zr(ct,Qt,vt){if(_r.length){var Pt=_r.pop();return ct&&Pt.a.H(ct,Qt,vt),Pt}return new Rn(ct,Qt,vt)}function Er(ct,Qt){ft(ct.b==2);var vt=ct.a.o();vt=ct.a.B()+vt;for(var Pt=[];ct.a.B()_r.length&&_r.push(this)},Rn.prototype.free=Rn.prototype.Ca,Rn.prototype.Fb=function(){return this.O},Rn.prototype.getFieldCursor=Rn.prototype.Fb,Rn.prototype.B=function(){return this.a.B()},Rn.prototype.getCursor=Rn.prototype.B,Rn.prototype.Y=function(){return this.a.Y()},Rn.prototype.getBuffer=Rn.prototype.Y,Rn.prototype.Hb=function(){return this.c},Rn.prototype.getFieldNumber=Rn.prototype.Hb,Rn.prototype.Lb=function(){return this.b},Rn.prototype.getWireType=Rn.prototype.Lb,Rn.prototype.Mb=function(){return this.b==2},Rn.prototype.isDelimited=Rn.prototype.Mb,Rn.prototype.bb=function(){return this.b==4},Rn.prototype.isEndGroup=Rn.prototype.bb,Rn.prototype.getError=function(){return this.h||this.a.getError()},Rn.prototype.getError=Rn.prototype.getError,Rn.prototype.H=function(ct,Qt,vt){this.a.H(ct,Qt,vt),this.b=this.c=-1},Rn.prototype.setBlock=Rn.prototype.H,Rn.prototype.reset=function(){this.a.reset(),this.b=this.c=-1},Rn.prototype.reset=Rn.prototype.reset,Rn.prototype.advance=function(ct){this.a.advance(ct)},Rn.prototype.advance=Rn.prototype.advance,Rn.prototype.oa=function(){if(this.a.ya())return!1;if(this.getError())return Wt("Decoder hit an error"),!1;this.O=this.a.B();var ct=this.a.o(),Qt=ct>>>3;return(ct&=7)!=0&&ct!=5&&ct!=1&&ct!=2&&ct!=3&&ct!=4?(Wt("Invalid wire type: %s (at position %s)",ct,this.O),this.h=!0,!1):(this.c=Qt,this.b=ct,!0)},Rn.prototype.nextField=Rn.prototype.oa,Rn.prototype.Oa=function(){this.a.mb(this.c<<3|this.b)},Rn.prototype.unskipHeader=Rn.prototype.Oa,Rn.prototype.Lc=function(){var ct=this.c;for(this.Oa();this.oa()&&this.c==ct;)this.C();this.a.ya()||this.Oa()},Rn.prototype.skipMatchingFields=Rn.prototype.Lc,Rn.prototype.lb=function(){this.b!=0?(Wt("Invalid wire type for skipVarintField"),this.C()):this.a.kb()},Rn.prototype.skipVarintField=Rn.prototype.lb,Rn.prototype.gb=function(){if(this.b!=2)Wt("Invalid wire type for skipDelimitedField"),this.C();else{var ct=this.a.o();this.a.advance(ct)}},Rn.prototype.skipDelimitedField=Rn.prototype.gb,Rn.prototype.hb=function(){this.b!=5?(Wt("Invalid wire type for skipFixed32Field"),this.C()):this.a.advance(4)},Rn.prototype.skipFixed32Field=Rn.prototype.hb,Rn.prototype.ib=function(){this.b!=1?(Wt("Invalid wire type for skipFixed64Field"),this.C()):this.a.advance(8)},Rn.prototype.skipFixed64Field=Rn.prototype.ib,Rn.prototype.jb=function(){for(var ct=this.c;;){if(!this.oa()){Wt("Unmatched start-group tag: stream EOF"),this.h=!0;break}if(this.b==4){this.c!=ct&&(Wt("Unmatched end-group tag"),this.h=!0);break}this.C()}},Rn.prototype.skipGroup=Rn.prototype.jb,Rn.prototype.C=function(){switch(this.b){case 0:this.lb();break;case 1:this.ib();break;case 2:this.gb();break;case 5:this.hb();break;case 3:this.jb();break;default:Wt("Invalid wire encoding for field.")}},Rn.prototype.skipField=Rn.prototype.C,Rn.prototype.Hc=function(ct,Qt){this.v===null&&(this.v={}),ft(!this.v[ct]),this.v[ct]=Qt},Rn.prototype.registerReadCallback=Rn.prototype.Hc,Rn.prototype.Ic=function(ct){return ft(this.v!==null),ft(ct=this.v[ct]),ct(this)},Rn.prototype.runReadCallback=Rn.prototype.Ic,Rn.prototype.Yb=function(ct,Qt){ft(this.b==2);var vt=this.a.c,Pt=this.a.o();Pt=this.a.B()+Pt,this.a.setEnd(Pt),Qt(ct,this),this.a.Ma(Pt),this.a.setEnd(vt)},Rn.prototype.readMessage=Rn.prototype.Yb,Rn.prototype.Ub=function(ct,Qt,vt){ft(this.b==3),ft(this.c==ct),vt(Qt,this),this.h||this.b==4||(Wt("Group submessage did not end with an END_GROUP tag"),this.h=!0)},Rn.prototype.readGroup=Rn.prototype.Ub,Rn.prototype.Gb=function(){ft(this.b==2);var ct=this.a.o(),Qt=this.a.B(),vt=Qt+ct;return ct=lr(this.a.Y(),Qt,ct),this.a.Ma(vt),ct},Rn.prototype.getFieldDecoder=Rn.prototype.Gb,Rn.prototype.P=function(){return ft(this.b==0),this.a.da()},Rn.prototype.readInt32=Rn.prototype.P,Rn.prototype.Wb=function(){return ft(this.b==0),this.a.Ea()},Rn.prototype.readInt32String=Rn.prototype.Wb,Rn.prototype.ba=function(){return ft(this.b==0),this.a.sa()},Rn.prototype.readInt64=Rn.prototype.ba,Rn.prototype.ca=function(){return ft(this.b==0),this.a.Fa()},Rn.prototype.readInt64String=Rn.prototype.ca,Rn.prototype.m=function(){return ft(this.b==0),this.a.o()},Rn.prototype.readUint32=Rn.prototype.m,Rn.prototype.Fc=function(){return ft(this.b==0),this.a.O()},Rn.prototype.readUint32String=Rn.prototype.Fc,Rn.prototype.ga=function(){return ft(this.b==0),this.a.Ga()},Rn.prototype.readUint64=Rn.prototype.ga,Rn.prototype.ha=function(){return ft(this.b==0),this.a.Ha()},Rn.prototype.readUint64String=Rn.prototype.ha,Rn.prototype.zc=function(){return ft(this.b==0),this.a.Ia()},Rn.prototype.readSint32=Rn.prototype.zc,Rn.prototype.Ac=function(){return ft(this.b==0),this.a.Ja()},Rn.prototype.readSint64=Rn.prototype.Ac,Rn.prototype.Bc=function(){return ft(this.b==0),this.a.Ka()},Rn.prototype.readSint64String=Rn.prototype.Bc,Rn.prototype.Rb=function(){return ft(this.b==5),this.a.m()},Rn.prototype.readFixed32=Rn.prototype.Rb,Rn.prototype.Sb=function(){return ft(this.b==1),this.a.ga()},Rn.prototype.readFixed64=Rn.prototype.Sb,Rn.prototype.Tb=function(){return ft(this.b==1),this.a.ha()},Rn.prototype.readFixed64String=Rn.prototype.Tb,Rn.prototype.vc=function(){return ft(this.b==5),this.a.P()},Rn.prototype.readSfixed32=Rn.prototype.vc,Rn.prototype.wc=function(){return ft(this.b==5),this.a.P().toString()},Rn.prototype.readSfixed32String=Rn.prototype.wc,Rn.prototype.xc=function(){return ft(this.b==1),this.a.ba()},Rn.prototype.readSfixed64=Rn.prototype.xc,Rn.prototype.yc=function(){return ft(this.b==1),this.a.ca()},Rn.prototype.readSfixed64String=Rn.prototype.yc,Rn.prototype.aa=function(){return ft(this.b==5),this.a.aa()},Rn.prototype.readFloat=Rn.prototype.aa,Rn.prototype.Z=function(){return ft(this.b==1),this.a.Z()},Rn.prototype.readDouble=Rn.prototype.Z,Rn.prototype.pa=function(){return ft(this.b==0),!!this.a.o()},Rn.prototype.readBool=Rn.prototype.pa,Rn.prototype.ra=function(){return ft(this.b==0),this.a.sa()},Rn.prototype.readEnum=Rn.prototype.ra,Rn.prototype.fa=function(){ft(this.b==2);var ct=this.a.o();return this.a.fa(ct)},Rn.prototype.readString=Rn.prototype.fa,Rn.prototype.qa=function(){ft(this.b==2);var ct=this.a.o();return this.a.qa(ct)},Rn.prototype.readBytes=Rn.prototype.qa,Rn.prototype.ia=function(){return ft(this.b==0),this.a.ia()},Rn.prototype.readVarintHash64=Rn.prototype.ia,Rn.prototype.Cc=function(){return ft(this.b==0),this.a.fb()},Rn.prototype.readSintHash64=Rn.prototype.Cc,Rn.prototype.w=function(ct){return ft(this.b==0),this.a.w(ct)},Rn.prototype.readSplitVarint64=Rn.prototype.w,Rn.prototype.ea=function(ct){return ft(this.b==0),this.a.w(function(Qt,vt){return _n(Qt,vt,ct)})},Rn.prototype.readSplitZigzagVarint64=Rn.prototype.ea,Rn.prototype.$=function(){return ft(this.b==1),this.a.$()},Rn.prototype.readFixedHash64=Rn.prototype.$,Rn.prototype.ta=function(ct){return ft(this.b==1),this.a.ta(ct)},Rn.prototype.readSplitFixed64=Rn.prototype.ta,Rn.prototype.gc=function(){return Er(this,this.a.da)},Rn.prototype.readPackedInt32=Rn.prototype.gc,Rn.prototype.hc=function(){return Er(this,this.a.Ea)},Rn.prototype.readPackedInt32String=Rn.prototype.hc,Rn.prototype.ic=function(){return Er(this,this.a.sa)},Rn.prototype.readPackedInt64=Rn.prototype.ic,Rn.prototype.jc=function(){return Er(this,this.a.Fa)},Rn.prototype.readPackedInt64String=Rn.prototype.jc,Rn.prototype.qc=function(){return Er(this,this.a.o)},Rn.prototype.readPackedUint32=Rn.prototype.qc,Rn.prototype.rc=function(){return Er(this,this.a.O)},Rn.prototype.readPackedUint32String=Rn.prototype.rc,Rn.prototype.sc=function(){return Er(this,this.a.Ga)},Rn.prototype.readPackedUint64=Rn.prototype.sc,Rn.prototype.tc=function(){return Er(this,this.a.Ha)},Rn.prototype.readPackedUint64String=Rn.prototype.tc,Rn.prototype.nc=function(){return Er(this,this.a.Ia)},Rn.prototype.readPackedSint32=Rn.prototype.nc,Rn.prototype.oc=function(){return Er(this,this.a.Ja)},Rn.prototype.readPackedSint64=Rn.prototype.oc,Rn.prototype.pc=function(){return Er(this,this.a.Ka)},Rn.prototype.readPackedSint64String=Rn.prototype.pc,Rn.prototype.bc=function(){return Er(this,this.a.m)},Rn.prototype.readPackedFixed32=Rn.prototype.bc,Rn.prototype.cc=function(){return Er(this,this.a.ga)},Rn.prototype.readPackedFixed64=Rn.prototype.cc,Rn.prototype.dc=function(){return Er(this,this.a.ha)},Rn.prototype.readPackedFixed64String=Rn.prototype.dc,Rn.prototype.kc=function(){return Er(this,this.a.P)},Rn.prototype.readPackedSfixed32=Rn.prototype.kc,Rn.prototype.lc=function(){return Er(this,this.a.ba)},Rn.prototype.readPackedSfixed64=Rn.prototype.lc,Rn.prototype.mc=function(){return Er(this,this.a.ca)},Rn.prototype.readPackedSfixed64String=Rn.prototype.mc,Rn.prototype.fc=function(){return Er(this,this.a.aa)},Rn.prototype.readPackedFloat=Rn.prototype.fc,Rn.prototype.$b=function(){return Er(this,this.a.Z)},Rn.prototype.readPackedDouble=Rn.prototype.$b,Rn.prototype.Zb=function(){return Er(this,this.a.pa)},Rn.prototype.readPackedBool=Rn.prototype.Zb,Rn.prototype.ac=function(){return Er(this,this.a.ra)},Rn.prototype.readPackedEnum=Rn.prototype.ac,Rn.prototype.uc=function(){return Er(this,this.a.ia)},Rn.prototype.readPackedVarintHash64=Rn.prototype.uc,Rn.prototype.ec=function(){return Er(this,this.a.$)},Rn.prototype.readPackedFixedHash64=Rn.prototype.ec,pt("jspb.ExtensionFieldInfo",ho,void 0),pt("jspb.ExtensionFieldBinaryInfo",Ro,void 0),ho.prototype.F=function(){return!!this.la},ho.prototype.isMessageType=ho.prototype.F,pt("jspb.Message",rr,void 0),rr.GENERATE_TO_OBJECT=!0,rr.GENERATE_FROM_OBJECT=!0;var wo=typeof Uint8Array=="function";rr.prototype.Ib=function(){return this.b},rr.prototype.getJsPbMessageId=rr.prototype.Ib,rr.initialize=function(ct,Qt,vt,Pt,en,Bn){if(ct.f=null,Qt||(Qt=vt?[vt]:[]),ct.b=vt?String(vt):void 0,ct.D=vt===0?-1:0,ct.u=Qt,Qt=-1,!(vt=ct.u.length)||(Qt=vt-1,(vt=ct.u[Qt])===null||typeof vt!="object"||Array.isArray(vt)||wo&&vt instanceof Uint8Array)?-1Qt.length?vt.length:Qt.length;for(ct.b&&(Pt[0]=ct.b,en=1);en>>16;for(Qt=vt*Pt+65536*(vt*en&65535)+65536*((ct>>>=16)*Pt&65535),vt=ct*en+(vt*en>>>16)+(ct*Pt>>>16);4294967296<=Qt;)Qt-=4294967296,vt+=1;return new cr(Qt>>>0,vt>>>0)}function Qo(ct){for(var Qt=new cr(0,0),vt=new cr(0,0),Pt=0;Ptct[Pt]||"9">>=7,ct.b++;Qt.push(vt),ct.b++}function zt(ct,Qt,vt){ft(1<=Qt&&Qt==Math.floor(Qt)),ct.a.j(8*Qt+vt)}function Qn(ct,Qt,vt){vt!=null&&(zt(ct,Qt,0),ct.a.j(vt))}function Tn(ct,Qt,vt){vt!=null&&(zt(ct,Qt,0),ct.a.M(vt))}pt("jspb.debug.dump",eo.dump,void 0),eo.X=function(ct){var Qt=Rt(ct);if(Qt=="number"||Qt=="string"||Qt=="boolean"||Qt=="null"||Qt=="undefined"||typeof Uint8Array<"u"&&ct instanceof Uint8Array)return ct;if(Qt=="array")return function(Sr,Yr,Mr){for(var hr=[],Br=2;Brct),ft(0<=Qt&&4294967296>Qt);0>>7|Qt<<25)>>>0,Qt>>>=7;this.a.push(ct)},nr.prototype.writeSplitVarint64=nr.prototype.l,nr.prototype.A=function(ct,Qt){ft(ct==Math.floor(ct)),ft(Qt==Math.floor(Qt)),ft(0<=ct&&4294967296>ct),ft(0<=Qt&&4294967296>Qt),this.s(ct),this.s(Qt)},nr.prototype.writeSplitFixed64=nr.prototype.A,nr.prototype.j=function(ct){for(ft(ct==Math.floor(ct)),ft(0<=ct&&4294967296>ct);127>>=7;this.a.push(ct)},nr.prototype.writeUnsignedVarint32=nr.prototype.j,nr.prototype.M=function(ct){if(ft(ct==Math.floor(ct)),ft(-2147483648<=ct&&2147483648>ct),0<=ct)this.j(ct);else{for(var Qt=0;9>Qt;Qt++)this.a.push(127&ct|128),ct>>=7;this.a.push(1)}},nr.prototype.writeSignedVarint32=nr.prototype.M,nr.prototype.va=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&18446744073709552e3>ct),on(ct),this.l(Lt,tn)},nr.prototype.writeUnsignedVarint64=nr.prototype.va,nr.prototype.ua=function(ct){ft(ct==Math.floor(ct)),ft(-9223372036854776e3<=ct&&9223372036854776e3>ct),on(ct),this.l(Lt,tn)},nr.prototype.writeSignedVarint64=nr.prototype.ua,nr.prototype.wa=function(ct){ft(ct==Math.floor(ct)),ft(-2147483648<=ct&&2147483648>ct),this.j((ct<<1^ct>>31)>>>0)},nr.prototype.writeZigzagVarint32=nr.prototype.wa,nr.prototype.xa=function(ct){ft(ct==Math.floor(ct)),ft(-9223372036854776e3<=ct&&9223372036854776e3>ct),Gt(ct),this.l(Lt,tn)},nr.prototype.writeZigzagVarint64=nr.prototype.xa,nr.prototype.Ta=function(ct){this.W(pn(ct))},nr.prototype.writeZigzagVarint64String=nr.prototype.Ta,nr.prototype.W=function(ct){var Qt=this;Vn(ct),Un(Lt,tn,function(vt,Pt){Qt.l(vt>>>0,Pt>>>0)})},nr.prototype.writeZigzagVarintHash64=nr.prototype.W,nr.prototype.be=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&256>ct),this.a.push(ct>>>0&255)},nr.prototype.writeUint8=nr.prototype.be,nr.prototype.ae=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&65536>ct),this.a.push(ct>>>0&255),this.a.push(ct>>>8&255)},nr.prototype.writeUint16=nr.prototype.ae,nr.prototype.s=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&4294967296>ct),this.a.push(ct>>>0&255),this.a.push(ct>>>8&255),this.a.push(ct>>>16&255),this.a.push(ct>>>24&255)},nr.prototype.writeUint32=nr.prototype.s,nr.prototype.V=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&18446744073709552e3>ct),cn(ct),this.s(Lt),this.s(tn)},nr.prototype.writeUint64=nr.prototype.V,nr.prototype.Qc=function(ct){ft(ct==Math.floor(ct)),ft(-128<=ct&&128>ct),this.a.push(ct>>>0&255)},nr.prototype.writeInt8=nr.prototype.Qc,nr.prototype.Pc=function(ct){ft(ct==Math.floor(ct)),ft(-32768<=ct&&32768>ct),this.a.push(ct>>>0&255),this.a.push(ct>>>8&255)},nr.prototype.writeInt16=nr.prototype.Pc,nr.prototype.S=function(ct){ft(ct==Math.floor(ct)),ft(-2147483648<=ct&&2147483648>ct),this.a.push(ct>>>0&255),this.a.push(ct>>>8&255),this.a.push(ct>>>16&255),this.a.push(ct>>>24&255)},nr.prototype.writeInt32=nr.prototype.S,nr.prototype.T=function(ct){ft(ct==Math.floor(ct)),ft(-9223372036854776e3<=ct&&9223372036854776e3>ct),on(ct),this.A(Lt,tn)},nr.prototype.writeInt64=nr.prototype.T,nr.prototype.ka=function(ct){ft(ct==Math.floor(ct)),ft(-9223372036854776e3<=+ct&&9223372036854776e3>+ct),Vn(pn(ct)),this.A(Lt,tn)},nr.prototype.writeInt64String=nr.prototype.ka,nr.prototype.L=function(ct){ft(ct===1/0||ct===-1/0||isNaN(ct)||-34028234663852886e22<=ct&&34028234663852886e22>=ct),Xt(ct),this.s(Lt)},nr.prototype.writeFloat=nr.prototype.L,nr.prototype.J=function(ct){ft(ct===1/0||ct===-1/0||isNaN(ct)||-17976931348623157e292<=ct&&17976931348623157e292>=ct),dn(ct),this.s(Lt),this.s(tn)},nr.prototype.writeDouble=nr.prototype.J,nr.prototype.I=function(ct){ft(typeof ct=="boolean"||typeof ct=="number"),this.a.push(ct?1:0)},nr.prototype.writeBool=nr.prototype.I,nr.prototype.R=function(ct){ft(ct==Math.floor(ct)),ft(-2147483648<=ct&&2147483648>ct),this.M(ct)},nr.prototype.writeEnum=nr.prototype.R,nr.prototype.ja=function(ct){this.a.push.apply(this.a,ct)},nr.prototype.writeBytes=nr.prototype.ja,nr.prototype.N=function(ct){Vn(ct),this.l(Lt,tn)},nr.prototype.writeVarintHash64=nr.prototype.N,nr.prototype.K=function(ct){Vn(ct),this.s(Lt),this.s(tn)},nr.prototype.writeFixedHash64=nr.prototype.K,nr.prototype.U=function(ct){var Qt=this.a.length;(function(Bn,jn,$n){for(var ur=[],Rr=2;RrPt)this.a.push(Pt);else if(2048>Pt)this.a.push(Pt>>6|192),this.a.push(63&Pt|128);else if(65536>Pt)if(55296<=Pt&&56319>=Pt&&vt+1=en&&(Pt=1024*(Pt-55296)+en-56320+65536,this.a.push(Pt>>18|240),this.a.push(Pt>>12&63|128),this.a.push(Pt>>6&63|128),this.a.push(63&Pt|128),vt++)}else this.a.push(Pt>>12|224),this.a.push(Pt>>6&63|128),this.a.push(63&Pt|128)}return this.a.length-Qt},nr.prototype.writeString=nr.prototype.U,pt("jspb.arith.UInt64",cr,void 0),cr.prototype.cmp=function(ct){return this.hi>>1|(1&this.hi)<<31)>>>0,this.hi>>>1>>>0)},cr.prototype.rightShift=cr.prototype.La,cr.prototype.Da=function(){return new cr(this.lo<<1>>>0,(this.hi<<1|this.lo>>>31)>>>0)},cr.prototype.leftShift=cr.prototype.Da,cr.prototype.cb=function(){return!!(2147483648&this.hi)},cr.prototype.msb=cr.prototype.cb,cr.prototype.Ob=function(){return!!(1&this.lo)},cr.prototype.lsb=cr.prototype.Ob,cr.prototype.Ua=function(){return this.lo==0&&this.hi==0},cr.prototype.zero=cr.prototype.Ua,cr.prototype.add=function(ct){return new cr((this.lo+ct.lo&4294967295)>>>0>>>0,((this.hi+ct.hi&4294967295)>>>0)+(4294967296<=this.lo+ct.lo?1:0)>>>0)},cr.prototype.add=cr.prototype.add,cr.prototype.sub=function(ct){return new cr((this.lo-ct.lo&4294967295)>>>0>>>0,((this.hi-ct.hi&4294967295)>>>0)-(0>this.lo-ct.lo?1:0)>>>0)},cr.prototype.sub=cr.prototype.sub,cr.mul32x32=mo,cr.prototype.eb=function(ct){var Qt=mo(this.lo,ct);return(ct=mo(this.hi,ct)).hi=ct.lo,ct.lo=0,Qt.add(ct)},cr.prototype.mul=cr.prototype.eb,cr.prototype.Xa=function(ct){if(ct==0)return[];var Qt=new cr(0,0),vt=new cr(this.lo,this.hi);ct=new cr(ct,0);for(var Pt=new cr(1,0);!ct.cb();)ct=ct.Da(),Pt=Pt.Da();for(;!Pt.Ua();)0>=ct.cmp(vt)&&(Qt=Qt.add(Pt),vt=vt.sub(ct)),ct=ct.La(),Pt=Pt.La();return[Qt,vt]},cr.prototype.div=cr.prototype.Xa,cr.prototype.toString=function(){for(var ct="",Qt=this;!Qt.Ua();){var vt=(Qt=Qt.Xa(10))[0];ct=Qt[1].lo+ct,Qt=vt}return ct==""&&(ct="0"),ct},cr.prototype.toString=cr.prototype.toString,cr.fromString=Qo,cr.prototype.clone=function(){return new cr(this.lo,this.hi)},cr.prototype.clone=cr.prototype.clone,pt("jspb.arith.Int64",Kr,void 0),Kr.prototype.add=function(ct){return new Kr((this.lo+ct.lo&4294967295)>>>0>>>0,((this.hi+ct.hi&4294967295)>>>0)+(4294967296<=this.lo+ct.lo?1:0)>>>0)},Kr.prototype.add=Kr.prototype.add,Kr.prototype.sub=function(ct){return new Kr((this.lo-ct.lo&4294967295)>>>0>>>0,((this.hi-ct.hi&4294967295)>>>0)-(0>this.lo-ct.lo?1:0)>>>0)},Kr.prototype.sub=Kr.prototype.sub,Kr.prototype.clone=function(){return new Kr(this.lo,this.hi)},Kr.prototype.clone=Kr.prototype.clone,Kr.prototype.toString=function(){var ct=(2147483648&this.hi)!=0,Qt=new cr(this.lo,this.hi);return ct&&(Qt=new cr(0,0).sub(Qt)),(ct?"-":"")+Qt.toString()},Kr.prototype.toString=Kr.prototype.toString,Kr.fromString=Dr,pt("jspb.BinaryWriter",gn,void 0),gn.prototype.pb=function(ct,Qt,vt){In(this,ct.subarray(Qt,vt))},gn.prototype.writeSerializedMessage=gn.prototype.pb,gn.prototype.Pb=function(ct,Qt,vt){ct!=null&&Qt!=null&&vt!=null&&this.pb(ct,Qt,vt)},gn.prototype.maybeWriteSerializedMessage=gn.prototype.Pb,gn.prototype.reset=function(){this.c=[],this.a.end(),this.b=0,this.h=[]},gn.prototype.reset=gn.prototype.reset,gn.prototype.ab=function(){ft(this.h.length==0);for(var ct=new Uint8Array(this.b+this.a.length()),Qt=this.c,vt=Qt.length,Pt=0,en=0;enQt),Tn(this,ct,Qt))},gn.prototype.writeInt32=gn.prototype.S,gn.prototype.ob=function(ct,Qt){Qt!=null&&(ft(-2147483648<=(Qt=parseInt(Qt,10))&&2147483648>Qt),Tn(this,ct,Qt))},gn.prototype.writeInt32String=gn.prototype.ob,gn.prototype.T=function(ct,Qt){Qt!=null&&(ft(-9223372036854776e3<=Qt&&9223372036854776e3>Qt),Qt!=null&&(zt(this,ct,0),this.a.ua(Qt)))},gn.prototype.writeInt64=gn.prototype.T,gn.prototype.ka=function(ct,Qt){Qt!=null&&(Qt=Dr(Qt),zt(this,ct,0),this.a.l(Qt.lo,Qt.hi))},gn.prototype.writeInt64String=gn.prototype.ka,gn.prototype.s=function(ct,Qt){Qt!=null&&(ft(0<=Qt&&4294967296>Qt),Qn(this,ct,Qt))},gn.prototype.writeUint32=gn.prototype.s,gn.prototype.ub=function(ct,Qt){Qt!=null&&(ft(0<=(Qt=parseInt(Qt,10))&&4294967296>Qt),Qn(this,ct,Qt))},gn.prototype.writeUint32String=gn.prototype.ub,gn.prototype.V=function(ct,Qt){Qt!=null&&(ft(0<=Qt&&18446744073709552e3>Qt),Qt!=null&&(zt(this,ct,0),this.a.va(Qt)))},gn.prototype.writeUint64=gn.prototype.V,gn.prototype.vb=function(ct,Qt){Qt!=null&&(Qt=Qo(Qt),zt(this,ct,0),this.a.l(Qt.lo,Qt.hi))},gn.prototype.writeUint64String=gn.prototype.vb,gn.prototype.rb=function(ct,Qt){Qt!=null&&(ft(-2147483648<=Qt&&2147483648>Qt),Qt!=null&&(zt(this,ct,0),this.a.wa(Qt)))},gn.prototype.writeSint32=gn.prototype.rb,gn.prototype.sb=function(ct,Qt){Qt!=null&&(ft(-9223372036854776e3<=Qt&&9223372036854776e3>Qt),Qt!=null&&(zt(this,ct,0),this.a.xa(Qt)))},gn.prototype.writeSint64=gn.prototype.sb,gn.prototype.$d=function(ct,Qt){Qt!=null&&Qt!=null&&(zt(this,ct,0),this.a.W(Qt))},gn.prototype.writeSintHash64=gn.prototype.$d,gn.prototype.Zd=function(ct,Qt){Qt!=null&&Qt!=null&&(zt(this,ct,0),this.a.Ta(Qt))},gn.prototype.writeSint64String=gn.prototype.Zd,gn.prototype.Pa=function(ct,Qt){Qt!=null&&(ft(0<=Qt&&4294967296>Qt),zt(this,ct,5),this.a.s(Qt))},gn.prototype.writeFixed32=gn.prototype.Pa,gn.prototype.Qa=function(ct,Qt){Qt!=null&&(ft(0<=Qt&&18446744073709552e3>Qt),zt(this,ct,1),this.a.V(Qt))},gn.prototype.writeFixed64=gn.prototype.Qa,gn.prototype.nb=function(ct,Qt){Qt!=null&&(Qt=Qo(Qt),zt(this,ct,1),this.a.A(Qt.lo,Qt.hi))},gn.prototype.writeFixed64String=gn.prototype.nb,gn.prototype.Ra=function(ct,Qt){Qt!=null&&(ft(-2147483648<=Qt&&2147483648>Qt),zt(this,ct,5),this.a.S(Qt))},gn.prototype.writeSfixed32=gn.prototype.Ra,gn.prototype.Sa=function(ct,Qt){Qt!=null&&(ft(-9223372036854776e3<=Qt&&9223372036854776e3>Qt),zt(this,ct,1),this.a.T(Qt))},gn.prototype.writeSfixed64=gn.prototype.Sa,gn.prototype.qb=function(ct,Qt){Qt!=null&&(Qt=Dr(Qt),zt(this,ct,1),this.a.A(Qt.lo,Qt.hi))},gn.prototype.writeSfixed64String=gn.prototype.qb,gn.prototype.L=function(ct,Qt){Qt!=null&&(zt(this,ct,5),this.a.L(Qt))},gn.prototype.writeFloat=gn.prototype.L,gn.prototype.J=function(ct,Qt){Qt!=null&&(zt(this,ct,1),this.a.J(Qt))},gn.prototype.writeDouble=gn.prototype.J,gn.prototype.I=function(ct,Qt){Qt!=null&&(ft(typeof Qt=="boolean"||typeof Qt=="number"),zt(this,ct,0),this.a.I(Qt))},gn.prototype.writeBool=gn.prototype.I,gn.prototype.R=function(ct,Qt){Qt!=null&&(ft(-2147483648<=Qt&&2147483648>Qt),zt(this,ct,0),this.a.M(Qt))},gn.prototype.writeEnum=gn.prototype.R,gn.prototype.U=function(ct,Qt){Qt!=null&&(ct=Zt(this,ct),this.a.U(Qt),xt(this,ct))},gn.prototype.writeString=gn.prototype.U,gn.prototype.ja=function(ct,Qt){Qt!=null&&(Qt=Gn(Qt),zt(this,ct,2),this.a.j(Qt.length),In(this,Qt))},gn.prototype.writeBytes=gn.prototype.ja,gn.prototype.Rc=function(ct,Qt,vt){Qt!=null&&(ct=Zt(this,ct),vt(Qt,this),xt(this,ct))},gn.prototype.writeMessage=gn.prototype.Rc,gn.prototype.Sc=function(ct,Qt,vt){Qt!=null&&(zt(this,1,3),zt(this,2,0),this.a.M(ct),ct=Zt(this,3),vt(Qt,this),xt(this,ct),zt(this,1,4))},gn.prototype.writeMessageSet=gn.prototype.Sc,gn.prototype.Oc=function(ct,Qt,vt){Qt!=null&&(zt(this,ct,3),vt(Qt,this),zt(this,ct,4))},gn.prototype.writeGroup=gn.prototype.Oc,gn.prototype.K=function(ct,Qt){Qt!=null&&(ft(Qt.length==8),zt(this,ct,1),this.a.K(Qt))},gn.prototype.writeFixedHash64=gn.prototype.K,gn.prototype.N=function(ct,Qt){Qt!=null&&(ft(Qt.length==8),zt(this,ct,0),this.a.N(Qt))},gn.prototype.writeVarintHash64=gn.prototype.N,gn.prototype.A=function(ct,Qt,vt){zt(this,ct,1),this.a.A(Qt,vt)},gn.prototype.writeSplitFixed64=gn.prototype.A,gn.prototype.l=function(ct,Qt,vt){zt(this,ct,0),this.a.l(Qt,vt)},gn.prototype.writeSplitVarint64=gn.prototype.l,gn.prototype.tb=function(ct,Qt,vt){zt(this,ct,0);var Pt=this.a;Un(Qt,vt,function(en,Bn){Pt.l(en>>>0,Bn>>>0)})},gn.prototype.writeSplitZigzagVarint64=gn.prototype.tb,gn.prototype.Ed=function(ct,Qt){if(Qt!=null)for(var vt=0;vt>>0,$n>>>0)});xt(this,ct)}},gn.prototype.writePackedSplitZigzagVarint64=gn.prototype.od,gn.prototype.dd=function(ct,Qt){if(Qt!=null&&Qt.length){ct=Zt(this,ct);for(var vt=0;vt{var rt=nt(7186),lt=rt,ut=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||ut!==void 0&&ut||typeof self<"u"&&self||function(){return this}.call(null)||Function("return this")();lt.exportSymbol("proto.google.protobuf.BoolValue",null,ut),lt.exportSymbol("proto.google.protobuf.BytesValue",null,ut),lt.exportSymbol("proto.google.protobuf.DoubleValue",null,ut),lt.exportSymbol("proto.google.protobuf.FloatValue",null,ut),lt.exportSymbol("proto.google.protobuf.Int32Value",null,ut),lt.exportSymbol("proto.google.protobuf.Int64Value",null,ut),lt.exportSymbol("proto.google.protobuf.StringValue",null,ut),lt.exportSymbol("proto.google.protobuf.UInt32Value",null,ut),lt.exportSymbol("proto.google.protobuf.UInt64Value",null,ut),proto.google.protobuf.DoubleValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.DoubleValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.DoubleValue.displayName="proto.google.protobuf.DoubleValue"),proto.google.protobuf.FloatValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.FloatValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.FloatValue.displayName="proto.google.protobuf.FloatValue"),proto.google.protobuf.Int64Value=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.Int64Value,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.Int64Value.displayName="proto.google.protobuf.Int64Value"),proto.google.protobuf.UInt64Value=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.UInt64Value,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.UInt64Value.displayName="proto.google.protobuf.UInt64Value"),proto.google.protobuf.Int32Value=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.Int32Value,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.Int32Value.displayName="proto.google.protobuf.Int32Value"),proto.google.protobuf.UInt32Value=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.UInt32Value,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.UInt32Value.displayName="proto.google.protobuf.UInt32Value"),proto.google.protobuf.BoolValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.BoolValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.BoolValue.displayName="proto.google.protobuf.BoolValue"),proto.google.protobuf.StringValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.StringValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.StringValue.displayName="proto.google.protobuf.StringValue"),proto.google.protobuf.BytesValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.BytesValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.BytesValue.displayName="proto.google.protobuf.BytesValue"),rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.DoubleValue.prototype.toObject=function(Ut){return proto.google.protobuf.DoubleValue.toObject(Ut,this)},proto.google.protobuf.DoubleValue.toObject=function(Ut,ot){var st={value:rt.Message.getFloatingPointFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.DoubleValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.DoubleValue;return proto.google.protobuf.DoubleValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.DoubleValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readDouble();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.DoubleValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.DoubleValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.DoubleValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeDouble(1,st)},proto.google.protobuf.DoubleValue.prototype.getValue=function(){return rt.Message.getFloatingPointFieldWithDefault(this,1,0)},proto.google.protobuf.DoubleValue.prototype.setValue=function(Ut){return rt.Message.setProto3FloatField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.FloatValue.prototype.toObject=function(Ut){return proto.google.protobuf.FloatValue.toObject(Ut,this)},proto.google.protobuf.FloatValue.toObject=function(Ut,ot){var st={value:rt.Message.getFloatingPointFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.FloatValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.FloatValue;return proto.google.protobuf.FloatValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.FloatValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readFloat();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.FloatValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.FloatValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.FloatValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeFloat(1,st)},proto.google.protobuf.FloatValue.prototype.getValue=function(){return rt.Message.getFloatingPointFieldWithDefault(this,1,0)},proto.google.protobuf.FloatValue.prototype.setValue=function(Ut){return rt.Message.setProto3FloatField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.Int64Value.prototype.toObject=function(Ut){return proto.google.protobuf.Int64Value.toObject(Ut,this)},proto.google.protobuf.Int64Value.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.Int64Value.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.Int64Value;return proto.google.protobuf.Int64Value.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.Int64Value.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readInt64();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.Int64Value.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.Int64Value.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.Int64Value.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeInt64(1,st)},proto.google.protobuf.Int64Value.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.Int64Value.prototype.setValue=function(Ut){return rt.Message.setProto3IntField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.UInt64Value.prototype.toObject=function(Ut){return proto.google.protobuf.UInt64Value.toObject(Ut,this)},proto.google.protobuf.UInt64Value.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.UInt64Value.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.UInt64Value;return proto.google.protobuf.UInt64Value.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.UInt64Value.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readUint64();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.UInt64Value.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.UInt64Value.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.UInt64Value.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeUint64(1,st)},proto.google.protobuf.UInt64Value.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.UInt64Value.prototype.setValue=function(Ut){return rt.Message.setProto3IntField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.Int32Value.prototype.toObject=function(Ut){return proto.google.protobuf.Int32Value.toObject(Ut,this)},proto.google.protobuf.Int32Value.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.Int32Value.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.Int32Value;return proto.google.protobuf.Int32Value.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.Int32Value.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readInt32();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.Int32Value.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.Int32Value.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.Int32Value.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeInt32(1,st)},proto.google.protobuf.Int32Value.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.Int32Value.prototype.setValue=function(Ut){return rt.Message.setProto3IntField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.UInt32Value.prototype.toObject=function(Ut){return proto.google.protobuf.UInt32Value.toObject(Ut,this)},proto.google.protobuf.UInt32Value.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.UInt32Value.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.UInt32Value;return proto.google.protobuf.UInt32Value.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.UInt32Value.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readUint32();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.UInt32Value.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.UInt32Value.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.UInt32Value.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeUint32(1,st)},proto.google.protobuf.UInt32Value.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.UInt32Value.prototype.setValue=function(Ut){return rt.Message.setProto3IntField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.BoolValue.prototype.toObject=function(Ut){return proto.google.protobuf.BoolValue.toObject(Ut,this)},proto.google.protobuf.BoolValue.toObject=function(Ut,ot){var st={value:rt.Message.getBooleanFieldWithDefault(ot,1,!1)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.BoolValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.BoolValue;return proto.google.protobuf.BoolValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.BoolValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readBool();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.BoolValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.BoolValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.BoolValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())&&ot.writeBool(1,st)},proto.google.protobuf.BoolValue.prototype.getValue=function(){return rt.Message.getBooleanFieldWithDefault(this,1,!1)},proto.google.protobuf.BoolValue.prototype.setValue=function(Ut){return rt.Message.setProto3BooleanField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.StringValue.prototype.toObject=function(Ut){return proto.google.protobuf.StringValue.toObject(Ut,this)},proto.google.protobuf.StringValue.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,"")};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.StringValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.StringValue;return proto.google.protobuf.StringValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.StringValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readString();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.StringValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.StringValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.StringValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue()).length>0&&ot.writeString(1,st)},proto.google.protobuf.StringValue.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.StringValue.prototype.setValue=function(Ut){return rt.Message.setProto3StringField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.BytesValue.prototype.toObject=function(Ut){return proto.google.protobuf.BytesValue.toObject(Ut,this)},proto.google.protobuf.BytesValue.toObject=function(Ut,ot){var st={value:ot.getValue_asB64()};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.BytesValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.BytesValue;return proto.google.protobuf.BytesValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.BytesValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readBytes();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.BytesValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.BytesValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.BytesValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue_asU8()).length>0&&ot.writeBytes(1,st)},proto.google.protobuf.BytesValue.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.BytesValue.prototype.getValue_asB64=function(){return rt.Message.bytesAsB64(this.getValue())},proto.google.protobuf.BytesValue.prototype.getValue_asU8=function(){return rt.Message.bytesAsU8(this.getValue())},proto.google.protobuf.BytesValue.prototype.setValue=function(Ut){return rt.Message.setProto3BytesField(this,1,Ut)},lt.object.extend(tt,proto.google.protobuf)},9336:(et,tt,nt)=>{var rt=nt(528)("%Object.getOwnPropertyDescriptor%",!0);if(rt)try{rt([],"length")}catch{rt=null}et.exports=rt},5949:function(et,tt,nt){var rt;function lt(Dt){var rn=0;return function(){return rn(Sn=Sn||0)&&(Sn=Math.max(Sn+An,0));Snrn?1:0}e:{var Yn=yt.navigator;if(Yn){var _t=Yn.userAgent;if(_t){Un=_t;break e}}Un=""}var Ot="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function jt(Dt){var rn=1;Dt=Dt.split(":");for(var Sn=[];0parseFloat(Rn)){En=String(zr);break e}}En=Rn}var ho={};function Ro(){return function(Dt){var rn=ho;return Object.prototype.hasOwnProperty.call(rn,9)?rn[9]:rn[9]=Dt(9)}(function(){for(var Dt=0,rn=_n(String(En)).split("."),Sn=_n("9").split("."),kn=Math.max(rn.length,Sn.length),An=0;Dt==0&&An>>0);function nr(Dt){return typeof Dt=="function"?Dt:(Dt[eo]||(Dt[eo]=function(rn){return Dt.handleEvent(rn)}),Dt[eo])}function cr(){rr.call(this),this.f=new bo(this),this.U=this}function mo(Dt,rn){Dt=Dt.U;var Sn=rn.type||rn;if(typeof rn=="string")rn=new oo(rn,Dt);else if(rn instanceof oo)rn.target=rn.target||Dt;else{var kn=rn;(function(An,Ln){for(var Dn,zn,Hn=1;Hn=(Dt?en(jn($n(),Dt.getName())):zt).value),kn&&(rn=rn||zt,kn=jn($n(),Dt.getName()),typeof Sn=="function"&&(Sn=Sn()),In||(In=new Qt),function(An,Ln){for(;An;)An.f.forEach(function(Dn){Dn(Ln)}),An=An.b}(kn,Dt=new vt(rn,Sn,Dt=Dt.getName())))}function Rr(Dt,rn){Dt&&ur(Dt,ct,rn)}function Sr(){}function Yr(Dt){var rn;return(rn=Dt.a)||(rn={},Br(Dt)&&(rn[0]=!0,rn[1]=!0),rn=Dt.a=rn),rn}function Mr(){}function hr(Dt){return(Dt=Br(Dt))?new ActiveXObject(Dt):new XMLHttpRequest}function Br(Dt){if(!Dt.b&&typeof XMLHttpRequest>"u"&&typeof ActiveXObject<"u"){for(var rn=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],Sn=0;Sn2*this.size&&is(this),!0)},rt.get=function(Dt,rn){return Us(this.o,Dt)?this.o[Dt]:rn},rt.set=function(Dt,rn){Us(this.o,Dt)||(this.size+=1,this.j.push(Dt),this.B++),this.o[Dt]=rn},rt.addAll=function(Dt){if(Dt instanceof Rs)for(var rn=Dt.G(),Sn=0;Sn=kn.j.length)throw Gr;var Ln=kn.j[rn++];return Dt?Ln:kn.o[Ln]},An.next=An.a.bind(An),An};var Ol=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^\\/?#]*)@)?([^\\/?#]*?)(?::([0-9]+))?(?=[\\/?#]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/;function Os(Dt){cr.call(this),this.headers=new Rs,this.C=Dt||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=Fl,this.I=this.M=!1}bt(Os,cr);var Fl="";Os.prototype.b=jn($n(),"goog.net.XhrIo",void 0).g;var Al=/^https?$/i,Il=["POST","PUT"];function Ll(Dt,rn,Sn){if(Dt.a)throw Error("[goog.net.XhrIo] Object is active with another request="+Dt.v+"; newUri="+rn);Dt.v=rn,Dt.l="",Dt.g=0,Dt.P="POST",Dt.L=!1,Dt.c=!0,Dt.a=Dt.C?hr(Dt.C):hr(xt),Dt.J=Dt.C?Yr(Dt.C):Yr(xt),Dt.a.onreadystatechange=kt(Dt.R,Dt);try{Rr(Dt.b,$a(Dt,"Opening Xhr")),Dt.N=!0,Dt.a.open("POST",String(rn),!0),Dt.N=!1}catch(Ln){return Rr(Dt.b,$a(Dt,"Error opening Xhr: "+Ln.message)),void Pl(Dt,Ln)}rn=Sn||"";var kn=(Sn=Dt.headers.clone()).G().find(function(Ln){return Ln.toLowerCase()=="content-type"}),An=yt.FormData&&rn instanceof yt.FormData;!(0<=Jn(Il,"POST"))||kn||An||Sn.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8"),Sn.forEach(function(Ln,Dn){this.a.setRequestHeader(Dn,Ln)},Dt),Dt.m&&(Dt.a.responseType=Dt.m),"withCredentials"in Dt.a&&Dt.a.withCredentials!==Dt.M&&(Dt.a.withCredentials=Dt.M);try{Gl(Dt),0>4),Tr!=64&&(Dn(sr<<4&240|Tr>>2),kr!=64&&Dn(Tr<<6&192|kr))}}(Dt,function(Ln){kn[An++]=Ln}),kn.subarray(0,An)}function Hl(){if(!cs){cs={};for(var Dt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),rn=["+/=","+/","-_=","-_.","-_"],Sn=0;5>Sn;Sn++){var kn=Dt.concat(rn[Sn].split(""));Xl[Sn]=kn;for(var An=0;An(zn=An.indexOf("#"))&&(zn=An.length),0>(Dn=An.indexOf("?"))||Dn>zn?(Dn=zn,Hn=""):Hn=An.substring(Dn+1,zn),zn=(An=[An.substr(0,Dn),Hn,An.substr(zn)])[1],An[1]=sr?zn?zn+"&"+sr:sr:zn,An=An[0]+(An[1]?"?"+An[1]:"")+An[2])):An.a("$httpHeaders",zn))}for(kn=(rn=(0,kn.a)(rn.getRequestMessage())).length,sr=[0,0,0,0],zn=new Uint8Array(5+kn),Dn=3;0<=Dn;Dn--)sr[Dn]=kn%256,kn>>>=8;if(zn.set(new Uint8Array(sr),1),zn.set(rn,5),rn=zn,Dt.a=="text"){var Tr;for(Dt=rn,Tr===void 0&&(Tr=0),Hl(),Tr=Xl[Tr],rn=Array(Math.floor(Dt.length/3)),kn=Tr[64]||"",sr=zn=0;zn>2],or=Tr[(3&or)<<4|kr>>4],kr=Tr[(15&kr)<<2|Hn>>6],Hn=Tr[63&Hn],rn[sr++]=Dn+or+kr+Hn}switch(Dn=0,Hn=kn,Dt.length-zn){case 2:Hn=Tr[(15&(Dn=Dt[zn+1]))<<2]||kn;case 1:Dt=Dt[zn],rn[sr]=Tr[Dt>>2]+Tr[(3&Dt)<<4|Dn>>4]+Hn+kn}rn=rn.join("")}else Dt.a=="binary"&&(Sn.m="arraybuffer");return Ll(Sn,An,rn),Ln}function Kl(Dt,rn,Sn){var kn=!1,An=null,Ln=!1;Dt.on("data",function(Dn){kn=!0,An=Dn}),Dt.on("error",function(Dn){Dn.code==0||Ln||(Ln=!0,rn(Dn,null))}),Dt.on("status",function(Dn){Dn.code==0||Ln?Sn&&rn(null,null,Dn):(Ln=!0,rn({code:Dn.code,message:Dn.details,metadata:Dn.metadata},null))}),Sn&&Dt.on("metadata",function(Dn){rn(null,null,null,Dn)}),Dt.on("end",function(){Ln||(kn?Sn?rn(null,An,null,null,!0):rn(null,An):rn({code:2,message:"Incomplete response"})),Sn&&rn(null,null)})}function Bl(Dt,rn){var Sn=Dt;return rn.forEach(function(kn){var An=Sn;Sn=function(Ln){return kn.intercept(Ln,An)}}),Sn}Xo.prototype.on=function(Dt,rn){return Dt=="data"?this.b.push(rn):Dt=="status"?this.h.push(rn):Dt=="metadata"?this.g.push(rn):Dt=="end"?this.c.push(rn):Dt=="error"&&this.f.push(rn),this},Xo.prototype.removeListener=function(Dt,rn){return Dt=="data"?Ws(this.b,rn):Dt=="status"?Ws(this.h,rn):Dt=="metadata"?Ws(this.g,rn):Dt=="end"?Ws(this.c,rn):Dt=="error"&&Ws(this.f,rn),this},Xo.prototype.cancel=function(){this.l=!0,this.a.abort()},Xo.prototype.cancel=Xo.prototype.cancel,Xo.prototype.removeListener=Xo.prototype.removeListener,Xo.prototype.on=Xo.prototype.on,Jr.prototype.X=function(Dt,rn,Sn,kn,An){var Ln=this,Dn=Dt.substr(0,Dt.length-kn.name.length);return Kl(Dt=Bl(function(zn){return Ql(Ln,zn,Dn)},this.b).call(this,Mt(kn,rn,Sn)),An,!1),new sn(Dt)},Jr.prototype.S=function(Dt,rn,Sn,kn){var An=this,Ln=Dt.substr(0,Dt.length-kn.name.length);return Bl(function(Dn){return new Promise(function(zn,Hn){var or,sr,Tr;Kl(Ql(An,Dn,Ln),function(kr,jr,Lr,pr,co){kr?Hn(kr):co?Tr=jr:Lr?sr=Lr:pr?or=pr:(kr=Dn.getMethodDescriptor(),zn(new At(Tr,kr,jr=(jr=or)===void 0?{}:jr,sr===void 0?null:sr)))},!0)})},this.h).call(this,Mt(kn,rn,Sn)).then(function(Dn){return Dn.getResponseMessage()})},Jr.prototype.unaryCall=function(Dt,rn,Sn,kn){return this.S(Dt,rn,Sn,kn)},Jr.prototype.Y=function(Dt,rn,Sn,kn){var An=this,Ln=Dt.substr(0,Dt.length-kn.name.length);return Bl(function(Dn){return Ql(An,Dn,Ln)},this.b).call(this,Mt(kn,rn,Sn))},Jr.prototype.serverStreaming=Jr.prototype.Y,Jr.prototype.unaryCall=Jr.prototype.unaryCall,Jr.prototype.thenableCall=Jr.prototype.S,Jr.prototype.rpcCall=Jr.prototype.X,et.exports.CallOptions=Jt,et.exports.MethodDescriptor=Ct,et.exports.GrpcWebClientBase=Jr,et.exports.RpcError=nn,et.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},et.exports.MethodType={UNARY:"unary",SERVER_STREAMING:"server_streaming",BIDI_STREAMING:"bidi_streaming"},Kr=typeof globalThis<"u"&&globalThis||self},7239:(et,tt,nt)=>{var rt=nt(4940),lt=function(){return!!rt};lt.hasArrayLengthDefineBug=function(){if(!rt)return null;try{return rt([],"length",{value:1}).length!==1}catch{return!0}},et.exports=lt},6869:et=>{var tt={__proto__:null,foo:{}},nt=Object;et.exports=function(){return{__proto__:tt}.foo===tt.foo&&!(tt instanceof nt)}},3558:(et,tt,nt)=>{var rt=typeof Symbol<"u"&&Symbol,lt=nt(2908);et.exports=function(){return typeof rt=="function"&&typeof Symbol=="function"&&typeof rt("foo")=="symbol"&&typeof Symbol("bar")=="symbol"&<()}},2908:et=>{et.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var tt={},nt=Symbol("test"),rt=Object(nt);if(typeof nt=="string"||Object.prototype.toString.call(nt)!=="[object Symbol]"||Object.prototype.toString.call(rt)!=="[object Symbol]")return!1;for(nt in tt[nt]=42,tt)return!1;if(typeof Object.keys=="function"&&Object.keys(tt).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(tt).length!==0)return!1;var lt=Object.getOwnPropertySymbols(tt);if(lt.length!==1||lt[0]!==nt||!Object.prototype.propertyIsEnumerable.call(tt,nt))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var ut=Object.getOwnPropertyDescriptor(tt,nt);if(ut.value!==42||ut.enumerable!==!0)return!1}return!0}},1913:(et,tt,nt)=>{var rt=nt(2908);et.exports=function(){return rt()&&!!Symbol.toStringTag}},8554:(et,tt,nt)=>{var rt=Function.prototype.call,lt=Object.prototype.hasOwnProperty,ut=nt(9138);et.exports=ut.call(rt,lt)},7500:(et,tt,nt)=>{var rt=nt(4865),lt=nt(5442),ut=et.exports;for(var Ut in rt)rt.hasOwnProperty(Ut)&&(ut[Ut]=rt[Ut]);function ot(st){if(typeof st=="string"&&(st=lt.parse(st)),st.protocol||(st.protocol="https:"),st.protocol!=="https:")throw new Error('Protocol "'+st.protocol+'" not supported. Expected "https:"');return st}ut.request=function(st,dt){return st=ot(st),rt.request.call(this,st,dt)},ut.get=function(st,dt){return st=ot(st),rt.get.call(this,st,dt)}},9318:(et,tt)=>{tt.read=function(nt,rt,lt,ut,Ut){var ot,st,dt=8*Ut-ut-1,St=(1<>1,Rt=-7,Bt=lt?Ut-1:0,ht=lt?-1:1,mt=nt[rt+Bt];for(Bt+=ht,ot=mt&(1<<-Rt)-1,mt>>=-Rt,Rt+=dt;Rt>0;ot=256*ot+nt[rt+Bt],Bt+=ht,Rt-=8);for(st=ot&(1<<-Rt)-1,ot>>=-Rt,Rt+=ut;Rt>0;st=256*st+nt[rt+Bt],Bt+=ht,Rt-=8);if(ot===0)ot=1-pt;else{if(ot===St)return st?NaN:1/0*(mt?-1:1);st+=Math.pow(2,ut),ot-=pt}return(mt?-1:1)*st*Math.pow(2,ot-ut)},tt.write=function(nt,rt,lt,ut,Ut,ot){var st,dt,St,pt=8*ot-Ut-1,Rt=(1<>1,ht=Ut===23?Math.pow(2,-24)-Math.pow(2,-77):0,mt=ut?0:ot-1,gt=ut?1:-1,Vt=rt<0||rt===0&&1/rt<0?1:0;for(rt=Math.abs(rt),isNaN(rt)||rt===1/0?(dt=isNaN(rt)?1:0,st=Rt):(st=Math.floor(Math.log(rt)/Math.LN2),rt*(St=Math.pow(2,-st))<1&&(st--,St*=2),(rt+=st+Bt>=1?ht/St:ht*Math.pow(2,1-Bt))*St>=2&&(st++,St/=2),st+Bt>=Rt?(dt=0,st=Rt):st+Bt>=1?(dt=(rt*St-1)*Math.pow(2,Ut),st+=Bt):(dt=rt*Math.pow(2,Bt-1)*Math.pow(2,Ut),st=0));Ut>=8;nt[lt+mt]=255&dt,mt+=gt,dt/=256,Ut-=8);for(st=st<0;nt[lt+mt]=255&st,mt+=gt,st/=256,pt-=8);nt[lt+mt-gt]|=128*Vt}},5615:et=>{typeof Object.create=="function"?et.exports=function(tt,nt){nt&&(tt.super_=nt,tt.prototype=Object.create(nt.prototype,{constructor:{value:tt,enumerable:!1,writable:!0,configurable:!0}}))}:et.exports=function(tt,nt){if(nt){tt.super_=nt;var rt=function(){};rt.prototype=nt.prototype,tt.prototype=new rt,tt.prototype.constructor=tt}}},5387:(et,tt,nt)=>{var rt=nt(1913)(),lt=nt(9818)("Object.prototype.toString"),ut=function(st){return!(rt&&st&&typeof st=="object"&&Symbol.toStringTag in st)&<(st)==="[object Arguments]"},Ut=function(st){return!!ut(st)||st!==null&&typeof st=="object"&&typeof st.length=="number"&&st.length>=0&<(st)!=="[object Array]"&<(st.callee)==="[object Function]"},ot=function(){return ut(arguments)}();ut.isLegacyArguments=Ut,et.exports=ot?ut:Ut},9617:et=>{var tt,nt,rt=Function.prototype.toString,lt=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply;if(typeof lt=="function"&&typeof Object.defineProperty=="function")try{tt=Object.defineProperty({},"length",{get:function(){throw nt}}),nt={},lt(function(){throw 42},null,tt)}catch(Bt){Bt!==nt&&(lt=null)}else lt=null;var ut=/^\s*class\b/,Ut=function(Bt){try{var ht=rt.call(Bt);return ut.test(ht)}catch{return!1}},ot=function(Bt){try{return!Ut(Bt)&&(rt.call(Bt),!0)}catch{return!1}},st=Object.prototype.toString,dt=typeof Symbol=="function"&&!!Symbol.toStringTag,St=!(0 in[,]),pt=function(){return!1};if(typeof document=="object"){var Rt=document.all;st.call(Rt)===st.call(document.all)&&(pt=function(Bt){if((St||!Bt)&&(Bt===void 0||typeof Bt=="object"))try{var ht=st.call(Bt);return(ht==="[object HTMLAllCollection]"||ht==="[object HTML document.all class]"||ht==="[object HTMLCollection]"||ht==="[object Object]")&&Bt("")==null}catch{}return!1})}et.exports=lt?function(Bt){if(pt(Bt))return!0;if(!Bt||typeof Bt!="function"&&typeof Bt!="object")return!1;try{lt(Bt,null,tt)}catch(ht){if(ht!==nt)return!1}return!Ut(Bt)&&ot(Bt)}:function(Bt){if(pt(Bt))return!0;if(!Bt||typeof Bt!="function"&&typeof Bt!="object")return!1;if(dt)return ot(Bt);if(Ut(Bt))return!1;var ht=st.call(Bt);return!(ht!=="[object Function]"&&ht!=="[object GeneratorFunction]"&&!/^\[object HTML/.test(ht))&&ot(Bt)}},2625:(et,tt,nt)=>{var rt,lt=Object.prototype.toString,ut=Function.prototype.toString,Ut=/^\s*(?:function)?\*/,ot=nt(1913)(),st=Object.getPrototypeOf;et.exports=function(dt){if(typeof dt!="function")return!1;if(Ut.test(ut.call(dt)))return!0;if(!ot)return lt.call(dt)==="[object GeneratorFunction]";if(!st)return!1;if(rt===void 0){var St=function(){if(!ot)return!1;try{return Function("return function*() {}")()}catch{}}();rt=!!St&&st(St)}return st(dt)===rt}},8006:et=>{et.exports=function(tt){return tt!=tt}},7838:(et,tt,nt)=>{var rt=nt(8498),lt=nt(1857),ut=nt(8006),Ut=nt(1591),ot=nt(1641),st=rt(Ut(),Number);lt(st,{getPolyfill:Ut,implementation:ut,shim:ot}),et.exports=st},1591:(et,tt,nt)=>{var rt=nt(8006);et.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:rt}},1641:(et,tt,nt)=>{var rt=nt(1857),lt=nt(1591);et.exports=function(){var ut=lt();return rt(Number,{isNaN:ut},{isNaN:function(){return Number.isNaN!==ut}}),ut}},6605:et=>{const tt=nt=>nt!==null&&typeof nt=="object"&&typeof nt.pipe=="function";tt.writable=nt=>tt(nt)&&nt.writable!==!1&&typeof nt._write=="function"&&typeof nt._writableState=="object",tt.readable=nt=>tt(nt)&&nt.readable!==!1&&typeof nt._read=="function"&&typeof nt._readableState=="object",tt.duplex=nt=>tt.writable(nt)&&tt.readable(nt),tt.transform=nt=>tt.duplex(nt)&&typeof nt._transform=="function",et.exports=tt},5943:(et,tt,nt)=>{var rt=nt(2730);et.exports=function(lt){return!!rt(lt)}},8311:(et,tt,nt)=>{nt(3737),et.exports={encode:rt=>new TextEncoder().encode(rt),decode:rt=>new TextDecoder().decode(rt)}},8278:(et,tt,nt)=>{var rt=nt(1616);et.exports=rt(function(lt){return lt.message=" ".concat(lt.message),lt})},8911:(et,tt,nt)=>{var rt=tt.format=nt(1616);tt.levels=nt(3084),Object.defineProperty(rt,"align",{value:nt(8278)}),Object.defineProperty(rt,"cli",{value:nt(8877)}),Object.defineProperty(rt,"colorize",{value:nt(452)}),Object.defineProperty(rt,"combine",{value:nt(4450)}),Object.defineProperty(rt,"errors",{value:nt(2244)}),Object.defineProperty(rt,"json",{value:nt(9181)}),Object.defineProperty(rt,"label",{value:nt(4673)}),Object.defineProperty(rt,"logstash",{value:nt(372)}),Object.defineProperty(rt,"metadata",{value:nt(5350)}),Object.defineProperty(rt,"ms",{value:nt(4659)}),Object.defineProperty(rt,"padLevels",{value:nt(8071)}),Object.defineProperty(rt,"prettyPrint",{value:nt(9121)}),Object.defineProperty(rt,"printf",{value:nt(7016)}),Object.defineProperty(rt,"simple",{value:nt(205)}),Object.defineProperty(rt,"splat",{value:nt(2695)}),Object.defineProperty(rt,"timestamp",{value:nt(8215)}),Object.defineProperty(rt,"uncolorize",{value:nt(1083)})},8877:(et,tt,nt)=>{function rt(Bt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ht){return typeof ht}:function(ht){return ht&&typeof Symbol=="function"&&ht.constructor===Symbol&&ht!==Symbol.prototype?"symbol":typeof ht})(Bt)}function lt(Bt,ht){if(!(Bt instanceof ht))throw new TypeError("Cannot call a class as a function")}function ut(Bt,ht){for(var mt=0;mt0&&arguments[0]!==void 0?arguments[0]:{};lt(this,Bt),gt.levels||(gt.levels=St.cli.levels),this.colorizer=new ot(gt),this.padder=new st(gt),this.options=gt}var ht,mt;return ht=Bt,(mt=[{key:"transform",value:function(gt,Vt){return this.colorizer.transform(this.padder.transform(gt,Vt),Vt),gt[pt]="".concat(gt.level,":").concat(gt.message),gt}}])&&ut(ht.prototype,mt),Object.defineProperty(ht,"prototype",{writable:!1}),Bt}();et.exports=function(Bt){return new Rt(Bt)},et.exports.Format=Rt},452:(et,tt,nt)=>{function rt(Bt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ht){return typeof ht}:function(ht){return ht&&typeof Symbol=="function"&&ht.constructor===Symbol&&ht!==Symbol.prototype?"symbol":typeof ht})(Bt)}function lt(Bt,ht){if(!(Bt instanceof ht))throw new TypeError("Cannot call a class as a function")}function ut(Bt,ht){for(var mt=0;mt0&&arguments[0]!==void 0?arguments[0]:{};lt(this,Bt),Vt.colors&&this.addColors(Vt.colors),this.options=Vt}var ht,mt,gt;return ht=Bt,gt=[{key:"addColors",value:function(Vt){var Tt=Object.keys(Vt).reduce(function(ft,Wt){return ft[Wt]=pt.test(Vt[Wt])?Vt[Wt].split(pt):Vt[Wt],ft},{});return Bt.allColors=Object.assign({},Bt.allColors||{},Tt),Bt.allColors}}],(mt=[{key:"addColors",value:function(Vt){return Bt.addColors(Vt)}},{key:"colorize",value:function(Vt,Tt,ft){if(ft===void 0&&(ft=Tt),!Array.isArray(Bt.allColors[Vt]))return ot[Bt.allColors[Vt]](ft);for(var Wt=0,yt=Bt.allColors[Vt].length;Wt{var rt=nt(1616);function lt(Ut){if(Ut.every(ut))return function(ot){for(var st=ot,dt=0;dt{function rt(dt){return(rt=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})(dt)}function lt(dt,St,pt){var Rt;return Rt=function(Bt,ht){if(rt(Bt)!="object"||!Bt)return Bt;var mt=Bt[Symbol.toPrimitive];if(mt!==void 0){var gt=mt.call(Bt,ht||"default");if(rt(gt)!="object")return gt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(ht==="string"?String:Number)(Bt)}(St,"string"),(St=rt(Rt)=="symbol"?Rt:String(Rt))in dt?Object.defineProperty(dt,St,{value:pt,enumerable:!0,configurable:!0,writable:!0}):dt[St]=pt,dt}var ut=nt(1616),Ut=nt(4966),ot=Ut.LEVEL,st=Ut.MESSAGE;et.exports=ut(function(dt,St){var pt=St.stack,Rt=St.cause;if(dt instanceof Error){var Bt=Object.assign({},dt,lt(lt(lt({level:dt.level},ot,dt[ot]||dt.level),"message",dt.message),st,dt[st]||dt.message));return pt&&(Bt.stack=dt.stack),Rt&&(Bt.cause=dt.cause),Bt}if(!(dt.message instanceof Error))return dt;var ht=dt.message;return Object.assign(dt,ht),dt.message=ht.message,dt[st]=ht.message,pt&&(dt.stack=ht.stack),Rt&&(dt.cause=ht.cause),dt})},1616:et=>{function tt(St){return(tt=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})(St)}function nt(St,pt){if(pt&&(tt(pt)==="object"||typeof pt=="function"))return pt;if(pt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return rt(St)}function rt(St){if(St===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return St}function lt(St){var pt=typeof Map=="function"?new Map:void 0;return(lt=function(Rt){if(Rt===null||!function(ht){try{return Function.toString.call(ht).indexOf("[native code]")!==-1}catch{return typeof ht=="function"}}(Rt))return Rt;if(typeof Rt!="function")throw new TypeError("Super expression must either be null or a function");if(pt!==void 0){if(pt.has(Rt))return pt.get(Rt);pt.set(Rt,Bt)}function Bt(){return ut(Rt,arguments,st(this).constructor)}return Bt.prototype=Object.create(Rt.prototype,{constructor:{value:Bt,enumerable:!1,writable:!0,configurable:!0}}),ot(Bt,Rt)})(St)}function ut(St,pt,Rt){return(ut=Ut()?Reflect.construct.bind():function(Bt,ht,mt){var gt=[null];gt.push.apply(gt,ht);var Vt=new(Function.bind.apply(Bt,gt));return mt&&ot(Vt,mt.prototype),Vt}).apply(null,arguments)}function Ut(){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 ot(St,pt){return(ot=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Rt,Bt){return Rt.__proto__=Bt,Rt})(St,pt)}function st(St){return(st=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(pt){return pt.__proto__||Object.getPrototypeOf(pt)})(St)}var dt=function(St){(function(gt,Vt){if(typeof Vt!="function"&&Vt!==null)throw new TypeError("Super expression must either be null or a function");gt.prototype=Object.create(Vt&&Vt.prototype,{constructor:{value:gt,writable:!0,configurable:!0}}),Object.defineProperty(gt,"prototype",{writable:!1}),Vt&&ot(gt,Vt)})(mt,St);var pt,Rt,Bt,ht=(pt=mt,Rt=Ut(),function(){var gt,Vt=st(pt);if(Rt){var Tt=st(this).constructor;gt=Reflect.construct(Vt,arguments,Tt)}else gt=Vt.apply(this,arguments);return nt(this,gt)});function mt(gt){var Vt;return function(Tt,ft){if(!(Tt instanceof ft))throw new TypeError("Cannot call a class as a function")}(this,mt),Vt=ht.call(this,`Format functions must be synchronous taking a two arguments: (info, opts) +Found: `.concat(gt.toString().split(` +`)[0],` +`)),Error.captureStackTrace(rt(Vt),mt),Vt}return Bt=mt,Object.defineProperty(Bt,"prototype",{writable:!1}),Bt}(lt(Error));et.exports=function(St){if(St.length>2)throw new dt(St);function pt(){var Bt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.options=Bt}function Rt(Bt){return new pt(Bt)}return pt.prototype.transform=St,Rt.Format=pt,Rt}},9181:(et,tt,nt)=>{var rt=nt(1616),lt=nt(4966).MESSAGE,ut=nt(1145);function Ut(ot,st){return typeof st=="bigint"?st.toString():st}et.exports=rt(function(ot,st){var dt=ut.configure(st);return ot[lt]=dt(ot,st.replacer||Ut,st.space),ot})},4673:(et,tt,nt)=>{var rt=nt(1616);et.exports=rt(function(lt,ut){return ut.message?(lt.message="[".concat(ut.label,"] ").concat(lt.message),lt):(lt.label=ut.label,lt)})},3084:(et,tt,nt)=>{var rt=nt(452).Colorizer;et.exports=function(lt){return rt.addColors(lt.colors||lt),lt}},372:(et,tt,nt)=>{var rt=nt(1616),lt=nt(4966).MESSAGE,ut=nt(1145);et.exports=rt(function(Ut){var ot={};return Ut.message&&(ot["@message"]=Ut.message,delete Ut.message),Ut.timestamp&&(ot["@timestamp"]=Ut.timestamp,delete Ut.timestamp),ot["@fields"]=Ut,Ut[lt]=ut(ot),Ut})},5350:(et,tt,nt)=>{function rt(st){return(rt=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})(st)}function lt(st,dt,St){var pt;return pt=function(Rt,Bt){if(rt(Rt)!="object"||!Rt)return Rt;var ht=Rt[Symbol.toPrimitive];if(ht!==void 0){var mt=ht.call(Rt,Bt||"default");if(rt(mt)!="object")return mt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Bt==="string"?String:Number)(Rt)}(dt,"string"),(dt=rt(pt)=="symbol"?pt:String(pt))in st?Object.defineProperty(st,dt,{value:St,enumerable:!0,configurable:!0,writable:!0}):st[dt]=St,st}var ut=nt(1616);function Ut(st,dt,St){var pt=dt.reduce(function(Bt,ht){return Bt[ht]=st[ht],delete st[ht],Bt},{}),Rt=Object.keys(st).reduce(function(Bt,ht){return Bt[ht]=st[ht],delete st[ht],Bt},{});return Object.assign(st,pt,lt({},St,Rt)),st}function ot(st,dt,St){return st[St]=dt.reduce(function(pt,Rt){return pt[Rt]=st[Rt],delete st[Rt],pt},{}),st}et.exports=ut(function(st){var dt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},St="metadata";dt.key&&(St=dt.key);var pt=[];return dt.fillExcept||dt.fillWith||(pt.push("level"),pt.push("message")),dt.fillExcept&&(pt=dt.fillExcept),pt.length>0?Ut(st,pt,St):dt.fillWith?ot(st,dt.fillWith,St):st})},4659:(et,tt,nt)=>{var rt=nt(1616),lt=nt(7250);et.exports=rt(function(ut){var Ut=+new Date;return(void 0).diff=Ut-((void 0).prevTime||Ut),(void 0).prevTime=Ut,ut.ms="+".concat(lt((void 0).diff)),ut})},8071:(et,tt,nt)=>{function rt(ht){return(rt=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})(ht)}function lt(ht){return function(mt){if(Array.isArray(mt))return ut(mt)}(ht)||function(mt){if(typeof Symbol<"u"&&mt[Symbol.iterator]!=null||mt["@@iterator"]!=null)return Array.from(mt)}(ht)||function(mt,gt){if(mt){if(typeof mt=="string")return ut(mt,gt);var Vt=Object.prototype.toString.call(mt).slice(8,-1);if(Vt==="Object"&&mt.constructor&&(Vt=mt.constructor.name),Vt==="Map"||Vt==="Set")return Array.from(mt);if(Vt==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Vt))return ut(mt,gt)}}(ht)||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 ut(ht,mt){(mt==null||mt>ht.length)&&(mt=ht.length);for(var gt=0,Vt=new Array(mt);gt0&&arguments[0]!==void 0?arguments[0]:{levels:St.npm.levels};Ut(this,ht),this.paddings=ht.paddingForLevels(Tt.levels,Tt.filler),this.options=Tt}var mt,gt,Vt;return mt=ht,Vt=[{key:"getLongestLevel",value:function(Tt){var ft=Object.keys(Tt).map(function(Wt){return Wt.length});return Math.max.apply(Math,lt(ft))}},{key:"paddingForLevel",value:function(Tt,ft,Wt){var yt=Wt+1-Tt.length,Kt=Math.floor(yt/ft.length);return"".concat(ft).concat(ft.repeat(Kt)).slice(0,yt)}},{key:"paddingForLevels",value:function(Tt){var ft=arguments.length>1&&arguments[1]!==void 0?arguments[1]:" ",Wt=ht.getLongestLevel(Tt);return Object.keys(Tt).reduce(function(yt,Kt){return yt[Kt]=ht.paddingForLevel(Kt,ft,Wt),yt},{})}}],(gt=[{key:"transform",value:function(Tt,ft){return Tt.message="".concat(this.paddings[Tt[pt]]).concat(Tt.message),Tt[Rt]&&(Tt[Rt]="".concat(this.paddings[Tt[pt]]).concat(Tt[Rt])),Tt}}])&&ot(mt.prototype,gt),Vt&&ot(mt,Vt),Object.defineProperty(mt,"prototype",{writable:!1}),ht}();et.exports=function(ht){return new Bt(ht)},et.exports.Padder=et.exports.Format=Bt},9121:(et,tt,nt)=>{var rt=nt(9208).inspect,lt=nt(1616),ut=nt(4966),Ut=ut.LEVEL,ot=ut.MESSAGE,st=ut.SPLAT;et.exports=lt(function(dt){var St=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},pt=Object.assign({},dt);return delete pt[Ut],delete pt[ot],delete pt[st],dt[ot]=rt(pt,!1,St.depth||null,St.colorize),dt})},7016:(et,tt,nt)=>{function rt(st){return(rt=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})(st)}function lt(st,dt){for(var St=0;St{var rt=nt(1616),lt=nt(4966).MESSAGE,ut=nt(1145);et.exports=rt(function(Ut){var ot=ut(Object.assign({},Ut,{level:void 0,message:void 0,splat:void 0})),st=Ut.padding&&Ut.padding[Ut.level]||"";return Ut[lt]=ot!=="{}"?"".concat(Ut.level,":").concat(st," ").concat(Ut.message," ").concat(ot):"".concat(Ut.level,":").concat(st," ").concat(Ut.message),Ut})},2695:(et,tt,nt)=>{function rt(Bt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ht){return typeof ht}:function(ht){return ht&&typeof Symbol=="function"&&ht.constructor===Symbol&&ht!==Symbol.prototype?"symbol":typeof ht})(Bt)}function lt(Bt){return function(ht){if(Array.isArray(ht))return ut(ht)}(Bt)||function(ht){if(typeof Symbol<"u"&&ht[Symbol.iterator]!=null||ht["@@iterator"]!=null)return Array.from(ht)}(Bt)||function(ht,mt){if(ht){if(typeof ht=="string")return ut(ht,mt);var gt=Object.prototype.toString.call(ht).slice(8,-1);if(gt==="Object"&&ht.constructor&&(gt=ht.constructor.name),gt==="Map"||gt==="Set")return Array.from(ht);if(gt==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(gt))return ut(ht,mt)}}(Bt)||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 ut(Bt,ht){(ht==null||ht>Bt.length)&&(ht=Bt.length);for(var mt=0,gt=new Array(ht);mt1?Tt.splice(0):Tt,yt=Wt.length;if(yt)for(var Kt=0;Kt{var rt=nt(4798),lt=nt(1616);et.exports=lt(function(ut){var Ut=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Ut.format&&(ut.timestamp=typeof Ut.format=="function"?Ut.format():rt.format(new Date,Ut.format)),ut.timestamp||(ut.timestamp=new Date().toISOString()),Ut.alias&&(ut[Ut.alias]=ut.timestamp),ut})},1083:(et,tt,nt)=>{var rt=nt(1158),lt=nt(1616),ut=nt(4966).MESSAGE;et.exports=lt(function(Ut,ot){return ot.level!==!1&&(Ut.level=rt.strip(Ut.level)),ot.message!==!1&&(Ut.message=rt.strip(String(Ut.message))),ot.raw!==!1&&Ut[ut]&&(Ut[ut]=rt.strip(String(Ut[ut]))),Ut})},9327:et=>{class tt extends Error{constructor(rt){super(`Format functions must be synchronous taking a two arguments: (info, opts) +Found: ${rt.toString().split(` +`)[0]} +`),Error.captureStackTrace(this,tt)}}et.exports=nt=>{if(nt.length>2)throw new tt(nt);function rt(ut={}){this.options=ut}function lt(ut){return new rt(ut)}return rt.prototype.transform=nt,lt.Format=rt,lt}},2598:(et,tt,nt)=>{const rt=nt(9327),{MESSAGE:lt}=nt(4966),ut=nt(1145);function Ut(ot,st){return typeof st=="bigint"?st.toString():st}et.exports=rt((ot,st)=>{const dt=ut.configure(st);return ot[lt]=dt(ot,st.replacer||Ut,st.space),ot})},7250:et=>{var tt=1e3,nt=6e4,rt=60*nt,lt=24*rt;function ut(Ut,ot,st,dt){var St=ot>=1.5*st;return Math.round(Ut/st)+" "+dt+(St?"s":"")}et.exports=function(Ut,ot){ot=ot||{};var st=typeof Ut;if(st==="string"&&Ut.length>0)return function(dt){if(!((dt=String(dt)).length>100)){var St=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(dt);if(St){var pt=parseFloat(St[1]);switch((St[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*pt;case"weeks":case"week":case"w":return 6048e5*pt;case"days":case"day":case"d":return pt*lt;case"hours":case"hour":case"hrs":case"hr":case"h":return pt*rt;case"minutes":case"minute":case"mins":case"min":case"m":return pt*nt;case"seconds":case"second":case"secs":case"sec":case"s":return pt*tt;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return pt;default:return}}}}(Ut);if(st==="number"&&isFinite(Ut))return ot.long?function(dt){var St=Math.abs(dt);return St>=lt?ut(dt,St,lt,"day"):St>=rt?ut(dt,St,rt,"hour"):St>=nt?ut(dt,St,nt,"minute"):St>=tt?ut(dt,St,tt,"second"):dt+" ms"}(Ut):function(dt){var St=Math.abs(dt);return St>=lt?Math.round(dt/lt)+"d":St>=rt?Math.round(dt/rt)+"h":St>=nt?Math.round(dt/nt)+"m":St>=tt?Math.round(dt/tt)+"s":dt+"ms"}(Ut);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(Ut))}},8660:(et,tt,nt)=>{var rt=typeof Map=="function"&&Map.prototype,lt=Object.getOwnPropertyDescriptor&&rt?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,ut=rt&<&&typeof lt.get=="function"?lt.get:null,Ut=rt&&Map.prototype.forEach,ot=typeof Set=="function"&&Set.prototype,st=Object.getOwnPropertyDescriptor&&ot?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,dt=ot&&st&&typeof st.get=="function"?st.get:null,St=ot&&Set.prototype.forEach,pt=typeof WeakMap=="function"&&WeakMap.prototype?WeakMap.prototype.has:null,Rt=typeof WeakSet=="function"&&WeakSet.prototype?WeakSet.prototype.has:null,Bt=typeof WeakRef=="function"&&WeakRef.prototype?WeakRef.prototype.deref:null,ht=Boolean.prototype.valueOf,mt=Object.prototype.toString,gt=Function.prototype.toString,Vt=String.prototype.match,Tt=String.prototype.slice,ft=String.prototype.replace,Wt=String.prototype.toUpperCase,yt=String.prototype.toLowerCase,Kt=RegExp.prototype.test,$t=Array.prototype.concat,Ht=Array.prototype.join,Nt=Array.prototype.slice,qt=Math.floor,kt=typeof BigInt=="function"?BigInt.prototype.valueOf:null,bt=Object.getOwnPropertySymbols,Jt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,wt=typeof Symbol=="function"&&typeof Symbol.iterator=="object",At=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===wt||"symbol")?Symbol.toStringTag:null,Ct=Object.prototype.propertyIsEnumerable,Mt=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(Ot){return Ot.__proto__}:null);function nn(Ot,jt){if(Ot===1/0||Ot===-1/0||Ot!=Ot||Ot&&Ot>-1e3&&Ot<1e3||Kt.call(/e/,jt))return jt;var pn=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof Ot=="number"){var En=Ot<0?-qt(-Ot):qt(Ot);if(En!==Ot){var yn=String(En),Cn=Tt.call(jt,yn.length+1);return ft.call(yn,pn,"$&_")+"."+ft.call(ft.call(Cn,/([0-9]{3})/g,"$&_"),/_$/,"")}}return ft.call(jt,pn,"$&_")}var sn=nt(6973),Lt=sn.custom,tn=dn(Lt)?Lt:null;function cn(Ot,jt,pn){var En=(pn.quoteStyle||jt)==="double"?'"':"'";return En+Ot+En}function on(Ot){return ft.call(String(Ot),/"/g,""")}function Gt(Ot){return!(fn(Ot)!=="[object Array]"||At&&typeof Ot=="object"&&At in Ot)}function Xt(Ot){return!(fn(Ot)!=="[object RegExp]"||At&&typeof Ot=="object"&&At in Ot)}function dn(Ot){if(wt)return Ot&&typeof Ot=="object"&&Ot instanceof Symbol;if(typeof Ot=="symbol")return!0;if(!Ot||typeof Ot!="object"||!Jt)return!1;try{return Jt.call(Ot),!0}catch{}return!1}et.exports=function Ot(jt,pn,En,yn){var Cn=pn||{};if(Fn(Cn,"quoteStyle")&&Cn.quoteStyle!=="single"&&Cn.quoteStyle!=="double")throw new TypeError('option "quoteStyle" must be "single" or "double"');if(Fn(Cn,"maxStringLength")&&(typeof Cn.maxStringLength=="number"?Cn.maxStringLength<0&&Cn.maxStringLength!==1/0:Cn.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var Gn=!Fn(Cn,"customInspect")||Cn.customInspect;if(typeof Gn!="boolean"&&Gn!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(Fn(Cn,"indent")&&Cn.indent!==null&&Cn.indent!==" "&&!(parseInt(Cn.indent,10)===Cn.indent&&Cn.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(Fn(Cn,"numericSeparator")&&typeof Cn.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var Wn=Cn.numericSeparator;if(jt===void 0)return"undefined";if(jt===null)return"null";if(typeof jt=="boolean")return jt?"true":"false";if(typeof jt=="string")return function tr(vr,Hr){if(vr.length>Hr.maxStringLength){var fo=vr.length-Hr.maxStringLength,Go="... "+fo+" more character"+(fo>1?"s":"");return tr(Tt.call(vr,0,Hr.maxStringLength),Hr)+Go}return cn(ft.call(ft.call(vr,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,Jn),"single",Hr)}(jt,Cn);if(typeof jt=="number"){if(jt===0)return 1/0/jt>0?"0":"-0";var ir=String(jt);return Wn?nn(jt,ir):ir}if(typeof jt=="bigint"){var lr=String(jt)+"n";return Wn?nn(jt,lr):lr}var Rn=Cn.depth===void 0?5:Cn.depth;if(En===void 0&&(En=0),En>=Rn&&Rn>0&&typeof jt=="object")return Gt(jt)?"[Array]":"[Object]";var _r=function(tr,vr){var Hr;if(tr.indent===" ")Hr=" ";else{if(!(typeof tr.indent=="number"&&tr.indent>0))return null;Hr=Ht.call(Array(tr.indent+1)," ")}return{base:Hr,prev:Ht.call(Array(vr+1),Hr)}}(Cn,En);if(yn===void 0)yn=[];else if(Un(yn,jt)>=0)return"[Circular]";function zr(tr,vr,Hr){if(vr&&(yn=Nt.call(yn)).push(vr),Hr){var fo={depth:Cn.depth};return Fn(Cn,"quoteStyle")&&(fo.quoteStyle=Cn.quoteStyle),Ot(tr,fo,En+1,yn)}return Ot(tr,Cn,En+1,yn)}if(typeof jt=="function"&&!Xt(jt)){var Er=function(tr){if(tr.name)return tr.name;var vr=Vt.call(gt.call(tr),/^function\s*([\w$]+)/);return vr?vr[1]:null}(jt),ho=_t(jt,zr);return"[Function"+(Er?": "+Er:" (anonymous)")+"]"+(ho.length>0?" { "+Ht.call(ho,", ")+" }":"")}if(dn(jt)){var Ro=wt?ft.call(String(jt),/^(Symbol\(.*\))_[^)]*$/,"$1"):Jt.call(jt);return typeof jt!="object"||wt?Ro:_n(Ro)}if(function(tr){return!tr||typeof tr!="object"?!1:typeof HTMLElement<"u"&&tr instanceof HTMLElement?!0:typeof tr.nodeName=="string"&&typeof tr.getAttribute=="function"}(jt)){for(var rr="<"+yt.call(String(jt.nodeName)),wo=jt.attributes||[],oo=0;oo"}if(Gt(jt)){if(jt.length===0)return"[]";var No=_t(jt,zr);return _r&&!function(tr){for(var vr=0;vr=0)return!1;return!0}(No)?"["+Yn(No,_r)+"]":"[ "+Ht.call(No,", ")+" ]"}if(function(tr){return!(fn(tr)!=="[object Error]"||At&&typeof tr=="object"&&At in tr)}(jt)){var ro=_t(jt,zr);return"cause"in Error.prototype||!("cause"in jt)||Ct.call(jt,"cause")?ro.length===0?"["+String(jt)+"]":"{ ["+String(jt)+"] "+Ht.call(ro,", ")+" }":"{ ["+String(jt)+"] "+Ht.call($t.call("[cause]: "+zr(jt.cause),ro),", ")+" }"}if(typeof jt=="object"&&Gn){if(tn&&typeof jt[tn]=="function"&&sn)return sn(jt,{depth:Rn-En});if(Gn!=="symbol"&&typeof jt.inspect=="function")return jt.inspect()}if(function(tr){if(!ut||!tr||typeof tr!="object")return!1;try{ut.call(tr);try{dt.call(tr)}catch{return!0}return tr instanceof Map}catch{}return!1}(jt)){var ao=[];return Ut&&Ut.call(jt,function(tr,vr){ao.push(zr(vr,jt,!0)+" => "+zr(tr,jt))}),On("Map",ut.call(jt),ao,_r)}if(function(tr){if(!dt||!tr||typeof tr!="object")return!1;try{dt.call(tr);try{ut.call(tr)}catch{return!0}return tr instanceof Set}catch{}return!1}(jt)){var Wo=[];return St&&St.call(jt,function(tr){Wo.push(zr(tr,jt))}),On("Set",dt.call(jt),Wo,_r)}if(function(tr){if(!pt||!tr||typeof tr!="object")return!1;try{pt.call(tr,pt);try{Rt.call(tr,Rt)}catch{return!0}return tr instanceof WeakMap}catch{}return!1}(jt))return Zn("WeakMap");if(function(tr){if(!Rt||!tr||typeof tr!="object")return!1;try{Rt.call(tr,Rt);try{pt.call(tr,pt)}catch{return!0}return tr instanceof WeakSet}catch{}return!1}(jt))return Zn("WeakSet");if(function(tr){if(!Bt||!tr||typeof tr!="object")return!1;try{return Bt.call(tr),!0}catch{}return!1}(jt))return Zn("WeakRef");if(function(tr){return!(fn(tr)!=="[object Number]"||At&&typeof tr=="object"&&At in tr)}(jt))return _n(zr(Number(jt)));if(function(tr){if(!tr||typeof tr!="object"||!kt)return!1;try{return kt.call(tr),!0}catch{}return!1}(jt))return _n(zr(kt.call(jt)));if(function(tr){return!(fn(tr)!=="[object Boolean]"||At&&typeof tr=="object"&&At in tr)}(jt))return _n(ht.call(jt));if(function(tr){return!(fn(tr)!=="[object String]"||At&&typeof tr=="object"&&At in tr)}(jt))return _n(zr(String(jt)));if(typeof window<"u"&&jt===window)return"{ [object Window] }";if(typeof globalThis<"u"&&jt===globalThis||nt.g!==void 0&&jt===nt.g)return"{ [object globalThis] }";if(!function(tr){return!(fn(tr)!=="[object Date]"||At&&typeof tr=="object"&&At in tr)}(jt)&&!Xt(jt)){var _o=_t(jt,zr),Ao=Mt?Mt(jt)===Object.prototype:jt instanceof Object||jt.constructor===Object,So=jt instanceof Object?"":"null prototype",bo=!Ao&&At&&Object(jt)===jt&&At in jt?Tt.call(fn(jt),8,-1):So?"Object":"",po=(Ao||typeof jt.constructor!="function"?"":jt.constructor.name?jt.constructor.name+" ":"")+(bo||So?"["+Ht.call($t.call([],bo||[],So||[]),": ")+"] ":"");return _o.length===0?po+"{}":_r?po+"{"+Yn(_o,_r)+"}":po+"{ "+Ht.call(_o,", ")+" }"}return String(jt)};var Vn=Object.prototype.hasOwnProperty||function(Ot){return Ot in this};function Fn(Ot,jt){return Vn.call(Ot,jt)}function fn(Ot){return mt.call(Ot)}function Un(Ot,jt){if(Ot.indexOf)return Ot.indexOf(jt);for(var pn=0,En=Ot.length;pn{var tt=function(nt){return nt!=nt};et.exports=function(nt,rt){return nt===0&&rt===0?1/nt==1/rt:nt===rt||!(!tt(nt)||!tt(rt))}},5968:(et,tt,nt)=>{var rt=nt(1857),lt=nt(8498),ut=nt(2372),Ut=nt(1937),ot=nt(5087),st=lt(Ut(),Object);rt(st,{getPolyfill:Ut,implementation:ut,shim:ot}),et.exports=st},1937:(et,tt,nt)=>{var rt=nt(2372);et.exports=function(){return typeof Object.is=="function"?Object.is:rt}},5087:(et,tt,nt)=>{var rt=nt(1937),lt=nt(1857);et.exports=function(){var ut=rt();return lt(Object,{is:ut},{is:function(){return Object.is!==ut}}),ut}},8160:(et,tt,nt)=>{var rt;if(!Object.keys){var lt=Object.prototype.hasOwnProperty,ut=Object.prototype.toString,Ut=nt(968),ot=Object.prototype.propertyIsEnumerable,st=!ot.call({toString:null},"toString"),dt=ot.call(function(){},"prototype"),St=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],pt=function(ht){var mt=ht.constructor;return mt&&mt.prototype===ht},Rt={$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},Bt=function(){if(typeof window>"u")return!1;for(var ht in window)try{if(!Rt["$"+ht]&<.call(window,ht)&&window[ht]!==null&&typeof window[ht]=="object")try{pt(window[ht])}catch{return!0}}catch{return!0}return!1}();rt=function(ht){var mt=ht!==null&&typeof ht=="object",gt=ut.call(ht)==="[object Function]",Vt=Ut(ht),Tt=mt&&ut.call(ht)==="[object String]",ft=[];if(!mt&&!gt&&!Vt)throw new TypeError("Object.keys called on a non-object");var Wt=dt&>if(Tt&&ht.length>0&&!lt.call(ht,0))for(var yt=0;yt0)for(var Kt=0;Kt"u"||!Bt)return pt(qt);try{return pt(qt)}catch{return!1}}(ht),Nt=0;Nt{var rt=Array.prototype.slice,lt=nt(968),ut=Object.keys,Ut=ut?function(st){return ut(st)}:nt(8160),ot=Object.keys;Ut.shim=function(){return Object.keys?function(){var st=Object.keys(arguments);return st&&st.length===arguments.length}(1,2)||(Object.keys=function(st){return lt(st)?ot(rt.call(st)):ot(st)}):Object.keys=Ut,Object.keys||Ut},et.exports=Ut},968:et=>{var tt=Object.prototype.toString;et.exports=function(nt){var rt=tt.call(nt),lt=rt==="[object Arguments]";return lt||(lt=rt!=="[object Array]"&&nt!==null&&typeof nt=="object"&&typeof nt.length=="number"&&nt.length>=0&&tt.call(nt.callee)==="[object Function]"),lt}},5164:(et,tt,nt)=>{var rt=nt(9228),lt=nt(2908)(),ut=nt(9818),Ut=Object,ot=ut("Array.prototype.push"),st=ut("Object.prototype.propertyIsEnumerable"),dt=lt?Object.getOwnPropertySymbols:null;et.exports=function(St,pt){if(St==null)throw new TypeError("target must be an object");var Rt=Ut(St);if(arguments.length===1)return Rt;for(var Bt=1;Bt{var rt=nt(5164);et.exports=function(){return Object.assign?function(){if(!Object.assign)return!1;for(var lt="abcdefghijklmnopqrst",ut=lt.split(""),Ut={},ot=0;ot{var rt=nt(9827);et.exports=function(lt){var ut,Ut=0;function ot(){return Ut||(Ut=1,ut=lt.apply(this,arguments),lt=null),ut}return ot.displayName=rt(lt),ot}},2213:(et,tt)=>{tt.endianness=function(){return"LE"},tt.hostname=function(){return typeof location<"u"?location.hostname:""},tt.loadavg=function(){return[]},tt.uptime=function(){return 0},tt.freemem=function(){return Number.MAX_VALUE},tt.totalmem=function(){return Number.MAX_VALUE},tt.cpus=function(){return[]},tt.type=function(){return"Browser"},tt.release=function(){return typeof navigator<"u"?navigator.appVersion:""},tt.networkInterfaces=tt.getNetworkInterfaces=function(){return{}},tt.arch=function(){return"javascript"},tt.platform=function(){return"browser"},tt.tmpdir=tt.tmpDir=function(){return"/tmp"},tt.EOL=` +`,tt.homedir=function(){return"/"}},5402:et=>{typeof Object.create=="function"?et.exports=function(tt,nt){tt.super_=nt,tt.prototype=Object.create(nt.prototype,{constructor:{value:tt,enumerable:!1,writable:!0,configurable:!0}})}:et.exports=function(tt,nt){tt.super_=nt;var rt=function(){};rt.prototype=nt.prototype,tt.prototype=new rt,tt.prototype.constructor=tt}},8575:et=>{et.exports=function(tt){return tt&&typeof tt=="object"&&typeof tt.copy=="function"&&typeof tt.fill=="function"&&typeof tt.readUInt8=="function"}},25:(et,tt,nt)=>{var rt=/%[sdj%]/g;tt.format=function(bt){if(!gt(bt)){for(var Jt=[],wt=0;wt=Ct)return sn;switch(sn){case"%s":return String(At[wt++]);case"%d":return Number(At[wt++]);case"%j":try{return JSON.stringify(At[wt++])}catch{return"[Circular]"}default:return sn}}),nn=At[wt];wt=3&&(wt.depth=arguments[2]),arguments.length>=4&&(wt.colors=arguments[3]),Bt(Jt)?wt.showHidden=Jt:Jt&&tt._extend(wt,Jt),Vt(wt.showHidden)&&(wt.showHidden=!1),Vt(wt.depth)&&(wt.depth=2),Vt(wt.colors)&&(wt.colors=!1),Vt(wt.customInspect)&&(wt.customInspect=!0),wt.colors&&(wt.stylize=ot),dt(wt,bt,wt.depth)}function ot(bt,Jt){var wt=Ut.styles[Jt];return wt?"\x1B["+Ut.colors[wt][0]+"m"+bt+"\x1B["+Ut.colors[wt][1]+"m":bt}function st(bt,Jt){return bt}function dt(bt,Jt,wt){if(bt.customInspect&&Jt&&Kt(Jt.inspect)&&Jt.inspect!==tt.inspect&&(!Jt.constructor||Jt.constructor.prototype!==Jt)){var At=Jt.inspect(wt,bt);return gt(At)||(At=dt(bt,At,wt)),At}var Ct=function(Gt,Xt){if(Vt(Xt))return Gt.stylize("undefined","undefined");if(gt(Xt)){var dn="'"+JSON.stringify(Xt).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return Gt.stylize(dn,"string")}if(mt(Xt))return Gt.stylize(""+Xt,"number");if(Bt(Xt))return Gt.stylize(""+Xt,"boolean");if(ht(Xt))return Gt.stylize("null","null")}(bt,Jt);if(Ct)return Ct;var Mt=Object.keys(Jt),nn=function(Gt){var Xt={};return Gt.forEach(function(dn,Vn){Xt[dn]=!0}),Xt}(Mt);if(bt.showHidden&&(Mt=Object.getOwnPropertyNames(Jt)),yt(Jt)&&(Mt.indexOf("message")>=0||Mt.indexOf("description")>=0))return St(Jt);if(Mt.length===0){if(Kt(Jt)){var sn=Jt.name?": "+Jt.name:"";return bt.stylize("[Function"+sn+"]","special")}if(Tt(Jt))return bt.stylize(RegExp.prototype.toString.call(Jt),"regexp");if(Wt(Jt))return bt.stylize(Date.prototype.toString.call(Jt),"date");if(yt(Jt))return St(Jt)}var Lt,tn="",cn=!1,on=["{","}"];return Rt(Jt)&&(cn=!0,on=["[","]"]),Kt(Jt)&&(tn=" [Function"+(Jt.name?": "+Jt.name:"")+"]"),Tt(Jt)&&(tn=" "+RegExp.prototype.toString.call(Jt)),Wt(Jt)&&(tn=" "+Date.prototype.toUTCString.call(Jt)),yt(Jt)&&(tn=" "+St(Jt)),Mt.length!==0||cn&&Jt.length!=0?wt<0?Tt(Jt)?bt.stylize(RegExp.prototype.toString.call(Jt),"regexp"):bt.stylize("[Object]","special"):(bt.seen.push(Jt),Lt=cn?function(Gt,Xt,dn,Vn,Fn){for(var fn=[],Un=0,Jn=Xt.length;Un=0,Vn+Fn.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?dn[0]+(Xt===""?"":Xt+` + `)+" "+Gt.join(`, + `)+" "+dn[1]:dn[0]+Xt+" "+Gt.join(", ")+" "+dn[1]}(Lt,tn,on)):on[0]+tn+on[1]}function St(bt){return"["+Error.prototype.toString.call(bt)+"]"}function pt(bt,Jt,wt,At,Ct,Mt){var nn,sn,Lt;if((Lt=Object.getOwnPropertyDescriptor(Jt,Ct)||{value:Jt[Ct]}).get?sn=Lt.set?bt.stylize("[Getter/Setter]","special"):bt.stylize("[Getter]","special"):Lt.set&&(sn=bt.stylize("[Setter]","special")),kt(At,Ct)||(nn="["+Ct+"]"),sn||(bt.seen.indexOf(Lt.value)<0?(sn=ht(wt)?dt(bt,Lt.value,null):dt(bt,Lt.value,wt-1)).indexOf(` +`)>-1&&(sn=Mt?sn.split(` +`).map(function(tn){return" "+tn}).join(` +`).substr(2):` +`+sn.split(` +`).map(function(tn){return" "+tn}).join(` +`)):sn=bt.stylize("[Circular]","special")),Vt(nn)){if(Mt&&Ct.match(/^\d+$/))return sn;(nn=JSON.stringify(""+Ct)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(nn=nn.substr(1,nn.length-2),nn=bt.stylize(nn,"name")):(nn=nn.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),nn=bt.stylize(nn,"string"))}return nn+": "+sn}function Rt(bt){return Array.isArray(bt)}function Bt(bt){return typeof bt=="boolean"}function ht(bt){return bt===null}function mt(bt){return typeof bt=="number"}function gt(bt){return typeof bt=="string"}function Vt(bt){return bt===void 0}function Tt(bt){return ft(bt)&&$t(bt)==="[object RegExp]"}function ft(bt){return typeof bt=="object"&&bt!==null}function Wt(bt){return ft(bt)&&$t(bt)==="[object Date]"}function yt(bt){return ft(bt)&&($t(bt)==="[object Error]"||bt instanceof Error)}function Kt(bt){return typeof bt=="function"}function $t(bt){return Object.prototype.toString.call(bt)}function Ht(bt){return bt<10?"0"+bt.toString(10):bt.toString(10)}tt.debuglog=function(bt){if(Vt(lt)&&(lt={}.NODE_DEBUG||""),bt=bt.toUpperCase(),!ut[bt])if(new RegExp("\\b"+bt+"\\b","i").test(lt)){var Jt=process.pid;ut[bt]=function(){var wt=tt.format.apply(tt,arguments);console.error("%s %d: %s",bt,Jt,wt)}}else ut[bt]=function(){};return ut[bt]},tt.inspect=Ut,Ut.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]},Ut.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},tt.isArray=Rt,tt.isBoolean=Bt,tt.isNull=ht,tt.isNullOrUndefined=function(bt){return bt==null},tt.isNumber=mt,tt.isString=gt,tt.isSymbol=function(bt){return typeof bt=="symbol"},tt.isUndefined=Vt,tt.isRegExp=Tt,tt.isObject=ft,tt.isDate=Wt,tt.isError=yt,tt.isFunction=Kt,tt.isPrimitive=function(bt){return bt===null||typeof bt=="boolean"||typeof bt=="number"||typeof bt=="string"||typeof bt=="symbol"||bt===void 0},tt.isBuffer=nt(8575);var Nt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function qt(){var bt=new Date,Jt=[Ht(bt.getHours()),Ht(bt.getMinutes()),Ht(bt.getSeconds())].join(":");return[bt.getDate(),Nt[bt.getMonth()],Jt].join(" ")}function kt(bt,Jt){return Object.prototype.hasOwnProperty.call(bt,Jt)}tt.log=function(){console.log("%s - %s",qt(),tt.format.apply(tt,arguments))},tt.inherits=nt(5402),tt._extend=function(bt,Jt){if(!Jt||!ft(Jt))return bt;for(var wt=Object.keys(Jt),At=wt.length;At--;)bt[wt[At]]=Jt[wt[At]];return bt}},8558:(et,tt,nt)=>{var rt=process.platform==="win32",lt=nt(25);function ut(gt,Vt){for(var Tt=[],ft=0;ft=0&&!gt[ft];ft--);return Tt===0&&ft===Vt?gt:Tt>ft?[]:gt.slice(Tt,ft+1)}var ot=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/,st=/^([\s\S]*?)((?:\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))(?:[\\\/]*)$/,dt={};function St(gt){var Vt=ot.exec(gt),Tt=(Vt[1]||"")+(Vt[2]||""),ft=Vt[3]||"",Wt=st.exec(ft);return[Tt,Wt[1],Wt[2],Wt[3]]}function pt(gt){var Vt=ot.exec(gt),Tt=Vt[1]||"",ft=!!Tt&&Tt[1]!==":";return{device:Tt,isUnc:ft,isAbsolute:ft||!!Vt[2],tail:Vt[3]}}function Rt(gt){return"\\\\"+gt.replace(/^[\\\/]+/,"").replace(/[\\\/]+/g,"\\")}dt.resolve=function(){for(var gt="",Vt="",Tt=!1,ft=arguments.length-1;ft>=-1;ft--){var Wt;if(ft>=0?Wt=arguments[ft]:gt?(Wt=process.env["="+gt])&&Wt.substr(0,3).toLowerCase()===gt.toLowerCase()+"\\"||(Wt=gt+"\\"):Wt=process.cwd(),!lt.isString(Wt))throw new TypeError("Arguments to path.resolve must be strings");if(Wt){var yt=pt(Wt),Kt=yt.device,$t=yt.isUnc,Ht=yt.isAbsolute,Nt=yt.tail;if((!Kt||!gt||Kt.toLowerCase()===gt.toLowerCase())&&(gt||(gt=Kt),Tt||(Vt=Nt+"\\"+Vt,Tt=Ht),gt&&Tt))break}}return $t&&(gt=Rt(gt)),gt+(Tt?"\\":"")+(Vt=ut(Vt.split(/[\\\/]+/),!Tt).join("\\"))||"."},dt.normalize=function(gt){var Vt=pt(gt),Tt=Vt.device,ft=Vt.isUnc,Wt=Vt.isAbsolute,yt=Vt.tail,Kt=/[\\\/]$/.test(yt);return(yt=ut(yt.split(/[\\\/]+/),!Wt).join("\\"))||Wt||(yt="."),yt&&Kt&&(yt+="\\"),ft&&(Tt=Rt(Tt)),Tt+(Wt?"\\":"")+yt},dt.isAbsolute=function(gt){return pt(gt).isAbsolute},dt.join=function(){for(var gt=[],Vt=0;Vt=-1&&!Vt;Tt--){var ft=Tt>=0?arguments[Tt]:process.cwd();if(!lt.isString(ft))throw new TypeError("Arguments to path.resolve must be strings");ft&&(gt=ft+"/"+gt,Vt=ft[0]==="/")}return(Vt?"/":"")+(gt=ut(gt.split("/"),!Vt).join("/"))||"."},ht.normalize=function(gt){var Vt=ht.isAbsolute(gt),Tt=gt&>[gt.length-1]==="/";return(gt=ut(gt.split("/"),!Vt).join("/"))||Vt||(gt="."),gt&&Tt&&(gt+="/"),(Vt?"/":"")+gt},ht.isAbsolute=function(gt){return gt.charAt(0)==="/"},ht.join=function(){for(var gt="",Vt=0;Vt{et.exports=["Float32Array","Float64Array","Int8Array","Int16Array","Int32Array","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array"]},1830:et=>{var tt=String.prototype.replace,nt=/%20/g,rt="RFC1738",lt="RFC3986";et.exports={default:lt,formatters:{RFC1738:function(ut){return tt.call(ut,nt,"+")},RFC3986:function(ut){return String(ut)}},RFC1738:rt,RFC3986:lt}},5810:(et,tt,nt)=>{var rt=nt(6623),lt=nt(6193),ut=nt(1830);et.exports={formats:ut,parse:lt,stringify:rt}},6193:(et,tt,nt)=>{var rt=nt(1539),lt=Object.prototype.hasOwnProperty,ut=Array.isArray,Ut={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:rt.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},ot=function(St){return St.replace(/&#(\d+);/g,function(pt,Rt){return String.fromCharCode(parseInt(Rt,10))})},st=function(St,pt){return St&&typeof St=="string"&&pt.comma&&St.indexOf(",")>-1?St.split(","):St},dt=function(St,pt,Rt,Bt){if(St){var ht=Rt.allowDots?St.replace(/\.([^.[]+)/g,"[$1]"):St,mt=/(\[[^[\]]*])/g,gt=Rt.depth>0&&/(\[[^[\]]*])/.exec(ht),Vt=gt?ht.slice(0,gt.index):ht,Tt=[];if(Vt){if(!Rt.plainObjects&<.call(Object.prototype,Vt)&&!Rt.allowPrototypes)return;Tt.push(Vt)}for(var ft=0;Rt.depth>0&&(gt=mt.exec(ht))!==null&&ft=0;--Nt){var qt,kt=Wt[Nt];if(kt==="[]"&&Kt.parseArrays)qt=Kt.allowEmptyArrays&&(Ht===""||Kt.strictNullHandling&&Ht===null)?[]:[].concat(Ht);else{qt=Kt.plainObjects?Object.create(null):{};var bt=kt.charAt(0)==="["&&kt.charAt(kt.length-1)==="]"?kt.slice(1,-1):kt,Jt=Kt.decodeDotInKeys?bt.replace(/%2E/g,"."):bt,wt=parseInt(Jt,10);Kt.parseArrays||Jt!==""?!isNaN(wt)&&kt!==Jt&&String(wt)===Jt&&wt>=0&&Kt.parseArrays&&wt<=Kt.arrayLimit?(qt=[])[wt]=Ht:Jt!=="__proto__"&&(qt[Jt]=Ht):qt={0:Ht}}Ht=qt}return Ht}(Tt,pt,Rt,Bt)}};et.exports=function(St,pt){var Rt=function(ft){if(!ft)return Ut;if(ft.allowEmptyArrays!==void 0&&typeof ft.allowEmptyArrays!="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(ft.decodeDotInKeys!==void 0&&typeof ft.decodeDotInKeys!="boolean")throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(ft.decoder!==null&&ft.decoder!==void 0&&typeof ft.decoder!="function")throw new TypeError("Decoder has to be a function.");if(ft.charset!==void 0&&ft.charset!=="utf-8"&&ft.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var Wt=ft.charset===void 0?Ut.charset:ft.charset,yt=ft.duplicates===void 0?Ut.duplicates:ft.duplicates;if(yt!=="combine"&&yt!=="first"&&yt!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:ft.allowDots===void 0?ft.decodeDotInKeys===!0||Ut.allowDots:!!ft.allowDots,allowEmptyArrays:typeof ft.allowEmptyArrays=="boolean"?!!ft.allowEmptyArrays:Ut.allowEmptyArrays,allowPrototypes:typeof ft.allowPrototypes=="boolean"?ft.allowPrototypes:Ut.allowPrototypes,allowSparse:typeof ft.allowSparse=="boolean"?ft.allowSparse:Ut.allowSparse,arrayLimit:typeof ft.arrayLimit=="number"?ft.arrayLimit:Ut.arrayLimit,charset:Wt,charsetSentinel:typeof ft.charsetSentinel=="boolean"?ft.charsetSentinel:Ut.charsetSentinel,comma:typeof ft.comma=="boolean"?ft.comma:Ut.comma,decodeDotInKeys:typeof ft.decodeDotInKeys=="boolean"?ft.decodeDotInKeys:Ut.decodeDotInKeys,decoder:typeof ft.decoder=="function"?ft.decoder:Ut.decoder,delimiter:typeof ft.delimiter=="string"||rt.isRegExp(ft.delimiter)?ft.delimiter:Ut.delimiter,depth:typeof ft.depth=="number"||ft.depth===!1?+ft.depth:Ut.depth,duplicates:yt,ignoreQueryPrefix:ft.ignoreQueryPrefix===!0,interpretNumericEntities:typeof ft.interpretNumericEntities=="boolean"?ft.interpretNumericEntities:Ut.interpretNumericEntities,parameterLimit:typeof ft.parameterLimit=="number"?ft.parameterLimit:Ut.parameterLimit,parseArrays:ft.parseArrays!==!1,plainObjects:typeof ft.plainObjects=="boolean"?ft.plainObjects:Ut.plainObjects,strictNullHandling:typeof ft.strictNullHandling=="boolean"?ft.strictNullHandling:Ut.strictNullHandling}}(pt);if(St===""||St==null)return Rt.plainObjects?Object.create(null):{};for(var Bt=typeof St=="string"?function(ft,Wt){var yt={__proto__:null},Kt=Wt.ignoreQueryPrefix?ft.replace(/^\?/,""):ft;Kt=Kt.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var $t,Ht=Wt.parameterLimit===1/0?void 0:Wt.parameterLimit,Nt=Kt.split(Wt.delimiter,Ht),qt=-1,kt=Wt.charset;if(Wt.charsetSentinel)for($t=0;$t-1&&(Jt=ut(Jt)?[Jt]:Jt);var Mt=lt.call(yt,bt);Mt&&Wt.duplicates==="combine"?yt[bt]=rt.combine(yt[bt],Jt):Mt&&Wt.duplicates!=="last"||(yt[bt]=Jt)}return yt}(St,Rt):St,ht=Rt.plainObjects?Object.create(null):{},mt=Object.keys(Bt),gt=0;gt{var rt=nt(7575),lt=nt(1539),ut=nt(1830),Ut=Object.prototype.hasOwnProperty,ot={brackets:function(gt){return gt+"[]"},comma:"comma",indices:function(gt,Vt){return gt+"["+Vt+"]"},repeat:function(gt){return gt}},st=Array.isArray,dt=Array.prototype.push,St=function(gt,Vt){dt.apply(gt,st(Vt)?Vt:[Vt])},pt=Date.prototype.toISOString,Rt=ut.default,Bt={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:lt.encode,encodeValuesOnly:!1,format:Rt,formatter:ut.formatters[Rt],indices:!1,serializeDate:function(gt){return pt.call(gt)},skipNulls:!1,strictNullHandling:!1},ht={},mt=function gt(Vt,Tt,ft,Wt,yt,Kt,$t,Ht,Nt,qt,kt,bt,Jt,wt,At,Ct,Mt,nn){for(var sn,Lt=Vt,tn=nn,cn=0,on=!1;(tn=tn.get(ht))!==void 0&&!on;){var Gt=tn.get(Vt);if(cn+=1,Gt!==void 0){if(Gt===cn)throw new RangeError("Cyclic object value");on=!0}tn.get(ht)===void 0&&(cn=0)}if(typeof qt=="function"?Lt=qt(Tt,Lt):Lt instanceof Date?Lt=Jt(Lt):ft==="comma"&&st(Lt)&&(Lt=lt.maybeMap(Lt,function(_t){return _t instanceof Date?Jt(_t):_t})),Lt===null){if(Kt)return Nt&&!Ct?Nt(Tt,Bt.encoder,Mt,"key",wt):Tt;Lt=""}if(typeof(sn=Lt)=="string"||typeof sn=="number"||typeof sn=="boolean"||typeof sn=="symbol"||typeof sn=="bigint"||lt.isBuffer(Lt))return Nt?[At(Ct?Tt:Nt(Tt,Bt.encoder,Mt,"key",wt))+"="+At(Nt(Lt,Bt.encoder,Mt,"value",wt))]:[At(Tt)+"="+At(String(Lt))];var Xt,dn=[];if(Lt===void 0)return dn;if(ft==="comma"&&st(Lt))Ct&&Nt&&(Lt=lt.maybeMap(Lt,Nt)),Xt=[{value:Lt.length>0?Lt.join(",")||null:void 0}];else if(st(qt))Xt=qt;else{var Vn=Object.keys(Lt);Xt=kt?Vn.sort(kt):Vn}var Fn=Ht?Tt.replace(/\./g,"%2E"):Tt,fn=Wt&&st(Lt)&&Lt.length===1?Fn+"[]":Fn;if(yt&&st(Lt)&&Lt.length===0)return fn+"[]";for(var Un=0;Un0?bt+kt:""}},1539:(et,tt,nt)=>{var rt=nt(1830),lt=Object.prototype.hasOwnProperty,ut=Array.isArray,Ut=function(){for(var st=[],dt=0;dt<256;++dt)st.push("%"+((dt<16?"0":"")+dt.toString(16)).toUpperCase());return st}(),ot=function(st,dt){for(var St=dt&&dt.plainObjects?Object.create(null):{},pt=0;pt1;){var ft=Tt.pop(),Wt=ft.obj[ft.prop];if(ut(Wt)){for(var yt=[],Kt=0;Kt=1024?Bt.slice(mt,mt+1024):Bt,Vt=[],Tt=0;Tt=48&&ft<=57||ft>=65&&ft<=90||ft>=97&&ft<=122||Rt===rt.RFC1738&&(ft===40||ft===41)?Vt[Vt.length]=gt.charAt(Tt):ft<128?Vt[Vt.length]=Ut[ft]:ft<2048?Vt[Vt.length]=Ut[192|ft>>6]+Ut[128|63&ft]:ft<55296||ft>=57344?Vt[Vt.length]=Ut[224|ft>>12]+Ut[128|ft>>6&63]+Ut[128|63&ft]:(Tt+=1,ft=65536+((1023&ft)<<10|1023>.charCodeAt(Tt)),Vt[Vt.length]=Ut[240|ft>>18]+Ut[128|ft>>12&63]+Ut[128|ft>>6&63]+Ut[128|63&ft])}ht+=Vt.join("")}return ht},isBuffer:function(st){return!(!st||typeof st!="object")&&!!(st.constructor&&st.constructor.isBuffer&&st.constructor.isBuffer(st))},isRegExp:function(st){return Object.prototype.toString.call(st)==="[object RegExp]"},maybeMap:function(st,dt){if(ut(st)){for(var St=[],pt=0;pt{var tt={};function nt(lt,ut,Ut){Ut||(Ut=Error);var ot=function(st){var dt,St;function pt(Rt,Bt,ht){return st.call(this,function(mt,gt,Vt){return typeof ut=="string"?ut:ut(mt,gt,Vt)}(Rt,Bt,ht))||this}return St=st,(dt=pt).prototype=Object.create(St.prototype),dt.prototype.constructor=dt,dt.__proto__=St,pt}(Ut);ot.prototype.name=Ut.name,ot.prototype.code=lt,tt[lt]=ot}function rt(lt,ut){if(Array.isArray(lt)){var Ut=lt.length;return lt=lt.map(function(ot){return String(ot)}),Ut>2?"one of ".concat(ut," ").concat(lt.slice(0,Ut-1).join(", "),", or ")+lt[Ut-1]:Ut===2?"one of ".concat(ut," ").concat(lt[0]," or ").concat(lt[1]):"of ".concat(ut," ").concat(lt[0])}return"of ".concat(ut," ").concat(String(lt))}nt("ERR_INVALID_OPT_VALUE",function(lt,ut){return'The value "'+ut+'" is invalid for option "'+lt+'"'},TypeError),nt("ERR_INVALID_ARG_TYPE",function(lt,ut,Ut){var ot,st,dt;if(typeof ut=="string"&&(st="not ",ut.substr(0,st.length)===st)?(ot="must not be",ut=ut.replace(/^not /,"")):ot="must be",function(pt,Rt,Bt){return(Bt===void 0||Bt>pt.length)&&(Bt=pt.length),pt.substring(Bt-Rt.length,Bt)===Rt}(lt," argument"))dt="The ".concat(lt," ").concat(ot," ").concat(rt(ut,"type"));else{var St=function(pt,Rt,Bt){return typeof Bt!="number"&&(Bt=0),!(Bt+Rt.length>pt.length)&&pt.indexOf(Rt,Bt)!==-1}(lt,".")?"property":"argument";dt='The "'.concat(lt,'" ').concat(St," ").concat(ot," ").concat(rt(ut,"type"))}return dt+=". Received type ".concat(typeof Ut)},TypeError),nt("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),nt("ERR_METHOD_NOT_IMPLEMENTED",function(lt){return"The "+lt+" method is not implemented"}),nt("ERR_STREAM_PREMATURE_CLOSE","Premature close"),nt("ERR_STREAM_DESTROYED",function(lt){return"Cannot call "+lt+" after a stream was destroyed"}),nt("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),nt("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),nt("ERR_STREAM_WRITE_AFTER_END","write after end"),nt("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),nt("ERR_UNKNOWN_ENCODING",function(lt){return"Unknown encoding: "+lt},TypeError),nt("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),et.exports.F=tt},1265:(et,tt,nt)=>{var rt=Object.keys||function(Rt){var Bt=[];for(var ht in Rt)Bt.push(ht);return Bt};et.exports=dt;var lt=nt(8199),ut=nt(5291);nt(5615)(dt,lt);for(var Ut=rt(ut.prototype),ot=0;ot{et.exports=lt;var rt=nt(9415);function lt(ut){if(!(this instanceof lt))return new lt(ut);rt.call(this,ut)}nt(5615)(lt,rt),lt.prototype._transform=function(ut,Ut,ot){ot(null,ut)}},8199:(et,tt,nt)=>{var rt;et.exports=Ht,Ht.ReadableState=$t,nt(46).EventEmitter;var lt=function(Gt,Xt){return Gt.listeners(Xt).length},ut=nt(4856),Ut=nt(1048).Buffer,ot=(nt.g!==void 0?nt.g:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},st,dt=nt(3951);st=dt&&dt.debuglog?dt.debuglog("stream"):function(){};var St,pt,Rt,Bt=nt(82),ht=nt(6527),mt=nt(9952).getHighWaterMark,gt=nt(5699).F,Vt=gt.ERR_INVALID_ARG_TYPE,Tt=gt.ERR_STREAM_PUSH_AFTER_EOF,ft=gt.ERR_METHOD_NOT_IMPLEMENTED,Wt=gt.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;nt(5615)(Ht,ut);var yt=ht.errorOrDestroy,Kt=["error","close","destroy","pause","resume"];function $t(Gt,Xt,dn){rt=rt||nt(1265),Gt=Gt||{},typeof dn!="boolean"&&(dn=Xt instanceof rt),this.objectMode=!!Gt.objectMode,dn&&(this.objectMode=this.objectMode||!!Gt.readableObjectMode),this.highWaterMark=mt(this,Gt,"readableHighWaterMark",dn),this.buffer=new Bt,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=Gt.emitClose!==!1,this.autoDestroy=!!Gt.autoDestroy,this.destroyed=!1,this.defaultEncoding=Gt.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,Gt.encoding&&(St||(St=nt(8888).StringDecoder),this.decoder=new St(Gt.encoding),this.encoding=Gt.encoding)}function Ht(Gt){if(rt=rt||nt(1265),!(this instanceof Ht))return new Ht(Gt);var Xt=this instanceof rt;this._readableState=new $t(Gt,this,Xt),this.readable=!0,Gt&&(typeof Gt.read=="function"&&(this._read=Gt.read),typeof Gt.destroy=="function"&&(this._destroy=Gt.destroy)),ut.call(this)}function Nt(Gt,Xt,dn,Vn,Fn){st("readableAddChunk",Xt);var fn,Un=Gt._readableState;if(Xt===null)Un.reading=!1,function(Jn,_n){if(st("onEofChunk"),!_n.ended){if(_n.decoder){var Zn=_n.decoder.end();Zn&&Zn.length&&(_n.buffer.push(Zn),_n.length+=_n.objectMode?1:Zn.length)}_n.ended=!0,_n.sync?bt(Jn):(_n.needReadable=!1,_n.emittedReadable||(_n.emittedReadable=!0,Jt(Jn)))}}(Gt,Un);else if(Fn||(fn=function(Jn,_n){var Zn;On=_n,Ut.isBuffer(On)||On instanceof ot||typeof _n=="string"||_n===void 0||Jn.objectMode||(Zn=new Vt("chunk",["string","Buffer","Uint8Array"],_n));var On;return Zn}(Un,Xt)),fn)yt(Gt,fn);else if(Un.objectMode||Xt&&Xt.length>0)if(typeof Xt=="string"||Un.objectMode||Object.getPrototypeOf(Xt)===Ut.prototype||(Xt=function(Jn){return Ut.from(Jn)}(Xt)),Vn)Un.endEmitted?yt(Gt,new Wt):qt(Gt,Un,Xt,!0);else if(Un.ended)yt(Gt,new Tt);else{if(Un.destroyed)return!1;Un.reading=!1,Un.decoder&&!dn?(Xt=Un.decoder.write(Xt),Un.objectMode||Xt.length!==0?qt(Gt,Un,Xt,!1):wt(Gt,Un)):qt(Gt,Un,Xt,!1)}else Vn||(Un.reading=!1,wt(Gt,Un));return!Un.ended&&(Un.lengthXt.highWaterMark&&(Xt.highWaterMark=function(dn){return dn>=1073741824?dn=1073741824:(dn--,dn|=dn>>>1,dn|=dn>>>2,dn|=dn>>>4,dn|=dn>>>8,dn|=dn>>>16,dn++),dn}(Gt)),Gt<=Xt.length?Gt:Xt.ended?Xt.length:(Xt.needReadable=!0,0))}function bt(Gt){var Xt=Gt._readableState;st("emitReadable",Xt.needReadable,Xt.emittedReadable),Xt.needReadable=!1,Xt.emittedReadable||(st("emitReadable",Xt.flowing),Xt.emittedReadable=!0,process.nextTick(Jt,Gt))}function Jt(Gt){var Xt=Gt._readableState;st("emitReadable_",Xt.destroyed,Xt.length,Xt.ended),Xt.destroyed||!Xt.length&&!Xt.ended||(Gt.emit("readable"),Xt.emittedReadable=!1),Xt.needReadable=!Xt.flowing&&!Xt.ended&&Xt.length<=Xt.highWaterMark,sn(Gt)}function wt(Gt,Xt){Xt.readingMore||(Xt.readingMore=!0,process.nextTick(At,Gt,Xt))}function At(Gt,Xt){for(;!Xt.reading&&!Xt.ended&&(Xt.length0,Xt.resumeScheduled&&!Xt.paused?Xt.flowing=!0:Gt.listenerCount("data")>0&&Gt.resume()}function Mt(Gt){st("readable nexttick read 0"),Gt.read(0)}function nn(Gt,Xt){st("resume",Xt.reading),Xt.reading||Gt.read(0),Xt.resumeScheduled=!1,Gt.emit("resume"),sn(Gt),Xt.flowing&&!Xt.reading&&Gt.read(0)}function sn(Gt){var Xt=Gt._readableState;for(st("flow",Xt.flowing);Xt.flowing&&Gt.read()!==null;);}function Lt(Gt,Xt){return Xt.length===0?null:(Xt.objectMode?dn=Xt.buffer.shift():!Gt||Gt>=Xt.length?(dn=Xt.decoder?Xt.buffer.join(""):Xt.buffer.length===1?Xt.buffer.first():Xt.buffer.concat(Xt.length),Xt.buffer.clear()):dn=Xt.buffer.consume(Gt,Xt.decoder),dn);var dn}function tn(Gt){var Xt=Gt._readableState;st("endReadable",Xt.endEmitted),Xt.endEmitted||(Xt.ended=!0,process.nextTick(cn,Xt,Gt))}function cn(Gt,Xt){if(st("endReadableNT",Gt.endEmitted,Gt.length),!Gt.endEmitted&&Gt.length===0&&(Gt.endEmitted=!0,Xt.readable=!1,Xt.emit("end"),Gt.autoDestroy)){var dn=Xt._writableState;(!dn||dn.autoDestroy&&dn.finished)&&Xt.destroy()}}function on(Gt,Xt){for(var dn=0,Vn=Gt.length;dn=Xt.highWaterMark:Xt.length>0)||Xt.ended))return st("read: emitReadable",Xt.length,Xt.ended),Xt.length===0&&Xt.ended?tn(this):bt(this),null;if((Gt=kt(Gt,Xt))===0&&Xt.ended)return Xt.length===0&&tn(this),null;var Vn,Fn=Xt.needReadable;return st("need readable",Fn),(Xt.length===0||Xt.length-Gt0?Lt(Gt,Xt):null)===null?(Xt.needReadable=Xt.length<=Xt.highWaterMark,Gt=0):(Xt.length-=Gt,Xt.awaitDrain=0),Xt.length===0&&(Xt.ended||(Xt.needReadable=!0),dn!==Gt&&Xt.ended&&tn(this)),Vn!==null&&this.emit("data",Vn),Vn},Ht.prototype._read=function(Gt){yt(this,new ft("_read()"))},Ht.prototype.pipe=function(Gt,Xt){var dn=this,Vn=this._readableState;switch(Vn.pipesCount){case 0:Vn.pipes=Gt;break;case 1:Vn.pipes=[Vn.pipes,Gt];break;default:Vn.pipes.push(Gt)}Vn.pipesCount+=1,st("pipe count=%d opts=%j",Vn.pipesCount,Xt);var Fn=(!Xt||Xt.end!==!1)&&Gt!==process.stdout&&Gt!==process.stderr?Un:Ot;function fn(jt,pn){st("onunpipe"),jt===dn&&pn&&pn.hasUnpiped===!1&&(pn.hasUnpiped=!0,st("cleanup"),Gt.removeListener("close",Yn),Gt.removeListener("finish",_t),Gt.removeListener("drain",Jn),Gt.removeListener("error",On),Gt.removeListener("unpipe",fn),dn.removeListener("end",Un),dn.removeListener("end",Ot),dn.removeListener("data",Zn),_n=!0,!Vn.awaitDrain||Gt._writableState&&!Gt._writableState.needDrain||Jn())}function Un(){st("onend"),Gt.end()}Vn.endEmitted?process.nextTick(Fn):dn.once("end",Fn),Gt.on("unpipe",fn);var Jn=function(jt){return function(){var pn=jt._readableState;st("pipeOnDrain",pn.awaitDrain),pn.awaitDrain&&pn.awaitDrain--,pn.awaitDrain===0&<(jt,"data")&&(pn.flowing=!0,sn(jt))}}(dn);Gt.on("drain",Jn);var _n=!1;function Zn(jt){st("ondata");var pn=Gt.write(jt);st("dest.write",pn),pn===!1&&((Vn.pipesCount===1&&Vn.pipes===Gt||Vn.pipesCount>1&&on(Vn.pipes,Gt)!==-1)&&!_n&&(st("false write response, pause",Vn.awaitDrain),Vn.awaitDrain++),dn.pause())}function On(jt){st("onerror",jt),Ot(),Gt.removeListener("error",On),lt(Gt,"error")===0&&yt(Gt,jt)}function Yn(){Gt.removeListener("finish",_t),Ot()}function _t(){st("onfinish"),Gt.removeListener("close",Yn),Ot()}function Ot(){st("unpipe"),dn.unpipe(Gt)}return dn.on("data",Zn),function(jt,pn,En){if(typeof jt.prependListener=="function")return jt.prependListener(pn,En);jt._events&&jt._events[pn]?Array.isArray(jt._events[pn])?jt._events[pn].unshift(En):jt._events[pn]=[En,jt._events[pn]]:jt.on(pn,En)}(Gt,"error",On),Gt.once("close",Yn),Gt.once("finish",_t),Gt.emit("pipe",dn),Vn.flowing||(st("pipe resume"),dn.resume()),Gt},Ht.prototype.unpipe=function(Gt){var Xt=this._readableState,dn={hasUnpiped:!1};if(Xt.pipesCount===0)return this;if(Xt.pipesCount===1)return Gt&&Gt!==Xt.pipes||(Gt||(Gt=Xt.pipes),Xt.pipes=null,Xt.pipesCount=0,Xt.flowing=!1,Gt&&Gt.emit("unpipe",this,dn)),this;if(!Gt){var Vn=Xt.pipes,Fn=Xt.pipesCount;Xt.pipes=null,Xt.pipesCount=0,Xt.flowing=!1;for(var fn=0;fn0,Vn.flowing!==!1&&this.resume()):Gt==="readable"&&(Vn.endEmitted||Vn.readableListening||(Vn.readableListening=Vn.needReadable=!0,Vn.flowing=!1,Vn.emittedReadable=!1,st("on readable",Vn.length,Vn.reading),Vn.length?bt(this):Vn.reading||process.nextTick(Mt,this))),dn},Ht.prototype.addListener=Ht.prototype.on,Ht.prototype.removeListener=function(Gt,Xt){var dn=ut.prototype.removeListener.call(this,Gt,Xt);return Gt==="readable"&&process.nextTick(Ct,this),dn},Ht.prototype.removeAllListeners=function(Gt){var Xt=ut.prototype.removeAllListeners.apply(this,arguments);return Gt!=="readable"&&Gt!==void 0||process.nextTick(Ct,this),Xt},Ht.prototype.resume=function(){var Gt=this._readableState;return Gt.flowing||(st("resume"),Gt.flowing=!Gt.readableListening,function(Xt,dn){dn.resumeScheduled||(dn.resumeScheduled=!0,process.nextTick(nn,Xt,dn))}(this,Gt)),Gt.paused=!1,this},Ht.prototype.pause=function(){return st("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(st("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},Ht.prototype.wrap=function(Gt){var Xt=this,dn=this._readableState,Vn=!1;for(var Fn in Gt.on("end",function(){if(st("wrapped end"),dn.decoder&&!dn.ended){var Un=dn.decoder.end();Un&&Un.length&&Xt.push(Un)}Xt.push(null)}),Gt.on("data",function(Un){st("wrapped data"),dn.decoder&&(Un=dn.decoder.write(Un)),dn.objectMode&&Un==null||(dn.objectMode||Un&&Un.length)&&(Xt.push(Un)||(Vn=!0,Gt.pause()))}),Gt)this[Fn]===void 0&&typeof Gt[Fn]=="function"&&(this[Fn]=function(Un){return function(){return Gt[Un].apply(Gt,arguments)}}(Fn));for(var fn=0;fn{et.exports=St;var rt=nt(5699).F,lt=rt.ERR_METHOD_NOT_IMPLEMENTED,ut=rt.ERR_MULTIPLE_CALLBACK,Ut=rt.ERR_TRANSFORM_ALREADY_TRANSFORMING,ot=rt.ERR_TRANSFORM_WITH_LENGTH_0,st=nt(1265);function dt(Bt,ht){var mt=this._transformState;mt.transforming=!1;var gt=mt.writecb;if(gt===null)return this.emit("error",new ut);mt.writechunk=null,mt.writecb=null,ht!=null&&this.push(ht),gt(Bt);var Vt=this._readableState;Vt.reading=!1,(Vt.needReadable||Vt.length{function rt(At){var Ct=this;this.next=null,this.entry=null,this.finish=function(){(function(Mt,nn,sn){var Lt=Mt.entry;for(Mt.entry=null;Lt;){var tn=Lt.callback;nn.pendingcb--,tn(sn),Lt=Lt.next}nn.corkedRequestsFree.next=Mt})(Ct,At)}}var lt;et.exports=Ht,Ht.WritableState=$t;var ut={deprecate:nt(6732)},Ut=nt(4856),ot=nt(1048).Buffer,st=(nt.g!==void 0?nt.g:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},dt,St=nt(6527),pt=nt(9952).getHighWaterMark,Rt=nt(5699).F,Bt=Rt.ERR_INVALID_ARG_TYPE,ht=Rt.ERR_METHOD_NOT_IMPLEMENTED,mt=Rt.ERR_MULTIPLE_CALLBACK,gt=Rt.ERR_STREAM_CANNOT_PIPE,Vt=Rt.ERR_STREAM_DESTROYED,Tt=Rt.ERR_STREAM_NULL_VALUES,ft=Rt.ERR_STREAM_WRITE_AFTER_END,Wt=Rt.ERR_UNKNOWN_ENCODING,yt=St.errorOrDestroy;function Kt(){}function $t(At,Ct,Mt){lt=lt||nt(1265),At=At||{},typeof Mt!="boolean"&&(Mt=Ct instanceof lt),this.objectMode=!!At.objectMode,Mt&&(this.objectMode=this.objectMode||!!At.writableObjectMode),this.highWaterMark=pt(this,At,"writableHighWaterMark",Mt),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var nn=At.decodeStrings===!1;this.decodeStrings=!nn,this.defaultEncoding=At.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(sn){(function(Lt,tn){var cn=Lt._writableState,on=cn.sync,Gt=cn.writecb;if(typeof Gt!="function")throw new mt;if(function(dn){dn.writing=!1,dn.writecb=null,dn.length-=dn.writelen,dn.writelen=0}(cn),tn)(function(dn,Vn,Fn,fn,Un){--Vn.pendingcb,Fn?(process.nextTick(Un,fn),process.nextTick(wt,dn,Vn),dn._writableState.errorEmitted=!0,yt(dn,fn)):(Un(fn),dn._writableState.errorEmitted=!0,yt(dn,fn),wt(dn,Vn))})(Lt,cn,on,tn,Gt);else{var Xt=bt(cn)||Lt.destroyed;Xt||cn.corked||cn.bufferProcessing||!cn.bufferedRequest||kt(Lt,cn),on?process.nextTick(qt,Lt,cn,Xt,Gt):qt(Lt,cn,Xt,Gt)}})(Ct,sn)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=At.emitClose!==!1,this.autoDestroy=!!At.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new rt(this)}function Ht(At){var Ct=this instanceof(lt=lt||nt(1265));if(!Ct&&!dt.call(Ht,this))return new Ht(At);this._writableState=new $t(At,this,Ct),this.writable=!0,At&&(typeof At.write=="function"&&(this._write=At.write),typeof At.writev=="function"&&(this._writev=At.writev),typeof At.destroy=="function"&&(this._destroy=At.destroy),typeof At.final=="function"&&(this._final=At.final)),Ut.call(this)}function Nt(At,Ct,Mt,nn,sn,Lt,tn){Ct.writelen=nn,Ct.writecb=tn,Ct.writing=!0,Ct.sync=!0,Ct.destroyed?Ct.onwrite(new Vt("write")):Mt?At._writev(sn,Ct.onwrite):At._write(sn,Lt,Ct.onwrite),Ct.sync=!1}function qt(At,Ct,Mt,nn){Mt||function(sn,Lt){Lt.length===0&&Lt.needDrain&&(Lt.needDrain=!1,sn.emit("drain"))}(At,Ct),Ct.pendingcb--,nn(),wt(At,Ct)}function kt(At,Ct){Ct.bufferProcessing=!0;var Mt=Ct.bufferedRequest;if(At._writev&&Mt&&Mt.next){var nn=Ct.bufferedRequestCount,sn=new Array(nn),Lt=Ct.corkedRequestsFree;Lt.entry=Mt;for(var tn=0,cn=!0;Mt;)sn[tn]=Mt,Mt.isBuf||(cn=!1),Mt=Mt.next,tn+=1;sn.allBuffers=cn,Nt(At,Ct,!0,Ct.length,sn,"",Lt.finish),Ct.pendingcb++,Ct.lastBufferedRequest=null,Lt.next?(Ct.corkedRequestsFree=Lt.next,Lt.next=null):Ct.corkedRequestsFree=new rt(Ct),Ct.bufferedRequestCount=0}else{for(;Mt;){var on=Mt.chunk,Gt=Mt.encoding,Xt=Mt.callback;if(Nt(At,Ct,!1,Ct.objectMode?1:on.length,on,Gt,Xt),Mt=Mt.next,Ct.bufferedRequestCount--,Ct.writing)break}Mt===null&&(Ct.lastBufferedRequest=null)}Ct.bufferedRequest=Mt,Ct.bufferProcessing=!1}function bt(At){return At.ending&&At.length===0&&At.bufferedRequest===null&&!At.finished&&!At.writing}function Jt(At,Ct){At._final(function(Mt){Ct.pendingcb--,Mt&&yt(At,Mt),Ct.prefinished=!0,At.emit("prefinish"),wt(At,Ct)})}function wt(At,Ct){var Mt=bt(Ct);if(Mt&&(function(sn,Lt){Lt.prefinished||Lt.finalCalled||(typeof sn._final!="function"||Lt.destroyed?(Lt.prefinished=!0,sn.emit("prefinish")):(Lt.pendingcb++,Lt.finalCalled=!0,process.nextTick(Jt,sn,Lt)))}(At,Ct),Ct.pendingcb===0&&(Ct.finished=!0,At.emit("finish"),Ct.autoDestroy))){var nn=At._readableState;(!nn||nn.autoDestroy&&nn.endEmitted)&&At.destroy()}return Mt}nt(5615)(Ht,Ut),$t.prototype.getBuffer=function(){for(var At=this.bufferedRequest,Ct=[];At;)Ct.push(At),At=At.next;return Ct},function(){try{Object.defineProperty($t.prototype,"buffer",{get:ut.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"?(dt=Function.prototype[Symbol.hasInstance],Object.defineProperty(Ht,Symbol.hasInstance,{value:function(At){return!!dt.call(this,At)||this===Ht&&At&&At._writableState instanceof $t}})):dt=function(At){return At instanceof this},Ht.prototype.pipe=function(){yt(this,new gt)},Ht.prototype.write=function(At,Ct,Mt){var nn,sn=this._writableState,Lt=!1,tn=!sn.objectMode&&(nn=At,ot.isBuffer(nn)||nn instanceof st);return tn&&!ot.isBuffer(At)&&(At=function(cn){return ot.from(cn)}(At)),typeof Ct=="function"&&(Mt=Ct,Ct=null),tn?Ct="buffer":Ct||(Ct=sn.defaultEncoding),typeof Mt!="function"&&(Mt=Kt),sn.ending?function(cn,on){var Gt=new ft;yt(cn,Gt),process.nextTick(on,Gt)}(this,Mt):(tn||function(cn,on,Gt,Xt){var dn;return Gt===null?dn=new Tt:typeof Gt=="string"||on.objectMode||(dn=new Bt("chunk",["string","Buffer"],Gt)),!dn||(yt(cn,dn),process.nextTick(Xt,dn),!1)}(this,sn,At,Mt))&&(sn.pendingcb++,Lt=function(cn,on,Gt,Xt,dn,Vn){if(!Gt){var Fn=function(_n,Zn,On){return _n.objectMode||_n.decodeStrings===!1||typeof Zn!="string"||(Zn=ot.from(Zn,On)),Zn}(on,Xt,dn);Xt!==Fn&&(Gt=!0,dn="buffer",Xt=Fn)}var fn=on.objectMode?1:Xt.length;on.length+=fn;var Un=on.length-1))throw new Wt(At);return this._writableState.defaultEncoding=At,this},Object.defineProperty(Ht.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(Ht.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Ht.prototype._write=function(At,Ct,Mt){Mt(new ht("_write()"))},Ht.prototype._writev=null,Ht.prototype.end=function(At,Ct,Mt){var nn=this._writableState;return typeof At=="function"?(Mt=At,At=null,Ct=null):typeof Ct=="function"&&(Mt=Ct,Ct=null),At!=null&&this.write(At,Ct),nn.corked&&(nn.corked=1,this.uncork()),nn.ending||function(sn,Lt,tn){Lt.ending=!0,wt(sn,Lt),tn&&(Lt.finished?process.nextTick(tn):sn.once("finish",tn)),Lt.ended=!0,sn.writable=!1}(this,nn,Mt),this},Object.defineProperty(Ht.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(Ht.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(At){this._writableState&&(this._writableState.destroyed=At)}}),Ht.prototype.destroy=St.destroy,Ht.prototype._undestroy=St.undestroy,Ht.prototype._destroy=function(At,Ct){Ct(At)}},534:(et,tt,nt)=>{var rt;function lt(Tt,ft,Wt){return(ft=function(yt){var Kt=function($t,Ht){if(typeof $t!="object"||$t===null)return $t;var Nt=$t[Symbol.toPrimitive];if(Nt!==void 0){var qt=Nt.call($t,Ht||"default");if(typeof qt!="object")return qt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Ht==="string"?String:Number)($t)}(yt,"string");return typeof Kt=="symbol"?Kt:String(Kt)}(ft))in Tt?Object.defineProperty(Tt,ft,{value:Wt,enumerable:!0,configurable:!0,writable:!0}):Tt[ft]=Wt,Tt}var ut=nt(4869),Ut=Symbol("lastResolve"),ot=Symbol("lastReject"),st=Symbol("error"),dt=Symbol("ended"),St=Symbol("lastPromise"),pt=Symbol("handlePromise"),Rt=Symbol("stream");function Bt(Tt,ft){return{value:Tt,done:ft}}function ht(Tt){var ft=Tt[Ut];if(ft!==null){var Wt=Tt[Rt].read();Wt!==null&&(Tt[St]=null,Tt[Ut]=null,Tt[ot]=null,ft(Bt(Wt,!1)))}}function mt(Tt){process.nextTick(ht,Tt)}var gt=Object.getPrototypeOf(function(){}),Vt=Object.setPrototypeOf((lt(rt={get stream(){return this[Rt]},next:function(){var Tt=this,ft=this[st];if(ft!==null)return Promise.reject(ft);if(this[dt])return Promise.resolve(Bt(void 0,!0));if(this[Rt].destroyed)return new Promise(function($t,Ht){process.nextTick(function(){Tt[st]?Ht(Tt[st]):$t(Bt(void 0,!0))})});var Wt,yt=this[St];if(yt)Wt=new Promise(function($t,Ht){return function(Nt,qt){$t.then(function(){Ht[dt]?Nt(Bt(void 0,!0)):Ht[pt](Nt,qt)},qt)}}(yt,this));else{var Kt=this[Rt].read();if(Kt!==null)return Promise.resolve(Bt(Kt,!1));Wt=new Promise(this[pt])}return this[St]=Wt,Wt}},Symbol.asyncIterator,function(){return this}),lt(rt,"return",function(){var Tt=this;return new Promise(function(ft,Wt){Tt[Rt].destroy(null,function(yt){yt?Wt(yt):ft(Bt(void 0,!0))})})}),rt),gt);et.exports=function(Tt){var ft,Wt=Object.create(Vt,(lt(ft={},Rt,{value:Tt,writable:!0}),lt(ft,Ut,{value:null,writable:!0}),lt(ft,ot,{value:null,writable:!0}),lt(ft,st,{value:null,writable:!0}),lt(ft,dt,{value:Tt._readableState.endEmitted,writable:!0}),lt(ft,pt,{value:function(yt,Kt){var $t=Wt[Rt].read();$t?(Wt[St]=null,Wt[Ut]=null,Wt[ot]=null,yt(Bt($t,!1))):(Wt[Ut]=yt,Wt[ot]=Kt)},writable:!0}),ft));return Wt[St]=null,ut(Tt,function(yt){if(yt&&yt.code!=="ERR_STREAM_PREMATURE_CLOSE"){var Kt=Wt[ot];return Kt!==null&&(Wt[St]=null,Wt[Ut]=null,Wt[ot]=null,Kt(yt)),void(Wt[st]=yt)}var $t=Wt[Ut];$t!==null&&(Wt[St]=null,Wt[Ut]=null,Wt[ot]=null,$t(Bt(void 0,!0))),Wt[dt]=!0}),Tt.on("readable",mt.bind(null,Wt)),Wt}},82:(et,tt,nt)=>{function rt(pt,Rt){var Bt=Object.keys(pt);if(Object.getOwnPropertySymbols){var ht=Object.getOwnPropertySymbols(pt);Rt&&(ht=ht.filter(function(mt){return Object.getOwnPropertyDescriptor(pt,mt).enumerable})),Bt.push.apply(Bt,ht)}return Bt}function lt(pt){for(var Rt=1;Rt0?this.tail.next=mt:this.head=mt,this.tail=mt,++this.length}},{key:"unshift",value:function(ht){var mt={data:ht,next:this.head};this.length===0&&(this.tail=mt),this.head=mt,++this.length}},{key:"shift",value:function(){if(this.length!==0){var ht=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,ht}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(ht){if(this.length===0)return"";for(var mt=this.head,gt=""+mt.data;mt=mt.next;)gt+=ht+mt.data;return gt}},{key:"concat",value:function(ht){if(this.length===0)return st.alloc(0);for(var mt,gt,Vt,Tt=st.allocUnsafe(ht>>>0),ft=this.head,Wt=0;ft;)mt=ft.data,gt=Tt,Vt=Wt,st.prototype.copy.call(mt,gt,Vt),Wt+=ft.data.length,ft=ft.next;return Tt}},{key:"consume",value:function(ht,mt){var gt;return htTt.length?Tt.length:ht;if(ft===Tt.length?Vt+=Tt:Vt+=Tt.slice(0,ht),(ht-=ft)==0){ft===Tt.length?(++gt,mt.next?this.head=mt.next:this.head=this.tail=null):(this.head=mt,mt.data=Tt.slice(ft));break}++gt}return this.length-=gt,Vt}},{key:"_getBuffer",value:function(ht){var mt=st.allocUnsafe(ht),gt=this.head,Vt=1;for(gt.data.copy(mt),ht-=gt.data.length;gt=gt.next;){var Tt=gt.data,ft=ht>Tt.length?Tt.length:ht;if(Tt.copy(mt,mt.length-ht,0,ft),(ht-=ft)==0){ft===Tt.length?(++Vt,gt.next?this.head=gt.next:this.head=this.tail=null):(this.head=gt,gt.data=Tt.slice(ft));break}++Vt}return this.length-=Vt,mt}},{key:St,value:function(ht,mt){return dt(this,lt(lt({},mt),{},{depth:0,customInspect:!1}))}}])&&Ut(Rt.prototype,Bt),Object.defineProperty(Rt,"prototype",{writable:!1}),pt}()},6527:et=>{function tt(lt,ut){rt(lt,ut),nt(lt)}function nt(lt){lt._writableState&&!lt._writableState.emitClose||lt._readableState&&!lt._readableState.emitClose||lt.emit("close")}function rt(lt,ut){lt.emit("error",ut)}et.exports={destroy:function(lt,ut){var Ut=this,ot=this._readableState&&this._readableState.destroyed,st=this._writableState&&this._writableState.destroyed;return ot||st?(ut?ut(lt):lt&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(rt,this,lt)):process.nextTick(rt,this,lt)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(lt||null,function(dt){!ut&&dt?Ut._writableState?Ut._writableState.errorEmitted?process.nextTick(nt,Ut):(Ut._writableState.errorEmitted=!0,process.nextTick(tt,Ut,dt)):process.nextTick(tt,Ut,dt):ut?(process.nextTick(nt,Ut),ut(dt)):process.nextTick(nt,Ut)}),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(lt,ut){var Ut=lt._readableState,ot=lt._writableState;Ut&&Ut.autoDestroy||ot&&ot.autoDestroy?lt.destroy(ut):lt.emit("error",ut)}}},4869:(et,tt,nt)=>{var rt=nt(5699).F.ERR_STREAM_PREMATURE_CLOSE;function lt(){}et.exports=function ut(Ut,ot,st){if(typeof ot=="function")return ut(Ut,null,ot);ot||(ot={}),st=function(ft){var Wt=!1;return function(){if(!Wt){Wt=!0;for(var yt=arguments.length,Kt=new Array(yt),$t=0;$t{et.exports=function(){throw new Error("Readable.from is not available in the browser")}},6815:(et,tt,nt)=>{var rt,lt=nt(5699).F,ut=lt.ERR_MISSING_ARGS,Ut=lt.ERR_STREAM_DESTROYED;function ot(Rt){if(Rt)throw Rt}function st(Rt,Bt,ht,mt){mt=function(Tt){var ft=!1;return function(){ft||(ft=!0,Tt.apply(void 0,arguments))}}(mt);var gt=!1;Rt.on("close",function(){gt=!0}),rt===void 0&&(rt=nt(4869)),rt(Rt,{readable:Bt,writable:ht},function(Tt){if(Tt)return mt(Tt);gt=!0,mt()});var Vt=!1;return function(Tt){if(!gt&&!Vt)return Vt=!0,function(ft){return ft.setHeader&&typeof ft.abort=="function"}(Rt)?Rt.abort():typeof Rt.destroy=="function"?Rt.destroy():void mt(Tt||new Ut("pipe"))}}function dt(Rt){Rt()}function St(Rt,Bt){return Rt.pipe(Bt)}function pt(Rt){return Rt.length?typeof Rt[Rt.length-1]!="function"?ot:Rt.pop():ot}et.exports=function(){for(var Rt=arguments.length,Bt=new Array(Rt),ht=0;ht0,function(yt){mt||(mt=yt),yt&&Vt.forEach(dt),Wt||(Vt.forEach(dt),gt(mt))})});return Bt.reduce(St)}},9952:(et,tt,nt)=>{var rt=nt(5699).F.ERR_INVALID_OPT_VALUE;et.exports={getHighWaterMark:function(lt,ut,Ut,ot){var st=function(dt,St,pt){return dt.highWaterMark!=null?dt.highWaterMark:St?dt[pt]:null}(ut,ot,Ut);if(st!=null){if(!isFinite(st)||Math.floor(st)!==st||st<0)throw new rt(ot?Ut:"highWaterMark",st);return Math.floor(st)}return lt.objectMode?16:16384}}},4856:(et,tt,nt)=>{et.exports=nt(46).EventEmitter},4156:(et,tt,nt)=>{(tt=et.exports=nt(8199)).Stream=tt,tt.Readable=tt,tt.Writable=nt(5291),tt.Duplex=nt(1265),tt.Transform=nt(9415),tt.PassThrough=nt(4421),tt.finished=nt(4869),tt.pipeline=nt(6815)},5636:(et,tt,nt)=>{var rt=nt(1048),lt=rt.Buffer;function ut(ot,st){for(var dt in ot)st[dt]=ot[dt]}function Ut(ot,st,dt){return lt(ot,st,dt)}lt.from&<.alloc&<.allocUnsafe&<.allocUnsafeSlow?et.exports=rt:(ut(rt,tt),tt.Buffer=Ut),Ut.prototype=Object.create(lt.prototype),ut(lt,Ut),Ut.from=function(ot,st,dt){if(typeof ot=="number")throw new TypeError("Argument must not be a number");return lt(ot,st,dt)},Ut.alloc=function(ot,st,dt){if(typeof ot!="number")throw new TypeError("Argument must be a number");var St=lt(ot);return st!==void 0?typeof dt=="string"?St.fill(st,dt):St.fill(st):St.fill(0),St},Ut.allocUnsafe=function(ot){if(typeof ot!="number")throw new TypeError("Argument must be a number");return lt(ot)},Ut.allocUnsafeSlow=function(ot){if(typeof ot!="number")throw new TypeError("Argument must be a number");return rt.SlowBuffer(ot)}},1145:(et,tt)=>{const{hasOwnProperty:nt}=Object.prototype,rt=ht();rt.configure=ht,rt.stringify=rt,rt.default=rt,tt.stringify=rt,tt.configure=ht,et.exports=rt;const lt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]|[\ud800-\udbff](?![\udc00-\udfff])|(?:[^\ud800-\udbff]|^)[\udc00-\udfff]/;function ut(mt){return mt.length<5e3&&!lt.test(mt)?`"${mt}"`:JSON.stringify(mt)}function Ut(mt){if(mt.length>200)return mt.sort();for(let gt=1;gtVt;)mt[Tt]=mt[Tt-1],Tt--;mt[Tt]=Vt}return mt}const ot=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function st(mt){return ot.call(mt)!==void 0&&mt.length!==0}function dt(mt,gt,Vt){mt.length= 1`)}return Vt===void 0?1/0:Vt}function Rt(mt){return mt===1?"1 item":mt+" items"}function Bt(mt){const gt=new Set;for(const Vt of mt)typeof Vt!="string"&&typeof Vt!="number"||gt.add(String(Vt));return gt}function ht(mt){const gt=function(qt){if(nt.call(qt,"strict")){const kt=qt.strict;if(typeof kt!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(kt)return bt=>{let Jt="Object can not safely be stringified. Received type "+typeof bt;throw typeof bt!="function"&&(Jt+=` (${bt.toString()})`),new Error(Jt)}}}(mt={...mt});gt&&(mt.bigint===void 0&&(mt.bigint=!1),"circularValue"in mt||(mt.circularValue=Error));const Vt=function(qt){if(nt.call(qt,"circularValue")){const kt=qt.circularValue;if(typeof kt=="string")return`"${kt}"`;if(kt==null)return kt;if(kt===Error||kt===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]"'}(mt),Tt=St(mt,"bigint"),ft=St(mt,"deterministic"),Wt=pt(mt,"maximumDepth"),yt=pt(mt,"maximumBreadth");function Kt(qt,kt,bt,Jt,wt,At){let Ct=kt[qt];switch(typeof Ct=="object"&&Ct!==null&&typeof Ct.toJSON=="function"&&(Ct=Ct.toJSON(qt)),Ct=Jt.call(kt,qt,Ct),typeof Ct){case"string":return ut(Ct);case"object":{if(Ct===null)return"null";if(bt.indexOf(Ct)!==-1)return Vt;let Mt="",nn=",";const sn=At;if(Array.isArray(Ct)){if(Ct.length===0)return"[]";if(Wtyt&&(Mt+=`${nn}"... ${Rt(Ct.length-yt-1)} not stringified"`),wt!==""&&(Mt+=` +`+sn),bt.pop(),`[${Mt}]`}let Lt=Object.keys(Ct);const tn=Lt.length;if(tn===0)return"{}";if(Wtyt&&(Mt+=`${on}"...":${cn}"${Rt(tn-yt)} not stringified"`,on=nn),wt!==""&&on.length>1&&(Mt=` +${At}${Mt} +${sn}`),bt.pop(),`{${Mt}}`}case"number":return isFinite(Ct)?String(Ct):gt?gt(Ct):"null";case"boolean":return Ct===!0?"true":"false";case"undefined":return;case"bigint":if(Tt)return String(Ct);default:return gt?gt(Ct):void 0}}function $t(qt,kt,bt,Jt,wt,At){switch(typeof kt=="object"&&kt!==null&&typeof kt.toJSON=="function"&&(kt=kt.toJSON(qt)),typeof kt){case"string":return ut(kt);case"object":{if(kt===null)return"null";if(bt.indexOf(kt)!==-1)return Vt;const Ct=At;let Mt="",nn=",";if(Array.isArray(kt)){if(kt.length===0)return"[]";if(Wtyt&&(Mt+=`${nn}"... ${Rt(kt.length-yt-1)} not stringified"`),wt!==""&&(Mt+=` +`+Ct),bt.pop(),`[${Mt}]`}bt.push(kt);let sn="";wt!==""&&(nn=`, +`+(At+=wt),sn=" ");let Lt="";for(const tn of Jt){const cn=$t(tn,kt[tn],bt,Jt,wt,At);cn!==void 0&&(Mt+=`${Lt}${ut(tn)}:${sn}${cn}`,Lt=nn)}return wt!==""&&Lt.length>1&&(Mt=` +${At}${Mt} +${Ct}`),bt.pop(),`{${Mt}}`}case"number":return isFinite(kt)?String(kt):gt?gt(kt):"null";case"boolean":return kt===!0?"true":"false";case"undefined":return;case"bigint":if(Tt)return String(kt);default:return gt?gt(kt):void 0}}function Ht(qt,kt,bt,Jt,wt){switch(typeof kt){case"string":return ut(kt);case"object":{if(kt===null)return"null";if(typeof kt.toJSON=="function"){if(typeof(kt=kt.toJSON(qt))!="object")return Ht(qt,kt,bt,Jt,wt);if(kt===null)return"null"}if(bt.indexOf(kt)!==-1)return Vt;const At=wt;if(Array.isArray(kt)){if(kt.length===0)return"[]";if(Wtyt&&(cn+=`${on}"... ${Rt(kt.length-yt-1)} not stringified"`),cn+=` +`+At,bt.pop(),`[${cn}]`}let Ct=Object.keys(kt);const Mt=Ct.length;if(Mt===0)return"{}";if(Wtyt&&(sn+=`${Lt}"...": "${Rt(Mt-yt)} not stringified"`,Lt=nn),Lt!==""&&(sn=` +${wt}${sn} +${At}`),bt.pop(),`{${sn}}`}case"number":return isFinite(kt)?String(kt):gt?gt(kt):"null";case"boolean":return kt===!0?"true":"false";case"undefined":return;case"bigint":if(Tt)return String(kt);default:return gt?gt(kt):void 0}}function Nt(qt,kt,bt){switch(typeof kt){case"string":return ut(kt);case"object":{if(kt===null)return"null";if(typeof kt.toJSON=="function"){if(typeof(kt=kt.toJSON(qt))!="object")return Nt(qt,kt,bt);if(kt===null)return"null"}if(bt.indexOf(kt)!==-1)return Vt;let Jt="";if(Array.isArray(kt)){if(kt.length===0)return"[]";if(Wtyt&&(Jt+=`,"... ${Rt(kt.length-yt-1)} not stringified"`),bt.pop(),`[${Jt}]`}let wt=Object.keys(kt);const At=wt.length;if(At===0)return"{}";if(Wtyt&&(Jt+=`${Ct}"...":"${Rt(At-yt)} not stringified"`),bt.pop(),`{${Jt}}`}case"number":return isFinite(kt)?String(kt):gt?gt(kt):"null";case"boolean":return kt===!0?"true":"false";case"undefined":return;case"bigint":if(Tt)return String(kt);default:return gt?gt(kt):void 0}}return function(qt,kt,bt){if(arguments.length>1){let Jt="";if(typeof bt=="number"?Jt=" ".repeat(Math.min(bt,10)):typeof bt=="string"&&(Jt=bt.slice(0,10)),kt!=null){if(typeof kt=="function")return Kt("",{"":qt},[],kt,Jt,"");if(Array.isArray(kt))return $t("",qt,[],Bt(kt),Jt,"")}if(Jt.length!==0)return Ht("",qt,[],Jt,"")}return Nt("",qt,[])}}},6108:(et,tt,nt)=>{var rt=nt(528),lt=nt(686),ut=nt(7239)(),Ut=nt(9336),ot=nt(3468),st=rt("%Math.floor%");et.exports=function(dt,St){if(typeof dt!="function")throw new ot("`fn` is not a function");if(typeof St!="number"||St<0||St>4294967295||st(St)!==St)throw new ot("`length` must be a positive 32-bit integer");var pt=arguments.length>2&&!!arguments[2],Rt=!0,Bt=!0;if("length"in dt&&Ut){var ht=Ut(dt,"length");ht&&!ht.configurable&&(Rt=!1),ht&&!ht.writable&&(Bt=!1)}return(Rt||Bt||!pt)&&(ut?lt(dt,"length",St,!0,!0):lt(dt,"length",St)),dt}},7575:(et,tt,nt)=>{var rt=nt(528),lt=nt(9818),ut=nt(8660),Ut=nt(3468),ot=rt("%WeakMap%",!0),st=rt("%Map%",!0),dt=lt("WeakMap.prototype.get",!0),St=lt("WeakMap.prototype.set",!0),pt=lt("WeakMap.prototype.has",!0),Rt=lt("Map.prototype.get",!0),Bt=lt("Map.prototype.set",!0),ht=lt("Map.prototype.has",!0),mt=function(gt,Vt){for(var Tt,ft=gt;(Tt=ft.next)!==null;ft=Tt)if(Tt.key===Vt)return ft.next=Tt.next,Tt.next=gt.next,gt.next=Tt,Tt};et.exports=function(){var gt,Vt,Tt,ft={assert:function(Wt){if(!ft.has(Wt))throw new Ut("Side channel does not contain "+ut(Wt))},get:function(Wt){if(ot&&Wt&&(typeof Wt=="object"||typeof Wt=="function")){if(gt)return dt(gt,Wt)}else if(st){if(Vt)return Rt(Vt,Wt)}else if(Tt)return function(yt,Kt){var $t=mt(yt,Kt);return $t&&$t.value}(Tt,Wt)},has:function(Wt){if(ot&&Wt&&(typeof Wt=="object"||typeof Wt=="function")){if(gt)return pt(gt,Wt)}else if(st){if(Vt)return ht(Vt,Wt)}else if(Tt)return function(yt,Kt){return!!mt(yt,Kt)}(Tt,Wt);return!1},set:function(Wt,yt){ot&&Wt&&(typeof Wt=="object"||typeof Wt=="function")?(gt||(gt=new ot),St(gt,Wt,yt)):st?(Vt||(Vt=new st),Bt(Vt,Wt,yt)):(Tt||(Tt={key:{},next:null}),function(Kt,$t,Ht){var Nt=mt(Kt,$t);Nt?Nt.value=Ht:Kt.next={key:$t,next:Kt.next,value:Ht}}(Tt,Wt,yt))}};return ft}},5082:(et,tt)=>{function nt(rt){for(var lt in rt)this[lt]=rt[lt]}tt.get=function(rt){var lt=Error.stackTraceLimit;Error.stackTraceLimit=1/0;var ut={},Ut=Error.prepareStackTrace;Error.prepareStackTrace=function(st,dt){return dt},Error.captureStackTrace(ut,rt||tt.get);var ot=ut.stack;return Error.prepareStackTrace=Ut,Error.stackTraceLimit=lt,ot},tt.parse=function(rt){if(!rt.stack)return[];var lt=this;return rt.stack.split(` +`).slice(1).map(function(ut){if(ut.match(/^\s*[-]{4,}$/))return lt._createParsedCallSite({fileName:ut,lineNumber:null,functionName:null,typeName:null,methodName:null,columnNumber:null,native:null});var Ut=ut.match(/at (?:(.+)\s+\()?(?:(.+?):(\d+)(?::(\d+))?|([^)]+))\)?/);if(Ut){var ot=null,st=null,dt=null,St=null,pt=null,Rt=Ut[5]==="native";if(Ut[1]){var Bt=(dt=Ut[1]).lastIndexOf(".");if(dt[Bt-1]=="."&&Bt--,Bt>0){ot=dt.substr(0,Bt),st=dt.substr(Bt+1);var ht=ot.indexOf(".Module");ht>0&&(dt=dt.substr(ht+1),ot=ot.substr(0,ht))}St=null}st&&(St=ot,pt=st),st===""&&(pt=null,dt=null);var mt={fileName:Ut[2]||null,lineNumber:parseInt(Ut[3],10)||null,functionName:dt,typeName:St,methodName:pt,columnNumber:parseInt(Ut[4],10)||null,native:Rt};return lt._createParsedCallSite(mt)}}).filter(function(ut){return!!ut})},["this","typeName","functionName","methodName","fileName","lineNumber","columnNumber","function","evalOrigin"].forEach(function(rt){nt.prototype[rt]=null,nt.prototype["get"+rt[0].toUpperCase()+rt.substr(1)]=function(){return this[rt]}}),["topLevel","eval","native","constructor"].forEach(function(rt){nt.prototype[rt]=!1,nt.prototype["is"+rt[0].toUpperCase()+rt.substr(1)]=function(){return this[rt]}}),tt._createParsedCallSite=function(rt){return new nt(rt)}},1983:(et,tt,nt)=>{et.exports=lt;var rt=nt(46).EventEmitter;function lt(){rt.call(this)}nt(5615)(lt,rt),lt.Readable=nt(8199),lt.Writable=nt(5291),lt.Duplex=nt(1265),lt.Transform=nt(9415),lt.PassThrough=nt(4421),lt.finished=nt(4869),lt.pipeline=nt(6815),lt.Stream=lt,lt.prototype.pipe=function(ut,Ut){var ot=this;function st(mt){ut.writable&&ut.write(mt)===!1&&ot.pause&&ot.pause()}function dt(){ot.readable&&ot.resume&&ot.resume()}ot.on("data",st),ut.on("drain",dt),ut._isStdio||Ut&&Ut.end===!1||(ot.on("end",pt),ot.on("close",Rt));var St=!1;function pt(){St||(St=!0,ut.end())}function Rt(){St||(St=!0,typeof ut.destroy=="function"&&ut.destroy())}function Bt(mt){if(ht(),rt.listenerCount(this,"error")===0)throw mt}function ht(){ot.removeListener("data",st),ut.removeListener("drain",dt),ot.removeListener("end",pt),ot.removeListener("close",Rt),ot.removeListener("error",Bt),ut.removeListener("error",Bt),ot.removeListener("end",ht),ot.removeListener("close",ht),ut.removeListener("close",ht)}return ot.on("error",Bt),ut.on("error",Bt),ot.on("end",ht),ot.on("close",ht),ut.on("close",ht),ut.emit("pipe",ot),ut}},4865:(et,tt,nt)=>{var rt=nt(6255),lt=nt(6846),ut=nt(3227),Ut=nt(49),ot=nt(5442),st=tt;st.request=function(dt,St){dt=typeof dt=="string"?ot.parse(dt):ut(dt);var pt=nt.g.location.protocol.search(/^https?:$/)===-1?"http:":"",Rt=dt.protocol||pt,Bt=dt.hostname||dt.host,ht=dt.port,mt=dt.path||"/";Bt&&Bt.indexOf(":")!==-1&&(Bt="["+Bt+"]"),dt.url=(Bt?Rt+"//"+Bt:"")+(ht?":"+ht:"")+mt,dt.method=(dt.method||"GET").toUpperCase(),dt.headers=dt.headers||{};var gt=new rt(dt);return St&>.on("response",St),gt},st.get=function(dt,St){var pt=st.request(dt,St);return pt.end(),pt},st.ClientRequest=rt,st.IncomingMessage=lt.IncomingMessage,st.Agent=function(){},st.Agent.defaultMaxSockets=4,st.globalAgent=new st.Agent,st.STATUS_CODES=Ut,st.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:(et,tt,nt)=>{var rt;function lt(){if(rt!==void 0)return rt;if(nt.g.XMLHttpRequest){rt=new nt.g.XMLHttpRequest;try{rt.open("GET",nt.g.XDomainRequest?"/":"https://example.com")}catch{rt=null}}else rt=null;return rt}function ut(ot){var st=lt();if(!st)return!1;try{return st.responseType=ot,st.responseType===ot}catch{}return!1}function Ut(ot){return typeof ot=="function"}tt.fetch=Ut(nt.g.fetch)&&Ut(nt.g.ReadableStream),tt.writableStream=Ut(nt.g.WritableStream),tt.abortController=Ut(nt.g.AbortController),tt.arraybuffer=tt.fetch||ut("arraybuffer"),tt.msstream=!tt.fetch&&ut("ms-stream"),tt.mozchunkedarraybuffer=!tt.fetch&&ut("moz-chunked-arraybuffer"),tt.overrideMimeType=tt.fetch||!!lt()&&Ut(lt().overrideMimeType),rt=null},6255:(et,tt,nt)=>{var rt=nt(2271),lt=nt(5615),ut=nt(6846),Ut=nt(4156),ot=ut.IncomingMessage,st=ut.readyStates,dt=et.exports=function(pt){var Rt,Bt=this;Ut.Writable.call(Bt),Bt._opts=pt,Bt._body=[],Bt._headers={},pt.auth&&Bt.setHeader("Authorization","Basic "+Buffer.from(pt.auth).toString("base64")),Object.keys(pt.headers).forEach(function(mt){Bt.setHeader(mt,pt.headers[mt])});var ht=!0;if(pt.mode==="disable-fetch"||"requestTimeout"in pt&&!rt.abortController)ht=!1,Rt=!0;else if(pt.mode==="prefer-streaming")Rt=!1;else if(pt.mode==="allow-wrong-content-type")Rt=!rt.overrideMimeType;else{if(pt.mode&&pt.mode!=="default"&&pt.mode!=="prefer-fast")throw new Error("Invalid value for opts.mode");Rt=!0}Bt._mode=function(mt,gt){return rt.fetch&>?"fetch":rt.mozchunkedarraybuffer?"moz-chunked-arraybuffer":rt.msstream?"ms-stream":rt.arraybuffer&&mt?"arraybuffer":"text"}(Rt,ht),Bt._fetchTimer=null,Bt._socketTimeout=null,Bt._socketTimer=null,Bt.on("finish",function(){Bt._onFinish()})};lt(dt,Ut.Writable),dt.prototype.setHeader=function(pt,Rt){var Bt=pt.toLowerCase();St.indexOf(Bt)===-1&&(this._headers[Bt]={name:pt,value:Rt})},dt.prototype.getHeader=function(pt){var Rt=this._headers[pt.toLowerCase()];return Rt?Rt.value:null},dt.prototype.removeHeader=function(pt){delete this._headers[pt.toLowerCase()]},dt.prototype._onFinish=function(){var pt=this;if(!pt._destroyed){var Rt=pt._opts;"timeout"in Rt&&Rt.timeout!==0&&pt.setTimeout(Rt.timeout);var Bt=pt._headers,ht=null;Rt.method!=="GET"&&Rt.method!=="HEAD"&&(ht=new Blob(pt._body,{type:(Bt["content-type"]||{}).value||""}));var mt=[];if(Object.keys(Bt).forEach(function(ft){var Wt=Bt[ft].name,yt=Bt[ft].value;Array.isArray(yt)?yt.forEach(function(Kt){mt.push([Wt,Kt])}):mt.push([Wt,yt])}),pt._mode==="fetch"){var gt=null;if(rt.abortController){var Vt=new AbortController;gt=Vt.signal,pt._fetchAbortController=Vt,"requestTimeout"in Rt&&Rt.requestTimeout!==0&&(pt._fetchTimer=nt.g.setTimeout(function(){pt.emit("requestTimeout"),pt._fetchAbortController&&pt._fetchAbortController.abort()},Rt.requestTimeout))}nt.g.fetch(pt._opts.url,{method:pt._opts.method,headers:mt,body:ht||void 0,mode:"cors",credentials:Rt.withCredentials?"include":"same-origin",signal:gt}).then(function(ft){pt._fetchResponse=ft,pt._resetTimers(!1),pt._connect()},function(ft){pt._resetTimers(!0),pt._destroyed||pt.emit("error",ft)})}else{var Tt=pt._xhr=new nt.g.XMLHttpRequest;try{Tt.open(pt._opts.method,pt._opts.url,!0)}catch(ft){return void process.nextTick(function(){pt.emit("error",ft)})}"responseType"in Tt&&(Tt.responseType=pt._mode),"withCredentials"in Tt&&(Tt.withCredentials=!!Rt.withCredentials),pt._mode==="text"&&"overrideMimeType"in Tt&&Tt.overrideMimeType("text/plain; charset=x-user-defined"),"requestTimeout"in Rt&&(Tt.timeout=Rt.requestTimeout,Tt.ontimeout=function(){pt.emit("requestTimeout")}),mt.forEach(function(ft){Tt.setRequestHeader(ft[0],ft[1])}),pt._response=null,Tt.onreadystatechange=function(){switch(Tt.readyState){case st.LOADING:case st.DONE:pt._onXHRProgress()}},pt._mode==="moz-chunked-arraybuffer"&&(Tt.onprogress=function(){pt._onXHRProgress()}),Tt.onerror=function(){pt._destroyed||(pt._resetTimers(!0),pt.emit("error",new Error("XHR error")))};try{Tt.send(ht)}catch(ft){return void process.nextTick(function(){pt.emit("error",ft)})}}}},dt.prototype._onXHRProgress=function(){this._resetTimers(!1),function(pt){try{var Rt=pt.status;return Rt!==null&&Rt!==0}catch{return!1}}(this._xhr)&&!this._destroyed&&(this._response||this._connect(),this._response._onXHRProgress(this._resetTimers.bind(this)))},dt.prototype._connect=function(){var pt=this;pt._destroyed||(pt._response=new ot(pt._xhr,pt._fetchResponse,pt._mode,pt._resetTimers.bind(pt)),pt._response.on("error",function(Rt){pt.emit("error",Rt)}),pt.emit("response",pt._response))},dt.prototype._write=function(pt,Rt,Bt){this._body.push(pt),Bt()},dt.prototype._resetTimers=function(pt){var Rt=this;nt.g.clearTimeout(Rt._socketTimer),Rt._socketTimer=null,pt?(nt.g.clearTimeout(Rt._fetchTimer),Rt._fetchTimer=null):Rt._socketTimeout&&(Rt._socketTimer=nt.g.setTimeout(function(){Rt.emit("timeout")},Rt._socketTimeout))},dt.prototype.abort=dt.prototype.destroy=function(pt){this._destroyed=!0,this._resetTimers(!0),this._response&&(this._response._destroyed=!0),this._xhr?this._xhr.abort():this._fetchAbortController&&this._fetchAbortController.abort(),pt&&this.emit("error",pt)},dt.prototype.end=function(pt,Rt,Bt){typeof pt=="function"&&(Bt=pt,pt=void 0),Ut.Writable.prototype.end.call(this,pt,Rt,Bt)},dt.prototype.setTimeout=function(pt,Rt){Rt&&this.once("timeout",Rt),this._socketTimeout=pt,this._resetTimers(!1)},dt.prototype.flushHeaders=function(){},dt.prototype.setNoDelay=function(){},dt.prototype.setSocketKeepAlive=function(){};var St=["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:(et,tt,nt)=>{var rt=nt(2271),lt=nt(5615),ut=nt(4156),Ut=tt.readyStates={UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4},ot=tt.IncomingMessage=function(st,dt,St,pt){var Rt=this;if(ut.Readable.call(Rt),Rt._mode=St,Rt.headers={},Rt.rawHeaders=[],Rt.trailers={},Rt.rawTrailers=[],Rt.on("end",function(){process.nextTick(function(){Rt.emit("close")})}),St==="fetch"){if(Rt._fetchResponse=dt,Rt.url=dt.url,Rt.statusCode=dt.status,Rt.statusMessage=dt.statusText,dt.headers.forEach(function(Vt,Tt){Rt.headers[Tt.toLowerCase()]=Vt,Rt.rawHeaders.push(Tt,Vt)}),rt.writableStream){var Bt=new WritableStream({write:function(Vt){return pt(!1),new Promise(function(Tt,ft){Rt._destroyed?ft():Rt.push(Buffer.from(Vt))?Tt():Rt._resumeFetch=Tt})},close:function(){pt(!0),Rt._destroyed||Rt.push(null)},abort:function(Vt){pt(!0),Rt._destroyed||Rt.emit("error",Vt)}});try{return void dt.body.pipeTo(Bt).catch(function(Vt){pt(!0),Rt._destroyed||Rt.emit("error",Vt)})}catch{}}var ht=dt.body.getReader();(function Vt(){ht.read().then(function(Tt){Rt._destroyed||(pt(Tt.done),Tt.done?Rt.push(null):(Rt.push(Buffer.from(Tt.value)),Vt()))}).catch(function(Tt){pt(!0),Rt._destroyed||Rt.emit("error",Tt)})})()}else if(Rt._xhr=st,Rt._pos=0,Rt.url=st.responseURL,Rt.statusCode=st.status,Rt.statusMessage=st.statusText,st.getAllResponseHeaders().split(/\r?\n/).forEach(function(Vt){var Tt=Vt.match(/^([^:]+):\s*(.*)/);if(Tt){var ft=Tt[1].toLowerCase();ft==="set-cookie"?(Rt.headers[ft]===void 0&&(Rt.headers[ft]=[]),Rt.headers[ft].push(Tt[2])):Rt.headers[ft]!==void 0?Rt.headers[ft]+=", "+Tt[2]:Rt.headers[ft]=Tt[2],Rt.rawHeaders.push(Tt[1],Tt[2])}}),Rt._charset="x-user-defined",!rt.overrideMimeType){var mt=Rt.rawHeaders["mime-type"];if(mt){var gt=mt.match(/;\s*charset=([^;])(;|$)/);gt&&(Rt._charset=gt[1].toLowerCase())}Rt._charset||(Rt._charset="utf-8")}};lt(ot,ut.Readable),ot.prototype._read=function(){var st=this._resumeFetch;st&&(this._resumeFetch=null,st())},ot.prototype._onXHRProgress=function(st){var dt=this,St=dt._xhr,pt=null;switch(dt._mode){case"text":if((pt=St.responseText).length>dt._pos){var Rt=pt.substr(dt._pos);if(dt._charset==="x-user-defined"){for(var Bt=Buffer.alloc(Rt.length),ht=0;htdt._pos&&(dt.push(Buffer.from(new Uint8Array(mt.result.slice(dt._pos)))),dt._pos=mt.result.byteLength)},mt.onload=function(){st(!0),dt.push(null)},mt.readAsArrayBuffer(pt)}dt._xhr.readyState===Ut.DONE&&dt._mode!=="ms-stream"&&(st(!0),dt.push(null))}},8888:(et,tt,nt)=>{var rt=nt(5636).Buffer,lt=rt.isEncoding||function(ht){switch((ht=""+ht)&&ht.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 ut(ht){var mt;switch(this.encoding=function(gt){var Vt=function(Tt){if(!Tt)return"utf8";for(var ft;;)switch(Tt){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 Tt;default:if(ft)return;Tt=(""+Tt).toLowerCase(),ft=!0}}(gt);if(typeof Vt!="string"&&(rt.isEncoding===lt||!lt(gt)))throw new Error("Unknown encoding: "+gt);return Vt||gt}(ht),this.encoding){case"utf16le":this.text=st,this.end=dt,mt=4;break;case"utf8":this.fillLast=ot,mt=4;break;case"base64":this.text=St,this.end=pt,mt=3;break;default:return this.write=Rt,void(this.end=Bt)}this.lastNeed=0,this.lastTotal=0,this.lastChar=rt.allocUnsafe(mt)}function Ut(ht){return ht<=127?0:ht>>5==6?2:ht>>4==14?3:ht>>3==30?4:ht>>6==2?-1:-2}function ot(ht){var mt=this.lastTotal-this.lastNeed,gt=function(Vt,Tt,ft){if((192&Tt[0])!=128)return Vt.lastNeed=0,"�";if(Vt.lastNeed>1&&Tt.length>1){if((192&Tt[1])!=128)return Vt.lastNeed=1,"�";if(Vt.lastNeed>2&&Tt.length>2&&(192&Tt[2])!=128)return Vt.lastNeed=2,"�"}}(this,ht);return gt!==void 0?gt:this.lastNeed<=ht.length?(ht.copy(this.lastChar,mt,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(ht.copy(this.lastChar,mt,0,ht.length),void(this.lastNeed-=ht.length))}function st(ht,mt){if((ht.length-mt)%2==0){var gt=ht.toString("utf16le",mt);if(gt){var Vt=gt.charCodeAt(gt.length-1);if(Vt>=55296&&Vt<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=ht[ht.length-2],this.lastChar[1]=ht[ht.length-1],gt.slice(0,-1)}return gt}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=ht[ht.length-1],ht.toString("utf16le",mt,ht.length-1)}function dt(ht){var mt=ht&&ht.length?this.write(ht):"";if(this.lastNeed){var gt=this.lastTotal-this.lastNeed;return mt+this.lastChar.toString("utf16le",0,gt)}return mt}function St(ht,mt){var gt=(ht.length-mt)%3;return gt===0?ht.toString("base64",mt):(this.lastNeed=3-gt,this.lastTotal=3,gt===1?this.lastChar[0]=ht[ht.length-1]:(this.lastChar[0]=ht[ht.length-2],this.lastChar[1]=ht[ht.length-1]),ht.toString("base64",mt,ht.length-gt))}function pt(ht){var mt=ht&&ht.length?this.write(ht):"";return this.lastNeed?mt+this.lastChar.toString("base64",0,3-this.lastNeed):mt}function Rt(ht){return ht.toString(this.encoding)}function Bt(ht){return ht&&ht.length?this.write(ht):""}tt.StringDecoder=ut,ut.prototype.write=function(ht){if(ht.length===0)return"";var mt,gt;if(this.lastNeed){if((mt=this.fillLast(ht))===void 0)return"";gt=this.lastNeed,this.lastNeed=0}else gt=0;return gt=0?(Kt>0&&(Tt.lastNeed=Kt-1),Kt):--yt=0?(Kt>0&&(Tt.lastNeed=Kt-2),Kt):--yt=0?(Kt>0&&(Kt===2?Kt=0:Tt.lastNeed=Kt-3),Kt):0}(this,ht,mt);if(!this.lastNeed)return ht.toString("utf8",mt);this.lastTotal=gt;var Vt=ht.length-(gt-this.lastNeed);return ht.copy(this.lastChar,0,Vt),ht.toString("utf8",mt,Vt)},ut.prototype.fillLast=function(ht){if(this.lastNeed<=ht.length)return ht.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);ht.copy(this.lastChar,this.lastTotal-this.lastNeed,0,ht.length),this.lastNeed-=ht.length}},9023:(et,tt)=>{tt.levels={error:0,warn:1,help:2,data:3,info:4,debug:5,prompt:6,verbose:7,input:8,silly:9},tt.colors={error:"red",warn:"yellow",help:"cyan",data:"grey",info:"green",debug:"blue",prompt:"grey",verbose:"cyan",input:"grey",silly:"magenta"}},2797:(et,tt,nt)=>{Object.defineProperty(tt,"cli",{value:nt(9023)}),Object.defineProperty(tt,"npm",{value:nt(5828)}),Object.defineProperty(tt,"syslog",{value:nt(7408)})},5828:(et,tt)=>{tt.levels={error:0,warn:1,info:2,http:3,verbose:4,debug:5,silly:6},tt.colors={error:"red",warn:"yellow",info:"green",http:"green",verbose:"cyan",debug:"blue",silly:"magenta"}},7408:(et,tt)=>{tt.levels={emerg:0,alert:1,crit:2,error:3,warning:4,notice:5,info:6,debug:7},tt.colors={emerg:"red",alert:"yellow",crit:"red",error:"red",warning:"red",notice:"yellow",info:"green",debug:"blue"}},4966:(et,tt,nt)=>{Object.defineProperty(tt,"LEVEL",{value:Symbol.for("level")}),Object.defineProperty(tt,"MESSAGE",{value:Symbol.for("message")}),Object.defineProperty(tt,"SPLAT",{value:Symbol.for("splat")}),Object.defineProperty(tt,"configs",{value:nt(2797)})},7396:(et,tt,nt)=>{nt.d(tt,{V:()=>mt});var rt=nt(288),lt=nt.n(rt),ut=nt(3778);class Ut extends Error{constructor(Vt,Tt,ft){super("Connection failure: "+Vt.message),this.cause=Vt,this.url=Tt,this.retryable=ft,this.name="ConnectionError",Object.setPrototypeOf(this,new.target.prototype)}}var ot=nt(7221),st=nt(6452),dt=nt(5413),St=nt(7197);class pt extends Error{constructor(Vt,Tt){super(`Invalid headers (${JSON.stringify(Vt)}) for response: ${Tt.message}`),this.validationErrors=Vt,this.responseError=Tt}}var Rt=function(gt,Vt,Tt,ft){return new(Tt||(Tt=Promise))(function(Wt,yt){function Kt(Nt){try{Ht(ft.next(Nt))}catch(qt){yt(qt)}}function $t(Nt){try{Ht(ft.throw(Nt))}catch(qt){yt(qt)}}function Ht(Nt){var qt;Nt.done?Wt(Nt.value):(qt=Nt.value,qt instanceof Tt?qt:new Tt(function(kt){kt(qt)})).then(Kt,$t)}Ht((ft=ft.apply(gt,Vt||[])).next())})},Bt=function(gt,Vt){var Tt={};for(var ft in gt)Object.prototype.hasOwnProperty.call(gt,ft)&&Vt.indexOf(ft)<0&&(Tt[ft]=gt[ft]);if(gt!=null&&typeof Object.getOwnPropertySymbols=="function"){var Wt=0;for(ft=Object.getOwnPropertySymbols(gt);WtTt.validateHeaders?Tt.validateHeaders(ft):{},this.verbose=Tt.verbose!==!1,Tt.retries!==void 0&&!(Tt.retries>=0))throw new Error("retries must be positive or zero");if(this.configuredRetries=Tt.retries,Tt.timeoutMs!==void 0&&!(Tt.timeoutMs>0))throw new Error("timeoutMs must be positive");if(this.timeoutMs=Tt.timeoutMs,Tt.maxBackoffDelayMs!==void 0&&!(Tt.maxBackoffDelayMs>0))throw new Error("maxBackoffDelayMs must be positive");this.maxBackoffDelayMs=Tt.maxBackoffDelayMs||30*ut.p.second,this.json=Tt.json!==!1}getRetries(){return this.configuredRetries!==void 0?this.configuredRetries:this.getConstructor().retries}getHeaders(){return{}}fetch(Vt){return Rt(this,arguments,void 0,function*(Tt,ft={}){return(yield this.fetchVerbose(Tt,ft)).body})}fetchVerbose(Vt){return Rt(this,arguments,void 0,function*(Tt,ft={}){let Wt=100*ut.p.millisecond,yt=0;const Kt=this.timeoutMs!==void 0?new Date().getTime()+this.timeoutMs:void 0,$t=Kt?()=>Math.max(Kt-new Date().getTime(),0):void 0;for(;;)try{return yield this.doFetch(Tt,ft,$t)}catch(Ht){const Nt=Ht,qt=(0,dt.e)(Nt,Ut);if(($t==null?void 0:$t())===0||yt===this.getRetries()||!qt.retryable)throw qt;yt++,Wt=Math.min(...$t?[$t()]:[],Wt*(2+.1*(Math.random()-.5)),this.maxBackoffDelayMs),yield(0,ot.c)(Wt),this.verbose&&st.vF.warn("Connection failure, retrying. Error: "+Nt.cause.message,{url:Nt.url,error:Nt.cause,attempt:yt})}})}doFetch(Vt,Tt,ft){return Rt(this,void 0,void 0,function*(){const{token:Wt,json:yt=this.json,allowUnsafeRetries:Kt}=Tt,$t=Bt(Tt,["token","json","allowUnsafeRetries"]),Ht=($t.method||"GET").toUpperCase(),Nt=this.endpoint!==void 0?`${this.endpoint}${Vt?"/"+Vt:""}`:Vt,qt=new AbortController;let kt;if(ft){const bt=ft();bt>0?kt=setTimeout(()=>{qt.abort()},bt):qt.abort()}try{let bt;yield Promise.race([this.getConstructor().waitForConnectivity(),new Promise(sn=>{bt=setTimeout(sn,ft?Math.min(ut.p.minute,ft()):ut.p.minute)})]),bt&&clearTimeout(bt);const Jt=yield lt()(Nt,Object.assign(Object.assign(Object.assign({},$t),$t.body!==void 0?{body:yt!==!1?JSON.stringify($t.body):$t.body}:{}),{headers:Object.assign(Object.assign(Object.assign(Object.assign({},yt!==!1?{"Content-Type":"application/json"}:{}),this.getHeaders()),$t.headers||{}),Wt!==void 0?{Authorization:"Bearer "+Wt}:{}),signal:qt.signal})),wt=Jt.headers.get("content-type")||"",At=wt&&wt.startsWith("application/json"),Ct=At?yield Jt.json():yield Jt.text(),Mt=()=>new St.o(Ht,Nt,$t.body,Jt.status,Jt.headers,Ct,Ct&&Ct.validationErrors||{});if(!Jt.ok)throw this.verbose&&st.vF[Jt.status>=500?"warn":"info"]("Response error",{method:Ht,url:Nt,statusCode:Jt.status}),Mt();const nn=this.validateHeaders(Jt.headers);if(Object.keys(nn).length!==0)throw new pt(nn,Mt());if(Jt.status===204)return{body:void 0,headers:Jt.headers};if(yt&&!At)throw new Error("Response is not JSON: "+JSON.stringify(Ct));return{body:Ct,headers:Jt.headers}}catch(bt){const Jt=bt,wt=Kt||ht.has(Ht);if(Jt.message==="Network request failed")throw new Ut(Jt,Nt,wt);if(Jt.type==="system"&&["EAI_AGAIN","ECONNREFUSED","EHOSTUNREACH","ENOTFOUND"].find(nn=>nn===Jt.code))throw new Ut(Jt,Nt,!0);if(Jt.type==="system"&&["ETIMEDOUT","ECONNRESET","ESOCKETTIMEDOUT","EPIPE"].find(nn=>nn===Jt.code))throw new Ut(Jt,Nt,wt);if(Jt.name==="AbortError")throw new Ut(Jt,Nt,wt);const At=(0,dt.e)(Jt,St.o),{statusCode:Ct}=At;if(Ct===408||Ct===429||Ct===502||Ct===503||Ct===504)throw this.verbose&&!wt&&st.vF.warn("Potentially unsafe retry"),new Ut(Jt,Nt,!0);if(Ct===500&&["/online-devices","/stream-current-value","/events/counts","/queries/queries"].some(nn=>Nt.includes(nn)))throw new Ut(Jt,Nt,wt);const Mt=this.validateHeaders(At.headers);throw Object.keys(Mt).length!==0?new pt(Mt,At):(yield this.getConstructor().onResponseError(At),Jt)}finally{kt&&clearTimeout(kt)}})}getConstructor(){return Object.getPrototypeOf(this).constructor}}mt.retries=8,mt.waitForConnectivity=()=>Rt(void 0,void 0,void 0,function*(){}),mt.onResponseError=()=>Rt(void 0,void 0,void 0,function*(){})},6331:(et,tt,nt)=>{nt.d(tt,{S:()=>Ut});var rt=nt(7396),lt=nt(2273);const ut={"app-id":["app-id must match formant/*"]};class Ut extends rt.V{constructor(st,dt={}){super(st,Object.assign({validateHeaders:St=>(""+St.get("app-id")).startsWith("formant/")?{}:ut},dt)),this.endpoint=st}getHeaders(){return Object.assign(Object.assign({},Ut.headers),{"App-ID":"formant/"+lt.yA,"App-Version":lt.rE})}}Ut.headers={}},4495:(et,tt,nt)=>{nt.r(tt),nt.d(tt,{LogClient:()=>ot});var rt=nt(6331),lt=nt(5413),ut=nt(7197),Ut=function(st,dt,St,pt){return new(St||(St=Promise))(function(Rt,Bt){function ht(Vt){try{gt(pt.next(Vt))}catch(Tt){Bt(Tt)}}function mt(Vt){try{gt(pt.throw(Vt))}catch(Tt){Bt(Tt)}}function gt(Vt){var Tt;Vt.done?Rt(Vt.value):(Tt=Vt.value,Tt instanceof St?Tt:new St(function(ft){ft(Tt)})).then(ht,mt)}gt((pt=pt.apply(st,dt||[])).next())})};class ot extends rt.S{log(dt){return Ut(this,void 0,void 0,function*(){const St=ot.token;try{yield this.fetch("logs",{token:St,method:"POST",body:{logs:dt},allowUnsafeRetries:!0})}catch(pt){(0,lt.e)(pt,ut.o,Rt=>Rt.statusCode===401&&St!==void 0),ot.token===St&&delete ot.token,yield this.log(dt)}})}}},7197:(et,tt,nt)=>{nt.d(tt,{o:()=>lt});var rt=nt(3563);class lt extends Error{constructor(Ut,ot,st,dt,St,pt,Rt={}){super("Response error "+JSON.stringify({method:Ut,url:ot,requestBody:(0,rt.E)(st),statusCode:dt,responseHeaders:St?(0,rt.E)([...St.entries()].reduce((Bt,[ht,mt])=>(Bt[ht]=mt,Bt),{})):{},responseBody:(0,rt.E)(pt)})),this.method=Ut,this.url=ot,this.requestBody=st,this.statusCode=dt,this.headers=St,this.body=pt,this.validationErrors=Rt,this.name="ResponseError",Object.setPrototypeOf(this,new.target.prototype)}}},2273:(et,tt,nt)=>{nt.d(tt,{IW:()=>ht,MF:()=>Ut,NQ:()=>st,Zm:()=>pt,_P:()=>Rt,dF:()=>St,dm:()=>dt,op:()=>Bt,rE:()=>ot,yA:()=>ut});var rt=nt(2078);const lt=rt.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.183.6",VERSION:{}.VERSION,AUDIT_LOGS_ENABLED:{}.AUDIT_LOGS_ENABLED}),ut=(lt.get("ENVIRONMENT").default("").asString(),lt.get("APP").default("").asString()),Ut=(lt.get("APP_PATH").default("").asString(),lt.get("API_ENDPOINT").default("").asString(),lt.get("NAMESPACE").default("").asString()),ot=lt.get("VERSION").default("").asString(),st=lt.get("BUILD_TAG").default("").asString(),dt=(lt.get("GIT_COMMIT").default("").asString(),lt.get("ENABLE_SENTRY").default("false").asBool(),lt.get("ENABLE_SENTRY_PROFILING").default("false").asBool(),lt.get("SENTRY_DSN").default("").asString(),lt.get("LOG_LEVEL").default("debug").asString()),St=lt.get("LOG_JSON").default("true").asBool(),pt=lt.get("LOG_TO_CONSOLE").default("true").asBool(),Rt=(lt.get("STABLE_AGENT_VERSION").default("").asString(),lt.get("LOG_API_ENDPOINT").asString()),Bt=lt.get("JEST_WORKER_ID").asString(),ht=(lt.get("SHEET_EXPORT_MAX_ROW_COUNT").default("10000").asIntPositive(),lt.get("LOG_TO_FILE").default("false").asBoolStrict());lt.get("ENABLE_SELF_SERVE").default("true").asBoolStrict(),lt.get("AGGREGATE_LEVEL").default("hour").asEnum(["day","hour","minute"]),lt.get("AUDIT_LOGS_ENABLED").default("true").asBoolStrict()},7221:(et,tt,nt)=>{nt.d(tt,{c:()=>rt});const rt=lt=>new Promise(ut=>setTimeout(ut,lt||0))},6452:(et,tt,nt)=>{nt.d(tt,{vF:()=>Fn});var rt=nt(2213),lt=nt(8558),ut=nt(6075),Ut=nt.n(ut),ot=nt(6563);function st(Un,Jn){if(Jn.length1?"s":"")+" required, but only "+Jn.length+" present")}function dt(Un){if(Un===null||Un===!0||Un===!1)return NaN;var Jn=Number(Un);return isNaN(Jn)?Jn:Jn<0?Math.ceil(Jn):Math.floor(Jn)}var St={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},pt=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,Rt=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,Bt=/^([+-])(\d{2})(?::?(\d{2}))?$/;function ht(Un){var Jn,_n={},Zn=Un.split(St.dateTimeDelimiter);if(Zn.length>2)return _n;if(/:/.test(Zn[0])?Jn=Zn[0]:(_n.date=Zn[0],Jn=Zn[1],St.timeZoneDelimiter.test(_n.date)&&(_n.date=Un.split(St.timeZoneDelimiter)[0],Jn=Un.substr(_n.date.length,Un.length))),Jn){var On=St.timezone.exec(Jn);On?(_n.time=Jn.replace(On[1],""),_n.timezone=On[1]):_n.time=Jn}return _n}function mt(Un,Jn){var _n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+Jn)+"})|(\\d{2}|[+-]\\d{"+(2+Jn)+"})$)"),Zn=Un.match(_n);if(!Zn)return{year:NaN,restDateString:""};var On=Zn[1]?parseInt(Zn[1]):null,Yn=Zn[2]?parseInt(Zn[2]):null;return{year:Yn===null?On:100*Yn,restDateString:Un.slice((Zn[1]||Zn[2]).length)}}function gt(Un,Jn){if(Jn===null)return new Date(NaN);var _n=Un.match(pt);if(!_n)return new Date(NaN);var Zn=!!_n[4],On=Vt(_n[1]),Yn=Vt(_n[2])-1,_t=Vt(_n[3]),Ot=Vt(_n[4]),jt=Vt(_n[5])-1;if(Zn)return function(En,yn,Cn){return yn>=1&&yn<=53&&Cn>=0&&Cn<=6}(0,Ot,jt)?function(En,yn,Cn){var Gn=new Date(0);Gn.setUTCFullYear(En,0,4);var Wn=Gn.getUTCDay()||7,ir=7*(yn-1)+Cn+1-Wn;return Gn.setUTCDate(Gn.getUTCDate()+ir),Gn}(Jn,Ot,jt):new Date(NaN);var pn=new Date(0);return function(En,yn,Cn){return yn>=0&&yn<=11&&Cn>=1&&Cn<=(yt[yn]||(Kt(En)?29:28))}(Jn,Yn,_t)&&function(En,yn){return yn>=1&&yn<=(Kt(En)?366:365)}(Jn,On)?(pn.setUTCFullYear(Jn,Yn,Math.max(On,_t)),pn):new Date(NaN)}function Vt(Un){return Un?parseInt(Un):1}function Tt(Un){var Jn=Un.match(Rt);if(!Jn)return NaN;var _n=ft(Jn[1]),Zn=ft(Jn[2]),On=ft(Jn[3]);return function(Yn,_t,Ot){return Yn===24?_t===0&&Ot===0:Ot>=0&&Ot<60&&_t>=0&&_t<60&&Yn>=0&&Yn<25}(_n,Zn,On)?36e5*_n+6e4*Zn+1e3*On:NaN}function ft(Un){return Un&&parseFloat(Un.replace(",","."))||0}function Wt(Un){if(Un==="Z")return 0;var Jn=Un.match(Bt);if(!Jn)return 0;var _n=Jn[1]==="+"?-1:1,Zn=parseInt(Jn[2]),On=Jn[3]&&parseInt(Jn[3])||0;return function(Yn,_t){return _t>=0&&_t<=59}(0,On)?_n*(36e5*Zn+6e4*On):NaN}var yt=[31,null,31,30,31,30,31,31,30,31,30,31];function Kt(Un){return Un%400==0||Un%4==0&&Un%100!=0}function $t(Un){return($t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Jn){return typeof Jn}:function(Jn){return Jn&&typeof Symbol=="function"&&Jn.constructor===Symbol&&Jn!==Symbol.prototype?"symbol":typeof Jn})(Un)}function Ht(Un){return st(1,arguments),Un instanceof Date||$t(Un)==="object"&&Object.prototype.toString.call(Un)==="[object Date]"}function Nt(Un){st(1,arguments);var Jn=Object.prototype.toString.call(Un);return Un instanceof Date||$t(Un)==="object"&&Jn==="[object Date]"?new Date(Un.getTime()):typeof Un=="number"||Jn==="[object Number]"?new Date(Un):(typeof Un!="string"&&Jn!=="[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 qt(Un){const Jn=function(_n,Zn){var On;st(1,arguments);var Yn=dt((On=Zn==null?void 0:Zn.additionalDigits)!==null&&On!==void 0?On:2);if(Yn!==2&&Yn!==1&&Yn!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(typeof _n!="string"&&Object.prototype.toString.call(_n)!=="[object String]")return new Date(NaN);var _t,Ot=ht(_n);if(Ot.date){var jt=mt(Ot.date,Yn);_t=gt(jt.restDateString,jt.year)}if(!_t||isNaN(_t.getTime()))return new Date(NaN);var pn,En=_t.getTime(),yn=0;if(Ot.time&&(yn=Tt(Ot.time),isNaN(yn)))return new Date(NaN);if(!Ot.timezone){var Cn=new Date(En+yn),Gn=new Date(0);return Gn.setFullYear(Cn.getUTCFullYear(),Cn.getUTCMonth(),Cn.getUTCDate()),Gn.setHours(Cn.getUTCHours(),Cn.getUTCMinutes(),Cn.getUTCSeconds(),Cn.getUTCMilliseconds()),Gn}return pn=Wt(Ot.timezone),isNaN(pn)?new Date(NaN):new Date(En+yn+pn)}(Un);if(!function(_n){if(st(1,arguments),!Ht(_n)&&typeof _n!="number")return!1;var Zn=Nt(_n);return!isNaN(Number(Zn))}(Jn))throw new Error(`Invalid ISO 8601 date string (${Un})`);return Jn}const kt=Math.pow(2,20),bt=kt;var Jt=nt(2273),wt=nt(3563);function At(Un){return Ut()(Un,{cycles:!0})}var Ct=function(Un,Jn){var _n={};for(var Zn in Un)Object.prototype.hasOwnProperty.call(Un,Zn)&&Jn.indexOf(Zn)<0&&(_n[Zn]=Un[Zn]);if(Un!=null&&typeof Object.getOwnPropertySymbols=="function"){var On=0;for(Zn=Object.getOwnPropertySymbols(Un);On_n?(0,wt.E)(jt):jt;if(!Un.stack)return{message:At(Zn(Un))};const{name:On,message:Yn,stack:_t}=Un,Ot=Ct(Un,["name","message","stack"]);return{name:On,message:Yn!==void 0?Yn:At(Zn(Un)),stack:_t,meta:Ot&&Object.keys(Ot).length===0?void 0:Zn(Ot)}}function nn(Un,Jn={}){const{message:_n,stack:Zn,meta:On}=Mt(Un,Jn);return`${Zn||_n||""}${On&&Object.keys(On).length>0?" -- "+At(On):""}`}const sn=(0,nt(2964).A)();var Lt=nt(6155),tn=nt.n(Lt),cn=function(Un,Jn,_n,Zn){return new(_n||(_n=Promise))(function(On,Yn){function _t(pn){try{jt(Zn.next(pn))}catch(En){Yn(En)}}function Ot(pn){try{jt(Zn.throw(pn))}catch(En){Yn(En)}}function jt(pn){var En;pn.done?On(pn.value):(En=pn.value,En instanceof _n?En:new _n(function(yn){yn(En)})).then(_t,Ot)}jt((Zn=Zn.apply(Un,Jn||[])).next())})},on=function(Un,Jn){var _n={};for(var Zn in Un)Object.prototype.hasOwnProperty.call(Un,Zn)&&Jn.indexOf(Zn)<0&&(_n[Zn]=Un[Zn]);if(Un!=null&&typeof Object.getOwnPropertySymbols=="function"){var On=0;for(Zn=Object.getOwnPropertySymbols(Un);On{var{timestamp:Jn,level:_n,message:Zn,error:On}=Un,Yn=Xt(Un,["timestamp","level","message","error"]);const _t=Object.assign(Object.assign({timestamp:Jn?qt(Jn).getTime():new Date().getTime(),level:_n.toUpperCase(),message:Zn},On?{error:Mt(On)}:{}),{meta:Object.assign(Object.assign({},dn),Yn)});return Ut()(_t,{cycles:!0})}):ot.format.printf(Un=>{var{timestamp:Jn,level:_n,message:Zn,error:On}=Un,Yn=Xt(Un,["timestamp","level","message","error"]);let _t=`${Jn||new Date().toISOString()} ${_n.toUpperCase()}: ${Zn} `;return Object.keys(Yn).length>0&&(_t+=Ut()(Yn,{cycles:!0})),On&&(_t+=` +`+nn(On)),_t}),Fn=(0,ot.createLogger)({level:Jt.dm});if(Fn.add(new ot.transports.Console({format:Vn,level:"debug"})),Fn.transports.forEach(Un=>{Un.silent=!Jt.Zm}),Jt._P&&Fn.add(new Gt(Jt._P,dn)),Jt.IW){const Un=lt.resolve(rt.tmpdir(),`silly-${Jt.yA}.log`);Fn.debug("Logging silly logs to file",{filename:Un}),Fn.add(new ot.transports.File({filename:Un,maxsize:1*bt,maxFiles:10,format:ot.format.combine((fn="silly",(0,ot.format)(Jn=>Jn.level===fn&&Jn)()),Vn),level:"silly"}))}var fn},5413:(et,tt,nt)=>{function rt(lt,ut,Ut=()=>!0){if(function(ot,st,dt=()=>!0){return ot instanceof st&&dt(ot)}(lt,ut,Ut))return lt;throw lt}nt.d(tt,{e:()=>rt})},3563:(et,tt,nt)=>{nt.d(tt,{E:()=>st,x:()=>dt});const rt=["query"],lt=["expected one of:","maybe you meant:","in query:","while processing query","column"],ut=["password","secret","token","key","buffer","authorization"],Ut=new Set(["email","firstName","lastName","phoneNumber","phoneNumbers"]),ot=St=>ut.some(pt=>St.toLowerCase().includes(pt.toLowerCase()))||Ut.has(St);function st(St,pt=new WeakSet){return pt.has(St)?"[ RECURSIVE ]":Array.isArray(St)?(pt.add(St),St.map(Bt=>st(Bt,pt))):!(Rt=St)||typeof Rt!="object"&&typeof Rt!="function"?typeof St=="string"&&!lt.some(Bt=>St.toLowerCase().includes(Bt))&&ot(St)?"[ REDACTED ]":St:(pt.add(St),Object.keys(St).reduce((Bt,ht)=>rt.includes(ht.toLowerCase())?(Bt[ht]=St[ht],Bt):(Bt[ht]=ot(ht)?"[ REDACTED ]":st(St[ht],pt),Bt),{}));var Rt}const dt=St=>{const pt=JSON.stringify(St).replace(/\\"username\\":\\"([a-zA-Z0-9]+)\\"/gi,'\\"username\\":\\"\\"').replace(/\\"credential\\":\\"([a-zA-Z0-9]+)\\"/gi,'\\"credential\\":\\"\\"');return JSON.parse(pt)}},3778:(et,tt,nt)=>{nt.d(tt,{p:()=>lt});const rt=864e5,lt={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:rt,week:6048e5,month:2592e6,year:31536e6}},2113:function(et,tt,nt){var rt;et=nt.nmd(et),function(lt){tt&&tt.nodeType,et&&et.nodeType;var ut=typeof nt.g=="object"&&nt.g;ut.global!==ut&&ut.window!==ut&&ut.self;var Ut,ot=2147483647,st=/^xn--/,dt=/[^\x20-\x7E]/,St=/[\x2E\u3002\uFF0E\uFF61]/g,pt={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},Rt=Math.floor,Bt=String.fromCharCode;function ht($t){throw new RangeError(pt[$t])}function mt($t,Ht){for(var Nt=$t.length,qt=[];Nt--;)qt[Nt]=Ht($t[Nt]);return qt}function gt($t,Ht){var Nt=$t.split("@"),qt="";return Nt.length>1&&(qt=Nt[0]+"@",$t=Nt[1]),qt+mt(($t=$t.replace(St,".")).split("."),Ht).join(".")}function Vt($t){for(var Ht,Nt,qt=[],kt=0,bt=$t.length;kt=55296&&Ht<=56319&&kt65535&&(Nt+=Bt((Ht-=65536)>>>10&1023|55296),Ht=56320|1023&Ht),Nt+=Bt(Ht)}).join("")}function ft($t,Ht){return $t+22+75*($t<26)-((Ht!=0)<<5)}function Wt($t,Ht,Nt){var qt=0;for($t=Nt?Rt($t/700):$t>>1,$t+=Rt($t/Ht);$t>455;qt+=36)$t=Rt($t/35);return Rt(qt+36*$t/($t+38))}function yt($t){var Ht,Nt,qt,kt,bt,Jt,wt,At,Ct,Mt,nn,sn=[],Lt=$t.length,tn=0,cn=128,on=72;for((Nt=$t.lastIndexOf("-"))<0&&(Nt=0),qt=0;qt=128&&ht("not-basic"),sn.push($t.charCodeAt(qt));for(kt=Nt>0?Nt+1:0;kt=Lt&&ht("invalid-input"),((At=(nn=$t.charCodeAt(kt++))-48<10?nn-22:nn-65<26?nn-65:nn-97<26?nn-97:36)>=36||At>Rt((ot-tn)/Jt))&&ht("overflow"),tn+=At*Jt,!(At<(Ct=wt<=on?1:wt>=on+26?26:wt-on));wt+=36)Jt>Rt(ot/(Mt=36-Ct))&&ht("overflow"),Jt*=Mt;on=Wt(tn-bt,Ht=sn.length+1,bt==0),Rt(tn/Ht)>ot-cn&&ht("overflow"),cn+=Rt(tn/Ht),tn%=Ht,sn.splice(tn++,0,cn)}return Tt(sn)}function Kt($t){var Ht,Nt,qt,kt,bt,Jt,wt,At,Ct,Mt,nn,sn,Lt,tn,cn,on=[];for(sn=($t=Vt($t)).length,Ht=128,Nt=0,bt=72,Jt=0;Jt=Ht&&nnRt((ot-Nt)/(Lt=qt+1))&&ht("overflow"),Nt+=(wt-Ht)*Lt,Ht=wt,Jt=0;Jtot&&ht("overflow"),nn==Ht){for(At=Nt,Ct=36;!(At<(Mt=Ct<=bt?1:Ct>=bt+26?26:Ct-bt));Ct+=36)cn=At-Mt,tn=36-Mt,on.push(Bt(ft(Mt+cn%tn,0))),At=Rt(cn/tn);on.push(Bt(ft(At,0))),bt=Wt(Nt,Lt,qt==kt),Nt=0,++qt}++Nt,++Ht}return on.join("")}Ut={version:"1.4.1",ucs2:{decode:Vt,encode:Tt},decode:yt,encode:Kt,toASCII:function($t){return gt($t,function(Ht){return dt.test(Ht)?"xn--"+Kt(Ht):Ht})},toUnicode:function($t){return gt($t,function(Ht){return st.test(Ht)?yt(Ht.slice(4).toLowerCase()):Ht})}},(rt=function(){return Ut}.call(tt,nt,tt,et))===void 0||(et.exports=rt)}()},5442:(et,tt,nt)=>{var rt=nt(2113);function lt(){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 ut=/^([a-z0-9.+-]+:)/i,Ut=/:[0-9]*$/,ot=/^(\/\/?(?!\/)[^?\s]*)(\?[^\s]*)?$/,st=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r",` +`," "]),dt=["'"].concat(st),St=["%","/","?",";","#"].concat(dt),pt=["/","?","#"],Rt=/^[+a-z0-9A-Z_-]{0,63}$/,Bt=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,ht={javascript:!0,"javascript:":!0},mt={javascript:!0,"javascript:":!0},gt={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},Vt=nt(5810);function Tt(ft,Wt,yt){if(ft&&typeof ft=="object"&&ft instanceof lt)return ft;var Kt=new lt;return Kt.parse(ft,Wt,yt),Kt}lt.prototype.parse=function(ft,Wt,yt){if(typeof ft!="string")throw new TypeError("Parameter 'url' must be a string, not "+typeof ft);var Kt=ft.indexOf("?"),$t=Kt!==-1&&Kt127?on+="x":on+=cn[Gt];if(!on.match(Rt)){var dn=Lt.slice(0,Mt),Vn=Lt.slice(Mt+1),Fn=cn.match(Bt);Fn&&(dn.push(Fn[1]),Vn.unshift(Fn[2])),Vn.length&&(Nt="/"+Vn.join(".")+Nt),this.hostname=dn.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),sn||(this.hostname=rt.toASCII(this.hostname));var fn=this.port?":"+this.port:"",Un=this.hostname||"";this.host=Un+fn,this.href+=this.host,sn&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),Nt[0]!=="/"&&(Nt="/"+Nt))}if(!ht[bt])for(Mt=0,tn=dt.length;Mt0)&&yt.host.split("@"))&&(yt.auth=Fn.shift(),yt.hostname=Fn.shift(),yt.host=yt.hostname)),yt.search=ft.search,yt.query=ft.query,yt.pathname===null&&yt.search===null||(yt.path=(yt.pathname?yt.pathname:"")+(yt.search?yt.search:"")),yt.href=yt.format(),yt;if(!cn.length)return yt.pathname=null,yt.search?yt.path="/"+yt.search:yt.path=null,yt.href=yt.format(),yt;for(var Gt=cn.slice(-1)[0],Xt=(yt.host||ft.host||cn.length>1)&&(Gt==="."||Gt==="..")||Gt==="",dn=0,Vn=cn.length;Vn>=0;Vn--)(Gt=cn[Vn])==="."?cn.splice(Vn,1):Gt===".."?(cn.splice(Vn,1),dn++):dn&&(cn.splice(Vn,1),dn--);if(!Lt&&!tn)for(;dn--;dn)cn.unshift("..");!Lt||cn[0]===""||cn[0]&&cn[0].charAt(0)==="/"||cn.unshift(""),Xt&&cn.join("/").substr(-1)!=="/"&&cn.push("");var Fn,fn=cn[0]===""||cn[0]&&cn[0].charAt(0)==="/";return on&&(yt.hostname=fn?"":cn.length?cn.shift():"",yt.host=yt.hostname,(Fn=!!(yt.host&&yt.host.indexOf("@")>0)&&yt.host.split("@"))&&(yt.auth=Fn.shift(),yt.hostname=Fn.shift(),yt.host=yt.hostname)),(Lt=Lt||yt.host&&cn.length)&&!fn&&cn.unshift(""),cn.length>0?yt.pathname=cn.join("/"):(yt.pathname=null,yt.path=null),yt.pathname===null&&yt.search===null||(yt.path=(yt.pathname?yt.pathname:"")+(yt.search?yt.search:"")),yt.auth=ft.auth||yt.auth,yt.slashes=yt.slashes||ft.slashes,yt.href=yt.format(),yt},lt.prototype.parseHost=function(){var ft=this.host,Wt=Ut.exec(ft);Wt&&((Wt=Wt[0])!==":"&&(this.port=Wt.substr(1)),ft=ft.substr(0,ft.length-Wt.length)),ft&&(this.hostname=ft)},tt.parse=Tt,tt.resolve=function(ft,Wt){return Tt(ft,!1,!0).resolve(Wt)},tt.resolveObject=function(ft,Wt){return ft?Tt(ft,!1,!0).resolveObject(Wt):Wt},tt.format=function(ft){return typeof ft=="string"&&(ft=Tt(ft)),ft instanceof lt?ft.format():lt.prototype.format.call(ft)},tt.Url=lt},6732:(et,tt,nt)=>{function rt(lt){try{if(!nt.g.localStorage)return!1}catch{return!1}var ut=nt.g.localStorage[lt];return ut!=null&&String(ut).toLowerCase()==="true"}et.exports=function(lt,ut){if(rt("noDeprecation"))return lt;var Ut=!1;return function(){if(!Ut){if(rt("throwDeprecation"))throw new Error(ut);rt("traceDeprecation")?console.trace(ut):console.warn(ut),Ut=!0}return lt.apply(this,arguments)}}},5272:et=>{et.exports=function(tt){return tt&&typeof tt=="object"&&typeof tt.copy=="function"&&typeof tt.fill=="function"&&typeof tt.readUInt8=="function"}},1531:(et,tt,nt)=>{var rt=nt(5387),lt=nt(2625),ut=nt(2730),Ut=nt(5943);function ot(Mt){return Mt.call.bind(Mt)}var st=typeof BigInt<"u",dt=typeof Symbol<"u",St=ot(Object.prototype.toString),pt=ot(Number.prototype.valueOf),Rt=ot(String.prototype.valueOf),Bt=ot(Boolean.prototype.valueOf);if(st)var ht=ot(BigInt.prototype.valueOf);if(dt)var mt=ot(Symbol.prototype.valueOf);function gt(Mt,nn){if(typeof Mt!="object")return!1;try{return nn(Mt),!0}catch{return!1}}function Vt(Mt){return St(Mt)==="[object Map]"}function Tt(Mt){return St(Mt)==="[object Set]"}function ft(Mt){return St(Mt)==="[object WeakMap]"}function Wt(Mt){return St(Mt)==="[object WeakSet]"}function yt(Mt){return St(Mt)==="[object ArrayBuffer]"}function Kt(Mt){return typeof ArrayBuffer<"u"&&(yt.working?yt(Mt):Mt instanceof ArrayBuffer)}function $t(Mt){return St(Mt)==="[object DataView]"}function Ht(Mt){return typeof DataView<"u"&&($t.working?$t(Mt):Mt instanceof DataView)}tt.isArgumentsObject=rt,tt.isGeneratorFunction=lt,tt.isTypedArray=Ut,tt.isPromise=function(Mt){return typeof Promise<"u"&&Mt instanceof Promise||Mt!==null&&typeof Mt=="object"&&typeof Mt.then=="function"&&typeof Mt.catch=="function"},tt.isArrayBufferView=function(Mt){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(Mt):Ut(Mt)||Ht(Mt)},tt.isUint8Array=function(Mt){return ut(Mt)==="Uint8Array"},tt.isUint8ClampedArray=function(Mt){return ut(Mt)==="Uint8ClampedArray"},tt.isUint16Array=function(Mt){return ut(Mt)==="Uint16Array"},tt.isUint32Array=function(Mt){return ut(Mt)==="Uint32Array"},tt.isInt8Array=function(Mt){return ut(Mt)==="Int8Array"},tt.isInt16Array=function(Mt){return ut(Mt)==="Int16Array"},tt.isInt32Array=function(Mt){return ut(Mt)==="Int32Array"},tt.isFloat32Array=function(Mt){return ut(Mt)==="Float32Array"},tt.isFloat64Array=function(Mt){return ut(Mt)==="Float64Array"},tt.isBigInt64Array=function(Mt){return ut(Mt)==="BigInt64Array"},tt.isBigUint64Array=function(Mt){return ut(Mt)==="BigUint64Array"},Vt.working=typeof Map<"u"&&Vt(new Map),tt.isMap=function(Mt){return typeof Map<"u"&&(Vt.working?Vt(Mt):Mt instanceof Map)},Tt.working=typeof Set<"u"&&Tt(new Set),tt.isSet=function(Mt){return typeof Set<"u"&&(Tt.working?Tt(Mt):Mt instanceof Set)},ft.working=typeof WeakMap<"u"&&ft(new WeakMap),tt.isWeakMap=function(Mt){return typeof WeakMap<"u"&&(ft.working?ft(Mt):Mt instanceof WeakMap)},Wt.working=typeof WeakSet<"u"&&Wt(new WeakSet),tt.isWeakSet=function(Mt){return Wt(Mt)},yt.working=typeof ArrayBuffer<"u"&&yt(new ArrayBuffer),tt.isArrayBuffer=Kt,$t.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&$t(new DataView(new ArrayBuffer(1),0,1)),tt.isDataView=Ht;var Nt=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function qt(Mt){return St(Mt)==="[object SharedArrayBuffer]"}function kt(Mt){return Nt!==void 0&&(qt.working===void 0&&(qt.working=qt(new Nt)),qt.working?qt(Mt):Mt instanceof Nt)}function bt(Mt){return gt(Mt,pt)}function Jt(Mt){return gt(Mt,Rt)}function wt(Mt){return gt(Mt,Bt)}function At(Mt){return st&>(Mt,ht)}function Ct(Mt){return dt&>(Mt,mt)}tt.isSharedArrayBuffer=kt,tt.isAsyncFunction=function(Mt){return St(Mt)==="[object AsyncFunction]"},tt.isMapIterator=function(Mt){return St(Mt)==="[object Map Iterator]"},tt.isSetIterator=function(Mt){return St(Mt)==="[object Set Iterator]"},tt.isGeneratorObject=function(Mt){return St(Mt)==="[object Generator]"},tt.isWebAssemblyCompiledModule=function(Mt){return St(Mt)==="[object WebAssembly.Module]"},tt.isNumberObject=bt,tt.isStringObject=Jt,tt.isBooleanObject=wt,tt.isBigIntObject=At,tt.isSymbolObject=Ct,tt.isBoxedPrimitive=function(Mt){return bt(Mt)||Jt(Mt)||wt(Mt)||At(Mt)||Ct(Mt)},tt.isAnyArrayBuffer=function(Mt){return typeof Uint8Array<"u"&&(Kt(Mt)||kt(Mt))},["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(Mt){Object.defineProperty(tt,Mt,{enumerable:!1,value:function(){throw new Error(Mt+" is not supported in userland")}})})},9208:(et,tt,nt)=>{var rt=Object.getOwnPropertyDescriptors||function(Ct){for(var Mt=Object.keys(Ct),nn={},sn=0;sn=Lt)return on;switch(on){case"%s":return String(sn[nn++]);case"%d":return Number(sn[nn++]);case"%j":try{return JSON.stringify(sn[nn++])}catch{return"[Circular]"}default:return on}}),cn=sn[nn];nn"u")return function(){return tt.deprecate(Ct,Mt).apply(this,arguments)};var nn=!1;return function(){if(!nn){if(process.throwDeprecation)throw new Error(Mt);process.traceDeprecation?console.trace(Mt):console.error(Mt),nn=!0}return Ct.apply(this,arguments)}};var ut={},Ut=/^$/;if({}.NODE_DEBUG){var ot={}.NODE_DEBUG;ot=ot.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),Ut=new RegExp("^"+ot+"$","i")}function st(Ct,Mt){var nn={seen:[],stylize:St};return arguments.length>=3&&(nn.depth=arguments[2]),arguments.length>=4&&(nn.colors=arguments[3]),mt(Mt)?nn.showHidden=Mt:Mt&&tt._extend(nn,Mt),ft(nn.showHidden)&&(nn.showHidden=!1),ft(nn.depth)&&(nn.depth=2),ft(nn.colors)&&(nn.colors=!1),ft(nn.customInspect)&&(nn.customInspect=!0),nn.colors&&(nn.stylize=dt),pt(nn,Ct,nn.depth)}function dt(Ct,Mt){var nn=st.styles[Mt];return nn?"\x1B["+st.colors[nn][0]+"m"+Ct+"\x1B["+st.colors[nn][1]+"m":Ct}function St(Ct,Mt){return Ct}function pt(Ct,Mt,nn){if(Ct.customInspect&&Mt&&Ht(Mt.inspect)&&Mt.inspect!==tt.inspect&&(!Mt.constructor||Mt.constructor.prototype!==Mt)){var sn=Mt.inspect(nn,Ct);return Tt(sn)||(sn=pt(Ct,sn,nn)),sn}var Lt=function(Fn,fn){if(ft(fn))return Fn.stylize("undefined","undefined");if(Tt(fn)){var Un="'"+JSON.stringify(fn).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return Fn.stylize(Un,"string")}if(Vt(fn))return Fn.stylize(""+fn,"number");if(mt(fn))return Fn.stylize(""+fn,"boolean");if(gt(fn))return Fn.stylize("null","null")}(Ct,Mt);if(Lt)return Lt;var tn=Object.keys(Mt),cn=function(Fn){var fn={};return Fn.forEach(function(Un,Jn){fn[Un]=!0}),fn}(tn);if(Ct.showHidden&&(tn=Object.getOwnPropertyNames(Mt)),$t(Mt)&&(tn.indexOf("message")>=0||tn.indexOf("description")>=0))return Rt(Mt);if(tn.length===0){if(Ht(Mt)){var on=Mt.name?": "+Mt.name:"";return Ct.stylize("[Function"+on+"]","special")}if(Wt(Mt))return Ct.stylize(RegExp.prototype.toString.call(Mt),"regexp");if(Kt(Mt))return Ct.stylize(Date.prototype.toString.call(Mt),"date");if($t(Mt))return Rt(Mt)}var Gt,Xt="",dn=!1,Vn=["{","}"];return ht(Mt)&&(dn=!0,Vn=["[","]"]),Ht(Mt)&&(Xt=" [Function"+(Mt.name?": "+Mt.name:"")+"]"),Wt(Mt)&&(Xt=" "+RegExp.prototype.toString.call(Mt)),Kt(Mt)&&(Xt=" "+Date.prototype.toUTCString.call(Mt)),$t(Mt)&&(Xt=" "+Rt(Mt)),tn.length!==0||dn&&Mt.length!=0?nn<0?Wt(Mt)?Ct.stylize(RegExp.prototype.toString.call(Mt),"regexp"):Ct.stylize("[Object]","special"):(Ct.seen.push(Mt),Gt=dn?function(Fn,fn,Un,Jn,_n){for(var Zn=[],On=0,Yn=fn.length;On=0,Jn+_n.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?Un[0]+(fn===""?"":fn+` + `)+" "+Fn.join(`, + `)+" "+Un[1]:Un[0]+fn+" "+Fn.join(", ")+" "+Un[1]}(Gt,Xt,Vn)):Vn[0]+Xt+Vn[1]}function Rt(Ct){return"["+Error.prototype.toString.call(Ct)+"]"}function Bt(Ct,Mt,nn,sn,Lt,tn){var cn,on,Gt;if((Gt=Object.getOwnPropertyDescriptor(Mt,Lt)||{value:Mt[Lt]}).get?on=Gt.set?Ct.stylize("[Getter/Setter]","special"):Ct.stylize("[Getter]","special"):Gt.set&&(on=Ct.stylize("[Setter]","special")),Jt(sn,Lt)||(cn="["+Lt+"]"),on||(Ct.seen.indexOf(Gt.value)<0?(on=gt(nn)?pt(Ct,Gt.value,null):pt(Ct,Gt.value,nn-1)).indexOf(` +`)>-1&&(on=tn?on.split(` +`).map(function(Xt){return" "+Xt}).join(` +`).slice(2):` +`+on.split(` +`).map(function(Xt){return" "+Xt}).join(` +`)):on=Ct.stylize("[Circular]","special")),ft(cn)){if(tn&&Lt.match(/^\d+$/))return on;(cn=JSON.stringify(""+Lt)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(cn=cn.slice(1,-1),cn=Ct.stylize(cn,"name")):(cn=cn.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),cn=Ct.stylize(cn,"string"))}return cn+": "+on}function ht(Ct){return Array.isArray(Ct)}function mt(Ct){return typeof Ct=="boolean"}function gt(Ct){return Ct===null}function Vt(Ct){return typeof Ct=="number"}function Tt(Ct){return typeof Ct=="string"}function ft(Ct){return Ct===void 0}function Wt(Ct){return yt(Ct)&&Nt(Ct)==="[object RegExp]"}function yt(Ct){return typeof Ct=="object"&&Ct!==null}function Kt(Ct){return yt(Ct)&&Nt(Ct)==="[object Date]"}function $t(Ct){return yt(Ct)&&(Nt(Ct)==="[object Error]"||Ct instanceof Error)}function Ht(Ct){return typeof Ct=="function"}function Nt(Ct){return Object.prototype.toString.call(Ct)}function qt(Ct){return Ct<10?"0"+Ct.toString(10):Ct.toString(10)}tt.debuglog=function(Ct){if(Ct=Ct.toUpperCase(),!ut[Ct])if(Ut.test(Ct)){var Mt=process.pid;ut[Ct]=function(){var nn=tt.format.apply(tt,arguments);console.error("%s %d: %s",Ct,Mt,nn)}}else ut[Ct]=function(){};return ut[Ct]},tt.inspect=st,st.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]},st.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},tt.types=nt(1531),tt.isArray=ht,tt.isBoolean=mt,tt.isNull=gt,tt.isNullOrUndefined=function(Ct){return Ct==null},tt.isNumber=Vt,tt.isString=Tt,tt.isSymbol=function(Ct){return typeof Ct=="symbol"},tt.isUndefined=ft,tt.isRegExp=Wt,tt.types.isRegExp=Wt,tt.isObject=yt,tt.isDate=Kt,tt.types.isDate=Kt,tt.isError=$t,tt.types.isNativeError=$t,tt.isFunction=Ht,tt.isPrimitive=function(Ct){return Ct===null||typeof Ct=="boolean"||typeof Ct=="number"||typeof Ct=="string"||typeof Ct=="symbol"||Ct===void 0},tt.isBuffer=nt(5272);var kt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function bt(){var Ct=new Date,Mt=[qt(Ct.getHours()),qt(Ct.getMinutes()),qt(Ct.getSeconds())].join(":");return[Ct.getDate(),kt[Ct.getMonth()],Mt].join(" ")}function Jt(Ct,Mt){return Object.prototype.hasOwnProperty.call(Ct,Mt)}tt.log=function(){console.log("%s - %s",bt(),tt.format.apply(tt,arguments))},tt.inherits=nt(5615),tt._extend=function(Ct,Mt){if(!Mt||!yt(Mt))return Ct;for(var nn=Object.keys(Mt),sn=nn.length;sn--;)Ct[nn[sn]]=Mt[nn[sn]];return Ct};var wt=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;function At(Ct,Mt){if(!Ct){var nn=new Error("Promise was rejected with a falsy value");nn.reason=Ct,Ct=nn}return Mt(Ct)}tt.promisify=function(Ct){if(typeof Ct!="function")throw new TypeError('The "original" argument must be of type Function');if(wt&&Ct[wt]){var Mt;if(typeof(Mt=Ct[wt])!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Mt,wt,{value:Mt,enumerable:!1,writable:!1,configurable:!0}),Mt}function Mt(){for(var nn,sn,Lt=new Promise(function(on,Gt){nn=on,sn=Gt}),tn=[],cn=0;cn{nt.d(tt,{A:()=>dt});const rt={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};let lt;const ut=new Uint8Array(16);function Ut(){if(!lt&&(lt=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!lt))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return lt(ut)}const ot=[];for(let St=0;St<256;++St)ot.push((St+256).toString(16).slice(1));function st(St,pt=0){return ot[St[pt+0]]+ot[St[pt+1]]+ot[St[pt+2]]+ot[St[pt+3]]+"-"+ot[St[pt+4]]+ot[St[pt+5]]+"-"+ot[St[pt+6]]+ot[St[pt+7]]+"-"+ot[St[pt+8]]+ot[St[pt+9]]+"-"+ot[St[pt+10]]+ot[St[pt+11]]+ot[St[pt+12]]+ot[St[pt+13]]+ot[St[pt+14]]+ot[St[pt+15]]}const dt=function(St,pt,Rt){if(rt.randomUUID&&!pt&&!St)return rt.randomUUID();const Bt=(St=St||{}).random||(St.rng||Ut)();if(Bt[6]=15&Bt[6]|64,Bt[8]=63&Bt[8]|128,pt){Rt=Rt||0;for(let ht=0;ht<16;++ht)pt[Rt+ht]=Bt[ht];return pt}return st(Bt)}},2730:(et,tt,nt)=>{var rt=nt(705),lt=nt(4834),ut=nt(8498),Ut=nt(9818),ot=nt(9336),st=Ut("Object.prototype.toString"),dt=nt(1913)(),St=typeof globalThis>"u"?nt.g:globalThis,pt=lt(),Rt=Ut("String.prototype.slice"),Bt=Object.getPrototypeOf,ht=Ut("Array.prototype.indexOf",!0)||function(gt,Vt){for(var Tt=0;Tt-1?Vt:Vt==="Object"&&function(Tt){var ft=!1;return rt(mt,function(Wt,yt){if(!ft)try{Wt(Tt),ft=Rt(yt,1)}catch{}}),ft}(gt)}return ot?function(Tt){var ft=!1;return rt(mt,function(Wt,yt){if(!ft)try{"$"+Wt(Tt)===yt&&(ft=Rt(yt,1))}catch{}}),ft}(gt):null}},6155:(et,tt,nt)=>{et.exports=nt(5700),et.exports.LegacyTransportStream=nt(6668)},6668:(et,tt,nt)=>{var rt=nt(9208),lt=nt(4966).LEVEL,ut=nt(5700),Ut=et.exports=function(){var ot=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(ut.call(this,ot),!ot.transport||typeof ot.transport.log!="function")throw new Error("Invalid transport, must be an object with a log method.");function st(dt){this.emit("error",dt,this.transport)}this.transport=ot.transport,this.level=this.level||ot.transport.level,this.handleExceptions=this.handleExceptions||ot.transport.handleExceptions,this._deprecated(),this.transport.__winstonError||(this.transport.__winstonError=st.bind(this),this.transport.on("error",this.transport.__winstonError))};rt.inherits(Ut,ut),Ut.prototype._write=function(ot,st,dt){if(this.silent||ot.exception===!0&&!this.handleExceptions)return dt(null);(!this.level||this.levels[this.level]>=this.levels[ot[lt]])&&this.transport.log(ot[lt],ot.message,ot,this._nop),dt(null)},Ut.prototype._writev=function(ot,st){for(var dt=0;dt{var rt=nt(9208),lt=nt(5291),ut=nt(4966).LEVEL,Ut=et.exports=function(){var ot=this,st=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};lt.call(this,{objectMode:!0,highWaterMark:st.highWaterMark}),this.format=st.format,this.level=st.level,this.handleExceptions=st.handleExceptions,this.handleRejections=st.handleRejections,this.silent=st.silent,st.log&&(this.log=st.log),st.logv&&(this.logv=st.logv),st.close&&(this.close=st.close),this.once("pipe",function(dt){ot.levels=dt.levels,ot.parent=dt}),this.once("unpipe",function(dt){dt===ot.parent&&(ot.parent=null,ot.close&&ot.close())})};rt.inherits(Ut,lt),Ut.prototype._write=function(ot,st,dt){if(this.silent||ot.exception===!0&&!this.handleExceptions)return dt(null);var St=this.level||this.parent&&this.parent.level;if(!St||this.levels[St]>=this.levels[ot[ut]]){if(ot&&!this.format)return this.log(ot,dt);var pt=void 0,Rt=void 0;try{Rt=this.format.transform(Object.assign({},ot),this.format.options)}catch(Bt){pt=Bt}if(pt||!Rt){if(dt(),pt)throw pt;return}return this.log(Rt,dt)}return this._writableState.sync=!1,dt(null)},Ut.prototype._writev=function(ot,st){if(this.logv){var dt=ot.filter(this._accept,this);return dt.length?this.logv(dt,st):st(null)}for(var St=0;St=this.levels[st[ut]])||!this.handleExceptions&&st.exception===!0)},Ut.prototype._nop=function(){}},1127:(et,tt,nt)=>{const rt=nt(9208),{LEVEL:lt}=nt(4966),ut=nt(4927),Ut=et.exports=function(ot={}){if(ut.call(this,ot),!ot.transport||typeof ot.transport.log!="function")throw new Error("Invalid transport, must be an object with a log method.");this.transport=ot.transport,this.level=this.level||ot.transport.level,this.handleExceptions=this.handleExceptions||ot.transport.handleExceptions,this._deprecated(),this.transport.__winstonError||(this.transport.__winstonError=function(st){this.emit("error",st,this.transport)}.bind(this),this.transport.on("error",this.transport.__winstonError))};rt.inherits(Ut,ut),Ut.prototype._write=function(ot,st,dt){if(this.silent||ot.exception===!0&&!this.handleExceptions)return dt(null);(!this.level||this.levels[this.level]>=this.levels[ot[lt]])&&this.transport.log(ot[lt],ot.message,ot,this._nop),dt(null)},Ut.prototype._writev=function(ot,st){for(let dt=0;dt{const rt=nt(9208),lt=nt(5291),{LEVEL:ut}=nt(4966),Ut=et.exports=function(ot={}){lt.call(this,{objectMode:!0,highWaterMark:ot.highWaterMark}),this.format=ot.format,this.level=ot.level,this.handleExceptions=ot.handleExceptions,this.handleRejections=ot.handleRejections,this.silent=ot.silent,ot.log&&(this.log=ot.log),ot.logv&&(this.logv=ot.logv),ot.close&&(this.close=ot.close),this.once("pipe",st=>{this.levels=st.levels,this.parent=st}),this.once("unpipe",st=>{st===this.parent&&(this.parent=null,this.close&&this.close())})};rt.inherits(Ut,lt),Ut.prototype._write=function(ot,st,dt){if(this.silent||ot.exception===!0&&!this.handleExceptions)return dt(null);const St=this.level||this.parent&&this.parent.level;if(!St||this.levels[St]>=this.levels[ot[ut]]){if(ot&&!this.format)return this.log(ot,dt);let pt,Rt;try{Rt=this.format.transform(Object.assign({},ot),this.format.options)}catch(Bt){pt=Bt}if(pt||!Rt){if(dt(),pt)throw pt;return}return this.log(Rt,dt)}return this._writableState.sync=!1,dt(null)},Ut.prototype._writev=function(ot,st){if(this.logv){const dt=ot.filter(this._accept,this);return dt.length?this.logv(dt,st):st(null)}for(let dt=0;dt=this.levels[st[ut]])||!this.handleExceptions&&st.exception===!0)},Ut.prototype._nop=function(){}},6563:(et,tt,nt)=>{var rt=nt(8911),lt=nt(1735).warn;tt.version=nt(7241).version,tt.transports=nt(3307),tt.config=nt(9127),tt.addColors=rt.levels,tt.format=rt.format,tt.createLogger=nt(8727),tt.Logger=nt(2162),tt.ExceptionHandler=nt(8624),tt.RejectionHandler=nt(8846),tt.Container=nt(9456),tt.Transport=nt(6155),tt.loggers=new tt.Container;var ut=tt.createLogger();Object.keys(tt.config.npm.levels).concat(["log","query","stream","add","remove","clear","profile","startTimer","handleExceptions","unhandleExceptions","handleRejections","unhandleRejections","configure","child"]).forEach(function(Ut){return tt[Ut]=function(){return ut[Ut].apply(ut,arguments)}}),Object.defineProperty(tt,"level",{get:function(){return ut.level},set:function(Ut){ut.level=Ut}}),Object.defineProperty(tt,"exceptions",{get:function(){return ut.exceptions}}),Object.defineProperty(tt,"rejections",{get:function(){return ut.rejections}}),["exitOnError"].forEach(function(Ut){Object.defineProperty(tt,Ut,{get:function(){return ut[Ut]},set:function(ot){ut[Ut]=ot}})}),Object.defineProperty(tt,"default",{get:function(){return{exceptionHandlers:ut.exceptionHandlers,rejectionHandlers:ut.rejectionHandlers,transports:ut.transports}}}),lt.deprecated(tt,"setLevels"),lt.forFunctions(tt,"useFormat",["cli"]),lt.forProperties(tt,"useFormat",["padLevels","stripColors"]),lt.forFunctions(tt,"deprecated",["addRewriter","addFilter","clone","extend"]),lt.forProperties(tt,"deprecated",["emitErrs","levelLength"])},1735:(et,tt,nt)=>{var rt=nt(9208).format;tt.warn={deprecated:function(lt){return function(){throw new Error(rt("{ %s } was removed in winston@3.0.0.",lt))}},useFormat:function(lt){return function(){throw new Error([rt("{ %s } was removed in winston@3.0.0.",lt),"Use a custom winston.format = winston.format(function) instead."].join(` +`))}},forFunctions:function(lt,ut,Ut){Ut.forEach(function(ot){lt[ot]=tt.warn[ut](ot)})},forProperties:function(lt,ut,Ut){Ut.forEach(function(ot){var st=tt.warn[ut](ot);Object.defineProperty(lt,ot,{get:st,set:st})})}}},9127:(et,tt,nt)=>{var rt=nt(8911),lt=nt(4966).configs;tt.cli=rt.levels(lt.cli),tt.npm=rt.levels(lt.npm),tt.syslog=rt.levels(lt.syslog),tt.addColors=rt.levels},9456:(et,tt,nt)=>{function rt(st){return(rt=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})(st)}function lt(st,dt){if(!(st instanceof dt))throw new TypeError("Cannot call a class as a function")}function ut(st,dt){for(var St=0;St0&&arguments[0]!==void 0?arguments[0]:{};lt(this,pt),this.loggers=new Map,this.options=Rt},(dt=[{key:"add",value:function(pt,Rt){var Bt=this;if(!this.loggers.has(pt)){var ht=(Rt=Object.assign({},Rt||this.options)).transports||this.options.transports;Rt.transports=ht?Array.isArray(ht)?ht.slice():[ht]:[];var mt=ot(Rt);mt.on("close",function(){return Bt._delete(pt)}),this.loggers.set(pt,mt)}return this.loggers.get(pt)}},{key:"get",value:function(pt,Rt){return this.add(pt,Rt)}},{key:"has",value:function(pt){return!!this.loggers.has(pt)}},{key:"close",value:function(pt){var Rt=this;if(pt)return this._removeLogger(pt);this.loggers.forEach(function(Bt,ht){return Rt._removeLogger(ht)})}},{key:"_removeLogger",value:function(pt){this.loggers.has(pt)&&(this.loggers.get(pt).close(),this._delete(pt))}},{key:"_delete",value:function(pt){this.loggers.delete(pt)}}])&&ut(st.prototype,dt),St&&ut(st,St),Object.defineProperty(st,"prototype",{writable:!1}),st;var st,dt,St}()},8727:(et,tt,nt)=>{function rt(Vt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Tt){return typeof Tt}:function(Tt){return Tt&&typeof Symbol=="function"&&Tt.constructor===Symbol&&Tt!==Symbol.prototype?"symbol":typeof Tt})(Vt)}function lt(Vt,Tt){for(var ft=0;ft0&&arguments[0]!==void 0?arguments[0]:{};Vt.levels=Vt.levels||Bt.npm.levels;var Tt=function(Wt){function yt(Kt){return ot(this,yt),st(this,yt,[Kt])}return St(yt,Wt),ut(yt)}(ht),ft=new Tt(Vt);return Object.keys(Vt.levels).forEach(function(Wt){mt('Define prototype method for "%s"',Wt),Wt!=="log"?(Tt.prototype[Wt]=function(){for(var yt=this||ft,Kt=arguments.length,$t=new Array(Kt),Ht=0;Ht{function rt(Rt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Bt){return typeof Bt}:function(Bt){return Bt&&typeof Symbol=="function"&&Bt.constructor===Symbol&&Bt!==Symbol.prototype?"symbol":typeof Bt})(Rt)}function lt(Rt,Bt){for(var ht=0;ht{function rt(St){return(rt=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})(St)}function lt(St,pt){for(var Rt=0;Rt{function rt(kt,bt,Jt){return(bt=Ut(bt))in kt?Object.defineProperty(kt,bt,{value:Jt,enumerable:!0,configurable:!0,writable:!0}):kt[bt]=Jt,kt}function lt(kt){return(lt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(bt){return typeof bt}:function(bt){return bt&&typeof Symbol=="function"&&bt.constructor===Symbol&&bt!==Symbol.prototype?"symbol":typeof bt})(kt)}function ut(kt,bt){for(var Jt=0;Jt0&&arguments[0]!==void 0?arguments[0]:{},nn=Mt.silent,sn=Mt.format,Lt=Mt.defaultMeta,tn=Mt.levels,cn=Mt.level,on=cn===void 0?"info":cn,Gt=Mt.exitOnError,Xt=Gt===void 0||Gt,dn=Mt.transports,Vn=Mt.colors,Fn=Mt.emitErrs,fn=Mt.formatters,Un=Mt.padLevels,Jn=Mt.rewriters,_n=Mt.stripColors,Zn=Mt.exceptionHandlers,On=Mt.rejectionHandlers;if(this.transports.length&&this.clear(),this.silent=nn,this.format=sn||this.format||nt(2598)(),this.defaultMeta=Lt||null,this.levels=tn||this.levels||$t.npm.levels,this.level=on,this.exceptions&&this.exceptions.unhandle(),this.rejections&&this.rejections.unhandle(),this.exceptions=new Tt(this),this.rejections=new ft(this),this.profilers={},this.exitOnError=Xt,dn&&(dn=Array.isArray(dn)?dn:[dn]).forEach(function(Yn){return Ct.add(Yn)}),Vn||Fn||fn||Un||Jn||_n)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(` +`));Zn&&this.exceptions.handle(Zn),On&&this.rejections.handle(On)}},{key:"isLevelEnabled",value:function(Ct){var Mt=this,nn=qt(this.levels,Ct);if(nn===null)return!1;var sn=qt(this.levels,this.level);return sn!==null&&(this.transports&&this.transports.length!==0?this.transports.findIndex(function(Lt){var tn=qt(Mt.levels,Lt.level);return tn===null&&(tn=sn),tn>=nn})!==-1:sn>=nn)}},{key:"log",value:function(Ct,Mt){for(var nn=arguments.length,sn=new Array(nn>2?nn-2:0),Lt=2;Lt2?new Wt({transport:Ct}):Ct;if(!Mt._writableState||!Mt._writableState.objectMode)throw new Error("Transports must WritableStreams in objectMode. Set { objectMode: true }.");return this._onEvent("error",Mt),this._onEvent("warn",Mt),this.pipe(Mt),Ct.handleExceptions&&this.exceptions.handle(),Ct.handleRejections&&this.rejections.handle(),this}},{key:"remove",value:function(Ct){if(!Ct)return this;var Mt=Ct;return(!Vt(Ct)||Ct.log.length>2)&&(Mt=this.transports.filter(function(nn){return nn.transport===Ct})[0]),Mt&&this.unpipe(Mt),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(){Kt.deprecated("setLevels")}},{key:"query",value:function(Ct,Mt){typeof Ct=="function"&&(Mt=Ct,Ct={}),Ct=Ct||{};var nn={},sn=Object.assign({},Ct.query||{});Bt(this.transports.filter(function(Lt){return!!Lt.query}),function(Lt,tn){(function(cn,on){Ct.query&&typeof cn.formatQuery=="function"&&(Ct.query=cn.formatQuery(sn)),cn.query(Ct,function(Gt,Xt){if(Gt)return on(Gt);typeof cn.formatResults=="function"&&(Xt=cn.formatResults(Xt,Ct.format)),on(null,Xt)})})(Lt,function(cn,on){tn&&((on=cn||on)&&(nn[Lt.name]=on),tn()),tn=null})},function(){return Mt(null,nn)})}},{key:"stream",value:function(){var Ct=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Mt=new pt,nn=[];return Mt._streams=nn,Mt.destroy=function(){for(var sn=nn.length;sn--;)nn[sn].destroy()},this.transports.filter(function(sn){return!!sn.stream}).forEach(function(sn){var Lt=sn.stream(Ct);Lt&&(nn.push(Lt),Lt.on("log",function(tn){tn.transport=tn.transport||[],tn.transport.push(sn.name),Mt.emit("log",tn)}),Lt.on("error",function(tn){tn.transport=tn.transport||[],tn.transport.push(sn.name),Mt.emit("error",tn)}))}),Mt}},{key:"startTimer",value:function(){return new yt(this)}},{key:"profile",value:function(Ct){var Mt=Date.now();if(this.profilers[Ct]){var nn=this.profilers[Ct];delete this.profilers[Ct];for(var sn=arguments.length,Lt=new Array(sn>1?sn-1:0),tn=1;tn{function rt(ot){return(rt=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})(ot)}function lt(ot,st){for(var dt=0;dt{function rt(Rt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Bt){return typeof Bt}:function(Bt){return Bt&&typeof Symbol=="function"&&Bt.constructor===Symbol&&Bt!==Symbol.prototype?"symbol":typeof Bt})(Rt)}function lt(Rt,Bt){for(var ht=0;ht{function rt(St){return(rt=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})(St)}function lt(St,pt){for(var Rt=0;Rt{var rt=nt(2627),lt=nt(8888).StringDecoder,ut=nt(4156).Stream;function Ut(){}et.exports=function(ot,st){var dt=Buffer.alloc(65536),St=new lt("utf8"),pt=new ut,Rt="",Bt=0,ht=0;return ot.start===-1&&delete ot.start,pt.readable=!0,pt.destroy=function(){pt.destroyed=!0,pt.emit("end"),pt.emit("close")},rt.open(ot.file,"a+","0644",function(mt,gt){if(mt)return st?st(mt):pt.emit("error",mt),void pt.destroy();(function Vt(){if(!pt.destroyed)return rt.read(gt,dt,0,dt.length,Bt,function(Tt,ft){if(Tt)return st?st(Tt):pt.emit("error",Tt),void pt.destroy();if(!ft)return Rt&&((ot.start==null||ht>ot.start)&&(st?st(null,Rt):pt.emit("line",Rt)),ht++,Rt=""),setTimeout(Vt,1e3);var Wt=St.write(dt.slice(0,ft));st||pt.emit("data",Wt);for(var yt=(Wt=(Rt+Wt).split(/\n+/)).length-1,Kt=0;Ktot.start)&&(st?st(null,Wt[Kt]):pt.emit("line",Wt[Kt])),ht++;return Rt=Wt[yt],Bt+=ft,Vt()});rt.close(gt,Ut)})()}),st?pt.destroy:pt}},810:(et,tt,nt)=>{function rt(mt){return(rt=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})(mt)}function lt(mt,gt){if(!(mt instanceof gt))throw new TypeError("Cannot call a class as a function")}function ut(mt,gt){for(var Vt=0;Vt0&&arguments[0]!==void 0?arguments[0]:{};return lt(this,gt),(Wt=ot(this,gt,[yt])).name=yt.name||"console",Wt.stderrLevels=Wt._stringArrayToSet(yt.stderrLevels),Wt.consoleWarnLevels=Wt._stringArrayToSet(yt.consoleWarnLevels),Wt.eol=typeof yt.eol=="string"?yt.eol:St.EOL,Wt.setMaxListeners(30),Wt}return function(Wt,yt){if(typeof yt!="function"&&yt!==null)throw new TypeError("Super expression must either be null or a function");Wt.prototype=Object.create(yt&&yt.prototype,{constructor:{value:Wt,writable:!0,configurable:!0}}),Object.defineProperty(Wt,"prototype",{writable:!1}),yt&&dt(Wt,yt)}(gt,mt),Vt=gt,(Tt=[{key:"log",value:function(Wt,yt){var Kt=this;return setImmediate(function(){return Kt.emit("logged",Wt)}),this.stderrLevels[Wt[Rt]]?(console._stderr?console._stderr.write("".concat(Wt[Bt]).concat(this.eol)):console.error(Wt[Bt]),void(yt&&yt())):this.consoleWarnLevels[Wt[Rt]]?(console._stderr?console._stderr.write("".concat(Wt[Bt]).concat(this.eol)):console.warn(Wt[Bt]),void(yt&&yt())):(console._stdout?console._stdout.write("".concat(Wt[Bt]).concat(this.eol)):console.log(Wt[Bt]),void(yt&&yt()))}},{key:"_stringArrayToSet",value:function(Wt,yt){if(!Wt)return{};if(yt=yt||"Cannot make set from type other than Array of string elements",!Array.isArray(Wt))throw new Error(yt);return Wt.reduce(function(Kt,$t){if(typeof $t!="string")throw new Error(yt);return Kt[$t]=!0,Kt},{})}}])&&ut(Vt.prototype,Tt),ft&&ut(Vt,ft),Object.defineProperty(Vt,"prototype",{writable:!1}),Vt;var Vt,Tt,ft}(ht)},3329:(et,tt,nt)=>{function rt(Kt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($t){return typeof $t}:function($t){return $t&&typeof Symbol=="function"&&$t.constructor===Symbol&&$t!==Symbol.prototype?"symbol":typeof $t})(Kt)}function lt(Kt,$t){if(!(Kt instanceof $t))throw new TypeError("Cannot call a class as a function")}function ut(Kt,$t){for(var Ht=0;Ht<$t.length;Ht++){var Nt=$t[Ht];Nt.enumerable=Nt.enumerable||!1,Nt.configurable=!0,"value"in Nt&&(Nt.writable=!0),Object.defineProperty(Kt,Ut(Nt.key),Nt)}}function Ut(Kt){var $t=function(Ht,Nt){if(rt(Ht)!="object"||!Ht)return Ht;var qt=Ht[Symbol.toPrimitive];if(qt!==void 0){var kt=qt.call(Ht,Nt||"default");if(rt(kt)!="object")return kt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Nt==="string"?String:Number)(Ht)}(Kt,"string");return rt($t)=="symbol"?$t:$t+""}function ot(Kt,$t,Ht){return $t=st($t),function(Nt,qt){if(qt&&(rt(qt)=="object"||typeof qt=="function"))return qt;if(qt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(kt){if(kt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return kt}(Nt)}(Kt,function(){try{var Nt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return function(){return!!Nt}()}()?Reflect.construct($t,Ht||[],st(Kt).constructor):$t.apply(Kt,Ht))}function st(Kt){return(st=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($t){return $t.__proto__||Object.getPrototypeOf($t)})(Kt)}function dt(Kt,$t){return(dt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Ht,Nt){return Ht.__proto__=Nt,Ht})(Kt,$t)}var St=nt(9256),pt=nt(8558),Rt=nt(481),Bt=nt(7946),ht=nt(4966).MESSAGE,mt=nt(4156),gt=mt.Stream,Vt=mt.PassThrough,Tt=nt(6155),ft=nt(7147)("winston:file"),Wt=nt(2213),yt=nt(2879);et.exports=function(Kt){function $t(){var kt,bt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};function Jt(wt){for(var At=arguments.length,Ct=new Array(At>1?At-1:0),Mt=1;Mt1&&arguments[1]!==void 0?arguments[1]:function(){};if(this.silent)return Jt(),!0;if(this._drain)this._stream.once("drain",function(){bt._drain=!1,bt.log(kt,Jt)});else{if(!this._rotate){if(this.lazy){if(!this._fileExist)return this._opening||this.open(),void this.once("open",function(){bt._fileExist=!0,bt.log(kt,Jt)});if(this._needsNewFile(this._pendingSize))return void this._dest.once("close",function(){bt._opening||bt.open(),bt.once("open",function(){bt.log(kt,Jt)})})}var wt="".concat(kt[ht]).concat(this.eol),At=Buffer.byteLength(wt);this._pendingSize+=At,this._opening&&!this.rotatedWhileOpening&&this._needsNewFile(this._size+this._pendingSize)&&(this.rotatedWhileOpening=!0);var Ct=this._stream.write(wt,Mt.bind(this));return Ct?Jt():(this._drain=!0,this._stream.once("drain",function(){bt._drain=!1,Jt()})),ft("written",Ct,this._drain),this.finishIfEnding(),Ct}this._stream.once("rotate",function(){bt._rotate=!1,bt.log(kt,Jt)})}function Mt(){var nn=this;this._size+=At,this._pendingSize-=At,ft("logged %s %s",this._size,wt),this.emit("logged",kt),this._rotate||this._opening||this._needsNewFile()&&(this.lazy?this._endStream(function(){nn.emit("fileclosed")}):(this._rotate=!0,this._endStream(function(){return nn._rotateFile()})))}}},{key:"query",value:function(kt,bt){typeof kt=="function"&&(bt=kt,kt={}),kt=function(sn){return(sn=sn||{}).rows=sn.rows||sn.limit||10,sn.start=sn.start||0,sn.until=sn.until||new Date,rt(sn.until)!=="object"&&(sn.until=new Date(sn.until)),sn.from=sn.from||sn.until-864e5,rt(sn.from)!=="object"&&(sn.from=new Date(sn.from)),sn.order=sn.order||"desc",sn}(kt);var Jt=pt.join(this.dirname,this.filename),wt="",At=[],Ct=0,Mt=St.createReadStream(Jt,{encoding:"utf8"});function nn(sn,Lt){try{var tn=JSON.parse(sn);(function(cn){if(cn&&rt(cn)==="object"){var on=new Date(cn.timestamp);if(!(kt.from&&onkt.until||kt.level&&kt.level!==cn.level))return!0}})(tn)&&function(cn){kt.rows&&At.length>=kt.rows&&kt.order!=="desc"?Mt.readable&&Mt.destroy():(kt.fields&&(cn=kt.fields.reduce(function(on,Gt){return on[Gt]=cn[Gt],on},{})),kt.order==="desc"&&At.length>=kt.rows&&At.shift(),At.push(cn))}(tn)}catch(cn){Lt||Mt.emit("error",cn)}}Mt.on("error",function(sn){if(Mt.readable&&Mt.destroy(),bt)return sn.code!=="ENOENT"?bt(sn):bt(null,At)}),Mt.on("data",function(sn){for(var Lt=(sn=(wt+sn).split(/\n+/)).length-1,tn=0;tn=kt.start)&&nn(sn[tn]),Ct++;wt=sn[Lt]}),Mt.on("close",function(){wt&&nn(wt,!0),kt.order==="desc"&&(At=At.reverse()),bt&&bt(null,At)})}},{key:"stream",value:function(){var kt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},bt=pt.join(this.dirname,this.filename),Jt=new gt,wt={file:bt,start:kt.start};return Jt.destroy=yt(wt,function(At,Ct){if(At)return Jt.emit("error",At);try{Jt.emit("data",Ct),Ct=JSON.parse(Ct),Jt.emit("log",Ct)}catch(Mt){Jt.emit("error",Mt)}}),Jt}},{key:"open",value:function(){var kt=this;this.filename&&(this._opening||(this._opening=!0,this.stat(function(bt,Jt){if(bt)return kt.emit("error",bt);ft("stat done: %s { size: %s }",kt.filename,Jt),kt._size=Jt,kt._dest=kt._createStream(kt._stream),kt._opening=!1,kt.once("open",function(){kt._stream.eventNames().includes("rotate")?kt._stream.emit("rotate"):kt._rotate=!1})})))}},{key:"stat",value:function(kt){var bt=this,Jt=this._getFile(),wt=pt.join(this.dirname,Jt);St.stat(wt,function(At,Ct){return At&&At.code==="ENOENT"?(ft("ENOENT ok",wt),bt.filename=Jt,kt(null,0)):At?(ft("err ".concat(At.code," ").concat(wt)),kt(At)):!Ct||bt._needsNewFile(Ct.size)?bt._incFile(function(){return bt.stat(kt)}):(bt.filename=Jt,void kt(null,Ct.size))})}},{key:"close",value:function(kt){var bt=this;this._stream&&this._stream.end(function(){kt&&kt(),bt.emit("flush"),bt.emit("closed")})}},{key:"_needsNewFile",value:function(kt){return kt=kt||this._size,this.maxsize&&kt>=this.maxsize}},{key:"_onError",value:function(kt){this.emit("error",kt)}},{key:"_setupStream",value:function(kt){return kt.on("error",this._onError),kt}},{key:"_cleanupStream",value:function(kt){return kt.removeListener("error",this._onError),kt.destroy(),kt}},{key:"_rotateFile",value:function(){var kt=this;this._incFile(function(){return kt.open()})}},{key:"_endStream",value:function(){var kt=this,bt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){};this._dest?(this._stream.unpipe(this._dest),this._dest.end(function(){kt._cleanupStream(kt._dest),bt()})):bt()}},{key:"_createStream",value:function(kt){var bt=this,Jt=pt.join(this.dirname,this.filename);ft("create stream start",Jt,this.options);var wt=St.createWriteStream(Jt,this.options).on("error",function(At){return ft(At)}).on("close",function(){return ft("close",wt.path,wt.bytesWritten)}).on("open",function(){ft("file open ok",Jt),bt.emit("open",Jt),kt.pipe(wt),bt.rotatedWhileOpening&&(bt._stream=new Vt,bt._stream.setMaxListeners(30),bt._rotateFile(),bt.rotatedWhileOpening=!1,bt._cleanupStream(wt),kt.end())});return ft("create stream ok",Jt),wt}},{key:"_incFile",value:function(kt){ft("_incFile",this.filename);var bt=pt.extname(this._basename),Jt=pt.basename(this._basename,bt),wt=[];this.zippedArchive&&wt.push(function(At){var Ct=this._created>0&&!this.tailable?this._created:"";this._compressFile(pt.join(this.dirname,"".concat(Jt).concat(Ct).concat(bt)),pt.join(this.dirname,"".concat(Jt).concat(Ct).concat(bt,".gz")),At)}.bind(this)),wt.push(function(At){this.tailable?this._checkMaxFilesTailable(bt,Jt,At):(this._created+=1,this._checkMaxFilesIncrementing(bt,Jt,At))}.bind(this)),Rt(wt,kt)}},{key:"_getFile",value:function(){var kt=pt.extname(this._basename),bt=pt.basename(this._basename,kt),Jt=this.rotationFormat?this.rotationFormat():this._created;return!this.tailable&&this._created?"".concat(bt).concat(Jt).concat(kt):"".concat(bt).concat(kt)}},{key:"_checkMaxFilesIncrementing",value:function(kt,bt,Jt){if(!this.maxFiles||this._created1;Mt--)At.push(function(nn,sn){var Lt=this,tn="".concat(bt).concat(nn-1).concat(kt).concat(Ct),cn=pt.join(this.dirname,tn);St.exists(cn,function(on){if(!on)return sn(null);tn="".concat(bt).concat(nn).concat(kt).concat(Ct),St.rename(cn,pt.join(Lt.dirname,tn),sn)})}.bind(this,Mt));Rt(At,function(){St.rename(pt.join(wt.dirname,"".concat(bt).concat(kt).concat(Ct)),pt.join(wt.dirname,"".concat(bt,"1").concat(kt).concat(Ct)),Jt)})}}},{key:"_compressFile",value:function(kt,bt,Jt){St.access(kt,St.F_OK,function(wt){if(wt)return Jt();var At=Bt.createGzip(),Ct=St.createReadStream(kt),Mt=St.createWriteStream(bt);Mt.on("finish",function(){St.unlink(kt,Jt)}),Ct.pipe(At).pipe(Mt)})}},{key:"_createLogDirIfNotExist",value:function(kt){St.existsSync(kt)||St.mkdirSync(kt,{recursive:!0})}}])&&ut(Ht.prototype,Nt),qt&&ut(Ht,qt),Object.defineProperty(Ht,"prototype",{writable:!1}),Ht;var Ht,Nt,qt}(Tt)},7543:(et,tt,nt)=>{function rt(Tt){return(rt=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})(Tt)}function lt(Tt,ft){var Wt=Object.keys(Tt);if(Object.getOwnPropertySymbols){var yt=Object.getOwnPropertySymbols(Tt);ft&&(yt=yt.filter(function(Kt){return Object.getOwnPropertyDescriptor(Tt,Kt).enumerable})),Wt.push.apply(Wt,yt)}return Wt}function ut(Tt){for(var ft=1;ft0&&arguments[0]!==void 0?arguments[0]:{};return ot(this,ft),($t=St(this,ft,[Ht])).options=Ht,$t.name=Ht.name||"http",$t.ssl=!!Ht.ssl,$t.host=Ht.host||"localhost",$t.port=Ht.port,$t.auth=Ht.auth,$t.path=Ht.path||"",$t.maximumDepth=Ht.maximumDepth,$t.agent=Ht.agent,$t.headers=Ht.headers||{},$t.headers["content-type"]="application/json",$t.batch=Ht.batch||!1,$t.batchInterval=Ht.batchInterval||5e3,$t.batchCount=Ht.batchCount||10,$t.batchOptions=[],$t.batchTimeoutID=-1,$t.batchCallback={},$t.port||($t.port=$t.ssl?443:80),$t}return function($t,Ht){if(typeof Ht!="function"&&Ht!==null)throw new TypeError("Super expression must either be null or a function");$t.prototype=Object.create(Ht&&Ht.prototype,{constructor:{value:$t,writable:!0,configurable:!0}}),Object.defineProperty($t,"prototype",{writable:!1}),Ht&&Rt($t,Ht)}(ft,Tt),Wt=ft,(yt=[{key:"log",value:function($t,Ht){var Nt=this;this._request($t,null,null,function(qt,kt){kt&&kt.statusCode!==200&&(qt=new Error("Invalid HTTP Status Code: ".concat(kt.statusCode))),qt?Nt.emit("warn",qt):Nt.emit("logged",$t)}),Ht&&setImmediate(Ht)}},{key:"query",value:function($t,Ht){typeof $t=="function"&&(Ht=$t,$t={});var Nt=($t={method:"query",params:this.normalizeQuery($t)}).params.auth||null;delete $t.params.auth;var qt=$t.params.path||null;delete $t.params.path,this._request($t,Nt,qt,function(kt,bt,Jt){if(bt&&bt.statusCode!==200&&(kt=new Error("Invalid HTTP Status Code: ".concat(bt.statusCode))),kt)return Ht(kt);if(typeof Jt=="string")try{Jt=JSON.parse(Jt)}catch(wt){return Ht(wt)}Ht(null,Jt)})}},{key:"stream",value:function(){var $t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Ht=new mt,Nt=($t={method:"stream",params:$t}).params.path||null;delete $t.params.path;var qt=$t.params.auth||null;delete $t.params.auth;var kt="",bt=this._request($t,qt,Nt);return Ht.destroy=function(){return bt.destroy()},bt.on("data",function(Jt){for(var wt=(Jt=(kt+Jt).split(/\n+/)).length-1,At=0;At0&&(clearTimeout(this.batchTimeoutID),this.batchTimeoutID=-1);var qt=this.batchOptions.slice();this.batchOptions=[],this._doRequest(qt,$t,Ht,Nt)}},{key:"_doRequest",value:function($t,Ht,Nt,qt){var kt=Object.assign({},this.headers);Nt&&Nt.bearer&&(kt.Authorization="Bearer ".concat(Nt.bearer));var bt=(this.ssl?ht:Bt).request(ut(ut({},this.options),{},{method:"POST",host:this.host,port:this.port,path:"/".concat(qt.replace(/^\//,"")),headers:kt,auth:Nt&&Nt.username&&Nt.password?"".concat(Nt.username,":").concat(Nt.password):"",agent:this.agent}));bt.on("error",Ht),bt.on("response",function(wt){return wt.on("end",function(){return Ht(null,wt)}).resume()});var Jt=Vt(ut({},this.maximumDepth&&{maximumDepth:this.maximumDepth}));bt.end(Buffer.from(Jt($t,this.options.replacer),"utf8"))}}])&&st(Wt.prototype,yt),Kt&&st(Wt,Kt),Object.defineProperty(Wt,"prototype",{writable:!1}),Wt;var Wt,yt,Kt}(gt)},3307:(et,tt,nt)=>{Object.defineProperty(tt,"Console",{configurable:!0,enumerable:!0,get:function(){return nt(810)}}),Object.defineProperty(tt,"File",{configurable:!0,enumerable:!0,get:function(){return nt(3329)}}),Object.defineProperty(tt,"Http",{configurable:!0,enumerable:!0,get:function(){return nt(7543)}}),Object.defineProperty(tt,"Stream",{configurable:!0,enumerable:!0,get:function(){return nt(1292)}})},1292:(et,tt,nt)=>{function rt(ht){return(rt=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})(ht)}function lt(ht,mt){if(!(ht instanceof mt))throw new TypeError("Cannot call a class as a function")}function ut(ht,mt){for(var gt=0;gt0&&arguments[0]!==void 0?arguments[0]:{};if(lt(this,mt),ft=ot(this,mt,[Wt]),!Wt.stream||!St(Wt.stream))throw new Error("options.stream is required.");return ft._stream=Wt.stream,ft._stream.setMaxListeners(1/0),ft.isObjectMode=Wt.stream._writableState.objectMode,ft.eol=typeof Wt.eol=="string"?Wt.eol:Rt.EOL,ft}return function(ft,Wt){if(typeof Wt!="function"&&Wt!==null)throw new TypeError("Super expression must either be null or a function");ft.prototype=Object.create(Wt&&Wt.prototype,{constructor:{value:ft,writable:!0,configurable:!0}}),Object.defineProperty(ft,"prototype",{writable:!1}),Wt&&dt(ft,Wt)}(mt,ht),gt=mt,(Vt=[{key:"log",value:function(ft,Wt){var yt=this;if(setImmediate(function(){return yt.emit("logged",ft)}),this.isObjectMode)return this._stream.write(ft),void(Wt&&Wt());this._stream.write("".concat(ft[pt]).concat(this.eol)),Wt&&Wt()}}])&&ut(gt.prototype,Vt),Tt&&ut(gt,Tt),Object.defineProperty(gt,"prototype",{writable:!1}),gt;var gt,Vt,Tt}(Bt)},3227:et=>{et.exports=function(){for(var nt={},rt=0;rt{const rt={};rt.web=nt(5949),nt(8052);const lt={v1:{}};lt.v1.signaling={},lt.v1.signaling.api=nt(4620),lt.v1.signaling.api.SignalingClient=function(ht,mt,gt){gt||(gt={}),gt.format="text",this.client_=new rt.web.GrpcWebClientBase(gt),this.hostname_=ht.replace(/\/+$/,"")},lt.v1.signaling.api.SignalingPromiseClient=function(ht,mt,gt){gt||(gt={}),gt.format="text",this.client_=new rt.web.GrpcWebClientBase(gt),this.hostname_=ht.replace(/\/+$/,"")};const ut=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/GetHealth",rt.web.MethodType.UNARY,lt.v1.signaling.api.GetHealthRequest,lt.v1.signaling.api.GetHealthResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.GetHealthResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.getHealth=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetHealth",ht,mt||{},ut,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.getHealth=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetHealth",ht,mt||{},ut)};const Ut=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/CreatePeer",rt.web.MethodType.UNARY,lt.v1.signaling.api.CreatePeerRequest,lt.v1.signaling.api.CreatePeerResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.CreatePeerResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.createPeer=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/CreatePeer",ht,mt||{},Ut,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.createPeer=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/CreatePeer",ht,mt||{},Ut)};const ot=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/DeletePeer",rt.web.MethodType.UNARY,lt.v1.signaling.api.DeletePeerRequest,lt.v1.signaling.api.DeletePeerResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.DeletePeerResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.deletePeer=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/DeletePeer",ht,mt||{},ot,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.deletePeer=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/DeletePeer",ht,mt||{},ot)};const st=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/RefreshPeer",rt.web.MethodType.UNARY,lt.v1.signaling.api.RefreshPeerRequest,lt.v1.signaling.api.RefreshPeerResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.RefreshPeerResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.refreshPeer=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/RefreshPeer",ht,mt||{},st,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.refreshPeer=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/RefreshPeer",ht,mt||{},st)};const dt=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/GetPeers",rt.web.MethodType.UNARY,lt.v1.signaling.api.GetPeersRequest,lt.v1.signaling.api.GetPeersResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.GetPeersResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.getPeers=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetPeers",ht,mt||{},dt,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.getPeers=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetPeers",ht,mt||{},dt)};const St=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/GetIceServers",rt.web.MethodType.UNARY,lt.v1.signaling.api.GetIceServersRequest,lt.v1.signaling.api.GetIceServersResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.GetIceServersResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.getIceServers=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetIceServers",ht,mt||{},St,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.getIceServers=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetIceServers",ht,mt||{},St)};const pt=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/SendSignal",rt.web.MethodType.UNARY,lt.v1.signaling.api.SendSignalRequest,lt.v1.signaling.api.SendSignalResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.SendSignalResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.sendSignal=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/SendSignal",ht,mt||{},pt,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.sendSignal=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/SendSignal",ht,mt||{},pt)};const Rt=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/ReceiveSignalStream",rt.web.MethodType.SERVER_STREAMING,lt.v1.signaling.api.ReceiveSignalStreamRequest,lt.v1.signaling.api.ReceiveSignalStreamResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.receiveSignalStream=function(ht,mt){return this.client_.serverStreaming(this.hostname_+"/v1.signaling.api.Signaling/ReceiveSignalStream",ht,mt||{},Rt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.receiveSignalStream=function(ht,mt){return this.client_.serverStreaming(this.hostname_+"/v1.signaling.api.Signaling/ReceiveSignalStream",ht,mt||{},Rt)};const Bt=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/GetSessions",rt.web.MethodType.UNARY,lt.v1.signaling.api.GetSessionsRequest,lt.v1.signaling.api.GetSessionsResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.GetSessionsResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.getSessions=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetSessions",ht,mt||{},Bt,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.getSessions=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetSessions",ht,mt||{},Bt)},et.exports=lt.v1.signaling.api},4620:(et,tt,nt)=>{var rt=nt(7186),lt=rt,ut=function(){return this?this:typeof window<"u"?window:ut!==void 0?ut:typeof self<"u"?self:Function("return this")()}.call(null),Ut=nt(8052);lt.object.extend(proto,Ut),lt.exportSymbol("proto.v1.signaling.api.CreatePeerRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.CreatePeerResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.DeletePeerRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.DeletePeerResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetHealthRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetHealthResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetIceServersRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetIceServersResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetPeersRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetPeersResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetSessionsRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetSessionsResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.Peer",null,ut),lt.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.RefreshPeerRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.RefreshPeerResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.RtcSession",null,ut),lt.exportSymbol("proto.v1.signaling.api.SendSignalRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.SendSignalResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.SessionType",null,ut),lt.exportSymbol("proto.v1.signaling.api.Signal",null,ut),proto.v1.signaling.api.Peer=function(ot){rt.Message.initialize(this,ot,0,-1,proto.v1.signaling.api.Peer.repeatedFields_,null)},lt.inherits(proto.v1.signaling.api.Peer,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Peer.displayName="proto.v1.signaling.api.Peer"),proto.v1.signaling.api.Signal=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.Signal,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Signal.displayName="proto.v1.signaling.api.Signal"),proto.v1.signaling.api.RtcSession=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.RtcSession,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RtcSession.displayName="proto.v1.signaling.api.RtcSession"),proto.v1.signaling.api.GetSessionsRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetSessionsRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetSessionsRequest.displayName="proto.v1.signaling.api.GetSessionsRequest"),proto.v1.signaling.api.GetSessionsResponse=function(ot){rt.Message.initialize(this,ot,0,-1,proto.v1.signaling.api.GetSessionsResponse.repeatedFields_,null)},lt.inherits(proto.v1.signaling.api.GetSessionsResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetSessionsResponse.displayName="proto.v1.signaling.api.GetSessionsResponse"),proto.v1.signaling.api.GetHealthRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetHealthRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthRequest.displayName="proto.v1.signaling.api.GetHealthRequest"),proto.v1.signaling.api.GetHealthResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetHealthResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthResponse.displayName="proto.v1.signaling.api.GetHealthResponse"),proto.v1.signaling.api.CreatePeerRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.CreatePeerRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerRequest.displayName="proto.v1.signaling.api.CreatePeerRequest"),proto.v1.signaling.api.CreatePeerResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.CreatePeerResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerResponse.displayName="proto.v1.signaling.api.CreatePeerResponse"),proto.v1.signaling.api.DeletePeerRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.DeletePeerRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerRequest.displayName="proto.v1.signaling.api.DeletePeerRequest"),proto.v1.signaling.api.DeletePeerResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.DeletePeerResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerResponse.displayName="proto.v1.signaling.api.DeletePeerResponse"),proto.v1.signaling.api.RefreshPeerRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.RefreshPeerRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerRequest.displayName="proto.v1.signaling.api.RefreshPeerRequest"),proto.v1.signaling.api.RefreshPeerResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.RefreshPeerResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerResponse.displayName="proto.v1.signaling.api.RefreshPeerResponse"),proto.v1.signaling.api.GetPeersRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetPeersRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersRequest.displayName="proto.v1.signaling.api.GetPeersRequest"),proto.v1.signaling.api.GetPeersResponse=function(ot){rt.Message.initialize(this,ot,0,-1,proto.v1.signaling.api.GetPeersResponse.repeatedFields_,null)},lt.inherits(proto.v1.signaling.api.GetPeersResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersResponse.displayName="proto.v1.signaling.api.GetPeersResponse"),proto.v1.signaling.api.GetIceServersRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetIceServersRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersRequest.displayName="proto.v1.signaling.api.GetIceServersRequest"),proto.v1.signaling.api.GetIceServersResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetIceServersResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersResponse.displayName="proto.v1.signaling.api.GetIceServersResponse"),proto.v1.signaling.api.SendSignalRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.SendSignalRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalRequest.displayName="proto.v1.signaling.api.SendSignalRequest"),proto.v1.signaling.api.SendSignalResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.SendSignalResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalResponse.displayName="proto.v1.signaling.api.SendSignalResponse"),proto.v1.signaling.api.ReceiveSignalStreamRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.ReceiveSignalStreamRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.displayName="proto.v1.signaling.api.ReceiveSignalStreamRequest"),proto.v1.signaling.api.ReceiveSignalStreamResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.ReceiveSignalStreamResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.displayName="proto.v1.signaling.api.ReceiveSignalStreamResponse"),proto.v1.signaling.api.Peer.repeatedFields_=[5],rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Peer.prototype.toObject=function(ot){return proto.v1.signaling.api.Peer.toObject(ot,this)},proto.v1.signaling.api.Peer.toObject=function(ot,st){var dt,St={peerId:rt.Message.getFieldWithDefault(st,1,""),organizationId:rt.Message.getFieldWithDefault(st,2,""),userId:(dt=st.getUserId())&&Ut.StringValue.toObject(ot,dt),deviceId:(dt=st.getDeviceId())&&Ut.StringValue.toObject(ot,dt),sessionIdsList:(dt=rt.Message.getRepeatedField(st,5))==null?void 0:dt,peerCreatedTimestamp:(dt=st.getPeerCreatedTimestamp())&&Ut.Int64Value.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.Peer.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.Peer;return proto.v1.signaling.api.Peer.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.Peer.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setPeerId(dt);break;case 2:dt=st.readString(),ot.setOrganizationId(dt);break;case 3:dt=new Ut.StringValue,st.readMessage(dt,Ut.StringValue.deserializeBinaryFromReader),ot.setUserId(dt);break;case 4:dt=new Ut.StringValue,st.readMessage(dt,Ut.StringValue.deserializeBinaryFromReader),ot.setDeviceId(dt);break;case 5:dt=st.readString(),ot.addSessionIds(dt);break;case 6:dt=new Ut.Int64Value,st.readMessage(dt,Ut.Int64Value.deserializeBinaryFromReader),ot.setPeerCreatedTimestamp(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.Peer.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.Peer.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.Peer.serializeBinaryToWriter=function(ot,st){var dt=void 0;(dt=ot.getPeerId()).length>0&&st.writeString(1,dt),(dt=ot.getOrganizationId()).length>0&&st.writeString(2,dt),(dt=ot.getUserId())!=null&&st.writeMessage(3,dt,Ut.StringValue.serializeBinaryToWriter),(dt=ot.getDeviceId())!=null&&st.writeMessage(4,dt,Ut.StringValue.serializeBinaryToWriter),(dt=ot.getSessionIdsList()).length>0&&st.writeRepeatedString(5,dt),(dt=ot.getPeerCreatedTimestamp())!=null&&st.writeMessage(6,dt,Ut.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.Peer.prototype.getPeerId=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.Peer.prototype.setPeerId=function(ot){return rt.Message.setProto3StringField(this,1,ot)},proto.v1.signaling.api.Peer.prototype.getOrganizationId=function(){return rt.Message.getFieldWithDefault(this,2,"")},proto.v1.signaling.api.Peer.prototype.setOrganizationId=function(ot){return rt.Message.setProto3StringField(this,2,ot)},proto.v1.signaling.api.Peer.prototype.getUserId=function(){return rt.Message.getWrapperField(this,Ut.StringValue,3)},proto.v1.signaling.api.Peer.prototype.setUserId=function(ot){return rt.Message.setWrapperField(this,3,ot)},proto.v1.signaling.api.Peer.prototype.clearUserId=function(){return this.setUserId(void 0)},proto.v1.signaling.api.Peer.prototype.hasUserId=function(){return rt.Message.getField(this,3)!=null},proto.v1.signaling.api.Peer.prototype.getDeviceId=function(){return rt.Message.getWrapperField(this,Ut.StringValue,4)},proto.v1.signaling.api.Peer.prototype.setDeviceId=function(ot){return rt.Message.setWrapperField(this,4,ot)},proto.v1.signaling.api.Peer.prototype.clearDeviceId=function(){return this.setDeviceId(void 0)},proto.v1.signaling.api.Peer.prototype.hasDeviceId=function(){return rt.Message.getField(this,4)!=null},proto.v1.signaling.api.Peer.prototype.getSessionIdsList=function(){return rt.Message.getRepeatedField(this,5)},proto.v1.signaling.api.Peer.prototype.setSessionIdsList=function(ot){return rt.Message.setField(this,5,ot||[])},proto.v1.signaling.api.Peer.prototype.addSessionIds=function(ot,st){return rt.Message.addToRepeatedField(this,5,ot,st)},proto.v1.signaling.api.Peer.prototype.clearSessionIdsList=function(){return this.setSessionIdsList([])},proto.v1.signaling.api.Peer.prototype.getPeerCreatedTimestamp=function(){return rt.Message.getWrapperField(this,Ut.Int64Value,6)},proto.v1.signaling.api.Peer.prototype.setPeerCreatedTimestamp=function(ot){return rt.Message.setWrapperField(this,6,ot)},proto.v1.signaling.api.Peer.prototype.clearPeerCreatedTimestamp=function(){return this.setPeerCreatedTimestamp(void 0)},proto.v1.signaling.api.Peer.prototype.hasPeerCreatedTimestamp=function(){return rt.Message.getField(this,6)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Signal.prototype.toObject=function(ot){return proto.v1.signaling.api.Signal.toObject(ot,this)},proto.v1.signaling.api.Signal.toObject=function(ot,st){var dt,St={sessionId:(dt=st.getSessionId())&&Ut.StringValue.toObject(ot,dt),sessionCreatedTimestamp:(dt=st.getSessionCreatedTimestamp())&&Ut.Int64Value.toObject(ot,dt),senderId:rt.Message.getFieldWithDefault(st,3,""),receiverId:rt.Message.getFieldWithDefault(st,4,""),payload:rt.Message.getFieldWithDefault(st,5,""),iceServers:rt.Message.getFieldWithDefault(st,6,""),iceTransportPolicy:rt.Message.getFieldWithDefault(st,7,""),sessionType:rt.Message.getFieldWithDefault(st,8,0)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.Signal.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.Signal;return proto.v1.signaling.api.Signal.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.Signal.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new Ut.StringValue;st.readMessage(dt,Ut.StringValue.deserializeBinaryFromReader),ot.setSessionId(dt);break;case 2:dt=new Ut.Int64Value,st.readMessage(dt,Ut.Int64Value.deserializeBinaryFromReader),ot.setSessionCreatedTimestamp(dt);break;case 3:dt=st.readString(),ot.setSenderId(dt);break;case 4:dt=st.readString(),ot.setReceiverId(dt);break;case 5:dt=st.readString(),ot.setPayload(dt);break;case 6:dt=st.readString(),ot.setIceServers(dt);break;case 7:dt=st.readString(),ot.setIceTransportPolicy(dt);break;case 8:dt=st.readEnum(),ot.setSessionType(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.Signal.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.Signal.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.Signal.serializeBinaryToWriter=function(ot,st){var dt=void 0;(dt=ot.getSessionId())!=null&&st.writeMessage(1,dt,Ut.StringValue.serializeBinaryToWriter),(dt=ot.getSessionCreatedTimestamp())!=null&&st.writeMessage(2,dt,Ut.Int64Value.serializeBinaryToWriter),(dt=ot.getSenderId()).length>0&&st.writeString(3,dt),(dt=ot.getReceiverId()).length>0&&st.writeString(4,dt),(dt=ot.getPayload()).length>0&&st.writeString(5,dt),(dt=ot.getIceServers()).length>0&&st.writeString(6,dt),(dt=ot.getIceTransportPolicy()).length>0&&st.writeString(7,dt),(dt=ot.getSessionType())!==0&&st.writeEnum(8,dt)},proto.v1.signaling.api.Signal.prototype.getSessionId=function(){return rt.Message.getWrapperField(this,Ut.StringValue,1)},proto.v1.signaling.api.Signal.prototype.setSessionId=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.Signal.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionId=function(){return rt.Message.getField(this,1)!=null},proto.v1.signaling.api.Signal.prototype.getSessionCreatedTimestamp=function(){return rt.Message.getWrapperField(this,Ut.Int64Value,2)},proto.v1.signaling.api.Signal.prototype.setSessionCreatedTimestamp=function(ot){return rt.Message.setWrapperField(this,2,ot)},proto.v1.signaling.api.Signal.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionCreatedTimestamp=function(){return rt.Message.getField(this,2)!=null},proto.v1.signaling.api.Signal.prototype.getSenderId=function(){return rt.Message.getFieldWithDefault(this,3,"")},proto.v1.signaling.api.Signal.prototype.setSenderId=function(ot){return rt.Message.setProto3StringField(this,3,ot)},proto.v1.signaling.api.Signal.prototype.getReceiverId=function(){return rt.Message.getFieldWithDefault(this,4,"")},proto.v1.signaling.api.Signal.prototype.setReceiverId=function(ot){return rt.Message.setProto3StringField(this,4,ot)},proto.v1.signaling.api.Signal.prototype.getPayload=function(){return rt.Message.getFieldWithDefault(this,5,"")},proto.v1.signaling.api.Signal.prototype.setPayload=function(ot){return rt.Message.setProto3StringField(this,5,ot)},proto.v1.signaling.api.Signal.prototype.getIceServers=function(){return rt.Message.getFieldWithDefault(this,6,"")},proto.v1.signaling.api.Signal.prototype.setIceServers=function(ot){return rt.Message.setProto3StringField(this,6,ot)},proto.v1.signaling.api.Signal.prototype.getIceTransportPolicy=function(){return rt.Message.getFieldWithDefault(this,7,"")},proto.v1.signaling.api.Signal.prototype.setIceTransportPolicy=function(ot){return rt.Message.setProto3StringField(this,7,ot)},proto.v1.signaling.api.Signal.prototype.getSessionType=function(){return rt.Message.getFieldWithDefault(this,8,0)},proto.v1.signaling.api.Signal.prototype.setSessionType=function(ot){return rt.Message.setProto3EnumField(this,8,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RtcSession.prototype.toObject=function(ot){return proto.v1.signaling.api.RtcSession.toObject(ot,this)},proto.v1.signaling.api.RtcSession.toObject=function(ot,st){var dt={sessionId:rt.Message.getFieldWithDefault(st,1,""),offerPeerId:rt.Message.getFieldWithDefault(st,2,""),answerPeerId:rt.Message.getFieldWithDefault(st,3,""),organizationId:rt.Message.getFieldWithDefault(st,4,""),sessionType:rt.Message.getFieldWithDefault(st,5,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.RtcSession.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.RtcSession;return proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setSessionId(dt);break;case 2:dt=st.readString(),ot.setOfferPeerId(dt);break;case 3:dt=st.readString(),ot.setAnswerPeerId(dt);break;case 4:dt=st.readString(),ot.setOrganizationId(dt);break;case 5:dt=st.readString(),ot.setSessionType(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.RtcSession.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.RtcSession.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.RtcSession.serializeBinaryToWriter=function(ot,st){var dt=void 0;(dt=ot.getSessionId()).length>0&&st.writeString(1,dt),(dt=ot.getOfferPeerId()).length>0&&st.writeString(2,dt),(dt=ot.getAnswerPeerId()).length>0&&st.writeString(3,dt),(dt=ot.getOrganizationId()).length>0&&st.writeString(4,dt),(dt=ot.getSessionType()).length>0&&st.writeString(5,dt)},proto.v1.signaling.api.RtcSession.prototype.getSessionId=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.RtcSession.prototype.setSessionId=function(ot){return rt.Message.setProto3StringField(this,1,ot)},proto.v1.signaling.api.RtcSession.prototype.getOfferPeerId=function(){return rt.Message.getFieldWithDefault(this,2,"")},proto.v1.signaling.api.RtcSession.prototype.setOfferPeerId=function(ot){return rt.Message.setProto3StringField(this,2,ot)},proto.v1.signaling.api.RtcSession.prototype.getAnswerPeerId=function(){return rt.Message.getFieldWithDefault(this,3,"")},proto.v1.signaling.api.RtcSession.prototype.setAnswerPeerId=function(ot){return rt.Message.setProto3StringField(this,3,ot)},proto.v1.signaling.api.RtcSession.prototype.getOrganizationId=function(){return rt.Message.getFieldWithDefault(this,4,"")},proto.v1.signaling.api.RtcSession.prototype.setOrganizationId=function(ot){return rt.Message.setProto3StringField(this,4,ot)},proto.v1.signaling.api.RtcSession.prototype.getSessionType=function(){return rt.Message.getFieldWithDefault(this,5,"")},proto.v1.signaling.api.RtcSession.prototype.setSessionType=function(ot){return rt.Message.setProto3StringField(this,5,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetSessionsRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.GetSessionsRequest.toObject(ot,this)},proto.v1.signaling.api.GetSessionsRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetSessionsRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetSessionsRequest;return proto.v1.signaling.api.GetSessionsRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetSessionsRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.GetSessionsRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetSessionsRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetSessionsRequest.serializeBinaryToWriter=function(ot,st){},proto.v1.signaling.api.GetSessionsResponse.repeatedFields_=[1],rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetSessionsResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.GetSessionsResponse.toObject(ot,this)},proto.v1.signaling.api.GetSessionsResponse.toObject=function(ot,st){var dt={sessionsList:rt.Message.toObjectList(st.getSessionsList(),proto.v1.signaling.api.RtcSession.toObject,ot)};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetSessionsResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetSessionsResponse;return proto.v1.signaling.api.GetSessionsResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetSessionsResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.RtcSession;st.readMessage(dt,proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader),ot.addSessions(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.GetSessionsResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetSessionsResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetSessionsResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getSessionsList()).length>0&&st.writeRepeatedMessage(1,dt,proto.v1.signaling.api.RtcSession.serializeBinaryToWriter)},proto.v1.signaling.api.GetSessionsResponse.prototype.getSessionsList=function(){return rt.Message.getRepeatedWrapperField(this,proto.v1.signaling.api.RtcSession,1)},proto.v1.signaling.api.GetSessionsResponse.prototype.setSessionsList=function(ot){return rt.Message.setRepeatedWrapperField(this,1,ot)},proto.v1.signaling.api.GetSessionsResponse.prototype.addSessions=function(ot,st){return rt.Message.addToRepeatedWrapperField(this,1,ot,proto.v1.signaling.api.RtcSession,st)},proto.v1.signaling.api.GetSessionsResponse.prototype.clearSessionsList=function(){return this.setSessionsList([])},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.GetHealthRequest.toObject(ot,this)},proto.v1.signaling.api.GetHealthRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetHealthRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetHealthRequest;return proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.GetHealthRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.GetHealthResponse.toObject(ot,this)},proto.v1.signaling.api.GetHealthResponse.toObject=function(ot,st){var dt={version:rt.Message.getFieldWithDefault(st,1,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetHealthResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetHealthResponse;return proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setVersion(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.GetHealthResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getVersion()).length>0&&st.writeString(1,dt)},proto.v1.signaling.api.GetHealthResponse.prototype.getVersion=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetHealthResponse.prototype.setVersion=function(ot){return rt.Message.setProto3StringField(this,1,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.CreatePeerRequest.toObject(ot,this)},proto.v1.signaling.api.CreatePeerRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.CreatePeerRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.CreatePeerRequest;return proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.CreatePeerRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.CreatePeerResponse.toObject(ot,this)},proto.v1.signaling.api.CreatePeerResponse.toObject=function(ot,st){var dt,St={peer:(dt=st.getPeer())&&proto.v1.signaling.api.Peer.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.CreatePeerResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.CreatePeerResponse;return proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Peer;st.readMessage(dt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),ot.setPeer(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.CreatePeerResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeer())!=null&&st.writeMessage(1,dt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.CreatePeerResponse.prototype.getPeer=function(){return rt.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.CreatePeerResponse.prototype.setPeer=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.CreatePeerResponse.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.CreatePeerResponse.prototype.hasPeer=function(){return rt.Message.getField(this,1)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.DeletePeerRequest.toObject(ot,this)},proto.v1.signaling.api.DeletePeerRequest.toObject=function(ot,st){var dt={peerId:rt.Message.getFieldWithDefault(st,1,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.DeletePeerRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.DeletePeerRequest;return proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setPeerId(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.DeletePeerRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeerId()).length>0&&st.writeString(1,dt)},proto.v1.signaling.api.DeletePeerRequest.prototype.getPeerId=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.DeletePeerRequest.prototype.setPeerId=function(ot){return rt.Message.setProto3StringField(this,1,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.DeletePeerResponse.toObject(ot,this)},proto.v1.signaling.api.DeletePeerResponse.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.DeletePeerResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.DeletePeerResponse;return proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.DeletePeerResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.RefreshPeerRequest.toObject(ot,this)},proto.v1.signaling.api.RefreshPeerRequest.toObject=function(ot,st){var dt,St={peer:(dt=st.getPeer())&&proto.v1.signaling.api.Peer.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.RefreshPeerRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.RefreshPeerRequest;return proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Peer;st.readMessage(dt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),ot.setPeer(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.RefreshPeerRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeer())!=null&&st.writeMessage(1,dt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.RefreshPeerRequest.prototype.getPeer=function(){return rt.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.RefreshPeerRequest.prototype.setPeer=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.RefreshPeerRequest.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.RefreshPeerRequest.prototype.hasPeer=function(){return rt.Message.getField(this,1)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.RefreshPeerResponse.toObject(ot,this)},proto.v1.signaling.api.RefreshPeerResponse.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.RefreshPeerResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.RefreshPeerResponse;return proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.RefreshPeerResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.GetPeersRequest.toObject(ot,this)},proto.v1.signaling.api.GetPeersRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetPeersRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetPeersRequest;return proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.GetPeersRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter=function(ot,st){},proto.v1.signaling.api.GetPeersResponse.repeatedFields_=[1],rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.GetPeersResponse.toObject(ot,this)},proto.v1.signaling.api.GetPeersResponse.toObject=function(ot,st){var dt={peersList:rt.Message.toObjectList(st.getPeersList(),proto.v1.signaling.api.Peer.toObject,ot)};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetPeersResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetPeersResponse;return proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Peer;st.readMessage(dt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),ot.addPeers(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.GetPeersResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeersList()).length>0&&st.writeRepeatedMessage(1,dt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.GetPeersResponse.prototype.getPeersList=function(){return rt.Message.getRepeatedWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.GetPeersResponse.prototype.setPeersList=function(ot){return rt.Message.setRepeatedWrapperField(this,1,ot)},proto.v1.signaling.api.GetPeersResponse.prototype.addPeers=function(ot,st){return rt.Message.addToRepeatedWrapperField(this,1,ot,proto.v1.signaling.api.Peer,st)},proto.v1.signaling.api.GetPeersResponse.prototype.clearPeersList=function(){return this.setPeersList([])},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.GetIceServersRequest.toObject(ot,this)},proto.v1.signaling.api.GetIceServersRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetIceServersRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetIceServersRequest;return proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.GetIceServersRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.GetIceServersResponse.toObject(ot,this)},proto.v1.signaling.api.GetIceServersResponse.toObject=function(ot,st){var dt={iceServers:rt.Message.getFieldWithDefault(st,1,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetIceServersResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetIceServersResponse;return proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setIceServers(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.GetIceServersResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getIceServers()).length>0&&st.writeString(1,dt)},proto.v1.signaling.api.GetIceServersResponse.prototype.getIceServers=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetIceServersResponse.prototype.setIceServers=function(ot){return rt.Message.setProto3StringField(this,1,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.SendSignalRequest.toObject(ot,this)},proto.v1.signaling.api.SendSignalRequest.toObject=function(ot,st){var dt,St={signal:(dt=st.getSignal())&&proto.v1.signaling.api.Signal.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.SendSignalRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.SendSignalRequest;return proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Signal;st.readMessage(dt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),ot.setSignal(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.SendSignalRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getSignal())!=null&&st.writeMessage(1,dt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalRequest.prototype.getSignal=function(){return rt.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.SendSignalRequest.prototype.setSignal=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.SendSignalRequest.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.SendSignalRequest.prototype.hasSignal=function(){return rt.Message.getField(this,1)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.SendSignalResponse.toObject(ot,this)},proto.v1.signaling.api.SendSignalResponse.toObject=function(ot,st){var dt,St={sessionId:(dt=st.getSessionId())&&Ut.StringValue.toObject(ot,dt),sessionCreatedTimestamp:(dt=st.getSessionCreatedTimestamp())&&Ut.Int64Value.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.SendSignalResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.SendSignalResponse;return proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new Ut.StringValue;st.readMessage(dt,Ut.StringValue.deserializeBinaryFromReader),ot.setSessionId(dt);break;case 2:dt=new Ut.Int64Value,st.readMessage(dt,Ut.Int64Value.deserializeBinaryFromReader),ot.setSessionCreatedTimestamp(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.SendSignalResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter=function(ot,st){var dt=void 0;(dt=ot.getSessionId())!=null&&st.writeMessage(1,dt,Ut.StringValue.serializeBinaryToWriter),(dt=ot.getSessionCreatedTimestamp())!=null&&st.writeMessage(2,dt,Ut.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionId=function(){return rt.Message.getWrapperField(this,Ut.StringValue,1)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionId=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionId=function(){return rt.Message.getField(this,1)!=null},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionCreatedTimestamp=function(){return rt.Message.getWrapperField(this,Ut.Int64Value,2)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionCreatedTimestamp=function(ot){return rt.Message.setWrapperField(this,2,ot)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionCreatedTimestamp=function(){return rt.Message.getField(this,2)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject(ot,this)},proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject=function(ot,st){var dt={peerId:rt.Message.getFieldWithDefault(st,1,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.ReceiveSignalStreamRequest;return proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setPeerId(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeerId()).length>0&&st.writeString(1,dt)},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.getPeerId=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.setPeerId=function(ot){return rt.Message.setProto3StringField(this,1,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject(ot,this)},proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject=function(ot,st){var dt,St={signal:(dt=st.getSignal())&&proto.v1.signaling.api.Signal.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.ReceiveSignalStreamResponse;return proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Signal;st.readMessage(dt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),ot.setSignal(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getSignal())!=null&&st.writeMessage(1,dt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.getSignal=function(){return rt.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.setSignal=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.hasSignal=function(){return rt.Message.getField(this,1)!=null},proto.v1.signaling.api.SessionType={UNKNOWN:0,TELEOP:1,PORT_FORWARD:2,OBSERVE:3,HEADLESS:4},lt.object.extend(tt,proto.v1.signaling.api)},6973:()=>{},3011:()=>{},3951:()=>{},9256:()=>{},2627:()=>{},4834:(et,tt,nt)=>{var rt=nt(9501),lt=typeof globalThis>"u"?nt.g:globalThis;et.exports=function(){for(var ut=[],Ut=0;Ut{et.exports={version:"3.13.1"}}},j={};function $(et){var tt=j[et];if(tt!==void 0)return tt.exports;var nt=j[et]={id:et,loaded:!1,exports:{}};return _[et].call(nt.exports,nt,nt.exports,$),nt.loaded=!0,nt.exports}$.n=et=>{var tt=et&&et.__esModule?()=>et.default:()=>et;return $.d(tt,{a:tt}),tt},$.d=(et,tt)=>{for(var nt in tt)$.o(tt,nt)&&!$.o(et,nt)&&Object.defineProperty(et,nt,{enumerable:!0,get:tt[nt]})},$.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),$.o=(et,tt)=>Object.prototype.hasOwnProperty.call(et,tt),$.r=et=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(et,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(et,"__esModule",{value:!0})},$.nmd=et=>(et.paths=[],et.children||(et.children=[]),et);var _e={};return(()=>{$.r(_e),$.d(_e,{AuthClient:()=>nt,Credentials:()=>Vn,RtcClient:()=>xa,RtcClientV1:()=>gn,RtcSignalingClient:()=>lt,SignalingPromiseClient:()=>Fn.SignalingPromiseClient,createRtcStreamMessage:()=>_o});var et=$(6331),tt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class nt extends et.S{adminSignup(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/admin-signup",{token:xt,method:"POST",body:Zt})})}login(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/login",{method:"POST",body:Zt,allowUnsafeRetries:!0})})}loginWithGoogleToken(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/login-google",{method:"POST",body:Zt,allowUnsafeRetries:!0})})}refresh(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/refresh",{method:"POST",body:{refreshToken:Zt,tokenExpirationSeconds:xt},allowUnsafeRetries:!0})})}respondToNewPasswordRequiredChallenge(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/respond-to-new-password-required-challenge",{method:"POST",body:Zt})})}forgotPassword(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/forgot-password",{method:"POST",body:{email:Zt}})})}confirmForgotPassword(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/confirm-forgot-password",{method:"POST",body:Zt})})}resendInvitation(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/resend-invitation",{method:"POST",body:{email:Zt}})})}changePassword(Zt){return tt(this,arguments,void 0,function*({token:xt,refreshToken:zt,currentPassword:Qn,newPassword:Tn}){return yield this.fetch("auth/change-password",{token:xt,method:"POST",body:{refreshToken:zt,currentPassword:Qn,newPassword:Tn}})})}getDeviceCredentials(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/device-credentials",{token:Zt,method:"POST",allowUnsafeRetries:!0})})}impersonate(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/impersonate",{token:Zt,method:"POST",allowUnsafeRetries:!0,body:{userId:xt}})})}createServiceAccount(Zt,xt,zt,Qn,Tn){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/service-account",{token:Zt,method:"POST",allowUnsafeRetries:!0,body:{name:xt,roleId:zt,tags:Qn,description:Tn}})})}getFeatures(Zt){return tt(this,void 0,void 0,function*(){return(yield this.fetch("auth/features",{token:Zt})).features})}checkSso(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/check-sso",{method:"POST",body:{email:Zt,allowUserAutoCreation:xt}})})}loginWithSso(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/login-sso",{method:"POST",body:{token:Zt,refreshToken:xt}})})}}var rt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class lt extends et.S{createPeer(Zt,xt){return rt(this,void 0,void 0,function*(){return yield this.fetch("peers",{token:Zt,method:"POST",body:xt})})}getPeers(Zt){return rt(this,void 0,void 0,function*(){return(yield this.fetch("peers",{token:Zt})).items})}refreshPeer(Zt,xt){return rt(this,void 0,void 0,function*(){yield this.fetch(`peers/${xt}/refresh`,{token:Zt,method:"POST",allowUnsafeRetries:!0})})}createSession(Zt,xt){return rt(this,void 0,void 0,function*(){return yield this.fetch("sessions",{token:Zt,method:"POST",body:xt})})}refreshSession(Zt,xt){return rt(this,void 0,void 0,function*(){yield this.fetch(`sessions/${xt}/refresh`,{token:Zt,method:"POST",allowUnsafeRetries:!0})})}deleteSession(Zt,xt){return rt(this,void 0,void 0,function*(){yield this.fetch("sessions/"+xt,{token:Zt,method:"DELETE",allowUnsafeRetries:!0})})}getSessions(Zt){return rt(this,void 0,void 0,function*(){return(yield this.fetch("sessions",{token:Zt})).items})}getIceServers(Zt){return rt(this,void 0,void 0,function*(){return(yield this.fetch("ice-servers",{token:Zt})).items})}addSignals(Zt,xt,zt){return rt(this,void 0,void 0,function*(){yield this.fetch(`sessions/${xt}/add-signals`,{token:Zt,method:"POST",body:zt})})}takeSignals(Zt,xt){return rt(this,void 0,void 0,function*(){return(yield this.fetch(`sessions/${xt}/take-signals`,{token:Zt,method:"POST"})).items})}}var ut=$(3778),Ut=$(7221),ot=$(6075),st=$.n(ot);const dt=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,St=typeof AbortController=="function"?AbortController:class{constructor(){this.signal=new Bt}abort(In=new Error("This operation was aborted")){this.signal.reason=this.signal.reason||In,this.signal.aborted=!0,this.signal.dispatchEvent({type:"abort",target:this.signal})}},pt=typeof AbortSignal=="function",Rt=typeof St.AbortSignal=="function",Bt=pt?AbortSignal:Rt?St.AbortController:class{constructor(){this.reason=void 0,this.aborted=!1,this._listeners=[]}dispatchEvent(In){In.type==="abort"&&(this.aborted=!0,this.onabort(In),this._listeners.forEach(Zt=>Zt(In),this))}onabort(){}addEventListener(In,Zt){In==="abort"&&this._listeners.push(Zt)}removeEventListener(In,Zt){In==="abort"&&(this._listeners=this._listeners.filter(xt=>xt!==Zt))}},ht=new Set,mt=(In,Zt)=>{const xt="LRU_CACHE_OPTION_"+In;Tt(xt)&&ft(xt,In+" option","options."+Zt,Ht)},gt=(In,Zt)=>{const xt="LRU_CACHE_METHOD_"+In;if(Tt(xt)){const{prototype:zt}=Ht,{get:Qn}=Object.getOwnPropertyDescriptor(zt,In);ft(xt,In+" method",`cache.${Zt}()`,Qn)}},Vt=(...In)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...In):console.error(...In)},Tt=In=>!ht.has(In),ft=(In,Zt,xt,zt)=>{ht.add(In),Vt(`The ${Zt} is deprecated. Please use ${xt} instead.`,"DeprecationWarning",In,zt)},Wt=In=>In&&In===Math.floor(In)&&In>0&&isFinite(In),yt=In=>Wt(In)?In<=Math.pow(2,8)?Uint8Array:In<=Math.pow(2,16)?Uint16Array:In<=Math.pow(2,32)?Uint32Array:In<=Number.MAX_SAFE_INTEGER?Kt:null:null;class Kt extends Array{constructor(Zt){super(Zt),this.fill(0)}}class $t{constructor(Zt){if(Zt===0)return[];const xt=yt(Zt);this.heap=new xt(Zt),this.length=0}push(Zt){this.heap[this.length++]=Zt}pop(){return this.heap[--this.length]}}class Ht{constructor(Zt={}){const{max:xt=0,ttl:zt,ttlResolution:Qn=1,ttlAutopurge:Tn,updateAgeOnGet:ct,updateAgeOnHas:Qt,allowStale:vt,dispose:Pt,disposeAfter:en,noDisposeOnSet:Bn,noUpdateTTL:jn,maxSize:$n=0,maxEntrySize:ur=0,sizeCalculation:Rr,fetchMethod:Sr,fetchContext:Yr,noDeleteOnFetchRejection:Mr,noDeleteOnStaleGet:hr,allowStaleOnFetchRejection:Br,allowStaleOnFetchAbort:xr,ignoreFetchAbort:Gr}=Zt,{length:lo,maxAge:qr,stale:_i}=Zt instanceof Ht?{}:Zt;if(xt!==0&&!Wt(xt))throw new TypeError("max option must be a nonnegative integer");const Uo=xt?yt(xt):Array;if(!Uo)throw new Error("invalid max value: "+xt);if(this.max=xt,this.maxSize=$n,this.maxEntrySize=ur||this.maxSize,this.sizeCalculation=Rr||lo,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=Sr||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(xt).fill(null),this.valList=new Array(xt).fill(null),this.next=new Uo(xt),this.prev=new Uo(xt),this.head=0,this.tail=0,this.free=new $t(xt),this.initialFill=1,this.size=0,typeof Pt=="function"&&(this.dispose=Pt),typeof en=="function"?(this.disposeAfter=en,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!Bn,this.noUpdateTTL=!!jn,this.noDeleteOnFetchRejection=!!Mr,this.allowStaleOnFetchRejection=!!Br,this.allowStaleOnFetchAbort=!!xr,this.ignoreFetchAbort=!!Gr,this.maxEntrySize!==0){if(this.maxSize!==0&&!Wt(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!Wt(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!vt||!!_i,this.noDeleteOnStaleGet=!!hr,this.updateAgeOnGet=!!ct,this.updateAgeOnHas=!!Qt,this.ttlResolution=Wt(Qn)||Qn===0?Qn:1,this.ttlAutopurge=!!Tn,this.ttl=zt||qr||0,this.ttl){if(!Wt(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 yo="LRU_CACHE_UNBOUNDED";Tt(yo)&&(ht.add(yo),Vt("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",yo,Ht))}_i&&mt("stale","allowStale"),qr&&mt("maxAge","ttl"),lo&&mt("length","sizeCalculation")}getRemainingTTL(Zt){return this.has(Zt,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new Kt(this.max),this.starts=new Kt(this.max),this.setItemTTL=(zt,Qn,Tn=dt.now())=>{if(this.starts[zt]=Qn!==0?Tn:0,this.ttls[zt]=Qn,Qn!==0&&this.ttlAutopurge){const ct=setTimeout(()=>{this.isStale(zt)&&this.delete(this.keyList[zt])},Qn+1);ct.unref&&ct.unref()}},this.updateItemAge=zt=>{this.starts[zt]=this.ttls[zt]!==0?dt.now():0},this.statusTTL=(zt,Qn)=>{zt&&(zt.ttl=this.ttls[Qn],zt.start=this.starts[Qn],zt.now=Zt||xt(),zt.remainingTTL=zt.now+zt.ttl-zt.start)};let Zt=0;const xt=()=>{const zt=dt.now();if(this.ttlResolution>0){Zt=zt;const Qn=setTimeout(()=>Zt=0,this.ttlResolution);Qn.unref&&Qn.unref()}return zt};this.getRemainingTTL=zt=>{const Qn=this.keyMap.get(zt);return Qn===void 0?0:this.ttls[Qn]===0||this.starts[Qn]===0?1/0:this.starts[Qn]+this.ttls[Qn]-(Zt||xt())},this.isStale=zt=>this.ttls[zt]!==0&&this.starts[zt]!==0&&(Zt||xt())-this.starts[zt]>this.ttls[zt]}updateItemAge(Zt){}statusTTL(Zt,xt){}setItemTTL(Zt,xt,zt){}isStale(Zt){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new Kt(this.max),this.removeItemSize=Zt=>{this.calculatedSize-=this.sizes[Zt],this.sizes[Zt]=0},this.requireSize=(Zt,xt,zt,Qn)=>{if(this.isBackgroundFetch(xt))return 0;if(!Wt(zt)){if(!Qn)throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");if(typeof Qn!="function")throw new TypeError("sizeCalculation must be a function");if(zt=Qn(xt,Zt),!Wt(zt))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}return zt},this.addItemSize=(Zt,xt,zt)=>{if(this.sizes[Zt]=xt,this.maxSize){const Qn=this.maxSize-this.sizes[Zt];for(;this.calculatedSize>Qn;)this.evict(!0)}this.calculatedSize+=this.sizes[Zt],zt&&(zt.entrySize=xt,zt.totalCalculatedSize=this.calculatedSize)}}removeItemSize(Zt){}addItemSize(Zt,xt){}requireSize(Zt,xt,zt,Qn){if(zt||Qn)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:Zt=this.allowStale}={}){if(this.size)for(let xt=this.tail;this.isValidIndex(xt)&&(!Zt&&this.isStale(xt)||(yield xt),xt!==this.head);)xt=this.prev[xt]}*rindexes({allowStale:Zt=this.allowStale}={}){if(this.size)for(let xt=this.head;this.isValidIndex(xt)&&(!Zt&&this.isStale(xt)||(yield xt),xt!==this.tail);)xt=this.next[xt]}isValidIndex(Zt){return Zt!==void 0&&this.keyMap.get(this.keyList[Zt])===Zt}*entries(){for(const Zt of this.indexes())this.valList[Zt]===void 0||this.keyList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield[this.keyList[Zt],this.valList[Zt]])}*rentries(){for(const Zt of this.rindexes())this.valList[Zt]===void 0||this.keyList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield[this.keyList[Zt],this.valList[Zt]])}*keys(){for(const Zt of this.indexes())this.keyList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield this.keyList[Zt])}*rkeys(){for(const Zt of this.rindexes())this.keyList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield this.keyList[Zt])}*values(){for(const Zt of this.indexes())this.valList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield this.valList[Zt])}*rvalues(){for(const Zt of this.rindexes())this.valList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield this.valList[Zt])}[Symbol.iterator](){return this.entries()}find(Zt,xt){for(const zt of this.indexes()){const Qn=this.valList[zt],Tn=this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn;if(Tn!==void 0&&Zt(Tn,this.keyList[zt],this))return this.get(this.keyList[zt],xt)}}forEach(Zt,xt=this){for(const zt of this.indexes()){const Qn=this.valList[zt],Tn=this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn;Tn!==void 0&&Zt.call(xt,Tn,this.keyList[zt],this)}}rforEach(Zt,xt=this){for(const zt of this.rindexes()){const Qn=this.valList[zt],Tn=this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn;Tn!==void 0&&Zt.call(xt,Tn,this.keyList[zt],this)}}get prune(){return gt("prune","purgeStale"),this.purgeStale}purgeStale(){let Zt=!1;for(const xt of this.rindexes({allowStale:!0}))this.isStale(xt)&&(this.delete(this.keyList[xt]),Zt=!0);return Zt}dump(){const Zt=[];for(const xt of this.indexes({allowStale:!0})){const zt=this.keyList[xt],Qn=this.valList[xt],Tn=this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn;if(Tn===void 0)continue;const ct={value:Tn};if(this.ttls){ct.ttl=this.ttls[xt];const Qt=dt.now()-this.starts[xt];ct.start=Math.floor(Date.now()-Qt)}this.sizes&&(ct.size=this.sizes[xt]),Zt.unshift([zt,ct])}return Zt}load(Zt){this.clear();for(const[xt,zt]of Zt){if(zt.start){const Qn=Date.now()-zt.start;zt.start=dt.now()-Qn}this.set(xt,zt.value,zt)}}dispose(Zt,xt,zt){}set(Zt,xt,{ttl:zt=this.ttl,start:Qn,noDisposeOnSet:Tn=this.noDisposeOnSet,size:ct=0,sizeCalculation:Qt=this.sizeCalculation,noUpdateTTL:vt=this.noUpdateTTL,status:Pt}={}){if(ct=this.requireSize(Zt,xt,ct,Qt),this.maxEntrySize&&ct>this.maxEntrySize)return Pt&&(Pt.set="miss",Pt.maxEntrySizeExceeded=!0),this.delete(Zt),this;let en=this.size===0?void 0:this.keyMap.get(Zt);if(en===void 0)en=this.newIndex(),this.keyList[en]=Zt,this.valList[en]=xt,this.keyMap.set(Zt,en),this.next[this.tail]=en,this.prev[en]=this.tail,this.tail=en,this.size++,this.addItemSize(en,ct,Pt),Pt&&(Pt.set="add"),vt=!1;else{this.moveToTail(en);const Bn=this.valList[en];if(xt!==Bn){if(this.isBackgroundFetch(Bn)?Bn.__abortController.abort(new Error("replaced")):Tn||(this.dispose(Bn,Zt,"set"),this.disposeAfter&&this.disposed.push([Bn,Zt,"set"])),this.removeItemSize(en),this.valList[en]=xt,this.addItemSize(en,ct,Pt),Pt){Pt.set="replace";const jn=Bn&&this.isBackgroundFetch(Bn)?Bn.__staleWhileFetching:Bn;jn!==void 0&&(Pt.oldValue=jn)}}else Pt&&(Pt.set="update")}if(zt===0||this.ttl!==0||this.ttls||this.initializeTTLTracking(),vt||this.setItemTTL(en,zt,Qn),this.statusTTL(Pt,en),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 Zt=this.valList[this.head];return this.evict(!0),Zt}}evict(Zt){const xt=this.head,zt=this.keyList[xt],Qn=this.valList[xt];return this.isBackgroundFetch(Qn)?Qn.__abortController.abort(new Error("evicted")):(this.dispose(Qn,zt,"evict"),this.disposeAfter&&this.disposed.push([Qn,zt,"evict"])),this.removeItemSize(xt),Zt&&(this.keyList[xt]=null,this.valList[xt]=null,this.free.push(xt)),this.head=this.next[xt],this.keyMap.delete(zt),this.size--,xt}has(Zt,{updateAgeOnHas:xt=this.updateAgeOnHas,status:zt}={}){const Qn=this.keyMap.get(Zt);if(Qn!==void 0){if(!this.isStale(Qn))return xt&&this.updateItemAge(Qn),zt&&(zt.has="hit"),this.statusTTL(zt,Qn),!0;zt&&(zt.has="stale",this.statusTTL(zt,Qn))}else zt&&(zt.has="miss");return!1}peek(Zt,{allowStale:xt=this.allowStale}={}){const zt=this.keyMap.get(Zt);if(zt!==void 0&&(xt||!this.isStale(zt))){const Qn=this.valList[zt];return this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn}}backgroundFetch(Zt,xt,zt,Qn){const Tn=xt===void 0?void 0:this.valList[xt];if(this.isBackgroundFetch(Tn))return Tn;const ct=new St;zt.signal&&zt.signal.addEventListener("abort",()=>ct.abort(zt.signal.reason));const Qt={signal:ct.signal,options:zt,context:Qn},vt=(Bn,jn=!1)=>{const{aborted:$n}=ct.signal,ur=zt.ignoreFetchAbort&&Bn!==void 0;return zt.status&&($n&&!jn?(zt.status.fetchAborted=!0,zt.status.fetchError=ct.signal.reason,ur&&(zt.status.fetchAbortIgnored=!0)):zt.status.fetchResolved=!0),!$n||ur||jn?(this.valList[xt]===en&&(Bn===void 0?en.__staleWhileFetching?this.valList[xt]=en.__staleWhileFetching:this.delete(Zt):(zt.status&&(zt.status.fetchUpdated=!0),this.set(Zt,Bn,Qt.options))),Bn):Pt(ct.signal.reason)},Pt=Bn=>{const{aborted:jn}=ct.signal,$n=jn&&zt.allowStaleOnFetchAbort,ur=$n||zt.allowStaleOnFetchRejection,Rr=ur||zt.noDeleteOnFetchRejection;if(this.valList[xt]===en&&(!Rr||en.__staleWhileFetching===void 0?this.delete(Zt):$n||(this.valList[xt]=en.__staleWhileFetching)),ur)return zt.status&&en.__staleWhileFetching!==void 0&&(zt.status.returnedStale=!0),en.__staleWhileFetching;if(en.__returned===en)throw Bn};zt.status&&(zt.status.fetchDispatched=!0);const en=new Promise((Bn,jn)=>{this.fetchMethod(Zt,Tn,Qt).then($n=>Bn($n),jn),ct.signal.addEventListener("abort",()=>{zt.ignoreFetchAbort&&!zt.allowStaleOnFetchAbort||(Bn(),zt.allowStaleOnFetchAbort&&(Bn=$n=>vt($n,!0)))})}).then(vt,Bn=>(zt.status&&(zt.status.fetchRejected=!0,zt.status.fetchError=Bn),Pt(Bn)));return en.__abortController=ct,en.__staleWhileFetching=Tn,en.__returned=null,xt===void 0?(this.set(Zt,en,{...Qt.options,status:void 0}),xt=this.keyMap.get(Zt)):this.valList[xt]=en,en}isBackgroundFetch(Zt){return Zt&&typeof Zt=="object"&&typeof Zt.then=="function"&&Object.prototype.hasOwnProperty.call(Zt,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(Zt,"__returned")&&(Zt.__returned===Zt||Zt.__returned===null)}async fetch(Zt,{allowStale:xt=this.allowStale,updateAgeOnGet:zt=this.updateAgeOnGet,noDeleteOnStaleGet:Qn=this.noDeleteOnStaleGet,ttl:Tn=this.ttl,noDisposeOnSet:ct=this.noDisposeOnSet,size:Qt=0,sizeCalculation:vt=this.sizeCalculation,noUpdateTTL:Pt=this.noUpdateTTL,noDeleteOnFetchRejection:en=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:Bn=this.allowStaleOnFetchRejection,ignoreFetchAbort:jn=this.ignoreFetchAbort,allowStaleOnFetchAbort:$n=this.allowStaleOnFetchAbort,fetchContext:ur=this.fetchContext,forceRefresh:Rr=!1,status:Sr,signal:Yr}={}){if(!this.fetchMethod)return Sr&&(Sr.fetch="get"),this.get(Zt,{allowStale:xt,updateAgeOnGet:zt,noDeleteOnStaleGet:Qn,status:Sr});const Mr={allowStale:xt,updateAgeOnGet:zt,noDeleteOnStaleGet:Qn,ttl:Tn,noDisposeOnSet:ct,size:Qt,sizeCalculation:vt,noUpdateTTL:Pt,noDeleteOnFetchRejection:en,allowStaleOnFetchRejection:Bn,allowStaleOnFetchAbort:$n,ignoreFetchAbort:jn,status:Sr,signal:Yr};let hr=this.keyMap.get(Zt);if(hr===void 0){Sr&&(Sr.fetch="miss");const Br=this.backgroundFetch(Zt,hr,Mr,ur);return Br.__returned=Br}{const Br=this.valList[hr];if(this.isBackgroundFetch(Br)){const _i=xt&&Br.__staleWhileFetching!==void 0;return Sr&&(Sr.fetch="inflight",_i&&(Sr.returnedStale=!0)),_i?Br.__staleWhileFetching:Br.__returned=Br}const xr=this.isStale(hr);if(!Rr&&!xr)return Sr&&(Sr.fetch="hit"),this.moveToTail(hr),zt&&this.updateItemAge(hr),this.statusTTL(Sr,hr),Br;const Gr=this.backgroundFetch(Zt,hr,Mr,ur),lo=Gr.__staleWhileFetching!==void 0,qr=lo&&xt;return Sr&&(Sr.fetch=lo&&xr?"stale":"refresh",qr&&xr&&(Sr.returnedStale=!0)),qr?Gr.__staleWhileFetching:Gr.__returned=Gr}}get(Zt,{allowStale:xt=this.allowStale,updateAgeOnGet:zt=this.updateAgeOnGet,noDeleteOnStaleGet:Qn=this.noDeleteOnStaleGet,status:Tn}={}){const ct=this.keyMap.get(Zt);if(ct!==void 0){const Qt=this.valList[ct],vt=this.isBackgroundFetch(Qt);return this.statusTTL(Tn,ct),this.isStale(ct)?(Tn&&(Tn.get="stale"),vt?(Tn&&(Tn.returnedStale=xt&&Qt.__staleWhileFetching!==void 0),xt?Qt.__staleWhileFetching:void 0):(Qn||this.delete(Zt),Tn&&(Tn.returnedStale=xt),xt?Qt:void 0)):(Tn&&(Tn.get="hit"),vt?Qt.__staleWhileFetching:(this.moveToTail(ct),zt&&this.updateItemAge(ct),Qt))}Tn&&(Tn.get="miss")}connect(Zt,xt){this.prev[xt]=Zt,this.next[Zt]=xt}moveToTail(Zt){Zt!==this.tail&&(Zt===this.head?this.head=this.next[Zt]:this.connect(this.prev[Zt],this.next[Zt]),this.connect(this.tail,Zt),this.tail=Zt)}get del(){return gt("del","delete"),this.delete}delete(Zt){let xt=!1;if(this.size!==0){const zt=this.keyMap.get(Zt);if(zt!==void 0)if(xt=!0,this.size===1)this.clear();else{this.removeItemSize(zt);const Qn=this.valList[zt];this.isBackgroundFetch(Qn)?Qn.__abortController.abort(new Error("deleted")):(this.dispose(Qn,Zt,"delete"),this.disposeAfter&&this.disposed.push([Qn,Zt,"delete"])),this.keyMap.delete(Zt),this.keyList[zt]=null,this.valList[zt]=null,zt===this.tail?this.tail=this.prev[zt]:zt===this.head?this.head=this.next[zt]:(this.next[this.prev[zt]]=this.next[zt],this.prev[this.next[zt]]=this.prev[zt]),this.size--,this.free.push(zt)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return xt}clear(){for(const Zt of this.rindexes({allowStale:!0})){const xt=this.valList[Zt];if(this.isBackgroundFetch(xt))xt.__abortController.abort(new Error("deleted"));else{const zt=this.keyList[Zt];this.dispose(xt,zt,"delete"),this.disposeAfter&&this.disposed.push([xt,zt,"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 gt("reset","clear"),this.clear}get length(){return((Zt,xt)=>{const zt="LRU_CACHE_PROPERTY_"+Zt;if(Tt(zt)){const{prototype:Qn}=Ht,{get:Tn}=Object.getOwnPropertyDescriptor(Qn,Zt);ft(zt,Zt+" property","cache."+xt,Tn)}})("length","size"),this.size}static get AbortController(){return St}static get AbortSignal(){return Bt}}const Nt=Ht;var qt=$(2273),kt=$(6452),bt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Jt extends class{constructor(Zt,xt){this.type=Zt,this.name=xt}}{constructor(Zt){super("simple","LogReporter"),this.message=Zt}send(Zt){return bt(this,void 0,void 0,function*(){var xt,zt;kt.vF.debug(this.message,(xt=Zt.reduce((Qn,Tn)=>Object.assign(Object.assign({},Qn),{[Tn.name]:Tn.stat}),{}),zt=Qn=>{const{sum:Tn,count:ct}=Qn,Qt=Tn/ct;return Object.assign(Object.assign({},Qn),{average:Qt})},Object.keys(xt).reduce((Qn,Tn)=>Object.assign(Object.assign({},Qn),{[Tn]:zt(xt[Tn])}),{})))})}}const wt=/^[a-zA-Z0-9-_.,:?'"()@\/\\#$+ ]{1,255}$/,At=/^[*a-zA-Z0-9-_.,:?'"()@\/\\#$+ ]{1,255}$/;function Ct(In,Zt=!1){return!!(In!=null&&In.match(Zt?At:wt))}var Mt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};function nn({func:In,delay:Zt,immediate:xt=!0}){let zt=!1,Qn=setTimeout(function ct(){return Mt(this,void 0,void 0,function*(){if(zt)return;const Qt=new Date().getTime();try{Tn=In(),yield Tn}finally{if(!zt){const vt=new Date().getTime();Qn=setTimeout(ct,Math.max(Zt-(vt-Qt),0))}}})},xt?0:Zt),Tn=Promise.resolve();return{stop(){return Mt(this,void 0,void 0,function*(){zt=!0,clearTimeout(Qn),yield Tn})}}}var sn=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};const Lt=$(8758);class tn{constructor(Zt){this.buffer={},this.reporters=[],this.flushInterval=nn({func:()=>this.flushStats(),delay:tn.samplePeriodMs}),this.tags=this.filterTags((Zt==null?void 0:Zt.tags)||{app:qt.yA,version:qt.rE,namespace:qt.MF})}shutdown(){return sn(this,void 0,void 0,function*(){yield this.flushInterval.stop(),yield this.flushStats(),yield(0,Ut.c)(2*ut.p.second)})}aggregate(Zt,xt,zt){this.addToBuffer(this.buffer,this.encodeKey({metric:Zt,tags:this.filterTags(zt||{})}),typeof xt=="number"?{min:xt,max:xt,sum:xt,count:1}:xt)}increment(Zt,xt){this.aggregate(Zt,1,xt)}timer(Zt,xt,zt){return sn(this,void 0,void 0,function*(){const Qn=Lt(),Tn=yield xt(),ct=Lt();return this.aggregate(Zt,ct-Qn,zt),Tn})}registerStatsReporter(Zt){this.reporters.push(Zt)}setTag(Zt,xt){const zt=this.filterTags({[Zt]:xt});this.tags=Object.assign(Object.assign({},this.tags),zt)}addToBuffer(Zt,xt,zt){if(Zt[xt]){const{min:Qn,max:Tn,sum:ct,count:Qt}=Zt[xt];Zt[xt]={min:Math.min(Qn,zt.min),max:Math.max(Tn,zt.max),sum:ct+zt.sum,count:Qt+zt.count}}else Zt[xt]=zt}write(Zt){return sn(this,void 0,void 0,function*(){yield Promise.all(this.reporters.map(xt=>sn(this,void 0,void 0,function*(){let zt;const Qn={};switch(xt.type){case"simple":for(const[ct,Qt]of Object.entries(Zt)){const{metric:vt}=this.decodeKey(ct);this.addToBuffer(Qn,this.encodeKey({metric:vt}),Qt)}zt=Qn;break;case"tagged":zt=Zt;break;default:(function(ct){throw new Error(`Unreachable type encountered (${ct})`)})(xt.type)}const Tn=Object.entries(zt);if(Tn.length>0)return xt.send(Tn.map(([ct,Qt])=>{const{metric:vt,tags:Pt}=this.decodeKey(ct);return{name:vt,tags:Object.assign(Object.assign({},Pt),this.tags),stat:Qt}}),tn.samplePeriodMs).catch(ct=>{kt.vF.debug("Failed to write stats to "+xt.name,{error:ct})})})))})}flushStats(){return sn(this,void 0,void 0,function*(){yield this.write(this.buffer),this.buffer={}})}encodeKey(Zt){return st()(Object.assign(Object.assign({},Zt),Object.keys(Zt.tags||{}).length>0?{tags:Zt.tags}:{}))}decodeKey(Zt){return JSON.parse(Zt)}filterTags(Zt){return Object.entries(Zt||{}).reduce((xt,[zt,Qn])=>(Ct(zt)&&Ct(Qn)&&(xt[zt]=Qn),xt),{})}}tn.samplePeriodMs=5*ut.p.minute;const cn=!!qt.op,on=new tn;cn||["local","on-prem"].includes(qt.MF)||on.registerStatsReporter(new Jt("stats"));var Gt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Xt extends class{constructor(Zt){this.options=Zt,this.cache=new Nt(Object.assign(Object.assign(Object.assign({},Zt.dispose||Zt.disposeAfter?{ttlAutopurge:!0}:{}),Zt),{dispose:(...xt)=>{var zt;xt[2]==="evict"&&on.increment("lru-eviction",{name:Zt.name}),(zt=Zt.dispose)===null||zt===void 0||zt.call(Zt,...xt)},disposeAfter:(...xt)=>{var zt;this.updateStats(),(zt=Zt.disposeAfter)===null||zt===void 0||zt.call(Zt,...xt)}})),this.stringify=Zt.fastStringify?JSON.stringify:st()}set(Zt,xt,zt){const Qn=this.stringify(Zt);if(!this.cache.set(Qn,xt,{ttl:zt})){const Tn=this.cache.sizeCalculation?this.cache.sizeCalculation(xt,Qn):"unknown";throw Error(`Value too large (${Tn} > ${this.cache.max})`)}this.updateStats()}get(Zt){const{name:xt}=this.options,zt=this.stringify(Zt),Qn=this.cache.getRemainingTTL(zt);return Qn<=0?on.increment("cache-miss",{name:xt}):Qn!==1/0&&on.aggregate("cache-item-ttl",Qn,{name:xt}),this.cache.get(zt)}delete(Zt){this.cache.delete(this.stringify(Zt))}peek(Zt){return this.cache.peek(this.stringify(Zt))}size(){return this.cache.size}clear(){this.cache.clear()}forEach(Zt){this.cache.forEach(Zt)}purgeStale(){return this.cache.purgeStale()}updateStats(){const{name:Zt}=this.options;on.aggregate("cache-item-count",this.cache.size,{name:Zt}),this.cache.calculatedSize!==void 0&&on.aggregate("cache-length",this.cache.calculatedSize,{name:Zt})}}{constructor(Zt){if(super(Zt),this.expireRejectedPromiseValues=Zt.expireRejectedPromiseValues===void 0||Zt.expireRejectedPromiseValues,this.rejectedPromiseValueTtl=Zt.rejectedPromiseValueTtl!==void 0?Zt.rejectedPromiseValueTtl:ut.p.second,this.rejectedPromiseValueTtl<0)throw new Error("rejectedPromiseValueTtl must not be negative")}set(Zt,xt,zt){super.set(Zt,xt,zt),this.expireRejectedPromiseValues&&xt.catch(()=>Gt(this,void 0,void 0,function*(){yield(0,Ut.c)(this.rejectedPromiseValueTtl),this.peek(Zt)===xt&&this.delete(Zt)}))}}var dn=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Vn{constructor(Zt,xt,zt){this.authClient=Zt,this.email=xt,this.password=zt,this.tokenTtlMs=1*ut.p.hour,this.tokenCache=new Xt({name:"Credentials-tokenCache",max:100,ttl:this.tokenTtlMs-5*ut.p.minute,fastStringify:!0})}getToken(){return dn(this,void 0,void 0,function*(){let Zt=this.tokenCache.get(this.email);return Zt||(Zt=(()=>dn(this,void 0,void 0,function*(){const{authentication:xt}=yield this.authClient.login({email:this.email,password:this.password,tokenExpirationSeconds:this.tokenTtlMs/ut.p.second});if(!xt)throw new Error("User account not verified.");return xt.accessToken}))(),this.tokenCache.set(this.email,Zt)),Zt})}}var Fn=$(3804),fn=$(5949),Un=$(2964),Jn=$(7396),_n=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Zn extends Jn.V{constructor(Zt){super(Zt)}postLanRtcOffer(Zt){return _n(this,void 0,void 0,function*(){return yield this.fetch("v1/lan-rtc-offer",{method:"POST",body:Zt})})}}var On=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};function Yn(In){return On(this,void 0,void 0,function*(){return(yield Promise.all(In.map(Zt=>Zt.catch(xt=>xt)))).filter(Zt=>Zt instanceof Error)})}function _t(In,Zt){if(In===void 0)throw new Error("Value is undefined"+(Zt?": "+Zt:""))}function Ot(In,Zt){if(In===null)throw new Error("Value is null"+(Zt?": "+Zt:""))}function jt(In){return _t(In),In}function pn(In,Zt){const xt=In.reduce((zt,Qn)=>[...zt,...Qn.urls],[]).filter(zt=>En(zt,Zt)).sort(zt=>yn(zt,"udp")?-1:0).shift();if(xt)return Object.assign(Object.assign({},jt(In.find(zt=>zt.urls.includes(xt)))),{urls:[xt]})}function En(In,Zt){switch(Zt){case"stun":return/^stuns?:/.test(In);case"turn":return/^turns?:/.test(In)}}function yn(In,Zt){return In.endsWith("transport="+Zt)}var Cn=$(3563),Gn=$(4620);class Wn extends Error{constructor(Zt,xt){super(`Deadline expired after ${Zt}ms + ${xt}ms`)}}class ir{static withDeadline(Zt,xt){const zt=new Promise((Qn,Tn)=>{setTimeout(()=>{Tn(new Wn(xt,this.grpcCallDeadlineSlopMs))},xt+this.grpcCallDeadlineSlopMs)});return Promise.race([Zt,zt])}}ir.grpcCallDeadlineSlopMs=500*ut.p.millisecond;var lr=$(8311);const Rn={ordered:!1,maxPacketLifeTime:300*ut.p.millisecond},_r={ordered:!0},zr={ordered:!0},Er={ordered:!1,maxRetransmits:0},ho={ordered:!1,maxRetransmits:0},Ro=In=>"received"in In&&In.received!==void 0,rr=In=>!("received"in In)||In.received===void 0,wo=2*ut.p.second,oo=10*ut.p.second;function No(In,Zt={}){const xt=Array.from(In.values()),zt=xt.filter(Ro),Qn=zt.length>0,Tn=Math.max(...xt.map(en=>en.sent)),ct=Math.max(...zt.map(en=>en.received));let Qt;if(Qn){const en=Date.now()-Tn<=ut.p.millisecond?xt.length-1:xt.length,Bn=zt.length>en?en:zt.length,jn=zt.map(hr=>hr.received-hr.sent),{standardDeviation:$n,mean:ur,jitter:Rr}=function(hr){const Br=hr.length;if(Br===0)return{mean:NaN,standardDeviation:-1,jitter:NaN};const xr=hr.reduce((qr,_i)=>qr+_i,0)/Br,Gr=Math.sqrt(hr.map(qr=>Math.pow(qr-xr,2)).reduce((qr,_i)=>qr+_i)/Br);if(Br===1)return{mean:xr,standardDeviation:Gr,jitter:NaN};let lo=0;for(let qr=1;qrhr.sent{const[Bn,jn]=en;jn.sent{var Tn,ct;return{streamId:Qn,sentCount:(Tn=xt.get(Qn))!==null&&Tn!==void 0?Tn:0,receivedCount:(ct=zt.get(Qn))!==null&&ct!==void 0?ct:0}}),timestamp:Zt}}incrementLocalSent(Zt){const{localSent:xt}=this.counts,zt=ro(Zt.header.stream);xt.set(zt,(xt.get(zt)||0)+1)}incrementLocalReceived(Zt){const{localReceived:xt}=this.counts,zt=ro(Zt.header.stream),Qn=xt.get(zt)||0;if(Qn===0){const{streamName:Tn,streamType:ct}=Zt.header.stream;kt.vF.debug("RTC client received first message for stream",{streamName:Tn,streamType:ct})}xt.set(zt,Qn+1)}uploadMetrics(){return ao(this,void 0,void 0,function*(){const{sessionId:Zt}=this,xt=yield this.connection.peerConnection.getStats(),zt={};xt.forEach(Pt=>zt[Pt.id]=Pt),kt.vF.debug("rtc-stats",Object.assign(Object.assign({},zt),{sessionId:Zt}));const{localSent:Qn,localReceived:Tn,remoteSent:ct,remoteReceived:Qt}=this.counts,vt=[...new Set([...Qn.keys(),...Tn.keys()])].reduce((Pt,en)=>{const Bn=Qn.get(en),jn=Tn.get(en),$n=ct.get(en),ur=Qt.get(en);return Object.assign(Object.assign({},Pt),{[`local-${en}-sent`]:Bn,[`local-${en}-received`]:jn,[`remote-${en}-sent`]:$n,[`remote-${en}-received`]:ur})},{sessionId:Zt});kt.vF.debug("rtc-message-report",Object.assign({deviceId:this.connection.getRemoteDeviceId()},vt))})}}function _o(In,Zt,xt){return{header:{stream:In,created:Date.now(),frameId:xt||""},payload:Zt}}function Ao(In){const Zt=In.localCandidate.candidateType,xt=In.remoteCandidate.candidateType;return Zt==="host"&&xt==="host"?"local":Zt==="relay"||xt==="relay"?"TURN":"STUN"}function So(In){return new Set(["disconnected","failed","closed"]).has(In.iceConnectionState)}function bo(In){switch(In.header.stream.streamType){case"twist":{const{twist:Zt}=In.payload;if(!Zt)throw Error("twist not in payload of RTC message with type twist");return{header:In.header,payload:{twist:{linear:Object.assign({x:0,y:0,z:0},Zt.linear),angular:Object.assign({x:0,y:0,z:0},Zt.angular)}}}}case"pose":{const{pose:Zt}=In.payload;if(!Zt)throw Error("pose not in payload of RTC message with type pose");return{header:In.header,payload:{pose:{translation:Object.assign({x:0,y:0,z:0},Zt.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},Zt.rotation)}}}}case"pose-with-covariance":{const{poseWithCovariance:Zt}=In.payload;if(!Zt)throw Error("poseWithCovariance not in payload of RTC message with type pose-with-covariance");const xt=new Array(36).fill(0);return Zt.covariance.forEach((zt,Qn)=>{if(Qn>=36)throw Error("covariance contains more than 36 elements");xt[Qn]=zt}),{header:In.header,payload:{poseWithCovariance:{pose:{translation:Object.assign({x:0,y:0,z:0},Zt.pose.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},Zt.pose.rotation)},covariance:xt}}}}case"point":{const{point:Zt}=In.payload;if(!Zt)throw Error("point not in payload of RTC message with type point");return{header:In.header,payload:{point:Object.assign({x:0,y:0,z:0},Zt)}}}default:return In}}var po=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class tr{get peerConnection(){return Ot(this._peerConnection,"RTCPeerConnection is closed!"),this._peerConnection}constructor(Zt,xt,zt,Qn){this.iceServers=xt,this.config=zt,this.dataChannelNotifier=Qn,this.connectTimeoutMs=20*ut.p.second,this.iceGatheringTimeoutMs=3*ut.p.second,this.pingUpdateTimeoutMs=1*ut.p.second,this.pingV2UpdateTimeoutMs=250*ut.p.millisecond,this.pingV2MetricsGatherTimeoutMs=1*ut.p.second,this.streamsInfoUpdateTimeoutMs=2*ut.p.second,this.reassemblyTimeoutMs=500*ut.p.millisecond,this.reassemblyTableCleanupMs=1*ut.p.second,this.heartbeatTimeoutMs=20*ut.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.closeCalled=!1,this.gotOffer=!1,this.hasIceCandidate=!1,this.pingV2Map=new Map,this.sendPingV2=()=>{const{latestTryOnceStreamChannel:ct}=this;if(!ct)return;const Qt=new Date().getTime(),vt=(0,Un.A)();this.sendSystemMessage(ct,{type:"ping-v2",payload:{timestamp:Qt,id:vt}}),this.pingV2Map.set(vt,{sent:Qt})},this.gatherPingV2Metrics=()=>{const ct=No(this.pingV2Map);if(ct){const Qt=this.getRemoteDeviceId();this.pingInfo=ct,on.aggregate("rtc-ping-average",ct.average,Object.assign({},Qt?{deviceId:Qt}:{})),on.aggregate("rtc-ping-loss",ct.loss,Object.assign({},Qt?{deviceId:Qt}:{})),on.aggregate("rtc-jitter",ct.jitter,Object.assign({},Qt?{deviceId:Qt}:{}))}},this._peerConnection=Zt;const{isOffer:Tn}=zt.baseConfig;Tn?this.initializeChannels(Zt):Zt.ondatachannel=ct=>{switch(ct.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=ct.channel;break;case"stream.reliable":this.reliableStreamChannel=ct.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=ct.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=ct.channel;break;case"heartbeat":return void(this.heartbeatChannel=ct.channel);default:return void this.dataChannelNotifier(ct.channel)}this.setupChannel(ct.channel)},this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:ct}=this;ct&&this.sendSystemMessage(ct,{type:"ping"})},this.pingUpdateTimeoutMs),this.pingV2UpdateTimeout=setInterval(this.sendPingV2,this.pingV2UpdateTimeoutMs),this.pingV2MetricsGatherTimeout=setInterval(this.gatherPingV2Metrics,this.pingV2MetricsGatherTimeoutMs),this.streamsInfoUpdateTimeout=setInterval(()=>{const{latestTtlStreamChannel:ct}=this;ct&&this.sendSystemMessage(ct,{type:"streams-info"})},this.streamsInfoUpdateTimeoutMs),this.reassemblyTableCleanupTimeout=setInterval(()=>{const ct=new Date().getTime();this.reassemblyTableLastTimestamp.forEach((Qt,vt,Pt)=>{ct>vt+this.reassemblyTimeoutMs&&this.reassemblyTable.delete(Qt)})},this.reassemblyTableCleanupMs),this.heartbeatTimeout=setInterval(()=>{const{heartbeatChannel:ct}=this;ct&&ct.readyState==="open"&&ct.send(new Uint8Array([1]))},this.heartbeatTimeoutMs)}handleSignal(Zt){return po(this,void 0,void 0,function*(){const{peerConnection:xt}=this,{track:zt}=this.config.baseConfig,Qn=(()=>{try{return JSON.parse(Zt.getPayload())}catch{return}})();if(!Qn)return void kt.vF.error("Received unparseable signal.");kt.vF.debug("Handling signal",{description:Qn});const{sdp:Tn,type:ct}=Qn;if(!Tn||!ct)return void kt.vF.warn("Received non-SDP signal");const{signalingState:Qt,connectionState:vt}=xt;if(Qt!=="stable"||vt!=="connected")if(xt.remoteDescription)kt.vF.warn("Received SDP after remote description was set: "+Tn);else{if(ct==="offer"){if(Qt!=="stable")return void kt.vF.warn("Received offer SDP when signaling is ongoing.");yield xt.setRemoteDescription(Qn);const Pt=yield xt.createAnswer();yield xt.setLocalDescription(Pt);const en=Zt.clone();return zt==null||zt("Answer Received",en),en.setPayload(JSON.stringify(Pt)),en.setReceiverId(Zt.getSenderId()),en.setSenderId(Zt.getReceiverId()),en}if(ct==="answer"){if(Qt==="stable")return void kt.vF.warn("Received answer SDP when signaling hasn't started.");yield xt.setRemoteDescription(Qn)}}else kt.vF.warn("Received SDP when already connected: "+Tn)})}send(Zt,xt){const zt=this.getChannelFromLabel(xt.channelLabel);zt?this.sendOnChannel(zt,Zt):kt.vF.warn("Send called with unexpected channel label",{channelLabel:xt.channelLabel})}controlRemoteStream(Zt){var xt;this.sendSystemMessage((Ot(xt=this.reliableStreamChannel),xt),{type:"stream-control",streamControl:Zt})}isActive(){return new Set(["new","checking","connected","completed"]).has(this.peerConnection.iceConnectionState)||this.isReady()}isReady(){const{reliableStreamChannel:Zt,latestTtlStreamChannel:xt,latestTryOnceStreamChannel:zt,latestReliableStreamChannel:Qn}=this;return(Zt==null?void 0:Zt.readyState)==="open"&&(xt==null?void 0:xt.readyState)==="open"&&(zt==null?void 0:zt.readyState)==="open"&&(Qn==null?void 0:Qn.readyState)==="open"}close(){return po(this,void 0,void 0,function*(){var Zt,xt,zt,Qn,Tn,ct,Qt;this.closeCalled||(this.closeCalled=!0,yield(Zt=this.sessionMetrics)===null||Zt===void 0?void 0:Zt.uploadMetrics(),vr(this.pingUpdateTimeout),vr(this.pingV2UpdateTimeout),vr(this.pingV2MetricsGatherTimeout),vr(this.reassemblyTableCleanupTimeout),vr(this.streamsInfoUpdateTimeout),vr(this.heartbeatTimeout),(xt=this._peerConnection)===null||xt===void 0||xt.close(),(zt=this.heartbeatChannel)===null||zt===void 0||zt.close(),(Qn=this.latestReliableStreamChannel)===null||Qn===void 0||Qn.close(),(Tn=this.latestTryOnceStreamChannel)===null||Tn===void 0||Tn.close(),(ct=this.latestTtlStreamChannel)===null||ct===void 0||ct.close(),(Qt=this.reliableStreamChannel)===null||Qt===void 0||Qt.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 Zt;return(Zt=this.config.remoteConfig)===null||Zt===void 0?void 0:Zt.sessionCreatedTimestamp}setSessionCreatedTimestamp(Zt){this.config.remoteConfig&&(this.config.remoteConfig.sessionCreatedTimestamp=Zt)}getSessionId(){var Zt;return(Zt=this.config.remoteConfig)===null||Zt===void 0?void 0:Zt.sessionId}setSessionId(Zt){this.config.remoteConfig&&(this.config.remoteConfig.sessionId=Zt,this.sessionMetrics=new Wo(Zt,this))}getRemotePeerId(){return this.config.baseConfig.remotePeerId}getRemoteDeviceId(){var Zt;return(Zt=this.config.baseConfig)===null||Zt===void 0?void 0:Zt.remoteDeviceId}setRemoteDeviceId(Zt){this.config.baseConfig.remoteDeviceId=Zt}getSessionMetricsMessageCounts(){var Zt;return(Zt=this.sessionMetrics)===null||Zt===void 0?void 0:Zt.counts}getConnectionStatsInfo(){return po(this,void 0,void 0,function*(){const{peerConnection:Zt}=this;if(!Zt)return;const xt=yield Zt.getStats(null),zt=[];xt.forEach(vt=>{zt.push(vt)});const Qn=zt.find(vt=>vt.type==="transport");if(!Qn)return;const Tn=zt.find(vt=>(vt.type==="candidate-pair"||vt.type==="candidatepair")&&vt.id===Qn.selectedCandidatePairId);if(!Tn)return;const ct=zt.find(vt=>vt.id===Tn.localCandidateId),Qt=zt.find(vt=>vt.id===Tn.remoteCandidateId);return ct&&Qt&&(ct.address=ct.address||ct.ip,Qt.address=Qt.address||Qt.ip,ct.address!==void 0&&Qt.address!==void 0)?{transport:Qn,localCandidate:ct,remoteCandidate:Qt,candidatePair:Tn}:void 0})}initializeChannels(Zt){this.heartbeatChannel=Zt.createDataChannel("heartbeat",ho),this.heartbeatChannel.binaryType="arraybuffer",this.latestTtlStreamChannel=Zt.createDataChannel("stream.latest-ttl",Rn),this.latestTtlStreamChannel.binaryType="arraybuffer",this.reliableStreamChannel=Zt.createDataChannel("stream.reliable",_r),this.reliableStreamChannel.binaryType="arraybuffer",this.latestReliableStreamChannel=Zt.createDataChannel("stream.latest-reliable",zr),this.latestReliableStreamChannel.binaryType="arraybuffer",this.latestTryOnceStreamChannel=Zt.createDataChannel("stream.latest-try-once",Er),this.latestTryOnceStreamChannel.binaryType="arraybuffer",this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}getOffer(){return po(this,void 0,void 0,function*(){var Zt,xt;const{gotOffer:zt}=this,{peerConnection:Qn,config:Tn}=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 ct=(Zt=this.config.remoteConfig)===null||Zt===void 0?void 0:Zt.sessionId;if(zt)return void kt.vF.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,So(this.peerConnection))return void kt.vF.debug("Failed to generate offer because the peer connection was inactive.");const Qt=Tn.baseConfig.track;Qn.onicecandidate=()=>{this.hasIceCandidate=!0},Qn.oniceconnectionstatechange=()=>po(this,void 0,void 0,function*(){const $n=Qn.iceConnectionState;if($n==="connected"||$n==="completed"){const ur=yield this.getConnectionStatsInfo(),Rr=ur?Ao(ur):void 0;kt.vF.info("ICE connection state changed to "+$n,{sessionId:ct,connectionStatsInfo:ur,iceMode:Rr}),Qt==null||Qt("ICE connection state change",{iceConnectionState:$n,sessionId:ct,connectionStatsInfo:ur,iceMode:Rr})}}),yield Qn.setLocalDescription(yield Qn.createOffer());const vt=Qn.getConfiguration?Qn.getConfiguration().iceTransportPolicy:"all",Pt=new Date().getTime();for(;;){const $n=new Date().getTime()-Pt;if($n>this.connectTimeoutMs)return void kt.vF.debug("Failed to generate offer because ICE gathering timed out.");if($n>this.iceGatheringTimeoutMs&&this.hasIceCandidate){kt.vF.debug("ICE gathering partially completed; proceeding",{iceTransportPolicy:vt,waitTime:$n}),Qt==null||Qt("ICE gathering partially completed",{sessionId:ct,iceTransportPolicy:vt,waitTime:$n});break}if(Qn.iceGatheringState==="complete"){kt.vF.debug("ICE gathering complete",{iceTransportPolicy:vt,waitTime:$n}),Qt==null||Qt("ICE gathering completed",{sessionId:ct,iceTransportPolicy:vt,waitTime:$n});break}yield(0,Ut.c)(.1*ut.p.second)}const en=(xt=this.iceServers)!==null&&xt!==void 0?xt:[];for(const $n of en)"credentialType"in $n&&($n.credentialType=void 0);const Bn=JSON.stringify(en),jn=new Gn.Signal;return jn.setPayload(JSON.stringify(Qn.localDescription)),jn.setSenderId(this.config.baseConfig.localPeerId),jn.setReceiverId(this.config.baseConfig.remotePeerId),jn.setIceServers(Bn),jn.setIceTransportPolicy(vt??"all"),this.config.baseConfig.sessionType!==void 0?jn.setSessionType(this.config.baseConfig.sessionType):jn.setSessionType(Gn.SessionType.TELEOP),kt.vF.debug("Sending offer signal with description",{description:jn.getPayload()}),jn})}getLanOffer(){return po(this,void 0,void 0,function*(){const{peerConnection:Zt,gotOffer:xt}=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(xt)return void kt.vF.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,So(this.peerConnection))return void kt.vF.debug("Failed to generate offer because the peer connection was inactive.");yield Zt.setLocalDescription(yield Zt.createOffer());const zt=new Date().getTime();for(;;){if(new Date().getTime()-zt>this.iceGatheringTimeoutMs)return void kt.vF.debug("Failed to generate offer because ICE gathering timed out.");if(Zt.iceGatheringState==="complete")break;yield(0,Ut.c)(.1*ut.p.second)}const Qn=Zt.localDescription;if(Qn)return kt.vF.debug("Sending LAN offer signal with description",{description:Qn}),Qn;kt.vF.error("Failed to generate LAN offer description")})}handleLanAnswer(Zt){return po(this,void 0,void 0,function*(){const{peerConnection:xt}=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 xt.setRemoteDescription(Zt)})}getChannelFromLabel(Zt){switch(Zt){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(Zt,xt){var zt;let Qn;try{Qn=(0,lr.encode)(JSON.stringify(xt))}catch(Tn){return void kt.vF.warn("Failed to encode RTC message",{error:Tn})}try{Zt.send(Qn),(zt=this.sessionMetrics)===null||zt===void 0||zt.incrementLocalSent(xt)}catch(Tn){kt.vF.warn("Failed to send message to channel",{error:Tn,channel:Zt.label})}}channelNotRecognized(Zt){return Zt!==this.latestTtlStreamChannel&&Zt!==this.latestReliableStreamChannel&&Zt!==this.latestTryOnceStreamChannel&&Zt!==this.reliableStreamChannel}setupChannel(Zt){Zt.onmessage=xt=>{if(this.channelNotRecognized(Zt))return void kt.vF.warn("Received message on unrecognized data channel.");let zt;try{zt=JSON.parse((0,lr.decode)(xt.data))}catch(Qn){return void kt.vF.warn("Received unparseable message on RTC stream data channel",{error:Qn,channel:Zt.label})}zt.communicationType==="message-chunk"?this.receiveChannelMessageChunk(Zt,zt):this.receiveChannelMessage(Zt,zt)},Zt.onerror=xt=>{kt.vF.warn("Channel error: "+xt.error,{error:xt.error,sessionId:this.getSessionId(),channelLabel:Zt.label})},Zt.onopen=()=>{kt.vF.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:Zt.label})},Zt.onclose=()=>{const xt={bufferedAmount:Zt.bufferedAmount,sessionId:this.getSessionId(),channelLabel:Zt.label};this.closeCalled===!1?kt.vF.debug("Unexpected channel closed",xt):kt.vF.debug("Channel closed",xt)}}receiveChannelMessage(Zt,xt){var zt;const{config:Qn}=this,{remotePeerId:Tn}=this.config.baseConfig;this.lastMessageTimestamp=new Date().getTime(),xt=bo(xt),(zt=this.sessionMetrics)===null||zt===void 0||zt.incrementLocalReceived(xt),!this.handleSystemMessage(Zt,xt)&&((Zt===this.latestTryOnceStreamChannel||Zt===this.latestTtlStreamChannel||Zt===this.latestReliableStreamChannel)&&!this.isLatestMessage(xt)||Qn.baseConfig.receive(Tn,xt))}receiveChannelMessageChunk(Zt,xt){const zt=this.reassemblyTable.get(xt.id)||[];if(zt.push(xt),zt.length===xt.total){const Qn=function(Tn){const ct=Tn.sort((Qt,vt)=>Qt.seqQt.part).reduce((Qt,vt)=>Qt+vt);try{return JSON.parse(ct)}catch{return void kt.vF.warn("Could not reassemble RTC message chunks")}}(zt);return Qn&&this.receiveChannelMessage(Zt,Qn),void this.reassemblyTable.delete(xt.id)}this.reassemblyTable.set(xt.id,zt),this.reassemblyTableLastTimestamp.set(xt.id,new Date().getTime())}handleSystemMessage(Zt,xt){var zt,Qn;const{config:Tn}=this,{baseConfig:ct}=Tn,{remotePeerId:Qt,remoteDeviceId:vt}=ct;switch(xt.header.stream.streamType){case"ping":return this.sendSystemMessage(Zt,{type:"pong",timestamp:jt(xt.payload.ping)}),!0;case"pong":{const Pt=new Date().getTime()-jt(xt.payload.pong);return this.pingTimeMs=Pt,on.aggregate("rtc-ping-time",Pt,Object.assign({},vt?{deviceId:vt}:{})),!0}case"ping-v2":return this.sendPingV2(),!0;case"pong-v2":{const Pt=jt(xt.payload.pongV2),en=this.pingV2Map.get(Pt.id);return(en==null?void 0:en.sent)!==Pt.timestamp&&kt.vF.warn("Pong timestamp doesn't match stored value",{currentEntry:en,pong:Pt}),this.pingV2Map.set(Pt.id,{sent:Pt.timestamp,received:new Date().getTime()}),!0}case"streams-info":{const{sessionMetrics:Pt}=this,en=(zt=xt.payload.streamsInfo)===null||zt===void 0?void 0:zt.timestamp;return!!en&&(Pt==null||Pt.updateRemoteMessagesCounts(xt),(Qn=ct.onStreamsInfoUpdate)===null||Qn===void 0||Qn.call(ct,Qt,en),!0)}case"stream-control":return!0;default:return!1}}sendSystemMessage(Zt,xt){var zt;const{localUserId:Qn,localPeerId:Tn}=this.config.baseConfig;if(Zt.readyState!=="open")return;const ct={entityId:Qn??Tn,streamName:"$."+xt.type,streamType:xt.type};let Qt;switch(xt.type){case"ping":Qt={ping:new Date().getTime()};break;case"pong":Qt={pong:xt.timestamp};break;case"ping-v2":Qt={pingV2:xt.payload};break;case"pong-v2":Qt={pongV2:xt.payload};break;case"stream-control":Qt={streamControl:xt.streamControl};break;case"streams-info":Qt={streamsInfo:(zt=this.sessionMetrics)===null||zt===void 0?void 0:zt.getLocalStreamsInfo(new Date().getTime())}}this.sendOnChannel(Zt,_o(ct,Qt))}isLatestMessage(Zt){const xt=ro(Zt.header.stream),zt=(this.streamLatestTimestamp.get(xt)||0)<=Zt.header.created;return zt&&this.streamLatestTimestamp.set(xt,Zt.header.created),zt}}function vr(In){In&&clearInterval(In)}function Hr(){kt.vF.debug("forceGarbageCollection() triggered"),queueMicrotask(()=>{let In=document.createElement("img");In.src=window.URL.createObjectURL(new Blob([new ArrayBuffer(5e7)])),In.onerror=function(){window.URL.revokeObjectURL(this.src),In=null}})}function fo(In){try{return In instanceof Error?`${In.name}: ${In.message}`:typeof In=="object"?JSON.stringify(In):String(In)}catch{return"Unknown error"}}function Go(In){var Zt,xt;return{userId:(Zt=In.getUserId())===null||Zt===void 0?void 0:Zt.getValue(),deviceId:(xt=In.getDeviceId())===null||xt===void 0?void 0:xt.getValue(),organizationId:In.getOrganizationId(),id:In.getPeerId(),capabilities:[],capabilitySet:{}}}var Zr=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};const _a=In=>In.map(Zt=>Object.assign(Object.assign(Object.assign({},Zt),Zt.username?{username:""}:null),Zt.credential?{credential:""}:null));class xa{constructor(Zt){this.config=Zt,this.grpcCallDeadline=5*ut.p.second,this.refreshIntervalDelayMs=2*ut.p.second,this.iceServersTtl=30*ut.p.minute,this.connections=[],this.localConnections=[],this.isConnectionInitiator=new WeakSet,this.isOutgoingConnection=new Set,this.peerDataChannelListeners=[],this.rtcInstancesConstructed=0,this.statsLoopsExecuted=0;const{refreshIntervalDelayMs:xt}=this;this.refreshInterval=nn({func:()=>Zr(this,void 0,void 0,function*(){try{yield this.update()}catch(zt){kt.vF.warn("RTC refresh failed",{error:zt})}}),delay:xt})}send(Zt,xt,zt){const Qn=this.getActiveConnection(Zt);Qn?Qn.isReady()?Qn.send(xt,zt):kt.vF.warn("Send called with unready connection."):kt.vF.warn("Send called with no connection.")}controlRemoteStream(Zt,xt){const zt=this.getActiveConnection(Zt);zt?zt.isReady()?zt.controlRemoteStream(xt):kt.vF.warn("controlRemoteStream called with unready connection."):kt.vF.warn("controlRemoteStream called with no connection.")}getLocalPeer(){return Zr(this,void 0,void 0,function*(){for(;!this.localPeer;)yield(0,Ut.c)(.1*ut.p.second);return Go(this.localPeer)})}connect(Zt,xt){return Zr(this,void 0,void 0,function*(){var zt,Qn,Tn;if(this.config.lanOnlyMode===!0)throw new Error("connect method called in local only mode.");const{track:ct,signalingClient:Qt}=this.config,{localPeer:vt,receiveSignalStream:Pt,iceServers:en}=this;if(!vt||!Pt||!en)return void kt.vF.warn("Connect called prior to local peer, receiveSignalStream, and ICE servers ready");if(this.getActiveConnection(Zt))return void kt.vF.warn("Connect called for peer with existing connection.");if(this.isOutgoingConnection.has(Zt))return void kt.vF.warn("Connect called for peer with an existing outgoing connection offer.");this.isOutgoingConnection.add(Zt);const Bn=function(Mr,hr,Br){const{rtcIceTransportPolicies:xr,rtcIceServerProtocol:Gr,useAllServers:lo}=hr||{},qr=Mr.map(_i=>Object.assign(Object.assign({},_i),{urls:_i.urls.filter(Uo=>{const yo=(xr===void 0||xr.some(Io=>En(Uo,Io)))&&(Gr===void 0||yn(Uo,Gr));return yo||kt.vF.debug("Ignoring ICE server: "+Uo,{organizationId:Br}),yo})})).filter(({urls:_i})=>_i.filter(Uo=>Uo).length>0);return lo?qr:[pn(qr,"stun"),pn(qr,"turn")].filter(_i=>_i!==void 0).map(_i=>jt(_i))}(en,xt);kt.vF.debug("Received ICE servers:",_a(en)),kt.vF.debug("Using ICE servers:",_a(Bn));const jn=new tr(yield this.createRTCPeerConnection(Bn),Bn,{baseConfig:{isOffer:!0,isLan:!1,receive:(Mr,hr)=>this.config.receive(Mr,hr),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Mr,hr)=>{var Br,xr;return(xr=(Br=this.config).onStreamsInfoUpdate)===null||xr===void 0?void 0:xr.call(Br,Mr,hr)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(zt=vt.getUserId())===null||zt===void 0?void 0:zt.getValue(),localPeerId:vt.getPeerId(),remotePeerId:Zt,sessionType:this.config.sessionType},remoteConfig:{}},Mr=>this.onCustomDataChannel(Zt,Mr)),$n=yield jn.getOffer();if(!$n)return kt.vF.error("Failed to generate offer."),void this.isOutgoingConnection.delete(Zt);kt.vF.debug("Sending offer."),ct==null||ct("Sending offer",(0,Cn.x)($n));const ur=new Gn.SendSignalRequest;ur.setSignal($n);const Rr=yield(()=>Zr(this,void 0,void 0,function*(){try{return yield ir.withDeadline(Qt.sendSignal(ur,yield this.getMetadata()),this.grpcCallDeadline)}catch(Mr){kt.vF.warn("Error when sending signal",{error:Mr})}}))();if(!this.isOutgoingConnection.has(Zt))return void kt.vF.debug("No offer set after receiving offer signal response.");kt.vF.debug("Offer sent.");const Sr=(Qn=Rr==null?void 0:Rr.getSessionId())===null||Qn===void 0?void 0:Qn.getValue(),Yr=(Tn=Rr==null?void 0:Rr.getSessionCreatedTimestamp())===null||Tn===void 0?void 0:Tn.getValue();return Sr&&Yr?(jn.setSessionId(Sr),jn.setSessionCreatedTimestamp(Yr),this.isOutgoingConnection.delete(Zt),this.connections.push(jn),this.isConnectionInitiator.add(jn),this.setupHandlers(jn),Sr):(kt.vF.warn("No session ID or no session created timestamp on send signal response."),void this.isOutgoingConnection.delete(Zt))})}connectLan(Zt){return Zr(this,void 0,void 0,function*(){var xt,zt;const Qn=new Zn(Zt),Tn=new tr(yield this.createRTCPeerConnection([]),[],{baseConfig:{isOffer:!0,isLan:!0,receive:(Pt,en)=>this.config.receive(Pt,en),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Pt,en)=>{var Bn,jn;return(jn=(Bn=this.config).onStreamsInfoUpdate)===null||jn===void 0?void 0:jn.call(Bn,Pt,en)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(zt=(xt=this.localPeer)===null||xt===void 0?void 0:xt.getUserId())===null||zt===void 0?void 0:zt.getValue(),localPeerId:"lan_client",remotePeerId:Zt}},Pt=>this.onCustomDataChannel(Zt,Pt)),ct=yield Tn.getLanOffer();if(!ct)return kt.vF.warn("Could not generate LAN offer"),!1;const Qt=yield Qn.postLanRtcOffer({offer:JSON.stringify(ct)}),vt=new RTCSessionDescription(JSON.parse(Qt.answer));return yield Tn.handleLanAnswer(vt),this.localConnections.push(Tn),this.isConnectionInitiator.add(Tn),(0,Un.A)()})}getConnections(){return[...this.connections,...this.localConnections]}createCustomDataChannel(Zt,xt,zt,Qn,Tn){const ct=this.getActiveConnection(Zt);if(ct&&this.isConnectionInitiator.has(ct)){const vt=ct.peerConnection.createDataChannel("custom."+xt,zt);return Qn&&(vt.binaryType="arraybuffer"),Tn(Zt,vt),()=>{}}const Qt=(vt,Pt)=>{Zt===vt&&Pt.label==="custom."+xt&&Tn(Zt,Pt)};return this.peerDataChannelListeners.push(Qt),()=>{this.peerDataChannelListeners=this.peerDataChannelListeners.filter(vt=>vt!==Qt)}}onCustomDataChannel(Zt,xt){this.peerDataChannelListeners.forEach(zt=>zt(Zt,xt))}getConnectionStatus(Zt){if(this.isOutgoingConnection.has(Zt))return"connecting";const xt=this.getActiveConnection(Zt);return xt?xt.isReady()?"connected":"connecting":"disconnected"}getConnectionStatsInfo(Zt){return Zr(this,void 0,void 0,function*(){const xt=this.getActiveConnection(Zt);if(xt)return yield xt.getConnectionStatsInfo()})}disconnect(Zt){return Zr(this,void 0,void 0,function*(){const xt=this.getActiveConnection(Zt);xt&&(yield xt.close(),this.connections=this.connections.filter(zt=>zt!==xt),this.localConnections=this.localConnections.filter(zt=>zt!==xt))})}getPeers(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:Zt}=this.config,xt=yield(()=>Zr(this,void 0,void 0,function*(){try{return yield ir.withDeadline(Zt.getPeers(new Gn.GetPeersRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(Tn){kt.vF.warn("Error when getting peers",{error:Tn})}}))();if(!xt)return[];const zt=xt.getPeersList();if(!zt)return[];const Qn=Tn=>{var ct,Qt;return(Qt=(ct=Tn.getPeerCreatedTimestamp())===null||ct===void 0?void 0:ct.getValue())!==null&&Qt!==void 0?Qt:0};return zt.sort((Tn,ct)=>Qn(ct)-Qn(Tn)).map(Tn=>Go(Tn))})}getSessions(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:Zt}=this.config,xt=yield(()=>Zr(this,void 0,void 0,function*(){try{return yield ir.withDeadline(Zt.getPeers(new Gn.GetPeersRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(Tn){kt.vF.warn("Error when getting peers",{error:Tn})}}))();if(!xt)return{};const zt=xt.getPeersList(),Qn={};for(const Tn of zt)Qn[Tn.getPeerId()]=Tn.getSessionIdsList();return Qn})}getPing(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getPing();kt.vF.warn("Attempted to get ping time from inactive peer.")}getPingInfo(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getPingInfo();kt.vF.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getLastMessageTimestamp();kt.vF.warn("Attempted to get last message time from inactive peer.")}getSessionMetricsMessageCounts(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getSessionMetricsMessageCounts();kt.vF.warn("Attempted to get session metrics counts from inactive peer.")}isReady(){if(this.config.lanOnlyMode)return!0;const{localPeer:Zt,receiveSignalStream:xt,iceServers:zt}=this;return!!(Zt&&xt&&zt)}shutdown(){return Zr(this,void 0,void 0,function*(){yield this.refreshInterval.stop(),this.receiveSignalStream&&this.receiveSignalStream.cancel();const Zt=this.connections;this.connections=[],yield this.closeConnections(Zt);const xt=this.localConnections;this.localConnections=[],yield this.closeConnections(xt),this.isOutgoingConnection.clear(),this.peerDataChannelListeners=[];const{localPeer:zt}=this;if(!zt||this.config.lanOnlyMode)return;const{signalingClient:Qn}=this.config;yield(()=>Zr(this,void 0,void 0,function*(){try{const Tn=new Gn.DeletePeerRequest;Tn.setPeerId(zt.getPeerId()),yield ir.withDeadline(Qn.deletePeer(Tn,yield this.getMetadata()),this.grpcCallDeadline)}catch(Tn){return void kt.vF.warn("Error deleting local peer",{error:Tn})}}))()})}createPeer(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createPeer method cannot be used in local-only mode.");const{signalingClient:Zt}=this.config,xt=yield(()=>Zr(this,void 0,void 0,function*(){try{return yield ir.withDeadline(Zt.createPeer(new Gn.CreatePeerRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(Qn){const Tn=Qn;kt.vF.debug("createPeer failed",{error:Tn});const ct=fo(Tn);throw new Error("Was not able to create peer: "+ct)}}))(),zt=xt==null?void 0:xt.getPeer();if(!zt)throw new Error("Response did not provide peer.");return this.localPeer=zt})}createReceiveSignalStream(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createReceiveSignalStream method cannot be used in local-only mode.");const{signalingClient:Zt}=this.config,{localPeer:xt,iceServers:zt}=this;if(!xt||!zt)return;const{receiveSignalStream:Qn}=this;Qn&&Qn.cancel();const Tn=new Gn.ReceiveSignalStreamRequest;Tn.setPeerId(xt.getPeerId());const ct=yield(()=>Zr(this,void 0,void 0,function*(){try{return Zt.receiveSignalStream(Tn,yield this.getMetadata({hasDeadline:!1}))}catch(Qt){kt.vF.debug("createReceiveSignalStream failed",{error:Qt});const vt=fo(Qt);throw new Error("Unable to create receive signal stream: "+vt)}}))();if(!ct)throw new Error("Response did not provide stream.");return ct.on("data",Qt=>Zr(this,void 0,void 0,function*(){var vt,Pt,en,Bn;const jn=Qt.getSignal(),$n=(vt=jn==null?void 0:jn.getSessionId())===null||vt===void 0?void 0:vt.getValue(),ur=jn==null?void 0:jn.getSenderId(),Rr=jn==null?void 0:jn.getReceiverId(),Sr=(Pt=jn==null?void 0:jn.getSessionCreatedTimestamp())===null||Pt===void 0?void 0:Pt.getValue();if(!(jn&&$n&&ur&&Rr&&Sr))return void kt.vF.warn("Received signal with missing information.");const Yr=this.getActiveConnection(ur);if(Yr)if(Yr.getSessionId()!==$n){if(kt.vF.debug("Received signal: different session for a peer we're already connected to."),(Yr.getSessionCreatedTimestamp()||0)>Sr)return;const Mr=new tr(yield this.createRTCPeerConnection(zt),zt,{baseConfig:{isOffer:!1,isLan:!1,receive:(hr,Br)=>this.config.receive(hr,Br),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(hr,Br)=>{var xr,Gr;return(Gr=(xr=this.config).onStreamsInfoUpdate)===null||Gr===void 0?void 0:Gr.call(xr,hr,Br)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:xt.getPeerId(),localUserId:(Bn=xt.getUserId())===null||Bn===void 0?void 0:Bn.getValue(),remotePeerId:ur},remoteConfig:{sessionId:$n,sessionCreatedTimestamp:Sr}},hr=>this.onCustomDataChannel(ur,hr));yield Mr.handleSignal(jn),this.connections.push(Mr)}else kt.vF.debug("Received signal: for an existing connection."),yield Yr.handleSignal(jn);else{kt.vF.debug("Received signal: new connection.");const Mr=new tr(yield this.createRTCPeerConnection(zt),zt,{baseConfig:{isOffer:!1,isLan:!1,receive:(hr,Br)=>this.config.receive(hr,Br),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(hr,Br)=>{var xr,Gr;return(Gr=(xr=this.config).onStreamsInfoUpdate)===null||Gr===void 0?void 0:Gr.call(xr,hr,Br)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:xt.getPeerId(),localUserId:(en=xt.getUserId())===null||en===void 0?void 0:en.getValue(),remotePeerId:ur},remoteConfig:{sessionId:$n,sessionCreatedTimestamp:Sr}},hr=>this.onCustomDataChannel(ur,hr));yield Mr.handleSignal(jn),this.connections.push(Mr)}})),ct.on("end",()=>{ct.cancel(),this.receiveSignalStream=void 0}),ct.on("error",Qt=>{switch(Qt.code){case fn.StatusCode.CANCELLED:case fn.StatusCode.UNAVAILABLE:case fn.StatusCode.UNKNOWN:kt.vF.debug("Receive signal stream error",{error:Qt});break;case fn.StatusCode.UNAUTHENTICATED:kt.vF.warn("Receive signal stream error",{error:Qt});break;default:kt.vF.error("Receive signal stream error",{error:Qt})}ct.cancel(),this.receiveSignalStream=void 0}),this.receiveSignalStream=ct})}createRTCPeerConnection(Zt){return Zr(this,void 0,void 0,function*(){var xt;const zt=(xt=this.config.alternateRTCPeerConnection)!==null&&xt!==void 0?xt:window.RTCPeerConnection;if(!zt)throw function(){if(typeof navigator>"u")throw new Error("not a browser");const{userAgent:Qn}=navigator;return Qn.includes("Firefox/")?"Firefox":Qn.includes("Edg/")?"Edge":Qn.includes("Chrome/")?"Chrome":Qn.includes("Safari/")?"Safari":Qn.includes("MSIE/")||Qn.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||Hr();try{return new zt({iceServers:Zt})}catch(Qn){throw kt.vF.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),Qn}})}closeConnections(Zt){return Zr(this,void 0,void 0,function*(){const xt=yield Yn(Zt.map(zt=>Zr(this,void 0,void 0,function*(){yield zt.close()})));for(const zt of xt)kt.vF.warn("Request to close session failed",{error:zt})})}getActiveConnection(Zt){return this.getConnections().find(xt=>xt.getRemotePeerId()===Zt&&xt.isActive())}update(){return Zr(this,void 0,void 0,function*(){var Zt;if(this.localConnections=this.localConnections.filter(Bn=>Bn.isActive()),this.config.lanOnlyMode)return;const{signalingClient:xt}=this.config;if(!this.localPeer||!this.receiveSignalStream||!this.iceServers){const Bn=[];return this.localPeer||Bn.push(this.createPeer()),this.iceServers||Bn.push(this.updateIceServers()),yield Promise.all(Bn),void(this.receiveSignalStream||(yield this.createReceiveSignalStream()))}const[zt,Qn]=(Tn=this.connections,ct=Bn=>Bn.isActive(),Tn.reduce((Bn,jn,$n,ur)=>{const[Rr,Sr]=Bn;return(ct(jn,$n,ur)?Rr:Sr).push(jn),Bn},[[],[]]));var Tn,ct;yield this.closeConnections(Qn),this.connections=zt,this.gatherConnectionStats().catch(Bn=>{kt.vF.warn("Error calling gatherConnectionStats",{error:Bn})}),this.statsLoopsExecuted++;const{localPeer:Qt}=this,vt=this.connections.filter(Bn=>Bn.getSessionId).map(Bn=>jt(Bn.getSessionId()));Qt.setSessionIdsList(vt);const Pt=new Gn.RefreshPeerRequest;Pt.setPeer(Qt);try{yield ir.withDeadline(xt.refreshPeer(Pt,yield this.getMetadata()),this.grpcCallDeadline)}catch(Bn){Bn instanceof fn.RpcError&&Bn.code===fn.StatusCode.NOT_FOUND?(kt.vF.warn("Peer expired, creating new peer",{peerId:Qt.getPeerId()}),yield this.reset()):kt.vF.warn("Error calling RefreshPeer",{error:Bn})}const en=yield this.getPeers();for(const Bn of this.connections)Bn.setRemoteDeviceId((Zt=en.find(jn=>jn.id===Bn.getRemotePeerId()))===null||Zt===void 0?void 0:Zt.deviceId)})}gatherConnectionStats(){return Zr(this,void 0,void 0,function*(){if(this.statsLoopsExecuted%10!=0||this.connections.length!==1)return;const Zt=yield this.connections[0].getConnectionStatsInfo(),xt=Zt?Ao(Zt):void 0;xt?on.setTag("rtc-connection-type",xt):on.setTag("rtc-connection-type","unknown")})}reset(){return Zr(this,void 0,void 0,function*(){yield this.closeConnections(this.connections),this.connections=[],this.isOutgoingConnection.clear(),yield this.createPeer(),yield this.createReceiveSignalStream()})}updateIceServers(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)return;const{iceServersLastUpdate:Zt,iceServersTtl:xt}=this,zt=new Date().getTime();if(!Zt||zt-Zt>xt)try{const Qn=(yield ir.withDeadline(this.config.signalingClient.getIceServers(new Gn.GetIceServersRequest,yield this.getMetadata()),this.grpcCallDeadline)).getIceServers();this.iceServers=JSON.parse(Qn),this.iceServersLastUpdate=zt}catch(Qn){kt.vF.warn("Error in updateIceServers",{error:Qn})}})}setupHandlers(Zt){const{peerConnection:xt}=Zt,zt=Zt.getSessionCreatedTimestamp();xt.onconnectionstatechange=()=>Zr(this,void 0,void 0,function*(){const Qn=xt.connectionState;if(!zt)return;const Tn=Zt.getRemoteDeviceId();switch(Qn){case"connected":on.aggregate("rtc-connect-time",new Date().getTime()-zt,Object.assign({},Tn?{deviceId:Tn}:{}));break;case"failed":on.increment("rtc-connect-failed",Object.assign({},Tn?{deviceId:Tn}:{}))}})}getMetadata(){return Zr(this,arguments,void 0,function*(Zt={}){if(this.config.lanOnlyMode)throw new Error("getMetadata method cannot be called in local-only mode");const{getToken:xt}=this.config,{grpcCallDeadline:zt}=this,{hasDeadline:Qn=!0}=Zt,Tn=Qn?{deadline:(Date.now()+zt).toString(10)}:null;try{const ct=yield xt();return Object.assign({authorization:ct},Tn)}catch(ct){throw kt.vF.error("getToken() failed",{error:ct}),new Error("Cannot get authorization token")}})}}var Eo=$(5413),eo=$(7197),nr=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class cr{constructor(Zt,xt){this.sentMessagesCounts=new Map,this.receivedMessagesCounts=new Map,this.sessionId=Zt,this.connection=xt}incrementMessageSent(Zt){const xt=ro(Zt.header.stream);this.sentMessagesCounts.set(xt,(this.sentMessagesCounts.get(xt)||0)+1)}incrementMessageReceived(Zt){const xt=ro(Zt.header.stream);this.receivedMessagesCounts.set(xt,(this.receivedMessagesCounts.get(xt)||0)+1)}uploadMetrics(){return nr(this,void 0,void 0,function*(){const{sessionId:Zt}=this,xt=yield this.connection.peerConnection.getStats(),zt={};xt.forEach(Tn=>zt[Tn.id]=Tn),kt.vF.debug("rtc-stats",Object.assign(Object.assign({},zt),{sessionId:Zt}));const Qn=[...new Set(Array.from(this.sentMessagesCounts.keys()).concat(Array.from(this.receivedMessagesCounts.keys())))].reduce((Tn,ct)=>{const Qt=this.sentMessagesCounts.get(ct),vt=this.receivedMessagesCounts.get(ct);return Object.assign(Object.assign({},Tn),{[ct+"-sent"]:Qt,[ct+"-received"]:vt})},{sessionId:Zt});kt.vF.debug("rtc-message-report",Qn)})}}function mo(In,Zt){return ro(In)===ro(Zt)}var Qo=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Kr{constructor(Zt,xt){this.peerConnection=Zt,this.config=xt,this.connectTimeoutMs=10*ut.p.second,this.gatherIceTimeoutMs=5*ut.p.second,this.pingUpdateTimeoutMs=2*ut.p.second,this.streamLatestTimestamp=new Map,this.closeCalled=!1,this.connectCalled=!1,this.sentOffer=!1,this.receivedIceCandidate=!1;const{isOffer:zt}=xt;zt?this.initializeChannels(Zt):Zt.ondatachannel=Qn=>{switch(Qn.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=Qn.channel;break;case"stream.reliable":this.reliableStreamChannel=Qn.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=Qn.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=Qn.channel}this.setupChannel(Qn.channel)},this.sessionMetrics=new cr(this.getSessionId(),this)}connect(){return Qo(this,void 0,void 0,function*(){if(this.connectCalled)return;this.connectCalled=!0,this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:Qn}=this;Qn&&this.sendSystemMessage(Qn,{type:"ping"})},this.pingUpdateTimeoutMs),this.connectTimeout=setTimeout(()=>Qo(this,void 0,void 0,function*(){this.isReady()||(kt.vF.warn("RTC connect timed out, closing connection"),yield this.close())}),this.connectTimeoutMs);const{peerConnection:Zt,config:{isOffer:xt,sessionId:zt}}=this;if(xt){const Qn=yield Zt.createOffer();yield Zt.setLocalDescription(Qn)}xt&&(this.gatherIceTimeout=setTimeout(()=>Qo(this,void 0,void 0,function*(){this.sentOffer||(kt.vF.warn("ICE gathering timed out"),this.receivedIceCandidate?(kt.vF.warn("Attempting to connect with partial ICE candidate pool"),yield this.sendOffer()):yield this.close())}),this.gatherIceTimeoutMs),Zt.onicecandidate=Qn=>Qo(this,void 0,void 0,function*(){Qn.candidate?this.receivedIceCandidate=!0:yield this.sendOffer()}),Zt.onicegatheringstatechange=()=>Qo(this,void 0,void 0,function*(){Zt.iceGatheringState==="complete"&&(yield this.sendOffer())}),Zt.onnegotiationneeded=()=>{kt.vF.debug("Negotiation needed",{sessionId:zt})})})}handleSignal(Zt){return Qo(this,void 0,void 0,function*(){const{peerConnection:xt,config:{sessionId:zt,sendSignal:Qn}}=this,{description:Tn}=JSON.parse(Zt.payload);if(kt.vF.debug("Handling signal",{sessionId:zt,description:JSON.stringify(Tn)}),Tn)if(xt.signalingState!=="stable"||xt.connectionState!=="connected")if(xt.remoteDescription)kt.vF.warn("Received SDP signal during negotiation when remote description is already set: "+JSON.stringify(Zt));else if(Tn.type==="offer"){yield xt.setRemoteDescription(Tn);const ct=yield xt.createAnswer();yield xt.setLocalDescription(ct),yield Qn({payload:JSON.stringify({description:ct})})}else Tn.type==="answer"&&(yield xt.setRemoteDescription(Tn));else kt.vF.warn("Received SDP signal when signaling is stable and connected: "+JSON.stringify(Zt));else kt.vF.warn("Received non-SDP signal: "+JSON.stringify(Zt))})}send(Zt,xt){const zt=this.getChannelFromLabel(xt.channelLabel);zt?this.sendOnChannel(zt,Zt):kt.vF.warn("Send called with unexpected channel label",{channelLabel:xt.channelLabel})}controlRemoteStream(Zt){this.sendSystemMessage(jt(this.reliableStreamChannel),{type:"stream-control",streamControl:Zt})}isActive(){return new Set(["new","connecting","connected"]).has(this.peerConnection.connectionState)}isReady(){const{peerConnection:Zt,latestTtlStreamChannel:xt,reliableStreamChannel:zt,latestTryOnceStreamChannel:Qn}=this;return!!(zt&&xt&&Qn)&&Zt.connectionState==="connected"&&zt.readyState==="open"&&xt.readyState==="open"&&Qn.readyState==="open"}isClosed(){const{peerConnection:Zt,reliableStreamChannel:xt,latestTryOnceStreamChannel:zt,latestTtlStreamChannel:Qn}=this;return!(Zt.connectionState!=="closed"||xt!==void 0&&xt.readyState!=="closed"||zt!==void 0&&zt.readyState!=="closed"||Qn!==void 0&&Qn.readyState!=="closed")}needsClosing(){const{peerConnection:Zt,latestTtlStreamChannel:xt,reliableStreamChannel:zt,latestTryOnceStreamChannel:Qn}=this;if(this.isClosed())return!1;const Tn=new Set(["closing","closed"]),ct=Qt=>Qt&&Tn.has(Qt.readyState);return So(Zt)||ct(xt)||ct(zt)||ct(Qn)}close(){return Qo(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(Zt){this.latestTtlStreamChannel=Zt.createDataChannel("stream.latest-ttl",Rn),this.reliableStreamChannel=Zt.createDataChannel("stream.reliable",_r),this.latestReliableStreamChannel=Zt.createDataChannel("stream.latest-reliable",zr),this.latestTryOnceStreamChannel=Zt.createDataChannel("stream.latest-try-once",Er),this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}sendOffer(){return Qo(this,void 0,void 0,function*(){if(this.sentOffer||(this.sentOffer=!0,So(this.peerConnection)))return;const{peerConnection:Zt,config:{sendSignal:xt}}=this,zt=yield Zt.createOffer();yield Zt.setLocalDescription(zt);const Qn={payload:JSON.stringify({description:zt})};yield xt(Qn)})}getChannelFromLabel(Zt){switch(Zt){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(Zt,xt){let zt;try{zt=(0,lr.encode)(JSON.stringify(xt))}catch(Qn){return void kt.vF.warn("Failed to encode RTC message",{error:Qn})}try{Zt.send(zt),this.sessionMetrics.incrementMessageSent(xt)}catch(Qn){kt.vF.warn("Failed to send message to channel",{error:Qn,channel:Zt.label})}}channelNotRecognized(Zt){return Zt!==this.latestTtlStreamChannel&&Zt!==this.latestReliableStreamChannel&&Zt!==this.latestTryOnceStreamChannel&&Zt!==this.reliableStreamChannel}setupChannel(Zt){Zt.onmessage=xt=>{if(this.channelNotRecognized(Zt))return void kt.vF.warn("Received message on unrecognized data channel.");let zt;try{zt=JSON.parse((0,lr.decode)(xt.data))}catch(Qn){return void kt.vF.warn("Received unparseable RTC message",{error:Qn,channel:Zt.label})}if(this.lastMessageTimestamp=new Date().getTime(),zt=bo(zt),this.sessionMetrics.incrementMessageReceived(zt),!this.handleSystemMessage(Zt,zt)){if(!this.hasCapabilities(zt))return void kt.vF.warn("Received RTC message that was not within the capability scope of the connection.");(Zt===this.latestTryOnceStreamChannel||Zt===this.latestTtlStreamChannel||Zt===this.latestReliableStreamChannel)&&!this.isLatestMessage(zt)||this.config.receive(this.config.remotePeer.id,zt)}},Zt.onerror=xt=>{kt.vF.warn("Channel error: "+xt.error,{error:xt.error,sessionId:this.getSessionId(),channelLabel:Zt.label})},Zt.onopen=()=>{kt.vF.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:Zt.label})},Zt.onclose=()=>{const xt={bufferedAmount:Zt.bufferedAmount,sessionId:this.getSessionId(),channelLabel:Zt.label};this.closeCalled===!1?kt.vF.debug("Unexpected channel closed",xt):kt.vF.debug("Channel closed",xt)}}handleSystemMessage(Zt,xt){switch(xt.header.stream.streamType){case"ping":return this.sendSystemMessage(Zt,{type:"pong",timestamp:jt(xt.payload.ping)}),!0;case"pong":{const zt=new Date().getTime()-jt(xt.payload.pong);return this.pingTimeMs=zt,on.aggregate("rtc-ping-time",zt),!0}case"stream-control":return!0;default:return!1}}sendSystemMessage(Zt,xt){if(Zt.readyState!=="open")return;const zt={entityId:jt(this.config.localPeer.deviceId||this.config.localPeer.userId),streamName:"$."+xt.type,streamType:xt.type};let Qn;switch(xt.type){case"ping":Qn={ping:new Date().getTime()};break;case"pong":Qn={pong:xt.timestamp};break;case"stream-control":Qn={streamControl:xt.streamControl}}this.sendOnChannel(Zt,_o(zt,Qn))}hasCapabilities(Zt){var xt,zt;const{localPeer:Qn,remotePeer:Tn}=this.config,ct=(xt=Qn.capabilitySet.streaming)===null||xt===void 0?void 0:xt.streams,Qt=ct&&ct.some(en=>en.receive&&mo(en.stream,Zt.header.stream)),vt=(zt=Tn.capabilitySet.streaming)===null||zt===void 0?void 0:zt.streams,Pt=vt&&vt.some(en=>en.send&&mo(en.stream,Zt.header.stream));return Qt||Pt}isLatestMessage(Zt){const xt=ro(Zt.header.stream),zt=(this.streamLatestTimestamp.get(xt)||0)<=Zt.header.created;return zt&&this.streamLatestTimestamp.set(xt,Zt.header.created),zt}}var Dr=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class gn{constructor(Zt){this.config=Zt,this.connections=[],this.connectingSessions=new Map,this.rtcInstancesConstructed=0,this.updateInterval=nn({func:()=>Dr(this,void 0,void 0,function*(){try{yield this.update()}catch(xt){kt.vF.warn("RTC update failed",{error:xt})}}),delay:250*ut.p.millisecond}),this.localPeer=this.createPeer()}send(Zt,xt,zt){const Qn=this.getActiveConnection(Zt);Qn?Qn.isReady()?Qn.send(xt,zt):kt.vF.warn("Attempted to send with an active connection to that peer which was not yet ready."):kt.vF.warn("Attempted to send with no active connection to that peer.")}controlRemoteStream(Zt,xt){const zt=this.getActiveConnection(Zt);zt?zt.isReady()?zt.controlRemoteStream(xt):kt.vF.warn("Attempted to control remote stream with an active connection to that peer which was not yet ready."):kt.vF.warn("Attempted to control remote stream with no active connection to that peer.")}connect(Zt){return Dr(this,void 0,void 0,function*(){const xt=yield this.getLocalPeer();if(this.getActiveConnection(Zt))return void kt.vF.warn("Attempted to connect to peer with an already active connection.");let zt;try{zt=yield this.config.signalingClient.createSession(yield this.config.getToken(),{offerPeerId:xt.id,answerPeerId:Zt})}catch(Qn){(0,Eo.e)(Qn,eo.o,Tn=>Tn.statusCode===404),kt.vF.warn("Attempted to connect to peer that does not exist.")}if(zt)for(this.connectingSessions.set(zt.id,new Date().getTime()),yield this.connectToSession(zt);;)switch(yield(0,Ut.c)(.1),this.getConnectionStatus(Zt)){case"connecting":continue;case"connected":return zt.id;case"disconnected":return}})}getConnectionStatus(Zt){const xt=this.getActiveConnection(Zt);return xt?xt.isReady()?"connected":"connecting":"disconnected"}getIceMode(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.iceMode}disconnect(Zt){return Dr(this,void 0,void 0,function*(){const xt=this.getActiveConnection(Zt);xt&&(yield this.closeConnection(xt))})}getLocalPeer(){return Dr(this,void 0,void 0,function*(){return yield this.localPeer})}getPeers(){return Dr(this,void 0,void 0,function*(){return yield this.config.signalingClient.getPeers(yield this.config.getToken())})}getPing(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getPing();kt.vF.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getLastMessageTimestamp();kt.vF.warn("Attempted to get ping time from inactive peer.")}shutdown(){return Dr(this,void 0,void 0,function*(){yield this.updateInterval.stop();const Zt=this.connections;this.connections=[],yield this.closeConnections(Zt)})}closeConnection(Zt){return Dr(this,void 0,void 0,function*(){this.connectingSessions.delete(Zt.getSessionId()),yield Zt.close();try{yield this.config.signalingClient.deleteSession(yield this.config.getToken(),Zt.getSessionId())}catch(xt){(0,Eo.e)(xt,eo.o,zt=>zt.statusCode===404)}})}getSessions(){return Dr(this,void 0,void 0,function*(){const Zt=yield this.getLocalPeer();return(yield this.config.signalingClient.getSessions(yield this.config.getToken())).filter(xt=>xt.offer.peer.id===Zt.id||xt.answer.peer.id===Zt.id)})}createPeer(){return Dr(this,void 0,void 0,function*(){return yield this.config.signalingClient.createPeer(yield this.config.getToken(),{capabilitySet:this.config.capabilitySet||{}})})}createRTCPeerConnection(){return Dr(this,arguments,void 0,function*(Zt={}){const xt=this.config.alternateRTCPeerConnection||RTCPeerConnection;this.rtcInstancesConstructed++,this.rtcInstancesConstructed%20||Hr();try{return new xt(Object.assign({iceServers:yield this.config.signalingClient.getIceServers(yield this.config.getToken())},Zt))}catch(zt){throw kt.vF.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),zt}})}closeConnections(Zt){return Dr(this,void 0,void 0,function*(){const xt=yield Yn(Zt.map(zt=>Dr(this,void 0,void 0,function*(){yield this.closeConnection(zt)})));for(const zt of xt)kt.vF.warn("Request to close session failed",{error:zt})})}reset(){return Dr(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(Zt){return this.connections.find(xt=>xt.getRemotePeer().id===Zt&&xt.isActive())}update(){return Dr(this,void 0,void 0,function*(){const Zt=yield this.getLocalPeer();try{yield this.config.signalingClient.refreshPeer(yield this.config.getToken(),Zt.id)}catch(xt){(0,Eo.e)(xt,eo.o,zt=>zt.statusCode===404),kt.vF.warn("Peer expired, creating new peer",{peerId:Zt.id}),yield this.reset()}yield this.handleSessions(yield this.getSessions())})}handleSessions(Zt){return Dr(this,void 0,void 0,function*(){yield this.syncConnectionsAndSessions(Zt);const xt=Zt.map(zt=>({session:zt,connection:this.connections.find(Qn=>Qn.getSessionId()===zt.id)}));yield Promise.all(xt.map(zt=>Dr(this,[zt],void 0,function*({session:Qn,connection:Tn}){return yield this.maintainConnection(Qn,Tn)})))})}syncConnectionsAndSessions(Zt){return Dr(this,void 0,void 0,function*(){const xt=new Set(Zt.map(Tn=>Tn.id)),zt=Tn=>xt.has(Tn.getSessionId())||this.connectingSessions.has(Tn.getSessionId());this.connections=this.connections.filter(Tn=>zt(Tn));const Qn=this.connections.filter(Tn=>!zt(Tn)||Tn.needsClosing());yield Promise.all(Qn.map(Tn=>Dr(this,void 0,void 0,function*(){yield this.closeConnection(Tn)})))})}maintainConnection(Zt,xt){return Dr(this,void 0,void 0,function*(){const zt=yield this.getLocalPeer(),Qn=Zt.offer.peer.id===zt.id;if(xt){if(xt.isReady())try{yield this.config.signalingClient.refreshSession(yield this.config.getToken(),Zt.id)}catch(Tn){(0,Eo.e)(Tn,eo.o,ct=>ct.statusCode===404),kt.vF.debug("Refresh session not found",{sessionId:Zt.id})}else if(xt.isActive())try{yield this.consumeSignals(xt)}catch(Tn){kt.vF.warn("Failed to ingest signals, closing connection",{error:Tn}),yield this.closeConnection(xt)}}else{if(Qn)return;yield this.connectToSession(Zt)}})}connectToSession(Zt){return Dr(this,void 0,void 0,function*(){const xt=yield this.getLocalPeer(),zt=Zt.offer.peer.id===xt.id,Qn=yield this.createRTCPeerConnection(),Tn=new Kr(Qn,{localPeer:zt?Zt.offer.peer:Zt.answer.peer,remotePeer:zt?Zt.answer.peer:Zt.offer.peer,sessionId:Zt.id,isOffer:zt,sendSignal:ct=>this.sendSignal(Zt.id,ct),receive:(ct,Qt)=>this.config.receive(ct,Qt)});if(this.connections.find(ct=>ct.getSessionId()===Zt.id))return kt.vF.warn("connectToSession called on a session that already has a connection.",{sessionId:Zt.id}),void(yield Tn.close());this.setupHandlers(Tn),this.connections.push(Tn);try{yield Tn.connect()}catch(ct){kt.vF.warn("Failed to handle negotiation, closing connection",{error:ct}),yield this.closeConnection(Tn)}})}setupHandlers(Zt){const{peerConnection:xt}=Zt,zt=Zt.getSessionId();xt.onconnectionstatechange=()=>Dr(this,void 0,void 0,function*(){const Qn=this.connectingSessions.get(zt);if(Qn===void 0)return;const Tn=xt.connectionState;switch(So(xt)&&this.connectingSessions.delete(zt),Tn){case"connected":{this.connectingSessions.delete(zt);const ct=new Date().getTime()-Qn;on.aggregate("rtc-connect-time",ct);break}case"failed":on.increment("rtc-connect-failed"),yield this.closeConnection(Zt)}})}consumeSignals(Zt){return Dr(this,void 0,void 0,function*(){let xt=[];try{xt=yield this.config.signalingClient.takeSignals(yield this.config.getToken(),Zt.getSessionId())}catch(zt){(0,Eo.e)(zt,eo.o,Qn=>Qn.statusCode===404)}for(const zt of xt)yield Zt.handleSignal(zt)})}sendSignal(Zt,xt){return Dr(this,void 0,void 0,function*(){try{yield this.config.signalingClient.addSignals(yield this.config.getToken(),Zt,{signals:[xt]})}catch(zt){(0,Eo.e)(zt,eo.o,Qn=>Qn.statusCode===404)}})}}})(),_e})())})(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 vn;class RtcClientPool{constructor(s){ke(this,vn,null),ke(this,"createClient"),ke(this,"ttlMs"),ke(this,"proxyHandler"),ke(this,"proxyReceivers",new Map),ke(this,"teardownTimeout",null),ke(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)}}vn=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};class CaptureStream{constructor(s){ke(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}})}}function delay(o){return new Promise(s=>setTimeout(s,o))}const isRtcPeer=o=>o!==void 0&&o.capabilities!==void 0&&o.capabilitySet!==void 0;class DataChannel{constructor(s){ke(this,"ready",!1),ke(this,"listeners",[]),ke(this,"openListeners",[]),ke(this,"closeListeners",[]),ke(this,"errorListeners",[]),ke(this,"binaryListeners",[]),ke(this,"error"),ke(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)}}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,lt){this.fn=nt,this.context=rt,this.once=lt||!1}function _e(nt,rt,lt,ut,Ut){if(typeof lt!="function")throw new TypeError("The listener must be a function");var ot=new $(lt,ut||nt,Ut),st=_?_+rt:rt;return nt._events[st]?nt._events[st].fn?nt._events[st]=[nt._events[st],ot]:nt._events[st].push(ot):(nt._events[st]=ot,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,lt;if(this._eventsCount===0)return nt;for(lt in rt=this._events)s.call(rt,lt)&&nt.push(_?lt.slice(1):lt);return Object.getOwnPropertySymbols?nt.concat(Object.getOwnPropertySymbols(rt)):nt},tt.prototype.listeners=function(nt){var rt=_?_+nt:nt,lt=this._events[rt];if(!lt)return[];if(lt.fn)return[lt.fn];for(var ut=0,Ut=lt.length,ot=new Array(Ut);ut{$.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){ke(this,"channel"),ke(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),ke(this,"RESPONSE_SUCCESS_BYTE",0),ke(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")}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}}/*! 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,lt,ut,Ut,ot,st,dt=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,dt++),_[lt*2+1]=Ut,!(lt>j)&&(o.bl_count[Ut]++,ot=0,lt>=tt&&(ot=et[lt-tt]),st=_[lt*2],o.opt_len+=st*(Ut+ot),_e&&(o.static_len+=st*($[lt*2+1]+ot)));if(dt!==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]--,dt-=2}while(dt>0);for(Ut=nt;Ut!==0;Ut--)for(lt=o.bl_count[Ut];lt!==0;)ut=o.heap[--rt],!(ut>j)&&(_[ut*2+1]!==Ut&&(o.opt_len+=(Ut-_[ut*2+1])*_[ut*2],_[ut*2+1]=Ut),lt--)}},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,lt=o.w_mask,ut=o.prev,Ut=o.strstart+MAX_MATCH;let ot=rt[j+et-1],st=rt[j+et];o.prev_length>=o.good_match&&(_>>=2),tt>o.lookahead&&(tt=o.lookahead);do if($=s,!(rt[$+et]!==st||rt[$+et-1]!==ot||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;ot=rt[j+et-1],st=rt[j+et]}}while((s=ut[s<])>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})}`}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),lt=_e.sub(_e.end(nt),_-tt-1),ut=formatTimeFrameText(rt.toLocaleDateString(),lt.toLocaleDateString()),Ut=await queryEvents({...$,eventTypes:o,start:new Date(rt).toISOString(),end:new Date(lt).toISOString()});return{date:ut,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 lt=new Date(nt).toISOString(),ut=rt===_e.length-1?new Date(Date.now()).toISOString():new Date(_e[rt+1]);return getAnnotationCount({...o,start:lt,end:ut},s)}),tt=await Promise.all(et);return _e.map((nt,rt)=>({date:new Date(nt).toISOString(),annotations:tt[rt]}))}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 getRealtimeSessions(){if(!Authentication.token)throw new Error("Not authenticated");const o=defaultRtcClientPool.get();try{return await o.getSessions()}finally{await o.shutdown()}}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 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()}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 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}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}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()}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,lt)=>setTimeout(()=>{et=!0,lt(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(100);const rt=await this.getRemoteDevicePeerId(_e);this.assertNotCancelled(et);let lt;for(let Ut=0;Ut<$&&(lt=await _e.connect(rt),!lt);Ut++)delay(100),this.assertNotCancelled(et);if(!lt)throw new Error(`Session could not be created: exhausted ${$} retries`);let ut=0;for(;!et&&_e.getConnectionStatus(rt)!=="connected";)await delay(100),ut+=1;return this.assertNotCancelled(et),console.debug(`${new Date().toISOString()} :: Connection completed after ${ut} 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(lt=>{console.error("rtcClient cannot shutdown: %o",lt)}),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(){return(await(await fetch(`${FORMANT_API_URL}/v1/admin/command-templates/`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items.map(s=>({name:s.name,id:s.id,command:s.command,description:s.description,parameterEnabled:s.parameterEnabled,parameterValue:s.parameterValue,parameterMeta:s.parameterMeta,enabled:s.enabled,tags:s.tags}))}async sendCommand(s,_,j,$){var _e;const et=(await this.getAvailableCommands()).find(rt=>rt.name===s);if(!et)throw new Error(`Could not find command with name "${s}"`);let tt="";_===void 0?et.parameterEnabled&&et.parameterValue&&(tt=et.parameterValue):tt=_;let nt={value:tt,scrubberTime:(j||new Date).toISOString(),meta:{...et.parameterMeta,...$}};return await fetch(`${FORMANT_API_URL}/v1/admin/commands`,{method:"POST",body:JSON.stringify({commandTemplateId:et.id,organizationId:this.organizationId,deviceId:this.id,command:et.command,parameter:nt,userId:(_e=Authentication.currentUser)==null?void 0:_e.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,_)}}ke(Device,"createDevice",createDevice),ke(Device,"patchDevice",patchDevice),ke(Device,"getDevicesData",getDevicesData),ke(Device,"queryDevicesData",queryDevicesData),ke(Device,"disableDevice",disableDevice);class PeerDevice extends BaseDevice{constructor(s){super(),ke(this,"id"),ke(this,"telemetryStreamActive",!1),ke(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(),lt=[];for(const ut of rt.results){const Ut=parseInt(ut.timestamp),ot=ut.tags.data_type;delete ut.tags.data_type,lt.push({deviceId:this.id,name:ut.stream,points:[[Ut,this.getPointPayload(ot,ut)]],tags:ut.tags,type:ot})}return lt.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,lt=rt.stream;delete rt.stream,this.streamTelemetry[lt]=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(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 Yt=class{static async setDefaultDevice(o){Yt.defaultDeviceId=o}static async getCurrentDevice(){if(!Authentication.token)throw new Error("Not authenticated");if(!Yt.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===Yt.defaultDeviceId),s=o.name,_=new Device(Yt.defaultDeviceId,s,defined$1(Authentication.currentOrganization),o.tags);return Yt.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 Yt.knownContext.push(new WeakRef(s)),s}};let Fleet=Yt;ke(Fleet,"defaultDeviceId"),ke(Fleet,"knownContext",[]),ke(Fleet,"createFleet",createFleet),ke(Fleet,"listFleets",listFleets),ke(Fleet,"getFleet",getFleet),ke(Fleet,"patchFleet",patchFleet),ke(Fleet,"deleteFleet",deleteFleet),ke(Fleet,"addDeviceToFleet",addDeviceToFleet),ke(Fleet,"getFleetDevices",getFleetDevices),ke(Fleet,"aggregateTelemetry",aggregateTelemetry),ke(Fleet,"createShareLink",createShareLink),ke(Fleet,"eventsCounter",eventsCounter),ke(Fleet,"getAnalyticStreams",getAnalyticStreams),ke(Fleet,"getAnalyticsModules",getAnalyticsModules),ke(Fleet,"getAnalyticsRows",getAnalyticsRows),ke(Fleet,"getAnnotationCount",getAnnotationCount),ke(Fleet,"getAnnotationCountByIntervals",getAnnotationCountByIntervals),ke(Fleet,"getCurrentGroup",getCurrentGroup),ke(Fleet,"getDevices",getDevices),ke(Fleet,"getEvent",getEvent),ke(Fleet,"getFileUrl",getFileUrl),ke(Fleet,"getInterventions",getInterventions),ke(Fleet,"getLatestTelemetry",getLatestTelemetry),ke(Fleet,"getOnlineDevices",getOnlineDevices),ke(Fleet,"getPeers",getPeers),ke(Fleet,"getRealtimeDevices",getRealtimeDevices),ke(Fleet,"getRealtimeSessions",getRealtimeSessions),ke(Fleet,"getStreams",getStreams),ke(Fleet,"getTaskReportRows",getTaskReportRows),ke(Fleet,"getTaskReportTables",getTaskReportTables),ke(Fleet,"getTelemetry",getTelemetry),ke(Fleet,"getViews",getViews),ke(Fleet,"patchStream",patchStream),ke(Fleet,"patchView",patchView),ke(Fleet,"queryAnalytics",queryAnalytics),ke(Fleet,"queryDevices",queryDevices),ke(Fleet,"queryEvents",queryEvents),ke(Fleet,"queryTelemetry",queryTelemetry),ke(Fleet,"getAllEventTriggerGroup",getAllEventTriggerGroup),ke(Fleet,"getEventTriggerGroup",getEventTriggerGroup),ke(Fleet,"patchEventTriggergroup",patchEventTriggerGroup);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{}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=function(){return this?this:typeof window<"u"?window:typeof j<"u"?j:typeof self<"u"?self:Function("return this")()}.call(null),$=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="dmFyIFI9T2JqZWN0LmRlZmluZVByb3BlcnR5O3ZhciBHPShNLGIseCk9PmIgaW4gTT9SKE0sYix7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6eH0pOk1bYl09eDt2YXIgST0oTSxiLHgpPT4oRyhNLHR5cGVvZiBiIT0ic3ltYm9sIj9iKyIiOmIseCkseCk7KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IFM9e21pbGxpc2Vjb25kOjEsc2Vjb25kOjFlMyxtaW51dGU6NmU0LGhvdXI6MzZlNSxkYXk6ODY0ZTUsd2Vlazo2MDQ4ZTUsbW9udGg6MjU5MmU2LHllYXI6MzE1MzZlNn07ZnVuY3Rpb24gcShvKXt9Y2xhc3MgX3tjb25zdHJ1Y3Rvcih7Y2FwYWNpdHk6dCx0aW1lb3V0Om59PXt9KXtJKHRoaXMsImVudHJpZXMiLG5ldyBNYXApO0kodGhpcywibWV0YWRhdGEiLG5ldyBNYXApO0kodGhpcywiY2FwYWNpdHkiKTtJKHRoaXMsInRpbWVvdXQiKTt0aGlzLmNhcGFjaXR5PXR8fDFlNCx0aGlzLnRpbWVvdXQ9bnx8Uy5taW51dGV9Z2V0KHQsbil7Y29uc3QgZT10aGlzLmtleVRvQ2FjaGVLZXkodCksYz10aGlzLmVudHJpZXMuZ2V0KGUpLGk9dGhpcy5tZXRhZGF0YS5nZXQoZSk7cmV0dXJuKGM9PT12b2lkIDB8fGkmJihpPT1udWxsP3ZvaWQgMDppLmV4cGlyYXRpb24uZ2V0VGltZSgpKTxEYXRlLm5vdygpKSYmIShpIT1udWxsJiZpLmdlbmVyYXRpbmcpJiZuJiZ0aGlzLmdlbmVyYXRlKHQsbigpKSxjPT09dm9pZCAwJiZpJiZpLmxhc3RWYWx1ZSE9PXZvaWQgMD9pLmxhc3RWYWx1ZTpjfXNldCh0LG4pe2NvbnN0IGU9dGhpcy5rZXlUb0NhY2hlS2V5KHQpO3RoaXMubWV0YWRhdGEuc2V0KGUse2dlbmVyYXRpbmc6ITEsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCksbGFzdFZhbHVlOm59KSx0aGlzLmVudHJpZXMuc2V0KGUsbiksdGhpcy5tZXRhZGF0YS5zaXplPnRoaXMuY2FwYWNpdHkmJnRoaXMuZGVsZXRlT2xkZXN0RW50cnkoKX1jbGVhcigpe3RoaXMuZW50cmllcy5jbGVhcigpLFsuLi50aGlzLm1ldGFkYXRhLnZhbHVlcygpXS5mb3JFYWNoKHQ9PnQuZ2VuZXJhdGluZz0hMSl9Y2xlYXJLZXkodCl7dGhpcy5tZXRhZGF0YS5kZWxldGUodCksdGhpcy5lbnRyaWVzLmRlbGV0ZSh0KX1rZXlUb0NhY2hlS2V5KHQpe3JldHVybiBKU09OLnN0cmluZ2lmeSh0KX1kZWxldGVPbGRlc3RFbnRyeSgpe2lmKHRoaXMubWV0YWRhdGEuc2l6ZTwxKXJldHVybjtjb25zdFt0XT1bLi4udGhpcy5tZXRhZGF0YS5lbnRyaWVzKCldLnJlZHVjZSgoW24sZV0sW2MsaV0pPT5pLmV4cGlyYXRpb24uZ2V0VGltZSgpPGUuZXhwaXJhdGlvbi5nZXRUaW1lKCk/W2MsaV06W24sZV0pO3RoaXMuY2xlYXJLZXkodCl9Z2VuZXJhdGUodCxuKXtjb25zdCBlPXRoaXMua2V5VG9DYWNoZUtleSh0KSxjPXRoaXMubWV0YWRhdGEuZ2V0KGUpfHx7fTt0aGlzLm1ldGFkYXRhLnNldChlLHsuLi5jLGdlbmVyYXRpbmc6ITAsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCl9KSxzZXRUaW1lb3V0KCgpPT57bi50aGVuKGk9Pntjb25zdCByPXRoaXMubWV0YWRhdGEuZ2V0KGUpOyEociE9bnVsbCYmci5nZW5lcmF0aW5nKXx8dGhpcy5zZXQodCxpKX0pfSwwKX19LyoqCiAqIExaRiBjb21wcmVzc2lvbi9kZWNvbXByZXNzaW9uIG1vZHVsZS4gUG9ydGVkIGZyb20gdGhlIEMKICogaW1wbGVtZW50YXRpb24gb2YgbGlibHpmLCBzcGVjZmljYWxseSBsemZfYy5jIGFuZCBsemZfZC5jCiAqIEBsaWNlbnNlIEJTRC0yLUNsYXVzZQogKi9mdW5jdGlvbiBLKG8pe3ZhciB0PW5ldyBVaW50OEFycmF5KG8pLG49W10sZT0wLGM9MDtkb3t2YXIgaT10W2UrK107aWYoaTwxPDw1KXtpZihpKyssZStpPnQubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBpbnB1dCIpO2Zvcig7aS0tOyluW2MrK109dFtlKytdfWVsc2V7dmFyIHI9aT4+NSxmPWMtKChpJjMxKTw8OCktMTtpZihlPj10Lmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQiKTtpZihyPT03JiYocis9dFtlKytdLGU+PXQubGVuZ3RoKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQiKTtpZihmLT10W2UrK10sZjwwKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBpbnB1dCIpO3IrPTI7ZG8gbltjKytdPW5bZisrXTt3aGlsZSgtLXIpfX13aGlsZShlPHQubGVuZ3RoKTtpZih0eXBlb2YgQnVmZmVyIT0idW5kZWZpbmVkIilyZXR1cm4gbmV3IEJ1ZmZlcihuKTt2YXIgdT1uZXcgVWludDhBcnJheShuLmxlbmd0aCk7cmV0dXJuIHUuc2V0KG4pLHV9ZnVuY3Rpb24gTyhvKXt2YXIgdD0xNixuPTE8PHQsZT0xPDwxMyxjPSgxPDw4KSsoMTw8MyksaT0xPDw1O2Z1bmN0aW9uIHIodixUKXtyZXR1cm4gdltUXTw8OHx2W1QrMV19ZnVuY3Rpb24gZih2LFQsUCl7cmV0dXJuIHY8PDh8VFtQKzJdfWZ1bmN0aW9uIHUodil7cmV0dXJuIHYqNTA2ODMyODI5Pj4zMi10LTgmbi0xfWZvcih2YXIgcz1uZXcgVWludDhBcnJheShvKSxhPVtdLGQ9bmV3IFVpbnQzMkFycmF5KG4pLHk9cy5sZW5ndGgsaD0wLGc9cihzLGgpLHA9MSxsPTA7aDx5LTI7KXtnPWYoZyxvLGgpO3ZhciB6PXUoZyksbT1kW3pdO2Rbel09aDt2YXIgRTtpZihtPGgmJihFPWgtbS0xKTxlJiZtPjAmJnNbbSsyXT09c1toKzJdJiZzW20rMV09PXNbaCsxXSYmc1ttXT09c1toXSl7dmFyIHc9MixGPXktaC13O0Y9Rj5jP2M6RixhW3AtbC0xXT1sLTEmMjU1LGw9PTAmJihwLT0xKTtkbyB3Kys7d2hpbGUodzxGJiZzW20rd109PXNbaCt3XSk7aWYody09MixoKyssdzw3P2FbcCsrXT0oRT4+OCkrKHc8PDUpJjI1NTooYVtwKytdPShFPj44KSsoNzw8NSkmMjU1LGFbcCsrXT13LTcmMjU1KSxhW3ArK109RSYyNTUsbD0wLHArKyxoKz13KzEsaD49eS0yKWJyZWFrOy0taCwtLWgsZz1yKHMsaCksZz1mKGcscyxoKSxkW3UoZyldPWgrKyxnPWYoZyxzLGgpLGRbdShnKV09aCsrfWVsc2UgbCsrLGFbcCsrXT1zW2grK10sbD09aSYmKGFbcC1sLTFdPWwtMSYyNTUsbD0wLHArKyl9Zm9yKDtoPHk7KWwrKyxhW3ArK109c1toKytdLGw9PWkmJihhW3AtbC0xXT1sLTEmMjU1LGw9MCxwKyspO2lmKGwhPTAmJihhW3AtbC0xXT1sLTEmMjU1KSx0eXBlb2YgQnVmZmVyIT0idW5kZWZpbmVkIilyZXR1cm4gbmV3IEJ1ZmZlcihhKTt2YXIgVT1uZXcgVWludDhBcnJheShhLmxlbmd0aCk7cmV0dXJuIFUuc2V0KGEpLFV9dmFyIEI9e2RlY29tcHJlc3M6Syxjb21wcmVzczpPfTtjb25zdCBDPShvLHQpPT50PD1vP1tdOm5ldyBBcnJheSh0LW8pLmZpbGwoMCkubWFwKChuLGUpPT5lK28pLEE9ITA7ZnVuY3Rpb24gSChvKXtjb25zdCB0PWF0b2Iobyksbj10Lmxlbmd0aCxlPW5ldyBVaW50OEFycmF5KG4pO2ZvcihsZXQgYz0wO2M8bjtjKz0xKWVbY109dC5jaGFyQ29kZUF0KGMpO3JldHVybiBlLmJ1ZmZlcn1mdW5jdGlvbiBMKG8pe2NvbnN0IHQ9bmV3IFVpbnQ4QXJyYXkobyk7bGV0IG49IiIsZT0wO2Zvcig7ZTx0Lmxlbmd0aCYmbi5zZWFyY2goL1tcclxuXURBVEFccyhcUyopXHMvaSk9PT0tMTtlKz0xKW4rPVN0cmluZy5mcm9tQ2hhckNvZGUodFtlXSk7cmV0dXJue2JvZHk6by5zbGljZShlKSxoZWFkZXI6bi5yZXBsYWNlKC8jLiovZ2ksIiIpfX1mdW5jdGlvbiBWKG8pe2NvbnN0IG49bmV3IFVpbnQzMkFycmF5KG8sMCwyKVswXTtyZXR1cm4gbj09PTA/bmV3IEFycmF5QnVmZmVyKDApOkIuZGVjb21wcmVzcyhuZXcgVWludDhBcnJheShvLDgsbikpLmJ1ZmZlcn1mdW5jdGlvbiBrKG8pe2NvbnN0e2hlYWRlcjp0LGJvZHk6bn09TChvKSxlPS9WRVJTSU9OICguKikvaS5leGVjKHQpO2lmKGU9PT1udWxsKXRocm93IG5ldyBFcnJvcihgTWlzc2luZyB2ZXJzaW9uLiBIZWFkZXIgJHt0fWApO2NvbnN0IGM9ZVsxXSxpPS9GSUVMRFMgKC4qKS9pLmV4ZWModCk7aWYoIWkpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIGZpZWxkcyIpO2NvbnN0IHI9aVsxXS5zcGxpdCgiICIpLGY9L1NJWkUgKC4qKS9pLmV4ZWModCk7aWYoIWYpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIHNpemUiKTtjb25zdCB1PWZbMV0uc3BsaXQoIiAiKS5tYXAodj0+cGFyc2VJbnQodiwxMCkpLHM9L1RZUEUgKC4qKS9pLmV4ZWModCk7aWYoIXMpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIHR5cGUiKTtjb25zdCBhPXNbMV0uc3BsaXQoIiAiKSxkPS9DT1VOVCAoLiopL2kuZXhlYyh0KTtsZXQgeTtkJiYoeT1kWzFdLnNwbGl0KCIgIikubWFwKHY9PnBhcnNlSW50KHYsMTApKSk7Y29uc3QgaD15fHxyLm1hcCh2PT4xKSxnPS9XSURUSCAoLiopL2kuZXhlYyh0KTtpZighZyl0aHJvdyBuZXcgRXJyb3IoIk1pc3Npbmcgd2lkdGgiKTtjb25zdCBwPXBhcnNlSW50KGdbMV0sMTApLGw9L0hFSUdIVCAoLiopL2kuZXhlYyh0KTtpZighbCl0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgaGVpZ2h0Iik7Y29uc3Qgej1wYXJzZUludChsWzFdLDEwKSxtPS9QT0lOVFMgKC4qKS9pLmV4ZWModCk7bGV0IEU7bSYmKEU9cGFyc2VJbnQobVsxXSwxMCkpO2NvbnN0IHc9RXx8cCp6LEY9L0RBVEEgKC4qKS9pLmV4ZWModCk7aWYoIUYpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIGRhdGEiKTtjb25zdCBVPUZbMV07cmV0dXJue2JvZHk6bixoZWFkZXI6e2NvdW50OmgsZGF0YTpVLGZpZWxkczpyLGhlaWdodDp6LHBvaW50czp3LHNpemU6dSx0eXBlOmEsdmVyc2lvbjpjLHdpZHRoOnB9fX1mdW5jdGlvbiBOKG8pe2NvbnN0IHQ9e307cmV0dXJuIG8uZmllbGRzLnJlZHVjZSgoe29mZnNldHM6bixzaXplOmV9LGMsaSk9PntsZXQgcj1lO3JldHVybiBjPT09IngiJiYobi54PXIpLGM9PT0ieSImJihuLnk9ciksYz09PSJ6IiYmKG4uej1yKSxjPT09InJnYiImJihuLnJnYj1yKSxjPT09InJnYmEiJiYobi5yZ2JhPXIpLGM9PT0iaW50ZW5zaXR5IiYmKG4uaW50ZW5zaXR5PXIpLG8uZGF0YT09PSJhc2NpaSI/cis9MTpvLmRhdGE9PT0iYmluYXJ5Ij9yKz1vLnNpemVbaV0qby5jb3VudFtpXTpvLmRhdGE9PT0iYmluYXJ5X2NvbXByZXNzZWQiJiYocis9by5zaXplW2ldKm8uY291bnRbaV0qby5wb2ludHMpLHtvZmZzZXRzOm4sc2l6ZTpyfX0se29mZnNldHM6dCxzaXplOjB9KX1mdW5jdGlvbiBEKG8pe2NvbnN0e2hlYWRlcjp0LGJvZHk6bn09ayhvKSx7b2Zmc2V0czplLHNpemU6Y309Tih0KTtsZXQgaTtlLnghPT12b2lkIDAmJmUueSE9PXZvaWQgMCYmZS56IT09dm9pZCAwJiYoaT1uZXcgRmxvYXQzMkFycmF5KHQucG9pbnRzKjMpKTtsZXQgcjsoZS5yZ2IhPT12b2lkIDB8fGUucmdiYSE9PXZvaWQgMCkmJihyPW5ldyBGbG9hdDMyQXJyYXkodC5wb2ludHMqNCkpO2xldCBmO2lmKGUuaW50ZW5zaXR5IT09dm9pZCAwJiYoZj1uZXcgRmxvYXQzMkFycmF5KHQucG9pbnRzKSksdC5kYXRhPT09ImFzY2lpIilTdHJpbmcuZnJvbUNoYXJDb2RlKC4uLm5ldyBVaW50OEFycmF5KG4pKS5zcGxpdChgCmApLmZvckVhY2goKGEsZCk9Pntjb25zdCB5PWEuc3BsaXQoIiAiKTtpZihpIT09dm9pZCAwJiYoaVtkKjMrMF09cGFyc2VGbG9hdCh5W2UueHx8MF0pLGlbZCozKzFdPXBhcnNlRmxvYXQoeVtlLnl8fDBdKSxpW2QqMysyXT1wYXJzZUZsb2F0KHlbZS56fHwwXSkpLHIhPT12b2lkIDApe2NvbnN0IGg9bmV3IEludDMyQXJyYXkoW3BhcnNlSW50KHlbZS5yZ2J8fGUucmdiYXx8MF0sMTApXSksZz1uZXcgRGF0YVZpZXcoaC5idWZmZXIsMCk7cltkKjMrMF09Zy5nZXRVaW50OCgyKS8yNTUscltkKjMrMV09Zy5nZXRVaW50OCgxKS8yNTUscltkKjMrMl09Zy5nZXRVaW50OCgwKS8yNTV9ZiE9PXZvaWQgMCYmKGZbZF09cGFyc2VGbG9hdCh5W2UuaW50ZW5zaXR5fHwwXSkpfSk7ZWxzZSBpZih0LmRhdGE9PT0iYmluYXJ5Iil7Y29uc3QgdT1uZXcgRGF0YVZpZXcobik7QygwLHQucG9pbnRzKS5mb3JFYWNoKHM9Pntjb25zdCBhPWMqcztpZihpIT09dm9pZCAwJiYoaVtzKjMrMF09dS5nZXRGbG9hdDMyKGErKGUueHx8MCksQSksaVtzKjMrMV09dS5nZXRGbG9hdDMyKGErKGUueXx8MCksQSksaVtzKjMrMl09dS5nZXRGbG9hdDMyKGErKGUuenx8MCksQSkpLHIhPT12b2lkIDApe2NvbnN0IGQ9YSsoZS5yZ2J8fGUucmdiYXx8MCk7ZCsyPD11LmJ5dGVMZW5ndGgmJihyW3MqNCswXT11LmdldFVpbnQ4KGQrMikvMjU1LHJbcyo0KzFdPXUuZ2V0VWludDgoZCsxKS8yNTUscltzKjQrMl09dS5nZXRVaW50OChkKzApLzI1NSxyW3MqNCszXT0xKX1mIT09dm9pZCAwJiYoZltzXT11LmdldEZsb2F0MzIoYSsoZS5pbnRlbnNpdHl8fDApLEEpKX0pfWVsc2UgaWYodC5kYXRhPT09ImJpbmFyeV9jb21wcmVzc2VkIil7Y29uc3QgdT1WKG4pLHM9bmV3IERhdGFWaWV3KHUpO0MoMCx0LnBvaW50cykuZm9yRWFjaChhPT57aWYoaSE9PXZvaWQgMCYmKGlbYSozKzBdPXMuZ2V0RmxvYXQzMigoZS54fHwwKSthKjQsQSksaVthKjMrMV09cy5nZXRGbG9hdDMyKChlLnl8fDApK2EqNCxBKSxpW2EqMysyXT1zLmdldEZsb2F0MzIoKGUuenx8MCkrYSo0LEEpKSxyIT09dm9pZCAwKXtjb25zdCBkPShlLnJnYnx8ZS5yZ2JhfHwwKSthKjQ7ZCsyPD1zLmJ5dGVMZW5ndGgmJihyW2EqNCswXT1zLmdldFVpbnQ4KGQrMikvMjU1LHJbYSo0KzFdPXMuZ2V0VWludDgoZCsxKS8yNTUsclthKjQrMl09cy5nZXRVaW50OChkKzApLzI1NSxyW2EqNCszXT0xKX1mIT09dm9pZCAwJiYoZlthXT1zLmdldEZsb2F0MzIoKGUuaW50ZW5zaXR5fHwwKSthKjQsQSkpfSl9cmV0dXJue2NvbG9yczpyLGhlYWRlcjp0LGludGVuc2l0eTpmLHBvc2l0aW9uczppfX1mdW5jdGlvbiBYKG8pe3JldHVybiBEKEgobykpfWNvbnN0IFo9bmV3IF8oe2NhcGFjaXR5OjFlMyx0aW1lb3V0OjEqUy5taW51dGV9KTtvbm1lc3NhZ2U9YXN5bmMgbz0+e2NvbnN0e3VybDp0LGlkOm4scG9pbnRDbG91ZDplfT1vLmRhdGE7aWYodCl7Y29uc3QgYz1aLmdldCh0LGFzeW5jKCk9PkQoYXdhaXQgZmV0Y2godCx7bW9kZToiY29ycyJ9KS50aGVuKHI9PnIuYXJyYXlCdWZmZXIoKSkpKTtjJiZwb3N0TWVzc2FnZSh7dXJsOnQscGNkOmN9KX1pZihuJiZlKXtjb25zdCBjPVgoZSk7cG9zdE1lc3NhZ2Uoe2lkOm4scGNkOmN9KX19fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9UGNkTG9hZGVyV29ya2VyLWVhYWMwYjMxLmpzLm1hcAo=";typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs$2)],{type:"text/javascript;charset=utf-8"});const encodedJs$1="dmFyIGw9T2JqZWN0LmRlZmluZVByb3BlcnR5O3ZhciBnPShjLG4sbyk9Pm4gaW4gYz9sKGMsbix7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6b30pOmNbbl09bzt2YXIgcj0oYyxuLG8pPT4oZyhjLHR5cGVvZiBuIT0ic3ltYm9sIj9uKyIiOm4sbyksbyk7KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IHU9e21pbGxpc2Vjb25kOjEsc2Vjb25kOjFlMyxtaW51dGU6NmU0LGhvdXI6MzZlNSxkYXk6ODY0ZTUsd2Vlazo2MDQ4ZTUsbW9udGg6MjU5MmU2LHllYXI6MzE1MzZlNn07ZnVuY3Rpb24geChoKXt9Y2xhc3MgbXtjb25zdHJ1Y3Rvcih7Y2FwYWNpdHk6ZSx0aW1lb3V0OnN9PXt9KXtyKHRoaXMsImVudHJpZXMiLG5ldyBNYXApO3IodGhpcywibWV0YWRhdGEiLG5ldyBNYXApO3IodGhpcywiY2FwYWNpdHkiKTtyKHRoaXMsInRpbWVvdXQiKTt0aGlzLmNhcGFjaXR5PWV8fDFlNCx0aGlzLnRpbWVvdXQ9c3x8dS5taW51dGV9Z2V0KGUscyl7Y29uc3QgYT10aGlzLmtleVRvQ2FjaGVLZXkoZSksaT10aGlzLmVudHJpZXMuZ2V0KGEpLHQ9dGhpcy5tZXRhZGF0YS5nZXQoYSk7cmV0dXJuKGk9PT12b2lkIDB8fHQmJih0PT1udWxsP3ZvaWQgMDp0LmV4cGlyYXRpb24uZ2V0VGltZSgpKTxEYXRlLm5vdygpKSYmISh0IT1udWxsJiZ0LmdlbmVyYXRpbmcpJiZzJiZ0aGlzLmdlbmVyYXRlKGUscygpKSxpPT09dm9pZCAwJiZ0JiZ0Lmxhc3RWYWx1ZSE9PXZvaWQgMD90Lmxhc3RWYWx1ZTppfXNldChlLHMpe2NvbnN0IGE9dGhpcy5rZXlUb0NhY2hlS2V5KGUpO3RoaXMubWV0YWRhdGEuc2V0KGEse2dlbmVyYXRpbmc6ITEsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCksbGFzdFZhbHVlOnN9KSx0aGlzLmVudHJpZXMuc2V0KGEscyksdGhpcy5tZXRhZGF0YS5zaXplPnRoaXMuY2FwYWNpdHkmJnRoaXMuZGVsZXRlT2xkZXN0RW50cnkoKX1jbGVhcigpe3RoaXMuZW50cmllcy5jbGVhcigpLFsuLi50aGlzLm1ldGFkYXRhLnZhbHVlcygpXS5mb3JFYWNoKGU9PmUuZ2VuZXJhdGluZz0hMSl9Y2xlYXJLZXkoZSl7dGhpcy5tZXRhZGF0YS5kZWxldGUoZSksdGhpcy5lbnRyaWVzLmRlbGV0ZShlKX1rZXlUb0NhY2hlS2V5KGUpe3JldHVybiBKU09OLnN0cmluZ2lmeShlKX1kZWxldGVPbGRlc3RFbnRyeSgpe2lmKHRoaXMubWV0YWRhdGEuc2l6ZTwxKXJldHVybjtjb25zdFtlXT1bLi4udGhpcy5tZXRhZGF0YS5lbnRyaWVzKCldLnJlZHVjZSgoW3MsYV0sW2ksdF0pPT50LmV4cGlyYXRpb24uZ2V0VGltZSgpPGEuZXhwaXJhdGlvbi5nZXRUaW1lKCk/W2ksdF06W3MsYV0pO3RoaXMuY2xlYXJLZXkoZSl9Z2VuZXJhdGUoZSxzKXtjb25zdCBhPXRoaXMua2V5VG9DYWNoZUtleShlKSxpPXRoaXMubWV0YWRhdGEuZ2V0KGEpfHx7fTt0aGlzLm1ldGFkYXRhLnNldChhLHsuLi5pLGdlbmVyYXRpbmc6ITAsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCl9KSxzZXRUaW1lb3V0KCgpPT57cy50aGVuKHQ9Pntjb25zdCBkPXRoaXMubWV0YWRhdGEuZ2V0KGEpOyEoZCE9bnVsbCYmZC5nZW5lcmF0aW5nKXx8dGhpcy5zZXQoZSx0KX0pfSwwKX19Y29uc3QgeT1uZXcgbSh7Y2FwYWNpdHk6MWUzLHRpbWVvdXQ6MSp1Lm1pbnV0ZX0pO29ubWVzc2FnZT1hc3luYyBoPT57Y29uc3R7dXJsOmV9PWguZGF0YTtpZihlKXtjb25zdCBzPXkuZ2V0KGUsYXN5bmMoKT0+YXdhaXQgZmV0Y2goZSx7bW9kZToiY29ycyJ9KS50aGVuKGk9PmkuanNvbigpKSk7cyYmcG9zdE1lc3NhZ2Uoe3VybDplLHJlc3BvbnNlOnN9KX19fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9RGF0YUZldGNoV29ya2VyLTBhMTY4OTMzLmpzLm1hcAo=";typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs$1)],{type:"text/javascript;charset=utf-8"});const encodedJs$3="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiOyhmdW5jdGlvbihTKXt0eXBlb2YgZGVmaW5lPT0iZnVuY3Rpb24iJiZkZWZpbmUuYW1kP2RlZmluZShTKTpTKCl9KShmdW5jdGlvbigpe2NvbnN0IEo9e21pbGxpc2Vjb25kOjEsc2Vjb25kOjFlMyxtaW51dGU6NmU0LGhvdXI6MzZlNSxkYXk6ODY0ZTUsd2Vlazo2MDQ4ZTUsbW9udGg6MjU5MmU2LHllYXI6MzE1MzZlNn07dmFyIHk9e30sRj17fSxhPXt9O09iamVjdC5kZWZpbmVQcm9wZXJ0eShhLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTtjb25zdCBHPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPSI7ZnVuY3Rpb24gaChBKXtsZXQgST1BLmxlbmd0aDtBW0EubGVuZ3RoLTJdPT09Ij0iP0ktPTI6QVtBLmxlbmd0aC0xXT09PSI9IiYmSS0tO2NvbnN0IGc9SS80KjN8MCxCPW5ldyBVaW50OEFycmF5KGcpO2ZvcihsZXQgUT0wLEM9MDtRPGc7USs9Myl7Y29uc3QgRD1HLmluZGV4T2YoQVtDKytdKSxFPUcuaW5kZXhPZihBW0MrK10pO2lmKEJbUV09RDw8MnxFPj40LEM9PT1JKWJyZWFrO2NvbnN0IHc9Ry5pbmRleE9mKEFbQysrXXx8Ij0iKTtpZihCW1ErMV09KEUmMTUpPDw0fHc+PjIsQz09PUkpYnJlYWs7Y29uc3Qgbz1HLmluZGV4T2YoQVtDKytdfHwiPSIpO0JbUSsyXT0odyYzKTw8NnxvfXJldHVybiBCfWEuZGVjb2RlPWgsT2JqZWN0LmRlZmluZVByb3BlcnR5KEYsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO2NvbnN0IEw9IkFHRnpiUUVBQUFBQmx3RVRZQUovZndGL1lBUi9mMzkvQVg5Z0FuOS9BR0FEZjM5L0FYOWdBWDhBWUFsL2YzOS9mMzkvZjM4QVlBRi9BWDlnQkg5L2YzOEFZQVovZjM5L2YzOEJmMkFJZjM5L2YzOS9mMzhBWUFOL2YzOEFZQVYvZjM5L2Z3Ri9ZQUFBWUFWL2YzOS9md0JnQm45L2YzOS9md0JnQ245L2YzOS9mMzkvZjM4QVlBQUJmMkFIZjM5L2YzOS9md0YvWUFoL2YzOS9mMzkvZndGL0FqQURCR2d5TmpRR2JXVnRZM0I1QUFNRWFESTJOQVp5WlhOcGVtVUFCZ1JvTWpZMEJtMWxiVzl5ZVFJQmdBS0FnQUlEWTJJQUFBUUFBUU1LQVFZQUJRTUZCZ2NBQndZQUF3NERCd2NGQWdBQ0F3UUFCUVVGQlFvRUFnUUpBUWNBQXdZR0FnSUJCZ1FEQWdJQkN3RUJBd01MRFFJQkFBQUNDUWtKRHdJRkJRQUJDZ0FTQ3hFSUNBY0lDQWNFQVFRSUNBWUJFQWdBQVFZSkFYOEJRYkRFd0FJTEJ5WUVCbTFoYkd4dll3QUtDV2d5TmpSaGJHeHZZd0JnQm1SbFkyOWtaUUJoQkdsdWFYUUFZZ3IycFFWaXdBSUJBbjhnQUJBUElnSkJmMHdFUUNBQVFRRVFDeG9nQVVFQU5nSUFRUUFQQ3dKQUFrQWdBa0dBZ0lDQUJFOEVRQ0FBUVFNUUMwRi9SZ1JBUVFFUEN5QUJJQUpCSFhaQkFYRkJBV28yQWdBTUFRc2dBa0dBZ0lDQUFrOEVRQ0FBUVFVUUMwRi9SZ1JBUVFFUEN5QUJJQUpCRzNaQkEzRkJBMm8yQWdBTUFRc2dBa0dBZ0lDQUFVOEVRQ0FBUVFjUUMwRi9SZ1JBUVFFUEN5QUJJQUpCR1haQkIzRkJCMm8yQWdBTUFRc2dBaEF2SWdOQkJHb2lBa0VnUmdSQUlBRkJBRFlDQUNBQVFTQVFDeHBCQVNFQ0lBQkJBUkFEUVFGSERRSWdBQkFQSVFNZ0FFRWdFQXRCZjBZTkFpQURRUUZMRFFJZ0EwRUJhd1JBSUFGQmZ6WUNBQXdDQ3lBQlFYODJBZ0JCQVE4TElBQWdBMEVGYWhBTEdpQUFJQUlRQXlJQVFYOUdCRUJCQVE4TElBRWdBRUYvSUFKMFFYOXphallDQUF0QkFDRUNDeUFDQzRnQ0FRZC9JQUFvQWdRaEJBSkFJQUFvQWd4QkEzUWlCeUFBS0FJUUlnaHJJZ0pCSUU0RVFDQUVLQUFBSWdOQkdIUWdBMEVJZEVHQWdQd0hjWElnQTBFSWRrR0EvZ054SUFOQkdIWnljaUVESUFBb0FnZ2lBa1VOQVNBRElBSjBJQVF0QUFSQkNDQUNhM1p5SVFNTUFRc2dBa0VCU0FSQURBRUxJQVF0QUFBZ0FDZ0NDQ0lGUVJocUlnWjBJUU1nQWlBRmFrRjRhaUlDUVFGSURRQURRQ0FFTFFBQklBWkJlR29pQm5RZ0EzSWhBeUFDUVFoS0lRVWdCRUVCYWlFRUlBSkJlR29oQWlBRkRRQUxDeUFBSUFFZ0NHb2lCRFlDRUNBQUlBUkJCM0UyQWdoQmZ5RUNJQVFnQjAwRWZ5QUFJQUFvQWdBZ0JFRURkbW8yQWdRZ0EwRWdJQUZyZGdWQmZ3c0xxZzBCQjM4Q1FDQUFSUTBBSUFCQmVHb2lBeUFBUVh4cUtBSUFJZ0ZCZUhFaUFHb2hCUUpBSUFGQkFYRU5BQ0FCUVFOeFJRMEJJQU1nQXlnQ0FDSUNheUlEUWNUQUFDZ0NBQ0lFU1EwQklBQWdBbW9oQUNBRFFjakFBQ2dDQUVjRVFDQUNRZjhCVFFSQUlBTW9BZ2dpQkNBQ1FRTjJJZ0pCQTNSQjNNQUFha2NhSUFRZ0F5Z0NEQ0lCUmdSQVFiVEFBRUcwd0FBb0FnQkJmaUFDZDNFMkFnQU1Bd3NnQkNBQk5nSU1JQUVnQkRZQ0NBd0NDeUFES0FJWUlRWUNRQ0FESUFNb0Fnd2lBVWNFUUNBRUlBTW9BZ2dpQWswRVFDQUNLQUlNR2dzZ0FpQUJOZ0lNSUFFZ0FqWUNDQXdCQ3dKQUlBTkJGR29pQWlnQ0FDSUVEUUFnQTBFUWFpSUNLQUlBSWdRTkFFRUFJUUVNQVFzRFFDQUNJUWNnQkNJQlFSUnFJZ0lvQWdBaUJBMEFJQUZCRUdvaEFpQUJLQUlRSWdRTkFBc2dCMEVBTmdJQUN5QUdSUTBCQWtBZ0F5QURLQUljSWdKQkFuUkI1TUlBYWlJRUtBSUFSZ1JBSUFRZ0FUWUNBQ0FCRFFGQnVNQUFRYmpBQUNnQ0FFRitJQUozY1RZQ0FBd0RDeUFHUVJCQkZDQUdLQUlRSUFOR0cyb2dBVFlDQUNBQlJRMENDeUFCSUFZMkFoZ2dBeWdDRUNJQ0JFQWdBU0FDTmdJUUlBSWdBVFlDR0FzZ0F5Z0NGQ0lDUlEwQklBRWdBallDRkNBQ0lBRTJBaGdNQVFzZ0JTZ0NCQ0lCUVFOeFFRTkhEUUJCdk1BQUlBQTJBZ0FnQlNBQlFYNXhOZ0lFSUFNZ0FFRUJjallDQkNBQUlBTnFJQUEyQWdBUEN5QUZJQU5ORFFBZ0JTZ0NCQ0lCUVFGeFJRMEFBa0FnQVVFQ2NVVUVRQ0FGUWN6QUFDZ0NBRVlFUUVITXdBQWdBellDQUVIQXdBQkJ3TUFBS0FJQUlBQnFJZ0EyQWdBZ0F5QUFRUUZ5TmdJRUlBTkJ5TUFBS0FJQVJ3MERRYnpBQUVFQU5nSUFRY2pBQUVFQU5nSUFEd3NnQlVISXdBQW9BZ0JHQkVCQnlNQUFJQU0yQWdCQnZNQUFRYnpBQUNnQ0FDQUFhaUlBTmdJQUlBTWdBRUVCY2pZQ0JDQUFJQU5xSUFBMkFnQVBDeUFCUVhoeElBQnFJUUFDUUNBQlFmOEJUUVJBSUFVb0Fnd2hBaUFGS0FJSUlnUWdBVUVEZGlJQlFRTjBRZHpBQUdvaUIwY0VRRUhFd0FBb0FnQWFDeUFDSUFSR0JFQkJ0TUFBUWJUQUFDZ0NBRUYrSUFGM2NUWUNBQXdDQ3lBQ0lBZEhCRUJCeE1BQUtBSUFHZ3NnQkNBQ05nSU1JQUlnQkRZQ0NBd0JDeUFGS0FJWUlRWUNRQ0FGSUFVb0Fnd2lBVWNFUUVIRXdBQW9BZ0FnQlNnQ0NDSUNUUVJBSUFJb0Fnd2FDeUFDSUFFMkFnd2dBU0FDTmdJSURBRUxBa0FnQlVFVWFpSUNLQUlBSWdRTkFDQUZRUkJxSWdJb0FnQWlCQTBBUVFBaEFRd0JDd05BSUFJaEJ5QUVJZ0ZCRkdvaUFpZ0NBQ0lFRFFBZ0FVRVFhaUVDSUFFb0FoQWlCQTBBQ3lBSFFRQTJBZ0FMSUFaRkRRQUNRQ0FGSUFVb0Fod2lBa0VDZEVIa3dnQnFJZ1FvQWdCR0JFQWdCQ0FCTmdJQUlBRU5BVUc0d0FCQnVNQUFLQUlBUVg0Z0FuZHhOZ0lBREFJTElBWkJFRUVVSUFZb0FoQWdCVVliYWlBQk5nSUFJQUZGRFFFTElBRWdCallDR0NBRktBSVFJZ0lFUUNBQklBSTJBaEFnQWlBQk5nSVlDeUFGS0FJVUlnSkZEUUFnQVNBQ05nSVVJQUlnQVRZQ0dBc2dBeUFBUVFGeU5nSUVJQUFnQTJvZ0FEWUNBQ0FEUWNqQUFDZ0NBRWNOQVVHOHdBQWdBRFlDQUE4TElBVWdBVUYrY1RZQ0JDQURJQUJCQVhJMkFnUWdBQ0FEYWlBQU5nSUFDeUFBUWY4QlRRUkFJQUJCQTNZaUFVRURkRUhjd0FCcUlRQUNmMEcwd0FBb0FnQWlBa0VCSUFGMElnRnhSUVJBUWJUQUFDQUJJQUp5TmdJQUlBQU1BUXNnQUNnQ0NBc2hBaUFBSUFNMkFnZ2dBaUFETmdJTUlBTWdBRFlDRENBRElBSTJBZ2dQQ3lBRFFnQTNBaEFnQXdKL1FRQWdBRUVJZGlJQlJRMEFHa0VmSUFCQi8vLy9CMHNOQUJvZ0FTQUJRWUQrUDJwQkVIWkJDSEVpQVhRaUFpQUNRWURnSDJwQkVIWkJCSEVpQW5RaUJDQUVRWUNBRDJwQkVIWkJBbkVpQkhSQkQzWWdBU0FDY2lBRWNtc2lBVUVCZENBQUlBRkJGV3AyUVFGeGNrRWNhZ3NpQWpZQ0hDQUNRUUowUWVUQ0FHb2hBUUpBQWtBQ1FFRzR3QUFvQWdBaUJFRUJJQUowSWdkeFJRUkFRYmpBQUNBRUlBZHlOZ0lBSUFFZ0F6WUNBQ0FESUFFMkFoZ01BUXNnQUVFQVFSa2dBa0VCZG1zZ0FrRWZSaHQwSVFJZ0FTZ0NBQ0VCQTBBZ0FTSUVLQUlFUVhoeElBQkdEUUlnQWtFZGRpRUJJQUpCQVhRaEFpQUVJQUZCQkhGcUlnZEJFR29vQWdBaUFRMEFDeUFISUFNMkFoQWdBeUFFTmdJWUN5QURJQU0yQWd3Z0F5QUROZ0lJREFFTElBUW9BZ2dpQUNBRE5nSU1JQVFnQXpZQ0NDQURRUUEyQWhnZ0F5QUVOZ0lNSUFNZ0FEWUNDQXRCMU1BQVFkVEFBQ2dDQUVGL2FpSUFOZ0lBSUFBTkFFSDh3d0FoQXdOQUlBTW9BZ0FpQUVFSWFpRURJQUFOQUF0QjFNQUFRWDgyQWdBTEMzUUJBbjhqQUVFUWF5SUNKQUFnQWtFQU5nSU1JQUFnQWtFTWFoQUNJUUFDZnlBQ0tBSU1JZ05CZjBZRVFFRUJJQUJGRFFFYUlBRkJnSUNBZ0hnMkFnQkJBQXdCQzBFQklBQU5BQm9nQVNBRFFRRnFRUUYySWdGQkFDQUJheUFEUVFGeEd6WUNBRUVBQ3lFQUlBSkJFR29rQUNBQUM4Y0xBUlIvSUFGQm9EMXFMUUFBUVF4c0lnWkIxRHhxS0FJQUlRVWdCa0hRUEdvb0FnQWdBVUdRUEdvdEFBQWlCM1FoQkNBQ1JRUkFJQUFnQUNnQ0FDQUViRFlDQUFzZ0JTQUhkQ0VCQWtBQ1FDQURRWnovQTNFRVFDQUFJQVpCMkR4cUtBSUFJQWQwSWdNZ0FDZ0NQR3cyQWp3Z0FDQUFLQUk0SUFGc05nSTRRUUVoQWlBQUlBQW9BaXdnQkd3aUJ5QUFLQUlNSUFSc0lnVnFJZ2tnQUNnQ0lDQUJiQ0lLSUFBb0FqUWdBV3dpRDBFQmRXb2lFR3NpQmpZQ0xDQUFLQUlvSVFnZ0FDQUZJQWRySWdVZ0NrRUJkU0FQYXlJS2F5SUhOZ0lvSUFBb0FpUWhEaUFBSUFVZ0Ntb2lCVFlDSkNBQUlBQW9BaHdnQVd3aUR5QUFLQUlJSUFGc0lndHFJaE1nQUNnQ0VDQURiQ0lSSUFBb0FqQWdBMndpREVFQmRXb2lGV3NpQ2pZQ0hDQUFLQUlZSVEwZ0FDQUxJQTlySWdzZ0VVRUJkU0FNYXlJUmF5SVBOZ0lZSUFBb0FoUWhEQ0FBSUFzZ0VXb2lDellDRkNBQUlBUWdER3dpQkNBQUtBSUFJZ3hxSWhRZ0FDZ0NCQ0FCYkNJU0lBRWdEV3dpRFVFQmRXb2lGbXNpRVRZQ0RDQUFJQXdnQkdzaUJDQVNRUUYxSUExcklnMXJJZ3cyQWdnZ0FDQUVJQTFxSWcwMkFnUWdBQ0FCSUE1c0lnUWdBQ2dDT0NJT2F5SVNJQU1nQ0d3aUNFRUJkU0FBS0FJOEloZHJJZ05ySWdFMkFqZ2dBQ0FESUJKcUlnTTJBalFnQUNBRUlBNXFJZzRnRjBFQmRTQUlhaUlJYXlJRU5nSThJQUFnRkNBV2FpSVVJQWtnRUdvaUVHdEJJR29pRWlBSUlBNXFJZ2tnRXlBVmFpSUlRUUYxSWc1cmFrRUdkU0lUTmdJZ0lBQWdFaUFPSUFscmFrRUdkU0lPTmdJUUlBQWdFQ0FVYWtFZ2FpSVFJQWxCQVhVZ0NHb2lDV3RCQm5VaUNEWUNNQ0FBSUFrZ0VHcEJCblVpQ1RZQ0FDQUpRWUFFYWlBT1FZQUVhbkpCL3dkTERRSWdDRUdBQkdvZ0UwR0FCR3B5UWY4SFN3MENJQUFnQlNBTmFrRWdhaUlKSUFOQkFYVWdDMm9pRUd0QkJuVWlDRFlDTkNBQUlBMGdCV3RCSUdvaUJTQURJQXRCQVhVaUMydHFRUVoxSWcwMkFpUWdBQ0FGSUFzZ0EydHFRUVoxSWdNMkFoUWdBQ0FKSUJCcVFRWjFJZ1UyQWdRZ0JVR0FCR29nQTBHQUJHcHlRZjhIU3cwQ0lBaEJnQVJxSUExQmdBUnFja0gvQjBzTkFpQUFJQWNnREdwQklHb2lBeUFCUVFGMUlBOXFJZ1ZyUVFaMUlnczJBamdnQUNBTUlBZHJRU0JxSWdjZ0FTQVBRUUYxSWc5cmFrRUdkU0lNTmdJb0lBQWdCeUFQSUFGcmFrRUdkU0lCTmdJWUlBQWdBeUFGYWtFR2RTSUROZ0lJSUFOQmdBUnFJQUZCZ0FScWNrSC9CMHNOQWlBTFFZQUVhaUFNUVlBRWFuSkIvd2RMRFFJZ0FDQUdJQkZxUVNCcUlnRWdCRUVCZFNBS2FpSURhMEVHZFNJSE5nSThJQUFnRVNBR2EwRWdhaUlHSUFRZ0NrRUJkU0lGYTJwQkJuVWlDallDTENBQUlBWWdCU0FFYTJwQkJuVWlCRFlDSENBQUlBRWdBMnBCQm5VaUFEWUNEQ0FBUVlBRWFpQUVRWUFFYW5KQi93ZExEUUlnQjBHQUJHb2dDa0dBQkdweVFmOEhUUTBCREFJTElBTkI0Z0J4UlFSQVFRRWhBaUFBS0FJQVFTQnFRUVoxSWdGQmdBUnFRZjhIU3cwQ0lBQWdBVFlDT0NBQUlBRTJBandnQUNBQk5nSTBJQUFnQVRZQ01DQUFJQUUyQWl3Z0FDQUJOZ0lvSUFBZ0FUWUNKQ0FBSUFFMkFpQWdBQ0FCTmdJY0lBQWdBVFlDR0NBQUlBRTJBaFFnQUNBQk5nSVFJQUFnQVRZQ0RDQUFJQUUyQWdnZ0FDQUJOZ0lFSUFBZ0FUWUNBQXdCQzBFQklRSWdBQ0FBS0FJRUlBRnNJZ2NnQUNnQ0dDQUJiQ0lHUVFGMWFpSURJQUFvQWdBaUJTQUFLQUlVSUFSc0lnUnFJZ3BxUVNCcVFRWjFJZ0UyQWpBZ0FDQUtJQU5yUVNCcVFRWjFJZ00yQWd3Z0FDQUZJQVJySWdVZ0JpQUhRUUYxSWdkcmFrRWdha0VHZFNJRU5nSUlJQUFnQnlBR2F5QUZha0VnYWtFR2RTSUdOZ0lFSUFBZ0FUWUNBQ0FBSUFFMkFpQWdBQ0FHTmdJMElBQWdBVFlDRUNBQUlBWTJBaVFnQUNBRU5nSTRJQUFnQmpZQ0ZDQUFJQVEyQWlnZ0FDQUROZ0k4SUFBZ0JEWUNHQ0FBSUFNMkFpd2dBQ0FETmdJY0lBTkJnQVJxSUFGQmdBUnFJQVJCZ0FScUlBWkJnQVJxY25KeVFmOEhTdzBCQzBFQUlRSUxJQUlMOHdJQ0FuOEJmZ0pBSUFKRkRRQWdBQ0FDYWlJRFFYOXFJQUU2QUFBZ0FDQUJPZ0FBSUFKQkEwa05BQ0FEUVg1cUlBRTZBQUFnQUNBQk9nQUJJQU5CZldvZ0FUb0FBQ0FBSUFFNkFBSWdBa0VIU1EwQUlBTkJmR29nQVRvQUFDQUFJQUU2QUFNZ0FrRUpTUTBBSUFCQkFDQUFhMEVEY1NJRWFpSURJQUZCL3dGeFFZR0NoQWhzSWdFMkFnQWdBeUFDSUFSclFYeHhJZ1JxSWdKQmZHb2dBVFlDQUNBRVFRbEpEUUFnQXlBQk5nSUlJQU1nQVRZQ0JDQUNRWGhxSUFFMkFnQWdBa0YwYWlBQk5nSUFJQVJCR1VrTkFDQURJQUUyQWhnZ0F5QUJOZ0lVSUFNZ0FUWUNFQ0FESUFFMkFnd2dBa0Z3YWlBQk5nSUFJQUpCYkdvZ0FUWUNBQ0FDUVdocUlBRTJBZ0FnQWtGa2FpQUJOZ0lBSUFRZ0EwRUVjVUVZY2lJRWF5SUNRU0JKRFFBZ0FhMGlCVUlnaGlBRmhDRUZJQU1nQkdvaEFRTkFJQUVnQlRjREdDQUJJQVUzQXhBZ0FTQUZOd01JSUFFZ0JUY0RBQ0FCUVNCcUlRRWdBa0ZnYWlJQ1FSOUxEUUFMQ3lBQUMvSURBUU4vSUFFb0FnQWlBMEgvLy84SFJ3UkFJQUVvQWdRaEJDQUFJQUlnQWtFRGNTQUNRUkJKSWdJYlFRSjBJZ1ZCOENscUtBSUFRUkJCQ0NBQ0d5SUNiR29nQlVHd0tXb29BZ0JxSWdBZ0F5QUFMUUFBYWtHd0xtb3RBQUE2QUFBZ0FTZ0NDQ0VESUFBZ0JDQUFMUUFCYWtHd0xtb3RBQUE2QUFFZ0FTZ0NEQ0VFSUFBZ0F5QUFMUUFDYWtHd0xtb3RBQUE2QUFJZ0FDQUVJQUF0QUFOcVFiQXVhaTBBQURvQUF5QUJLQUlVSVFNZ0FDQUNhaUlBSUFFb0FoQWdBQzBBQUdwQnNDNXFMUUFBT2dBQUlBRW9BaGdoQkNBQUlBTWdBQzBBQVdwQnNDNXFMUUFBT2dBQklBRW9BaHdoQXlBQUlBUWdBQzBBQW1wQnNDNXFMUUFBT2dBQ0lBQWdBeUFBTFFBRGFrR3dMbW90QUFBNkFBTWdBU2dDSkNFRElBQWdBbW9pQUNBQktBSWdJQUF0QUFCcVFiQXVhaTBBQURvQUFDQUJLQUlvSVFRZ0FDQURJQUF0QUFGcVFiQXVhaTBBQURvQUFTQUJLQUlzSVFNZ0FDQUVJQUF0QUFKcVFiQXVhaTBBQURvQUFpQUFJQU1nQUMwQUEycEJzQzVxTFFBQU9nQURJQUVvQWpRaEF5QUFJQUpxSWdBZ0FTZ0NNQ0FBTFFBQWFrR3dMbW90QUFBNkFBQWdBU2dDT0NFQ0lBQWdBeUFBTFFBQmFrR3dMbW90QUFBNkFBRWdBU2dDUENFQklBQWdBaUFBTFFBQ2FrR3dMbW90QUFBNkFBSWdBQ0FCSUFBdEFBTnFRYkF1YWkwQUFEb0FBd3NMMHhBQkRIOGpBRUdBQVdzaUNpUUFJQUFRRHlFRVFRRWhCUUpBQWtBQ2Z5QUNRUUZOQkVBZ0JFRUFTQTBDSUFSQkdYWkIvZ0J4UVlBSWFpQUVRWUNBZ09BQVR3MEJHaUFFUVJWMlFmNFBjVUhBQ0dvZ0JFR0FnSUFJVHcwQkdpQUVRUkYyUWY3L0FYRkJrQWxxSUFSQmdJQ0FBVThOQVJvZ0JFRVFka0VCZEVHUUNtb01BUXNnQWtFRFRRUkFJQVJCZjB3RVFFRUNRYUlRSUFSQmdJQ0FnQVJ4R3lFRkRBTUxJQVJCR1haQi9nQnhRZEFLYWlBRVFZQ0FnSUFCVHcwQkdpQUVRUloyUWY0SGNVR1FDMm9nQkVHQWdJQVFUdzBCR2lBRVFSRjJRZjcvQVhGQjBBdHFEQUVMSUFKQkIwMEVRQ0FFUVJwMklnSkJlR3BCT0VrRVFDQUNRUUYwUWRBTmFnd0NDeUFFUVJWMlFmNFBjVUhRRG1vTUFRc2dCRUVaZGtIK0FIRkIwQkJxSUFKQkVFME5BQm9nQkVFZGRpSUNCRUFnQWtFQmRFSFFFV29NQVFzZ0JFRVhka0grQTNGQjRCRnFDeThCQUNJRkRRQkJBU0VMREFFTFFRRWhDeUFGUVF0Mklna2dBMHNOQUVFZ0lBVkJIM0VpQm1zaEFnSkFJQWxGQkVBTUFRc2dCQ0FHZENFRUFrQWdCVUVGZGtFL2NTSU1SUVJBREFFTElBSWdERWtFUUNBQUlBWVFDMEYvUmcwRElBQVFEeUVFUVNBaEFnc2dCQ0FNZENFR1FRRWdERUYvYW5RaEJ5QUVRU0FnREd0MklRUURRQ0FLUVVCcklBaEJBblJxUVg5QkFTQUVJQWR4R3pZQ0FDQUlRUUZxSVFnZ0IwRUJkaUlIRFFBTElBSWdER3NoQWlBR0lRUUxJQWdnQ1VrRVFDQU1RUU5KSWc4Z0JVSC9yd0ZMY1NFRkEwQWdBa0VQVFFSQUlBQkJJQ0FDYXhBTFFYOUdCRUFNQlFzZ0FCQVBJUVJCSUNFQ0MwRUFJUVlDUUFKQUFuOENRQ0FFUVFCSURRQkJBU0VHSUFSQi8vLy8vd05MRFFCQkFpRUdJQVJCLy8vLy93RkxEUUJCQXlFR0lBUkIvLy8vL3dCTERRQkJCQ0VHSUFSQi8vLy9QMHNOQUVFRklRWWdCRUgvLy84ZlN3MEFRUVloQmlBRVFmLy8vdzlMRFFCQkJ5RUdJQVJCLy8vL0Iwc05BRUVJSVFZZ0JFSC8vLzhEU3cwQVFRa2hCaUFFUWYvLy93RkxEUUJCQ2lFR0lBUkIvLy8vQUVzTkFFRUxJUVlnQkVILy96OUxEUUJCRENFR0lBUkIvLzhmU3cwQVFRMGhCaUFFUWYvL0Qwc05BQUovQWtBZ0JFSC8vd2ROQkVBZ0JFR0FnSHh4UVlDQUJFWU5BUXdLQ3lBRlFRUWdCUnNoQmlBRVFROTBJUVJCRGlFSElBSkJjV29NQVFzZ0JVRUJJQVViSVFVZ0JFRVFkQ0VFUVF3aEJrRVBJUWNnQWtGd2Fnc2hBaUFISUFWMElRY2dCVVVNQVFzZ0JpQUZkQ0VIUVFFaERpQUNJQVpCQVdvaUJtc2hBaUFFSUFaMElRUWdCVVVOQVNBRklRWkJBQXNoRGlBQ0lBWlBCSDhnQkFVZ0FFRWdJQUpyRUF0QmYwWUVRQXdIQzBFZ0lRSWdBQkFQQ3lFTklBSWdCbXNoQWlBTklBWjBJUVFnRFVFZ0lBWnJkaUFIYWlFSERBRUxRUUFoQlFzZ0NrRkFheUFJUVFKMGFrRUFJQWRCQW1vZ0J5QUlJQXhHR3lBSElBOGJJZzFCQW1wQkFYWWlCbXNnQmlBTlFRRnhHellDQUVFQklBVWdEaHNpQlNBRlFRWkpJQVpCQXlBRlFYOXFkRXB4YWlFRklBaEJBV29pQ0NBSlJ3MEFDd3RCQUNFSEFrQWdDU0FEVHdSQVFRQWhDQXdCQ3dKQUlBSkJDRXNFUUNBQ0lRVU1BUXRCSUNFRklBQkJJQ0FDYXhBTFFYOUdEUU1nQUJBUElRUUxBa0FDUUFKL0FrQWdBMEVFUndSQUlBbEJmMm9pQWtFTlN3MERBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQWdBa0VCYXc0TkFBRUNBd1FGQmdjSUNRb0xEQTRMSUFSQkduWkI0QkpxREE0TElBUkJHblpCb0JOcURBMExJQVJCRzNaQjRCTnFEQXdMSUFSQkczWkJnQlJxREFzTElBUkJHblpCb0JScURBb0xJQVJCR25aQjRCUnFEQWtMSUFSQkduWkJvQlZxREFnTElBUkJHblpCNEJWcURBY0xJQVJCRzNaQm9CWnFEQVlMSUFSQkhIWkJ3QlpxREFVTElBUkJISFpCMEJacURBUUxJQVJCSFhaQjRCWnFEQU1MSUFSQkhuWkI2QlpxREFJTElBUkJBRWdFUUVFQklRSU1CQXRCRVNFQ0lBbEJBMFlOQTBFU0lRSWdCRUgvLy8vL0Ewc05BMEVpSVFJZ0NVRUNSZzBEUVNOQk15QUVRZi8vLy84QlN4c2hBZ3dEQ3lBRVFSdDJRYUFTYWlBRVFSZDJRY0FTYWlBRVFmLy8vLzhBU3hzTExRQUFJZ0lOQVF3RUMwRVJRUUVnQkVFQVNCc2hBZ3NnQWtFRWRpRUlJQVVnQWtFUGNTSURheUVDSUFRZ0EzUWhCQXNnQ1VGL2FpSURCRUFEUUFKL0lBZ0VRQ0FDUVFwTkJFQWdBRUVnSUFKckVBdEJmMFlFUUF3SEN5QUFFQThoQkVFZ0lRSUxBa0FDZndKQUlBaEJmMm9pQlVFRlRRUkFBa0FDUUFKQUFrQUNRQ0FGUVFGckRnVUFBUUlEQkFZTElBUkJIblpCN2hacURBWUxJQVJCSG5aQjhoWnFEQVVMSUFSQkhYWkI5aFpxREFRTElBUkJIWFpCL2hacURBTUxJQVJCSFhaQmhoZHFEQUlMQW45Qjh3QWdCRUVaZGtId0FIRnJJQVJCZ0lDQWdBSlBEUUFhUWZRQUlBUkIvLy8vL3dCTERRQWFRWVVCSUFSQi8vLy9QMHNOQUJwQmxnRWdCRUgvLy84ZlN3MEFHa0duQVNBRVFmLy8vdzlMRFFBYVFiZ0JJQVJCLy8vL0Iwc05BQnBCeVFFZ0JFSC8vLzhEU3cwQUdrSGFBU0FFUWYvLy93RkxEUUFhUVFCQjZ3RWdCRUdBZ0lBQlNSc0xJZ1ZCQkhZZ0NFME5BZ3dJQ3lBRVFSOTJRZXdXYWdzdEFBQWhCUXNnQlVVRVFBd0dDeUFLSUFkQkFuUnFJQVZCQkhZaUJrRUJhallDQUNBQ0lBVkJEM0VpQldzaEFpQUVJQVYwSVFRZ0NDQUdhd3dCQ3lBS0lBZEJBblJxUVFFMkFnQkJBQXNoQ0NBSFFRRnFJZ2NnQTBjTkFBc2dBU0FJUVFKMGFpQUtRVUJySUFOQkFuUnFLQUlBTmdJQUlBbEJmbW9oQlVFQklBaDBJUWNEUUNBQklBb2dCU0lEUVFKMElnVnFLQUlBSUFocUlnaEJBblJxSUFwQlFHc2dCV29vQWdBMkFnQWdBMEYvYWlFRlFRRWdDSFFnQjNJaEJ5QUREUUFMREFFTElBRWdDRUVDZEdvZ0NrRkFheUFEUVFKMGFpZ0NBRFlDQUVFQklBaDBJUWNMSUFCQklDQUNheEFMRFFBZ0IwRVFkQ0FKUVFSMGNpRUxDeUFLUVlBQmFpUUFJQXNMelM0QkMzOGpBRUVRYXlJTEpBQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUFCQjlBRk5CRUJCdE1BQUtBSUFJZ1pCRUNBQVFRdHFRWGh4SUFCQkMwa2JJZ1ZCQTNZaUFIWWlBVUVEY1FSQUlBRkJmM05CQVhFZ0FHb2lBa0VEZENJRVFlVEFBR29vQWdBaUFVRUlhaUVBQWtBZ0FTZ0NDQ0lESUFSQjNNQUFhaUlFUmdSQVFiVEFBQ0FHUVg0Z0FuZHhOZ0lBREFFTFFjVEFBQ2dDQUJvZ0F5QUVOZ0lNSUFRZ0F6WUNDQXNnQVNBQ1FRTjBJZ0pCQTNJMkFnUWdBU0FDYWlJQklBRW9BZ1JCQVhJMkFnUU1EQXNnQlVHOHdBQW9BZ0FpQ0UwTkFTQUJCRUFDUUVFQ0lBQjBJZ0pCQUNBQ2EzSWdBU0FBZEhFaUFFRUFJQUJyY1VGL2FpSUFJQUJCREhaQkVIRWlBSFlpQVVFRmRrRUljU0lDSUFCeUlBRWdBbllpQUVFQ2RrRUVjU0lCY2lBQUlBRjJJZ0JCQVhaQkFuRWlBWElnQUNBQmRpSUFRUUYyUVFGeElnRnlJQUFnQVhacUlnSkJBM1FpQTBIa3dBQnFLQUlBSWdFb0FnZ2lBQ0FEUWR6QUFHb2lBMFlFUUVHMHdBQWdCa0YrSUFKM2NTSUdOZ0lBREFFTFFjVEFBQ2dDQUJvZ0FDQUROZ0lNSUFNZ0FEWUNDQXNnQVVFSWFpRUFJQUVnQlVFRGNqWUNCQ0FCSUFWcUlnY2dBa0VEZENJQ0lBVnJJZ05CQVhJMkFnUWdBU0FDYWlBRE5nSUFJQWdFUUNBSVFRTjJJZ1JCQTNSQjNNQUFhaUVCUWNqQUFDZ0NBQ0VDQW44Z0JrRUJJQVIwSWdSeFJRUkFRYlRBQUNBRUlBWnlOZ0lBSUFFTUFRc2dBU2dDQ0FzaEJDQUJJQUkyQWdnZ0JDQUNOZ0lNSUFJZ0FUWUNEQ0FDSUFRMkFnZ0xRY2pBQUNBSE5nSUFRYnpBQUNBRE5nSUFEQXdMUWJqQUFDZ0NBQ0lLUlEwQklBcEJBQ0FLYTNGQmYyb2lBQ0FBUVF4MlFSQnhJZ0IySWdGQkJYWkJDSEVpQWlBQWNpQUJJQUoySWdCQkFuWkJCSEVpQVhJZ0FDQUJkaUlBUVFGMlFRSnhJZ0Z5SUFBZ0FYWWlBRUVCZGtFQmNTSUJjaUFBSUFGMmFrRUNkRUhrd2dCcUtBSUFJZ0VvQWdSQmVIRWdCV3NoQXlBQklRSURRQUpBSUFJb0FoQWlBRVVFUUNBQ0tBSVVJZ0JGRFFFTElBQW9BZ1JCZUhFZ0JXc2lBaUFESUFJZ0Ewa2lBaHNoQXlBQUlBRWdBaHNoQVNBQUlRSU1BUXNMSUFFb0FoZ2hDU0FCSUFFb0Fnd2lCRWNFUUVIRXdBQW9BZ0FnQVNnQ0NDSUFUUVJBSUFBb0Fnd2FDeUFBSUFRMkFnd2dCQ0FBTmdJSURBc0xJQUZCRkdvaUFpZ0NBQ0lBUlFSQUlBRW9BaEFpQUVVTkF5QUJRUkJxSVFJTEEwQWdBaUVISUFBaUJFRVVhaUlDS0FJQUlnQU5BQ0FFUVJCcUlRSWdCQ2dDRUNJQURRQUxJQWRCQURZQ0FBd0tDMEYvSVFVZ0FFRy9mMHNOQUNBQVFRdHFJZ0JCZUhFaEJVRzR3QUFvQWdBaUIwVU5BRUVBSUFWcklRSUNRQUpBQWtBQ2YwRUFJQUJCQ0hZaUFFVU5BQnBCSHlBRlFmLy8vd2RMRFFBYUlBQWdBRUdBL2o5cVFSQjJRUWh4SWdCMElnRWdBVUdBNEI5cVFSQjJRUVJ4SWdGMElnTWdBMEdBZ0E5cVFSQjJRUUp4SWdOMFFROTJJQUFnQVhJZ0EzSnJJZ0JCQVhRZ0JTQUFRUlZxZGtFQmNYSkJIR29MSWdoQkFuUkI1TUlBYWlnQ0FDSURSUVJBUVFBaEFBd0JDeUFGUVFCQkdTQUlRUUYyYXlBSVFSOUdHM1FoQVVFQUlRQURRQUpBSUFNb0FnUkJlSEVnQldzaUJpQUNUdzBBSUFNaEJDQUdJZ0lOQUVFQUlRSWdBeUVBREFNTElBQWdBeWdDRkNJR0lBWWdBeUFCUVIxMlFRUnhhaWdDRUNJRFJoc2dBQ0FHR3lFQUlBRWdBMEVBUjNRaEFTQUREUUFMQ3lBQUlBUnlSUVJBUVFJZ0NIUWlBRUVBSUFCcmNpQUhjU0lBUlEwRElBQkJBQ0FBYTNGQmYyb2lBQ0FBUVF4MlFSQnhJZ0IySWdGQkJYWkJDSEVpQXlBQWNpQUJJQU4ySWdCQkFuWkJCSEVpQVhJZ0FDQUJkaUlBUVFGMlFRSnhJZ0Z5SUFBZ0FYWWlBRUVCZGtFQmNTSUJjaUFBSUFGMmFrRUNkRUhrd2dCcUtBSUFJUUFMSUFCRkRRRUxBMEFnQUNnQ0JFRjRjU0FGYXlJRElBSkpJUUVnQXlBQ0lBRWJJUUlnQUNBRUlBRWJJUVFnQUNnQ0VDSUJCSDhnQVFVZ0FDZ0NGQXNpQUEwQUN3c2dCRVVOQUNBQ1FiekFBQ2dDQUNBRmEwOE5BQ0FFS0FJWUlRZ2dCQ0FFS0FJTUlnRkhCRUJCeE1BQUtBSUFJQVFvQWdnaUFFMEVRQ0FBS0FJTUdnc2dBQ0FCTmdJTUlBRWdBRFlDQ0F3SkN5QUVRUlJxSWdNb0FnQWlBRVVFUUNBRUtBSVFJZ0JGRFFNZ0JFRVFhaUVEQ3dOQUlBTWhCaUFBSWdGQkZHb2lBeWdDQUNJQURRQWdBVUVRYWlFRElBRW9BaEFpQUEwQUN5QUdRUUEyQWdBTUNBdEJ2TUFBS0FJQUlnRWdCVThFUUVISXdBQW9BZ0FoQUFKQUlBRWdCV3NpQWtFUVR3UkFRYnpBQUNBQ05nSUFRY2pBQUNBQUlBVnFJZ00yQWdBZ0F5QUNRUUZ5TmdJRUlBQWdBV29nQWpZQ0FDQUFJQVZCQTNJMkFnUU1BUXRCeU1BQVFRQTJBZ0JCdk1BQVFRQTJBZ0FnQUNBQlFRTnlOZ0lFSUFBZ0FXb2lBU0FCS0FJRVFRRnlOZ0lFQ3lBQVFRaHFJUUFNQ2d0QndNQUFLQUlBSWdFZ0JVc0VRRUhBd0FBZ0FTQUZheUlCTmdJQVFjekFBRUhNd0FBb0FnQWlBQ0FGYWlJQ05nSUFJQUlnQVVFQmNqWUNCQ0FBSUFWQkEzSTJBZ1FnQUVFSWFpRUFEQW9MUVFBaEFDQUZRUzlxSWdRQ2YwR014QUFvQWdBRVFFR1V4QUFvQWdBTUFRdEJtTVFBUW44M0FnQkJrTVFBUW9DZ2dJQ0FnQVEzQWdCQmpNUUFJQXRCREdwQmNIRkIyS3JWcWdWek5nSUFRYURFQUVFQU5nSUFRZkREQUVFQU5nSUFRWUFnQ3lJQ2FpSUdRUUFnQW1zaUIzRWlBaUFGVFEwSlFlekRBQ2dDQUNJREJFQkI1TU1BS0FJQUlnZ2dBbW9pQ1NBSVRRMEtJQWtnQTBzTkNndEI4TU1BTFFBQVFRUnhEUVFDUUFKQVFjekFBQ2dDQUNJREJFQkI5TU1BSVFBRFFDQUFLQUlBSWdnZ0EwMEVRQ0FJSUFBb0FnUnFJQU5MRFFNTElBQW9BZ2dpQUEwQUN3dEJBQkFUSWdGQmYwWU5CU0FDSVFaQmtNUUFLQUlBSWdCQmYyb2lBeUFCY1FSQUlBSWdBV3NnQVNBRGFrRUFJQUJyY1dvaEJnc2dCaUFGVFEwRklBWkIvdi8vL3dkTERRVkI3TU1BS0FJQUlnQUVRRUhrd3dBb0FnQWlBeUFHYWlJSElBTk5EUVlnQnlBQVN3MEdDeUFHRUJNaUFDQUJSdzBCREFjTElBWWdBV3NnQjNFaUJrSCsvLy8vQjBzTkJDQUdFQk1pQVNBQUtBSUFJQUFvQWdScVJnMERJQUVoQUFzQ1FDQUZRVEJxSUFaTkRRQWdBRUYvUmcwQVFaVEVBQ2dDQUNJQklBUWdCbXRxUVFBZ0FXdHhJZ0ZCL3YvLy93ZExCRUFnQUNFQkRBY0xJQUVRRTBGL1J3UkFJQUVnQm1vaEJpQUFJUUVNQnd0QkFDQUdheEFUR2d3RUN5QUFJZ0ZCZjBjTkJRd0RDMEVBSVFRTUJ3dEJBQ0VCREFVTElBRkJmMGNOQWd0QjhNTUFRZkREQUNnQ0FFRUVjallDQUFzZ0FrSCsvLy8vQjBzTkFTQUNFQk1pQVVFQUVCTWlBRThOQVNBQlFYOUdEUUVnQUVGL1JnMEJJQUFnQVdzaUJpQUZRU2hxVFEwQkMwSGt3d0JCNU1NQUtBSUFJQVpxSWdBMkFnQWdBRUhvd3dBb0FnQkxCRUJCNk1NQUlBQTJBZ0FMQWtBQ1FBSkFRY3pBQUNnQ0FDSURCRUJCOU1NQUlRQURRQ0FCSUFBb0FnQWlBaUFBS0FJRUlnUnFSZzBDSUFBb0FnZ2lBQTBBQ3d3Q0MwSEV3QUFvQWdBaUFFRUFJQUVnQUU4YlJRUkFRY1RBQUNBQk5nSUFDMEVBSVFCQitNTUFJQVkyQWdCQjlNTUFJQUUyQWdCQjFNQUFRWDgyQWdCQjJNQUFRWXpFQUNnQ0FEWUNBRUdBeEFCQkFEWUNBQU5BSUFCQkEzUWlBa0hrd0FCcUlBSkIzTUFBYWlJRE5nSUFJQUpCNk1BQWFpQUROZ0lBSUFCQkFXb2lBRUVnUncwQUMwSEF3QUFnQmtGWWFpSUFRWGdnQVd0QkIzRkJBQ0FCUVFocVFRZHhHeUlDYXlJRE5nSUFRY3pBQUNBQklBSnFJZ0kyQWdBZ0FpQURRUUZ5TmdJRUlBQWdBV3BCS0RZQ0JFSFF3QUJCbk1RQUtBSUFOZ0lBREFJTElBQXRBQXhCQ0hFTkFDQUJJQU5ORFFBZ0FpQURTdzBBSUFBZ0JDQUdhallDQkVITXdBQWdBMEY0SUFOclFRZHhRUUFnQTBFSWFrRUhjUnNpQUdvaUFUWUNBRUhBd0FCQndNQUFLQUlBSUFacUlnSWdBR3NpQURZQ0FDQUJJQUJCQVhJMkFnUWdBaUFEYWtFb05nSUVRZERBQUVHY3hBQW9BZ0EyQWdBTUFRc2dBVUhFd0FBb0FnQWlCRWtFUUVIRXdBQWdBVFlDQUNBQklRUUxJQUVnQm1vaEFrSDB3d0FoQUFKQUFrQUNRQUpBQWtBQ1FBTkFJQUlnQUNnQ0FFY0VRQ0FBS0FJSUlnQU5BUXdDQ3dzZ0FDMEFERUVJY1VVTkFRdEI5TU1BSVFBRFFDQUFLQUlBSWdJZ0EwMEVRQ0FDSUFBb0FnUnFJZ1FnQTBzTkF3c2dBQ2dDQ0NFQURBQUFDd0FMSUFBZ0FUWUNBQ0FBSUFBb0FnUWdCbW8yQWdRZ0FVRjRJQUZyUVFkeFFRQWdBVUVJYWtFSGNSdHFJZ2tnQlVFRGNqWUNCQ0FDUVhnZ0FtdEJCM0ZCQUNBQ1FRaHFRUWR4RzJvaUFTQUpheUFGYXlFQUlBVWdDV29oQnlBQklBTkdCRUJCek1BQUlBYzJBZ0JCd01BQVFjREFBQ2dDQUNBQWFpSUFOZ0lBSUFjZ0FFRUJjallDQkF3REN5QUJRY2pBQUNnQ0FFWUVRRUhJd0FBZ0J6WUNBRUc4d0FCQnZNQUFLQUlBSUFCcUlnQTJBZ0FnQnlBQVFRRnlOZ0lFSUFBZ0Iyb2dBRFlDQUF3REN5QUJLQUlFSWdKQkEzRkJBVVlFUUNBQ1FYaHhJUW9DUUNBQ1FmOEJUUVJBSUFFb0FnZ2lBeUFDUVFOMklnUkJBM1JCM01BQWFrY2FJQU1nQVNnQ0RDSUNSZ1JBUWJUQUFFRzB3QUFvQWdCQmZpQUVkM0UyQWdBTUFnc2dBeUFDTmdJTUlBSWdBellDQ0F3QkN5QUJLQUlZSVFnQ1FDQUJJQUVvQWd3aUJrY0VRQ0FFSUFFb0FnZ2lBazBFUUNBQ0tBSU1HZ3NnQWlBR05nSU1JQVlnQWpZQ0NBd0JDd0pBSUFGQkZHb2lBeWdDQUNJRkRRQWdBVUVRYWlJREtBSUFJZ1VOQUVFQUlRWU1BUXNEUUNBRElRSWdCU0lHUVJScUlnTW9BZ0FpQlEwQUlBWkJFR29oQXlBR0tBSVFJZ1VOQUFzZ0FrRUFOZ0lBQ3lBSVJRMEFBa0FnQVNBQktBSWNJZ0pCQW5SQjVNSUFhaUlES0FJQVJnUkFJQU1nQmpZQ0FDQUdEUUZCdU1BQVFiakFBQ2dDQUVGK0lBSjNjVFlDQUF3Q0N5QUlRUkJCRkNBSUtBSVFJQUZHRzJvZ0JqWUNBQ0FHUlEwQkN5QUdJQWcyQWhnZ0FTZ0NFQ0lDQkVBZ0JpQUNOZ0lRSUFJZ0JqWUNHQXNnQVNnQ0ZDSUNSUTBBSUFZZ0FqWUNGQ0FDSUFZMkFoZ0xJQUVnQ21vaEFTQUFJQXBxSVFBTElBRWdBU2dDQkVGK2NUWUNCQ0FISUFCQkFYSTJBZ1FnQUNBSGFpQUFOZ0lBSUFCQi93Rk5CRUFnQUVFRGRpSUJRUU4wUWR6QUFHb2hBQUovUWJUQUFDZ0NBQ0lDUVFFZ0FYUWlBWEZGQkVCQnRNQUFJQUVnQW5JMkFnQWdBQXdCQ3lBQUtBSUlDeUVCSUFBZ0J6WUNDQ0FCSUFjMkFnd2dCeUFBTmdJTUlBY2dBVFlDQ0F3REN5QUhBbjlCQUNBQVFRaDJJZ0ZGRFFBYVFSOGdBRUgvLy84SFN3MEFHaUFCSUFGQmdQNC9ha0VRZGtFSWNTSUJkQ0lDSUFKQmdPQWZha0VRZGtFRWNTSUNkQ0lESUFOQmdJQVBha0VRZGtFQ2NTSURkRUVQZGlBQklBSnlJQU55YXlJQlFRRjBJQUFnQVVFVmFuWkJBWEZ5UVJ4cUN5SUJOZ0ljSUFkQ0FEY0NFQ0FCUVFKMFFlVENBR29oQWdKQVFiakFBQ2dDQUNJRFFRRWdBWFFpQkhGRkJFQkJ1TUFBSUFNZ0JISTJBZ0FnQWlBSE5nSUFEQUVMSUFCQkFFRVpJQUZCQVhacklBRkJIMFliZENFRElBSW9BZ0FoQVFOQUlBRWlBaWdDQkVGNGNTQUFSZzBESUFOQkhYWWhBU0FEUVFGMElRTWdBaUFCUVFSeGFpSUVLQUlRSWdFTkFBc2dCQ0FITmdJUUN5QUhJQUkyQWhnZ0J5QUhOZ0lNSUFjZ0J6WUNDQXdDQzBIQXdBQWdCa0ZZYWlJQVFYZ2dBV3RCQjNGQkFDQUJRUWhxUVFkeEd5SUNheUlITmdJQVFjekFBQ0FCSUFKcUlnSTJBZ0FnQWlBSFFRRnlOZ0lFSUFBZ0FXcEJLRFlDQkVIUXdBQkJuTVFBS0FJQU5nSUFJQU1nQkVFbklBUnJRUWR4UVFBZ0JFRlpha0VIY1J0cVFWRnFJZ0FnQUNBRFFSQnFTUnNpQWtFYk5nSUVJQUpCL01NQUtRSUFOd0lRSUFKQjlNTUFLUUlBTndJSVFmekRBQ0FDUVFocU5nSUFRZmpEQUNBR05nSUFRZlREQUNBQk5nSUFRWURFQUVFQU5nSUFJQUpCR0dvaEFBTkFJQUJCQnpZQ0JDQUFRUWhxSVFFZ0FFRUVhaUVBSUFRZ0FVc05BQXNnQWlBRFJnMERJQUlnQWlnQ0JFRitjVFlDQkNBRElBSWdBMnNpQkVFQmNqWUNCQ0FDSUFRMkFnQWdCRUgvQVUwRVFDQUVRUU4ySWdGQkEzUkIzTUFBYWlFQUFuOUJ0TUFBS0FJQUlnSkJBU0FCZENJQmNVVUVRRUcwd0FBZ0FTQUNjallDQUNBQURBRUxJQUFvQWdnTElRRWdBQ0FETmdJSUlBRWdBellDRENBRElBQTJBZ3dnQXlBQk5nSUlEQVFMSUFOQ0FEY0NFQ0FEQW45QkFDQUVRUWgySWdCRkRRQWFRUjhnQkVILy8vOEhTdzBBR2lBQUlBQkJnUDQvYWtFUWRrRUljU0lBZENJQklBRkJnT0FmYWtFUWRrRUVjU0lCZENJQ0lBSkJnSUFQYWtFUWRrRUNjU0lDZEVFUGRpQUFJQUZ5SUFKeWF5SUFRUUYwSUFRZ0FFRVZhblpCQVhGeVFSeHFDeUlBTmdJY0lBQkJBblJCNU1JQWFpRUJBa0JCdU1BQUtBSUFJZ0pCQVNBQWRDSUdjVVVFUUVHNHdBQWdBaUFHY2pZQ0FDQUJJQU0yQWdBZ0F5QUJOZ0lZREFFTElBUkJBRUVaSUFCQkFYWnJJQUJCSDBZYmRDRUFJQUVvQWdBaEFRTkFJQUVpQWlnQ0JFRjRjU0FFUmcwRUlBQkJIWFloQVNBQVFRRjBJUUFnQWlBQlFRUnhhaUlHS0FJUUlnRU5BQXNnQmlBRE5nSVFJQU1nQWpZQ0dBc2dBeUFETmdJTUlBTWdBellDQ0F3REN5QUNLQUlJSWdBZ0J6WUNEQ0FDSUFjMkFnZ2dCMEVBTmdJWUlBY2dBallDRENBSElBQTJBZ2dMSUFsQkNHb2hBQXdGQ3lBQ0tBSUlJZ0FnQXpZQ0RDQUNJQU0yQWdnZ0EwRUFOZ0lZSUFNZ0FqWUNEQ0FESUFBMkFnZ0xRY0RBQUNnQ0FDSUFJQVZORFFCQndNQUFJQUFnQldzaUFUWUNBRUhNd0FCQnpNQUFLQUlBSWdBZ0JXb2lBallDQUNBQ0lBRkJBWEkyQWdRZ0FDQUZRUU55TmdJRUlBQkJDR29oQUF3REMwR3d3QUJCTURZQ0FFRUFJUUFNQWdzQ1FDQUlSUTBBQWtBZ0JDZ0NIQ0lBUVFKMFFlVENBR29pQXlnQ0FDQUVSZ1JBSUFNZ0FUWUNBQ0FCRFFGQnVNQUFJQWRCZmlBQWQzRWlCellDQUF3Q0N5QUlRUkJCRkNBSUtBSVFJQVJHRzJvZ0FUWUNBQ0FCUlEwQkN5QUJJQWcyQWhnZ0JDZ0NFQ0lBQkVBZ0FTQUFOZ0lRSUFBZ0FUWUNHQXNnQkNnQ0ZDSUFSUTBBSUFFZ0FEWUNGQ0FBSUFFMkFoZ0xBa0FnQWtFUFRRUkFJQVFnQWlBRmFpSUFRUU55TmdJRUlBQWdCR29pQUNBQUtBSUVRUUZ5TmdJRURBRUxJQVFnQlVFRGNqWUNCQ0FFSUFWcUlnTWdBa0VCY2pZQ0JDQUNJQU5xSUFJMkFnQWdBa0gvQVUwRVFDQUNRUU4ySWdGQkEzUkIzTUFBYWlFQUFuOUJ0TUFBS0FJQUlnSkJBU0FCZENJQmNVVUVRRUcwd0FBZ0FTQUNjallDQUNBQURBRUxJQUFvQWdnTElRRWdBQ0FETmdJSUlBRWdBellDRENBRElBQTJBZ3dnQXlBQk5nSUlEQUVMSUFNQ2YwRUFJQUpCQ0hZaUFFVU5BQnBCSHlBQ1FmLy8vd2RMRFFBYUlBQWdBRUdBL2o5cVFSQjJRUWh4SWdCMElnRWdBVUdBNEI5cVFSQjJRUVJ4SWdGMElnVWdCVUdBZ0E5cVFSQjJRUUp4SWdWMFFROTJJQUFnQVhJZ0JYSnJJZ0JCQVhRZ0FpQUFRUlZxZGtFQmNYSkJIR29MSWdBMkFod2dBMElBTndJUUlBQkJBblJCNU1JQWFpRUJBa0FDUUNBSFFRRWdBSFFpQlhGRkJFQkJ1TUFBSUFVZ0IzSTJBZ0FnQVNBRE5nSUFEQUVMSUFKQkFFRVpJQUJCQVhacklBQkJIMFliZENFQUlBRW9BZ0FoQlFOQUlBVWlBU2dDQkVGNGNTQUNSZzBDSUFCQkhYWWhCU0FBUVFGMElRQWdBU0FGUVFSeGFpSUdLQUlRSWdVTkFBc2dCaUFETmdJUUN5QURJQUUyQWhnZ0F5QUROZ0lNSUFNZ0F6WUNDQXdCQ3lBQktBSUlJZ0FnQXpZQ0RDQUJJQU0yQWdnZ0EwRUFOZ0lZSUFNZ0FUWUNEQ0FESUFBMkFnZ0xJQVJCQ0dvaEFBd0JDd0pBSUFsRkRRQUNRQ0FCS0FJY0lnQkJBblJCNU1JQWFpSUNLQUlBSUFGR0JFQWdBaUFFTmdJQUlBUU5BVUc0d0FBZ0NrRitJQUIzY1RZQ0FBd0NDeUFKUVJCQkZDQUpLQUlRSUFGR0cyb2dCRFlDQUNBRVJRMEJDeUFFSUFrMkFoZ2dBU2dDRUNJQUJFQWdCQ0FBTmdJUUlBQWdCRFlDR0FzZ0FTZ0NGQ0lBUlEwQUlBUWdBRFlDRkNBQUlBUTJBaGdMQWtBZ0EwRVBUUVJBSUFFZ0F5QUZhaUlBUVFOeU5nSUVJQUFnQVdvaUFDQUFLQUlFUVFGeU5nSUVEQUVMSUFFZ0JVRURjallDQkNBQklBVnFJZ1FnQTBFQmNqWUNCQ0FESUFScUlBTTJBZ0FnQ0FSQUlBaEJBM1lpQlVFRGRFSGN3QUJxSVFCQnlNQUFLQUlBSVFJQ2YwRUJJQVYwSWdVZ0JuRkZCRUJCdE1BQUlBVWdCbkkyQWdBZ0FBd0JDeUFBS0FJSUN5RUZJQUFnQWpZQ0NDQUZJQUkyQWd3Z0FpQUFOZ0lNSUFJZ0JUWUNDQXRCeU1BQUlBUTJBZ0JCdk1BQUlBTTJBZ0FMSUFGQkNHb2hBQXNnQzBFUWFpUUFJQUFMUkFFQmZ5QUFJQUFvQWhBZ0FXb2lBVFlDRUNBQUlBRkJCM0UyQWdoQmZ5RUNJQUVnQUNnQ0RFRURkRTBFZnlBQUlBQW9BZ0FnQVVFRGRtbzJBZ1JCQUFWQmZ3c0w1UWNCQ0g4Z0FDQUVRUUFnQm1zZ0FpQUNJQVpxUVFCSUd5SUNJQUlnQkVvYklnSnFJQUFnQWtFQVNoc2lDU0FGUVFBZ0Iyc2dBeUFESUFkcVFRQklHeUlBSUFBZ0JVb2JJZ0FnQkd4cUlBa2dBRUVBU2hzaEF5QUhRUUFnQUdzZ0FFRWZkWEVpQ1dzZ0FDQUhhaUlBSUFWcklneEJBQ0FBSUFWS0d5SVBheUVMSUFaQkFDQUNheUlPSUFKQkgzVnhJZzFySUFJZ0Jtb2lBQ0FFYTBFQUlBQWdCRW9pQlJzaUNtc2hBQUpBSUFKQkFFZ2dCWElpRUVVRVFDQUpCRUFEUUNBQklBTWdBQkFWSUFocUlRRWdDVUYvYWlJSkRRQUxDeUFMUlEwQkEwQWdBU0FESUFBUUZTQUlhaUVCSUFNZ0JHb2hBeUFMUVg5cUlnc05BQXNNQVFzQ1FDQUpSUTBBSUExRkJFQURRQ0FBSVFjZ0FTRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQVNBSWFpRUJJQWxCZjJvaUNRMEFEQUlBQ3dBTElBRWdEbW9oQmdOQUlBRWdBeTBBQUNBTkVBY2hBU0FBSVFjZ0JpRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQmlBSWFpRUdJQUVnQ0dvaEFTQUpRWDlxSWdrTkFBc0xJQXRGRFFBZ0RVVUVRQU5BSUFBaEJ5QUJJUUlnQXlFRklBQUVRQU5BSUFJZ0JTMEFBRG9BQUNBQ1FRRnFJUUlnQlVFQmFpRUZJQWRCZjJvaUJ3MEFDd3NnQ2dSQUlBSWdCVUYvYWkwQUFDQUtFQWNhQ3lBQklBaHFJUUVnQXlBRWFpRURJQXRCZjJvaUN3MEFEQUlBQ3dBTElBRWdEbW9oQ1FOQUlBRWdBeTBBQUNBTkVBY2hBU0FBSVFjZ0NTRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQ0NBSmFpRUpJQUVnQ0dvaEFTQURJQVJxSVFNZ0MwRi9haUlMRFFBTEN3SkFJQTlGRFFBZ0F5QUVheUVESUJCRkJFQURRQ0FCSUFNZ0FCQVZJQWhxSVFFZ0RFRi9haUlNRFFBTUFnQUxBQXNnRFVVRVFBTkFJQU1oQWlBQklRVWdBQ0VISUFBRVFBTkFJQVVnQWkwQUFEb0FBQ0FGUVFGcUlRVWdBa0VCYWlFQ0lBZEJmMm9pQncwQUN3c2dDZ1JBSUFVZ0FrRi9haTBBQUNBS0VBY2FDeUFCSUFocUlRRWdERUYvYWlJTURRQU1BZ0FMQUFzZ0FTQU9haUVKQTBBZ0FTQURMUUFBSUEwUUJ5RUJJQUFoQnlBSklRSWdBeUVGSUFBRVFBTkFJQUlnQlMwQUFEb0FBQ0FDUVFGcUlRSWdCVUVCYWlFRklBZEJmMm9pQncwQUN3c2dDZ1JBSUFJZ0JVRi9haTBBQUNBS0VBY2FDeUFJSUFscUlRa2dBU0FJYWlFQklBeEJmMm9pREEwQUN3c0w5QUlCQTM4Z0FVRURkRUh3Tm1vaUF5Z0NBQ0VGSUFNdEFBUWhBeUFCUVFOMFFiQTFhaUlCTFFBRUlRUUNRQ0FCS0FJQVFRUkdCRUFnQWlBRVFRRjBhaTRCQUNFQklBVkJCRVlFUUNBQklBSWdBMEVCZEdvdUFRQnFRUUZxUVFGMUR3c0NmeUFBS0FMTUFTSUNCRUFnQUNnQ0JDQUNLQUlFUmd3QkMwRUFDMFVOQVNBQklBQW9Bc3dCSUFOQkFYUnFMZ0VjYWtFQmFrRUJkUThMSUFWQkJFWUVRQ0FDSUFOQkFYUnFMZ0VBSVFFQ2Z5QUFLQUxJQVNJQ0JFQWdBQ2dDQkNBQ0tBSUVSZ3dCQzBFQUMwVU5BU0FCSUFBb0FzZ0JJQVJCQVhScUxnRWNha0VCYWtFQmRROExBbjhDZnlBQUtBTElBU0lCQkVBZ0FDZ0NCQ0FCS0FJRVJnd0JDMEVBQzBVRVFFRUFJUUpCQUF3QkMwRUJJUUlnQUNnQ3lBRWdCRUVCZEdvdUFSd0xJUUVDZnlBQUtBTE1BU0lFQkVBZ0FDZ0NCQ0FFS0FJRVJnd0JDMEVBQzBVTkFDQUFLQUxNQVNBRFFRRjBhaTRCSENFQUlBSkZCRUFnQUE4TElBQWdBV3BCQVdwQkFYVWhBUXNnQVF1SkJ3RUhmeUFESUFWcUlnMGdBUzRCQUNJTVFRSjFhaUVESUFRZ0Jtb2lEaUFCTGdFQ0lnOUJBblZxSVFRZ0FpZ0NDRUVFZENFSklBSW9BZ1JCQkhRaENpQUFJQVpCQkhScUlBVnFJUXNDUUNBTVFRTnhRUVIwSUE5QkEzRkJBblJ5UWRBN2FpZ0NBQ0lNUVE1TkJFQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnREVFQmF3NE9BUUlEQkFVR0J3Z0pDZ3NNRFE0QUN5QUNLQUlBSUFzZ0F5QUVJQW9nQ1NBSElBaEJFQkFNREE4TElBSW9BZ0FnQ3lBRElBUkJmbW9nQ2lBSklBY2dDRUVBRUNRTURnc2dBaWdDQUNBTElBTWdCRUYrYWlBS0lBa2dCeUFJRUVjTURRc2dBaWdDQUNBTElBTWdCRUYrYWlBS0lBa2dCeUFJUVFFUUpBd01DeUFDS0FJQUlBc2dBMEYrYWlBRUlBb2dDU0FISUFoQkFCQWpEQXNMSUFJb0FnQWdDeUFEUVg1cUlBUkJmbW9nQ2lBSklBY2dDRUVBRUJvTUNnc2dBaWdDQUNBTElBTkJmbW9nQkVGK2FpQUtJQWtnQnlBSVFRQVFJUXdKQ3lBQ0tBSUFJQXNnQTBGK2FpQUVRWDVxSUFvZ0NTQUhJQWhCQWhBYURBZ0xJQUlvQWdBZ0N5QURRWDVxSUFRZ0NpQUpJQWNnQ0JCR0RBY0xJQUlvQWdBZ0N5QURRWDVxSUFSQmZtb2dDaUFKSUFjZ0NFRUFFQ0lNQmdzZ0FpZ0NBQ0FMSUFOQmZtb2dCRUYrYWlBS0lBa2dCeUFJRUVVTUJRc2dBaWdDQUNBTElBTkJmbW9nQkVGK2FpQUtJQWtnQnlBSVFRRVFJZ3dFQ3lBQ0tBSUFJQXNnQTBGK2FpQUVJQW9nQ1NBSElBaEJBUkFqREFNTElBSW9BZ0FnQ3lBRFFYNXFJQVJCZm1vZ0NpQUpJQWNnQ0VFQkVCb01BZ3NnQWlnQ0FDQUxJQU5CZm1vZ0JFRithaUFLSUFrZ0J5QUlRUUVRSVF3QkN5QUNLQUlBSUFzZ0EwRithaUFFUVg1cUlBb2dDU0FISUFoQkF4QWFDeUFOUVFGMklBRXVBUUFpQ1VFRGRXb2hBeUFPUVFGMklBRXVBUUlpQVVFRGRXb2hCQ0FDS0FJQUlBSW9BZ1FpQ2lBQ0tBSUlJZ3RzUVFoMGFpRUNJQUFnQmtFQ2RFRjRjV29nQlVFQmRtcEJnQUpxSVFVZ0NFRUJkaUVHSUFkQkFYWWhCeUFCUVFkeElRZ2dDMEVEZENFQUlBcEJBM1FoQVFKQUlBbEJCM0VpQ1VVTkFDQUlSUTBBSUFJZ0JTQURJQVFnQVNBQUlBa2dDQ0FISUFZUVNBOExJQWtFUUNBQ0lBVWdBeUFFSUFFZ0FDQUpJQWNnQmhCTER3c2dDQVJBSUFJZ0JTQURJQVFnQVNBQUlBZ2dCeUFHRUVvUEN5QUNJQVVnQXlBRUlBRWdBQ0FISUFaQkNCQU1JQUlnQUNBQmJHb2dCVUZBYXlBRElBUWdBU0FBSUFjZ0JrRUlFQXdMeHdFQkJIOGdBQ2dDQkNFQ0FrQWdBQ2dDREVFRGRDQUFLQUlRYXlJRFFTQk9CRUFnQWlnQUFDSUJRUmgwSUFGQkNIUkJnSUQ4QjNGeUlBRkJDSFpCZ1A0RGNTQUJRUmgyY25JaEFTQUFLQUlJSWdCRkRRRWdBU0FBZENBQ0xRQUVRUWdnQUd0MmNnOExJQU5CQVVnRVFFRUFEd3NnQWkwQUFDQUFLQUlJSWdCQkdHb2lCSFFoQVNBQUlBTnFRWGhxSWdCQkFVZ05BQU5BSUFJdEFBRWdCRUY0YWlJRWRDQUJjaUVCSUFCQkNFb2hBeUFDUVFGcUlRSWdBRUY0YWlFQUlBTU5BQXNMSUFFTGpBUUJCMzhDUUNBQVFYOXFJZ2d0QUFBaUJTQUFMUUFBSWdacklnUWdCRUVmZFNJRWFpQUVjeUFDS0FJRVR3MEFJQUJCZm1vdEFBQWlCQ0FGYXlJSElBZEJIM1VpQjJvZ0IzTWdBaWdDQ0NJSlR3MEFJQUF0QUFFaUJ5QUdheUlLSUFwQkgzVWlDbW9nQ25NZ0NVOE5BQ0FCUVFOTkJFQWdDQ0FGSUFFZ0FpZ0NBR3BCZjJvdEFBQWlDRUYvY3lJSklBaEJBV29pQ0NBR0lBVnJRUUowSUFkcklBUnFRUVJxUVFOMUlnVWdCU0FJU2hzZ0JTQUpTQnNpQldwQnNDNXFMUUFBT2dBQUlBQWdCaUFGYTBHd0xtb3RBQUE2QUFBTUFRc2dDQ0FGSUFkcUlBUkJBWFJxUVFKcVFRSjJPZ0FBSUFBZ0JpQUhRUUYwYWlBRWFrRUNha0VDZGpvQUFBc0NRQ0FBSUFOcUlnQkJmMm9pQnkwQUFDSURJQUF0QUFBaUJXc2lCaUFHUVI5MUlnWnFJQVp6SUFJb0FnUlBEUUFnQUVGK2FpMEFBQ0lHSUFOcklnUWdCRUVmZFNJRWFpQUVjeUFDS0FJSUlnaFBEUUFnQUMwQUFTSUVJQVZySWdrZ0NVRWZkU0lKYWlBSmN5QUlUdzBBSUFGQkEwMEVRQ0FISUFFZ0FpZ0NBR3BCZjJvdEFBQWlBVUYvY3lJQ0lBRkJBV29pQnlBRklBTnJRUUowSUFScklBWnFRUVJxUVFOMUlnRWdBU0FIU2hzZ0FTQUNTQnNpQVNBRGFrR3dMbW90QUFBNkFBQWdBQ0FGSUFGclFiQXVhaTBBQURvQUFBOExJQWNnQXlBRWFpQUdRUUYwYWtFQ2FrRUNkam9BQUNBQUlBVWdCRUVCZEdvZ0JtcEJBbXBCQW5ZNkFBQUxDMGNBQWtBZ0FVRUVUUVJBQWtBQ1FBSkFBa0FnQVVFQmF3NEVBUUlEQlFBTElBQW9Bc2dCRHdzZ0FDZ0N6QUVQQ3lBQUtBTFFBUThMSUFBb0F0UUJEd3RCQUNFQUN5QUFDNlVEQVF0L1FRQWdBMnNpQzBFQmRDRUVJQUVnQWlnQ0FHcEJmMm90QUFBaUFVRUJhaUVKSUFGQmYzTWhDZ0pBSUFBZ0Eyc2lCeTBBQUNJRklBQXRBQUFpQm1zaUFTQUJRUjkxSWdGcUlBRnpJQUlvQWdRaUFVOE5BQ0FBSUFScUxRQUFJZzBnQldzaUNDQUlRUjkxSWdocUlBaHpJQUlvQWdnaUNFOE5BQ0FBSUFOcUxRQUFJZzRnQm1zaURDQU1RUjkxSWd4cUlBeHpJQWhQRFFBZ0J5QUtJQWtnQmlBRmEwRUNkQ0FPYXlBTmFrRUVha0VEZFNJQklBRWdDVW9iSUFFZ0NrZ2JJZ0VnQldwQnNDNXFMUUFBT2dBQUlBQWdCaUFCYTBHd0xtb3RBQUE2QUFBZ0FpZ0NCQ0VCQ3dKQUlBQkJBV29pQlNBTGFpSUxMUUFBSWdZZ0FDMEFBU0lBYXlJSElBZEJIM1VpQjJvZ0IzTWdBVThOQUNBRUlBVnFMUUFBSWdFZ0Jtc2lCQ0FFUVI5MUlnUnFJQVJ6SUFJb0FnZ2lBazhOQUNBRElBVnFMUUFBSWdNZ0FHc2lCQ0FFUVI5MUlnUnFJQVJ6SUFKUERRQWdDeUFLSUFrZ0FDQUdhMEVDZENBRGF5QUJha0VFYWtFRGRTSUJJQUVnQ1VvYklBRWdDa2diSWdFZ0JtcEJzQzVxTFFBQU9nQUFJQVVnQUNBQmEwR3dMbW90QUFBNkFBQUxDMFFCQW44L0FDRUJBa0JCc01RQUtBSUFJZ0lnQUVFRGFrRjhjV29pQUNBQlFSQjBUUTBBSUFBUUFRMEFRYkRBQUVFd05nSUFRWDhQQzBHd3hBQWdBRFlDQUNBQ0N6UUJBWDhDUUNBQlFSQkxEUUFnQUNnQ0JDQUJRUUowYWlnQ0FDSUFSUTBBSUFBb0FoUkJBa2tOQUNBQUtBSUFJUUlMSUFJTGdnUUJBMzhnQWtHQUJFOEVRQ0FBSUFFZ0FoQUFHaUFBRHdzZ0FDQUNhaUVEQWtBZ0FDQUJjMEVEY1VVRVFBSkFJQUpCQVVnRVFDQUFJUUlNQVFzZ0FFRURjVVVFUUNBQUlRSU1BUXNnQUNFQ0EwQWdBaUFCTFFBQU9nQUFJQUZCQVdvaEFTQUNRUUZxSWdJZ0EwOE5BU0FDUVFOeERRQUxDd0pBSUFOQmZIRWlCRUhBQUVrTkFDQUNJQVJCUUdvaUJVc05BQU5BSUFJZ0FTZ0NBRFlDQUNBQ0lBRW9BZ1EyQWdRZ0FpQUJLQUlJTmdJSUlBSWdBU2dDRERZQ0RDQUNJQUVvQWhBMkFoQWdBaUFCS0FJVU5nSVVJQUlnQVNnQ0dEWUNHQ0FDSUFFb0FodzJBaHdnQWlBQktBSWdOZ0lnSUFJZ0FTZ0NKRFlDSkNBQ0lBRW9BaWcyQWlnZ0FpQUJLQUlzTmdJc0lBSWdBU2dDTURZQ01DQUNJQUVvQWpRMkFqUWdBaUFCS0FJNE5nSTRJQUlnQVNnQ1BEWUNQQ0FCUVVCcklRRWdBa0ZBYXlJQ0lBVk5EUUFMQ3lBQ0lBUlBEUUVEUUNBQ0lBRW9BZ0EyQWdBZ0FVRUVhaUVCSUFKQkJHb2lBaUFFU1EwQUN3d0JDeUFEUVFSSkJFQWdBQ0VDREFFTElBTkJmR29pQkNBQVNRUkFJQUFoQWd3QkN5QUFJUUlEUUNBQ0lBRXRBQUE2QUFBZ0FpQUJMUUFCT2dBQklBSWdBUzBBQWpvQUFpQUNJQUV0QUFNNkFBTWdBVUVFYWlFQklBSkJCR29pQWlBRVRRMEFDd3NnQWlBRFNRUkFBMEFnQWlBQkxRQUFPZ0FBSUFGQkFXb2hBU0FDUVFGcUlnSWdBMGNOQUFzTElBQUx3UmdCSUg4akFFSFFBMnNpQmlRQUlBRW9BZ2doRkNBQklBRW9BZ1FpQ2lBQ2JDSWFJQU5xRUIwZ0FTZ0NBQ0VKSUFCQkFEWUNDQ0FBUWlnM0FoUWdBRUlBTndJTUlBQkJCallDQUNBRFFRUjBJUWNDUUFKQUFrQWdCRUYrYWlJRVFRVkxEUUFDUUNBRVFRRnJEZ1FCQVFFQkFBc01BUXNnQmtFQU5nSU1JQVlnRkRZQ0dDQUdJQW8yQWhRZ0JpQUZOZ0lRSUFVRVFDQUdRZEFBYWlBR1FReHFJQVpCRUdvZ0J5QUNRUVIwUVFCQkFFRVFRUkFRRGd3Q0N3c2dCa0hRQUdwQkFFR0FBeEFIR2lBSklCcEJDSFJxSUFkcUlRd2dCa0lBTndOSUlBWkJRR3RDQURjREFDQUdRZ0EzQXpnZ0JrSUFOd013SUFaQ0FEY0RLQ0FHUWdBM0F5QWdCa0lBTndNWUlBWkNBRGNERUVFQUlRa0NmMEVBSUFKRkRRQWFRUUFnQUVFQUlBcHJRZGdCYkdvb0FzUUJSUTBBR2lBR0lBd2dDa0VFZEdzaUJDMEFCU0FFTFFBRWFpQUVMUUFHYWlBRUxRQUhhaUlYSUFRdEFBTWdCQzBBQWlBRUxRQUJJQVF0QUFCcWFtb2lGbW9pQlNBRUxRQUxJQVF0QUFvZ0JDMEFDU0FFTFFBSWFtcHFJaEpySUFRdEFBOGdCQzBBRGlBRUxRQU5JQVF0QUF4cWFtb2lFMnNpQ0RZQ0ZDQUdJQVVnRW1vZ0Uyb2lDVFlDRUVFQkN5RUZBbjhDUUNBQ0lCUkJmMnBIQkVBZ0FDQUtRZGdCYkdvb0FzUUJEUUVMSUFVTUFRc2dCaUFNSUFwQkNIUnFJZ0l0QUFVZ0FpMEFCR29nQWkwQUJtb2dBaTBBQjJvaUhpQUNMUUFESUFJdEFBSWdBaTBBQVNBQ0xRQUFhbXBxSWg5cUlnUWdBaTBBQ3lBQ0xRQUtJQUl0QUFrZ0FpMEFDR3BxYWlJWWF5QUNMUUFQSUFJdEFBNGdBaTBBRFNBQ0xRQU1hbXBxSWhscklBaHFJZ2cyQWhRZ0JpQUVJQmhxSUFscUlCbHFJZ2syQWhCQkFTRVFJQVZCQVdvTElRZEJBQ0VFQW44Q1FDQURSUTBBSUFCQmJHb29BZ0JGRFFBZ0JpQU1RWDlxSWdJZ0NrRUdkQ0lPYWlJRUlBcEJCSFFpQzJvdEFBQWdCQzBBQUdvZ0JDQUtRUVYwSWc5cUxRQUFhaUFFSUFwQk1Hd2lEV290QUFCcUloc2dBaUFOYWkwQUFDQUNJQTlxTFFBQUlBSWdDMm90QUFBZ0FpMEFBR3BxYWlJY2FpSVJJQVFnRG1vaUFpQUxhaTBBQUNBQ0xRQUFhaUFDSUE5cUxRQUFhaUFDSUExcUxRQUFhaUlWYXlBQ0lBNXFJZ0lnQzJvdEFBQWdBaTBBQUdvZ0FpQVBhaTBBQUdvZ0FpQU5haTBBQUdvaUQyc2lCRFlDSUNBR0lCRWdGV29nQ1dvZ0Qyb2lDVFlDRUNBSFFRRnFJUXRCQVF3QkN5QUhJUXRCQUFzaEFnSkFBa0FDUUFKQUFrQUNRQ0FESUFwQmYycEhCRUFnQUNnQ25BTU5BUXRCQUNFT0lBSkJBRWNoRVNBSERRRU1BZ3NnQmlBRUlBeEJFR29pQkNBS1FRWjBJaDFxSWdBZ0NrRUVkQ0lOYWkwQUFDQUFMUUFBYWlBQUlBcEJCWFFpRG1vdEFBQnFJQUFnQ2tFd2JDSVJhaTBBQUdvaUlDQUVJQkZxTFFBQUlBUWdEbW90QUFBZ0JDQU5haTBBQUNBTUxRQVFhbXBxSWlGcUlpSWdBQ0FkYWlJQUlBMXFMUUFBSUFBdEFBQnFJQUFnRG1vdEFBQnFJQUFnRVdvdEFBQnFJZ3hySUFBZ0hXb2lBQ0FOYWkwQUFDQUFMUUFBYWlBQUlBNXFMUUFBYWlBQUlCRnFMUUFBYWlJTmEyb2lCRFlDSUNBR0lBd2dJbW9nQ1dvZ0RXb2lDVFlDRUNBQ1FRQkhJUkZCQVNFT0lBSkJBV29oQUNBTFFRRnFJUXNDUUNBSERRQWdBa1VOQUNBR0lCc2dIR29nRldvZ0Qyb2dJV3NnSUdzZ0RHc2dEV3RCQlhVaUNEWUNGQXdEQ3lBSFJRMENJQUFoQWdzZ0JpQUlJQWRCQTJwMUlnZzJBaFFMQWtBZ0VFVU5BQ0FGUlEwQUlBSU5BQ0FHSUJZZ0Yyb2dFbW9nRTJvZ0dXc2dHR3NnSG1zZ0gydEJCWFVpQkRZQ0lFRUJJUkJCQVNFTkRBTUxJQkJCQUVjaEVDQUZRUUJISVEwZ0FrVU5BZ3dCQ3lBUVFRQkhJUkFnQlVFQVJ5RU5JQUFoQWdzZ0JpQUVJQUpCQTJwMUlnUTJBaUFMSUFZQ2Z5QUxRWDlxSWdCQkFrMEVRQUpBQWtBQ1FDQUFRUUZyRGdJQkFnQUxJQWxCQkhZTUF3c2dDVUVGZGd3Q0N5QUpRUlZzUVFwMURBRUxJQWxCQm5ZTElnQTJBaEFDUUNBRUlBaHlSUVJBSUFZZ0FEWUNTQ0FHSUFBMkFrd2dCaUFBTmdKRUlBWWdBRFlDUUNBR0lBQTJBandnQmlBQU5nSTRJQVlnQURZQ05DQUdJQUEyQWpBZ0JpQUFOZ0lzSUFZZ0FEWUNLQ0FHSUFBMkFpUWdCaUFBTmdJZ0lBWWdBRFlDSENBR0lBQTJBaGdnQmlBQU5nSVVEQUVMSUFZZ0FDQUlhaUlGSUFSck5nSkFJQVlnQlNBRVFRRjFJZ0pyTmdJd0lBWWdBaUFGYWpZQ0lDQUdJQVFnQldvMkFoQWdCaUFBSUFocklnVWdCR3MyQWt3Z0JpQUZJQUpyTmdJOElBWWdBaUFGYWpZQ0xDQUdJQVFnQldvMkFod2dCaUFBSUFoQkFYVWlCMm9pQlNBRWF6WUNSQ0FHSUFVZ0FtczJBalFnQmlBQ0lBVnFOZ0lrSUFZZ0JDQUZhallDRkNBR0lBQWdCMnNpQUNBRWF6WUNTQ0FHSUFBZ0FtczJBamdnQmlBQUlBSnFOZ0lvSUFZZ0FDQUVhallDR0FzZ0JrSFFBR29oQ0NBR1FSQnFJUUJCQUNFRUEwQWdDQ0FBSUFSQkRIRnFLQUlBSWdKQi93RWdBa0gvQVVnYklnSkJBQ0FDUVFCS0d6b0FBQ0FBSUFCQkVHb2dCRUVCYWlJRVFUOXhHeUVBSUFoQkFXb2hDQ0FFUVlBQ1J3MEFDeUFCS0FJQUlBb2dGR3dpQUVFSWRHb2dHa0VHZEdvZ0EwRURkR29oQXlBS1FRUjBJUXdnQ2tFR2RDRWFJQUJCQm5RaEhVRUFJQXBCQTNRaUMyc2hJQ0FHUWRBQ2FpRWhJQVpCUUdzaElrRUFJUVVEUUNBR1FnQTNBMGdnSWtJQU53TUFJQVpDQURjRE9DQUdRZ0EzQXpBZ0JrSUFOd01vSUFaQ0FEY0RJQ0FHUWdBM0F4Z2dCa0lBTndNUVFRQWhDRUVBSVFSQkFDRUpJQTBFUUNBR0lBTWdJR29pQUMwQUF5QUFMUUFDYWlJWElBQXRBQUVnQUMwQUFHb2lGbW9pQWlBQUxRQUZJQUF0QUFScUloSnJJQUF0QUFjZ0FDMEFCbW9pRTJzaUNEWUNGQ0FHSUFJZ0Vtb2dFMm9pQkRZQ0VFRUJJUWtMSUJBRVFDQUdJQU1nR21vaUFDMEFBeUFBTFFBQ2FpSWVJQUF0QUFFZ0FDMEFBR29pSDJvaUFpQUFMUUFGSUFBdEFBUnFJaGhySUFBdEFBY2dBQzBBQm1vaUdXc2dDR29pQ0RZQ0ZDQUdJQUlnR0dvZ0JHb2dHV29pQkRZQ0VDQUpRUUZxSVFrTFFRQWhBQUovSUJGRkJFQWdDU0VIUVFBTUFRc2dCaUFEUVg5cUlnQWdER29pQWlBTGFpMEFBQ0FDTFFBQWFpSWJJQUFnQzJvdEFBQWdBQzBBQUdvaUhHb2lCeUFDSUF4cUlnQWdDMm90QUFBZ0FDMEFBR29pRldzZ0FDQU1haUlBSUF0cUxRQUFJQUF0QUFCcUlnOXJJZ0EyQWlBZ0JpQUhJQlZxSUFScUlBOXFJZ1EyQWhBZ0NVRUJhaUVIUVFFTElRSUNRQ0FHQW44Q1FBSkFBa0FnRGtVRVFDQUpEUUVNQWdzZ0JpQUFJQU5CQ0dvaUNpQU1haUlBSUF0cUxRQUFJQUF0QUFCcUlpTWdDaUFMYWkwQUFDQURMUUFJYWlJa2FpSWxJQUFnREdvaUFDQUxhaTBBQUNBQUxRQUFhaUlLYXlBQUlBeHFJZ0FnQzJvdEFBQWdBQzBBQUdvaUZHdHFJZ0EyQWlBZ0JpQUtJQ1ZxSUFScUlCUnFJZ1EyQWhBZ0FrRUJhaUVDSUFkQkFXb2hCeUFSUVFGeklBbEJBRWR5UlFSQUlBWWdHeUFjYWlBVmFpQVBhaUFrYXlBamF5QUtheUFVYTBFRWRTSUlOZ0lVREFNTElBbEZEUUlMSUFZZ0NDQUpRUUpxZFNJSU5nSVVDeUFXSUJkcUlCSnFJQk5xSUJscklCaHJJQjVySUI5clFRUjFJQkFnRFNBQ1JYRnhRUUZHRFFFYUlBSkZEUUlMSUFBZ0FrRUNhblVMSWdBMkFpQUxJQVlDZnlBSFFYOXFJZ0pCQWswRVFBSkFBa0FDUUNBQ1FRRnJEZ0lCQWdBTElBUkJBM1lNQXdzZ0JFRUVkZ3dDQ3lBRVFSVnNRUWwyREFFTElBUkJCWFlMSWdRMkFoQUNRQ0FBSUFoeVJRUkFJQVlnQkRZQ1NDQUdJQVEyQWt3Z0JpQUVOZ0pFSUFZZ0JEWUNRQ0FHSUFRMkFqd2dCaUFFTmdJNElBWWdCRFlDTkNBR0lBUTJBakFnQmlBRU5nSXNJQVlnQkRZQ0tDQUdJQVEyQWlRZ0JpQUVOZ0lnSUFZZ0JEWUNIQ0FHSUFRMkFoZ2dCaUFFTmdJVURBRUxJQVlnQkNBSWFpSUhJQUJyTmdKQUlBWWdCeUFBUVFGMUlnSnJOZ0l3SUFZZ0FpQUhhallDSUNBR0lBQWdCMm8yQWhBZ0JpQUVJQWhySWdjZ0FHczJBa3dnQmlBSElBSnJOZ0k4SUFZZ0FpQUhhallDTENBR0lBQWdCMm8yQWh3Z0JpQUVJQWhCQVhVaUNXb2lCeUFBYXpZQ1JDQUdJQWNnQW1zMkFqUWdCaUFDSUFkcU5nSWtJQVlnQUNBSGFqWUNGQ0FHSUFRZ0NXc2lCQ0FBYXpZQ1NDQUdJQVFnQW1zMkFqZ2dCaUFDSUFScU5nSW9JQVlnQUNBRWFqWUNHQXNnSVNBRlFRWjBhaUVJUVFBaEFDQUdRUkJxSVFRRFFDQUlJQVFnQUVFQmRFRU1jV29vQWdBaUFrSC9BU0FDUWY4QlNCc2lBa0VBSUFKQkFFb2JPZ0FBSUFRZ0JFRVFhaUFBUVFGcUlnQkJEM0ViSVFRZ0NFRUJhaUVJSUFCQndBQkhEUUFMSUFNZ0hXb2hBeUFGUVFGcUlnVkJBa2NOQUFzTElBRWdCa0hRQUdvUUd5QUdRZEFEYWlRQUN6WUFJQUlFUUNBQUlBRVFBZzhMUVFFaEFpQUJJQUJCQVJBRElnQTJBZ0FnQUVGL1J3Ui9JQUVnQUVFQmN6WUNBRUVBQlVFQkN3dk1Bd0VTZnlBRFFRRjBJUThnQTBGOWJDRVFRUUFnQTJzaUVVRUJkQ0VTSUFFZ0FpZ0NBR3BCZjJvdEFBQWlCMEVCYWlFVFFRQWdCMnNoQ2tFRUlRRURRQUpBSUFBZ0VXb2lGQzBBQUNJRklBQXRBQUFpQ0dzaUJDQUVRUjkxSWdScUlBUnpJQUlvQWdSUERRQWdBQ0FTYWlJTExRQUFJZ3dnQldzaUJDQUVRUjkxSWdScUlBUnpJQUlvQWdnaUJrOE5BQ0FBSUFOcUloVXRBQUFpRFNBSWF5SUVJQVJCSDNVaUJHb2dCSE1nQms4TkFDQUhJUVFnQUNBUWFpMEFBQ0lKSUFWcklnNGdEa0VmZFNJT2FpQU9jeUFHU1FSQUlBc2dEQ0FLSUFjZ0JTQUlha0VCYWtFQmRpQU1RUUYwYXlBSmFrRUJkU0lFSUFRZ0Iwb2JJQVFnQ2tnYmFqb0FBQ0FDS0FJSUlRWWdFeUVFQ3lBVUlBVUNmeUFBSUE5cUxRQUFJZ3NnQ0dzaUNTQUpRUjkxSWdscUlBbHpJQVpKQkVBZ0ZTQU5JQW9nQnlBRklBaHFRUUZxUVFGMklBMUJBWFJySUF0cVFRRjFJZ1lnQmlBSFNoc2dCaUFLU0J0cU9nQUFJQVJCQVdvaEJBdEJBQ0FFYXlJR0N5QUVJQWdnQld0QkFuUWdEV3NnREdwQkJHcEJBM1VpQlNBRklBUktHeUFGSUFaSUd5SUVha0d3TG1vdEFBQTZBQUFnQUNBSUlBUnJRYkF1YWkwQUFEb0FBQXNnQUVFQmFpRUFJQUZCZjJvaUFRMEFDd3Y3QmdFT2Z5QUNLQUlJSVFvZ0FpZ0NCQ0VQQWtBZ0FVRUVUd1JBSUE5QkFuWkJBbW9oRUVFRUlRSURRQUpBSUFCQmYyb2lCUzBBQUNJSElBQXRBQUFpQ0dzaUFTQUJRUjkxSWdGcUlBRnpJZzBnRDA4TkFDQUFRWDVxSWc0dEFBQWlBU0FIYXlJRUlBUkJIM1VpQkdvZ0JITWdDazhOQUNBQUxRQUJJZ2tnQ0dzaUJDQUVRUjkxSWdScUlBUnpJQXBQRFFBQ1FDQU5JQkJKQkVBZ0FDMEFBaUVMQW44Z0FFRjlhaUlOTFFBQUlnUWdCMnNpQmlBR1FSOTFJZ1pxSUFaeklBcEpCRUJCQXlFR0lBVWdDU0FISUFocUlBRnFJZ1ZCQVhScUlBUnFRUVJxUVFOMk9nQUFJQTRnQkNBRmFrRUNha0VDZGpvQUFDQUVRUU5zSVE0Z0JVRUVhaUVNSUFCQmZHb3RBQUFNQVFzZ0J5QUphaUVNUVFJaERrRUNJUVlnQlNFTklBRUxJUVFnRFNBTUlBNXFJQVJCQVhScUlBWjJPZ0FBSUFzZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6SUFwUERRRWdBQ0FISUFscUlBaHFJZ1VnQzJwQkFtcEJBblk2QUFFZ0FDQUZJQXRCQTJ4cUlBQXRBQU5CQVhScVFRUnFRUU4yT2dBQ0lBQWdBU0FGUVFGMGFpQUxha0VFYWtFRGRqb0FBQXdDQ3lBRklBY2dDV29nQVVFQmRHcEJBbXBCQW5ZNkFBQUxJQUFnQVNBSWFpQUpRUUYwYWtFQ2FrRUNkam9BQUFzZ0FDQURhaUVBSUFKQmYyb2lBZzBBQ3d3QkN5QUJJQUlvQWdCcVFYOXFMUUFBSWdWQkFXb2hEVUVBSUFWcklRaEJCQ0VDQTBBQ1FDQUFRWDlxSWc0dEFBQWlCQ0FBTFFBQUlnZHJJZ0VnQVVFZmRTSUJhaUFCY3lBUFR3MEFJQUJCZm1vaURDMEFBQ0lKSUFScklnRWdBVUVmZFNJQmFpQUJjeUFLVHcwQUlBQXRBQUVpQ3lBSGF5SUJJQUZCSDNVaUFXb2dBWE1nQ2s4TkFDQUFMUUFDSVFZZ0JTRUJJQUJCZldvdEFBQWlFQ0FFYXlJUklCRkJIM1VpRVdvZ0VYTWdDa2tFUUNBTUlBa2dDQ0FGSUFRZ0IycEJBV3BCQVhZZ0NVRUJkR3NnRUdwQkFYVWlBU0FCSUFWS0d5QUJJQWhJRzJvNkFBQWdEU0VCQ3lBT0lBUUNmeUFHSUFkcklnd2dERUVmZFNJTWFpQU1jeUFLU1FSQUlBQWdDeUFJSUFVZ0JDQUhha0VCYWtFQmRpQUxRUUYwYXlBR2FrRUJkU0lHSUFZZ0JVb2JJQVlnQ0VnYmFqb0FBU0FCUVFGcUlRRUxRUUFnQVdzaUJnc2dBU0FKSUF0cklBY2dCR3RCQW5ScVFRUnFRUU4xSWdRZ0JDQUJTaHNnQkNBR1NCc2lBV3BCc0M1cUxRQUFPZ0FBSUFBZ0J5QUJhMEd3TG1vdEFBQTZBQUFMSUFBZ0Eyb2hBQ0FDUVg5cUlnSU5BQXNMQzlvSEFRMS9Jd0JCd0FOckloRWtBQ0FHUVFWcUlRa0NRQUpBSUFKQkFFZ05BQ0FEUVFCSURRQWdBaUFKYWlBRVN3MEFJQU1nQjJwQkJXb2dCVXNOQUNBRUlRa2dBeUVLREFFTElBQWdFU0FDSUFNZ0JDQUZJQWtnQjBFRmFpQUpFQXdnRVNFQVFRQWhBZ3NDUUNBSFJRMEFJQUFnQ1NBS2JDQUNhbW9oRTBFUUlBWnJJUlFDUUNBR1FRSjJJaElFUUNBSklBWnJJUlVnRXlBSklBaEJBWFpCQVhGQkFuSnNha0VGYWlFQ0lBY2hCQU5BSUFKQmYyb3RBQUFoQUNBQ1FYNXFMUUFBSVFNZ0FrRjlhaTBBQUNFRklBSkJmR290QUFBaEN5QUNRWHRxTFFBQUlRMGdFaUVQQTBBZ0FTQUNMUUFBSWdvZ0RTQUFJQXRxSWd4cklBTWdCV3BCRkd4cUlBeEJBblJyYWtFUWFrRUZkVUd3TG1vdEFBQTZBQUFnQVNBQ0xRQUJJZ3dnQ3lBQUlBTnFRUlJzYWlBRklBcHFJZ3RySUF0QkFuUnJha0VRYWtFRmRVR3dMbW90QUFBNkFBRWdBU0FDTFFBQ0loQWdCU0FBSUFwcVFSUnNhaUFESUF4cUlnVnJJQVZCQW5ScmFrRVFha0VGZFVHd0xtb3RBQUE2QUFJZ0FTQUNMUUFESWc0Z0F5QUtJQXhxUVJSc2FpQUFJQkJxSWdOcklBTkJBblJyYWtFUWFrRUZkVUd3TG1vdEFBQTZBQU1nQVVFRWFpRUJJQUpCQkdvaEFpQUFJUTBnQ2lFTElBd2hCU0FRSVFNZ0RpRUFJQTlCZjJvaUR3MEFDeUFCSUJScUlRRWdBaUFWYWlFQ0lBUkJmMm9pQkEwQUN3d0JDeUFIUVg5cUlCUnNJQVpySUFGcVFSQnFJUUVMSUFkQkFuWWlCRVVOQUVIQUFDQUdheUVRSUFsQkFYUWhDaUFKUVFKMElBWnJJUXRCQUNBSmF5SU1RUUYwSVJJZ0FTQUhRUVIwYXlFQ0lBa2dFMm9nQ0VFQmNXcEJBbW9pQUNBSlFRVnNhaUVCQTBBZ0JpSURCRUFEUUNBQ0lBQWdDbW90QUFBaUJTQUJJQXBxTFFBQUlBRWdDV290QUFBaURpQUJJQkpxTFFBQUlnZHFJZ2hySUFoQkFuUnJhaUFCTFFBQUlnMGdBU0FNYWkwQUFDSUlha0VVYkdwQkVHcEJCWFZCc0M1cUxRQUFJQUl0QURCcVFRRnFRUUYyT2dBd0lBSWdBQ0FKYWkwQUFDSVBJQTRnQnlBSWFrRVViR29nQlNBTmFpSU9heUFPUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBSUFJdEFDQnFRUUZxUVFGMk9nQWdJQUlnQUMwQUFDSU9JQTBnQlNBSGFrRVViR29nQ0NBUGFpSU5heUFOUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBSUFJdEFCQnFRUUZxUVFGMk9nQVFJQUlnQUNBTWFpMEFBQ0FJSUFVZ0QycEJGR3hxSUFjZ0Rtb2lCV3NnQlVFQ2RHdHFRUkJxUVFWMVFiQXVhaTBBQUNBQ0xRQUFha0VCYWtFQmRqb0FBQ0FBUVFGcUlRQWdBa0VCYWlFQ0lBRkJBV29oQVNBRFFYOXFJZ01OQUFzTElBSWdFR29oQWlBQklBdHFJUUVnQUNBTGFpRUFJQVJCZjJvaUJBMEFDd3NnRVVIQUEyb2tBQXUxQlFFRWZ5QUFLQUlVSVFNZ0FDZ0NFQ0VFSUFBb0FnUWhCU0FBS0FJTUlnSWdBU2tDQURjQ0FDQUNJQUVwQWdnM0FnZ2dBaUFGUVFSMElnQnFJZ0lnQVNrQ0VEY0NBQ0FDSUFFcEFoZzNBZ2dnQUNBQ2FpSUNJQUVwQWlBM0FnQWdBaUFCS1FJb053SUlJQUFnQW1vaUFpQUJLUUl3TndJQUlBSWdBU2tDT0RjQ0NDQUFJQUpxSWdJZ0FTa0NRRGNDQUNBQ0lBRXBBa2czQWdnZ0FDQUNhaUlDSUFFcEFsQTNBZ0FnQWlBQktRSllOd0lJSUFBZ0Ftb2lBaUFCS1FKZ053SUFJQUlnQVNrQ2FEY0NDQ0FBSUFKcUlnSWdBU2tDY0RjQ0FDQUNJQUVwQW5nM0FnZ2dBQ0FDYWlJQ0lBRXBBb0FCTndJQUlBSWdBU2tDaUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBcEFCTndJQUlBSWdBU2tDbUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBcUFCTndJQUlBSWdBU2tDcUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBckFCTndJQUlBSWdBU2tDdUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBc0FCTndJQUlBSWdBU2tDeUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBdEFCTndJQUlBSWdBU2tDMkFFM0FnZ2dBQ0FDYWlJQ0lBRXBBdUFCTndJQUlBSWdBU2tDNkFFM0FnZ2dBQ0FDYWlJQUlBRXBBdkFCTndJQUlBQWdBU2tDK0FFM0FnZ2dCQ0FCS1FLQUFqY0NBQ0FFSUFWQkEzUWlBR29pQkNBQktRS0lBamNDQUNBQUlBUnFJZ1FnQVNrQ2tBSTNBZ0FnQUNBRWFpSUVJQUVwQXBnQ053SUFJQUFnQkdvaUJDQUJLUUtnQWpjQ0FDQUFJQVJxSWdRZ0FTa0NxQUkzQWdBZ0FDQUVhaUlFSUFFcEFyQUNOd0lBSUFBZ0JHb2dBU2tDdUFJM0FnQWdBeUFCS1FMQUFqY0NBQ0FBSUFOcUlnTWdBU2tDeUFJM0FnQWdBQ0FEYWlJRElBRXBBdEFDTndJQUlBQWdBMm9pQXlBQktRTFlBamNDQUNBQUlBTnFJZ01nQVNrQzRBSTNBZ0FnQUNBRGFpSURJQUVwQXVnQ053SUFJQUFnQTJvaUF5QUJLUUx3QWpjQ0FDQUFJQU5xSUFFcEF2Z0NOd0lBQytnQ0FRVi9Ba0FnQUNBQkVBSWlBdzBBUVFFaEF5QUJJQUVvQWdCQkFXb2lBallDQUNBQ1FTQkxEUUFnQUVFRUVBTWlBa0YvUmcwQUlBRWdBallDQkNBQVFRUVFBeUlDUVg5R0RRQWdBU0FDTmdJSUlBRW9BZ0FFUUFOQUlBQWdBU0FGUVFKMGFpSUNJZ1JCREdvUUFpSUREUUpCQVNFRElBUW9BZ3dpQmtGL1JnMENJQVFnQmtFQmFpSUROZ0lNSUFRZ0F5QUJLQUlFUVFacWREWUNEQ0FBSUFKQmpBRnFFQUlpQXcwQ1FRRWhBeUFDS0FLTUFTSUVRWDlHRFFJZ0FpQUVRUUZxSWdRMkFvd0JJQUlnQkNBQktBSUlRUVJxZERZQ2pBRWdBRUVCRUFNaUJFRi9SZzBDSUFJZ0JFRUJSallDakFJZ0JVRUJhaUlGSUFFb0FnQkpEUUFMQ3lBQVFRVVFBeUlDUVg5R0RRQWdBU0FDUVFGcU5nS01BeUFBUVFVUUF5SUNRWDlHRFFBZ0FTQUNRUUZxTmdLUUF5QUFRUVVRQXlJQ1FYOUdEUUFnQVNBQ1FRRnFOZ0tVQXlBQVFRVVFBeUlBUVg5R0RRQWdBU0FBTmdLWUEwRUFJUU1MSUFNTFd3RURmeUFBSUFBb0FnQWlCQ0FCSUFBb0FnUWlBbkFpQTBFRWRHb2dBU0FEYXlJQlFRaDBhallDRENBQUlBUWdBaUFBS0FJSWJDSUNRUWgwYWlBQlFRWjBhaUFEUVFOMGFpSUJOZ0lRSUFBZ0FTQUNRUVowYWpZQ0ZBdFZBUUovSUFFZ0FrRUJhaUlESUFNZ0FVa2JJUU1nQUNBQ1FRSjBhaWdDQUNFRUEwQUNRQ0FDUVFGcUlnSWdBVThFUUNBRElRSU1BUXNnQUNBQ1FRSjBhaWdDQUNBRVJ3MEJDd3RCQUNBQ0lBRWdBa1liQ3ljQUlBQkJDQ0FBS0FJSUlnQnJFQU5CZjBZRVFBOExRUUFnQUd0QkFuUkJ6RDlxS0FJQUdndDZBUUovSXdCQklHc2lBaVFBSUFJZ0FDZ0NFRFlDRUNBQ0lBQXBBZ2czQXdnZ0FpQUFLUUlBTndNQUFrQWdBaUFDUVJ4cUVBSWlBQTBBSUFJZ0FrRWNhaEFDSWdBTkFDQUNJQUpCSEdvUUFpSUFEUUJCQVNFQUlBSW9BaHdpQTBIL0FVc05BQ0FCSUFNMkFnQkJBQ0VBQ3lBQ1FTQnFKQUFnQUF2bkJ3RVNmeU1BUVlBT2F5SU1KQUFnQmtFRmFpRUpBa0FDUUNBQ1FRQklEUUFnQTBFQVNBMEFJQUlnQ1dvZ0JFc05BQ0FESUFkcVFRVnFJQVZMRFFBZ0F5RUtEQUVMSUFBZ0RFSEFDbW9nQWlBRElBUWdCU0FKSUFkQkJXb2dDUkFNSUF4QndBcHFJUUFnQ1NFRVFRQWhBZ3NDUUNBSFFRSjJJaFJGRFFBZ0NVVU5BQ0FFUVFGMElSVkJBQ0FFYXlJV1FRRjBJUm9nQkVFQ2RDQUdhMEY3YWlFWElBQWdCQ0FLYkNBQ2Ftb2dCR29pQUNBRVFRVnNhaUVDSUF3Z0NVRUNkQ0lRYWlFRElBbEJBM1FoRFVFQUlBbHJRUUowSVE0Z0NVRURiRUVDZENFUEEwQWdDU0VGQTBBZ0F5QU5haUFBSUJWcUxRQUFJaEVnQWlBVmFpMEFBQ0FDSUFScUxRQUFJZ3NnQWlBYWFpMEFBQ0lTYWlJS2F5QUtRUUowYTJvZ0FpMEFBQ0lZSUFJZ0Ztb3RBQUFpRTJwQkZHeHFOZ0lBSUFNZ0VHb2dBQ0FFYWkwQUFDSVpJQXNnRWlBVGFrRVViR29nRVNBWWFpSUtheUFLUVFKMGEybzJBZ0FnQXlBQUxRQUFJZ3NnR0NBUklCSnFRUlJzYWlBVElCbHFJZ3BySUFwQkFuUnJhallDQUNBRElBNXFJQUFnRm1vdEFBQWdFeUFSSUJscVFSUnNhaUFMSUJKcUlncHJJQXBCQW5ScmFqWUNBQ0FBUVFGcUlRQWdBMEVFYWlFRElBSkJBV29oQWlBRlFYOXFJZ1VOQUFzZ0FpQVhhaUVDSUFBZ0Yyb2hBQ0FESUE5cUlRTWdGRUYvYWlJVURRQUxDeUFIQkVCQkVDQUdheUVRSUFaQkFuWWhDaUFNSUFoQkFuUnFRUWhxSVFBZ0RFRVVhaUVDQTBBZ0NnUkFJQUpCYkdvb0FnQWhCQ0FDUVhCcUtBSUFJUThnQWtGMGFpZ0NBQ0VOSUFKQmVHb29BZ0FoQlNBQ1FYeHFLQUlBSVFNZ0NpRUpBMEFnQVNBQ0tBSUFJZzRnQkNBRElBOXFJZ1JySUFVZ0RXcEJGR3hxSUFSQkFuUnJha0dBQkdwQkNuVkJzQzVxTFFBQUlBQW9BZ0JCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFDQUJJQUlvQWdRaUN5QVBJQU1nQldwQkZHeHFJQTBnRG1vaUJHc2dCRUVDZEd0cVFZQUVha0VLZFVHd0xtb3RBQUFnQUNnQ0JFRVFha0VGZFVHd0xtb3RBQUJxUVFGcVFRRjJPZ0FCSUFFZ0FpZ0NDQ0lJSUEwZ0F5QU9ha0VVYkdvZ0JTQUxhaUlFYXlBRVFRSjBhMnBCZ0FScVFRcDFRYkF1YWkwQUFDQUFLQUlJUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFBSWdBU0FDS0FJTUlnWWdCU0FMSUE1cVFSUnNhaUFESUFocUlnUnJJQVJCQW5ScmFrR0FCR3BCQ25WQnNDNXFMUUFBSUFBb0FneEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQXlBQlFRUnFJUUVnQUVFUWFpRUFJQUpCRUdvaEFpQURJUVFnRGlFUElBc2hEU0FJSVFVZ0JpRURJQWxCZjJvaUNRMEFDd3NnQVNBUWFpRUJJQUJCRkdvaEFDQUNRUlJxSVFJZ0IwRi9haUlIRFFBTEN5QU1RWUFPYWlRQUM5RUhBUXgvSXdCQmdBNXJJZzhrQUNBR1FRVnFJUWtDUUFKQUlBSkJBRWdOQUNBRFFRQklEUUFnQWlBSmFpQUVTdzBBSUFkQkJXb2lEaUFEYWlBRlN3MEFJQVFoQ1NBRElRb01BUXNnQUNBUFFjQUthaUFDSUFNZ0JDQUZJQWtnQjBFRmFpSU9JQWtRRENBUFFjQUthaUVBUVFBaEFnc0NRQ0FPUlEwQUlBWkJBbllpRWtVTkFDQUpJQVpySVJNZ0FDQUpJQXBzSUFKcWFrRUZhaUVDSUE4aEFBTkFJQUpCZjJvdEFBQWhDU0FDUVg1cUxRQUFJUU1nQWtGOWFpMEFBQ0VGSUFKQmZHb3RBQUFoQ2lBQ1FYdHFMUUFBSVF3Z0VpRU5BMEFnQUNBQ0xRQUFJZ1FnRENBSklBcHFJZ3RySUFNZ0JXcEJGR3hxSUF0QkFuUnJhallDQUNBQUlBSXRBQUVpQ3lBRElBbHFRUlJzSUFwcUlBUWdCV29pQ21zZ0NrRUNkR3RxTmdJRUlBQWdBaTBBQWlJUUlBUWdDV3BCRkd3Z0JXb2dBeUFMYWlJRmF5QUZRUUowYTJvMkFnZ2dBQ0FDTFFBREloUWdCQ0FMYWtFVWJDQURhaUFKSUJCcUlnTnJJQU5CQW5ScmFqWUNEQ0FBUVJCcUlRQWdBa0VFYWlFQ0lBa2hEQ0FFSVFvZ0N5RUZJQkFoQXlBVUlRa2dEVUYvYWlJTkRRQUxJQUlnRTJvaEFpQU9RWDlxSWc0TkFBc0xJQWRCQW5ZaUJ3UkFRY0FBSUFacklSUWdEeUFHUVFKMElnUnFJZ2tnQmtFVWJHb2hBaUFKSUFoQkFtb2dCbXhCQW5ScUlRQWdCa0VEYkVFQ2RDRUZRUUFnQm1zaURrRURkQ0VUSUFaQkEzUWhDQU5BSUFZaEF5QUdCRUFEUUNBQklBZ2dDV29vQWdBaUNpQUNJQWhxS0FJQUlBSWdCR29vQWdBaUVTQUNJQk5xS0FJQUlndHFJZ3hySUF4QkFuUnJhaUFDS0FJQUlnMGdBaUFPUVFKMEloQnFLQUlBSWd4cVFSUnNha0dBQkdwQkNuVkJzQzVxTFFBQUlBQWdDR29vQWdCQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FNQ0FCSUFRZ0NXb29BZ0FpRWlBUklBc2dER3BCRkd4cUlBb2dEV29pRVdzZ0VVRUNkR3RxUVlBRWFrRUtkVUd3TG1vdEFBQWdBQ0FFYWlnQ0FFRVFha0VGZFVHd0xtb3RBQUJxUVFGcVFRRjJPZ0FnSUFFZ0NTZ0NBQ0lSSUEwZ0NpQUxha0VVYkdvZ0RDQVNhaUlOYXlBTlFRSjBhMnBCZ0FScVFRcDFRYkF1YWkwQUFDQUFLQUlBUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFCQWdBU0FKSUJCcUtBSUFJQXdnQ2lBU2FrRVViR29nQ3lBUmFpSUtheUFLUVFKMGEycEJnQVJxUVFwMVFiQXVhaTBBQUNBQUlCQnFLQUlBUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFBQWdBRUVFYWlFQUlBbEJCR29oQ1NBQlFRRnFJUUVnQWtFRWFpRUNJQU5CZjJvaUF3MEFDd3NnQVNBVWFpRUJJQUFnQldvaEFDQUNJQVZxSVFJZ0JTQUphaUVKSUFkQmYyb2lCdzBBQ3dzZ0QwR0FEbW9rQUF1MEJnRUpmeU1BUWNBRGF5SU5KQUFnQmtFRmFpRUpBa0FDUUNBQ1FRQklEUUFnQXlBSGFpQUZTdzBBSUFOQkFFZ05BQ0FDSUFscUlBUkxEUUFnQkNFSklBTWhDZ3dCQ3lBQUlBMGdBaUFESUFRZ0JTQUpJQWNnQ1JBTUlBMGhBRUVBSVFJTElBY0VRRUVRSUFacklSQWdDU0FHYXlFUklBWkJBblloRHlBQUlBa2dDbXdnQW1wcVFRVnFJUWtEUUFKQUlBOUZEUUFnQ1VGL2FpMEFBQ0VDSUFsQmZtb3RBQUFoQmlBSlFYMXFMUUFBSVFNZ0NVRjhhaTBBQUNFRklBbEJlMm90QUFBaENpQVBJZ0FoQ3lBSUJFQURRQ0FCSUFZZ0NTMEFBQ0lFSUFvZ0FpQUZhaUlLYXlBRElBWnFRUlJzYWlBS1FRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFDQUJJQUlnQ1MwQUFTSUxJQVVnQWlBR2FrRVViR29nQXlBRWFpSUZheUFGUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQVNBQklBUWdDUzBBQWlJTUlBTWdBaUFFYWtFVWJHb2dCaUFMYWlJRGF5QURRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBaUFCSUFzZ0NTMEFBeUlPSUFZZ0JDQUxha0VVYkdvZ0FpQU1haUlEYXlBRFFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUF5QUJRUVJxSVFFZ0NVRUVhaUVKSUFJaENpQUVJUVVnQ3lFRElBd2hCaUFPSVFJZ0FFRi9haUlBRFFBTUFnQUxBQXNEUUNBQklBTWdDUzBBQUNJQUlBb2dBaUFGYWlJRWF5QURJQVpxUVJSc2FpQUVRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBQ0FCSUFZZ0NTMEFBU0lFSUFVZ0FpQUdha0VVYkdvZ0FDQURhaUlGYXlBRlFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFTQUJJQUlnQ1MwQUFpSU1JQU1nQUNBQ2FrRVViR29nQkNBR2FpSURheUFEUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQWlBQklBQWdDUzBBQXlJT0lBWWdBQ0FFYWtFVWJHb2dBaUFNYWlJRGF5QURRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBeUFCUVFScUlRRWdDVUVFYWlFSklBSWhDaUFBSVFVZ0JDRURJQXdoQmlBT0lRSWdDMEYvYWlJTERRQUxDeUFCSUJCcUlRRWdDU0FSYWlFSklBZEJmMm9pQncwQUN3c2dEVUhBQTJva0FBdkdCQUVMZnlNQVFjQURheUlOSkFBQ1FBSkFJQUpCQUVnTkFDQURRUUJJRFFBZ0FpQUdhaUFFU3cwQUlBTWdCMnBCQldvZ0JVc05BQ0FESVFrTUFRc2dBQ0FOSUFJZ0F5QUVJQVVnQmlBSFFRVnFJQVlRRENBTklRQWdCaUVFUVFBaEFnc2dCMEVDZGlJUUJFQkJ3QUFnQm1zaEVpQUVRUUYwSVFVZ0JFRUNkQ0FHYXlFT1FRQWdCR3NpRDBFQmRDRVRJQUFnQkNBSmJDQUNhbW9nQkdvaUFDQUVRUVZzYWlFQ0lBQWdCQ0FJUVFKcWJHb2hCd05BSUFZaEF5QUdCRUFEUUNBQklBQWdCV290QUFBaUNDQUNJQVZxTFFBQUlBSWdCR290QUFBaUNpQUNJQk5xTFFBQUlnbHFJZ3RySUF0QkFuUnJhaUFDTFFBQUlnd2dBaUFQYWkwQUFDSUxha0VVYkdwQkVHcEJCWFZCc0M1cUxRQUFJQVVnQjJvdEFBQnFRUUZxUVFGMk9nQXdJQUVnQUNBRWFpMEFBQ0lSSUFvZ0NTQUxha0VVYkdvZ0NDQU1haUlLYXlBS1FRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQUlBUWdCMm90QUFCcVFRRnFRUUYyT2dBZ0lBRWdBQzBBQUNJS0lBd2dDQ0FKYWtFVWJHb2dDeUFSYWlJTWF5QU1RUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFJQWN0QUFCcVFRRnFRUUYyT2dBUUlBRWdBQ0FQYWkwQUFDQUxJQWdnRVdwQkZHeHFJQWtnQ21vaUNHc2dDRUVDZEd0cVFSQnFRUVYxUWJBdWFpMEFBQ0FISUE5cUxRQUFha0VCYWtFQmRqb0FBQ0FIUVFGcUlRY2dBRUVCYWlFQUlBRkJBV29oQVNBQ1FRRnFJUUlnQTBGL2FpSUREUUFMQ3lBQklCSnFJUUVnQnlBT2FpRUhJQUlnRG1vaEFpQUFJQTVxSVFBZ0VFRi9haUlRRFFBTEN5QU5RY0FEYWlRQUM0OEhBUXgvSUFFb0FnZ2hDeUFCS0FJRUlRWUNRQUpBQWtBZ0FrRUZTdzBBSUFKQkFXc09CQUFBQUFBQkN5QUFLQUs0R2cwQURBRUxJQUJCeEFscUlRUURRQ0FFSUFNUUZDRUhJQU5CRGtzTkFTQURRUUZxSVFNZ0IwVU5BQXNMQWtBQ1FBSkFBa0FnQUNnQ21Ba2lDQVJBSUFBb0Fyd0pJUXBCQUNFRFFRQWhCQU5BSUFvZ0EwSFlBV3hxS0FMRUFVVUVRRUVBSUFSQkFXb2lCQ0FFSUFaR0lnVWJJUVFnQlNBSmFpRUpJQU5CQVdvaUF5QUlTUTBCQ3dzZ0F5QUlSdzBCQ3dKQUFrQWdBa0YrYWlJQ1FRVkxEUUFDUUNBQ1FRRnJEZ1FCQVFFQkFBc2dCMFVOQVNBQUtBSzRHa1VOQVF3REN5QUhEUUlMSUFFb0FnQkJnQUVnQmlBTGJFR0FBMndRQnhvTUFnc2dBQ2dDdkFrZ0JpQUpiRUhZQVd4cUlRZ2dCQVJBSUFRaEF3TkFJQWdnQTBGL2FpSURRZGdCYkdvaUNpQUJJQWtnQXlBQ0lBY1FGaUFLUVFFMkFzUUJJQUFnQUNnQ3RBbEJBV28yQXJRSklBTU5BQXNMSUFSQkFXb2lBeUFHU1FSQUEwQWdDQ0FEUWRnQmJHb2lCQ2dDeEFGRkJFQWdCQ0FCSUFrZ0F5QUNJQWNRRmlBRVFRRTJBc1FCSUFBZ0FDZ0N0QWxCQVdvMkFyUUpDeUFEUVFGcUlnTWdCa2NOQUFzTEFrQWdDVVVOQUNBR1JRMEFRUUFoQlNBSlFYOXFJZ3dnQm13aERTQU1SUVJBQTBBZ0FDZ0N2QWtnRFVIWUFXeHFJQVZCMkFGc2FpSUVJQUZCQUNBRklBSWdCeEFXSUFSQkFUWUN4QUVnQUNBQUtBSzBDVUVCYWpZQ3RBa2dCVUVCYWlJRklBWkhEUUFNQWdBTEFBc2dDVUYrYWlFSVFRQWdCbXRCMkFGc0lRNERRQ0FBS0FLOENTQU5RZGdCYkdvZ0JVSFlBV3hxSWdNZ0FTQU1JQVVnQWlBSEVCWWdBMEVCTmdMRUFTQUFJQUFvQXJRSlFRRnFOZ0swQ1NBSUlRUURRQ0FESUE1cUlnTWdBU0FFSWdvZ0JTQUNJQWNRRmlBRFFRRTJBc1FCSUFBZ0FDZ0N0QWxCQVdvMkFyUUpJQVJCZjJvaEJDQUtEUUFMSUFWQkFXb2lCU0FHUncwQUN3c2dDVUVCYWlJRklBdFBEUUlnQmtVTkFnTkFJQUFvQXJ3SklBVWdCbXhCMkFGc2FpRUlRUUFoQXdOQUlBZ2dBMEhZQVd4cUlnUW9Bc1FCUlFSQUlBUWdBU0FGSUFNZ0FpQUhFQllnQkVFQk5nTEVBU0FBSUFBb0FyUUpRUUZxTmdLMENRc2dBMEVCYWlJRElBWkhEUUFMSUFWQkFXb2lCU0FMUncwQUN3d0NDeUFCS0FJQUlBY2dCaUFMYkVHQUEyd1FGUm9MSUFBZ0FDZ0NtQWtpQVRZQ3RBa2dBVVVOQUNBQUtBSzhDU0VBUVFBaEF3TkFJQUFnQTBIWUFXeHFRUUUyQWdnZ0EwRUJhaUlESUFGSERRQUxDd3MyQVFKL0lBQW9BaWdpQWdSQUEwQWdBQ2dDQkNBQlFRSjBhaUFBS0FJQUlBRkJLR3hxTmdJQUlBRkJBV29pQVNBQ1J3MEFDd3NMOXdRQ0RIOEJma0VISVFVakFFRWdheUlJSVF3RFFDQUZJQUZKQkVBZ0FFRUFJQVZyUVNoc2FpRUtJQVVoQmdOQUlBQWdCa0VvYkdvaUFpZ0NDQ0VKSUFJcEFnQWhEaUFJSUFJcEFndzNBeGdnQWlnQ0dDRU5JQUlvQWhRaEN5QU1JQUlvQWlRMkFoQWdDQ0FDS1FJY053TUlBa0FnQmlJRElBVkpEUUFDUUNBTFJRUkFBMEFnQ2lBRFFTaHNJZ0pxSWdRb0FoUU5BaUFOUlEwQ0lBUW9BaGdOQWlBQUlBSnFJZ1FnQUNBRElBVnJJZ05CS0d4cUlnSXBBZ0EzQWdBZ0JDQUNLUUlnTndJZ0lBUWdBaWtDR0RjQ0dDQUVJQUlwQWhBM0FoQWdCQ0FDS1FJSU53SUlJQU1nQlU4TkFBd0RBQXNBQ3lBTFFYOXFRUUZOQkVBRFFBSi9Ba0FnQ2lBRFFTaHNJZ0pxSWdRb0FoUWlCMFVOQUNBSFFYOXFRUUZMRFFBZ0JDZ0NDQ0lISUFsS0RRUWdBQ0FDYWlJRUlBY2dDVWdOQVJvZ0JDRUNEQVVMSUFBZ0Ftb0xJZ1FnQUNBRElBVnJJZ05CS0d4cUlnSXBBZ0EzQWdBZ0JDQUNLUUlnTndJZ0lBUWdBaWtDR0RjQ0dDQUVJQUlwQWhBM0FoQWdCQ0FDS1FJSU53SUlJQU1nQlU4TkFBd0RBQXNBQ3dOQUlBb2dBMEVvYkNJQ2FpSUVLQUlVSWdjRVFDQUhRWDlxUVFKSkRRSWdCQ2dDQ0NBSlRBMENDeUFBSUFKcUlnUWdBQ0FESUFWcklnTkJLR3hxSWdJcEFnQTNBZ0FnQkNBQ0tRSWdOd0lnSUFRZ0Fpa0NHRGNDR0NBRUlBSXBBaEEzQWhBZ0JDQUNLUUlJTndJSUlBTWdCVThOQUFzTUFRc2dBQ0FEUVNoc2FpRUNDeUFDSUE0M0FnQWdBQ0FEUVNoc2FpSURJQWsyQWdnZ0NDa0RHQ0VPSUFNZ0RUWUNHQ0FESUFzMkFoUWdBeUFPTndJTUlBTWdDQ2tEQ0RjQ0hDQURJQXdvQWhBMkFpUWdCa0VCYWlJR0lBRkhEUUFMQ3lBRlFRRjJJZ1VOQUFzTHJRVUJBWDhDUUNBQUtBSUFJZ0VvQWhSRkRRQWdBVUVBTmdJVUlBRW9BaGdOQUNBQUlBQW9BaXhCZjJvMkFpd0xBa0FnQVNnQ1BFVU5BQ0FCUVFBMkFqd2dBVUZBYXlnQ0FBMEFJQUFnQUNnQ0xFRi9hallDTEFzQ1FDQUJLQUprUlEwQUlBRkJBRFlDWkNBQktBSm9EUUFnQUNBQUtBSXNRWDlxTmdJc0N3SkFJQUVvQW93QlJRMEFJQUZCQURZQ2pBRWdBU2dDa0FFTkFDQUFJQUFvQWl4QmYybzJBaXdMQWtBZ0FTZ0N0QUZGRFFBZ0FVRUFOZ0swQVNBQktBSzRBUTBBSUFBZ0FDZ0NMRUYvYWpZQ0xBc0NRQ0FCS0FMY0FVVU5BQ0FCUVFBMkF0d0JJQUVvQXVBQkRRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3dKQUlBRW9Bb1FDUlEwQUlBRkJBRFlDaEFJZ0FTZ0NpQUlOQUNBQUlBQW9BaXhCZjJvMkFpd0xBa0FnQVNnQ3JBSkZEUUFnQVVFQU5nS3NBaUFCS0FLd0FnMEFJQUFnQUNnQ0xFRi9hallDTEFzQ1FDQUJLQUxVQWtVTkFDQUJRUUEyQXRRQ0lBRW9BdGdDRFFBZ0FDQUFLQUlzUVg5cU5nSXNDd0pBSUFFb0F2d0NSUTBBSUFGQkFEWUMvQUlnQVNnQ2dBTU5BQ0FBSUFBb0FpeEJmMm8yQWl3TEFrQWdBU2dDcEFORkRRQWdBVUVBTmdLa0F5QUJLQUtvQXcwQUlBQWdBQ2dDTEVGL2FqWUNMQXNDUUNBQktBTE1BMFVOQUNBQlFRQTJBc3dESUFFb0F0QUREUUFnQUNBQUtBSXNRWDlxTmdJc0N3SkFJQUVvQXZRRFJRMEFJQUZCQURZQzlBTWdBU2dDK0FNTkFDQUFJQUFvQWl4QmYybzJBaXdMQWtBZ0FTZ0NuQVJGRFFBZ0FVRUFOZ0tjQkNBQktBS2dCQTBBSUFBZ0FDZ0NMRUYvYWpZQ0xBc0NRQ0FCS0FMRUJFVU5BQ0FCUVFBMkFzUUVJQUVvQXNnRURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3dKQUlBRW9BdXdFUlEwQUlBRkJBRFlDN0FRZ0FTZ0M4QVFOQUNBQUlBQW9BaXhCZjJvMkFpd0xBMEFnQUJCZVJRMEFDeUFBUVFBMkFqQWdBRUwvL3dNM0FpUUwzUTRCQ1g4Z0FpZ0NBQ0FBS0FJSUlnSW9BZ0JHQkVBZ0FFRUFOZ0kwSUFBb0FqZ2lDMFVoRFFKQUlBRkZCRUFnQWlBRE5nSU1JQUpCQURZQ0ZDQUNJQTAyQWhnZ0FpQUVOZ0lRSUFJZ0F6WUNDQ0FMRFFFZ0FDQUFLQUlzUVFGcU5nSXNEQUVMSUFVRVFDQUFRZ0EzQWhBZ0FCQW9Ba0FnQVNnQ0FFVUVRQ0FBS0FJNFJRMEJDeUFBUWdBM0FoQUxJQUFvQWdnaUFrRURRUUlnQVNnQ0JDSUJHellDRkNBQVFRQkIvLzhESUFFYk5nSWtJQUlnRFRZQ0dDQUNRUUEyQWhBZ0FrSUFOd0lJSUFCQ2dZQ0FnQkEzQWlnTUFRc0NRQUpBQWtBZ0FTZ0NDQVJBUVFBaEN3TkFJQUVnQzBFVWJHb2lDQ2dDRENJQ1FRWkxEUUlDUUFKQUFrQUNRQUpBQWtBQ1FDQUNRUUZyRGdZQUFRSURCQVVKQ3lBQUtBSVlJZ2xGRFFnZ0F5QUlLQUlRYXlFTUlBQW9BZ0FoQ2tFQUlRZ0RRQUpBSUFvZ0NFRW9iR29pQWlnQ0ZFRi9ha0VCVFFSQUlBSW9BZ2dnREVZTkFRc2dDRUVCYWlJSUlBbEhEUUVNQ2dzTElBaEJBRWdOQ0NBQ1FRQTJBaFFnQUNBQUtBSW9RWDlxTmdJb0lBSW9BaGdOQlNBQUlBQW9BaXhCZjJvMkFpd2dDMEVCYWlFTERBWUxJQUFvQWhnaUNVVU5CeUFJS0FJVUlRd2dBQ2dDQUNFS1FRQWhDQU5BQWtBZ0NpQUlRU2hzYWlJQ0tBSVVRUU5HQkVBZ0FpZ0NDQ0FNUmcwQkN5QUlRUUZxSWdnZ0NVY05BUXdKQ3dzZ0NFRUFTQTBISUFKQkFEWUNGQ0FBSUFBb0FpaEJmMm8yQWlnZ0FpZ0NHQTBFSUFBZ0FDZ0NMRUYvYWpZQ0xDQUxRUUZxSVFzTUJRc2dBQ2dDSkNJQ1FmLy9BMFlOQmlBQ0lBZ29BaGdpREVrTkJpQUFLQUlZSWdsRkRRWWdDQ2dDRUNFT0lBQW9BZ0FoQ2tFQUlRSURRQUpBQWtBZ0NpQUNRU2hzYWlJSUtBSVVRUU5IRFFBZ0NDZ0NDQ0FNUncwQUlBaEJBRFlDRkNBQUlBQW9BaWhCZjJvMkFpZ2dDQ2dDR0EwQklBQWdBQ2dDTEVGL2FqWUNMQXdCQ3lBQ1FRRnFJZ0lnQ1VjTkFRc0xJQWxCQVNBSlFRRkxHeUVKSUFNZ0Rtc2hEa0VBSVFnRFFBSkFJQW9nQ0VFb2JHb2lBaWdDRkNJUFFYOXFRUUZOQkVBZ0FpZ0NDQ0FPUmcwQkN5QUlRUUZxSWdnZ0NVY05BUXdJQ3dzZ0NFRUFTQTBHSUE5QkFra05CaUFDUVFNMkFoUWdBaUFNTmdJSUlBdEJBV29oQ3d3RUN5QUFJQWdvQWh3aUNUWUNKQ0FBS0FJWUlneEZEUUlnQUNnQ0FDRUtRUUFoQWlBSlFmLy9BMFlFUUFOQUFrQWdDaUFDUVNoc2FpSUlLQUlVUVFOSERRQWdDRUVBTmdJVUlBQWdBQ2dDS0VGL2FqWUNLQ0FJS0FJWURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3lBQ1FRRnFJZ0lnREVjTkFBd0VBQXNBQ3dOQUFrQWdDaUFDUVNoc2FpSUlLQUlVUVFOSERRQWdDQ2dDQ0NBSlRRMEFJQWhCQURZQ0ZDQUFJQUFvQWloQmYybzJBaWdnQ0NnQ0dBMEFJQUFnQUNnQ0xFRi9hallDTEFzZ0FrRUJhaUlDSUF4SERRQUxEQUlMSUFBUUtDQUFRUUUyQWpSQkFDRURJQXRCQVdvaEN3d0NDeUFBS0FJa0lnSkIvLzhEUmcwRElBSWdDQ2dDR0NJTVNRMERJQUFvQWhnaUNrVU5BeUFBS0FJQUlRaEJBQ0VDQWtBRFFBSkFJQWdnQWtFb2JHb2lDU2dDRkVFRFJ3MEFJQWtvQWdnZ0RFY05BQ0FKUVFBMkFoUWdBQ0FBS0FJb1FYOXFJZ2cyQWlnZ0NTZ0NHQTBDSUFBZ0FDZ0NMRUYvYWpZQ0xBd0NDeUFDUVFGcUlnSWdDa2NOQUFzZ0FDZ0NLQ0VJQ3lBSUlBcFBEUU1nQUNnQ0NDSUNRUU0yQWhRZ0FpQUVOZ0lRSUFJZ0REWUNDQ0FDSUFNMkFnd2dBaUFBS0FJNFJUWUNHRUVCSVJBZ0FDQUlRUUZxTmdJb0lBQWdBQ2dDTEVFQmFqWUNMQXNnQzBFQmFpRUxEQUFBQ3dBTFFRQWhBaUFBS0FJb0lna2dBQ2dDR0NJTFNRMEJJQWxGQkVCQkFDRUpEQUlMSUFBb0FnQWhERUYvSVFFRFFDQU1JQUpCS0d4cUlnb29BaFJCZjJwQkFVMEVRQ0FLS0FJSUlnb2dDQ0FCUVg5R0lBb2dDRWh5SWdvYklRZ2dBaUFCSUFvYklRRUxJQUpCQVdvaUFpQUpSdzBBQ3lBQlFRQklEUUVnRENBQlFTaHNhaUlCUVFBMkFoUWdBQ0FKUVg5cUlnazJBaWdnQVNnQ0dBMEJJQUFnQUNnQ0xFRi9hallDTEF3QkN5QVFEUUVnQUNnQ0dDRUxJQUFvQWlnaENRc2dDU0FMVHcwQklBQW9BZ2dpQVNBTk5nSVlJQUZCQWpZQ0ZDQUJJQVEyQWhBZ0FTQUROZ0lJSUFFZ0F6WUNEQ0FBSUFsQkFXbzJBaWdnQUNBQUtBSXNRUUZxTmdJc0N3c2dBQ2dDQ0NJQklBYzJBaUFnQVNBR05nSWNJQUVnQlRZQ0pBSkFJQUFvQWpoRkJFQWdBQ2dDTENJSklBQW9BaHdpQTAwTkFTQUFLQUlBSVFRRFFFSC8vLy8vQnlFRlFRQWhCa0VBSVFJRFFDQUVJQUpCS0d4cUlnRW9BaGdFUUNBQklBWWdBU2dDRUNJQklBVklJZ2NiSVFZZ0FTQUZJQWNiSVFVTElBSkJBV29pQWlBRFRRMEFDd0pBSUFaRkRRQWdBQ2dDRENBQUtBSVFJZ0pCQkhScUlnRWdCaWdDQURZQ0FDQUJJQVlvQWlRMkFnd2dBU0FHS0FJY05nSUVJQUVnQmlnQ0lEWUNDQ0FBSUFKQkFXbzJBaEFnQmtFQU5nSVlJQVlvQWhRTkFDQUFJQWxCZjJvaUNUWUNMQXNnQ1NBRFN3MEFDd3dCQ3lBQktBSUFJUUlnQUNnQ0RDQUFLQUlRSWdOQkJIUnFJZ0VnQlRZQ0RDQUJJQUkyQWdBZ0FTQUhOZ0lJSUFFZ0JqWUNCQ0FBSUFOQkFXbzJBaEFnQUNnQ0hDRURDeUFBS0FJQUlBTkJBV29RSndzTDFBc0NBbjhCZmlNQVFaQUJheUlFSkFBZ0JFRUFOZ0lNQWtBQ1FBSkFJQUFvQXBBYVJRMEFJQUFvQXBRYUlBRkhEUUFnQkNBQVFhUWFhaWtDQURjREdDQUFLUUtjR2lFR0lBUkJBRFlDR0NBRUlBWTNBeEFnQkVFQU5nSWdJQVFnQmo0Q0ZDQURJQUFvQXBnYU5nSUFEQUVMUVFNaEJTQUJJQUlnQkVFUWFpQURFR01OQVNBQUlBUXBBeEEzQXB3YUlBQkJyQnBxSUFRb0FpQTJBZ0FnQUVHa0dtb2dCQ2tER0RjQ0FDQURLQUlBSVFJZ0FDQUJOZ0tVR2lBQUlBSTJBcGdhQzBFQUlRVWdBRUVBTmdLUUdpQUVRUkJxSUFSQmlBRnFFRThFUUVFRElRVU1BUXNnQkNnQ2lBRkJmMnBCQzBzTkFDQUVRUkJxSUFSQmlBRnFJQUFnQkVFTWFoQXlJZ0VFUUVFRUlRVWdBVUh3L3dOR0RRRkJBeUVGREFFTEFrQWdCQ2dDREFSQUFrQWdBQ2dDb0FsRkRRQWdBQ2dDRUVVTkFFRURJUVVnQUNnQ3RCb05Bd0pBSUFBb0FxUUpSUVJBSUFCQnhBbHFJZ0lpQVNBQktBSUFJQUVvQWh4QktHeHFJZ0UyQWdnZ0FDQUJLQUlBTmdLNENpQUNFQ1lnQUNBQVFiZ0tha0VBRUNVTUFRc2dBQ0FBUWJnS2FpQUFRZHdLYWlnQ0FCQWxDeUFEUVFBMkFnQWdBRUVBTmdLY0NTQUFRUUUyQXBBYURBSUxJQUJCQURZQ25Ba2dBRUVBTmdLa0NRc2dCQ2dDaUFGQmYyb2lBVUVIU3cwQkFrQUNRQUpBSUFGQkFXc09Cd1FFQkFJRUFBRUNDeUFFUVJCcUlBUkJLR29RUXdSQUlBUW9BbEFRQkNBRVFRQTJBbEFnQkNnQ2ZCQUVJQVJCQURZQ2ZFRURJUVVNQkFzZ0FDQUVRU2hxRURjTUF3c2dCRUVRYWlBRVFTaHFFRXdFUUNBRUtBSThFQVFnQkVFQU5nSThJQVFvQWtBUUJDQUVRUUEyQWtBZ0JDZ0NSQkFFSUFSQkFEWUNSQ0FFS0FKVUVBUWdCRUVBTmdKVVFRTWhCUXdEQ3lBQUlBUkJLR29RTmd3Q0N5QUFLQUtjQ1EwQklBQkJBVFlDb0FrQ1FDQUFLQUtrQ1EwQUlBQkNBRGNDdEFrZ0JFRVFhaUFFUVNocUVDQWFJQUFvQWdnaEFTQUFJQVFvQWlnZ0JDZ0NpQUZCQlVZUU5TSUNCRUFnQUVLQWdvQ0FnQVEzQWdRZ0FFRUFOZ0swR2lBQVFnQTNBZ3hCQlVFRUlBSkIvLzhEUmhzaEJRd0RDeUFCSUFBb0FnaEdEUUFnQUNnQ0VDRUJJQVJCQVRZQ0NDQUFLQUlBSWdKQkgwMEVRQ0FBSUFKQkFuUnFLQUlVSVFVTElBTkJBRFlDQUNBQVFRRTJBcEFhQWtBQ1FBSkFJQVFvQW9nQlFRVkhEUUFnQkVFSWFpQUVRUkJxSUFFZ0FDZ0NEQkE0SUFRb0FnaHlEUUFnQlVVTkFDQUFRZndKYWlnQ0FBMEFJQVVvQWpRZ0FTZ0NORWNOQUNBRktBSTRJQUVvQWpoSERRQWdCU2dDV0NBQktBSllSZzBCQ3lBQVFZQUtha0VBTmdJQURBRUxJQUJCeEFscUVGa0xJQUFnQUNnQ0NEWUNBRUVDSVFVTUFnc2dBQ2dDdEJvRVFFRURJUVVNQWdzZ0JFRVFhaUFBUWJRU2FpSUNJQUFvQWhBZ0FDZ0NEQ0FFUVlnQmFoQStCRUJCQXlFRkRBSUxJQUFvQXFRSlJRUkFBa0FnQkNnQ2lBRkJCVVlOQUNBQVFjUUphaUFBUWNBU2FpZ0NBQ0FFS0FLTUFVRUFSeUFBS0FJUUtBSXdFRnBGRFFCQkF5RUZEQU1MSUFCQnhBbHFJZ0VnQVNnQ0FDQUJLQUljUVNoc2FpSUJOZ0lJSUFBZ0FTZ0NBRFlDdUFvTElBQkIyQXBxSUFKQjNBY1FGU0VCSUFCQkFUWUNwQWtnQUNBRUtRT0lBVGNDMEFvZ0FDZ0NsQWtnQUNnQ0RDQUFRWmdMYWlnQ0FDQUFLQUlRSWdJb0FqUWdBaWdDT0JBL0lBQkJ4QWxxSWdJUUppQUNJQUJCbkF0cUlBQkI1QXBxS0FJQUlBQkJoQXRxS0FJQUVGOEVRRUVESVFVTUFnc2dCRUVRYWlBQUlBQkJ1QXBxSUFFUVFRUkFJQUFnQUNnQzJBb1FRRUVESVFVTUFnc2dBQkF6UlEwQklBQkJBVFlDbkFrTElBQkJ1QXBxSWdFZ0FDZ0N2QWtRU1NBQUVEUWdBRUdFQ21vZ0FDZ0NFQ0FBUWRnS2FpQUFRZEFLYWhCTklRSUNRQ0FBS0FLa0NVVU5BQ0FBUWNRSmFpRURJQUJCMUFwcUtBSUFCRUFnQXlBQVFld01haUFCSUFCQjVBcHFLQUlBSUFJZ0FDZ0MwQXBCQlVZZ0FDZ0N1QWtnQUNnQ3RBa1FLUXdCQ3lBRFFRQWdBU0FBUWVRS2FpZ0NBQ0FDSUFBb0F0QUtRUVZHSUFBb0FyZ0pJQUFvQXJRSkVDa0xJQUJDQURjQ29BbEJBU0VGQ3lBRVFaQUJhaVFBSUFVTHFBd0JDMzhDUUNBQlFRUlBCRUJCQUNBRGF5SU5RUUYwSVFvQ1FDQUFJQU5ySWdVdEFBQWlCaUFBTFFBQUlnaHJJZ0VnQVVFZmRTSUJhaUFCY3lBQ0tBSUVJZ0ZQRFFBZ0FDQUthaTBBQUNJSElBWnJJZ1FnQkVFZmRTSUVhaUFFY3lBQ0tBSUlJZ3hQRFFBZ0FDQURhaTBBQUNJRUlBaHJJZ3NnQzBFZmRTSUxhaUFMY3lBTVR3MEFJQVVnQkNBR2FpQUhRUUYwYWtFQ2FrRUNkam9BQUNBQUlBZ2dCRUVCZEdvZ0IycEJBbXBCQW5ZNkFBQWdBaWdDQkNFQkN3SkFJQUJCQVdvaUJpQU5haUlNTFFBQUlnZ2dBQzBBQVNJSGF5SUVJQVJCSDNVaUJHb2dCSE1nQVU4TkFDQUdJQXBxTFFBQUlnUWdDR3NpQlNBRlFSOTFJZ1ZxSUFWeklBSW9BZ2dpQzA4TkFDQURJQVpxTFFBQUlnVWdCMnNpQ1NBSlFSOTFJZ2xxSUFseklBdFBEUUFnRENBRklBaHFJQVJCQVhScVFRSnFRUUoyT2dBQUlBWWdCeUFGUVFGMGFpQUVha0VDYWtFQ2Rqb0FBQ0FDS0FJRUlRRUxBa0FnQUVFQ2FpSUdJQTFxSWd3dEFBQWlDQ0FBTFFBQ0lnZHJJZ1FnQkVFZmRTSUVhaUFFY3lBQlR3MEFJQVlnQ21vdEFBQWlCQ0FJYXlJRklBVkJIM1VpQldvZ0JYTWdBaWdDQ0NJTFR3MEFJQU1nQm1vdEFBQWlCU0FIYXlJSklBbEJIM1VpQ1dvZ0NYTWdDMDhOQUNBTUlBVWdDR29nQkVFQmRHcEJBbXBCQW5ZNkFBQWdCaUFISUFWQkFYUnFJQVJxUVFKcVFRSjJPZ0FBSUFJb0FnUWhBUXNDUUNBQVFRTnFJZ1lnRFdvaURDMEFBQ0lJSUFBdEFBTWlCMnNpQkNBRVFSOTFJZ1JxSUFSeklBRlBEUUFnQmlBS2FpMEFBQ0lFSUFocklnVWdCVUVmZFNJRmFpQUZjeUFDS0FJSUlndFBEUUFnQXlBR2FpMEFBQ0lGSUFkcklna2dDVUVmZFNJSmFpQUpjeUFMVHcwQUlBd2dCU0FJYWlBRVFRRjBha0VDYWtFQ2Rqb0FBQ0FHSUFjZ0JVRUJkR29nQkdwQkFtcEJBblk2QUFBZ0FpZ0NCQ0VCQ3dKQUlBQkJCR29pQmlBTmFpSU1MUUFBSWdnZ0FDMEFCQ0lIYXlJRUlBUkJIM1VpQkdvZ0JITWdBVThOQUNBR0lBcHFMUUFBSWdRZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6SUFJb0FnZ2lDMDhOQUNBRElBWnFMUUFBSWdVZ0Iyc2lDU0FKUVI5MUlnbHFJQWx6SUF0UERRQWdEQ0FGSUFocUlBUkJBWFJxUVFKcVFRSjJPZ0FBSUFZZ0J5QUZRUUYwYWlBRWFrRUNha0VDZGpvQUFDQUNLQUlFSVFFTEFrQWdBRUVGYWlJR0lBMXFJZ3d0QUFBaUNDQUFMUUFGSWdkcklnUWdCRUVmZFNJRWFpQUVjeUFCVHcwQUlBWWdDbW90QUFBaUJDQUlheUlGSUFWQkgzVWlCV29nQlhNZ0FpZ0NDQ0lMVHcwQUlBTWdCbW90QUFBaUJTQUhheUlKSUFsQkgzVWlDV29nQ1hNZ0MwOE5BQ0FNSUFVZ0NHb2dCRUVCZEdwQkFtcEJBblk2QUFBZ0JpQUhJQVZCQVhScUlBUnFRUUpxUVFKMk9nQUFJQUlvQWdRaEFRc0NRQ0FBUVFacUlnWWdEV29pREMwQUFDSUlJQUF0QUFZaUIyc2lCQ0FFUVI5MUlnUnFJQVJ6SUFGUERRQWdCaUFLYWkwQUFDSUVJQWhySWdVZ0JVRWZkU0lGYWlBRmN5QUNLQUlJSWd0UERRQWdBeUFHYWkwQUFDSUZJQWRySWdrZ0NVRWZkU0lKYWlBSmN5QUxUdzBBSUF3Z0JTQUlhaUFFUVFGMGFrRUNha0VDZGpvQUFDQUdJQWNnQlVFQmRHb2dCR3BCQW1wQkFuWTZBQUFnQWlnQ0JDRUJDeUFOSUFCQkIyb2lEV29pQ0MwQUFDSUdJQUF0QUFjaUFHc2lCeUFIUVI5MUlnZHFJQWR6SUFGUERRRWdDaUFOYWkwQUFDSUJJQVpySWdvZ0NrRWZkU0lLYWlBS2N5QUNLQUlJSWdwUERRRWdBeUFOYWkwQUFDSUNJQUJySWdNZ0EwRWZkU0lEYWlBRGN5QUtUdzBCSUFnZ0FpQUdhaUFCUVFGMGFrRUNha0VDZGpvQUFDQU5JQUFnQWtFQmRHb2dBV3BCQW1wQkFuWTZBQUFQQzBFQUlBTnJJZ2RCQVhRaEJDQUJJQUlvQWdCcVFYOXFMUUFBSWdGQkFXb2hCaUFCUVg5eklRaEJDQ0VCQTBBQ1FDQUFJQWRxSWdVdEFBQWlDaUFBTFFBQUlnMXJJZ3dnREVFZmRTSU1haUFNY3lBQ0tBSUVUdzBBSUFBZ0JHb3RBQUFpRENBS2F5SUxJQXRCSDNVaUMyb2dDM01nQWlnQ0NDSUxUdzBBSUFBZ0Eyb3RBQUFpQ1NBTmF5SU9JQTVCSDNVaURtb2dEbk1nQzA4TkFDQUZJQW9nQ0NBR0lBMGdDbXRCQW5RZ0NXc2dER3BCQkdwQkEzVWlDaUFLSUFaS0d5QUtJQWhJR3lJS2FrR3dMbW90QUFBNkFBQWdBQ0FOSUFwclFiQXVhaTBBQURvQUFBc2dBRUVCYWlFQUlBRkJmMm9pQVEwQUN3c0w2Z2dCQW44Z0FVRUFRYmdIRUFjaEFrRUJJUUVDUUFKQUlBQkJBUkFESWdOQmYwWU5BQ0FDSUFOQkFVWTJBZ0FDUUNBRFFRRkhEUUFnQUVFSUVBTWlBMEYvUmcwQklBSWdBellDQkNBRFFmOEJSdzBBSUFCQkVCQURJZ05CZjBZTkFTQUNJQU0yQWdnZ0FFRVFFQU1pQTBGL1JnMEJJQUlnQXpZQ0RBc2dBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDRUNBRFFRRkdCRUFnQUVFQkVBTWlBMEYvUmcwQklBSWdBMEVCUmpZQ0ZBc2dBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDR0FKQUFrQWdBMEVCUmdSQUlBQkJBeEFESWdOQmYwWU5BeUFDSUFNMkFod2dBRUVCRUFNaUEwRi9SZzBESUFJZ0EwRUJSallDSUNBQVFRRVFBeUlEUVg5R0RRTWdBaUFEUVFGR05nSWtJQU5CQVVjTkFTQUFRUWdRQXlJRFFYOUdEUU1nQWlBRE5nSW9JQUJCQ0JBRElnTkJmMFlOQXlBQ0lBTTJBaXdnQUVFSUVBTWlBMEYvUncwQ0RBTUxJQUpCQlRZQ0hBc2dBa0tDZ0lDQUlEY0NLRUVDSVFNTElBSWdBellDTUNBQVFRRVFBeUlEUVg5R0RRQWdBaUFEUVFGR05nSTBBa0FnQTBFQlJ3MEFJQUFnQWtFNGFoQUNJZ0VOQVNBQ0tBSTRRUVZMRFFJZ0FDQUNRVHhxRUFJaUFRMEJJQUlvQWp4QkJVME5BQXdDQzBFQklRRWdBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDUUNBRFFRRkdCRUFnQUJBUElRRWdBRUVnRUFzaEF5QUJSUTBDSUFOQmYwWU5BaUFDSUFFMkFrUWdBQkFQSVFFZ0FFRWdFQXNoQXlBQlJRMENJQU5CZjBZTkFpQUNJQUUyQWtoQkFTRUJJQUJCQVJBRElnTkJmMFlOQVNBQ0lBTkJBVVkyQWt3TElBQkJBUkFESWdOQmYwWU5BQ0FDSUFOQkFVWTJBbEFDUUNBRFFRRkdCRUFnQUNBQ1FkUUFhaEFjSWdGRkRRRU1BZ3NnQWtFQk5nSlVJQUpDbUlDQWdJQUROd0xvQXlBQ1FwaUFnSUNBQXpjQzRBTWdBa0dCa0txSkFUWUM0QUVnQWtHQmtLcUpBVFlDWUF0QkFTRUJJQUJCQVJBRElnTkJmMFlOQUNBQ0lBTkJBVVkyQXZBREFrQWdBMEVCUmdSQUlBQWdBa0gwQTJvUUhDSUJSUTBCREFJTElBSkJBVFlDOUFNZ0FrS1lnSUNBZ0FNM0FvZ0hJQUpDbUlDQWdJQUROd0tBQnlBQ1FZRzR1UElBTmdLQUJTQUNRWUc0dVBJQU5nS0FCQXNDUUNBQ0tBSlFSUVJBSUFJb0F2QURSUTBCQzBFQklRRWdBRUVCRUFNaUEwRi9SZzBCSUFJZ0EwRUJSallDa0FjTFFRRWhBU0FBUVFFUUF5SURRWDlHRFFBZ0FpQURRUUZHTmdLVUJ5QUFRUUVRQXlJRFFYOUdEUUFnQWlBRFFRRkdOZ0tZQndKQUlBTkJBVVlFUUNBQVFRRVFBeUlEUVg5R0RRSWdBaUFEUVFGR05nS2NCeUFBSUFKQm9BZHFFQUlpQVEwQ0lBSW9BcUFIUVJCTERRTWdBQ0FDUWFRSGFoQUNJZ0VOQWlBQ0tBS2tCMEVRU3cwRElBQWdBa0dvQjJvUUFpSUJEUUlnQWlnQ3FBZEJFRXNOQXlBQUlBSkJyQWRxRUFJaUFRMENRUUVoQVNBQ0tBS3NCMEVRU3cwQ0lBQWdBa0d3QjJvUUFpSUJEUUlnQUNBQ1FiUUhhaEFDSWdGRkRRRU1BZ3NnQWtFUU5nSzBCeUFDUXBDQWdJQ0FBamNDckFjZ0FrS0JnSUNBZ0FJM0FxUUhJQUpDZ1lDQWdDQTNBcHdIQzBFQUlRRUxJQUVQQzBFQkMwMEJBbjhqQUVFUWF5SURKQUJCQVNFRUFrQWdBQ0FEUVF4cUVBSU5BQ0FES0FJTUlnQkJMMHNOQUNBQlFkQS9RWURBQUNBQ0d5QUFhaTBBQURZQ0FFRUFJUVFMSUFOQkVHb2tBQ0FFQ3o0QkFuOENRQ0FBS0FJTVFRTjBJQUFvQWhCcklnRkZCRUFNQVF0QkFTRUNJQUZCQ0VzTkFFRUJJQUZCZjJwMElBQVFEMEVnSUFGcmRrY1BDeUFDQ3pJQkFuOENRRUdBZ0lEQUFDSUJJQUJ4RFFBRFFDQUNRUUZxSVFJZ0FVRUJkaUlCUlEwQklBQWdBWEZGRFFBTEN5QUNDNG9DQVFkL0lBRkJvRDFxTFFBQVFReHNRZEE4YWlnQ0FDRUNRUUVoQXlBQlFRWlBCRUJCQUNFRElBSWdBVUdRUEdvdEFBQkJmMnAwSVFJTElBQWdBQ2dDQUNJQklBQW9BZ2dpQkdzaUJTQUFLQUlFSWdZZ0FDZ0NEQ0lIYXlJSWF5QUNiQ0FEZFRZQ0RDQUFJQVVnQ0dvZ0Ftd2dBM1UyQWdnZ0FDQUJJQVJxSWdFZ0JpQUhhaUlFYXlBQ2JDQURkVFlDQkNBQUlBRWdCR29nQW13Z0EzVTJBZ0FnQUNBQUtBSWNJZ0VnQUNnQ0ZDSUVhaUlGSUFBb0FoZ2lCaUFBS0FJUUlnZHFJZ2hxSUFKc0lBTjFOZ0lRSUFBZ0JDQUJheUlCSUFjZ0Jtc2lCR29nQW13Z0EzVTJBaGdnQUNBSUlBVnJJQUpzSUFOMU5nSVVJQUFnQkNBQmF5QUNiQ0FEZFRZQ0hBdlBDQUVVZnlBQUlBQW9BaXdpQWlBQUtBSU1JZ1pxSWdVZ0FDZ0NOQ0lFSUFBb0FpQWlFR29pQ21zaUVUWUNMQ0FBS0FJb0lRTWdBQ0FHSUFKcklnY2dFQ0FFYXlJRWF5SUdOZ0lvSUFBb0FpUWhBaUFBSUFRZ0Iyb2lCRFlDSkNBQUlBVWdDbW9pQlRZQ0lDQUFJQUFvQWh3aUNpQUFLQUlJSWdkcUlnZ2dBQ2dDTUNJTUlBQW9BaEFpQ1dvaUMyc2lFRFlDSENBQUtBSVlJUThnQUNBSElBcHJJZ2NnQ1NBTWF5SU1heUlLTmdJWUlBQW9BaFFoQ1NBQUlBY2dER29pQnpZQ0ZDQUFJQWdnQzJvaUNEWUNFQ0FBSUFrZ0FDZ0NBQ0lMYWlJU0lBOGdBQ2dDQkNJTmFpSU9heUlNTmdJTUlBQWdDeUFKYXlJSklBMGdEMnNpQzJzaUR6WUNDQ0FBSUFrZ0Myb2lDVFlDQkNBQUlBNGdFbW9pQ3pZQ0FDQUFJQUlnQUNnQ09DSU5haUlUSUFNZ0FDZ0NQQ0lPYWlJVWF5SVNOZ0k4SUFBZ0FpQU5heUlDSUFNZ0Rtc2lBMnNpRFRZQ09DQUFJQUlnQTJvaURqWUNOQ0FBSUJNZ0ZHb2lFellDTUNBQlFaQThhaTBBQUNFQ0lBRkJvRDFxTFFBQVFReHNRZEE4YWlnQ0FDRURJQUZCREU4RVFDQUFJQU1nQWtGK2FuUWlBU0FGSUF0cUlnTWdDQ0FUYWlJQ2EydzJBakFnQUNBTElBVnJJZ1VnQ0NBVGF5SUlheUFCYkRZQ0lDQUFJQVVnQ0dvZ0FXdzJBaEFnQUNBQ0lBTnFJQUZzTmdJQUlBQWdCQ0FKYWlJRElBY2dEbW9pQW1zZ0FXdzJBalFnQUNBSklBUnJJZ1FnQnlBT2F5SUZheUFCYkRZQ0pDQUFJQVFnQldvZ0FXdzJBaFFnQUNBQ0lBTnFJQUZzTmdJRUlBQWdCaUFQYWlJRElBb2dEV29pQW1zZ0FXdzJBamdnQUNBUElBWnJJZ1lnQ2lBTmF5SUVheUFCYkRZQ0tDQUFJQVFnQm1vZ0FXdzJBaGdnQUNBQ0lBTnFJQUZzTmdJSUlBQWdEQ0FSYXlJRElCQWdFbXNpQW1zZ0FXdzJBaXdnQUNBQ0lBTnFJQUZzTmdJY0lBQWdFQ0FTYWlJRElBd2dFV29pQW1vZ0FXdzJBZ3dnQUNBQ0lBTnJJQUZzTmdJOER3c2dBRUVCUVFJZ0FVRjZha0VHU1JzaUFTQUZJQXRxSWhRZ0NDQVRhaUlWYXlBRGJHcEJBaUFDYXlJQ2RUWUNNQ0FBSUFzZ0JXc2lCU0FJSUJOcklnaHJJQU5zSUFGcUlBSjFOZ0lnSUFBZ0JTQUlhaUFEYkNBQmFpQUNkVFlDRUNBQUlCUWdGV29nQTJ3Z0FXb2dBblUyQWdBZ0FDQUVJQWxxSWdVZ0J5QU9haUlJYXlBRGJDQUJhaUFDZFRZQ05DQUFJQWtnQkdzaUJDQUhJQTVySWdkcklBTnNJQUZxSUFKMU5nSWtJQUFnQkNBSGFpQURiQ0FCYWlBQ2RUWUNGQ0FBSUFVZ0NHb2dBMndnQVdvZ0FuVTJBZ1FnQUNBR0lBOXFJZ1FnQ2lBTmFpSUZheUFEYkNBQmFpQUNkVFlDT0NBQUlBOGdCbXNpQmlBS0lBMXJJZ3BySUFOc0lBRnFJQUoxTmdJb0lBQWdCaUFLYWlBRGJDQUJhaUFDZFRZQ0dDQUFJQVFnQldvZ0Eyd2dBV29nQW5VMkFnZ2dBQ0FNSUJGcklnWWdFQ0FTYXlJRWF5QURiQ0FCYWlBQ2RUWUNMQ0FBSUFRZ0Jtb2dBMndnQVdvZ0FuVTJBaHdnQUNBUUlCSnFJZ1lnRENBUmFpSVJhaUFEYkNBQmFpQUNkVFlDRENBQUlCRWdCbXNnQTJ3Z0FXb2dBblUyQWp3THZRVUJCbjhqQUVFZ2F5SUZKQUFnQTBFQU5nSUFBa0FnQVNnQ0FDSUdRUkpMRFFCQkFTQUdkQ0lHUWNEZkgzRkZCRUFnQmtFaWNVVU5BU0FDUWJRS2FpZ0NBQVJBSUFOQkFUWUNBQ0FDUVFBMkFyUUtDeUFBSUFWQkhHb1FJQ0lFRFFGQjhQOERJUVFnQWlBRktBSWNRUUowYWlnQ2xBRWlDRVVOQVNBQ0lBZ29BZ1FpQmtFQ2RHb29BaFFpQjBVTkFRSkFJQUlvQWdnaUNVRWdSZzBBSUFZZ0NVWU5BQ0FCS0FJQVFRVkhEUUlMQWtBZ0FrR1lDbW9vQWdBaUJDQUJLQUlFSWdaR0RRQWdCRUVBSUFZYkRRQWdBMEVCTmdJQUN5QUJLQUlBSVFRQ1FBSkFJQUlvQXBRS1FRVkdCRUFnQkVFRlJ3MEJEQUlMSUFSQkJVY05BUXNnQTBFQk5nSUFDMEVCSVFRZ0FDQUhLQUlNSUFWQkdHb1FQUTBCSUFVb0FoZ2lCaUFDUVp3S2FpZ0NBRWNFUUNBQ0lBWTJBcHdLSUFOQkFUWUNBQXNnQVNnQ0FFRUZSZ1JBSUFBZ0J5Z0NEQ0FGUVJScUVEd05BZ0pBSUFJb0FwUUtRUVZIQkVBZ0JTZ0NGQ0VFREFFTElBSkJvQXBxS0FJQUlnUWdCU2dDRkNJR1JnMEFJQU5CQVRZQ0FDQUdJUVFMSUFKQm9BcHFJQVEyQWdBTEFrQWdCeWdDRUNJRVFRRkxEUUFnQkVFQmF3UkFRUUVoQkNBQUlBY2dBU2dDQUNBRlFRaHFFRHNOQXlBRktBSUlJZ1FnQWtHa0Ntb29BZ0JIQkVBZ0FpQUVOZ0trQ2lBRFFRRTJBZ0FMSUFnb0FnaEZEUUVnQUNBSElBRW9BZ0FnQlVFUWFoQTZJZ1FOQXlBRktBSVFJZ0FnQWtHb0Ntb29BZ0JHRFFFZ0FpQUFOZ0tvQ2lBRFFRRTJBZ0FNQVFzZ0J5Z0NHQTBBSUFBZ0J5QUJLQUlBSUFnb0FnZ2dCVUVJYWhBNUlnUU5BaUFGS0FJSUlnQWdBa0dzQ21vb0FnQkhCRUFnQWlBQU5nS3NDaUFEUVFFMkFnQUxJQWdvQWdoRkRRQWdCU2dDRENJQUlBSkJzQXBxS0FJQVJnMEFJQUlnQURZQ3NBb2dBMEVCTmdJQUN5QUNJQUVwQWdBM0FwUUtRUUFoQkF3QkN5QURRUUUyQWdBTElBVkJJR29rQUNBRUMzOEJBMzhDUUFKQUFrQWdBRUg4Q21vb0FnQUVRQ0FBS0FLWUNTSUREUUZCQVE4TFFRRWhBU0FBUWF3SmFpZ0NBQ0FBS0FLWUNVY05BUXdDQ3lBQUtBSzhDU0VCUVFBaEFBTkFJQUlnQVNBQVFkZ0JiR29vQXNRQlFRQkhhaUVDSUFCQkFXb2lBQ0FEUncwQUMwRUJJUUVnQWlBRFJnMEJDMEVBSVFFTElBRUxTZ0VEZnlBQVFnQTNBcWdKSUFBb0FwZ0pJZ0VFUUNBQUtBSzhDU0VDUVFBaEFBTkFJQUlnQUVIWUFXeHFJZ05CQURZQ3hBRWdBMEVBTmdJRUlBQkJBV29pQUNBQlJ3MEFDd3NMZ3dZQkRIOUJBU0VHQWtBZ0FDQUJRUUowYWlnQ2xBRWlCRVVOQUNBQUlBUW9BZ1FpQ1VFQ2RHb2lDa0VVYWlnQ0FDSURSUTBBQWtBZ0JDZ0NEQ0lGUVFKSkRRQWdBeWdDTkNJSElBTW9BamhzSVFnQ1FDQUVLQUlRSWdOQkFrc05BQUpBQWtBQ1FDQURRUUZyRGdJREFBRUxJQVZCZjJvaEN5QUVLQUljSVF3Z0JDZ0NHQ0VOUVFBaEF3d0JDeUFFS0FJVUlRZEJBQ0VEQTBBZ0J5QURRUUowYWlnQ0FDQUlUUVJBSUFVZ0EwRUJhaUlEUncwQkRBUUxDMEVCRHdzRFFDQU5JQU5CQW5RaUJXb29BZ0FpRGlBRklBeHFLQUlBSWdWTERRTWdCU0FJVHcwRElBNGdCM0FnQlNBSGNFMEVRQ0FEUVFGcUlnTWdDMFlOQXd3QkN3dEJBUThMSUFOQmZXcEJBazBFUUNBRUtBSWtJQWhORFFFTUFnc2dBMEVHUncwQUlBUW9BaWdnQ0VrTkFRc0NRQ0FBS0FJRUlnTkJnQUpHQkVBZ0FDQUVOZ0lNSUFBZ0FUWUNCQ0FBSUFrMkFnZ2dBQ0FLS0FJVUlnRTJBaEFnQVNnQ05DRUNJQUVvQWpnaEFTQUFRUUUyQXJRYUlBQkJ3QXBxSUFFMkFnQWdBRUc4Q21vZ0FqWUNBQ0FBSUFFZ0FtdzJBcGdKREFFTElBQW9BclFhQkVBZ0FFRUFOZ0swR2lBQUtBSzhDUkFFSUFCQkFEWUN2QWtnQUNnQ2xBa1FCQ0FBSUFBb0FwZ0pJZ0ZCMkFGc0lnUVFDaUlDTmdLOENTQUFJQUZCQW5RUUNpSUROZ0tVQ1VILy93TWhCaUFDUlEwQ0lBTkZEUUlnQWtFQUlBUVFCeUFBS0FJUUtBSTBJQUVRVGlBQUtBSVFJUUZCQVNFQ0FrQWdBQ2dDd0FrTkFDQUJLQUlRUVFKR0RRQUNRQ0FCS0FKUVJRMEFJQUVvQWxRaUJDZ0NtQWRGRFFBZ0JDZ0NzQWRGRFFFTFFRQWhBZ3NnQUVIRUNXb2dBU2dDT0NBQktBSTBiQ0FCS0FKWUlBRW9BaXdnQVNnQ0RDQUNFRndpQmtVTkFRd0NDeUFCSUFOR0RRQWdBQ2dDQ0NBSlJ3UkFJQUpGRFFJZ0FDQUVOZ0lNSUFBZ0FUWUNCQ0FBSUFrMkFnZ2dBQ0FLS0FJVUlnRTJBaEFnQVNnQ05DRUNJQUVvQWpnaEFTQUFRUUUyQXJRYUlBQkJ3QXBxSUFFMkFnQWdBRUc4Q21vZ0FqWUNBQ0FBSUFFZ0FtdzJBcGdKREFFTElBQWdCRFlDRENBQUlBRTJBZ1FMUVFBaEJnc2dCZ3UyQVFFRGZ3SkFJQUFnQVNnQ0FDSURRUUowYWlJQ0tBS1VBU0lFUlFSQUlBSkJ5QUFRQ2lJQU5nS1VBU0FBRFFFUEN3SkFJQU1nQUNnQ0JFY05BQ0FCS0FJRUlBQW9BZ2hHRFFBZ0FFR0JBallDQkFzZ0JDZ0NGQkFFSUFJb0FwUUJRUUEyQWhRZ0FpZ0NsQUVvQWhnUUJDQUNLQUtVQVVFQU5nSVlJQUlvQXBRQktBSWNFQVFnQWlnQ2xBRkJBRFlDSENBQ0tBS1VBU2dDTEJBRUlBSW9BcFFCUVFBMkFpd0xJQUlvQXBRQklBRkJ5QUFRRlJvTDFnRUJBMzhDUUNBQUlBRW9BZ2dpQTBFQ2RHb2lBaWdDRkNJRVJRUkFJQUpCM0FBUUNpSUFOZ0lVSUFBTkFROExJQUFvQWdnZ0EwWUVRQ0FCSUFBb0FoQVFRZ1JBSUFJb0FoUW9BaWdRQkNBQ0tBSVVRUUEyQWlnZ0FpZ0NGQ2dDVkJBRUlBSW9BaFJCQURZQ1ZDQUFRUUEyQWhBZ0FFR0JBallDQkNBQVFpRTNBZ2dNQWdzZ0FTZ0NLQkFFSUFGQkFEWUNLQ0FCS0FKVUVBUWdBVUVBTmdKVUR3c2dCQ2dDS0JBRUlBSW9BaFJCQURZQ0tDQUNLQUlVS0FKVUVBUWdBaWdDRkVFQU5nSlVDeUFDS0FJVUlBRkIzQUFRRlJvTDBnSUJBMzhqQUVFZ2F5SUVKQUFnQkNBQktBSVFOZ0lRSUFRZ0FTa0NDRGNEQ0NBRUlBRXBBZ0EzQXdBQ1FDQUVJQVJCSEdvUUFpSUJEUUFnQkNBRVFSeHFFQUlpQVEwQUlBUWdCRUVjYWhBQ0lnRU5BQ0FDS0FJTUlRWkJBQ0VCQTBBZ0FTSUZRUUZxSVFFZ0JpQUZkZzBBQ3lBRUlBVkJmMm9RQTBGL1JnUkFRUUVoQVF3QkN5QUVJQVJCSEdvUUFpSUJEUUFDUUNBQ0tBSVFJZ0VFZnlBQkJTQUNLQUlVSVFaQkFDRUJBMEFnQVNJRlFRRnFJUUVnQmlBRmRnMEFDeUFFSUFWQmYyb1FBMEYvUmdSQVFRRWhBUXdEQ3lBREtBSUlCRUFnQkNBRVFSaHFFQVVpQVEwREN5QUNLQUlRQzBFQlJ3MEFJQUlvQWhnTkFDQUVJQVJCR0dvUUJTSUJEUUVnQXlnQ0NFVU5BQ0FFSUFSQkdHb1FCU0lCRFFFTElBTW9Ba1FFUUNBRUlBUkJIR29RQWlJQkRRRUxJQUFnQkVFQkVBTWlBRFlDQUNBQVFYOUdJUUVMSUFSQklHb2tBQ0FCQzhZQkFRSi9Jd0JCSUdzaUJTUUFJQVVnQUNnQ0VEWUNFQ0FGSUFBcEFnZzNBd2dnQlNBQUtRSUFOd01BQWtBZ0JTQUZRUnhxRUFJaUFBMEFJQVVnQlVFY2FoQUNJZ0FOQUNBRklBVkJIR29RQWlJQURRQWdBU2dDRENFR1FRQWhBQU5BSUFBaUFVRUJhaUVBSUFZZ0FYWU5BQXNnQlNBQlFYOXFFQU5CZjBZRVFFRUJJUUFNQVFzZ0FrRUZSZ1JBSUFVZ0JVRWNhaEFDSWdBTkFRc2dCU0FFRUFVaUFBMEFJQU1FUUNBRklBUkJCR29RQlNJQURRRUxRUUFoQUFzZ0JVRWdhaVFBSUFBTDRRRUJBMzhqQUVFZ2F5SUVKQUFnQkNBQUtBSVFOZ0lRSUFRZ0FDa0NDRGNEQ0NBRUlBQXBBZ0EzQXdBQ1FDQUVJQVJCSEdvUUFpSUFEUUFnQkNBRVFSeHFFQUlpQUEwQUlBUWdCRUVjYWhBQ0lnQU5BQ0FCS0FJTUlRWkJBQ0VBQTBBZ0FDSUZRUUZxSVFBZ0JpQUZkZzBBQ3lBRUlBVkJmMm9RQTBGL1JnUkFRUUVoQUF3QkN5QUNRUVZHQkVBZ0JDQUVRUnhxRUFJaUFBMEJDeUFCS0FJVUlRSkJBQ0VBQTBBZ0FDSUJRUUZxSVFBZ0FpQUJkZzBBQ3lBRUlBRkJmMm9RQTBGL1JnUkFRUUVoQUF3QkN5QUVJQU1RQlNFQUN5QUVRU0JxSkFBZ0FBdm1BUUVEZnlNQVFTQnJJZ1FrQUNBRUlBQW9BaEEyQWhBZ0JDQUFLUUlJTndNSUlBUWdBQ2tDQURjREFBSkFJQVFnQkVFY2FoQUNJZ0FOQUNBRUlBUkJIR29RQWlJQURRQWdCQ0FFUVJ4cUVBSWlBQTBBSUFFb0Fnd2hCa0VBSVFBRFFDQUFJZ1ZCQVdvaEFDQUdJQVYyRFFBTElBUWdCVUYvYWhBRFFYOUdCRUJCQVNFQURBRUxJQUpCQlVZRVFDQUVJQVJCSEdvUUFpSUFEUUVMSUFFb0FoUWhBa0VBSVFBRFFDQUFJZ0ZCQVdvaEFDQUNJQUYyRFFBTElBUWdBVUYvYWhBRElnQkJmMFlFUUVFQklRQU1BUXNnQXlBQU5nSUFRUUFoQUFzZ0JFRWdhaVFBSUFBTGtnRUJBbjhqQUVFZ2F5SURKQUFnQXlBQUtBSVFOZ0lRSUFNZ0FDa0NBRGNEQUNBRElBQXBBZ2czQXdnQ1FDQURJQU5CSEdvUUFpSUFEUUFnQXlBRFFSeHFFQUlpQUEwQUlBTWdBMEVjYWhBQ0lnQU5BRUVBSVFBRFFDQUFJZ1JCQVdvaEFDQUJJQVIyRFFBTElBTWdCRUYvYWhBRFFYOUdCRUJCQVNFQURBRUxJQU1nQWhBQ0lRQUxJQU5CSUdva0FDQUFDNWNCQVFKL0l3QkJJR3NpQXlRQUlBTWdBQ2dDRURZQ0VDQURJQUFwQWdnM0F3Z2dBeUFBS1FJQU53TUFBa0FnQXlBRFFSeHFFQUlpQUEwQUlBTWdBMEVjYWhBQ0lnQU5BQ0FESUFOQkhHb1FBaUlBRFFCQkFDRUFBMEFnQUNJRVFRRnFJUUFnQVNBRWRnMEFDeUFESUFSQmYyb1FBeUlBUVg5R0JFQkJBU0VBREFFTElBSWdBRFlDQUVFQUlRQUxJQU5CSUdva0FDQUFDNjhPQVFwL0l3QkJFR3NpQlNRQUlBRkJBRUhjQnhBSElRY2dBaWdDTkNFR0lBSW9BamdoQ0FKQUlBQWdCVUVFYWhBQ0lnRU5BQ0FISUFVb0FnUWlBVFlDQUNBQklBWWdDR3dpQzA4RVFFRUJJUUVNQVFzZ0FDQUZRUVJxRUFJaUFRMEFJQWNnQlNnQ0JDSUdOZ0lFSUFaQkIwc0VRRUVCSVFFTUFRdEJBU0VCQWtBQ1FDQUdRUUZyRGdjQ0FRSUNBQUlCQUFzZ0JDZ0NBRUVGUmdSQURBSUxJQUlvQWl3TkFBd0JDeUFBSUFWQkJHb1FBaUlCRFFBZ0J5QUZLQUlFSWdZMkFnaEJBU0VCSUFZZ0F5Z0NBRWNOQUNBQ0tBSU1JUWhCQUNFQkEwQWdBU0lHUVFGcUlRRWdDQ0FHZGcwQUMwRUJJUUVnQUNBR1FYOXFFQU1pQmtGL1JnMEFJQVpCQUNBRUtBSUFJZ2hCQlVZYkRRQWdCeUFHTmdJTUlBaEJCVVlFUUNBQUlBVkJCR29RQWlJQkRRRWdCeUFGS0FJRUlnWTJBaEJCQVNFQklBWkIvLzhEU3cwQkN3SkFJQUlvQWhBaUFRUi9JQUVGSUFJb0FoUWhDRUVBSVFFRFFDQUJJZ1pCQVdvaEFTQUlJQVoyRFFBTElBQWdCa0YvYWhBRElnRkJmMFlFUUVFQklRRU1Bd3NnQnlBQk5nSVVJQU1vQWdnRVFDQUFJQVVRQlNJQkRRTWdCeUFGS0FJQU5nSVlDeUFFS0FJQVFRVkdCRUJCQVNFQklBY29BaFFpQmlBQ0tBSVVRUUYyU3cwRElBWkJBQ0FIS0FJWUlnaEJIM1VnQ0hGclJ3MERDeUFDS0FJUUMwRUJSdzBBSUFJb0FoZ05BQ0FBSUFVUUJTSUJEUUVnQnlBRktBSUFOZ0ljSUFNb0FnZ0VRQ0FBSUFVUUJTSUJEUUlnQnlBRktBSUFOZ0lnQ3lBRUtBSUFRUVZIRFFCQkFTRUJJQWNvQWh3aUJpQUhLQUlnSUFZZ0FpZ0NJR3BxSWdnZ0JpQUlTQnNOQVFzZ0F5Z0NSQVJBSUFBZ0JVRUVhaEFDSWdFTkFTQUhJQVVvQWdRaUJqWUNKRUVCSVFFZ0JrSC9BRXNOQVFzQ1FDQUhLQUlFSWdGQkJVc05BQUpBSUFGQkFXc09CQUVCQVFFQUMwRUJJUUVnQUVFQkVBTWlCa0YvUmcwQklBY2dCallDS0FKQUlBWUVRQ0FBSUFWQkJHb1FBaUlCRFFOQkFTRUJJQVVvQWdRaUJrRVBTdzBESUFaQkFXb2hCZ3dCQ3lBREtBSXdJZ1pCRUVzTkFnc2dCeUFHTmdJc0lBY29BZ1FoQVFzQ1FDQUJRUVZMRFFBQ1FDQUJRUUZyRGdRQkFRRUJBQXNnQWlnQ0RDRUpJQWNvQWl3aENrRUJJUUVnQUVFQkVBTWlCa0YvUmcwQklBY2dCallDUkNBR1JRMEFRUUFoQVFOQUlBRWlCaUFLU3dSQVFRRWhBUXdEQ3lBQUlBVkJDR29RQWlJQkRRSWdCU2dDQ0NJQlFRTkxCRUJCQVNFQkRBTUxJQWNnQmtFTWJHb2lDQ0FCTmdKSUFrQWdBVUVCVFFSQUlBQWdCVUVNYWhBQ0lnRU5CQ0FGS0FJTUlnRWdDVThFUUVFQklRRU1CUXNnQ0NBQlFRRnFOZ0pNREFFTElBRkJBa2NOQUNBQUlBVkJER29RQWlJQkRRTWdDQ0FGS0FJTU5nSlFDeUFHUVFGcUlRRWdCU2dDQ0VFRFJ3MEFDMEVCSVFFZ0JrVU5BUXNDUUNBRUtBSUVSUTBBSUFRb0FnQWhCQ0FDS0FJc0lRbEJBU0VCSUFCQkFSQURJUUlnQkVFRlJnUkFJQUpCZjBZTkFpQUhJQUkyQXBRQ0lBQkJBUkFESWdKQmYwWU5BaUFISUFJMkFwZ0NJQWtOQVNBQ1JRMEJEQUlMSUFKQmYwWU5BU0FISUFJMkFwd0NJQUpGRFFBZ0NVRUJkRUVEYWlFT1FRQWhCa0VBSVFwQkFDRUVBMEFnQmlBT1JnUkFRUUVoQVF3REN5QUFJQVZCQ0dvUUFpSUJEUUlnQlNnQ0NDSUNRUVpMQkVCQkFTRUJEQU1MSUFjZ0JrRVViR29pQ0NBQ05nS2dBZ0ovSUFKQkFuSkJBMFlFUUNBQUlBVkJER29RQWlJQkRRUWdDQ0FGS0FJTVFRRnFOZ0trQWlBRktBSUlJUUlMSUFKQkFrWUxCRUFnQUNBRlFReHFFQUlpQVEwRElBZ2dCU2dDRERZQ3FBSWdCU2dDQ0NFQ0N3SkFJQUpCZldvaUFVRURTdzBBQWtBZ0FVRUJhdzRDQVFFQUN5QUFJQVZCREdvUUFpSUJEUU1nQ0NBRktBSU1OZ0tzQWlBRktBSUlJUUlMSUFKQkJFWUVRQ0FBSUFWQkRHb1FBaUlCRFFNZ0JTZ0NEQ0lCSUFsTEJFQkJBU0VCREFRTElBZ2dBVUYvYWtILy93TWdBUnMyQXJBQ0lBcEJBV29oQ2lBRktBSUlJUUlMSUFaQkFXb2hCaUFNSUFKQkJrWnFJUXdnQkNBQ1FRVkdhaUVFSUEwZ0FrRi9ha0VEU1dvaERTQUNEUUFMUVFFaEFTQUVJQXB5SUF4eVFRRkxEUUVnQkVVTkFDQU5EUUVMSUFBZ0JSQUZJZ0VOQUNBSElBVW9BZ0FpQVRZQ01DQUZJQUVnQXlnQ05Hb2lBallDQUVFQklRRWdBa0V6U3cwQUFrQWdBeWdDUEVVTkFDQUFJQVZCQkdvUUFpSUJEUUVnQnlBRktBSUVJZ0kyQWpSQkFTRUJJQUpCQWtzTkFTQUNRUUZHRFFBZ0FDQUZFQVVpQVEwQlFRRWhBU0FGS0FJQUlnSkJCbXBCREVzTkFTQUhJQUpCQVhRMkFqZ2dBQ0FGRUFVaUFRMEJRUUVoQVNBRktBSUFJZ0pCQm1wQkRFc05BU0FISUFKQkFYUTJBandMQWtBZ0F5Z0NERUVDU1EwQUlBTW9BaEJCZldwQkFrc05BRUVDUVFFZ0N5QUxJQU1vQWlRaUFXNGlBaUFCYkdzYklBSnFJUVJCQUNFQ0EwQWdCQ0FDSWdGQkFXb2lBbllOQUFzZ0JTQUFJQUlnQVNBRVFYOGdBWFJCZjNOeEd4QURJZ0EyQWdSQkFTRUJJQUJCZjBZTkFTQUhJQUEyQWtBZ0FDQUxJQU1vQWlRaUFHcEJmMm9nQUc1TERRRUxRUUFoQVFzZ0JVRVFhaVFBSUFFTHdRa0JEWDhnQXlBRWJDRUZJQUVvQWd3aUNVRUJSZ1JBSUFCQkFDQUZRUUowRUFjYUR3c0NRQUpBQWtBQ1FDQUJLQUlRSWdaQmZXcEJBazBFUUNBQktBSWtJQUpzSWdJZ0JTQUNJQVZKR3lFTElBWkJmbkZCQkVjTkFTQUZJQXRySUFzZ0FTZ0NJQnNoQndzQ1FBSkFBa0FnQmtFRlRRUkFJQVpCQVdzT0JRWUZCQU1DQVFzZ0JVVU5CaUFCS0FJc0lRSkJBQ0VCQTBBZ0FDQUJRUUowSWdOcUlBSWdBMm9vQWdBMkFnQWdBVUVCYWlJQklBVkhEUUFMREFZTEFrQWdDUVJBSUFFb0FoUWhBa0VBSVFZTUFRc2dCVVVOQmdOQURBQUFDd0FMQTBCQkFDRUVJQVlnQlU4TkJnTkFRUUFoQndKQUlBSWdCRUVDZEdvaUF5Z0NBQ0lCUlEwQUlBRWhCeUFGSUFaTkRRQkJBQ0VCUVFBZ0JTQUdheUlISUFjZ0JVc2JJUWdEUUNBQUlBRWdCbXBCQW5ScUlBUTJBZ0FnQVVFQmFpSUJJQU1vQWdBaUIwOE5BU0FCSUFoSERRQUxDeUFFUVFGcUlnUWdDVWxCQUNBR0lBZHFJZ1lnQlVrYkRRQUxJQVlnQlVrTkFBc01CUXNnQTBVTkJDQUVSUTBFUVFFZ0FTZ0NJQ0lKYXlFSVFRQWhCVUVBSVFJRFFFRUFJUUVnQlNFR0EwQWdBQ0FCSUFOc0lBSnFRUUowYWlBSklBZ2dCaUFIU1JzMkFnQWdCa0VCYWlFR0lBRkJBV29pQVNBRVJ3MEFDeUFFSUFWcUlRVWdBa0VCYWlJQ0lBTkhEUUFMREFRTElBVkZEUU5CQVNBQktBSWdJZ0pySVFOQkFDRUJBMEFnQUNBQlFRSjBhaUFDSUFNZ0FTQUhTUnMyQWdBZ0FVRUJhaUlCSUFWSERRQUxEQU1MSUFFb0FpQWhBaUFGQkVCQkFDRUJBMEFnQUNBQlFRSjBha0VCTmdJQUlBRkJBV29pQVNBRlJ3MEFDd3NnQzBVTkFpQURRWDlxSVE4Z0JFRi9haUVRSUFKQmYyb2hCa0VCSUFKQkFYUWlBV3NoQlNBQlFYOXFJUWtnQkNBQ2EwRUJkaUlLSVF3Z0F5QUNhMEVCZGlJTklRUWdDaUVJSUEwaEFVRUFJUWNEUUNBQUlBTWdDR3dnQVdwQkFuUnFJZzRvQWdBaUVVRUJSZ1JBSUE1QkFEWUNBQXNnRVVFQlJpRU9Ba0FDUUNBR1FYOUhEUUFnQVNBRVJ3MEFRUUFoQmlBSklRSWdCRUVCSUFSQkFVb2JRWDlxSWdFaEJBd0JDd0pBSUFaQkFVY05BQ0FCSUExSERRQkJBQ0VHSUFVaEFpQU5RUUZxSWdFZ0R5QUJJQTlJR3lJQklRME1BUXNDUUNBQ1FYOUhEUUFnQ0NBTVJ3MEFRUUFoQWlBRklRWWdERUVCSUF4QkFVb2JRWDlxSWdnaERBd0JDd0pBSUFKQkFVY05BQ0FJSUFwSERRQkJBQ0VDSUFraEJpQUtRUUZxSWdnZ0VDQUlJQkJJR3lJSUlRb01BUXNnQWlBSWFpRUlJQUVnQm1vaEFRc2dCeUFPYWlJSElBdEpEUUFMREFJTElBRW9BaHdoQnlBQktBSVlJUWdnQlFSQUlBbEJmMm9oQWtFQUlRRURRQ0FBSUFGQkFuUnFJQUkyQWdBZ0FVRUJhaUlCSUFWSERRQUxJQUpGRFFJTElBbEJmbW9oQVFOQUFrQWdDQ0FCSWdSQkFuUWlBV29vQWdBaUJpQURiaUlDSUFFZ0Iyb29BZ0FpQVNBRGJpSUZTdzBBSUFZZ0FpQURiR3NpQmlBQklBTWdCV3hySWdsTEJFQURRQ0FDUVFGcUlnSWdCVTBOQUF3Q0FBc0FDd05BSUFJZ0Eyd2hDaUFHSVFFRFFDQUFJQUVnQ21wQkFuUnFJQVEyQWdBZ0FVRUJhaUlCSUFsTkRRQUxJQUpCQVdvaUFpQUZUUTBBQ3dzZ0JFRi9haUVCSUFRTkFBc01BUXNnQlVVTkFFRUFJUUVEUUNBQUlBRkJBblJxSUFFZ0EyNGlBaUFKYkVFQmRpQUJJQUlnQTJ4cmFpQUpjRFlDQUNBQlFRRnFJZ0VnQlVjTkFBc0xDOFFCQVFWL0lBQW9BcWdKSVFRQ1FDQUFRYkFKYWlnQ0FDSUNSUTBBSUFKQmYyb2lBaUFCVFFSQUlBSWhBUXdCQ3lBQUtBSzhDU0VGQTBBQ1FDQUZJQUpCMkFGc2FpZ0NCQ0FFUncwQUlBTkJBV29pQXlBQUtBSVFLQUkwSWdaQkNpQUdRUXBMRzBrTkFDQUNJUUVNQWdzZ0FrRi9haUlDSUFGTERRQUxDd05BQWtBZ0FDZ0N2QWtnQVVIWUFXeHFJZ0lvQWdRZ0JFY05BQ0FDS0FMRUFTSURSUTBBSUFJZ0EwRi9hallDeEFFZ0FDZ0NsQWtnQUNnQ21Ba2dBUkFlSWdFTkFRc0xDNzBFQWd0L0FYNGpBRUhBQTJzaUJTUUFJQU1vQWdBaEJ5QUJLQUt3R2lFSUlBVkJBRFlDRENBQlFiQUpha0VBTmdJQUlBRWdBU2dDcUFsQkFXbzJBcWdKSUFVZ0F5Z0NNQ0FCS0FJTUtBSTBhallDQ0NBQlFjUUphaUVOSUFoQkRHb2hEZ0pBQTBBZ0FTZ0N2QWtoQkFKQUlBTW9BaVFOQUNBRUlBZEIyQUZzYWlnQ3hBRkZEUUJCQVNFRURBSUxJQU1wQWpRaER5QURLQUk4SVFzZ0FTZ0NxQWtoRENBRUlBZEIyQUZzSWdacUlnUWdBU2dDRENnQ09EWUNHQ0FFSUFzMkFoQWdCQ0FQTndJSUlBUWdERFlDQkFKQUlBTW9BZ1FpQkVFQ1JnMEFJQWtOQUNBRVFRZEdEUUFnQUNBRlFReHFFQUlpQkEwQ0lBVW9BZ3dpQkNBQktBS1lDU0FIYTBzRVFFRUJJUVFNQXdzZ0JFVUVRRUVBSVFrTUFRc2dEa0VBUWFRQkVBY2FJQWhCQURZQ0FFRUJJUWtMQWtBZ0JTZ0NEQ0lFQkVBZ0JTQUVRWDlxTmdJTURBRUxRUUFoQ1NBQUlBZ2dBU2dDdkFrZ0Jtb2dBeWdDQkNBREtBSXNFRkVpQkEwQ0N5QUJLQUs4Q1NBR2FpQUlJQUlnRFNBRlFRaHFJQWNnQVNnQ0RDZ0NRQ0FGUVJCcUVGQWlCQTBCSUFFb0Fyd0pJQVpxS0FMRUFTRUxJQUFRTGlFRUlBVW9BZ3doQmdKQUlBTW9BZ1JCZm1vaURFRUZTdzBBQWtBZ0RFRUJhdzRFQVFFQkFRQUxJQUVnQnpZQ3NBa0xJQVFnQm5JaEJrRUJJUVFnQVNnQ2xBa2dBU2dDbUFrZ0J4QWVJZ2RGUVFBZ0Joc05BU0FLSUF0QkFVWnFJUW9nQmcwQUN5QUJRYXdKYWlnQ0FDQUthaUlBSUFFb0FwZ0pTdzBBSUFFZ0FEWUNyQWxCQUNFRUN5QUZRY0FEYWlRQUlBUUw1Z0lCQjM5QkFTRUNBa0FnQUNnQ0FDQUJLQUlBUncwQUlBQW9BZ1FnQVNnQ0JFY05BQ0FBS0FJTUlBRW9BZ3hIRFFBZ0FDZ0NFQ0lESUFFb0FoQkhEUUFnQUNnQ0xDQUJLQUlzUncwQUlBQW9BakFnQVNnQ01FY05BQ0FBS0FJMElBRW9BalJIRFFBZ0FDZ0NPQ0FCS0FJNFJ3MEFJQUFvQWp3aUJTQUJLQUk4UncwQUlBQW9BbEFnQVNnQ1VFY05BQUpBSUFOQkFVc05BQ0FEUVFGclJRUkFJQUFvQWhnZ0FTZ0NHRWNOQWlBQUtBSWNJQUVvQWh4SERRSWdBQ2dDSUNBQktBSWdSdzBDSUFBb0FpUWlCQ0FCS0FJa1J3MENJQVJGRFFFZ0FTZ0NLQ0VHSUFBb0FpZ2hCMEVBSVFNRFFDQUhJQU5CQW5RaUNHb29BZ0FnQmlBSWFpZ0NBRWNOQXlBRUlBTkJBV29pQTBjTkFBc01BUXNnQUNnQ0ZDQUJLQUlVUncwQkN5QUZCRUFnQUNnQ1FDQUJLQUpBUncwQklBQW9Ba1FnQVNnQ1JFY05BU0FBS0FKSUlBRW9Ba2hIRFFFZ0FDZ0NUQ0FCS0FKTVJ3MEJDMEVBSVFJTElBSUwvd2tCQm44akFFRVFheUlFSkFBZ0FVRUFRZHdBRUFjaEF3SkFJQUJCQ0JBRElnRkJmMFlFUUVFQklRRU1BUXNnQXlBQk5nSUFJQUJCQVJBREdpQUFRUUVRQXhvZ0FFRUJFQU5CZjBZRVFFRUJJUUVNQVFzZ0FFRUZFQU5CZjBZRVFFRUJJUUVNQVFzZ0FFRUlFQU1pQVVGL1JnUkFRUUVoQVF3QkN5QURJQUUyQWdRZ0FDQURRUWhxRUFJaUFRMEFJQU1vQWdoQkgwc0VRRUVCSVFFTUFRc2dBQ0FFUVF4cUVBSWlBUTBBUVFFaEFTQUVLQUlNSWdKQkRFc05BQ0FEUVFFZ0FrRUVhblEyQWd3Z0FDQUVRUXhxRUFJaUFRMEFRUUVoQVNBRUtBSU1JZ0pCQWtzTkFDQURJQUkyQWhBQ1FDQUNRUUZMRFFBZ0FrRUJhd1JBSUFBZ0JFRU1haEFDSWdFTkFrRUJJUUVnQkNnQ0RDSUNRUXhMRFFJZ0EwRUJJQUpCQkdwME5nSVVEQUVMSUFCQkFSQURJZ0pCZjBZTkFTQURJQUpCQVVZMkFoZ2dBQ0FEUVJ4cUVBVWlBUTBCSUFBZ0EwRWdhaEFGSWdFTkFTQUFJQU5CSkdvUUFpSUJEUUZCQVNFQklBTW9BaVFpQWtIL0FVc05BU0FDQkVBZ0F5QUNRUUowRUFvaUFUWUNLQ0FCUlFSQVFmLy9BeUVCREFNTElBQWdBUkFGSWdFTkFrRUJJUUlEUUNBQ0lBTW9BaVJQRFFJZ0FrRUNkQ0VCSUFKQkFXb2hBaUFBSUFFZ0F5Z0NLR29RQlNJQlJRMEFDd3dDQ3lBRFFRQTJBaWdMSUFBZ0EwRXNhaEFDSWdFTkFFRUJJUUVnQXlnQ0xFRVFTdzBBSUFCQkFSQURJZ0pCZjBZTkFDQURJQUpCQVVZMkFqQWdBQ0FFUVF4cUVBSWlBUTBBSUFNZ0JDZ0NERUVCYWpZQ05DQUFJQVJCREdvUUFpSUJEUUJCQVNFQklBTWdCQ2dDREVFQmFqWUNPQ0FBUVFFUUEwRUJha0VDU1EwQUlBQkJBUkFEUVg5R0RRQWdBRUVCRUFNaUFrRi9SZzBBSUFNZ0FrRUJSaUlCTmdJOEFrQWdBVVVFUUNBREtBSTRJUVVnQXlnQ05DRUdEQUVMSUFBZ0EwRkFheEFDSWdFTkFTQUFJQU5CeEFCcUVBSWlBUTBCSUFBZ0EwSElBR29RQWlJQkRRRWdBQ0FEUWN3QWFoQUNJZ0VOQVVFQklRRWdBeWdDUUNBREtBSkVRWDl6SUFNb0FqUWlCa0VEZEdwS0RRRWdBeWdDU0NBREtBSk1RWDl6SUFNb0FqZ2lCVUVEZEdwS0RRRUxBa0FDUUFKQUFrQWdBeWdDQkVGMmFpSUhRU2xMRFFCQjR3QWhBVUdBcEFraEFnSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnQjBFQmF3NHBBQUVCQ3dzTEN3c0xBUUlEQ3dzTEN3c0xDd01FQlFzTEN3c0xDd3NHQmdjTEN3c0xDd3NMQ0FrS0MwR01BeUVCUVlDTUZTRUNEQWtMUVl3RElRRkJnTmczSVFJTUNBdEJtQVloQVVHQXNPOEFJUUlNQnd0QjFBd2hBVUdBN0wwQklRSU1CZ3RCa0J3aEFVR0E4S1VESVFJTUJRdEJnQ2doQVVHQWdPQURJUUlNQkF0QmdNQUFJUUZCZ0lDQUJpRUNEQU1MUVlERUFDRUJRWUNBc0FZaEFnd0NDMEhBckFFaEFVR0F3SnNVSVFJTUFRdEJnS0FDSVFGQmdJRGdJU0VDQ3lBQklBVWdCbXdpQVU4TkFRc2dCRUgvLy8vL0J6WUNEQ0FES0FJc0lRSU1BUXNnQkNBQ0lBRkJnQU5zYmlJQlFSQWdBVUVRU1JzaUFUWUNEQ0FES0FJc0lnSWdBVTBOQVFzZ0JDQUNOZ0lNSUFJaEFRc2dBeUFCTmdKWVFRRWhBU0FBUVFFUUF5SUNRWDlHRFFBZ0F5QUNRUUZHTmdKUUFrQWdBa0VCUncwQUlBTkJ1QWNRQ2lJQk5nSlVJQUZGQkVCQi8vOERJUUVNQWdzZ0FDQUJFQ3dpQVEwQklBTW9BbFFpQWlnQ21BZEZEUUJCQVNFQklBSW9BckFISUFJb0FyUUhJZ0pMRFFFZ0FpQURLQUlzU1EwQklBSWdBeWdDV0VzTkFTQURJQUpCQVNBQ0d6WUNXQXNnQUJBZlFRQWhBUXNnQkVFUWFpUUFJQUVMalFRQkRuOGdBUUovQWtBZ0FDOEJJQ0lIRFFBZ0FDOEJIQTBBUVFBTUFRdEJBZ3MyQWlBZ0FRSi9Ba0FnQUM4QklpSUNEUUFnQUM4QkhnMEFRUUFNQVF0QkFnczJBaWdnQVFKL0FrQWdBQzhCS0NJRERRQWdBQzhCSkEwQVFRQU1BUXRCQWdzMkFqQWdBUUovQWtBZ0FDOEJLaUlJRFFBZ0FDOEJKZzBBUVFBTUFRdEJBZ3MyQWpnZ0FTQUhJQUF2QVN3aUNYSkJBRWRCQVhRMkFrQWdBU0FDSUFBdkFTNGlCSEpCQUVkQkFYUTJBa2dnQVNBRElBQXZBVFFpQlhKQkFFZEJBWFEyQWxBZ0FTQUlJQUF2QVRZaUNuSkJBRWRCQVhRMkFsZ2dBU0FBTHdFd0lnMGdDWEpCQUVkQkFYUTJBbUFnQVNBQUx3RXlJZ3NnQkhKQkFFZEJBWFEyQW1nZ0FTQUFMd0U0SWd3Z0JYSkJBRWRCQVhRMkFuQWdBU0FBTHdFNklnNGdDbkpCQUVkQkFYUTJBbmhCQWlFR0lBRWdBQzhCSGlJUEJIOUJBZ1VnQUM4QkhFRUFSMEVCZEFzMkFnd2dBU0FQSUFBdkFTUWlCbkpCQUVkQkFYUTJBaFFnQUM4QkppRUFJQUVnRENBT2NrRUFSMEVCZERZQ2ZDQUJJQXNnREhKQkFFZEJBWFEyQW5RZ0FTQUxJQTF5UVFCSFFRRjBOZ0pzSUFFZ0JTQUtja0VBUjBFQmREWUNYQ0FCSUFRZ0JYSkJBRWRCQVhRMkFsUWdBU0FFSUFseVFRQkhRUUYwTmdKTUlBRWdBeUFJY2tFQVIwRUJkRFlDUENBQklBSWdBM0pCQUVkQkFYUTJBalFnQVNBQ0lBZHlRUUJIUVFGME5nSXNJQUVnQUNBR2NrRUFSMEVCZERZQ0hBdk1CZ0VMZnlNQVFZQU9heUlPSkFBZ0JrRUZhaUVJQWtBQ1FDQUNRUUJJRFFBZ0EwRUFTQTBBSUFJZ0NHb2dCRXNOQUNBSFFRVnFJZ29nQTJvZ0JVc05BQ0FFSVFnZ0F5RUpEQUVMSUFBZ0RrSEFDbW9nQWlBRElBUWdCU0FJSUFkQkJXb2lDaUFJRUF3Z0RrSEFDbW9oQUVFQUlRSUxBa0FnQ2tVTkFDQUdRUUoySWhCRkRRQWdDQ0FHYXlFUklBQWdDQ0FKYkNBQ2FtcEJCV29oQWlBT0lRQURRQ0FDUVg5cUxRQUFJUWdnQWtGK2FpMEFBQ0VESUFKQmZXb3RBQUFoQlNBQ1FYeHFMUUFBSVFRZ0FrRjdhaTBBQUNFTUlCQWhEUU5BSUFBZ0FpMEFBQ0lKSUF3Z0JDQUlhaUlMYXlBRElBVnFRUlJzYWlBTFFRSjBhMm8yQWdBZ0FDQUNMUUFCSWdzZ0F5QUlha0VVYkNBRWFpQUZJQWxxSWdScklBUkJBblJyYWpZQ0JDQUFJQUl0QUFJaUR5QUlJQWxxUVJSc0lBVnFJQU1nQzJvaUJHc2dCRUVDZEd0cU5nSUlJQUFnQWkwQUF5SVNJQWtnQzJwQkZHd2dBMm9nQ0NBUGFpSURheUFEUVFKMGEybzJBZ3dnQUVFUWFpRUFJQUpCQkdvaEFpQUlJUXdnQ1NFRUlBc2hCU0FQSVFNZ0VpRUlJQTFCZjJvaURRMEFDeUFDSUJGcUlRSWdDa0YvYWlJS0RRQUxDd0pBSUFkQkFuWWlCMFVOQUNBR1JRMEFRY0FBSUFacklROGdEaUFHUVFKMGFpSUlJQVpCRkd4cUlRSkJBQ0FHYXlJUVFRTjBJUklnQmtFRGRDRUpJQVpCQTJ4QkFuUWhDd05BSUFZaEJBTkFJQUVnQ0NBSmFpZ0NBQ0lBSUFJZ0NXb29BZ0FnQWlBR1FRSjBJZzFxS0FJQUlnb2dBaUFTYWlnQ0FDSURhaUlGYXlBRlFRSjBhMm9nQWlnQ0FDSU1JQUlnRUVFQ2RDSVJhaWdDQUNJRmFrRVViR3BCZ0FScVFRcDFRYkF1YWkwQUFEb0FNQ0FCSUFnZ0RXb29BZ0FpRFNBS0lBTWdCV3BCRkd4cUlBQWdER29pQ21zZ0NrRUNkR3RxUVlBRWFrRUtkVUd3TG1vdEFBQTZBQ0FnQVNBSUtBSUFJZ29nRENBQUlBTnFRUlJzYWlBRklBMXFJZ3hySUF4QkFuUnJha0dBQkdwQkNuVkJzQzVxTFFBQU9nQVFJQUVnQ0NBUmFpZ0NBQ0FGSUFBZ0RXcEJGR3hxSUFNZ0Ntb2lBR3NnQUVFQ2RHdHFRWUFFYWtFS2RVR3dMbW90QUFBNkFBQWdDRUVFYWlFSUlBRkJBV29oQVNBQ1FRUnFJUUlnQkVGL2FpSUVEUUFMSUFFZ0Qyb2hBU0FDSUF0cUlRSWdDQ0FMYWlFSUlBZEJmMm9pQncwQUN3c2dEa0dBRG1va0FBdmxBd0VKZnlNQVFjQURheUlLSkFBZ0JrRUZhaUVJQWtBQ1FDQUNRUUJJRFFBZ0F5QUhhaUFGU3cwQUlBTkJBRWdOQUNBQ0lBaHFJQVJMRFFBZ0JDRUlJQU1oQ1F3QkN5QUFJQW9nQWlBRElBUWdCU0FJSUFjZ0NCQU1JQW9oQUVFQUlRSUxBa0FnQjBVTkFDQUdRUUoySWcxRkRRQkJFQ0FHYXlFT0lBZ2dCbXNoRHlBQUlBZ2dDV3dnQW1wcVFRVnFJUUlEUUNBQ1FYOXFMUUFBSVFnZ0FrRithaTBBQUNFR0lBSkJmV290QUFBaEFDQUNRWHhxTFFBQUlRVWdBa0Y3YWkwQUFDRUpJQTBoQ3dOQUlBRWdBaTBBQUNJRElBa2dCU0FJYWlJRWF5QUFJQVpxUVJSc2FpQUVRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFPZ0FBSUFFZ0FpMEFBU0lFSUFVZ0JpQUlha0VVYkdvZ0FDQURhaUlGYXlBRlFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQU9nQUJJQUVnQWkwQUFpSU1JQUFnQXlBSWFrRVViR29nQkNBR2FpSUFheUFBUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBT2dBQ0lBRWdBaTBBQXlJUUlBWWdBeUFFYWtFVWJHb2dDQ0FNYWlJQWF5QUFRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFPZ0FESUFGQkJHb2hBU0FDUVFScUlRSWdDQ0VKSUFNaEJTQUVJUUFnRENFR0lCQWhDQ0FMUVg5cUlnc05BQXNnQVNBT2FpRUJJQUlnRDJvaEFpQUhRWDlxSWdjTkFBc0xJQXBCd0FOcUpBQUw5UU1CQzM4akFFSEFBMnNpQ3lRQUFrQUNRQ0FDUVFCSURRQWdBMEVBU0EwQUlBSWdCbW9nQkVzTkFDQURJQWRxUVFWcUlBVkxEUUFnQXlFSURBRUxJQUFnQ3lBQ0lBTWdCQ0FGSUFZZ0IwRUZhaUFHRUF3Z0N5RUFJQVloQkVFQUlRSUxBa0FnQjBFQ2RpSU1SUTBBSUFaRkRRQkJ3QUFnQm1zaEVTQUVRUUYwSVEwZ0JFRUNkQ0FHYXlFT1FRQWdCR3NpRDBFQmRDRVNJQUFnQkNBSWJDQUNhbW9nQkdvaUJ5QUVRUVZzYWlFQ0EwQWdCaUVBQTBBZ0FTQUhJQTFxTFFBQUlnTWdBaUFOYWkwQUFDQUNJQVJxTFFBQUlna2dBaUFTYWkwQUFDSUZhaUlJYXlBSVFRSjBhMm9nQWkwQUFDSUtJQUlnRDJvdEFBQWlDR3BCRkd4cVFSQnFRUVYxUWJBdWFpMEFBRG9BTUNBQklBUWdCMm90QUFBaUVDQUpJQVVnQ0dwQkZHeHFJQU1nQ21vaUNXc2dDVUVDZEd0cVFSQnFRUVYxUWJBdWFpMEFBRG9BSUNBQklBY3RBQUFpQ1NBS0lBTWdCV3BCRkd4cUlBZ2dFR29pQ21zZ0NrRUNkR3RxUVJCcVFRVjFRYkF1YWkwQUFEb0FFQ0FCSUFjZ0Qyb3RBQUFnQ0NBRElCQnFRUlJzYWlBRklBbHFJZ05ySUFOQkFuUnJha0VRYWtFRmRVR3dMbW90QUFBNkFBQWdCMEVCYWlFSElBRkJBV29oQVNBQ1FRRnFJUUlnQUVGL2FpSUFEUUFMSUFFZ0VXb2hBU0FDSUE1cUlRSWdCeUFPYWlFSElBeEJmMm9pREEwQUN3c2dDMEhBQTJva0FBdXFCZ0VOZnlNQVFiQUJheUlSSkFBZ0NFRUJhaUVLQWtBQ1FDQUNRUUJJRFFBZ0EwRUFTQTBBSUFJZ0Ntb2dCRXNOQUNBRElBbHFRUUZxSUFWTERRQWdCU0VNSUFRaENpQURJUThNQVFzZ0FDQVJJQUlnQXlBRUlBVWdDaUFKUVFGcUlnd2dDaEFNSUFBZ0JDQUZiR29nRVNBS0lBeHNhaUFDSUFNZ0JDQUZJQW9nRENBS0VBd2dFU0VBUVFBaEFnc0NRQ0FKUVFGMklnVkZEUUFnQ0VFQmRpSUVSUTBBUVJBZ0NHc2hFMEVJSUFkcklRdEJDQ0FHYXlFTklBcEJBWFFpRGlBSWF5RVVJQUFnQW1vaUZpQUtJQTlzYWlFQ0lBRWhBQ0FGSVJVRFFDQUNJQTVxTFFBQUlBZHNJQXNnQWlBS2FpMEFBQ0lEYkdvaENDQURJQWRzSUFzZ0FpMEFBR3hxSVFrZ0JDRURBMEFnQWtFQmFpSVFJQTVxTFFBQUlSSWdBQ0FKSUExc0lBb2dFR290QUFBaUNTQUhiQ0FMSUFJdEFBRnNhaUlRSUFac2FrRWdha0VHZGpvQUFDQUFJQWdnRFd3Z0J5QVNiQ0FKSUF0c2FpSUlJQVpzYWtFZ2FrRUdkam9BQ0NBQ0xRQUNJUWtnQWtFQ2FpSUNJQTVxTFFBQUlSSWdBQ0FOSUJCc0lBSWdDbW90QUFBaUVDQUhiQ0FKSUF0c2FpSUpJQVpzYWtFZ2FrRUdkam9BQVNBQUlBZ2dEV3dnQnlBU2JDQUxJQkJzYWlJSUlBWnNha0VnYWtFR2Rqb0FDU0FBUVFKcUlRQWdBMEYvYWlJRERRQUxJQUlnRkdvaEFpQUFJQk5xSVFBZ0ZVRi9haUlWRFFBTElBRkJRR3NoQUNBV0lBd2dEMm9nQ214cUlRSURRQ0FDSUE1cUxRQUFJQWRzSUFzZ0FpQUthaTBBQUNJQmJHb2hDQ0FCSUFkc0lBc2dBaTBBQUd4cUlRa2dCQ0VEQTBBZ0FrRUJhaUlCSUE1cUxRQUFJUXdnQUNBSklBMXNJQUVnQ21vdEFBQWlBU0FIYkNBTElBSXRBQUZzYWlJSklBWnNha0VnYWtFR2Rqb0FBQ0FBSUFnZ0RXd2dCeUFNYkNBQklBdHNhaUlCSUFac2FrRWdha0VHZGpvQUNDQUNMUUFDSVFnZ0FrRUNhaUlDSUE1cUxRQUFJUXdnQUNBSklBMXNJQUlnQ21vdEFBQWlEeUFIYkNBSUlBdHNhaUlKSUFac2FrRWdha0VHZGpvQUFTQUFJQUVnRFd3Z0J5QU1iQ0FMSUE5c2FpSUlJQVpzYWtFZ2FrRUdkam9BQ1NBQVFRSnFJUUFnQTBGL2FpSUREUUFMSUFJZ0ZHb2hBaUFBSUJOcUlRQWdCVUYvYWlJRkRRQUxDeUFSUWJBQmFpUUFDLzlFQVVGL0l3QkJzQUZySWdNa0FDQUFLQUlJSWdRRVFDQUFLQUlFSWg5QkEzUWhGaUFFSUI5c0lnUkJCblFoT3lBRVFRaDBJVHdnSDBFR2RDRTlJQjlCTUd3aFBpQWZRUVYwSVNVZ0gwRlFiQ0VyUVFBZ0gwRUVkQ0lhYXlJb1FRSjBJVDhnS0VFQmRDRXNJQU5CR0dvaElpQURRUXh5SVNNRFFBSkFJQUVvQWdnaUNVRUJSZzBBQWtBQ1FBSkFBa0FnQVNnQ3lBRWlBa1VFUUVFQklRWU1BUXRCQlNFR0lBbEJBa2NOQUVFRlFRRWdBU2dDQkNJSklBSW9BZ1JHR3lFR0lBRW9Bc3dCSWdRTkFVRUFJUVFNQXdzZ0FTZ0N6QUVpQkVVRVFFRUFJUVFNQXdzZ0NVRUNSdzBCSUFFb0FnUWhDUXNnQ1NBRUtBSUVSdzBCQ3lBR1FRSnlJUVlMQW44Z0JrRUNjU0l0QkVBQ1FDQUJLQUlBUVFWTkJFQWdCQ2dDQUVFR1NRMEJDeUFEUVFRMkFrQWdBMEVFTmdKSUlBTkJCRFlDT0NBRFFRUTJBakJCQVF3Q0MwRUNJUTlCQWlFSkFrQWdBUzhCSEEwQUlBUXZBVEFOQUVFQklRa2dBU2dDZENBRUtBSjhSdzBBSUFFdUFZUUJJQVF1QWF3QmF5SUZJQVZCSDNVaUJXb2dCWE5CQTBzTkFDQUJMZ0dHQVNBRUxnR3VBV3NpQ1NBSlFSOTFJZ2xxSUFselFRTkxJUWtMSUFNZ0NUWUNNQUpBSUFFdkFSNE5BQ0FFTHdFeURRQkJBU0VQSUFFb0FuUWdCQ2dDZkVjTkFDQUJMZ0dJQVNBRUxnR3dBV3NpQlNBRlFSOTFJZ1ZxSUFWelFRTkxEUUFnQVM0QmlnRWdCQzRCc2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFUEN5QURJQTgyQWpoQkFpRUZRUUloQ2dKQUlBRXZBU1FOQUNBRUx3RTREUUJCQVNFS0lBRW9BbmdnQkNnQ2dBRkhEUUFnQVM0QmxBRWdCQzRCdkFGcklnZ2dDRUVmZFNJSWFpQUljMEVEU3cwQUlBRXVBWllCSUFRdUFiNEJheUlJSUFoQkgzVWlDR29nQ0hOQkEwc2hDZ3NnQXlBS05nSkFBa0FnQVM4QkpnMEFJQVF2QVRvTkFFRUJJUVVnQVNnQ2VDQUVLQUtBQVVjTkFDQUJMZ0dZQVNBRUxnSEFBV3NpQ0NBSVFSOTFJZ2hxSUFoelFRTkxEUUFnQVM0Qm1nRWdCQzRCd2dGcklnUWdCRUVmZFNJRWFpQUVjMEVEU3lFRkN5QURJQVUyQWtnZ0NTQVBjaUFLY2lBRmNrRUFSd3dCQ3lBRFFRQTJBa0FnQTBFQU5nSklJQU5CQURZQ09DQURRUUEyQWpCQkFBc2hDUUpBQWtBQ1FBSkFJQVpCQkhFaUxnUkFBa0FnQVNnQ0FDSUdRUVZOQkVBZ0FpZ0NBRUVHU1EwQkN5QURRUVEyQW5RZ0EwRUVOZ0tVQVNBRFFRUTJBbFFnQTBFRU5nSTBRUUVoQ1F3Q0MwRUNJUTlCQWlFRUFrQWdBUzhCSEEwQUlBSXZBU1lOQUVFQklRUWdBU2dDZENBQ0tBSjRSdzBBSUFFdUFZUUJJQUl1QVpnQmF5SUZJQVZCSDNVaUJXb2dCWE5CQTBzTkFDQUJMZ0dHQVNBQ0xnR2FBV3NpQkNBRVFSOTFJZ1JxSUFSelFRTkxJUVFMSUFNZ0JEWUNOQUpBSUFFdkFTQU5BQ0FDTHdFcURRQkJBU0VQSUFFb0FuUWdBaWdDZUVjTkFDQUJMZ0dNQVNBQ0xnR2dBV3NpQlNBRlFSOTFJZ1ZxSUFWelFRTkxEUUFnQVM0QmpnRWdBaTRCb2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFUEN5QURJQTgyQWxSQkFpRUZRUUloQ2dKQUlBRXZBU3dOQUNBQ0x3RTJEUUJCQVNFS0lBRW9BbndnQWlnQ2dBRkhEUUFnQVM0QnBBRWdBaTRCdUFGcklnZ2dDRUVmZFNJSWFpQUljMEVEU3cwQUlBRXVBYVlCSUFJdUFib0JheUlJSUFoQkgzVWlDR29nQ0hOQkEwc2hDZ3NnQXlBS05nSjBBa0FnQVM4Qk1BMEFJQUl2QVRvTkFFRUJJUVVnQVNnQ2ZDQUNLQUtBQVVjTkFDQUJMZ0dzQVNBQ0xnSEFBV3NpQ0NBSVFSOTFJZ2hxSUFoelFRTkxEUUFnQVM0QnJnRWdBaTRCd2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFRkN5QURJQVUyQXBRQklBbEZEUUpCQVNFSkRBTUxJQU5CQURZQ2RDQURRUUEyQXBRQklBTkJBRFlDVkNBRFFRQTJBalFnQVNnQ0FDRUdDeUFHUVFaSkRRRWdBMEVETmdLZ0FTQURRb09BZ0lBd053S2tBU0FEUVFNMkFwQUJJQU5CQXpZQ2NDQURRUU0yQXF3QklBTkNnNENBZ0RBM0E1Z0JJQU5DZzRDQWdEQTNBNGdCSUFOQ2c0Q0FnREEzQTRBQklBTkNnNENBZ0RBM0EzZ2dBMEtEZ0lDQU1EY0RhQ0FEUW9PQWdJQXdOd05nSUFOQ2c0Q0FnREEzQTFnZ0EwS0RnSUNBTURjQ1RDQURRUU0yQWtRZ0EwRUROZ0k4REFJTElBUWdEM0lnQ25JZ0JYSkJBRWNoQ1FzQ1FBSi9JQVpCQTAwRVFDQUdRUUowUVl3MWFpZ0NBQXdCQzBFRUMwRUJSZ1JBSUFFZ0EwRXdhaEJFSUFNb0Fxd0JJUWNnQXlnQ3BBRWhEaUFES0FLY0FTRVFJQU1vQW93QklSa2dBeWdDaEFFaEJpQURLQUo4SVJjZ0F5Z0NiQ0VJSUFNb0FtUWhCQ0FES0FKY0lSUWdBeWdDVENFTUlBTW9Ba1FoQWlBREtBSThJUkVnQXlnQ3FBRWhIQ0FES0FLZ0FTRW1JQU1vQXBnQklRMGdBeWdDa0FFaEhTQURLQUtJQVNFU0lBTW9Bb0FCSVJVZ0F5Z0NlQ0ViSUFNb0FuQWhFeUFES0FKb0lRb2dBeWdDWUNFUElBTW9BbGdoQlNBREtBSlFJU2NNQVFzZ0F3Si9Ba0FnQXdKL0FrQUNRQ0FCS0FJQVFYNXFJZ1JCQVUwRVFDQUVRUUZyQkVBZ0F3Si9Ba0FnQVM4QklDSUVEUUFnQVM4QkhBMEFRUUFNQVF0QkFnc2lKellDVUNBREFuOENRQ0FCTHdFaUlnY05BQ0FCTHdFZURRQkJBQXdCQzBFQ0N5SUZOZ0pZSUFNQ2Z3SkFJQUV2QVNnaUJnMEFJQUV2QVNRTkFFRUFEQUVMUVFJTElnODJBbUFnQXdKL0FrQWdBUzhCS2lJT0RRQWdBUzhCSmcwQVFRQU1BUXRCQWdzaUNqWUNhQ0FEQW44Q1FDQUJMd0V3SWg0TkFDQUJMd0VzRFFCQkFBd0JDMEVDQ3lJZE5nS1FBU0FEQW44Q1FDQUJMd0V5SWhBTkFDQUJMd0V1RFFCQkFBd0JDMEVDQ3lJTk5nS1lBU0FEQW44Q1FDQUJMd0U0SWdzTkFDQUJMd0UwRFFCQkFBd0JDMEVDQ3lJbU5nS2dBU0FEQW44Q1FDQUJMd0U2SWhnTkFDQUJMd0UyRFFCQkFBd0JDMEVDQ3lJY05nS29BVUVDSVJ0QkFpRVRBa0FnQkNBQkx3RXNJaGR5RFFCQkFTRVRJQUV1QWFRQklBRXVBWXdCYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBQkxnR21BU0FCTGdHT0FXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWdBU2dDZkNBQktBSjBSeUVUQ3lBRElCTTJBbkFDUUNBSElBRXZBUzRpSUhJTkFFRUJJUnNnQVM0QnFBRWdBUzRCa0FGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRXVBYW9CSUFFdUFaSUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQ0FCS0FKOElBRW9BblJISVJzTElBTWdHellDZUVFQ0lSSkJBaUVWQWtBZ0JpQUJMd0UwSWhseURRQkJBU0VWSUFFdUFiUUJJQUV1QVp3QmF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTkFDQUJMZ0cyQVNBQkxnR2VBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVNnQ2dBRWdBU2dDZUVjaEZRc2dBeUFWTmdLQUFRSkFJQTRnQVM4Qk5pSWhjZzBBUVFFaEVpQUJMZ0c0QVNBQkxnR2dBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVM0QnVnRWdBUzRCb2dGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRW9Bb0FCSUFFb0FuaEhJUklMSUFNZ0VqWUNpQUVnQVM4QkhnMENJQUV2QVJ3RVFFRUNJUkVnQTBFQ05nSThJQUV2QVNRaUNBMEdRUUFoREVFQURBY0xRUUFoRVNBRFFRQTJBanhCQUNFTVFRQWdBUzhCSkNJSVJRMEdHZ3dGQ3lBREFuOENRQ0FCTHdFZ0lnSU5BQ0FCTHdFY0RRQkJBQXdCQzBFQ0N5SW5OZ0pRSUFNQ2Z3SkFJQUV2QVNJaUJnMEFJQUV2QVI0TkFFRUFEQUVMUVFJTElnVTJBbGdnQXdKL0FrQWdBUzhCS0NJT0RRQWdBUzhCSkEwQVFRQU1BUXRCQWdzaUR6WUNZQ0FEQW44Q1FDQUJMd0VxSWdnTkFDQUJMd0VtRFFCQkFBd0JDMEVDQ3lJS05nSm9JQU1nQWlBQkx3RXNJaGR5UVFCSFFRRjBJaE0yQW5BZ0F5QUdJQUV2QVM0aUMzSkJBRWRCQVhRaUd6WUNlQ0FESUE0Z0FTOEJOQ0llY2tFQVIwRUJkQ0lWTmdLQUFTQURJQWdnQVM4Qk5pSVpja0VBUjBFQmRDSVNOZ0tJQVNBRElBRXZBVEFpRUNBWGNrRUFSMEVCZENJZE5nS1FBU0FESUFFdkFUSWlJQ0FMY2tFQVIwRUJkQ0lOTmdLWUFTQURJQUV2QVRnaUlTQWVja0VBUjBFQmRDSW1OZ0tnQVNBRElBRXZBVG9pQnlBWmNrRUFSMEVCZENJY05nS29BU0FEQW44Q1FDQUJMd0VlSWlRTkFDQUJMd0VjRFFCQkFBd0JDMEVDQ3lJUk5nSThJQUV2QVNZRVFDQUJMd0VrSVJnTUF3c2dBUzhCSkNJWURRSkJBQ0VZUVFBTUF3c2dBUzRCaGdFaEZDQUJMZ0dPQVNFRVFRSWhCU0FEQW45QkFpQUJMd0VjSWhFZ0FTOEJJQ0l2Y2cwQUdrRUJJQUV1QVl3QklBRXVBWVFCYXlJR0lBWkJIM1VpQm1vZ0JuTkJBMHNOQUJvZ0JDQVVheUlHSUFaQkgzVWlCbW9nQm5OQkEwc0xJaWMyQWxBZ0FTNEJpZ0VoQ0NBQkxnR1NBU0VHQWtBZ0FTOEJIaUl3SUFFdkFTSWlFSElOQUVFQklRVWdBUzRCa0FFZ0FTNEJpQUZySWdJZ0FrRWZkU0lDYWlBQ2MwRURTdzBBSUFZZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6UVFOTElRVUxJQU1nQlRZQ1dDQUJMZ0dXQVNFTUlBRXVBWjRCSVFkQkFpRUtJQU1DZjBFQ0lBRXZBU1FpTVNBQkx3RW9JaGR5RFFBYVFRRWdBUzRCbkFFZ0FTNEJsQUZySWdJZ0FrRWZkU0lDYWlBQ2MwRURTdzBBR2lBSElBeHJJZ0lnQWtFZmRTSUNhaUFDYzBFRFN3c2lEellDWUNBQkxnR2FBU0V5SUFFdUFhSUJJUXNDUUNBQkx3RW1Ja0FnQVM4QktpSXpjZzBBUVFFaENpQUJMZ0dnQVNBQkxnR1lBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQ3lBeWF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzaENnc2dBeUFLTmdKb0lBRXVBYVlCSVI1QkFpRWJRUUloRXdKQUlDOGdBUzhCTENJMGNnMEFRUUVoRXlBQkxnR2tBU0FCTGdHTUFXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWdIaUFFYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBQktBSjhJQUVvQW5SSElSTUxJQU1nRXpZQ2NDQUJMZ0dxQVNFT0FrQWdFQ0FCTHdFdUloaHlEUUJCQVNFYklBRXVBYWdCSUFFdUFaQUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQ0FPSUFacklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRW9BbndnQVNnQ2RFY2hHd3NnQXlBYk5nSjRJQUV1QWJZQklSbEJBaUVTUVFJaEZRSkFJQmNnQVM4Qk5DSWdjZzBBUVFFaEZTQUJMZ0cwQVNBQkxnR2NBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnR1NBSGF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTkFDQUJLQUtBQVNBQktBSjRSeUVWQ3lBRElCVTJBb0FCSUFFdUFib0JJU0VDUUNBeklBRXZBVFlpTlhJTkFFRUJJUklnQVM0QnVBRWdBUzRCb0FGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlDRWdDMnNpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVNnQ2dBRWdBU2dDZUVjaEVnc2dBeUFTTmdLSUFTQUJMZ0d1QVNFMlFRSWhEU0FEQW45QkFpQTBJQUV2QVRBaVFYSU5BQnBCQVNBQkxnR3NBU0FCTGdHa0FXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWFJRFlnSG1zaUFpQUNRUjkxSWdKcUlBSnpRUU5MQ3lJZE5nS1FBU0FCTGdHeUFTRWtBa0FnR0NBQkx3RXlJamR5RFFCQkFTRU5JQUV1QWJBQklBRXVBYWdCYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBa0lBNXJJZ0lnQWtFZmRTSUNhaUFDYzBFRFN5RU5DeUFESUEwMkFwZ0JJQUV1QWI0QklTbEJBaUVjSUFNQ2YwRUNJQ0FnQVM4Qk9DSTRjZzBBR2tFQklBRXVBYndCSUFFdUFiUUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQm9nS1NBWmF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTElpWTJBcUFCSUFFdUFjSUJJVGtDUUNBMUlBRXZBVG9pUW5JTkFFRUJJUndnQVM0QndBRWdBUzRCdUFGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlEa2dJV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxJUndMSUFNZ0hEWUNxQUZCQWlFQ0lBTUNmMEVDSUJFZ01ISU5BQnBCQVNBQkxnR0lBU0FCTGdHRUFXc2lFU0FSUVI5MUloRnFJQkZ6UVFOTERRQWFJQWdnRkdzaUZDQVVRUjkxSWhScUlCUnpRUU5MQ3lJUk5nSThBa0FnTUNBeGNnMEFRUUVoQWlBQkxnR1VBU0FCTGdHSUFXc2lGQ0FVUVI5MUloUnFJQlJ6UVFOTERRQWdEQ0FJYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUNBQktBSjRJQUVvQW5SSElRSUxJQU1nQWpZQ1JFRUNJUlFnQXdKL1FRSWdNU0JBY2cwQUdrRUJJQUV1QVpnQklBRXVBWlFCYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUJvZ01pQU1heUlJSUFoQkgzVWlDR29nQ0hOQkEwc0xJZ3cyQWt3Q1FDQVFJQzl5RFFCQkFTRVVJQUV1QVpBQklBRXVBWXdCYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUNBR0lBUnJJZ1FnQkVFZmRTSUVhaUFFYzBFRFN5RVVDeUFESUJRMkFseEJBaUVJUVFJaEJBSkFJQkFnRjNJTkFFRUJJUVFnQVM0Qm5BRWdBUzRCa0FGckloQWdFRUVmZFNJUWFpQVFjMEVEU3cwQUlBY2dCbXNpQmlBR1FSOTFJZ1pxSUFaelFRTkxEUUFnQVNnQ2VDQUJLQUowUnlFRUN5QURJQVEyQW1RQ1FDQVhJRE55RFFCQkFTRUlJQUV1QWFBQklBRXVBWndCYXlJR0lBWkJIM1VpQm1vZ0JuTkJBMHNOQUNBTElBZHJJZ1lnQmtFZmRTSUdhaUFHYzBFRFN5RUlDeUFESUFnMkFteEJBaUVHSUFNQ2YwRUNJQmdnTkhJTkFCcEJBU0FCTGdHb0FTQUJMZ0drQVdzaUJ5QUhRUjkxSWdkcUlBZHpRUU5MRFFBYUlBNGdIbXNpQnlBSFFSOTFJZ2RxSUFkelFRTkxDeUlYTmdKOEFrQWdHQ0FnY2cwQVFRRWhCaUFCTGdHMEFTQUJMZ0dvQVdzaUJ5QUhRUjkxSWdkcUlBZHpRUU5MRFFBZ0dTQU9heUlISUFkQkgzVWlCMm9nQjNOQkEwc05BQ0FCS0FLQUFTQUJLQUo4UnlFR0N5QURJQVkyQW9RQlFRSWhFQ0FEQW45QkFpQWdJRFZ5RFFBYVFRRWdBUzRCdUFFZ0FTNEJ0QUZySWdjZ0IwRWZkU0lIYWlBSGMwRURTdzBBR2lBaElCbHJJZ2NnQjBFZmRTSUhhaUFIYzBFRFN3c2lHVFlDakFFQ1FDQTNJRUZ5RFFCQkFTRVFJQUV1QWJBQklBRXVBYXdCYXlJSElBZEJIM1VpQjJvZ0IzTkJBMHNOQUNBa0lEWnJJZ2NnQjBFZmRTSUhhaUFIYzBFRFN5RVFDeUFESUJBMkFwd0JRUUloQjBFQ0lRNENRQ0EzSURoeURRQkJBU0VPSUFFdUFid0JJQUV1QWJBQmF5SUxJQXRCSDNVaUMyb2dDM05CQTBzTkFDQXBJQ1JySWdzZ0MwRWZkU0lMYWlBTGMwRURTdzBBSUFFb0FvQUJJQUVvQW54SElRNExJQU1nRGpZQ3BBRUNRQ0E0SUVKeURRQkJBU0VISUFFdUFjQUJJQUV1QWJ3QmF5SUxJQXRCSDNVaUMyb2dDM05CQTBzTkFDQTVJQ2xySWdjZ0IwRWZkU0lIYWlBSGMwRURTeUVIQ3lBRElBYzJBcXdCREFVTFFRSWhFU0FEUVFJMkFqd2dBUzhCSkNFSURBSUxRUUlMSWd3MkFreEJBaUVFSUFOQkFpQUlRUUJIUVFGMElBNGJJZ2cyQW13Z0EwRUNJQVpCQUVkQkFYUWdBaHNpRkRZQ1hDQURJQWNnSVhKQkFFZEJBWFFpQnpZQ3JBRWdBeUFRSUNCeVFRQkhRUUYwSWhBMkFwd0JJQU1nR1NBZWNrRUFSMEVCZENJWk5nS01BU0FESUFzZ0YzSkJBRWRCQVhRaUZ6WUNmRUVDSVFJQ1FDQVlJQ1J5RFFCQkFTRUNJQUV1QVpRQklBRXVBWWdCYXlJWUlCaEJIM1VpR0dvZ0dITkJBMHNOQUNBQkxnR1dBU0FCTGdHS0FXc2lHQ0FZUVI5MUloaHFJQmh6UVFOTERRQWdBU2dDZUNBQktBSjBSeUVDQ3lBRElBSTJBa1FDUUNBR0lBNXlEUUJCQVNFRUlBRXVBWndCSUFFdUFaQUJheUlHSUFaQkgzVWlCbW9nQm5OQkEwc05BQ0FCTGdHZUFTQUJMZ0dTQVdzaUJpQUdRUjkxSWdacUlBWnpRUU5MRFFBZ0FTZ0NlQ0FCS0FKMFJ5RUVDeUFESUFRMkFtUkJBaUVPUVFJaEJnSkFJQXNnSG5JTkFFRUJJUVlnQVM0QnRBRWdBUzRCcUFGcklnc2dDMEVmZFNJTGFpQUxjMEVEU3cwQUlBRXVBYllCSUFFdUFhb0JheUlMSUF0QkgzVWlDMm9nQzNOQkEwc05BQ0FCS0FLQUFTQUJLQUo4UnlFR0N5QURJQVkyQW9RQkFrQWdJQ0FoY2cwQVFRRWhEaUFCTGdHOEFTQUJMZ0d3QVdzaUN5QUxRUjkxSWd0cUlBdHpRUU5MRFFBZ0FTNEJ2Z0VnQVM0QnNnRnJJZ3NnQzBFZmRTSUxhaUFMYzBFRFN3MEFJQUVvQW9BQklBRW9BbnhISVE0TElBTWdEallDcEFFTUFnc2dDQ0VNUVFJTElnSTJBa1FnQXlBQkx3RW1JQXhCLy84RGNYSkJBRWRCQVhRaUREWUNUQ0FEQW44Q1FDQUhSUVJBSUFRRVFFRUNJUlFnQTBFQ05nSmNJQVlOQWtFQURBTUxRUUFoRkNBRFFRQTJBbHhCQUNBR1JRMENHZ3dCQzBFQ0lSUWdBMEVDTmdKY0MwRUNDeUlFTmdKa0lBTkJBaUFPUVFCSFFRRjBJQVliSWdnMkFtd2dBd0ovQWtBZ0lFVUVRQ0FYQkVCQkFpRVhJQU5CQWpZQ2ZDQVpEUUpCQUF3REMwRUFJUmNnQTBFQU5nSjhRUUFnR1VVTkFob01BUXRCQWlFWElBTkJBallDZkF0QkFnc2lCallDaEFFZ0F5QUxJQmh5UVFCSFFRRjBJZ2MyQXF3QklBTWdDeUFRY2tFQVIwRUJkQ0lPTmdLa0FTQURRUUlnRUVFQVIwRUJkQ0FlR3lJUU5nS2NBU0FESUJrZ0lYSkJBRWRCQVhRaUdUWUNqQUVMSUFrZ0ozSWdCWElnRDNJZ0NuSWdFM0lnRzNJZ0ZYSWdFbklnSFhJZ0RYSWdKbklnSEhJZ0VYSWdBbklnREhJZ0ZISWdCSElnQ0hJZ0YzSWdCbklnR1hJZ0VISWdEbklnQjNKRkRRRUxJQUVvQWd3aENTQURJQUVvQWhBaUJTQUJLQUlVSWdScUlnWkJNeUFHUVROSUd5SUdRUUFnQmtFQVNodEIwQmRxTFFBQUlnWTJBaUFnQXlBRUlBbHFJZ0pCTXlBQ1FUTklHeUlDUVFBZ0FrRUFTaHNpQ0VHUUYyb3RBQUFpQWpZQ0hDQURJQWhCQTJ4QmtCaHFJZ2cyQWhnQ1FDQXRSUTBBSUFRZ0FTZ0N6QUVvQWhRaUIwY0VRQ0FESUFRZ0IycEJBV3BCQVhZaUJ5QUZhaUlOUVRNZ0RVRXpTQnNpRFVFQUlBMUJBRW9iUWRBWGFpMEFBRFlDQ0NBRElBY2dDV29pQjBFeklBZEJNMGdiSWdkQkFDQUhRUUJLR3lJSFFaQVhhaTBBQURZQ0JDQURJQWRCQTJ4QmtCaHFOZ0lBREFFTElBTWdCallDQ0NBRElBSTJBZ1FnQXlBSU5nSUFDd0pBSUM1RkRRQWdCQ0FCS0FMSUFTZ0NGQ0lIUndSQUlBTWdCQ0FIYWtFQmFrRUJkaUlFSUFWcUlnVkJNeUFGUVROSUd5SUZRUUFnQlVFQVNodEIwQmRxTFFBQU5nSVVJQU1nQkNBSmFpSUVRVE1nQkVFelNCc2lCRUVBSUFSQkFFb2JJZ1JCa0JkcUxRQUFOZ0lRSUFNZ0JFRURiRUdRR0dvMkFnd01BUXNnQXlBR05nSVVJQU1nQWpZQ0VDQURJQWcyQWd3TElBQW9BZ0FnSHlBNmJDSVVRUWgwYWlBcVFRUjBhaUVKUVFBaEFrRURJUVFnQTBFd2FpRUdBMEFnQmlnQ0JDSUZCRUFnQ1NBRklDTWdHaEFaQ3lBR0tBSU1JZ1VFUUNBSlFRUnFJQVVnSWlBYUVCa0xJQVlvQWhRaUJRUkFJQWxCQ0dvZ0JTQWlJQm9RR1FzZ0JpZ0NIQ0lGQkVBZ0NVRU1haUFGSUNJZ0doQVpDeUFFSVFnQ1FBSkFBa0FnQmlnQ0FDSUVJQVlvQWdnaUQwY05BQ0FFSUFZb0FoQkhEUUFnQkNBR0tBSVlSdzBBSUFSRkRRSWdBeUFDUVF4c2FpSUZLQUlJSVF3Z0JTZ0NCQ0ViSUFSQkJFa05BU0FiUVFKMlFRSnFJUkJCRUNFUElBa2hCQU5BQWtBZ0JDQW9haUlDTFFBQUlnb2dCQzBBQUNJT2F5SUZJQVZCSDNVaUJXb2dCWE1pQnlBYlR3MEFJQVFnTEdvaUVTMEFBQ0lGSUFwcklnMGdEVUVmZFNJTmFpQU5jeUFNVHcwQUlBUWdHbW9pSEMwQUFDSVNJQTVySWcwZ0RVRWZkU0lOYWlBTmN5QU1UdzBBQWtBZ0J5QVFTUVJBSUFRZ0pXb2lGeTBBQUNFVkFuOGdCQ0FyYWlJTkxRQUFJaE1nQ21zaUJ5QUhRUjkxSWdkcUlBZHpJQXhKQkVCQkF5RWRJQUlnRWlBS0lBNXFJQVZxSWdKQkFYUnFJQk5xUVFScVFRTjJPZ0FBSUJFZ0FpQVRha0VDYWtFQ2Rqb0FBQ0FDUVFScUlSRWdCQ0EvYWkwQUFDRUhJQk5CQTJ3TUFRc2dDaUFTYWlFUklBVWhCMEVDSVIwZ0FpRU5RUUlMSVFJZ0RTQUNJQkZxSUFkQkFYUnFJQjEyT2dBQUlCVWdEbXNpQWlBQ1FSOTFJZ0pxSUFKeklBeFBEUUVnQkNBRklBb2dFbW9nRG1vaUFrRUJkR29nRldwQkJHcEJBM1k2QUFBZ0hDQUNJQlZxUVFKcVFRSjJPZ0FBSUJjZ0FpQVZRUU5zYWlBRUlENXFMUUFBUVFGMGFrRUVha0VEZGpvQUFBd0NDeUFDSUFvZ0Vtb2dCVUVCZEdwQkFtcEJBblk2QUFBTElBUWdCU0FPYWlBU1FRRjBha0VDYWtFQ2Rqb0FBQXNnQkVFQmFpRUVJQTlCZjJvaUR3MEFDd3dDQ3dKL0lBUUVRQ0FKSUFRZ0F5QUNRUXhzYWlBYUVCZ2dCaWdDQ0NFUEN5QVBDd1JBSUFsQkJHb2dEeUFESUFKQkRHeHFJQm9RR0FzZ0JpZ0NFQ0lFQkVBZ0NVRUlhaUFFSUFNZ0FrRU1iR29nR2hBWUN5QUdLQUlZSWdSRkRRRWdDVUVNYWlBRUlBTWdBa0VNYkdvZ0doQVlEQUVMSUFRZ0JTZ0NBR3BCZjJvdEFBQWlBa0VCYWlFSFFRQWdBbXNoRGtFUUlROGdDU0VFQTBBQ1FDQUVJQ2hxSWhNdEFBQWlEU0FFTFFBQUlncHJJZ1VnQlVFZmRTSUZhaUFGY3lBYlR3MEFJQVFnTEdvaUVTMEFBQ0lTSUExcklnVWdCVUVmZFNJRmFpQUZjeUFNVHcwQUlBUWdHbW9pRUMwQUFDSVZJQXBySWdVZ0JVRWZkU0lGYWlBRmN5QU1UdzBBSUFJaEJTQUVJQ3RxTFFBQUlod2dEV3NpSFNBZFFSOTFJaDFxSUIxeklBeEpCRUFnRVNBU0lBNGdBaUFLSUExcVFRRnFRUUYySUJKQkFYUnJJQnhxUVFGMUlnVWdCU0FDU2hzZ0JTQU9TQnRxT2dBQUlBY2hCUXNnRXlBTkFuOGdCQ0FsYWkwQUFDSVRJQXBySWhFZ0VVRWZkU0lSYWlBUmN5QU1TUVJBSUJBZ0ZTQU9JQUlnQ2lBTmFrRUJha0VCZGlBVlFRRjBheUFUYWtFQmRTSVRJQk1nQWtvYklCTWdEa2diYWpvQUFDQUZRUUZxSVFVTFFRQWdCV3NpRXdzZ0JTQVNJQlZySUFvZ0RXdEJBblJxUVFScVFRTjFJaElnRWlBRlNoc2dFaUFUU0JzaUJXcEJzQzVxTFFBQU9nQUFJQVFnQ2lBRmEwR3dMbW90QUFBNkFBQUxJQVJCQVdvaEJDQVBRWDlxSWc4TkFBc0xJQWhCZjJvaEJDQUdRU0JxSVFZZ0NTQTlhaUVKUVFJaEFpQUlEUUFMSUFFb0Fnd2hCQ0FESUFFb0FoQWlCU0FCS0FJVUlnWWdBU2dDR0NJQ2FpSUpRVE1nQ1VFelNCc2lDVUVBSUFsQkFFb2JRUUowUWVBOWFpZ0NBQ0lKYWlJSVFUTWdDRUV6U0JzaUNFRUFJQWhCQUVvYlFkQVhhaTBBQUNJSU5nSWdJQU1nQkNBSmFpSUhRVE1nQjBFelNCc2lCMEVBSUFkQkFFb2JJZzFCa0JkcUxRQUFJZ2MyQWh3Z0F5QU5RUU5zUVpBWWFpSU5OZ0lZQWtBZ0xVVU5BQ0FHSUFFb0Fzd0JLQUlVSWd4SEJFQWdBeUFKSUFJZ0RHb2lERUV6SUF4Qk0wZ2JJZ3hCQUNBTVFRQktHMEVDZEVIZ1BXb29BZ0JxUVFGcVFRRjJJZ3dnQldvaUQwRXpJQTlCTTBnYklnOUJBQ0FQUVFCS0cwSFFGMm90QUFBMkFnZ2dBeUFFSUF4cUlneEJNeUFNUVROSUd5SU1RUUFnREVFQVNoc2lERUdRRjJvdEFBQTJBZ1FnQXlBTVFRTnNRWkFZYWpZQ0FBd0JDeUFESUFnMkFnZ2dBeUFITmdJRUlBTWdEVFlDQUFzQ1FDQXVSUTBBSUFZZ0FTZ0N5QUVvQWhRaURFY0VRQ0FESUFVZ0NTQUNJQXhxSWdaQk15QUdRVE5JR3lJR1FRQWdCa0VBU2h0QkFuUkI0RDFxS0FJQWFrRUJha0VCZGlJSmFpSUZRVE1nQlVFelNCc2lCVUVBSUFWQkFFb2JRZEFYYWkwQUFEWUNGQ0FESUFRZ0NXb2lCRUV6SUFSQk0wZ2JJZ1JCQUNBRVFRQktHeUlFUVpBWGFpMEFBRFlDRUNBRElBUkJBMnhCa0JocU5nSU1EQUVMSUFNZ0NEWUNGQ0FESUFjMkFoQWdBeUFOTmdJTUN5QUFLQUlBSUR4cUlCUkJCblJxSUNwQkEzUnFJZ2tnTzJvaEJFRUFJUW9nQTBFd2FpRUdRUUFoQWdOQUlBWW9BZ1FpQlFSQUlBa2dCU0FqSUJZUUVDQUVJQVlvQWdRZ0l5QVdFQkFMSUFZb0FpUWlCUVJBSUFrZ0dtb2dCU0FqSUJZUUVDQUVJQnBxSUFZb0FpUWdJeUFXRUJBTElBWW9BaFFpQlFSQUlBbEJCR29nQlNBaUlCWVFFQ0FFUVFScUlBWW9BaFFnSWlBV0VCQUxJQVlvQWpRaUJRUkFJQWtnR21wQkJHb2dCU0FpSUJZUUVDQUVJQnBxUVFScUlBWW9BalFnSWlBV0VCQUxJQUloQlFKQUFrQWdCaWdDQUNJQ0lBWW9BZ2dpRDBjTkFDQUNJQVlvQWhCSERRQWdBaUFHS0FJWVJ3MEFJQUpGRFFFZ0NTQUNJQU1nQ2tFTWJHb2lBaUFXRUNzZ0JDQUdLQUlBSUFJZ0ZoQXJEQUVMQW44Z0FnUkFJQWtnQWlBRElBcEJER3hxSWdJZ0ZoQVNJQVFnQmlnQ0FDQUNJQllRRWlBR0tBSUlJUThMSUE4TEJFQWdDVUVDYWlBUElBTWdDa0VNYkdvaUFpQVdFQklnQkVFQ2FpQUdLQUlJSUFJZ0ZoQVNDeUFHS0FJUUlnSUVRQ0FKUVFScUlBSWdBeUFLUVF4c2FpSUNJQllRRWlBRVFRUnFJQVlvQWhBZ0FpQVdFQklMSUFZb0FoZ2lBa1VOQUNBSlFRWnFJQUlnQXlBS1FReHNhaUlDSUJZUUVpQUVRUVpxSUFZb0FoZ2dBaUFXRUJJTElBUWdKV29oQkNBSklDVnFJUWtnQmtGQWF5RUdRUUVoQWtFQ0lRb2dCVVVOQUFzTFFRQWdLa0VCYWlJRUlBUWdIMFlpQkJzaEtpQUJRZGdCYWlFQklBUWdPbW9pT2lBQUtBSUlTUTBBQ3dzZ0EwR3dBV29rQUF1Q0JRRUtmeU1BUVpBQmF5SUxKQUFDUUFKQUlBSkJBRWdOQUNBRFFRQklEUUFnQWlBSGFpQUVTdzBBSUFNZ0NHcEJBV29nQlVzTkFDQUZJUXdnQXlFT0RBRUxJQUFnQ3lBQ0lBTWdCQ0FGSUFjZ0NFRUJhaUlNSUFjUURDQUFJQVFnQld4cUlBc2dCeUFNYkdvZ0FpQURJQVFnQlNBSElBd2dCeEFNSUFzaEFDQUhJUVJCQUNFQ0N3SkFJQWhCQVhZaUJVVU5BQ0FIUVFGMklnTkZEUUJCRUNBSGF5RVFRUWdnQm1zaENTQUVRUUYwSWcwZ0Iyc2hFU0FBSUFKcUloSWdCQ0FPYkdvaEJ5QUJJUUlnQlNFSUEwQWdBeUVBQTBBZ0J5QU5haTBBQUNFS0lBSWdDU0FITFFBQWJDQUVJQWRxTFFBQUlnOGdCbXhxUVFOMFFTQnFRUVoyT2dBQUlBSWdDU0FQYkNBR0lBcHNha0VEZEVFZ2FrRUdkam9BQ0NBSFFRRnFJZ29nRFdvdEFBQWhEeUFDSUFrZ0J5MEFBV3dnQkNBS2FpMEFBQ0lLSUFac2FrRURkRUVnYWtFR2Rqb0FBU0FDSUFrZ0Ntd2dCaUFQYkdwQkEzUkJJR3BCQm5ZNkFBa2dBa0VDYWlFQ0lBZEJBbW9oQnlBQVFYOXFJZ0FOQUFzZ0J5QVJhaUVISUFJZ0VHb2hBaUFJUVg5cUlnZ05BQXNnQVVGQWF5RUNJQklnRENBT2FpQUViR29oQndOQUlBTWhBQU5BSUFjZ0RXb3RBQUFoQVNBQ0lBa2dCeTBBQUd3Z0JDQUhhaTBBQUNJSUlBWnNha0VEZEVFZ2FrRUdkam9BQUNBQ0lBZ2dDV3dnQVNBR2JHcEJBM1JCSUdwQkJuWTZBQWdnQjBFQmFpSUJJQTFxTFFBQUlRZ2dBaUFKSUFjdEFBRnNJQUVnQkdvdEFBQWlBU0FHYkdwQkEzUkJJR3BCQm5ZNkFBRWdBaUFCSUFsc0lBWWdDR3hxUVFOMFFTQnFRUVoyT2dBSklBSkJBbW9oQWlBSFFRSnFJUWNnQUVGL2FpSUFEUUFMSUFjZ0VXb2hCeUFDSUJCcUlRSWdCVUYvYWlJRkRRQUxDeUFMUVpBQmFpUUFDLzBFQVF0L0l3QkJrQUZySWd3a0FDQUhRUUZxSVFrQ1FBSkFJQUpCQUVnTkFDQURJQWhxSUFWTERRQWdBMEVBU0EwQUlBSWdDV29nQkVzTkFDQUVJUWtnQXlFTERBRUxJQUFnRENBQ0lBTWdCQ0FGSUFrZ0NDQUpFQXdnQUNBRUlBVnNhaUFNSUFnZ0NXeHFJQUlnQXlBRUlBVWdDU0FJSUFrUURDQU1JUUFnQ0NFRlFRQWhBZ3NDUUNBSVFRRjJJZ2hGRFFBZ0IwRUJkaUlFUlEwQVFSQWdCMnNoRGtFSUlBWnJJUW9nQ1VFQmRDQUhheUVQSUFBZ0Ftb2lFU0FKSUF0c2FpRUNJQUVoQXlBSUlRQURRQ0FFSVFjRFFDQUNRUUZxSUFscUxRQUFJUkFnQWlBSmFpMEFBQ0VOSUFNZ0FpMEFBU0lTSUFac0lBb2dBaTBBQUd4cVFRTjBRU0JxUVFaMk9nQUFJQU1nQmlBUWJDQUtJQTFzYWtFRGRFRWdha0VHZGpvQUNDQUNMUUFDSVEwZ0FrRUNhaUlDSUFscUxRQUFJUk1nQXlBR0lBMXNJQW9nRW14cVFRTjBRU0JxUVFaMk9nQUJJQU1nQmlBVGJDQUtJQkJzYWtFRGRFRWdha0VHZGpvQUNTQURRUUpxSVFNZ0IwRi9haUlIRFFBTElBSWdEMm9oQWlBRElBNXFJUU1nQUVGL2FpSUFEUUFMSUFGQlFHc2hBeUFSSUFVZ0Myb2dDV3hxSVFJRFFDQUVJUWNEUUNBQ1FRRnFJQWxxTFFBQUlRQWdBaUFKYWkwQUFDRUJJQU1nQWkwQUFTSUZJQVpzSUFvZ0FpMEFBR3hxUVFOMFFTQnFRUVoyT2dBQUlBTWdBQ0FHYkNBQklBcHNha0VEZEVFZ2FrRUdkam9BQ0NBQ0xRQUNJUUVnQWtFQ2FpSUNJQWxxTFFBQUlRc2dBeUFCSUFac0lBVWdDbXhxUVFOMFFTQnFRUVoyT2dBQklBTWdCaUFMYkNBQUlBcHNha0VEZEVFZ2FrRUdkam9BQ1NBRFFRSnFJUU1nQjBGL2FpSUhEUUFMSUFJZ0Qyb2hBaUFESUE1cUlRTWdDRUYvYWlJSURRQUxDeUFNUVpBQmFpUUFDN2tIQVFWL0l3QkJFR3NpQkNRQUFrQWdBQ0FCUVFCQnlBQVFCeUlERUFJaUFRMEFRUUVoQVNBREtBSUFRZjhCU3cwQUlBQWdBMEVFYWhBQ0lnRU5BRUVCSVFFZ0F5Z0NCRUVmU3cwQUlBQkJBUkFERFFBZ0FFRUJFQU1pQWtGL1JnMEFJQU1nQWtFQlJqWUNDQ0FBSUFSQkRHb1FBaUlCRFFBZ0F5QUVLQUlNUVFGcUlnRTJBZ3dnQVVFSVN3UkFRUUVoQVF3QkN3SkFJQUZCQWtrTkFDQUFJQU5CRUdvUUFpSUJEUUVnQXlnQ0VDSUJRUVpMSWdJRVFFRUJJUUVNQWdzZ0FnMEFBa0FDUUFKQUFrQWdBVUVCYXc0R0JBRUNBZ0lEQUFzZ0F5QURLQUlNSWdGQkFuUVFDaUlDTmdJVUlBSkZCRUJCLy84RElRRU1CUXNnQVVVTkEwRUFJUUlEUUNBQUlBUkJER29RQWlJQkRRVWdBeWdDRkNBQ1FRSjBhaUFFS0FJTVFRRnFOZ0lBSUFKQkFXb2lBaUFES0FJTVNRMEFDd3dEQ3lBRElBTW9BZ3dpQWtFQ2RFRjhhaUlCRUFvaUJUWUNHQ0FESUFFUUNpSUdOZ0ljUWYvL0F5RUJJQVZGRFFNZ0JrVU5BeUFDUVFGR0RRSkJBQ0VDQTBBZ0FDQUVRUXhxRUFJaUFRMEVJQUpCQW5RaUJTQURLQUlZYWlBRUtBSU1OZ0lBSUFBZ0JFRU1haEFDSWdFTkJDQURLQUljSUFWcUlBUW9BZ3cyQWdBZ0FrRUJhaUlDSUFNb0FneEJmMnBKRFFBTERBSUxRUUVoQVNBQVFRRVFBeUlDUVg5R0RRSWdBeUFDUVFGR05nSWdJQUFnQkVFTWFoQUNJZ0VOQWlBRElBUW9BZ3hCQVdvMkFpUU1BUXNnQUNBRVFReHFFQUlpQVEwQklBTWdCQ2dDREVFQmFpSUJOZ0lvSUFNZ0FVRUNkQkFLSWdJMkFpd2dBa1VFUUVILy93TWhBUXdDQ3lBQlJRMEFJQU1vQWd4QkFuUkJyRHRxS0FJQUlRWkJBQ0VDQTBBZ0FDQUdFQU1oQlNBREtBSXNJQUpCQW5ScUlBVTJBZ0JCQVNFQklBVWdBeWdDREU4TkFpQUNRUUZxSWdJZ0F5Z0NLRWtOQUFzTElBQWdCRUVNYWhBQ0lnRU5BRUVCSVFFZ0JDZ0NEQ0lDUVI5TERRQWdBeUFDUVFGcU5nSXdJQUFnQkVFTWFoQUNJZ0VOQUVFQklRRWdCQ2dDREVFZlN3MEFJQUJCQVJBREJFQU1BUXNnQUVFQ0VBTkJBa3NFUUF3QkN5QUFJQVJCQ0dvUUJTSUJEUUFnQkNnQ0NFRWFhaUlCUVROTEJFQkJBU0VCREFFTElBTWdBVFlDTkNBQUlBUkJDR29RQlNJQkRRQWdCQ2dDQ0VFYWFrRXpTd1JBUVFFaEFRd0JDeUFBSUFSQkNHb1FCU0lCRFFCQkFTRUJJQVFvQWdnaUFrRU1ha0VZU3cwQUlBTWdBallDT0NBQVFRRVFBeUlDUVg5R0RRQWdBeUFDUVFGR05nSThJQUJCQVJBRElnSkJmMFlOQUNBRElBSkJBVVkyQWtBZ0FFRUJFQU1pQWtGL1JnMEFJQU1nQWtFQlJqWUNSQ0FBRUI5QkFDRUJDeUFFUVJCcUpBQWdBUXZxQlFFSmZ3SkFJQUlvQXB3Q1JRUkFEQUVMUVFFaEJnTkFBa0FDUUNBQ0lBVkJGR3hxS0FLZ0FpSUVRUVZMRFFBZ0JFRUJhdzRGQUFBQUFBTUJDeUFGUVFGcUlRVU1BUXNMSUFRaEJnc0Nmd0pBSUFFb0FoQWlCRUVCVFFSQUlBUkJBV3NFUUNBREtBSUFRUVZHQkVBZ0FFSUFOd0lBSUFJb0FoUWhCVUVBSVFRTUF3c2dBQ2dDQUNJRUlBSW9BaFFpQlUwTkFpQUVJQVZySUFFb0FoUWlCMEVCZGtrTkFpQUFLQUlFSUFkcURBTUxRUUFoQlFKL1FRQWdBeWdDQUVFRlJnMEFHaUFBS0FJTUlnY2dBQ2dDQ0NBQ0tBSU1UUTBBR2lBQktBSU1JQWRxQ3lFSFFRQWhCQUovSUFFb0FpUWlDQVJBSUFJb0Fnd2dCMm9oQlFzZ0JTQURLQUlFSWdwRklBVkJBRWR4YXlJSkN3UkFJQWxCZjJvaUF5QURJQWh1SWdzZ0NHeHJJUU1MSUFnRVFDQUJLQUlvSVF4QkFDRUZBMEFnRENBRlFRSjBhaWdDQUNBRWFpRUVJQVZCQVdvaUJTQUlSdzBBQ3dzQ1FDQUpSUVJBUVFBaEJBd0JDeUFFSUF0c0lRUWdBU2dDS0NFSVFRQWhCUU5BSUFnZ0JVRUNkR29vQWdBZ0JHb2hCQ0FGUVFGcUlnVWdBMDBOQUFzTElBcEZCRUFnQVNnQ0hDQUVhaUVFQ3lBR1JRUkFJQUlvQWlBaEF5QUJLQUlnSVFFZ0FpZ0NIQ0VHSUFBZ0J6WUNEQ0FBSUFJb0FndzJBZ2dnQmlBQklBTnFJZ0JCSDNVZ0FIRWdCR3BxRHdzZ0FFSUFOd0lJUVFBUEMwRUFJUVZCQUNFRUlBTW9BZ0JCQlVjRVFDQUFLQUlNSVFVZ0FDZ0NDQ0FDS0FJTUlnUkxCRUFnQVNnQ0RDQUZhaUVGQ3lBRUlBVnFRUUYwSUFNb0FnUkZheUVFQ3lBR1JRUkFJQUFnQlRZQ0RDQUFJQUlvQWd3MkFnZ2dCQThMSUFCQ0FEY0NDRUVBRHdzQ1FDQUZJQVJORFFBZ0JTQUVheUFCS0FJVUlnRkJBWFpORFFBZ0FDZ0NCQ0FCYXd3QkN5QUFLQUlFQ3lFRUlBTW9BZ1JGQkVBZ0JDQUZhaUFDS0FJWUlnQkJIM1VnQUhGcUR3c2dBQ0FFTmdJRUlBSW9BaGdoQVNBR0JFQWdBRUVBTmdJRUlBQkJBQ0FCYXlBQlFSOTFjVFlDQUVFQUR3c2dBQ0FGTmdJQUlBUWdCV29nQVVFZmRTQUJjV29MdkFFQkNIOGdBZ1JBSUFGQmYyb2hCMEVBSUFGclFkZ0JiQ0VJUVFFZ0FXdEIyQUZzSVFrZ0FVRi9jMEhZQVd3aENnTkFJQUFnQmtIWUFXeHFJZ01nQTBHb2ZtcEJBQ0FFR3pZQ3lBRWdBd0ovSUFWRkJFQWdBMEVBTmdMTUFVRUFEQUVMSUFNZ0F5QUlhallDekFFZ0F5QUpha0VBSUFRZ0Iwa2JDellDMEFFZ0F5QURJQXBxUVFBZ0JCdEJBQ0FGR3pZQzFBRkJBQ0FFUVFGcUlnTWdBU0FEUmlJREd5RUVJQU1nQldvaEJTQUdRUUZxSWdZZ0FrY05BQXNMQzNjQkFuOUJBU0VDQWtBZ0FFRUJFQU5CZjBZTkFDQUJJQUJCQWhBRE5nSUVJQUVnQUVFRkVBTWlBRFlDQUNBQVFYNXFRUU5KRFFBQ1FDQUFRUXhMRFFCQkFTQUFkQ0lEUWNBOGNVVUVRQ0FEUWFBRGNVVU5BU0FBUVFaR0RRSWdBU2dDQkEwQkRBSUxJQUVvQWdRTkFRdEJBQ0VDQ3lBQ0M1SVRBUVovSUFBZ0FTZ0NBQ0lOTmdJQUlBQWdBQ2dDeEFGQkFXbzJBc1FCSUFJZ0JSQWRBa0FDUUFKQUFrQUNRQ0FOUVI5R0JFQWdBRUVBTmdJVUlBQW9Bc1FCUVFGTERRRWdBRUVjYWlFSklBRkJ5QUpxSVFSQkZ5RUJJQWNoQUFOQUlBbEJFRHNCQUNBQUlBUW9BZ0E2QUFBZ0FDQUVLQUlFT2dBQklBQWdCQ2dDQ0RvQUFpQUFJQVFvQWd3NkFBTWdBQ0FFS0FJUU9nQUVJQUFnQkNnQ0ZEb0FCU0FBSUFRb0FoZzZBQVlnQUNBRUtBSWNPZ0FISUFBZ0JDZ0NJRG9BQ0NBQUlBUW9BaVE2QUFrZ0FDQUVLQUlvT2dBS0lBQWdCQ2dDTERvQUN5QUFJQVFvQWpBNkFBd2dBQ0FFS0FJME9nQU5JQUFnQkNnQ09Eb0FEaUFBSUFRb0FqdzZBQThnQVNJRFFYOXFJUUVnQ1VFQ2FpRUpJQUJCRUdvaEFDQUVRVUJySVFRZ0F3MEFDeUFDSUFjUUd3d0VDeUFBUVJ4cUlRa2dEUVJBSUFrZ0FTa0NrQUkzQWdBZ0NTQUJLUUcrQWpjQkxpQUpJQUVwQXJnQ053SW9JQWtnQVNrQ3NBSTNBaUFnQ1NBQktRS29BamNDR0NBSklBRXBBcUFDTndJUUlBa2dBU2tDbUFJM0FnZ2dCQ2dDQUNFS0FrQWdBU2dDQ0NJTFJRMEFJQVFnQ2lBTGFpSUtOZ0lBSUFRZ0NrRi9UQVIvSUFwQk5Hb0ZJQXBCTkVnTkFTQUtRVXhxQ3lJS05nSUFDeUFBSUFvMkFoUWdBVUhJRDJvaERDQUJRY2dDYWlFRUFrQUNRQ0FBS0FJQVFRWk5CRUFnQ1M4QkFFVU5BVUVCSVFnZ0JDQUtRUUFnRENnQ0FCQUdSUTBDREFnTElBQXZBVXdFUUNBQlFjZ09haUFLRURFTFFiQTBJUXBCRHlFSUEwQWdDQ0VMSUFRZ0FTQUtLQUlBUVFKMGFrSElEbW9vQWdBaUNEWUNBQUpBQWtBZ0NFVUVRQ0FKTHdFQVJRMEJDMEVCSVFnZ0JDQUFLQUlVUVFFZ0RDZ0NBQkFHUlEwQkRBb0xJQVJCLy8vL0J6WUNBQXNnQ2tFRWFpRUtJQXRCZjJvaENDQU1RUVJxSVF3Z0NVRUNhaUVKSUFSQlFHc2hCQ0FMRFFBTERBUUxJQVJCLy8vL0J6WUNBQXNnQVVHSUEyb2hCQUpBSUFBdkFSNEVRRUVCSVFnZ0JDQUFLQUlVUVFBZ0FVSE1EMm9vQWdBUUJrVU5BUXdIQ3lBRVFmLy8vd2MyQWdBTElBRkJ5QU5xSVFRQ1FDQUFMd0VnQkVCQkFTRUlJQVFnQUNnQ0ZFRUFJQUZCMEE5cUtBSUFFQVpGRFFFTUJ3c2dCRUgvLy84SE5nSUFDeUFCUVlnRWFpRUVBa0FnQUM4QklnUkFRUUVoQ0NBRUlBQW9BaFJCQUNBQlFkUVBhaWdDQUJBR1JRMEJEQWNMSUFSQi8vLy9CellDQUFzZ0FVSElCR29oQkFKQUlBQXZBU1FFUUVFQklRZ2dCQ0FBS0FJVVFRQWdBVUhZRDJvb0FnQVFCa1VOQVF3SEN5QUVRZi8vL3djMkFnQUxJQUZCaUFWcUlRUUNRQ0FBTHdFbUJFQkJBU0VJSUFRZ0FDZ0NGRUVBSUFGQjNBOXFLQUlBRUFaRkRRRU1Cd3NnQkVILy8vOEhOZ0lBQ3lBQlFjZ0ZhaUVFQWtBZ0FDOEJLQVJBUVFFaENDQUVJQUFvQWhSQkFDQUJRZUFQYWlnQ0FCQUdSUTBCREFjTElBUkIvLy8vQnpZQ0FBc2dBVUdJQm1vaEJBSkFJQUF2QVNvRVFFRUJJUWdnQkNBQUtBSVVRUUFnQVVIa0Qyb29BZ0FRQmtVTkFRd0hDeUFFUWYvLy93YzJBZ0FMSUFGQnlBWnFJUVFDUUNBQUx3RXNCRUJCQVNFSUlBUWdBQ2dDRkVFQUlBRkI2QTlxS0FJQUVBWkZEUUVNQndzZ0JFSC8vLzhITmdJQUN5QUJRWWdIYWlFRUFrQWdBQzhCTGdSQVFRRWhDQ0FFSUFBb0FoUkJBQ0FCUWV3UGFpZ0NBQkFHUlEwQkRBY0xJQVJCLy8vL0J6WUNBQXNnQVVISUIyb2hCQUpBSUFBdkFUQUVRRUVCSVFnZ0JDQUFLQUlVUVFBZ0FVSHdEMm9vQWdBUUJrVU5BUXdIQ3lBRVFmLy8vd2MyQWdBTElBRkJpQWhxSVFRQ1FDQUFMd0V5QkVCQkFTRUlJQVFnQUNnQ0ZFRUFJQUZCOUE5cUtBSUFFQVpGRFFFTUJ3c2dCRUgvLy84SE5nSUFDeUFCUWNnSWFpRUVBa0FnQUM4Qk5BUkFRUUVoQ0NBRUlBQW9BaFJCQUNBQlFmZ1BhaWdDQUJBR1JRMEJEQWNMSUFSQi8vLy9CellDQUFzZ0FVR0lDV29oQkFKQUlBQXZBVFlFUUVFQklRZ2dCQ0FBS0FJVVFRQWdBVUg4RDJvb0FnQVFCa1VOQVF3SEN5QUVRZi8vL3djMkFnQUxJQUZCeUFscUlRUUNRQ0FBTHdFNEJFQkJBU0VJSUFRZ0FDZ0NGRUVBSUFGQmdCQnFLQUlBRUFaRkRRRU1Cd3NnQkVILy8vOEhOZ0lBQ3lBQlFZZ0thaUVFQWtBZ0FDOEJPZ1JBUVFFaENDQUVJQUFvQWhSQkFDQUJRWVFRYWlnQ0FCQUdSUTBCREFjTElBUkIvLy8vQnpZQ0FBc2dBVUdJRUdvaERDQUJRY2dLYWlFRURBSUxJQWxDQURjQ0FDQUpRZ0EzQVM0Z0NVSUFOd0lvSUFsQ0FEY0NJQ0FKUWdBM0FoZ2dDVUlBTndJUUlBbENBRGNDQ0NBQUlBUW9BZ0EyQWhRTUFnc2dBRUtRZ01DQWdJS0FDRGNCSENBQVFwQ0F3SUNBZ29BSU53RkVJQUJDa0lEQWdJQ0NnQWczQVR3Z0FFS1FnTUNBZ0lLQUNEY0JOQ0FBUXBDQXdJQ0Fnb0FJTndFc0lBQkNrSURBZ0lDQ2dBZzNBU1JCQUE4TElBQW9BaGdnQUNnQ0ZHb2lDMEV6SUF0Qk0wZ2JJZ3RCQUNBTFFRQktHMEVDZEVIZ1BXb29BZ0FoQ1FKQUlBQXZBVTVGQkVBZ0FDOEJVRVVOQVFzZ0FVR0lEMm9nQ1JBd0N5QUVJQUZCaUE5cUtBSUFJZ3MyQWdBQ1FBSkFJQXRGQkVBZ0FDOEJQRVVOQVF0QkFTRUlJQVFnQ1VFQklBd29BZ0FRQmtVTkFRd0VDeUFFUWYvLy93YzJBZ0FMSUFRZ0FTZ0NqQThpQ3pZQ1FDQUVRVUJySVFvQ1FBSkFJQXRGQkVBZ0FDOEJQa1VOQVF0QkFTRUlJQW9nQ1VFQklBd29BZ1FRQmtVTkFRd0VDeUFLUWYvLy93YzJBZ0FMSUFRZ0FTZ0NrQThpQ3pZQ2dBRWdCRUdBQVdvaENnSkFBa0FnQzBVRVFDQUFRVUJyTHdFQVJRMEJDMEVCSVFnZ0NpQUpRUUVnRENnQ0NCQUdSUTBCREFRTElBcEIvLy8vQnpZQ0FBc2dCQ0FCS0FLVUR5SUxOZ0xBQVNBRVFjQUJhaUVLQWtBQ1FDQUxSUVJBSUFBdkFVSkZEUUVMUVFFaENDQUtJQWxCQVNBTUtBSU1FQVpGRFFFTUJBc2dDa0gvLy84SE5nSUFDeUFFSUFFb0FwZ1BJZ3MyQW9BQ0lBUkJnQUpxSVFvQ1FBSkFJQXRGQkVBZ0FDOEJSRVVOQVF0QkFTRUlJQW9nQ1VFQklBd29BaEFRQmtVTkFRd0VDeUFLUWYvLy93YzJBZ0FMSUFRZ0FTZ0NuQThpQ3pZQ3dBSWdCRUhBQW1vaENnSkFBa0FnQzBVRVFDQUFMd0ZHUlEwQkMwRUJJUWdnQ2lBSlFRRWdEQ2dDRkJBR1JRMEJEQVFMSUFwQi8vLy9CellDQUFzZ0JDQUJLQUtnRHlJTE5nS0FBeUFFUVlBRGFpRUtBa0FDUUNBTFJRUkFJQUF2QVVoRkRRRUxRUUVoQ0NBS0lBbEJBU0FNS0FJWUVBWkZEUUVNQkFzZ0NrSC8vLzhITmdJQUN5QUVJQUVvQXFRUElnczJBc0FESUFSQndBTnFJUVFDUUFKQUlBdEZCRUFnQUM4QlNrVU5BUXRCQVNFSUlBUWdDVUVCSUF3b0Fod1FCa1VOQVF3RUN5QUVRZi8vL3djMkFnQUxJQTFCQmtrTkFDQUFJQUVnQWlBRklBWWdCeEJXSWdoRkRRRU1BZ3NnQUNBQklBTWdCU0FDSUFjUVZ5SUlEUUVMUVFBaENBc2dDQXVXSFFFSGZ5TUFRUkJySWdja0FDQUJRUUJCcUJBUUJ5RUZJQUFnQjBFRWFoQUNJUUVnQnlnQ0JDRUlBa0FDUUFKQUlBTkJmbW9pQTBFRlN3MEFBa0FnQTBFQmF3NEVBUUVCQVFBTFFRRWhBeUFCRFFJZ0NFRUdhaUlHUVI5TkRRRU1BZ3RCQVNFRElBRU5BU0FJUVFGcUlnWkJIMHNOQVFzZ0JTQUdOZ0lBQWtBZ0JrRWZSZ1JBQTBBZ0FDZ0NDQVJBSUFCQkFSQURSUTBCREFRTEN5QUZRY2dDYWlFR0EwQWdCeUFBUVFnUUF5SUJOZ0lFSUFGQmYwWU5BeUFHSUFFMkFnQWdCa0VFYWlFR0lBbEJBV29pQ1VHQUEwY05BQXNNQVF0QkFpQUdRUVpISUFaQkJra2JJUW9DUUFKQUlBWkJCRWtOQUNBR1FRVkxEUUFnQUNBSFFReHFFQUlOQVNBSEtBSU1JZ0ZCQTBzTkFTQUZJQUUyQXJBQklBQWdCMEVNYWhBQ0RRRWdCeWdDRENJQlFRTkxEUUVnQlNBQk5nSzBBU0FBSUFkQkRHb1FBZzBCSUFjb0Fnd2lBVUVEU3cwQklBVWdBVFlDdUFFZ0FDQUhRUXhxRUFJTkFTQUhLQUlNSWdGQkEwc05BU0FGSUFFMkFyd0JBa0FnQkVFQ1NRMEFJQVpCQlVZTkFDQUFJQWRCREdvZ0JFRUNTeUlCRUJjTkFpQUhLQUlNSWdnZ0JFOE5BaUFGSUFnMkFzQUJJQUFnQjBFTWFpQUJFQmNOQWlBSEtBSU1JZ2dnQkU4TkFpQUZJQWcyQXNRQklBQWdCMEVNYWlBQkVCY05BaUFIS0FJTUlnZ2dCRThOQWlBRklBZzJBc2dCSUFBZ0IwRU1haUFCRUJjTkFpQUhLQUlNSWdFZ0JFOE5BaUFGSUFFMkFzd0JDeUFISUFVb0FyQUJJZ0ZCQWswRWZ5QUJRUUowUWZBMGFpZ0NBQVZCQXdzMkFneEJBQ0VHQTBBZ0FDQUhRUWhxRUFVaUF3MENJQVVnQmtFQ2RHb2lBU0FIS0FJSU93SFFBU0FBSUFkQkNHb1FCU0lERFFJZ0FTQUhLQUlJT3dIU0FTQUhJQWNvQWd3aUFVRi9hallDRENBR1FRRnFJUVlnQVEwQUN5QUhJQVVvQXJRQklnRkJBazBFZnlBQlFRSjBRZkEwYWlnQ0FBVkJBd3MyQWd4QkFDRUdBMEFnQUNBSFFRaHFFQVVpQXcwQ0lBVWdCa0VDZEdvaUFTQUhLQUlJT3dIZ0FTQUFJQWRCQ0dvUUJTSUREUUlnQVNBSEtBSUlPd0hpQVNBSElBY29BZ3dpQVVGL2FqWUNEQ0FHUVFGcUlRWWdBUTBBQ3lBSElBVW9BcmdCSWdGQkFrMEVmeUFCUVFKMFFmQTBhaWdDQUFWQkF3czJBZ3hCQUNFR0EwQWdBQ0FIUVFocUVBVWlBdzBDSUFVZ0JrRUNkR29pQVNBSEtBSUlPd0h3QVNBQUlBZEJDR29RQlNJRERRSWdBU0FIS0FJSU93SHlBU0FISUFjb0Fnd2lBVUYvYWpZQ0RDQUdRUUZxSVFZZ0FRMEFDeUFISUFVb0Fyd0JJZ0ZCQWswRWZ5QUJRUUowUWZBMGFpZ0NBQVZCQXdzMkFneEJBQ0VHQTBBZ0FDQUhRUWhxRUFVaUF3MENJQVVnQmtFQ2RHb2lBU0FIS0FJSU93R0FBaUFBSUFkQkNHb1FCU0lERFFJZ0FTQUhLQUlJT3dHQ0FpQUhJQWNvQWd3aUFVRi9hallDRENBR1FRRnFJUVpCQUNFRElBRU5BQXNNQVF0QkFDRURJQXBCQWtzTkFBSkFBbjhDUUFKQUFrQWdDa0VCYXc0Q0JBRUFDeUFIUVFBMkFnZ2dCU0FBRUE4aUFVRWZkallDRENBQlFRQk9EUUVnQVVFQmRDRUdRUUFNQWdzZ0JFRUNUd1JBUVFNaEFTQUdRUU5OQkVBZ0JrRUNkRUg4Tkdvb0FnQWhBUXNnQkVFQ1N5RUxRUUVoQXdOQUlBQWdCMEVNYWlBTEVCY05CU0FIS0FJTUlnZ2dCRThOQlNBRklBbEJBblJxSUFnMkFwQUJJQUVpQ0VGL2FpRUJJQWxCQVdvaENTQUlEUUFMQzBFRElRTWdCa0VEVFFSQUlBWkJBblJCL0RScUtBSUFJUU1MUVFBaEJnTkFJQU1oQVNBQUlBZEJDR29RQlNJRERRUWdCU0FHUVFKMGFpSUVJQWNvQWdnN0FhQUJJQUFnQjBFSWFoQUZJZ01OQkNBRUlBY29BZ2c3QWFJQklBRkJmMm9oQXlBR1FRRnFJUVlnQVEwQUMwRUFJUU1NQXdzZ0JTQUJRUngyTmdKTUlBRkJCSFFoQmtFQkN5RURJQVVnQmtFZmRqWUNFQ0FGSUFaQkFFZ0VmeUFHUVFGMEJTQUZJQVpCSEhZMkFsQWdBMEVCYWlFRElBWkJCSFFMSWdGQkgzWTJBaFFnQlNBQlFRQklCSDhnQVVFQmRBVWdCU0FCUVJ4Mk5nSlVJQU5CQVdvaEF5QUJRUVIwQ3lJQlFSOTJOZ0lZSUFVZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNXQ0FEUVFGcUlRTWdBVUVFZEFzaUFVRWZkallDSENBRklBRkJBRWdFZnlBQlFRRjBCU0FGSUFGQkhIWTJBbHdnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWlBZ0JTQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0pnSUFOQkFXb2hBeUFCUVFSMEN5SUJRUjkyTmdJa0lBVWdBVUVBU0FSL0lBRkJBWFFGSUFVZ0FVRWNkallDWkNBRFFRRnFJUU1nQVVFRWRBc2lBVUVmZGpZQ0tDQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0pvSUFOQkFXb2hBeUFCUVFSMEN5RUdBa0FnQUNBRFFRTnNRUWhxRUF0QmYwWU5BQ0FIUVFFMkFnZ2dCU0FBRUE4aUFVRWZkallDTEFKL0lBRkJBRWdFUUNBQlFRRjBJUVpCQUF3QkN5QUZJQUZCSEhZMkFtd2dBVUVFZENFR1FRRUxJUU1nQlNBR1FSOTJOZ0l3SUFVZ0JrRUFTQVIvSUFaQkFYUUZJQVVnQmtFY2RqWUNjQ0FEUVFGcUlRTWdCa0VFZEFzaUFVRWZkallDTkNBRklBRkJBRWdFZnlBQlFRRjBCU0FGSUFGQkhIWTJBblFnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWpnZ0JTQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0o0SUFOQkFXb2hBeUFCUVFSMEN5SUJRUjkyTmdJOElBVkJRR3NnQVVFQVNBUi9JQUZCQVhRRklBVWdBVUVjZGpZQ2ZDQURRUUZxSVFNZ0FVRUVkQXNpQVVFZmRqWUNBQ0FGSUFGQkFFZ0VmeUFCUVFGMEJTQUZJQUZCSEhZMkFvQUJJQU5CQVdvaEF5QUJRUVIwQ3lJQlFSOTJOZ0pFSUFVZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNoQUVnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWtnZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNpQUVnQTBFQmFpRURJQUZCQkhRTElRWWdBQ0FEUVFOc1FRaHFFQXRCZjBZTkFDQUhJQVkyQWd3Z0IwRUNOZ0lJREFFTElBY2dCallDREVFQklRTU1BUXRCQVNFRElBQWdCMEVNYWhBQ0RRQWdCeWdDRENJQlFRTkxEUUFnQlNBQk5nS01BVUVBSVFNTElBTU5BUUpBSUFwQkFVY0VRQ0FBSUFkQkJHb2dDa1VRTFNJRERRTWdCU0FIS0FJRUlnRTJBZ1FnQVVVTkFnd0JDeUFGSUFVb0FnQWlBVUY1YWlJRFFRSjBRWEJ4SWdSQlVHb2dCQ0FEUVF0TEcwRVBRUUFnQVVFU1N4dHlOZ0lFQzBFQklRTWdBQ0FIUVF4cUVBVU5BU0FIS0FJTUlnRkJHbXBCTTBzTkFTQUZJQUUyQWdnZ0JVR1FBbW9oQ0NBRktBSUVJUVFDUUFKQUlBVW9BZ0JCQjBrRVFFRUFJUWxCQXlFREEwQWdBeUVCSUFSQkFYRUVRQ0FJSUFsQkFuUnFRYmdOYWlBQUlBZ2dDVUVHZEdwQk9Hb2dBaUFKSUFnUURVRVFFQWtpQTBFUWRqWUNBQ0FEUVE5eERRUWdDQ0FKUVFGMGFpQURRUVIyUWY4QmNUc0JBQ0FJSUFsQkFYSWlCa0VDZEdwQnVBMXFJQUFnQ0NBR1FRWjBha0U0YWlBQ0lBWWdDQkFOUVJBUUNTSURRUkIyTmdJQUlBTkJEM0VOQkNBSUlBWkJBWFJxSUFOQkJIWkIvd0Z4T3dFQUlBZ2dDVUVDY2lJR1FRSjBha0c0RFdvZ0FDQUlJQVpCQm5ScVFUaHFJQUlnQmlBSUVBMUJFQkFKSWdOQkVIWTJBZ0FnQTBFUGNRMEVJQWdnQmtFQmRHb2dBMEVFZGtIL0FYRTdBUUFnQ0NBSlFRTnlJZ1pCQW5ScVFiZ05haUFBSUFnZ0JrRUdkR3BCT0dvZ0FpQUdJQWdRRFVFUUVBa2lBMEVRZGpZQ0FDQURRUTl4RFFRZ0JTQUdRUUYwYWlBRFFRUjJRZjhCY1RzQmtBSUxJQVJCQVhZaEJDQUJRWDlxSVFNZ0NVRUVhaUVKSUFFTkFBc01BUXRCQUNFSklBQWdCVUhJRG1vZ0FrRUFJQWdRRFVFUUVBa2lBMEVQY1EwQklBVWdBMEVFZGtIL0FYRTdBY0FDSUFWQmtBSnFJUVpCQXlFREEwQWdBeUVCSUFSQkFYRUVRQ0FHSUFsQkFuUnFRYmdOYWlBQUlBWWdDVUVHZEdwQlBHb2dBaUFKSUFnUURVRVBFQWtpQTBFUGRqWUNBQ0FEUVE5eERRTWdCaUFKUVFGMGFpQURRUVIyUWY4QmNUc0JBQ0FHSUFsQkFYSWlDa0VDZEdwQnVBMXFJQUFnQmlBS1FRWjBha0U4YWlBQ0lBb2dDQkFOUVE4UUNTSURRUTkyTmdJQUlBTkJEM0VOQXlBR0lBcEJBWFJxSUFOQkJIWkIvd0Z4T3dFQUlBWWdDVUVDY2lJS1FRSjBha0c0RFdvZ0FDQUdJQXBCQm5ScVFUeHFJQUlnQ2lBSUVBMUJEeEFKSWdOQkQzWTJBZ0FnQTBFUGNRMERJQVlnQ2tFQmRHb2dBMEVFZGtIL0FYRTdBUUFnQmlBSlFRTnlJZ3BCQW5ScVFiZ05haUFBSUFZZ0NrRUdkR3BCUEdvZ0FpQUtJQWdRRFVFUEVBa2lBMEVQZGpZQ0FDQURRUTl4RFFNZ0JTQUtRUUYwYWlBRFFRUjJRZjhCY1RzQmtBSUxJQVJCQVhZaEJDQUJRWDlxSVFNZ0NVRUVhaUVKSUFFTkFBc0xJQVJCQTNFRVFDQUFJQVZCaUE5cVFYOUJCQkFKSWdOQkQzRU5BU0FGSUFOQkJIWkIvd0Z4T3dIQ0FpQUFJQVZCbUE5cVFYOUJCQkFKSWdOQkQzRU5BU0FGSUFOQkJIWkIvd0Z4T3dIRUFndEJBQ0VESUFSQkFuRkZEUUFnQUNBRlFjd0thaUFDUVJBZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCaUJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0JzQUlnQUNBRlFZd0xhaUFDUVJFZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCakJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0JzZ0lnQUNBRlFjd0xhaUFDUVJJZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCa0JCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J0QUlnQUNBRlFZd01haUFDUVJNZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbEJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J0Z0lnQUNBRlFjd01haUFDUVJRZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbUJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J1QUlnQUNBRlFZd05haUFDUVJVZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbkJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J1Z0lnQUNBRlFjd05haUFDUVJZZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCb0JCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J2QUlnQUNBRlFZd09haUFDUVJjZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCcEJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J2Z0lMSUFBZ0FDZ0NDQ0FBS0FJRUlBQW9BZ0JyUVFOMGFqWUNFQ0FERFFFTFFRQWhBd3NnQjBFUWFpUUFJQU1McFJRQkRIOENmeUFBS0FMSUFTSUhCRUFnQUNnQ0JDQUhLQUlFUmd3QkMwRUFDeUVLQWtBZ0JrVU5BQ0FLUlEwQVFRQWdDa0VDSUFBb0FzZ0JLQUlBSWdkQkJrY2dCMEVHU1J0QkFrWWJJUW9MQW44Z0FDZ0N6QUVpQndSQUlBQW9BZ1FnQnlnQ0JFWU1BUXRCQUFzaEJ3SkFJQVpGRFFBZ0IwVU5BRUVBSUFkQkFpQUFLQUxNQVNnQ0FDSUhRUVpISUFkQkJra2JRUUpHR3lFSEN3Si9JQUFvQXRRQklna0VRQ0FBS0FJRUlBa29BZ1JHREFFTFFRQUxJUWtDUUNBR1JRMEFJQWxGRFFCQkFpQUFLQUxVQVNnQ0FDSUFRUVpISUFCQkJra2JRUUpISVFrTElBcEJBRWNnQjBFQVIzRWlEU0FKUVFCSGNTRU9JQVZCQWtzaEQwRVFJUXNEUUFKQUlBOUZCRUFDUUFKQUFrQWdCVUVCYXc0Q0FRSUFDeUFCQW44Z0RRUkFJQVF0QUFNZ0JDMEFBaUFFTFFBQklBUXRBQUFnQXkwQUJDQURMUUFESUFNdEFBRWdBeTBBQW1wcWFtcHFhbXBCQkdwQkEzWWhCaUFETFFBSUlBTXRBQWNnQXkwQUJTQURMUUFHYW1wcVFRSnFRUUoyREFFTElBY0VRQ0FETFFBRUlBTXRBQU1nQXkwQUFTQURMUUFDYW1wcVFRSnFRUUoySVFZZ0F5MEFDQ0FETFFBSElBTXRBQVVnQXkwQUJtcHFha0VDYWtFQ2Rnd0JDeUFLUlFSQVFZQUJJUVpCZ0FFTUFRc2dCQzBBQXlBRUxRQUNJQVF0QUFBZ0JDMEFBV3BxYWtFQ2FrRUNkaUlHQzBIL0FYRkJnWUtFQ0d3aUFEWUFIQ0FCSUFaQi93RnhRWUdDaEFoc0lnWTJBQmdnQVNBQU5nQVVJQUVnQmpZQUVDQUJJQUEyQUF3Z0FTQUdOZ0FJSUFFZ0FEWUFCQ0FCSUFZMkFBQUNmeUFLQkVBZ0JDMEFCeUFFTFFBR0lBUXRBQVVnQkMwQUJHcHFhaUlHUVFKcVFRSjJJZ0FnQjBVTkFSb2dBeTBBQ0NBRExRQUhJQU10QUFZZ0JpQURMUUFGYW1wcWFrRUVha0VEZGd3QkN5QUhSUVJBUVlBQklRQkJnQUVNQVFzZ0F5MEFCQ0FETFFBRElBTXRBQUVnQXkwQUFtcHFha0VDYWtFQ2RpRUFJQU10QUFnZ0F5MEFCeUFETFFBRklBTXRBQVpxYW1wQkFtcEJBbllMSVFZZ0FTQUFRZjhCY1VHQmdvUUliQ0lBTmdBZ0lBRWdCa0gvQVhGQmdZS0VDR3dpQmpZQVBDQUJJQUEyQURnZ0FTQUdOZ0EwSUFFZ0FEWUFNQ0FCSUFZMkFDd2dBU0FBTmdBb0lBRWdCallBSkF3REN5QUtSUVJBUVFFUEN5QUJJQVF0QUFBNkFBQWdBU0FFTFFBQU9nQUJJQUVnQkMwQUFEb0FBaUFCSUFRdEFBQTZBQU1nQVNBRUxRQUFPZ0FFSUFFZ0JDMEFBRG9BQlNBQklBUXRBQUE2QUFZZ0FTQUVMUUFBT2dBSElBRWdCQzBBQVRvQUNDQUJJQVF0QUFFNkFBa2dBU0FFTFFBQk9nQUtJQUVnQkMwQUFUb0FDeUFCSUFRdEFBRTZBQXdnQVNBRUxRQUJPZ0FOSUFFZ0JDMEFBVG9BRGlBQklBUXRBQUU2QUE4Z0FTQUVMUUFDT2dBUUlBRWdCQzBBQWpvQUVTQUJJQVF0QUFJNkFCSWdBU0FFTFFBQ09nQVRJQUVnQkMwQUFqb0FGQ0FCSUFRdEFBSTZBQlVnQVNBRUxRQUNPZ0FXSUFFZ0JDMEFBam9BRnlBQklBUXRBQU02QUJnZ0FTQUVMUUFET2dBWklBRWdCQzBBQXpvQUdpQUJJQVF0QUFNNkFCc2dBU0FFTFFBRE9nQWNJQUVnQkMwQUF6b0FIU0FCSUFRdEFBTTZBQjRnQVNBRUxRQURPZ0FmSUFFZ0JDMEFCRG9BSUNBQklBUXRBQVE2QUNFZ0FTQUVMUUFFT2dBaUlBRWdCQzBBQkRvQUl5QUJJQVF0QUFRNkFDUWdBU0FFTFFBRU9nQWxJQUVnQkMwQUJEb0FKaUFCSUFRdEFBUTZBQ2NnQVNBRUxRQUZPZ0FvSUFFZ0JDMEFCVG9BS1NBQklBUXRBQVU2QUNvZ0FTQUVMUUFGT2dBcklBRWdCQzBBQlRvQUxDQUJJQVF0QUFVNkFDMGdBU0FFTFFBRk9nQXVJQUVnQkMwQUJUb0FMeUFCSUFRdEFBWTZBREFnQVNBRUxRQUdPZ0F4SUFFZ0JDMEFCam9BTWlBQklBUXRBQVk2QURNZ0FTQUVMUUFHT2dBMElBRWdCQzBBQmpvQU5TQUJJQVF0QUFZNkFEWWdBU0FFTFFBR09nQTNJQUVnQkMwQUJ6b0FPQ0FCSUFRdEFBYzZBRGtnQVNBRUxRQUhPZ0E2SUFFZ0JDMEFCem9BT3lBQklBUXRBQWM2QUR3Z0FTQUVMUUFIT2dBOUlBRWdCQzBBQnpvQVBpQUJJQVF0QUFjNkFEOE1BZ3NnQjBVRVFFRUJEd3NnQVNBRExRQUJPZ0FBSUFFZ0F5MEFBVG9BQ0NBQklBTXRBQUU2QUJBZ0FTQURMUUFCT2dBWUlBRWdBeTBBQVRvQUlDQUJJQU10QUFFNkFDZ2dBU0FETFFBQk9nQXdJQUVnQXkwQUFUb0FPQ0FCSUFNdEFBSTZBQUVnQVNBRExRQUNPZ0FKSUFFZ0F5MEFBam9BRVNBQklBTXRBQUk2QUJrZ0FTQURMUUFDT2dBaElBRWdBeTBBQWpvQUtTQUJJQU10QUFJNkFERWdBU0FETFFBQ09nQTVJQUVnQXkwQUF6b0FBaUFCSUFNdEFBTTZBQW9nQVNBRExRQURPZ0FTSUFFZ0F5MEFBem9BR2lBQklBTXRBQU02QUNJZ0FTQURMUUFET2dBcUlBRWdBeTBBQXpvQU1pQUJJQU10QUFNNkFEb2dBU0FETFFBRU9nQURJQUVnQXkwQUJEb0FDeUFCSUFNdEFBUTZBQk1nQVNBRExRQUVPZ0FiSUFFZ0F5MEFCRG9BSXlBQklBTXRBQVE2QUNzZ0FTQURMUUFFT2dBeklBRWdBeTBBQkRvQU95QUJJQU10QUFVNkFBUWdBU0FETFFBRk9nQU1JQUVnQXkwQUJUb0FGQ0FCSUFNdEFBVTZBQndnQVNBRExRQUZPZ0FrSUFFZ0F5MEFCVG9BTENBQklBTXRBQVU2QURRZ0FTQURMUUFGT2dBOElBRWdBeTBBQmpvQUJTQUJJQU10QUFZNkFBMGdBU0FETFFBR09nQVZJQUVnQXkwQUJqb0FIU0FCSUFNdEFBWTZBQ1VnQVNBRExRQUdPZ0F0SUFFZ0F5MEFCam9BTlNBQklBTXRBQVk2QUQwZ0FTQURMUUFIT2dBR0lBRWdBeTBBQnpvQURpQUJJQU10QUFjNkFCWWdBU0FETFFBSE9nQWVJQUVnQXkwQUJ6b0FKaUFCSUFNdEFBYzZBQzRnQVNBRExRQUhPZ0EySUFFZ0F5MEFCem9BUGlBQklBTXRBQWc2QUFjZ0FTQURMUUFJT2dBUElBRWdBeTBBQ0RvQUZ5QUJJQU10QUFnNkFCOGdBU0FETFFBSU9nQW5JQUVnQXkwQUNEb0FMeUFCSUFNdEFBZzZBRGNnQVNBRExRQUlPZ0EvREFFTElBNUZCRUJCQVE4TElBTXRBQVVnQXkwQUEyc2dBeTBBQmlBRExRQUNhMEVCZEdvZ0F5MEFCeUFETFFBQmEwRURiR29nQXkwQUNDSUFJQU10QUFBaUNXdEJBblJxUVJGc1FSQnFRUVYxSWdaQmZXd2hFQ0FBSUFRdEFBY2lER3BCQkhRZ0JDMEFCQ0FFTFFBQ2F5QU1JQWxyUVFKMGFpQUVMUUFGSUFRdEFBRnJRUUYwYWlBRUxRQUdJQVF0QUFCclFRTnNha0VSYkVFUWFrRUZkU0lSUVgxc2FrRVFhaUVKUVFnaERDQUJJUUFEUUNBQUlBa2dFR29pQ0VFRmRVR3dMbW90QUFBNkFBQWdBQ0FHSUFocUlnaEJCWFZCc0M1cUxRQUFPZ0FCSUFBZ0JpQUlhaUlJUVFWMVFiQXVhaTBBQURvQUFpQUFJQVlnQ0dvaUNFRUZkVUd3TG1vdEFBQTZBQU1nQUNBR0lBaHFJZ2hCQlhWQnNDNXFMUUFBT2dBRUlBQWdCaUFJYWlJSVFRVjFRYkF1YWkwQUFEb0FCU0FBSUFZZ0NHb2lDRUVGZFVHd0xtb3RBQUE2QUFZZ0FDQUdJQWhxUVFWMVFiQXVhaTBBQURvQUJ5QUpJQkZxSVFrZ0FFRUlhaUVBSUF4QmYyb2lEQTBBQ3dzZ0FTQUNJQXNRQ0NBQklBSkJRR3NnQzBFQmNoQUlJQUVnQWtHQUFXb2dDMEVDY2hBSUlBRWdBa0hBQVdvZ0MwRURjaEFJSUFKQmdBSnFJUUlnQkVFSWFpRUVJQU5CQ1dvaEF5QUJRVUJySVFFZ0MwRUVhaUVMSUJKQkFXb2lFa0VDUncwQUMwRUFDNkVWQWhoL0FuNENmd05BQW44Z0FDSUlJQlpCQTNSQnNEVnFLUUlBSWg2bkVCRWlDU0lHQkVBZ0NDZ0NCQ0FHS0FJRVJnd0JDMEVBQ3lFTkFrQWdCVVVOQUNBTlJRMEFRUUFnRFVFQ0lBa29BZ0FpQmtFR1J5QUdRUVpKRzBFQ1Joc2hEUXNDZnlBSUlCWkJBM1JCOERacUtRSUFJaCtuRUJFaUJ5SUdCRUFnQ0NnQ0JDQUdLQUlFUmd3QkMwRUFDeUVQQWtBZ0JVVU5BQ0FQUlEwQVFRQWdEMEVDSUFjb0FnQWlCa0VHUnlBR1FRWkpHMEVDUmhzaER3dEJBaUVNSUExQkFFY2dEMEVBUjNFaUVrRUJSZ1JBUVFJaEJnSi9RUUlnQ1NnQ0FDSUxRUVpISUF0QkJra2JSUVJBSUFrZ0hrSWdpS2RCL3dGeGFpMEFVaUVHQ3lBR0N3Si9RUUlnQnlnQ0FDSUpRUVpISUFsQkJra2JSUVJBSUFjZ0gwSWdpS2RCL3dGeGFpMEFVaUVNQ3lBTUN5QUdJQXhKR3lFTUN5QUNJQlpCQW5RaUNXb2lCaWdDREVVRVFDQUdLQUpNSWdZZ0JpQU1UMm9oREFzZ0NDQVdhaUFNT2dCU0FuOGdDQ0FXUVFOMFFiQTRhaWdDQUJBUklnWWlCd1JBSUFnb0FnUWdCeWdDQkVZTUFRdEJBQXNoRGdKQUlBVkZEUUFnRGtVTkFFRUFJQTVCQWlBR0tBSUFJZ1pCQmtjZ0JrRUdTUnRCQWtZYklRNExBbjhnQUNBV1FRTjBRZkE1YWlnQ0FCQVJJZ2dpQmdSQUlBQW9BZ1FnQmlnQ0JFWU1BUXRCQUFzaEVRSkFJQVZGRFFBZ0VVVU5BRUVBSUJGQkFpQUlLQUlBSWdoQkJrY2dDRUVHU1J0QkFrWWJJUkVMSUFsQjhDbHFLQUlBSVJjZ0NVR3dLV29vQWdBaEdBSi9RWVVLSUJaMlFRRnhJaHdFUUNBWFFRTnFJUWNnQkNBWGFpSUlRUUpxSVFZZ0NFRUJhaUVMSUFRTUFRc2dGMEVFZENBWWFpSUlRUzlxSVFjZ0FTQUlhaUlJUVI5cUlRWWdDRUVQYWlFTElBaEJmMm9oQ0NBQkN5RUpJQWNnQ1dvdEFBQWhDaUFHTFFBQUlSQWdDeTBBQUNFVElBZ3RBQUFoRkFKQVFUTWdGblpCQVhFRVFDQURJQmhxSWdjdEFBZ2hHeUFITFFBSElSa2dCeTBBQmlFVklBY3RBQVVoR2lBSExRQUVJUVlnQnkwQUF5RUxJQWN0QUFJaENTQUhMUUFCSVFnTUFRc2dBU0FYUVg5cUloMUJCSFFnR0dwcUlnY3RBQUFoQ0NBSExRQUhJUnNnQnkwQUJpRVpJQWN0QUFVaEZTQUhMUUFFSVJvZ0J5MEFBeUVHSUFjdEFBSWhDeUFITFFBQklRa2dIQVJBSUFRZ0hXb2hCd3dCQ3lBSFFYOXFJUWNMQWtBZ0RFRUhUUVJBSUFjdEFBQWhCd0pBQWtBQ1FBSkFBa0FDUUFKQUFrQWdERUVCYXc0SEFRSURCQVVHQndBTElBOUZCRUJCQVE4TElBaEIvd0Z4SUF0Qi93RnhRUkIwSUFaQkdIUnljaUFKUWY4QmNVRUlkSEloRlNBSUlnd2hEU0FKSWc0aEVpQUxJZzhoQ2lBR0loRWhCd3dJQ3lBTlJRUkFRUUVQQ3lBS1FZR0NoQWhzSVJVZ0VFR0Jnb1FJYkNJTlFSaDJJUWNnRFVFUWRpRUtJQTFCQ0hZaEVpQVRRWUdDaEFoc0lneEJHSFloRVNBTVFSQjJJUThnREVFSWRpRU9JQlJCZ1lLRUNHd2lDRUVZZGlFR0lBaEJFSFloQ3lBSVFRaDJJUWtNQndzQ2Z5QVRJQlJxSUFwcUlCQnFJQVpCL3dGeGFpQUxRZjhCY1dvZ0NVSC9BWEZxSUFoQi93Rnhha0VFYWtFRGRpQVNEUUFhSUJNZ0ZHb2dDbW9nRUdwQkFtcEJBbllnRFEwQUdrR0FBU0FQUlEwQUdpQUdRZjhCY1NBTFFmOEJjV29nQ1VIL0FYRnFJQWhCL3dGeGFrRUNha0VDZGdzaUNFR0Jnb1FJYkNFVklBZ2lDU0lMSWdZaURDSU9JZzhpRVNJTkloSWlDaUVIREFZTElBOUZCRUJCQVE4TElBWkIvd0Z4SWcxQkFtb2lFU0FWSUFZZ0RodEIvd0Z4SWdkcUlCb2dCaUFPRzBIL0FYRWlDa0VCZEdwQkFuWWlEeUFaSUFZZ0RodEIvd0Z4SWd3Z0d5QUdJQTRiUWY4QmNTSUdRUU5zYWtFV2RFR0FnSUFFYWtHQWdJQjRjWElnQ2lBTWFpQUhRUUYwYWtFQ2FpSVFRUVowUVlEK0EzRnlJQVlnQjJvZ0RFRUJkR3BCQW1vaUJrRU9kRUdBZ1B3SGNYSWhGU0FHUVFKMklRY2dDMEgvQVhFaUJrRUNhaUlMSUFoQi93RnhhaUFKUWY4QmNTSUpRUUYwYWtFQ2RpRUlJQWtnRVdvZ0JrRUJkR3BCQW5ZaUNTRU1JQW9nQzJvZ0RVRUJkR3BCQW5ZaUN5RU9JQXNoRFNBUElnWWhFaUFRUVFKMkloRWhDZ3dGQzBFQklCRkZJQkpCQVhOeURRWWFJQlFnRTBFQmRHb2dFR3BCQW1vaURrRUdkRUdBL2dOeElBb2dFMEVDYWlJUGFpQVFRUUYwYWtFQ2RuSWdDRUgvQVhFaUNrRUNhaUlNSUJScUlBZEJBWFJxUVFKMklnaEJHSFJ5SUE4Z0ZFRUJkR29nQjJvaUVFRU9kRUdBZ1B3SGNYSWhGU0FKUWY4QmNTSVJRUUpxSWdrZ0JrSC9BWEZxSUF0Qi93RnhJZ3RCQVhScVFRSjJJUVlnRGtFQ2RpRU5JQWtnQ2tFQmRHb2dCMnBCQW5ZaUNTRVBJQkZCQVhRZ0Myb2dER3BCQW5ZaUN5RVJJQkJCQW5ZaURDRVNJQWdpRGlFS0lBa2hCd3dFQzBFQklCRkZJQkpCQVhOeURRVWFJQWhCL3dGeElncEJBbW9pRGlBTFFmOEJjU0lJSUFsQi93RnhJZ3RCQVhScWFrRUNkaUlQUVJoMElCUWdFMEVCZEdvZ0VHcEJBbXBCQW5aeUlBNGdGR29nQjBFQmRHb2lDVUVHZEVHQS9nTnhjaUFMUVFKcUlnNGdDa0VCZEdvZ0Iyb2lEVUVPZEVHQWdQd0hjWEloRlNBSVFRRnFJaEFnQmtIL0FYRWlER3BCQVhZaEJpQU1JQTVxSUFoQkFYUnFRUUoySVJFZ0NVRUNkaUVNSUExQkFuWWhEaUFUSUJSQkFYUnFJQWRxUVFKcVFRSjJJUTBnQnlBS2FrRUJha0VCZGlJSUlSSWdDaUFMYWtFQmFrRUJkaUlKSVFvZ0N5QVFha0VCZGlJTElRY01Bd3RCQVNBUlJTQVNRUUZ6Y2cwRUdpQVRRUUpxSWc0Z0Ntb2dFRUVCZEdwQkJuUkJnUDREY1NBUUlCTnFRUUZxSWc5QkQzUkJnSUQ4QjNFZ0ZFRUNhaUlNSUJOQkFYUnFJQkJxUVFKMkloSkJHSFJ5SUFvZ0VHcEJBV3BCQVhaeWNpRVZJQWhCL3dGeElnZ2dDMEgvQVhGcUlBbEIvd0Z4SWdsQkFYUnFRUUpxUVFKMklRWWdDU0FJUVFGMGFpQUhha0VDYWtFQ2RpRUxJQTlCQVhZaERTQUlJQXhxSUFkQkFYUnFRUUoySWhFaENTQVVRUUZxSWdvZ0IycEJBWFlpQ0NFUElBb2dFMnBCQVhZaURDRUtJQTRnRkVFQmRHb2dCMnBCQW5ZaURpRUhEQUlMSUE5RkJFQkJBUThMSUJvZ0JpQU9HMEgvQVhFaUNpQVpJQVlnRGh0Qi93RnhhaUFWSUFZZ0RodEIvd0Z4SWdkQkFYUnFRUlowSUF0Qi93RnhJZ3RCQW1vaURDQUthaUFHUWY4QmNTSUdRUUYwYWlJUFFRWjBja0dBZ0lBRWFrR0Evb040Y1NBR1FRSnFJZzBnQ1VIL0FYRWlDV29nQzBFQmRHcEJBbllpRG5JZ0J5QU5haUFLUVFGMGFpSU5RUTUwUVlDQS9BZHhjaUVWSUFjZ0NtcEJBV3BCQVhZaEJ5QU5RUUoySVJFZ0NTQUlRZjhCY1NJTmFrRUJha0VCZGlFSUlBOUJBblloRHlBTUlBMXFJQWxCQVhScVFRSjJJUXdnQ1NBTGFrRUJha0VCZGlJSklRMGdCa0VCYWlJR0lBdHFRUUYySWdzaEVpQUdJQXBxUVFGMklnWWhDZ3dCQ3lBTlJRUkFRUUVQQ3lBS1FRaDBJQXB5SUFwQkVIUnlJQXBCR0hSeUlSVWdFRUVDYWlJSElCUnFJQk5CQVhScVFRSjJJUWtnRTBFQmFpSUdJQlJxUVFGMklRZ2dCaUFRYWtFQmRpSUxJUXdnQ2lBVGFpQVFRUUYwYWtFQ2FrRUNkaUlHSVE0Z0NpQVFha0VCYWtFQmRpSVBJUTBnQnlBS1FRTnNha0VDZGlJUklSSWdDaUVIQ3lBQklCZEJCSFFnR0dwcUloQWdGVFlDTUNBUUlBMUIvd0Z4SUJKQi93RnhRUWgwY2lBS1FmOEJjVUVRZEhJZ0IwRVlkSEkyQWlBZ0VDQU1RZjhCY1NBT1FmOEJjVUVJZEhJZ0QwSC9BWEZCRUhSeUlCRkJHSFJ5TmdJUUlCQWdDRUgvQVhFZ0NVSC9BWEZCQ0hSeUlBdEIvd0Z4UVJCMGNpQUdRUmgwY2pZQ0FDQUJJQUlnRmtFR2RHcEJ5QUpxSUJZUUNDQVdRUUZxSWhaQkVFY05BQXRCQUFzTHhSSUJFSDhDZnlBQUtBTElBU0lIQkVBZ0FDZ0NCQ0FIS0FJRVJnd0JDMEVBQ3lFSEFrQWdCVVVOQUNBSFJRMEFRUUFnQjBFQ0lBQW9Bc2dCS0FJQUlnZEJCa2NnQjBFR1NSdEJBa1liSVFjTEFuOGdBQ2dDekFFaUNBUkFJQUFvQWdRZ0NDZ0NCRVlNQVF0QkFBc2hDQUpBSUFWRkRRQWdDRVVOQUVFQUlBaEJBaUFBS0FMTUFTZ0NBQ0lJUVFaSElBaEJCa2tiUVFKR0d5RUlDd0ovSUFBb0F0UUJJZ2tFUUNBQUtBSUVJQWtvQWdSR0RBRUxRUUFMSVFrQ1FDQUZSUTBBSUFsRkRRQkJBaUFBS0FMVUFTZ0NBQ0lGUVFaSElBVkJCa2tiUVFKSElRa0xBa0FDUUNBQUtBSUFRUUZxUVFOeElnQkJBazBFUUFKQUFrQUNRQ0FBUVFGckRnSUJBZ0FMSUFoRkJFQkJBUThMUVFBaEJTQUJJUUFEUUNBQUlBTXRBQUU2QUFBZ0FDQURMUUFDT2dBQklBQWdBeTBBQXpvQUFpQUFJQU10QUFRNkFBTWdBQ0FETFFBRk9nQUVJQUFnQXkwQUJqb0FCU0FBSUFNdEFBYzZBQVlnQUNBRExRQUlPZ0FISUFBZ0F5MEFDVG9BQ0NBQUlBTXRBQW82QUFrZ0FDQURMUUFMT2dBS0lBQWdBeTBBRERvQUN5QUFJQU10QUEwNkFBd2dBQ0FETFFBT09nQU5JQUFnQXkwQUR6b0FEaUFBSUFNdEFCQTZBQThnQUVFUWFpRUFJQVZCQVdvaUJVRVFSdzBBQ3d3REN5QUhSUVJBUVFFUEMwRUFJUVVnQVNFQUEwQWdBQ0FFSUFWcUlnTXRBQUE2QUFBZ0FDQURMUUFBT2dBQklBQWdBeTBBQURvQUFpQUFJQU10QUFBNkFBTWdBQ0FETFFBQU9nQUVJQUFnQXkwQUFEb0FCU0FBSUFNdEFBQTZBQVlnQUNBRExRQUFPZ0FISUFBZ0F5MEFBRG9BQ0NBQUlBTXRBQUE2QUFrZ0FDQURMUUFBT2dBS0lBQWdBeTBBQURvQUN5QUFJQU10QUFBNkFBd2dBQ0FETFFBQU9nQU5JQUFnQXkwQUFEb0FEaUFBSUFNdEFBQTZBQThnQUVFUWFpRUFJQVZCQVdvaUJVRVFSdzBBQ3d3Q0N5QUJBbjhDUUNBSFJRMEFJQWhGRFFBZ0JDMEFEeUFETFFBUUlBUXRBQTRnQXkwQUR5QUVMUUFOSUFNdEFBNGdCQzBBRENBRExRQU5JQVF0QUFzZ0F5MEFEQ0FFTFFBS0lBTXRBQXNnQkMwQUNTQURMUUFLSUFRdEFBZ2dBeTBBQ1NBRUxRQUhJQU10QUFnZ0JDMEFCaUFETFFBSElBUXRBQVVnQXkwQUJpQUVMUUFFSUFNdEFBVWdCQzBBQXlBRExRQUVJQVF0QUFJZ0F5MEFBeUFFTFFBQklBTXRBQUlnQXkwQUFTQUVMUUFBYW1wcWFtcHFhbXBxYW1wcWFtcHFhbXBxYW1wcWFtcHFhbXBxYW1wcWFrRVFha0VGZGd3QkN5QUhCRUFnQkMwQUR5QUVMUUFPSUFRdEFBMGdCQzBBRENBRUxRQUxJQVF0QUFvZ0JDMEFDU0FFTFFBSUlBUXRBQWNnQkMwQUJpQUVMUUFGSUFRdEFBUWdCQzBBQXlBRUxRQUNJQVF0QUFBZ0JDMEFBV3BxYW1wcWFtcHFhbXBxYW1wcWFrRUlha0VFZGd3QkMwR0FBU0FJUlEwQUdpQURMUUFRSUFNdEFBOGdBeTBBRGlBRExRQU5JQU10QUF3Z0F5MEFDeUFETFFBS0lBTXRBQWtnQXkwQUNDQURMUUFISUFNdEFBWWdBeTBBQlNBRExRQUVJQU10QUFNZ0F5MEFBU0FETFFBQ2FtcHFhbXBxYW1wcWFtcHFhbXBxUVFocVFRUjJDMEdBQWhBSEdnd0JDMEVCSVFBZ0IwVU5BU0FJUlEwQklBbEZEUUVnQkMwQUNDQUVMUUFHYXlBRUxRQVBJZ0FnQXkwQUFDSUZhMEVEZEdvZ0JDMEFDU0FFTFFBRmEwRUJkR29nQkMwQUNpQUVMUUFFYTBFRGJHb2dCQzBBQ3lBRUxRQURhMEVDZEdvZ0JDMEFEQ0FFTFFBQ2EwRUZiR29nQkMwQURTQUVMUUFCYTBFR2JHb2dCQzBBRGlBRUxRQUFhMEVIYkdwQkJXeEJJR3BCQm5VaEJ5QURMUUFKSUFNdEFBZHJJQU10QUFvZ0F5MEFCbXRCQVhScUlBTXRBQXNnQXkwQUJXdEJBMnhxSUFNdEFBd2dBeTBBQkd0QkFuUnFJQU10QUEwZ0F5MEFBMnRCQld4cUlBTXRBQTRnQXkwQUFtdEJCbXhxSUFNdEFBOGdBeTBBQVd0QkIyeHFJQU10QUJBaUF5QUZhMEVEZEdwQkJXeEJJR3BCQm5VaUJFRURkQ0VJSUFSQkIyd2hDU0FFUVFac0lRb2dCRUVGYkNFTElBUkJBMndoRENBRVFYMXNJUTBnQkVGN2JDRU9JQVJCZW13aER5QUVRWGxzSVJCQkFDQUVRUUYwSWhGcklSSkJBQ0FFUVFKMEloTnJJUlFnQUNBRGFrRUVkRUVRYWlFVlFRQWhCUU5BSUFFZ0JVRUVkQ0lBYWlBVklBVkJlV29nQjJ4cUlnTWdFR3BCQlhVaUJrSC9BU0FHUWY4QlNCc2lCa0VBSUFaQkFFb2JPZ0FBSUFFZ0FFRUJjbW9nQXlBUGFrRUZkU0lHUWY4QklBWkIvd0ZJR3lJR1FRQWdCa0VBU2hzNkFBQWdBU0FBUVFKeWFpQURJQTVxUVFWMUlnWkIvd0VnQmtIL0FVZ2JJZ1pCQUNBR1FRQktHem9BQUNBQklBQkJBM0pxSUFNZ0ZHcEJCWFVpQmtIL0FTQUdRZjhCU0JzaUJrRUFJQVpCQUVvYk9nQUFJQUVnQUVFRWNtb2dBeUFOYWtFRmRTSUdRZjhCSUFaQi93RklHeUlHUVFBZ0JrRUFTaHM2QUFBZ0FTQUFRUVZ5YWlBRElCSnFRUVYxSWdaQi93RWdCa0gvQVVnYklnWkJBQ0FHUVFCS0d6b0FBQ0FCSUFCQkJuSnFJQU1nQkd0QkJYVWlCa0gvQVNBR1FmOEJTQnNpQmtFQUlBWkJBRW9iT2dBQUlBRWdBRUVIY21vZ0EwRUZkU0lHUWY4QklBWkIvd0ZJR3lJR1FRQWdCa0VBU2hzNkFBQWdBU0FBUVFoeWFpQURJQVJxUVFWMUlnWkIvd0VnQmtIL0FVZ2JJZ1pCQUNBR1FRQktHem9BQUNBQklBQkJDWEpxSUFNZ0VXcEJCWFVpQmtIL0FTQUdRZjhCU0JzaUJrRUFJQVpCQUVvYk9nQUFJQUVnQUVFS2Ntb2dBeUFNYWtFRmRTSUdRZjhCSUFaQi93RklHeUlHUVFBZ0JrRUFTaHM2QUFBZ0FTQUFRUXR5YWlBRElCTnFRUVYxSWdaQi93RWdCa0gvQVVnYklnWkJBQ0FHUVFCS0d6b0FBQ0FCSUFCQkRISnFJQU1nQzJwQkJYVWlCa0gvQVNBR1FmOEJTQnNpQmtFQUlBWkJBRW9iT2dBQUlBRWdBRUVOY21vZ0F5QUtha0VGZFNJR1FmOEJJQVpCL3dGSUd5SUdRUUFnQmtFQVNoczZBQUFnQVNBQVFRNXlhaUFESUFscVFRVjFJZ1pCL3dFZ0JrSC9BVWdiSWdaQkFDQUdRUUJLR3pvQUFDQUJJQUJCRDNKcUlBTWdDR3BCQlhVaUFFSC9BU0FBUWY4QlNCc2lBRUVBSUFCQkFFb2JPZ0FBSUFWQkFXb2lCVUVRUncwQUN3dEJBQ0VBSUFFZ0FrRUFFQWdnQVNBQ1FVQnJRUUVRQ0NBQklBSkJnQUZxUVFJUUNDQUJJQUpCd0FGcVFRTVFDQ0FCSUFKQmdBSnFRUVFRQ0NBQklBSkJ3QUpxUVFVUUNDQUJJQUpCZ0FOcVFRWVFDQ0FCSUFKQndBTnFRUWNRQ0NBQklBSkJnQVJxUVFnUUNDQUJJQUpCd0FScVFRa1FDQ0FCSUFKQmdBVnFRUW9RQ0NBQklBSkJ3QVZxUVFzUUNDQUJJQUpCZ0FacVFRd1FDQ0FCSUFKQndBWnFRUTBRQ0NBQklBSkJnQWRxUVE0UUNDQUJJQUpCd0FkcVFROFFDQXNnQUF1N0NBRUhmd0pBSUFORkRRQWdBQ2dDQUNBRElBQW9BZ1FpQlc0aUNDQUZiQ0lFUVFoMGFpQURJQVJySWdkQkJIUnFJUVlnQlVFRWRDRUVJQUFvQWdnaENTQUZJQU5MSWdwRkJFQWdBU0FHSUFSQkFYSnJJZ010QUFBNkFBQWdBU0FETFFBQk9nQUJJQUVnQXkwQUFqb0FBaUFCSUFNdEFBTTZBQU1nQVNBRExRQUVPZ0FFSUFFZ0F5MEFCVG9BQlNBQklBTXRBQVk2QUFZZ0FTQURMUUFIT2dBSElBRWdBeTBBQ0RvQUNDQUJJQU10QUFrNkFBa2dBU0FETFFBS09nQUtJQUVnQXkwQUN6b0FDeUFCSUFNdEFBdzZBQXdnQVNBRExRQU5PZ0FOSUFFZ0F5MEFEam9BRGlBQklBTXRBQTg2QUE4Z0FTQURMUUFRT2dBUUlBRWdBeTBBRVRvQUVTQUJJQU10QUJJNkFCSWdBU0FETFFBVE9nQVRJQUVnQXkwQUZEb0FGQ0FCUVJWcUlRRUxJQWNFUUNBQ0lBWkJmMm9pQXkwQUFEb0FBQ0FDSUFNZ0JHb2lBeTBBQURvQUFTQUNJQU1nQkdvaUF5MEFBRG9BQWlBQ0lBTWdCR29pQXkwQUFEb0FBeUFDSUFNZ0JHb2lBeTBBQURvQUJDQUNJQU1nQkdvaUF5MEFBRG9BQlNBQ0lBTWdCR29pQXkwQUFEb0FCaUFDSUFNZ0JHb2lBeTBBQURvQUJ5QUNJQU1nQkdvaUF5MEFBRG9BQ0NBQ0lBTWdCR29pQXkwQUFEb0FDU0FDSUFNZ0JHb2lBeTBBQURvQUNpQUNJQU1nQkdvaUF5MEFBRG9BQ3lBQ0lBTWdCR29pQXkwQUFEb0FEQ0FDSUFNZ0JHb2lBeTBBQURvQURTQUNJQU1nQkdvaUF5MEFBRG9BRGlBQ0lBTWdCR290QUFBNkFBOGdBa0VRYWlFQ0N5QUFLQUlBSUFVZ0NXd2lCRUVJZEdvZ0NDQUZRUU4wSWdCc1FRTjBhaUFIUVFOMGFpRUdJQUJCK1AvLy93ZHhJUUFnQ2tVRVFDQUJJQVlnQUVFQmNtc2lBeTBBQURvQUFDQUJJQU10QUFFNkFBRWdBU0FETFFBQ09nQUNJQUVnQXkwQUF6b0FBeUFCSUFNdEFBUTZBQVFnQVNBRExRQUZPZ0FGSUFFZ0F5MEFCam9BQmlBQklBTXRBQWM2QUFjZ0FTQURRUWhxSWdNdEFBQTZBQWdnQVNBRVFRWjBJQU5xSWdOQmVHb3RBQUE2QUFrZ0FTQURRWGxxTFFBQU9nQUtJQUVnQTBGNmFpMEFBRG9BQ3lBQklBTkJlMm90QUFBNkFBd2dBU0FEUVh4cUxRQUFPZ0FOSUFFZ0EwRjlhaTBBQURvQURpQUJJQU5CZm1vdEFBQTZBQThnQVNBRFFYOXFMUUFBT2dBUUlBRWdBeTBBQURvQUVRc2dCMFVOQUNBQ0lBWkJmMm9pQVMwQUFEb0FBQ0FDSUFBZ0FXb2lBUzBBQURvQUFTQUNJQUFnQVdvaUFTMEFBRG9BQWlBQ0lBQWdBV29pQVMwQUFEb0FBeUFDSUFBZ0FXb2lBUzBBQURvQUJDQUNJQUFnQVdvaUFTMEFBRG9BQlNBQ0lBQWdBV29pQVMwQUFEb0FCaUFDSUFBZ0FXb2lBUzBBQURvQUJ5QUNJQUFnQVdvZ0JDQUZhMEVHZEdvaUFTMEFBRG9BQ0NBQ0lBQWdBV29pQVMwQUFEb0FDU0FDSUFBZ0FXb2lBUzBBQURvQUNpQUNJQUFnQVdvaUFTMEFBRG9BQ3lBQ0lBQWdBV29pQVMwQUFEb0FEQ0FDSUFBZ0FXb2lBUzBBQURvQURTQUNJQUFnQVdvaUFTMEFBRG9BRGlBQ0lBQWdBV290QUFBNkFBOExDNjhCQVFGL0l3QkIwQUJySWdZa0FDQUNJQVpCSUdvZ0JpQURFRlVDUUFKQVFRSWdBQ2dDQUNJRFFRWkhJQU5CQmtrYlFRRkdCRUFnQUNBRklBRkJ5QUpxSUFaQklHb2dCaUFFRUZRaUEwVU5BUXdDQ3lBQUlBVWdBU0FHUVNCcUlBWWdCQkJUSWdNTkFRc2dBQ0FGUVlBQ2FpQUJRY2dLYWlBR1FUVnFJQVpCRUdvZ0FTZ0NqQUVnQkJCU0lnTU5BRUVBSVFNZ0FDZ0N4QUZCQVVzTkFDQUNJQVVRR3dzZ0JrSFFBR29rQUNBREM2TXFBU1IvSXdCQklHc2lFQ1FBSUJBZ0JDZ0NCQ0lJTmdJTUlCQWdCQ2dDQ0RZQ0VDQURJQWh1SWdaQkJIUWhGQ0FESUFZZ0NHeHJRUVIwSVJVQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUFBb0FnQWlCa0VEVFFSQUFrQUNRQUpBSUFaQkFtc09BZ0VDQUFzZ0FTZ0NrQUVoRXlBQUtBSUVJUTVCZnlFUEFuOGdBQ2dDeUFFaUNVVUVRRUVBSVFoQmZ3d0JDMEVBSVFoQmZ5QUpLQUlFSUE1SERRQWFRUUVoRWtGL0lBa29BZ0JCQlVzTkFCb2dDU2dDbUFFaUNFRVFkaUVISUFrb0FtZ0xJUTBnQUNnQ3pBRWlDVVVOQ0NBSktBSUVJQTVIRFFoQkFTRVdJQWtvQWdCQkJVc05DQ0FKS0FLc0FTSVJRUkIySVFvZ0NTZ0NiQ0VQREFnTElBRW9BcEFCSVJNZ0FTOEJvZ0VoRFNBQkx3R2dBU0VNSUFBb0FnUWhDMEYvSVFjQ1FDQUFLQUxNQVNJR1JRMEFJQXNnQmlnQ0JFY0VRQXdCQzBFQklSSWdCaWdDQUVFRlN3MEFJQVlvQXF3QklnbEJFSFloQ2lBR0tBSnNJUWNMSUFjZ0UwWUVRQ0FLSVFjZ0NTRUdEQWNMUVg4aER3SkFBa0FDUUNBQUtBTElBU0lJUlFSQVFRQWhCd3dCQzBFQUlRY2dDQ2dDQkNBTFJnMEJDMEVBSVFZTUFRdEJBU0VYSUFnb0FnQkJCVXNFUUVFQUlRWU1BUXNnQ0NnQ21BRWlCa0VRZGlFSElBZ29BbWdoRHdzQ1FBSkFJQUFvQXRBQklnaEZEUUFnQ0NnQ0JDQUxSdzBBSUFnb0FnQkJCVTBOQVF3R0N3SkFJQUFvQXRRQklnaEZEUUFnQ0NnQ0JDQUxSdzBBSUFnb0FnQkJCVXNOQmlBSUtBSndJUllnQ0NnQ3dBRWhDQXdIQzBFQUlRaEJmeUVXSUJJTkJpQVhSUTBHREFjTElBZ29BbXdoRmlBSUtBS3NBU0VJREFVTElBRW9BcEFCSVE4Z0FTOEJvZ0VoRFNBQkx3R2dBU0VNSUFBb0FnUWhCa0YvSVFjQ1FDQUFLQUxJQVNJS1JRUkFRUUFoQ0F3QkMwRUFJUWdnQmlBS0tBSUVSd1JBREFFTFFRRWhFU0FLS0FJQVFRVkxEUUFnQ2lnQ21BRWlDVUVRZGlFSUlBb29BbWdoQndzZ0J5QVBSZzBCQW44Q2Z3SkFBa0FnQUNnQ3pBRWlCMFVOQUNBSEtBSUVJQVpIRFFBZ0J5Z0NBRUVGU3cwQklBY29BbkFoRVNBSEtBSzhBU0VLSUFjb0Ftd2hFaUFIS0FLc0FTSUdRUkIyREFNTEFrQWdBQ2dDMUFFaUIwVU5BQ0FIS0FJRUlBWkhEUUJCQUNFR1FYOGhFaUFIS0FJQVFRVkxCRUJCZnlFUlFRQU1Bd3NnQnlnQ2NDRVJJQWNvQXNBQkRBSUxJQkVOQkF0QmZ5RVJRWDhoRWtFQUlRWkJBQXNoQ2tFQUN5RUhJQThnRWtZaUN5QVBJQkZHYWtFQlJ3UkFJQWNnQ0NBSFFSQjBRUkIxSWdzZ0NFRVFkRUVRZFNJT1NpSUlHeUlISUE0Z0N5QU9JQXNnRGtnYklBZ2JJZ2dnQ2tFUWRTSUxJQWdnQzBvYklBZEJFSFJCRUhVZ0MwZ2JJUWNnQmlBSklBWkJFSFJCRUhVaUN5QUpRUkIwUVJCMUlnbEtJZ1liSWdoQi8vOERjU0FKSUFzZ0NTQUxJQWxJR3lBR0d5SUdJQXBCRUhSQkVIVWlDU0FHSUFsS0d5QUlRUkIwUVJCMUlBbElHeUVHREFNTElBc05BaUFLUVJCMklRY2dDaUVHREFJTFFRRWhHeUFBUVlRQmFpRWNBMEFDZnlBQklCMUJBblFpSG1vaUlDSWtLQUt3QVNJR1FRSk5CRUFnQmtFQ2RFR2NOV29vQWdBTUFRdEJCQXNoSWlBQUlCNXFJZ1lnSUNnQ3dBRTJBbVFnQmlBQ0lDQW9Bc0FCRUJRaUJqWUNkQ0FHUlEwSUlDSUVRQ0FjSUIxQkJIUWlIMm9pSlNFbUlCd2dIMEVNY21vaUowRUNhaUVvSUJ3Z0gwRUljbW9pS1NFUklCd2dIMEVFY21vaUZpRVRRUUFoQmdOQUlBRWdIMm9nQmtFQ2RHb2lDQzhCMGdFaER5QUlMd0hRQVNFT0lDQW9Bc0FCSVNGQmZ5RVhBbjhnQUNBZFFRZDBJQ1FvQXJBQklpTkJCWFJxSUFaQkEzUnFJaHBCc0JscUtBSUFFQkVpQ1VVRVFFRUFJUXhCQUNFSVFRQWhDa0YvREFFTFFRQWhERUVBSVFoQkFDRUtRWDhnQ1NnQ0JDQUFLQUlFUncwQUdrRUJJUXBCZnlBSktBSUFRUVZMRFFBYUlBa2dHa0cwR1dvdEFBQWlCMEVDZEdvb0FvUUJJZ2hCRUhZaERDQUpJQWRCL0FGeGFpZ0NaQXNoRFFKQUFrQUNRQ0FBSUJwQnNCMXFLQUlBRUJFaUdFVUVRRUVBSVFrTUFRdEJBQ0VKSUJnb0FnUWdBQ2dDQkVZTkFRdEJBQ0VTUVFBaEN3d0JDMEVCSVFzZ0dDZ0NBRUVGU3dSQVFRQWhFZ3dCQ3lBWUlCcEJ0QjFxTFFBQUlnZEJBblJxS0FLRUFTSVNRUkIySVFrZ0dDQUhRZndCY1dvb0FtUWhGd3NDUUFKQUFrQUNRQUpBSUFBZ0drR3dJV29vQWdBUUVTSVpSUTBBSUJrb0FnUWdBQ2dDQkVjTkFDQVpLQUlBUVFWTkRRRU1BZ3NDUUNBQUlCcEJzQ1ZxS0FJQUVCRWlHVVVOQUNBWktBSUVJQUFvQWdSSERRQWdHU2dDQUVFRlN3MENJQmtnR2tHMEpXb3RBQUFpQjBIOEFYRnFLQUprSVJnZ0dTQUhRUUowYWlnQ2hBRWhCd3dEQzBFQUlRZEJmeUVZSUFwRkRRSWdDdzBDREFNTElCa2dHa0cwSVdvdEFBQWlCMEg4QVhGcUtBSmtJUmdnR1NBSFFRSjBhaWdDaEFFaEJ3d0JDMEVBSVFkQmZ5RVlDeUFYSUNGR0lnb2dEU0FoUmlJTGFpQVlJQ0ZHYWtFQlJ3UkFJQWtnRENBSlFSQjBRUkIxSWdzZ0RFRVFkRUVRZFNJTVNpSUpHeUlLSUF3Z0N5QU1JQXNnREVnYklBa2JJZ2tnQjBFUWRTSUxJQWtnQzBvYklBcEJFSFJCRUhVZ0MwZ2JJUXdnRWlBSUlCSkJFSFJCRUhVaUNpQUlRUkIwUVJCMUlndEtJZ2diSWdsQi8vOERjU0FMSUFvZ0N5QUtJQXRJR3lBSUd5SUlJQWRCRUhSQkVIVWlCeUFJSUFkS0d5QUpRUkIwUVJCMUlBZElHeUVJREFFTElBZ2dFaUFMR3lFSUlBd2dDU0FMR3lFTUlBc05BQ0FLRFFBZ0IwRVFkaUVNSUFjaENBc2dDQ0FPYWlJS1FSQjBRUkIxUVlCQWEwSC8vd0JMRFFvZ0RDQVBhaUlKUVJCMFFSQjFRWUFRYWtIL0gwc05DaUFqUVFOTkJFQUNmd0pBQWtBQ1FBSkFJQ05CQVdzT0F3RUNBd0FMSUNVZ0Nqc0JBQ0FtSUFrN0FRSWdGaUFLT3dFQUlCTWdDVHNCQWlBcElBbzdBUUFnRVNBSk93RUNJQ2NnQ2pzQkFDQW9EQU1MSUJ3Z0JrRUJkQ0FlYWtFQ2RDSUhhaUlJSUFrN0FRSWdDQ0FLT3dFQUlCd2dCMEVFY21vaUNDQUtPd0VBSUFoQkFtb01BZ3NnQUNBR0lCNXFRUUowYWlJSUlBbzdBWXdCSUFnZ0NUc0JoZ0VnQ0NBS093R0VBU0FJUVk0QmFnd0JDeUFBSUFZZ0htcEJBblJxSWdnZ0Nqc0JoQUVnQ0VHR0FXb0xJQWs3QVFBTElBWkJBV29pQmlBaVJ3MEFDd3NnSFVFQmFpSWRRUVJIRFFBTFFRQWhEQU5BSUJBZ0FDQU1RUUowSWdKcUtBSjBOZ0lJSUF4QkFVdEJBM1FoQ1NBTVFRTjBRUWh4SVFjQ1FDQUJJQUpxS0FLd0FTSUNRUUpOQkVBQ1FBSkFBa0FnQWtFQmF3NENBUUlBQ3lBRklBQWdERUVFZEdwQmhBRnFJQkJCQ0dvZ0ZTQVVJQWNnQ1VFSVFRZ1FEZ3dEQ3lBRklBQWdERUVFZEdvaUFrR0VBV29nRUVFSWFpQVZJQlFnQnlBSlFRaEJCQkFPSUFVZ0FrR01BV29nRUVFSWFpQVZJQlFnQnlBSlFRUnlRUWhCQkJBT0RBSUxJQVVnQUNBTVFRUjBhaUlDUVlRQmFpQVFRUWhxSUJVZ0ZDQUhJQWxCQkVFSUVBNGdCU0FDUVlnQmFpQVFRUWhxSUJVZ0ZDQUhRUVJ5SUFsQkJFRUlFQTRNQVFzZ0JTQUFJQXhCQkhScUlnaEJoQUZxSUJCQkNHb2dGU0FVSUFjZ0NVRUVRUVFRRGlBRklBaEJpQUZxSUJCQkNHb2dGU0FVSUFkQkJISWlCaUFKUVFSQkJCQU9JQVVnQ0VHTUFXb2dFRUVJYWlBVklCUWdCeUFKUVFSeUlnSkJCRUVFRUE0Z0JTQUlRWkFCYWlBUVFRaHFJQlVnRkNBR0lBSkJCRUVFRUE0TElBeEJBV29pREVFRVJ3MEFDd3dHQ3lBSUlRY2dDU0VHQzBFQklSc2dCaUFNYWlJSVFSQjBRUkIxUVlCQWEwSC8vd0JMRFFVZ0J5QU5haUlHUVJCMFFSQjFRWUFRYWtIL0gwc05CU0FDSUE4UUZDSUhSUTBGSUFBZ0Jqc0JzZ0VnQUNBSU93R3dBU0FBSUFjMkFuUWdBQ0FQTmdKa0lBQWdCellDZkNBQUlBODJBbXdnQUNBQUtBS3dBU0lHTmdLc0FTQUFJQVkyQXFnQklBQWdCallDcEFFZ0FDQUdOZ0tRQVNBQUlBWTJBb3dCSUFBZ0JqWUNpQUVnQUNBR05nS0VBU0FCS0FLVUFTRU9JQUV2QWFZQklRd2dBUzhCcEFFaEN5QUFLQUlFSVFrQ1FBSkFJQUFvQXRBQklnZEZEUUFnQnlnQ0JDQUpSdzBBUVFFaEVTQUhLQUlBUVFWTEJFQkJmeUVJUVFBaEJ3d0NDeUFIS0FKc0lRZ2dCeWdDckFFaEJ3d0JDMEYvSVFoQkFDRUhJQUFvQXN3QklncEZCRUJCQUNFUkRBRUxJQWtnQ2lnQ0JFY0VRRUVBSVJFTUFRdEJBU0VSSUFvb0FnQkJCVXNOQUNBS0tBSnNJUWdnQ2lnQ3NBRWhCd3NDUUNBSUlBNUdSUVJBSUFaQkVIWWhDQUovQWtBQ1FDQUFLQUxNQVNJTlJRMEFJQTBvQWdRZ0NVY05BQ0FOS0FJQVFRVkxEUUVnRFNnQ3ZBRWlFVUVRZGlFS0lBMG9BbkFNQWdzZ0VVVU5Bd3RCQUNFUlFRQWhDa0YvQ3lFTklBNGdEMFlpQ1NBTklBNUdha0VCUndSQUlBb2dDQ0FLUVJCMFFSQjFJZzBnQ0VFUWRFRVFkVW9pQ0JzaUNTQUdRUkIxSWdvZ0RTQUtJQW9nRFVvYklBZ2JJZ2dnQjBFUWRTSUtJQWdnQ2tvYklBbEJFSFJCRUhVZ0NrZ2JJUWdnRVNBR0lCRkJFSFJCRUhVaUNpQUdRUkIwUVJCMUlnMUtJZ1liSWdsQi8vOERjU0FOSUFvZ0RTQU5JQXBLR3lBR0d5SUdJQWRCRUhSQkVIVWlCeUFHSUFkS0d5QUpRUkIwUVJCMUlBZElHeUVHREFJTElBa05BU0FOSUE1R0JFQWdFVUgvL3dOeElBcEJFSFJ5SVFZZ0NpRUlEQUlMQ3lBSFFSQjJJUWdnQnlFR0N5QUdJQXRxSWdkQkVIUkJFSFZCZ0VCclFmLy9BRXNOQlNBSUlBeHFJZ1pCRUhSQkVIVkJnQkJxUWY4ZlN3MEZJQUlnRGhBVUlnSkZEUVVnQUNBR093SENBU0FBSUFjN0FjQUJJQUFnQWpZQ2dBRWdBQ0FDTmdKNElBQWdEallDY0NBQUlBNDJBbWdnQUNBQUtBTEFBU0lHTmdLOEFTQUFJQVkyQXJnQklBQWdCallDdEFFZ0FDQUdOZ0tnQVNBQUlBWTJBcHdCSUFBZ0JqWUNtQUVnQUVHVUFXb2lBaUFHTmdJQUlCQWdBQ2dDZERZQ0NDQUZJQUJCaEFGcUlCQkJDR29nRlNBVVFRQkJBRUVJUVJBUURpQVFJQUFvQW5nMkFnZ2dCU0FDSUJCQkNHb2dGU0FVUVFoQkFFRUlRUkFRRGd3RUMwRUFJUWhCZnlFV0N5QVBJQk5HSWdzZ0V5QVdSbXBCQVVjRVFDQUtJQWNnQ2tFUWRFRVFkU0lMSUFkQkVIUkJFSFVpRGtvaUJ4c2lDaUFPSUFzZ0RpQUxJQTVJR3lBSEd5SUhJQWhCRUhVaUN5QUhJQXRLR3lBS1FSQjBRUkIxSUF0SUd5RUhJQWtnQmlBSlFSQjBRUkIxSWdvZ0JrRVFkRUVRZFNJTFNpSUdHeUlKUWYvL0EzRWdDeUFLSUFzZ0NpQUxTQnNnQmhzaUJpQUlRUkIwUVJCMUlnZ2dCaUFJU2hzZ0NVRVFkRUVRZFNBSVNCc2hCZ3dCQ3lBTERRQWdDRUVRZGlFSElBZ2hCZ3RCQVNFYklBWWdER29pQ0VFUWRFRVFkVUdBUUd0Qi8vOEFTdzBDSUFjZ0RXb2lCa0VRZEVFUWRVR0FFR3BCL3g5TERRSWdBaUFURUJRaUIwVU5BaUFBSUFZN0FhSUJJQUFnQ0RzQm9BRWdBQ0FITmdKMElBQWdFellDWkNBQUlBYzJBbmdnQUNBVE5nSm9JQUFnQUNnQ29BRWlEellDbkFFZ0FDQVBOZ0tZQVNBQUlBODJBcFFCSUFBZ0R6WUNrQUVnQUNBUE5nS01BU0FBSUE4MkFvZ0JJQUFnRHpZQ2hBRWdBU2dDbEFFaERpQUJMd0dtQVNFTklBRXZBYVFCSVF3Q2Z3SkFBa0FDUUNBQUtBTElBU0lHQkVBZ0JpZ0NCQ0FBS0FJRVJnUkFJQVlvQWdCQkJVMEVRQ0FHS0FLNEFTSUxRUkIySVFjZ0JpZ0NjQ0FPUncwRUlBc2hDUXdEQzBGL0lSSkJBQ0VKUVFBaEIwRUFJUXRCQUNFS0lBNUJmMFlOQWd3RUMwRi9JUkpCQUNFSlFRQWhCMEVBSVF0QkFDRUtJQTVCZjBZTkFRd0RDMEYvSVJKQkFDRUpRUUFoQjBFQUlRdEJBQ0VLSUE1QmYwY05BZ3NnQ1VILy93TnhJQWRCRUhSeURBSUxJQVlvQW1naEVpQUdLQUtnQVNFS0lBY2hDUXNnRDBFUWRpRUlJQTRnRTBZaUJpQU9JQkpHYWtFQlJ3UkFJQWdnQ1NBSlFSQjBRUkIxSWdrZ0NFRVFkRUVRZFVnaUJ4c2lDQ0FKSUE5QkVIVWlCaUFKSUFZZ0NVZ2JJQWNiSWdZZ0NrRVFkU0lISUFZZ0Iwb2JJQWhCRUhSQkVIVWdCMGdiSVFjZ0R5QUxJQXRCRUhSQkVIVWlDeUFQUVJCMFFSQjFJZ2xJSWdZYklnaEIvLzhEY1NBTElBa2dDeUFKSUF0SUd5QUdHeUlHSUFwQkVIUkJFSFVpQ1NBR0lBbEtHeUFJUVJCMFFSQjFJQWxJR3d3QkN5QUlJQXBCRUhZZ0Joc2hCeUFQSUFvZ0Joc0xJQXhxSWdoQkVIUkJFSFZCZ0VCclFmLy9BRXNOQWlBSElBMXFJZ1pCRUhSQkVIVkJnQkJxUWY4ZlN3MENJQUlnRGhBVUlnSkZEUUlnQUNBR093SENBU0FBSUFnN0FjQUJJQUFnQWpZQ2dBRWdBQ0FDTmdKOElBQWdEallDY0NBQUlBNDJBbXdnQUNBQUtBTEFBU0lHTmdLOEFTQUFJQVkyQXJnQklBQWdCallDdEFFZ0FDQUdOZ0t3QVNBQUlBWTJBcXdCSUFBZ0JqWUNxQUVnQUVHa0FXb2lBaUFHTmdJQUlCQWdBQ2dDZERZQ0NDQUZJQUJCaEFGcUlCQkJDR29nRlNBVVFRQkJBRUVRUVFnUURpQVFJQUFvQW53MkFnZ2dCU0FDSUJCQkNHb2dGU0FVUVFCQkNFRVFRUWdRRGd3QkN3SkFJQVpGQkVBZ0VrVUVRRUVBSVFrTUFnc2dGa1VFUUVFQUlRa01BZ3NnQ0VILy93TnhJQWRCRUhSeUlBMXlSUVJBUVFBaENRd0NDMEVBSVFrZ0VVSC8vd054SUFwQkVIUnlJQTl5UlEwQkN5QUJMd0dpQVNFTElBRXZBYUFCSVFrQ1FBSkFBa0FDUUFKQUlBQW9BdEFCSWdaRkRRQWdCaWdDQkNBT1J3MEFJQVlvQWdCQkJVME5BUXdDQ3dKQUlBQW9BdFFCSWdaRkRRQWdCaWdDQkNBT1J3MEFJQVlvQWdCQkJVc05BaUFHS0FKd0lSY2dCaWdDd0FFaERBd0RDMEYvSVJjZ0VrVU5BaUFXRFFJTUF3c2dCaWdDYkNFWElBWW9BcXdCSVF3TUFRdEJmeUVYQ3lBUElCTkdJZ1lnRFNBVFJpSU5haUFUSUJkR2FrRUJSd1JBSUFvZ0J5QUtRUkIwUVJCMUlnb2dCMEVRZEVFUWRTSU5TaUlHR3lJSElBMGdDaUFOSUFvZ0RVZ2JJQVliSWdZZ0RFRVFkU0lLSUFZZ0Nrb2JJQWRCRUhSQkVIVWdDa2diSVFjZ0VTQUlJQkZCRUhSQkVIVWlDaUFJUVJCMFFSQjFJZzFLSWdZYklnaEIvLzhEY1NBTklBb2dEU0FLSUExSUd5QUdHeUlHSUF4QkVIUkJFSFVpQ2lBR0lBcEtHeUFJUVJCMFFSQjFJQXBJR3lFSURBRUxJQWdnRVNBTkd5RUlJQWNnQ2lBTkd5RUhJQTBOQUNBR0RRQWdERUVRZGlFSElBd2hDQXRCQVNFYklBZ2dDV29pREVFUWRFRVFkVUdBUUd0Qi8vOEFTdzBDSUFjZ0Myb2lDVUVRZEVFUWRVR0FFR3BCL3g5TERRSUxJQUlnRXhBVUlnSkZCRUJCQVNFYkRBSUxJQUFnQ1RzQndnRWdBQ0FNT3dIQUFTQUFJQUkyQW5RZ0FDQVROZ0prSUFBZ0FqWUNnQUVnQUNBQ05nSjhJQUFnQWpZQ2VDQUFJQk0yQW5BZ0FDQVROZ0pzSUFBZ0V6WUNhQ0FBSUFBb0FzQUJJZ1kyQXJ3QklBQWdCallDdUFFZ0FDQUdOZ0swQVNBQUlBWTJBckFCSUFBZ0JqWUNyQUVnQUNBR05nS29BU0FBSUFZMkFxUUJJQUFnQmpZQ29BRWdBQ0FHTmdLY0FTQUFJQVkyQXBnQklBQWdCallDbEFFZ0FDQUdOZ0tRQVNBQUlBWTJBb3dCSUFBZ0JqWUNpQUVnQUNBR05nS0VBU0FRSUFJMkFnZ2dCU0FBUVlRQmFpQVFRUWhxSUJVZ0ZFRUFRUUJCRUVFUUVBNExRUUFoR3lBQUtBTEVBVUVCU3cwQUlBQW9BZ0FFUUNBRUlBTWdCU0FCUWNnQ2FoQllEQUVMSUFRZ0JSQWJDeUFRUVNCcUpBQWdHd3VUQ3dFUGZ5QUFLQUlBSWhFZ0FTQUJJQUFvQWdRaUNuQWlBV3NpQkVFSWRHb2dBVUVFZEdvaEJTQUtRUVIwSVFzZ0FDZ0NDQ0FLYkNJQVFRWjBJUVlnQVVFRGRDRUpJQUJCQ0hRaERDQUVRUVowSVJJZ0NrRUNkRUg4Ly8vL0EzRkJBblFoRUFOQUlBVWdEa0VDZENJQVFmQXBhaWdDQUNJQklBdHNhaUFBUWJBcGFpZ0NBQ0lBYWlFRUlBSWdBVUVFZEdvZ0FHb2hBQUpBSUFNZ0RrRUdkR29pQVNnQ0FDSUhRZi8vL3dkSEJFQWdBU2dDQkNFSUlBQXRBQUVoRFNBRUlBY2dBQzBBQUdwQnNDNXFMUUFBT2dBQUlBRW9BZ2doQnlBQUxRQUNJUThnQkNBSUlBMXFRYkF1YWkwQUFEb0FBU0FCS0FJTUlRZ2dBQzBBQXlFTklBUWdCeUFQYWtHd0xtb3RBQUE2QUFJZ0JDQUlJQTFxUWJBdWFpMEFBRG9BQXlBQktBSVVJUWNnQUMwQUVTRUlJQVFnQzJvaUJDQUJLQUlRSUFBdEFCQnFRYkF1YWkwQUFEb0FBQ0FCS0FJWUlRMGdBQzBBRWlFUElBUWdCeUFJYWtHd0xtb3RBQUE2QUFFZ0FTZ0NIQ0VISUFBdEFCTWhDQ0FFSUEwZ0QycEJzQzVxTFFBQU9nQUNJQVFnQnlBSWFrR3dMbW90QUFBNkFBTWdBU2dDSkNFSElBQXRBQ0VoQ0NBRUlBdHFJZ1FnQVNnQ0lDQUFMUUFnYWtHd0xtb3RBQUE2QUFBZ0FTZ0NLQ0VOSUFBdEFDSWhEeUFFSUFjZ0NHcEJzQzVxTFFBQU9nQUJJQUVvQWl3aEJ5QUFMUUFqSVFnZ0JDQU5JQTlxUWJBdWFpMEFBRG9BQWlBRUlBY2dDR3BCc0M1cUxRQUFPZ0FESUFFb0FqUWhCeUFBTFFBeElRZ2dCQ0FMYWlJRUlBRW9BakFnQUMwQU1HcEJzQzVxTFFBQU9nQUFJQUVvQWpnaERTQUFMUUF5SVE4Z0JDQUhJQWhxUWJBdWFpMEFBRG9BQVNBQktBSThJUUVnQUMwQU15RUFJQVFnRFNBUGFrR3dMbW90QUFBNkFBSWdCQ0FBSUFGcVFiQXVhaTBBQURvQUF3d0JDeUFBS0FJUUlRRWdCQ0FBS0FJQU5nSUFJQVFnRUdvaUJDQUJOZ0lBSUFBb0FqQWhBU0FFSUJCcUlnUWdBQ2dDSURZQ0FDQUVJQkJxSUFFMkFnQUxJQTVCQVdvaURrRVFSdzBBQ3lBTUlCRnFJQkpxSUFscUloQWdCbW9oRVNBS1FRTjBRZmovLy84SGNTSUxRUUoyUVFKMElRNUJFQ0VLQTBBZ0NrRUNkRUVNY1NJQVFmQXBhaWdDQUNJQklBdHNJQUJCc0NscUtBSUFJZ0JxSUJFZ0VDQUtRUk5MSWdVYmFpRUVJQUpCd0FKQmdBSWdCUnRxSUFGQkEzUWdBR3BxSVFBQ1FDQURJQXBCQm5ScUlnRW9BZ0FpQlVILy8vOEhSd1JBSUFFb0FnUWhCaUFBTFFBQklRa2dCQ0FGSUFBdEFBQnFRYkF1YWkwQUFEb0FBQ0FCS0FJSUlRVWdBQzBBQWlFTUlBUWdCaUFKYWtHd0xtb3RBQUE2QUFFZ0FTZ0NEQ0VHSUFBdEFBTWhDU0FFSUFVZ0RHcEJzQzVxTFFBQU9nQUNJQVFnQmlBSmFrR3dMbW90QUFBNkFBTWdBU2dDRkNFRklBQXRBQWtoQmlBRUlBdHFJZ1FnQVNnQ0VDQUFMUUFJYWtHd0xtb3RBQUE2QUFBZ0FTZ0NHQ0VKSUFBdEFBb2hEQ0FFSUFVZ0JtcEJzQzVxTFFBQU9nQUJJQUVvQWh3aEJTQUFMUUFMSVFZZ0JDQUpJQXhxUWJBdWFpMEFBRG9BQWlBRUlBVWdCbXBCc0M1cUxRQUFPZ0FESUFFb0FpUWhCU0FBTFFBUklRWWdCQ0FMYWlJRUlBRW9BaUFnQUMwQUVHcEJzQzVxTFFBQU9nQUFJQUVvQWlnaENTQUFMUUFTSVF3Z0JDQUZJQVpxUWJBdWFpMEFBRG9BQVNBQktBSXNJUVVnQUMwQUV5RUdJQVFnQ1NBTWFrR3dMbW90QUFBNkFBSWdCQ0FGSUFacVFiQXVhaTBBQURvQUF5QUJLQUkwSVFVZ0FDMEFHU0VHSUFRZ0Myb2lCQ0FCS0FJd0lBQXRBQmhxUWJBdWFpMEFBRG9BQUNBQktBSTRJUWtnQUMwQUdpRU1JQVFnQlNBR2FrR3dMbW90QUFBNkFBRWdBU2dDUENFQklBQXRBQnNoQUNBRUlBa2dER3BCc0M1cUxRQUFPZ0FDSUFRZ0FDQUJha0d3TG1vdEFBQTZBQU1NQVFzZ0FDZ0NDQ0VCSUFRZ0FDZ0NBRFlDQUNBRUlBNXFJZ1FnQVRZQ0FDQUFLQUlZSVFFZ0JDQU9haUlFSUFBb0FoQTJBZ0FnQkNBT2FpQUJOZ0lBQ3lBS1FRRnFJZ3BCR0VjTkFBc0w1Z0VCQjM4Q1FDQUFLQUlBSWdWRkRRQWdBRUVCTmdJOElBQW9BamdOQUNBQUtBSWNJUVpCLy8vLy93Y2hBZ05BQTBBZ0JTQURRU2hzYWlJRUtBSVlCRUFnQkNBQklBUW9BaEFpQkNBQ1NDSUhHeUVCSUFRZ0FpQUhHeUVDQ3lBRFFRRnFJZ01nQmswTkFDQUJSUTBDSUFBb0Fnd2dBQ2dDRUNJRFFRUjBhaUlDSUFFb0FnQTJBZ0FnQWlBQktBSWtOZ0lNSUFJZ0FTZ0NIRFlDQkNBQ0lBRW9BaUEyQWdnZ0FDQURRUUZxTmdJUVFRQWhBeUFCUVFBMkFoZ2dBU2dDRkNFRVFRQWhBVUgvLy8vL0J5RUNJQVFOQUFzZ0FDQUFLQUlzUVg5cU5nSXNEQUFBQ3dBTEM5d0dBUXAvSUFCQ0FEY0NFQUpBQWtBQ1FDQURSUTBBQWtBQ1FDQUJJQUFvQWpBaUEwY0VRQ0FEUVFGcUlBQW9BaUFpQkhBaUNTQUJSZzBCSUFBb0FnQWdBQ2dDSEVFb2JHb29BZ0FoQ3dOQUFrQUNRQ0FBS0FJb0lnY0VRQ0FBS0FJQUlRaEJBQ0VEQTBBZ0NDQURRU2hzYWlJRktBSVVRWDlxUVFGTkJFQWdCU0FGS0FJTUlnVWdCRUVBSUFVZ0NVc2JhellDQ0FzZ0EwRUJhaUlESUFkSERRQUxJQWNnQUNnQ0dFa05Ba0YvSVFWQkFDRURRUUFoQkFOQUlBZ2dBMEVvYkdvaUJpZ0NGRUYvYWtFQlRRUkFJQVlvQWdnaUJpQUVJQVZCZjBZZ0JpQUVTSElpQmhzaEJDQURJQVVnQmhzaEJRc2dBMEVCYWlJRElBZEhEUUFMSUFWQkFFNE5BVUVCRHd0QkFDRUhJQUFvQWhnTkFVRUJEd3NnQ0NBRlFTaHNhaUlEUVFBMkFoUWdBQ0FIUVg5cUlnYzJBaWdnQXlnQ0dBMEFJQUFnQUNnQ0xFRi9hallDTEFzZ0FDZ0NMQ0lGSUFBb0Fod2lDRThFUUNBQUtBSTREUVlnQUNnQ0FDRU1BMEJCQUNFRVFmLy8vLzhISVFaQkFDRURBMEFnRENBRFFTaHNhaUlLS0FJWUJFQWdDaUFFSUFvb0FoQWlDaUFHU0NJTkd5RUVJQW9nQmlBTkd5RUdDeUFEUVFGcUlnTWdDRTBOQUFzQ1FDQUVSUTBBSUFBb0Fnd2dBQ2dDRUNJR1FRUjBhaUlESUFRb0FnQTJBZ0FnQXlBRUtBSWtOZ0lNSUFNZ0JDZ0NIRFlDQkNBRElBUW9BaUEyQWdnZ0FDQUdRUUZxTmdJUUlBUkJBRFlDR0NBRUtBSVVEUUFnQUNBRlFYOXFJZ1UyQWl3TElBVWdDRThOQUFzTElBQW9BZ0FpQkNBSVFTaHNhaUlESUFrMkFnd2dBMEtBZ0lDQUVEY0NFQ0FEUVFBMkFoZ2dBeUFKTmdJSUlBQWdCMEVCYWpZQ0tDQUFJQVZCQVdvMkFpd2dCQ0FJUVFGcUVDY2dDVUVCYWlBQUtBSWdJZ1J3SWdrZ0FVY05BQXNDUUNBQUtBSVFJZ2xGRFFBZ0FDZ0NBQ0lGSUFBb0Fod2lCRUVvYkdvaUNDZ0NBQ0VISUFBb0Fnd2hCa0VBSVFNRFFDQUhJQVlnQTBFRWRHb29BZ0JIQkVBZ0NTQURRUUZxSWdOSERRRU1BZ3NMSUFSRkRRQkJBQ0VEQTBBZ0N5QUZJQU5CS0d4cUlna29BZ0JIQkVBZ0JDQURRUUZxSWdOSERRRU1BZ3NMSUFrZ0J6WUNBQ0FJSUFzMkFnQUxJQUlOQlNBQUtBSXdJUU1NQWdzZ0FrRUFSdzhMSUFJTkF3c2dBU0FEUmcwQUlBQWdBU0FBS0FJZ0lnQnFRWDlxSUFCd05nSXdDMEVBRHdzRFFBd0FBQXNBQ3lBQUlBRTJBakJCQUF0MUFRTi9Ba0FnQUNnQ0FDSUJSUTBBSUFBb0FoeEJmMFlOQUFOQUlBRWdBa0VvYkNJRGFpZ0NCQkFFSUFBb0FnQWlBU0FEYWtFQU5nSUVJQUpCQVdvaUFpQUFLQUljUVFGcVNRMEFDd3NnQVJBRUlBQkJBRFlDQUNBQUtBSUVFQVFnQUVFQU5nSUVJQUFvQWd3UUJDQUFRUUEyQWd3TGd3RUJBMzhDUUNBQUtBSUFJZ1pGRFFBZ0FDZ0NIRUYvUmcwQUEwQWdCaUFIUVNoc0lnaHFLQUlFRUFRZ0FDZ0NBQ0lHSUFocVFRQTJBZ1FnQjBFQmFpSUhJQUFvQWh4QkFXcEpEUUFMQ3lBR0VBUWdBRUVBTmdJQUlBQW9BZ1FRQkNBQVFRQTJBZ1FnQUNnQ0RCQUVJQUJCQURZQ0RDQUFJQUVnQWlBRElBUWdCUkJkQzRBQ0FRSi9JQUFnQlRZQ09DQUFJQVEyQWlBZ0FFTC8vd00zQWlRZ0FFSUFOd0lzSUFBZ0EwRUJJQU5CQVVzYklnTTJBaGdnQUNBRElBSWdCUnNpQWpZQ0hDQUFRYWdGRUFvaUF6WUNBRUgvL3dNaEJBSkFJQU5GRFFCQkFDRUZJQU5CQUVHb0JSQUhJUVlnQWtGL1J3UkFJQUZCZ0FOc1FTOXlJUVZCQUNFREEwQWdCaUFEUVNoc2FpSUhJQVVRQ2lJQk5nSUVJQUZGRFFJZ0J5QUJRUUFnQVd0QkQzRnFOZ0lBSUFNZ0Fra2hBU0FEUVFGcUlRTWdBUTBBQ3lBQ1FRUjBRUkJxSVFVTElBQkJ4QUFRQ2lJQk5nSUVJQUFnQlJBS0lnSTJBZ3dnQWtVTkFDQUJSUTBBUVFBaEJDQUJRUUJCeEFBUUJ4b2dBRUlBTndJUUN5QUVDOU1CQVFkL1FRRWhBUUpBSUFBb0FqZ05BQ0FBS0FJY0lRVWdBQ2dDQUNFR1FmLy8vLzhISVFOQkFDRUJBMEFnQmlBQlFTaHNhaUlFS0FJWUJFQWdCQ0FDSUFRb0FoQWlCQ0FEU0NJSEd5RUNJQVFnQXlBSEd5RURDeUFCUVFGcUlnRWdCVTBOQUFzZ0FrVUVRRUVCRHdzZ0FDZ0NEQ0FBS0FJUUlnTkJCSFJxSWdFZ0FpZ0NBRFlDQUNBQklBSW9BaVEyQWd3Z0FTQUNLQUljTmdJRUlBRWdBaWdDSURZQ0NDQUFJQU5CQVdvMkFoQkJBQ0VCSUFKQkFEWUNHQ0FDS0FJVURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3lBQkMvVUVBUWgvSUFBb0FpZ2lCQVJBSUFBb0FnQWhCd05BSUFjZ0JVRW9iR29pQmlnQ0ZFRi9ha0VCVFFSQUlBWWdCaWdDRENJSUlBSkxCSDhnQ0NBQUtBSWdhd1VnQ0FzMkFnZ0xJQVZCQVdvaUJTQUVSdzBBQ3d0QkFDRUVBa0FnQVNnQ0FFVU5BQ0FCS0FJRUlnVkJBa3NOQUVFQUlRY2dBaUVHQTBBQ1FBSkFBa0FnQlVFQ1J3UkFJQUVnQjBFTWJHb29BZ2doQkFKQUlBVkZCRUFnQmlBRWF5SUdRWDlLRFFFZ0FDZ0NJQ0FHYWlFR0RBRUxJQVFnQm1vaUJrRUFJQUFvQWlBaUJTQUdJQVZJRzJzaEJnc2dCaUVKSUFZZ0Frc0VRQ0FHSUFBb0FpQnJJUWtMSUFBb0FoZ2lDa1VFUUVFQkR3c2dBQ2dDQUNFSVFRQWhCUU5BSUFnZ0JVRW9iR29pQkNnQ0ZDSUxRWDlxUVFGTkJFQWdCQ2dDQ0NBSlJnMERDMEVCSVFRZ0JVRUJhaUlGSUFwSERRQUxEQVVMUVFFaEJDQUFLQUlZSWdsRkRRUWdBU0FIUVF4c2FpZ0NEQ0VLSUFBb0FnQWhDRUVBSVFVRFFDQUlJQVZCS0d4cUlnUW9BaFJCQTBZRVFDQUVLQUlJSUFwR0RRTUxRUUVoQkNBRlFRRnFJZ1VnQ1VjTkFBc01CQXNnQlVFQVNBUkFRUUVQQzBFQklRUWdDMEVCU3cwQkRBTUxRUUVoQkNBRlFRQklEUUlMSUFjZ0F5SUVTUVJBQTBBZ0FDZ0NCQ0lKSUFSQkFuUnFJQWtnQkVGL2FpSUVRUUowYWlnQ0FEWUNBQ0FFSUFkTERRQUxJQUFvQWdBaENBc2dBQ2dDQkNBSFFRSjBhaUFJSUFWQktHd2lDV28yQWdBZ0IwRUJhaUlISVFRZ0J5SUZJQU5OQkVBRFFDQUFLQUlFSWdnZ0JVRUNkR29vQWdBaUNpQUFLQUlBSUFscVJ3UkFJQWdnQkVFQ2RHb2dDallDQUNBRVFRRnFJUVFMSUFWQkFXb2lCU0FEVFEwQUN3dEJBQ0VFSUFFZ0IwRU1iR29vQWdRaUJVRURTUTBBQ3dzZ0JBc0hBRUhFR2hBS0M3Y0JBUUovSXdCQkVHc2lCaVFBSUFaQkFEWUNEQ0FBSUFFZ0FpQUdRUXhxRUNvaUIwRjljVVVFUUFOQUlBQWdBU0FHS0FJTUlnZHFJZ0VnQWlBSGF5SUNJQVpCREdvUUtpSUhRWDF4UlEwQUN3c2dCMEVCUmdSQUlBUWdBQ2dDRUNJQktBSTBRUVIwTmdJQUlBVWdBU2dDT0VFRWREWUNBQ0FESUFCQnhBbHFJZ0FvQWhRaUFTQUFLQUlRU1FSL0lBQWdBVUVCYWpZQ0ZDQUFLQUlNSUFGQkJIUnFCVUVBQ3lnQ0FEWUNBQXNnQmtFUWFpUUFJQWNMU1FFQmZ5QUFRUUJCeEJvUUJ5SUNRYlFLYWtFQk5nSUFJQUpDZ0lLQWdJQUVOd0lFSUFCQndCQVFDaUlDTmdLd0dpQUNSUVJBUVFFUEN5QUJCRUFnQUVFQk5nTEFDUXRCQUF1NkJBRUpmd0pBQWtBZ0FVRUVTUTBBSUFBdEFBQU5BQ0FBTFFBQkRRQWdBQzBBQWlJSFFRRkxEUUJCQXlFRUlBQkJBMm9oQlVFQ0lRaEJmU0VNQWtBRFFDQUZJUVlDZnlBSVFRRnFJQWRCL3dGeElnVkZEUUFhUVFBaEJ5QUZRUUZHUVFBZ0NFRUJTeHNOQWtFQUN5RUlJQVJCZjNNaERDQUdRUUZxSVFVZ0JpMEFBQ0VISUFSQkFXb2lCQ0FCUncwQUN5QURJQUUyQWdCQkFROExJQVFoQ2tFQUlRaEJBQ0VGQTBCQkFTQUlJQWNnQmkwQUFDSUxSV29pQ1VFQ1Joc2dDQ0FMUVFOR0d5RUlJQXBCQVdvaENnSkFJQXRCQVVjTkFDQUpRUUpKRFFBZ0FpQUtJQXhxSUFsQmYzTnFJZ0UyQWd4QkFDQUpRWDFxSWdZZ0JpQUpTeHNoQnd3REMwRUFJQWtnQ3hzaEIwRUJJQVVnQ1VFQ1N4c2dCU0FMR3lFRklBWkJBV29oQmlBQklBcEhEUUFMSUFJZ0FTQU1haUFIYXlJQk5nSU1EQUVMSUFJZ0FUWUNERUVCSVFoQkFDRUhDeUFDUVFBMkFoQWdBa0VBTmdJSUlBSWdBQ0FFYWlJQU5nSUVJQUlnQURZQ0FDQURJQVFnQjJvZ0FXbzJBZ0JCQVNFREFrQWdCUTBBUVFBaEF5QUlSUTBBSUFJQ2Z5QUNLQUlNSWdGRkJFQWdBQ0VFUVFBTUFRc2dBQ0VFUVFBaEJnTkFJQUZCZjJvaEFTQUVMUUFBSVFVQ2Z3SkFJQVpCQWtjTkFDQUZRUU5HQkVBZ0FVVUVRRUVCRHdzZ0JDMEFBVUVEU3dSQVFRRVBDMEVBSVFZZ0JFRUJhZ3dDQ3lBRlFRTlBEUUJCQVE4TElBQWdCVG9BQUVFQUlBWkJBV29nQlJzaEJpQUFRUUZxSVFBZ0JFRUJhZ3NoQkNBQkRRQUxJQUlvQWd3TElBQWdCR3RxTmdJTUN5QURDd3Z0TWhrQVFZWUlDOG9GWmlBbUVBWUlaUmhsR0VNUVF4QkRFRU1RUXhCREVFTVFReEFpQ0NJSUlnZ2lDQ0lJSWdnaUNDSUlJZ2dpQ0NJSUlnZ2lDQ0lJSWdnaUNBQUFBQUFBQUFBQWFrQktNQ29vQ2lCcE9HazRTU2hKS0NrZ0tTQUpHQWtZYURCb01HZ3dhREJJSUVnZ1NDQklJQ2dZS0Jnb0dDZ1lDQkFJRUFnUUNCQm5LR2NvWnlobktHY29aeWhuS0djb1J4aEhHRWNZUnhoSEdFY1lSeGhIR0c1Z1RsZ3VVQTVRYmxoT1VDNUlEa2dOUUExQVRVaE5TQzFBTFVBTk9BMDRiVkJ0VUUxQVRVQXRPQzA0RFRBTk1HdElhMGhyU0d0SWEwaHJTR3RJYTBoTE9FczRTemhMT0VzNFN6aExPRXM0S3pBck1Dc3dLekFyTUNzd0t6QXJNQXNvQ3lnTEtBc29DeWdMS0Fzb0N5Z0FBQUFBTDJndmFCQ0FVSUF3Z0JCNGNJQlFlREI0RUhCd2VGQndNSEFRYUc5d2IzQlBhRTlvTDJBdllBOWdEMkJ2YUc5b1QyQlBZQzlZTDFnUFdBOVlBQUFBQUFBQUFBQm1PRVlnSmlBR0VHWXdSaGdtR0FZSVpTaGxLQ1VRSlJCa0lHUWdaQ0JrSUdRWVpCaGtHR1FZUXhCREVFTVFReEJERUVNUVF4QkRFQUFBQUFBQUFBQUFhVWhKT0NrNENUQUlLQWdvU0RCSU1DZ3dLREFJSUFnZ1owQm5RR2RBWjBCSEtFY29SeWhIS0Njb0p5Z25LQ2NvQnhnSEdBY1lCeGdBQUFBQWJYaHRlRzZBVG9BdWdBNkFMbmdPZUU1NExuQk5jRTF3RFhBTmNHMXdiWEJOYUUxb0xXZ3RhQTFvRFdodGFHMW9UV0JOWUMxZ0xXQU5ZQTFnREZnTVdBeFlERmhNV0V4WVRGaE1XQ3hZTEZnc1dDeFlERkFNVUF4UURGQnNZR3hnYkdCc1lFeFFURkJNVUV4UUxGQXNVQ3hRTEZBTVNBeElERWdNU0d0WWExaHJXR3RZYTFocldHdFlhMWhMU0V0SVMwaExTRXRJUzBoTFNFdElLMGdyU0N0SUswZ3JTQ3RJSzBnclNBdEFDMEFMUUF0QUMwQUxRQXRBQzBCclVHdFFhMUJyVUd0UWExQnJVR3RRUzBCTFFFdEFTMEJMUUV0QVMwQkxRQ3RBSzBBclFDdEFLMEFyUUN0QUswQUxPQXM0Q3pnTE9BczRDemdMT0FzNEFFSGdEUXV1Q1FZWVJqZ21PQVlRWmtoR01DWXdCZ2dsS0NVb1JTaEZLQ1VnSlNCRklFVWdKUmdsR0dWQVpVQkZHRVVZSlJBbEVHUTRaRGhrT0dRNFpEQmtNR1F3WkRCa0tHUW9aQ2hrS0dRZ1pDQmtJR1FnWkJoa0dHUVlaQmhFRUVRUVJCQkVFQ1FJSkFna0NDUUlCQUFFQUFRQUJBQUFBQXFBYW9CS2dDcUFDbmhxZUVwNEtuZ0tjR3B3U25BcWNBcG9LV2dwYUFsZ0NXQkphRWxvS1dBcFlBbFlDVmhwYUdsb1NXQkpZQ2xZS1ZnSlVBbFFhR0JvWUdoZ2FHQklXRWhZU0ZoSVdDaFFLRkFvVUNoUUNFZ0lTQWhJQ0Vob1dHaFlhRmhvV0VoUVNGQklVRWhRS0Vnb1NDaElLRWdJUUFoQUNFQUlRQWM0QnpnSE9BYzRCemdIT0FjNEJ6Z0hNQWN3QnpBSE1BY3dCekFITUFjd1IwaEhTRWRJUjBoSFNFZElSMGhIU0Fjb0J5Z0hLQWNvQnlnSEtBY29CeWhuVUdkUVoxQm5VR2RRWjFCblVHZFFSMEJIUUVkQVIwQkhRRWRBUjBCSFFDZEFKMEFuUUNkQUowQW5RQ2RBSjBBSElBY2dCeUFISUFjZ0J5QUhJQWNnQmdnbUNBQUFCZ0FHRUNZUVJoQUFBQVlZSmhoR0dHWVlCaUFtSUVZZ1ppQUdLQ1lvUmlobUtBWXdKakJHTUdZd0JqZ21PRVk0WmpnR1FDWkFSa0JtUUFaSUpraEdTR1pJQmxBbVVFWlFabEFHV0NaWVJsaG1XQVpnSm1CR1lHWmdCbWdtYUVab1ptZ0djQ1p3Um5CbWNBWjRKbmhHZUdaNEJvQW1nRWFBWm9BQUFFTVFBZ0FDQUNFSUlRZ2hDQ0VJWnlCbklFZ2dLQ0JIR0VjWUp4Z25HQVlnQmlBR0lBWWdCaGdHR0FZWUJoZ0dFQVlRQmhBR0VHWVlaaGhtR0dZWUpoQW1FQ1lRSmhBR0NBWUlCZ2dHQ0FBQVpWVkVSRFEwSXlNakl4TVRFeE1CQVFFQkFRRUJBUUVCQVFFQkFRRUJBUG5wMmNqSXVMaW5wNmVubDVlWGw0YUdob2FHaG9hR2RuWjJkbloyZG5ibTFzYTJwYVdWbFlTRWhJUjBkSFIwWkdSa1pGUlVWRlJEUTBORFEwTkRRek16TXpNek16TXpJeU1qSXlNakl5TVRFeE1URXhNVEV3TURBd01EQXdNRDFyYkZ4YVdsbFpXRWhJU0VWRlJVVkVSRVJFUUVCQVFFYzNOemMzTnpjM05qWTJOalkyTmpZek16TXpNek16TXpJeU1qSXlNakl5TVRFeE1URXhNVEU4VzFwUVdVbEhSME5EUWtKSU9EZzROalkyTmpVMU5UVTBORFEwTVRFeE1UdFpXa3BJU0VKQ1FVRkFRRWMzTnpjMk5qWTJOVFUxTlRRME5EUXpNek16T21CaFVWaElTRWhKT1RrNU9UazVPVGMzTnpjM056YzNOalkyTmpZMk5qWTFOVFUxTlRVMU5UUTBORFEwTkRRME16TXpNek16TXpNeU1qSXlNakl5TWpsZ1lWRlhSMGRIU0RnNE9EZzRPRGcyTmpZMk5qWTJOalEwTkRRME5EUTBNek16TXpNek16TXlNakl5TWpJeU1qVWxKU1VsSlNVbEpTVWxKU1VsSlNVb1lHSlNVVUZCUVVjM056YzNOemMzTmpZMk5qWTJOall6TXpNek16TXpNelVsSlNVbEpTVWxKU1VsSlNVbEpTVWtKQ1FrSkNRa0pDUWtKQ1FrSkNRa0lXQm5WMUpDUWtKRk5UVTFOVFUxTlRZbUppWW1KaVltSmlZbUppWW1KaVlrSkNRa0pDUWtKQ1FrSkNRa0pDUWtJeU1qSXlNakl5TWpJeU1qSXlNakl5RlFWa1pDTWpJeU5TVWxKU1VsSlNVa0pDUWtKQ1FrSkNNakl5TWpJeU1qSUVGQ01qTXpOVFUwRkJRVUZCUVVGQkJCUkRReUlpSWlJeE1URXhNVEV4TVFNVE1qSWhJU0VoQWhJaElSRUJJaElCQVRJaUVnSkRNeUlpRWhJQ0FsTkRNeU1TRWdJQ0V5TkRNMk5UQWdJQVFhQVhDeVFFQkFVR0J3Z0pDZ3dORHhFVUZoa2NJQ1FvTFRJNFAwZFFXbVZ4ZjVDaXRzdmkvLzhBUWVBWEN5UUNBZ0lEQXdNREJBUUVCZ1lIQndnSUNRa0tDZ3NMREF3TkRRNE9EdzhRRUJFUkVoSUFRY1VZQzRRQkFRQUFBUUFBQVFBQUFRQUJBUUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBZ0VCQWdFQkFnRUJBZ0VDQXdFQ0F3SUNBd0lDQkFJREJBSURCQU1EQlFNRUJnTUVCZ1FGQndRRkNBUUdDUVVIQ2dZSUN3WUlEUWNLRGdnTEVBa01FZ29ORkFzUEZ3MFJHUUFBQUFBQUFBQUFCUUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUVIVUdRc1ZCUUFBQUFBQUFBQUhBQUFBL3dBQUFBQUFBQUQvQUVIMEdRc1ZCUUFBQUFRQUFBQUFBQUFBL3dBQUFBQUFBQUQvQUVHVUdnc0ZCUUFBQUFRQVFhUWFDNlVCQndBQUFBUUFBQUFDQUFBQUJBQUFBQUVBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUFRQUFBQVFBQUFBREFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFCQUFBQUJBQUFBQVFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBRUFBQUFFQUFBQUJBQUFBQVFBQUFBREFBQUFCQUFBQUFZQUFBQUFBQUFBRFFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFEL0FFSFVHd3NWRFFBQUFBQUFBQUFQQUFBQS93QUFBQUFBQUFEL0FFSDBHd3NWRFFBQUFBUUFBQUFJQUFBQS93QUFBQUFBQUFEL0FFR1VIQXUxQ3cwQUFBQUVBQUFBQ0FBQUFBQUFBQUFQQUFBQUJBQUFBQW9BQUFBRUFBQUFDUUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQVFBQUFBSkFBQUFCQUFBQUFzQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUJBQUFBQWtBQUFBRUFBQUFEQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUNRQUFBQVFBQUFBTUFBQUFCQUFBQUFzQUFBQUVBQUFBRGdBQUFBRUFBQUFLQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBb0FBQUFFQUFBQUFBQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUJBQUFBQ2dBQUFBRUFBQUFMQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFFQUFBQUtBQUFBQVFBQUFBc0FBQUFFQUFBQUFBQUFBQVFBQUFBQkFBQUFBUUFBQUE0QUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBQkFBQUFEZ0FBQUFRQUFBQUVBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQUVBQUFBT0FBQUFBUUFBQUE4QUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUFRQUFBQTRBQUFBQkFBQUFEd0FBQUFRQUFBQUVBQUFBQkFBQUFBVUFBQUFFQUFBQUFnQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFDQUFBQUJBQUFBQWdBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBSUFBQUFFQUFBQUF3QUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUVBQUFBQWdBQUFBUUFBQUFEQUFBQUJBQUFBQWdBQUFBRUFBQUFDUUFBQUFRQUFBQUdBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFCQUFBQUFZQUFBQUVBQUFBREFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBRUFBQUFCZ0FBQUFRQUFBQUhBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQVFBQUFBR0FBQUFCQUFBQUFjQUFBQUVBQUFBREFBQUFBUUFBQUFOQUFBQUFRQUFBQTRBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFCQUFBQURnQUFBUDhBQUFBRUFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBRUFBQUFMQUFBQUFRQUFBQTRBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBc0FBQUFCQUFBQURnQUFBQVFBQUFBQkFBQUEvd0FBQUFRQUFBQUNBQUFBQ2dBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFJQUFBQUtBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFBUUFBQUE4QUFBQUNBQUFBQ2dBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBQkFBQUFEd0FBQUFJQUFBQUtBQUFBQkFBQUFBVUFBQUQvQUFBQUFBQUFBQVFBQUFBR0FBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUJBQUFBQVlBQUFEL0FBQUFEQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUF3QUFBQVFBQUFBR0FBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFEQUFBQUJBQUFBQVlBQUFBRUFBQUFDUUFBQVA4QUFBQU1BQUFBL3dBQUFBSUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBRC9BQUFBQWdBQUFQOEFBQUFJQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFRQUFBQUhBQUFBL3dBQUFBSUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFCQUFBQUFjQUFBRC9BQUFBQWdBQUFBUUFBQUFOQUFBQS93QUFBQWdBQUFBREFBQUFEd0FBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQU1BQUFBUEFBQUFBQUFBQUFVQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUF3QUFBQThBQUFBQkFBQUFDZ0FBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFEQUFBQUR3QUFBQUVBQUFBS0FBQUFBQUFBQUFVQUFBQUVBQUFBQUFBQUFBRUFBQUFMQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBc0FBQUFFQUFBQUFRQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUJBQUFBQ3dBQUFBRUFBQUFPQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFFQUFBQUxBQUFBQVFBQUFBNEFBQUFFQUFBQUFRQUFBQVFBQUFBRUFBQUFBQUFBQUFjQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQS93QkIxQ2NMRlFjQUFBQUFBQUFBRFFBQUFQOEFBQUFBQUFBQS93QkI5Q2NMRlFjQUFBQUVBQUFBQWdBQUFQOEFBQUFBQUFBQS93QkJsQ2dMMlFFSEFBQUFCQUFBQUFJQUFBQUFBQUFBRFFBQUFBUUFBQUFJQUFBQUJBQUFBQU1BQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUF3QUFBQVFBQUFBSkFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFEQUFBQUJBQUFBQVlBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBTUFBQUFFQUFBQUJnQUFBQVFBQUFBSkFBQUFCQUFBQUF3QUFBQUFBQUFBQkFBQUFBQUFBQUFFQUFBQUNBQUFBQXdBQUFBSUFBQUFEQUFBQUFBQUFBQUVBQUFBQUFBQUFBUUFBQUFJQUFBQURBQUFBQWdBQUFBTUFFSDRLUXNGQkFBQUFBUUFRWWdxQ3lVRUFBQUFCQUFBQUFnQUFBQUlBQUFBREFBQUFBd0FBQUFJQUFBQUNBQUFBQXdBQUFBTUFFR3hMZ3ZJQmdFQ0F3UUZCZ2NJQ1FvTERBME9EeEFSRWhNVUZSWVhHQmthR3h3ZEhoOGdJU0lqSkNVbUp5Z3BLaXNzTFM0dk1ERXlNelExTmpjNE9UbzdQRDArUDBCQlFrTkVSVVpIU0VsS1MweE5UazlRVVZKVFZGVldWMWhaV2x0Y1hWNWZZR0ZpWTJSbFptZG9hV3ByYkcxdWIzQnhjbk4wZFhaM2VIbDZlM3g5Zm4rQWdZS0RoSVdHaDRpSmlvdU1qWTZQa0pHU2s1U1ZscGVZbVpxYm5KMmVuNkNob3FPa3BhYW5xS21xcTZ5dHJxK3dzYkt6dExXMnQ3aTV1cnU4dmI2L3dNSEN3OFRGeHNmSXljckx6TTNPejlEUjB0UFUxZGJYMk5uYTI5emQzdC9nNGVMajVPWG01K2pwNnV2czdlN3Y4UEh5OC9UMTl2ZjQrZnI3L1AzKy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL0FBQUFBQUVBQUFBRUFBQUFCUUFBQUFJQUFBQURBQUFBQmdBQUFBY0FBQUFJQUFBQUNRQUFBQXdBQUFBTkFBQUFDZ0FBQUFzQUFBQU9BQUFBRHdBQUFBQUFBQUFCQUFBQUFRQkJoRFVMSVFFQUFBQUJBQUFBQVFBQUFBRUFBQUFDQUFBQUFnQUFBQUVBQUFBQ0FBQUFBZ0JCdERVTEJRVUFBQUFFQUVIRU5RdkpCZ2NBQUFBRUFBQUFBZ0FBQUFRQUFBQUJBQUFBQkFBQUFBUUFBQUFFQUFBQUF3QUFBQVFBQUFBR0FBQUFBQUFBQUEwQUFBQUVBQUFBQ0FBQUFBQUFBQUFQQUFBQUJBQUFBQW9BQUFBRUFBQUFDUUFBQUFRQUFBQU1BQUFBQkFBQUFBc0FBQUFFQUFBQURnQUFBQUFBQUFBUkFBQUFCQUFBQUJBQUFBQUFBQUFBRXdBQUFBUUFBQUFTQUFBQUFBQUFBQlVBQUFBRUFBQUFGQUFBQUFBQUFBQVhBQUFBQkFBQUFCWUFBQUFCQUFBQUNnQUFBQUVBQUFBTEFBQUFCQUFBQUFBQUFBQUVBQUFBQVFBQUFBRUFBQUFPQUFBQUFRQUFBQThBQUFBRUFBQUFCQUFBQUFRQUFBQUZBQUFBQkFBQUFBSUFBQUFFQUFBQUF3QUFBQVFBQUFBSUFBQUFCQUFBQUFrQUFBQUVBQUFBQmdBQUFBUUFBQUFIQUFBQUJBQUFBQXdBQUFBRUFBQUFEUUFBQUFFQUFBQVNBQUFBQVFBQUFCTUFBQUFFQUFBQUVBQUFBQVFBQUFBUkFBQUFBUUFBQUJZQUFBQUJBQUFBRndBQUFBUUFBQUFVQUFBQUJBQUFBQlVBQUFBQkFBQUFDd0FBQUFFQUFBQU9BQUFBQkFBQUFBRUFBQUQvQUFBQUJBQUFBQUVBQUFBUEFBQUFBZ0FBQUFvQUFBQUVBQUFBQlFBQUFQOEFBQUFBQUFBQUJBQUFBQU1BQUFBRUFBQUFCZ0FBQUFRQUFBQUpBQUFBL3dBQUFBd0FBQUFFQUFBQUJ3QUFBUDhBQUFBQ0FBQUFCQUFBQUEwQUFBRC9BQUFBQ0FBQUFBRUFBQUFUQUFBQUFnQUFBQklBQUFBRUFBQUFFUUFBQVA4QUFBQVFBQUFBQVFBQUFCY0FBQUFDQUFBQUZnQUFBQVFBQUFBVkFBQUEvd0FBQUJRQUFBQURBQUFBRHdBQUFBRUFBQUFLQUFBQUFBQUFBQVVBQUFBRUFBQUFBQUFBQUFFQUFBQUxBQUFBQVFBQUFBNEFBQUFFQUFBQUFRQUFBQVFBQUFBRUFBQUFBQUFBQUFjQUFBQUVBQUFBQWdBQUFBQUFBQUFOQUFBQUJBQUFBQWdBQUFBRUFBQUFBd0FBQUFRQUFBQUdBQUFBQkFBQUFBa0FBQUFFQUFBQURBQUFBQU1BQUFBVEFBQUFBUUFBQUJJQUFBQUFBQUFBRVFBQUFBUUFBQUFRQUFBQUF3QUFBQmNBQUFBQkFBQUFGZ0FBQUFBQUFBQVZBQUFBQkFBQUFCUUFBQUFCQUFBQUFRQUFBQUlBQUFBQ0FBQUFBd0FBQUFNQUFBQURBQUFBQXdBQUFBQUFBQUFCQUFBQUFnQUFBQU1BQUFBRUFBQUFCUUFBQUFZQUFBQUhBQUFBQ0FBQUFBa0FBQUFLQUFBQUN3QUFBQXdBQUFBTkFBQUFEZ0FBQUE4QVFaWThDeTRCQVFFQkFRRUNBZ0lDQWdJREF3TURBd01FQkFRRUJBUUZCUVVGQlFVR0JnWUdCZ1lIQndjSEJ3Y0lDQWdJQUVIUVBBdEZDZ0FBQUEwQUFBQVFBQUFBQ3dBQUFBNEFBQUFTQUFBQURRQUFBQkFBQUFBVUFBQUFEZ0FBQUJJQUFBQVhBQUFBRUFBQUFCUUFBQUFaQUFBQUVnQUFBQmNBQUFBZEFFR2hQUXN6QVFJREJBVUFBUUlEQkFVQUFRSURCQVVBQVFJREJBVUFBUUlEQkFVQUFRSURCQVVBQVFJREJBVUFBUUlEQkFVQUFRSURBRUhrUFF2TUFnRUFBQUFDQUFBQUF3QUFBQVFBQUFBRkFBQUFCZ0FBQUFjQUFBQUlBQUFBQ1FBQUFBb0FBQUFMQUFBQURBQUFBQTBBQUFBT0FBQUFEd0FBQUJBQUFBQVJBQUFBRWdBQUFCTUFBQUFVQUFBQUZRQUFBQllBQUFBWEFBQUFHQUFBQUJrQUFBQWFBQUFBR3dBQUFCd0FBQUFkQUFBQUhRQUFBQjRBQUFBZkFBQUFJQUFBQUNBQUFBQWhBQUFBSWdBQUFDSUFBQUFqQUFBQUl3QUFBQ1FBQUFBa0FBQUFKUUFBQUNVQUFBQWxBQUFBSmdBQUFDWUFBQUFtQUFBQUp3QUFBQ2NBQUFBbkFBQUFKd0FBQUFFQUFBQUNBQUFBQkFBQUFBZ0FBQUFRQUFBQUlBQUFBRUFBQUFDQUFBQUFMeDhQQUJjYkhSNEhDdzBPSnlzdExoQURCUW9NRXhVYUhDTWxLaXdCQWdRSUVSSVVHQVlKRmhrZ0lTSWtLQ1lwQUJBQkFnUUlJQU1GQ2d3UEx3Y0xEUTRHQ1I4akpTb3NJU0lrS0NjckxTNFJFaFFZRXhVYUhCY2JIUjRXR1NZcEFMQXRCRzVoYldVQjZ3TmtBQVp0WlcxamNIa0JCbkpsYzJsNlpRSUNaaklEQW1ZekJBRm1CUUptTlFZQ1pqWUhBbVkzQ0FKbU9Ba0NaamtLQVdVTEEyWXhNUXdEWmpFeURRTm1NVE1PQTJZeE5BOERaakUxRUFObU1UWVJBMll4TnhJRFpqRTRFd05tTVRrVUEyWXlNQlVEWmpJeEZnTm1NaklYQTJZeU14Z0RaakkwR1FObU1qVWFBMll5TmhzRFpqSTNIQU5tTWpnZEEyWXlPUjREWmpNd0h3Tm1NekVnQTJZek1pRURaak16SWdObU16UWpBMll6TlNRRFpqTTJKUU5tTXpjbUEyWXpPQ2NEWmpNNUtBTm1OREFwQTJZME1Tb0RaalF5S3dObU5ETXNBMlkwTkMwRFpqUTFMZ05tTkRZdkEyWTBOekFEWmpRNE1RTm1ORGt5QTJZMU1ETURaalV4TkFObU5USTFBMlkxTXpZRFpqVTBOd05tTlRVNEEyWTFOamtEWmpVM09nTm1OVGc3QTJZMU9Ud0Raall3UFFObU5qRStBMlkyTWo4RFpqWXpRQU5tTmpSQkEyWTJOVUlEWmpZMlF3Tm1OamRFQTJZMk9FVURaalk1UmdObU56QkhBMlkzTVVnRFpqY3lTUU5tTnpOS0EyWTNORXNEWmpjMVRBTm1OelpOQTJZM04wNERaamM0VHdObU56bFFBMlk0TUZFRFpqZ3hVZ05tT0RKVEEyWTRNMVFEWmpnMFZRTm1PRFZXQTJZNE5sY0RaamczV0FObU9EaFpBMlk0T1ZvRFpqa3dXd05tT1RGY0EyWTVNbDBEWmprelhnTm1PVFJmQTJZNU5XQUJhV0VCWjJJQlpHTUVaakV3TVFLNktXUUFBd0FBQVFBQ0FBRUJBQUFDQkFBQ2NEQUJBbkF4QWdKc01nTUNiRE1EQ1FBQ2NEQUJBbkF4QWdKc01nTUNiRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FRSUFBSndNQUVDYkRFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNGQkFBQ2NEQUJBbkF4QWdKc01nTUNiRE1HR0FBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpFV0Eyd3lNaGNEYkRJekJ3WUFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQVVDYkRVSUJnQUNjREFCQW5BeEFnSndNZ01DYkRNRUFtdzBCUUpzTlFrUUFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUVBBMnd4TlFvTUFBSndNQUVDYkRFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVMQXdBQ2NEQUJBbkF4QWdKc01nd1JBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRFFZQUFuQXdBUUp3TVFJQ2NESURBbXd6QkFKc05BVUNiRFVPRUFBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDY0RZSEFuQTNDQUp3T0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVQQlFBQ2NEQUJBbXd4QWdKc01nTUNiRE1FQW13MEVBc0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQVJBZ0FDY0RBQkFuQXhFZzhBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkJNREFBSndNQUVDYkRFQ0Ftd3lGQU1BQW5Bd0FRSndNUUlDYkRJVkJnQUNjREFCQW5BeEFnSndNZ01DYkRNRUFtdzBCUUpzTlJZbUFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2NEUUZBbkExQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUVBBMnd4TlJBRGJERTJFUU5zTVRjU0Eyd3hPQk1EYkRFNUZBTnNNakFWQTJ3eU1SWURiREl5RndOc01qTVlBMnd5TkJrRGJESTFHZ05zTWpZYkEyd3lOeHdEYkRJNEhRTnNNamtlQTJ3ek1COERiRE14SUFOc016SWhBMnd6TXlJRGJETTBJd05zTXpVa0Eyd3pOaVVEYkRNM0Z3TUFBbkF3QVFKd01RSUNjRElZRmdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpFWkVnQUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaEVEYkRFM0doWUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0p3TndnQ2NEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0RXdOc01Ua1VBMnd5TUJVRGJESXhHd1lBQW5Bd0FRSndNUUlDYkRJREFtd3pCQUpzTkFVQ2JEVWNCd0FDY0RBQkFuQXhBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlkQlFBQ2NEQUJBbkF4QWdKc01nTUNiRE1FQW13MEhnVUFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQjhCQUFKd01DQUVBQUp3TUFFQ2NERUNBbXd5QXdKc015RWJBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRVFOc01UY1NBMnd4T0JNRGJERTVGQU5zTWpBVkEyd3lNUllEYkRJeUZ3TnNNak1ZQTJ3eU5Ca0RiREkxR2dOc01qWWlGUUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNjRFlIQW5BM0NBSndPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPUlFEYkRJd0l4SUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0p3TndnQ2NEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE55UVVBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRVFOc01UY1NBMnd4T0JNRGJERTVKUThBQW5Bd0FRSndNUUlDY0RJREFtd3pCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkNZREFBSndNQUVDYkRFQ0Ftd3lKdzhBQW5Bd0FRSndNUUlDYkRJREFtd3pCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkNnQ0FBSndNQUVDYkRFcEVRQUNjREFCQW5BeEFnSndNZ01DY0RNRUFuQTBCUUp3TlFZQ2NEWUhBbkEzQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaW9IQUFKd01BRUNjREVDQW5BeUF3SndNd1FDYkRRRkFtdzFCZ0pzTmlzUEFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUXNCQUFDY0RBQkFuQXhBZ0pzTWdNQ2JETXRCUUFDY0RBQkFuQXhBZ0p3TWdNQ2JETUVBbXcwTGdNQUFuQXdBUUpzTVFJQ2JESXZBd0FDY0RBQkFtd3hBZ0pzTWpBSkFBSndNQUVDY0RFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NE1SWUFBbkF3QVFKd01RSUNiRElEQW13ekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0RXdOc01Ua1VBMnd5TUJVRGJESXhNZ29BQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NU13UUFBbkF3QVFKc01RSUNiRElEQW13ek5BUUFBbkF3QVFKc01RSUNiRElEQW13ek5ROEFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hORFlGQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRM0JRQUNjREFCQW5BeEFnSnNNZ01DYkRNRUFtdzBPQWNBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyT1FjQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNiRFVHQW13Mk9nY0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJPd2NBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyUEFVQUFuQXdBUUp3TVFJQ2NESURBbXd6QkFKc05EMEZBQUp3TUFFQ2NERUNBbkF5QXdKc013UUNiRFErRHdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMFB4SUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE4wQUhBQUp3TUFFQ2NERUNBbXd5QXdKc013UUNiRFFGQW13MUJnSnNOa0VRQUFKd01BRUNjREVDQW5BeUF3SndNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOVUlKQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0UXdnQUFuQXdBUUp3TVFJQ2JESURBbXd6QkFKc05BVUNiRFVHQW13MkJ3SnNOMFFRQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOVVVUQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0p3TmdjQ2NEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOUkFEYkRFMkVRTnNNVGNTQTJ3eE9FWVJBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFtdzRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyUnhNQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNjRFVHQW5BMkJ3SndOd2dDYkRnSkFtdzVDZ05zTVRBTEEyd3hNUXdEYkRFeURRTnNNVE1PQTJ3eE5BOERiREUxRUFOc01UWVJBMnd4TnhJRGJERTRTQmNBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUp3TkFVQ2NEVUdBbkEyQndKd053Z0NjRGdKQW5BNUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkE4RGJERTFFQU5zTVRZUkEyd3hOeElEYkRFNEV3TnNNVGtVQTJ3eU1CVURiREl4RmdOc01qSkpRd0FDY0RBQkFuQXhBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlIQW13M0NBSnNPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPUlFEYkRJd0ZRTnNNakVXQTJ3eU1oY0RiREl6R0FOc01qUVpBMnd5TlJvRGJESTJHd05zTWpjY0Eyd3lPQjBEYkRJNUhnTnNNekFmQTJ3ek1TQURiRE15SVFOc016TWlBMnd6TkNNRGJETTFKQU5zTXpZbEEyd3pOeVlEYkRNNEp3TnNNemtvQTJ3ME1Da0RiRFF4S2dOc05ESXJBMncwTXl3RGJEUTBMUU5zTkRVdUEydzBOaThEYkRRM01BTnNORGd4QTJ3ME9USURiRFV3TXdOc05URTBBMncxTWpVRGJEVXpOZ05zTlRRM0EydzFOVGdEYkRVMk9RTnNOVGM2QTJ3MU9Ec0RiRFU1UEFOc05qQTlBMncyTVQ0RGJEWXlQd05zTmpOQUEydzJORUVEYkRZMVFnTnNOalpLRXdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDY0RZSEFuQTNDQUp3T0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UaExGQUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNjRFlIQW5BM0NBSndPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPVXdIQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmswTkFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1rNExBQUp3TUFFQ2NERUNBbkF5QXdKc013UUNiRFFGQW13MUJnSnNOZ2NDYkRjSUFtdzRDUUpzT1FvRGJERXdUd1FBQW5Bd0FRSndNUUlDYkRJREFtd3pVQTRBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUp3TkFVQ2NEVUdBbkEyQndKd053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTlJEQUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKc05RWUNiRFlIQW13M0NBSnNPQWtDYkRrS0Eyd3hNQXNEYkRFeFVoTUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0VXlBQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNjRFVHQW13MkJ3SnNOd2dDYkRnSkFtdzVDZ05zTVRBTEEyd3hNUXdEYkRFeURRTnNNVE1PQTJ3eE5BOERiREUxRUFOc01UWVJBMnd4TnhJRGJERTRFd05zTVRrVUEyd3lNQlVEYkRJeEZnTnNNaklYQTJ3eU14Z0RiREkwR1FOc01qVWFBMnd5TmhzRGJESTNIQU5zTWpnZEEyd3lPUjREYkRNd0h3TnNNekZVRmdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpGVkN3QUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1GWUhBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSnNObGNxQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOUkFEYkRFMkVRTnNNVGNTQTJ3eE9CTURiREU1RkFOc01qQVZBMnd5TVJZRGJESXlGd05zTWpNWUEyd3lOQmtEYkRJMUdnTnNNalliQTJ3eU54d0RiREk0SFFOc01qa2VBMnd6TUI4RGJETXhJQU5zTXpJaEEyd3pNeUlEYkRNMEl3TnNNelVrQTJ3ek5pVURiRE0zSmdOc016Z25BMnd6T1NnRGJEUXdLUU5zTkRGWUV3QUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaEVEYkRFM0VnTnNNVGhaQ0FBQ2NEQUJBbXd4QWdKc01nTUNiRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNXZzRBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTmJCQUFDY0RBQkFtd3hBZ0pzTWdNQ2JETmNDUUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNiRFlIQW13M0NBSnNPRjBJQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0pzTmdjQ2JEZGVDQUFDY0RBQkFtd3hBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlIQW13M1h3d0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVdBQVlRZ0FBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FtdzJCd0pzTjJJREFBSndNQUVDY0RFQ0Ftd3lZdzBBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5IixVPWE7Ri5oMjY0TW9kdWxlPW5ldyBXZWJBc3NlbWJseS5Nb2R1bGUoVS5kZWNvZGUoTCkpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh5LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTtjb25zdCBZPUYscT1BPT4oSSxnLEIpPT57QS5IRUFQVTguY29weVdpdGhpbihJLGcsZytCKX07ZnVuY3Rpb24gSyhBLEkpe2NvbnN0IGc9QSVJO3JldHVybiBnPjA/QStJLWc6QX1jb25zdCBIPUE9Pkk9Pntjb25zdCBnPUEuSEVBUFU4Lmxlbmd0aCxCPTY1NTM2LFE9MjE0NzQ4MzY0ODtpZihJPlEpcmV0dXJuITE7Y29uc3QgQz0xNjc3NzIxNjtmb3IobGV0IEQ9MTtEPD00O0QqPTIpe2xldCBFPWcqKDErLjIvRCk7RT1NYXRoLm1pbihFLEkrMTAwNjYzMjk2KTtjb25zdCB3PU1hdGgubWluKFEsSyhNYXRoLm1heChDLEksRSksQikpO3RyeXtjb25zdHttZW1vcnk6b309QTtvLmdyb3cody1vLmJ1ZmZlci5ieXRlTGVuZ3RoKzY1NTM1Pj4+MTYpO2NvbnN0e2J1ZmZlcjpOfT1vO3JldHVybiBBLkhFQVA4PW5ldyBJbnQ4QXJyYXkoTiksQS5IRUFQVTg9bmV3IFVpbnQ4QXJyYXkoTiksQS5IRUFQMzI9bmV3IEludDMyQXJyYXkoTiksITB9Y2F0Y2h7fX1yZXR1cm4hMX0sUj02NTUzNixjPTUyNTE3OTIsZD04NzUyLHQ9MTY3NzcyMTY7Y2xhc3MgaXtjb25zdHJ1Y3Rvcigpe3RoaXMud2lkdGg9MCx0aGlzLmhlaWdodD0wLHRoaXMucGljPW5ldyBVaW50OEFycmF5KDApO2NvbnN0IEk9bmV3IFdlYkFzc2VtYmx5Lk1lbW9yeSh7aW5pdGlhbDp0L1IsbWF4aW11bToyMTQ3NDgzNjQ4L1J9KSxnPXttZW1vcnk6SSxIRUFQODpuZXcgSW50OEFycmF5KEkuYnVmZmVyKSxIRUFQVTg6bmV3IFVpbnQ4QXJyYXkoSS5idWZmZXIpLEhFQVAzMjpuZXcgSW50MzJBcnJheShJLmJ1ZmZlcil9O2cuSEVBUDMyW2Q+PjJdPWM7Y29uc3R7ZXhwb3J0czpCfT1uZXcgV2ViQXNzZW1ibHkuSW5zdGFuY2UoWS5oMjY0TW9kdWxlLHtoMjY0OnttZW1vcnk6SSxtZW1jcHk6cShnKSxyZXNpemU6SChnKX19KTt0aGlzLm1lbW9yeT1nLHRoaXMuYXNtPUIsdGhpcy5wU3RvcmFnZT1CLmgyNjRhbGxvYygpLHRoaXMucFdpZHRoPUIubWFsbG9jKDQpLHRoaXMucEhlaWdodD1CLm1hbGxvYyg0KSx0aGlzLnBQaWN0dXJlPUIubWFsbG9jKDQpLHRoaXMuZGVjQnVmZmVyPUIubWFsbG9jKDEwMjQqMTAyNCksQi5pbml0KHRoaXMucFN0b3JhZ2UsMCl9ZGVjb2RlKEkpe2NvbnN0e21lbW9yeTpnLGFzbTpCfT10aGlzO2cuSEVBUFU4LnNldChJLHRoaXMuZGVjQnVmZmVyKTtjb25zdCBRPUIuZGVjb2RlKHRoaXMucFN0b3JhZ2UsdGhpcy5kZWNCdWZmZXIsSS5ieXRlTGVuZ3RoLHRoaXMucFBpY3R1cmUsdGhpcy5wV2lkdGgsdGhpcy5wSGVpZ2h0KTtpZihRPT09aS5QSUNfUkRZKXtjb25zdCBDPXRoaXMud2lkdGg9Zy5IRUFQMzJbdGhpcy5wV2lkdGg+Pj4yXSxEPXRoaXMuaGVpZ2h0PWcuSEVBUDMyW3RoaXMucEhlaWdodD4+PjJdLEU9Zy5IRUFQMzJbdGhpcy5wUGljdHVyZT4+Ml0sdz1DKkQqMy8yO3RoaXMucGljPWcuSEVBUFU4LnN1YmFycmF5KEUsRSt3KX1yZXR1cm4gUX19dmFyIGI9eS5IMjY0RGVjb2Rlcj1pO2kuUkRZPTAsaS5QSUNfUkRZPTEsaS5IRFJTX1JEWT0yLGkuRVJST1I9MyxpLlBBUkFNX1NFVF9FUlJPUj00LGkuTUVNQUxMT0NfRVJST1I9NTtmdW5jdGlvbiB4KEEpe3JldHVybiBVaW50OEFycmF5LmZyb20oYXRvYihBKSxJPT5JLmNoYXJDb2RlQXQoMCkpfWNvbnN0IHM9c2VsZixrPW5ldyBiLG09Si5zZWNvbmQvNTthZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixBPT57Y29uc3R7dGltZXN0YW1wOkksZmxhZ3M6ZyxpbmRleDpCfT1BLmRhdGEsUT1EYXRlLm5vdygpLUk7aWYoUT5tJiZnIT09Myl7TShgRnJhbWUgaXMgJHtRfW1zIGxhdGUsIGRyb3BwaW5nYCxCKTtyZXR1cm59Y29uc3QgQz14KEEuZGF0YS5lbmNvZGVkRnJhbWUpLEQ9ay5kZWNvZGUoQyk7dHJ5e2lmKEQhPT0xKXtNKGBmYWlsZWQgdG8gZGVjb2RlIGZyYW1lLCBzdGF0dXM6ICR7bihEKX1gLEIsQyk7cmV0dXJufWNvbnN0e3BpYzpFLGhlaWdodDp3LHdpZHRoOm99PWs7aWYoRS5sZW5ndGg9PT0wfHx3PT09MHx8bz09PTApe00oImRlY29kZWQgZnJhbWUgaGFzIG5vIGRhdGEiLEIsQyk7cmV0dXJufWNvbnN0IE49bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KEUpO3MucG9zdE1lc3NhZ2Uoe3RpbWVzdGFtcDpBLmRhdGEudGltZXN0YW1wLHl1djpOLGhlaWdodDp3LHdpZHRoOm8saW5kZXg6Qn0pfWNhdGNoKEUpe00oRSxCKX19KTtmdW5jdGlvbiBNKEEsSSxnKXtzLnBvc3RNZXNzYWdlKHtlcnJvcjpgaDI2NCBkZWNvZGVyIHdvcmtlcjogJHtBfWAsaW5kZXg6SX0pfWZ1bmN0aW9uIG4oQSl7c3dpdGNoKEEpe2Nhc2UgMDpyZXR1cm4iUkRZIjtjYXNlIDE6cmV0dXJuIlBJQ19SRFkiO2Nhc2UgMjpyZXR1cm4iSERSU19SRFkiO2Nhc2UgMzpyZXR1cm4iRVJST1IiO2Nhc2UgNDpyZXR1cm4iUEFSQU1fU0VUX0VSUk9SIjtjYXNlIDU6cmV0dXJuIk1FTUFMTE9DX0VSUk9SIjtkZWZhdWx0OnJldHVybiBBLnRvU3RyaW5nKCl9fX0pfSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9dWktc2RrLXJlYWx0aW1lLXBsYXllci1jb3JlLXdvcmtlci51bWQtNjhhNmUxNmEuanMubWFwCg==";typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs$3)],{type:"text/javascript;charset=utf-8"});new URLSearchParams(window.location.search).get("debug");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,lt="__lodash_placeholder__",ut=1,Ut=2,ot=4,st=1,dt=2,St=1,pt=2,Rt=4,Bt=8,ht=16,mt=32,gt=64,Vt=128,Tt=256,ft=512,Wt=30,yt="...",Kt=800,$t=16,Ht=1,Nt=2,qt=3,kt=1/0,bt=9007199254740991,Jt=17976931348623157e292,wt=0/0,At=4294967295,Ct=At-1,Mt=At>>>1,nn=[["ary",Vt],["bind",St],["bindKey",pt],["curry",Bt],["curryRight",ht],["flip",ft],["partial",mt],["partialRight",gt],["rearg",Tt]],sn="[object Arguments]",Lt="[object Array]",tn="[object AsyncFunction]",cn="[object Boolean]",on="[object Date]",Gt="[object DOMException]",Xt="[object Error]",dn="[object Function]",Vn="[object GeneratorFunction]",Fn="[object Map]",fn="[object Number]",Un="[object Null]",Jn="[object Object]",_n="[object Promise]",Zn="[object Proxy]",On="[object RegExp]",Yn="[object Set]",_t="[object String]",Ot="[object Symbol]",jt="[object Undefined]",pn="[object WeakMap]",En="[object WeakSet]",yn="[object ArrayBuffer]",Cn="[object DataView]",Gn="[object Float32Array]",Wn="[object Float64Array]",ir="[object Int8Array]",lr="[object Int16Array]",Rn="[object Int32Array]",_r="[object Uint8Array]",zr="[object Uint8ClampedArray]",Er="[object Uint16Array]",ho="[object Uint32Array]",Ro=/\b__p \+= '';/g,rr=/\b(__p \+=) '' \+/g,wo=/(__e\(.*?\)|\b__t\)) \+\n'';/g,oo=/&(?:amp|lt|gt|quot|#39);/g,No=/[&<>"']/g,ro=RegExp(oo.source),ao=RegExp(No.source),Wo=/<%-([\s\S]+?)%>/g,_o=/<%([\s\S]+?)%>/g,Ao=/<%=([\s\S]+?)%>/g,So=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,bo=/^\w*$/,po=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,tr=/[\\^$.*+?()[\]{}|]/g,vr=RegExp(tr.source),Hr=/^\s+/,fo=/\s/,Go=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Zr=/\{\n\/\* \[wrapped with (.+)\] \*/,_a=/,? & /,xa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Eo=/[()=,{}\[\]\/\s]/,eo=/\\(\\)?/g,nr=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,cr=/\w*$/,mo=/^[-+]0x[0-9a-f]+$/i,Qo=/^0b[01]+$/i,Kr=/^\[object .+?Constructor\]$/,Dr=/^0o[0-7]+$/i,gn=/^(?:0|[1-9]\d*)$/,In=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Zt=/($^)/,xt=/['\n\r\u2028\u2029\\]/g,zt="\\ud800-\\udfff",Qn="\\u0300-\\u036f",Tn="\\ufe20-\\ufe2f",ct="\\u20d0-\\u20ff",Qt=Qn+Tn+ct,vt="\\u2700-\\u27bf",Pt="a-z\\xdf-\\xf6\\xf8-\\xff",en="\\xac\\xb1\\xd7\\xf7",Bn="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",jn="\\u2000-\\u206f",$n=" \\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",ur="A-Z\\xc0-\\xd6\\xd8-\\xde",Rr="\\ufe0e\\ufe0f",Sr=en+Bn+jn+$n,Yr="['’]",Mr="["+zt+"]",hr="["+Sr+"]",Br="["+Qt+"]",xr="\\d+",Gr="["+vt+"]",lo="["+Pt+"]",qr="[^"+zt+Sr+xr+vt+Pt+ur+"]",_i="\\ud83c[\\udffb-\\udfff]",Uo="(?:"+Br+"|"+_i+")",yo="[^"+zt+"]",Io="(?:\\ud83c[\\udde6-\\uddff]){2}",Rs="[\\ud800-\\udbff][\\udc00-\\udfff]",is="["+ur+"]",Us="\\u200d",Ol="(?:"+lo+"|"+qr+")",Os="(?:"+is+"|"+qr+")",Fl="(?:"+Yr+"(?:d|ll|m|re|s|t|ve))?",Al="(?:"+Yr+"(?:D|LL|M|RE|S|T|VE))?",Il=Uo+"?",Ll="["+Rr+"]?",Pl="(?:"+Us+"(?:"+[yo,Io,Rs].join("|")+")"+Ll+Il+")*",zl="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Yl="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",As=Ll+Il+Pl,Gl="(?:"+[Gr,Io,Rs].join("|")+")"+As,Ss="(?:"+[yo+Br+"?",Br,Io,Rs,Mr].join("|")+")",$a=RegExp(Yr,"g"),Xl=RegExp(Br,"g"),cs=RegExp(_i+"(?="+_i+")|"+Ss+As,"g"),MU=RegExp([is+"?"+lo+"+"+Fl+"(?="+[hr,is,"$"].join("|")+")",Os+"+"+Al+"(?="+[hr,is+Ol,"$"].join("|")+")",is+"?"+Ol+"+"+Fl,is+"+"+Al,Yl,zl,xr,Gl].join("|"),"g"),Hl=RegExp("["+Us+zt+Qt+Rr+"]"),xU=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Xo=["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"],Ws=-1,Or={};Or[Gn]=Or[Wn]=Or[ir]=Or[lr]=Or[Rn]=Or[_r]=Or[zr]=Or[Er]=Or[ho]=!0,Or[sn]=Or[Lt]=Or[yn]=Or[cn]=Or[Cn]=Or[on]=Or[Xt]=Or[dn]=Or[Fn]=Or[fn]=Or[Jn]=Or[On]=Or[Yn]=Or[_t]=Or[pn]=!1;var Jr={};Jr[sn]=Jr[Lt]=Jr[yn]=Jr[Cn]=Jr[cn]=Jr[on]=Jr[Gn]=Jr[Wn]=Jr[ir]=Jr[lr]=Jr[Rn]=Jr[Fn]=Jr[fn]=Jr[Jn]=Jr[On]=Jr[Yn]=Jr[_t]=Jr[Ot]=Jr[_r]=Jr[zr]=Jr[Er]=Jr[ho]=!0,Jr[Xt]=Jr[dn]=Jr[pn]=!1;var Ql={À:"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"},Kl={"&":"&","<":"<",">":">",'"':""","'":"'"},Bl={"&":"&","<":"<",">":">",""":'"',"'":"'"},Dt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},rn=parseFloat,Sn=parseInt,kn=typeof commonjsGlobal$1=="object"&&commonjsGlobal$1&&commonjsGlobal$1.Object===Object&&commonjsGlobal$1,An=typeof self=="object"&&self&&self.Object===Object&&self,Ln=kn||An||Function("return this")(),Dn=s&&!s.nodeType&&s,zn=Dn&&!0&&o&&!o.nodeType&&o,Hn=zn&&zn.exports===Dn,or=Hn&&kn.process,sr=function(){try{var Mn=zn&&zn.require&&zn.require("util").types;return Mn||or&&or.binding&&or.binding("util")}catch{}}(),Tr=sr&&sr.isArrayBuffer,kr=sr&&sr.isDate,jr=sr&&sr.isMap,Lr=sr&&sr.isRegExp,pr=sr&&sr.isSet,co=sr&&sr.isTypedArray;function $r(Mn,Xn,Pn){switch(Pn.length){case 0:return Mn.call(Xn);case 1:return Mn.call(Xn,Pn[0]);case 2:return Mn.call(Xn,Pn[0],Pn[1]);case 3:return Mn.call(Xn,Pn[0],Pn[1],Pn[2])}return Mn.apply(Xn,Pn)}function Op(Mn,Xn,Pn,Ur){for(var mr=-1,Ar=Mn==null?0:Mn.length;++mr-1}function OU(Mn,Xn,Pn){for(var Ur=-1,mr=Mn==null?0:Mn.length;++Ur-1;);return Pn}function GF(Mn,Xn){for(var Pn=Mn.length;Pn--&&Is(Xn,Mn[Pn],0)>-1;);return Pn}function Xp(Mn,Xn){for(var Pn=Mn.length,Ur=0;Pn--;)Mn[Pn]===Xn&&++Ur;return Ur}var Hp=LU(Ql),Kp=LU(Kl);function qp(Mn){return"\\"+Dt[Mn]}function $p(Mn,Xn){return Mn==null?_:Mn[Xn]}function js(Mn){return Hl.test(Mn)}function eQ(Mn){return xU.test(Mn)}function tQ(Mn){for(var Xn,Pn=[];!(Xn=Mn.next()).done;)Pn.push(Xn.value);return Pn}function GU(Mn){var Xn=-1,Pn=Array(Mn.size);return Mn.forEach(function(Ur,mr){Pn[++Xn]=[mr,Ur]}),Pn}function XF(Mn,Xn){return function(Pn){return Mn(Xn(Pn))}}function Vs(Mn,Xn){for(var Pn=-1,Ur=Mn.length,mr=0,Ar=[];++Pn-1}function IQ(it,Ft){var Et=this.__data__,It=hU(Et,it);return It<0?(++this.size,Et.push([it,Ft])):Et[It][1]=Ft,this}ds.prototype.clear=MQ,ds.prototype.delete=xQ,ds.prototype.get=OQ,ds.prototype.has=AQ,ds.prototype.set=IQ;function Fs(it){var Ft=-1,Et=it==null?0:it.length;for(this.clear();++Ft=Ft?it:Ft)),it}function $o(it,Ft,Et,It,an,hn){var Nn,wn=Ft&ut,xn=Ft&Ut,Kn=Ft&ot;if(Et&&(Nn=an?Et(it,It,an,hn):Et(it)),Nn!==_)return Nn;if(!io(it))return it;var qn=yr(it);if(qn){if(Nn=jB(it),!wn)return Do(it,Nn)}else{var er=To(it),ar=er==dn||er==Vn;if(Ns(it))return Wu(it,wn);if(er==Jn||er==sn||ar&&!an){if(Nn=xn||ar?{}:Hu(it),!wn)return xn?kB(it,tB(Nn,it)):WB(it,su(Nn,it))}else{if(!Jr[er])return an?it:{};Nn=LB(it,er,wn)}}hn||(hn=new ts);var Fr=hn.get(it);if(Fr)return Fr;hn.set(it,Nn),Ep(it)?it.forEach(function(gr){Nn.add($o(gr,Ft,Et,gr,it,hn))}):yp(it)&&it.forEach(function(gr,Wr){Nn.set(Wr,$o(gr,Ft,Et,Wr,it,hn))});var fr=Kn?xn?gF:fF:xn?xo:Vo,br=qn?_:fr(it);return Ho(br||it,function(gr,Wr){br&&(Wr=gr,gr=it[Wr]),Tl(Nn,Wr,$o(gr,Ft,Et,Wr,it,hn))}),Nn}function nB(it){var Ft=Vo(it);return function(Et){return lu(Et,it,Ft)}}function lu(it,Ft,Et){var It=Et.length;if(it==null)return!It;for(it=Xr(it);It--;){var an=Et[It],hn=Ft[an],Nn=it[an];if(Nn===_&&!(an in it)||!hn(Nn))return!1}return!0}function Uu(it,Ft,Et){if(typeof it!="function")throw new Ko(et);return Ml(function(){it.apply(_,Et)},Ft)}function Nl(it,Ft,Et,It){var an=-1,hn=$l,Nn=!0,wn=it.length,xn=[],Kn=Ft.length;if(!wn)return xn;Et&&(Ft=no(Ft,jo(Et))),It?(hn=OU,Nn=!1):Ft.length>=$&&(hn=Rl,Nn=!1,Ft=new Zs(Ft));e:for(;++anan?0:an+Et),It=It===_||It>an?an:Vr(It),It<0&&(It+=an),It=Et>It?0:bp(It);Et0&&Et(wn)?Ft>1?Jo(wn,Ft-1,Et,It,an):ys(an,wn):It||(an[an.length]=wn)}return an}var _d=Du(),Fu=Du(!0);function as(it,Ft){return it&&_d(it,Ft,Vo)}function eF(it,Ft){return it&&Fu(it,Ft,Vo)}function gU(it,Ft){return ms(Ft,function(Et){return fs(it[Et])})}function _s(it,Ft){Ft=vs(Ft,it);for(var Et=0,It=Ft.length;it!=null&&EtFt}function oB(it,Ft){return it!=null&&Pr.call(it,Ft)}function aB(it,Ft){return it!=null&&Ft in Xr(it)}function sB(it,Ft,Et){return it>=vo(Ft,Et)&&it=120&&qn.length>=120)?new Zs(Nn&&qn):_}qn=it[0];var er=-1,ar=wn[0];e:for(;++er-1;)wn!==it&&UU.call(wn,xn,1),UU.call(it,xn,1);return it}function yu(it,Ft){for(var Et=it?Ft.length:0,It=Et-1;Et--;){var an=Ft[Et];if(Et==It||an!==hn){var hn=an;hs(an)?UU.call(it,an,1):cF(it,an)}}return it}function sF(it,Ft){return it+FU(ru()*(Ft-it+1))}function RB(it,Ft,Et,It){for(var an=-1,hn=Bo(dU((Ft-it)/(Et||1)),0),Nn=Pn(hn);hn--;)Nn[It?hn:++an]=it,it+=Et;return Nn}function lF(it,Ft){var Et="";if(!it||Ft<1||Ft>bt)return Et;do Ft%2&&(Et+=it),Ft=FU(Ft/2),Ft&&(it+=it);while(Ft);return Et}function Nr(it,Ft){return EF($u(it,Ft,Oo),it+"")}function SB(it){return au(Ul(it))}function mB(it,Ft){var Et=Ul(it);return TU(Et,ws(Ft,0,Et.length))}function Zl(it,Ft,Et,It){if(!io(it))return it;Ft=vs(Ft,it);for(var an=-1,hn=Ft.length,Nn=hn-1,wn=it;wn!=null&&++anan?0:an+Ft),Et=Et>an?an:Et,Et<0&&(Et+=an),an=Ft>Et?0:Et-Ft>>>0,Ft>>>=0;for(var hn=Pn(an);++It>>1,Nn=it[hn];Nn!==null&&!Po(Nn)&&(Et?Nn<=Ft:Nn=$){var Kn=Ft?null:_B(it);if(Kn)return tU(Kn);Nn=!1,an=Rl,xn=new Zs}else xn=Ft?[]:wn;e:for(;++It=It?it:na(it,Ft,Et)}var Nu=hQ||function(it){return Ln.clearTimeout(it)};function Wu(it,Ft){if(Ft)return it.slice();var Et=it.length,It=qF?qF(Et):new it.constructor(Et);return it.copy(It),It}function pF(it){var Ft=new it.constructor(it.byteLength);return new sU(Ft).set(new sU(it)),Ft}function bB(it,Ft){var Et=Ft?pF(it.buffer):it.buffer;return new it.constructor(Et,it.byteOffset,it.byteLength)}function vB(it){var Ft=new it.constructor(it.source,cr.exec(it));return Ft.lastIndex=it.lastIndex,Ft}function TB(it){return Jl?Xr(Jl.call(it)):{}}function ku(it,Ft){var Et=Ft?pF(it.buffer):it.buffer;return new it.constructor(Et,it.byteOffset,it.length)}function Cu(it,Ft){if(it!==Ft){var Et=it!==_,It=it===null,an=it===it,hn=Po(it),Nn=Ft!==_,wn=Ft===null,xn=Ft===Ft,Kn=Po(Ft);if(!wn&&!Kn&&!hn&&it>Ft||hn&&Nn&&xn&&!wn&&!Kn||It&&Nn&&xn||!Et&&xn||!an)return 1;if(!It&&!hn&&!Kn&&it=wn)return xn;var Kn=Et[It];return xn*(Kn=="desc"?-1:1)}}return it.index-Ft.index}function Zu(it,Ft,Et,It){for(var an=-1,hn=it.length,Nn=Et.length,wn=-1,xn=Ft.length,Kn=Bo(hn-Nn,0),qn=Pn(xn+Kn),er=!It;++wn1?Et[an-1]:_,Nn=an>2?Et[2]:_;for(hn=it.length>3&&typeof hn=="function"?(an--,hn):_,Nn&&Co(Et[0],Et[1],Nn)&&(hn=an<3?_:hn,an=1),Ft=Xr(Ft);++It-1?an[hn?Ft[Nn]:Nn]:_}}function Ou(it){return Qs(function(Ft){var Et=Ft.length,It=Et,an=qo.prototype.thru;for(it&&Ft.reverse();It--;){var hn=Ft[It];if(typeof hn!="function")throw new Ko(et);if(an&&!Nn&&bU(hn)=="wrapper")var Nn=new qo([],!0)}for(It=Nn?It:Et;++It1&&wr.reverse(),qn&&xnwn))return!1;var Kn=hn.get(it),qn=hn.get(Ft);if(Kn&&qn)return Kn==Ft&&qn==it;var er=-1,ar=!0,Fr=Et&dt?new Zs:_;for(hn.set(it,Ft),hn.set(Ft,it);++er1?"& ":"")+Ft[It],Ft=Ft.join(Et>2?", ":" "),it.replace(Go,`{ +/* [wrapped with `+Ft+`] */ +`)}function zB(it){return yr(it)||xs(it)||!!(tu&&it&&it[tu])}function hs(it,Ft){var Et=typeof it;return Ft=Ft??bt,!!Ft&&(Et=="number"||Et!="symbol"&&gn.test(it))&&it>-1&&it%1==0&&it0){if(++Ft>=Kt)return arguments[0]}else Ft=0;return it.apply(_,arguments)}}function TU(it,Ft){var Et=-1,It=it.length,an=It-1;for(Ft=Ft===_?It:Ft;++Et1?it[Ft-1]:_;return Et=typeof Et=="function"?(it.pop(),Et):_,dp(it,Et)});function Fp(it){var Ft=un(it);return Ft.__chain__=!0,Ft}function QR(it,Ft){return Ft(it),it}function NU(it,Ft){return Ft(it)}var hR=Qs(function(it){var Ft=it.length,Et=Ft?it[0]:0,It=this.__wrapped__,an=function(hn){return _c(hn,it)};return Ft>1||this.__actions__.length||!(It instanceof Cr)||!hs(Et)?this.thru(an):(It=It.slice(Et,+Et+(Ft?1:0)),It.__actions__.push({func:NU,args:[an],thisArg:_}),new qo(It,this.__chain__).thru(function(hn){return Ft&&!hn.length&&hn.push(_),hn}))});function fR(){return Fp(this)}function gR(){return new qo(this.value(),this.__chain__)}function BR(){this.__values__===_&&(this.__values__=Jp(this.value()));var it=this.__index__>=this.__values__.length,Ft=it?_:this.__values__[this.__index__++];return{done:it,value:Ft}}function RR(){return this}function SR(it){for(var Ft,Et=this;Et instanceof QU;){var It=op(Et);It.__index__=0,It.__values__=_,Ft?an.__wrapped__=It:Ft=It;var an=It;Et=Et.__wrapped__}return an.__wrapped__=it,Ft}function mR(){var it=this.__wrapped__;if(it instanceof Cr){var Ft=it;return this.__actions__.length&&(Ft=new Cr(this)),Ft=Ft.reverse(),Ft.__actions__.push({func:NU,args:[JF],thisArg:_}),new qo(Ft,this.__chain__)}return this.thru(JF)}function yR(){return vu(this.__wrapped__,this.__actions__)}var VR=mU(function(it,Ft,Et){Pr.call(it,Et)?++it[Et]:us(it,Et,1)});function ER(it,Ft,Et){var It=yr(it)?AF:rB;return Et&&Co(it,Ft,Et)&&(Ft=_),It(it,Qr(Ft,3))}function JR(it,Ft){var Et=yr(it)?ms:du;return Et(it,Qr(Ft,3))}var bR=xu(ap),vR=xu(sp);function TR(it,Ft){return Jo(WU(it,Ft),1)}function NR(it,Ft){return Jo(WU(it,Ft),kt)}function WR(it,Ft,Et){return Et=Et===_?1:Vr(Et),Jo(WU(it,Ft),Et)}function up(it,Ft){var Et=yr(it)?Ho:Js;return Et(it,Qr(Ft,3))}function pp(it,Ft){var Et=yr(it)?Ap:cu;return Et(it,Qr(Ft,3))}var kR=mU(function(it,Ft,Et){Pr.call(it,Et)?it[Et].push(Ft):us(it,Et,[Ft])});function CR(it,Ft,Et,It){it=Mo(it)?it:Ul(it),Et=Et&&!It?Vr(Et):0;var an=it.length;return Et<0&&(Et=Bo(an+Et,0)),_U(it)?Et<=an&&it.indexOf(Ft,Et)>-1:!!an&&Is(it,Ft,Et)>-1}var ZR=Nr(function(it,Ft,Et){var It=-1,an=typeof Ft=="function",hn=Mo(it)?Pn(it.length):[];return Js(it,function(Nn){hn[++It]=an?$r(Ft,Nn,Et):Wl(Nn,Ft,Et)}),hn}),wR=mU(function(it,Ft,Et){us(it,Et,Ft)});function WU(it,Ft){var Et=yr(it)?no:fu;return Et(it,Qr(Ft,3))}function _R(it,Ft,Et,It){return it==null?[]:(yr(Ft)||(Ft=Ft==null?[]:[Ft]),Et=It?_:Et,yr(Et)||(Et=Et==null?[]:[Et]),Su(it,Ft,Et))}var DR=mU(function(it,Ft,Et){it[Et?0:1].push(Ft)},function(){return[[],[]]});function MR(it,Ft,Et){var It=yr(it)?AU:PF,an=arguments.length<3;return It(it,Qr(Ft,4),Et,an,Js)}function xR(it,Ft,Et){var It=yr(it)?Ip:PF,an=arguments.length<3;return It(it,Qr(Ft,4),Et,an,cu)}function OR(it,Ft){var Et=yr(it)?ms:du;return Et(it,ZU(Qr(Ft,3)))}function AR(it){var Ft=yr(it)?au:SB;return Ft(it)}function IR(it,Ft,Et){(Et?Co(it,Ft,Et):Ft===_)?Ft=1:Ft=Vr(Ft);var It=yr(it)?_f:mB;return It(it,Ft)}function jR(it){var Ft=yr(it)?_g:VB;return Ft(it)}function LR(it){if(it==null)return 0;if(Mo(it))return _U(it)?Ls(it):it.length;var Ft=To(it);return Ft==Fn||Ft==Yn?it.size:iF(it).length}function PR(it,Ft,Et){var It=yr(it)?IU:EB;return Et&&Co(it,Ft,Et)&&(Ft=_),It(it,Qr(Ft,3))}var zR=Nr(function(it,Ft){if(it==null)return[];var Et=Ft.length;return Et>1&&Co(it,Ft[0],Ft[1])?Ft=[]:Et>2&&Co(Ft[0],Ft[1],Ft[2])&&(Ft=[Ft[0]]),Su(it,Jo(Ft,1),[])}),kU=fQ||function(){return Ln.Date.now()};function YR(it,Ft){if(typeof Ft!="function")throw new Ko(et);return it=Vr(it),function(){if(--it<1)return Ft.apply(this,arguments)}}function Qp(it,Ft,Et){return Ft=Et?_:Ft,Ft=it&&Ft==null?it.length:Ft,ps(it,Vt,_,_,_,_,Ft)}function hp(it,Ft){var Et;if(typeof Ft!="function")throw new Ko(et);return it=Vr(it),function(){return--it>0&&(Et=Ft.apply(this,arguments)),it<=1&&(Ft=_),Et}}var vF=Nr(function(it,Ft,Et){var It=St;if(Et.length){var an=Vs(Et,qs(vF));It|=mt}return ps(it,It,Ft,Et,an)}),fp=Nr(function(it,Ft,Et){var It=St|pt;if(Et.length){var an=Vs(Et,qs(fp));It|=mt}return ps(Ft,It,it,Et,an)});function gp(it,Ft,Et){Ft=Et?_:Ft;var It=ps(it,Bt,_,_,_,_,_,Ft);return It.placeholder=gp.placeholder,It}function Bp(it,Ft,Et){Ft=Et?_:Ft;var It=ps(it,ht,_,_,_,_,_,Ft);return It.placeholder=Bp.placeholder,It}function Rp(it,Ft,Et){var It,an,hn,Nn,wn,xn,Kn=0,qn=!1,er=!1,ar=!0;if(typeof it!="function")throw new Ko(et);Ft=ba(Ft)||0,io(Et)&&(qn=!!Et.leading,er="maxWait"in Et,hn=er?Bo(ba(Et.maxWait)||0,Ft):hn,ar="trailing"in Et?!!Et.trailing:ar);function Fr(uo){var rs=It,Bs=an;return It=an=_,Kn=uo,Nn=it.apply(Bs,rs),Nn}function fr(uo){return Kn=uo,wn=Ml(Wr,Ft),qn?Fr(uo):Nn}function br(uo){var rs=uo-xn,Bs=uo-Kn,xp=Ft-rs;return er?vo(xp,hn-Bs):xp}function gr(uo){var rs=uo-xn,Bs=uo-Kn;return xn===_||rs>=Ft||rs<0||er&&Bs>=hn}function Wr(){var uo=kU();if(gr(uo))return wr(uo);wn=Ml(Wr,br(uo))}function wr(uo){return wn=_,ar&&It?Fr(uo):(It=an=_,Nn)}function zo(){wn!==_&&Nu(wn),Kn=0,It=xn=an=wn=_}function Zo(){return wn===_?Nn:wr(kU())}function Yo(){var uo=kU(),rs=gr(uo);if(It=arguments,an=this,xn=uo,rs){if(wn===_)return fr(xn);if(er)return Nu(wn),wn=Ml(Wr,Ft),Fr(xn)}return wn===_&&(wn=Ml(Wr,Ft)),Nn}return Yo.cancel=zo,Yo.flush=Zo,Yo}var GR=Nr(function(it,Ft){return Uu(it,1,Ft)}),XR=Nr(function(it,Ft,Et){return Uu(it,ba(Ft)||0,Et)});function HR(it){return ps(it,ft)}function CU(it,Ft){if(typeof it!="function"||Ft!=null&&typeof Ft!="function")throw new Ko(et);var Et=function(){var It=arguments,an=Ft?Ft.apply(this,It):It[0],hn=Et.cache;if(hn.has(an))return hn.get(an);var Nn=it.apply(this,It);return Et.cache=hn.set(an,Nn)||hn,Nn};return Et.cache=new(CU.Cache||Fs),Et}CU.Cache=Fs;function ZU(it){if(typeof it!="function")throw new Ko(et);return function(){var Ft=arguments;switch(Ft.length){case 0:return!it.call(this);case 1:return!it.call(this,Ft[0]);case 2:return!it.call(this,Ft[0],Ft[1]);case 3:return!it.call(this,Ft[0],Ft[1],Ft[2])}return!it.apply(this,Ft)}}function KR(it){return hp(2,it)}var qR=JB(function(it,Ft){Ft=Ft.length==1&&yr(Ft[0])?no(Ft[0],jo(Qr())):no(Jo(Ft,1),jo(Qr()));var Et=Ft.length;return Nr(function(It){for(var an=-1,hn=vo(It.length,Et);++an=Ft}),xs=pu(function(){return arguments}())?pu:function(it){return so(it)&&Pr.call(it,"callee")&&!eu.call(it,"callee")},yr=Pn.isArray,uS=Tr?jo(Tr):UB;function Mo(it){return it!=null&&wU(it.length)&&!fs(it)}function Fo(it){return so(it)&&Mo(it)}function pS(it){return it===!0||it===!1||so(it)&&ko(it)==cn}var Ns=BQ||OF,QS=kr?jo(kr):cB;function hS(it){return so(it)&&it.nodeType===1&&!xl(it)}function fS(it){if(it==null)return!0;if(Mo(it)&&(yr(it)||typeof it=="string"||typeof it.splice=="function"||Ns(it)||$s(it)||xs(it)))return!it.length;var Ft=To(it);if(Ft==Fn||Ft==Yn)return!it.size;if(Dl(it))return!iF(it).length;for(var Et in it)if(Pr.call(it,Et))return!1;return!0}function gS(it,Ft){return Cl(it,Ft)}function BS(it,Ft,Et){Et=typeof Et=="function"?Et:_;var It=Et?Et(it,Ft):_;return It===_?Cl(it,Ft,_,Et):!!It}function NF(it){if(!so(it))return!1;var Ft=ko(it);return Ft==Xt||Ft==Gt||typeof it.message=="string"&&typeof it.name=="string"&&!xl(it)}function RS(it){return typeof it=="number"&&nu(it)}function fs(it){if(!io(it))return!1;var Ft=ko(it);return Ft==dn||Ft==Vn||Ft==tn||Ft==Zn}function mp(it){return typeof it=="number"&&it==Vr(it)}function wU(it){return typeof it=="number"&&it>-1&&it%1==0&&it<=bt}function io(it){var Ft=typeof it;return it!=null&&(Ft=="object"||Ft=="function")}function so(it){return it!=null&&typeof it=="object"}var yp=jr?jo(jr):FB;function SS(it,Ft){return it===Ft||rF(it,Ft,RF(Ft))}function mS(it,Ft,Et){return Et=typeof Et=="function"?Et:_,rF(it,Ft,RF(Ft),Et)}function yS(it){return Vp(it)&&it!=+it}function VS(it){if(XB(it))throw new mr(_e);return Qu(it)}function ES(it){return it===null}function JS(it){return it==null}function Vp(it){return typeof it=="number"||so(it)&&ko(it)==fn}function xl(it){if(!so(it)||ko(it)!=Jn)return!1;var Ft=lU(it);if(Ft===null)return!0;var Et=Pr.call(Ft,"constructor")&&Ft.constructor;return typeof Et=="function"&&Et instanceof Et&&iU.call(Et)==uQ}var WF=Lr?jo(Lr):uB;function bS(it){return mp(it)&&it>=-bt&&it<=bt}var Ep=pr?jo(pr):pB;function _U(it){return typeof it=="string"||!yr(it)&&so(it)&&ko(it)==_t}function Po(it){return typeof it=="symbol"||so(it)&&ko(it)==Ot}var $s=co?jo(co):QB;function vS(it){return it===_}function TS(it){return so(it)&&To(it)==pn}function NS(it){return so(it)&&ko(it)==En}var WS=JU(oF),kS=JU(function(it,Ft){return it<=Ft});function Jp(it){if(!it)return[];if(Mo(it))return _U(it)?es(it):Do(it);if(Sl&&it[Sl])return tQ(it[Sl]());var Ft=To(it),Et=Ft==Fn?GU:Ft==Yn?tU:Ul;return Et(it)}function gs(it){if(!it)return it===0?it:0;if(it=ba(it),it===kt||it===-kt){var Ft=it<0?-1:1;return Ft*Jt}return it===it?it:0}function Vr(it){var Ft=gs(it),Et=Ft%1;return Ft===Ft?Et?Ft-Et:Ft:0}function bp(it){return it?ws(Vr(it),0,At):0}function ba(it){if(typeof it=="number")return it;if(Po(it))return wt;if(io(it)){var Ft=typeof it.valueOf=="function"?it.valueOf():it;it=io(Ft)?Ft+"":Ft}if(typeof it!="string")return it===0?it:+it;it=zF(it);var Et=Qo.test(it);return Et||Dr.test(it)?Sn(it.slice(2),Et?2:8):mo.test(it)?wt:+it}function vp(it){return ss(it,xo(it))}function CS(it){return it?ws(Vr(it),-bt,bt):it===0?it:0}function Ir(it){return it==null?"":Lo(it)}var ZS=Hs(function(it,Ft){if(Dl(Ft)||Mo(Ft)){ss(Ft,Vo(Ft),it);return}for(var Et in Ft)Pr.call(Ft,Et)&&Tl(it,Et,Ft[Et])}),Tp=Hs(function(it,Ft){ss(Ft,xo(Ft),it)}),DU=Hs(function(it,Ft,Et,It){ss(Ft,xo(Ft),it,It)}),wS=Hs(function(it,Ft,Et,It){ss(Ft,Vo(Ft),it,It)}),_S=Qs(_c);function DS(it,Ft){var Et=Xs(it);return Ft==null?Et:su(Et,Ft)}var xS=Nr(function(it,Ft){it=Xr(it);var Et=-1,It=Ft.length,an=It>2?Ft[2]:_;for(an&&Co(Ft[0],Ft[1],an)&&(It=1);++Et1),hn}),ss(it,gF(it),Et),It&&(Et=$o(Et,ut|Ut|ot,DB));for(var an=Ft.length;an--;)cF(Et,Ft[an]);return Et});function rm(it,Ft){return Wp(it,ZU(Qr(Ft)))}var im=Qs(function(it,Ft){return it==null?{}:gB(it,Ft)});function Wp(it,Ft){if(it==null)return{};var Et=no(gF(it),function(It){return[It]});return Ft=Qr(Ft),mu(it,Et,function(It,an){return Ft(It,an[0])})}function om(it,Ft,Et){Ft=vs(Ft,it);var It=-1,an=Ft.length;for(an||(an=1,it=_);++ItFt){var It=it;it=Ft,Ft=It}if(Et||it%1||Ft%1){var an=ru();return vo(it+an*(Ft-it+rn("1e-"+((an+"").length-1))),Ft)}return sF(it,Ft)}var hm=Ks(function(it,Ft,Et){return Ft=Ft.toLowerCase(),it+(Et?Zp(Ft):Ft)});function Zp(it){return ZF(Ir(it).toLowerCase())}function wp(it){return it=Ir(it),it&&it.replace(In,Hp).replace(Xl,"")}function fm(it,Ft,Et){it=Ir(it),Ft=Lo(Ft);var It=it.length;Et=Et===_?It:ws(Vr(Et),0,It);var an=Et;return Et-=Ft.length,Et>=0&&it.slice(Et,an)==Ft}function gm(it){return it=Ir(it),it&&ao.test(it)?it.replace(No,Kp):it}function Bm(it){return it=Ir(it),it&&vr.test(it)?it.replace(tr,"\\$&"):it}var Rm=Ks(function(it,Ft,Et){return it+(Et?"-":"")+Ft.toLowerCase()}),Sm=Ks(function(it,Ft,Et){return it+(Et?" ":"")+Ft.toLowerCase()}),mm=Mu("toLowerCase");function ym(it,Ft,Et){it=Ir(it),Ft=Vr(Ft);var It=Ft?Ls(it):0;if(!Ft||It>=Ft)return it;var an=(Ft-It)/2;return EU(FU(an),Et)+it+EU(dU(an),Et)}function Vm(it,Ft,Et){it=Ir(it),Ft=Vr(Ft);var It=Ft?Ls(it):0;return Ft&&It>>0,Et?(it=Ir(it),it&&(typeof Ft=="string"||Ft!=null&&!WF(Ft))&&(Ft=Lo(Ft),!Ft&&js(it))?Ts(es(it),0,Et):it.split(Ft,Et)):[]}var Wm=Ks(function(it,Ft,Et){return it+(Et?" ":"")+ZF(Ft)});function km(it,Ft,Et){return it=Ir(it),Et=Et==null?0:ws(Vr(Et),0,it.length),Ft=Lo(Ft),it.slice(Et,Et+Ft.length)==Ft}function Cm(it,Ft,Et){var It=un.templateSettings;Et&&Co(it,Ft,Et)&&(Ft=_),it=Ir(it),Ft=DU({},Ft,It,Pu);var an=DU({},Ft.imports,It.imports,Pu),hn=Vo(an),Nn=YU(an,hn),wn,xn,Kn=0,qn=Ft.interpolate||Zt,er="__p += '",ar=XU((Ft.escape||Zt).source+"|"+qn.source+"|"+(qn===Ao?nr:Zt).source+"|"+(Ft.evaluate||Zt).source+"|$","g"),Fr="//# sourceURL="+(Pr.call(Ft,"sourceURL")?(Ft.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Ws+"]")+` +`;it.replace(ar,function(gr,Wr,wr,zo,Zo,Yo){return wr||(wr=zo),er+=it.slice(Kn,Yo).replace(xt,qp),Wr&&(wn=!0,er+=`' + +__e(`+Wr+`) + +'`),Zo&&(xn=!0,er+=`'; +`+Zo+`; +__p += '`),wr&&(er+=`' + +((__t = (`+wr+`)) == null ? '' : __t) + +'`),Kn=Yo+gr.length,gr}),er+=`'; +`;var fr=Pr.call(Ft,"variable")&&Ft.variable;if(!fr)er=`with (obj) { +`+er+` +} +`;else if(Eo.test(fr))throw new mr(tt);er=(xn?er.replace(Ro,""):er).replace(rr,"$1").replace(wo,"$1;"),er="function("+(fr||"obj")+`) { +`+(fr?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(wn?", __e = _.escape":"")+(xn?`, __j = Array.prototype.join; +function print() { __p += __j.call(arguments, '') } +`:`; +`)+er+`return __p +}`;var br=Dp(function(){return Ar(hn,Fr+"return "+er).apply(_,Nn)});if(br.source=er,NF(br))throw br;return br}function Zm(it){return Ir(it).toLowerCase()}function wm(it){return Ir(it).toUpperCase()}function _m(it,Ft,Et){if(it=Ir(it),it&&(Et||Ft===_))return zF(it);if(!it||!(Ft=Lo(Ft)))return it;var It=es(it),an=es(Ft),hn=YF(It,an),Nn=GF(It,an)+1;return Ts(It,hn,Nn).join("")}function Dm(it,Ft,Et){if(it=Ir(it),it&&(Et||Ft===_))return it.slice(0,HF(it)+1);if(!it||!(Ft=Lo(Ft)))return it;var It=es(it),an=GF(It,es(Ft))+1;return Ts(It,0,an).join("")}function Mm(it,Ft,Et){if(it=Ir(it),it&&(Et||Ft===_))return it.replace(Hr,"");if(!it||!(Ft=Lo(Ft)))return it;var It=es(it),an=YF(It,es(Ft));return Ts(It,an).join("")}function xm(it,Ft){var Et=Wt,It=yt;if(io(Ft)){var an="separator"in Ft?Ft.separator:an;Et="length"in Ft?Vr(Ft.length):Et,It="omission"in Ft?Lo(Ft.omission):It}it=Ir(it);var hn=it.length;if(js(it)){var Nn=es(it);hn=Nn.length}if(Et>=hn)return it;var wn=Et-Ls(It);if(wn<1)return It;var xn=Nn?Ts(Nn,0,wn).join(""):it.slice(0,wn);if(an===_)return xn+It;if(Nn&&(wn+=xn.length-wn),WF(an)){if(it.slice(wn).search(an)){var Kn,qn=xn;for(an.global||(an=XU(an.source,Ir(cr.exec(an))+"g")),an.lastIndex=0;Kn=an.exec(qn);)var er=Kn.index;xn=xn.slice(0,er===_?wn:er)}}else if(it.indexOf(Lo(an),wn)!=wn){var ar=xn.lastIndexOf(an);ar>-1&&(xn=xn.slice(0,ar))}return xn+It}function Om(it){return it=Ir(it),it&&ro.test(it)?it.replace(oo,oQ):it}var Am=Ks(function(it,Ft,Et){return it+(Et?" ":"")+Ft.toUpperCase()}),ZF=Mu("toUpperCase");function _p(it,Ft,Et){return it=Ir(it),Ft=Et?_:Ft,Ft===_?eQ(it)?lQ(it):Pp(it):it.match(Ft)||[]}var Dp=Nr(function(it,Ft){try{return $r(it,_,Ft)}catch(Et){return NF(Et)?Et:new mr(Et)}}),Im=Qs(function(it,Ft){return Ho(Ft,function(Et){Et=ls(Et),us(it,Et,vF(it[Et],it))}),it});function jm(it){var Ft=it==null?0:it.length,Et=Qr();return it=Ft?no(it,function(It){if(typeof It[1]!="function")throw new Ko(et);return[Et(It[0]),It[1]]}):[],Nr(function(It){for(var an=-1;++anbt)return[];var Et=At,It=vo(it,At);Ft=Qr(Ft),it-=At;for(var an=zU(It,Ft);++Et0||Ft<0)?new Cr(Et):(it<0?Et=Et.takeRight(-it):it&&(Et=Et.drop(it)),Ft!==_&&(Ft=Vr(Ft),Et=Ft<0?Et.dropRight(-Ft):Et.take(Ft-it)),Et)},Cr.prototype.takeRightWhile=function(it){return this.reverse().takeWhile(it).reverse()},Cr.prototype.toArray=function(){return this.take(At)},as(Cr.prototype,function(it,Ft){var Et=/^(?:filter|find|map|reject)|While$/.test(Ft),It=/^(?:head|last)$/.test(Ft),an=un[It?"take"+(Ft=="last"?"Right":""):Ft],hn=It||/^find/.test(Ft);an&&(un.prototype[Ft]=function(){var Nn=this.__wrapped__,wn=It?[1]:arguments,xn=Nn instanceof Cr,Kn=wn[0],qn=xn||yr(Nn),er=function(Wr){var wr=an.apply(un,ys([Wr],wn));return It&&ar?wr[0]:wr};qn&&Et&&typeof Kn=="function"&&Kn.length!=1&&(xn=qn=!1);var ar=this.__chain__,Fr=!!this.__actions__.length,fr=hn&&!ar,br=xn&&!Fr;if(!hn&&qn){Nn=br?Nn:new Cr(this);var gr=it.apply(Nn,wn);return gr.__actions__.push({func:NU,args:[er],thisArg:_}),new qo(gr,ar)}return fr&&br?it.apply(this,wn):(gr=this.thru(er),fr?It?gr.value()[0]:gr.value():gr)})}),Ho(["pop","push","shift","sort","splice","unshift"],function(it){var Ft=nU[it],Et=/^(?:push|sort|unshift)$/.test(it)?"tap":"thru",It=/^(?:pop|shift)$/.test(it);un.prototype[it]=function(){var an=arguments;if(It&&!this.__chain__){var hn=this.value();return Ft.apply(yr(hn)?hn:[],an)}return this[Et](function(Nn){return Ft.apply(yr(Nn)?Nn:[],an)})}}),as(Cr.prototype,function(it,Ft){var Et=un[Ft];if(Et){var It=Et.name+"";Pr.call(Gs,It)||(Gs[It]=[]),Gs[It].push({name:Ft,func:Et})}}),Gs[yU(_,pt).name]=[{name:"wrapper",func:_}],Cr.prototype.clone=NQ,Cr.prototype.reverse=WQ,Cr.prototype.value=kQ,un.prototype.at=hR,un.prototype.chain=fR,un.prototype.commit=gR,un.prototype.next=BR,un.prototype.plant=SR,un.prototype.reverse=mR,un.prototype.toJSON=un.prototype.valueOf=un.prototype.value=yR,un.prototype.first=un.prototype.head,Sl&&(un.prototype[Sl]=RR),un},Ps=UQ();zn?((zn.exports=Ps)._=Ps,Dn._=Ps):Ln._=Ps}).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",lt="string",ut="major",Ut="model",ot="name",st="type",dt="vendor",St="version",pt="architecture",Rt="console",Bt="mobile",ht="tablet",mt="smarttv",gt="wearable",Vt="embedded",Tt=350,ft="Amazon",Wt="Apple",yt="ASUS",Kt="BlackBerry",$t="Browser",Ht="Chrome",Nt="Edge",qt="Firefox",kt="Google",bt="Huawei",Jt="LG",wt="Microsoft",At="Motorola",Ct="Opera",Mt="Samsung",nn="Sharp",sn="Sony",Lt="Xiaomi",tn="Zebra",cn="Facebook",on=function(Ot,jt){var pn={};for(var En in Ot)jt[En]&&jt[En].length%2===0?pn[En]=jt[En].concat(Ot[En]):pn[En]=Ot[En];return pn},Gt=function(Ot){for(var jt={},pn=0;pn0?Gn.length===2?typeof Gn[1]==tt?this[Gn[0]]=Gn[1].call(this,ir):this[Gn[0]]=Gn[1]:Gn.length===3?typeof Gn[1]===tt&&!(Gn[1].exec&&Gn[1].test)?this[Gn[0]]=ir?Gn[1].call(this,ir,Gn[2]):j:this[Gn[0]]=ir?ir.replace(Gn[1],Gn[2]):j:Gn.length===4&&(this[Gn[0]]=ir?Gn[3].call(this,ir.replace(Gn[1],Gn[2])):j):this[Gn]=ir||j;pn+=2}},Un=function(Ot,jt){for(var pn in jt)if(typeof jt[pn]===rt&&jt[pn].length>0){for(var En=0;EnTt?Fn(yn,Tt):yn,this},this.setUA(pn),this};On.VERSION=$,On.BROWSER=Gt([ot,St,ut]),On.CPU=Gt([pt]),On.DEVICE=Gt([Ut,dt,st,Rt,Bt,mt,ht,gt,Vt]),On.ENGINE=On.OS=Gt([ot,St]),o.exports&&(s=o.exports=On),s.UAParser=On;var Yn=typeof _!==nt&&(_.jQuery||_.Zepto);if(Yn&&!Yn.ua){var _t=new On;Yn.ua=_t.getResult(),Yn.ua.get=function(){return _t.getUA()},Yn.ua.set=function(Ot){_t.setUA(Ot);var jt=_t.getResult();for(var pn in jt)Yn.ua[pn]=jt[pn]}}})(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,lt=tt.isTablet,ut=tt.isSmartTV,Ut=tt.isConsole,ot=tt.isWearable,st=tt.isEmbedded;if(nt)return browserPayload(nt,j,$,_e,et);if(ut)return smartTvPayload(ut,$,_e,et);if(Ut)return consolePayload(Ut,$,_e,et);if(rt||lt)return mobilePayload(tt,_,_e,et);if(ot)return wearablePayload(ot,$,_e,et);if(st)return embeddedPayload(st,_,$,_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,lt;return _e!==et&&(lt=_e-et,rt=tt>.5?lt/(2-_e-et):lt/(_e+et),nt=hueValue(_,j,$,lt,_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),lt=_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:lt,minDefined:ut,maxDefined:Ut}=et.getUserBounds();ut&&($=_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,lt,!0).hi+1,_?0:_lookupByKey(s,nt,et.getPixelForValue(lt),!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,lt,ut,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(lt=>lt!==nt);s=[];for(const lt of nt){const ut=createSubResolver(rt,$,o,lt);s.push(_attachContext(ut,_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,lt;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),lt=nt/(tt+nt);rt=isNaN(rt)?0:rt,lt=isNaN(lt)?0:lt;const ut=j*rt,Ut=j*lt;return{previous:{x:_e.x-ut*(et.x-$.x),y:_e.y-ut*(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 lt=0;lt!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:lt}=getCanvasPosition(o,_),ut=et.left+(lt&&tt.left),Ut=et.top+(lt&&tt.top);let{width:ot,height:st}=s;return _e&&(ot-=et.width+tt.width,st-=et.height+tt.height),{x:Math.round((nt-ut)/ot*_.width/j),y:Math.round((rt-Ut)/st*_.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:lt}=nt;if($.boxSizing==="content-box"){const Ut=getPositionedStyle($,"border","width"),ot=getPositionedStyle($,"padding");rt-=ot.width+Ut.width,lt-=ot.height+Ut.height}return rt=Math.max(0,rt-_e.width),lt=Math.max(0,j?rt/j:lt-_e.height),rt=round1(Math.min(rt,et,nt.maxWidth)),lt=round1(Math.min(lt,tt,nt.maxHeight)),rt&&!lt&&(lt=round1(rt/2)),(s!==void 0||_!==void 0)&&j&&nt.height&<>nt.height&&(lt=nt.height,rt=round1(Math.floor(lt*j))),{width:rt,height:lt}}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,_),lt=_pointInLine(tt,nt,_);return _pointInLine(rt,lt,_)}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:lt,loop:ut}=o,Ut,ot;if(ut){for(rt+=nt,lt+=nt,Ut=0,ot=nt;Utnt($,Bt,pt)&&tt($,Bt)!==0,mt=()=>tt(_e,pt)===0||nt(_e,Bt,pt),gt=()=>dt||ht(),Vt=()=>!dt||mt();for(let Tt=lt,ft=lt;Tt<=ut;++Tt)Rt=s[Tt%et],!Rt.skip&&(pt=rt(Rt[j]),pt!==Bt&&(dt=nt(pt,$,_e),St===null&>()&&(St=tt(pt,$)===0?Tt:ft),St!==null&&Vt()&&(st.push(normalizeSegment({start:St,end:Tt,loop:Ut,count:et,style:ot})),St=null),ft=Tt,Bt=pt));return St!==null&&st.push(normalizeSegment({start:St,end:ut,loop:Ut,count:et,style:ot})),st}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 lt=_[rt];let ut=_e[rt];const Ut=j.get(rt);if(ut)if(Ut&&ut.active()){ut.update(Ut,lt,tt);continue}else ut.cancel();if(!Ut||!Ut.duration){s[rt]=lt;continue}_e[rt]=ut=new Animation(Ut,s,rt,lt),$.push(ut)}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,lt=getStackKey(_e,et,j),ut=s.length;let Ut;for(let ot=0;ot_[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(),$=(ut,Ut,ot,st)=>ut==="x"?Ut:ut==="r"?st:ot,_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),lt=_.vAxisID=$(nt,et,_e,tt);_.xScale=this.getScaleForId(_e),_.yScale=this.getScaleForId(et),_.rScale=this.getScaleForId(tt),_.iScale=this.getScaleForId(rt),_.vScale=this.getScaleForId(lt)}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],lt,ut,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 ot=()=>ut[tt]===null||rt&&ut[tt]dt||ut=0;--Ut)if(!st()){this.updateRangeFromParsed(rt,s,ot,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 lt;for(j.dataset&&j.dataset.draw(s,_e,tt,nt),lt=tt;lt=0&&sthis.getContext(j,$,_),dt=rt.resolveNamedOptions(Ut,ot,st,ut);return dt.$shared&&(dt.$shared=nt,_e[et]=Object.freeze(cloneIfNotShared(dt,nt))),dt}_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 lt=this.chart.config,ut=lt.datasetAnimationScopeKeys(this._type,_),Ut=lt.getOptionScopes(this.getDataset(),ut);nt=lt.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,lt,ut,Ut;for(rt=_,lt=_+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(_),lt=rt&&rt[nt.vScale.axis];if(isNullOrUndef(lt)||isNaN(lt))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(_,$),lt=et.axis,ut=tt.axis;for(let Ut=_;Ut<_+j;Ut++){const ot=s[Ut],st=!_e&&this.getParsed(Ut),dt={},St=dt[lt]=_e?et.getPixelForDecimal(.5):et.getPixelForValue(st[lt]),pt=dt[ut]=_e?tt.getBasePixel():tt.getPixelForValue(st[ut]);dt.skip=isNaN(St)||isNaN(pt),rt&&(dt.options=nt||this.resolveDataElementOptions(Ut,ot.active?"active":$),_e&&(dt.options.radius=0)),this.updateElement(ot,Ut,dt,$)}}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),$}}dr(BubbleController,"id","bubble"),dr(BubbleController,"defaults",{datasetElementType:!1,dataElementType:"point",animations:{numbers:{type:"number",properties:["x","y","borderWidth","radius"]}}}),dr(BubbleController,"overrides",{scales:{x:{type:"linear"},y:{type:"linear"}}});function getRatioAndOffset(o,s,_){let j=1,$=1,_e=0,et=0;if(s_angleBetween(Bt,tt,nt,!0)?1:Math.max(ht,ht*_,mt,mt*_),st=(Bt,ht,mt)=>_angleBetween(Bt,tt,nt,!0)?-1:Math.min(ht,ht*_,mt,mt*_),dt=ot(0,rt,ut),St=ot(HALF_PI,lt,Ut),pt=st(PI,rt,ut),Rt=st(PI+HALF_PI,lt,Ut);j=(dt-pt)/2,$=(St-Rt)/2,_e=-(dt+pt)/2,et=-(St+Rt)/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"}),dr(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:lt,includeOptions:ut}=this._getSharedOptions(_,$),Ut=et.axis,ot=tt.axis,{spanGaps:st,segment:dt}=this.options,St=isNumber(st)?st:Number.POSITIVE_INFINITY,pt=this.chart._animationsDisabled||_e||$==="none",Rt=_+j,Bt=s.length;let ht=_>0&&this.getParsed(_-1);for(let mt=0;mt=Rt){Vt.skip=!0;continue}const Tt=this.getParsed(mt),ft=isNullOrUndef(Tt[ot]),Wt=Vt[Ut]=et.getPixelForValue(Tt[Ut],mt),yt=Vt[ot]=_e||ft?tt.getBasePixel():tt.getPixelForValue(nt?this.applyStack(tt,Tt,nt):Tt[ot],mt);Vt.skip=isNaN(Wt)||isNaN(yt)||ft,Vt.stop=mt>0&&Math.abs(Tt[Ut]-ht[Ut])>St,dt&&(Vt.parsed=Tt,Vt.raw=rt.data[mt]),ut&&(Vt.options=lt||this.resolveDataElementOptions(mt,gt.active?"active":$)),pt||this.updateElement(gt,mt,Vt,$),ht=Tt}}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()}}dr(LineController,"id","line"),dr(LineController,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),dr(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,lt=rt.xCenter,ut=rt.yCenter,Ut=rt.getIndexAngle(0)-.5*PI;let ot=Ut,st;const dt=360/this.countVisibleElements();for(st=0;st<_;++st)ot+=this._computeAngle(st,$,dt);for(st=_;st<_+j;st++){const St=s[st];let pt=ot,Rt=ot+this._computeAngle(st,$,dt),Bt=et.getDataVisibility(st)?rt.getDistanceFromCenterForValue(this.getParsed(st).r):0;ot=Rt,_e&&(nt.animateScale&&(Bt=0),nt.animateRotate&&(pt=Rt=Ut));const ht={x:lt,y:ut,innerRadius:0,outerRadius:Bt,startAngle:pt,endAngle:Rt,options:this.resolveDataElementOptions(st,St.active?"active":$)};this.updateElement(St,st,ht,$)}}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}}dr(PolarAreaController,"id","polarArea"),dr(PolarAreaController,"defaults",{dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0}),dr(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{}dr(PieController,"id","pie"),dr(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":$),lt=_e.getPointPositionForValue(tt,this.getParsed(tt).r),ut=et?_e.xCenter:lt.x,Ut=et?_e.yCenter:lt.y,ot={x:ut,y:Ut,angle:lt.angle,skip:isNaN(ut)||isNaN(Ut),options:rt};this.updateElement(nt,tt,ot,$)}}}dr(RadarController,"id","radar"),dr(RadarController,"defaults",{datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}}),dr(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,lt=this.resolveDataElementOptions(_,$),ut=this.getSharedOptions(lt),Ut=this.includeOptions($,ut),ot=et.axis,st=tt.axis,{spanGaps:dt,segment:St}=this.options,pt=isNumber(dt)?dt:Number.POSITIVE_INFINITY,Rt=this.chart._animationsDisabled||_e||$==="none";let Bt=_>0&&this.getParsed(_-1);for(let ht=_;ht<_+j;++ht){const mt=s[ht],gt=this.getParsed(ht),Vt=Rt?mt:{},Tt=isNullOrUndef(gt[st]),ft=Vt[ot]=et.getPixelForValue(gt[ot],ht),Wt=Vt[st]=_e||Tt?tt.getBasePixel():tt.getPixelForValue(nt?this.applyStack(tt,gt,nt):gt[st],ht);Vt.skip=isNaN(ft)||isNaN(Wt)||Tt,Vt.stop=ht>0&&Math.abs(gt[ot]-Bt[ot])>pt,St&&(Vt.parsed=gt,Vt.raw=rt.data[ht]),Ut&&(Vt.options=ut||this.resolveDataElementOptions(ht,mt.active?"active":$)),Rt||this.updateElement(mt,ht,Vt,$),Bt=gt}this.updateSharedOptions(ut,$,lt)}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}}dr(ScatterController,"id","scatter"),dr(ScatterController,"defaults",{datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1}),dr(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],lt=typeof rt.getRange=="function"&&rt.getRange(s);if(lt){const ut=nt(_e,s,_-lt),Ut=nt(_e,s,_+lt);return{lo:ut.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:lt}),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 lt=tt[0].index,ut=rt.data[lt];ut&&!ut.skip&&nt.push({element:ut,datasetIndex:rt.index,index:lt})}),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 lt=0;lt_.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 ut=j[_.stack]||{size:0,count:1};ut.size=Math.max(ut.size,_.horizontal?_e.height:_e.width),_.size=ut.size/ut.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,lt=nt!==o.h;return o.w=tt,o.h=nt,_.horizontal?{same:rt,other:lt}:{same:lt,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,lt;for(_e=0,et=o.length,rt=0;_e{typeof dt.beforeLayout=="function"&&dt.beforeLayout()});const lt=nt.reduce((dt,St)=>St.box.options&&St.box.options.display===!1?dt:dt+1,0)||1,ut=Object.freeze({outerWidth:s,outerHeight:_,padding:$,availableWidth:_e,availableHeight:et,vBoxMaxWidth:_e/2/lt,hBoxMaxHeight:et/2}),Ut=Object.assign({},$);updateMaxPadding(Ut,toPadding(j));const ot=Object.assign({maxPadding:Ut,w:_e,h:et,x:$.left,y:$.top},$),st=setLayoutDims(nt.concat(rt),ut);fitBoxes(tt.fullSize,ot,ut,st),fitBoxes(nt,ot,ut,st),fitBoxes(rt,ot,ut,st)&&fitBoxes(nt,ot,ut,st),handleMaxPadding(ot),placeBoxes(tt.leftAndTop,ot,ut,st),ot.x+=ot.w,ot.y+=ot.h,placeBoxes(tt.rightAndBottom,ot,ut,st),o.chartArea={left:ot.left,top:ot.top,right:ot.left+ot.w,bottom:ot.top+ot.h,height:ot.h,width:ot.w},each(tt.chartArea,dt=>{const St=dt.box;Object.assign(St,o.chartArea),St.update(ot.w,ot.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,lt=nt.contentRect.height;rt===0&<===0||_e(rt,lt)});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(){dr(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]}),$}}dr(Element,"defaults",{}),dr(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 lt=calculateSpacing(_e,s,$);if(et>0){let ut,Ut;const ot=et>1?Math.round((nt-tt)/(et-1)):null;for(skip(s,rt,lt,isNullOrUndef(ot)?0:tt-ot,tt),ut=0,Ut=et-1;ut$)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:lt}=nt;let ut=0,Ut,ot,st;const dt=et-$,St=tt-_e;if(o.isHorizontal()){if(ot=_alignStartEnd(j,_e,tt),isObject(_)){const pt=Object.keys(_)[0],Rt=_[pt];st=lt[pt].getPixelForValue(Rt)+dt-s}else _==="center"?st=(rt.bottom+rt.top)/2+dt-s:st=offsetFromEdge(o,_,s);Ut=tt-_e}else{if(isObject(_)){const pt=Object.keys(_)[0],Rt=_[pt];ot=lt[pt].getPixelForValue(Rt)-St+s}else _==="center"?ot=(rt.left+rt.right)/2-St+s:ot=offsetFromEdge(o,_,s);st=_alignStartEnd(j,et,$),ut=_==="left"?-HALF_PI:HALF_PI}return{titleX:ot,titleY:st,maxWidth:Ut,rotation:ut}}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 lt=this._getLabelSizes(),ut=lt.widest.width,Ut=lt.highest.height,ot=_limitValue(this.chart.width-ut,0,this.maxWidth);tt=s.offset?this.maxWidth/j:ot/(j-1),ut+6>tt&&(tt=ot/(j-(s.offset?.5:1)),nt=this.maxHeight-getTickMarkLength(s.grid)-_.padding-getTitleHeight(s.title,this.chart.options.font),rt=Math.sqrt(ut*ut+Ut*Ut),et=toDegrees(Math.min(Math.asin(_limitValue((lt.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:lt,widest:ut,highest:Ut}=this._getLabelSizes(),ot=j.padding*2,st=toRadians(this.labelRotation),dt=Math.cos(st),St=Math.sin(st);if(tt){const pt=j.mirror?0:St*ut.width+dt*Ut.height;s.height=Math.min(this.maxHeight,s.height+pt+ot)}else{const pt=j.mirror?0:dt*ut.width+St*Ut.height;s.width=Math.min(this.maxWidth,s.width+pt+ot)}this._calculatePadding(rt,lt,St,dt)}}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 lt=this.getPixelForTick(0)-this.left,ut=this.right-this.getPixelForTick(this.ticks.length-1);let Ut=0,ot=0;nt?rt?(Ut=$*s.width,ot=j*_.height):(Ut=j*s.height,ot=$*_.width):_e==="start"?ot=_.width:_e==="end"?Ut=s.width:_e!=="inner"&&(Ut=s.width/2,ot=_.width/2),this.paddingLeft=Math.max((Ut-lt+et)*this.width/(this.width-lt),0),this.paddingRight=Math.max((ot-ut+et)*this.width/(this.width-ut),0)}else{let lt=_.height/2,ut=s.height/2;_e==="start"?(lt=0,ut=s.height):_e==="end"&&(lt=_.height,ut=0),this.paddingTop=lt+et,this.paddingBottom=ut+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[ft]||0,height:tt[ft]||0});return{first:Tt(0),last:Tt(_-1),widest:Tt(gt),highest:Tt(Vt),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(),ut=this.ticks.length+(nt?1:0),Ut=getTickMarkLength(_e),ot=[],st=tt.setContext(this.getContext()),dt=st.display?st.width:0,St=dt/2,pt=function(qt){return _alignPixel(j,qt,dt)};let Rt,Bt,ht,mt,gt,Vt,Tt,ft,Wt,yt,Kt,$t;if(et==="top")Rt=pt(this.bottom),Vt=this.bottom-Ut,ft=Rt-St,yt=pt(s.top)+St,$t=s.bottom;else if(et==="bottom")Rt=pt(this.top),yt=s.top,$t=pt(s.bottom)-St,Vt=Rt+St,ft=this.top+Ut;else if(et==="left")Rt=pt(this.right),gt=this.right-Ut,Tt=Rt-St,Wt=pt(s.left)+St,Kt=s.right;else if(et==="right")Rt=pt(this.left),Wt=s.left,Kt=pt(s.right)-St,gt=Rt+St,Tt=this.left+Ut;else if(_==="x"){if(et==="center")Rt=pt((s.top+s.bottom)/2+.5);else if(isObject(et)){const qt=Object.keys(et)[0],kt=et[qt];Rt=pt(this.chart.scales[qt].getPixelForValue(kt))}yt=s.top,$t=s.bottom,Vt=Rt+St,ft=Vt+Ut}else if(_==="y"){if(et==="center")Rt=pt((s.left+s.right)/2);else if(isObject(et)){const qt=Object.keys(et)[0],kt=et[qt];Rt=pt(this.chart.scales[qt].getPixelForValue(kt))}gt=Rt-St,Tt=gt-Ut,Wt=s.left,Kt=s.right}const Ht=valueOrDefault($.ticks.maxTicksLimit,ut),Nt=Math.max(1,Math.ceil(ut/Ht));for(Bt=0;Bt_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,lt)=>{!lt.width||!lt.color||(j.save(),j.lineWidth=lt.width,j.strokeStyle=lt.color,j.setLineDash(lt.borderDash||[]),j.lineDashOffset=lt.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,$),lt=_.scales||{};_e[et]=mergeIf(Object.create(null),[{axis:nt},tt,lt[nt],lt[rt]])}),o.data.datasets.forEach(et=>{const tt=et.type||o.type,nt=et.indexAxis||getIndexAxis(tt,s),lt=(overrides[tt]||{}).scales||{};Object.keys(lt).forEach(ut=>{const Ut=getAxisFromDefaultScaleID(ut,nt),ot=et[Ut+"AxisID"]||Ut;_e[ot]=_e[ot]||Object.create(null),mergeIf(_e[ot],[{axis:Ut},j[ot],lt[ut]])})}),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(lt=>{s&&(nt.add(s),lt.forEach(ut=>addIfFound(nt,s,ut))),lt.forEach(ut=>addIfFound(nt,$,ut)),lt.forEach(ut=>addIfFound(nt,overrides[_e]||{},ut)),lt.forEach(ut=>addIfFound(nt,defaults,ut)),lt.forEach(ut=>addIfFound(nt,descriptors,ut))});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,lt=nt&&nt.width;if(this.id=uid(),this.ctx=tt,this.canvas=nt,this.width=lt,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(ut=>this.update(ut),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",lt=nt==="x";return{options:tt,dposition:rt?"chartArea":lt?"bottom":"left",dtype:rt?"radialLinear":lt?"category":"linear"}}))),each(_e,et=>{const tt=et.options,nt=tt.id,rt=determineAxis(nt,tt),lt=valueOrDefault(tt.type,et.dtype);(tt.position===void 0||positionIsHorizontal(tt.position,rt)!==positionIsHorizontal(et.dposition))&&(tt.position=et.dposition),$[nt]=!0;let ut=null;if(nt in j&&j[nt].type===lt)ut=j[nt];else{const Ut=registry.getScale(lt);ut=new Ut({id:nt,type:lt,ctx:this.ctx,chart:this}),j[ut.id]=ut}ut.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:lt}=defaults.datasets[tt];Object.assign(nt,{dataElementType:registry.getElement(lt),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,lt=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(lt=>!rt.some(ut=>lt.datasetIndex===ut.datasetIndex&<.index===ut.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 lt=!_elementsEqual(tt,$);return(lt||_)&&(this._active=tt,this._updateHoverStyles(tt,$,_)),this._lastEvent=rt,lt}_getActiveElements(s,_,j,$){if(s.type==="mouseout")return[];if(!j)return _;const _e=this.options.hover;return this.getElementsAtEventForMode(s,_e.mode,_e,$)}}dr(Chart,"defaults",defaults),dr(Chart,"instances",instances),dr(Chart,"overrides",overrides),dr(Chart,"registry",registry),dr(Chart,"version",version),dr(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:lt}=s,ut=Math.max(s.outerRadius+j+_-rt,0),Ut=lt>0?lt+j+_+rt:0;let ot=0;const st=$-nt;if(j){const Nt=lt>0?lt-j:0,qt=ut>0?ut-j:0,kt=(Nt+qt)/2,bt=kt!==0?st*kt/(kt+j):st;ot=(st-bt)/2}const dt=Math.max(.001,st*ut-_/PI)/ut,St=(st-dt)/2,pt=nt+St+ot,Rt=$-St-ot,{outerStart:Bt,outerEnd:ht,innerStart:mt,innerEnd:gt}=parseBorderRadius$1(s,Ut,ut,Rt-pt),Vt=ut-Bt,Tt=ut-ht,ft=pt+Bt/Vt,Wt=Rt-ht/Tt,yt=Ut+mt,Kt=Ut+gt,$t=pt+mt/yt,Ht=Rt-gt/Kt;if(o.beginPath(),_e){const Nt=(ft+Wt)/2;if(o.arc(et,tt,ut,ft,Nt),o.arc(et,tt,ut,Nt,Wt),ht>0){const Jt=rThetaToXY(Tt,Wt,et,tt);o.arc(Jt.x,Jt.y,ht,Wt,Rt+HALF_PI)}const qt=rThetaToXY(Kt,Rt,et,tt);if(o.lineTo(qt.x,qt.y),gt>0){const Jt=rThetaToXY(Kt,Ht,et,tt);o.arc(Jt.x,Jt.y,gt,Rt+HALF_PI,Ht+Math.PI)}const kt=(Rt-gt/Ut+(pt+mt/Ut))/2;if(o.arc(et,tt,Ut,Rt-gt/Ut,kt,!0),o.arc(et,tt,Ut,kt,pt+mt/Ut,!0),mt>0){const Jt=rThetaToXY(yt,$t,et,tt);o.arc(Jt.x,Jt.y,mt,$t+Math.PI,pt-HALF_PI)}const bt=rThetaToXY(Vt,pt,et,tt);if(o.lineTo(bt.x,bt.y),Bt>0){const Jt=rThetaToXY(Vt,ft,et,tt);o.arc(Jt.x,Jt.y,Bt,pt-HALF_PI,ft)}}else{o.moveTo(et,tt);const Nt=Math.cos(ft)*ut+et,qt=Math.sin(ft)*ut+tt;o.lineTo(Nt,qt);const kt=Math.cos(Wt)*ut+et,bt=Math.sin(Wt)*ut+tt;o.lineTo(kt,bt)}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:lt}=nt,ut=nt.borderAlign==="inner";if(!rt)return;ut?(o.lineWidth=rt*2,o.lineJoin=lt||"round"):(o.lineWidth=rt,o.lineJoin=lt||"bevel");let Ut=s.endAngle;if(_e){pathArc(o,s,_,j,Ut,$);for(let ot=0;ot<_e;++ot)o.stroke();isNaN(tt)||(Ut=et+(tt%TAU||TAU))}ut&&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:lt,circumference:ut}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],j),Ut=this.options.spacing/2,st=valueOrDefault(ut,nt-tt)>=TAU||_angleBetween(_e,tt,nt),dt=_isBetween(et,rt+Ut,lt+Ut);return st&&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,lt=($+_e)/2,ut=(et+tt+rt+nt)/2;return{x:_+Math.cos(lt)*ut,y:j+Math.sin(lt)*ut}}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()}}dr(ArcElement,"id","arc"),dr(ArcElement,"defaults",{borderAlign:"center",borderColor:"#fff",borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0}),dr(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),lt=$tt&&_e>tt;return{count:j,start:nt,loop:s.loop,ilen:rt(et+(rt?tt-ht:ht))%_e,Bt=()=>{dt!==St&&(o.lineTo(lt,St),o.lineTo(lt,dt),o.lineTo(lt,pt))};for(nt&&(ot=$[Rt(0)],o.moveTo(ot.x,ot.y)),Ut=0;Ut<=tt;++Ut){if(ot=$[Rt(Ut)],ot.skip)continue;const ht=ot.x,mt=ot.y,gt=ht|0;gt===st?(mtSt&&(St=mt),lt=(ut*lt+ht)/++ut):(Bt(),o.lineTo(ht,mt),st=gt,ut=0,dt=St=mt),pt=mt}Bt()}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,lt;for(rt=0,lt=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 lt=s,ut,Ut,ot,st,dt;for(et[nt++]=o[lt],ut=0;ut<_e-2;ut++){let St=0,pt=0,Rt;const Bt=Math.floor((ut+1)*tt)+1+s,ht=Math.min(Math.floor((ut+2)*tt)+1,_)+s,mt=ht-Bt;for(Rt=Bt;Rtot&&(ot=st,Ut=o[Rt],dt=Rt);et[nt++]=Ut,lt=dt}return et[nt++]=o[rt],et}function minMaxDecimation(o,s,_,j){let $=0,_e=0,et,tt,nt,rt,lt,ut,Ut,ot,st,dt;const St=[],pt=s+_-1,Rt=o[s].x,ht=o[pt].x-Rt;for(et=s;etdt&&(dt=rt,Ut=et),$=(_e*$+tt.x)/++_e;else{const gt=et-1;if(!isNullOrUndef(ut)&&!isNullOrUndef(Ut)){const Vt=Math.min(ut,Ut),Tt=Math.max(ut,Ut);Vt!==ot&&Vt!==gt&&St.push({...o[Vt],x:$}),Tt!==ot&&Tt!==gt&&St.push({...o[Tt],x:$})}et>0&>!==ot&&St.push(o[gt]),St.push(tt),lt=mt,_e=0,st=dt=rt,ut=Ut=ot=et}}return St}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 lt=o.scales[nt.xAxisID];if(lt.type!=="linear"&<.type!=="time"||o.options.parsing)return;let{start:ut,count:Ut}=getStartAndCountOfVisiblePointsSimplified(nt,rt);const ot=_.threshold||4*j;if(Ut<=ot){cleanDecimatedDataset($);return}isNullOrUndef(et)&&($._data=rt,delete $.data,Object.defineProperty($,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(dt){this._data=dt}}));let st;switch(_.algorithm){case"lttb":st=lttbDecimation(rt,ut,Ut,j,_);break;case"min-max":st=minMaxDecimation(rt,ut,Ut,j);break;default:throw new Error(`Unsupported decimation algorithm '${_.algorithm}'`)}$._decimated=st})},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 lt=_getBounds(_,$[nt],$[rt],tt.loop);if(!s.segments){et.push({source:tt,target:lt,start:$[nt],end:$[rt]});continue}const ut=_boundSegments(s,lt);for(const Ut of ut){const ot=_getBounds(_,_e[Ut.start],_e[Ut.end],Ut.loop),st=_boundSegment(tt,$,ot);for(const dt of st)et.push({source:dt,target:Ut,start:{[_]:_getEdge(lt,ot,"start",Math.max)},end:{[_]:_getEdge(lt,ot,"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 lt=rt.start;lt<=rt.end;lt++)addPointsBelow($,et[lt],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,lt;_.font=$.string,this.isHorizontal()?(rt=this.maxWidth,lt=this._fitRows(et,_e,tt,nt)+10):(lt=this.maxHeight,rt=this._fitCols(et,$,tt,nt)+10),this.width=Math.min(rt,s.maxWidth||this.maxWidth),this.height=Math.min(lt,s.maxHeight||this.maxHeight)}_fitRows(s,_,j,$){const{ctx:_e,maxWidth:et,options:{labels:{padding:tt}}}=this,nt=this.legendHitBoxes=[],rt=this.lineWidths=[0],lt=$+tt;let ut=s;_e.textAlign="left",_e.textBaseline="middle";let Ut=-1,ot=-lt;return this.legendItems.forEach((st,dt)=>{const St=j+_/2+_e.measureText(st.text).width;(dt===0||rt[rt.length-1]+St+2*tt>et)&&(ut+=lt,rt[rt.length-(dt>0?0:1)]=0,ot+=lt,Ut++),nt[dt]={left:0,top:ot,row:Ut,width:St,height:$},rt[rt.length-1]+=St+tt}),ut}_fitCols(s,_,j,$){const{ctx:_e,maxHeight:et,options:{labels:{padding:tt}}}=this,nt=this.legendHitBoxes=[],rt=this.columnSizes=[],lt=et-s;let ut=tt,Ut=0,ot=0,st=0,dt=0;return this.legendItems.forEach((St,pt)=>{const{itemWidth:Rt,itemHeight:Bt}=calculateItemSize(j,_,_e,St,$);pt>0&&ot+Bt+2*tt>lt&&(ut+=Ut+tt,rt.push({width:Ut,height:ot}),st+=Ut+tt,dt++,Ut=ot=0),nt[pt]={left:st,top:ot,col:dt,width:Rt,height:Bt},Ut=Math.max(Ut,Rt),ot+=Bt+tt}),ut+=Ut,rt.push({width:Ut,height:ot}),ut}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:lt}=et,ut=rt.size,Ut=ut/2;let ot;this.drawTitle(),$.textAlign=nt.textAlign("left"),$.textBaseline="middle",$.lineWidth=.5,$.font=rt.string;const{boxWidth:st,boxHeight:dt,itemHeight:St}=getBoxSize(et,ut),pt=function(gt,Vt,Tt){if(isNaN(st)||st<=0||isNaN(dt)||dt<0)return;$.save();const ft=valueOrDefault(Tt.lineWidth,1);if($.fillStyle=valueOrDefault(Tt.fillStyle,tt),$.lineCap=valueOrDefault(Tt.lineCap,"butt"),$.lineDashOffset=valueOrDefault(Tt.lineDashOffset,0),$.lineJoin=valueOrDefault(Tt.lineJoin,"miter"),$.lineWidth=ft,$.strokeStyle=valueOrDefault(Tt.strokeStyle,tt),$.setLineDash(valueOrDefault(Tt.lineDash,[])),et.usePointStyle){const Wt={radius:dt*Math.SQRT2/2,pointStyle:Tt.pointStyle,rotation:Tt.rotation,borderWidth:ft},yt=nt.xPlus(gt,st/2),Kt=Vt+Ut;drawPointLegend($,Wt,yt,Kt,et.pointStyleWidth&&st)}else{const Wt=Vt+Math.max((ut-dt)/2,0),yt=nt.leftForLtr(gt,st),Kt=toTRBLCorners(Tt.borderRadius);$.beginPath(),Object.values(Kt).some($t=>$t!==0)?addRoundedRectPath($,{x:yt,y:Wt,w:st,h:dt,radius:Kt}):$.rect(yt,Wt,st,dt),$.fill(),ft!==0&&$.stroke()}$.restore()},Rt=function(gt,Vt,Tt){renderText($,Tt.text,gt,Vt+St/2,rt,{strikethrough:Tt.hidden,textAlign:nt.textAlign(Tt.textAlign)})},Bt=this.isHorizontal(),ht=this._computeTitleHeight();Bt?ot={x:_alignStartEnd(_e,this.left+lt,this.right-j[0]),y:this.top+lt+ht,line:0}:ot={x:this.left+lt,y:_alignStartEnd(_e,this.top+ht+lt,this.bottom-_[0].height),line:0},overrideTextDirection(this.ctx,s.textDirection);const mt=St+lt;this.legendItems.forEach((gt,Vt)=>{$.strokeStyle=gt.fontColor,$.fillStyle=gt.fontColor;const Tt=$.measureText(gt.text).width,ft=nt.textAlign(gt.textAlign||(gt.textAlign=et.textAlign)),Wt=st+Ut+Tt;let yt=ot.x,Kt=ot.y;nt.setWidth(this.width),Bt?Vt>0&&yt+Wt+lt>this.right&&(Kt=ot.y+=mt,ot.line++,yt=ot.x=_alignStartEnd(_e,this.left+lt,this.right-j[ot.line])):Vt>0&&Kt+mt>this.bottom&&(yt=ot.x=yt+_[ot.line].width+lt,ot.line++,Kt=ot.y=_alignStartEnd(_e,this.top+ht+lt,this.bottom-_[ot.line].height));const $t=nt.x(yt);if(pt($t,Kt,gt),yt=_textX(ft,yt+st+Ut,Bt?yt+Wt:this.right,s.rtl),Rt(nt.x(yt),Kt,gt),Bt)ot.x+=Wt+lt;else if(typeof gt.text!="string"){const Ht=rt.lineHeight;ot.y+=calculateLegendItemHeight(gt,Ht)}else ot.y+=mt}),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 lt,ut=this.left,Ut=this.width;if(this.isHorizontal())Ut=Math.max(...this.lineWidths),lt=this.top+rt,ut=_alignStartEnd(s.align,ut,this.right-Ut);else{const st=this.columnSizes.reduce((dt,St)=>Math.max(dt,St.height),0);lt=rt+_alignStartEnd(s.align,this.top,this.bottom-st-s.labels.padding-this._computeTitleHeight())}const ot=_alignStartEnd(tt,ut,ut+Ut);et.textAlign=_e.textAlign(_toLeftRightCenter(tt)),et.textBaseline="middle",et.strokeStyle=_.color,et.fillStyle=_.color,et.font=j.string,renderText(et,_.text,ot,lt,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),lt=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:(lt.width+lt.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,lt,ut;return this.isHorizontal()?(lt=_alignStartEnd(tt,j,_e),ut=_+s,rt=_e-j):(et.position==="left"?(lt=j+s,ut=_alignStartEnd(tt,$,_),nt=PI*-.5):(lt=_e-s,ut=_alignStartEnd(tt,_,$),nt=PI*.5),rt=$-_),{titleX:lt,titleY:ut,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),lt=toFont(s.footerFont),ut=_e.length,Ut=$.length,ot=j.length,st=toPadding(s.padding);let dt=st.height,St=0,pt=j.reduce((ht,mt)=>ht+mt.before.length+mt.lines.length+mt.after.length,0);if(pt+=o.beforeBody.length+o.afterBody.length,ut&&(dt+=ut*rt.lineHeight+(ut-1)*s.titleSpacing+s.titleMarginBottom),pt){const ht=s.displayColors?Math.max(tt,nt.lineHeight):nt.lineHeight;dt+=ot*ht+(pt-ot)*nt.lineHeight+(pt-1)*s.bodySpacing}Ut&&(dt+=s.footerMarginTop+Ut*lt.lineHeight+(Ut-1)*s.footerSpacing);let Rt=0;const Bt=function(ht){St=Math.max(St,_.measureText(ht).width+Rt)};return _.save(),_.font=rt.string,each(o.title,Bt),_.font=nt.string,each(o.beforeBody.concat(o.afterBody),Bt),Rt=s.displayColors?et+2+s.boxPadding:0,each(j,ht=>{each(ht.before,Bt),each(ht.lines,Bt),each(ht.after,Bt)}),Rt=0,_.font=lt.string,each(o.footer,Bt),_.restore(),St+=st.width,{width:St,height:dt}}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:lt,topRight:ut,bottomLeft:Ut,bottomRight:ot}=toTRBLCorners(et);let st=alignX(s,tt);const dt=alignY(s,nt,rt);return nt==="center"?tt==="left"?st+=rt:tt==="right"&&(st-=rt):tt==="left"?st-=Math.max(lt,Ut)+$:tt==="right"&&(st+=Math.max(ut,ot)+$),{x:_limitValue(st,0,j.width-s.width),y:_limitValue(dt,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(lt,ut,Ut,j))),s.itemSort&&(tt=tt.sort((lt,ut)=>s.itemSort(lt,ut,j))),each(tt,lt=>{const ut=overrideCallbacks(s.callbacks,lt);$.push(invokeCallbackWithFallback(ut,"labelColor",this,lt)),_e.push(invokeCallbackWithFallback(ut,"labelPointStyle",this,lt)),et.push(invokeCallbackWithFallback(ut,"labelTextColor",this,lt))}),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),lt=determineAlignment(this.chart,j,rt),ut=getBackgroundPoint(j,rt,lt,this.chart);this.xAlign=lt.xAlign,this.yAlign=lt.yAlign,_e={opacity:1,x:ut.x,y:ut.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:lt,bottomRight:ut}=toTRBLCorners(tt),{x:Ut,y:ot}=s,{width:st,height:dt}=_;let St,pt,Rt,Bt,ht,mt;return _e==="center"?(ht=ot+dt/2,$==="left"?(St=Ut,pt=St-et,Bt=ht+et,mt=ht-et):(St=Ut+st,pt=St+et,Bt=ht-et,mt=ht+et),Rt=St):($==="left"?pt=Ut+Math.max(nt,lt)+et:$==="right"?pt=Ut+st-Math.max(rt,ut)-et:pt=this.caretX,_e==="top"?(Bt=ot,ht=Bt-et,St=pt-et,Rt=pt+et):(Bt=ot+dt,ht=Bt+et,St=pt+et,Rt=pt-et),mt=Bt),{x1:St,x2:pt,x3:Rt,y1:Bt,y2:ht,y3:mt}}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:lt}=_e,ut=toFont(_e.bodyFont),Ut=getAlignedX(this,"left",_e),ot=$.x(Ut),st=ntBt!==0)?(s.beginPath(),s.fillStyle=_e.multiKeyBackground,addRoundedRectPath(s,{x:St,y:dt,w:rt,h:nt,radius:Rt}),s.fill(),s.stroke(),s.fillStyle=et.backgroundColor,s.beginPath(),addRoundedRectPath(s,{x:pt,y:dt+1,w:rt-2,h:nt-2,radius:Rt}),s.fill()):(s.fillStyle=_e.multiKeyBackground,s.fillRect(St,dt,rt,nt),s.strokeRect(St,dt,rt,nt),s.fillStyle=et.backgroundColor,s.fillRect(pt,dt+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:lt}=j,ut=toFont(j.bodyFont);let Ut=ut.lineHeight,ot=0;const st=getRtlAdapter(j.rtl,this.x,this.width),dt=function(Tt){_.fillText(Tt,st.x(s.x+ot),s.y+Ut/2),s.y+=Ut+_e},St=st.textAlign(et);let pt,Rt,Bt,ht,mt,gt,Vt;for(_.textAlign=et,_.textBaseline="middle",_.font=ut.string,s.x=getAlignedX(this,St,j),_.fillStyle=j.bodyColor,each(this.beforeBody,dt),ot=tt&&St!=="right"?et==="center"?rt/2+lt:rt+2+lt:0,ht=0,gt=$.length;ht0&&_.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),lt=getBackgroundPoint(s,nt,rt,_);($._to!==lt.x||_e._to!==lt.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,lt))}}_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)}}dr(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}}dr(CategoryScale,"id","category"),dr(CategoryScale,"defaults",{ticks:{callback:_getLabelForValue}});function generateTicks$1(o,s){const _=[],{bounds:$,step:_e,min:et,max:tt,precision:nt,count:rt,maxTicks:lt,maxDigits:ut,includeBounds:Ut}=o,ot=_e||1,st=lt-1,{min:dt,max:St}=s,pt=!isNullOrUndef(et),Rt=!isNullOrUndef(tt),Bt=!isNullOrUndef(rt),ht=(St-dt)/(ut+1);let mt=niceNum((St-dt)/st/ot)*ot,gt,Vt,Tt,ft;if(mt<1e-14&&!pt&&!Rt)return[{value:dt},{value:St}];ft=Math.ceil(St/mt)-Math.floor(dt/mt),ft>st&&(mt=niceNum(ft*mt/st/ot)*ot),isNullOrUndef(nt)||(gt=Math.pow(10,nt),mt=Math.ceil(mt*gt)/gt),$==="ticks"?(Vt=Math.floor(dt/mt)*mt,Tt=Math.ceil(St/mt)*mt):(Vt=dt,Tt=St),pt&&Rt&&_e&&almostWhole((tt-et)/_e,mt/1e3)?(ft=Math.round(Math.min((tt-et)/mt,lt)),mt=(tt-et)/ft,Vt=et,Tt=tt):Bt?(Vt=pt?et:Vt,Tt=Rt?tt:Tt,ft=rt-1,mt=(Tt-Vt)/ft):(ft=(Tt-Vt)/mt,almostEquals(ft,Math.round(ft),mt/1e3)?ft=Math.round(ft):ft=Math.ceil(ft));const Wt=Math.max(_decimalPlaces(mt),_decimalPlaces(Vt));gt=Math.pow(10,isNullOrUndef(nt)?Wt:nt),Vt=Math.round(Vt*gt)/gt,Tt=Math.round(Tt*gt)/gt;let yt=0;for(pt&&(Ut&&Vt!==et?(_.push({value:et}),Vt$=_?$: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}}dr(LinearScale,"id","linear"),dr(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,lt=Math.floor((s-nt)/tt/10)*tt*10;let ut=Math.floor((rt-lt)/Math.pow(10,_e)),Ut=finiteOrDefault(o.min,Math.round((nt+lt+ut*Math.pow(10,_e))*et)/et);for(;Ut<_;)j.push({value:Ut,major:isMajor(Ut),significand:ut}),ut>=10?ut=ut<15?15:20:ut++,ut>=20&&(_e++,ut=2,et=_e>=0?1:et),Ut=Math.round((nt+lt+ut*Math.pow(10,_e))*et)/et;const ot=finiteOrDefault(o.max,Ut);return j.push({value:ot,major:isMajor(ot),significand:ut}),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)}}dr(LogarithmicScale,"id","logarithmic"),dr(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 lt=o.getPointPosition(nt,o.drawingArea+$[nt],tt),ut=toFont(rt.font),Ut=measureLabelSize(o.ctx,ut,o._pointLabels[nt]);j[nt]=Ut;const ot=_normalizeAngle(o.getIndexAngle(nt)+tt),st=Math.round(toDegrees(ot)),dt=determineLimits(st,lt.x,Ut.w,0,180),St=determineLimits(st,lt.y,Ut.h,90,270);updateLimits(_,s,ot,dt,St)}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 lt=o.getPointPosition(rt,tt+et+_[rt],nt),ut=Math.round(toDegrees(_normalizeAngle(lt.angle+HALF_PI))),Ut=s[rt],ot=yForAngle(lt.y,Ut.h,ut),st=getTextAlignForAngle(ut),dt=leftForTextAlign(lt.x,Ut.w,st);j.push({x:lt.x,y:ot,textAlign:st,left:dt,top:ot,right:dt+Ut.w,bottom:ot+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:lt,top:ut,right:Ut,bottom:ot}=o._pointLabelItems[$],{backdropColor:st}=_e;if(!isNullOrUndef(st)){const dt=toTRBLCorners(_e.borderRadius),St=toPadding(_e.backdropPadding);_.fillStyle=st;const pt=lt-St.left,Rt=ut-St.top,Bt=Ut-lt+St.width,ht=ot-ut+St.height;Object.values(dt).some(mt=>mt!==0)?(_.beginPath(),addRoundedRectPath(_,{x:pt,y:Rt,w:Bt,h:ht,radius:dt}),_.fill()):_.fillRect(pt,Rt,Bt,ht)}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((lt,ut)=>{if(ut!==0){nt=this.getDistanceFromCenterForValue(lt.value);const Ut=this.getContext(ut),ot=$.setContext(Ut),st=_e.setContext(Ut);drawRadiusLine(this,ot,nt,et,st)}}),j.display){for(s.save(),tt=et-1;tt>=0;tt--){const lt=j.setContext(this.getPointLabelContext(tt)),{color:ut,lineWidth:Ut}=lt;!Ut||!ut||(s.lineWidth=Ut,s.strokeStyle=ut,s.setLineDash(lt.borderDash),s.lineDashOffset=lt.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)),lt=toFont(rt.font);if(_e=this.getDistanceFromCenterForValue(this.ticks[nt].value),rt.showLabelBackdrop){s.font=lt.string,et=s.measureText(tt.label).width,s.fillStyle=rt.backdropColor;const ut=toPadding(rt.backdropPadding);s.fillRect(-et/2-ut.left,-_e-lt.size/2-ut.top,et+ut.width,lt.size+ut.height)}renderText(s,tt.label,0,-_e,lt,{color:rt.color})}),s.restore()}drawTitle(){}}dr(RadialLinearScale,"id","radialLinear"),dr(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}}),dr(RadialLinearScale,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),dr(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,lt={};let ut=_,Ut,ot;if(rt&&(ut=+s.startOf(ut,"isoWeek",nt)),ut=+s.startOf(ut,rt?"day":et),s.diff(j,_,et)>1e5*tt)throw new Error(_+" and "+j+" are too far apart with stepSize of "+tt+" "+et);const st=$.ticks.source==="data"&&this.getDataTimestamps();for(Ut=ut,ot=0;Utdt-St).map(dt=>+dt)}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,lt=nt&&tt[nt],ut=rt&&tt[rt],Ut=j[_],ot=rt&&ut&&Ut&&Ut.major;return this._adapter.format(s,$||(ot?ut:lt))}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,lt;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 lt=Date.now();console.info("BytestreamPlayer waiting for video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Waited":lt-this.moduleCreateTime}))}return}this.numFramesReceived/this.numFramesDecoded>maxDropRatio&&this.warnPerformanceProblems(),this.numFramesReceived=0,this.numFramesDecoded=0;const tt=Array.from(this.frameCheckpointMap.entries()).reduce((lt,[ut,Ut])=>{var ot;return!this.currentFrameIndex||ut>this.currentFrameIndex-60||Ut==="FrameDrawn"||(lt[Ut]=((ot=lt[Ut])!=null?ot:0)+1,this.frameCheckpointMap.delete(ut)),lt},{});Object.keys(tt).map(lt=>{console.info("BytestreamPlayer Frame Dropped",__spreadProps(__spreadValues({},this.trackInfo),{"Num Dropped":tt[lt],"Frame State":lt}))});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:lt,retries:ut}=this,Ut=new Date().getTime();lt&&(this.lastNoSignalTime=Ut),this.overWaitingThreshold=Ut-rt>noSignalThreshold;const ot=Ut-rt>decoderNotWorkingThreshold;if(!nt){tt&&ot&&utnoSignalThreshold&&stwarnPerformanceThreshold&&this.warnPerformanceProblems(),st>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:lt,decoderQueue:ut}=this,{timestamp:Ut,yuv:ot,height:st,width:dt,index:St}=et;this.frameCheckpointMap.set(St,"FrameDecoded"),this.numFramesDecoded++;const pt=Date.now();if(this.lastDecodedFrameTime===void 0&&console.info("BytestreamPlayer started video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Until Video":pt-this.moduleCreateTime})),this.lastDecodedFrameTime=pt,this.waitingForDecoder=!1,this.decoderQueue=ut.filter(ht=>pt-htduration.second||!lt||!rt||st===0||dt===0)return;st!==rt.height&&(rt.height=st,lt.height=st),dt!==rt.width&&(rt.width=dt,lt.width=dt);const Rt=lt.draw(ot),Bt=Date.now();if(this.lastDrawnFrameTime){const ht=Bt-this.lastDrawnFrameTime;this.minJitter=Math.min(ht,(tt=this.minJitter)!=null?tt:Number.MAX_SAFE_INTEGER),this.maxJitter=Math.max(ht,(nt=this.maxJitter)!=null?nt:0)}this.lastDrawnFrameTime=Bt,this.frameCheckpointMap.set(St,"FrameDrawn"),Rt===0&&(this.webglYUVSupported=!0),Rt===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,lt=_?et===numRetries?"Decoder failed to start":"Starting decoder":void 0,ut=nt?"Hardware decoding not supported on this device":void 0;return(s=ut??(_e?"Lost signal":j?$?"No signal":"Waiting for signal":void 0))!=null?s:lt}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 ut=>{await Authentication.waitTilAuthenticated();const Ut=await rt();o.addRealtimeListener((ot,st)=>{st.header.stream.streamName===_&&ut.drawVideoFrame(st.payload.h264VideoFrame)}),o.startListeningToRealtimeVideo(Ut),et(!1)},nt=async()=>{const ut=await Fleet.getCurrentDevice(),Ut=await rt();await ut.stopListeningToRealtimeVideo(Ut)},rt=reactExports.useCallback(async()=>{const ut=(await o.getRealtimeVideoStreams()).filter(Ut=>Ut.name===_);return ut.length===0&&console.error("Error: Camera name is incorrect or doesn't exist"),ut[0]},[_]),lt=reactExports.useCallback(async()=>{const ut=document.querySelector(`#${s}`);ut.drawer.start(),await tt(ut)},[]);return reactExports.useLayoutEffect(()=>{if(o)return lt().then(ut=>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/assets/index-643462ad.js b/examples/realtime-video/dist/assets/index-643462ad.js deleted file mode 100644 index 9203aa9d8..000000000 --- a/examples/realtime-video/dist/assets/index-643462ad.js +++ /dev/null @@ -1,210 +0,0 @@ -var Ty=Object.defineProperty;var vy=(o,s,_)=>s in o?Ty(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_;var On=(o,s,_)=>(vy(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 global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs$1(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}function getAugmentedNamespace(o){if(o.__esModule)return o;var s=o.default;if(typeof s=="function"){var _=function j(){return this instanceof j?Reflect.construct(s,arguments,this.constructor):s.apply(this,arguments)};_.prototype=s.prototype}else _={};return Object.defineProperty(_,"__esModule",{value:!0}),Object.keys(o).forEach(function(j){var $=Object.getOwnPropertyDescriptor(o,j);Object.defineProperty(_,j,$.get?$:{enumerable:!0,get:function(){return o[j]}})}),_}var jsxRuntime={exports:{}},reactJsxRuntime_production_min={},react={exports:{}},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,zt=Jt[jt];if(0<$(zt,Zt))Jt[jt]=Zt,Jt[Vt]=zt,Vt=jt;else break e}}function _(Jt){return Jt.length===0?null:Jt[0]}function j(Jt){if(Jt.length===0)return null;var Zt=Jt[0],Vt=Jt.pop();if(Vt!==Zt){Jt[0]=Vt;e:for(var jt=0,zt=Jt.length,$t=zt>>>1;jt<$t;){var nn=2*(jt+1)-1,rn=Jt[nn],Dt=nn+1,wt=Jt[Dt];if(0>$(rn,Vt))Dt$(wt,rn)?(Jt[jt]=wt,Jt[Dt]=Vt,jt=Dt):(Jt[jt]=rn,Jt[nn]=Vt,jt=nn);else if(Dt$(wt,Vt))Jt[jt]=wt,Jt[Dt]=Vt,jt=Dt;else break e}}return Zt}function $(Jt,Zt){var Vt=Jt.sortIndex-Zt.sortIndex;return Vt!==0?Vt:Jt.id-Zt.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=[],ot=1,ut=null,dt=3,Ut=!1,st=!1,ct=!1,pt=typeof setTimeout=="function"?setTimeout:null,Bt=typeof clearTimeout=="function"?clearTimeout:null,Qt=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function gt(Jt){for(var Zt=_(rt);Zt!==null;){if(Zt.callback===null)j(rt);else if(Zt.startTime<=Jt)j(rt),Zt.sortIndex=Zt.expirationTime,s(nt,Zt);else break;Zt=_(rt)}}function ft(Jt){if(ct=!1,gt(Jt),!st)if(_(nt)!==null)st=!0,Wt(Ft);else{var Zt=_(rt);Zt!==null&&bt(ft,Zt.startTime-Jt)}}function Ft(Jt,Zt){st=!1,ct&&(ct=!1,Bt(xt),xt=-1),Ut=!0;var Vt=dt;try{for(gt(Zt),ut=_(nt);ut!==null&&(!(ut.expirationTime>Zt)||Jt&&!It());){var jt=ut.callback;if(typeof jt=="function"){ut.callback=null,dt=ut.priorityLevel;var zt=jt(ut.expirationTime<=Zt);Zt=o.unstable_now(),typeof zt=="function"?ut.callback=zt:ut===_(nt)&&j(nt),gt(Zt)}else j(nt);ut=_(nt)}if(ut!==null)var $t=!0;else{var nn=_(rt);nn!==null&&bt(ft,nn.startTime-Zt),$t=!1}return $t}finally{ut=null,dt=Vt,Ut=!1}}var yt=!1,Ct=null,xt=-1,ht=5,mt=-1;function It(){return!(o.unstable_now()-mtJt||125jt?(Jt.sortIndex=Vt,s(rt,Jt),_(nt)===null&&Jt===_(rt)&&(ct?(Bt(xt),xt=-1):ct=!0,bt(ft,Vt-jt))):(Jt.sortIndex=zt,s(nt,Jt),st||Ut||(st=!0,Wt(Ft))),Jt},o.unstable_shouldYield=It,o.unstable_wrapCallback=function(Jt){var Zt=dt;return function(){var Vt=dt;dt=Zt;try{return Jt.apply(this,arguments)}finally{dt=Vt}}}})(scheduler_production_min);scheduler.exports=scheduler_production_min;var schedulerExports=scheduler.exports;/** - * @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$1(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$1(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=_.ref,o!==null&&typeof o!="function"&&typeof o!="object"){if(_._owner){if(_=_._owner,_){if(_.tag!==1)throw Error(p$1(309));var j=_.stateNode}if(!j)throw Error(p$1(147,o));var $=j,_e=""+o;return s!==null&&s.ref!==null&&typeof s.ref=="function"&&s.ref._stringRef===_e?s.ref:(s=function(et){var tt=$.refs;et===null?delete tt[_e]:tt[_e]=et},s._stringRef=_e,s)}if(typeof o!="string")throw Error(p$1(284));if(!_._owner)throw Error(p$1(290,o))}return o}function Mg(o,s){throw o=Object.prototype.toString.call(s),Error(p$1(31,o==="[object Object]"?"object with keys {"+Object.keys(s).join(", ")+"}":o))}function Ng(o){var s=o._init;return s(o._payload)}function Og(o){function s(Bt,Qt){if(o){var gt=Bt.deletions;gt===null?(Bt.deletions=[Qt],Bt.flags|=16):gt.push(Qt)}}function _(Bt,Qt){if(!o)return null;for(;Qt!==null;)s(Bt,Qt),Qt=Qt.sibling;return null}function j(Bt,Qt){for(Bt=new Map;Qt!==null;)Qt.key!==null?Bt.set(Qt.key,Qt):Bt.set(Qt.index,Qt),Qt=Qt.sibling;return Bt}function $(Bt,Qt){return Bt=Pg(Bt,Qt),Bt.index=0,Bt.sibling=null,Bt}function _e(Bt,Qt,gt){return Bt.index=gt,o?(gt=Bt.alternate,gt!==null?(gt=gt.index,gtxt?(ht=Ct,Ct=null):ht=Ct.sibling;var mt=dt(Bt,Ct,gt[xt],ft);if(mt===null){Ct===null&&(Ct=ht);break}o&&Ct&&mt.alternate===null&&s(Bt,Ct),Qt=_e(mt,Qt,xt),yt===null?Ft=mt:yt.sibling=mt,yt=mt,Ct=ht}if(xt===gt.length)return _(Bt,Ct),I&&tg(Bt,xt),Ft;if(Ct===null){for(;xtxt?(ht=Ct,Ct=null):ht=Ct.sibling;var It=dt(Bt,Ct,mt.value,ft);if(It===null){Ct===null&&(Ct=ht);break}o&&Ct&&It.alternate===null&&s(Bt,Ct),Qt=_e(It,Qt,xt),yt===null?Ft=It:yt.sibling=It,yt=It,Ct=ht}if(mt.done)return _(Bt,Ct),I&&tg(Bt,xt),Ft;if(Ct===null){for(;!mt.done;xt++,mt=gt.next())mt=ut(Bt,mt.value,ft),mt!==null&&(Qt=_e(mt,Qt,xt),yt===null?Ft=mt:yt.sibling=mt,yt=mt);return I&&tg(Bt,xt),Ft}for(Ct=j(Bt,Ct);!mt.done;xt++,mt=gt.next())mt=Ut(Ct,Bt,xt,mt.value,ft),mt!==null&&(o&&mt.alternate!==null&&Ct.delete(mt.key===null?xt:mt.key),Qt=_e(mt,Qt,xt),yt===null?Ft=mt:yt.sibling=mt,yt=mt);return o&&Ct.forEach(function(vt){return s(Bt,vt)}),I&&tg(Bt,xt),Ft}function pt(Bt,Qt,gt,ft){if(typeof gt=="object"&>!==null&>.type===ya&>.key===null&&(gt=gt.props.children),typeof gt=="object"&>!==null){switch(gt.$$typeof){case va:e:{for(var Ft=gt.key,yt=Qt;yt!==null;){if(yt.key===Ft){if(Ft=gt.type,Ft===ya){if(yt.tag===7){_(Bt,yt.sibling),Qt=$(yt,gt.props.children),Qt.return=Bt,Bt=Qt;break e}}else if(yt.elementType===Ft||typeof Ft=="object"&&Ft!==null&&Ft.$$typeof===Ha&&Ng(Ft)===yt.type){_(Bt,yt.sibling),Qt=$(yt,gt.props),Qt.ref=Lg(Bt,yt,gt),Qt.return=Bt,Bt=Qt;break e}_(Bt,yt);break}else s(Bt,yt);yt=yt.sibling}gt.type===ya?(Qt=Tg(gt.props.children,Bt.mode,ft,gt.key),Qt.return=Bt,Bt=Qt):(ft=Rg(gt.type,gt.key,gt.props,null,Bt.mode,ft),ft.ref=Lg(Bt,Qt,gt),ft.return=Bt,Bt=ft)}return et(Bt);case wa:e:{for(yt=gt.key;Qt!==null;){if(Qt.key===yt)if(Qt.tag===4&&Qt.stateNode.containerInfo===gt.containerInfo&&Qt.stateNode.implementation===gt.implementation){_(Bt,Qt.sibling),Qt=$(Qt,gt.children||[]),Qt.return=Bt,Bt=Qt;break e}else{_(Bt,Qt);break}else s(Bt,Qt);Qt=Qt.sibling}Qt=Sg(gt,Bt.mode,ft),Qt.return=Bt,Bt=Qt}return et(Bt);case Ha:return yt=gt._init,pt(Bt,Qt,yt(gt._payload),ft)}if(eb(gt))return st(Bt,Qt,gt,ft);if(Ka(gt))return ct(Bt,Qt,gt,ft);Mg(Bt,gt)}return typeof gt=="string"&>!==""||typeof gt=="number"?(gt=""+gt,Qt!==null&&Qt.tag===6?(_(Bt,Qt.sibling),Qt=$(Qt,gt),Qt.return=Bt,Bt=Qt):(_(Bt,Qt),Qt=Qg(gt,Bt.mode,ft),Qt.return=Bt,Bt=Qt),et(Bt)):_(Bt,Qt)}return pt}var Ug=Og(!0),Vg=Og(!1),Wg=Uf(null),Xg=null,Yg=null,Zg=null;function $g(){Zg=Yg=Xg=null}function ah(o){var s=Wg.current;E(Wg),o._currentValue=s}function bh(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 ch(o,s){Xg=o,Zg=Yg=null,o=o.dependencies,o!==null&&o.firstContext!==null&&(o.lanes&s&&(dh=!0),o.firstContext=null)}function eh(o){var s=o._currentValue;if(Zg!==o)if(o={context:o,memoizedValue:s,next:null},Yg===null){if(Xg===null)throw Error(p$1(308));Yg=o,Xg.dependencies={lanes:0,firstContext:o}}else Yg=Yg.next=o;return s}var fh=null;function gh(o){fh===null?fh=[o]:fh.push(o)}function hh(o,s,_,j){var $=s.interleaved;return $===null?(_.next=_,gh(s)):(_.next=$.next,$.next=_),s.interleaved=_,ih(o,j)}function ih(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 jh=!1;function kh(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function lh(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 mh(o,s){return{eventTime:o,lane:s,tag:0,payload:null,callback:null,next:null}}function nh(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,ih(o,_)}return $=j.interleaved,$===null?(s.next=s,gh(j)):(s.next=$.next,$.next=s),j.interleaved=s,ih(o,_)}function oh(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 ph(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 qh(o,s,_,j){var $=o.updateQueue;jh=!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 ot=o.alternate;ot!==null&&(ot=ot.updateQueue,tt=ot.lastBaseUpdate,tt!==et&&(tt===null?ot.firstBaseUpdate=rt:tt.next=rt,ot.lastBaseUpdate=nt))}if(_e!==null){var ut=$.baseState;et=0,ot=rt=nt=null,tt=_e;do{var dt=tt.lane,Ut=tt.eventTime;if((j&dt)===dt){ot!==null&&(ot=ot.next={eventTime:Ut,lane:0,tag:tt.tag,payload:tt.payload,callback:tt.callback,next:null});e:{var st=o,ct=tt;switch(dt=s,Ut=_,ct.tag){case 1:if(st=ct.payload,typeof st=="function"){ut=st.call(Ut,ut,dt);break e}ut=st;break e;case 3:st.flags=st.flags&-65537|128;case 0:if(st=ct.payload,dt=typeof st=="function"?st.call(Ut,ut,dt):st,dt==null)break e;ut=A$1({},ut,dt);break e;case 2:jh=!0}}tt.callback!==null&&tt.lane!==0&&(o.flags|=64,dt=$.effects,dt===null?$.effects=[tt]:dt.push(tt))}else Ut={eventTime:Ut,lane:dt,tag:tt.tag,payload:tt.payload,callback:tt.callback,next:null},ot===null?(rt=ot=Ut,nt=ut):ot=ot.next=Ut,et|=dt;if(tt=tt.next,tt===null){if(tt=$.shared.pending,tt===null)break;dt=tt,tt=dt.next,dt.next=null,$.lastBaseUpdate=dt,$.shared.pending=null}}while(1);if(ot===null&&(nt=ut),$.baseState=nt,$.firstBaseUpdate=rt,$.lastBaseUpdate=ot,s=$.shared.interleaved,s!==null){$=s;do et|=$.lane,$=$.next;while($!==s)}else _e===null&&($.shared.lanes=0);rh|=et,o.lanes=et,o.memoizedState=ut}}function sh(o,s,_){if(o=s.effects,s.effects=null,o!==null)for(s=0;s_?_:4,o(!0);var j=Gh.transition;Gh.transition={};try{o(!1),s()}finally{C=_,Gh.transition=j}}function wi(){return Uh().memoizedState}function xi(o,s,_){var j=yi(o);if(_={lane:j,action:_,hasEagerState:!1,eagerState:null,next:null},zi(o))Ai(s,_);else if(_=hh(o,s,_,j),_!==null){var $=R();gi(_,o,j,$),Bi(_,s,j)}}function ii(o,s,_){var j=yi(o),$={lane:j,action:_,hasEagerState:!1,eagerState:null,next:null};if(zi(o))Ai(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=$,gh(s)):($.next=nt.next,nt.next=$),s.interleaved=$;return}}catch{}finally{}_=hh(o,s,$,j),_!==null&&($=R(),gi(_,o,j,$),Bi(_,s,j))}}function zi(o){var s=o.alternate;return o===M||s!==null&&s===M}function Ai(o,s){Jh=Ih=!0;var _=o.pending;_===null?s.next=s:(s.next=_.next,_.next=s),o.pending=s}function Bi(o,s,_){if(_&4194240){var j=s.lanes;j&=o.pendingLanes,_|=j,s.lanes=_,Cc(o,_)}}var Rh={readContext:eh,useCallback:P,useContext:P,useEffect:P,useImperativeHandle:P,useInsertionEffect:P,useLayoutEffect:P,useMemo:P,useReducer:P,useRef:P,useState:P,useDebugValue:P,useDeferredValue:P,useTransition:P,useMutableSource:P,useSyncExternalStore:P,useId:P,unstable_isNewReconciler:!1},Oh={readContext:eh,useCallback:function(o,s){return Th().memoizedState=[o,s===void 0?null:s],o},useContext:eh,useEffect:mi,useImperativeHandle:function(o,s,_){return _=_!=null?_.concat([o]):null,ki(4194308,4,pi.bind(null,s,o),_)},useLayoutEffect:function(o,s){return ki(4194308,4,o,s)},useInsertionEffect:function(o,s){return ki(4,2,o,s)},useMemo:function(o,s){var _=Th();return s=s===void 0?null:s,o=o(),_.memoizedState=[o,s],o},useReducer:function(o,s,_){var j=Th();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=xi.bind(null,M,o),[j.memoizedState,o]},useRef:function(o){var s=Th();return o={current:o},s.memoizedState=o},useState:hi,useDebugValue:ri,useDeferredValue:function(o){return Th().memoizedState=o},useTransition:function(){var o=hi(!1),s=o[0];return o=vi.bind(null,o[1]),Th().memoizedState=o,[s,o]},useMutableSource:function(){},useSyncExternalStore:function(o,s,_){var j=M,$=Th();if(I){if(_===void 0)throw Error(p$1(407));_=_()}else{if(_=s(),Q===null)throw Error(p$1(349));Hh&30||di(j,s,_)}$.memoizedState=_;var _e={value:_,getSnapshot:s};return $.queue=_e,mi(ai.bind(null,j,_e,o),[o]),j.flags|=2048,bi(9,ci.bind(null,j,_e,_,s),void 0,null),_},useId:function(){var o=Th(),s=Q.identifierPrefix;if(I){var _=sg,j=rg;_=(j&~(1<<32-oc(j)-1)).toString(32)+_,s=":"+s+"R"+_,_=Kh++,0<_&&(s+="H"+_.toString(32)),s+=":"}else _=Lh++,s=":"+s+"r"+_.toString(32)+":";return o.memoizedState=s},unstable_isNewReconciler:!1},Ph={readContext:eh,useCallback:si,useContext:eh,useEffect:$h,useImperativeHandle:qi,useInsertionEffect:ni,useLayoutEffect:oi,useMemo:ti,useReducer:Wh,useRef:ji,useState:function(){return Wh(Vh)},useDebugValue:ri,useDeferredValue:function(o){var s=Uh();return ui(s,N.memoizedState,o)},useTransition:function(){var o=Wh(Vh)[0],s=Uh().memoizedState;return[o,s]},useMutableSource:Yh,useSyncExternalStore:Zh,useId:wi,unstable_isNewReconciler:!1},Qh={readContext:eh,useCallback:si,useContext:eh,useEffect:$h,useImperativeHandle:qi,useInsertionEffect:ni,useLayoutEffect:oi,useMemo:ti,useReducer:Xh,useRef:ji,useState:function(){return Xh(Vh)},useDebugValue:ri,useDeferredValue:function(o){var s=Uh();return N===null?s.memoizedState=o:ui(s,N.memoizedState,o)},useTransition:function(){var o=Xh(Vh)[0],s=Uh().memoizedState;return[o,s]},useMutableSource:Yh,useSyncExternalStore:Zh,useId:wi,unstable_isNewReconciler:!1};function Ci(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}function Di(o,s,_,j){s=o.memoizedState,_=_(j,s),_=_==null?s:A$1({},s,_),o.memoizedState=_,o.lanes===0&&(o.updateQueue.baseState=_)}var Ei={isMounted:function(o){return(o=o._reactInternals)?Vb(o)===o:!1},enqueueSetState:function(o,s,_){o=o._reactInternals;var j=R(),$=yi(o),_e=mh(j,$);_e.payload=s,_!=null&&(_e.callback=_),s=nh(o,_e,$),s!==null&&(gi(s,o,$,j),oh(s,o,$))},enqueueReplaceState:function(o,s,_){o=o._reactInternals;var j=R(),$=yi(o),_e=mh(j,$);_e.tag=1,_e.payload=s,_!=null&&(_e.callback=_),s=nh(o,_e,$),s!==null&&(gi(s,o,$,j),oh(s,o,$))},enqueueForceUpdate:function(o,s){o=o._reactInternals;var _=R(),j=yi(o),$=mh(_,j);$.tag=2,s!=null&&($.callback=s),s=nh(o,$,j),s!==null&&(gi(s,o,j,_),oh(s,o,j))}};function Fi(o,s,_,j,$,_e,et){return o=o.stateNode,typeof o.shouldComponentUpdate=="function"?o.shouldComponentUpdate(j,_e,et):s.prototype&&s.prototype.isPureReactComponent?!Ie(_,j)||!Ie($,_e):!0}function Gi(o,s,_){var j=!1,$=Vf,_e=s.contextType;return typeof _e=="object"&&_e!==null?_e=eh(_e):($=Zf(s)?Xf:H.current,j=s.contextTypes,_e=(j=j!=null)?Yf(o,$):Vf),s=new s(_,_e),o.memoizedState=s.state!==null&&s.state!==void 0?s.state:null,s.updater=Ei,o.stateNode=s,s._reactInternals=o,j&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=$,o.__reactInternalMemoizedMaskedChildContext=_e),s}function Hi(o,s,_,j){o=s.state,typeof s.componentWillReceiveProps=="function"&&s.componentWillReceiveProps(_,j),typeof s.UNSAFE_componentWillReceiveProps=="function"&&s.UNSAFE_componentWillReceiveProps(_,j),s.state!==o&&Ei.enqueueReplaceState(s,s.state,null)}function Ii(o,s,_,j){var $=o.stateNode;$.props=_,$.state=o.memoizedState,$.refs={},kh(o);var _e=s.contextType;typeof _e=="object"&&_e!==null?$.context=eh(_e):(_e=Zf(s)?Xf:H.current,$.context=Yf(o,_e)),$.state=o.memoizedState,_e=s.getDerivedStateFromProps,typeof _e=="function"&&(Di(o,s,_e,_),$.state=o.memoizedState),typeof s.getDerivedStateFromProps=="function"||typeof $.getSnapshotBeforeUpdate=="function"||typeof $.UNSAFE_componentWillMount!="function"&&typeof $.componentWillMount!="function"||(s=$.state,typeof $.componentWillMount=="function"&&$.componentWillMount(),typeof $.UNSAFE_componentWillMount=="function"&&$.UNSAFE_componentWillMount(),s!==$.state&&Ei.enqueueReplaceState($,$.state,null),qh(o,_,$,j),$.state=o.memoizedState),typeof $.componentDidMount=="function"&&(o.flags|=4194308)}function Ji(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 Ki(o,s,_){return{value:o,source:null,stack:_??null,digest:s??null}}function Li(o,s){try{console.error(s.value)}catch(_){setTimeout(function(){throw _})}}var Mi=typeof WeakMap=="function"?WeakMap:Map;function Ni(o,s,_){_=mh(-1,_),_.tag=3,_.payload={element:null};var j=s.value;return _.callback=function(){Oi||(Oi=!0,Pi=j),Li(o,s)},_}function Qi(o,s,_){_=mh(-1,_),_.tag=3;var j=o.type.getDerivedStateFromError;if(typeof j=="function"){var $=s.value;_.payload=function(){return j($)},_.callback=function(){Li(o,s)}}var _e=o.stateNode;return _e!==null&&typeof _e.componentDidCatch=="function"&&(_.callback=function(){Li(o,s),typeof j!="function"&&(Ri===null?Ri=new Set([this]):Ri.add(this));var et=s.stack;this.componentDidCatch(s.value,{componentStack:et!==null?et:""})}),_}function Si(o,s,_){var j=o.pingCache;if(j===null){j=o.pingCache=new Mi;var $=new Set;j.set(s,$)}else $=j.get(s),$===void 0&&($=new Set,j.set(s,$));$.has(_)||($.add(_),o=Ti.bind(null,o,s,_),s.then(o,o))}function Ui(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 Vi(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=mh(-1,1),s.tag=2,nh(_,s,1))),_.lanes|=1),o)}var Wi=ua$1.ReactCurrentOwner,dh=!1;function Xi(o,s,_,j){s.child=o===null?Vg(s,null,_,j):Ug(s,o.child,_,j)}function Yi(o,s,_,j,$){_=_.render;var _e=s.ref;return ch(s,$),j=Nh(o,s,_,j,_e,$),_=Sh(),o!==null&&!dh?(s.updateQueue=o.updateQueue,s.flags&=-2053,o.lanes&=~$,Zi(o,s,$)):(I&&_&&vg(s),s.flags|=1,Xi(o,s,j,$),s.child)}function $i(o,s,_,j,$){if(o===null){var _e=_.type;return typeof _e=="function"&&!aj(_e)&&_e.defaultProps===void 0&&_.compare===null&&_.defaultProps===void 0?(s.tag=15,s.type=_e,bj(o,s,_e,j,$)):(o=Rg(_.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 Zi(o,s,$)}return s.flags|=1,o=Pg(_e,j),o.ref=s.ref,o.return=s,s.child=o}function bj(o,s,_,j,$){if(o!==null){var _e=o.memoizedProps;if(Ie(_e,j)&&o.ref===s.ref)if(dh=!1,s.pendingProps=j=_e,(o.lanes&$)!==0)o.flags&131072&&(dh=!0);else return s.lanes=o.lanes,Zi(o,s,$)}return cj(o,s,_,j,$)}function dj(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(ej,fj),fj|=_;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(ej,fj),fj|=o,null;s.memoizedState={baseLanes:0,cachePool:null,transitions:null},j=_e!==null?_e.baseLanes:_,G(ej,fj),fj|=j}else _e!==null?(j=_e.baseLanes|_,s.memoizedState=null):j=_,G(ej,fj),fj|=j;return Xi(o,s,$,_),s.child}function gj(o,s){var _=s.ref;(o===null&&_!==null||o!==null&&o.ref!==_)&&(s.flags|=512,s.flags|=2097152)}function cj(o,s,_,j,$){var _e=Zf(_)?Xf:H.current;return _e=Yf(s,_e),ch(s,$),_=Nh(o,s,_,j,_e,$),j=Sh(),o!==null&&!dh?(s.updateQueue=o.updateQueue,s.flags&=-2053,o.lanes&=~$,Zi(o,s,$)):(I&&j&&vg(s),s.flags|=1,Xi(o,s,_,$),s.child)}function hj(o,s,_,j,$){if(Zf(_)){var _e=!0;cg(s)}else _e=!1;if(ch(s,$),s.stateNode===null)ij(o,s),Gi(s,_,j),Ii(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=eh(rt):(rt=Zf(_)?Xf:H.current,rt=Yf(s,rt));var ot=_.getDerivedStateFromProps,ut=typeof ot=="function"||typeof et.getSnapshotBeforeUpdate=="function";ut||typeof et.UNSAFE_componentWillReceiveProps!="function"&&typeof et.componentWillReceiveProps!="function"||(tt!==j||nt!==rt)&&Hi(s,et,j,rt),jh=!1;var dt=s.memoizedState;et.state=dt,qh(s,j,et,$),nt=s.memoizedState,tt!==j||dt!==nt||Wf.current||jh?(typeof ot=="function"&&(Di(s,_,ot,j),nt=s.memoizedState),(tt=jh||Fi(s,_,tt,j,dt,nt,rt))?(ut||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,lh(o,s),tt=s.memoizedProps,rt=s.type===s.elementType?tt:Ci(s.type,tt),et.props=rt,ut=s.pendingProps,dt=et.context,nt=_.contextType,typeof nt=="object"&&nt!==null?nt=eh(nt):(nt=Zf(_)?Xf:H.current,nt=Yf(s,nt));var Ut=_.getDerivedStateFromProps;(ot=typeof Ut=="function"||typeof et.getSnapshotBeforeUpdate=="function")||typeof et.UNSAFE_componentWillReceiveProps!="function"&&typeof et.componentWillReceiveProps!="function"||(tt!==ut||dt!==nt)&&Hi(s,et,j,nt),jh=!1,dt=s.memoizedState,et.state=dt,qh(s,j,et,$);var st=s.memoizedState;tt!==ut||dt!==st||Wf.current||jh?(typeof Ut=="function"&&(Di(s,_,Ut,j),st=s.memoizedState),(rt=jh||Fi(s,_,rt,j,dt,st,nt)||!1)?(ot||typeof et.UNSAFE_componentWillUpdate!="function"&&typeof et.componentWillUpdate!="function"||(typeof et.componentWillUpdate=="function"&&et.componentWillUpdate(j,st,nt),typeof et.UNSAFE_componentWillUpdate=="function"&&et.UNSAFE_componentWillUpdate(j,st,nt)),typeof et.componentDidUpdate=="function"&&(s.flags|=4),typeof et.getSnapshotBeforeUpdate=="function"&&(s.flags|=1024)):(typeof et.componentDidUpdate!="function"||tt===o.memoizedProps&&dt===o.memoizedState||(s.flags|=4),typeof et.getSnapshotBeforeUpdate!="function"||tt===o.memoizedProps&&dt===o.memoizedState||(s.flags|=1024),s.memoizedProps=j,s.memoizedState=st),et.props=j,et.state=st,et.context=nt,j=rt):(typeof et.componentDidUpdate!="function"||tt===o.memoizedProps&&dt===o.memoizedState||(s.flags|=4),typeof et.getSnapshotBeforeUpdate!="function"||tt===o.memoizedProps&&dt===o.memoizedState||(s.flags|=1024),j=!1)}return jj(o,s,_,j,_e,$)}function jj(o,s,_,j,$,_e){gj(o,s);var et=(s.flags&128)!==0;if(!j&&!et)return $&&dg(s,_,!1),Zi(o,s,_e);j=s.stateNode,Wi.current=s;var tt=et&&typeof _.getDerivedStateFromError!="function"?null:j.render();return s.flags|=1,o!==null&&et?(s.child=Ug(s,o.child,null,_e),s.child=Ug(s,null,tt,_e)):Xi(o,s,tt,_e),s.memoizedState=j.state,$&&dg(s,_,!0),s.child}function kj(o){var s=o.stateNode;s.pendingContext?ag(o,s.pendingContext,s.pendingContext!==s.context):s.context&&ag(o,s.context,!1),yh(o,s.containerInfo)}function lj(o,s,_,j,$){return Ig(),Jg($),s.flags|=256,Xi(o,s,_,j),s.child}var mj={dehydrated:null,treeContext:null,retryLane:0};function nj(o){return{baseLanes:o,cachePool:null,transitions:null}}function oj(o,s,_){var j=s.pendingProps,$=L.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(L,$&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=pj(et,j,0,null),o=Tg(o,j,_,null),_e.return=s,o.return=s,_e.sibling=o,s.child=_e,s.child.memoizedState=nj(_),s.memoizedState=mj,o):qj(s,et));if($=o.memoizedState,$!==null&&(tt=$.dehydrated,tt!==null))return rj(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=Pg($,nt),j.subtreeFlags=$.subtreeFlags&14680064),tt!==null?_e=Pg(tt,_e):(_e=Tg(_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?nj(_):{baseLanes:et.baseLanes|_,cachePool:null,transitions:et.transitions},_e.memoizedState=et,_e.childLanes=o.childLanes&~_,s.memoizedState=mj,j}return _e=o.child,o=_e.sibling,j=Pg(_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 qj(o,s){return s=pj({mode:"visible",children:s},o.mode,0,null),s.return=o,o.child=s}function sj(o,s,_,j){return j!==null&&Jg(j),Ug(s,o.child,null,_),o=qj(s,s.pendingProps.children),o.flags|=2,s.memoizedState=null,o}function rj(o,s,_,j,$,_e,et){if(_)return s.flags&256?(s.flags&=-257,j=Ki(Error(p$1(422))),sj(o,s,et,j)):s.memoizedState!==null?(s.child=o.child,s.flags|=128,null):(_e=j.fallback,$=s.mode,j=pj({mode:"visible",children:j.children},$,0,null),_e=Tg(_e,$,et,null),_e.flags|=2,j.return=s,_e.return=s,j.sibling=_e,s.child=j,s.mode&1&&Ug(s,o.child,null,et),s.child.memoizedState=nj(et),s.memoizedState=mj,_e);if(!(s.mode&1))return sj(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=Ki(_e,j,void 0),sj(o,s,et,j)}if(tt=(et&o.childLanes)!==0,dh||tt){if(j=Q,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=$,ih(o,$),gi(j,o,$,-1))}return tj(),j=Ki(Error(p$1(421))),sj(o,s,et,j)}return $.data==="$?"?(s.flags|=128,s.child=o.child,s=uj.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=qj(s,j.children),s.flags|=4096,s)}function vj(o,s,_){o.lanes|=s;var j=o.alternate;j!==null&&(j.lanes|=s),bh(o.return,s,_)}function wj(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 xj(o,s,_){var j=s.pendingProps,$=j.revealOrder,_e=j.tail;if(Xi(o,s,j.children,_),j=L.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&&vj(o,_,s);else if(o.tag===19)vj(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(L,j),!(s.mode&1))s.memoizedState=null;else switch($){case"forwards":for(_=s.child,$=null;_!==null;)o=_.alternate,o!==null&&Ch(o)===null&&($=_),_=_.sibling;_=$,_===null?($=s.child,s.child=null):($=_.sibling,_.sibling=null),wj(s,!1,$,_,_e);break;case"backwards":for(_=null,$=s.child,s.child=null;$!==null;){if(o=$.alternate,o!==null&&Ch(o)===null){s.child=$;break}o=$.sibling,$.sibling=_,_=$,$=o}wj(s,!0,_,null,_e);break;case"together":wj(s,!1,null,null,void 0);break;default:s.memoizedState=null}return s.child}function ij(o,s){!(s.mode&1)&&o!==null&&(o.alternate=null,s.alternate=null,s.flags|=2)}function Zi(o,s,_){if(o!==null&&(s.dependencies=o.dependencies),rh|=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,_=Pg(o,o.pendingProps),s.child=_,_.return=s;o.sibling!==null;)o=o.sibling,_=_.sibling=Pg(o,o.pendingProps),_.return=s;_.sibling=null}return s.child}function yj(o,s,_){switch(s.tag){case 3:kj(s),Ig();break;case 5:Ah(s);break;case 1:Zf(s.type)&&cg(s);break;case 4:yh(s,s.stateNode.containerInfo);break;case 10:var j=s.type._context,$=s.memoizedProps.value;G(Wg,j._currentValue),j._currentValue=$;break;case 13:if(j=s.memoizedState,j!==null)return j.dehydrated!==null?(G(L,L.current&1),s.flags|=128,null):_&s.child.childLanes?oj(o,s,_):(G(L,L.current&1),o=Zi(o,s,_),o!==null?o.sibling:null);G(L,L.current&1);break;case 19:if(j=(_&s.childLanes)!==0,o.flags&128){if(j)return xj(o,s,_);s.flags|=128}if($=s.memoizedState,$!==null&&($.rendering=null,$.tail=null,$.lastEffect=null),G(L,L.current),j)break;return null;case 22:case 23:return s.lanes=0,dj(o,s,_)}return Zi(o,s,_)}var zj,Aj,Bj,Cj;zj=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}};Aj=function(){};Bj=function(o,s,_,j){var $=o.memoizedProps;if($!==j){o=s.stateNode,xh(uh.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)}};Cj=function(o,s,_,j){_!==j&&(s.flags|=4)};function Dj(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 Ej(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,zh(),E(Wf),E(H),Eh(),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&&(Fj(zg),zg=null))),Aj(o,s),S(s),null;case 5:Bh(s);var $=xh(wh.current);if(_=s.type,o!==null&&s.stateNode!=null)Bj(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=xh(uh.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,zj(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;$Gj&&(s.flags|=128,j=!0,Dj(_e,!1),s.lanes=4194304)}else{if(!j)if(o=Ch(et),o!==null){if(s.flags|=128,j=!0,_=o.updateQueue,_!==null&&(s.updateQueue=_,s.flags|=4),Dj(_e,!0),_e.tail===null&&_e.tailMode==="hidden"&&!et.alternate&&!I)return S(s),null}else 2*B()-_e.renderingStartTime>Gj&&_!==1073741824&&(s.flags|=128,j=!0,Dj(_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,_=L.current,G(L,j?_&1|2:_&1),s):(S(s),null);case 22:case 23:return Hj(),j=s.memoizedState!==null,o!==null&&o.memoizedState!==null!==j&&(s.flags|=8192),j&&s.mode&1?fj&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 Ij(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 zh(),E(Wf),E(H),Eh(),o=s.flags,o&65536&&!(o&128)?(s.flags=o&-65537|128,s):null;case 5:return Bh(s),null;case 13:if(E(L),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(L),null;case 4:return zh(),null;case 10:return ah(s.type._context),null;case 22:case 23:return Hj(),null;case 24:return null;default:return null}}var Jj=!1,U=!1,Kj=typeof WeakSet=="function"?WeakSet:Set,V=null;function Lj(o,s){var _=o.ref;if(_!==null)if(typeof _=="function")try{_(null)}catch(j){W(o,s,j)}else _.current=null}function Mj(o,s,_){try{_()}catch(j){W(o,s,j)}}var Nj=!1;function Oj(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,ot=0,ut=o,dt=null;t:for(;;){for(var Ut;ut!==_||$!==0&&ut.nodeType!==3||(tt=et+$),ut!==_e||j!==0&&ut.nodeType!==3||(nt=et+j),ut.nodeType===3&&(et+=ut.nodeValue.length),(Ut=ut.firstChild)!==null;)dt=ut,ut=Ut;for(;;){if(ut===o)break t;if(dt===_&&++rt===$&&(tt=et),dt===_e&&++ot===j&&(nt=et),(Ut=ut.nextSibling)!==null)break;ut=dt,dt=ut.parentNode}ut=Ut}_=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 st=s.alternate;if(s.flags&1024)switch(s.tag){case 0:case 11:case 15:break;case 1:if(st!==null){var ct=st.memoizedProps,pt=st.memoizedState,Bt=s.stateNode,Qt=Bt.getSnapshotBeforeUpdate(s.elementType===s.type?ct:Ci(s.type,ct),pt);Bt.__reactInternalSnapshotBeforeUpdate=Qt}break;case 3:var gt=s.stateNode.containerInfo;gt.nodeType===1?gt.textContent="":gt.nodeType===9&>.documentElement&>.removeChild(gt.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p$1(163))}}catch(ft){W(s,s.return,ft)}if(o=s.sibling,o!==null){o.return=s.return,V=o;break}V=s.return}return st=Nj,Nj=!1,st}function Pj(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&&Mj(s,_,_e)}$=$.next}while($!==j)}}function Qj(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 Rj(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 Sj(o){var s=o.alternate;s!==null&&(o.alternate=null,Sj(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 Tj(o){return o.tag===5||o.tag===3||o.tag===4}function Uj(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||Tj(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 Vj(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(Vj(o,s,_),o=o.sibling;o!==null;)Vj(o,s,_),o=o.sibling}function Wj(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(Wj(o,s,_),o=o.sibling;o!==null;)Wj(o,s,_),o=o.sibling}var X=null,Xj=!1;function Yj(o,s,_){for(_=_.child;_!==null;)Zj(o,s,_),_=_.sibling}function Zj(o,s,_){if(lc&&typeof lc.onCommitFiberUnmount=="function")try{lc.onCommitFiberUnmount(kc,_)}catch{}switch(_.tag){case 5:U||Lj(_,s);case 6:var j=X,$=Xj;X=null,Yj(o,s,_),X=j,Xj=$,X!==null&&(Xj?(o=X,_=_.stateNode,o.nodeType===8?o.parentNode.removeChild(_):o.removeChild(_)):X.removeChild(_.stateNode));break;case 18:X!==null&&(Xj?(o=X,_=_.stateNode,o.nodeType===8?Kf(o.parentNode,_):o.nodeType===1&&Kf(o,_),bd(o)):Kf(X,_.stateNode));break;case 4:j=X,$=Xj,X=_.stateNode.containerInfo,Xj=!0,Yj(o,s,_),X=j,Xj=$;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)&&Mj(_,s,et),$=$.next}while($!==j)}Yj(o,s,_);break;case 1:if(!U&&(Lj(_,s),j=_.stateNode,typeof j.componentWillUnmount=="function"))try{j.props=_.memoizedProps,j.state=_.memoizedState,j.componentWillUnmount()}catch(tt){W(_,s,tt)}Yj(o,s,_);break;case 21:Yj(o,s,_);break;case 22:_.mode&1?(U=(j=U)||_.memoizedState!==null,Yj(o,s,_),U=j):Yj(o,s,_);break;default:Yj(o,s,_)}}function ak(o){var s=o.updateQueue;if(s!==null){o.updateQueue=null;var _=o.stateNode;_===null&&(_=o.stateNode=new Kj),s.forEach(function(j){var $=bk.bind(null,o,j);_.has(j)||(_.add(j),j.then($,$))})}}function ck(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,Xj=!1;break e;case 3:X=tt.stateNode.containerInfo,Xj=!0;break e;case 4:X=tt.stateNode.containerInfo,Xj=!0;break e}tt=tt.return}if(X===null)throw Error(p$1(160));Zj(_e,et,$),X=null,Xj=!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;)dk(s,o),s=s.sibling}function dk(o,s){var _=o.alternate,j=o.flags;switch(o.tag){case 0:case 11:case 14:case 15:if(ck(s,o),ek(o),j&4){try{Pj(3,o,o.return),Qj(3,o)}catch(ct){W(o,o.return,ct)}try{Pj(5,o,o.return)}catch(ct){W(o,o.return,ct)}}break;case 1:ck(s,o),ek(o),j&512&&_!==null&&Lj(_,_.return);break;case 5:if(ck(s,o),ek(o),j&512&&_!==null&&Lj(_,_.return),o.flags&32){var $=o.stateNode;try{ob($,"")}catch(ct){W(o,o.return,ct)}}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*lk(j/1960))-j,10o?16:o,wk===null)var j=!1;else{if(o=wk,wk=null,xk=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()-fk?Kk(o,0):rk|=_),Dk(o,s)}function Yk(o,s){s===0&&(o.mode&1?(s=sc,sc<<=1,!(sc&130023424)&&(sc=4194304)):s=1);var _=R();o=ih(o,s),o!==null&&(Ac(o,s,_),Dk(o,_))}function uj(o){var s=o.memoizedState,_=0;s!==null&&(_=s.retryLane),Yk(o,_)}function bk(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),Yk(o,_)}var Vk;Vk=function(o,s,_){if(o!==null)if(o.memoizedProps!==s.pendingProps||Wf.current)dh=!0;else{if(!(o.lanes&_)&&!(s.flags&128))return dh=!1,yj(o,s,_);dh=!!(o.flags&131072)}else dh=!1,I&&s.flags&1048576&&ug(s,ng,s.index);switch(s.lanes=0,s.tag){case 2:var j=s.type;ij(o,s),o=s.pendingProps;var $=Yf(s,H.current);ch(s,_),$=Nh(null,s,j,o,$,_);var _e=Sh();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,kh(s),$.updater=Ei,s.stateNode=$,$._reactInternals=s,Ii(s,j,o,_),s=jj(null,s,j,!0,_e,_)):(s.tag=0,I&&_e&&vg(s),Xi(null,s,$,_),s=s.child),s;case 16:j=s.elementType;e:{switch(ij(o,s),o=s.pendingProps,$=j._init,j=$(j._payload),s.type=j,$=s.tag=Zk(j),o=Ci(j,o),$){case 0:s=cj(null,s,j,o,_);break e;case 1:s=hj(null,s,j,o,_);break e;case 11:s=Yi(null,s,j,o,_);break e;case 14:s=$i(null,s,j,Ci(j.type,o),_);break e}throw Error(p$1(306,j,""))}return s;case 0:return j=s.type,$=s.pendingProps,$=s.elementType===j?$:Ci(j,$),cj(o,s,j,$,_);case 1:return j=s.type,$=s.pendingProps,$=s.elementType===j?$:Ci(j,$),hj(o,s,j,$,_);case 3:e:{if(kj(s),o===null)throw Error(p$1(387));j=s.pendingProps,_e=s.memoizedState,$=_e.element,lh(o,s),qh(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){$=Ji(Error(p$1(423)),s),s=lj(o,s,j,_,$);break e}else if(j!==$){$=Ji(Error(p$1(424)),s),s=lj(o,s,j,_,$);break e}else for(yg=Lf(s.stateNode.containerInfo.firstChild),xg=s,I=!0,zg=null,_=Vg(s,null,j,_),s.child=_;_;)_.flags=_.flags&-3|4096,_=_.sibling;else{if(Ig(),j===$){s=Zi(o,s,_);break e}Xi(o,s,j,_)}s=s.child}return s;case 5:return Ah(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),gj(o,s),Xi(o,s,et,_),s.child;case 6:return o===null&&Eg(s),null;case 13:return oj(o,s,_);case 4:return yh(s,s.stateNode.containerInfo),j=s.pendingProps,o===null?s.child=Ug(s,null,j,_):Xi(o,s,j,_),s.child;case 11:return j=s.type,$=s.pendingProps,$=s.elementType===j?$:Ci(j,$),Yi(o,s,j,$,_);case 7:return Xi(o,s,s.pendingProps,_),s.child;case 8:return Xi(o,s,s.pendingProps.children,_),s.child;case 12:return Xi(o,s,s.pendingProps.children,_),s.child;case 10:e:{if(j=s.type._context,$=s.pendingProps,_e=s.memoizedProps,et=$.value,G(Wg,j._currentValue),j._currentValue=et,_e!==null)if(He(_e.value,et)){if(_e.children===$.children&&!Wf.current){s=Zi(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=mh(-1,_&-_),nt.tag=2;var rt=_e.updateQueue;if(rt!==null){rt=rt.shared;var ot=rt.pending;ot===null?nt.next=nt:(nt.next=ot.next,ot.next=nt),rt.pending=nt}}_e.lanes|=_,nt=_e.alternate,nt!==null&&(nt.lanes|=_),bh(_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|=_),bh(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}Xi(o,s,$.children,_),s=s.child}return s;case 9:return $=s.type,j=s.pendingProps.children,ch(s,_),$=eh($),j=j($),s.flags|=1,Xi(o,s,j,_),s.child;case 14:return j=s.type,$=Ci(j,s.pendingProps),$=Ci(j.type,$),$i(o,s,j,$,_);case 15:return bj(o,s,s.type,s.pendingProps,_);case 17:return j=s.type,$=s.pendingProps,$=s.elementType===j?$:Ci(j,$),ij(o,s),s.tag=1,Zf(j)?(o=!0,cg(s)):o=!1,ch(s,_),Gi(s,j,$),Ii(s,j,$,_),jj(null,s,j,!0,o,_);case 19:return xj(o,s,_);case 22:return dj(o,s,_)}throw Error(p$1(156,s.tag))};function Fk(o,s){return ac(o,s)}function $k(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 $k(o,s,_,j)}function aj(o){return o=o.prototype,!(!o||!o.isReactComponent)}function Zk(o){if(typeof o=="function")return aj(o)?1:0;if(o!=null){if(o=o.$$typeof,o===Da)return 11;if(o===Ga)return 14}return 2}function Pg(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 Rg(o,s,_,j,$,_e){var et=2;if(j=o,typeof o=="function")aj(o)&&(et=1);else if(typeof o=="string")et=5;else e:switch(o){case ya:return Tg(_.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 pj(_,$,_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 Tg(o,s,_,j){return o=Bg(7,o,j,s),o.lanes=_,o}function pj(o,s,_,j){return o=Bg(22,o,j,s),o.elementType=Ia,o.lanes=_,o.stateNode={isHidden:!1},o}function Qg(o,s,_){return o=Bg(6,o,null,s),o.lanes=_,o}function Sg(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 al(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 bl(o,s,_,j,$,_e,et,tt,nt){return o=new al(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},kh(_e),o}function cl(o,s,_){var j=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE)}catch(o){console.error(o)}}checkDCE(),reactDom.exports=reactDom_production_min;var reactDomExports=reactDom.exports,m$1=reactDomExports;client.createRoot=m$1.createRoot,client.hydrateRoot=m$1.hydrateRoot;var isDevelopment$3=!1;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,ot=0,ut=et,dt=0,Ut=0,st=0,ct=1,pt=1,Bt=1,Qt=0,gt="",ft=$,Ft=_e,yt=j,Ct=gt;pt;)switch(st=Qt,Qt=next()){case 40:if(st!=108&&charat(Ct,ut-1)==58){indexof(Ct+=replace(delimit(Qt),"&","&\f"),"&\f")!=-1&&(Bt=-1);break}case 34:case 39:case 91:Ct+=delimit(Qt);break;case 9:case 10:case 13:case 32:Ct+=whitespace(st);break;case 92:Ct+=escaping(caret()-1,7);continue;case 47:switch(peek()){case 42:case 47:append(comment(commenter(next(),caret()),s,_),nt);break;default:Ct+="/"}break;case 123*ct:tt[rt++]=strlen(Ct)*Bt;case 125*ct:case 59:case 0:switch(Qt){case 0:case 125:pt=0;case 59+ot:Bt==-1&&(Ct=replace(Ct,/\f/g,"")),Ut>0&&strlen(Ct)-ut&&append(Ut>32?declaration(Ct+";",j,_,ut-1):declaration(replace(Ct," ","")+";",j,_,ut-2),nt);break;case 59:Ct+=";";default:if(append(yt=ruleset(Ct,s,_,rt,ot,$,tt,gt,ft=[],Ft=[],ut),_e),Qt===123)if(ot===0)parse$1(Ct,s,yt,yt,ft,_e,ut,tt,Ft);else switch(dt===99&&charat(Ct,3)===110?100:dt){case 100:case 108:case 109:case 115:parse$1(o,yt,yt,j&&append(ruleset(o,yt,yt,0,0,$,tt,gt,$,ft=[],ut),Ft),$,Ft,ut,tt,j?ft:Ft);break;default:parse$1(Ct,yt,yt,yt,[""],Ft,0,tt,Ft)}}rt=ot=Ut=0,ct=Bt=1,gt=Ct="",ut=et;break;case 58:ut=1+strlen(Ct),Ut=st;default:if(ct<1){if(Qt==123)--ct;else if(Qt==125&&ct++==0&&prev()==125)continue}switch(Ct+=from$1(Qt),Qt*ct){case 38:Bt=ot>0?1:(Ct+="\f",-1);break;case 44:tt[rt++]=(strlen(Ct)-1)*Bt,Bt=1;break;case 64:peek()===45&&(Ct+=delimit(next())),dt=peek(),ot=ut=strlen(gt=Ct+=identifier(caret())),Qt++;break;case 45:st===45&&strlen(Ct)==2&&(ct=0)}}return _e}function ruleset(o,s,_,j,$,_e,et,tt,nt,rt,ot){for(var ut=$-1,dt=$===0?_e:[""],Ut=sizeof(dt),st=0,ct=0,pt=0;st0?dt[Bt]+" "+Qt:replace(Qt,/&\f/g,dt[Bt])))&&(nt[pt++]=gt);return node(o,s,_,$===0?RULESET:tt,nt,rt,ot)}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(ct){var pt=ct.getAttribute("data-emotion");pt.indexOf(" ")!==-1&&(document.head.appendChild(ct),ct.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(ct){for(var pt=ct.getAttribute("data-emotion").split(" "),Bt=1;Bt=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,aspectRatio: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,scale: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},isDevelopment$2=!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"";var j=_;if(j.__emotion_styles!==void 0)return j;switch(typeof _){case"boolean":return"";case"object":{var $=_;if($.anim===1)return cursor={name:$.name,styles:$.styles,next:cursor},$.name;var _e=_;if(_e.styles!==void 0){var et=_e.next;if(et!==void 0)for(;et!==void 0;)cursor={name:et.name,styles:et.styles,next:cursor},et=et.next;var tt=_e.styles+";";return tt}return createStringFromObject(o,s,_)}case"function":{if(o!==void 0){var nt=cursor,rt=_(o);return cursor=nt,handleInterpolation(o,s,rt)}break}}var ot=_;if(s==null)return ot;var ut=s[ot];return ut!==void 0?ut:ot}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"){var tt=et;s!=null&&s[tt]!==void 0?j+=_e+"{"+s[tt]+"}":isProcessableValue(tt)&&(j+=processStyleName(_e)+":"+processStyleValue(_e,tt)+";")}else{if(_e==="NO_COMPONENT_SELECTOR"&&isDevelopment$2)throw new Error(noComponentSelectorMessage);if(Array.isArray(et)&&typeof et[0]=="string"&&(s==null||s[et[0]]===void 0))for(var nt=0;nt96?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$2=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 ot=arguments,ut=j&&s.__emotion_styles!==void 0?s.__emotion_styles.slice(0):[];if(_e!==void 0&&ut.push("label:"+_e+";"),ot[0]==null||ot[0].raw===void 0)ut.push.apply(ut,ot);else{var dt=ot[0];ut.push(dt[0]);for(var Ut=ot.length,st=1;st($[1].styles.match(/^@layer\s+[^{]*$/)||($[1].styles=`@layer mui {${$[1].styles}}`),j(...$))}return _}const cacheMap=new Map;function StyledEngineProvider(o){const{injectFirst:s,enableCssLayer:_,children:j}=o,$=reactExports.useMemo(()=>{const _e=`${s}-${_}`;if(typeof document=="object"&&cacheMap.has(_e))return cacheMap.get(_e);const et=getCache(s,_);return cacheMap.set(_e,et),et},[s,_]);return s||_?jsx$2(CacheProvider,{value:$,children:j}):j}function isEmpty$1(o){return o==null||Object.keys(o).length===0}function GlobalStyles$2(o){const{styles:s,defaultTheme:_={}}=o;return jsx$2(Global,{styles:typeof s=="function"?$=>s(isEmpty$1($)?_:$):s})}/** - * @mui/styled-engine v5.18.0 - * - * @license MIT - * 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 styled$3(o,s)}const internal_processStyles=(o,s)=>{Array.isArray(o.__emotion_styles)&&(o.__emotion_styles=s(o.__emotion_styles))},wrapper=[];function internal_serializeStyles(o){return wrapper[0]=o,serializeStyles(wrapper)}const styledEngine=Object.freeze(Object.defineProperty({__proto__:null,GlobalStyles:GlobalStyles$2,StyledEngineProvider,ThemeContext:ThemeContext$2,css,default:styled$2,internal_processStyles,internal_serializeStyles,keyframes},Symbol.toStringTag,{value:"Module"}));function isPlainObject(o){if(typeof o!="object"||o===null)return!1;const s=Object.getPrototypeOf(o);return(s===null||s===Object.prototype||Object.getPrototypeOf(s)===null)&&!(Symbol.toStringTag in o)&&!(Symbol.iterator in o)}function deepClone(o){if(reactExports.isValidElement(o)||!isPlainObject(o))return o;const s={};return Object.keys(o).forEach(_=>{s[_]=deepClone(o[_])}),s}function deepmerge$1(o,s,_={clone:!0}){const j=_.clone?_extends$1({},o):o;return isPlainObject(o)&&isPlainObject(s)&&Object.keys(s).forEach($=>{reactExports.isValidElement(s[$])?j[$]=s[$]:isPlainObject(s[$])&&Object.prototype.hasOwnProperty.call(o,$)&&isPlainObject(o[$])?j[$]=deepmerge$1(o[$],s[$],_):_.clone?j[$]=isPlainObject(s[$])?deepClone(s[$]):s[$]:j[$]=s[$]}),j}const deepmerge=Object.freeze(Object.defineProperty({__proto__:null,default:deepmerge$1,isPlainObject},Symbol.toStringTag,{value:"Module"})),_excluded$a=["values","unit","step"],sortBreakpointsValues=o=>{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$a),_e=sortBreakpointsValues(s),et=Object.keys(_e);function tt(dt){return`@media (min-width:${typeof s[dt]=="number"?s[dt]:dt}${_})`}function nt(dt){return`@media (max-width:${(typeof s[dt]=="number"?s[dt]:dt)-j/100}${_})`}function rt(dt,Ut){const st=et.indexOf(Ut);return`@media (min-width:${typeof s[dt]=="number"?s[dt]:dt}${_}) and (max-width:${(st!==-1&&typeof s[et[st]]=="number"?s[et[st]]:Ut)-j/100}${_})`}function ot(dt){return et.indexOf(dt)+1`@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 capitalize$1(o){if(typeof o!="string")throw new Error(formatMuiErrorMessage$1(7));return o.charAt(0).toUpperCase()+o.slice(1)}const capitalize=Object.freeze(Object.defineProperty({__proto__:null,default:capitalize$1},Symbol.toStringTag,{value:"Module"}));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,ut=>{let dt=getStyleValue(rt,$,ut);return ut===dt&&typeof ut=="string"&&(dt=getStyleValue(rt,$,`${s}${ut==="default"?"":capitalize$1(ut)}`,ut)),_===!1?dt:{[_]:dt}})};return _e.propTypes={},_e.filterProps=[s],_e}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 createSpacing(o=8){if(o.mui)return o;const s=createUnarySpacing({spacing:o}),_=(...j)=>(j.length===0?[1]:j).map(_e=>{const et=s(_e);return typeof et=="number"?`${et}px`:et}).join(" ");return _.mui=!0,_}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 borderTransform(o){return typeof o!="number"?o:`${o}px solid`}function createBorderStyle(o,s){return style$1({prop:o,themeKey:"borders",transform:s})}const border=createBorderStyle("border",borderTransform),borderTop=createBorderStyle("borderTop",borderTransform),borderRight=createBorderStyle("borderRight",borderTransform),borderBottom=createBorderStyle("borderBottom",borderTransform),borderLeft=createBorderStyle("borderLeft",borderTransform),borderColor=createBorderStyle("borderColor"),borderTopColor=createBorderStyle("borderTopColor"),borderRightColor=createBorderStyle("borderRightColor"),borderBottomColor=createBorderStyle("borderBottomColor"),borderLeftColor=createBorderStyle("borderLeftColor"),outline=createBorderStyle("outline",borderTransform),outlineColor=createBorderStyle("outlineColor"),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,outline,outlineColor);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,$;const _e=((j=o.theme)==null||(j=j.breakpoints)==null||(j=j.values)==null?void 0:j[_])||values[_];return _e?(($=o.theme)==null||($=$.breakpoints)==null?void 0:$.unit)!=="px"?{maxWidth:`${_e}${o.theme.breakpoints.unit}`}:{maxWidth:_e}:{maxWidth: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"},outline:{themeKey:"borders",transform:borderTransform},outlineColor:{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:ot,style:ut}=tt;if(j==null)return null;if(rt==="typography"&&j==="inherit")return{[_]:j};const dt=getPath($,rt)||{};return ut?ut(et):handleBreakpoints(et,j,st=>{let ct=getStyleValue(dt,ot,st);return st===ct&&typeof st=="string"&&(ct=getStyleValue(dt,ot,`${_}${st==="default"?"":capitalize$1(st)}`,st)),nt===!1?ct:{[nt]:ct}})}function s(_){var j;const{sx:$,theme:_e={},nested:et}=_||{};if(!$)return null;const tt=(j=_e.unstable_sxConfig)!=null?j:defaultSxConfig$1;function nt(rt){let ot=rt;if(typeof rt=="function")ot=rt(_e);else if(typeof rt!="object")return rt;if(!ot)return null;const ut=createEmptyBreakpointObject(_e.breakpoints),dt=Object.keys(ut);let Ut=ut;return Object.keys(ot).forEach(st=>{const ct=callIfFn(ot[st],_e);if(ct!=null)if(typeof ct=="object")if(tt[st])Ut=merge$2(Ut,o(st,ct,_e,tt));else{const pt=handleBreakpoints({theme:_e},ct,Bt=>({[st]:Bt}));objectsHaveSameKeys(pt,ct)?Ut[st]=s({sx:ct,theme:_e,nested:!0}):Ut=merge$2(Ut,pt)}else Ut=merge$2(Ut,o(st,ct,_e,tt))}),!et&&_e.modularCssLayers?{"@layer sx":removeUnusedBreakpoints(dt,Ut)}:removeUnusedBreakpoints(dt,Ut)}return Array.isArray($)?$.map(nt):nt($)}return s}const styleFunctionSx$1=unstable_createStyleFunctionSx();styleFunctionSx$1.filterProps=["sx"];const styleFunctionSx$2=styleFunctionSx$1;function applyStyles(o,s){const _=this;return _.vars&&typeof _.getColorSchemeSelector=="function"?{[_.getColorSchemeSelector(o).replace(/(\[[^\]]+\])/,"*:where($1)")]:s}:_.palette.mode===o?s:{}}const _excluded$9=["breakpoints","palette","spacing","shape"];function createTheme$2(o={},...s){const{breakpoints:_={},palette:j={},spacing:$,shape:_e={}}=o,et=_objectWithoutPropertiesLoose$1(o,_excluded$9),tt=createBreakpoints(_),nt=createSpacing($);let rt=deepmerge$1({breakpoints:tt,direction:"ltr",components:{},palette:_extends$1({mode:"light"},j),spacing:nt,shape:_extends$1({},shape$1,_e)},et);return rt.applyStyles=applyStyles,rt=s.reduce((ot,ut)=>deepmerge$1(ot,ut),rt),rt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,et==null?void 0:et.unstable_sxConfig),rt.unstable_sx=function(ut){return styleFunctionSx$2({sx:ut,theme:this})},rt}const createTheme$1=Object.freeze(Object.defineProperty({__proto__:null,default:createTheme$2,private_createBreakpoints:createBreakpoints,unstable_applyStyles:applyStyles},Symbol.toStringTag,{value:"Module"}));function isObjectEmpty(o){return Object.keys(o).length===0}function useTheme$2(o=null){const s=reactExports.useContext(ThemeContext$2);return!s||isObjectEmpty(s)?o:s}const systemDefaultTheme$1=createTheme$2();function useTheme$1(o=systemDefaultTheme$1){return useTheme$2(o)}function wrapGlobalLayer(o){const s=internal_serializeStyles(o);return o!==s&&s.styles?(s.styles.match(/^@layer\s+[^{]*$/)||(s.styles=`@layer global{${s.styles}}`),s):o}function GlobalStyles$1({styles:o,themeId:s,defaultTheme:_={}}){const j=useTheme$1(_),$=s&&j[s]||j;let _e=typeof o=="function"?o($):o;return $.modularCssLayers&&(Array.isArray(_e)?_e=_e.map(et=>wrapGlobalLayer(typeof et=="function"?et($):et)):_e=wrapGlobalLayer(_e)),jsx$2(GlobalStyles$2,{styles:_e})}const _excluded$8=["sx"],splitProps=o=>{var s,_;const j={systemProps:{},otherProps:{}},$=(s=o==null||(_=o.theme)==null?void 0:_.unstable_sxConfig)!=null?s:defaultSxConfig$1;return Object.keys(o).forEach(_e=>{$[_e]?j.systemProps[_e]=o[_e]:j.otherProps[_e]=o[_e]}),j};function extendSxProp(o){const{sx:s}=o,_=_objectWithoutPropertiesLoose$1(o,_excluded$8),{systemProps:j,otherProps:$}=splitProps(_);let _e;return Array.isArray(s)?_e=[j,...s]:typeof s=="function"?_e=(...et)=>{const tt=s(...et);return isPlainObject(tt)?_extends$1({},j,tt):j}:_e=_extends$1({},j,s),_extends$1({},$,{sx:_e})}const styleFunctionSx=Object.freeze(Object.defineProperty({__proto__:null,default:styleFunctionSx$2,extendSxProp,unstable_createStyleFunctionSx,unstable_defaultSxConfig:defaultSxConfig$1},Symbol.toStringTag,{value:"Module"})),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;function r(o){var s,_,j="";if(typeof o=="string"||typeof o=="number")j+=o;else if(typeof o=="object")if(Array.isArray(o)){var $=o.length;for(s=0;s<$;s++)o[s]&&(_=r(o[s]))&&(j&&(j+=" "),j+=_)}else for(_ in o)o[_]&&(j&&(j+=" "),j+=_);return j}function clsx(){for(var o,s,_=0,j="",$=arguments.length;_<$;_++)(o=arguments[_])&&(s=r(o))&&(j&&(j+=" "),j+=s);return j}const globalStateClasses={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function generateUtilityClass(o,s,_="Mui"){const j=globalStateClasses[s];return j?`${_}-${j}`:`${ClassNameGenerator$1.generate(o)}-${s}`}function generateUtilityClasses(o,s,_="Mui"){const j={};return s.forEach($=>{j[$]=generateUtilityClass(o,$,_)}),j}var reactIs={exports:{}},reactIs_production={};/** - * @license React - * react-is.production.js - * - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */var REACT_ELEMENT_TYPE=Symbol.for("react.transitional.element"),REACT_PORTAL_TYPE=Symbol.for("react.portal"),REACT_FRAGMENT_TYPE=Symbol.for("react.fragment"),REACT_STRICT_MODE_TYPE=Symbol.for("react.strict_mode"),REACT_PROFILER_TYPE=Symbol.for("react.profiler"),REACT_CONSUMER_TYPE=Symbol.for("react.consumer"),REACT_CONTEXT_TYPE=Symbol.for("react.context"),REACT_FORWARD_REF_TYPE=Symbol.for("react.forward_ref"),REACT_SUSPENSE_TYPE=Symbol.for("react.suspense"),REACT_SUSPENSE_LIST_TYPE=Symbol.for("react.suspense_list"),REACT_MEMO_TYPE=Symbol.for("react.memo"),REACT_LAZY_TYPE=Symbol.for("react.lazy"),REACT_VIEW_TRANSITION_TYPE=Symbol.for("react.view_transition"),REACT_CLIENT_REFERENCE=Symbol.for("react.client.reference");function typeOf(o){if(typeof o=="object"&&o!==null){var s=o.$$typeof;switch(s){case REACT_ELEMENT_TYPE:switch(o=o.type,o){case REACT_FRAGMENT_TYPE:case REACT_PROFILER_TYPE:case REACT_STRICT_MODE_TYPE:case REACT_SUSPENSE_TYPE:case REACT_SUSPENSE_LIST_TYPE:case REACT_VIEW_TRANSITION_TYPE:return o;default:switch(o=o&&o.$$typeof,o){case REACT_CONTEXT_TYPE:case REACT_FORWARD_REF_TYPE:case REACT_LAZY_TYPE:case REACT_MEMO_TYPE:return o;case REACT_CONSUMER_TYPE:return o;default:return s}}case REACT_PORTAL_TYPE:return s}}}reactIs_production.ContextConsumer=REACT_CONSUMER_TYPE;reactIs_production.ContextProvider=REACT_CONTEXT_TYPE;reactIs_production.Element=REACT_ELEMENT_TYPE;reactIs_production.ForwardRef=REACT_FORWARD_REF_TYPE;reactIs_production.Fragment=REACT_FRAGMENT_TYPE;reactIs_production.Lazy=REACT_LAZY_TYPE;reactIs_production.Memo=REACT_MEMO_TYPE;reactIs_production.Portal=REACT_PORTAL_TYPE;reactIs_production.Profiler=REACT_PROFILER_TYPE;reactIs_production.StrictMode=REACT_STRICT_MODE_TYPE;reactIs_production.Suspense=REACT_SUSPENSE_TYPE;reactIs_production.SuspenseList=REACT_SUSPENSE_LIST_TYPE;reactIs_production.isContextConsumer=function(o){return typeOf(o)===REACT_CONSUMER_TYPE};reactIs_production.isContextProvider=function(o){return typeOf(o)===REACT_CONTEXT_TYPE};reactIs_production.isElement=function(o){return typeof o=="object"&&o!==null&&o.$$typeof===REACT_ELEMENT_TYPE};reactIs_production.isForwardRef=function(o){return typeOf(o)===REACT_FORWARD_REF_TYPE};reactIs_production.isFragment=function(o){return typeOf(o)===REACT_FRAGMENT_TYPE};reactIs_production.isLazy=function(o){return typeOf(o)===REACT_LAZY_TYPE};reactIs_production.isMemo=function(o){return typeOf(o)===REACT_MEMO_TYPE};reactIs_production.isPortal=function(o){return typeOf(o)===REACT_PORTAL_TYPE};reactIs_production.isProfiler=function(o){return typeOf(o)===REACT_PROFILER_TYPE};reactIs_production.isStrictMode=function(o){return typeOf(o)===REACT_STRICT_MODE_TYPE};reactIs_production.isSuspense=function(o){return typeOf(o)===REACT_SUSPENSE_TYPE};reactIs_production.isSuspenseList=function(o){return typeOf(o)===REACT_SUSPENSE_LIST_TYPE};reactIs_production.isValidElementType=function(o){return typeof o=="string"||typeof o=="function"||o===REACT_FRAGMENT_TYPE||o===REACT_PROFILER_TYPE||o===REACT_STRICT_MODE_TYPE||o===REACT_SUSPENSE_TYPE||o===REACT_SUSPENSE_LIST_TYPE||typeof o=="object"&&o!==null&&(o.$$typeof===REACT_LAZY_TYPE||o.$$typeof===REACT_MEMO_TYPE||o.$$typeof===REACT_CONTEXT_TYPE||o.$$typeof===REACT_CONSUMER_TYPE||o.$$typeof===REACT_FORWARD_REF_TYPE||o.$$typeof===REACT_CLIENT_REFERENCE||o.getModuleId!==void 0)};reactIs_production.typeOf=typeOf;reactIs.exports=reactIs_production;var reactIsExports=reactIs.exports;const fnNameMatchRegex=/^\s*function(?:\s|\s*\/\*.*\*\/\s*)+([^(\s/]*)\s*/;function getFunctionName(o){const s=`${o}`.match(fnNameMatchRegex);return s&&s[1]||""}function getFunctionComponentName(o,s=""){return o.displayName||o.name||getFunctionName(o)||s}function getWrappedName(o,s,_){const j=getFunctionComponentName(s);return o.displayName||(j!==""?`${_}(${j})`:_)}function getDisplayName$1(o){if(o!=null){if(typeof o=="string")return o;if(typeof o=="function")return getFunctionComponentName(o,"Component");if(typeof o=="object")switch(o.$$typeof){case reactIsExports.ForwardRef:return getWrappedName(o,o.render,"ForwardRef");case reactIsExports.Memo:return getWrappedName(o,o.type,"memo");default:return}}}const getDisplayName=Object.freeze(Object.defineProperty({__proto__:null,default:getDisplayName$1,getFunctionName},Symbol.toStringTag,{value:"Module"}));function resolveProps(o,s){const _=_extends$1({},s);return Object.keys(o).forEach(j=>{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])}),_}const useEnhancedEffect=typeof window<"u"?reactExports.useLayoutEffect:reactExports.useEffect,useEnhancedEffect$1=useEnhancedEffect;function clamp$1(o,s=Number.MIN_SAFE_INTEGER,_=Number.MAX_SAFE_INTEGER){return Math.max(s,Math.min(o,_))}const clamp=Object.freeze(Object.defineProperty({__proto__:null,default:clamp$1},Symbol.toStringTag,{value:"Module"}));let globalId=0;function useGlobalId(o){const[s,_]=reactExports.useState(o),j=o||s;return reactExports.useEffect(()=>{s==null&&(globalId+=1,_(`mui-${globalId}`))},[s]),j}const maybeReactUseId=React$2["useId".toString()];function useId(o){if(maybeReactUseId!==void 0){const s=maybeReactUseId();return o??s}return useGlobalId(o)}function composeClasses(o,s,_=void 0){const j={};return Object.keys(o).forEach($=>{j[$]=o[$].reduce((_e,et)=>{if(et){const tt=s(et);tt!==""&&_e.push(tt),_&&_[et]&&_e.push(_[et])}return _e},[]).join(" ")}),j}const ThemeContext=reactExports.createContext(null),ThemeContext$1=ThemeContext;function useTheme(){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$2(o){const{children:s,theme:_}=o,j=useTheme(),$=reactExports.useMemo(()=>{const _e=j===null?_:mergeOuterLocalTheme(j,_);return _e!=null&&(_e[nested]=j!==null),_e},[_,j]);return jsx$2(ThemeContext$1.Provider,{value:$,children:s})}const _excluded$7=["value"],RtlContext=reactExports.createContext();function RtlProvider(o){let{value:s}=o,_=_objectWithoutPropertiesLoose$1(o,_excluded$7);return jsx$2(RtlContext.Provider,_extends$1({value:s??!0},_))}const PropsContext=reactExports.createContext(void 0);function DefaultPropsProvider({value:o,children:s}){return jsx$2(PropsContext.Provider,{value:o,children:s})}function getThemeProps(o){const{theme:s,name:_,props:j}=o;if(!s||!s.components||!s.components[_])return j;const $=s.components[_];return $.defaultProps?resolveProps($.defaultProps,j):!$.styleOverrides&&!$.variants?resolveProps($,j):j}function useDefaultProps$1({props:o,name:s}){const _=reactExports.useContext(PropsContext);return getThemeProps({props:o,name:s,theme:{components:_}})}function useLayerOrder(o){const s=useTheme$2(),_=useId()||"",{modularCssLayers:j}=o;let $="mui.global, mui.components, mui.theme, mui.custom, mui.sx";return!j||s!==null?$="":typeof j=="string"?$=j.replace(/mui(?!\.)/g,$):$=`@layer ${$};`,useEnhancedEffect$1(()=>{const _e=document.querySelector("head");if(!_e)return;const et=_e.firstChild;if($){var tt;if(et&&(tt=et.hasAttribute)!=null&&tt.call(et,"data-mui-layer-order")&&et.getAttribute("data-mui-layer-order")===_)return;const rt=document.createElement("style");rt.setAttribute("data-mui-layer-order",_),rt.textContent=$,_e.prepend(rt)}else{var nt;(nt=_e.querySelector(`style[data-mui-layer-order="${_}"]`))==null||nt.remove()}},[$,_]),$?jsx$2(GlobalStyles$1,{styles:$}):null}const EMPTY_THEME={};function useThemeScoping(o,s,_,j=!1){return reactExports.useMemo(()=>{const $=o&&s[o]||s;if(typeof _=="function"){const _e=_($),et=o?_extends$1({},s,{[o]:_e}):_e;return j?()=>et:et}return o?_extends$1({},s,{[o]:_}):_extends$1({},s,_)},[o,s,_,j])}function ThemeProvider$1(o){const{children:s,theme:_,themeId:j}=o,$=useTheme$2(EMPTY_THEME),_e=useTheme()||EMPTY_THEME,et=useThemeScoping(j,$,_),tt=useThemeScoping(j,_e,_,!0),nt=et.direction==="rtl",rt=useLayerOrder(et);return jsx$2(ThemeProvider$2,{theme:tt,children:jsx$2(ThemeContext$2.Provider,{value:et,children:jsx$2(RtlProvider,{value:nt,children:jsxs$1(DefaultPropsProvider,{value:et==null?void 0:et.components,children:[rt,s]})})})})}const THEME_ID="$$material",_excluded$6=["theme"];function ThemeProvider(o){let{theme:s}=o,_=_objectWithoutPropertiesLoose$1(o,_excluded$6);const j=s[THEME_ID];let $=j||s;return typeof s!="function"&&(j&&!j.vars?$=_extends$1({},j,{vars:null}):s&&!s.vars&&($=_extends$1({},s,{vars:null}))),jsx$2(ThemeProvider$1,_extends$1({},_,{themeId:j?THEME_ID:void 0,theme:$}))}function useDefaultProps(o){return useDefaultProps$1(o)}function createMixins(o,s){return _extends$1({toolbar:{minHeight:56,[o.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[o.up("sm")]:{minHeight:64}}},s)}var colorManipulator={},interopRequireDefault={exports:{}};(function(o){function s(_){return _&&_.__esModule?_:{default:_}}o.exports=s,o.exports.__esModule=!0,o.exports.default=o.exports})(interopRequireDefault);var interopRequireDefaultExports=interopRequireDefault.exports;const require$$1$2=getAugmentedNamespace(formatMuiErrorMessage),require$$2=getAugmentedNamespace(clamp);var _interopRequireDefault$1=interopRequireDefaultExports;Object.defineProperty(colorManipulator,"__esModule",{value:!0});colorManipulator.alpha=alpha$1;colorManipulator.blend=blend;colorManipulator.colorChannel=void 0;var darken_1=colorManipulator.darken=darken;colorManipulator.decomposeColor=decomposeColor;colorManipulator.emphasize=emphasize;var getContrastRatio_1=colorManipulator.getContrastRatio=getContrastRatio;colorManipulator.getLuminance=getLuminance;colorManipulator.hexToRgb=hexToRgb;colorManipulator.hslToRgb=hslToRgb;var lighten_1=colorManipulator.lighten=lighten;colorManipulator.private_safeAlpha=private_safeAlpha;colorManipulator.private_safeColorChannel=void 0;colorManipulator.private_safeDarken=private_safeDarken;colorManipulator.private_safeEmphasize=private_safeEmphasize;colorManipulator.private_safeLighten=private_safeLighten;colorManipulator.recomposeColor=recomposeColor;colorManipulator.rgbToHex=rgbToHex;var _formatMuiErrorMessage2=_interopRequireDefault$1(require$$1$2),_clamp=_interopRequireDefault$1(require$$2);function clampWrapper(o,s=0,_=1){return(0,_clamp.default)(o,s,_)}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 intToHex(o){const s=o.toString(16);return s.length===1?`0${s}`:s}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((0,_formatMuiErrorMessage2.default)(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((0,_formatMuiErrorMessage2.default)(10,$))}else j=j.split(",");return j=j.map(_e=>parseFloat(_e)),{type:_,values:j,colorSpace:$}}const colorChannel=o=>{const s=decomposeColor(o);return s.values.slice(0,3).map((_,j)=>s.type.indexOf("hsl")!==-1&&j!==0?`${_}%`:_).join(" ")};colorManipulator.colorChannel=colorChannel;const private_safeColorChannel=(o,s)=>{try{return colorChannel(o)}catch{return o}};colorManipulator.private_safeColorChannel=private_safeColorChannel;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 rgbToHex(o){if(o.indexOf("#")===0)return o;const{values:s}=decomposeColor(o);return`#${s.map((_,j)=>intToHex(j===3?Math.round(255*_):_)).join("")}`}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,ot=(rt+_/30)%12)=>$-_e*Math.max(Math.min(ot-3,9-ot,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 alpha$1(o,s){return o=decomposeColor(o),s=clampWrapper(s),(o.type==="rgb"||o.type==="hsl")&&(o.type+="a"),o.type==="color"?o.values[3]=`/${s}`:o.values[3]=s,recomposeColor(o)}function private_safeAlpha(o,s,_){try{return alpha$1(o,s)}catch{return o}}function darken(o,s){if(o=decomposeColor(o),s=clampWrapper(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 private_safeDarken(o,s,_){try{return darken(o,s)}catch{return o}}function lighten(o,s){if(o=decomposeColor(o),s=clampWrapper(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)}function private_safeLighten(o,s,_){try{return lighten(o,s)}catch{return o}}function emphasize(o,s=.15){return getLuminance(o)>.5?darken(o,s):lighten(o,s)}function private_safeEmphasize(o,s,_){try{return emphasize(o,s)}catch{return o}}function blend(o,s,_,j=1){const $=(nt,rt)=>Math.round((nt**(1/j)*(1-_)+rt**(1/j)*_)**j),_e=decomposeColor(o),et=decomposeColor(s),tt=[$(_e.values[0],et.values[0]),$(_e.values[1],et.values[1]),$(_e.values[2],et.values[2])];return recomposeColor({type:"rgb",values:tt})}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$5=["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_1(o.main,$):s==="dark"&&(o.dark=darken_1(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$5),_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),ot=o.warning||getDefaultWarning(s);function ut(ct){return getContrastRatio_1(ct,dark.text.primary)>=_?dark.text.primary:light.text.primary}const dt=({color:ct,name:pt,mainShade:Bt=500,lightShade:Qt=300,darkShade:gt=700})=>{if(ct=_extends$1({},ct),!ct.main&&ct[Bt]&&(ct.main=ct[Bt]),!ct.hasOwnProperty("main"))throw new Error(formatMuiErrorMessage$1(11,pt?` (${pt})`:"",Bt));if(typeof ct.main!="string")throw new Error(formatMuiErrorMessage$1(12,pt?` (${pt})`:"",JSON.stringify(ct.main)));return addLightOrDark(ct,"light",Qt,j),addLightOrDark(ct,"dark",gt,j),ct.contrastText||(ct.contrastText=ut(ct.main)),ct},Ut={dark,light};return deepmerge$1(_extends$1({common:_extends$1({},common$2),mode:s,primary:dt({color:_e,name:"primary"}),secondary:dt({color:et,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:dt({color:tt,name:"error"}),warning:dt({color:ot,name:"warning"}),info:dt({color:nt,name:"info"}),success:dt({color:rt,name:"success"}),grey:grey$1,contrastThreshold:_,getContrastText:ut,augmentColor:dt,tonalOffset:j},Ut[s]),$)}const _excluded$4=["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:ot,pxToRem:ut}=_,dt=_objectWithoutPropertiesLoose$1(_,_excluded$4),Ut=$/14,st=ut||(Bt=>`${Bt/rt*Ut}rem`),ct=(Bt,Qt,gt,ft,Ft)=>_extends$1({fontFamily:j,fontWeight:Bt,fontSize:st(Qt),lineHeight:gt},j===defaultFontFamily?{letterSpacing:`${round$1(ft/Qt)}em`}:{},Ft,ot),pt={h1:ct(_e,96,1.167,-1.5),h2:ct(_e,60,1.2,-.5),h3:ct(et,48,1.167,0),h4:ct(et,34,1.235,.25),h5:ct(et,24,1.334,0),h6:ct(tt,20,1.6,.15),subtitle1:ct(et,16,1.75,.15),subtitle2:ct(tt,14,1.57,.1),body1:ct(et,16,1.5,.15),body2:ct(et,14,1.43,.15),button:ct(tt,14,1.75,.4,caseAllCaps),caption:ct(et,12,1.66,.4),overline:ct(et,12,2.66,1,caseAllCaps),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return deepmerge$1(_extends$1({htmlFontSize:rt,pxToRem:st,fontFamily:j,fontSize:$,fontWeightLight:_e,fontWeightRegular:et,fontWeightMedium:tt,fontWeightBold:nt},pt),dt,{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$3=["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$3),(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$2=["breakpoints","mixins","spacing","palette","transitions","typography","shape"];function createTheme(o={},...s){const{mixins:_={},palette:j={},transitions:$={},typography:_e={}}=o,et=_objectWithoutPropertiesLoose$1(o,_excluded$2);if(o.vars&&o.generateCssVars===void 0)throw new Error(formatMuiErrorMessage$1(18));const tt=createPalette(j),nt=createTheme$2(o);let rt=deepmerge$1(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$1(rt,et),rt=s.reduce((ot,ut)=>deepmerge$1(ot,ut),rt),rt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,et==null?void 0:et.unstable_sxConfig),rt.unstable_sx=function(ut){return styleFunctionSx$2({sx:ut,theme:this})},rt}const defaultTheme=createTheme(),defaultTheme$1=defaultTheme;function GlobalStyles(o){return jsx$2(GlobalStyles$1,_extends$1({},o,{defaultTheme:defaultTheme$1,themeId:THEME_ID}))}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 _;const j={};s&&o.colorSchemes&&Object.entries(o.colorSchemes).forEach(([et,tt])=>{var nt;j[o.getColorSchemeSelector(et).replace(/\s*&/,"")]={colorScheme:(nt=tt.palette)==null?void 0:nt.mode}});let $=_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}})},j);const _e=(_=o.components)==null||(_=_.MuiCssBaseline)==null?void 0:_.styleOverrides;return _e&&($=[$,_e]),$};function CssBaseline(o){const s=useDefaultProps({props:o,name:"MuiCssBaseline"}),{children:_,enableColorScheme:j=!1}=s;return jsxs$1(reactExports.Fragment,{children:[jsx$2(GlobalStyles,{styles:$=>styles($,j)}),_]})}var createStyled$1={};const require$$1$1=getAugmentedNamespace(_extends$2);var objectWithoutPropertiesLoose={exports:{}},hasRequiredObjectWithoutPropertiesLoose;function requireObjectWithoutPropertiesLoose(){return hasRequiredObjectWithoutPropertiesLoose||(hasRequiredObjectWithoutPropertiesLoose=1,function(o){function s(_,j){if(_==null)return{};var $={};for(var _e in _)if({}.hasOwnProperty.call(_,_e)){if(j.indexOf(_e)!==-1)continue;$[_e]=_[_e]}return $}o.exports=s,o.exports.__esModule=!0,o.exports.default=o.exports}(objectWithoutPropertiesLoose)),objectWithoutPropertiesLoose.exports}const require$$1=getAugmentedNamespace(styledEngine),require$$4=getAugmentedNamespace(deepmerge),require$$5=getAugmentedNamespace(capitalize),require$$6=getAugmentedNamespace(getDisplayName),require$$7=getAugmentedNamespace(createTheme$1),require$$8=getAugmentedNamespace(styleFunctionSx);var _interopRequireDefault=interopRequireDefaultExports;Object.defineProperty(createStyled$1,"__esModule",{value:!0});var _default=createStyled$1.default=createStyled;createStyled$1.shouldForwardProp=shouldForwardProp;createStyled$1.systemDefaultTheme=void 0;var _extends2=_interopRequireDefault(require$$1$1),_objectWithoutPropertiesLoose2=_interopRequireDefault(requireObjectWithoutPropertiesLoose()),_styledEngine=_interopRequireWildcard(require$$1),_deepmerge=require$$4;_interopRequireDefault(require$$5);_interopRequireDefault(require$$6);var _createTheme=_interopRequireDefault(require$$7),_styleFunctionSx=_interopRequireDefault(require$$8);const _excluded$1=["ownerState"],_excluded2=["variants"],_excluded3=["name","slot","skipVariantsResolver","skipSx","overridesResolver"];function _getRequireWildcardCache(o){if(typeof WeakMap!="function")return null;var s=new WeakMap,_=new WeakMap;return(_getRequireWildcardCache=function(j){return j?_:s})(o)}function _interopRequireWildcard(o,s){if(!s&&o&&o.__esModule)return o;if(o===null||typeof o!="object"&&typeof o!="function")return{default:o};var _=_getRequireWildcardCache(s);if(_&&_.has(o))return _.get(o);var j={__proto__:null},$=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var _e in o)if(_e!=="default"&&Object.prototype.hasOwnProperty.call(o,_e)){var et=$?Object.getOwnPropertyDescriptor(o,_e):null;et&&(et.get||et.set)?Object.defineProperty(j,_e,et):j[_e]=o[_e]}return j.default=o,_&&_.set(o,j),j}function isEmpty(o){return Object.keys(o).length===0}function isStringTag(o){return typeof o=="string"&&o.charCodeAt(0)>96}function shouldForwardProp(o){return o!=="ownerState"&&o!=="theme"&&o!=="sx"&&o!=="as"}function shallowLayer(o,s){return s&&o&&typeof o=="object"&&o.styles&&!o.styles.startsWith("@layer")&&(o.styles=`@layer ${s}{${String(o.styles)}}`),o}const systemDefaultTheme=createStyled$1.systemDefaultTheme=(0,_createTheme.default)(),lowercaseFirstLetter=o=>o&&o.charAt(0).toLowerCase()+o.slice(1);function resolveTheme({defaultTheme:o,theme:s,themeId:_}){return isEmpty(s)?o:s[_]||s}function defaultOverridesResolver(o){return o?(s,_)=>_[o]:null}function processStyleArg(o,s,_){let{ownerState:j}=s,$=(0,_objectWithoutPropertiesLoose2.default)(s,_excluded$1);const _e=typeof o=="function"?o((0,_extends2.default)({ownerState:j},$)):o;if(Array.isArray(_e))return _e.flatMap(et=>processStyleArg(et,(0,_extends2.default)({ownerState:j},$),_));if(_e&&typeof _e=="object"&&Array.isArray(_e.variants)){const{variants:et=[]}=_e;let nt=(0,_objectWithoutPropertiesLoose2.default)(_e,_excluded2);return et.forEach(rt=>{let ot=!0;if(typeof rt.props=="function"?ot=rt.props((0,_extends2.default)({ownerState:j},$,j)):Object.keys(rt.props).forEach(ut=>{(j==null?void 0:j[ut])!==rt.props[ut]&&$[ut]!==rt.props[ut]&&(ot=!1)}),ot){Array.isArray(nt)||(nt=[nt]);const ut=typeof rt.style=="function"?rt.style((0,_extends2.default)({ownerState:j},$,j)):rt.style;nt.push(_?shallowLayer((0,_styledEngine.internal_serializeStyles)(ut),_):ut)}}),nt}return _?shallowLayer((0,_styledEngine.internal_serializeStyles)(_e),_):_e}function createStyled(o={}){const{themeId:s,defaultTheme:_=systemDefaultTheme,rootShouldForwardProp:j=shouldForwardProp,slotShouldForwardProp:$=shouldForwardProp}=o,_e=et=>(0,_styleFunctionSx.default)((0,_extends2.default)({},et,{theme:resolveTheme((0,_extends2.default)({},et,{defaultTheme:_,themeId:s}))}));return _e.__mui_systemSx=!0,(et,tt={})=>{(0,_styledEngine.internal_processStyles)(et,yt=>yt.filter(Ct=>!(Ct!=null&&Ct.__mui_systemSx)));const{name:nt,slot:rt,skipVariantsResolver:ot,skipSx:ut,overridesResolver:dt=defaultOverridesResolver(lowercaseFirstLetter(rt))}=tt,Ut=(0,_objectWithoutPropertiesLoose2.default)(tt,_excluded3),st=nt&&nt.startsWith("Mui")||rt?"components":"custom",ct=ot!==void 0?ot:rt&&rt!=="Root"&&rt!=="root"||!1,pt=ut||!1;let Bt,Qt=shouldForwardProp;rt==="Root"||rt==="root"?Qt=j:rt?Qt=$:isStringTag(et)&&(Qt=void 0);const gt=(0,_styledEngine.default)(et,(0,_extends2.default)({shouldForwardProp:Qt,label:Bt},Ut)),ft=yt=>typeof yt=="function"&&yt.__emotion_real!==yt||(0,_deepmerge.isPlainObject)(yt)?Ct=>{const xt=resolveTheme({theme:Ct.theme,defaultTheme:_,themeId:s});return processStyleArg(yt,(0,_extends2.default)({},Ct,{theme:xt}),xt.modularCssLayers?st:void 0)}:yt,Ft=(yt,...Ct)=>{let xt=ft(yt);const ht=Ct?Ct.map(ft):[];nt&&dt&&ht.push(vt=>{const Tt=resolveTheme((0,_extends2.default)({},vt,{defaultTheme:_,themeId:s}));if(!Tt.components||!Tt.components[nt]||!Tt.components[nt].styleOverrides)return null;const Ot=Tt.components[nt].styleOverrides,_t={};return Object.entries(Ot).forEach(([Wt,bt])=>{_t[Wt]=processStyleArg(bt,(0,_extends2.default)({},vt,{theme:Tt}),Tt.modularCssLayers?"theme":void 0)}),dt(vt,_t)}),nt&&!ct&&ht.push(vt=>{var Tt;const Ot=resolveTheme((0,_extends2.default)({},vt,{defaultTheme:_,themeId:s})),_t=Ot==null||(Tt=Ot.components)==null||(Tt=Tt[nt])==null?void 0:Tt.variants;return processStyleArg({variants:_t},(0,_extends2.default)({},vt,{theme:Ot}),Ot.modularCssLayers?"theme":void 0)}),pt||ht.push(_e);const mt=ht.length-Ct.length;if(Array.isArray(yt)&&mt>0){const vt=new Array(mt).fill("");xt=[...yt,...vt],xt.raw=[...yt.raw,...vt]}const It=gt(xt,...ht);return et.muiName&&(It.muiName=et.muiName),It};return gt.withConfig&&(Ft.withConfig=gt.withConfig),Ft}}function slotShouldForwardProp(o){return o!=="ownerState"&&o!=="theme"&&o!=="sx"&&o!=="as"}const rootShouldForwardProp=o=>slotShouldForwardProp(o)&&o!=="classes",rootShouldForwardProp$1=rootShouldForwardProp,styled=_default({themeId:THEME_ID,defaultTheme:defaultTheme$1,rootShouldForwardProp:rootShouldForwardProp$1}),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=useDefaultProps({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$2(ScopedCssBaselineRoot,_extends$1({as:_e,className:clsx(nt.root,$),ref:_,ownerState:tt},et))}),D0=ScopedCssBaseline;var Bn=Object.defineProperty,Sn=(o,s,_)=>s in o?Bn(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_,he=(o,s,_)=>(Sn(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 global<"u"?global: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(st){this.message=st};et.prototype=new Error,et.prototype.name="InvalidCharacterError";var tt=function(st){throw new et(st)},nt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",rt=/[\t\n\f\r ]/g,ot=function(st){st=String(st).replace(rt,"");var ct=st.length;ct%4==0&&(st=st.replace(/==?$/,""),ct=st.length),(ct%4==1||/[^+a-zA-Z0-9/]/.test(st))&&tt("Invalid character: the string to be decoded is not correctly encoded.");for(var pt=0,Bt,Qt,gt="",ft=-1;++ft>(-2*pt&6)));return gt},ut=function(st){st=String(st),/[^\0-\xFF]/.test(st)&&tt("The string to be encoded contains characters outside of the Latin1 range.");for(var ct=st.length%3,pt="",Bt=-1,Qt,gt,ft,Ft,yt=st.length-ct;++Bt>18&63)+nt.charAt(Ft>>12&63)+nt.charAt(Ft>>6&63)+nt.charAt(Ft&63);return ct==2?(Qt=st.charCodeAt(Bt)<<8,gt=st.charCodeAt(++Bt),Ft=Qt+gt,pt+=nt.charAt(Ft>>10)+nt.charAt(Ft>>4&63)+nt.charAt(Ft<<2&63)+"="):ct==1&&(Ft=st.charCodeAt(Bt),pt+=nt.charAt(Ft>>2)+nt.charAt(Ft<<4&63)+"=="),pt},dt={encode:ut,decode:ot,version:"1.0.0"};if(j&&!j.nodeType)if($)$.exports=dt;else for(var Ut in dt)dt.hasOwnProperty(Ut)&&(j[Ut]=dt[Ut]);else _.base64=dt})(commonjsGlobal)})(base64,base64.exports);var base64Exports=base64.exports;class LoginFailureError extends Error{constructor(s){super("login failed"),he(this,"reason"),this.reason=s,this.name="LoginFailureError",Object.setPrototypeOf(this,new.target.prototype)}}class LoginChallengedError extends Error{constructor(s){super("login challenged"),he(this,"challenge"),this.challenge=s,this.name="LoginChallengedError",Object.setPrototypeOf(this,new.target.prototype)}}class AuthenticationStore{constructor({apiUrl:s,refreshAuthToken:_,addAccessTokenRefreshListener:j}){he(this,"_refreshToken"),he(this,"_isShareToken",!1),he(this,"_currentOrganization"),he(this,"_currentUser"),he(this,"_defaultDeviceId"),he(this,"_token"),he(this,"_waitingForAuth",new Set),he(this,"_refreshTimer"),he(this,"_apiUrl"),he(this,"_refreshAuthToken"),he(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 ot=getDefaultOptions(),ut=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?$:ot.weekStartsOn)!==null&&j!==void 0?j:(nt=ot.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.weekStartsOn)!==null&&_!==void 0?_:0);if(!(ut>=0&&ut<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var dt=toDate(o),Ut=dt.getDay(),st=(Ut=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 ot=getDefaultOptions(),ut=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?$:ot.weekStartsOn)!==null&&j!==void 0?j:(nt=ot.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.weekStartsOn)!==null&&_!==void 0?_:0);if(!(ut>=0&&ut<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var dt=toDate(o),Ut=dt.getDay(),st=(Ut=1&&Ut<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var st=new Date(0);st.setFullYear(ut+1,0,Ut),st.setHours(0,0,0,0);var ct=startOfWeek(st,s),pt=new Date(0);pt.setFullYear(ut,0,Ut),pt.setHours(0,0,0,0);var Bt=startOfWeek(pt,s);return ot.getTime()>=ct.getTime()?ut+1:ot.getTime()>=Bt.getTime()?ut:ut-1}function startOfWeekYear(o,s){var _,j,$,_e,et,tt,nt,rt;requiredArgs(1,arguments);var ot=getDefaultOptions(),ut=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?$:ot.firstWeekContainsDate)!==null&&j!==void 0?j:(nt=ot.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.firstWeekContainsDate)!==null&&_!==void 0?_:1),dt=getWeekYear(o,s),Ut=new Date(0);Ut.setFullYear(dt,0,ut),Ut.setHours(0,0,0,0);var st=startOfWeek(Ut,s);return st}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,ot=Math.round(rt/j)*j;return new Date($.getFullYear(),$.getMonth(),$.getDate(),$.getHours(),nt+ot)}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}={}){he(this,"entries",new Map),he(this,"metadata",new Map),he(this,"capacity"),he(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(){he(this,"queryStoreCache",new StoreCache$1({capacity:1e4,timeout:20*duration$2.second})),he(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 Xt=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 Xt._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=Xt;he(App$2,"getCurrentModuleContext",getCurrentModuleContext),he(App$2,"disableAnalyticsBottomBar",disableAnalyticsBottomBar),he(App$2,"goToDevice",goToDevice),he(App$2,"goToTime",goToTime),he(App$2,"refreshAuthToken",refreshAuthToken),he(App$2,"requestModuleData",requestModuleData),he(App$2,"sendChannelData",sendChannelData),he(App$2,"setModuleDateTimeRange",setModuleDateTimeRange),he(App$2,"setupModuleMenus",setupModuleMenus),he(App$2,"showMessage",showMessage),he(App$2,"addAccessTokenRefreshListener",addAccessTokenRefreshListener),he(App$2,"addChannelDataListener",addChannelDataListener),he(App$2,"addMenuListener",addMenuListener),he(App$2,"addModuleConfigurationListener",addModuleConfigurationListener),he(App$2,"addModuleDataListener",addModuleDataListener),he(App$2,"addOverviewDeviceListener",addOverviewDeviceListener),he(App$2,"addStreamListener",addStreamListener),he(App$2,"getDate",getDate),he(App$2,"prompt",prompt),he(App$2,"_isOnline",null);class CaptureStream{constructor(s){he(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){he(this,"ready",!1),he(this,"listeners",[]),he(this,"openListeners",[]),he(this,"closeListeners",[]),he(this,"errorListeners",[]),he(this,"binaryListeners",[]),he(this,"error"),he(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,ot,ut,dt,Ut,st,ct=0;for(dt=0;dt<=MAX_BITS$1;dt++)o.bl_count[dt]=0;for(_[o.heap[o.heap_max]*2+1]=0,rt=o.heap_max+1;rtnt&&(dt=nt,ct++),_[ot*2+1]=dt,!(ot>j)&&(o.bl_count[dt]++,Ut=0,ot>=tt&&(Ut=et[ot-tt]),st=_[ot*2],o.opt_len+=st*(dt+Ut),_e&&(o.static_len+=st*($[ot*2+1]+Ut)));if(ct!==0){do{for(dt=nt-1;o.bl_count[dt]===0;)dt--;o.bl_count[dt]--,o.bl_count[dt+1]+=2,o.bl_count[nt]--,ct-=2}while(ct>0);for(dt=nt;dt!==0;dt--)for(ot=o.bl_count[dt];ot!==0;)ut=o.heap[--rt],!(ut>j)&&(_[ut*2+1]!==dt&&(o.opt_len+=(dt-_[ut*2+1])*_[ut*2],_[ut*2+1]=dt),ot--)}},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,ot=o.w_mask,ut=o.prev,dt=o.strstart+MAX_MATCH;let Ut=rt[j+et-1],st=rt[j+et];o.prev_length>=o.good_match&&(_>>=2),tt>o.lookahead&&(tt=o.lookahead);do if($=s,!(rt[$+et]!==st||rt[$+et-1]!==Ut||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;Ut=rt[j+et-1],st=rt[j+et]}}while((s=ut[s&ot])>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),ot=_e.sub(_e.end(nt),_-tt-1),ut=formatTimeFrameText(rt.toLocaleDateString(),ot.toLocaleDateString()),dt=await queryEvents({...$,eventTypes:o,start:new Date(rt).toISOString(),end:new Date(ot).toISOString()});return{date:ut,events:dt}}))}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 ot=new Date(nt).toISOString(),ut=rt===_e.length-1?new Date(Date.now()).toISOString():new Date(_e[rt+1]);return getAnnotationCount({...o,start:ot,end:ut},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()})(window,function(){return function(o){function s(rt){for(var ot,ut,dt=rt[0],Ut=rt[1],st=0,ct=[];st1?"s":"")+" required, but only "+Ht.length+" present")}function rt(Kt){if(Kt===null||Kt===!0||Kt===!1)return NaN;var Ht=Number(Kt);return isNaN(Ht)?Ht:Ht<0?Math.ceil(Ht):Math.floor(Ht)}var ot={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},ut=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,dt=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,Ut=/^([+-])(\d{2})(?::?(\d{2}))?$/;function st(Kt){var Ht,on={},sn=Kt.split(ot.dateTimeDelimiter);if(sn.length>2)return on;if(/:/.test(sn[0])?Ht=sn[0]:(on.date=sn[0],Ht=sn[1],ot.timeZoneDelimiter.test(on.date)&&(on.date=Kt.split(ot.timeZoneDelimiter)[0],Ht=Kt.substr(on.date.length,Kt.length))),Ht){var gn=ot.timezone.exec(Ht);gn?(on.time=Ht.replace(gn[1],""),on.timezone=gn[1]):on.time=Ht}return on}function ct(Kt,Ht){var on=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+Ht)+"})|(\\d{2}|[+-]\\d{"+(2+Ht)+"})$)"),sn=Kt.match(on);if(!sn)return{year:NaN,restDateString:""};var gn=sn[1]?parseInt(sn[1]):null,Cn=sn[2]?parseInt(sn[2]):null;return{year:Cn===null?gn:100*Cn,restDateString:Kt.slice((sn[1]||sn[2]).length)}}function pt(Kt,Ht){if(Ht===null)return new Date(NaN);var on=Kt.match(ut);if(!on)return new Date(NaN);var sn=!!on[4],gn=Bt(on[1]),Cn=Bt(on[2])-1,In=Bt(on[3]),Mn=Bt(on[4]),rr=Bt(on[5])-1;if(sn)return function(Dn,Hn,Fr){return Hn>=1&&Hn<=53&&Fr>=0&&Fr<=6}(0,Mn,rr)?function(Dn,Hn,Fr){var hr=new Date(0);hr.setUTCFullYear(Dn,0,4);var Gr=hr.getUTCDay()||7,Co=7*(Hn-1)+Fr+1-Gr;return hr.setUTCDate(hr.getUTCDate()+Co),hr}(Ht,Mn,rr):new Date(NaN);var An=new Date(0);return function(Dn,Hn,Fr){return Hn>=0&&Hn<=11&&Fr>=1&&Fr<=(Ft[Hn]||(yt(Dn)?29:28))}(Ht,Cn,In)&&function(Dn,Hn){return Hn>=1&&Hn<=(yt(Dn)?366:365)}(Ht,gn)?(An.setUTCFullYear(Ht,Cn,Math.max(gn,In)),An):new Date(NaN)}function Bt(Kt){return Kt?parseInt(Kt):1}function Qt(Kt){var Ht=Kt.match(dt);if(!Ht)return NaN;var on=gt(Ht[1]),sn=gt(Ht[2]),gn=gt(Ht[3]);return function(Cn,In,Mn){return Cn===24?In===0&&Mn===0:Mn>=0&&Mn<60&&In>=0&&In<60&&Cn>=0&&Cn<25}(on,sn,gn)?36e5*on+6e4*sn+1e3*gn:NaN}function gt(Kt){return Kt&&parseFloat(Kt.replace(",","."))||0}function ft(Kt){if(Kt==="Z")return 0;var Ht=Kt.match(Ut);if(!Ht)return 0;var on=Ht[1]==="+"?-1:1,sn=parseInt(Ht[2]),gn=Ht[3]&&parseInt(Ht[3])||0;return function(Cn,In){return In>=0&&In<=59}(0,gn)?on*(36e5*sn+6e4*gn):NaN}var Ft=[31,null,31,30,31,30,31,31,30,31,30,31];function yt(Kt){return Kt%400==0||Kt%4==0&&Kt%100!=0}var Ct=_(40);function xt(Kt){return nt(1,arguments),Kt instanceof Date||Object(Ct.a)(Kt)==="object"&&Object.prototype.toString.call(Kt)==="[object Date]"}function ht(Kt){nt(1,arguments);var Ht=Object.prototype.toString.call(Kt);return Kt instanceof Date||Object(Ct.a)(Kt)==="object"&&Ht==="[object Date]"?new Date(Kt.getTime()):typeof Kt=="number"||Ht==="[object Number]"?new Date(Kt):(typeof Kt!="string"&&Ht!=="[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 mt(Kt){const Ht=function(on,sn){var gn;nt(1,arguments);var Cn=rt((gn=sn==null?void 0:sn.additionalDigits)!==null&&gn!==void 0?gn:2);if(Cn!==2&&Cn!==1&&Cn!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(typeof on!="string"&&Object.prototype.toString.call(on)!=="[object String]")return new Date(NaN);var In,Mn=st(on);if(Mn.date){var rr=ct(Mn.date,Cn);In=pt(rr.restDateString,rr.year)}if(!In||isNaN(In.getTime()))return new Date(NaN);var An,Dn=In.getTime(),Hn=0;if(Mn.time&&(Hn=Qt(Mn.time),isNaN(Hn)))return new Date(NaN);if(!Mn.timezone){var Fr=new Date(Dn+Hn),hr=new Date(0);return hr.setFullYear(Fr.getUTCFullYear(),Fr.getUTCMonth(),Fr.getUTCDate()),hr.setHours(Fr.getUTCHours(),Fr.getUTCMinutes(),Fr.getUTCSeconds(),Fr.getUTCMilliseconds()),hr}return An=ft(Mn.timezone),isNaN(An)?new Date(NaN):new Date(Dn+Hn+An)}(Kt);if(!function(on){if(nt(1,arguments),!xt(on)&&typeof on!="number")return!1;var sn=ht(on);return!isNaN(Number(sn))}(Ht))throw new Error(`Invalid ISO 8601 date string (${Kt})`);return Ht}const It=Math.pow(2,20),vt=It;var Tt=_(3),Ot=_(28);function _t(Kt){return et()(Kt,{cycles:!0})}var Wt=function(Kt,Ht){var on={};for(var sn in Kt)Object.prototype.hasOwnProperty.call(Kt,sn)&&Ht.indexOf(sn)<0&&(on[sn]=Kt[sn]);if(Kt!=null&&typeof Object.getOwnPropertySymbols=="function"){var gn=0;for(sn=Object.getOwnPropertySymbols(Kt);gnon?Object(Ot.a)(rr):rr;if(!Kt.stack)return{message:_t(sn(Kt))};const{name:gn,message:Cn,stack:In}=Kt,Mn=Wt(Kt,["name","message","stack"]);return{name:gn,message:Cn!==void 0?Cn:_t(sn(Kt)),stack:In,meta:Mn&&Object.keys(Mn).length===0?void 0:sn(Mn)}}function Jt(Kt,Ht={}){const{message:on,stack:sn,meta:gn}=bt(Kt,Ht);return`${sn||on||""}${gn&&Object.keys(gn).length>0?" -- "+_t(gn):""}`}var Zt=_(236);const Vt=Object(Zt.a)();var jt=_(14),zt=_.n(jt),$t=function(Kt,Ht,on,sn){return new(on||(on=Promise))(function(gn,Cn){function In(An){try{rr(sn.next(An))}catch(Dn){Cn(Dn)}}function Mn(An){try{rr(sn.throw(An))}catch(Dn){Cn(Dn)}}function rr(An){var Dn;An.done?gn(An.value):(Dn=An.value,Dn instanceof on?Dn:new on(function(Hn){Hn(Dn)})).then(In,Mn)}rr((sn=sn.apply(Kt,Ht||[])).next())})},nn=function(Kt,Ht){var on={};for(var sn in Kt)Object.prototype.hasOwnProperty.call(Kt,sn)&&Ht.indexOf(sn)<0&&(on[sn]=Kt[sn]);if(Kt!=null&&typeof Object.getOwnPropertySymbols=="function"){var gn=0;for(sn=Object.getOwnPropertySymbols(Kt);gn{var{timestamp:Ht,level:on,message:sn,error:gn}=Kt,Cn=Dt(Kt,["timestamp","level","message","error"]);const In=Object.assign(Object.assign({timestamp:Ht?mt(Ht).getTime():new Date().getTime(),level:on.toUpperCase(),message:sn},gn?{error:bt(gn)}:{}),{meta:Object.assign(Object.assign({},wt),Cn)});return et()(In,{cycles:!0})}):tt.format.printf(Kt=>{var{timestamp:Ht,level:on,message:sn,error:gn}=Kt,Cn=Dt(Kt,["timestamp","level","message","error"]);let In=`${Ht||new Date().toISOString()} ${on.toUpperCase()}: ${sn} `;return Object.keys(Cn).length>0&&(In+=et()(Cn,{cycles:!0})),gn&&(In+=` -`+Jt(gn)),In}),kt=Object(tt.createLogger)({level:Tt.g});if(kt.add(new tt.transports.Console({format:Et,level:"debug"})),kt.transports.forEach(Kt=>{Kt.silent=!Tt.h}),Tt.e&&kt.add(new rn(Tt.e,wt)),Tt.i){const Kt=$.resolve(j.tmpdir(),`silly-${Tt.a}.log`);kt.debug("Logging silly logs to file",{filename:Kt}),kt.add(new tt.transports.File({filename:Kt,maxsize:1*vt,maxFiles:10,format:tt.format.combine((Pt="silly",Object(tt.format)(Ht=>Ht.level===Pt&&Ht)()),Et),level:"silly"}))}var Pt},function(o,s,_){_.d(s,"a",function(){return $});const j=864e5,$={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:j,week:6048e5,month:2592e6,year:31536e6}},function(o,s){var _,j,$=o.exports={};function _e(){throw new Error("setTimeout has not been defined")}function et(){throw new Error("clearTimeout has not been defined")}function tt(pt){if(_===setTimeout)return setTimeout(pt,0);if((_===_e||!_)&&setTimeout)return _=setTimeout,setTimeout(pt,0);try{return _(pt,0)}catch{try{return _.call(null,pt,0)}catch{return _.call(this,pt,0)}}}(function(){try{_=typeof setTimeout=="function"?setTimeout:_e}catch{_=_e}try{j=typeof clearTimeout=="function"?clearTimeout:et}catch{j=et}})();var nt,rt=[],ot=!1,ut=-1;function dt(){ot&&nt&&(ot=!1,nt.length?rt=nt.concat(rt):ut=-1,rt.length&&Ut())}function Ut(){if(!ot){var pt=tt(dt);ot=!0;for(var Bt=rt.length;Bt;){for(nt=rt,rt=[];++ut1)for(var Qt=1;Qt=tt())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+tt().toString(16)+" bytes");return 0|Et}function ct(Et,kt){if(rt.isBuffer(Et))return Et.length;if(typeof ArrayBuffer<"u"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(Et)||Et instanceof ArrayBuffer))return Et.byteLength;typeof Et!="string"&&(Et=""+Et);var Pt=Et.length;if(Pt===0)return 0;for(var Kt=!1;;)switch(kt){case"ascii":case"latin1":case"binary":return Pt;case"utf8":case"utf-8":case void 0:return rn(Et).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*Pt;case"hex":return Pt>>>1;case"base64":return Dt(Et).length;default:if(Kt)return rn(Et).length;kt=(""+kt).toLowerCase(),Kt=!0}}function pt(Et,kt,Pt){var Kt=!1;if((kt===void 0||kt<0)&&(kt=0),kt>this.length||((Pt===void 0||Pt>this.length)&&(Pt=this.length),Pt<=0)||(Pt>>>=0)<=(kt>>>=0))return"";for(Et||(Et="utf8");;)switch(Et){case"hex":return Ot(this,kt,Pt);case"utf8":case"utf-8":return It(this,kt,Pt);case"ascii":return vt(this,kt,Pt);case"latin1":case"binary":return Tt(this,kt,Pt);case"base64":return mt(this,kt,Pt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _t(this,kt,Pt);default:if(Kt)throw new TypeError("Unknown encoding: "+Et);Et=(Et+"").toLowerCase(),Kt=!0}}function Bt(Et,kt,Pt){var Kt=Et[kt];Et[kt]=Et[Pt],Et[Pt]=Kt}function Qt(Et,kt,Pt,Kt,Ht){if(Et.length===0)return-1;if(typeof Pt=="string"?(Kt=Pt,Pt=0):Pt>2147483647?Pt=2147483647:Pt<-2147483648&&(Pt=-2147483648),Pt=+Pt,isNaN(Pt)&&(Pt=Ht?0:Et.length-1),Pt<0&&(Pt=Et.length+Pt),Pt>=Et.length){if(Ht)return-1;Pt=Et.length-1}else if(Pt<0){if(!Ht)return-1;Pt=0}if(typeof kt=="string"&&(kt=rt.from(kt,Kt)),rt.isBuffer(kt))return kt.length===0?-1:gt(Et,kt,Pt,Kt,Ht);if(typeof kt=="number")return kt&=255,rt.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?Ht?Uint8Array.prototype.indexOf.call(Et,kt,Pt):Uint8Array.prototype.lastIndexOf.call(Et,kt,Pt):gt(Et,[kt],Pt,Kt,Ht);throw new TypeError("val must be string, number or Buffer")}function gt(Et,kt,Pt,Kt,Ht){var on,sn=1,gn=Et.length,Cn=kt.length;if(Kt!==void 0&&((Kt=String(Kt).toLowerCase())==="ucs2"||Kt==="ucs-2"||Kt==="utf16le"||Kt==="utf-16le")){if(Et.length<2||kt.length<2)return-1;sn=2,gn/=2,Cn/=2,Pt/=2}function In(Dn,Hn){return sn===1?Dn[Hn]:Dn.readUInt16BE(Hn*sn)}if(Ht){var Mn=-1;for(on=Pt;ongn&&(Pt=gn-Cn),on=Pt;on>=0;on--){for(var rr=!0,An=0;AnHt&&(Kt=Ht):Kt=Ht;var on=kt.length;if(on%2!=0)throw new TypeError("Invalid hex string");Kt>on/2&&(Kt=on/2);for(var sn=0;sn>8,Cn=sn%256,In.push(Cn),In.push(gn);return In}(kt,Et.length-Pt),Et,Pt,Kt)}function mt(Et,kt,Pt){return kt===0&&Pt===Et.length?$.fromByteArray(Et):$.fromByteArray(Et.slice(kt,Pt))}function It(Et,kt,Pt){Pt=Math.min(Et.length,Pt);for(var Kt=[],Ht=kt;Ht239?4:In>223?3:In>191?2:1;if(Ht+rr<=Pt)switch(rr){case 1:In<128&&(Mn=In);break;case 2:(192&(on=Et[Ht+1]))==128&&(Cn=(31&In)<<6|63&on)>127&&(Mn=Cn);break;case 3:on=Et[Ht+1],sn=Et[Ht+2],(192&on)==128&&(192&sn)==128&&(Cn=(15&In)<<12|(63&on)<<6|63&sn)>2047&&(Cn<55296||Cn>57343)&&(Mn=Cn);break;case 4:on=Et[Ht+1],sn=Et[Ht+2],gn=Et[Ht+3],(192&on)==128&&(192&sn)==128&&(192&gn)==128&&(Cn=(15&In)<<18|(63&on)<<12|(63&sn)<<6|63&gn)>65535&&Cn<1114112&&(Mn=Cn)}Mn===null?(Mn=65533,rr=1):Mn>65535&&(Mn-=65536,Kt.push(Mn>>>10&1023|55296),Mn=56320|1023&Mn),Kt.push(Mn),Ht+=rr}return function(An){var Dn=An.length;if(Dn<=4096)return String.fromCharCode.apply(String,An);for(var Hn="",Fr=0;Fr0&&(Et=this.toString("hex",0,kt).match(/.{2}/g).join(" "),this.length>kt&&(Et+=" ... ")),""},rt.prototype.compare=function(Et,kt,Pt,Kt,Ht){if(!rt.isBuffer(Et))throw new TypeError("Argument must be a Buffer");if(kt===void 0&&(kt=0),Pt===void 0&&(Pt=Et?Et.length:0),Kt===void 0&&(Kt=0),Ht===void 0&&(Ht=this.length),kt<0||Pt>Et.length||Kt<0||Ht>this.length)throw new RangeError("out of range index");if(Kt>=Ht&&kt>=Pt)return 0;if(Kt>=Ht)return-1;if(kt>=Pt)return 1;if(this===Et)return 0;for(var on=(Ht>>>=0)-(Kt>>>=0),sn=(Pt>>>=0)-(kt>>>=0),gn=Math.min(on,sn),Cn=this.slice(Kt,Ht),In=Et.slice(kt,Pt),Mn=0;MnHt)&&(Pt=Ht),Et.length>0&&(Pt<0||kt<0)||kt>this.length)throw new RangeError("Attempt to write outside buffer bounds");Kt||(Kt="utf8");for(var on=!1;;)switch(Kt){case"hex":return ft(this,Et,kt,Pt);case"utf8":case"utf-8":return Ft(this,Et,kt,Pt);case"ascii":return yt(this,Et,kt,Pt);case"latin1":case"binary":return Ct(this,Et,kt,Pt);case"base64":return xt(this,Et,kt,Pt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ht(this,Et,kt,Pt);default:if(on)throw new TypeError("Unknown encoding: "+Kt);Kt=(""+Kt).toLowerCase(),on=!0}},rt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function vt(Et,kt,Pt){var Kt="";Pt=Math.min(Et.length,Pt);for(var Ht=kt;HtKt)&&(Pt=Kt);for(var Ht="",on=kt;onPt)throw new RangeError("Trying to access beyond buffer length")}function bt(Et,kt,Pt,Kt,Ht,on){if(!rt.isBuffer(Et))throw new TypeError('"buffer" argument must be a Buffer instance');if(kt>Ht||ktEt.length)throw new RangeError("Index out of range")}function Jt(Et,kt,Pt,Kt){kt<0&&(kt=65535+kt+1);for(var Ht=0,on=Math.min(Et.length-Pt,2);Ht>>8*(Kt?Ht:1-Ht)}function Zt(Et,kt,Pt,Kt){kt<0&&(kt=4294967295+kt+1);for(var Ht=0,on=Math.min(Et.length-Pt,4);Ht>>8*(Kt?Ht:3-Ht)&255}function Vt(Et,kt,Pt,Kt,Ht,on){if(Pt+Kt>Et.length)throw new RangeError("Index out of range");if(Pt<0)throw new RangeError("Index out of range")}function jt(Et,kt,Pt,Kt,Ht){return Ht||Vt(Et,0,Pt,4),_e.write(Et,kt,Pt,Kt,23,4),Pt+4}function zt(Et,kt,Pt,Kt,Ht){return Ht||Vt(Et,0,Pt,8),_e.write(Et,kt,Pt,Kt,52,8),Pt+8}rt.prototype.slice=function(Et,kt){var Pt,Kt=this.length;if((Et=~~Et)<0?(Et+=Kt)<0&&(Et=0):Et>Kt&&(Et=Kt),(kt=kt===void 0?Kt:~~kt)<0?(kt+=Kt)<0&&(kt=0):kt>Kt&&(kt=Kt),kt0&&(Ht*=256);)Kt+=this[Et+--kt]*Ht;return Kt},rt.prototype.readUInt8=function(Et,kt){return kt||Wt(Et,1,this.length),this[Et]},rt.prototype.readUInt16LE=function(Et,kt){return kt||Wt(Et,2,this.length),this[Et]|this[Et+1]<<8},rt.prototype.readUInt16BE=function(Et,kt){return kt||Wt(Et,2,this.length),this[Et]<<8|this[Et+1]},rt.prototype.readUInt32LE=function(Et,kt){return kt||Wt(Et,4,this.length),(this[Et]|this[Et+1]<<8|this[Et+2]<<16)+16777216*this[Et+3]},rt.prototype.readUInt32BE=function(Et,kt){return kt||Wt(Et,4,this.length),16777216*this[Et]+(this[Et+1]<<16|this[Et+2]<<8|this[Et+3])},rt.prototype.readIntLE=function(Et,kt,Pt){Et|=0,kt|=0,Pt||Wt(Et,kt,this.length);for(var Kt=this[Et],Ht=1,on=0;++on=(Ht*=128)&&(Kt-=Math.pow(2,8*kt)),Kt},rt.prototype.readIntBE=function(Et,kt,Pt){Et|=0,kt|=0,Pt||Wt(Et,kt,this.length);for(var Kt=kt,Ht=1,on=this[Et+--Kt];Kt>0&&(Ht*=256);)on+=this[Et+--Kt]*Ht;return on>=(Ht*=128)&&(on-=Math.pow(2,8*kt)),on},rt.prototype.readInt8=function(Et,kt){return kt||Wt(Et,1,this.length),128&this[Et]?-1*(255-this[Et]+1):this[Et]},rt.prototype.readInt16LE=function(Et,kt){kt||Wt(Et,2,this.length);var Pt=this[Et]|this[Et+1]<<8;return 32768&Pt?4294901760|Pt:Pt},rt.prototype.readInt16BE=function(Et,kt){kt||Wt(Et,2,this.length);var Pt=this[Et+1]|this[Et]<<8;return 32768&Pt?4294901760|Pt:Pt},rt.prototype.readInt32LE=function(Et,kt){return kt||Wt(Et,4,this.length),this[Et]|this[Et+1]<<8|this[Et+2]<<16|this[Et+3]<<24},rt.prototype.readInt32BE=function(Et,kt){return kt||Wt(Et,4,this.length),this[Et]<<24|this[Et+1]<<16|this[Et+2]<<8|this[Et+3]},rt.prototype.readFloatLE=function(Et,kt){return kt||Wt(Et,4,this.length),_e.read(this,Et,!0,23,4)},rt.prototype.readFloatBE=function(Et,kt){return kt||Wt(Et,4,this.length),_e.read(this,Et,!1,23,4)},rt.prototype.readDoubleLE=function(Et,kt){return kt||Wt(Et,8,this.length),_e.read(this,Et,!0,52,8)},rt.prototype.readDoubleBE=function(Et,kt){return kt||Wt(Et,8,this.length),_e.read(this,Et,!1,52,8)},rt.prototype.writeUIntLE=function(Et,kt,Pt,Kt){Et=+Et,kt|=0,Pt|=0,Kt||bt(this,Et,kt,Pt,Math.pow(2,8*Pt)-1,0);var Ht=1,on=0;for(this[kt]=255&Et;++on=0&&(on*=256);)this[kt+Ht]=Et/on&255;return kt+Pt},rt.prototype.writeUInt8=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,1,255,0),rt.TYPED_ARRAY_SUPPORT||(Et=Math.floor(Et)),this[kt]=255&Et,kt+1},rt.prototype.writeUInt16LE=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,2,65535,0),rt.TYPED_ARRAY_SUPPORT?(this[kt]=255&Et,this[kt+1]=Et>>>8):Jt(this,Et,kt,!0),kt+2},rt.prototype.writeUInt16BE=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,2,65535,0),rt.TYPED_ARRAY_SUPPORT?(this[kt]=Et>>>8,this[kt+1]=255&Et):Jt(this,Et,kt,!1),kt+2},rt.prototype.writeUInt32LE=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,4,4294967295,0),rt.TYPED_ARRAY_SUPPORT?(this[kt+3]=Et>>>24,this[kt+2]=Et>>>16,this[kt+1]=Et>>>8,this[kt]=255&Et):Zt(this,Et,kt,!0),kt+4},rt.prototype.writeUInt32BE=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,4,4294967295,0),rt.TYPED_ARRAY_SUPPORT?(this[kt]=Et>>>24,this[kt+1]=Et>>>16,this[kt+2]=Et>>>8,this[kt+3]=255&Et):Zt(this,Et,kt,!1),kt+4},rt.prototype.writeIntLE=function(Et,kt,Pt,Kt){if(Et=+Et,kt|=0,!Kt){var Ht=Math.pow(2,8*Pt-1);bt(this,Et,kt,Pt,Ht-1,-Ht)}var on=0,sn=1,gn=0;for(this[kt]=255&Et;++on>0)-gn&255;return kt+Pt},rt.prototype.writeIntBE=function(Et,kt,Pt,Kt){if(Et=+Et,kt|=0,!Kt){var Ht=Math.pow(2,8*Pt-1);bt(this,Et,kt,Pt,Ht-1,-Ht)}var on=Pt-1,sn=1,gn=0;for(this[kt+on]=255&Et;--on>=0&&(sn*=256);)Et<0&&gn===0&&this[kt+on+1]!==0&&(gn=1),this[kt+on]=(Et/sn>>0)-gn&255;return kt+Pt},rt.prototype.writeInt8=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,1,127,-128),rt.TYPED_ARRAY_SUPPORT||(Et=Math.floor(Et)),Et<0&&(Et=255+Et+1),this[kt]=255&Et,kt+1},rt.prototype.writeInt16LE=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,2,32767,-32768),rt.TYPED_ARRAY_SUPPORT?(this[kt]=255&Et,this[kt+1]=Et>>>8):Jt(this,Et,kt,!0),kt+2},rt.prototype.writeInt16BE=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,2,32767,-32768),rt.TYPED_ARRAY_SUPPORT?(this[kt]=Et>>>8,this[kt+1]=255&Et):Jt(this,Et,kt,!1),kt+2},rt.prototype.writeInt32LE=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,4,2147483647,-2147483648),rt.TYPED_ARRAY_SUPPORT?(this[kt]=255&Et,this[kt+1]=Et>>>8,this[kt+2]=Et>>>16,this[kt+3]=Et>>>24):Zt(this,Et,kt,!0),kt+4},rt.prototype.writeInt32BE=function(Et,kt,Pt){return Et=+Et,kt|=0,Pt||bt(this,Et,kt,4,2147483647,-2147483648),Et<0&&(Et=4294967295+Et+1),rt.TYPED_ARRAY_SUPPORT?(this[kt]=Et>>>24,this[kt+1]=Et>>>16,this[kt+2]=Et>>>8,this[kt+3]=255&Et):Zt(this,Et,kt,!1),kt+4},rt.prototype.writeFloatLE=function(Et,kt,Pt){return jt(this,Et,kt,!0,Pt)},rt.prototype.writeFloatBE=function(Et,kt,Pt){return jt(this,Et,kt,!1,Pt)},rt.prototype.writeDoubleLE=function(Et,kt,Pt){return zt(this,Et,kt,!0,Pt)},rt.prototype.writeDoubleBE=function(Et,kt,Pt){return zt(this,Et,kt,!1,Pt)},rt.prototype.copy=function(Et,kt,Pt,Kt){if(Pt||(Pt=0),Kt||Kt===0||(Kt=this.length),kt>=Et.length&&(kt=Et.length),kt||(kt=0),Kt>0&&Kt=this.length)throw new RangeError("sourceStart out of bounds");if(Kt<0)throw new RangeError("sourceEnd out of bounds");Kt>this.length&&(Kt=this.length),Et.length-kt=0;--Ht)Et[Ht+kt]=this[Ht+Pt];else if(on<1e3||!rt.TYPED_ARRAY_SUPPORT)for(Ht=0;Ht>>=0,Pt=Pt===void 0?this.length:Pt>>>0,Et||(Et=0),typeof Et=="number")for(on=kt;on55295&&Pt<57344){if(!Ht){if(Pt>56319){(kt-=3)>-1&&on.push(239,191,189);continue}if(sn+1===Kt){(kt-=3)>-1&&on.push(239,191,189);continue}Ht=Pt;continue}if(Pt<56320){(kt-=3)>-1&&on.push(239,191,189),Ht=Pt;continue}Pt=65536+(Ht-55296<<10|Pt-56320)}else Ht&&(kt-=3)>-1&&on.push(239,191,189);if(Ht=null,Pt<128){if((kt-=1)<0)break;on.push(Pt)}else if(Pt<2048){if((kt-=2)<0)break;on.push(Pt>>6|192,63&Pt|128)}else if(Pt<65536){if((kt-=3)<0)break;on.push(Pt>>12|224,Pt>>6&63|128,63&Pt|128)}else{if(!(Pt<1114112))throw new Error("Invalid code point");if((kt-=4)<0)break;on.push(Pt>>18|240,Pt>>12&63|128,Pt>>6&63|128,63&Pt|128)}}return on}function Dt(Et){return $.toByteArray(function(kt){if((kt=function(Pt){return Pt.trim?Pt.trim():Pt.replace(/^\s+|\s+$/g,"")}(kt).replace($t,"")).length<2)return"";for(;kt.length%4!=0;)kt+="=";return kt}(Et))}function wt(Et,kt,Pt,Kt){for(var Ht=0;Ht=kt.length||Ht>=Et.length);++Ht)kt[Ht+Pt]=Et[Ht];return Ht}}).call(this,_(6))},function(o,s){var _;_=function(){return this}();try{_=_||new Function("return this")()}catch{typeof window=="object"&&(_=window)}o.exports=_},function(o,s){typeof Object.create=="function"?o.exports=function(_,j){j&&(_.super_=j,_.prototype=Object.create(j.prototype,{constructor:{value:_,enumerable:!1,writable:!0,configurable:!0}}))}:o.exports=function(_,j){if(j){_.super_=j;var $=function(){};$.prototype=j.prototype,_.prototype=new $,_.prototype.constructor=_}}},function(o,s,_){function j(dt){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})(dt)}function $(dt,Ut){if(Ut&&(j(Ut)==="object"||typeof Ut=="function"))return Ut;if(Ut!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return _e(dt)}function _e(dt){if(dt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return dt}function et(dt){var Ut=typeof Map=="function"?new Map:void 0;return(et=function(st){if(st===null||(ct=st,Function.toString.call(ct).indexOf("[native code]")===-1))return st;var ct;if(typeof st!="function")throw new TypeError("Super expression must either be null or a function");if(Ut!==void 0){if(Ut.has(st))return Ut.get(st);Ut.set(st,pt)}function pt(){return tt(st,arguments,ot(this).constructor)}return pt.prototype=Object.create(st.prototype,{constructor:{value:pt,enumerable:!1,writable:!0,configurable:!0}}),rt(pt,st)})(dt)}function tt(dt,Ut,st){return(tt=nt()?Reflect.construct.bind():function(ct,pt,Bt){var Qt=[null];Qt.push.apply(Qt,pt);var gt=new(Function.bind.apply(ct,Qt));return Bt&&rt(gt,Bt.prototype),gt}).apply(null,arguments)}function nt(){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 rt(dt,Ut){return(rt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(st,ct){return st.__proto__=ct,st})(dt,Ut)}function ot(dt){return(ot=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Ut){return Ut.__proto__||Object.getPrototypeOf(Ut)})(dt)}var ut=function(dt){(function(Qt,gt){if(typeof gt!="function"&>!==null)throw new TypeError("Super expression must either be null or a function");Qt.prototype=Object.create(gt&>.prototype,{constructor:{value:Qt,writable:!0,configurable:!0}}),Object.defineProperty(Qt,"prototype",{writable:!1}),gt&&rt(Qt,gt)})(Bt,dt);var Ut,st,ct,pt=(Ut=Bt,st=nt(),function(){var Qt,gt=ot(Ut);if(st){var ft=ot(this).constructor;Qt=Reflect.construct(gt,arguments,ft)}else Qt=gt.apply(this,arguments);return $(this,Qt)});function Bt(Qt){var gt;return function(ft,Ft){if(!(ft instanceof Ft))throw new TypeError("Cannot call a class as a function")}(this,Bt),gt=pt.call(this,`Format functions must be synchronous taking a two arguments: (info, opts) -Found: `.concat(Qt.toString().split(` -`)[0],` -`)),Error.captureStackTrace(_e(gt),Bt),gt}return ct=Bt,Object.defineProperty(ct,"prototype",{writable:!1}),ct}(et(Error));o.exports=function(dt){if(dt.length>2)throw new ut(dt);function Ut(){var ct=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.options=ct}function st(ct){return new Ut(ct)}return Ut.prototype.transform=dt,st.Format=Ut,st}},function(o,s,_){_.d(s,"a",function(){return j});const j=$=>new Promise(_e=>setTimeout(_e,$||0))},function(o,s,_){var j=_(98),$=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=_(97);$.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,ot={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&&(ot.$jspbMessageInstance=nt),ot}),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,ot={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&&(ot.$jspbMessageInstance=nt),ot}),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,ot={peer:(rt=nt.getPeer())&&proto.v1.signaling.api.Peer.toObject(tt,rt)};return tt&&(ot.$jspbMessageInstance=nt),ot}),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,ot={peer:(rt=nt.getPeer())&&proto.v1.signaling.api.Peer.toObject(tt,rt)};return tt&&(ot.$jspbMessageInstance=nt),ot}),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,ot={signal:(rt=nt.getSignal())&&proto.v1.signaling.api.Signal.toObject(tt,rt)};return tt&&(ot.$jspbMessageInstance=nt),ot}),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,ot={sessionId:(rt=nt.getSessionId())&&et.StringValue.toObject(tt,rt),sessionCreatedTimestamp:(rt=nt.getSessionCreatedTimestamp())&&et.Int64Value.toObject(tt,rt)};return tt&&(ot.$jspbMessageInstance=nt),ot}),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,ot={signal:(rt=nt.getSignal())&&proto.v1.signaling.api.Signal.toObject(tt,rt)};return tt&&(ot.$jspbMessageInstance=nt),ot}),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)},function(o,s,_){_.d(s,"a",function(){return $});var j=_(28);class $ extends Error{constructor(et,tt,nt,rt,ot,ut,dt={}){super("Response error "+JSON.stringify({method:et,url:tt,requestBody:Object(j.a)(nt),statusCode:rt,responseHeaders:ot?Object(j.a)([...ot.entries()].reduce((Ut,[st,ct])=>(Ut[st]=ct,Ut),{})):{},responseBody:Object(j.a)(ut)})),this.method=et,this.url=tt,this.requestBody=nt,this.statusCode=rt,this.headers=ot,this.body=ut,this.validationErrors=dt,this.name="ResponseError",Object.setPrototypeOf(this,new.target.prototype)}}},function(o,s,_){function j($,_e,et=()=>!0){if(function(tt,nt,rt=()=>!0){return tt instanceof nt&&rt(tt)}($,_e,et))return $;throw $}_.d(s,"a",function(){return j})},function(o,s,_){(function(j){var $=Object.getOwnPropertyDescriptors||function(Wt){for(var bt=Object.keys(Wt),Jt={},Zt=0;Zt=Vt)return $t;switch($t){case"%s":return String(Zt[Jt++]);case"%d":return Number(Zt[Jt++]);case"%j":try{return JSON.stringify(Zt[Jt++])}catch{return"[Circular]"}default:return $t}}),zt=Zt[Jt];Jt=3&&(Jt.depth=arguments[2]),arguments.length>=4&&(Jt.colors=arguments[3]),ct(bt)?Jt.showHidden=bt:bt&&s._extend(Jt,bt),gt(Jt.showHidden)&&(Jt.showHidden=!1),gt(Jt.depth)&&(Jt.depth=2),gt(Jt.colors)&&(Jt.colors=!1),gt(Jt.customInspect)&&(Jt.customInspect=!0),Jt.colors&&(Jt.stylize=rt),ut(Jt,Wt,Jt.depth)}function rt(Wt,bt){var Jt=nt.styles[bt];return Jt?"\x1B["+nt.colors[Jt][0]+"m"+Wt+"\x1B["+nt.colors[Jt][1]+"m":Wt}function ot(Wt,bt){return Wt}function ut(Wt,bt,Jt){if(Wt.customInspect&&bt&&xt(bt.inspect)&&bt.inspect!==s.inspect&&(!bt.constructor||bt.constructor.prototype!==bt)){var Zt=bt.inspect(Jt,Wt);return Qt(Zt)||(Zt=ut(Wt,Zt,Jt)),Zt}var Vt=function(Et,kt){if(gt(kt))return Et.stylize("undefined","undefined");if(Qt(kt)){var Pt="'"+JSON.stringify(kt).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return Et.stylize(Pt,"string")}if(Bt(kt))return Et.stylize(""+kt,"number");if(ct(kt))return Et.stylize(""+kt,"boolean");if(pt(kt))return Et.stylize("null","null")}(Wt,bt);if(Vt)return Vt;var jt=Object.keys(bt),zt=function(Et){var kt={};return Et.forEach(function(Pt,Kt){kt[Pt]=!0}),kt}(jt);if(Wt.showHidden&&(jt=Object.getOwnPropertyNames(bt)),Ct(bt)&&(jt.indexOf("message")>=0||jt.indexOf("description")>=0))return dt(bt);if(jt.length===0){if(xt(bt)){var $t=bt.name?": "+bt.name:"";return Wt.stylize("[Function"+$t+"]","special")}if(ft(bt))return Wt.stylize(RegExp.prototype.toString.call(bt),"regexp");if(yt(bt))return Wt.stylize(Date.prototype.toString.call(bt),"date");if(Ct(bt))return dt(bt)}var nn,rn="",Dt=!1,wt=["{","}"];return st(bt)&&(Dt=!0,wt=["[","]"]),xt(bt)&&(rn=" [Function"+(bt.name?": "+bt.name:"")+"]"),ft(bt)&&(rn=" "+RegExp.prototype.toString.call(bt)),yt(bt)&&(rn=" "+Date.prototype.toUTCString.call(bt)),Ct(bt)&&(rn=" "+dt(bt)),jt.length!==0||Dt&&bt.length!=0?Jt<0?ft(bt)?Wt.stylize(RegExp.prototype.toString.call(bt),"regexp"):Wt.stylize("[Object]","special"):(Wt.seen.push(bt),nn=Dt?function(Et,kt,Pt,Kt,Ht){for(var on=[],sn=0,gn=kt.length;sn=0,Kt+Ht.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?Pt[0]+(kt===""?"":kt+` - `)+" "+Et.join(`, - `)+" "+Pt[1]:Pt[0]+kt+" "+Et.join(", ")+" "+Pt[1]}(nn,rn,wt)):wt[0]+rn+wt[1]}function dt(Wt){return"["+Error.prototype.toString.call(Wt)+"]"}function Ut(Wt,bt,Jt,Zt,Vt,jt){var zt,$t,nn;if((nn=Object.getOwnPropertyDescriptor(bt,Vt)||{value:bt[Vt]}).get?$t=nn.set?Wt.stylize("[Getter/Setter]","special"):Wt.stylize("[Getter]","special"):nn.set&&($t=Wt.stylize("[Setter]","special")),Tt(Zt,Vt)||(zt="["+Vt+"]"),$t||(Wt.seen.indexOf(nn.value)<0?($t=pt(Jt)?ut(Wt,nn.value,null):ut(Wt,nn.value,Jt-1)).indexOf(` -`)>-1&&($t=jt?$t.split(` -`).map(function(rn){return" "+rn}).join(` -`).substr(2):` -`+$t.split(` -`).map(function(rn){return" "+rn}).join(` -`)):$t=Wt.stylize("[Circular]","special")),gt(zt)){if(jt&&Vt.match(/^\d+$/))return $t;(zt=JSON.stringify(""+Vt)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(zt=zt.substr(1,zt.length-2),zt=Wt.stylize(zt,"name")):(zt=zt.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),zt=Wt.stylize(zt,"string"))}return zt+": "+$t}function st(Wt){return Array.isArray(Wt)}function ct(Wt){return typeof Wt=="boolean"}function pt(Wt){return Wt===null}function Bt(Wt){return typeof Wt=="number"}function Qt(Wt){return typeof Wt=="string"}function gt(Wt){return Wt===void 0}function ft(Wt){return Ft(Wt)&&ht(Wt)==="[object RegExp]"}function Ft(Wt){return typeof Wt=="object"&&Wt!==null}function yt(Wt){return Ft(Wt)&&ht(Wt)==="[object Date]"}function Ct(Wt){return Ft(Wt)&&(ht(Wt)==="[object Error]"||Wt instanceof Error)}function xt(Wt){return typeof Wt=="function"}function ht(Wt){return Object.prototype.toString.call(Wt)}function mt(Wt){return Wt<10?"0"+Wt.toString(10):Wt.toString(10)}s.debuglog=function(Wt){if(gt(et)&&(et=j.env.NODE_DEBUG||""),Wt=Wt.toUpperCase(),!tt[Wt])if(new RegExp("\\b"+Wt+"\\b","i").test(et)){var bt=j.pid;tt[Wt]=function(){var Jt=s.format.apply(s,arguments);console.error("%s %d: %s",Wt,bt,Jt)}}else tt[Wt]=function(){};return tt[Wt]},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.isArray=st,s.isBoolean=ct,s.isNull=pt,s.isNullOrUndefined=function(Wt){return Wt==null},s.isNumber=Bt,s.isString=Qt,s.isSymbol=function(Wt){return typeof Wt=="symbol"},s.isUndefined=gt,s.isRegExp=ft,s.isObject=Ft,s.isDate=yt,s.isError=Ct,s.isFunction=xt,s.isPrimitive=function(Wt){return Wt===null||typeof Wt=="boolean"||typeof Wt=="number"||typeof Wt=="string"||typeof Wt=="symbol"||Wt===void 0},s.isBuffer=_(104);var It=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function vt(){var Wt=new Date,bt=[mt(Wt.getHours()),mt(Wt.getMinutes()),mt(Wt.getSeconds())].join(":");return[Wt.getDate(),It[Wt.getMonth()],bt].join(" ")}function Tt(Wt,bt){return Object.prototype.hasOwnProperty.call(Wt,bt)}s.log=function(){console.log("%s - %s",vt(),s.format.apply(s,arguments))},s.inherits=_(105),s._extend=function(Wt,bt){if(!bt||!Ft(bt))return Wt;for(var Jt=Object.keys(bt),Zt=Jt.length;Zt--;)Wt[Jt[Zt]]=bt[Jt[Zt]];return Wt};var Ot=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;function _t(Wt,bt){if(!Wt){var Jt=new Error("Promise was rejected with a falsy value");Jt.reason=Wt,Wt=Jt}return bt(Wt)}s.promisify=function(Wt){if(typeof Wt!="function")throw new TypeError('The "original" argument must be of type Function');if(Ot&&Wt[Ot]){var bt;if(typeof(bt=Wt[Ot])!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(bt,Ot,{value:bt,enumerable:!1,writable:!1,configurable:!0}),bt}function bt(){for(var Jt,Zt,Vt=new Promise(function($t,nn){Jt=$t,Zt=nn}),jt=[],zt=0;zt0&&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 ot=this.level||this.parent&&this.parent.level;if(!ot||this.levels[ot]>=this.levels[tt[_e]]){if(tt&&!this.format)return this.log(tt,rt);var ut=void 0,dt=void 0;try{dt=this.format.transform(Object.assign({},tt),this.format.options)}catch(Ut){ut=Ut}if(ut||!dt){if(rt(),ut)throw ut;return}return this.log(dt,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 ot=0;ot=this.levels[nt[_e]])||!this.handleExceptions&&nt.exception===!0)},et.prototype._nop=function(){},o.exports.LegacyTransportStream=_(151)},function(o,s,_){o.exports=function(j,$){$||($={}),typeof $=="function"&&($={cmp:$});var _e,et=typeof $.cycles=="boolean"&&$.cycles,tt=$.cmp&&(_e=$.cmp,function(rt){return function(ot,ut){var dt={key:ot,value:rt[ot]},Ut={key:ut,value:rt[ut]};return _e(dt,Ut)}}),nt=[];return function rt(ot){if(ot&&ot.toJSON&&typeof ot.toJSON=="function"&&(ot=ot.toJSON()),ot!==void 0){if(typeof ot=="number")return isFinite(ot)?""+ot:"null";if(typeof ot!="object")return JSON.stringify(ot);var ut,dt;if(Array.isArray(ot)){for(dt="[",ut=0;ut(an=an||0)&&(an=Math.max(an+mn,0));anGt?1:0}e:{var Cn=yt.navigator;if(Cn){var In=Cn.userAgent;if(In){Kt=In;break e}}Kt=""}var Mn="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function rr(Nt){var Gt=1;Nt=Nt.split(":");for(var an=[];0parseFloat(Jr)){Dn=String(ro);break e}}Dn=Jr}var sr={};function Xn(){return function(Nt){var Gt=sr;return Object.prototype.hasOwnProperty.call(Gt,9)?Gt[9]:Gt[9]=Nt(9)}(function(){for(var Nt=0,Gt=on(String(Dn)).split("."),an=on("9").split("."),cn=Math.max(Gt.length,an.length),mn=0;Nt==0&&mn>>0);function bn(Nt){return typeof Nt=="function"?Nt:(Nt[hn]||(Nt[hn]=function(Gt){return Nt.handleEvent(Gt)}),Nt[hn])}function Vn(){gr.call(this),this.f=new Oo(this),this.U=this}function Qn(Nt,Gt){Nt=Nt.U;var an=Gt.type||Gt;if(typeof Gt=="string")Gt=new Wr(Gt,Nt);else if(Gt instanceof Wr)Gt.target=Gt.target||Nt;else{var cn=Gt;(function(mn,Tn){for(var fn,vn,kn=1;kn=(Nt?Lr(Bo(Go(),Nt.getName())):Kr).value),cn&&(Gt=Gt||Kr,cn=Bo(Go(),Nt.getName()),typeof an=="function"&&(an=an()),Nr||(Nr=new Zr),function(mn,Tn){for(;mn;)mn.f.forEach(function(fn){fn(Tn)}),mn=mn.b}(cn,Nt=new Dr(Gt,an,Nt=Nt.getName())))}function Fo(Nt,Gt){Nt&&$a(Nt,vr,Gt)}function Dl(){}function Ml(Nt){var Gt;return(Gt=Nt.a)||(Gt={},Hs(Nt)&&(Gt[0]=!0,Gt[1]=!0),Gt=Nt.a=Gt),Gt}function Al(){}function Ys(Nt){return(Nt=Hs(Nt))?new ActiveXObject(Nt):new XMLHttpRequest}function Hs(Nt){if(!Nt.b&&typeof XMLHttpRequest>"u"&&typeof ActiveXObject<"u"){for(var Gt=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],an=0;an2*this.size&&Rs(this),!0)},$.get=function(Nt,Gt){return ts(this.o,Nt)?this.o[Nt]:Gt},$.set=function(Nt,Gt){ts(this.o,Nt)||(this.size+=1,this.j.push(Nt),this.B++),this.o[Nt]=Gt},$.addAll=function(Nt){if(Nt instanceof Bs)for(var Gt=Nt.G(),an=0;an=cn.j.length)throw es;var Tn=cn.j[Gt++];return Nt?Tn:cn.o[Tn]},mn.next=mn.a.bind(mn),mn};var Ol=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^\\/?#]*)@)?([^\\/?#]*?)(?::([0-9]+))?(?=[\\/?#]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/;function ns(Nt){Vn.call(this),this.headers=new Bs,this.C=Nt||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=_s,this.I=this.M=!1}Tt(ns,Vn);var _s="";ns.prototype.b=Bo(Go(),"goog.net.XhrIo",void 0).g;var rs=/^https?$/i,xl=["POST","PUT"];function Il(Nt,Gt,an){if(Nt.a)throw Error("[goog.net.XhrIo] Object is active with another request="+Nt.v+"; newUri="+Gt);Nt.v=Gt,Nt.l="",Nt.g=0,Nt.P="POST",Nt.L=!1,Nt.c=!0,Nt.a=Nt.C?Ys(Nt.C):Ys(jr),Nt.J=Nt.C?Ml(Nt.C):Ml(jr),Nt.a.onreadystatechange=vt(Nt.R,Nt);try{Fo(Nt.b,wo(Nt,"Opening Xhr")),Nt.N=!0,Nt.a.open("POST",String(Gt),!0),Nt.N=!1}catch(Tn){return Fo(Nt.b,wo(Nt,"Error opening Xhr: "+Tn.message)),void Ll(Nt,Tn)}Gt=an||"";var cn=(an=Nt.headers.clone()).G().find(function(Tn){return Tn.toLowerCase()=="content-type"}),mn=yt.FormData&&Gt instanceof yt.FormData;!(0<=Ht(xl,"POST"))||cn||mn||an.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8"),an.forEach(function(Tn,fn){this.a.setRequestHeader(fn,Tn)},Nt),Nt.m&&(Nt.a.responseType=Nt.m),"withCredentials"in Nt.a&&Nt.a.withCredentials!==Nt.M&&(Nt.a.withCredentials=Nt.M);try{$s(Nt),0>4),ir!=64&&(fn(zn<<4&240|ir>>2),Qr!=64&&fn(ir<<6&192|Qr))}}(Nt,function(Tn){cn[mn++]=Tn}),cn.subarray(0,mn)}function zl(){if(!Ss){Ss={};for(var Nt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),Gt=["+/=","+/","-_=","-_.","-_"],an=0;5>an;an++){var cn=Nt.concat(Gt[an].split(""));Ul[an]=cn;for(var mn=0;mn(vn=mn.indexOf("#"))&&(vn=mn.length),0>(fn=mn.indexOf("?"))||fn>vn?(fn=vn,kn=""):kn=mn.substring(fn+1,vn),vn=(mn=[mn.substr(0,fn),kn,mn.substr(vn)])[1],mn[1]=zn?vn?vn+"&"+zn:zn:vn,mn=mn[0]+(mn[1]?"?"+mn[1]:"")+mn[2])):mn.a("$httpHeaders",vn))}for(cn=(Gt=(0,cn.a)(Gt.getRequestMessage())).length,zn=[0,0,0,0],vn=new Uint8Array(5+cn),fn=3;0<=fn;fn--)zn[fn]=cn%256,cn>>>=8;if(vn.set(new Uint8Array(zn),1),vn.set(Gt,5),Gt=vn,Nt.a=="text"){var ir;for(Nt=Gt,ir===void 0&&(ir=0),zl(),ir=Ul[ir],Gt=Array(Math.floor(Nt.length/3)),cn=ir[64]||"",zn=vn=0;vn>2],Zn=ir[(3&Zn)<<4|Qr>>4],Qr=ir[(15&Qr)<<2|kn>>6],kn=ir[63&kn],Gt[zn++]=fn+Zn+Qr+kn}switch(fn=0,kn=cn,Nt.length-vn){case 2:kn=ir[(15&(fn=Nt[vn+1]))<<2]||cn;case 1:Nt=Nt[vn],Gt[zn]=ir[Nt>>2]+ir[(3&Nt)<<4|fn>>4]+kn+cn}Gt=Gt.join("")}else Nt.a=="binary"&&(an.m="arraybuffer");return Il(an,mn,Gt),Tn}function Gl(Nt,Gt,an){var cn=!1,mn=null,Tn=!1;Nt.on("data",function(fn){cn=!0,mn=fn}),Nt.on("error",function(fn){fn.code==0||Tn||(Tn=!0,Gt(fn,null))}),Nt.on("status",function(fn){fn.code==0||Tn?an&&Gt(null,null,fn):(Tn=!0,Gt({code:fn.code,message:fn.details,metadata:fn.metadata},null))}),an&&Nt.on("metadata",function(fn){Gt(null,null,null,fn)}),Nt.on("end",function(){Tn||(cn?an?Gt(null,mn,null,null,!0):Gt(null,mn):Gt({code:2,message:"Incomplete response"})),an&&Gt(null,null)})}function Vr(Nt,Gt){var an=Nt;return Gt.forEach(function(cn){var mn=an;an=function(Tn){return cn.intercept(Tn,mn)}}),an}go.prototype.on=function(Nt,Gt){return Nt=="data"?this.b.push(Gt):Nt=="status"?this.h.push(Gt):Nt=="metadata"?this.g.push(Gt):Nt=="end"?this.c.push(Gt):Nt=="error"&&this.f.push(Gt),this},go.prototype.removeListener=function(Nt,Gt){return Nt=="data"?ms(this.b,Gt):Nt=="status"?ms(this.h,Gt):Nt=="metadata"?ms(this.g,Gt):Nt=="end"?ms(this.c,Gt):Nt=="error"&&ms(this.f,Gt),this},go.prototype.cancel=function(){this.l=!0,this.a.abort()},go.prototype.cancel=go.prototype.cancel,go.prototype.removeListener=go.prototype.removeListener,go.prototype.on=go.prototype.on,io.prototype.X=function(Nt,Gt,an,cn,mn){var Tn=this,fn=Nt.substr(0,Nt.length-cn.name.length);return Gl(Nt=Vr(function(vn){return Fl(Tn,vn,fn)},this.b).call(this,Jt(cn,Gt,an)),mn,!1),new Vt(Nt)},io.prototype.S=function(Nt,Gt,an,cn){var mn=this,Tn=Nt.substr(0,Nt.length-cn.name.length);return Vr(function(fn){return new Promise(function(vn,kn){var Zn,zn,ir;Gl(Fl(mn,fn,Tn),function(Qr,yr,cr,qn,Mr){Qr?kn(Qr):Mr?ir=yr:cr?zn=cr:qn?Zn=qn:(Qr=fn.getMethodDescriptor(),vn(new Wt(ir,Qr,yr=(yr=Zn)===void 0?{}:yr,zn===void 0?null:zn)))},!0)})},this.h).call(this,Jt(cn,Gt,an)).then(function(fn){return fn.getResponseMessage()})},io.prototype.unaryCall=function(Nt,Gt,an,cn){return this.S(Nt,Gt,an,cn)},io.prototype.Y=function(Nt,Gt,an,cn){var mn=this,Tn=Nt.substr(0,Nt.length-cn.name.length);return Vr(function(fn){return Fl(mn,fn,Tn)},this.b).call(this,Jt(cn,Gt,an))},io.prototype.serverStreaming=io.prototype.Y,io.prototype.unaryCall=io.prototype.unaryCall,io.prototype.thenableCall=io.prototype.S,io.prototype.rpcCall=io.prototype.X,o.exports.CallOptions=Ot,o.exports.MethodDescriptor=bt,o.exports.GrpcWebClientBase=io,o.exports.RpcError=Zt,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"},xn=typeof globalThis<"u"&&globalThis||self}).call(this,_(6))},function(o,s,_){var j=_(57),$=_(60).warn;s.version=_(136).version,s.transports=_(137),s.config=_(49),s.addColors=j.levels,s.format=j.format,s.createLogger=_(87),s.ExceptionHandler=_(88),s.RejectionHandler=_(92),s.Container=_(215),s.Transport=_(14),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}}),["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"]),$.moved(s,"createLogger","Logger")},function(o,s,_){(function(j){var $=j!==void 0&&j||typeof self<"u"&&self||window,_e=Function.prototype.apply;function et(tt,nt){this._id=tt,this._clearFn=nt}s.setTimeout=function(){return new et(_e.call(setTimeout,$,arguments),clearTimeout)},s.setInterval=function(){return new et(_e.call(setInterval,$,arguments),clearInterval)},s.clearTimeout=s.clearInterval=function(tt){tt&&tt.close()},et.prototype.unref=et.prototype.ref=function(){},et.prototype.close=function(){this._clearFn.call($,this._id)},s.enroll=function(tt,nt){clearTimeout(tt._idleTimeoutId),tt._idleTimeout=nt},s.unenroll=function(tt){clearTimeout(tt._idleTimeoutId),tt._idleTimeout=-1},s._unrefActive=s.active=function(tt){clearTimeout(tt._idleTimeoutId);var nt=tt._idleTimeout;nt>=0&&(tt._idleTimeoutId=setTimeout(function(){tt._onTimeout&&tt._onTimeout()},nt))},_(139),s.setImmediate=typeof self<"u"&&self.setImmediate||j!==void 0&&j.setImmediate||this&&this.setImmediate,s.clearImmediate=typeof self<"u"&&self.clearImmediate||j!==void 0&&j.clearImmediate||this&&this.clearImmediate}).call(this,_(6))},function(o,s,_){var j,$=typeof Reflect=="object"?Reflect:null,_e=$&&typeof $.apply=="function"?$.apply:function(Qt,gt,ft){return Function.prototype.apply.call(Qt,gt,ft)};j=$&&typeof $.ownKeys=="function"?$.ownKeys:Object.getOwnPropertySymbols?function(Qt){return Object.getOwnPropertyNames(Qt).concat(Object.getOwnPropertySymbols(Qt))}:function(Qt){return Object.getOwnPropertyNames(Qt)};var et=Number.isNaN||function(Qt){return Qt!=Qt};function tt(){tt.init.call(this)}o.exports=tt,o.exports.once=function(Qt,gt){return new Promise(function(ft,Ft){function yt(xt){Qt.removeListener(gt,Ct),Ft(xt)}function Ct(){typeof Qt.removeListener=="function"&&Qt.removeListener("error",yt),ft([].slice.call(arguments))}Bt(Qt,gt,Ct,{once:!0}),gt!=="error"&&function(xt,ht,mt){typeof xt.on=="function"&&Bt(xt,"error",ht,mt)}(Qt,yt,{once:!0})})},tt.EventEmitter=tt,tt.prototype._events=void 0,tt.prototype._eventsCount=0,tt.prototype._maxListeners=void 0;var nt=10;function rt(Qt){if(typeof Qt!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof Qt)}function ot(Qt){return Qt._maxListeners===void 0?tt.defaultMaxListeners:Qt._maxListeners}function ut(Qt,gt,ft,Ft){var yt,Ct,xt,ht;if(rt(ft),(Ct=Qt._events)===void 0?(Ct=Qt._events=Object.create(null),Qt._eventsCount=0):(Ct.newListener!==void 0&&(Qt.emit("newListener",gt,ft.listener?ft.listener:ft),Ct=Qt._events),xt=Ct[gt]),xt===void 0)xt=Ct[gt]=ft,++Qt._eventsCount;else if(typeof xt=="function"?xt=Ct[gt]=Ft?[ft,xt]:[xt,ft]:Ft?xt.unshift(ft):xt.push(ft),(yt=ot(Qt))>0&&xt.length>yt&&!xt.warned){xt.warned=!0;var mt=new Error("Possible EventEmitter memory leak detected. "+xt.length+" "+String(gt)+" listeners added. Use emitter.setMaxListeners() to increase limit");mt.name="MaxListenersExceededWarning",mt.emitter=Qt,mt.type=gt,mt.count=xt.length,ht=mt,console&&console.warn&&console.warn(ht)}return Qt}function dt(){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 Ut(Qt,gt,ft){var Ft={fired:!1,wrapFn:void 0,target:Qt,type:gt,listener:ft},yt=dt.bind(Ft);return yt.listener=ft,Ft.wrapFn=yt,yt}function st(Qt,gt,ft){var Ft=Qt._events;if(Ft===void 0)return[];var yt=Ft[gt];return yt===void 0?[]:typeof yt=="function"?ft?[yt.listener||yt]:[yt]:ft?function(Ct){for(var xt=new Array(Ct.length),ht=0;ht0&&(Ct=gt[0]),Ct instanceof Error)throw Ct;var xt=new Error("Unhandled error."+(Ct?" ("+Ct.message+")":""));throw xt.context=Ct,xt}var ht=yt[Qt];if(ht===void 0)return!1;if(typeof ht=="function")_e(ht,this,gt);else{var mt=ht.length,It=pt(ht,mt);for(ft=0;ft=0;Ct--)if(ft[Ct]===gt||ft[Ct].listener===gt){xt=ft[Ct].listener,yt=Ct;break}if(yt<0)return this;yt===0?ft.shift():function(ht,mt){for(;mt+1=0;Ft--)this.removeListener(Qt,gt[Ft]);return this},tt.prototype.listeners=function(Qt){return st(this,Qt,!0)},tt.prototype.rawListeners=function(Qt){return st(this,Qt,!1)},tt.listenerCount=function(Qt,gt){return typeof Qt.listenerCount=="function"?Qt.listenerCount(gt):ct.call(Qt,gt)},tt.prototype.listenerCount=ct,tt.prototype.eventNames=function(){return this._eventsCount>0?j(this._events):[]}},function(o,s,_){var j=_(147).Buffer,$=j.isEncoding||function(st){switch((st=""+st)&&st.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(st){var ct;switch(this.encoding=function(pt){var Bt=function(Qt){if(!Qt)return"utf8";for(var gt;;)switch(Qt){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 Qt;default:if(gt)return;Qt=(""+Qt).toLowerCase(),gt=!0}}(pt);if(typeof Bt!="string"&&(j.isEncoding===$||!$(pt)))throw new Error("Unknown encoding: "+pt);return Bt||pt}(st),this.encoding){case"utf16le":this.text=nt,this.end=rt,ct=4;break;case"utf8":this.fillLast=tt,ct=4;break;case"base64":this.text=ot,this.end=ut,ct=3;break;default:return this.write=dt,void(this.end=Ut)}this.lastNeed=0,this.lastTotal=0,this.lastChar=j.allocUnsafe(ct)}function et(st){return st<=127?0:st>>5==6?2:st>>4==14?3:st>>3==30?4:st>>6==2?-1:-2}function tt(st){var ct=this.lastTotal-this.lastNeed,pt=function(Bt,Qt,gt){if((192&Qt[0])!=128)return Bt.lastNeed=0,"�";if(Bt.lastNeed>1&&Qt.length>1){if((192&Qt[1])!=128)return Bt.lastNeed=1,"�";if(Bt.lastNeed>2&&Qt.length>2&&(192&Qt[2])!=128)return Bt.lastNeed=2,"�"}}(this,st);return pt!==void 0?pt:this.lastNeed<=st.length?(st.copy(this.lastChar,ct,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(st.copy(this.lastChar,ct,0,st.length),void(this.lastNeed-=st.length))}function nt(st,ct){if((st.length-ct)%2==0){var pt=st.toString("utf16le",ct);if(pt){var Bt=pt.charCodeAt(pt.length-1);if(Bt>=55296&&Bt<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=st[st.length-2],this.lastChar[1]=st[st.length-1],pt.slice(0,-1)}return pt}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=st[st.length-1],st.toString("utf16le",ct,st.length-1)}function rt(st){var ct=st&&st.length?this.write(st):"";if(this.lastNeed){var pt=this.lastTotal-this.lastNeed;return ct+this.lastChar.toString("utf16le",0,pt)}return ct}function ot(st,ct){var pt=(st.length-ct)%3;return pt===0?st.toString("base64",ct):(this.lastNeed=3-pt,this.lastTotal=3,pt===1?this.lastChar[0]=st[st.length-1]:(this.lastChar[0]=st[st.length-2],this.lastChar[1]=st[st.length-1]),st.toString("base64",ct,st.length-pt))}function ut(st){var ct=st&&st.length?this.write(st):"";return this.lastNeed?ct+this.lastChar.toString("base64",0,3-this.lastNeed):ct}function dt(st){return st.toString(this.encoding)}function Ut(st){return st&&st.length?this.write(st):""}s.StringDecoder=_e,_e.prototype.write=function(st){if(st.length===0)return"";var ct,pt;if(this.lastNeed){if((ct=this.fillLast(st))===void 0)return"";pt=this.lastNeed,this.lastNeed=0}else pt=0;return pt=0?(yt>0&&(Qt.lastNeed=yt-1),yt):--Ft=0?(yt>0&&(Qt.lastNeed=yt-2),yt):--Ft=0?(yt>0&&(yt===2?yt=0:Qt.lastNeed=yt-3),yt):0}(this,st,ct);if(!this.lastNeed)return st.toString("utf8",ct);this.lastTotal=pt;var Bt=st.length-(pt-this.lastNeed);return st.copy(this.lastChar,0,Bt),st.toString("utf8",ct,Bt)},_e.prototype.fillLast=function(st){if(this.lastNeed<=st.length)return st.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);st.copy(this.lastChar,this.lastTotal-this.lastNeed,0,st.length),this.lastNeed-=st.length}},function(o,s,_){var j=_(37),$=Object.keys||function(st){var ct=[];for(var pt in st)ct.push(pt);return ct};o.exports=ut;var _e=Object.create(_(32));_e.inherits=_(7);var et=_(69),tt=_(47);_e.inherits(ut,et);for(var nt=$(tt.prototype),rt=0;rt2?"one of ".concat(tt," ").concat(et.slice(0,nt-1).join(", "),", or ")+et[nt-1]:nt===2?"one of ".concat(tt," ").concat(et[0]," or ").concat(et[1]):"of ".concat(tt," ").concat(et[0])}return"of ".concat(tt," ").concat(String(et))}$("ERR_INVALID_OPT_VALUE",function(et,tt){return'The value "'+tt+'" is invalid for option "'+et+'"'},TypeError),$("ERR_INVALID_ARG_TYPE",function(et,tt,nt){var rt,ot,ut;if(typeof tt=="string"&&(ot="not ",tt.substr(0,ot.length)===ot)?(rt="must not be",tt=tt.replace(/^not /,"")):rt="must be",function(Ut,st,ct){return(ct===void 0||ct>Ut.length)&&(ct=Ut.length),Ut.substring(ct-st.length,ct)===st}(et," argument"))ut="The ".concat(et," ").concat(rt," ").concat(_e(tt,"type"));else{var dt=function(Ut,st,ct){return typeof ct!="number"&&(ct=0),!(ct+st.length>Ut.length)&&Ut.indexOf(st,ct)!==-1}(et,".")?"property":"argument";ut='The "'.concat(et,'" ').concat(dt," ").concat(rt," ").concat(_e(tt,"type"))}return ut+=". Received type ".concat(typeof nt)},TypeError),$("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),$("ERR_METHOD_NOT_IMPLEMENTED",function(et){return"The "+et+" method is not implemented"}),$("ERR_STREAM_PREMATURE_CLOSE","Premature close"),$("ERR_STREAM_DESTROYED",function(et){return"Cannot call "+et+" 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(et){return"Unknown encoding: "+et},TypeError),$("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),o.exports.codes=j},function(o,s,_){(function(j){var $=Object.keys||function(Ut){var st=[];for(var ct in Ut)st.push(ct);return st};o.exports=ot;var _e=_(76),et=_(80);_(7)(ot,_e);for(var tt=$(et.prototype),nt=0;nt(""+ot.get("app-id")).startsWith("formant/")?{}:_e},rt)),this.endpoint=nt}getHeaders(){return Object.assign(Object.assign({},et.headers),{"App-ID":"formant/"+$.a,"App-Version":$.k})}}et.headers={}},function(o,s,_){_(232),o.exports={encode:j=>new TextEncoder().encode(j),decode:j=>new TextDecoder().decode(j)}},function(o,s,_){_.d(s,"a",function(){return nt});const j=["query"],$=["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=rt=>_e.some(ot=>rt.toLowerCase().includes(ot.toLowerCase()))||et.has(rt);function nt(rt,ot=new WeakSet){return ot.has(rt)?"[ RECURSIVE ]":Array.isArray(rt)?(ot.add(rt),rt.map(dt=>nt(dt,ot))):!(ut=rt)||typeof ut!="object"&&typeof ut!="function"?typeof rt=="string"&&!$.some(dt=>rt.toLowerCase().includes(dt))&&tt(rt)?"[ REDACTED ]":rt:(ot.add(rt),Object.keys(rt).reduce((dt,Ut)=>j.includes(Ut.toLowerCase())?(dt[Ut]=rt[Ut],dt):(dt[Ut]=tt(Ut)?"[ REDACTED ]":nt(rt[Ut],ot),dt),{}));var ut}},function(o,s,_){const{hasOwnProperty:j}=Object.prototype,$=Qt();$.configure=Qt,$.stringify=$,$.default=$,s.stringify=$,s.configure=Qt,o.exports=$;const _e=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]|[\ud800-\udbff](?![\udc00-\udfff])|(?:[^\ud800-\udbff]|^)[\udc00-\udfff]/,et=new RegExp(_e,"g"),tt=["\\u0000","\\u0001","\\u0002","\\u0003","\\u0004","\\u0005","\\u0006","\\u0007","\\b","\\t","\\n","\\u000b","\\f","\\r","\\u000e","\\u000f","\\u0010","\\u0011","\\u0012","\\u0013","\\u0014","\\u0015","\\u0016","\\u0017","\\u0018","\\u0019","\\u001a","\\u001b","\\u001c","\\u001d","\\u001e","\\u001f","","",'\\"',"","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","\\\\"];function nt(gt){if(gt.length===2){const Ft=gt.charCodeAt(1);return`${gt[0]}\\u${Ft.toString(16)}`}const ft=gt.charCodeAt(0);return tt.length>ft?tt[ft]:"\\u"+ft.toString(16)}function rt(gt){if(gt.length<5e3&&!_e.test(gt))return gt;if(gt.length>100)return gt.replace(et,nt);let ft="",Ft=0;for(let yt=0;yt=55296&&Ct<=57343){if(Ct<=56319&&yt+1=56320&&xt<=57343){yt++;continue}}ft+=`${gt.slice(Ft,yt)}\\u${Ct.toString(16)}`,Ft=yt+1}}return ft+=gt.slice(Ft),ft}function ot(gt){if(gt.length>200)return gt.sort();for(let ft=1;ftFt;)gt[yt]=gt[yt-1],yt--;gt[yt]=Ft}return gt}const ut=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function dt(gt){return ut.call(gt)!==void 0&>.length!==0}function Ut(gt,ft,Ft){gt.length= 1`)}return Ft===void 0?1/0:Ft}function pt(gt){return gt===1?"1 item":gt+" items"}function Bt(gt){const ft=new Set;for(const Ft of gt)typeof Ft!="string"&&typeof Ft!="number"||ft.add(String(Ft));return ft}function Qt(gt){const ft=function(Ot){if(j.call(Ot,"strict")){const _t=Ot.strict;if(typeof _t!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(_t)return Wt=>{let bt="Object can not safely be stringified. Received type "+typeof Wt;throw typeof Wt!="function"&&(bt+=` (${Wt.toString()})`),new Error(bt)}}}(gt={...gt});ft&&(gt.bigint===void 0&&(gt.bigint=!1),"circularValue"in gt||(gt.circularValue=Error));const Ft=function(Ot){if(j.call(Ot,"circularValue")){const _t=Ot.circularValue;if(typeof _t=="string")return`"${_t}"`;if(_t==null)return _t;if(_t===Error||_t===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),yt=st(gt,"bigint"),Ct=st(gt,"deterministic"),xt=ct(gt,"maximumDepth"),ht=ct(gt,"maximumBreadth");function mt(Ot,_t,Wt,bt,Jt,Zt){let Vt=_t[Ot];switch(typeof Vt=="object"&&Vt!==null&&typeof Vt.toJSON=="function"&&(Vt=Vt.toJSON(Ot)),Vt=bt.call(_t,Ot,Vt),typeof Vt){case"string":return`"${rt(Vt)}"`;case"object":{if(Vt===null)return"null";if(Wt.indexOf(Vt)!==-1)return Ft;let jt="",zt=",";const $t=Zt;if(Array.isArray(Vt)){if(Vt.length===0)return"[]";if(xtht&&(jt+=`${zt}"... ${pt(Vt.length-ht-1)} not stringified"`),Jt!==""&&(jt+=` -`+$t),Wt.pop(),`[${jt}]`}let nn=Object.keys(Vt);const rn=nn.length;if(rn===0)return"{}";if(xtht&&(jt+=`${wt}"...":${Dt}"${pt(rn-ht)} not stringified"`,wt=zt),Jt!==""&&wt.length>1&&(jt=` -${Zt}${jt} -${$t}`),Wt.pop(),`{${jt}}`}case"number":return isFinite(Vt)?String(Vt):ft?ft(Vt):"null";case"boolean":return Vt===!0?"true":"false";case"undefined":return;case"bigint":if(yt)return String(Vt);default:return ft?ft(Vt):void 0}}function It(Ot,_t,Wt,bt,Jt,Zt){switch(typeof _t=="object"&&_t!==null&&typeof _t.toJSON=="function"&&(_t=_t.toJSON(Ot)),typeof _t){case"string":return`"${rt(_t)}"`;case"object":{if(_t===null)return"null";if(Wt.indexOf(_t)!==-1)return Ft;const Vt=Zt;let jt="",zt=",";if(Array.isArray(_t)){if(_t.length===0)return"[]";if(xtht&&(jt+=`${zt}"... ${pt(_t.length-ht-1)} not stringified"`),Jt!==""&&(jt+=` -`+Vt),Wt.pop(),`[${jt}]`}Wt.push(_t);let $t="";Jt!==""&&(zt=`, -`+(Zt+=Jt),$t=" ");let nn="";for(const rn of bt){const Dt=It(rn,_t[rn],Wt,bt,Jt,Zt);Dt!==void 0&&(jt+=`${nn}"${rt(rn)}":${$t}${Dt}`,nn=zt)}return Jt!==""&&nn.length>1&&(jt=` -${Zt}${jt} -${Vt}`),Wt.pop(),`{${jt}}`}case"number":return isFinite(_t)?String(_t):ft?ft(_t):"null";case"boolean":return _t===!0?"true":"false";case"undefined":return;case"bigint":if(yt)return String(_t);default:return ft?ft(_t):void 0}}function vt(Ot,_t,Wt,bt,Jt){switch(typeof _t){case"string":return`"${rt(_t)}"`;case"object":{if(_t===null)return"null";if(typeof _t.toJSON=="function"){if(typeof(_t=_t.toJSON(Ot))!="object")return vt(Ot,_t,Wt,bt,Jt);if(_t===null)return"null"}if(Wt.indexOf(_t)!==-1)return Ft;const Zt=Jt;if(Array.isArray(_t)){if(_t.length===0)return"[]";if(xtht&&(Dt+=`${wt}"... ${pt(_t.length-ht-1)} not stringified"`),Dt+=` -`+Zt,Wt.pop(),`[${Dt}]`}let Vt=Object.keys(_t);const jt=Vt.length;if(jt===0)return"{}";if(xtht&&($t+=`${nn}"...": "${pt(jt-ht)} not stringified"`,nn=zt),nn!==""&&($t=` -${Jt}${$t} -${Zt}`),Wt.pop(),`{${$t}}`}case"number":return isFinite(_t)?String(_t):ft?ft(_t):"null";case"boolean":return _t===!0?"true":"false";case"undefined":return;case"bigint":if(yt)return String(_t);default:return ft?ft(_t):void 0}}function Tt(Ot,_t,Wt){switch(typeof _t){case"string":return`"${rt(_t)}"`;case"object":{if(_t===null)return"null";if(typeof _t.toJSON=="function"){if(typeof(_t=_t.toJSON(Ot))!="object")return Tt(Ot,_t,Wt);if(_t===null)return"null"}if(Wt.indexOf(_t)!==-1)return Ft;let bt="";if(Array.isArray(_t)){if(_t.length===0)return"[]";if(xtht&&(bt+=`,"... ${pt(_t.length-ht-1)} not stringified"`),Wt.pop(),`[${bt}]`}let Jt=Object.keys(_t);const Zt=Jt.length;if(Zt===0)return"{}";if(xtht&&(bt+=`${Vt}"...":"${pt(Zt-ht)} not stringified"`),Wt.pop(),`{${bt}}`}case"number":return isFinite(_t)?String(_t):ft?ft(_t):"null";case"boolean":return _t===!0?"true":"false";case"undefined":return;case"bigint":if(yt)return String(_t);default:return ft?ft(_t):void 0}}return function(Ot,_t,Wt){if(arguments.length>1){let bt="";if(typeof Wt=="number"?bt=" ".repeat(Math.min(Wt,10)):typeof Wt=="string"&&(bt=Wt.slice(0,10)),_t!=null){if(typeof _t=="function")return mt("",{"":Ot},[],_t,bt,"");if(Array.isArray(_t))return It("",Ot,[],Bt(_t),bt,"")}if(bt.length!==0)return vt("",Ot,[],bt,"")}return Tt("",Ot,[])}}},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(j,$=j.length){if(!$)throw new Error("arity is undefined");return function(..._e){return typeof _e[$-1]=="function"?j.apply(this,_e):new Promise((et,tt)=>{_e[$-1]=(nt,...rt)=>{if(nt)return tt(nt);et(rt.length>1?rt:rt[0])},j.apply(this,_e)})}},o.exports=s.default},function(o,s,_){(s=o.exports=_(69)).Stream=s,s.Readable=s,s.Writable=_(47),s.Duplex=_(22),s.Transform=_(72),s.PassThrough=_(169)},function(o,s,_){(function(j){function $(_e){return Object.prototype.toString.call(_e)}s.isArray=function(_e){return Array.isArray?Array.isArray(_e):$(_e)==="[object Array]"},s.isBoolean=function(_e){return typeof _e=="boolean"},s.isNull=function(_e){return _e===null},s.isNullOrUndefined=function(_e){return _e==null},s.isNumber=function(_e){return typeof _e=="number"},s.isString=function(_e){return typeof _e=="string"},s.isSymbol=function(_e){return typeof _e=="symbol"},s.isUndefined=function(_e){return _e===void 0},s.isRegExp=function(_e){return $(_e)==="[object RegExp]"},s.isObject=function(_e){return typeof _e=="object"&&_e!==null},s.isDate=function(_e){return $(_e)==="[object Date]"},s.isError=function(_e){return $(_e)==="[object Error]"||_e instanceof Error},s.isFunction=function(_e){return typeof _e=="function"},s.isPrimitive=function(_e){return _e===null||typeof _e=="boolean"||typeof _e=="number"||typeof _e=="string"||typeof _e=="symbol"||_e===void 0},s.isBuffer=j.isBuffer}).call(this,_(5).Buffer)},function(o,s,_){(s=o.exports=_(76)).Stream=s,s.Readable=s,s.Writable=_(80),s.Duplex=_(25),s.Transform=_(81),s.PassThrough=_(189),s.finished=_(48),s.pipeline=_(190)},function(o,s,_){o.exports=function(j){return j}},function(o,s,_){var j={};function $(et,tt,nt){nt||(nt=Error);var rt=function(ot){var ut,dt;function Ut(st,ct,pt){return ot.call(this,function(Bt,Qt,gt){return typeof tt=="string"?tt:tt(Bt,Qt,gt)}(st,ct,pt))||this}return dt=ot,(ut=Ut).prototype=Object.create(dt.prototype),ut.prototype.constructor=ut,ut.__proto__=dt,Ut}(nt);rt.prototype.name=nt.name,rt.prototype.code=et,j[et]=rt}function _e(et,tt){if(Array.isArray(et)){var nt=et.length;return et=et.map(function(rt){return String(rt)}),nt>2?"one of ".concat(tt," ").concat(et.slice(0,nt-1).join(", "),", or ")+et[nt-1]:nt===2?"one of ".concat(tt," ").concat(et[0]," or ").concat(et[1]):"of ".concat(tt," ").concat(et[0])}return"of ".concat(tt," ").concat(String(et))}$("ERR_INVALID_OPT_VALUE",function(et,tt){return'The value "'+tt+'" is invalid for option "'+et+'"'},TypeError),$("ERR_INVALID_ARG_TYPE",function(et,tt,nt){var rt,ot,ut;if(typeof tt=="string"&&(ot="not ",tt.substr(0,ot.length)===ot)?(rt="must not be",tt=tt.replace(/^not /,"")):rt="must be",function(Ut,st,ct){return(ct===void 0||ct>Ut.length)&&(ct=Ut.length),Ut.substring(ct-st.length,ct)===st}(et," argument"))ut="The ".concat(et," ").concat(rt," ").concat(_e(tt,"type"));else{var dt=function(Ut,st,ct){return typeof ct!="number"&&(ct=0),!(ct+st.length>Ut.length)&&Ut.indexOf(st,ct)!==-1}(et,".")?"property":"argument";ut='The "'.concat(et,'" ').concat(dt," ").concat(rt," ").concat(_e(tt,"type"))}return ut+=". Received type ".concat(typeof nt)},TypeError),$("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),$("ERR_METHOD_NOT_IMPLEMENTED",function(et){return"The "+et+" method is not implemented"}),$("ERR_STREAM_PREMATURE_CLOSE","Premature close"),$("ERR_STREAM_DESTROYED",function(et){return"Cannot call "+et+" 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(et){return"Unknown encoding: "+et},TypeError),$("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),o.exports.codes=j},function(o,s,_){(function(j){var $=Object.keys||function(Ut){var st=[];for(var ct in Ut)st.push(ct);return st};o.exports=ot;var _e=_(143),et=_(61);_(7)(ot,_e);for(var tt=$(et.prototype),nt=0;ntQt.validateHeaders?Qt.validateHeaders(gt):{},this.verbose=Qt.verbose!==!1,Qt.retries!==void 0&&!(Qt.retries>=0))throw new Error("retries must be positive or zero");if(this.configuredRetries=Qt.retries,Qt.timeoutMs!==void 0&&!(Qt.timeoutMs>0))throw new Error("timeoutMs must be positive");if(this.timeoutMs=Qt.timeoutMs,Qt.maxBackoffDelayMs!==void 0&&!(Qt.maxBackoffDelayMs>0))throw new Error("maxBackoffDelayMs must be positive");this.maxBackoffDelayMs=Qt.maxBackoffDelayMs||30*_e.a.second,this.json=Qt.json!==!1}getRetries(){return this.configuredRetries!==void 0?this.configuredRetries:this.getConstructor().retries}getHeaders(){return{}}fetch(Bt,Qt={}){return dt(this,void 0,void 0,function*(){return(yield this.fetchVerbose(Bt,Qt)).body})}fetchVerbose(Bt,Qt={}){return dt(this,void 0,void 0,function*(){let gt=100*_e.a.millisecond,ft=0;const Ft=this.timeoutMs!==void 0?new Date().getTime()+this.timeoutMs:void 0,yt=Ft?()=>Math.max(Ft-new Date().getTime(),0):void 0;for(;;)try{return yield this.doFetch(Bt,Qt,yt)}catch(Ct){const xt=Ct,ht=Object(rt.a)(xt,et);if((yt==null?void 0:yt())===0||ft===this.getRetries()||!ht.retryable)throw ht;ft++,gt=Math.min(...yt?[yt()]:[],gt*(2+.1*(Math.random()-.5)),this.maxBackoffDelayMs),yield Object(tt.a)(gt),this.verbose&&nt.a.warn("Connection failure, retrying. Error: "+xt.cause.message,{url:xt.url,error:xt.cause,attempt:ft})}})}doFetch(Bt,Qt,gt){return dt(this,void 0,void 0,function*(){const{token:ft,json:Ft=this.json,allowUnsafeRetries:yt}=Qt,Ct=Ut(Qt,["token","json","allowUnsafeRetries"]),xt=(Ct.method||"GET").toUpperCase(),ht=this.endpoint!==void 0?`${this.endpoint}${Bt?"/"+Bt:""}`:Bt,mt=new AbortController;let It;if(gt){const vt=gt();vt>0?It=setTimeout(()=>{mt.abort()},vt):mt.abort()}try{let vt;yield Promise.race([this.getConstructor().waitForConnectivity(),new Promise(Zt=>{vt=setTimeout(Zt,gt?Math.min(_e.a.minute,gt()):_e.a.minute)})]),vt&&clearTimeout(vt);const Tt=yield $()(ht,Object.assign(Object.assign(Object.assign({},Ct),Ct.body!==void 0?{body:Ft!==!1?JSON.stringify(Ct.body):Ct.body}:{}),{headers:Object.assign(Object.assign(Object.assign(Object.assign({},Ft!==!1?{"Content-Type":"application/json"}:{}),this.getHeaders()),Ct.headers||{}),ft!==void 0?{Authorization:"Bearer "+ft}:{}),signal:mt.signal})),Ot=Tt.headers.get("content-type")||"",_t=Ot&&Ot.startsWith("application/json"),Wt=_t?yield Tt.json():yield Tt.text(),bt=()=>new ot.a(xt,ht,Ct.body,Tt.status,Tt.headers,Wt,Wt&&Wt.validationErrors||{});if(!Tt.ok)throw this.verbose&&nt.a[Tt.status>=500?"warn":"info"]("Response error",{method:xt,url:ht,statusCode:Tt.status}),bt();const Jt=this.validateHeaders(Tt.headers);if(Object.keys(Jt).length!==0)throw new ut(Jt,bt());if(Tt.status===204)return{body:void 0,headers:Tt.headers};if(Ft&&!_t)throw new Error("Response is not JSON: "+JSON.stringify(Wt));return{body:Wt,headers:Tt.headers}}catch(vt){const Tt=vt,Ot=yt||st.has(xt);if(Tt.message==="Network request failed")throw new et(Tt,ht,Ot);if(Tt.type==="system"&&["EAI_AGAIN","ECONNREFUSED","EHOSTUNREACH","ENOTFOUND"].find(Jt=>Jt===Tt.code))throw new et(Tt,ht,!0);if(Tt.type==="system"&&["ETIMEDOUT","ECONNRESET","ESOCKETTIMEDOUT","EPIPE"].find(Jt=>Jt===Tt.code))throw new et(Tt,ht,Ot);if(Tt.name==="AbortError")throw new et(Tt,ht,Ot);const _t=Object(rt.a)(Tt,ot.a),{statusCode:Wt}=_t;if(Wt===408||Wt===429||Wt===502||Wt===503||Wt===504)throw this.verbose&&!Ot&&nt.a.warn("Potentially unsafe retry"),new et(Tt,ht,!0);if(Wt===500&&["/online-devices","/stream-current-value","/events/counts","/queries/queries"].some(Jt=>ht.includes(Jt)))throw new et(Tt,ht,Ot);const bt=this.validateHeaders(_t.headers);throw Object.keys(bt).length!==0?new ut(bt,_t):(yield this.getConstructor().onResponseError(_t),Tt)}finally{It&&clearTimeout(It)}})}getConstructor(){return Object.getPrototypeOf(this).constructor}}ct.retries=8,ct.waitForConnectivity=()=>dt(void 0,void 0,void 0,function*(){}),ct.onResponseError=()=>dt(void 0,void 0,void 0,function*(){})},function(o,s,_){function j(ut,dt){if(!(ut instanceof dt))throw new TypeError("Cannot call a class as a function")}function $(ut,dt){for(var Ut=0;Ut0&&arguments[0]!==void 0?arguments[0]:{};j(this,ut),ct.colors&&this.addColors(ct.colors),this.options=ct}var dt,Ut,st;return dt=ut,st=[{key:"addColors",value:function(ct){var pt=Object.keys(ct).reduce(function(Bt,Qt){return Bt[Qt]=rt.test(ct[Qt])?ct[Qt].split(rt):ct[Qt],Bt},{});return ut.allColors=Object.assign({},ut.allColors||{},pt),ut.allColors}}],(Ut=[{key:"addColors",value:function(ct){return ut.addColors(ct)}},{key:"colorize",value:function(ct,pt,Bt){if(Bt===void 0&&(Bt=pt),!Array.isArray(ut.allColors[ct]))return _e[ut.allColors[ct]](Bt);for(var Qt=0,gt=ut.allColors[ct].length;Qt=0&&j.length%1==0},o.exports=s.default},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0}),s.default={},o.exports=s.default},function(o,s,_){var j=_(5),$=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),_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 ot=$(tt);return nt!==void 0?typeof rt=="string"?ot.fill(nt,rt):ot.fill(nt):ot.fill(0),ot},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)}},function(o,s,_){(function(j,$,_e){var et=_(37);function tt(mt){var It=this;this.next=null,this.entry=null,this.finish=function(){(function(vt,Tt,Ot){var _t=vt.entry;for(vt.entry=null;_t;){var Wt=_t.callback;Tt.pendingcb--,Wt(Ot),_t=_t.next}Tt.corkedRequestsFree?Tt.corkedRequestsFree.next=vt:Tt.corkedRequestsFree=vt})(It,mt)}}o.exports=gt;var nt,rt=!j.browser&&["v0.10","v0.9."].indexOf(j.version.slice(0,5))>-1?$:et.nextTick;gt.WritableState=Qt;var ot=Object.create(_(32));ot.inherits=_(7);var ut={deprecate:_(43)},dt=_(70),Ut=_(46).Buffer,st=_e.Uint8Array||function(){},ct,pt=_(71);function Bt(){}function Qt(mt,It){nt=nt||_(22),mt=mt||{};var vt=It instanceof nt;this.objectMode=!!mt.objectMode,vt&&(this.objectMode=this.objectMode||!!mt.writableObjectMode);var Tt=mt.highWaterMark,Ot=mt.writableHighWaterMark,_t=this.objectMode?16:16384;this.highWaterMark=Tt||Tt===0?Tt:vt&&(Ot||Ot===0)?Ot:_t,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var Wt=mt.decodeStrings===!1;this.decodeStrings=!Wt,this.defaultEncoding=mt.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(bt){(function(Jt,Zt){var Vt=Jt._writableState,jt=Vt.sync,zt=Vt.writecb;if(function(nn){nn.writing=!1,nn.writecb=null,nn.length-=nn.writelen,nn.writelen=0}(Vt),Zt)(function(nn,rn,Dt,wt,Et){--rn.pendingcb,Dt?(et.nextTick(Et,wt),et.nextTick(ht,nn,rn),nn._writableState.errorEmitted=!0,nn.emit("error",wt)):(Et(wt),nn._writableState.errorEmitted=!0,nn.emit("error",wt),ht(nn,rn))})(Jt,Vt,jt,Zt,zt);else{var $t=Ct(Vt);$t||Vt.corked||Vt.bufferProcessing||!Vt.bufferedRequest||yt(Jt,Vt),jt?rt(Ft,Jt,Vt,$t,zt):Ft(Jt,Vt,$t,zt)}})(It,bt)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new tt(this)}function gt(mt){if(nt=nt||_(22),!(ct.call(gt,this)||this instanceof nt))return new gt(mt);this._writableState=new Qt(mt,this),this.writable=!0,mt&&(typeof mt.write=="function"&&(this._write=mt.write),typeof mt.writev=="function"&&(this._writev=mt.writev),typeof mt.destroy=="function"&&(this._destroy=mt.destroy),typeof mt.final=="function"&&(this._final=mt.final)),dt.call(this)}function ft(mt,It,vt,Tt,Ot,_t,Wt){It.writelen=Tt,It.writecb=Wt,It.writing=!0,It.sync=!0,vt?mt._writev(Ot,It.onwrite):mt._write(Ot,_t,It.onwrite),It.sync=!1}function Ft(mt,It,vt,Tt){vt||function(Ot,_t){_t.length===0&&_t.needDrain&&(_t.needDrain=!1,Ot.emit("drain"))}(mt,It),It.pendingcb--,Tt(),ht(mt,It)}function yt(mt,It){It.bufferProcessing=!0;var vt=It.bufferedRequest;if(mt._writev&&vt&&vt.next){var Tt=It.bufferedRequestCount,Ot=new Array(Tt),_t=It.corkedRequestsFree;_t.entry=vt;for(var Wt=0,bt=!0;vt;)Ot[Wt]=vt,vt.isBuf||(bt=!1),vt=vt.next,Wt+=1;Ot.allBuffers=bt,ft(mt,It,!0,It.length,Ot,"",_t.finish),It.pendingcb++,It.lastBufferedRequest=null,_t.next?(It.corkedRequestsFree=_t.next,_t.next=null):It.corkedRequestsFree=new tt(It),It.bufferedRequestCount=0}else{for(;vt;){var Jt=vt.chunk,Zt=vt.encoding,Vt=vt.callback;if(ft(mt,It,!1,It.objectMode?1:Jt.length,Jt,Zt,Vt),vt=vt.next,It.bufferedRequestCount--,It.writing)break}vt===null&&(It.lastBufferedRequest=null)}It.bufferedRequest=vt,It.bufferProcessing=!1}function Ct(mt){return mt.ending&&mt.length===0&&mt.bufferedRequest===null&&!mt.finished&&!mt.writing}function xt(mt,It){mt._final(function(vt){It.pendingcb--,vt&&mt.emit("error",vt),It.prefinished=!0,mt.emit("prefinish"),ht(mt,It)})}function ht(mt,It){var vt=Ct(It);return vt&&(function(Tt,Ot){Ot.prefinished||Ot.finalCalled||(typeof Tt._final=="function"?(Ot.pendingcb++,Ot.finalCalled=!0,et.nextTick(xt,Tt,Ot)):(Ot.prefinished=!0,Tt.emit("prefinish")))}(mt,It),It.pendingcb===0&&(It.finished=!0,mt.emit("finish"))),vt}ot.inherits(gt,dt),Qt.prototype.getBuffer=function(){for(var mt=this.bufferedRequest,It=[];mt;)It.push(mt),mt=mt.next;return It},function(){try{Object.defineProperty(Qt.prototype,"buffer",{get:ut.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"?(ct=Function.prototype[Symbol.hasInstance],Object.defineProperty(gt,Symbol.hasInstance,{value:function(mt){return!!ct.call(this,mt)||this===gt&&mt&&mt._writableState instanceof Qt}})):ct=function(mt){return mt instanceof this},gt.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},gt.prototype.write=function(mt,It,vt){var Tt,Ot=this._writableState,_t=!1,Wt=!Ot.objectMode&&(Tt=mt,Ut.isBuffer(Tt)||Tt instanceof st);return Wt&&!Ut.isBuffer(mt)&&(mt=function(bt){return Ut.from(bt)}(mt)),typeof It=="function"&&(vt=It,It=null),Wt?It="buffer":It||(It=Ot.defaultEncoding),typeof vt!="function"&&(vt=Bt),Ot.ended?function(bt,Jt){var Zt=new Error("write after end");bt.emit("error",Zt),et.nextTick(Jt,Zt)}(this,vt):(Wt||function(bt,Jt,Zt,Vt){var jt=!0,zt=!1;return Zt===null?zt=new TypeError("May not write null values to stream"):typeof Zt=="string"||Zt===void 0||Jt.objectMode||(zt=new TypeError("Invalid non-string/buffer chunk")),zt&&(bt.emit("error",zt),et.nextTick(Vt,zt),jt=!1),jt}(this,Ot,mt,vt))&&(Ot.pendingcb++,_t=function(bt,Jt,Zt,Vt,jt,zt){if(!Zt){var $t=function(wt,Et,kt){return wt.objectMode||wt.decodeStrings===!1||typeof Et!="string"||(Et=Ut.from(Et,kt)),Et}(Jt,Vt,jt);Vt!==$t&&(Zt=!0,jt="buffer",Vt=$t)}var nn=Jt.objectMode?1:Vt.length;Jt.length+=nn;var rn=Jt.length-1))throw new TypeError("Unknown encoding: "+mt);return this._writableState.defaultEncoding=mt,this},Object.defineProperty(gt.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),gt.prototype._write=function(mt,It,vt){vt(new Error("_write() is not implemented"))},gt.prototype._writev=null,gt.prototype.end=function(mt,It,vt){var Tt=this._writableState;typeof mt=="function"?(vt=mt,mt=null,It=null):typeof It=="function"&&(vt=It,It=null),mt!=null&&this.write(mt,It),Tt.corked&&(Tt.corked=1,this.uncork()),Tt.ending||Tt.finished||function(Ot,_t,Wt){_t.ending=!0,ht(Ot,_t),Wt&&(_t.finished?et.nextTick(Wt):Ot.once("finish",Wt)),_t.ended=!0,Ot.writable=!1}(this,Tt,vt)},Object.defineProperty(gt.prototype,"destroyed",{get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(mt){this._writableState&&(this._writableState.destroyed=mt)}}),gt.prototype.destroy=pt.destroy,gt.prototype._undestroy=pt.undestroy,gt.prototype._destroy=function(mt,It){this.end(),It(mt)}}).call(this,_(2),_(19).setImmediate,_(6))},function(o,s,_){var j=_(24).codes.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(gt){var ft=!1;return function(){if(!ft){ft=!0;for(var Ft=arguments.length,yt=new Array(Ft),Ct=0;Ct=0;ot--){var ut=tt[ot];ut==="."?tt.splice(ot,1):ut===".."?(tt.splice(ot,1),rt++):rt&&(tt.splice(ot,1),rt--)}if(nt)for(;rt--;rt)tt.unshift("..");return tt}function _e(tt,nt){if(tt.filter)return tt.filter(nt);for(var rt=[],ot=0;ot=-1&&!nt;rt--){var ot=rt>=0?arguments[rt]:j.cwd();if(typeof ot!="string")throw new TypeError("Arguments to path.resolve must be strings");ot&&(tt=ot+"/"+tt,nt=ot.charAt(0)==="/")}return(nt?"/":"")+(tt=$(_e(tt.split("/"),function(ut){return!!ut}),!nt).join("/"))||"."},s.normalize=function(tt){var nt=s.isAbsolute(tt),rt=et(tt,-1)==="/";return(tt=$(_e(tt.split("/"),function(ot){return!!ot}),!nt).join("/"))||nt||(tt="."),tt&&rt&&(tt+="/"),(nt?"/":"")+tt},s.isAbsolute=function(tt){return tt.charAt(0)==="/"},s.join=function(){var tt=Array.prototype.slice.call(arguments,0);return s.normalize(_e(tt,function(nt,rt){if(typeof nt!="string")throw new TypeError("Arguments to path.join must be strings");return nt}).join("/"))},s.relative=function(tt,nt){function rt(pt){for(var Bt=0;Bt=0&&pt[Qt]==="";Qt--);return Bt>Qt?[]:pt.slice(Bt,Qt-Bt+1)}tt=s.resolve(tt).substr(1),nt=s.resolve(nt).substr(1);for(var ot=rt(tt.split("/")),ut=rt(nt.split("/")),dt=Math.min(ot.length,ut.length),Ut=dt,st=0;st=1;--dt)if((nt=tt.charCodeAt(dt))===47){if(!ut){ot=dt;break}}else ut=!1;return ot===-1?rt?"/":".":rt&&ot===1?"/":tt.slice(0,ot)},s.basename=function(tt,nt){var rt=function(ot){typeof ot!="string"&&(ot+="");var ut,dt=0,Ut=-1,st=!0;for(ut=ot.length-1;ut>=0;--ut)if(ot.charCodeAt(ut)===47){if(!st){dt=ut+1;break}}else Ut===-1&&(st=!1,Ut=ut+1);return Ut===-1?"":ot.slice(dt,Ut)}(tt);return nt&&rt.substr(-1*nt.length)===nt&&(rt=rt.substr(0,rt.length-nt.length)),rt},s.extname=function(tt){typeof tt!="string"&&(tt+="");for(var nt=-1,rt=0,ot=-1,ut=!0,dt=0,Ut=tt.length-1;Ut>=0;--Ut){var st=tt.charCodeAt(Ut);if(st!==47)ot===-1&&(ut=!1,ot=Ut+1),st===46?nt===-1?nt=Ut:dt!==1&&(dt=1):nt!==-1&&(dt=-1);else if(!ut){rt=Ut+1;break}}return nt===-1||ot===-1||dt===0||dt===1&&nt===ot-1&&nt===rt+1?"":tt.slice(nt,ot)};var et="ab".substr(-1)==="b"?function(tt,nt,rt){return tt.substr(nt,rt)}:function(tt,nt,rt){return nt<0&&(nt=tt.length+nt),tt.substr(nt,rt)}}).call(this,_(2))},,function(o,s,_){var j=s.format=_(8);s.levels=_(102),Object.defineProperty(j,"align",{value:_(119)}),Object.defineProperty(j,"cli",{value:_(120)}),Object.defineProperty(j,"colorize",{value:_(42)}),Object.defineProperty(j,"combine",{value:_(121)}),Object.defineProperty(j,"errors",{value:_(122)}),Object.defineProperty(j,"json",{value:_(123)}),Object.defineProperty(j,"label",{value:_(124)}),Object.defineProperty(j,"logstash",{value:_(125)}),Object.defineProperty(j,"metadata",{value:_(126)}),Object.defineProperty(j,"ms",{value:_(127)}),Object.defineProperty(j,"padLevels",{value:_(59)}),Object.defineProperty(j,"prettyPrint",{value:_(129)}),Object.defineProperty(j,"printf",{value:_(130)}),Object.defineProperty(j,"simple",{value:_(131)}),Object.defineProperty(j,"splat",{value:_(132)}),Object.defineProperty(j,"timestamp",{value:_(133)}),Object.defineProperty(j,"uncolorize",{value:_(135)})},function(o,s,_){var j=_(103);o.exports=j},function(o,s,_){function j(dt){return function(Ut){if(Array.isArray(Ut))return $(Ut)}(dt)||function(Ut){if(typeof Symbol<"u"&&Ut[Symbol.iterator]!=null||Ut["@@iterator"]!=null)return Array.from(Ut)}(dt)||function(Ut,st){if(Ut){if(typeof Ut=="string")return $(Ut,st);var ct=Object.prototype.toString.call(Ut).slice(8,-1);if(ct==="Object"&&Ut.constructor&&(ct=Ut.constructor.name),ct==="Map"||ct==="Set")return Array.from(Ut);if(ct==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(ct))return $(Ut,st)}}(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 $(dt,Ut){(Ut==null||Ut>dt.length)&&(Ut=dt.length);for(var st=0,ct=new Array(Ut);st0&&arguments[0]!==void 0?arguments[0]:{levels:nt.npm.levels};_e(this,dt),this.paddings=dt.paddingForLevels(pt.levels,pt.filler),this.options=pt}var Ut,st,ct;return Ut=dt,ct=[{key:"getLongestLevel",value:function(pt){var Bt=Object.keys(pt).map(function(Qt){return Qt.length});return Math.max.apply(Math,j(Bt))}},{key:"paddingForLevel",value:function(pt,Bt,Qt){var gt=Qt+1-pt.length,ft=Math.floor(gt/Bt.length);return"".concat(Bt).concat(Bt.repeat(ft)).slice(0,gt)}},{key:"paddingForLevels",value:function(pt){var Bt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:" ",Qt=dt.getLongestLevel(pt);return Object.keys(pt).reduce(function(gt,ft){return gt[ft]=dt.paddingForLevel(ft,Bt,Qt),gt},{})}}],(st=[{key:"transform",value:function(pt,Bt){return pt.message="".concat(this.paddings[pt[rt]]).concat(pt.message),pt[ot]&&(pt[ot]="".concat(this.paddings[pt[rt]]).concat(pt[ot])),pt}}])&&et(Ut.prototype,st),ct&&et(Ut,ct),Object.defineProperty(Ut,"prototype",{writable:!1}),dt}();o.exports=function(dt){return new ut(dt)},o.exports.Padder=o.exports.Format=ut},function(o,s,_){var j=_(13).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)})},moved:function($,_e,et){function tt(){return function(){throw new Error([j("winston.%s was moved in winston@3.0.0.",et),j("Use a winston.%s instead.",_e)].join(` -`))}}Object.defineProperty($,et,{get:tt,set:tt})},forProperties:function($,_e,et){et.forEach(function(tt){var nt=s.warn[_e](tt);Object.defineProperty($,tt,{get:nt,set:nt})})}}},function(o,s,_){(function(j,$){function _e(bt){var Jt=this;this.next=null,this.entry=null,this.finish=function(){(function(Zt,Vt,jt){var zt=Zt.entry;for(Zt.entry=null;zt;){var $t=zt.callback;Vt.pendingcb--,$t(jt),zt=zt.next}Vt.corkedRequestsFree.next=Zt})(Jt,bt)}}var et;o.exports=mt,mt.WritableState=ht;var tt={deprecate:_(43)},nt=_(62),rt=_(5).Buffer,ot=(j!==void 0?j:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},ut,dt=_(63),Ut=_(64).getHighWaterMark,st=_(35).codes,ct=st.ERR_INVALID_ARG_TYPE,pt=st.ERR_METHOD_NOT_IMPLEMENTED,Bt=st.ERR_MULTIPLE_CALLBACK,Qt=st.ERR_STREAM_CANNOT_PIPE,gt=st.ERR_STREAM_DESTROYED,ft=st.ERR_STREAM_NULL_VALUES,Ft=st.ERR_STREAM_WRITE_AFTER_END,yt=st.ERR_UNKNOWN_ENCODING,Ct=dt.errorOrDestroy;function xt(){}function ht(bt,Jt,Zt){et=et||_(36),bt=bt||{},typeof Zt!="boolean"&&(Zt=Jt instanceof et),this.objectMode=!!bt.objectMode,Zt&&(this.objectMode=this.objectMode||!!bt.writableObjectMode),this.highWaterMark=Ut(this,bt,"writableHighWaterMark",Zt),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var Vt=bt.decodeStrings===!1;this.decodeStrings=!Vt,this.defaultEncoding=bt.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(jt){(function(zt,$t){var nn=zt._writableState,rn=nn.sync,Dt=nn.writecb;if(typeof Dt!="function")throw new Bt;if(function(Et){Et.writing=!1,Et.writecb=null,Et.length-=Et.writelen,Et.writelen=0}(nn),$t)(function(Et,kt,Pt,Kt,Ht){--kt.pendingcb,Pt?($.nextTick(Ht,Kt),$.nextTick(Wt,Et,kt),Et._writableState.errorEmitted=!0,Ct(Et,Kt)):(Ht(Kt),Et._writableState.errorEmitted=!0,Ct(Et,Kt),Wt(Et,kt))})(zt,nn,rn,$t,Dt);else{var wt=Ot(nn)||zt.destroyed;wt||nn.corked||nn.bufferProcessing||!nn.bufferedRequest||Tt(zt,nn),rn?$.nextTick(vt,zt,nn,wt,Dt):vt(zt,nn,wt,Dt)}})(Jt,jt)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=bt.emitClose!==!1,this.autoDestroy=!!bt.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new _e(this)}function mt(bt){var Jt=this instanceof(et=et||_(36));if(!Jt&&!ut.call(mt,this))return new mt(bt);this._writableState=new ht(bt,this,Jt),this.writable=!0,bt&&(typeof bt.write=="function"&&(this._write=bt.write),typeof bt.writev=="function"&&(this._writev=bt.writev),typeof bt.destroy=="function"&&(this._destroy=bt.destroy),typeof bt.final=="function"&&(this._final=bt.final)),nt.call(this)}function It(bt,Jt,Zt,Vt,jt,zt,$t){Jt.writelen=Vt,Jt.writecb=$t,Jt.writing=!0,Jt.sync=!0,Jt.destroyed?Jt.onwrite(new gt("write")):Zt?bt._writev(jt,Jt.onwrite):bt._write(jt,zt,Jt.onwrite),Jt.sync=!1}function vt(bt,Jt,Zt,Vt){Zt||function(jt,zt){zt.length===0&&zt.needDrain&&(zt.needDrain=!1,jt.emit("drain"))}(bt,Jt),Jt.pendingcb--,Vt(),Wt(bt,Jt)}function Tt(bt,Jt){Jt.bufferProcessing=!0;var Zt=Jt.bufferedRequest;if(bt._writev&&Zt&&Zt.next){var Vt=Jt.bufferedRequestCount,jt=new Array(Vt),zt=Jt.corkedRequestsFree;zt.entry=Zt;for(var $t=0,nn=!0;Zt;)jt[$t]=Zt,Zt.isBuf||(nn=!1),Zt=Zt.next,$t+=1;jt.allBuffers=nn,It(bt,Jt,!0,Jt.length,jt,"",zt.finish),Jt.pendingcb++,Jt.lastBufferedRequest=null,zt.next?(Jt.corkedRequestsFree=zt.next,zt.next=null):Jt.corkedRequestsFree=new _e(Jt),Jt.bufferedRequestCount=0}else{for(;Zt;){var rn=Zt.chunk,Dt=Zt.encoding,wt=Zt.callback;if(It(bt,Jt,!1,Jt.objectMode?1:rn.length,rn,Dt,wt),Zt=Zt.next,Jt.bufferedRequestCount--,Jt.writing)break}Zt===null&&(Jt.lastBufferedRequest=null)}Jt.bufferedRequest=Zt,Jt.bufferProcessing=!1}function Ot(bt){return bt.ending&&bt.length===0&&bt.bufferedRequest===null&&!bt.finished&&!bt.writing}function _t(bt,Jt){bt._final(function(Zt){Jt.pendingcb--,Zt&&Ct(bt,Zt),Jt.prefinished=!0,bt.emit("prefinish"),Wt(bt,Jt)})}function Wt(bt,Jt){var Zt=Ot(Jt);if(Zt&&(function(jt,zt){zt.prefinished||zt.finalCalled||(typeof jt._final!="function"||zt.destroyed?(zt.prefinished=!0,jt.emit("prefinish")):(zt.pendingcb++,zt.finalCalled=!0,$.nextTick(_t,jt,zt)))}(bt,Jt),Jt.pendingcb===0&&(Jt.finished=!0,bt.emit("finish"),Jt.autoDestroy))){var Vt=bt._readableState;(!Vt||Vt.autoDestroy&&Vt.endEmitted)&&bt.destroy()}return Zt}_(7)(mt,nt),ht.prototype.getBuffer=function(){for(var bt=this.bufferedRequest,Jt=[];bt;)Jt.push(bt),bt=bt.next;return Jt},function(){try{Object.defineProperty(ht.prototype,"buffer",{get:tt.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"?(ut=Function.prototype[Symbol.hasInstance],Object.defineProperty(mt,Symbol.hasInstance,{value:function(bt){return!!ut.call(this,bt)||this===mt&&bt&&bt._writableState instanceof ht}})):ut=function(bt){return bt instanceof this},mt.prototype.pipe=function(){Ct(this,new Qt)},mt.prototype.write=function(bt,Jt,Zt){var Vt,jt=this._writableState,zt=!1,$t=!jt.objectMode&&(Vt=bt,rt.isBuffer(Vt)||Vt instanceof ot);return $t&&!rt.isBuffer(bt)&&(bt=function(nn){return rt.from(nn)}(bt)),typeof Jt=="function"&&(Zt=Jt,Jt=null),$t?Jt="buffer":Jt||(Jt=jt.defaultEncoding),typeof Zt!="function"&&(Zt=xt),jt.ending?function(nn,rn){var Dt=new Ft;Ct(nn,Dt),$.nextTick(rn,Dt)}(this,Zt):($t||function(nn,rn,Dt,wt){var Et;return Dt===null?Et=new ft:typeof Dt=="string"||rn.objectMode||(Et=new ct("chunk",["string","Buffer"],Dt)),!Et||(Ct(nn,Et),$.nextTick(wt,Et),!1)}(this,jt,bt,Zt))&&(jt.pendingcb++,zt=function(nn,rn,Dt,wt,Et,kt){if(!Dt){var Pt=function(sn,gn,Cn){return sn.objectMode||sn.decodeStrings===!1||typeof gn!="string"||(gn=rt.from(gn,Cn)),gn}(rn,wt,Et);wt!==Pt&&(Dt=!0,Et="buffer",wt=Pt)}var Kt=rn.objectMode?1:wt.length;rn.length+=Kt;var Ht=rn.length-1))throw new yt(bt);return this._writableState.defaultEncoding=bt,this},Object.defineProperty(mt.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(mt.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),mt.prototype._write=function(bt,Jt,Zt){Zt(new pt("_write()"))},mt.prototype._writev=null,mt.prototype.end=function(bt,Jt,Zt){var Vt=this._writableState;return typeof bt=="function"?(Zt=bt,bt=null,Jt=null):typeof Jt=="function"&&(Zt=Jt,Jt=null),bt!=null&&this.write(bt,Jt),Vt.corked&&(Vt.corked=1,this.uncork()),Vt.ending||function(jt,zt,$t){zt.ending=!0,Wt(jt,zt),$t&&(zt.finished?$.nextTick($t):jt.once("finish",$t)),zt.ended=!0,jt.writable=!1}(this,Vt,Zt),this},Object.defineProperty(mt.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(mt.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(bt){this._writableState&&(this._writableState.destroyed=bt)}}),mt.prototype.destroy=dt.destroy,mt.prototype._undestroy=dt.undestroy,mt.prototype._destroy=function(bt,Jt){Jt(bt)}}).call(this,_(6),_(2))},function(o,s,_){o.exports=_(20).EventEmitter},function(o,s,_){(function(j){function $(tt,nt){et(tt,nt),_e(tt)}function _e(tt){tt._writableState&&!tt._writableState.emitClose||tt._readableState&&!tt._readableState.emitClose||tt.emit("close")}function et(tt,nt){tt.emit("error",nt)}o.exports={destroy:function(tt,nt){var rt=this,ot=this._readableState&&this._readableState.destroyed,ut=this._writableState&&this._writableState.destroyed;return ot||ut?(nt?nt(tt):tt&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,j.nextTick(et,this,tt)):j.nextTick(et,this,tt)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(tt||null,function(dt){!nt&&dt?rt._writableState?rt._writableState.errorEmitted?j.nextTick(_e,rt):(rt._writableState.errorEmitted=!0,j.nextTick($,rt,dt)):j.nextTick($,rt,dt):nt?(j.nextTick(_e,rt),nt(dt)):j.nextTick(_e,rt)}),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(tt,nt){var rt=tt._readableState,ot=tt._writableState;rt&&rt.autoDestroy||ot&&ot.autoDestroy?tt.destroy(nt):tt.emit("error",nt)}}}).call(this,_(2))},function(o,s,_){var j=_(35).codes.ERR_INVALID_OPT_VALUE;o.exports={getHighWaterMark:function($,_e,et,tt){var nt=function(rt,ot,ut){return rt.highWaterMark!=null?rt.highWaterMark:ot?rt[ut]: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}}},function(o,s){},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0});var j=et(_(159)),$=et(_(23)),_e=et(_(30));function et(tt){return tt&&tt.__esModule?tt:{default:tt}}s.default=(0,_e.default)(function(tt,nt,rt,ot){return(0,j.default)(nt)(tt,(0,$.default)(rt),ot)},4),o.exports=s.default},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(j){function $(..._e){if(j!==null){var et=j;j=null,et.apply(this,_e)}}return Object.assign($,j),$},o.exports=s.default},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(j){return function(...$){if(j===null)throw new Error("Callback was already called.");var _e=j;j=null,_e.apply(this,$)}},o.exports=s.default},function(o,s,_){(function(j,$){var _e=_(37);o.exports=ft;var et,tt=_(165);ft.ReadableState=gt,_(20).EventEmitter;var nt=function(Zt,Vt){return Zt.listeners(Vt).length},rt=_(70),ot=_(46).Buffer,ut=j.Uint8Array||function(){},dt=Object.create(_(32));dt.inherits=_(7);var Ut=_(166),st=void 0;st=Ut&&Ut.debuglog?Ut.debuglog("stream"):function(){};var ct,pt=_(167),Bt=_(71);dt.inherits(ft,rt);var Qt=["error","close","destroy","pause","resume"];function gt(Zt,Vt){Zt=Zt||{};var jt=Vt instanceof(et=et||_(22));this.objectMode=!!Zt.objectMode,jt&&(this.objectMode=this.objectMode||!!Zt.readableObjectMode);var zt=Zt.highWaterMark,$t=Zt.readableHighWaterMark,nn=this.objectMode?16:16384;this.highWaterMark=zt||zt===0?zt:jt&&($t||$t===0)?$t:nn,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new pt,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.destroyed=!1,this.defaultEncoding=Zt.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,Zt.encoding&&(ct||(ct=_(21).StringDecoder),this.decoder=new ct(Zt.encoding),this.encoding=Zt.encoding)}function ft(Zt){if(et=et||_(22),!(this instanceof ft))return new ft(Zt);this._readableState=new gt(Zt,this),this.readable=!0,Zt&&(typeof Zt.read=="function"&&(this._read=Zt.read),typeof Zt.destroy=="function"&&(this._destroy=Zt.destroy)),rt.call(this)}function Ft(Zt,Vt,jt,zt,$t){var nn,rn=Zt._readableState;return Vt===null?(rn.reading=!1,function(Dt,wt){if(!wt.ended){if(wt.decoder){var Et=wt.decoder.end();Et&&Et.length&&(wt.buffer.push(Et),wt.length+=wt.objectMode?1:Et.length)}wt.ended=!0,xt(Dt)}}(Zt,rn)):($t||(nn=function(Dt,wt){var Et;kt=wt,ot.isBuffer(kt)||kt instanceof ut||typeof wt=="string"||wt===void 0||Dt.objectMode||(Et=new TypeError("Invalid non-string/buffer chunk"));var kt;return Et}(rn,Vt)),nn?Zt.emit("error",nn):rn.objectMode||Vt&&Vt.length>0?(typeof Vt=="string"||rn.objectMode||Object.getPrototypeOf(Vt)===ot.prototype||(Vt=function(Dt){return ot.from(Dt)}(Vt)),zt?rn.endEmitted?Zt.emit("error",new Error("stream.unshift() after end event")):yt(Zt,rn,Vt,!0):rn.ended?Zt.emit("error",new Error("stream.push() after EOF")):(rn.reading=!1,rn.decoder&&!jt?(Vt=rn.decoder.write(Vt),rn.objectMode||Vt.length!==0?yt(Zt,rn,Vt,!1):mt(Zt,rn)):yt(Zt,rn,Vt,!1))):zt||(rn.reading=!1)),function(Dt){return!Dt.ended&&(Dt.needReadable||Dt.lengthVt.highWaterMark&&(Vt.highWaterMark=function(jt){return jt>=8388608?jt=8388608:(jt--,jt|=jt>>>1,jt|=jt>>>2,jt|=jt>>>4,jt|=jt>>>8,jt|=jt>>>16,jt++),jt}(Zt)),Zt<=Vt.length?Zt:Vt.ended?Vt.length:(Vt.needReadable=!0,0))}function xt(Zt){var Vt=Zt._readableState;Vt.needReadable=!1,Vt.emittedReadable||(st("emitReadable",Vt.flowing),Vt.emittedReadable=!0,Vt.sync?_e.nextTick(ht,Zt):ht(Zt))}function ht(Zt){st("emit readable"),Zt.emit("readable"),Ot(Zt)}function mt(Zt,Vt){Vt.readingMore||(Vt.readingMore=!0,_e.nextTick(It,Zt,Vt))}function It(Zt,Vt){for(var jt=Vt.length;!Vt.reading&&!Vt.flowing&&!Vt.ended&&Vt.length=Vt.length?(jt=Vt.decoder?Vt.buffer.join(""):Vt.buffer.length===1?Vt.buffer.head.data:Vt.buffer.concat(Vt.length),Vt.buffer.clear()):jt=function(zt,$t,nn){var rn;return zt<$t.head.data.length?(rn=$t.head.data.slice(0,zt),$t.head.data=$t.head.data.slice(zt)):rn=zt===$t.head.data.length?$t.shift():nn?function(Dt,wt){var Et=wt.head,kt=1,Pt=Et.data;for(Dt-=Pt.length;Et=Et.next;){var Kt=Et.data,Ht=Dt>Kt.length?Kt.length:Dt;if(Ht===Kt.length?Pt+=Kt:Pt+=Kt.slice(0,Dt),(Dt-=Ht)===0){Ht===Kt.length?(++kt,Et.next?wt.head=Et.next:wt.head=wt.tail=null):(wt.head=Et,Et.data=Kt.slice(Ht));break}++kt}return wt.length-=kt,Pt}(zt,$t):function(Dt,wt){var Et=ot.allocUnsafe(Dt),kt=wt.head,Pt=1;for(kt.data.copy(Et),Dt-=kt.data.length;kt=kt.next;){var Kt=kt.data,Ht=Dt>Kt.length?Kt.length:Dt;if(Kt.copy(Et,Et.length-Dt,0,Ht),(Dt-=Ht)===0){Ht===Kt.length?(++Pt,kt.next?wt.head=kt.next:wt.head=wt.tail=null):(wt.head=kt,kt.data=Kt.slice(Ht));break}++Pt}return wt.length-=Pt,Et}(zt,$t),rn}(Zt,Vt.buffer,Vt.decoder),jt);var jt}function Wt(Zt){var Vt=Zt._readableState;if(Vt.length>0)throw new Error('"endReadable()" called on non-empty stream');Vt.endEmitted||(Vt.ended=!0,_e.nextTick(bt,Vt,Zt))}function bt(Zt,Vt){Zt.endEmitted||Zt.length!==0||(Zt.endEmitted=!0,Vt.readable=!1,Vt.emit("end"))}function Jt(Zt,Vt){for(var jt=0,zt=Zt.length;jt=Vt.highWaterMark||Vt.ended))return st("read: emitReadable",Vt.length,Vt.ended),Vt.length===0&&Vt.ended?Wt(this):xt(this),null;if((Zt=Ct(Zt,Vt))===0&&Vt.ended)return Vt.length===0&&Wt(this),null;var zt,$t=Vt.needReadable;return st("need readable",$t),(Vt.length===0||Vt.length-Zt0?_t(Zt,Vt):null)===null?(Vt.needReadable=!0,Zt=0):Vt.length-=Zt,Vt.length===0&&(Vt.ended||(Vt.needReadable=!0),jt!==Zt&&Vt.ended&&Wt(this)),zt!==null&&this.emit("data",zt),zt},ft.prototype._read=function(Zt){this.emit("error",new Error("_read() is not implemented"))},ft.prototype.pipe=function(Zt,Vt){var jt=this,zt=this._readableState;switch(zt.pipesCount){case 0:zt.pipes=Zt;break;case 1:zt.pipes=[zt.pipes,Zt];break;default:zt.pipes.push(Zt)}zt.pipesCount+=1,st("pipe count=%d opts=%j",zt.pipesCount,Vt);var $t=(!Vt||Vt.end!==!1)&&Zt!==$.stdout&&Zt!==$.stderr?rn:on;function nn(sn,gn){st("onunpipe"),sn===jt&&gn&&gn.hasUnpiped===!1&&(gn.hasUnpiped=!0,st("cleanup"),Zt.removeListener("close",Kt),Zt.removeListener("finish",Ht),Zt.removeListener("drain",Dt),Zt.removeListener("error",Pt),Zt.removeListener("unpipe",nn),jt.removeListener("end",rn),jt.removeListener("end",on),jt.removeListener("data",kt),wt=!0,!zt.awaitDrain||Zt._writableState&&!Zt._writableState.needDrain||Dt())}function rn(){st("onend"),Zt.end()}zt.endEmitted?_e.nextTick($t):jt.once("end",$t),Zt.on("unpipe",nn);var Dt=function(sn){return function(){var gn=sn._readableState;st("pipeOnDrain",gn.awaitDrain),gn.awaitDrain&&gn.awaitDrain--,gn.awaitDrain===0&&nt(sn,"data")&&(gn.flowing=!0,Ot(sn))}}(jt);Zt.on("drain",Dt);var wt=!1,Et=!1;function kt(sn){st("ondata"),Et=!1,Zt.write(sn)!==!1||Et||((zt.pipesCount===1&&zt.pipes===Zt||zt.pipesCount>1&&Jt(zt.pipes,Zt)!==-1)&&!wt&&(st("false write response, pause",jt._readableState.awaitDrain),jt._readableState.awaitDrain++,Et=!0),jt.pause())}function Pt(sn){st("onerror",sn),on(),Zt.removeListener("error",Pt),nt(Zt,"error")===0&&Zt.emit("error",sn)}function Kt(){Zt.removeListener("finish",Ht),on()}function Ht(){st("onfinish"),Zt.removeListener("close",Kt),on()}function on(){st("unpipe"),jt.unpipe(Zt)}return jt.on("data",kt),function(sn,gn,Cn){if(typeof sn.prependListener=="function")return sn.prependListener(gn,Cn);sn._events&&sn._events[gn]?tt(sn._events[gn])?sn._events[gn].unshift(Cn):sn._events[gn]=[Cn,sn._events[gn]]:sn.on(gn,Cn)}(Zt,"error",Pt),Zt.once("close",Kt),Zt.once("finish",Ht),Zt.emit("pipe",jt),zt.flowing||(st("pipe resume"),jt.resume()),Zt},ft.prototype.unpipe=function(Zt){var Vt=this._readableState,jt={hasUnpiped:!1};if(Vt.pipesCount===0)return this;if(Vt.pipesCount===1)return Zt&&Zt!==Vt.pipes||(Zt||(Zt=Vt.pipes),Vt.pipes=null,Vt.pipesCount=0,Vt.flowing=!1,Zt&&Zt.emit("unpipe",this,jt)),this;if(!Zt){var zt=Vt.pipes,$t=Vt.pipesCount;Vt.pipes=null,Vt.pipesCount=0,Vt.flowing=!1;for(var nn=0;nn<$t;nn++)zt[nn].emit("unpipe",this,jt);return this}var rn=Jt(Vt.pipes,Zt);return rn===-1||(Vt.pipes.splice(rn,1),Vt.pipesCount-=1,Vt.pipesCount===1&&(Vt.pipes=Vt.pipes[0]),Zt.emit("unpipe",this,jt)),this},ft.prototype.on=function(Zt,Vt){var jt=rt.prototype.on.call(this,Zt,Vt);if(Zt==="data")this._readableState.flowing!==!1&&this.resume();else if(Zt==="readable"){var zt=this._readableState;zt.endEmitted||zt.readableListening||(zt.readableListening=zt.needReadable=!0,zt.emittedReadable=!1,zt.reading?zt.length&&xt(this):_e.nextTick(vt,this))}return jt},ft.prototype.addListener=ft.prototype.on,ft.prototype.resume=function(){var Zt=this._readableState;return Zt.flowing||(st("resume"),Zt.flowing=!0,function(Vt,jt){jt.resumeScheduled||(jt.resumeScheduled=!0,_e.nextTick(Tt,Vt,jt))}(this,Zt)),this},ft.prototype.pause=function(){return st("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(st("pause"),this._readableState.flowing=!1,this.emit("pause")),this},ft.prototype.wrap=function(Zt){var Vt=this,jt=this._readableState,zt=!1;for(var $t in Zt.on("end",function(){if(st("wrapped end"),jt.decoder&&!jt.ended){var rn=jt.decoder.end();rn&&rn.length&&Vt.push(rn)}Vt.push(null)}),Zt.on("data",function(rn){st("wrapped data"),jt.decoder&&(rn=jt.decoder.write(rn)),jt.objectMode&&rn==null||(jt.objectMode||rn&&rn.length)&&(Vt.push(rn)||(zt=!0,Zt.pause()))}),Zt)this[$t]===void 0&&typeof Zt[$t]=="function"&&(this[$t]=function(rn){return function(){return Zt[rn].apply(Zt,arguments)}}($t));for(var nn=0;nn=0;jt--)if(zt[jt]!==$t[jt])return!1;for(jt=zt.length-1;jt>=0;jt--)if(Vt=zt[jt],!ft(Ot[Vt],_t[Vt],Wt,bt))return!1;return!0}(ht,mt,It,vt))}return It?ht===mt:ht==mt}function Ft(ht){return Object.prototype.toString.call(ht)=="[object Arguments]"}function yt(ht,mt){if(!ht||!mt)return!1;if(Object.prototype.toString.call(mt)=="[object RegExp]")return mt.test(ht);try{if(ht instanceof mt)return!0}catch{}return!Error.isPrototypeOf(mt)&&mt.call({},ht)===!0}function Ct(ht,mt,It,vt){var Tt;if(typeof mt!="function")throw new TypeError('"block" argument must be a function');typeof It=="string"&&(vt=It,It=null),Tt=function(Wt){var bt;try{Wt()}catch(Jt){bt=Jt}return bt}(mt),vt=(It&&It.name?" ("+It.name+").":".")+(vt?" "+vt:"."),ht&&!Tt&&Qt(Tt,It,"Missing expected exception"+vt);var Ot=typeof vt=="string",_t=!ht&&Tt&&!It;if((!ht&&tt.isError(Tt)&&Ot&&yt(Tt,It)||_t)&&Qt(Tt,It,"Got unwanted exception"+vt),ht&&Tt&&It&&!yt(Tt,It)||!ht&&Tt)throw Tt}Ut.AssertionError=function(ht){this.name="AssertionError",this.actual=ht.actual,this.expected=ht.expected,this.operator=ht.operator,ht.message?(this.message=ht.message,this.generatedMessage=!1):(this.message=function(Wt){return pt(Bt(Wt.actual),128)+" "+Wt.operator+" "+pt(Bt(Wt.expected),128)}(this),this.generatedMessage=!0);var mt=ht.stackStartFunction||Qt;if(Error.captureStackTrace)Error.captureStackTrace(this,mt);else{var It=new Error;if(It.stack){var vt=It.stack,Tt=ct(mt),Ot=vt.indexOf(` -`+Tt);if(Ot>=0){var _t=vt.indexOf(` -`,Ot+1);vt=vt.substring(_t+1)}this.stack=vt}}},tt.inherits(Ut.AssertionError,Error),Ut.fail=Qt,Ut.ok=gt,Ut.equal=function(ht,mt,It){ht!=mt&&Qt(ht,mt,It,"==",Ut.equal)},Ut.notEqual=function(ht,mt,It){ht==mt&&Qt(ht,mt,It,"!=",Ut.notEqual)},Ut.deepEqual=function(ht,mt,It){ft(ht,mt,!1)||Qt(ht,mt,It,"deepEqual",Ut.deepEqual)},Ut.deepStrictEqual=function(ht,mt,It){ft(ht,mt,!0)||Qt(ht,mt,It,"deepStrictEqual",Ut.deepStrictEqual)},Ut.notDeepEqual=function(ht,mt,It){ft(ht,mt,!1)&&Qt(ht,mt,It,"notDeepEqual",Ut.notDeepEqual)},Ut.notDeepStrictEqual=function ht(mt,It,vt){ft(mt,It,!0)&&Qt(mt,It,vt,"notDeepStrictEqual",ht)},Ut.strictEqual=function(ht,mt,It){ht!==mt&&Qt(ht,mt,It,"===",Ut.strictEqual)},Ut.notStrictEqual=function(ht,mt,It){ht===mt&&Qt(ht,mt,It,"!==",Ut.notStrictEqual)},Ut.throws=function(ht,mt,It){Ct(!0,ht,mt,It)},Ut.doesNotThrow=function(ht,mt,It){Ct(!1,ht,mt,It)},Ut.ifError=function(ht){if(ht)throw ht},Ut.strict=$(function ht(mt,It){mt||Qt(mt,!0,It,"==",ht)},Ut,{equal:Ut.strictEqual,deepEqual:Ut.deepStrictEqual,notEqual:Ut.notStrictEqual,notDeepEqual:Ut.notDeepStrictEqual}),Ut.strict.strict=Ut.strict;var xt=Object.keys||function(ht){var mt=[];for(var It in ht)nt.call(ht,It)&&mt.push(It);return mt}}).call(this,_(6))},function(o,s,_){o.exports=function(j,$,_e,et){for(var tt=65535&j|0,nt=j>>>16&65535|0,rt=0;_e!==0;){_e-=rt=_e>2e3?2e3:_e;do nt=nt+(tt=tt+$[et++]|0)|0;while(--rt);tt%=65521,nt%=65521}return tt|nt<<16|0}},function(o,s,_){var j=function(){for(var $,_e=[],et=0;et<256;et++){$=et;for(var tt=0;tt<8;tt++)$=1&$?3988292384^$>>>1:$>>>1;_e[et]=$}return _e}();o.exports=function($,_e,et,tt){var nt=j,rt=tt+et;$^=-1;for(var ot=tt;ot>>8^nt[255&($^_e[ot])];return-1^$}},function(o,s,_){(function(j,$){var _e;o.exports=mt,mt.ReadableState=ht,_(20).EventEmitter;var et=function(Dt,wt){return Dt.listeners(wt).length},tt=_(77),nt=_(5).Buffer,rt=(j!==void 0?j:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},ot,ut=_(184);ot=ut&&ut.debuglog?ut.debuglog("stream"):function(){};var dt,Ut,st,ct=_(185),pt=_(78),Bt=_(79).getHighWaterMark,Qt=_(24).codes,gt=Qt.ERR_INVALID_ARG_TYPE,ft=Qt.ERR_STREAM_PUSH_AFTER_EOF,Ft=Qt.ERR_METHOD_NOT_IMPLEMENTED,yt=Qt.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;_(7)(mt,tt);var Ct=pt.errorOrDestroy,xt=["error","close","destroy","pause","resume"];function ht(Dt,wt,Et){_e=_e||_(25),Dt=Dt||{},typeof Et!="boolean"&&(Et=wt instanceof _e),this.objectMode=!!Dt.objectMode,Et&&(this.objectMode=this.objectMode||!!Dt.readableObjectMode),this.highWaterMark=Bt(this,Dt,"readableHighWaterMark",Et),this.buffer=new ct,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=Dt.emitClose!==!1,this.autoDestroy=!!Dt.autoDestroy,this.destroyed=!1,this.defaultEncoding=Dt.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,Dt.encoding&&(dt||(dt=_(21).StringDecoder),this.decoder=new dt(Dt.encoding),this.encoding=Dt.encoding)}function mt(Dt){if(_e=_e||_(25),!(this instanceof mt))return new mt(Dt);var wt=this instanceof _e;this._readableState=new ht(Dt,this,wt),this.readable=!0,Dt&&(typeof Dt.read=="function"&&(this._read=Dt.read),typeof Dt.destroy=="function"&&(this._destroy=Dt.destroy)),tt.call(this)}function It(Dt,wt,Et,kt,Pt){ot("readableAddChunk",wt);var Kt,Ht=Dt._readableState;if(wt===null)Ht.reading=!1,function(on,sn){if(ot("onEofChunk"),!sn.ended){if(sn.decoder){var gn=sn.decoder.end();gn&&gn.length&&(sn.buffer.push(gn),sn.length+=sn.objectMode?1:gn.length)}sn.ended=!0,sn.sync?Ot(on):(sn.needReadable=!1,sn.emittedReadable||(sn.emittedReadable=!0,_t(on)))}}(Dt,Ht);else if(Pt||(Kt=function(on,sn){var gn;Cn=sn,nt.isBuffer(Cn)||Cn instanceof rt||typeof sn=="string"||sn===void 0||on.objectMode||(gn=new gt("chunk",["string","Buffer","Uint8Array"],sn));var Cn;return gn}(Ht,wt)),Kt)Ct(Dt,Kt);else if(Ht.objectMode||wt&&wt.length>0)if(typeof wt=="string"||Ht.objectMode||Object.getPrototypeOf(wt)===nt.prototype||(wt=function(on){return nt.from(on)}(wt)),kt)Ht.endEmitted?Ct(Dt,new yt):vt(Dt,Ht,wt,!0);else if(Ht.ended)Ct(Dt,new ft);else{if(Ht.destroyed)return!1;Ht.reading=!1,Ht.decoder&&!Et?(wt=Ht.decoder.write(wt),Ht.objectMode||wt.length!==0?vt(Dt,Ht,wt,!1):Wt(Dt,Ht)):vt(Dt,Ht,wt,!1)}else kt||(Ht.reading=!1,Wt(Dt,Ht));return!Ht.ended&&(Ht.lengthwt.highWaterMark&&(wt.highWaterMark=function(Et){return Et>=1073741824?Et=1073741824:(Et--,Et|=Et>>>1,Et|=Et>>>2,Et|=Et>>>4,Et|=Et>>>8,Et|=Et>>>16,Et++),Et}(Dt)),Dt<=wt.length?Dt:wt.ended?wt.length:(wt.needReadable=!0,0))}function Ot(Dt){var wt=Dt._readableState;ot("emitReadable",wt.needReadable,wt.emittedReadable),wt.needReadable=!1,wt.emittedReadable||(ot("emitReadable",wt.flowing),wt.emittedReadable=!0,$.nextTick(_t,Dt))}function _t(Dt){var wt=Dt._readableState;ot("emitReadable_",wt.destroyed,wt.length,wt.ended),wt.destroyed||!wt.length&&!wt.ended||(Dt.emit("readable"),wt.emittedReadable=!1),wt.needReadable=!wt.flowing&&!wt.ended&&wt.length<=wt.highWaterMark,jt(Dt)}function Wt(Dt,wt){wt.readingMore||(wt.readingMore=!0,$.nextTick(bt,Dt,wt))}function bt(Dt,wt){for(;!wt.reading&&!wt.ended&&(wt.length0,wt.resumeScheduled&&!wt.paused?wt.flowing=!0:Dt.listenerCount("data")>0&&Dt.resume()}function Zt(Dt){ot("readable nexttick read 0"),Dt.read(0)}function Vt(Dt,wt){ot("resume",wt.reading),wt.reading||Dt.read(0),wt.resumeScheduled=!1,Dt.emit("resume"),jt(Dt),wt.flowing&&!wt.reading&&Dt.read(0)}function jt(Dt){var wt=Dt._readableState;for(ot("flow",wt.flowing);wt.flowing&&Dt.read()!==null;);}function zt(Dt,wt){return wt.length===0?null:(wt.objectMode?Et=wt.buffer.shift():!Dt||Dt>=wt.length?(Et=wt.decoder?wt.buffer.join(""):wt.buffer.length===1?wt.buffer.first():wt.buffer.concat(wt.length),wt.buffer.clear()):Et=wt.buffer.consume(Dt,wt.decoder),Et);var Et}function $t(Dt){var wt=Dt._readableState;ot("endReadable",wt.endEmitted),wt.endEmitted||(wt.ended=!0,$.nextTick(nn,wt,Dt))}function nn(Dt,wt){if(ot("endReadableNT",Dt.endEmitted,Dt.length),!Dt.endEmitted&&Dt.length===0&&(Dt.endEmitted=!0,wt.readable=!1,wt.emit("end"),Dt.autoDestroy)){var Et=wt._writableState;(!Et||Et.autoDestroy&&Et.finished)&&wt.destroy()}}function rn(Dt,wt){for(var Et=0,kt=Dt.length;Et=wt.highWaterMark:wt.length>0)||wt.ended))return ot("read: emitReadable",wt.length,wt.ended),wt.length===0&&wt.ended?$t(this):Ot(this),null;if((Dt=Tt(Dt,wt))===0&&wt.ended)return wt.length===0&&$t(this),null;var kt,Pt=wt.needReadable;return ot("need readable",Pt),(wt.length===0||wt.length-Dt0?zt(Dt,wt):null)===null?(wt.needReadable=wt.length<=wt.highWaterMark,Dt=0):(wt.length-=Dt,wt.awaitDrain=0),wt.length===0&&(wt.ended||(wt.needReadable=!0),Et!==Dt&&wt.ended&&$t(this)),kt!==null&&this.emit("data",kt),kt},mt.prototype._read=function(Dt){Ct(this,new Ft("_read()"))},mt.prototype.pipe=function(Dt,wt){var Et=this,kt=this._readableState;switch(kt.pipesCount){case 0:kt.pipes=Dt;break;case 1:kt.pipes=[kt.pipes,Dt];break;default:kt.pipes.push(Dt)}kt.pipesCount+=1,ot("pipe count=%d opts=%j",kt.pipesCount,wt);var Pt=(!wt||wt.end!==!1)&&Dt!==$.stdout&&Dt!==$.stderr?Ht:rr;function Kt(An,Dn){ot("onunpipe"),An===Et&&Dn&&Dn.hasUnpiped===!1&&(Dn.hasUnpiped=!0,ot("cleanup"),Dt.removeListener("close",In),Dt.removeListener("finish",Mn),Dt.removeListener("drain",on),Dt.removeListener("error",Cn),Dt.removeListener("unpipe",Kt),Et.removeListener("end",Ht),Et.removeListener("end",rr),Et.removeListener("data",gn),sn=!0,!kt.awaitDrain||Dt._writableState&&!Dt._writableState.needDrain||on())}function Ht(){ot("onend"),Dt.end()}kt.endEmitted?$.nextTick(Pt):Et.once("end",Pt),Dt.on("unpipe",Kt);var on=function(An){return function(){var Dn=An._readableState;ot("pipeOnDrain",Dn.awaitDrain),Dn.awaitDrain&&Dn.awaitDrain--,Dn.awaitDrain===0&&et(An,"data")&&(Dn.flowing=!0,jt(An))}}(Et);Dt.on("drain",on);var sn=!1;function gn(An){ot("ondata");var Dn=Dt.write(An);ot("dest.write",Dn),Dn===!1&&((kt.pipesCount===1&&kt.pipes===Dt||kt.pipesCount>1&&rn(kt.pipes,Dt)!==-1)&&!sn&&(ot("false write response, pause",kt.awaitDrain),kt.awaitDrain++),Et.pause())}function Cn(An){ot("onerror",An),rr(),Dt.removeListener("error",Cn),et(Dt,"error")===0&&Ct(Dt,An)}function In(){Dt.removeListener("finish",Mn),rr()}function Mn(){ot("onfinish"),Dt.removeListener("close",In),rr()}function rr(){ot("unpipe"),Et.unpipe(Dt)}return Et.on("data",gn),function(An,Dn,Hn){if(typeof An.prependListener=="function")return An.prependListener(Dn,Hn);An._events&&An._events[Dn]?Array.isArray(An._events[Dn])?An._events[Dn].unshift(Hn):An._events[Dn]=[Hn,An._events[Dn]]:An.on(Dn,Hn)}(Dt,"error",Cn),Dt.once("close",In),Dt.once("finish",Mn),Dt.emit("pipe",Et),kt.flowing||(ot("pipe resume"),Et.resume()),Dt},mt.prototype.unpipe=function(Dt){var wt=this._readableState,Et={hasUnpiped:!1};if(wt.pipesCount===0)return this;if(wt.pipesCount===1)return Dt&&Dt!==wt.pipes||(Dt||(Dt=wt.pipes),wt.pipes=null,wt.pipesCount=0,wt.flowing=!1,Dt&&Dt.emit("unpipe",this,Et)),this;if(!Dt){var kt=wt.pipes,Pt=wt.pipesCount;wt.pipes=null,wt.pipesCount=0,wt.flowing=!1;for(var Kt=0;Kt0,kt.flowing!==!1&&this.resume()):Dt==="readable"&&(kt.endEmitted||kt.readableListening||(kt.readableListening=kt.needReadable=!0,kt.flowing=!1,kt.emittedReadable=!1,ot("on readable",kt.length,kt.reading),kt.length?Ot(this):kt.reading||$.nextTick(Zt,this))),Et},mt.prototype.addListener=mt.prototype.on,mt.prototype.removeListener=function(Dt,wt){var Et=tt.prototype.removeListener.call(this,Dt,wt);return Dt==="readable"&&$.nextTick(Jt,this),Et},mt.prototype.removeAllListeners=function(Dt){var wt=tt.prototype.removeAllListeners.apply(this,arguments);return Dt!=="readable"&&Dt!==void 0||$.nextTick(Jt,this),wt},mt.prototype.resume=function(){var Dt=this._readableState;return Dt.flowing||(ot("resume"),Dt.flowing=!Dt.readableListening,function(wt,Et){Et.resumeScheduled||(Et.resumeScheduled=!0,$.nextTick(Vt,wt,Et))}(this,Dt)),Dt.paused=!1,this},mt.prototype.pause=function(){return ot("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(ot("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},mt.prototype.wrap=function(Dt){var wt=this,Et=this._readableState,kt=!1;for(var Pt in Dt.on("end",function(){if(ot("wrapped end"),Et.decoder&&!Et.ended){var Ht=Et.decoder.end();Ht&&Ht.length&&wt.push(Ht)}wt.push(null)}),Dt.on("data",function(Ht){ot("wrapped data"),Et.decoder&&(Ht=Et.decoder.write(Ht)),Et.objectMode&&Ht==null||(Et.objectMode||Ht&&Ht.length)&&(wt.push(Ht)||(kt=!0,Dt.pause()))}),Dt)this[Pt]===void 0&&typeof Dt[Pt]=="function"&&(this[Pt]=function(Ht){return function(){return Dt[Ht].apply(Dt,arguments)}}(Pt));for(var Kt=0;Kt-1))throw new yt(bt);return this._writableState.defaultEncoding=bt,this},Object.defineProperty(mt.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(mt.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),mt.prototype._write=function(bt,Jt,Zt){Zt(new pt("_write()"))},mt.prototype._writev=null,mt.prototype.end=function(bt,Jt,Zt){var Vt=this._writableState;return typeof bt=="function"?(Zt=bt,bt=null,Jt=null):typeof Jt=="function"&&(Zt=Jt,Jt=null),bt!=null&&this.write(bt,Jt),Vt.corked&&(Vt.corked=1,this.uncork()),Vt.ending||function(jt,zt,$t){zt.ending=!0,Wt(jt,zt),$t&&(zt.finished?$.nextTick($t):jt.once("finish",$t)),zt.ended=!0,jt.writable=!1}(this,Vt,Zt),this},Object.defineProperty(mt.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(mt.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(bt){this._writableState&&(this._writableState.destroyed=bt)}}),mt.prototype.destroy=dt.destroy,mt.prototype._undestroy=dt.undestroy,mt.prototype._destroy=function(bt,Jt){Jt(bt)}}).call(this,_(6),_(2))},function(o,s,_){o.exports=ot;var j=_(24).codes,$=j.ERR_METHOD_NOT_IMPLEMENTED,_e=j.ERR_MULTIPLE_CALLBACK,et=j.ERR_TRANSFORM_ALREADY_TRANSFORMING,tt=j.ERR_TRANSFORM_WITH_LENGTH_0,nt=_(25);function rt(Ut,st){var ct=this._transformState;ct.transforming=!1;var pt=ct.writecb;if(pt===null)return this.emit("error",new _e);ct.writechunk=null,ct.writecb=null,st!=null&&this.push(st),pt(Ut);var Bt=this._readableState;Bt.reading=!1,(Bt.needReadable||Bt.lengthut._pos){var st=Ut.substr(ut._pos);if(ut._charset==="x-user-defined"){for(var ct=new $(st.length),pt=0;ptut._pos&&(ut.push(new $(new Uint8Array(Bt.result.slice(ut._pos)))),ut._pos=Bt.result.byteLength)},Bt.onload=function(){ut.push(null)},Bt.readAsArrayBuffer(Ut)}ut._xhr.readyState===rt.DONE&&ut._mode!=="ms-stream"&&ut.push(null)}}).call(this,_(2),_(5).Buffer,_(6))},function(o,s,_){var j=_(199),$=_(201);function _e(){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}s.parse=gt,s.resolve=function(ft,Ft){return gt(ft,!1,!0).resolve(Ft)},s.resolveObject=function(ft,Ft){return ft?gt(ft,!1,!0).resolveObject(Ft):Ft},s.format=function(ft){return $.isString(ft)&&(ft=gt(ft)),ft instanceof _e?ft.format():_e.prototype.format.call(ft)},s.Url=_e;var et=/^([a-z0-9.+-]+:)/i,tt=/:[0-9]*$/,nt=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,rt=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r",` -`," "]),ot=["'"].concat(rt),ut=["%","/","?",";","#"].concat(ot),dt=["/","?","#"],Ut=/^[+a-z0-9A-Z_-]{0,63}$/,st=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,ct={javascript:!0,"javascript:":!0},pt={javascript:!0,"javascript:":!0},Bt={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},Qt=_(202);function gt(ft,Ft,yt){if(ft&&$.isObject(ft)&&ft instanceof _e)return ft;var Ct=new _e;return Ct.parse(ft,Ft,yt),Ct}_e.prototype.parse=function(ft,Ft,yt){if(!$.isString(ft))throw new TypeError("Parameter 'url' must be a string, not "+typeof ft);var Ct=ft.indexOf("?"),xt=Ct!==-1&&Ct127?nn+="x":nn+=$t[rn];if(!nn.match(Ut)){var wt=jt.slice(0,Jt),Et=jt.slice(Jt+1),kt=$t.match(st);kt&&(wt.push(kt[1]),Et.unshift(kt[2])),Et.length&&(mt="/"+Et.join(".")+mt),this.hostname=wt.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),Vt||(this.hostname=j.toASCII(this.hostname));var Pt=this.port?":"+this.port:"",Kt=this.hostname||"";this.host=Kt+Pt,this.href+=this.host,Vt&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),mt[0]!=="/"&&(mt="/"+mt))}if(!ct[Tt])for(Jt=0,zt=ot.length;Jt0)&&yt.host.split("@"))&&(yt.auth=kt.shift(),yt.host=yt.hostname=kt.shift())),yt.search=ft.search,yt.query=ft.query,$.isNull(yt.pathname)&&$.isNull(yt.search)||(yt.path=(yt.pathname?yt.pathname:"")+(yt.search?yt.search:"")),yt.href=yt.format(),yt;if(!$t.length)return yt.pathname=null,yt.search?yt.path="/"+yt.search:yt.path=null,yt.href=yt.format(),yt;for(var rn=$t.slice(-1)[0],Dt=(yt.host||ft.host||$t.length>1)&&(rn==="."||rn==="..")||rn==="",wt=0,Et=$t.length;Et>=0;Et--)(rn=$t[Et])==="."?$t.splice(Et,1):rn===".."?($t.splice(Et,1),wt++):wt&&($t.splice(Et,1),wt--);if(!jt&&!zt)for(;wt--;wt)$t.unshift("..");!jt||$t[0]===""||$t[0]&&$t[0].charAt(0)==="/"||$t.unshift(""),Dt&&$t.join("/").substr(-1)!=="/"&&$t.push("");var kt,Pt=$t[0]===""||$t[0]&&$t[0].charAt(0)==="/";return nn&&(yt.hostname=yt.host=Pt?"":$t.length?$t.shift():"",(kt=!!(yt.host&&yt.host.indexOf("@")>0)&&yt.host.split("@"))&&(yt.auth=kt.shift(),yt.host=yt.hostname=kt.shift())),(jt=jt||yt.host&&$t.length)&&!Pt&&$t.unshift(""),$t.length?yt.pathname=$t.join("/"):(yt.pathname=null,yt.path=null),$.isNull(yt.pathname)&&$.isNull(yt.search)||(yt.path=(yt.pathname?yt.pathname:"")+(yt.search?yt.search:"")),yt.auth=ft.auth||yt.auth,yt.slashes=yt.slashes||ft.slashes,yt.href=yt.format(),yt},_e.prototype.parseHost=function(){var ft=this.host,Ft=tt.exec(ft);Ft&&((Ft=Ft[0])!==":"&&(this.port=Ft.substr(1)),ft=ft.substr(0,ft.length-Ft.length)),ft&&(this.hostname=ft)}},function(o,s,_){const j=$=>$!==null&&typeof $=="object"&&typeof $.pipe=="function";j.writable=$=>j($)&&$.writable!==!1&&typeof $._write=="function"&&typeof $._writableState=="object",j.readable=$=>j($)&&$.readable!==!1&&typeof $._read=="function"&&typeof $._readableState=="object",j.duplex=$=>j.writable($)&&j.readable($),j.transform=$=>j.duplex($)&&typeof $._transform=="function"&&typeof $._transformState=="object",o.exports=j},function(o,s,_){function j(Bt){return(j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Qt){return typeof Qt}:function(Qt){return Qt&&typeof Symbol=="function"&&Qt.constructor===Symbol&&Qt!==Symbol.prototype?"symbol":typeof Qt})(Bt)}function $(Bt,Qt){for(var gt=0;gt"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,ft=ut(Bt);if(Qt){var Ft=ut(this).constructor;gt=Reflect.construct(ft,arguments,Ft)}else gt=ft.apply(this,arguments);return ot(this,gt)}}function ot(Bt,Qt){if(Qt&&(j(Qt)==="object"||typeof Qt=="function"))return Qt;if(Qt!==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}(Bt)}function ut(Bt){return(ut=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Qt){return Qt.__proto__||Object.getPrototypeOf(Qt)})(Bt)}var dt=_(4).LEVEL,Ut=_(49),st=_(207),ct=_(39)("winston:create-logger");function pt(Bt){return"is"+Bt.charAt(0).toUpperCase()+Bt.slice(1)+"Enabled"}o.exports=function(){var Bt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Bt.levels=Bt.levels||Ut.npm.levels;var Qt=function(ft){tt(yt,ft);var Ft=rt(yt);function yt(Ct){return et(this,yt),Ft.call(this,Ct)}return _e(yt)}(st),gt=new Qt(Bt);return Object.keys(Bt.levels).forEach(function(ft){ct('Define prototype method for "%s"',ft),ft!=="log"?(Qt.prototype[ft]=function(){for(var Ft=this||gt,yt=arguments.length,Ct=new Array(yt),xt=0;xt0){tt=rt.substr(0,Ut),nt=rt.substr(Ut+1);var st=tt.indexOf(".Module");st>0&&(rt=rt.substr(st+1),tt=tt.substr(0,st))}ot=null}nt&&(ot=tt,ut=nt),nt===""&&(ut=null,rt=null);var ct={fileName:et[2]||null,lineNumber:parseInt(et[3],10)||null,functionName:rt,typeName:ot,methodName:ut,columnNumber:parseInt(et[4],10)||null,native:dt};return $._createParsedCallSite(ct)}}).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)}},function(o,s,_){function j(ot){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})(ot)}function $(ot,ut){for(var dt=0;dt"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 dt,Ut=nt(ot);if(ut){var st=nt(this).constructor;dt=Reflect.construct(Ut,arguments,st)}else dt=Ut.apply(this,arguments);return tt(this,dt)}}function tt(ot,ut){if(ut&&(j(ut)==="object"||typeof ut=="function"))return ut;if(ut!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(dt){if(dt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return dt}(ot)}function nt(ot){return(nt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(ut){return ut.__proto__||Object.getPrototypeOf(ut)})(ot)}var rt=_(33).Writable;o.exports=function(ot){(function(ct,pt){if(typeof pt!="function"&&pt!==null)throw new TypeError("Super expression must either be null or a function");ct.prototype=Object.create(pt&&pt.prototype,{constructor:{value:ct,writable:!0,configurable:!0}}),Object.defineProperty(ct,"prototype",{writable:!1}),pt&&_e(ct,pt)})(st,ot);var ut,dt,Ut=et(st);function st(ct){var pt;if(function(Bt,Qt){if(!(Bt instanceof Qt))throw new TypeError("Cannot call a class as a function")}(this,st),pt=Ut.call(this,{objectMode:!0}),!ct)throw new Error("ExceptionStream requires a TransportStream instance.");return pt.handleExceptions=!0,pt.transport=ct,pt}return ut=st,(dt=[{key:"_write",value:function(ct,pt,Bt){return ct.exception?this.transport.log(ct,Bt):(Bt(),!0)}}])&&$(ut.prototype,dt),Object.defineProperty(ut,"prototype",{writable:!1}),st}(rt)},function(o,s,_){(function(j){function $(ut,dt){for(var Ut=0;Ut0&&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)},function(module,exports,__webpack_require__){(function(global,Buffer){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.isDef=function(o){return o!==void 0},goog.isString=function(o){return typeof o=="string"},goog.isBoolean=function(o){return typeof o=="boolean"},goog.isNumber=function(o){return typeof o=="number"},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&&goog.isDef(s)?_[j]=s:_=_[j]&&_[j]!==Object.prototype[j]?_[j]:_[j]={}},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(!goog.isString(o)||!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"u"||!TrustedTypes.createPolicy)return s;try{s=TrustedTypes.createPolicy(o,{createHTML:goog.identity_,createScript:goog.identity_,createScriptURL:goog.identity_,createURL:goog.identity_})}catch(_){goog.logToConsole_(_.message)}return s},goog.TRUSTED_TYPES_POLICY_=goog.TRUSTED_TYPES_POLICY_NAME?goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME+"#base"):null;var jspb={BinaryConstants:{},ConstBinaryMessage:function(){},BinaryMessage:function(){}};jspb.BinaryConstants.FieldType={INVALID:-1,DOUBLE:1,FLOAT:2,INT64:3,UINT64:4,INT32:5,FIXED64:6,FIXED32:7,BOOL:8,STRING:9,GROUP:10,MESSAGE:11,BYTES:12,UINT32:13,ENUM:14,SFIXED32:15,SFIXED64:16,SINT32:17,SINT64:18,FHASH64:30,VHASH64:31},jspb.BinaryConstants.WireType={INVALID:-1,VARINT:0,FIXED64:1,DELIMITED:2,START_GROUP:3,END_GROUP:4,FIXED32:5},jspb.BinaryConstants.FieldTypeToWireType=function(o){var s=jspb.BinaryConstants.FieldType,_=jspb.BinaryConstants.WireType;switch(o){case s.INT32:case s.INT64:case s.UINT32:case s.UINT64:case s.SINT32:case s.SINT64:case s.BOOL:case s.ENUM:case s.VHASH64:return _.VARINT;case s.DOUBLE:case s.FIXED64:case s.SFIXED64:case s.FHASH64:return _.FIXED64;case s.STRING:case s.MESSAGE:case s.BYTES:return _.DELIMITED;case s.FLOAT:case s.FIXED32:case s.SFIXED32:return _.FIXED32;default:return _.INVALID}},jspb.BinaryConstants.INVALID_FIELD_NUMBER=-1,jspb.BinaryConstants.FLOAT32_EPS=1401298464324817e-60,jspb.BinaryConstants.FLOAT32_MIN=11754943508222875e-54,jspb.BinaryConstants.FLOAT32_MAX=34028234663852886e22,jspb.BinaryConstants.FLOAT64_EPS=5e-324,jspb.BinaryConstants.FLOAT64_MIN=22250738585072014e-324,jspb.BinaryConstants.FLOAT64_MAX=17976931348623157e292,jspb.BinaryConstants.TWO_TO_20=1048576,jspb.BinaryConstants.TWO_TO_23=8388608,jspb.BinaryConstants.TWO_TO_31=2147483648,jspb.BinaryConstants.TWO_TO_32=4294967296,jspb.BinaryConstants.TWO_TO_52=4503599627370496,jspb.BinaryConstants.TWO_TO_63=9223372036854776e3,jspb.BinaryConstants.TWO_TO_64=18446744073709552e3,jspb.BinaryConstants.ZERO_HASH="\0\0\0\0\0\0\0\0",goog.dom={},goog.dom.NodeType={ELEMENT:1,ATTRIBUTE:2,TEXT:3,CDATA_SECTION:4,ENTITY_REFERENCE:5,ENTITY:6,PROCESSING_INSTRUCTION:7,COMMENT:8,DOCUMENT:9,DOCUMENT_TYPE:10,DOCUMENT_FRAGMENT:11,NOTATION:12},goog.debug={},goog.debug.Error=function(o){if(Error.captureStackTrace)Error.captureStackTrace(this,goog.debug.Error);else{var s=Error().stack;s&&(this.stack=s)}o&&(this.message=String(o)),this.reportErrorToServer=!0},goog.inherits(goog.debug.Error,Error),goog.debug.Error.prototype.name="CustomError",goog.asserts={},goog.asserts.ENABLE_ASSERTS=goog.DEBUG,goog.asserts.AssertionError=function(o,s){goog.debug.Error.call(this,goog.asserts.subs_(o,s)),this.messagePattern=o},goog.inherits(goog.asserts.AssertionError,goog.debug.Error),goog.asserts.AssertionError.prototype.name="AssertionError",goog.asserts.DEFAULT_ERROR_HANDLER=function(o){throw o},goog.asserts.errorHandler_=goog.asserts.DEFAULT_ERROR_HANDLER,goog.asserts.subs_=function(o,s){for(var _="",j=(o=o.split("%s")).length-1,$=0;$_?Math.max(0,o.length+_):_,goog.isString(o))return goog.isString(s)&&s.length==1?o.indexOf(s,_):-1;for(;_(_=_??o.length-1)&&(_=Math.max(0,o.length+_)),goog.isString(o))return goog.isString(s)&&s.length==1?o.lastIndexOf(s,_):-1;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,$=goog.isString(o)?o.split(""):o,_e=0;_e(s=goog.array.findIndex(o,s,_))?null:goog.isString(o)?o.charAt(s):o[s]},goog.array.findIndex=function(o,s,_){for(var j=o.length,$=goog.isString(o)?o.split(""):o,_e=0;_e(s=goog.array.findIndexRight(o,s,_))?null:goog.isString(o)?o.charAt(s):o[s]},goog.array.findIndexRight=function(o,s,_){var j=o.length,$=goog.isString(o)?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(!goog.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.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.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.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.fs={},goog.fs.url={},goog.fs.url.createObjectUrl=function(o){return goog.fs.url.getUrlObject_().createObjectURL(o)},goog.fs.url.revokeObjectUrl=function(o){goog.fs.url.getUrlObject_().revokeObjectURL(o)},goog.fs.url.getUrlObject_=function(){var o=goog.fs.url.findUrlObject_();if(o!=null)return o;throw Error("This browser doesn't seem to support blob URLs")},goog.fs.url.findUrlObject_=function(){return goog.isDef(goog.global.URL)&&goog.isDef(goog.global.URL.createObjectURL)?goog.global.URL:goog.isDef(goog.global.webkitURL)&&goog.isDef(goog.global.webkitURL.createObjectURL)?goog.global.webkitURL:goog.isDef(goog.global.createObjectURL)?goog.global:null},goog.fs.url.browserSupportsObjectUrls=function(){return goog.fs.url.findUrlObject_()!=null},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.i18n={},goog.i18n.bidi={},goog.i18n.bidi.FORCE_RTL=!1,goog.i18n.bidi.IS_RTL=goog.i18n.bidi.FORCE_RTL||(goog.LOCALE.substring(0,2).toLowerCase()=="ar"||goog.LOCALE.substring(0,2).toLowerCase()=="fa"||goog.LOCALE.substring(0,2).toLowerCase()=="he"||goog.LOCALE.substring(0,2).toLowerCase()=="iw"||goog.LOCALE.substring(0,2).toLowerCase()=="ps"||goog.LOCALE.substring(0,2).toLowerCase()=="sd"||goog.LOCALE.substring(0,2).toLowerCase()=="ug"||goog.LOCALE.substring(0,2).toLowerCase()=="ur"||goog.LOCALE.substring(0,2).toLowerCase()=="yi")&&(goog.LOCALE.length==2||goog.LOCALE.substring(2,3)=="-"||goog.LOCALE.substring(2,3)=="_")||3<=goog.LOCALE.length&&goog.LOCALE.substring(0,3).toLowerCase()=="ckb"&&(goog.LOCALE.length==3||goog.LOCALE.substring(3,4)=="-"||goog.LOCALE.substring(3,4)=="_")||7<=goog.LOCALE.length&&(goog.LOCALE.substring(2,3)=="-"||goog.LOCALE.substring(2,3)=="_")&&(goog.LOCALE.substring(3,7).toLowerCase()=="adlm"||goog.LOCALE.substring(3,7).toLowerCase()=="arab"||goog.LOCALE.substring(3,7).toLowerCase()=="hebr"||goog.LOCALE.substring(3,7).toLowerCase()=="nkoo"||goog.LOCALE.substring(3,7).toLowerCase()=="rohg"||goog.LOCALE.substring(3,7).toLowerCase()=="thaa")||8<=goog.LOCALE.length&&(goog.LOCALE.substring(3,4)=="-"||goog.LOCALE.substring(3,4)=="_")&&(goog.LOCALE.substring(4,8).toLowerCase()=="adlm"||goog.LOCALE.substring(4,8).toLowerCase()=="arab"||goog.LOCALE.substring(4,8).toLowerCase()=="hebr"||goog.LOCALE.substring(4,8).toLowerCase()=="nkoo"||goog.LOCALE.substring(4,8).toLowerCase()=="rohg"||goog.LOCALE.substring(4,8).toLowerCase()=="thaa"),goog.i18n.bidi.Format={LRE:"‪",RLE:"‫",PDF:"‬",LRM:"‎",RLM:"‏"},goog.i18n.bidi.Dir={LTR:1,RTL:-1,NEUTRAL:0},goog.i18n.bidi.RIGHT="right",goog.i18n.bidi.LEFT="left",goog.i18n.bidi.I18N_RIGHT=goog.i18n.bidi.IS_RTL?goog.i18n.bidi.LEFT:goog.i18n.bidi.RIGHT,goog.i18n.bidi.I18N_LEFT=goog.i18n.bidi.IS_RTL?goog.i18n.bidi.RIGHT:goog.i18n.bidi.LEFT,goog.i18n.bidi.toDir=function(o,s){return typeof o=="number"?0o?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(){this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_="",this.trustedURL_=null,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.unwrapTrustedURL=function(o){return o.trustedURL_?o.trustedURL_:goog.html.TrustedResourceUrl.unwrap(o)},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.SafeUrl=function(){this.privateDoNotAccessOrElseSafeUrlWrappedValue_="",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 goog.html.SafeUrl.unwrapTrustedURL(o).toString()},goog.html.SafeUrl.unwrapTrustedURL=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-wav|wav|webm)|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\/csv|video\/(?:mpeg|mp4|ogg|webm|quicktime))(?:;\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.SAFE_MIME_TYPE_PATTERN_.test(o.type)?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.SAFE_MIME_TYPE_PATTERN_.test(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(/.");if(o.toUpperCase()in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_)throw Error("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("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('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('Invalid attribute name "'+j+'".');var $=s[j];goog.isDefAndNotNull($)&&(_+=" "+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];for(j in _){var _e=j.toLowerCase();if(_e in o)throw Error('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.asserts={},goog.dom.asserts.assertIsLocation=function(o){if(goog.asserts.ENABLE_ASSERTS){var s=goog.dom.asserts.getWindow_(o);s&&(!o||!(o instanceof s.Location)&&o instanceof s.Element)&&goog.asserts.fail("Argument is not a Location (or a non-Element mock); got: %s",goog.dom.asserts.debugStringForType_(o))}return o},goog.dom.asserts.assertIsElementType_=function(o,s){if(goog.asserts.ENABLE_ASSERTS){var _=goog.dom.asserts.getWindow_(o);_&&_[s]!==void 0&&(o&&(o instanceof _[s]||!(o instanceof _.Location||o instanceof _.Element))||goog.asserts.fail("Argument is not a %s (or a non-Element, non-Location mock); got: %s",s,goog.dom.asserts.debugStringForType_(o)))}return o},goog.dom.asserts.assertIsHTMLAnchorElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLAnchorElement")},goog.dom.asserts.assertIsHTMLButtonElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLButtonElement")},goog.dom.asserts.assertIsHTMLLinkElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLLinkElement")},goog.dom.asserts.assertIsHTMLImageElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLImageElement")},goog.dom.asserts.assertIsHTMLAudioElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLAudioElement")},goog.dom.asserts.assertIsHTMLVideoElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLVideoElement")},goog.dom.asserts.assertIsHTMLInputElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLInputElement")},goog.dom.asserts.assertIsHTMLTextAreaElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLTextAreaElement")},goog.dom.asserts.assertIsHTMLCanvasElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLCanvasElement")},goog.dom.asserts.assertIsHTMLEmbedElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLEmbedElement")},goog.dom.asserts.assertIsHTMLFormElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLFormElement")},goog.dom.asserts.assertIsHTMLFrameElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLFrameElement")},goog.dom.asserts.assertIsHTMLIFrameElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLIFrameElement")},goog.dom.asserts.assertIsHTMLObjectElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLObjectElement")},goog.dom.asserts.assertIsHTMLScriptElement=function(o){return goog.dom.asserts.assertIsElementType_(o,"HTMLScriptElement")},goog.dom.asserts.debugStringForType_=function(o){if(!goog.isObject(o))return o===void 0?"undefined":o===null?"null":typeof o;try{return o.constructor.displayName||o.constructor.name||Object.prototype.toString.call(o)}catch{return""}},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.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.unwrapTrustedURL(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.unwrapTrustedURL(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.unwrapTrustedURL(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.unwrapTrustedURL(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.unwrapTrustedURL(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.unwrapTrustedURL(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.unwrapTrustedURL(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.unwrapTrustedURL(s)},goog.dom.safe.setIframeSrc=function(o,s){goog.dom.asserts.assertIsHTMLIFrameElement(o),o.src=goog.html.TrustedResourceUrl.unwrapTrustedURL(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.unwrapTrustedURL(s)):o.href=s instanceof goog.html.TrustedResourceUrl?goog.html.TrustedResourceUrl.unwrapTrustedURL(s):s instanceof goog.html.SafeUrl?goog.html.SafeUrl.unwrapTrustedURL(s):goog.html.SafeUrl.unwrapTrustedURL(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.unwrapTrustedURL(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.unwrapTrustedURL(s))},goog.dom.safe.replaceLocation=function(o,s){goog.dom.asserts.assertIsLocation(o),s=s instanceof goog.html.SafeUrl?s:goog.html.SafeUrl.sanitizeAssertUnchanged(s),o.replace(goog.html.SafeUrl.unwrapTrustedURL(s))},goog.dom.safe.openInWindow=function(o,s,_,j,$){return o=o instanceof goog.html.SafeUrl?o:goog.html.SafeUrl.sanitizeAssertUnchanged(o),(s||goog.global).open(goog.html.SafeUrl.unwrapTrustedURL(o),_?goog.string.Const.unwrap(_):"",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=goog.isString(s)?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)),goog.isString(o)?/^\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)return goog.userAgent.getDocumentMode_()}(),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,-_),o=8388607&Math.round(o*jspb.BinaryConstants.TWO_TO_23),jspb.utils.split64High=0,jspb.utils.split64Low=(s<<31|_+127<<23|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.BinaryConstants.TWO_TO_32*s+o);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}goog.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(),goog.asserts.assert(o.length==18),goog.asserts.assert(o[0]=="0"),goog.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,goog.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);goog.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,goog.asserts.assert(this.cursor_<=this.end_),_):(_|=(127&(s=o[this.cursor_+1]))<<7,128>s?(this.cursor_+=2,goog.asserts.assert(this.cursor_<=this.end_),_):(_|=(127&(s=o[this.cursor_+2]))<<14,128>s?(this.cursor_+=3,goog.asserts.assert(this.cursor_<=this.end_),_):(_|=(127&(s=o[this.cursor_+3]))<<21,128>s?(this.cursor_+=4,goog.asserts.assert(this.cursor_<=this.end_),_):(_|=(15&(s=o[this.cursor_+4]))<<28,128>s?(this.cursor_+=5,goog.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_++]&&goog.asserts.assert(!1),goog.asserts.assert(this.cursor_<=this.end_),_)))))},jspb.BinaryDecoder.prototype.readSignedVarint32=jspb.BinaryDecoder.prototype.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,goog.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,goog.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,goog.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,goog.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,goog.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,goog.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,goog.asserts.fail("Invalid byte length!"),new Uint8Array(0);var s=this.bytes_.subarray(this.cursor_,this.cursor_+o);return this.cursor_+=o,goog.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_},jspb.BinaryReader.prototype.getWireType=function(){return this.nextWireType_},jspb.BinaryReader.prototype.isDelimited=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED},jspb.BinaryReader.prototype.isEndGroup=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP},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 goog.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?(goog.asserts.fail("Invalid wire type: %s (at position %s)",o,this.fieldCursor_),this.error_=!0,!1):(this.nextField_=s,this.nextWireType_=o,!0)},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?(goog.asserts.fail("Invalid wire type for skipVarintField"),this.skipField()):this.decoder_.skipVarint()},jspb.BinaryReader.prototype.skipDelimitedField=function(){if(this.nextWireType_!=jspb.BinaryConstants.WireType.DELIMITED)goog.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?(goog.asserts.fail("Invalid wire type for skipFixed32Field"),this.skipField()):this.decoder_.advance(4)},jspb.BinaryReader.prototype.skipFixed64Field=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.FIXED64?(goog.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()){goog.asserts.fail("Unmatched start-group tag: stream EOF"),this.error_=!0;break}if(this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP){this.nextField_!=o&&(goog.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:goog.asserts.fail("Invalid wire encoding for field.")}},jspb.BinaryReader.prototype.registerReadCallback=function(o,s){this.readCallbacks_===null&&(this.readCallbacks_={}),goog.asserts.assert(!this.readCallbacks_[o]),this.readCallbacks_[o]=s},jspb.BinaryReader.prototype.runReadCallback=function(o){return goog.asserts.assert(this.readCallbacks_!==null),o=this.readCallbacks_[o],goog.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:goog.asserts.fail("Group field type not supported in readAny()");case s.MESSAGE:goog.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:goog.asserts.fail("Invalid field type in readAny()")}return 0},jspb.BinaryReader.prototype.readMessage=function(o,s){goog.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(_)},jspb.BinaryReader.prototype.readGroup=function(o,s,_){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.START_GROUP),goog.asserts.assert(this.nextField_==o),_(s,this),this.error_||this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP||(goog.asserts.fail("Group submessage did not end with an END_GROUP tag"),this.error_=!0)},jspb.BinaryReader.prototype.getFieldDecoder=function(){goog.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 goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32()},jspb.BinaryReader.prototype.readInt32String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32String()},jspb.BinaryReader.prototype.readInt64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()},jspb.BinaryReader.prototype.readInt64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64String()},jspb.BinaryReader.prototype.readUint32=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32()},jspb.BinaryReader.prototype.readUint32String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32String()},jspb.BinaryReader.prototype.readUint64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64()},jspb.BinaryReader.prototype.readUint64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64String()},jspb.BinaryReader.prototype.readSint32=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint32()},jspb.BinaryReader.prototype.readSint64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64()},jspb.BinaryReader.prototype.readSint64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64String()},jspb.BinaryReader.prototype.readFixed32=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readUint32()},jspb.BinaryReader.prototype.readFixed64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64()},jspb.BinaryReader.prototype.readFixed64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64String()},jspb.BinaryReader.prototype.readSfixed32=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32()},jspb.BinaryReader.prototype.readSfixed32String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32().toString()},jspb.BinaryReader.prototype.readSfixed64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64()},jspb.BinaryReader.prototype.readSfixed64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64String()},jspb.BinaryReader.prototype.readFloat=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readFloat()},jspb.BinaryReader.prototype.readDouble=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readDouble()},jspb.BinaryReader.prototype.readBool=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),!!this.decoder_.readUnsignedVarint32()},jspb.BinaryReader.prototype.readEnum=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()},jspb.BinaryReader.prototype.readString=function(){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var o=this.decoder_.readUnsignedVarint32();return this.decoder_.readString(o)},jspb.BinaryReader.prototype.readBytes=function(){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var o=this.decoder_.readUnsignedVarint32();return this.decoder_.readBytes(o)},jspb.BinaryReader.prototype.readVarintHash64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readVarintHash64()},jspb.BinaryReader.prototype.readSintHash64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarintHash64()},jspb.BinaryReader.prototype.readSplitVarint64=function(o){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSplitVarint64(o)},jspb.BinaryReader.prototype.readSplitZigzagVarint64=function(o){return goog.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 goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readFixedHash64()},jspb.BinaryReader.prototype.readSplitFixed64=function(o){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readSplitFixed64(o)},jspb.BinaryReader.prototype.readPackedField_=function(o){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var s=this.decoder_.readUnsignedVarint32();s=this.decoder_.getCursor()+s;for(var _=[];this.decoder_.getCursor()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)},jspb.Message.equals=function(o,s){return o==s||!(!o||!s)&&o instanceof s.constructor&&jspb.Message.compareFields(o.toArray(),s.toArray())},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},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;_>>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|s<<25)>>>0,s>>>=7;this.buffer_.push(o)},jspb.BinaryEncoder.prototype.writeSplitFixed64=function(o,s){goog.asserts.assert(o==Math.floor(o)),goog.asserts.assert(s==Math.floor(s)),goog.asserts.assert(0<=o&&o>>=7;this.buffer_.push(o)},jspb.BinaryEncoder.prototype.writeSignedVarint32=function(o){if(goog.asserts.assert(o==Math.floor(o)),goog.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){goog.asserts.assert(o==Math.floor(o)),goog.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){goog.asserts.assert(o==Math.floor(o)),goog.asserts.assert(o>=-jspb.BinaryConstants.TWO_TO_63&&o>>0,j>>>0)})},jspb.BinaryEncoder.prototype.writeUint8=function(o){goog.asserts.assert(o==Math.floor(o)),goog.asserts.assert(0<=o&&256>o),this.buffer_.push(o>>>0&255)},jspb.BinaryEncoder.prototype.writeUint16=function(o){goog.asserts.assert(o==Math.floor(o)),goog.asserts.assert(0<=o&&65536>o),this.buffer_.push(o>>>0&255),this.buffer_.push(o>>>8&255)},jspb.BinaryEncoder.prototype.writeUint32=function(o){goog.asserts.assert(o==Math.floor(o)),goog.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){goog.asserts.assert(o==Math.floor(o)),goog.asserts.assert(0<=o&&oo),this.buffer_.push(o>>>0&255)},jspb.BinaryEncoder.prototype.writeInt16=function(o){goog.asserts.assert(o==Math.floor(o)),goog.asserts.assert(-32768<=o&&32768>o),this.buffer_.push(o>>>0&255),this.buffer_.push(o>>>8&255)},jspb.BinaryEncoder.prototype.writeInt32=function(o){goog.asserts.assert(o==Math.floor(o)),goog.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){goog.asserts.assert(o==Math.floor(o)),goog.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){goog.asserts.assert(1/0===o||-1/0===o||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){goog.asserts.assert(typeof o=="boolean"||typeof o=="number"),this.buffer_.push(o?1:0)},jspb.BinaryEncoder.prototype.writeEnum=function(o){goog.asserts.assert(o==Math.floor(o)),goog.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.BinaryWriter=function(){this.blocks_=[],this.totalLength_=0,this.encoder_=new jspb.BinaryEncoder,this.bookmarks_=[]},jspb.BinaryWriter.prototype.appendUint8Array_=function(o){var s=this.encoder_.end();this.blocks_.push(s),this.blocks_.push(o),this.totalLength_+=s.length+o.length},jspb.BinaryWriter.prototype.beginDelimited_=function(o){return this.writeFieldHeader_(o,jspb.BinaryConstants.WireType.DELIMITED),o=this.encoder_.end(),this.blocks_.push(o),this.totalLength_+=o.length,o.push(this.totalLength_),o},jspb.BinaryWriter.prototype.endDelimited_=function(o){var s=o.pop();for(s=this.totalLength_+this.encoder_.length()-s,goog.asserts.assert(0<=s);127>>=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(){goog.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,goog.asserts.assert(j==o.length),this.blocks_=[o],o},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(){goog.asserts.assert(0<=this.bookmarks_.length),this.endDelimited_(this.bookmarks_.pop())},jspb.BinaryWriter.prototype.writeFieldHeader_=function(o,s){goog.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:goog.asserts.fail("Group field type not supported in writeAny()");break;case j.MESSAGE:goog.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:goog.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&&(goog.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;_-1};function st(Tt){if(typeof Tt!="string"&&(Tt=String(Tt)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(Tt))throw new TypeError("Invalid character in header field name");return Tt.toLowerCase()}function ct(Tt){return typeof Tt!="string"&&(Tt=String(Tt)),Tt}function pt(Tt){var Ot={next:function(){var _t=Tt.shift();return{done:_t===void 0,value:_t}}};return nt&&(Ot[Symbol.iterator]=function(){return Ot}),Ot}function Bt(Tt){this.map={},Tt instanceof Bt?Tt.forEach(function(Ot,_t){this.append(_t,Ot)},this):Array.isArray(Tt)?Tt.forEach(function(Ot){this.append(Ot[0],Ot[1])},this):Tt&&Object.getOwnPropertyNames(Tt).forEach(function(Ot){this.append(Ot,Tt[Ot])},this)}function Qt(Tt){if(Tt.bodyUsed)return Promise.reject(new TypeError("Already read"));Tt.bodyUsed=!0}function gt(Tt){return new Promise(function(Ot,_t){Tt.onload=function(){Ot(Tt.result)},Tt.onerror=function(){_t(Tt.error)}})}function ft(Tt){var Ot=new FileReader,_t=gt(Ot);return Ot.readAsArrayBuffer(Tt),_t}function Ft(Tt){if(Tt.slice)return Tt.slice(0);var Ot=new Uint8Array(Tt.byteLength);return Ot.set(new Uint8Array(Tt)),Ot.buffer}function yt(){return this.bodyUsed=!1,this._initBody=function(Tt){var Ot;this._bodyInit=Tt,Tt?typeof Tt=="string"?this._bodyText=Tt:rt&&Blob.prototype.isPrototypeOf(Tt)?this._bodyBlob=Tt:ot&&FormData.prototype.isPrototypeOf(Tt)?this._bodyFormData=Tt:tt&&URLSearchParams.prototype.isPrototypeOf(Tt)?this._bodyText=Tt.toString():ut&&rt&&(Ot=Tt)&&DataView.prototype.isPrototypeOf(Ot)?(this._bodyArrayBuffer=Ft(Tt.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):ut&&(ArrayBuffer.prototype.isPrototypeOf(Tt)||Ut(Tt))?this._bodyArrayBuffer=Ft(Tt):this._bodyText=Tt=Object.prototype.toString.call(Tt):this._bodyText="",this.headers.get("content-type")||(typeof Tt=="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(Tt)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},rt&&(this.blob=function(){var Tt=Qt(this);if(Tt)return Tt;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?Qt(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(ft)}),this.text=function(){var Tt,Ot,_t,Wt=Qt(this);if(Wt)return Wt;if(this._bodyBlob)return Tt=this._bodyBlob,Ot=new FileReader,_t=gt(Ot),Ot.readAsText(Tt),_t;if(this._bodyArrayBuffer)return Promise.resolve(function(bt){for(var Jt=new Uint8Array(bt),Zt=new Array(Jt.length),Vt=0;Vt-1?Wt:_t),this.mode=Ot.mode||this.mode||null,this.signal=Ot.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&bt)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(bt)}function ht(Tt){var Ot=new FormData;return Tt.trim().split("&").forEach(function(_t){if(_t){var Wt=_t.split("="),bt=Wt.shift().replace(/\+/g," "),Jt=Wt.join("=").replace(/\+/g," ");Ot.append(decodeURIComponent(bt),decodeURIComponent(Jt))}}),Ot}function mt(Tt,Ot){Ot||(Ot={}),this.type="default",this.status=Ot.status===void 0?200:Ot.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in Ot?Ot.statusText:"OK",this.headers=new Bt(Ot.headers),this.url=Ot.url||"",this._initBody(Tt)}xt.prototype.clone=function(){return new xt(this,{body:this._bodyInit})},yt.call(xt.prototype),yt.call(mt.prototype),mt.prototype.clone=function(){return new mt(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Bt(this.headers),url:this.url})},mt.error=function(){var Tt=new mt(null,{status:0,statusText:""});return Tt.type="error",Tt};var It=[301,302,303,307,308];mt.redirect=function(Tt,Ot){if(It.indexOf(Ot)===-1)throw new RangeError("Invalid status code");return new mt(null,{status:Ot,headers:{location:Tt}})},et.DOMException=_e.DOMException;try{new et.DOMException}catch{et.DOMException=function(Tt,Ot){this.message=Tt,this.name=Ot;var _t=Error(Tt);this.stack=_t.stack},et.DOMException.prototype=Object.create(Error.prototype),et.DOMException.prototype.constructor=et.DOMException}function vt(Tt,Ot){return new Promise(function(_t,Wt){var bt=new xt(Tt,Ot);if(bt.signal&&bt.signal.aborted)return Wt(new et.DOMException("Aborted","AbortError"));var Jt=new XMLHttpRequest;function Zt(){Jt.abort()}Jt.onload=function(){var Vt,jt,zt={status:Jt.status,statusText:Jt.statusText,headers:(Vt=Jt.getAllResponseHeaders()||"",jt=new Bt,Vt.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(nn){var rn=nn.split(":"),Dt=rn.shift().trim();if(Dt){var wt=rn.join(":").trim();jt.append(Dt,wt)}}),jt)};zt.url="responseURL"in Jt?Jt.responseURL:zt.headers.get("X-Request-URL");var $t="response"in Jt?Jt.response:Jt.responseText;_t(new mt($t,zt))},Jt.onerror=function(){Wt(new TypeError("Network request failed"))},Jt.ontimeout=function(){Wt(new TypeError("Network request failed"))},Jt.onabort=function(){Wt(new et.DOMException("Aborted","AbortError"))},Jt.open(bt.method,bt.url,!0),bt.credentials==="include"?Jt.withCredentials=!0:bt.credentials==="omit"&&(Jt.withCredentials=!1),"responseType"in Jt&&rt&&(Jt.responseType="blob"),bt.headers.forEach(function(Vt,jt){Jt.setRequestHeader(jt,Vt)}),bt.signal&&(bt.signal.addEventListener("abort",Zt),Jt.onreadystatechange=function(){Jt.readyState===4&&bt.signal.removeEventListener("abort",Zt)}),Jt.send(bt._bodyInit===void 0?null:bt._bodyInit)})}vt.polyfill=!0,_e.fetch||(_e.fetch=vt,_e.Headers=Bt,_e.Request=xt,_e.Response=mt),et.Headers=Bt,et.Request=xt,et.Response=mt,et.fetch=vt,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},function(o,s,_){(function(j){const $=_(216),_e=_(51),et=(tt,nt,rt)=>({from:et,EnvVarError:_(51),get:function(ot){if(!ot)return tt;if(arguments.length>1)throw new _e("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 $(tt,ot,nt||{},rt||function(){})},accessors:_(93),logger:_(230)(console.log,tt.NODE_ENV)});o.exports=et(j===void 0?{}:j.env)}).call(this,_(2))},function(o,s,_){(function(j){const $=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,_e=typeof AbortController=="function"?AbortController:class{constructor(){this.signal=new nt}abort(){this.signal.dispatchEvent("abort")}},et=typeof AbortSignal=="function",tt=typeof _e.AbortSignal=="function",nt=et?AbortSignal:tt?_e.AbortController:class{constructor(){this.aborted=!1,this._listeners=[]}dispatchEvent(ft){if(ft==="abort"){this.aborted=!0;const Ft={type:ft,target:this};this.onabort(Ft),this._listeners.forEach(yt=>yt(Ft),this)}}onabort(){}addEventListener(ft,Ft){ft==="abort"&&this._listeners.push(Ft)}removeEventListener(ft,Ft){ft==="abort"&&(this._listeners=this._listeners.filter(yt=>yt!==Ft))}},rt=new Set,ot=(ft,Ft)=>{const yt="LRU_CACHE_OPTION_"+ft;Ut(yt)&&st(yt,ft+" option","options."+Ft,gt)},ut=(ft,Ft)=>{const yt="LRU_CACHE_METHOD_"+ft;if(Ut(yt)){const{prototype:Ct}=gt,{get:xt}=Object.getOwnPropertyDescriptor(Ct,ft);st(yt,ft+" method",`cache.${Ft}()`,xt)}},dt=(...ft)=>{typeof j=="object"&&j&&typeof j.emitWarning=="function"?j.emitWarning(...ft):console.error(...ft)},Ut=ft=>!rt.has(ft),st=(ft,Ft,yt,Ct)=>{rt.add(ft),dt(`The ${Ft} is deprecated. Please use ${yt} instead.`,"DeprecationWarning",ft,Ct)},ct=ft=>ft&&ft===Math.floor(ft)&&ft>0&&isFinite(ft),pt=ft=>ct(ft)?ft<=Math.pow(2,8)?Uint8Array:ft<=Math.pow(2,16)?Uint16Array:ft<=Math.pow(2,32)?Uint32Array:ft<=Number.MAX_SAFE_INTEGER?Bt:null:null;class Bt extends Array{constructor(Ft){super(Ft),this.fill(0)}}class Qt{constructor(Ft){if(Ft===0)return[];const yt=pt(Ft);this.heap=new yt(Ft),this.length=0}push(Ft){this.heap[this.length++]=Ft}pop(){return this.heap[--this.length]}}class gt{constructor(Ft={}){const{max:yt=0,ttl:Ct,ttlResolution:xt=1,ttlAutopurge:ht,updateAgeOnGet:mt,updateAgeOnHas:It,allowStale:vt,dispose:Tt,disposeAfter:Ot,noDisposeOnSet:_t,noUpdateTTL:Wt,maxSize:bt=0,maxEntrySize:Jt=0,sizeCalculation:Zt,fetchMethod:Vt,fetchContext:jt,noDeleteOnFetchRejection:zt,noDeleteOnStaleGet:$t}=Ft,{length:nn,maxAge:rn,stale:Dt}=Ft instanceof gt?{}:Ft;if(yt!==0&&!ct(yt))throw new TypeError("max option must be a nonnegative integer");const wt=yt?pt(yt):Array;if(!wt)throw new Error("invalid max value: "+yt);if(this.max=yt,this.maxSize=bt,this.maxEntrySize=Jt||this.maxSize,this.sizeCalculation=Zt||nn,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=Vt||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=jt,!this.fetchMethod&&jt!==void 0)throw new TypeError("cannot set fetchContext without fetchMethod");if(this.keyMap=new Map,this.keyList=new Array(yt).fill(null),this.valList=new Array(yt).fill(null),this.next=new wt(yt),this.prev=new wt(yt),this.head=0,this.tail=0,this.free=new Qt(yt),this.initialFill=1,this.size=0,typeof Tt=="function"&&(this.dispose=Tt),typeof Ot=="function"?(this.disposeAfter=Ot,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!_t,this.noUpdateTTL=!!Wt,this.noDeleteOnFetchRejection=!!zt,this.maxEntrySize!==0){if(this.maxSize!==0&&!ct(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!ct(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!vt||!!Dt,this.noDeleteOnStaleGet=!!$t,this.updateAgeOnGet=!!mt,this.updateAgeOnHas=!!It,this.ttlResolution=ct(xt)||xt===0?xt:1,this.ttlAutopurge=!!ht,this.ttl=Ct||rn||0,this.ttl){if(!ct(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 Et="LRU_CACHE_UNBOUNDED";Ut(Et)&&(rt.add(Et),dt("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",Et,gt))}Dt&&ot("stale","allowStale"),rn&&ot("maxAge","ttl"),nn&&ot("length","sizeCalculation")}getRemainingTTL(Ft){return this.has(Ft,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new Bt(this.max),this.starts=new Bt(this.max),this.setItemTTL=(Ct,xt,ht=$.now())=>{if(this.starts[Ct]=xt!==0?ht:0,this.ttls[Ct]=xt,xt!==0&&this.ttlAutopurge){const mt=setTimeout(()=>{this.isStale(Ct)&&this.delete(this.keyList[Ct])},xt+1);mt.unref&&mt.unref()}},this.updateItemAge=Ct=>{this.starts[Ct]=this.ttls[Ct]!==0?$.now():0};let Ft=0;const yt=()=>{const Ct=$.now();if(this.ttlResolution>0){Ft=Ct;const xt=setTimeout(()=>Ft=0,this.ttlResolution);xt.unref&&xt.unref()}return Ct};this.getRemainingTTL=Ct=>{const xt=this.keyMap.get(Ct);return xt===void 0?0:this.ttls[xt]===0||this.starts[xt]===0?1/0:this.starts[xt]+this.ttls[xt]-(Ft||yt())},this.isStale=Ct=>this.ttls[Ct]!==0&&this.starts[Ct]!==0&&(Ft||yt())-this.starts[Ct]>this.ttls[Ct]}updateItemAge(Ft){}setItemTTL(Ft,yt,Ct){}isStale(Ft){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new Bt(this.max),this.removeItemSize=Ft=>{this.calculatedSize-=this.sizes[Ft],this.sizes[Ft]=0},this.requireSize=(Ft,yt,Ct,xt)=>{if(!ct(Ct)){if(!xt)throw new TypeError("invalid size value (must be positive integer)");if(typeof xt!="function")throw new TypeError("sizeCalculation must be a function");if(Ct=xt(yt,Ft),!ct(Ct))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}return Ct},this.addItemSize=(Ft,yt)=>{this.sizes[Ft]=yt;const Ct=this.maxSize-this.sizes[Ft];for(;this.calculatedSize>Ct;)this.evict(!0);this.calculatedSize+=this.sizes[Ft]}}removeItemSize(Ft){}addItemSize(Ft,yt){}requireSize(Ft,yt,Ct,xt){if(Ct||xt)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:Ft=this.allowStale}={}){if(this.size)for(let yt=this.tail;this.isValidIndex(yt)&&(!Ft&&this.isStale(yt)||(yield yt),yt!==this.head);)yt=this.prev[yt]}*rindexes({allowStale:Ft=this.allowStale}={}){if(this.size)for(let yt=this.head;this.isValidIndex(yt)&&(!Ft&&this.isStale(yt)||(yield yt),yt!==this.tail);)yt=this.next[yt]}isValidIndex(Ft){return this.keyMap.get(this.keyList[Ft])===Ft}*entries(){for(const Ft of this.indexes())yield[this.keyList[Ft],this.valList[Ft]]}*rentries(){for(const Ft of this.rindexes())yield[this.keyList[Ft],this.valList[Ft]]}*keys(){for(const Ft of this.indexes())yield this.keyList[Ft]}*rkeys(){for(const Ft of this.rindexes())yield this.keyList[Ft]}*values(){for(const Ft of this.indexes())yield this.valList[Ft]}*rvalues(){for(const Ft of this.rindexes())yield this.valList[Ft]}[Symbol.iterator](){return this.entries()}find(Ft,yt={}){for(const Ct of this.indexes())if(Ft(this.valList[Ct],this.keyList[Ct],this))return this.get(this.keyList[Ct],yt)}forEach(Ft,yt=this){for(const Ct of this.indexes())Ft.call(yt,this.valList[Ct],this.keyList[Ct],this)}rforEach(Ft,yt=this){for(const Ct of this.rindexes())Ft.call(yt,this.valList[Ct],this.keyList[Ct],this)}get prune(){return ut("prune","purgeStale"),this.purgeStale}purgeStale(){let Ft=!1;for(const yt of this.rindexes({allowStale:!0}))this.isStale(yt)&&(this.delete(this.keyList[yt]),Ft=!0);return Ft}dump(){const Ft=[];for(const yt of this.indexes({allowStale:!0})){const Ct=this.keyList[yt],xt=this.valList[yt],ht={value:this.isBackgroundFetch(xt)?xt.__staleWhileFetching:xt};if(this.ttls){ht.ttl=this.ttls[yt];const mt=$.now()-this.starts[yt];ht.start=Math.floor(Date.now()-mt)}this.sizes&&(ht.size=this.sizes[yt]),Ft.unshift([Ct,ht])}return Ft}load(Ft){this.clear();for(const[yt,Ct]of Ft){if(Ct.start){const xt=Date.now()-Ct.start;Ct.start=$.now()-xt}this.set(yt,Ct.value,Ct)}}dispose(Ft,yt,Ct){}set(Ft,yt,{ttl:Ct=this.ttl,start:xt,noDisposeOnSet:ht=this.noDisposeOnSet,size:mt=0,sizeCalculation:It=this.sizeCalculation,noUpdateTTL:vt=this.noUpdateTTL}={}){if(mt=this.requireSize(Ft,yt,mt,It),this.maxEntrySize&&mt>this.maxEntrySize)return this;let Tt=this.size===0?void 0:this.keyMap.get(Ft);if(Tt===void 0)Tt=this.newIndex(),this.keyList[Tt]=Ft,this.valList[Tt]=yt,this.keyMap.set(Ft,Tt),this.next[this.tail]=Tt,this.prev[Tt]=this.tail,this.tail=Tt,this.size++,this.addItemSize(Tt,mt),vt=!1;else{const Ot=this.valList[Tt];yt!==Ot&&(this.isBackgroundFetch(Ot)?Ot.__abortController.abort():ht||(this.dispose(Ot,Ft,"set"),this.disposeAfter&&this.disposed.push([Ot,Ft,"set"])),this.removeItemSize(Tt),this.valList[Tt]=yt,this.addItemSize(Tt,mt)),this.moveToTail(Tt)}if(Ct===0||this.ttl!==0||this.ttls||this.initializeTTLTracking(),vt||this.setItemTTL(Tt,Ct,xt),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 Ft=this.valList[this.head];return this.evict(!0),Ft}}evict(Ft){const yt=this.head,Ct=this.keyList[yt],xt=this.valList[yt];return this.isBackgroundFetch(xt)?xt.__abortController.abort():(this.dispose(xt,Ct,"evict"),this.disposeAfter&&this.disposed.push([xt,Ct,"evict"])),this.removeItemSize(yt),Ft&&(this.keyList[yt]=null,this.valList[yt]=null,this.free.push(yt)),this.head=this.next[yt],this.keyMap.delete(Ct),this.size--,yt}has(Ft,{updateAgeOnHas:yt=this.updateAgeOnHas}={}){const Ct=this.keyMap.get(Ft);return Ct!==void 0&&!this.isStale(Ct)&&(yt&&this.updateItemAge(Ct),!0)}peek(Ft,{allowStale:yt=this.allowStale}={}){const Ct=this.keyMap.get(Ft);if(Ct!==void 0&&(yt||!this.isStale(Ct))){const xt=this.valList[Ct];return this.isBackgroundFetch(xt)?xt.__staleWhileFetching:xt}}backgroundFetch(Ft,yt,Ct,xt){const ht=yt===void 0?void 0:this.valList[yt];if(this.isBackgroundFetch(ht))return ht;const mt=new _e,It={signal:mt.signal,options:Ct,context:xt},vt=new Promise(Tt=>Tt(this.fetchMethod(Ft,ht,It))).then(Tt=>(mt.signal.aborted||this.set(Ft,Tt,It.options),Tt),Tt=>{if(this.valList[yt]===vt&&(!Ct.noDeleteOnFetchRejection||vt.__staleWhileFetching===void 0?this.delete(Ft):this.valList[yt]=vt.__staleWhileFetching),vt.__returned===vt)throw Tt});return vt.__abortController=mt,vt.__staleWhileFetching=ht,vt.__returned=null,yt===void 0?(this.set(Ft,vt,It.options),yt=this.keyMap.get(Ft)):this.valList[yt]=vt,vt}isBackgroundFetch(Ft){return Ft&&typeof Ft=="object"&&typeof Ft.then=="function"&&Object.prototype.hasOwnProperty.call(Ft,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(Ft,"__returned")&&(Ft.__returned===Ft||Ft.__returned===null)}async fetch(Ft,{allowStale:yt=this.allowStale,updateAgeOnGet:Ct=this.updateAgeOnGet,noDeleteOnStaleGet:xt=this.noDeleteOnStaleGet,ttl:ht=this.ttl,noDisposeOnSet:mt=this.noDisposeOnSet,size:It=0,sizeCalculation:vt=this.sizeCalculation,noUpdateTTL:Tt=this.noUpdateTTL,noDeleteOnFetchRejection:Ot=this.noDeleteOnFetchRejection,fetchContext:_t=this.fetchContext,forceRefresh:Wt=!1}={}){if(!this.fetchMethod)return this.get(Ft,{allowStale:yt,updateAgeOnGet:Ct,noDeleteOnStaleGet:xt});const bt={allowStale:yt,updateAgeOnGet:Ct,noDeleteOnStaleGet:xt,ttl:ht,noDisposeOnSet:mt,size:It,sizeCalculation:vt,noUpdateTTL:Tt,noDeleteOnFetchRejection:Ot};let Jt=this.keyMap.get(Ft);if(Jt===void 0){const Zt=this.backgroundFetch(Ft,Jt,bt,_t);return Zt.__returned=Zt}{const Zt=this.valList[Jt];if(this.isBackgroundFetch(Zt))return yt&&Zt.__staleWhileFetching!==void 0?Zt.__staleWhileFetching:Zt.__returned=Zt;if(!Wt&&!this.isStale(Jt))return this.moveToTail(Jt),Ct&&this.updateItemAge(Jt),Zt;const Vt=this.backgroundFetch(Ft,Jt,bt,_t);return yt&&Vt.__staleWhileFetching!==void 0?Vt.__staleWhileFetching:Vt.__returned=Vt}}get(Ft,{allowStale:yt=this.allowStale,updateAgeOnGet:Ct=this.updateAgeOnGet,noDeleteOnStaleGet:xt=this.noDeleteOnStaleGet}={}){const ht=this.keyMap.get(Ft);if(ht!==void 0){const mt=this.valList[ht],It=this.isBackgroundFetch(mt);return this.isStale(ht)?It?yt?mt.__staleWhileFetching:void 0:(xt||this.delete(Ft),yt?mt:void 0):It?void 0:(this.moveToTail(ht),Ct&&this.updateItemAge(ht),mt)}}connect(Ft,yt){this.prev[yt]=Ft,this.next[Ft]=yt}moveToTail(Ft){Ft!==this.tail&&(Ft===this.head?this.head=this.next[Ft]:this.connect(this.prev[Ft],this.next[Ft]),this.connect(this.tail,Ft),this.tail=Ft)}get del(){return ut("del","delete"),this.delete}delete(Ft){let yt=!1;if(this.size!==0){const Ct=this.keyMap.get(Ft);if(Ct!==void 0)if(yt=!0,this.size===1)this.clear();else{this.removeItemSize(Ct);const xt=this.valList[Ct];this.isBackgroundFetch(xt)?xt.__abortController.abort():(this.dispose(xt,Ft,"delete"),this.disposeAfter&&this.disposed.push([xt,Ft,"delete"])),this.keyMap.delete(Ft),this.keyList[Ct]=null,this.valList[Ct]=null,Ct===this.tail?this.tail=this.prev[Ct]:Ct===this.head?this.head=this.next[Ct]:(this.next[this.prev[Ct]]=this.next[Ct],this.prev[this.next[Ct]]=this.prev[Ct]),this.size--,this.free.push(Ct)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return yt}clear(){for(const Ft of this.rindexes({allowStale:!0})){const yt=this.valList[Ft];if(this.isBackgroundFetch(yt))yt.__abortController.abort();else{const Ct=this.keyList[Ft];this.dispose(yt,Ct,"delete"),this.disposeAfter&&this.disposed.push([yt,Ct,"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 ut("reset","clear"),this.clear}get length(){return((Ft,yt)=>{const Ct="LRU_CACHE_PROPERTY_"+Ft;if(Ut(Ct)){const{prototype:xt}=gt,{get:ht}=Object.getOwnPropertyDescriptor(xt,Ft);st(Ct,Ft+" property","cache."+yt,ht)}})("length","size"),this.size}static get AbortController(){return _e}static get AbortSignal(){return nt}}o.exports=gt}).call(this,_(2))},function(o,s,_){var j=_(42).Colorizer;o.exports=function($){return j.addColors($.colors||$),$}},function(o,s,_){var j={};o.exports=j,j.themes={};var $=_(13),_e=j.styles=_(106),et=Object.defineProperties,tt=new RegExp(/[\r\n]+/g);j.supportsColor=_(107).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(pt){return(""+pt).replace(/\x1B\[\d+m/g,"")},j.stylize=function(pt,Bt){if(!j.enabled)return pt+"";var Qt=_e[Bt];return!Qt&&Bt in j?j[Bt](pt):Qt.open+pt+Qt.close};var nt=/[|\\{}()[\]^$+*?.]/g;function rt(pt){var Bt=function Qt(){return Ut.apply(Qt,arguments)};return Bt._styles=pt,Bt.__proto__=dt,Bt}var ot,ut=(ot={},_e.grey=_e.gray,Object.keys(_e).forEach(function(pt){_e[pt].closeRe=new RegExp(function(Bt){if(typeof Bt!="string")throw new TypeError("Expected a string");return Bt.replace(nt,"\\$&")}(_e[pt].close),"g"),ot[pt]={get:function(){return rt(this._styles.concat(pt))}}}),ot),dt=et(function(){},ut);function Ut(){var pt=Array.prototype.slice.call(arguments),Bt=pt.map(function(yt){return yt!=null&&yt.constructor===String?yt:$.inspect(yt)}).join(" ");if(!j.enabled||!Bt)return Bt;for(var Qt=Bt.indexOf(` -`)!=-1,gt=this._styles,ft=gt.length;ft--;){var Ft=_e[gt[ft]];Bt=Ft.open+Bt.replace(Ft.closeRe,Ft.open)+Ft.close,Qt&&(Bt=Bt.replace(tt,function(yt){return Ft.close+yt+Ft.open}))}return Bt}j.setTheme=function(pt){if(typeof pt!="string")for(var Bt in pt)(function(Qt){j[Qt]=function(gt){if(typeof pt[Qt]=="object"){var ft=gt;for(var Ft in pt[Qt])ft=j[pt[Qt][Ft]](ft);return ft}return j[pt[Qt]](gt)}})(Bt);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 st=function(pt,Bt){var Qt=Bt.split("");return(Qt=Qt.map(pt)).join("")};for(var ct in j.trap=_(109),j.zalgo=_(110),j.maps={},j.maps.america=_(111)(j),j.maps.zebra=_(112)(j),j.maps.rainbow=_(113)(j),j.maps.random=_(114)(j),j.maps)(function(pt){j[pt]=function(Bt){return st(j.maps[pt],Bt)}})(ct);et(j,function(){var pt={};return Object.keys(ut).forEach(function(Bt){pt[Bt]={get:function(){return rt([Bt])}}}),pt}())},function(o,s){o.exports=function(_){return _&&typeof _=="object"&&typeof _.copy=="function"&&typeof _.fill=="function"&&typeof _.readUInt8=="function"}},function(o,s){typeof Object.create=="function"?o.exports=function(_,j){_.super_=j,_.prototype=Object.create(j.prototype,{constructor:{value:_,enumerable:!1,writable:!0,configurable:!0}})}:o.exports=function(_,j){_.super_=j;var $=function(){};$.prototype=j.prototype,_.prototype=new $,_.prototype.constructor=_}},function(o,s){var _={};o.exports=_;var j={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(j).forEach(function($){var _e=j[$],et=_[$]=[];et.open="\x1B["+_e[0]+"m",et.close="\x1B["+_e[1]+"m"})},function(o,s,_){(function(j){var $=_(16),_e=_(108),et=j.env,tt=void 0;function nt(rt){return function(ot){return ot!==0&&{level:ot,hasBasic:!0,has256:ot>=2,has16m:ot>=3}}(function(ot){if(tt===!1)return 0;if(_e("color=16m")||_e("color=full")||_e("color=truecolor"))return 3;if(_e("color=256"))return 2;if(ot&&!ot.isTTY&&tt!==!0)return 0;var ut=tt?1:0;if(j.platform==="win32"){var dt=$.release().split(".");return Number(j.versions.node.split(".")[0])>=8&&Number(dt[0])>=10&&Number(dt[2])>=10586?Number(dt[2])>=14931?3:2:1}if("CI"in et)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(function(st){return st in et})||et.CI_NAME==="codeship"?1:ut;if("TEAMCITY_VERSION"in et)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(et.TEAMCITY_VERSION)?1:0;if("TERM_PROGRAM"in et){var Ut=parseInt((et.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(et.TERM_PROGRAM){case"iTerm.app":return Ut>=3?3:2;case"Hyper":return 3;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test("xterm")?2:/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test("xterm")||"COLORTERM"in et?1:ut}(rt))}_e("no-color")||_e("no-colors")||_e("color=false")?tt=!1:(_e("color")||_e("colors")||_e("color=true")||_e("color=always"))&&(tt=!0),"FORCE_COLOR"in et&&(tt=et.FORCE_COLOR.length===0||parseInt(et.FORCE_COLOR,10)!==0),o.exports={supportsColor:nt,stdout:nt(j.stdout),stderr:nt(j.stderr)}}).call(this,_(2))},function(o,s,_){(function(j){o.exports=function($,_e){var et=(_e=_e||j.argv).indexOf("--"),tt=/^-{1,2}/.test($)?"":"--",nt=_e.indexOf(tt+$);return nt!==-1&&(et===-1||nt0&&arguments[0]!==void 0?arguments[0]:{};j(this,ut),st.levels||(st.levels=nt.cli.levels),this.colorizer=new _e(st),this.padder=new et(st),this.options=st}var dt,Ut;return dt=ut,(Ut=[{key:"transform",value:function(st,ct){return this.colorizer.transform(this.padder.transform(st,ct),ct),st[rt]="".concat(st.level,":").concat(st.message),st}}])&&$(dt.prototype,Ut),Object.defineProperty(dt,"prototype",{writable:!1}),ut}();o.exports=function(ut){return new ot(ut)},o.exports.Format=ot},function(o,s,_){var j=_(8);function $(et){if(et.every(_e))return function(tt){for(var nt=tt,rt=0;rt1&&arguments[1]!==void 0?arguments[1]:{},nt="metadata";tt.key&&(nt=tt.key);var rt=[];return tt.fillExcept||tt.fillWith||(rt.push("level"),rt.push("message")),tt.fillExcept&&(rt=tt.fillExcept),rt.length>0?$(et,rt,nt):tt.fillWith?_e(et,tt.fillWith,nt):et})},function(o,s,_){var j=_(8),$=_(128);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})},function(o,s){var _=1e3,j=6e4,$=60*j,_e=24*$;function et(tt,nt,rt,ot){var ut=nt>=1.5*rt;return Math.round(tt/rt)+" "+ot+(ut?"s":"")}o.exports=function(tt,nt){nt=nt||{};var rt=typeof tt;if(rt==="string"&&tt.length>0)return function(ot){if(!((ot=String(ot)).length>100)){var ut=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(ot);if(ut){var dt=parseFloat(ut[1]);switch((ut[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*dt;case"weeks":case"week":case"w":return 6048e5*dt;case"days":case"day":case"d":return dt*_e;case"hours":case"hour":case"hrs":case"hr":case"h":return dt*$;case"minutes":case"minute":case"mins":case"min":case"m":return dt*j;case"seconds":case"second":case"secs":case"sec":case"s":return dt*_;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return dt;default:return}}}}(tt);if(rt==="number"&&isFinite(tt))return nt.long?function(ot){var ut=Math.abs(ot);return ut>=_e?et(ot,ut,_e,"day"):ut>=$?et(ot,ut,$,"hour"):ut>=j?et(ot,ut,j,"minute"):ut>=_?et(ot,ut,_,"second"):ot+" ms"}(tt):function(ot){var ut=Math.abs(ot);return ut>=_e?Math.round(ot/_e)+"d":ut>=$?Math.round(ot/$)+"h":ut>=j?Math.round(ot/j)+"m":ut>=_?Math.round(ot/_)+"s":ot+"ms"}(tt);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(tt))}},function(o,s,_){var j=_(13).inspect,$=_(8),_e=_(4),et=_e.LEVEL,tt=_e.MESSAGE,nt=_e.SPLAT;o.exports=$(function(rt){var ot=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ut=Object.assign({},rt);return delete ut[et],delete ut[tt],delete ut[nt],rt[tt]=j(ut,!1,ot.depth||null,ot.colorize),rt})},function(o,s,_){function j(et,tt){for(var nt=0;ntut.length)&&(dt=ut.length);for(var Ut=0,st=new Array(dt);Ut1?pt.splice(0):pt,gt=Qt.length;if(gt)for(var ft=0;ft1&&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})},function(o,s,_){_.r(s),_.d(s,"assign",function(){return nt}),_.d(s,"format",function(){return mt}),_.d(s,"parse",function(){return It}),_.d(s,"defaultI18n",function(){return dt}),_.d(s,"setGlobalDateI18n",function(){return st}),_.d(s,"setGlobalDateMasks",function(){return ht});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(Tt,Ot){for(var _t=[],Wt=0,bt=Tt.length;Wt-1?Wt:null}};function nt(Tt){for(var Ot=[],_t=1;_t3?0:(Tt-Tt%10!=10?1:0)*Tt%10]}},Ut=nt({},dt),st=function(Tt){return Ut=nt(Ut,Tt)},ct=function(Tt){return Tt.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},pt=function(Tt,Ot){for(Ot===void 0&&(Ot=2),Tt=String(Tt);Tt.length0?"-":"+")+pt(100*Math.floor(Math.abs(Ot)/60)+Math.abs(Ot)%60,4)},Z:function(Tt){var Ot=Tt.getTimezoneOffset();return(Ot>0?"-":"+")+pt(Math.floor(Math.abs(Ot)/60),2)+":"+pt(Math.abs(Ot)%60,2)}},Qt=function(Tt){return+Tt-1},gt=[null,"[1-9]\\d?"],ft=[null,$],Ft=["isPm",$,function(Tt,Ot){var _t=Tt.toLowerCase();return _t===Ot.amPm[0]?0:_t===Ot.amPm[1]?1:null}],yt=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(Tt){var Ot=(Tt+"").match(/([+-]|\d\d)/gi);if(Ot){var _t=60*+Ot[1]+parseInt(Ot[2],10);return Ot[0]==="+"?_t:-_t}return 0}],Ct={D:["day","[1-9]\\d?"],DD:["day","\\d\\d"],Do:["day","[1-9]\\d?"+$,function(Tt){return parseInt(Tt,10)}],M:["month","[1-9]\\d?",Qt],MM:["month","\\d\\d",Qt],YY:["year","\\d\\d",function(Tt){var Ot=+(""+new Date().getFullYear()).substr(0,2);return+(""+(+Tt>68?Ot-1:Ot)+Tt)}],h:["hour","[1-9]\\d?",void 0,"isPm"],hh:["hour","\\d\\d",void 0,"isPm"],H:["hour","[1-9]\\d?"],HH:["hour","\\d\\d"],m:["minute","[1-9]\\d?"],mm:["minute","\\d\\d"],s:["second","[1-9]\\d?"],ss:["second","\\d\\d"],YYYY:["year","\\d{4}"],S:["millisecond","\\d",function(Tt){return 100*+Tt}],SS:["millisecond","\\d\\d",function(Tt){return 10*+Tt}],SSS:["millisecond","\\d{3}"],d:gt,dd:gt,ddd:ft,dddd:ft,MMM:["month",$,tt("monthNamesShort")],MMMM:["month",$,tt("monthNames")],a:Ft,A:Ft,ZZ:yt,Z:yt},xt={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"},ht=function(Tt){return nt(xt,Tt)},mt=function(Tt,Ot,_t){if(Ot===void 0&&(Ot=xt.default),_t===void 0&&(_t={}),typeof Tt=="number"&&(Tt=new Date(Tt)),Object.prototype.toString.call(Tt)!=="[object Date]"||isNaN(Tt.getTime()))throw new Error("Invalid Date pass to format");var Wt=[];Ot=(Ot=xt[Ot]||Ot).replace(_e,function(Jt,Zt){return Wt.push(Zt),"@@@"});var bt=nt(nt({},Ut),_t);return(Ot=Ot.replace(j,function(Jt){return Bt[Jt](Tt,bt)})).replace(/@@@/g,function(){return Wt.shift()})};function It(Tt,Ot,_t){if(_t===void 0&&(_t={}),typeof Ot!="string")throw new Error("Invalid format in fecha parse");if(Ot=xt[Ot]||Ot,Tt.length>1e3)return null;var Wt={year:new Date().getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},bt=[],Jt=[],Zt=Ot.replace(_e,function(Ht,on){return Jt.push(ct(on)),"@@@"}),Vt={},jt={};Zt=ct(Zt).replace(j,function(Ht){var on=Ct[Ht],sn=on[0],gn=on[1],Cn=on[3];if(Vt[sn])throw new Error("Invalid format. "+sn+" specified twice in format");return Vt[sn]=!0,Cn&&(jt[Cn]=!0),bt.push(on),"("+gn+")"}),Object.keys(jt).forEach(function(Ht){if(!Vt[Ht])throw new Error("Invalid format. "+Ht+" is required in specified format")}),Zt=Zt.replace(/@@@/g,function(){return Jt.shift()});var zt=Tt.match(new RegExp(Zt,"i"));if(!zt)return null;for(var $t=nt(nt({},Ut),_t),nn=1;nn","maintainers":["David Hyde "],"repository":{"type":"git","url":"https://github.com/winstonjs/winston.git"},"keywords":["winston","logger","logging","logs","sysadmin","bunyan","pino","loglevel","tools","json","stream"],"dependencies":{"@dabh/diagnostics":"^2.0.2","@colors/colors":"1.5.0","async":"^3.2.3","is-stream":"^2.0.0","logform":"^2.4.0","one-time":"^1.0.0","readable-stream":"^3.4.0","safe-stable-stringify":"^2.3.1","stack-trace":"0.0.x","triple-beam":"^1.3.0","winston-transport":"^4.5.0"},"devDependencies":{"@babel/cli":"^7.17.0","@babel/core":"^7.17.2","@babel/preset-env":"^7.16.7","@dabh/eslint-config-populist":"^5.0.0","@types/node":"^18.0.0","abstract-winston-transport":"^0.5.1","assume":"^2.2.0","cross-spawn-async":"^2.2.5","eslint":"^8.9.0","hock":"^1.4.1","mocha":"8.1.3","nyc":"^15.1.0","rimraf":"^3.0.2","split2":"^4.1.0","std-mocks":"^1.0.1","through2":"^4.0.2","winston-compat":"^0.1.5"},"main":"./lib/winston.js","browser":"./dist/winston","types":"./index.d.ts","scripts":{"lint":"eslint lib/*.js lib/winston/*.js lib/winston/**/*.js --resolve-plugins-relative-to ./node_modules/@dabh/eslint-config-populist","test":"mocha","test:coverage":"nyc npm run test:unit","test:unit":"mocha test/unit","test:integration":"mocha test/integration","build":"rimraf dist && babel lib -d dist","prepublishOnly":"npm run build"},"engines":{"node":">= 12.0.0"},"license":"MIT"}')},function(o,s,_){Object.defineProperty(s,"Console",{configurable:!0,enumerable:!0,get:function(){return _(138)}}),Object.defineProperty(s,"File",{configurable:!0,enumerable:!0,get:function(){return _(152)}}),Object.defineProperty(s,"Http",{configurable:!0,enumerable:!0,get:function(){return _(194)}}),Object.defineProperty(s,"Stream",{configurable:!0,enumerable:!0,get:function(){return _(206)}})},function(o,s,_){(function(j){function $(pt){return($=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Bt){return typeof Bt}:function(Bt){return Bt&&typeof Symbol=="function"&&Bt.constructor===Symbol&&Bt!==Symbol.prototype?"symbol":typeof Bt})(pt)}function _e(pt,Bt){if(!(pt instanceof Bt))throw new TypeError("Cannot call a class as a function")}function et(pt,Bt){for(var Qt=0;Qt"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 Qt,gt=ot(pt);if(Bt){var ft=ot(this).constructor;Qt=Reflect.construct(gt,arguments,ft)}else Qt=gt.apply(this,arguments);return rt(this,Qt)}}function rt(pt,Bt){if(Bt&&($(Bt)==="object"||typeof Bt=="function"))return Bt;if(Bt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Qt){if(Qt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Qt}(pt)}function ot(pt){return(ot=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Bt){return Bt.__proto__||Object.getPrototypeOf(Bt)})(pt)}var ut=_(16),dt=_(4),Ut=dt.LEVEL,st=dt.MESSAGE,ct=_(14);o.exports=function(pt){(function(Ft,yt){if(typeof yt!="function"&&yt!==null)throw new TypeError("Super expression must either be null or a function");Ft.prototype=Object.create(yt&&yt.prototype,{constructor:{value:Ft,writable:!0,configurable:!0}}),Object.defineProperty(Ft,"prototype",{writable:!1}),yt&&tt(Ft,yt)})(ft,pt);var Bt,Qt,gt=nt(ft);function ft(){var Ft,yt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return _e(this,ft),(Ft=gt.call(this,yt)).name=yt.name||"console",Ft.stderrLevels=Ft._stringArrayToSet(yt.stderrLevels),Ft.consoleWarnLevels=Ft._stringArrayToSet(yt.consoleWarnLevels),Ft.eol=typeof yt.eol=="string"?yt.eol:ut.EOL,Ft.setMaxListeners(30),Ft}return Bt=ft,(Qt=[{key:"log",value:function(Ft,yt){var Ct=this;return j(function(){return Ct.emit("logged",Ft)}),this.stderrLevels[Ft[Ut]]?(console._stderr?console._stderr.write("".concat(Ft[st]).concat(this.eol)):console.error(Ft[st]),void(yt&&yt())):this.consoleWarnLevels[Ft[Ut]]?(console._stderr?console._stderr.write("".concat(Ft[st]).concat(this.eol)):console.warn(Ft[st]),void(yt&&yt())):(console._stdout?console._stdout.write("".concat(Ft[st]).concat(this.eol)):console.log(Ft[st]),void(yt&&yt()))}},{key:"_stringArrayToSet",value:function(Ft,yt){if(!Ft)return{};if(yt=yt||"Cannot make set from type other than Array of string elements",!Array.isArray(Ft))throw new Error(yt);return Ft.reduce(function(Ct,xt){if(typeof xt!="string")throw new Error(yt);return Ct[xt]=!0,Ct},{})}}])&&et(Bt.prototype,Qt),Object.defineProperty(Bt,"prototype",{writable:!1}),ft}(ct)}).call(this,_(19).setImmediate)},function(o,s,_){(function(j,$){(function(_e,et){if(!_e.setImmediate){var tt,nt,rt,ot,ut,dt=1,Ut={},st=!1,ct=_e.document,pt=Object.getPrototypeOf&&Object.getPrototypeOf(_e);pt=pt&&pt.setTimeout?pt:_e,{}.toString.call(_e.process)==="[object process]"?tt=function(gt){$.nextTick(function(){Qt(gt)})}:function(){if(_e.postMessage&&!_e.importScripts){var gt=!0,ft=_e.onmessage;return _e.onmessage=function(){gt=!1},_e.postMessage("","*"),_e.onmessage=ft,gt}}()?(ot="setImmediate$"+Math.random()+"$",ut=function(gt){gt.source===_e&&typeof gt.data=="string"&>.data.indexOf(ot)===0&&Qt(+gt.data.slice(ot.length))},_e.addEventListener?_e.addEventListener("message",ut,!1):_e.attachEvent("onmessage",ut),tt=function(gt){_e.postMessage(ot+gt,"*")}):_e.MessageChannel?((rt=new MessageChannel).port1.onmessage=function(gt){Qt(gt.data)},tt=function(gt){rt.port2.postMessage(gt)}):ct&&"onreadystatechange"in ct.createElement("script")?(nt=ct.documentElement,tt=function(gt){var ft=ct.createElement("script");ft.onreadystatechange=function(){Qt(gt),ft.onreadystatechange=null,nt.removeChild(ft),ft=null},nt.appendChild(ft)}):tt=function(gt){setTimeout(Qt,0,gt)},pt.setImmediate=function(gt){typeof gt!="function"&&(gt=new Function(""+gt));for(var ft=new Array(arguments.length-1),Ft=0;Ft"u"?j===void 0?this:j:self)}).call(this,_(6),_(2))},function(o,s,_){s.byteLength=function(ut){var dt=rt(ut),Ut=dt[0],st=dt[1];return 3*(Ut+st)/4-st},s.toByteArray=function(ut){var dt,Ut,st=rt(ut),ct=st[0],pt=st[1],Bt=new _e(function(ft,Ft,yt){return 3*(Ft+yt)/4-yt}(0,ct,pt)),Qt=0,gt=pt>0?ct-4:ct;for(Ut=0;Ut>16&255,Bt[Qt++]=dt>>8&255,Bt[Qt++]=255&dt;return pt===2&&(dt=$[ut.charCodeAt(Ut)]<<2|$[ut.charCodeAt(Ut+1)]>>4,Bt[Qt++]=255&dt),pt===1&&(dt=$[ut.charCodeAt(Ut)]<<10|$[ut.charCodeAt(Ut+1)]<<4|$[ut.charCodeAt(Ut+2)]>>2,Bt[Qt++]=dt>>8&255,Bt[Qt++]=255&dt),Bt},s.fromByteArray=function(ut){for(var dt,Ut=ut.length,st=Ut%3,ct=[],pt=0,Bt=Ut-st;ptBt?Bt:pt+16383));return st===1?(dt=ut[Ut-1],ct.push(j[dt>>2]+j[dt<<4&63]+"==")):st===2&&(dt=(ut[Ut-2]<<8)+ut[Ut-1],ct.push(j[dt>>10]+j[dt>>4&63]+j[dt<<2&63]+"=")),ct.join("")};for(var j=[],$=[],_e=typeof Uint8Array<"u"?Uint8Array:Array,et="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",tt=0,nt=et.length;tt0)throw new Error("Invalid string. Length must be a multiple of 4");var Ut=ut.indexOf("=");return Ut===-1&&(Ut=dt),[Ut,Ut===dt?0:4-Ut%4]}function ot(ut,dt,Ut){for(var st,ct,pt=[],Bt=dt;Bt>18&63]+j[ct>>12&63]+j[ct>>6&63]+j[63&ct]);return pt.join("")}$["-".charCodeAt(0)]=62,$["_".charCodeAt(0)]=63},function(o,s){s.read=function(_,j,$,_e,et){var tt,nt,rt=8*et-_e-1,ot=(1<>1,dt=-7,Ut=$?et-1:0,st=$?-1:1,ct=_[j+Ut];for(Ut+=st,tt=ct&(1<<-dt)-1,ct>>=-dt,dt+=rt;dt>0;tt=256*tt+_[j+Ut],Ut+=st,dt-=8);for(nt=tt&(1<<-dt)-1,tt>>=-dt,dt+=_e;dt>0;nt=256*nt+_[j+Ut],Ut+=st,dt-=8);if(tt===0)tt=1-ut;else{if(tt===ot)return nt?NaN:1/0*(ct?-1:1);nt+=Math.pow(2,_e),tt-=ut}return(ct?-1:1)*nt*Math.pow(2,tt-_e)},s.write=function(_,j,$,_e,et,tt){var nt,rt,ot,ut=8*tt-et-1,dt=(1<>1,st=et===23?Math.pow(2,-24)-Math.pow(2,-77):0,ct=_e?0:tt-1,pt=_e?1:-1,Bt=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=dt):(nt=Math.floor(Math.log(j)/Math.LN2),j*(ot=Math.pow(2,-nt))<1&&(nt--,ot*=2),(j+=nt+Ut>=1?st/ot:st*Math.pow(2,1-Ut))*ot>=2&&(nt++,ot/=2),nt+Ut>=dt?(rt=0,nt=dt):nt+Ut>=1?(rt=(j*ot-1)*Math.pow(2,et),nt+=Ut):(rt=j*Math.pow(2,Ut-1)*Math.pow(2,et),nt=0));et>=8;_[$+ct]=255&rt,ct+=pt,rt/=256,et-=8);for(nt=nt<0;_[$+ct]=255&nt,ct+=pt,nt/=256,ut-=8);_[$+ct-pt]|=128*Bt}},function(o,s){var _={}.toString;o.exports=Array.isArray||function(j){return _.call(j)=="[object Array]"}},function(o,s,_){(function(j,$){var _e;o.exports=mt,mt.ReadableState=ht,_(20).EventEmitter;var et=function(Dt,wt){return Dt.listeners(wt).length},tt=_(62),nt=_(5).Buffer,rt=(j!==void 0?j:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},ot,ut=_(144);ot=ut&&ut.debuglog?ut.debuglog("stream"):function(){};var dt,Ut,st,ct=_(145),pt=_(63),Bt=_(64).getHighWaterMark,Qt=_(35).codes,gt=Qt.ERR_INVALID_ARG_TYPE,ft=Qt.ERR_STREAM_PUSH_AFTER_EOF,Ft=Qt.ERR_METHOD_NOT_IMPLEMENTED,yt=Qt.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;_(7)(mt,tt);var Ct=pt.errorOrDestroy,xt=["error","close","destroy","pause","resume"];function ht(Dt,wt,Et){_e=_e||_(36),Dt=Dt||{},typeof Et!="boolean"&&(Et=wt instanceof _e),this.objectMode=!!Dt.objectMode,Et&&(this.objectMode=this.objectMode||!!Dt.readableObjectMode),this.highWaterMark=Bt(this,Dt,"readableHighWaterMark",Et),this.buffer=new ct,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=Dt.emitClose!==!1,this.autoDestroy=!!Dt.autoDestroy,this.destroyed=!1,this.defaultEncoding=Dt.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,Dt.encoding&&(dt||(dt=_(21).StringDecoder),this.decoder=new dt(Dt.encoding),this.encoding=Dt.encoding)}function mt(Dt){if(_e=_e||_(36),!(this instanceof mt))return new mt(Dt);var wt=this instanceof _e;this._readableState=new ht(Dt,this,wt),this.readable=!0,Dt&&(typeof Dt.read=="function"&&(this._read=Dt.read),typeof Dt.destroy=="function"&&(this._destroy=Dt.destroy)),tt.call(this)}function It(Dt,wt,Et,kt,Pt){ot("readableAddChunk",wt);var Kt,Ht=Dt._readableState;if(wt===null)Ht.reading=!1,function(on,sn){if(ot("onEofChunk"),!sn.ended){if(sn.decoder){var gn=sn.decoder.end();gn&&gn.length&&(sn.buffer.push(gn),sn.length+=sn.objectMode?1:gn.length)}sn.ended=!0,sn.sync?Ot(on):(sn.needReadable=!1,sn.emittedReadable||(sn.emittedReadable=!0,_t(on)))}}(Dt,Ht);else if(Pt||(Kt=function(on,sn){var gn;Cn=sn,nt.isBuffer(Cn)||Cn instanceof rt||typeof sn=="string"||sn===void 0||on.objectMode||(gn=new gt("chunk",["string","Buffer","Uint8Array"],sn));var Cn;return gn}(Ht,wt)),Kt)Ct(Dt,Kt);else if(Ht.objectMode||wt&&wt.length>0)if(typeof wt=="string"||Ht.objectMode||Object.getPrototypeOf(wt)===nt.prototype||(wt=function(on){return nt.from(on)}(wt)),kt)Ht.endEmitted?Ct(Dt,new yt):vt(Dt,Ht,wt,!0);else if(Ht.ended)Ct(Dt,new ft);else{if(Ht.destroyed)return!1;Ht.reading=!1,Ht.decoder&&!Et?(wt=Ht.decoder.write(wt),Ht.objectMode||wt.length!==0?vt(Dt,Ht,wt,!1):Wt(Dt,Ht)):vt(Dt,Ht,wt,!1)}else kt||(Ht.reading=!1,Wt(Dt,Ht));return!Ht.ended&&(Ht.lengthwt.highWaterMark&&(wt.highWaterMark=function(Et){return Et>=1073741824?Et=1073741824:(Et--,Et|=Et>>>1,Et|=Et>>>2,Et|=Et>>>4,Et|=Et>>>8,Et|=Et>>>16,Et++),Et}(Dt)),Dt<=wt.length?Dt:wt.ended?wt.length:(wt.needReadable=!0,0))}function Ot(Dt){var wt=Dt._readableState;ot("emitReadable",wt.needReadable,wt.emittedReadable),wt.needReadable=!1,wt.emittedReadable||(ot("emitReadable",wt.flowing),wt.emittedReadable=!0,$.nextTick(_t,Dt))}function _t(Dt){var wt=Dt._readableState;ot("emitReadable_",wt.destroyed,wt.length,wt.ended),wt.destroyed||!wt.length&&!wt.ended||(Dt.emit("readable"),wt.emittedReadable=!1),wt.needReadable=!wt.flowing&&!wt.ended&&wt.length<=wt.highWaterMark,jt(Dt)}function Wt(Dt,wt){wt.readingMore||(wt.readingMore=!0,$.nextTick(bt,Dt,wt))}function bt(Dt,wt){for(;!wt.reading&&!wt.ended&&(wt.length0,wt.resumeScheduled&&!wt.paused?wt.flowing=!0:Dt.listenerCount("data")>0&&Dt.resume()}function Zt(Dt){ot("readable nexttick read 0"),Dt.read(0)}function Vt(Dt,wt){ot("resume",wt.reading),wt.reading||Dt.read(0),wt.resumeScheduled=!1,Dt.emit("resume"),jt(Dt),wt.flowing&&!wt.reading&&Dt.read(0)}function jt(Dt){var wt=Dt._readableState;for(ot("flow",wt.flowing);wt.flowing&&Dt.read()!==null;);}function zt(Dt,wt){return wt.length===0?null:(wt.objectMode?Et=wt.buffer.shift():!Dt||Dt>=wt.length?(Et=wt.decoder?wt.buffer.join(""):wt.buffer.length===1?wt.buffer.first():wt.buffer.concat(wt.length),wt.buffer.clear()):Et=wt.buffer.consume(Dt,wt.decoder),Et);var Et}function $t(Dt){var wt=Dt._readableState;ot("endReadable",wt.endEmitted),wt.endEmitted||(wt.ended=!0,$.nextTick(nn,wt,Dt))}function nn(Dt,wt){if(ot("endReadableNT",Dt.endEmitted,Dt.length),!Dt.endEmitted&&Dt.length===0&&(Dt.endEmitted=!0,wt.readable=!1,wt.emit("end"),Dt.autoDestroy)){var Et=wt._writableState;(!Et||Et.autoDestroy&&Et.finished)&&wt.destroy()}}function rn(Dt,wt){for(var Et=0,kt=Dt.length;Et=wt.highWaterMark:wt.length>0)||wt.ended))return ot("read: emitReadable",wt.length,wt.ended),wt.length===0&&wt.ended?$t(this):Ot(this),null;if((Dt=Tt(Dt,wt))===0&&wt.ended)return wt.length===0&&$t(this),null;var kt,Pt=wt.needReadable;return ot("need readable",Pt),(wt.length===0||wt.length-Dt0?zt(Dt,wt):null)===null?(wt.needReadable=wt.length<=wt.highWaterMark,Dt=0):(wt.length-=Dt,wt.awaitDrain=0),wt.length===0&&(wt.ended||(wt.needReadable=!0),Et!==Dt&&wt.ended&&$t(this)),kt!==null&&this.emit("data",kt),kt},mt.prototype._read=function(Dt){Ct(this,new Ft("_read()"))},mt.prototype.pipe=function(Dt,wt){var Et=this,kt=this._readableState;switch(kt.pipesCount){case 0:kt.pipes=Dt;break;case 1:kt.pipes=[kt.pipes,Dt];break;default:kt.pipes.push(Dt)}kt.pipesCount+=1,ot("pipe count=%d opts=%j",kt.pipesCount,wt);var Pt=(!wt||wt.end!==!1)&&Dt!==$.stdout&&Dt!==$.stderr?Ht:rr;function Kt(An,Dn){ot("onunpipe"),An===Et&&Dn&&Dn.hasUnpiped===!1&&(Dn.hasUnpiped=!0,ot("cleanup"),Dt.removeListener("close",In),Dt.removeListener("finish",Mn),Dt.removeListener("drain",on),Dt.removeListener("error",Cn),Dt.removeListener("unpipe",Kt),Et.removeListener("end",Ht),Et.removeListener("end",rr),Et.removeListener("data",gn),sn=!0,!kt.awaitDrain||Dt._writableState&&!Dt._writableState.needDrain||on())}function Ht(){ot("onend"),Dt.end()}kt.endEmitted?$.nextTick(Pt):Et.once("end",Pt),Dt.on("unpipe",Kt);var on=function(An){return function(){var Dn=An._readableState;ot("pipeOnDrain",Dn.awaitDrain),Dn.awaitDrain&&Dn.awaitDrain--,Dn.awaitDrain===0&&et(An,"data")&&(Dn.flowing=!0,jt(An))}}(Et);Dt.on("drain",on);var sn=!1;function gn(An){ot("ondata");var Dn=Dt.write(An);ot("dest.write",Dn),Dn===!1&&((kt.pipesCount===1&&kt.pipes===Dt||kt.pipesCount>1&&rn(kt.pipes,Dt)!==-1)&&!sn&&(ot("false write response, pause",kt.awaitDrain),kt.awaitDrain++),Et.pause())}function Cn(An){ot("onerror",An),rr(),Dt.removeListener("error",Cn),et(Dt,"error")===0&&Ct(Dt,An)}function In(){Dt.removeListener("finish",Mn),rr()}function Mn(){ot("onfinish"),Dt.removeListener("close",In),rr()}function rr(){ot("unpipe"),Et.unpipe(Dt)}return Et.on("data",gn),function(An,Dn,Hn){if(typeof An.prependListener=="function")return An.prependListener(Dn,Hn);An._events&&An._events[Dn]?Array.isArray(An._events[Dn])?An._events[Dn].unshift(Hn):An._events[Dn]=[Hn,An._events[Dn]]:An.on(Dn,Hn)}(Dt,"error",Cn),Dt.once("close",In),Dt.once("finish",Mn),Dt.emit("pipe",Et),kt.flowing||(ot("pipe resume"),Et.resume()),Dt},mt.prototype.unpipe=function(Dt){var wt=this._readableState,Et={hasUnpiped:!1};if(wt.pipesCount===0)return this;if(wt.pipesCount===1)return Dt&&Dt!==wt.pipes||(Dt||(Dt=wt.pipes),wt.pipes=null,wt.pipesCount=0,wt.flowing=!1,Dt&&Dt.emit("unpipe",this,Et)),this;if(!Dt){var kt=wt.pipes,Pt=wt.pipesCount;wt.pipes=null,wt.pipesCount=0,wt.flowing=!1;for(var Kt=0;Kt0,kt.flowing!==!1&&this.resume()):Dt==="readable"&&(kt.endEmitted||kt.readableListening||(kt.readableListening=kt.needReadable=!0,kt.flowing=!1,kt.emittedReadable=!1,ot("on readable",kt.length,kt.reading),kt.length?Ot(this):kt.reading||$.nextTick(Zt,this))),Et},mt.prototype.addListener=mt.prototype.on,mt.prototype.removeListener=function(Dt,wt){var Et=tt.prototype.removeListener.call(this,Dt,wt);return Dt==="readable"&&$.nextTick(Jt,this),Et},mt.prototype.removeAllListeners=function(Dt){var wt=tt.prototype.removeAllListeners.apply(this,arguments);return Dt!=="readable"&&Dt!==void 0||$.nextTick(Jt,this),wt},mt.prototype.resume=function(){var Dt=this._readableState;return Dt.flowing||(ot("resume"),Dt.flowing=!Dt.readableListening,function(wt,Et){Et.resumeScheduled||(Et.resumeScheduled=!0,$.nextTick(Vt,wt,Et))}(this,Dt)),Dt.paused=!1,this},mt.prototype.pause=function(){return ot("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(ot("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},mt.prototype.wrap=function(Dt){var wt=this,Et=this._readableState,kt=!1;for(var Pt in Dt.on("end",function(){if(ot("wrapped end"),Et.decoder&&!Et.ended){var Ht=Et.decoder.end();Ht&&Ht.length&&wt.push(Ht)}wt.push(null)}),Dt.on("data",function(Ht){ot("wrapped data"),Et.decoder&&(Ht=Et.decoder.write(Ht)),Et.objectMode&&Ht==null||(Et.objectMode||Ht&&Ht.length)&&(wt.push(Ht)||(kt=!0,Dt.pause()))}),Dt)this[Pt]===void 0&&typeof Dt[Pt]=="function"&&(this[Pt]=function(Ht){return function(){return Dt[Ht].apply(Dt,arguments)}}(Pt));for(var Kt=0;Kt0?this.tail.next=ct:this.head=ct,this.tail=ct,++this.length}},{key:"unshift",value:function(st){var ct={data:st,next:this.head};this.length===0&&(this.tail=ct),this.head=ct,++this.length}},{key:"shift",value:function(){if(this.length!==0){var st=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,st}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(st){if(this.length===0)return"";for(var ct=this.head,pt=""+ct.data;ct=ct.next;)pt+=st+ct.data;return pt}},{key:"concat",value:function(st){if(this.length===0)return nt.alloc(0);for(var ct,pt,Bt,Qt=nt.allocUnsafe(st>>>0),gt=this.head,ft=0;gt;)ct=gt.data,pt=Qt,Bt=ft,nt.prototype.copy.call(ct,pt,Bt),ft+=gt.data.length,gt=gt.next;return Qt}},{key:"consume",value:function(st,ct){var pt;return stQt.length?Qt.length:st;if(gt===Qt.length?Bt+=Qt:Bt+=Qt.slice(0,st),(st-=gt)==0){gt===Qt.length?(++pt,ct.next?this.head=ct.next:this.head=this.tail=null):(this.head=ct,ct.data=Qt.slice(gt));break}++pt}return this.length-=pt,Bt}},{key:"_getBuffer",value:function(st){var ct=nt.allocUnsafe(st),pt=this.head,Bt=1;for(pt.data.copy(ct),st-=pt.data.length;pt=pt.next;){var Qt=pt.data,gt=st>Qt.length?Qt.length:st;if(Qt.copy(ct,ct.length-st,0,gt),(st-=gt)==0){gt===Qt.length?(++Bt,pt.next?this.head=pt.next:this.head=this.tail=null):(this.head=pt,pt.data=Qt.slice(gt));break}++Bt}return this.length-=Bt,ct}},{key:ot,value:function(st,ct){return rt(this,$($({},ct),{},{depth:0,customInspect:!1}))}}])&&et(dt.prototype,Ut),Object.defineProperty(dt,"prototype",{writable:!1}),ut}()},function(o,s){},function(o,s,_){var j=_(5),$=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),_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 ot=$(tt);return nt!==void 0?typeof rt=="string"?ot.fill(nt,rt):ot.fill(nt):ot.fill(0),ot},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)}},function(o,s,_){(function(j){var $;function _e(gt,ft,Ft){return(ft=function(yt){var Ct=function(xt,ht){if(typeof xt!="object"||xt===null)return xt;var mt=xt[Symbol.toPrimitive];if(mt!==void 0){var It=mt.call(xt,ht||"default");if(typeof It!="object")return It;throw new TypeError("@@toPrimitive must return a primitive value.")}return(ht==="string"?String:Number)(xt)}(yt,"string");return typeof Ct=="symbol"?Ct:String(Ct)}(ft))in gt?Object.defineProperty(gt,ft,{value:Ft,enumerable:!0,configurable:!0,writable:!0}):gt[ft]=Ft,gt}var et=_(149),tt=Symbol("lastResolve"),nt=Symbol("lastReject"),rt=Symbol("error"),ot=Symbol("ended"),ut=Symbol("lastPromise"),dt=Symbol("handlePromise"),Ut=Symbol("stream");function st(gt,ft){return{value:gt,done:ft}}function ct(gt){var ft=gt[tt];if(ft!==null){var Ft=gt[Ut].read();Ft!==null&&(gt[ut]=null,gt[tt]=null,gt[nt]=null,ft(st(Ft,!1)))}}function pt(gt){j.nextTick(ct,gt)}var Bt=Object.getPrototypeOf(function(){}),Qt=Object.setPrototypeOf((_e($={get stream(){return this[Ut]},next:function(){var gt=this,ft=this[rt];if(ft!==null)return Promise.reject(ft);if(this[ot])return Promise.resolve(st(void 0,!0));if(this[Ut].destroyed)return new Promise(function(xt,ht){j.nextTick(function(){gt[rt]?ht(gt[rt]):xt(st(void 0,!0))})});var Ft,yt=this[ut];if(yt)Ft=new Promise(function(xt,ht){return function(mt,It){xt.then(function(){ht[ot]?mt(st(void 0,!0)):ht[dt](mt,It)},It)}}(yt,this));else{var Ct=this[Ut].read();if(Ct!==null)return Promise.resolve(st(Ct,!1));Ft=new Promise(this[dt])}return this[ut]=Ft,Ft}},Symbol.asyncIterator,function(){return this}),_e($,"return",function(){var gt=this;return new Promise(function(ft,Ft){gt[Ut].destroy(null,function(yt){yt?Ft(yt):ft(st(void 0,!0))})})}),$),Bt);o.exports=function(gt){var ft,Ft=Object.create(Qt,(_e(ft={},Ut,{value:gt,writable:!0}),_e(ft,tt,{value:null,writable:!0}),_e(ft,nt,{value:null,writable:!0}),_e(ft,rt,{value:null,writable:!0}),_e(ft,ot,{value:gt._readableState.endEmitted,writable:!0}),_e(ft,dt,{value:function(yt,Ct){var xt=Ft[Ut].read();xt?(Ft[ut]=null,Ft[tt]=null,Ft[nt]=null,yt(st(xt,!1))):(Ft[tt]=yt,Ft[nt]=Ct)},writable:!0}),ft));return Ft[ut]=null,et(gt,function(yt){if(yt&&yt.code!=="ERR_STREAM_PREMATURE_CLOSE"){var Ct=Ft[nt];return Ct!==null&&(Ft[ut]=null,Ft[tt]=null,Ft[nt]=null,Ct(yt)),void(Ft[rt]=yt)}var xt=Ft[tt];xt!==null&&(Ft[ut]=null,Ft[tt]=null,Ft[nt]=null,xt(st(void 0,!0))),Ft[ot]=!0}),gt.on("readable",pt.bind(null,Ft)),Ft}}).call(this,_(2))},function(o,s,_){var j=_(35).codes.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(gt){var ft=!1;return function(){if(!ft){ft=!0;for(var Ft=arguments.length,yt=new Array(Ft),Ct=0;Ct0&&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"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 It,vt=dt(ht);if(mt){var Tt=dt(this).constructor;It=Reflect.construct(vt,arguments,Tt)}else It=vt.apply(this,arguments);return ot(this,It)}}function ot(ht,mt){if(mt&&(_e(mt)==="object"||typeof mt=="function"))return mt;if(mt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return ut(ht)}function ut(ht){if(ht===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return ht}function dt(ht){return(dt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(mt){return mt.__proto__||Object.getPrototypeOf(mt)})(ht)}var Ut=_(65),st=_(55),ct=_(153),pt=_(163),Bt=_(4).MESSAGE,Qt=_(33),gt=Qt.Stream,ft=Qt.PassThrough,Ft=_(14),yt=_(39)("winston:file"),Ct=_(16),xt=_(193);o.exports=function(ht){(function(Ot,_t){if(typeof _t!="function"&&_t!==null)throw new TypeError("Super expression must either be null or a function");Ot.prototype=Object.create(_t&&_t.prototype,{constructor:{value:Ot,writable:!0,configurable:!0}}),Object.defineProperty(Ot,"prototype",{writable:!1}),_t&&nt(Ot,_t)})(Tt,ht);var mt,It,vt=rt(Tt);function Tt(){var Ot,_t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};function Wt(bt){for(var Jt=arguments.length,Zt=new Array(Jt>1?Jt-1:0),Vt=1;Vt1&&arguments[1]!==void 0?arguments[1]:function(){};if(this.silent)return Wt(),!0;if(this._drain)this._stream.once("drain",function(){_t._drain=!1,_t.log(Ot,Wt)});else{if(!this._rotate){var bt="".concat(Ot[Bt]).concat(this.eol),Jt=$.byteLength(bt);this._pendingSize+=Jt,this._opening&&!this.rotatedWhileOpening&&this._needsNewFile(this._size+this._pendingSize)&&(this.rotatedWhileOpening=!0);var Zt=this._stream.write(bt,Vt.bind(this));return Zt?Wt():(this._drain=!0,this._stream.once("drain",function(){_t._drain=!1,Wt()})),yt("written",Zt,this._drain),this.finishIfEnding(),Zt}this._stream.once("rotate",function(){_t._rotate=!1,_t.log(Ot,Wt)})}function Vt(){var jt=this;this._size+=Jt,this._pendingSize-=Jt,yt("logged %s %s",this._size,bt),this.emit("logged",Ot),this._opening||this._needsNewFile()&&(this._rotate=!0,this._endStream(function(){return jt._rotateFile()}))}}},{key:"query",value:function(Ot,_t){typeof Ot=="function"&&(_t=Ot,Ot={}),Ot=function(zt){return(zt=zt||{}).rows=zt.rows||zt.limit||10,zt.start=zt.start||0,zt.until=zt.until||new Date,_e(zt.until)!=="object"&&(zt.until=new Date(zt.until)),zt.from=zt.from||zt.until-864e5,_e(zt.from)!=="object"&&(zt.from=new Date(zt.from)),zt.order=zt.order||"desc",zt}(Ot);var Wt=st.join(this.dirname,this.filename),bt="",Jt=[],Zt=0,Vt=Ut.createReadStream(Wt,{encoding:"utf8"});function jt(zt,$t){try{var nn=JSON.parse(zt);(function(rn){if(rn&&_e(rn)==="object"){var Dt=new Date(rn.timestamp);if(!(Ot.from&&DtOt.until||Ot.level&&Ot.level!==rn.level))return!0}})(nn)&&function(rn){Ot.rows&&Jt.length>=Ot.rows&&Ot.order!=="desc"?Vt.readable&&Vt.destroy():(Ot.fields&&(rn=Ot.fields.reduce(function(Dt,wt){return Dt[wt]=rn[wt],Dt},{})),Ot.order==="desc"&&Jt.length>=Ot.rows&&Jt.shift(),Jt.push(rn))}(nn)}catch(rn){$t||Vt.emit("error",rn)}}Vt.on("error",function(zt){if(Vt.readable&&Vt.destroy(),_t)return zt.code!=="ENOENT"?_t(zt):_t(null,Jt)}),Vt.on("data",function(zt){for(var $t=(zt=(bt+zt).split(/\n+/)).length-1,nn=0;nn<$t;nn++)(!Ot.start||Zt>=Ot.start)&&jt(zt[nn]),Zt++;bt=zt[$t]}),Vt.on("close",function(){bt&&jt(bt,!0),Ot.order==="desc"&&(Jt=Jt.reverse()),_t&&_t(null,Jt)})}},{key:"stream",value:function(){var Ot=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},_t=st.join(this.dirname,this.filename),Wt=new gt,bt={file:_t,start:Ot.start};return Wt.destroy=xt(bt,function(Jt,Zt){if(Jt)return Wt.emit("error",Jt);try{Wt.emit("data",Zt),Zt=JSON.parse(Zt),Wt.emit("log",Zt)}catch(Vt){Wt.emit("error",Vt)}}),Wt}},{key:"open",value:function(){var Ot=this;this.filename&&(this._opening||(this._opening=!0,this.stat(function(_t,Wt){if(_t)return Ot.emit("error",_t);yt("stat done: %s { size: %s }",Ot.filename,Wt),Ot._size=Wt,Ot._dest=Ot._createStream(Ot._stream),Ot._opening=!1,Ot.once("open",function(){Ot._stream.eventNames().includes("rotate")?Ot._stream.emit("rotate"):Ot._rotate=!1})})))}},{key:"stat",value:function(Ot){var _t=this,Wt=this._getFile(),bt=st.join(this.dirname,Wt);Ut.stat(bt,function(Jt,Zt){return Jt&&Jt.code==="ENOENT"?(yt("ENOENT ok",bt),_t.filename=Wt,Ot(null,0)):Jt?(yt("err ".concat(Jt.code," ").concat(bt)),Ot(Jt)):!Zt||_t._needsNewFile(Zt.size)?_t._incFile(function(){return _t.stat(Ot)}):(_t.filename=Wt,void Ot(null,Zt.size))})}},{key:"close",value:function(Ot){var _t=this;this._stream&&this._stream.end(function(){Ot&&Ot(),_t.emit("flush"),_t.emit("closed")})}},{key:"_needsNewFile",value:function(Ot){return Ot=Ot||this._size,this.maxsize&&Ot>=this.maxsize}},{key:"_onError",value:function(Ot){this.emit("error",Ot)}},{key:"_setupStream",value:function(Ot){return Ot.on("error",this._onError),Ot}},{key:"_cleanupStream",value:function(Ot){return Ot.removeListener("error",this._onError),Ot}},{key:"_rotateFile",value:function(){var Ot=this;this._incFile(function(){return Ot.open()})}},{key:"_endStream",value:function(){var Ot=this,_t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){};this._dest?(this._stream.unpipe(this._dest),this._dest.end(function(){Ot._cleanupStream(Ot._dest),_t()})):_t()}},{key:"_createStream",value:function(Ot){var _t=this,Wt=st.join(this.dirname,this.filename);yt("create stream start",Wt,this.options);var bt=Ut.createWriteStream(Wt,this.options).on("error",function(Zt){return yt(Zt)}).on("close",function(){return yt("close",bt.path,bt.bytesWritten)}).on("open",function(){yt("file open ok",Wt),_t.emit("open",Wt),Ot.pipe(bt),_t.rotatedWhileOpening&&(_t._stream=new ft,_t._stream.setMaxListeners(30),_t._rotateFile(),_t.rotatedWhileOpening=!1,_t._cleanupStream(bt),Ot.end())});if(yt("create stream ok",Wt),this.zippedArchive){var Jt=pt.createGzip();return Jt.pipe(bt),Jt}return bt}},{key:"_incFile",value:function(Ot){yt("_incFile",this.filename);var _t=st.extname(this._basename),Wt=st.basename(this._basename,_t);this.tailable?this._checkMaxFilesTailable(_t,Wt,Ot):(this._created+=1,this._checkMaxFilesIncrementing(_t,Wt,Ot))}},{key:"_getFile",value:function(){var Ot=st.extname(this._basename),_t=st.basename(this._basename,Ot),Wt=this.rotationFormat?this.rotationFormat():this._created,bt=!this.tailable&&this._created?"".concat(_t).concat(Wt).concat(Ot):"".concat(_t).concat(Ot);return this.zippedArchive&&!this.tailable?"".concat(bt,".gz"):bt}},{key:"_checkMaxFilesIncrementing",value:function(Ot,_t,Wt){if(!this.maxFiles||this._created1;Vt--)Jt.push((function(jt,zt){var $t=this,nn="".concat(_t).concat(jt-1).concat(Ot).concat(Zt),rn=st.join(this.dirname,nn);Ut.exists(rn,function(Dt){if(!Dt)return zt(null);nn="".concat(_t).concat(jt).concat(Ot).concat(Zt),Ut.rename(rn,st.join($t.dirname,nn),zt)})}).bind(this,Vt));ct(Jt,function(){Ut.rename(st.join(bt.dirname,"".concat(_t).concat(Ot)),st.join(bt.dirname,"".concat(_t,"1").concat(Ot).concat(Zt)),Wt)})}}},{key:"_createLogDirIfNotExist",value:function(Ot){Ut.existsSync(Ot)||Ut.mkdirSync(Ot,{recursive:!0})}}])&&tt(mt.prototype,It),Object.defineProperty(mt,"prototype",{writable:!1}),Tt}(Ft)}).call(this,_(19).setImmediate,_(5).Buffer)},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(et,tt){return(0,j.default)($.default,et,tt)};var j=_e(_(154)),$=_e(_(158));function _e(et){return et&&et.__esModule?et:{default:et}}o.exports=s.default},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0});var j=et(_(44)),$=et(_(23)),_e=et(_(30));function et(tt){return tt&&tt.__esModule?tt:{default:tt}}s.default=(0,_e.default)((tt,nt,rt)=>{var ot=(0,j.default)(nt)?[]:{};tt(nt,(ut,dt,Ut)=>{(0,$.default)(ut)((st,...ct)=>{ct.length<2&&([ct]=ct),ot[dt]=ct,Ut(st)})},ut=>rt(ut,ot))},3),o.exports=s.default},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(rt){return(0,_e.isAsync)(rt)?function(...ot){const ut=ot.pop();return tt(rt.apply(this,ot),ut)}:(0,j.default)(function(ot,ut){var dt;try{dt=rt.apply(this,ot)}catch(Ut){return ut(Ut)}if(dt&&typeof dt.then=="function")return tt(dt,ut);ut(null,dt)})};var j=et(_(156)),$=et(_(157)),_e=_(23);function et(rt){return rt&&rt.__esModule?rt:{default:rt}}function tt(rt,ot){return rt.then(ut=>{nt(ot,null,ut)},ut=>{nt(ot,ut&&ut.message?ut:new Error(ut))})}function nt(rt,ot,ut){try{rt(ot,ut)}catch(dt){(0,$.default)(Ut=>{throw Ut},dt)}}o.exports=s.default},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0}),s.default=function(j){return function(...$){var _e=$.pop();return j.call(this,$,_e)}},o.exports=s.default},function(o,s,_){(function(j,$){Object.defineProperty(s,"__esModule",{value:!0}),s.fallback=rt,s.wrap=ot;var _e,et=s.hasQueueMicrotask=typeof queueMicrotask=="function"&&queueMicrotask,tt=s.hasSetImmediate=typeof j=="function"&&j,nt=s.hasNextTick=typeof $=="object"&&typeof $.nextTick=="function";function rt(ut){setTimeout(ut,0)}function ot(ut){return(dt,...Ut)=>ut(()=>dt(...Ut))}_e=et?queueMicrotask:tt?j:nt?$.nextTick:rt,s.default=ot(_e)}).call(this,_(19).setImmediate,_(2))},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0});var j=_e(_(66)),$=_e(_(30));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},function(o,s,_){Object.defineProperty(s,"__esModule",{value:!0});var j=rt(_(67)),$=rt(_(160)),_e=rt(_(68)),et=_(23),tt=rt(_(162)),nt=rt(_(45));function rt(ot){return ot&&ot.__esModule?ot:{default:ot}}s.default=ot=>(ut,dt,Ut)=>{if(Ut=(0,j.default)(Ut),ot<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!ut)return Ut(null);if((0,et.isAsyncGenerator)(ut))return(0,tt.default)(ut,ot,dt,Ut);if((0,et.isAsyncIterable)(ut))return(0,tt.default)(ut[Symbol.asyncIterator](),ot,dt,Ut);var st=(0,$.default)(ut),ct=!1,pt=!1,Bt=0,Qt=!1;function gt(Ft,yt){if(!pt)if(Bt-=1,Ft)ct=!0,Ut(Ft);else if(Ft===!1)ct=!0,pt=!0;else{if(yt===nt.default||ct&&Bt<=0)return ct=!0,Ut(null);Qt||ft()}}function ft(){for(Qt=!0;Bt=tt||dt||ot||(dt=!0,et.next().then(({value:Qt,done:gt})=>{if(!ut&&!ot){if(dt=!1,gt)return ot=!0,void(Ut<=0&&rt(null));Ut++,nt(Qt,st,pt),st++,ct()}}).catch(Bt))}function pt(Qt,gt){if(Ut-=1,!ut)return Qt?Bt(Qt):Qt===!1?(ot=!0,void(ut=!0)):gt===_e.default||ot&&Ut<=0?(ot=!0,rt(null)):void ct()}function Bt(Qt){ut||(dt=!1,ot=!0,rt(Qt))}ct()};var j,$=_(45),_e=(j=$)&&j.__esModule?j:{default:j};o.exports=s.default},function(o,s,_){(function(j){var $=_(5).Buffer,_e=_(164).Transform,et=_(174),tt=_(13),nt=_(73).ok,rt=_(5).kMaxLength,ot="Cannot create final Buffer. It would be larger than 0x"+rt.toString(16)+" bytes";et.Z_MIN_WINDOWBITS=8,et.Z_MAX_WINDOWBITS=15,et.Z_DEFAULT_WINDOWBITS=15,et.Z_MIN_CHUNK=64,et.Z_MAX_CHUNK=1/0,et.Z_DEFAULT_CHUNK=16384,et.Z_MIN_MEMLEVEL=1,et.Z_MAX_MEMLEVEL=9,et.Z_DEFAULT_MEMLEVEL=8,et.Z_MIN_LEVEL=-1,et.Z_MAX_LEVEL=9,et.Z_DEFAULT_LEVEL=et.Z_DEFAULT_COMPRESSION;for(var ut=Object.keys(et),dt=0;dt=rt?$t=new RangeError(ot):zt=$.concat(Jt,Zt),Jt=[],_t.close(),bt($t,zt)}_t.on("error",function(zt){_t.removeListener("end",jt),_t.removeListener("readable",Vt),bt(zt)}),_t.on("end",jt),_t.end(Wt),Vt()}function gt(_t,Wt){if(typeof Wt=="string"&&(Wt=$.from(Wt)),!$.isBuffer(Wt))throw new TypeError("Not a string or buffer");var bt=_t._finishFlushFlag;return _t._processChunk(Wt,bt)}function ft(_t){if(!(this instanceof ft))return new ft(_t);vt.call(this,_t,et.DEFLATE)}function Ft(_t){if(!(this instanceof Ft))return new Ft(_t);vt.call(this,_t,et.INFLATE)}function yt(_t){if(!(this instanceof yt))return new yt(_t);vt.call(this,_t,et.GZIP)}function Ct(_t){if(!(this instanceof Ct))return new Ct(_t);vt.call(this,_t,et.GUNZIP)}function xt(_t){if(!(this instanceof xt))return new xt(_t);vt.call(this,_t,et.DEFLATERAW)}function ht(_t){if(!(this instanceof ht))return new ht(_t);vt.call(this,_t,et.INFLATERAW)}function mt(_t){if(!(this instanceof mt))return new mt(_t);vt.call(this,_t,et.UNZIP)}function It(_t){return _t===et.Z_NO_FLUSH||_t===et.Z_PARTIAL_FLUSH||_t===et.Z_SYNC_FLUSH||_t===et.Z_FULL_FLUSH||_t===et.Z_FINISH||_t===et.Z_BLOCK}function vt(_t,Wt){var bt=this;if(this._opts=_t=_t||{},this._chunkSize=_t.chunkSize||s.Z_DEFAULT_CHUNK,_e.call(this,_t),_t.flush&&!It(_t.flush))throw new Error("Invalid flush flag: "+_t.flush);if(_t.finishFlush&&!It(_t.finishFlush))throw new Error("Invalid flush flag: "+_t.finishFlush);if(this._flushFlag=_t.flush||et.Z_NO_FLUSH,this._finishFlushFlag=_t.finishFlush!==void 0?_t.finishFlush:et.Z_FINISH,_t.chunkSize&&(_t.chunkSizes.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+_t.chunkSize);if(_t.windowBits&&(_t.windowBitss.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+_t.windowBits);if(_t.level&&(_t.levels.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+_t.level);if(_t.memLevel&&(_t.memLevels.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+_t.memLevel);if(_t.strategy&&_t.strategy!=s.Z_FILTERED&&_t.strategy!=s.Z_HUFFMAN_ONLY&&_t.strategy!=s.Z_RLE&&_t.strategy!=s.Z_FIXED&&_t.strategy!=s.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+_t.strategy);if(_t.dictionary&&!$.isBuffer(_t.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new et.Zlib(Wt);var Jt=this;this._hadError=!1,this._handle.onerror=function(jt,zt){Tt(Jt),Jt._hadError=!0;var $t=new Error(jt);$t.errno=zt,$t.code=s.codes[zt],Jt.emit("error",$t)};var Zt=s.Z_DEFAULT_COMPRESSION;typeof _t.level=="number"&&(Zt=_t.level);var Vt=s.Z_DEFAULT_STRATEGY;typeof _t.strategy=="number"&&(Vt=_t.strategy),this._handle.init(_t.windowBits||s.Z_DEFAULT_WINDOWBITS,Zt,_t.memLevel||s.Z_DEFAULT_MEMLEVEL,Vt,_t.dictionary),this._buffer=$.allocUnsafe(this._chunkSize),this._offset=0,this._level=Zt,this._strategy=Vt,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!bt._handle},configurable:!0,enumerable:!0})}function Tt(_t,Wt){Wt&&j.nextTick(Wt),_t._handle&&(_t._handle.close(),_t._handle=null)}function Ot(_t){_t.emit("close")}Object.defineProperty(s,"codes",{enumerable:!0,value:Object.freeze(st),writable:!1}),s.Deflate=ft,s.Inflate=Ft,s.Gzip=yt,s.Gunzip=Ct,s.DeflateRaw=xt,s.InflateRaw=ht,s.Unzip=mt,s.createDeflate=function(_t){return new ft(_t)},s.createInflate=function(_t){return new Ft(_t)},s.createDeflateRaw=function(_t){return new xt(_t)},s.createInflateRaw=function(_t){return new ht(_t)},s.createGzip=function(_t){return new yt(_t)},s.createGunzip=function(_t){return new Ct(_t)},s.createUnzip=function(_t){return new mt(_t)},s.deflate=function(_t,Wt,bt){return typeof Wt=="function"&&(bt=Wt,Wt={}),Qt(new ft(Wt),_t,bt)},s.deflateSync=function(_t,Wt){return gt(new ft(Wt),_t)},s.gzip=function(_t,Wt,bt){return typeof Wt=="function"&&(bt=Wt,Wt={}),Qt(new yt(Wt),_t,bt)},s.gzipSync=function(_t,Wt){return gt(new yt(Wt),_t)},s.deflateRaw=function(_t,Wt,bt){return typeof Wt=="function"&&(bt=Wt,Wt={}),Qt(new xt(Wt),_t,bt)},s.deflateRawSync=function(_t,Wt){return gt(new xt(Wt),_t)},s.unzip=function(_t,Wt,bt){return typeof Wt=="function"&&(bt=Wt,Wt={}),Qt(new mt(Wt),_t,bt)},s.unzipSync=function(_t,Wt){return gt(new mt(Wt),_t)},s.inflate=function(_t,Wt,bt){return typeof Wt=="function"&&(bt=Wt,Wt={}),Qt(new Ft(Wt),_t,bt)},s.inflateSync=function(_t,Wt){return gt(new Ft(Wt),_t)},s.gunzip=function(_t,Wt,bt){return typeof Wt=="function"&&(bt=Wt,Wt={}),Qt(new Ct(Wt),_t,bt)},s.gunzipSync=function(_t,Wt){return gt(new Ct(Wt),_t)},s.inflateRaw=function(_t,Wt,bt){return typeof Wt=="function"&&(bt=Wt,Wt={}),Qt(new ht(Wt),_t,bt)},s.inflateRawSync=function(_t,Wt){return gt(new ht(Wt),_t)},tt.inherits(vt,_e),vt.prototype.params=function(_t,Wt,bt){if(_ts.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+_t);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!==_t||this._strategy!==Wt){var Jt=this;this.flush(et.Z_SYNC_FLUSH,function(){nt(Jt._handle,"zlib binding closed"),Jt._handle.params(_t,Wt),Jt._hadError||(Jt._level=_t,Jt._strategy=Wt,bt&&bt())})}else j.nextTick(bt)},vt.prototype.reset=function(){return nt(this._handle,"zlib binding closed"),this._handle.reset()},vt.prototype._flush=function(_t){this._transform($.alloc(0),"",_t)},vt.prototype.flush=function(_t,Wt){var bt=this,Jt=this._writableState;(typeof _t=="function"||_t===void 0&&!Wt)&&(Wt=_t,_t=et.Z_FULL_FLUSH),Jt.ended?Wt&&j.nextTick(Wt):Jt.ending?Wt&&this.once("end",Wt):Jt.needDrain?Wt&&this.once("drain",function(){return bt.flush(_t,Wt)}):(this._flushFlag=_t,this.write($.alloc(0),"",Wt))},vt.prototype.close=function(_t){Tt(this,_t),j.nextTick(Ot,this)},vt.prototype._transform=function(_t,Wt,bt){var Jt,Zt=this._writableState,Vt=(Zt.ending||Zt.ended)&&(!_t||Zt.length===_t.length);return _t===null||$.isBuffer(_t)?this._handle?(Vt?Jt=this._finishFlushFlag:(Jt=this._flushFlag,_t.length>=Zt.length&&(this._flushFlag=this._opts.flush||et.Z_NO_FLUSH)),void this._processChunk(_t,Jt,bt)):bt(new Error("zlib binding closed")):bt(new Error("invalid input"))},vt.prototype._processChunk=function(_t,Wt,bt){var Jt=_t&&_t.length,Zt=this._chunkSize-this._offset,Vt=0,jt=this,zt=typeof bt=="function";if(!zt){var $t,nn=[],rn=0;this.on("error",function(Pt){$t=Pt}),nt(this._handle,"zlib binding closed");do var Dt=this._handle.writeSync(Wt,_t,Vt,Jt,this._buffer,this._offset,Zt);while(!this._hadError&&kt(Dt[0],Dt[1]));if(this._hadError)throw $t;if(rn>=rt)throw Tt(this),new RangeError(ot);var wt=$.concat(nn,rn);return Tt(this),wt}nt(this._handle,"zlib binding closed");var Et=this._handle.write(Wt,_t,Vt,Jt,this._buffer,this._offset,Zt);function kt(Pt,Kt){if(this&&(this.buffer=null,this.callback=null),!jt._hadError){var Ht=Zt-Kt;if(nt(Ht>=0,"have should not go down"),Ht>0){var on=jt._buffer.slice(jt._offset,jt._offset+Ht);jt._offset+=Ht,zt?jt.push(on):(nn.push(on),rn+=on.length)}if((Kt===0||jt._offset>=jt._chunkSize)&&(Zt=jt._chunkSize,jt._offset=0,jt._buffer=$.allocUnsafe(jt._chunkSize)),Kt===0){if(Vt+=Jt-Pt,Jt=Pt,!zt)return!0;var sn=jt._handle.write(Wt,_t,Vt,Jt,jt._buffer,jt._offset,jt._chunkSize);return sn.callback=kt,void(sn.buffer=_t)}if(!zt)return!1;bt()}}Et.buffer=_t,Et.callback=kt},tt.inherits(ft,vt),tt.inherits(Ft,vt),tt.inherits(yt,vt),tt.inherits(Ct,vt),tt.inherits(xt,vt),tt.inherits(ht,vt),tt.inherits(mt,vt)}).call(this,_(2))},function(o,s,_){o.exports=$;var j=_(20).EventEmitter;function $(){j.call(this)}_(7)($,j),$.Readable=_(31),$.Writable=_(170),$.Duplex=_(171),$.Transform=_(172),$.PassThrough=_(173),$.Stream=$,$.prototype.pipe=function(_e,et){var tt=this;function nt(ct){_e.writable&&_e.write(ct)===!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",ut),tt.on("close",dt));var ot=!1;function ut(){ot||(ot=!0,_e.end())}function dt(){ot||(ot=!0,typeof _e.destroy=="function"&&_e.destroy())}function Ut(ct){if(st(),j.listenerCount(this,"error")===0)throw ct}function st(){tt.removeListener("data",nt),_e.removeListener("drain",rt),tt.removeListener("end",ut),tt.removeListener("close",dt),tt.removeListener("error",Ut),_e.removeListener("error",Ut),tt.removeListener("end",st),tt.removeListener("close",st),_e.removeListener("close",st)}return tt.on("error",Ut),_e.on("error",Ut),tt.on("end",st),tt.on("close",st),_e.on("close",st),_e.emit("pipe",tt),_e}},function(o,s){var _={}.toString;o.exports=Array.isArray||function(j){return _.call(j)=="[object Array]"}},function(o,s){},function(o,s,_){var j=_(46).Buffer,$=_(168);o.exports=function(){function _e(){(function(et,tt){if(!(et instanceof tt))throw new TypeError("Cannot call a class as a function")})(this,_e),this.head=null,this.tail=null,this.length=0}return _e.prototype.push=function(et){var tt={data:et,next:null};this.length>0?this.tail.next=tt:this.head=tt,this.tail=tt,++this.length},_e.prototype.unshift=function(et){var tt={data:et,next:this.head};this.length===0&&(this.tail=tt),this.head=tt,++this.length},_e.prototype.shift=function(){if(this.length!==0){var et=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,et}},_e.prototype.clear=function(){this.head=this.tail=null,this.length=0},_e.prototype.join=function(et){if(this.length===0)return"";for(var tt=this.head,nt=""+tt.data;tt=tt.next;)nt+=et+tt.data;return nt},_e.prototype.concat=function(et){if(this.length===0)return j.alloc(0);if(this.length===1)return this.head.data;for(var tt,nt,rt,ot=j.allocUnsafe(et>>>0),ut=this.head,dt=0;ut;)tt=ut.data,nt=ot,rt=dt,tt.copy(nt,rt),dt+=ut.data.length,ut=ut.next;return ot},_e}(),$&&$.inspect&&$.inspect.custom&&(o.exports.prototype[$.inspect.custom]=function(){var _e=$.inspect({length:this.length});return this.constructor.name+" "+_e})},function(o,s){},function(o,s,_){o.exports=_e;var j=_(72),$=Object.create(_(32));function _e(et){if(!(this instanceof _e))return new _e(et);j.call(this,et)}$.inherits=_(7),$.inherits(_e,j),_e.prototype._transform=function(et,tt,nt){nt(null,et)}},function(o,s,_){o.exports=_(47)},function(o,s,_){o.exports=_(22)},function(o,s,_){o.exports=_(31).Transform},function(o,s,_){o.exports=_(31).PassThrough},function(o,s,_){(function(j,$){var _e=_(73),et=_(176),tt=_(177),nt=_(180),rt=_(183);for(var ot in rt)s[ot]=rt[ot];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 ut(dt){if(typeof dt!="number"||dts.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=dt,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}ut.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,_e(this.init_done,"close before init"),_e(this.mode<=s.UNZIP),this.mode===s.DEFLATE||this.mode===s.GZIP||this.mode===s.DEFLATERAW?tt.deflateEnd(this.strm):this.mode!==s.INFLATE&&this.mode!==s.GUNZIP&&this.mode!==s.INFLATERAW&&this.mode!==s.UNZIP||nt.inflateEnd(this.strm),this.mode=s.NONE,this.dictionary=null)},ut.prototype.write=function(dt,Ut,st,ct,pt,Bt,Qt){return this._write(!0,dt,Ut,st,ct,pt,Bt,Qt)},ut.prototype.writeSync=function(dt,Ut,st,ct,pt,Bt,Qt){return this._write(!1,dt,Ut,st,ct,pt,Bt,Qt)},ut.prototype._write=function(dt,Ut,st,ct,pt,Bt,Qt,gt){if(_e.equal(arguments.length,8),_e(this.init_done,"write before init"),_e(this.mode!==s.NONE,"already finalized"),_e.equal(!1,this.write_in_progress,"write already in progress"),_e.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,_e.equal(!1,Ut===void 0,"must provide flush value"),this.write_in_progress=!0,Ut!==s.Z_NO_FLUSH&&Ut!==s.Z_PARTIAL_FLUSH&&Ut!==s.Z_SYNC_FLUSH&&Ut!==s.Z_FULL_FLUSH&&Ut!==s.Z_FINISH&&Ut!==s.Z_BLOCK)throw new Error("Invalid flush value");if(st==null&&(st=j.alloc(0),pt=0,ct=0),this.strm.avail_in=pt,this.strm.input=st,this.strm.next_in=ct,this.strm.avail_out=gt,this.strm.output=Bt,this.strm.next_out=Qt,this.flush=Ut,!dt)return this._process(),this._checkError()?this._afterSync():void 0;var ft=this;return $.nextTick(function(){ft._process(),ft._after()}),this},ut.prototype._afterSync=function(){var dt=this.strm.avail_out,Ut=this.strm.avail_in;return this.write_in_progress=!1,[Ut,dt]},ut.prototype._process=function(){var dt=null;switch(this.mode){case s.DEFLATE:case s.GZIP:case s.DEFLATERAW:this.err=tt.deflate(this.strm,this.flush);break;case s.UNZIP:switch(this.strm.avail_in>0&&(dt=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(dt===null)break;if(this.strm.input[dt]!==31){this.mode=s.INFLATE;break}if(this.gzip_id_bytes_read=1,dt++,this.strm.avail_in===1)break;case 1:if(dt===null)break;this.strm.input[dt]===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=nt.inflate(this.strm,this.flush),this.err===s.Z_NEED_DICT&&this.dictionary&&(this.err=nt.inflateSetDictionary(this.strm,this.dictionary),this.err===s.Z_OK?this.err=nt.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=nt.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},ut.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},ut.prototype._after=function(){if(this._checkError()){var dt=this.strm.avail_out,Ut=this.strm.avail_in;this.write_in_progress=!1,this.callback(Ut,dt),this.pending_close&&this.close()}},ut.prototype._error=function(dt){this.strm.msg&&(dt=this.strm.msg),this.onerror(dt,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},ut.prototype.init=function(dt,Ut,st,ct,pt){_e(arguments.length===4||arguments.length===5,"init(windowBits, level, memLevel, strategy, [dictionary])"),_e(dt>=8&&dt<=15,"invalid windowBits"),_e(Ut>=-1&&Ut<=9,"invalid compression level"),_e(st>=1&&st<=9,"invalid memlevel"),_e(ct===s.Z_FILTERED||ct===s.Z_HUFFMAN_ONLY||ct===s.Z_RLE||ct===s.Z_FIXED||ct===s.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(Ut,dt,st,ct,pt),this._setDictionary()},ut.prototype.params=function(){throw new Error("deflateParams Not supported")},ut.prototype.reset=function(){this._reset(),this._setDictionary()},ut.prototype._init=function(dt,Ut,st,ct,pt){switch(this.level=dt,this.windowBits=Ut,this.memLevel=st,this.strategy=ct,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 et,this.mode){case s.DEFLATE:case s.GZIP:case s.DEFLATERAW:this.err=tt.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=nt.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=pt,this.write_in_progress=!1,this.init_done=!0},ut.prototype._setDictionary=function(){if(this.dictionary!=null){switch(this.err=s.Z_OK,this.mode){case s.DEFLATE:case s.DEFLATERAW:this.err=tt.deflateSetDictionary(this.strm,this.dictionary)}this.err!==s.Z_OK&&this._error("Failed to set dictionary")}},ut.prototype._reset=function(){switch(this.err=s.Z_OK,this.mode){case s.DEFLATE:case s.DEFLATERAW:case s.GZIP:this.err=tt.deflateReset(this.strm);break;case s.INFLATE:case s.INFLATERAW:case s.GUNZIP:this.err=nt.inflateReset(this.strm)}this.err!==s.Z_OK&&this._error("Failed to reset stream")},s.Zlib=ut}).call(this,_(5).Buffer,_(2))},function(o,s,_){var j=Object.getOwnPropertySymbols,$=Object.prototype.hasOwnProperty,_e=Object.prototype.propertyIsEnumerable;function et(tt){if(tt==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(tt)}o.exports=function(){try{if(!Object.assign)return!1;var tt=new String("abc");if(tt[5]="de",Object.getOwnPropertyNames(tt)[0]==="5")return!1;for(var nt={},rt=0;rt<10;rt++)nt["_"+String.fromCharCode(rt)]=rt;if(Object.getOwnPropertyNames(nt).map(function(ut){return nt[ut]}).join("")!=="0123456789")return!1;var ot={};return"abcdefghijklmnopqrst".split("").forEach(function(ut){ot[ut]=ut}),Object.keys(Object.assign({},ot)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}()?Object.assign:function(tt,nt){for(var rt,ot,ut=et(tt),dt=1;dt4?9:0)}function ut(ht){for(var mt=ht.length;--mt>=0;)ht[mt]=0}function dt(ht){var mt=ht.state,It=mt.pending;It>ht.avail_out&&(It=ht.avail_out),It!==0&&($.arraySet(ht.output,mt.pending_buf,mt.pending_out,It,ht.next_out),ht.next_out+=It,mt.pending_out+=It,ht.total_out+=It,ht.avail_out-=It,mt.pending-=It,mt.pending===0&&(mt.pending_out=0))}function Ut(ht,mt){_e._tr_flush_block(ht,ht.block_start>=0?ht.block_start:-1,ht.strstart-ht.block_start,mt),ht.block_start=ht.strstart,dt(ht.strm)}function st(ht,mt){ht.pending_buf[ht.pending++]=mt}function ct(ht,mt){ht.pending_buf[ht.pending++]=mt>>>8&255,ht.pending_buf[ht.pending++]=255&mt}function pt(ht,mt){var It,vt,Tt=ht.max_chain_length,Ot=ht.strstart,_t=ht.prev_length,Wt=ht.nice_match,bt=ht.strstart>ht.w_size-262?ht.strstart-(ht.w_size-262):0,Jt=ht.window,Zt=ht.w_mask,Vt=ht.prev,jt=ht.strstart+258,zt=Jt[Ot+_t-1],$t=Jt[Ot+_t];ht.prev_length>=ht.good_match&&(Tt>>=2),Wt>ht.lookahead&&(Wt=ht.lookahead);do if(Jt[(It=mt)+_t]===$t&&Jt[It+_t-1]===zt&&Jt[It]===Jt[Ot]&&Jt[++It]===Jt[Ot+1]){Ot+=2,It++;do;while(Jt[++Ot]===Jt[++It]&&Jt[++Ot]===Jt[++It]&&Jt[++Ot]===Jt[++It]&&Jt[++Ot]===Jt[++It]&&Jt[++Ot]===Jt[++It]&&Jt[++Ot]===Jt[++It]&&Jt[++Ot]===Jt[++It]&&Jt[++Ot]===Jt[++It]&&Ot_t){if(ht.match_start=mt,_t=vt,vt>=Wt)break;zt=Jt[Ot+_t-1],$t=Jt[Ot+_t]}}while((mt=Vt[mt&Zt])>bt&&--Tt!=0);return _t<=ht.lookahead?_t:ht.lookahead}function Bt(ht){var mt,It,vt,Tt,Ot,_t,Wt,bt,Jt,Zt,Vt=ht.w_size;do{if(Tt=ht.window_size-ht.lookahead-ht.strstart,ht.strstart>=Vt+(Vt-262)){$.arraySet(ht.window,ht.window,Vt,Vt,0),ht.match_start-=Vt,ht.strstart-=Vt,ht.block_start-=Vt,mt=It=ht.hash_size;do vt=ht.head[--mt],ht.head[mt]=vt>=Vt?vt-Vt:0;while(--It);mt=It=Vt;do vt=ht.prev[--mt],ht.prev[mt]=vt>=Vt?vt-Vt:0;while(--It);Tt+=Vt}if(ht.strm.avail_in===0)break;if(_t=ht.strm,Wt=ht.window,bt=ht.strstart+ht.lookahead,Jt=Tt,Zt=void 0,(Zt=_t.avail_in)>Jt&&(Zt=Jt),It=Zt===0?0:(_t.avail_in-=Zt,$.arraySet(Wt,_t.input,_t.next_in,Zt,bt),_t.state.wrap===1?_t.adler=et(_t.adler,Wt,Zt,bt):_t.state.wrap===2&&(_t.adler=tt(_t.adler,Wt,Zt,bt)),_t.next_in+=Zt,_t.total_in+=Zt,Zt),ht.lookahead+=It,ht.lookahead+ht.insert>=3)for(Ot=ht.strstart-ht.insert,ht.ins_h=ht.window[Ot],ht.ins_h=(ht.ins_h<=3&&(ht.ins_h=(ht.ins_h<=3)if(vt=_e._tr_tally(ht,ht.strstart-ht.match_start,ht.match_length-3),ht.lookahead-=ht.match_length,ht.match_length<=ht.max_lazy_match&&ht.lookahead>=3){ht.match_length--;do ht.strstart++,ht.ins_h=(ht.ins_h<=3&&(ht.ins_h=(ht.ins_h<4096)&&(ht.match_length=2)),ht.prev_length>=3&&ht.match_length<=ht.prev_length){Tt=ht.strstart+ht.lookahead-3,vt=_e._tr_tally(ht,ht.strstart-1-ht.prev_match,ht.prev_length-3),ht.lookahead-=ht.prev_length-1,ht.prev_length-=2;do++ht.strstart<=Tt&&(ht.ins_h=(ht.ins_h<15&&(_t=2,vt-=16),Tt<1||Tt>9||It!==8||vt<8||vt>15||mt<0||mt>9||Ot<0||Ot>4)return rt(ht,-2);vt===8&&(vt=9);var Wt=new Ft;return ht.state=Wt,Wt.strm=ht,Wt.wrap=_t,Wt.gzhead=null,Wt.w_bits=vt,Wt.w_size=1<ht.pending_buf_size-5&&(It=ht.pending_buf_size-5);;){if(ht.lookahead<=1){if(Bt(ht),ht.lookahead===0&&mt===0)return 1;if(ht.lookahead===0)break}ht.strstart+=ht.lookahead,ht.lookahead=0;var vt=ht.block_start+It;if((ht.strstart===0||ht.strstart>=vt)&&(ht.lookahead=ht.strstart-vt,ht.strstart=vt,Ut(ht,!1),ht.strm.avail_out===0)||ht.strstart-ht.block_start>=ht.w_size-262&&(Ut(ht,!1),ht.strm.avail_out===0))return 1}return ht.insert=0,mt===4?(Ut(ht,!0),ht.strm.avail_out===0?3:4):(ht.strstart>ht.block_start&&(Ut(ht,!1),ht.strm.avail_out),1)}),new ft(4,4,8,4,Qt),new ft(4,5,16,8,Qt),new ft(4,6,32,32,Qt),new ft(4,4,16,16,gt),new ft(8,16,32,32,gt),new ft(8,16,128,128,gt),new ft(8,32,128,256,gt),new ft(32,128,258,1024,gt),new ft(32,258,258,4096,gt)],s.deflateInit=function(ht,mt){return xt(ht,mt,8,15,8,0)},s.deflateInit2=xt,s.deflateReset=Ct,s.deflateResetKeep=yt,s.deflateSetHeader=function(ht,mt){return ht&&ht.state?ht.state.wrap!==2?-2:(ht.state.gzhead=mt,0):-2},s.deflate=function(ht,mt){var It,vt,Tt,Ot;if(!ht||!ht.state||mt>5||mt<0)return ht?rt(ht,-2):-2;if(vt=ht.state,!ht.output||!ht.input&&ht.avail_in!==0||vt.status===666&&mt!==4)return rt(ht,ht.avail_out===0?-5:-2);if(vt.strm=ht,It=vt.last_flush,vt.last_flush=mt,vt.status===42)if(vt.wrap===2)ht.adler=0,st(vt,31),st(vt,139),st(vt,8),vt.gzhead?(st(vt,(vt.gzhead.text?1:0)+(vt.gzhead.hcrc?2:0)+(vt.gzhead.extra?4:0)+(vt.gzhead.name?8:0)+(vt.gzhead.comment?16:0)),st(vt,255&vt.gzhead.time),st(vt,vt.gzhead.time>>8&255),st(vt,vt.gzhead.time>>16&255),st(vt,vt.gzhead.time>>24&255),st(vt,vt.level===9?2:vt.strategy>=2||vt.level<2?4:0),st(vt,255&vt.gzhead.os),vt.gzhead.extra&&vt.gzhead.extra.length&&(st(vt,255&vt.gzhead.extra.length),st(vt,vt.gzhead.extra.length>>8&255)),vt.gzhead.hcrc&&(ht.adler=tt(ht.adler,vt.pending_buf,vt.pending,0)),vt.gzindex=0,vt.status=69):(st(vt,0),st(vt,0),st(vt,0),st(vt,0),st(vt,0),st(vt,vt.level===9?2:vt.strategy>=2||vt.level<2?4:0),st(vt,3),vt.status=113);else{var _t=8+(vt.w_bits-8<<4)<<8;_t|=(vt.strategy>=2||vt.level<2?0:vt.level<6?1:vt.level===6?2:3)<<6,vt.strstart!==0&&(_t|=32),_t+=31-_t%31,vt.status=113,ct(vt,_t),vt.strstart!==0&&(ct(vt,ht.adler>>>16),ct(vt,65535&ht.adler)),ht.adler=1}if(vt.status===69)if(vt.gzhead.extra){for(Tt=vt.pending;vt.gzindex<(65535&vt.gzhead.extra.length)&&(vt.pending!==vt.pending_buf_size||(vt.gzhead.hcrc&&vt.pending>Tt&&(ht.adler=tt(ht.adler,vt.pending_buf,vt.pending-Tt,Tt)),dt(ht),Tt=vt.pending,vt.pending!==vt.pending_buf_size));)st(vt,255&vt.gzhead.extra[vt.gzindex]),vt.gzindex++;vt.gzhead.hcrc&&vt.pending>Tt&&(ht.adler=tt(ht.adler,vt.pending_buf,vt.pending-Tt,Tt)),vt.gzindex===vt.gzhead.extra.length&&(vt.gzindex=0,vt.status=73)}else vt.status=73;if(vt.status===73)if(vt.gzhead.name){Tt=vt.pending;do{if(vt.pending===vt.pending_buf_size&&(vt.gzhead.hcrc&&vt.pending>Tt&&(ht.adler=tt(ht.adler,vt.pending_buf,vt.pending-Tt,Tt)),dt(ht),Tt=vt.pending,vt.pending===vt.pending_buf_size)){Ot=1;break}Ot=vt.gzindexTt&&(ht.adler=tt(ht.adler,vt.pending_buf,vt.pending-Tt,Tt)),Ot===0&&(vt.gzindex=0,vt.status=91)}else vt.status=91;if(vt.status===91)if(vt.gzhead.comment){Tt=vt.pending;do{if(vt.pending===vt.pending_buf_size&&(vt.gzhead.hcrc&&vt.pending>Tt&&(ht.adler=tt(ht.adler,vt.pending_buf,vt.pending-Tt,Tt)),dt(ht),Tt=vt.pending,vt.pending===vt.pending_buf_size)){Ot=1;break}Ot=vt.gzindexTt&&(ht.adler=tt(ht.adler,vt.pending_buf,vt.pending-Tt,Tt)),Ot===0&&(vt.status=103)}else vt.status=103;if(vt.status===103&&(vt.gzhead.hcrc?(vt.pending+2>vt.pending_buf_size&&dt(ht),vt.pending+2<=vt.pending_buf_size&&(st(vt,255&ht.adler),st(vt,ht.adler>>8&255),ht.adler=0,vt.status=113)):vt.status=113),vt.pending!==0){if(dt(ht),ht.avail_out===0)return vt.last_flush=-1,0}else if(ht.avail_in===0&&ot(mt)<=ot(It)&&mt!==4)return rt(ht,-5);if(vt.status===666&&ht.avail_in!==0)return rt(ht,-5);if(ht.avail_in!==0||vt.lookahead!==0||mt!==0&&vt.status!==666){var Wt=vt.strategy===2?function(bt,Jt){for(var Zt;;){if(bt.lookahead===0&&(Bt(bt),bt.lookahead===0)){if(Jt===0)return 1;break}if(bt.match_length=0,Zt=_e._tr_tally(bt,0,bt.window[bt.strstart]),bt.lookahead--,bt.strstart++,Zt&&(Ut(bt,!1),bt.strm.avail_out===0))return 1}return bt.insert=0,Jt===4?(Ut(bt,!0),bt.strm.avail_out===0?3:4):bt.last_lit&&(Ut(bt,!1),bt.strm.avail_out===0)?1:2}(vt,mt):vt.strategy===3?function(bt,Jt){for(var Zt,Vt,jt,zt,$t=bt.window;;){if(bt.lookahead<=258){if(Bt(bt),bt.lookahead<=258&&Jt===0)return 1;if(bt.lookahead===0)break}if(bt.match_length=0,bt.lookahead>=3&&bt.strstart>0&&(Vt=$t[jt=bt.strstart-1])===$t[++jt]&&Vt===$t[++jt]&&Vt===$t[++jt]){zt=bt.strstart+258;do;while(Vt===$t[++jt]&&Vt===$t[++jt]&&Vt===$t[++jt]&&Vt===$t[++jt]&&Vt===$t[++jt]&&Vt===$t[++jt]&&Vt===$t[++jt]&&Vt===$t[++jt]&&jtbt.lookahead&&(bt.match_length=bt.lookahead)}if(bt.match_length>=3?(Zt=_e._tr_tally(bt,1,bt.match_length-3),bt.lookahead-=bt.match_length,bt.strstart+=bt.match_length,bt.match_length=0):(Zt=_e._tr_tally(bt,0,bt.window[bt.strstart]),bt.lookahead--,bt.strstart++),Zt&&(Ut(bt,!1),bt.strm.avail_out===0))return 1}return bt.insert=0,Jt===4?(Ut(bt,!0),bt.strm.avail_out===0?3:4):bt.last_lit&&(Ut(bt,!1),bt.strm.avail_out===0)?1:2}(vt,mt):j[vt.level].func(vt,mt);if(Wt!==3&&Wt!==4||(vt.status=666),Wt===1||Wt===3)return ht.avail_out===0&&(vt.last_flush=-1),0;if(Wt===2&&(mt===1?_e._tr_align(vt):mt!==5&&(_e._tr_stored_block(vt,0,0,!1),mt===3&&(ut(vt.head),vt.lookahead===0&&(vt.strstart=0,vt.block_start=0,vt.insert=0))),dt(ht),ht.avail_out===0))return vt.last_flush=-1,0}return mt!==4?0:vt.wrap<=0?1:(vt.wrap===2?(st(vt,255&ht.adler),st(vt,ht.adler>>8&255),st(vt,ht.adler>>16&255),st(vt,ht.adler>>24&255),st(vt,255&ht.total_in),st(vt,ht.total_in>>8&255),st(vt,ht.total_in>>16&255),st(vt,ht.total_in>>24&255)):(ct(vt,ht.adler>>>16),ct(vt,65535&ht.adler)),dt(ht),vt.wrap>0&&(vt.wrap=-vt.wrap),vt.pending!==0?0:1)},s.deflateEnd=function(ht){var mt;return ht&&ht.state?(mt=ht.state.status)!==42&&mt!==69&&mt!==73&&mt!==91&&mt!==103&&mt!==113&&mt!==666?rt(ht,-2):(ht.state=null,mt===113?rt(ht,-3):0):-2},s.deflateSetDictionary=function(ht,mt){var It,vt,Tt,Ot,_t,Wt,bt,Jt,Zt=mt.length;if(!ht||!ht.state||(Ot=(It=ht.state).wrap)===2||Ot===1&&It.status!==42||It.lookahead)return-2;for(Ot===1&&(ht.adler=et(ht.adler,mt,Zt,0)),It.wrap=0,Zt>=It.w_size&&(Ot===0&&(ut(It.head),It.strstart=0,It.block_start=0,It.insert=0),Jt=new $.Buf8(It.w_size),$.arraySet(Jt,mt,Zt-It.w_size,It.w_size,0),mt=Jt,Zt=It.w_size),_t=ht.avail_in,Wt=ht.next_in,bt=ht.input,ht.avail_in=Zt,ht.next_in=0,ht.input=mt,Bt(It);It.lookahead>=3;){vt=It.strstart,Tt=It.lookahead-2;do It.ins_h=(It.ins_h<=0;)Vt[jt]=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 ot=new Array(60);$(ot);var ut=new Array(512);$(ut);var dt=new Array(256);$(dt);var Ut=new Array(29);$(Ut);var st,ct,pt,Bt=new Array(30);function Qt(Vt,jt,zt,$t,nn){this.static_tree=Vt,this.extra_bits=jt,this.extra_base=zt,this.elems=$t,this.max_length=nn,this.has_stree=Vt&&Vt.length}function gt(Vt,jt){this.dyn_tree=Vt,this.max_code=0,this.stat_desc=jt}function ft(Vt){return Vt<256?ut[Vt]:ut[256+(Vt>>>7)]}function Ft(Vt,jt){Vt.pending_buf[Vt.pending++]=255&jt,Vt.pending_buf[Vt.pending++]=jt>>>8&255}function yt(Vt,jt,zt){Vt.bi_valid>16-zt?(Vt.bi_buf|=jt<>16-Vt.bi_valid,Vt.bi_valid+=zt-16):(Vt.bi_buf|=jt<>>=1,zt<<=1;while(--jt>0);return zt>>>1}function ht(Vt,jt,zt){var $t,nn,rn=new Array(16),Dt=0;for($t=1;$t<=15;$t++)rn[$t]=Dt=Dt+zt[$t-1]<<1;for(nn=0;nn<=jt;nn++){var wt=Vt[2*nn+1];wt!==0&&(Vt[2*nn]=xt(rn[wt]++,wt))}}function mt(Vt){var jt;for(jt=0;jt<286;jt++)Vt.dyn_ltree[2*jt]=0;for(jt=0;jt<30;jt++)Vt.dyn_dtree[2*jt]=0;for(jt=0;jt<19;jt++)Vt.bl_tree[2*jt]=0;Vt.dyn_ltree[512]=1,Vt.opt_len=Vt.static_len=0,Vt.last_lit=Vt.matches=0}function It(Vt){Vt.bi_valid>8?Ft(Vt,Vt.bi_buf):Vt.bi_valid>0&&(Vt.pending_buf[Vt.pending++]=Vt.bi_buf),Vt.bi_buf=0,Vt.bi_valid=0}function vt(Vt,jt,zt,$t){var nn=2*jt,rn=2*zt;return Vt[nn]>1;zt>=1;zt--)Tt(Vt,rn,zt);nn=Et;do zt=Vt.heap[1],Vt.heap[1]=Vt.heap[Vt.heap_len--],Tt(Vt,rn,1),$t=Vt.heap[1],Vt.heap[--Vt.heap_max]=zt,Vt.heap[--Vt.heap_max]=$t,rn[2*nn]=rn[2*zt]+rn[2*$t],Vt.depth[nn]=(Vt.depth[zt]>=Vt.depth[$t]?Vt.depth[zt]:Vt.depth[$t])+1,rn[2*zt+1]=rn[2*$t+1]=nn,Vt.heap[1]=nn++,Tt(Vt,rn,1);while(Vt.heap_len>=2);Vt.heap[--Vt.heap_max]=Vt.heap[1],function(Pt,Kt){var Ht,on,sn,gn,Cn,In,Mn=Kt.dyn_tree,rr=Kt.max_code,An=Kt.stat_desc.static_tree,Dn=Kt.stat_desc.has_stree,Hn=Kt.stat_desc.extra_bits,Fr=Kt.stat_desc.extra_base,hr=Kt.stat_desc.max_length,Gr=0;for(gn=0;gn<=15;gn++)Pt.bl_count[gn]=0;for(Mn[2*Pt.heap[Pt.heap_max]+1]=0,Ht=Pt.heap_max+1;Ht<573;Ht++)(gn=Mn[2*Mn[2*(on=Pt.heap[Ht])+1]+1]+1)>hr&&(gn=hr,Gr++),Mn[2*on+1]=gn,on>rr||(Pt.bl_count[gn]++,Cn=0,on>=Fr&&(Cn=Hn[on-Fr]),In=Mn[2*on],Pt.opt_len+=In*(gn+Cn),Dn&&(Pt.static_len+=In*(An[2*on+1]+Cn)));if(Gr!==0){do{for(gn=hr-1;Pt.bl_count[gn]===0;)gn--;Pt.bl_count[gn]--,Pt.bl_count[gn+1]+=2,Pt.bl_count[hr]--,Gr-=2}while(Gr>0);for(gn=hr;gn!==0;gn--)for(on=Pt.bl_count[gn];on!==0;)(sn=Pt.heap[--Ht])>rr||(Mn[2*sn+1]!==gn&&(Pt.opt_len+=(gn-Mn[2*sn+1])*Mn[2*sn],Mn[2*sn+1]=gn),on--)}}(Vt,jt),ht(rn,kt,Vt.bl_count)}function Wt(Vt,jt,zt){var $t,nn,rn=-1,Dt=jt[1],wt=0,Et=7,kt=4;for(Dt===0&&(Et=138,kt=3),jt[2*(zt+1)+1]=65535,$t=0;$t<=zt;$t++)nn=Dt,Dt=jt[2*($t+1)+1],++wt>=7;nn<30;nn++)for(Bt[nn]=rn<<7,jt=0;jt<1<0?(Vt.strm.data_type===2&&(Vt.strm.data_type=function(wt){var Et,kt=4093624447;for(Et=0;Et<=31;Et++,kt>>>=1)if(1&kt&&wt.dyn_ltree[2*Et]!==0)return 0;if(wt.dyn_ltree[18]!==0||wt.dyn_ltree[20]!==0||wt.dyn_ltree[26]!==0)return 1;for(Et=32;Et<256;Et++)if(wt.dyn_ltree[2*Et]!==0)return 1;return 0}(Vt)),_t(Vt,Vt.l_desc),_t(Vt,Vt.d_desc),Dt=function(wt){var Et;for(Wt(wt,wt.dyn_ltree,wt.l_desc.max_code),Wt(wt,wt.dyn_dtree,wt.d_desc.max_code),_t(wt,wt.bl_desc),Et=18;Et>=3&&wt.bl_tree[2*nt[Et]+1]===0;Et--);return wt.opt_len+=3*(Et+1)+5+5+4,Et}(Vt),nn=Vt.opt_len+3+7>>>3,(rn=Vt.static_len+3+7>>>3)<=nn&&(nn=rn)):nn=rn=zt+5,zt+4<=nn&&jt!==-1?Zt(Vt,jt,zt,$t):Vt.strategy===4||rn===nn?(yt(Vt,2+($t?1:0),3),Ot(Vt,rt,ot)):(yt(Vt,4+($t?1:0),3),function(wt,Et,kt,Pt){var Kt;for(yt(wt,Et-257,5),yt(wt,kt-1,5),yt(wt,Pt-4,4),Kt=0;Kt>>8&255,Vt.pending_buf[Vt.d_buf+2*Vt.last_lit+1]=255&jt,Vt.pending_buf[Vt.l_buf+Vt.last_lit]=255&zt,Vt.last_lit++,jt===0?Vt.dyn_ltree[2*zt]++:(Vt.matches++,jt--,Vt.dyn_ltree[2*(dt[zt]+256+1)]++,Vt.dyn_dtree[2*ft(jt)]++),Vt.last_lit===Vt.lit_bufsize-1},s._tr_align=function(Vt){yt(Vt,2,3),Ct(Vt,256,rt),function(jt){jt.bi_valid===16?(Ft(jt,jt.bi_buf),jt.bi_buf=0,jt.bi_valid=0):jt.bi_valid>=8&&(jt.pending_buf[jt.pending++]=255&jt.bi_buf,jt.bi_buf>>=8,jt.bi_valid-=8)}(Vt)}},function(o,s,_){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"}},function(o,s,_){var j=_(38),$=_(74),_e=_(75),et=_(181),tt=_(182);function nt(gt){return(gt>>>24&255)+(gt>>>8&65280)+((65280>)<<8)+((255>)<<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 ot(gt){var ft;return gt&>.state?(ft=gt.state,gt.total_in=gt.total_out=ft.total=0,gt.msg="",ft.wrap&&(gt.adler=1&ft.wrap),ft.mode=1,ft.last=0,ft.havedict=0,ft.dmax=32768,ft.head=null,ft.hold=0,ft.bits=0,ft.lencode=ft.lendyn=new j.Buf32(852),ft.distcode=ft.distdyn=new j.Buf32(592),ft.sane=1,ft.back=-1,0):-2}function ut(gt){var ft;return gt&>.state?((ft=gt.state).wsize=0,ft.whave=0,ft.wnext=0,ot(gt)):-2}function dt(gt,ft){var Ft,yt;return gt&>.state?(yt=gt.state,ft<0?(Ft=0,ft=-ft):(Ft=1+(ft>>4),ft<48&&(ft&=15)),ft&&(ft<8||ft>15)?-2:(yt.window!==null&&yt.wbits!==ft&&(yt.window=null),yt.wrap=Ft,yt.wbits=ft,ut(gt))):-2}function Ut(gt,ft){var Ft,yt;return gt?(yt=new rt,gt.state=yt,yt.window=null,(Ft=dt(gt,ft))!==0&&(gt.state=null),Ft):-2}var st,ct,pt=!0;function Bt(gt){if(pt){var ft;for(st=new j.Buf32(512),ct=new j.Buf32(32),ft=0;ft<144;)gt.lens[ft++]=8;for(;ft<256;)gt.lens[ft++]=9;for(;ft<280;)gt.lens[ft++]=7;for(;ft<288;)gt.lens[ft++]=8;for(tt(1,gt.lens,0,288,st,0,gt.work,{bits:9}),ft=0;ft<32;)gt.lens[ft++]=5;tt(2,gt.lens,0,32,ct,0,gt.work,{bits:5}),pt=!1}gt.lencode=st,gt.lenbits=9,gt.distcode=ct,gt.distbits=5}function Qt(gt,ft,Ft,yt){var Ct,xt=gt.state;return xt.window===null&&(xt.wsize=1<=xt.wsize?(j.arraySet(xt.window,ft,Ft-xt.wsize,xt.wsize,0),xt.wnext=0,xt.whave=xt.wsize):((Ct=xt.wsize-xt.wnext)>yt&&(Ct=yt),j.arraySet(xt.window,ft,Ft-yt,Ct,xt.wnext),(yt-=Ct)?(j.arraySet(xt.window,ft,Ft-yt,yt,0),xt.wnext=yt,xt.whave=xt.wsize):(xt.wnext+=Ct,xt.wnext===xt.wsize&&(xt.wnext=0),xt.whave>>8&255,Ft.check=_e(Ft.check,Pt,2,0),vt=0,Tt=0,Ft.mode=2;break}if(Ft.flags=0,Ft.head&&(Ft.head.done=!1),!(1&Ft.wrap)||(((255&vt)<<8)+(vt>>8))%31){gt.msg="incorrect header check",Ft.mode=30;break}if((15&vt)!=8){gt.msg="unknown compression method",Ft.mode=30;break}if(Tt-=4,rn=8+(15&(vt>>>=4)),Ft.wbits===0)Ft.wbits=rn;else if(rn>Ft.wbits){gt.msg="invalid window size",Ft.mode=30;break}Ft.dmax=1<>8&1),512&Ft.flags&&(Pt[0]=255&vt,Pt[1]=vt>>>8&255,Ft.check=_e(Ft.check,Pt,2,0)),vt=0,Tt=0,Ft.mode=3;case 3:for(;Tt<32;){if(mt===0)break e;mt--,vt+=yt[xt++]<>>8&255,Pt[2]=vt>>>16&255,Pt[3]=vt>>>24&255,Ft.check=_e(Ft.check,Pt,4,0)),vt=0,Tt=0,Ft.mode=4;case 4:for(;Tt<16;){if(mt===0)break e;mt--,vt+=yt[xt++]<>8),512&Ft.flags&&(Pt[0]=255&vt,Pt[1]=vt>>>8&255,Ft.check=_e(Ft.check,Pt,2,0)),vt=0,Tt=0,Ft.mode=5;case 5:if(1024&Ft.flags){for(;Tt<16;){if(mt===0)break e;mt--,vt+=yt[xt++]<>>8&255,Ft.check=_e(Ft.check,Pt,2,0)),vt=0,Tt=0}else Ft.head&&(Ft.head.extra=null);Ft.mode=6;case 6:if(1024&Ft.flags&&((Wt=Ft.length)>mt&&(Wt=mt),Wt&&(Ft.head&&(rn=Ft.head.extra_len-Ft.length,Ft.head.extra||(Ft.head.extra=new Array(Ft.head.extra_len)),j.arraySet(Ft.head.extra,yt,xt,Wt,rn)),512&Ft.flags&&(Ft.check=_e(Ft.check,yt,Wt,xt)),mt-=Wt,xt+=Wt,Ft.length-=Wt),Ft.length))break e;Ft.length=0,Ft.mode=7;case 7:if(2048&Ft.flags){if(mt===0)break e;Wt=0;do rn=yt[xt+Wt++],Ft.head&&rn&&Ft.length<65536&&(Ft.head.name+=String.fromCharCode(rn));while(rn&&Wt>9&1,Ft.head.done=!0),gt.adler=Ft.check=0,Ft.mode=12;break;case 10:for(;Tt<32;){if(mt===0)break e;mt--,vt+=yt[xt++]<>>=7&Tt,Tt-=7&Tt,Ft.mode=27;break}for(;Tt<3;){if(mt===0)break e;mt--,vt+=yt[xt++]<>>=1)){case 0:Ft.mode=14;break;case 1:if(Bt(Ft),Ft.mode=20,ft===6){vt>>>=2,Tt-=2;break e}break;case 2:Ft.mode=17;break;case 3:gt.msg="invalid block type",Ft.mode=30}vt>>>=2,Tt-=2;break;case 14:for(vt>>>=7&Tt,Tt-=7&Tt;Tt<32;){if(mt===0)break e;mt--,vt+=yt[xt++]<>>16^65535)){gt.msg="invalid stored block lengths",Ft.mode=30;break}if(Ft.length=65535&vt,vt=0,Tt=0,Ft.mode=15,ft===6)break e;case 15:Ft.mode=16;case 16:if(Wt=Ft.length){if(Wt>mt&&(Wt=mt),Wt>It&&(Wt=It),Wt===0)break e;j.arraySet(Ct,yt,xt,Wt,ht),mt-=Wt,xt+=Wt,It-=Wt,ht+=Wt,Ft.length-=Wt;break}Ft.mode=12;break;case 17:for(;Tt<14;){if(mt===0)break e;mt--,vt+=yt[xt++]<>>=5,Tt-=5,Ft.ndist=1+(31&vt),vt>>>=5,Tt-=5,Ft.ncode=4+(15&vt),vt>>>=4,Tt-=4,Ft.nlen>286||Ft.ndist>30){gt.msg="too many length or distance symbols",Ft.mode=30;break}Ft.have=0,Ft.mode=18;case 18:for(;Ft.have>>=3,Tt-=3}for(;Ft.have<19;)Ft.lens[Kt[Ft.have++]]=0;if(Ft.lencode=Ft.lendyn,Ft.lenbits=7,wt={bits:Ft.lenbits},Dt=tt(0,Ft.lens,0,19,Ft.lencode,0,Ft.work,wt),Ft.lenbits=wt.bits,Dt){gt.msg="invalid code lengths set",Ft.mode=30;break}Ft.have=0,Ft.mode=19;case 19:for(;Ft.have>>16&255,jt=65535&kt,!((Zt=kt>>>24)<=Tt);){if(mt===0)break e;mt--,vt+=yt[xt++]<>>=Zt,Tt-=Zt,Ft.lens[Ft.have++]=jt;else{if(jt===16){for(Et=Zt+2;Tt>>=Zt,Tt-=Zt,Ft.have===0){gt.msg="invalid bit length repeat",Ft.mode=30;break}rn=Ft.lens[Ft.have-1],Wt=3+(3&vt),vt>>>=2,Tt-=2}else if(jt===17){for(Et=Zt+3;Tt>>=Zt)),vt>>>=3,Tt-=3}else{for(Et=Zt+7;Tt>>=Zt)),vt>>>=7,Tt-=7}if(Ft.have+Wt>Ft.nlen+Ft.ndist){gt.msg="invalid bit length repeat",Ft.mode=30;break}for(;Wt--;)Ft.lens[Ft.have++]=rn}}if(Ft.mode===30)break;if(Ft.lens[256]===0){gt.msg="invalid code -- missing end-of-block",Ft.mode=30;break}if(Ft.lenbits=9,wt={bits:Ft.lenbits},Dt=tt(1,Ft.lens,0,Ft.nlen,Ft.lencode,0,Ft.work,wt),Ft.lenbits=wt.bits,Dt){gt.msg="invalid literal/lengths set",Ft.mode=30;break}if(Ft.distbits=6,Ft.distcode=Ft.distdyn,wt={bits:Ft.distbits},Dt=tt(2,Ft.lens,Ft.nlen,Ft.ndist,Ft.distcode,0,Ft.work,wt),Ft.distbits=wt.bits,Dt){gt.msg="invalid distances set",Ft.mode=30;break}if(Ft.mode=20,ft===6)break e;case 20:Ft.mode=21;case 21:if(mt>=6&&It>=258){gt.next_out=ht,gt.avail_out=It,gt.next_in=xt,gt.avail_in=mt,Ft.hold=vt,Ft.bits=Tt,et(gt,_t),ht=gt.next_out,Ct=gt.output,It=gt.avail_out,xt=gt.next_in,yt=gt.input,mt=gt.avail_in,vt=Ft.hold,Tt=Ft.bits,Ft.mode===12&&(Ft.back=-1);break}for(Ft.back=0;Vt=(kt=Ft.lencode[vt&(1<>>16&255,jt=65535&kt,!((Zt=kt>>>24)<=Tt);){if(mt===0)break e;mt--,vt+=yt[xt++]<>zt)])>>>16&255,jt=65535&kt,!(zt+(Zt=kt>>>24)<=Tt);){if(mt===0)break e;mt--,vt+=yt[xt++]<>>=zt,Tt-=zt,Ft.back+=zt}if(vt>>>=Zt,Tt-=Zt,Ft.back+=Zt,Ft.length=jt,Vt===0){Ft.mode=26;break}if(32&Vt){Ft.back=-1,Ft.mode=12;break}if(64&Vt){gt.msg="invalid literal/length code",Ft.mode=30;break}Ft.extra=15&Vt,Ft.mode=22;case 22:if(Ft.extra){for(Et=Ft.extra;Tt>>=Ft.extra,Tt-=Ft.extra,Ft.back+=Ft.extra}Ft.was=Ft.length,Ft.mode=23;case 23:for(;Vt=(kt=Ft.distcode[vt&(1<>>16&255,jt=65535&kt,!((Zt=kt>>>24)<=Tt);){if(mt===0)break e;mt--,vt+=yt[xt++]<>zt)])>>>16&255,jt=65535&kt,!(zt+(Zt=kt>>>24)<=Tt);){if(mt===0)break e;mt--,vt+=yt[xt++]<>>=zt,Tt-=zt,Ft.back+=zt}if(vt>>>=Zt,Tt-=Zt,Ft.back+=Zt,64&Vt){gt.msg="invalid distance code",Ft.mode=30;break}Ft.offset=jt,Ft.extra=15&Vt,Ft.mode=24;case 24:if(Ft.extra){for(Et=Ft.extra;Tt>>=Ft.extra,Tt-=Ft.extra,Ft.back+=Ft.extra}if(Ft.offset>Ft.dmax){gt.msg="invalid distance too far back",Ft.mode=30;break}Ft.mode=25;case 25:if(It===0)break e;if(Wt=_t-It,Ft.offset>Wt){if((Wt=Ft.offset-Wt)>Ft.whave&&Ft.sane){gt.msg="invalid distance too far back",Ft.mode=30;break}Wt>Ft.wnext?(Wt-=Ft.wnext,bt=Ft.wsize-Wt):bt=Ft.wnext-Wt,Wt>Ft.length&&(Wt=Ft.length),Jt=Ft.window}else Jt=Ct,bt=ht-Ft.offset,Wt=Ft.length;Wt>It&&(Wt=It),It-=Wt,Ft.length-=Wt;do Ct[ht++]=Jt[bt++];while(--Wt);Ft.length===0&&(Ft.mode=21);break;case 26:if(It===0)break e;Ct[ht++]=Ft.length,It--,Ft.mode=21;break;case 27:if(Ft.wrap){for(;Tt<32;){if(mt===0)break e;mt--,vt|=yt[xt++]<>>=Ct=yt>>>24,Bt-=Ct,(Ct=yt>>>16&255)===0)Tt[nt++]=65535&yt;else{if(!(16&Ct)){if(!(64&Ct)){yt=Qt[(65535&yt)+(pt&(1<>>=Ct,Bt-=Ct),Bt<15&&(pt+=vt[et++]<>>=Ct=yt>>>24,Bt-=Ct,!(16&(Ct=yt>>>16&255))){if(!(64&Ct)){yt=gt[(65535&yt)+(pt&(1<ut){j.msg="invalid distance too far back",_e.mode=30;break e}if(pt>>>=Ct,Bt-=Ct,ht>(Ct=nt-rt)){if((Ct=ht-Ct)>Ut&&_e.sane){j.msg="invalid distance too far back",_e.mode=30;break e}if(mt=0,It=ct,st===0){if(mt+=dt-Ct,Ct2;)Tt[nt++]=It[mt++],Tt[nt++]=It[mt++],Tt[nt++]=It[mt++],xt-=3;xt&&(Tt[nt++]=It[mt++],xt>1&&(Tt[nt++]=It[mt++]))}else{mt=nt-ht;do Tt[nt++]=Tt[mt++],Tt[nt++]=Tt[mt++],Tt[nt++]=Tt[mt++],xt-=3;while(xt>2);xt&&(Tt[nt++]=Tt[mt++],xt>1&&(Tt[nt++]=Tt[mt++]))}break}}break}}while(et>3,pt&=(1<<(Bt-=xt<<3))-1,j.next_in=et,j.next_out=nt,j.avail_in=et=1&&zt[Tt]===0;Tt--);if(Ot>Tt&&(Ot=Tt),Tt===0)return dt[Ut++]=20971520,dt[Ut++]=20971520,ct.bits=1,0;for(vt=1;vt0&&(nt===0||Tt!==1))return-1;for($t[1]=0,mt=1;mt<15;mt++)$t[mt+1]=$t[mt]+zt[mt];for(It=0;It852||nt===2&&Jt>592)return 1;for(;;){yt=mt-Wt,st[It]Ft?(Ct=nn[rn+st[It]],xt=Vt[jt+st[It]]):(Ct=96,xt=0),pt=1<>Wt)+(Bt-=pt)]=yt<<24|Ct<<16|xt|0;while(Bt!==0);for(pt=1<>=1;if(pt!==0?(Zt&=pt-1,Zt+=pt):Zt=0,It++,--zt[mt]==0){if(mt===Tt)break;mt=rt[ot+st[It]]}if(mt>Ot&&(Zt>)!==Qt){for(Wt===0&&(Wt=Ot),ft+=vt,bt=1<<(_t=mt-Wt);_t+Wt852||nt===2&&Jt>592)return 1;dt[Qt=Zt>]=Ot<<24|_t<<16|ft-Ut|0}}return Zt!==0&&(dt[ft+Zt]=mt-Wt<<24|64<<16|0),ct.bits=Ot,0}},function(o,s,_){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}},function(o,s){},function(o,s,_){function j(ut,dt){var Ut=Object.keys(ut);if(Object.getOwnPropertySymbols){var st=Object.getOwnPropertySymbols(ut);dt&&(st=st.filter(function(ct){return Object.getOwnPropertyDescriptor(ut,ct).enumerable})),Ut.push.apply(Ut,st)}return Ut}function $(ut){for(var dt=1;dt0?this.tail.next=ct:this.head=ct,this.tail=ct,++this.length}},{key:"unshift",value:function(st){var ct={data:st,next:this.head};this.length===0&&(this.tail=ct),this.head=ct,++this.length}},{key:"shift",value:function(){if(this.length!==0){var st=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,st}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(st){if(this.length===0)return"";for(var ct=this.head,pt=""+ct.data;ct=ct.next;)pt+=st+ct.data;return pt}},{key:"concat",value:function(st){if(this.length===0)return nt.alloc(0);for(var ct,pt,Bt,Qt=nt.allocUnsafe(st>>>0),gt=this.head,ft=0;gt;)ct=gt.data,pt=Qt,Bt=ft,nt.prototype.copy.call(ct,pt,Bt),ft+=gt.data.length,gt=gt.next;return Qt}},{key:"consume",value:function(st,ct){var pt;return stQt.length?Qt.length:st;if(gt===Qt.length?Bt+=Qt:Bt+=Qt.slice(0,st),(st-=gt)==0){gt===Qt.length?(++pt,ct.next?this.head=ct.next:this.head=this.tail=null):(this.head=ct,ct.data=Qt.slice(gt));break}++pt}return this.length-=pt,Bt}},{key:"_getBuffer",value:function(st){var ct=nt.allocUnsafe(st),pt=this.head,Bt=1;for(pt.data.copy(ct),st-=pt.data.length;pt=pt.next;){var Qt=pt.data,gt=st>Qt.length?Qt.length:st;if(Qt.copy(ct,ct.length-st,0,gt),(st-=gt)==0){gt===Qt.length?(++Bt,pt.next?this.head=pt.next:this.head=this.tail=null):(this.head=pt,pt.data=Qt.slice(gt));break}++Bt}return this.length-=Bt,ct}},{key:ot,value:function(st,ct){return rt(this,$($({},ct),{},{depth:0,customInspect:!1}))}}])&&et(dt.prototype,Ut),Object.defineProperty(dt,"prototype",{writable:!1}),ut}()},function(o,s){},function(o,s,_){(function(j){var $;function _e(gt,ft,Ft){return(ft=function(yt){var Ct=function(xt,ht){if(typeof xt!="object"||xt===null)return xt;var mt=xt[Symbol.toPrimitive];if(mt!==void 0){var It=mt.call(xt,ht||"default");if(typeof It!="object")return It;throw new TypeError("@@toPrimitive must return a primitive value.")}return(ht==="string"?String:Number)(xt)}(yt,"string");return typeof Ct=="symbol"?Ct:String(Ct)}(ft))in gt?Object.defineProperty(gt,ft,{value:Ft,enumerable:!0,configurable:!0,writable:!0}):gt[ft]=Ft,gt}var et=_(48),tt=Symbol("lastResolve"),nt=Symbol("lastReject"),rt=Symbol("error"),ot=Symbol("ended"),ut=Symbol("lastPromise"),dt=Symbol("handlePromise"),Ut=Symbol("stream");function st(gt,ft){return{value:gt,done:ft}}function ct(gt){var ft=gt[tt];if(ft!==null){var Ft=gt[Ut].read();Ft!==null&&(gt[ut]=null,gt[tt]=null,gt[nt]=null,ft(st(Ft,!1)))}}function pt(gt){j.nextTick(ct,gt)}var Bt=Object.getPrototypeOf(function(){}),Qt=Object.setPrototypeOf((_e($={get stream(){return this[Ut]},next:function(){var gt=this,ft=this[rt];if(ft!==null)return Promise.reject(ft);if(this[ot])return Promise.resolve(st(void 0,!0));if(this[Ut].destroyed)return new Promise(function(xt,ht){j.nextTick(function(){gt[rt]?ht(gt[rt]):xt(st(void 0,!0))})});var Ft,yt=this[ut];if(yt)Ft=new Promise(function(xt,ht){return function(mt,It){xt.then(function(){ht[ot]?mt(st(void 0,!0)):ht[dt](mt,It)},It)}}(yt,this));else{var Ct=this[Ut].read();if(Ct!==null)return Promise.resolve(st(Ct,!1));Ft=new Promise(this[dt])}return this[ut]=Ft,Ft}},Symbol.asyncIterator,function(){return this}),_e($,"return",function(){var gt=this;return new Promise(function(ft,Ft){gt[Ut].destroy(null,function(yt){yt?Ft(yt):ft(st(void 0,!0))})})}),$),Bt);o.exports=function(gt){var ft,Ft=Object.create(Qt,(_e(ft={},Ut,{value:gt,writable:!0}),_e(ft,tt,{value:null,writable:!0}),_e(ft,nt,{value:null,writable:!0}),_e(ft,rt,{value:null,writable:!0}),_e(ft,ot,{value:gt._readableState.endEmitted,writable:!0}),_e(ft,dt,{value:function(yt,Ct){var xt=Ft[Ut].read();xt?(Ft[ut]=null,Ft[tt]=null,Ft[nt]=null,yt(st(xt,!1))):(Ft[tt]=yt,Ft[nt]=Ct)},writable:!0}),ft));return Ft[ut]=null,et(gt,function(yt){if(yt&&yt.code!=="ERR_STREAM_PREMATURE_CLOSE"){var Ct=Ft[nt];return Ct!==null&&(Ft[ut]=null,Ft[tt]=null,Ft[nt]=null,Ct(yt)),void(Ft[rt]=yt)}var xt=Ft[tt];xt!==null&&(Ft[ut]=null,Ft[tt]=null,Ft[nt]=null,xt(st(void 0,!0))),Ft[ot]=!0}),gt.on("readable",pt.bind(null,Ft)),Ft}}).call(this,_(2))},function(o,s){o.exports=function(){throw new Error("Readable.from is not available in the browser")}},function(o,s,_){o.exports=$;var j=_(81);function $(_e){if(!(this instanceof $))return new $(_e);j.call(this,_e)}_(7)($,j),$.prototype._transform=function(_e,et,tt){tt(null,_e)}},function(o,s,_){var j,$=_(24).codes,_e=$.ERR_MISSING_ARGS,et=$.ERR_STREAM_DESTROYED;function tt(dt){if(dt)throw dt}function nt(dt,Ut,st,ct){ct=function(Qt){var gt=!1;return function(){gt||(gt=!0,Qt.apply(void 0,arguments))}}(ct);var pt=!1;dt.on("close",function(){pt=!0}),j===void 0&&(j=_(48)),j(dt,{readable:Ut,writable:st},function(Qt){if(Qt)return ct(Qt);pt=!0,ct()});var Bt=!1;return function(Qt){if(!pt&&!Bt)return Bt=!0,function(gt){return gt.setHeader&&typeof gt.abort=="function"}(dt)?dt.abort():typeof dt.destroy=="function"?dt.destroy():void ct(Qt||new et("pipe"))}}function rt(dt){dt()}function ot(dt,Ut){return dt.pipe(Ut)}function ut(dt){return dt.length?typeof dt[dt.length-1]!="function"?tt:dt.pop():tt}o.exports=function(){for(var dt=arguments.length,Ut=new Array(dt),st=0;st0,function(Ft){ct||(ct=Ft),Ft&&Bt.forEach(rt),ft||(Bt.forEach(rt),pt(ct))})});return Ut.reduce(ot)}},function(o,s,_){var j=_(192)(function $(_e,et){return(et=et||{}).namespace=_e,et.prod=!0,et.dev=!1,et.force||$.force?$.yep(et):$.nope(et)});o.exports=j},function(o,s){var _=[],j=[],$=function(){};function _e(st){return!~_.indexOf(st)&&(_.push(st),!0)}function et(st){$=st}function tt(st){for(var ct=[],pt=0;pt<_.length;pt++)if(_[pt].async)ct.push(_[pt]);else if(_[pt](st))return!0;return!!ct.length&&new Promise(function(Bt){Promise.all(ct.map(function(Qt){return Qt(st)})).then(function(Qt){Bt(Qt.some(Boolean))})})}function nt(st){return!~j.indexOf(st)&&(j.push(st),!0)}function rt(){$.apply($,arguments)}function ot(st){for(var ct=0;ctnt.start)&&(rt?rt(null,Ut):dt.emit("line",Ut)),ct++,Ut=""),setTimeout(Qt,1e3);var Ft=ut.write(ot.slice(0,ft));rt||dt.emit("data",Ft);for(var yt=(Ft=(Ut+Ft).split(/\n+/)).length-1,Ct=0;Ctnt.start)&&(rt?rt(null,Ft[Ct]):dt.emit("line",Ft[Ct])),ct++;return Ut=Ft[yt],st+=ft,Qt()});$.close(Bt,tt)})()}),rt?dt.destroy:dt}}).call(this,_(5).Buffer)},function(o,s,_){(function(j,$){function _e(ft){return(_e=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})(ft)}function et(ft,Ft){var yt=Object.keys(ft);if(Object.getOwnPropertySymbols){var Ct=Object.getOwnPropertySymbols(ft);Ft&&(Ct=Ct.filter(function(xt){return Object.getOwnPropertyDescriptor(ft,xt).enumerable})),yt.push.apply(yt,Ct)}return yt}function tt(ft){for(var Ft=1;Ft"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 yt,Ct=st(ft);if(Ft){var xt=st(this).constructor;yt=Reflect.construct(Ct,arguments,xt)}else yt=Ct.apply(this,arguments);return Ut(this,yt)}}function Ut(ft,Ft){if(Ft&&(_e(Ft)==="object"||typeof Ft=="function"))return Ft;if(Ft!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(yt){if(yt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return yt}(ft)}function st(ft){return(st=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Ft){return Ft.__proto__||Object.getPrototypeOf(Ft)})(ft)}var ct=_(82),pt=_(205),Bt=_(33).Stream,Qt=_(14),gt=_(29);o.exports=function(ft){(function(ht,mt){if(typeof mt!="function"&&mt!==null)throw new TypeError("Super expression must either be null or a function");ht.prototype=Object.create(mt&&mt.prototype,{constructor:{value:ht,writable:!0,configurable:!0}}),Object.defineProperty(ht,"prototype",{writable:!1}),mt&&ut(ht,mt)})(xt,ft);var Ft,yt,Ct=dt(xt);function xt(){var ht,mt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return rt(this,xt),(ht=Ct.call(this,mt)).options=mt,ht.name=mt.name||"http",ht.ssl=!!mt.ssl,ht.host=mt.host||"localhost",ht.port=mt.port,ht.auth=mt.auth,ht.path=mt.path||"",ht.agent=mt.agent,ht.headers=mt.headers||{},ht.headers["content-type"]="application/json",ht.batch=mt.batch||!1,ht.batchInterval=mt.batchInterval||5e3,ht.batchCount=mt.batchCount||10,ht.batchOptions=[],ht.batchTimeoutID=-1,ht.batchCallback={},ht.port||(ht.port=ht.ssl?443:80),ht}return Ft=xt,(yt=[{key:"log",value:function(ht,mt){var It=this;this._request(ht,function(vt,Tt){Tt&&Tt.statusCode!==200&&(vt=new Error("Invalid HTTP Status Code: ".concat(Tt.statusCode))),vt?It.emit("warn",vt):It.emit("logged",ht)}),mt&&j(mt)}},{key:"query",value:function(ht,mt){typeof ht=="function"&&(mt=ht,ht={}),(ht={method:"query",params:this.normalizeQuery(ht)}).params.path&&(ht.path=ht.params.path,delete ht.params.path),ht.params.auth&&(ht.auth=ht.params.auth,delete ht.params.auth),this._request(ht,function(It,vt,Tt){if(vt&&vt.statusCode!==200&&(It=new Error("Invalid HTTP Status Code: ".concat(vt.statusCode))),It)return mt(It);if(typeof Tt=="string")try{Tt=JSON.parse(Tt)}catch(Ot){return mt(Ot)}mt(null,Tt)})}},{key:"stream",value:function(){var ht=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},mt=new Bt;(ht={method:"stream",params:ht}).params.path&&(ht.path=ht.params.path,delete ht.params.path),ht.params.auth&&(ht.auth=ht.params.auth,delete ht.params.auth);var It="",vt=this._request(ht);return mt.destroy=function(){return vt.destroy()},vt.on("data",function(Tt){for(var Ot=(Tt=(It+Tt).split(/\n+/)).length-1,_t=0;_t0&&(clearTimeout(this.batchTimeoutID),this.batchTimeoutID=-1);var vt=this.batchOptions.slice();this.batchOptions=[],this._doRequest(vt,ht,mt,It)}},{key:"_doRequest",value:function(ht,mt,It,vt){var Tt=Object.assign({},this.headers);It&&It.bearer&&(Tt.Authorization="Bearer ".concat(It.bearer));var Ot=(this.ssl?pt:ct).request(tt(tt({},this.options),{},{method:"POST",host:this.host,port:this.port,path:"/".concat(vt.replace(/^\//,"")),headers:Tt,auth:It&&It.username&&It.password?"".concat(It.username,":").concat(It.password):"",agent:this.agent}));Ot.on("error",mt),Ot.on("response",function(_t){return _t.on("end",function(){return mt(null,_t)}).resume()}),Ot.end($.from(gt(ht,this.options.replacer),"utf8"))}}])&&ot(Ft.prototype,yt),Object.defineProperty(Ft,"prototype",{writable:!1}),xt}(Qt)}).call(this,_(19).setImmediate,_(5).Buffer)},function(o,s,_){(function(j,$,_e){var et=_(83),tt=_(7),nt=_(84),rt=_(31),ot=_(196),ut=nt.IncomingMessage,dt=nt.readyStates,Ut=o.exports=function(ct){var pt,Bt=this;rt.Writable.call(Bt),Bt._opts=ct,Bt._body=[],Bt._headers={},ct.auth&&Bt.setHeader("Authorization","Basic "+new j(ct.auth).toString("base64")),Object.keys(ct.headers).forEach(function(gt){Bt.setHeader(gt,ct.headers[gt])});var Qt=!0;if(ct.mode==="disable-fetch"||"requestTimeout"in ct&&!et.abortController)Qt=!1,pt=!0;else if(ct.mode==="prefer-streaming")pt=!1;else if(ct.mode==="allow-wrong-content-type")pt=!et.overrideMimeType;else{if(ct.mode&&ct.mode!=="default"&&ct.mode!=="prefer-fast")throw new Error("Invalid value for opts.mode");pt=!0}Bt._mode=function(gt,ft){return et.fetch&&ft?"fetch":et.mozchunkedarraybuffer?"moz-chunked-arraybuffer":et.msstream?"ms-stream":et.arraybuffer&>?"arraybuffer":et.vbArray&>?"text:vbarray":"text"}(pt,Qt),Bt._fetchTimer=null,Bt.on("finish",function(){Bt._onFinish()})};tt(Ut,rt.Writable),Ut.prototype.setHeader=function(ct,pt){var Bt=ct.toLowerCase();st.indexOf(Bt)===-1&&(this._headers[Bt]={name:ct,value:pt})},Ut.prototype.getHeader=function(ct){var pt=this._headers[ct.toLowerCase()];return pt?pt.value:null},Ut.prototype.removeHeader=function(ct){delete this._headers[ct.toLowerCase()]},Ut.prototype._onFinish=function(){var ct=this;if(!ct._destroyed){var pt=ct._opts,Bt=ct._headers,Qt=null;pt.method!=="GET"&&pt.method!=="HEAD"&&(Qt=et.arraybuffer?ot(j.concat(ct._body)):et.blobConstructor?new $.Blob(ct._body.map(function(Ct){return ot(Ct)}),{type:(Bt["content-type"]||{}).value||""}):j.concat(ct._body).toString());var gt=[];if(Object.keys(Bt).forEach(function(Ct){var xt=Bt[Ct].name,ht=Bt[Ct].value;Array.isArray(ht)?ht.forEach(function(mt){gt.push([xt,mt])}):gt.push([xt,ht])}),ct._mode==="fetch"){var ft=null;if(et.abortController){var Ft=new AbortController;ft=Ft.signal,ct._fetchAbortController=Ft,"requestTimeout"in pt&&pt.requestTimeout!==0&&(ct._fetchTimer=$.setTimeout(function(){ct.emit("requestTimeout"),ct._fetchAbortController&&ct._fetchAbortController.abort()},pt.requestTimeout))}$.fetch(ct._opts.url,{method:ct._opts.method,headers:gt,body:Qt||void 0,mode:"cors",credentials:pt.withCredentials?"include":"same-origin",signal:ft}).then(function(Ct){ct._fetchResponse=Ct,ct._connect()},function(Ct){$.clearTimeout(ct._fetchTimer),ct._destroyed||ct.emit("error",Ct)})}else{var yt=ct._xhr=new $.XMLHttpRequest;try{yt.open(ct._opts.method,ct._opts.url,!0)}catch(Ct){return void _e.nextTick(function(){ct.emit("error",Ct)})}"responseType"in yt&&(yt.responseType=ct._mode.split(":")[0]),"withCredentials"in yt&&(yt.withCredentials=!!pt.withCredentials),ct._mode==="text"&&"overrideMimeType"in yt&&yt.overrideMimeType("text/plain; charset=x-user-defined"),"requestTimeout"in pt&&(yt.timeout=pt.requestTimeout,yt.ontimeout=function(){ct.emit("requestTimeout")}),gt.forEach(function(Ct){yt.setRequestHeader(Ct[0],Ct[1])}),ct._response=null,yt.onreadystatechange=function(){switch(yt.readyState){case dt.LOADING:case dt.DONE:ct._onXHRProgress()}},ct._mode==="moz-chunked-arraybuffer"&&(yt.onprogress=function(){ct._onXHRProgress()}),yt.onerror=function(){ct._destroyed||ct.emit("error",new Error("XHR error"))};try{yt.send(Qt)}catch(Ct){return void _e.nextTick(function(){ct.emit("error",Ct)})}}}},Ut.prototype._onXHRProgress=function(){(function(ct){try{var pt=ct.status;return pt!==null&&pt!==0}catch{return!1}})(this._xhr)&&!this._destroyed&&(this._response||this._connect(),this._response._onXHRProgress())},Ut.prototype._connect=function(){var ct=this;ct._destroyed||(ct._response=new ut(ct._xhr,ct._fetchResponse,ct._mode,ct._fetchTimer),ct._response.on("error",function(pt){ct.emit("error",pt)}),ct.emit("response",ct._response))},Ut.prototype._write=function(ct,pt,Bt){this._body.push(ct),Bt()},Ut.prototype.abort=Ut.prototype.destroy=function(){this._destroyed=!0,$.clearTimeout(this._fetchTimer),this._response&&(this._response._destroyed=!0),this._xhr?this._xhr.abort():this._fetchAbortController&&this._fetchAbortController.abort()},Ut.prototype.end=function(ct,pt,Bt){typeof ct=="function"&&(Bt=ct,ct=void 0),rt.Writable.prototype.end.call(this,ct,pt,Bt)},Ut.prototype.flushHeaders=function(){},Ut.prototype.setTimeout=function(){},Ut.prototype.setNoDelay=function(){},Ut.prototype.setSocketKeepAlive=function(){};var st=["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"]}).call(this,_(5).Buffer,_(6),_(2))},function(o,s,_){var j=_(5).Buffer;o.exports=function($){if($ instanceof Uint8Array){if($.byteOffset===0&&$.byteLength===$.buffer.byteLength)return $.buffer;if(typeof $.buffer.slice=="function")return $.buffer.slice($.byteOffset,$.byteOffset+$.byteLength)}if(j.isBuffer($)){for(var _e=new Uint8Array($.length),et=$.length,tt=0;tt= 0x80 (not a basic code point)","invalid-input":"Invalid input"},st=Math.floor,ct=String.fromCharCode;function pt(ht){throw new RangeError(Ut[ht])}function Bt(ht,mt){for(var It=ht.length,vt=[];It--;)vt[It]=mt(ht[It]);return vt}function Qt(ht,mt){var It=ht.split("@"),vt="";return It.length>1&&(vt=It[0]+"@",ht=It[1]),vt+Bt((ht=ht.replace(dt,".")).split("."),mt).join(".")}function gt(ht){for(var mt,It,vt=[],Tt=0,Ot=ht.length;Tt=55296&&mt<=56319&&Tt65535&&(It+=ct((mt-=65536)>>>10&1023|55296),mt=56320|1023&mt),It+=ct(mt)}).join("")}function Ft(ht,mt){return ht+22+75*(ht<26)-((mt!=0)<<5)}function yt(ht,mt,It){var vt=0;for(ht=It?st(ht/700):ht>>1,ht+=st(ht/mt);ht>455;vt+=36)ht=st(ht/35);return st(vt+36*ht/(ht+38))}function Ct(ht){var mt,It,vt,Tt,Ot,_t,Wt,bt,Jt,Zt,Vt,jt=[],zt=ht.length,$t=0,nn=128,rn=72;for((It=ht.lastIndexOf("-"))<0&&(It=0),vt=0;vt=128&&pt("not-basic"),jt.push(ht.charCodeAt(vt));for(Tt=It>0?It+1:0;Tt=zt&&pt("invalid-input"),((bt=(Vt=ht.charCodeAt(Tt++))-48<10?Vt-22:Vt-65<26?Vt-65:Vt-97<26?Vt-97:36)>=36||bt>st((rt-$t)/_t))&&pt("overflow"),$t+=bt*_t,!(bt<(Jt=Wt<=rn?1:Wt>=rn+26?26:Wt-rn));Wt+=36)_t>st(rt/(Zt=36-Jt))&&pt("overflow"),_t*=Zt;rn=yt($t-Ot,mt=jt.length+1,Ot==0),st($t/mt)>rt-nn&&pt("overflow"),nn+=st($t/mt),$t%=mt,jt.splice($t++,0,nn)}return ft(jt)}function xt(ht){var mt,It,vt,Tt,Ot,_t,Wt,bt,Jt,Zt,Vt,jt,zt,$t,nn,rn=[];for(jt=(ht=gt(ht)).length,mt=128,It=0,Ot=72,_t=0;_t=mt&&Vtst((rt-It)/(zt=vt+1))&&pt("overflow"),It+=(Wt-mt)*zt,mt=Wt,_t=0;_trt&&pt("overflow"),Vt==mt){for(bt=It,Jt=36;!(bt<(Zt=Jt<=Ot?1:Jt>=Ot+26?26:Jt-Ot));Jt+=36)nn=bt-Zt,$t=36-Zt,rn.push(ct(Ft(Zt+nn%$t,0))),bt=st(nn/$t);rn.push(ct(Ft(bt,0))),Ot=yt(It,zt,vt==Tt),It=0,++vt}++It,++mt}return rn.join("")}nt={version:"1.4.1",ucs2:{decode:gt,encode:ft},decode:Ct,encode:xt,toASCII:function(ht){return Qt(ht,function(mt){return ut.test(mt)?"xn--"+xt(mt):mt})},toUnicode:function(ht){return Qt(ht,function(mt){return ot.test(mt)?Ct(mt.slice(4).toLowerCase()):mt})}},(_e=(function(){return nt}).call(s,_,s,j))===void 0||(j.exports=_e)})()}).call(this,_(200)(o),_(6))},function(o,s){o.exports=function(_){return _.webpackPolyfill||(_.deprecate=function(){},_.paths=[],_.children||(_.children=[]),Object.defineProperty(_,"loaded",{enumerable:!0,get:function(){return _.l}}),Object.defineProperty(_,"id",{enumerable:!0,get:function(){return _.i}}),_.webpackPolyfill=1),_}},function(o,s,_){o.exports={isString:function(j){return typeof j=="string"},isObject:function(j){return typeof j=="object"&&j!==null},isNull:function(j){return j===null},isNullOrUndefined:function(j){return j==null}}},function(o,s,_){s.decode=s.parse=_(203),s.encode=s.stringify=_(204)},function(o,s,_){function j(_e,et){return Object.prototype.hasOwnProperty.call(_e,et)}o.exports=function(_e,et,tt,nt){et=et||"&",tt=tt||"=";var rt={};if(typeof _e!="string"||_e.length===0)return rt;var ot=/\+/g;_e=_e.split(et);var ut=1e3;nt&&typeof nt.maxKeys=="number"&&(ut=nt.maxKeys);var dt=_e.length;ut>0&&dt>ut&&(dt=ut);for(var Ut=0;Ut=0?(st=Qt.substr(0,gt),ct=Qt.substr(gt+1)):(st=Qt,ct=""),pt=decodeURIComponent(st),Bt=decodeURIComponent(ct),j(rt,pt)?$(rt[pt])?rt[pt].push(Bt):rt[pt]=[rt[pt],Bt]:rt[pt]=Bt}return rt};var $=Array.isArray||function(_e){return Object.prototype.toString.call(_e)==="[object Array]"}},function(o,s,_){var j=function(tt){switch(typeof tt){case"string":return tt;case"boolean":return tt?"true":"false";case"number":return isFinite(tt)?tt:"";default:return""}};o.exports=function(tt,nt,rt,ot){return nt=nt||"&",rt=rt||"=",tt===null&&(tt=void 0),typeof tt=="object"?_e(et(tt),function(ut){var dt=encodeURIComponent(j(ut))+rt;return $(tt[ut])?_e(tt[ut],function(Ut){return dt+encodeURIComponent(j(Ut))}).join(nt):dt+encodeURIComponent(j(tt[ut]))}).join(nt):ot?encodeURIComponent(j(ot))+rt+encodeURIComponent(j(tt)):""};var $=Array.isArray||function(tt){return Object.prototype.toString.call(tt)==="[object Array]"};function _e(tt,nt){if(tt.map)return tt.map(nt);for(var rt=[],ot=0;ot"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 Bt,Qt=ot(ct);if(pt){var gt=ot(this).constructor;Bt=Reflect.construct(Qt,arguments,gt)}else Bt=Qt.apply(this,arguments);return rt(this,Bt)}}function rt(ct,pt){if(pt&&($(pt)==="object"||typeof pt=="function"))return pt;if(pt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Bt){if(Bt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Bt}(ct)}function ot(ct){return(ot=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(pt){return pt.__proto__||Object.getPrototypeOf(pt)})(ct)}var ut=_(86),dt=_(4).MESSAGE,Ut=_(16),st=_(14);o.exports=function(ct){(function(ft,Ft){if(typeof Ft!="function"&&Ft!==null)throw new TypeError("Super expression must either be null or a function");ft.prototype=Object.create(Ft&&Ft.prototype,{constructor:{value:ft,writable:!0,configurable:!0}}),Object.defineProperty(ft,"prototype",{writable:!1}),Ft&&tt(ft,Ft)})(gt,ct);var pt,Bt,Qt=nt(gt);function gt(){var ft,Ft=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(_e(this,gt),ft=Qt.call(this,Ft),!Ft.stream||!ut(Ft.stream))throw new Error("options.stream is required.");return ft._stream=Ft.stream,ft._stream.setMaxListeners(1/0),ft.isObjectMode=Ft.stream._writableState.objectMode,ft.eol=typeof Ft.eol=="string"?Ft.eol:Ut.EOL,ft}return pt=gt,(Bt=[{key:"log",value:function(ft,Ft){var yt=this;if(j(function(){return yt.emit("logged",ft)}),this.isObjectMode)return this._stream.write(ft),void(Ft&&Ft());this._stream.write("".concat(ft[dt]).concat(this.eol)),Ft&&Ft()}}])&&et(pt.prototype,Bt),Object.defineProperty(pt,"prototype",{writable:!1}),gt}(st)}).call(this,_(19).setImmediate)},function(o,s,_){(function(j){function $(vt,Tt,Ot){return Tt in vt?Object.defineProperty(vt,Tt,{value:Ot,enumerable:!0,configurable:!0,writable:!0}):vt[Tt]=Ot,vt}function _e(vt){return(_e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Tt){return typeof Tt}:function(Tt){return Tt&&typeof Symbol=="function"&&Tt.constructor===Symbol&&Tt!==Symbol.prototype?"symbol":typeof Tt})(vt)}function et(vt,Tt){for(var Ot=0;Ot"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 Ot,_t=ot(vt);if(Tt){var Wt=ot(this).constructor;Ot=Reflect.construct(_t,arguments,Wt)}else Ot=_t.apply(this,arguments);return rt(this,Ot)}}function rt(vt,Tt){if(Tt&&(_e(Tt)==="object"||typeof Tt=="function"))return Tt;if(Tt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Ot){if(Ot===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Ot}(vt)}function ot(vt){return(ot=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Tt){return Tt.__proto__||Object.getPrototypeOf(Tt)})(vt)}var ut=_(33),dt=ut.Stream,Ut=ut.Transform,st=_(50),ct=_(4),pt=ct.LEVEL,Bt=ct.SPLAT,Qt=_(86),gt=_(88),ft=_(92),Ft=_(211),yt=_(212),Ct=_(60).warn,xt=_(49),ht=/%[scdjifoO%]/g,mt=function(vt){(function(bt,Jt){if(typeof Jt!="function"&&Jt!==null)throw new TypeError("Super expression must either be null or a function");bt.prototype=Object.create(Jt&&Jt.prototype,{constructor:{value:bt,writable:!0,configurable:!0}}),Object.defineProperty(bt,"prototype",{writable:!1}),Jt&&tt(bt,Jt)})(Wt,vt);var Tt,Ot,_t=nt(Wt);function Wt(bt){var Jt;return function(Zt,Vt){if(!(Zt instanceof Vt))throw new TypeError("Cannot call a class as a function")}(this,Wt),(Jt=_t.call(this,{objectMode:!0})).configure(bt),Jt}return Tt=Wt,(Ot=[{key:"child",value:function(bt){var Jt=this;return Object.create(Jt,{write:{value:function(Zt){var Vt=Object.assign({},bt,Zt);Zt instanceof Error&&(Vt.stack=Zt.stack,Vt.message=Zt.message),Jt.write(Vt)}}})}},{key:"configure",value:function(){var bt=this,Jt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Zt=Jt.silent,Vt=Jt.format,jt=Jt.defaultMeta,zt=Jt.levels,$t=Jt.level,nn=$t===void 0?"info":$t,rn=Jt.exitOnError,Dt=rn===void 0||rn,wt=Jt.transports,Et=Jt.colors,kt=Jt.emitErrs,Pt=Jt.formatters,Kt=Jt.padLevels,Ht=Jt.rewriters,on=Jt.stripColors,sn=Jt.exceptionHandlers,gn=Jt.rejectionHandlers;if(this.transports.length&&this.clear(),this.silent=Zt,this.format=Vt||this.format||_(213)(),this.defaultMeta=jt||null,this.levels=zt||this.levels||xt.npm.levels,this.level=nn,this.exceptions&&this.exceptions.unhandle(),this.rejections&&this.rejections.unhandle(),this.exceptions=new gt(this),this.rejections=new ft(this),this.profilers={},this.exitOnError=Dt,wt&&(wt=Array.isArray(wt)?wt:[wt]).forEach(function(Cn){return bt.add(Cn)}),Et||kt||Pt||Kt||Ht||on)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(` -`));sn&&this.exceptions.handle(sn),gn&&this.rejections.handle(gn)}},{key:"isLevelEnabled",value:function(bt){var Jt=this,Zt=It(this.levels,bt);if(Zt===null)return!1;var Vt=It(this.levels,this.level);return Vt!==null&&(this.transports&&this.transports.length!==0?this.transports.findIndex(function(jt){var zt=It(Jt.levels,jt.level);return zt===null&&(zt=Vt),zt>=Zt})!==-1:Vt>=Zt)}},{key:"log",value:function(bt,Jt){for(var Zt,Vt,jt=arguments.length,zt=new Array(jt>2?jt-2:0),$t=2;$t2?new Ft({transport:bt}):bt;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),bt.handleExceptions&&this.exceptions.handle(),bt.handleRejections&&this.rejections.handle(),this}},{key:"remove",value:function(bt){if(!bt)return this;var Jt=bt;return(!Qt(bt)||bt.log.length>2)&&(Jt=this.transports.filter(function(Zt){return Zt.transport===bt})[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(){Ct.deprecated("setLevels")}},{key:"query",value:function(bt,Jt){typeof bt=="function"&&(Jt=bt,bt={}),bt=bt||{};var Zt={},Vt=Object.assign({},bt.query||{});st(this.transports.filter(function(jt){return!!jt.query}),function(jt,zt){(function($t,nn){bt.query&&typeof $t.formatQuery=="function"&&(bt.query=$t.formatQuery(Vt)),$t.query(bt,function(rn,Dt){if(rn)return nn(rn);typeof $t.formatResults=="function"&&(Dt=$t.formatResults(Dt,bt.format)),nn(null,Dt)})})(jt,function($t,nn){zt&&((nn=$t||nn)&&(Zt[jt.name]=nn),zt()),zt=null})},function(){return Jt(null,Zt)})}},{key:"stream",value:function(){var bt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Jt=new dt,Zt=[];return Jt._streams=Zt,Jt.destroy=function(){for(var Vt=Zt.length;Vt--;)Zt[Vt].destroy()},this.transports.filter(function(Vt){return!!Vt.stream}).forEach(function(Vt){var jt=Vt.stream(bt);jt&&(Zt.push(jt),jt.on("log",function(zt){zt.transport=zt.transport||[],zt.transport.push(Vt.name),Jt.emit("log",zt)}),jt.on("error",function(zt){zt.transport=zt.transport||[],zt.transport.push(Vt.name),Jt.emit("error",zt)}))}),Jt}},{key:"startTimer",value:function(){return new yt(this)}},{key:"profile",value:function(bt){var Jt=Date.now();if(this.profilers[bt]){var Zt=this.profilers[bt];delete this.profilers[bt];for(var Vt=arguments.length,jt=new Array(Vt>1?Vt-1:0),zt=1;ztj($,et)},o.exports=s.default},function(o,s,_){var j=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 _e=$.toString(),et=j.call($).slice(8,-1);return(_e=et==="Function"?_e.substring(_e.indexOf("(")+1,_e.indexOf(")")):et)||"anonymous"}},function(o,s,_){const j=_(13),{LEVEL:$}=_(4),_e=_(14),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 rt=_e.configure(nt);return tt[$]=rt(tt,nt.replacer||et,nt.space),tt})},function(o,s,_){class j extends Error{constructor(_e){super(`Format functions must be synchronous taking a two arguments: (info, opts) -Found: ${_e.toString().split(` -`)[0]} -`),Error.captureStackTrace(this,j)}}o.exports=$=>{if($.length>2)throw new j($);function _e(tt={}){this.options=tt}function et(tt){return new _e(tt)}return _e.prototype.transform=$,et.Format=_e,et}},function(o,s,_){function j(et,tt){if(!(et instanceof tt))throw new TypeError("Cannot call a class as a function")}function $(et,tt){for(var nt=0;nt0&&arguments[0]!==void 0?arguments[0]:{};j(this,et),this.loggers=new Map,this.options=rt}var tt,nt;return tt=et,(nt=[{key:"add",value:function(rt,ot){var ut=this;if(!this.loggers.has(rt)){var dt=(ot=Object.assign({},ot||this.options)).transports||this.options.transports;ot.transports=dt?dt.slice():[];var Ut=_e(ot);Ut.on("close",function(){return ut._delete(rt)}),this.loggers.set(rt,Ut)}return this.loggers.get(rt)}},{key:"get",value:function(rt,ot){return this.add(rt,ot)}},{key:"has",value:function(rt){return!!this.loggers.has(rt)}},{key:"close",value:function(rt){var ot=this;if(rt)return this._removeLogger(rt);this.loggers.forEach(function(ut,dt){return ot._removeLogger(dt)})}},{key:"_removeLogger",value:function(rt){this.loggers.has(rt)&&(this.loggers.get(rt).close(),this._delete(rt))}},{key:"_delete",value:function(rt){this.loggers.delete(rt)}}])&&$(tt.prototype,nt),Object.defineProperty(tt,"prototype",{writable:!1}),et}()},function(o,s,_){(function(j){const $=_(51),_e=/^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$/;o.exports=function(et,tt,nt,rt){let ot,ut,dt=!1,Ut=!1;const st=_(93);function ct(Qt){rt(tt,Qt)}function pt(Qt,gt){let ft=`"${tt}" ${gt}`;throw Qt&&(ft=""+ft),ut&&(ft=`${ft}. An example of a valid value would be: ${ut}`),new $(ft)}const Bt={convertFromBase64:function(){return ct("marking for base64 conversion"),dt=!0,Bt},default:function(Qt){if(typeof Qt=="number")ot=Qt.toString();else if(Array.isArray(Qt)||typeof Qt=="object"&&Qt!==null)ot=JSON.stringify(Qt);else{if(typeof Qt!="string")throw new $("values passed to default() must be of Number, String, Array, or Object type");ot=Qt}return ct(`setting default value to "${ot}"`),Bt},required:function(Qt){return Qt===void 0?(ct("marked as required"),Ut=!0):(ct("setting required flag to "+Qt),Ut=Qt),Bt},example:function(Qt){return ut=Qt,Bt}};return Object.entries({...st,...nt}).forEach(([Qt,gt])=>{Bt[Qt]=function(ft){return function(){let Ft=et[tt];if(ct(`will be read from the environment using "${ft.name}" accessor`),Ft===void 0)if(ot===void 0&&Ut)ct("was not found in the environment, but is required to be set"),pt(void 0,"is a required variable, but it was not set");else{if(ot===void 0)return void ct("was not found in the environment, but is not required. returning undefined");ct(`was not found in the environment, parsing default value "${ot}" instead`),Ft=ot}Ut&&(ct("verifying variable value is not an empty string"),Ft.trim().length===0&&pt(void 0,"is a required variable, but its value was empty")),dt&&(ct("verifying variable is a valid base64 string"),Ft.match(_e)||pt(Ft,"should be a valid base64 string if using convertFromBase64"),ct("converting from base64 to utf8 string"),Ft=j.from(Ft,"base64").toString());const yt=[Ft].concat(Array.prototype.slice.call(arguments));try{ct(`passing value "${Ft}" to "${ft.name}" accessor`);const Ct=ft.apply(ft,yt);return ct("parsed successfully, returning "+Ct),Ct}catch(Ct){pt(Ft,Ct.message)}}}(gt)}),Bt}}).call(this,_(5).Buffer)},function(o,s,_){const j=_(34);o.exports=function($,_e){return _e=_e||",",$.length?j($).split(_e).filter(Boolean):[]}},function(o,s,_){o.exports=function(j){const $=j.toLowerCase();if($!=="false"&&$!=="true")throw new Error('should be either "true", "false", "TRUE", or "FALSE"');return $!=="false"}},function(o,s,_){o.exports=function(j){const $=j.toLowerCase();if(["false","0","true","1"].indexOf($)===-1)throw new Error('should be either "true", "false", "TRUE", "FALSE", 1, or 0');return!($==="0"||$==="false")}},function(o,s,_){const j=_(94);o.exports=function($){var _e=j($);if(_e>65535)throw new Error("cannot assign a port number greater than 65535");return _e}},function(o,s,_){const j=_(34);o.exports=function($,_e){const et=j($);if(_e.indexOf(et)<0)throw new Error(`should be one of [${_e.join(", ")}]`);return et}},function(o,s,_){const j=_(53);o.exports=function($){const _e=j($);if(_e>0)throw new Error("should be a negative float");return _e}},function(o,s,_){const j=_(53);o.exports=function($){const _e=j($);if(_e<0)throw new Error("should be a positive float");return _e}},function(o,s,_){const j=_(52);o.exports=function($){const _e=j($);if(_e>0)throw new Error("should be a negative integer");return _e}},function(o,s,_){const j=_(54);o.exports=function($){var _e=j($);if(!Array.isArray(_e))throw new Error("should be a parseable JSON Array");return _e}},function(o,s,_){const j=_(54);o.exports=function($){var _e=j($);if(Array.isArray(_e))throw new Error("should be a parseable JSON Object");return _e}},function(o,s,_){o.exports=function(j,$){try{RegExp(void 0,$)}catch{throw new Error("invalid regexp flags")}try{return new RegExp(j,$)}catch{throw new Error("should be a valid regexp")}}},function(o,s,_){const j=_(95);o.exports=function($){return j($).toString()}},function(o,s,_){const j=_(34),$=/^(?:[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}},function(o,s,_){o.exports=function(j,$){return function(_e,et){$&&$.match(/prod|production/)||j(`env-var (${_e}): ${et}`)}}},function(o,s,_){(function(j){(function(){var $,_e,et,tt,nt,rt;typeof performance<"u"&&performance!==null&&performance.now?o.exports=function(){return performance.now()}:j!=null&&j.hrtime?(o.exports=function(){return($()-nt)/1e6},_e=j.hrtime,tt=($=function(){var ot;return 1e9*(ot=_e())[0]+ot[1]})(),rt=1e9*j.uptime(),nt=tt-rt):Date.now?(o.exports=function(){return Date.now()-et},et=Date.now()):(o.exports=function(){return new Date().getTime()-et},et=new Date().getTime())}).call(this)}).call(this,_(2))},function(o,s,_){(function(j){(function($){function _e(tt){if((tt=tt===void 0?"utf-8":tt)!=="utf-8")throw new RangeError("Failed to construct 'TextEncoder': The encoding label provided ('"+tt+"') is invalid.")}function et(tt,nt){if(nt=nt===void 0?{fatal:!1}:nt,(tt=tt===void 0?"utf-8":tt)!=="utf-8")throw new RangeError("Failed to construct 'TextDecoder': The encoding label provided ('"+tt+"') is invalid.");if(nt.fatal)throw Error("Failed to construct 'TextDecoder': the 'fatal' option is unsupported.")}if($.TextEncoder&&$.TextDecoder)return!1;Object.defineProperty(_e.prototype,"encoding",{value:"utf-8"}),_e.prototype.encode=function(tt,nt){if((nt=nt===void 0?{stream:!1}:nt).stream)throw Error("Failed to encode: the 'stream' option is unsupported.");nt=0;for(var rt=tt.length,ot=0,ut=Math.max(32,rt+(rt>>1)+7),dt=new Uint8Array(ut>>3<<3);nt=Ut){if(nt=Ut)continue}if(ot+4>dt.length&&(ut+=8,ut=(ut*=1+nt/tt.length*2)>>3<<3,(st=new Uint8Array(ut)).set(dt),dt=st),(4294967168&Ut)==0)dt[ot++]=Ut;else{if(!(4294965248&Ut))dt[ot++]=Ut>>6&31|192;else if(!(4294901760&Ut))dt[ot++]=Ut>>12&15|224,dt[ot++]=Ut>>6&63|128;else{if(4292870144&Ut)continue;dt[ot++]=Ut>>18&7|240,dt[ot++]=Ut>>12&63|128,dt[ot++]=Ut>>6&63|128}dt[ot++]=63&Ut|128}}return dt.slice(0,ot)},Object.defineProperty(et.prototype,"encoding",{value:"utf-8"}),Object.defineProperty(et.prototype,"fatal",{value:!1}),Object.defineProperty(et.prototype,"ignoreBOM",{value:!1}),et.prototype.decode=function(tt,nt){if((nt=nt===void 0?{stream:!1}:nt).stream)throw Error("Failed to decode: the 'stream' option is unsupported.");nt=0;for(var rt=(tt=new Uint8Array(tt)).length,ot=[];nt>>10&1023|55296),ut=56320|1023&ut),ot.push(ut))}return String.fromCharCode.apply(null,ot)},$.TextEncoder=_e,$.TextDecoder=et})(typeof window<"u"?window:j!==void 0?j:this)}).call(this,_(6))},function(o,s,_){_.r(s),_.d(s,"AuthClient",function(){return _e}),_.d(s,"RtcSignalingClient",function(){return tt}),_.d(s,"Credentials",function(){return _t}),_.d(s,"SignalingPromiseClient",function(){return Wt.SignalingPromiseClient}),_.d(s,"RtcClient",function(){return $r}),_.d(s,"RtcClientV1",function(){return Qs}),_.d(s,"createRtcStreamMessage",function(){return co});var j=_(26),$=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class _e extends j.a{adminSignup(At,Lt){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/admin-signup",{token:Lt,method:"POST",body:At})})}login(At){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/login",{method:"POST",body:At,allowUnsafeRetries:!0})})}loginWithGoogleToken(At){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/login-google",{method:"POST",body:At,allowUnsafeRetries:!0})})}refresh(At,Lt){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/refresh",{method:"POST",body:{refreshToken:At,tokenExpirationSeconds:Lt},allowUnsafeRetries:!0})})}respondToNewPasswordRequiredChallenge(At){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/respond-to-new-password-required-challenge",{method:"POST",body:At})})}forgotPassword(At){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/forgot-password",{method:"POST",body:{email:At}})})}confirmForgotPassword(At){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/confirm-forgot-password",{method:"POST",body:At})})}resendInvitation(At){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/resend-invitation",{method:"POST",body:{email:At}})})}changePassword({token:At,refreshToken:Lt,currentPassword:qt,newPassword:ln}){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/change-password",{token:At,method:"POST",body:{refreshToken:Lt,currentPassword:qt,newPassword:ln}})})}getDeviceCredentials(At){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/device-credentials",{token:At,method:"POST",allowUnsafeRetries:!0})})}impersonate(At,Lt){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/impersonate",{token:At,method:"POST",allowUnsafeRetries:!0,body:{userId:Lt}})})}createServiceAccount(At,Lt,qt,ln){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/service-account",{token:At,method:"POST",allowUnsafeRetries:!0,body:{name:Lt,roleId:qt,tags:ln}})})}getFeatures(At){return $(this,void 0,void 0,function*(){return(yield this.fetch("auth/features",{token:At})).features})}checkSso(At,Lt){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/check-sso",{method:"POST",body:{email:At,allowUserAutoCreation:Lt}})})}loginWithSso(At,Lt){return $(this,void 0,void 0,function*(){return yield this.fetch("auth/login-sso",{method:"POST",body:{token:At,refreshToken:Lt}})})}}var et=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class tt extends j.a{createPeer(At,Lt){return et(this,void 0,void 0,function*(){return yield this.fetch("peers",{token:At,method:"POST",body:Lt})})}getPeers(At){return et(this,void 0,void 0,function*(){return(yield this.fetch("peers",{token:At})).items})}refreshPeer(At,Lt){return et(this,void 0,void 0,function*(){yield this.fetch(`peers/${Lt}/refresh`,{token:At,method:"POST",allowUnsafeRetries:!0})})}createSession(At,Lt){return et(this,void 0,void 0,function*(){return yield this.fetch("sessions",{token:At,method:"POST",body:Lt})})}refreshSession(At,Lt){return et(this,void 0,void 0,function*(){yield this.fetch(`sessions/${Lt}/refresh`,{token:At,method:"POST",allowUnsafeRetries:!0})})}deleteSession(At,Lt){return et(this,void 0,void 0,function*(){yield this.fetch("sessions/"+Lt,{token:At,method:"DELETE",allowUnsafeRetries:!0})})}getSessions(At){return et(this,void 0,void 0,function*(){return(yield this.fetch("sessions",{token:At})).items})}getIceServers(At){return et(this,void 0,void 0,function*(){return(yield this.fetch("ice-servers",{token:At})).items})}addSignals(At,Lt,qt){return et(this,void 0,void 0,function*(){yield this.fetch(`sessions/${Lt}/add-signals`,{token:At,method:"POST",body:qt})})}takeSignals(At,Lt){return et(this,void 0,void 0,function*(){return(yield this.fetch(`sessions/${Lt}/take-signals`,{token:At,method:"POST"})).items})}}var nt=_(1),rt=_(9),ot=_(15),ut=_.n(ot),dt=_(101),Ut=_.n(dt),st=_(3),ct=_(0),pt=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class Bt extends class{constructor(At,Lt){this.type=At,this.name=Lt}}{constructor(At){super("simple","LogReporter"),this.message=At}send(At){return pt(this,void 0,void 0,function*(){var Lt,qt;ct.a.debug(this.message,(Lt=At.reduce((ln,Un)=>Object.assign(Object.assign({},ln),{[Un.name]:Un.stat}),{}),qt=ln=>{const{sum:Un,count:hn}=ln,bn=Un/hn;return Object.assign(Object.assign({},ln),{average:bn})},Object.keys(Lt).reduce((ln,Un)=>Object.assign(Object.assign({},ln),{[Un]:qt(Lt[Un])}),{})))})}}const Qt=/^[a-zA-Z0-9-_.,:?'"()@\/\\#$+ ]{1,255}$/,gt=/^[*a-zA-Z0-9-_.,:?'"()@\/\\#$+ ]{1,255}$/;function ft(Jn,At=!1){return!!(Jn!=null&&Jn.match(At?gt:Qt))}var Ft=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};function yt({func:Jn,delay:At,immediate:Lt=!1}){let qt=!1,ln=setTimeout(function hn(){return Ft(this,void 0,void 0,function*(){if(qt)return;const bn=new Date().getTime();try{Un=Jn(),yield Un}finally{if(!qt){const Vn=new Date().getTime();ln=setTimeout(hn,Math.max(At-(Vn-bn),0))}}})},Lt?0:At),Un=Promise.resolve();return{stop(){return Ft(this,void 0,void 0,function*(){qt=!0,clearTimeout(ln),yield Un})}}}var Ct=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};const xt=_(231);class ht{constructor(At){this.buffer={},this.reporters=[],this.flushInterval=yt({func:()=>this.flushStats(),delay:ht.samplePeriodMs}),this.tags=this.filterTags((At==null?void 0:At.tags)||{app:st.a,version:st.k,namespace:st.j})}shutdown(){return Ct(this,void 0,void 0,function*(){yield this.flushInterval.stop(),yield this.flushStats(),yield Object(rt.a)(2*nt.a.second)})}aggregate(At,Lt,qt){this.addToBuffer(this.buffer,this.encodeKey({metric:At,tags:this.filterTags(qt||{})}),typeof Lt=="number"?{min:Lt,max:Lt,sum:Lt,count:1}:Lt)}increment(At,Lt){this.aggregate(At,1,Lt)}timer(At,Lt,qt){return Ct(this,void 0,void 0,function*(){const ln=xt(),Un=yield Lt(),hn=xt();return this.aggregate(At,hn-ln,qt),Un})}registerStatsReporter(At){this.reporters.push(At)}setTag(At,Lt){const qt=this.filterTags({[At]:Lt});this.tags=Object.assign(Object.assign({},this.tags),qt)}addToBuffer(At,Lt,qt){if(At[Lt]){const{min:ln,max:Un,sum:hn,count:bn}=At[Lt];At[Lt]={min:Math.min(ln,qt.min),max:Math.max(Un,qt.max),sum:hn+qt.sum,count:bn+qt.count}}else At[Lt]=qt}write(At){return Ct(this,void 0,void 0,function*(){yield Promise.all(this.reporters.map(Lt=>Ct(this,void 0,void 0,function*(){let qt;const ln={};switch(Lt.type){case"simple":for(const[hn,bn]of Object.entries(At)){const{metric:Vn}=this.decodeKey(hn);this.addToBuffer(ln,this.encodeKey({metric:Vn}),bn)}qt=ln;break;case"tagged":qt=At;break;default:(function(hn){throw new Error(`Unreachable type encountered (${hn})`)})(Lt.type)}const Un=Object.entries(qt);if(Un.length>0)return Lt.send(Un.map(([hn,bn])=>{const{metric:Vn,tags:Qn}=this.decodeKey(hn);return{name:Vn,tags:Object.assign(Object.assign({},Qn),this.tags),stat:bn}}),ht.samplePeriodMs).catch(hn=>{ct.a.debug("Failed to write stats to "+Lt.name,{error:hn})})})))})}flushStats(){return Ct(this,void 0,void 0,function*(){yield this.write(this.buffer),this.buffer={}})}encodeKey(At){return ut()(Object.assign(Object.assign({},At),Object.keys(At.tags||{}).length>0?{tags:At.tags}:{}))}decodeKey(At){return JSON.parse(At)}filterTags(At){return Object.entries(At||{}).reduce((Lt,[qt,ln])=>(ft(qt)&&ft(ln)&&(Lt[qt]=ln),Lt),{})}}ht.samplePeriodMs=5*nt.a.minute;const mt=!!st.d,It=new ht;mt||["local","on-prem"].includes(st.j)||It.registerStatsReporter(new Bt("stats"));var vt=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class Tt extends class{constructor(At){this.options=At,this.cache=new Ut.a(Object.assign(Object.assign(Object.assign({},At.dispose||At.disposeAfter?{ttlAutopurge:!0}:{}),At),{dispose:(...Lt)=>{var qt;Lt[2]==="evict"&&It.increment("lru-eviction",{name:At.name}),(qt=At.dispose)===null||qt===void 0||qt.call(At,...Lt)},disposeAfter:(...Lt)=>{var qt;this.updateStats(),(qt=At.disposeAfter)===null||qt===void 0||qt.call(At,...Lt)}})),this.stringify=At.fastStringify?JSON.stringify:ut.a}set(At,Lt,qt){const ln=this.stringify(At);if(!this.cache.set(ln,Lt,{ttl:qt})){const Un=this.cache.sizeCalculation?this.cache.sizeCalculation(Lt,ln):"unknown";throw Error(`Value too large (${Un} > ${this.cache.max})`)}this.updateStats()}get(At){const{name:Lt}=this.options,qt=this.stringify(At),ln=this.cache.getRemainingTTL(qt);return ln<=0?It.increment("cache-miss",{name:Lt}):ln!==1/0&&It.aggregate("cache-item-ttl",ln,{name:Lt}),this.cache.get(qt)}delete(At){this.cache.delete(this.stringify(At))}peek(At){return this.cache.peek(this.stringify(At))}size(){return this.cache.size}clear(){this.cache.clear()}forEach(At){this.cache.forEach(At)}purgeStale(){return this.cache.purgeStale()}updateStats(){const{name:At}=this.options;It.aggregate("cache-item-count",this.cache.size,{name:At}),this.cache.calculatedSize!==void 0&&It.aggregate("cache-length",this.cache.calculatedSize,{name:At})}}{constructor(At){if(super(At),this.expireRejectedPromiseValues=At.expireRejectedPromiseValues===void 0||At.expireRejectedPromiseValues,this.rejectedPromiseValueTtl=At.rejectedPromiseValueTtl!==void 0?At.rejectedPromiseValueTtl:nt.a.second,this.rejectedPromiseValueTtl<0)throw new Error("rejectedPromiseValueTtl must not be negative")}set(At,Lt,qt){super.set(At,Lt,qt),this.expireRejectedPromiseValues&&Lt.catch(()=>vt(this,void 0,void 0,function*(){yield Object(rt.a)(this.rejectedPromiseValueTtl),this.peek(At)===Lt&&this.delete(At)}))}}var Ot=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class _t{constructor(At,Lt,qt){this.authClient=At,this.email=Lt,this.password=qt,this.tokenTtlMs=1*nt.a.hour,this.tokenCache=new Tt({name:"Credentials-tokenCache",max:100,ttl:this.tokenTtlMs-5*nt.a.minute,fastStringify:!0})}getToken(){return Ot(this,void 0,void 0,function*(){let At=this.tokenCache.get(this.email);return At||(At=(()=>Ot(this,void 0,void 0,function*(){const{authentication:Lt}=yield this.authClient.login({email:this.email,password:this.password,tokenExpirationSeconds:this.tokenTtlMs/nt.a.second});if(!Lt)throw new Error("User account not verified.");return Lt.accessToken}))(),this.tokenCache.set(this.email,At)),At})}}var Wt=_(96),bt=_(17),Jt=_(236),Zt=_(41),Vt=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class jt extends Zt.a{constructor(At){super(At)}postLanRtcOffer(At){return Vt(this,void 0,void 0,function*(){return yield this.fetch("v1/lan-rtc-offer",{method:"POST",body:At})})}}var zt=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};function $t(Jn){return zt(this,void 0,void 0,function*(){return(yield Promise.all(Jn.map(At=>At.catch(Lt=>Lt)))).filter(At=>At instanceof Error)})}function nn(Jn,At){if(Jn===void 0)throw new Error("Value is undefined"+(At?": "+At:""))}function rn(Jn,At){if(Jn===null)throw new Error("Value is null"+(At?": "+At:""))}function Dt(Jn){return nn(Jn),Jn}function wt(Jn,At){const Lt=Jn.reduce((qt,ln)=>[...qt,...ln.urls],[]).filter(qt=>Et(qt,At)).sort(qt=>kt(qt,"udp")?-1:0).shift();if(Lt)return Object.assign(Object.assign({},Dt(Jn.find(qt=>qt.urls.includes(Lt)))),{urls:[Lt]})}function Et(Jn,At){switch(At){case"stun":return/^stuns?:/.test(Jn);case"turn":return/^turns?:/.test(Jn)}}function kt(Jn,At){return Jn.endsWith("transport="+At)}var Pt=_(10);class Kt extends Error{constructor(At,Lt){super(`Deadline expired after ${At}ms + ${Lt}ms`)}}class Ht{static withDeadline(At,Lt){const qt=new Promise((ln,Un)=>{setTimeout(()=>{Un(new Kt(Lt,this.grpcCallDeadlineSlopMs))},Lt+this.grpcCallDeadlineSlopMs)});return Promise.race([At,qt])}}Ht.grpcCallDeadlineSlopMs=500*nt.a.millisecond;var on=_(27);const sn={ordered:!1,maxPacketLifeTime:300*nt.a.millisecond},gn={ordered:!0},Cn={ordered:!0},In={ordered:!1,maxRetransmits:0},Mn={ordered:!1,maxRetransmits:0},rr=Jn=>"received"in Jn&&Jn.received!==void 0,An=Jn=>!("received"in Jn)||Jn.received===void 0,Dn=2*nt.a.second,Hn=10*nt.a.second;function Fr(Jn,At={}){const Lt=Array.from(Jn.values()),qt=Lt.filter(rr),ln=qt.length>0,Un=Math.max(...Lt.map(Fn=>Fn.sent)),hn=Math.max(...qt.map(Fn=>Fn.received));let bn;if(ln){const Fn=Date.now()-Un<=nt.a.millisecond?Lt.length-1:Lt.length,xn=qt.length>Fn?Fn:qt.length,Kn=qt.map(Rr=>Rr.received-Rr.sent),{standardDeviation:Ur,mean:Nr,jitter:Ir}=function(Rr){const vr=Rr.length;if(vr===0)return{mean:NaN,standardDeviation:-1,jitter:NaN};const Zr=Rr.reduce((Lr,_i)=>Lr+_i,0)/vr,Dr=Math.sqrt(Rr.map(Lr=>Math.pow(Lr-Zr,2)).reduce((Lr,_i)=>Lr+_i)/vr);if(vr===1)return{mean:Zr,standardDeviation:Dr,jitter:NaN};let zo=0;for(let Lr=1;LrRr.sent{const[xn,Kn]=Fn;Kn.sent{var Un,hn;return{streamId:ln,sentCount:(Un=Lt.get(ln))!==null&&Un!==void 0?Un:0,receivedCount:(hn=qt.get(ln))!==null&&hn!==void 0?hn:0}}),timestamp:At}}incrementLocalSent(At){const{localSent:Lt}=this.counts,qt=hr(At.header.stream);Lt.set(qt,(Lt.get(qt)||0)+1)}incrementLocalReceived(At){const{localReceived:Lt}=this.counts,qt=hr(At.header.stream),ln=Lt.get(qt)||0;if(ln===0){const{streamName:Un,streamType:hn}=At.header.stream;ct.a.debug("RTC client received first message for stream",{streamName:Un,streamType:hn})}Lt.set(qt,ln+1)}uploadMetrics(){return Gr(this,void 0,void 0,function*(){const{sessionId:At}=this,Lt=yield this.connection.peerConnection.getStats(),qt={};Lt.forEach(Qn=>qt[Qn.id]=Qn),ct.a.debug("rtc-stats",Object.assign(Object.assign({},qt),{sessionId:At}));const{localSent:ln,localReceived:Un,remoteSent:hn,remoteReceived:bn}=this.counts,Vn=[...new Set([...ln.keys(),...Un.keys()])].reduce((Qn,Fn)=>{const xn=ln.get(Fn),Kn=Un.get(Fn),Ur=hn.get(Fn),Nr=bn.get(Fn);return Object.assign(Object.assign({},Qn),{[`local-${Fn}-sent`]:xn,[`local-${Fn}-received`]:Kn,[`remote-${Fn}-sent`]:Ur,[`remote-${Fn}-received`]:Nr})},{sessionId:At});ct.a.debug("rtc-message-report",Object.assign({deviceId:this.connection.getRemoteDeviceId()},Vn))})}}function co(Jn,At,Lt){return{header:{stream:Jn,created:Date.now(),frameId:Lt||""},payload:At}}function Jr(Jn){const At=Jn.localCandidate.candidateType,Lt=Jn.remoteCandidate.candidateType;return At==="host"&&Lt==="host"?"local":At==="relay"||Lt==="relay"?"TURN":"STUN"}function xr(Jn){return new Set(["disconnected","failed","closed"]).has(Jn.iceConnectionState)}function ro(Jn){switch(Jn.header.stream.streamType){case"twist":{const{twist:At}=Jn.payload;if(!At)throw Error("twist not in payload of RTC message with type twist");return{header:Jn.header,payload:{twist:{linear:Object.assign({x:0,y:0,z:0},At.linear),angular:Object.assign({x:0,y:0,z:0},At.angular)}}}}case"pose":{const{pose:At}=Jn.payload;if(!At)throw Error("pose not in payload of RTC message with type pose");return{header:Jn.header,payload:{pose:{translation:Object.assign({x:0,y:0,z:0},At.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},At.rotation)}}}}case"pose-with-covariance":{const{poseWithCovariance:At}=Jn.payload;if(!At)throw Error("poseWithCovariance not in payload of RTC message with type pose-with-covariance");const Lt=new Array(36).fill(0);return At.covariance.forEach((qt,ln)=>{if(ln>=36)throw Error("covariance contains more than 36 elements");Lt[ln]=qt}),{header:Jn.header,payload:{poseWithCovariance:{pose:{translation:Object.assign({x:0,y:0,z:0},At.pose.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},At.pose.rotation)},covariance:Lt}}}}case"point":{const{point:At}=Jn.payload;if(!At)throw Error("point not in payload of RTC message with type point");return{header:Jn.header,payload:{point:Object.assign({x:0,y:0,z:0},At)}}}default:return Jn}}var er=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class sr{get peerConnection(){return rn(this._peerConnection,"RTCPeerConnection is closed!"),this._peerConnection}constructor(At,Lt,qt,ln){this.iceServers=Lt,this.config=qt,this.dataChannelNotifier=ln,this.connectTimeoutMs=20*nt.a.second,this.iceGatheringTimeoutMs=3*nt.a.second,this.pingUpdateTimeoutMs=1*nt.a.second,this.pingV2UpdateTimeoutMs=250*nt.a.millisecond,this.pingV2MetricsGatherTimeoutMs=1*nt.a.second,this.streamsInfoUpdateTimeoutMs=2*nt.a.second,this.reassemblyTimeoutMs=500*nt.a.millisecond,this.reassemblyTableCleanupMs=1*nt.a.second,this.heartbeatTimeoutMs=20*nt.a.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.closeCalled=!1,this.gotOffer=!1,this.hasIceCandidate=!1,this.pingV2Map=new Map,this.sendPingV2=()=>{const{latestTryOnceStreamChannel:hn}=this;if(!hn)return;const bn=new Date().getTime(),Vn=Object(Jt.a)();this.sendSystemMessage(hn,{type:"ping-v2",payload:{timestamp:bn,id:Vn}}),this.pingV2Map.set(Vn,{sent:bn})},this.gatherPingV2Metrics=()=>{const hn=Fr(this.pingV2Map);if(hn){const bn=this.getRemoteDeviceId();this.pingInfo=hn,It.aggregate("rtc-ping-average",hn.average,Object.assign({},bn?{deviceId:bn}:{})),It.aggregate("rtc-ping-loss",hn.loss,Object.assign({},bn?{deviceId:bn}:{})),It.aggregate("rtc-jitter",hn.jitter,Object.assign({},bn?{deviceId:bn}:{}))}},this._peerConnection=At;const{isOffer:Un}=qt.baseConfig;Un?this.initializeChannels(At):At.ondatachannel=hn=>{switch(hn.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=hn.channel;break;case"stream.reliable":this.reliableStreamChannel=hn.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=hn.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=hn.channel;break;case"heartbeat":return void(this.heartbeatChannel=hn.channel);default:return void this.dataChannelNotifier(hn.channel)}this.setupChannel(hn.channel)},this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:hn}=this;hn&&this.sendSystemMessage(hn,{type:"ping"})},this.pingUpdateTimeoutMs),this.pingV2UpdateTimeout=setInterval(this.sendPingV2,this.pingV2UpdateTimeoutMs),this.pingV2MetricsGatherTimeout=setInterval(this.gatherPingV2Metrics,this.pingV2MetricsGatherTimeoutMs),this.streamsInfoUpdateTimeout=setInterval(()=>{const{latestTtlStreamChannel:hn}=this;hn&&this.sendSystemMessage(hn,{type:"streams-info"})},this.streamsInfoUpdateTimeoutMs),this.reassemblyTableCleanupTimeout=setInterval(()=>{const hn=new Date().getTime();this.reassemblyTableLastTimestamp.forEach((bn,Vn,Qn)=>{hn>Vn+this.reassemblyTimeoutMs&&this.reassemblyTable.delete(bn)})},this.reassemblyTableCleanupMs),this.heartbeatTimeout=setInterval(()=>{const{heartbeatChannel:hn}=this;hn&&hn.readyState==="open"&&hn.send(new Uint8Array([1]))},this.heartbeatTimeoutMs)}handleSignal(At){return er(this,void 0,void 0,function*(){const{peerConnection:Lt}=this,{track:qt}=this.config.baseConfig,ln=(()=>{try{return JSON.parse(At.getPayload())}catch{return}})();if(!ln)return void ct.a.error("Received unparseable signal.");ct.a.debug("Handling signal",{description:ln});const{sdp:Un,type:hn}=ln;if(!Un||!hn)return void ct.a.warn("Received non-SDP signal");const{signalingState:bn,connectionState:Vn}=Lt;if(bn!=="stable"||Vn!=="connected")if(Lt.remoteDescription)ct.a.warn("Received SDP after remote description was set: "+Un);else{if(hn==="offer"){if(bn!=="stable")return void ct.a.warn("Received offer SDP when signaling is ongoing.");yield Lt.setRemoteDescription(ln);const Qn=yield Lt.createAnswer();yield Lt.setLocalDescription(Qn);const Fn=At.clone();return qt==null||qt("Answer Received",Fn),Fn.setPayload(JSON.stringify(Qn)),Fn.setReceiverId(At.getSenderId()),Fn.setSenderId(At.getReceiverId()),Fn}if(hn==="answer"){if(bn==="stable")return void ct.a.warn("Received answer SDP when signaling hasn't started.");yield Lt.setRemoteDescription(ln)}}else ct.a.warn("Received SDP when already connected: "+Un)})}send(At,Lt){const qt=this.getChannelFromLabel(Lt.channelLabel);qt?this.sendOnChannel(qt,At):ct.a.warn("Send called with unexpected channel label",{channelLabel:Lt.channelLabel})}controlRemoteStream(At){var Lt;this.sendSystemMessage((rn(Lt=this.reliableStreamChannel),Lt),{type:"stream-control",streamControl:At})}isActive(){return new Set(["new","checking","connected","completed"]).has(this.peerConnection.iceConnectionState)||this.isReady()}isReady(){const{reliableStreamChannel:At,latestTtlStreamChannel:Lt,latestTryOnceStreamChannel:qt,latestReliableStreamChannel:ln}=this;return(At==null?void 0:At.readyState)==="open"&&(Lt==null?void 0:Lt.readyState)==="open"&&(qt==null?void 0:qt.readyState)==="open"&&(ln==null?void 0:ln.readyState)==="open"}close(){var At,Lt,qt,ln,Un,hn,bn;return er(this,void 0,void 0,function*(){this.closeCalled||(this.closeCalled=!0,yield(At=this.sessionMetrics)===null||At===void 0?void 0:At.uploadMetrics(),Xn(this.pingUpdateTimeout),Xn(this.pingV2UpdateTimeout),Xn(this.pingV2MetricsGatherTimeout),Xn(this.reassemblyTableCleanupTimeout),Xn(this.streamsInfoUpdateTimeout),Xn(this.heartbeatTimeout),(Lt=this._peerConnection)===null||Lt===void 0||Lt.close(),(qt=this.heartbeatChannel)===null||qt===void 0||qt.close(),(ln=this.latestReliableStreamChannel)===null||ln===void 0||ln.close(),(Un=this.latestTryOnceStreamChannel)===null||Un===void 0||Un.close(),(hn=this.latestTtlStreamChannel)===null||hn===void 0||hn.close(),(bn=this.reliableStreamChannel)===null||bn===void 0||bn.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 At;return(At=this.config.remoteConfig)===null||At===void 0?void 0:At.sessionCreatedTimestamp}setSessionCreatedTimestamp(At){this.config.remoteConfig&&(this.config.remoteConfig.sessionCreatedTimestamp=At)}getSessionId(){var At;return(At=this.config.remoteConfig)===null||At===void 0?void 0:At.sessionId}setSessionId(At){this.config.remoteConfig&&(this.config.remoteConfig.sessionId=At,this.sessionMetrics=new Co(At,this))}getRemotePeerId(){return this.config.baseConfig.remotePeerId}getRemoteDeviceId(){var At;return(At=this.config.baseConfig)===null||At===void 0?void 0:At.remoteDeviceId}setRemoteDeviceId(At){this.config.baseConfig.remoteDeviceId=At}getSessionMetricsMessageCounts(){var At;return(At=this.sessionMetrics)===null||At===void 0?void 0:At.counts}getConnectionStatsInfo(){return er(this,void 0,void 0,function*(){const{peerConnection:At}=this;if(!At)return;const Lt=yield At.getStats(null),qt=[];Lt.forEach(Vn=>{qt.push(Vn)});const ln=qt.find(Vn=>Vn.type==="transport");if(!ln)return;const Un=qt.find(Vn=>(Vn.type==="candidate-pair"||Vn.type==="candidatepair")&&Vn.id===ln.selectedCandidatePairId);if(!Un)return;const hn=qt.find(Vn=>Vn.id===Un.localCandidateId),bn=qt.find(Vn=>Vn.id===Un.remoteCandidateId);return hn&&bn&&(hn.address=hn.address||hn.ip,bn.address=bn.address||bn.ip,hn.address!==void 0&&bn.address!==void 0)?{transport:ln,localCandidate:hn,remoteCandidate:bn,candidatePair:Un}:void 0})}initializeChannels(At){this.heartbeatChannel=At.createDataChannel("heartbeat",Mn),this.heartbeatChannel.binaryType="arraybuffer",this.latestTtlStreamChannel=At.createDataChannel("stream.latest-ttl",sn),this.latestTtlStreamChannel.binaryType="arraybuffer",this.reliableStreamChannel=At.createDataChannel("stream.reliable",gn),this.reliableStreamChannel.binaryType="arraybuffer",this.latestReliableStreamChannel=At.createDataChannel("stream.latest-reliable",Cn),this.latestReliableStreamChannel.binaryType="arraybuffer",this.latestTryOnceStreamChannel=At.createDataChannel("stream.latest-try-once",In),this.latestTryOnceStreamChannel.binaryType="arraybuffer",this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}getOffer(){var At,Lt;return er(this,void 0,void 0,function*(){const{gotOffer:qt}=this,{peerConnection:ln,config:Un}=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 hn=(At=this.config.remoteConfig)===null||At===void 0?void 0:At.sessionId;if(qt)return void ct.a.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,xr(this.peerConnection))return void ct.a.debug("Failed to generate offer because the peer connection was inactive.");const bn=Un.baseConfig.track;ln.onicecandidate=()=>{this.hasIceCandidate=!0},ln.oniceconnectionstatechange=()=>er(this,void 0,void 0,function*(){const Ur=ln.iceConnectionState;if(Ur==="connected"||Ur==="completed"){const Nr=yield this.getConnectionStatsInfo(),Ir=Nr?Jr(Nr):void 0;ct.a.info("ICE connection state changed to "+Ur,{sessionId:hn,connectionStatsInfo:Nr,iceMode:Ir}),bn==null||bn("ICE connection state change",{iceConnectionState:Ur,sessionId:hn,connectionStatsInfo:Nr,iceMode:Ir})}}),yield ln.setLocalDescription(yield ln.createOffer());const Vn=ln.getConfiguration?ln.getConfiguration().iceTransportPolicy:"all",Qn=new Date().getTime();for(;;){const Ur=new Date().getTime()-Qn;if(Ur>this.connectTimeoutMs)return void ct.a.debug("Failed to generate offer because ICE gathering timed out.");if(Ur>this.iceGatheringTimeoutMs&&this.hasIceCandidate){ct.a.debug("ICE gathering partially completed; proceeding",{iceTransportPolicy:Vn,waitTime:Ur}),bn==null||bn("ICE gathering partially completed",{sessionId:hn,iceTransportPolicy:Vn,waitTime:Ur});break}if(ln.iceGatheringState==="complete"){ct.a.debug("ICE gathering complete",{iceTransportPolicy:Vn,waitTime:Ur}),bn==null||bn("ICE gathering completed",{sessionId:hn,iceTransportPolicy:Vn,waitTime:Ur});break}yield Object(rt.a)(.1*nt.a.second)}const Fn=(Lt=this.iceServers)!==null&&Lt!==void 0?Lt:[];for(const Ur of Fn)"credentialType"in Ur&&(Ur.credentialType=void 0);const xn=JSON.stringify(Fn),Kn=new Pt.Signal;return Kn.setPayload(JSON.stringify(ln.localDescription)),Kn.setSenderId(this.config.baseConfig.localPeerId),Kn.setReceiverId(this.config.baseConfig.remotePeerId),Kn.setIceServers(xn),Kn.setIceTransportPolicy(Vn??"all"),this.config.baseConfig.sessionType!==void 0?Kn.setSessionType(this.config.baseConfig.sessionType):Kn.setSessionType(Pt.SessionType.TELEOP),ct.a.debug("Sending offer signal with description",{description:Kn.getPayload()}),Kn})}getLanOffer(){return er(this,void 0,void 0,function*(){const{peerConnection:At,gotOffer:Lt}=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(Lt)return void ct.a.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,xr(this.peerConnection))return void ct.a.debug("Failed to generate offer because the peer connection was inactive.");yield At.setLocalDescription(yield At.createOffer());const qt=new Date().getTime();for(;;){if(new Date().getTime()-qt>this.iceGatheringTimeoutMs)return void ct.a.debug("Failed to generate offer because ICE gathering timed out.");if(At.iceGatheringState==="complete")break;yield Object(rt.a)(.1*nt.a.second)}const ln=At.localDescription;if(ln)return ct.a.debug("Sending LAN offer signal with description",{description:ln}),ln;ct.a.error("Failed to generate LAN offer description")})}handleLanAnswer(At){return er(this,void 0,void 0,function*(){const{peerConnection:Lt}=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 Lt.setRemoteDescription(At)})}getChannelFromLabel(At){switch(At){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(At,Lt){var qt;let ln;try{ln=Object(on.encode)(JSON.stringify(Lt))}catch(Un){return void ct.a.warn("Failed to encode RTC message",{error:Un})}try{At.send(ln),(qt=this.sessionMetrics)===null||qt===void 0||qt.incrementLocalSent(Lt)}catch(Un){ct.a.warn("Failed to send message to channel",{error:Un,channel:At.label})}}channelNotRecognized(At){return At!==this.latestTtlStreamChannel&&At!==this.latestReliableStreamChannel&&At!==this.latestTryOnceStreamChannel&&At!==this.reliableStreamChannel}setupChannel(At){At.onmessage=Lt=>{if(this.channelNotRecognized(At))return void ct.a.warn("Received message on unrecognized data channel.");let qt;try{qt=JSON.parse(Object(on.decode)(Lt.data))}catch(ln){return void ct.a.warn("Received unparseable message on RTC stream data channel",{error:ln,channel:At.label})}qt.communicationType==="message-chunk"?this.receiveChannelMessageChunk(At,qt):this.receiveChannelMessage(At,qt)},At.onerror=Lt=>{ct.a.warn("Channel error: "+Lt.error,{error:Lt.error,sessionId:this.getSessionId(),channelLabel:At.label})},At.onopen=()=>{ct.a.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:At.label})},At.onclose=()=>{const Lt={bufferedAmount:At.bufferedAmount,sessionId:this.getSessionId(),channelLabel:At.label};this.closeCalled===!1?ct.a.debug("Unexpected channel closed",Lt):ct.a.debug("Channel closed",Lt)}}receiveChannelMessage(At,Lt){var qt;const{config:ln}=this,{remotePeerId:Un}=this.config.baseConfig;this.lastMessageTimestamp=new Date().getTime(),Lt=ro(Lt),(qt=this.sessionMetrics)===null||qt===void 0||qt.incrementLocalReceived(Lt),!this.handleSystemMessage(At,Lt)&&((At===this.latestTryOnceStreamChannel||At===this.latestTtlStreamChannel||At===this.latestReliableStreamChannel)&&!this.isLatestMessage(Lt)||ln.baseConfig.receive(Un,Lt))}receiveChannelMessageChunk(At,Lt){const qt=this.reassemblyTable.get(Lt.id)||[];if(qt.push(Lt),qt.length===Lt.total){const ln=function(Un){const hn=Un.sort((bn,Vn)=>bn.seqbn.part).reduce((bn,Vn)=>bn+Vn);try{return JSON.parse(hn)}catch{return void ct.a.warn("Could not reassemble RTC message chunks")}}(qt);return ln&&this.receiveChannelMessage(At,ln),void this.reassemblyTable.delete(Lt.id)}this.reassemblyTable.set(Lt.id,qt),this.reassemblyTableLastTimestamp.set(Lt.id,new Date().getTime())}handleSystemMessage(At,Lt){var qt,ln;const{config:Un}=this,{baseConfig:hn}=Un,{remotePeerId:bn,remoteDeviceId:Vn}=hn;switch(Lt.header.stream.streamType){case"ping":return this.sendSystemMessage(At,{type:"pong",timestamp:Dt(Lt.payload.ping)}),!0;case"pong":{const Qn=new Date().getTime()-Dt(Lt.payload.pong);return this.pingTimeMs=Qn,It.aggregate("rtc-ping-time",Qn,Object.assign({},Vn?{deviceId:Vn}:{})),!0}case"ping-v2":return this.sendPingV2(),!0;case"pong-v2":{const Qn=Dt(Lt.payload.pongV2),Fn=this.pingV2Map.get(Qn.id);return(Fn==null?void 0:Fn.sent)!==Qn.timestamp&&ct.a.warn("Pong timestamp doesn't match stored value",{currentEntry:Fn,pong:Qn}),this.pingV2Map.set(Qn.id,{sent:Qn.timestamp,received:new Date().getTime()}),!0}case"streams-info":{const{sessionMetrics:Qn}=this,Fn=(qt=Lt.payload.streamsInfo)===null||qt===void 0?void 0:qt.timestamp;return!!Fn&&(Qn==null||Qn.updateRemoteMessagesCounts(Lt),(ln=hn.onStreamsInfoUpdate)===null||ln===void 0||ln.call(hn,bn,Fn),!0)}case"stream-control":return!0;default:return!1}}sendSystemMessage(At,Lt){var qt;const{localUserId:ln,localPeerId:Un}=this.config.baseConfig;if(At.readyState!=="open")return;const hn={entityId:ln??Un,streamName:"$."+Lt.type,streamType:Lt.type};let bn;switch(Lt.type){case"ping":bn={ping:new Date().getTime()};break;case"pong":bn={pong:Lt.timestamp};break;case"ping-v2":bn={pingV2:Lt.payload};break;case"pong-v2":bn={pongV2:Lt.payload};break;case"stream-control":bn={streamControl:Lt.streamControl};break;case"streams-info":bn={streamsInfo:(qt=this.sessionMetrics)===null||qt===void 0?void 0:qt.getLocalStreamsInfo(new Date().getTime())}}this.sendOnChannel(At,co(hn,bn))}isLatestMessage(At){const Lt=hr(At.header.stream),qt=(this.streamLatestTimestamp.get(Lt)||0)<=At.header.created;return qt&&this.streamLatestTimestamp.set(Lt,At.header.created),qt}}function Xn(Jn){Jn&&clearInterval(Jn)}function gr(){ct.a.debug("forceGarbageCollection() triggered"),queueMicrotask(()=>{let Jn=document.createElement("img");Jn.src=window.URL.createObjectURL(new Blob([new ArrayBuffer(5e7)])),Jn.onerror=function(){window.URL.revokeObjectURL(this.src),Jn=null}})}function Yr(Jn){try{return Jn instanceof Error?`${Jn.name}: ${Jn.message}`:typeof Jn=="object"?JSON.stringify(Jn):String(Jn)}catch{return"Unknown error"}}function Wr(Jn){var At,Lt;return{userId:(At=Jn.getUserId())===null||At===void 0?void 0:At.getValue(),deviceId:(Lt=Jn.getDeviceId())===null||Lt===void 0?void 0:Lt.getValue(),organizationId:Jn.getOrganizationId(),id:Jn.getPeerId(),capabilities:[],capabilitySet:{}}}var Pn=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};const Yn=Jn=>Jn.map(At=>Object.assign(Object.assign(Object.assign({},At),At.username?{username:""}:null),At.credential?{credential:""}:null));class $r{constructor(At){this.config=At,this.grpcCallDeadline=5*nt.a.second,this.refreshIntervalDelayMs=2*nt.a.second,this.iceServersTtl=30*nt.a.minute,this.connections=[],this.localConnections=[],this.isConnectionInitiator=new WeakSet,this.isOutgoingConnection=new Set,this.peerDataChannelListeners=[],this.rtcInstancesConstructed=0,this.statsLoopsExecuted=0;const{refreshIntervalDelayMs:Lt}=this;this.refreshInterval=yt({func:()=>Pn(this,void 0,void 0,function*(){try{yield this.update()}catch(qt){ct.a.warn("RTC refresh failed",{error:qt})}}),delay:Lt,immediate:!0})}send(At,Lt,qt){const ln=this.getActiveConnection(At);ln?ln.isReady()?ln.send(Lt,qt):ct.a.warn("Send called with unready connection."):ct.a.warn("Send called with no connection.")}controlRemoteStream(At,Lt){const qt=this.getActiveConnection(At);qt?qt.isReady()?qt.controlRemoteStream(Lt):ct.a.warn("controlRemoteStream called with unready connection."):ct.a.warn("controlRemoteStream called with no connection.")}getLocalPeer(){return Pn(this,void 0,void 0,function*(){for(;!this.localPeer;)yield Object(rt.a)(.1*nt.a.second);return Wr(this.localPeer)})}connect(At,Lt){var qt,ln,Un;return Pn(this,void 0,void 0,function*(){if(this.config.lanOnlyMode===!0)throw new Error("connect method called in local only mode.");const{track:hn,signalingClient:bn}=this.config,{localPeer:Vn,receiveSignalStream:Qn,iceServers:Fn}=this;if(!Vn||!Qn||!Fn)return void ct.a.warn("Connect called prior to local peer, receiveSignalStream, and ICE servers ready");if(this.getActiveConnection(At))return void ct.a.warn("Connect called for peer with existing connection.");if(this.isOutgoingConnection.has(At))return void ct.a.warn("Connect called for peer with an existing outgoing connection offer.");this.isOutgoingConnection.add(At);const xn=function(Cr,Rr,vr){const{rtcIceTransportPolicies:Zr,rtcIceServerProtocol:Dr,useAllServers:zo}=Rr||{},Lr=Cr.map(_i=>Object.assign(Object.assign({},_i),{urls:_i.urls.filter(Bo=>{const Go=(Zr===void 0||Zr.some($a=>Et(Bo,$a)))&&(Dr===void 0||kt(Bo,Dr));return Go||ct.a.debug("Ignoring ICE server: "+Bo,{organizationId:vr}),Go})})).filter(({urls:_i})=>_i.filter(Bo=>Bo).length>0);return zo?Lr:[wt(Lr,"stun"),wt(Lr,"turn")].filter(_i=>_i!==void 0).map(_i=>Dt(_i))}(Fn,Lt);ct.a.debug("Received ICE servers:",Yn(Fn)),ct.a.debug("Using ICE servers:",Yn(xn));const Kn=new sr(yield this.createRTCPeerConnection(xn),xn,{baseConfig:{isOffer:!0,isLan:!1,receive:(Cr,Rr)=>this.config.receive(Cr,Rr),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Cr,Rr)=>{var vr,Zr;return(Zr=(vr=this.config).onStreamsInfoUpdate)===null||Zr===void 0?void 0:Zr.call(vr,Cr,Rr)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(qt=Vn.getUserId())===null||qt===void 0?void 0:qt.getValue(),localPeerId:Vn.getPeerId(),remotePeerId:At,sessionType:this.config.sessionType},remoteConfig:{}},Cr=>this.onCustomDataChannel(At,Cr)),Ur=yield Kn.getOffer();if(!Ur)return ct.a.error("Failed to generate offer."),void this.isOutgoingConnection.delete(At);ct.a.debug("Sending offer."),hn==null||hn("Sending offer",Ur);const Nr=new Pt.SendSignalRequest;Nr.setSignal(Ur);const Ir=yield(()=>Pn(this,void 0,void 0,function*(){try{return yield Ht.withDeadline(bn.sendSignal(Nr,yield this.getMetadata()),this.grpcCallDeadline)}catch(Cr){ct.a.warn("Error when sending signal",{error:Cr})}}))();if(!this.isOutgoingConnection.has(At))return void ct.a.debug("No offer set after receiving offer signal response.");ct.a.debug("Offer sent.");const jr=(ln=Ir==null?void 0:Ir.getSessionId())===null||ln===void 0?void 0:ln.getValue(),Kr=(Un=Ir==null?void 0:Ir.getSessionCreatedTimestamp())===null||Un===void 0?void 0:Un.getValue();return jr&&Kr?(Kn.setSessionId(jr),Kn.setSessionCreatedTimestamp(Kr),this.isOutgoingConnection.delete(At),this.connections.push(Kn),this.isConnectionInitiator.add(Kn),this.setupHandlers(Kn),jr):(ct.a.warn("No session ID or no session created timestamp on send signal response."),void this.isOutgoingConnection.delete(At))})}connectLan(At){var Lt,qt;return Pn(this,void 0,void 0,function*(){const ln=new jt(At),Un=new sr(yield this.createRTCPeerConnection([]),[],{baseConfig:{isOffer:!0,isLan:!0,receive:(Qn,Fn)=>this.config.receive(Qn,Fn),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Qn,Fn)=>{var xn,Kn;return(Kn=(xn=this.config).onStreamsInfoUpdate)===null||Kn===void 0?void 0:Kn.call(xn,Qn,Fn)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(qt=(Lt=this.localPeer)===null||Lt===void 0?void 0:Lt.getUserId())===null||qt===void 0?void 0:qt.getValue(),localPeerId:"lan_client",remotePeerId:At}},Qn=>this.onCustomDataChannel(At,Qn)),hn=yield Un.getLanOffer();if(!hn)return ct.a.warn("Could not generate LAN offer"),!1;const bn=yield ln.postLanRtcOffer({offer:JSON.stringify(hn)}),Vn=new RTCSessionDescription(JSON.parse(bn.answer));return yield Un.handleLanAnswer(Vn),this.localConnections.push(Un),this.isConnectionInitiator.add(Un),Object(Jt.a)()})}getConnections(){return[...this.connections,...this.localConnections]}createCustomDataChannel(At,Lt,qt,ln,Un){const hn=this.getActiveConnection(At);if(hn&&this.isConnectionInitiator.has(hn)){const Vn=hn.peerConnection.createDataChannel("custom."+Lt,qt);return ln&&(Vn.binaryType="arraybuffer"),Un(At,Vn),()=>{}}const bn=(Vn,Qn)=>{At===Vn&&Qn.label==="custom."+Lt&&Un(At,Qn)};return this.peerDataChannelListeners.push(bn),()=>{this.peerDataChannelListeners=this.peerDataChannelListeners.filter(Vn=>Vn!==bn)}}onCustomDataChannel(At,Lt){this.peerDataChannelListeners.forEach(qt=>qt(At,Lt))}getConnectionStatus(At){if(this.isOutgoingConnection.has(At))return"connecting";const Lt=this.getActiveConnection(At);return Lt?Lt.isReady()?"connected":"connecting":"disconnected"}getConnectionStatsInfo(At){return Pn(this,void 0,void 0,function*(){const Lt=this.getActiveConnection(At);if(Lt)return yield Lt.getConnectionStatsInfo()})}disconnect(At){return Pn(this,void 0,void 0,function*(){const Lt=this.getActiveConnection(At);Lt&&(yield Lt.close(),this.connections=this.connections.filter(qt=>qt!==Lt),this.localConnections=this.localConnections.filter(qt=>qt!==Lt))})}getPeers(){return Pn(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:At}=this.config,Lt=yield(()=>Pn(this,void 0,void 0,function*(){try{return yield Ht.withDeadline(At.getPeers(new Pt.GetPeersRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(Un){ct.a.warn("Error when getting peers",{error:Un})}}))();if(!Lt)return[];const qt=Lt.getPeersList();if(!qt)return[];const ln=Un=>{var hn,bn;return(bn=(hn=Un.getPeerCreatedTimestamp())===null||hn===void 0?void 0:hn.getValue())!==null&&bn!==void 0?bn:0};return qt.sort((Un,hn)=>ln(hn)-ln(Un)).map(Un=>Wr(Un))})}getSessions(){return Pn(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:At}=this.config,Lt=yield(()=>Pn(this,void 0,void 0,function*(){try{return yield Ht.withDeadline(At.getPeers(new Pt.GetPeersRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(Un){ct.a.warn("Error when getting peers",{error:Un})}}))();if(!Lt)return{};const qt=Lt.getPeersList(),ln={};for(const Un of qt)ln[Un.getPeerId()]=Un.getSessionIdsList();return ln})}getPing(At){const Lt=this.getActiveConnection(At);if(Lt)return Lt.getPing();ct.a.warn("Attempted to get ping time from inactive peer.")}getPingInfo(At){const Lt=this.getActiveConnection(At);if(Lt)return Lt.getPingInfo();ct.a.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(At){const Lt=this.getActiveConnection(At);if(Lt)return Lt.getLastMessageTimestamp();ct.a.warn("Attempted to get last message time from inactive peer.")}getSessionMetricsMessageCounts(At){const Lt=this.getActiveConnection(At);if(Lt)return Lt.getSessionMetricsMessageCounts();ct.a.warn("Attempted to get session metrics counts from inactive peer.")}isReady(){if(this.config.lanOnlyMode)return!0;const{localPeer:At,receiveSignalStream:Lt,iceServers:qt}=this;return!!(At&&Lt&&qt)}shutdown(){return Pn(this,void 0,void 0,function*(){yield this.refreshInterval.stop(),this.receiveSignalStream&&this.receiveSignalStream.cancel();const At=this.connections;this.connections=[],yield this.closeConnections(At);const Lt=this.localConnections;this.localConnections=[],yield this.closeConnections(Lt),this.isOutgoingConnection.clear(),this.peerDataChannelListeners=[];const{localPeer:qt}=this;if(!qt||this.config.lanOnlyMode)return;const{signalingClient:ln}=this.config;yield(()=>Pn(this,void 0,void 0,function*(){try{const Un=new Pt.DeletePeerRequest;Un.setPeerId(qt.getPeerId()),yield Ht.withDeadline(ln.deletePeer(Un,yield this.getMetadata()),this.grpcCallDeadline)}catch(Un){return void ct.a.warn("Error deleting local peer",{error:Un})}}))()})}createPeer(){return Pn(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createPeer method cannot be used in local-only mode.");const{signalingClient:At}=this.config,Lt=yield(()=>Pn(this,void 0,void 0,function*(){try{return yield Ht.withDeadline(At.createPeer(new Pt.CreatePeerRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(ln){const Un=ln;ct.a.debug("createPeer failed",{error:Un});const hn=Yr(Un);throw new Error("Was not able to create peer: "+hn)}}))(),qt=Lt==null?void 0:Lt.getPeer();if(!qt)throw new Error("Response did not provide peer.");return this.localPeer=qt})}createReceiveSignalStream(){return Pn(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createReceiveSignalStream method cannot be used in local-only mode.");const{signalingClient:At}=this.config,{localPeer:Lt,iceServers:qt}=this;if(!Lt||!qt)return;const{receiveSignalStream:ln}=this;ln&&ln.cancel();const Un=new Pt.ReceiveSignalStreamRequest;Un.setPeerId(Lt.getPeerId());const hn=yield(()=>Pn(this,void 0,void 0,function*(){try{return At.receiveSignalStream(Un,yield this.getMetadata({hasDeadline:!1}))}catch(bn){ct.a.debug("createReceiveSignalStream failed",{error:bn});const Vn=Yr(bn);throw new Error("Unable to create receive signal stream: "+Vn)}}))();if(!hn)throw new Error("Response did not provide stream.");return hn.on("data",bn=>Pn(this,void 0,void 0,function*(){var Vn,Qn,Fn,xn;const Kn=bn.getSignal(),Ur=(Vn=Kn==null?void 0:Kn.getSessionId())===null||Vn===void 0?void 0:Vn.getValue(),Nr=Kn==null?void 0:Kn.getSenderId(),Ir=Kn==null?void 0:Kn.getReceiverId(),jr=(Qn=Kn==null?void 0:Kn.getSessionCreatedTimestamp())===null||Qn===void 0?void 0:Qn.getValue();if(!(Kn&&Ur&&Nr&&Ir&&jr))return void ct.a.warn("Received signal with missing information.");const Kr=this.getActiveConnection(Nr);if(Kr)if(Kr.getSessionId()!==Ur){if(ct.a.debug("Received signal: different session for a peer we're already connected to."),(Kr.getSessionCreatedTimestamp()||0)>jr)return;const Cr=new sr(yield this.createRTCPeerConnection(qt),qt,{baseConfig:{isOffer:!1,isLan:!1,receive:(Rr,vr)=>this.config.receive(Rr,vr),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Rr,vr)=>{var Zr,Dr;return(Dr=(Zr=this.config).onStreamsInfoUpdate)===null||Dr===void 0?void 0:Dr.call(Zr,Rr,vr)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:Lt.getPeerId(),localUserId:(xn=Lt.getUserId())===null||xn===void 0?void 0:xn.getValue(),remotePeerId:Nr},remoteConfig:{sessionId:Ur,sessionCreatedTimestamp:jr}},Rr=>this.onCustomDataChannel(Nr,Rr));yield Cr.handleSignal(Kn),this.connections.push(Cr)}else ct.a.debug("Received signal: for an existing connection."),yield Kr.handleSignal(Kn);else{ct.a.debug("Received signal: new connection.");const Cr=new sr(yield this.createRTCPeerConnection(qt),qt,{baseConfig:{isOffer:!1,isLan:!1,receive:(Rr,vr)=>this.config.receive(Rr,vr),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Rr,vr)=>{var Zr,Dr;return(Dr=(Zr=this.config).onStreamsInfoUpdate)===null||Dr===void 0?void 0:Dr.call(Zr,Rr,vr)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:Lt.getPeerId(),localUserId:(Fn=Lt.getUserId())===null||Fn===void 0?void 0:Fn.getValue(),remotePeerId:Nr},remoteConfig:{sessionId:Ur,sessionCreatedTimestamp:jr}},Rr=>this.onCustomDataChannel(Nr,Rr));yield Cr.handleSignal(Kn),this.connections.push(Cr)}})),hn.on("end",()=>{hn.cancel(),this.receiveSignalStream=void 0}),hn.on("error",bn=>{switch(bn.code){case bt.StatusCode.CANCELLED:case bt.StatusCode.UNAVAILABLE:case bt.StatusCode.UNKNOWN:ct.a.debug("Receive signal stream error",{error:bn});break;case bt.StatusCode.UNAUTHENTICATED:ct.a.warn("Receive signal stream error",{error:bn});break;default:ct.a.error("Receive signal stream error",{error:bn})}hn.cancel(),this.receiveSignalStream=void 0}),this.receiveSignalStream=hn})}createRTCPeerConnection(At){var Lt;return Pn(this,void 0,void 0,function*(){const qt=(Lt=this.config.alternateRTCPeerConnection)!==null&&Lt!==void 0?Lt:window.RTCPeerConnection;if(!qt)throw function(){if(typeof navigator>"u")throw new Error("not a browser");const{userAgent:ln}=navigator;return ln.includes("Firefox/")?"Firefox":ln.includes("Edg/")?"Edge":ln.includes("Chrome/")?"Chrome":ln.includes("Safari/")?"Safari":ln.includes("MSIE/")||ln.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||gr();try{return new qt({iceServers:At})}catch(ln){throw ct.a.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),ln}})}closeConnections(At){return Pn(this,void 0,void 0,function*(){const Lt=yield $t(At.map(qt=>Pn(this,void 0,void 0,function*(){yield qt.close()})));for(const qt of Lt)ct.a.warn("Request to close session failed",{error:qt})})}getActiveConnection(At){return this.getConnections().find(Lt=>Lt.getRemotePeerId()===At&&Lt.isActive())}update(){var At;return Pn(this,void 0,void 0,function*(){if(this.localConnections=this.localConnections.filter(xn=>xn.isActive()),this.config.lanOnlyMode)return;const{signalingClient:Lt}=this.config;if(!this.localPeer||!this.receiveSignalStream||!this.iceServers){const xn=[];return this.localPeer||xn.push(this.createPeer()),this.iceServers||xn.push(this.updateIceServers()),yield Promise.all(xn),void(this.receiveSignalStream||(yield this.createReceiveSignalStream()))}const[qt,ln]=(Un=this.connections,hn=xn=>xn.isActive(),Un.reduce((xn,Kn,Ur,Nr)=>{const[Ir,jr]=xn;return(hn(Kn,Ur,Nr)?Ir:jr).push(Kn),xn},[[],[]]));var Un,hn;yield this.closeConnections(ln),this.connections=qt,this.gatherConnectionStats().catch(xn=>{ct.a.warn("Error calling gatherConnectionStats",{error:xn})}),this.statsLoopsExecuted++;const{localPeer:bn}=this,Vn=this.connections.filter(xn=>xn.getSessionId).map(xn=>Dt(xn.getSessionId()));bn.setSessionIdsList(Vn);const Qn=new Pt.RefreshPeerRequest;Qn.setPeer(bn);try{yield Ht.withDeadline(Lt.refreshPeer(Qn,yield this.getMetadata()),this.grpcCallDeadline)}catch(xn){xn instanceof bt.RpcError&&xn.code===bt.StatusCode.NOT_FOUND?(ct.a.warn("Peer expired, creating new peer",{peerId:bn.getPeerId()}),yield this.reset()):ct.a.warn("Error calling RefreshPeer",{error:xn})}const Fn=yield this.getPeers();for(const xn of this.connections)xn.setRemoteDeviceId((At=Fn.find(Kn=>Kn.id===xn.getRemotePeerId()))===null||At===void 0?void 0:At.deviceId)})}gatherConnectionStats(){return Pn(this,void 0,void 0,function*(){if(this.statsLoopsExecuted%10!=0||this.connections.length!==1)return;const At=yield this.connections[0].getConnectionStatsInfo(),Lt=At?Jr(At):void 0;Lt?It.setTag("rtc-connection-type",Lt):It.setTag("rtc-connection-type","unknown")})}reset(){return Pn(this,void 0,void 0,function*(){yield this.closeConnections(this.connections),this.connections=[],this.isOutgoingConnection.clear(),yield this.createPeer(),yield this.createReceiveSignalStream()})}updateIceServers(){return Pn(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)return;const{iceServersLastUpdate:At,iceServersTtl:Lt}=this,qt=new Date().getTime();if(!At||qt-At>Lt)try{const ln=(yield Ht.withDeadline(this.config.signalingClient.getIceServers(new Pt.GetIceServersRequest,yield this.getMetadata()),this.grpcCallDeadline)).getIceServers();this.iceServers=JSON.parse(ln),this.iceServersLastUpdate=qt}catch(ln){ct.a.warn("Error in updateIceServers",{error:ln})}})}setupHandlers(At){const{peerConnection:Lt}=At,qt=At.getSessionCreatedTimestamp();Lt.onconnectionstatechange=()=>Pn(this,void 0,void 0,function*(){const ln=Lt.connectionState;if(!qt)return;const Un=At.getRemoteDeviceId();switch(ln){case"connected":It.aggregate("rtc-connect-time",new Date().getTime()-qt,Object.assign({},Un?{deviceId:Un}:{}));break;case"failed":It.increment("rtc-connect-failed",Object.assign({},Un?{deviceId:Un}:{}))}})}getMetadata(At={}){return Pn(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getMetadata method cannot be called in local-only mode");const{getToken:Lt}=this.config,{grpcCallDeadline:qt}=this,{hasDeadline:ln=!0}=At,Un=ln?{deadline:(Date.now()+qt).toString(10)}:null;try{const hn=yield Lt();return Object.assign({authorization:hn},Un)}catch(hn){throw ct.a.error("getToken() failed",{error:hn}),new Error("Cannot get authorization token")}})}}var Hr=_(12),uo=_(11),Ws=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class ps{constructor(At,Lt){this.sentMessagesCounts=new Map,this.receivedMessagesCounts=new Map,this.sessionId=At,this.connection=Lt}incrementMessageSent(At){const Lt=hr(At.header.stream);this.sentMessagesCounts.set(Lt,(this.sentMessagesCounts.get(Lt)||0)+1)}incrementMessageReceived(At){const Lt=hr(At.header.stream);this.receivedMessagesCounts.set(Lt,(this.receivedMessagesCounts.get(Lt)||0)+1)}uploadMetrics(){return Ws(this,void 0,void 0,function*(){const{sessionId:At}=this,Lt=yield this.connection.peerConnection.getStats(),qt={};Lt.forEach(Un=>qt[Un.id]=Un),ct.a.debug("rtc-stats",Object.assign(Object.assign({},qt),{sessionId:At}));const ln=[...new Set(Array.from(this.sentMessagesCounts.keys()).concat(Array.from(this.receivedMessagesCounts.keys())))].reduce((Un,hn)=>{const bn=this.sentMessagesCounts.get(hn),Vn=this.receivedMessagesCounts.get(hn);return Object.assign(Object.assign({},Un),{[hn+"-sent"]:bn,[hn+"-received"]:Vn})},{sessionId:At});ct.a.debug("rtc-message-report",ln)})}}function Oo(Jn,At){return hr(Jn)===hr(At)}var Uo=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class hs{constructor(At,Lt){this.peerConnection=At,this.config=Lt,this.connectTimeoutMs=10*nt.a.second,this.gatherIceTimeoutMs=5*nt.a.second,this.pingUpdateTimeoutMs=2*nt.a.second,this.streamLatestTimestamp=new Map,this.closeCalled=!1,this.connectCalled=!1,this.sentOffer=!1,this.receivedIceCandidate=!1;const{isOffer:qt}=Lt;qt?this.initializeChannels(At):At.ondatachannel=ln=>{switch(ln.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=ln.channel;break;case"stream.reliable":this.reliableStreamChannel=ln.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=ln.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=ln.channel}this.setupChannel(ln.channel)},this.sessionMetrics=new ps(this.getSessionId(),this)}connect(){return Uo(this,void 0,void 0,function*(){if(this.connectCalled)return;this.connectCalled=!0,this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:ln}=this;ln&&this.sendSystemMessage(ln,{type:"ping"})},this.pingUpdateTimeoutMs),this.connectTimeout=setTimeout(()=>Uo(this,void 0,void 0,function*(){this.isReady()||(ct.a.warn("RTC connect timed out, closing connection"),yield this.close())}),this.connectTimeoutMs);const{peerConnection:At,config:{isOffer:Lt,sessionId:qt}}=this;if(Lt){const ln=yield At.createOffer();yield At.setLocalDescription(ln)}Lt&&(this.gatherIceTimeout=setTimeout(()=>Uo(this,void 0,void 0,function*(){this.sentOffer||(ct.a.warn("ICE gathering timed out"),this.receivedIceCandidate?(ct.a.warn("Attempting to connect with partial ICE candidate pool"),yield this.sendOffer()):yield this.close())}),this.gatherIceTimeoutMs),At.onicecandidate=ln=>Uo(this,void 0,void 0,function*(){ln.candidate?this.receivedIceCandidate=!0:yield this.sendOffer()}),At.onicegatheringstatechange=()=>Uo(this,void 0,void 0,function*(){At.iceGatheringState==="complete"&&(yield this.sendOffer())}),At.onnegotiationneeded=()=>{ct.a.debug("Negotiation needed",{sessionId:qt})})})}handleSignal(At){return Uo(this,void 0,void 0,function*(){const{peerConnection:Lt,config:{sessionId:qt,sendSignal:ln}}=this,{description:Un}=JSON.parse(At.payload);if(ct.a.debug("Handling signal",{sessionId:qt,description:JSON.stringify(Un)}),Un)if(Lt.signalingState!=="stable"||Lt.connectionState!=="connected")if(Lt.remoteDescription)ct.a.warn("Received SDP signal during negotiation when remote description is already set: "+JSON.stringify(At));else if(Un.type==="offer"){yield Lt.setRemoteDescription(Un);const hn=yield Lt.createAnswer();yield Lt.setLocalDescription(hn),yield ln({payload:JSON.stringify({description:hn})})}else Un.type==="answer"&&(yield Lt.setRemoteDescription(Un));else ct.a.warn("Received SDP signal when signaling is stable and connected: "+JSON.stringify(At));else ct.a.warn("Received non-SDP signal: "+JSON.stringify(At))})}send(At,Lt){const qt=this.getChannelFromLabel(Lt.channelLabel);qt?this.sendOnChannel(qt,At):ct.a.warn("Send called with unexpected channel label",{channelLabel:Lt.channelLabel})}controlRemoteStream(At){this.sendSystemMessage(Dt(this.reliableStreamChannel),{type:"stream-control",streamControl:At})}isActive(){return new Set(["new","connecting","connected"]).has(this.peerConnection.connectionState)}isReady(){const{peerConnection:At,latestTtlStreamChannel:Lt,reliableStreamChannel:qt,latestTryOnceStreamChannel:ln}=this;return!!(qt&&Lt&&ln)&&At.connectionState==="connected"&&qt.readyState==="open"&&Lt.readyState==="open"&&ln.readyState==="open"}isClosed(){const{peerConnection:At,reliableStreamChannel:Lt,latestTryOnceStreamChannel:qt,latestTtlStreamChannel:ln}=this;return!(At.connectionState!=="closed"||Lt!==void 0&&Lt.readyState!=="closed"||qt!==void 0&&qt.readyState!=="closed"||ln!==void 0&&ln.readyState!=="closed")}needsClosing(){const{peerConnection:At,latestTtlStreamChannel:Lt,reliableStreamChannel:qt,latestTryOnceStreamChannel:ln}=this;if(this.isClosed())return!1;const Un=new Set(["closing","closed"]),hn=bn=>bn&&Un.has(bn.readyState);return xr(At)||hn(Lt)||hn(qt)||hn(ln)}close(){return Uo(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(At){this.latestTtlStreamChannel=At.createDataChannel("stream.latest-ttl",sn),this.reliableStreamChannel=At.createDataChannel("stream.reliable",gn),this.latestReliableStreamChannel=At.createDataChannel("stream.latest-reliable",Cn),this.latestTryOnceStreamChannel=At.createDataChannel("stream.latest-try-once",In),this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}sendOffer(){return Uo(this,void 0,void 0,function*(){if(this.sentOffer||(this.sentOffer=!0,xr(this.peerConnection)))return;const{peerConnection:At,config:{sendSignal:Lt}}=this,qt=yield At.createOffer();yield At.setLocalDescription(qt);const ln={payload:JSON.stringify({description:qt})};yield Lt(ln)})}getChannelFromLabel(At){switch(At){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(At,Lt){let qt;try{qt=Object(on.encode)(JSON.stringify(Lt))}catch(ln){return void ct.a.warn("Failed to encode RTC message",{error:ln})}try{At.send(qt),this.sessionMetrics.incrementMessageSent(Lt)}catch(ln){ct.a.warn("Failed to send message to channel",{error:ln,channel:At.label})}}channelNotRecognized(At){return At!==this.latestTtlStreamChannel&&At!==this.latestReliableStreamChannel&&At!==this.latestTryOnceStreamChannel&&At!==this.reliableStreamChannel}setupChannel(At){At.onmessage=Lt=>{if(this.channelNotRecognized(At))return void ct.a.warn("Received message on unrecognized data channel.");let qt;try{qt=JSON.parse(Object(on.decode)(Lt.data))}catch(ln){return void ct.a.warn("Received unparseable RTC message",{error:ln,channel:At.label})}if(this.lastMessageTimestamp=new Date().getTime(),qt=ro(qt),this.sessionMetrics.incrementMessageReceived(qt),!this.handleSystemMessage(At,qt)){if(!this.hasCapabilities(qt))return void ct.a.warn("Received RTC message that was not within the capability scope of the connection.");(At===this.latestTryOnceStreamChannel||At===this.latestTtlStreamChannel||At===this.latestReliableStreamChannel)&&!this.isLatestMessage(qt)||this.config.receive(this.config.remotePeer.id,qt)}},At.onerror=Lt=>{ct.a.warn("Channel error: "+Lt.error,{error:Lt.error,sessionId:this.getSessionId(),channelLabel:At.label})},At.onopen=()=>{ct.a.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:At.label})},At.onclose=()=>{const Lt={bufferedAmount:At.bufferedAmount,sessionId:this.getSessionId(),channelLabel:At.label};this.closeCalled===!1?ct.a.debug("Unexpected channel closed",Lt):ct.a.debug("Channel closed",Lt)}}handleSystemMessage(At,Lt){switch(Lt.header.stream.streamType){case"ping":return this.sendSystemMessage(At,{type:"pong",timestamp:Dt(Lt.payload.ping)}),!0;case"pong":{const qt=new Date().getTime()-Dt(Lt.payload.pong);return this.pingTimeMs=qt,It.aggregate("rtc-ping-time",qt),!0}case"stream-control":return!0;default:return!1}}sendSystemMessage(At,Lt){if(At.readyState!=="open")return;const qt={entityId:Dt(this.config.localPeer.deviceId||this.config.localPeer.userId),streamName:"$."+Lt.type,streamType:Lt.type};let ln;switch(Lt.type){case"ping":ln={ping:new Date().getTime()};break;case"pong":ln={pong:Lt.timestamp};break;case"stream-control":ln={streamControl:Lt.streamControl}}this.sendOnChannel(At,co(qt,ln))}hasCapabilities(At){var Lt,qt;const{localPeer:ln,remotePeer:Un}=this.config,hn=(Lt=ln.capabilitySet.streaming)===null||Lt===void 0?void 0:Lt.streams,bn=hn&&hn.some(Fn=>Fn.receive&&Oo(Fn.stream,At.header.stream)),Vn=(qt=Un.capabilitySet.streaming)===null||qt===void 0?void 0:qt.streams,Qn=Vn&&Vn.some(Fn=>Fn.send&&Oo(Fn.stream,At.header.stream));return bn||Qn}isLatestMessage(At){const Lt=hr(At.header.stream),qt=(this.streamLatestTimestamp.get(Lt)||0)<=At.header.created;return qt&&this.streamLatestTimestamp.set(Lt,At.header.created),qt}}var mr=function(Jn,At,Lt,qt){return new(Lt||(Lt=Promise))(function(ln,Un){function hn(Qn){try{Vn(qt.next(Qn))}catch(Fn){Un(Fn)}}function bn(Qn){try{Vn(qt.throw(Qn))}catch(Fn){Un(Fn)}}function Vn(Qn){var Fn;Qn.done?ln(Qn.value):(Fn=Qn.value,Fn instanceof Lt?Fn:new Lt(function(xn){xn(Fn)})).then(hn,bn)}Vn((qt=qt.apply(Jn,At||[])).next())})};class Qs{constructor(At){this.config=At,this.connections=[],this.connectingSessions=new Map,this.rtcInstancesConstructed=0,this.updateInterval=yt({func:()=>mr(this,void 0,void 0,function*(){try{yield this.update()}catch(Lt){ct.a.warn("RTC update failed",{error:Lt})}}),delay:250*nt.a.millisecond,immediate:!0}),this.localPeer=this.createPeer()}send(At,Lt,qt){const ln=this.getActiveConnection(At);ln?ln.isReady()?ln.send(Lt,qt):ct.a.warn("Attempted to send with an active connection to that peer which was not yet ready."):ct.a.warn("Attempted to send with no active connection to that peer.")}controlRemoteStream(At,Lt){const qt=this.getActiveConnection(At);qt?qt.isReady()?qt.controlRemoteStream(Lt):ct.a.warn("Attempted to control remote stream with an active connection to that peer which was not yet ready."):ct.a.warn("Attempted to control remote stream with no active connection to that peer.")}connect(At){return mr(this,void 0,void 0,function*(){const Lt=yield this.getLocalPeer();if(this.getActiveConnection(At))return void ct.a.warn("Attempted to connect to peer with an already active connection.");let qt;try{qt=yield this.config.signalingClient.createSession(yield this.config.getToken(),{offerPeerId:Lt.id,answerPeerId:At})}catch(ln){Object(Hr.a)(ln,uo.a,Un=>Un.statusCode===404),ct.a.warn("Attempted to connect to peer that does not exist.")}if(qt)for(this.connectingSessions.set(qt.id,new Date().getTime()),yield this.connectToSession(qt);;)switch(yield Object(rt.a)(.1),this.getConnectionStatus(At)){case"connecting":continue;case"connected":return qt.id;case"disconnected":return}})}getConnectionStatus(At){const Lt=this.getActiveConnection(At);return Lt?Lt.isReady()?"connected":"connecting":"disconnected"}getIceMode(At){const Lt=this.getActiveConnection(At);if(Lt)return Lt.iceMode}disconnect(At){return mr(this,void 0,void 0,function*(){const Lt=this.getActiveConnection(At);Lt&&(yield this.closeConnection(Lt))})}getLocalPeer(){return mr(this,void 0,void 0,function*(){return yield this.localPeer})}getPeers(){return mr(this,void 0,void 0,function*(){return yield this.config.signalingClient.getPeers(yield this.config.getToken())})}getPing(At){const Lt=this.getActiveConnection(At);if(Lt)return Lt.getPing();ct.a.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(At){const Lt=this.getActiveConnection(At);if(Lt)return Lt.getLastMessageTimestamp();ct.a.warn("Attempted to get ping time from inactive peer.")}shutdown(){return mr(this,void 0,void 0,function*(){yield this.updateInterval.stop();const At=this.connections;this.connections=[],yield this.closeConnections(At)})}closeConnection(At){return mr(this,void 0,void 0,function*(){this.connectingSessions.delete(At.getSessionId()),yield At.close();try{yield this.config.signalingClient.deleteSession(yield this.config.getToken(),At.getSessionId())}catch(Lt){Object(Hr.a)(Lt,uo.a,qt=>qt.statusCode===404)}})}getSessions(){return mr(this,void 0,void 0,function*(){const At=yield this.getLocalPeer();return(yield this.config.signalingClient.getSessions(yield this.config.getToken())).filter(Lt=>Lt.offer.peer.id===At.id||Lt.answer.peer.id===At.id)})}createPeer(){return mr(this,void 0,void 0,function*(){return yield this.config.signalingClient.createPeer(yield this.config.getToken(),{capabilitySet:this.config.capabilitySet||{}})})}createRTCPeerConnection(At={}){return mr(this,void 0,void 0,function*(){const Lt=this.config.alternateRTCPeerConnection||RTCPeerConnection;this.rtcInstancesConstructed++,this.rtcInstancesConstructed%20||gr();try{return new Lt(Object.assign({iceServers:yield this.config.signalingClient.getIceServers(yield this.config.getToken())},At))}catch(qt){throw ct.a.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),qt}})}closeConnections(At){return mr(this,void 0,void 0,function*(){const Lt=yield $t(At.map(qt=>mr(this,void 0,void 0,function*(){yield this.closeConnection(qt)})));for(const qt of Lt)ct.a.warn("Request to close session failed",{error:qt})})}reset(){return mr(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(At){return this.connections.find(Lt=>Lt.getRemotePeer().id===At&&Lt.isActive())}update(){return mr(this,void 0,void 0,function*(){const At=yield this.getLocalPeer();try{yield this.config.signalingClient.refreshPeer(yield this.config.getToken(),At.id)}catch(Lt){Object(Hr.a)(Lt,uo.a,qt=>qt.statusCode===404),ct.a.warn("Peer expired, creating new peer",{peerId:At.id}),yield this.reset()}yield this.handleSessions(yield this.getSessions())})}handleSessions(At){return mr(this,void 0,void 0,function*(){yield this.syncConnectionsAndSessions(At);const Lt=At.map(qt=>({session:qt,connection:this.connections.find(ln=>ln.getSessionId()===qt.id)}));yield Promise.all(Lt.map(({session:qt,connection:ln})=>mr(this,void 0,void 0,function*(){return yield this.maintainConnection(qt,ln)})))})}syncConnectionsAndSessions(At){return mr(this,void 0,void 0,function*(){const Lt=new Set(At.map(Un=>Un.id)),qt=Un=>Lt.has(Un.getSessionId())||this.connectingSessions.has(Un.getSessionId());this.connections=this.connections.filter(Un=>qt(Un));const ln=this.connections.filter(Un=>!qt(Un)||Un.needsClosing());yield Promise.all(ln.map(Un=>mr(this,void 0,void 0,function*(){yield this.closeConnection(Un)})))})}maintainConnection(At,Lt){return mr(this,void 0,void 0,function*(){const qt=yield this.getLocalPeer(),ln=At.offer.peer.id===qt.id;if(Lt){if(Lt.isReady())try{yield this.config.signalingClient.refreshSession(yield this.config.getToken(),At.id)}catch(Un){Object(Hr.a)(Un,uo.a,hn=>hn.statusCode===404),ct.a.debug("Refresh session not found",{sessionId:At.id})}else if(Lt.isActive())try{yield this.consumeSignals(Lt)}catch(Un){ct.a.warn("Failed to ingest signals, closing connection",{error:Un}),yield this.closeConnection(Lt)}}else{if(ln)return;yield this.connectToSession(At)}})}connectToSession(At){return mr(this,void 0,void 0,function*(){const Lt=yield this.getLocalPeer(),qt=At.offer.peer.id===Lt.id,ln=yield this.createRTCPeerConnection(),Un=new hs(ln,{localPeer:qt?At.offer.peer:At.answer.peer,remotePeer:qt?At.answer.peer:At.offer.peer,sessionId:At.id,isOffer:qt,sendSignal:hn=>this.sendSignal(At.id,hn),receive:(hn,bn)=>this.config.receive(hn,bn)});if(this.connections.find(hn=>hn.getSessionId()===At.id))return ct.a.warn("connectToSession called on a session that already has a connection.",{sessionId:At.id}),void(yield Un.close());this.setupHandlers(Un),this.connections.push(Un);try{yield Un.connect()}catch(hn){ct.a.warn("Failed to handle negotiation, closing connection",{error:hn}),yield this.closeConnection(Un)}})}setupHandlers(At){const{peerConnection:Lt}=At,qt=At.getSessionId();Lt.onconnectionstatechange=()=>mr(this,void 0,void 0,function*(){const ln=this.connectingSessions.get(qt);if(ln===void 0)return;const Un=Lt.connectionState;switch(xr(Lt)&&this.connectingSessions.delete(qt),Un){case"connected":{this.connectingSessions.delete(qt);const hn=new Date().getTime()-ln;It.aggregate("rtc-connect-time",hn);break}case"failed":It.increment("rtc-connect-failed"),yield this.closeConnection(At)}})}consumeSignals(At){return mr(this,void 0,void 0,function*(){let Lt=[];try{Lt=yield this.config.signalingClient.takeSignals(yield this.config.getToken(),At.getSessionId())}catch(qt){Object(Hr.a)(qt,uo.a,ln=>ln.statusCode===404)}for(const qt of Lt)yield At.handleSignal(qt)})}sendSignal(At,Lt){return mr(this,void 0,void 0,function*(){try{yield this.config.signalingClient.addSignals(yield this.config.getToken(),At,{signals:[Lt]})}catch(qt){Object(Hr.a)(qt,uo.a,ln=>ln.statusCode===404)}})}}},,function(o,s,_){_.r(s),_.d(s,"LogClient",function(){return tt});var j=_(26),$=_(12),_e=_(11),et=function(nt,rt,ot,ut){return new(ot||(ot=Promise))(function(dt,Ut){function st(Bt){try{pt(ut.next(Bt))}catch(Qt){Ut(Qt)}}function ct(Bt){try{pt(ut.throw(Bt))}catch(Qt){Ut(Qt)}}function pt(Bt){var Qt;Bt.done?dt(Bt.value):(Qt=Bt.value,Qt instanceof ot?Qt:new ot(function(gt){gt(Qt)})).then(st,ct)}pt((ut=ut.apply(nt,rt||[])).next())})};class tt extends j.a{log(rt){return et(this,void 0,void 0,function*(){const ot=tt.token;try{yield this.fetch("logs",{token:ot,method:"POST",body:{logs:rt},allowUnsafeRetries:!0})}catch(ut){Object($.a)(ut,_e.a,dt=>dt.statusCode===401&&ot!==void 0),tt.token===ot&&delete tt.token,yield this.log(rt)}})}}},function(o,s,_){var 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 rt=0;rt<256;++rt)tt.push((rt+256).toString(16).slice(1));function nt(rt,ot=0){return(tt[rt[ot+0]]+tt[rt[ot+1]]+tt[rt[ot+2]]+tt[rt[ot+3]]+"-"+tt[rt[ot+4]]+tt[rt[ot+5]]+"-"+tt[rt[ot+6]]+tt[rt[ot+7]]+"-"+tt[rt[ot+8]]+tt[rt[ot+9]]+"-"+tt[rt[ot+10]]+tt[rt[ot+11]]+tt[rt[ot+12]]+tt[rt[ot+13]]+tt[rt[ot+14]]+tt[rt[ot+15]]).toLowerCase()}s.a=function(rt,ot,ut){if(j.randomUUID&&!ot&&!rt)return j.randomUUID();const dt=(rt=rt||{}).random||(rt.rng||et)();if(dt[6]=15&dt[6]|64,dt[8]=63&dt[8]|128,ot){ut=ut||0;for(let Ut=0;Ut<16;++Ut)ot[ut+Ut]=dt[Ut];return ot}return nt(dt)}}])})})(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 yn;class RtcClientPool{constructor(s){he(this,yn,null),he(this,"createClient"),he(this,"ttlMs"),he(this,"proxyHandler"),he(this,"proxyReceivers",new Map),he(this,"teardownTimeout",null),he(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)}}yn=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,ot){this.fn=nt,this.context=rt,this.once=ot||!1}function _e(nt,rt,ot,ut,dt){if(typeof ot!="function")throw new TypeError("The listener must be a function");var Ut=new $(ot,ut||nt,dt),st=_?_+rt:rt;return nt._events[st]?nt._events[st].fn?nt._events[st]=[nt._events[st],Ut]:nt._events[st].push(Ut):(nt._events[st]=Ut,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,ot;if(this._eventsCount===0)return nt;for(ot in rt=this._events)s.call(rt,ot)&&nt.push(_?ot.slice(1):ot);return Object.getOwnPropertySymbols?nt.concat(Object.getOwnPropertySymbols(rt)):nt},tt.prototype.listeners=function(nt){var rt=_?_+nt:nt,ot=this._events[rt];if(!ot)return[];if(ot.fn)return[ot.fn];for(var ut=0,dt=ot.length,Ut=new Array(dt);ut{$.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){he(this,"channel"),he(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),he(this,"RESPONSE_SUCCESS_BYTE",0),he(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,ot)=>setTimeout(()=>{et=!0,ot(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 ot;for(let dt=0;dt<$&&(ot=await _e.connect(rt),!ot);dt++)delay$1(100),this.assertNotCancelled(et);if(!ot)throw new Error(`Session could not be created: exhausted ${$} retries`);let ut=0;for(;!et&&_e.getConnectionStatus(rt)!=="connected";)await delay$1(100),ut+=1;return this.assertNotCancelled(et),console.debug(`${new Date().toISOString()} :: Connection completed after ${ut} 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(ot=>{console.error("rtcClient cannot shutdown: %o",ot)}),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(ot=>_e?ot.id===_e:ot.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,_)}}he(Device,"createDevice",createDevice),he(Device,"patchDevice",patchDevice),he(Device,"getDevicesData",getDevicesData),he(Device,"queryDevicesData",queryDevicesData),he(Device,"disableDevice",disableDevice);class PeerDevice extends BaseDevice{constructor(s){super(),he(this,"id"),he(this,"telemetryStreamActive",!1),he(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(),ot=[];for(const ut of rt.results){const dt=parseInt(ut.timestamp),Ut=ut.tags.data_type;delete ut.tags.data_type,ot.push({deviceId:this.id,name:ut.stream,points:[[dt,this.getPointPayload(Ut,ut)]],tags:ut.tags,type:Ut})}return ot.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,ot=rt.stream;delete rt.stream,this.streamTelemetry[ot]=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 Rt=class{static async setDefaultDevice(o){Rt.defaultDeviceId=o}static async getCurrentDevice(){if(!Authentication.token)throw new Error("Not authenticated");if(!Rt.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===Rt.defaultDeviceId),s=o.name,_=new Device(Rt.defaultDeviceId,s,defined$1(Authentication.currentOrganization),o.tags);return Rt.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 Rt.knownContext.push(new WeakRef(s)),s}};let Fleet=Rt;he(Fleet,"defaultDeviceId"),he(Fleet,"knownContext",[]),he(Fleet,"createFleet",createFleet),he(Fleet,"listFleets",listFleets),he(Fleet,"getFleet",getFleet),he(Fleet,"patchFleet",patchFleet),he(Fleet,"deleteFleet",deleteFleet),he(Fleet,"addDeviceToFleet",addDeviceToFleet),he(Fleet,"getFleetDevices",getFleetDevices),he(Fleet,"aggregateTelemetry",aggregateTelemetry),he(Fleet,"createShareLink",createShareLink),he(Fleet,"eventsCounter",eventsCounter),he(Fleet,"getAnalyticStreams",getAnalyticStreams),he(Fleet,"getAnalyticsModules",getAnalyticsModules),he(Fleet,"getAnalyticsRows",getAnalyticsRows),he(Fleet,"getAnnotationCount",getAnnotationCount),he(Fleet,"getAnnotationCountByIntervals",getAnnotationCountByIntervals),he(Fleet,"getCurrentGroup",getCurrentGroup),he(Fleet,"getDevices",getDevices),he(Fleet,"getEvent",getEvent),he(Fleet,"getFileUrl",getFileUrl),he(Fleet,"getInterventions",getInterventions),he(Fleet,"getLatestTelemetry",getLatestTelemetry),he(Fleet,"getOnlineDevices",getOnlineDevices),he(Fleet,"getPeers",getPeers),he(Fleet,"getRealtimeDevices",getRealtimeDevices),he(Fleet,"getRealtimeSessions",getRealtimeSessions),he(Fleet,"getStreams",getStreams),he(Fleet,"getTaskReportRows",getTaskReportRows),he(Fleet,"getTaskReportTables",getTaskReportTables),he(Fleet,"getTelemetry",getTelemetry),he(Fleet,"getViews",getViews),he(Fleet,"patchStream",patchStream),he(Fleet,"patchView",patchView),he(Fleet,"queryAnalytics",queryAnalytics),he(Fleet,"queryDevices",queryDevices),he(Fleet,"queryEvents",queryEvents),he(Fleet,"queryTelemetry",queryTelemetry),he(Fleet,"getAllEventTriggerGroup",getAllEventTriggerGroup),he(Fleet,"getEventTriggerGroup",getEventTriggerGroup),he(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(){}}he(Views,"createTeleopView",createTeleopView),he(Views,"updateTeleopView",updateTeleopView),he(Views,"deleteTeleopView",deleteTeleopView),he(Views,"getTeleopView",getTeleopView),he(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]},ot={key:nt,value:et[nt]};return _e(rt,ot)}}}(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:ot,noDisposeOnSet:ut,noUpdateTTL:dt,maxSize:Ut=0,maxEntrySize:st=0,sizeCalculation:ct,fetchMethod:pt,fetchContext:Bt,noDeleteOnFetchRejection:Qt,noDeleteOnStaleGet:gt,allowStaleOnFetchRejection:ft,allowStaleOnFetchAbort:Ft,ignoreFetchAbort:yt}=s,{length:Ct,maxAge:xt,stale:ht}=s instanceof LRUCache?{}:s;if(_!==0&&!isPosInt(_))throw new TypeError("max option must be a nonnegative integer");const mt=_?getUintArray(_):Array;if(!mt)throw new Error("invalid max value: "+_);if(this.max=_,this.maxSize=Ut,this.maxEntrySize=st||this.maxSize,this.sizeCalculation=ct||Ct,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=pt||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=Bt,!this.fetchMethod&&Bt!==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 mt(_),this.prev=new mt(_),this.head=0,this.tail=0,this.free=new Stack(_),this.initialFill=1,this.size=0,typeof rt=="function"&&(this.dispose=rt),typeof ot=="function"?(this.disposeAfter=ot,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!ut,this.noUpdateTTL=!!dt,this.noDeleteOnFetchRejection=!!Qt,this.allowStaleOnFetchRejection=!!ft,this.allowStaleOnFetchAbort=!!Ft,this.ignoreFetchAbort=!!yt,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||!!ht,this.noDeleteOnStaleGet=!!gt,this.updateAgeOnGet=!!et,this.updateAgeOnHas=!!tt,this.ttlResolution=isPosInt($)||$===0?$:1,this.ttlAutopurge=!!_e,this.ttl=j||xt||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 It="LRU_CACHE_UNBOUNDED";shouldWarn(It)&&(warned.add(It),emitWarning("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",It,LRUCache))}ht&&deprecatedOption("stale","allowStale"),xt&&deprecatedOption("maxAge","ttl"),Ct&&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 ot=this.size===0?void 0:this.keyMap.get(s);if(ot===void 0)ot=this.newIndex(),this.keyList[ot]=s,this.valList[ot]=_,this.keyMap.set(s,ot),this.next[this.tail]=ot,this.prev[ot]=this.tail,this.tail=ot,this.size++,this.addItemSize(ot,et,rt),rt&&(rt.set="add"),nt=!1;else{this.moveToTail(ot);const ut=this.valList[ot];if(_!==ut){if(this.isBackgroundFetch(ut)?ut.__abortController.abort(new Error("replaced")):_e||(this.dispose(ut,s,"set"),this.disposeAfter&&this.disposed.push([ut,s,"set"])),this.removeItemSize(ot),this.valList[ot]=_,this.addItemSize(ot,et,rt),rt){rt.set="replace";const dt=ut&&this.isBackgroundFetch(ut)?ut.__staleWhileFetching:ut;dt!==void 0&&(rt.oldValue=dt)}}else rt&&(rt.set="update")}if(j!==0&&this.ttl===0&&!this.ttls&&this.initializeTTLTracking(),nt||this.setItemTTL(ot,j,$),this.statusTTL(rt,ot),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=(Ut,st=!1)=>{const{aborted:ct}=et.signal,pt=j.ignoreFetchAbort&&Ut!==void 0;return j.status&&(ct&&!st?(j.status.fetchAborted=!0,j.status.fetchError=et.signal.reason,pt&&(j.status.fetchAbortIgnored=!0)):j.status.fetchResolved=!0),ct&&!pt&&!st?ot(et.signal.reason):(this.valList[_]===dt&&(Ut===void 0?dt.__staleWhileFetching?this.valList[_]=dt.__staleWhileFetching:this.delete(s):(j.status&&(j.status.fetchUpdated=!0),this.set(s,Ut,tt.options))),Ut)},rt=Ut=>(j.status&&(j.status.fetchRejected=!0,j.status.fetchError=Ut),ot(Ut)),ot=Ut=>{const{aborted:st}=et.signal,ct=st&&j.allowStaleOnFetchAbort,pt=ct||j.allowStaleOnFetchRejection,Bt=pt||j.noDeleteOnFetchRejection;if(this.valList[_]===dt&&(!Bt||dt.__staleWhileFetching===void 0?this.delete(s):ct||(this.valList[_]=dt.__staleWhileFetching)),pt)return j.status&&dt.__staleWhileFetching!==void 0&&(j.status.returnedStale=!0),dt.__staleWhileFetching;if(dt.__returned===dt)throw Ut},ut=(Ut,st)=>{this.fetchMethod(s,_e,tt).then(ct=>Ut(ct),st),et.signal.addEventListener("abort",()=>{(!j.ignoreFetchAbort||j.allowStaleOnFetchAbort)&&(Ut(),j.allowStaleOnFetchAbort&&(Ut=ct=>nt(ct,!0)))})};j.status&&(j.status.fetchDispatched=!0);const dt=new Promise(ut).then(nt,rt);return dt.__abortController=et,dt.__staleWhileFetching=_e,dt.__returned=null,_===void 0?(this.set(s,dt,{...tt.options,status:void 0}),_=this.keyMap.get(s)):this.valList[_]=dt,dt}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:ot=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:ut=this.allowStaleOnFetchRejection,ignoreFetchAbort:dt=this.ignoreFetchAbort,allowStaleOnFetchAbort:Ut=this.allowStaleOnFetchAbort,fetchContext:st=this.fetchContext,forceRefresh:ct=!1,status:pt,signal:Bt}={}){if(!this.fetchMethod)return pt&&(pt.fetch="get"),this.get(s,{allowStale:_,updateAgeOnGet:j,noDeleteOnStaleGet:$,status:pt});const Qt={allowStale:_,updateAgeOnGet:j,noDeleteOnStaleGet:$,ttl:_e,noDisposeOnSet:et,size:tt,sizeCalculation:nt,noUpdateTTL:rt,noDeleteOnFetchRejection:ot,allowStaleOnFetchRejection:ut,allowStaleOnFetchAbort:Ut,ignoreFetchAbort:dt,status:pt,signal:Bt};let gt=this.keyMap.get(s);if(gt===void 0){pt&&(pt.fetch="miss");const ft=this.backgroundFetch(s,gt,Qt,st);return ft.__returned=ft}else{const ft=this.valList[gt];if(this.isBackgroundFetch(ft)){const ht=_&&ft.__staleWhileFetching!==void 0;return pt&&(pt.fetch="inflight",ht&&(pt.returnedStale=!0)),ht?ft.__staleWhileFetching:ft.__returned=ft}const Ft=this.isStale(gt);if(!ct&&!Ft)return pt&&(pt.fetch="hit"),this.moveToTail(gt),j&&this.updateItemAge(gt),this.statusTTL(pt,gt),ft;const yt=this.backgroundFetch(s,gt,Qt,st),Ct=yt.__staleWhileFetching!==void 0,xt=Ct&&_;return pt&&(pt.fetch=Ct&&Ft?"stale":"refresh",xt&&Ft&&(pt.returnedStale=!0)),xt?yt.__staleWhileFetching:yt.__returned=yt}}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){he(this,"cache"),he(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),he(this,"expireRejectedPromiseValues"),he(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,qe=class{constructor(){he(this,"workers"),he(this,"cache",new PromiseLruCache({name:"DataLoader-cache",max:5e3})),he(this,"nextWorkerIndex",-1),he(this,"resolveMap",{}),he(this,"rejectMap",{})}static get(){return qe.references++,qe.instance||(qe.instance=new qe),qe.instance}static release(o){var s;if(qe.instance!==o){console.error("Releasing an unallocated/unowned loader!");return}qe.references--,!(qe.references>0)&&((s=qe.instance.workers)==null||s.forEach(_=>_.terminate()),qe.instance.workers=void 0,qe.instance.cache.clear(),qe.instance=null,qe.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=qe;he(DataLoader,"references",0),he(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 lodash={exports:{}};/** - * @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 - */lodash.exports;(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,ot="__lodash_placeholder__",ut=1,dt=2,Ut=4,st=1,ct=2,pt=1,Bt=2,Qt=4,gt=8,ft=16,Ft=32,yt=64,Ct=128,xt=256,ht=512,mt=30,It="...",vt=800,Tt=16,Ot=1,_t=2,Wt=3,bt=1/0,Jt=9007199254740991,Zt=17976931348623157e292,Vt=0/0,jt=4294967295,zt=jt-1,$t=jt>>>1,nn=[["ary",Ct],["bind",pt],["bindKey",Bt],["curry",gt],["curryRight",ft],["flip",ht],["partial",Ft],["partialRight",yt],["rearg",xt]],rn="[object Arguments]",Dt="[object Array]",wt="[object AsyncFunction]",Et="[object Boolean]",kt="[object Date]",Pt="[object DOMException]",Kt="[object Error]",Ht="[object Function]",on="[object GeneratorFunction]",sn="[object Map]",gn="[object Number]",Cn="[object Null]",In="[object Object]",Mn="[object Promise]",rr="[object Proxy]",An="[object RegExp]",Dn="[object Set]",Hn="[object String]",Fr="[object Symbol]",hr="[object Undefined]",Gr="[object WeakMap]",Co="[object WeakSet]",co="[object ArrayBuffer]",Jr="[object DataView]",xr="[object Float32Array]",ro="[object Float64Array]",er="[object Int8Array]",sr="[object Int16Array]",Xn="[object Int32Array]",gr="[object Uint8Array]",Yr="[object Uint8ClampedArray]",Wr="[object Uint16Array]",Pn="[object Uint32Array]",Yn=/\b__p \+= '';/g,$r=/\b(__p \+=) '' \+/g,Hr=/(__e\(.*?\)|\b__t\)) \+\n'';/g,uo=/&(?:amp|lt|gt|quot|#39);/g,Ws=/[&<>"']/g,ps=RegExp(uo.source),Oo=RegExp(Ws.source),Uo=/<%-([\s\S]+?)%>/g,hs=/<%([\s\S]+?)%>/g,mr=/<%=([\s\S]+?)%>/g,Qs=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Jn=/^\w*$/,At=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Lt=/[\\^$.*+?()[\]{}|]/g,qt=RegExp(Lt.source),ln=/^\s+/,Un=/\s/,hn=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,bn=/\{\n\/\* \[wrapped with (.+)\] \*/,Vn=/,? & /,Qn=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Fn=/[()=,{}\[\]\/\s]/,xn=/\\(\\)?/g,Kn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Ur=/\w*$/,Nr=/^[-+]0x[0-9a-f]+$/i,Ir=/^0b[01]+$/i,jr=/^\[object .+?Constructor\]$/,Kr=/^0o[0-7]+$/i,Cr=/^(?:0|[1-9]\d*)$/,Rr=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,vr=/($^)/,Zr=/['\n\r\u2028\u2029\\]/g,Dr="\\ud800-\\udfff",zo="\\u0300-\\u036f",Lr="\\ufe20-\\ufe2f",_i="\\u20d0-\\u20ff",Bo=zo+Lr+_i,Go="\\u2700-\\u27bf",$a="a-z\\xdf-\\xf6\\xf8-\\xff",Fo="\\xac\\xb1\\xd7\\xf7",Dl="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Ml="\\u2000-\\u206f",Al=" \\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",Ys="A-Z\\xc0-\\xd6\\xd8-\\xde",Hs="\\ufe0e\\ufe0f",ks=Fo+Dl+Ml+Al,es="['’]",Yo="["+Dr+"]",Xs="["+ks+"]",fs="["+Bo+"]",bo="\\d+",xo="["+Go+"]",Io="["+$a+"]",Bs="[^"+Dr+ks+bo+Go+$a+Ys+"]",Rs="\\ud83c[\\udffb-\\udfff]",ts="(?:"+fs+"|"+Rs+")",Ol="[^"+Dr+"]",ns="(?:\\ud83c[\\udde6-\\uddff]){2}",_s="[\\ud800-\\udbff][\\udc00-\\udfff]",rs="["+Ys+"]",xl="\\u200d",Il="(?:"+Io+"|"+Bs+")",Ll="(?:"+rs+"|"+Bs+")",Ks="(?:"+es+"(?:d|ll|m|re|s|t|ve))?",qs="(?:"+es+"(?:D|LL|M|RE|S|T|VE))?",Cs=ts+"?",$s="["+Hs+"]?",Ho="(?:"+xl+"(?:"+[Ol,ns,_s].join("|")+")"+$s+Cs+")*",Pl="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",wo="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Ul=$s+Cs+Ho,Ss="(?:"+[xo,ns,_s].join("|")+")"+Ul,ku="(?:"+[Ol+fs+"?",fs,ns,_s,Yo].join("|")+")",zl=RegExp(es,"g"),_u=RegExp(fs,"g"),go=RegExp(Rs+"(?="+Rs+")|"+ku+Ul,"g"),ms=RegExp([rs+"?"+Io+"+"+Ks+"(?="+[Xs,rs,"$"].join("|")+")",Ll+"+"+qs+"(?="+[Xs,rs+Il,"$"].join("|")+")",rs+"?"+Il+"+"+Ks,rs+"+"+qs,wo,Pl,bo,Ss].join("|"),"g"),is=RegExp("["+xl+Dr+Bo+Hs+"]"),io=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Fl=["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"],Gl=-1,Vr={};Vr[xr]=Vr[ro]=Vr[er]=Vr[sr]=Vr[Xn]=Vr[gr]=Vr[Yr]=Vr[Wr]=Vr[Pn]=!0,Vr[rn]=Vr[Dt]=Vr[co]=Vr[Et]=Vr[Jr]=Vr[kt]=Vr[Kt]=Vr[Ht]=Vr[sn]=Vr[gn]=Vr[In]=Vr[An]=Vr[Dn]=Vr[Hn]=Vr[Gr]=!1;var Nt={};Nt[rn]=Nt[Dt]=Nt[co]=Nt[Jr]=Nt[Et]=Nt[kt]=Nt[xr]=Nt[ro]=Nt[er]=Nt[sr]=Nt[Xn]=Nt[sn]=Nt[gn]=Nt[In]=Nt[An]=Nt[Dn]=Nt[Hn]=Nt[Fr]=Nt[gr]=Nt[Yr]=Nt[Wr]=Nt[Pn]=!0,Nt[Kt]=Nt[Ht]=Nt[Gr]=!1;var Gt={À:"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"},an={"&":"&","<":"<",">":">",'"':""","'":"'"},cn={"&":"&","<":"<",">":">",""":'"',"'":"'"},mn={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Tn=parseFloat,fn=parseInt,vn=typeof commonjsGlobal$1=="object"&&commonjsGlobal$1&&commonjsGlobal$1.Object===Object&&commonjsGlobal$1,kn=typeof self=="object"&&self&&self.Object===Object&&self,Zn=vn||kn||Function("return this")(),zn=s&&!s.nodeType&&s,ir=zn&&!0&&o&&!o.nodeType&&o,Qr=ir&&ir.exports===zn,yr=Qr&&vn.process,cr=function(){try{var pn=ir&&ir.require&&ir.require("util").types;return pn||yr&&yr.binding&&yr.binding("util")}catch{}}(),qn=cr&&cr.isArrayBuffer,Mr=cr&&cr.isDate,oo=cr&&cr.isMap,DU=cr&&cr.isRegExp,MU=cr&&cr.isSet,AU=cr&&cr.isTypedArray;function Ro(pn,Nn,En){switch(En.length){case 0:return pn.call(Nn);case 1:return pn.call(Nn,En[0]);case 2:return pn.call(Nn,En[0],En[1]);case 3:return pn.call(Nn,En[0],En[1],En[2])}return pn.apply(Nn,En)}function Mp(pn,Nn,En,Ln){for(var or=-1,Sr=pn==null?0:pn.length;++or-1}function Cu(pn,Nn,En){for(var Ln=-1,or=pn==null?0:pn.length;++Ln-1;);return En}function GU(pn,Nn){for(var En=pn.length;En--&&ws(Nn,pn[En],0)>-1;);return En}function Gp(pn,Nn){for(var En=pn.length,Ln=0;En--;)pn[En]===Nn&&++Ln;return Ln}var Yp=Mu(Gt),Hp=Mu(an);function Xp(pn){return"\\"+mn[pn]}function Kp(pn,Nn){return pn==null?_:pn[Nn]}function Zs(pn){return is.test(pn)}function qp(pn){return io.test(pn)}function $p(pn){for(var Nn,En=[];!(Nn=pn.next()).done;)En.push(Nn.value);return En}function Iu(pn){var Nn=-1,En=Array(pn.size);return pn.forEach(function(Ln,or){En[++Nn]=[or,Ln]}),En}function YU(pn,Nn){return function(En){return pn(Nn(En))}}function ls(pn,Nn){for(var En=-1,Ln=pn.length,or=0,Sr=[];++En-1}function AQ(it,lt){var St=this.__data__,Mt=cu(St,it);return Mt<0?(++this.size,St.push([it,lt])):St[Mt][1]=lt,this}Xo.prototype.clear=wQ,Xo.prototype.delete=ZQ,Xo.prototype.get=DQ,Xo.prototype.has=MQ,Xo.prototype.set=AQ;function Ko(it){var lt=-1,St=it==null?0:it.length;for(this.clear();++lt=lt?it:lt)),it}function No(it,lt,St,Mt,Yt,tn){var dn,un=lt&ut,Rn=lt&dt,Wn=lt&Ut;if(St&&(dn=Yt?St(it,Mt,Yt,tn):St(it)),dn!==_)return dn;if(!_r(it))return it;var _n=ar(it);if(_n){if(dn=IB(it),!un)return po(it,dn)}else{var wn=no(it),jn=wn==Ht||wn==on;if(gs(it))return NF(it,un);if(wn==In||wn==rn||jn&&!Yt){if(dn=Rn||jn?{}:HF(it),!un)return Rn?WB(it,eB(dn,it)):NB(it,aF(dn,it))}else{if(!Nt[wn])return Yt?it:{};dn=jB(it,wn,un)}}tn||(tn=new Do);var Gn=tn.get(it);if(Gn)return Gn;tn.set(it,dn),yp(it)?it.forEach(function(nr){dn.add(No(nr,lt,St,nr,it,tn))}):Sp(it)&&it.forEach(function(nr,pr){dn.set(pr,No(nr,lt,St,pr,it,tn))});var tr=Wn?Rn?gU:FU:Rn?Qo:Xr,dr=_n?_:tr(it);return To(dr||it,function(nr,pr){dr&&(pr=nr,nr=it[pr]),Vl(dn,pr,No(nr,lt,St,pr,it,tn))}),dn}function tB(it){var lt=Xr(it);return function(St){return sF(St,it,lt)}}function sF(it,lt,St){var Mt=St.length;if(it==null)return!Mt;for(it=Tr(it);Mt--;){var Yt=St[Mt],tn=lt[Yt],dn=it[Yt];if(dn===_&&!(Yt in it)||!tn(dn))return!1}return!0}function lF(it,lt,St){if(typeof it!="function")throw new vo(et);return wl(function(){it.apply(_,St)},lt)}function Tl(it,lt,St,Mt){var Yt=-1,tn=Yl,dn=!0,un=it.length,Rn=[],Wn=lt.length;if(!un)return Rn;St&&(lt=kr(lt,So(St))),Mt?(tn=Cu,dn=!1):lt.length>=$&&(tn=Ql,dn=!1,lt=new Vs(lt));e:for(;++YtYt?0:Yt+St),Mt=Mt===_||Mt>Yt?Yt:lr(Mt),Mt<0&&(Mt+=Yt),Mt=St>Mt?0:Vp(Mt);St0&&St(un)?lt>1?qr(un,lt-1,St,Mt,Yt):ss(Yt,un):Mt||(Yt[Yt.length]=un)}return Yt}var Hu=ZF(),uF=ZF(!0);function jo(it,lt){return it&&Hu(it,lt,Xr)}function Xu(it,lt){return it&&uF(it,lt,Xr)}function Uu(it,lt){return as(lt,function(St){return ba(it[St])})}function Ts(it,lt){lt=Us(lt,it);for(var St=0,Mt=lt.length;it!=null&&Stlt}function iB(it,lt){return it!=null&&br.call(it,lt)}function oB(it,lt){return it!=null&< in Tr(it)}function aB(it,lt,St){return it>=eo(lt,St)&&it=120&&_n.length>=120)?new Vs(dn&&_n):_}_n=it[0];var wn=-1,jn=un[0];e:for(;++wn-1;)un!==it&&ru.call(un,Rn,1),ru.call(it,Rn,1);return it}function mF(it,lt){for(var St=it?lt.length:0,Mt=St-1;St--;){var Yt=lt[St];if(St==Mt||Yt!==tn){var tn=Yt;ga(Yt)?ru.call(it,Yt,1):aU(it,Yt)}}return it}function rU(it,lt){return it+au(nF()*(lt-it+1))}function BB(it,lt,St,Mt){for(var Yt=-1,tn=zr(ou((lt-it)/(St||1)),0),dn=En(tn);tn--;)dn[Mt?tn:++Yt]=it,it+=St;return dn}function iU(it,lt){var St="";if(!it||lt<1||lt>Jt)return St;do lt%2&&(St+=it),lt=au(lt/2),lt&&(it+=it);while(lt);return St}function ur(it,lt){return SU(qF(it,lt,fo),it+"")}function RB(it){return oF(Gs(it))}function SB(it,lt){var St=Gs(it);return yu(St,bs(lt,0,St.length))}function Wl(it,lt,St,Mt){if(!_r(it))return it;lt=Us(lt,it);for(var Yt=-1,tn=lt.length,dn=tn-1,un=it;un!=null&&++YtYt?0:Yt+lt),St=St>Yt?Yt:St,St<0&&(St+=Yt),Yt=lt>St?0:St-lt>>>0,lt>>>=0;for(var tn=En(Yt);++Mt>>1,dn=it[tn];dn!==null&&!yo(dn)&&(St?dn<=lt:dn=$){var Wn=lt?null:wB(it);if(Wn)return Xl(Wn);dn=!1,Yt=Ql,Rn=new Vs}else Rn=lt?[]:un;e:for(;++Mt=Mt?it:Wo(it,lt,St)}var JF=FQ||function(it){return Zn.clearTimeout(it)};function NF(it,lt){if(lt)return it.slice();var St=it.length,Mt=KU?KU(St):new it.constructor(St);return it.copy(Mt),Mt}function cU(it){var lt=new it.constructor(it.byteLength);return new tu(lt).set(new tu(it)),lt}function bB(it,lt){var St=lt?cU(it.buffer):it.buffer;return new it.constructor(St,it.byteOffset,it.byteLength)}function TB(it){var lt=new it.constructor(it.source,Ur.exec(it));return lt.lastIndex=it.lastIndex,lt}function vB(it){return El?Tr(El.call(it)):{}}function WF(it,lt){var St=lt?cU(it.buffer):it.buffer;return new it.constructor(St,it.byteOffset,it.length)}function kF(it,lt){if(it!==lt){var St=it!==_,Mt=it===null,Yt=it===it,tn=yo(it),dn=lt!==_,un=lt===null,Rn=lt===lt,Wn=yo(lt);if(!un&&!Wn&&!tn&&it>lt||tn&&dn&&Rn&&!un&&!Wn||Mt&&dn&&Rn||!St&&Rn||!Yt)return 1;if(!Mt&&!tn&&!Wn&&it=un)return Rn;var Wn=St[Mt];return Rn*(Wn=="desc"?-1:1)}}return it.index-lt.index}function _F(it,lt,St,Mt){for(var Yt=-1,tn=it.length,dn=St.length,un=-1,Rn=lt.length,Wn=zr(tn-dn,0),_n=En(Rn+Wn),wn=!Mt;++un1?St[Yt-1]:_,dn=Yt>2?St[2]:_;for(tn=it.length>3&&typeof tn=="function"?(Yt--,tn):_,dn&&so(St[0],St[1],dn)&&(tn=Yt<3?_:tn,Yt=1),lt=Tr(lt);++Mt-1?Yt[tn?lt[dn]:dn]:_}}function AF(it){return na(function(lt){var St=lt.length,Mt=St,Yt=Jo.prototype.thru;for(it&<.reverse();Mt--;){var tn=lt[Mt];if(typeof tn!="function")throw new vo(et);if(Yt&&!dn&&Su(tn)=="wrapper")var dn=new Jo([],!0)}for(Mt=dn?Mt:St;++Mt1&&Br.reverse(),_n&&Rnun))return!1;var Wn=tn.get(it),_n=tn.get(lt);if(Wn&&_n)return Wn==lt&&_n==it;var wn=-1,jn=!0,Gn=St&ct?new Vs:_;for(tn.set(it,lt),tn.set(lt,it);++wn1?"& ":"")+lt[Mt],lt=lt.join(St>2?", ":" "),it.replace(hn,`{ -/* [wrapped with `+lt+`] */ -`)}function PB(it){return ar(it)||Ns(it)||!!(eF&&it&&it[eF])}function ga(it,lt){var St=typeof it;return lt=lt??Jt,!!lt&&(St=="number"||St!="symbol"&&Cr.test(it))&&it>-1&&it%1==0&&it0){if(++lt>=vt)return arguments[0]}else lt=0;return it.apply(_,arguments)}}function yu(it,lt){var St=-1,Mt=it.length,Yt=Mt-1;for(lt=lt===_?Mt:lt;++St1?it[lt-1]:_;return St=typeof St=="function"?(it.pop(),St):_,dp(it,St)});function cp(it){var lt=en(it);return lt.__chain__=!0,lt}function n0(it,lt){return lt(it),it}function Eu(it,lt){return lt(it)}var r0=na(function(it){var lt=it.length,St=lt?it[0]:0,Mt=this.__wrapped__,Yt=function(tn){return Yu(tn,it)};return lt>1||this.__actions__.length||!(Mt instanceof fr)||!ga(St)?this.thru(Yt):(Mt=Mt.slice(St,+St+(lt?1:0)),Mt.__actions__.push({func:Eu,args:[Yt],thisArg:_}),new Jo(Mt,this.__chain__).thru(function(tn){return lt&&!tn.length&&tn.push(_),tn}))});function o0(){return cp(this)}function a0(){return new Jo(this.value(),this.__chain__)}function l0(){this.__values__===_&&(this.__values__=Ep(this.value()));var it=this.__index__>=this.__values__.length,lt=it?_:this.__values__[this.__index__++];return{done:it,value:lt}}function u0(){return this}function U0(it){for(var lt,St=this;St instanceof du;){var Mt=rp(St);Mt.__index__=0,Mt.__values__=_,lt?Yt.__wrapped__=Mt:lt=Mt;var Yt=Mt;St=St.__wrapped__}return Yt.__wrapped__=it,lt}function F0(){var it=this.__wrapped__;if(it instanceof fr){var lt=it;return this.__actions__.length&&(lt=new fr(this)),lt=lt.reverse(),lt.__actions__.push({func:Eu,args:[mU],thisArg:_}),new Jo(lt,this.__chain__)}return this.thru(mU)}function g0(){return TF(this.__wrapped__,this.__actions__)}var p0=hu(function(it,lt,St){br.call(it,St)?++it[St]:qo(it,St,1)});function h0(it,lt,St){var Mt=ar(it)?OU:nB;return St&&so(it,lt,St)&&(lt=_),Mt(it,$n(lt,3))}function Q0(it,lt){var St=ar(it)?as:cF;return St(it,$n(lt,3))}var f0=MF(ip),B0=MF(op);function S0(it,lt){return qr(Vu(it,lt),1)}function m0(it,lt){return qr(Vu(it,lt),bt)}function y0(it,lt,St){return St=St===_?1:lr(St),qr(Vu(it,lt),St)}function up(it,lt){var St=ar(it)?To:cs;return St(it,$n(lt,3))}function Up(it,lt){var St=ar(it)?Ap:dF;return St(it,$n(lt,3))}var E0=hu(function(it,lt,St){br.call(it,St)?it[St].push(lt):qo(it,St,[lt])});function V0(it,lt,St,Mt){it=ho(it)?it:Gs(it),St=St&&!Mt?lr(St):0;var Yt=it.length;return St<0&&(St=zr(Yt+St,0)),Nu(it)?St<=Yt&&it.indexOf(lt,St)>-1:!!Yt&&ws(it,lt,St)>-1}var b0=ur(function(it,lt,St){var Mt=-1,Yt=typeof lt=="function",tn=ho(it)?En(it.length):[];return cs(it,function(dn){tn[++Mt]=Yt?Ro(lt,dn,St):Jl(dn,lt,St)}),tn}),T0=hu(function(it,lt,St){qo(it,St,lt)});function Vu(it,lt){var St=ar(it)?kr:hF;return St(it,$n(lt,3))}function v0(it,lt,St,Mt){return it==null?[]:(ar(lt)||(lt=lt==null?[]:[lt]),St=Mt?_:St,ar(St)||(St=St==null?[]:[St]),RF(it,lt,St))}var N0=hu(function(it,lt,St){it[St?0:1].push(lt)},function(){return[[],[]]});function W0(it,lt,St){var Mt=ar(it)?wu:LU,Yt=arguments.length<3;return Mt(it,$n(lt,4),St,Yt,cs)}function k0(it,lt,St){var Mt=ar(it)?Op:LU,Yt=arguments.length<3;return Mt(it,$n(lt,4),St,Yt,dF)}function _0(it,lt){var St=ar(it)?as:cF;return St(it,vu($n(lt,3)))}function C0(it){var lt=ar(it)?oF:RB;return lt(it)}function w0(it,lt,St){(St?so(it,lt,St):lt===_)?lt=1:lt=lr(lt);var Mt=ar(it)?qQ:SB;return Mt(it,lt)}function Z0(it){var lt=ar(it)?$Q:yB;return lt(it)}function M0(it){if(it==null)return 0;if(ho(it))return Nu(it)?Ds(it):it.length;var lt=no(it);return lt==sn||lt==Dn?it.size:eU(it).length}function A0(it,lt,St){var Mt=ar(it)?Zu:EB;return St&&so(it,lt,St)&&(lt=_),Mt(it,$n(lt,3))}var x0=ur(function(it,lt){if(it==null)return[];var St=lt.length;return St>1&&so(it,lt[0],lt[1])?lt=[]:St>2&&so(lt[0],lt[1],lt[2])&&(lt=[lt[0]]),RF(it,qr(lt,1),[])}),bu=gQ||function(){return Zn.Date.now()};function I0(it,lt){if(typeof lt!="function")throw new vo(et);return it=lr(it),function(){if(--it<1)return lt.apply(this,arguments)}}function Fp(it,lt,St){return lt=St?_:lt,lt=it&<==null?it.length:lt,$o(it,Ct,_,_,_,_,lt)}function gp(it,lt){var St;if(typeof lt!="function")throw new vo(et);return it=lr(it),function(){return--it>0&&(St=lt.apply(this,arguments)),it<=1&&(lt=_),St}}var EU=ur(function(it,lt,St){var Mt=pt;if(St.length){var Yt=ls(St,Ps(EU));Mt|=Ft}return $o(it,Mt,lt,St,Yt)}),pp=ur(function(it,lt,St){var Mt=pt|Bt;if(St.length){var Yt=ls(St,Ps(pp));Mt|=Ft}return $o(lt,Mt,it,St,Yt)});function hp(it,lt,St){lt=St?_:lt;var Mt=$o(it,gt,_,_,_,_,_,lt);return Mt.placeholder=hp.placeholder,Mt}function Qp(it,lt,St){lt=St?_:lt;var Mt=$o(it,ft,_,_,_,_,_,lt);return Mt.placeholder=Qp.placeholder,Mt}function fp(it,lt,St){var Mt,Yt,tn,dn,un,Rn,Wn=0,_n=!1,wn=!1,jn=!0;if(typeof it!="function")throw new vo(et);lt=_o(lt)||0,_r(St)&&(_n=!!St.leading,wn="maxWait"in St,tn=wn?zr(_o(St.maxWait)||0,lt):tn,jn="trailing"in St?!!St.trailing:jn);function Gn(Or){var Ao=Mt,xa=Yt;return Mt=Yt=_,Wn=Or,dn=it.apply(xa,Ao),dn}function tr(Or){return Wn=Or,un=wl(pr,lt),_n?Gn(Or):dn}function dr(Or){var Ao=Or-Rn,xa=Or-Wn,Dp=lt-Ao;return wn?eo(Dp,tn-xa):Dp}function nr(Or){var Ao=Or-Rn,xa=Or-Wn;return Rn===_||Ao>=lt||Ao<0||wn&&xa>=tn}function pr(){var Or=bu();if(nr(Or))return Br(Or);un=wl(pr,dr(Or))}function Br(Or){return un=_,jn&&Mt?Gn(Or):(Mt=Yt=_,dn)}function Eo(){un!==_&&JF(un),Wn=0,Mt=Rn=Yt=un=_}function lo(){return un===_?dn:Br(bu())}function Vo(){var Or=bu(),Ao=nr(Or);if(Mt=arguments,Yt=this,Rn=Or,Ao){if(un===_)return tr(Rn);if(wn)return JF(un),un=wl(pr,lt),Gn(Rn)}return un===_&&(un=wl(pr,lt)),dn}return Vo.cancel=Eo,Vo.flush=lo,Vo}var j0=ur(function(it,lt){return lF(it,1,lt)}),L0=ur(function(it,lt,St){return lF(it,_o(lt)||0,St)});function z0(it){return $o(it,ht)}function Tu(it,lt){if(typeof it!="function"||lt!=null&&typeof lt!="function")throw new vo(et);var St=function(){var Mt=arguments,Yt=lt?lt.apply(this,Mt):Mt[0],tn=St.cache;if(tn.has(Yt))return tn.get(Yt);var dn=it.apply(this,Mt);return St.cache=tn.set(Yt,dn)||tn,dn};return St.cache=new(Tu.Cache||Ko),St}Tu.Cache=Ko;function vu(it){if(typeof it!="function")throw new vo(et);return function(){var lt=arguments;switch(lt.length){case 0:return!it.call(this);case 1:return!it.call(this,lt[0]);case 2:return!it.call(this,lt[0],lt[1]);case 3:return!it.call(this,lt[0],lt[1],lt[2])}return!it.apply(this,lt)}}function Y0(it){return gp(2,it)}var H0=VB(function(it,lt){lt=lt.length==1&&ar(lt[0])?kr(lt[0],So($n())):kr(qr(lt,1),So($n()));var St=lt.length;return ur(function(Mt){for(var Yt=-1,tn=eo(Mt.length,St);++Yt=lt}),Ns=FF(function(){return arguments}())?FF:function(it){return wr(it)&&br.call(it,"callee")&&!$U.call(it,"callee")},ar=En.isArray,US=qn?So(qn):lB;function ho(it){return it!=null&&Ju(it.length)&&!ba(it)}function Ar(it){return wr(it)&&ho(it)}function FS(it){return it===!0||it===!1||wr(it)&&ao(it)==Et}var gs=hQ||ZU,gS=Mr?So(Mr):dB;function pS(it){return wr(it)&&it.nodeType===1&&!Zl(it)}function hS(it){if(it==null)return!0;if(ho(it)&&(ar(it)||typeof it=="string"||typeof it.splice=="function"||gs(it)||zs(it)||Ns(it)))return!it.length;var lt=no(it);if(lt==sn||lt==Dn)return!it.size;if(Cl(it))return!eU(it).length;for(var St in it)if(br.call(it,St))return!1;return!0}function QS(it,lt){return Nl(it,lt)}function fS(it,lt,St){St=typeof St=="function"?St:_;var Mt=St?St(it,lt):_;return Mt===_?Nl(it,lt,_,St):!!Mt}function bU(it){if(!wr(it))return!1;var lt=ao(it);return lt==Kt||lt==Pt||typeof it.message=="string"&&typeof it.name=="string"&&!Zl(it)}function BS(it){return typeof it=="number"&&tF(it)}function ba(it){if(!_r(it))return!1;var lt=ao(it);return lt==Ht||lt==on||lt==wt||lt==rr}function Rp(it){return typeof it=="number"&&it==lr(it)}function Ju(it){return typeof it=="number"&&it>-1&&it%1==0&&it<=Jt}function _r(it){var lt=typeof it;return it!=null&&(lt=="object"||lt=="function")}function wr(it){return it!=null&&typeof it=="object"}var Sp=oo?So(oo):uB;function RS(it,lt){return it===lt||$u(it,lt,hU(lt))}function SS(it,lt,St){return St=typeof St=="function"?St:_,$u(it,lt,hU(lt),St)}function mS(it){return mp(it)&&it!=+it}function yS(it){if(YB(it))throw new or(_e);return gF(it)}function ES(it){return it===null}function VS(it){return it==null}function mp(it){return typeof it=="number"||wr(it)&&ao(it)==gn}function Zl(it){if(!wr(it)||ao(it)!=In)return!1;var lt=nu(it);if(lt===null)return!0;var St=br.call(lt,"constructor")&<.constructor;return typeof St=="function"&&St instanceof St&&_d.call(St)==cQ}var TU=DU?So(DU):UB;function bS(it){return Rp(it)&&it>=-Jt&&it<=Jt}var yp=MU?So(MU):FB;function Nu(it){return typeof it=="string"||!ar(it)&&wr(it)&&ao(it)==Hn}function yo(it){return typeof it=="symbol"||wr(it)&&ao(it)==Fr}var zs=AU?So(AU):gB;function TS(it){return it===_}function vS(it){return wr(it)&&no(it)==Gr}function JS(it){return wr(it)&&ao(it)==Co}var NS=Ru(tU),WS=Ru(function(it,lt){return it<=lt});function Ep(it){if(!it)return[];if(ho(it))return Nu(it)?Zo(it):po(it);if(Bl&&it[Bl])return $p(it[Bl]());var lt=no(it),St=lt==sn?Iu:lt==Dn?Xl:Gs;return St(it)}function _a(it){if(!it)return it===0?it:0;if(it=_o(it),it===bt||it===-bt){var lt=it<0?-1:1;return lt*Zt}return it===it?it:0}function lr(it){var lt=_a(it),St=lt%1;return lt===lt?St?lt-St:lt:0}function Vp(it){return it?bs(lr(it),0,jt):0}function _o(it){if(typeof it=="number")return it;if(yo(it))return Vt;if(_r(it)){var lt=typeof it.valueOf=="function"?it.valueOf():it;it=_r(lt)?lt+"":lt}if(typeof it!="string")return it===0?it:+it;it=PU(it);var St=Ir.test(it);return St||Kr.test(it)?fn(it.slice(2),St?2:8):Nr.test(it)?Vt:+it}function bp(it){return Lo(it,Qo(it))}function kS(it){return it?bs(lr(it),-Jt,Jt):it===0?it:0}function Er(it){return it==null?"":mo(it)}var _S=js(function(it,lt){if(Cl(lt)||ho(lt)){Lo(lt,Xr(lt),it);return}for(var St in lt)br.call(lt,St)&&Vl(it,St,lt[St])}),Tp=js(function(it,lt){Lo(lt,Qo(lt),it)}),Wu=js(function(it,lt,St,Mt){Lo(lt,Qo(lt),it,Mt)}),CS=js(function(it,lt,St,Mt){Lo(lt,Xr(lt),it,Mt)}),wS=na(Yu);function ZS(it,lt){var St=Is(it);return lt==null?St:aF(St,lt)}var DS=ur(function(it,lt){it=Tr(it);var St=-1,Mt=lt.length,Yt=Mt>2?lt[2]:_;for(Yt&&so(lt[0],lt[1],Yt)&&(Mt=1);++St1),tn}),Lo(it,gU(it),St),Mt&&(St=No(St,ut|dt|Ut,ZB));for(var Yt=lt.length;Yt--;)aU(St,lt[Yt]);return St});function rm(it,lt){return Jp(it,vu($n(lt)))}var im=na(function(it,lt){return it==null?{}:QB(it,lt)});function Jp(it,lt){if(it==null)return{};var St=kr(gU(it),function(Mt){return[Mt]});return lt=$n(lt),SF(it,St,function(Mt,Yt){return lt(Mt,Yt[0])})}function om(it,lt,St){lt=Us(lt,it);var Mt=-1,Yt=lt.length;for(Yt||(Yt=1,it=_);++Mtlt){var Mt=it;it=lt,lt=Mt}if(St||it%1||lt%1){var Yt=nF();return eo(it+Yt*(lt-it+Tn("1e-"+((Yt+"").length-1))),lt)}return rU(it,lt)}var hm=Ls(function(it,lt,St){return lt=lt.toLowerCase(),it+(St?kp(lt):lt)});function kp(it){return NU(Er(it).toLowerCase())}function _p(it){return it=Er(it),it&&it.replace(Rr,Yp).replace(_u,"")}function Qm(it,lt,St){it=Er(it),lt=mo(lt);var Mt=it.length;St=St===_?Mt:bs(lr(St),0,Mt);var Yt=St;return St-=lt.length,St>=0&&it.slice(St,Yt)==lt}function fm(it){return it=Er(it),it&&Oo.test(it)?it.replace(Ws,Hp):it}function Bm(it){return it=Er(it),it&&qt.test(it)?it.replace(Lt,"\\$&"):it}var Rm=Ls(function(it,lt,St){return it+(St?"-":"")+lt.toLowerCase()}),Sm=Ls(function(it,lt,St){return it+(St?" ":"")+lt.toLowerCase()}),mm=DF("toLowerCase");function ym(it,lt,St){it=Er(it),lt=lr(lt);var Mt=lt?Ds(it):0;if(!lt||Mt>=lt)return it;var Yt=(lt-Mt)/2;return Bu(au(Yt),St)+it+Bu(ou(Yt),St)}function Em(it,lt,St){it=Er(it),lt=lr(lt);var Mt=lt?Ds(it):0;return lt&&Mt>>0,St?(it=Er(it),it&&(typeof lt=="string"||lt!=null&&!TU(lt))&&(lt=mo(lt),!lt&&Zs(it))?Fs(Zo(it),0,St):it.split(lt,St)):[]}var Wm=Ls(function(it,lt,St){return it+(St?" ":"")+NU(lt)});function km(it,lt,St){return it=Er(it),St=St==null?0:bs(lr(St),0,it.length),lt=mo(lt),it.slice(St,St+lt.length)==lt}function _m(it,lt,St){var Mt=en.templateSettings;St&&so(it,lt,St)&&(lt=_),it=Er(it),lt=Wu({},lt,Mt,LF);var Yt=Wu({},lt.imports,Mt.imports,LF),tn=Xr(Yt),dn=xu(Yt,tn),un,Rn,Wn=0,_n=lt.interpolate||vr,wn="__p += '",jn=ju((lt.escape||vr).source+"|"+_n.source+"|"+(_n===mr?Kn:vr).source+"|"+(lt.evaluate||vr).source+"|$","g"),Gn="//# sourceURL="+(br.call(lt,"sourceURL")?(lt.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Gl+"]")+` -`;it.replace(jn,function(nr,pr,Br,Eo,lo,Vo){return Br||(Br=Eo),wn+=it.slice(Wn,Vo).replace(Zr,Xp),pr&&(un=!0,wn+=`' + -__e(`+pr+`) + -'`),lo&&(Rn=!0,wn+=`'; -`+lo+`; -__p += '`),Br&&(wn+=`' + -((__t = (`+Br+`)) == null ? '' : __t) + -'`),Wn=Vo+nr.length,nr}),wn+=`'; -`;var tr=br.call(lt,"variable")&<.variable;if(!tr)wn=`with (obj) { -`+wn+` -} -`;else if(Fn.test(tr))throw new or(tt);wn=(Rn?wn.replace(Yn,""):wn).replace($r,"$1").replace(Hr,"$1;"),wn="function("+(tr||"obj")+`) { -`+(tr?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(un?", __e = _.escape":"")+(Rn?`, __j = Array.prototype.join; -function print() { __p += __j.call(arguments, '') } -`:`; -`)+wn+`return __p -}`;var dr=wp(function(){return Sr(tn,Gn+"return "+wn).apply(_,dn)});if(dr.source=wn,bU(dr))throw dr;return dr}function Cm(it){return Er(it).toLowerCase()}function wm(it){return Er(it).toUpperCase()}function Zm(it,lt,St){if(it=Er(it),it&&(St||lt===_))return PU(it);if(!it||!(lt=mo(lt)))return it;var Mt=Zo(it),Yt=Zo(lt),tn=zU(Mt,Yt),dn=GU(Mt,Yt)+1;return Fs(Mt,tn,dn).join("")}function Dm(it,lt,St){if(it=Er(it),it&&(St||lt===_))return it.slice(0,HU(it)+1);if(!it||!(lt=mo(lt)))return it;var Mt=Zo(it),Yt=GU(Mt,Zo(lt))+1;return Fs(Mt,0,Yt).join("")}function Mm(it,lt,St){if(it=Er(it),it&&(St||lt===_))return it.replace(ln,"");if(!it||!(lt=mo(lt)))return it;var Mt=Zo(it),Yt=zU(Mt,Zo(lt));return Fs(Mt,Yt).join("")}function Am(it,lt){var St=mt,Mt=It;if(_r(lt)){var Yt="separator"in lt?lt.separator:Yt;St="length"in lt?lr(lt.length):St,Mt="omission"in lt?mo(lt.omission):Mt}it=Er(it);var tn=it.length;if(Zs(it)){var dn=Zo(it);tn=dn.length}if(St>=tn)return it;var un=St-Ds(Mt);if(un<1)return Mt;var Rn=dn?Fs(dn,0,un).join(""):it.slice(0,un);if(Yt===_)return Rn+Mt;if(dn&&(un+=Rn.length-un),TU(Yt)){if(it.slice(un).search(Yt)){var Wn,_n=Rn;for(Yt.global||(Yt=ju(Yt.source,Er(Ur.exec(Yt))+"g")),Yt.lastIndex=0;Wn=Yt.exec(_n);)var wn=Wn.index;Rn=Rn.slice(0,wn===_?un:wn)}}else if(it.indexOf(mo(Yt),un)!=un){var jn=Rn.lastIndexOf(Yt);jn>-1&&(Rn=Rn.slice(0,jn))}return Rn+Mt}function Om(it){return it=Er(it),it&&ps.test(it)?it.replace(uo,nQ):it}var xm=Ls(function(it,lt,St){return it+(St?" ":"")+lt.toUpperCase()}),NU=DF("toUpperCase");function Cp(it,lt,St){return it=Er(it),lt=St?_:lt,lt===_?qp(it)?oQ(it):jp(it):it.match(lt)||[]}var wp=ur(function(it,lt){try{return Ro(it,_,lt)}catch(St){return bU(St)?St:new or(St)}}),Im=na(function(it,lt){return To(lt,function(St){St=Po(St),qo(it,St,EU(it[St],it))}),it});function jm(it){var lt=it==null?0:it.length,St=$n();return it=lt?kr(it,function(Mt){if(typeof Mt[1]!="function")throw new vo(et);return[St(Mt[0]),Mt[1]]}):[],ur(function(Mt){for(var Yt=-1;++YtJt)return[];var St=jt,Mt=eo(it,jt);lt=$n(lt),it-=jt;for(var Yt=Ou(Mt,lt);++St0||lt<0)?new fr(St):(it<0?St=St.takeRight(-it):it&&(St=St.drop(it)),lt!==_&&(lt=lr(lt),St=lt<0?St.dropRight(-lt):St.take(lt-it)),St)},fr.prototype.takeRightWhile=function(it){return this.reverse().takeWhile(it).reverse()},fr.prototype.toArray=function(){return this.take(jt)},jo(fr.prototype,function(it,lt){var St=/^(?:filter|find|map|reject)|While$/.test(lt),Mt=/^(?:head|last)$/.test(lt),Yt=en[Mt?"take"+(lt=="last"?"Right":""):lt],tn=Mt||/^find/.test(lt);Yt&&(en.prototype[lt]=function(){var dn=this.__wrapped__,un=Mt?[1]:arguments,Rn=dn instanceof fr,Wn=un[0],_n=Rn||ar(dn),wn=function(pr){var Br=Yt.apply(en,ss([pr],un));return Mt&&jn?Br[0]:Br};_n&&St&&typeof Wn=="function"&&Wn.length!=1&&(Rn=_n=!1);var jn=this.__chain__,Gn=!!this.__actions__.length,tr=tn&&!jn,dr=Rn&&!Gn;if(!tn&&_n){dn=dr?dn:new fr(this);var nr=it.apply(dn,un);return nr.__actions__.push({func:Eu,args:[wn],thisArg:_}),new Jo(nr,jn)}return tr&&dr?it.apply(this,un):(nr=this.thru(wn),tr?Mt?nr.value()[0]:nr.value():nr)})}),To(["pop","push","shift","sort","splice","unshift"],function(it){var lt=Kl[it],St=/^(?:push|sort|unshift)$/.test(it)?"tap":"thru",Mt=/^(?:pop|shift)$/.test(it);en.prototype[it]=function(){var Yt=arguments;if(Mt&&!this.__chain__){var tn=this.value();return lt.apply(ar(tn)?tn:[],Yt)}return this[St](function(dn){return lt.apply(ar(dn)?dn:[],Yt)})}}),jo(fr.prototype,function(it,lt){var St=en[lt];if(St){var Mt=St.name+"";br.call(xs,Mt)||(xs[Mt]=[]),xs[Mt].push({name:lt,func:St})}}),xs[Qu(_,Bt).name]=[{name:"wrapper",func:_}],fr.prototype.clone=TQ,fr.prototype.reverse=vQ,fr.prototype.value=JQ,en.prototype.at=r0,en.prototype.chain=o0,en.prototype.commit=a0,en.prototype.next=l0,en.prototype.plant=U0,en.prototype.reverse=F0,en.prototype.toJSON=en.prototype.valueOf=en.prototype.value=g0,en.prototype.first=en.prototype.head,Bl&&(en.prototype[Bl]=u0),en},Ms=aQ();ir?((ir.exports=Ms)._=Ms,zn._=Ms):Zn._=Ms}).call(commonjsGlobal$1)})(lodash,lodash.exports);lodash.exports;var lib={},uaParser_min={exports:{}};(function(o,s){(function(_,j){var $="1.0.41",_e="",et="?",tt="function",nt="undefined",rt="object",ot="string",ut="major",dt="model",Ut="name",st="type",ct="vendor",pt="version",Bt="architecture",Qt="console",gt="mobile",ft="tablet",Ft="smarttv",yt="wearable",Ct="embedded",xt=500,ht="Amazon",mt="Apple",It="ASUS",vt="BlackBerry",Tt="Browser",Ot="Chrome",_t="Edge",Wt="Firefox",bt="Google",Jt="Honor",Zt="Huawei",Vt="Lenovo",jt="LG",zt="Microsoft",$t="Motorola",nn="Nvidia",rn="OnePlus",Dt="Opera",wt="OPPO",Et="Samsung",kt="Sharp",Pt="Sony",Kt="Xiaomi",Ht="Zebra",on="Facebook",sn="Chromium OS",gn="Mac OS",Cn=" Browser",In=function(er,sr){var Xn={};for(var gr in er)sr[gr]&&sr[gr].length%2===0?Xn[gr]=sr[gr].concat(er[gr]):Xn[gr]=er[gr];return Xn},Mn=function(er){for(var sr={},Xn=0;Xn0?Pn.length===2?typeof Pn[1]==tt?this[Pn[0]]=Pn[1].call(this,$r):this[Pn[0]]=Pn[1]:Pn.length===3?typeof Pn[1]===tt&&!(Pn[1].exec&&Pn[1].test)?this[Pn[0]]=$r?Pn[1].call(this,$r,Pn[2]):j:this[Pn[0]]=$r?$r.replace(Pn[1],Pn[2]):j:Pn.length===4&&(this[Pn[0]]=$r?Pn[3].call(this,$r.replace(Pn[1],Pn[2])):j):this[Pn]=$r||j;Xn+=2}},hr=function(er,sr){for(var Xn in sr)if(typeof sr[Xn]===rt&&sr[Xn].length>0){for(var gr=0;gr2&&(Yn[dt]="iPad",Yn[st]=ft),Yn},this.getEngine=function(){var Yn={};return Yn[Ut]=j,Yn[pt]=j,Fr.call(Yn,gr,Wr.engine),Yn},this.getOS=function(){var Yn={};return Yn[Ut]=j,Yn[pt]=j,Fr.call(Yn,gr,Wr.os),Pn&&!Yn[Ut]&&Yr&&Yr.platform&&Yr.platform!="Unknown"&&(Yn[Ut]=Yr.platform.replace(/chrome os/i,sn).replace(/macos/i,gn)),Yn},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return gr},this.setUA=function(Yn){return gr=typeof Yn===ot&&Yn.length>xt?Hn(Yn,xt):Yn,this},this.setUA(gr),this};Jr.VERSION=$,Jr.BROWSER=Mn([Ut,pt,ut]),Jr.CPU=Mn([Bt]),Jr.DEVICE=Mn([dt,ct,st,Qt,gt,Ft,ft,yt,Ct]),Jr.ENGINE=Jr.OS=Mn([Ut,pt]),o.exports&&(s=o.exports=Jr),s.UAParser=Jr;var xr=typeof _!==nt&&(_.jQuery||_.Zepto);if(xr&&!xr.ua){var ro=new Jr;xr.ua=ro.getResult(),xr.ua.get=function(){return ro.getUA()},xr.ua.set=function(er){ro.setUA(er);var sr=ro.getResult();for(var Xn in sr)xr.ua[Xn]=sr[Xn]}}})(typeof window=="object"?window:commonjsGlobal$1)})(uaParser_min,uaParser_min.exports);var uaParser_minExports=uaParser_min.exports;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,ot=tt.isTablet,ut=tt.isSmartTV,dt=tt.isConsole,Ut=tt.isWearable,st=tt.isEmbedded;if(nt)return browserPayload(nt,j,$,_e,et);if(ut)return smartTvPayload(ut,$,_e,et);if(dt)return consolePayload(dt,$,_e,et);if(rt||ot)return mobilePayload(tt,_,_e,et);if(Ut)return wearablePayload(Ut,$,_e,et);if(st)return embeddedPayload(st,_,$,_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.4 - * https://github.com/kurkle/color#readme - * (c) 2024 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,ot;return _e!==et&&(ot=_e-et,rt=tt>.5?ot/(2-_e-et):ot/(_e+et),nt=hueValue(_,j,$,ot,_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.5.0 - * https://www.chartjs.org - * (c) 2025 Chart.js Contributors - * Released under the MIT License - */function noop(){}const uid=(()=>{let o=0;return()=>o++})();function isNullOrUndef(o){return o==null}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 isNonPrimitive(o){return typeof o=="symbol"||typeof o=="object"&&o!==null&&!(Symbol.toPrimitive in o||"toString"in o||"valueOf"in o)}function isNumber(o){return!isNonPrimitive(o)&&!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),ot=_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(o);return s.size===o.length?o:Array.from(s)}const requestAnimFrame=function(){return typeof window>"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,vScale:tt,_parsed:nt}=o,rt=o.dataset&&o.dataset.options?o.dataset.options.spanGaps:null,ot=et.axis,{min:ut,max:dt,minDefined:Ut,maxDefined:st}=et.getUserBounds();if(Ut){if($=Math.min(_lookupByKey(nt,ot,ut).lo,_?j:_lookupByKey(s,ot,et.getPixelForValue(ut)).lo),rt){const ct=nt.slice(0,$+1).reverse().findIndex(pt=>!isNullOrUndef(pt[tt.axis]));$-=Math.max(0,ct)}$=_limitValue($,0,j-1)}if(st){let ct=Math.max(_lookupByKey(nt,et.axis,dt,!0).hi+1,_?0:_lookupByKey(s,ot,et.getPixelForValue(dt),!0).hi+1);if(rt){const pt=nt.slice(ct-1).findIndex(Bt=>!isNullOrUndef(Bt[tt.axis]));ct+=Math.max(0,pt)}_e=_limitValue(ct,$,j)-$}else _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=isNaN(et)?1: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",clip:!0,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,ot,ut,dt;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=[""],_,j,$=()=>o[0]){const _e=_||o;typeof j>"u"&&(j=_resolve("_fallback",o));const et={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:o,_rootScopes:_e,_fallback:j,_getTarget:$,override:tt=>_createResolver([tt,...o],s,_e,j)};return new Proxy(et,{deleteProperty(tt,nt){return delete tt[nt],delete tt._keys,delete o[0][nt],!0},get(tt,nt){return _cached(tt,nt,()=>_resolveWithPrefixes(nt,s,o,tt))},getOwnPropertyDescriptor(tt,nt){return Reflect.getOwnPropertyDescriptor(tt._scopes[0],nt)},getPrototypeOf(){return Reflect.getPrototypeOf(o[0])},has(tt,nt){return getKeysFromAllScopes(tt).includes(nt)},ownKeys(tt){return getKeysFromAllScopes(tt)},set(tt,nt,rt){const ot=tt._storage||(tt._storage=$());return tt[nt]=ot[nt]=rt,delete tt._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)||s==="constructor")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);tt.add(o);let nt=s(_e,et||j);return tt.delete(o),needsSubResolver(o,nt)&&(nt=createSubResolver($._scopes,$,o,nt)),nt}function _resolveArray(o,s,_,j){const{_proxy:$,_context:_e,_subProxy:et,_descriptors:tt}=_;if(typeof _e.index<"u"&&j(o))return s[_e.index%s.length];if(isObject(s[0])){const nt=s,rt=$._scopes.filter(ot=>ot!==nt);s=[];for(const ot of nt){const ut=createSubResolver(rt,$,o,ot);s.push(_attachContext(ut,_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(typeof tt<"u"&&tt!==_&&tt!==j)return tt}else if(et===!1&&typeof j<"u"&&_!==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||typeof _e<"u"&&_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),_),typeof $<"u")return needsSubResolver(o,$)?createSubResolver(_,j,o,$):$}function _resolve(o,s){for(const _ of s){if(!_)continue;const j=_[o];if(typeof j<"u")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,ot;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),ot=nt/(tt+nt);rt=isNaN(rt)?0:rt,ot=isNaN(ot)?0:ot;const ut=j*rt,dt=j*ot;return{previous:{x:_e.x-ut*(et.x-$.x),y:_e.y-ut*(et.y-$.y)},next:{x:_e.x+dt*(et.x-$.x),y:_e.y+dt*(et.y-$.y)}}}function monotoneAdjust(o,s,_){const j=o.length;let $,_e,et,tt,nt,rt=getPoint(o,0);for(let ot=0;ot!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:ot}=getCanvasPosition(o,_),ut=et.left+(ot&&tt.left),dt=et.top+(ot&&tt.top);let{width:Ut,height:st}=s;return _e&&(Ut-=et.width+tt.width,st-=et.height+tt.height),{x:Math.round((nt-ut)/Ut*_.width/j),y:Math.round((rt-dt)/st*_.height/j)}}function getContainerSize(o,s,_){let j,$;if(s===void 0||_===void 0){const _e=o&&_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:ot}=nt;if($.boxSizing==="content-box"){const dt=getPositionedStyle($,"border","width"),Ut=getPositionedStyle($,"padding");rt-=Ut.width+dt.width,ot-=Ut.height+dt.height}return rt=Math.max(0,rt-_e.width),ot=Math.max(0,j?rt/j:ot-_e.height),rt=round1(Math.min(rt,et,nt.maxWidth)),ot=round1(Math.min(ot,tt,nt.maxHeight)),rt&&!ot&&(ot=round1(rt/2)),(s!==void 0||_!==void 0)&&j&&nt.height&&ot>nt.height&&(ot=nt.height,rt=round1(Math.floor(ot*j))),{width:rt,height:ot}}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}};_isDomSupported()&&(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,_),ot=_pointInLine(tt,nt,_);return _pointInLine(rt,ot,_)}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:ot,loop:ut}=o,dt,Ut;if(ut){for(rt+=nt,ot+=nt,dt=0,Ut=nt;dtnt($,gt,Bt)&&tt($,gt)!==0,Ft=()=>tt(_e,Bt)===0||nt(_e,gt,Bt),yt=()=>ct||ft(),Ct=()=>!ct||Ft();for(let xt=ot,ht=ot;xt<=ut;++xt)Qt=s[xt%et],!Qt.skip&&(Bt=rt(Qt[j]),Bt!==gt&&(ct=nt(Bt,$,_e),pt===null&&yt()&&(pt=tt(Bt,$)===0?xt:ht),pt!==null&&Ct()&&(st.push(normalizeSegment({start:pt,end:xt,loop:dt,count:et,style:Ut})),pt=null),ht=xt,gt=Bt));return pt!==null&&st.push(normalizeSegment({start:pt,end:ut,loop:dt,count:et,style:Ut})),st}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 ot=_[rt];let ut=_e[rt];const dt=j.get(rt);if(ut)if(dt&&ut.active()){ut.update(dt,ot,tt);continue}else ut.cancel();if(!dt||!dt.duration){s[rt]=ot;continue}_e[rt]=ut=new Animation(dt,s,rt,ot),$.push(ut)}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,ot=getStackKey(_e,et,j),ut=s.length;let dt;for(let Ut=0;Ut_[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(),$=(ut,dt,Ut,st)=>ut==="x"?dt:ut==="r"?st:Ut,_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),ot=_.vAxisID=$(nt,et,_e,tt);_.xScale=this.getScaleForId(_e),_.yScale=this.getScaleForId(et),_.rScale=this.getScaleForId(tt),_.iScale=this.getScaleForId(rt),_.vScale=this.getScaleForId(ot)}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(_)){const $=this._cachedMeta;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),_._stacked=isStacked(_.vScale,_))}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],ot,ut,dt;if(this._parsing===!1)j._parsed=$,j._sorted=!0,dt=$;else{isArray($[s])?dt=this.parseArrayData(j,$,s,_):isObject($[s])?dt=this.parseObjectData(j,$,s,_):dt=this.parsePrimitiveData(j,$,s,_);const Ut=()=>ut[tt]===null||rt&&ut[tt]ct||ut=0;--dt)if(!st()){this.updateRangeFromParsed(rt,s,Ut,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 ot;for(j.dataset&&j.dataset.draw(s,_e,tt,nt),ot=tt;ot=0&&sthis.getContext(j,$,_),ct=rt.resolveNamedOptions(dt,Ut,st,ut);return ct.$shared&&(ct.$shared=nt,_e[et]=Object.freeze(cloneIfNotShared(ct,nt))),ct}_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 ot=this.chart.config,ut=ot.datasetAnimationScopeKeys(this._type,_),dt=ot.getOptionScopes(this.getDataset(),ut);nt=ot.createResolver(dt,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,ot,ut,dt;for(rt=_,ot=_+j;rt=_?1:-1)}function borderProps(o){let s,_,j,$,_e;return o.horizontal?(s=o.base>o.x,_="left",j="right"):(s=o.baseot.controller.options.grouped),_e=j.options.stacked,et=[],tt=this._cachedMeta.controller.getParsed(_),nt=tt&&tt[j.axis],rt=ot=>{const ut=ot._parsed.find(Ut=>Ut[j.axis]===nt),dt=ut&&ut[ot.vScale.axis];if(isNullOrUndef(dt)||isNaN(dt))return!0};for(const ot of $)if(!(_!==void 0&&rt(ot))&&((_e===!1||et.indexOf(ot.stack)===-1||_e===void 0&&ot.stack===void 0)&&et.push(ot.stack),ot.index===s))break;return et.length||et.push(void 0),et}_getStackCount(s){return this._getStacks(void 0,s).length}_getAxisCount(){return this._getAxis().length}getFirstScaleIdForIndexAxis(){const s=this.chart.scales,_=this.chart.options.indexAxis;return Object.keys(s).filter(j=>s[j].axis===_).shift()}_getAxis(){const s={},_=this.getFirstScaleIdForIndexAxis();for(const j of this.chart.data.datasets)s[valueOrDefault(this.chart.options.indexAxis==="x"?j.xAxisID:j.yAxisID,_)]=!0;return Object.keys(s)}_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(_,$),ot=et.axis,ut=tt.axis;for(let dt=_;dt<_+j;dt++){const Ut=s[dt],st=!_e&&this.getParsed(dt),ct={},pt=ct[ot]=_e?et.getPixelForDecimal(.5):et.getPixelForValue(st[ot]),Bt=ct[ut]=_e?tt.getBasePixel():tt.getPixelForValue(st[ut]);ct.skip=isNaN(pt)||isNaN(Bt),rt&&(ct.options=nt||this.resolveDataElementOptions(dt,Ut.active?"active":$),_e&&(ct.options.radius=0)),this.updateElement(Ut,dt,ct,$)}}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),$}}On(BubbleController,"id","bubble"),On(BubbleController,"defaults",{datasetElementType:!1,dataElementType:"point",animations:{numbers:{type:"number",properties:["x","y","borderWidth","radius"]}}}),On(BubbleController,"overrides",{scales:{x:{type:"linear"},y:{type:"linear"}}});function getRatioAndOffset(o,s,_){let j=1,$=1,_e=0,et=0;if(s_angleBetween(gt,tt,nt,!0)?1:Math.max(ft,ft*_,Ft,Ft*_),st=(gt,ft,Ft)=>_angleBetween(gt,tt,nt,!0)?-1:Math.min(ft,ft*_,Ft,Ft*_),ct=Ut(0,rt,ut),pt=Ut(HALF_PI,ot,dt),Bt=st(PI,rt,ut),Qt=st(PI+HALF_PI,ot,dt);j=(ct-Bt)/2,$=(pt-Qt)/2,_e=-(ct+Bt)/2,et=-(pt+Qt)/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"&&!s.startsWith("borderDash")&&!s.startsWith("hoverBorderDash")}),On(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:ot,includeOptions:ut}=this._getSharedOptions(_,$),dt=et.axis,Ut=tt.axis,{spanGaps:st,segment:ct}=this.options,pt=isNumber(st)?st:Number.POSITIVE_INFINITY,Bt=this.chart._animationsDisabled||_e||$==="none",Qt=_+j,gt=s.length;let ft=_>0&&this.getParsed(_-1);for(let Ft=0;Ft=Qt){Ct.skip=!0;continue}const xt=this.getParsed(Ft),ht=isNullOrUndef(xt[Ut]),mt=Ct[dt]=et.getPixelForValue(xt[dt],Ft),It=Ct[Ut]=_e||ht?tt.getBasePixel():tt.getPixelForValue(nt?this.applyStack(tt,xt,nt):xt[Ut],Ft);Ct.skip=isNaN(mt)||isNaN(It)||ht,Ct.stop=Ft>0&&Math.abs(xt[dt]-ft[dt])>pt,ct&&(Ct.parsed=xt,Ct.raw=rt.data[Ft]),ut&&(Ct.options=ot||this.resolveDataElementOptions(Ft,yt.active?"active":$)),Bt||this.updateElement(yt,Ft,Ct,$),ft=xt}}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()}}On(LineController,"id","line"),On(LineController,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),On(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,ot=rt.xCenter,ut=rt.yCenter,dt=rt.getIndexAngle(0)-.5*PI;let Ut=dt,st;const ct=360/this.countVisibleElements();for(st=0;st<_;++st)Ut+=this._computeAngle(st,$,ct);for(st=_;st<_+j;st++){const pt=s[st];let Bt=Ut,Qt=Ut+this._computeAngle(st,$,ct),gt=et.getDataVisibility(st)?rt.getDistanceFromCenterForValue(this.getParsed(st).r):0;Ut=Qt,_e&&(nt.animateScale&&(gt=0),nt.animateRotate&&(Bt=Qt=dt));const ft={x:ot,y:ut,innerRadius:0,outerRadius:gt,startAngle:Bt,endAngle:Qt,options:this.resolveDataElementOptions(st,pt.active?"active":$)};this.updateElement(pt,st,ft,$)}}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}}On(PolarAreaController,"id","polarArea"),On(PolarAreaController,"defaults",{dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0}),On(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{}On(PieController,"id","pie"),On(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":$),ot=_e.getPointPositionForValue(tt,this.getParsed(tt).r),ut=et?_e.xCenter:ot.x,dt=et?_e.yCenter:ot.y,Ut={x:ut,y:dt,angle:ot.angle,skip:isNaN(ut)||isNaN(dt),options:rt};this.updateElement(nt,tt,Ut,$)}}}On(RadarController,"id","radar"),On(RadarController,"defaults",{datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}}),On(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){this.datasetElementType||this.addElements();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)}else this.datasetElementType&&(delete _.dataset,this.datasetElementType=!1);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,ot=this.resolveDataElementOptions(_,$),ut=this.getSharedOptions(ot),dt=this.includeOptions($,ut),Ut=et.axis,st=tt.axis,{spanGaps:ct,segment:pt}=this.options,Bt=isNumber(ct)?ct:Number.POSITIVE_INFINITY,Qt=this.chart._animationsDisabled||_e||$==="none";let gt=_>0&&this.getParsed(_-1);for(let ft=_;ft<_+j;++ft){const Ft=s[ft],yt=this.getParsed(ft),Ct=Qt?Ft:{},xt=isNullOrUndef(yt[st]),ht=Ct[Ut]=et.getPixelForValue(yt[Ut],ft),mt=Ct[st]=_e||xt?tt.getBasePixel():tt.getPixelForValue(nt?this.applyStack(tt,yt,nt):yt[st],ft);Ct.skip=isNaN(ht)||isNaN(mt)||xt,Ct.stop=ft>0&&Math.abs(yt[Ut]-gt[Ut])>Bt,pt&&(Ct.parsed=yt,Ct.raw=rt.data[ft]),dt&&(Ct.options=ut||this.resolveDataElementOptions(ft,Ft.active?"active":$)),Qt||this.updateElement(Ft,ft,Ct,$),gt=yt}this.updateSharedOptions(ut,$,ot)}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}}On(ScatterController,"id","scatter"),On(ScatterController,"defaults",{datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1}),On(ScatterController,"overrides",{interaction:{mode:"point"},scales:{x:{type:"linear"},y:{type:"linear"}}});var controllers=Object.freeze({__proto__:null,BarController,BubbleController,DoughnutController,LineController,PieController,PolarAreaController,RadarController,ScatterController});function abstract(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class DateAdapterBase{constructor(s){On(this,"options");this.options=s||{}}static override(s){Object.assign(DateAdapterBase.prototype,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,nt=o.dataset&&o.dataset.options?o.dataset.options.spanGaps:null;if(tt&&s===tt.axis&&s!=="r"&&et&&_e.length){const rt=tt._reversePixels?_rlookupByKey:_lookupByKey;if(j){if($._sharedOptions){const ot=_e[0],ut=typeof ot.getRange=="function"&&ot.getRange(s);if(ut){const dt=rt(_e,s,_-ut),Ut=rt(_e,s,_+ut);return{lo:dt.lo,hi:Ut.hi}}}}else{const ot=rt(_e,s,_);if(nt){const{vScale:ut}=$._cachedMeta,{_parsed:dt}=o,Ut=dt.slice(0,ot.lo+1).reverse().findIndex(ct=>!isNullOrUndef(ct[ut.axis]));ot.lo-=Math.max(0,Ut);const st=dt.slice(ot.hi).findIndex(ct=>!isNullOrUndef(ct[ut.axis]));ot.hi+=Math.max(0,st)}return ot}}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]&&nt[et](s[_],$)&&(_e.push({element:nt,datasetIndex:rt,index:ot}),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 ot=tt[0].index,ut=rt.data[ot];ut&&!ut.skip&&nt.push({element:ut,datasetIndex:rt.index,index:ot})}),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 ot=0;ot_.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 ut=j[_.stack]||{size:0,count:1};ut.size=Math.max(ut.size,_.horizontal?_e.height:_e.width),_.size=ut.size/ut.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,ot=nt!==o.h;return o.w=tt,o.h=nt,_.horizontal?{same:rt,other:ot}:{same:ot,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,ot;for(_e=0,et=o.length,rt=0;_e{typeof ct.beforeLayout=="function"&&ct.beforeLayout()});const ot=nt.reduce((ct,pt)=>pt.box.options&&pt.box.options.display===!1?ct:ct+1,0)||1,ut=Object.freeze({outerWidth:s,outerHeight:_,padding:$,availableWidth:_e,availableHeight:et,vBoxMaxWidth:_e/2/ot,hBoxMaxHeight:et/2}),dt=Object.assign({},$);updateMaxPadding(dt,toPadding(j));const Ut=Object.assign({maxPadding:dt,w:_e,h:et,x:$.left,y:$.top},$),st=setLayoutDims(nt.concat(rt),ut);fitBoxes(tt.fullSize,Ut,ut,st),fitBoxes(nt,Ut,ut,st),fitBoxes(rt,Ut,ut,st)&&fitBoxes(nt,Ut,ut,st),handleMaxPadding(Ut),placeBoxes(tt.leftAndTop,Ut,ut,st),Ut.x+=Ut.w,Ut.y+=Ut.h,placeBoxes(tt.rightAndBottom,Ut,ut,st),o.chartArea={left:Ut.left,top:Ut.top,right:Ut.left+Ut.w,bottom:Ut.top+Ut.h,height:Ut.h,width:Ut.w},each(tt.chartArea,ct=>{const pt=ct.box;Object.assign(pt,o.chartArea),pt.update(Ut.w,Ut.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&&o.addEventListener(s,_,eventListenerOptions)}function removeListener(o,s,_){o&&o.canvas&&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,ot=nt.contentRect.height;rt===0&&ot===0||_e(rt,ot)});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 _=s&&_getParentNode(s);return!!(_&&_.isConnected)}}function _detectPlatform(o){return!_isDomSupported()||typeof OffscreenCanvas<"u"&&o instanceof OffscreenCanvas?BasicPlatform:DomPlatform}class Element{constructor(){On(this,"x");On(this,"y");On(this,"active",!1);On(this,"options");On(this,"$animations")}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]}),$}}On(Element,"defaults",{}),On(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 ot=calculateSpacing(_e,s,$);if(et>0){let ut,dt;const Ut=et>1?Math.round((nt-tt)/(et-1)):null;for(skip(s,rt,ot,isNullOrUndef(Ut)?0:tt-Ut,tt),ut=0,dt=et-1;ut$)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:ot}=nt;let ut=0,dt,Ut,st;const ct=et-$,pt=tt-_e;if(o.isHorizontal()){if(Ut=_alignStartEnd(j,_e,tt),isObject(_)){const Bt=Object.keys(_)[0],Qt=_[Bt];st=ot[Bt].getPixelForValue(Qt)+ct-s}else _==="center"?st=(rt.bottom+rt.top)/2+ct-s:st=offsetFromEdge(o,_,s);dt=tt-_e}else{if(isObject(_)){const Bt=Object.keys(_)[0],Qt=_[Bt];Ut=ot[Bt].getPixelForValue(Qt)-pt+s}else _==="center"?Ut=(rt.left+rt.right)/2-pt+s:Ut=offsetFromEdge(o,_,s);st=_alignStartEnd(j,et,$),ut=_==="left"?-HALF_PI:HALF_PI}return{titleX:Ut,titleY:st,maxWidth:dt,rotation:ut}}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 ot=this._getLabelSizes(),ut=ot.widest.width,dt=ot.highest.height,Ut=_limitValue(this.chart.width-ut,0,this.maxWidth);tt=s.offset?this.maxWidth/j:Ut/(j-1),ut+6>tt&&(tt=Ut/(j-(s.offset?.5:1)),nt=this.maxHeight-getTickMarkLength(s.grid)-_.padding-getTitleHeight(s.title,this.chart.options.font),rt=Math.sqrt(ut*ut+dt*dt),et=toDegrees(Math.min(Math.asin(_limitValue((ot.highest.height+6)/tt,-1,1)),Math.asin(_limitValue(nt/rt,-1,1))-Math.asin(_limitValue(dt/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:ot,widest:ut,highest:dt}=this._getLabelSizes(),Ut=j.padding*2,st=toRadians(this.labelRotation),ct=Math.cos(st),pt=Math.sin(st);if(tt){const Bt=j.mirror?0:pt*ut.width+ct*dt.height;s.height=Math.min(this.maxHeight,s.height+Bt+Ut)}else{const Bt=j.mirror?0:ct*ut.width+pt*dt.height;s.width=Math.min(this.maxWidth,s.width+Bt+Ut)}this._calculatePadding(rt,ot,pt,ct)}}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 ot=this.getPixelForTick(0)-this.left,ut=this.right-this.getPixelForTick(this.ticks.length-1);let dt=0,Ut=0;nt?rt?(dt=$*s.width,Ut=j*_.height):(dt=j*s.height,Ut=$*_.width):_e==="start"?Ut=_.width:_e==="end"?dt=s.width:_e!=="inner"&&(dt=s.width/2,Ut=_.width/2),this.paddingLeft=Math.max((dt-ot+et)*this.width/(this.width-ot),0),this.paddingRight=Math.max((Ut-ut+et)*this.width/(this.width-ut),0)}else{let ot=_.height/2,ut=s.height/2;_e==="start"?(ot=0,ut=s.height):_e==="end"&&(ot=_.height,ut=0),this.paddingTop=ot+et,this.paddingBottom=ut+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[ht]||0,height:tt[ht]||0});return{first:xt(0),last:xt(_-1),widest:xt(yt),highest:xt(Ct),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(),ut=this.ticks.length+(nt?1:0),dt=getTickMarkLength(_e),Ut=[],st=tt.setContext(this.getContext()),ct=st.display?st.width:0,pt=ct/2,Bt=function(Wt){return _alignPixel(j,Wt,ct)};let Qt,gt,ft,Ft,yt,Ct,xt,ht,mt,It,vt,Tt;if(et==="top")Qt=Bt(this.bottom),Ct=this.bottom-dt,ht=Qt-pt,It=Bt(s.top)+pt,Tt=s.bottom;else if(et==="bottom")Qt=Bt(this.top),It=s.top,Tt=Bt(s.bottom)-pt,Ct=Qt+pt,ht=this.top+dt;else if(et==="left")Qt=Bt(this.right),yt=this.right-dt,xt=Qt-pt,mt=Bt(s.left)+pt,vt=s.right;else if(et==="right")Qt=Bt(this.left),mt=s.left,vt=Bt(s.right)-pt,yt=Qt+pt,xt=this.left+dt;else if(_==="x"){if(et==="center")Qt=Bt((s.top+s.bottom)/2+.5);else if(isObject(et)){const Wt=Object.keys(et)[0],bt=et[Wt];Qt=Bt(this.chart.scales[Wt].getPixelForValue(bt))}It=s.top,Tt=s.bottom,Ct=Qt+pt,ht=Ct+dt}else if(_==="y"){if(et==="center")Qt=Bt((s.left+s.right)/2);else if(isObject(et)){const Wt=Object.keys(et)[0],bt=et[Wt];Qt=Bt(this.chart.scales[Wt].getPixelForValue(bt))}yt=Qt-pt,xt=yt-dt,mt=s.left,vt=s.right}const Ot=valueOrDefault($.ticks.maxTicksLimit,ut),_t=Math.max(1,Math.ceil(ut/Ot));for(gt=0;gt0&&(Dt-=nn/2);break}jt={left:Dt,top:rn,width:nn+zt.width,height:$t+zt.height,color:_t.backdropColor}}pt.push({label:ft,font:ht,textOffset:vt,options:{rotation:ct,color:bt,strokeColor:Jt,strokeWidth:Zt,textAlign:Vt,textBaseline:Tt,translation:[Ft,yt],backdrop:jt}})}return pt}_getXAxisLabelAlignment(){const{position:s,ticks:_}=this.options;if(-toRadians(this.labelRotation))return s==="top"?"left":"right";let $="center";return _.align==="start"?$="left":_.align==="end"?$="right":_.align==="inner"&&($="inner"),$}_getYAxisLabelAlignment(s){const{position:_,ticks:{crossAlign:j,mirror:$,padding:_e}}=this.options,et=this._getLabelSizes(),tt=s+_e,nt=et.widest.width;let rt,ot;return _==="left"?$?(ot=this.right+_e,j==="near"?rt="left":j==="center"?(rt="center",ot+=nt/2):(rt="right",ot+=nt)):(ot=this.right-tt,j==="near"?rt="right":j==="center"?(rt="center",ot-=nt/2):(rt="left",ot=this.left)):_==="right"?$?(ot=this.left+_e,j==="near"?rt="right":j==="center"?(rt="center",ot-=nt/2):(rt="left",ot-=nt)):(ot=this.left+tt,j==="near"?rt="left":j==="center"?(rt="center",ot+=nt/2):(rt="right",ot=this.right)):rt="right",{textAlign:rt,x:ot}}_computeLabelArea(){if(this.options.ticks.mirror)return;const s=this.chart,_=this.options.position;if(_==="left"||_==="right")return{top:0,left:this.left,bottom:s.height,right:this.right};if(_==="top"||_==="bottom")return{top:this.top,left:0,bottom:this.bottom,right:s.width}}drawBackground(){const{ctx:s,options:{backgroundColor:_},left:j,top:$,width:_e,height:et}=this;_&&(s.save(),s.fillStyle=_,s.fillRect(j,$,_e,et),s.restore())}getLineWidthForValue(s){const _=this.options.grid;if(!this._isVisible()||!_.display)return 0;const $=this.ticks.findIndex(_e=>_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,ot)=>{!ot.width||!ot.color||(j.save(),j.lineWidth=ot.width,j.strokeStyle=ot.color,j.setLineDash(ot.borderDash||[]),j.lineDashOffset=ot.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&&idMatchesAxis(o[0].toLowerCase());if(j)return j}throw new Error(`Cannot determine type of '${o}' axis. Please provide 'axis' or 'position' option.`)}function getAxisFromDataset(o,s,_){if(_[s+"AxisID"]===o)return{axis:s}}function retrieveAxisFromDatasets(o,s){if(s.data&&s.data.datasets){const _=s.data.datasets.filter(j=>j.xAxisID===o||j.yAxisID===o);if(_.length)return getAxisFromDataset(o,"x",_[0])||getAxisFromDataset(o,"y",_[0])}return{}}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,retrieveAxisFromDatasets(et,o),defaults.scales[tt.type]),rt=getDefaultScaleIDFromAxis(nt,$),ot=_.scales||{};_e[et]=mergeIf(Object.create(null),[{axis:nt},tt,ot[nt],ot[rt]])}),o.data.datasets.forEach(et=>{const tt=et.type||o.type,nt=et.indexAxis||getIndexAxis(tt,s),ot=(overrides[tt]||{}).scales||{};Object.keys(ot).forEach(ut=>{const dt=getAxisFromDefaultScaleID(ut,nt),Ut=et[dt+"AxisID"]||dt;_e[Ut]=_e[Ut]||Object.create(null),mergeIf(_e[Ut],[{axis:dt},j[Ut],ot[ut]])})}),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(ot=>{s&&(nt.add(s),ot.forEach(ut=>addIfFound(nt,s,ut))),ot.forEach(ut=>addIfFound(nt,$,ut)),ot.forEach(ut=>addIfFound(nt,overrides[_e]||{},ut)),ot.forEach(ut=>addIfFound(nt,defaults,ut)),ot.forEach(ut=>addIfFound(nt,descriptors,ut))});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).some(s=>isFunction(o[s]));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.5.0";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}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,ot=nt&&nt.width;if(this.id=uid(),this.ctx=tt,this.canvas=nt,this.width=ot,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(ut=>this.update(ut),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",ot=nt==="x";return{options:tt,dposition:rt?"chartArea":ot?"bottom":"left",dtype:rt?"radialLinear":ot?"category":"linear"}}))),each(_e,et=>{const tt=et.options,nt=tt.id,rt=determineAxis(nt,tt),ot=valueOrDefault(tt.type,et.dtype);(tt.position===void 0||positionIsHorizontal(tt.position,rt)!==positionIsHorizontal(et.dposition))&&(tt.position=et.dposition),$[nt]=!0;let ut=null;if(nt in j&&j[nt].type===ot)ut=j[nt];else{const dt=registry.getScale(ot);ut=new dt({id:nt,type:ot,ctx:this.ctx,chart:this}),j[ut.id]=ut}ut.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:ot}=defaults.datasets[tt];Object.assign(nt,{dataElementType:registry.getElement(ot),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,ot=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={meta:s,index:s.index,cancelable:!0},$=getDatasetClipArea(this,s);this.notifyPlugins("beforeDatasetDraw",j)!==!1&&($&&clipArea(_,$),s.controller.draw(),$&&unclipArea(_),j.cancelable=!1,this.notifyPlugins("afterDatasetDraw",j))}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(ot=>!rt.some(ut=>ot.datasetIndex===ut.datasetIndex&&ot.index===ut.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 ot=!_elementsEqual(tt,$);return(ot||_)&&(this._active=tt,this._updateHoverStyles(tt,$,_)),this._lastEvent=rt,ot}_getActiveElements(s,_,j,$){if(s.type==="mouseout")return[];if(!j)return _;const _e=this.options.hover;return this.getElementsAtEventForMode(s,_e.mode,_e,$)}}On(Chart,"defaults",defaults),On(Chart,"instances",instances),On(Chart,"overrides",overrides),On(Chart,"registry",registry),On(Chart,"version",version),On(Chart,"getChart",getChart);function invalidatePlugins(){return each(Chart.instances,o=>o._plugins.invalidate())}function clipSelf(o,s,_){const{startAngle:j,x:$,y:_e,outerRadius:et,innerRadius:tt,options:nt}=s,{borderWidth:rt,borderJoinStyle:ot}=nt,ut=Math.min(rt/et,_normalizeAngle(j-_));if(o.beginPath(),o.arc($,_e,et-rt/2,j+ut/2,_-ut/2),tt>0){const dt=Math.min(rt/tt,_normalizeAngle(j-_));o.arc($,_e,tt+rt/2,_-dt/2,j+dt/2,!0)}else{const dt=Math.min(rt/2,et*_normalizeAngle(j-_));if(ot==="round")o.arc($,_e,dt,_-PI/2,j+PI/2,!0);else if(ot==="bevel"){const Ut=2*dt*dt,st=-Ut*Math.cos(_+PI/2)+$,ct=-Ut*Math.sin(_+PI/2)+_e,pt=Ut*Math.cos(j+PI/2)+$,Bt=Ut*Math.sin(j+PI/2)+_e;o.lineTo(st,ct),o.lineTo(pt,Bt)}}o.closePath(),o.moveTo(0,0),o.rect(0,0,o.canvas.width,o.canvas.height),o.clip("evenodd")}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:ot}=s,ut=Math.max(s.outerRadius+j+_-rt,0),dt=ot>0?ot+j+_+rt:0;let Ut=0;const st=$-nt;if(j){const _t=ot>0?ot-j:0,Wt=ut>0?ut-j:0,bt=(_t+Wt)/2,Jt=bt!==0?st*bt/(bt+j):st;Ut=(st-Jt)/2}const ct=Math.max(.001,st*ut-_/PI)/ut,pt=(st-ct)/2,Bt=nt+pt+Ut,Qt=$-pt-Ut,{outerStart:gt,outerEnd:ft,innerStart:Ft,innerEnd:yt}=parseBorderRadius$1(s,dt,ut,Qt-Bt),Ct=ut-gt,xt=ut-ft,ht=Bt+gt/Ct,mt=Qt-ft/xt,It=dt+Ft,vt=dt+yt,Tt=Bt+Ft/It,Ot=Qt-yt/vt;if(o.beginPath(),_e){const _t=(ht+mt)/2;if(o.arc(et,tt,ut,ht,_t),o.arc(et,tt,ut,_t,mt),ft>0){const Zt=rThetaToXY(xt,mt,et,tt);o.arc(Zt.x,Zt.y,ft,mt,Qt+HALF_PI)}const Wt=rThetaToXY(vt,Qt,et,tt);if(o.lineTo(Wt.x,Wt.y),yt>0){const Zt=rThetaToXY(vt,Ot,et,tt);o.arc(Zt.x,Zt.y,yt,Qt+HALF_PI,Ot+Math.PI)}const bt=(Qt-yt/dt+(Bt+Ft/dt))/2;if(o.arc(et,tt,dt,Qt-yt/dt,bt,!0),o.arc(et,tt,dt,bt,Bt+Ft/dt,!0),Ft>0){const Zt=rThetaToXY(It,Tt,et,tt);o.arc(Zt.x,Zt.y,Ft,Tt+Math.PI,Bt-HALF_PI)}const Jt=rThetaToXY(Ct,Bt,et,tt);if(o.lineTo(Jt.x,Jt.y),gt>0){const Zt=rThetaToXY(Ct,ht,et,tt);o.arc(Zt.x,Zt.y,gt,Bt-HALF_PI,ht)}}else{o.moveTo(et,tt);const _t=Math.cos(ht)*ut+et,Wt=Math.sin(ht)*ut+tt;o.lineTo(_t,Wt);const bt=Math.cos(mt)*ut+et,Jt=Math.sin(mt)*ut+tt;o.lineTo(bt,Jt)}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:ot,borderDash:ut,borderDashOffset:dt,borderRadius:Ut}=nt,st=nt.borderAlign==="inner";if(!rt)return;o.setLineDash(ut||[]),o.lineDashOffset=dt,st?(o.lineWidth=rt*2,o.lineJoin=ot||"round"):(o.lineWidth=rt,o.lineJoin=ot||"bevel");let ct=s.endAngle;if(_e){pathArc(o,s,_,j,ct,$);for(let pt=0;pt<_e;++pt)o.stroke();isNaN(tt)||(ct=et+(tt%TAU||TAU))}st&&clipArc(o,s,ct),nt.selfJoin&&ct-et>=PI&&Ut===0&&ot!=="miter"&&clipSelf(o,s,ct),_e||(pathArc(o,s,_,j,ct,$),o.stroke())}class ArcElement extends Element{constructor(_){super();On(this,"circumference");On(this,"endAngle");On(this,"fullCircles");On(this,"innerRadius");On(this,"outerRadius");On(this,"pixelMargin");On(this,"startAngle");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,_&&Object.assign(this,_)}inRange(_,j,$){const _e=this.getProps(["x","y"],$),{angle:et,distance:tt}=getAngleFromPoint(_e,{x:_,y:j}),{startAngle:nt,endAngle:rt,innerRadius:ot,outerRadius:ut,circumference:dt}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],$),Ut=(this.options.spacing+this.options.borderWidth)/2,st=valueOrDefault(dt,rt-nt),ct=_angleBetween(et,nt,rt)&&nt!==rt,pt=st>=TAU||ct,Bt=_isBetween(tt,ot+Ut,ut+Ut);return pt&&Bt}getCenterPoint(_){const{x:j,y:$,startAngle:_e,endAngle:et,innerRadius:tt,outerRadius:nt}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],_),{offset:rt,spacing:ot}=this.options,ut=(_e+et)/2,dt=(tt+nt+ot+rt)/2;return{x:j+Math.cos(ut)*dt,y:$+Math.sin(ut)*dt}}tooltipPosition(_){return this.getCenterPoint(_)}draw(_){const{options:j,circumference:$}=this,_e=(j.offset||0)/4,et=(j.spacing||0)/2,tt=j.circular;if(this.pixelMargin=j.borderAlign==="inner"?.33:0,this.fullCircles=$>TAU?Math.floor($/TAU):0,$===0||this.innerRadius<0||this.outerRadius<0)return;_.save();const nt=(this.startAngle+this.endAngle)/2;_.translate(Math.cos(nt)*_e,Math.sin(nt)*_e);const rt=1-Math.sin(Math.min(PI,$||0)),ot=_e*rt;_.fillStyle=j.backgroundColor,_.strokeStyle=j.borderColor,drawArc(_,this,ot,et,tt),drawBorder(_,this,ot,et,tt),_.restore()}}On(ArcElement,"id","arc"),On(ArcElement,"defaults",{borderAlign:"center",borderColor:"#fff",borderDash:[],borderDashOffset:0,borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0,selfJoin:!1}),On(ArcElement,"defaultRoutes",{backgroundColor:"backgroundColor"}),On(ArcElement,"descriptors",{_scriptable:!0,_indexable:_=>_!=="borderDash"});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),ot=$tt&&_e>tt;return{count:j,start:nt,loop:s.loop,ilen:rt(et+(rt?tt-ft:ft))%_e,gt=()=>{ct!==pt&&(o.lineTo(ot,pt),o.lineTo(ot,ct),o.lineTo(ot,Bt))};for(nt&&(Ut=$[Qt(0)],o.moveTo(Ut.x,Ut.y)),dt=0;dt<=tt;++dt){if(Ut=$[Qt(dt)],Ut.skip)continue;const ft=Ut.x,Ft=Ut.y,yt=ft|0;yt===st?(Ftpt&&(pt=Ft),ot=(ut*ot+ft)/++ut):(gt(),o.lineTo(ft,Ft),st=yt,ut=0,ct=pt=Ft),Bt=Ft}gt()}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,ot;for(rt=0,ot=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(_){super();On(this,"parsed");On(this,"skip");On(this,"stop");this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,_&&Object.assign(this,_)}inRange(_,j,$){const _e=this.options,{x:et,y:tt}=this.getProps(["x","y"],$);return Math.pow(_-et,2)+Math.pow(j-tt,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)}function containsDefaultColorsDefenitions(){return defaults.borderColor!=="rgba(0,0,0,0.1)"||defaults.backgroundColor!=="rgba(0,0,0,0.1)"}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}=$,et=containsColorsDefinitions(j)||containsColorsDefinition($)||_e&&containsColorsDefinitions(_e)||containsDefaultColorsDefenitions();if(!_.forceOverride&&et)return;const tt=getColorizer(o);j.forEach(tt)}};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 ot=s,ut,dt,Ut,st,ct;for(et[nt++]=o[ot],ut=0;ut<_e-2;ut++){let pt=0,Bt=0,Qt;const gt=Math.floor((ut+1)*tt)+1+s,ft=Math.min(Math.floor((ut+2)*tt)+1,_)+s,Ft=ft-gt;for(Qt=gt;QtUt&&(Ut=st,dt=o[Qt],ct=Qt);et[nt++]=dt,ot=ct}return et[nt++]=o[rt],et}function minMaxDecimation(o,s,_,j){let $=0,_e=0,et,tt,nt,rt,ot,ut,dt,Ut,st,ct;const pt=[],Bt=s+_-1,Qt=o[s].x,ft=o[Bt].x-Qt;for(et=s;etct&&(ct=rt,dt=et),$=(_e*$+tt.x)/++_e;else{const yt=et-1;if(!isNullOrUndef(ut)&&!isNullOrUndef(dt)){const Ct=Math.min(ut,dt),xt=Math.max(ut,dt);Ct!==Ut&&Ct!==yt&&pt.push({...o[Ct],x:$}),xt!==Ut&&xt!==yt&&pt.push({...o[xt],x:$})}et>0&&yt!==Ut&&pt.push(o[yt]),pt.push(tt),ot=Ft,_e=0,st=ct=rt,ut=dt=Ut=et}}return pt}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 ot=o.scales[nt.xAxisID];if(ot.type!=="linear"&&ot.type!=="time"||o.options.parsing)return;let{start:ut,count:dt}=getStartAndCountOfVisiblePointsSimplified(nt,rt);const Ut=_.threshold||4*j;if(dt<=Ut){cleanDecimatedDataset($);return}isNullOrUndef(et)&&($._data=rt,delete $.data,Object.defineProperty($,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(ct){this._data=ct}}));let st;switch(_.algorithm){case"lttb":st=lttbDecimation(rt,ut,dt,j,_);break;case"min-max":st=minMaxDecimation(rt,ut,dt,j);break;default:throw new Error(`Unsupported decimation algorithm '${_.algorithm}'`)}$._decimated=st})},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 ot=_getBounds(_,$[nt],$[rt],tt.loop);if(!s.segments){et.push({source:tt,target:ot,start:$[nt],end:$[rt]});continue}const ut=_boundSegments(s,ot);for(const dt of ut){const Ut=_getBounds(_,_e[dt.start],_e[dt.end],dt.loop),st=_boundSegment(tt,$,Ut);for(const ct of st)et.push({source:ct,target:dt,start:{[_]:_getEdge(ot,Ut,"start",Math.max)},end:{[_]:_getEdge(ot,Ut,"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 ot=rt.start;ot<=rt.end;ot++)addPointsBelow($,et[ot],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,ot;_.font=$.string,this.isHorizontal()?(rt=this.maxWidth,ot=this._fitRows(et,_e,tt,nt)+10):(ot=this.maxHeight,rt=this._fitCols(et,$,tt,nt)+10),this.width=Math.min(rt,s.maxWidth||this.maxWidth),this.height=Math.min(ot,s.maxHeight||this.maxHeight)}_fitRows(s,_,j,$){const{ctx:_e,maxWidth:et,options:{labels:{padding:tt}}}=this,nt=this.legendHitBoxes=[],rt=this.lineWidths=[0],ot=$+tt;let ut=s;_e.textAlign="left",_e.textBaseline="middle";let dt=-1,Ut=-ot;return this.legendItems.forEach((st,ct)=>{const pt=j+_/2+_e.measureText(st.text).width;(ct===0||rt[rt.length-1]+pt+2*tt>et)&&(ut+=ot,rt[rt.length-(ct>0?0:1)]=0,Ut+=ot,dt++),nt[ct]={left:0,top:Ut,row:dt,width:pt,height:$},rt[rt.length-1]+=pt+tt}),ut}_fitCols(s,_,j,$){const{ctx:_e,maxHeight:et,options:{labels:{padding:tt}}}=this,nt=this.legendHitBoxes=[],rt=this.columnSizes=[],ot=et-s;let ut=tt,dt=0,Ut=0,st=0,ct=0;return this.legendItems.forEach((pt,Bt)=>{const{itemWidth:Qt,itemHeight:gt}=calculateItemSize(j,_,_e,pt,$);Bt>0&&Ut+gt+2*tt>ot&&(ut+=dt+tt,rt.push({width:dt,height:Ut}),st+=dt+tt,ct++,dt=Ut=0),nt[Bt]={left:st,top:Ut,col:ct,width:Qt,height:gt},dt=Math.max(dt,Qt),Ut+=gt+tt}),ut+=dt,rt.push({width:dt,height:Ut}),ut}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:ot}=et,ut=rt.size,dt=ut/2;let Ut;this.drawTitle(),$.textAlign=nt.textAlign("left"),$.textBaseline="middle",$.lineWidth=.5,$.font=rt.string;const{boxWidth:st,boxHeight:ct,itemHeight:pt}=getBoxSize(et,ut),Bt=function(yt,Ct,xt){if(isNaN(st)||st<=0||isNaN(ct)||ct<0)return;$.save();const ht=valueOrDefault(xt.lineWidth,1);if($.fillStyle=valueOrDefault(xt.fillStyle,tt),$.lineCap=valueOrDefault(xt.lineCap,"butt"),$.lineDashOffset=valueOrDefault(xt.lineDashOffset,0),$.lineJoin=valueOrDefault(xt.lineJoin,"miter"),$.lineWidth=ht,$.strokeStyle=valueOrDefault(xt.strokeStyle,tt),$.setLineDash(valueOrDefault(xt.lineDash,[])),et.usePointStyle){const mt={radius:ct*Math.SQRT2/2,pointStyle:xt.pointStyle,rotation:xt.rotation,borderWidth:ht},It=nt.xPlus(yt,st/2),vt=Ct+dt;drawPointLegend($,mt,It,vt,et.pointStyleWidth&&st)}else{const mt=Ct+Math.max((ut-ct)/2,0),It=nt.leftForLtr(yt,st),vt=toTRBLCorners(xt.borderRadius);$.beginPath(),Object.values(vt).some(Tt=>Tt!==0)?addRoundedRectPath($,{x:It,y:mt,w:st,h:ct,radius:vt}):$.rect(It,mt,st,ct),$.fill(),ht!==0&&$.stroke()}$.restore()},Qt=function(yt,Ct,xt){renderText($,xt.text,yt,Ct+pt/2,rt,{strikethrough:xt.hidden,textAlign:nt.textAlign(xt.textAlign)})},gt=this.isHorizontal(),ft=this._computeTitleHeight();gt?Ut={x:_alignStartEnd(_e,this.left+ot,this.right-j[0]),y:this.top+ot+ft,line:0}:Ut={x:this.left+ot,y:_alignStartEnd(_e,this.top+ft+ot,this.bottom-_[0].height),line:0},overrideTextDirection(this.ctx,s.textDirection);const Ft=pt+ot;this.legendItems.forEach((yt,Ct)=>{$.strokeStyle=yt.fontColor,$.fillStyle=yt.fontColor;const xt=$.measureText(yt.text).width,ht=nt.textAlign(yt.textAlign||(yt.textAlign=et.textAlign)),mt=st+dt+xt;let It=Ut.x,vt=Ut.y;nt.setWidth(this.width),gt?Ct>0&&It+mt+ot>this.right&&(vt=Ut.y+=Ft,Ut.line++,It=Ut.x=_alignStartEnd(_e,this.left+ot,this.right-j[Ut.line])):Ct>0&&vt+Ft>this.bottom&&(It=Ut.x=It+_[Ut.line].width+ot,Ut.line++,vt=Ut.y=_alignStartEnd(_e,this.top+ft+ot,this.bottom-_[Ut.line].height));const Tt=nt.x(It);if(Bt(Tt,vt,yt),It=_textX(ht,It+st+dt,gt?It+mt:this.right,s.rtl),Qt(nt.x(It),vt,yt),gt)Ut.x+=mt+ot;else if(typeof yt.text!="string"){const Ot=rt.lineHeight;Ut.y+=calculateLegendItemHeight(yt,Ot)+ot}else Ut.y+=Ft}),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 ot,ut=this.left,dt=this.width;if(this.isHorizontal())dt=Math.max(...this.lineWidths),ot=this.top+rt,ut=_alignStartEnd(s.align,ut,this.right-dt);else{const st=this.columnSizes.reduce((ct,pt)=>Math.max(ct,pt.height),0);ot=rt+_alignStartEnd(s.align,this.top,this.bottom-st-s.labels.padding-this._computeTitleHeight())}const Ut=_alignStartEnd(tt,ut,ut+dt);et.textAlign=_e.textAlign(_toLeftRightCenter(tt)),et.textBaseline="middle",et.strokeStyle=_.color,et.fillStyle=_.color,et.font=j.string,renderText(et,_.text,Ut,ot,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: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),ot=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:(ot.width+ot.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,ot,ut;return this.isHorizontal()?(ot=_alignStartEnd(tt,j,_e),ut=_+s,rt=_e-j):(et.position==="left"?(ot=j+s,ut=_alignStartEnd(tt,$,_),nt=PI*-.5):(ot=_e-s,ut=_alignStartEnd(tt,_,$),nt=PI*.5),rt=$-_),{titleX:ot,titleY:ut,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=new Set,$=0,_e=0;for(s=0,_=o.length;s<_;++s){const tt=o[s].element;if(tt&&tt.hasValue()){const nt=tt.tooltipPosition();j.add(nt.x),$+=nt.y,++_e}}return _e===0||j.size===0?!1:{x:[...j].reduce((tt,nt)=>tt+nt)/j.size,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),ot=toFont(s.footerFont),ut=_e.length,dt=$.length,Ut=j.length,st=toPadding(s.padding);let ct=st.height,pt=0,Bt=j.reduce((ft,Ft)=>ft+Ft.before.length+Ft.lines.length+Ft.after.length,0);if(Bt+=o.beforeBody.length+o.afterBody.length,ut&&(ct+=ut*rt.lineHeight+(ut-1)*s.titleSpacing+s.titleMarginBottom),Bt){const ft=s.displayColors?Math.max(tt,nt.lineHeight):nt.lineHeight;ct+=Ut*ft+(Bt-Ut)*nt.lineHeight+(Bt-1)*s.bodySpacing}dt&&(ct+=s.footerMarginTop+dt*ot.lineHeight+(dt-1)*s.footerSpacing);let Qt=0;const gt=function(ft){pt=Math.max(pt,_.measureText(ft).width+Qt)};return _.save(),_.font=rt.string,each(o.title,gt),_.font=nt.string,each(o.beforeBody.concat(o.afterBody),gt),Qt=s.displayColors?et+2+s.boxPadding:0,each(j,ft=>{each(ft.before,gt),each(ft.lines,gt),each(ft.after,gt)}),Qt=0,_.font=ot.string,each(o.footer,gt),_.restore(),pt+=st.width,{width:pt,height:ct}}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:ot,topRight:ut,bottomLeft:dt,bottomRight:Ut}=toTRBLCorners(et);let st=alignX(s,tt);const ct=alignY(s,nt,rt);return nt==="center"?tt==="left"?st+=rt:tt==="right"&&(st-=rt):tt==="left"?st-=Math.max(ot,dt)+$:tt==="right"&&(st+=Math.max(ut,Ut)+$),{x:_limitValue(st,0,j.width-s.width),y:_limitValue(ct,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(ot,ut,dt,j))),s.itemSort&&(tt=tt.sort((ot,ut)=>s.itemSort(ot,ut,j))),each(tt,ot=>{const ut=overrideCallbacks(s.callbacks,ot);$.push(invokeCallbackWithFallback(ut,"labelColor",this,ot)),_e.push(invokeCallbackWithFallback(ut,"labelPointStyle",this,ot)),et.push(invokeCallbackWithFallback(ut,"labelTextColor",this,ot))}),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),ot=determineAlignment(this.chart,j,rt),ut=getBackgroundPoint(j,rt,ot,this.chart);this.xAlign=ot.xAlign,this.yAlign=ot.yAlign,_e={opacity:1,x:ut.x,y:ut.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:ot,bottomRight:ut}=toTRBLCorners(tt),{x:dt,y:Ut}=s,{width:st,height:ct}=_;let pt,Bt,Qt,gt,ft,Ft;return _e==="center"?(ft=Ut+ct/2,$==="left"?(pt=dt,Bt=pt-et,gt=ft+et,Ft=ft-et):(pt=dt+st,Bt=pt+et,gt=ft-et,Ft=ft+et),Qt=pt):($==="left"?Bt=dt+Math.max(nt,ot)+et:$==="right"?Bt=dt+st-Math.max(rt,ut)-et:Bt=this.caretX,_e==="top"?(gt=Ut,ft=gt-et,pt=Bt-et,Qt=Bt+et):(gt=Ut+ct,ft=gt+et,pt=Bt+et,Qt=Bt-et),Ft=gt),{x1:pt,x2:Bt,x3:Qt,y1:gt,y2:ft,y3:Ft}}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}=_e,ot=toFont(_e.bodyFont),ut=getAlignedX(this,"left",_e),dt=$.x(ut),Ut=ntQt!==0)?(s.beginPath(),s.fillStyle=_e.multiKeyBackground,addRoundedRectPath(s,{x:ct,y:st,w:rt,h:nt,radius:Bt}),s.fill(),s.stroke(),s.fillStyle=et.backgroundColor,s.beginPath(),addRoundedRectPath(s,{x:pt,y:st+1,w:rt-2,h:nt-2,radius:Bt}),s.fill()):(s.fillStyle=_e.multiKeyBackground,s.fillRect(ct,st,rt,nt),s.strokeRect(ct,st,rt,nt),s.fillStyle=et.backgroundColor,s.fillRect(pt,st+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:ot}=j,ut=toFont(j.bodyFont);let dt=ut.lineHeight,Ut=0;const st=getRtlAdapter(j.rtl,this.x,this.width),ct=function(xt){_.fillText(xt,st.x(s.x+Ut),s.y+dt/2),s.y+=dt+_e},pt=st.textAlign(et);let Bt,Qt,gt,ft,Ft,yt,Ct;for(_.textAlign=et,_.textBaseline="middle",_.font=ut.string,s.x=getAlignedX(this,pt,j),_.fillStyle=j.bodyColor,each(this.beforeBody,ct),Ut=tt&&pt!=="right"?et==="center"?rt/2+ot:rt+2+ot:0,ft=0,yt=$.length;ft0&&_.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),ot=getBackgroundPoint(s,nt,rt,_);($._to!==ot.x||_e._to!==ot.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,ot))}}_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 _.filter(tt=>this.chart.data.datasets[tt.datasetIndex]&&this.chart.getDatasetMeta(tt.datasetIndex).controller.getParsed(tt.index)!==void 0);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)}}On(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}}On(CategoryScale,"id","category"),On(CategoryScale,"defaults",{ticks:{callback:_getLabelForValue}});function generateTicks$1(o,s){const _=[],{bounds:$,step:_e,min:et,max:tt,precision:nt,count:rt,maxTicks:ot,maxDigits:ut,includeBounds:dt}=o,Ut=_e||1,st=ot-1,{min:ct,max:pt}=s,Bt=!isNullOrUndef(et),Qt=!isNullOrUndef(tt),gt=!isNullOrUndef(rt),ft=(pt-ct)/(ut+1);let Ft=niceNum((pt-ct)/st/Ut)*Ut,yt,Ct,xt,ht;if(Ft<1e-14&&!Bt&&!Qt)return[{value:ct},{value:pt}];ht=Math.ceil(pt/Ft)-Math.floor(ct/Ft),ht>st&&(Ft=niceNum(ht*Ft/st/Ut)*Ut),isNullOrUndef(nt)||(yt=Math.pow(10,nt),Ft=Math.ceil(Ft*yt)/yt),$==="ticks"?(Ct=Math.floor(ct/Ft)*Ft,xt=Math.ceil(pt/Ft)*Ft):(Ct=ct,xt=pt),Bt&&Qt&&_e&&almostWhole((tt-et)/_e,Ft/1e3)?(ht=Math.round(Math.min((tt-et)/Ft,ot)),Ft=(tt-et)/ht,Ct=et,xt=tt):gt?(Ct=Bt?et:Ct,xt=Qt?tt:xt,ht=rt-1,Ft=(xt-Ct)/ht):(ht=(xt-Ct)/Ft,almostEquals(ht,Math.round(ht),Ft/1e3)?ht=Math.round(ht):ht=Math.ceil(ht));const mt=Math.max(_decimalPlaces(Ft),_decimalPlaces(Ct));yt=Math.pow(10,isNullOrUndef(nt)?mt:nt),Ct=Math.round(Ct*yt)/yt,xt=Math.round(xt*yt)/yt;let It=0;for(Bt&&(dt&&Ct!==et?(_.push({value:et}),Cttt)break;_.push({value:vt})}return Qt&&dt&&xt!==tt?_.length&&almostEquals(_[_.length-1].value,tt,relativeLabelSize(tt,ft,o))?_[_.length-1].value=tt:_.push({value:tt}):(!Qt||xt===tt)&&_.push({value:xt}),_}function relativeLabelSize(o,s,{horizontal:_,minRotation:j}){const $=toRadians(j),_e=(_?Math.sin($):Math.cos($))||.001,et=.75*s*(""+o).length;return Math.min(s/_e,et)}class LinearScaleBase extends Scale{constructor(s){super(s),this.start=void 0,this.end=void 0,this._startValue=void 0,this._endValue=void 0,this._valueRange=0}parse(s,_){return isNullOrUndef(s)||(typeof s=="number"||s instanceof Number)&&!isFinite(+s)?null:+s}handleTickRangeOptions(){const{beginAtZero:s}=this.options,{minDefined:_,maxDefined:j}=this.getUserBounds();let{min:$,max:_e}=this;const et=nt=>$=_?$: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}}On(LinearScale,"id","linear"),On(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,ot=Math.floor((s-nt)/tt/10)*tt*10;let ut=Math.floor((rt-ot)/Math.pow(10,_e)),dt=finiteOrDefault(o.min,Math.round((nt+ot+ut*Math.pow(10,_e))*et)/et);for(;dt<_;)j.push({value:dt,major:isMajor(dt),significand:ut}),ut>=10?ut=ut<15?15:20:ut++,ut>=20&&(_e++,ut=2,et=_e>=0?1:et),dt=Math.round((nt+ot+ut*Math.pow(10,_e))*et)/et;const Ut=finiteOrDefault(o.max,dt);return j.push({value:Ut,major:isMajor(Ut),significand:ut}),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)}}On(LogarithmicScale,"id","logarithmic"),On(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 ot=o.getPointPosition(nt,o.drawingArea+$[nt],tt),ut=toFont(rt.font),dt=measureLabelSize(o.ctx,ut,o._pointLabels[nt]);j[nt]=dt;const Ut=_normalizeAngle(o.getIndexAngle(nt)+tt),st=Math.round(toDegrees(Ut)),ct=determineLimits(st,ot.x,dt.w,0,180),pt=determineLimits(st,ot.y,dt.h,90,270);updateLimits(_,s,Ut,ct,pt)}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 createPointLabelItem(o,s,_){const j=o.drawingArea,{extra:$,additionalAngle:_e,padding:et,size:tt}=_,nt=o.getPointPosition(s,j+$+et,_e),rt=Math.round(toDegrees(_normalizeAngle(nt.angle+HALF_PI))),ot=yForAngle(nt.y,tt.h,rt),ut=getTextAlignForAngle(rt),dt=leftForTextAlign(nt.x,tt.w,ut);return{visible:!0,x:nt.x,y:ot,textAlign:ut,left:dt,top:ot,right:dt+tt.w,bottom:ot+tt.h}}function isNotOverlapped(o,s){if(!s)return!0;const{left:_,top:j,right:$,bottom:_e}=o;return!(_isPointInArea({x:_,y:j},s)||_isPointInArea({x:_,y:_e},s)||_isPointInArea({x:$,y:j},s)||_isPointInArea({x:$,y:_e},s))}function buildPointLabelItems(o,s,_){const j=[],$=o._pointLabels.length,_e=o.options,{centerPointLabels:et,display:tt}=_e.pointLabels,nt={extra:getTickBackdropHeight(_e)/2,additionalAngle:et?PI/$:0};let rt;for(let ot=0;ot<$;ot++){nt.padding=_[ot],nt.size=s[ot];const ut=createPointLabelItem(o,ot,nt);j.push(ut),tt==="auto"&&(ut.visible=isNotOverlapped(ut,rt),ut.visible&&(rt=ut))}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 drawPointLabelBox(o,s,_){const{left:j,top:$,right:_e,bottom:et}=_,{backdropColor:tt}=s;if(!isNullOrUndef(tt)){const nt=toTRBLCorners(s.borderRadius),rt=toPadding(s.backdropPadding);o.fillStyle=tt;const ot=j-rt.left,ut=$-rt.top,dt=_e-j+rt.width,Ut=et-$+rt.height;Object.values(nt).some(st=>st!==0)?(o.beginPath(),addRoundedRectPath(o,{x:ot,y:ut,w:dt,h:Ut,radius:nt}),o.fill()):o.fillRect(ot,ut,dt,Ut)}}function drawPointLabels(o,s){const{ctx:_,options:{pointLabels:j}}=o;for(let $=s-1;$>=0;$--){const _e=o._pointLabelItems[$];if(!_e.visible)continue;const et=j.setContext(o.getPointLabelContext($));drawPointLabelBox(_,et,_e);const tt=toFont(et.font),{x:nt,y:rt,textAlign:ot}=_e;renderText(_,o._pointLabels[$],nt,rt+tt.lineHeight/2,tt,{color:et.color,textAlign:ot,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((ot,ut)=>{if(ut!==0||ut===0&&this.min<0){nt=this.getDistanceFromCenterForValue(ot.value);const dt=this.getContext(ut),Ut=$.setContext(dt),st=_e.setContext(dt);drawRadiusLine(this,Ut,nt,et,st)}}),j.display){for(s.save(),tt=et-1;tt>=0;tt--){const ot=j.setContext(this.getPointLabelContext(tt)),{color:ut,lineWidth:dt}=ot;!dt||!ut||(s.lineWidth=dt,s.strokeStyle=ut,s.setLineDash(ot.borderDash),s.lineDashOffset=ot.borderDashOffset,nt=this.getDistanceFromCenterForValue(_.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&&this.min>=0&&!_.reverse)return;const rt=j.setContext(this.getContext(nt)),ot=toFont(rt.font);if(_e=this.getDistanceFromCenterForValue(this.ticks[nt].value),rt.showLabelBackdrop){s.font=ot.string,et=s.measureText(tt.label).width,s.fillStyle=rt.backdropColor;const ut=toPadding(rt.backdropPadding);s.fillRect(-et/2-ut.left,-_e-ot.size/2-ut.top,et+ut.width,ot.size+ut.height)}renderText(s,tt.label,0,-_e,ot,{color:rt.color,strokeColor:rt.textStrokeColor,strokeWidth:rt.textStrokeWidth})}),s.restore()}drawTitle(){}}On(RadialLinearScale,"id","radialLinear"),On(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}}),On(RadialLinearScale,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),On(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,ot={};let ut=_,dt,Ut;if(rt&&(ut=+s.startOf(ut,"isoWeek",nt)),ut=+s.startOf(ut,rt?"day":et),s.diff(j,_,et)>1e5*tt)throw new Error(_+" and "+j+" are too far apart with stepSize of "+tt+" "+et);const st=$.ticks.source==="data"&&this.getDataTimestamps();for(dt=ut,Ut=0;dt+ct)}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,ot=nt&&tt[nt],ut=rt&&tt[rt],dt=j[_],Ut=rt&&ut&&dt&&dt.major;return this._adapter.format(s,$||(Ut?ut:ot))}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,ot;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;et$-_e)}_getTimestampsForTable(){let s=this._cache.all||[];if(s.length)return s;const _=this.getDataTimestamps(),j=this.getLabelTimestamps();return _.length&&j.length?s=this.normalize(_.concat(j)):s=_.length?_:j,s=this._cache.all=s,s}getDecimalForValue(s){return(interpolate(this._table,s)-this._minPos)/this._tableRange}getValueForPixel(s){const _=this._offsets,j=this.getDecimalForPixel(s)/_.factor-_.end;return interpolate(this._table,j*this._tableRange+this._minPos,!0)}}On(TimeSeriesScale,"id","timeseries"),On(TimeSeriesScale,"defaults",TimeScale.defaults);var scales=Object.freeze({__proto__:null,CategoryScale,LinearScale,LogarithmicScale,RadialLinearScale,TimeScale,TimeSeriesScale});const registerables=[controllers,elements,plugins,scales];var __defProp=Object.defineProperty,__defNormalProp=(o,s,_)=>s 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 ot=Date.now();console.info("BytestreamPlayer waiting for video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Waited":ot-this.moduleCreateTime}))}return}this.numFramesReceived/this.numFramesDecoded>maxDropRatio&&this.warnPerformanceProblems(),this.numFramesReceived=0,this.numFramesDecoded=0;const tt=Array.from(this.frameCheckpointMap.entries()).reduce((ot,[ut,dt])=>{var Ut;return!this.currentFrameIndex||ut>this.currentFrameIndex-60||dt==="FrameDrawn"||(ot[dt]=((Ut=ot[dt])!=null?Ut:0)+1,this.frameCheckpointMap.delete(ut)),ot},{});Object.keys(tt).map(ot=>{console.info("BytestreamPlayer Frame Dropped",__spreadProps(__spreadValues({},this.trackInfo),{"Num Dropped":tt[ot],"Frame State":ot}))});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:ot,retries:ut}=this,dt=new Date().getTime();ot&&(this.lastNoSignalTime=dt),this.overWaitingThreshold=dt-rt>noSignalThreshold;const Ut=dt-rt>decoderNotWorkingThreshold;if(!nt){tt&&Ut&&utnoSignalThreshold&&stwarnPerformanceThreshold&&this.warnPerformanceProblems(),st>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:ot,decoderQueue:ut}=this,{timestamp:dt,yuv:Ut,height:st,width:ct,index:pt}=et;this.frameCheckpointMap.set(pt,"FrameDecoded"),this.numFramesDecoded++;const Bt=Date.now();if(this.lastDecodedFrameTime===void 0&&console.info("BytestreamPlayer started video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Until Video":Bt-this.moduleCreateTime})),this.lastDecodedFrameTime=Bt,this.waitingForDecoder=!1,this.decoderQueue=ut.filter(ft=>Bt-ftduration.second||!ot||!rt||st===0||ct===0)return;st!==rt.height&&(rt.height=st,ot.height=st),ct!==rt.width&&(rt.width=ct,ot.width=ct);const Qt=ot.draw(Ut),gt=Date.now();if(this.lastDrawnFrameTime){const ft=gt-this.lastDrawnFrameTime;this.minJitter=Math.min(ft,(tt=this.minJitter)!=null?tt:Number.MAX_SAFE_INTEGER),this.maxJitter=Math.max(ft,(nt=this.maxJitter)!=null?nt:0)}this.lastDrawnFrameTime=gt,this.frameCheckpointMap.set(pt,"FrameDrawn"),Qt===0&&(this.webglYUVSupported=!0),Qt===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,ot=_?et===numRetries?"Decoder failed to start":"Starting decoder":void 0,ut=nt?"Hardware decoding not supported on this device":void 0;return(s=ut??(_e?"Lost signal":j?$?"No signal":"Waiting for signal":void 0))!=null?s:ot}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 classnames$1={exports:{}};/*! - 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 _e="",et=0;et{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$1(ThemeProvider,{theme:_e,children:jsx$1(j?D0:CssBaseline,{children:jsx$1(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$1(D2,{children:jsx$1("img",{src:I2})}),D2=createStyled$2("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 ut=>{await Authentication.waitTilAuthenticated();const dt=await rt();o.addRealtimeListener((Ut,st)=>{st.header.stream.streamName===_&&ut.drawVideoFrame(st.payload.h264VideoFrame)}),o.startListeningToRealtimeVideo(dt),et(!1)},nt=async()=>{const ut=await Fleet.getCurrentDevice(),dt=await rt();await ut.stopListeningToRealtimeVideo(dt)},rt=reactExports.useCallback(async()=>{const ut=(await o.getRealtimeVideoStreams()).filter(dt=>dt.name===_);return ut.length===0&&console.error("Error: Camera name is incorrect or doesn't exist"),ut[0]},[_]),ot=reactExports.useCallback(async()=>{const ut=document.querySelector(`#${s}`);ut.drawer.start(),await tt(ut)},[]);return reactExports.useLayoutEffect(()=>{if(o)return ot().then(ut=>console.warn("video mounted")),()=>{nt()}},[o]),jsxs(T2,{height:j,width:$,children:[_e&&jsx$1(z2,{}),jsx$1("formant-realtime-player",{id:s,style:{display:_e?"none":"block",backgroundColor:"transparent",height:"100%",width:"100%"}})]})},T2=createStyled$2("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$2("div",{className:"App",children:$||!j?jsx$2(z2,{}):jsx$2(at,{cameraName:s,device:j,id:"rtc-video"})})}const index="";client.createRoot(document.getElementById("root")).render(jsx$2(Ke,{parseConfiguration:!0,children:jsx$2(App,{})})); diff --git a/examples/realtime-video/dist/index.html b/examples/realtime-video/dist/index.html index 2884c9266..612e63f03 100644 --- a/examples/realtime-video/dist/index.html +++ b/examples/realtime-video/dist/index.html @@ -5,7 +5,7 @@ Vite + React + TS - + diff --git a/examples/realtime-video/package-lock.json b/examples/realtime-video/package-lock.json index d06775dde..e29638bc3 100644 --- a/examples/realtime-video/package-lock.json +++ b/examples/realtime-video/package-lock.json @@ -1,7 +1,7 @@ { "name": "realtime-video", "version": "0.0.0", - "lockfileVersion": 3, + "lockfileVersion": 2, "requires": true, "packages": { "": { @@ -22,49 +22,60 @@ "vite": "^4.0.0" } }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "devOptional": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" + "@babel/highlight": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.4.tgz", - "integrity": "sha512-YsmSKC29MJwf0gF8Rjjrg5LQCmyh+j/nD8/eP7f+BeoQTKYqs9RoWbjGOdy0+1Ekr68RJZMUOPVQaQisnIo4Rw==", - "dev": true, + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", + "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", + "devOptional": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.4.tgz", - "integrity": "sha512-2BCOP7TN8M+gVDj7/ht3hsaO/B/n5oDbiAyyvnRlNOs+u1o+JWNYTQrmpuNp1/Wq2gcFrI01JAW+paEKDMx/CA==", - "dev": true, + "version": "7.20.12", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", + "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", + "devOptional": true, "dependencies": { - "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.28.3", - "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-module-transforms": "^7.28.3", - "@babel/helpers": "^7.28.4", - "@babel/parser": "^7.28.4", - "@babel/template": "^7.27.2", - "@babel/traverse": "^7.28.4", - "@babel/types": "^7.28.4", - "@jridgewell/remapping": "^2.3.5", - "convert-source-map": "^2.0.0", + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helpers": "^7.20.7", + "@babel/parser": "^7.20.7", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.12", + "@babel/types": "^7.20.7", + "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" + "json5": "^2.2.2", + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" @@ -74,143 +85,207 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, "node_modules/@babel/generator": { - "version": "7.28.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.3.tgz", - "integrity": "sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==", + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", + "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", + "devOptional": true, "dependencies": { - "@babel/parser": "^7.28.3", - "@babel/types": "^7.28.2", - "@jridgewell/gen-mapping": "^0.3.12", - "@jridgewell/trace-mapping": "^0.3.28", - "jsesc": "^3.0.2" + "@babel/types": "^7.20.7", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "devOptional": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", - "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", - "dev": true, + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "devOptional": true, "dependencies": { - "@babel/compat-data": "^7.27.2", - "@babel/helper-validator-option": "^7.27.1", - "browserslist": "^4.24.0", + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", "lru-cache": "^5.1.1", - "semver": "^6.3.1" + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "devOptional": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "devOptional": true, "dependencies": { - "yallist": "^3.0.2" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/helper-globals": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", - "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "devOptional": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", - "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "dependencies": { - "@babel/traverse": "^7.27.1", - "@babel/types": "^7.27.1" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.28.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz", - "integrity": "sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==", - "dev": true, + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", + "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", + "devOptional": true, "dependencies": { - "@babel/helper-module-imports": "^7.27.1", - "@babel/helper-validator-identifier": "^7.27.1", - "@babel/traverse": "^7.28.3" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.10", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", - "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "devOptional": true, + "dependencies": { + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "devOptional": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-string-parser": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", - "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", - "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", - "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", - "dev": true, + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "devOptional": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz", - "integrity": "sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==", - "dev": true, + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", + "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", + "devOptional": true, "dependencies": { - "@babel/template": "^7.27.2", - "@babel/types": "^7.28.4" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.13", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/parser": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.4.tgz", - "integrity": "sha512-yZbBqeM6TkpP9du/I2pUZnJsRMGGvOuIrhjzC1AwHwW+6he4mni6Bp/m8ijn0iOuZuPI2BfkCoSRunpyjnrQKg==", + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dependencies": { - "@babel/types": "^7.28.4" + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz", + "integrity": "sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw==", + "devOptional": true, "bin": { "parser": "bin/babel-parser.js" }, @@ -219,12 +294,12 @@ } }, "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz", - "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz", + "integrity": "sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { "node": ">=6.9.0" @@ -234,12 +309,12 @@ } }, "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz", - "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.19.6.tgz", + "integrity": "sha512-RpAi004QyMNisst/pvSanoRdJ4q+jMCWyk9zdw/CyLB9j8RXEahodR6l2GyttDRyEVWZtbN+TpLiHJ3t34LbsQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.19.0" }, "engines": { "node": ">=6.9.0" @@ -249,706 +324,441 @@ } }, "node_modules/@babel/runtime": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.4.tgz", - "integrity": "sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.5.tgz", + "integrity": "sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==", + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/template": { - "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", - "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "devOptional": true, "dependencies": { - "@babel/code-frame": "^7.27.1", - "@babel/parser": "^7.27.2", - "@babel/types": "^7.27.1" + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.4.tgz", - "integrity": "sha512-YEzuboP2qvQavAcjgQNVgsvHIDv6ZpwXvcvjmyySP2DIMuByS/6ioU5G9pYrWHM6T2YDfc7xga9iNzYOs12CFQ==", + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", + "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", + "devOptional": true, "dependencies": { - "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.28.3", - "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.28.4", - "@babel/template": "^7.27.2", - "@babel/types": "^7.28.4", - "debug": "^4.3.1" + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.13", + "@babel/types": "^7.20.7", + "debug": "^4.1.0", + "globals": "^11.1.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/types": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.4.tgz", - "integrity": "sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", + "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", "dependencies": { - "@babel/helper-string-parser": "^7.27.1", - "@babel/helper-validator-identifier": "^7.27.1" + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@emotion/babel-plugin": { - "version": "11.13.5", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", - "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.10.6.tgz", + "integrity": "sha512-p2dAqtVrkhSa7xz1u/m9eHYdLi+en8NowrmXeF/dKtJpU8lCWli8RUAati7NcSl0afsBott48pdnANuD0wh9QQ==", "dependencies": { "@babel/helper-module-imports": "^7.16.7", "@babel/runtime": "^7.18.3", - "@emotion/hash": "^0.9.2", - "@emotion/memoize": "^0.9.0", - "@emotion/serialize": "^1.3.3", + "@emotion/hash": "^0.9.0", + "@emotion/memoize": "^0.8.0", + "@emotion/serialize": "^1.1.1", "babel-plugin-macros": "^3.1.0", "convert-source-map": "^1.5.0", "escape-string-regexp": "^4.0.0", "find-root": "^1.1.0", "source-map": "^0.5.7", - "stylis": "4.2.0" + "stylis": "4.1.3" + } + }, + "node_modules/@emotion/babel-plugin/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/@emotion/cache": { - "version": "11.14.0", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", - "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", + "version": "11.10.5", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.10.5.tgz", + "integrity": "sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA==", "dependencies": { - "@emotion/memoize": "^0.9.0", - "@emotion/sheet": "^1.4.0", - "@emotion/utils": "^1.4.2", - "@emotion/weak-memoize": "^0.4.0", - "stylis": "4.2.0" + "@emotion/memoize": "^0.8.0", + "@emotion/sheet": "^1.2.1", + "@emotion/utils": "^1.2.0", + "@emotion/weak-memoize": "^0.3.0", + "stylis": "4.1.3" } }, "node_modules/@emotion/css": { - "version": "11.13.5", - "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.13.5.tgz", - "integrity": "sha512-wQdD0Xhkn3Qy2VNcIzbLP9MR8TafI0MJb7BEAXKp+w4+XqErksWR4OXomuDzPsN4InLdGhVe6EYcn2ZIUCpB8w==", + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.10.6.tgz", + "integrity": "sha512-88Sr+3heKAKpj9PCqq5A1hAmAkoSIvwEq1O2TwDij7fUtsJpdkV4jMTISSTouFeRvsGvXIpuSuDQ4C1YdfNGXw==", "dependencies": { - "@emotion/babel-plugin": "^11.13.5", - "@emotion/cache": "^11.13.5", - "@emotion/serialize": "^1.3.3", - "@emotion/sheet": "^1.4.0", - "@emotion/utils": "^1.4.2" + "@emotion/babel-plugin": "^11.10.6", + "@emotion/cache": "^11.10.5", + "@emotion/serialize": "^1.1.1", + "@emotion/sheet": "^1.2.1", + "@emotion/utils": "^1.2.0" } }, "node_modules/@emotion/hash": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz", - "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==" + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.0.tgz", + "integrity": "sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==" }, "node_modules/@emotion/is-prop-valid": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.4.0.tgz", - "integrity": "sha512-QgD4fyscGcbbKwJmqNvUMSE02OsHUa+lAWKdEUIJKgqe5IwRSKd7+KhibEWdaKwgjLj0DRSHA9biAIqGBk05lw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz", + "integrity": "sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==", "dependencies": { - "@emotion/memoize": "^0.9.0" + "@emotion/memoize": "^0.8.0" } }, "node_modules/@emotion/memoize": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", - "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==" + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz", + "integrity": "sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==" }, "node_modules/@emotion/react": { - "version": "11.14.0", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", - "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", + "version": "11.10.5", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.10.5.tgz", + "integrity": "sha512-TZs6235tCJ/7iF6/rvTaOH4oxQg2gMAcdHemjwLKIjKz4rRuYe1HJ2TQJKnAcRAfOUDdU8XoDadCe1rl72iv8A==", "dependencies": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.13.5", - "@emotion/cache": "^11.14.0", - "@emotion/serialize": "^1.3.3", - "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", - "@emotion/utils": "^1.4.2", - "@emotion/weak-memoize": "^0.4.0", + "@emotion/babel-plugin": "^11.10.5", + "@emotion/cache": "^11.10.5", + "@emotion/serialize": "^1.1.1", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.0", + "@emotion/utils": "^1.2.0", + "@emotion/weak-memoize": "^0.3.0", "hoist-non-react-statics": "^3.3.1" }, "peerDependencies": { + "@babel/core": "^7.0.0", "react": ">=16.8.0" }, "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, "@types/react": { "optional": true } } }, "node_modules/@emotion/serialize": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", - "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", - "dependencies": { - "@emotion/hash": "^0.9.2", - "@emotion/memoize": "^0.9.0", - "@emotion/unitless": "^0.10.0", - "@emotion/utils": "^1.4.2", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.1.tgz", + "integrity": "sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA==", + "dependencies": { + "@emotion/hash": "^0.9.0", + "@emotion/memoize": "^0.8.0", + "@emotion/unitless": "^0.8.0", + "@emotion/utils": "^1.2.0", "csstype": "^3.0.2" } }, "node_modules/@emotion/sheet": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz", - "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==" + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.1.tgz", + "integrity": "sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==" }, "node_modules/@emotion/styled": { - "version": "11.14.1", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.14.1.tgz", - "integrity": "sha512-qEEJt42DuToa3gurlH4Qqc1kVpNq8wO8cJtDzU46TjlzWjDlsVyevtYCRijVq3SrHsROS+gVQ8Fnea108GnKzw==", + "version": "11.10.5", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.10.5.tgz", + "integrity": "sha512-8EP6dD7dMkdku2foLoruPCNkRevzdcBaY6q0l0OsbyJK+x8D9HWjX27ARiSIKNF634hY9Zdoedh8bJCiva8yZw==", "dependencies": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.13.5", - "@emotion/is-prop-valid": "^1.3.0", - "@emotion/serialize": "^1.3.3", - "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", - "@emotion/utils": "^1.4.2" + "@emotion/babel-plugin": "^11.10.5", + "@emotion/is-prop-valid": "^1.2.0", + "@emotion/serialize": "^1.1.1", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.0", + "@emotion/utils": "^1.2.0" }, "peerDependencies": { + "@babel/core": "^7.0.0", "@emotion/react": "^11.0.0-rc.0", "react": ">=16.8.0" }, "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, "@types/react": { "optional": true } } }, "node_modules/@emotion/unitless": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", - "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==" + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz", + "integrity": "sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==" }, "node_modules/@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", - "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz", + "integrity": "sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==", "peerDependencies": { "react": ">=16.8.0" } }, "node_modules/@emotion/utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", - "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.0.tgz", + "integrity": "sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==" }, "node_modules/@emotion/weak-memoize": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz", - "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==" - }, - "node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz", + "integrity": "sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==" }, - "node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "node_modules/@esbuild/linux-x64": { + "version": "0.17.15", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.15.tgz", + "integrity": "sha512-JsdS0EgEViwuKsw5tiJQo9UdQdUJYuB+Mf6HxtJSPN35vez1hlrNb1KajvKWF5Sa35j17+rW1ECEO9iNrIXbNg==", "cpu": [ - "arm64" + "x64" ], "dev": true, "optional": true, "os": [ - "android" + "linux" ], "engines": { "node": ">=12" } }, - "node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], + "node_modules/@formant/data-sdk": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/@formant/data-sdk/-/data-sdk-1.51.0.tgz", + "integrity": "sha512-8/7IQb6VaiLVx+31e8y3iRNNC4f9LLjhJwAK5NNJNceagz6oezPkfvsKa362scyf2oXLkgsOMC2A/20UMD6gPw==", + "dependencies": { + "@formant/ui-sdk-realtime-player-core": "^0.0.2", + "@formant/ui-sdk-realtime-player-core-worker": "^0.0.4", + "@types/validator": "^13.11.8", + "base-64": "^1.0.0", + "base64-js": "^1.5.1", + "date-fns": "^2.30.0", + "eventemitter3": "^5.0.1", + "google-protobuf": "^3.21.2", + "lzfjs": "^1.0.1", + "pako": "^2.1.0", + "validator": "^13.11.0" + }, "engines": { - "node": ">=12" + "node": "^18.12.0 || ^16.13.0" } }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], + "node_modules/@formant/realtime-sdk": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@formant/realtime-sdk/-/realtime-sdk-1.4.0.tgz", + "integrity": "sha512-nxUxm8PlYDsjI6X0KAO/JvYIGE/UlL1O0k+vYlOwQjAMvX9xGXAz6QhO2GJKDO3Z8HurhTaZnmExxUU0q0Q9kg==", + "dependencies": { + "@types/generic-pool": "^3.8.1", + "@types/google-protobuf": "~3.7.0", + "env-var": "^7.4.0", + "generic-pool": "^3.9.0" + }, "engines": { - "node": ">=12" + "node": "^16.13.0 || ^18.12.0" } }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" + "node_modules/@formant/ui-sdk": { + "version": "0.0.60", + "resolved": "https://registry.npmjs.org/@formant/ui-sdk/-/ui-sdk-0.0.60.tgz", + "integrity": "sha512-emHwiZXwPONTEgtEgE+EKifiIlcCLNGvnpcydPR/o8EQu4SXrGS96qUv8kNqz4/bvKFhqrQuH4RZoJsoKqSa7g==", + "dependencies": { + "@emotion/css": "^11.10.6", + "@emotion/react": "^11.9.0", + "@emotion/styled": "^11.8.1", + "@formant/ui-sdk-realtime-player": "^0.0.9", + "@mui/material": "^5.6.1", + "@mui/utils": "^5.6.1", + "@types/lodash": "^4.14.182", + "chart.js": "^4.2.0", + "classnames": "^2.3.1", + "grpc-web": "1.2.1", + "lodash": "^4.17.21", + "react-chartjs-2": "^5.2.0", + "react-device-detect": "^2.2.2" + }, + "peerDependencies": { + "@formant/data-sdk": "^1.0.0", + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" + "node_modules/@formant/ui-sdk-realtime-player": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/@formant/ui-sdk-realtime-player/-/ui-sdk-realtime-player-0.0.9.tgz", + "integrity": "sha512-umNyNLWzv5TMw5Q+cLFHMlaTKi9HgU5R9LupzwqgroVlghgNFV2UxIZSDc5G7ZpMVsnwaNxPeLBdm90oJiyFjg==", + "dependencies": { + "@formant/ui-sdk-realtime-player-core": "^0.0.2", + "@formant/ui-sdk-realtime-player-core-worker": "^0.0.4" } }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" + "node_modules/@formant/ui-sdk-realtime-player-core": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@formant/ui-sdk-realtime-player-core/-/ui-sdk-realtime-player-core-0.0.2.tgz", + "integrity": "sha512-RC8z90dMvtXDAnxnSLYH2d4m27SgPI7fJasMu4X98QEwo4eOg4yRXT5TNbnpdjI7bqARbaSlosWtc7ba8d42Ng==" + }, + "node_modules/@formant/ui-sdk-realtime-player-core-worker": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@formant/ui-sdk-realtime-player-core-worker/-/ui-sdk-realtime-player-core-worker-0.0.4.tgz", + "integrity": "sha512-yQ0VJNdrFkTHRA9mBkmfBzrgSrdOTTukETtC1Jit2A5yj2B765IngA20Lf8ny6BePTsozHFk89KM5cU6MNuMmg==", + "dependencies": { + "@types/offscreencanvas": "^2019.6.4", + "h264decoder": "^1.0.0" } }, - "node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], + "node_modules/@formant/ui-sdk/node_modules/grpc-web": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/grpc-web/-/grpc-web-1.2.1.tgz", + "integrity": "sha512-ibBaJPzfMVuLPgaST9w0kZl60s+SnkPBQp6QKdpEr85tpc1gXW2QDqSne9xiyiym0logDfdUSm4aX5h9YBA2mw==" + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "devOptional": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, "engines": { - "node": ">=12" + "node": ">=6.0.0" } }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "devOptional": true, "engines": { - "node": ">=12" + "node": ">=6.0.0" } }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "devOptional": true, "engines": { - "node": ">=12" + "node": ">=6.0.0" } }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "devOptional": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "devOptional": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" } }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@formant/data-sdk": { - "version": "1.80.7", - "resolved": "https://registry.npmjs.org/@formant/data-sdk/-/data-sdk-1.80.7.tgz", - "integrity": "sha512-/2g7xx/gWzzpfXM/Q6GK4qD4Q5lz0Psxv5Mr0E4JjOwXcZqcpN5kcb++MQ988aJOW5yWCXRs0uHbWMAVfRW4Eg==", + "node_modules/@kurkle/color": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.2.tgz", + "integrity": "sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw==" + }, + "node_modules/@mui/base": { + "version": "5.0.0-alpha.115", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.115.tgz", + "integrity": "sha512-OGQ84whT/yNYd6xKCGGS6MxqEfjVjk5esXM7HP6bB2Rim7QICUapxZt4nm8q39fpT08rNDkv3xPVqDDwRdRg1g==", "dependencies": { - "@formant/ui-sdk-realtime-player-core": "^0.0.2", - "@formant/ui-sdk-realtime-player-core-worker": "^0.0.4", - "@types/validator": "^13.11.8", - "base-64": "^1.0.0", - "base64-js": "^1.5.1", - "date-fns": "^2.30.0", - "eventemitter3": "^5.0.1", - "fast-json-stable-stringify": "=2.0.0", - "google-protobuf": "^3.21.2", - "lru-cache": "^7.14.0", - "lzfjs": "^1.0.1", - "pako": "^2.1.0", - "validator": "^13.11.0" + "@babel/runtime": "^7.20.7", + "@emotion/is-prop-valid": "^1.2.0", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.2", + "@popperjs/core": "^2.11.6", + "clsx": "^1.2.1", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" }, "engines": { - "node": "^18.12.0 || ^16.13.0 || 20.x" - } - }, - "node_modules/@formant/realtime-sdk": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@formant/realtime-sdk/-/realtime-sdk-1.4.3.tgz", - "integrity": "sha512-eC8L1JrcDOaJrCgVB/qpBK6nV4nM4GIRrotJun8Hey8yXGfCD6fzu6hLnwWSoBVXEyPBEqyjb6NDibu8yvoAmA==", - "dependencies": { - "@types/google-protobuf": "~3.7.0", - "env-var": "^7.4.0" + "node": ">=12.0.0" }, - "engines": { - "node": "^16.13.0 || ^18.12.0" - } - }, - "node_modules/@formant/ui-sdk": { - "version": "0.0.60", - "resolved": "https://registry.npmjs.org/@formant/ui-sdk/-/ui-sdk-0.0.60.tgz", - "integrity": "sha512-emHwiZXwPONTEgtEgE+EKifiIlcCLNGvnpcydPR/o8EQu4SXrGS96qUv8kNqz4/bvKFhqrQuH4RZoJsoKqSa7g==", - "dependencies": { - "@emotion/css": "^11.10.6", - "@emotion/react": "^11.9.0", - "@emotion/styled": "^11.8.1", - "@formant/ui-sdk-realtime-player": "^0.0.9", - "@mui/material": "^5.6.1", - "@mui/utils": "^5.6.1", - "@types/lodash": "^4.14.182", - "chart.js": "^4.2.0", - "classnames": "^2.3.1", - "grpc-web": "1.2.1", - "lodash": "^4.17.21", - "react-chartjs-2": "^5.2.0", - "react-device-detect": "^2.2.2" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" }, "peerDependencies": { - "@formant/data-sdk": "^1.0.0", - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, - "node_modules/@formant/ui-sdk-realtime-player": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/@formant/ui-sdk-realtime-player/-/ui-sdk-realtime-player-0.0.9.tgz", - "integrity": "sha512-umNyNLWzv5TMw5Q+cLFHMlaTKi9HgU5R9LupzwqgroVlghgNFV2UxIZSDc5G7ZpMVsnwaNxPeLBdm90oJiyFjg==", - "dependencies": { - "@formant/ui-sdk-realtime-player-core": "^0.0.2", - "@formant/ui-sdk-realtime-player-core-worker": "^0.0.4" - } - }, - "node_modules/@formant/ui-sdk-realtime-player-core": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/@formant/ui-sdk-realtime-player-core/-/ui-sdk-realtime-player-core-0.0.2.tgz", - "integrity": "sha512-RC8z90dMvtXDAnxnSLYH2d4m27SgPI7fJasMu4X98QEwo4eOg4yRXT5TNbnpdjI7bqARbaSlosWtc7ba8d42Ng==" - }, - "node_modules/@formant/ui-sdk-realtime-player-core-worker": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/@formant/ui-sdk-realtime-player-core-worker/-/ui-sdk-realtime-player-core-worker-0.0.4.tgz", - "integrity": "sha512-yQ0VJNdrFkTHRA9mBkmfBzrgSrdOTTukETtC1Jit2A5yj2B765IngA20Lf8ny6BePTsozHFk89KM5cU6MNuMmg==", - "dependencies": { - "@types/offscreencanvas": "^2019.6.4", - "h264decoder": "^1.0.0" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", - "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "node_modules/@jridgewell/remapping": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", - "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.30", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz", - "integrity": "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@kurkle/color": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.4.tgz", - "integrity": "sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==" - }, "node_modules/@mui/core-downloads-tracker": { - "version": "5.18.0", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.18.0.tgz", - "integrity": "sha512-jbhwoQ1AY200PSSOrNXmrFCaSDSJWP7qk6urkTmIirvRXDROkqe+QwcLlUiw/PrREwsIF/vm3/dAXvjlMHF0RA==", + "version": "5.11.6", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.11.6.tgz", + "integrity": "sha512-lbD3qdafBOf2dlqKhOcVRxaPAujX+9UlPC6v8iMugMeAXe0TCgU3QbGXY3zrJsu6ex64WYDpH4y1+WOOBmWMuA==", "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "url": "https://opencollective.com/mui" } }, "node_modules/@mui/material": { - "version": "5.18.0", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.18.0.tgz", - "integrity": "sha512-bbH/HaJZpFtXGvWg3TsBWG4eyt3gah3E7nCNU8GLyRjVoWcA91Vm/T+sjHfUcwgJSw9iLtucfHBoq+qW/T30aA==", - "dependencies": { - "@babel/runtime": "^7.23.9", - "@mui/core-downloads-tracker": "^5.18.0", - "@mui/system": "^5.18.0", - "@mui/types": "~7.2.15", - "@mui/utils": "^5.17.1", - "@popperjs/core": "^2.11.8", - "@types/react-transition-group": "^4.4.10", - "clsx": "^2.1.0", - "csstype": "^3.1.3", + "version": "5.11.6", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.11.6.tgz", + "integrity": "sha512-MzkkL5KC2PCkFiv8cLpkzgLUPXSrAtnvJBR0emV7mLVWbkwV3n5832vjBx154B6R032fHjFTziTh7YEb50nK6Q==", + "dependencies": { + "@babel/runtime": "^7.20.7", + "@mui/base": "5.0.0-alpha.115", + "@mui/core-downloads-tracker": "^5.11.6", + "@mui/system": "^5.11.5", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.2", + "@types/react-transition-group": "^4.4.5", + "clsx": "^1.2.1", + "csstype": "^3.1.1", "prop-types": "^15.8.1", - "react-is": "^19.0.0", + "react-is": "^18.2.0", "react-transition-group": "^4.4.5" }, "engines": { @@ -956,14 +766,14 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "url": "https://opencollective.com/mui" }, "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" }, "peerDependenciesMeta": { "@emotion/react": { @@ -978,12 +788,12 @@ } }, "node_modules/@mui/private-theming": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.17.1.tgz", - "integrity": "sha512-XMxU0NTYcKqdsG8LRmSoxERPXwMbp16sIXPcLVgLGII/bVNagX0xaheWAwFv8+zDK7tI3ajllkuD3GZZE++ICQ==", + "version": "5.11.2", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.11.2.tgz", + "integrity": "sha512-qZwMaqRFPwlYmqwVKblKBGKtIjJRAj3nsvX93pOmatsXyorW7N/0IPE/swPgz1VwChXhHO75DwBEx8tB+aRMNg==", "dependencies": { - "@babel/runtime": "^7.23.9", - "@mui/utils": "^5.17.1", + "@babel/runtime": "^7.20.7", + "@mui/utils": "^5.11.2", "prop-types": "^15.8.1" }, "engines": { @@ -991,11 +801,11 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "url": "https://opencollective.com/mui" }, "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" }, "peerDependenciesMeta": { "@types/react": { @@ -1004,14 +814,13 @@ } }, "node_modules/@mui/styled-engine": { - "version": "5.18.0", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.18.0.tgz", - "integrity": "sha512-BN/vKV/O6uaQh2z5rXV+MBlVrEkwoS/TK75rFQ2mjxA7+NBo8qtTAOA4UaM0XeJfn7kh2wZ+xQw2HAx0u+TiBg==", - "dependencies": { - "@babel/runtime": "^7.23.9", - "@emotion/cache": "^11.13.5", - "@emotion/serialize": "^1.3.3", - "csstype": "^3.1.3", + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.11.0.tgz", + "integrity": "sha512-AF06K60Zc58qf0f7X+Y/QjaHaZq16znliLnGc9iVrV/+s8Ln/FCoeNuFvhlCbZZQ5WQcJvcy59zp0nXrklGGPQ==", + "dependencies": { + "@babel/runtime": "^7.20.6", + "@emotion/cache": "^11.10.5", + "csstype": "^3.1.1", "prop-types": "^15.8.1" }, "engines": { @@ -1019,12 +828,12 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "url": "https://opencollective.com/mui" }, "peerDependencies": { "@emotion/react": "^11.4.1", "@emotion/styled": "^11.3.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + "react": "^17.0.0 || ^18.0.0" }, "peerDependenciesMeta": { "@emotion/react": { @@ -1036,17 +845,17 @@ } }, "node_modules/@mui/system": { - "version": "5.18.0", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.18.0.tgz", - "integrity": "sha512-ojZGVcRWqWhu557cdO3pWHloIGJdzVtxs3rk0F9L+x55LsUjcMUVkEhiF7E4TMxZoF9MmIHGGs0ZX3FDLAf0Xw==", - "dependencies": { - "@babel/runtime": "^7.23.9", - "@mui/private-theming": "^5.17.1", - "@mui/styled-engine": "^5.18.0", - "@mui/types": "~7.2.15", - "@mui/utils": "^5.17.1", - "clsx": "^2.1.0", - "csstype": "^3.1.3", + "version": "5.11.5", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.11.5.tgz", + "integrity": "sha512-KNVsJ0sgRRp2XBqhh4wPS5aacteqjwxgiYTVwVnll2fgkgunZKo3DsDiGMrFlCg25ZHA3Ax58txWGE9w58zp0w==", + "dependencies": { + "@babel/runtime": "^7.20.7", + "@mui/private-theming": "^5.11.2", + "@mui/styled-engine": "^5.11.0", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.2", + "clsx": "^1.2.1", + "csstype": "^3.1.1", "prop-types": "^15.8.1" }, "engines": { @@ -1054,13 +863,13 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "url": "https://opencollective.com/mui" }, "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" }, "peerDependenciesMeta": { "@emotion/react": { @@ -1075,11 +884,11 @@ } }, "node_modules/@mui/types": { - "version": "7.2.24", - "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.24.tgz", - "integrity": "sha512-3c8tRt/CbWZ+pEg7QpSwbdxOk36EfmhbKf6AGZsD1EcLDLTSZoxxJ86FVtcjxvjuhdyBiWKSTGZFaXCnidO2kw==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.3.tgz", + "integrity": "sha512-tZ+CQggbe9Ol7e/Fs5RcKwg/woU+o8DCtOnccX6KmbBc7YrfqMYEYuaIcXHuhpT880QwNkZZ3wQwvtlDFA2yOw==", "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" + "@types/react": "*" }, "peerDependenciesMeta": { "@types/react": { @@ -1088,98 +897,114 @@ } }, "node_modules/@mui/utils": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.17.1.tgz", - "integrity": "sha512-jEZ8FTqInt2WzxDV8bhImWBqeQRD99c/id/fq83H0ER9tFl+sfZlaAoCdznGvbSQQ9ividMxqSV2c7cC1vBcQg==", - "dependencies": { - "@babel/runtime": "^7.23.9", - "@mui/types": "~7.2.15", - "@types/prop-types": "^15.7.12", - "clsx": "^2.1.1", + "version": "5.11.2", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.11.2.tgz", + "integrity": "sha512-AyizuHHlGdAtH5hOOXBW3kriuIwUIKUIgg0P7LzMvzf6jPhoQbENYqY6zJqfoZ7fAWMNNYT8mgN5EftNGzwE2w==", + "dependencies": { + "@babel/runtime": "^7.20.7", + "@types/prop-types": "^15.7.5", + "@types/react-is": "^16.7.1 || ^17.0.0", "prop-types": "^15.8.1", - "react-is": "^19.0.0" + "react-is": "^18.2.0" }, "engines": { "node": ">=12.0.0" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "url": "https://opencollective.com/mui" }, "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } + "react": "^17.0.0 || ^18.0.0" } }, "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "version": "2.11.6", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", + "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", "funding": { "type": "opencollective", "url": "https://opencollective.com/popperjs" } }, + "node_modules/@types/generic-pool": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@types/generic-pool/-/generic-pool-3.8.1.tgz", + "integrity": "sha512-eaMAbZS0EfKvaP5PUZ/Cdf5uJBO2t6T3RdvQTKuMqUwGhNpCnPAsKWEMyV+mCeCQG3UiHrtgdzni8X6DmhxRaQ==", + "deprecated": "This is a stub types definition. generic-pool provides its own type definitions, so you do not need this installed.", + "dependencies": { + "generic-pool": "*" + } + }, "node_modules/@types/google-protobuf": { "version": "3.7.4", "resolved": "https://registry.npmjs.org/@types/google-protobuf/-/google-protobuf-3.7.4.tgz", "integrity": "sha512-6PjMFKl13cgB4kRdYtvyjKl8VVa0PXS2IdVxHhQ8GEKbxBkyJtSbaIeK1eZGjDKN7dvUh4vkOvU9FMwYNv4GQQ==" }, "node_modules/@types/lodash": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==" + "version": "4.14.191", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz", + "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==" }, "node_modules/@types/offscreencanvas": { - "version": "2019.7.3", - "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.3.tgz", - "integrity": "sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A==" + "version": "2019.7.0", + "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.0.tgz", + "integrity": "sha512-PGcyveRIpL1XIqK8eBsmRBt76eFgtzuPiSTyKHZxnGemp2yzGzWpjYKAfK3wIMiU7eH+851yEpiuP8JZerTmWg==" }, "node_modules/@types/parse-json": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", - "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" }, "node_modules/@types/prop-types": { - "version": "15.7.15", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz", - "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==" + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" }, "node_modules/@types/react": { - "version": "18.3.24", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.24.tgz", - "integrity": "sha512-0dLEBsA1kI3OezMBF8nSsb7Nk19ZnsyE1LLhB8r27KbgU5H4pvuqZLdtE+aUkJVoXgTVuA+iLIwmZ0TuK4tx6A==", + "version": "18.0.27", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz", + "integrity": "sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==", "dependencies": { "@types/prop-types": "*", + "@types/scheduler": "*", "csstype": "^3.0.2" } }, "node_modules/@types/react-dom": { - "version": "18.3.7", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz", - "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==", + "version": "18.0.10", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.10.tgz", + "integrity": "sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==", "dev": true, - "peerDependencies": { - "@types/react": "^18.0.0" + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-is": { + "version": "17.0.3", + "resolved": "https://registry.npmjs.org/@types/react-is/-/react-is-17.0.3.tgz", + "integrity": "sha512-aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw==", + "dependencies": { + "@types/react": "*" } }, "node_modules/@types/react-transition-group": { - "version": "4.4.12", - "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz", - "integrity": "sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w==", - "peerDependencies": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==", + "dependencies": { "@types/react": "*" } }, + "node_modules/@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" + }, "node_modules/@types/validator": { - "version": "13.15.3", - "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.15.3.tgz", - "integrity": "sha512-7bcUmDyS6PN3EuD9SlGGOxM77F8WLVsrwkxyWxKnxzmXoequ6c7741QBrANq6htVRGOITJ7z72mTP6Z4XyuG+Q==" + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.12.0.tgz", + "integrity": "sha512-nH45Lk7oPIJ1RVOF6JgFI6Dy0QpHEzq4QecZhvguxYPDwT8c93prCMqAtiIttm39voZ+DDR+qkNnMpJmMBRqag==" }, "node_modules/@vitejs/plugin-react": { "version": "3.1.0", @@ -1200,6 +1025,32 @@ "vite": "^4.1.0-beta.0" } }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/babel-plugin-macros": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", @@ -1238,30 +1089,51 @@ } ] }, - "node_modules/browserslist": { - "version": "4.25.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.4.tgz", - "integrity": "sha512-4jYpcjabC606xJ3kw2QwGEZKX0Aw7sgQdZCvIK9dhVSPh76BKo+C+btT1RRofH7B+8iNpEbgGNVWiLki5q93yg==", + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true, - "funding": [ - { - "type": "opencollective", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "devOptional": true, + "funding": [ + { + "type": "opencollective", "url": "https://opencollective.com/browserslist" }, { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "caniuse-lite": "^1.0.30001737", - "electron-to-chromium": "^1.5.211", - "node-releases": "^2.0.19", - "update-browserslist-db": "^1.1.3" + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" }, "bin": { "browserslist": "cli.js" @@ -1279,10 +1151,10 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001741", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001741.tgz", - "integrity": "sha512-QGUGitqsc8ARjLdgAfxETDhRbJ0REsP6O3I96TAth/mVjh2cYzN2u+3AzPP3aVSm2FehEItaJw1xd+IGBXWeSw==", - "dev": true, + "version": "1.0.30001449", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", + "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", + "devOptional": true, "funding": [ { "type": "opencollective", @@ -1291,37 +1163,88 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" } ] }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/chart.js": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.5.0.tgz", - "integrity": "sha512-aYeC/jDgSEx8SHWZvANYMioYMZ2KX02W6f6uVfyteuCGcadDLcYVHdfdygsTQkQ4TKn5lghoojAsPj5pu0SnvQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.2.1.tgz", + "integrity": "sha512-6YbpQ0nt3NovAgOzbkSSeeAQu/3za1319dPUQTXn9WcOpywM8rGKxJHrhS8V8xEkAlk8YhEfjbuAPfUyp6jIsw==", "dependencies": { "@kurkle/color": "^0.3.0" }, "engines": { - "pnpm": ">=8" + "pnpm": "^7.0.0" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "optional": true, + "peer": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, "node_modules/classnames": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", - "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==" + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" }, "node_modules/clsx": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", - "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", "engines": { "node": ">=6" } }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, "node_modules/convert-source-map": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", @@ -1343,9 +1266,9 @@ } }, "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" }, "node_modules/date-fns": { "version": "2.30.0", @@ -1363,11 +1286,12 @@ } }, "node_modules/debug": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", - "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "devOptional": true, "dependencies": { - "ms": "^2.1.3" + "ms": "2.1.2" }, "engines": { "node": ">=6.0" @@ -1388,10 +1312,10 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.215", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.215.tgz", - "integrity": "sha512-TIvGp57UpeNetj/wV/xpFNpWGb0b/ROw372lHPx5Aafx02gjTBtWnEEcaSX3W2dLM3OSdGGyHX/cHl01JQsLaQ==", - "dev": true + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "devOptional": true }, "node_modules/env-var": { "version": "7.5.0", @@ -1410,9 +1334,9 @@ } }, "node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "version": "0.17.15", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.15.tgz", + "integrity": "sha512-LBUV2VsUIc/iD9ME75qhT4aJj0r75abCVS0jakhFzOtR7TQsqQA5w0tZ+KTKnwl3kXE0MhskNdHDh/I5aCR1Zw==", "dev": true, "hasInstallScript": true, "bin": { @@ -1422,48 +1346,45 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.17.15", + "@esbuild/android-arm64": "0.17.15", + "@esbuild/android-x64": "0.17.15", + "@esbuild/darwin-arm64": "0.17.15", + "@esbuild/darwin-x64": "0.17.15", + "@esbuild/freebsd-arm64": "0.17.15", + "@esbuild/freebsd-x64": "0.17.15", + "@esbuild/linux-arm": "0.17.15", + "@esbuild/linux-arm64": "0.17.15", + "@esbuild/linux-ia32": "0.17.15", + "@esbuild/linux-loong64": "0.17.15", + "@esbuild/linux-mips64el": "0.17.15", + "@esbuild/linux-ppc64": "0.17.15", + "@esbuild/linux-riscv64": "0.17.15", + "@esbuild/linux-s390x": "0.17.15", + "@esbuild/linux-x64": "0.17.15", + "@esbuild/netbsd-x64": "0.17.15", + "@esbuild/openbsd-x64": "0.17.15", + "@esbuild/sunos-x64": "0.17.15", + "@esbuild/win32-arm64": "0.17.15", + "@esbuild/win32-ia32": "0.17.15", + "@esbuild/win32-x64": "0.17.15" } }, "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "dev": true, + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "devOptional": true, "engines": { "node": ">=6" } }, "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.0" } }, "node_modules/eventemitter3": { @@ -1471,71 +1392,97 @@ "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==" }, - "node_modules/fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha512-eIgZvM9C3P05kg0qxfqaVU6Tma4QedCPIByQOcemV0vju8ot3cS2DpHi4m2G2JvbSMI152rjfLX0p1pkSdyPlQ==" + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } }, "node_modules/find-root": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/generic-pool": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz", + "integrity": "sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g==", + "engines": { + "node": ">= 4" } }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, + "devOptional": true, "engines": { "node": ">=6.9.0" } }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "devOptional": true, + "engines": { + "node": ">=4" + } + }, "node_modules/google-protobuf": { "version": "3.21.4", "resolved": "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.21.4.tgz", "integrity": "sha512-MnG7N936zcKTco4Jd2PX2U96Kf9PxygAPKBug+74LHzmHXmceN16MmRcdgZv+DGef/S9YvQAfRsNCn4cjf9yyQ==" }, - "node_modules/grpc-web": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/grpc-web/-/grpc-web-1.2.1.tgz", - "integrity": "sha512-ibBaJPzfMVuLPgaST9w0kZl60s+SnkPBQp6QKdpEr85tpc1gXW2QDqSne9xiyiym0logDfdUSm4aX5h9YBA2mw==" - }, "node_modules/h264decoder": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/h264decoder/-/h264decoder-1.0.0.tgz", "integrity": "sha512-uFoa7RPOjKia91ziteLynrDkoIIx17zfIhJbTy2SXAg/Eu89H8sFVDw9lpWv3i4evIO1QlCdjrub0f4kRIgtcQ==" }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dependencies": { - "function-bind": "^1.1.2" + "function-bind": "^1.1.1" }, "engines": { - "node": ">= 0.4" + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" } }, "node_modules/hoist-non-react-statics": { @@ -1551,10 +1498,18 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, + "node_modules/immutable": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.2.tgz", + "integrity": "sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og==", + "dev": true, + "optional": true, + "peer": true + }, "node_modules/import-fresh": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", - "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -1571,34 +1526,82 @@ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" }, - "node_modules/is-core-module": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "optional": true, + "peer": true, "dependencies": { - "hasown": "^2.0.2" + "binary-extensions": "^2.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dependencies": { + "has": "^1.0.3" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "node_modules/jsesc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "devOptional": true, "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=6" + "node": ">=4" } }, "node_modules/json-parse-even-better-errors": { @@ -1610,7 +1613,7 @@ "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, + "devOptional": true, "bin": { "json5": "lib/cli.js" }, @@ -1640,11 +1643,12 @@ } }, "node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "engines": { - "node": ">=12" + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "devOptional": true, + "dependencies": { + "yallist": "^3.0.2" } }, "node_modules/lzfjs": { @@ -1665,21 +1669,16 @@ } }, "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "devOptional": true }, "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -1688,10 +1687,21 @@ } }, "node_modules/node-releases": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.20.tgz", - "integrity": "sha512-7gK6zSXEH6neM212JgfYFXe+GmZQM+fia5SsusuBIUgnPheLFBmIPhtFoAQRj8/7wASYQnbDlHPVwY0BefoFgA==", - "dev": true + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.9.tgz", + "integrity": "sha512-2xfmOrRkGogbTK9R6Leda0DGiXeY3p2NJpy4+gNCffdUvV6mdEJnaDEic1i3Ec2djAo8jWYoJMR5PB0MSMpxUA==", + "devOptional": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/object-assign": { "version": "4.1.1", @@ -1748,14 +1758,29 @@ } }, "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "devOptional": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, "node_modules/postcss": { - "version": "8.5.6", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", - "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "dev": true, "funding": [ { @@ -1765,16 +1790,12 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "nanoid": "^3.3.11", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" }, "engines": { "node": "^10 || ^12 || >=14" @@ -1796,9 +1817,9 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "node_modules/react": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", - "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", "dependencies": { "loose-envify": "^1.1.0" }, @@ -1807,20 +1828,20 @@ } }, "node_modules/react-chartjs-2": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/react-chartjs-2/-/react-chartjs-2-5.3.0.tgz", - "integrity": "sha512-UfZZFnDsERI3c3CZGxzvNJd02SHjaSJ8kgW1djn65H1KK8rehwTjyrRKOG3VTMG8wtHZ5rgAO5oTHtHi9GCCmw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/react-chartjs-2/-/react-chartjs-2-5.2.0.tgz", + "integrity": "sha512-98iN5aguJyVSxp5U3CblRLH67J8gkfyGNbiK3c+l1QI/G4irHMPQw44aEPmjVag+YKTyQ260NcF82GTQ3bdscA==", "peerDependencies": { "chart.js": "^4.1.1", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, "node_modules/react-device-detect": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/react-device-detect/-/react-device-detect-2.2.3.tgz", - "integrity": "sha512-buYY3qrCnQVlIFHrC5UcUoAj7iANs/+srdkwsnNjI7anr3Tt7UY6MqNxtMLlr0tMBied0O49UZVK8XKs3ZIiPw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/react-device-detect/-/react-device-detect-2.2.2.tgz", + "integrity": "sha512-zSN1gIAztUekp5qUT/ybHwQ9fmOqVT1psxpSlTn1pe0CO+fnJHKRLOWWac5nKxOxvOpD/w84hk1I+EydrJp7SA==", "dependencies": { - "ua-parser-js": "^1.0.33" + "ua-parser-js": "^1.0.2" }, "peerDependencies": { "react": ">= 0.14.0", @@ -1828,26 +1849,26 @@ } }, "node_modules/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", "dependencies": { "loose-envify": "^1.1.0", - "scheduler": "^0.23.2" + "scheduler": "^0.23.0" }, "peerDependencies": { - "react": "^18.3.1" + "react": "^18.2.0" } }, "node_modules/react-is": { - "version": "19.1.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.1.1.tgz", - "integrity": "sha512-tr41fA15Vn8p4X9ntI+yCyeGSf1TlYaY5vlTZfQmeLBrFo3psOPX6HhTDnFNL9uj3EhP0KAQ80cugCl4b4BERA==" + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" }, "node_modules/react-refresh": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", - "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", + "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -1868,21 +1889,37 @@ "react-dom": ">=16.6.0" } }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, "node_modules/resolve": { - "version": "1.22.10", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", - "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dependencies": { - "is-core-module": "^2.16.0", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" }, - "engines": { - "node": ">= 0.4" - }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -1896,9 +1933,9 @@ } }, "node_modules/rollup": { - "version": "3.29.5", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.5.tgz", - "integrity": "sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w==", + "version": "3.20.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.20.2.tgz", + "integrity": "sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -1911,19 +1948,38 @@ "fsevents": "~2.3.2" } }, + "node_modules/sass": { + "version": "1.57.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", + "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", "dependencies": { "loose-envify": "^1.1.0" } }, "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "devOptional": true, "bin": { "semver": "bin/semver.js" } @@ -1937,18 +1993,29 @@ } }, "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/stylis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.1.3.tgz", + "integrity": "sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==" + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } }, "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", @@ -1961,6 +2028,28 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, "node_modules/typescript": { "version": "4.9.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", @@ -1975,9 +2064,9 @@ } }, "node_modules/ua-parser-js": { - "version": "1.0.41", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.41.tgz", - "integrity": "sha512-LbBDqdIC5s8iROCUjMbW1f5dJQTEFB1+KO9ogbvlb3nm9n4YHa5p4KTvFPWvh2Hs8gZMBuiB1/8+pdfe/tDPug==", + "version": "1.0.33", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.33.tgz", + "integrity": "sha512-RqshF7TPTE0XLYAqmjlu5cLLuGdKrNu9O1KLA/qp39QtbZwuzwv1dT46DZSopoUMsYgXpB3Cv8a03FI8b74oFQ==", "funding": [ { "type": "opencollective", @@ -1986,24 +2075,17 @@ { "type": "paypal", "url": "https://paypal.me/faisalman" - }, - { - "type": "github", - "url": "https://github.com/sponsors/faisalman" } ], - "bin": { - "ua-parser-js": "script/cli.js" - }, "engines": { "node": "*" } }, "node_modules/update-browserslist-db": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", - "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", - "dev": true, + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "devOptional": true, "funding": [ { "type": "opencollective", @@ -2012,40 +2094,37 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.1" + "escalade": "^3.1.1", + "picocolors": "^1.0.0" }, "bin": { - "update-browserslist-db": "cli.js" + "browserslist-lint": "cli.js" }, "peerDependencies": { "browserslist": ">= 4.21.0" } }, "node_modules/validator": { - "version": "13.15.15", - "resolved": "https://registry.npmjs.org/validator/-/validator-13.15.15.tgz", - "integrity": "sha512-BgWVbCI72aIQy937xbawcs+hrVaN/CZ2UwutgaJ36hGqRrLNM+f5LUT/YPRbo8IV/ASeFzXszezV+y2+rq3l8A==", + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-13.12.0.tgz", + "integrity": "sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==", "engines": { "node": ">= 0.10" } }, "node_modules/vite": { - "version": "4.5.14", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.14.tgz", - "integrity": "sha512-+v57oAaoYNnO3hIu5Z/tJRZjq5aHM2zDve9YZ8HngVHbhk66RStobhb1sqPMIPEleV6cNKYK4eGrAbE9Ulbl2g==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.2.1.tgz", + "integrity": "sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==", "dev": true, "dependencies": { - "esbuild": "^0.18.10", - "postcss": "^8.4.27", - "rollup": "^3.27.1" + "esbuild": "^0.17.5", + "postcss": "^8.4.21", + "resolve": "^1.22.1", + "rollup": "^3.18.0" }, "bin": { "vite": "bin/vite.js" @@ -2053,16 +2132,12 @@ "engines": { "node": "^14.18.0 || >=16.0.0" }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, "optionalDependencies": { "fsevents": "~2.3.2" }, "peerDependencies": { "@types/node": ">= 14", "less": "*", - "lightningcss": "^1.21.0", "sass": "*", "stylus": "*", "sugarss": "*", @@ -2075,9 +2150,6 @@ "less": { "optional": true }, - "lightningcss": { - "optional": true - }, "sass": { "optional": true }, @@ -2096,7 +2168,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "devOptional": true }, "node_modules/yaml": { "version": "1.10.2", @@ -2106,5 +2178,1517 @@ "node": ">= 6" } } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "devOptional": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/compat-data": { + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", + "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", + "devOptional": true + }, + "@babel/core": { + "version": "7.20.12", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", + "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", + "devOptional": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helpers": "^7.20.7", + "@babel/parser": "^7.20.7", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.12", + "@babel/types": "^7.20.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + } + }, + "@babel/generator": { + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", + "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", + "devOptional": true, + "requires": { + "@babel/types": "^7.20.7", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "devOptional": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "devOptional": true, + "requires": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "devOptional": true + }, + "@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "devOptional": true, + "requires": { + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "devOptional": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-transforms": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", + "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", + "devOptional": true, + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.10", + "@babel/types": "^7.20.7" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "dev": true + }, + "@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "devOptional": true, + "requires": { + "@babel/types": "^7.20.2" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "devOptional": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + }, + "@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "devOptional": true + }, + "@babel/helpers": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", + "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", + "devOptional": true, + "requires": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.13", + "@babel/types": "^7.20.7" + } + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz", + "integrity": "sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw==", + "devOptional": true + }, + "@babel/plugin-transform-react-jsx-self": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz", + "integrity": "sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-react-jsx-source": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.19.6.tgz", + "integrity": "sha512-RpAi004QyMNisst/pvSanoRdJ4q+jMCWyk9zdw/CyLB9j8RXEahodR6l2GyttDRyEVWZtbN+TpLiHJ3t34LbsQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/runtime": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.5.tgz", + "integrity": "sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==", + "requires": { + "regenerator-runtime": "^0.13.11" + } + }, + "@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "devOptional": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + } + }, + "@babel/traverse": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", + "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", + "devOptional": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.13", + "@babel/types": "^7.20.7", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", + "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + } + }, + "@emotion/babel-plugin": { + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.10.6.tgz", + "integrity": "sha512-p2dAqtVrkhSa7xz1u/m9eHYdLi+en8NowrmXeF/dKtJpU8lCWli8RUAati7NcSl0afsBott48pdnANuD0wh9QQ==", + "requires": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.0", + "@emotion/memoize": "^0.8.0", + "@emotion/serialize": "^1.1.1", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.1.3" + }, + "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + } + } + }, + "@emotion/cache": { + "version": "11.10.5", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.10.5.tgz", + "integrity": "sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA==", + "requires": { + "@emotion/memoize": "^0.8.0", + "@emotion/sheet": "^1.2.1", + "@emotion/utils": "^1.2.0", + "@emotion/weak-memoize": "^0.3.0", + "stylis": "4.1.3" + } + }, + "@emotion/css": { + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.10.6.tgz", + "integrity": "sha512-88Sr+3heKAKpj9PCqq5A1hAmAkoSIvwEq1O2TwDij7fUtsJpdkV4jMTISSTouFeRvsGvXIpuSuDQ4C1YdfNGXw==", + "requires": { + "@emotion/babel-plugin": "^11.10.6", + "@emotion/cache": "^11.10.5", + "@emotion/serialize": "^1.1.1", + "@emotion/sheet": "^1.2.1", + "@emotion/utils": "^1.2.0" + } + }, + "@emotion/hash": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.0.tgz", + "integrity": "sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==" + }, + "@emotion/is-prop-valid": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz", + "integrity": "sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==", + "requires": { + "@emotion/memoize": "^0.8.0" + } + }, + "@emotion/memoize": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz", + "integrity": "sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==" + }, + "@emotion/react": { + "version": "11.10.5", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.10.5.tgz", + "integrity": "sha512-TZs6235tCJ/7iF6/rvTaOH4oxQg2gMAcdHemjwLKIjKz4rRuYe1HJ2TQJKnAcRAfOUDdU8XoDadCe1rl72iv8A==", + "requires": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.10.5", + "@emotion/cache": "^11.10.5", + "@emotion/serialize": "^1.1.1", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.0", + "@emotion/utils": "^1.2.0", + "@emotion/weak-memoize": "^0.3.0", + "hoist-non-react-statics": "^3.3.1" + } + }, + "@emotion/serialize": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.1.tgz", + "integrity": "sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA==", + "requires": { + "@emotion/hash": "^0.9.0", + "@emotion/memoize": "^0.8.0", + "@emotion/unitless": "^0.8.0", + "@emotion/utils": "^1.2.0", + "csstype": "^3.0.2" + } + }, + "@emotion/sheet": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.1.tgz", + "integrity": "sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==" + }, + "@emotion/styled": { + "version": "11.10.5", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.10.5.tgz", + "integrity": "sha512-8EP6dD7dMkdku2foLoruPCNkRevzdcBaY6q0l0OsbyJK+x8D9HWjX27ARiSIKNF634hY9Zdoedh8bJCiva8yZw==", + "requires": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.10.5", + "@emotion/is-prop-valid": "^1.2.0", + "@emotion/serialize": "^1.1.1", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.0", + "@emotion/utils": "^1.2.0" + } + }, + "@emotion/unitless": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz", + "integrity": "sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==" + }, + "@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz", + "integrity": "sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==", + "requires": {} + }, + "@emotion/utils": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.0.tgz", + "integrity": "sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==" + }, + "@emotion/weak-memoize": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz", + "integrity": "sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==" + }, + "@esbuild/linux-x64": { + "version": "0.17.15", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.15.tgz", + "integrity": "sha512-JsdS0EgEViwuKsw5tiJQo9UdQdUJYuB+Mf6HxtJSPN35vez1hlrNb1KajvKWF5Sa35j17+rW1ECEO9iNrIXbNg==", + "dev": true, + "optional": true + }, + "@formant/data-sdk": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/@formant/data-sdk/-/data-sdk-1.51.0.tgz", + "integrity": "sha512-8/7IQb6VaiLVx+31e8y3iRNNC4f9LLjhJwAK5NNJNceagz6oezPkfvsKa362scyf2oXLkgsOMC2A/20UMD6gPw==", + "requires": { + "@formant/ui-sdk-realtime-player-core": "^0.0.2", + "@formant/ui-sdk-realtime-player-core-worker": "^0.0.4", + "@types/validator": "^13.11.8", + "base-64": "^1.0.0", + "base64-js": "^1.5.1", + "date-fns": "^2.30.0", + "eventemitter3": "^5.0.1", + "google-protobuf": "^3.21.2", + "lzfjs": "^1.0.1", + "pako": "^2.1.0", + "validator": "^13.11.0" + } + }, + "@formant/realtime-sdk": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@formant/realtime-sdk/-/realtime-sdk-1.4.0.tgz", + "integrity": "sha512-nxUxm8PlYDsjI6X0KAO/JvYIGE/UlL1O0k+vYlOwQjAMvX9xGXAz6QhO2GJKDO3Z8HurhTaZnmExxUU0q0Q9kg==", + "requires": { + "@types/generic-pool": "^3.8.1", + "@types/google-protobuf": "~3.7.0", + "env-var": "^7.4.0", + "generic-pool": "^3.9.0" + } + }, + "@formant/ui-sdk": { + "version": "0.0.60", + "resolved": "https://registry.npmjs.org/@formant/ui-sdk/-/ui-sdk-0.0.60.tgz", + "integrity": "sha512-emHwiZXwPONTEgtEgE+EKifiIlcCLNGvnpcydPR/o8EQu4SXrGS96qUv8kNqz4/bvKFhqrQuH4RZoJsoKqSa7g==", + "requires": { + "@emotion/css": "^11.10.6", + "@emotion/react": "^11.9.0", + "@emotion/styled": "^11.8.1", + "@formant/ui-sdk-realtime-player": "^0.0.9", + "@mui/material": "^5.6.1", + "@mui/utils": "^5.6.1", + "@types/lodash": "^4.14.182", + "chart.js": "^4.2.0", + "classnames": "^2.3.1", + "grpc-web": "1.2.1", + "lodash": "^4.17.21", + "react-chartjs-2": "^5.2.0", + "react-device-detect": "^2.2.2" + }, + "dependencies": { + "grpc-web": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/grpc-web/-/grpc-web-1.2.1.tgz", + "integrity": "sha512-ibBaJPzfMVuLPgaST9w0kZl60s+SnkPBQp6QKdpEr85tpc1gXW2QDqSne9xiyiym0logDfdUSm4aX5h9YBA2mw==" + } + } + }, + "@formant/ui-sdk-realtime-player": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/@formant/ui-sdk-realtime-player/-/ui-sdk-realtime-player-0.0.9.tgz", + "integrity": "sha512-umNyNLWzv5TMw5Q+cLFHMlaTKi9HgU5R9LupzwqgroVlghgNFV2UxIZSDc5G7ZpMVsnwaNxPeLBdm90oJiyFjg==", + "requires": { + "@formant/ui-sdk-realtime-player-core": "^0.0.2", + "@formant/ui-sdk-realtime-player-core-worker": "^0.0.4" + } + }, + "@formant/ui-sdk-realtime-player-core": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@formant/ui-sdk-realtime-player-core/-/ui-sdk-realtime-player-core-0.0.2.tgz", + "integrity": "sha512-RC8z90dMvtXDAnxnSLYH2d4m27SgPI7fJasMu4X98QEwo4eOg4yRXT5TNbnpdjI7bqARbaSlosWtc7ba8d42Ng==" + }, + "@formant/ui-sdk-realtime-player-core-worker": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@formant/ui-sdk-realtime-player-core-worker/-/ui-sdk-realtime-player-core-worker-0.0.4.tgz", + "integrity": "sha512-yQ0VJNdrFkTHRA9mBkmfBzrgSrdOTTukETtC1Jit2A5yj2B765IngA20Lf8ny6BePTsozHFk89KM5cU6MNuMmg==", + "requires": { + "@types/offscreencanvas": "^2019.6.4", + "h264decoder": "^1.0.0" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "devOptional": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "devOptional": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "devOptional": true + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "devOptional": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "devOptional": true, + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "@kurkle/color": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.2.tgz", + "integrity": "sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw==" + }, + "@mui/base": { + "version": "5.0.0-alpha.115", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.115.tgz", + "integrity": "sha512-OGQ84whT/yNYd6xKCGGS6MxqEfjVjk5esXM7HP6bB2Rim7QICUapxZt4nm8q39fpT08rNDkv3xPVqDDwRdRg1g==", + "requires": { + "@babel/runtime": "^7.20.7", + "@emotion/is-prop-valid": "^1.2.0", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.2", + "@popperjs/core": "^2.11.6", + "clsx": "^1.2.1", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + } + }, + "@mui/core-downloads-tracker": { + "version": "5.11.6", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.11.6.tgz", + "integrity": "sha512-lbD3qdafBOf2dlqKhOcVRxaPAujX+9UlPC6v8iMugMeAXe0TCgU3QbGXY3zrJsu6ex64WYDpH4y1+WOOBmWMuA==" + }, + "@mui/material": { + "version": "5.11.6", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.11.6.tgz", + "integrity": "sha512-MzkkL5KC2PCkFiv8cLpkzgLUPXSrAtnvJBR0emV7mLVWbkwV3n5832vjBx154B6R032fHjFTziTh7YEb50nK6Q==", + "requires": { + "@babel/runtime": "^7.20.7", + "@mui/base": "5.0.0-alpha.115", + "@mui/core-downloads-tracker": "^5.11.6", + "@mui/system": "^5.11.5", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.2", + "@types/react-transition-group": "^4.4.5", + "clsx": "^1.2.1", + "csstype": "^3.1.1", + "prop-types": "^15.8.1", + "react-is": "^18.2.0", + "react-transition-group": "^4.4.5" + } + }, + "@mui/private-theming": { + "version": "5.11.2", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.11.2.tgz", + "integrity": "sha512-qZwMaqRFPwlYmqwVKblKBGKtIjJRAj3nsvX93pOmatsXyorW7N/0IPE/swPgz1VwChXhHO75DwBEx8tB+aRMNg==", + "requires": { + "@babel/runtime": "^7.20.7", + "@mui/utils": "^5.11.2", + "prop-types": "^15.8.1" + } + }, + "@mui/styled-engine": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.11.0.tgz", + "integrity": "sha512-AF06K60Zc58qf0f7X+Y/QjaHaZq16znliLnGc9iVrV/+s8Ln/FCoeNuFvhlCbZZQ5WQcJvcy59zp0nXrklGGPQ==", + "requires": { + "@babel/runtime": "^7.20.6", + "@emotion/cache": "^11.10.5", + "csstype": "^3.1.1", + "prop-types": "^15.8.1" + } + }, + "@mui/system": { + "version": "5.11.5", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.11.5.tgz", + "integrity": "sha512-KNVsJ0sgRRp2XBqhh4wPS5aacteqjwxgiYTVwVnll2fgkgunZKo3DsDiGMrFlCg25ZHA3Ax58txWGE9w58zp0w==", + "requires": { + "@babel/runtime": "^7.20.7", + "@mui/private-theming": "^5.11.2", + "@mui/styled-engine": "^5.11.0", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.2", + "clsx": "^1.2.1", + "csstype": "^3.1.1", + "prop-types": "^15.8.1" + } + }, + "@mui/types": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.3.tgz", + "integrity": "sha512-tZ+CQggbe9Ol7e/Fs5RcKwg/woU+o8DCtOnccX6KmbBc7YrfqMYEYuaIcXHuhpT880QwNkZZ3wQwvtlDFA2yOw==", + "requires": {} + }, + "@mui/utils": { + "version": "5.11.2", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.11.2.tgz", + "integrity": "sha512-AyizuHHlGdAtH5hOOXBW3kriuIwUIKUIgg0P7LzMvzf6jPhoQbENYqY6zJqfoZ7fAWMNNYT8mgN5EftNGzwE2w==", + "requires": { + "@babel/runtime": "^7.20.7", + "@types/prop-types": "^15.7.5", + "@types/react-is": "^16.7.1 || ^17.0.0", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + } + }, + "@popperjs/core": { + "version": "2.11.6", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", + "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==" + }, + "@types/generic-pool": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@types/generic-pool/-/generic-pool-3.8.1.tgz", + "integrity": "sha512-eaMAbZS0EfKvaP5PUZ/Cdf5uJBO2t6T3RdvQTKuMqUwGhNpCnPAsKWEMyV+mCeCQG3UiHrtgdzni8X6DmhxRaQ==", + "requires": { + "generic-pool": "*" + } + }, + "@types/google-protobuf": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/google-protobuf/-/google-protobuf-3.7.4.tgz", + "integrity": "sha512-6PjMFKl13cgB4kRdYtvyjKl8VVa0PXS2IdVxHhQ8GEKbxBkyJtSbaIeK1eZGjDKN7dvUh4vkOvU9FMwYNv4GQQ==" + }, + "@types/lodash": { + "version": "4.14.191", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz", + "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==" + }, + "@types/offscreencanvas": { + "version": "2019.7.0", + "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.0.tgz", + "integrity": "sha512-PGcyveRIpL1XIqK8eBsmRBt76eFgtzuPiSTyKHZxnGemp2yzGzWpjYKAfK3wIMiU7eH+851yEpiuP8JZerTmWg==" + }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + }, + "@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "@types/react": { + "version": "18.0.27", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz", + "integrity": "sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==", + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/react-dom": { + "version": "18.0.10", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.10.tgz", + "integrity": "sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==", + "dev": true, + "requires": { + "@types/react": "*" + } + }, + "@types/react-is": { + "version": "17.0.3", + "resolved": "https://registry.npmjs.org/@types/react-is/-/react-is-17.0.3.tgz", + "integrity": "sha512-aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw==", + "requires": { + "@types/react": "*" + } + }, + "@types/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==", + "requires": { + "@types/react": "*" + } + }, + "@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" + }, + "@types/validator": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.12.0.tgz", + "integrity": "sha512-nH45Lk7oPIJ1RVOF6JgFI6Dy0QpHEzq4QecZhvguxYPDwT8c93prCMqAtiIttm39voZ+DDR+qkNnMpJmMBRqag==" + }, + "@vitejs/plugin-react": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-3.1.0.tgz", + "integrity": "sha512-AfgcRL8ZBhAlc3BFdigClmTUMISmmzHn7sB2h9U1odvc5U/MjWXsAaz18b/WoppUTDBzxOJwo2VdClfUcItu9g==", + "dev": true, + "requires": { + "@babel/core": "^7.20.12", + "@babel/plugin-transform-react-jsx-self": "^7.18.6", + "@babel/plugin-transform-react-jsx-source": "^7.19.6", + "magic-string": "^0.27.0", + "react-refresh": "^0.14.0" + } + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "requires": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + } + }, + "base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "optional": true, + "peer": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "devOptional": true, + "requires": { + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "caniuse-lite": { + "version": "1.0.30001449", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", + "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", + "devOptional": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chart.js": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.2.1.tgz", + "integrity": "sha512-6YbpQ0nt3NovAgOzbkSSeeAQu/3za1319dPUQTXn9WcOpywM8rGKxJHrhS8V8xEkAlk8YhEfjbuAPfUyp6jIsw==", + "requires": { + "@kurkle/color": "^0.3.0" + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, + "clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==" + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + } + }, + "csstype": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", + "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", + "requires": { + "@babel/runtime": "^7.21.0" + } + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "devOptional": true, + "requires": { + "ms": "2.1.2" + } + }, + "dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "requires": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, + "electron-to-chromium": { + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "devOptional": true + }, + "env-var": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/env-var/-/env-var-7.5.0.tgz", + "integrity": "sha512-mKZOzLRN0ETzau2W2QXefbFjo5EF4yWq28OyKb9ICdeNhHJlOE/pHHnz4hdYJ9cNZXcJHo5xN4OT4pzuSHSNvA==" + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "esbuild": { + "version": "0.17.15", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.15.tgz", + "integrity": "sha512-LBUV2VsUIc/iD9ME75qhT4aJj0r75abCVS0jakhFzOtR7TQsqQA5w0tZ+KTKnwl3kXE0MhskNdHDh/I5aCR1Zw==", + "dev": true, + "requires": { + "@esbuild/android-arm": "0.17.15", + "@esbuild/android-arm64": "0.17.15", + "@esbuild/android-x64": "0.17.15", + "@esbuild/darwin-arm64": "0.17.15", + "@esbuild/darwin-x64": "0.17.15", + "@esbuild/freebsd-arm64": "0.17.15", + "@esbuild/freebsd-x64": "0.17.15", + "@esbuild/linux-arm": "0.17.15", + "@esbuild/linux-arm64": "0.17.15", + "@esbuild/linux-ia32": "0.17.15", + "@esbuild/linux-loong64": "0.17.15", + "@esbuild/linux-mips64el": "0.17.15", + "@esbuild/linux-ppc64": "0.17.15", + "@esbuild/linux-riscv64": "0.17.15", + "@esbuild/linux-s390x": "0.17.15", + "@esbuild/linux-x64": "0.17.15", + "@esbuild/netbsd-x64": "0.17.15", + "@esbuild/openbsd-x64": "0.17.15", + "@esbuild/sunos-x64": "0.17.15", + "@esbuild/win32-arm64": "0.17.15", + "@esbuild/win32-ia32": "0.17.15", + "@esbuild/win32-x64": "0.17.15" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "devOptional": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==" + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "generic-pool": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz", + "integrity": "sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g==" + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "devOptional": true + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "devOptional": true + }, + "google-protobuf": { + "version": "3.21.4", + "resolved": "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.21.4.tgz", + "integrity": "sha512-MnG7N936zcKTco4Jd2PX2U96Kf9PxygAPKBug+74LHzmHXmceN16MmRcdgZv+DGef/S9YvQAfRsNCn4cjf9yyQ==" + }, + "h264decoder": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/h264decoder/-/h264decoder-1.0.0.tgz", + "integrity": "sha512-uFoa7RPOjKia91ziteLynrDkoIIx17zfIhJbTy2SXAg/Eu89H8sFVDw9lpWv3i4evIO1QlCdjrub0f4kRIgtcQ==" + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "requires": { + "react-is": "^16.7.0" + }, + "dependencies": { + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + } + } + }, + "immutable": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.2.tgz", + "integrity": "sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og==", + "dev": true, + "optional": true, + "peer": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "requires": { + "has": "^1.0.3" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "optional": true, + "peer": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "optional": true, + "peer": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "devOptional": true + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "devOptional": true + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "devOptional": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "lzfjs": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lzfjs/-/lzfjs-1.0.1.tgz", + "integrity": "sha512-P1x9feLT9xHg9OpfgWcDlWtndf7wYTJk5LgIeVE9tGo6CptVnDi34/mcT8REskWNdQCSiPGhSLQ80L7zTQXUVg==" + }, + "magic-string": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", + "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", + "dev": true, + "requires": { + "@jridgewell/sourcemap-codec": "^1.4.13" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "devOptional": true + }, + "nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "dev": true + }, + "node-releases": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.9.tgz", + "integrity": "sha512-2xfmOrRkGogbTK9R6Leda0DGiXeY3p2NJpy4+gNCffdUvV6mdEJnaDEic1i3Ec2djAo8jWYoJMR5PB0MSMpxUA==", + "devOptional": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "optional": true, + "peer": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "pako": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==" + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "devOptional": true + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "optional": true, + "peer": true + }, + "postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "dev": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + }, + "dependencies": { + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + } + } + }, + "react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "requires": { + "loose-envify": "^1.1.0" + } + }, + "react-chartjs-2": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/react-chartjs-2/-/react-chartjs-2-5.2.0.tgz", + "integrity": "sha512-98iN5aguJyVSxp5U3CblRLH67J8gkfyGNbiK3c+l1QI/G4irHMPQw44aEPmjVag+YKTyQ260NcF82GTQ3bdscA==", + "requires": {} + }, + "react-device-detect": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/react-device-detect/-/react-device-detect-2.2.2.tgz", + "integrity": "sha512-zSN1gIAztUekp5qUT/ybHwQ9fmOqVT1psxpSlTn1pe0CO+fnJHKRLOWWac5nKxOxvOpD/w84hk1I+EydrJp7SA==", + "requires": { + "ua-parser-js": "^1.0.2" + } + }, + "react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "requires": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + } + }, + "react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "react-refresh": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", + "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", + "dev": true + }, + "react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "requires": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" + }, + "rollup": { + "version": "3.20.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.20.2.tgz", + "integrity": "sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, + "sass": { + "version": "1.57.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", + "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + } + }, + "scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "requires": { + "loose-envify": "^1.1.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "devOptional": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true + }, + "stylis": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.1.3.tgz", + "integrity": "sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true + }, + "ua-parser-js": { + "version": "1.0.33", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.33.tgz", + "integrity": "sha512-RqshF7TPTE0XLYAqmjlu5cLLuGdKrNu9O1KLA/qp39QtbZwuzwv1dT46DZSopoUMsYgXpB3Cv8a03FI8b74oFQ==" + }, + "update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "devOptional": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "validator": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-13.12.0.tgz", + "integrity": "sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==" + }, + "vite": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.2.1.tgz", + "integrity": "sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==", + "dev": true, + "requires": { + "esbuild": "^0.17.5", + "fsevents": "~2.3.2", + "postcss": "^8.4.21", + "resolve": "^1.22.1", + "rollup": "^3.18.0" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "devOptional": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + } } } diff --git a/examples/realtime-video/yarn.lock b/examples/realtime-video/yarn.lock index ff52dbeca..9253a8b9e 100644 --- a/examples/realtime-video/yarn.lock +++ b/examples/realtime-video/yarn.lock @@ -2,296 +2,347 @@ # yarn lockfile v1 -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz" - integrity sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg== +"@ampproject/remapping@^2.1.0": + version "2.2.0" + resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz" + integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== dependencies: - "@babel/helper-validator-identifier" "^7.27.1" - js-tokens "^4.0.0" - picocolors "^1.1.1" + "@jridgewell/gen-mapping" "^0.1.0" + "@jridgewell/trace-mapping" "^0.3.9" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.18.6": + version "7.18.6" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz" + integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== + dependencies: + "@babel/highlight" "^7.18.6" -"@babel/compat-data@^7.27.2": - version "7.28.4" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.4.tgz" - integrity sha512-YsmSKC29MJwf0gF8Rjjrg5LQCmyh+j/nD8/eP7f+BeoQTKYqs9RoWbjGOdy0+1Ekr68RJZMUOPVQaQisnIo4Rw== +"@babel/compat-data@^7.20.5": + version "7.20.14" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz" + integrity sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw== "@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.20.12": - version "7.28.4" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.28.4.tgz" - integrity sha512-2BCOP7TN8M+gVDj7/ht3hsaO/B/n5oDbiAyyvnRlNOs+u1o+JWNYTQrmpuNp1/Wq2gcFrI01JAW+paEKDMx/CA== - dependencies: - "@babel/code-frame" "^7.27.1" - "@babel/generator" "^7.28.3" - "@babel/helper-compilation-targets" "^7.27.2" - "@babel/helper-module-transforms" "^7.28.3" - "@babel/helpers" "^7.28.4" - "@babel/parser" "^7.28.4" - "@babel/template" "^7.27.2" - "@babel/traverse" "^7.28.4" - "@babel/types" "^7.28.4" - "@jridgewell/remapping" "^2.3.5" - convert-source-map "^2.0.0" + version "7.20.12" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz" + integrity sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg== + dependencies: + "@ampproject/remapping" "^2.1.0" + "@babel/code-frame" "^7.18.6" + "@babel/generator" "^7.20.7" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helpers" "^7.20.7" + "@babel/parser" "^7.20.7" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.20.12" + "@babel/types" "^7.20.7" + convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/generator@^7.28.3": - version "7.28.3" - resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.28.3.tgz" - integrity sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw== - dependencies: - "@babel/parser" "^7.28.3" - "@babel/types" "^7.28.2" - "@jridgewell/gen-mapping" "^0.3.12" - "@jridgewell/trace-mapping" "^0.3.28" - jsesc "^3.0.2" - -"@babel/helper-compilation-targets@^7.27.2": - version "7.27.2" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz" - integrity sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ== - dependencies: - "@babel/compat-data" "^7.27.2" - "@babel/helper-validator-option" "^7.27.1" - browserslist "^4.24.0" + json5 "^2.2.2" + semver "^6.3.0" + +"@babel/generator@^7.20.7": + version "7.20.14" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz" + integrity sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg== + dependencies: + "@babel/types" "^7.20.7" + "@jridgewell/gen-mapping" "^0.3.2" + jsesc "^2.5.1" + +"@babel/helper-compilation-targets@^7.20.7": + version "7.20.7" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz" + integrity sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ== + dependencies: + "@babel/compat-data" "^7.20.5" + "@babel/helper-validator-option" "^7.18.6" + browserslist "^4.21.3" lru-cache "^5.1.1" - semver "^6.3.1" + semver "^6.3.0" -"@babel/helper-globals@^7.28.0": - version "7.28.0" - resolved "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz" - integrity sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw== +"@babel/helper-environment-visitor@^7.18.9": + version "7.18.9" + resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz" + integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== -"@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz" - integrity sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w== +"@babel/helper-function-name@^7.19.0": + version "7.19.0" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz" + integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w== dependencies: - "@babel/traverse" "^7.27.1" - "@babel/types" "^7.27.1" + "@babel/template" "^7.18.10" + "@babel/types" "^7.19.0" -"@babel/helper-module-transforms@^7.28.3": - version "7.28.3" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz" - integrity sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw== +"@babel/helper-hoist-variables@^7.18.6": + version "7.18.6" + resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz" + integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== dependencies: - "@babel/helper-module-imports" "^7.27.1" - "@babel/helper-validator-identifier" "^7.27.1" - "@babel/traverse" "^7.28.3" + "@babel/types" "^7.18.6" -"@babel/helper-plugin-utils@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz" - integrity sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw== +"@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6": + version "7.18.6" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz" + integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== + dependencies: + "@babel/types" "^7.18.6" -"@babel/helper-string-parser@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz" - integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== +"@babel/helper-module-transforms@^7.20.11": + version "7.20.11" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz" + integrity sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg== + dependencies: + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-simple-access" "^7.20.2" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/helper-validator-identifier" "^7.19.1" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.20.10" + "@babel/types" "^7.20.7" + +"@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.19.0": + version "7.20.2" + resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz" + integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== + +"@babel/helper-simple-access@^7.20.2": + version "7.20.2" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz" + integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== + dependencies: + "@babel/types" "^7.20.2" + +"@babel/helper-split-export-declaration@^7.18.6": + version "7.18.6" + resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz" + integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-string-parser@^7.19.4": + version "7.19.4" + resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz" + integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== + +"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": + version "7.19.1" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz" + integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== + +"@babel/helper-validator-option@^7.18.6": + version "7.18.6" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz" + integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== + +"@babel/helpers@^7.20.7": + version "7.20.13" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz" + integrity sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg== + dependencies: + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.20.13" + "@babel/types" "^7.20.7" + +"@babel/highlight@^7.18.6": + version "7.18.6" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz" + integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== + dependencies: + "@babel/helper-validator-identifier" "^7.18.6" + chalk "^2.0.0" + js-tokens "^4.0.0" -"@babel/helper-validator-identifier@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz" - integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== +"@babel/parser@^7.20.13", "@babel/parser@^7.20.7": + version "7.20.13" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz" + integrity sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw== -"@babel/helper-validator-option@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz" - integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg== +"@babel/plugin-transform-react-jsx-self@^7.18.6": + version "7.18.6" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz" + integrity sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/helpers@^7.28.4": - version "7.28.4" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz" - integrity sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w== +"@babel/plugin-transform-react-jsx-source@^7.19.6": + version "7.19.6" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.19.6.tgz" + integrity sha512-RpAi004QyMNisst/pvSanoRdJ4q+jMCWyk9zdw/CyLB9j8RXEahodR6l2GyttDRyEVWZtbN+TpLiHJ3t34LbsQ== dependencies: - "@babel/template" "^7.27.2" - "@babel/types" "^7.28.4" + "@babel/helper-plugin-utils" "^7.19.0" -"@babel/parser@^7.27.2", "@babel/parser@^7.28.3", "@babel/parser@^7.28.4": - version "7.28.4" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.28.4.tgz" - integrity sha512-yZbBqeM6TkpP9du/I2pUZnJsRMGGvOuIrhjzC1AwHwW+6he4mni6Bp/m8ijn0iOuZuPI2BfkCoSRunpyjnrQKg== +"@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.20.6", "@babel/runtime@^7.20.7", "@babel/runtime@^7.21.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7": + version "7.22.5" + resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.5.tgz" + integrity sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA== dependencies: - "@babel/types" "^7.28.4" + regenerator-runtime "^0.13.11" -"@babel/plugin-transform-react-jsx-self@^7.18.6": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz" - integrity sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw== +"@babel/template@^7.18.10", "@babel/template@^7.20.7": + version "7.20.7" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz" + integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/code-frame" "^7.18.6" + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + +"@babel/traverse@^7.20.10", "@babel/traverse@^7.20.12", "@babel/traverse@^7.20.13": + version "7.20.13" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz" + integrity sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ== + dependencies: + "@babel/code-frame" "^7.18.6" + "@babel/generator" "^7.20.7" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.19.0" + "@babel/helper-hoist-variables" "^7.18.6" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/parser" "^7.20.13" + "@babel/types" "^7.20.7" + debug "^4.1.0" + globals "^11.1.0" -"@babel/plugin-transform-react-jsx-source@^7.19.6": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz" - integrity sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw== - dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - -"@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.21.0", "@babel/runtime@^7.23.9", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7": - version "7.28.4" - resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.4.tgz" - integrity sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ== - -"@babel/template@^7.27.2": - version "7.27.2" - resolved "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz" - integrity sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw== - dependencies: - "@babel/code-frame" "^7.27.1" - "@babel/parser" "^7.27.2" - "@babel/types" "^7.27.1" - -"@babel/traverse@^7.27.1", "@babel/traverse@^7.28.3", "@babel/traverse@^7.28.4": - version "7.28.4" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.4.tgz" - integrity sha512-YEzuboP2qvQavAcjgQNVgsvHIDv6ZpwXvcvjmyySP2DIMuByS/6ioU5G9pYrWHM6T2YDfc7xga9iNzYOs12CFQ== - dependencies: - "@babel/code-frame" "^7.27.1" - "@babel/generator" "^7.28.3" - "@babel/helper-globals" "^7.28.0" - "@babel/parser" "^7.28.4" - "@babel/template" "^7.27.2" - "@babel/types" "^7.28.4" - debug "^4.3.1" - -"@babel/types@^7.27.1", "@babel/types@^7.28.2", "@babel/types@^7.28.4": - version "7.28.4" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.28.4.tgz" - integrity sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q== - dependencies: - "@babel/helper-string-parser" "^7.27.1" - "@babel/helper-validator-identifier" "^7.27.1" - -"@emotion/babel-plugin@^11.13.5": - version "11.13.5" - resolved "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz" - integrity sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ== +"@babel/types@^7.18.6", "@babel/types@^7.19.0", "@babel/types@^7.20.2", "@babel/types@^7.20.7": + version "7.20.7" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz" + integrity sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg== + dependencies: + "@babel/helper-string-parser" "^7.19.4" + "@babel/helper-validator-identifier" "^7.19.1" + to-fast-properties "^2.0.0" + +"@emotion/babel-plugin@^11.10.5", "@emotion/babel-plugin@^11.10.6": + version "11.10.6" + resolved "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.10.6.tgz" + integrity sha512-p2dAqtVrkhSa7xz1u/m9eHYdLi+en8NowrmXeF/dKtJpU8lCWli8RUAati7NcSl0afsBott48pdnANuD0wh9QQ== dependencies: "@babel/helper-module-imports" "^7.16.7" "@babel/runtime" "^7.18.3" - "@emotion/hash" "^0.9.2" - "@emotion/memoize" "^0.9.0" - "@emotion/serialize" "^1.3.3" + "@emotion/hash" "^0.9.0" + "@emotion/memoize" "^0.8.0" + "@emotion/serialize" "^1.1.1" babel-plugin-macros "^3.1.0" convert-source-map "^1.5.0" escape-string-regexp "^4.0.0" find-root "^1.1.0" source-map "^0.5.7" - stylis "4.2.0" + stylis "4.1.3" -"@emotion/cache@^11.13.5", "@emotion/cache@^11.14.0": - version "11.14.0" - resolved "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz" - integrity sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA== +"@emotion/cache@^11.10.5": + version "11.10.5" + resolved "https://registry.npmjs.org/@emotion/cache/-/cache-11.10.5.tgz" + integrity sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA== dependencies: - "@emotion/memoize" "^0.9.0" - "@emotion/sheet" "^1.4.0" - "@emotion/utils" "^1.4.2" - "@emotion/weak-memoize" "^0.4.0" - stylis "4.2.0" + "@emotion/memoize" "^0.8.0" + "@emotion/sheet" "^1.2.1" + "@emotion/utils" "^1.2.0" + "@emotion/weak-memoize" "^0.3.0" + stylis "4.1.3" "@emotion/css@^11.10.6": - version "11.13.5" - resolved "https://registry.npmjs.org/@emotion/css/-/css-11.13.5.tgz" - integrity sha512-wQdD0Xhkn3Qy2VNcIzbLP9MR8TafI0MJb7BEAXKp+w4+XqErksWR4OXomuDzPsN4InLdGhVe6EYcn2ZIUCpB8w== - dependencies: - "@emotion/babel-plugin" "^11.13.5" - "@emotion/cache" "^11.13.5" - "@emotion/serialize" "^1.3.3" - "@emotion/sheet" "^1.4.0" - "@emotion/utils" "^1.4.2" - -"@emotion/hash@^0.9.2": - version "0.9.2" - resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz" - integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g== - -"@emotion/is-prop-valid@^1.3.0": - version "1.4.0" - resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.4.0.tgz" - integrity sha512-QgD4fyscGcbbKwJmqNvUMSE02OsHUa+lAWKdEUIJKgqe5IwRSKd7+KhibEWdaKwgjLj0DRSHA9biAIqGBk05lw== + version "11.10.6" + resolved "https://registry.npmjs.org/@emotion/css/-/css-11.10.6.tgz" + integrity sha512-88Sr+3heKAKpj9PCqq5A1hAmAkoSIvwEq1O2TwDij7fUtsJpdkV4jMTISSTouFeRvsGvXIpuSuDQ4C1YdfNGXw== dependencies: - "@emotion/memoize" "^0.9.0" + "@emotion/babel-plugin" "^11.10.6" + "@emotion/cache" "^11.10.5" + "@emotion/serialize" "^1.1.1" + "@emotion/sheet" "^1.2.1" + "@emotion/utils" "^1.2.0" -"@emotion/memoize@^0.9.0": +"@emotion/hash@^0.9.0": version "0.9.0" - resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz" - integrity sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ== + resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.0.tgz" + integrity sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ== + +"@emotion/is-prop-valid@^1.2.0": + version "1.2.0" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz" + integrity sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg== + dependencies: + "@emotion/memoize" "^0.8.0" + +"@emotion/memoize@^0.8.0": + version "0.8.0" + resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz" + integrity sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA== "@emotion/react@^11.0.0-rc.0", "@emotion/react@^11.4.1", "@emotion/react@^11.5.0", "@emotion/react@^11.9.0": - version "11.14.0" - resolved "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz" - integrity sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA== + version "11.10.5" + resolved "https://registry.npmjs.org/@emotion/react/-/react-11.10.5.tgz" + integrity sha512-TZs6235tCJ/7iF6/rvTaOH4oxQg2gMAcdHemjwLKIjKz4rRuYe1HJ2TQJKnAcRAfOUDdU8XoDadCe1rl72iv8A== dependencies: "@babel/runtime" "^7.18.3" - "@emotion/babel-plugin" "^11.13.5" - "@emotion/cache" "^11.14.0" - "@emotion/serialize" "^1.3.3" - "@emotion/use-insertion-effect-with-fallbacks" "^1.2.0" - "@emotion/utils" "^1.4.2" - "@emotion/weak-memoize" "^0.4.0" + "@emotion/babel-plugin" "^11.10.5" + "@emotion/cache" "^11.10.5" + "@emotion/serialize" "^1.1.1" + "@emotion/use-insertion-effect-with-fallbacks" "^1.0.0" + "@emotion/utils" "^1.2.0" + "@emotion/weak-memoize" "^0.3.0" hoist-non-react-statics "^3.3.1" -"@emotion/serialize@^1.3.3": - version "1.3.3" - resolved "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz" - integrity sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA== +"@emotion/serialize@^1.1.1": + version "1.1.1" + resolved "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.1.tgz" + integrity sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA== dependencies: - "@emotion/hash" "^0.9.2" - "@emotion/memoize" "^0.9.0" - "@emotion/unitless" "^0.10.0" - "@emotion/utils" "^1.4.2" + "@emotion/hash" "^0.9.0" + "@emotion/memoize" "^0.8.0" + "@emotion/unitless" "^0.8.0" + "@emotion/utils" "^1.2.0" csstype "^3.0.2" -"@emotion/sheet@^1.4.0": - version "1.4.0" - resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz" - integrity sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg== +"@emotion/sheet@^1.2.1": + version "1.2.1" + resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.1.tgz" + integrity sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA== "@emotion/styled@^11.3.0", "@emotion/styled@^11.8.1": - version "11.14.1" - resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.14.1.tgz" - integrity sha512-qEEJt42DuToa3gurlH4Qqc1kVpNq8wO8cJtDzU46TjlzWjDlsVyevtYCRijVq3SrHsROS+gVQ8Fnea108GnKzw== + version "11.10.5" + resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.10.5.tgz" + integrity sha512-8EP6dD7dMkdku2foLoruPCNkRevzdcBaY6q0l0OsbyJK+x8D9HWjX27ARiSIKNF634hY9Zdoedh8bJCiva8yZw== dependencies: "@babel/runtime" "^7.18.3" - "@emotion/babel-plugin" "^11.13.5" - "@emotion/is-prop-valid" "^1.3.0" - "@emotion/serialize" "^1.3.3" - "@emotion/use-insertion-effect-with-fallbacks" "^1.2.0" - "@emotion/utils" "^1.4.2" - -"@emotion/unitless@^0.10.0": - version "0.10.0" - resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz" - integrity sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg== - -"@emotion/use-insertion-effect-with-fallbacks@^1.2.0": - version "1.2.0" - resolved "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz" - integrity sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg== + "@emotion/babel-plugin" "^11.10.5" + "@emotion/is-prop-valid" "^1.2.0" + "@emotion/serialize" "^1.1.1" + "@emotion/use-insertion-effect-with-fallbacks" "^1.0.0" + "@emotion/utils" "^1.2.0" + +"@emotion/unitless@^0.8.0": + version "0.8.0" + resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz" + integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== + +"@emotion/use-insertion-effect-with-fallbacks@^1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz" + integrity sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A== -"@emotion/utils@^1.4.2": - version "1.4.2" - resolved "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz" - integrity sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA== +"@emotion/utils@^1.2.0": + version "1.2.0" + resolved "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.0.tgz" + integrity sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw== -"@emotion/weak-memoize@^0.4.0": - version "0.4.0" - resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz" - integrity sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg== +"@emotion/weak-memoize@^0.3.0": + version "0.3.0" + resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz" + integrity sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg== -"@esbuild/linux-x64@0.18.20": - version "0.18.20" - resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz" - integrity sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w== +"@esbuild/linux-x64@0.17.15": + version "0.17.15" + resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.15.tgz" + integrity sha512-JsdS0EgEViwuKsw5tiJQo9UdQdUJYuB+Mf6HxtJSPN35vez1hlrNb1KajvKWF5Sa35j17+rW1ECEO9iNrIXbNg== "@formant/data-sdk@^1.0.0", "@formant/data-sdk@^1.51.0": - version "1.80.7" - resolved "https://registry.npmjs.org/@formant/data-sdk/-/data-sdk-1.80.7.tgz" - integrity sha512-/2g7xx/gWzzpfXM/Q6GK4qD4Q5lz0Psxv5Mr0E4JjOwXcZqcpN5kcb++MQ988aJOW5yWCXRs0uHbWMAVfRW4Eg== + version "1.51.0" + resolved "https://registry.npmjs.org/@formant/data-sdk/-/data-sdk-1.51.0.tgz" + integrity sha512-8/7IQb6VaiLVx+31e8y3iRNNC4f9LLjhJwAK5NNJNceagz6oezPkfvsKa362scyf2oXLkgsOMC2A/20UMD6gPw== dependencies: "@formant/ui-sdk-realtime-player-core" "^0.0.2" "@formant/ui-sdk-realtime-player-core-worker" "^0.0.4" @@ -300,20 +351,20 @@ base64-js "^1.5.1" date-fns "^2.30.0" eventemitter3 "^5.0.1" - fast-json-stable-stringify "=2.0.0" google-protobuf "^3.21.2" - lru-cache "^7.14.0" lzfjs "^1.0.1" pako "^2.1.0" validator "^13.11.0" "@formant/realtime-sdk@^1.4.0": - version "1.4.3" - resolved "https://registry.npmjs.org/@formant/realtime-sdk/-/realtime-sdk-1.4.3.tgz" - integrity sha512-eC8L1JrcDOaJrCgVB/qpBK6nV4nM4GIRrotJun8Hey8yXGfCD6fzu6hLnwWSoBVXEyPBEqyjb6NDibu8yvoAmA== + version "1.4.0" + resolved "https://registry.npmjs.org/@formant/realtime-sdk/-/realtime-sdk-1.4.0.tgz" + integrity sha512-nxUxm8PlYDsjI6X0KAO/JvYIGE/UlL1O0k+vYlOwQjAMvX9xGXAz6QhO2GJKDO3Z8HurhTaZnmExxUU0q0Q9kg== dependencies: + "@types/generic-pool" "^3.8.1" "@types/google-protobuf" "~3.7.0" env-var "^7.4.0" + generic-pool "^3.9.0" "@formant/ui-sdk-realtime-player-core-worker@^0.0.4": version "0.0.4" @@ -355,123 +406,148 @@ react-chartjs-2 "^5.2.0" react-device-detect "^2.2.2" -"@jridgewell/gen-mapping@^0.3.12", "@jridgewell/gen-mapping@^0.3.5": - version "0.3.13" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz" - integrity sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA== +"@jridgewell/gen-mapping@^0.1.0": + version "0.1.1" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz" + integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== dependencies: - "@jridgewell/sourcemap-codec" "^1.5.0" - "@jridgewell/trace-mapping" "^0.3.24" + "@jridgewell/set-array" "^1.0.0" + "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/remapping@^2.3.5": - version "2.3.5" - resolved "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz" - integrity sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ== +"@jridgewell/gen-mapping@^0.3.2": + version "0.3.2" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz" + integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== dependencies: - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.24" - -"@jridgewell/resolve-uri@^3.1.0": - version "3.1.2" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz" - integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + "@jridgewell/set-array" "^1.0.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/sourcemap-codec@^1.4.13", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0": - version "1.5.5" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz" - integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== +"@jridgewell/resolve-uri@3.1.0": + version "3.1.0" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz" + integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== -"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.28": - version "0.3.30" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz" - integrity sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q== +"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": + version "1.1.2" + resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" + integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.13", "@jridgewell/sourcemap-codec@1.4.14": + version "1.4.14" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" + integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== + +"@jridgewell/trace-mapping@^0.3.9": + version "0.3.17" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz" + integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" "@kurkle/color@^0.3.0": - version "0.3.4" - resolved "https://registry.npmjs.org/@kurkle/color/-/color-0.3.4.tgz" - integrity sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w== + version "0.3.2" + resolved "https://registry.npmjs.org/@kurkle/color/-/color-0.3.2.tgz" + integrity sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw== + +"@mui/base@5.0.0-alpha.115": + version "5.0.0-alpha.115" + resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.115.tgz" + integrity sha512-OGQ84whT/yNYd6xKCGGS6MxqEfjVjk5esXM7HP6bB2Rim7QICUapxZt4nm8q39fpT08rNDkv3xPVqDDwRdRg1g== + dependencies: + "@babel/runtime" "^7.20.7" + "@emotion/is-prop-valid" "^1.2.0" + "@mui/types" "^7.2.3" + "@mui/utils" "^5.11.2" + "@popperjs/core" "^2.11.6" + clsx "^1.2.1" + prop-types "^15.8.1" + react-is "^18.2.0" -"@mui/core-downloads-tracker@^5.18.0": - version "5.18.0" - resolved "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.18.0.tgz" - integrity sha512-jbhwoQ1AY200PSSOrNXmrFCaSDSJWP7qk6urkTmIirvRXDROkqe+QwcLlUiw/PrREwsIF/vm3/dAXvjlMHF0RA== +"@mui/core-downloads-tracker@^5.11.6": + version "5.11.6" + resolved "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.11.6.tgz" + integrity sha512-lbD3qdafBOf2dlqKhOcVRxaPAujX+9UlPC6v8iMugMeAXe0TCgU3QbGXY3zrJsu6ex64WYDpH4y1+WOOBmWMuA== "@mui/material@^5.6.1": - version "5.18.0" - resolved "https://registry.npmjs.org/@mui/material/-/material-5.18.0.tgz" - integrity sha512-bbH/HaJZpFtXGvWg3TsBWG4eyt3gah3E7nCNU8GLyRjVoWcA91Vm/T+sjHfUcwgJSw9iLtucfHBoq+qW/T30aA== - dependencies: - "@babel/runtime" "^7.23.9" - "@mui/core-downloads-tracker" "^5.18.0" - "@mui/system" "^5.18.0" - "@mui/types" "~7.2.15" - "@mui/utils" "^5.17.1" - "@popperjs/core" "^2.11.8" - "@types/react-transition-group" "^4.4.10" - clsx "^2.1.0" - csstype "^3.1.3" + version "5.11.6" + resolved "https://registry.npmjs.org/@mui/material/-/material-5.11.6.tgz" + integrity sha512-MzkkL5KC2PCkFiv8cLpkzgLUPXSrAtnvJBR0emV7mLVWbkwV3n5832vjBx154B6R032fHjFTziTh7YEb50nK6Q== + dependencies: + "@babel/runtime" "^7.20.7" + "@mui/base" "5.0.0-alpha.115" + "@mui/core-downloads-tracker" "^5.11.6" + "@mui/system" "^5.11.5" + "@mui/types" "^7.2.3" + "@mui/utils" "^5.11.2" + "@types/react-transition-group" "^4.4.5" + clsx "^1.2.1" + csstype "^3.1.1" prop-types "^15.8.1" - react-is "^19.0.0" + react-is "^18.2.0" react-transition-group "^4.4.5" -"@mui/private-theming@^5.17.1": - version "5.17.1" - resolved "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.17.1.tgz" - integrity sha512-XMxU0NTYcKqdsG8LRmSoxERPXwMbp16sIXPcLVgLGII/bVNagX0xaheWAwFv8+zDK7tI3ajllkuD3GZZE++ICQ== +"@mui/private-theming@^5.11.2": + version "5.11.2" + resolved "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.11.2.tgz" + integrity sha512-qZwMaqRFPwlYmqwVKblKBGKtIjJRAj3nsvX93pOmatsXyorW7N/0IPE/swPgz1VwChXhHO75DwBEx8tB+aRMNg== dependencies: - "@babel/runtime" "^7.23.9" - "@mui/utils" "^5.17.1" + "@babel/runtime" "^7.20.7" + "@mui/utils" "^5.11.2" prop-types "^15.8.1" -"@mui/styled-engine@^5.18.0": - version "5.18.0" - resolved "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.18.0.tgz" - integrity sha512-BN/vKV/O6uaQh2z5rXV+MBlVrEkwoS/TK75rFQ2mjxA7+NBo8qtTAOA4UaM0XeJfn7kh2wZ+xQw2HAx0u+TiBg== +"@mui/styled-engine@^5.11.0": + version "5.11.0" + resolved "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.11.0.tgz" + integrity sha512-AF06K60Zc58qf0f7X+Y/QjaHaZq16znliLnGc9iVrV/+s8Ln/FCoeNuFvhlCbZZQ5WQcJvcy59zp0nXrklGGPQ== dependencies: - "@babel/runtime" "^7.23.9" - "@emotion/cache" "^11.13.5" - "@emotion/serialize" "^1.3.3" - csstype "^3.1.3" + "@babel/runtime" "^7.20.6" + "@emotion/cache" "^11.10.5" + csstype "^3.1.1" prop-types "^15.8.1" -"@mui/system@^5.18.0": - version "5.18.0" - resolved "https://registry.npmjs.org/@mui/system/-/system-5.18.0.tgz" - integrity sha512-ojZGVcRWqWhu557cdO3pWHloIGJdzVtxs3rk0F9L+x55LsUjcMUVkEhiF7E4TMxZoF9MmIHGGs0ZX3FDLAf0Xw== - dependencies: - "@babel/runtime" "^7.23.9" - "@mui/private-theming" "^5.17.1" - "@mui/styled-engine" "^5.18.0" - "@mui/types" "~7.2.15" - "@mui/utils" "^5.17.1" - clsx "^2.1.0" - csstype "^3.1.3" +"@mui/system@^5.11.5": + version "5.11.5" + resolved "https://registry.npmjs.org/@mui/system/-/system-5.11.5.tgz" + integrity sha512-KNVsJ0sgRRp2XBqhh4wPS5aacteqjwxgiYTVwVnll2fgkgunZKo3DsDiGMrFlCg25ZHA3Ax58txWGE9w58zp0w== + dependencies: + "@babel/runtime" "^7.20.7" + "@mui/private-theming" "^5.11.2" + "@mui/styled-engine" "^5.11.0" + "@mui/types" "^7.2.3" + "@mui/utils" "^5.11.2" + clsx "^1.2.1" + csstype "^3.1.1" prop-types "^15.8.1" -"@mui/types@~7.2.15": - version "7.2.24" - resolved "https://registry.npmjs.org/@mui/types/-/types-7.2.24.tgz" - integrity sha512-3c8tRt/CbWZ+pEg7QpSwbdxOk36EfmhbKf6AGZsD1EcLDLTSZoxxJ86FVtcjxvjuhdyBiWKSTGZFaXCnidO2kw== +"@mui/types@^7.2.3": + version "7.2.3" + resolved "https://registry.npmjs.org/@mui/types/-/types-7.2.3.tgz" + integrity sha512-tZ+CQggbe9Ol7e/Fs5RcKwg/woU+o8DCtOnccX6KmbBc7YrfqMYEYuaIcXHuhpT880QwNkZZ3wQwvtlDFA2yOw== -"@mui/utils@^5.17.1", "@mui/utils@^5.6.1": - version "5.17.1" - resolved "https://registry.npmjs.org/@mui/utils/-/utils-5.17.1.tgz" - integrity sha512-jEZ8FTqInt2WzxDV8bhImWBqeQRD99c/id/fq83H0ER9tFl+sfZlaAoCdznGvbSQQ9ividMxqSV2c7cC1vBcQg== +"@mui/utils@^5.11.2", "@mui/utils@^5.6.1": + version "5.11.2" + resolved "https://registry.npmjs.org/@mui/utils/-/utils-5.11.2.tgz" + integrity sha512-AyizuHHlGdAtH5hOOXBW3kriuIwUIKUIgg0P7LzMvzf6jPhoQbENYqY6zJqfoZ7fAWMNNYT8mgN5EftNGzwE2w== dependencies: - "@babel/runtime" "^7.23.9" - "@mui/types" "~7.2.15" - "@types/prop-types" "^15.7.12" - clsx "^2.1.1" + "@babel/runtime" "^7.20.7" + "@types/prop-types" "^15.7.5" + "@types/react-is" "^16.7.1 || ^17.0.0" prop-types "^15.8.1" - react-is "^19.0.0" + react-is "^18.2.0" -"@popperjs/core@^2.11.8": - version "2.11.8" - resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz" - integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== +"@popperjs/core@^2.11.6": + version "2.11.6" + resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz" + integrity sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw== + +"@types/generic-pool@^3.8.1": + version "3.8.1" + resolved "https://registry.npmjs.org/@types/generic-pool/-/generic-pool-3.8.1.tgz" + integrity sha512-eaMAbZS0EfKvaP5PUZ/Cdf5uJBO2t6T3RdvQTKuMqUwGhNpCnPAsKWEMyV+mCeCQG3UiHrtgdzni8X6DmhxRaQ== + dependencies: + generic-pool "*" "@types/google-protobuf@~3.7.0": version "3.7.4" @@ -479,47 +555,64 @@ integrity sha512-6PjMFKl13cgB4kRdYtvyjKl8VVa0PXS2IdVxHhQ8GEKbxBkyJtSbaIeK1eZGjDKN7dvUh4vkOvU9FMwYNv4GQQ== "@types/lodash@^4.14.182": - version "4.17.20" - resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.20.tgz" - integrity sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA== + version "4.14.191" + resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz" + integrity sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ== "@types/offscreencanvas@^2019.6.4": - version "2019.7.3" - resolved "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.3.tgz" - integrity sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A== + version "2019.7.0" + resolved "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.0.tgz" + integrity sha512-PGcyveRIpL1XIqK8eBsmRBt76eFgtzuPiSTyKHZxnGemp2yzGzWpjYKAfK3wIMiU7eH+851yEpiuP8JZerTmWg== "@types/parse-json@^4.0.0": - version "4.0.2" - resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz" - integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw== + version "4.0.0" + resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/prop-types@*", "@types/prop-types@^15.7.12": - version "15.7.15" - resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz" - integrity sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw== +"@types/prop-types@*", "@types/prop-types@^15.7.5": + version "15.7.5" + resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz" + integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== "@types/react-dom@^18.0.9": - version "18.3.7" - resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz" - integrity sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ== + version "18.0.10" + resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.10.tgz" + integrity sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg== + dependencies: + "@types/react" "*" -"@types/react-transition-group@^4.4.10": - version "4.4.12" - resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz" - integrity sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w== +"@types/react-is@^16.7.1 || ^17.0.0": + version "17.0.3" + resolved "https://registry.npmjs.org/@types/react-is/-/react-is-17.0.3.tgz" + integrity sha512-aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw== + dependencies: + "@types/react" "*" -"@types/react@*", "@types/react@^17.0.0 || ^18.0.0 || ^19.0.0", "@types/react@^18.0.0", "@types/react@^18.0.26": - version "18.3.24" - resolved "https://registry.npmjs.org/@types/react/-/react-18.3.24.tgz" - integrity sha512-0dLEBsA1kI3OezMBF8nSsb7Nk19ZnsyE1LLhB8r27KbgU5H4pvuqZLdtE+aUkJVoXgTVuA+iLIwmZ0TuK4tx6A== +"@types/react-transition-group@^4.4.5": + version "4.4.5" + resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz" + integrity sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA== + dependencies: + "@types/react" "*" + +"@types/react@*", "@types/react@^17.0.0 || ^18.0.0", "@types/react@^18.0.26": + version "18.0.27" + resolved "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz" + integrity sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA== dependencies: "@types/prop-types" "*" + "@types/scheduler" "*" csstype "^3.0.2" +"@types/scheduler@*": + version "0.16.2" + resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz" + integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== + "@types/validator@^13.11.8": - version "13.15.3" - resolved "https://registry.npmjs.org/@types/validator/-/validator-13.15.3.tgz" - integrity sha512-7bcUmDyS6PN3EuD9SlGGOxM77F8WLVsrwkxyWxKnxzmXoequ6c7741QBrANq6htVRGOITJ7z72mTP6Z4XyuG+Q== + version "13.12.0" + resolved "https://registry.npmjs.org/@types/validator/-/validator-13.12.0.tgz" + integrity sha512-nH45Lk7oPIJ1RVOF6JgFI6Dy0QpHEzq4QecZhvguxYPDwT8c93prCMqAtiIttm39voZ+DDR+qkNnMpJmMBRqag== "@vitejs/plugin-react@^3.0.0": version "3.1.0" @@ -532,6 +625,21 @@ magic-string "^0.27.0" react-refresh "^0.14.0" +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + babel-plugin-macros@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz" @@ -551,53 +659,96 @@ base64-js@^1.5.1: resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -browserslist@^4.24.0, "browserslist@>= 4.21.0": - version "4.25.4" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.25.4.tgz" - integrity sha512-4jYpcjabC606xJ3kw2QwGEZKX0Aw7sgQdZCvIK9dhVSPh76BKo+C+btT1RRofH7B+8iNpEbgGNVWiLki5q93yg== +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +braces@~3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +browserslist@^4.21.3, "browserslist@>= 4.21.0": + version "4.21.5" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz" + integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== dependencies: - caniuse-lite "^1.0.30001737" - electron-to-chromium "^1.5.211" - node-releases "^2.0.19" - update-browserslist-db "^1.1.3" + caniuse-lite "^1.0.30001449" + electron-to-chromium "^1.4.284" + node-releases "^2.0.8" + update-browserslist-db "^1.0.10" callsites@^3.0.0: version "3.1.0" resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== -caniuse-lite@^1.0.30001737: - version "1.0.30001741" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001741.tgz" - integrity sha512-QGUGitqsc8ARjLdgAfxETDhRbJ0REsP6O3I96TAth/mVjh2cYzN2u+3AzPP3aVSm2FehEItaJw1xd+IGBXWeSw== +caniuse-lite@^1.0.30001449: + version "1.0.30001449" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz" + integrity sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw== + +chalk@^2.0.0: + version "2.4.2" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" chart.js@^4.1.1, chart.js@^4.2.0: - version "4.5.0" - resolved "https://registry.npmjs.org/chart.js/-/chart.js-4.5.0.tgz" - integrity sha512-aYeC/jDgSEx8SHWZvANYMioYMZ2KX02W6f6uVfyteuCGcadDLcYVHdfdygsTQkQ4TKn5lghoojAsPj5pu0SnvQ== + version "4.2.1" + resolved "https://registry.npmjs.org/chart.js/-/chart.js-4.2.1.tgz" + integrity sha512-6YbpQ0nt3NovAgOzbkSSeeAQu/3za1319dPUQTXn9WcOpywM8rGKxJHrhS8V8xEkAlk8YhEfjbuAPfUyp6jIsw== dependencies: "@kurkle/color" "^0.3.0" +"chokidar@>=3.0.0 <4.0.0": + version "3.5.3" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz" + integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + classnames@^2.3.1: - version "2.5.1" - resolved "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz" - integrity sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow== + version "2.3.2" + resolved "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz" + integrity sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw== -clsx@^2.1.0, clsx@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz" - integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== +clsx@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz" + integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== -convert-source-map@^1.5.0: +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +convert-source-map@^1.5.0, convert-source-map@^1.7.0: version "1.9.0" resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== -convert-source-map@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz" - integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== - cosmiconfig@^7.0.0: version "7.1.0" resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz" @@ -609,10 +760,10 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -csstype@^3.0.2, csstype@^3.1.3: - version "3.1.3" - resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz" - integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== +csstype@^3.0.2, csstype@^3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz" + integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== date-fns@^2.30.0: version "2.30.0" @@ -621,12 +772,12 @@ date-fns@^2.30.0: dependencies: "@babel/runtime" "^7.21.0" -debug@^4.1.0, debug@^4.3.1: - version "4.4.1" - resolved "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz" - integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== +debug@^4.1.0: + version "4.3.4" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: - ms "^2.1.3" + ms "2.1.2" dom-helpers@^5.0.1: version "5.2.1" @@ -636,10 +787,10 @@ dom-helpers@^5.0.1: "@babel/runtime" "^7.8.7" csstype "^3.0.2" -electron-to-chromium@^1.5.211: - version "1.5.215" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.215.tgz" - integrity sha512-TIvGp57UpeNetj/wV/xpFNpWGb0b/ROw372lHPx5Aafx02gjTBtWnEEcaSX3W2dLM3OSdGGyHX/cHl01JQsLaQ== +electron-to-chromium@^1.4.284: + version "1.4.284" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz" + integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA== env-var@^7.4.0: version "7.5.0" @@ -653,38 +804,43 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -esbuild@^0.18.10: - version "0.18.20" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz" - integrity sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA== +esbuild@^0.17.5: + version "0.17.15" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.17.15.tgz" + integrity sha512-LBUV2VsUIc/iD9ME75qhT4aJj0r75abCVS0jakhFzOtR7TQsqQA5w0tZ+KTKnwl3kXE0MhskNdHDh/I5aCR1Zw== optionalDependencies: - "@esbuild/android-arm" "0.18.20" - "@esbuild/android-arm64" "0.18.20" - "@esbuild/android-x64" "0.18.20" - "@esbuild/darwin-arm64" "0.18.20" - "@esbuild/darwin-x64" "0.18.20" - "@esbuild/freebsd-arm64" "0.18.20" - "@esbuild/freebsd-x64" "0.18.20" - "@esbuild/linux-arm" "0.18.20" - "@esbuild/linux-arm64" "0.18.20" - "@esbuild/linux-ia32" "0.18.20" - "@esbuild/linux-loong64" "0.18.20" - "@esbuild/linux-mips64el" "0.18.20" - "@esbuild/linux-ppc64" "0.18.20" - "@esbuild/linux-riscv64" "0.18.20" - "@esbuild/linux-s390x" "0.18.20" - "@esbuild/linux-x64" "0.18.20" - "@esbuild/netbsd-x64" "0.18.20" - "@esbuild/openbsd-x64" "0.18.20" - "@esbuild/sunos-x64" "0.18.20" - "@esbuild/win32-arm64" "0.18.20" - "@esbuild/win32-ia32" "0.18.20" - "@esbuild/win32-x64" "0.18.20" - -escalade@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz" - integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + "@esbuild/android-arm" "0.17.15" + "@esbuild/android-arm64" "0.17.15" + "@esbuild/android-x64" "0.17.15" + "@esbuild/darwin-arm64" "0.17.15" + "@esbuild/darwin-x64" "0.17.15" + "@esbuild/freebsd-arm64" "0.17.15" + "@esbuild/freebsd-x64" "0.17.15" + "@esbuild/linux-arm" "0.17.15" + "@esbuild/linux-arm64" "0.17.15" + "@esbuild/linux-ia32" "0.17.15" + "@esbuild/linux-loong64" "0.17.15" + "@esbuild/linux-mips64el" "0.17.15" + "@esbuild/linux-ppc64" "0.17.15" + "@esbuild/linux-riscv64" "0.17.15" + "@esbuild/linux-s390x" "0.17.15" + "@esbuild/linux-x64" "0.17.15" + "@esbuild/netbsd-x64" "0.17.15" + "@esbuild/openbsd-x64" "0.17.15" + "@esbuild/sunos-x64" "0.17.15" + "@esbuild/win32-arm64" "0.17.15" + "@esbuild/win32-ia32" "0.17.15" + "@esbuild/win32-x64" "0.17.15" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^4.0.0: version "4.0.0" @@ -696,26 +852,45 @@ eventemitter3@^5.0.1: resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz" integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== -fast-json-stable-stringify@=2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz" - integrity sha512-eIgZvM9C3P05kg0qxfqaVU6Tma4QedCPIByQOcemV0vju8ot3cS2DpHi4m2G2JvbSMI152rjfLX0p1pkSdyPlQ== +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" find-root@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== -function-bind@^1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz" - integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +generic-pool@*, generic-pool@^3.9.0: + version "3.9.0" + resolved "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz" + integrity sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g== gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== +glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== + google-protobuf@^3.21.2: version "3.21.4" resolved "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.21.4.tgz" @@ -731,12 +906,17 @@ h264decoder@^1.0.0: resolved "https://registry.npmjs.org/h264decoder/-/h264decoder-1.0.0.tgz" integrity sha512-uFoa7RPOjKia91ziteLynrDkoIIx17zfIhJbTy2SXAg/Eu89H8sFVDw9lpWv3i4evIO1QlCdjrub0f4kRIgtcQ== -hasown@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz" - integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: - function-bind "^1.1.2" + function-bind "^1.1.1" hoist-non-react-statics@^3.3.1: version "3.3.2" @@ -745,10 +925,15 @@ hoist-non-react-statics@^3.3.1: dependencies: react-is "^16.7.0" +immutable@^4.0.0: + version "4.2.2" + resolved "https://registry.npmjs.org/immutable/-/immutable-4.2.2.tgz" + integrity sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og== + import-fresh@^3.2.1: - version "3.3.1" - resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz" - integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== + version "3.3.0" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" @@ -758,29 +943,53 @@ is-arrayish@^0.2.1: resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== -is-core-module@^2.16.0: - version "2.16.1" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz" - integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-core-module@^2.9.0: + version "2.11.0" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz" + integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== + dependencies: + has "^1.0.3" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: - hasown "^2.0.2" + is-extglob "^2.1.1" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -jsesc@^3.0.2: - version "3.1.0" - resolved "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz" - integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== json-parse-even-better-errors@^2.3.0: version "2.3.1" resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== -json5@^2.2.3: +json5@^2.2.2: version "2.2.3" resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== @@ -809,11 +1018,6 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" -lru-cache@^7.14.0: - version "7.18.3" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz" - integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== - lzfjs@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/lzfjs/-/lzfjs-1.0.1.tgz" @@ -826,20 +1030,25 @@ magic-string@^0.27.0: dependencies: "@jridgewell/sourcemap-codec" "^1.4.13" -ms@^2.1.3: - version "2.1.3" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +ms@2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +nanoid@^3.3.4: + version "3.3.4" + resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz" + integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== -nanoid@^3.3.11: - version "3.3.11" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz" - integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== +node-releases@^2.0.8: + version "2.0.9" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.9.tgz" + integrity sha512-2xfmOrRkGogbTK9R6Leda0DGiXeY3p2NJpy4+gNCffdUvV6mdEJnaDEic1i3Ec2djAo8jWYoJMR5PB0MSMpxUA== -node-releases@^2.0.19: - version "2.0.20" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.20.tgz" - integrity sha512-7gK6zSXEH6neM212JgfYFXe+GmZQM+fia5SsusuBIUgnPheLFBmIPhtFoAQRj8/7wASYQnbDlHPVwY0BefoFgA== +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== object-assign@^4.1.1: version "4.1.1" @@ -878,19 +1087,24 @@ path-type@^4.0.0: resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -picocolors@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz" - integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -postcss@^8.4.27: - version "8.5.6" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz" - integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg== +picomatch@^2.0.4, picomatch@^2.2.1: + version "2.3.1" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +postcss@^8.4.21: + version "8.4.21" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz" + integrity sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg== dependencies: - nanoid "^3.3.11" - picocolors "^1.1.1" - source-map-js "^1.2.1" + nanoid "^3.3.4" + picocolors "^1.0.0" + source-map-js "^1.0.2" prop-types@^15.6.2, prop-types@^15.8.1: version "15.8.1" @@ -902,24 +1116,24 @@ prop-types@^15.6.2, prop-types@^15.8.1: react-is "^16.13.1" react-chartjs-2@^5.2.0: - version "5.3.0" - resolved "https://registry.npmjs.org/react-chartjs-2/-/react-chartjs-2-5.3.0.tgz" - integrity sha512-UfZZFnDsERI3c3CZGxzvNJd02SHjaSJ8kgW1djn65H1KK8rehwTjyrRKOG3VTMG8wtHZ5rgAO5oTHtHi9GCCmw== + version "5.2.0" + resolved "https://registry.npmjs.org/react-chartjs-2/-/react-chartjs-2-5.2.0.tgz" + integrity sha512-98iN5aguJyVSxp5U3CblRLH67J8gkfyGNbiK3c+l1QI/G4irHMPQw44aEPmjVag+YKTyQ260NcF82GTQ3bdscA== react-device-detect@^2.2.2: - version "2.2.3" - resolved "https://registry.npmjs.org/react-device-detect/-/react-device-detect-2.2.3.tgz" - integrity sha512-buYY3qrCnQVlIFHrC5UcUoAj7iANs/+srdkwsnNjI7anr3Tt7UY6MqNxtMLlr0tMBied0O49UZVK8XKs3ZIiPw== + version "2.2.2" + resolved "https://registry.npmjs.org/react-device-detect/-/react-device-detect-2.2.2.tgz" + integrity sha512-zSN1gIAztUekp5qUT/ybHwQ9fmOqVT1psxpSlTn1pe0CO+fnJHKRLOWWac5nKxOxvOpD/w84hk1I+EydrJp7SA== dependencies: - ua-parser-js "^1.0.33" + ua-parser-js "^1.0.2" -"react-dom@^17.0.0 || ^18.0.0 || ^19.0.0", react-dom@^18.0.0, react-dom@^18.2.0, "react-dom@>= 0.14.0", react-dom@>=16.6.0: - version "18.3.1" - resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz" - integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw== +"react-dom@^17.0.0 || ^18.0.0", react-dom@^18.0.0, react-dom@^18.2.0, "react-dom@>= 0.14.0", react-dom@>=16.6.0: + version "18.2.0" + resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" + integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g== dependencies: loose-envify "^1.1.0" - scheduler "^0.23.2" + scheduler "^0.23.0" react-is@^16.13.1: version "16.13.1" @@ -931,15 +1145,15 @@ react-is@^16.7.0: resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== -react-is@^19.0.0: - version "19.1.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-19.1.1.tgz" - integrity sha512-tr41fA15Vn8p4X9ntI+yCyeGSf1TlYaY5vlTZfQmeLBrFo3psOPX6HhTDnFNL9uj3EhP0KAQ80cugCl4b4BERA== +react-is@^18.2.0: + version "18.2.0" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz" + integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== react-refresh@^0.14.0: - version "0.14.2" - resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz" - integrity sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA== + version "0.14.0" + resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz" + integrity sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ== react-transition-group@^4.4.5: version "4.4.5" @@ -951,97 +1165,138 @@ react-transition-group@^4.4.5: loose-envify "^1.4.0" prop-types "^15.6.2" -"react@^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react@^17.0.0 || ^18.0.0 || ^19.0.0", react@^18.0.0, react@^18.2.0, react@^18.3.1, "react@>= 0.14.0", react@>=16.6.0, react@>=16.8.0: - version "18.3.1" - resolved "https://registry.npmjs.org/react/-/react-18.3.1.tgz" - integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== +"react@^16.8.0 || ^17.0.0 || ^18.0.0", "react@^17.0.0 || ^18.0.0", react@^18.0.0, react@^18.2.0, "react@>= 0.14.0", react@>=16.6.0, react@>=16.8.0: + version "18.2.0" + resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz" + integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== dependencies: loose-envify "^1.1.0" +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +regenerator-runtime@^0.13.11: + version "0.13.11" + resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz" + integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== + resolve-from@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve@^1.19.0: - version "1.22.10" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz" - integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== +resolve@^1.19.0, resolve@^1.22.1: + version "1.22.1" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz" + integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== dependencies: - is-core-module "^2.16.0" + is-core-module "^2.9.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -rollup@^3.27.1: - version "3.29.5" - resolved "https://registry.npmjs.org/rollup/-/rollup-3.29.5.tgz" - integrity sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w== +rollup@^3.18.0: + version "3.20.2" + resolved "https://registry.npmjs.org/rollup/-/rollup-3.20.2.tgz" + integrity sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg== optionalDependencies: fsevents "~2.3.2" -scheduler@^0.23.2: - version "0.23.2" - resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz" - integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ== +sass@*: + version "1.57.1" + resolved "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz" + integrity sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw== + dependencies: + chokidar ">=3.0.0 <4.0.0" + immutable "^4.0.0" + source-map-js ">=0.6.2 <2.0.0" + +scheduler@^0.23.0: + version "0.23.0" + resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz" + integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw== dependencies: loose-envify "^1.1.0" -semver@^6.3.1: - version "6.3.1" - resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== +semver@^6.3.0: + version "6.3.0" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -source-map-js@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz" - integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== +source-map-js@^1.0.2, "source-map-js@>=0.6.2 <2.0.0": + version "1.0.2" + resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== source-map@^0.5.7: version "0.5.7" resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== -stylis@4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz" - integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== +stylis@4.1.3: + version "4.1.3" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.1.3.tgz" + integrity sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA== + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + typescript@^4.9.3: version "4.9.5" resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz" integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== -ua-parser-js@^1.0.33: - version "1.0.41" - resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.41.tgz" - integrity sha512-LbBDqdIC5s8iROCUjMbW1f5dJQTEFB1+KO9ogbvlb3nm9n4YHa5p4KTvFPWvh2Hs8gZMBuiB1/8+pdfe/tDPug== +ua-parser-js@^1.0.2: + version "1.0.33" + resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.33.tgz" + integrity sha512-RqshF7TPTE0XLYAqmjlu5cLLuGdKrNu9O1KLA/qp39QtbZwuzwv1dT46DZSopoUMsYgXpB3Cv8a03FI8b74oFQ== -update-browserslist-db@^1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz" - integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw== +update-browserslist-db@^1.0.10: + version "1.0.10" + resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz" + integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== dependencies: - escalade "^3.2.0" - picocolors "^1.1.1" + escalade "^3.1.1" + picocolors "^1.0.0" validator@^13.11.0: - version "13.15.15" - resolved "https://registry.npmjs.org/validator/-/validator-13.15.15.tgz" - integrity sha512-BgWVbCI72aIQy937xbawcs+hrVaN/CZ2UwutgaJ36hGqRrLNM+f5LUT/YPRbo8IV/ASeFzXszezV+y2+rq3l8A== + version "13.12.0" + resolved "https://registry.npmjs.org/validator/-/validator-13.12.0.tgz" + integrity sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg== vite@^4.0.0, vite@^4.1.0-beta.0: - version "4.5.14" - resolved "https://registry.npmjs.org/vite/-/vite-4.5.14.tgz" - integrity sha512-+v57oAaoYNnO3hIu5Z/tJRZjq5aHM2zDve9YZ8HngVHbhk66RStobhb1sqPMIPEleV6cNKYK4eGrAbE9Ulbl2g== + version "4.2.1" + resolved "https://registry.npmjs.org/vite/-/vite-4.2.1.tgz" + integrity sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg== dependencies: - esbuild "^0.18.10" - postcss "^8.4.27" - rollup "^3.27.1" + esbuild "^0.17.5" + postcss "^8.4.21" + resolve "^1.22.1" + rollup "^3.18.0" optionalDependencies: fsevents "~2.3.2" From 5568c7acf01e4d3dc62bd5a013ad4a1b6f695d39 Mon Sep 17 00:00:00 2001 From: Amir Nathoo Date: Mon, 8 Sep 2025 17:10:48 -0700 Subject: [PATCH 2/2] Revert "publish real-time video module updates (#222)" This reverts commit 598e20d17f02ca541179c205731fb041aeafe259. --- .../dist/assets/index-42125c84.js | 245 ++++++------------ 1 file changed, 81 insertions(+), 164 deletions(-) diff --git a/examples/realtime-video/dist/assets/index-42125c84.js b/examples/realtime-video/dist/assets/index-42125c84.js index 8986e30f0..b8840edd0 100644 --- a/examples/realtime-video/dist/assets/index-42125c84.js +++ b/examples/realtime-video/dist/assets/index-42125c84.js @@ -1,4 +1,4 @@ -var by=Object.defineProperty;var vy=(o,s,_)=>s in o?by(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_;var dr=(o,s,_)=>(vy(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 global<"u"?global: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={};/** +var cv=Object.defineProperty;var uv=(et,tt,nt)=>tt in et?cv(et,tt,{enumerable:!0,configurable:!0,writable:!0,value:nt}):et[tt]=nt;var _r=(et,tt,nt)=>(uv(et,typeof tt!="symbol"?tt+"":tt,nt),nt);function _mergeNamespaces(et,tt){for(var nt=0;ntit[ot]})}}}return Object.freeze(Object.defineProperty(et,Symbol.toStringTag,{value:"Module"}))}(function(){const tt=document.createElement("link").relList;if(tt&&tt.supports&&tt.supports("modulepreload"))return;for(const ot of document.querySelectorAll('link[rel="modulepreload"]'))it(ot);new MutationObserver(ot=>{for(const Ut of ot)if(Ut.type==="childList")for(const Ft of Ut.addedNodes)Ft.tagName==="LINK"&&Ft.rel==="modulepreload"&&it(Ft)}).observe(document,{childList:!0,subtree:!0});function nt(ot){const Ut={};return ot.integrity&&(Ut.integrity=ot.integrity),ot.referrerPolicy&&(Ut.referrerPolicy=ot.referrerPolicy),ot.crossOrigin==="use-credentials"?Ut.credentials="include":ot.crossOrigin==="anonymous"?Ut.credentials="omit":Ut.credentials="same-origin",Ut}function it(ot){if(ot.ep)return;ot.ep=!0;const Ut=nt(ot);fetch(ot.href,Ut)}})();var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs(et){return et&&et.__esModule&&Object.prototype.hasOwnProperty.call(et,"default")?et.default:et}var jsxRuntimeExports={},jsxRuntime={get exports(){return jsxRuntimeExports},set exports(et){jsxRuntimeExports=et}},reactJsxRuntime_production_min={},reactExports={},react={get exports(){return reactExports},set exports(et){reactExports=et}},react_production_min={};/** * @license React * react.production.min.js * @@ -6,7 +6,7 @@ var by=Object.defineProperty;var vy=(o,s,_)=>s in o?by(o,s,{enumerable:!0,config * * 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(1s in o?by(o,s,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var f$1=reactExports,k$1=Symbol.for("react.element"),l$1=Symbol.for("react.fragment"),m$2=Object.prototype.hasOwnProperty,n$1=f$1.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p$2={key:!0,ref:!0,__self:!0,__source:!0};function q$1(o,s,_){var j,$={},_e=null,et=null;_!==void 0&&(_e=""+_),s.key!==void 0&&(_e=""+s.key),s.ref!==void 0&&(et=s.ref);for(j in s)m$2.call(s,j)&&!p$2.hasOwnProperty(j)&&($[j]=s[j]);if(o&&o.defaultProps)for(j in s=o.defaultProps,s)$[j]===void 0&&($[j]=s[j]);return{$$typeof:k$1,type:o,key:_e,ref:et,props:$,_owner:n$1.current}}reactJsxRuntime_production_min.Fragment=l$1;reactJsxRuntime_production_min.jsx=q$1;reactJsxRuntime_production_min.jsxs=q$1;(function(o){o.exports=reactJsxRuntime_production_min})(jsxRuntime);const jsx$1=jsxRuntimeExports.jsx,jsxs$1=jsxRuntimeExports.jsxs;var client={},reactDomExports={},reactDom={get exports(){return reactDomExports},set exports(o){reactDomExports=o}},reactDom_production_min={},schedulerExports={},scheduler={get exports(){return schedulerExports},set exports(o){schedulerExports=o}},scheduler_production_min={};/** + */var f$2=reactExports,k$2=Symbol.for("react.element"),l$2=Symbol.for("react.fragment"),m$2=Object.prototype.hasOwnProperty,n$1=f$2.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p$2={key:!0,ref:!0,__self:!0,__source:!0};function q$2(et,tt,nt){var it,ot={},Ut=null,Ft=null;nt!==void 0&&(Ut=""+nt),tt.key!==void 0&&(Ut=""+tt.key),tt.ref!==void 0&&(Ft=tt.ref);for(it in tt)m$2.call(tt,it)&&!p$2.hasOwnProperty(it)&&(ot[it]=tt[it]);if(et&&et.defaultProps)for(it in tt=et.defaultProps,tt)ot[it]===void 0&&(ot[it]=tt[it]);return{$$typeof:k$2,type:et,key:Ut,ref:Ft,props:ot,_owner:n$1.current}}reactJsxRuntime_production_min.Fragment=l$2;reactJsxRuntime_production_min.jsx=q$2;reactJsxRuntime_production_min.jsxs=q$2;(function(et){et.exports=reactJsxRuntime_production_min})(jsxRuntime);const jsx$1=jsxRuntimeExports.jsx,jsxs$1=jsxRuntimeExports.jsxs;var client={},reactDomExports={},reactDom={get exports(){return reactDomExports},set exports(et){reactDomExports=et}},reactDom_production_min={},schedulerExports={},scheduler={get exports(){return schedulerExports},set exports(et){schedulerExports=et}},scheduler_production_min={};/** * @license React * scheduler.production.min.js * @@ -22,7 +22,7 @@ var by=Object.defineProperty;var vy=(o,s,_)=>s in o?by(o,s,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */(function(o){function s(bt,Jt){var wt=bt.length;bt.push(Jt);e:for(;0>>1,Ct=bt[At];if(0<$(Ct,Jt))bt[At]=Jt,bt[wt]=Ct,wt=At;else break e}}function _(bt){return bt.length===0?null:bt[0]}function j(bt){if(bt.length===0)return null;var Jt=bt[0],wt=bt.pop();if(wt!==Jt){bt[0]=wt;e:for(var At=0,Ct=bt.length,Mt=Ct>>>1;At$(sn,wt))Lt$(tn,sn)?(bt[At]=tn,bt[Lt]=wt,At=Lt):(bt[At]=sn,bt[nn]=wt,At=nn);else if(Lt$(tn,wt))bt[At]=tn,bt[Lt]=wt,At=Lt;else break e}}return Jt}function $(bt,Jt){var wt=bt.sortIndex-Jt.sortIndex;return wt!==0?wt:bt.id-Jt.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=[],lt=1,ut=null,Ut=3,ot=!1,st=!1,dt=!1,St=typeof setTimeout=="function"?setTimeout:null,pt=typeof clearTimeout=="function"?clearTimeout:null,Rt=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function Bt(bt){for(var Jt=_(rt);Jt!==null;){if(Jt.callback===null)j(rt);else if(Jt.startTime<=bt)j(rt),Jt.sortIndex=Jt.expirationTime,s(nt,Jt);else break;Jt=_(rt)}}function ht(bt){if(dt=!1,Bt(bt),!st)if(_(nt)!==null)st=!0,qt(mt);else{var Jt=_(rt);Jt!==null&&kt(ht,Jt.startTime-bt)}}function mt(bt,Jt){st=!1,dt&&(dt=!1,pt(Tt),Tt=-1),ot=!0;var wt=Ut;try{for(Bt(Jt),ut=_(nt);ut!==null&&(!(ut.expirationTime>Jt)||bt&&!yt());){var At=ut.callback;if(typeof At=="function"){ut.callback=null,Ut=ut.priorityLevel;var Ct=At(ut.expirationTime<=Jt);Jt=o.unstable_now(),typeof Ct=="function"?ut.callback=Ct:ut===_(nt)&&j(nt),Bt(Jt)}else j(nt);ut=_(nt)}if(ut!==null)var Mt=!0;else{var nn=_(rt);nn!==null&&kt(ht,nn.startTime-Jt),Mt=!1}return Mt}finally{ut=null,Ut=wt,ot=!1}}var gt=!1,Vt=null,Tt=-1,ft=5,Wt=-1;function yt(){return!(o.unstable_now()-Wtbt||125At?(bt.sortIndex=wt,s(rt,bt),_(nt)===null&&bt===_(rt)&&(dt?(pt(Tt),Tt=-1):dt=!0,kt(ht,wt-At))):(bt.sortIndex=Ct,s(nt,bt),st||ot||(st=!0,qt(mt))),bt},o.unstable_shouldYield=yt,o.unstable_wrapCallback=function(bt){var Jt=Ut;return function(){var wt=Ut;Ut=Jt;try{return bt.apply(this,arguments)}finally{Ut=wt}}}})(scheduler_production_min);(function(o){o.exports=scheduler_production_min})(scheduler);/** + */(function(et){function tt(Sn,fn){var cn=Sn.length;Sn.push(fn);e:for(;0>>1,Vn=Sn[bn];if(0>>1;bnot(In,cn))Cnot(kn,In)?(Sn[bn]=kn,Sn[Cn]=cn,bn=Cn):(Sn[bn]=In,Sn[Zn]=cn,bn=Zn);else if(Cnot(kn,cn))Sn[bn]=kn,Sn[Cn]=cn,bn=Cn;else break e}}return fn}function ot(Sn,fn){var cn=Sn.sortIndex-fn.sortIndex;return cn!==0?cn:Sn.id-fn.id}if(typeof performance=="object"&&typeof performance.now=="function"){var Ut=performance;et.unstable_now=function(){return Ut.now()}}else{var Ft=Date,Qt=Ft.now();et.unstable_now=function(){return Ft.now()-Qt}}var Bt=[],Vt=[],Wt=1,Xt=null,Zt=3,Yt=!1,Mt=!1,Gt=!1,en=typeof setTimeout=="function"?setTimeout:null,tn=typeof clearTimeout=="function"?clearTimeout:null,ln=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function nn(Sn){for(var fn=nt(Vt);fn!==null;){if(fn.callback===null)it(Vt);else if(fn.startTime<=Sn)it(Vt),fn.sortIndex=fn.expirationTime,tt(Bt,fn);else break;fn=nt(Vt)}}function sn(Sn){if(Gt=!1,nn(Sn),!Mt)if(nt(Bt)!==null)Mt=!0,pn(Kt);else{var fn=nt(Vt);fn!==null&&Rn(sn,fn.startTime-Sn)}}function Kt(Sn,fn){Mt=!1,Gt&&(Gt=!1,tn(En),En=-1),Yt=!0;var cn=Zt;try{for(nn(fn),Xt=nt(Bt);Xt!==null&&(!(Xt.expirationTime>fn)||Sn&&!gn());){var bn=Xt.callback;if(typeof bn=="function"){Xt.callback=null,Zt=Xt.priorityLevel;var Vn=bn(Xt.expirationTime<=fn);fn=et.unstable_now(),typeof Vn=="function"?Xt.callback=Vn:Xt===nt(Bt)&&it(Bt),nn(fn)}else it(Bt);Xt=nt(Bt)}if(Xt!==null)var Mn=!0;else{var Zn=nt(Vt);Zn!==null&&Rn(sn,Zn.startTime-fn),Mn=!1}return Mn}finally{Xt=null,Zt=cn,Yt=!1}}var dn=!1,Qn=null,En=-1,an=5,rn=-1;function gn(){return!(et.unstable_now()-rnSn||125bn?(Sn.sortIndex=cn,tt(Vt,Sn),nt(Bt)===null&&Sn===nt(Vt)&&(Gt?(tn(En),En=-1):Gt=!0,Rn(sn,cn-bn))):(Sn.sortIndex=Vn,tt(Bt,Sn),Mt||Yt||(Mt=!0,pn(Kt))),Sn},et.unstable_shouldYield=gn,et.unstable_wrapCallback=function(Sn){var fn=Zt;return function(){var cn=Zt;Zt=fn;try{return Sn.apply(this,arguments)}finally{Zt=cn}}}})(scheduler_production_min);(function(et){et.exports=scheduler_production_min})(scheduler);/** * @license React * react-dom.production.min.js * @@ -30,196 +30,113 @@ var by=Object.defineProperty;var vy=(o,s,_)=>s in o?by(o,s,{enumerable:!0,config * * 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$1(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 lt=o.alternate;lt!==null&&(lt=lt.updateQueue,tt=lt.lastBaseUpdate,tt!==et&&(tt===null?lt.firstBaseUpdate=rt:tt.next=rt,lt.lastBaseUpdate=nt))}if(_e!==null){var ut=$.baseState;et=0,lt=rt=nt=null,tt=_e;do{var Ut=tt.lane,ot=tt.eventTime;if((j&Ut)===Ut){lt!==null&&(lt=lt.next={eventTime:ot,lane:0,tag:tt.tag,payload:tt.payload,callback:tt.callback,next:null});e:{var st=o,dt=tt;switch(Ut=s,ot=_,dt.tag){case 1:if(st=dt.payload,typeof st=="function"){ut=st.call(ot,ut,Ut);break e}ut=st;break e;case 3:st.flags=st.flags&-65537|128;case 0:if(st=dt.payload,Ut=typeof st=="function"?st.call(ot,ut,Ut):st,Ut==null)break e;ut=A$1({},ut,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 ot={eventTime:ot,lane:Ut,tag:tt.tag,payload:tt.payload,callback:tt.callback,next:null},lt===null?(rt=lt=ot,nt=ut):lt=lt.next=ot,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(lt===null&&(nt=ut),$.baseState=nt,$.firstBaseUpdate=rt,$.lastBaseUpdate=lt,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=ut}}function ih(o,s,_){if(o=s.effects,s.effects=null,o!==null)for(s=0;sTt?(ft=Vt,Vt=null):ft=Vt.sibling;var Wt=Ut(pt,Vt,Bt[Tt],ht);if(Wt===null){Vt===null&&(Vt=ft);break}o&&Vt&&Wt.alternate===null&&s(pt,Vt),Rt=_e(Wt,Rt,Tt),gt===null?mt=Wt:gt.sibling=Wt,gt=Wt,Vt=ft}if(Tt===Bt.length)return _(pt,Vt),I&&tg(pt,Tt),mt;if(Vt===null){for(;TtTt?(ft=Vt,Vt=null):ft=Vt.sibling;var yt=Ut(pt,Vt,Wt.value,ht);if(yt===null){Vt===null&&(Vt=ft);break}o&&Vt&&yt.alternate===null&&s(pt,Vt),Rt=_e(yt,Rt,Tt),gt===null?mt=yt:gt.sibling=yt,gt=yt,Vt=ft}if(Wt.done)return _(pt,Vt),I&&tg(pt,Tt),mt;if(Vt===null){for(;!Wt.done;Tt++,Wt=Bt.next())Wt=ut(pt,Wt.value,ht),Wt!==null&&(Rt=_e(Wt,Rt,Tt),gt===null?mt=Wt:gt.sibling=Wt,gt=Wt);return I&&tg(pt,Tt),mt}for(Vt=j(pt,Vt);!Wt.done;Tt++,Wt=Bt.next())Wt=ot(Vt,pt,Tt,Wt.value,ht),Wt!==null&&(o&&Wt.alternate!==null&&Vt.delete(Wt.key===null?Tt:Wt.key),Rt=_e(Wt,Rt,Tt),gt===null?mt=Wt:gt.sibling=Wt,gt=Wt);return o&&Vt.forEach(function(Kt){return s(pt,Kt)}),I&&tg(pt,Tt),mt}function St(pt,Rt,Bt,ht){if(typeof Bt=="object"&&Bt!==null&&Bt.type===ya&&Bt.key===null&&(Bt=Bt.props.children),typeof Bt=="object"&&Bt!==null){switch(Bt.$$typeof){case va:e:{for(var mt=Bt.key,gt=Rt;gt!==null;){if(gt.key===mt){if(mt=Bt.type,mt===ya){if(gt.tag===7){_(pt,gt.sibling),Rt=$(gt,Bt.props.children),Rt.return=pt,pt=Rt;break e}}else if(gt.elementType===mt||typeof mt=="object"&&mt!==null&&mt.$$typeof===Ha&&uh(mt)===gt.type){_(pt,gt.sibling),Rt=$(gt,Bt.props),Rt.ref=sh(pt,gt,Bt),Rt.return=pt,pt=Rt;break e}_(pt,gt);break}else s(pt,gt);gt=gt.sibling}Bt.type===ya?(Rt=Ah(Bt.props.children,pt.mode,ht,Bt.key),Rt.return=pt,pt=Rt):(ht=yh(Bt.type,Bt.key,Bt.props,null,pt.mode,ht),ht.ref=sh(pt,Rt,Bt),ht.return=pt,pt=ht)}return et(pt);case wa:e:{for(gt=Bt.key;Rt!==null;){if(Rt.key===gt)if(Rt.tag===4&&Rt.stateNode.containerInfo===Bt.containerInfo&&Rt.stateNode.implementation===Bt.implementation){_(pt,Rt.sibling),Rt=$(Rt,Bt.children||[]),Rt.return=pt,pt=Rt;break e}else{_(pt,Rt);break}else s(pt,Rt);Rt=Rt.sibling}Rt=zh(Bt,pt.mode,ht),Rt.return=pt,pt=Rt}return et(pt);case Ha:return gt=Bt._init,St(pt,Rt,gt(Bt._payload),ht)}if(eb(Bt))return st(pt,Rt,Bt,ht);if(Ka(Bt))return dt(pt,Rt,Bt,ht);th(pt,Bt)}return typeof Bt=="string"&&Bt!==""||typeof Bt=="number"?(Bt=""+Bt,Rt!==null&&Rt.tag===6?(_(pt,Rt.sibling),Rt=$(Rt,Bt),Rt.return=pt,pt=Rt):(_(pt,Rt),Rt=xh(Bt,pt.mode,ht),Rt.return=pt,pt=Rt),et(pt)):_(pt,Rt)}return St}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 lt=_.getDerivedStateFromProps,ut=typeof lt=="function"||typeof et.getSnapshotBeforeUpdate=="function";ut||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 lt=="function"&&(kh(s,_,lt,j),nt=s.memoizedState),(tt=$g||oh(s,_,tt,j,Ut,nt,rt))?(ut||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,ut=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 ot=_.getDerivedStateFromProps;(lt=typeof ot=="function"||typeof et.getSnapshotBeforeUpdate=="function")||typeof et.UNSAFE_componentWillReceiveProps!="function"&&typeof et.componentWillReceiveProps!="function"||(tt!==ut||Ut!==nt)&&qh(s,et,j,nt),$g=!1,Ut=s.memoizedState,et.state=Ut,gh(s,j,et,$);var st=s.memoizedState;tt!==ut||Ut!==st||Wf.current||$g?(typeof ot=="function"&&(kh(s,_,ot,j),st=s.memoizedState),(rt=$g||oh(s,_,rt,j,Ut,st,nt)||!1)?(lt||typeof et.UNSAFE_componentWillUpdate!="function"&&typeof et.componentWillUpdate!="function"||(typeof et.componentWillUpdate=="function"&&et.componentWillUpdate(j,st,nt),typeof et.UNSAFE_componentWillUpdate=="function"&&et.UNSAFE_componentWillUpdate(j,st,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=st),et.props=j,et.state=st,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,lt=0,ut=o,Ut=null;t:for(;;){for(var ot;ut!==_||$!==0&&ut.nodeType!==3||(tt=et+$),ut!==_e||j!==0&&ut.nodeType!==3||(nt=et+j),ut.nodeType===3&&(et+=ut.nodeValue.length),(ot=ut.firstChild)!==null;)Ut=ut,ut=ot;for(;;){if(ut===o)break t;if(Ut===_&&++rt===$&&(tt=et),Ut===_e&&++lt===j&&(nt=et),(ot=ut.nextSibling)!==null)break;ut=Ut,Ut=ut.parentNode}ut=ot}_=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 st=s.alternate;if(s.flags&1024)switch(s.tag){case 0:case 11:case 15:break;case 1:if(st!==null){var dt=st.memoizedProps,St=st.memoizedState,pt=s.stateNode,Rt=pt.getSnapshotBeforeUpdate(s.elementType===s.type?dt:Lg(s.type,dt),St);pt.__reactInternalSnapshotBeforeUpdate=Rt}break;case 3:var Bt=s.stateNode.containerInfo;Bt.nodeType===1?Bt.textContent="":Bt.nodeType===9&&Bt.documentElement&&Bt.removeChild(Bt.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p$1(163))}}catch(ht){W(s,s.return,ht)}if(o=s.sibling,o!==null){o.return=s.return,V=o;break}V=s.return}return st=Oj,Oj=!1,st}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(dt){W(o,o.return,dt)}try{Qj(5,o,o.return)}catch(dt){W(o,o.return,dt)}}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(dt){W(o,o.return,dt)}}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 lt=rt.pending;lt===null?nt.next=nt:(nt.next=lt.next,lt.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,lt=0,ut=et,Ut=0,ot=0,st=0,dt=1,St=1,pt=1,Rt=0,Bt="",ht=$,mt=_e,gt=j,Vt=Bt;St;)switch(st=Rt,Rt=next()){case 40:if(st!=108&&charat(Vt,ut-1)==58){indexof(Vt+=replace(delimit(Rt),"&","&\f"),"&\f")!=-1&&(pt=-1);break}case 34:case 39:case 91:Vt+=delimit(Rt);break;case 9:case 10:case 13:case 32:Vt+=whitespace(st);break;case 92:Vt+=escaping(caret()-1,7);continue;case 47:switch(peek()){case 42:case 47:append(comment(commenter(next(),caret()),s,_),nt);break;default:Vt+="/"}break;case 123*dt:tt[rt++]=strlen(Vt)*pt;case 125*dt:case 59:case 0:switch(Rt){case 0:case 125:St=0;case 59+lt:ot>0&&strlen(Vt)-ut&&append(ot>32?declaration(Vt+";",j,_,ut-1):declaration(replace(Vt," ","")+";",j,_,ut-2),nt);break;case 59:Vt+=";";default:if(append(gt=ruleset(Vt,s,_,rt,lt,$,tt,Bt,ht=[],mt=[],ut),_e),Rt===123)if(lt===0)parse$1(Vt,s,gt,gt,ht,_e,ut,tt,mt);else switch(Ut===99&&charat(Vt,3)===110?100:Ut){case 100:case 109:case 115:parse$1(o,gt,gt,j&&append(ruleset(o,gt,gt,0,0,$,tt,Bt,$,ht=[],ut),mt),$,mt,ut,tt,j?ht:mt);break;default:parse$1(Vt,gt,gt,gt,[""],mt,0,tt,mt)}}rt=lt=ot=0,dt=pt=1,Bt=Vt="",ut=et;break;case 58:ut=1+strlen(Vt),ot=st;default:if(dt<1){if(Rt==123)--dt;else if(Rt==125&&dt++==0&&prev()==125)continue}switch(Vt+=from$1(Rt),Rt*dt){case 38:pt=lt>0?1:(Vt+="\f",-1);break;case 44:tt[rt++]=(strlen(Vt)-1)*pt,pt=1;break;case 64:peek()===45&&(Vt+=delimit(next())),Ut=peek(),lt=ut=strlen(Bt=Vt+=identifier(caret())),Rt++;break;case 45:st===45&&strlen(Vt)==2&&(dt=0)}}return _e}function ruleset(o,s,_,j,$,_e,et,tt,nt,rt,lt){for(var ut=$-1,Ut=$===0?_e:[""],ot=sizeof(Ut),st=0,dt=0,St=0;st0?Ut[pt]+" "+Rt:replace(Rt,/&\f/g,Ut[pt])))&&(nt[St++]=Bt);return node(o,s,_,$===0?RULESET:tt,nt,rt,lt)}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(dt){var St=dt.getAttribute("data-emotion");St.indexOf(" ")!==-1&&(document.head.appendChild(dt),dt.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(dt){for(var St=dt.getAttribute("data-emotion").split(" "),pt=1;pt"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(et){return ja.call(ma,et)?!0:ja.call(la,et)?!1:ka.test(et)?ma[et]=!0:(la[et]=!0,!1)}function pa(et,tt,nt,it){if(nt!==null&&nt.type===0)return!1;switch(typeof tt){case"function":case"symbol":return!0;case"boolean":return it?!1:nt!==null?!nt.acceptsBooleans:(et=et.toLowerCase().slice(0,5),et!=="data-"&&et!=="aria-");default:return!1}}function qa(et,tt,nt,it){if(tt===null||typeof tt>"u"||pa(et,tt,nt,it))return!0;if(it)return!1;if(nt!==null)switch(nt.type){case 3:return!tt;case 4:return tt===!1;case 5:return isNaN(tt);case 6:return isNaN(tt)||1>tt}return!1}function v$1(et,tt,nt,it,ot,Ut,Ft){this.acceptsBooleans=tt===2||tt===3||tt===4,this.attributeName=it,this.attributeNamespace=ot,this.mustUseProperty=nt,this.propertyName=et,this.type=tt,this.sanitizeURL=Ut,this.removeEmptyString=Ft}var z$2={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(et){z$2[et]=new v$1(et,0,!1,et,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(et){var tt=et[0];z$2[tt]=new v$1(tt,1,!1,et[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(et){z$2[et]=new v$1(et,2,!1,et.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(et){z$2[et]=new v$1(et,2,!1,et,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(et){z$2[et]=new v$1(et,3,!1,et.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(et){z$2[et]=new v$1(et,3,!0,et,null,!1,!1)});["capture","download"].forEach(function(et){z$2[et]=new v$1(et,4,!1,et,null,!1,!1)});["cols","rows","size","span"].forEach(function(et){z$2[et]=new v$1(et,6,!1,et,null,!1,!1)});["rowSpan","start"].forEach(function(et){z$2[et]=new v$1(et,5,!1,et.toLowerCase(),null,!1,!1)});var ra=/[\-:]([a-z])/g;function sa(et){return et[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(et){var tt=et.replace(ra,sa);z$2[tt]=new v$1(tt,1,!1,et,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(et){var tt=et.replace(ra,sa);z$2[tt]=new v$1(tt,1,!1,et,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(et){var tt=et.replace(ra,sa);z$2[tt]=new v$1(tt,1,!1,et,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(et){z$2[et]=new v$1(et,1,!1,et.toLowerCase(),null,!1,!1)});z$2.xlinkHref=new v$1("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(et){z$2[et]=new v$1(et,1,!1,et.toLowerCase(),null,!0,!0)});function ta(et,tt,nt,it){var ot=z$2.hasOwnProperty(tt)?z$2[tt]:null;(ot!==null?ot.type!==0:it||!(2Qt||ot[Ft]!==Ut[Qt]){var Bt=` +`+ot[Ft].replace(" at new "," at ");return et.displayName&&Bt.includes("")&&(Bt=Bt.replace("",et.displayName)),Bt}while(1<=Ft&&0<=Qt);break}}}finally{Na=!1,Error.prepareStackTrace=nt}return(et=et?et.displayName||et.name:"")?Ma(et):""}function Pa(et){switch(et.tag){case 5:return Ma(et.type);case 16:return Ma("Lazy");case 13:return Ma("Suspense");case 19:return Ma("SuspenseList");case 0:case 2:case 15:return et=Oa(et.type,!1),et;case 11:return et=Oa(et.type.render,!1),et;case 1:return et=Oa(et.type,!0),et;default:return""}}function Qa(et){if(et==null)return null;if(typeof et=="function")return et.displayName||et.name||null;if(typeof et=="string")return et;switch(et){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 et=="object")switch(et.$$typeof){case Ca:return(et.displayName||"Context")+".Consumer";case Ba:return(et._context.displayName||"Context")+".Provider";case Da:var tt=et.render;return et=et.displayName,et||(et=tt.displayName||tt.name||"",et=et!==""?"ForwardRef("+et+")":"ForwardRef"),et;case Ga:return tt=et.displayName||null,tt!==null?tt:Qa(et.type)||"Memo";case Ha:tt=et._payload,et=et._init;try{return Qa(et(tt))}catch{}}return null}function Ra(et){var tt=et.type;switch(et.tag){case 24:return"Cache";case 9:return(tt.displayName||"Context")+".Consumer";case 10:return(tt._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return et=tt.render,et=et.displayName||et.name||"",tt.displayName||(et!==""?"ForwardRef("+et+")":"ForwardRef");case 7:return"Fragment";case 5:return tt;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Qa(tt);case 8:return tt===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 tt=="function")return tt.displayName||tt.name||null;if(typeof tt=="string")return tt}return null}function Sa(et){switch(typeof et){case"boolean":case"number":case"string":case"undefined":return et;case"object":return et;default:return""}}function Ta(et){var tt=et.type;return(et=et.nodeName)&&et.toLowerCase()==="input"&&(tt==="checkbox"||tt==="radio")}function Ua(et){var tt=Ta(et)?"checked":"value",nt=Object.getOwnPropertyDescriptor(et.constructor.prototype,tt),it=""+et[tt];if(!et.hasOwnProperty(tt)&&typeof nt<"u"&&typeof nt.get=="function"&&typeof nt.set=="function"){var ot=nt.get,Ut=nt.set;return Object.defineProperty(et,tt,{configurable:!0,get:function(){return ot.call(this)},set:function(Ft){it=""+Ft,Ut.call(this,Ft)}}),Object.defineProperty(et,tt,{enumerable:nt.enumerable}),{getValue:function(){return it},setValue:function(Ft){it=""+Ft},stopTracking:function(){et._valueTracker=null,delete et[tt]}}}}function Va(et){et._valueTracker||(et._valueTracker=Ua(et))}function Wa(et){if(!et)return!1;var tt=et._valueTracker;if(!tt)return!0;var nt=tt.getValue(),it="";return et&&(it=Ta(et)?et.checked?"true":"false":et.value),et=it,et!==nt?(tt.setValue(et),!0):!1}function Xa(et){if(et=et||(typeof document<"u"?document:void 0),typeof et>"u")return null;try{return et.activeElement||et.body}catch{return et.body}}function Ya(et,tt){var nt=tt.checked;return A$1({},tt,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:nt??et._wrapperState.initialChecked})}function Za(et,tt){var nt=tt.defaultValue==null?"":tt.defaultValue,it=tt.checked!=null?tt.checked:tt.defaultChecked;nt=Sa(tt.value!=null?tt.value:nt),et._wrapperState={initialChecked:it,initialValue:nt,controlled:tt.type==="checkbox"||tt.type==="radio"?tt.checked!=null:tt.value!=null}}function ab(et,tt){tt=tt.checked,tt!=null&&ta(et,"checked",tt,!1)}function bb(et,tt){ab(et,tt);var nt=Sa(tt.value),it=tt.type;if(nt!=null)it==="number"?(nt===0&&et.value===""||et.value!=nt)&&(et.value=""+nt):et.value!==""+nt&&(et.value=""+nt);else if(it==="submit"||it==="reset"){et.removeAttribute("value");return}tt.hasOwnProperty("value")?cb(et,tt.type,nt):tt.hasOwnProperty("defaultValue")&&cb(et,tt.type,Sa(tt.defaultValue)),tt.checked==null&&tt.defaultChecked!=null&&(et.defaultChecked=!!tt.defaultChecked)}function db(et,tt,nt){if(tt.hasOwnProperty("value")||tt.hasOwnProperty("defaultValue")){var it=tt.type;if(!(it!=="submit"&&it!=="reset"||tt.value!==void 0&&tt.value!==null))return;tt=""+et._wrapperState.initialValue,nt||tt===et.value||(et.value=tt),et.defaultValue=tt}nt=et.name,nt!==""&&(et.name=""),et.defaultChecked=!!et._wrapperState.initialChecked,nt!==""&&(et.name=nt)}function cb(et,tt,nt){(tt!=="number"||Xa(et.ownerDocument)!==et)&&(nt==null?et.defaultValue=""+et._wrapperState.initialValue:et.defaultValue!==""+nt&&(et.defaultValue=""+nt))}var eb=Array.isArray;function fb(et,tt,nt,it){if(et=et.options,tt){tt={};for(var ot=0;ot"+tt.valueOf().toString()+"",tt=mb.firstChild;et.firstChild;)et.removeChild(et.firstChild);for(;tt.firstChild;)et.appendChild(tt.firstChild)}});function ob(et,tt){if(tt){var nt=et.firstChild;if(nt&&nt===et.lastChild&&nt.nodeType===3){nt.nodeValue=tt;return}}et.textContent=tt}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(et){qb.forEach(function(tt){tt=tt+et.charAt(0).toUpperCase()+et.substring(1),pb[tt]=pb[et]})});function rb(et,tt,nt){return tt==null||typeof tt=="boolean"||tt===""?"":nt||typeof tt!="number"||tt===0||pb.hasOwnProperty(et)&&pb[et]?(""+tt).trim():tt+"px"}function sb(et,tt){et=et.style;for(var nt in tt)if(tt.hasOwnProperty(nt)){var it=nt.indexOf("--")===0,ot=rb(nt,tt[nt],it);nt==="float"&&(nt="cssFloat"),it?et.setProperty(nt,ot):et[nt]=ot}}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(et,tt){if(tt){if(tb[et]&&(tt.children!=null||tt.dangerouslySetInnerHTML!=null))throw Error(p$1(137,et));if(tt.dangerouslySetInnerHTML!=null){if(tt.children!=null)throw Error(p$1(60));if(typeof tt.dangerouslySetInnerHTML!="object"||!("__html"in tt.dangerouslySetInnerHTML))throw Error(p$1(61))}if(tt.style!=null&&typeof tt.style!="object")throw Error(p$1(62))}}function vb(et,tt){if(et.indexOf("-")===-1)return typeof tt.is=="string";switch(et){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(et){return et=et.target||et.srcElement||window,et.correspondingUseElement&&(et=et.correspondingUseElement),et.nodeType===3?et.parentNode:et}var yb=null,zb=null,Ab=null;function Bb(et){if(et=Cb(et)){if(typeof yb!="function")throw Error(p$1(280));var tt=et.stateNode;tt&&(tt=Db(tt),yb(et.stateNode,et.type,tt))}}function Eb(et){zb?Ab?Ab.push(et):Ab=[et]:zb=et}function Fb(){if(zb){var et=zb,tt=Ab;if(Ab=zb=null,Bb(et),tt)for(et=0;et>>=0,et===0?32:31-(pc(et)/qc|0)|0}var rc=64,sc=4194304;function tc(et){switch(et&-et){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 et&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return et&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return et}}function uc(et,tt){var nt=et.pendingLanes;if(nt===0)return 0;var it=0,ot=et.suspendedLanes,Ut=et.pingedLanes,Ft=nt&268435455;if(Ft!==0){var Qt=Ft&~ot;Qt!==0?it=tc(Qt):(Ut&=Ft,Ut!==0&&(it=tc(Ut)))}else Ft=nt&~ot,Ft!==0?it=tc(Ft):Ut!==0&&(it=tc(Ut));if(it===0)return 0;if(tt!==0&&tt!==it&&!(tt&ot)&&(ot=it&-it,Ut=tt&-tt,ot>=Ut||ot===16&&(Ut&4194240)!==0))return tt;if(it&4&&(it|=nt&16),tt=et.entangledLanes,tt!==0)for(et=et.entanglements,tt&=it;0nt;nt++)tt.push(et);return tt}function Ac(et,tt,nt){et.pendingLanes|=tt,tt!==536870912&&(et.suspendedLanes=0,et.pingedLanes=0),et=et.eventTimes,tt=31-oc(tt),et[tt]=nt}function Bc(et,tt){var nt=et.pendingLanes&~tt;et.pendingLanes=tt,et.suspendedLanes=0,et.pingedLanes=0,et.expiredLanes&=tt,et.mutableReadLanes&=tt,et.entangledLanes&=tt,tt=et.entanglements;var it=et.eventTimes;for(et=et.expirationTimes;0=be$1),ee$1=String.fromCharCode(32),fe=!1;function ge$1(et,tt){switch(et){case"keyup":return $d.indexOf(tt.keyCode)!==-1;case"keydown":return tt.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function he(et){return et=et.detail,typeof et=="object"&&"data"in et?et.data:null}var ie$1=!1;function je$1(et,tt){switch(et){case"compositionend":return he(tt);case"keypress":return tt.which!==32?null:(fe=!0,ee$1);case"textInput":return et=tt.data,et===ee$1&&fe?null:et;default:return null}}function ke$1(et,tt){if(ie$1)return et==="compositionend"||!ae$1&&ge$1(et,tt)?(et=nd(),md=ld=kd=null,ie$1=!1,et):null;switch(et){case"paste":return null;case"keypress":if(!(tt.ctrlKey||tt.altKey||tt.metaKey)||tt.ctrlKey&&tt.altKey){if(tt.char&&1=tt)return{node:nt,offset:tt-et};et=it}e:{for(;nt;){if(nt.nextSibling){nt=nt.nextSibling;break e}nt=nt.parentNode}nt=void 0}nt=Je$1(nt)}}function Le$1(et,tt){return et&&tt?et===tt?!0:et&&et.nodeType===3?!1:tt&&tt.nodeType===3?Le$1(et,tt.parentNode):"contains"in et?et.contains(tt):et.compareDocumentPosition?!!(et.compareDocumentPosition(tt)&16):!1:!1}function Me$1(){for(var et=window,tt=Xa();tt instanceof et.HTMLIFrameElement;){try{var nt=typeof tt.contentWindow.location.href=="string"}catch{nt=!1}if(nt)et=tt.contentWindow;else break;tt=Xa(et.document)}return tt}function Ne$1(et){var tt=et&&et.nodeName&&et.nodeName.toLowerCase();return tt&&(tt==="input"&&(et.type==="text"||et.type==="search"||et.type==="tel"||et.type==="url"||et.type==="password")||tt==="textarea"||et.contentEditable==="true")}function Oe$2(et){var tt=Me$1(),nt=et.focusedElem,it=et.selectionRange;if(tt!==nt&&nt&&nt.ownerDocument&&Le$1(nt.ownerDocument.documentElement,nt)){if(it!==null&&Ne$1(nt)){if(tt=it.start,et=it.end,et===void 0&&(et=tt),"selectionStart"in nt)nt.selectionStart=tt,nt.selectionEnd=Math.min(et,nt.value.length);else if(et=(tt=nt.ownerDocument||document)&&tt.defaultView||window,et.getSelection){et=et.getSelection();var ot=nt.textContent.length,Ut=Math.min(it.start,ot);it=it.end===void 0?Ut:Math.min(it.end,ot),!et.extend&&Ut>it&&(ot=it,it=Ut,Ut=ot),ot=Ke$2(nt,Ut);var Ft=Ke$2(nt,it);ot&&Ft&&(et.rangeCount!==1||et.anchorNode!==ot.node||et.anchorOffset!==ot.offset||et.focusNode!==Ft.node||et.focusOffset!==Ft.offset)&&(tt=tt.createRange(),tt.setStart(ot.node,ot.offset),et.removeAllRanges(),Ut>it?(et.addRange(tt),et.extend(Ft.node,Ft.offset)):(tt.setEnd(Ft.node,Ft.offset),et.addRange(tt)))}}for(tt=[],et=nt;et=et.parentNode;)et.nodeType===1&&tt.push({element:et,left:et.scrollLeft,top:et.scrollTop});for(typeof nt.focus=="function"&&nt.focus(),nt=0;nt=document.documentMode,Qe$1=null,Re$1=null,Se$1=null,Te$1=!1;function Ue$1(et,tt,nt){var it=nt.window===nt?nt.document:nt.nodeType===9?nt:nt.ownerDocument;Te$1||Qe$1==null||Qe$1!==Xa(it)||(it=Qe$1,"selectionStart"in it&&Ne$1(it)?it={start:it.selectionStart,end:it.selectionEnd}:(it=(it.ownerDocument&&it.ownerDocument.defaultView||window).getSelection(),it={anchorNode:it.anchorNode,anchorOffset:it.anchorOffset,focusNode:it.focusNode,focusOffset:it.focusOffset}),Se$1&&Ie$1(Se$1,it)||(Se$1=it,it=oe$1(Re$1,"onSelect"),0Tf||(et.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G$1(et,tt){Tf++,Sf[Tf]=et.current,et.current=tt}var Vf={},H$1=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(et,tt){var nt=et.type.contextTypes;if(!nt)return Vf;var it=et.stateNode;if(it&&it.__reactInternalMemoizedUnmaskedChildContext===tt)return it.__reactInternalMemoizedMaskedChildContext;var ot={},Ut;for(Ut in nt)ot[Ut]=tt[Ut];return it&&(et=et.stateNode,et.__reactInternalMemoizedUnmaskedChildContext=tt,et.__reactInternalMemoizedMaskedChildContext=ot),ot}function Zf(et){return et=et.childContextTypes,et!=null}function $f(){E$1(Wf),E$1(H$1)}function ag(et,tt,nt){if(H$1.current!==Vf)throw Error(p$1(168));G$1(H$1,tt),G$1(Wf,nt)}function bg(et,tt,nt){var it=et.stateNode;if(tt=tt.childContextTypes,typeof it.getChildContext!="function")return nt;it=it.getChildContext();for(var ot in it)if(!(ot in tt))throw Error(p$1(108,Ra(et)||"Unknown",ot));return A$1({},nt,it)}function cg(et){return et=(et=et.stateNode)&&et.__reactInternalMemoizedMergedChildContext||Vf,Xf=H$1.current,G$1(H$1,et),G$1(Wf,Wf.current),!0}function dg(et,tt,nt){var it=et.stateNode;if(!it)throw Error(p$1(169));nt?(et=bg(et,tt,Xf),it.__reactInternalMemoizedMergedChildContext=et,E$1(Wf),E$1(H$1),G$1(H$1,et)):E$1(Wf),G$1(Wf,nt)}var eg=null,fg=!1,gg=!1;function hg(et){eg===null?eg=[et]:eg.push(et)}function ig(et){fg=!0,hg(et)}function jg(){if(!gg&&eg!==null){gg=!0;var et=0,tt=C;try{var nt=eg;for(C=1;et>=Ft,ot-=Ft,rg=1<<32-oc(tt)+ot|nt<En?(an=Qn,Qn=null):an=Qn.sibling;var rn=Zt(tn,Qn,nn[En],sn);if(rn===null){Qn===null&&(Qn=an);break}et&&Qn&&rn.alternate===null&&tt(tn,Qn),ln=Ut(rn,ln,En),dn===null?Kt=rn:dn.sibling=rn,dn=rn,Qn=an}if(En===nn.length)return nt(tn,Qn),I$1&&tg(tn,En),Kt;if(Qn===null){for(;EnEn?(an=Qn,Qn=null):an=Qn.sibling;var gn=Zt(tn,Qn,rn.value,sn);if(gn===null){Qn===null&&(Qn=an);break}et&&Qn&&gn.alternate===null&&tt(tn,Qn),ln=Ut(gn,ln,En),dn===null?Kt=gn:dn.sibling=gn,dn=gn,Qn=an}if(rn.done)return nt(tn,Qn),I$1&&tg(tn,En),Kt;if(Qn===null){for(;!rn.done;En++,rn=nn.next())rn=Xt(tn,rn.value,sn),rn!==null&&(ln=Ut(rn,ln,En),dn===null?Kt=rn:dn.sibling=rn,dn=rn);return I$1&&tg(tn,En),Kt}for(Qn=it(tn,Qn);!rn.done;En++,rn=nn.next())rn=Yt(Qn,tn,En,rn.value,sn),rn!==null&&(et&&rn.alternate!==null&&Qn.delete(rn.key===null?En:rn.key),ln=Ut(rn,ln,En),dn===null?Kt=rn:dn.sibling=rn,dn=rn);return et&&Qn.forEach(function(un){return tt(tn,un)}),I$1&&tg(tn,En),Kt}function en(tn,ln,nn,sn){if(typeof nn=="object"&&nn!==null&&nn.type===ya&&nn.key===null&&(nn=nn.props.children),typeof nn=="object"&&nn!==null){switch(nn.$$typeof){case va:e:{for(var Kt=nn.key,dn=ln;dn!==null;){if(dn.key===Kt){if(Kt=nn.type,Kt===ya){if(dn.tag===7){nt(tn,dn.sibling),ln=ot(dn,nn.props.children),ln.return=tn,tn=ln;break e}}else if(dn.elementType===Kt||typeof Kt=="object"&&Kt!==null&&Kt.$$typeof===Ha&&uh(Kt)===dn.type){nt(tn,dn.sibling),ln=ot(dn,nn.props),ln.ref=sh(tn,dn,nn),ln.return=tn,tn=ln;break e}nt(tn,dn);break}else tt(tn,dn);dn=dn.sibling}nn.type===ya?(ln=Ah(nn.props.children,tn.mode,sn,nn.key),ln.return=tn,tn=ln):(sn=yh(nn.type,nn.key,nn.props,null,tn.mode,sn),sn.ref=sh(tn,ln,nn),sn.return=tn,tn=sn)}return Ft(tn);case wa:e:{for(dn=nn.key;ln!==null;){if(ln.key===dn)if(ln.tag===4&&ln.stateNode.containerInfo===nn.containerInfo&&ln.stateNode.implementation===nn.implementation){nt(tn,ln.sibling),ln=ot(ln,nn.children||[]),ln.return=tn,tn=ln;break e}else{nt(tn,ln);break}else tt(tn,ln);ln=ln.sibling}ln=zh(nn,tn.mode,sn),ln.return=tn,tn=ln}return Ft(tn);case Ha:return dn=nn._init,en(tn,ln,dn(nn._payload),sn)}if(eb(nn))return Mt(tn,ln,nn,sn);if(Ka(nn))return Gt(tn,ln,nn,sn);th(tn,nn)}return typeof nn=="string"&&nn!==""||typeof nn=="number"?(nn=""+nn,ln!==null&&ln.tag===6?(nt(tn,ln.sibling),ln=ot(ln,nn),ln.return=tn,tn=ln):(nt(tn,ln),ln=xh(nn,tn.mode,sn),ln.return=tn,tn=ln),Ft(tn)):nt(tn,ln)}return en}var Bh=vh(!0),Ch=vh(!1),Dh={},Eh=Uf(Dh),Fh=Uf(Dh),Gh=Uf(Dh);function Hh(et){if(et===Dh)throw Error(p$1(174));return et}function Ih(et,tt){switch(G$1(Gh,tt),G$1(Fh,et),G$1(Eh,Dh),et=tt.nodeType,et){case 9:case 11:tt=(tt=tt.documentElement)?tt.namespaceURI:lb(null,"");break;default:et=et===8?tt.parentNode:tt,tt=et.namespaceURI||null,et=et.tagName,tt=lb(tt,et)}E$1(Eh),G$1(Eh,tt)}function Jh(){E$1(Eh),E$1(Fh),E$1(Gh)}function Kh(et){Hh(Gh.current);var tt=Hh(Eh.current),nt=lb(tt,et.type);tt!==nt&&(G$1(Fh,et),G$1(Eh,nt))}function Lh(et){Fh.current===et&&(E$1(Eh),E$1(Fh))}var M$1=Uf(0);function Mh(et){for(var tt=et;tt!==null;){if(tt.tag===13){var nt=tt.memoizedState;if(nt!==null&&(nt=nt.dehydrated,nt===null||nt.data==="$?"||nt.data==="$!"))return tt}else if(tt.tag===19&&tt.memoizedProps.revealOrder!==void 0){if(tt.flags&128)return tt}else if(tt.child!==null){tt.child.return=tt,tt=tt.child;continue}if(tt===et)break;for(;tt.sibling===null;){if(tt.return===null||tt.return===et)return null;tt=tt.return}tt.sibling.return=tt.return,tt=tt.sibling}return null}var Nh=[];function Oh(){for(var et=0;etnt?nt:4,et(!0);var it=Qh.transition;Qh.transition={};try{et(!1),tt()}finally{C=nt,Qh.transition=it}}function Fi(){return di().memoizedState}function Gi(et,tt,nt){var it=lh(et);if(nt={lane:it,action:nt,hasEagerState:!1,eagerState:null,next:null},Hi(et))Ii(tt,nt);else if(nt=Yg(et,tt,nt,it),nt!==null){var ot=L$1();mh(nt,et,it,ot),Ji(nt,tt,it)}}function ri(et,tt,nt){var it=lh(et),ot={lane:it,action:nt,hasEagerState:!1,eagerState:null,next:null};if(Hi(et))Ii(tt,ot);else{var Ut=et.alternate;if(et.lanes===0&&(Ut===null||Ut.lanes===0)&&(Ut=tt.lastRenderedReducer,Ut!==null))try{var Ft=tt.lastRenderedState,Qt=Ut(Ft,nt);if(ot.hasEagerState=!0,ot.eagerState=Qt,He$1(Qt,Ft)){var Bt=tt.interleaved;Bt===null?(ot.next=ot,Xg(tt)):(ot.next=Bt.next,Bt.next=ot),tt.interleaved=ot;return}}catch{}finally{}nt=Yg(et,tt,ot,it),nt!==null&&(ot=L$1(),mh(nt,et,it,ot),Ji(nt,tt,it))}}function Hi(et){var tt=et.alternate;return et===N$1||tt!==null&&tt===N$1}function Ii(et,tt){Th=Sh=!0;var nt=et.pending;nt===null?tt.next=tt:(tt.next=nt.next,nt.next=tt),et.pending=tt}function Ji(et,tt,nt){if(nt&4194240){var it=tt.lanes;it&=et.pendingLanes,nt|=it,tt.lanes=nt,Cc(et,nt)}}var ai={readContext:Vg,useCallback:Q$1,useContext:Q$1,useEffect:Q$1,useImperativeHandle:Q$1,useInsertionEffect:Q$1,useLayoutEffect:Q$1,useMemo:Q$1,useReducer:Q$1,useRef:Q$1,useState:Q$1,useDebugValue:Q$1,useDeferredValue:Q$1,useTransition:Q$1,useMutableSource:Q$1,useSyncExternalStore:Q$1,useId:Q$1,unstable_isNewReconciler:!1},Yh={readContext:Vg,useCallback:function(et,tt){return ci().memoizedState=[et,tt===void 0?null:tt],et},useContext:Vg,useEffect:vi,useImperativeHandle:function(et,tt,nt){return nt=nt!=null?nt.concat([et]):null,ti(4194308,4,yi.bind(null,tt,et),nt)},useLayoutEffect:function(et,tt){return ti(4194308,4,et,tt)},useInsertionEffect:function(et,tt){return ti(4,2,et,tt)},useMemo:function(et,tt){var nt=ci();return tt=tt===void 0?null:tt,et=et(),nt.memoizedState=[et,tt],et},useReducer:function(et,tt,nt){var it=ci();return tt=nt!==void 0?nt(tt):tt,it.memoizedState=it.baseState=tt,et={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:et,lastRenderedState:tt},it.queue=et,et=et.dispatch=Gi.bind(null,N$1,et),[it.memoizedState,et]},useRef:function(et){var tt=ci();return et={current:et},tt.memoizedState=et},useState:qi,useDebugValue:Ai,useDeferredValue:function(et){return ci().memoizedState=et},useTransition:function(){var et=qi(!1),tt=et[0];return et=Ei.bind(null,et[1]),ci().memoizedState=et,[tt,et]},useMutableSource:function(){},useSyncExternalStore:function(et,tt,nt){var it=N$1,ot=ci();if(I$1){if(nt===void 0)throw Error(p$1(407));nt=nt()}else{if(nt=tt(),R$1===null)throw Error(p$1(349));Rh&30||ni(it,tt,nt)}ot.memoizedState=nt;var Ut={value:nt,getSnapshot:tt};return ot.queue=Ut,vi(ki.bind(null,it,Ut,et),[et]),it.flags|=2048,li(9,mi.bind(null,it,Ut,nt,tt),void 0,null),nt},useId:function(){var et=ci(),tt=R$1.identifierPrefix;if(I$1){var nt=sg,it=rg;nt=(it&~(1<<32-oc(it)-1)).toString(32)+nt,tt=":"+tt+"R"+nt,nt=Uh++,0<\/script>",et=et.removeChild(et.firstChild)):typeof it.is=="string"?et=Ft.createElement(nt,{is:it.is}):(et=Ft.createElement(nt),nt==="select"&&(Ft=et,it.multiple?Ft.multiple=!0:it.size&&(Ft.size=it.size))):et=Ft.createElementNS(et,nt),et[Of]=tt,et[Pf]=it,Aj(et,tt,!1,!1),tt.stateNode=et;e:{switch(Ft=vb(nt,it),nt){case"dialog":D("cancel",et),D("close",et),ot=it;break;case"iframe":case"object":case"embed":D("load",et),ot=it;break;case"video":case"audio":for(ot=0;otHj&&(tt.flags|=128,it=!0,Ej(Ut,!1),tt.lanes=4194304)}else{if(!it)if(et=Mh(Ft),et!==null){if(tt.flags|=128,it=!0,nt=et.updateQueue,nt!==null&&(tt.updateQueue=nt,tt.flags|=4),Ej(Ut,!0),Ut.tail===null&&Ut.tailMode==="hidden"&&!Ft.alternate&&!I$1)return S$1(tt),null}else 2*B$1()-Ut.renderingStartTime>Hj&&nt!==1073741824&&(tt.flags|=128,it=!0,Ej(Ut,!1),tt.lanes=4194304);Ut.isBackwards?(Ft.sibling=tt.child,tt.child=Ft):(nt=Ut.last,nt!==null?nt.sibling=Ft:tt.child=Ft,Ut.last=Ft)}return Ut.tail!==null?(tt=Ut.tail,Ut.rendering=tt,Ut.tail=tt.sibling,Ut.renderingStartTime=B$1(),tt.sibling=null,nt=M$1.current,G$1(M$1,it?nt&1|2:nt&1),tt):(S$1(tt),null);case 22:case 23:return Ij(),it=tt.memoizedState!==null,et!==null&&et.memoizedState!==null!==it&&(tt.flags|=8192),it&&tt.mode&1?gj&1073741824&&(S$1(tt),tt.subtreeFlags&6&&(tt.flags|=8192)):S$1(tt),null;case 24:return null;case 25:return null}throw Error(p$1(156,tt.tag))}function Jj(et,tt){switch(wg(tt),tt.tag){case 1:return Zf(tt.type)&&$f(),et=tt.flags,et&65536?(tt.flags=et&-65537|128,tt):null;case 3:return Jh(),E$1(Wf),E$1(H$1),Oh(),et=tt.flags,et&65536&&!(et&128)?(tt.flags=et&-65537|128,tt):null;case 5:return Lh(tt),null;case 13:if(E$1(M$1),et=tt.memoizedState,et!==null&&et.dehydrated!==null){if(tt.alternate===null)throw Error(p$1(340));Ig()}return et=tt.flags,et&65536?(tt.flags=et&-65537|128,tt):null;case 19:return E$1(M$1),null;case 4:return Jh(),null;case 10:return Rg(tt.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$1=null;function Mj(et,tt){var nt=et.ref;if(nt!==null)if(typeof nt=="function")try{nt(null)}catch(it){W$1(et,tt,it)}else nt.current=null}function Nj(et,tt,nt){try{nt()}catch(it){W$1(et,tt,it)}}var Oj=!1;function Pj(et,tt){if(Cf=dd,et=Me$1(),Ne$1(et)){if("selectionStart"in et)var nt={start:et.selectionStart,end:et.selectionEnd};else e:{nt=(nt=et.ownerDocument)&&nt.defaultView||window;var it=nt.getSelection&&nt.getSelection();if(it&&it.rangeCount!==0){nt=it.anchorNode;var ot=it.anchorOffset,Ut=it.focusNode;it=it.focusOffset;try{nt.nodeType,Ut.nodeType}catch{nt=null;break e}var Ft=0,Qt=-1,Bt=-1,Vt=0,Wt=0,Xt=et,Zt=null;t:for(;;){for(var Yt;Xt!==nt||ot!==0&&Xt.nodeType!==3||(Qt=Ft+ot),Xt!==Ut||it!==0&&Xt.nodeType!==3||(Bt=Ft+it),Xt.nodeType===3&&(Ft+=Xt.nodeValue.length),(Yt=Xt.firstChild)!==null;)Zt=Xt,Xt=Yt;for(;;){if(Xt===et)break t;if(Zt===nt&&++Vt===ot&&(Qt=Ft),Zt===Ut&&++Wt===it&&(Bt=Ft),(Yt=Xt.nextSibling)!==null)break;Xt=Zt,Zt=Xt.parentNode}Xt=Yt}nt=Qt===-1||Bt===-1?null:{start:Qt,end:Bt}}else nt=null}nt=nt||{start:0,end:0}}else nt=null;for(Df={focusedElem:et,selectionRange:nt},dd=!1,V$1=tt;V$1!==null;)if(tt=V$1,et=tt.child,(tt.subtreeFlags&1028)!==0&&et!==null)et.return=tt,V$1=et;else for(;V$1!==null;){tt=V$1;try{var Mt=tt.alternate;if(tt.flags&1024)switch(tt.tag){case 0:case 11:case 15:break;case 1:if(Mt!==null){var Gt=Mt.memoizedProps,en=Mt.memoizedState,tn=tt.stateNode,ln=tn.getSnapshotBeforeUpdate(tt.elementType===tt.type?Gt:Lg(tt.type,Gt),en);tn.__reactInternalSnapshotBeforeUpdate=ln}break;case 3:var nn=tt.stateNode.containerInfo;nn.nodeType===1?nn.textContent="":nn.nodeType===9&&nn.documentElement&&nn.removeChild(nn.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p$1(163))}}catch(sn){W$1(tt,tt.return,sn)}if(et=tt.sibling,et!==null){et.return=tt.return,V$1=et;break}V$1=tt.return}return Mt=Oj,Oj=!1,Mt}function Qj(et,tt,nt){var it=tt.updateQueue;if(it=it!==null?it.lastEffect:null,it!==null){var ot=it=it.next;do{if((ot.tag&et)===et){var Ut=ot.destroy;ot.destroy=void 0,Ut!==void 0&&Nj(tt,nt,Ut)}ot=ot.next}while(ot!==it)}}function Rj(et,tt){if(tt=tt.updateQueue,tt=tt!==null?tt.lastEffect:null,tt!==null){var nt=tt=tt.next;do{if((nt.tag&et)===et){var it=nt.create;nt.destroy=it()}nt=nt.next}while(nt!==tt)}}function Sj(et){var tt=et.ref;if(tt!==null){var nt=et.stateNode;switch(et.tag){case 5:et=nt;break;default:et=nt}typeof tt=="function"?tt(et):tt.current=et}}function Tj(et){var tt=et.alternate;tt!==null&&(et.alternate=null,Tj(tt)),et.child=null,et.deletions=null,et.sibling=null,et.tag===5&&(tt=et.stateNode,tt!==null&&(delete tt[Of],delete tt[Pf],delete tt[of],delete tt[Qf],delete tt[Rf])),et.stateNode=null,et.return=null,et.dependencies=null,et.memoizedProps=null,et.memoizedState=null,et.pendingProps=null,et.stateNode=null,et.updateQueue=null}function Uj(et){return et.tag===5||et.tag===3||et.tag===4}function Vj(et){e:for(;;){for(;et.sibling===null;){if(et.return===null||Uj(et.return))return null;et=et.return}for(et.sibling.return=et.return,et=et.sibling;et.tag!==5&&et.tag!==6&&et.tag!==18;){if(et.flags&2||et.child===null||et.tag===4)continue e;et.child.return=et,et=et.child}if(!(et.flags&2))return et.stateNode}}function Wj(et,tt,nt){var it=et.tag;if(it===5||it===6)et=et.stateNode,tt?nt.nodeType===8?nt.parentNode.insertBefore(et,tt):nt.insertBefore(et,tt):(nt.nodeType===8?(tt=nt.parentNode,tt.insertBefore(et,nt)):(tt=nt,tt.appendChild(et)),nt=nt._reactRootContainer,nt!=null||tt.onclick!==null||(tt.onclick=Bf));else if(it!==4&&(et=et.child,et!==null))for(Wj(et,tt,nt),et=et.sibling;et!==null;)Wj(et,tt,nt),et=et.sibling}function Xj(et,tt,nt){var it=et.tag;if(it===5||it===6)et=et.stateNode,tt?nt.insertBefore(et,tt):nt.appendChild(et);else if(it!==4&&(et=et.child,et!==null))for(Xj(et,tt,nt),et=et.sibling;et!==null;)Xj(et,tt,nt),et=et.sibling}var X$1=null,Yj=!1;function Zj(et,tt,nt){for(nt=nt.child;nt!==null;)ak(et,tt,nt),nt=nt.sibling}function ak(et,tt,nt){if(lc&&typeof lc.onCommitFiberUnmount=="function")try{lc.onCommitFiberUnmount(kc,nt)}catch{}switch(nt.tag){case 5:U||Mj(nt,tt);case 6:var it=X$1,ot=Yj;X$1=null,Zj(et,tt,nt),X$1=it,Yj=ot,X$1!==null&&(Yj?(et=X$1,nt=nt.stateNode,et.nodeType===8?et.parentNode.removeChild(nt):et.removeChild(nt)):X$1.removeChild(nt.stateNode));break;case 18:X$1!==null&&(Yj?(et=X$1,nt=nt.stateNode,et.nodeType===8?Kf(et.parentNode,nt):et.nodeType===1&&Kf(et,nt),bd(et)):Kf(X$1,nt.stateNode));break;case 4:it=X$1,ot=Yj,X$1=nt.stateNode.containerInfo,Yj=!0,Zj(et,tt,nt),X$1=it,Yj=ot;break;case 0:case 11:case 14:case 15:if(!U&&(it=nt.updateQueue,it!==null&&(it=it.lastEffect,it!==null))){ot=it=it.next;do{var Ut=ot,Ft=Ut.destroy;Ut=Ut.tag,Ft!==void 0&&(Ut&2||Ut&4)&&Nj(nt,tt,Ft),ot=ot.next}while(ot!==it)}Zj(et,tt,nt);break;case 1:if(!U&&(Mj(nt,tt),it=nt.stateNode,typeof it.componentWillUnmount=="function"))try{it.props=nt.memoizedProps,it.state=nt.memoizedState,it.componentWillUnmount()}catch(Qt){W$1(nt,tt,Qt)}Zj(et,tt,nt);break;case 21:Zj(et,tt,nt);break;case 22:nt.mode&1?(U=(it=U)||nt.memoizedState!==null,Zj(et,tt,nt),U=it):Zj(et,tt,nt);break;default:Zj(et,tt,nt)}}function bk(et){var tt=et.updateQueue;if(tt!==null){et.updateQueue=null;var nt=et.stateNode;nt===null&&(nt=et.stateNode=new Lj),tt.forEach(function(it){var ot=ck.bind(null,et,it);nt.has(it)||(nt.add(it),it.then(ot,ot))})}}function dk(et,tt){var nt=tt.deletions;if(nt!==null)for(var it=0;itot&&(ot=Ft),it&=~Ut}if(it=ot,it=B$1()-it,it=(120>it?120:480>it?480:1080>it?1080:1920>it?1920:3e3>it?3e3:4320>it?4320:1960*mk(it/1960))-it,10et?16:et,xk===null)var it=!1;else{if(et=xk,xk=null,yk=0,K$1&6)throw Error(p$1(331));var ot=K$1;for(K$1|=4,V$1=et.current;V$1!==null;){var Ut=V$1,Ft=Ut.child;if(V$1.flags&16){var Qt=Ut.deletions;if(Qt!==null){for(var Bt=0;BtB$1()-gk?Lk(et,0):sk|=nt),Ek(et,tt)}function Zk(et,tt){tt===0&&(et.mode&1?(tt=sc,sc<<=1,!(sc&130023424)&&(sc=4194304)):tt=1);var nt=L$1();et=Zg(et,tt),et!==null&&(Ac(et,tt,nt),Ek(et,nt))}function vj(et){var tt=et.memoizedState,nt=0;tt!==null&&(nt=tt.retryLane),Zk(et,nt)}function ck(et,tt){var nt=0;switch(et.tag){case 13:var it=et.stateNode,ot=et.memoizedState;ot!==null&&(nt=ot.retryLane);break;case 19:it=et.stateNode;break;default:throw Error(p$1(314))}it!==null&&it.delete(tt),Zk(et,nt)}var Wk;Wk=function(et,tt,nt){if(et!==null)if(et.memoizedProps!==tt.pendingProps||Wf.current)Ug=!0;else{if(!(et.lanes&nt)&&!(tt.flags&128))return Ug=!1,zj(et,tt,nt);Ug=!!(et.flags&131072)}else Ug=!1,I$1&&tt.flags&1048576&&ug(tt,ng,tt.index);switch(tt.lanes=0,tt.tag){case 2:var it=tt.type;jj(et,tt),et=tt.pendingProps;var ot=Yf(tt,H$1.current);Tg(tt,nt),ot=Xh(null,tt,it,et,ot,nt);var Ut=bi();return tt.flags|=1,typeof ot=="object"&&ot!==null&&typeof ot.render=="function"&&ot.$$typeof===void 0?(tt.tag=1,tt.memoizedState=null,tt.updateQueue=null,Zf(it)?(Ut=!0,cg(tt)):Ut=!1,tt.memoizedState=ot.state!==null&&ot.state!==void 0?ot.state:null,ah(tt),ot.updater=nh,tt.stateNode=ot,ot._reactInternals=tt,rh(tt,it,et,nt),tt=kj(null,tt,it,!0,Ut,nt)):(tt.tag=0,I$1&&Ut&&vg(tt),Yi(null,tt,ot,nt),tt=tt.child),tt;case 16:it=tt.elementType;e:{switch(jj(et,tt),et=tt.pendingProps,ot=it._init,it=ot(it._payload),tt.type=it,ot=tt.tag=$k(it),et=Lg(it,et),ot){case 0:tt=dj(null,tt,it,et,nt);break e;case 1:tt=ij(null,tt,it,et,nt);break e;case 11:tt=Zi(null,tt,it,et,nt);break e;case 14:tt=aj(null,tt,it,Lg(it.type,et),nt);break e}throw Error(p$1(306,it,""))}return tt;case 0:return it=tt.type,ot=tt.pendingProps,ot=tt.elementType===it?ot:Lg(it,ot),dj(et,tt,it,ot,nt);case 1:return it=tt.type,ot=tt.pendingProps,ot=tt.elementType===it?ot:Lg(it,ot),ij(et,tt,it,ot,nt);case 3:e:{if(lj(tt),et===null)throw Error(p$1(387));it=tt.pendingProps,Ut=tt.memoizedState,ot=Ut.element,bh(et,tt),gh(tt,it,null,nt);var Ft=tt.memoizedState;if(it=Ft.element,Ut.isDehydrated)if(Ut={element:it,isDehydrated:!1,cache:Ft.cache,pendingSuspenseBoundaries:Ft.pendingSuspenseBoundaries,transitions:Ft.transitions},tt.updateQueue.baseState=Ut,tt.memoizedState=Ut,tt.flags&256){ot=Ki(Error(p$1(423)),tt),tt=mj(et,tt,it,nt,ot);break e}else if(it!==ot){ot=Ki(Error(p$1(424)),tt),tt=mj(et,tt,it,nt,ot);break e}else for(yg=Lf(tt.stateNode.containerInfo.firstChild),xg=tt,I$1=!0,zg=null,nt=Ch(tt,null,it,nt),tt.child=nt;nt;)nt.flags=nt.flags&-3|4096,nt=nt.sibling;else{if(Ig(),it===ot){tt=$i(et,tt,nt);break e}Yi(et,tt,it,nt)}tt=tt.child}return tt;case 5:return Kh(tt),et===null&&Eg(tt),it=tt.type,ot=tt.pendingProps,Ut=et!==null?et.memoizedProps:null,Ft=ot.children,Ef(it,ot)?Ft=null:Ut!==null&&Ef(it,Ut)&&(tt.flags|=32),hj(et,tt),Yi(et,tt,Ft,nt),tt.child;case 6:return et===null&&Eg(tt),null;case 13:return pj(et,tt,nt);case 4:return Ih(tt,tt.stateNode.containerInfo),it=tt.pendingProps,et===null?tt.child=Bh(tt,null,it,nt):Yi(et,tt,it,nt),tt.child;case 11:return it=tt.type,ot=tt.pendingProps,ot=tt.elementType===it?ot:Lg(it,ot),Zi(et,tt,it,ot,nt);case 7:return Yi(et,tt,tt.pendingProps,nt),tt.child;case 8:return Yi(et,tt,tt.pendingProps.children,nt),tt.child;case 12:return Yi(et,tt,tt.pendingProps.children,nt),tt.child;case 10:e:{if(it=tt.type._context,ot=tt.pendingProps,Ut=tt.memoizedProps,Ft=ot.value,G$1(Mg,it._currentValue),it._currentValue=Ft,Ut!==null)if(He$1(Ut.value,Ft)){if(Ut.children===ot.children&&!Wf.current){tt=$i(et,tt,nt);break e}}else for(Ut=tt.child,Ut!==null&&(Ut.return=tt);Ut!==null;){var Qt=Ut.dependencies;if(Qt!==null){Ft=Ut.child;for(var Bt=Qt.firstContext;Bt!==null;){if(Bt.context===it){if(Ut.tag===1){Bt=ch(-1,nt&-nt),Bt.tag=2;var Vt=Ut.updateQueue;if(Vt!==null){Vt=Vt.shared;var Wt=Vt.pending;Wt===null?Bt.next=Bt:(Bt.next=Wt.next,Wt.next=Bt),Vt.pending=Bt}}Ut.lanes|=nt,Bt=Ut.alternate,Bt!==null&&(Bt.lanes|=nt),Sg(Ut.return,nt,tt),Qt.lanes|=nt;break}Bt=Bt.next}}else if(Ut.tag===10)Ft=Ut.type===tt.type?null:Ut.child;else if(Ut.tag===18){if(Ft=Ut.return,Ft===null)throw Error(p$1(341));Ft.lanes|=nt,Qt=Ft.alternate,Qt!==null&&(Qt.lanes|=nt),Sg(Ft,nt,tt),Ft=Ut.sibling}else Ft=Ut.child;if(Ft!==null)Ft.return=Ut;else for(Ft=Ut;Ft!==null;){if(Ft===tt){Ft=null;break}if(Ut=Ft.sibling,Ut!==null){Ut.return=Ft.return,Ft=Ut;break}Ft=Ft.return}Ut=Ft}Yi(et,tt,ot.children,nt),tt=tt.child}return tt;case 9:return ot=tt.type,it=tt.pendingProps.children,Tg(tt,nt),ot=Vg(ot),it=it(ot),tt.flags|=1,Yi(et,tt,it,nt),tt.child;case 14:return it=tt.type,ot=Lg(it,tt.pendingProps),ot=Lg(it.type,ot),aj(et,tt,it,ot,nt);case 15:return cj(et,tt,tt.type,tt.pendingProps,nt);case 17:return it=tt.type,ot=tt.pendingProps,ot=tt.elementType===it?ot:Lg(it,ot),jj(et,tt),tt.tag=1,Zf(it)?(et=!0,cg(tt)):et=!1,Tg(tt,nt),ph(tt,it,ot),rh(tt,it,ot,nt),kj(null,tt,it,!0,et,nt);case 19:return yj(et,tt,nt);case 22:return ej(et,tt,nt)}throw Error(p$1(156,tt.tag))};function Gk(et,tt){return ac(et,tt)}function al(et,tt,nt,it){this.tag=et,this.key=nt,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=tt,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=it,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Bg(et,tt,nt,it){return new al(et,tt,nt,it)}function bj(et){return et=et.prototype,!(!et||!et.isReactComponent)}function $k(et){if(typeof et=="function")return bj(et)?1:0;if(et!=null){if(et=et.$$typeof,et===Da)return 11;if(et===Ga)return 14}return 2}function wh(et,tt){var nt=et.alternate;return nt===null?(nt=Bg(et.tag,tt,et.key,et.mode),nt.elementType=et.elementType,nt.type=et.type,nt.stateNode=et.stateNode,nt.alternate=et,et.alternate=nt):(nt.pendingProps=tt,nt.type=et.type,nt.flags=0,nt.subtreeFlags=0,nt.deletions=null),nt.flags=et.flags&14680064,nt.childLanes=et.childLanes,nt.lanes=et.lanes,nt.child=et.child,nt.memoizedProps=et.memoizedProps,nt.memoizedState=et.memoizedState,nt.updateQueue=et.updateQueue,tt=et.dependencies,nt.dependencies=tt===null?null:{lanes:tt.lanes,firstContext:tt.firstContext},nt.sibling=et.sibling,nt.index=et.index,nt.ref=et.ref,nt}function yh(et,tt,nt,it,ot,Ut){var Ft=2;if(it=et,typeof et=="function")bj(et)&&(Ft=1);else if(typeof et=="string")Ft=5;else e:switch(et){case ya:return Ah(nt.children,ot,Ut,tt);case za:Ft=8,ot|=8;break;case Aa:return et=Bg(12,nt,tt,ot|2),et.elementType=Aa,et.lanes=Ut,et;case Ea:return et=Bg(13,nt,tt,ot),et.elementType=Ea,et.lanes=Ut,et;case Fa:return et=Bg(19,nt,tt,ot),et.elementType=Fa,et.lanes=Ut,et;case Ia:return qj(nt,ot,Ut,tt);default:if(typeof et=="object"&&et!==null)switch(et.$$typeof){case Ba:Ft=10;break e;case Ca:Ft=9;break e;case Da:Ft=11;break e;case Ga:Ft=14;break e;case Ha:Ft=16,it=null;break e}throw Error(p$1(130,et==null?et:typeof et,""))}return tt=Bg(Ft,nt,tt,ot),tt.elementType=et,tt.type=it,tt.lanes=Ut,tt}function Ah(et,tt,nt,it){return et=Bg(7,et,it,tt),et.lanes=nt,et}function qj(et,tt,nt,it){return et=Bg(22,et,it,tt),et.elementType=Ia,et.lanes=nt,et.stateNode={isHidden:!1},et}function xh(et,tt,nt){return et=Bg(6,et,null,tt),et.lanes=nt,et}function zh(et,tt,nt){return tt=Bg(4,et.children!==null?et.children:[],et.key,tt),tt.lanes=nt,tt.stateNode={containerInfo:et.containerInfo,pendingChildren:null,implementation:et.implementation},tt}function bl(et,tt,nt,it,ot){this.tag=tt,this.containerInfo=et,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=it,this.onRecoverableError=ot,this.mutableSourceEagerHydrationData=null}function cl(et,tt,nt,it,ot,Ut,Ft,Qt,Bt){return et=new bl(et,tt,nt,Qt,Bt),tt===1?(tt=1,Ut===!0&&(tt|=8)):tt=0,Ut=Bg(3,null,null,tt),et.current=Ut,Ut.stateNode=et,Ut.memoizedState={element:it,isDehydrated:nt,cache:null,transitions:null,pendingSuspenseBoundaries:null},ah(Ut),et}function dl(et,tt,nt){var it=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(tt)}catch(nt){console.error(nt)}}tt(),et.exports=reactDom_production_min})(reactDom);var m$1=reactDomExports;client.createRoot=m$1.createRoot,client.hydrateRoot=m$1.hydrateRoot;function sheetForTag(et){if(et.sheet)return et.sheet;for(var tt=0;tt0?charat(characters,--position):0,column--,character===10&&(column=1,line--),character}function next(){return character=position2||token(character)>3?"":" "}function escaping(et,tt){for(;--tt&&next()&&!(character<48||character>102||character>57&&character<65||character>70&&character<97););return slice(et,caret()+(tt<6&&peek()==32&&next()==32))}function delimiter(et){for(;next();)switch(character){case et:return position;case 34:case 39:et!==34&&et!==39&&delimiter(character);break;case 40:et===41&&delimiter(et);break;case 92:next();break}return position}function commenter(et,tt){for(;next()&&et+character!==47+10;)if(et+character===42+42&&peek()===47)break;return"/*"+slice(tt,position-1)+"*"+from$1(et===47?et:next())}function identifier(et){for(;!token(peek());)next();return slice(et,position)}function compile(et){return dealloc(parse$1("",null,null,null,[""],et=alloc(et),0,[0],et))}function parse$1(et,tt,nt,it,ot,Ut,Ft,Qt,Bt){for(var Vt=0,Wt=0,Xt=Ft,Zt=0,Yt=0,Mt=0,Gt=1,en=1,tn=1,ln=0,nn="",sn=ot,Kt=Ut,dn=it,Qn=nn;en;)switch(Mt=ln,ln=next()){case 40:if(Mt!=108&&charat(Qn,Xt-1)==58){indexof(Qn+=replace(delimit(ln),"&","&\f"),"&\f")!=-1&&(tn=-1);break}case 34:case 39:case 91:Qn+=delimit(ln);break;case 9:case 10:case 13:case 32:Qn+=whitespace(Mt);break;case 92:Qn+=escaping(caret()-1,7);continue;case 47:switch(peek()){case 42:case 47:append(comment(commenter(next(),caret()),tt,nt),Bt);break;default:Qn+="/"}break;case 123*Gt:Qt[Vt++]=strlen(Qn)*tn;case 125*Gt:case 59:case 0:switch(ln){case 0:case 125:en=0;case 59+Wt:Yt>0&&strlen(Qn)-Xt&&append(Yt>32?declaration(Qn+";",it,nt,Xt-1):declaration(replace(Qn," ","")+";",it,nt,Xt-2),Bt);break;case 59:Qn+=";";default:if(append(dn=ruleset(Qn,tt,nt,Vt,Wt,ot,Qt,nn,sn=[],Kt=[],Xt),Ut),ln===123)if(Wt===0)parse$1(Qn,tt,dn,dn,sn,Ut,Xt,Qt,Kt);else switch(Zt===99&&charat(Qn,3)===110?100:Zt){case 100:case 109:case 115:parse$1(et,dn,dn,it&&append(ruleset(et,dn,dn,0,0,ot,Qt,nn,ot,sn=[],Xt),Kt),ot,Kt,Xt,Qt,it?sn:Kt);break;default:parse$1(Qn,dn,dn,dn,[""],Kt,0,Qt,Kt)}}Vt=Wt=Yt=0,Gt=tn=1,nn=Qn="",Xt=Ft;break;case 58:Xt=1+strlen(Qn),Yt=Mt;default:if(Gt<1){if(ln==123)--Gt;else if(ln==125&&Gt++==0&&prev()==125)continue}switch(Qn+=from$1(ln),ln*Gt){case 38:tn=Wt>0?1:(Qn+="\f",-1);break;case 44:Qt[Vt++]=(strlen(Qn)-1)*tn,tn=1;break;case 64:peek()===45&&(Qn+=delimit(next())),Zt=peek(),Wt=Xt=strlen(nn=Qn+=identifier(caret())),ln++;break;case 45:Mt===45&&strlen(Qn)==2&&(Gt=0)}}return Ut}function ruleset(et,tt,nt,it,ot,Ut,Ft,Qt,Bt,Vt,Wt){for(var Xt=ot-1,Zt=ot===0?Ut:[""],Yt=sizeof(Zt),Mt=0,Gt=0,en=0;Mt0?Zt[tn]+" "+ln:replace(ln,/&\f/g,Zt[tn])))&&(Bt[en++]=nn);return node(et,tt,nt,ot===0?RULESET:Qt,Bt,Vt,Wt)}function comment(et,tt,nt){return node(et,tt,nt,COMMENT$1,from$1(char()),substr(et,2,-2),0)}function declaration(et,tt,nt,it){return node(et,tt,nt,DECLARATION,substr(et,0,it),substr(et,it+1,-1),it)}function serialize(et,tt){for(var nt="",it=sizeof(et),ot=0;ot6)switch(charat(et,tt+1)){case 109:if(charat(et,tt+4)!==45)break;case 102:return replace(et,/(.+:)(.+)-([^]+)/,"$1"+WEBKIT+"$2-$3$1"+MOZ+(charat(et,tt+3)==108?"$3":"$2-$3"))+et;case 115:return~indexof(et,"stretch")?prefix(replace(et,"stretch","fill-available"),tt)+et:et}break;case 4949:if(charat(et,tt+1)!==115)break;case 6444:switch(charat(et,strlen(et)-3-(~indexof(et,"!important")&&10))){case 107:return replace(et,":",":"+WEBKIT)+et;case 101:return replace(et,/(.+:)([^;!]+)(;|!.+)?/,"$1"+WEBKIT+(charat(et,14)===45?"inline-":"")+"box$3$1"+WEBKIT+"$2$3$1"+MS+"$2box$3")+et}break;case 5936:switch(charat(et,tt+11)){case 114:return WEBKIT+et+MS+replace(et,/[svh]\w+-[tblr]{2}/,"tb")+et;case 108:return WEBKIT+et+MS+replace(et,/[svh]\w+-[tblr]{2}/,"tb-rl")+et;case 45:return WEBKIT+et+MS+replace(et,/[svh]\w+-[tblr]{2}/,"lr")+et}return WEBKIT+et+MS+et+et}return et}var prefixer=function(tt,nt,it,ot){if(tt.length>-1&&!tt.return)switch(tt.type){case DECLARATION:tt.return=prefix(tt.value,tt.length);break;case KEYFRAMES:return serialize([copy(tt,{value:replace(tt.value,"@","@"+WEBKIT)})],ot);case RULESET:if(tt.length)return combine(tt.props,function(Ut){switch(match(Ut,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return serialize([copy(tt,{props:[replace(Ut,/:(read-\w+)/,":"+MOZ+"$1")]})],ot);case"::placeholder":return serialize([copy(tt,{props:[replace(Ut,/:(plac\w+)/,":"+WEBKIT+"input-$1")]}),copy(tt,{props:[replace(Ut,/:(plac\w+)/,":"+MOZ+"$1")]}),copy(tt,{props:[replace(Ut,/:(plac\w+)/,MS+"input-$1")]})],ot)}return""})}},defaultStylisPlugins=[prefixer],createCache=function(tt){var nt=tt.key;if(nt==="css"){var it=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(it,function(Gt){var en=Gt.getAttribute("data-emotion");en.indexOf(" ")!==-1&&(document.head.appendChild(Gt),Gt.setAttribute("data-s",""))})}var ot=tt.stylisPlugins||defaultStylisPlugins,Ut={},Ft,Qt=[];Ft=tt.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+nt+' "]'),function(Gt){for(var en=Gt.getAttribute("data-emotion").split(" "),tn=1;tn=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+"-global",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 lt=arguments,ut=j&&s.__emotion_styles!==void 0?s.__emotion_styles.slice(0):[];if(_e!==void 0&&ut.push("label:"+_e+";"),lt[0]==null||lt[0].raw===void 0)ut.push.apply(ut,lt);else{ut.push(lt[0][0]);for(var Ut=lt.length,ot=1;ots(isEmpty$2($)?_:$):s})}/** @license MUI v5.11.0 + */var b$1=typeof Symbol=="function"&&Symbol.for,c=b$1?Symbol.for("react.element"):60103,d=b$1?Symbol.for("react.portal"):60106,e=b$1?Symbol.for("react.fragment"):60107,f$1=b$1?Symbol.for("react.strict_mode"):60108,g$1=b$1?Symbol.for("react.profiler"):60114,h$1=b$1?Symbol.for("react.provider"):60109,k$1=b$1?Symbol.for("react.context"):60110,l$1=b$1?Symbol.for("react.async_mode"):60111,m=b$1?Symbol.for("react.concurrent_mode"):60111,n=b$1?Symbol.for("react.forward_ref"):60112,p=b$1?Symbol.for("react.suspense"):60113,q$1=b$1?Symbol.for("react.suspense_list"):60120,r$1=b$1?Symbol.for("react.memo"):60115,t=b$1?Symbol.for("react.lazy"):60116,v=b$1?Symbol.for("react.block"):60121,w=b$1?Symbol.for("react.fundamental"):60117,x$1=b$1?Symbol.for("react.responder"):60118,y$1=b$1?Symbol.for("react.scope"):60119;function z$1(et){if(typeof et=="object"&&et!==null){var tt=et.$$typeof;switch(tt){case c:switch(et=et.type,et){case l$1:case m:case e:case g$1:case f$1:case p:return et;default:switch(et=et&&et.$$typeof,et){case k$1:case n:case t:case r$1:case h$1:return et;default:return tt}}case d:return tt}}}function A(et){return z$1(et)===m}reactIs_production_min.AsyncMode=l$1;reactIs_production_min.ConcurrentMode=m;reactIs_production_min.ContextConsumer=k$1;reactIs_production_min.ContextProvider=h$1;reactIs_production_min.Element=c;reactIs_production_min.ForwardRef=n;reactIs_production_min.Fragment=e;reactIs_production_min.Lazy=t;reactIs_production_min.Memo=r$1;reactIs_production_min.Portal=d;reactIs_production_min.Profiler=g$1;reactIs_production_min.StrictMode=f$1;reactIs_production_min.Suspense=p;reactIs_production_min.isAsyncMode=function(et){return A(et)||z$1(et)===l$1};reactIs_production_min.isConcurrentMode=A;reactIs_production_min.isContextConsumer=function(et){return z$1(et)===k$1};reactIs_production_min.isContextProvider=function(et){return z$1(et)===h$1};reactIs_production_min.isElement=function(et){return typeof et=="object"&&et!==null&&et.$$typeof===c};reactIs_production_min.isForwardRef=function(et){return z$1(et)===n};reactIs_production_min.isFragment=function(et){return z$1(et)===e};reactIs_production_min.isLazy=function(et){return z$1(et)===t};reactIs_production_min.isMemo=function(et){return z$1(et)===r$1};reactIs_production_min.isPortal=function(et){return z$1(et)===d};reactIs_production_min.isProfiler=function(et){return z$1(et)===g$1};reactIs_production_min.isStrictMode=function(et){return z$1(et)===f$1};reactIs_production_min.isSuspense=function(et){return z$1(et)===p};reactIs_production_min.isValidElementType=function(et){return typeof et=="string"||typeof et=="function"||et===e||et===m||et===g$1||et===f$1||et===p||et===q$1||typeof et=="object"&&et!==null&&(et.$$typeof===t||et.$$typeof===r$1||et.$$typeof===h$1||et.$$typeof===k$1||et.$$typeof===n||et.$$typeof===w||et.$$typeof===x$1||et.$$typeof===y$1||et.$$typeof===v)};reactIs_production_min.typeOf=z$1;(function(et){et.exports=reactIs_production_min})(reactIs$1);var reactIs=reactIsExports,FORWARD_REF_STATICS={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},MEMO_STATICS={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},TYPE_STATICS={};TYPE_STATICS[reactIs.ForwardRef]=FORWARD_REF_STATICS;TYPE_STATICS[reactIs.Memo]=MEMO_STATICS;var isBrowser$1=!0;function getRegisteredStyles(et,tt,nt){var it="";return nt.split(" ").forEach(function(ot){et[ot]!==void 0?tt.push(et[ot]+";"):it+=ot+" "}),it}var registerStyles=function(tt,nt,it){var ot=tt.key+"-"+nt.name;(it===!1||isBrowser$1===!1)&&tt.registered[ot]===void 0&&(tt.registered[ot]=nt.styles)},insertStyles=function(tt,nt,it){registerStyles(tt,nt,it);var ot=tt.key+"-"+nt.name;if(tt.inserted[nt.name]===void 0){var Ut=nt;do tt.insert(nt===Ut?"."+ot:"",Ut,tt.sheet,!0),Ut=Ut.next;while(Ut!==void 0)}};function murmur2(et){for(var tt=0,nt,it=0,ot=et.length;ot>=4;++it,ot-=4)nt=et.charCodeAt(it)&255|(et.charCodeAt(++it)&255)<<8|(et.charCodeAt(++it)&255)<<16|(et.charCodeAt(++it)&255)<<24,nt=(nt&65535)*1540483477+((nt>>>16)*59797<<16),nt^=nt>>>24,tt=(nt&65535)*1540483477+((nt>>>16)*59797<<16)^(tt&65535)*1540483477+((tt>>>16)*59797<<16);switch(ot){case 3:tt^=(et.charCodeAt(it+2)&255)<<16;case 2:tt^=(et.charCodeAt(it+1)&255)<<8;case 1:tt^=et.charCodeAt(it)&255,tt=(tt&65535)*1540483477+((tt>>>16)*59797<<16)}return tt^=tt>>>13,tt=(tt&65535)*1540483477+((tt>>>16)*59797<<16),((tt^tt>>>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(tt){return tt.charCodeAt(1)===45},isProcessableValue=function(tt){return tt!=null&&typeof tt!="boolean"},processStyleName=memoize$1(function(et){return isCustomProperty(et)?et:et.replace(hyphenateRegex,"-$&").toLowerCase()}),processStyleValue=function(tt,nt){switch(tt){case"animation":case"animationName":if(typeof nt=="string")return nt.replace(animationRegex,function(it,ot,Ut){return cursor={name:ot,styles:Ut,next:cursor},ot})}return unitlessKeys[tt]!==1&&!isCustomProperty(tt)&&typeof nt=="number"&&nt!==0?nt+"px":nt},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(et,tt,nt){if(nt==null)return"";if(nt.__emotion_styles!==void 0)return nt;switch(typeof nt){case"boolean":return"";case"object":{if(nt.anim===1)return cursor={name:nt.name,styles:nt.styles,next:cursor},nt.name;if(nt.styles!==void 0){var it=nt.next;if(it!==void 0)for(;it!==void 0;)cursor={name:it.name,styles:it.styles,next:cursor},it=it.next;var ot=nt.styles+";";return ot}return createStringFromObject(et,tt,nt)}case"function":{if(et!==void 0){var Ut=cursor,Ft=nt(et);return cursor=Ut,handleInterpolation(et,tt,Ft)}break}}if(tt==null)return nt;var Qt=tt[nt];return Qt!==void 0?Qt:nt}function createStringFromObject(et,tt,nt){var it="";if(Array.isArray(nt))for(var ot=0;ot{tt[nt]=deepClone(et[nt])}),tt}function deepmerge(et,tt,nt={clone:!0}){const it=nt.clone?_extends$1({},et):et;return isPlainObject(et)&&isPlainObject(tt)&&Object.keys(tt).forEach(ot=>{ot!=="__proto__"&&(isPlainObject(tt[ot])&&ot in et&&isPlainObject(et[ot])?it[ot]=deepmerge(et[ot],tt[ot],nt):nt.clone?it[ot]=isPlainObject(tt[ot])?deepClone(tt[ot]):tt[ot]:it[ot]=tt[ot])}),it}function formatMuiErrorMessage(et){let tt="https://mui.com/production-error/?code="+et;for(let nt=1;nt{if(it.toString().match(/^(components|slots)$/))nt[it]=_extends$1({},et[it],nt[it]);else if(it.toString().match(/^(componentsProps|slotProps)$/)){const ot=et[it]||{},Ut=tt[it];nt[it]={},!Ut||!Object.keys(Ut)?nt[it]=ot:!ot||!Object.keys(ot)?nt[it]=Ut:(nt[it]=_extends$1({},Ut),Object.keys(ot).forEach(Ft=>{nt[it][Ft]=resolveProps(ot[Ft],Ut[Ft])}))}else nt[it]===void 0&&(nt[it]=et[it])}),nt}function composeClasses(et,tt,nt){const it={};return Object.keys(et).forEach(ot=>{it[ot]=et[ot].reduce((Ut,Ft)=>(Ft&&(Ut.push(tt(Ft)),nt&&nt[Ft]&&Ut.push(nt[Ft])),Ut),[]).join(" ")}),it}const defaultGenerator=et=>et,createClassNameGenerator=()=>{let et=defaultGenerator;return{configure(tt){et=tt},generate(tt){return et(tt)},reset(){et=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(et,tt,nt="Mui"){const it=globalStateClassesMapping[tt];return it?`${nt}-${it}`:`${ClassNameGenerator$1.generate(et)}-${tt}`}function generateUtilityClasses(et,tt,nt="Mui"){const it={};return tt.forEach(ot=>{it[ot]=generateUtilityClass(et,ot,nt)}),it}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(et){return reactPropsRegex.test(et)||et.charCodeAt(0)===111&&et.charCodeAt(1)===110&&et.charCodeAt(2)<91}),Global=withEmotionCache(function(et,tt){var nt=et.styles,it=serializeStyles([nt],void 0,reactExports.useContext(ThemeContext$2)),ot=reactExports.useRef();return useInsertionEffectWithLayoutFallback(function(){var Ut=tt.key+"-global",Ft=new tt.sheet.constructor({key:Ut,nonce:tt.sheet.nonce,container:tt.sheet.container,speedy:tt.sheet.isSpeedy}),Qt=!1,Bt=document.querySelector('style[data-emotion="'+Ut+" "+it.name+'"]');return tt.sheet.tags.length&&(Ft.before=tt.sheet.tags[0]),Bt!==null&&(Qt=!0,Bt.setAttribute("data-emotion",Ut),Ft.hydrate([Bt])),ot.current=[Ft,Qt],function(){Ft.flush()}},[tt]),useInsertionEffectWithLayoutFallback(function(){var Ut=ot.current,Ft=Ut[0],Qt=Ut[1];if(Qt){Ut[1]=!1;return}if(it.next!==void 0&&insertStyles(tt,it.next,!0),Ft.tags.length){var Bt=Ft.tags[Ft.tags.length-1].nextElementSibling;Ft.before=Bt,Ft.flush()}tt.insert("",it,Ft,!1)},[tt,it.name]),null}),testOmitPropsOnStringTag=isPropValid,testOmitPropsOnComponent=function(tt){return tt!=="theme"},getDefaultShouldForwardProp=function(tt){return typeof tt=="string"&&tt.charCodeAt(0)>96?testOmitPropsOnStringTag:testOmitPropsOnComponent},composeShouldForwardProps=function(tt,nt,it){var ot;if(nt){var Ut=nt.shouldForwardProp;ot=tt.__emotion_forwardProp&&Ut?function(Ft){return tt.__emotion_forwardProp(Ft)&&Ut(Ft)}:Ut}return typeof ot!="function"&&it&&(ot=tt.__emotion_forwardProp),ot},Insertion=function(tt){var nt=tt.cache,it=tt.serialized,ot=tt.isStringTag;return registerStyles(nt,it,ot),useInsertionEffectAlwaysWithSyncFallback(function(){return insertStyles(nt,it,ot)}),null},createStyled$1=function et(tt,nt){var it=tt.__emotion_real===tt,ot=it&&tt.__emotion_base||tt,Ut,Ft;nt!==void 0&&(Ut=nt.label,Ft=nt.target);var Qt=composeShouldForwardProps(tt,nt,it),Bt=Qt||getDefaultShouldForwardProp(ot),Vt=!Bt("as");return function(){var Wt=arguments,Xt=it&&tt.__emotion_styles!==void 0?tt.__emotion_styles.slice(0):[];if(Ut!==void 0&&Xt.push("label:"+Ut+";"),Wt[0]==null||Wt[0].raw===void 0)Xt.push.apply(Xt,Wt);else{Xt.push(Wt[0][0]);for(var Zt=Wt.length,Yt=1;Yttt(isEmpty$2(ot)?nt:ot):tt})}/** @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,ut=>{let Ut=getStyleValue(rt,$,ut);return ut===Ut&&typeof ut=="string"&&(Ut=getStyleValue(rt,$,`${s}${ut==="default"?"":capitalize(ut)}`,ut)),_===!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:lt,style:ut}=tt;if(j==null)return null;const Ut=getPath($,rt)||{};return ut?ut(et):handleBreakpoints(et,j,st=>{let dt=getStyleValue(Ut,lt,st);return st===dt&&typeof st=="string"&&(dt=getStyleValue(Ut,lt,`${_}${st==="default"?"":capitalize(st)}`,st)),nt===!1?dt:{[nt]:dt}})}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 lt=createEmptyBreakpointObject(_e.breakpoints),ut=Object.keys(lt);let Ut=lt;return Object.keys(rt).forEach(ot=>{const st=callIfFn(rt[ot],_e);if(st!=null)if(typeof st=="object")if(et[ot])Ut=merge$2(Ut,o(ot,st,_e,et));else{const dt=handleBreakpoints({theme:_e},st,St=>({[ot]:St}));objectsHaveSameKeys(dt,st)?Ut[ot]=s({sx:st,theme:_e}):Ut=merge$2(Ut,dt)}else Ut=merge$2(Ut,o(ot,st,_e,et))}),removeUnusedBreakpoints(ut,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,ot){const st=et.indexOf(ot);return`@media (min-width:${typeof s[Ut]=="number"?s[Ut]:Ut}${_}) and (max-width:${(st!==-1&&typeof s[et[st]]=="number"?s[et[st]]:ot)-j/100}${_})`}function lt(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((lt,ut)=>deepmerge(lt,ut),rt),rt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,et==null?void 0:et.unstable_sxConfig),rt.unstable_sx=function(ut){return styleFunctionSx$1({sx:ut,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 lt=!0;Object.keys(rt.props).forEach(ut=>{et[ut]!==rt.props[ut]&&o[ut]!==rt.props[ut]&&(lt=!1)}),lt&&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,Bt=>Bt.filter(ht=>!(ht!=null&&ht.__mui_systemSx)));const{name:tt,slot:nt,skipVariantsResolver:rt,skipSx:lt,overridesResolver:ut}=et,Ut=_objectWithoutPropertiesLoose$1(et,_excluded$5),ot=rt!==void 0?rt:nt&&nt!=="Root"||!1,st=lt||!1;let dt,St=shouldForwardProp;nt==="Root"?St=_:nt?St=j:isStringTag(_e)&&(St=void 0);const pt=styled$2(_e,_extends$1({shouldForwardProp:St,label:dt},Ut)),Rt=(Bt,...ht)=>{const mt=ht?ht.map(ft=>typeof ft=="function"&&ft.__emotion_real!==ft?Wt=>{let{theme:yt}=Wt,Kt=_objectWithoutPropertiesLoose$1(Wt,_excluded2);return ft(_extends$1({theme:isEmpty(yt)?s:yt},Kt))}:ft):[];let gt=Bt;tt&&ut&&mt.push(ft=>{const Wt=isEmpty(ft.theme)?s:ft.theme,yt=getStyleOverrides(tt,Wt);if(yt){const Kt={};return Object.entries(yt).forEach(([$t,Ht])=>{Kt[$t]=typeof Ht=="function"?Ht(_extends$1({},ft,{theme:Wt})):Ht}),ut(ft,Kt)}return null}),tt&&!ot&&mt.push(ft=>{const Wt=isEmpty(ft.theme)?s:ft.theme;return variantsResolver(ft,getVariantStyles(tt,Wt),Wt,tt)}),st||mt.push($);const Vt=mt.length-ht.length;if(Array.isArray(Bt)&&Vt>0){const ft=new Array(Vt).fill("");gt=[...Bt,...ft],gt.raw=[...Bt.raw,...ft]}else typeof Bt=="function"&&Bt.__emotion_real!==Bt&&(gt=ft=>{let{theme:Wt}=ft,yt=_objectWithoutPropertiesLoose$1(ft,_excluded3);return Bt(_extends$1({theme:isEmpty(Wt)?s:Wt},yt))});return pt(gt,...mt)};return pt.withConfig&&(Rt.withConfig=pt.withConfig),Rt}}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,lt=(rt+_/30)%12)=>$-_e*Math.max(Math.min(lt-3,9-lt,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),lt=o.warning||getDefaultWarning(s);function ut(dt){return getContrastRatio(dt,dark.text.primary)>=_?dark.text.primary:light.text.primary}const Ut=({color:dt,name:St,mainShade:pt=500,lightShade:Rt=300,darkShade:Bt=700})=>{if(dt=_extends$1({},dt),!dt.main&&dt[pt]&&(dt.main=dt[pt]),!dt.hasOwnProperty("main"))throw new Error(formatMuiErrorMessage(11,St?` (${St})`:"",pt));if(typeof dt.main!="string")throw new Error(formatMuiErrorMessage(12,St?` (${St})`:"",JSON.stringify(dt.main)));return addLightOrDark(dt,"light",Rt,j),addLightOrDark(dt,"dark",Bt,j),dt.contrastText||(dt.contrastText=ut(dt.main)),dt},ot={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:lt,name:"warning"}),info:Ut({color:nt,name:"info"}),success:Ut({color:rt,name:"success"}),grey:grey$1,contrastThreshold:_,getContrastText:ut,augmentColor:Ut,tonalOffset:j},ot[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:lt,pxToRem:ut}=_,Ut=_objectWithoutPropertiesLoose$1(_,_excluded$3),ot=$/14,st=ut||(pt=>`${pt/rt*ot}rem`),dt=(pt,Rt,Bt,ht,mt)=>_extends$1({fontFamily:j,fontWeight:pt,fontSize:st(Rt),lineHeight:Bt},j===defaultFontFamily?{letterSpacing:`${round$1(ht/Rt)}em`}:{},mt,lt),St={h1:dt(_e,96,1.167,-1.5),h2:dt(_e,60,1.2,-.5),h3:dt(et,48,1.167,0),h4:dt(et,34,1.235,.25),h5:dt(et,24,1.334,0),h6:dt(tt,20,1.6,.15),subtitle1:dt(et,16,1.75,.15),subtitle2:dt(tt,14,1.57,.1),body1:dt(et,16,1.5,.15),body2:dt(et,14,1.43,.15),button:dt(tt,14,1.75,.4,caseAllCaps),caption:dt(et,12,1.66,.4),overline:dt(et,12,2.66,1,caseAllCaps)};return deepmerge(_extends$1({htmlFontSize:rt,pxToRem:st,fontFamily:j,fontSize:$,fontWeightLight:_e,fontWeightRegular:et,fontWeightMedium:tt,fontWeightBold:nt},St),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$1={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$1,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((lt,ut)=>deepmerge(lt,ut),rt),rt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,et==null?void 0:et.unstable_sxConfig),rt.unstable_sx=function(ut){return styleFunctionSx$1({sx:ut,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 mn=Object.defineProperty,bn=(o,s,_)=>s in o?mn(o,s,{enumerable:!0,configurable:!0,writable:!0,value:_}):o[s]=_,ke=(o,s,_)=>(bn(o,typeof s!="symbol"?s+"":s,_),_);const DEFAULT_FORMANT_API_URL="https://api.formant.io";function whichFormantApiUrl(o,s,_){try{if(_){if(_.includes("app-dev.formant.io")||_.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"))return"https://api.formant.local"}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}`)}}}catch{}return typeof o<"u"&&"FORMANT_API_URL"in o&&typeof o.FORMANT_API_URL=="string"?o.FORMANT_API_URL:DEFAULT_FORMANT_API_URL}const 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);var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global: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(st){this.message=st};et.prototype=new Error,et.prototype.name="InvalidCharacterError";var tt=function(st){throw new et(st)},nt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",rt=/[\t\n\f\r ]/g,lt=function(st){st=String(st).replace(rt,"");var dt=st.length;dt%4==0&&(st=st.replace(/==?$/,""),dt=st.length),(dt%4==1||/[^+a-zA-Z0-9/]/.test(st))&&tt("Invalid character: the string to be decoded is not correctly encoded.");for(var St=0,pt,Rt,Bt="",ht=-1;++ht>(-2*St&6)));return Bt},ut=function(st){st=String(st),/[^\0-\xFF]/.test(st)&&tt("The string to be encoded contains characters outside of the Latin1 range.");for(var dt=st.length%3,St="",pt=-1,Rt,Bt,ht,mt,gt=st.length-dt;++pt>18&63)+nt.charAt(mt>>12&63)+nt.charAt(mt>>6&63)+nt.charAt(mt&63);return dt==2?(Rt=st.charCodeAt(pt)<<8,Bt=st.charCodeAt(++pt),mt=Rt+Bt,St+=nt.charAt(mt>>10)+nt.charAt(mt>>4&63)+nt.charAt(mt<<2&63)+"="):dt==1&&(mt=st.charCodeAt(pt),St+=nt.charAt(mt>>2)+nt.charAt(mt<<4&63)+"=="),St},Ut={encode:ut,decode:lt,version:"1.0.0"};if(j&&!j.nodeType)if($)$.exports=Ut;else for(var ot in Ut)Ut.hasOwnProperty(ot)&&(j[ot]=Ut[ot]);else _.base64=Ut})(commonjsGlobal)})(base64,base64.exports);var base64Exports=base64.exports;class LoginFailureError extends Error{constructor(s){super("login failed"),ke(this,"reason"),this.reason=s,this.name="LoginFailureError",Object.setPrototypeOf(this,new.target.prototype)}}class LoginChallengedError extends Error{constructor(s){super("login challenged"),ke(this,"challenge"),this.challenge=s,this.name="LoginChallengedError",Object.setPrototypeOf(this,new.target.prototype)}}class AuthenticationStore{constructor({apiUrl:s,refreshAuthToken:_,addAccessTokenRefreshListener:j}){ke(this,"_refreshToken"),ke(this,"_isShareToken",!1),ke(this,"_currentOrganization"),ke(this,"_currentUser"),ke(this,"_defaultDeviceId"),ke(this,"_token"),ke(this,"_waitingForAuth",new Set),ke(this,"_refreshTimer"),ke(this,"_apiUrl"),ke(this,"_refreshAuthToken"),ke(this,"_addAccessTokenRefreshListener"),this._apiUrl=s,this._refreshAuthToken=_,this._addAccessTokenRefreshListener=j}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!==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)}}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})}function addAccessTokenRefreshListener(o){function s(_){const j=_.data;j.type==="auth_token"&&o(j.token)}return window.addEventListener("message",s),()=>{window.removeEventListener("message",s)}}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 lt=getDefaultOptions(),ut=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?$:lt.weekStartsOn)!==null&&j!==void 0?j:(nt=lt.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.weekStartsOn)!==null&&_!==void 0?_:0);if(!(ut>=0&&ut<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Ut=toDate(o),ot=Ut.getDay(),st=(ot=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 lt=getDefaultOptions(),ut=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?$:lt.weekStartsOn)!==null&&j!==void 0?j:(nt=lt.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.weekStartsOn)!==null&&_!==void 0?_:0);if(!(ut>=0&&ut<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Ut=toDate(o),ot=Ut.getDay(),st=(ot=1&&ot<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var st=new Date(0);st.setFullYear(ut+1,0,ot),st.setHours(0,0,0,0);var dt=startOfWeek(st,s),St=new Date(0);St.setFullYear(ut,0,ot),St.setHours(0,0,0,0);var pt=startOfWeek(St,s);return lt.getTime()>=dt.getTime()?ut+1:lt.getTime()>=pt.getTime()?ut:ut-1}function startOfWeekYear(o,s){var _,j,$,_e,et,tt,nt,rt;requiredArgs(1,arguments);var lt=getDefaultOptions(),ut=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?$:lt.firstWeekContainsDate)!==null&&j!==void 0?j:(nt=lt.locale)===null||nt===void 0||(rt=nt.options)===null||rt===void 0?void 0:rt.firstWeekContainsDate)!==null&&_!==void 0?_:1),Ut=getWeekYear(o,s),ot=new Date(0);ot.setFullYear(Ut,0,ut),ot.setHours(0,0,0,0);var st=startOfWeek(ot,s);return st}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,lt=Math.round(rt/j)*j;return new Date($.getFullYear(),$.getMonth(),$.getDate(),$.getHours(),nt+lt)}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}={}){ke(this,"entries",new Map),ke(this,"metadata",new Map),ke(this,"capacity"),ke(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(){ke(this,"queryStoreCache",new StoreCache$1({capacity:1e4,timeout:20*duration$2.second})),ke(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 ln=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 ln._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=ln;ke(App$2,"getCurrentModuleContext",getCurrentModuleContext),ke(App$2,"disableAnalyticsBottomBar",disableAnalyticsBottomBar),ke(App$2,"goToDevice",goToDevice),ke(App$2,"goToTime",goToTime),ke(App$2,"refreshAuthToken",refreshAuthToken),ke(App$2,"requestModuleData",requestModuleData),ke(App$2,"sendChannelData",sendChannelData),ke(App$2,"setModuleDateTimeRange",setModuleDateTimeRange),ke(App$2,"setupModuleMenus",setupModuleMenus),ke(App$2,"showMessage",showMessage),ke(App$2,"addAccessTokenRefreshListener",addAccessTokenRefreshListener),ke(App$2,"addChannelDataListener",addChannelDataListener),ke(App$2,"addMenuListener",addMenuListener),ke(App$2,"addModuleConfigurationListener",addModuleConfigurationListener),ke(App$2,"addModuleDataListener",addModuleDataListener),ke(App$2,"addOverviewDeviceListener",addOverviewDeviceListener),ke(App$2,"addStreamListener",addStreamListener),ke(App$2,"getDate",getDate),ke(App$2,"prompt",prompt),ke(App$2,"_isOnline",null);function defined$1(o,s){if(o!==void 0)return o;throw new Error(s||"Value is undefined")}var dist={exports:{}};/*! For license information please see index.js.LICENSE.txt */(function(o,s){(function(_,j){o.exports=j()})(self,()=>(()=>{var _={5475:(et,tt,nt)=>{var rt={};et.exports=rt,rt.themes={};var lt=nt(9208),ut=rt.styles=nt(9253),Ut=Object.defineProperties,ot=new RegExp(/[\r\n]+/g);rt.supportsColor=nt(3822).supportsColor,rt.enabled===void 0&&(rt.enabled=rt.supportsColor()!==!1),rt.enable=function(){rt.enabled=!0},rt.disable=function(){rt.enabled=!1},rt.stripColors=rt.strip=function(gt){return(""+gt).replace(/\x1B\[\d+m/g,"")},rt.stylize=function(gt,Vt){if(!rt.enabled)return gt+"";var Tt=ut[Vt];return!Tt&&Vt in rt?rt[Vt](gt):Tt.open+gt+Tt.close};var st=/[|\\{}()[\]^$+*?.]/g;function dt(gt){var Vt=function Tt(){return Bt.apply(Tt,arguments)};return Vt._styles=gt,Vt.__proto__=Rt,Vt}var St,pt=(St={},ut.grey=ut.gray,Object.keys(ut).forEach(function(gt){ut[gt].closeRe=new RegExp(function(Vt){if(typeof Vt!="string")throw new TypeError("Expected a string");return Vt.replace(st,"\\$&")}(ut[gt].close),"g"),St[gt]={get:function(){return dt(this._styles.concat(gt))}}}),St),Rt=Ut(function(){},pt);function Bt(){var gt=Array.prototype.slice.call(arguments),Vt=gt.map(function(Kt){return Kt!=null&&Kt.constructor===String?Kt:lt.inspect(Kt)}).join(" ");if(!rt.enabled||!Vt)return Vt;for(var Tt=Vt.indexOf(` -`)!=-1,ft=this._styles,Wt=ft.length;Wt--;){var yt=ut[ft[Wt]];Vt=yt.open+Vt.replace(yt.closeRe,yt.open)+yt.close,Tt&&(Vt=Vt.replace(ot,function(Kt){return yt.close+Kt+yt.open}))}return Vt}rt.setTheme=function(gt){if(typeof gt!="string")for(var Vt in gt)(function(Tt){rt[Tt]=function(ft){if(typeof gt[Tt]=="object"){var Wt=ft;for(var yt in gt[Tt])Wt=rt[gt[Tt][yt]](Wt);return Wt}return rt[gt[Tt]](ft)}})(Vt);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 ht=function(gt,Vt){var Tt=Vt.split("");return(Tt=Tt.map(gt)).join("")};for(var mt in rt.trap=nt(8740),rt.zalgo=nt(6798),rt.maps={},rt.maps.america=nt(3427)(rt),rt.maps.zebra=nt(8479)(rt),rt.maps.rainbow=nt(4517)(rt),rt.maps.random=nt(6948)(rt),rt.maps)(function(gt){rt[gt]=function(Vt){return ht(rt.maps[gt],Vt)}})(mt);Ut(rt,function(){var gt={};return Object.keys(pt).forEach(function(Vt){gt[Vt]={get:function(){return dt([Vt])}}}),gt}())},8740:et=>{et.exports=function(tt,nt){var rt="";tt=(tt=tt||"Run the trap, drop the bass").split("");var lt={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 tt.forEach(function(ut){ut=ut.toLowerCase();var Ut=lt[ut]||[" "],ot=Math.floor(Math.random()*Ut.length);rt+=lt[ut]!==void 0?lt[ut][ot]:ut}),rt}},6798:et=>{et.exports=function(tt,nt){tt=tt||" he is here ";var rt={up:["̍","̎","̄","̅","̿","̑","̆","̐","͒","͗","͑","̇","̈","̊","͂","̓","̈","͊","͋","͌","̃","̂","̌","͐","̀","́","̋","̏","̒","̓","̔","̽","̉","ͣ","ͤ","ͥ","ͦ","ͧ","ͨ","ͩ","ͪ","ͫ","ͬ","ͭ","ͮ","ͯ","̾","͛","͆","̚"],down:["̖","̗","̘","̙","̜","̝","̞","̟","̠","̤","̥","̦","̩","̪","̫","̬","̭","̮","̯","̰","̱","̲","̳","̹","̺","̻","̼","ͅ","͇","͈","͉","͍","͎","͓","͔","͕","͖","͙","͚","̣"],mid:["̕","̛","̀","́","͘","̡","̢","̧","̨","̴","̵","̶","͜","͝","͞","͟","͠","͢","̸","̷","͡"," ҉"]},lt=[].concat(rt.up,rt.down,rt.mid);function ut(ot){return Math.floor(Math.random()*ot)}function Ut(ot){var st=!1;return lt.filter(function(dt){st=dt===ot}),st}return function(ot,st){var dt,St,pt="";for(St in(st=st||{}).up=st.up===void 0||st.up,st.mid=st.mid===void 0||st.mid,st.down=st.down===void 0||st.down,st.size=st.size!==void 0?st.size:"maxi",ot=ot.split(""))if(!Ut(St)){switch(pt+=ot[St],dt={up:0,down:0,mid:0},st.size){case"mini":dt.up=ut(8),dt.mid=ut(2),dt.down=ut(8);break;case"maxi":dt.up=ut(16)+3,dt.mid=ut(4)+1,dt.down=ut(64)+3;break;default:dt.up=ut(8)+1,dt.mid=ut(6)/2,dt.down=ut(8)+1}var Rt=["up","mid","down"];for(var Bt in Rt)for(var ht=Rt[Bt],mt=0;mt<=dt[ht];mt++)st[ht]&&(pt+=rt[ht][ut(rt[ht].length)])}return pt}(tt,nt)}},3427:et=>{et.exports=function(tt){return function(nt,rt,lt){if(nt===" ")return nt;switch(rt%3){case 0:return tt.red(nt);case 1:return tt.white(nt);case 2:return tt.blue(nt)}}}},4517:et=>{et.exports=function(tt){var nt=["red","yellow","green","blue","magenta"];return function(rt,lt,ut){return rt===" "?rt:tt[nt[lt++%nt.length]](rt)}}},6948:et=>{et.exports=function(tt){var nt=["underline","inverse","grey","yellow","red","green","blue","white","cyan","magenta","brightYellow","brightRed","brightGreen","brightBlue","brightWhite","brightCyan","brightMagenta"];return function(rt,lt,ut){return rt===" "?rt:tt[nt[Math.round(Math.random()*(nt.length-2))]](rt)}}},8479:et=>{et.exports=function(tt){return function(nt,rt,lt){return rt%2==0?nt:tt.inverse(nt)}}},9253:et=>{var tt={};et.exports=tt;var nt={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(nt).forEach(function(rt){var lt=nt[rt],ut=tt[rt]=[];ut.open="\x1B["+lt[0]+"m",ut.close="\x1B["+lt[1]+"m"})},124:et=>{et.exports=function(tt,nt){var rt=(nt=nt||process.argv||[]).indexOf("--"),lt=/^-{1,2}/.test(tt)?"":"--",ut=nt.indexOf(lt+tt);return ut!==-1&&(rt===-1||ut{var rt=nt(2213),lt=nt(124),ut=process.env,Ut=void 0;function ot(st){return function(dt){return dt!==0&&{level:dt,hasBasic:!0,has256:dt>=2,has16m:dt>=3}}(function(dt){if(Ut===!1)return 0;if(lt("color=16m")||lt("color=full")||lt("color=truecolor"))return 3;if(lt("color=256"))return 2;if(dt&&!dt.isTTY&&Ut!==!0)return 0;var St=Ut?1:0;if(process.platform==="win32"){var pt=rt.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(pt[0])>=10&&Number(pt[2])>=10586?Number(pt[2])>=14931?3:2:1}return"CI"in ut?["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(function(Rt){return Rt in ut})||ut.CI_NAME==="codeship"?1:St:"TEAMCITY_VERSION"in ut?/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ut.TEAMCITY_VERSION)?1:0:("TERM_PROGRAM"in ut&&parseInt("1.92.1".split(".")[0],10),/-256(color)?$/i.test("xterm-256color")?2:/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test("xterm-256color")||"COLORTERM"in ut?1:St)}(st))}lt("no-color")||lt("no-colors")||lt("color=false")?Ut=!1:(lt("color")||lt("colors")||lt("color=true")||lt("color=always"))&&(Ut=!0),"FORCE_COLOR"in ut&&(Ut=ut.FORCE_COLOR.length===0||parseInt(ut.FORCE_COLOR,10)!==0),et.exports={supportsColor:ot,stdout:ot(process.stdout),stderr:ot(process.stderr)}},1158:(et,tt,nt)=>{var rt=nt(5475);et.exports=rt},7147:(et,tt,nt)=>{et.exports=nt(4968)},4968:(et,tt,nt)=>{var rt=nt(8636)(function lt(ut,Ut){return(Ut=Ut||{}).namespace=ut,Ut.prod=!0,Ut.dev=!1,Ut.force||lt.force?lt.yep(Ut):lt.nope(Ut)});et.exports=rt},8636:et=>{var tt=[],nt=[],rt=function(){};function lt(Bt){return!~tt.indexOf(Bt)&&(tt.push(Bt),!0)}function ut(Bt){rt=Bt}function Ut(Bt){for(var ht=[],mt=0;mt{function rt(on){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Gt){return typeof Gt}:function(Gt){return Gt&&typeof Symbol=="function"&&Gt.constructor===Symbol&&Gt!==Symbol.prototype?"symbol":typeof Gt})(on)}function lt(on,Gt){for(var Xt=0;Xt1?Xt-1:0),Vn=1;Vn1?Xt-1:0),Vn=1;Vn1?Xt-1:0),Vn=1;Vn1?Xt-1:0),Vn=1;Vn{function rt(bt,Jt){var wt=Object.keys(bt);if(Object.getOwnPropertySymbols){var At=Object.getOwnPropertySymbols(bt);Jt&&(At=At.filter(function(Ct){return Object.getOwnPropertyDescriptor(bt,Ct).enumerable})),wt.push.apply(wt,At)}return wt}function lt(bt){for(var Jt=1;Jt"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 Bt(bt,Jt){return(Bt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(wt,At){return wt.__proto__=At,wt})(bt,Jt)}function ht(bt){return(ht=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Jt){return Jt.__proto__||Object.getPrototypeOf(Jt)})(bt)}function mt(bt){return(mt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Jt){return typeof Jt}:function(Jt){return Jt&&typeof Symbol=="function"&&Jt.constructor===Symbol&&Jt!==Symbol.prototype?"symbol":typeof Jt})(bt)}var gt=nt(9208).inspect,Vt=nt(1342).codes.ERR_INVALID_ARG_TYPE;function Tt(bt,Jt,wt){return(wt===void 0||wt>bt.length)&&(wt=bt.length),bt.substring(wt-Jt.length,wt)===Jt}var ft="",Wt="",yt="",Kt="",$t={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 Ht(bt){var Jt=Object.keys(bt),wt=Object.create(Object.getPrototypeOf(bt));return Jt.forEach(function(At){wt[At]=bt[At]}),Object.defineProperty(wt,"message",{value:bt.message}),wt}function Nt(bt){return gt(bt,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function qt(bt,Jt,wt){var At="",Ct="",Mt=0,nn="",sn=!1,Lt=Nt(bt),tn=Lt.split(` -`),cn=Nt(Jt).split(` -`),on=0,Gt="";if(wt==="strictEqual"&&mt(bt)==="object"&&mt(Jt)==="object"&&bt!==null&&Jt!==null&&(wt="strictEqualObject"),tn.length===1&&cn.length===1&&tn[0]!==cn[0]){var Xt=tn[0].length+cn[0].length;if(Xt<=10){if(!(mt(bt)==="object"&&bt!==null||mt(Jt)==="object"&&Jt!==null||bt===0&&Jt===0))return"".concat($t[wt],` - -`)+"".concat(tn[0]," !== ").concat(cn[0],` -`)}else if(wt!=="strictEqualObject"&&Xt<(process.stderr&&process.stderr.isTTY?process.stderr.columns:80)){for(;tn[0][on]===cn[0][on];)on++;on>2&&(Gt=` - `.concat(function(Ot,jt){if(jt=Math.floor(jt),Ot.length==0||jt==0)return"";var pn=Ot.length*jt;for(jt=Math.floor(Math.log(jt)/Math.log(2));jt;)Ot+=Ot,jt--;return Ot+=Ot.substring(0,pn-Ot.length)}(" ",on),"^"),on=0)}}for(var dn=tn[tn.length-1],Vn=cn[cn.length-1];dn===Vn&&(on++<2?nn=` - `.concat(dn).concat(nn):At=dn,tn.pop(),cn.pop(),tn.length!==0&&cn.length!==0);)dn=tn[tn.length-1],Vn=cn[cn.length-1];var Fn=Math.max(tn.length,cn.length);if(Fn===0){var fn=Lt.split(` -`);if(fn.length>30)for(fn[26]="".concat(ft,"...").concat(Kt);fn.length>27;)fn.pop();return"".concat($t.notIdentical,` - -`).concat(fn.join(` -`),` -`)}on>3&&(nn=` -`.concat(ft,"...").concat(Kt).concat(nn),sn=!0),At!==""&&(nn=` - `.concat(At).concat(nn),At="");var Un=0,Jn=$t[wt]+` -`.concat(Wt,"+ actual").concat(Kt," ").concat(yt,"- expected").concat(Kt),_n=" ".concat(ft,"...").concat(Kt," Lines skipped");for(on=0;on1&&on>2&&(Zn>4?(Ct+=` -`.concat(ft,"...").concat(Kt),sn=!0):Zn>3&&(Ct+=` - `.concat(cn[on-2]),Un++),Ct+=` - `.concat(cn[on-1]),Un++),Mt=on,At+=` -`.concat(yt,"-").concat(Kt," ").concat(cn[on]),Un++;else if(cn.length1&&on>2&&(Zn>4?(Ct+=` -`.concat(ft,"...").concat(Kt),sn=!0):Zn>3&&(Ct+=` - `.concat(tn[on-2]),Un++),Ct+=` - `.concat(tn[on-1]),Un++),Mt=on,Ct+=` -`.concat(Wt,"+").concat(Kt," ").concat(tn[on]),Un++;else{var On=cn[on],Yn=tn[on],_t=Yn!==On&&(!Tt(Yn,",")||Yn.slice(0,-1)!==On);_t&&Tt(On,",")&&On.slice(0,-1)===Yn&&(_t=!1,Yn+=","),_t?(Zn>1&&on>2&&(Zn>4?(Ct+=` -`.concat(ft,"...").concat(Kt),sn=!0):Zn>3&&(Ct+=` - `.concat(tn[on-2]),Un++),Ct+=` - `.concat(tn[on-1]),Un++),Mt=on,Ct+=` -`.concat(Wt,"+").concat(Kt," ").concat(Yn),At+=` -`.concat(yt,"-").concat(Kt," ").concat(On),Un+=2):(Ct+=At,At="",Zn!==1&&on!==0||(Ct+=` - `.concat(Yn),Un++))}if(Un>20&&on30)for(fn[26]="".concat(ft,"...").concat(Kt);fn.length>27;)fn.pop();tn=fn.length===1?nn.call(this,"".concat(Fn," ").concat(fn[0])):nn.call(this,"".concat(Fn,` - -`).concat(fn.join(` -`),` -`))}else{var Un=Nt(Xt),Jn="",_n=$t[on];on==="notDeepEqual"||on==="notEqual"?(Un="".concat($t[on],` - -`).concat(Un)).length>1024&&(Un="".concat(Un.slice(0,1021),"...")):(Jn="".concat(Nt(dn)),Un.length>512&&(Un="".concat(Un.slice(0,509),"...")),Jn.length>512&&(Jn="".concat(Jn.slice(0,509),"...")),on==="deepEqual"||on==="equal"?Un="".concat(_n,` - -`).concat(Un,` - -should equal - -`):Jn=" ".concat(on," ").concat(Jn)),tn=nn.call(this,"".concat(Un).concat(Jn))}return Error.stackTraceLimit=Vn,tn.generatedMessage=!cn,Object.defineProperty(dt(tn),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),tn.code="ERR_ASSERTION",tn.actual=Xt,tn.expected=dn,tn.operator=on,Error.captureStackTrace&&Error.captureStackTrace(dt(tn),Gt),tn.stack,tn.name="AssertionError",st(tn)}return Ct=sn,(Mt=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:Jt,value:function(Lt,tn){return gt(this,lt(lt({},tn),{},{customInspect:!1,depth:0}))}}])&&Ut(Ct.prototype,Mt),Object.defineProperty(Ct,"prototype",{writable:!1}),sn}(St(Error),gt.custom);et.exports=kt},1342:(et,tt,nt)=>{function rt(Bt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ht){return typeof ht}:function(ht){return ht&&typeof Symbol=="function"&&ht.constructor===Symbol&&ht!==Symbol.prototype?"symbol":typeof ht})(Bt)}function lt(Bt,ht){return(lt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(mt,gt){return mt.__proto__=gt,mt})(Bt,ht)}function ut(Bt){var ht=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 mt,gt=ot(Bt);if(ht){var Vt=ot(this).constructor;mt=Reflect.construct(gt,arguments,Vt)}else mt=gt.apply(this,arguments);return Ut(this,mt)}}function Ut(Bt,ht){if(ht&&(rt(ht)==="object"||typeof ht=="function"))return ht;if(ht!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(mt){if(mt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return mt}(Bt)}function ot(Bt){return(ot=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(ht){return ht.__proto__||Object.getPrototypeOf(ht)})(Bt)}var st,dt,St={};function pt(Bt,ht,mt){mt||(mt=Error);var gt=function(Vt){(function(yt,Kt){if(typeof Kt!="function"&&Kt!==null)throw new TypeError("Super expression must either be null or a function");yt.prototype=Object.create(Kt&&Kt.prototype,{constructor:{value:yt,writable:!0,configurable:!0}}),Object.defineProperty(yt,"prototype",{writable:!1}),Kt&<(yt,Kt)})(Wt,Vt);var Tt,ft=ut(Wt);function Wt(yt,Kt,$t){var Ht;return function(Nt,qt){if(!(Nt instanceof qt))throw new TypeError("Cannot call a class as a function")}(this,Wt),(Ht=ft.call(this,function(Nt,qt,kt){return typeof ht=="string"?ht:ht(Nt,qt,kt)}(yt,Kt,$t))).code=Bt,Ht}return Tt=Wt,Object.defineProperty(Tt,"prototype",{writable:!1}),Tt}(mt);St[Bt]=gt}function Rt(Bt,ht){if(Array.isArray(Bt)){var mt=Bt.length;return Bt=Bt.map(function(gt){return String(gt)}),mt>2?"one of ".concat(ht," ").concat(Bt.slice(0,mt-1).join(", "),", or ")+Bt[mt-1]:mt===2?"one of ".concat(ht," ").concat(Bt[0]," or ").concat(Bt[1]):"of ".concat(ht," ").concat(Bt[0])}return"of ".concat(ht," ").concat(String(Bt))}pt("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),pt("ERR_INVALID_ARG_TYPE",function(Bt,ht,mt){var gt,Vt,Tt;if(st===void 0&&(st=nt(6093)),st(typeof Bt=="string","'name' must be a string"),typeof ht=="string"&&(Vt="not ",ht.substr(0,Vt.length)===Vt)?(gt="must not be",ht=ht.replace(/^not /,"")):gt="must be",function(Wt,yt,Kt){return(Kt===void 0||Kt>Wt.length)&&(Kt=Wt.length),Wt.substring(Kt-yt.length,Kt)===yt}(Bt," argument"))Tt="The ".concat(Bt," ").concat(gt," ").concat(Rt(ht,"type"));else{var ft=function(Wt,yt,Kt){return typeof Kt!="number"&&(Kt=0),!(Kt+yt.length>Wt.length)&&Wt.indexOf(yt,Kt)!==-1}(Bt,".")?"property":"argument";Tt='The "'.concat(Bt,'" ').concat(ft," ").concat(gt," ").concat(Rt(ht,"type"))}return Tt+=". Received type ".concat(rt(mt))},TypeError),pt("ERR_INVALID_ARG_VALUE",function(Bt,ht){var mt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";dt===void 0&&(dt=nt(9208));var gt=dt.inspect(ht);return gt.length>128&&(gt="".concat(gt.slice(0,128),"...")),"The argument '".concat(Bt,"' ").concat(mt,". Received ").concat(gt)},TypeError),pt("ERR_INVALID_RETURN_VALUE",function(Bt,ht,mt){var gt;return gt=mt&&mt.constructor&&mt.constructor.name?"instance of ".concat(mt.constructor.name):"type ".concat(rt(mt)),"Expected ".concat(Bt,' to be returned from the "').concat(ht,'"')+" function but got ".concat(gt,".")},TypeError),pt("ERR_MISSING_ARGS",function(){for(var Bt=arguments.length,ht=new Array(Bt),mt=0;mt0,"At least one arg needs to be specified");var gt="The ",Vt=ht.length;switch(ht=ht.map(function(Tt){return'"'.concat(Tt,'"')}),Vt){case 1:gt+="".concat(ht[0]," argument");break;case 2:gt+="".concat(ht[0]," and ").concat(ht[1]," arguments");break;default:gt+=ht.slice(0,Vt-1).join(", "),gt+=", and ".concat(ht[Vt-1]," arguments")}return"".concat(gt," must be specified")},TypeError),et.exports.codes=St},5656:(et,tt,nt)=>{function rt(Fn,fn){return function(Un){if(Array.isArray(Un))return Un}(Fn)||function(Un,Jn){var _n=Un==null?null:typeof Symbol<"u"&&Un[Symbol.iterator]||Un["@@iterator"];if(_n!=null){var Zn,On,Yn,_t,Ot=[],jt=!0,pn=!1;try{if(Yn=(_n=_n.call(Un)).next,Jn===0){if(Object(_n)!==_n)return;jt=!1}else for(;!(jt=(Zn=Yn.call(_n)).done)&&(Ot.push(Zn.value),Ot.length!==Jn);jt=!0);}catch(En){pn=!0,On=En}finally{try{if(!jt&&_n.return!=null&&(_t=_n.return(),Object(_t)!==_t))return}finally{if(pn)throw On}}return Ot}}(Fn,fn)||function(Un,Jn){if(Un){if(typeof Un=="string")return lt(Un,Jn);var _n=Object.prototype.toString.call(Un).slice(8,-1);if(_n==="Object"&&Un.constructor&&(_n=Un.constructor.name),_n==="Map"||_n==="Set")return Array.from(Un);if(_n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(_n))return lt(Un,Jn)}}(Fn,fn)||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 lt(Fn,fn){(fn==null||fn>Fn.length)&&(fn=Fn.length);for(var Un=0,Jn=new Array(fn);Un10)return!0;for(var fn=0;fn57)return!0}return Fn.length===10&&Fn>=Math.pow(2,32)}function Mt(Fn){return Object.keys(Fn).filter(Ct).concat(St(Fn).filter(Object.prototype.propertyIsEnumerable.bind(Fn)))}function nn(Fn,fn){if(Fn===fn)return 0;for(var Un=Fn.length,Jn=fn.length,_n=0,Zn=Math.min(Un,Jn);_n{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(dt){return(0,ut.isAsync)(dt)?function(...St){const pt=St.pop();return ot(dt.apply(this,St),pt)}:(0,rt.default)(function(St,pt){var Rt;try{Rt=dt.apply(this,St)}catch(Bt){return pt(Bt)}if(Rt&&typeof Rt.then=="function")return ot(Rt,pt);pt(null,Rt)})};var rt=Ut(nt(6172)),lt=Ut(nt(6857)),ut=nt(1214);function Ut(dt){return dt&&dt.__esModule?dt:{default:dt}}function ot(dt,St){return dt.then(pt=>{st(St,null,pt)},pt=>{st(St,pt&&(pt instanceof Error||pt.message)?pt:new Error(pt))})}function st(dt,St,pt){try{dt(St,pt)}catch(Rt){(0,lt.default)(Bt=>{throw Bt},Rt)}}et.exports=tt.default},108:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=St(nt(7804)),lt=St(nt(1371)),ut=St(nt(7485)),Ut=St(nt(6297)),ot=St(nt(6083)),st=St(nt(1214)),dt=St(nt(6280));function St(Bt){return Bt&&Bt.__esModule?Bt:{default:Bt}}function pt(Bt,ht,mt){mt=(0,Ut.default)(mt);var gt=0,Vt=0,{length:Tt}=Bt,ft=!1;function Wt(yt,Kt){yt===!1&&(ft=!0),ft!==!0&&(yt?mt(yt):++Vt!==Tt&&Kt!==lt.default||mt(null))}for(Tt===0&&mt(null);gt{Object.defineProperty(tt,"__esModule",{value:!0});var rt=Ut(nt(6513)),lt=Ut(nt(1214)),ut=Ut(nt(6280));function Ut(ot){return ot&&ot.__esModule?ot:{default:ot}}tt.default=(0,ut.default)(function(ot,st,dt,St){return(0,rt.default)(st)(ot,(0,lt.default)(dt),St)},4),et.exports=tt.default},5313:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=ut(nt(7485)),lt=ut(nt(6280));function ut(Ut){return Ut&&Ut.__esModule?Ut:{default:Ut}}tt.default=(0,lt.default)(function(Ut,ot,st){return(0,rt.default)(Ut,1,ot,st)},3),et.exports=tt.default},5236:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=ot(nt(108)),lt=ot(nt(4344)),ut=ot(nt(1214)),Ut=ot(nt(6280));function ot(st){return st&&st.__esModule?st:{default:st}}tt.default=(0,Ut.default)(function(st,dt,St){return(0,rt.default)(st,(0,lt.default)((0,ut.default)(dt)),St)},3),et.exports=tt.default},6959:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(Ut,ot,st,dt){let St=!1,pt=!1,Rt=!1,Bt=0,ht=0;function mt(){Bt>=ot||Rt||St||(Rt=!0,Ut.next().then(({value:Tt,done:ft})=>{if(!pt&&!St){if(Rt=!1,ft)return St=!0,void(Bt<=0&&dt(null));Bt++,st(Tt,ht,gt),ht++,mt()}}).catch(Vt))}function gt(Tt,ft){if(Bt-=1,!pt)return Tt?Vt(Tt):Tt===!1?(St=!0,void(pt=!0)):ft===ut.default||St&&Bt<=0?(St=!0,dt(null)):void mt()}function Vt(Tt){pt||(Rt=!1,St=!0,dt(Tt))}mt()};var rt,lt=nt(1371),ut=(rt=lt)&&rt.__esModule?rt:{default:rt};et.exports=tt.default},6280:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt,rt){if(rt||(rt=nt.length),!rt)throw new Error("arity is undefined");return function(...lt){return typeof lt[rt-1]=="function"?nt.apply(this,lt):new Promise((ut,Ut)=>{lt[rt-1]=(ot,...st)=>{if(ot)return Ut(ot);ut(st.length>1?st:st[0])},nt.apply(this,lt)})}},et.exports=tt.default},1371:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default={},et.exports=tt.default},6513:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=dt(nt(6297)),lt=dt(nt(1586)),ut=dt(nt(6083)),Ut=nt(1214),ot=dt(nt(6959)),st=dt(nt(1371));function dt(St){return St&&St.__esModule?St:{default:St}}tt.default=St=>(pt,Rt,Bt)=>{if(Bt=(0,rt.default)(Bt),St<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!pt)return Bt(null);if((0,Ut.isAsyncGenerator)(pt))return(0,ot.default)(pt,St,Rt,Bt);if((0,Ut.isAsyncIterable)(pt))return(0,ot.default)(pt[Symbol.asyncIterator](),St,Rt,Bt);var ht=(0,lt.default)(pt),mt=!1,gt=!1,Vt=0,Tt=!1;function ft(yt,Kt){if(!gt)if(Vt-=1,yt)mt=!0,Bt(yt);else if(yt===!1)mt=!0,gt=!0;else{if(Kt===st.default||mt&&Vt<=0)return mt=!0,Bt(null);Tt||Wt()}}function Wt(){for(Tt=!0;Vt{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return nt[Symbol.iterator]&&nt[Symbol.iterator]()},et.exports=tt.default},6172:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return function(...rt){var lt=rt.pop();return nt.call(this,rt,lt)}},et.exports=tt.default},7804:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return nt&&typeof nt.length=="number"&&nt.length>=0&&nt.length%1==0},et.exports=tt.default},1586:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(Ut){if((0,rt.default)(Ut))return function(Rt){var Bt=-1,ht=Rt.length;return function(){return++Bt{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){function rt(...lt){if(nt!==null){var ut=nt;nt=null,ut.apply(this,lt)}}return Object.assign(rt,nt),rt},et.exports=tt.default},6083:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return function(...rt){if(nt===null)throw new Error("Callback was already called.");var lt=nt;nt=null,lt.apply(this,rt)}},et.exports=tt.default},7075:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0});var rt=Ut(nt(7804)),lt=Ut(nt(1214)),ut=Ut(nt(6280));function Ut(ot){return ot&&ot.__esModule?ot:{default:ot}}tt.default=(0,ut.default)((ot,st,dt)=>{var St=(0,rt.default)(st)?[]:{};ot(st,(pt,Rt,Bt)=>{(0,lt.default)(pt)((ht,...mt)=>{mt.length<2&&([mt]=mt),St[Rt]=mt,Bt(ht)})},pt=>dt(pt,St))},3),et.exports=tt.default},6857:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.fallback=Ut,tt.wrap=ot;var nt,rt=tt.hasQueueMicrotask=typeof queueMicrotask=="function"&&queueMicrotask,lt=tt.hasSetImmediate=typeof setImmediate=="function"&&setImmediate,ut=tt.hasNextTick=typeof process=="object"&&typeof process.nextTick=="function";function Ut(st){setTimeout(st,0)}function ot(st){return(dt,...St)=>st(()=>dt(...St))}nt=rt?queueMicrotask:lt?setImmediate:ut?process.nextTick:Ut,tt.default=ot(nt)},4344:(et,tt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(nt){return(rt,lt,ut)=>nt(rt,ut)},et.exports=tt.default},1214:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.isAsyncIterable=tt.isAsyncGenerator=tt.isAsync=void 0;var rt,lt=nt(2530),ut=(rt=lt)&&rt.__esModule?rt:{default:rt};function Ut(ot){return ot[Symbol.toStringTag]==="AsyncFunction"}tt.default=function(ot){if(typeof ot!="function")throw new Error("expected a function");return Ut(ot)?(0,ut.default)(ot):ot},tt.isAsync=Ut,tt.isAsyncGenerator=function(ot){return ot[Symbol.toStringTag]==="AsyncGenerator"},tt.isAsyncIterable=function(ot){return typeof ot[Symbol.asyncIterator]=="function"}},481:(et,tt,nt)=>{Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(Ut,ot){return(0,rt.default)(lt.default,Ut,ot)};var rt=ut(nt(7075)),lt=ut(nt(5313));function ut(Ut){return Ut&&Ut.__esModule?Ut:{default:Ut}}et.exports=tt.default},7991:(et,tt)=>{tt.byteLength=function(St){var pt=st(St),Rt=pt[0],Bt=pt[1];return 3*(Rt+Bt)/4-Bt},tt.toByteArray=function(St){var pt,Rt,Bt=st(St),ht=Bt[0],mt=Bt[1],gt=new lt(function(ft,Wt,yt){return 3*(Wt+yt)/4-yt}(0,ht,mt)),Vt=0,Tt=mt>0?ht-4:ht;for(Rt=0;Rt>16&255,gt[Vt++]=pt>>8&255,gt[Vt++]=255&pt;return mt===2&&(pt=rt[St.charCodeAt(Rt)]<<2|rt[St.charCodeAt(Rt+1)]>>4,gt[Vt++]=255&pt),mt===1&&(pt=rt[St.charCodeAt(Rt)]<<10|rt[St.charCodeAt(Rt+1)]<<4|rt[St.charCodeAt(Rt+2)]>>2,gt[Vt++]=pt>>8&255,gt[Vt++]=255&pt),gt},tt.fromByteArray=function(St){for(var pt,Rt=St.length,Bt=Rt%3,ht=[],mt=0,gt=Rt-Bt;mtgt?gt:mt+16383));return Bt===1?(pt=St[Rt-1],ht.push(nt[pt>>2]+nt[pt<<4&63]+"==")):Bt===2&&(pt=(St[Rt-2]<<8)+St[Rt-1],ht.push(nt[pt>>10]+nt[pt>>4&63]+nt[pt<<2&63]+"=")),ht.join("")};for(var nt=[],rt=[],lt=typeof Uint8Array<"u"?Uint8Array:Array,ut="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Ut=0,ot=ut.length;Ut0)throw new Error("Invalid string. Length must be a multiple of 4");var Rt=St.indexOf("=");return Rt===-1&&(Rt=pt),[Rt,Rt===pt?0:4-Rt%4]}function dt(St,pt,Rt){for(var Bt,ht,mt=[],gt=pt;gt>18&63]+nt[ht>>12&63]+nt[ht>>6&63]+nt[63&ht]);return mt.join("")}rt["-".charCodeAt(0)]=62,rt["_".charCodeAt(0)]=63},9811:(et,tt,nt)=>{var rt=nt(6093),lt=nt(4019),ut=nt(4442),Ut=nt(930),ot=nt(8388);for(var st in ot)tt[st]=ot[st];tt.NONE=0,tt.DEFLATE=1,tt.INFLATE=2,tt.GZIP=3,tt.GUNZIP=4,tt.DEFLATERAW=5,tt.INFLATERAW=6,tt.UNZIP=7;function dt(St){if(typeof St!="number"||Sttt.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=St,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}dt.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,rt(this.init_done,"close before init"),rt(this.mode<=tt.UNZIP),this.mode===tt.DEFLATE||this.mode===tt.GZIP||this.mode===tt.DEFLATERAW?ut.deflateEnd(this.strm):this.mode!==tt.INFLATE&&this.mode!==tt.GUNZIP&&this.mode!==tt.INFLATERAW&&this.mode!==tt.UNZIP||Ut.inflateEnd(this.strm),this.mode=tt.NONE,this.dictionary=null)},dt.prototype.write=function(St,pt,Rt,Bt,ht,mt,gt){return this._write(!0,St,pt,Rt,Bt,ht,mt,gt)},dt.prototype.writeSync=function(St,pt,Rt,Bt,ht,mt,gt){return this._write(!1,St,pt,Rt,Bt,ht,mt,gt)},dt.prototype._write=function(St,pt,Rt,Bt,ht,mt,gt,Vt){if(rt.equal(arguments.length,8),rt(this.init_done,"write before init"),rt(this.mode!==tt.NONE,"already finalized"),rt.equal(!1,this.write_in_progress,"write already in progress"),rt.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,rt.equal(!1,pt===void 0,"must provide flush value"),this.write_in_progress=!0,pt!==tt.Z_NO_FLUSH&&pt!==tt.Z_PARTIAL_FLUSH&&pt!==tt.Z_SYNC_FLUSH&&pt!==tt.Z_FULL_FLUSH&&pt!==tt.Z_FINISH&&pt!==tt.Z_BLOCK)throw new Error("Invalid flush value");if(Rt==null&&(Rt=Buffer.alloc(0),ht=0,Bt=0),this.strm.avail_in=ht,this.strm.input=Rt,this.strm.next_in=Bt,this.strm.avail_out=Vt,this.strm.output=mt,this.strm.next_out=gt,this.flush=pt,!St)return this._process(),this._checkError()?this._afterSync():void 0;var Tt=this;return process.nextTick(function(){Tt._process(),Tt._after()}),this},dt.prototype._afterSync=function(){var St=this.strm.avail_out,pt=this.strm.avail_in;return this.write_in_progress=!1,[pt,St]},dt.prototype._process=function(){var St=null;switch(this.mode){case tt.DEFLATE:case tt.GZIP:case tt.DEFLATERAW:this.err=ut.deflate(this.strm,this.flush);break;case tt.UNZIP:switch(this.strm.avail_in>0&&(St=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(St===null)break;if(this.strm.input[St]!==31){this.mode=tt.INFLATE;break}if(this.gzip_id_bytes_read=1,St++,this.strm.avail_in===1)break;case 1:if(St===null)break;this.strm.input[St]===139?(this.gzip_id_bytes_read=2,this.mode=tt.GUNZIP):this.mode=tt.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case tt.INFLATE:case tt.GUNZIP:case tt.INFLATERAW:for(this.err=Ut.inflate(this.strm,this.flush),this.err===tt.Z_NEED_DICT&&this.dictionary&&(this.err=Ut.inflateSetDictionary(this.strm,this.dictionary),this.err===tt.Z_OK?this.err=Ut.inflate(this.strm,this.flush):this.err===tt.Z_DATA_ERROR&&(this.err=tt.Z_NEED_DICT));this.strm.avail_in>0&&this.mode===tt.GUNZIP&&this.err===tt.Z_STREAM_END&&this.strm.next_in[0]!==0;)this.reset(),this.err=Ut.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},dt.prototype._checkError=function(){switch(this.err){case tt.Z_OK:case tt.Z_BUF_ERROR:if(this.strm.avail_out!==0&&this.flush===tt.Z_FINISH)return this._error("unexpected end of file"),!1;break;case tt.Z_STREAM_END:break;case tt.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},dt.prototype._after=function(){if(this._checkError()){var St=this.strm.avail_out,pt=this.strm.avail_in;this.write_in_progress=!1,this.callback(pt,St),this.pending_close&&this.close()}},dt.prototype._error=function(St){this.strm.msg&&(St=this.strm.msg),this.onerror(St,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},dt.prototype.init=function(St,pt,Rt,Bt,ht){rt(arguments.length===4||arguments.length===5,"init(windowBits, level, memLevel, strategy, [dictionary])"),rt(St>=8&&St<=15,"invalid windowBits"),rt(pt>=-1&&pt<=9,"invalid compression level"),rt(Rt>=1&&Rt<=9,"invalid memlevel"),rt(Bt===tt.Z_FILTERED||Bt===tt.Z_HUFFMAN_ONLY||Bt===tt.Z_RLE||Bt===tt.Z_FIXED||Bt===tt.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(pt,St,Rt,Bt,ht),this._setDictionary()},dt.prototype.params=function(){throw new Error("deflateParams Not supported")},dt.prototype.reset=function(){this._reset(),this._setDictionary()},dt.prototype._init=function(St,pt,Rt,Bt,ht){switch(this.level=St,this.windowBits=pt,this.memLevel=Rt,this.strategy=Bt,this.flush=tt.Z_NO_FLUSH,this.err=tt.Z_OK,this.mode!==tt.GZIP&&this.mode!==tt.GUNZIP||(this.windowBits+=16),this.mode===tt.UNZIP&&(this.windowBits+=32),this.mode!==tt.DEFLATERAW&&this.mode!==tt.INFLATERAW||(this.windowBits=-1*this.windowBits),this.strm=new lt,this.mode){case tt.DEFLATE:case tt.GZIP:case tt.DEFLATERAW:this.err=ut.deflateInit2(this.strm,this.level,tt.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case tt.INFLATE:case tt.GUNZIP:case tt.INFLATERAW:case tt.UNZIP:this.err=Ut.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==tt.Z_OK&&this._error("Init error"),this.dictionary=ht,this.write_in_progress=!1,this.init_done=!0},dt.prototype._setDictionary=function(){if(this.dictionary!=null){switch(this.err=tt.Z_OK,this.mode){case tt.DEFLATE:case tt.DEFLATERAW:this.err=ut.deflateSetDictionary(this.strm,this.dictionary)}this.err!==tt.Z_OK&&this._error("Failed to set dictionary")}},dt.prototype._reset=function(){switch(this.err=tt.Z_OK,this.mode){case tt.DEFLATE:case tt.DEFLATERAW:case tt.GZIP:this.err=ut.deflateReset(this.strm);break;case tt.INFLATE:case tt.INFLATERAW:case tt.GUNZIP:this.err=Ut.inflateReset(this.strm)}this.err!==tt.Z_OK&&this._error("Failed to reset stream")},tt.Zlib=dt},7946:(et,tt,nt)=>{var rt=nt(1048).Buffer,lt=nt(1983).Transform,ut=nt(9811),Ut=nt(9208),ot=nt(6093).ok,st=nt(1048).kMaxLength,dt="Cannot create final Buffer. It would be larger than 0x"+st.toString(16)+" bytes";ut.Z_MIN_WINDOWBITS=8,ut.Z_MAX_WINDOWBITS=15,ut.Z_DEFAULT_WINDOWBITS=15,ut.Z_MIN_CHUNK=64,ut.Z_MAX_CHUNK=1/0,ut.Z_DEFAULT_CHUNK=16384,ut.Z_MIN_MEMLEVEL=1,ut.Z_MAX_MEMLEVEL=9,ut.Z_DEFAULT_MEMLEVEL=8,ut.Z_MIN_LEVEL=-1,ut.Z_MAX_LEVEL=9,ut.Z_DEFAULT_LEVEL=ut.Z_DEFAULT_COMPRESSION;for(var St=Object.keys(ut),pt=0;pt=st?cn=new RangeError(dt):tn=rt.concat(Mt,nn),Mt=[],wt.close(),Ct(cn,tn)}wt.on("error",function(tn){wt.removeListener("end",Lt),wt.removeListener("readable",sn),Ct(tn)}),wt.on("end",Lt),wt.end(At),sn()}function Tt(wt,At){if(typeof At=="string"&&(At=rt.from(At)),!rt.isBuffer(At))throw new TypeError("Not a string or buffer");var Ct=wt._finishFlushFlag;return wt._processChunk(At,Ct)}function ft(wt){if(!(this instanceof ft))return new ft(wt);kt.call(this,wt,ut.DEFLATE)}function Wt(wt){if(!(this instanceof Wt))return new Wt(wt);kt.call(this,wt,ut.INFLATE)}function yt(wt){if(!(this instanceof yt))return new yt(wt);kt.call(this,wt,ut.GZIP)}function Kt(wt){if(!(this instanceof Kt))return new Kt(wt);kt.call(this,wt,ut.GUNZIP)}function $t(wt){if(!(this instanceof $t))return new $t(wt);kt.call(this,wt,ut.DEFLATERAW)}function Ht(wt){if(!(this instanceof Ht))return new Ht(wt);kt.call(this,wt,ut.INFLATERAW)}function Nt(wt){if(!(this instanceof Nt))return new Nt(wt);kt.call(this,wt,ut.UNZIP)}function qt(wt){return wt===ut.Z_NO_FLUSH||wt===ut.Z_PARTIAL_FLUSH||wt===ut.Z_SYNC_FLUSH||wt===ut.Z_FULL_FLUSH||wt===ut.Z_FINISH||wt===ut.Z_BLOCK}function kt(wt,At){var Ct=this;if(this._opts=wt=wt||{},this._chunkSize=wt.chunkSize||tt.Z_DEFAULT_CHUNK,lt.call(this,wt),wt.flush&&!qt(wt.flush))throw new Error("Invalid flush flag: "+wt.flush);if(wt.finishFlush&&!qt(wt.finishFlush))throw new Error("Invalid flush flag: "+wt.finishFlush);if(this._flushFlag=wt.flush||ut.Z_NO_FLUSH,this._finishFlushFlag=wt.finishFlush!==void 0?wt.finishFlush:ut.Z_FINISH,wt.chunkSize&&(wt.chunkSizett.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+wt.chunkSize);if(wt.windowBits&&(wt.windowBitstt.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+wt.windowBits);if(wt.level&&(wt.leveltt.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+wt.level);if(wt.memLevel&&(wt.memLeveltt.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+wt.memLevel);if(wt.strategy&&wt.strategy!=tt.Z_FILTERED&&wt.strategy!=tt.Z_HUFFMAN_ONLY&&wt.strategy!=tt.Z_RLE&&wt.strategy!=tt.Z_FIXED&&wt.strategy!=tt.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+wt.strategy);if(wt.dictionary&&!rt.isBuffer(wt.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new ut.Zlib(At);var Mt=this;this._hadError=!1,this._handle.onerror=function(Lt,tn){bt(Mt),Mt._hadError=!0;var cn=new Error(Lt);cn.errno=tn,cn.code=tt.codes[tn],Mt.emit("error",cn)};var nn=tt.Z_DEFAULT_COMPRESSION;typeof wt.level=="number"&&(nn=wt.level);var sn=tt.Z_DEFAULT_STRATEGY;typeof wt.strategy=="number"&&(sn=wt.strategy),this._handle.init(wt.windowBits||tt.Z_DEFAULT_WINDOWBITS,nn,wt.memLevel||tt.Z_DEFAULT_MEMLEVEL,sn,wt.dictionary),this._buffer=rt.allocUnsafe(this._chunkSize),this._offset=0,this._level=nn,this._strategy=sn,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!Ct._handle},configurable:!0,enumerable:!0})}function bt(wt,At){At&&process.nextTick(At),wt._handle&&(wt._handle.close(),wt._handle=null)}function Jt(wt){wt.emit("close")}Object.defineProperty(tt,"codes",{enumerable:!0,value:Object.freeze(Bt),writable:!1}),tt.Deflate=ft,tt.Inflate=Wt,tt.Gzip=yt,tt.Gunzip=Kt,tt.DeflateRaw=$t,tt.InflateRaw=Ht,tt.Unzip=Nt,tt.createDeflate=function(wt){return new ft(wt)},tt.createInflate=function(wt){return new Wt(wt)},tt.createDeflateRaw=function(wt){return new $t(wt)},tt.createInflateRaw=function(wt){return new Ht(wt)},tt.createGzip=function(wt){return new yt(wt)},tt.createGunzip=function(wt){return new Kt(wt)},tt.createUnzip=function(wt){return new Nt(wt)},tt.deflate=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new ft(At),wt,Ct)},tt.deflateSync=function(wt,At){return Tt(new ft(At),wt)},tt.gzip=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new yt(At),wt,Ct)},tt.gzipSync=function(wt,At){return Tt(new yt(At),wt)},tt.deflateRaw=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new $t(At),wt,Ct)},tt.deflateRawSync=function(wt,At){return Tt(new $t(At),wt)},tt.unzip=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new Nt(At),wt,Ct)},tt.unzipSync=function(wt,At){return Tt(new Nt(At),wt)},tt.inflate=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new Wt(At),wt,Ct)},tt.inflateSync=function(wt,At){return Tt(new Wt(At),wt)},tt.gunzip=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new Kt(At),wt,Ct)},tt.gunzipSync=function(wt,At){return Tt(new Kt(At),wt)},tt.inflateRaw=function(wt,At,Ct){return typeof At=="function"&&(Ct=At,At={}),Vt(new Ht(At),wt,Ct)},tt.inflateRawSync=function(wt,At){return Tt(new Ht(At),wt)},Ut.inherits(kt,lt),kt.prototype.params=function(wt,At,Ct){if(wttt.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+wt);if(At!=tt.Z_FILTERED&&At!=tt.Z_HUFFMAN_ONLY&&At!=tt.Z_RLE&&At!=tt.Z_FIXED&&At!=tt.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+At);if(this._level!==wt||this._strategy!==At){var Mt=this;this.flush(ut.Z_SYNC_FLUSH,function(){ot(Mt._handle,"zlib binding closed"),Mt._handle.params(wt,At),Mt._hadError||(Mt._level=wt,Mt._strategy=At,Ct&&Ct())})}else process.nextTick(Ct)},kt.prototype.reset=function(){return ot(this._handle,"zlib binding closed"),this._handle.reset()},kt.prototype._flush=function(wt){this._transform(rt.alloc(0),"",wt)},kt.prototype.flush=function(wt,At){var Ct=this,Mt=this._writableState;(typeof wt=="function"||wt===void 0&&!At)&&(At=wt,wt=ut.Z_FULL_FLUSH),Mt.ended?At&&process.nextTick(At):Mt.ending?At&&this.once("end",At):Mt.needDrain?At&&this.once("drain",function(){return Ct.flush(wt,At)}):(this._flushFlag=wt,this.write(rt.alloc(0),"",At))},kt.prototype.close=function(wt){bt(this,wt),process.nextTick(Jt,this)},kt.prototype._transform=function(wt,At,Ct){var Mt,nn=this._writableState,sn=(nn.ending||nn.ended)&&(!wt||nn.length===wt.length);return wt===null||rt.isBuffer(wt)?this._handle?(sn?Mt=this._finishFlushFlag:(Mt=this._flushFlag,wt.length>=nn.length&&(this._flushFlag=this._opts.flush||ut.Z_NO_FLUSH)),void this._processChunk(wt,Mt,Ct)):Ct(new Error("zlib binding closed")):Ct(new Error("invalid input"))},kt.prototype._processChunk=function(wt,At,Ct){var Mt=wt&&wt.length,nn=this._chunkSize-this._offset,sn=0,Lt=this,tn=typeof Ct=="function";if(!tn){var cn,on=[],Gt=0;this.on("error",function(fn){cn=fn}),ot(this._handle,"zlib binding closed");do var Xt=this._handle.writeSync(At,wt,sn,Mt,this._buffer,this._offset,nn);while(!this._hadError&&Fn(Xt[0],Xt[1]));if(this._hadError)throw cn;if(Gt>=st)throw bt(this),new RangeError(dt);var dn=rt.concat(on,Gt);return bt(this),dn}ot(this._handle,"zlib binding closed");var Vn=this._handle.write(At,wt,sn,Mt,this._buffer,this._offset,nn);function Fn(fn,Un){if(this&&(this.buffer=null,this.callback=null),!Lt._hadError){var Jn=nn-Un;if(ot(Jn>=0,"have should not go down"),Jn>0){var _n=Lt._buffer.slice(Lt._offset,Lt._offset+Jn);Lt._offset+=Jn,tn?Lt.push(_n):(on.push(_n),Gt+=_n.length)}if((Un===0||Lt._offset>=Lt._chunkSize)&&(nn=Lt._chunkSize,Lt._offset=0,Lt._buffer=rt.allocUnsafe(Lt._chunkSize)),Un===0){if(sn+=Mt-fn,Mt=fn,!tn)return!0;var Zn=Lt._handle.write(At,wt,sn,Mt,Lt._buffer,Lt._offset,Lt._chunkSize);return Zn.callback=Fn,void(Zn.buffer=wt)}if(!tn)return!1;Ct()}}Vn.buffer=wt,Vn.callback=Fn},Ut.inherits(ft,kt),Ut.inherits(Wt,kt),Ut.inherits(yt,kt),Ut.inherits(Kt,kt),Ut.inherits($t,kt),Ut.inherits(Ht,kt),Ut.inherits(Nt,kt)},9860:(et,tt)=>{var nt=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function rt(Ut,ot){return Object.prototype.hasOwnProperty.call(Ut,ot)}tt.assign=function(Ut){for(var ot=Array.prototype.slice.call(arguments,1);ot.length;){var st=ot.shift();if(st){if(typeof st!="object")throw new TypeError(st+"must be non-object");for(var dt in st)rt(st,dt)&&(Ut[dt]=st[dt])}}return Ut},tt.shrinkBuf=function(Ut,ot){return Ut.length===ot?Ut:Ut.subarray?Ut.subarray(0,ot):(Ut.length=ot,Ut)};var lt={arraySet:function(Ut,ot,st,dt,St){if(ot.subarray&&Ut.subarray)Ut.set(ot.subarray(st,st+dt),St);else for(var pt=0;pt{et.exports=function(tt,nt,rt,lt){for(var ut=65535&tt|0,Ut=tt>>>16&65535|0,ot=0;rt!==0;){rt-=ot=rt>2e3?2e3:rt;do Ut=Ut+(ut=ut+nt[lt++]|0)|0;while(--ot);ut%=65521,Ut%=65521}return ut|Ut<<16|0}},8388:et=>{et.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}},7430:et=>{var tt=function(){for(var nt,rt=[],lt=0;lt<256;lt++){nt=lt;for(var ut=0;ut<8;ut++)nt=1&nt?3988292384^nt>>>1:nt>>>1;rt[lt]=nt}return rt}();et.exports=function(nt,rt,lt,ut){var Ut=tt,ot=ut+lt;nt^=-1;for(var st=ut;st>>8^Ut[255&(nt^rt[st])];return-1^nt}},4442:(et,tt,nt)=>{var rt,lt=nt(9860),ut=nt(7504),Ut=nt(1196),ot=nt(7430),st=nt(1925);function dt(Nt,qt){return Nt.msg=st[qt],qt}function St(Nt){return(Nt<<1)-(Nt>4?9:0)}function pt(Nt){for(var qt=Nt.length;--qt>=0;)Nt[qt]=0}function Rt(Nt){var qt=Nt.state,kt=qt.pending;kt>Nt.avail_out&&(kt=Nt.avail_out),kt!==0&&(lt.arraySet(Nt.output,qt.pending_buf,qt.pending_out,kt,Nt.next_out),Nt.next_out+=kt,qt.pending_out+=kt,Nt.total_out+=kt,Nt.avail_out-=kt,qt.pending-=kt,qt.pending===0&&(qt.pending_out=0))}function Bt(Nt,qt){ut._tr_flush_block(Nt,Nt.block_start>=0?Nt.block_start:-1,Nt.strstart-Nt.block_start,qt),Nt.block_start=Nt.strstart,Rt(Nt.strm)}function ht(Nt,qt){Nt.pending_buf[Nt.pending++]=qt}function mt(Nt,qt){Nt.pending_buf[Nt.pending++]=qt>>>8&255,Nt.pending_buf[Nt.pending++]=255&qt}function gt(Nt,qt){var kt,bt,Jt=Nt.max_chain_length,wt=Nt.strstart,At=Nt.prev_length,Ct=Nt.nice_match,Mt=Nt.strstart>Nt.w_size-262?Nt.strstart-(Nt.w_size-262):0,nn=Nt.window,sn=Nt.w_mask,Lt=Nt.prev,tn=Nt.strstart+258,cn=nn[wt+At-1],on=nn[wt+At];Nt.prev_length>=Nt.good_match&&(Jt>>=2),Ct>Nt.lookahead&&(Ct=Nt.lookahead);do if(nn[(kt=qt)+At]===on&&nn[kt+At-1]===cn&&nn[kt]===nn[wt]&&nn[++kt]===nn[wt+1]){wt+=2,kt++;do;while(nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&nn[++wt]===nn[++kt]&&wtAt){if(Nt.match_start=qt,At=bt,bt>=Ct)break;cn=nn[wt+At-1],on=nn[wt+At]}}while((qt=Lt[qt&sn])>Mt&&--Jt!=0);return At<=Nt.lookahead?At:Nt.lookahead}function Vt(Nt){var qt,kt,bt,Jt,wt,At,Ct,Mt,nn,sn,Lt=Nt.w_size;do{if(Jt=Nt.window_size-Nt.lookahead-Nt.strstart,Nt.strstart>=Lt+(Lt-262)){lt.arraySet(Nt.window,Nt.window,Lt,Lt,0),Nt.match_start-=Lt,Nt.strstart-=Lt,Nt.block_start-=Lt,qt=kt=Nt.hash_size;do bt=Nt.head[--qt],Nt.head[qt]=bt>=Lt?bt-Lt:0;while(--kt);qt=kt=Lt;do bt=Nt.prev[--qt],Nt.prev[qt]=bt>=Lt?bt-Lt:0;while(--kt);Jt+=Lt}if(Nt.strm.avail_in===0)break;if(At=Nt.strm,Ct=Nt.window,Mt=Nt.strstart+Nt.lookahead,nn=Jt,sn=void 0,(sn=At.avail_in)>nn&&(sn=nn),kt=sn===0?0:(At.avail_in-=sn,lt.arraySet(Ct,At.input,At.next_in,sn,Mt),At.state.wrap===1?At.adler=Ut(At.adler,Ct,sn,Mt):At.state.wrap===2&&(At.adler=ot(At.adler,Ct,sn,Mt)),At.next_in+=sn,At.total_in+=sn,sn),Nt.lookahead+=kt,Nt.lookahead+Nt.insert>=3)for(wt=Nt.strstart-Nt.insert,Nt.ins_h=Nt.window[wt],Nt.ins_h=(Nt.ins_h<=3&&(Nt.ins_h=(Nt.ins_h<=3)if(bt=ut._tr_tally(Nt,Nt.strstart-Nt.match_start,Nt.match_length-3),Nt.lookahead-=Nt.match_length,Nt.match_length<=Nt.max_lazy_match&&Nt.lookahead>=3){Nt.match_length--;do Nt.strstart++,Nt.ins_h=(Nt.ins_h<=3&&(Nt.ins_h=(Nt.ins_h<4096)&&(Nt.match_length=2)),Nt.prev_length>=3&&Nt.match_length<=Nt.prev_length){Jt=Nt.strstart+Nt.lookahead-3,bt=ut._tr_tally(Nt,Nt.strstart-1-Nt.prev_match,Nt.prev_length-3),Nt.lookahead-=Nt.prev_length-1,Nt.prev_length-=2;do++Nt.strstart<=Jt&&(Nt.ins_h=(Nt.ins_h<15&&(At=2,bt-=16),Jt<1||Jt>9||kt!==8||bt<8||bt>15||qt<0||qt>9||wt<0||wt>4)return dt(Nt,-2);bt===8&&(bt=9);var Ct=new yt;return Nt.state=Ct,Ct.strm=Nt,Ct.wrap=At,Ct.gzhead=null,Ct.w_bits=bt,Ct.w_size=1<Nt.pending_buf_size-5&&(kt=Nt.pending_buf_size-5);;){if(Nt.lookahead<=1){if(Vt(Nt),Nt.lookahead===0&&qt===0)return 1;if(Nt.lookahead===0)break}Nt.strstart+=Nt.lookahead,Nt.lookahead=0;var bt=Nt.block_start+kt;if((Nt.strstart===0||Nt.strstart>=bt)&&(Nt.lookahead=Nt.strstart-bt,Nt.strstart=bt,Bt(Nt,!1),Nt.strm.avail_out===0)||Nt.strstart-Nt.block_start>=Nt.w_size-262&&(Bt(Nt,!1),Nt.strm.avail_out===0))return 1}return Nt.insert=0,qt===4?(Bt(Nt,!0),Nt.strm.avail_out===0?3:4):(Nt.strstart>Nt.block_start&&(Bt(Nt,!1),Nt.strm.avail_out),1)}),new Wt(4,4,8,4,Tt),new Wt(4,5,16,8,Tt),new Wt(4,6,32,32,Tt),new Wt(4,4,16,16,ft),new Wt(8,16,32,32,ft),new Wt(8,16,128,128,ft),new Wt(8,32,128,256,ft),new Wt(32,128,258,1024,ft),new Wt(32,258,258,4096,ft)],tt.deflateInit=function(Nt,qt){return Ht(Nt,qt,8,15,8,0)},tt.deflateInit2=Ht,tt.deflateReset=$t,tt.deflateResetKeep=Kt,tt.deflateSetHeader=function(Nt,qt){return Nt&&Nt.state?Nt.state.wrap!==2?-2:(Nt.state.gzhead=qt,0):-2},tt.deflate=function(Nt,qt){var kt,bt,Jt,wt;if(!Nt||!Nt.state||qt>5||qt<0)return Nt?dt(Nt,-2):-2;if(bt=Nt.state,!Nt.output||!Nt.input&&Nt.avail_in!==0||bt.status===666&&qt!==4)return dt(Nt,Nt.avail_out===0?-5:-2);if(bt.strm=Nt,kt=bt.last_flush,bt.last_flush=qt,bt.status===42)if(bt.wrap===2)Nt.adler=0,ht(bt,31),ht(bt,139),ht(bt,8),bt.gzhead?(ht(bt,(bt.gzhead.text?1:0)+(bt.gzhead.hcrc?2:0)+(bt.gzhead.extra?4:0)+(bt.gzhead.name?8:0)+(bt.gzhead.comment?16:0)),ht(bt,255&bt.gzhead.time),ht(bt,bt.gzhead.time>>8&255),ht(bt,bt.gzhead.time>>16&255),ht(bt,bt.gzhead.time>>24&255),ht(bt,bt.level===9?2:bt.strategy>=2||bt.level<2?4:0),ht(bt,255&bt.gzhead.os),bt.gzhead.extra&&bt.gzhead.extra.length&&(ht(bt,255&bt.gzhead.extra.length),ht(bt,bt.gzhead.extra.length>>8&255)),bt.gzhead.hcrc&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending,0)),bt.gzindex=0,bt.status=69):(ht(bt,0),ht(bt,0),ht(bt,0),ht(bt,0),ht(bt,0),ht(bt,bt.level===9?2:bt.strategy>=2||bt.level<2?4:0),ht(bt,3),bt.status=113);else{var At=8+(bt.w_bits-8<<4)<<8;At|=(bt.strategy>=2||bt.level<2?0:bt.level<6?1:bt.level===6?2:3)<<6,bt.strstart!==0&&(At|=32),At+=31-At%31,bt.status=113,mt(bt,At),bt.strstart!==0&&(mt(bt,Nt.adler>>>16),mt(bt,65535&Nt.adler)),Nt.adler=1}if(bt.status===69)if(bt.gzhead.extra){for(Jt=bt.pending;bt.gzindex<(65535&bt.gzhead.extra.length)&&(bt.pending!==bt.pending_buf_size||(bt.gzhead.hcrc&&bt.pending>Jt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),Rt(Nt),Jt=bt.pending,bt.pending!==bt.pending_buf_size));)ht(bt,255&bt.gzhead.extra[bt.gzindex]),bt.gzindex++;bt.gzhead.hcrc&&bt.pending>Jt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),bt.gzindex===bt.gzhead.extra.length&&(bt.gzindex=0,bt.status=73)}else bt.status=73;if(bt.status===73)if(bt.gzhead.name){Jt=bt.pending;do{if(bt.pending===bt.pending_buf_size&&(bt.gzhead.hcrc&&bt.pending>Jt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),Rt(Nt),Jt=bt.pending,bt.pending===bt.pending_buf_size)){wt=1;break}wt=bt.gzindexJt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),wt===0&&(bt.gzindex=0,bt.status=91)}else bt.status=91;if(bt.status===91)if(bt.gzhead.comment){Jt=bt.pending;do{if(bt.pending===bt.pending_buf_size&&(bt.gzhead.hcrc&&bt.pending>Jt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),Rt(Nt),Jt=bt.pending,bt.pending===bt.pending_buf_size)){wt=1;break}wt=bt.gzindexJt&&(Nt.adler=ot(Nt.adler,bt.pending_buf,bt.pending-Jt,Jt)),wt===0&&(bt.status=103)}else bt.status=103;if(bt.status===103&&(bt.gzhead.hcrc?(bt.pending+2>bt.pending_buf_size&&Rt(Nt),bt.pending+2<=bt.pending_buf_size&&(ht(bt,255&Nt.adler),ht(bt,Nt.adler>>8&255),Nt.adler=0,bt.status=113)):bt.status=113),bt.pending!==0){if(Rt(Nt),Nt.avail_out===0)return bt.last_flush=-1,0}else if(Nt.avail_in===0&&St(qt)<=St(kt)&&qt!==4)return dt(Nt,-5);if(bt.status===666&&Nt.avail_in!==0)return dt(Nt,-5);if(Nt.avail_in!==0||bt.lookahead!==0||qt!==0&&bt.status!==666){var Ct=bt.strategy===2?function(Mt,nn){for(var sn;;){if(Mt.lookahead===0&&(Vt(Mt),Mt.lookahead===0)){if(nn===0)return 1;break}if(Mt.match_length=0,sn=ut._tr_tally(Mt,0,Mt.window[Mt.strstart]),Mt.lookahead--,Mt.strstart++,sn&&(Bt(Mt,!1),Mt.strm.avail_out===0))return 1}return Mt.insert=0,nn===4?(Bt(Mt,!0),Mt.strm.avail_out===0?3:4):Mt.last_lit&&(Bt(Mt,!1),Mt.strm.avail_out===0)?1:2}(bt,qt):bt.strategy===3?function(Mt,nn){for(var sn,Lt,tn,cn,on=Mt.window;;){if(Mt.lookahead<=258){if(Vt(Mt),Mt.lookahead<=258&&nn===0)return 1;if(Mt.lookahead===0)break}if(Mt.match_length=0,Mt.lookahead>=3&&Mt.strstart>0&&(Lt=on[tn=Mt.strstart-1])===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]){cn=Mt.strstart+258;do;while(Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&Lt===on[++tn]&&tnMt.lookahead&&(Mt.match_length=Mt.lookahead)}if(Mt.match_length>=3?(sn=ut._tr_tally(Mt,1,Mt.match_length-3),Mt.lookahead-=Mt.match_length,Mt.strstart+=Mt.match_length,Mt.match_length=0):(sn=ut._tr_tally(Mt,0,Mt.window[Mt.strstart]),Mt.lookahead--,Mt.strstart++),sn&&(Bt(Mt,!1),Mt.strm.avail_out===0))return 1}return Mt.insert=0,nn===4?(Bt(Mt,!0),Mt.strm.avail_out===0?3:4):Mt.last_lit&&(Bt(Mt,!1),Mt.strm.avail_out===0)?1:2}(bt,qt):rt[bt.level].func(bt,qt);if(Ct!==3&&Ct!==4||(bt.status=666),Ct===1||Ct===3)return Nt.avail_out===0&&(bt.last_flush=-1),0;if(Ct===2&&(qt===1?ut._tr_align(bt):qt!==5&&(ut._tr_stored_block(bt,0,0,!1),qt===3&&(pt(bt.head),bt.lookahead===0&&(bt.strstart=0,bt.block_start=0,bt.insert=0))),Rt(Nt),Nt.avail_out===0))return bt.last_flush=-1,0}return qt!==4?0:bt.wrap<=0?1:(bt.wrap===2?(ht(bt,255&Nt.adler),ht(bt,Nt.adler>>8&255),ht(bt,Nt.adler>>16&255),ht(bt,Nt.adler>>24&255),ht(bt,255&Nt.total_in),ht(bt,Nt.total_in>>8&255),ht(bt,Nt.total_in>>16&255),ht(bt,Nt.total_in>>24&255)):(mt(bt,Nt.adler>>>16),mt(bt,65535&Nt.adler)),Rt(Nt),bt.wrap>0&&(bt.wrap=-bt.wrap),bt.pending!==0?0:1)},tt.deflateEnd=function(Nt){var qt;return Nt&&Nt.state?(qt=Nt.state.status)!==42&&qt!==69&&qt!==73&&qt!==91&&qt!==103&&qt!==113&&qt!==666?dt(Nt,-2):(Nt.state=null,qt===113?dt(Nt,-3):0):-2},tt.deflateSetDictionary=function(Nt,qt){var kt,bt,Jt,wt,At,Ct,Mt,nn,sn=qt.length;if(!Nt||!Nt.state||(wt=(kt=Nt.state).wrap)===2||wt===1&&kt.status!==42||kt.lookahead)return-2;for(wt===1&&(Nt.adler=Ut(Nt.adler,qt,sn,0)),kt.wrap=0,sn>=kt.w_size&&(wt===0&&(pt(kt.head),kt.strstart=0,kt.block_start=0,kt.insert=0),nn=new lt.Buf8(kt.w_size),lt.arraySet(nn,qt,sn-kt.w_size,kt.w_size,0),qt=nn,sn=kt.w_size),At=Nt.avail_in,Ct=Nt.next_in,Mt=Nt.input,Nt.avail_in=sn,Nt.next_in=0,Nt.input=qt,Vt(kt);kt.lookahead>=3;){bt=kt.strstart,Jt=kt.lookahead-2;do kt.ins_h=(kt.ins_h<{et.exports=function(tt,nt){var rt,lt,ut,Ut,ot,st,dt,St,pt,Rt,Bt,ht,mt,gt,Vt,Tt,ft,Wt,yt,Kt,$t,Ht,Nt,qt,kt;rt=tt.state,lt=tt.next_in,qt=tt.input,ut=lt+(tt.avail_in-5),Ut=tt.next_out,kt=tt.output,ot=Ut-(nt-tt.avail_out),st=Ut+(tt.avail_out-257),dt=rt.dmax,St=rt.wsize,pt=rt.whave,Rt=rt.wnext,Bt=rt.window,ht=rt.hold,mt=rt.bits,gt=rt.lencode,Vt=rt.distcode,Tt=(1<>>=yt=Wt>>>24,mt-=yt,(yt=Wt>>>16&255)===0)kt[Ut++]=65535&Wt;else{if(!(16&yt)){if(!(64&yt)){Wt=gt[(65535&Wt)+(ht&(1<>>=yt,mt-=yt),mt<15&&(ht+=qt[lt++]<>>=yt=Wt>>>24,mt-=yt,!(16&(yt=Wt>>>16&255))){if(!(64&yt)){Wt=Vt[(65535&Wt)+(ht&(1<dt){tt.msg="invalid distance too far back",rt.mode=30;break e}if(ht>>>=yt,mt-=yt,$t>(yt=Ut-ot)){if((yt=$t-yt)>pt&&rt.sane){tt.msg="invalid distance too far back",rt.mode=30;break e}if(Ht=0,Nt=Bt,Rt===0){if(Ht+=St-yt,yt2;)kt[Ut++]=Nt[Ht++],kt[Ut++]=Nt[Ht++],kt[Ut++]=Nt[Ht++],Kt-=3;Kt&&(kt[Ut++]=Nt[Ht++],Kt>1&&(kt[Ut++]=Nt[Ht++]))}else{Ht=Ut-$t;do kt[Ut++]=kt[Ht++],kt[Ut++]=kt[Ht++],kt[Ut++]=kt[Ht++],Kt-=3;while(Kt>2);Kt&&(kt[Ut++]=kt[Ht++],Kt>1&&(kt[Ut++]=kt[Ht++]))}break}}break}}while(lt>3,ht&=(1<<(mt-=Kt<<3))-1,tt.next_in=lt,tt.next_out=Ut,tt.avail_in=lt{var rt=nt(9860),lt=nt(1196),ut=nt(7430),Ut=nt(1628),ot=nt(7765);function st(ft){return(ft>>>24&255)+(ft>>>8&65280)+((65280&ft)<<8)+((255&ft)<<24)}function dt(){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 rt.Buf16(320),this.work=new rt.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function St(ft){var Wt;return ft&&ft.state?(Wt=ft.state,ft.total_in=ft.total_out=Wt.total=0,ft.msg="",Wt.wrap&&(ft.adler=1&Wt.wrap),Wt.mode=1,Wt.last=0,Wt.havedict=0,Wt.dmax=32768,Wt.head=null,Wt.hold=0,Wt.bits=0,Wt.lencode=Wt.lendyn=new rt.Buf32(852),Wt.distcode=Wt.distdyn=new rt.Buf32(592),Wt.sane=1,Wt.back=-1,0):-2}function pt(ft){var Wt;return ft&&ft.state?((Wt=ft.state).wsize=0,Wt.whave=0,Wt.wnext=0,St(ft)):-2}function Rt(ft,Wt){var yt,Kt;return ft&&ft.state?(Kt=ft.state,Wt<0?(yt=0,Wt=-Wt):(yt=1+(Wt>>4),Wt<48&&(Wt&=15)),Wt&&(Wt<8||Wt>15)?-2:(Kt.window!==null&&Kt.wbits!==Wt&&(Kt.window=null),Kt.wrap=yt,Kt.wbits=Wt,pt(ft))):-2}function Bt(ft,Wt){var yt,Kt;return ft?(Kt=new dt,ft.state=Kt,Kt.window=null,(yt=Rt(ft,Wt))!==0&&(ft.state=null),yt):-2}var ht,mt,gt=!0;function Vt(ft){if(gt){var Wt;for(ht=new rt.Buf32(512),mt=new rt.Buf32(32),Wt=0;Wt<144;)ft.lens[Wt++]=8;for(;Wt<256;)ft.lens[Wt++]=9;for(;Wt<280;)ft.lens[Wt++]=7;for(;Wt<288;)ft.lens[Wt++]=8;for(ot(1,ft.lens,0,288,ht,0,ft.work,{bits:9}),Wt=0;Wt<32;)ft.lens[Wt++]=5;ot(2,ft.lens,0,32,mt,0,ft.work,{bits:5}),gt=!1}ft.lencode=ht,ft.lenbits=9,ft.distcode=mt,ft.distbits=5}function Tt(ft,Wt,yt,Kt){var $t,Ht=ft.state;return Ht.window===null&&(Ht.wsize=1<=Ht.wsize?(rt.arraySet(Ht.window,Wt,yt-Ht.wsize,Ht.wsize,0),Ht.wnext=0,Ht.whave=Ht.wsize):(($t=Ht.wsize-Ht.wnext)>Kt&&($t=Kt),rt.arraySet(Ht.window,Wt,yt-Kt,$t,Ht.wnext),(Kt-=$t)?(rt.arraySet(Ht.window,Wt,yt-Kt,Kt,0),Ht.wnext=Kt,Ht.whave=Ht.wsize):(Ht.wnext+=$t,Ht.wnext===Ht.wsize&&(Ht.wnext=0),Ht.whave>>8&255,yt.check=ut(yt.check,Un,2,0),bt=0,Jt=0,yt.mode=2;break}if(yt.flags=0,yt.head&&(yt.head.done=!1),!(1&yt.wrap)||(((255&bt)<<8)+(bt>>8))%31){ft.msg="incorrect header check",yt.mode=30;break}if((15&bt)!=8){ft.msg="unknown compression method",yt.mode=30;break}if(Jt-=4,Xt=8+(15&(bt>>>=4)),yt.wbits===0)yt.wbits=Xt;else if(Xt>yt.wbits){ft.msg="invalid window size",yt.mode=30;break}yt.dmax=1<>8&1),512&yt.flags&&(Un[0]=255&bt,Un[1]=bt>>>8&255,yt.check=ut(yt.check,Un,2,0)),bt=0,Jt=0,yt.mode=3;case 3:for(;Jt<32;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>8&255,Un[2]=bt>>>16&255,Un[3]=bt>>>24&255,yt.check=ut(yt.check,Un,4,0)),bt=0,Jt=0,yt.mode=4;case 4:for(;Jt<16;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>8),512&yt.flags&&(Un[0]=255&bt,Un[1]=bt>>>8&255,yt.check=ut(yt.check,Un,2,0)),bt=0,Jt=0,yt.mode=5;case 5:if(1024&yt.flags){for(;Jt<16;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>8&255,yt.check=ut(yt.check,Un,2,0)),bt=0,Jt=0}else yt.head&&(yt.head.extra=null);yt.mode=6;case 6:if(1024&yt.flags&&((Ct=yt.length)>qt&&(Ct=qt),Ct&&(yt.head&&(Xt=yt.head.extra_len-yt.length,yt.head.extra||(yt.head.extra=new Array(yt.head.extra_len)),rt.arraySet(yt.head.extra,Kt,Ht,Ct,Xt)),512&yt.flags&&(yt.check=ut(yt.check,Kt,Ct,Ht)),qt-=Ct,Ht+=Ct,yt.length-=Ct),yt.length))break e;yt.length=0,yt.mode=7;case 7:if(2048&yt.flags){if(qt===0)break e;Ct=0;do Xt=Kt[Ht+Ct++],yt.head&&Xt&&yt.length<65536&&(yt.head.name+=String.fromCharCode(Xt));while(Xt&&Ct>9&1,yt.head.done=!0),ft.adler=yt.check=0,yt.mode=12;break;case 10:for(;Jt<32;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=7&Jt,Jt-=7&Jt,yt.mode=27;break}for(;Jt<3;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=1)){case 0:yt.mode=14;break;case 1:if(Vt(yt),yt.mode=20,Wt===6){bt>>>=2,Jt-=2;break e}break;case 2:yt.mode=17;break;case 3:ft.msg="invalid block type",yt.mode=30}bt>>>=2,Jt-=2;break;case 14:for(bt>>>=7&Jt,Jt-=7&Jt;Jt<32;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>16^65535)){ft.msg="invalid stored block lengths",yt.mode=30;break}if(yt.length=65535&bt,bt=0,Jt=0,yt.mode=15,Wt===6)break e;case 15:yt.mode=16;case 16:if(Ct=yt.length){if(Ct>qt&&(Ct=qt),Ct>kt&&(Ct=kt),Ct===0)break e;rt.arraySet($t,Kt,Ht,Ct,Nt),qt-=Ct,Ht+=Ct,kt-=Ct,Nt+=Ct,yt.length-=Ct;break}yt.mode=12;break;case 17:for(;Jt<14;){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=5,Jt-=5,yt.ndist=1+(31&bt),bt>>>=5,Jt-=5,yt.ncode=4+(15&bt),bt>>>=4,Jt-=4,yt.nlen>286||yt.ndist>30){ft.msg="too many length or distance symbols",yt.mode=30;break}yt.have=0,yt.mode=18;case 18:for(;yt.have>>=3,Jt-=3}for(;yt.have<19;)yt.lens[Jn[yt.have++]]=0;if(yt.lencode=yt.lendyn,yt.lenbits=7,Vn={bits:yt.lenbits},dn=ot(0,yt.lens,0,19,yt.lencode,0,yt.work,Vn),yt.lenbits=Vn.bits,dn){ft.msg="invalid code lengths set",yt.mode=30;break}yt.have=0,yt.mode=19;case 19:for(;yt.have>>16&255,tn=65535&fn,!((sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=sn,Jt-=sn,yt.lens[yt.have++]=tn;else{if(tn===16){for(Fn=sn+2;Jt>>=sn,Jt-=sn,yt.have===0){ft.msg="invalid bit length repeat",yt.mode=30;break}Xt=yt.lens[yt.have-1],Ct=3+(3&bt),bt>>>=2,Jt-=2}else if(tn===17){for(Fn=sn+3;Jt>>=sn)),bt>>>=3,Jt-=3}else{for(Fn=sn+7;Jt>>=sn)),bt>>>=7,Jt-=7}if(yt.have+Ct>yt.nlen+yt.ndist){ft.msg="invalid bit length repeat",yt.mode=30;break}for(;Ct--;)yt.lens[yt.have++]=Xt}}if(yt.mode===30)break;if(yt.lens[256]===0){ft.msg="invalid code -- missing end-of-block",yt.mode=30;break}if(yt.lenbits=9,Vn={bits:yt.lenbits},dn=ot(1,yt.lens,0,yt.nlen,yt.lencode,0,yt.work,Vn),yt.lenbits=Vn.bits,dn){ft.msg="invalid literal/lengths set",yt.mode=30;break}if(yt.distbits=6,yt.distcode=yt.distdyn,Vn={bits:yt.distbits},dn=ot(2,yt.lens,yt.nlen,yt.ndist,yt.distcode,0,yt.work,Vn),yt.distbits=Vn.bits,dn){ft.msg="invalid distances set",yt.mode=30;break}if(yt.mode=20,Wt===6)break e;case 20:yt.mode=21;case 21:if(qt>=6&&kt>=258){ft.next_out=Nt,ft.avail_out=kt,ft.next_in=Ht,ft.avail_in=qt,yt.hold=bt,yt.bits=Jt,Ut(ft,At),Nt=ft.next_out,$t=ft.output,kt=ft.avail_out,Ht=ft.next_in,Kt=ft.input,qt=ft.avail_in,bt=yt.hold,Jt=yt.bits,yt.mode===12&&(yt.back=-1);break}for(yt.back=0;Lt=(fn=yt.lencode[bt&(1<>>16&255,tn=65535&fn,!((sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>cn)])>>>16&255,tn=65535&fn,!(cn+(sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=cn,Jt-=cn,yt.back+=cn}if(bt>>>=sn,Jt-=sn,yt.back+=sn,yt.length=tn,Lt===0){yt.mode=26;break}if(32&Lt){yt.back=-1,yt.mode=12;break}if(64&Lt){ft.msg="invalid literal/length code",yt.mode=30;break}yt.extra=15&Lt,yt.mode=22;case 22:if(yt.extra){for(Fn=yt.extra;Jt>>=yt.extra,Jt-=yt.extra,yt.back+=yt.extra}yt.was=yt.length,yt.mode=23;case 23:for(;Lt=(fn=yt.distcode[bt&(1<>>16&255,tn=65535&fn,!((sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>cn)])>>>16&255,tn=65535&fn,!(cn+(sn=fn>>>24)<=Jt);){if(qt===0)break e;qt--,bt+=Kt[Ht++]<>>=cn,Jt-=cn,yt.back+=cn}if(bt>>>=sn,Jt-=sn,yt.back+=sn,64&Lt){ft.msg="invalid distance code",yt.mode=30;break}yt.offset=tn,yt.extra=15&Lt,yt.mode=24;case 24:if(yt.extra){for(Fn=yt.extra;Jt>>=yt.extra,Jt-=yt.extra,yt.back+=yt.extra}if(yt.offset>yt.dmax){ft.msg="invalid distance too far back",yt.mode=30;break}yt.mode=25;case 25:if(kt===0)break e;if(Ct=At-kt,yt.offset>Ct){if((Ct=yt.offset-Ct)>yt.whave&&yt.sane){ft.msg="invalid distance too far back",yt.mode=30;break}Ct>yt.wnext?(Ct-=yt.wnext,Mt=yt.wsize-Ct):Mt=yt.wnext-Ct,Ct>yt.length&&(Ct=yt.length),nn=yt.window}else nn=$t,Mt=Nt-yt.offset,Ct=yt.length;Ct>kt&&(Ct=kt),kt-=Ct,yt.length-=Ct;do $t[Nt++]=nn[Mt++];while(--Ct);yt.length===0&&(yt.mode=21);break;case 26:if(kt===0)break e;$t[Nt++]=yt.length,kt--,yt.mode=21;break;case 27:if(yt.wrap){for(;Jt<32;){if(qt===0)break e;qt--,bt|=Kt[Ht++]<{var rt=nt(9860),lt=[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],ut=[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],Ut=[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],ot=[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];et.exports=function(st,dt,St,pt,Rt,Bt,ht,mt){var gt,Vt,Tt,ft,Wt,yt,Kt,$t,Ht,Nt=mt.bits,qt=0,kt=0,bt=0,Jt=0,wt=0,At=0,Ct=0,Mt=0,nn=0,sn=0,Lt=null,tn=0,cn=new rt.Buf16(16),on=new rt.Buf16(16),Gt=null,Xt=0;for(qt=0;qt<=15;qt++)cn[qt]=0;for(kt=0;kt=1&&cn[Jt]===0;Jt--);if(wt>Jt&&(wt=Jt),Jt===0)return Rt[Bt++]=20971520,Rt[Bt++]=20971520,mt.bits=1,0;for(bt=1;bt0&&(st===0||Jt!==1))return-1;for(on[1]=0,qt=1;qt<15;qt++)on[qt+1]=on[qt]+cn[qt];for(kt=0;kt852||st===2&&nn>592)return 1;for(;;){Kt=qt-Ct,ht[kt]yt?($t=Gt[Xt+ht[kt]],Ht=Lt[tn+ht[kt]]):($t=96,Ht=0),gt=1<>Ct)+(Vt-=gt)]=Kt<<24|$t<<16|Ht|0;while(Vt!==0);for(gt=1<>=1;if(gt!==0?(sn&=gt-1,sn+=gt):sn=0,kt++,--cn[qt]==0){if(qt===Jt)break;qt=dt[St+ht[kt]]}if(qt>wt&&(sn&ft)!==Tt){for(Ct===0&&(Ct=wt),Wt+=bt,Mt=1<<(At=qt-Ct);At+Ct852||st===2&&nn>592)return 1;Rt[Tt=sn&ft]=wt<<24|At<<16|Wt-Bt|0}}return sn!==0&&(Rt[Wt+sn]=qt-Ct<<24|4194304|0),mt.bits=wt,0}},1925:et=>{et.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"}},7504:(et,tt,nt)=>{var rt=nt(9860);function lt(Lt){for(var tn=Lt.length;--tn>=0;)Lt[tn]=0}var ut=[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],Ut=[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],ot=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],st=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],dt=new Array(576);lt(dt);var St=new Array(60);lt(St);var pt=new Array(512);lt(pt);var Rt=new Array(256);lt(Rt);var Bt=new Array(29);lt(Bt);var ht,mt,gt,Vt=new Array(30);function Tt(Lt,tn,cn,on,Gt){this.static_tree=Lt,this.extra_bits=tn,this.extra_base=cn,this.elems=on,this.max_length=Gt,this.has_stree=Lt&&Lt.length}function ft(Lt,tn){this.dyn_tree=Lt,this.max_code=0,this.stat_desc=tn}function Wt(Lt){return Lt<256?pt[Lt]:pt[256+(Lt>>>7)]}function yt(Lt,tn){Lt.pending_buf[Lt.pending++]=255&tn,Lt.pending_buf[Lt.pending++]=tn>>>8&255}function Kt(Lt,tn,cn){Lt.bi_valid>16-cn?(Lt.bi_buf|=tn<>16-Lt.bi_valid,Lt.bi_valid+=cn-16):(Lt.bi_buf|=tn<>>=1,cn<<=1;while(--tn>0);return cn>>>1}function Nt(Lt,tn,cn){var on,Gt,Xt=new Array(16),dn=0;for(on=1;on<=15;on++)Xt[on]=dn=dn+cn[on-1]<<1;for(Gt=0;Gt<=tn;Gt++){var Vn=Lt[2*Gt+1];Vn!==0&&(Lt[2*Gt]=Ht(Xt[Vn]++,Vn))}}function qt(Lt){var tn;for(tn=0;tn<286;tn++)Lt.dyn_ltree[2*tn]=0;for(tn=0;tn<30;tn++)Lt.dyn_dtree[2*tn]=0;for(tn=0;tn<19;tn++)Lt.bl_tree[2*tn]=0;Lt.dyn_ltree[512]=1,Lt.opt_len=Lt.static_len=0,Lt.last_lit=Lt.matches=0}function kt(Lt){Lt.bi_valid>8?yt(Lt,Lt.bi_buf):Lt.bi_valid>0&&(Lt.pending_buf[Lt.pending++]=Lt.bi_buf),Lt.bi_buf=0,Lt.bi_valid=0}function bt(Lt,tn,cn,on){var Gt=2*tn,Xt=2*cn;return Lt[Gt]>1;cn>=1;cn--)Jt(Lt,Xt,cn);Gt=Fn;do cn=Lt.heap[1],Lt.heap[1]=Lt.heap[Lt.heap_len--],Jt(Lt,Xt,1),on=Lt.heap[1],Lt.heap[--Lt.heap_max]=cn,Lt.heap[--Lt.heap_max]=on,Xt[2*Gt]=Xt[2*cn]+Xt[2*on],Lt.depth[Gt]=(Lt.depth[cn]>=Lt.depth[on]?Lt.depth[cn]:Lt.depth[on])+1,Xt[2*cn+1]=Xt[2*on+1]=Gt,Lt.heap[1]=Gt++,Jt(Lt,Xt,1);while(Lt.heap_len>=2);Lt.heap[--Lt.heap_max]=Lt.heap[1],function(Un,Jn){var _n,Zn,On,Yn,_t,Ot,jt=Jn.dyn_tree,pn=Jn.max_code,En=Jn.stat_desc.static_tree,yn=Jn.stat_desc.has_stree,Cn=Jn.stat_desc.extra_bits,Gn=Jn.stat_desc.extra_base,Wn=Jn.stat_desc.max_length,ir=0;for(Yn=0;Yn<=15;Yn++)Un.bl_count[Yn]=0;for(jt[2*Un.heap[Un.heap_max]+1]=0,_n=Un.heap_max+1;_n<573;_n++)(Yn=jt[2*jt[2*(Zn=Un.heap[_n])+1]+1]+1)>Wn&&(Yn=Wn,ir++),jt[2*Zn+1]=Yn,Zn>pn||(Un.bl_count[Yn]++,_t=0,Zn>=Gn&&(_t=Cn[Zn-Gn]),Ot=jt[2*Zn],Un.opt_len+=Ot*(Yn+_t),yn&&(Un.static_len+=Ot*(En[2*Zn+1]+_t)));if(ir!==0){do{for(Yn=Wn-1;Un.bl_count[Yn]===0;)Yn--;Un.bl_count[Yn]--,Un.bl_count[Yn+1]+=2,Un.bl_count[Wn]--,ir-=2}while(ir>0);for(Yn=Wn;Yn!==0;Yn--)for(Zn=Un.bl_count[Yn];Zn!==0;)(On=Un.heap[--_n])>pn||(jt[2*On+1]!==Yn&&(Un.opt_len+=(Yn-jt[2*On+1])*jt[2*On],jt[2*On+1]=Yn),Zn--)}}(Lt,tn),Nt(Xt,fn,Lt.bl_count)}function Ct(Lt,tn,cn){var on,Gt,Xt=-1,dn=tn[1],Vn=0,Fn=7,fn=4;for(dn===0&&(Fn=138,fn=3),tn[2*(cn+1)+1]=65535,on=0;on<=cn;on++)Gt=dn,dn=tn[2*(on+1)+1],++Vn>=7;Gt<30;Gt++)for(Vt[Gt]=Xt<<7,tn=0;tn<1<0?(Lt.strm.data_type===2&&(Lt.strm.data_type=function(Vn){var Fn,fn=4093624447;for(Fn=0;Fn<=31;Fn++,fn>>>=1)if(1&fn&&Vn.dyn_ltree[2*Fn]!==0)return 0;if(Vn.dyn_ltree[18]!==0||Vn.dyn_ltree[20]!==0||Vn.dyn_ltree[26]!==0)return 1;for(Fn=32;Fn<256;Fn++)if(Vn.dyn_ltree[2*Fn]!==0)return 1;return 0}(Lt)),At(Lt,Lt.l_desc),At(Lt,Lt.d_desc),dn=function(Vn){var Fn;for(Ct(Vn,Vn.dyn_ltree,Vn.l_desc.max_code),Ct(Vn,Vn.dyn_dtree,Vn.d_desc.max_code),At(Vn,Vn.bl_desc),Fn=18;Fn>=3&&Vn.bl_tree[2*st[Fn]+1]===0;Fn--);return Vn.opt_len+=3*(Fn+1)+5+5+4,Fn}(Lt),Gt=Lt.opt_len+3+7>>>3,(Xt=Lt.static_len+3+7>>>3)<=Gt&&(Gt=Xt)):Gt=Xt=cn+5,cn+4<=Gt&&tn!==-1?sn(Lt,tn,cn,on):Lt.strategy===4||Xt===Gt?(Kt(Lt,2+(on?1:0),3),wt(Lt,dt,St)):(Kt(Lt,4+(on?1:0),3),function(Vn,Fn,fn,Un){var Jn;for(Kt(Vn,Fn-257,5),Kt(Vn,fn-1,5),Kt(Vn,Un-4,4),Jn=0;Jn>>8&255,Lt.pending_buf[Lt.d_buf+2*Lt.last_lit+1]=255&tn,Lt.pending_buf[Lt.l_buf+Lt.last_lit]=255&cn,Lt.last_lit++,tn===0?Lt.dyn_ltree[2*cn]++:(Lt.matches++,tn--,Lt.dyn_ltree[2*(Rt[cn]+256+1)]++,Lt.dyn_dtree[2*Wt(tn)]++),Lt.last_lit===Lt.lit_bufsize-1},tt._tr_align=function(Lt){Kt(Lt,2,3),$t(Lt,256,dt),function(tn){tn.bi_valid===16?(yt(tn,tn.bi_buf),tn.bi_buf=0,tn.bi_valid=0):tn.bi_valid>=8&&(tn.pending_buf[tn.pending++]=255&tn.bi_buf,tn.bi_buf>>=8,tn.bi_valid-=8)}(Lt)}},4019:et=>{et.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}},1048:(et,tt,nt)=>{const rt=nt(7991),lt=nt(9318),ut=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;tt.Buffer=ot,tt.SlowBuffer=function(_t){return+_t!=_t&&(_t=0),ot.alloc(+_t)},tt.INSPECT_MAX_BYTES=50;function Ut(_t){if(_t>2147483647)throw new RangeError('The value "'+_t+'" is invalid for option "size"');const Ot=new Uint8Array(_t);return Object.setPrototypeOf(Ot,ot.prototype),Ot}function ot(_t,Ot,jt){if(typeof _t=="number"){if(typeof Ot=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return St(_t)}return st(_t,Ot,jt)}function st(_t,Ot,jt){if(typeof _t=="string")return function(yn,Cn){if(typeof Cn=="string"&&Cn!==""||(Cn="utf8"),!ot.isEncoding(Cn))throw new TypeError("Unknown encoding: "+Cn);const Gn=0|ht(yn,Cn);let Wn=Ut(Gn);const ir=Wn.write(yn,Cn);return ir!==Gn&&(Wn=Wn.slice(0,ir)),Wn}(_t,Ot);if(ArrayBuffer.isView(_t))return function(yn){if(Jn(yn,Uint8Array)){const Cn=new Uint8Array(yn);return Rt(Cn.buffer,Cn.byteOffset,Cn.byteLength)}return pt(yn)}(_t);if(_t==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof _t);if(Jn(_t,ArrayBuffer)||_t&&Jn(_t.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Jn(_t,SharedArrayBuffer)||_t&&Jn(_t.buffer,SharedArrayBuffer)))return Rt(_t,Ot,jt);if(typeof _t=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const pn=_t.valueOf&&_t.valueOf();if(pn!=null&&pn!==_t)return ot.from(pn,Ot,jt);const En=function(yn){if(ot.isBuffer(yn)){const Cn=0|Bt(yn.length),Gn=Ut(Cn);return Gn.length===0||yn.copy(Gn,0,0,Cn),Gn}if(yn.length!==void 0)return typeof yn.length!="number"||_n(yn.length)?Ut(0):pt(yn);if(yn.type==="Buffer"&&Array.isArray(yn.data))return pt(yn.data)}(_t);if(En)return En;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof _t[Symbol.toPrimitive]=="function")return ot.from(_t[Symbol.toPrimitive]("string"),Ot,jt);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof _t)}function dt(_t){if(typeof _t!="number")throw new TypeError('"size" argument must be of type number');if(_t<0)throw new RangeError('The value "'+_t+'" is invalid for option "size"')}function St(_t){return dt(_t),Ut(_t<0?0:0|Bt(_t))}function pt(_t){const Ot=_t.length<0?0:0|Bt(_t.length),jt=Ut(Ot);for(let pn=0;pn=2147483647)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+2147483647 .toString(16)+" bytes");return 0|_t}function ht(_t,Ot){if(ot.isBuffer(_t))return _t.length;if(ArrayBuffer.isView(_t)||Jn(_t,ArrayBuffer))return _t.byteLength;if(typeof _t!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof _t);const jt=_t.length,pn=arguments.length>2&&arguments[2]===!0;if(!pn&&jt===0)return 0;let En=!1;for(;;)switch(Ot){case"ascii":case"latin1":case"binary":return jt;case"utf8":case"utf-8":return Fn(_t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*jt;case"hex":return jt>>>1;case"base64":return fn(_t).length;default:if(En)return pn?-1:Fn(_t).length;Ot=(""+Ot).toLowerCase(),En=!0}}function mt(_t,Ot,jt){let pn=!1;if((Ot===void 0||Ot<0)&&(Ot=0),Ot>this.length||((jt===void 0||jt>this.length)&&(jt=this.length),jt<=0)||(jt>>>=0)<=(Ot>>>=0))return"";for(_t||(_t="utf8");;)switch(_t){case"hex":return bt(this,Ot,jt);case"utf8":case"utf-8":return Nt(this,Ot,jt);case"ascii":return qt(this,Ot,jt);case"latin1":case"binary":return kt(this,Ot,jt);case"base64":return Ht(this,Ot,jt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Jt(this,Ot,jt);default:if(pn)throw new TypeError("Unknown encoding: "+_t);_t=(_t+"").toLowerCase(),pn=!0}}function gt(_t,Ot,jt){const pn=_t[Ot];_t[Ot]=_t[jt],_t[jt]=pn}function Vt(_t,Ot,jt,pn,En){if(_t.length===0)return-1;if(typeof jt=="string"?(pn=jt,jt=0):jt>2147483647?jt=2147483647:jt<-2147483648&&(jt=-2147483648),_n(jt=+jt)&&(jt=En?0:_t.length-1),jt<0&&(jt=_t.length+jt),jt>=_t.length){if(En)return-1;jt=_t.length-1}else if(jt<0){if(!En)return-1;jt=0}if(typeof Ot=="string"&&(Ot=ot.from(Ot,pn)),ot.isBuffer(Ot))return Ot.length===0?-1:Tt(_t,Ot,jt,pn,En);if(typeof Ot=="number")return Ot&=255,typeof Uint8Array.prototype.indexOf=="function"?En?Uint8Array.prototype.indexOf.call(_t,Ot,jt):Uint8Array.prototype.lastIndexOf.call(_t,Ot,jt):Tt(_t,[Ot],jt,pn,En);throw new TypeError("val must be string, number or Buffer")}function Tt(_t,Ot,jt,pn,En){let yn,Cn=1,Gn=_t.length,Wn=Ot.length;if(pn!==void 0&&((pn=String(pn).toLowerCase())==="ucs2"||pn==="ucs-2"||pn==="utf16le"||pn==="utf-16le")){if(_t.length<2||Ot.length<2)return-1;Cn=2,Gn/=2,Wn/=2,jt/=2}function ir(lr,Rn){return Cn===1?lr[Rn]:lr.readUInt16BE(Rn*Cn)}if(En){let lr=-1;for(yn=jt;ynGn&&(jt=Gn-Wn),yn=jt;yn>=0;yn--){let lr=!0;for(let Rn=0;RnEn&&(pn=En):pn=En;const yn=Ot.length;let Cn;for(pn>yn/2&&(pn=yn/2),Cn=0;Cn>8,Wn=Cn%256,ir.push(Wn),ir.push(Gn);return ir}(Ot,_t.length-jt),_t,jt,pn)}function Ht(_t,Ot,jt){return Ot===0&&jt===_t.length?rt.fromByteArray(_t):rt.fromByteArray(_t.slice(Ot,jt))}function Nt(_t,Ot,jt){jt=Math.min(_t.length,jt);const pn=[];let En=Ot;for(;En239?4:yn>223?3:yn>191?2:1;if(En+Gn<=jt){let Wn,ir,lr,Rn;switch(Gn){case 1:yn<128&&(Cn=yn);break;case 2:Wn=_t[En+1],(192&Wn)==128&&(Rn=(31&yn)<<6|63&Wn,Rn>127&&(Cn=Rn));break;case 3:Wn=_t[En+1],ir=_t[En+2],(192&Wn)==128&&(192&ir)==128&&(Rn=(15&yn)<<12|(63&Wn)<<6|63&ir,Rn>2047&&(Rn<55296||Rn>57343)&&(Cn=Rn));break;case 4:Wn=_t[En+1],ir=_t[En+2],lr=_t[En+3],(192&Wn)==128&&(192&ir)==128&&(192&lr)==128&&(Rn=(15&yn)<<18|(63&Wn)<<12|(63&ir)<<6|63&lr,Rn>65535&&Rn<1114112&&(Cn=Rn))}}Cn===null?(Cn=65533,Gn=1):Cn>65535&&(Cn-=65536,pn.push(Cn>>>10&1023|55296),Cn=56320|1023&Cn),pn.push(Cn),En+=Gn}return function(yn){const Cn=yn.length;if(Cn<=4096)return String.fromCharCode.apply(String,yn);let Gn="",Wn=0;for(;Wn"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(ot.prototype,"parent",{enumerable:!0,get:function(){if(ot.isBuffer(this))return this.buffer}}),Object.defineProperty(ot.prototype,"offset",{enumerable:!0,get:function(){if(ot.isBuffer(this))return this.byteOffset}}),ot.poolSize=8192,ot.from=function(_t,Ot,jt){return st(_t,Ot,jt)},Object.setPrototypeOf(ot.prototype,Uint8Array.prototype),Object.setPrototypeOf(ot,Uint8Array),ot.alloc=function(_t,Ot,jt){return function(pn,En,yn){return dt(pn),pn<=0?Ut(pn):En!==void 0?typeof yn=="string"?Ut(pn).fill(En,yn):Ut(pn).fill(En):Ut(pn)}(_t,Ot,jt)},ot.allocUnsafe=function(_t){return St(_t)},ot.allocUnsafeSlow=function(_t){return St(_t)},ot.isBuffer=function(_t){return _t!=null&&_t._isBuffer===!0&&_t!==ot.prototype},ot.compare=function(_t,Ot){if(Jn(_t,Uint8Array)&&(_t=ot.from(_t,_t.offset,_t.byteLength)),Jn(Ot,Uint8Array)&&(Ot=ot.from(Ot,Ot.offset,Ot.byteLength)),!ot.isBuffer(_t)||!ot.isBuffer(Ot))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(_t===Ot)return 0;let jt=_t.length,pn=Ot.length;for(let En=0,yn=Math.min(jt,pn);Enpn.length?(ot.isBuffer(yn)||(yn=ot.from(yn)),yn.copy(pn,En)):Uint8Array.prototype.set.call(pn,yn,En);else{if(!ot.isBuffer(yn))throw new TypeError('"list" argument must be an Array of Buffers');yn.copy(pn,En)}En+=yn.length}return pn},ot.byteLength=ht,ot.prototype._isBuffer=!0,ot.prototype.swap16=function(){const _t=this.length;if(_t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let Ot=0;Ot<_t;Ot+=2)gt(this,Ot,Ot+1);return this},ot.prototype.swap32=function(){const _t=this.length;if(_t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let Ot=0;Ot<_t;Ot+=4)gt(this,Ot,Ot+3),gt(this,Ot+1,Ot+2);return this},ot.prototype.swap64=function(){const _t=this.length;if(_t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let Ot=0;Ot<_t;Ot+=8)gt(this,Ot,Ot+7),gt(this,Ot+1,Ot+6),gt(this,Ot+2,Ot+5),gt(this,Ot+3,Ot+4);return this},ot.prototype.toString=function(){const _t=this.length;return _t===0?"":arguments.length===0?Nt(this,0,_t):mt.apply(this,arguments)},ot.prototype.toLocaleString=ot.prototype.toString,ot.prototype.equals=function(_t){if(!ot.isBuffer(_t))throw new TypeError("Argument must be a Buffer");return this===_t||ot.compare(this,_t)===0},ot.prototype.inspect=function(){let _t="";const Ot=tt.INSPECT_MAX_BYTES;return _t=this.toString("hex",0,Ot).replace(/(.{2})/g,"$1 ").trim(),this.length>Ot&&(_t+=" ... "),""},ut&&(ot.prototype[ut]=ot.prototype.inspect),ot.prototype.compare=function(_t,Ot,jt,pn,En){if(Jn(_t,Uint8Array)&&(_t=ot.from(_t,_t.offset,_t.byteLength)),!ot.isBuffer(_t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof _t);if(Ot===void 0&&(Ot=0),jt===void 0&&(jt=_t?_t.length:0),pn===void 0&&(pn=0),En===void 0&&(En=this.length),Ot<0||jt>_t.length||pn<0||En>this.length)throw new RangeError("out of range index");if(pn>=En&&Ot>=jt)return 0;if(pn>=En)return-1;if(Ot>=jt)return 1;if(this===_t)return 0;let yn=(En>>>=0)-(pn>>>=0),Cn=(jt>>>=0)-(Ot>>>=0);const Gn=Math.min(yn,Cn),Wn=this.slice(pn,En),ir=_t.slice(Ot,jt);for(let lr=0;lr>>=0,isFinite(jt)?(jt>>>=0,pn===void 0&&(pn="utf8")):(pn=jt,jt=void 0)}const En=this.length-Ot;if((jt===void 0||jt>En)&&(jt=En),_t.length>0&&(jt<0||Ot<0)||Ot>this.length)throw new RangeError("Attempt to write outside buffer bounds");pn||(pn="utf8");let yn=!1;for(;;)switch(pn){case"hex":return ft(this,_t,Ot,jt);case"utf8":case"utf-8":return Wt(this,_t,Ot,jt);case"ascii":case"latin1":case"binary":return yt(this,_t,Ot,jt);case"base64":return Kt(this,_t,Ot,jt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return $t(this,_t,Ot,jt);default:if(yn)throw new TypeError("Unknown encoding: "+pn);pn=(""+pn).toLowerCase(),yn=!0}},ot.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function qt(_t,Ot,jt){let pn="";jt=Math.min(_t.length,jt);for(let En=Ot;Enpn)&&(jt=pn);let En="";for(let yn=Ot;ynjt)throw new RangeError("Trying to access beyond buffer length")}function At(_t,Ot,jt,pn,En,yn){if(!ot.isBuffer(_t))throw new TypeError('"buffer" argument must be a Buffer instance');if(Ot>En||Ot_t.length)throw new RangeError("Index out of range")}function Ct(_t,Ot,jt,pn,En){Gt(Ot,pn,En,_t,jt,7);let yn=Number(Ot&BigInt(4294967295));_t[jt++]=yn,yn>>=8,_t[jt++]=yn,yn>>=8,_t[jt++]=yn,yn>>=8,_t[jt++]=yn;let Cn=Number(Ot>>BigInt(32)&BigInt(4294967295));return _t[jt++]=Cn,Cn>>=8,_t[jt++]=Cn,Cn>>=8,_t[jt++]=Cn,Cn>>=8,_t[jt++]=Cn,jt}function Mt(_t,Ot,jt,pn,En){Gt(Ot,pn,En,_t,jt,7);let yn=Number(Ot&BigInt(4294967295));_t[jt+7]=yn,yn>>=8,_t[jt+6]=yn,yn>>=8,_t[jt+5]=yn,yn>>=8,_t[jt+4]=yn;let Cn=Number(Ot>>BigInt(32)&BigInt(4294967295));return _t[jt+3]=Cn,Cn>>=8,_t[jt+2]=Cn,Cn>>=8,_t[jt+1]=Cn,Cn>>=8,_t[jt]=Cn,jt+8}function nn(_t,Ot,jt,pn,En,yn){if(jt+pn>_t.length)throw new RangeError("Index out of range");if(jt<0)throw new RangeError("Index out of range")}function sn(_t,Ot,jt,pn,En){return Ot=+Ot,jt>>>=0,En||nn(_t,0,jt,4),lt.write(_t,Ot,jt,pn,23,4),jt+4}function Lt(_t,Ot,jt,pn,En){return Ot=+Ot,jt>>>=0,En||nn(_t,0,jt,8),lt.write(_t,Ot,jt,pn,52,8),jt+8}ot.prototype.slice=function(_t,Ot){const jt=this.length;(_t=~~_t)<0?(_t+=jt)<0&&(_t=0):_t>jt&&(_t=jt),(Ot=Ot===void 0?jt:~~Ot)<0?(Ot+=jt)<0&&(Ot=0):Ot>jt&&(Ot=jt),Ot<_t&&(Ot=_t);const pn=this.subarray(_t,Ot);return Object.setPrototypeOf(pn,ot.prototype),pn},ot.prototype.readUintLE=ot.prototype.readUIntLE=function(_t,Ot,jt){_t>>>=0,Ot>>>=0,jt||wt(_t,Ot,this.length);let pn=this[_t],En=1,yn=0;for(;++yn>>=0,Ot>>>=0,jt||wt(_t,Ot,this.length);let pn=this[_t+--Ot],En=1;for(;Ot>0&&(En*=256);)pn+=this[_t+--Ot]*En;return pn},ot.prototype.readUint8=ot.prototype.readUInt8=function(_t,Ot){return _t>>>=0,Ot||wt(_t,1,this.length),this[_t]},ot.prototype.readUint16LE=ot.prototype.readUInt16LE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,2,this.length),this[_t]|this[_t+1]<<8},ot.prototype.readUint16BE=ot.prototype.readUInt16BE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,2,this.length),this[_t]<<8|this[_t+1]},ot.prototype.readUint32LE=ot.prototype.readUInt32LE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),(this[_t]|this[_t+1]<<8|this[_t+2]<<16)+16777216*this[_t+3]},ot.prototype.readUint32BE=ot.prototype.readUInt32BE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),16777216*this[_t]+(this[_t+1]<<16|this[_t+2]<<8|this[_t+3])},ot.prototype.readBigUInt64LE=On(function(_t){Xt(_t>>>=0,"offset");const Ot=this[_t],jt=this[_t+7];Ot!==void 0&&jt!==void 0||dn(_t,this.length-8);const pn=Ot+256*this[++_t]+65536*this[++_t]+this[++_t]*2**24,En=this[++_t]+256*this[++_t]+65536*this[++_t]+jt*2**24;return BigInt(pn)+(BigInt(En)<>>=0,"offset");const Ot=this[_t],jt=this[_t+7];Ot!==void 0&&jt!==void 0||dn(_t,this.length-8);const pn=Ot*2**24+65536*this[++_t]+256*this[++_t]+this[++_t],En=this[++_t]*2**24+65536*this[++_t]+256*this[++_t]+jt;return(BigInt(pn)<>>=0,Ot>>>=0,jt||wt(_t,Ot,this.length);let pn=this[_t],En=1,yn=0;for(;++yn=En&&(pn-=Math.pow(2,8*Ot)),pn},ot.prototype.readIntBE=function(_t,Ot,jt){_t>>>=0,Ot>>>=0,jt||wt(_t,Ot,this.length);let pn=Ot,En=1,yn=this[_t+--pn];for(;pn>0&&(En*=256);)yn+=this[_t+--pn]*En;return En*=128,yn>=En&&(yn-=Math.pow(2,8*Ot)),yn},ot.prototype.readInt8=function(_t,Ot){return _t>>>=0,Ot||wt(_t,1,this.length),128&this[_t]?-1*(255-this[_t]+1):this[_t]},ot.prototype.readInt16LE=function(_t,Ot){_t>>>=0,Ot||wt(_t,2,this.length);const jt=this[_t]|this[_t+1]<<8;return 32768&jt?4294901760|jt:jt},ot.prototype.readInt16BE=function(_t,Ot){_t>>>=0,Ot||wt(_t,2,this.length);const jt=this[_t+1]|this[_t]<<8;return 32768&jt?4294901760|jt:jt},ot.prototype.readInt32LE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),this[_t]|this[_t+1]<<8|this[_t+2]<<16|this[_t+3]<<24},ot.prototype.readInt32BE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),this[_t]<<24|this[_t+1]<<16|this[_t+2]<<8|this[_t+3]},ot.prototype.readBigInt64LE=On(function(_t){Xt(_t>>>=0,"offset");const Ot=this[_t],jt=this[_t+7];Ot!==void 0&&jt!==void 0||dn(_t,this.length-8);const pn=this[_t+4]+256*this[_t+5]+65536*this[_t+6]+(jt<<24);return(BigInt(pn)<>>=0,"offset");const Ot=this[_t],jt=this[_t+7];Ot!==void 0&&jt!==void 0||dn(_t,this.length-8);const pn=(Ot<<24)+65536*this[++_t]+256*this[++_t]+this[++_t];return(BigInt(pn)<>>=0,Ot||wt(_t,4,this.length),lt.read(this,_t,!0,23,4)},ot.prototype.readFloatBE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,4,this.length),lt.read(this,_t,!1,23,4)},ot.prototype.readDoubleLE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,8,this.length),lt.read(this,_t,!0,52,8)},ot.prototype.readDoubleBE=function(_t,Ot){return _t>>>=0,Ot||wt(_t,8,this.length),lt.read(this,_t,!1,52,8)},ot.prototype.writeUintLE=ot.prototype.writeUIntLE=function(_t,Ot,jt,pn){_t=+_t,Ot>>>=0,jt>>>=0,!pn&&At(this,_t,Ot,jt,Math.pow(2,8*jt)-1,0);let En=1,yn=0;for(this[Ot]=255&_t;++yn>>=0,jt>>>=0,!pn&&At(this,_t,Ot,jt,Math.pow(2,8*jt)-1,0);let En=jt-1,yn=1;for(this[Ot+En]=255&_t;--En>=0&&(yn*=256);)this[Ot+En]=_t/yn&255;return Ot+jt},ot.prototype.writeUint8=ot.prototype.writeUInt8=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,1,255,0),this[Ot]=255&_t,Ot+1},ot.prototype.writeUint16LE=ot.prototype.writeUInt16LE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,2,65535,0),this[Ot]=255&_t,this[Ot+1]=_t>>>8,Ot+2},ot.prototype.writeUint16BE=ot.prototype.writeUInt16BE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,2,65535,0),this[Ot]=_t>>>8,this[Ot+1]=255&_t,Ot+2},ot.prototype.writeUint32LE=ot.prototype.writeUInt32LE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,4,4294967295,0),this[Ot+3]=_t>>>24,this[Ot+2]=_t>>>16,this[Ot+1]=_t>>>8,this[Ot]=255&_t,Ot+4},ot.prototype.writeUint32BE=ot.prototype.writeUInt32BE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,4,4294967295,0),this[Ot]=_t>>>24,this[Ot+1]=_t>>>16,this[Ot+2]=_t>>>8,this[Ot+3]=255&_t,Ot+4},ot.prototype.writeBigUInt64LE=On(function(_t,Ot=0){return Ct(this,_t,Ot,BigInt(0),BigInt("0xffffffffffffffff"))}),ot.prototype.writeBigUInt64BE=On(function(_t,Ot=0){return Mt(this,_t,Ot,BigInt(0),BigInt("0xffffffffffffffff"))}),ot.prototype.writeIntLE=function(_t,Ot,jt,pn){if(_t=+_t,Ot>>>=0,!pn){const Gn=Math.pow(2,8*jt-1);At(this,_t,Ot,jt,Gn-1,-Gn)}let En=0,yn=1,Cn=0;for(this[Ot]=255&_t;++En>0)-Cn&255;return Ot+jt},ot.prototype.writeIntBE=function(_t,Ot,jt,pn){if(_t=+_t,Ot>>>=0,!pn){const Gn=Math.pow(2,8*jt-1);At(this,_t,Ot,jt,Gn-1,-Gn)}let En=jt-1,yn=1,Cn=0;for(this[Ot+En]=255&_t;--En>=0&&(yn*=256);)_t<0&&Cn===0&&this[Ot+En+1]!==0&&(Cn=1),this[Ot+En]=(_t/yn>>0)-Cn&255;return Ot+jt},ot.prototype.writeInt8=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,1,127,-128),_t<0&&(_t=255+_t+1),this[Ot]=255&_t,Ot+1},ot.prototype.writeInt16LE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,2,32767,-32768),this[Ot]=255&_t,this[Ot+1]=_t>>>8,Ot+2},ot.prototype.writeInt16BE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,2,32767,-32768),this[Ot]=_t>>>8,this[Ot+1]=255&_t,Ot+2},ot.prototype.writeInt32LE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,4,2147483647,-2147483648),this[Ot]=255&_t,this[Ot+1]=_t>>>8,this[Ot+2]=_t>>>16,this[Ot+3]=_t>>>24,Ot+4},ot.prototype.writeInt32BE=function(_t,Ot,jt){return _t=+_t,Ot>>>=0,jt||At(this,_t,Ot,4,2147483647,-2147483648),_t<0&&(_t=4294967295+_t+1),this[Ot]=_t>>>24,this[Ot+1]=_t>>>16,this[Ot+2]=_t>>>8,this[Ot+3]=255&_t,Ot+4},ot.prototype.writeBigInt64LE=On(function(_t,Ot=0){return Ct(this,_t,Ot,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),ot.prototype.writeBigInt64BE=On(function(_t,Ot=0){return Mt(this,_t,Ot,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),ot.prototype.writeFloatLE=function(_t,Ot,jt){return sn(this,_t,Ot,!0,jt)},ot.prototype.writeFloatBE=function(_t,Ot,jt){return sn(this,_t,Ot,!1,jt)},ot.prototype.writeDoubleLE=function(_t,Ot,jt){return Lt(this,_t,Ot,!0,jt)},ot.prototype.writeDoubleBE=function(_t,Ot,jt){return Lt(this,_t,Ot,!1,jt)},ot.prototype.copy=function(_t,Ot,jt,pn){if(!ot.isBuffer(_t))throw new TypeError("argument should be a Buffer");if(jt||(jt=0),pn||pn===0||(pn=this.length),Ot>=_t.length&&(Ot=_t.length),Ot||(Ot=0),pn>0&&pn=this.length)throw new RangeError("Index out of range");if(pn<0)throw new RangeError("sourceEnd out of bounds");pn>this.length&&(pn=this.length),_t.length-Ot>>=0,jt=jt===void 0?this.length:jt>>>0,_t||(_t=0),typeof _t=="number")for(En=Ot;En=pn+4;jt-=3)Ot=`_${_t.slice(jt-3,jt)}${Ot}`;return`${_t.slice(0,jt)}${Ot}`}function Gt(_t,Ot,jt,pn,En,yn){if(_t>jt||_t3?Ot===0||Ot===BigInt(0)?`>= 0${Cn} and < 2${Cn} ** ${8*(yn+1)}${Cn}`:`>= -(2${Cn} ** ${8*(yn+1)-1}${Cn}) and < 2 ** ${8*(yn+1)-1}${Cn}`:`>= ${Ot}${Cn} and <= ${jt}${Cn}`,new tn.ERR_OUT_OF_RANGE("value",Gn,_t)}(function(Cn,Gn,Wn){Xt(Gn,"offset"),Cn[Gn]!==void 0&&Cn[Gn+Wn]!==void 0||dn(Gn,Cn.length-(Wn+1))})(pn,En,yn)}function Xt(_t,Ot){if(typeof _t!="number")throw new tn.ERR_INVALID_ARG_TYPE(Ot,"number",_t)}function dn(_t,Ot,jt){throw Math.floor(_t)!==_t?(Xt(_t,jt),new tn.ERR_OUT_OF_RANGE(jt||"offset","an integer",_t)):Ot<0?new tn.ERR_BUFFER_OUT_OF_BOUNDS:new tn.ERR_OUT_OF_RANGE(jt||"offset",`>= ${jt?1:0} and <= ${Ot}`,_t)}cn("ERR_BUFFER_OUT_OF_BOUNDS",function(_t){return _t?_t+" is outside of buffer bounds":"Attempt to access memory outside buffer bounds"},RangeError),cn("ERR_INVALID_ARG_TYPE",function(_t,Ot){return`The "${_t}" argument must be of type number. Received type ${typeof Ot}`},TypeError),cn("ERR_OUT_OF_RANGE",function(_t,Ot,jt){let pn=`The value of "${_t}" is out of range.`,En=jt;return Number.isInteger(jt)&&Math.abs(jt)>4294967296?En=on(String(jt)):typeof jt=="bigint"&&(En=String(jt),(jt>BigInt(2)**BigInt(32)||jt<-(BigInt(2)**BigInt(32)))&&(En=on(En)),En+="n"),pn+=` It must be ${Ot}. Received ${En}`,pn},RangeError);const Vn=/[^+/0-9A-Za-z-_]/g;function Fn(_t,Ot){let jt;Ot=Ot||1/0;const pn=_t.length;let En=null;const yn=[];for(let Cn=0;Cn55295&&jt<57344){if(!En){if(jt>56319){(Ot-=3)>-1&&yn.push(239,191,189);continue}if(Cn+1===pn){(Ot-=3)>-1&&yn.push(239,191,189);continue}En=jt;continue}if(jt<56320){(Ot-=3)>-1&&yn.push(239,191,189),En=jt;continue}jt=65536+(En-55296<<10|jt-56320)}else En&&(Ot-=3)>-1&&yn.push(239,191,189);if(En=null,jt<128){if((Ot-=1)<0)break;yn.push(jt)}else if(jt<2048){if((Ot-=2)<0)break;yn.push(jt>>6|192,63&jt|128)}else if(jt<65536){if((Ot-=3)<0)break;yn.push(jt>>12|224,jt>>6&63|128,63&jt|128)}else{if(!(jt<1114112))throw new Error("Invalid code point");if((Ot-=4)<0)break;yn.push(jt>>18|240,jt>>12&63|128,jt>>6&63|128,63&jt|128)}}return yn}function fn(_t){return rt.toByteArray(function(Ot){if((Ot=(Ot=Ot.split("=")[0]).trim().replace(Vn,"")).length<2)return"";for(;Ot.length%4!=0;)Ot+="=";return Ot}(_t))}function Un(_t,Ot,jt,pn){let En;for(En=0;En=Ot.length||En>=_t.length);++En)Ot[En+jt]=_t[En];return En}function Jn(_t,Ot){return _t instanceof Ot||_t!=null&&_t.constructor!=null&&_t.constructor.name!=null&&_t.constructor.name===Ot.name}function _n(_t){return _t!=_t}const Zn=function(){const _t=new Array(256);for(let Ot=0;Ot<16;++Ot){const jt=16*Ot;for(let pn=0;pn<16;++pn)_t[jt+pn]="0123456789abcdef"[Ot]+"0123456789abcdef"[pn]}return _t}();function On(_t){return typeof BigInt>"u"?Yn:_t}function Yn(){throw new Error("BigInt not supported")}},49:et=>{et.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"}},9818:(et,tt,nt)=>{var rt=nt(528),lt=nt(8498),ut=lt(rt("String.prototype.indexOf"));et.exports=function(Ut,ot){var st=rt(Ut,!!ot);return typeof st=="function"&&ut(Ut,".prototype.")>-1?lt(st):st}},8498:(et,tt,nt)=>{var rt=nt(9138),lt=nt(528),ut=nt(6108),Ut=nt(3468),ot=lt("%Function.prototype.apply%"),st=lt("%Function.prototype.call%"),dt=lt("%Reflect.apply%",!0)||rt.call(st,ot),St=nt(4940),pt=lt("%Math.max%");et.exports=function(Bt){if(typeof Bt!="function")throw new Ut("a function is required");var ht=dt(rt,st,arguments);return ut(ht,1+pt(0,Bt.length-(arguments.length-1)),!0)};var Rt=function(){return dt(rt,ot,arguments)};St?St(et.exports,"apply",{value:Rt}):et.exports.apply=Rt},288:function(et,tt){var nt=typeof self<"u"?self:this,rt=function(){function ut(){this.fetch=!1,this.DOMException=nt.DOMException}return ut.prototype=nt,new ut}();(function(ut){(function(Ut){var ot="URLSearchParams"in ut,st="Symbol"in ut&&"iterator"in Symbol,dt="FileReader"in ut&&"Blob"in ut&&function(){try{return new Blob,!0}catch{return!1}}(),St="FormData"in ut,pt="ArrayBuffer"in ut;if(pt)var Rt=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],Bt=ArrayBuffer.isView||function(Jt){return Jt&&Rt.indexOf(Object.prototype.toString.call(Jt))>-1};function ht(Jt){if(typeof Jt!="string"&&(Jt=String(Jt)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(Jt))throw new TypeError("Invalid character in header field name");return Jt.toLowerCase()}function mt(Jt){return typeof Jt!="string"&&(Jt=String(Jt)),Jt}function gt(Jt){var wt={next:function(){var At=Jt.shift();return{done:At===void 0,value:At}}};return st&&(wt[Symbol.iterator]=function(){return wt}),wt}function Vt(Jt){this.map={},Jt instanceof Vt?Jt.forEach(function(wt,At){this.append(At,wt)},this):Array.isArray(Jt)?Jt.forEach(function(wt){this.append(wt[0],wt[1])},this):Jt&&Object.getOwnPropertyNames(Jt).forEach(function(wt){this.append(wt,Jt[wt])},this)}function Tt(Jt){if(Jt.bodyUsed)return Promise.reject(new TypeError("Already read"));Jt.bodyUsed=!0}function ft(Jt){return new Promise(function(wt,At){Jt.onload=function(){wt(Jt.result)},Jt.onerror=function(){At(Jt.error)}})}function Wt(Jt){var wt=new FileReader,At=ft(wt);return wt.readAsArrayBuffer(Jt),At}function yt(Jt){if(Jt.slice)return Jt.slice(0);var wt=new Uint8Array(Jt.byteLength);return wt.set(new Uint8Array(Jt)),wt.buffer}function Kt(){return this.bodyUsed=!1,this._initBody=function(Jt){var wt;this._bodyInit=Jt,Jt?typeof Jt=="string"?this._bodyText=Jt:dt&&Blob.prototype.isPrototypeOf(Jt)?this._bodyBlob=Jt:St&&FormData.prototype.isPrototypeOf(Jt)?this._bodyFormData=Jt:ot&&URLSearchParams.prototype.isPrototypeOf(Jt)?this._bodyText=Jt.toString():pt&&dt&&(wt=Jt)&&DataView.prototype.isPrototypeOf(wt)?(this._bodyArrayBuffer=yt(Jt.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):pt&&(ArrayBuffer.prototype.isPrototypeOf(Jt)||Bt(Jt))?this._bodyArrayBuffer=yt(Jt):this._bodyText=Jt=Object.prototype.toString.call(Jt):this._bodyText="",this.headers.get("content-type")||(typeof Jt=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):ot&&URLSearchParams.prototype.isPrototypeOf(Jt)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},dt&&(this.blob=function(){var Jt=Tt(this);if(Jt)return Jt;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?Tt(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(Wt)}),this.text=function(){var Jt,wt,At,Ct=Tt(this);if(Ct)return Ct;if(this._bodyBlob)return Jt=this._bodyBlob,wt=new FileReader,At=ft(wt),wt.readAsText(Jt),At;if(this._bodyArrayBuffer)return Promise.resolve(function(Mt){for(var nn=new Uint8Array(Mt),sn=new Array(nn.length),Lt=0;Lt-1?Ct:At),this.mode=wt.mode||this.mode||null,this.signal=wt.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&Mt)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(Mt)}function Nt(Jt){var wt=new FormData;return Jt.trim().split("&").forEach(function(At){if(At){var Ct=At.split("="),Mt=Ct.shift().replace(/\+/g," "),nn=Ct.join("=").replace(/\+/g," ");wt.append(decodeURIComponent(Mt),decodeURIComponent(nn))}}),wt}function qt(Jt,wt){wt||(wt={}),this.type="default",this.status=wt.status===void 0?200:wt.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in wt?wt.statusText:"OK",this.headers=new Vt(wt.headers),this.url=wt.url||"",this._initBody(Jt)}Ht.prototype.clone=function(){return new Ht(this,{body:this._bodyInit})},Kt.call(Ht.prototype),Kt.call(qt.prototype),qt.prototype.clone=function(){return new qt(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Vt(this.headers),url:this.url})},qt.error=function(){var Jt=new qt(null,{status:0,statusText:""});return Jt.type="error",Jt};var kt=[301,302,303,307,308];qt.redirect=function(Jt,wt){if(kt.indexOf(wt)===-1)throw new RangeError("Invalid status code");return new qt(null,{status:wt,headers:{location:Jt}})},Ut.DOMException=ut.DOMException;try{new Ut.DOMException}catch{Ut.DOMException=function(Jt,wt){this.message=Jt,this.name=wt;var At=Error(Jt);this.stack=At.stack},Ut.DOMException.prototype=Object.create(Error.prototype),Ut.DOMException.prototype.constructor=Ut.DOMException}function bt(Jt,wt){return new Promise(function(At,Ct){var Mt=new Ht(Jt,wt);if(Mt.signal&&Mt.signal.aborted)return Ct(new Ut.DOMException("Aborted","AbortError"));var nn=new XMLHttpRequest;function sn(){nn.abort()}nn.onload=function(){var Lt,tn,cn={status:nn.status,statusText:nn.statusText,headers:(Lt=nn.getAllResponseHeaders()||"",tn=new Vt,Lt.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(Gt){var Xt=Gt.split(":"),dn=Xt.shift().trim();if(dn){var Vn=Xt.join(":").trim();tn.append(dn,Vn)}}),tn)};cn.url="responseURL"in nn?nn.responseURL:cn.headers.get("X-Request-URL");var on="response"in nn?nn.response:nn.responseText;At(new qt(on,cn))},nn.onerror=function(){Ct(new TypeError("Network request failed"))},nn.ontimeout=function(){Ct(new TypeError("Network request failed"))},nn.onabort=function(){Ct(new Ut.DOMException("Aborted","AbortError"))},nn.open(Mt.method,Mt.url,!0),Mt.credentials==="include"?nn.withCredentials=!0:Mt.credentials==="omit"&&(nn.withCredentials=!1),"responseType"in nn&&dt&&(nn.responseType="blob"),Mt.headers.forEach(function(Lt,tn){nn.setRequestHeader(tn,Lt)}),Mt.signal&&(Mt.signal.addEventListener("abort",sn),nn.onreadystatechange=function(){nn.readyState===4&&Mt.signal.removeEventListener("abort",sn)}),nn.send(Mt._bodyInit===void 0?null:Mt._bodyInit)})}bt.polyfill=!0,ut.fetch||(ut.fetch=bt,ut.Headers=Vt,ut.Request=Ht,ut.Response=qt),Ut.Headers=Vt,Ut.Request=Ht,Ut.Response=qt,Ut.fetch=bt,Object.defineProperty(Ut,"__esModule",{value:!0})})({})})(rt),rt.fetch.ponyfill=!0,delete rt.fetch.polyfill;var lt=rt;(tt=lt.fetch).default=lt.fetch,tt.fetch=lt.fetch,tt.Headers=lt.Headers,tt.Request=lt.Request,tt.Response=lt.Response,et.exports=tt},686:(et,tt,nt)=>{var rt=nt(4940),lt=nt(5731),ut=nt(3468),Ut=nt(9336);et.exports=function(ot,st,dt){if(!ot||typeof ot!="object"&&typeof ot!="function")throw new ut("`obj` must be an object or a function`");if(typeof st!="string"&&typeof st!="symbol")throw new ut("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new ut("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new ut("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new ut("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new ut("`loose`, if provided, must be a boolean");var St=arguments.length>3?arguments[3]:null,pt=arguments.length>4?arguments[4]:null,Rt=arguments.length>5?arguments[5]:null,Bt=arguments.length>6&&arguments[6],ht=!!Ut&&Ut(ot,st);if(rt)rt(ot,st,{configurable:Rt===null&&ht?ht.configurable:!Rt,enumerable:St===null&&ht?ht.enumerable:!St,value:dt,writable:pt===null&&ht?ht.writable:!pt});else{if(!Bt&&(St||pt||Rt))throw new lt("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");ot[st]=dt}}},1857:(et,tt,nt)=>{var rt=nt(9228),lt=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",ut=Object.prototype.toString,Ut=Array.prototype.concat,ot=nt(686),st=nt(7239)(),dt=function(pt,Rt,Bt,ht){if(Rt in pt){if(ht===!0){if(pt[Rt]===Bt)return}else if(typeof(mt=ht)!="function"||ut.call(mt)!=="[object Function]"||!ht())return}var mt;st?ot(pt,Rt,Bt,!0):ot(pt,Rt,Bt)},St=function(pt,Rt){var Bt=arguments.length>2?arguments[2]:{},ht=rt(Rt);lt&&(ht=Ut.call(ht,Object.getOwnPropertySymbols(Rt)));for(var mt=0;mt{const rt=nt(5365),lt=nt(5757),ut=(Ut,ot,st)=>({from:ut,EnvVarError:nt(5757),get:function(dt){if(!dt)return Ut;if(arguments.length>1)throw new lt("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 rt(Ut,dt,ot||{},st||function(){})},accessors:nt(7350),logger:nt(7869)(console.log,Ut.NODE_ENV)});et.exports=ut(function(){try{return process.env}catch{return{}}}())},2555:(et,tt,nt)=>{const rt=nt(6261);et.exports=function(lt,ut){return ut=ut||",",lt.length?rt(lt).split(ut).filter(Boolean):[]}},7808:et=>{et.exports=function(tt){const nt=tt.toLowerCase();if(nt!=="false"&&nt!=="true")throw new Error('should be either "true", "false", "TRUE", or "FALSE"');return nt!=="false"}},3576:et=>{et.exports=function(tt){const nt=tt.toLowerCase();if(["false","0","true","1"].indexOf(nt)===-1)throw new Error('should be either "true", "false", "TRUE", "FALSE", 1, or 0');return!(nt==="0"||nt==="false")}},349:(et,tt,nt)=>{const rt=nt(6261),lt=/^(?:[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])+)\])$/;et.exports=function(ut){const Ut=rt(ut);if(!lt.test(Ut))throw new Error("should be a valid email address");return Ut}},129:(et,tt,nt)=>{const rt=nt(6261);et.exports=function(lt,ut){const Ut=rt(lt);if(ut.indexOf(Ut)<0)throw new Error(`should be one of [${ut.join(", ")}]`);return Ut}},2222:(et,tt,nt)=>{const rt=nt(5384);et.exports=function(lt){const ut=rt(lt);if(ut>0)throw new Error("should be a negative float");return ut}},3674:(et,tt,nt)=>{const rt=nt(5384);et.exports=function(lt){const ut=rt(lt);if(ut<0)throw new Error("should be a positive float");return ut}},5384:et=>{et.exports=function(tt){const nt=parseFloat(tt);if(isNaN(nt)||isNaN(tt))throw new Error("should be a valid float");return nt}},7350:(et,tt,nt)=>{et.exports={asArray:nt(2555),asSet:nt(7374),asBoolStrict:nt(7808),asBool:nt(3576),asPortNumber:nt(4647),asEnum:nt(129),asFloatNegative:nt(2222),asFloatPositive:nt(3674),asFloat:nt(5384),asIntNegative:nt(8455),asIntPositive:nt(879),asInt:nt(9799),asJsonArray:nt(9974),asJsonObject:nt(8124),asJson:nt(3566),asRegExp:nt(1045),asString:nt(6261),asUrlObject:nt(4531),asUrlString:nt(5549),asEmailString:nt(349)}},8455:(et,tt,nt)=>{const rt=nt(9799);et.exports=function(lt){const ut=rt(lt);if(ut>0)throw new Error("should be a negative integer");return ut}},879:(et,tt,nt)=>{const rt=nt(9799);et.exports=function(lt){const ut=rt(lt);if(ut<0)throw new Error("should be a positive integer");return ut}},9799:et=>{et.exports=function(tt){const nt=parseInt(tt,10);if(isNaN(nt)||nt.toString(10)!==tt)throw new Error("should be a valid integer");return nt}},9974:(et,tt,nt)=>{const rt=nt(3566);et.exports=function(lt){var ut=rt(lt);if(!Array.isArray(ut))throw new Error("should be a parseable JSON Array");return ut}},8124:(et,tt,nt)=>{const rt=nt(3566);et.exports=function(lt){var ut=rt(lt);if(Array.isArray(ut))throw new Error("should be a parseable JSON Object");return ut}},3566:et=>{et.exports=function(tt){try{return JSON.parse(tt)}catch{throw new Error("should be valid (parseable) JSON")}}},4647:(et,tt,nt)=>{const rt=nt(879);et.exports=function(lt){var ut=rt(lt);if(ut>65535)throw new Error("cannot assign a port number greater than 65535");return ut}},1045:et=>{et.exports=function(tt,nt){try{RegExp(void 0,nt)}catch{throw new Error("invalid regexp flags")}try{return new RegExp(tt,nt)}catch{throw new Error("should be a valid regexp")}}},7374:(et,tt,nt)=>{const rt=nt(2555);et.exports=function(lt,ut){return lt.length?new Set(rt(lt,ut)):new Set}},6261:et=>{et.exports=function(tt){return tt}},4531:(et,tt,nt)=>{const rt=nt(6261);et.exports=function(lt){const ut=rt(lt);try{return new URL(ut)}catch{throw new Error("should be a valid URL")}}},5549:(et,tt,nt)=>{const rt=nt(4531);et.exports=function(lt){return rt(lt).toString()}},5757:et=>{class tt extends Error{constructor(rt,...lt){super("env-var: "+rt,...lt),Error.captureStackTrace&&Error.captureStackTrace(this,tt),this.name="EnvVarError"}}et.exports=tt},7869:et=>{et.exports=function(tt,nt){return function(rt,lt){nt&&nt.match(/prod|production/)||tt(`env-var (${rt}): ${lt}`)}}},5365:(et,tt,nt)=>{const rt=nt(5757),lt=/^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$/;et.exports=function(ut,Ut,ot,st){let dt,St,pt=!1,Rt=!1;const Bt=nt(7350);function ht(Vt){st(Ut,Vt)}function mt(Vt,Tt){let ft=`"${Ut}" ${Tt}`;throw Vt&&(ft=""+ft),St&&(ft=`${ft}. An example of a valid value would be: ${St}`),new rt(ft)}const gt={convertFromBase64:function(){return ht("marking for base64 conversion"),pt=!0,gt},default:function(Vt){if(typeof Vt=="number")dt=Vt.toString();else if(Array.isArray(Vt)||typeof Vt=="object"&&Vt!==null)dt=JSON.stringify(Vt);else{if(typeof Vt!="string")throw new rt("values passed to default() must be of Number, String, Array, or Object type");dt=Vt}return ht(`setting default value to "${dt}"`),gt},required:function(Vt){return Vt===void 0?(ht("marked as required"),Rt=!0):(ht("setting required flag to "+Vt),Rt=Vt),gt},example:function(Vt){return St=Vt,gt}};return Object.entries({...Bt,...ot}).forEach(([Vt,Tt])=>{gt[Vt]=function(ft){return function(){let Wt=ut[Ut];if(ht(`will be read from the environment using "${ft.name}" accessor`),Wt===void 0)if(dt===void 0&&Rt)ht("was not found in the environment, but is required to be set"),mt(void 0,"is a required variable, but it was not set");else{if(dt===void 0)return void ht("was not found in the environment, but is not required. returning undefined");ht(`was not found in the environment, parsing default value "${dt}" instead`),Wt=dt}Rt&&(ht("verifying variable value is not an empty string"),Wt.trim().length===0&&mt(void 0,"is a required variable, but its value was empty")),pt&&(ht("verifying variable is a valid base64 string"),Wt.match(lt)||mt(Wt,"should be a valid base64 string if using convertFromBase64"),ht("converting from base64 to utf8 string"),Wt=Buffer.from(Wt,"base64").toString());const yt=[Wt].concat(Array.prototype.slice.call(arguments));try{ht(`passing value "${Wt}" to "${ft.name}" accessor`);const Kt=ft.apply(ft,yt);return ht("parsed successfully, returning "+Kt),Kt}catch(Kt){mt(Wt,Kt.message)}}}(Tt)}),gt}},4940:(et,tt,nt)=>{var rt=nt(528)("%Object.defineProperty%",!0)||!1;if(rt)try{rt({},"a",{value:1})}catch{rt=!1}et.exports=rt},9110:et=>{et.exports=EvalError},9838:et=>{et.exports=Error},1155:et=>{et.exports=RangeError},4943:et=>{et.exports=ReferenceError},5731:et=>{et.exports=SyntaxError},3468:et=>{et.exports=TypeError},2140:et=>{et.exports=URIError},46:et=>{var tt,nt=typeof Reflect=="object"?Reflect:null,rt=nt&&typeof nt.apply=="function"?nt.apply:function(gt,Vt,Tt){return Function.prototype.apply.call(gt,Vt,Tt)};tt=nt&&typeof nt.ownKeys=="function"?nt.ownKeys:Object.getOwnPropertySymbols?function(gt){return Object.getOwnPropertyNames(gt).concat(Object.getOwnPropertySymbols(gt))}:function(gt){return Object.getOwnPropertyNames(gt)};var lt=Number.isNaN||function(gt){return gt!=gt};function ut(){ut.init.call(this)}et.exports=ut,et.exports.once=function(gt,Vt){return new Promise(function(Tt,ft){function Wt(Kt){gt.removeListener(Vt,yt),ft(Kt)}function yt(){typeof gt.removeListener=="function"&>.removeListener("error",Wt),Tt([].slice.call(arguments))}mt(gt,Vt,yt,{once:!0}),Vt!=="error"&&function(Kt,$t,Ht){typeof Kt.on=="function"&&mt(Kt,"error",$t,Ht)}(gt,Wt,{once:!0})})},ut.EventEmitter=ut,ut.prototype._events=void 0,ut.prototype._eventsCount=0,ut.prototype._maxListeners=void 0;var Ut=10;function ot(gt){if(typeof gt!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof gt)}function st(gt){return gt._maxListeners===void 0?ut.defaultMaxListeners:gt._maxListeners}function dt(gt,Vt,Tt,ft){var Wt,yt,Kt,$t;if(ot(Tt),(yt=gt._events)===void 0?(yt=gt._events=Object.create(null),gt._eventsCount=0):(yt.newListener!==void 0&&(gt.emit("newListener",Vt,Tt.listener?Tt.listener:Tt),yt=gt._events),Kt=yt[Vt]),Kt===void 0)Kt=yt[Vt]=Tt,++gt._eventsCount;else if(typeof Kt=="function"?Kt=yt[Vt]=ft?[Tt,Kt]:[Kt,Tt]:ft?Kt.unshift(Tt):Kt.push(Tt),(Wt=st(gt))>0&&Kt.length>Wt&&!Kt.warned){Kt.warned=!0;var Ht=new Error("Possible EventEmitter memory leak detected. "+Kt.length+" "+String(Vt)+" listeners added. Use emitter.setMaxListeners() to increase limit");Ht.name="MaxListenersExceededWarning",Ht.emitter=gt,Ht.type=Vt,Ht.count=Kt.length,$t=Ht,console&&console.warn&&console.warn($t)}return gt}function St(){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 pt(gt,Vt,Tt){var ft={fired:!1,wrapFn:void 0,target:gt,type:Vt,listener:Tt},Wt=St.bind(ft);return Wt.listener=Tt,ft.wrapFn=Wt,Wt}function Rt(gt,Vt,Tt){var ft=gt._events;if(ft===void 0)return[];var Wt=ft[Vt];return Wt===void 0?[]:typeof Wt=="function"?Tt?[Wt.listener||Wt]:[Wt]:Tt?function(yt){for(var Kt=new Array(yt.length),$t=0;$t0&&(yt=Vt[0]),yt instanceof Error)throw yt;var Kt=new Error("Unhandled error."+(yt?" ("+yt.message+")":""));throw Kt.context=yt,Kt}var $t=Wt[gt];if($t===void 0)return!1;if(typeof $t=="function")rt($t,this,Vt);else{var Ht=$t.length,Nt=ht($t,Ht);for(Tt=0;Tt=0;yt--)if(Tt[yt]===Vt||Tt[yt].listener===Vt){Kt=Tt[yt].listener,Wt=yt;break}if(Wt<0)return this;Wt===0?Tt.shift():function($t,Ht){for(;Ht+1<$t.length;Ht++)$t[Ht]=$t[Ht+1];$t.pop()}(Tt,Wt),Tt.length===1&&(ft[gt]=Tt[0]),ft.removeListener!==void 0&&this.emit("removeListener",gt,Kt||Vt)}return this},ut.prototype.off=ut.prototype.removeListener,ut.prototype.removeAllListeners=function(gt){var Vt,Tt,ft;if((Tt=this._events)===void 0)return this;if(Tt.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):Tt[gt]!==void 0&&(--this._eventsCount==0?this._events=Object.create(null):delete Tt[gt]),this;if(arguments.length===0){var Wt,yt=Object.keys(Tt);for(ft=0;ft=0;ft--)this.removeListener(gt,Vt[ft]);return this},ut.prototype.listeners=function(gt){return Rt(this,gt,!0)},ut.prototype.rawListeners=function(gt){return Rt(this,gt,!1)},ut.listenerCount=function(gt,Vt){return typeof gt.listenerCount=="function"?gt.listenerCount(Vt):Bt.call(gt,Vt)},ut.prototype.listenerCount=Bt,ut.prototype.eventNames=function(){return this._eventsCount>0?tt(this._events):[]}},6075:et=>{et.exports=function(tt,nt){nt||(nt={}),typeof nt=="function"&&(nt={cmp:nt});var rt,lt=typeof nt.cycles=="boolean"&&nt.cycles,ut=nt.cmp&&(rt=nt.cmp,function(ot){return function(st,dt){var St={key:st,value:ot[st]},pt={key:dt,value:ot[dt]};return rt(St,pt)}}),Ut=[];return function ot(st){if(st&&st.toJSON&&typeof st.toJSON=="function"&&(st=st.toJSON()),st!==void 0){if(typeof st=="number")return isFinite(st)?""+st:"null";if(typeof st!="object")return JSON.stringify(st);var dt,St;if(Array.isArray(st)){for(St="[",dt=0;dt=Tt-1){var $t=ft.subarray(0,yt);if(Wt.push(String.fromCharCode.apply(null,$t)),!Kt)return Wt.join("");gt=gt.subarray(Vt),Vt=0,yt=0}var Ht=gt[Vt++];if(!(128&Ht))ft[yt++]=Ht;else if((224&Ht)==192){var Nt=63>[Vt++];ft[yt++]=(31&Ht)<<6|Nt}else if((240&Ht)==224){Nt=63>[Vt++];var qt=63>[Vt++];ft[yt++]=(31&Ht)<<12|Nt<<6|qt}else if((248&Ht)==240){var kt=(7&Ht)<<18|(Nt=63>[Vt++])<<12|(qt=63>[Vt++])<<6|63>[Vt++];kt>65535&&(kt-=65536,ft[yt++]=kt>>>10&1023|55296,kt=56320|1023&kt),ft[yt++]=kt}}}var ut="Failed to ",Ut=function(gt,Vt,Tt){if(gt)throw new Error("".concat(ut).concat(Vt,": the '").concat(Tt,"' option is unsupported."))},ot=typeof Buffer=="function"&&Buffer.from,st=ot?function(gt){return Buffer.from(gt)}:function(gt){for(var Vt=0,Tt=gt.length,ft=0,Wt=Math.max(32,Tt+(Tt>>>1)+7),yt=new Uint8Array(Wt>>>3<<3);Vt=55296&&Kt<=56319){if(Vt=55296&&Kt<=56319)continue}if(ft+4>yt.length){Wt+=8,Wt=(Wt*=1+Vt/gt.length*2)>>>3<<3;var Ht=new Uint8Array(Wt);Ht.set(yt),yt=Ht}if(4294967168&Kt){if(!(4294965248&Kt))yt[ft++]=Kt>>>6&31|192;else if(!(4294901760&Kt))yt[ft++]=Kt>>>12&15|224,yt[ft++]=Kt>>>6&63|128;else{if(4292870144&Kt)continue;yt[ft++]=Kt>>>18&7|240,yt[ft++]=Kt>>>12&63|128,yt[ft++]=Kt>>>6&63|128}yt[ft++]=63&Kt|128}else yt[ft++]=Kt}return yt.slice?yt.slice(0,ft):yt.subarray(0,ft)};function dt(){this.encoding="utf-8"}dt.prototype.encode=function(gt,Vt){return Ut(Vt&&Vt.stream,"encode","stream"),st(gt)};var St=!ot&&typeof Blob=="function"&&typeof URL=="function"&&typeof URL.createObjectURL=="function",pt=["utf-8","utf8","unicode-1-1-utf-8"],Rt=lt;ot?Rt=function(gt,Vt){return(gt instanceof Buffer?gt:Buffer.from(gt.buffer,gt.byteOffset,gt.byteLength)).toString(Vt)}:St&&(Rt=function(gt){try{return function(Vt){var Tt;try{var ft=new Blob([Vt],{type:"text/plain;charset=UTF-8"});Tt=URL.createObjectURL(ft);var Wt=new XMLHttpRequest;return Wt.open("GET",Tt,!1),Wt.send(),Wt.responseText}finally{Tt&&URL.revokeObjectURL(Tt)}}(gt)}catch{return lt(gt)}});var Bt="construct 'TextDecoder'",ht="".concat(ut," ").concat(Bt,": the ");function mt(gt,Vt){if(Ut(Vt&&Vt.fatal,Bt,"fatal"),gt=gt||"utf-8",!(ot?Buffer.isEncoding(gt):pt.indexOf(gt.toLowerCase())!==-1))throw new RangeError("".concat(ht," encoding label provided ('").concat(gt,"') is invalid."));this.encoding=gt,this.fatal=!1,this.ignoreBOM=!1}mt.prototype.decode=function(gt,Vt){var Tt;return Ut(Vt&&Vt.stream,"decode","stream"),Tt=gt instanceof Uint8Array?gt:gt.buffer instanceof ArrayBuffer?new Uint8Array(gt.buffer):new Uint8Array(gt),Rt(Tt,this.encoding)},rt.TextEncoder=rt.TextEncoder||dt,rt.TextDecoder=rt.TextDecoder||mt})(typeof window<"u"?window:nt.g!==void 0?nt.g:this)},4798:(et,tt,nt)=>{nt.r(tt),nt.d(tt,{assign:()=>st,default:()=>bt,defaultI18n:()=>Rt,format:()=>qt,parse:()=>kt,setGlobalDateI18n:()=>ht,setGlobalDateMasks:()=>Nt});var rt=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,lt="[^\\s]+",ut=/\[([^]*?)\]/gm;function Ut(Jt,wt){for(var At=[],Ct=0,Mt=Jt.length;Ct-1?Ct:null}};function st(Jt){for(var wt=[],At=1;At3?0:(Jt-Jt%10!=10?1:0)*Jt%10]}},Bt=st({},Rt),ht=function(Jt){return Bt=st(Bt,Jt)},mt=function(Jt){return Jt.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},gt=function(Jt,wt){for(wt===void 0&&(wt=2),Jt=String(Jt);Jt.length0?"-":"+")+gt(100*Math.floor(Math.abs(wt)/60)+Math.abs(wt)%60,4)},Z:function(Jt){var wt=Jt.getTimezoneOffset();return(wt>0?"-":"+")+gt(Math.floor(Math.abs(wt)/60),2)+":"+gt(Math.abs(wt)%60,2)}},Tt=function(Jt){return+Jt-1},ft=[null,"\\d\\d?"],Wt=[null,lt],yt=["isPm",lt,function(Jt,wt){var At=Jt.toLowerCase();return At===wt.amPm[0]?0:At===wt.amPm[1]?1:null}],Kt=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(Jt){var wt=(Jt+"").match(/([+-]|\d\d)/gi);if(wt){var At=60*+wt[1]+parseInt(wt[2],10);return wt[0]==="+"?At:-At}return 0}],$t={D:["day","\\d\\d?"],DD:["day","\\d\\d"],Do:["day","\\d\\d?"+lt,function(Jt){return parseInt(Jt,10)}],M:["month","\\d\\d?",Tt],MM:["month","\\d\\d",Tt],YY:["year","\\d\\d",function(Jt){var wt=+(""+new Date().getFullYear()).substr(0,2);return+(""+(+Jt>68?wt-1:wt)+Jt)}],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(Jt){return 100*+Jt}],SS:["millisecond","\\d\\d",function(Jt){return 10*+Jt}],SSS:["millisecond","\\d{3}"],d:ft,dd:ft,ddd:Wt,dddd:Wt,MMM:["month",lt,ot("monthNamesShort")],MMMM:["month",lt,ot("monthNames")],a:yt,A:yt,ZZ:Kt,Z:Kt},Ht={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"},Nt=function(Jt){return st(Ht,Jt)},qt=function(Jt,wt,At){if(wt===void 0&&(wt=Ht.default),At===void 0&&(At={}),typeof Jt=="number"&&(Jt=new Date(Jt)),Object.prototype.toString.call(Jt)!=="[object Date]"||isNaN(Jt.getTime()))throw new Error("Invalid Date pass to format");var Ct=[];wt=(wt=Ht[wt]||wt).replace(ut,function(nn,sn){return Ct.push(sn),"@@@"});var Mt=st(st({},Bt),At);return(wt=wt.replace(rt,function(nn){return Vt[nn](Jt,Mt)})).replace(/@@@/g,function(){return Ct.shift()})};function kt(Jt,wt,At){if(At===void 0&&(At={}),typeof wt!="string")throw new Error("Invalid format in fecha parse");if(wt=Ht[wt]||wt,Jt.length>1e3)return null;var Ct={year:new Date().getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},Mt=[],nn=[],sn=wt.replace(ut,function(_n,Zn){return nn.push(mt(Zn)),"@@@"}),Lt={},tn={};sn=mt(sn).replace(rt,function(_n){var Zn=$t[_n],On=Zn[0],Yn=Zn[1],_t=Zn[3];if(Lt[On])throw new Error("Invalid format. "+On+" specified twice in format");return Lt[On]=!0,_t&&(tn[_t]=!0),Mt.push(Zn),"("+Yn+")"}),Object.keys(tn).forEach(function(_n){if(!Lt[_n])throw new Error("Invalid format. "+_n+" is required in specified format")}),sn=sn.replace(/@@@/g,function(){return nn.shift()});var cn=Jt.match(new RegExp(sn,"i"));if(!cn)return null;for(var on,Gt=st(st({},Bt),At),Xt=1;Xt11||Ct.month<0||Ct.day>31||Ct.day<1||Ct.hour>23||Ct.hour<0||Ct.minute>59||Ct.minute<0||Ct.second>59||Ct.second<0)return null;return on}const bt={format:qt,parse:kt,defaultI18n:Rt,setGlobalDateI18n:ht,setGlobalDateMasks:Nt}},9827:et=>{var tt=Object.prototype.toString;et.exports=function(nt){if(typeof nt.displayName=="string"&&nt.constructor.name)return nt.displayName;if(typeof nt.name=="string"&&nt.name)return nt.name;if(typeof nt=="object"&&nt.constructor&&typeof nt.constructor.name=="string")return nt.constructor.name;var rt=nt.toString(),lt=tt.call(nt).slice(8,-1);return(rt=lt==="Function"?rt.substring(rt.indexOf("(")+1,rt.indexOf(")")):lt)||"anonymous"}},705:(et,tt,nt)=>{var rt=nt(9617),lt=Object.prototype.toString,ut=Object.prototype.hasOwnProperty,Ut=function(dt,St,pt){for(var Rt=0,Bt=dt.length;Rt=3&&(Rt=pt),lt.call(dt)==="[object Array]"?Ut(dt,St,Rt):typeof dt=="string"?ot(dt,St,Rt):st(dt,St,Rt)}},8794:et=>{var tt="Function.prototype.bind called on incompatible ",nt=Object.prototype.toString,rt=Math.max,lt=function(ot,st){for(var dt=[],St=0;St{var rt=nt(8794);et.exports=Function.prototype.bind||rt},528:(et,tt,nt)=>{var rt=nt(9838),lt=nt(9110),ut=nt(1155),Ut=nt(4943),ot=nt(5731),st=nt(3468),dt=nt(2140),St=Function,pt=function(nn){try{return St('"use strict"; return ('+nn+").constructor;")()}catch{}},Rt=Object.getOwnPropertyDescriptor;if(Rt)try{Rt({},"")}catch{Rt=null}var Bt=function(){throw new st},ht=Rt?function(){try{return Bt}catch{try{return Rt(arguments,"callee").get}catch{return Bt}}}():Bt,mt=nt(3558)(),gt=nt(6869)(),Vt=Object.getPrototypeOf||(gt?function(nn){return nn.__proto__}:null),Tt={},ft=typeof Uint8Array<"u"&&Vt?Vt(Uint8Array):void 0,Wt={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?void 0:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?void 0:ArrayBuffer,"%ArrayIteratorPrototype%":mt&&Vt?Vt([][Symbol.iterator]()):void 0,"%AsyncFromSyncIteratorPrototype%":void 0,"%AsyncFunction%":Tt,"%AsyncGenerator%":Tt,"%AsyncGeneratorFunction%":Tt,"%AsyncIteratorPrototype%":Tt,"%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%":rt,"%eval%":eval,"%EvalError%":lt,"%Float32Array%":typeof Float32Array>"u"?void 0:Float32Array,"%Float64Array%":typeof Float64Array>"u"?void 0:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?void 0:FinalizationRegistry,"%Function%":St,"%GeneratorFunction%":Tt,"%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%":mt&&Vt?Vt(Vt([][Symbol.iterator]())):void 0,"%JSON%":typeof JSON=="object"?JSON:void 0,"%Map%":typeof Map>"u"?void 0:Map,"%MapIteratorPrototype%":typeof Map<"u"&&mt&&Vt?Vt(new Map()[Symbol.iterator]()):void 0,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?void 0:Promise,"%Proxy%":typeof Proxy>"u"?void 0:Proxy,"%RangeError%":ut,"%ReferenceError%":Ut,"%Reflect%":typeof Reflect>"u"?void 0:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?void 0:Set,"%SetIteratorPrototype%":typeof Set<"u"&&mt&&Vt?Vt(new Set()[Symbol.iterator]()):void 0,"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?void 0:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":mt&&Vt?Vt(""[Symbol.iterator]()):void 0,"%Symbol%":mt?Symbol:void 0,"%SyntaxError%":ot,"%ThrowTypeError%":ht,"%TypedArray%":ft,"%TypeError%":st,"%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%":dt,"%WeakMap%":typeof WeakMap>"u"?void 0:WeakMap,"%WeakRef%":typeof WeakRef>"u"?void 0:WeakRef,"%WeakSet%":typeof WeakSet>"u"?void 0:WeakSet};if(Vt)try{null.error}catch(nn){var yt=Vt(Vt(nn));Wt["%Error.prototype%"]=yt}var Kt={__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"]},$t=nt(9138),Ht=nt(8554),Nt=$t.call(Function.call,Array.prototype.concat),qt=$t.call(Function.apply,Array.prototype.splice),kt=$t.call(Function.call,String.prototype.replace),bt=$t.call(Function.call,String.prototype.slice),Jt=$t.call(Function.call,RegExp.prototype.exec),wt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,At=/\\(\\)?/g,Ct=function(nn){var sn=bt(nn,0,1),Lt=bt(nn,-1);if(sn==="%"&&Lt!=="%")throw new ot("invalid intrinsic syntax, expected closing `%`");if(Lt==="%"&&sn!=="%")throw new ot("invalid intrinsic syntax, expected opening `%`");var tn=[];return kt(nn,wt,function(cn,on,Gt,Xt){tn[tn.length]=Gt?kt(Xt,At,"$1"):on||cn}),tn},Mt=function(nn,sn){var Lt,tn=nn;if(Ht(Kt,tn)&&(tn="%"+(Lt=Kt[tn])[0]+"%"),Ht(Wt,tn)){var cn=Wt[tn];if(cn===Tt&&(cn=function on(Gt){var Xt;if(Gt==="%AsyncFunction%")Xt=pt("async function () {}");else if(Gt==="%GeneratorFunction%")Xt=pt("function* () {}");else if(Gt==="%AsyncGeneratorFunction%")Xt=pt("async function* () {}");else if(Gt==="%AsyncGenerator%"){var dn=on("%AsyncGeneratorFunction%");dn&&(Xt=dn.prototype)}else if(Gt==="%AsyncIteratorPrototype%"){var Vn=on("%AsyncGenerator%");Vn&&Vt&&(Xt=Vt(Vn.prototype))}return Wt[Gt]=Xt,Xt}(tn)),cn===void 0&&!sn)throw new st("intrinsic "+nn+" exists, but is not available. Please file an issue!");return{alias:Lt,name:tn,value:cn}}throw new ot("intrinsic "+nn+" does not exist!")};et.exports=function(nn,sn){if(typeof nn!="string"||nn.length===0)throw new st("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof sn!="boolean")throw new st('"allowMissing" argument must be a boolean');if(Jt(/^%?[^%]*%?$/,nn)===null)throw new ot("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var Lt=Ct(nn),tn=Lt.length>0?Lt[0]:"",cn=Mt("%"+tn+"%",sn),on=cn.name,Gt=cn.value,Xt=!1,dn=cn.alias;dn&&(tn=dn[0],qt(Lt,Nt([0,1],dn)));for(var Vn=1,Fn=!0;Vn=Lt.length){var _n=Rt(Gt,fn);Gt=(Fn=!!_n)&&"get"in _n&&!("originalValue"in _n.get)?_n.get:Gt[fn]}else Fn=Ht(Gt,fn),Gt=Gt[fn];Fn&&!Xt&&(Wt[on]=Gt)}}return Gt}},7186:function(et,tt,nt){var rt=typeof Object.defineProperties=="function"?Object.defineProperty:function(ct,Qt,vt){ct!=Array.prototype&&ct!=Object.prototype&&(ct[Qt]=vt.value)},lt=typeof window<"u"&&window===this?this:nt.g!==void 0&&nt.g!=null?nt.g:this;function ut(){ut=function(){},lt.Symbol||(lt.Symbol=st)}function Ut(ct,Qt){this.a=ct,rt(this,"description",{configurable:!0,writable:!0,value:Qt})}Ut.prototype.toString=function(){return this.a};var ot,st=(ot=0,function ct(Qt){if(this instanceof ct)throw new TypeError("Symbol is not a constructor");return new Ut("jscomp_symbol_"+(Qt||"")+"_"+ot++,Qt)});function dt(){ut();var ct=lt.Symbol.iterator;ct||(ct=lt.Symbol.iterator=lt.Symbol("Symbol.iterator")),typeof Array.prototype[ct]!="function"&&rt(Array.prototype,ct,{configurable:!0,writable:!0,value:function(){return function(Qt){return dt(),(Qt={next:Qt})[lt.Symbol.iterator]=function(){return this},Qt}(function(Qt){var vt=0;return function(){return vt=arguments.length?Array.prototype.slice.call(ct,Qt):Array.prototype.slice.call(ct,Qt,vt)}function Tt(ct,Qt,vt,Pt){var en="Assertion failed";if(vt){en+=": "+vt;var Bn=Pt}else ct&&(en+=": "+ct,Bn=Qt);throw Error(en,Bn||[])}function ft(ct,Qt,vt){for(var Pt=[],en=2;en=ct.length)return String.fromCharCode.apply(null,ct);for(var Qt="",vt=0;vt>2;en=(3&en)<<4|jn>>4,jn=(15&jn)<<2|ur>>6,ur&=63,$n||(ur=64,Bn||(jn=64)),vt.push(Qt[Rr],Qt[en],Qt[jn]||"",Qt[ur]||"")}return vt.join("")}function nn(ct){var Qt=ct.length,vt=3*Qt/4;vt%3?vt=Math.floor(vt):"=.".indexOf(ct[Qt-1])!=-1&&(vt="=.".indexOf(ct[Qt-2])!=-1?vt-2:vt-1);var Pt=new Uint8Array(vt),en=0;return function(Bn,jn){function $n(hr){for(;ur>4),Yr!=64&&(jn(Sr<<4&240|Yr>>2),Mr!=64&&jn(Yr<<6&192|Mr))}}(ct,function(Bn){Pt[en++]=Bn}),Pt.subarray(0,en)}function sn(){if(!Ct){Ct={};for(var ct="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),Qt=["+/=","+/","-_=","-_.","-_"],vt=0;5>vt;vt++){var Pt=ct.concat(Qt[vt].split(""));At[vt]=Pt;for(var en=0;en>>0;ct=Math.floor((ct-Qt)/4294967296)>>>0,Lt=Qt,tn=ct}function on(ct){var Qt=0>ct,vt=(ct=Math.abs(ct))>>>0;ct=Math.floor((ct-vt)/4294967296),ct>>>=0,Qt&&(ct=~ct>>>0,4294967295<(vt=1+(~vt>>>0))&&(vt=0,4294967295<++ct&&(ct=0))),Lt=vt,tn=ct}function Gt(ct){var Qt=0>ct;cn(ct=2*Math.abs(ct)),ct=Lt;var vt=tn;Qt&&(ct==0?vt==0?vt=ct=4294967295:(vt--,ct=4294967295):ct--),Lt=ct,tn=vt}function Xt(ct){var Qt=0>ct?1:0;if((ct=Qt?-ct:ct)===0)0<1/ct?Lt=tn=0:(tn=0,Lt=2147483648);else if(isNaN(ct))tn=0,Lt=2147483647;else if(34028234663852886e22>>0;else if(11754943508222875e-54>ct)ct=Math.round(ct/Math.pow(2,-149)),tn=0,Lt=(Qt<<31|ct)>>>0;else{var vt=Math.floor(Math.log(ct)/Math.LN2);ct*=Math.pow(2,-vt),16777216<=(ct=Math.round(8388608*ct))&&++vt,tn=0,Lt=(Qt<<31|vt+127<<23|8388607&ct)>>>0}}function dn(ct){var Qt=0>ct?1:0;if((ct=Qt?-ct:ct)===0)tn=0<1/ct?0:2147483648,Lt=0;else if(isNaN(ct))tn=2147483647,Lt=4294967295;else if(17976931348623157e292>>0,Lt=0;else if(22250738585072014e-324>ct)ct/=Math.pow(2,-1074),tn=(Qt<<31|ct/4294967296)>>>0,Lt=ct>>>0;else{var vt=ct,Pt=0;if(2<=vt)for(;2<=vt&&1023>Pt;)Pt++,vt/=2;else for(;1>vt&&-1022>>0,Lt=4503599627370496*ct>>>0}}function Vn(ct){var Qt=ct.charCodeAt(4),vt=ct.charCodeAt(5),Pt=ct.charCodeAt(6),en=ct.charCodeAt(7);Lt=ct.charCodeAt(0)+(ct.charCodeAt(1)<<8)+(ct.charCodeAt(2)<<16)+(ct.charCodeAt(3)<<24)>>>0,tn=Qt+(vt<<8)+(Pt<<16)+(en<<24)>>>0}function Fn(ct,Qt){return 4294967296*Qt+(ct>>>0)}function fn(ct,Qt){var vt=2147483648&Qt;return vt&&(Qt=~Qt>>>0,(ct=1+~ct>>>0)==0&&(Qt=Qt+1>>>0)),ct=Fn(ct,Qt),vt?-ct:ct}function Un(ct,Qt,vt){var Pt=Qt>>31;return vt(ct<<1^Pt,(Qt<<1|ct>>>31)^Pt)}function Jn(ct,Qt){return _n(ct,Qt,fn)}function _n(ct,Qt,vt){var Pt=-(1&ct);return vt((ct>>>1|Qt<<31)^Pt,Qt>>>1^Pt)}function Zn(ct){var Qt=2*(ct>>31)+1,vt=ct>>>23&255;return ct&=8388607,vt==255?ct?NaN:1/0*Qt:vt==0?Qt*Math.pow(2,-149)*ct:Qt*Math.pow(2,vt-150)*(ct+Math.pow(2,23))}function On(ct,Qt){var vt=2*(Qt>>31)+1,Pt=Qt>>>20&2047;return ct=4294967296*(1048575&Qt)+ct,Pt==2047?ct?NaN:1/0*vt:Pt==0?vt*Math.pow(2,-1074)*ct:vt*Math.pow(2,Pt-1075)*(ct+4503599627370496)}function Yn(ct,Qt){return String.fromCharCode(ct>>>0&255,ct>>>8&255,ct>>>16&255,ct>>>24&255,Qt>>>0&255,Qt>>>8&255,Qt>>>16&255,Qt>>>24&255)}function _t(ct,Qt){function vt(en,Bn){return en=en?String(en):"",Bn?"0000000".slice(en.length)+en:en}if(2097151>=Qt)return""+Fn(ct,Qt);var Pt=(ct>>>24|Qt<<8)>>>0&16777215;return ct=(16777215&ct)+6777216*Pt+6710656*(Qt=Qt>>16&65535),Pt+=8147497*Qt,Qt*=2,1e7<=ct&&(Pt+=Math.floor(ct/1e7),ct%=1e7),1e7<=Pt&&(Qt+=Math.floor(Pt/1e7),Pt%=1e7),vt(Qt,0)+vt(Pt,Qt)+vt(ct,1)}function Ot(ct,Qt){var vt=2147483648&Qt;return vt&&(Qt=~Qt+((ct=1+~ct>>>0)==0?1:0)>>>0),ct=_t(ct,Qt),vt?"-"+ct:ct}function jt(ct,Qt){Vn(ct),ct=Lt;var vt=tn;return Qt?Ot(ct,vt):_t(ct,vt)}function pn(ct){function Qt(Bn,jn){for(var $n=0;8>$n&&(Bn!==1||0>>=8}ft(0Bn;Bn++)Pt[Bn]=255&~Pt[Bn]}(),Qt(1,1)),bt(Pt)}function En(ct){return String.fromCharCode(10>ct?48+ct:87+ct)}function yn(ct){return 97<=ct?ct-97+10:ct-48}function Cn(ct,Qt,vt,Pt,en){var Bn=0;if(128>Pt)for(;Qt>=7}if(ct[Qt++]!=jn)break;Bn++,Qt+=en}return Bn}function Gn(ct){return ct.constructor===Uint8Array?ct:ct.constructor===ArrayBuffer||ct.constructor===Array?new Uint8Array(ct):ct.constructor===String?nn(ct):ct instanceof Uint8Array?new Uint8Array(ct.buffer,ct.byteOffset,ct.byteLength):(Wt("Type not convertible to Uint8Array."),new Uint8Array(0))}function Wn(ct,Qt,vt){this.b=null,this.a=this.c=this.h=0,this.v=!1,ct&&this.H(ct,Qt,vt)}pt("jspb.utils.getSplit64Low",function(){return Lt},void 0),pt("jspb.utils.getSplit64High",function(){return tn},void 0),pt("jspb.utils.splitUint64",cn,void 0),pt("jspb.utils.splitInt64",on,void 0),pt("jspb.utils.splitZigzag64",Gt,void 0),pt("jspb.utils.splitFloat32",Xt,void 0),pt("jspb.utils.splitFloat64",dn,void 0),pt("jspb.utils.splitHash64",Vn,void 0),pt("jspb.utils.joinUint64",Fn,void 0),pt("jspb.utils.joinInt64",fn,void 0),pt("jspb.utils.toZigzag64",Un,void 0),pt("jspb.utils.joinZigzag64",Jn,void 0),pt("jspb.utils.fromZigzag64",_n,void 0),pt("jspb.utils.joinFloat32",Zn,void 0),pt("jspb.utils.joinFloat64",On,void 0),pt("jspb.utils.joinHash64",Yn,void 0),pt("jspb.utils.DIGITS","0123456789abcdef".split(""),void 0),pt("jspb.utils.joinUnsignedDecimalString",_t,void 0),pt("jspb.utils.joinSignedDecimalString",Ot,void 0),pt("jspb.utils.hash64ToDecimalString",jt,void 0),pt("jspb.utils.hash64ArrayToDecimalStrings",function(ct,Qt){for(var vt=Array(ct.length),Pt=0;Ptvt;vt++){var Pt=ct.charCodeAt(7-vt);Qt[2*vt+2]=En(Pt>>4),Qt[2*vt+3]=En(15&Pt)}return Qt.join("")},void 0),pt("jspb.utils.hexStringToHash64",function(ct){ft((ct=ct.toLowerCase()).length==18),ft(ct[0]=="0"),ft(ct[1]=="x");for(var Qt="",vt=0;8>vt;vt++)Qt=String.fromCharCode(16*yn(ct.charCodeAt(2*vt+2))+yn(ct.charCodeAt(2*vt+3)))+Qt;return Qt},void 0),pt("jspb.utils.hash64ToNumber",function(ct,Qt){Vn(ct),ct=Lt;var vt=tn;return Qt?fn(ct,vt):Fn(ct,vt)},void 0),pt("jspb.utils.numberToHash64",function(ct){return on(ct),Yn(Lt,tn)},void 0),pt("jspb.utils.countVarints",function(ct,Qt,vt){for(var Pt=0,en=Qt;en>7;return vt-Qt-Pt},void 0),pt("jspb.utils.countVarintFields",function(ct,Qt,vt,Pt){var en=0;if(128>(Pt*=8))for(;Qt>=7}if(ct[Qt++]!=Bn)break;for(en++;128&(Bn=ct[Qt++]););}return en},void 0),pt("jspb.utils.countFixed32Fields",function(ct,Qt,vt,Pt){return Cn(ct,Qt,vt,8*Pt+5,4)},void 0),pt("jspb.utils.countFixed64Fields",function(ct,Qt,vt,Pt){return Cn(ct,Qt,vt,8*Pt+1,8)},void 0),pt("jspb.utils.countDelimitedFields",function(ct,Qt,vt,Pt){var en=0;for(Pt=8*Pt+2;Qt>=7}if(ct[Qt++]!=Bn)break;en++;for(var jn=0,$n=1;jn+=(127&(Bn=ct[Qt++]))*$n,$n*=128,(128&Bn)!=0;);Qt+=jn}return en},void 0),pt("jspb.utils.debugBytesToTextFormat",function(ct){var Qt='"';if(ct){ct=Gn(ct);for(var vt=0;vtct[vt]&&(Qt+="0"),Qt+=ct[vt].toString(16)}return Qt+'"'},void 0),pt("jspb.utils.debugScalarToTextFormat",function(ct){if(typeof ct=="string"){ct=String(ct);for(var Qt=['"'],vt=0;vtBn||((Bn=en)in wt?en=wt[Bn]:Bn in Jt?en=wt[Bn]=Jt[Bn]:(31<(Pt=Bn.charCodeAt(0))&&127>Pt?en=Bn:(256>Pt?(en="\\x",(16>Pt||256Pt&&(en+="0")),en+=Pt.toString(16).toUpperCase()),en=wt[Bn]=en)),Pt=en),Qt[jn]=Pt}Qt.push('"'),ct=Qt.join("")}else ct=ct.toString();return ct},void 0),pt("jspb.utils.stringToByteArray",function(ct){for(var Qt=new Uint8Array(ct.length),vt=0;vtir.length&&ir.push(this)},Wn.prototype.free=Wn.prototype.Ca,Wn.prototype.clone=function(){return lr(this.b,this.h,this.c-this.h)},Wn.prototype.clone=Wn.prototype.clone,Wn.prototype.clear=function(){this.b=null,this.a=this.c=this.h=0,this.v=!1},Wn.prototype.clear=Wn.prototype.clear,Wn.prototype.Y=function(){return this.b},Wn.prototype.getBuffer=Wn.prototype.Y,Wn.prototype.H=function(ct,Qt,vt){this.b=Gn(ct),this.h=Qt!==void 0?Qt:0,this.c=vt!==void 0?this.h+vt:this.b.length,this.a=this.h},Wn.prototype.setBlock=Wn.prototype.H,Wn.prototype.Db=function(){return this.c},Wn.prototype.getEnd=Wn.prototype.Db,Wn.prototype.setEnd=function(ct){this.c=ct},Wn.prototype.setEnd=Wn.prototype.setEnd,Wn.prototype.reset=function(){this.a=this.h},Wn.prototype.reset=Wn.prototype.reset,Wn.prototype.B=function(){return this.a},Wn.prototype.getCursor=Wn.prototype.B,Wn.prototype.Ma=function(ct){this.a=ct},Wn.prototype.setCursor=Wn.prototype.Ma,Wn.prototype.advance=function(ct){this.a+=ct,ft(this.a<=this.c)},Wn.prototype.advance=Wn.prototype.advance,Wn.prototype.ya=function(){return this.a==this.c},Wn.prototype.atEnd=Wn.prototype.ya,Wn.prototype.Qb=function(){return this.a>this.c},Wn.prototype.pastEnd=Wn.prototype.Qb,Wn.prototype.getError=function(){return this.v||0>this.a||this.a>this.c},Wn.prototype.getError=Wn.prototype.getError,Wn.prototype.w=function(ct){for(var Qt=128,vt=0,Pt=0,en=0;4>en&&128<=Qt;en++)vt|=(127&(Qt=this.b[this.a++]))<<7*en;if(128<=Qt&&(vt|=(127&(Qt=this.b[this.a++]))<<28,Pt|=(127&Qt)>>4),128<=Qt)for(en=0;5>en&&128<=Qt;en++)Pt|=(127&(Qt=this.b[this.a++]))<<7*en+3;if(128>Qt)return ct(vt>>>0,Pt>>>0);Wt("Failed to read varint, encoding is invalid."),this.v=!0},Wn.prototype.readSplitVarint64=Wn.prototype.w,Wn.prototype.ea=function(ct){return this.w(function(Qt,vt){return _n(Qt,vt,ct)})},Wn.prototype.readSplitZigzagVarint64=Wn.prototype.ea,Wn.prototype.ta=function(ct){var Qt=this.b,vt=this.a;this.a+=8;for(var Pt=0,en=0,Bn=vt+7;Bn>=vt;Bn--)Pt=Pt<<8|Qt[Bn],en=en<<8|Qt[Bn+4];return ct(Pt,en)},Wn.prototype.readSplitFixed64=Wn.prototype.ta,Wn.prototype.kb=function(){for(;128&this.b[this.a];)this.a++;this.a++},Wn.prototype.skipVarint=Wn.prototype.kb,Wn.prototype.mb=function(ct){for(;128>>=7;this.a--},Wn.prototype.unskipVarint=Wn.prototype.mb,Wn.prototype.o=function(){var ct=this.b,Qt=ct[this.a],vt=127&Qt;return 128>Qt?(this.a+=1,ft(this.a<=this.c),vt):(vt|=(127&(Qt=ct[this.a+1]))<<7,128>Qt?(this.a+=2,ft(this.a<=this.c),vt):(vt|=(127&(Qt=ct[this.a+2]))<<14,128>Qt?(this.a+=3,ft(this.a<=this.c),vt):(vt|=(127&(Qt=ct[this.a+3]))<<21,128>Qt?(this.a+=4,ft(this.a<=this.c),vt):(vt|=(15&(Qt=ct[this.a+4]))<<28,128>Qt?(this.a+=5,ft(this.a<=this.c),vt>>>0):(this.a+=5,128<=ct[this.a++]&&128<=ct[this.a++]&&128<=ct[this.a++]&&128<=ct[this.a++]&&128<=ct[this.a++]&&ft(!1),ft(this.a<=this.c),vt)))))},Wn.prototype.readUnsignedVarint32=Wn.prototype.o,Wn.prototype.da=function(){return~~this.o()},Wn.prototype.readSignedVarint32=Wn.prototype.da,Wn.prototype.O=function(){return this.o().toString()},Wn.prototype.Ea=function(){return this.da().toString()},Wn.prototype.readSignedVarint32String=Wn.prototype.Ea,Wn.prototype.Ia=function(){var ct=this.o();return ct>>>1^-(1&ct)},Wn.prototype.readZigzagVarint32=Wn.prototype.Ia,Wn.prototype.Ga=function(){return this.w(Fn)},Wn.prototype.readUnsignedVarint64=Wn.prototype.Ga,Wn.prototype.Ha=function(){return this.w(_t)},Wn.prototype.readUnsignedVarint64String=Wn.prototype.Ha,Wn.prototype.sa=function(){return this.w(fn)},Wn.prototype.readSignedVarint64=Wn.prototype.sa,Wn.prototype.Fa=function(){return this.w(Ot)},Wn.prototype.readSignedVarint64String=Wn.prototype.Fa,Wn.prototype.Ja=function(){return this.w(Jn)},Wn.prototype.readZigzagVarint64=Wn.prototype.Ja,Wn.prototype.fb=function(){return this.ea(Yn)},Wn.prototype.readZigzagVarintHash64=Wn.prototype.fb,Wn.prototype.Ka=function(){return this.ea(Ot)},Wn.prototype.readZigzagVarint64String=Wn.prototype.Ka,Wn.prototype.Gc=function(){var ct=this.b[this.a];return this.a+=1,ft(this.a<=this.c),ct},Wn.prototype.readUint8=Wn.prototype.Gc,Wn.prototype.Ec=function(){var ct=this.b[this.a],Qt=this.b[this.a+1];return this.a+=2,ft(this.a<=this.c),ct<<0|Qt<<8},Wn.prototype.readUint16=Wn.prototype.Ec,Wn.prototype.m=function(){var ct=this.b[this.a],Qt=this.b[this.a+1],vt=this.b[this.a+2],Pt=this.b[this.a+3];return this.a+=4,ft(this.a<=this.c),(ct<<0|Qt<<8|vt<<16|Pt<<24)>>>0},Wn.prototype.readUint32=Wn.prototype.m,Wn.prototype.ga=function(){return Fn(this.m(),this.m())},Wn.prototype.readUint64=Wn.prototype.ga,Wn.prototype.ha=function(){return _t(this.m(),this.m())},Wn.prototype.readUint64String=Wn.prototype.ha,Wn.prototype.Xb=function(){var ct=this.b[this.a];return this.a+=1,ft(this.a<=this.c),ct<<24>>24},Wn.prototype.readInt8=Wn.prototype.Xb,Wn.prototype.Vb=function(){var ct=this.b[this.a],Qt=this.b[this.a+1];return this.a+=2,ft(this.a<=this.c),(ct<<0|Qt<<8)<<16>>16},Wn.prototype.readInt16=Wn.prototype.Vb,Wn.prototype.P=function(){var ct=this.b[this.a],Qt=this.b[this.a+1],vt=this.b[this.a+2],Pt=this.b[this.a+3];return this.a+=4,ft(this.a<=this.c),ct<<0|Qt<<8|vt<<16|Pt<<24},Wn.prototype.readInt32=Wn.prototype.P,Wn.prototype.ba=function(){return fn(this.m(),this.m())},Wn.prototype.readInt64=Wn.prototype.ba,Wn.prototype.ca=function(){return Ot(this.m(),this.m())},Wn.prototype.readInt64String=Wn.prototype.ca,Wn.prototype.aa=function(){return Zn(this.m())},Wn.prototype.readFloat=Wn.prototype.aa,Wn.prototype.Z=function(){return On(this.m(),this.m())},Wn.prototype.readDouble=Wn.prototype.Z,Wn.prototype.pa=function(){return!!this.b[this.a++]},Wn.prototype.readBool=Wn.prototype.pa,Wn.prototype.ra=function(){return this.da()},Wn.prototype.readEnum=Wn.prototype.ra,Wn.prototype.fa=function(ct){var Qt=this.b,vt=this.a;ct=vt+ct;for(var Pt=[],en="";vtBn)Pt.push(Bn);else{if(192>Bn)continue;if(224>Bn){var jn=Qt[vt++];Pt.push((31&Bn)<<6|63&jn)}else if(240>Bn){jn=Qt[vt++];var $n=Qt[vt++];Pt.push((15&Bn)<<12|(63&jn)<<6|63&$n)}else 248>Bn&&(Bn=(7&Bn)<<18|(63&(jn=Qt[vt++]))<<12|(63&($n=Qt[vt++]))<<6|63&Qt[vt++],Bn-=65536,Pt.push(55296+(Bn>>10&1023),56320+(1023&Bn)))}8192<=Pt.length&&(en+=String.fromCharCode.apply(null,Pt),Pt.length=0)}return en+=bt(Pt),this.a=vt,en},Wn.prototype.readString=Wn.prototype.fa,Wn.prototype.Dc=function(){var ct=this.o();return this.fa(ct)},Wn.prototype.readStringWithLength=Wn.prototype.Dc,Wn.prototype.qa=function(ct){if(0>ct||this.a+ct>this.b.length)return this.v=!0,Wt("Invalid byte length!"),new Uint8Array(0);var Qt=this.b.subarray(this.a,this.a+ct);return this.a+=ct,ft(this.a<=this.c),Qt},Wn.prototype.readBytes=Wn.prototype.qa,Wn.prototype.ia=function(){return this.w(Yn)},Wn.prototype.readVarintHash64=Wn.prototype.ia,Wn.prototype.$=function(){var ct=this.b,Qt=this.a,vt=ct[Qt],Pt=ct[Qt+1],en=ct[Qt+2],Bn=ct[Qt+3],jn=ct[Qt+4],$n=ct[Qt+5],ur=ct[Qt+6];return ct=ct[Qt+7],this.a+=8,String.fromCharCode(vt,Pt,en,Bn,jn,$n,ur,ct)},Wn.prototype.readFixedHash64=Wn.prototype.$,pt("jspb.BinaryReader",Rn,void 0);var _r=[];function zr(ct,Qt,vt){if(_r.length){var Pt=_r.pop();return ct&&Pt.a.H(ct,Qt,vt),Pt}return new Rn(ct,Qt,vt)}function Er(ct,Qt){ft(ct.b==2);var vt=ct.a.o();vt=ct.a.B()+vt;for(var Pt=[];ct.a.B()_r.length&&_r.push(this)},Rn.prototype.free=Rn.prototype.Ca,Rn.prototype.Fb=function(){return this.O},Rn.prototype.getFieldCursor=Rn.prototype.Fb,Rn.prototype.B=function(){return this.a.B()},Rn.prototype.getCursor=Rn.prototype.B,Rn.prototype.Y=function(){return this.a.Y()},Rn.prototype.getBuffer=Rn.prototype.Y,Rn.prototype.Hb=function(){return this.c},Rn.prototype.getFieldNumber=Rn.prototype.Hb,Rn.prototype.Lb=function(){return this.b},Rn.prototype.getWireType=Rn.prototype.Lb,Rn.prototype.Mb=function(){return this.b==2},Rn.prototype.isDelimited=Rn.prototype.Mb,Rn.prototype.bb=function(){return this.b==4},Rn.prototype.isEndGroup=Rn.prototype.bb,Rn.prototype.getError=function(){return this.h||this.a.getError()},Rn.prototype.getError=Rn.prototype.getError,Rn.prototype.H=function(ct,Qt,vt){this.a.H(ct,Qt,vt),this.b=this.c=-1},Rn.prototype.setBlock=Rn.prototype.H,Rn.prototype.reset=function(){this.a.reset(),this.b=this.c=-1},Rn.prototype.reset=Rn.prototype.reset,Rn.prototype.advance=function(ct){this.a.advance(ct)},Rn.prototype.advance=Rn.prototype.advance,Rn.prototype.oa=function(){if(this.a.ya())return!1;if(this.getError())return Wt("Decoder hit an error"),!1;this.O=this.a.B();var ct=this.a.o(),Qt=ct>>>3;return(ct&=7)!=0&&ct!=5&&ct!=1&&ct!=2&&ct!=3&&ct!=4?(Wt("Invalid wire type: %s (at position %s)",ct,this.O),this.h=!0,!1):(this.c=Qt,this.b=ct,!0)},Rn.prototype.nextField=Rn.prototype.oa,Rn.prototype.Oa=function(){this.a.mb(this.c<<3|this.b)},Rn.prototype.unskipHeader=Rn.prototype.Oa,Rn.prototype.Lc=function(){var ct=this.c;for(this.Oa();this.oa()&&this.c==ct;)this.C();this.a.ya()||this.Oa()},Rn.prototype.skipMatchingFields=Rn.prototype.Lc,Rn.prototype.lb=function(){this.b!=0?(Wt("Invalid wire type for skipVarintField"),this.C()):this.a.kb()},Rn.prototype.skipVarintField=Rn.prototype.lb,Rn.prototype.gb=function(){if(this.b!=2)Wt("Invalid wire type for skipDelimitedField"),this.C();else{var ct=this.a.o();this.a.advance(ct)}},Rn.prototype.skipDelimitedField=Rn.prototype.gb,Rn.prototype.hb=function(){this.b!=5?(Wt("Invalid wire type for skipFixed32Field"),this.C()):this.a.advance(4)},Rn.prototype.skipFixed32Field=Rn.prototype.hb,Rn.prototype.ib=function(){this.b!=1?(Wt("Invalid wire type for skipFixed64Field"),this.C()):this.a.advance(8)},Rn.prototype.skipFixed64Field=Rn.prototype.ib,Rn.prototype.jb=function(){for(var ct=this.c;;){if(!this.oa()){Wt("Unmatched start-group tag: stream EOF"),this.h=!0;break}if(this.b==4){this.c!=ct&&(Wt("Unmatched end-group tag"),this.h=!0);break}this.C()}},Rn.prototype.skipGroup=Rn.prototype.jb,Rn.prototype.C=function(){switch(this.b){case 0:this.lb();break;case 1:this.ib();break;case 2:this.gb();break;case 5:this.hb();break;case 3:this.jb();break;default:Wt("Invalid wire encoding for field.")}},Rn.prototype.skipField=Rn.prototype.C,Rn.prototype.Hc=function(ct,Qt){this.v===null&&(this.v={}),ft(!this.v[ct]),this.v[ct]=Qt},Rn.prototype.registerReadCallback=Rn.prototype.Hc,Rn.prototype.Ic=function(ct){return ft(this.v!==null),ft(ct=this.v[ct]),ct(this)},Rn.prototype.runReadCallback=Rn.prototype.Ic,Rn.prototype.Yb=function(ct,Qt){ft(this.b==2);var vt=this.a.c,Pt=this.a.o();Pt=this.a.B()+Pt,this.a.setEnd(Pt),Qt(ct,this),this.a.Ma(Pt),this.a.setEnd(vt)},Rn.prototype.readMessage=Rn.prototype.Yb,Rn.prototype.Ub=function(ct,Qt,vt){ft(this.b==3),ft(this.c==ct),vt(Qt,this),this.h||this.b==4||(Wt("Group submessage did not end with an END_GROUP tag"),this.h=!0)},Rn.prototype.readGroup=Rn.prototype.Ub,Rn.prototype.Gb=function(){ft(this.b==2);var ct=this.a.o(),Qt=this.a.B(),vt=Qt+ct;return ct=lr(this.a.Y(),Qt,ct),this.a.Ma(vt),ct},Rn.prototype.getFieldDecoder=Rn.prototype.Gb,Rn.prototype.P=function(){return ft(this.b==0),this.a.da()},Rn.prototype.readInt32=Rn.prototype.P,Rn.prototype.Wb=function(){return ft(this.b==0),this.a.Ea()},Rn.prototype.readInt32String=Rn.prototype.Wb,Rn.prototype.ba=function(){return ft(this.b==0),this.a.sa()},Rn.prototype.readInt64=Rn.prototype.ba,Rn.prototype.ca=function(){return ft(this.b==0),this.a.Fa()},Rn.prototype.readInt64String=Rn.prototype.ca,Rn.prototype.m=function(){return ft(this.b==0),this.a.o()},Rn.prototype.readUint32=Rn.prototype.m,Rn.prototype.Fc=function(){return ft(this.b==0),this.a.O()},Rn.prototype.readUint32String=Rn.prototype.Fc,Rn.prototype.ga=function(){return ft(this.b==0),this.a.Ga()},Rn.prototype.readUint64=Rn.prototype.ga,Rn.prototype.ha=function(){return ft(this.b==0),this.a.Ha()},Rn.prototype.readUint64String=Rn.prototype.ha,Rn.prototype.zc=function(){return ft(this.b==0),this.a.Ia()},Rn.prototype.readSint32=Rn.prototype.zc,Rn.prototype.Ac=function(){return ft(this.b==0),this.a.Ja()},Rn.prototype.readSint64=Rn.prototype.Ac,Rn.prototype.Bc=function(){return ft(this.b==0),this.a.Ka()},Rn.prototype.readSint64String=Rn.prototype.Bc,Rn.prototype.Rb=function(){return ft(this.b==5),this.a.m()},Rn.prototype.readFixed32=Rn.prototype.Rb,Rn.prototype.Sb=function(){return ft(this.b==1),this.a.ga()},Rn.prototype.readFixed64=Rn.prototype.Sb,Rn.prototype.Tb=function(){return ft(this.b==1),this.a.ha()},Rn.prototype.readFixed64String=Rn.prototype.Tb,Rn.prototype.vc=function(){return ft(this.b==5),this.a.P()},Rn.prototype.readSfixed32=Rn.prototype.vc,Rn.prototype.wc=function(){return ft(this.b==5),this.a.P().toString()},Rn.prototype.readSfixed32String=Rn.prototype.wc,Rn.prototype.xc=function(){return ft(this.b==1),this.a.ba()},Rn.prototype.readSfixed64=Rn.prototype.xc,Rn.prototype.yc=function(){return ft(this.b==1),this.a.ca()},Rn.prototype.readSfixed64String=Rn.prototype.yc,Rn.prototype.aa=function(){return ft(this.b==5),this.a.aa()},Rn.prototype.readFloat=Rn.prototype.aa,Rn.prototype.Z=function(){return ft(this.b==1),this.a.Z()},Rn.prototype.readDouble=Rn.prototype.Z,Rn.prototype.pa=function(){return ft(this.b==0),!!this.a.o()},Rn.prototype.readBool=Rn.prototype.pa,Rn.prototype.ra=function(){return ft(this.b==0),this.a.sa()},Rn.prototype.readEnum=Rn.prototype.ra,Rn.prototype.fa=function(){ft(this.b==2);var ct=this.a.o();return this.a.fa(ct)},Rn.prototype.readString=Rn.prototype.fa,Rn.prototype.qa=function(){ft(this.b==2);var ct=this.a.o();return this.a.qa(ct)},Rn.prototype.readBytes=Rn.prototype.qa,Rn.prototype.ia=function(){return ft(this.b==0),this.a.ia()},Rn.prototype.readVarintHash64=Rn.prototype.ia,Rn.prototype.Cc=function(){return ft(this.b==0),this.a.fb()},Rn.prototype.readSintHash64=Rn.prototype.Cc,Rn.prototype.w=function(ct){return ft(this.b==0),this.a.w(ct)},Rn.prototype.readSplitVarint64=Rn.prototype.w,Rn.prototype.ea=function(ct){return ft(this.b==0),this.a.w(function(Qt,vt){return _n(Qt,vt,ct)})},Rn.prototype.readSplitZigzagVarint64=Rn.prototype.ea,Rn.prototype.$=function(){return ft(this.b==1),this.a.$()},Rn.prototype.readFixedHash64=Rn.prototype.$,Rn.prototype.ta=function(ct){return ft(this.b==1),this.a.ta(ct)},Rn.prototype.readSplitFixed64=Rn.prototype.ta,Rn.prototype.gc=function(){return Er(this,this.a.da)},Rn.prototype.readPackedInt32=Rn.prototype.gc,Rn.prototype.hc=function(){return Er(this,this.a.Ea)},Rn.prototype.readPackedInt32String=Rn.prototype.hc,Rn.prototype.ic=function(){return Er(this,this.a.sa)},Rn.prototype.readPackedInt64=Rn.prototype.ic,Rn.prototype.jc=function(){return Er(this,this.a.Fa)},Rn.prototype.readPackedInt64String=Rn.prototype.jc,Rn.prototype.qc=function(){return Er(this,this.a.o)},Rn.prototype.readPackedUint32=Rn.prototype.qc,Rn.prototype.rc=function(){return Er(this,this.a.O)},Rn.prototype.readPackedUint32String=Rn.prototype.rc,Rn.prototype.sc=function(){return Er(this,this.a.Ga)},Rn.prototype.readPackedUint64=Rn.prototype.sc,Rn.prototype.tc=function(){return Er(this,this.a.Ha)},Rn.prototype.readPackedUint64String=Rn.prototype.tc,Rn.prototype.nc=function(){return Er(this,this.a.Ia)},Rn.prototype.readPackedSint32=Rn.prototype.nc,Rn.prototype.oc=function(){return Er(this,this.a.Ja)},Rn.prototype.readPackedSint64=Rn.prototype.oc,Rn.prototype.pc=function(){return Er(this,this.a.Ka)},Rn.prototype.readPackedSint64String=Rn.prototype.pc,Rn.prototype.bc=function(){return Er(this,this.a.m)},Rn.prototype.readPackedFixed32=Rn.prototype.bc,Rn.prototype.cc=function(){return Er(this,this.a.ga)},Rn.prototype.readPackedFixed64=Rn.prototype.cc,Rn.prototype.dc=function(){return Er(this,this.a.ha)},Rn.prototype.readPackedFixed64String=Rn.prototype.dc,Rn.prototype.kc=function(){return Er(this,this.a.P)},Rn.prototype.readPackedSfixed32=Rn.prototype.kc,Rn.prototype.lc=function(){return Er(this,this.a.ba)},Rn.prototype.readPackedSfixed64=Rn.prototype.lc,Rn.prototype.mc=function(){return Er(this,this.a.ca)},Rn.prototype.readPackedSfixed64String=Rn.prototype.mc,Rn.prototype.fc=function(){return Er(this,this.a.aa)},Rn.prototype.readPackedFloat=Rn.prototype.fc,Rn.prototype.$b=function(){return Er(this,this.a.Z)},Rn.prototype.readPackedDouble=Rn.prototype.$b,Rn.prototype.Zb=function(){return Er(this,this.a.pa)},Rn.prototype.readPackedBool=Rn.prototype.Zb,Rn.prototype.ac=function(){return Er(this,this.a.ra)},Rn.prototype.readPackedEnum=Rn.prototype.ac,Rn.prototype.uc=function(){return Er(this,this.a.ia)},Rn.prototype.readPackedVarintHash64=Rn.prototype.uc,Rn.prototype.ec=function(){return Er(this,this.a.$)},Rn.prototype.readPackedFixedHash64=Rn.prototype.ec,pt("jspb.ExtensionFieldInfo",ho,void 0),pt("jspb.ExtensionFieldBinaryInfo",Ro,void 0),ho.prototype.F=function(){return!!this.la},ho.prototype.isMessageType=ho.prototype.F,pt("jspb.Message",rr,void 0),rr.GENERATE_TO_OBJECT=!0,rr.GENERATE_FROM_OBJECT=!0;var wo=typeof Uint8Array=="function";rr.prototype.Ib=function(){return this.b},rr.prototype.getJsPbMessageId=rr.prototype.Ib,rr.initialize=function(ct,Qt,vt,Pt,en,Bn){if(ct.f=null,Qt||(Qt=vt?[vt]:[]),ct.b=vt?String(vt):void 0,ct.D=vt===0?-1:0,ct.u=Qt,Qt=-1,!(vt=ct.u.length)||(Qt=vt-1,(vt=ct.u[Qt])===null||typeof vt!="object"||Array.isArray(vt)||wo&&vt instanceof Uint8Array)?-1Qt.length?vt.length:Qt.length;for(ct.b&&(Pt[0]=ct.b,en=1);en>>16;for(Qt=vt*Pt+65536*(vt*en&65535)+65536*((ct>>>=16)*Pt&65535),vt=ct*en+(vt*en>>>16)+(ct*Pt>>>16);4294967296<=Qt;)Qt-=4294967296,vt+=1;return new cr(Qt>>>0,vt>>>0)}function Qo(ct){for(var Qt=new cr(0,0),vt=new cr(0,0),Pt=0;Ptct[Pt]||"9">>=7,ct.b++;Qt.push(vt),ct.b++}function zt(ct,Qt,vt){ft(1<=Qt&&Qt==Math.floor(Qt)),ct.a.j(8*Qt+vt)}function Qn(ct,Qt,vt){vt!=null&&(zt(ct,Qt,0),ct.a.j(vt))}function Tn(ct,Qt,vt){vt!=null&&(zt(ct,Qt,0),ct.a.M(vt))}pt("jspb.debug.dump",eo.dump,void 0),eo.X=function(ct){var Qt=Rt(ct);if(Qt=="number"||Qt=="string"||Qt=="boolean"||Qt=="null"||Qt=="undefined"||typeof Uint8Array<"u"&&ct instanceof Uint8Array)return ct;if(Qt=="array")return function(Sr,Yr,Mr){for(var hr=[],Br=2;Brct),ft(0<=Qt&&4294967296>Qt);0>>7|Qt<<25)>>>0,Qt>>>=7;this.a.push(ct)},nr.prototype.writeSplitVarint64=nr.prototype.l,nr.prototype.A=function(ct,Qt){ft(ct==Math.floor(ct)),ft(Qt==Math.floor(Qt)),ft(0<=ct&&4294967296>ct),ft(0<=Qt&&4294967296>Qt),this.s(ct),this.s(Qt)},nr.prototype.writeSplitFixed64=nr.prototype.A,nr.prototype.j=function(ct){for(ft(ct==Math.floor(ct)),ft(0<=ct&&4294967296>ct);127>>=7;this.a.push(ct)},nr.prototype.writeUnsignedVarint32=nr.prototype.j,nr.prototype.M=function(ct){if(ft(ct==Math.floor(ct)),ft(-2147483648<=ct&&2147483648>ct),0<=ct)this.j(ct);else{for(var Qt=0;9>Qt;Qt++)this.a.push(127&ct|128),ct>>=7;this.a.push(1)}},nr.prototype.writeSignedVarint32=nr.prototype.M,nr.prototype.va=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&18446744073709552e3>ct),on(ct),this.l(Lt,tn)},nr.prototype.writeUnsignedVarint64=nr.prototype.va,nr.prototype.ua=function(ct){ft(ct==Math.floor(ct)),ft(-9223372036854776e3<=ct&&9223372036854776e3>ct),on(ct),this.l(Lt,tn)},nr.prototype.writeSignedVarint64=nr.prototype.ua,nr.prototype.wa=function(ct){ft(ct==Math.floor(ct)),ft(-2147483648<=ct&&2147483648>ct),this.j((ct<<1^ct>>31)>>>0)},nr.prototype.writeZigzagVarint32=nr.prototype.wa,nr.prototype.xa=function(ct){ft(ct==Math.floor(ct)),ft(-9223372036854776e3<=ct&&9223372036854776e3>ct),Gt(ct),this.l(Lt,tn)},nr.prototype.writeZigzagVarint64=nr.prototype.xa,nr.prototype.Ta=function(ct){this.W(pn(ct))},nr.prototype.writeZigzagVarint64String=nr.prototype.Ta,nr.prototype.W=function(ct){var Qt=this;Vn(ct),Un(Lt,tn,function(vt,Pt){Qt.l(vt>>>0,Pt>>>0)})},nr.prototype.writeZigzagVarintHash64=nr.prototype.W,nr.prototype.be=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&256>ct),this.a.push(ct>>>0&255)},nr.prototype.writeUint8=nr.prototype.be,nr.prototype.ae=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&65536>ct),this.a.push(ct>>>0&255),this.a.push(ct>>>8&255)},nr.prototype.writeUint16=nr.prototype.ae,nr.prototype.s=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&4294967296>ct),this.a.push(ct>>>0&255),this.a.push(ct>>>8&255),this.a.push(ct>>>16&255),this.a.push(ct>>>24&255)},nr.prototype.writeUint32=nr.prototype.s,nr.prototype.V=function(ct){ft(ct==Math.floor(ct)),ft(0<=ct&&18446744073709552e3>ct),cn(ct),this.s(Lt),this.s(tn)},nr.prototype.writeUint64=nr.prototype.V,nr.prototype.Qc=function(ct){ft(ct==Math.floor(ct)),ft(-128<=ct&&128>ct),this.a.push(ct>>>0&255)},nr.prototype.writeInt8=nr.prototype.Qc,nr.prototype.Pc=function(ct){ft(ct==Math.floor(ct)),ft(-32768<=ct&&32768>ct),this.a.push(ct>>>0&255),this.a.push(ct>>>8&255)},nr.prototype.writeInt16=nr.prototype.Pc,nr.prototype.S=function(ct){ft(ct==Math.floor(ct)),ft(-2147483648<=ct&&2147483648>ct),this.a.push(ct>>>0&255),this.a.push(ct>>>8&255),this.a.push(ct>>>16&255),this.a.push(ct>>>24&255)},nr.prototype.writeInt32=nr.prototype.S,nr.prototype.T=function(ct){ft(ct==Math.floor(ct)),ft(-9223372036854776e3<=ct&&9223372036854776e3>ct),on(ct),this.A(Lt,tn)},nr.prototype.writeInt64=nr.prototype.T,nr.prototype.ka=function(ct){ft(ct==Math.floor(ct)),ft(-9223372036854776e3<=+ct&&9223372036854776e3>+ct),Vn(pn(ct)),this.A(Lt,tn)},nr.prototype.writeInt64String=nr.prototype.ka,nr.prototype.L=function(ct){ft(ct===1/0||ct===-1/0||isNaN(ct)||-34028234663852886e22<=ct&&34028234663852886e22>=ct),Xt(ct),this.s(Lt)},nr.prototype.writeFloat=nr.prototype.L,nr.prototype.J=function(ct){ft(ct===1/0||ct===-1/0||isNaN(ct)||-17976931348623157e292<=ct&&17976931348623157e292>=ct),dn(ct),this.s(Lt),this.s(tn)},nr.prototype.writeDouble=nr.prototype.J,nr.prototype.I=function(ct){ft(typeof ct=="boolean"||typeof ct=="number"),this.a.push(ct?1:0)},nr.prototype.writeBool=nr.prototype.I,nr.prototype.R=function(ct){ft(ct==Math.floor(ct)),ft(-2147483648<=ct&&2147483648>ct),this.M(ct)},nr.prototype.writeEnum=nr.prototype.R,nr.prototype.ja=function(ct){this.a.push.apply(this.a,ct)},nr.prototype.writeBytes=nr.prototype.ja,nr.prototype.N=function(ct){Vn(ct),this.l(Lt,tn)},nr.prototype.writeVarintHash64=nr.prototype.N,nr.prototype.K=function(ct){Vn(ct),this.s(Lt),this.s(tn)},nr.prototype.writeFixedHash64=nr.prototype.K,nr.prototype.U=function(ct){var Qt=this.a.length;(function(Bn,jn,$n){for(var ur=[],Rr=2;RrPt)this.a.push(Pt);else if(2048>Pt)this.a.push(Pt>>6|192),this.a.push(63&Pt|128);else if(65536>Pt)if(55296<=Pt&&56319>=Pt&&vt+1=en&&(Pt=1024*(Pt-55296)+en-56320+65536,this.a.push(Pt>>18|240),this.a.push(Pt>>12&63|128),this.a.push(Pt>>6&63|128),this.a.push(63&Pt|128),vt++)}else this.a.push(Pt>>12|224),this.a.push(Pt>>6&63|128),this.a.push(63&Pt|128)}return this.a.length-Qt},nr.prototype.writeString=nr.prototype.U,pt("jspb.arith.UInt64",cr,void 0),cr.prototype.cmp=function(ct){return this.hi>>1|(1&this.hi)<<31)>>>0,this.hi>>>1>>>0)},cr.prototype.rightShift=cr.prototype.La,cr.prototype.Da=function(){return new cr(this.lo<<1>>>0,(this.hi<<1|this.lo>>>31)>>>0)},cr.prototype.leftShift=cr.prototype.Da,cr.prototype.cb=function(){return!!(2147483648&this.hi)},cr.prototype.msb=cr.prototype.cb,cr.prototype.Ob=function(){return!!(1&this.lo)},cr.prototype.lsb=cr.prototype.Ob,cr.prototype.Ua=function(){return this.lo==0&&this.hi==0},cr.prototype.zero=cr.prototype.Ua,cr.prototype.add=function(ct){return new cr((this.lo+ct.lo&4294967295)>>>0>>>0,((this.hi+ct.hi&4294967295)>>>0)+(4294967296<=this.lo+ct.lo?1:0)>>>0)},cr.prototype.add=cr.prototype.add,cr.prototype.sub=function(ct){return new cr((this.lo-ct.lo&4294967295)>>>0>>>0,((this.hi-ct.hi&4294967295)>>>0)-(0>this.lo-ct.lo?1:0)>>>0)},cr.prototype.sub=cr.prototype.sub,cr.mul32x32=mo,cr.prototype.eb=function(ct){var Qt=mo(this.lo,ct);return(ct=mo(this.hi,ct)).hi=ct.lo,ct.lo=0,Qt.add(ct)},cr.prototype.mul=cr.prototype.eb,cr.prototype.Xa=function(ct){if(ct==0)return[];var Qt=new cr(0,0),vt=new cr(this.lo,this.hi);ct=new cr(ct,0);for(var Pt=new cr(1,0);!ct.cb();)ct=ct.Da(),Pt=Pt.Da();for(;!Pt.Ua();)0>=ct.cmp(vt)&&(Qt=Qt.add(Pt),vt=vt.sub(ct)),ct=ct.La(),Pt=Pt.La();return[Qt,vt]},cr.prototype.div=cr.prototype.Xa,cr.prototype.toString=function(){for(var ct="",Qt=this;!Qt.Ua();){var vt=(Qt=Qt.Xa(10))[0];ct=Qt[1].lo+ct,Qt=vt}return ct==""&&(ct="0"),ct},cr.prototype.toString=cr.prototype.toString,cr.fromString=Qo,cr.prototype.clone=function(){return new cr(this.lo,this.hi)},cr.prototype.clone=cr.prototype.clone,pt("jspb.arith.Int64",Kr,void 0),Kr.prototype.add=function(ct){return new Kr((this.lo+ct.lo&4294967295)>>>0>>>0,((this.hi+ct.hi&4294967295)>>>0)+(4294967296<=this.lo+ct.lo?1:0)>>>0)},Kr.prototype.add=Kr.prototype.add,Kr.prototype.sub=function(ct){return new Kr((this.lo-ct.lo&4294967295)>>>0>>>0,((this.hi-ct.hi&4294967295)>>>0)-(0>this.lo-ct.lo?1:0)>>>0)},Kr.prototype.sub=Kr.prototype.sub,Kr.prototype.clone=function(){return new Kr(this.lo,this.hi)},Kr.prototype.clone=Kr.prototype.clone,Kr.prototype.toString=function(){var ct=(2147483648&this.hi)!=0,Qt=new cr(this.lo,this.hi);return ct&&(Qt=new cr(0,0).sub(Qt)),(ct?"-":"")+Qt.toString()},Kr.prototype.toString=Kr.prototype.toString,Kr.fromString=Dr,pt("jspb.BinaryWriter",gn,void 0),gn.prototype.pb=function(ct,Qt,vt){In(this,ct.subarray(Qt,vt))},gn.prototype.writeSerializedMessage=gn.prototype.pb,gn.prototype.Pb=function(ct,Qt,vt){ct!=null&&Qt!=null&&vt!=null&&this.pb(ct,Qt,vt)},gn.prototype.maybeWriteSerializedMessage=gn.prototype.Pb,gn.prototype.reset=function(){this.c=[],this.a.end(),this.b=0,this.h=[]},gn.prototype.reset=gn.prototype.reset,gn.prototype.ab=function(){ft(this.h.length==0);for(var ct=new Uint8Array(this.b+this.a.length()),Qt=this.c,vt=Qt.length,Pt=0,en=0;enQt),Tn(this,ct,Qt))},gn.prototype.writeInt32=gn.prototype.S,gn.prototype.ob=function(ct,Qt){Qt!=null&&(ft(-2147483648<=(Qt=parseInt(Qt,10))&&2147483648>Qt),Tn(this,ct,Qt))},gn.prototype.writeInt32String=gn.prototype.ob,gn.prototype.T=function(ct,Qt){Qt!=null&&(ft(-9223372036854776e3<=Qt&&9223372036854776e3>Qt),Qt!=null&&(zt(this,ct,0),this.a.ua(Qt)))},gn.prototype.writeInt64=gn.prototype.T,gn.prototype.ka=function(ct,Qt){Qt!=null&&(Qt=Dr(Qt),zt(this,ct,0),this.a.l(Qt.lo,Qt.hi))},gn.prototype.writeInt64String=gn.prototype.ka,gn.prototype.s=function(ct,Qt){Qt!=null&&(ft(0<=Qt&&4294967296>Qt),Qn(this,ct,Qt))},gn.prototype.writeUint32=gn.prototype.s,gn.prototype.ub=function(ct,Qt){Qt!=null&&(ft(0<=(Qt=parseInt(Qt,10))&&4294967296>Qt),Qn(this,ct,Qt))},gn.prototype.writeUint32String=gn.prototype.ub,gn.prototype.V=function(ct,Qt){Qt!=null&&(ft(0<=Qt&&18446744073709552e3>Qt),Qt!=null&&(zt(this,ct,0),this.a.va(Qt)))},gn.prototype.writeUint64=gn.prototype.V,gn.prototype.vb=function(ct,Qt){Qt!=null&&(Qt=Qo(Qt),zt(this,ct,0),this.a.l(Qt.lo,Qt.hi))},gn.prototype.writeUint64String=gn.prototype.vb,gn.prototype.rb=function(ct,Qt){Qt!=null&&(ft(-2147483648<=Qt&&2147483648>Qt),Qt!=null&&(zt(this,ct,0),this.a.wa(Qt)))},gn.prototype.writeSint32=gn.prototype.rb,gn.prototype.sb=function(ct,Qt){Qt!=null&&(ft(-9223372036854776e3<=Qt&&9223372036854776e3>Qt),Qt!=null&&(zt(this,ct,0),this.a.xa(Qt)))},gn.prototype.writeSint64=gn.prototype.sb,gn.prototype.$d=function(ct,Qt){Qt!=null&&Qt!=null&&(zt(this,ct,0),this.a.W(Qt))},gn.prototype.writeSintHash64=gn.prototype.$d,gn.prototype.Zd=function(ct,Qt){Qt!=null&&Qt!=null&&(zt(this,ct,0),this.a.Ta(Qt))},gn.prototype.writeSint64String=gn.prototype.Zd,gn.prototype.Pa=function(ct,Qt){Qt!=null&&(ft(0<=Qt&&4294967296>Qt),zt(this,ct,5),this.a.s(Qt))},gn.prototype.writeFixed32=gn.prototype.Pa,gn.prototype.Qa=function(ct,Qt){Qt!=null&&(ft(0<=Qt&&18446744073709552e3>Qt),zt(this,ct,1),this.a.V(Qt))},gn.prototype.writeFixed64=gn.prototype.Qa,gn.prototype.nb=function(ct,Qt){Qt!=null&&(Qt=Qo(Qt),zt(this,ct,1),this.a.A(Qt.lo,Qt.hi))},gn.prototype.writeFixed64String=gn.prototype.nb,gn.prototype.Ra=function(ct,Qt){Qt!=null&&(ft(-2147483648<=Qt&&2147483648>Qt),zt(this,ct,5),this.a.S(Qt))},gn.prototype.writeSfixed32=gn.prototype.Ra,gn.prototype.Sa=function(ct,Qt){Qt!=null&&(ft(-9223372036854776e3<=Qt&&9223372036854776e3>Qt),zt(this,ct,1),this.a.T(Qt))},gn.prototype.writeSfixed64=gn.prototype.Sa,gn.prototype.qb=function(ct,Qt){Qt!=null&&(Qt=Dr(Qt),zt(this,ct,1),this.a.A(Qt.lo,Qt.hi))},gn.prototype.writeSfixed64String=gn.prototype.qb,gn.prototype.L=function(ct,Qt){Qt!=null&&(zt(this,ct,5),this.a.L(Qt))},gn.prototype.writeFloat=gn.prototype.L,gn.prototype.J=function(ct,Qt){Qt!=null&&(zt(this,ct,1),this.a.J(Qt))},gn.prototype.writeDouble=gn.prototype.J,gn.prototype.I=function(ct,Qt){Qt!=null&&(ft(typeof Qt=="boolean"||typeof Qt=="number"),zt(this,ct,0),this.a.I(Qt))},gn.prototype.writeBool=gn.prototype.I,gn.prototype.R=function(ct,Qt){Qt!=null&&(ft(-2147483648<=Qt&&2147483648>Qt),zt(this,ct,0),this.a.M(Qt))},gn.prototype.writeEnum=gn.prototype.R,gn.prototype.U=function(ct,Qt){Qt!=null&&(ct=Zt(this,ct),this.a.U(Qt),xt(this,ct))},gn.prototype.writeString=gn.prototype.U,gn.prototype.ja=function(ct,Qt){Qt!=null&&(Qt=Gn(Qt),zt(this,ct,2),this.a.j(Qt.length),In(this,Qt))},gn.prototype.writeBytes=gn.prototype.ja,gn.prototype.Rc=function(ct,Qt,vt){Qt!=null&&(ct=Zt(this,ct),vt(Qt,this),xt(this,ct))},gn.prototype.writeMessage=gn.prototype.Rc,gn.prototype.Sc=function(ct,Qt,vt){Qt!=null&&(zt(this,1,3),zt(this,2,0),this.a.M(ct),ct=Zt(this,3),vt(Qt,this),xt(this,ct),zt(this,1,4))},gn.prototype.writeMessageSet=gn.prototype.Sc,gn.prototype.Oc=function(ct,Qt,vt){Qt!=null&&(zt(this,ct,3),vt(Qt,this),zt(this,ct,4))},gn.prototype.writeGroup=gn.prototype.Oc,gn.prototype.K=function(ct,Qt){Qt!=null&&(ft(Qt.length==8),zt(this,ct,1),this.a.K(Qt))},gn.prototype.writeFixedHash64=gn.prototype.K,gn.prototype.N=function(ct,Qt){Qt!=null&&(ft(Qt.length==8),zt(this,ct,0),this.a.N(Qt))},gn.prototype.writeVarintHash64=gn.prototype.N,gn.prototype.A=function(ct,Qt,vt){zt(this,ct,1),this.a.A(Qt,vt)},gn.prototype.writeSplitFixed64=gn.prototype.A,gn.prototype.l=function(ct,Qt,vt){zt(this,ct,0),this.a.l(Qt,vt)},gn.prototype.writeSplitVarint64=gn.prototype.l,gn.prototype.tb=function(ct,Qt,vt){zt(this,ct,0);var Pt=this.a;Un(Qt,vt,function(en,Bn){Pt.l(en>>>0,Bn>>>0)})},gn.prototype.writeSplitZigzagVarint64=gn.prototype.tb,gn.prototype.Ed=function(ct,Qt){if(Qt!=null)for(var vt=0;vt>>0,$n>>>0)});xt(this,ct)}},gn.prototype.writePackedSplitZigzagVarint64=gn.prototype.od,gn.prototype.dd=function(ct,Qt){if(Qt!=null&&Qt.length){ct=Zt(this,ct);for(var vt=0;vt{var rt=nt(7186),lt=rt,ut=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||ut!==void 0&&ut||typeof self<"u"&&self||function(){return this}.call(null)||Function("return this")();lt.exportSymbol("proto.google.protobuf.BoolValue",null,ut),lt.exportSymbol("proto.google.protobuf.BytesValue",null,ut),lt.exportSymbol("proto.google.protobuf.DoubleValue",null,ut),lt.exportSymbol("proto.google.protobuf.FloatValue",null,ut),lt.exportSymbol("proto.google.protobuf.Int32Value",null,ut),lt.exportSymbol("proto.google.protobuf.Int64Value",null,ut),lt.exportSymbol("proto.google.protobuf.StringValue",null,ut),lt.exportSymbol("proto.google.protobuf.UInt32Value",null,ut),lt.exportSymbol("proto.google.protobuf.UInt64Value",null,ut),proto.google.protobuf.DoubleValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.DoubleValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.DoubleValue.displayName="proto.google.protobuf.DoubleValue"),proto.google.protobuf.FloatValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.FloatValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.FloatValue.displayName="proto.google.protobuf.FloatValue"),proto.google.protobuf.Int64Value=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.Int64Value,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.Int64Value.displayName="proto.google.protobuf.Int64Value"),proto.google.protobuf.UInt64Value=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.UInt64Value,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.UInt64Value.displayName="proto.google.protobuf.UInt64Value"),proto.google.protobuf.Int32Value=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.Int32Value,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.Int32Value.displayName="proto.google.protobuf.Int32Value"),proto.google.protobuf.UInt32Value=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.UInt32Value,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.UInt32Value.displayName="proto.google.protobuf.UInt32Value"),proto.google.protobuf.BoolValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.BoolValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.BoolValue.displayName="proto.google.protobuf.BoolValue"),proto.google.protobuf.StringValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.StringValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.StringValue.displayName="proto.google.protobuf.StringValue"),proto.google.protobuf.BytesValue=function(Ut){rt.Message.initialize(this,Ut,0,-1,null,null)},lt.inherits(proto.google.protobuf.BytesValue,rt.Message),lt.DEBUG&&!COMPILED&&(proto.google.protobuf.BytesValue.displayName="proto.google.protobuf.BytesValue"),rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.DoubleValue.prototype.toObject=function(Ut){return proto.google.protobuf.DoubleValue.toObject(Ut,this)},proto.google.protobuf.DoubleValue.toObject=function(Ut,ot){var st={value:rt.Message.getFloatingPointFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.DoubleValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.DoubleValue;return proto.google.protobuf.DoubleValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.DoubleValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readDouble();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.DoubleValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.DoubleValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.DoubleValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeDouble(1,st)},proto.google.protobuf.DoubleValue.prototype.getValue=function(){return rt.Message.getFloatingPointFieldWithDefault(this,1,0)},proto.google.protobuf.DoubleValue.prototype.setValue=function(Ut){return rt.Message.setProto3FloatField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.FloatValue.prototype.toObject=function(Ut){return proto.google.protobuf.FloatValue.toObject(Ut,this)},proto.google.protobuf.FloatValue.toObject=function(Ut,ot){var st={value:rt.Message.getFloatingPointFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.FloatValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.FloatValue;return proto.google.protobuf.FloatValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.FloatValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readFloat();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.FloatValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.FloatValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.FloatValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeFloat(1,st)},proto.google.protobuf.FloatValue.prototype.getValue=function(){return rt.Message.getFloatingPointFieldWithDefault(this,1,0)},proto.google.protobuf.FloatValue.prototype.setValue=function(Ut){return rt.Message.setProto3FloatField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.Int64Value.prototype.toObject=function(Ut){return proto.google.protobuf.Int64Value.toObject(Ut,this)},proto.google.protobuf.Int64Value.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.Int64Value.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.Int64Value;return proto.google.protobuf.Int64Value.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.Int64Value.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readInt64();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.Int64Value.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.Int64Value.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.Int64Value.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeInt64(1,st)},proto.google.protobuf.Int64Value.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.Int64Value.prototype.setValue=function(Ut){return rt.Message.setProto3IntField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.UInt64Value.prototype.toObject=function(Ut){return proto.google.protobuf.UInt64Value.toObject(Ut,this)},proto.google.protobuf.UInt64Value.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.UInt64Value.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.UInt64Value;return proto.google.protobuf.UInt64Value.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.UInt64Value.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readUint64();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.UInt64Value.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.UInt64Value.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.UInt64Value.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeUint64(1,st)},proto.google.protobuf.UInt64Value.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.UInt64Value.prototype.setValue=function(Ut){return rt.Message.setProto3IntField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.Int32Value.prototype.toObject=function(Ut){return proto.google.protobuf.Int32Value.toObject(Ut,this)},proto.google.protobuf.Int32Value.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.Int32Value.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.Int32Value;return proto.google.protobuf.Int32Value.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.Int32Value.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readInt32();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.Int32Value.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.Int32Value.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.Int32Value.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeInt32(1,st)},proto.google.protobuf.Int32Value.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.Int32Value.prototype.setValue=function(Ut){return rt.Message.setProto3IntField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.UInt32Value.prototype.toObject=function(Ut){return proto.google.protobuf.UInt32Value.toObject(Ut,this)},proto.google.protobuf.UInt32Value.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,0)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.UInt32Value.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.UInt32Value;return proto.google.protobuf.UInt32Value.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.UInt32Value.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readUint32();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.UInt32Value.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.UInt32Value.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.UInt32Value.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())!==0&&ot.writeUint32(1,st)},proto.google.protobuf.UInt32Value.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,0)},proto.google.protobuf.UInt32Value.prototype.setValue=function(Ut){return rt.Message.setProto3IntField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.BoolValue.prototype.toObject=function(Ut){return proto.google.protobuf.BoolValue.toObject(Ut,this)},proto.google.protobuf.BoolValue.toObject=function(Ut,ot){var st={value:rt.Message.getBooleanFieldWithDefault(ot,1,!1)};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.BoolValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.BoolValue;return proto.google.protobuf.BoolValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.BoolValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readBool();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.BoolValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.BoolValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.BoolValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue())&&ot.writeBool(1,st)},proto.google.protobuf.BoolValue.prototype.getValue=function(){return rt.Message.getBooleanFieldWithDefault(this,1,!1)},proto.google.protobuf.BoolValue.prototype.setValue=function(Ut){return rt.Message.setProto3BooleanField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.StringValue.prototype.toObject=function(Ut){return proto.google.protobuf.StringValue.toObject(Ut,this)},proto.google.protobuf.StringValue.toObject=function(Ut,ot){var st={value:rt.Message.getFieldWithDefault(ot,1,"")};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.StringValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.StringValue;return proto.google.protobuf.StringValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.StringValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readString();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.StringValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.StringValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.StringValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue()).length>0&&ot.writeString(1,st)},proto.google.protobuf.StringValue.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.StringValue.prototype.setValue=function(Ut){return rt.Message.setProto3StringField(this,1,Ut)},rt.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.BytesValue.prototype.toObject=function(Ut){return proto.google.protobuf.BytesValue.toObject(Ut,this)},proto.google.protobuf.BytesValue.toObject=function(Ut,ot){var st={value:ot.getValue_asB64()};return Ut&&(st.$jspbMessageInstance=ot),st}),proto.google.protobuf.BytesValue.deserializeBinary=function(Ut){var ot=new rt.BinaryReader(Ut),st=new proto.google.protobuf.BytesValue;return proto.google.protobuf.BytesValue.deserializeBinaryFromReader(st,ot)},proto.google.protobuf.BytesValue.deserializeBinaryFromReader=function(Ut,ot){for(;ot.nextField()&&!ot.isEndGroup();)switch(ot.getFieldNumber()){case 1:var st=ot.readBytes();Ut.setValue(st);break;default:ot.skipField()}return Ut},proto.google.protobuf.BytesValue.prototype.serializeBinary=function(){var Ut=new rt.BinaryWriter;return proto.google.protobuf.BytesValue.serializeBinaryToWriter(this,Ut),Ut.getResultBuffer()},proto.google.protobuf.BytesValue.serializeBinaryToWriter=function(Ut,ot){var st;(st=Ut.getValue_asU8()).length>0&&ot.writeBytes(1,st)},proto.google.protobuf.BytesValue.prototype.getValue=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.BytesValue.prototype.getValue_asB64=function(){return rt.Message.bytesAsB64(this.getValue())},proto.google.protobuf.BytesValue.prototype.getValue_asU8=function(){return rt.Message.bytesAsU8(this.getValue())},proto.google.protobuf.BytesValue.prototype.setValue=function(Ut){return rt.Message.setProto3BytesField(this,1,Ut)},lt.object.extend(tt,proto.google.protobuf)},9336:(et,tt,nt)=>{var rt=nt(528)("%Object.getOwnPropertyDescriptor%",!0);if(rt)try{rt([],"length")}catch{rt=null}et.exports=rt},5949:function(et,tt,nt){var rt;function lt(Dt){var rn=0;return function(){return rn(Sn=Sn||0)&&(Sn=Math.max(Sn+An,0));Snrn?1:0}e:{var Yn=yt.navigator;if(Yn){var _t=Yn.userAgent;if(_t){Un=_t;break e}}Un=""}var Ot="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function jt(Dt){var rn=1;Dt=Dt.split(":");for(var Sn=[];0parseFloat(Rn)){En=String(zr);break e}}En=Rn}var ho={};function Ro(){return function(Dt){var rn=ho;return Object.prototype.hasOwnProperty.call(rn,9)?rn[9]:rn[9]=Dt(9)}(function(){for(var Dt=0,rn=_n(String(En)).split("."),Sn=_n("9").split("."),kn=Math.max(rn.length,Sn.length),An=0;Dt==0&&An>>0);function nr(Dt){return typeof Dt=="function"?Dt:(Dt[eo]||(Dt[eo]=function(rn){return Dt.handleEvent(rn)}),Dt[eo])}function cr(){rr.call(this),this.f=new bo(this),this.U=this}function mo(Dt,rn){Dt=Dt.U;var Sn=rn.type||rn;if(typeof rn=="string")rn=new oo(rn,Dt);else if(rn instanceof oo)rn.target=rn.target||Dt;else{var kn=rn;(function(An,Ln){for(var Dn,zn,Hn=1;Hn=(Dt?en(jn($n(),Dt.getName())):zt).value),kn&&(rn=rn||zt,kn=jn($n(),Dt.getName()),typeof Sn=="function"&&(Sn=Sn()),In||(In=new Qt),function(An,Ln){for(;An;)An.f.forEach(function(Dn){Dn(Ln)}),An=An.b}(kn,Dt=new vt(rn,Sn,Dt=Dt.getName())))}function Rr(Dt,rn){Dt&&ur(Dt,ct,rn)}function Sr(){}function Yr(Dt){var rn;return(rn=Dt.a)||(rn={},Br(Dt)&&(rn[0]=!0,rn[1]=!0),rn=Dt.a=rn),rn}function Mr(){}function hr(Dt){return(Dt=Br(Dt))?new ActiveXObject(Dt):new XMLHttpRequest}function Br(Dt){if(!Dt.b&&typeof XMLHttpRequest>"u"&&typeof ActiveXObject<"u"){for(var rn=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],Sn=0;Sn2*this.size&&is(this),!0)},rt.get=function(Dt,rn){return Us(this.o,Dt)?this.o[Dt]:rn},rt.set=function(Dt,rn){Us(this.o,Dt)||(this.size+=1,this.j.push(Dt),this.B++),this.o[Dt]=rn},rt.addAll=function(Dt){if(Dt instanceof Rs)for(var rn=Dt.G(),Sn=0;Sn=kn.j.length)throw Gr;var Ln=kn.j[rn++];return Dt?Ln:kn.o[Ln]},An.next=An.a.bind(An),An};var Ol=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^\\/?#]*)@)?([^\\/?#]*?)(?::([0-9]+))?(?=[\\/?#]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/;function Os(Dt){cr.call(this),this.headers=new Rs,this.C=Dt||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=Fl,this.I=this.M=!1}bt(Os,cr);var Fl="";Os.prototype.b=jn($n(),"goog.net.XhrIo",void 0).g;var Al=/^https?$/i,Il=["POST","PUT"];function Ll(Dt,rn,Sn){if(Dt.a)throw Error("[goog.net.XhrIo] Object is active with another request="+Dt.v+"; newUri="+rn);Dt.v=rn,Dt.l="",Dt.g=0,Dt.P="POST",Dt.L=!1,Dt.c=!0,Dt.a=Dt.C?hr(Dt.C):hr(xt),Dt.J=Dt.C?Yr(Dt.C):Yr(xt),Dt.a.onreadystatechange=kt(Dt.R,Dt);try{Rr(Dt.b,$a(Dt,"Opening Xhr")),Dt.N=!0,Dt.a.open("POST",String(rn),!0),Dt.N=!1}catch(Ln){return Rr(Dt.b,$a(Dt,"Error opening Xhr: "+Ln.message)),void Pl(Dt,Ln)}rn=Sn||"";var kn=(Sn=Dt.headers.clone()).G().find(function(Ln){return Ln.toLowerCase()=="content-type"}),An=yt.FormData&&rn instanceof yt.FormData;!(0<=Jn(Il,"POST"))||kn||An||Sn.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8"),Sn.forEach(function(Ln,Dn){this.a.setRequestHeader(Dn,Ln)},Dt),Dt.m&&(Dt.a.responseType=Dt.m),"withCredentials"in Dt.a&&Dt.a.withCredentials!==Dt.M&&(Dt.a.withCredentials=Dt.M);try{Gl(Dt),0>4),Tr!=64&&(Dn(sr<<4&240|Tr>>2),kr!=64&&Dn(Tr<<6&192|kr))}}(Dt,function(Ln){kn[An++]=Ln}),kn.subarray(0,An)}function Hl(){if(!cs){cs={};for(var Dt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),rn=["+/=","+/","-_=","-_.","-_"],Sn=0;5>Sn;Sn++){var kn=Dt.concat(rn[Sn].split(""));Xl[Sn]=kn;for(var An=0;An(zn=An.indexOf("#"))&&(zn=An.length),0>(Dn=An.indexOf("?"))||Dn>zn?(Dn=zn,Hn=""):Hn=An.substring(Dn+1,zn),zn=(An=[An.substr(0,Dn),Hn,An.substr(zn)])[1],An[1]=sr?zn?zn+"&"+sr:sr:zn,An=An[0]+(An[1]?"?"+An[1]:"")+An[2])):An.a("$httpHeaders",zn))}for(kn=(rn=(0,kn.a)(rn.getRequestMessage())).length,sr=[0,0,0,0],zn=new Uint8Array(5+kn),Dn=3;0<=Dn;Dn--)sr[Dn]=kn%256,kn>>>=8;if(zn.set(new Uint8Array(sr),1),zn.set(rn,5),rn=zn,Dt.a=="text"){var Tr;for(Dt=rn,Tr===void 0&&(Tr=0),Hl(),Tr=Xl[Tr],rn=Array(Math.floor(Dt.length/3)),kn=Tr[64]||"",sr=zn=0;zn>2],or=Tr[(3&or)<<4|kr>>4],kr=Tr[(15&kr)<<2|Hn>>6],Hn=Tr[63&Hn],rn[sr++]=Dn+or+kr+Hn}switch(Dn=0,Hn=kn,Dt.length-zn){case 2:Hn=Tr[(15&(Dn=Dt[zn+1]))<<2]||kn;case 1:Dt=Dt[zn],rn[sr]=Tr[Dt>>2]+Tr[(3&Dt)<<4|Dn>>4]+Hn+kn}rn=rn.join("")}else Dt.a=="binary"&&(Sn.m="arraybuffer");return Ll(Sn,An,rn),Ln}function Kl(Dt,rn,Sn){var kn=!1,An=null,Ln=!1;Dt.on("data",function(Dn){kn=!0,An=Dn}),Dt.on("error",function(Dn){Dn.code==0||Ln||(Ln=!0,rn(Dn,null))}),Dt.on("status",function(Dn){Dn.code==0||Ln?Sn&&rn(null,null,Dn):(Ln=!0,rn({code:Dn.code,message:Dn.details,metadata:Dn.metadata},null))}),Sn&&Dt.on("metadata",function(Dn){rn(null,null,null,Dn)}),Dt.on("end",function(){Ln||(kn?Sn?rn(null,An,null,null,!0):rn(null,An):rn({code:2,message:"Incomplete response"})),Sn&&rn(null,null)})}function Bl(Dt,rn){var Sn=Dt;return rn.forEach(function(kn){var An=Sn;Sn=function(Ln){return kn.intercept(Ln,An)}}),Sn}Xo.prototype.on=function(Dt,rn){return Dt=="data"?this.b.push(rn):Dt=="status"?this.h.push(rn):Dt=="metadata"?this.g.push(rn):Dt=="end"?this.c.push(rn):Dt=="error"&&this.f.push(rn),this},Xo.prototype.removeListener=function(Dt,rn){return Dt=="data"?Ws(this.b,rn):Dt=="status"?Ws(this.h,rn):Dt=="metadata"?Ws(this.g,rn):Dt=="end"?Ws(this.c,rn):Dt=="error"&&Ws(this.f,rn),this},Xo.prototype.cancel=function(){this.l=!0,this.a.abort()},Xo.prototype.cancel=Xo.prototype.cancel,Xo.prototype.removeListener=Xo.prototype.removeListener,Xo.prototype.on=Xo.prototype.on,Jr.prototype.X=function(Dt,rn,Sn,kn,An){var Ln=this,Dn=Dt.substr(0,Dt.length-kn.name.length);return Kl(Dt=Bl(function(zn){return Ql(Ln,zn,Dn)},this.b).call(this,Mt(kn,rn,Sn)),An,!1),new sn(Dt)},Jr.prototype.S=function(Dt,rn,Sn,kn){var An=this,Ln=Dt.substr(0,Dt.length-kn.name.length);return Bl(function(Dn){return new Promise(function(zn,Hn){var or,sr,Tr;Kl(Ql(An,Dn,Ln),function(kr,jr,Lr,pr,co){kr?Hn(kr):co?Tr=jr:Lr?sr=Lr:pr?or=pr:(kr=Dn.getMethodDescriptor(),zn(new At(Tr,kr,jr=(jr=or)===void 0?{}:jr,sr===void 0?null:sr)))},!0)})},this.h).call(this,Mt(kn,rn,Sn)).then(function(Dn){return Dn.getResponseMessage()})},Jr.prototype.unaryCall=function(Dt,rn,Sn,kn){return this.S(Dt,rn,Sn,kn)},Jr.prototype.Y=function(Dt,rn,Sn,kn){var An=this,Ln=Dt.substr(0,Dt.length-kn.name.length);return Bl(function(Dn){return Ql(An,Dn,Ln)},this.b).call(this,Mt(kn,rn,Sn))},Jr.prototype.serverStreaming=Jr.prototype.Y,Jr.prototype.unaryCall=Jr.prototype.unaryCall,Jr.prototype.thenableCall=Jr.prototype.S,Jr.prototype.rpcCall=Jr.prototype.X,et.exports.CallOptions=Jt,et.exports.MethodDescriptor=Ct,et.exports.GrpcWebClientBase=Jr,et.exports.RpcError=nn,et.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},et.exports.MethodType={UNARY:"unary",SERVER_STREAMING:"server_streaming",BIDI_STREAMING:"bidi_streaming"},Kr=typeof globalThis<"u"&&globalThis||self},7239:(et,tt,nt)=>{var rt=nt(4940),lt=function(){return!!rt};lt.hasArrayLengthDefineBug=function(){if(!rt)return null;try{return rt([],"length",{value:1}).length!==1}catch{return!0}},et.exports=lt},6869:et=>{var tt={__proto__:null,foo:{}},nt=Object;et.exports=function(){return{__proto__:tt}.foo===tt.foo&&!(tt instanceof nt)}},3558:(et,tt,nt)=>{var rt=typeof Symbol<"u"&&Symbol,lt=nt(2908);et.exports=function(){return typeof rt=="function"&&typeof Symbol=="function"&&typeof rt("foo")=="symbol"&&typeof Symbol("bar")=="symbol"&<()}},2908:et=>{et.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var tt={},nt=Symbol("test"),rt=Object(nt);if(typeof nt=="string"||Object.prototype.toString.call(nt)!=="[object Symbol]"||Object.prototype.toString.call(rt)!=="[object Symbol]")return!1;for(nt in tt[nt]=42,tt)return!1;if(typeof Object.keys=="function"&&Object.keys(tt).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(tt).length!==0)return!1;var lt=Object.getOwnPropertySymbols(tt);if(lt.length!==1||lt[0]!==nt||!Object.prototype.propertyIsEnumerable.call(tt,nt))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var ut=Object.getOwnPropertyDescriptor(tt,nt);if(ut.value!==42||ut.enumerable!==!0)return!1}return!0}},1913:(et,tt,nt)=>{var rt=nt(2908);et.exports=function(){return rt()&&!!Symbol.toStringTag}},8554:(et,tt,nt)=>{var rt=Function.prototype.call,lt=Object.prototype.hasOwnProperty,ut=nt(9138);et.exports=ut.call(rt,lt)},7500:(et,tt,nt)=>{var rt=nt(4865),lt=nt(5442),ut=et.exports;for(var Ut in rt)rt.hasOwnProperty(Ut)&&(ut[Ut]=rt[Ut]);function ot(st){if(typeof st=="string"&&(st=lt.parse(st)),st.protocol||(st.protocol="https:"),st.protocol!=="https:")throw new Error('Protocol "'+st.protocol+'" not supported. Expected "https:"');return st}ut.request=function(st,dt){return st=ot(st),rt.request.call(this,st,dt)},ut.get=function(st,dt){return st=ot(st),rt.get.call(this,st,dt)}},9318:(et,tt)=>{tt.read=function(nt,rt,lt,ut,Ut){var ot,st,dt=8*Ut-ut-1,St=(1<>1,Rt=-7,Bt=lt?Ut-1:0,ht=lt?-1:1,mt=nt[rt+Bt];for(Bt+=ht,ot=mt&(1<<-Rt)-1,mt>>=-Rt,Rt+=dt;Rt>0;ot=256*ot+nt[rt+Bt],Bt+=ht,Rt-=8);for(st=ot&(1<<-Rt)-1,ot>>=-Rt,Rt+=ut;Rt>0;st=256*st+nt[rt+Bt],Bt+=ht,Rt-=8);if(ot===0)ot=1-pt;else{if(ot===St)return st?NaN:1/0*(mt?-1:1);st+=Math.pow(2,ut),ot-=pt}return(mt?-1:1)*st*Math.pow(2,ot-ut)},tt.write=function(nt,rt,lt,ut,Ut,ot){var st,dt,St,pt=8*ot-Ut-1,Rt=(1<>1,ht=Ut===23?Math.pow(2,-24)-Math.pow(2,-77):0,mt=ut?0:ot-1,gt=ut?1:-1,Vt=rt<0||rt===0&&1/rt<0?1:0;for(rt=Math.abs(rt),isNaN(rt)||rt===1/0?(dt=isNaN(rt)?1:0,st=Rt):(st=Math.floor(Math.log(rt)/Math.LN2),rt*(St=Math.pow(2,-st))<1&&(st--,St*=2),(rt+=st+Bt>=1?ht/St:ht*Math.pow(2,1-Bt))*St>=2&&(st++,St/=2),st+Bt>=Rt?(dt=0,st=Rt):st+Bt>=1?(dt=(rt*St-1)*Math.pow(2,Ut),st+=Bt):(dt=rt*Math.pow(2,Bt-1)*Math.pow(2,Ut),st=0));Ut>=8;nt[lt+mt]=255&dt,mt+=gt,dt/=256,Ut-=8);for(st=st<0;nt[lt+mt]=255&st,mt+=gt,st/=256,pt-=8);nt[lt+mt-gt]|=128*Vt}},5615:et=>{typeof Object.create=="function"?et.exports=function(tt,nt){nt&&(tt.super_=nt,tt.prototype=Object.create(nt.prototype,{constructor:{value:tt,enumerable:!1,writable:!0,configurable:!0}}))}:et.exports=function(tt,nt){if(nt){tt.super_=nt;var rt=function(){};rt.prototype=nt.prototype,tt.prototype=new rt,tt.prototype.constructor=tt}}},5387:(et,tt,nt)=>{var rt=nt(1913)(),lt=nt(9818)("Object.prototype.toString"),ut=function(st){return!(rt&&st&&typeof st=="object"&&Symbol.toStringTag in st)&<(st)==="[object Arguments]"},Ut=function(st){return!!ut(st)||st!==null&&typeof st=="object"&&typeof st.length=="number"&&st.length>=0&<(st)!=="[object Array]"&<(st.callee)==="[object Function]"},ot=function(){return ut(arguments)}();ut.isLegacyArguments=Ut,et.exports=ot?ut:Ut},9617:et=>{var tt,nt,rt=Function.prototype.toString,lt=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply;if(typeof lt=="function"&&typeof Object.defineProperty=="function")try{tt=Object.defineProperty({},"length",{get:function(){throw nt}}),nt={},lt(function(){throw 42},null,tt)}catch(Bt){Bt!==nt&&(lt=null)}else lt=null;var ut=/^\s*class\b/,Ut=function(Bt){try{var ht=rt.call(Bt);return ut.test(ht)}catch{return!1}},ot=function(Bt){try{return!Ut(Bt)&&(rt.call(Bt),!0)}catch{return!1}},st=Object.prototype.toString,dt=typeof Symbol=="function"&&!!Symbol.toStringTag,St=!(0 in[,]),pt=function(){return!1};if(typeof document=="object"){var Rt=document.all;st.call(Rt)===st.call(document.all)&&(pt=function(Bt){if((St||!Bt)&&(Bt===void 0||typeof Bt=="object"))try{var ht=st.call(Bt);return(ht==="[object HTMLAllCollection]"||ht==="[object HTML document.all class]"||ht==="[object HTMLCollection]"||ht==="[object Object]")&&Bt("")==null}catch{}return!1})}et.exports=lt?function(Bt){if(pt(Bt))return!0;if(!Bt||typeof Bt!="function"&&typeof Bt!="object")return!1;try{lt(Bt,null,tt)}catch(ht){if(ht!==nt)return!1}return!Ut(Bt)&&ot(Bt)}:function(Bt){if(pt(Bt))return!0;if(!Bt||typeof Bt!="function"&&typeof Bt!="object")return!1;if(dt)return ot(Bt);if(Ut(Bt))return!1;var ht=st.call(Bt);return!(ht!=="[object Function]"&&ht!=="[object GeneratorFunction]"&&!/^\[object HTML/.test(ht))&&ot(Bt)}},2625:(et,tt,nt)=>{var rt,lt=Object.prototype.toString,ut=Function.prototype.toString,Ut=/^\s*(?:function)?\*/,ot=nt(1913)(),st=Object.getPrototypeOf;et.exports=function(dt){if(typeof dt!="function")return!1;if(Ut.test(ut.call(dt)))return!0;if(!ot)return lt.call(dt)==="[object GeneratorFunction]";if(!st)return!1;if(rt===void 0){var St=function(){if(!ot)return!1;try{return Function("return function*() {}")()}catch{}}();rt=!!St&&st(St)}return st(dt)===rt}},8006:et=>{et.exports=function(tt){return tt!=tt}},7838:(et,tt,nt)=>{var rt=nt(8498),lt=nt(1857),ut=nt(8006),Ut=nt(1591),ot=nt(1641),st=rt(Ut(),Number);lt(st,{getPolyfill:Ut,implementation:ut,shim:ot}),et.exports=st},1591:(et,tt,nt)=>{var rt=nt(8006);et.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:rt}},1641:(et,tt,nt)=>{var rt=nt(1857),lt=nt(1591);et.exports=function(){var ut=lt();return rt(Number,{isNaN:ut},{isNaN:function(){return Number.isNaN!==ut}}),ut}},6605:et=>{const tt=nt=>nt!==null&&typeof nt=="object"&&typeof nt.pipe=="function";tt.writable=nt=>tt(nt)&&nt.writable!==!1&&typeof nt._write=="function"&&typeof nt._writableState=="object",tt.readable=nt=>tt(nt)&&nt.readable!==!1&&typeof nt._read=="function"&&typeof nt._readableState=="object",tt.duplex=nt=>tt.writable(nt)&&tt.readable(nt),tt.transform=nt=>tt.duplex(nt)&&typeof nt._transform=="function",et.exports=tt},5943:(et,tt,nt)=>{var rt=nt(2730);et.exports=function(lt){return!!rt(lt)}},8311:(et,tt,nt)=>{nt(3737),et.exports={encode:rt=>new TextEncoder().encode(rt),decode:rt=>new TextDecoder().decode(rt)}},8278:(et,tt,nt)=>{var rt=nt(1616);et.exports=rt(function(lt){return lt.message=" ".concat(lt.message),lt})},8911:(et,tt,nt)=>{var rt=tt.format=nt(1616);tt.levels=nt(3084),Object.defineProperty(rt,"align",{value:nt(8278)}),Object.defineProperty(rt,"cli",{value:nt(8877)}),Object.defineProperty(rt,"colorize",{value:nt(452)}),Object.defineProperty(rt,"combine",{value:nt(4450)}),Object.defineProperty(rt,"errors",{value:nt(2244)}),Object.defineProperty(rt,"json",{value:nt(9181)}),Object.defineProperty(rt,"label",{value:nt(4673)}),Object.defineProperty(rt,"logstash",{value:nt(372)}),Object.defineProperty(rt,"metadata",{value:nt(5350)}),Object.defineProperty(rt,"ms",{value:nt(4659)}),Object.defineProperty(rt,"padLevels",{value:nt(8071)}),Object.defineProperty(rt,"prettyPrint",{value:nt(9121)}),Object.defineProperty(rt,"printf",{value:nt(7016)}),Object.defineProperty(rt,"simple",{value:nt(205)}),Object.defineProperty(rt,"splat",{value:nt(2695)}),Object.defineProperty(rt,"timestamp",{value:nt(8215)}),Object.defineProperty(rt,"uncolorize",{value:nt(1083)})},8877:(et,tt,nt)=>{function rt(Bt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ht){return typeof ht}:function(ht){return ht&&typeof Symbol=="function"&&ht.constructor===Symbol&&ht!==Symbol.prototype?"symbol":typeof ht})(Bt)}function lt(Bt,ht){if(!(Bt instanceof ht))throw new TypeError("Cannot call a class as a function")}function ut(Bt,ht){for(var mt=0;mt0&&arguments[0]!==void 0?arguments[0]:{};lt(this,Bt),gt.levels||(gt.levels=St.cli.levels),this.colorizer=new ot(gt),this.padder=new st(gt),this.options=gt}var ht,mt;return ht=Bt,(mt=[{key:"transform",value:function(gt,Vt){return this.colorizer.transform(this.padder.transform(gt,Vt),Vt),gt[pt]="".concat(gt.level,":").concat(gt.message),gt}}])&&ut(ht.prototype,mt),Object.defineProperty(ht,"prototype",{writable:!1}),Bt}();et.exports=function(Bt){return new Rt(Bt)},et.exports.Format=Rt},452:(et,tt,nt)=>{function rt(Bt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ht){return typeof ht}:function(ht){return ht&&typeof Symbol=="function"&&ht.constructor===Symbol&&ht!==Symbol.prototype?"symbol":typeof ht})(Bt)}function lt(Bt,ht){if(!(Bt instanceof ht))throw new TypeError("Cannot call a class as a function")}function ut(Bt,ht){for(var mt=0;mt0&&arguments[0]!==void 0?arguments[0]:{};lt(this,Bt),Vt.colors&&this.addColors(Vt.colors),this.options=Vt}var ht,mt,gt;return ht=Bt,gt=[{key:"addColors",value:function(Vt){var Tt=Object.keys(Vt).reduce(function(ft,Wt){return ft[Wt]=pt.test(Vt[Wt])?Vt[Wt].split(pt):Vt[Wt],ft},{});return Bt.allColors=Object.assign({},Bt.allColors||{},Tt),Bt.allColors}}],(mt=[{key:"addColors",value:function(Vt){return Bt.addColors(Vt)}},{key:"colorize",value:function(Vt,Tt,ft){if(ft===void 0&&(ft=Tt),!Array.isArray(Bt.allColors[Vt]))return ot[Bt.allColors[Vt]](ft);for(var Wt=0,yt=Bt.allColors[Vt].length;Wt{var rt=nt(1616);function lt(Ut){if(Ut.every(ut))return function(ot){for(var st=ot,dt=0;dt{function rt(dt){return(rt=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})(dt)}function lt(dt,St,pt){var Rt;return Rt=function(Bt,ht){if(rt(Bt)!="object"||!Bt)return Bt;var mt=Bt[Symbol.toPrimitive];if(mt!==void 0){var gt=mt.call(Bt,ht||"default");if(rt(gt)!="object")return gt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(ht==="string"?String:Number)(Bt)}(St,"string"),(St=rt(Rt)=="symbol"?Rt:String(Rt))in dt?Object.defineProperty(dt,St,{value:pt,enumerable:!0,configurable:!0,writable:!0}):dt[St]=pt,dt}var ut=nt(1616),Ut=nt(4966),ot=Ut.LEVEL,st=Ut.MESSAGE;et.exports=ut(function(dt,St){var pt=St.stack,Rt=St.cause;if(dt instanceof Error){var Bt=Object.assign({},dt,lt(lt(lt({level:dt.level},ot,dt[ot]||dt.level),"message",dt.message),st,dt[st]||dt.message));return pt&&(Bt.stack=dt.stack),Rt&&(Bt.cause=dt.cause),Bt}if(!(dt.message instanceof Error))return dt;var ht=dt.message;return Object.assign(dt,ht),dt.message=ht.message,dt[st]=ht.message,pt&&(dt.stack=ht.stack),Rt&&(dt.cause=ht.cause),dt})},1616:et=>{function tt(St){return(tt=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})(St)}function nt(St,pt){if(pt&&(tt(pt)==="object"||typeof pt=="function"))return pt;if(pt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return rt(St)}function rt(St){if(St===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return St}function lt(St){var pt=typeof Map=="function"?new Map:void 0;return(lt=function(Rt){if(Rt===null||!function(ht){try{return Function.toString.call(ht).indexOf("[native code]")!==-1}catch{return typeof ht=="function"}}(Rt))return Rt;if(typeof Rt!="function")throw new TypeError("Super expression must either be null or a function");if(pt!==void 0){if(pt.has(Rt))return pt.get(Rt);pt.set(Rt,Bt)}function Bt(){return ut(Rt,arguments,st(this).constructor)}return Bt.prototype=Object.create(Rt.prototype,{constructor:{value:Bt,enumerable:!1,writable:!0,configurable:!0}}),ot(Bt,Rt)})(St)}function ut(St,pt,Rt){return(ut=Ut()?Reflect.construct.bind():function(Bt,ht,mt){var gt=[null];gt.push.apply(gt,ht);var Vt=new(Function.bind.apply(Bt,gt));return mt&&ot(Vt,mt.prototype),Vt}).apply(null,arguments)}function Ut(){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 ot(St,pt){return(ot=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Rt,Bt){return Rt.__proto__=Bt,Rt})(St,pt)}function st(St){return(st=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(pt){return pt.__proto__||Object.getPrototypeOf(pt)})(St)}var dt=function(St){(function(gt,Vt){if(typeof Vt!="function"&&Vt!==null)throw new TypeError("Super expression must either be null or a function");gt.prototype=Object.create(Vt&&Vt.prototype,{constructor:{value:gt,writable:!0,configurable:!0}}),Object.defineProperty(gt,"prototype",{writable:!1}),Vt&&ot(gt,Vt)})(mt,St);var pt,Rt,Bt,ht=(pt=mt,Rt=Ut(),function(){var gt,Vt=st(pt);if(Rt){var Tt=st(this).constructor;gt=Reflect.construct(Vt,arguments,Tt)}else gt=Vt.apply(this,arguments);return nt(this,gt)});function mt(gt){var Vt;return function(Tt,ft){if(!(Tt instanceof ft))throw new TypeError("Cannot call a class as a function")}(this,mt),Vt=ht.call(this,`Format functions must be synchronous taking a two arguments: (info, opts) -Found: `.concat(gt.toString().split(` + */function styled$2(et,tt){return emStyled(et,tt)}const internal_processStyles=(et,tt)=>{Array.isArray(et.__emotion_styles)&&(et.__emotion_styles=tt(et.__emotion_styles))};function merge$2(et,tt){return tt?deepmerge(et,tt,{clone:!1}):et}const values={xs:0,sm:600,md:900,lg:1200,xl:1536},defaultBreakpoints={keys:["xs","sm","md","lg","xl"],up:et=>`@media (min-width:${values[et]}px)`};function handleBreakpoints(et,tt,nt){const it=et.theme||{};if(Array.isArray(tt)){const Ut=it.breakpoints||defaultBreakpoints;return tt.reduce((Ft,Qt,Bt)=>(Ft[Ut.up(Ut.keys[Bt])]=nt(tt[Bt]),Ft),{})}if(typeof tt=="object"){const Ut=it.breakpoints||defaultBreakpoints;return Object.keys(tt).reduce((Ft,Qt)=>{if(Object.keys(Ut.values||values).indexOf(Qt)!==-1){const Bt=Ut.up(Qt);Ft[Bt]=nt(tt[Qt],Qt)}else{const Bt=Qt;Ft[Bt]=tt[Bt]}return Ft},{})}return nt(tt)}function createEmptyBreakpointObject(et={}){var tt;return((tt=et.keys)==null?void 0:tt.reduce((it,ot)=>{const Ut=et.up(ot);return it[Ut]={},it},{}))||{}}function removeUnusedBreakpoints(et,tt){return et.reduce((nt,it)=>{const ot=nt[it];return(!ot||Object.keys(ot).length===0)&&delete nt[it],nt},tt)}function getPath(et,tt,nt=!0){if(!tt||typeof tt!="string")return null;if(et&&et.vars&&nt){const it=`vars.${tt}`.split(".").reduce((ot,Ut)=>ot&&ot[Ut]?ot[Ut]:null,et);if(it!=null)return it}return tt.split(".").reduce((it,ot)=>it&&it[ot]!=null?it[ot]:null,et)}function getStyleValue(et,tt,nt,it=nt){let ot;return typeof et=="function"?ot=et(nt):Array.isArray(et)?ot=et[nt]||it:ot=getPath(et,nt)||it,tt&&(ot=tt(ot,it,et)),ot}function style$1(et){const{prop:tt,cssProperty:nt=et.prop,themeKey:it,transform:ot}=et,Ut=Ft=>{if(Ft[tt]==null)return null;const Qt=Ft[tt],Bt=Ft.theme,Vt=getPath(Bt,it)||{};return handleBreakpoints(Ft,Qt,Xt=>{let Zt=getStyleValue(Vt,ot,Xt);return Xt===Zt&&typeof Xt=="string"&&(Zt=getStyleValue(Vt,ot,`${tt}${Xt==="default"?"":capitalize(Xt)}`,Xt)),nt===!1?Zt:{[nt]:Zt}})};return Ut.propTypes={},Ut.filterProps=[tt],Ut}function compose(...et){const tt=et.reduce((it,ot)=>(ot.filterProps.forEach(Ut=>{it[Ut]=ot}),it),{}),nt=it=>Object.keys(it).reduce((ot,Ut)=>tt[Ut]?merge$2(ot,tt[Ut](it)):ot,{});return nt.propTypes={},nt.filterProps=et.reduce((it,ot)=>it.concat(ot.filterProps),[]),nt}function memoize(et){const tt={};return nt=>(tt[nt]===void 0&&(tt[nt]=et(nt)),tt[nt])}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(et=>{if(et.length>2)if(aliases[et])et=aliases[et];else return[et];const[tt,nt]=et.split(""),it=properties[tt],ot=directions[nt]||"";return Array.isArray(ot)?ot.map(Ut=>it+Ut):[it+ot]}),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(et,tt,nt,it){var ot;const Ut=(ot=getPath(et,tt,!1))!=null?ot:nt;return typeof Ut=="number"?Ft=>typeof Ft=="string"?Ft:Ut*Ft:Array.isArray(Ut)?Ft=>typeof Ft=="string"?Ft:Ut[Ft]:typeof Ut=="function"?Ut:()=>{}}function createUnarySpacing(et){return createUnaryUnit(et,"spacing",8)}function getValue(et,tt){if(typeof tt=="string"||tt==null)return tt;const nt=Math.abs(tt),it=et(nt);return tt>=0?it:typeof it=="number"?-it:`-${it}`}function getStyleFromPropValue(et,tt){return nt=>et.reduce((it,ot)=>(it[ot]=getValue(tt,nt),it),{})}function resolveCssProperty(et,tt,nt,it){if(tt.indexOf(nt)===-1)return null;const ot=getCssProperties(nt),Ut=getStyleFromPropValue(ot,it),Ft=et[nt];return handleBreakpoints(et,Ft,Ut)}function style(et,tt){const nt=createUnarySpacing(et.theme);return Object.keys(et).map(it=>resolveCssProperty(et,tt,it,nt)).reduce(merge$2,{})}function margin(et){return style(et,marginKeys)}margin.propTypes={};margin.filterProps=marginKeys;function padding(et){return style(et,paddingKeys)}padding.propTypes={};padding.filterProps=paddingKeys;function borderTransform(et){return typeof et!="number"?et:`${et}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=et=>{if(et.borderRadius!==void 0&&et.borderRadius!==null){const tt=createUnaryUnit(et.theme,"shape.borderRadius",4),nt=it=>({borderRadius:getValue(tt,it)});return handleBreakpoints(et,et.borderRadius,nt)}return null};borderRadius.propTypes={};borderRadius.filterProps=["borderRadius"];compose(border,borderTop,borderRight,borderBottom,borderLeft,borderColor,borderTopColor,borderRightColor,borderBottomColor,borderLeftColor,borderRadius);const gap=et=>{if(et.gap!==void 0&&et.gap!==null){const tt=createUnaryUnit(et.theme,"spacing",8),nt=it=>({gap:getValue(tt,it)});return handleBreakpoints(et,et.gap,nt)}return null};gap.propTypes={};gap.filterProps=["gap"];const columnGap=et=>{if(et.columnGap!==void 0&&et.columnGap!==null){const tt=createUnaryUnit(et.theme,"spacing",8),nt=it=>({columnGap:getValue(tt,it)});return handleBreakpoints(et,et.columnGap,nt)}return null};columnGap.propTypes={};columnGap.filterProps=["columnGap"];const rowGap=et=>{if(et.rowGap!==void 0&&et.rowGap!==null){const tt=createUnaryUnit(et.theme,"spacing",8),nt=it=>({rowGap:getValue(tt,it)});return handleBreakpoints(et,et.rowGap,nt)}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(et,tt){return tt==="grey"?tt:et}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(et){return et<=1&&et!==0?`${et*100}%`:et}const width=style$1({prop:"width",transform:sizingTransform}),maxWidth=et=>{if(et.maxWidth!==void 0&&et.maxWidth!==null){const tt=nt=>{var it,ot,Ut;return{maxWidth:((it=et.theme)==null||(ot=it.breakpoints)==null||(Ut=ot.values)==null?void 0:Ut[nt])||values[nt]||sizingTransform(nt)}};return handleBreakpoints(et,et.maxWidth,tt)}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:et=>({"@media print":{display:et}})},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(...et){const tt=et.reduce((it,ot)=>it.concat(Object.keys(ot)),[]),nt=new Set(tt);return et.every(it=>nt.size===Object.keys(it).length)}function callIfFn(et,tt){return typeof et=="function"?et(tt):et}function unstable_createStyleFunctionSx(){function et(nt,it,ot,Ut){const Ft={[nt]:it,theme:ot},Qt=Ut[nt];if(!Qt)return{[nt]:it};const{cssProperty:Bt=nt,themeKey:Vt,transform:Wt,style:Xt}=Qt;if(it==null)return null;const Zt=getPath(ot,Vt)||{};return Xt?Xt(Ft):handleBreakpoints(Ft,it,Mt=>{let Gt=getStyleValue(Zt,Wt,Mt);return Mt===Gt&&typeof Mt=="string"&&(Gt=getStyleValue(Zt,Wt,`${nt}${Mt==="default"?"":capitalize(Mt)}`,Mt)),Bt===!1?Gt:{[Bt]:Gt}})}function tt(nt){var it;const{sx:ot,theme:Ut={}}=nt||{};if(!ot)return null;const Ft=(it=Ut.unstable_sxConfig)!=null?it:defaultSxConfig$1;function Qt(Bt){let Vt=Bt;if(typeof Bt=="function")Vt=Bt(Ut);else if(typeof Bt!="object")return Bt;if(!Vt)return null;const Wt=createEmptyBreakpointObject(Ut.breakpoints),Xt=Object.keys(Wt);let Zt=Wt;return Object.keys(Vt).forEach(Yt=>{const Mt=callIfFn(Vt[Yt],Ut);if(Mt!=null)if(typeof Mt=="object")if(Ft[Yt])Zt=merge$2(Zt,et(Yt,Mt,Ut,Ft));else{const Gt=handleBreakpoints({theme:Ut},Mt,en=>({[Yt]:en}));objectsHaveSameKeys(Gt,Mt)?Zt[Yt]=tt({sx:Mt,theme:Ut}):Zt=merge$2(Zt,Gt)}else Zt=merge$2(Zt,et(Yt,Mt,Ut,Ft))}),removeUnusedBreakpoints(Xt,Zt)}return Array.isArray(ot)?ot.map(Qt):Qt(ot)}return tt}const styleFunctionSx=unstable_createStyleFunctionSx();styleFunctionSx.filterProps=["sx"];const styleFunctionSx$1=styleFunctionSx;function _objectWithoutPropertiesLoose$1(et,tt){if(et==null)return{};var nt={},it=Object.keys(et),ot,Ut;for(Ut=0;Ut=0)&&(nt[ot]=et[ot]);return nt}function r(et){var tt,nt,it="";if(typeof et=="string"||typeof et=="number")it+=et;else if(typeof et=="object")if(Array.isArray(et))for(tt=0;tt{const tt=Object.keys(et).map(nt=>({key:nt,val:et[nt]}))||[];return tt.sort((nt,it)=>nt.val-it.val),tt.reduce((nt,it)=>_extends$1({},nt,{[it.key]:it.val}),{})};function createBreakpoints(et){const{values:tt={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:nt="px",step:it=5}=et,ot=_objectWithoutPropertiesLoose$1(et,_excluded$8),Ut=sortBreakpointsValues(tt),Ft=Object.keys(Ut);function Qt(Zt){return`@media (min-width:${typeof tt[Zt]=="number"?tt[Zt]:Zt}${nt})`}function Bt(Zt){return`@media (max-width:${(typeof tt[Zt]=="number"?tt[Zt]:Zt)-it/100}${nt})`}function Vt(Zt,Yt){const Mt=Ft.indexOf(Yt);return`@media (min-width:${typeof tt[Zt]=="number"?tt[Zt]:Zt}${nt}) and (max-width:${(Mt!==-1&&typeof tt[Ft[Mt]]=="number"?tt[Ft[Mt]]:Yt)-it/100}${nt})`}function Wt(Zt){return Ft.indexOf(Zt)+1(it.length===0?[1]:it).map(Ut=>{const Ft=tt(Ut);return typeof Ft=="number"?`${Ft}px`:Ft}).join(" ");return nt.mui=!0,nt}const _excluded$7=["breakpoints","palette","spacing","shape"];function createTheme$1(et={},...tt){const{breakpoints:nt={},palette:it={},spacing:ot,shape:Ut={}}=et,Ft=_objectWithoutPropertiesLoose$1(et,_excluded$7),Qt=createBreakpoints(nt),Bt=createSpacing(ot);let Vt=deepmerge({breakpoints:Qt,direction:"ltr",components:{},palette:_extends$1({mode:"light"},it),spacing:Bt,shape:_extends$1({},shape$1,Ut)},Ft);return Vt=tt.reduce((Wt,Xt)=>deepmerge(Wt,Xt),Vt),Vt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,Ft==null?void 0:Ft.unstable_sxConfig),Vt.unstable_sx=function(Xt){return styleFunctionSx$1({sx:Xt,theme:this})},Vt}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(et,tt){return typeof tt=="function"?tt(et):_extends$1({},et,tt)}function ThemeProvider$1(et){const{children:tt,theme:nt}=et,it=useTheme$2(),ot=reactExports.useMemo(()=>{const Ut=it===null?nt:mergeOuterLocalTheme(it,nt);return Ut!=null&&(Ut[nested]=it!==null),Ut},[nt,it]);return jsx$1(ThemeContext$1.Provider,{value:ot,children:tt})}function isObjectEmpty(et){return Object.keys(et).length===0}function useTheme$1(et=null){const tt=useTheme$2();return!tt||isObjectEmpty(tt)?et:tt}const systemDefaultTheme$1=createTheme$1();function useTheme(et=systemDefaultTheme$1){return useTheme$1(et)}const _excluded$6=["variant"];function isEmpty$1(et){return et.length===0}function propsToClassKey(et){const{variant:tt}=et,nt=_objectWithoutPropertiesLoose$1(et,_excluded$6);let it=tt||"";return Object.keys(nt).sort().forEach(ot=>{ot==="color"?it+=isEmpty$1(it)?et[ot]:capitalize(et[ot]):it+=`${isEmpty$1(it)?ot:capitalize(ot)}${capitalize(et[ot].toString())}`}),it}const _excluded$5=["name","slot","skipVariantsResolver","skipSx","overridesResolver"],_excluded2=["theme"],_excluded3=["theme"];function isEmpty(et){return Object.keys(et).length===0}function isStringTag(et){return typeof et=="string"&&et.charCodeAt(0)>96}const getStyleOverrides=(et,tt)=>tt.components&&tt.components[et]&&tt.components[et].styleOverrides?tt.components[et].styleOverrides:null,getVariantStyles=(et,tt)=>{let nt=[];tt&&tt.components&&tt.components[et]&&tt.components[et].variants&&(nt=tt.components[et].variants);const it={};return nt.forEach(ot=>{const Ut=propsToClassKey(ot.props);it[Ut]=ot.style}),it},variantsResolver=(et,tt,nt,it)=>{var ot,Ut;const{ownerState:Ft={}}=et,Qt=[],Bt=nt==null||(ot=nt.components)==null||(Ut=ot[it])==null?void 0:Ut.variants;return Bt&&Bt.forEach(Vt=>{let Wt=!0;Object.keys(Vt.props).forEach(Xt=>{Ft[Xt]!==Vt.props[Xt]&&et[Xt]!==Vt.props[Xt]&&(Wt=!1)}),Wt&&Qt.push(tt[propsToClassKey(Vt.props)])}),Qt};function shouldForwardProp(et){return et!=="ownerState"&&et!=="theme"&&et!=="sx"&&et!=="as"}const systemDefaultTheme=createTheme$1();function createStyled(et={}){const{defaultTheme:tt=systemDefaultTheme,rootShouldForwardProp:nt=shouldForwardProp,slotShouldForwardProp:it=shouldForwardProp}=et,ot=Ut=>{const Ft=isEmpty(Ut.theme)?tt:Ut.theme;return styleFunctionSx$1(_extends$1({},Ut,{theme:Ft}))};return ot.__mui_systemSx=!0,(Ut,Ft={})=>{internal_processStyles(Ut,nn=>nn.filter(sn=>!(sn!=null&&sn.__mui_systemSx)));const{name:Qt,slot:Bt,skipVariantsResolver:Vt,skipSx:Wt,overridesResolver:Xt}=Ft,Zt=_objectWithoutPropertiesLoose$1(Ft,_excluded$5),Yt=Vt!==void 0?Vt:Bt&&Bt!=="Root"||!1,Mt=Wt||!1;let Gt,en=shouldForwardProp;Bt==="Root"?en=nt:Bt?en=it:isStringTag(Ut)&&(en=void 0);const tn=styled$2(Ut,_extends$1({shouldForwardProp:en,label:Gt},Zt)),ln=(nn,...sn)=>{const Kt=sn?sn.map(an=>typeof an=="function"&&an.__emotion_real!==an?rn=>{let{theme:gn}=rn,un=_objectWithoutPropertiesLoose$1(rn,_excluded2);return an(_extends$1({theme:isEmpty(gn)?tt:gn},un))}:an):[];let dn=nn;Qt&&Xt&&Kt.push(an=>{const rn=isEmpty(an.theme)?tt:an.theme,gn=getStyleOverrides(Qt,rn);if(gn){const un={};return Object.entries(gn).forEach(([Un,_n])=>{un[Un]=typeof _n=="function"?_n(_extends$1({},an,{theme:rn})):_n}),Xt(an,un)}return null}),Qt&&!Yt&&Kt.push(an=>{const rn=isEmpty(an.theme)?tt:an.theme;return variantsResolver(an,getVariantStyles(Qt,rn),rn,Qt)}),Mt||Kt.push(ot);const Qn=Kt.length-sn.length;if(Array.isArray(nn)&&Qn>0){const an=new Array(Qn).fill("");dn=[...nn,...an],dn.raw=[...nn.raw,...an]}else typeof nn=="function"&&nn.__emotion_real!==nn&&(dn=an=>{let{theme:rn}=an,gn=_objectWithoutPropertiesLoose$1(an,_excluded3);return nn(_extends$1({theme:isEmpty(rn)?tt:rn},gn))});return tn(dn,...Kt)};return tn.withConfig&&(ln.withConfig=tn.withConfig),ln}}function getThemeProps(et){const{theme:tt,name:nt,props:it}=et;return!tt||!tt.components||!tt.components[nt]||!tt.components[nt].defaultProps?it:resolveProps(tt.components[nt].defaultProps,it)}function useThemeProps$1({props:et,name:tt,defaultTheme:nt}){const it=useTheme(nt);return getThemeProps({theme:it,name:tt,props:et})}function clamp(et,tt=0,nt=1){return Math.min(Math.max(tt,et),nt)}function hexToRgb(et){et=et.slice(1);const tt=new RegExp(`.{1,${et.length>=6?2:1}}`,"g");let nt=et.match(tt);return nt&&nt[0].length===1&&(nt=nt.map(it=>it+it)),nt?`rgb${nt.length===4?"a":""}(${nt.map((it,ot)=>ot<3?parseInt(it,16):Math.round(parseInt(it,16)/255*1e3)/1e3).join(", ")})`:""}function decomposeColor(et){if(et.type)return et;if(et.charAt(0)==="#")return decomposeColor(hexToRgb(et));const tt=et.indexOf("("),nt=et.substring(0,tt);if(["rgb","rgba","hsl","hsla","color"].indexOf(nt)===-1)throw new Error(formatMuiErrorMessage(9,et));let it=et.substring(tt+1,et.length-1),ot;if(nt==="color"){if(it=it.split(" "),ot=it.shift(),it.length===4&&it[3].charAt(0)==="/"&&(it[3]=it[3].slice(1)),["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].indexOf(ot)===-1)throw new Error(formatMuiErrorMessage(10,ot))}else it=it.split(",");return it=it.map(Ut=>parseFloat(Ut)),{type:nt,values:it,colorSpace:ot}}function recomposeColor(et){const{type:tt,colorSpace:nt}=et;let{values:it}=et;return tt.indexOf("rgb")!==-1?it=it.map((ot,Ut)=>Ut<3?parseInt(ot,10):ot):tt.indexOf("hsl")!==-1&&(it[1]=`${it[1]}%`,it[2]=`${it[2]}%`),tt.indexOf("color")!==-1?it=`${nt} ${it.join(" ")}`:it=`${it.join(", ")}`,`${tt}(${it})`}function hslToRgb(et){et=decomposeColor(et);const{values:tt}=et,nt=tt[0],it=tt[1]/100,ot=tt[2]/100,Ut=it*Math.min(ot,1-ot),Ft=(Vt,Wt=(Vt+nt/30)%12)=>ot-Ut*Math.max(Math.min(Wt-3,9-Wt,1),-1);let Qt="rgb";const Bt=[Math.round(Ft(0)*255),Math.round(Ft(8)*255),Math.round(Ft(4)*255)];return et.type==="hsla"&&(Qt+="a",Bt.push(tt[3])),recomposeColor({type:Qt,values:Bt})}function getLuminance(et){et=decomposeColor(et);let tt=et.type==="hsl"||et.type==="hsla"?decomposeColor(hslToRgb(et)).values:et.values;return tt=tt.map(nt=>(et.type!=="color"&&(nt/=255),nt<=.03928?nt/12.92:((nt+.055)/1.055)**2.4)),Number((.2126*tt[0]+.7152*tt[1]+.0722*tt[2]).toFixed(3))}function getContrastRatio(et,tt){const nt=getLuminance(et),it=getLuminance(tt);return(Math.max(nt,it)+.05)/(Math.min(nt,it)+.05)}function darken(et,tt){if(et=decomposeColor(et),tt=clamp(tt),et.type.indexOf("hsl")!==-1)et.values[2]*=1-tt;else if(et.type.indexOf("rgb")!==-1||et.type.indexOf("color")!==-1)for(let nt=0;nt<3;nt+=1)et.values[nt]*=1-tt;return recomposeColor(et)}function lighten(et,tt){if(et=decomposeColor(et),tt=clamp(tt),et.type.indexOf("hsl")!==-1)et.values[2]+=(100-et.values[2])*tt;else if(et.type.indexOf("rgb")!==-1)for(let nt=0;nt<3;nt+=1)et.values[nt]+=(255-et.values[nt])*tt;else if(et.type.indexOf("color")!==-1)for(let nt=0;nt<3;nt+=1)et.values[nt]+=(1-et.values[nt])*tt;return recomposeColor(et)}const EMPTY_THEME={};function InnerThemeProvider(et){const tt=useTheme();return jsx$1(ThemeContext$2.Provider,{value:typeof tt=="object"?tt:EMPTY_THEME,children:et.children})}function ThemeProvider(et){const{children:tt,theme:nt}=et;return jsx$1(ThemeProvider$1,{theme:nt,children:jsx$1(InnerThemeProvider,{children:tt})})}function createMixins(et,tt){return _extends$1({toolbar:{minHeight:56,[et.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[et.up("sm")]:{minHeight:64}}},tt)}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(et,tt,nt,it){const ot=it.light||it,Ut=it.dark||it*1.5;et[tt]||(et.hasOwnProperty(nt)?et[tt]=et[nt]:tt==="light"?et.light=lighten(et.main,ot):tt==="dark"&&(et.dark=darken(et.main,Ut)))}function getDefaultPrimary(et="light"){return et==="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(et="light"){return et==="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(et="light"){return et==="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(et="light"){return et==="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(et="light"){return et==="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(et="light"){return et==="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(et){const{mode:tt="light",contrastThreshold:nt=3,tonalOffset:it=.2}=et,ot=_objectWithoutPropertiesLoose$1(et,_excluded$4),Ut=et.primary||getDefaultPrimary(tt),Ft=et.secondary||getDefaultSecondary(tt),Qt=et.error||getDefaultError(tt),Bt=et.info||getDefaultInfo(tt),Vt=et.success||getDefaultSuccess(tt),Wt=et.warning||getDefaultWarning(tt);function Xt(Gt){return getContrastRatio(Gt,dark.text.primary)>=nt?dark.text.primary:light.text.primary}const Zt=({color:Gt,name:en,mainShade:tn=500,lightShade:ln=300,darkShade:nn=700})=>{if(Gt=_extends$1({},Gt),!Gt.main&&Gt[tn]&&(Gt.main=Gt[tn]),!Gt.hasOwnProperty("main"))throw new Error(formatMuiErrorMessage(11,en?` (${en})`:"",tn));if(typeof Gt.main!="string")throw new Error(formatMuiErrorMessage(12,en?` (${en})`:"",JSON.stringify(Gt.main)));return addLightOrDark(Gt,"light",ln,it),addLightOrDark(Gt,"dark",nn,it),Gt.contrastText||(Gt.contrastText=Xt(Gt.main)),Gt},Yt={dark,light};return deepmerge(_extends$1({common:_extends$1({},common$2),mode:tt,primary:Zt({color:Ut,name:"primary"}),secondary:Zt({color:Ft,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:Zt({color:Qt,name:"error"}),warning:Zt({color:Wt,name:"warning"}),info:Zt({color:Bt,name:"info"}),success:Zt({color:Vt,name:"success"}),grey:grey$1,contrastThreshold:nt,getContrastText:Xt,augmentColor:Zt,tonalOffset:it},Yt[tt]),ot)}const _excluded$3=["fontFamily","fontSize","fontWeightLight","fontWeightRegular","fontWeightMedium","fontWeightBold","htmlFontSize","allVariants","pxToRem"];function round$1(et){return Math.round(et*1e5)/1e5}const caseAllCaps={textTransform:"uppercase"},defaultFontFamily='"Roboto", "Helvetica", "Arial", sans-serif';function createTypography(et,tt){const nt=typeof tt=="function"?tt(et):tt,{fontFamily:it=defaultFontFamily,fontSize:ot=14,fontWeightLight:Ut=300,fontWeightRegular:Ft=400,fontWeightMedium:Qt=500,fontWeightBold:Bt=700,htmlFontSize:Vt=16,allVariants:Wt,pxToRem:Xt}=nt,Zt=_objectWithoutPropertiesLoose$1(nt,_excluded$3),Yt=ot/14,Mt=Xt||(tn=>`${tn/Vt*Yt}rem`),Gt=(tn,ln,nn,sn,Kt)=>_extends$1({fontFamily:it,fontWeight:tn,fontSize:Mt(ln),lineHeight:nn},it===defaultFontFamily?{letterSpacing:`${round$1(sn/ln)}em`}:{},Kt,Wt),en={h1:Gt(Ut,96,1.167,-1.5),h2:Gt(Ut,60,1.2,-.5),h3:Gt(Ft,48,1.167,0),h4:Gt(Ft,34,1.235,.25),h5:Gt(Ft,24,1.334,0),h6:Gt(Qt,20,1.6,.15),subtitle1:Gt(Ft,16,1.75,.15),subtitle2:Gt(Qt,14,1.57,.1),body1:Gt(Ft,16,1.5,.15),body2:Gt(Ft,14,1.43,.15),button:Gt(Qt,14,1.75,.4,caseAllCaps),caption:Gt(Ft,12,1.66,.4),overline:Gt(Ft,12,2.66,1,caseAllCaps)};return deepmerge(_extends$1({htmlFontSize:Vt,pxToRem:Mt,fontFamily:it,fontSize:ot,fontWeightLight:Ut,fontWeightRegular:Ft,fontWeightMedium:Qt,fontWeightBold:Bt},en),Zt,{clone:!1})}const shadowKeyUmbraOpacity=.2,shadowKeyPenumbraOpacity=.14,shadowAmbientShadowOpacity=.12;function createShadow(...et){return[`${et[0]}px ${et[1]}px ${et[2]}px ${et[3]}px rgba(0,0,0,${shadowKeyUmbraOpacity})`,`${et[4]}px ${et[5]}px ${et[6]}px ${et[7]}px rgba(0,0,0,${shadowKeyPenumbraOpacity})`,`${et[8]}px ${et[9]}px ${et[10]}px ${et[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$1={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function formatMs(et){return`${Math.round(et)}ms`}function getAutoHeightDuration(et){if(!et)return 0;const tt=et/36;return Math.round((4+15*tt**.25+tt/5)*10)}function createTransitions(et){const tt=_extends$1({},easing,et.easing),nt=_extends$1({},duration$1,et.duration);return _extends$1({getAutoHeightDuration,create:(ot=["all"],Ut={})=>{const{duration:Ft=nt.standard,easing:Qt=tt.easeInOut,delay:Bt=0}=Ut;return _objectWithoutPropertiesLoose$1(Ut,_excluded$2),(Array.isArray(ot)?ot:[ot]).map(Vt=>`${Vt} ${typeof Ft=="string"?Ft:formatMs(Ft)} ${Qt} ${typeof Bt=="string"?Bt:formatMs(Bt)}`).join(",")}},et,{easing:tt,duration:nt})}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(et={},...tt){const{mixins:nt={},palette:it={},transitions:ot={},typography:Ut={}}=et,Ft=_objectWithoutPropertiesLoose$1(et,_excluded$1);if(et.vars)throw new Error(formatMuiErrorMessage(18));const Qt=createPalette(it),Bt=createTheme$1(et);let Vt=deepmerge(Bt,{mixins:createMixins(Bt.breakpoints,nt),palette:Qt,shadows:shadows$1.slice(),typography:createTypography(Qt,Ut),transitions:createTransitions(ot),zIndex:_extends$1({},zIndex$1)});return Vt=deepmerge(Vt,Ft),Vt=tt.reduce((Wt,Xt)=>deepmerge(Wt,Xt),Vt),Vt.unstable_sxConfig=_extends$1({},defaultSxConfig$1,Ft==null?void 0:Ft.unstable_sxConfig),Vt.unstable_sx=function(Xt){return styleFunctionSx$1({sx:Xt,theme:this})},Vt}const defaultTheme=createTheme(),defaultTheme$1=defaultTheme;function useThemeProps({props:et,name:tt}){return useThemeProps$1({props:et,name:tt,defaultTheme:defaultTheme$1})}function GlobalStyles(et){return jsx$1(GlobalStyles$1,_extends$1({},et,{defaultTheme:defaultTheme$1}))}const html=(et,tt)=>_extends$1({WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",boxSizing:"border-box",WebkitTextSizeAdjust:"100%"},tt&&!et.vars&&{colorScheme:et.palette.mode}),body=et=>_extends$1({color:(et.vars||et).palette.text.primary},et.typography.body1,{backgroundColor:(et.vars||et).palette.background.default,"@media print":{backgroundColor:(et.vars||et).palette.common.white}}),styles=(et,tt=!1)=>{var nt,it;const ot={};tt&&et.colorSchemes&&Object.entries(et.colorSchemes).forEach(([Qt,Bt])=>{var Vt;ot[et.getColorSchemeSelector(Qt).replace(/\s*&/,"")]={colorScheme:(Vt=Bt.palette)==null?void 0:Vt.mode}});let Ut=_extends$1({html:html(et,tt),"*, *::before, *::after":{boxSizing:"inherit"},"strong, b":{fontWeight:et.typography.fontWeightBold},body:_extends$1({margin:0},body(et),{"&::backdrop":{backgroundColor:(et.vars||et).palette.background.default}})},ot);const Ft=(nt=et.components)==null||(it=nt.MuiCssBaseline)==null?void 0:it.styleOverrides;return Ft&&(Ut=[Ut,Ft]),Ut};function CssBaseline(et){const tt=useThemeProps({props:et,name:"MuiCssBaseline"}),{children:nt,enableColorScheme:it=!1}=tt;return jsxs$1(reactExports.Fragment,{children:[jsx$1(GlobalStyles,{styles:ot=>styles(ot,it)}),nt]})}const rootShouldForwardProp=et=>shouldForwardProp(et)&&et!=="classes",styled=createStyled({defaultTheme:defaultTheme$1,rootShouldForwardProp}),styled$1=styled;function getScopedCssBaselineUtilityClass(et){return generateUtilityClass("MuiScopedCssBaseline",et)}generateUtilityClasses("MuiScopedCssBaseline",["root"]);const _excluded=["className","component","enableColorScheme"],useUtilityClasses=et=>{const{classes:tt}=et;return composeClasses({root:["root"]},getScopedCssBaselineUtilityClass,tt)},ScopedCssBaselineRoot=styled$1("div",{name:"MuiScopedCssBaseline",slot:"Root",overridesResolver:(et,tt)=>tt.root})(({theme:et,ownerState:tt})=>{const nt={};return tt.enableColorScheme&&et.colorSchemes&&Object.entries(et.colorSchemes).forEach(([it,ot])=>{var Ut;nt[`&${et.getColorSchemeSelector(it).replace(/\s*&/,"")}`]={colorScheme:(Ut=ot.palette)==null?void 0:Ut.mode}}),_extends$1({},html(et,tt.enableColorScheme),body(et),{"& *, & *::before, & *::after":{boxSizing:"inherit"},"& strong, & b":{fontWeight:et.typography.fontWeightBold}},nt)}),ScopedCssBaseline=reactExports.forwardRef(function(tt,nt){const it=useThemeProps({props:tt,name:"MuiScopedCssBaseline"}),{className:ot,component:Ut="div"}=it,Ft=_objectWithoutPropertiesLoose$1(it,_excluded),Qt=_extends$1({},it,{component:Ut}),Bt=useUtilityClasses(Qt);return jsx$1(ScopedCssBaselineRoot,_extends$1({as:Ut,className:clsx(Bt.root,ot),ref:nt,ownerState:Qt},Ft))}),D0=ScopedCssBaseline;var base64Exports={},base64={get exports(){return base64Exports},set exports(et){base64Exports=et}};/*! https://mths.be/base64 v1.0.0 by @mathias | MIT license */(function(et,tt){(function(nt){var it=tt,ot=et&&et.exports==it&&et,Ut=typeof commonjsGlobal=="object"&&commonjsGlobal;(Ut.global===Ut||Ut.window===Ut)&&(nt=Ut);var Ft=function(Mt){this.message=Mt};Ft.prototype=new Error,Ft.prototype.name="InvalidCharacterError";var Qt=function(Mt){throw new Ft(Mt)},Bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Vt=/[\t\n\f\r ]/g,Wt=function(Mt){Mt=String(Mt).replace(Vt,"");var Gt=Mt.length;Gt%4==0&&(Mt=Mt.replace(/==?$/,""),Gt=Mt.length),(Gt%4==1||/[^+a-zA-Z0-9/]/.test(Mt))&&Qt("Invalid character: the string to be decoded is not correctly encoded.");for(var en=0,tn,ln,nn="",sn=-1;++sn>(-2*en&6)));return nn},Xt=function(Mt){Mt=String(Mt),/[^\0-\xFF]/.test(Mt)&&Qt("The string to be encoded contains characters outside of the Latin1 range.");for(var Gt=Mt.length%3,en="",tn=-1,ln,nn,sn,Kt,dn=Mt.length-Gt;++tn>18&63)+Bt.charAt(Kt>>12&63)+Bt.charAt(Kt>>6&63)+Bt.charAt(Kt&63);return Gt==2?(ln=Mt.charCodeAt(tn)<<8,nn=Mt.charCodeAt(++tn),Kt=ln+nn,en+=Bt.charAt(Kt>>10)+Bt.charAt(Kt>>4&63)+Bt.charAt(Kt<<2&63)+"="):Gt==1&&(Kt=Mt.charCodeAt(tn),en+=Bt.charAt(Kt>>2)+Bt.charAt(Kt<<4&63)+"=="),en},Zt={encode:Xt,decode:Wt,version:"1.0.0"};if(it&&!it.nodeType)if(ot)ot.exports=Zt;else for(var Yt in Zt)Zt.hasOwnProperty(Yt)&&(it[Yt]=Zt[Yt]);else nt.base64=Zt})(commonjsGlobal)})(base64,base64Exports);function _typeof$1(et){return _typeof$1=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(tt){return typeof tt}:function(tt){return tt&&typeof Symbol=="function"&&tt.constructor===Symbol&&tt!==Symbol.prototype?"symbol":typeof tt},_typeof$1(et)}function toInteger(et){if(et===null||et===!0||et===!1)return NaN;var tt=Number(et);return isNaN(tt)?tt:tt<0?Math.ceil(tt):Math.floor(tt)}function requiredArgs(et,tt){if(tt.length1?"s":"")+" required, but only "+tt.length+" present")}function toDate(et){requiredArgs(1,arguments);var tt=Object.prototype.toString.call(et);return et instanceof Date||_typeof$1(et)==="object"&&tt==="[object Date]"?new Date(et.getTime()):typeof et=="number"||tt==="[object Number]"?new Date(et):((typeof et=="string"||tt==="[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(et,tt){requiredArgs(2,arguments);var nt=toDate(et),it=toInteger(tt);return isNaN(it)?new Date(NaN):(it&&nt.setDate(nt.getDate()+it),nt)}function addMonths(et,tt){requiredArgs(2,arguments);var nt=toDate(et),it=toInteger(tt);if(isNaN(it))return new Date(NaN);if(!it)return nt;var ot=nt.getDate(),Ut=new Date(nt.getTime());Ut.setMonth(nt.getMonth()+it+1,0);var Ft=Ut.getDate();return ot>=Ft?Ut:(nt.setFullYear(Ut.getFullYear(),Ut.getMonth(),ot),nt)}function addMilliseconds(et,tt){requiredArgs(2,arguments);var nt=toDate(et).getTime(),it=toInteger(tt);return new Date(nt+it)}var MILLISECONDS_IN_HOUR=36e5;function addHours(et,tt){requiredArgs(2,arguments);var nt=toInteger(tt);return addMilliseconds(et,nt*MILLISECONDS_IN_HOUR)}var defaultOptions={};function getDefaultOptions(){return defaultOptions}function startOfWeek(et,tt){var nt,it,ot,Ut,Ft,Qt,Bt,Vt;requiredArgs(1,arguments);var Wt=getDefaultOptions(),Xt=toInteger((nt=(it=(ot=(Ut=tt==null?void 0:tt.weekStartsOn)!==null&&Ut!==void 0?Ut:tt==null||(Ft=tt.locale)===null||Ft===void 0||(Qt=Ft.options)===null||Qt===void 0?void 0:Qt.weekStartsOn)!==null&&ot!==void 0?ot:Wt.weekStartsOn)!==null&&it!==void 0?it:(Bt=Wt.locale)===null||Bt===void 0||(Vt=Bt.options)===null||Vt===void 0?void 0:Vt.weekStartsOn)!==null&&nt!==void 0?nt:0);if(!(Xt>=0&&Xt<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Zt=toDate(et),Yt=Zt.getDay(),Mt=(Yt=Ft)throw new RangeError("Invalid interval");var Qt=[],Bt=it,Vt=Number((nt=tt==null?void 0:tt.step)!==null&&nt!==void 0?nt:1);if(Vt<1||isNaN(Vt))throw new RangeError("`options.step` must be a number equal to or greater than 1");for(;Bt.getTime()<=Ft;)Qt.push(toDate(Bt)),Bt=addMinutes(Bt,Vt);return Qt}function eachMonthOfInterval(et){requiredArgs(1,arguments);var tt=et||{},nt=toDate(tt.start),it=toDate(tt.end),ot=it.getTime(),Ut=[];if(!(nt.getTime()<=ot))throw new RangeError("Invalid interval");var Ft=nt;for(Ft.setHours(0,0,0,0),Ft.setDate(1);Ft.getTime()<=ot;)Ut.push(toDate(Ft)),Ft.setMonth(Ft.getMonth()+1);return Ut}function startOfQuarter(et){requiredArgs(1,arguments);var tt=toDate(et),nt=tt.getMonth(),it=nt-nt%3;return tt.setMonth(it,1),tt.setHours(0,0,0,0),tt}function eachQuarterOfInterval(et){requiredArgs(1,arguments);var tt=et||{},nt=toDate(tt.start),it=toDate(tt.end),ot=it.getTime();if(!(nt.getTime()<=ot))throw new RangeError("Invalid interval");var Ut=startOfQuarter(nt),Ft=startOfQuarter(it);ot=Ft.getTime();for(var Qt=[],Bt=Ut;Bt.getTime()<=ot;)Qt.push(toDate(Bt)),Bt=addQuarters(Bt,1);return Qt}function eachWeekOfInterval(et,tt){requiredArgs(1,arguments);var nt=et||{},it=toDate(nt.start),ot=toDate(nt.end),Ut=ot.getTime();if(!(it.getTime()<=Ut))throw new RangeError("Invalid interval");var Ft=startOfWeek(it,tt),Qt=startOfWeek(ot,tt);Ft.setHours(15),Qt.setHours(15),Ut=Qt.getTime();for(var Bt=[],Vt=Ft;Vt.getTime()<=Ut;)Vt.setHours(0),Bt.push(toDate(Vt)),Vt=addWeeks(Vt,1),Vt.setHours(15);return Bt}function startOfMonth(et){requiredArgs(1,arguments);var tt=toDate(et);return tt.setDate(1),tt.setHours(0,0,0,0),tt}function endOfYear(et){requiredArgs(1,arguments);var tt=toDate(et),nt=tt.getFullYear();return tt.setFullYear(nt+1,0,0),tt.setHours(23,59,59,999),tt}function startOfYear(et){requiredArgs(1,arguments);var tt=toDate(et),nt=new Date(0);return nt.setFullYear(tt.getFullYear(),0,1),nt.setHours(0,0,0,0),nt}function eachYearOfInterval(et){requiredArgs(1,arguments);var tt=et||{},nt=toDate(tt.start),it=toDate(tt.end),ot=it.getTime();if(!(nt.getTime()<=ot))throw new RangeError("Invalid interval");var Ut=[],Ft=nt;for(Ft.setHours(0,0,0,0),Ft.setMonth(0,1);Ft.getTime()<=ot;)Ut.push(toDate(Ft)),Ft.setFullYear(Ft.getFullYear()+1);return Ut}function endOfHour(et){requiredArgs(1,arguments);var tt=toDate(et);return tt.setMinutes(59,59,999),tt}function endOfWeek(et,tt){var nt,it,ot,Ut,Ft,Qt,Bt,Vt;requiredArgs(1,arguments);var Wt=getDefaultOptions(),Xt=toInteger((nt=(it=(ot=(Ut=tt==null?void 0:tt.weekStartsOn)!==null&&Ut!==void 0?Ut:tt==null||(Ft=tt.locale)===null||Ft===void 0||(Qt=Ft.options)===null||Qt===void 0?void 0:Qt.weekStartsOn)!==null&&ot!==void 0?ot:Wt.weekStartsOn)!==null&&it!==void 0?it:(Bt=Wt.locale)===null||Bt===void 0||(Vt=Bt.options)===null||Vt===void 0?void 0:Vt.weekStartsOn)!==null&&nt!==void 0?nt:0);if(!(Xt>=0&&Xt<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Zt=toDate(et),Yt=Zt.getDay(),Mt=(Yt=1&&Yt<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var Mt=new Date(0);Mt.setFullYear(Xt+1,0,Yt),Mt.setHours(0,0,0,0);var Gt=startOfWeek(Mt,tt),en=new Date(0);en.setFullYear(Xt,0,Yt),en.setHours(0,0,0,0);var tn=startOfWeek(en,tt);return Wt.getTime()>=Gt.getTime()?Xt+1:Wt.getTime()>=tn.getTime()?Xt:Xt-1}function startOfWeekYear(et,tt){var nt,it,ot,Ut,Ft,Qt,Bt,Vt;requiredArgs(1,arguments);var Wt=getDefaultOptions(),Xt=toInteger((nt=(it=(ot=(Ut=tt==null?void 0:tt.firstWeekContainsDate)!==null&&Ut!==void 0?Ut:tt==null||(Ft=tt.locale)===null||Ft===void 0||(Qt=Ft.options)===null||Qt===void 0?void 0:Qt.firstWeekContainsDate)!==null&&ot!==void 0?ot:Wt.firstWeekContainsDate)!==null&&it!==void 0?it:(Bt=Wt.locale)===null||Bt===void 0||(Vt=Bt.options)===null||Vt===void 0?void 0:Vt.firstWeekContainsDate)!==null&&nt!==void 0?nt:1),Zt=getWeekYear(et,tt),Yt=new Date(0);Yt.setFullYear(Zt,0,Xt),Yt.setHours(0,0,0,0);var Mt=startOfWeek(Yt,tt);return Mt}var MILLISECONDS_IN_WEEK=6048e5;function getWeek(et,tt){requiredArgs(1,arguments);var nt=toDate(et),it=startOfWeek(nt,tt).getTime()-startOfWeekYear(nt,tt).getTime();return Math.round(it/MILLISECONDS_IN_WEEK)+1}function getYear(et){return requiredArgs(1,arguments),toDate(et).getFullYear()}function startOfHour(et){requiredArgs(1,arguments);var tt=toDate(et);return tt.setMinutes(0,0,0),tt}function subDays(et,tt){requiredArgs(2,arguments);var nt=toInteger(tt);return addDays(et,-nt)}function roundToNearestMinutes(et,tt){var nt;if(arguments.length<1)throw new TypeError("1 argument required, but only none provided present");var it=toInteger((nt=tt==null?void 0:tt.nearestTo)!==null&&nt!==void 0?nt:1);if(it<1||it>30)throw new RangeError("`options.nearestTo` must be between 1 and 30");var ot=toDate(et),Ut=ot.getSeconds(),Ft=ot.getMinutes()+Ut/60,Qt=getRoundingMethod(tt==null?void 0:tt.roundingMethod),Bt=Qt(Ft/it)*it,Vt=Ft%it,Wt=Math.round(Vt/it)*it;return new Date(ot.getFullYear(),ot.getMonth(),ot.getDate(),ot.getHours(),Bt+Wt)}function subMonths(et,tt){requiredArgs(2,arguments);var nt=toInteger(tt);return addMonths(et,-nt)}function subHours(et,tt){requiredArgs(2,arguments);var nt=toInteger(tt);return addHours(et,-nt)}function subMinutes(et,tt){requiredArgs(2,arguments);var nt=toInteger(tt);return addMinutes(et,-nt)}function subQuarters(et,tt){requiredArgs(2,arguments);var nt=toInteger(tt);return addQuarters(et,-nt)}function subWeeks(et,tt){requiredArgs(2,arguments);var nt=toInteger(tt);return addWeeks(et,-nt)}function subYears(et,tt){requiredArgs(2,arguments);var nt=toInteger(tt);return addYears(et,-nt)}var distExports={},dist={get exports(){return distExports},set exports(et){distExports=et}};/*! For license information please see index.js.LICENSE.txt */(function(module,exports){(function(et,tt){module.exports=tt()})(window,function(){return function(et){function tt(Vt){for(var Wt,Xt,Zt=Vt[0],Yt=Vt[1],Mt=0,Gt=[];Mt1?"s":"")+" required, but only "+An.length+" present")}function Vt(Wn){if(Wn===null||Wn===!0||Wn===!1)return NaN;var An=Number(Wn);return isNaN(An)?An:An<0?Math.ceil(An):Math.floor(An)}var Wt={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},Xt=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,Zt=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,Yt=/^([+-])(\d{2})(?::?(\d{2}))?$/;function Mt(Wn){var An,Pn={},jn=Wn.split(Wt.dateTimeDelimiter);if(jn.length>2)return Pn;if(/:/.test(jn[0])?An=jn[0]:(Pn.date=jn[0],An=jn[1],Wt.timeZoneDelimiter.test(Pn.date)&&(Pn.date=Wn.split(Wt.timeZoneDelimiter)[0],An=Wn.substr(Pn.date.length,Wn.length))),An){var $n=Wt.timezone.exec(An);$n?(Pn.time=An.replace($n[1],""),Pn.timezone=$n[1]):Pn.time=An}return Pn}function Gt(Wn,An){var Pn=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+An)+"})|(\\d{2}|[+-]\\d{"+(2+An)+"})$)"),jn=Wn.match(Pn);if(!jn)return{year:NaN,restDateString:""};var $n=jn[1]?parseInt(jn[1]):null,pr=jn[2]?parseInt(jn[2]):null;return{year:pr===null?$n:100*pr,restDateString:Wn.slice((jn[1]||jn[2]).length)}}function en(Wn,An){if(An===null)return new Date(NaN);var Pn=Wn.match(Xt);if(!Pn)return new Date(NaN);var jn=!!Pn[4],$n=tn(Pn[1]),pr=tn(Pn[2])-1,Sr=tn(Pn[3]),Qr=tn(Pn[4]),Ir=tn(Pn[5])-1;if(jn)return function(Rr,wr,br){return wr>=1&&wr<=53&&br>=0&&br<=6}(0,Qr,Ir)?function(Rr,wr,br){var Nr=new Date(0);Nr.setUTCFullYear(Rr,0,4);var kr=Nr.getUTCDay()||7,_i=7*(wr-1)+br+1-kr;return Nr.setUTCDate(Nr.getUTCDate()+_i),Nr}(An,Qr,Ir):new Date(NaN);var yr=new Date(0);return function(Rr,wr,br){return wr>=0&&wr<=11&&br>=1&&br<=(Kt[wr]||(dn(Rr)?29:28))}(An,pr,Sr)&&function(Rr,wr){return wr>=1&&wr<=(dn(Rr)?366:365)}(An,$n)?(yr.setUTCFullYear(An,pr,Math.max($n,Sr)),yr):new Date(NaN)}function tn(Wn){return Wn?parseInt(Wn):1}function ln(Wn){var An=Wn.match(Zt);if(!An)return NaN;var Pn=nn(An[1]),jn=nn(An[2]),$n=nn(An[3]);return function(pr,Sr,Qr){return pr===24?Sr===0&&Qr===0:Qr>=0&&Qr<60&&Sr>=0&&Sr<60&&pr>=0&&pr<25}(Pn,jn,$n)?36e5*Pn+6e4*jn+1e3*$n:NaN}function nn(Wn){return Wn&&parseFloat(Wn.replace(",","."))||0}function sn(Wn){if(Wn==="Z")return 0;var An=Wn.match(Yt);if(!An)return 0;var Pn=An[1]==="+"?-1:1,jn=parseInt(An[2]),$n=An[3]&&parseInt(An[3])||0;return function(pr,Sr){return Sr>=0&&Sr<=59}(0,$n)?Pn*(36e5*jn+6e4*$n):NaN}var Kt=[31,null,31,30,31,30,31,31,30,31,30,31];function dn(Wn){return Wn%400==0||Wn%4==0&&Wn%100!=0}function Qn(Wn){return(Qn=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(An){return typeof An}:function(An){return An&&typeof Symbol=="function"&&An.constructor===Symbol&&An!==Symbol.prototype?"symbol":typeof An})(Wn)}function En(Wn){return Bt(1,arguments),Wn instanceof Date||Qn(Wn)==="object"&&Object.prototype.toString.call(Wn)==="[object Date]"}function an(Wn){return(an=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(An){return typeof An}:function(An){return An&&typeof Symbol=="function"&&An.constructor===Symbol&&An!==Symbol.prototype?"symbol":typeof An})(Wn)}function rn(Wn){Bt(1,arguments);var An=Object.prototype.toString.call(Wn);return Wn instanceof Date||an(Wn)==="object"&&An==="[object Date]"?new Date(Wn.getTime()):typeof Wn=="number"||An==="[object Number]"?new Date(Wn):(typeof Wn!="string"&&An!=="[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 gn(Wn){const An=function(Pn,jn){var $n;Bt(1,arguments);var pr=Vt(($n=jn==null?void 0:jn.additionalDigits)!==null&&$n!==void 0?$n:2);if(pr!==2&&pr!==1&&pr!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(typeof Pn!="string"&&Object.prototype.toString.call(Pn)!=="[object String]")return new Date(NaN);var Sr,Qr=Mt(Pn);if(Qr.date){var Ir=Gt(Qr.date,pr);Sr=en(Ir.restDateString,Ir.year)}if(!Sr||isNaN(Sr.getTime()))return new Date(NaN);var yr,Rr=Sr.getTime(),wr=0;if(Qr.time&&(wr=ln(Qr.time),isNaN(wr)))return new Date(NaN);if(!Qr.timezone){var br=new Date(Rr+wr),Nr=new Date(0);return Nr.setFullYear(br.getUTCFullYear(),br.getUTCMonth(),br.getUTCDate()),Nr.setHours(br.getUTCHours(),br.getUTCMinutes(),br.getUTCSeconds(),br.getUTCMilliseconds()),Nr}return yr=sn(Qr.timezone),isNaN(yr)?new Date(NaN):new Date(Rr+wr+yr)}(Wn);if(!function(Pn){if(Bt(1,arguments),!En(Pn)&&typeof Pn!="number")return!1;var jn=rn(Pn);return!isNaN(Number(jn))}(An))throw new Error(`Invalid ISO 8601 date string (${Wn})`);return An}const un=Math.pow(2,20),Un=un;var _n=nt(4),vn=nt(30);function pn(Wn){return Ft()(Wn,{cycles:!0})}var Rn=function(Wn,An){var Pn={};for(var jn in Wn)Object.prototype.hasOwnProperty.call(Wn,jn)&&An.indexOf(jn)<0&&(Pn[jn]=Wn[jn]);if(Wn!=null&&typeof Object.getOwnPropertySymbols=="function"){var $n=0;for(jn=Object.getOwnPropertySymbols(Wn);$nPn?Object(vn.a)(Ir):Ir;if(!Wn.stack)return{message:pn(jn(Wn))};const{name:$n,message:pr,stack:Sr}=Wn,Qr=Rn(Wn,["name","message","stack"]);return{name:$n,message:pr!==void 0?pr:pn(jn(Wn)),stack:Sr,meta:Qr&&Object.keys(Qr).length===0?void 0:jn(Qr)}}function fn(Wn,An={}){const{message:Pn,stack:jn,meta:$n}=Sn(Wn,An);return`${jn||Pn||""}${$n&&Object.keys($n).length>0?` -- ${pn($n)}`:""}`}var cn=nt(39),bn=nt(102),Vn=nt.n(bn),Mn=function(Wn,An,Pn,jn){return new(Pn||(Pn=Promise))(function($n,pr){function Sr(yr){try{Ir(jn.next(yr))}catch(Rr){pr(Rr)}}function Qr(yr){try{Ir(jn.throw(yr))}catch(Rr){pr(Rr)}}function Ir(yr){var Rr;yr.done?$n(yr.value):(Rr=yr.value,Rr instanceof Pn?Rr:new Pn(function(wr){wr(Rr)})).then(Sr,Qr)}Ir((jn=jn.apply(Wn,An||[])).next())})},Zn=function(Wn,An){var Pn={};for(var jn in Wn)Object.prototype.hasOwnProperty.call(Wn,jn)&&An.indexOf(jn)<0&&(Pn[jn]=Wn[jn]);if(Wn!=null&&typeof Object.getOwnPropertySymbols=="function"){var $n=0;for(jn=Object.getOwnPropertySymbols(Wn);$n{var{timestamp:An,level:Pn,message:jn,error:$n}=Wn,pr=Cn(Wn,["timestamp","level","message","error"]);const Sr=Object.assign(Object.assign({timestamp:An?gn(An).getTime():new Date().getTime(),level:Pn.toUpperCase(),message:jn},$n?{error:Sn($n)}:{}),{meta:Object.assign(Object.assign({},kn),pr)});return Ft()(Sr,{cycles:!0})}):Qt.format.printf(Wn=>{var{timestamp:An,level:Pn,message:jn,error:$n}=Wn,pr=Cn(Wn,["timestamp","level","message","error"]);let Sr=`${An||new Date().toISOString()} ${Pn.toUpperCase()}: ${jn} `;return Object.keys(pr).length>0&&(Sr+=Ft()(pr,{cycles:!0})),$n&&(Sr+=` +${fn($n)}`),Sr}),Fn=Object(Qt.createLogger)({level:_n.f});if(Fn.add(new Qt.transports.Console({format:hn,level:"debug"})),Fn.transports.forEach(Wn=>{Wn.silent=!_n.g}),_n.d&&Fn.add(new In(_n.d,kn)),_n.h){const Wn=ot.resolve(it.tmpdir(),`silly-${_n.a}.log`);Fn.debug("Logging silly logs to file",{filename:Wn}),Fn.add(new Qt.transports.File({filename:Wn,maxsize:1*Un,maxFiles:10,format:Qt.format.combine((wn="silly",Object(Qt.format)(An=>An.level===wn&&An)()),hn),level:"silly"}))}var wn},function(et,tt,nt){nt.d(tt,"a",function(){return it});const it={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:2592e6,year:31536e6}},function(et,tt){var nt,it,ot=et.exports={};function Ut(){throw new Error("setTimeout has not been defined")}function Ft(){throw new Error("clearTimeout has not been defined")}function Qt(en){if(nt===setTimeout)return setTimeout(en,0);if((nt===Ut||!nt)&&setTimeout)return nt=setTimeout,setTimeout(en,0);try{return nt(en,0)}catch{try{return nt.call(null,en,0)}catch{return nt.call(this,en,0)}}}(function(){try{nt=typeof setTimeout=="function"?setTimeout:Ut}catch{nt=Ut}try{it=typeof clearTimeout=="function"?clearTimeout:Ft}catch{it=Ft}})();var Bt,Vt=[],Wt=!1,Xt=-1;function Zt(){Wt&&Bt&&(Wt=!1,Bt.length?Vt=Bt.concat(Vt):Xt=-1,Vt.length&&Yt())}function Yt(){if(!Wt){var en=Qt(Zt);Wt=!0;for(var tn=Vt.length;tn;){for(Bt=Vt,Vt=[];++Xt1)for(var ln=1;ln=Qt())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Qt().toString(16)+" bytes");return 0|hn}function Gt(hn,Fn){if(Vt.isBuffer(hn))return hn.length;if(typeof ArrayBuffer<"u"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(hn)||hn instanceof ArrayBuffer))return hn.byteLength;typeof hn!="string"&&(hn=""+hn);var wn=hn.length;if(wn===0)return 0;for(var Wn=!1;;)switch(Fn){case"ascii":case"latin1":case"binary":return wn;case"utf8":case"utf-8":case void 0:return In(hn).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*wn;case"hex":return wn>>>1;case"base64":return Cn(hn).length;default:if(Wn)return In(hn).length;Fn=(""+Fn).toLowerCase(),Wn=!0}}function en(hn,Fn,wn){var Wn=!1;if((Fn===void 0||Fn<0)&&(Fn=0),Fn>this.length||((wn===void 0||wn>this.length)&&(wn=this.length),wn<=0)||(wn>>>=0)<=(Fn>>>=0))return"";for(hn||(hn="utf8");;)switch(hn){case"hex":return _n(this,Fn,wn);case"utf8":case"utf-8":return gn(this,Fn,wn);case"ascii":return un(this,Fn,wn);case"latin1":case"binary":return Un(this,Fn,wn);case"base64":return rn(this,Fn,wn);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return vn(this,Fn,wn);default:if(Wn)throw new TypeError("Unknown encoding: "+hn);hn=(hn+"").toLowerCase(),Wn=!0}}function tn(hn,Fn,wn){var Wn=hn[Fn];hn[Fn]=hn[wn],hn[wn]=Wn}function ln(hn,Fn,wn,Wn,An){if(hn.length===0)return-1;if(typeof wn=="string"?(Wn=wn,wn=0):wn>2147483647?wn=2147483647:wn<-2147483648&&(wn=-2147483648),wn=+wn,isNaN(wn)&&(wn=An?0:hn.length-1),wn<0&&(wn=hn.length+wn),wn>=hn.length){if(An)return-1;wn=hn.length-1}else if(wn<0){if(!An)return-1;wn=0}if(typeof Fn=="string"&&(Fn=Vt.from(Fn,Wn)),Vt.isBuffer(Fn))return Fn.length===0?-1:nn(hn,Fn,wn,Wn,An);if(typeof Fn=="number")return Fn&=255,Vt.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?An?Uint8Array.prototype.indexOf.call(hn,Fn,wn):Uint8Array.prototype.lastIndexOf.call(hn,Fn,wn):nn(hn,[Fn],wn,Wn,An);throw new TypeError("val must be string, number or Buffer")}function nn(hn,Fn,wn,Wn,An){var Pn,jn=1,$n=hn.length,pr=Fn.length;if(Wn!==void 0&&((Wn=String(Wn).toLowerCase())==="ucs2"||Wn==="ucs-2"||Wn==="utf16le"||Wn==="utf-16le")){if(hn.length<2||Fn.length<2)return-1;jn=2,$n/=2,pr/=2,wn/=2}function Sr(Rr,wr){return jn===1?Rr[wr]:Rr.readUInt16BE(wr*jn)}if(An){var Qr=-1;for(Pn=wn;Pn<$n;Pn++)if(Sr(hn,Pn)===Sr(Fn,Qr===-1?0:Pn-Qr)){if(Qr===-1&&(Qr=Pn),Pn-Qr+1===pr)return Qr*jn}else Qr!==-1&&(Pn-=Pn-Qr),Qr=-1}else for(wn+pr>$n&&(wn=$n-pr),Pn=wn;Pn>=0;Pn--){for(var Ir=!0,yr=0;yrAn&&(Wn=An):Wn=An;var Pn=Fn.length;if(Pn%2!=0)throw new TypeError("Invalid hex string");Wn>Pn/2&&(Wn=Pn/2);for(var jn=0;jn>8,pr=jn%256,Sr.push(pr),Sr.push($n);return Sr}(Fn,hn.length-wn),hn,wn,Wn)}function rn(hn,Fn,wn){return Fn===0&&wn===hn.length?ot.fromByteArray(hn):ot.fromByteArray(hn.slice(Fn,wn))}function gn(hn,Fn,wn){wn=Math.min(hn.length,wn);for(var Wn=[],An=Fn;An239?4:Sr>223?3:Sr>191?2:1;if(An+Ir<=wn)switch(Ir){case 1:Sr<128&&(Qr=Sr);break;case 2:(192&(Pn=hn[An+1]))==128&&(pr=(31&Sr)<<6|63&Pn)>127&&(Qr=pr);break;case 3:Pn=hn[An+1],jn=hn[An+2],(192&Pn)==128&&(192&jn)==128&&(pr=(15&Sr)<<12|(63&Pn)<<6|63&jn)>2047&&(pr<55296||pr>57343)&&(Qr=pr);break;case 4:Pn=hn[An+1],jn=hn[An+2],$n=hn[An+3],(192&Pn)==128&&(192&jn)==128&&(192&$n)==128&&(pr=(15&Sr)<<18|(63&Pn)<<12|(63&jn)<<6|63&$n)>65535&&pr<1114112&&(Qr=pr)}Qr===null?(Qr=65533,Ir=1):Qr>65535&&(Qr-=65536,Wn.push(Qr>>>10&1023|55296),Qr=56320|1023&Qr),Wn.push(Qr),An+=Ir}return function(yr){var Rr=yr.length;if(Rr<=4096)return String.fromCharCode.apply(String,yr);for(var wr="",br=0;br0&&(hn=this.toString("hex",0,Fn).match(/.{2}/g).join(" "),this.length>Fn&&(hn+=" ... ")),""},Vt.prototype.compare=function(hn,Fn,wn,Wn,An){if(!Vt.isBuffer(hn))throw new TypeError("Argument must be a Buffer");if(Fn===void 0&&(Fn=0),wn===void 0&&(wn=hn?hn.length:0),Wn===void 0&&(Wn=0),An===void 0&&(An=this.length),Fn<0||wn>hn.length||Wn<0||An>this.length)throw new RangeError("out of range index");if(Wn>=An&&Fn>=wn)return 0;if(Wn>=An)return-1;if(Fn>=wn)return 1;if(this===hn)return 0;for(var Pn=(An>>>=0)-(Wn>>>=0),jn=(wn>>>=0)-(Fn>>>=0),$n=Math.min(Pn,jn),pr=this.slice(Wn,An),Sr=hn.slice(Fn,wn),Qr=0;Qr<$n;++Qr)if(pr[Qr]!==Sr[Qr]){Pn=pr[Qr],jn=Sr[Qr];break}return PnAn)&&(wn=An),hn.length>0&&(wn<0||Fn<0)||Fn>this.length)throw new RangeError("Attempt to write outside buffer bounds");Wn||(Wn="utf8");for(var Pn=!1;;)switch(Wn){case"hex":return sn(this,hn,Fn,wn);case"utf8":case"utf-8":return Kt(this,hn,Fn,wn);case"ascii":return dn(this,hn,Fn,wn);case"latin1":case"binary":return Qn(this,hn,Fn,wn);case"base64":return En(this,hn,Fn,wn);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return an(this,hn,Fn,wn);default:if(Pn)throw new TypeError("Unknown encoding: "+Wn);Wn=(""+Wn).toLowerCase(),Pn=!0}},Vt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function un(hn,Fn,wn){var Wn="";wn=Math.min(hn.length,wn);for(var An=Fn;AnWn)&&(wn=Wn);for(var An="",Pn=Fn;Pnwn)throw new RangeError("Trying to access beyond buffer length")}function Rn(hn,Fn,wn,Wn,An,Pn){if(!Vt.isBuffer(hn))throw new TypeError('"buffer" argument must be a Buffer instance');if(Fn>An||Fnhn.length)throw new RangeError("Index out of range")}function Sn(hn,Fn,wn,Wn){Fn<0&&(Fn=65535+Fn+1);for(var An=0,Pn=Math.min(hn.length-wn,2);An>>8*(Wn?An:1-An)}function fn(hn,Fn,wn,Wn){Fn<0&&(Fn=4294967295+Fn+1);for(var An=0,Pn=Math.min(hn.length-wn,4);An>>8*(Wn?An:3-An)&255}function cn(hn,Fn,wn,Wn,An,Pn){if(wn+Wn>hn.length)throw new RangeError("Index out of range");if(wn<0)throw new RangeError("Index out of range")}function bn(hn,Fn,wn,Wn,An){return An||cn(hn,0,wn,4),Ut.write(hn,Fn,wn,Wn,23,4),wn+4}function Vn(hn,Fn,wn,Wn,An){return An||cn(hn,0,wn,8),Ut.write(hn,Fn,wn,Wn,52,8),wn+8}Vt.prototype.slice=function(hn,Fn){var wn,Wn=this.length;if((hn=~~hn)<0?(hn+=Wn)<0&&(hn=0):hn>Wn&&(hn=Wn),(Fn=Fn===void 0?Wn:~~Fn)<0?(Fn+=Wn)<0&&(Fn=0):Fn>Wn&&(Fn=Wn),Fn0&&(An*=256);)Wn+=this[hn+--Fn]*An;return Wn},Vt.prototype.readUInt8=function(hn,Fn){return Fn||pn(hn,1,this.length),this[hn]},Vt.prototype.readUInt16LE=function(hn,Fn){return Fn||pn(hn,2,this.length),this[hn]|this[hn+1]<<8},Vt.prototype.readUInt16BE=function(hn,Fn){return Fn||pn(hn,2,this.length),this[hn]<<8|this[hn+1]},Vt.prototype.readUInt32LE=function(hn,Fn){return Fn||pn(hn,4,this.length),(this[hn]|this[hn+1]<<8|this[hn+2]<<16)+16777216*this[hn+3]},Vt.prototype.readUInt32BE=function(hn,Fn){return Fn||pn(hn,4,this.length),16777216*this[hn]+(this[hn+1]<<16|this[hn+2]<<8|this[hn+3])},Vt.prototype.readIntLE=function(hn,Fn,wn){hn|=0,Fn|=0,wn||pn(hn,Fn,this.length);for(var Wn=this[hn],An=1,Pn=0;++Pn=(An*=128)&&(Wn-=Math.pow(2,8*Fn)),Wn},Vt.prototype.readIntBE=function(hn,Fn,wn){hn|=0,Fn|=0,wn||pn(hn,Fn,this.length);for(var Wn=Fn,An=1,Pn=this[hn+--Wn];Wn>0&&(An*=256);)Pn+=this[hn+--Wn]*An;return Pn>=(An*=128)&&(Pn-=Math.pow(2,8*Fn)),Pn},Vt.prototype.readInt8=function(hn,Fn){return Fn||pn(hn,1,this.length),128&this[hn]?-1*(255-this[hn]+1):this[hn]},Vt.prototype.readInt16LE=function(hn,Fn){Fn||pn(hn,2,this.length);var wn=this[hn]|this[hn+1]<<8;return 32768&wn?4294901760|wn:wn},Vt.prototype.readInt16BE=function(hn,Fn){Fn||pn(hn,2,this.length);var wn=this[hn+1]|this[hn]<<8;return 32768&wn?4294901760|wn:wn},Vt.prototype.readInt32LE=function(hn,Fn){return Fn||pn(hn,4,this.length),this[hn]|this[hn+1]<<8|this[hn+2]<<16|this[hn+3]<<24},Vt.prototype.readInt32BE=function(hn,Fn){return Fn||pn(hn,4,this.length),this[hn]<<24|this[hn+1]<<16|this[hn+2]<<8|this[hn+3]},Vt.prototype.readFloatLE=function(hn,Fn){return Fn||pn(hn,4,this.length),Ut.read(this,hn,!0,23,4)},Vt.prototype.readFloatBE=function(hn,Fn){return Fn||pn(hn,4,this.length),Ut.read(this,hn,!1,23,4)},Vt.prototype.readDoubleLE=function(hn,Fn){return Fn||pn(hn,8,this.length),Ut.read(this,hn,!0,52,8)},Vt.prototype.readDoubleBE=function(hn,Fn){return Fn||pn(hn,8,this.length),Ut.read(this,hn,!1,52,8)},Vt.prototype.writeUIntLE=function(hn,Fn,wn,Wn){hn=+hn,Fn|=0,wn|=0,Wn||Rn(this,hn,Fn,wn,Math.pow(2,8*wn)-1,0);var An=1,Pn=0;for(this[Fn]=255&hn;++Pn=0&&(Pn*=256);)this[Fn+An]=hn/Pn&255;return Fn+wn},Vt.prototype.writeUInt8=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,1,255,0),Vt.TYPED_ARRAY_SUPPORT||(hn=Math.floor(hn)),this[Fn]=255&hn,Fn+1},Vt.prototype.writeUInt16LE=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,2,65535,0),Vt.TYPED_ARRAY_SUPPORT?(this[Fn]=255&hn,this[Fn+1]=hn>>>8):Sn(this,hn,Fn,!0),Fn+2},Vt.prototype.writeUInt16BE=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,2,65535,0),Vt.TYPED_ARRAY_SUPPORT?(this[Fn]=hn>>>8,this[Fn+1]=255&hn):Sn(this,hn,Fn,!1),Fn+2},Vt.prototype.writeUInt32LE=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,4,4294967295,0),Vt.TYPED_ARRAY_SUPPORT?(this[Fn+3]=hn>>>24,this[Fn+2]=hn>>>16,this[Fn+1]=hn>>>8,this[Fn]=255&hn):fn(this,hn,Fn,!0),Fn+4},Vt.prototype.writeUInt32BE=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,4,4294967295,0),Vt.TYPED_ARRAY_SUPPORT?(this[Fn]=hn>>>24,this[Fn+1]=hn>>>16,this[Fn+2]=hn>>>8,this[Fn+3]=255&hn):fn(this,hn,Fn,!1),Fn+4},Vt.prototype.writeIntLE=function(hn,Fn,wn,Wn){if(hn=+hn,Fn|=0,!Wn){var An=Math.pow(2,8*wn-1);Rn(this,hn,Fn,wn,An-1,-An)}var Pn=0,jn=1,$n=0;for(this[Fn]=255&hn;++Pn>0)-$n&255;return Fn+wn},Vt.prototype.writeIntBE=function(hn,Fn,wn,Wn){if(hn=+hn,Fn|=0,!Wn){var An=Math.pow(2,8*wn-1);Rn(this,hn,Fn,wn,An-1,-An)}var Pn=wn-1,jn=1,$n=0;for(this[Fn+Pn]=255&hn;--Pn>=0&&(jn*=256);)hn<0&&$n===0&&this[Fn+Pn+1]!==0&&($n=1),this[Fn+Pn]=(hn/jn>>0)-$n&255;return Fn+wn},Vt.prototype.writeInt8=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,1,127,-128),Vt.TYPED_ARRAY_SUPPORT||(hn=Math.floor(hn)),hn<0&&(hn=255+hn+1),this[Fn]=255&hn,Fn+1},Vt.prototype.writeInt16LE=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,2,32767,-32768),Vt.TYPED_ARRAY_SUPPORT?(this[Fn]=255&hn,this[Fn+1]=hn>>>8):Sn(this,hn,Fn,!0),Fn+2},Vt.prototype.writeInt16BE=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,2,32767,-32768),Vt.TYPED_ARRAY_SUPPORT?(this[Fn]=hn>>>8,this[Fn+1]=255&hn):Sn(this,hn,Fn,!1),Fn+2},Vt.prototype.writeInt32LE=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,4,2147483647,-2147483648),Vt.TYPED_ARRAY_SUPPORT?(this[Fn]=255&hn,this[Fn+1]=hn>>>8,this[Fn+2]=hn>>>16,this[Fn+3]=hn>>>24):fn(this,hn,Fn,!0),Fn+4},Vt.prototype.writeInt32BE=function(hn,Fn,wn){return hn=+hn,Fn|=0,wn||Rn(this,hn,Fn,4,2147483647,-2147483648),hn<0&&(hn=4294967295+hn+1),Vt.TYPED_ARRAY_SUPPORT?(this[Fn]=hn>>>24,this[Fn+1]=hn>>>16,this[Fn+2]=hn>>>8,this[Fn+3]=255&hn):fn(this,hn,Fn,!1),Fn+4},Vt.prototype.writeFloatLE=function(hn,Fn,wn){return bn(this,hn,Fn,!0,wn)},Vt.prototype.writeFloatBE=function(hn,Fn,wn){return bn(this,hn,Fn,!1,wn)},Vt.prototype.writeDoubleLE=function(hn,Fn,wn){return Vn(this,hn,Fn,!0,wn)},Vt.prototype.writeDoubleBE=function(hn,Fn,wn){return Vn(this,hn,Fn,!1,wn)},Vt.prototype.copy=function(hn,Fn,wn,Wn){if(wn||(wn=0),Wn||Wn===0||(Wn=this.length),Fn>=hn.length&&(Fn=hn.length),Fn||(Fn=0),Wn>0&&Wn=this.length)throw new RangeError("sourceStart out of bounds");if(Wn<0)throw new RangeError("sourceEnd out of bounds");Wn>this.length&&(Wn=this.length),hn.length-Fn=0;--An)hn[An+Fn]=this[An+wn];else if(Pn<1e3||!Vt.TYPED_ARRAY_SUPPORT)for(An=0;An>>=0,wn=wn===void 0?this.length:wn>>>0,hn||(hn=0),typeof hn=="number")for(Pn=Fn;Pn55295&&wn<57344){if(!An){if(wn>56319){(Fn-=3)>-1&&Pn.push(239,191,189);continue}if(jn+1===Wn){(Fn-=3)>-1&&Pn.push(239,191,189);continue}An=wn;continue}if(wn<56320){(Fn-=3)>-1&&Pn.push(239,191,189),An=wn;continue}wn=65536+(An-55296<<10|wn-56320)}else An&&(Fn-=3)>-1&&Pn.push(239,191,189);if(An=null,wn<128){if((Fn-=1)<0)break;Pn.push(wn)}else if(wn<2048){if((Fn-=2)<0)break;Pn.push(wn>>6|192,63&wn|128)}else if(wn<65536){if((Fn-=3)<0)break;Pn.push(wn>>12|224,wn>>6&63|128,63&wn|128)}else{if(!(wn<1114112))throw new Error("Invalid code point");if((Fn-=4)<0)break;Pn.push(wn>>18|240,wn>>12&63|128,wn>>6&63|128,63&wn|128)}}return Pn}function Cn(hn){return ot.toByteArray(function(Fn){if((Fn=function(wn){return wn.trim?wn.trim():wn.replace(/^\s+|\s+$/g,"")}(Fn).replace(Mn,"")).length<2)return"";for(;Fn.length%4!=0;)Fn+="=";return Fn}(hn))}function kn(hn,Fn,wn,Wn){for(var An=0;An=Fn.length||An>=hn.length);++An)Fn[An+wn]=hn[An];return An}}).call(this,nt(6))},function(et,tt){var nt;nt=function(){return this}();try{nt=nt||new Function("return this")()}catch{typeof window=="object"&&(nt=window)}et.exports=nt},function(et,tt){typeof Object.create=="function"?et.exports=function(nt,it){it&&(nt.super_=it,nt.prototype=Object.create(it.prototype,{constructor:{value:nt,enumerable:!1,writable:!0,configurable:!0}}))}:et.exports=function(nt,it){if(it){nt.super_=it;var ot=function(){};ot.prototype=it.prototype,nt.prototype=new ot,nt.prototype.constructor=nt}}},function(et,tt,nt){nt.d(tt,"a",function(){return it});const it=ot=>new Promise(Ut=>setTimeout(Ut,ot||0))},function(et,tt,nt){var it=nt(99),ot=it,Ut=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||Ut!==void 0&&Ut||typeof self<"u"&&self||function(){return this}.call(null)||Function("return this")(),Ft=nt(98);ot.object.extend(proto,Ft),ot.exportSymbol("proto.v1.signaling.api.CreatePeerRequest",null,Ut),ot.exportSymbol("proto.v1.signaling.api.CreatePeerResponse",null,Ut),ot.exportSymbol("proto.v1.signaling.api.DeletePeerRequest",null,Ut),ot.exportSymbol("proto.v1.signaling.api.DeletePeerResponse",null,Ut),ot.exportSymbol("proto.v1.signaling.api.GetHealthRequest",null,Ut),ot.exportSymbol("proto.v1.signaling.api.GetHealthResponse",null,Ut),ot.exportSymbol("proto.v1.signaling.api.GetIceServersRequest",null,Ut),ot.exportSymbol("proto.v1.signaling.api.GetIceServersResponse",null,Ut),ot.exportSymbol("proto.v1.signaling.api.GetPeersRequest",null,Ut),ot.exportSymbol("proto.v1.signaling.api.GetPeersResponse",null,Ut),ot.exportSymbol("proto.v1.signaling.api.Peer",null,Ut),ot.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamRequest",null,Ut),ot.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamResponse",null,Ut),ot.exportSymbol("proto.v1.signaling.api.RefreshPeerRequest",null,Ut),ot.exportSymbol("proto.v1.signaling.api.RefreshPeerResponse",null,Ut),ot.exportSymbol("proto.v1.signaling.api.SendSignalRequest",null,Ut),ot.exportSymbol("proto.v1.signaling.api.SendSignalResponse",null,Ut),ot.exportSymbol("proto.v1.signaling.api.SessionType",null,Ut),ot.exportSymbol("proto.v1.signaling.api.Signal",null,Ut),proto.v1.signaling.api.Peer=function(Qt){it.Message.initialize(this,Qt,0,-1,proto.v1.signaling.api.Peer.repeatedFields_,null)},ot.inherits(proto.v1.signaling.api.Peer,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Peer.displayName="proto.v1.signaling.api.Peer"),proto.v1.signaling.api.Signal=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.Signal,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Signal.displayName="proto.v1.signaling.api.Signal"),proto.v1.signaling.api.GetHealthRequest=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.GetHealthRequest,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthRequest.displayName="proto.v1.signaling.api.GetHealthRequest"),proto.v1.signaling.api.GetHealthResponse=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.GetHealthResponse,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthResponse.displayName="proto.v1.signaling.api.GetHealthResponse"),proto.v1.signaling.api.CreatePeerRequest=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.CreatePeerRequest,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerRequest.displayName="proto.v1.signaling.api.CreatePeerRequest"),proto.v1.signaling.api.CreatePeerResponse=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.CreatePeerResponse,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerResponse.displayName="proto.v1.signaling.api.CreatePeerResponse"),proto.v1.signaling.api.DeletePeerRequest=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.DeletePeerRequest,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerRequest.displayName="proto.v1.signaling.api.DeletePeerRequest"),proto.v1.signaling.api.DeletePeerResponse=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.DeletePeerResponse,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerResponse.displayName="proto.v1.signaling.api.DeletePeerResponse"),proto.v1.signaling.api.RefreshPeerRequest=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.RefreshPeerRequest,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerRequest.displayName="proto.v1.signaling.api.RefreshPeerRequest"),proto.v1.signaling.api.RefreshPeerResponse=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.RefreshPeerResponse,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerResponse.displayName="proto.v1.signaling.api.RefreshPeerResponse"),proto.v1.signaling.api.GetPeersRequest=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.GetPeersRequest,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersRequest.displayName="proto.v1.signaling.api.GetPeersRequest"),proto.v1.signaling.api.GetPeersResponse=function(Qt){it.Message.initialize(this,Qt,0,-1,proto.v1.signaling.api.GetPeersResponse.repeatedFields_,null)},ot.inherits(proto.v1.signaling.api.GetPeersResponse,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersResponse.displayName="proto.v1.signaling.api.GetPeersResponse"),proto.v1.signaling.api.GetIceServersRequest=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.GetIceServersRequest,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersRequest.displayName="proto.v1.signaling.api.GetIceServersRequest"),proto.v1.signaling.api.GetIceServersResponse=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.GetIceServersResponse,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersResponse.displayName="proto.v1.signaling.api.GetIceServersResponse"),proto.v1.signaling.api.SendSignalRequest=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.SendSignalRequest,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalRequest.displayName="proto.v1.signaling.api.SendSignalRequest"),proto.v1.signaling.api.SendSignalResponse=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.SendSignalResponse,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalResponse.displayName="proto.v1.signaling.api.SendSignalResponse"),proto.v1.signaling.api.ReceiveSignalStreamRequest=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.ReceiveSignalStreamRequest,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.displayName="proto.v1.signaling.api.ReceiveSignalStreamRequest"),proto.v1.signaling.api.ReceiveSignalStreamResponse=function(Qt){it.Message.initialize(this,Qt,0,-1,null,null)},ot.inherits(proto.v1.signaling.api.ReceiveSignalStreamResponse,it.Message),ot.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.displayName="proto.v1.signaling.api.ReceiveSignalStreamResponse"),proto.v1.signaling.api.Peer.repeatedFields_=[5],it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Peer.prototype.toObject=function(Qt){return proto.v1.signaling.api.Peer.toObject(Qt,this)},proto.v1.signaling.api.Peer.toObject=function(Qt,Bt){var Vt,Wt={peerId:it.Message.getFieldWithDefault(Bt,1,""),organizationId:it.Message.getFieldWithDefault(Bt,2,""),userId:(Vt=Bt.getUserId())&&Ft.StringValue.toObject(Qt,Vt),deviceId:(Vt=Bt.getDeviceId())&&Ft.StringValue.toObject(Qt,Vt),sessionIdsList:(Vt=it.Message.getRepeatedField(Bt,5))==null?void 0:Vt,peerCreatedTimestamp:(Vt=Bt.getPeerCreatedTimestamp())&&Ft.Int64Value.toObject(Qt,Vt)};return Qt&&(Wt.$jspbMessageInstance=Bt),Wt}),proto.v1.signaling.api.Peer.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.Peer;return proto.v1.signaling.api.Peer.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.Peer.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=Bt.readString();Qt.setPeerId(Vt);break;case 2:Vt=Bt.readString(),Qt.setOrganizationId(Vt);break;case 3:Vt=new Ft.StringValue,Bt.readMessage(Vt,Ft.StringValue.deserializeBinaryFromReader),Qt.setUserId(Vt);break;case 4:Vt=new Ft.StringValue,Bt.readMessage(Vt,Ft.StringValue.deserializeBinaryFromReader),Qt.setDeviceId(Vt);break;case 5:Vt=Bt.readString(),Qt.addSessionIds(Vt);break;case 6:Vt=new Ft.Int64Value,Bt.readMessage(Vt,Ft.Int64Value.deserializeBinaryFromReader),Qt.setPeerCreatedTimestamp(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.Peer.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.Peer.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.Peer.serializeBinaryToWriter=function(Qt,Bt){var Vt=void 0;(Vt=Qt.getPeerId()).length>0&&Bt.writeString(1,Vt),(Vt=Qt.getOrganizationId()).length>0&&Bt.writeString(2,Vt),(Vt=Qt.getUserId())!=null&&Bt.writeMessage(3,Vt,Ft.StringValue.serializeBinaryToWriter),(Vt=Qt.getDeviceId())!=null&&Bt.writeMessage(4,Vt,Ft.StringValue.serializeBinaryToWriter),(Vt=Qt.getSessionIdsList()).length>0&&Bt.writeRepeatedString(5,Vt),(Vt=Qt.getPeerCreatedTimestamp())!=null&&Bt.writeMessage(6,Vt,Ft.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.Peer.prototype.getPeerId=function(){return it.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.Peer.prototype.setPeerId=function(Qt){return it.Message.setProto3StringField(this,1,Qt)},proto.v1.signaling.api.Peer.prototype.getOrganizationId=function(){return it.Message.getFieldWithDefault(this,2,"")},proto.v1.signaling.api.Peer.prototype.setOrganizationId=function(Qt){return it.Message.setProto3StringField(this,2,Qt)},proto.v1.signaling.api.Peer.prototype.getUserId=function(){return it.Message.getWrapperField(this,Ft.StringValue,3)},proto.v1.signaling.api.Peer.prototype.setUserId=function(Qt){return it.Message.setWrapperField(this,3,Qt)},proto.v1.signaling.api.Peer.prototype.clearUserId=function(){return this.setUserId(void 0)},proto.v1.signaling.api.Peer.prototype.hasUserId=function(){return it.Message.getField(this,3)!=null},proto.v1.signaling.api.Peer.prototype.getDeviceId=function(){return it.Message.getWrapperField(this,Ft.StringValue,4)},proto.v1.signaling.api.Peer.prototype.setDeviceId=function(Qt){return it.Message.setWrapperField(this,4,Qt)},proto.v1.signaling.api.Peer.prototype.clearDeviceId=function(){return this.setDeviceId(void 0)},proto.v1.signaling.api.Peer.prototype.hasDeviceId=function(){return it.Message.getField(this,4)!=null},proto.v1.signaling.api.Peer.prototype.getSessionIdsList=function(){return it.Message.getRepeatedField(this,5)},proto.v1.signaling.api.Peer.prototype.setSessionIdsList=function(Qt){return it.Message.setField(this,5,Qt||[])},proto.v1.signaling.api.Peer.prototype.addSessionIds=function(Qt,Bt){return it.Message.addToRepeatedField(this,5,Qt,Bt)},proto.v1.signaling.api.Peer.prototype.clearSessionIdsList=function(){return this.setSessionIdsList([])},proto.v1.signaling.api.Peer.prototype.getPeerCreatedTimestamp=function(){return it.Message.getWrapperField(this,Ft.Int64Value,6)},proto.v1.signaling.api.Peer.prototype.setPeerCreatedTimestamp=function(Qt){return it.Message.setWrapperField(this,6,Qt)},proto.v1.signaling.api.Peer.prototype.clearPeerCreatedTimestamp=function(){return this.setPeerCreatedTimestamp(void 0)},proto.v1.signaling.api.Peer.prototype.hasPeerCreatedTimestamp=function(){return it.Message.getField(this,6)!=null},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Signal.prototype.toObject=function(Qt){return proto.v1.signaling.api.Signal.toObject(Qt,this)},proto.v1.signaling.api.Signal.toObject=function(Qt,Bt){var Vt,Wt={sessionId:(Vt=Bt.getSessionId())&&Ft.StringValue.toObject(Qt,Vt),sessionCreatedTimestamp:(Vt=Bt.getSessionCreatedTimestamp())&&Ft.Int64Value.toObject(Qt,Vt),senderId:it.Message.getFieldWithDefault(Bt,3,""),receiverId:it.Message.getFieldWithDefault(Bt,4,""),payload:it.Message.getFieldWithDefault(Bt,5,""),iceServers:it.Message.getFieldWithDefault(Bt,6,""),iceTransportPolicy:it.Message.getFieldWithDefault(Bt,7,""),sessionType:it.Message.getFieldWithDefault(Bt,8,0)};return Qt&&(Wt.$jspbMessageInstance=Bt),Wt}),proto.v1.signaling.api.Signal.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.Signal;return proto.v1.signaling.api.Signal.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.Signal.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=new Ft.StringValue;Bt.readMessage(Vt,Ft.StringValue.deserializeBinaryFromReader),Qt.setSessionId(Vt);break;case 2:Vt=new Ft.Int64Value,Bt.readMessage(Vt,Ft.Int64Value.deserializeBinaryFromReader),Qt.setSessionCreatedTimestamp(Vt);break;case 3:Vt=Bt.readString(),Qt.setSenderId(Vt);break;case 4:Vt=Bt.readString(),Qt.setReceiverId(Vt);break;case 5:Vt=Bt.readString(),Qt.setPayload(Vt);break;case 6:Vt=Bt.readString(),Qt.setIceServers(Vt);break;case 7:Vt=Bt.readString(),Qt.setIceTransportPolicy(Vt);break;case 8:Vt=Bt.readEnum(),Qt.setSessionType(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.Signal.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.Signal.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.Signal.serializeBinaryToWriter=function(Qt,Bt){var Vt=void 0;(Vt=Qt.getSessionId())!=null&&Bt.writeMessage(1,Vt,Ft.StringValue.serializeBinaryToWriter),(Vt=Qt.getSessionCreatedTimestamp())!=null&&Bt.writeMessage(2,Vt,Ft.Int64Value.serializeBinaryToWriter),(Vt=Qt.getSenderId()).length>0&&Bt.writeString(3,Vt),(Vt=Qt.getReceiverId()).length>0&&Bt.writeString(4,Vt),(Vt=Qt.getPayload()).length>0&&Bt.writeString(5,Vt),(Vt=Qt.getIceServers()).length>0&&Bt.writeString(6,Vt),(Vt=Qt.getIceTransportPolicy()).length>0&&Bt.writeString(7,Vt),(Vt=Qt.getSessionType())!==0&&Bt.writeEnum(8,Vt)},proto.v1.signaling.api.Signal.prototype.getSessionId=function(){return it.Message.getWrapperField(this,Ft.StringValue,1)},proto.v1.signaling.api.Signal.prototype.setSessionId=function(Qt){return it.Message.setWrapperField(this,1,Qt)},proto.v1.signaling.api.Signal.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionId=function(){return it.Message.getField(this,1)!=null},proto.v1.signaling.api.Signal.prototype.getSessionCreatedTimestamp=function(){return it.Message.getWrapperField(this,Ft.Int64Value,2)},proto.v1.signaling.api.Signal.prototype.setSessionCreatedTimestamp=function(Qt){return it.Message.setWrapperField(this,2,Qt)},proto.v1.signaling.api.Signal.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionCreatedTimestamp=function(){return it.Message.getField(this,2)!=null},proto.v1.signaling.api.Signal.prototype.getSenderId=function(){return it.Message.getFieldWithDefault(this,3,"")},proto.v1.signaling.api.Signal.prototype.setSenderId=function(Qt){return it.Message.setProto3StringField(this,3,Qt)},proto.v1.signaling.api.Signal.prototype.getReceiverId=function(){return it.Message.getFieldWithDefault(this,4,"")},proto.v1.signaling.api.Signal.prototype.setReceiverId=function(Qt){return it.Message.setProto3StringField(this,4,Qt)},proto.v1.signaling.api.Signal.prototype.getPayload=function(){return it.Message.getFieldWithDefault(this,5,"")},proto.v1.signaling.api.Signal.prototype.setPayload=function(Qt){return it.Message.setProto3StringField(this,5,Qt)},proto.v1.signaling.api.Signal.prototype.getIceServers=function(){return it.Message.getFieldWithDefault(this,6,"")},proto.v1.signaling.api.Signal.prototype.setIceServers=function(Qt){return it.Message.setProto3StringField(this,6,Qt)},proto.v1.signaling.api.Signal.prototype.getIceTransportPolicy=function(){return it.Message.getFieldWithDefault(this,7,"")},proto.v1.signaling.api.Signal.prototype.setIceTransportPolicy=function(Qt){return it.Message.setProto3StringField(this,7,Qt)},proto.v1.signaling.api.Signal.prototype.getSessionType=function(){return it.Message.getFieldWithDefault(this,8,0)},proto.v1.signaling.api.Signal.prototype.setSessionType=function(Qt){return it.Message.setProto3EnumField(this,8,Qt)},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthRequest.prototype.toObject=function(Qt){return proto.v1.signaling.api.GetHealthRequest.toObject(Qt,this)},proto.v1.signaling.api.GetHealthRequest.toObject=function(Qt,Bt){var Vt={};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.GetHealthRequest.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.GetHealthRequest;return proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)Bt.getFieldNumber(),Bt.skipField();return Qt},proto.v1.signaling.api.GetHealthRequest.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter=function(Qt,Bt){},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthResponse.prototype.toObject=function(Qt){return proto.v1.signaling.api.GetHealthResponse.toObject(Qt,this)},proto.v1.signaling.api.GetHealthResponse.toObject=function(Qt,Bt){var Vt={version:it.Message.getFieldWithDefault(Bt,1,"")};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.GetHealthResponse.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.GetHealthResponse;return proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=Bt.readString();Qt.setVersion(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.GetHealthResponse.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter=function(Qt,Bt){var Vt;(Vt=Qt.getVersion()).length>0&&Bt.writeString(1,Vt)},proto.v1.signaling.api.GetHealthResponse.prototype.getVersion=function(){return it.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetHealthResponse.prototype.setVersion=function(Qt){return it.Message.setProto3StringField(this,1,Qt)},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerRequest.prototype.toObject=function(Qt){return proto.v1.signaling.api.CreatePeerRequest.toObject(Qt,this)},proto.v1.signaling.api.CreatePeerRequest.toObject=function(Qt,Bt){var Vt={};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.CreatePeerRequest.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.CreatePeerRequest;return proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)Bt.getFieldNumber(),Bt.skipField();return Qt},proto.v1.signaling.api.CreatePeerRequest.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter=function(Qt,Bt){},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerResponse.prototype.toObject=function(Qt){return proto.v1.signaling.api.CreatePeerResponse.toObject(Qt,this)},proto.v1.signaling.api.CreatePeerResponse.toObject=function(Qt,Bt){var Vt,Wt={peer:(Vt=Bt.getPeer())&&proto.v1.signaling.api.Peer.toObject(Qt,Vt)};return Qt&&(Wt.$jspbMessageInstance=Bt),Wt}),proto.v1.signaling.api.CreatePeerResponse.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.CreatePeerResponse;return proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=new proto.v1.signaling.api.Peer;Bt.readMessage(Vt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),Qt.setPeer(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.CreatePeerResponse.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter=function(Qt,Bt){var Vt;(Vt=Qt.getPeer())!=null&&Bt.writeMessage(1,Vt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.CreatePeerResponse.prototype.getPeer=function(){return it.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.CreatePeerResponse.prototype.setPeer=function(Qt){return it.Message.setWrapperField(this,1,Qt)},proto.v1.signaling.api.CreatePeerResponse.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.CreatePeerResponse.prototype.hasPeer=function(){return it.Message.getField(this,1)!=null},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerRequest.prototype.toObject=function(Qt){return proto.v1.signaling.api.DeletePeerRequest.toObject(Qt,this)},proto.v1.signaling.api.DeletePeerRequest.toObject=function(Qt,Bt){var Vt={peerId:it.Message.getFieldWithDefault(Bt,1,"")};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.DeletePeerRequest.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.DeletePeerRequest;return proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=Bt.readString();Qt.setPeerId(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.DeletePeerRequest.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter=function(Qt,Bt){var Vt;(Vt=Qt.getPeerId()).length>0&&Bt.writeString(1,Vt)},proto.v1.signaling.api.DeletePeerRequest.prototype.getPeerId=function(){return it.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.DeletePeerRequest.prototype.setPeerId=function(Qt){return it.Message.setProto3StringField(this,1,Qt)},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerResponse.prototype.toObject=function(Qt){return proto.v1.signaling.api.DeletePeerResponse.toObject(Qt,this)},proto.v1.signaling.api.DeletePeerResponse.toObject=function(Qt,Bt){var Vt={};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.DeletePeerResponse.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.DeletePeerResponse;return proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)Bt.getFieldNumber(),Bt.skipField();return Qt},proto.v1.signaling.api.DeletePeerResponse.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter=function(Qt,Bt){},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerRequest.prototype.toObject=function(Qt){return proto.v1.signaling.api.RefreshPeerRequest.toObject(Qt,this)},proto.v1.signaling.api.RefreshPeerRequest.toObject=function(Qt,Bt){var Vt,Wt={peer:(Vt=Bt.getPeer())&&proto.v1.signaling.api.Peer.toObject(Qt,Vt)};return Qt&&(Wt.$jspbMessageInstance=Bt),Wt}),proto.v1.signaling.api.RefreshPeerRequest.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.RefreshPeerRequest;return proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=new proto.v1.signaling.api.Peer;Bt.readMessage(Vt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),Qt.setPeer(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.RefreshPeerRequest.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter=function(Qt,Bt){var Vt;(Vt=Qt.getPeer())!=null&&Bt.writeMessage(1,Vt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.RefreshPeerRequest.prototype.getPeer=function(){return it.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.RefreshPeerRequest.prototype.setPeer=function(Qt){return it.Message.setWrapperField(this,1,Qt)},proto.v1.signaling.api.RefreshPeerRequest.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.RefreshPeerRequest.prototype.hasPeer=function(){return it.Message.getField(this,1)!=null},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerResponse.prototype.toObject=function(Qt){return proto.v1.signaling.api.RefreshPeerResponse.toObject(Qt,this)},proto.v1.signaling.api.RefreshPeerResponse.toObject=function(Qt,Bt){var Vt={};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.RefreshPeerResponse.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.RefreshPeerResponse;return proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)Bt.getFieldNumber(),Bt.skipField();return Qt},proto.v1.signaling.api.RefreshPeerResponse.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter=function(Qt,Bt){},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersRequest.prototype.toObject=function(Qt){return proto.v1.signaling.api.GetPeersRequest.toObject(Qt,this)},proto.v1.signaling.api.GetPeersRequest.toObject=function(Qt,Bt){var Vt={};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.GetPeersRequest.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.GetPeersRequest;return proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)Bt.getFieldNumber(),Bt.skipField();return Qt},proto.v1.signaling.api.GetPeersRequest.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter=function(Qt,Bt){},proto.v1.signaling.api.GetPeersResponse.repeatedFields_=[1],it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersResponse.prototype.toObject=function(Qt){return proto.v1.signaling.api.GetPeersResponse.toObject(Qt,this)},proto.v1.signaling.api.GetPeersResponse.toObject=function(Qt,Bt){var Vt={peersList:it.Message.toObjectList(Bt.getPeersList(),proto.v1.signaling.api.Peer.toObject,Qt)};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.GetPeersResponse.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.GetPeersResponse;return proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=new proto.v1.signaling.api.Peer;Bt.readMessage(Vt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),Qt.addPeers(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.GetPeersResponse.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter=function(Qt,Bt){var Vt;(Vt=Qt.getPeersList()).length>0&&Bt.writeRepeatedMessage(1,Vt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.GetPeersResponse.prototype.getPeersList=function(){return it.Message.getRepeatedWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.GetPeersResponse.prototype.setPeersList=function(Qt){return it.Message.setRepeatedWrapperField(this,1,Qt)},proto.v1.signaling.api.GetPeersResponse.prototype.addPeers=function(Qt,Bt){return it.Message.addToRepeatedWrapperField(this,1,Qt,proto.v1.signaling.api.Peer,Bt)},proto.v1.signaling.api.GetPeersResponse.prototype.clearPeersList=function(){return this.setPeersList([])},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersRequest.prototype.toObject=function(Qt){return proto.v1.signaling.api.GetIceServersRequest.toObject(Qt,this)},proto.v1.signaling.api.GetIceServersRequest.toObject=function(Qt,Bt){var Vt={};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.GetIceServersRequest.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.GetIceServersRequest;return proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)Bt.getFieldNumber(),Bt.skipField();return Qt},proto.v1.signaling.api.GetIceServersRequest.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter=function(Qt,Bt){},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersResponse.prototype.toObject=function(Qt){return proto.v1.signaling.api.GetIceServersResponse.toObject(Qt,this)},proto.v1.signaling.api.GetIceServersResponse.toObject=function(Qt,Bt){var Vt={iceServers:it.Message.getFieldWithDefault(Bt,1,"")};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.GetIceServersResponse.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.GetIceServersResponse;return proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=Bt.readString();Qt.setIceServers(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.GetIceServersResponse.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter=function(Qt,Bt){var Vt;(Vt=Qt.getIceServers()).length>0&&Bt.writeString(1,Vt)},proto.v1.signaling.api.GetIceServersResponse.prototype.getIceServers=function(){return it.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetIceServersResponse.prototype.setIceServers=function(Qt){return it.Message.setProto3StringField(this,1,Qt)},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalRequest.prototype.toObject=function(Qt){return proto.v1.signaling.api.SendSignalRequest.toObject(Qt,this)},proto.v1.signaling.api.SendSignalRequest.toObject=function(Qt,Bt){var Vt,Wt={signal:(Vt=Bt.getSignal())&&proto.v1.signaling.api.Signal.toObject(Qt,Vt)};return Qt&&(Wt.$jspbMessageInstance=Bt),Wt}),proto.v1.signaling.api.SendSignalRequest.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.SendSignalRequest;return proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=new proto.v1.signaling.api.Signal;Bt.readMessage(Vt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),Qt.setSignal(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.SendSignalRequest.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter=function(Qt,Bt){var Vt;(Vt=Qt.getSignal())!=null&&Bt.writeMessage(1,Vt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalRequest.prototype.getSignal=function(){return it.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.SendSignalRequest.prototype.setSignal=function(Qt){return it.Message.setWrapperField(this,1,Qt)},proto.v1.signaling.api.SendSignalRequest.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.SendSignalRequest.prototype.hasSignal=function(){return it.Message.getField(this,1)!=null},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalResponse.prototype.toObject=function(Qt){return proto.v1.signaling.api.SendSignalResponse.toObject(Qt,this)},proto.v1.signaling.api.SendSignalResponse.toObject=function(Qt,Bt){var Vt,Wt={sessionId:(Vt=Bt.getSessionId())&&Ft.StringValue.toObject(Qt,Vt),sessionCreatedTimestamp:(Vt=Bt.getSessionCreatedTimestamp())&&Ft.Int64Value.toObject(Qt,Vt)};return Qt&&(Wt.$jspbMessageInstance=Bt),Wt}),proto.v1.signaling.api.SendSignalResponse.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.SendSignalResponse;return proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=new Ft.StringValue;Bt.readMessage(Vt,Ft.StringValue.deserializeBinaryFromReader),Qt.setSessionId(Vt);break;case 2:Vt=new Ft.Int64Value,Bt.readMessage(Vt,Ft.Int64Value.deserializeBinaryFromReader),Qt.setSessionCreatedTimestamp(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.SendSignalResponse.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter=function(Qt,Bt){var Vt=void 0;(Vt=Qt.getSessionId())!=null&&Bt.writeMessage(1,Vt,Ft.StringValue.serializeBinaryToWriter),(Vt=Qt.getSessionCreatedTimestamp())!=null&&Bt.writeMessage(2,Vt,Ft.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionId=function(){return it.Message.getWrapperField(this,Ft.StringValue,1)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionId=function(Qt){return it.Message.setWrapperField(this,1,Qt)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionId=function(){return it.Message.getField(this,1)!=null},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionCreatedTimestamp=function(){return it.Message.getWrapperField(this,Ft.Int64Value,2)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionCreatedTimestamp=function(Qt){return it.Message.setWrapperField(this,2,Qt)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionCreatedTimestamp=function(){return it.Message.getField(this,2)!=null},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.toObject=function(Qt){return proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject(Qt,this)},proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject=function(Qt,Bt){var Vt={peerId:it.Message.getFieldWithDefault(Bt,1,"")};return Qt&&(Vt.$jspbMessageInstance=Bt),Vt}),proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.ReceiveSignalStreamRequest;return proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=Bt.readString();Qt.setPeerId(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter=function(Qt,Bt){var Vt;(Vt=Qt.getPeerId()).length>0&&Bt.writeString(1,Vt)},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.getPeerId=function(){return it.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.setPeerId=function(Qt){return it.Message.setProto3StringField(this,1,Qt)},it.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.toObject=function(Qt){return proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject(Qt,this)},proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject=function(Qt,Bt){var Vt,Wt={signal:(Vt=Bt.getSignal())&&proto.v1.signaling.api.Signal.toObject(Qt,Vt)};return Qt&&(Wt.$jspbMessageInstance=Bt),Wt}),proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinary=function(Qt){var Bt=new it.BinaryReader(Qt),Vt=new proto.v1.signaling.api.ReceiveSignalStreamResponse;return proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader(Vt,Bt)},proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader=function(Qt,Bt){for(;Bt.nextField()&&!Bt.isEndGroup();)switch(Bt.getFieldNumber()){case 1:var Vt=new proto.v1.signaling.api.Signal;Bt.readMessage(Vt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),Qt.setSignal(Vt);break;default:Bt.skipField()}return Qt},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.serializeBinary=function(){var Qt=new it.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter(this,Qt),Qt.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter=function(Qt,Bt){var Vt;(Vt=Qt.getSignal())!=null&&Bt.writeMessage(1,Vt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.getSignal=function(){return it.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.setSignal=function(Qt){return it.Message.setWrapperField(this,1,Qt)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.hasSignal=function(){return it.Message.getField(this,1)!=null},proto.v1.signaling.api.SessionType={UNKNOWN:0,TELEOP:1,PORT_FORWARD:2,OBSERVE:3},ot.object.extend(tt,proto.v1.signaling.api)},function(et,tt,nt){nt.d(tt,"a",function(){return ot});var it=nt(30);class ot extends Error{constructor(Ft,Qt,Bt,Vt,Wt,Xt,Zt={}){super(`Response error ${JSON.stringify({method:Ft,url:Qt,requestBody:Object(it.a)(Bt),statusCode:Vt,responseHeaders:Wt?Object(it.a)([...Wt.entries()].reduce((Yt,[Mt,Gt])=>(Yt[Mt]=Gt,Yt),{})):{},responseBody:Object(it.a)(Xt)})}`),this.method=Ft,this.url=Qt,this.requestBody=Bt,this.statusCode=Vt,this.headers=Wt,this.body=Xt,this.validationErrors=Zt}}},function(et,tt,nt){function it(ot,Ut,Ft=()=>!0){if(function(Qt,Bt,Vt=()=>!0){return Qt instanceof Bt&&Vt(Qt)}(ot,Ut,Ft))return ot;throw ot}nt.d(tt,"a",function(){return it})},function(et,tt,nt){function it(Zt){return(it=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})(Zt)}function ot(Zt,Yt){return!Yt||it(Yt)!=="object"&&typeof Yt!="function"?Ut(Zt):Yt}function Ut(Zt){if(Zt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Zt}function Ft(Zt){var Yt=typeof Map=="function"?new Map:void 0;return(Ft=function(Mt){if(Mt===null||(Gt=Mt,Function.toString.call(Gt).indexOf("[native code]")===-1))return Mt;var Gt;if(typeof Mt!="function")throw new TypeError("Super expression must either be null or a function");if(Yt!==void 0){if(Yt.has(Mt))return Yt.get(Mt);Yt.set(Mt,en)}function en(){return Qt(Mt,arguments,Wt(this).constructor)}return en.prototype=Object.create(Mt.prototype,{constructor:{value:en,enumerable:!1,writable:!0,configurable:!0}}),Vt(en,Mt)})(Zt)}function Qt(Zt,Yt,Mt){return(Qt=Bt()?Reflect.construct:function(Gt,en,tn){var ln=[null];ln.push.apply(ln,en);var nn=new(Function.bind.apply(Gt,ln));return tn&&Vt(nn,tn.prototype),nn}).apply(null,arguments)}function Bt(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function Vt(Zt,Yt){return(Vt=Object.setPrototypeOf||function(Mt,Gt){return Mt.__proto__=Gt,Mt})(Zt,Yt)}function Wt(Zt){return(Wt=Object.setPrototypeOf?Object.getPrototypeOf:function(Yt){return Yt.__proto__||Object.getPrototypeOf(Yt)})(Zt)}var Xt=function(Zt){(function(tn,ln){if(typeof ln!="function"&&ln!==null)throw new TypeError("Super expression must either be null or a function");tn.prototype=Object.create(ln&&ln.prototype,{constructor:{value:tn,writable:!0,configurable:!0}}),ln&&Vt(tn,ln)})(en,Zt);var Yt,Mt,Gt=(Yt=en,Mt=Bt(),function(){var tn,ln=Wt(Yt);if(Mt){var nn=Wt(this).constructor;tn=Reflect.construct(ln,arguments,nn)}else tn=ln.apply(this,arguments);return ot(this,tn)});function en(tn){var ln;return function(nn,sn){if(!(nn instanceof sn))throw new TypeError("Cannot call a class as a function")}(this,en),ln=Gt.call(this,`Format functions must be synchronous taking a two arguments: (info, opts) +Found: `.concat(tn.toString().split(` `)[0],` -`)),Error.captureStackTrace(rt(Vt),mt),Vt}return Bt=mt,Object.defineProperty(Bt,"prototype",{writable:!1}),Bt}(lt(Error));et.exports=function(St){if(St.length>2)throw new dt(St);function pt(){var Bt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.options=Bt}function Rt(Bt){return new pt(Bt)}return pt.prototype.transform=St,Rt.Format=pt,Rt}},9181:(et,tt,nt)=>{var rt=nt(1616),lt=nt(4966).MESSAGE,ut=nt(1145);function Ut(ot,st){return typeof st=="bigint"?st.toString():st}et.exports=rt(function(ot,st){var dt=ut.configure(st);return ot[lt]=dt(ot,st.replacer||Ut,st.space),ot})},4673:(et,tt,nt)=>{var rt=nt(1616);et.exports=rt(function(lt,ut){return ut.message?(lt.message="[".concat(ut.label,"] ").concat(lt.message),lt):(lt.label=ut.label,lt)})},3084:(et,tt,nt)=>{var rt=nt(452).Colorizer;et.exports=function(lt){return rt.addColors(lt.colors||lt),lt}},372:(et,tt,nt)=>{var rt=nt(1616),lt=nt(4966).MESSAGE,ut=nt(1145);et.exports=rt(function(Ut){var ot={};return Ut.message&&(ot["@message"]=Ut.message,delete Ut.message),Ut.timestamp&&(ot["@timestamp"]=Ut.timestamp,delete Ut.timestamp),ot["@fields"]=Ut,Ut[lt]=ut(ot),Ut})},5350:(et,tt,nt)=>{function rt(st){return(rt=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})(st)}function lt(st,dt,St){var pt;return pt=function(Rt,Bt){if(rt(Rt)!="object"||!Rt)return Rt;var ht=Rt[Symbol.toPrimitive];if(ht!==void 0){var mt=ht.call(Rt,Bt||"default");if(rt(mt)!="object")return mt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Bt==="string"?String:Number)(Rt)}(dt,"string"),(dt=rt(pt)=="symbol"?pt:String(pt))in st?Object.defineProperty(st,dt,{value:St,enumerable:!0,configurable:!0,writable:!0}):st[dt]=St,st}var ut=nt(1616);function Ut(st,dt,St){var pt=dt.reduce(function(Bt,ht){return Bt[ht]=st[ht],delete st[ht],Bt},{}),Rt=Object.keys(st).reduce(function(Bt,ht){return Bt[ht]=st[ht],delete st[ht],Bt},{});return Object.assign(st,pt,lt({},St,Rt)),st}function ot(st,dt,St){return st[St]=dt.reduce(function(pt,Rt){return pt[Rt]=st[Rt],delete st[Rt],pt},{}),st}et.exports=ut(function(st){var dt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},St="metadata";dt.key&&(St=dt.key);var pt=[];return dt.fillExcept||dt.fillWith||(pt.push("level"),pt.push("message")),dt.fillExcept&&(pt=dt.fillExcept),pt.length>0?Ut(st,pt,St):dt.fillWith?ot(st,dt.fillWith,St):st})},4659:(et,tt,nt)=>{var rt=nt(1616),lt=nt(7250);et.exports=rt(function(ut){var Ut=+new Date;return(void 0).diff=Ut-((void 0).prevTime||Ut),(void 0).prevTime=Ut,ut.ms="+".concat(lt((void 0).diff)),ut})},8071:(et,tt,nt)=>{function rt(ht){return(rt=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})(ht)}function lt(ht){return function(mt){if(Array.isArray(mt))return ut(mt)}(ht)||function(mt){if(typeof Symbol<"u"&&mt[Symbol.iterator]!=null||mt["@@iterator"]!=null)return Array.from(mt)}(ht)||function(mt,gt){if(mt){if(typeof mt=="string")return ut(mt,gt);var Vt=Object.prototype.toString.call(mt).slice(8,-1);if(Vt==="Object"&&mt.constructor&&(Vt=mt.constructor.name),Vt==="Map"||Vt==="Set")return Array.from(mt);if(Vt==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Vt))return ut(mt,gt)}}(ht)||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 ut(ht,mt){(mt==null||mt>ht.length)&&(mt=ht.length);for(var gt=0,Vt=new Array(mt);gt0&&arguments[0]!==void 0?arguments[0]:{levels:St.npm.levels};Ut(this,ht),this.paddings=ht.paddingForLevels(Tt.levels,Tt.filler),this.options=Tt}var mt,gt,Vt;return mt=ht,Vt=[{key:"getLongestLevel",value:function(Tt){var ft=Object.keys(Tt).map(function(Wt){return Wt.length});return Math.max.apply(Math,lt(ft))}},{key:"paddingForLevel",value:function(Tt,ft,Wt){var yt=Wt+1-Tt.length,Kt=Math.floor(yt/ft.length);return"".concat(ft).concat(ft.repeat(Kt)).slice(0,yt)}},{key:"paddingForLevels",value:function(Tt){var ft=arguments.length>1&&arguments[1]!==void 0?arguments[1]:" ",Wt=ht.getLongestLevel(Tt);return Object.keys(Tt).reduce(function(yt,Kt){return yt[Kt]=ht.paddingForLevel(Kt,ft,Wt),yt},{})}}],(gt=[{key:"transform",value:function(Tt,ft){return Tt.message="".concat(this.paddings[Tt[pt]]).concat(Tt.message),Tt[Rt]&&(Tt[Rt]="".concat(this.paddings[Tt[pt]]).concat(Tt[Rt])),Tt}}])&&ot(mt.prototype,gt),Vt&&ot(mt,Vt),Object.defineProperty(mt,"prototype",{writable:!1}),ht}();et.exports=function(ht){return new Bt(ht)},et.exports.Padder=et.exports.Format=Bt},9121:(et,tt,nt)=>{var rt=nt(9208).inspect,lt=nt(1616),ut=nt(4966),Ut=ut.LEVEL,ot=ut.MESSAGE,st=ut.SPLAT;et.exports=lt(function(dt){var St=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},pt=Object.assign({},dt);return delete pt[Ut],delete pt[ot],delete pt[st],dt[ot]=rt(pt,!1,St.depth||null,St.colorize),dt})},7016:(et,tt,nt)=>{function rt(st){return(rt=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})(st)}function lt(st,dt){for(var St=0;St{var rt=nt(1616),lt=nt(4966).MESSAGE,ut=nt(1145);et.exports=rt(function(Ut){var ot=ut(Object.assign({},Ut,{level:void 0,message:void 0,splat:void 0})),st=Ut.padding&&Ut.padding[Ut.level]||"";return Ut[lt]=ot!=="{}"?"".concat(Ut.level,":").concat(st," ").concat(Ut.message," ").concat(ot):"".concat(Ut.level,":").concat(st," ").concat(Ut.message),Ut})},2695:(et,tt,nt)=>{function rt(Bt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ht){return typeof ht}:function(ht){return ht&&typeof Symbol=="function"&&ht.constructor===Symbol&&ht!==Symbol.prototype?"symbol":typeof ht})(Bt)}function lt(Bt){return function(ht){if(Array.isArray(ht))return ut(ht)}(Bt)||function(ht){if(typeof Symbol<"u"&&ht[Symbol.iterator]!=null||ht["@@iterator"]!=null)return Array.from(ht)}(Bt)||function(ht,mt){if(ht){if(typeof ht=="string")return ut(ht,mt);var gt=Object.prototype.toString.call(ht).slice(8,-1);if(gt==="Object"&&ht.constructor&&(gt=ht.constructor.name),gt==="Map"||gt==="Set")return Array.from(ht);if(gt==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(gt))return ut(ht,mt)}}(Bt)||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 ut(Bt,ht){(ht==null||ht>Bt.length)&&(ht=Bt.length);for(var mt=0,gt=new Array(ht);mt1?Tt.splice(0):Tt,yt=Wt.length;if(yt)for(var Kt=0;Kt{var rt=nt(4798),lt=nt(1616);et.exports=lt(function(ut){var Ut=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Ut.format&&(ut.timestamp=typeof Ut.format=="function"?Ut.format():rt.format(new Date,Ut.format)),ut.timestamp||(ut.timestamp=new Date().toISOString()),Ut.alias&&(ut[Ut.alias]=ut.timestamp),ut})},1083:(et,tt,nt)=>{var rt=nt(1158),lt=nt(1616),ut=nt(4966).MESSAGE;et.exports=lt(function(Ut,ot){return ot.level!==!1&&(Ut.level=rt.strip(Ut.level)),ot.message!==!1&&(Ut.message=rt.strip(String(Ut.message))),ot.raw!==!1&&Ut[ut]&&(Ut[ut]=rt.strip(String(Ut[ut]))),Ut})},9327:et=>{class tt extends Error{constructor(rt){super(`Format functions must be synchronous taking a two arguments: (info, opts) -Found: ${rt.toString().split(` -`)[0]} -`),Error.captureStackTrace(this,tt)}}et.exports=nt=>{if(nt.length>2)throw new tt(nt);function rt(ut={}){this.options=ut}function lt(ut){return new rt(ut)}return rt.prototype.transform=nt,lt.Format=rt,lt}},2598:(et,tt,nt)=>{const rt=nt(9327),{MESSAGE:lt}=nt(4966),ut=nt(1145);function Ut(ot,st){return typeof st=="bigint"?st.toString():st}et.exports=rt((ot,st)=>{const dt=ut.configure(st);return ot[lt]=dt(ot,st.replacer||Ut,st.space),ot})},7250:et=>{var tt=1e3,nt=6e4,rt=60*nt,lt=24*rt;function ut(Ut,ot,st,dt){var St=ot>=1.5*st;return Math.round(Ut/st)+" "+dt+(St?"s":"")}et.exports=function(Ut,ot){ot=ot||{};var st=typeof Ut;if(st==="string"&&Ut.length>0)return function(dt){if(!((dt=String(dt)).length>100)){var St=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(dt);if(St){var pt=parseFloat(St[1]);switch((St[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*pt;case"weeks":case"week":case"w":return 6048e5*pt;case"days":case"day":case"d":return pt*lt;case"hours":case"hour":case"hrs":case"hr":case"h":return pt*rt;case"minutes":case"minute":case"mins":case"min":case"m":return pt*nt;case"seconds":case"second":case"secs":case"sec":case"s":return pt*tt;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return pt;default:return}}}}(Ut);if(st==="number"&&isFinite(Ut))return ot.long?function(dt){var St=Math.abs(dt);return St>=lt?ut(dt,St,lt,"day"):St>=rt?ut(dt,St,rt,"hour"):St>=nt?ut(dt,St,nt,"minute"):St>=tt?ut(dt,St,tt,"second"):dt+" ms"}(Ut):function(dt){var St=Math.abs(dt);return St>=lt?Math.round(dt/lt)+"d":St>=rt?Math.round(dt/rt)+"h":St>=nt?Math.round(dt/nt)+"m":St>=tt?Math.round(dt/tt)+"s":dt+"ms"}(Ut);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(Ut))}},8660:(et,tt,nt)=>{var rt=typeof Map=="function"&&Map.prototype,lt=Object.getOwnPropertyDescriptor&&rt?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,ut=rt&<&&typeof lt.get=="function"?lt.get:null,Ut=rt&&Map.prototype.forEach,ot=typeof Set=="function"&&Set.prototype,st=Object.getOwnPropertyDescriptor&&ot?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,dt=ot&&st&&typeof st.get=="function"?st.get:null,St=ot&&Set.prototype.forEach,pt=typeof WeakMap=="function"&&WeakMap.prototype?WeakMap.prototype.has:null,Rt=typeof WeakSet=="function"&&WeakSet.prototype?WeakSet.prototype.has:null,Bt=typeof WeakRef=="function"&&WeakRef.prototype?WeakRef.prototype.deref:null,ht=Boolean.prototype.valueOf,mt=Object.prototype.toString,gt=Function.prototype.toString,Vt=String.prototype.match,Tt=String.prototype.slice,ft=String.prototype.replace,Wt=String.prototype.toUpperCase,yt=String.prototype.toLowerCase,Kt=RegExp.prototype.test,$t=Array.prototype.concat,Ht=Array.prototype.join,Nt=Array.prototype.slice,qt=Math.floor,kt=typeof BigInt=="function"?BigInt.prototype.valueOf:null,bt=Object.getOwnPropertySymbols,Jt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,wt=typeof Symbol=="function"&&typeof Symbol.iterator=="object",At=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===wt||"symbol")?Symbol.toStringTag:null,Ct=Object.prototype.propertyIsEnumerable,Mt=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(Ot){return Ot.__proto__}:null);function nn(Ot,jt){if(Ot===1/0||Ot===-1/0||Ot!=Ot||Ot&&Ot>-1e3&&Ot<1e3||Kt.call(/e/,jt))return jt;var pn=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof Ot=="number"){var En=Ot<0?-qt(-Ot):qt(Ot);if(En!==Ot){var yn=String(En),Cn=Tt.call(jt,yn.length+1);return ft.call(yn,pn,"$&_")+"."+ft.call(ft.call(Cn,/([0-9]{3})/g,"$&_"),/_$/,"")}}return ft.call(jt,pn,"$&_")}var sn=nt(6973),Lt=sn.custom,tn=dn(Lt)?Lt:null;function cn(Ot,jt,pn){var En=(pn.quoteStyle||jt)==="double"?'"':"'";return En+Ot+En}function on(Ot){return ft.call(String(Ot),/"/g,""")}function Gt(Ot){return!(fn(Ot)!=="[object Array]"||At&&typeof Ot=="object"&&At in Ot)}function Xt(Ot){return!(fn(Ot)!=="[object RegExp]"||At&&typeof Ot=="object"&&At in Ot)}function dn(Ot){if(wt)return Ot&&typeof Ot=="object"&&Ot instanceof Symbol;if(typeof Ot=="symbol")return!0;if(!Ot||typeof Ot!="object"||!Jt)return!1;try{return Jt.call(Ot),!0}catch{}return!1}et.exports=function Ot(jt,pn,En,yn){var Cn=pn||{};if(Fn(Cn,"quoteStyle")&&Cn.quoteStyle!=="single"&&Cn.quoteStyle!=="double")throw new TypeError('option "quoteStyle" must be "single" or "double"');if(Fn(Cn,"maxStringLength")&&(typeof Cn.maxStringLength=="number"?Cn.maxStringLength<0&&Cn.maxStringLength!==1/0:Cn.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var Gn=!Fn(Cn,"customInspect")||Cn.customInspect;if(typeof Gn!="boolean"&&Gn!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(Fn(Cn,"indent")&&Cn.indent!==null&&Cn.indent!==" "&&!(parseInt(Cn.indent,10)===Cn.indent&&Cn.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(Fn(Cn,"numericSeparator")&&typeof Cn.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var Wn=Cn.numericSeparator;if(jt===void 0)return"undefined";if(jt===null)return"null";if(typeof jt=="boolean")return jt?"true":"false";if(typeof jt=="string")return function tr(vr,Hr){if(vr.length>Hr.maxStringLength){var fo=vr.length-Hr.maxStringLength,Go="... "+fo+" more character"+(fo>1?"s":"");return tr(Tt.call(vr,0,Hr.maxStringLength),Hr)+Go}return cn(ft.call(ft.call(vr,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,Jn),"single",Hr)}(jt,Cn);if(typeof jt=="number"){if(jt===0)return 1/0/jt>0?"0":"-0";var ir=String(jt);return Wn?nn(jt,ir):ir}if(typeof jt=="bigint"){var lr=String(jt)+"n";return Wn?nn(jt,lr):lr}var Rn=Cn.depth===void 0?5:Cn.depth;if(En===void 0&&(En=0),En>=Rn&&Rn>0&&typeof jt=="object")return Gt(jt)?"[Array]":"[Object]";var _r=function(tr,vr){var Hr;if(tr.indent===" ")Hr=" ";else{if(!(typeof tr.indent=="number"&&tr.indent>0))return null;Hr=Ht.call(Array(tr.indent+1)," ")}return{base:Hr,prev:Ht.call(Array(vr+1),Hr)}}(Cn,En);if(yn===void 0)yn=[];else if(Un(yn,jt)>=0)return"[Circular]";function zr(tr,vr,Hr){if(vr&&(yn=Nt.call(yn)).push(vr),Hr){var fo={depth:Cn.depth};return Fn(Cn,"quoteStyle")&&(fo.quoteStyle=Cn.quoteStyle),Ot(tr,fo,En+1,yn)}return Ot(tr,Cn,En+1,yn)}if(typeof jt=="function"&&!Xt(jt)){var Er=function(tr){if(tr.name)return tr.name;var vr=Vt.call(gt.call(tr),/^function\s*([\w$]+)/);return vr?vr[1]:null}(jt),ho=_t(jt,zr);return"[Function"+(Er?": "+Er:" (anonymous)")+"]"+(ho.length>0?" { "+Ht.call(ho,", ")+" }":"")}if(dn(jt)){var Ro=wt?ft.call(String(jt),/^(Symbol\(.*\))_[^)]*$/,"$1"):Jt.call(jt);return typeof jt!="object"||wt?Ro:_n(Ro)}if(function(tr){return!tr||typeof tr!="object"?!1:typeof HTMLElement<"u"&&tr instanceof HTMLElement?!0:typeof tr.nodeName=="string"&&typeof tr.getAttribute=="function"}(jt)){for(var rr="<"+yt.call(String(jt.nodeName)),wo=jt.attributes||[],oo=0;oo"}if(Gt(jt)){if(jt.length===0)return"[]";var No=_t(jt,zr);return _r&&!function(tr){for(var vr=0;vr=0)return!1;return!0}(No)?"["+Yn(No,_r)+"]":"[ "+Ht.call(No,", ")+" ]"}if(function(tr){return!(fn(tr)!=="[object Error]"||At&&typeof tr=="object"&&At in tr)}(jt)){var ro=_t(jt,zr);return"cause"in Error.prototype||!("cause"in jt)||Ct.call(jt,"cause")?ro.length===0?"["+String(jt)+"]":"{ ["+String(jt)+"] "+Ht.call(ro,", ")+" }":"{ ["+String(jt)+"] "+Ht.call($t.call("[cause]: "+zr(jt.cause),ro),", ")+" }"}if(typeof jt=="object"&&Gn){if(tn&&typeof jt[tn]=="function"&&sn)return sn(jt,{depth:Rn-En});if(Gn!=="symbol"&&typeof jt.inspect=="function")return jt.inspect()}if(function(tr){if(!ut||!tr||typeof tr!="object")return!1;try{ut.call(tr);try{dt.call(tr)}catch{return!0}return tr instanceof Map}catch{}return!1}(jt)){var ao=[];return Ut&&Ut.call(jt,function(tr,vr){ao.push(zr(vr,jt,!0)+" => "+zr(tr,jt))}),On("Map",ut.call(jt),ao,_r)}if(function(tr){if(!dt||!tr||typeof tr!="object")return!1;try{dt.call(tr);try{ut.call(tr)}catch{return!0}return tr instanceof Set}catch{}return!1}(jt)){var Wo=[];return St&&St.call(jt,function(tr){Wo.push(zr(tr,jt))}),On("Set",dt.call(jt),Wo,_r)}if(function(tr){if(!pt||!tr||typeof tr!="object")return!1;try{pt.call(tr,pt);try{Rt.call(tr,Rt)}catch{return!0}return tr instanceof WeakMap}catch{}return!1}(jt))return Zn("WeakMap");if(function(tr){if(!Rt||!tr||typeof tr!="object")return!1;try{Rt.call(tr,Rt);try{pt.call(tr,pt)}catch{return!0}return tr instanceof WeakSet}catch{}return!1}(jt))return Zn("WeakSet");if(function(tr){if(!Bt||!tr||typeof tr!="object")return!1;try{return Bt.call(tr),!0}catch{}return!1}(jt))return Zn("WeakRef");if(function(tr){return!(fn(tr)!=="[object Number]"||At&&typeof tr=="object"&&At in tr)}(jt))return _n(zr(Number(jt)));if(function(tr){if(!tr||typeof tr!="object"||!kt)return!1;try{return kt.call(tr),!0}catch{}return!1}(jt))return _n(zr(kt.call(jt)));if(function(tr){return!(fn(tr)!=="[object Boolean]"||At&&typeof tr=="object"&&At in tr)}(jt))return _n(ht.call(jt));if(function(tr){return!(fn(tr)!=="[object String]"||At&&typeof tr=="object"&&At in tr)}(jt))return _n(zr(String(jt)));if(typeof window<"u"&&jt===window)return"{ [object Window] }";if(typeof globalThis<"u"&&jt===globalThis||nt.g!==void 0&&jt===nt.g)return"{ [object globalThis] }";if(!function(tr){return!(fn(tr)!=="[object Date]"||At&&typeof tr=="object"&&At in tr)}(jt)&&!Xt(jt)){var _o=_t(jt,zr),Ao=Mt?Mt(jt)===Object.prototype:jt instanceof Object||jt.constructor===Object,So=jt instanceof Object?"":"null prototype",bo=!Ao&&At&&Object(jt)===jt&&At in jt?Tt.call(fn(jt),8,-1):So?"Object":"",po=(Ao||typeof jt.constructor!="function"?"":jt.constructor.name?jt.constructor.name+" ":"")+(bo||So?"["+Ht.call($t.call([],bo||[],So||[]),": ")+"] ":"");return _o.length===0?po+"{}":_r?po+"{"+Yn(_o,_r)+"}":po+"{ "+Ht.call(_o,", ")+" }"}return String(jt)};var Vn=Object.prototype.hasOwnProperty||function(Ot){return Ot in this};function Fn(Ot,jt){return Vn.call(Ot,jt)}function fn(Ot){return mt.call(Ot)}function Un(Ot,jt){if(Ot.indexOf)return Ot.indexOf(jt);for(var pn=0,En=Ot.length;pn{var tt=function(nt){return nt!=nt};et.exports=function(nt,rt){return nt===0&&rt===0?1/nt==1/rt:nt===rt||!(!tt(nt)||!tt(rt))}},5968:(et,tt,nt)=>{var rt=nt(1857),lt=nt(8498),ut=nt(2372),Ut=nt(1937),ot=nt(5087),st=lt(Ut(),Object);rt(st,{getPolyfill:Ut,implementation:ut,shim:ot}),et.exports=st},1937:(et,tt,nt)=>{var rt=nt(2372);et.exports=function(){return typeof Object.is=="function"?Object.is:rt}},5087:(et,tt,nt)=>{var rt=nt(1937),lt=nt(1857);et.exports=function(){var ut=rt();return lt(Object,{is:ut},{is:function(){return Object.is!==ut}}),ut}},8160:(et,tt,nt)=>{var rt;if(!Object.keys){var lt=Object.prototype.hasOwnProperty,ut=Object.prototype.toString,Ut=nt(968),ot=Object.prototype.propertyIsEnumerable,st=!ot.call({toString:null},"toString"),dt=ot.call(function(){},"prototype"),St=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],pt=function(ht){var mt=ht.constructor;return mt&&mt.prototype===ht},Rt={$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},Bt=function(){if(typeof window>"u")return!1;for(var ht in window)try{if(!Rt["$"+ht]&<.call(window,ht)&&window[ht]!==null&&typeof window[ht]=="object")try{pt(window[ht])}catch{return!0}}catch{return!0}return!1}();rt=function(ht){var mt=ht!==null&&typeof ht=="object",gt=ut.call(ht)==="[object Function]",Vt=Ut(ht),Tt=mt&&ut.call(ht)==="[object String]",ft=[];if(!mt&&!gt&&!Vt)throw new TypeError("Object.keys called on a non-object");var Wt=dt&>if(Tt&&ht.length>0&&!lt.call(ht,0))for(var yt=0;yt0)for(var Kt=0;Kt"u"||!Bt)return pt(qt);try{return pt(qt)}catch{return!1}}(ht),Nt=0;Nt{var rt=Array.prototype.slice,lt=nt(968),ut=Object.keys,Ut=ut?function(st){return ut(st)}:nt(8160),ot=Object.keys;Ut.shim=function(){return Object.keys?function(){var st=Object.keys(arguments);return st&&st.length===arguments.length}(1,2)||(Object.keys=function(st){return lt(st)?ot(rt.call(st)):ot(st)}):Object.keys=Ut,Object.keys||Ut},et.exports=Ut},968:et=>{var tt=Object.prototype.toString;et.exports=function(nt){var rt=tt.call(nt),lt=rt==="[object Arguments]";return lt||(lt=rt!=="[object Array]"&&nt!==null&&typeof nt=="object"&&typeof nt.length=="number"&&nt.length>=0&&tt.call(nt.callee)==="[object Function]"),lt}},5164:(et,tt,nt)=>{var rt=nt(9228),lt=nt(2908)(),ut=nt(9818),Ut=Object,ot=ut("Array.prototype.push"),st=ut("Object.prototype.propertyIsEnumerable"),dt=lt?Object.getOwnPropertySymbols:null;et.exports=function(St,pt){if(St==null)throw new TypeError("target must be an object");var Rt=Ut(St);if(arguments.length===1)return Rt;for(var Bt=1;Bt{var rt=nt(5164);et.exports=function(){return Object.assign?function(){if(!Object.assign)return!1;for(var lt="abcdefghijklmnopqrst",ut=lt.split(""),Ut={},ot=0;ot{var rt=nt(9827);et.exports=function(lt){var ut,Ut=0;function ot(){return Ut||(Ut=1,ut=lt.apply(this,arguments),lt=null),ut}return ot.displayName=rt(lt),ot}},2213:(et,tt)=>{tt.endianness=function(){return"LE"},tt.hostname=function(){return typeof location<"u"?location.hostname:""},tt.loadavg=function(){return[]},tt.uptime=function(){return 0},tt.freemem=function(){return Number.MAX_VALUE},tt.totalmem=function(){return Number.MAX_VALUE},tt.cpus=function(){return[]},tt.type=function(){return"Browser"},tt.release=function(){return typeof navigator<"u"?navigator.appVersion:""},tt.networkInterfaces=tt.getNetworkInterfaces=function(){return{}},tt.arch=function(){return"javascript"},tt.platform=function(){return"browser"},tt.tmpdir=tt.tmpDir=function(){return"/tmp"},tt.EOL=` -`,tt.homedir=function(){return"/"}},5402:et=>{typeof Object.create=="function"?et.exports=function(tt,nt){tt.super_=nt,tt.prototype=Object.create(nt.prototype,{constructor:{value:tt,enumerable:!1,writable:!0,configurable:!0}})}:et.exports=function(tt,nt){tt.super_=nt;var rt=function(){};rt.prototype=nt.prototype,tt.prototype=new rt,tt.prototype.constructor=tt}},8575:et=>{et.exports=function(tt){return tt&&typeof tt=="object"&&typeof tt.copy=="function"&&typeof tt.fill=="function"&&typeof tt.readUInt8=="function"}},25:(et,tt,nt)=>{var rt=/%[sdj%]/g;tt.format=function(bt){if(!gt(bt)){for(var Jt=[],wt=0;wt=Ct)return sn;switch(sn){case"%s":return String(At[wt++]);case"%d":return Number(At[wt++]);case"%j":try{return JSON.stringify(At[wt++])}catch{return"[Circular]"}default:return sn}}),nn=At[wt];wt=3&&(wt.depth=arguments[2]),arguments.length>=4&&(wt.colors=arguments[3]),Bt(Jt)?wt.showHidden=Jt:Jt&&tt._extend(wt,Jt),Vt(wt.showHidden)&&(wt.showHidden=!1),Vt(wt.depth)&&(wt.depth=2),Vt(wt.colors)&&(wt.colors=!1),Vt(wt.customInspect)&&(wt.customInspect=!0),wt.colors&&(wt.stylize=ot),dt(wt,bt,wt.depth)}function ot(bt,Jt){var wt=Ut.styles[Jt];return wt?"\x1B["+Ut.colors[wt][0]+"m"+bt+"\x1B["+Ut.colors[wt][1]+"m":bt}function st(bt,Jt){return bt}function dt(bt,Jt,wt){if(bt.customInspect&&Jt&&Kt(Jt.inspect)&&Jt.inspect!==tt.inspect&&(!Jt.constructor||Jt.constructor.prototype!==Jt)){var At=Jt.inspect(wt,bt);return gt(At)||(At=dt(bt,At,wt)),At}var Ct=function(Gt,Xt){if(Vt(Xt))return Gt.stylize("undefined","undefined");if(gt(Xt)){var dn="'"+JSON.stringify(Xt).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return Gt.stylize(dn,"string")}if(mt(Xt))return Gt.stylize(""+Xt,"number");if(Bt(Xt))return Gt.stylize(""+Xt,"boolean");if(ht(Xt))return Gt.stylize("null","null")}(bt,Jt);if(Ct)return Ct;var Mt=Object.keys(Jt),nn=function(Gt){var Xt={};return Gt.forEach(function(dn,Vn){Xt[dn]=!0}),Xt}(Mt);if(bt.showHidden&&(Mt=Object.getOwnPropertyNames(Jt)),yt(Jt)&&(Mt.indexOf("message")>=0||Mt.indexOf("description")>=0))return St(Jt);if(Mt.length===0){if(Kt(Jt)){var sn=Jt.name?": "+Jt.name:"";return bt.stylize("[Function"+sn+"]","special")}if(Tt(Jt))return bt.stylize(RegExp.prototype.toString.call(Jt),"regexp");if(Wt(Jt))return bt.stylize(Date.prototype.toString.call(Jt),"date");if(yt(Jt))return St(Jt)}var Lt,tn="",cn=!1,on=["{","}"];return Rt(Jt)&&(cn=!0,on=["[","]"]),Kt(Jt)&&(tn=" [Function"+(Jt.name?": "+Jt.name:"")+"]"),Tt(Jt)&&(tn=" "+RegExp.prototype.toString.call(Jt)),Wt(Jt)&&(tn=" "+Date.prototype.toUTCString.call(Jt)),yt(Jt)&&(tn=" "+St(Jt)),Mt.length!==0||cn&&Jt.length!=0?wt<0?Tt(Jt)?bt.stylize(RegExp.prototype.toString.call(Jt),"regexp"):bt.stylize("[Object]","special"):(bt.seen.push(Jt),Lt=cn?function(Gt,Xt,dn,Vn,Fn){for(var fn=[],Un=0,Jn=Xt.length;Un=0,Vn+Fn.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?dn[0]+(Xt===""?"":Xt+` - `)+" "+Gt.join(`, - `)+" "+dn[1]:dn[0]+Xt+" "+Gt.join(", ")+" "+dn[1]}(Lt,tn,on)):on[0]+tn+on[1]}function St(bt){return"["+Error.prototype.toString.call(bt)+"]"}function pt(bt,Jt,wt,At,Ct,Mt){var nn,sn,Lt;if((Lt=Object.getOwnPropertyDescriptor(Jt,Ct)||{value:Jt[Ct]}).get?sn=Lt.set?bt.stylize("[Getter/Setter]","special"):bt.stylize("[Getter]","special"):Lt.set&&(sn=bt.stylize("[Setter]","special")),kt(At,Ct)||(nn="["+Ct+"]"),sn||(bt.seen.indexOf(Lt.value)<0?(sn=ht(wt)?dt(bt,Lt.value,null):dt(bt,Lt.value,wt-1)).indexOf(` -`)>-1&&(sn=Mt?sn.split(` -`).map(function(tn){return" "+tn}).join(` +`)),Error.captureStackTrace(Ut(ln),en),ln}return en}(Ft(Error));et.exports=function(Zt){if(Zt.length>2)throw new Xt(Zt);function Yt(){var Gt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.options=Gt}function Mt(Gt){return new Yt(Gt)}return Yt.prototype.transform=Zt,Mt.Format=Yt,Mt}},function(et,tt,nt){(function(it){var ot=Object.getOwnPropertyDescriptors||function(pn){for(var Rn=Object.keys(pn),Sn={},fn=0;fn=cn)return Mn;switch(Mn){case"%s":return String(fn[Sn++]);case"%d":return Number(fn[Sn++]);case"%j":try{return JSON.stringify(fn[Sn++])}catch{return"[Circular]"}default:return Mn}}),Vn=fn[Sn];Sn=3&&(Sn.depth=arguments[2]),arguments.length>=4&&(Sn.colors=arguments[3]),Gt(Rn)?Sn.showHidden=Rn:Rn&&tt._extend(Sn,Rn),nn(Sn.showHidden)&&(Sn.showHidden=!1),nn(Sn.depth)&&(Sn.depth=2),nn(Sn.colors)&&(Sn.colors=!1),nn(Sn.customInspect)&&(Sn.customInspect=!0),Sn.colors&&(Sn.stylize=Vt),Xt(Sn,pn,Sn.depth)}function Vt(pn,Rn){var Sn=Bt.styles[Rn];return Sn?"\x1B["+Bt.colors[Sn][0]+"m"+pn+"\x1B["+Bt.colors[Sn][1]+"m":pn}function Wt(pn,Rn){return pn}function Xt(pn,Rn,Sn){if(pn.customInspect&&Rn&&En(Rn.inspect)&&Rn.inspect!==tt.inspect&&(!Rn.constructor||Rn.constructor.prototype!==Rn)){var fn=Rn.inspect(Sn,pn);return ln(fn)||(fn=Xt(pn,fn,Sn)),fn}var cn=function(hn,Fn){if(nn(Fn))return hn.stylize("undefined","undefined");if(ln(Fn)){var wn="'"+JSON.stringify(Fn).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return hn.stylize(wn,"string")}if(tn(Fn))return hn.stylize(""+Fn,"number");if(Gt(Fn))return hn.stylize(""+Fn,"boolean");if(en(Fn))return hn.stylize("null","null")}(pn,Rn);if(cn)return cn;var bn=Object.keys(Rn),Vn=function(hn){var Fn={};return hn.forEach(function(wn,Wn){Fn[wn]=!0}),Fn}(bn);if(pn.showHidden&&(bn=Object.getOwnPropertyNames(Rn)),Qn(Rn)&&(bn.indexOf("message")>=0||bn.indexOf("description")>=0))return Zt(Rn);if(bn.length===0){if(En(Rn)){var Mn=Rn.name?": "+Rn.name:"";return pn.stylize("[Function"+Mn+"]","special")}if(sn(Rn))return pn.stylize(RegExp.prototype.toString.call(Rn),"regexp");if(dn(Rn))return pn.stylize(Date.prototype.toString.call(Rn),"date");if(Qn(Rn))return Zt(Rn)}var Zn,In="",Cn=!1,kn=["{","}"];return Mt(Rn)&&(Cn=!0,kn=["[","]"]),En(Rn)&&(In=" [Function"+(Rn.name?": "+Rn.name:"")+"]"),sn(Rn)&&(In=" "+RegExp.prototype.toString.call(Rn)),dn(Rn)&&(In=" "+Date.prototype.toUTCString.call(Rn)),Qn(Rn)&&(In=" "+Zt(Rn)),bn.length!==0||Cn&&Rn.length!=0?Sn<0?sn(Rn)?pn.stylize(RegExp.prototype.toString.call(Rn),"regexp"):pn.stylize("[Object]","special"):(pn.seen.push(Rn),Zn=Cn?function(hn,Fn,wn,Wn,An){for(var Pn=[],jn=0,$n=Fn.length;jn<$n;++jn)Un(Fn,String(jn))?Pn.push(Yt(hn,Fn,wn,Wn,String(jn),!0)):Pn.push("");return An.forEach(function(pr){pr.match(/^\d+$/)||Pn.push(Yt(hn,Fn,wn,Wn,pr,!0))}),Pn}(pn,Rn,Sn,Vn,bn):bn.map(function(hn){return Yt(pn,Rn,Sn,Vn,hn,Cn)}),pn.seen.pop(),function(hn,Fn,wn){return hn.reduce(function(Wn,An){return An.indexOf(` +`)>=0,Wn+An.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?wn[0]+(Fn===""?"":Fn+` + `)+" "+hn.join(`, + `)+" "+wn[1]:wn[0]+Fn+" "+hn.join(", ")+" "+wn[1]}(Zn,In,kn)):kn[0]+In+kn[1]}function Zt(pn){return"["+Error.prototype.toString.call(pn)+"]"}function Yt(pn,Rn,Sn,fn,cn,bn){var Vn,Mn,Zn;if((Zn=Object.getOwnPropertyDescriptor(Rn,cn)||{value:Rn[cn]}).get?Mn=Zn.set?pn.stylize("[Getter/Setter]","special"):pn.stylize("[Getter]","special"):Zn.set&&(Mn=pn.stylize("[Setter]","special")),Un(fn,cn)||(Vn="["+cn+"]"),Mn||(pn.seen.indexOf(Zn.value)<0?(Mn=en(Sn)?Xt(pn,Zn.value,null):Xt(pn,Zn.value,Sn-1)).indexOf(` +`)>-1&&(Mn=bn?Mn.split(` +`).map(function(In){return" "+In}).join(` `).substr(2):` -`+sn.split(` -`).map(function(tn){return" "+tn}).join(` -`)):sn=bt.stylize("[Circular]","special")),Vt(nn)){if(Mt&&Ct.match(/^\d+$/))return sn;(nn=JSON.stringify(""+Ct)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(nn=nn.substr(1,nn.length-2),nn=bt.stylize(nn,"name")):(nn=nn.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),nn=bt.stylize(nn,"string"))}return nn+": "+sn}function Rt(bt){return Array.isArray(bt)}function Bt(bt){return typeof bt=="boolean"}function ht(bt){return bt===null}function mt(bt){return typeof bt=="number"}function gt(bt){return typeof bt=="string"}function Vt(bt){return bt===void 0}function Tt(bt){return ft(bt)&&$t(bt)==="[object RegExp]"}function ft(bt){return typeof bt=="object"&&bt!==null}function Wt(bt){return ft(bt)&&$t(bt)==="[object Date]"}function yt(bt){return ft(bt)&&($t(bt)==="[object Error]"||bt instanceof Error)}function Kt(bt){return typeof bt=="function"}function $t(bt){return Object.prototype.toString.call(bt)}function Ht(bt){return bt<10?"0"+bt.toString(10):bt.toString(10)}tt.debuglog=function(bt){if(Vt(lt)&&(lt={}.NODE_DEBUG||""),bt=bt.toUpperCase(),!ut[bt])if(new RegExp("\\b"+bt+"\\b","i").test(lt)){var Jt=process.pid;ut[bt]=function(){var wt=tt.format.apply(tt,arguments);console.error("%s %d: %s",bt,Jt,wt)}}else ut[bt]=function(){};return ut[bt]},tt.inspect=Ut,Ut.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]},Ut.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},tt.isArray=Rt,tt.isBoolean=Bt,tt.isNull=ht,tt.isNullOrUndefined=function(bt){return bt==null},tt.isNumber=mt,tt.isString=gt,tt.isSymbol=function(bt){return typeof bt=="symbol"},tt.isUndefined=Vt,tt.isRegExp=Tt,tt.isObject=ft,tt.isDate=Wt,tt.isError=yt,tt.isFunction=Kt,tt.isPrimitive=function(bt){return bt===null||typeof bt=="boolean"||typeof bt=="number"||typeof bt=="string"||typeof bt=="symbol"||bt===void 0},tt.isBuffer=nt(8575);var Nt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function qt(){var bt=new Date,Jt=[Ht(bt.getHours()),Ht(bt.getMinutes()),Ht(bt.getSeconds())].join(":");return[bt.getDate(),Nt[bt.getMonth()],Jt].join(" ")}function kt(bt,Jt){return Object.prototype.hasOwnProperty.call(bt,Jt)}tt.log=function(){console.log("%s - %s",qt(),tt.format.apply(tt,arguments))},tt.inherits=nt(5402),tt._extend=function(bt,Jt){if(!Jt||!ft(Jt))return bt;for(var wt=Object.keys(Jt),At=wt.length;At--;)bt[wt[At]]=Jt[wt[At]];return bt}},8558:(et,tt,nt)=>{var rt=process.platform==="win32",lt=nt(25);function ut(gt,Vt){for(var Tt=[],ft=0;ft=0&&!gt[ft];ft--);return Tt===0&&ft===Vt?gt:Tt>ft?[]:gt.slice(Tt,ft+1)}var ot=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/,st=/^([\s\S]*?)((?:\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))(?:[\\\/]*)$/,dt={};function St(gt){var Vt=ot.exec(gt),Tt=(Vt[1]||"")+(Vt[2]||""),ft=Vt[3]||"",Wt=st.exec(ft);return[Tt,Wt[1],Wt[2],Wt[3]]}function pt(gt){var Vt=ot.exec(gt),Tt=Vt[1]||"",ft=!!Tt&&Tt[1]!==":";return{device:Tt,isUnc:ft,isAbsolute:ft||!!Vt[2],tail:Vt[3]}}function Rt(gt){return"\\\\"+gt.replace(/^[\\\/]+/,"").replace(/[\\\/]+/g,"\\")}dt.resolve=function(){for(var gt="",Vt="",Tt=!1,ft=arguments.length-1;ft>=-1;ft--){var Wt;if(ft>=0?Wt=arguments[ft]:gt?(Wt=process.env["="+gt])&&Wt.substr(0,3).toLowerCase()===gt.toLowerCase()+"\\"||(Wt=gt+"\\"):Wt=process.cwd(),!lt.isString(Wt))throw new TypeError("Arguments to path.resolve must be strings");if(Wt){var yt=pt(Wt),Kt=yt.device,$t=yt.isUnc,Ht=yt.isAbsolute,Nt=yt.tail;if((!Kt||!gt||Kt.toLowerCase()===gt.toLowerCase())&&(gt||(gt=Kt),Tt||(Vt=Nt+"\\"+Vt,Tt=Ht),gt&&Tt))break}}return $t&&(gt=Rt(gt)),gt+(Tt?"\\":"")+(Vt=ut(Vt.split(/[\\\/]+/),!Tt).join("\\"))||"."},dt.normalize=function(gt){var Vt=pt(gt),Tt=Vt.device,ft=Vt.isUnc,Wt=Vt.isAbsolute,yt=Vt.tail,Kt=/[\\\/]$/.test(yt);return(yt=ut(yt.split(/[\\\/]+/),!Wt).join("\\"))||Wt||(yt="."),yt&&Kt&&(yt+="\\"),ft&&(Tt=Rt(Tt)),Tt+(Wt?"\\":"")+yt},dt.isAbsolute=function(gt){return pt(gt).isAbsolute},dt.join=function(){for(var gt=[],Vt=0;Vt=-1&&!Vt;Tt--){var ft=Tt>=0?arguments[Tt]:process.cwd();if(!lt.isString(ft))throw new TypeError("Arguments to path.resolve must be strings");ft&&(gt=ft+"/"+gt,Vt=ft[0]==="/")}return(Vt?"/":"")+(gt=ut(gt.split("/"),!Vt).join("/"))||"."},ht.normalize=function(gt){var Vt=ht.isAbsolute(gt),Tt=gt&>[gt.length-1]==="/";return(gt=ut(gt.split("/"),!Vt).join("/"))||Vt||(gt="."),gt&&Tt&&(gt+="/"),(Vt?"/":"")+gt},ht.isAbsolute=function(gt){return gt.charAt(0)==="/"},ht.join=function(){for(var gt="",Vt=0;Vt{et.exports=["Float32Array","Float64Array","Int8Array","Int16Array","Int32Array","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array"]},1830:et=>{var tt=String.prototype.replace,nt=/%20/g,rt="RFC1738",lt="RFC3986";et.exports={default:lt,formatters:{RFC1738:function(ut){return tt.call(ut,nt,"+")},RFC3986:function(ut){return String(ut)}},RFC1738:rt,RFC3986:lt}},5810:(et,tt,nt)=>{var rt=nt(6623),lt=nt(6193),ut=nt(1830);et.exports={formats:ut,parse:lt,stringify:rt}},6193:(et,tt,nt)=>{var rt=nt(1539),lt=Object.prototype.hasOwnProperty,ut=Array.isArray,Ut={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:rt.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},ot=function(St){return St.replace(/&#(\d+);/g,function(pt,Rt){return String.fromCharCode(parseInt(Rt,10))})},st=function(St,pt){return St&&typeof St=="string"&&pt.comma&&St.indexOf(",")>-1?St.split(","):St},dt=function(St,pt,Rt,Bt){if(St){var ht=Rt.allowDots?St.replace(/\.([^.[]+)/g,"[$1]"):St,mt=/(\[[^[\]]*])/g,gt=Rt.depth>0&&/(\[[^[\]]*])/.exec(ht),Vt=gt?ht.slice(0,gt.index):ht,Tt=[];if(Vt){if(!Rt.plainObjects&<.call(Object.prototype,Vt)&&!Rt.allowPrototypes)return;Tt.push(Vt)}for(var ft=0;Rt.depth>0&&(gt=mt.exec(ht))!==null&&ft=0;--Nt){var qt,kt=Wt[Nt];if(kt==="[]"&&Kt.parseArrays)qt=Kt.allowEmptyArrays&&(Ht===""||Kt.strictNullHandling&&Ht===null)?[]:[].concat(Ht);else{qt=Kt.plainObjects?Object.create(null):{};var bt=kt.charAt(0)==="["&&kt.charAt(kt.length-1)==="]"?kt.slice(1,-1):kt,Jt=Kt.decodeDotInKeys?bt.replace(/%2E/g,"."):bt,wt=parseInt(Jt,10);Kt.parseArrays||Jt!==""?!isNaN(wt)&&kt!==Jt&&String(wt)===Jt&&wt>=0&&Kt.parseArrays&&wt<=Kt.arrayLimit?(qt=[])[wt]=Ht:Jt!=="__proto__"&&(qt[Jt]=Ht):qt={0:Ht}}Ht=qt}return Ht}(Tt,pt,Rt,Bt)}};et.exports=function(St,pt){var Rt=function(ft){if(!ft)return Ut;if(ft.allowEmptyArrays!==void 0&&typeof ft.allowEmptyArrays!="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(ft.decodeDotInKeys!==void 0&&typeof ft.decodeDotInKeys!="boolean")throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(ft.decoder!==null&&ft.decoder!==void 0&&typeof ft.decoder!="function")throw new TypeError("Decoder has to be a function.");if(ft.charset!==void 0&&ft.charset!=="utf-8"&&ft.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var Wt=ft.charset===void 0?Ut.charset:ft.charset,yt=ft.duplicates===void 0?Ut.duplicates:ft.duplicates;if(yt!=="combine"&&yt!=="first"&&yt!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:ft.allowDots===void 0?ft.decodeDotInKeys===!0||Ut.allowDots:!!ft.allowDots,allowEmptyArrays:typeof ft.allowEmptyArrays=="boolean"?!!ft.allowEmptyArrays:Ut.allowEmptyArrays,allowPrototypes:typeof ft.allowPrototypes=="boolean"?ft.allowPrototypes:Ut.allowPrototypes,allowSparse:typeof ft.allowSparse=="boolean"?ft.allowSparse:Ut.allowSparse,arrayLimit:typeof ft.arrayLimit=="number"?ft.arrayLimit:Ut.arrayLimit,charset:Wt,charsetSentinel:typeof ft.charsetSentinel=="boolean"?ft.charsetSentinel:Ut.charsetSentinel,comma:typeof ft.comma=="boolean"?ft.comma:Ut.comma,decodeDotInKeys:typeof ft.decodeDotInKeys=="boolean"?ft.decodeDotInKeys:Ut.decodeDotInKeys,decoder:typeof ft.decoder=="function"?ft.decoder:Ut.decoder,delimiter:typeof ft.delimiter=="string"||rt.isRegExp(ft.delimiter)?ft.delimiter:Ut.delimiter,depth:typeof ft.depth=="number"||ft.depth===!1?+ft.depth:Ut.depth,duplicates:yt,ignoreQueryPrefix:ft.ignoreQueryPrefix===!0,interpretNumericEntities:typeof ft.interpretNumericEntities=="boolean"?ft.interpretNumericEntities:Ut.interpretNumericEntities,parameterLimit:typeof ft.parameterLimit=="number"?ft.parameterLimit:Ut.parameterLimit,parseArrays:ft.parseArrays!==!1,plainObjects:typeof ft.plainObjects=="boolean"?ft.plainObjects:Ut.plainObjects,strictNullHandling:typeof ft.strictNullHandling=="boolean"?ft.strictNullHandling:Ut.strictNullHandling}}(pt);if(St===""||St==null)return Rt.plainObjects?Object.create(null):{};for(var Bt=typeof St=="string"?function(ft,Wt){var yt={__proto__:null},Kt=Wt.ignoreQueryPrefix?ft.replace(/^\?/,""):ft;Kt=Kt.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var $t,Ht=Wt.parameterLimit===1/0?void 0:Wt.parameterLimit,Nt=Kt.split(Wt.delimiter,Ht),qt=-1,kt=Wt.charset;if(Wt.charsetSentinel)for($t=0;$t-1&&(Jt=ut(Jt)?[Jt]:Jt);var Mt=lt.call(yt,bt);Mt&&Wt.duplicates==="combine"?yt[bt]=rt.combine(yt[bt],Jt):Mt&&Wt.duplicates!=="last"||(yt[bt]=Jt)}return yt}(St,Rt):St,ht=Rt.plainObjects?Object.create(null):{},mt=Object.keys(Bt),gt=0;gt{var rt=nt(7575),lt=nt(1539),ut=nt(1830),Ut=Object.prototype.hasOwnProperty,ot={brackets:function(gt){return gt+"[]"},comma:"comma",indices:function(gt,Vt){return gt+"["+Vt+"]"},repeat:function(gt){return gt}},st=Array.isArray,dt=Array.prototype.push,St=function(gt,Vt){dt.apply(gt,st(Vt)?Vt:[Vt])},pt=Date.prototype.toISOString,Rt=ut.default,Bt={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:lt.encode,encodeValuesOnly:!1,format:Rt,formatter:ut.formatters[Rt],indices:!1,serializeDate:function(gt){return pt.call(gt)},skipNulls:!1,strictNullHandling:!1},ht={},mt=function gt(Vt,Tt,ft,Wt,yt,Kt,$t,Ht,Nt,qt,kt,bt,Jt,wt,At,Ct,Mt,nn){for(var sn,Lt=Vt,tn=nn,cn=0,on=!1;(tn=tn.get(ht))!==void 0&&!on;){var Gt=tn.get(Vt);if(cn+=1,Gt!==void 0){if(Gt===cn)throw new RangeError("Cyclic object value");on=!0}tn.get(ht)===void 0&&(cn=0)}if(typeof qt=="function"?Lt=qt(Tt,Lt):Lt instanceof Date?Lt=Jt(Lt):ft==="comma"&&st(Lt)&&(Lt=lt.maybeMap(Lt,function(_t){return _t instanceof Date?Jt(_t):_t})),Lt===null){if(Kt)return Nt&&!Ct?Nt(Tt,Bt.encoder,Mt,"key",wt):Tt;Lt=""}if(typeof(sn=Lt)=="string"||typeof sn=="number"||typeof sn=="boolean"||typeof sn=="symbol"||typeof sn=="bigint"||lt.isBuffer(Lt))return Nt?[At(Ct?Tt:Nt(Tt,Bt.encoder,Mt,"key",wt))+"="+At(Nt(Lt,Bt.encoder,Mt,"value",wt))]:[At(Tt)+"="+At(String(Lt))];var Xt,dn=[];if(Lt===void 0)return dn;if(ft==="comma"&&st(Lt))Ct&&Nt&&(Lt=lt.maybeMap(Lt,Nt)),Xt=[{value:Lt.length>0?Lt.join(",")||null:void 0}];else if(st(qt))Xt=qt;else{var Vn=Object.keys(Lt);Xt=kt?Vn.sort(kt):Vn}var Fn=Ht?Tt.replace(/\./g,"%2E"):Tt,fn=Wt&&st(Lt)&&Lt.length===1?Fn+"[]":Fn;if(yt&&st(Lt)&&Lt.length===0)return fn+"[]";for(var Un=0;Un0?bt+kt:""}},1539:(et,tt,nt)=>{var rt=nt(1830),lt=Object.prototype.hasOwnProperty,ut=Array.isArray,Ut=function(){for(var st=[],dt=0;dt<256;++dt)st.push("%"+((dt<16?"0":"")+dt.toString(16)).toUpperCase());return st}(),ot=function(st,dt){for(var St=dt&&dt.plainObjects?Object.create(null):{},pt=0;pt1;){var ft=Tt.pop(),Wt=ft.obj[ft.prop];if(ut(Wt)){for(var yt=[],Kt=0;Kt=1024?Bt.slice(mt,mt+1024):Bt,Vt=[],Tt=0;Tt=48&&ft<=57||ft>=65&&ft<=90||ft>=97&&ft<=122||Rt===rt.RFC1738&&(ft===40||ft===41)?Vt[Vt.length]=gt.charAt(Tt):ft<128?Vt[Vt.length]=Ut[ft]:ft<2048?Vt[Vt.length]=Ut[192|ft>>6]+Ut[128|63&ft]:ft<55296||ft>=57344?Vt[Vt.length]=Ut[224|ft>>12]+Ut[128|ft>>6&63]+Ut[128|63&ft]:(Tt+=1,ft=65536+((1023&ft)<<10|1023>.charCodeAt(Tt)),Vt[Vt.length]=Ut[240|ft>>18]+Ut[128|ft>>12&63]+Ut[128|ft>>6&63]+Ut[128|63&ft])}ht+=Vt.join("")}return ht},isBuffer:function(st){return!(!st||typeof st!="object")&&!!(st.constructor&&st.constructor.isBuffer&&st.constructor.isBuffer(st))},isRegExp:function(st){return Object.prototype.toString.call(st)==="[object RegExp]"},maybeMap:function(st,dt){if(ut(st)){for(var St=[],pt=0;pt{var tt={};function nt(lt,ut,Ut){Ut||(Ut=Error);var ot=function(st){var dt,St;function pt(Rt,Bt,ht){return st.call(this,function(mt,gt,Vt){return typeof ut=="string"?ut:ut(mt,gt,Vt)}(Rt,Bt,ht))||this}return St=st,(dt=pt).prototype=Object.create(St.prototype),dt.prototype.constructor=dt,dt.__proto__=St,pt}(Ut);ot.prototype.name=Ut.name,ot.prototype.code=lt,tt[lt]=ot}function rt(lt,ut){if(Array.isArray(lt)){var Ut=lt.length;return lt=lt.map(function(ot){return String(ot)}),Ut>2?"one of ".concat(ut," ").concat(lt.slice(0,Ut-1).join(", "),", or ")+lt[Ut-1]:Ut===2?"one of ".concat(ut," ").concat(lt[0]," or ").concat(lt[1]):"of ".concat(ut," ").concat(lt[0])}return"of ".concat(ut," ").concat(String(lt))}nt("ERR_INVALID_OPT_VALUE",function(lt,ut){return'The value "'+ut+'" is invalid for option "'+lt+'"'},TypeError),nt("ERR_INVALID_ARG_TYPE",function(lt,ut,Ut){var ot,st,dt;if(typeof ut=="string"&&(st="not ",ut.substr(0,st.length)===st)?(ot="must not be",ut=ut.replace(/^not /,"")):ot="must be",function(pt,Rt,Bt){return(Bt===void 0||Bt>pt.length)&&(Bt=pt.length),pt.substring(Bt-Rt.length,Bt)===Rt}(lt," argument"))dt="The ".concat(lt," ").concat(ot," ").concat(rt(ut,"type"));else{var St=function(pt,Rt,Bt){return typeof Bt!="number"&&(Bt=0),!(Bt+Rt.length>pt.length)&&pt.indexOf(Rt,Bt)!==-1}(lt,".")?"property":"argument";dt='The "'.concat(lt,'" ').concat(St," ").concat(ot," ").concat(rt(ut,"type"))}return dt+=". Received type ".concat(typeof Ut)},TypeError),nt("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),nt("ERR_METHOD_NOT_IMPLEMENTED",function(lt){return"The "+lt+" method is not implemented"}),nt("ERR_STREAM_PREMATURE_CLOSE","Premature close"),nt("ERR_STREAM_DESTROYED",function(lt){return"Cannot call "+lt+" after a stream was destroyed"}),nt("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),nt("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),nt("ERR_STREAM_WRITE_AFTER_END","write after end"),nt("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),nt("ERR_UNKNOWN_ENCODING",function(lt){return"Unknown encoding: "+lt},TypeError),nt("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),et.exports.F=tt},1265:(et,tt,nt)=>{var rt=Object.keys||function(Rt){var Bt=[];for(var ht in Rt)Bt.push(ht);return Bt};et.exports=dt;var lt=nt(8199),ut=nt(5291);nt(5615)(dt,lt);for(var Ut=rt(ut.prototype),ot=0;ot{et.exports=lt;var rt=nt(9415);function lt(ut){if(!(this instanceof lt))return new lt(ut);rt.call(this,ut)}nt(5615)(lt,rt),lt.prototype._transform=function(ut,Ut,ot){ot(null,ut)}},8199:(et,tt,nt)=>{var rt;et.exports=Ht,Ht.ReadableState=$t,nt(46).EventEmitter;var lt=function(Gt,Xt){return Gt.listeners(Xt).length},ut=nt(4856),Ut=nt(1048).Buffer,ot=(nt.g!==void 0?nt.g:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},st,dt=nt(3951);st=dt&&dt.debuglog?dt.debuglog("stream"):function(){};var St,pt,Rt,Bt=nt(82),ht=nt(6527),mt=nt(9952).getHighWaterMark,gt=nt(5699).F,Vt=gt.ERR_INVALID_ARG_TYPE,Tt=gt.ERR_STREAM_PUSH_AFTER_EOF,ft=gt.ERR_METHOD_NOT_IMPLEMENTED,Wt=gt.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;nt(5615)(Ht,ut);var yt=ht.errorOrDestroy,Kt=["error","close","destroy","pause","resume"];function $t(Gt,Xt,dn){rt=rt||nt(1265),Gt=Gt||{},typeof dn!="boolean"&&(dn=Xt instanceof rt),this.objectMode=!!Gt.objectMode,dn&&(this.objectMode=this.objectMode||!!Gt.readableObjectMode),this.highWaterMark=mt(this,Gt,"readableHighWaterMark",dn),this.buffer=new Bt,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=Gt.emitClose!==!1,this.autoDestroy=!!Gt.autoDestroy,this.destroyed=!1,this.defaultEncoding=Gt.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,Gt.encoding&&(St||(St=nt(8888).StringDecoder),this.decoder=new St(Gt.encoding),this.encoding=Gt.encoding)}function Ht(Gt){if(rt=rt||nt(1265),!(this instanceof Ht))return new Ht(Gt);var Xt=this instanceof rt;this._readableState=new $t(Gt,this,Xt),this.readable=!0,Gt&&(typeof Gt.read=="function"&&(this._read=Gt.read),typeof Gt.destroy=="function"&&(this._destroy=Gt.destroy)),ut.call(this)}function Nt(Gt,Xt,dn,Vn,Fn){st("readableAddChunk",Xt);var fn,Un=Gt._readableState;if(Xt===null)Un.reading=!1,function(Jn,_n){if(st("onEofChunk"),!_n.ended){if(_n.decoder){var Zn=_n.decoder.end();Zn&&Zn.length&&(_n.buffer.push(Zn),_n.length+=_n.objectMode?1:Zn.length)}_n.ended=!0,_n.sync?bt(Jn):(_n.needReadable=!1,_n.emittedReadable||(_n.emittedReadable=!0,Jt(Jn)))}}(Gt,Un);else if(Fn||(fn=function(Jn,_n){var Zn;On=_n,Ut.isBuffer(On)||On instanceof ot||typeof _n=="string"||_n===void 0||Jn.objectMode||(Zn=new Vt("chunk",["string","Buffer","Uint8Array"],_n));var On;return Zn}(Un,Xt)),fn)yt(Gt,fn);else if(Un.objectMode||Xt&&Xt.length>0)if(typeof Xt=="string"||Un.objectMode||Object.getPrototypeOf(Xt)===Ut.prototype||(Xt=function(Jn){return Ut.from(Jn)}(Xt)),Vn)Un.endEmitted?yt(Gt,new Wt):qt(Gt,Un,Xt,!0);else if(Un.ended)yt(Gt,new Tt);else{if(Un.destroyed)return!1;Un.reading=!1,Un.decoder&&!dn?(Xt=Un.decoder.write(Xt),Un.objectMode||Xt.length!==0?qt(Gt,Un,Xt,!1):wt(Gt,Un)):qt(Gt,Un,Xt,!1)}else Vn||(Un.reading=!1,wt(Gt,Un));return!Un.ended&&(Un.lengthXt.highWaterMark&&(Xt.highWaterMark=function(dn){return dn>=1073741824?dn=1073741824:(dn--,dn|=dn>>>1,dn|=dn>>>2,dn|=dn>>>4,dn|=dn>>>8,dn|=dn>>>16,dn++),dn}(Gt)),Gt<=Xt.length?Gt:Xt.ended?Xt.length:(Xt.needReadable=!0,0))}function bt(Gt){var Xt=Gt._readableState;st("emitReadable",Xt.needReadable,Xt.emittedReadable),Xt.needReadable=!1,Xt.emittedReadable||(st("emitReadable",Xt.flowing),Xt.emittedReadable=!0,process.nextTick(Jt,Gt))}function Jt(Gt){var Xt=Gt._readableState;st("emitReadable_",Xt.destroyed,Xt.length,Xt.ended),Xt.destroyed||!Xt.length&&!Xt.ended||(Gt.emit("readable"),Xt.emittedReadable=!1),Xt.needReadable=!Xt.flowing&&!Xt.ended&&Xt.length<=Xt.highWaterMark,sn(Gt)}function wt(Gt,Xt){Xt.readingMore||(Xt.readingMore=!0,process.nextTick(At,Gt,Xt))}function At(Gt,Xt){for(;!Xt.reading&&!Xt.ended&&(Xt.length0,Xt.resumeScheduled&&!Xt.paused?Xt.flowing=!0:Gt.listenerCount("data")>0&&Gt.resume()}function Mt(Gt){st("readable nexttick read 0"),Gt.read(0)}function nn(Gt,Xt){st("resume",Xt.reading),Xt.reading||Gt.read(0),Xt.resumeScheduled=!1,Gt.emit("resume"),sn(Gt),Xt.flowing&&!Xt.reading&&Gt.read(0)}function sn(Gt){var Xt=Gt._readableState;for(st("flow",Xt.flowing);Xt.flowing&&Gt.read()!==null;);}function Lt(Gt,Xt){return Xt.length===0?null:(Xt.objectMode?dn=Xt.buffer.shift():!Gt||Gt>=Xt.length?(dn=Xt.decoder?Xt.buffer.join(""):Xt.buffer.length===1?Xt.buffer.first():Xt.buffer.concat(Xt.length),Xt.buffer.clear()):dn=Xt.buffer.consume(Gt,Xt.decoder),dn);var dn}function tn(Gt){var Xt=Gt._readableState;st("endReadable",Xt.endEmitted),Xt.endEmitted||(Xt.ended=!0,process.nextTick(cn,Xt,Gt))}function cn(Gt,Xt){if(st("endReadableNT",Gt.endEmitted,Gt.length),!Gt.endEmitted&&Gt.length===0&&(Gt.endEmitted=!0,Xt.readable=!1,Xt.emit("end"),Gt.autoDestroy)){var dn=Xt._writableState;(!dn||dn.autoDestroy&&dn.finished)&&Xt.destroy()}}function on(Gt,Xt){for(var dn=0,Vn=Gt.length;dn=Xt.highWaterMark:Xt.length>0)||Xt.ended))return st("read: emitReadable",Xt.length,Xt.ended),Xt.length===0&&Xt.ended?tn(this):bt(this),null;if((Gt=kt(Gt,Xt))===0&&Xt.ended)return Xt.length===0&&tn(this),null;var Vn,Fn=Xt.needReadable;return st("need readable",Fn),(Xt.length===0||Xt.length-Gt0?Lt(Gt,Xt):null)===null?(Xt.needReadable=Xt.length<=Xt.highWaterMark,Gt=0):(Xt.length-=Gt,Xt.awaitDrain=0),Xt.length===0&&(Xt.ended||(Xt.needReadable=!0),dn!==Gt&&Xt.ended&&tn(this)),Vn!==null&&this.emit("data",Vn),Vn},Ht.prototype._read=function(Gt){yt(this,new ft("_read()"))},Ht.prototype.pipe=function(Gt,Xt){var dn=this,Vn=this._readableState;switch(Vn.pipesCount){case 0:Vn.pipes=Gt;break;case 1:Vn.pipes=[Vn.pipes,Gt];break;default:Vn.pipes.push(Gt)}Vn.pipesCount+=1,st("pipe count=%d opts=%j",Vn.pipesCount,Xt);var Fn=(!Xt||Xt.end!==!1)&&Gt!==process.stdout&&Gt!==process.stderr?Un:Ot;function fn(jt,pn){st("onunpipe"),jt===dn&&pn&&pn.hasUnpiped===!1&&(pn.hasUnpiped=!0,st("cleanup"),Gt.removeListener("close",Yn),Gt.removeListener("finish",_t),Gt.removeListener("drain",Jn),Gt.removeListener("error",On),Gt.removeListener("unpipe",fn),dn.removeListener("end",Un),dn.removeListener("end",Ot),dn.removeListener("data",Zn),_n=!0,!Vn.awaitDrain||Gt._writableState&&!Gt._writableState.needDrain||Jn())}function Un(){st("onend"),Gt.end()}Vn.endEmitted?process.nextTick(Fn):dn.once("end",Fn),Gt.on("unpipe",fn);var Jn=function(jt){return function(){var pn=jt._readableState;st("pipeOnDrain",pn.awaitDrain),pn.awaitDrain&&pn.awaitDrain--,pn.awaitDrain===0&<(jt,"data")&&(pn.flowing=!0,sn(jt))}}(dn);Gt.on("drain",Jn);var _n=!1;function Zn(jt){st("ondata");var pn=Gt.write(jt);st("dest.write",pn),pn===!1&&((Vn.pipesCount===1&&Vn.pipes===Gt||Vn.pipesCount>1&&on(Vn.pipes,Gt)!==-1)&&!_n&&(st("false write response, pause",Vn.awaitDrain),Vn.awaitDrain++),dn.pause())}function On(jt){st("onerror",jt),Ot(),Gt.removeListener("error",On),lt(Gt,"error")===0&&yt(Gt,jt)}function Yn(){Gt.removeListener("finish",_t),Ot()}function _t(){st("onfinish"),Gt.removeListener("close",Yn),Ot()}function Ot(){st("unpipe"),dn.unpipe(Gt)}return dn.on("data",Zn),function(jt,pn,En){if(typeof jt.prependListener=="function")return jt.prependListener(pn,En);jt._events&&jt._events[pn]?Array.isArray(jt._events[pn])?jt._events[pn].unshift(En):jt._events[pn]=[En,jt._events[pn]]:jt.on(pn,En)}(Gt,"error",On),Gt.once("close",Yn),Gt.once("finish",_t),Gt.emit("pipe",dn),Vn.flowing||(st("pipe resume"),dn.resume()),Gt},Ht.prototype.unpipe=function(Gt){var Xt=this._readableState,dn={hasUnpiped:!1};if(Xt.pipesCount===0)return this;if(Xt.pipesCount===1)return Gt&&Gt!==Xt.pipes||(Gt||(Gt=Xt.pipes),Xt.pipes=null,Xt.pipesCount=0,Xt.flowing=!1,Gt&&Gt.emit("unpipe",this,dn)),this;if(!Gt){var Vn=Xt.pipes,Fn=Xt.pipesCount;Xt.pipes=null,Xt.pipesCount=0,Xt.flowing=!1;for(var fn=0;fn0,Vn.flowing!==!1&&this.resume()):Gt==="readable"&&(Vn.endEmitted||Vn.readableListening||(Vn.readableListening=Vn.needReadable=!0,Vn.flowing=!1,Vn.emittedReadable=!1,st("on readable",Vn.length,Vn.reading),Vn.length?bt(this):Vn.reading||process.nextTick(Mt,this))),dn},Ht.prototype.addListener=Ht.prototype.on,Ht.prototype.removeListener=function(Gt,Xt){var dn=ut.prototype.removeListener.call(this,Gt,Xt);return Gt==="readable"&&process.nextTick(Ct,this),dn},Ht.prototype.removeAllListeners=function(Gt){var Xt=ut.prototype.removeAllListeners.apply(this,arguments);return Gt!=="readable"&&Gt!==void 0||process.nextTick(Ct,this),Xt},Ht.prototype.resume=function(){var Gt=this._readableState;return Gt.flowing||(st("resume"),Gt.flowing=!Gt.readableListening,function(Xt,dn){dn.resumeScheduled||(dn.resumeScheduled=!0,process.nextTick(nn,Xt,dn))}(this,Gt)),Gt.paused=!1,this},Ht.prototype.pause=function(){return st("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(st("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},Ht.prototype.wrap=function(Gt){var Xt=this,dn=this._readableState,Vn=!1;for(var Fn in Gt.on("end",function(){if(st("wrapped end"),dn.decoder&&!dn.ended){var Un=dn.decoder.end();Un&&Un.length&&Xt.push(Un)}Xt.push(null)}),Gt.on("data",function(Un){st("wrapped data"),dn.decoder&&(Un=dn.decoder.write(Un)),dn.objectMode&&Un==null||(dn.objectMode||Un&&Un.length)&&(Xt.push(Un)||(Vn=!0,Gt.pause()))}),Gt)this[Fn]===void 0&&typeof Gt[Fn]=="function"&&(this[Fn]=function(Un){return function(){return Gt[Un].apply(Gt,arguments)}}(Fn));for(var fn=0;fn{et.exports=St;var rt=nt(5699).F,lt=rt.ERR_METHOD_NOT_IMPLEMENTED,ut=rt.ERR_MULTIPLE_CALLBACK,Ut=rt.ERR_TRANSFORM_ALREADY_TRANSFORMING,ot=rt.ERR_TRANSFORM_WITH_LENGTH_0,st=nt(1265);function dt(Bt,ht){var mt=this._transformState;mt.transforming=!1;var gt=mt.writecb;if(gt===null)return this.emit("error",new ut);mt.writechunk=null,mt.writecb=null,ht!=null&&this.push(ht),gt(Bt);var Vt=this._readableState;Vt.reading=!1,(Vt.needReadable||Vt.length{function rt(At){var Ct=this;this.next=null,this.entry=null,this.finish=function(){(function(Mt,nn,sn){var Lt=Mt.entry;for(Mt.entry=null;Lt;){var tn=Lt.callback;nn.pendingcb--,tn(sn),Lt=Lt.next}nn.corkedRequestsFree.next=Mt})(Ct,At)}}var lt;et.exports=Ht,Ht.WritableState=$t;var ut={deprecate:nt(6732)},Ut=nt(4856),ot=nt(1048).Buffer,st=(nt.g!==void 0?nt.g:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},dt,St=nt(6527),pt=nt(9952).getHighWaterMark,Rt=nt(5699).F,Bt=Rt.ERR_INVALID_ARG_TYPE,ht=Rt.ERR_METHOD_NOT_IMPLEMENTED,mt=Rt.ERR_MULTIPLE_CALLBACK,gt=Rt.ERR_STREAM_CANNOT_PIPE,Vt=Rt.ERR_STREAM_DESTROYED,Tt=Rt.ERR_STREAM_NULL_VALUES,ft=Rt.ERR_STREAM_WRITE_AFTER_END,Wt=Rt.ERR_UNKNOWN_ENCODING,yt=St.errorOrDestroy;function Kt(){}function $t(At,Ct,Mt){lt=lt||nt(1265),At=At||{},typeof Mt!="boolean"&&(Mt=Ct instanceof lt),this.objectMode=!!At.objectMode,Mt&&(this.objectMode=this.objectMode||!!At.writableObjectMode),this.highWaterMark=pt(this,At,"writableHighWaterMark",Mt),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var nn=At.decodeStrings===!1;this.decodeStrings=!nn,this.defaultEncoding=At.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(sn){(function(Lt,tn){var cn=Lt._writableState,on=cn.sync,Gt=cn.writecb;if(typeof Gt!="function")throw new mt;if(function(dn){dn.writing=!1,dn.writecb=null,dn.length-=dn.writelen,dn.writelen=0}(cn),tn)(function(dn,Vn,Fn,fn,Un){--Vn.pendingcb,Fn?(process.nextTick(Un,fn),process.nextTick(wt,dn,Vn),dn._writableState.errorEmitted=!0,yt(dn,fn)):(Un(fn),dn._writableState.errorEmitted=!0,yt(dn,fn),wt(dn,Vn))})(Lt,cn,on,tn,Gt);else{var Xt=bt(cn)||Lt.destroyed;Xt||cn.corked||cn.bufferProcessing||!cn.bufferedRequest||kt(Lt,cn),on?process.nextTick(qt,Lt,cn,Xt,Gt):qt(Lt,cn,Xt,Gt)}})(Ct,sn)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=At.emitClose!==!1,this.autoDestroy=!!At.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new rt(this)}function Ht(At){var Ct=this instanceof(lt=lt||nt(1265));if(!Ct&&!dt.call(Ht,this))return new Ht(At);this._writableState=new $t(At,this,Ct),this.writable=!0,At&&(typeof At.write=="function"&&(this._write=At.write),typeof At.writev=="function"&&(this._writev=At.writev),typeof At.destroy=="function"&&(this._destroy=At.destroy),typeof At.final=="function"&&(this._final=At.final)),Ut.call(this)}function Nt(At,Ct,Mt,nn,sn,Lt,tn){Ct.writelen=nn,Ct.writecb=tn,Ct.writing=!0,Ct.sync=!0,Ct.destroyed?Ct.onwrite(new Vt("write")):Mt?At._writev(sn,Ct.onwrite):At._write(sn,Lt,Ct.onwrite),Ct.sync=!1}function qt(At,Ct,Mt,nn){Mt||function(sn,Lt){Lt.length===0&&Lt.needDrain&&(Lt.needDrain=!1,sn.emit("drain"))}(At,Ct),Ct.pendingcb--,nn(),wt(At,Ct)}function kt(At,Ct){Ct.bufferProcessing=!0;var Mt=Ct.bufferedRequest;if(At._writev&&Mt&&Mt.next){var nn=Ct.bufferedRequestCount,sn=new Array(nn),Lt=Ct.corkedRequestsFree;Lt.entry=Mt;for(var tn=0,cn=!0;Mt;)sn[tn]=Mt,Mt.isBuf||(cn=!1),Mt=Mt.next,tn+=1;sn.allBuffers=cn,Nt(At,Ct,!0,Ct.length,sn,"",Lt.finish),Ct.pendingcb++,Ct.lastBufferedRequest=null,Lt.next?(Ct.corkedRequestsFree=Lt.next,Lt.next=null):Ct.corkedRequestsFree=new rt(Ct),Ct.bufferedRequestCount=0}else{for(;Mt;){var on=Mt.chunk,Gt=Mt.encoding,Xt=Mt.callback;if(Nt(At,Ct,!1,Ct.objectMode?1:on.length,on,Gt,Xt),Mt=Mt.next,Ct.bufferedRequestCount--,Ct.writing)break}Mt===null&&(Ct.lastBufferedRequest=null)}Ct.bufferedRequest=Mt,Ct.bufferProcessing=!1}function bt(At){return At.ending&&At.length===0&&At.bufferedRequest===null&&!At.finished&&!At.writing}function Jt(At,Ct){At._final(function(Mt){Ct.pendingcb--,Mt&&yt(At,Mt),Ct.prefinished=!0,At.emit("prefinish"),wt(At,Ct)})}function wt(At,Ct){var Mt=bt(Ct);if(Mt&&(function(sn,Lt){Lt.prefinished||Lt.finalCalled||(typeof sn._final!="function"||Lt.destroyed?(Lt.prefinished=!0,sn.emit("prefinish")):(Lt.pendingcb++,Lt.finalCalled=!0,process.nextTick(Jt,sn,Lt)))}(At,Ct),Ct.pendingcb===0&&(Ct.finished=!0,At.emit("finish"),Ct.autoDestroy))){var nn=At._readableState;(!nn||nn.autoDestroy&&nn.endEmitted)&&At.destroy()}return Mt}nt(5615)(Ht,Ut),$t.prototype.getBuffer=function(){for(var At=this.bufferedRequest,Ct=[];At;)Ct.push(At),At=At.next;return Ct},function(){try{Object.defineProperty($t.prototype,"buffer",{get:ut.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"?(dt=Function.prototype[Symbol.hasInstance],Object.defineProperty(Ht,Symbol.hasInstance,{value:function(At){return!!dt.call(this,At)||this===Ht&&At&&At._writableState instanceof $t}})):dt=function(At){return At instanceof this},Ht.prototype.pipe=function(){yt(this,new gt)},Ht.prototype.write=function(At,Ct,Mt){var nn,sn=this._writableState,Lt=!1,tn=!sn.objectMode&&(nn=At,ot.isBuffer(nn)||nn instanceof st);return tn&&!ot.isBuffer(At)&&(At=function(cn){return ot.from(cn)}(At)),typeof Ct=="function"&&(Mt=Ct,Ct=null),tn?Ct="buffer":Ct||(Ct=sn.defaultEncoding),typeof Mt!="function"&&(Mt=Kt),sn.ending?function(cn,on){var Gt=new ft;yt(cn,Gt),process.nextTick(on,Gt)}(this,Mt):(tn||function(cn,on,Gt,Xt){var dn;return Gt===null?dn=new Tt:typeof Gt=="string"||on.objectMode||(dn=new Bt("chunk",["string","Buffer"],Gt)),!dn||(yt(cn,dn),process.nextTick(Xt,dn),!1)}(this,sn,At,Mt))&&(sn.pendingcb++,Lt=function(cn,on,Gt,Xt,dn,Vn){if(!Gt){var Fn=function(_n,Zn,On){return _n.objectMode||_n.decodeStrings===!1||typeof Zn!="string"||(Zn=ot.from(Zn,On)),Zn}(on,Xt,dn);Xt!==Fn&&(Gt=!0,dn="buffer",Xt=Fn)}var fn=on.objectMode?1:Xt.length;on.length+=fn;var Un=on.length-1))throw new Wt(At);return this._writableState.defaultEncoding=At,this},Object.defineProperty(Ht.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(Ht.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Ht.prototype._write=function(At,Ct,Mt){Mt(new ht("_write()"))},Ht.prototype._writev=null,Ht.prototype.end=function(At,Ct,Mt){var nn=this._writableState;return typeof At=="function"?(Mt=At,At=null,Ct=null):typeof Ct=="function"&&(Mt=Ct,Ct=null),At!=null&&this.write(At,Ct),nn.corked&&(nn.corked=1,this.uncork()),nn.ending||function(sn,Lt,tn){Lt.ending=!0,wt(sn,Lt),tn&&(Lt.finished?process.nextTick(tn):sn.once("finish",tn)),Lt.ended=!0,sn.writable=!1}(this,nn,Mt),this},Object.defineProperty(Ht.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(Ht.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(At){this._writableState&&(this._writableState.destroyed=At)}}),Ht.prototype.destroy=St.destroy,Ht.prototype._undestroy=St.undestroy,Ht.prototype._destroy=function(At,Ct){Ct(At)}},534:(et,tt,nt)=>{var rt;function lt(Tt,ft,Wt){return(ft=function(yt){var Kt=function($t,Ht){if(typeof $t!="object"||$t===null)return $t;var Nt=$t[Symbol.toPrimitive];if(Nt!==void 0){var qt=Nt.call($t,Ht||"default");if(typeof qt!="object")return qt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Ht==="string"?String:Number)($t)}(yt,"string");return typeof Kt=="symbol"?Kt:String(Kt)}(ft))in Tt?Object.defineProperty(Tt,ft,{value:Wt,enumerable:!0,configurable:!0,writable:!0}):Tt[ft]=Wt,Tt}var ut=nt(4869),Ut=Symbol("lastResolve"),ot=Symbol("lastReject"),st=Symbol("error"),dt=Symbol("ended"),St=Symbol("lastPromise"),pt=Symbol("handlePromise"),Rt=Symbol("stream");function Bt(Tt,ft){return{value:Tt,done:ft}}function ht(Tt){var ft=Tt[Ut];if(ft!==null){var Wt=Tt[Rt].read();Wt!==null&&(Tt[St]=null,Tt[Ut]=null,Tt[ot]=null,ft(Bt(Wt,!1)))}}function mt(Tt){process.nextTick(ht,Tt)}var gt=Object.getPrototypeOf(function(){}),Vt=Object.setPrototypeOf((lt(rt={get stream(){return this[Rt]},next:function(){var Tt=this,ft=this[st];if(ft!==null)return Promise.reject(ft);if(this[dt])return Promise.resolve(Bt(void 0,!0));if(this[Rt].destroyed)return new Promise(function($t,Ht){process.nextTick(function(){Tt[st]?Ht(Tt[st]):$t(Bt(void 0,!0))})});var Wt,yt=this[St];if(yt)Wt=new Promise(function($t,Ht){return function(Nt,qt){$t.then(function(){Ht[dt]?Nt(Bt(void 0,!0)):Ht[pt](Nt,qt)},qt)}}(yt,this));else{var Kt=this[Rt].read();if(Kt!==null)return Promise.resolve(Bt(Kt,!1));Wt=new Promise(this[pt])}return this[St]=Wt,Wt}},Symbol.asyncIterator,function(){return this}),lt(rt,"return",function(){var Tt=this;return new Promise(function(ft,Wt){Tt[Rt].destroy(null,function(yt){yt?Wt(yt):ft(Bt(void 0,!0))})})}),rt),gt);et.exports=function(Tt){var ft,Wt=Object.create(Vt,(lt(ft={},Rt,{value:Tt,writable:!0}),lt(ft,Ut,{value:null,writable:!0}),lt(ft,ot,{value:null,writable:!0}),lt(ft,st,{value:null,writable:!0}),lt(ft,dt,{value:Tt._readableState.endEmitted,writable:!0}),lt(ft,pt,{value:function(yt,Kt){var $t=Wt[Rt].read();$t?(Wt[St]=null,Wt[Ut]=null,Wt[ot]=null,yt(Bt($t,!1))):(Wt[Ut]=yt,Wt[ot]=Kt)},writable:!0}),ft));return Wt[St]=null,ut(Tt,function(yt){if(yt&&yt.code!=="ERR_STREAM_PREMATURE_CLOSE"){var Kt=Wt[ot];return Kt!==null&&(Wt[St]=null,Wt[Ut]=null,Wt[ot]=null,Kt(yt)),void(Wt[st]=yt)}var $t=Wt[Ut];$t!==null&&(Wt[St]=null,Wt[Ut]=null,Wt[ot]=null,$t(Bt(void 0,!0))),Wt[dt]=!0}),Tt.on("readable",mt.bind(null,Wt)),Wt}},82:(et,tt,nt)=>{function rt(pt,Rt){var Bt=Object.keys(pt);if(Object.getOwnPropertySymbols){var ht=Object.getOwnPropertySymbols(pt);Rt&&(ht=ht.filter(function(mt){return Object.getOwnPropertyDescriptor(pt,mt).enumerable})),Bt.push.apply(Bt,ht)}return Bt}function lt(pt){for(var Rt=1;Rt0?this.tail.next=mt:this.head=mt,this.tail=mt,++this.length}},{key:"unshift",value:function(ht){var mt={data:ht,next:this.head};this.length===0&&(this.tail=mt),this.head=mt,++this.length}},{key:"shift",value:function(){if(this.length!==0){var ht=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,ht}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(ht){if(this.length===0)return"";for(var mt=this.head,gt=""+mt.data;mt=mt.next;)gt+=ht+mt.data;return gt}},{key:"concat",value:function(ht){if(this.length===0)return st.alloc(0);for(var mt,gt,Vt,Tt=st.allocUnsafe(ht>>>0),ft=this.head,Wt=0;ft;)mt=ft.data,gt=Tt,Vt=Wt,st.prototype.copy.call(mt,gt,Vt),Wt+=ft.data.length,ft=ft.next;return Tt}},{key:"consume",value:function(ht,mt){var gt;return htTt.length?Tt.length:ht;if(ft===Tt.length?Vt+=Tt:Vt+=Tt.slice(0,ht),(ht-=ft)==0){ft===Tt.length?(++gt,mt.next?this.head=mt.next:this.head=this.tail=null):(this.head=mt,mt.data=Tt.slice(ft));break}++gt}return this.length-=gt,Vt}},{key:"_getBuffer",value:function(ht){var mt=st.allocUnsafe(ht),gt=this.head,Vt=1;for(gt.data.copy(mt),ht-=gt.data.length;gt=gt.next;){var Tt=gt.data,ft=ht>Tt.length?Tt.length:ht;if(Tt.copy(mt,mt.length-ht,0,ft),(ht-=ft)==0){ft===Tt.length?(++Vt,gt.next?this.head=gt.next:this.head=this.tail=null):(this.head=gt,gt.data=Tt.slice(ft));break}++Vt}return this.length-=Vt,mt}},{key:St,value:function(ht,mt){return dt(this,lt(lt({},mt),{},{depth:0,customInspect:!1}))}}])&&Ut(Rt.prototype,Bt),Object.defineProperty(Rt,"prototype",{writable:!1}),pt}()},6527:et=>{function tt(lt,ut){rt(lt,ut),nt(lt)}function nt(lt){lt._writableState&&!lt._writableState.emitClose||lt._readableState&&!lt._readableState.emitClose||lt.emit("close")}function rt(lt,ut){lt.emit("error",ut)}et.exports={destroy:function(lt,ut){var Ut=this,ot=this._readableState&&this._readableState.destroyed,st=this._writableState&&this._writableState.destroyed;return ot||st?(ut?ut(lt):lt&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(rt,this,lt)):process.nextTick(rt,this,lt)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(lt||null,function(dt){!ut&&dt?Ut._writableState?Ut._writableState.errorEmitted?process.nextTick(nt,Ut):(Ut._writableState.errorEmitted=!0,process.nextTick(tt,Ut,dt)):process.nextTick(tt,Ut,dt):ut?(process.nextTick(nt,Ut),ut(dt)):process.nextTick(nt,Ut)}),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(lt,ut){var Ut=lt._readableState,ot=lt._writableState;Ut&&Ut.autoDestroy||ot&&ot.autoDestroy?lt.destroy(ut):lt.emit("error",ut)}}},4869:(et,tt,nt)=>{var rt=nt(5699).F.ERR_STREAM_PREMATURE_CLOSE;function lt(){}et.exports=function ut(Ut,ot,st){if(typeof ot=="function")return ut(Ut,null,ot);ot||(ot={}),st=function(ft){var Wt=!1;return function(){if(!Wt){Wt=!0;for(var yt=arguments.length,Kt=new Array(yt),$t=0;$t{et.exports=function(){throw new Error("Readable.from is not available in the browser")}},6815:(et,tt,nt)=>{var rt,lt=nt(5699).F,ut=lt.ERR_MISSING_ARGS,Ut=lt.ERR_STREAM_DESTROYED;function ot(Rt){if(Rt)throw Rt}function st(Rt,Bt,ht,mt){mt=function(Tt){var ft=!1;return function(){ft||(ft=!0,Tt.apply(void 0,arguments))}}(mt);var gt=!1;Rt.on("close",function(){gt=!0}),rt===void 0&&(rt=nt(4869)),rt(Rt,{readable:Bt,writable:ht},function(Tt){if(Tt)return mt(Tt);gt=!0,mt()});var Vt=!1;return function(Tt){if(!gt&&!Vt)return Vt=!0,function(ft){return ft.setHeader&&typeof ft.abort=="function"}(Rt)?Rt.abort():typeof Rt.destroy=="function"?Rt.destroy():void mt(Tt||new Ut("pipe"))}}function dt(Rt){Rt()}function St(Rt,Bt){return Rt.pipe(Bt)}function pt(Rt){return Rt.length?typeof Rt[Rt.length-1]!="function"?ot:Rt.pop():ot}et.exports=function(){for(var Rt=arguments.length,Bt=new Array(Rt),ht=0;ht0,function(yt){mt||(mt=yt),yt&&Vt.forEach(dt),Wt||(Vt.forEach(dt),gt(mt))})});return Bt.reduce(St)}},9952:(et,tt,nt)=>{var rt=nt(5699).F.ERR_INVALID_OPT_VALUE;et.exports={getHighWaterMark:function(lt,ut,Ut,ot){var st=function(dt,St,pt){return dt.highWaterMark!=null?dt.highWaterMark:St?dt[pt]:null}(ut,ot,Ut);if(st!=null){if(!isFinite(st)||Math.floor(st)!==st||st<0)throw new rt(ot?Ut:"highWaterMark",st);return Math.floor(st)}return lt.objectMode?16:16384}}},4856:(et,tt,nt)=>{et.exports=nt(46).EventEmitter},4156:(et,tt,nt)=>{(tt=et.exports=nt(8199)).Stream=tt,tt.Readable=tt,tt.Writable=nt(5291),tt.Duplex=nt(1265),tt.Transform=nt(9415),tt.PassThrough=nt(4421),tt.finished=nt(4869),tt.pipeline=nt(6815)},5636:(et,tt,nt)=>{var rt=nt(1048),lt=rt.Buffer;function ut(ot,st){for(var dt in ot)st[dt]=ot[dt]}function Ut(ot,st,dt){return lt(ot,st,dt)}lt.from&<.alloc&<.allocUnsafe&<.allocUnsafeSlow?et.exports=rt:(ut(rt,tt),tt.Buffer=Ut),Ut.prototype=Object.create(lt.prototype),ut(lt,Ut),Ut.from=function(ot,st,dt){if(typeof ot=="number")throw new TypeError("Argument must not be a number");return lt(ot,st,dt)},Ut.alloc=function(ot,st,dt){if(typeof ot!="number")throw new TypeError("Argument must be a number");var St=lt(ot);return st!==void 0?typeof dt=="string"?St.fill(st,dt):St.fill(st):St.fill(0),St},Ut.allocUnsafe=function(ot){if(typeof ot!="number")throw new TypeError("Argument must be a number");return lt(ot)},Ut.allocUnsafeSlow=function(ot){if(typeof ot!="number")throw new TypeError("Argument must be a number");return rt.SlowBuffer(ot)}},1145:(et,tt)=>{const{hasOwnProperty:nt}=Object.prototype,rt=ht();rt.configure=ht,rt.stringify=rt,rt.default=rt,tt.stringify=rt,tt.configure=ht,et.exports=rt;const lt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]|[\ud800-\udbff](?![\udc00-\udfff])|(?:[^\ud800-\udbff]|^)[\udc00-\udfff]/;function ut(mt){return mt.length<5e3&&!lt.test(mt)?`"${mt}"`:JSON.stringify(mt)}function Ut(mt){if(mt.length>200)return mt.sort();for(let gt=1;gtVt;)mt[Tt]=mt[Tt-1],Tt--;mt[Tt]=Vt}return mt}const ot=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function st(mt){return ot.call(mt)!==void 0&&mt.length!==0}function dt(mt,gt,Vt){mt.length= 1`)}return Vt===void 0?1/0:Vt}function Rt(mt){return mt===1?"1 item":mt+" items"}function Bt(mt){const gt=new Set;for(const Vt of mt)typeof Vt!="string"&&typeof Vt!="number"||gt.add(String(Vt));return gt}function ht(mt){const gt=function(qt){if(nt.call(qt,"strict")){const kt=qt.strict;if(typeof kt!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(kt)return bt=>{let Jt="Object can not safely be stringified. Received type "+typeof bt;throw typeof bt!="function"&&(Jt+=` (${bt.toString()})`),new Error(Jt)}}}(mt={...mt});gt&&(mt.bigint===void 0&&(mt.bigint=!1),"circularValue"in mt||(mt.circularValue=Error));const Vt=function(qt){if(nt.call(qt,"circularValue")){const kt=qt.circularValue;if(typeof kt=="string")return`"${kt}"`;if(kt==null)return kt;if(kt===Error||kt===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]"'}(mt),Tt=St(mt,"bigint"),ft=St(mt,"deterministic"),Wt=pt(mt,"maximumDepth"),yt=pt(mt,"maximumBreadth");function Kt(qt,kt,bt,Jt,wt,At){let Ct=kt[qt];switch(typeof Ct=="object"&&Ct!==null&&typeof Ct.toJSON=="function"&&(Ct=Ct.toJSON(qt)),Ct=Jt.call(kt,qt,Ct),typeof Ct){case"string":return ut(Ct);case"object":{if(Ct===null)return"null";if(bt.indexOf(Ct)!==-1)return Vt;let Mt="",nn=",";const sn=At;if(Array.isArray(Ct)){if(Ct.length===0)return"[]";if(Wtyt&&(Mt+=`${nn}"... ${Rt(Ct.length-yt-1)} not stringified"`),wt!==""&&(Mt+=` -`+sn),bt.pop(),`[${Mt}]`}let Lt=Object.keys(Ct);const tn=Lt.length;if(tn===0)return"{}";if(Wtyt&&(Mt+=`${on}"...":${cn}"${Rt(tn-yt)} not stringified"`,on=nn),wt!==""&&on.length>1&&(Mt=` -${At}${Mt} -${sn}`),bt.pop(),`{${Mt}}`}case"number":return isFinite(Ct)?String(Ct):gt?gt(Ct):"null";case"boolean":return Ct===!0?"true":"false";case"undefined":return;case"bigint":if(Tt)return String(Ct);default:return gt?gt(Ct):void 0}}function $t(qt,kt,bt,Jt,wt,At){switch(typeof kt=="object"&&kt!==null&&typeof kt.toJSON=="function"&&(kt=kt.toJSON(qt)),typeof kt){case"string":return ut(kt);case"object":{if(kt===null)return"null";if(bt.indexOf(kt)!==-1)return Vt;const Ct=At;let Mt="",nn=",";if(Array.isArray(kt)){if(kt.length===0)return"[]";if(Wtyt&&(Mt+=`${nn}"... ${Rt(kt.length-yt-1)} not stringified"`),wt!==""&&(Mt+=` -`+Ct),bt.pop(),`[${Mt}]`}bt.push(kt);let sn="";wt!==""&&(nn=`, -`+(At+=wt),sn=" ");let Lt="";for(const tn of Jt){const cn=$t(tn,kt[tn],bt,Jt,wt,At);cn!==void 0&&(Mt+=`${Lt}${ut(tn)}:${sn}${cn}`,Lt=nn)}return wt!==""&&Lt.length>1&&(Mt=` -${At}${Mt} -${Ct}`),bt.pop(),`{${Mt}}`}case"number":return isFinite(kt)?String(kt):gt?gt(kt):"null";case"boolean":return kt===!0?"true":"false";case"undefined":return;case"bigint":if(Tt)return String(kt);default:return gt?gt(kt):void 0}}function Ht(qt,kt,bt,Jt,wt){switch(typeof kt){case"string":return ut(kt);case"object":{if(kt===null)return"null";if(typeof kt.toJSON=="function"){if(typeof(kt=kt.toJSON(qt))!="object")return Ht(qt,kt,bt,Jt,wt);if(kt===null)return"null"}if(bt.indexOf(kt)!==-1)return Vt;const At=wt;if(Array.isArray(kt)){if(kt.length===0)return"[]";if(Wtyt&&(cn+=`${on}"... ${Rt(kt.length-yt-1)} not stringified"`),cn+=` -`+At,bt.pop(),`[${cn}]`}let Ct=Object.keys(kt);const Mt=Ct.length;if(Mt===0)return"{}";if(Wtyt&&(sn+=`${Lt}"...": "${Rt(Mt-yt)} not stringified"`,Lt=nn),Lt!==""&&(sn=` -${wt}${sn} -${At}`),bt.pop(),`{${sn}}`}case"number":return isFinite(kt)?String(kt):gt?gt(kt):"null";case"boolean":return kt===!0?"true":"false";case"undefined":return;case"bigint":if(Tt)return String(kt);default:return gt?gt(kt):void 0}}function Nt(qt,kt,bt){switch(typeof kt){case"string":return ut(kt);case"object":{if(kt===null)return"null";if(typeof kt.toJSON=="function"){if(typeof(kt=kt.toJSON(qt))!="object")return Nt(qt,kt,bt);if(kt===null)return"null"}if(bt.indexOf(kt)!==-1)return Vt;let Jt="";if(Array.isArray(kt)){if(kt.length===0)return"[]";if(Wtyt&&(Jt+=`,"... ${Rt(kt.length-yt-1)} not stringified"`),bt.pop(),`[${Jt}]`}let wt=Object.keys(kt);const At=wt.length;if(At===0)return"{}";if(Wtyt&&(Jt+=`${Ct}"...":"${Rt(At-yt)} not stringified"`),bt.pop(),`{${Jt}}`}case"number":return isFinite(kt)?String(kt):gt?gt(kt):"null";case"boolean":return kt===!0?"true":"false";case"undefined":return;case"bigint":if(Tt)return String(kt);default:return gt?gt(kt):void 0}}return function(qt,kt,bt){if(arguments.length>1){let Jt="";if(typeof bt=="number"?Jt=" ".repeat(Math.min(bt,10)):typeof bt=="string"&&(Jt=bt.slice(0,10)),kt!=null){if(typeof kt=="function")return Kt("",{"":qt},[],kt,Jt,"");if(Array.isArray(kt))return $t("",qt,[],Bt(kt),Jt,"")}if(Jt.length!==0)return Ht("",qt,[],Jt,"")}return Nt("",qt,[])}}},6108:(et,tt,nt)=>{var rt=nt(528),lt=nt(686),ut=nt(7239)(),Ut=nt(9336),ot=nt(3468),st=rt("%Math.floor%");et.exports=function(dt,St){if(typeof dt!="function")throw new ot("`fn` is not a function");if(typeof St!="number"||St<0||St>4294967295||st(St)!==St)throw new ot("`length` must be a positive 32-bit integer");var pt=arguments.length>2&&!!arguments[2],Rt=!0,Bt=!0;if("length"in dt&&Ut){var ht=Ut(dt,"length");ht&&!ht.configurable&&(Rt=!1),ht&&!ht.writable&&(Bt=!1)}return(Rt||Bt||!pt)&&(ut?lt(dt,"length",St,!0,!0):lt(dt,"length",St)),dt}},7575:(et,tt,nt)=>{var rt=nt(528),lt=nt(9818),ut=nt(8660),Ut=nt(3468),ot=rt("%WeakMap%",!0),st=rt("%Map%",!0),dt=lt("WeakMap.prototype.get",!0),St=lt("WeakMap.prototype.set",!0),pt=lt("WeakMap.prototype.has",!0),Rt=lt("Map.prototype.get",!0),Bt=lt("Map.prototype.set",!0),ht=lt("Map.prototype.has",!0),mt=function(gt,Vt){for(var Tt,ft=gt;(Tt=ft.next)!==null;ft=Tt)if(Tt.key===Vt)return ft.next=Tt.next,Tt.next=gt.next,gt.next=Tt,Tt};et.exports=function(){var gt,Vt,Tt,ft={assert:function(Wt){if(!ft.has(Wt))throw new Ut("Side channel does not contain "+ut(Wt))},get:function(Wt){if(ot&&Wt&&(typeof Wt=="object"||typeof Wt=="function")){if(gt)return dt(gt,Wt)}else if(st){if(Vt)return Rt(Vt,Wt)}else if(Tt)return function(yt,Kt){var $t=mt(yt,Kt);return $t&&$t.value}(Tt,Wt)},has:function(Wt){if(ot&&Wt&&(typeof Wt=="object"||typeof Wt=="function")){if(gt)return pt(gt,Wt)}else if(st){if(Vt)return ht(Vt,Wt)}else if(Tt)return function(yt,Kt){return!!mt(yt,Kt)}(Tt,Wt);return!1},set:function(Wt,yt){ot&&Wt&&(typeof Wt=="object"||typeof Wt=="function")?(gt||(gt=new ot),St(gt,Wt,yt)):st?(Vt||(Vt=new st),Bt(Vt,Wt,yt)):(Tt||(Tt={key:{},next:null}),function(Kt,$t,Ht){var Nt=mt(Kt,$t);Nt?Nt.value=Ht:Kt.next={key:$t,next:Kt.next,value:Ht}}(Tt,Wt,yt))}};return ft}},5082:(et,tt)=>{function nt(rt){for(var lt in rt)this[lt]=rt[lt]}tt.get=function(rt){var lt=Error.stackTraceLimit;Error.stackTraceLimit=1/0;var ut={},Ut=Error.prepareStackTrace;Error.prepareStackTrace=function(st,dt){return dt},Error.captureStackTrace(ut,rt||tt.get);var ot=ut.stack;return Error.prepareStackTrace=Ut,Error.stackTraceLimit=lt,ot},tt.parse=function(rt){if(!rt.stack)return[];var lt=this;return rt.stack.split(` -`).slice(1).map(function(ut){if(ut.match(/^\s*[-]{4,}$/))return lt._createParsedCallSite({fileName:ut,lineNumber:null,functionName:null,typeName:null,methodName:null,columnNumber:null,native:null});var Ut=ut.match(/at (?:(.+)\s+\()?(?:(.+?):(\d+)(?::(\d+))?|([^)]+))\)?/);if(Ut){var ot=null,st=null,dt=null,St=null,pt=null,Rt=Ut[5]==="native";if(Ut[1]){var Bt=(dt=Ut[1]).lastIndexOf(".");if(dt[Bt-1]=="."&&Bt--,Bt>0){ot=dt.substr(0,Bt),st=dt.substr(Bt+1);var ht=ot.indexOf(".Module");ht>0&&(dt=dt.substr(ht+1),ot=ot.substr(0,ht))}St=null}st&&(St=ot,pt=st),st===""&&(pt=null,dt=null);var mt={fileName:Ut[2]||null,lineNumber:parseInt(Ut[3],10)||null,functionName:dt,typeName:St,methodName:pt,columnNumber:parseInt(Ut[4],10)||null,native:Rt};return lt._createParsedCallSite(mt)}}).filter(function(ut){return!!ut})},["this","typeName","functionName","methodName","fileName","lineNumber","columnNumber","function","evalOrigin"].forEach(function(rt){nt.prototype[rt]=null,nt.prototype["get"+rt[0].toUpperCase()+rt.substr(1)]=function(){return this[rt]}}),["topLevel","eval","native","constructor"].forEach(function(rt){nt.prototype[rt]=!1,nt.prototype["is"+rt[0].toUpperCase()+rt.substr(1)]=function(){return this[rt]}}),tt._createParsedCallSite=function(rt){return new nt(rt)}},1983:(et,tt,nt)=>{et.exports=lt;var rt=nt(46).EventEmitter;function lt(){rt.call(this)}nt(5615)(lt,rt),lt.Readable=nt(8199),lt.Writable=nt(5291),lt.Duplex=nt(1265),lt.Transform=nt(9415),lt.PassThrough=nt(4421),lt.finished=nt(4869),lt.pipeline=nt(6815),lt.Stream=lt,lt.prototype.pipe=function(ut,Ut){var ot=this;function st(mt){ut.writable&&ut.write(mt)===!1&&ot.pause&&ot.pause()}function dt(){ot.readable&&ot.resume&&ot.resume()}ot.on("data",st),ut.on("drain",dt),ut._isStdio||Ut&&Ut.end===!1||(ot.on("end",pt),ot.on("close",Rt));var St=!1;function pt(){St||(St=!0,ut.end())}function Rt(){St||(St=!0,typeof ut.destroy=="function"&&ut.destroy())}function Bt(mt){if(ht(),rt.listenerCount(this,"error")===0)throw mt}function ht(){ot.removeListener("data",st),ut.removeListener("drain",dt),ot.removeListener("end",pt),ot.removeListener("close",Rt),ot.removeListener("error",Bt),ut.removeListener("error",Bt),ot.removeListener("end",ht),ot.removeListener("close",ht),ut.removeListener("close",ht)}return ot.on("error",Bt),ut.on("error",Bt),ot.on("end",ht),ot.on("close",ht),ut.on("close",ht),ut.emit("pipe",ot),ut}},4865:(et,tt,nt)=>{var rt=nt(6255),lt=nt(6846),ut=nt(3227),Ut=nt(49),ot=nt(5442),st=tt;st.request=function(dt,St){dt=typeof dt=="string"?ot.parse(dt):ut(dt);var pt=nt.g.location.protocol.search(/^https?:$/)===-1?"http:":"",Rt=dt.protocol||pt,Bt=dt.hostname||dt.host,ht=dt.port,mt=dt.path||"/";Bt&&Bt.indexOf(":")!==-1&&(Bt="["+Bt+"]"),dt.url=(Bt?Rt+"//"+Bt:"")+(ht?":"+ht:"")+mt,dt.method=(dt.method||"GET").toUpperCase(),dt.headers=dt.headers||{};var gt=new rt(dt);return St&>.on("response",St),gt},st.get=function(dt,St){var pt=st.request(dt,St);return pt.end(),pt},st.ClientRequest=rt,st.IncomingMessage=lt.IncomingMessage,st.Agent=function(){},st.Agent.defaultMaxSockets=4,st.globalAgent=new st.Agent,st.STATUS_CODES=Ut,st.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:(et,tt,nt)=>{var rt;function lt(){if(rt!==void 0)return rt;if(nt.g.XMLHttpRequest){rt=new nt.g.XMLHttpRequest;try{rt.open("GET",nt.g.XDomainRequest?"/":"https://example.com")}catch{rt=null}}else rt=null;return rt}function ut(ot){var st=lt();if(!st)return!1;try{return st.responseType=ot,st.responseType===ot}catch{}return!1}function Ut(ot){return typeof ot=="function"}tt.fetch=Ut(nt.g.fetch)&&Ut(nt.g.ReadableStream),tt.writableStream=Ut(nt.g.WritableStream),tt.abortController=Ut(nt.g.AbortController),tt.arraybuffer=tt.fetch||ut("arraybuffer"),tt.msstream=!tt.fetch&&ut("ms-stream"),tt.mozchunkedarraybuffer=!tt.fetch&&ut("moz-chunked-arraybuffer"),tt.overrideMimeType=tt.fetch||!!lt()&&Ut(lt().overrideMimeType),rt=null},6255:(et,tt,nt)=>{var rt=nt(2271),lt=nt(5615),ut=nt(6846),Ut=nt(4156),ot=ut.IncomingMessage,st=ut.readyStates,dt=et.exports=function(pt){var Rt,Bt=this;Ut.Writable.call(Bt),Bt._opts=pt,Bt._body=[],Bt._headers={},pt.auth&&Bt.setHeader("Authorization","Basic "+Buffer.from(pt.auth).toString("base64")),Object.keys(pt.headers).forEach(function(mt){Bt.setHeader(mt,pt.headers[mt])});var ht=!0;if(pt.mode==="disable-fetch"||"requestTimeout"in pt&&!rt.abortController)ht=!1,Rt=!0;else if(pt.mode==="prefer-streaming")Rt=!1;else if(pt.mode==="allow-wrong-content-type")Rt=!rt.overrideMimeType;else{if(pt.mode&&pt.mode!=="default"&&pt.mode!=="prefer-fast")throw new Error("Invalid value for opts.mode");Rt=!0}Bt._mode=function(mt,gt){return rt.fetch&>?"fetch":rt.mozchunkedarraybuffer?"moz-chunked-arraybuffer":rt.msstream?"ms-stream":rt.arraybuffer&&mt?"arraybuffer":"text"}(Rt,ht),Bt._fetchTimer=null,Bt._socketTimeout=null,Bt._socketTimer=null,Bt.on("finish",function(){Bt._onFinish()})};lt(dt,Ut.Writable),dt.prototype.setHeader=function(pt,Rt){var Bt=pt.toLowerCase();St.indexOf(Bt)===-1&&(this._headers[Bt]={name:pt,value:Rt})},dt.prototype.getHeader=function(pt){var Rt=this._headers[pt.toLowerCase()];return Rt?Rt.value:null},dt.prototype.removeHeader=function(pt){delete this._headers[pt.toLowerCase()]},dt.prototype._onFinish=function(){var pt=this;if(!pt._destroyed){var Rt=pt._opts;"timeout"in Rt&&Rt.timeout!==0&&pt.setTimeout(Rt.timeout);var Bt=pt._headers,ht=null;Rt.method!=="GET"&&Rt.method!=="HEAD"&&(ht=new Blob(pt._body,{type:(Bt["content-type"]||{}).value||""}));var mt=[];if(Object.keys(Bt).forEach(function(ft){var Wt=Bt[ft].name,yt=Bt[ft].value;Array.isArray(yt)?yt.forEach(function(Kt){mt.push([Wt,Kt])}):mt.push([Wt,yt])}),pt._mode==="fetch"){var gt=null;if(rt.abortController){var Vt=new AbortController;gt=Vt.signal,pt._fetchAbortController=Vt,"requestTimeout"in Rt&&Rt.requestTimeout!==0&&(pt._fetchTimer=nt.g.setTimeout(function(){pt.emit("requestTimeout"),pt._fetchAbortController&&pt._fetchAbortController.abort()},Rt.requestTimeout))}nt.g.fetch(pt._opts.url,{method:pt._opts.method,headers:mt,body:ht||void 0,mode:"cors",credentials:Rt.withCredentials?"include":"same-origin",signal:gt}).then(function(ft){pt._fetchResponse=ft,pt._resetTimers(!1),pt._connect()},function(ft){pt._resetTimers(!0),pt._destroyed||pt.emit("error",ft)})}else{var Tt=pt._xhr=new nt.g.XMLHttpRequest;try{Tt.open(pt._opts.method,pt._opts.url,!0)}catch(ft){return void process.nextTick(function(){pt.emit("error",ft)})}"responseType"in Tt&&(Tt.responseType=pt._mode),"withCredentials"in Tt&&(Tt.withCredentials=!!Rt.withCredentials),pt._mode==="text"&&"overrideMimeType"in Tt&&Tt.overrideMimeType("text/plain; charset=x-user-defined"),"requestTimeout"in Rt&&(Tt.timeout=Rt.requestTimeout,Tt.ontimeout=function(){pt.emit("requestTimeout")}),mt.forEach(function(ft){Tt.setRequestHeader(ft[0],ft[1])}),pt._response=null,Tt.onreadystatechange=function(){switch(Tt.readyState){case st.LOADING:case st.DONE:pt._onXHRProgress()}},pt._mode==="moz-chunked-arraybuffer"&&(Tt.onprogress=function(){pt._onXHRProgress()}),Tt.onerror=function(){pt._destroyed||(pt._resetTimers(!0),pt.emit("error",new Error("XHR error")))};try{Tt.send(ht)}catch(ft){return void process.nextTick(function(){pt.emit("error",ft)})}}}},dt.prototype._onXHRProgress=function(){this._resetTimers(!1),function(pt){try{var Rt=pt.status;return Rt!==null&&Rt!==0}catch{return!1}}(this._xhr)&&!this._destroyed&&(this._response||this._connect(),this._response._onXHRProgress(this._resetTimers.bind(this)))},dt.prototype._connect=function(){var pt=this;pt._destroyed||(pt._response=new ot(pt._xhr,pt._fetchResponse,pt._mode,pt._resetTimers.bind(pt)),pt._response.on("error",function(Rt){pt.emit("error",Rt)}),pt.emit("response",pt._response))},dt.prototype._write=function(pt,Rt,Bt){this._body.push(pt),Bt()},dt.prototype._resetTimers=function(pt){var Rt=this;nt.g.clearTimeout(Rt._socketTimer),Rt._socketTimer=null,pt?(nt.g.clearTimeout(Rt._fetchTimer),Rt._fetchTimer=null):Rt._socketTimeout&&(Rt._socketTimer=nt.g.setTimeout(function(){Rt.emit("timeout")},Rt._socketTimeout))},dt.prototype.abort=dt.prototype.destroy=function(pt){this._destroyed=!0,this._resetTimers(!0),this._response&&(this._response._destroyed=!0),this._xhr?this._xhr.abort():this._fetchAbortController&&this._fetchAbortController.abort(),pt&&this.emit("error",pt)},dt.prototype.end=function(pt,Rt,Bt){typeof pt=="function"&&(Bt=pt,pt=void 0),Ut.Writable.prototype.end.call(this,pt,Rt,Bt)},dt.prototype.setTimeout=function(pt,Rt){Rt&&this.once("timeout",Rt),this._socketTimeout=pt,this._resetTimers(!1)},dt.prototype.flushHeaders=function(){},dt.prototype.setNoDelay=function(){},dt.prototype.setSocketKeepAlive=function(){};var St=["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:(et,tt,nt)=>{var rt=nt(2271),lt=nt(5615),ut=nt(4156),Ut=tt.readyStates={UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4},ot=tt.IncomingMessage=function(st,dt,St,pt){var Rt=this;if(ut.Readable.call(Rt),Rt._mode=St,Rt.headers={},Rt.rawHeaders=[],Rt.trailers={},Rt.rawTrailers=[],Rt.on("end",function(){process.nextTick(function(){Rt.emit("close")})}),St==="fetch"){if(Rt._fetchResponse=dt,Rt.url=dt.url,Rt.statusCode=dt.status,Rt.statusMessage=dt.statusText,dt.headers.forEach(function(Vt,Tt){Rt.headers[Tt.toLowerCase()]=Vt,Rt.rawHeaders.push(Tt,Vt)}),rt.writableStream){var Bt=new WritableStream({write:function(Vt){return pt(!1),new Promise(function(Tt,ft){Rt._destroyed?ft():Rt.push(Buffer.from(Vt))?Tt():Rt._resumeFetch=Tt})},close:function(){pt(!0),Rt._destroyed||Rt.push(null)},abort:function(Vt){pt(!0),Rt._destroyed||Rt.emit("error",Vt)}});try{return void dt.body.pipeTo(Bt).catch(function(Vt){pt(!0),Rt._destroyed||Rt.emit("error",Vt)})}catch{}}var ht=dt.body.getReader();(function Vt(){ht.read().then(function(Tt){Rt._destroyed||(pt(Tt.done),Tt.done?Rt.push(null):(Rt.push(Buffer.from(Tt.value)),Vt()))}).catch(function(Tt){pt(!0),Rt._destroyed||Rt.emit("error",Tt)})})()}else if(Rt._xhr=st,Rt._pos=0,Rt.url=st.responseURL,Rt.statusCode=st.status,Rt.statusMessage=st.statusText,st.getAllResponseHeaders().split(/\r?\n/).forEach(function(Vt){var Tt=Vt.match(/^([^:]+):\s*(.*)/);if(Tt){var ft=Tt[1].toLowerCase();ft==="set-cookie"?(Rt.headers[ft]===void 0&&(Rt.headers[ft]=[]),Rt.headers[ft].push(Tt[2])):Rt.headers[ft]!==void 0?Rt.headers[ft]+=", "+Tt[2]:Rt.headers[ft]=Tt[2],Rt.rawHeaders.push(Tt[1],Tt[2])}}),Rt._charset="x-user-defined",!rt.overrideMimeType){var mt=Rt.rawHeaders["mime-type"];if(mt){var gt=mt.match(/;\s*charset=([^;])(;|$)/);gt&&(Rt._charset=gt[1].toLowerCase())}Rt._charset||(Rt._charset="utf-8")}};lt(ot,ut.Readable),ot.prototype._read=function(){var st=this._resumeFetch;st&&(this._resumeFetch=null,st())},ot.prototype._onXHRProgress=function(st){var dt=this,St=dt._xhr,pt=null;switch(dt._mode){case"text":if((pt=St.responseText).length>dt._pos){var Rt=pt.substr(dt._pos);if(dt._charset==="x-user-defined"){for(var Bt=Buffer.alloc(Rt.length),ht=0;htdt._pos&&(dt.push(Buffer.from(new Uint8Array(mt.result.slice(dt._pos)))),dt._pos=mt.result.byteLength)},mt.onload=function(){st(!0),dt.push(null)},mt.readAsArrayBuffer(pt)}dt._xhr.readyState===Ut.DONE&&dt._mode!=="ms-stream"&&(st(!0),dt.push(null))}},8888:(et,tt,nt)=>{var rt=nt(5636).Buffer,lt=rt.isEncoding||function(ht){switch((ht=""+ht)&&ht.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 ut(ht){var mt;switch(this.encoding=function(gt){var Vt=function(Tt){if(!Tt)return"utf8";for(var ft;;)switch(Tt){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 Tt;default:if(ft)return;Tt=(""+Tt).toLowerCase(),ft=!0}}(gt);if(typeof Vt!="string"&&(rt.isEncoding===lt||!lt(gt)))throw new Error("Unknown encoding: "+gt);return Vt||gt}(ht),this.encoding){case"utf16le":this.text=st,this.end=dt,mt=4;break;case"utf8":this.fillLast=ot,mt=4;break;case"base64":this.text=St,this.end=pt,mt=3;break;default:return this.write=Rt,void(this.end=Bt)}this.lastNeed=0,this.lastTotal=0,this.lastChar=rt.allocUnsafe(mt)}function Ut(ht){return ht<=127?0:ht>>5==6?2:ht>>4==14?3:ht>>3==30?4:ht>>6==2?-1:-2}function ot(ht){var mt=this.lastTotal-this.lastNeed,gt=function(Vt,Tt,ft){if((192&Tt[0])!=128)return Vt.lastNeed=0,"�";if(Vt.lastNeed>1&&Tt.length>1){if((192&Tt[1])!=128)return Vt.lastNeed=1,"�";if(Vt.lastNeed>2&&Tt.length>2&&(192&Tt[2])!=128)return Vt.lastNeed=2,"�"}}(this,ht);return gt!==void 0?gt:this.lastNeed<=ht.length?(ht.copy(this.lastChar,mt,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(ht.copy(this.lastChar,mt,0,ht.length),void(this.lastNeed-=ht.length))}function st(ht,mt){if((ht.length-mt)%2==0){var gt=ht.toString("utf16le",mt);if(gt){var Vt=gt.charCodeAt(gt.length-1);if(Vt>=55296&&Vt<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=ht[ht.length-2],this.lastChar[1]=ht[ht.length-1],gt.slice(0,-1)}return gt}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=ht[ht.length-1],ht.toString("utf16le",mt,ht.length-1)}function dt(ht){var mt=ht&&ht.length?this.write(ht):"";if(this.lastNeed){var gt=this.lastTotal-this.lastNeed;return mt+this.lastChar.toString("utf16le",0,gt)}return mt}function St(ht,mt){var gt=(ht.length-mt)%3;return gt===0?ht.toString("base64",mt):(this.lastNeed=3-gt,this.lastTotal=3,gt===1?this.lastChar[0]=ht[ht.length-1]:(this.lastChar[0]=ht[ht.length-2],this.lastChar[1]=ht[ht.length-1]),ht.toString("base64",mt,ht.length-gt))}function pt(ht){var mt=ht&&ht.length?this.write(ht):"";return this.lastNeed?mt+this.lastChar.toString("base64",0,3-this.lastNeed):mt}function Rt(ht){return ht.toString(this.encoding)}function Bt(ht){return ht&&ht.length?this.write(ht):""}tt.StringDecoder=ut,ut.prototype.write=function(ht){if(ht.length===0)return"";var mt,gt;if(this.lastNeed){if((mt=this.fillLast(ht))===void 0)return"";gt=this.lastNeed,this.lastNeed=0}else gt=0;return gt=0?(Kt>0&&(Tt.lastNeed=Kt-1),Kt):--yt=0?(Kt>0&&(Tt.lastNeed=Kt-2),Kt):--yt=0?(Kt>0&&(Kt===2?Kt=0:Tt.lastNeed=Kt-3),Kt):0}(this,ht,mt);if(!this.lastNeed)return ht.toString("utf8",mt);this.lastTotal=gt;var Vt=ht.length-(gt-this.lastNeed);return ht.copy(this.lastChar,0,Vt),ht.toString("utf8",mt,Vt)},ut.prototype.fillLast=function(ht){if(this.lastNeed<=ht.length)return ht.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);ht.copy(this.lastChar,this.lastTotal-this.lastNeed,0,ht.length),this.lastNeed-=ht.length}},9023:(et,tt)=>{tt.levels={error:0,warn:1,help:2,data:3,info:4,debug:5,prompt:6,verbose:7,input:8,silly:9},tt.colors={error:"red",warn:"yellow",help:"cyan",data:"grey",info:"green",debug:"blue",prompt:"grey",verbose:"cyan",input:"grey",silly:"magenta"}},2797:(et,tt,nt)=>{Object.defineProperty(tt,"cli",{value:nt(9023)}),Object.defineProperty(tt,"npm",{value:nt(5828)}),Object.defineProperty(tt,"syslog",{value:nt(7408)})},5828:(et,tt)=>{tt.levels={error:0,warn:1,info:2,http:3,verbose:4,debug:5,silly:6},tt.colors={error:"red",warn:"yellow",info:"green",http:"green",verbose:"cyan",debug:"blue",silly:"magenta"}},7408:(et,tt)=>{tt.levels={emerg:0,alert:1,crit:2,error:3,warning:4,notice:5,info:6,debug:7},tt.colors={emerg:"red",alert:"yellow",crit:"red",error:"red",warning:"red",notice:"yellow",info:"green",debug:"blue"}},4966:(et,tt,nt)=>{Object.defineProperty(tt,"LEVEL",{value:Symbol.for("level")}),Object.defineProperty(tt,"MESSAGE",{value:Symbol.for("message")}),Object.defineProperty(tt,"SPLAT",{value:Symbol.for("splat")}),Object.defineProperty(tt,"configs",{value:nt(2797)})},7396:(et,tt,nt)=>{nt.d(tt,{V:()=>mt});var rt=nt(288),lt=nt.n(rt),ut=nt(3778);class Ut extends Error{constructor(Vt,Tt,ft){super("Connection failure: "+Vt.message),this.cause=Vt,this.url=Tt,this.retryable=ft,this.name="ConnectionError",Object.setPrototypeOf(this,new.target.prototype)}}var ot=nt(7221),st=nt(6452),dt=nt(5413),St=nt(7197);class pt extends Error{constructor(Vt,Tt){super(`Invalid headers (${JSON.stringify(Vt)}) for response: ${Tt.message}`),this.validationErrors=Vt,this.responseError=Tt}}var Rt=function(gt,Vt,Tt,ft){return new(Tt||(Tt=Promise))(function(Wt,yt){function Kt(Nt){try{Ht(ft.next(Nt))}catch(qt){yt(qt)}}function $t(Nt){try{Ht(ft.throw(Nt))}catch(qt){yt(qt)}}function Ht(Nt){var qt;Nt.done?Wt(Nt.value):(qt=Nt.value,qt instanceof Tt?qt:new Tt(function(kt){kt(qt)})).then(Kt,$t)}Ht((ft=ft.apply(gt,Vt||[])).next())})},Bt=function(gt,Vt){var Tt={};for(var ft in gt)Object.prototype.hasOwnProperty.call(gt,ft)&&Vt.indexOf(ft)<0&&(Tt[ft]=gt[ft]);if(gt!=null&&typeof Object.getOwnPropertySymbols=="function"){var Wt=0;for(ft=Object.getOwnPropertySymbols(gt);WtTt.validateHeaders?Tt.validateHeaders(ft):{},this.verbose=Tt.verbose!==!1,Tt.retries!==void 0&&!(Tt.retries>=0))throw new Error("retries must be positive or zero");if(this.configuredRetries=Tt.retries,Tt.timeoutMs!==void 0&&!(Tt.timeoutMs>0))throw new Error("timeoutMs must be positive");if(this.timeoutMs=Tt.timeoutMs,Tt.maxBackoffDelayMs!==void 0&&!(Tt.maxBackoffDelayMs>0))throw new Error("maxBackoffDelayMs must be positive");this.maxBackoffDelayMs=Tt.maxBackoffDelayMs||30*ut.p.second,this.json=Tt.json!==!1}getRetries(){return this.configuredRetries!==void 0?this.configuredRetries:this.getConstructor().retries}getHeaders(){return{}}fetch(Vt){return Rt(this,arguments,void 0,function*(Tt,ft={}){return(yield this.fetchVerbose(Tt,ft)).body})}fetchVerbose(Vt){return Rt(this,arguments,void 0,function*(Tt,ft={}){let Wt=100*ut.p.millisecond,yt=0;const Kt=this.timeoutMs!==void 0?new Date().getTime()+this.timeoutMs:void 0,$t=Kt?()=>Math.max(Kt-new Date().getTime(),0):void 0;for(;;)try{return yield this.doFetch(Tt,ft,$t)}catch(Ht){const Nt=Ht,qt=(0,dt.e)(Nt,Ut);if(($t==null?void 0:$t())===0||yt===this.getRetries()||!qt.retryable)throw qt;yt++,Wt=Math.min(...$t?[$t()]:[],Wt*(2+.1*(Math.random()-.5)),this.maxBackoffDelayMs),yield(0,ot.c)(Wt),this.verbose&&st.vF.warn("Connection failure, retrying. Error: "+Nt.cause.message,{url:Nt.url,error:Nt.cause,attempt:yt})}})}doFetch(Vt,Tt,ft){return Rt(this,void 0,void 0,function*(){const{token:Wt,json:yt=this.json,allowUnsafeRetries:Kt}=Tt,$t=Bt(Tt,["token","json","allowUnsafeRetries"]),Ht=($t.method||"GET").toUpperCase(),Nt=this.endpoint!==void 0?`${this.endpoint}${Vt?"/"+Vt:""}`:Vt,qt=new AbortController;let kt;if(ft){const bt=ft();bt>0?kt=setTimeout(()=>{qt.abort()},bt):qt.abort()}try{let bt;yield Promise.race([this.getConstructor().waitForConnectivity(),new Promise(sn=>{bt=setTimeout(sn,ft?Math.min(ut.p.minute,ft()):ut.p.minute)})]),bt&&clearTimeout(bt);const Jt=yield lt()(Nt,Object.assign(Object.assign(Object.assign({},$t),$t.body!==void 0?{body:yt!==!1?JSON.stringify($t.body):$t.body}:{}),{headers:Object.assign(Object.assign(Object.assign(Object.assign({},yt!==!1?{"Content-Type":"application/json"}:{}),this.getHeaders()),$t.headers||{}),Wt!==void 0?{Authorization:"Bearer "+Wt}:{}),signal:qt.signal})),wt=Jt.headers.get("content-type")||"",At=wt&&wt.startsWith("application/json"),Ct=At?yield Jt.json():yield Jt.text(),Mt=()=>new St.o(Ht,Nt,$t.body,Jt.status,Jt.headers,Ct,Ct&&Ct.validationErrors||{});if(!Jt.ok)throw this.verbose&&st.vF[Jt.status>=500?"warn":"info"]("Response error",{method:Ht,url:Nt,statusCode:Jt.status}),Mt();const nn=this.validateHeaders(Jt.headers);if(Object.keys(nn).length!==0)throw new pt(nn,Mt());if(Jt.status===204)return{body:void 0,headers:Jt.headers};if(yt&&!At)throw new Error("Response is not JSON: "+JSON.stringify(Ct));return{body:Ct,headers:Jt.headers}}catch(bt){const Jt=bt,wt=Kt||ht.has(Ht);if(Jt.message==="Network request failed")throw new Ut(Jt,Nt,wt);if(Jt.type==="system"&&["EAI_AGAIN","ECONNREFUSED","EHOSTUNREACH","ENOTFOUND"].find(nn=>nn===Jt.code))throw new Ut(Jt,Nt,!0);if(Jt.type==="system"&&["ETIMEDOUT","ECONNRESET","ESOCKETTIMEDOUT","EPIPE"].find(nn=>nn===Jt.code))throw new Ut(Jt,Nt,wt);if(Jt.name==="AbortError")throw new Ut(Jt,Nt,wt);const At=(0,dt.e)(Jt,St.o),{statusCode:Ct}=At;if(Ct===408||Ct===429||Ct===502||Ct===503||Ct===504)throw this.verbose&&!wt&&st.vF.warn("Potentially unsafe retry"),new Ut(Jt,Nt,!0);if(Ct===500&&["/online-devices","/stream-current-value","/events/counts","/queries/queries"].some(nn=>Nt.includes(nn)))throw new Ut(Jt,Nt,wt);const Mt=this.validateHeaders(At.headers);throw Object.keys(Mt).length!==0?new pt(Mt,At):(yield this.getConstructor().onResponseError(At),Jt)}finally{kt&&clearTimeout(kt)}})}getConstructor(){return Object.getPrototypeOf(this).constructor}}mt.retries=8,mt.waitForConnectivity=()=>Rt(void 0,void 0,void 0,function*(){}),mt.onResponseError=()=>Rt(void 0,void 0,void 0,function*(){})},6331:(et,tt,nt)=>{nt.d(tt,{S:()=>Ut});var rt=nt(7396),lt=nt(2273);const ut={"app-id":["app-id must match formant/*"]};class Ut extends rt.V{constructor(st,dt={}){super(st,Object.assign({validateHeaders:St=>(""+St.get("app-id")).startsWith("formant/")?{}:ut},dt)),this.endpoint=st}getHeaders(){return Object.assign(Object.assign({},Ut.headers),{"App-ID":"formant/"+lt.yA,"App-Version":lt.rE})}}Ut.headers={}},4495:(et,tt,nt)=>{nt.r(tt),nt.d(tt,{LogClient:()=>ot});var rt=nt(6331),lt=nt(5413),ut=nt(7197),Ut=function(st,dt,St,pt){return new(St||(St=Promise))(function(Rt,Bt){function ht(Vt){try{gt(pt.next(Vt))}catch(Tt){Bt(Tt)}}function mt(Vt){try{gt(pt.throw(Vt))}catch(Tt){Bt(Tt)}}function gt(Vt){var Tt;Vt.done?Rt(Vt.value):(Tt=Vt.value,Tt instanceof St?Tt:new St(function(ft){ft(Tt)})).then(ht,mt)}gt((pt=pt.apply(st,dt||[])).next())})};class ot extends rt.S{log(dt){return Ut(this,void 0,void 0,function*(){const St=ot.token;try{yield this.fetch("logs",{token:St,method:"POST",body:{logs:dt},allowUnsafeRetries:!0})}catch(pt){(0,lt.e)(pt,ut.o,Rt=>Rt.statusCode===401&&St!==void 0),ot.token===St&&delete ot.token,yield this.log(dt)}})}}},7197:(et,tt,nt)=>{nt.d(tt,{o:()=>lt});var rt=nt(3563);class lt extends Error{constructor(Ut,ot,st,dt,St,pt,Rt={}){super("Response error "+JSON.stringify({method:Ut,url:ot,requestBody:(0,rt.E)(st),statusCode:dt,responseHeaders:St?(0,rt.E)([...St.entries()].reduce((Bt,[ht,mt])=>(Bt[ht]=mt,Bt),{})):{},responseBody:(0,rt.E)(pt)})),this.method=Ut,this.url=ot,this.requestBody=st,this.statusCode=dt,this.headers=St,this.body=pt,this.validationErrors=Rt,this.name="ResponseError",Object.setPrototypeOf(this,new.target.prototype)}}},2273:(et,tt,nt)=>{nt.d(tt,{IW:()=>ht,MF:()=>Ut,NQ:()=>st,Zm:()=>pt,_P:()=>Rt,dF:()=>St,dm:()=>dt,op:()=>Bt,rE:()=>ot,yA:()=>ut});var rt=nt(2078);const lt=rt.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.183.6",VERSION:{}.VERSION,AUDIT_LOGS_ENABLED:{}.AUDIT_LOGS_ENABLED}),ut=(lt.get("ENVIRONMENT").default("").asString(),lt.get("APP").default("").asString()),Ut=(lt.get("APP_PATH").default("").asString(),lt.get("API_ENDPOINT").default("").asString(),lt.get("NAMESPACE").default("").asString()),ot=lt.get("VERSION").default("").asString(),st=lt.get("BUILD_TAG").default("").asString(),dt=(lt.get("GIT_COMMIT").default("").asString(),lt.get("ENABLE_SENTRY").default("false").asBool(),lt.get("ENABLE_SENTRY_PROFILING").default("false").asBool(),lt.get("SENTRY_DSN").default("").asString(),lt.get("LOG_LEVEL").default("debug").asString()),St=lt.get("LOG_JSON").default("true").asBool(),pt=lt.get("LOG_TO_CONSOLE").default("true").asBool(),Rt=(lt.get("STABLE_AGENT_VERSION").default("").asString(),lt.get("LOG_API_ENDPOINT").asString()),Bt=lt.get("JEST_WORKER_ID").asString(),ht=(lt.get("SHEET_EXPORT_MAX_ROW_COUNT").default("10000").asIntPositive(),lt.get("LOG_TO_FILE").default("false").asBoolStrict());lt.get("ENABLE_SELF_SERVE").default("true").asBoolStrict(),lt.get("AGGREGATE_LEVEL").default("hour").asEnum(["day","hour","minute"]),lt.get("AUDIT_LOGS_ENABLED").default("true").asBoolStrict()},7221:(et,tt,nt)=>{nt.d(tt,{c:()=>rt});const rt=lt=>new Promise(ut=>setTimeout(ut,lt||0))},6452:(et,tt,nt)=>{nt.d(tt,{vF:()=>Fn});var rt=nt(2213),lt=nt(8558),ut=nt(6075),Ut=nt.n(ut),ot=nt(6563);function st(Un,Jn){if(Jn.length1?"s":"")+" required, but only "+Jn.length+" present")}function dt(Un){if(Un===null||Un===!0||Un===!1)return NaN;var Jn=Number(Un);return isNaN(Jn)?Jn:Jn<0?Math.ceil(Jn):Math.floor(Jn)}var St={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},pt=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,Rt=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,Bt=/^([+-])(\d{2})(?::?(\d{2}))?$/;function ht(Un){var Jn,_n={},Zn=Un.split(St.dateTimeDelimiter);if(Zn.length>2)return _n;if(/:/.test(Zn[0])?Jn=Zn[0]:(_n.date=Zn[0],Jn=Zn[1],St.timeZoneDelimiter.test(_n.date)&&(_n.date=Un.split(St.timeZoneDelimiter)[0],Jn=Un.substr(_n.date.length,Un.length))),Jn){var On=St.timezone.exec(Jn);On?(_n.time=Jn.replace(On[1],""),_n.timezone=On[1]):_n.time=Jn}return _n}function mt(Un,Jn){var _n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+Jn)+"})|(\\d{2}|[+-]\\d{"+(2+Jn)+"})$)"),Zn=Un.match(_n);if(!Zn)return{year:NaN,restDateString:""};var On=Zn[1]?parseInt(Zn[1]):null,Yn=Zn[2]?parseInt(Zn[2]):null;return{year:Yn===null?On:100*Yn,restDateString:Un.slice((Zn[1]||Zn[2]).length)}}function gt(Un,Jn){if(Jn===null)return new Date(NaN);var _n=Un.match(pt);if(!_n)return new Date(NaN);var Zn=!!_n[4],On=Vt(_n[1]),Yn=Vt(_n[2])-1,_t=Vt(_n[3]),Ot=Vt(_n[4]),jt=Vt(_n[5])-1;if(Zn)return function(En,yn,Cn){return yn>=1&&yn<=53&&Cn>=0&&Cn<=6}(0,Ot,jt)?function(En,yn,Cn){var Gn=new Date(0);Gn.setUTCFullYear(En,0,4);var Wn=Gn.getUTCDay()||7,ir=7*(yn-1)+Cn+1-Wn;return Gn.setUTCDate(Gn.getUTCDate()+ir),Gn}(Jn,Ot,jt):new Date(NaN);var pn=new Date(0);return function(En,yn,Cn){return yn>=0&&yn<=11&&Cn>=1&&Cn<=(yt[yn]||(Kt(En)?29:28))}(Jn,Yn,_t)&&function(En,yn){return yn>=1&&yn<=(Kt(En)?366:365)}(Jn,On)?(pn.setUTCFullYear(Jn,Yn,Math.max(On,_t)),pn):new Date(NaN)}function Vt(Un){return Un?parseInt(Un):1}function Tt(Un){var Jn=Un.match(Rt);if(!Jn)return NaN;var _n=ft(Jn[1]),Zn=ft(Jn[2]),On=ft(Jn[3]);return function(Yn,_t,Ot){return Yn===24?_t===0&&Ot===0:Ot>=0&&Ot<60&&_t>=0&&_t<60&&Yn>=0&&Yn<25}(_n,Zn,On)?36e5*_n+6e4*Zn+1e3*On:NaN}function ft(Un){return Un&&parseFloat(Un.replace(",","."))||0}function Wt(Un){if(Un==="Z")return 0;var Jn=Un.match(Bt);if(!Jn)return 0;var _n=Jn[1]==="+"?-1:1,Zn=parseInt(Jn[2]),On=Jn[3]&&parseInt(Jn[3])||0;return function(Yn,_t){return _t>=0&&_t<=59}(0,On)?_n*(36e5*Zn+6e4*On):NaN}var yt=[31,null,31,30,31,30,31,31,30,31,30,31];function Kt(Un){return Un%400==0||Un%4==0&&Un%100!=0}function $t(Un){return($t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Jn){return typeof Jn}:function(Jn){return Jn&&typeof Symbol=="function"&&Jn.constructor===Symbol&&Jn!==Symbol.prototype?"symbol":typeof Jn})(Un)}function Ht(Un){return st(1,arguments),Un instanceof Date||$t(Un)==="object"&&Object.prototype.toString.call(Un)==="[object Date]"}function Nt(Un){st(1,arguments);var Jn=Object.prototype.toString.call(Un);return Un instanceof Date||$t(Un)==="object"&&Jn==="[object Date]"?new Date(Un.getTime()):typeof Un=="number"||Jn==="[object Number]"?new Date(Un):(typeof Un!="string"&&Jn!=="[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 qt(Un){const Jn=function(_n,Zn){var On;st(1,arguments);var Yn=dt((On=Zn==null?void 0:Zn.additionalDigits)!==null&&On!==void 0?On:2);if(Yn!==2&&Yn!==1&&Yn!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(typeof _n!="string"&&Object.prototype.toString.call(_n)!=="[object String]")return new Date(NaN);var _t,Ot=ht(_n);if(Ot.date){var jt=mt(Ot.date,Yn);_t=gt(jt.restDateString,jt.year)}if(!_t||isNaN(_t.getTime()))return new Date(NaN);var pn,En=_t.getTime(),yn=0;if(Ot.time&&(yn=Tt(Ot.time),isNaN(yn)))return new Date(NaN);if(!Ot.timezone){var Cn=new Date(En+yn),Gn=new Date(0);return Gn.setFullYear(Cn.getUTCFullYear(),Cn.getUTCMonth(),Cn.getUTCDate()),Gn.setHours(Cn.getUTCHours(),Cn.getUTCMinutes(),Cn.getUTCSeconds(),Cn.getUTCMilliseconds()),Gn}return pn=Wt(Ot.timezone),isNaN(pn)?new Date(NaN):new Date(En+yn+pn)}(Un);if(!function(_n){if(st(1,arguments),!Ht(_n)&&typeof _n!="number")return!1;var Zn=Nt(_n);return!isNaN(Number(Zn))}(Jn))throw new Error(`Invalid ISO 8601 date string (${Un})`);return Jn}const kt=Math.pow(2,20),bt=kt;var Jt=nt(2273),wt=nt(3563);function At(Un){return Ut()(Un,{cycles:!0})}var Ct=function(Un,Jn){var _n={};for(var Zn in Un)Object.prototype.hasOwnProperty.call(Un,Zn)&&Jn.indexOf(Zn)<0&&(_n[Zn]=Un[Zn]);if(Un!=null&&typeof Object.getOwnPropertySymbols=="function"){var On=0;for(Zn=Object.getOwnPropertySymbols(Un);On_n?(0,wt.E)(jt):jt;if(!Un.stack)return{message:At(Zn(Un))};const{name:On,message:Yn,stack:_t}=Un,Ot=Ct(Un,["name","message","stack"]);return{name:On,message:Yn!==void 0?Yn:At(Zn(Un)),stack:_t,meta:Ot&&Object.keys(Ot).length===0?void 0:Zn(Ot)}}function nn(Un,Jn={}){const{message:_n,stack:Zn,meta:On}=Mt(Un,Jn);return`${Zn||_n||""}${On&&Object.keys(On).length>0?" -- "+At(On):""}`}const sn=(0,nt(2964).A)();var Lt=nt(6155),tn=nt.n(Lt),cn=function(Un,Jn,_n,Zn){return new(_n||(_n=Promise))(function(On,Yn){function _t(pn){try{jt(Zn.next(pn))}catch(En){Yn(En)}}function Ot(pn){try{jt(Zn.throw(pn))}catch(En){Yn(En)}}function jt(pn){var En;pn.done?On(pn.value):(En=pn.value,En instanceof _n?En:new _n(function(yn){yn(En)})).then(_t,Ot)}jt((Zn=Zn.apply(Un,Jn||[])).next())})},on=function(Un,Jn){var _n={};for(var Zn in Un)Object.prototype.hasOwnProperty.call(Un,Zn)&&Jn.indexOf(Zn)<0&&(_n[Zn]=Un[Zn]);if(Un!=null&&typeof Object.getOwnPropertySymbols=="function"){var On=0;for(Zn=Object.getOwnPropertySymbols(Un);On{var{timestamp:Jn,level:_n,message:Zn,error:On}=Un,Yn=Xt(Un,["timestamp","level","message","error"]);const _t=Object.assign(Object.assign({timestamp:Jn?qt(Jn).getTime():new Date().getTime(),level:_n.toUpperCase(),message:Zn},On?{error:Mt(On)}:{}),{meta:Object.assign(Object.assign({},dn),Yn)});return Ut()(_t,{cycles:!0})}):ot.format.printf(Un=>{var{timestamp:Jn,level:_n,message:Zn,error:On}=Un,Yn=Xt(Un,["timestamp","level","message","error"]);let _t=`${Jn||new Date().toISOString()} ${_n.toUpperCase()}: ${Zn} `;return Object.keys(Yn).length>0&&(_t+=Ut()(Yn,{cycles:!0})),On&&(_t+=` -`+nn(On)),_t}),Fn=(0,ot.createLogger)({level:Jt.dm});if(Fn.add(new ot.transports.Console({format:Vn,level:"debug"})),Fn.transports.forEach(Un=>{Un.silent=!Jt.Zm}),Jt._P&&Fn.add(new Gt(Jt._P,dn)),Jt.IW){const Un=lt.resolve(rt.tmpdir(),`silly-${Jt.yA}.log`);Fn.debug("Logging silly logs to file",{filename:Un}),Fn.add(new ot.transports.File({filename:Un,maxsize:1*bt,maxFiles:10,format:ot.format.combine((fn="silly",(0,ot.format)(Jn=>Jn.level===fn&&Jn)()),Vn),level:"silly"}))}var fn},5413:(et,tt,nt)=>{function rt(lt,ut,Ut=()=>!0){if(function(ot,st,dt=()=>!0){return ot instanceof st&&dt(ot)}(lt,ut,Ut))return lt;throw lt}nt.d(tt,{e:()=>rt})},3563:(et,tt,nt)=>{nt.d(tt,{E:()=>st,x:()=>dt});const rt=["query"],lt=["expected one of:","maybe you meant:","in query:","while processing query","column"],ut=["password","secret","token","key","buffer","authorization"],Ut=new Set(["email","firstName","lastName","phoneNumber","phoneNumbers"]),ot=St=>ut.some(pt=>St.toLowerCase().includes(pt.toLowerCase()))||Ut.has(St);function st(St,pt=new WeakSet){return pt.has(St)?"[ RECURSIVE ]":Array.isArray(St)?(pt.add(St),St.map(Bt=>st(Bt,pt))):!(Rt=St)||typeof Rt!="object"&&typeof Rt!="function"?typeof St=="string"&&!lt.some(Bt=>St.toLowerCase().includes(Bt))&&ot(St)?"[ REDACTED ]":St:(pt.add(St),Object.keys(St).reduce((Bt,ht)=>rt.includes(ht.toLowerCase())?(Bt[ht]=St[ht],Bt):(Bt[ht]=ot(ht)?"[ REDACTED ]":st(St[ht],pt),Bt),{}));var Rt}const dt=St=>{const pt=JSON.stringify(St).replace(/\\"username\\":\\"([a-zA-Z0-9]+)\\"/gi,'\\"username\\":\\"\\"').replace(/\\"credential\\":\\"([a-zA-Z0-9]+)\\"/gi,'\\"credential\\":\\"\\"');return JSON.parse(pt)}},3778:(et,tt,nt)=>{nt.d(tt,{p:()=>lt});const rt=864e5,lt={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:rt,week:6048e5,month:2592e6,year:31536e6}},2113:function(et,tt,nt){var rt;et=nt.nmd(et),function(lt){tt&&tt.nodeType,et&&et.nodeType;var ut=typeof nt.g=="object"&&nt.g;ut.global!==ut&&ut.window!==ut&&ut.self;var Ut,ot=2147483647,st=/^xn--/,dt=/[^\x20-\x7E]/,St=/[\x2E\u3002\uFF0E\uFF61]/g,pt={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},Rt=Math.floor,Bt=String.fromCharCode;function ht($t){throw new RangeError(pt[$t])}function mt($t,Ht){for(var Nt=$t.length,qt=[];Nt--;)qt[Nt]=Ht($t[Nt]);return qt}function gt($t,Ht){var Nt=$t.split("@"),qt="";return Nt.length>1&&(qt=Nt[0]+"@",$t=Nt[1]),qt+mt(($t=$t.replace(St,".")).split("."),Ht).join(".")}function Vt($t){for(var Ht,Nt,qt=[],kt=0,bt=$t.length;kt=55296&&Ht<=56319&&kt65535&&(Nt+=Bt((Ht-=65536)>>>10&1023|55296),Ht=56320|1023&Ht),Nt+=Bt(Ht)}).join("")}function ft($t,Ht){return $t+22+75*($t<26)-((Ht!=0)<<5)}function Wt($t,Ht,Nt){var qt=0;for($t=Nt?Rt($t/700):$t>>1,$t+=Rt($t/Ht);$t>455;qt+=36)$t=Rt($t/35);return Rt(qt+36*$t/($t+38))}function yt($t){var Ht,Nt,qt,kt,bt,Jt,wt,At,Ct,Mt,nn,sn=[],Lt=$t.length,tn=0,cn=128,on=72;for((Nt=$t.lastIndexOf("-"))<0&&(Nt=0),qt=0;qt=128&&ht("not-basic"),sn.push($t.charCodeAt(qt));for(kt=Nt>0?Nt+1:0;kt=Lt&&ht("invalid-input"),((At=(nn=$t.charCodeAt(kt++))-48<10?nn-22:nn-65<26?nn-65:nn-97<26?nn-97:36)>=36||At>Rt((ot-tn)/Jt))&&ht("overflow"),tn+=At*Jt,!(At<(Ct=wt<=on?1:wt>=on+26?26:wt-on));wt+=36)Jt>Rt(ot/(Mt=36-Ct))&&ht("overflow"),Jt*=Mt;on=Wt(tn-bt,Ht=sn.length+1,bt==0),Rt(tn/Ht)>ot-cn&&ht("overflow"),cn+=Rt(tn/Ht),tn%=Ht,sn.splice(tn++,0,cn)}return Tt(sn)}function Kt($t){var Ht,Nt,qt,kt,bt,Jt,wt,At,Ct,Mt,nn,sn,Lt,tn,cn,on=[];for(sn=($t=Vt($t)).length,Ht=128,Nt=0,bt=72,Jt=0;Jt=Ht&&nnRt((ot-Nt)/(Lt=qt+1))&&ht("overflow"),Nt+=(wt-Ht)*Lt,Ht=wt,Jt=0;Jtot&&ht("overflow"),nn==Ht){for(At=Nt,Ct=36;!(At<(Mt=Ct<=bt?1:Ct>=bt+26?26:Ct-bt));Ct+=36)cn=At-Mt,tn=36-Mt,on.push(Bt(ft(Mt+cn%tn,0))),At=Rt(cn/tn);on.push(Bt(ft(At,0))),bt=Wt(Nt,Lt,qt==kt),Nt=0,++qt}++Nt,++Ht}return on.join("")}Ut={version:"1.4.1",ucs2:{decode:Vt,encode:Tt},decode:yt,encode:Kt,toASCII:function($t){return gt($t,function(Ht){return dt.test(Ht)?"xn--"+Kt(Ht):Ht})},toUnicode:function($t){return gt($t,function(Ht){return st.test(Ht)?yt(Ht.slice(4).toLowerCase()):Ht})}},(rt=function(){return Ut}.call(tt,nt,tt,et))===void 0||(et.exports=rt)}()},5442:(et,tt,nt)=>{var rt=nt(2113);function lt(){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 ut=/^([a-z0-9.+-]+:)/i,Ut=/:[0-9]*$/,ot=/^(\/\/?(?!\/)[^?\s]*)(\?[^\s]*)?$/,st=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r",` -`," "]),dt=["'"].concat(st),St=["%","/","?",";","#"].concat(dt),pt=["/","?","#"],Rt=/^[+a-z0-9A-Z_-]{0,63}$/,Bt=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,ht={javascript:!0,"javascript:":!0},mt={javascript:!0,"javascript:":!0},gt={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},Vt=nt(5810);function Tt(ft,Wt,yt){if(ft&&typeof ft=="object"&&ft instanceof lt)return ft;var Kt=new lt;return Kt.parse(ft,Wt,yt),Kt}lt.prototype.parse=function(ft,Wt,yt){if(typeof ft!="string")throw new TypeError("Parameter 'url' must be a string, not "+typeof ft);var Kt=ft.indexOf("?"),$t=Kt!==-1&&Kt127?on+="x":on+=cn[Gt];if(!on.match(Rt)){var dn=Lt.slice(0,Mt),Vn=Lt.slice(Mt+1),Fn=cn.match(Bt);Fn&&(dn.push(Fn[1]),Vn.unshift(Fn[2])),Vn.length&&(Nt="/"+Vn.join(".")+Nt),this.hostname=dn.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),sn||(this.hostname=rt.toASCII(this.hostname));var fn=this.port?":"+this.port:"",Un=this.hostname||"";this.host=Un+fn,this.href+=this.host,sn&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),Nt[0]!=="/"&&(Nt="/"+Nt))}if(!ht[bt])for(Mt=0,tn=dt.length;Mt0)&&yt.host.split("@"))&&(yt.auth=Fn.shift(),yt.hostname=Fn.shift(),yt.host=yt.hostname)),yt.search=ft.search,yt.query=ft.query,yt.pathname===null&&yt.search===null||(yt.path=(yt.pathname?yt.pathname:"")+(yt.search?yt.search:"")),yt.href=yt.format(),yt;if(!cn.length)return yt.pathname=null,yt.search?yt.path="/"+yt.search:yt.path=null,yt.href=yt.format(),yt;for(var Gt=cn.slice(-1)[0],Xt=(yt.host||ft.host||cn.length>1)&&(Gt==="."||Gt==="..")||Gt==="",dn=0,Vn=cn.length;Vn>=0;Vn--)(Gt=cn[Vn])==="."?cn.splice(Vn,1):Gt===".."?(cn.splice(Vn,1),dn++):dn&&(cn.splice(Vn,1),dn--);if(!Lt&&!tn)for(;dn--;dn)cn.unshift("..");!Lt||cn[0]===""||cn[0]&&cn[0].charAt(0)==="/"||cn.unshift(""),Xt&&cn.join("/").substr(-1)!=="/"&&cn.push("");var Fn,fn=cn[0]===""||cn[0]&&cn[0].charAt(0)==="/";return on&&(yt.hostname=fn?"":cn.length?cn.shift():"",yt.host=yt.hostname,(Fn=!!(yt.host&&yt.host.indexOf("@")>0)&&yt.host.split("@"))&&(yt.auth=Fn.shift(),yt.hostname=Fn.shift(),yt.host=yt.hostname)),(Lt=Lt||yt.host&&cn.length)&&!fn&&cn.unshift(""),cn.length>0?yt.pathname=cn.join("/"):(yt.pathname=null,yt.path=null),yt.pathname===null&&yt.search===null||(yt.path=(yt.pathname?yt.pathname:"")+(yt.search?yt.search:"")),yt.auth=ft.auth||yt.auth,yt.slashes=yt.slashes||ft.slashes,yt.href=yt.format(),yt},lt.prototype.parseHost=function(){var ft=this.host,Wt=Ut.exec(ft);Wt&&((Wt=Wt[0])!==":"&&(this.port=Wt.substr(1)),ft=ft.substr(0,ft.length-Wt.length)),ft&&(this.hostname=ft)},tt.parse=Tt,tt.resolve=function(ft,Wt){return Tt(ft,!1,!0).resolve(Wt)},tt.resolveObject=function(ft,Wt){return ft?Tt(ft,!1,!0).resolveObject(Wt):Wt},tt.format=function(ft){return typeof ft=="string"&&(ft=Tt(ft)),ft instanceof lt?ft.format():lt.prototype.format.call(ft)},tt.Url=lt},6732:(et,tt,nt)=>{function rt(lt){try{if(!nt.g.localStorage)return!1}catch{return!1}var ut=nt.g.localStorage[lt];return ut!=null&&String(ut).toLowerCase()==="true"}et.exports=function(lt,ut){if(rt("noDeprecation"))return lt;var Ut=!1;return function(){if(!Ut){if(rt("throwDeprecation"))throw new Error(ut);rt("traceDeprecation")?console.trace(ut):console.warn(ut),Ut=!0}return lt.apply(this,arguments)}}},5272:et=>{et.exports=function(tt){return tt&&typeof tt=="object"&&typeof tt.copy=="function"&&typeof tt.fill=="function"&&typeof tt.readUInt8=="function"}},1531:(et,tt,nt)=>{var rt=nt(5387),lt=nt(2625),ut=nt(2730),Ut=nt(5943);function ot(Mt){return Mt.call.bind(Mt)}var st=typeof BigInt<"u",dt=typeof Symbol<"u",St=ot(Object.prototype.toString),pt=ot(Number.prototype.valueOf),Rt=ot(String.prototype.valueOf),Bt=ot(Boolean.prototype.valueOf);if(st)var ht=ot(BigInt.prototype.valueOf);if(dt)var mt=ot(Symbol.prototype.valueOf);function gt(Mt,nn){if(typeof Mt!="object")return!1;try{return nn(Mt),!0}catch{return!1}}function Vt(Mt){return St(Mt)==="[object Map]"}function Tt(Mt){return St(Mt)==="[object Set]"}function ft(Mt){return St(Mt)==="[object WeakMap]"}function Wt(Mt){return St(Mt)==="[object WeakSet]"}function yt(Mt){return St(Mt)==="[object ArrayBuffer]"}function Kt(Mt){return typeof ArrayBuffer<"u"&&(yt.working?yt(Mt):Mt instanceof ArrayBuffer)}function $t(Mt){return St(Mt)==="[object DataView]"}function Ht(Mt){return typeof DataView<"u"&&($t.working?$t(Mt):Mt instanceof DataView)}tt.isArgumentsObject=rt,tt.isGeneratorFunction=lt,tt.isTypedArray=Ut,tt.isPromise=function(Mt){return typeof Promise<"u"&&Mt instanceof Promise||Mt!==null&&typeof Mt=="object"&&typeof Mt.then=="function"&&typeof Mt.catch=="function"},tt.isArrayBufferView=function(Mt){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(Mt):Ut(Mt)||Ht(Mt)},tt.isUint8Array=function(Mt){return ut(Mt)==="Uint8Array"},tt.isUint8ClampedArray=function(Mt){return ut(Mt)==="Uint8ClampedArray"},tt.isUint16Array=function(Mt){return ut(Mt)==="Uint16Array"},tt.isUint32Array=function(Mt){return ut(Mt)==="Uint32Array"},tt.isInt8Array=function(Mt){return ut(Mt)==="Int8Array"},tt.isInt16Array=function(Mt){return ut(Mt)==="Int16Array"},tt.isInt32Array=function(Mt){return ut(Mt)==="Int32Array"},tt.isFloat32Array=function(Mt){return ut(Mt)==="Float32Array"},tt.isFloat64Array=function(Mt){return ut(Mt)==="Float64Array"},tt.isBigInt64Array=function(Mt){return ut(Mt)==="BigInt64Array"},tt.isBigUint64Array=function(Mt){return ut(Mt)==="BigUint64Array"},Vt.working=typeof Map<"u"&&Vt(new Map),tt.isMap=function(Mt){return typeof Map<"u"&&(Vt.working?Vt(Mt):Mt instanceof Map)},Tt.working=typeof Set<"u"&&Tt(new Set),tt.isSet=function(Mt){return typeof Set<"u"&&(Tt.working?Tt(Mt):Mt instanceof Set)},ft.working=typeof WeakMap<"u"&&ft(new WeakMap),tt.isWeakMap=function(Mt){return typeof WeakMap<"u"&&(ft.working?ft(Mt):Mt instanceof WeakMap)},Wt.working=typeof WeakSet<"u"&&Wt(new WeakSet),tt.isWeakSet=function(Mt){return Wt(Mt)},yt.working=typeof ArrayBuffer<"u"&&yt(new ArrayBuffer),tt.isArrayBuffer=Kt,$t.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&$t(new DataView(new ArrayBuffer(1),0,1)),tt.isDataView=Ht;var Nt=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function qt(Mt){return St(Mt)==="[object SharedArrayBuffer]"}function kt(Mt){return Nt!==void 0&&(qt.working===void 0&&(qt.working=qt(new Nt)),qt.working?qt(Mt):Mt instanceof Nt)}function bt(Mt){return gt(Mt,pt)}function Jt(Mt){return gt(Mt,Rt)}function wt(Mt){return gt(Mt,Bt)}function At(Mt){return st&>(Mt,ht)}function Ct(Mt){return dt&>(Mt,mt)}tt.isSharedArrayBuffer=kt,tt.isAsyncFunction=function(Mt){return St(Mt)==="[object AsyncFunction]"},tt.isMapIterator=function(Mt){return St(Mt)==="[object Map Iterator]"},tt.isSetIterator=function(Mt){return St(Mt)==="[object Set Iterator]"},tt.isGeneratorObject=function(Mt){return St(Mt)==="[object Generator]"},tt.isWebAssemblyCompiledModule=function(Mt){return St(Mt)==="[object WebAssembly.Module]"},tt.isNumberObject=bt,tt.isStringObject=Jt,tt.isBooleanObject=wt,tt.isBigIntObject=At,tt.isSymbolObject=Ct,tt.isBoxedPrimitive=function(Mt){return bt(Mt)||Jt(Mt)||wt(Mt)||At(Mt)||Ct(Mt)},tt.isAnyArrayBuffer=function(Mt){return typeof Uint8Array<"u"&&(Kt(Mt)||kt(Mt))},["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(Mt){Object.defineProperty(tt,Mt,{enumerable:!1,value:function(){throw new Error(Mt+" is not supported in userland")}})})},9208:(et,tt,nt)=>{var rt=Object.getOwnPropertyDescriptors||function(Ct){for(var Mt=Object.keys(Ct),nn={},sn=0;sn=Lt)return on;switch(on){case"%s":return String(sn[nn++]);case"%d":return Number(sn[nn++]);case"%j":try{return JSON.stringify(sn[nn++])}catch{return"[Circular]"}default:return on}}),cn=sn[nn];nn"u")return function(){return tt.deprecate(Ct,Mt).apply(this,arguments)};var nn=!1;return function(){if(!nn){if(process.throwDeprecation)throw new Error(Mt);process.traceDeprecation?console.trace(Mt):console.error(Mt),nn=!0}return Ct.apply(this,arguments)}};var ut={},Ut=/^$/;if({}.NODE_DEBUG){var ot={}.NODE_DEBUG;ot=ot.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),Ut=new RegExp("^"+ot+"$","i")}function st(Ct,Mt){var nn={seen:[],stylize:St};return arguments.length>=3&&(nn.depth=arguments[2]),arguments.length>=4&&(nn.colors=arguments[3]),mt(Mt)?nn.showHidden=Mt:Mt&&tt._extend(nn,Mt),ft(nn.showHidden)&&(nn.showHidden=!1),ft(nn.depth)&&(nn.depth=2),ft(nn.colors)&&(nn.colors=!1),ft(nn.customInspect)&&(nn.customInspect=!0),nn.colors&&(nn.stylize=dt),pt(nn,Ct,nn.depth)}function dt(Ct,Mt){var nn=st.styles[Mt];return nn?"\x1B["+st.colors[nn][0]+"m"+Ct+"\x1B["+st.colors[nn][1]+"m":Ct}function St(Ct,Mt){return Ct}function pt(Ct,Mt,nn){if(Ct.customInspect&&Mt&&Ht(Mt.inspect)&&Mt.inspect!==tt.inspect&&(!Mt.constructor||Mt.constructor.prototype!==Mt)){var sn=Mt.inspect(nn,Ct);return Tt(sn)||(sn=pt(Ct,sn,nn)),sn}var Lt=function(Fn,fn){if(ft(fn))return Fn.stylize("undefined","undefined");if(Tt(fn)){var Un="'"+JSON.stringify(fn).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return Fn.stylize(Un,"string")}if(Vt(fn))return Fn.stylize(""+fn,"number");if(mt(fn))return Fn.stylize(""+fn,"boolean");if(gt(fn))return Fn.stylize("null","null")}(Ct,Mt);if(Lt)return Lt;var tn=Object.keys(Mt),cn=function(Fn){var fn={};return Fn.forEach(function(Un,Jn){fn[Un]=!0}),fn}(tn);if(Ct.showHidden&&(tn=Object.getOwnPropertyNames(Mt)),$t(Mt)&&(tn.indexOf("message")>=0||tn.indexOf("description")>=0))return Rt(Mt);if(tn.length===0){if(Ht(Mt)){var on=Mt.name?": "+Mt.name:"";return Ct.stylize("[Function"+on+"]","special")}if(Wt(Mt))return Ct.stylize(RegExp.prototype.toString.call(Mt),"regexp");if(Kt(Mt))return Ct.stylize(Date.prototype.toString.call(Mt),"date");if($t(Mt))return Rt(Mt)}var Gt,Xt="",dn=!1,Vn=["{","}"];return ht(Mt)&&(dn=!0,Vn=["[","]"]),Ht(Mt)&&(Xt=" [Function"+(Mt.name?": "+Mt.name:"")+"]"),Wt(Mt)&&(Xt=" "+RegExp.prototype.toString.call(Mt)),Kt(Mt)&&(Xt=" "+Date.prototype.toUTCString.call(Mt)),$t(Mt)&&(Xt=" "+Rt(Mt)),tn.length!==0||dn&&Mt.length!=0?nn<0?Wt(Mt)?Ct.stylize(RegExp.prototype.toString.call(Mt),"regexp"):Ct.stylize("[Object]","special"):(Ct.seen.push(Mt),Gt=dn?function(Fn,fn,Un,Jn,_n){for(var Zn=[],On=0,Yn=fn.length;On=0,Jn+_n.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?Un[0]+(fn===""?"":fn+` - `)+" "+Fn.join(`, - `)+" "+Un[1]:Un[0]+fn+" "+Fn.join(", ")+" "+Un[1]}(Gt,Xt,Vn)):Vn[0]+Xt+Vn[1]}function Rt(Ct){return"["+Error.prototype.toString.call(Ct)+"]"}function Bt(Ct,Mt,nn,sn,Lt,tn){var cn,on,Gt;if((Gt=Object.getOwnPropertyDescriptor(Mt,Lt)||{value:Mt[Lt]}).get?on=Gt.set?Ct.stylize("[Getter/Setter]","special"):Ct.stylize("[Getter]","special"):Gt.set&&(on=Ct.stylize("[Setter]","special")),Jt(sn,Lt)||(cn="["+Lt+"]"),on||(Ct.seen.indexOf(Gt.value)<0?(on=gt(nn)?pt(Ct,Gt.value,null):pt(Ct,Gt.value,nn-1)).indexOf(` -`)>-1&&(on=tn?on.split(` -`).map(function(Xt){return" "+Xt}).join(` -`).slice(2):` -`+on.split(` -`).map(function(Xt){return" "+Xt}).join(` -`)):on=Ct.stylize("[Circular]","special")),ft(cn)){if(tn&&Lt.match(/^\d+$/))return on;(cn=JSON.stringify(""+Lt)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(cn=cn.slice(1,-1),cn=Ct.stylize(cn,"name")):(cn=cn.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),cn=Ct.stylize(cn,"string"))}return cn+": "+on}function ht(Ct){return Array.isArray(Ct)}function mt(Ct){return typeof Ct=="boolean"}function gt(Ct){return Ct===null}function Vt(Ct){return typeof Ct=="number"}function Tt(Ct){return typeof Ct=="string"}function ft(Ct){return Ct===void 0}function Wt(Ct){return yt(Ct)&&Nt(Ct)==="[object RegExp]"}function yt(Ct){return typeof Ct=="object"&&Ct!==null}function Kt(Ct){return yt(Ct)&&Nt(Ct)==="[object Date]"}function $t(Ct){return yt(Ct)&&(Nt(Ct)==="[object Error]"||Ct instanceof Error)}function Ht(Ct){return typeof Ct=="function"}function Nt(Ct){return Object.prototype.toString.call(Ct)}function qt(Ct){return Ct<10?"0"+Ct.toString(10):Ct.toString(10)}tt.debuglog=function(Ct){if(Ct=Ct.toUpperCase(),!ut[Ct])if(Ut.test(Ct)){var Mt=process.pid;ut[Ct]=function(){var nn=tt.format.apply(tt,arguments);console.error("%s %d: %s",Ct,Mt,nn)}}else ut[Ct]=function(){};return ut[Ct]},tt.inspect=st,st.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]},st.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},tt.types=nt(1531),tt.isArray=ht,tt.isBoolean=mt,tt.isNull=gt,tt.isNullOrUndefined=function(Ct){return Ct==null},tt.isNumber=Vt,tt.isString=Tt,tt.isSymbol=function(Ct){return typeof Ct=="symbol"},tt.isUndefined=ft,tt.isRegExp=Wt,tt.types.isRegExp=Wt,tt.isObject=yt,tt.isDate=Kt,tt.types.isDate=Kt,tt.isError=$t,tt.types.isNativeError=$t,tt.isFunction=Ht,tt.isPrimitive=function(Ct){return Ct===null||typeof Ct=="boolean"||typeof Ct=="number"||typeof Ct=="string"||typeof Ct=="symbol"||Ct===void 0},tt.isBuffer=nt(5272);var kt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function bt(){var Ct=new Date,Mt=[qt(Ct.getHours()),qt(Ct.getMinutes()),qt(Ct.getSeconds())].join(":");return[Ct.getDate(),kt[Ct.getMonth()],Mt].join(" ")}function Jt(Ct,Mt){return Object.prototype.hasOwnProperty.call(Ct,Mt)}tt.log=function(){console.log("%s - %s",bt(),tt.format.apply(tt,arguments))},tt.inherits=nt(5615),tt._extend=function(Ct,Mt){if(!Mt||!yt(Mt))return Ct;for(var nn=Object.keys(Mt),sn=nn.length;sn--;)Ct[nn[sn]]=Mt[nn[sn]];return Ct};var wt=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;function At(Ct,Mt){if(!Ct){var nn=new Error("Promise was rejected with a falsy value");nn.reason=Ct,Ct=nn}return Mt(Ct)}tt.promisify=function(Ct){if(typeof Ct!="function")throw new TypeError('The "original" argument must be of type Function');if(wt&&Ct[wt]){var Mt;if(typeof(Mt=Ct[wt])!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Mt,wt,{value:Mt,enumerable:!1,writable:!1,configurable:!0}),Mt}function Mt(){for(var nn,sn,Lt=new Promise(function(on,Gt){nn=on,sn=Gt}),tn=[],cn=0;cn{nt.d(tt,{A:()=>dt});const rt={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};let lt;const ut=new Uint8Array(16);function Ut(){if(!lt&&(lt=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!lt))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return lt(ut)}const ot=[];for(let St=0;St<256;++St)ot.push((St+256).toString(16).slice(1));function st(St,pt=0){return ot[St[pt+0]]+ot[St[pt+1]]+ot[St[pt+2]]+ot[St[pt+3]]+"-"+ot[St[pt+4]]+ot[St[pt+5]]+"-"+ot[St[pt+6]]+ot[St[pt+7]]+"-"+ot[St[pt+8]]+ot[St[pt+9]]+"-"+ot[St[pt+10]]+ot[St[pt+11]]+ot[St[pt+12]]+ot[St[pt+13]]+ot[St[pt+14]]+ot[St[pt+15]]}const dt=function(St,pt,Rt){if(rt.randomUUID&&!pt&&!St)return rt.randomUUID();const Bt=(St=St||{}).random||(St.rng||Ut)();if(Bt[6]=15&Bt[6]|64,Bt[8]=63&Bt[8]|128,pt){Rt=Rt||0;for(let ht=0;ht<16;++ht)pt[Rt+ht]=Bt[ht];return pt}return st(Bt)}},2730:(et,tt,nt)=>{var rt=nt(705),lt=nt(4834),ut=nt(8498),Ut=nt(9818),ot=nt(9336),st=Ut("Object.prototype.toString"),dt=nt(1913)(),St=typeof globalThis>"u"?nt.g:globalThis,pt=lt(),Rt=Ut("String.prototype.slice"),Bt=Object.getPrototypeOf,ht=Ut("Array.prototype.indexOf",!0)||function(gt,Vt){for(var Tt=0;Tt-1?Vt:Vt==="Object"&&function(Tt){var ft=!1;return rt(mt,function(Wt,yt){if(!ft)try{Wt(Tt),ft=Rt(yt,1)}catch{}}),ft}(gt)}return ot?function(Tt){var ft=!1;return rt(mt,function(Wt,yt){if(!ft)try{"$"+Wt(Tt)===yt&&(ft=Rt(yt,1))}catch{}}),ft}(gt):null}},6155:(et,tt,nt)=>{et.exports=nt(5700),et.exports.LegacyTransportStream=nt(6668)},6668:(et,tt,nt)=>{var rt=nt(9208),lt=nt(4966).LEVEL,ut=nt(5700),Ut=et.exports=function(){var ot=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(ut.call(this,ot),!ot.transport||typeof ot.transport.log!="function")throw new Error("Invalid transport, must be an object with a log method.");function st(dt){this.emit("error",dt,this.transport)}this.transport=ot.transport,this.level=this.level||ot.transport.level,this.handleExceptions=this.handleExceptions||ot.transport.handleExceptions,this._deprecated(),this.transport.__winstonError||(this.transport.__winstonError=st.bind(this),this.transport.on("error",this.transport.__winstonError))};rt.inherits(Ut,ut),Ut.prototype._write=function(ot,st,dt){if(this.silent||ot.exception===!0&&!this.handleExceptions)return dt(null);(!this.level||this.levels[this.level]>=this.levels[ot[lt]])&&this.transport.log(ot[lt],ot.message,ot,this._nop),dt(null)},Ut.prototype._writev=function(ot,st){for(var dt=0;dt{var rt=nt(9208),lt=nt(5291),ut=nt(4966).LEVEL,Ut=et.exports=function(){var ot=this,st=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};lt.call(this,{objectMode:!0,highWaterMark:st.highWaterMark}),this.format=st.format,this.level=st.level,this.handleExceptions=st.handleExceptions,this.handleRejections=st.handleRejections,this.silent=st.silent,st.log&&(this.log=st.log),st.logv&&(this.logv=st.logv),st.close&&(this.close=st.close),this.once("pipe",function(dt){ot.levels=dt.levels,ot.parent=dt}),this.once("unpipe",function(dt){dt===ot.parent&&(ot.parent=null,ot.close&&ot.close())})};rt.inherits(Ut,lt),Ut.prototype._write=function(ot,st,dt){if(this.silent||ot.exception===!0&&!this.handleExceptions)return dt(null);var St=this.level||this.parent&&this.parent.level;if(!St||this.levels[St]>=this.levels[ot[ut]]){if(ot&&!this.format)return this.log(ot,dt);var pt=void 0,Rt=void 0;try{Rt=this.format.transform(Object.assign({},ot),this.format.options)}catch(Bt){pt=Bt}if(pt||!Rt){if(dt(),pt)throw pt;return}return this.log(Rt,dt)}return this._writableState.sync=!1,dt(null)},Ut.prototype._writev=function(ot,st){if(this.logv){var dt=ot.filter(this._accept,this);return dt.length?this.logv(dt,st):st(null)}for(var St=0;St=this.levels[st[ut]])||!this.handleExceptions&&st.exception===!0)},Ut.prototype._nop=function(){}},1127:(et,tt,nt)=>{const rt=nt(9208),{LEVEL:lt}=nt(4966),ut=nt(4927),Ut=et.exports=function(ot={}){if(ut.call(this,ot),!ot.transport||typeof ot.transport.log!="function")throw new Error("Invalid transport, must be an object with a log method.");this.transport=ot.transport,this.level=this.level||ot.transport.level,this.handleExceptions=this.handleExceptions||ot.transport.handleExceptions,this._deprecated(),this.transport.__winstonError||(this.transport.__winstonError=function(st){this.emit("error",st,this.transport)}.bind(this),this.transport.on("error",this.transport.__winstonError))};rt.inherits(Ut,ut),Ut.prototype._write=function(ot,st,dt){if(this.silent||ot.exception===!0&&!this.handleExceptions)return dt(null);(!this.level||this.levels[this.level]>=this.levels[ot[lt]])&&this.transport.log(ot[lt],ot.message,ot,this._nop),dt(null)},Ut.prototype._writev=function(ot,st){for(let dt=0;dt{const rt=nt(9208),lt=nt(5291),{LEVEL:ut}=nt(4966),Ut=et.exports=function(ot={}){lt.call(this,{objectMode:!0,highWaterMark:ot.highWaterMark}),this.format=ot.format,this.level=ot.level,this.handleExceptions=ot.handleExceptions,this.handleRejections=ot.handleRejections,this.silent=ot.silent,ot.log&&(this.log=ot.log),ot.logv&&(this.logv=ot.logv),ot.close&&(this.close=ot.close),this.once("pipe",st=>{this.levels=st.levels,this.parent=st}),this.once("unpipe",st=>{st===this.parent&&(this.parent=null,this.close&&this.close())})};rt.inherits(Ut,lt),Ut.prototype._write=function(ot,st,dt){if(this.silent||ot.exception===!0&&!this.handleExceptions)return dt(null);const St=this.level||this.parent&&this.parent.level;if(!St||this.levels[St]>=this.levels[ot[ut]]){if(ot&&!this.format)return this.log(ot,dt);let pt,Rt;try{Rt=this.format.transform(Object.assign({},ot),this.format.options)}catch(Bt){pt=Bt}if(pt||!Rt){if(dt(),pt)throw pt;return}return this.log(Rt,dt)}return this._writableState.sync=!1,dt(null)},Ut.prototype._writev=function(ot,st){if(this.logv){const dt=ot.filter(this._accept,this);return dt.length?this.logv(dt,st):st(null)}for(let dt=0;dt=this.levels[st[ut]])||!this.handleExceptions&&st.exception===!0)},Ut.prototype._nop=function(){}},6563:(et,tt,nt)=>{var rt=nt(8911),lt=nt(1735).warn;tt.version=nt(7241).version,tt.transports=nt(3307),tt.config=nt(9127),tt.addColors=rt.levels,tt.format=rt.format,tt.createLogger=nt(8727),tt.Logger=nt(2162),tt.ExceptionHandler=nt(8624),tt.RejectionHandler=nt(8846),tt.Container=nt(9456),tt.Transport=nt(6155),tt.loggers=new tt.Container;var ut=tt.createLogger();Object.keys(tt.config.npm.levels).concat(["log","query","stream","add","remove","clear","profile","startTimer","handleExceptions","unhandleExceptions","handleRejections","unhandleRejections","configure","child"]).forEach(function(Ut){return tt[Ut]=function(){return ut[Ut].apply(ut,arguments)}}),Object.defineProperty(tt,"level",{get:function(){return ut.level},set:function(Ut){ut.level=Ut}}),Object.defineProperty(tt,"exceptions",{get:function(){return ut.exceptions}}),Object.defineProperty(tt,"rejections",{get:function(){return ut.rejections}}),["exitOnError"].forEach(function(Ut){Object.defineProperty(tt,Ut,{get:function(){return ut[Ut]},set:function(ot){ut[Ut]=ot}})}),Object.defineProperty(tt,"default",{get:function(){return{exceptionHandlers:ut.exceptionHandlers,rejectionHandlers:ut.rejectionHandlers,transports:ut.transports}}}),lt.deprecated(tt,"setLevels"),lt.forFunctions(tt,"useFormat",["cli"]),lt.forProperties(tt,"useFormat",["padLevels","stripColors"]),lt.forFunctions(tt,"deprecated",["addRewriter","addFilter","clone","extend"]),lt.forProperties(tt,"deprecated",["emitErrs","levelLength"])},1735:(et,tt,nt)=>{var rt=nt(9208).format;tt.warn={deprecated:function(lt){return function(){throw new Error(rt("{ %s } was removed in winston@3.0.0.",lt))}},useFormat:function(lt){return function(){throw new Error([rt("{ %s } was removed in winston@3.0.0.",lt),"Use a custom winston.format = winston.format(function) instead."].join(` -`))}},forFunctions:function(lt,ut,Ut){Ut.forEach(function(ot){lt[ot]=tt.warn[ut](ot)})},forProperties:function(lt,ut,Ut){Ut.forEach(function(ot){var st=tt.warn[ut](ot);Object.defineProperty(lt,ot,{get:st,set:st})})}}},9127:(et,tt,nt)=>{var rt=nt(8911),lt=nt(4966).configs;tt.cli=rt.levels(lt.cli),tt.npm=rt.levels(lt.npm),tt.syslog=rt.levels(lt.syslog),tt.addColors=rt.levels},9456:(et,tt,nt)=>{function rt(st){return(rt=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})(st)}function lt(st,dt){if(!(st instanceof dt))throw new TypeError("Cannot call a class as a function")}function ut(st,dt){for(var St=0;St0&&arguments[0]!==void 0?arguments[0]:{};lt(this,pt),this.loggers=new Map,this.options=Rt},(dt=[{key:"add",value:function(pt,Rt){var Bt=this;if(!this.loggers.has(pt)){var ht=(Rt=Object.assign({},Rt||this.options)).transports||this.options.transports;Rt.transports=ht?Array.isArray(ht)?ht.slice():[ht]:[];var mt=ot(Rt);mt.on("close",function(){return Bt._delete(pt)}),this.loggers.set(pt,mt)}return this.loggers.get(pt)}},{key:"get",value:function(pt,Rt){return this.add(pt,Rt)}},{key:"has",value:function(pt){return!!this.loggers.has(pt)}},{key:"close",value:function(pt){var Rt=this;if(pt)return this._removeLogger(pt);this.loggers.forEach(function(Bt,ht){return Rt._removeLogger(ht)})}},{key:"_removeLogger",value:function(pt){this.loggers.has(pt)&&(this.loggers.get(pt).close(),this._delete(pt))}},{key:"_delete",value:function(pt){this.loggers.delete(pt)}}])&&ut(st.prototype,dt),St&&ut(st,St),Object.defineProperty(st,"prototype",{writable:!1}),st;var st,dt,St}()},8727:(et,tt,nt)=>{function rt(Vt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Tt){return typeof Tt}:function(Tt){return Tt&&typeof Symbol=="function"&&Tt.constructor===Symbol&&Tt!==Symbol.prototype?"symbol":typeof Tt})(Vt)}function lt(Vt,Tt){for(var ft=0;ft0&&arguments[0]!==void 0?arguments[0]:{};Vt.levels=Vt.levels||Bt.npm.levels;var Tt=function(Wt){function yt(Kt){return ot(this,yt),st(this,yt,[Kt])}return St(yt,Wt),ut(yt)}(ht),ft=new Tt(Vt);return Object.keys(Vt.levels).forEach(function(Wt){mt('Define prototype method for "%s"',Wt),Wt!=="log"?(Tt.prototype[Wt]=function(){for(var yt=this||ft,Kt=arguments.length,$t=new Array(Kt),Ht=0;Ht{function rt(Rt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Bt){return typeof Bt}:function(Bt){return Bt&&typeof Symbol=="function"&&Bt.constructor===Symbol&&Bt!==Symbol.prototype?"symbol":typeof Bt})(Rt)}function lt(Rt,Bt){for(var ht=0;ht{function rt(St){return(rt=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})(St)}function lt(St,pt){for(var Rt=0;Rt{function rt(kt,bt,Jt){return(bt=Ut(bt))in kt?Object.defineProperty(kt,bt,{value:Jt,enumerable:!0,configurable:!0,writable:!0}):kt[bt]=Jt,kt}function lt(kt){return(lt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(bt){return typeof bt}:function(bt){return bt&&typeof Symbol=="function"&&bt.constructor===Symbol&&bt!==Symbol.prototype?"symbol":typeof bt})(kt)}function ut(kt,bt){for(var Jt=0;Jt0&&arguments[0]!==void 0?arguments[0]:{},nn=Mt.silent,sn=Mt.format,Lt=Mt.defaultMeta,tn=Mt.levels,cn=Mt.level,on=cn===void 0?"info":cn,Gt=Mt.exitOnError,Xt=Gt===void 0||Gt,dn=Mt.transports,Vn=Mt.colors,Fn=Mt.emitErrs,fn=Mt.formatters,Un=Mt.padLevels,Jn=Mt.rewriters,_n=Mt.stripColors,Zn=Mt.exceptionHandlers,On=Mt.rejectionHandlers;if(this.transports.length&&this.clear(),this.silent=nn,this.format=sn||this.format||nt(2598)(),this.defaultMeta=Lt||null,this.levels=tn||this.levels||$t.npm.levels,this.level=on,this.exceptions&&this.exceptions.unhandle(),this.rejections&&this.rejections.unhandle(),this.exceptions=new Tt(this),this.rejections=new ft(this),this.profilers={},this.exitOnError=Xt,dn&&(dn=Array.isArray(dn)?dn:[dn]).forEach(function(Yn){return Ct.add(Yn)}),Vn||Fn||fn||Un||Jn||_n)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(` -`));Zn&&this.exceptions.handle(Zn),On&&this.rejections.handle(On)}},{key:"isLevelEnabled",value:function(Ct){var Mt=this,nn=qt(this.levels,Ct);if(nn===null)return!1;var sn=qt(this.levels,this.level);return sn!==null&&(this.transports&&this.transports.length!==0?this.transports.findIndex(function(Lt){var tn=qt(Mt.levels,Lt.level);return tn===null&&(tn=sn),tn>=nn})!==-1:sn>=nn)}},{key:"log",value:function(Ct,Mt){for(var nn=arguments.length,sn=new Array(nn>2?nn-2:0),Lt=2;Lt2?new Wt({transport:Ct}):Ct;if(!Mt._writableState||!Mt._writableState.objectMode)throw new Error("Transports must WritableStreams in objectMode. Set { objectMode: true }.");return this._onEvent("error",Mt),this._onEvent("warn",Mt),this.pipe(Mt),Ct.handleExceptions&&this.exceptions.handle(),Ct.handleRejections&&this.rejections.handle(),this}},{key:"remove",value:function(Ct){if(!Ct)return this;var Mt=Ct;return(!Vt(Ct)||Ct.log.length>2)&&(Mt=this.transports.filter(function(nn){return nn.transport===Ct})[0]),Mt&&this.unpipe(Mt),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(){Kt.deprecated("setLevels")}},{key:"query",value:function(Ct,Mt){typeof Ct=="function"&&(Mt=Ct,Ct={}),Ct=Ct||{};var nn={},sn=Object.assign({},Ct.query||{});Bt(this.transports.filter(function(Lt){return!!Lt.query}),function(Lt,tn){(function(cn,on){Ct.query&&typeof cn.formatQuery=="function"&&(Ct.query=cn.formatQuery(sn)),cn.query(Ct,function(Gt,Xt){if(Gt)return on(Gt);typeof cn.formatResults=="function"&&(Xt=cn.formatResults(Xt,Ct.format)),on(null,Xt)})})(Lt,function(cn,on){tn&&((on=cn||on)&&(nn[Lt.name]=on),tn()),tn=null})},function(){return Mt(null,nn)})}},{key:"stream",value:function(){var Ct=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Mt=new pt,nn=[];return Mt._streams=nn,Mt.destroy=function(){for(var sn=nn.length;sn--;)nn[sn].destroy()},this.transports.filter(function(sn){return!!sn.stream}).forEach(function(sn){var Lt=sn.stream(Ct);Lt&&(nn.push(Lt),Lt.on("log",function(tn){tn.transport=tn.transport||[],tn.transport.push(sn.name),Mt.emit("log",tn)}),Lt.on("error",function(tn){tn.transport=tn.transport||[],tn.transport.push(sn.name),Mt.emit("error",tn)}))}),Mt}},{key:"startTimer",value:function(){return new yt(this)}},{key:"profile",value:function(Ct){var Mt=Date.now();if(this.profilers[Ct]){var nn=this.profilers[Ct];delete this.profilers[Ct];for(var sn=arguments.length,Lt=new Array(sn>1?sn-1:0),tn=1;tn{function rt(ot){return(rt=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})(ot)}function lt(ot,st){for(var dt=0;dt{function rt(Rt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Bt){return typeof Bt}:function(Bt){return Bt&&typeof Symbol=="function"&&Bt.constructor===Symbol&&Bt!==Symbol.prototype?"symbol":typeof Bt})(Rt)}function lt(Rt,Bt){for(var ht=0;ht{function rt(St){return(rt=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})(St)}function lt(St,pt){for(var Rt=0;Rt{var rt=nt(2627),lt=nt(8888).StringDecoder,ut=nt(4156).Stream;function Ut(){}et.exports=function(ot,st){var dt=Buffer.alloc(65536),St=new lt("utf8"),pt=new ut,Rt="",Bt=0,ht=0;return ot.start===-1&&delete ot.start,pt.readable=!0,pt.destroy=function(){pt.destroyed=!0,pt.emit("end"),pt.emit("close")},rt.open(ot.file,"a+","0644",function(mt,gt){if(mt)return st?st(mt):pt.emit("error",mt),void pt.destroy();(function Vt(){if(!pt.destroyed)return rt.read(gt,dt,0,dt.length,Bt,function(Tt,ft){if(Tt)return st?st(Tt):pt.emit("error",Tt),void pt.destroy();if(!ft)return Rt&&((ot.start==null||ht>ot.start)&&(st?st(null,Rt):pt.emit("line",Rt)),ht++,Rt=""),setTimeout(Vt,1e3);var Wt=St.write(dt.slice(0,ft));st||pt.emit("data",Wt);for(var yt=(Wt=(Rt+Wt).split(/\n+/)).length-1,Kt=0;Ktot.start)&&(st?st(null,Wt[Kt]):pt.emit("line",Wt[Kt])),ht++;return Rt=Wt[yt],Bt+=ft,Vt()});rt.close(gt,Ut)})()}),st?pt.destroy:pt}},810:(et,tt,nt)=>{function rt(mt){return(rt=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})(mt)}function lt(mt,gt){if(!(mt instanceof gt))throw new TypeError("Cannot call a class as a function")}function ut(mt,gt){for(var Vt=0;Vt0&&arguments[0]!==void 0?arguments[0]:{};return lt(this,gt),(Wt=ot(this,gt,[yt])).name=yt.name||"console",Wt.stderrLevels=Wt._stringArrayToSet(yt.stderrLevels),Wt.consoleWarnLevels=Wt._stringArrayToSet(yt.consoleWarnLevels),Wt.eol=typeof yt.eol=="string"?yt.eol:St.EOL,Wt.setMaxListeners(30),Wt}return function(Wt,yt){if(typeof yt!="function"&&yt!==null)throw new TypeError("Super expression must either be null or a function");Wt.prototype=Object.create(yt&&yt.prototype,{constructor:{value:Wt,writable:!0,configurable:!0}}),Object.defineProperty(Wt,"prototype",{writable:!1}),yt&&dt(Wt,yt)}(gt,mt),Vt=gt,(Tt=[{key:"log",value:function(Wt,yt){var Kt=this;return setImmediate(function(){return Kt.emit("logged",Wt)}),this.stderrLevels[Wt[Rt]]?(console._stderr?console._stderr.write("".concat(Wt[Bt]).concat(this.eol)):console.error(Wt[Bt]),void(yt&&yt())):this.consoleWarnLevels[Wt[Rt]]?(console._stderr?console._stderr.write("".concat(Wt[Bt]).concat(this.eol)):console.warn(Wt[Bt]),void(yt&&yt())):(console._stdout?console._stdout.write("".concat(Wt[Bt]).concat(this.eol)):console.log(Wt[Bt]),void(yt&&yt()))}},{key:"_stringArrayToSet",value:function(Wt,yt){if(!Wt)return{};if(yt=yt||"Cannot make set from type other than Array of string elements",!Array.isArray(Wt))throw new Error(yt);return Wt.reduce(function(Kt,$t){if(typeof $t!="string")throw new Error(yt);return Kt[$t]=!0,Kt},{})}}])&&ut(Vt.prototype,Tt),ft&&ut(Vt,ft),Object.defineProperty(Vt,"prototype",{writable:!1}),Vt;var Vt,Tt,ft}(ht)},3329:(et,tt,nt)=>{function rt(Kt){return(rt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($t){return typeof $t}:function($t){return $t&&typeof Symbol=="function"&&$t.constructor===Symbol&&$t!==Symbol.prototype?"symbol":typeof $t})(Kt)}function lt(Kt,$t){if(!(Kt instanceof $t))throw new TypeError("Cannot call a class as a function")}function ut(Kt,$t){for(var Ht=0;Ht<$t.length;Ht++){var Nt=$t[Ht];Nt.enumerable=Nt.enumerable||!1,Nt.configurable=!0,"value"in Nt&&(Nt.writable=!0),Object.defineProperty(Kt,Ut(Nt.key),Nt)}}function Ut(Kt){var $t=function(Ht,Nt){if(rt(Ht)!="object"||!Ht)return Ht;var qt=Ht[Symbol.toPrimitive];if(qt!==void 0){var kt=qt.call(Ht,Nt||"default");if(rt(kt)!="object")return kt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Nt==="string"?String:Number)(Ht)}(Kt,"string");return rt($t)=="symbol"?$t:$t+""}function ot(Kt,$t,Ht){return $t=st($t),function(Nt,qt){if(qt&&(rt(qt)=="object"||typeof qt=="function"))return qt;if(qt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(kt){if(kt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return kt}(Nt)}(Kt,function(){try{var Nt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return function(){return!!Nt}()}()?Reflect.construct($t,Ht||[],st(Kt).constructor):$t.apply(Kt,Ht))}function st(Kt){return(st=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($t){return $t.__proto__||Object.getPrototypeOf($t)})(Kt)}function dt(Kt,$t){return(dt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Ht,Nt){return Ht.__proto__=Nt,Ht})(Kt,$t)}var St=nt(9256),pt=nt(8558),Rt=nt(481),Bt=nt(7946),ht=nt(4966).MESSAGE,mt=nt(4156),gt=mt.Stream,Vt=mt.PassThrough,Tt=nt(6155),ft=nt(7147)("winston:file"),Wt=nt(2213),yt=nt(2879);et.exports=function(Kt){function $t(){var kt,bt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};function Jt(wt){for(var At=arguments.length,Ct=new Array(At>1?At-1:0),Mt=1;Mt1&&arguments[1]!==void 0?arguments[1]:function(){};if(this.silent)return Jt(),!0;if(this._drain)this._stream.once("drain",function(){bt._drain=!1,bt.log(kt,Jt)});else{if(!this._rotate){if(this.lazy){if(!this._fileExist)return this._opening||this.open(),void this.once("open",function(){bt._fileExist=!0,bt.log(kt,Jt)});if(this._needsNewFile(this._pendingSize))return void this._dest.once("close",function(){bt._opening||bt.open(),bt.once("open",function(){bt.log(kt,Jt)})})}var wt="".concat(kt[ht]).concat(this.eol),At=Buffer.byteLength(wt);this._pendingSize+=At,this._opening&&!this.rotatedWhileOpening&&this._needsNewFile(this._size+this._pendingSize)&&(this.rotatedWhileOpening=!0);var Ct=this._stream.write(wt,Mt.bind(this));return Ct?Jt():(this._drain=!0,this._stream.once("drain",function(){bt._drain=!1,Jt()})),ft("written",Ct,this._drain),this.finishIfEnding(),Ct}this._stream.once("rotate",function(){bt._rotate=!1,bt.log(kt,Jt)})}function Mt(){var nn=this;this._size+=At,this._pendingSize-=At,ft("logged %s %s",this._size,wt),this.emit("logged",kt),this._rotate||this._opening||this._needsNewFile()&&(this.lazy?this._endStream(function(){nn.emit("fileclosed")}):(this._rotate=!0,this._endStream(function(){return nn._rotateFile()})))}}},{key:"query",value:function(kt,bt){typeof kt=="function"&&(bt=kt,kt={}),kt=function(sn){return(sn=sn||{}).rows=sn.rows||sn.limit||10,sn.start=sn.start||0,sn.until=sn.until||new Date,rt(sn.until)!=="object"&&(sn.until=new Date(sn.until)),sn.from=sn.from||sn.until-864e5,rt(sn.from)!=="object"&&(sn.from=new Date(sn.from)),sn.order=sn.order||"desc",sn}(kt);var Jt=pt.join(this.dirname,this.filename),wt="",At=[],Ct=0,Mt=St.createReadStream(Jt,{encoding:"utf8"});function nn(sn,Lt){try{var tn=JSON.parse(sn);(function(cn){if(cn&&rt(cn)==="object"){var on=new Date(cn.timestamp);if(!(kt.from&&onkt.until||kt.level&&kt.level!==cn.level))return!0}})(tn)&&function(cn){kt.rows&&At.length>=kt.rows&&kt.order!=="desc"?Mt.readable&&Mt.destroy():(kt.fields&&(cn=kt.fields.reduce(function(on,Gt){return on[Gt]=cn[Gt],on},{})),kt.order==="desc"&&At.length>=kt.rows&&At.shift(),At.push(cn))}(tn)}catch(cn){Lt||Mt.emit("error",cn)}}Mt.on("error",function(sn){if(Mt.readable&&Mt.destroy(),bt)return sn.code!=="ENOENT"?bt(sn):bt(null,At)}),Mt.on("data",function(sn){for(var Lt=(sn=(wt+sn).split(/\n+/)).length-1,tn=0;tn=kt.start)&&nn(sn[tn]),Ct++;wt=sn[Lt]}),Mt.on("close",function(){wt&&nn(wt,!0),kt.order==="desc"&&(At=At.reverse()),bt&&bt(null,At)})}},{key:"stream",value:function(){var kt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},bt=pt.join(this.dirname,this.filename),Jt=new gt,wt={file:bt,start:kt.start};return Jt.destroy=yt(wt,function(At,Ct){if(At)return Jt.emit("error",At);try{Jt.emit("data",Ct),Ct=JSON.parse(Ct),Jt.emit("log",Ct)}catch(Mt){Jt.emit("error",Mt)}}),Jt}},{key:"open",value:function(){var kt=this;this.filename&&(this._opening||(this._opening=!0,this.stat(function(bt,Jt){if(bt)return kt.emit("error",bt);ft("stat done: %s { size: %s }",kt.filename,Jt),kt._size=Jt,kt._dest=kt._createStream(kt._stream),kt._opening=!1,kt.once("open",function(){kt._stream.eventNames().includes("rotate")?kt._stream.emit("rotate"):kt._rotate=!1})})))}},{key:"stat",value:function(kt){var bt=this,Jt=this._getFile(),wt=pt.join(this.dirname,Jt);St.stat(wt,function(At,Ct){return At&&At.code==="ENOENT"?(ft("ENOENT ok",wt),bt.filename=Jt,kt(null,0)):At?(ft("err ".concat(At.code," ").concat(wt)),kt(At)):!Ct||bt._needsNewFile(Ct.size)?bt._incFile(function(){return bt.stat(kt)}):(bt.filename=Jt,void kt(null,Ct.size))})}},{key:"close",value:function(kt){var bt=this;this._stream&&this._stream.end(function(){kt&&kt(),bt.emit("flush"),bt.emit("closed")})}},{key:"_needsNewFile",value:function(kt){return kt=kt||this._size,this.maxsize&&kt>=this.maxsize}},{key:"_onError",value:function(kt){this.emit("error",kt)}},{key:"_setupStream",value:function(kt){return kt.on("error",this._onError),kt}},{key:"_cleanupStream",value:function(kt){return kt.removeListener("error",this._onError),kt.destroy(),kt}},{key:"_rotateFile",value:function(){var kt=this;this._incFile(function(){return kt.open()})}},{key:"_endStream",value:function(){var kt=this,bt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){};this._dest?(this._stream.unpipe(this._dest),this._dest.end(function(){kt._cleanupStream(kt._dest),bt()})):bt()}},{key:"_createStream",value:function(kt){var bt=this,Jt=pt.join(this.dirname,this.filename);ft("create stream start",Jt,this.options);var wt=St.createWriteStream(Jt,this.options).on("error",function(At){return ft(At)}).on("close",function(){return ft("close",wt.path,wt.bytesWritten)}).on("open",function(){ft("file open ok",Jt),bt.emit("open",Jt),kt.pipe(wt),bt.rotatedWhileOpening&&(bt._stream=new Vt,bt._stream.setMaxListeners(30),bt._rotateFile(),bt.rotatedWhileOpening=!1,bt._cleanupStream(wt),kt.end())});return ft("create stream ok",Jt),wt}},{key:"_incFile",value:function(kt){ft("_incFile",this.filename);var bt=pt.extname(this._basename),Jt=pt.basename(this._basename,bt),wt=[];this.zippedArchive&&wt.push(function(At){var Ct=this._created>0&&!this.tailable?this._created:"";this._compressFile(pt.join(this.dirname,"".concat(Jt).concat(Ct).concat(bt)),pt.join(this.dirname,"".concat(Jt).concat(Ct).concat(bt,".gz")),At)}.bind(this)),wt.push(function(At){this.tailable?this._checkMaxFilesTailable(bt,Jt,At):(this._created+=1,this._checkMaxFilesIncrementing(bt,Jt,At))}.bind(this)),Rt(wt,kt)}},{key:"_getFile",value:function(){var kt=pt.extname(this._basename),bt=pt.basename(this._basename,kt),Jt=this.rotationFormat?this.rotationFormat():this._created;return!this.tailable&&this._created?"".concat(bt).concat(Jt).concat(kt):"".concat(bt).concat(kt)}},{key:"_checkMaxFilesIncrementing",value:function(kt,bt,Jt){if(!this.maxFiles||this._created1;Mt--)At.push(function(nn,sn){var Lt=this,tn="".concat(bt).concat(nn-1).concat(kt).concat(Ct),cn=pt.join(this.dirname,tn);St.exists(cn,function(on){if(!on)return sn(null);tn="".concat(bt).concat(nn).concat(kt).concat(Ct),St.rename(cn,pt.join(Lt.dirname,tn),sn)})}.bind(this,Mt));Rt(At,function(){St.rename(pt.join(wt.dirname,"".concat(bt).concat(kt).concat(Ct)),pt.join(wt.dirname,"".concat(bt,"1").concat(kt).concat(Ct)),Jt)})}}},{key:"_compressFile",value:function(kt,bt,Jt){St.access(kt,St.F_OK,function(wt){if(wt)return Jt();var At=Bt.createGzip(),Ct=St.createReadStream(kt),Mt=St.createWriteStream(bt);Mt.on("finish",function(){St.unlink(kt,Jt)}),Ct.pipe(At).pipe(Mt)})}},{key:"_createLogDirIfNotExist",value:function(kt){St.existsSync(kt)||St.mkdirSync(kt,{recursive:!0})}}])&&ut(Ht.prototype,Nt),qt&&ut(Ht,qt),Object.defineProperty(Ht,"prototype",{writable:!1}),Ht;var Ht,Nt,qt}(Tt)},7543:(et,tt,nt)=>{function rt(Tt){return(rt=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})(Tt)}function lt(Tt,ft){var Wt=Object.keys(Tt);if(Object.getOwnPropertySymbols){var yt=Object.getOwnPropertySymbols(Tt);ft&&(yt=yt.filter(function(Kt){return Object.getOwnPropertyDescriptor(Tt,Kt).enumerable})),Wt.push.apply(Wt,yt)}return Wt}function ut(Tt){for(var ft=1;ft0&&arguments[0]!==void 0?arguments[0]:{};return ot(this,ft),($t=St(this,ft,[Ht])).options=Ht,$t.name=Ht.name||"http",$t.ssl=!!Ht.ssl,$t.host=Ht.host||"localhost",$t.port=Ht.port,$t.auth=Ht.auth,$t.path=Ht.path||"",$t.maximumDepth=Ht.maximumDepth,$t.agent=Ht.agent,$t.headers=Ht.headers||{},$t.headers["content-type"]="application/json",$t.batch=Ht.batch||!1,$t.batchInterval=Ht.batchInterval||5e3,$t.batchCount=Ht.batchCount||10,$t.batchOptions=[],$t.batchTimeoutID=-1,$t.batchCallback={},$t.port||($t.port=$t.ssl?443:80),$t}return function($t,Ht){if(typeof Ht!="function"&&Ht!==null)throw new TypeError("Super expression must either be null or a function");$t.prototype=Object.create(Ht&&Ht.prototype,{constructor:{value:$t,writable:!0,configurable:!0}}),Object.defineProperty($t,"prototype",{writable:!1}),Ht&&Rt($t,Ht)}(ft,Tt),Wt=ft,(yt=[{key:"log",value:function($t,Ht){var Nt=this;this._request($t,null,null,function(qt,kt){kt&&kt.statusCode!==200&&(qt=new Error("Invalid HTTP Status Code: ".concat(kt.statusCode))),qt?Nt.emit("warn",qt):Nt.emit("logged",$t)}),Ht&&setImmediate(Ht)}},{key:"query",value:function($t,Ht){typeof $t=="function"&&(Ht=$t,$t={});var Nt=($t={method:"query",params:this.normalizeQuery($t)}).params.auth||null;delete $t.params.auth;var qt=$t.params.path||null;delete $t.params.path,this._request($t,Nt,qt,function(kt,bt,Jt){if(bt&&bt.statusCode!==200&&(kt=new Error("Invalid HTTP Status Code: ".concat(bt.statusCode))),kt)return Ht(kt);if(typeof Jt=="string")try{Jt=JSON.parse(Jt)}catch(wt){return Ht(wt)}Ht(null,Jt)})}},{key:"stream",value:function(){var $t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Ht=new mt,Nt=($t={method:"stream",params:$t}).params.path||null;delete $t.params.path;var qt=$t.params.auth||null;delete $t.params.auth;var kt="",bt=this._request($t,qt,Nt);return Ht.destroy=function(){return bt.destroy()},bt.on("data",function(Jt){for(var wt=(Jt=(kt+Jt).split(/\n+/)).length-1,At=0;At0&&(clearTimeout(this.batchTimeoutID),this.batchTimeoutID=-1);var qt=this.batchOptions.slice();this.batchOptions=[],this._doRequest(qt,$t,Ht,Nt)}},{key:"_doRequest",value:function($t,Ht,Nt,qt){var kt=Object.assign({},this.headers);Nt&&Nt.bearer&&(kt.Authorization="Bearer ".concat(Nt.bearer));var bt=(this.ssl?ht:Bt).request(ut(ut({},this.options),{},{method:"POST",host:this.host,port:this.port,path:"/".concat(qt.replace(/^\//,"")),headers:kt,auth:Nt&&Nt.username&&Nt.password?"".concat(Nt.username,":").concat(Nt.password):"",agent:this.agent}));bt.on("error",Ht),bt.on("response",function(wt){return wt.on("end",function(){return Ht(null,wt)}).resume()});var Jt=Vt(ut({},this.maximumDepth&&{maximumDepth:this.maximumDepth}));bt.end(Buffer.from(Jt($t,this.options.replacer),"utf8"))}}])&&st(Wt.prototype,yt),Kt&&st(Wt,Kt),Object.defineProperty(Wt,"prototype",{writable:!1}),Wt;var Wt,yt,Kt}(gt)},3307:(et,tt,nt)=>{Object.defineProperty(tt,"Console",{configurable:!0,enumerable:!0,get:function(){return nt(810)}}),Object.defineProperty(tt,"File",{configurable:!0,enumerable:!0,get:function(){return nt(3329)}}),Object.defineProperty(tt,"Http",{configurable:!0,enumerable:!0,get:function(){return nt(7543)}}),Object.defineProperty(tt,"Stream",{configurable:!0,enumerable:!0,get:function(){return nt(1292)}})},1292:(et,tt,nt)=>{function rt(ht){return(rt=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})(ht)}function lt(ht,mt){if(!(ht instanceof mt))throw new TypeError("Cannot call a class as a function")}function ut(ht,mt){for(var gt=0;gt0&&arguments[0]!==void 0?arguments[0]:{};if(lt(this,mt),ft=ot(this,mt,[Wt]),!Wt.stream||!St(Wt.stream))throw new Error("options.stream is required.");return ft._stream=Wt.stream,ft._stream.setMaxListeners(1/0),ft.isObjectMode=Wt.stream._writableState.objectMode,ft.eol=typeof Wt.eol=="string"?Wt.eol:Rt.EOL,ft}return function(ft,Wt){if(typeof Wt!="function"&&Wt!==null)throw new TypeError("Super expression must either be null or a function");ft.prototype=Object.create(Wt&&Wt.prototype,{constructor:{value:ft,writable:!0,configurable:!0}}),Object.defineProperty(ft,"prototype",{writable:!1}),Wt&&dt(ft,Wt)}(mt,ht),gt=mt,(Vt=[{key:"log",value:function(ft,Wt){var yt=this;if(setImmediate(function(){return yt.emit("logged",ft)}),this.isObjectMode)return this._stream.write(ft),void(Wt&&Wt());this._stream.write("".concat(ft[pt]).concat(this.eol)),Wt&&Wt()}}])&&ut(gt.prototype,Vt),Tt&&ut(gt,Tt),Object.defineProperty(gt,"prototype",{writable:!1}),gt;var gt,Vt,Tt}(Bt)},3227:et=>{et.exports=function(){for(var nt={},rt=0;rt{const rt={};rt.web=nt(5949),nt(8052);const lt={v1:{}};lt.v1.signaling={},lt.v1.signaling.api=nt(4620),lt.v1.signaling.api.SignalingClient=function(ht,mt,gt){gt||(gt={}),gt.format="text",this.client_=new rt.web.GrpcWebClientBase(gt),this.hostname_=ht.replace(/\/+$/,"")},lt.v1.signaling.api.SignalingPromiseClient=function(ht,mt,gt){gt||(gt={}),gt.format="text",this.client_=new rt.web.GrpcWebClientBase(gt),this.hostname_=ht.replace(/\/+$/,"")};const ut=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/GetHealth",rt.web.MethodType.UNARY,lt.v1.signaling.api.GetHealthRequest,lt.v1.signaling.api.GetHealthResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.GetHealthResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.getHealth=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetHealth",ht,mt||{},ut,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.getHealth=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetHealth",ht,mt||{},ut)};const Ut=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/CreatePeer",rt.web.MethodType.UNARY,lt.v1.signaling.api.CreatePeerRequest,lt.v1.signaling.api.CreatePeerResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.CreatePeerResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.createPeer=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/CreatePeer",ht,mt||{},Ut,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.createPeer=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/CreatePeer",ht,mt||{},Ut)};const ot=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/DeletePeer",rt.web.MethodType.UNARY,lt.v1.signaling.api.DeletePeerRequest,lt.v1.signaling.api.DeletePeerResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.DeletePeerResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.deletePeer=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/DeletePeer",ht,mt||{},ot,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.deletePeer=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/DeletePeer",ht,mt||{},ot)};const st=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/RefreshPeer",rt.web.MethodType.UNARY,lt.v1.signaling.api.RefreshPeerRequest,lt.v1.signaling.api.RefreshPeerResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.RefreshPeerResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.refreshPeer=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/RefreshPeer",ht,mt||{},st,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.refreshPeer=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/RefreshPeer",ht,mt||{},st)};const dt=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/GetPeers",rt.web.MethodType.UNARY,lt.v1.signaling.api.GetPeersRequest,lt.v1.signaling.api.GetPeersResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.GetPeersResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.getPeers=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetPeers",ht,mt||{},dt,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.getPeers=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetPeers",ht,mt||{},dt)};const St=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/GetIceServers",rt.web.MethodType.UNARY,lt.v1.signaling.api.GetIceServersRequest,lt.v1.signaling.api.GetIceServersResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.GetIceServersResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.getIceServers=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetIceServers",ht,mt||{},St,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.getIceServers=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetIceServers",ht,mt||{},St)};const pt=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/SendSignal",rt.web.MethodType.UNARY,lt.v1.signaling.api.SendSignalRequest,lt.v1.signaling.api.SendSignalResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.SendSignalResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.sendSignal=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/SendSignal",ht,mt||{},pt,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.sendSignal=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/SendSignal",ht,mt||{},pt)};const Rt=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/ReceiveSignalStream",rt.web.MethodType.SERVER_STREAMING,lt.v1.signaling.api.ReceiveSignalStreamRequest,lt.v1.signaling.api.ReceiveSignalStreamResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.receiveSignalStream=function(ht,mt){return this.client_.serverStreaming(this.hostname_+"/v1.signaling.api.Signaling/ReceiveSignalStream",ht,mt||{},Rt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.receiveSignalStream=function(ht,mt){return this.client_.serverStreaming(this.hostname_+"/v1.signaling.api.Signaling/ReceiveSignalStream",ht,mt||{},Rt)};const Bt=new rt.web.MethodDescriptor("/v1.signaling.api.Signaling/GetSessions",rt.web.MethodType.UNARY,lt.v1.signaling.api.GetSessionsRequest,lt.v1.signaling.api.GetSessionsResponse,function(ht){return ht.serializeBinary()},lt.v1.signaling.api.GetSessionsResponse.deserializeBinary);lt.v1.signaling.api.SignalingClient.prototype.getSessions=function(ht,mt,gt){return this.client_.rpcCall(this.hostname_+"/v1.signaling.api.Signaling/GetSessions",ht,mt||{},Bt,gt)},lt.v1.signaling.api.SignalingPromiseClient.prototype.getSessions=function(ht,mt){return this.client_.unaryCall(this.hostname_+"/v1.signaling.api.Signaling/GetSessions",ht,mt||{},Bt)},et.exports=lt.v1.signaling.api},4620:(et,tt,nt)=>{var rt=nt(7186),lt=rt,ut=function(){return this?this:typeof window<"u"?window:ut!==void 0?ut:typeof self<"u"?self:Function("return this")()}.call(null),Ut=nt(8052);lt.object.extend(proto,Ut),lt.exportSymbol("proto.v1.signaling.api.CreatePeerRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.CreatePeerResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.DeletePeerRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.DeletePeerResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetHealthRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetHealthResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetIceServersRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetIceServersResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetPeersRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetPeersResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetSessionsRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.GetSessionsResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.Peer",null,ut),lt.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.ReceiveSignalStreamResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.RefreshPeerRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.RefreshPeerResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.RtcSession",null,ut),lt.exportSymbol("proto.v1.signaling.api.SendSignalRequest",null,ut),lt.exportSymbol("proto.v1.signaling.api.SendSignalResponse",null,ut),lt.exportSymbol("proto.v1.signaling.api.SessionType",null,ut),lt.exportSymbol("proto.v1.signaling.api.Signal",null,ut),proto.v1.signaling.api.Peer=function(ot){rt.Message.initialize(this,ot,0,-1,proto.v1.signaling.api.Peer.repeatedFields_,null)},lt.inherits(proto.v1.signaling.api.Peer,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Peer.displayName="proto.v1.signaling.api.Peer"),proto.v1.signaling.api.Signal=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.Signal,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.Signal.displayName="proto.v1.signaling.api.Signal"),proto.v1.signaling.api.RtcSession=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.RtcSession,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RtcSession.displayName="proto.v1.signaling.api.RtcSession"),proto.v1.signaling.api.GetSessionsRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetSessionsRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetSessionsRequest.displayName="proto.v1.signaling.api.GetSessionsRequest"),proto.v1.signaling.api.GetSessionsResponse=function(ot){rt.Message.initialize(this,ot,0,-1,proto.v1.signaling.api.GetSessionsResponse.repeatedFields_,null)},lt.inherits(proto.v1.signaling.api.GetSessionsResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetSessionsResponse.displayName="proto.v1.signaling.api.GetSessionsResponse"),proto.v1.signaling.api.GetHealthRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetHealthRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthRequest.displayName="proto.v1.signaling.api.GetHealthRequest"),proto.v1.signaling.api.GetHealthResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetHealthResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetHealthResponse.displayName="proto.v1.signaling.api.GetHealthResponse"),proto.v1.signaling.api.CreatePeerRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.CreatePeerRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerRequest.displayName="proto.v1.signaling.api.CreatePeerRequest"),proto.v1.signaling.api.CreatePeerResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.CreatePeerResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.CreatePeerResponse.displayName="proto.v1.signaling.api.CreatePeerResponse"),proto.v1.signaling.api.DeletePeerRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.DeletePeerRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerRequest.displayName="proto.v1.signaling.api.DeletePeerRequest"),proto.v1.signaling.api.DeletePeerResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.DeletePeerResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.DeletePeerResponse.displayName="proto.v1.signaling.api.DeletePeerResponse"),proto.v1.signaling.api.RefreshPeerRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.RefreshPeerRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerRequest.displayName="proto.v1.signaling.api.RefreshPeerRequest"),proto.v1.signaling.api.RefreshPeerResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.RefreshPeerResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.RefreshPeerResponse.displayName="proto.v1.signaling.api.RefreshPeerResponse"),proto.v1.signaling.api.GetPeersRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetPeersRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersRequest.displayName="proto.v1.signaling.api.GetPeersRequest"),proto.v1.signaling.api.GetPeersResponse=function(ot){rt.Message.initialize(this,ot,0,-1,proto.v1.signaling.api.GetPeersResponse.repeatedFields_,null)},lt.inherits(proto.v1.signaling.api.GetPeersResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetPeersResponse.displayName="proto.v1.signaling.api.GetPeersResponse"),proto.v1.signaling.api.GetIceServersRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetIceServersRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersRequest.displayName="proto.v1.signaling.api.GetIceServersRequest"),proto.v1.signaling.api.GetIceServersResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.GetIceServersResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.GetIceServersResponse.displayName="proto.v1.signaling.api.GetIceServersResponse"),proto.v1.signaling.api.SendSignalRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.SendSignalRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalRequest.displayName="proto.v1.signaling.api.SendSignalRequest"),proto.v1.signaling.api.SendSignalResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.SendSignalResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.SendSignalResponse.displayName="proto.v1.signaling.api.SendSignalResponse"),proto.v1.signaling.api.ReceiveSignalStreamRequest=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.ReceiveSignalStreamRequest,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.displayName="proto.v1.signaling.api.ReceiveSignalStreamRequest"),proto.v1.signaling.api.ReceiveSignalStreamResponse=function(ot){rt.Message.initialize(this,ot,0,-1,null,null)},lt.inherits(proto.v1.signaling.api.ReceiveSignalStreamResponse,rt.Message),lt.DEBUG&&!COMPILED&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.displayName="proto.v1.signaling.api.ReceiveSignalStreamResponse"),proto.v1.signaling.api.Peer.repeatedFields_=[5],rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Peer.prototype.toObject=function(ot){return proto.v1.signaling.api.Peer.toObject(ot,this)},proto.v1.signaling.api.Peer.toObject=function(ot,st){var dt,St={peerId:rt.Message.getFieldWithDefault(st,1,""),organizationId:rt.Message.getFieldWithDefault(st,2,""),userId:(dt=st.getUserId())&&Ut.StringValue.toObject(ot,dt),deviceId:(dt=st.getDeviceId())&&Ut.StringValue.toObject(ot,dt),sessionIdsList:(dt=rt.Message.getRepeatedField(st,5))==null?void 0:dt,peerCreatedTimestamp:(dt=st.getPeerCreatedTimestamp())&&Ut.Int64Value.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.Peer.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.Peer;return proto.v1.signaling.api.Peer.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.Peer.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setPeerId(dt);break;case 2:dt=st.readString(),ot.setOrganizationId(dt);break;case 3:dt=new Ut.StringValue,st.readMessage(dt,Ut.StringValue.deserializeBinaryFromReader),ot.setUserId(dt);break;case 4:dt=new Ut.StringValue,st.readMessage(dt,Ut.StringValue.deserializeBinaryFromReader),ot.setDeviceId(dt);break;case 5:dt=st.readString(),ot.addSessionIds(dt);break;case 6:dt=new Ut.Int64Value,st.readMessage(dt,Ut.Int64Value.deserializeBinaryFromReader),ot.setPeerCreatedTimestamp(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.Peer.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.Peer.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.Peer.serializeBinaryToWriter=function(ot,st){var dt=void 0;(dt=ot.getPeerId()).length>0&&st.writeString(1,dt),(dt=ot.getOrganizationId()).length>0&&st.writeString(2,dt),(dt=ot.getUserId())!=null&&st.writeMessage(3,dt,Ut.StringValue.serializeBinaryToWriter),(dt=ot.getDeviceId())!=null&&st.writeMessage(4,dt,Ut.StringValue.serializeBinaryToWriter),(dt=ot.getSessionIdsList()).length>0&&st.writeRepeatedString(5,dt),(dt=ot.getPeerCreatedTimestamp())!=null&&st.writeMessage(6,dt,Ut.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.Peer.prototype.getPeerId=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.Peer.prototype.setPeerId=function(ot){return rt.Message.setProto3StringField(this,1,ot)},proto.v1.signaling.api.Peer.prototype.getOrganizationId=function(){return rt.Message.getFieldWithDefault(this,2,"")},proto.v1.signaling.api.Peer.prototype.setOrganizationId=function(ot){return rt.Message.setProto3StringField(this,2,ot)},proto.v1.signaling.api.Peer.prototype.getUserId=function(){return rt.Message.getWrapperField(this,Ut.StringValue,3)},proto.v1.signaling.api.Peer.prototype.setUserId=function(ot){return rt.Message.setWrapperField(this,3,ot)},proto.v1.signaling.api.Peer.prototype.clearUserId=function(){return this.setUserId(void 0)},proto.v1.signaling.api.Peer.prototype.hasUserId=function(){return rt.Message.getField(this,3)!=null},proto.v1.signaling.api.Peer.prototype.getDeviceId=function(){return rt.Message.getWrapperField(this,Ut.StringValue,4)},proto.v1.signaling.api.Peer.prototype.setDeviceId=function(ot){return rt.Message.setWrapperField(this,4,ot)},proto.v1.signaling.api.Peer.prototype.clearDeviceId=function(){return this.setDeviceId(void 0)},proto.v1.signaling.api.Peer.prototype.hasDeviceId=function(){return rt.Message.getField(this,4)!=null},proto.v1.signaling.api.Peer.prototype.getSessionIdsList=function(){return rt.Message.getRepeatedField(this,5)},proto.v1.signaling.api.Peer.prototype.setSessionIdsList=function(ot){return rt.Message.setField(this,5,ot||[])},proto.v1.signaling.api.Peer.prototype.addSessionIds=function(ot,st){return rt.Message.addToRepeatedField(this,5,ot,st)},proto.v1.signaling.api.Peer.prototype.clearSessionIdsList=function(){return this.setSessionIdsList([])},proto.v1.signaling.api.Peer.prototype.getPeerCreatedTimestamp=function(){return rt.Message.getWrapperField(this,Ut.Int64Value,6)},proto.v1.signaling.api.Peer.prototype.setPeerCreatedTimestamp=function(ot){return rt.Message.setWrapperField(this,6,ot)},proto.v1.signaling.api.Peer.prototype.clearPeerCreatedTimestamp=function(){return this.setPeerCreatedTimestamp(void 0)},proto.v1.signaling.api.Peer.prototype.hasPeerCreatedTimestamp=function(){return rt.Message.getField(this,6)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.Signal.prototype.toObject=function(ot){return proto.v1.signaling.api.Signal.toObject(ot,this)},proto.v1.signaling.api.Signal.toObject=function(ot,st){var dt,St={sessionId:(dt=st.getSessionId())&&Ut.StringValue.toObject(ot,dt),sessionCreatedTimestamp:(dt=st.getSessionCreatedTimestamp())&&Ut.Int64Value.toObject(ot,dt),senderId:rt.Message.getFieldWithDefault(st,3,""),receiverId:rt.Message.getFieldWithDefault(st,4,""),payload:rt.Message.getFieldWithDefault(st,5,""),iceServers:rt.Message.getFieldWithDefault(st,6,""),iceTransportPolicy:rt.Message.getFieldWithDefault(st,7,""),sessionType:rt.Message.getFieldWithDefault(st,8,0)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.Signal.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.Signal;return proto.v1.signaling.api.Signal.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.Signal.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new Ut.StringValue;st.readMessage(dt,Ut.StringValue.deserializeBinaryFromReader),ot.setSessionId(dt);break;case 2:dt=new Ut.Int64Value,st.readMessage(dt,Ut.Int64Value.deserializeBinaryFromReader),ot.setSessionCreatedTimestamp(dt);break;case 3:dt=st.readString(),ot.setSenderId(dt);break;case 4:dt=st.readString(),ot.setReceiverId(dt);break;case 5:dt=st.readString(),ot.setPayload(dt);break;case 6:dt=st.readString(),ot.setIceServers(dt);break;case 7:dt=st.readString(),ot.setIceTransportPolicy(dt);break;case 8:dt=st.readEnum(),ot.setSessionType(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.Signal.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.Signal.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.Signal.serializeBinaryToWriter=function(ot,st){var dt=void 0;(dt=ot.getSessionId())!=null&&st.writeMessage(1,dt,Ut.StringValue.serializeBinaryToWriter),(dt=ot.getSessionCreatedTimestamp())!=null&&st.writeMessage(2,dt,Ut.Int64Value.serializeBinaryToWriter),(dt=ot.getSenderId()).length>0&&st.writeString(3,dt),(dt=ot.getReceiverId()).length>0&&st.writeString(4,dt),(dt=ot.getPayload()).length>0&&st.writeString(5,dt),(dt=ot.getIceServers()).length>0&&st.writeString(6,dt),(dt=ot.getIceTransportPolicy()).length>0&&st.writeString(7,dt),(dt=ot.getSessionType())!==0&&st.writeEnum(8,dt)},proto.v1.signaling.api.Signal.prototype.getSessionId=function(){return rt.Message.getWrapperField(this,Ut.StringValue,1)},proto.v1.signaling.api.Signal.prototype.setSessionId=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.Signal.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionId=function(){return rt.Message.getField(this,1)!=null},proto.v1.signaling.api.Signal.prototype.getSessionCreatedTimestamp=function(){return rt.Message.getWrapperField(this,Ut.Int64Value,2)},proto.v1.signaling.api.Signal.prototype.setSessionCreatedTimestamp=function(ot){return rt.Message.setWrapperField(this,2,ot)},proto.v1.signaling.api.Signal.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.Signal.prototype.hasSessionCreatedTimestamp=function(){return rt.Message.getField(this,2)!=null},proto.v1.signaling.api.Signal.prototype.getSenderId=function(){return rt.Message.getFieldWithDefault(this,3,"")},proto.v1.signaling.api.Signal.prototype.setSenderId=function(ot){return rt.Message.setProto3StringField(this,3,ot)},proto.v1.signaling.api.Signal.prototype.getReceiverId=function(){return rt.Message.getFieldWithDefault(this,4,"")},proto.v1.signaling.api.Signal.prototype.setReceiverId=function(ot){return rt.Message.setProto3StringField(this,4,ot)},proto.v1.signaling.api.Signal.prototype.getPayload=function(){return rt.Message.getFieldWithDefault(this,5,"")},proto.v1.signaling.api.Signal.prototype.setPayload=function(ot){return rt.Message.setProto3StringField(this,5,ot)},proto.v1.signaling.api.Signal.prototype.getIceServers=function(){return rt.Message.getFieldWithDefault(this,6,"")},proto.v1.signaling.api.Signal.prototype.setIceServers=function(ot){return rt.Message.setProto3StringField(this,6,ot)},proto.v1.signaling.api.Signal.prototype.getIceTransportPolicy=function(){return rt.Message.getFieldWithDefault(this,7,"")},proto.v1.signaling.api.Signal.prototype.setIceTransportPolicy=function(ot){return rt.Message.setProto3StringField(this,7,ot)},proto.v1.signaling.api.Signal.prototype.getSessionType=function(){return rt.Message.getFieldWithDefault(this,8,0)},proto.v1.signaling.api.Signal.prototype.setSessionType=function(ot){return rt.Message.setProto3EnumField(this,8,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RtcSession.prototype.toObject=function(ot){return proto.v1.signaling.api.RtcSession.toObject(ot,this)},proto.v1.signaling.api.RtcSession.toObject=function(ot,st){var dt={sessionId:rt.Message.getFieldWithDefault(st,1,""),offerPeerId:rt.Message.getFieldWithDefault(st,2,""),answerPeerId:rt.Message.getFieldWithDefault(st,3,""),organizationId:rt.Message.getFieldWithDefault(st,4,""),sessionType:rt.Message.getFieldWithDefault(st,5,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.RtcSession.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.RtcSession;return proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setSessionId(dt);break;case 2:dt=st.readString(),ot.setOfferPeerId(dt);break;case 3:dt=st.readString(),ot.setAnswerPeerId(dt);break;case 4:dt=st.readString(),ot.setOrganizationId(dt);break;case 5:dt=st.readString(),ot.setSessionType(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.RtcSession.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.RtcSession.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.RtcSession.serializeBinaryToWriter=function(ot,st){var dt=void 0;(dt=ot.getSessionId()).length>0&&st.writeString(1,dt),(dt=ot.getOfferPeerId()).length>0&&st.writeString(2,dt),(dt=ot.getAnswerPeerId()).length>0&&st.writeString(3,dt),(dt=ot.getOrganizationId()).length>0&&st.writeString(4,dt),(dt=ot.getSessionType()).length>0&&st.writeString(5,dt)},proto.v1.signaling.api.RtcSession.prototype.getSessionId=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.RtcSession.prototype.setSessionId=function(ot){return rt.Message.setProto3StringField(this,1,ot)},proto.v1.signaling.api.RtcSession.prototype.getOfferPeerId=function(){return rt.Message.getFieldWithDefault(this,2,"")},proto.v1.signaling.api.RtcSession.prototype.setOfferPeerId=function(ot){return rt.Message.setProto3StringField(this,2,ot)},proto.v1.signaling.api.RtcSession.prototype.getAnswerPeerId=function(){return rt.Message.getFieldWithDefault(this,3,"")},proto.v1.signaling.api.RtcSession.prototype.setAnswerPeerId=function(ot){return rt.Message.setProto3StringField(this,3,ot)},proto.v1.signaling.api.RtcSession.prototype.getOrganizationId=function(){return rt.Message.getFieldWithDefault(this,4,"")},proto.v1.signaling.api.RtcSession.prototype.setOrganizationId=function(ot){return rt.Message.setProto3StringField(this,4,ot)},proto.v1.signaling.api.RtcSession.prototype.getSessionType=function(){return rt.Message.getFieldWithDefault(this,5,"")},proto.v1.signaling.api.RtcSession.prototype.setSessionType=function(ot){return rt.Message.setProto3StringField(this,5,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetSessionsRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.GetSessionsRequest.toObject(ot,this)},proto.v1.signaling.api.GetSessionsRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetSessionsRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetSessionsRequest;return proto.v1.signaling.api.GetSessionsRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetSessionsRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.GetSessionsRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetSessionsRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetSessionsRequest.serializeBinaryToWriter=function(ot,st){},proto.v1.signaling.api.GetSessionsResponse.repeatedFields_=[1],rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetSessionsResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.GetSessionsResponse.toObject(ot,this)},proto.v1.signaling.api.GetSessionsResponse.toObject=function(ot,st){var dt={sessionsList:rt.Message.toObjectList(st.getSessionsList(),proto.v1.signaling.api.RtcSession.toObject,ot)};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetSessionsResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetSessionsResponse;return proto.v1.signaling.api.GetSessionsResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetSessionsResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.RtcSession;st.readMessage(dt,proto.v1.signaling.api.RtcSession.deserializeBinaryFromReader),ot.addSessions(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.GetSessionsResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetSessionsResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetSessionsResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getSessionsList()).length>0&&st.writeRepeatedMessage(1,dt,proto.v1.signaling.api.RtcSession.serializeBinaryToWriter)},proto.v1.signaling.api.GetSessionsResponse.prototype.getSessionsList=function(){return rt.Message.getRepeatedWrapperField(this,proto.v1.signaling.api.RtcSession,1)},proto.v1.signaling.api.GetSessionsResponse.prototype.setSessionsList=function(ot){return rt.Message.setRepeatedWrapperField(this,1,ot)},proto.v1.signaling.api.GetSessionsResponse.prototype.addSessions=function(ot,st){return rt.Message.addToRepeatedWrapperField(this,1,ot,proto.v1.signaling.api.RtcSession,st)},proto.v1.signaling.api.GetSessionsResponse.prototype.clearSessionsList=function(){return this.setSessionsList([])},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.GetHealthRequest.toObject(ot,this)},proto.v1.signaling.api.GetHealthRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetHealthRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetHealthRequest;return proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetHealthRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.GetHealthRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetHealthRequest.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetHealthResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.GetHealthResponse.toObject(ot,this)},proto.v1.signaling.api.GetHealthResponse.toObject=function(ot,st){var dt={version:rt.Message.getFieldWithDefault(st,1,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetHealthResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetHealthResponse;return proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetHealthResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setVersion(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.GetHealthResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetHealthResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getVersion()).length>0&&st.writeString(1,dt)},proto.v1.signaling.api.GetHealthResponse.prototype.getVersion=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetHealthResponse.prototype.setVersion=function(ot){return rt.Message.setProto3StringField(this,1,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.CreatePeerRequest.toObject(ot,this)},proto.v1.signaling.api.CreatePeerRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.CreatePeerRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.CreatePeerRequest;return proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.CreatePeerRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.CreatePeerRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.CreatePeerRequest.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.CreatePeerResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.CreatePeerResponse.toObject(ot,this)},proto.v1.signaling.api.CreatePeerResponse.toObject=function(ot,st){var dt,St={peer:(dt=st.getPeer())&&proto.v1.signaling.api.Peer.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.CreatePeerResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.CreatePeerResponse;return proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.CreatePeerResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Peer;st.readMessage(dt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),ot.setPeer(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.CreatePeerResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.CreatePeerResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeer())!=null&&st.writeMessage(1,dt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.CreatePeerResponse.prototype.getPeer=function(){return rt.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.CreatePeerResponse.prototype.setPeer=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.CreatePeerResponse.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.CreatePeerResponse.prototype.hasPeer=function(){return rt.Message.getField(this,1)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.DeletePeerRequest.toObject(ot,this)},proto.v1.signaling.api.DeletePeerRequest.toObject=function(ot,st){var dt={peerId:rt.Message.getFieldWithDefault(st,1,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.DeletePeerRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.DeletePeerRequest;return proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.DeletePeerRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setPeerId(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.DeletePeerRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.DeletePeerRequest.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeerId()).length>0&&st.writeString(1,dt)},proto.v1.signaling.api.DeletePeerRequest.prototype.getPeerId=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.DeletePeerRequest.prototype.setPeerId=function(ot){return rt.Message.setProto3StringField(this,1,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.DeletePeerResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.DeletePeerResponse.toObject(ot,this)},proto.v1.signaling.api.DeletePeerResponse.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.DeletePeerResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.DeletePeerResponse;return proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.DeletePeerResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.DeletePeerResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.DeletePeerResponse.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.RefreshPeerRequest.toObject(ot,this)},proto.v1.signaling.api.RefreshPeerRequest.toObject=function(ot,st){var dt,St={peer:(dt=st.getPeer())&&proto.v1.signaling.api.Peer.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.RefreshPeerRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.RefreshPeerRequest;return proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.RefreshPeerRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Peer;st.readMessage(dt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),ot.setPeer(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.RefreshPeerRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.RefreshPeerRequest.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeer())!=null&&st.writeMessage(1,dt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.RefreshPeerRequest.prototype.getPeer=function(){return rt.Message.getWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.RefreshPeerRequest.prototype.setPeer=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.RefreshPeerRequest.prototype.clearPeer=function(){return this.setPeer(void 0)},proto.v1.signaling.api.RefreshPeerRequest.prototype.hasPeer=function(){return rt.Message.getField(this,1)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.RefreshPeerResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.RefreshPeerResponse.toObject(ot,this)},proto.v1.signaling.api.RefreshPeerResponse.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.RefreshPeerResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.RefreshPeerResponse;return proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.RefreshPeerResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.RefreshPeerResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.RefreshPeerResponse.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.GetPeersRequest.toObject(ot,this)},proto.v1.signaling.api.GetPeersRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetPeersRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetPeersRequest;return proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetPeersRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.GetPeersRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetPeersRequest.serializeBinaryToWriter=function(ot,st){},proto.v1.signaling.api.GetPeersResponse.repeatedFields_=[1],rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetPeersResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.GetPeersResponse.toObject(ot,this)},proto.v1.signaling.api.GetPeersResponse.toObject=function(ot,st){var dt={peersList:rt.Message.toObjectList(st.getPeersList(),proto.v1.signaling.api.Peer.toObject,ot)};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetPeersResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetPeersResponse;return proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetPeersResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Peer;st.readMessage(dt,proto.v1.signaling.api.Peer.deserializeBinaryFromReader),ot.addPeers(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.GetPeersResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetPeersResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeersList()).length>0&&st.writeRepeatedMessage(1,dt,proto.v1.signaling.api.Peer.serializeBinaryToWriter)},proto.v1.signaling.api.GetPeersResponse.prototype.getPeersList=function(){return rt.Message.getRepeatedWrapperField(this,proto.v1.signaling.api.Peer,1)},proto.v1.signaling.api.GetPeersResponse.prototype.setPeersList=function(ot){return rt.Message.setRepeatedWrapperField(this,1,ot)},proto.v1.signaling.api.GetPeersResponse.prototype.addPeers=function(ot,st){return rt.Message.addToRepeatedWrapperField(this,1,ot,proto.v1.signaling.api.Peer,st)},proto.v1.signaling.api.GetPeersResponse.prototype.clearPeersList=function(){return this.setPeersList([])},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.GetIceServersRequest.toObject(ot,this)},proto.v1.signaling.api.GetIceServersRequest.toObject=function(ot,st){var dt={};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetIceServersRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetIceServersRequest;return proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetIceServersRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)st.getFieldNumber(),st.skipField();return ot},proto.v1.signaling.api.GetIceServersRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetIceServersRequest.serializeBinaryToWriter=function(ot,st){},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.GetIceServersResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.GetIceServersResponse.toObject(ot,this)},proto.v1.signaling.api.GetIceServersResponse.toObject=function(ot,st){var dt={iceServers:rt.Message.getFieldWithDefault(st,1,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.GetIceServersResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.GetIceServersResponse;return proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.GetIceServersResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setIceServers(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.GetIceServersResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.GetIceServersResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getIceServers()).length>0&&st.writeString(1,dt)},proto.v1.signaling.api.GetIceServersResponse.prototype.getIceServers=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.GetIceServersResponse.prototype.setIceServers=function(ot){return rt.Message.setProto3StringField(this,1,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.SendSignalRequest.toObject(ot,this)},proto.v1.signaling.api.SendSignalRequest.toObject=function(ot,st){var dt,St={signal:(dt=st.getSignal())&&proto.v1.signaling.api.Signal.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.SendSignalRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.SendSignalRequest;return proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.SendSignalRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Signal;st.readMessage(dt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),ot.setSignal(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.SendSignalRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.SendSignalRequest.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getSignal())!=null&&st.writeMessage(1,dt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalRequest.prototype.getSignal=function(){return rt.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.SendSignalRequest.prototype.setSignal=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.SendSignalRequest.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.SendSignalRequest.prototype.hasSignal=function(){return rt.Message.getField(this,1)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.SendSignalResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.SendSignalResponse.toObject(ot,this)},proto.v1.signaling.api.SendSignalResponse.toObject=function(ot,st){var dt,St={sessionId:(dt=st.getSessionId())&&Ut.StringValue.toObject(ot,dt),sessionCreatedTimestamp:(dt=st.getSessionCreatedTimestamp())&&Ut.Int64Value.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.SendSignalResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.SendSignalResponse;return proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.SendSignalResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new Ut.StringValue;st.readMessage(dt,Ut.StringValue.deserializeBinaryFromReader),ot.setSessionId(dt);break;case 2:dt=new Ut.Int64Value,st.readMessage(dt,Ut.Int64Value.deserializeBinaryFromReader),ot.setSessionCreatedTimestamp(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.SendSignalResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.SendSignalResponse.serializeBinaryToWriter=function(ot,st){var dt=void 0;(dt=ot.getSessionId())!=null&&st.writeMessage(1,dt,Ut.StringValue.serializeBinaryToWriter),(dt=ot.getSessionCreatedTimestamp())!=null&&st.writeMessage(2,dt,Ut.Int64Value.serializeBinaryToWriter)},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionId=function(){return rt.Message.getWrapperField(this,Ut.StringValue,1)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionId=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionId=function(){return this.setSessionId(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionId=function(){return rt.Message.getField(this,1)!=null},proto.v1.signaling.api.SendSignalResponse.prototype.getSessionCreatedTimestamp=function(){return rt.Message.getWrapperField(this,Ut.Int64Value,2)},proto.v1.signaling.api.SendSignalResponse.prototype.setSessionCreatedTimestamp=function(ot){return rt.Message.setWrapperField(this,2,ot)},proto.v1.signaling.api.SendSignalResponse.prototype.clearSessionCreatedTimestamp=function(){return this.setSessionCreatedTimestamp(void 0)},proto.v1.signaling.api.SendSignalResponse.prototype.hasSessionCreatedTimestamp=function(){return rt.Message.getField(this,2)!=null},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.toObject=function(ot){return proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject(ot,this)},proto.v1.signaling.api.ReceiveSignalStreamRequest.toObject=function(ot,st){var dt={peerId:rt.Message.getFieldWithDefault(st,1,"")};return ot&&(dt.$jspbMessageInstance=st),dt}),proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.ReceiveSignalStreamRequest;return proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.ReceiveSignalStreamRequest.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=st.readString();ot.setPeerId(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamRequest.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getPeerId()).length>0&&st.writeString(1,dt)},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.getPeerId=function(){return rt.Message.getFieldWithDefault(this,1,"")},proto.v1.signaling.api.ReceiveSignalStreamRequest.prototype.setPeerId=function(ot){return rt.Message.setProto3StringField(this,1,ot)},rt.Message.GENERATE_TO_OBJECT&&(proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.toObject=function(ot){return proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject(ot,this)},proto.v1.signaling.api.ReceiveSignalStreamResponse.toObject=function(ot,st){var dt,St={signal:(dt=st.getSignal())&&proto.v1.signaling.api.Signal.toObject(ot,dt)};return ot&&(St.$jspbMessageInstance=st),St}),proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinary=function(ot){var st=new rt.BinaryReader(ot),dt=new proto.v1.signaling.api.ReceiveSignalStreamResponse;return proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader(dt,st)},proto.v1.signaling.api.ReceiveSignalStreamResponse.deserializeBinaryFromReader=function(ot,st){for(;st.nextField()&&!st.isEndGroup();)switch(st.getFieldNumber()){case 1:var dt=new proto.v1.signaling.api.Signal;st.readMessage(dt,proto.v1.signaling.api.Signal.deserializeBinaryFromReader),ot.setSignal(dt);break;default:st.skipField()}return ot},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.serializeBinary=function(){var ot=new rt.BinaryWriter;return proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter(this,ot),ot.getResultBuffer()},proto.v1.signaling.api.ReceiveSignalStreamResponse.serializeBinaryToWriter=function(ot,st){var dt;(dt=ot.getSignal())!=null&&st.writeMessage(1,dt,proto.v1.signaling.api.Signal.serializeBinaryToWriter)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.getSignal=function(){return rt.Message.getWrapperField(this,proto.v1.signaling.api.Signal,1)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.setSignal=function(ot){return rt.Message.setWrapperField(this,1,ot)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.clearSignal=function(){return this.setSignal(void 0)},proto.v1.signaling.api.ReceiveSignalStreamResponse.prototype.hasSignal=function(){return rt.Message.getField(this,1)!=null},proto.v1.signaling.api.SessionType={UNKNOWN:0,TELEOP:1,PORT_FORWARD:2,OBSERVE:3,HEADLESS:4},lt.object.extend(tt,proto.v1.signaling.api)},6973:()=>{},3011:()=>{},3951:()=>{},9256:()=>{},2627:()=>{},4834:(et,tt,nt)=>{var rt=nt(9501),lt=typeof globalThis>"u"?nt.g:globalThis;et.exports=function(){for(var ut=[],Ut=0;Ut{et.exports={version:"3.13.1"}}},j={};function $(et){var tt=j[et];if(tt!==void 0)return tt.exports;var nt=j[et]={id:et,loaded:!1,exports:{}};return _[et].call(nt.exports,nt,nt.exports,$),nt.loaded=!0,nt.exports}$.n=et=>{var tt=et&&et.__esModule?()=>et.default:()=>et;return $.d(tt,{a:tt}),tt},$.d=(et,tt)=>{for(var nt in tt)$.o(tt,nt)&&!$.o(et,nt)&&Object.defineProperty(et,nt,{enumerable:!0,get:tt[nt]})},$.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),$.o=(et,tt)=>Object.prototype.hasOwnProperty.call(et,tt),$.r=et=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(et,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(et,"__esModule",{value:!0})},$.nmd=et=>(et.paths=[],et.children||(et.children=[]),et);var _e={};return(()=>{$.r(_e),$.d(_e,{AuthClient:()=>nt,Credentials:()=>Vn,RtcClient:()=>xa,RtcClientV1:()=>gn,RtcSignalingClient:()=>lt,SignalingPromiseClient:()=>Fn.SignalingPromiseClient,createRtcStreamMessage:()=>_o});var et=$(6331),tt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class nt extends et.S{adminSignup(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/admin-signup",{token:xt,method:"POST",body:Zt})})}login(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/login",{method:"POST",body:Zt,allowUnsafeRetries:!0})})}loginWithGoogleToken(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/login-google",{method:"POST",body:Zt,allowUnsafeRetries:!0})})}refresh(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/refresh",{method:"POST",body:{refreshToken:Zt,tokenExpirationSeconds:xt},allowUnsafeRetries:!0})})}respondToNewPasswordRequiredChallenge(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/respond-to-new-password-required-challenge",{method:"POST",body:Zt})})}forgotPassword(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/forgot-password",{method:"POST",body:{email:Zt}})})}confirmForgotPassword(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/confirm-forgot-password",{method:"POST",body:Zt})})}resendInvitation(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/resend-invitation",{method:"POST",body:{email:Zt}})})}changePassword(Zt){return tt(this,arguments,void 0,function*({token:xt,refreshToken:zt,currentPassword:Qn,newPassword:Tn}){return yield this.fetch("auth/change-password",{token:xt,method:"POST",body:{refreshToken:zt,currentPassword:Qn,newPassword:Tn}})})}getDeviceCredentials(Zt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/device-credentials",{token:Zt,method:"POST",allowUnsafeRetries:!0})})}impersonate(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/impersonate",{token:Zt,method:"POST",allowUnsafeRetries:!0,body:{userId:xt}})})}createServiceAccount(Zt,xt,zt,Qn,Tn){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/service-account",{token:Zt,method:"POST",allowUnsafeRetries:!0,body:{name:xt,roleId:zt,tags:Qn,description:Tn}})})}getFeatures(Zt){return tt(this,void 0,void 0,function*(){return(yield this.fetch("auth/features",{token:Zt})).features})}checkSso(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/check-sso",{method:"POST",body:{email:Zt,allowUserAutoCreation:xt}})})}loginWithSso(Zt,xt){return tt(this,void 0,void 0,function*(){return yield this.fetch("auth/login-sso",{method:"POST",body:{token:Zt,refreshToken:xt}})})}}var rt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class lt extends et.S{createPeer(Zt,xt){return rt(this,void 0,void 0,function*(){return yield this.fetch("peers",{token:Zt,method:"POST",body:xt})})}getPeers(Zt){return rt(this,void 0,void 0,function*(){return(yield this.fetch("peers",{token:Zt})).items})}refreshPeer(Zt,xt){return rt(this,void 0,void 0,function*(){yield this.fetch(`peers/${xt}/refresh`,{token:Zt,method:"POST",allowUnsafeRetries:!0})})}createSession(Zt,xt){return rt(this,void 0,void 0,function*(){return yield this.fetch("sessions",{token:Zt,method:"POST",body:xt})})}refreshSession(Zt,xt){return rt(this,void 0,void 0,function*(){yield this.fetch(`sessions/${xt}/refresh`,{token:Zt,method:"POST",allowUnsafeRetries:!0})})}deleteSession(Zt,xt){return rt(this,void 0,void 0,function*(){yield this.fetch("sessions/"+xt,{token:Zt,method:"DELETE",allowUnsafeRetries:!0})})}getSessions(Zt){return rt(this,void 0,void 0,function*(){return(yield this.fetch("sessions",{token:Zt})).items})}getIceServers(Zt){return rt(this,void 0,void 0,function*(){return(yield this.fetch("ice-servers",{token:Zt})).items})}addSignals(Zt,xt,zt){return rt(this,void 0,void 0,function*(){yield this.fetch(`sessions/${xt}/add-signals`,{token:Zt,method:"POST",body:zt})})}takeSignals(Zt,xt){return rt(this,void 0,void 0,function*(){return(yield this.fetch(`sessions/${xt}/take-signals`,{token:Zt,method:"POST"})).items})}}var ut=$(3778),Ut=$(7221),ot=$(6075),st=$.n(ot);const dt=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,St=typeof AbortController=="function"?AbortController:class{constructor(){this.signal=new Bt}abort(In=new Error("This operation was aborted")){this.signal.reason=this.signal.reason||In,this.signal.aborted=!0,this.signal.dispatchEvent({type:"abort",target:this.signal})}},pt=typeof AbortSignal=="function",Rt=typeof St.AbortSignal=="function",Bt=pt?AbortSignal:Rt?St.AbortController:class{constructor(){this.reason=void 0,this.aborted=!1,this._listeners=[]}dispatchEvent(In){In.type==="abort"&&(this.aborted=!0,this.onabort(In),this._listeners.forEach(Zt=>Zt(In),this))}onabort(){}addEventListener(In,Zt){In==="abort"&&this._listeners.push(Zt)}removeEventListener(In,Zt){In==="abort"&&(this._listeners=this._listeners.filter(xt=>xt!==Zt))}},ht=new Set,mt=(In,Zt)=>{const xt="LRU_CACHE_OPTION_"+In;Tt(xt)&&ft(xt,In+" option","options."+Zt,Ht)},gt=(In,Zt)=>{const xt="LRU_CACHE_METHOD_"+In;if(Tt(xt)){const{prototype:zt}=Ht,{get:Qn}=Object.getOwnPropertyDescriptor(zt,In);ft(xt,In+" method",`cache.${Zt}()`,Qn)}},Vt=(...In)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...In):console.error(...In)},Tt=In=>!ht.has(In),ft=(In,Zt,xt,zt)=>{ht.add(In),Vt(`The ${Zt} is deprecated. Please use ${xt} instead.`,"DeprecationWarning",In,zt)},Wt=In=>In&&In===Math.floor(In)&&In>0&&isFinite(In),yt=In=>Wt(In)?In<=Math.pow(2,8)?Uint8Array:In<=Math.pow(2,16)?Uint16Array:In<=Math.pow(2,32)?Uint32Array:In<=Number.MAX_SAFE_INTEGER?Kt:null:null;class Kt extends Array{constructor(Zt){super(Zt),this.fill(0)}}class $t{constructor(Zt){if(Zt===0)return[];const xt=yt(Zt);this.heap=new xt(Zt),this.length=0}push(Zt){this.heap[this.length++]=Zt}pop(){return this.heap[--this.length]}}class Ht{constructor(Zt={}){const{max:xt=0,ttl:zt,ttlResolution:Qn=1,ttlAutopurge:Tn,updateAgeOnGet:ct,updateAgeOnHas:Qt,allowStale:vt,dispose:Pt,disposeAfter:en,noDisposeOnSet:Bn,noUpdateTTL:jn,maxSize:$n=0,maxEntrySize:ur=0,sizeCalculation:Rr,fetchMethod:Sr,fetchContext:Yr,noDeleteOnFetchRejection:Mr,noDeleteOnStaleGet:hr,allowStaleOnFetchRejection:Br,allowStaleOnFetchAbort:xr,ignoreFetchAbort:Gr}=Zt,{length:lo,maxAge:qr,stale:_i}=Zt instanceof Ht?{}:Zt;if(xt!==0&&!Wt(xt))throw new TypeError("max option must be a nonnegative integer");const Uo=xt?yt(xt):Array;if(!Uo)throw new Error("invalid max value: "+xt);if(this.max=xt,this.maxSize=$n,this.maxEntrySize=ur||this.maxSize,this.sizeCalculation=Rr||lo,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=Sr||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(xt).fill(null),this.valList=new Array(xt).fill(null),this.next=new Uo(xt),this.prev=new Uo(xt),this.head=0,this.tail=0,this.free=new $t(xt),this.initialFill=1,this.size=0,typeof Pt=="function"&&(this.dispose=Pt),typeof en=="function"?(this.disposeAfter=en,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!Bn,this.noUpdateTTL=!!jn,this.noDeleteOnFetchRejection=!!Mr,this.allowStaleOnFetchRejection=!!Br,this.allowStaleOnFetchAbort=!!xr,this.ignoreFetchAbort=!!Gr,this.maxEntrySize!==0){if(this.maxSize!==0&&!Wt(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!Wt(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!vt||!!_i,this.noDeleteOnStaleGet=!!hr,this.updateAgeOnGet=!!ct,this.updateAgeOnHas=!!Qt,this.ttlResolution=Wt(Qn)||Qn===0?Qn:1,this.ttlAutopurge=!!Tn,this.ttl=zt||qr||0,this.ttl){if(!Wt(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 yo="LRU_CACHE_UNBOUNDED";Tt(yo)&&(ht.add(yo),Vt("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",yo,Ht))}_i&&mt("stale","allowStale"),qr&&mt("maxAge","ttl"),lo&&mt("length","sizeCalculation")}getRemainingTTL(Zt){return this.has(Zt,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new Kt(this.max),this.starts=new Kt(this.max),this.setItemTTL=(zt,Qn,Tn=dt.now())=>{if(this.starts[zt]=Qn!==0?Tn:0,this.ttls[zt]=Qn,Qn!==0&&this.ttlAutopurge){const ct=setTimeout(()=>{this.isStale(zt)&&this.delete(this.keyList[zt])},Qn+1);ct.unref&&ct.unref()}},this.updateItemAge=zt=>{this.starts[zt]=this.ttls[zt]!==0?dt.now():0},this.statusTTL=(zt,Qn)=>{zt&&(zt.ttl=this.ttls[Qn],zt.start=this.starts[Qn],zt.now=Zt||xt(),zt.remainingTTL=zt.now+zt.ttl-zt.start)};let Zt=0;const xt=()=>{const zt=dt.now();if(this.ttlResolution>0){Zt=zt;const Qn=setTimeout(()=>Zt=0,this.ttlResolution);Qn.unref&&Qn.unref()}return zt};this.getRemainingTTL=zt=>{const Qn=this.keyMap.get(zt);return Qn===void 0?0:this.ttls[Qn]===0||this.starts[Qn]===0?1/0:this.starts[Qn]+this.ttls[Qn]-(Zt||xt())},this.isStale=zt=>this.ttls[zt]!==0&&this.starts[zt]!==0&&(Zt||xt())-this.starts[zt]>this.ttls[zt]}updateItemAge(Zt){}statusTTL(Zt,xt){}setItemTTL(Zt,xt,zt){}isStale(Zt){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new Kt(this.max),this.removeItemSize=Zt=>{this.calculatedSize-=this.sizes[Zt],this.sizes[Zt]=0},this.requireSize=(Zt,xt,zt,Qn)=>{if(this.isBackgroundFetch(xt))return 0;if(!Wt(zt)){if(!Qn)throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");if(typeof Qn!="function")throw new TypeError("sizeCalculation must be a function");if(zt=Qn(xt,Zt),!Wt(zt))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}return zt},this.addItemSize=(Zt,xt,zt)=>{if(this.sizes[Zt]=xt,this.maxSize){const Qn=this.maxSize-this.sizes[Zt];for(;this.calculatedSize>Qn;)this.evict(!0)}this.calculatedSize+=this.sizes[Zt],zt&&(zt.entrySize=xt,zt.totalCalculatedSize=this.calculatedSize)}}removeItemSize(Zt){}addItemSize(Zt,xt){}requireSize(Zt,xt,zt,Qn){if(zt||Qn)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:Zt=this.allowStale}={}){if(this.size)for(let xt=this.tail;this.isValidIndex(xt)&&(!Zt&&this.isStale(xt)||(yield xt),xt!==this.head);)xt=this.prev[xt]}*rindexes({allowStale:Zt=this.allowStale}={}){if(this.size)for(let xt=this.head;this.isValidIndex(xt)&&(!Zt&&this.isStale(xt)||(yield xt),xt!==this.tail);)xt=this.next[xt]}isValidIndex(Zt){return Zt!==void 0&&this.keyMap.get(this.keyList[Zt])===Zt}*entries(){for(const Zt of this.indexes())this.valList[Zt]===void 0||this.keyList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield[this.keyList[Zt],this.valList[Zt]])}*rentries(){for(const Zt of this.rindexes())this.valList[Zt]===void 0||this.keyList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield[this.keyList[Zt],this.valList[Zt]])}*keys(){for(const Zt of this.indexes())this.keyList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield this.keyList[Zt])}*rkeys(){for(const Zt of this.rindexes())this.keyList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield this.keyList[Zt])}*values(){for(const Zt of this.indexes())this.valList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield this.valList[Zt])}*rvalues(){for(const Zt of this.rindexes())this.valList[Zt]===void 0||this.isBackgroundFetch(this.valList[Zt])||(yield this.valList[Zt])}[Symbol.iterator](){return this.entries()}find(Zt,xt){for(const zt of this.indexes()){const Qn=this.valList[zt],Tn=this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn;if(Tn!==void 0&&Zt(Tn,this.keyList[zt],this))return this.get(this.keyList[zt],xt)}}forEach(Zt,xt=this){for(const zt of this.indexes()){const Qn=this.valList[zt],Tn=this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn;Tn!==void 0&&Zt.call(xt,Tn,this.keyList[zt],this)}}rforEach(Zt,xt=this){for(const zt of this.rindexes()){const Qn=this.valList[zt],Tn=this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn;Tn!==void 0&&Zt.call(xt,Tn,this.keyList[zt],this)}}get prune(){return gt("prune","purgeStale"),this.purgeStale}purgeStale(){let Zt=!1;for(const xt of this.rindexes({allowStale:!0}))this.isStale(xt)&&(this.delete(this.keyList[xt]),Zt=!0);return Zt}dump(){const Zt=[];for(const xt of this.indexes({allowStale:!0})){const zt=this.keyList[xt],Qn=this.valList[xt],Tn=this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn;if(Tn===void 0)continue;const ct={value:Tn};if(this.ttls){ct.ttl=this.ttls[xt];const Qt=dt.now()-this.starts[xt];ct.start=Math.floor(Date.now()-Qt)}this.sizes&&(ct.size=this.sizes[xt]),Zt.unshift([zt,ct])}return Zt}load(Zt){this.clear();for(const[xt,zt]of Zt){if(zt.start){const Qn=Date.now()-zt.start;zt.start=dt.now()-Qn}this.set(xt,zt.value,zt)}}dispose(Zt,xt,zt){}set(Zt,xt,{ttl:zt=this.ttl,start:Qn,noDisposeOnSet:Tn=this.noDisposeOnSet,size:ct=0,sizeCalculation:Qt=this.sizeCalculation,noUpdateTTL:vt=this.noUpdateTTL,status:Pt}={}){if(ct=this.requireSize(Zt,xt,ct,Qt),this.maxEntrySize&&ct>this.maxEntrySize)return Pt&&(Pt.set="miss",Pt.maxEntrySizeExceeded=!0),this.delete(Zt),this;let en=this.size===0?void 0:this.keyMap.get(Zt);if(en===void 0)en=this.newIndex(),this.keyList[en]=Zt,this.valList[en]=xt,this.keyMap.set(Zt,en),this.next[this.tail]=en,this.prev[en]=this.tail,this.tail=en,this.size++,this.addItemSize(en,ct,Pt),Pt&&(Pt.set="add"),vt=!1;else{this.moveToTail(en);const Bn=this.valList[en];if(xt!==Bn){if(this.isBackgroundFetch(Bn)?Bn.__abortController.abort(new Error("replaced")):Tn||(this.dispose(Bn,Zt,"set"),this.disposeAfter&&this.disposed.push([Bn,Zt,"set"])),this.removeItemSize(en),this.valList[en]=xt,this.addItemSize(en,ct,Pt),Pt){Pt.set="replace";const jn=Bn&&this.isBackgroundFetch(Bn)?Bn.__staleWhileFetching:Bn;jn!==void 0&&(Pt.oldValue=jn)}}else Pt&&(Pt.set="update")}if(zt===0||this.ttl!==0||this.ttls||this.initializeTTLTracking(),vt||this.setItemTTL(en,zt,Qn),this.statusTTL(Pt,en),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 Zt=this.valList[this.head];return this.evict(!0),Zt}}evict(Zt){const xt=this.head,zt=this.keyList[xt],Qn=this.valList[xt];return this.isBackgroundFetch(Qn)?Qn.__abortController.abort(new Error("evicted")):(this.dispose(Qn,zt,"evict"),this.disposeAfter&&this.disposed.push([Qn,zt,"evict"])),this.removeItemSize(xt),Zt&&(this.keyList[xt]=null,this.valList[xt]=null,this.free.push(xt)),this.head=this.next[xt],this.keyMap.delete(zt),this.size--,xt}has(Zt,{updateAgeOnHas:xt=this.updateAgeOnHas,status:zt}={}){const Qn=this.keyMap.get(Zt);if(Qn!==void 0){if(!this.isStale(Qn))return xt&&this.updateItemAge(Qn),zt&&(zt.has="hit"),this.statusTTL(zt,Qn),!0;zt&&(zt.has="stale",this.statusTTL(zt,Qn))}else zt&&(zt.has="miss");return!1}peek(Zt,{allowStale:xt=this.allowStale}={}){const zt=this.keyMap.get(Zt);if(zt!==void 0&&(xt||!this.isStale(zt))){const Qn=this.valList[zt];return this.isBackgroundFetch(Qn)?Qn.__staleWhileFetching:Qn}}backgroundFetch(Zt,xt,zt,Qn){const Tn=xt===void 0?void 0:this.valList[xt];if(this.isBackgroundFetch(Tn))return Tn;const ct=new St;zt.signal&&zt.signal.addEventListener("abort",()=>ct.abort(zt.signal.reason));const Qt={signal:ct.signal,options:zt,context:Qn},vt=(Bn,jn=!1)=>{const{aborted:$n}=ct.signal,ur=zt.ignoreFetchAbort&&Bn!==void 0;return zt.status&&($n&&!jn?(zt.status.fetchAborted=!0,zt.status.fetchError=ct.signal.reason,ur&&(zt.status.fetchAbortIgnored=!0)):zt.status.fetchResolved=!0),!$n||ur||jn?(this.valList[xt]===en&&(Bn===void 0?en.__staleWhileFetching?this.valList[xt]=en.__staleWhileFetching:this.delete(Zt):(zt.status&&(zt.status.fetchUpdated=!0),this.set(Zt,Bn,Qt.options))),Bn):Pt(ct.signal.reason)},Pt=Bn=>{const{aborted:jn}=ct.signal,$n=jn&&zt.allowStaleOnFetchAbort,ur=$n||zt.allowStaleOnFetchRejection,Rr=ur||zt.noDeleteOnFetchRejection;if(this.valList[xt]===en&&(!Rr||en.__staleWhileFetching===void 0?this.delete(Zt):$n||(this.valList[xt]=en.__staleWhileFetching)),ur)return zt.status&&en.__staleWhileFetching!==void 0&&(zt.status.returnedStale=!0),en.__staleWhileFetching;if(en.__returned===en)throw Bn};zt.status&&(zt.status.fetchDispatched=!0);const en=new Promise((Bn,jn)=>{this.fetchMethod(Zt,Tn,Qt).then($n=>Bn($n),jn),ct.signal.addEventListener("abort",()=>{zt.ignoreFetchAbort&&!zt.allowStaleOnFetchAbort||(Bn(),zt.allowStaleOnFetchAbort&&(Bn=$n=>vt($n,!0)))})}).then(vt,Bn=>(zt.status&&(zt.status.fetchRejected=!0,zt.status.fetchError=Bn),Pt(Bn)));return en.__abortController=ct,en.__staleWhileFetching=Tn,en.__returned=null,xt===void 0?(this.set(Zt,en,{...Qt.options,status:void 0}),xt=this.keyMap.get(Zt)):this.valList[xt]=en,en}isBackgroundFetch(Zt){return Zt&&typeof Zt=="object"&&typeof Zt.then=="function"&&Object.prototype.hasOwnProperty.call(Zt,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(Zt,"__returned")&&(Zt.__returned===Zt||Zt.__returned===null)}async fetch(Zt,{allowStale:xt=this.allowStale,updateAgeOnGet:zt=this.updateAgeOnGet,noDeleteOnStaleGet:Qn=this.noDeleteOnStaleGet,ttl:Tn=this.ttl,noDisposeOnSet:ct=this.noDisposeOnSet,size:Qt=0,sizeCalculation:vt=this.sizeCalculation,noUpdateTTL:Pt=this.noUpdateTTL,noDeleteOnFetchRejection:en=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:Bn=this.allowStaleOnFetchRejection,ignoreFetchAbort:jn=this.ignoreFetchAbort,allowStaleOnFetchAbort:$n=this.allowStaleOnFetchAbort,fetchContext:ur=this.fetchContext,forceRefresh:Rr=!1,status:Sr,signal:Yr}={}){if(!this.fetchMethod)return Sr&&(Sr.fetch="get"),this.get(Zt,{allowStale:xt,updateAgeOnGet:zt,noDeleteOnStaleGet:Qn,status:Sr});const Mr={allowStale:xt,updateAgeOnGet:zt,noDeleteOnStaleGet:Qn,ttl:Tn,noDisposeOnSet:ct,size:Qt,sizeCalculation:vt,noUpdateTTL:Pt,noDeleteOnFetchRejection:en,allowStaleOnFetchRejection:Bn,allowStaleOnFetchAbort:$n,ignoreFetchAbort:jn,status:Sr,signal:Yr};let hr=this.keyMap.get(Zt);if(hr===void 0){Sr&&(Sr.fetch="miss");const Br=this.backgroundFetch(Zt,hr,Mr,ur);return Br.__returned=Br}{const Br=this.valList[hr];if(this.isBackgroundFetch(Br)){const _i=xt&&Br.__staleWhileFetching!==void 0;return Sr&&(Sr.fetch="inflight",_i&&(Sr.returnedStale=!0)),_i?Br.__staleWhileFetching:Br.__returned=Br}const xr=this.isStale(hr);if(!Rr&&!xr)return Sr&&(Sr.fetch="hit"),this.moveToTail(hr),zt&&this.updateItemAge(hr),this.statusTTL(Sr,hr),Br;const Gr=this.backgroundFetch(Zt,hr,Mr,ur),lo=Gr.__staleWhileFetching!==void 0,qr=lo&&xt;return Sr&&(Sr.fetch=lo&&xr?"stale":"refresh",qr&&xr&&(Sr.returnedStale=!0)),qr?Gr.__staleWhileFetching:Gr.__returned=Gr}}get(Zt,{allowStale:xt=this.allowStale,updateAgeOnGet:zt=this.updateAgeOnGet,noDeleteOnStaleGet:Qn=this.noDeleteOnStaleGet,status:Tn}={}){const ct=this.keyMap.get(Zt);if(ct!==void 0){const Qt=this.valList[ct],vt=this.isBackgroundFetch(Qt);return this.statusTTL(Tn,ct),this.isStale(ct)?(Tn&&(Tn.get="stale"),vt?(Tn&&(Tn.returnedStale=xt&&Qt.__staleWhileFetching!==void 0),xt?Qt.__staleWhileFetching:void 0):(Qn||this.delete(Zt),Tn&&(Tn.returnedStale=xt),xt?Qt:void 0)):(Tn&&(Tn.get="hit"),vt?Qt.__staleWhileFetching:(this.moveToTail(ct),zt&&this.updateItemAge(ct),Qt))}Tn&&(Tn.get="miss")}connect(Zt,xt){this.prev[xt]=Zt,this.next[Zt]=xt}moveToTail(Zt){Zt!==this.tail&&(Zt===this.head?this.head=this.next[Zt]:this.connect(this.prev[Zt],this.next[Zt]),this.connect(this.tail,Zt),this.tail=Zt)}get del(){return gt("del","delete"),this.delete}delete(Zt){let xt=!1;if(this.size!==0){const zt=this.keyMap.get(Zt);if(zt!==void 0)if(xt=!0,this.size===1)this.clear();else{this.removeItemSize(zt);const Qn=this.valList[zt];this.isBackgroundFetch(Qn)?Qn.__abortController.abort(new Error("deleted")):(this.dispose(Qn,Zt,"delete"),this.disposeAfter&&this.disposed.push([Qn,Zt,"delete"])),this.keyMap.delete(Zt),this.keyList[zt]=null,this.valList[zt]=null,zt===this.tail?this.tail=this.prev[zt]:zt===this.head?this.head=this.next[zt]:(this.next[this.prev[zt]]=this.next[zt],this.prev[this.next[zt]]=this.prev[zt]),this.size--,this.free.push(zt)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return xt}clear(){for(const Zt of this.rindexes({allowStale:!0})){const xt=this.valList[Zt];if(this.isBackgroundFetch(xt))xt.__abortController.abort(new Error("deleted"));else{const zt=this.keyList[Zt];this.dispose(xt,zt,"delete"),this.disposeAfter&&this.disposed.push([xt,zt,"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 gt("reset","clear"),this.clear}get length(){return((Zt,xt)=>{const zt="LRU_CACHE_PROPERTY_"+Zt;if(Tt(zt)){const{prototype:Qn}=Ht,{get:Tn}=Object.getOwnPropertyDescriptor(Qn,Zt);ft(zt,Zt+" property","cache."+xt,Tn)}})("length","size"),this.size}static get AbortController(){return St}static get AbortSignal(){return Bt}}const Nt=Ht;var qt=$(2273),kt=$(6452),bt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Jt extends class{constructor(Zt,xt){this.type=Zt,this.name=xt}}{constructor(Zt){super("simple","LogReporter"),this.message=Zt}send(Zt){return bt(this,void 0,void 0,function*(){var xt,zt;kt.vF.debug(this.message,(xt=Zt.reduce((Qn,Tn)=>Object.assign(Object.assign({},Qn),{[Tn.name]:Tn.stat}),{}),zt=Qn=>{const{sum:Tn,count:ct}=Qn,Qt=Tn/ct;return Object.assign(Object.assign({},Qn),{average:Qt})},Object.keys(xt).reduce((Qn,Tn)=>Object.assign(Object.assign({},Qn),{[Tn]:zt(xt[Tn])}),{})))})}}const wt=/^[a-zA-Z0-9-_.,:?'"()@\/\\#$+ ]{1,255}$/,At=/^[*a-zA-Z0-9-_.,:?'"()@\/\\#$+ ]{1,255}$/;function Ct(In,Zt=!1){return!!(In!=null&&In.match(Zt?At:wt))}var Mt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};function nn({func:In,delay:Zt,immediate:xt=!0}){let zt=!1,Qn=setTimeout(function ct(){return Mt(this,void 0,void 0,function*(){if(zt)return;const Qt=new Date().getTime();try{Tn=In(),yield Tn}finally{if(!zt){const vt=new Date().getTime();Qn=setTimeout(ct,Math.max(Zt-(vt-Qt),0))}}})},xt?0:Zt),Tn=Promise.resolve();return{stop(){return Mt(this,void 0,void 0,function*(){zt=!0,clearTimeout(Qn),yield Tn})}}}var sn=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};const Lt=$(8758);class tn{constructor(Zt){this.buffer={},this.reporters=[],this.flushInterval=nn({func:()=>this.flushStats(),delay:tn.samplePeriodMs}),this.tags=this.filterTags((Zt==null?void 0:Zt.tags)||{app:qt.yA,version:qt.rE,namespace:qt.MF})}shutdown(){return sn(this,void 0,void 0,function*(){yield this.flushInterval.stop(),yield this.flushStats(),yield(0,Ut.c)(2*ut.p.second)})}aggregate(Zt,xt,zt){this.addToBuffer(this.buffer,this.encodeKey({metric:Zt,tags:this.filterTags(zt||{})}),typeof xt=="number"?{min:xt,max:xt,sum:xt,count:1}:xt)}increment(Zt,xt){this.aggregate(Zt,1,xt)}timer(Zt,xt,zt){return sn(this,void 0,void 0,function*(){const Qn=Lt(),Tn=yield xt(),ct=Lt();return this.aggregate(Zt,ct-Qn,zt),Tn})}registerStatsReporter(Zt){this.reporters.push(Zt)}setTag(Zt,xt){const zt=this.filterTags({[Zt]:xt});this.tags=Object.assign(Object.assign({},this.tags),zt)}addToBuffer(Zt,xt,zt){if(Zt[xt]){const{min:Qn,max:Tn,sum:ct,count:Qt}=Zt[xt];Zt[xt]={min:Math.min(Qn,zt.min),max:Math.max(Tn,zt.max),sum:ct+zt.sum,count:Qt+zt.count}}else Zt[xt]=zt}write(Zt){return sn(this,void 0,void 0,function*(){yield Promise.all(this.reporters.map(xt=>sn(this,void 0,void 0,function*(){let zt;const Qn={};switch(xt.type){case"simple":for(const[ct,Qt]of Object.entries(Zt)){const{metric:vt}=this.decodeKey(ct);this.addToBuffer(Qn,this.encodeKey({metric:vt}),Qt)}zt=Qn;break;case"tagged":zt=Zt;break;default:(function(ct){throw new Error(`Unreachable type encountered (${ct})`)})(xt.type)}const Tn=Object.entries(zt);if(Tn.length>0)return xt.send(Tn.map(([ct,Qt])=>{const{metric:vt,tags:Pt}=this.decodeKey(ct);return{name:vt,tags:Object.assign(Object.assign({},Pt),this.tags),stat:Qt}}),tn.samplePeriodMs).catch(ct=>{kt.vF.debug("Failed to write stats to "+xt.name,{error:ct})})})))})}flushStats(){return sn(this,void 0,void 0,function*(){yield this.write(this.buffer),this.buffer={}})}encodeKey(Zt){return st()(Object.assign(Object.assign({},Zt),Object.keys(Zt.tags||{}).length>0?{tags:Zt.tags}:{}))}decodeKey(Zt){return JSON.parse(Zt)}filterTags(Zt){return Object.entries(Zt||{}).reduce((xt,[zt,Qn])=>(Ct(zt)&&Ct(Qn)&&(xt[zt]=Qn),xt),{})}}tn.samplePeriodMs=5*ut.p.minute;const cn=!!qt.op,on=new tn;cn||["local","on-prem"].includes(qt.MF)||on.registerStatsReporter(new Jt("stats"));var Gt=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Xt extends class{constructor(Zt){this.options=Zt,this.cache=new Nt(Object.assign(Object.assign(Object.assign({},Zt.dispose||Zt.disposeAfter?{ttlAutopurge:!0}:{}),Zt),{dispose:(...xt)=>{var zt;xt[2]==="evict"&&on.increment("lru-eviction",{name:Zt.name}),(zt=Zt.dispose)===null||zt===void 0||zt.call(Zt,...xt)},disposeAfter:(...xt)=>{var zt;this.updateStats(),(zt=Zt.disposeAfter)===null||zt===void 0||zt.call(Zt,...xt)}})),this.stringify=Zt.fastStringify?JSON.stringify:st()}set(Zt,xt,zt){const Qn=this.stringify(Zt);if(!this.cache.set(Qn,xt,{ttl:zt})){const Tn=this.cache.sizeCalculation?this.cache.sizeCalculation(xt,Qn):"unknown";throw Error(`Value too large (${Tn} > ${this.cache.max})`)}this.updateStats()}get(Zt){const{name:xt}=this.options,zt=this.stringify(Zt),Qn=this.cache.getRemainingTTL(zt);return Qn<=0?on.increment("cache-miss",{name:xt}):Qn!==1/0&&on.aggregate("cache-item-ttl",Qn,{name:xt}),this.cache.get(zt)}delete(Zt){this.cache.delete(this.stringify(Zt))}peek(Zt){return this.cache.peek(this.stringify(Zt))}size(){return this.cache.size}clear(){this.cache.clear()}forEach(Zt){this.cache.forEach(Zt)}purgeStale(){return this.cache.purgeStale()}updateStats(){const{name:Zt}=this.options;on.aggregate("cache-item-count",this.cache.size,{name:Zt}),this.cache.calculatedSize!==void 0&&on.aggregate("cache-length",this.cache.calculatedSize,{name:Zt})}}{constructor(Zt){if(super(Zt),this.expireRejectedPromiseValues=Zt.expireRejectedPromiseValues===void 0||Zt.expireRejectedPromiseValues,this.rejectedPromiseValueTtl=Zt.rejectedPromiseValueTtl!==void 0?Zt.rejectedPromiseValueTtl:ut.p.second,this.rejectedPromiseValueTtl<0)throw new Error("rejectedPromiseValueTtl must not be negative")}set(Zt,xt,zt){super.set(Zt,xt,zt),this.expireRejectedPromiseValues&&xt.catch(()=>Gt(this,void 0,void 0,function*(){yield(0,Ut.c)(this.rejectedPromiseValueTtl),this.peek(Zt)===xt&&this.delete(Zt)}))}}var dn=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Vn{constructor(Zt,xt,zt){this.authClient=Zt,this.email=xt,this.password=zt,this.tokenTtlMs=1*ut.p.hour,this.tokenCache=new Xt({name:"Credentials-tokenCache",max:100,ttl:this.tokenTtlMs-5*ut.p.minute,fastStringify:!0})}getToken(){return dn(this,void 0,void 0,function*(){let Zt=this.tokenCache.get(this.email);return Zt||(Zt=(()=>dn(this,void 0,void 0,function*(){const{authentication:xt}=yield this.authClient.login({email:this.email,password:this.password,tokenExpirationSeconds:this.tokenTtlMs/ut.p.second});if(!xt)throw new Error("User account not verified.");return xt.accessToken}))(),this.tokenCache.set(this.email,Zt)),Zt})}}var Fn=$(3804),fn=$(5949),Un=$(2964),Jn=$(7396),_n=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Zn extends Jn.V{constructor(Zt){super(Zt)}postLanRtcOffer(Zt){return _n(this,void 0,void 0,function*(){return yield this.fetch("v1/lan-rtc-offer",{method:"POST",body:Zt})})}}var On=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};function Yn(In){return On(this,void 0,void 0,function*(){return(yield Promise.all(In.map(Zt=>Zt.catch(xt=>xt)))).filter(Zt=>Zt instanceof Error)})}function _t(In,Zt){if(In===void 0)throw new Error("Value is undefined"+(Zt?": "+Zt:""))}function Ot(In,Zt){if(In===null)throw new Error("Value is null"+(Zt?": "+Zt:""))}function jt(In){return _t(In),In}function pn(In,Zt){const xt=In.reduce((zt,Qn)=>[...zt,...Qn.urls],[]).filter(zt=>En(zt,Zt)).sort(zt=>yn(zt,"udp")?-1:0).shift();if(xt)return Object.assign(Object.assign({},jt(In.find(zt=>zt.urls.includes(xt)))),{urls:[xt]})}function En(In,Zt){switch(Zt){case"stun":return/^stuns?:/.test(In);case"turn":return/^turns?:/.test(In)}}function yn(In,Zt){return In.endsWith("transport="+Zt)}var Cn=$(3563),Gn=$(4620);class Wn extends Error{constructor(Zt,xt){super(`Deadline expired after ${Zt}ms + ${xt}ms`)}}class ir{static withDeadline(Zt,xt){const zt=new Promise((Qn,Tn)=>{setTimeout(()=>{Tn(new Wn(xt,this.grpcCallDeadlineSlopMs))},xt+this.grpcCallDeadlineSlopMs)});return Promise.race([Zt,zt])}}ir.grpcCallDeadlineSlopMs=500*ut.p.millisecond;var lr=$(8311);const Rn={ordered:!1,maxPacketLifeTime:300*ut.p.millisecond},_r={ordered:!0},zr={ordered:!0},Er={ordered:!1,maxRetransmits:0},ho={ordered:!1,maxRetransmits:0},Ro=In=>"received"in In&&In.received!==void 0,rr=In=>!("received"in In)||In.received===void 0,wo=2*ut.p.second,oo=10*ut.p.second;function No(In,Zt={}){const xt=Array.from(In.values()),zt=xt.filter(Ro),Qn=zt.length>0,Tn=Math.max(...xt.map(en=>en.sent)),ct=Math.max(...zt.map(en=>en.received));let Qt;if(Qn){const en=Date.now()-Tn<=ut.p.millisecond?xt.length-1:xt.length,Bn=zt.length>en?en:zt.length,jn=zt.map(hr=>hr.received-hr.sent),{standardDeviation:$n,mean:ur,jitter:Rr}=function(hr){const Br=hr.length;if(Br===0)return{mean:NaN,standardDeviation:-1,jitter:NaN};const xr=hr.reduce((qr,_i)=>qr+_i,0)/Br,Gr=Math.sqrt(hr.map(qr=>Math.pow(qr-xr,2)).reduce((qr,_i)=>qr+_i)/Br);if(Br===1)return{mean:xr,standardDeviation:Gr,jitter:NaN};let lo=0;for(let qr=1;qrhr.sent{const[Bn,jn]=en;jn.sent{var Tn,ct;return{streamId:Qn,sentCount:(Tn=xt.get(Qn))!==null&&Tn!==void 0?Tn:0,receivedCount:(ct=zt.get(Qn))!==null&&ct!==void 0?ct:0}}),timestamp:Zt}}incrementLocalSent(Zt){const{localSent:xt}=this.counts,zt=ro(Zt.header.stream);xt.set(zt,(xt.get(zt)||0)+1)}incrementLocalReceived(Zt){const{localReceived:xt}=this.counts,zt=ro(Zt.header.stream),Qn=xt.get(zt)||0;if(Qn===0){const{streamName:Tn,streamType:ct}=Zt.header.stream;kt.vF.debug("RTC client received first message for stream",{streamName:Tn,streamType:ct})}xt.set(zt,Qn+1)}uploadMetrics(){return ao(this,void 0,void 0,function*(){const{sessionId:Zt}=this,xt=yield this.connection.peerConnection.getStats(),zt={};xt.forEach(Pt=>zt[Pt.id]=Pt),kt.vF.debug("rtc-stats",Object.assign(Object.assign({},zt),{sessionId:Zt}));const{localSent:Qn,localReceived:Tn,remoteSent:ct,remoteReceived:Qt}=this.counts,vt=[...new Set([...Qn.keys(),...Tn.keys()])].reduce((Pt,en)=>{const Bn=Qn.get(en),jn=Tn.get(en),$n=ct.get(en),ur=Qt.get(en);return Object.assign(Object.assign({},Pt),{[`local-${en}-sent`]:Bn,[`local-${en}-received`]:jn,[`remote-${en}-sent`]:$n,[`remote-${en}-received`]:ur})},{sessionId:Zt});kt.vF.debug("rtc-message-report",Object.assign({deviceId:this.connection.getRemoteDeviceId()},vt))})}}function _o(In,Zt,xt){return{header:{stream:In,created:Date.now(),frameId:xt||""},payload:Zt}}function Ao(In){const Zt=In.localCandidate.candidateType,xt=In.remoteCandidate.candidateType;return Zt==="host"&&xt==="host"?"local":Zt==="relay"||xt==="relay"?"TURN":"STUN"}function So(In){return new Set(["disconnected","failed","closed"]).has(In.iceConnectionState)}function bo(In){switch(In.header.stream.streamType){case"twist":{const{twist:Zt}=In.payload;if(!Zt)throw Error("twist not in payload of RTC message with type twist");return{header:In.header,payload:{twist:{linear:Object.assign({x:0,y:0,z:0},Zt.linear),angular:Object.assign({x:0,y:0,z:0},Zt.angular)}}}}case"pose":{const{pose:Zt}=In.payload;if(!Zt)throw Error("pose not in payload of RTC message with type pose");return{header:In.header,payload:{pose:{translation:Object.assign({x:0,y:0,z:0},Zt.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},Zt.rotation)}}}}case"pose-with-covariance":{const{poseWithCovariance:Zt}=In.payload;if(!Zt)throw Error("poseWithCovariance not in payload of RTC message with type pose-with-covariance");const xt=new Array(36).fill(0);return Zt.covariance.forEach((zt,Qn)=>{if(Qn>=36)throw Error("covariance contains more than 36 elements");xt[Qn]=zt}),{header:In.header,payload:{poseWithCovariance:{pose:{translation:Object.assign({x:0,y:0,z:0},Zt.pose.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},Zt.pose.rotation)},covariance:xt}}}}case"point":{const{point:Zt}=In.payload;if(!Zt)throw Error("point not in payload of RTC message with type point");return{header:In.header,payload:{point:Object.assign({x:0,y:0,z:0},Zt)}}}default:return In}}var po=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class tr{get peerConnection(){return Ot(this._peerConnection,"RTCPeerConnection is closed!"),this._peerConnection}constructor(Zt,xt,zt,Qn){this.iceServers=xt,this.config=zt,this.dataChannelNotifier=Qn,this.connectTimeoutMs=20*ut.p.second,this.iceGatheringTimeoutMs=3*ut.p.second,this.pingUpdateTimeoutMs=1*ut.p.second,this.pingV2UpdateTimeoutMs=250*ut.p.millisecond,this.pingV2MetricsGatherTimeoutMs=1*ut.p.second,this.streamsInfoUpdateTimeoutMs=2*ut.p.second,this.reassemblyTimeoutMs=500*ut.p.millisecond,this.reassemblyTableCleanupMs=1*ut.p.second,this.heartbeatTimeoutMs=20*ut.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.closeCalled=!1,this.gotOffer=!1,this.hasIceCandidate=!1,this.pingV2Map=new Map,this.sendPingV2=()=>{const{latestTryOnceStreamChannel:ct}=this;if(!ct)return;const Qt=new Date().getTime(),vt=(0,Un.A)();this.sendSystemMessage(ct,{type:"ping-v2",payload:{timestamp:Qt,id:vt}}),this.pingV2Map.set(vt,{sent:Qt})},this.gatherPingV2Metrics=()=>{const ct=No(this.pingV2Map);if(ct){const Qt=this.getRemoteDeviceId();this.pingInfo=ct,on.aggregate("rtc-ping-average",ct.average,Object.assign({},Qt?{deviceId:Qt}:{})),on.aggregate("rtc-ping-loss",ct.loss,Object.assign({},Qt?{deviceId:Qt}:{})),on.aggregate("rtc-jitter",ct.jitter,Object.assign({},Qt?{deviceId:Qt}:{}))}},this._peerConnection=Zt;const{isOffer:Tn}=zt.baseConfig;Tn?this.initializeChannels(Zt):Zt.ondatachannel=ct=>{switch(ct.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=ct.channel;break;case"stream.reliable":this.reliableStreamChannel=ct.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=ct.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=ct.channel;break;case"heartbeat":return void(this.heartbeatChannel=ct.channel);default:return void this.dataChannelNotifier(ct.channel)}this.setupChannel(ct.channel)},this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:ct}=this;ct&&this.sendSystemMessage(ct,{type:"ping"})},this.pingUpdateTimeoutMs),this.pingV2UpdateTimeout=setInterval(this.sendPingV2,this.pingV2UpdateTimeoutMs),this.pingV2MetricsGatherTimeout=setInterval(this.gatherPingV2Metrics,this.pingV2MetricsGatherTimeoutMs),this.streamsInfoUpdateTimeout=setInterval(()=>{const{latestTtlStreamChannel:ct}=this;ct&&this.sendSystemMessage(ct,{type:"streams-info"})},this.streamsInfoUpdateTimeoutMs),this.reassemblyTableCleanupTimeout=setInterval(()=>{const ct=new Date().getTime();this.reassemblyTableLastTimestamp.forEach((Qt,vt,Pt)=>{ct>vt+this.reassemblyTimeoutMs&&this.reassemblyTable.delete(Qt)})},this.reassemblyTableCleanupMs),this.heartbeatTimeout=setInterval(()=>{const{heartbeatChannel:ct}=this;ct&&ct.readyState==="open"&&ct.send(new Uint8Array([1]))},this.heartbeatTimeoutMs)}handleSignal(Zt){return po(this,void 0,void 0,function*(){const{peerConnection:xt}=this,{track:zt}=this.config.baseConfig,Qn=(()=>{try{return JSON.parse(Zt.getPayload())}catch{return}})();if(!Qn)return void kt.vF.error("Received unparseable signal.");kt.vF.debug("Handling signal",{description:Qn});const{sdp:Tn,type:ct}=Qn;if(!Tn||!ct)return void kt.vF.warn("Received non-SDP signal");const{signalingState:Qt,connectionState:vt}=xt;if(Qt!=="stable"||vt!=="connected")if(xt.remoteDescription)kt.vF.warn("Received SDP after remote description was set: "+Tn);else{if(ct==="offer"){if(Qt!=="stable")return void kt.vF.warn("Received offer SDP when signaling is ongoing.");yield xt.setRemoteDescription(Qn);const Pt=yield xt.createAnswer();yield xt.setLocalDescription(Pt);const en=Zt.clone();return zt==null||zt("Answer Received",en),en.setPayload(JSON.stringify(Pt)),en.setReceiverId(Zt.getSenderId()),en.setSenderId(Zt.getReceiverId()),en}if(ct==="answer"){if(Qt==="stable")return void kt.vF.warn("Received answer SDP when signaling hasn't started.");yield xt.setRemoteDescription(Qn)}}else kt.vF.warn("Received SDP when already connected: "+Tn)})}send(Zt,xt){const zt=this.getChannelFromLabel(xt.channelLabel);zt?this.sendOnChannel(zt,Zt):kt.vF.warn("Send called with unexpected channel label",{channelLabel:xt.channelLabel})}controlRemoteStream(Zt){var xt;this.sendSystemMessage((Ot(xt=this.reliableStreamChannel),xt),{type:"stream-control",streamControl:Zt})}isActive(){return new Set(["new","checking","connected","completed"]).has(this.peerConnection.iceConnectionState)||this.isReady()}isReady(){const{reliableStreamChannel:Zt,latestTtlStreamChannel:xt,latestTryOnceStreamChannel:zt,latestReliableStreamChannel:Qn}=this;return(Zt==null?void 0:Zt.readyState)==="open"&&(xt==null?void 0:xt.readyState)==="open"&&(zt==null?void 0:zt.readyState)==="open"&&(Qn==null?void 0:Qn.readyState)==="open"}close(){return po(this,void 0,void 0,function*(){var Zt,xt,zt,Qn,Tn,ct,Qt;this.closeCalled||(this.closeCalled=!0,yield(Zt=this.sessionMetrics)===null||Zt===void 0?void 0:Zt.uploadMetrics(),vr(this.pingUpdateTimeout),vr(this.pingV2UpdateTimeout),vr(this.pingV2MetricsGatherTimeout),vr(this.reassemblyTableCleanupTimeout),vr(this.streamsInfoUpdateTimeout),vr(this.heartbeatTimeout),(xt=this._peerConnection)===null||xt===void 0||xt.close(),(zt=this.heartbeatChannel)===null||zt===void 0||zt.close(),(Qn=this.latestReliableStreamChannel)===null||Qn===void 0||Qn.close(),(Tn=this.latestTryOnceStreamChannel)===null||Tn===void 0||Tn.close(),(ct=this.latestTtlStreamChannel)===null||ct===void 0||ct.close(),(Qt=this.reliableStreamChannel)===null||Qt===void 0||Qt.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 Zt;return(Zt=this.config.remoteConfig)===null||Zt===void 0?void 0:Zt.sessionCreatedTimestamp}setSessionCreatedTimestamp(Zt){this.config.remoteConfig&&(this.config.remoteConfig.sessionCreatedTimestamp=Zt)}getSessionId(){var Zt;return(Zt=this.config.remoteConfig)===null||Zt===void 0?void 0:Zt.sessionId}setSessionId(Zt){this.config.remoteConfig&&(this.config.remoteConfig.sessionId=Zt,this.sessionMetrics=new Wo(Zt,this))}getRemotePeerId(){return this.config.baseConfig.remotePeerId}getRemoteDeviceId(){var Zt;return(Zt=this.config.baseConfig)===null||Zt===void 0?void 0:Zt.remoteDeviceId}setRemoteDeviceId(Zt){this.config.baseConfig.remoteDeviceId=Zt}getSessionMetricsMessageCounts(){var Zt;return(Zt=this.sessionMetrics)===null||Zt===void 0?void 0:Zt.counts}getConnectionStatsInfo(){return po(this,void 0,void 0,function*(){const{peerConnection:Zt}=this;if(!Zt)return;const xt=yield Zt.getStats(null),zt=[];xt.forEach(vt=>{zt.push(vt)});const Qn=zt.find(vt=>vt.type==="transport");if(!Qn)return;const Tn=zt.find(vt=>(vt.type==="candidate-pair"||vt.type==="candidatepair")&&vt.id===Qn.selectedCandidatePairId);if(!Tn)return;const ct=zt.find(vt=>vt.id===Tn.localCandidateId),Qt=zt.find(vt=>vt.id===Tn.remoteCandidateId);return ct&&Qt&&(ct.address=ct.address||ct.ip,Qt.address=Qt.address||Qt.ip,ct.address!==void 0&&Qt.address!==void 0)?{transport:Qn,localCandidate:ct,remoteCandidate:Qt,candidatePair:Tn}:void 0})}initializeChannels(Zt){this.heartbeatChannel=Zt.createDataChannel("heartbeat",ho),this.heartbeatChannel.binaryType="arraybuffer",this.latestTtlStreamChannel=Zt.createDataChannel("stream.latest-ttl",Rn),this.latestTtlStreamChannel.binaryType="arraybuffer",this.reliableStreamChannel=Zt.createDataChannel("stream.reliable",_r),this.reliableStreamChannel.binaryType="arraybuffer",this.latestReliableStreamChannel=Zt.createDataChannel("stream.latest-reliable",zr),this.latestReliableStreamChannel.binaryType="arraybuffer",this.latestTryOnceStreamChannel=Zt.createDataChannel("stream.latest-try-once",Er),this.latestTryOnceStreamChannel.binaryType="arraybuffer",this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}getOffer(){return po(this,void 0,void 0,function*(){var Zt,xt;const{gotOffer:zt}=this,{peerConnection:Qn,config:Tn}=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 ct=(Zt=this.config.remoteConfig)===null||Zt===void 0?void 0:Zt.sessionId;if(zt)return void kt.vF.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,So(this.peerConnection))return void kt.vF.debug("Failed to generate offer because the peer connection was inactive.");const Qt=Tn.baseConfig.track;Qn.onicecandidate=()=>{this.hasIceCandidate=!0},Qn.oniceconnectionstatechange=()=>po(this,void 0,void 0,function*(){const $n=Qn.iceConnectionState;if($n==="connected"||$n==="completed"){const ur=yield this.getConnectionStatsInfo(),Rr=ur?Ao(ur):void 0;kt.vF.info("ICE connection state changed to "+$n,{sessionId:ct,connectionStatsInfo:ur,iceMode:Rr}),Qt==null||Qt("ICE connection state change",{iceConnectionState:$n,sessionId:ct,connectionStatsInfo:ur,iceMode:Rr})}}),yield Qn.setLocalDescription(yield Qn.createOffer());const vt=Qn.getConfiguration?Qn.getConfiguration().iceTransportPolicy:"all",Pt=new Date().getTime();for(;;){const $n=new Date().getTime()-Pt;if($n>this.connectTimeoutMs)return void kt.vF.debug("Failed to generate offer because ICE gathering timed out.");if($n>this.iceGatheringTimeoutMs&&this.hasIceCandidate){kt.vF.debug("ICE gathering partially completed; proceeding",{iceTransportPolicy:vt,waitTime:$n}),Qt==null||Qt("ICE gathering partially completed",{sessionId:ct,iceTransportPolicy:vt,waitTime:$n});break}if(Qn.iceGatheringState==="complete"){kt.vF.debug("ICE gathering complete",{iceTransportPolicy:vt,waitTime:$n}),Qt==null||Qt("ICE gathering completed",{sessionId:ct,iceTransportPolicy:vt,waitTime:$n});break}yield(0,Ut.c)(.1*ut.p.second)}const en=(xt=this.iceServers)!==null&&xt!==void 0?xt:[];for(const $n of en)"credentialType"in $n&&($n.credentialType=void 0);const Bn=JSON.stringify(en),jn=new Gn.Signal;return jn.setPayload(JSON.stringify(Qn.localDescription)),jn.setSenderId(this.config.baseConfig.localPeerId),jn.setReceiverId(this.config.baseConfig.remotePeerId),jn.setIceServers(Bn),jn.setIceTransportPolicy(vt??"all"),this.config.baseConfig.sessionType!==void 0?jn.setSessionType(this.config.baseConfig.sessionType):jn.setSessionType(Gn.SessionType.TELEOP),kt.vF.debug("Sending offer signal with description",{description:jn.getPayload()}),jn})}getLanOffer(){return po(this,void 0,void 0,function*(){const{peerConnection:Zt,gotOffer:xt}=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(xt)return void kt.vF.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,So(this.peerConnection))return void kt.vF.debug("Failed to generate offer because the peer connection was inactive.");yield Zt.setLocalDescription(yield Zt.createOffer());const zt=new Date().getTime();for(;;){if(new Date().getTime()-zt>this.iceGatheringTimeoutMs)return void kt.vF.debug("Failed to generate offer because ICE gathering timed out.");if(Zt.iceGatheringState==="complete")break;yield(0,Ut.c)(.1*ut.p.second)}const Qn=Zt.localDescription;if(Qn)return kt.vF.debug("Sending LAN offer signal with description",{description:Qn}),Qn;kt.vF.error("Failed to generate LAN offer description")})}handleLanAnswer(Zt){return po(this,void 0,void 0,function*(){const{peerConnection:xt}=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 xt.setRemoteDescription(Zt)})}getChannelFromLabel(Zt){switch(Zt){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(Zt,xt){var zt;let Qn;try{Qn=(0,lr.encode)(JSON.stringify(xt))}catch(Tn){return void kt.vF.warn("Failed to encode RTC message",{error:Tn})}try{Zt.send(Qn),(zt=this.sessionMetrics)===null||zt===void 0||zt.incrementLocalSent(xt)}catch(Tn){kt.vF.warn("Failed to send message to channel",{error:Tn,channel:Zt.label})}}channelNotRecognized(Zt){return Zt!==this.latestTtlStreamChannel&&Zt!==this.latestReliableStreamChannel&&Zt!==this.latestTryOnceStreamChannel&&Zt!==this.reliableStreamChannel}setupChannel(Zt){Zt.onmessage=xt=>{if(this.channelNotRecognized(Zt))return void kt.vF.warn("Received message on unrecognized data channel.");let zt;try{zt=JSON.parse((0,lr.decode)(xt.data))}catch(Qn){return void kt.vF.warn("Received unparseable message on RTC stream data channel",{error:Qn,channel:Zt.label})}zt.communicationType==="message-chunk"?this.receiveChannelMessageChunk(Zt,zt):this.receiveChannelMessage(Zt,zt)},Zt.onerror=xt=>{kt.vF.warn("Channel error: "+xt.error,{error:xt.error,sessionId:this.getSessionId(),channelLabel:Zt.label})},Zt.onopen=()=>{kt.vF.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:Zt.label})},Zt.onclose=()=>{const xt={bufferedAmount:Zt.bufferedAmount,sessionId:this.getSessionId(),channelLabel:Zt.label};this.closeCalled===!1?kt.vF.debug("Unexpected channel closed",xt):kt.vF.debug("Channel closed",xt)}}receiveChannelMessage(Zt,xt){var zt;const{config:Qn}=this,{remotePeerId:Tn}=this.config.baseConfig;this.lastMessageTimestamp=new Date().getTime(),xt=bo(xt),(zt=this.sessionMetrics)===null||zt===void 0||zt.incrementLocalReceived(xt),!this.handleSystemMessage(Zt,xt)&&((Zt===this.latestTryOnceStreamChannel||Zt===this.latestTtlStreamChannel||Zt===this.latestReliableStreamChannel)&&!this.isLatestMessage(xt)||Qn.baseConfig.receive(Tn,xt))}receiveChannelMessageChunk(Zt,xt){const zt=this.reassemblyTable.get(xt.id)||[];if(zt.push(xt),zt.length===xt.total){const Qn=function(Tn){const ct=Tn.sort((Qt,vt)=>Qt.seqQt.part).reduce((Qt,vt)=>Qt+vt);try{return JSON.parse(ct)}catch{return void kt.vF.warn("Could not reassemble RTC message chunks")}}(zt);return Qn&&this.receiveChannelMessage(Zt,Qn),void this.reassemblyTable.delete(xt.id)}this.reassemblyTable.set(xt.id,zt),this.reassemblyTableLastTimestamp.set(xt.id,new Date().getTime())}handleSystemMessage(Zt,xt){var zt,Qn;const{config:Tn}=this,{baseConfig:ct}=Tn,{remotePeerId:Qt,remoteDeviceId:vt}=ct;switch(xt.header.stream.streamType){case"ping":return this.sendSystemMessage(Zt,{type:"pong",timestamp:jt(xt.payload.ping)}),!0;case"pong":{const Pt=new Date().getTime()-jt(xt.payload.pong);return this.pingTimeMs=Pt,on.aggregate("rtc-ping-time",Pt,Object.assign({},vt?{deviceId:vt}:{})),!0}case"ping-v2":return this.sendPingV2(),!0;case"pong-v2":{const Pt=jt(xt.payload.pongV2),en=this.pingV2Map.get(Pt.id);return(en==null?void 0:en.sent)!==Pt.timestamp&&kt.vF.warn("Pong timestamp doesn't match stored value",{currentEntry:en,pong:Pt}),this.pingV2Map.set(Pt.id,{sent:Pt.timestamp,received:new Date().getTime()}),!0}case"streams-info":{const{sessionMetrics:Pt}=this,en=(zt=xt.payload.streamsInfo)===null||zt===void 0?void 0:zt.timestamp;return!!en&&(Pt==null||Pt.updateRemoteMessagesCounts(xt),(Qn=ct.onStreamsInfoUpdate)===null||Qn===void 0||Qn.call(ct,Qt,en),!0)}case"stream-control":return!0;default:return!1}}sendSystemMessage(Zt,xt){var zt;const{localUserId:Qn,localPeerId:Tn}=this.config.baseConfig;if(Zt.readyState!=="open")return;const ct={entityId:Qn??Tn,streamName:"$."+xt.type,streamType:xt.type};let Qt;switch(xt.type){case"ping":Qt={ping:new Date().getTime()};break;case"pong":Qt={pong:xt.timestamp};break;case"ping-v2":Qt={pingV2:xt.payload};break;case"pong-v2":Qt={pongV2:xt.payload};break;case"stream-control":Qt={streamControl:xt.streamControl};break;case"streams-info":Qt={streamsInfo:(zt=this.sessionMetrics)===null||zt===void 0?void 0:zt.getLocalStreamsInfo(new Date().getTime())}}this.sendOnChannel(Zt,_o(ct,Qt))}isLatestMessage(Zt){const xt=ro(Zt.header.stream),zt=(this.streamLatestTimestamp.get(xt)||0)<=Zt.header.created;return zt&&this.streamLatestTimestamp.set(xt,Zt.header.created),zt}}function vr(In){In&&clearInterval(In)}function Hr(){kt.vF.debug("forceGarbageCollection() triggered"),queueMicrotask(()=>{let In=document.createElement("img");In.src=window.URL.createObjectURL(new Blob([new ArrayBuffer(5e7)])),In.onerror=function(){window.URL.revokeObjectURL(this.src),In=null}})}function fo(In){try{return In instanceof Error?`${In.name}: ${In.message}`:typeof In=="object"?JSON.stringify(In):String(In)}catch{return"Unknown error"}}function Go(In){var Zt,xt;return{userId:(Zt=In.getUserId())===null||Zt===void 0?void 0:Zt.getValue(),deviceId:(xt=In.getDeviceId())===null||xt===void 0?void 0:xt.getValue(),organizationId:In.getOrganizationId(),id:In.getPeerId(),capabilities:[],capabilitySet:{}}}var Zr=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};const _a=In=>In.map(Zt=>Object.assign(Object.assign(Object.assign({},Zt),Zt.username?{username:""}:null),Zt.credential?{credential:""}:null));class xa{constructor(Zt){this.config=Zt,this.grpcCallDeadline=5*ut.p.second,this.refreshIntervalDelayMs=2*ut.p.second,this.iceServersTtl=30*ut.p.minute,this.connections=[],this.localConnections=[],this.isConnectionInitiator=new WeakSet,this.isOutgoingConnection=new Set,this.peerDataChannelListeners=[],this.rtcInstancesConstructed=0,this.statsLoopsExecuted=0;const{refreshIntervalDelayMs:xt}=this;this.refreshInterval=nn({func:()=>Zr(this,void 0,void 0,function*(){try{yield this.update()}catch(zt){kt.vF.warn("RTC refresh failed",{error:zt})}}),delay:xt})}send(Zt,xt,zt){const Qn=this.getActiveConnection(Zt);Qn?Qn.isReady()?Qn.send(xt,zt):kt.vF.warn("Send called with unready connection."):kt.vF.warn("Send called with no connection.")}controlRemoteStream(Zt,xt){const zt=this.getActiveConnection(Zt);zt?zt.isReady()?zt.controlRemoteStream(xt):kt.vF.warn("controlRemoteStream called with unready connection."):kt.vF.warn("controlRemoteStream called with no connection.")}getLocalPeer(){return Zr(this,void 0,void 0,function*(){for(;!this.localPeer;)yield(0,Ut.c)(.1*ut.p.second);return Go(this.localPeer)})}connect(Zt,xt){return Zr(this,void 0,void 0,function*(){var zt,Qn,Tn;if(this.config.lanOnlyMode===!0)throw new Error("connect method called in local only mode.");const{track:ct,signalingClient:Qt}=this.config,{localPeer:vt,receiveSignalStream:Pt,iceServers:en}=this;if(!vt||!Pt||!en)return void kt.vF.warn("Connect called prior to local peer, receiveSignalStream, and ICE servers ready");if(this.getActiveConnection(Zt))return void kt.vF.warn("Connect called for peer with existing connection.");if(this.isOutgoingConnection.has(Zt))return void kt.vF.warn("Connect called for peer with an existing outgoing connection offer.");this.isOutgoingConnection.add(Zt);const Bn=function(Mr,hr,Br){const{rtcIceTransportPolicies:xr,rtcIceServerProtocol:Gr,useAllServers:lo}=hr||{},qr=Mr.map(_i=>Object.assign(Object.assign({},_i),{urls:_i.urls.filter(Uo=>{const yo=(xr===void 0||xr.some(Io=>En(Uo,Io)))&&(Gr===void 0||yn(Uo,Gr));return yo||kt.vF.debug("Ignoring ICE server: "+Uo,{organizationId:Br}),yo})})).filter(({urls:_i})=>_i.filter(Uo=>Uo).length>0);return lo?qr:[pn(qr,"stun"),pn(qr,"turn")].filter(_i=>_i!==void 0).map(_i=>jt(_i))}(en,xt);kt.vF.debug("Received ICE servers:",_a(en)),kt.vF.debug("Using ICE servers:",_a(Bn));const jn=new tr(yield this.createRTCPeerConnection(Bn),Bn,{baseConfig:{isOffer:!0,isLan:!1,receive:(Mr,hr)=>this.config.receive(Mr,hr),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Mr,hr)=>{var Br,xr;return(xr=(Br=this.config).onStreamsInfoUpdate)===null||xr===void 0?void 0:xr.call(Br,Mr,hr)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(zt=vt.getUserId())===null||zt===void 0?void 0:zt.getValue(),localPeerId:vt.getPeerId(),remotePeerId:Zt,sessionType:this.config.sessionType},remoteConfig:{}},Mr=>this.onCustomDataChannel(Zt,Mr)),$n=yield jn.getOffer();if(!$n)return kt.vF.error("Failed to generate offer."),void this.isOutgoingConnection.delete(Zt);kt.vF.debug("Sending offer."),ct==null||ct("Sending offer",(0,Cn.x)($n));const ur=new Gn.SendSignalRequest;ur.setSignal($n);const Rr=yield(()=>Zr(this,void 0,void 0,function*(){try{return yield ir.withDeadline(Qt.sendSignal(ur,yield this.getMetadata()),this.grpcCallDeadline)}catch(Mr){kt.vF.warn("Error when sending signal",{error:Mr})}}))();if(!this.isOutgoingConnection.has(Zt))return void kt.vF.debug("No offer set after receiving offer signal response.");kt.vF.debug("Offer sent.");const Sr=(Qn=Rr==null?void 0:Rr.getSessionId())===null||Qn===void 0?void 0:Qn.getValue(),Yr=(Tn=Rr==null?void 0:Rr.getSessionCreatedTimestamp())===null||Tn===void 0?void 0:Tn.getValue();return Sr&&Yr?(jn.setSessionId(Sr),jn.setSessionCreatedTimestamp(Yr),this.isOutgoingConnection.delete(Zt),this.connections.push(jn),this.isConnectionInitiator.add(jn),this.setupHandlers(jn),Sr):(kt.vF.warn("No session ID or no session created timestamp on send signal response."),void this.isOutgoingConnection.delete(Zt))})}connectLan(Zt){return Zr(this,void 0,void 0,function*(){var xt,zt;const Qn=new Zn(Zt),Tn=new tr(yield this.createRTCPeerConnection([]),[],{baseConfig:{isOffer:!0,isLan:!0,receive:(Pt,en)=>this.config.receive(Pt,en),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(Pt,en)=>{var Bn,jn;return(jn=(Bn=this.config).onStreamsInfoUpdate)===null||jn===void 0?void 0:jn.call(Bn,Pt,en)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(zt=(xt=this.localPeer)===null||xt===void 0?void 0:xt.getUserId())===null||zt===void 0?void 0:zt.getValue(),localPeerId:"lan_client",remotePeerId:Zt}},Pt=>this.onCustomDataChannel(Zt,Pt)),ct=yield Tn.getLanOffer();if(!ct)return kt.vF.warn("Could not generate LAN offer"),!1;const Qt=yield Qn.postLanRtcOffer({offer:JSON.stringify(ct)}),vt=new RTCSessionDescription(JSON.parse(Qt.answer));return yield Tn.handleLanAnswer(vt),this.localConnections.push(Tn),this.isConnectionInitiator.add(Tn),(0,Un.A)()})}getConnections(){return[...this.connections,...this.localConnections]}createCustomDataChannel(Zt,xt,zt,Qn,Tn){const ct=this.getActiveConnection(Zt);if(ct&&this.isConnectionInitiator.has(ct)){const vt=ct.peerConnection.createDataChannel("custom."+xt,zt);return Qn&&(vt.binaryType="arraybuffer"),Tn(Zt,vt),()=>{}}const Qt=(vt,Pt)=>{Zt===vt&&Pt.label==="custom."+xt&&Tn(Zt,Pt)};return this.peerDataChannelListeners.push(Qt),()=>{this.peerDataChannelListeners=this.peerDataChannelListeners.filter(vt=>vt!==Qt)}}onCustomDataChannel(Zt,xt){this.peerDataChannelListeners.forEach(zt=>zt(Zt,xt))}getConnectionStatus(Zt){if(this.isOutgoingConnection.has(Zt))return"connecting";const xt=this.getActiveConnection(Zt);return xt?xt.isReady()?"connected":"connecting":"disconnected"}getConnectionStatsInfo(Zt){return Zr(this,void 0,void 0,function*(){const xt=this.getActiveConnection(Zt);if(xt)return yield xt.getConnectionStatsInfo()})}disconnect(Zt){return Zr(this,void 0,void 0,function*(){const xt=this.getActiveConnection(Zt);xt&&(yield xt.close(),this.connections=this.connections.filter(zt=>zt!==xt),this.localConnections=this.localConnections.filter(zt=>zt!==xt))})}getPeers(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:Zt}=this.config,xt=yield(()=>Zr(this,void 0,void 0,function*(){try{return yield ir.withDeadline(Zt.getPeers(new Gn.GetPeersRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(Tn){kt.vF.warn("Error when getting peers",{error:Tn})}}))();if(!xt)return[];const zt=xt.getPeersList();if(!zt)return[];const Qn=Tn=>{var ct,Qt;return(Qt=(ct=Tn.getPeerCreatedTimestamp())===null||ct===void 0?void 0:ct.getValue())!==null&&Qt!==void 0?Qt:0};return zt.sort((Tn,ct)=>Qn(ct)-Qn(Tn)).map(Tn=>Go(Tn))})}getSessions(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:Zt}=this.config,xt=yield(()=>Zr(this,void 0,void 0,function*(){try{return yield ir.withDeadline(Zt.getPeers(new Gn.GetPeersRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(Tn){kt.vF.warn("Error when getting peers",{error:Tn})}}))();if(!xt)return{};const zt=xt.getPeersList(),Qn={};for(const Tn of zt)Qn[Tn.getPeerId()]=Tn.getSessionIdsList();return Qn})}getPing(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getPing();kt.vF.warn("Attempted to get ping time from inactive peer.")}getPingInfo(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getPingInfo();kt.vF.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getLastMessageTimestamp();kt.vF.warn("Attempted to get last message time from inactive peer.")}getSessionMetricsMessageCounts(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getSessionMetricsMessageCounts();kt.vF.warn("Attempted to get session metrics counts from inactive peer.")}isReady(){if(this.config.lanOnlyMode)return!0;const{localPeer:Zt,receiveSignalStream:xt,iceServers:zt}=this;return!!(Zt&&xt&&zt)}shutdown(){return Zr(this,void 0,void 0,function*(){yield this.refreshInterval.stop(),this.receiveSignalStream&&this.receiveSignalStream.cancel();const Zt=this.connections;this.connections=[],yield this.closeConnections(Zt);const xt=this.localConnections;this.localConnections=[],yield this.closeConnections(xt),this.isOutgoingConnection.clear(),this.peerDataChannelListeners=[];const{localPeer:zt}=this;if(!zt||this.config.lanOnlyMode)return;const{signalingClient:Qn}=this.config;yield(()=>Zr(this,void 0,void 0,function*(){try{const Tn=new Gn.DeletePeerRequest;Tn.setPeerId(zt.getPeerId()),yield ir.withDeadline(Qn.deletePeer(Tn,yield this.getMetadata()),this.grpcCallDeadline)}catch(Tn){return void kt.vF.warn("Error deleting local peer",{error:Tn})}}))()})}createPeer(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createPeer method cannot be used in local-only mode.");const{signalingClient:Zt}=this.config,xt=yield(()=>Zr(this,void 0,void 0,function*(){try{return yield ir.withDeadline(Zt.createPeer(new Gn.CreatePeerRequest,yield this.getMetadata()),this.grpcCallDeadline)}catch(Qn){const Tn=Qn;kt.vF.debug("createPeer failed",{error:Tn});const ct=fo(Tn);throw new Error("Was not able to create peer: "+ct)}}))(),zt=xt==null?void 0:xt.getPeer();if(!zt)throw new Error("Response did not provide peer.");return this.localPeer=zt})}createReceiveSignalStream(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createReceiveSignalStream method cannot be used in local-only mode.");const{signalingClient:Zt}=this.config,{localPeer:xt,iceServers:zt}=this;if(!xt||!zt)return;const{receiveSignalStream:Qn}=this;Qn&&Qn.cancel();const Tn=new Gn.ReceiveSignalStreamRequest;Tn.setPeerId(xt.getPeerId());const ct=yield(()=>Zr(this,void 0,void 0,function*(){try{return Zt.receiveSignalStream(Tn,yield this.getMetadata({hasDeadline:!1}))}catch(Qt){kt.vF.debug("createReceiveSignalStream failed",{error:Qt});const vt=fo(Qt);throw new Error("Unable to create receive signal stream: "+vt)}}))();if(!ct)throw new Error("Response did not provide stream.");return ct.on("data",Qt=>Zr(this,void 0,void 0,function*(){var vt,Pt,en,Bn;const jn=Qt.getSignal(),$n=(vt=jn==null?void 0:jn.getSessionId())===null||vt===void 0?void 0:vt.getValue(),ur=jn==null?void 0:jn.getSenderId(),Rr=jn==null?void 0:jn.getReceiverId(),Sr=(Pt=jn==null?void 0:jn.getSessionCreatedTimestamp())===null||Pt===void 0?void 0:Pt.getValue();if(!(jn&&$n&&ur&&Rr&&Sr))return void kt.vF.warn("Received signal with missing information.");const Yr=this.getActiveConnection(ur);if(Yr)if(Yr.getSessionId()!==$n){if(kt.vF.debug("Received signal: different session for a peer we're already connected to."),(Yr.getSessionCreatedTimestamp()||0)>Sr)return;const Mr=new tr(yield this.createRTCPeerConnection(zt),zt,{baseConfig:{isOffer:!1,isLan:!1,receive:(hr,Br)=>this.config.receive(hr,Br),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(hr,Br)=>{var xr,Gr;return(Gr=(xr=this.config).onStreamsInfoUpdate)===null||Gr===void 0?void 0:Gr.call(xr,hr,Br)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:xt.getPeerId(),localUserId:(Bn=xt.getUserId())===null||Bn===void 0?void 0:Bn.getValue(),remotePeerId:ur},remoteConfig:{sessionId:$n,sessionCreatedTimestamp:Sr}},hr=>this.onCustomDataChannel(ur,hr));yield Mr.handleSignal(jn),this.connections.push(Mr)}else kt.vF.debug("Received signal: for an existing connection."),yield Yr.handleSignal(jn);else{kt.vF.debug("Received signal: new connection.");const Mr=new tr(yield this.createRTCPeerConnection(zt),zt,{baseConfig:{isOffer:!1,isLan:!1,receive:(hr,Br)=>this.config.receive(hr,Br),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(hr,Br)=>{var xr,Gr;return(Gr=(xr=this.config).onStreamsInfoUpdate)===null||Gr===void 0?void 0:Gr.call(xr,hr,Br)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:xt.getPeerId(),localUserId:(en=xt.getUserId())===null||en===void 0?void 0:en.getValue(),remotePeerId:ur},remoteConfig:{sessionId:$n,sessionCreatedTimestamp:Sr}},hr=>this.onCustomDataChannel(ur,hr));yield Mr.handleSignal(jn),this.connections.push(Mr)}})),ct.on("end",()=>{ct.cancel(),this.receiveSignalStream=void 0}),ct.on("error",Qt=>{switch(Qt.code){case fn.StatusCode.CANCELLED:case fn.StatusCode.UNAVAILABLE:case fn.StatusCode.UNKNOWN:kt.vF.debug("Receive signal stream error",{error:Qt});break;case fn.StatusCode.UNAUTHENTICATED:kt.vF.warn("Receive signal stream error",{error:Qt});break;default:kt.vF.error("Receive signal stream error",{error:Qt})}ct.cancel(),this.receiveSignalStream=void 0}),this.receiveSignalStream=ct})}createRTCPeerConnection(Zt){return Zr(this,void 0,void 0,function*(){var xt;const zt=(xt=this.config.alternateRTCPeerConnection)!==null&&xt!==void 0?xt:window.RTCPeerConnection;if(!zt)throw function(){if(typeof navigator>"u")throw new Error("not a browser");const{userAgent:Qn}=navigator;return Qn.includes("Firefox/")?"Firefox":Qn.includes("Edg/")?"Edge":Qn.includes("Chrome/")?"Chrome":Qn.includes("Safari/")?"Safari":Qn.includes("MSIE/")||Qn.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||Hr();try{return new zt({iceServers:Zt})}catch(Qn){throw kt.vF.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),Qn}})}closeConnections(Zt){return Zr(this,void 0,void 0,function*(){const xt=yield Yn(Zt.map(zt=>Zr(this,void 0,void 0,function*(){yield zt.close()})));for(const zt of xt)kt.vF.warn("Request to close session failed",{error:zt})})}getActiveConnection(Zt){return this.getConnections().find(xt=>xt.getRemotePeerId()===Zt&&xt.isActive())}update(){return Zr(this,void 0,void 0,function*(){var Zt;if(this.localConnections=this.localConnections.filter(Bn=>Bn.isActive()),this.config.lanOnlyMode)return;const{signalingClient:xt}=this.config;if(!this.localPeer||!this.receiveSignalStream||!this.iceServers){const Bn=[];return this.localPeer||Bn.push(this.createPeer()),this.iceServers||Bn.push(this.updateIceServers()),yield Promise.all(Bn),void(this.receiveSignalStream||(yield this.createReceiveSignalStream()))}const[zt,Qn]=(Tn=this.connections,ct=Bn=>Bn.isActive(),Tn.reduce((Bn,jn,$n,ur)=>{const[Rr,Sr]=Bn;return(ct(jn,$n,ur)?Rr:Sr).push(jn),Bn},[[],[]]));var Tn,ct;yield this.closeConnections(Qn),this.connections=zt,this.gatherConnectionStats().catch(Bn=>{kt.vF.warn("Error calling gatherConnectionStats",{error:Bn})}),this.statsLoopsExecuted++;const{localPeer:Qt}=this,vt=this.connections.filter(Bn=>Bn.getSessionId).map(Bn=>jt(Bn.getSessionId()));Qt.setSessionIdsList(vt);const Pt=new Gn.RefreshPeerRequest;Pt.setPeer(Qt);try{yield ir.withDeadline(xt.refreshPeer(Pt,yield this.getMetadata()),this.grpcCallDeadline)}catch(Bn){Bn instanceof fn.RpcError&&Bn.code===fn.StatusCode.NOT_FOUND?(kt.vF.warn("Peer expired, creating new peer",{peerId:Qt.getPeerId()}),yield this.reset()):kt.vF.warn("Error calling RefreshPeer",{error:Bn})}const en=yield this.getPeers();for(const Bn of this.connections)Bn.setRemoteDeviceId((Zt=en.find(jn=>jn.id===Bn.getRemotePeerId()))===null||Zt===void 0?void 0:Zt.deviceId)})}gatherConnectionStats(){return Zr(this,void 0,void 0,function*(){if(this.statsLoopsExecuted%10!=0||this.connections.length!==1)return;const Zt=yield this.connections[0].getConnectionStatsInfo(),xt=Zt?Ao(Zt):void 0;xt?on.setTag("rtc-connection-type",xt):on.setTag("rtc-connection-type","unknown")})}reset(){return Zr(this,void 0,void 0,function*(){yield this.closeConnections(this.connections),this.connections=[],this.isOutgoingConnection.clear(),yield this.createPeer(),yield this.createReceiveSignalStream()})}updateIceServers(){return Zr(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)return;const{iceServersLastUpdate:Zt,iceServersTtl:xt}=this,zt=new Date().getTime();if(!Zt||zt-Zt>xt)try{const Qn=(yield ir.withDeadline(this.config.signalingClient.getIceServers(new Gn.GetIceServersRequest,yield this.getMetadata()),this.grpcCallDeadline)).getIceServers();this.iceServers=JSON.parse(Qn),this.iceServersLastUpdate=zt}catch(Qn){kt.vF.warn("Error in updateIceServers",{error:Qn})}})}setupHandlers(Zt){const{peerConnection:xt}=Zt,zt=Zt.getSessionCreatedTimestamp();xt.onconnectionstatechange=()=>Zr(this,void 0,void 0,function*(){const Qn=xt.connectionState;if(!zt)return;const Tn=Zt.getRemoteDeviceId();switch(Qn){case"connected":on.aggregate("rtc-connect-time",new Date().getTime()-zt,Object.assign({},Tn?{deviceId:Tn}:{}));break;case"failed":on.increment("rtc-connect-failed",Object.assign({},Tn?{deviceId:Tn}:{}))}})}getMetadata(){return Zr(this,arguments,void 0,function*(Zt={}){if(this.config.lanOnlyMode)throw new Error("getMetadata method cannot be called in local-only mode");const{getToken:xt}=this.config,{grpcCallDeadline:zt}=this,{hasDeadline:Qn=!0}=Zt,Tn=Qn?{deadline:(Date.now()+zt).toString(10)}:null;try{const ct=yield xt();return Object.assign({authorization:ct},Tn)}catch(ct){throw kt.vF.error("getToken() failed",{error:ct}),new Error("Cannot get authorization token")}})}}var Eo=$(5413),eo=$(7197),nr=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class cr{constructor(Zt,xt){this.sentMessagesCounts=new Map,this.receivedMessagesCounts=new Map,this.sessionId=Zt,this.connection=xt}incrementMessageSent(Zt){const xt=ro(Zt.header.stream);this.sentMessagesCounts.set(xt,(this.sentMessagesCounts.get(xt)||0)+1)}incrementMessageReceived(Zt){const xt=ro(Zt.header.stream);this.receivedMessagesCounts.set(xt,(this.receivedMessagesCounts.get(xt)||0)+1)}uploadMetrics(){return nr(this,void 0,void 0,function*(){const{sessionId:Zt}=this,xt=yield this.connection.peerConnection.getStats(),zt={};xt.forEach(Tn=>zt[Tn.id]=Tn),kt.vF.debug("rtc-stats",Object.assign(Object.assign({},zt),{sessionId:Zt}));const Qn=[...new Set(Array.from(this.sentMessagesCounts.keys()).concat(Array.from(this.receivedMessagesCounts.keys())))].reduce((Tn,ct)=>{const Qt=this.sentMessagesCounts.get(ct),vt=this.receivedMessagesCounts.get(ct);return Object.assign(Object.assign({},Tn),{[ct+"-sent"]:Qt,[ct+"-received"]:vt})},{sessionId:Zt});kt.vF.debug("rtc-message-report",Qn)})}}function mo(In,Zt){return ro(In)===ro(Zt)}var Qo=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class Kr{constructor(Zt,xt){this.peerConnection=Zt,this.config=xt,this.connectTimeoutMs=10*ut.p.second,this.gatherIceTimeoutMs=5*ut.p.second,this.pingUpdateTimeoutMs=2*ut.p.second,this.streamLatestTimestamp=new Map,this.closeCalled=!1,this.connectCalled=!1,this.sentOffer=!1,this.receivedIceCandidate=!1;const{isOffer:zt}=xt;zt?this.initializeChannels(Zt):Zt.ondatachannel=Qn=>{switch(Qn.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=Qn.channel;break;case"stream.reliable":this.reliableStreamChannel=Qn.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=Qn.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=Qn.channel}this.setupChannel(Qn.channel)},this.sessionMetrics=new cr(this.getSessionId(),this)}connect(){return Qo(this,void 0,void 0,function*(){if(this.connectCalled)return;this.connectCalled=!0,this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:Qn}=this;Qn&&this.sendSystemMessage(Qn,{type:"ping"})},this.pingUpdateTimeoutMs),this.connectTimeout=setTimeout(()=>Qo(this,void 0,void 0,function*(){this.isReady()||(kt.vF.warn("RTC connect timed out, closing connection"),yield this.close())}),this.connectTimeoutMs);const{peerConnection:Zt,config:{isOffer:xt,sessionId:zt}}=this;if(xt){const Qn=yield Zt.createOffer();yield Zt.setLocalDescription(Qn)}xt&&(this.gatherIceTimeout=setTimeout(()=>Qo(this,void 0,void 0,function*(){this.sentOffer||(kt.vF.warn("ICE gathering timed out"),this.receivedIceCandidate?(kt.vF.warn("Attempting to connect with partial ICE candidate pool"),yield this.sendOffer()):yield this.close())}),this.gatherIceTimeoutMs),Zt.onicecandidate=Qn=>Qo(this,void 0,void 0,function*(){Qn.candidate?this.receivedIceCandidate=!0:yield this.sendOffer()}),Zt.onicegatheringstatechange=()=>Qo(this,void 0,void 0,function*(){Zt.iceGatheringState==="complete"&&(yield this.sendOffer())}),Zt.onnegotiationneeded=()=>{kt.vF.debug("Negotiation needed",{sessionId:zt})})})}handleSignal(Zt){return Qo(this,void 0,void 0,function*(){const{peerConnection:xt,config:{sessionId:zt,sendSignal:Qn}}=this,{description:Tn}=JSON.parse(Zt.payload);if(kt.vF.debug("Handling signal",{sessionId:zt,description:JSON.stringify(Tn)}),Tn)if(xt.signalingState!=="stable"||xt.connectionState!=="connected")if(xt.remoteDescription)kt.vF.warn("Received SDP signal during negotiation when remote description is already set: "+JSON.stringify(Zt));else if(Tn.type==="offer"){yield xt.setRemoteDescription(Tn);const ct=yield xt.createAnswer();yield xt.setLocalDescription(ct),yield Qn({payload:JSON.stringify({description:ct})})}else Tn.type==="answer"&&(yield xt.setRemoteDescription(Tn));else kt.vF.warn("Received SDP signal when signaling is stable and connected: "+JSON.stringify(Zt));else kt.vF.warn("Received non-SDP signal: "+JSON.stringify(Zt))})}send(Zt,xt){const zt=this.getChannelFromLabel(xt.channelLabel);zt?this.sendOnChannel(zt,Zt):kt.vF.warn("Send called with unexpected channel label",{channelLabel:xt.channelLabel})}controlRemoteStream(Zt){this.sendSystemMessage(jt(this.reliableStreamChannel),{type:"stream-control",streamControl:Zt})}isActive(){return new Set(["new","connecting","connected"]).has(this.peerConnection.connectionState)}isReady(){const{peerConnection:Zt,latestTtlStreamChannel:xt,reliableStreamChannel:zt,latestTryOnceStreamChannel:Qn}=this;return!!(zt&&xt&&Qn)&&Zt.connectionState==="connected"&&zt.readyState==="open"&&xt.readyState==="open"&&Qn.readyState==="open"}isClosed(){const{peerConnection:Zt,reliableStreamChannel:xt,latestTryOnceStreamChannel:zt,latestTtlStreamChannel:Qn}=this;return!(Zt.connectionState!=="closed"||xt!==void 0&&xt.readyState!=="closed"||zt!==void 0&&zt.readyState!=="closed"||Qn!==void 0&&Qn.readyState!=="closed")}needsClosing(){const{peerConnection:Zt,latestTtlStreamChannel:xt,reliableStreamChannel:zt,latestTryOnceStreamChannel:Qn}=this;if(this.isClosed())return!1;const Tn=new Set(["closing","closed"]),ct=Qt=>Qt&&Tn.has(Qt.readyState);return So(Zt)||ct(xt)||ct(zt)||ct(Qn)}close(){return Qo(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(Zt){this.latestTtlStreamChannel=Zt.createDataChannel("stream.latest-ttl",Rn),this.reliableStreamChannel=Zt.createDataChannel("stream.reliable",_r),this.latestReliableStreamChannel=Zt.createDataChannel("stream.latest-reliable",zr),this.latestTryOnceStreamChannel=Zt.createDataChannel("stream.latest-try-once",Er),this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}sendOffer(){return Qo(this,void 0,void 0,function*(){if(this.sentOffer||(this.sentOffer=!0,So(this.peerConnection)))return;const{peerConnection:Zt,config:{sendSignal:xt}}=this,zt=yield Zt.createOffer();yield Zt.setLocalDescription(zt);const Qn={payload:JSON.stringify({description:zt})};yield xt(Qn)})}getChannelFromLabel(Zt){switch(Zt){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(Zt,xt){let zt;try{zt=(0,lr.encode)(JSON.stringify(xt))}catch(Qn){return void kt.vF.warn("Failed to encode RTC message",{error:Qn})}try{Zt.send(zt),this.sessionMetrics.incrementMessageSent(xt)}catch(Qn){kt.vF.warn("Failed to send message to channel",{error:Qn,channel:Zt.label})}}channelNotRecognized(Zt){return Zt!==this.latestTtlStreamChannel&&Zt!==this.latestReliableStreamChannel&&Zt!==this.latestTryOnceStreamChannel&&Zt!==this.reliableStreamChannel}setupChannel(Zt){Zt.onmessage=xt=>{if(this.channelNotRecognized(Zt))return void kt.vF.warn("Received message on unrecognized data channel.");let zt;try{zt=JSON.parse((0,lr.decode)(xt.data))}catch(Qn){return void kt.vF.warn("Received unparseable RTC message",{error:Qn,channel:Zt.label})}if(this.lastMessageTimestamp=new Date().getTime(),zt=bo(zt),this.sessionMetrics.incrementMessageReceived(zt),!this.handleSystemMessage(Zt,zt)){if(!this.hasCapabilities(zt))return void kt.vF.warn("Received RTC message that was not within the capability scope of the connection.");(Zt===this.latestTryOnceStreamChannel||Zt===this.latestTtlStreamChannel||Zt===this.latestReliableStreamChannel)&&!this.isLatestMessage(zt)||this.config.receive(this.config.remotePeer.id,zt)}},Zt.onerror=xt=>{kt.vF.warn("Channel error: "+xt.error,{error:xt.error,sessionId:this.getSessionId(),channelLabel:Zt.label})},Zt.onopen=()=>{kt.vF.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:Zt.label})},Zt.onclose=()=>{const xt={bufferedAmount:Zt.bufferedAmount,sessionId:this.getSessionId(),channelLabel:Zt.label};this.closeCalled===!1?kt.vF.debug("Unexpected channel closed",xt):kt.vF.debug("Channel closed",xt)}}handleSystemMessage(Zt,xt){switch(xt.header.stream.streamType){case"ping":return this.sendSystemMessage(Zt,{type:"pong",timestamp:jt(xt.payload.ping)}),!0;case"pong":{const zt=new Date().getTime()-jt(xt.payload.pong);return this.pingTimeMs=zt,on.aggregate("rtc-ping-time",zt),!0}case"stream-control":return!0;default:return!1}}sendSystemMessage(Zt,xt){if(Zt.readyState!=="open")return;const zt={entityId:jt(this.config.localPeer.deviceId||this.config.localPeer.userId),streamName:"$."+xt.type,streamType:xt.type};let Qn;switch(xt.type){case"ping":Qn={ping:new Date().getTime()};break;case"pong":Qn={pong:xt.timestamp};break;case"stream-control":Qn={streamControl:xt.streamControl}}this.sendOnChannel(Zt,_o(zt,Qn))}hasCapabilities(Zt){var xt,zt;const{localPeer:Qn,remotePeer:Tn}=this.config,ct=(xt=Qn.capabilitySet.streaming)===null||xt===void 0?void 0:xt.streams,Qt=ct&&ct.some(en=>en.receive&&mo(en.stream,Zt.header.stream)),vt=(zt=Tn.capabilitySet.streaming)===null||zt===void 0?void 0:zt.streams,Pt=vt&&vt.some(en=>en.send&&mo(en.stream,Zt.header.stream));return Qt||Pt}isLatestMessage(Zt){const xt=ro(Zt.header.stream),zt=(this.streamLatestTimestamp.get(xt)||0)<=Zt.header.created;return zt&&this.streamLatestTimestamp.set(xt,Zt.header.created),zt}}var Dr=function(In,Zt,xt,zt){return new(xt||(xt=Promise))(function(Qn,Tn){function ct(Pt){try{vt(zt.next(Pt))}catch(en){Tn(en)}}function Qt(Pt){try{vt(zt.throw(Pt))}catch(en){Tn(en)}}function vt(Pt){var en;Pt.done?Qn(Pt.value):(en=Pt.value,en instanceof xt?en:new xt(function(Bn){Bn(en)})).then(ct,Qt)}vt((zt=zt.apply(In,Zt||[])).next())})};class gn{constructor(Zt){this.config=Zt,this.connections=[],this.connectingSessions=new Map,this.rtcInstancesConstructed=0,this.updateInterval=nn({func:()=>Dr(this,void 0,void 0,function*(){try{yield this.update()}catch(xt){kt.vF.warn("RTC update failed",{error:xt})}}),delay:250*ut.p.millisecond}),this.localPeer=this.createPeer()}send(Zt,xt,zt){const Qn=this.getActiveConnection(Zt);Qn?Qn.isReady()?Qn.send(xt,zt):kt.vF.warn("Attempted to send with an active connection to that peer which was not yet ready."):kt.vF.warn("Attempted to send with no active connection to that peer.")}controlRemoteStream(Zt,xt){const zt=this.getActiveConnection(Zt);zt?zt.isReady()?zt.controlRemoteStream(xt):kt.vF.warn("Attempted to control remote stream with an active connection to that peer which was not yet ready."):kt.vF.warn("Attempted to control remote stream with no active connection to that peer.")}connect(Zt){return Dr(this,void 0,void 0,function*(){const xt=yield this.getLocalPeer();if(this.getActiveConnection(Zt))return void kt.vF.warn("Attempted to connect to peer with an already active connection.");let zt;try{zt=yield this.config.signalingClient.createSession(yield this.config.getToken(),{offerPeerId:xt.id,answerPeerId:Zt})}catch(Qn){(0,Eo.e)(Qn,eo.o,Tn=>Tn.statusCode===404),kt.vF.warn("Attempted to connect to peer that does not exist.")}if(zt)for(this.connectingSessions.set(zt.id,new Date().getTime()),yield this.connectToSession(zt);;)switch(yield(0,Ut.c)(.1),this.getConnectionStatus(Zt)){case"connecting":continue;case"connected":return zt.id;case"disconnected":return}})}getConnectionStatus(Zt){const xt=this.getActiveConnection(Zt);return xt?xt.isReady()?"connected":"connecting":"disconnected"}getIceMode(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.iceMode}disconnect(Zt){return Dr(this,void 0,void 0,function*(){const xt=this.getActiveConnection(Zt);xt&&(yield this.closeConnection(xt))})}getLocalPeer(){return Dr(this,void 0,void 0,function*(){return yield this.localPeer})}getPeers(){return Dr(this,void 0,void 0,function*(){return yield this.config.signalingClient.getPeers(yield this.config.getToken())})}getPing(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getPing();kt.vF.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(Zt){const xt=this.getActiveConnection(Zt);if(xt)return xt.getLastMessageTimestamp();kt.vF.warn("Attempted to get ping time from inactive peer.")}shutdown(){return Dr(this,void 0,void 0,function*(){yield this.updateInterval.stop();const Zt=this.connections;this.connections=[],yield this.closeConnections(Zt)})}closeConnection(Zt){return Dr(this,void 0,void 0,function*(){this.connectingSessions.delete(Zt.getSessionId()),yield Zt.close();try{yield this.config.signalingClient.deleteSession(yield this.config.getToken(),Zt.getSessionId())}catch(xt){(0,Eo.e)(xt,eo.o,zt=>zt.statusCode===404)}})}getSessions(){return Dr(this,void 0,void 0,function*(){const Zt=yield this.getLocalPeer();return(yield this.config.signalingClient.getSessions(yield this.config.getToken())).filter(xt=>xt.offer.peer.id===Zt.id||xt.answer.peer.id===Zt.id)})}createPeer(){return Dr(this,void 0,void 0,function*(){return yield this.config.signalingClient.createPeer(yield this.config.getToken(),{capabilitySet:this.config.capabilitySet||{}})})}createRTCPeerConnection(){return Dr(this,arguments,void 0,function*(Zt={}){const xt=this.config.alternateRTCPeerConnection||RTCPeerConnection;this.rtcInstancesConstructed++,this.rtcInstancesConstructed%20||Hr();try{return new xt(Object.assign({iceServers:yield this.config.signalingClient.getIceServers(yield this.config.getToken())},Zt))}catch(zt){throw kt.vF.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),zt}})}closeConnections(Zt){return Dr(this,void 0,void 0,function*(){const xt=yield Yn(Zt.map(zt=>Dr(this,void 0,void 0,function*(){yield this.closeConnection(zt)})));for(const zt of xt)kt.vF.warn("Request to close session failed",{error:zt})})}reset(){return Dr(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(Zt){return this.connections.find(xt=>xt.getRemotePeer().id===Zt&&xt.isActive())}update(){return Dr(this,void 0,void 0,function*(){const Zt=yield this.getLocalPeer();try{yield this.config.signalingClient.refreshPeer(yield this.config.getToken(),Zt.id)}catch(xt){(0,Eo.e)(xt,eo.o,zt=>zt.statusCode===404),kt.vF.warn("Peer expired, creating new peer",{peerId:Zt.id}),yield this.reset()}yield this.handleSessions(yield this.getSessions())})}handleSessions(Zt){return Dr(this,void 0,void 0,function*(){yield this.syncConnectionsAndSessions(Zt);const xt=Zt.map(zt=>({session:zt,connection:this.connections.find(Qn=>Qn.getSessionId()===zt.id)}));yield Promise.all(xt.map(zt=>Dr(this,[zt],void 0,function*({session:Qn,connection:Tn}){return yield this.maintainConnection(Qn,Tn)})))})}syncConnectionsAndSessions(Zt){return Dr(this,void 0,void 0,function*(){const xt=new Set(Zt.map(Tn=>Tn.id)),zt=Tn=>xt.has(Tn.getSessionId())||this.connectingSessions.has(Tn.getSessionId());this.connections=this.connections.filter(Tn=>zt(Tn));const Qn=this.connections.filter(Tn=>!zt(Tn)||Tn.needsClosing());yield Promise.all(Qn.map(Tn=>Dr(this,void 0,void 0,function*(){yield this.closeConnection(Tn)})))})}maintainConnection(Zt,xt){return Dr(this,void 0,void 0,function*(){const zt=yield this.getLocalPeer(),Qn=Zt.offer.peer.id===zt.id;if(xt){if(xt.isReady())try{yield this.config.signalingClient.refreshSession(yield this.config.getToken(),Zt.id)}catch(Tn){(0,Eo.e)(Tn,eo.o,ct=>ct.statusCode===404),kt.vF.debug("Refresh session not found",{sessionId:Zt.id})}else if(xt.isActive())try{yield this.consumeSignals(xt)}catch(Tn){kt.vF.warn("Failed to ingest signals, closing connection",{error:Tn}),yield this.closeConnection(xt)}}else{if(Qn)return;yield this.connectToSession(Zt)}})}connectToSession(Zt){return Dr(this,void 0,void 0,function*(){const xt=yield this.getLocalPeer(),zt=Zt.offer.peer.id===xt.id,Qn=yield this.createRTCPeerConnection(),Tn=new Kr(Qn,{localPeer:zt?Zt.offer.peer:Zt.answer.peer,remotePeer:zt?Zt.answer.peer:Zt.offer.peer,sessionId:Zt.id,isOffer:zt,sendSignal:ct=>this.sendSignal(Zt.id,ct),receive:(ct,Qt)=>this.config.receive(ct,Qt)});if(this.connections.find(ct=>ct.getSessionId()===Zt.id))return kt.vF.warn("connectToSession called on a session that already has a connection.",{sessionId:Zt.id}),void(yield Tn.close());this.setupHandlers(Tn),this.connections.push(Tn);try{yield Tn.connect()}catch(ct){kt.vF.warn("Failed to handle negotiation, closing connection",{error:ct}),yield this.closeConnection(Tn)}})}setupHandlers(Zt){const{peerConnection:xt}=Zt,zt=Zt.getSessionId();xt.onconnectionstatechange=()=>Dr(this,void 0,void 0,function*(){const Qn=this.connectingSessions.get(zt);if(Qn===void 0)return;const Tn=xt.connectionState;switch(So(xt)&&this.connectingSessions.delete(zt),Tn){case"connected":{this.connectingSessions.delete(zt);const ct=new Date().getTime()-Qn;on.aggregate("rtc-connect-time",ct);break}case"failed":on.increment("rtc-connect-failed"),yield this.closeConnection(Zt)}})}consumeSignals(Zt){return Dr(this,void 0,void 0,function*(){let xt=[];try{xt=yield this.config.signalingClient.takeSignals(yield this.config.getToken(),Zt.getSessionId())}catch(zt){(0,Eo.e)(zt,eo.o,Qn=>Qn.statusCode===404)}for(const zt of xt)yield Zt.handleSignal(zt)})}sendSignal(Zt,xt){return Dr(this,void 0,void 0,function*(){try{yield this.config.signalingClient.addSignals(yield this.config.getToken(),Zt,{signals:[xt]})}catch(zt){(0,Eo.e)(zt,eo.o,Qn=>Qn.statusCode===404)}})}}})(),_e})())})(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 vn;class RtcClientPool{constructor(s){ke(this,vn,null),ke(this,"createClient"),ke(this,"ttlMs"),ke(this,"proxyHandler"),ke(this,"proxyReceivers",new Map),ke(this,"teardownTimeout",null),ke(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)}}vn=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};class CaptureStream{constructor(s){ke(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}})}}function delay(o){return new Promise(s=>setTimeout(s,o))}const isRtcPeer=o=>o!==void 0&&o.capabilities!==void 0&&o.capabilitySet!==void 0;class DataChannel{constructor(s){ke(this,"ready",!1),ke(this,"listeners",[]),ke(this,"openListeners",[]),ke(this,"closeListeners",[]),ke(this,"errorListeners",[]),ke(this,"binaryListeners",[]),ke(this,"error"),ke(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)}}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,lt){this.fn=nt,this.context=rt,this.once=lt||!1}function _e(nt,rt,lt,ut,Ut){if(typeof lt!="function")throw new TypeError("The listener must be a function");var ot=new $(lt,ut||nt,Ut),st=_?_+rt:rt;return nt._events[st]?nt._events[st].fn?nt._events[st]=[nt._events[st],ot]:nt._events[st].push(ot):(nt._events[st]=ot,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,lt;if(this._eventsCount===0)return nt;for(lt in rt=this._events)s.call(rt,lt)&&nt.push(_?lt.slice(1):lt);return Object.getOwnPropertySymbols?nt.concat(Object.getOwnPropertySymbols(rt)):nt},tt.prototype.listeners=function(nt){var rt=_?_+nt:nt,lt=this._events[rt];if(!lt)return[];if(lt.fn)return[lt.fn];for(var ut=0,Ut=lt.length,ot=new Array(Ut);ut{$.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){ke(this,"channel"),ke(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),ke(this,"RESPONSE_SUCCESS_BYTE",0),ke(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")}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}}/*! 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,lt,ut,Ut,ot,st,dt=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,dt++),_[lt*2+1]=Ut,!(lt>j)&&(o.bl_count[Ut]++,ot=0,lt>=tt&&(ot=et[lt-tt]),st=_[lt*2],o.opt_len+=st*(Ut+ot),_e&&(o.static_len+=st*($[lt*2+1]+ot)));if(dt!==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]--,dt-=2}while(dt>0);for(Ut=nt;Ut!==0;Ut--)for(lt=o.bl_count[Ut];lt!==0;)ut=o.heap[--rt],!(ut>j)&&(_[ut*2+1]!==Ut&&(o.opt_len+=(Ut-_[ut*2+1])*_[ut*2],_[ut*2+1]=Ut),lt--)}},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,lt=o.w_mask,ut=o.prev,Ut=o.strstart+MAX_MATCH;let ot=rt[j+et-1],st=rt[j+et];o.prev_length>=o.good_match&&(_>>=2),tt>o.lookahead&&(tt=o.lookahead);do if($=s,!(rt[$+et]!==st||rt[$+et-1]!==ot||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;ot=rt[j+et-1],st=rt[j+et]}}while((s=ut[s<])>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})}`}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),lt=_e.sub(_e.end(nt),_-tt-1),ut=formatTimeFrameText(rt.toLocaleDateString(),lt.toLocaleDateString()),Ut=await queryEvents({...$,eventTypes:o,start:new Date(rt).toISOString(),end:new Date(lt).toISOString()});return{date:ut,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 lt=new Date(nt).toISOString(),ut=rt===_e.length-1?new Date(Date.now()).toISOString():new Date(_e[rt+1]);return getAnnotationCount({...o,start:lt,end:ut},s)}),tt=await Promise.all(et);return _e.map((nt,rt)=>({date:new Date(nt).toISOString(),annotations:tt[rt]}))}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 getRealtimeSessions(){if(!Authentication.token)throw new Error("Not authenticated");const o=defaultRtcClientPool.get();try{return await o.getSessions()}finally{await o.shutdown()}}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 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()}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 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}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}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()}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,lt)=>setTimeout(()=>{et=!0,lt(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(100);const rt=await this.getRemoteDevicePeerId(_e);this.assertNotCancelled(et);let lt;for(let Ut=0;Ut<$&&(lt=await _e.connect(rt),!lt);Ut++)delay(100),this.assertNotCancelled(et);if(!lt)throw new Error(`Session could not be created: exhausted ${$} retries`);let ut=0;for(;!et&&_e.getConnectionStatus(rt)!=="connected";)await delay(100),ut+=1;return this.assertNotCancelled(et),console.debug(`${new Date().toISOString()} :: Connection completed after ${ut} 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(lt=>{console.error("rtcClient cannot shutdown: %o",lt)}),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(){return(await(await fetch(`${FORMANT_API_URL}/v1/admin/command-templates/`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items.map(s=>({name:s.name,id:s.id,command:s.command,description:s.description,parameterEnabled:s.parameterEnabled,parameterValue:s.parameterValue,parameterMeta:s.parameterMeta,enabled:s.enabled,tags:s.tags}))}async sendCommand(s,_,j,$){var _e;const et=(await this.getAvailableCommands()).find(rt=>rt.name===s);if(!et)throw new Error(`Could not find command with name "${s}"`);let tt="";_===void 0?et.parameterEnabled&&et.parameterValue&&(tt=et.parameterValue):tt=_;let nt={value:tt,scrubberTime:(j||new Date).toISOString(),meta:{...et.parameterMeta,...$}};return await fetch(`${FORMANT_API_URL}/v1/admin/commands`,{method:"POST",body:JSON.stringify({commandTemplateId:et.id,organizationId:this.organizationId,deviceId:this.id,command:et.command,parameter:nt,userId:(_e=Authentication.currentUser)==null?void 0:_e.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,_)}}ke(Device,"createDevice",createDevice),ke(Device,"patchDevice",patchDevice),ke(Device,"getDevicesData",getDevicesData),ke(Device,"queryDevicesData",queryDevicesData),ke(Device,"disableDevice",disableDevice);class PeerDevice extends BaseDevice{constructor(s){super(),ke(this,"id"),ke(this,"telemetryStreamActive",!1),ke(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(),lt=[];for(const ut of rt.results){const Ut=parseInt(ut.timestamp),ot=ut.tags.data_type;delete ut.tags.data_type,lt.push({deviceId:this.id,name:ut.stream,points:[[Ut,this.getPointPayload(ot,ut)]],tags:ut.tags,type:ot})}return lt.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,lt=rt.stream;delete rt.stream,this.streamTelemetry[lt]=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(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 Yt=class{static async setDefaultDevice(o){Yt.defaultDeviceId=o}static async getCurrentDevice(){if(!Authentication.token)throw new Error("Not authenticated");if(!Yt.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===Yt.defaultDeviceId),s=o.name,_=new Device(Yt.defaultDeviceId,s,defined$1(Authentication.currentOrganization),o.tags);return Yt.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 Yt.knownContext.push(new WeakRef(s)),s}};let Fleet=Yt;ke(Fleet,"defaultDeviceId"),ke(Fleet,"knownContext",[]),ke(Fleet,"createFleet",createFleet),ke(Fleet,"listFleets",listFleets),ke(Fleet,"getFleet",getFleet),ke(Fleet,"patchFleet",patchFleet),ke(Fleet,"deleteFleet",deleteFleet),ke(Fleet,"addDeviceToFleet",addDeviceToFleet),ke(Fleet,"getFleetDevices",getFleetDevices),ke(Fleet,"aggregateTelemetry",aggregateTelemetry),ke(Fleet,"createShareLink",createShareLink),ke(Fleet,"eventsCounter",eventsCounter),ke(Fleet,"getAnalyticStreams",getAnalyticStreams),ke(Fleet,"getAnalyticsModules",getAnalyticsModules),ke(Fleet,"getAnalyticsRows",getAnalyticsRows),ke(Fleet,"getAnnotationCount",getAnnotationCount),ke(Fleet,"getAnnotationCountByIntervals",getAnnotationCountByIntervals),ke(Fleet,"getCurrentGroup",getCurrentGroup),ke(Fleet,"getDevices",getDevices),ke(Fleet,"getEvent",getEvent),ke(Fleet,"getFileUrl",getFileUrl),ke(Fleet,"getInterventions",getInterventions),ke(Fleet,"getLatestTelemetry",getLatestTelemetry),ke(Fleet,"getOnlineDevices",getOnlineDevices),ke(Fleet,"getPeers",getPeers),ke(Fleet,"getRealtimeDevices",getRealtimeDevices),ke(Fleet,"getRealtimeSessions",getRealtimeSessions),ke(Fleet,"getStreams",getStreams),ke(Fleet,"getTaskReportRows",getTaskReportRows),ke(Fleet,"getTaskReportTables",getTaskReportTables),ke(Fleet,"getTelemetry",getTelemetry),ke(Fleet,"getViews",getViews),ke(Fleet,"patchStream",patchStream),ke(Fleet,"patchView",patchView),ke(Fleet,"queryAnalytics",queryAnalytics),ke(Fleet,"queryDevices",queryDevices),ke(Fleet,"queryEvents",queryEvents),ke(Fleet,"queryTelemetry",queryTelemetry),ke(Fleet,"getAllEventTriggerGroup",getAllEventTriggerGroup),ke(Fleet,"getEventTriggerGroup",getEventTriggerGroup),ke(Fleet,"patchEventTriggergroup",patchEventTriggerGroup);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{}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;_=0&&(Qt._idleTimeoutId=setTimeout(function(){Qt._onTimeout&&Qt._onTimeout()},Bt))},nt(140),tt.setImmediate=typeof self<"u"&&self.setImmediate||it!==void 0&&it.setImmediate||this&&this.setImmediate,tt.clearImmediate=typeof self<"u"&&self.clearImmediate||it!==void 0&&it.clearImmediate||this&&this.clearImmediate}).call(this,nt(6))},function(et,tt,nt){(function(it){it===void 0||!it.version||it.version.indexOf("v0.")===0||it.version.indexOf("v1.")===0&&it.version.indexOf("v1.8.")!==0?et.exports={nextTick:function(ot,Ut,Ft,Qt){if(typeof ot!="function")throw new TypeError('"callback" argument must be a function');var Bt,Vt,Wt=arguments.length;switch(Wt){case 0:case 1:return it.nextTick(ot);case 2:return it.nextTick(function(){ot.call(null,Ut)});case 3:return it.nextTick(function(){ot.call(null,Ut,Ft)});case 4:return it.nextTick(function(){ot.call(null,Ut,Ft,Qt)});default:for(Bt=new Array(Wt-1),Vt=0;Vt0&&arguments[0]!==void 0?arguments[0]:{};ot.call(this,{objectMode:!0,highWaterMark:Bt.highWaterMark}),this.format=Bt.format,this.level=Bt.level,this.handleExceptions=Bt.handleExceptions,this.handleRejections=Bt.handleRejections,this.silent=Bt.silent,Bt.log&&(this.log=Bt.log),Bt.logv&&(this.logv=Bt.logv),Bt.close&&(this.close=Bt.close),this.once("pipe",function(Vt){Qt.levels=Vt.levels,Qt.parent=Vt}),this.once("unpipe",function(Vt){Vt===Qt.parent&&(Qt.parent=null,Qt.close&&Qt.close())})};it.inherits(Ft,ot),Ft.prototype._write=function(Qt,Bt,Vt){if(this.silent||Qt.exception===!0&&!this.handleExceptions)return Vt(null);var Wt=this.level||this.parent&&this.parent.level;if(!Wt||this.levels[Wt]>=this.levels[Qt[Ut]]){if(Qt&&!this.format)return this.log(Qt,Vt);var Xt=void 0,Zt=void 0;try{Zt=this.format.transform(Object.assign({},Qt),this.format.options)}catch(Yt){Xt=Yt}if(Xt||!Zt){if(Vt(),Xt)throw Xt;return}return this.log(Zt,Vt)}return Vt(null)},Ft.prototype._writev=function(Qt,Bt){if(this.logv){var Vt=Qt.filter(this._accept,this);return Vt.length?this.logv(Vt,Bt):Bt(null)}for(var Wt=0;Wt=this.levels[Bt[Ut]])||!this.handleExceptions&&Bt.exception===!0)},Ft.prototype._nop=function(){},et.exports.LegacyTransportStream=nt(147)},function(et,tt,nt){var it,ot=typeof Reflect=="object"?Reflect:null,Ut=ot&&typeof ot.apply=="function"?ot.apply:function(en,tn,ln){return Function.prototype.apply.call(en,tn,ln)};it=ot&&typeof ot.ownKeys=="function"?ot.ownKeys:Object.getOwnPropertySymbols?function(en){return Object.getOwnPropertyNames(en).concat(Object.getOwnPropertySymbols(en))}:function(en){return Object.getOwnPropertyNames(en)};var Ft=Number.isNaN||function(en){return en!=en};function Qt(){Qt.init.call(this)}et.exports=Qt,Qt.EventEmitter=Qt,Qt.prototype._events=void 0,Qt.prototype._eventsCount=0,Qt.prototype._maxListeners=void 0;var Bt=10;function Vt(en){return en._maxListeners===void 0?Qt.defaultMaxListeners:en._maxListeners}function Wt(en,tn,ln,nn){var sn,Kt,dn,Qn;if(typeof ln!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof ln);if((Kt=en._events)===void 0?(Kt=en._events=Object.create(null),en._eventsCount=0):(Kt.newListener!==void 0&&(en.emit("newListener",tn,ln.listener?ln.listener:ln),Kt=en._events),dn=Kt[tn]),dn===void 0)dn=Kt[tn]=ln,++en._eventsCount;else if(typeof dn=="function"?dn=Kt[tn]=nn?[ln,dn]:[dn,ln]:nn?dn.unshift(ln):dn.push(ln),(sn=Vt(en))>0&&dn.length>sn&&!dn.warned){dn.warned=!0;var En=new Error("Possible EventEmitter memory leak detected. "+dn.length+" "+String(tn)+" listeners added. Use emitter.setMaxListeners() to increase limit");En.name="MaxListenersExceededWarning",En.emitter=en,En.type=tn,En.count=dn.length,Qn=En,console&&console.warn&&console.warn(Qn)}return en}function Xt(){for(var en=[],tn=0;tn0&&(Kt=tn[0]),Kt instanceof Error)throw Kt;var dn=new Error("Unhandled error."+(Kt?" ("+Kt.message+")":""));throw dn.context=Kt,dn}var Qn=sn[en];if(Qn===void 0)return!1;if(typeof Qn=="function")Ut(Qn,this,tn);else{var En=Qn.length,an=Gt(Qn,En);for(ln=0;ln=0;Kt--)if(ln[Kt]===tn||ln[Kt].listener===tn){dn=ln[Kt].listener,sn=Kt;break}if(sn<0)return this;sn===0?ln.shift():function(Qn,En){for(;En+1=0;nn--)this.removeListener(en,tn[nn]);return this},Qt.prototype.listeners=function(en){return Yt(this,en,!0)},Qt.prototype.rawListeners=function(en){return Yt(this,en,!1)},Qt.listenerCount=function(en,tn){return typeof en.listenerCount=="function"?en.listenerCount(tn):Mt.call(en,tn)},Qt.prototype.listenerCount=Mt,Qt.prototype.eventNames=function(){return this._eventsCount>0?it(this._events):[]}},function(et,tt,nt){var it=nt(146).Buffer,ot=it.isEncoding||function(Mt){switch((Mt=""+Mt)&&Mt.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 Ut(Mt){var Gt;switch(this.encoding=function(en){var tn=function(ln){if(!ln)return"utf8";for(var nn;;)switch(ln){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 ln;default:if(nn)return;ln=(""+ln).toLowerCase(),nn=!0}}(en);if(typeof tn!="string"&&(it.isEncoding===ot||!ot(en)))throw new Error("Unknown encoding: "+en);return tn||en}(Mt),this.encoding){case"utf16le":this.text=Bt,this.end=Vt,Gt=4;break;case"utf8":this.fillLast=Qt,Gt=4;break;case"base64":this.text=Wt,this.end=Xt,Gt=3;break;default:return this.write=Zt,void(this.end=Yt)}this.lastNeed=0,this.lastTotal=0,this.lastChar=it.allocUnsafe(Gt)}function Ft(Mt){return Mt<=127?0:Mt>>5==6?2:Mt>>4==14?3:Mt>>3==30?4:Mt>>6==2?-1:-2}function Qt(Mt){var Gt=this.lastTotal-this.lastNeed,en=function(tn,ln,nn){if((192&ln[0])!=128)return tn.lastNeed=0,"�";if(tn.lastNeed>1&&ln.length>1){if((192&ln[1])!=128)return tn.lastNeed=1,"�";if(tn.lastNeed>2&&ln.length>2&&(192&ln[2])!=128)return tn.lastNeed=2,"�"}}(this,Mt);return en!==void 0?en:this.lastNeed<=Mt.length?(Mt.copy(this.lastChar,Gt,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(Mt.copy(this.lastChar,Gt,0,Mt.length),void(this.lastNeed-=Mt.length))}function Bt(Mt,Gt){if((Mt.length-Gt)%2==0){var en=Mt.toString("utf16le",Gt);if(en){var tn=en.charCodeAt(en.length-1);if(tn>=55296&&tn<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=Mt[Mt.length-2],this.lastChar[1]=Mt[Mt.length-1],en.slice(0,-1)}return en}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=Mt[Mt.length-1],Mt.toString("utf16le",Gt,Mt.length-1)}function Vt(Mt){var Gt=Mt&&Mt.length?this.write(Mt):"";if(this.lastNeed){var en=this.lastTotal-this.lastNeed;return Gt+this.lastChar.toString("utf16le",0,en)}return Gt}function Wt(Mt,Gt){var en=(Mt.length-Gt)%3;return en===0?Mt.toString("base64",Gt):(this.lastNeed=3-en,this.lastTotal=3,en===1?this.lastChar[0]=Mt[Mt.length-1]:(this.lastChar[0]=Mt[Mt.length-2],this.lastChar[1]=Mt[Mt.length-1]),Mt.toString("base64",Gt,Mt.length-en))}function Xt(Mt){var Gt=Mt&&Mt.length?this.write(Mt):"";return this.lastNeed?Gt+this.lastChar.toString("base64",0,3-this.lastNeed):Gt}function Zt(Mt){return Mt.toString(this.encoding)}function Yt(Mt){return Mt&&Mt.length?this.write(Mt):""}tt.StringDecoder=Ut,Ut.prototype.write=function(Mt){if(Mt.length===0)return"";var Gt,en;if(this.lastNeed){if((Gt=this.fillLast(Mt))===void 0)return"";en=this.lastNeed,this.lastNeed=0}else en=0;return en=0?(dn>0&&(ln.lastNeed=dn-1),dn):--Kt=0?(dn>0&&(ln.lastNeed=dn-2),dn):--Kt=0?(dn>0&&(dn===2?dn=0:ln.lastNeed=dn-3),dn):0}(this,Mt,Gt);if(!this.lastNeed)return Mt.toString("utf8",Gt);this.lastTotal=en;var tn=Mt.length-(en-this.lastNeed);return Mt.copy(this.lastChar,0,tn),Mt.toString("utf8",Gt,tn)},Ut.prototype.fillLast=function(Mt){if(this.lastNeed<=Mt.length)return Mt.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);Mt.copy(this.lastChar,this.lastTotal-this.lastNeed,0,Mt.length),this.lastNeed-=Mt.length}},function(et,tt,nt){var it=nt(16),ot=Object.keys||function(Mt){var Gt=[];for(var en in Mt)Gt.push(en);return Gt};et.exports=Xt;var Ut=nt(17);Ut.inherits=nt(7);var Ft=nt(69),Qt=nt(48);Ut.inherits(Xt,Ft);for(var Bt=ot(Qt.prototype),Vt=0;Vt(Ln=Ln||0)&&(Ln=Math.max(Ln+ir,0));LnJn?1:0}e:{var Cn=Wt.navigator;if(Cn){var kn=Cn.userAgent;if(kn){Vn=kn;break e}}Vn=""}var hn="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function Fn(Bn){var Jn=1;Bn=Bn.split(":");for(var Ln=[];0parseFloat(Ir)){Wn=String(Rr);break e}}Wn=Ir}var wr,br={};function Nr(Bn){return function(Jn,Ln){var Yn=br;return Object.prototype.hasOwnProperty.call(Yn,Jn)?Yn[Jn]:Yn[Jn]=Ln(Jn)}(Bn,function(){for(var Jn=0,Ln=Mn(String(Wn)).split("."),Yn=Mn(String(Bn)).split("."),ir=Math.max(Ln.length,Yn.length),lr=0;Jn==0&&lr=Bn.keyCode)&&(Bn.keyCode=-1)}catch{}};var as="closure_listenable_"+(1e6*Math.random()|0),$o=0;function hs(Bn,Jn,Ln,Yn,ir){this.listener=Bn,this.proxy=null,this.src=Jn,this.type=Ln,this.capture=!!Yn,this.A=ir,this.key=++$o,this.s=this.v=!1}function zs(Bn){Bn.s=!0,Bn.listener=null,Bn.proxy=null,Bn.src=null,Bn.A=null}function ks(Bn){this.src=Bn,this.a={},this.b=0}function ms(Bn,Jn){var Ln=Jn.type;if(Ln in Bn.a){var Yn,ir=Bn.a[Ln],lr=bn(ir,Jn);(Yn=0<=lr)&&Array.prototype.splice.call(ir,lr,1),Yn&&(zs(Jn),Bn.a[Ln].length==0&&(delete Bn.a[Ln],Bn.b--))}}function Ao(Bn,Jn,Ln,Yn){for(var ir=0;irLn.keyCode||Ln.returnValue!=null)){e:{var ir=!1;if(Ln.keyCode==0)try{Ln.keyCode=-1;break e}catch{ir=!0}(ir||Ln.returnValue==null)&&(Ln.returnValue=!0)}for(Ln=[],ir=Jn.a;ir;ir=ir.parentNode)Ln.push(ir);for(Bn=Bn.type,ir=Ln.length-1;0<=ir;ir--){Jn.a=Ln[ir];var lr=Dn(Ln[ir],Bn,!0,Jn);Yn=Yn&&lr}for(ir=0;ir>>0);function cr(Bn){return Yt(Bn)=="function"?Bn:(Bn[sr]||(Bn[sr]=function(Jn){return Bn.handleEvent(Jn)}),Bn[sr])}function nr(){Ar.call(this),this.f=new ks(this),this.N=this}function Kn(Bn,Jn){Bn=Bn.N;var Ln=Jn.type||Jn;if(typeof Jn=="string")Jn=new wo(Jn,Bn);else if(Jn instanceof wo)Jn.target=Jn.target||Bn;else{var Yn=Jn;(function(ir,lr){for(var qn,or,Fr=1;Fr=oo(this).value)for(Yt(Jn)=="function"&&(Jn=Jn()),Bn=new Gr(Bn,String(Jn),this.f),Ln&&(Bn.a=Ln),Ln=this;Ln;)Ln=Ln.a};var po,Qo={},Ro=null;function no(Bn,Jn){Bn&&Bn.log(eo,Jn,void 0)}function Ko(){}function ko(Bn){var Jn;return(Jn=Bn.a)||(Jn={},Sl(Bn)&&(Jn[0]=!0,Jn[1]=!0),Jn=Bn.a=Jn),Jn}function fs(){}function Ys(Bn){return(Bn=Sl(Bn))?new ActiveXObject(Bn):new XMLHttpRequest}function Sl(Bn){if(!Bn.b&&typeof XMLHttpRequest>"u"&&typeof ActiveXObject<"u"){for(var Jn=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],Ln=0;Lnqn?null:typeof lr=="string"?lr.charAt(qn):lr[qn]}((Ln=new gs(Bn.headers)).f()),ir=Wt.FormData&&Jn instanceof Wt.FormData;!(0<=bn(zl,"POST"))||Yn||ir||Ln.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8"),Ln.forEach(function(lr,qn){this.a.setRequestHeader(qn,lr)},Bn),Bn.j&&(Bn.a.responseType=Bn.j),"withCredentials"in Bn.a&&Bn.a.withCredentials!==Bn.H&&(Bn.a.withCredentials=Bn.H);try{Yl(Bn),0>4),Kr!=64&&(qn(vr<<4&240|Kr>>2),Vr!=64&&qn(Kr<<6&192|Vr))}}(Bn,function(lr){Yn[ir++]=lr}),Yn.subarray(0,ir)}function Gl(){if(!Bs){Bs={};for(var Bn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),Jn=["+/=","+/","-_=","-_.","-_"],Ln=0;5>Ln;Ln++){var Yn=Bn.concat(Jn[Ln].split(""));_l[Ln]=Yn;for(var ir=0;ir2*or.c&&yl(or)),1/0===qn&&(qn=0),0(qn=ir.indexOf("#"))&&(qn=ir.length),0>(or=ir.indexOf("?"))||or>qn?(or=qn,Fr=""):Fr=ir.substring(or+1,qn),qn=(ir=[ir.substr(0,or),Fr,ir.substr(qn)])[1],ir[1]=vr?qn?qn+"&"+vr:vr:qn,ir=ir[0]+(ir[1]?"?"+ir[1]:"")+ir[2])):ir.a("$httpHeaders",qn))}for(Yn=(Jn=(0,Yn.a)(Jn.getRequestMessage())).length,vr=[0,0,0,0],qn=new Uint8Array(5+Yn),or=3;0<=or;or--)vr[or]=Yn%256,Yn>>>=8;if(qn.set(new Uint8Array(vr),1),qn.set(Jn,5),Jn=qn,Bn.a=="text"){var Kr;for(Bn=Jn,Kr===void 0&&(Kr=0),Gl(),Kr=_l[Kr],Jn=[],Yn=0;Yn>2,Ur=(3&Ur)<<4|Vr>>4,Vr=(15&Vr)<<2|(Fr=(qn=Yn+2>6,Fr&=63,qn||(Fr=64,vr||(Vr=64)),Jn.push(Kr[or],Kr[Ur],Kr[Vr]||"",Kr[Fr]||"")}Jn=Jn.join("")}else Bn.a=="binary"&&(Ln.j="arraybuffer");return rp(Ln,ir,Jn),lr}function Bu(Bn,Jn,Ln){var Yn=null,ir=!1;Bn.on("data",function(lr){Yn=lr}),Bn.on("error",function(lr){lr.code==0||ir||(ir=!0,Jn(lr,null))}),Bn.on("status",function(lr){lr.code==0||ir?Ln&&Jn(null,null,lr):(ir=!0,Jn({code:lr.code,message:lr.details,metadata:lr.metadata},null))}),Ln&&Bn.on("metadata",function(lr){Jn(null,null,null,lr)}),Bn.on("end",function(){ir||(Yn==null?Jn({code:2,message:"Incomplete response"}):Jn(null,Yn)),Ln&&Jn(null,null)})}function Xl(Bn,Jn){var Ln=Bn;return Jn.forEach(function(Yn){var ir=Ln;Ln=function(lr){return Yn.intercept(lr,ir)}}),Ln}na.prototype.on=function(Bn,Jn){return Bn=="data"?this.b.push(Jn):Bn=="status"?this.h.push(Jn):Bn=="metadata"?this.g.push(Jn):Bn=="end"?this.c.push(Jn):Bn=="error"&&this.f.push(Jn),this},na.prototype.removeListener=function(Bn,Jn){return Bn=="data"?As(this.b,Jn):Bn=="status"?As(this.h,Jn):Bn=="metadata"?As(this.g,Jn):Bn=="end"?As(this.c,Jn):Bn=="error"&&As(this.f,Jn),this},na.prototype.cancel=function(){this.j=!0,this.a.abort()},na.prototype.cancel=na.prototype.cancel,na.prototype.removeListener=na.prototype.removeListener,na.prototype.on=na.prototype.on,No.prototype.P=function(Bn,Jn,Ln,Yn,ir){var lr=this;Yn=En(Bn,Jn,"unary",Yn);var qn=Bn.substr(0,Bn.length-Yn.name.length);return Bu(Bn=Xl(function(or){return Tl(lr,or,qn)},this.b).call(this,Qn(Yn,Jn,Ln)),ir,!1),new an(Bn)},No.prototype.M=function(Bn,Jn,Ln,Yn){var ir=this;Yn=En(Bn,Jn,"unary",Yn);var lr=Bn.substr(0,Bn.length-Yn.name.length);return Xl(function(qn){return new Promise(function(or,Fr){var Ur,vr,Kr;Bu(Tl(ir,qn,lr),function(Vr,Cr,so,uo){Vr?Fr(Vr):Cr?Kr=Cr:so?vr=so:uo?Ur=uo:(Vr=qn.getMethodDescriptor(),or(new Kt(Kr,Vr,Cr=(Cr=Ur)===void 0?{}:Cr,vr===void 0?null:vr)))},!0)})},this.g).call(this,Qn(Yn,Jn,Ln)).then(function(qn){return qn.getResponseMessage()})},No.prototype.unaryCall=function(Bn,Jn,Ln,Yn){return this.M(Bn,Jn,Ln,Yn)},No.prototype.R=function(Bn,Jn,Ln,Yn){var ir=this;Yn=En(Bn,Jn,"server_streaming",Yn);var lr=Bn.substr(0,Bn.length-Yn.name.length);return Xl(function(qn){return Tl(ir,qn,lr)},this.b).call(this,Qn(Yn,Jn,Ln))},No.prototype.serverStreaming=No.prototype.R,No.prototype.unaryCall=No.prototype.unaryCall,No.prototype.thenableCall=No.prototype.M,No.prototype.rpcCall=No.prototype.P,et.exports.AbstractClientBase={MethodInfo:function(Bn,Jn,Ln,Yn,ir){this.name=Yn,this.b=ir,this.f=Bn,this.a=Jn,this.c=Ln}},et.exports.GrpcWebClientBase=No,et.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},et.exports.MethodDescriptor=dn,et.exports.MethodType={UNARY:"unary",SERVER_STREAMING:"server_streaming"}}).call(this,nt(6))},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0}),tt.isAsyncIterable=tt.isAsyncGenerator=tt.isAsync=void 0;var it,ot=nt(151),Ut=(it=ot)&&it.__esModule?it:{default:it};function Ft(Qt){return Qt[Symbol.toStringTag]==="AsyncFunction"}tt.default=function(Qt){if(typeof Qt!="function")throw new Error("expected a function");return Ft(Qt)?(0,Ut.default)(Qt):Qt},tt.isAsync=Ft,tt.isAsyncGenerator=function(Qt){return Qt[Symbol.toStringTag]==="AsyncGenerator"},tt.isAsyncIterable=function(Qt){return typeof Qt[Symbol.asyncIterator]=="function"}},function(et,tt,nt){var it={};function ot(Ft,Qt,Bt){Bt||(Bt=Error);var Vt=function(Wt){var Xt,Zt;function Yt(Mt,Gt,en){return Wt.call(this,function(tn,ln,nn){return typeof Qt=="string"?Qt:Qt(tn,ln,nn)}(Mt,Gt,en))||this}return Zt=Wt,(Xt=Yt).prototype=Object.create(Zt.prototype),Xt.prototype.constructor=Xt,Xt.__proto__=Zt,Yt}(Bt);Vt.prototype.name=Bt.name,Vt.prototype.code=Ft,it[Ft]=Vt}function Ut(Ft,Qt){if(Array.isArray(Ft)){var Bt=Ft.length;return Ft=Ft.map(function(Vt){return String(Vt)}),Bt>2?"one of ".concat(Qt," ").concat(Ft.slice(0,Bt-1).join(", "),", or ")+Ft[Bt-1]:Bt===2?"one of ".concat(Qt," ").concat(Ft[0]," or ").concat(Ft[1]):"of ".concat(Qt," ").concat(Ft[0])}return"of ".concat(Qt," ").concat(String(Ft))}ot("ERR_INVALID_OPT_VALUE",function(Ft,Qt){return'The value "'+Qt+'" is invalid for option "'+Ft+'"'},TypeError),ot("ERR_INVALID_ARG_TYPE",function(Ft,Qt,Bt){var Vt,Wt,Xt;if(typeof Qt=="string"&&(Wt="not ",Qt.substr(0,Wt.length)===Wt)?(Vt="must not be",Qt=Qt.replace(/^not /,"")):Vt="must be",function(Yt,Mt,Gt){return(Gt===void 0||Gt>Yt.length)&&(Gt=Yt.length),Yt.substring(Gt-Mt.length,Gt)===Mt}(Ft," argument"))Xt="The ".concat(Ft," ").concat(Vt," ").concat(Ut(Qt,"type"));else{var Zt=function(Yt,Mt,Gt){return typeof Gt!="number"&&(Gt=0),!(Gt+Mt.length>Yt.length)&&Yt.indexOf(Mt,Gt)!==-1}(Ft,".")?"property":"argument";Xt='The "'.concat(Ft,'" ').concat(Zt," ").concat(Vt," ").concat(Ut(Qt,"type"))}return Xt+=". Received type ".concat(typeof Bt)},TypeError),ot("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),ot("ERR_METHOD_NOT_IMPLEMENTED",function(Ft){return"The "+Ft+" method is not implemented"}),ot("ERR_STREAM_PREMATURE_CLOSE","Premature close"),ot("ERR_STREAM_DESTROYED",function(Ft){return"Cannot call "+Ft+" after a stream was destroyed"}),ot("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),ot("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),ot("ERR_STREAM_WRITE_AFTER_END","write after end"),ot("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),ot("ERR_UNKNOWN_ENCODING",function(Ft){return"Unknown encoding: "+Ft},TypeError),ot("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),et.exports.codes=it},function(et,tt,nt){(function(it){var ot=Object.keys||function(Yt){var Mt=[];for(var Gt in Yt)Mt.push(Gt);return Mt};et.exports=Wt;var Ut=nt(77),Ft=nt(81);nt(7)(Wt,Ut);for(var Qt=ot(Ft.prototype),Bt=0;Bt`${Wt.get("app-id")}`.startsWith("formant/")?{}:Ut},Vt)),this.endpoint=Bt}getHeaders(){return Object.assign(Object.assign({},Ft.headers),{"App-ID":`formant/${ot.a}`,"App-Version":ot.j})}}Ft.headers={}},function(et,tt,nt){nt(226),et.exports={encode:it=>new TextEncoder().encode(it),decode:it=>new TextDecoder().decode(it)}},function(et,tt,nt){nt.d(tt,"a",function(){return Ut});const it=["password","secret","token","key","buffer","authorization"],ot=Ft=>it.some(Qt=>Ft.toLowerCase().includes(Qt.toLowerCase()));function Ut(Ft,Qt=new WeakSet){return Qt.has(Ft)?"[ RECURSIVE ]":Array.isArray(Ft)?(Qt.add(Ft),Ft.map(Vt=>Ut(Vt,Qt))):!(Bt=Ft)||typeof Bt!="object"&&typeof Bt!="function"?typeof Ft=="string"&&ot(Ft)?"[ REDACTED ]":Ft:(Qt.add(Ft),Object.keys(Ft).reduce((Vt,Wt)=>(Vt[Wt]=ot(Wt)?"[ REDACTED ]":Ut(Ft[Wt],Qt),Vt),{}));var Bt}},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(it,ot=it.length){if(!ot)throw new Error("arity is undefined");return function(...Ut){return typeof Ut[ot-1]=="function"?it.apply(this,Ut):new Promise((Ft,Qt)=>{Ut[ot-1]=(Bt,...Vt)=>{if(Bt)return Qt(Bt);Ft(Vt.length>1?Vt:Vt[0])},it.apply(this,Ut)})}},et.exports=tt.default},function(et,tt,nt){(tt=et.exports=nt(69)).Stream=tt,tt.Readable=tt,tt.Writable=nt(48),tt.Duplex=nt(23),tt.Transform=nt(72),tt.PassThrough=nt(164)},function(et,tt,nt){(tt=et.exports=nt(77)).Stream=tt,tt.Readable=tt,tt.Writable=nt(81),tt.Duplex=nt(27),tt.Transform=nt(82),tt.PassThrough=nt(183),tt.finished=nt(49),tt.pipeline=nt(184)},function(et,tt,nt){et.exports=function(it){return it}},function(et,tt){et.exports=it,it.default=it,it.stable=Ut,it.stableStringify=Ut;var nt=[];function it(Ft,Qt,Bt){(function Xt(Zt,Yt,Mt,Gt){var en;if(typeof Zt=="object"&&Zt!==null){for(en=0;enQt?1:0}function Ut(Ft,Qt,Bt){for(var Vt=function Zt(Yt,Mt,Gt,en){var tn;if(typeof Yt=="object"&&Yt!==null){for(tn=0;tnln.validateHeaders?ln.validateHeaders(nn):{},this.verbose=ln.verbose!==!1,ln.retries!==void 0&&!(ln.retries>=0))throw new Error("retries must be positive or zero");if(this.configuredRetries=ln.retries,ln.timeoutMs!==void 0&&!(ln.timeoutMs>0))throw new Error("timeoutMs must be positive");if(this.timeoutMs=ln.timeoutMs,ln.maxBackoffDelayMs!==void 0&&!(ln.maxBackoffDelayMs>0))throw new Error("maxBackoffDelayMs must be positive");this.maxBackoffDelayMs=ln.maxBackoffDelayMs||30*Ut.a.second,this.json=ln.json!==!1}getRetries(){return this.configuredRetries!==void 0?this.configuredRetries:this.getConstructor().retries}getHeaders(){return{}}fetch(tn,ln={}){return Zt(this,void 0,void 0,function*(){return(yield this.fetchVerbose(tn,ln)).body})}fetchVerbose(tn,ln={}){return Zt(this,void 0,void 0,function*(){let nn=100*Ut.a.millisecond,sn=0;const Kt=this.timeoutMs!==void 0?new Date().getTime()+this.timeoutMs:void 0,dn=Kt?()=>Math.max(Kt-new Date().getTime(),0):void 0;for(;;)try{return yield this.doFetch(tn,ln,dn)}catch(Qn){const En=Qn,an=Object(Vt.a)(En,Ft);if((dn==null?void 0:dn())===0||sn===this.getRetries()||!an.retryable)throw an;sn++,nn=Math.min(...dn?[dn()]:[],nn*(2+.1*(Math.random()-.5)),this.maxBackoffDelayMs),yield Object(Qt.a)(nn),this.verbose&&Bt.a.warn(`Connection failure, retrying. Error: ${En.cause.message}`,{url:En.url,error:En.cause,attempt:sn})}})}doFetch(tn,ln,nn){return Zt(this,void 0,void 0,function*(){const{token:sn,json:Kt=this.json,allowUnsafeRetries:dn}=ln,Qn=Yt(ln,["token","json","allowUnsafeRetries"]),En=(Qn.method||"GET").toUpperCase(),an=this.endpoint!==void 0?`${this.endpoint}${tn?`/${tn}`:""}`:tn,rn=new AbortController;let gn;if(nn){const un=nn();un>0?gn=setTimeout(()=>{rn.abort()},un):rn.abort()}try{let un;yield Promise.race([this.getConstructor().waitForConnectivity(),new Promise(fn=>{un=setTimeout(fn,nn?Math.min(Ut.a.minute,nn()):Ut.a.minute)})]),un&&clearTimeout(un);const Un=yield ot()(an,Object.assign(Object.assign(Object.assign({},Qn),Qn.body!==void 0?{body:Kt!==!1?JSON.stringify(Qn.body):Qn.body}:{}),{headers:Object.assign(Object.assign(Object.assign(Object.assign({},Kt!==!1?{"Content-Type":"application/json"}:{}),this.getHeaders()),Qn.headers||{}),sn!==void 0?{Authorization:`Bearer ${sn}`}:{}),signal:rn.signal})),_n=Un.headers.get("content-type")||"",vn=_n&&_n.startsWith("application/json"),pn=vn?yield Un.json():yield Un.text(),Rn=()=>new Wt.a(En,an,Qn.body,Un.status,Un.headers,pn,pn&&pn.validationErrors||{});if(!Un.ok)throw this.verbose&&Bt.a[Un.status>=500?"warn":"info"]("Response error",{method:En,url:an,statusCode:Un.status}),Rn();const Sn=this.validateHeaders(Un.headers);if(Object.keys(Sn).length!==0)throw new Xt(Sn,Rn());if(Un.status===204)return{body:void 0,headers:Un.headers};if(Kt&&!vn)throw new Error(`Response is not JSON: ${JSON.stringify(pn)}`);return{body:pn,headers:Un.headers}}catch(un){const Un=un,_n=dn||Mt.has(En);if(Un.message==="Network request failed")throw new Ft(Un,an,_n);if(Un.type==="system"&&["EAI_AGAIN","ECONNREFUSED","EHOSTUNREACH","ENOTFOUND"].find(Sn=>Sn===Un.code))throw new Ft(Un,an,!0);if(Un.type==="system"&&["ETIMEDOUT","ECONNRESET","ESOCKETTIMEDOUT","EPIPE"].find(Sn=>Sn===Un.code))throw new Ft(Un,an,_n);if(Un.name==="AbortError")throw new Ft(Un,an,_n);const vn=Object(Vt.a)(Un,Wt.a),{statusCode:pn}=vn;if(pn===408||pn===429||pn===502||pn===503||pn===504)throw this.verbose&&!_n&&Bt.a.warn("Potentially unsafe retry"),new Ft(Un,an,!0);const Rn=this.validateHeaders(vn.headers);throw Object.keys(Rn).length!==0?new Xt(Rn,vn):(yield this.getConstructor().onResponseError(vn),Un)}finally{gn&&clearTimeout(gn)}})}getConstructor(){return Object.getPrototypeOf(this).constructor}}Gt.retries=8,Gt.waitForConnectivity=()=>Zt(void 0,void 0,void 0,function*(){}),Gt.onResponseError=()=>Zt(void 0,void 0,void 0,function*(){})},function(et,tt,nt){function it(Xt,Zt){if(!(Xt instanceof Zt))throw new TypeError("Cannot call a class as a function")}function ot(Xt,Zt){for(var Yt=0;Yt0&&arguments[0]!==void 0?arguments[0]:{};it(this,Xt),Gt.colors&&this.addColors(Gt.colors),this.options=Gt}var Zt,Yt,Mt;return Zt=Xt,Mt=[{key:"addColors",value:function(Gt){var en=Object.keys(Gt).reduce(function(tn,ln){return tn[ln]=Vt.test(Gt[ln])?Gt[ln].split(Vt):Gt[ln],tn},{});return Xt.allColors=Object.assign({},Xt.allColors||{},en),Xt.allColors}}],(Yt=[{key:"addColors",value:function(Gt){return Xt.addColors(Gt)}},{key:"colorize",value:function(Gt,en,tn){if(tn===void 0&&(tn=en),!Array.isArray(Xt.allColors[Gt]))return Ut[Xt.allColors[Gt]](tn);for(var ln=0,nn=Xt.allColors[Gt].length;ln=0&&it.length%1==0},et.exports=tt.default},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0}),tt.default={},et.exports=tt.default},function(et,tt,nt){var it=nt(5),ot=it.Buffer;function Ut(Qt,Bt){for(var Vt in Qt)Bt[Vt]=Qt[Vt]}function Ft(Qt,Bt,Vt){return ot(Qt,Bt,Vt)}ot.from&&ot.alloc&&ot.allocUnsafe&&ot.allocUnsafeSlow?et.exports=it:(Ut(it,tt),tt.Buffer=Ft),Ut(ot,Ft),Ft.from=function(Qt,Bt,Vt){if(typeof Qt=="number")throw new TypeError("Argument must not be a number");return ot(Qt,Bt,Vt)},Ft.alloc=function(Qt,Bt,Vt){if(typeof Qt!="number")throw new TypeError("Argument must be a number");var Wt=ot(Qt);return Bt!==void 0?typeof Vt=="string"?Wt.fill(Bt,Vt):Wt.fill(Bt):Wt.fill(0),Wt},Ft.allocUnsafe=function(Qt){if(typeof Qt!="number")throw new TypeError("Argument must be a number");return ot(Qt)},Ft.allocUnsafeSlow=function(Qt){if(typeof Qt!="number")throw new TypeError("Argument must be a number");return it.SlowBuffer(Qt)}},function(et,tt,nt){(function(it,ot,Ut){var Ft=nt(16);function Qt(rn){var gn=this;this.next=null,this.entry=null,this.finish=function(){(function(un,Un,_n){var vn=un.entry;for(un.entry=null;vn;){var pn=vn.callback;Un.pendingcb--,pn(_n),vn=vn.next}Un.corkedRequestsFree?Un.corkedRequestsFree.next=un:Un.corkedRequestsFree=un})(gn,rn)}}et.exports=nn;var Bt,Vt=!it.browser&&["v0.10","v0.9."].indexOf(it.version.slice(0,5))>-1?ot:Ft.nextTick;nn.WritableState=ln;var Wt=nt(17);Wt.inherits=nt(7);var Xt={deprecate:nt(43)},Zt=nt(70),Yt=nt(47).Buffer,Mt=Ut.Uint8Array||function(){},Gt,en=nt(71);function tn(){}function ln(rn,gn){Bt=Bt||nt(23),rn=rn||{};var un=gn instanceof Bt;this.objectMode=!!rn.objectMode,un&&(this.objectMode=this.objectMode||!!rn.writableObjectMode);var Un=rn.highWaterMark,_n=rn.writableHighWaterMark,vn=this.objectMode?16:16384;this.highWaterMark=Un||Un===0?Un:un&&(_n||_n===0)?_n:vn,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var pn=rn.decodeStrings===!1;this.decodeStrings=!pn,this.defaultEncoding=rn.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(Rn){(function(Sn,fn){var cn=Sn._writableState,bn=cn.sync,Vn=cn.writecb;if(function(Zn){Zn.writing=!1,Zn.writecb=null,Zn.length-=Zn.writelen,Zn.writelen=0}(cn),fn)(function(Zn,In,Cn,kn,hn){--In.pendingcb,Cn?(Ft.nextTick(hn,kn),Ft.nextTick(an,Zn,In),Zn._writableState.errorEmitted=!0,Zn.emit("error",kn)):(hn(kn),Zn._writableState.errorEmitted=!0,Zn.emit("error",kn),an(Zn,In))})(Sn,cn,bn,fn,Vn);else{var Mn=Qn(cn);Mn||cn.corked||cn.bufferProcessing||!cn.bufferedRequest||dn(Sn,cn),bn?Vt(Kt,Sn,cn,Mn,Vn):Kt(Sn,cn,Mn,Vn)}})(gn,Rn)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new Qt(this)}function nn(rn){if(Bt=Bt||nt(23),!(Gt.call(nn,this)||this instanceof Bt))return new nn(rn);this._writableState=new ln(rn,this),this.writable=!0,rn&&(typeof rn.write=="function"&&(this._write=rn.write),typeof rn.writev=="function"&&(this._writev=rn.writev),typeof rn.destroy=="function"&&(this._destroy=rn.destroy),typeof rn.final=="function"&&(this._final=rn.final)),Zt.call(this)}function sn(rn,gn,un,Un,_n,vn,pn){gn.writelen=Un,gn.writecb=pn,gn.writing=!0,gn.sync=!0,un?rn._writev(_n,gn.onwrite):rn._write(_n,vn,gn.onwrite),gn.sync=!1}function Kt(rn,gn,un,Un){un||function(_n,vn){vn.length===0&&vn.needDrain&&(vn.needDrain=!1,_n.emit("drain"))}(rn,gn),gn.pendingcb--,Un(),an(rn,gn)}function dn(rn,gn){gn.bufferProcessing=!0;var un=gn.bufferedRequest;if(rn._writev&&un&&un.next){var Un=gn.bufferedRequestCount,_n=new Array(Un),vn=gn.corkedRequestsFree;vn.entry=un;for(var pn=0,Rn=!0;un;)_n[pn]=un,un.isBuf||(Rn=!1),un=un.next,pn+=1;_n.allBuffers=Rn,sn(rn,gn,!0,gn.length,_n,"",vn.finish),gn.pendingcb++,gn.lastBufferedRequest=null,vn.next?(gn.corkedRequestsFree=vn.next,vn.next=null):gn.corkedRequestsFree=new Qt(gn),gn.bufferedRequestCount=0}else{for(;un;){var Sn=un.chunk,fn=un.encoding,cn=un.callback;if(sn(rn,gn,!1,gn.objectMode?1:Sn.length,Sn,fn,cn),un=un.next,gn.bufferedRequestCount--,gn.writing)break}un===null&&(gn.lastBufferedRequest=null)}gn.bufferedRequest=un,gn.bufferProcessing=!1}function Qn(rn){return rn.ending&&rn.length===0&&rn.bufferedRequest===null&&!rn.finished&&!rn.writing}function En(rn,gn){rn._final(function(un){gn.pendingcb--,un&&rn.emit("error",un),gn.prefinished=!0,rn.emit("prefinish"),an(rn,gn)})}function an(rn,gn){var un=Qn(gn);return un&&(function(Un,_n){_n.prefinished||_n.finalCalled||(typeof Un._final=="function"?(_n.pendingcb++,_n.finalCalled=!0,Ft.nextTick(En,Un,_n)):(_n.prefinished=!0,Un.emit("prefinish")))}(rn,gn),gn.pendingcb===0&&(gn.finished=!0,rn.emit("finish"))),un}Wt.inherits(nn,Zt),ln.prototype.getBuffer=function(){for(var rn=this.bufferedRequest,gn=[];rn;)gn.push(rn),rn=rn.next;return gn},function(){try{Object.defineProperty(ln.prototype,"buffer",{get:Xt.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"?(Gt=Function.prototype[Symbol.hasInstance],Object.defineProperty(nn,Symbol.hasInstance,{value:function(rn){return!!Gt.call(this,rn)||this===nn&&rn&&rn._writableState instanceof ln}})):Gt=function(rn){return rn instanceof this},nn.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},nn.prototype.write=function(rn,gn,un){var Un,_n=this._writableState,vn=!1,pn=!_n.objectMode&&(Un=rn,Yt.isBuffer(Un)||Un instanceof Mt);return pn&&!Yt.isBuffer(rn)&&(rn=function(Rn){return Yt.from(Rn)}(rn)),typeof gn=="function"&&(un=gn,gn=null),pn?gn="buffer":gn||(gn=_n.defaultEncoding),typeof un!="function"&&(un=tn),_n.ended?function(Rn,Sn){var fn=new Error("write after end");Rn.emit("error",fn),Ft.nextTick(Sn,fn)}(this,un):(pn||function(Rn,Sn,fn,cn){var bn=!0,Vn=!1;return fn===null?Vn=new TypeError("May not write null values to stream"):typeof fn=="string"||fn===void 0||Sn.objectMode||(Vn=new TypeError("Invalid non-string/buffer chunk")),Vn&&(Rn.emit("error",Vn),Ft.nextTick(cn,Vn),bn=!1),bn}(this,_n,rn,un))&&(_n.pendingcb++,vn=function(Rn,Sn,fn,cn,bn,Vn){if(!fn){var Mn=function(kn,hn,Fn){return kn.objectMode||kn.decodeStrings===!1||typeof hn!="string"||(hn=Yt.from(hn,Fn)),hn}(Sn,cn,bn);cn!==Mn&&(fn=!0,bn="buffer",cn=Mn)}var Zn=Sn.objectMode?1:cn.length;Sn.length+=Zn;var In=Sn.length-1))throw new TypeError("Unknown encoding: "+rn);return this._writableState.defaultEncoding=rn,this},Object.defineProperty(nn.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),nn.prototype._write=function(rn,gn,un){un(new Error("_write() is not implemented"))},nn.prototype._writev=null,nn.prototype.end=function(rn,gn,un){var Un=this._writableState;typeof rn=="function"?(un=rn,rn=null,gn=null):typeof gn=="function"&&(un=gn,gn=null),rn!=null&&this.write(rn,gn),Un.corked&&(Un.corked=1,this.uncork()),Un.ending||Un.finished||function(_n,vn,pn){vn.ending=!0,an(_n,vn),pn&&(vn.finished?Ft.nextTick(pn):_n.once("finish",pn)),vn.ended=!0,_n.writable=!1}(this,Un,un)},Object.defineProperty(nn.prototype,"destroyed",{get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(rn){this._writableState&&(this._writableState.destroyed=rn)}}),nn.prototype.destroy=en.destroy,nn.prototype._undestroy=en.undestroy,nn.prototype._destroy=function(rn,gn){this.end(),gn(rn)}}).call(this,nt(2),nt(15).setImmediate,nt(6))},function(et,tt,nt){var it=nt(26).codes.ERR_STREAM_PREMATURE_CLOSE;function ot(){}et.exports=function Ut(Ft,Qt,Bt){if(typeof Qt=="function")return Ut(Ft,null,Qt);Qt||(Qt={}),Bt=function(nn){var sn=!1;return function(){if(!sn){sn=!0;for(var Kt=arguments.length,dn=new Array(Kt),Qn=0;Qn=0;Wt--){var Xt=Qt[Wt];Xt==="."?Qt.splice(Wt,1):Xt===".."?(Qt.splice(Wt,1),Vt++):Vt&&(Qt.splice(Wt,1),Vt--)}if(Bt)for(;Vt--;Vt)Qt.unshift("..");return Qt}function Ut(Qt,Bt){if(Qt.filter)return Qt.filter(Bt);for(var Vt=[],Wt=0;Wt=-1&&!Bt;Vt--){var Wt=Vt>=0?arguments[Vt]:it.cwd();if(typeof Wt!="string")throw new TypeError("Arguments to path.resolve must be strings");Wt&&(Qt=Wt+"/"+Qt,Bt=Wt.charAt(0)==="/")}return(Bt?"/":"")+(Qt=ot(Ut(Qt.split("/"),function(Xt){return!!Xt}),!Bt).join("/"))||"."},tt.normalize=function(Qt){var Bt=tt.isAbsolute(Qt),Vt=Ft(Qt,-1)==="/";return(Qt=ot(Ut(Qt.split("/"),function(Wt){return!!Wt}),!Bt).join("/"))||Bt||(Qt="."),Qt&&Vt&&(Qt+="/"),(Bt?"/":"")+Qt},tt.isAbsolute=function(Qt){return Qt.charAt(0)==="/"},tt.join=function(){var Qt=Array.prototype.slice.call(arguments,0);return tt.normalize(Ut(Qt,function(Bt,Vt){if(typeof Bt!="string")throw new TypeError("Arguments to path.join must be strings");return Bt}).join("/"))},tt.relative=function(Qt,Bt){function Vt(en){for(var tn=0;tn=0&&en[ln]==="";ln--);return tn>ln?[]:en.slice(tn,ln-tn+1)}Qt=tt.resolve(Qt).substr(1),Bt=tt.resolve(Bt).substr(1);for(var Wt=Vt(Qt.split("/")),Xt=Vt(Bt.split("/")),Zt=Math.min(Wt.length,Xt.length),Yt=Zt,Mt=0;Mt=1;--Zt)if((Bt=Qt.charCodeAt(Zt))===47){if(!Xt){Wt=Zt;break}}else Xt=!1;return Wt===-1?Vt?"/":".":Vt&&Wt===1?"/":Qt.slice(0,Wt)},tt.basename=function(Qt,Bt){var Vt=function(Wt){typeof Wt!="string"&&(Wt+="");var Xt,Zt=0,Yt=-1,Mt=!0;for(Xt=Wt.length-1;Xt>=0;--Xt)if(Wt.charCodeAt(Xt)===47){if(!Mt){Zt=Xt+1;break}}else Yt===-1&&(Mt=!1,Yt=Xt+1);return Yt===-1?"":Wt.slice(Zt,Yt)}(Qt);return Bt&&Vt.substr(-1*Bt.length)===Bt&&(Vt=Vt.substr(0,Vt.length-Bt.length)),Vt},tt.extname=function(Qt){typeof Qt!="string"&&(Qt+="");for(var Bt=-1,Vt=0,Wt=-1,Xt=!0,Zt=0,Yt=Qt.length-1;Yt>=0;--Yt){var Mt=Qt.charCodeAt(Yt);if(Mt!==47)Wt===-1&&(Xt=!1,Wt=Yt+1),Mt===46?Bt===-1?Bt=Yt:Zt!==1&&(Zt=1):Bt!==-1&&(Zt=-1);else if(!Xt){Vt=Yt+1;break}}return Bt===-1||Wt===-1||Zt===0||Zt===1&&Bt===Wt-1&&Bt===Vt+1?"":Qt.slice(Bt,Wt)};var Ft="ab".substr(-1)==="b"?function(Qt,Bt,Vt){return Qt.substr(Bt,Vt)}:function(Qt,Bt,Vt){return Bt<0&&(Bt=Qt.length+Bt),Qt.substr(Bt,Vt)}}).call(this,nt(2))},,function(et,tt,nt){var it=tt.format=nt(12);tt.levels=nt(104),Object.defineProperty(it,"align",{value:nt(121)}),Object.defineProperty(it,"cli",{value:nt(122)}),Object.defineProperty(it,"combine",{value:nt(123)}),Object.defineProperty(it,"colorize",{value:nt(41)}),Object.defineProperty(it,"json",{value:nt(124)}),Object.defineProperty(it,"label",{value:nt(127)}),Object.defineProperty(it,"logstash",{value:nt(128)}),Object.defineProperty(it,"metadata",{value:nt(129)}),Object.defineProperty(it,"padLevels",{value:nt(60)}),Object.defineProperty(it,"prettyPrint",{value:nt(130)}),Object.defineProperty(it,"printf",{value:nt(131)}),Object.defineProperty(it,"simple",{value:nt(132)}),Object.defineProperty(it,"splat",{value:nt(133)}),Object.defineProperty(it,"timestamp",{value:nt(134)}),Object.defineProperty(it,"uncolorize",{value:nt(136)})},function(et,tt,nt){var it=nt(105);et.exports=it},function(et,tt,nt){function it(Zt){return function(Yt){if(Array.isArray(Yt))return ot(Yt)}(Zt)||function(Yt){if(typeof Symbol<"u"&&Symbol.iterator in Object(Yt))return Array.from(Yt)}(Zt)||function(Yt,Mt){if(Yt){if(typeof Yt=="string")return ot(Yt,Mt);var Gt=Object.prototype.toString.call(Yt).slice(8,-1);if(Gt==="Object"&&Yt.constructor&&(Gt=Yt.constructor.name),Gt==="Map"||Gt==="Set")return Array.from(Yt);if(Gt==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Gt))return ot(Yt,Mt)}}(Zt)||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 ot(Zt,Yt){(Yt==null||Yt>Zt.length)&&(Yt=Zt.length);for(var Mt=0,Gt=new Array(Yt);Mt0&&arguments[0]!==void 0?arguments[0]:{levels:Bt.npm.levels};Ut(this,Zt),this.paddings=Zt.paddingForLevels(en.levels,en.filler),this.options=en}var Yt,Mt,Gt;return Yt=Zt,Gt=[{key:"getLongestLevel",value:function(en){var tn=Object.keys(en).map(function(ln){return ln.length});return Math.max.apply(Math,it(tn))}},{key:"paddingForLevel",value:function(en,tn,ln){var nn=ln+1-en.length,sn=Math.floor(nn/tn.length);return"".concat(tn).concat(tn.repeat(sn)).slice(0,nn)}},{key:"paddingForLevels",value:function(en){var tn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:" ",ln=Zt.getLongestLevel(en);return Object.keys(en).reduce(function(nn,sn){return nn[sn]=Zt.paddingForLevel(sn,tn,ln),nn},{})}}],(Mt=[{key:"transform",value:function(en,tn){return en.message="".concat(this.paddings[en[Vt]]).concat(en.message),en[Wt]&&(en[Wt]="".concat(this.paddings[en[Vt]]).concat(en[Wt])),en}}])&&Ft(Yt.prototype,Mt),Gt&&Ft(Yt,Gt),Zt}();et.exports=function(Zt){return new Xt(Zt)},et.exports.Padder=et.exports.Format=Xt},function(et,tt,nt){var it=nt(13).format;tt.warn={deprecated:function(ot){return function(){throw new Error(it("{ %s } was removed in winston@3.0.0.",ot))}},useFormat:function(ot){return function(){throw new Error([it("{ %s } was removed in winston@3.0.0.",ot),"Use a custom winston.format = winston.format(function) instead."].join(` +`))}},forFunctions:function(ot,Ut,Ft){Ft.forEach(function(Qt){ot[Qt]=tt.warn[Ut](Qt)})},moved:function(ot,Ut,Ft){function Qt(){return function(){throw new Error([it("winston.%s was moved in winston@3.0.0.",Ft),it("Use a winston.%s instead.",Ut)].join(` +`))}}Object.defineProperty(ot,Ft,{get:Qt,set:Qt})},forProperties:function(ot,Ut,Ft){Ft.forEach(function(Qt){var Bt=tt.warn[Ut](Qt);Object.defineProperty(ot,Qt,{get:Bt,set:Bt})})}}},function(et,tt,nt){(function(it,ot,Ut){var Ft=nt(16);function Qt(rn){var gn=this;this.next=null,this.entry=null,this.finish=function(){(function(un,Un,_n){var vn=un.entry;for(un.entry=null;vn;){var pn=vn.callback;Un.pendingcb--,pn(_n),vn=vn.next}Un.corkedRequestsFree?Un.corkedRequestsFree.next=un:Un.corkedRequestsFree=un})(gn,rn)}}et.exports=nn;var Bt,Vt=!it.browser&&["v0.10","v0.9."].indexOf(it.version.slice(0,5))>-1?ot:Ft.nextTick;nn.WritableState=ln;var Wt=Object.create(nt(17));Wt.inherits=nt(7);var Xt={deprecate:nt(43)},Zt=nt(63),Yt=nt(44).Buffer,Mt=Ut.Uint8Array||function(){},Gt,en=nt(64);function tn(){}function ln(rn,gn){Bt=Bt||nt(36),rn=rn||{};var un=gn instanceof Bt;this.objectMode=!!rn.objectMode,un&&(this.objectMode=this.objectMode||!!rn.writableObjectMode);var Un=rn.highWaterMark,_n=rn.writableHighWaterMark,vn=this.objectMode?16:16384;this.highWaterMark=Un||Un===0?Un:un&&(_n||_n===0)?_n:vn,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var pn=rn.decodeStrings===!1;this.decodeStrings=!pn,this.defaultEncoding=rn.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(Rn){(function(Sn,fn){var cn=Sn._writableState,bn=cn.sync,Vn=cn.writecb;if(function(Zn){Zn.writing=!1,Zn.writecb=null,Zn.length-=Zn.writelen,Zn.writelen=0}(cn),fn)(function(Zn,In,Cn,kn,hn){--In.pendingcb,Cn?(Ft.nextTick(hn,kn),Ft.nextTick(an,Zn,In),Zn._writableState.errorEmitted=!0,Zn.emit("error",kn)):(hn(kn),Zn._writableState.errorEmitted=!0,Zn.emit("error",kn),an(Zn,In))})(Sn,cn,bn,fn,Vn);else{var Mn=Qn(cn);Mn||cn.corked||cn.bufferProcessing||!cn.bufferedRequest||dn(Sn,cn),bn?Vt(Kt,Sn,cn,Mn,Vn):Kt(Sn,cn,Mn,Vn)}})(gn,Rn)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new Qt(this)}function nn(rn){if(Bt=Bt||nt(36),!(Gt.call(nn,this)||this instanceof Bt))return new nn(rn);this._writableState=new ln(rn,this),this.writable=!0,rn&&(typeof rn.write=="function"&&(this._write=rn.write),typeof rn.writev=="function"&&(this._writev=rn.writev),typeof rn.destroy=="function"&&(this._destroy=rn.destroy),typeof rn.final=="function"&&(this._final=rn.final)),Zt.call(this)}function sn(rn,gn,un,Un,_n,vn,pn){gn.writelen=Un,gn.writecb=pn,gn.writing=!0,gn.sync=!0,un?rn._writev(_n,gn.onwrite):rn._write(_n,vn,gn.onwrite),gn.sync=!1}function Kt(rn,gn,un,Un){un||function(_n,vn){vn.length===0&&vn.needDrain&&(vn.needDrain=!1,_n.emit("drain"))}(rn,gn),gn.pendingcb--,Un(),an(rn,gn)}function dn(rn,gn){gn.bufferProcessing=!0;var un=gn.bufferedRequest;if(rn._writev&&un&&un.next){var Un=gn.bufferedRequestCount,_n=new Array(Un),vn=gn.corkedRequestsFree;vn.entry=un;for(var pn=0,Rn=!0;un;)_n[pn]=un,un.isBuf||(Rn=!1),un=un.next,pn+=1;_n.allBuffers=Rn,sn(rn,gn,!0,gn.length,_n,"",vn.finish),gn.pendingcb++,gn.lastBufferedRequest=null,vn.next?(gn.corkedRequestsFree=vn.next,vn.next=null):gn.corkedRequestsFree=new Qt(gn),gn.bufferedRequestCount=0}else{for(;un;){var Sn=un.chunk,fn=un.encoding,cn=un.callback;if(sn(rn,gn,!1,gn.objectMode?1:Sn.length,Sn,fn,cn),un=un.next,gn.bufferedRequestCount--,gn.writing)break}un===null&&(gn.lastBufferedRequest=null)}gn.bufferedRequest=un,gn.bufferProcessing=!1}function Qn(rn){return rn.ending&&rn.length===0&&rn.bufferedRequest===null&&!rn.finished&&!rn.writing}function En(rn,gn){rn._final(function(un){gn.pendingcb--,un&&rn.emit("error",un),gn.prefinished=!0,rn.emit("prefinish"),an(rn,gn)})}function an(rn,gn){var un=Qn(gn);return un&&(function(Un,_n){_n.prefinished||_n.finalCalled||(typeof Un._final=="function"?(_n.pendingcb++,_n.finalCalled=!0,Ft.nextTick(En,Un,_n)):(_n.prefinished=!0,Un.emit("prefinish")))}(rn,gn),gn.pendingcb===0&&(gn.finished=!0,rn.emit("finish"))),un}Wt.inherits(nn,Zt),ln.prototype.getBuffer=function(){for(var rn=this.bufferedRequest,gn=[];rn;)gn.push(rn),rn=rn.next;return gn},function(){try{Object.defineProperty(ln.prototype,"buffer",{get:Xt.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"?(Gt=Function.prototype[Symbol.hasInstance],Object.defineProperty(nn,Symbol.hasInstance,{value:function(rn){return!!Gt.call(this,rn)||this===nn&&rn&&rn._writableState instanceof ln}})):Gt=function(rn){return rn instanceof this},nn.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},nn.prototype.write=function(rn,gn,un){var Un,_n=this._writableState,vn=!1,pn=!_n.objectMode&&(Un=rn,Yt.isBuffer(Un)||Un instanceof Mt);return pn&&!Yt.isBuffer(rn)&&(rn=function(Rn){return Yt.from(Rn)}(rn)),typeof gn=="function"&&(un=gn,gn=null),pn?gn="buffer":gn||(gn=_n.defaultEncoding),typeof un!="function"&&(un=tn),_n.ended?function(Rn,Sn){var fn=new Error("write after end");Rn.emit("error",fn),Ft.nextTick(Sn,fn)}(this,un):(pn||function(Rn,Sn,fn,cn){var bn=!0,Vn=!1;return fn===null?Vn=new TypeError("May not write null values to stream"):typeof fn=="string"||fn===void 0||Sn.objectMode||(Vn=new TypeError("Invalid non-string/buffer chunk")),Vn&&(Rn.emit("error",Vn),Ft.nextTick(cn,Vn),bn=!1),bn}(this,_n,rn,un))&&(_n.pendingcb++,vn=function(Rn,Sn,fn,cn,bn,Vn){if(!fn){var Mn=function(kn,hn,Fn){return kn.objectMode||kn.decodeStrings===!1||typeof hn!="string"||(hn=Yt.from(hn,Fn)),hn}(Sn,cn,bn);cn!==Mn&&(fn=!0,bn="buffer",cn=Mn)}var Zn=Sn.objectMode?1:cn.length;Sn.length+=Zn;var In=Sn.length-1))throw new TypeError("Unknown encoding: "+rn);return this._writableState.defaultEncoding=rn,this},Object.defineProperty(nn.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),nn.prototype._write=function(rn,gn,un){un(new Error("_write() is not implemented"))},nn.prototype._writev=null,nn.prototype.end=function(rn,gn,un){var Un=this._writableState;typeof rn=="function"?(un=rn,rn=null,gn=null):typeof gn=="function"&&(un=gn,gn=null),rn!=null&&this.write(rn,gn),Un.corked&&(Un.corked=1,this.uncork()),Un.ending||Un.finished||function(_n,vn,pn){vn.ending=!0,an(_n,vn),pn&&(vn.finished?Ft.nextTick(pn):_n.once("finish",pn)),vn.ended=!0,_n.writable=!1}(this,Un,un)},Object.defineProperty(nn.prototype,"destroyed",{get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(rn){this._writableState&&(this._writableState.destroyed=rn)}}),nn.prototype.destroy=en.destroy,nn.prototype._undestroy=en.undestroy,nn.prototype._destroy=function(rn,gn){this.end(),gn(rn)}}).call(this,nt(2),nt(15).setImmediate,nt(6))},function(et,tt,nt){et.exports=nt(21).EventEmitter},function(et,tt,nt){var it=nt(16);function ot(Ut,Ft){Ut.emit("error",Ft)}et.exports={destroy:function(Ut,Ft){var Qt=this,Bt=this._readableState&&this._readableState.destroyed,Vt=this._writableState&&this._writableState.destroyed;return Bt||Vt?(Ft?Ft(Ut):!Ut||this._writableState&&this._writableState.errorEmitted||it.nextTick(ot,this,Ut),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(Ut||null,function(Wt){!Ft&&Wt?(it.nextTick(ot,Qt,Wt),Qt._writableState&&(Qt._writableState.errorEmitted=!0)):Ft&&Ft(Wt)}),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.finished=!1,this._writableState.errorEmitted=!1)}}},function(et,tt){},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0});var it=Ft(nt(155)),ot=Ft(nt(25)),Ut=Ft(nt(31));function Ft(Qt){return Qt&&Qt.__esModule?Qt:{default:Qt}}tt.default=(0,Ut.default)(function(Qt,Bt,Vt,Wt){return(0,it.default)(Bt)(Qt,(0,ot.default)(Vt),Wt)},4),et.exports=tt.default},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(it){function ot(...Ut){if(it!==null){var Ft=it;it=null,Ft.apply(this,Ut)}}return Object.assign(ot,it),ot},et.exports=tt.default},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(it){return function(...ot){if(it===null)throw new Error("Callback was already called.");var Ut=it;it=null,Ut.apply(this,ot)}},et.exports=tt.default},function(et,tt,nt){(function(it,ot){var Ut=nt(16);et.exports=sn;var Ft,Qt=nt(42);sn.ReadableState=nn,nt(21).EventEmitter;var Bt=function(fn,cn){return fn.listeners(cn).length},Vt=nt(70),Wt=nt(47).Buffer,Xt=it.Uint8Array||function(){},Zt=nt(17);Zt.inherits=nt(7);var Yt=nt(161),Mt=void 0;Mt=Yt&&Yt.debuglog?Yt.debuglog("stream"):function(){};var Gt,en=nt(162),tn=nt(71);Zt.inherits(sn,Vt);var ln=["error","close","destroy","pause","resume"];function nn(fn,cn){fn=fn||{};var bn=cn instanceof(Ft=Ft||nt(23));this.objectMode=!!fn.objectMode,bn&&(this.objectMode=this.objectMode||!!fn.readableObjectMode);var Vn=fn.highWaterMark,Mn=fn.readableHighWaterMark,Zn=this.objectMode?16:16384;this.highWaterMark=Vn||Vn===0?Vn:bn&&(Mn||Mn===0)?Mn:Zn,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new en,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.destroyed=!1,this.defaultEncoding=fn.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,fn.encoding&&(Gt||(Gt=nt(22).StringDecoder),this.decoder=new Gt(fn.encoding),this.encoding=fn.encoding)}function sn(fn){if(Ft=Ft||nt(23),!(this instanceof sn))return new sn(fn);this._readableState=new nn(fn,this),this.readable=!0,fn&&(typeof fn.read=="function"&&(this._read=fn.read),typeof fn.destroy=="function"&&(this._destroy=fn.destroy)),Vt.call(this)}function Kt(fn,cn,bn,Vn,Mn){var Zn,In=fn._readableState;return cn===null?(In.reading=!1,function(Cn,kn){if(!kn.ended){if(kn.decoder){var hn=kn.decoder.end();hn&&hn.length&&(kn.buffer.push(hn),kn.length+=kn.objectMode?1:hn.length)}kn.ended=!0,En(Cn)}}(fn,In)):(Mn||(Zn=function(Cn,kn){var hn;Fn=kn,Wt.isBuffer(Fn)||Fn instanceof Xt||typeof kn=="string"||kn===void 0||Cn.objectMode||(hn=new TypeError("Invalid non-string/buffer chunk"));var Fn;return hn}(In,cn)),Zn?fn.emit("error",Zn):In.objectMode||cn&&cn.length>0?(typeof cn=="string"||In.objectMode||Object.getPrototypeOf(cn)===Wt.prototype||(cn=function(Cn){return Wt.from(Cn)}(cn)),Vn?In.endEmitted?fn.emit("error",new Error("stream.unshift() after end event")):dn(fn,In,cn,!0):In.ended?fn.emit("error",new Error("stream.push() after EOF")):(In.reading=!1,In.decoder&&!bn?(cn=In.decoder.write(cn),In.objectMode||cn.length!==0?dn(fn,In,cn,!1):rn(fn,In)):dn(fn,In,cn,!1))):Vn||(In.reading=!1)),function(Cn){return!Cn.ended&&(Cn.needReadable||Cn.lengthcn.highWaterMark&&(cn.highWaterMark=function(bn){return bn>=8388608?bn=8388608:(bn--,bn|=bn>>>1,bn|=bn>>>2,bn|=bn>>>4,bn|=bn>>>8,bn|=bn>>>16,bn++),bn}(fn)),fn<=cn.length?fn:cn.ended?cn.length:(cn.needReadable=!0,0))}function En(fn){var cn=fn._readableState;cn.needReadable=!1,cn.emittedReadable||(Mt("emitReadable",cn.flowing),cn.emittedReadable=!0,cn.sync?Ut.nextTick(an,fn):an(fn))}function an(fn){Mt("emit readable"),fn.emit("readable"),_n(fn)}function rn(fn,cn){cn.readingMore||(cn.readingMore=!0,Ut.nextTick(gn,fn,cn))}function gn(fn,cn){for(var bn=cn.length;!cn.reading&&!cn.flowing&&!cn.ended&&cn.length=cn.length?(bn=cn.decoder?cn.buffer.join(""):cn.buffer.length===1?cn.buffer.head.data:cn.buffer.concat(cn.length),cn.buffer.clear()):bn=function(Vn,Mn,Zn){var In;return VnWn.length?Wn.length:Cn;if(An===Wn.length?wn+=Wn:wn+=Wn.slice(0,Cn),(Cn-=An)===0){An===Wn.length?(++Fn,hn.next?kn.head=hn.next:kn.head=kn.tail=null):(kn.head=hn,hn.data=Wn.slice(An));break}++Fn}return kn.length-=Fn,wn}(Vn,Mn):function(Cn,kn){var hn=Wt.allocUnsafe(Cn),Fn=kn.head,wn=1;for(Fn.data.copy(hn),Cn-=Fn.data.length;Fn=Fn.next;){var Wn=Fn.data,An=Cn>Wn.length?Wn.length:Cn;if(Wn.copy(hn,hn.length-Cn,0,An),(Cn-=An)===0){An===Wn.length?(++wn,Fn.next?kn.head=Fn.next:kn.head=kn.tail=null):(kn.head=Fn,Fn.data=Wn.slice(An));break}++wn}return kn.length-=wn,hn}(Vn,Mn),In}(fn,cn.buffer,cn.decoder),bn);var bn}function pn(fn){var cn=fn._readableState;if(cn.length>0)throw new Error('"endReadable()" called on non-empty stream');cn.endEmitted||(cn.ended=!0,Ut.nextTick(Rn,cn,fn))}function Rn(fn,cn){fn.endEmitted||fn.length!==0||(fn.endEmitted=!0,cn.readable=!1,cn.emit("end"))}function Sn(fn,cn){for(var bn=0,Vn=fn.length;bn=cn.highWaterMark||cn.ended))return Mt("read: emitReadable",cn.length,cn.ended),cn.length===0&&cn.ended?pn(this):En(this),null;if((fn=Qn(fn,cn))===0&&cn.ended)return cn.length===0&&pn(this),null;var Vn,Mn=cn.needReadable;return Mt("need readable",Mn),(cn.length===0||cn.length-fn0?vn(fn,cn):null)===null?(cn.needReadable=!0,fn=0):cn.length-=fn,cn.length===0&&(cn.ended||(cn.needReadable=!0),bn!==fn&&cn.ended&&pn(this)),Vn!==null&&this.emit("data",Vn),Vn},sn.prototype._read=function(fn){this.emit("error",new Error("_read() is not implemented"))},sn.prototype.pipe=function(fn,cn){var bn=this,Vn=this._readableState;switch(Vn.pipesCount){case 0:Vn.pipes=fn;break;case 1:Vn.pipes=[Vn.pipes,fn];break;default:Vn.pipes.push(fn)}Vn.pipesCount+=1,Mt("pipe count=%d opts=%j",Vn.pipesCount,cn);var Mn=(!cn||cn.end!==!1)&&fn!==ot.stdout&&fn!==ot.stderr?In:Pn;function Zn(jn,$n){Mt("onunpipe"),jn===bn&&$n&&$n.hasUnpiped===!1&&($n.hasUnpiped=!0,Mt("cleanup"),fn.removeListener("close",Wn),fn.removeListener("finish",An),fn.removeListener("drain",Cn),fn.removeListener("error",wn),fn.removeListener("unpipe",Zn),bn.removeListener("end",In),bn.removeListener("end",Pn),bn.removeListener("data",Fn),kn=!0,!Vn.awaitDrain||fn._writableState&&!fn._writableState.needDrain||Cn())}function In(){Mt("onend"),fn.end()}Vn.endEmitted?Ut.nextTick(Mn):bn.once("end",Mn),fn.on("unpipe",Zn);var Cn=function(jn){return function(){var $n=jn._readableState;Mt("pipeOnDrain",$n.awaitDrain),$n.awaitDrain&&$n.awaitDrain--,$n.awaitDrain===0&&Bt(jn,"data")&&($n.flowing=!0,_n(jn))}}(bn);fn.on("drain",Cn);var kn=!1,hn=!1;function Fn(jn){Mt("ondata"),hn=!1,fn.write(jn)!==!1||hn||((Vn.pipesCount===1&&Vn.pipes===fn||Vn.pipesCount>1&&Sn(Vn.pipes,fn)!==-1)&&!kn&&(Mt("false write response, pause",bn._readableState.awaitDrain),bn._readableState.awaitDrain++,hn=!0),bn.pause())}function wn(jn){Mt("onerror",jn),Pn(),fn.removeListener("error",wn),Bt(fn,"error")===0&&fn.emit("error",jn)}function Wn(){fn.removeListener("finish",An),Pn()}function An(){Mt("onfinish"),fn.removeListener("close",Wn),Pn()}function Pn(){Mt("unpipe"),bn.unpipe(fn)}return bn.on("data",Fn),function(jn,$n,pr){if(typeof jn.prependListener=="function")return jn.prependListener($n,pr);jn._events&&jn._events[$n]?Qt(jn._events[$n])?jn._events[$n].unshift(pr):jn._events[$n]=[pr,jn._events[$n]]:jn.on($n,pr)}(fn,"error",wn),fn.once("close",Wn),fn.once("finish",An),fn.emit("pipe",bn),Vn.flowing||(Mt("pipe resume"),bn.resume()),fn},sn.prototype.unpipe=function(fn){var cn=this._readableState,bn={hasUnpiped:!1};if(cn.pipesCount===0)return this;if(cn.pipesCount===1)return fn&&fn!==cn.pipes||(fn||(fn=cn.pipes),cn.pipes=null,cn.pipesCount=0,cn.flowing=!1,fn&&fn.emit("unpipe",this,bn)),this;if(!fn){var Vn=cn.pipes,Mn=cn.pipesCount;cn.pipes=null,cn.pipesCount=0,cn.flowing=!1;for(var Zn=0;Zn=0;bn--)if(Vn[bn]!==Mn[bn])return!1;for(bn=Vn.length-1;bn>=0;bn--)if(cn=Vn[bn],!sn(_n[cn],vn[cn],pn,Rn))return!1;return!0}(an,rn,gn,un))}return gn?an===rn:an==rn}function Kt(an){return Object.prototype.toString.call(an)=="[object Arguments]"}function dn(an,rn){if(!an||!rn)return!1;if(Object.prototype.toString.call(rn)=="[object RegExp]")return rn.test(an);try{if(an instanceof rn)return!0}catch{}return!Error.isPrototypeOf(rn)&&rn.call({},an)===!0}function Qn(an,rn,gn,un){var Un;if(typeof rn!="function")throw new TypeError('"block" argument must be a function');typeof gn=="string"&&(un=gn,gn=null),Un=function(pn){var Rn;try{pn()}catch(Sn){Rn=Sn}return Rn}(rn),un=(gn&&gn.name?" ("+gn.name+").":".")+(un?" "+un:"."),an&&!Un&&ln(Un,gn,"Missing expected exception"+un);var _n=typeof un=="string",vn=!an&&Un&&!gn;if((!an&&Qt.isError(Un)&&_n&&dn(Un,gn)||vn)&&ln(Un,gn,"Got unwanted exception"+un),an&&Un&&gn&&!dn(Un,gn)||!an&&Un)throw Un}Yt.AssertionError=function(an){this.name="AssertionError",this.actual=an.actual,this.expected=an.expected,this.operator=an.operator,an.message?(this.message=an.message,this.generatedMessage=!1):(this.message=function(pn){return en(tn(pn.actual),128)+" "+pn.operator+" "+en(tn(pn.expected),128)}(this),this.generatedMessage=!0);var rn=an.stackStartFunction||ln;if(Error.captureStackTrace)Error.captureStackTrace(this,rn);else{var gn=new Error;if(gn.stack){var un=gn.stack,Un=Gt(rn),_n=un.indexOf(` +`+Un);if(_n>=0){var vn=un.indexOf(` +`,_n+1);un=un.substring(vn+1)}this.stack=un}}},Qt.inherits(Yt.AssertionError,Error),Yt.fail=ln,Yt.ok=nn,Yt.equal=function(an,rn,gn){an!=rn&&ln(an,rn,gn,"==",Yt.equal)},Yt.notEqual=function(an,rn,gn){an==rn&&ln(an,rn,gn,"!=",Yt.notEqual)},Yt.deepEqual=function(an,rn,gn){sn(an,rn,!1)||ln(an,rn,gn,"deepEqual",Yt.deepEqual)},Yt.deepStrictEqual=function(an,rn,gn){sn(an,rn,!0)||ln(an,rn,gn,"deepStrictEqual",Yt.deepStrictEqual)},Yt.notDeepEqual=function(an,rn,gn){sn(an,rn,!1)&&ln(an,rn,gn,"notDeepEqual",Yt.notDeepEqual)},Yt.notDeepStrictEqual=function an(rn,gn,un){sn(rn,gn,!0)&&ln(rn,gn,un,"notDeepStrictEqual",an)},Yt.strictEqual=function(an,rn,gn){an!==rn&&ln(an,rn,gn,"===",Yt.strictEqual)},Yt.notStrictEqual=function(an,rn,gn){an===rn&&ln(an,rn,gn,"!==",Yt.notStrictEqual)},Yt.throws=function(an,rn,gn){Qn(!0,an,rn,gn)},Yt.doesNotThrow=function(an,rn,gn){Qn(!1,an,rn,gn)},Yt.ifError=function(an){if(an)throw an},Yt.strict=ot(function an(rn,gn){rn||ln(rn,!0,gn,"==",an)},Yt,{equal:Yt.strictEqual,deepEqual:Yt.deepStrictEqual,notEqual:Yt.notStrictEqual,notDeepEqual:Yt.notDeepStrictEqual}),Yt.strict.strict=Yt.strict;var En=Object.keys||function(an){var rn=[];for(var gn in an)Bt.call(an,gn)&&rn.push(gn);return rn}}).call(this,nt(6))},function(et,tt,nt){et.exports=function(it,ot,Ut,Ft){for(var Qt=65535&it|0,Bt=it>>>16&65535|0,Vt=0;Ut!==0;){Ut-=Vt=Ut>2e3?2e3:Ut;do Bt=Bt+(Qt=Qt+ot[Ft++]|0)|0;while(--Vt);Qt%=65521,Bt%=65521}return Qt|Bt<<16|0}},function(et,tt,nt){var it=function(){for(var ot,Ut=[],Ft=0;Ft<256;Ft++){ot=Ft;for(var Qt=0;Qt<8;Qt++)ot=1&ot?3988292384^ot>>>1:ot>>>1;Ut[Ft]=ot}return Ut}();et.exports=function(ot,Ut,Ft,Qt){var Bt=it,Vt=Qt+Ft;ot^=-1;for(var Wt=Qt;Wt>>8^Bt[255&(ot^Ut[Wt])];return-1^ot}},function(et,tt,nt){(function(it,ot){var Ut;et.exports=rn,rn.ReadableState=an,nt(21).EventEmitter;var Ft=function(Cn,kn){return Cn.listeners(kn).length},Qt=nt(78),Bt=nt(5).Buffer,Vt=it.Uint8Array||function(){},Wt,Xt=nt(178);Wt=Xt&&Xt.debuglog?Xt.debuglog("stream"):function(){};var Zt,Yt,Mt,Gt=nt(179),en=nt(79),tn=nt(80).getHighWaterMark,ln=nt(26).codes,nn=ln.ERR_INVALID_ARG_TYPE,sn=ln.ERR_STREAM_PUSH_AFTER_EOF,Kt=ln.ERR_METHOD_NOT_IMPLEMENTED,dn=ln.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;nt(7)(rn,Qt);var Qn=en.errorOrDestroy,En=["error","close","destroy","pause","resume"];function an(Cn,kn,hn){Ut=Ut||nt(27),Cn=Cn||{},typeof hn!="boolean"&&(hn=kn instanceof Ut),this.objectMode=!!Cn.objectMode,hn&&(this.objectMode=this.objectMode||!!Cn.readableObjectMode),this.highWaterMark=tn(this,Cn,"readableHighWaterMark",hn),this.buffer=new Gt,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=Cn.emitClose!==!1,this.autoDestroy=!!Cn.autoDestroy,this.destroyed=!1,this.defaultEncoding=Cn.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,Cn.encoding&&(Zt||(Zt=nt(22).StringDecoder),this.decoder=new Zt(Cn.encoding),this.encoding=Cn.encoding)}function rn(Cn){if(Ut=Ut||nt(27),!(this instanceof rn))return new rn(Cn);var kn=this instanceof Ut;this._readableState=new an(Cn,this,kn),this.readable=!0,Cn&&(typeof Cn.read=="function"&&(this._read=Cn.read),typeof Cn.destroy=="function"&&(this._destroy=Cn.destroy)),Qt.call(this)}function gn(Cn,kn,hn,Fn,wn){Wt("readableAddChunk",kn);var Wn,An=Cn._readableState;if(kn===null)An.reading=!1,function(Pn,jn){if(Wt("onEofChunk"),!jn.ended){if(jn.decoder){var $n=jn.decoder.end();$n&&$n.length&&(jn.buffer.push($n),jn.length+=jn.objectMode?1:$n.length)}jn.ended=!0,jn.sync?_n(Pn):(jn.needReadable=!1,jn.emittedReadable||(jn.emittedReadable=!0,vn(Pn)))}}(Cn,An);else if(wn||(Wn=function(Pn,jn){var $n;pr=jn,Bt.isBuffer(pr)||pr instanceof Vt||typeof jn=="string"||jn===void 0||Pn.objectMode||($n=new nn("chunk",["string","Buffer","Uint8Array"],jn));var pr;return $n}(An,kn)),Wn)Qn(Cn,Wn);else if(An.objectMode||kn&&kn.length>0)if(typeof kn=="string"||An.objectMode||Object.getPrototypeOf(kn)===Bt.prototype||(kn=function(Pn){return Bt.from(Pn)}(kn)),Fn)An.endEmitted?Qn(Cn,new dn):un(Cn,An,kn,!0);else if(An.ended)Qn(Cn,new sn);else{if(An.destroyed)return!1;An.reading=!1,An.decoder&&!hn?(kn=An.decoder.write(kn),An.objectMode||kn.length!==0?un(Cn,An,kn,!1):pn(Cn,An)):un(Cn,An,kn,!1)}else Fn||(An.reading=!1,pn(Cn,An));return!An.ended&&(An.lengthkn.highWaterMark&&(kn.highWaterMark=function(hn){return hn>=1073741824?hn=1073741824:(hn--,hn|=hn>>>1,hn|=hn>>>2,hn|=hn>>>4,hn|=hn>>>8,hn|=hn>>>16,hn++),hn}(Cn)),Cn<=kn.length?Cn:kn.ended?kn.length:(kn.needReadable=!0,0))}function _n(Cn){var kn=Cn._readableState;Wt("emitReadable",kn.needReadable,kn.emittedReadable),kn.needReadable=!1,kn.emittedReadable||(Wt("emitReadable",kn.flowing),kn.emittedReadable=!0,ot.nextTick(vn,Cn))}function vn(Cn){var kn=Cn._readableState;Wt("emitReadable_",kn.destroyed,kn.length,kn.ended),kn.destroyed||!kn.length&&!kn.ended||(Cn.emit("readable"),kn.emittedReadable=!1),kn.needReadable=!kn.flowing&&!kn.ended&&kn.length<=kn.highWaterMark,bn(Cn)}function pn(Cn,kn){kn.readingMore||(kn.readingMore=!0,ot.nextTick(Rn,Cn,kn))}function Rn(Cn,kn){for(;!kn.reading&&!kn.ended&&(kn.length0,kn.resumeScheduled&&!kn.paused?kn.flowing=!0:Cn.listenerCount("data")>0&&Cn.resume()}function fn(Cn){Wt("readable nexttick read 0"),Cn.read(0)}function cn(Cn,kn){Wt("resume",kn.reading),kn.reading||Cn.read(0),kn.resumeScheduled=!1,Cn.emit("resume"),bn(Cn),kn.flowing&&!kn.reading&&Cn.read(0)}function bn(Cn){var kn=Cn._readableState;for(Wt("flow",kn.flowing);kn.flowing&&Cn.read()!==null;);}function Vn(Cn,kn){return kn.length===0?null:(kn.objectMode?hn=kn.buffer.shift():!Cn||Cn>=kn.length?(hn=kn.decoder?kn.buffer.join(""):kn.buffer.length===1?kn.buffer.first():kn.buffer.concat(kn.length),kn.buffer.clear()):hn=kn.buffer.consume(Cn,kn.decoder),hn);var hn}function Mn(Cn){var kn=Cn._readableState;Wt("endReadable",kn.endEmitted),kn.endEmitted||(kn.ended=!0,ot.nextTick(Zn,kn,Cn))}function Zn(Cn,kn){if(Wt("endReadableNT",Cn.endEmitted,Cn.length),!Cn.endEmitted&&Cn.length===0&&(Cn.endEmitted=!0,kn.readable=!1,kn.emit("end"),Cn.autoDestroy)){var hn=kn._writableState;(!hn||hn.autoDestroy&&hn.finished)&&kn.destroy()}}function In(Cn,kn){for(var hn=0,Fn=Cn.length;hn=kn.highWaterMark:kn.length>0)||kn.ended))return Wt("read: emitReadable",kn.length,kn.ended),kn.length===0&&kn.ended?Mn(this):_n(this),null;if((Cn=Un(Cn,kn))===0&&kn.ended)return kn.length===0&&Mn(this),null;var Fn,wn=kn.needReadable;return Wt("need readable",wn),(kn.length===0||kn.length-Cn0?Vn(Cn,kn):null)===null?(kn.needReadable=kn.length<=kn.highWaterMark,Cn=0):(kn.length-=Cn,kn.awaitDrain=0),kn.length===0&&(kn.ended||(kn.needReadable=!0),hn!==Cn&&kn.ended&&Mn(this)),Fn!==null&&this.emit("data",Fn),Fn},rn.prototype._read=function(Cn){Qn(this,new Kt("_read()"))},rn.prototype.pipe=function(Cn,kn){var hn=this,Fn=this._readableState;switch(Fn.pipesCount){case 0:Fn.pipes=Cn;break;case 1:Fn.pipes=[Fn.pipes,Cn];break;default:Fn.pipes.push(Cn)}Fn.pipesCount+=1,Wt("pipe count=%d opts=%j",Fn.pipesCount,kn);var wn=(!kn||kn.end!==!1)&&Cn!==ot.stdout&&Cn!==ot.stderr?An:Ir;function Wn(yr,Rr){Wt("onunpipe"),yr===hn&&Rr&&Rr.hasUnpiped===!1&&(Rr.hasUnpiped=!0,Wt("cleanup"),Cn.removeListener("close",Sr),Cn.removeListener("finish",Qr),Cn.removeListener("drain",Pn),Cn.removeListener("error",pr),Cn.removeListener("unpipe",Wn),hn.removeListener("end",An),hn.removeListener("end",Ir),hn.removeListener("data",$n),jn=!0,!Fn.awaitDrain||Cn._writableState&&!Cn._writableState.needDrain||Pn())}function An(){Wt("onend"),Cn.end()}Fn.endEmitted?ot.nextTick(wn):hn.once("end",wn),Cn.on("unpipe",Wn);var Pn=function(yr){return function(){var Rr=yr._readableState;Wt("pipeOnDrain",Rr.awaitDrain),Rr.awaitDrain&&Rr.awaitDrain--,Rr.awaitDrain===0&&Ft(yr,"data")&&(Rr.flowing=!0,bn(yr))}}(hn);Cn.on("drain",Pn);var jn=!1;function $n(yr){Wt("ondata");var Rr=Cn.write(yr);Wt("dest.write",Rr),Rr===!1&&((Fn.pipesCount===1&&Fn.pipes===Cn||Fn.pipesCount>1&&In(Fn.pipes,Cn)!==-1)&&!jn&&(Wt("false write response, pause",Fn.awaitDrain),Fn.awaitDrain++),hn.pause())}function pr(yr){Wt("onerror",yr),Ir(),Cn.removeListener("error",pr),Ft(Cn,"error")===0&&Qn(Cn,yr)}function Sr(){Cn.removeListener("finish",Qr),Ir()}function Qr(){Wt("onfinish"),Cn.removeListener("close",Sr),Ir()}function Ir(){Wt("unpipe"),hn.unpipe(Cn)}return hn.on("data",$n),function(yr,Rr,wr){if(typeof yr.prependListener=="function")return yr.prependListener(Rr,wr);yr._events&&yr._events[Rr]?Array.isArray(yr._events[Rr])?yr._events[Rr].unshift(wr):yr._events[Rr]=[wr,yr._events[Rr]]:yr.on(Rr,wr)}(Cn,"error",pr),Cn.once("close",Sr),Cn.once("finish",Qr),Cn.emit("pipe",hn),Fn.flowing||(Wt("pipe resume"),hn.resume()),Cn},rn.prototype.unpipe=function(Cn){var kn=this._readableState,hn={hasUnpiped:!1};if(kn.pipesCount===0)return this;if(kn.pipesCount===1)return Cn&&Cn!==kn.pipes||(Cn||(Cn=kn.pipes),kn.pipes=null,kn.pipesCount=0,kn.flowing=!1,Cn&&Cn.emit("unpipe",this,hn)),this;if(!Cn){var Fn=kn.pipes,wn=kn.pipesCount;kn.pipes=null,kn.pipesCount=0,kn.flowing=!1;for(var Wn=0;Wn0,Fn.flowing!==!1&&this.resume()):Cn==="readable"&&(Fn.endEmitted||Fn.readableListening||(Fn.readableListening=Fn.needReadable=!0,Fn.flowing=!1,Fn.emittedReadable=!1,Wt("on readable",Fn.length,Fn.reading),Fn.length?_n(this):Fn.reading||ot.nextTick(fn,this))),hn},rn.prototype.addListener=rn.prototype.on,rn.prototype.removeListener=function(Cn,kn){var hn=Qt.prototype.removeListener.call(this,Cn,kn);return Cn==="readable"&&ot.nextTick(Sn,this),hn},rn.prototype.removeAllListeners=function(Cn){var kn=Qt.prototype.removeAllListeners.apply(this,arguments);return Cn!=="readable"&&Cn!==void 0||ot.nextTick(Sn,this),kn},rn.prototype.resume=function(){var Cn=this._readableState;return Cn.flowing||(Wt("resume"),Cn.flowing=!Cn.readableListening,function(kn,hn){hn.resumeScheduled||(hn.resumeScheduled=!0,ot.nextTick(cn,kn,hn))}(this,Cn)),Cn.paused=!1,this},rn.prototype.pause=function(){return Wt("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Wt("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},rn.prototype.wrap=function(Cn){var kn=this,hn=this._readableState,Fn=!1;for(var wn in Cn.on("end",function(){if(Wt("wrapped end"),hn.decoder&&!hn.ended){var An=hn.decoder.end();An&&An.length&&kn.push(An)}kn.push(null)}),Cn.on("data",function(An){Wt("wrapped data"),hn.decoder&&(An=hn.decoder.write(An)),hn.objectMode&&An==null||(hn.objectMode||An&&An.length)&&(kn.push(An)||(Fn=!0,Cn.pause()))}),Cn)this[wn]===void 0&&typeof Cn[wn]=="function"&&(this[wn]=function(An){return function(){return Cn[An].apply(Cn,arguments)}}(wn));for(var Wn=0;Wn-1))throw new dn(Rn);return this._writableState.defaultEncoding=Rn,this},Object.defineProperty(rn.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(rn.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),rn.prototype._write=function(Rn,Sn,fn){fn(new en("_write()"))},rn.prototype._writev=null,rn.prototype.end=function(Rn,Sn,fn){var cn=this._writableState;return typeof Rn=="function"?(fn=Rn,Rn=null,Sn=null):typeof Sn=="function"&&(fn=Sn,Sn=null),Rn!=null&&this.write(Rn,Sn),cn.corked&&(cn.corked=1,this.uncork()),cn.ending||function(bn,Vn,Mn){Vn.ending=!0,pn(bn,Vn),Mn&&(Vn.finished?ot.nextTick(Mn):bn.once("finish",Mn)),Vn.ended=!0,bn.writable=!1}(this,cn,fn),this},Object.defineProperty(rn.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(rn.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(Rn){this._writableState&&(this._writableState.destroyed=Rn)}}),rn.prototype.destroy=Zt.destroy,rn.prototype._undestroy=Zt.undestroy,rn.prototype._destroy=function(Rn,Sn){Sn(Rn)}}).call(this,nt(6),nt(2))},function(et,tt,nt){et.exports=Wt;var it=nt(26).codes,ot=it.ERR_METHOD_NOT_IMPLEMENTED,Ut=it.ERR_MULTIPLE_CALLBACK,Ft=it.ERR_TRANSFORM_ALREADY_TRANSFORMING,Qt=it.ERR_TRANSFORM_WITH_LENGTH_0,Bt=nt(27);function Vt(Yt,Mt){var Gt=this._transformState;Gt.transforming=!1;var en=Gt.writecb;if(en===null)return this.emit("error",new Ut);Gt.writechunk=null,Gt.writecb=null,Mt!=null&&this.push(Mt),en(Yt);var tn=this._readableState;tn.reading=!1,(tn.needReadable||tn.lengthXt._pos){var Mt=Yt.substr(Xt._pos);if(Xt._charset==="x-user-defined"){for(var Gt=new ot(Mt.length),en=0;enXt._pos&&(Xt.push(new ot(new Uint8Array(tn.result.slice(Xt._pos)))),Xt._pos=tn.result.byteLength)},tn.onload=function(){Xt.push(null)},tn.readAsArrayBuffer(Yt)}Xt._xhr.readyState===Vt.DONE&&Xt._mode!=="ms-stream"&&Xt.push(null)}}).call(this,nt(2),nt(5).Buffer,nt(6))},function(et,tt,nt){var it=nt(193),ot=nt(195);function Ut(){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}tt.parse=nn,tt.resolve=function(sn,Kt){return nn(sn,!1,!0).resolve(Kt)},tt.resolveObject=function(sn,Kt){return sn?nn(sn,!1,!0).resolveObject(Kt):Kt},tt.format=function(sn){return ot.isString(sn)&&(sn=nn(sn)),sn instanceof Ut?sn.format():Ut.prototype.format.call(sn)},tt.Url=Ut;var Ft=/^([a-z0-9.+-]+:)/i,Qt=/:[0-9]*$/,Bt=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,Vt=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r",` +`," "]),Wt=["'"].concat(Vt),Xt=["%","/","?",";","#"].concat(Wt),Zt=["/","?","#"],Yt=/^[+a-z0-9A-Z_-]{0,63}$/,Mt=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,Gt={javascript:!0,"javascript:":!0},en={javascript:!0,"javascript:":!0},tn={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},ln=nt(196);function nn(sn,Kt,dn){if(sn&&ot.isObject(sn)&&sn instanceof Ut)return sn;var Qn=new Ut;return Qn.parse(sn,Kt,dn),Qn}Ut.prototype.parse=function(sn,Kt,dn){if(!ot.isString(sn))throw new TypeError("Parameter 'url' must be a string, not "+typeof sn);var Qn=sn.indexOf("?"),En=Qn!==-1&&Qn127?Zn+="x":Zn+=Mn[In];if(!Zn.match(Yt)){var kn=bn.slice(0,Sn),hn=bn.slice(Sn+1),Fn=Mn.match(Mt);Fn&&(kn.push(Fn[1]),hn.unshift(Fn[2])),hn.length&&(rn="/"+hn.join(".")+rn),this.hostname=kn.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),cn||(this.hostname=it.toASCII(this.hostname));var wn=this.port?":"+this.port:"",Wn=this.hostname||"";this.host=Wn+wn,this.href+=this.host,cn&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),rn[0]!=="/"&&(rn="/"+rn))}if(!Gt[Un])for(Sn=0,Vn=Wt.length;Sn0)&&dn.host.split("@"))&&(dn.auth=Fn.shift(),dn.host=dn.hostname=Fn.shift())),dn.search=sn.search,dn.query=sn.query,ot.isNull(dn.pathname)&&ot.isNull(dn.search)||(dn.path=(dn.pathname?dn.pathname:"")+(dn.search?dn.search:"")),dn.href=dn.format(),dn;if(!Mn.length)return dn.pathname=null,dn.search?dn.path="/"+dn.search:dn.path=null,dn.href=dn.format(),dn;for(var In=Mn.slice(-1)[0],Cn=(dn.host||sn.host||Mn.length>1)&&(In==="."||In==="..")||In==="",kn=0,hn=Mn.length;hn>=0;hn--)(In=Mn[hn])==="."?Mn.splice(hn,1):In===".."?(Mn.splice(hn,1),kn++):kn&&(Mn.splice(hn,1),kn--);if(!bn&&!Vn)for(;kn--;kn)Mn.unshift("..");!bn||Mn[0]===""||Mn[0]&&Mn[0].charAt(0)==="/"||Mn.unshift(""),Cn&&Mn.join("/").substr(-1)!=="/"&&Mn.push("");var Fn,wn=Mn[0]===""||Mn[0]&&Mn[0].charAt(0)==="/";return Zn&&(dn.hostname=dn.host=wn?"":Mn.length?Mn.shift():"",(Fn=!!(dn.host&&dn.host.indexOf("@")>0)&&dn.host.split("@"))&&(dn.auth=Fn.shift(),dn.host=dn.hostname=Fn.shift())),(bn=bn||dn.host&&Mn.length)&&!wn&&Mn.unshift(""),Mn.length?dn.pathname=Mn.join("/"):(dn.pathname=null,dn.path=null),ot.isNull(dn.pathname)&&ot.isNull(dn.search)||(dn.path=(dn.pathname?dn.pathname:"")+(dn.search?dn.search:"")),dn.auth=sn.auth||dn.auth,dn.slashes=dn.slashes||sn.slashes,dn.href=dn.format(),dn},Ut.prototype.parseHost=function(){var sn=this.host,Kt=Qt.exec(sn);Kt&&((Kt=Kt[0])!==":"&&(this.port=Kt.substr(1)),sn=sn.substr(0,sn.length-Kt.length)),sn&&(this.hostname=sn)}},function(et,tt,nt){const it=ot=>ot!==null&&typeof ot=="object"&&typeof ot.pipe=="function";it.writable=ot=>it(ot)&&ot.writable!==!1&&typeof ot._write=="function"&&typeof ot._writableState=="object",it.readable=ot=>it(ot)&&ot.readable!==!1&&typeof ot._read=="function"&&typeof ot._readableState=="object",it.duplex=ot=>it.writable(ot)&&it.readable(ot),it.transform=ot=>it.duplex(ot)&&typeof ot._transform=="function"&&typeof ot._transformState=="object",et.exports=it},function(et,tt,nt){function it(Gt){return(it=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(en){return typeof en}:function(en){return en&&typeof Symbol=="function"&&en.constructor===Symbol&&en!==Symbol.prototype?"symbol":typeof en})(Gt)}function ot(Gt,en){if(!(Gt instanceof en))throw new TypeError("Cannot call a class as a function")}function Ut(Gt,en){if(typeof en!="function"&&en!==null)throw new TypeError("Super expression must either be null or a function");Gt.prototype=Object.create(en&&en.prototype,{constructor:{value:Gt,writable:!0,configurable:!0}}),en&&Ft(Gt,en)}function Ft(Gt,en){return(Ft=Object.setPrototypeOf||function(tn,ln){return tn.__proto__=ln,tn})(Gt,en)}function Qt(Gt){var en=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}();return function(){var tn,ln=Vt(Gt);if(en){var nn=Vt(this).constructor;tn=Reflect.construct(ln,arguments,nn)}else tn=ln.apply(this,arguments);return Bt(this,tn)}}function Bt(Gt,en){return!en||it(en)!=="object"&&typeof en!="function"?function(tn){if(tn===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return tn}(Gt):en}function Vt(Gt){return(Vt=Object.setPrototypeOf?Object.getPrototypeOf:function(en){return en.__proto__||Object.getPrototypeOf(en)})(Gt)}var Wt=nt(3).LEVEL,Xt=nt(50),Zt=nt(201),Yt=nt(38)("winston:create-logger");function Mt(Gt){return"is"+Gt.charAt(0).toUpperCase()+Gt.slice(1)+"Enabled"}et.exports=function(){var Gt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Gt.levels=Gt.levels||Xt.npm.levels;var en=function(ln){Ut(sn,ln);var nn=Qt(sn);function sn(Kt){return ot(this,sn),nn.call(this,Kt)}return sn}(Zt),tn=new en(Gt);return Object.keys(Gt.levels).forEach(function(ln){Yt('Define prototype method for "%s"',ln),ln!=="log"?(en.prototype[ln]=function(){for(var nn=this||tn,sn=arguments.length,Kt=new Array(sn),dn=0;dn0){Qt=Vt.substr(0,Yt),Bt=Vt.substr(Yt+1);var Mt=Qt.indexOf(".Module");Mt>0&&(Vt=Vt.substr(Mt+1),Qt=Qt.substr(0,Mt))}Wt=null}Bt&&(Wt=Qt,Xt=Bt),Bt===""&&(Xt=null,Vt=null);var Gt={fileName:Ft[2]||null,lineNumber:parseInt(Ft[3],10)||null,functionName:Vt,typeName:Wt,methodName:Xt,columnNumber:parseInt(Ft[4],10)||null,native:Zt};return ot._createParsedCallSite(Gt)}}).filter(function(Ut){return!!Ut})},["this","typeName","functionName","methodName","fileName","lineNumber","columnNumber","function","evalOrigin"].forEach(function(it){nt.prototype[it]=null,nt.prototype["get"+it[0].toUpperCase()+it.substr(1)]=function(){return this[it]}}),["topLevel","eval","native","constructor"].forEach(function(it){nt.prototype[it]=!1,nt.prototype["is"+it[0].toUpperCase()+it.substr(1)]=function(){return this[it]}}),tt._createParsedCallSite=function(it){return new nt(it)}},function(et,tt,nt){function it(Wt){return(it=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})(Wt)}function ot(Wt,Xt){for(var Zt=0;Zt"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}();return function(){var Zt,Yt=Bt(Wt);if(Xt){var Mt=Bt(this).constructor;Zt=Reflect.construct(Yt,arguments,Mt)}else Zt=Yt.apply(this,arguments);return Qt(this,Zt)}}function Qt(Wt,Xt){return!Xt||it(Xt)!=="object"&&typeof Xt!="function"?function(Zt){if(Zt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Zt}(Wt):Xt}function Bt(Wt){return(Bt=Object.setPrototypeOf?Object.getPrototypeOf:function(Xt){return Xt.__proto__||Object.getPrototypeOf(Xt)})(Wt)}var Vt=nt(33).Writable;et.exports=function(Wt){(function(Gt,en){if(typeof en!="function"&&en!==null)throw new TypeError("Super expression must either be null or a function");Gt.prototype=Object.create(en&&en.prototype,{constructor:{value:Gt,writable:!0,configurable:!0}}),en&&Ut(Gt,en)})(Mt,Wt);var Xt,Zt,Yt=Ft(Mt);function Mt(Gt){var en;if(function(tn,ln){if(!(tn instanceof ln))throw new TypeError("Cannot call a class as a function")}(this,Mt),en=Yt.call(this,{objectMode:!0}),!Gt)throw new Error("ExceptionStream requires a TransportStream instance.");return en.handleExceptions=!0,en.transport=Gt,en}return Xt=Mt,(Zt=[{key:"_write",value:function(Gt,en,tn){return Gt.exception?this.transport.log(Gt,tn):(tn(),!0)}}])&&ot(Xt.prototype,Zt),Mt}(Vt)},function(et,tt,nt){(function(it){function ot(Xt,Zt){for(var Yt=0;Yt0&&Qt.writeString(1,Bt)},proto.google.protobuf.StringValue.prototype.getValue=function(){return it.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.StringValue.prototype.setValue=function(Ft){return it.Message.setProto3StringField(this,1,Ft)},it.Message.GENERATE_TO_OBJECT&&(proto.google.protobuf.BytesValue.prototype.toObject=function(Ft){return proto.google.protobuf.BytesValue.toObject(Ft,this)},proto.google.protobuf.BytesValue.toObject=function(Ft,Qt){var Bt={value:Qt.getValue_asB64()};return Ft&&(Bt.$jspbMessageInstance=Qt),Bt}),proto.google.protobuf.BytesValue.deserializeBinary=function(Ft){var Qt=new it.BinaryReader(Ft),Bt=new proto.google.protobuf.BytesValue;return proto.google.protobuf.BytesValue.deserializeBinaryFromReader(Bt,Qt)},proto.google.protobuf.BytesValue.deserializeBinaryFromReader=function(Ft,Qt){for(;Qt.nextField()&&!Qt.isEndGroup();)switch(Qt.getFieldNumber()){case 1:var Bt=Qt.readBytes();Ft.setValue(Bt);break;default:Qt.skipField()}return Ft},proto.google.protobuf.BytesValue.prototype.serializeBinary=function(){var Ft=new it.BinaryWriter;return proto.google.protobuf.BytesValue.serializeBinaryToWriter(this,Ft),Ft.getResultBuffer()},proto.google.protobuf.BytesValue.serializeBinaryToWriter=function(Ft,Qt){var Bt;(Bt=Ft.getValue_asU8()).length>0&&Qt.writeBytes(1,Bt)},proto.google.protobuf.BytesValue.prototype.getValue=function(){return it.Message.getFieldWithDefault(this,1,"")},proto.google.protobuf.BytesValue.prototype.getValue_asB64=function(){return it.Message.bytesAsB64(this.getValue())},proto.google.protobuf.BytesValue.prototype.getValue_asU8=function(){return it.Message.bytesAsU8(this.getValue())},proto.google.protobuf.BytesValue.prototype.setValue=function(Ft){return it.Message.setProto3BytesField(this,1,Ft)},ot.object.extend(tt,proto.google.protobuf)},function(module,exports,__webpack_require__){(function(global,Buffer){var $jscomp=$jscomp||{};$jscomp.scope={},$jscomp.findInternal=function(et,tt,nt){et instanceof String&&(et=String(et));for(var it=et.length,ot=0;ot=ot}},"es6","es3"),$jscomp.polyfill("Array.prototype.find",function(et){return et||function(tt,nt){return $jscomp.findInternal(this,tt,nt).v}},"es6","es3"),$jscomp.polyfill("String.prototype.startsWith",function(et){return et||function(tt,nt){var it=$jscomp.checkStringArgs(this,tt,"startsWith");tt+="";var ot=it.length,Ut=tt.length;nt=Math.max(0,Math.min(0|nt,it.length));for(var Ft=0;Ft=Ut}},"es6","es3"),$jscomp.polyfill("String.prototype.repeat",function(et){return et||function(tt){var nt=$jscomp.checkStringArgs(this,null,"repeat");if(0>tt||1342177279>>=1)&&(nt+=nt);return it}},"es6","es3");var COMPILED=!0,goog=goog||{};goog.global=this||self,goog.isDef=function(et){return et!==void 0},goog.isString=function(et){return typeof et=="string"},goog.isBoolean=function(et){return typeof et=="boolean"},goog.isNumber=function(et){return typeof et=="number"},goog.exportPath_=function(et,tt,nt){et=et.split("."),nt=nt||goog.global,et[0]in nt||nt.execScript===void 0||nt.execScript("var "+et[0]);for(var it;et.length&&(it=et.shift());)!et.length&&goog.isDef(tt)?nt[it]=tt:nt=nt[it]&&nt[it]!==Object.prototype[it]?nt[it]:nt[it]={}},goog.define=function(et,tt){return tt},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(et){if(goog.isInModuleLoader_())throw Error("goog.provide cannot be used within a module.");goog.constructNamespace_(et)},goog.constructNamespace_=function(et,tt){goog.exportPath_(et,tt)},goog.getScriptNonce=function(et){return et&&et!=goog.global?goog.getScriptNonce_(et.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(et){return(et=et.querySelector&&et.querySelector("script[nonce]"))&&(et=et.nonce||et.getAttribute("nonce"))&&goog.NONCE_PATTERN_.test(et)?et:""},goog.VALID_MODULE_RE_=/^[a-zA-Z_$][a-zA-Z0-9._$]*$/,goog.module=function(et){if(!goog.isString(et)||!et||et.search(goog.VALID_MODULE_RE_)==-1)throw Error("Invalid module identifier");if(!goog.isInGoogModuleLoader_())throw Error("Module "+et+" 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=et},goog.module.get=function(et){return goog.module.getInternal_(et)},goog.module.getInternal_=function(et){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 et=goog.global.$jscomp;return!!et&&typeof et.getCurrentModulePath=="function"&&!!et.getCurrentModulePath()},goog.module.declareLegacyNamespace=function(){goog.moduleLoaderState_.declareLegacyNamespace=!0},goog.declareModuleId=function(et){if(goog.moduleLoaderState_)goog.moduleLoaderState_.moduleName=et;else{var tt=goog.global.$jscomp;if(!tt||typeof tt.getCurrentModulePath!="function")throw Error('Module with namespace "'+et+'" has been loaded incorrectly.');tt=tt.require(tt.getCurrentModulePath()),goog.loadedModules_[et]={exports:tt,type:goog.ModuleType.ES6,moduleId:et}}},goog.setTestOnly=function(et){if(goog.DISALLOW_TEST_ONLY_CODE)throw et=et||"",Error("Importing test-only code into non-debug environment"+(et?": "+et:"."))},goog.forwardDeclare=function(et){},goog.getObjectByName=function(et,tt){et=et.split("."),tt=tt||goog.global;for(var nt=0;nt"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=function(){return this?this:typeof window<"u"?window:typeof j<"u"?j:typeof self<"u"?self:Function("return this")()}.call(null),$=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="dmFyIFI9T2JqZWN0LmRlZmluZVByb3BlcnR5O3ZhciBHPShNLGIseCk9PmIgaW4gTT9SKE0sYix7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6eH0pOk1bYl09eDt2YXIgST0oTSxiLHgpPT4oRyhNLHR5cGVvZiBiIT0ic3ltYm9sIj9iKyIiOmIseCkseCk7KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IFM9e21pbGxpc2Vjb25kOjEsc2Vjb25kOjFlMyxtaW51dGU6NmU0LGhvdXI6MzZlNSxkYXk6ODY0ZTUsd2Vlazo2MDQ4ZTUsbW9udGg6MjU5MmU2LHllYXI6MzE1MzZlNn07ZnVuY3Rpb24gcShvKXt9Y2xhc3MgX3tjb25zdHJ1Y3Rvcih7Y2FwYWNpdHk6dCx0aW1lb3V0Om59PXt9KXtJKHRoaXMsImVudHJpZXMiLG5ldyBNYXApO0kodGhpcywibWV0YWRhdGEiLG5ldyBNYXApO0kodGhpcywiY2FwYWNpdHkiKTtJKHRoaXMsInRpbWVvdXQiKTt0aGlzLmNhcGFjaXR5PXR8fDFlNCx0aGlzLnRpbWVvdXQ9bnx8Uy5taW51dGV9Z2V0KHQsbil7Y29uc3QgZT10aGlzLmtleVRvQ2FjaGVLZXkodCksYz10aGlzLmVudHJpZXMuZ2V0KGUpLGk9dGhpcy5tZXRhZGF0YS5nZXQoZSk7cmV0dXJuKGM9PT12b2lkIDB8fGkmJihpPT1udWxsP3ZvaWQgMDppLmV4cGlyYXRpb24uZ2V0VGltZSgpKTxEYXRlLm5vdygpKSYmIShpIT1udWxsJiZpLmdlbmVyYXRpbmcpJiZuJiZ0aGlzLmdlbmVyYXRlKHQsbigpKSxjPT09dm9pZCAwJiZpJiZpLmxhc3RWYWx1ZSE9PXZvaWQgMD9pLmxhc3RWYWx1ZTpjfXNldCh0LG4pe2NvbnN0IGU9dGhpcy5rZXlUb0NhY2hlS2V5KHQpO3RoaXMubWV0YWRhdGEuc2V0KGUse2dlbmVyYXRpbmc6ITEsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCksbGFzdFZhbHVlOm59KSx0aGlzLmVudHJpZXMuc2V0KGUsbiksdGhpcy5tZXRhZGF0YS5zaXplPnRoaXMuY2FwYWNpdHkmJnRoaXMuZGVsZXRlT2xkZXN0RW50cnkoKX1jbGVhcigpe3RoaXMuZW50cmllcy5jbGVhcigpLFsuLi50aGlzLm1ldGFkYXRhLnZhbHVlcygpXS5mb3JFYWNoKHQ9PnQuZ2VuZXJhdGluZz0hMSl9Y2xlYXJLZXkodCl7dGhpcy5tZXRhZGF0YS5kZWxldGUodCksdGhpcy5lbnRyaWVzLmRlbGV0ZSh0KX1rZXlUb0NhY2hlS2V5KHQpe3JldHVybiBKU09OLnN0cmluZ2lmeSh0KX1kZWxldGVPbGRlc3RFbnRyeSgpe2lmKHRoaXMubWV0YWRhdGEuc2l6ZTwxKXJldHVybjtjb25zdFt0XT1bLi4udGhpcy5tZXRhZGF0YS5lbnRyaWVzKCldLnJlZHVjZSgoW24sZV0sW2MsaV0pPT5pLmV4cGlyYXRpb24uZ2V0VGltZSgpPGUuZXhwaXJhdGlvbi5nZXRUaW1lKCk/W2MsaV06W24sZV0pO3RoaXMuY2xlYXJLZXkodCl9Z2VuZXJhdGUodCxuKXtjb25zdCBlPXRoaXMua2V5VG9DYWNoZUtleSh0KSxjPXRoaXMubWV0YWRhdGEuZ2V0KGUpfHx7fTt0aGlzLm1ldGFkYXRhLnNldChlLHsuLi5jLGdlbmVyYXRpbmc6ITAsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCl9KSxzZXRUaW1lb3V0KCgpPT57bi50aGVuKGk9Pntjb25zdCByPXRoaXMubWV0YWRhdGEuZ2V0KGUpOyEociE9bnVsbCYmci5nZW5lcmF0aW5nKXx8dGhpcy5zZXQodCxpKX0pfSwwKX19LyoqCiAqIExaRiBjb21wcmVzc2lvbi9kZWNvbXByZXNzaW9uIG1vZHVsZS4gUG9ydGVkIGZyb20gdGhlIEMKICogaW1wbGVtZW50YXRpb24gb2YgbGlibHpmLCBzcGVjZmljYWxseSBsemZfYy5jIGFuZCBsemZfZC5jCiAqIEBsaWNlbnNlIEJTRC0yLUNsYXVzZQogKi9mdW5jdGlvbiBLKG8pe3ZhciB0PW5ldyBVaW50OEFycmF5KG8pLG49W10sZT0wLGM9MDtkb3t2YXIgaT10W2UrK107aWYoaTwxPDw1KXtpZihpKyssZStpPnQubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBpbnB1dCIpO2Zvcig7aS0tOyluW2MrK109dFtlKytdfWVsc2V7dmFyIHI9aT4+NSxmPWMtKChpJjMxKTw8OCktMTtpZihlPj10Lmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQiKTtpZihyPT03JiYocis9dFtlKytdLGU+PXQubGVuZ3RoKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQiKTtpZihmLT10W2UrK10sZjwwKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBpbnB1dCIpO3IrPTI7ZG8gbltjKytdPW5bZisrXTt3aGlsZSgtLXIpfX13aGlsZShlPHQubGVuZ3RoKTtpZih0eXBlb2YgQnVmZmVyIT0idW5kZWZpbmVkIilyZXR1cm4gbmV3IEJ1ZmZlcihuKTt2YXIgdT1uZXcgVWludDhBcnJheShuLmxlbmd0aCk7cmV0dXJuIHUuc2V0KG4pLHV9ZnVuY3Rpb24gTyhvKXt2YXIgdD0xNixuPTE8PHQsZT0xPDwxMyxjPSgxPDw4KSsoMTw8MyksaT0xPDw1O2Z1bmN0aW9uIHIodixUKXtyZXR1cm4gdltUXTw8OHx2W1QrMV19ZnVuY3Rpb24gZih2LFQsUCl7cmV0dXJuIHY8PDh8VFtQKzJdfWZ1bmN0aW9uIHUodil7cmV0dXJuIHYqNTA2ODMyODI5Pj4zMi10LTgmbi0xfWZvcih2YXIgcz1uZXcgVWludDhBcnJheShvKSxhPVtdLGQ9bmV3IFVpbnQzMkFycmF5KG4pLHk9cy5sZW5ndGgsaD0wLGc9cihzLGgpLHA9MSxsPTA7aDx5LTI7KXtnPWYoZyxvLGgpO3ZhciB6PXUoZyksbT1kW3pdO2Rbel09aDt2YXIgRTtpZihtPGgmJihFPWgtbS0xKTxlJiZtPjAmJnNbbSsyXT09c1toKzJdJiZzW20rMV09PXNbaCsxXSYmc1ttXT09c1toXSl7dmFyIHc9MixGPXktaC13O0Y9Rj5jP2M6RixhW3AtbC0xXT1sLTEmMjU1LGw9PTAmJihwLT0xKTtkbyB3Kys7d2hpbGUodzxGJiZzW20rd109PXNbaCt3XSk7aWYody09MixoKyssdzw3P2FbcCsrXT0oRT4+OCkrKHc8PDUpJjI1NTooYVtwKytdPShFPj44KSsoNzw8NSkmMjU1LGFbcCsrXT13LTcmMjU1KSxhW3ArK109RSYyNTUsbD0wLHArKyxoKz13KzEsaD49eS0yKWJyZWFrOy0taCwtLWgsZz1yKHMsaCksZz1mKGcscyxoKSxkW3UoZyldPWgrKyxnPWYoZyxzLGgpLGRbdShnKV09aCsrfWVsc2UgbCsrLGFbcCsrXT1zW2grK10sbD09aSYmKGFbcC1sLTFdPWwtMSYyNTUsbD0wLHArKyl9Zm9yKDtoPHk7KWwrKyxhW3ArK109c1toKytdLGw9PWkmJihhW3AtbC0xXT1sLTEmMjU1LGw9MCxwKyspO2lmKGwhPTAmJihhW3AtbC0xXT1sLTEmMjU1KSx0eXBlb2YgQnVmZmVyIT0idW5kZWZpbmVkIilyZXR1cm4gbmV3IEJ1ZmZlcihhKTt2YXIgVT1uZXcgVWludDhBcnJheShhLmxlbmd0aCk7cmV0dXJuIFUuc2V0KGEpLFV9dmFyIEI9e2RlY29tcHJlc3M6Syxjb21wcmVzczpPfTtjb25zdCBDPShvLHQpPT50PD1vP1tdOm5ldyBBcnJheSh0LW8pLmZpbGwoMCkubWFwKChuLGUpPT5lK28pLEE9ITA7ZnVuY3Rpb24gSChvKXtjb25zdCB0PWF0b2Iobyksbj10Lmxlbmd0aCxlPW5ldyBVaW50OEFycmF5KG4pO2ZvcihsZXQgYz0wO2M8bjtjKz0xKWVbY109dC5jaGFyQ29kZUF0KGMpO3JldHVybiBlLmJ1ZmZlcn1mdW5jdGlvbiBMKG8pe2NvbnN0IHQ9bmV3IFVpbnQ4QXJyYXkobyk7bGV0IG49IiIsZT0wO2Zvcig7ZTx0Lmxlbmd0aCYmbi5zZWFyY2goL1tcclxuXURBVEFccyhcUyopXHMvaSk9PT0tMTtlKz0xKW4rPVN0cmluZy5mcm9tQ2hhckNvZGUodFtlXSk7cmV0dXJue2JvZHk6by5zbGljZShlKSxoZWFkZXI6bi5yZXBsYWNlKC8jLiovZ2ksIiIpfX1mdW5jdGlvbiBWKG8pe2NvbnN0IG49bmV3IFVpbnQzMkFycmF5KG8sMCwyKVswXTtyZXR1cm4gbj09PTA/bmV3IEFycmF5QnVmZmVyKDApOkIuZGVjb21wcmVzcyhuZXcgVWludDhBcnJheShvLDgsbikpLmJ1ZmZlcn1mdW5jdGlvbiBrKG8pe2NvbnN0e2hlYWRlcjp0LGJvZHk6bn09TChvKSxlPS9WRVJTSU9OICguKikvaS5leGVjKHQpO2lmKGU9PT1udWxsKXRocm93IG5ldyBFcnJvcihgTWlzc2luZyB2ZXJzaW9uLiBIZWFkZXIgJHt0fWApO2NvbnN0IGM9ZVsxXSxpPS9GSUVMRFMgKC4qKS9pLmV4ZWModCk7aWYoIWkpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIGZpZWxkcyIpO2NvbnN0IHI9aVsxXS5zcGxpdCgiICIpLGY9L1NJWkUgKC4qKS9pLmV4ZWModCk7aWYoIWYpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIHNpemUiKTtjb25zdCB1PWZbMV0uc3BsaXQoIiAiKS5tYXAodj0+cGFyc2VJbnQodiwxMCkpLHM9L1RZUEUgKC4qKS9pLmV4ZWModCk7aWYoIXMpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIHR5cGUiKTtjb25zdCBhPXNbMV0uc3BsaXQoIiAiKSxkPS9DT1VOVCAoLiopL2kuZXhlYyh0KTtsZXQgeTtkJiYoeT1kWzFdLnNwbGl0KCIgIikubWFwKHY9PnBhcnNlSW50KHYsMTApKSk7Y29uc3QgaD15fHxyLm1hcCh2PT4xKSxnPS9XSURUSCAoLiopL2kuZXhlYyh0KTtpZighZyl0aHJvdyBuZXcgRXJyb3IoIk1pc3Npbmcgd2lkdGgiKTtjb25zdCBwPXBhcnNlSW50KGdbMV0sMTApLGw9L0hFSUdIVCAoLiopL2kuZXhlYyh0KTtpZighbCl0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgaGVpZ2h0Iik7Y29uc3Qgej1wYXJzZUludChsWzFdLDEwKSxtPS9QT0lOVFMgKC4qKS9pLmV4ZWModCk7bGV0IEU7bSYmKEU9cGFyc2VJbnQobVsxXSwxMCkpO2NvbnN0IHc9RXx8cCp6LEY9L0RBVEEgKC4qKS9pLmV4ZWModCk7aWYoIUYpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIGRhdGEiKTtjb25zdCBVPUZbMV07cmV0dXJue2JvZHk6bixoZWFkZXI6e2NvdW50OmgsZGF0YTpVLGZpZWxkczpyLGhlaWdodDp6LHBvaW50czp3LHNpemU6dSx0eXBlOmEsdmVyc2lvbjpjLHdpZHRoOnB9fX1mdW5jdGlvbiBOKG8pe2NvbnN0IHQ9e307cmV0dXJuIG8uZmllbGRzLnJlZHVjZSgoe29mZnNldHM6bixzaXplOmV9LGMsaSk9PntsZXQgcj1lO3JldHVybiBjPT09IngiJiYobi54PXIpLGM9PT0ieSImJihuLnk9ciksYz09PSJ6IiYmKG4uej1yKSxjPT09InJnYiImJihuLnJnYj1yKSxjPT09InJnYmEiJiYobi5yZ2JhPXIpLGM9PT0iaW50ZW5zaXR5IiYmKG4uaW50ZW5zaXR5PXIpLG8uZGF0YT09PSJhc2NpaSI/cis9MTpvLmRhdGE9PT0iYmluYXJ5Ij9yKz1vLnNpemVbaV0qby5jb3VudFtpXTpvLmRhdGE9PT0iYmluYXJ5X2NvbXByZXNzZWQiJiYocis9by5zaXplW2ldKm8uY291bnRbaV0qby5wb2ludHMpLHtvZmZzZXRzOm4sc2l6ZTpyfX0se29mZnNldHM6dCxzaXplOjB9KX1mdW5jdGlvbiBEKG8pe2NvbnN0e2hlYWRlcjp0LGJvZHk6bn09ayhvKSx7b2Zmc2V0czplLHNpemU6Y309Tih0KTtsZXQgaTtlLnghPT12b2lkIDAmJmUueSE9PXZvaWQgMCYmZS56IT09dm9pZCAwJiYoaT1uZXcgRmxvYXQzMkFycmF5KHQucG9pbnRzKjMpKTtsZXQgcjsoZS5yZ2IhPT12b2lkIDB8fGUucmdiYSE9PXZvaWQgMCkmJihyPW5ldyBGbG9hdDMyQXJyYXkodC5wb2ludHMqNCkpO2xldCBmO2lmKGUuaW50ZW5zaXR5IT09dm9pZCAwJiYoZj1uZXcgRmxvYXQzMkFycmF5KHQucG9pbnRzKSksdC5kYXRhPT09ImFzY2lpIilTdHJpbmcuZnJvbUNoYXJDb2RlKC4uLm5ldyBVaW50OEFycmF5KG4pKS5zcGxpdChgCmApLmZvckVhY2goKGEsZCk9Pntjb25zdCB5PWEuc3BsaXQoIiAiKTtpZihpIT09dm9pZCAwJiYoaVtkKjMrMF09cGFyc2VGbG9hdCh5W2UueHx8MF0pLGlbZCozKzFdPXBhcnNlRmxvYXQoeVtlLnl8fDBdKSxpW2QqMysyXT1wYXJzZUZsb2F0KHlbZS56fHwwXSkpLHIhPT12b2lkIDApe2NvbnN0IGg9bmV3IEludDMyQXJyYXkoW3BhcnNlSW50KHlbZS5yZ2J8fGUucmdiYXx8MF0sMTApXSksZz1uZXcgRGF0YVZpZXcoaC5idWZmZXIsMCk7cltkKjMrMF09Zy5nZXRVaW50OCgyKS8yNTUscltkKjMrMV09Zy5nZXRVaW50OCgxKS8yNTUscltkKjMrMl09Zy5nZXRVaW50OCgwKS8yNTV9ZiE9PXZvaWQgMCYmKGZbZF09cGFyc2VGbG9hdCh5W2UuaW50ZW5zaXR5fHwwXSkpfSk7ZWxzZSBpZih0LmRhdGE9PT0iYmluYXJ5Iil7Y29uc3QgdT1uZXcgRGF0YVZpZXcobik7QygwLHQucG9pbnRzKS5mb3JFYWNoKHM9Pntjb25zdCBhPWMqcztpZihpIT09dm9pZCAwJiYoaVtzKjMrMF09dS5nZXRGbG9hdDMyKGErKGUueHx8MCksQSksaVtzKjMrMV09dS5nZXRGbG9hdDMyKGErKGUueXx8MCksQSksaVtzKjMrMl09dS5nZXRGbG9hdDMyKGErKGUuenx8MCksQSkpLHIhPT12b2lkIDApe2NvbnN0IGQ9YSsoZS5yZ2J8fGUucmdiYXx8MCk7ZCsyPD11LmJ5dGVMZW5ndGgmJihyW3MqNCswXT11LmdldFVpbnQ4KGQrMikvMjU1LHJbcyo0KzFdPXUuZ2V0VWludDgoZCsxKS8yNTUscltzKjQrMl09dS5nZXRVaW50OChkKzApLzI1NSxyW3MqNCszXT0xKX1mIT09dm9pZCAwJiYoZltzXT11LmdldEZsb2F0MzIoYSsoZS5pbnRlbnNpdHl8fDApLEEpKX0pfWVsc2UgaWYodC5kYXRhPT09ImJpbmFyeV9jb21wcmVzc2VkIil7Y29uc3QgdT1WKG4pLHM9bmV3IERhdGFWaWV3KHUpO0MoMCx0LnBvaW50cykuZm9yRWFjaChhPT57aWYoaSE9PXZvaWQgMCYmKGlbYSozKzBdPXMuZ2V0RmxvYXQzMigoZS54fHwwKSthKjQsQSksaVthKjMrMV09cy5nZXRGbG9hdDMyKChlLnl8fDApK2EqNCxBKSxpW2EqMysyXT1zLmdldEZsb2F0MzIoKGUuenx8MCkrYSo0LEEpKSxyIT09dm9pZCAwKXtjb25zdCBkPShlLnJnYnx8ZS5yZ2JhfHwwKSthKjQ7ZCsyPD1zLmJ5dGVMZW5ndGgmJihyW2EqNCswXT1zLmdldFVpbnQ4KGQrMikvMjU1LHJbYSo0KzFdPXMuZ2V0VWludDgoZCsxKS8yNTUsclthKjQrMl09cy5nZXRVaW50OChkKzApLzI1NSxyW2EqNCszXT0xKX1mIT09dm9pZCAwJiYoZlthXT1zLmdldEZsb2F0MzIoKGUuaW50ZW5zaXR5fHwwKSthKjQsQSkpfSl9cmV0dXJue2NvbG9yczpyLGhlYWRlcjp0LGludGVuc2l0eTpmLHBvc2l0aW9uczppfX1mdW5jdGlvbiBYKG8pe3JldHVybiBEKEgobykpfWNvbnN0IFo9bmV3IF8oe2NhcGFjaXR5OjFlMyx0aW1lb3V0OjEqUy5taW51dGV9KTtvbm1lc3NhZ2U9YXN5bmMgbz0+e2NvbnN0e3VybDp0LGlkOm4scG9pbnRDbG91ZDplfT1vLmRhdGE7aWYodCl7Y29uc3QgYz1aLmdldCh0LGFzeW5jKCk9PkQoYXdhaXQgZmV0Y2godCx7bW9kZToiY29ycyJ9KS50aGVuKHI9PnIuYXJyYXlCdWZmZXIoKSkpKTtjJiZwb3N0TWVzc2FnZSh7dXJsOnQscGNkOmN9KX1pZihuJiZlKXtjb25zdCBjPVgoZSk7cG9zdE1lc3NhZ2Uoe2lkOm4scGNkOmN9KX19fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9UGNkTG9hZGVyV29ya2VyLWVhYWMwYjMxLmpzLm1hcAo=";typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs$2)],{type:"text/javascript;charset=utf-8"});const encodedJs$1="dmFyIGw9T2JqZWN0LmRlZmluZVByb3BlcnR5O3ZhciBnPShjLG4sbyk9Pm4gaW4gYz9sKGMsbix7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6b30pOmNbbl09bzt2YXIgcj0oYyxuLG8pPT4oZyhjLHR5cGVvZiBuIT0ic3ltYm9sIj9uKyIiOm4sbyksbyk7KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IHU9e21pbGxpc2Vjb25kOjEsc2Vjb25kOjFlMyxtaW51dGU6NmU0LGhvdXI6MzZlNSxkYXk6ODY0ZTUsd2Vlazo2MDQ4ZTUsbW9udGg6MjU5MmU2LHllYXI6MzE1MzZlNn07ZnVuY3Rpb24geChoKXt9Y2xhc3MgbXtjb25zdHJ1Y3Rvcih7Y2FwYWNpdHk6ZSx0aW1lb3V0OnN9PXt9KXtyKHRoaXMsImVudHJpZXMiLG5ldyBNYXApO3IodGhpcywibWV0YWRhdGEiLG5ldyBNYXApO3IodGhpcywiY2FwYWNpdHkiKTtyKHRoaXMsInRpbWVvdXQiKTt0aGlzLmNhcGFjaXR5PWV8fDFlNCx0aGlzLnRpbWVvdXQ9c3x8dS5taW51dGV9Z2V0KGUscyl7Y29uc3QgYT10aGlzLmtleVRvQ2FjaGVLZXkoZSksaT10aGlzLmVudHJpZXMuZ2V0KGEpLHQ9dGhpcy5tZXRhZGF0YS5nZXQoYSk7cmV0dXJuKGk9PT12b2lkIDB8fHQmJih0PT1udWxsP3ZvaWQgMDp0LmV4cGlyYXRpb24uZ2V0VGltZSgpKTxEYXRlLm5vdygpKSYmISh0IT1udWxsJiZ0LmdlbmVyYXRpbmcpJiZzJiZ0aGlzLmdlbmVyYXRlKGUscygpKSxpPT09dm9pZCAwJiZ0JiZ0Lmxhc3RWYWx1ZSE9PXZvaWQgMD90Lmxhc3RWYWx1ZTppfXNldChlLHMpe2NvbnN0IGE9dGhpcy5rZXlUb0NhY2hlS2V5KGUpO3RoaXMubWV0YWRhdGEuc2V0KGEse2dlbmVyYXRpbmc6ITEsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCksbGFzdFZhbHVlOnN9KSx0aGlzLmVudHJpZXMuc2V0KGEscyksdGhpcy5tZXRhZGF0YS5zaXplPnRoaXMuY2FwYWNpdHkmJnRoaXMuZGVsZXRlT2xkZXN0RW50cnkoKX1jbGVhcigpe3RoaXMuZW50cmllcy5jbGVhcigpLFsuLi50aGlzLm1ldGFkYXRhLnZhbHVlcygpXS5mb3JFYWNoKGU9PmUuZ2VuZXJhdGluZz0hMSl9Y2xlYXJLZXkoZSl7dGhpcy5tZXRhZGF0YS5kZWxldGUoZSksdGhpcy5lbnRyaWVzLmRlbGV0ZShlKX1rZXlUb0NhY2hlS2V5KGUpe3JldHVybiBKU09OLnN0cmluZ2lmeShlKX1kZWxldGVPbGRlc3RFbnRyeSgpe2lmKHRoaXMubWV0YWRhdGEuc2l6ZTwxKXJldHVybjtjb25zdFtlXT1bLi4udGhpcy5tZXRhZGF0YS5lbnRyaWVzKCldLnJlZHVjZSgoW3MsYV0sW2ksdF0pPT50LmV4cGlyYXRpb24uZ2V0VGltZSgpPGEuZXhwaXJhdGlvbi5nZXRUaW1lKCk/W2ksdF06W3MsYV0pO3RoaXMuY2xlYXJLZXkoZSl9Z2VuZXJhdGUoZSxzKXtjb25zdCBhPXRoaXMua2V5VG9DYWNoZUtleShlKSxpPXRoaXMubWV0YWRhdGEuZ2V0KGEpfHx7fTt0aGlzLm1ldGFkYXRhLnNldChhLHsuLi5pLGdlbmVyYXRpbmc6ITAsZXhwaXJhdGlvbjpuZXcgRGF0ZShEYXRlLm5vdygpK3RoaXMudGltZW91dCl9KSxzZXRUaW1lb3V0KCgpPT57cy50aGVuKHQ9Pntjb25zdCBkPXRoaXMubWV0YWRhdGEuZ2V0KGEpOyEoZCE9bnVsbCYmZC5nZW5lcmF0aW5nKXx8dGhpcy5zZXQoZSx0KX0pfSwwKX19Y29uc3QgeT1uZXcgbSh7Y2FwYWNpdHk6MWUzLHRpbWVvdXQ6MSp1Lm1pbnV0ZX0pO29ubWVzc2FnZT1hc3luYyBoPT57Y29uc3R7dXJsOmV9PWguZGF0YTtpZihlKXtjb25zdCBzPXkuZ2V0KGUsYXN5bmMoKT0+YXdhaXQgZmV0Y2goZSx7bW9kZToiY29ycyJ9KS50aGVuKGk9PmkuanNvbigpKSk7cyYmcG9zdE1lc3NhZ2Uoe3VybDplLHJlc3BvbnNlOnN9KX19fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9RGF0YUZldGNoV29ya2VyLTBhMTY4OTMzLmpzLm1hcAo=";typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs$1)],{type:"text/javascript;charset=utf-8"});const encodedJs$3="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiOyhmdW5jdGlvbihTKXt0eXBlb2YgZGVmaW5lPT0iZnVuY3Rpb24iJiZkZWZpbmUuYW1kP2RlZmluZShTKTpTKCl9KShmdW5jdGlvbigpe2NvbnN0IEo9e21pbGxpc2Vjb25kOjEsc2Vjb25kOjFlMyxtaW51dGU6NmU0LGhvdXI6MzZlNSxkYXk6ODY0ZTUsd2Vlazo2MDQ4ZTUsbW9udGg6MjU5MmU2LHllYXI6MzE1MzZlNn07dmFyIHk9e30sRj17fSxhPXt9O09iamVjdC5kZWZpbmVQcm9wZXJ0eShhLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTtjb25zdCBHPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPSI7ZnVuY3Rpb24gaChBKXtsZXQgST1BLmxlbmd0aDtBW0EubGVuZ3RoLTJdPT09Ij0iP0ktPTI6QVtBLmxlbmd0aC0xXT09PSI9IiYmSS0tO2NvbnN0IGc9SS80KjN8MCxCPW5ldyBVaW50OEFycmF5KGcpO2ZvcihsZXQgUT0wLEM9MDtRPGc7USs9Myl7Y29uc3QgRD1HLmluZGV4T2YoQVtDKytdKSxFPUcuaW5kZXhPZihBW0MrK10pO2lmKEJbUV09RDw8MnxFPj40LEM9PT1JKWJyZWFrO2NvbnN0IHc9Ry5pbmRleE9mKEFbQysrXXx8Ij0iKTtpZihCW1ErMV09KEUmMTUpPDw0fHc+PjIsQz09PUkpYnJlYWs7Y29uc3Qgbz1HLmluZGV4T2YoQVtDKytdfHwiPSIpO0JbUSsyXT0odyYzKTw8NnxvfXJldHVybiBCfWEuZGVjb2RlPWgsT2JqZWN0LmRlZmluZVByb3BlcnR5KEYsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO2NvbnN0IEw9IkFHRnpiUUVBQUFBQmx3RVRZQUovZndGL1lBUi9mMzkvQVg5Z0FuOS9BR0FEZjM5L0FYOWdBWDhBWUFsL2YzOS9mMzkvZjM4QVlBRi9BWDlnQkg5L2YzOEFZQVovZjM5L2YzOEJmMkFJZjM5L2YzOS9mMzhBWUFOL2YzOEFZQVYvZjM5L2Z3Ri9ZQUFBWUFWL2YzOS9md0JnQm45L2YzOS9md0JnQ245L2YzOS9mMzkvZjM4QVlBQUJmMkFIZjM5L2YzOS9md0YvWUFoL2YzOS9mMzkvZndGL0FqQURCR2d5TmpRR2JXVnRZM0I1QUFNRWFESTJOQVp5WlhOcGVtVUFCZ1JvTWpZMEJtMWxiVzl5ZVFJQmdBS0FnQUlEWTJJQUFBUUFBUU1LQVFZQUJRTUZCZ2NBQndZQUF3NERCd2NGQWdBQ0F3UUFCUVVGQlFvRUFnUUpBUWNBQXdZR0FnSUJCZ1FEQWdJQkN3RUJBd01MRFFJQkFBQUNDUWtKRHdJRkJRQUJDZ0FTQ3hFSUNBY0lDQWNFQVFRSUNBWUJFQWdBQVFZSkFYOEJRYkRFd0FJTEJ5WUVCbTFoYkd4dll3QUtDV2d5TmpSaGJHeHZZd0JnQm1SbFkyOWtaUUJoQkdsdWFYUUFZZ3IycFFWaXdBSUJBbjhnQUJBUElnSkJmMHdFUUNBQVFRRVFDeG9nQVVFQU5nSUFRUUFQQ3dKQUFrQWdBa0dBZ0lDQUJFOEVRQ0FBUVFNUUMwRi9SZ1JBUVFFUEN5QUJJQUpCSFhaQkFYRkJBV28yQWdBTUFRc2dBa0dBZ0lDQUFrOEVRQ0FBUVFVUUMwRi9SZ1JBUVFFUEN5QUJJQUpCRzNaQkEzRkJBMm8yQWdBTUFRc2dBa0dBZ0lDQUFVOEVRQ0FBUVFjUUMwRi9SZ1JBUVFFUEN5QUJJQUpCR1haQkIzRkJCMm8yQWdBTUFRc2dBaEF2SWdOQkJHb2lBa0VnUmdSQUlBRkJBRFlDQUNBQVFTQVFDeHBCQVNFQ0lBQkJBUkFEUVFGSERRSWdBQkFQSVFNZ0FFRWdFQXRCZjBZTkFpQURRUUZMRFFJZ0EwRUJhd1JBSUFGQmZ6WUNBQXdDQ3lBQlFYODJBZ0JCQVE4TElBQWdBMEVGYWhBTEdpQUFJQUlRQXlJQVFYOUdCRUJCQVE4TElBRWdBRUYvSUFKMFFYOXphallDQUF0QkFDRUNDeUFDQzRnQ0FRZC9JQUFvQWdRaEJBSkFJQUFvQWd4QkEzUWlCeUFBS0FJUUlnaHJJZ0pCSUU0RVFDQUVLQUFBSWdOQkdIUWdBMEVJZEVHQWdQd0hjWElnQTBFSWRrR0EvZ054SUFOQkdIWnljaUVESUFBb0FnZ2lBa1VOQVNBRElBSjBJQVF0QUFSQkNDQUNhM1p5SVFNTUFRc2dBa0VCU0FSQURBRUxJQVF0QUFBZ0FDZ0NDQ0lGUVJocUlnWjBJUU1nQWlBRmFrRjRhaUlDUVFGSURRQURRQ0FFTFFBQklBWkJlR29pQm5RZ0EzSWhBeUFDUVFoS0lRVWdCRUVCYWlFRUlBSkJlR29oQWlBRkRRQUxDeUFBSUFFZ0NHb2lCRFlDRUNBQUlBUkJCM0UyQWdoQmZ5RUNJQVFnQjAwRWZ5QUFJQUFvQWdBZ0JFRURkbW8yQWdRZ0EwRWdJQUZyZGdWQmZ3c0xxZzBCQjM4Q1FDQUFSUTBBSUFCQmVHb2lBeUFBUVh4cUtBSUFJZ0ZCZUhFaUFHb2hCUUpBSUFGQkFYRU5BQ0FCUVFOeFJRMEJJQU1nQXlnQ0FDSUNheUlEUWNUQUFDZ0NBQ0lFU1EwQklBQWdBbW9oQUNBRFFjakFBQ2dDQUVjRVFDQUNRZjhCVFFSQUlBTW9BZ2dpQkNBQ1FRTjJJZ0pCQTNSQjNNQUFha2NhSUFRZ0F5Z0NEQ0lCUmdSQVFiVEFBRUcwd0FBb0FnQkJmaUFDZDNFMkFnQU1Bd3NnQkNBQk5nSU1JQUVnQkRZQ0NBd0NDeUFES0FJWUlRWUNRQ0FESUFNb0Fnd2lBVWNFUUNBRUlBTW9BZ2dpQWswRVFDQUNLQUlNR2dzZ0FpQUJOZ0lNSUFFZ0FqWUNDQXdCQ3dKQUlBTkJGR29pQWlnQ0FDSUVEUUFnQTBFUWFpSUNLQUlBSWdRTkFFRUFJUUVNQVFzRFFDQUNJUWNnQkNJQlFSUnFJZ0lvQWdBaUJBMEFJQUZCRUdvaEFpQUJLQUlRSWdRTkFBc2dCMEVBTmdJQUN5QUdSUTBCQWtBZ0F5QURLQUljSWdKQkFuUkI1TUlBYWlJRUtBSUFSZ1JBSUFRZ0FUWUNBQ0FCRFFGQnVNQUFRYmpBQUNnQ0FFRitJQUozY1RZQ0FBd0RDeUFHUVJCQkZDQUdLQUlRSUFOR0cyb2dBVFlDQUNBQlJRMENDeUFCSUFZMkFoZ2dBeWdDRUNJQ0JFQWdBU0FDTmdJUUlBSWdBVFlDR0FzZ0F5Z0NGQ0lDUlEwQklBRWdBallDRkNBQ0lBRTJBaGdNQVFzZ0JTZ0NCQ0lCUVFOeFFRTkhEUUJCdk1BQUlBQTJBZ0FnQlNBQlFYNXhOZ0lFSUFNZ0FFRUJjallDQkNBQUlBTnFJQUEyQWdBUEN5QUZJQU5ORFFBZ0JTZ0NCQ0lCUVFGeFJRMEFBa0FnQVVFQ2NVVUVRQ0FGUWN6QUFDZ0NBRVlFUUVITXdBQWdBellDQUVIQXdBQkJ3TUFBS0FJQUlBQnFJZ0EyQWdBZ0F5QUFRUUZ5TmdJRUlBTkJ5TUFBS0FJQVJ3MERRYnpBQUVFQU5nSUFRY2pBQUVFQU5nSUFEd3NnQlVISXdBQW9BZ0JHQkVCQnlNQUFJQU0yQWdCQnZNQUFRYnpBQUNnQ0FDQUFhaUlBTmdJQUlBTWdBRUVCY2pZQ0JDQUFJQU5xSUFBMkFnQVBDeUFCUVhoeElBQnFJUUFDUUNBQlFmOEJUUVJBSUFVb0Fnd2hBaUFGS0FJSUlnUWdBVUVEZGlJQlFRTjBRZHpBQUdvaUIwY0VRRUhFd0FBb0FnQWFDeUFDSUFSR0JFQkJ0TUFBUWJUQUFDZ0NBRUYrSUFGM2NUWUNBQXdDQ3lBQ0lBZEhCRUJCeE1BQUtBSUFHZ3NnQkNBQ05nSU1JQUlnQkRZQ0NBd0JDeUFGS0FJWUlRWUNRQ0FGSUFVb0Fnd2lBVWNFUUVIRXdBQW9BZ0FnQlNnQ0NDSUNUUVJBSUFJb0Fnd2FDeUFDSUFFMkFnd2dBU0FDTmdJSURBRUxBa0FnQlVFVWFpSUNLQUlBSWdRTkFDQUZRUkJxSWdJb0FnQWlCQTBBUVFBaEFRd0JDd05BSUFJaEJ5QUVJZ0ZCRkdvaUFpZ0NBQ0lFRFFBZ0FVRVFhaUVDSUFFb0FoQWlCQTBBQ3lBSFFRQTJBZ0FMSUFaRkRRQUNRQ0FGSUFVb0Fod2lBa0VDZEVIa3dnQnFJZ1FvQWdCR0JFQWdCQ0FCTmdJQUlBRU5BVUc0d0FCQnVNQUFLQUlBUVg0Z0FuZHhOZ0lBREFJTElBWkJFRUVVSUFZb0FoQWdCVVliYWlBQk5nSUFJQUZGRFFFTElBRWdCallDR0NBRktBSVFJZ0lFUUNBQklBSTJBaEFnQWlBQk5nSVlDeUFGS0FJVUlnSkZEUUFnQVNBQ05nSVVJQUlnQVRZQ0dBc2dBeUFBUVFGeU5nSUVJQUFnQTJvZ0FEWUNBQ0FEUWNqQUFDZ0NBRWNOQVVHOHdBQWdBRFlDQUE4TElBVWdBVUYrY1RZQ0JDQURJQUJCQVhJMkFnUWdBQ0FEYWlBQU5nSUFDeUFBUWY4QlRRUkFJQUJCQTNZaUFVRURkRUhjd0FCcUlRQUNmMEcwd0FBb0FnQWlBa0VCSUFGMElnRnhSUVJBUWJUQUFDQUJJQUp5TmdJQUlBQU1BUXNnQUNnQ0NBc2hBaUFBSUFNMkFnZ2dBaUFETmdJTUlBTWdBRFlDRENBRElBSTJBZ2dQQ3lBRFFnQTNBaEFnQXdKL1FRQWdBRUVJZGlJQlJRMEFHa0VmSUFCQi8vLy9CMHNOQUJvZ0FTQUJRWUQrUDJwQkVIWkJDSEVpQVhRaUFpQUNRWURnSDJwQkVIWkJCSEVpQW5RaUJDQUVRWUNBRDJwQkVIWkJBbkVpQkhSQkQzWWdBU0FDY2lBRWNtc2lBVUVCZENBQUlBRkJGV3AyUVFGeGNrRWNhZ3NpQWpZQ0hDQUNRUUowUWVUQ0FHb2hBUUpBQWtBQ1FFRzR3QUFvQWdBaUJFRUJJQUowSWdkeFJRUkFRYmpBQUNBRUlBZHlOZ0lBSUFFZ0F6WUNBQ0FESUFFMkFoZ01BUXNnQUVFQVFSa2dBa0VCZG1zZ0FrRWZSaHQwSVFJZ0FTZ0NBQ0VCQTBBZ0FTSUVLQUlFUVhoeElBQkdEUUlnQWtFZGRpRUJJQUpCQVhRaEFpQUVJQUZCQkhGcUlnZEJFR29vQWdBaUFRMEFDeUFISUFNMkFoQWdBeUFFTmdJWUN5QURJQU0yQWd3Z0F5QUROZ0lJREFFTElBUW9BZ2dpQUNBRE5nSU1JQVFnQXpZQ0NDQURRUUEyQWhnZ0F5QUVOZ0lNSUFNZ0FEWUNDQXRCMU1BQVFkVEFBQ2dDQUVGL2FpSUFOZ0lBSUFBTkFFSDh3d0FoQXdOQUlBTW9BZ0FpQUVFSWFpRURJQUFOQUF0QjFNQUFRWDgyQWdBTEMzUUJBbjhqQUVFUWF5SUNKQUFnQWtFQU5nSU1JQUFnQWtFTWFoQUNJUUFDZnlBQ0tBSU1JZ05CZjBZRVFFRUJJQUJGRFFFYUlBRkJnSUNBZ0hnMkFnQkJBQXdCQzBFQklBQU5BQm9nQVNBRFFRRnFRUUYySWdGQkFDQUJheUFEUVFGeEd6WUNBRUVBQ3lFQUlBSkJFR29rQUNBQUM4Y0xBUlIvSUFGQm9EMXFMUUFBUVF4c0lnWkIxRHhxS0FJQUlRVWdCa0hRUEdvb0FnQWdBVUdRUEdvdEFBQWlCM1FoQkNBQ1JRUkFJQUFnQUNnQ0FDQUViRFlDQUFzZ0JTQUhkQ0VCQWtBQ1FDQURRWnovQTNFRVFDQUFJQVpCMkR4cUtBSUFJQWQwSWdNZ0FDZ0NQR3cyQWp3Z0FDQUFLQUk0SUFGc05nSTRRUUVoQWlBQUlBQW9BaXdnQkd3aUJ5QUFLQUlNSUFSc0lnVnFJZ2tnQUNnQ0lDQUJiQ0lLSUFBb0FqUWdBV3dpRDBFQmRXb2lFR3NpQmpZQ0xDQUFLQUlvSVFnZ0FDQUZJQWRySWdVZ0NrRUJkU0FQYXlJS2F5SUhOZ0lvSUFBb0FpUWhEaUFBSUFVZ0Ntb2lCVFlDSkNBQUlBQW9BaHdnQVd3aUR5QUFLQUlJSUFGc0lndHFJaE1nQUNnQ0VDQURiQ0lSSUFBb0FqQWdBMndpREVFQmRXb2lGV3NpQ2pZQ0hDQUFLQUlZSVEwZ0FDQUxJQTlySWdzZ0VVRUJkU0FNYXlJUmF5SVBOZ0lZSUFBb0FoUWhEQ0FBSUFzZ0VXb2lDellDRkNBQUlBUWdER3dpQkNBQUtBSUFJZ3hxSWhRZ0FDZ0NCQ0FCYkNJU0lBRWdEV3dpRFVFQmRXb2lGbXNpRVRZQ0RDQUFJQXdnQkdzaUJDQVNRUUYxSUExcklnMXJJZ3cyQWdnZ0FDQUVJQTFxSWcwMkFnUWdBQ0FCSUE1c0lnUWdBQ2dDT0NJT2F5SVNJQU1nQ0d3aUNFRUJkU0FBS0FJOEloZHJJZ05ySWdFMkFqZ2dBQ0FESUJKcUlnTTJBalFnQUNBRUlBNXFJZzRnRjBFQmRTQUlhaUlJYXlJRU5nSThJQUFnRkNBV2FpSVVJQWtnRUdvaUVHdEJJR29pRWlBSUlBNXFJZ2tnRXlBVmFpSUlRUUYxSWc1cmFrRUdkU0lUTmdJZ0lBQWdFaUFPSUFscmFrRUdkU0lPTmdJUUlBQWdFQ0FVYWtFZ2FpSVFJQWxCQVhVZ0NHb2lDV3RCQm5VaUNEWUNNQ0FBSUFrZ0VHcEJCblVpQ1RZQ0FDQUpRWUFFYWlBT1FZQUVhbkpCL3dkTERRSWdDRUdBQkdvZ0UwR0FCR3B5UWY4SFN3MENJQUFnQlNBTmFrRWdhaUlKSUFOQkFYVWdDMm9pRUd0QkJuVWlDRFlDTkNBQUlBMGdCV3RCSUdvaUJTQURJQXRCQVhVaUMydHFRUVoxSWcwMkFpUWdBQ0FGSUFzZ0EydHFRUVoxSWdNMkFoUWdBQ0FKSUJCcVFRWjFJZ1UyQWdRZ0JVR0FCR29nQTBHQUJHcHlRZjhIU3cwQ0lBaEJnQVJxSUExQmdBUnFja0gvQjBzTkFpQUFJQWNnREdwQklHb2lBeUFCUVFGMUlBOXFJZ1ZyUVFaMUlnczJBamdnQUNBTUlBZHJRU0JxSWdjZ0FTQVBRUUYxSWc5cmFrRUdkU0lNTmdJb0lBQWdCeUFQSUFGcmFrRUdkU0lCTmdJWUlBQWdBeUFGYWtFR2RTSUROZ0lJSUFOQmdBUnFJQUZCZ0FScWNrSC9CMHNOQWlBTFFZQUVhaUFNUVlBRWFuSkIvd2RMRFFJZ0FDQUdJQkZxUVNCcUlnRWdCRUVCZFNBS2FpSURhMEVHZFNJSE5nSThJQUFnRVNBR2EwRWdhaUlHSUFRZ0NrRUJkU0lGYTJwQkJuVWlDallDTENBQUlBWWdCU0FFYTJwQkJuVWlCRFlDSENBQUlBRWdBMnBCQm5VaUFEWUNEQ0FBUVlBRWFpQUVRWUFFYW5KQi93ZExEUUlnQjBHQUJHb2dDa0dBQkdweVFmOEhUUTBCREFJTElBTkI0Z0J4UlFSQVFRRWhBaUFBS0FJQVFTQnFRUVoxSWdGQmdBUnFRZjhIU3cwQ0lBQWdBVFlDT0NBQUlBRTJBandnQUNBQk5nSTBJQUFnQVRZQ01DQUFJQUUyQWl3Z0FDQUJOZ0lvSUFBZ0FUWUNKQ0FBSUFFMkFpQWdBQ0FCTmdJY0lBQWdBVFlDR0NBQUlBRTJBaFFnQUNBQk5nSVFJQUFnQVRZQ0RDQUFJQUUyQWdnZ0FDQUJOZ0lFSUFBZ0FUWUNBQXdCQzBFQklRSWdBQ0FBS0FJRUlBRnNJZ2NnQUNnQ0dDQUJiQ0lHUVFGMWFpSURJQUFvQWdBaUJTQUFLQUlVSUFSc0lnUnFJZ3BxUVNCcVFRWjFJZ0UyQWpBZ0FDQUtJQU5yUVNCcVFRWjFJZ00yQWd3Z0FDQUZJQVJySWdVZ0JpQUhRUUYxSWdkcmFrRWdha0VHZFNJRU5nSUlJQUFnQnlBR2F5QUZha0VnYWtFR2RTSUdOZ0lFSUFBZ0FUWUNBQ0FBSUFFMkFpQWdBQ0FHTmdJMElBQWdBVFlDRUNBQUlBWTJBaVFnQUNBRU5nSTRJQUFnQmpZQ0ZDQUFJQVEyQWlnZ0FDQUROZ0k4SUFBZ0JEWUNHQ0FBSUFNMkFpd2dBQ0FETmdJY0lBTkJnQVJxSUFGQmdBUnFJQVJCZ0FScUlBWkJnQVJxY25KeVFmOEhTdzBCQzBFQUlRSUxJQUlMOHdJQ0FuOEJmZ0pBSUFKRkRRQWdBQ0FDYWlJRFFYOXFJQUU2QUFBZ0FDQUJPZ0FBSUFKQkEwa05BQ0FEUVg1cUlBRTZBQUFnQUNBQk9nQUJJQU5CZldvZ0FUb0FBQ0FBSUFFNkFBSWdBa0VIU1EwQUlBTkJmR29nQVRvQUFDQUFJQUU2QUFNZ0FrRUpTUTBBSUFCQkFDQUFhMEVEY1NJRWFpSURJQUZCL3dGeFFZR0NoQWhzSWdFMkFnQWdBeUFDSUFSclFYeHhJZ1JxSWdKQmZHb2dBVFlDQUNBRVFRbEpEUUFnQXlBQk5nSUlJQU1nQVRZQ0JDQUNRWGhxSUFFMkFnQWdBa0YwYWlBQk5nSUFJQVJCR1VrTkFDQURJQUUyQWhnZ0F5QUJOZ0lVSUFNZ0FUWUNFQ0FESUFFMkFnd2dBa0Z3YWlBQk5nSUFJQUpCYkdvZ0FUWUNBQ0FDUVdocUlBRTJBZ0FnQWtGa2FpQUJOZ0lBSUFRZ0EwRUVjVUVZY2lJRWF5SUNRU0JKRFFBZ0FhMGlCVUlnaGlBRmhDRUZJQU1nQkdvaEFRTkFJQUVnQlRjREdDQUJJQVUzQXhBZ0FTQUZOd01JSUFFZ0JUY0RBQ0FCUVNCcUlRRWdBa0ZnYWlJQ1FSOUxEUUFMQ3lBQUMvSURBUU4vSUFFb0FnQWlBMEgvLy84SFJ3UkFJQUVvQWdRaEJDQUFJQUlnQWtFRGNTQUNRUkJKSWdJYlFRSjBJZ1ZCOENscUtBSUFRUkJCQ0NBQ0d5SUNiR29nQlVHd0tXb29BZ0JxSWdBZ0F5QUFMUUFBYWtHd0xtb3RBQUE2QUFBZ0FTZ0NDQ0VESUFBZ0JDQUFMUUFCYWtHd0xtb3RBQUE2QUFFZ0FTZ0NEQ0VFSUFBZ0F5QUFMUUFDYWtHd0xtb3RBQUE2QUFJZ0FDQUVJQUF0QUFOcVFiQXVhaTBBQURvQUF5QUJLQUlVSVFNZ0FDQUNhaUlBSUFFb0FoQWdBQzBBQUdwQnNDNXFMUUFBT2dBQUlBRW9BaGdoQkNBQUlBTWdBQzBBQVdwQnNDNXFMUUFBT2dBQklBRW9BaHdoQXlBQUlBUWdBQzBBQW1wQnNDNXFMUUFBT2dBQ0lBQWdBeUFBTFFBRGFrR3dMbW90QUFBNkFBTWdBU2dDSkNFRElBQWdBbW9pQUNBQktBSWdJQUF0QUFCcVFiQXVhaTBBQURvQUFDQUJLQUlvSVFRZ0FDQURJQUF0QUFGcVFiQXVhaTBBQURvQUFTQUJLQUlzSVFNZ0FDQUVJQUF0QUFKcVFiQXVhaTBBQURvQUFpQUFJQU1nQUMwQUEycEJzQzVxTFFBQU9nQURJQUVvQWpRaEF5QUFJQUpxSWdBZ0FTZ0NNQ0FBTFFBQWFrR3dMbW90QUFBNkFBQWdBU2dDT0NFQ0lBQWdBeUFBTFFBQmFrR3dMbW90QUFBNkFBRWdBU2dDUENFQklBQWdBaUFBTFFBQ2FrR3dMbW90QUFBNkFBSWdBQ0FCSUFBdEFBTnFRYkF1YWkwQUFEb0FBd3NMMHhBQkRIOGpBRUdBQVdzaUNpUUFJQUFRRHlFRVFRRWhCUUpBQWtBQ2Z5QUNRUUZOQkVBZ0JFRUFTQTBDSUFSQkdYWkIvZ0J4UVlBSWFpQUVRWUNBZ09BQVR3MEJHaUFFUVJWMlFmNFBjVUhBQ0dvZ0JFR0FnSUFJVHcwQkdpQUVRUkYyUWY3L0FYRkJrQWxxSUFSQmdJQ0FBVThOQVJvZ0JFRVFka0VCZEVHUUNtb01BUXNnQWtFRFRRUkFJQVJCZjB3RVFFRUNRYUlRSUFSQmdJQ0FnQVJ4R3lFRkRBTUxJQVJCR1haQi9nQnhRZEFLYWlBRVFZQ0FnSUFCVHcwQkdpQUVRUloyUWY0SGNVR1FDMm9nQkVHQWdJQVFUdzBCR2lBRVFSRjJRZjcvQVhGQjBBdHFEQUVMSUFKQkIwMEVRQ0FFUVJwMklnSkJlR3BCT0VrRVFDQUNRUUYwUWRBTmFnd0NDeUFFUVJWMlFmNFBjVUhRRG1vTUFRc2dCRUVaZGtIK0FIRkIwQkJxSUFKQkVFME5BQm9nQkVFZGRpSUNCRUFnQWtFQmRFSFFFV29NQVFzZ0JFRVhka0grQTNGQjRCRnFDeThCQUNJRkRRQkJBU0VMREFFTFFRRWhDeUFGUVF0Mklna2dBMHNOQUVFZ0lBVkJIM0VpQm1zaEFnSkFJQWxGQkVBTUFRc2dCQ0FHZENFRUFrQWdCVUVGZGtFL2NTSU1SUVJBREFFTElBSWdERWtFUUNBQUlBWVFDMEYvUmcwRElBQVFEeUVFUVNBaEFnc2dCQ0FNZENFR1FRRWdERUYvYW5RaEJ5QUVRU0FnREd0MklRUURRQ0FLUVVCcklBaEJBblJxUVg5QkFTQUVJQWR4R3pZQ0FDQUlRUUZxSVFnZ0IwRUJkaUlIRFFBTElBSWdER3NoQWlBR0lRUUxJQWdnQ1VrRVFDQU1RUU5KSWc4Z0JVSC9yd0ZMY1NFRkEwQWdBa0VQVFFSQUlBQkJJQ0FDYXhBTFFYOUdCRUFNQlFzZ0FCQVBJUVJCSUNFQ0MwRUFJUVlDUUFKQUFuOENRQ0FFUVFCSURRQkJBU0VHSUFSQi8vLy8vd05MRFFCQkFpRUdJQVJCLy8vLy93RkxEUUJCQXlFR0lBUkIvLy8vL3dCTERRQkJCQ0VHSUFSQi8vLy9QMHNOQUVFRklRWWdCRUgvLy84ZlN3MEFRUVloQmlBRVFmLy8vdzlMRFFCQkJ5RUdJQVJCLy8vL0Iwc05BRUVJSVFZZ0JFSC8vLzhEU3cwQVFRa2hCaUFFUWYvLy93RkxEUUJCQ2lFR0lBUkIvLy8vQUVzTkFFRUxJUVlnQkVILy96OUxEUUJCRENFR0lBUkIvLzhmU3cwQVFRMGhCaUFFUWYvL0Qwc05BQUovQWtBZ0JFSC8vd2ROQkVBZ0JFR0FnSHh4UVlDQUJFWU5BUXdLQ3lBRlFRUWdCUnNoQmlBRVFROTBJUVJCRGlFSElBSkJjV29NQVFzZ0JVRUJJQVViSVFVZ0JFRVFkQ0VFUVF3aEJrRVBJUWNnQWtGd2Fnc2hBaUFISUFWMElRY2dCVVVNQVFzZ0JpQUZkQ0VIUVFFaERpQUNJQVpCQVdvaUJtc2hBaUFFSUFaMElRUWdCVVVOQVNBRklRWkJBQXNoRGlBQ0lBWlBCSDhnQkFVZ0FFRWdJQUpyRUF0QmYwWUVRQXdIQzBFZ0lRSWdBQkFQQ3lFTklBSWdCbXNoQWlBTklBWjBJUVFnRFVFZ0lBWnJkaUFIYWlFSERBRUxRUUFoQlFzZ0NrRkFheUFJUVFKMGFrRUFJQWRCQW1vZ0J5QUlJQXhHR3lBSElBOGJJZzFCQW1wQkFYWWlCbXNnQmlBTlFRRnhHellDQUVFQklBVWdEaHNpQlNBRlFRWkpJQVpCQXlBRlFYOXFkRXB4YWlFRklBaEJBV29pQ0NBSlJ3MEFDd3RCQUNFSEFrQWdDU0FEVHdSQVFRQWhDQXdCQ3dKQUlBSkJDRXNFUUNBQ0lRVU1BUXRCSUNFRklBQkJJQ0FDYXhBTFFYOUdEUU1nQUJBUElRUUxBa0FDUUFKL0FrQWdBMEVFUndSQUlBbEJmMm9pQWtFTlN3MERBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQWdBa0VCYXc0TkFBRUNBd1FGQmdjSUNRb0xEQTRMSUFSQkduWkI0QkpxREE0TElBUkJHblpCb0JOcURBMExJQVJCRzNaQjRCTnFEQXdMSUFSQkczWkJnQlJxREFzTElBUkJHblpCb0JScURBb0xJQVJCR25aQjRCUnFEQWtMSUFSQkduWkJvQlZxREFnTElBUkJHblpCNEJWcURBY0xJQVJCRzNaQm9CWnFEQVlMSUFSQkhIWkJ3QlpxREFVTElBUkJISFpCMEJacURBUUxJQVJCSFhaQjRCWnFEQU1MSUFSQkhuWkI2QlpxREFJTElBUkJBRWdFUUVFQklRSU1CQXRCRVNFQ0lBbEJBMFlOQTBFU0lRSWdCRUgvLy8vL0Ewc05BMEVpSVFJZ0NVRUNSZzBEUVNOQk15QUVRZi8vLy84QlN4c2hBZ3dEQ3lBRVFSdDJRYUFTYWlBRVFSZDJRY0FTYWlBRVFmLy8vLzhBU3hzTExRQUFJZ0lOQVF3RUMwRVJRUUVnQkVFQVNCc2hBZ3NnQWtFRWRpRUlJQVVnQWtFUGNTSURheUVDSUFRZ0EzUWhCQXNnQ1VGL2FpSURCRUFEUUFKL0lBZ0VRQ0FDUVFwTkJFQWdBRUVnSUFKckVBdEJmMFlFUUF3SEN5QUFFQThoQkVFZ0lRSUxBa0FDZndKQUlBaEJmMm9pQlVFRlRRUkFBa0FDUUFKQUFrQUNRQ0FGUVFGckRnVUFBUUlEQkFZTElBUkJIblpCN2hacURBWUxJQVJCSG5aQjhoWnFEQVVMSUFSQkhYWkI5aFpxREFRTElBUkJIWFpCL2hacURBTUxJQVJCSFhaQmhoZHFEQUlMQW45Qjh3QWdCRUVaZGtId0FIRnJJQVJCZ0lDQWdBSlBEUUFhUWZRQUlBUkIvLy8vL3dCTERRQWFRWVVCSUFSQi8vLy9QMHNOQUJwQmxnRWdCRUgvLy84ZlN3MEFHa0duQVNBRVFmLy8vdzlMRFFBYVFiZ0JJQVJCLy8vL0Iwc05BQnBCeVFFZ0JFSC8vLzhEU3cwQUdrSGFBU0FFUWYvLy93RkxEUUFhUVFCQjZ3RWdCRUdBZ0lBQlNSc0xJZ1ZCQkhZZ0NFME5BZ3dJQ3lBRVFSOTJRZXdXYWdzdEFBQWhCUXNnQlVVRVFBd0dDeUFLSUFkQkFuUnFJQVZCQkhZaUJrRUJhallDQUNBQ0lBVkJEM0VpQldzaEFpQUVJQVYwSVFRZ0NDQUdhd3dCQ3lBS0lBZEJBblJxUVFFMkFnQkJBQXNoQ0NBSFFRRnFJZ2NnQTBjTkFBc2dBU0FJUVFKMGFpQUtRVUJySUFOQkFuUnFLQUlBTmdJQUlBbEJmbW9oQlVFQklBaDBJUWNEUUNBQklBb2dCU0lEUVFKMElnVnFLQUlBSUFocUlnaEJBblJxSUFwQlFHc2dCV29vQWdBMkFnQWdBMEYvYWlFRlFRRWdDSFFnQjNJaEJ5QUREUUFMREFFTElBRWdDRUVDZEdvZ0NrRkFheUFEUVFKMGFpZ0NBRFlDQUVFQklBaDBJUWNMSUFCQklDQUNheEFMRFFBZ0IwRVFkQ0FKUVFSMGNpRUxDeUFLUVlBQmFpUUFJQXNMelM0QkMzOGpBRUVRYXlJTEpBQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUFCQjlBRk5CRUJCdE1BQUtBSUFJZ1pCRUNBQVFRdHFRWGh4SUFCQkMwa2JJZ1ZCQTNZaUFIWWlBVUVEY1FSQUlBRkJmM05CQVhFZ0FHb2lBa0VEZENJRVFlVEFBR29vQWdBaUFVRUlhaUVBQWtBZ0FTZ0NDQ0lESUFSQjNNQUFhaUlFUmdSQVFiVEFBQ0FHUVg0Z0FuZHhOZ0lBREFFTFFjVEFBQ2dDQUJvZ0F5QUVOZ0lNSUFRZ0F6WUNDQXNnQVNBQ1FRTjBJZ0pCQTNJMkFnUWdBU0FDYWlJQklBRW9BZ1JCQVhJMkFnUU1EQXNnQlVHOHdBQW9BZ0FpQ0UwTkFTQUJCRUFDUUVFQ0lBQjBJZ0pCQUNBQ2EzSWdBU0FBZEhFaUFFRUFJQUJyY1VGL2FpSUFJQUJCREhaQkVIRWlBSFlpQVVFRmRrRUljU0lDSUFCeUlBRWdBbllpQUVFQ2RrRUVjU0lCY2lBQUlBRjJJZ0JCQVhaQkFuRWlBWElnQUNBQmRpSUFRUUYyUVFGeElnRnlJQUFnQVhacUlnSkJBM1FpQTBIa3dBQnFLQUlBSWdFb0FnZ2lBQ0FEUWR6QUFHb2lBMFlFUUVHMHdBQWdCa0YrSUFKM2NTSUdOZ0lBREFFTFFjVEFBQ2dDQUJvZ0FDQUROZ0lNSUFNZ0FEWUNDQXNnQVVFSWFpRUFJQUVnQlVFRGNqWUNCQ0FCSUFWcUlnY2dBa0VEZENJQ0lBVnJJZ05CQVhJMkFnUWdBU0FDYWlBRE5nSUFJQWdFUUNBSVFRTjJJZ1JCQTNSQjNNQUFhaUVCUWNqQUFDZ0NBQ0VDQW44Z0JrRUJJQVIwSWdSeFJRUkFRYlRBQUNBRUlBWnlOZ0lBSUFFTUFRc2dBU2dDQ0FzaEJDQUJJQUkyQWdnZ0JDQUNOZ0lNSUFJZ0FUWUNEQ0FDSUFRMkFnZ0xRY2pBQUNBSE5nSUFRYnpBQUNBRE5nSUFEQXdMUWJqQUFDZ0NBQ0lLUlEwQklBcEJBQ0FLYTNGQmYyb2lBQ0FBUVF4MlFSQnhJZ0IySWdGQkJYWkJDSEVpQWlBQWNpQUJJQUoySWdCQkFuWkJCSEVpQVhJZ0FDQUJkaUlBUVFGMlFRSnhJZ0Z5SUFBZ0FYWWlBRUVCZGtFQmNTSUJjaUFBSUFGMmFrRUNkRUhrd2dCcUtBSUFJZ0VvQWdSQmVIRWdCV3NoQXlBQklRSURRQUpBSUFJb0FoQWlBRVVFUUNBQ0tBSVVJZ0JGRFFFTElBQW9BZ1JCZUhFZ0JXc2lBaUFESUFJZ0Ewa2lBaHNoQXlBQUlBRWdBaHNoQVNBQUlRSU1BUXNMSUFFb0FoZ2hDU0FCSUFFb0Fnd2lCRWNFUUVIRXdBQW9BZ0FnQVNnQ0NDSUFUUVJBSUFBb0Fnd2FDeUFBSUFRMkFnd2dCQ0FBTmdJSURBc0xJQUZCRkdvaUFpZ0NBQ0lBUlFSQUlBRW9BaEFpQUVVTkF5QUJRUkJxSVFJTEEwQWdBaUVISUFBaUJFRVVhaUlDS0FJQUlnQU5BQ0FFUVJCcUlRSWdCQ2dDRUNJQURRQUxJQWRCQURZQ0FBd0tDMEYvSVFVZ0FFRy9mMHNOQUNBQVFRdHFJZ0JCZUhFaEJVRzR3QUFvQWdBaUIwVU5BRUVBSUFWcklRSUNRQUpBQWtBQ2YwRUFJQUJCQ0hZaUFFVU5BQnBCSHlBRlFmLy8vd2RMRFFBYUlBQWdBRUdBL2o5cVFSQjJRUWh4SWdCMElnRWdBVUdBNEI5cVFSQjJRUVJ4SWdGMElnTWdBMEdBZ0E5cVFSQjJRUUp4SWdOMFFROTJJQUFnQVhJZ0EzSnJJZ0JCQVhRZ0JTQUFRUlZxZGtFQmNYSkJIR29MSWdoQkFuUkI1TUlBYWlnQ0FDSURSUVJBUVFBaEFBd0JDeUFGUVFCQkdTQUlRUUYyYXlBSVFSOUdHM1FoQVVFQUlRQURRQUpBSUFNb0FnUkJlSEVnQldzaUJpQUNUdzBBSUFNaEJDQUdJZ0lOQUVFQUlRSWdBeUVBREFNTElBQWdBeWdDRkNJR0lBWWdBeUFCUVIxMlFRUnhhaWdDRUNJRFJoc2dBQ0FHR3lFQUlBRWdBMEVBUjNRaEFTQUREUUFMQ3lBQUlBUnlSUVJBUVFJZ0NIUWlBRUVBSUFCcmNpQUhjU0lBUlEwRElBQkJBQ0FBYTNGQmYyb2lBQ0FBUVF4MlFSQnhJZ0IySWdGQkJYWkJDSEVpQXlBQWNpQUJJQU4ySWdCQkFuWkJCSEVpQVhJZ0FDQUJkaUlBUVFGMlFRSnhJZ0Z5SUFBZ0FYWWlBRUVCZGtFQmNTSUJjaUFBSUFGMmFrRUNkRUhrd2dCcUtBSUFJUUFMSUFCRkRRRUxBMEFnQUNnQ0JFRjRjU0FGYXlJRElBSkpJUUVnQXlBQ0lBRWJJUUlnQUNBRUlBRWJJUVFnQUNnQ0VDSUJCSDhnQVFVZ0FDZ0NGQXNpQUEwQUN3c2dCRVVOQUNBQ1FiekFBQ2dDQUNBRmEwOE5BQ0FFS0FJWUlRZ2dCQ0FFS0FJTUlnRkhCRUJCeE1BQUtBSUFJQVFvQWdnaUFFMEVRQ0FBS0FJTUdnc2dBQ0FCTmdJTUlBRWdBRFlDQ0F3SkN5QUVRUlJxSWdNb0FnQWlBRVVFUUNBRUtBSVFJZ0JGRFFNZ0JFRVFhaUVEQ3dOQUlBTWhCaUFBSWdGQkZHb2lBeWdDQUNJQURRQWdBVUVRYWlFRElBRW9BaEFpQUEwQUN5QUdRUUEyQWdBTUNBdEJ2TUFBS0FJQUlnRWdCVThFUUVISXdBQW9BZ0FoQUFKQUlBRWdCV3NpQWtFUVR3UkFRYnpBQUNBQ05nSUFRY2pBQUNBQUlBVnFJZ00yQWdBZ0F5QUNRUUZ5TmdJRUlBQWdBV29nQWpZQ0FDQUFJQVZCQTNJMkFnUU1BUXRCeU1BQVFRQTJBZ0JCdk1BQVFRQTJBZ0FnQUNBQlFRTnlOZ0lFSUFBZ0FXb2lBU0FCS0FJRVFRRnlOZ0lFQ3lBQVFRaHFJUUFNQ2d0QndNQUFLQUlBSWdFZ0JVc0VRRUhBd0FBZ0FTQUZheUlCTmdJQVFjekFBRUhNd0FBb0FnQWlBQ0FGYWlJQ05nSUFJQUlnQVVFQmNqWUNCQ0FBSUFWQkEzSTJBZ1FnQUVFSWFpRUFEQW9MUVFBaEFDQUZRUzlxSWdRQ2YwR014QUFvQWdBRVFFR1V4QUFvQWdBTUFRdEJtTVFBUW44M0FnQkJrTVFBUW9DZ2dJQ0FnQVEzQWdCQmpNUUFJQXRCREdwQmNIRkIyS3JWcWdWek5nSUFRYURFQUVFQU5nSUFRZkREQUVFQU5nSUFRWUFnQ3lJQ2FpSUdRUUFnQW1zaUIzRWlBaUFGVFEwSlFlekRBQ2dDQUNJREJFQkI1TU1BS0FJQUlnZ2dBbW9pQ1NBSVRRMEtJQWtnQTBzTkNndEI4TU1BTFFBQVFRUnhEUVFDUUFKQVFjekFBQ2dDQUNJREJFQkI5TU1BSVFBRFFDQUFLQUlBSWdnZ0EwMEVRQ0FJSUFBb0FnUnFJQU5MRFFNTElBQW9BZ2dpQUEwQUN3dEJBQkFUSWdGQmYwWU5CU0FDSVFaQmtNUUFLQUlBSWdCQmYyb2lBeUFCY1FSQUlBSWdBV3NnQVNBRGFrRUFJQUJyY1dvaEJnc2dCaUFGVFEwRklBWkIvdi8vL3dkTERRVkI3TU1BS0FJQUlnQUVRRUhrd3dBb0FnQWlBeUFHYWlJSElBTk5EUVlnQnlBQVN3MEdDeUFHRUJNaUFDQUJSdzBCREFjTElBWWdBV3NnQjNFaUJrSCsvLy8vQjBzTkJDQUdFQk1pQVNBQUtBSUFJQUFvQWdScVJnMERJQUVoQUFzQ1FDQUZRVEJxSUFaTkRRQWdBRUYvUmcwQVFaVEVBQ2dDQUNJQklBUWdCbXRxUVFBZ0FXdHhJZ0ZCL3YvLy93ZExCRUFnQUNFQkRBY0xJQUVRRTBGL1J3UkFJQUVnQm1vaEJpQUFJUUVNQnd0QkFDQUdheEFUR2d3RUN5QUFJZ0ZCZjBjTkJRd0RDMEVBSVFRTUJ3dEJBQ0VCREFVTElBRkJmMGNOQWd0QjhNTUFRZkREQUNnQ0FFRUVjallDQUFzZ0FrSCsvLy8vQjBzTkFTQUNFQk1pQVVFQUVCTWlBRThOQVNBQlFYOUdEUUVnQUVGL1JnMEJJQUFnQVdzaUJpQUZRU2hxVFEwQkMwSGt3d0JCNU1NQUtBSUFJQVpxSWdBMkFnQWdBRUhvd3dBb0FnQkxCRUJCNk1NQUlBQTJBZ0FMQWtBQ1FBSkFRY3pBQUNnQ0FDSURCRUJCOU1NQUlRQURRQ0FCSUFBb0FnQWlBaUFBS0FJRUlnUnFSZzBDSUFBb0FnZ2lBQTBBQ3d3Q0MwSEV3QUFvQWdBaUFFRUFJQUVnQUU4YlJRUkFRY1RBQUNBQk5nSUFDMEVBSVFCQitNTUFJQVkyQWdCQjlNTUFJQUUyQWdCQjFNQUFRWDgyQWdCQjJNQUFRWXpFQUNnQ0FEWUNBRUdBeEFCQkFEWUNBQU5BSUFCQkEzUWlBa0hrd0FCcUlBSkIzTUFBYWlJRE5nSUFJQUpCNk1BQWFpQUROZ0lBSUFCQkFXb2lBRUVnUncwQUMwSEF3QUFnQmtGWWFpSUFRWGdnQVd0QkIzRkJBQ0FCUVFocVFRZHhHeUlDYXlJRE5nSUFRY3pBQUNBQklBSnFJZ0kyQWdBZ0FpQURRUUZ5TmdJRUlBQWdBV3BCS0RZQ0JFSFF3QUJCbk1RQUtBSUFOZ0lBREFJTElBQXRBQXhCQ0hFTkFDQUJJQU5ORFFBZ0FpQURTdzBBSUFBZ0JDQUdhallDQkVITXdBQWdBMEY0SUFOclFRZHhRUUFnQTBFSWFrRUhjUnNpQUdvaUFUWUNBRUhBd0FCQndNQUFLQUlBSUFacUlnSWdBR3NpQURZQ0FDQUJJQUJCQVhJMkFnUWdBaUFEYWtFb05nSUVRZERBQUVHY3hBQW9BZ0EyQWdBTUFRc2dBVUhFd0FBb0FnQWlCRWtFUUVIRXdBQWdBVFlDQUNBQklRUUxJQUVnQm1vaEFrSDB3d0FoQUFKQUFrQUNRQUpBQWtBQ1FBTkFJQUlnQUNnQ0FFY0VRQ0FBS0FJSUlnQU5BUXdDQ3dzZ0FDMEFERUVJY1VVTkFRdEI5TU1BSVFBRFFDQUFLQUlBSWdJZ0EwMEVRQ0FDSUFBb0FnUnFJZ1FnQTBzTkF3c2dBQ2dDQ0NFQURBQUFDd0FMSUFBZ0FUWUNBQ0FBSUFBb0FnUWdCbW8yQWdRZ0FVRjRJQUZyUVFkeFFRQWdBVUVJYWtFSGNSdHFJZ2tnQlVFRGNqWUNCQ0FDUVhnZ0FtdEJCM0ZCQUNBQ1FRaHFRUWR4RzJvaUFTQUpheUFGYXlFQUlBVWdDV29oQnlBQklBTkdCRUJCek1BQUlBYzJBZ0JCd01BQVFjREFBQ2dDQUNBQWFpSUFOZ0lBSUFjZ0FFRUJjallDQkF3REN5QUJRY2pBQUNnQ0FFWUVRRUhJd0FBZ0J6WUNBRUc4d0FCQnZNQUFLQUlBSUFCcUlnQTJBZ0FnQnlBQVFRRnlOZ0lFSUFBZ0Iyb2dBRFlDQUF3REN5QUJLQUlFSWdKQkEzRkJBVVlFUUNBQ1FYaHhJUW9DUUNBQ1FmOEJUUVJBSUFFb0FnZ2lBeUFDUVFOMklnUkJBM1JCM01BQWFrY2FJQU1nQVNnQ0RDSUNSZ1JBUWJUQUFFRzB3QUFvQWdCQmZpQUVkM0UyQWdBTUFnc2dBeUFDTmdJTUlBSWdBellDQ0F3QkN5QUJLQUlZSVFnQ1FDQUJJQUVvQWd3aUJrY0VRQ0FFSUFFb0FnZ2lBazBFUUNBQ0tBSU1HZ3NnQWlBR05nSU1JQVlnQWpZQ0NBd0JDd0pBSUFGQkZHb2lBeWdDQUNJRkRRQWdBVUVRYWlJREtBSUFJZ1VOQUVFQUlRWU1BUXNEUUNBRElRSWdCU0lHUVJScUlnTW9BZ0FpQlEwQUlBWkJFR29oQXlBR0tBSVFJZ1VOQUFzZ0FrRUFOZ0lBQ3lBSVJRMEFBa0FnQVNBQktBSWNJZ0pCQW5SQjVNSUFhaUlES0FJQVJnUkFJQU1nQmpZQ0FDQUdEUUZCdU1BQVFiakFBQ2dDQUVGK0lBSjNjVFlDQUF3Q0N5QUlRUkJCRkNBSUtBSVFJQUZHRzJvZ0JqWUNBQ0FHUlEwQkN5QUdJQWcyQWhnZ0FTZ0NFQ0lDQkVBZ0JpQUNOZ0lRSUFJZ0JqWUNHQXNnQVNnQ0ZDSUNSUTBBSUFZZ0FqWUNGQ0FDSUFZMkFoZ0xJQUVnQ21vaEFTQUFJQXBxSVFBTElBRWdBU2dDQkVGK2NUWUNCQ0FISUFCQkFYSTJBZ1FnQUNBSGFpQUFOZ0lBSUFCQi93Rk5CRUFnQUVFRGRpSUJRUU4wUWR6QUFHb2hBQUovUWJUQUFDZ0NBQ0lDUVFFZ0FYUWlBWEZGQkVCQnRNQUFJQUVnQW5JMkFnQWdBQXdCQ3lBQUtBSUlDeUVCSUFBZ0J6WUNDQ0FCSUFjMkFnd2dCeUFBTmdJTUlBY2dBVFlDQ0F3REN5QUhBbjlCQUNBQVFRaDJJZ0ZGRFFBYVFSOGdBRUgvLy84SFN3MEFHaUFCSUFGQmdQNC9ha0VRZGtFSWNTSUJkQ0lDSUFKQmdPQWZha0VRZGtFRWNTSUNkQ0lESUFOQmdJQVBha0VRZGtFQ2NTSURkRUVQZGlBQklBSnlJQU55YXlJQlFRRjBJQUFnQVVFVmFuWkJBWEZ5UVJ4cUN5SUJOZ0ljSUFkQ0FEY0NFQ0FCUVFKMFFlVENBR29oQWdKQVFiakFBQ2dDQUNJRFFRRWdBWFFpQkhGRkJFQkJ1TUFBSUFNZ0JISTJBZ0FnQWlBSE5nSUFEQUVMSUFCQkFFRVpJQUZCQVhacklBRkJIMFliZENFRElBSW9BZ0FoQVFOQUlBRWlBaWdDQkVGNGNTQUFSZzBESUFOQkhYWWhBU0FEUVFGMElRTWdBaUFCUVFSeGFpSUVLQUlRSWdFTkFBc2dCQ0FITmdJUUN5QUhJQUkyQWhnZ0J5QUhOZ0lNSUFjZ0J6WUNDQXdDQzBIQXdBQWdCa0ZZYWlJQVFYZ2dBV3RCQjNGQkFDQUJRUWhxUVFkeEd5SUNheUlITmdJQVFjekFBQ0FCSUFKcUlnSTJBZ0FnQWlBSFFRRnlOZ0lFSUFBZ0FXcEJLRFlDQkVIUXdBQkJuTVFBS0FJQU5nSUFJQU1nQkVFbklBUnJRUWR4UVFBZ0JFRlpha0VIY1J0cVFWRnFJZ0FnQUNBRFFSQnFTUnNpQWtFYk5nSUVJQUpCL01NQUtRSUFOd0lRSUFKQjlNTUFLUUlBTndJSVFmekRBQ0FDUVFocU5nSUFRZmpEQUNBR05nSUFRZlREQUNBQk5nSUFRWURFQUVFQU5nSUFJQUpCR0dvaEFBTkFJQUJCQnpZQ0JDQUFRUWhxSVFFZ0FFRUVhaUVBSUFRZ0FVc05BQXNnQWlBRFJnMERJQUlnQWlnQ0JFRitjVFlDQkNBRElBSWdBMnNpQkVFQmNqWUNCQ0FDSUFRMkFnQWdCRUgvQVUwRVFDQUVRUU4ySWdGQkEzUkIzTUFBYWlFQUFuOUJ0TUFBS0FJQUlnSkJBU0FCZENJQmNVVUVRRUcwd0FBZ0FTQUNjallDQUNBQURBRUxJQUFvQWdnTElRRWdBQ0FETmdJSUlBRWdBellDRENBRElBQTJBZ3dnQXlBQk5nSUlEQVFMSUFOQ0FEY0NFQ0FEQW45QkFDQUVRUWgySWdCRkRRQWFRUjhnQkVILy8vOEhTdzBBR2lBQUlBQkJnUDQvYWtFUWRrRUljU0lBZENJQklBRkJnT0FmYWtFUWRrRUVjU0lCZENJQ0lBSkJnSUFQYWtFUWRrRUNjU0lDZEVFUGRpQUFJQUZ5SUFKeWF5SUFRUUYwSUFRZ0FFRVZhblpCQVhGeVFSeHFDeUlBTmdJY0lBQkJBblJCNU1JQWFpRUJBa0JCdU1BQUtBSUFJZ0pCQVNBQWRDSUdjVVVFUUVHNHdBQWdBaUFHY2pZQ0FDQUJJQU0yQWdBZ0F5QUJOZ0lZREFFTElBUkJBRUVaSUFCQkFYWnJJQUJCSDBZYmRDRUFJQUVvQWdBaEFRTkFJQUVpQWlnQ0JFRjRjU0FFUmcwRUlBQkJIWFloQVNBQVFRRjBJUUFnQWlBQlFRUnhhaUlHS0FJUUlnRU5BQXNnQmlBRE5nSVFJQU1nQWpZQ0dBc2dBeUFETmdJTUlBTWdBellDQ0F3REN5QUNLQUlJSWdBZ0J6WUNEQ0FDSUFjMkFnZ2dCMEVBTmdJWUlBY2dBallDRENBSElBQTJBZ2dMSUFsQkNHb2hBQXdGQ3lBQ0tBSUlJZ0FnQXpZQ0RDQUNJQU0yQWdnZ0EwRUFOZ0lZSUFNZ0FqWUNEQ0FESUFBMkFnZ0xRY0RBQUNnQ0FDSUFJQVZORFFCQndNQUFJQUFnQldzaUFUWUNBRUhNd0FCQnpNQUFLQUlBSWdBZ0JXb2lBallDQUNBQ0lBRkJBWEkyQWdRZ0FDQUZRUU55TmdJRUlBQkJDR29oQUF3REMwR3d3QUJCTURZQ0FFRUFJUUFNQWdzQ1FDQUlSUTBBQWtBZ0JDZ0NIQ0lBUVFKMFFlVENBR29pQXlnQ0FDQUVSZ1JBSUFNZ0FUWUNBQ0FCRFFGQnVNQUFJQWRCZmlBQWQzRWlCellDQUF3Q0N5QUlRUkJCRkNBSUtBSVFJQVJHRzJvZ0FUWUNBQ0FCUlEwQkN5QUJJQWcyQWhnZ0JDZ0NFQ0lBQkVBZ0FTQUFOZ0lRSUFBZ0FUWUNHQXNnQkNnQ0ZDSUFSUTBBSUFFZ0FEWUNGQ0FBSUFFMkFoZ0xBa0FnQWtFUFRRUkFJQVFnQWlBRmFpSUFRUU55TmdJRUlBQWdCR29pQUNBQUtBSUVRUUZ5TmdJRURBRUxJQVFnQlVFRGNqWUNCQ0FFSUFWcUlnTWdBa0VCY2pZQ0JDQUNJQU5xSUFJMkFnQWdBa0gvQVUwRVFDQUNRUU4ySWdGQkEzUkIzTUFBYWlFQUFuOUJ0TUFBS0FJQUlnSkJBU0FCZENJQmNVVUVRRUcwd0FBZ0FTQUNjallDQUNBQURBRUxJQUFvQWdnTElRRWdBQ0FETmdJSUlBRWdBellDRENBRElBQTJBZ3dnQXlBQk5nSUlEQUVMSUFNQ2YwRUFJQUpCQ0hZaUFFVU5BQnBCSHlBQ1FmLy8vd2RMRFFBYUlBQWdBRUdBL2o5cVFSQjJRUWh4SWdCMElnRWdBVUdBNEI5cVFSQjJRUVJ4SWdGMElnVWdCVUdBZ0E5cVFSQjJRUUp4SWdWMFFROTJJQUFnQVhJZ0JYSnJJZ0JCQVhRZ0FpQUFRUlZxZGtFQmNYSkJIR29MSWdBMkFod2dBMElBTndJUUlBQkJBblJCNU1JQWFpRUJBa0FDUUNBSFFRRWdBSFFpQlhGRkJFQkJ1TUFBSUFVZ0IzSTJBZ0FnQVNBRE5nSUFEQUVMSUFKQkFFRVpJQUJCQVhacklBQkJIMFliZENFQUlBRW9BZ0FoQlFOQUlBVWlBU2dDQkVGNGNTQUNSZzBDSUFCQkhYWWhCU0FBUVFGMElRQWdBU0FGUVFSeGFpSUdLQUlRSWdVTkFBc2dCaUFETmdJUUN5QURJQUUyQWhnZ0F5QUROZ0lNSUFNZ0F6WUNDQXdCQ3lBQktBSUlJZ0FnQXpZQ0RDQUJJQU0yQWdnZ0EwRUFOZ0lZSUFNZ0FUWUNEQ0FESUFBMkFnZ0xJQVJCQ0dvaEFBd0JDd0pBSUFsRkRRQUNRQ0FCS0FJY0lnQkJBblJCNU1JQWFpSUNLQUlBSUFGR0JFQWdBaUFFTmdJQUlBUU5BVUc0d0FBZ0NrRitJQUIzY1RZQ0FBd0NDeUFKUVJCQkZDQUpLQUlRSUFGR0cyb2dCRFlDQUNBRVJRMEJDeUFFSUFrMkFoZ2dBU2dDRUNJQUJFQWdCQ0FBTmdJUUlBQWdCRFlDR0FzZ0FTZ0NGQ0lBUlEwQUlBUWdBRFlDRkNBQUlBUTJBaGdMQWtBZ0EwRVBUUVJBSUFFZ0F5QUZhaUlBUVFOeU5nSUVJQUFnQVdvaUFDQUFLQUlFUVFGeU5nSUVEQUVMSUFFZ0JVRURjallDQkNBQklBVnFJZ1FnQTBFQmNqWUNCQ0FESUFScUlBTTJBZ0FnQ0FSQUlBaEJBM1lpQlVFRGRFSGN3QUJxSVFCQnlNQUFLQUlBSVFJQ2YwRUJJQVYwSWdVZ0JuRkZCRUJCdE1BQUlBVWdCbkkyQWdBZ0FBd0JDeUFBS0FJSUN5RUZJQUFnQWpZQ0NDQUZJQUkyQWd3Z0FpQUFOZ0lNSUFJZ0JUWUNDQXRCeU1BQUlBUTJBZ0JCdk1BQUlBTTJBZ0FMSUFGQkNHb2hBQXNnQzBFUWFpUUFJQUFMUkFFQmZ5QUFJQUFvQWhBZ0FXb2lBVFlDRUNBQUlBRkJCM0UyQWdoQmZ5RUNJQUVnQUNnQ0RFRURkRTBFZnlBQUlBQW9BZ0FnQVVFRGRtbzJBZ1JCQUFWQmZ3c0w1UWNCQ0g4Z0FDQUVRUUFnQm1zZ0FpQUNJQVpxUVFCSUd5SUNJQUlnQkVvYklnSnFJQUFnQWtFQVNoc2lDU0FGUVFBZ0Iyc2dBeUFESUFkcVFRQklHeUlBSUFBZ0JVb2JJZ0FnQkd4cUlBa2dBRUVBU2hzaEF5QUhRUUFnQUdzZ0FFRWZkWEVpQ1dzZ0FDQUhhaUlBSUFWcklneEJBQ0FBSUFWS0d5SVBheUVMSUFaQkFDQUNheUlPSUFKQkgzVnhJZzFySUFJZ0Jtb2lBQ0FFYTBFQUlBQWdCRW9pQlJzaUNtc2hBQUpBSUFKQkFFZ2dCWElpRUVVRVFDQUpCRUFEUUNBQklBTWdBQkFWSUFocUlRRWdDVUYvYWlJSkRRQUxDeUFMUlEwQkEwQWdBU0FESUFBUUZTQUlhaUVCSUFNZ0JHb2hBeUFMUVg5cUlnc05BQXNNQVFzQ1FDQUpSUTBBSUExRkJFQURRQ0FBSVFjZ0FTRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQVNBSWFpRUJJQWxCZjJvaUNRMEFEQUlBQ3dBTElBRWdEbW9oQmdOQUlBRWdBeTBBQUNBTkVBY2hBU0FBSVFjZ0JpRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQmlBSWFpRUdJQUVnQ0dvaEFTQUpRWDlxSWdrTkFBc0xJQXRGRFFBZ0RVVUVRQU5BSUFBaEJ5QUJJUUlnQXlFRklBQUVRQU5BSUFJZ0JTMEFBRG9BQUNBQ1FRRnFJUUlnQlVFQmFpRUZJQWRCZjJvaUJ3MEFDd3NnQ2dSQUlBSWdCVUYvYWkwQUFDQUtFQWNhQ3lBQklBaHFJUUVnQXlBRWFpRURJQXRCZjJvaUN3MEFEQUlBQ3dBTElBRWdEbW9oQ1FOQUlBRWdBeTBBQUNBTkVBY2hBU0FBSVFjZ0NTRUNJQU1oQlNBQUJFQURRQ0FDSUFVdEFBQTZBQUFnQWtFQmFpRUNJQVZCQVdvaEJTQUhRWDlxSWdjTkFBc0xJQW9FUUNBQ0lBVkJmMm90QUFBZ0NoQUhHZ3NnQ0NBSmFpRUpJQUVnQ0dvaEFTQURJQVJxSVFNZ0MwRi9haUlMRFFBTEN3SkFJQTlGRFFBZ0F5QUVheUVESUJCRkJFQURRQ0FCSUFNZ0FCQVZJQWhxSVFFZ0RFRi9haUlNRFFBTUFnQUxBQXNnRFVVRVFBTkFJQU1oQWlBQklRVWdBQ0VISUFBRVFBTkFJQVVnQWkwQUFEb0FBQ0FGUVFGcUlRVWdBa0VCYWlFQ0lBZEJmMm9pQncwQUN3c2dDZ1JBSUFVZ0FrRi9haTBBQUNBS0VBY2FDeUFCSUFocUlRRWdERUYvYWlJTURRQU1BZ0FMQUFzZ0FTQU9haUVKQTBBZ0FTQURMUUFBSUEwUUJ5RUJJQUFoQnlBSklRSWdBeUVGSUFBRVFBTkFJQUlnQlMwQUFEb0FBQ0FDUVFGcUlRSWdCVUVCYWlFRklBZEJmMm9pQncwQUN3c2dDZ1JBSUFJZ0JVRi9haTBBQUNBS0VBY2FDeUFJSUFscUlRa2dBU0FJYWlFQklBeEJmMm9pREEwQUN3c0w5QUlCQTM4Z0FVRURkRUh3Tm1vaUF5Z0NBQ0VGSUFNdEFBUWhBeUFCUVFOMFFiQTFhaUlCTFFBRUlRUUNRQ0FCS0FJQVFRUkdCRUFnQWlBRVFRRjBhaTRCQUNFQklBVkJCRVlFUUNBQklBSWdBMEVCZEdvdUFRQnFRUUZxUVFGMUR3c0NmeUFBS0FMTUFTSUNCRUFnQUNnQ0JDQUNLQUlFUmd3QkMwRUFDMFVOQVNBQklBQW9Bc3dCSUFOQkFYUnFMZ0VjYWtFQmFrRUJkUThMSUFWQkJFWUVRQ0FDSUFOQkFYUnFMZ0VBSVFFQ2Z5QUFLQUxJQVNJQ0JFQWdBQ2dDQkNBQ0tBSUVSZ3dCQzBFQUMwVU5BU0FCSUFBb0FzZ0JJQVJCQVhScUxnRWNha0VCYWtFQmRROExBbjhDZnlBQUtBTElBU0lCQkVBZ0FDZ0NCQ0FCS0FJRVJnd0JDMEVBQzBVRVFFRUFJUUpCQUF3QkMwRUJJUUlnQUNnQ3lBRWdCRUVCZEdvdUFSd0xJUUVDZnlBQUtBTE1BU0lFQkVBZ0FDZ0NCQ0FFS0FJRVJnd0JDMEVBQzBVTkFDQUFLQUxNQVNBRFFRRjBhaTRCSENFQUlBSkZCRUFnQUE4TElBQWdBV3BCQVdwQkFYVWhBUXNnQVF1SkJ3RUhmeUFESUFWcUlnMGdBUzRCQUNJTVFRSjFhaUVESUFRZ0Jtb2lEaUFCTGdFQ0lnOUJBblZxSVFRZ0FpZ0NDRUVFZENFSklBSW9BZ1JCQkhRaENpQUFJQVpCQkhScUlBVnFJUXNDUUNBTVFRTnhRUVIwSUE5QkEzRkJBblJ5UWRBN2FpZ0NBQ0lNUVE1TkJFQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnREVFQmF3NE9BUUlEQkFVR0J3Z0pDZ3NNRFE0QUN5QUNLQUlBSUFzZ0F5QUVJQW9nQ1NBSElBaEJFQkFNREE4TElBSW9BZ0FnQ3lBRElBUkJmbW9nQ2lBSklBY2dDRUVBRUNRTURnc2dBaWdDQUNBTElBTWdCRUYrYWlBS0lBa2dCeUFJRUVjTURRc2dBaWdDQUNBTElBTWdCRUYrYWlBS0lBa2dCeUFJUVFFUUpBd01DeUFDS0FJQUlBc2dBMEYrYWlBRUlBb2dDU0FISUFoQkFCQWpEQXNMSUFJb0FnQWdDeUFEUVg1cUlBUkJmbW9nQ2lBSklBY2dDRUVBRUJvTUNnc2dBaWdDQUNBTElBTkJmbW9nQkVGK2FpQUtJQWtnQnlBSVFRQVFJUXdKQ3lBQ0tBSUFJQXNnQTBGK2FpQUVRWDVxSUFvZ0NTQUhJQWhCQWhBYURBZ0xJQUlvQWdBZ0N5QURRWDVxSUFRZ0NpQUpJQWNnQ0JCR0RBY0xJQUlvQWdBZ0N5QURRWDVxSUFSQmZtb2dDaUFKSUFjZ0NFRUFFQ0lNQmdzZ0FpZ0NBQ0FMSUFOQmZtb2dCRUYrYWlBS0lBa2dCeUFJRUVVTUJRc2dBaWdDQUNBTElBTkJmbW9nQkVGK2FpQUtJQWtnQnlBSVFRRVFJZ3dFQ3lBQ0tBSUFJQXNnQTBGK2FpQUVJQW9nQ1NBSElBaEJBUkFqREFNTElBSW9BZ0FnQ3lBRFFYNXFJQVJCZm1vZ0NpQUpJQWNnQ0VFQkVCb01BZ3NnQWlnQ0FDQUxJQU5CZm1vZ0JFRithaUFLSUFrZ0J5QUlRUUVRSVF3QkN5QUNLQUlBSUFzZ0EwRithaUFFUVg1cUlBb2dDU0FISUFoQkF4QWFDeUFOUVFGMklBRXVBUUFpQ1VFRGRXb2hBeUFPUVFGMklBRXVBUUlpQVVFRGRXb2hCQ0FDS0FJQUlBSW9BZ1FpQ2lBQ0tBSUlJZ3RzUVFoMGFpRUNJQUFnQmtFQ2RFRjRjV29nQlVFQmRtcEJnQUpxSVFVZ0NFRUJkaUVHSUFkQkFYWWhCeUFCUVFkeElRZ2dDMEVEZENFQUlBcEJBM1FoQVFKQUlBbEJCM0VpQ1VVTkFDQUlSUTBBSUFJZ0JTQURJQVFnQVNBQUlBa2dDQ0FISUFZUVNBOExJQWtFUUNBQ0lBVWdBeUFFSUFFZ0FDQUpJQWNnQmhCTER3c2dDQVJBSUFJZ0JTQURJQVFnQVNBQUlBZ2dCeUFHRUVvUEN5QUNJQVVnQXlBRUlBRWdBQ0FISUFaQkNCQU1JQUlnQUNBQmJHb2dCVUZBYXlBRElBUWdBU0FBSUFjZ0JrRUlFQXdMeHdFQkJIOGdBQ2dDQkNFQ0FrQWdBQ2dDREVFRGRDQUFLQUlRYXlJRFFTQk9CRUFnQWlnQUFDSUJRUmgwSUFGQkNIUkJnSUQ4QjNGeUlBRkJDSFpCZ1A0RGNTQUJRUmgyY25JaEFTQUFLQUlJSWdCRkRRRWdBU0FBZENBQ0xRQUVRUWdnQUd0MmNnOExJQU5CQVVnRVFFRUFEd3NnQWkwQUFDQUFLQUlJSWdCQkdHb2lCSFFoQVNBQUlBTnFRWGhxSWdCQkFVZ05BQU5BSUFJdEFBRWdCRUY0YWlJRWRDQUJjaUVCSUFCQkNFb2hBeUFDUVFGcUlRSWdBRUY0YWlFQUlBTU5BQXNMSUFFTGpBUUJCMzhDUUNBQVFYOXFJZ2d0QUFBaUJTQUFMUUFBSWdacklnUWdCRUVmZFNJRWFpQUVjeUFDS0FJRVR3MEFJQUJCZm1vdEFBQWlCQ0FGYXlJSElBZEJIM1VpQjJvZ0IzTWdBaWdDQ0NJSlR3MEFJQUF0QUFFaUJ5QUdheUlLSUFwQkgzVWlDbW9nQ25NZ0NVOE5BQ0FCUVFOTkJFQWdDQ0FGSUFFZ0FpZ0NBR3BCZjJvdEFBQWlDRUYvY3lJSklBaEJBV29pQ0NBR0lBVnJRUUowSUFkcklBUnFRUVJxUVFOMUlnVWdCU0FJU2hzZ0JTQUpTQnNpQldwQnNDNXFMUUFBT2dBQUlBQWdCaUFGYTBHd0xtb3RBQUE2QUFBTUFRc2dDQ0FGSUFkcUlBUkJBWFJxUVFKcVFRSjJPZ0FBSUFBZ0JpQUhRUUYwYWlBRWFrRUNha0VDZGpvQUFBc0NRQ0FBSUFOcUlnQkJmMm9pQnkwQUFDSURJQUF0QUFBaUJXc2lCaUFHUVI5MUlnWnFJQVp6SUFJb0FnUlBEUUFnQUVGK2FpMEFBQ0lHSUFOcklnUWdCRUVmZFNJRWFpQUVjeUFDS0FJSUlnaFBEUUFnQUMwQUFTSUVJQVZySWdrZ0NVRWZkU0lKYWlBSmN5QUlUdzBBSUFGQkEwMEVRQ0FISUFFZ0FpZ0NBR3BCZjJvdEFBQWlBVUYvY3lJQ0lBRkJBV29pQnlBRklBTnJRUUowSUFScklBWnFRUVJxUVFOMUlnRWdBU0FIU2hzZ0FTQUNTQnNpQVNBRGFrR3dMbW90QUFBNkFBQWdBQ0FGSUFGclFiQXVhaTBBQURvQUFBOExJQWNnQXlBRWFpQUdRUUYwYWtFQ2FrRUNkam9BQUNBQUlBVWdCRUVCZEdvZ0JtcEJBbXBCQW5ZNkFBQUxDMGNBQWtBZ0FVRUVUUVJBQWtBQ1FBSkFBa0FnQVVFQmF3NEVBUUlEQlFBTElBQW9Bc2dCRHdzZ0FDZ0N6QUVQQ3lBQUtBTFFBUThMSUFBb0F0UUJEd3RCQUNFQUN5QUFDNlVEQVF0L1FRQWdBMnNpQzBFQmRDRUVJQUVnQWlnQ0FHcEJmMm90QUFBaUFVRUJhaUVKSUFGQmYzTWhDZ0pBSUFBZ0Eyc2lCeTBBQUNJRklBQXRBQUFpQm1zaUFTQUJRUjkxSWdGcUlBRnpJQUlvQWdRaUFVOE5BQ0FBSUFScUxRQUFJZzBnQldzaUNDQUlRUjkxSWdocUlBaHpJQUlvQWdnaUNFOE5BQ0FBSUFOcUxRQUFJZzRnQm1zaURDQU1RUjkxSWd4cUlBeHpJQWhQRFFBZ0J5QUtJQWtnQmlBRmEwRUNkQ0FPYXlBTmFrRUVha0VEZFNJQklBRWdDVW9iSUFFZ0NrZ2JJZ0VnQldwQnNDNXFMUUFBT2dBQUlBQWdCaUFCYTBHd0xtb3RBQUE2QUFBZ0FpZ0NCQ0VCQ3dKQUlBQkJBV29pQlNBTGFpSUxMUUFBSWdZZ0FDMEFBU0lBYXlJSElBZEJIM1VpQjJvZ0IzTWdBVThOQUNBRUlBVnFMUUFBSWdFZ0Jtc2lCQ0FFUVI5MUlnUnFJQVJ6SUFJb0FnZ2lBazhOQUNBRElBVnFMUUFBSWdNZ0FHc2lCQ0FFUVI5MUlnUnFJQVJ6SUFKUERRQWdDeUFLSUFrZ0FDQUdhMEVDZENBRGF5QUJha0VFYWtFRGRTSUJJQUVnQ1VvYklBRWdDa2diSWdFZ0JtcEJzQzVxTFFBQU9nQUFJQVVnQUNBQmEwR3dMbW90QUFBNkFBQUxDMFFCQW44L0FDRUJBa0JCc01RQUtBSUFJZ0lnQUVFRGFrRjhjV29pQUNBQlFSQjBUUTBBSUFBUUFRMEFRYkRBQUVFd05nSUFRWDhQQzBHd3hBQWdBRFlDQUNBQ0N6UUJBWDhDUUNBQlFSQkxEUUFnQUNnQ0JDQUJRUUowYWlnQ0FDSUFSUTBBSUFBb0FoUkJBa2tOQUNBQUtBSUFJUUlMSUFJTGdnUUJBMzhnQWtHQUJFOEVRQ0FBSUFFZ0FoQUFHaUFBRHdzZ0FDQUNhaUVEQWtBZ0FDQUJjMEVEY1VVRVFBSkFJQUpCQVVnRVFDQUFJUUlNQVFzZ0FFRURjVVVFUUNBQUlRSU1BUXNnQUNFQ0EwQWdBaUFCTFFBQU9nQUFJQUZCQVdvaEFTQUNRUUZxSWdJZ0EwOE5BU0FDUVFOeERRQUxDd0pBSUFOQmZIRWlCRUhBQUVrTkFDQUNJQVJCUUdvaUJVc05BQU5BSUFJZ0FTZ0NBRFlDQUNBQ0lBRW9BZ1EyQWdRZ0FpQUJLQUlJTmdJSUlBSWdBU2dDRERZQ0RDQUNJQUVvQWhBMkFoQWdBaUFCS0FJVU5nSVVJQUlnQVNnQ0dEWUNHQ0FDSUFFb0FodzJBaHdnQWlBQktBSWdOZ0lnSUFJZ0FTZ0NKRFlDSkNBQ0lBRW9BaWcyQWlnZ0FpQUJLQUlzTmdJc0lBSWdBU2dDTURZQ01DQUNJQUVvQWpRMkFqUWdBaUFCS0FJNE5nSTRJQUlnQVNnQ1BEWUNQQ0FCUVVCcklRRWdBa0ZBYXlJQ0lBVk5EUUFMQ3lBQ0lBUlBEUUVEUUNBQ0lBRW9BZ0EyQWdBZ0FVRUVhaUVCSUFKQkJHb2lBaUFFU1EwQUN3d0JDeUFEUVFSSkJFQWdBQ0VDREFFTElBTkJmR29pQkNBQVNRUkFJQUFoQWd3QkN5QUFJUUlEUUNBQ0lBRXRBQUE2QUFBZ0FpQUJMUUFCT2dBQklBSWdBUzBBQWpvQUFpQUNJQUV0QUFNNkFBTWdBVUVFYWlFQklBSkJCR29pQWlBRVRRMEFDd3NnQWlBRFNRUkFBMEFnQWlBQkxRQUFPZ0FBSUFGQkFXb2hBU0FDUVFGcUlnSWdBMGNOQUFzTElBQUx3UmdCSUg4akFFSFFBMnNpQmlRQUlBRW9BZ2doRkNBQklBRW9BZ1FpQ2lBQ2JDSWFJQU5xRUIwZ0FTZ0NBQ0VKSUFCQkFEWUNDQ0FBUWlnM0FoUWdBRUlBTndJTUlBQkJCallDQUNBRFFRUjBJUWNDUUFKQUFrQWdCRUYrYWlJRVFRVkxEUUFDUUNBRVFRRnJEZ1FCQVFFQkFBc01BUXNnQmtFQU5nSU1JQVlnRkRZQ0dDQUdJQW8yQWhRZ0JpQUZOZ0lRSUFVRVFDQUdRZEFBYWlBR1FReHFJQVpCRUdvZ0J5QUNRUVIwUVFCQkFFRVFRUkFRRGd3Q0N3c2dCa0hRQUdwQkFFR0FBeEFIR2lBSklCcEJDSFJxSUFkcUlRd2dCa0lBTndOSUlBWkJRR3RDQURjREFDQUdRZ0EzQXpnZ0JrSUFOd013SUFaQ0FEY0RLQ0FHUWdBM0F5QWdCa0lBTndNWUlBWkNBRGNERUVFQUlRa0NmMEVBSUFKRkRRQWFRUUFnQUVFQUlBcHJRZGdCYkdvb0FzUUJSUTBBR2lBR0lBd2dDa0VFZEdzaUJDMEFCU0FFTFFBRWFpQUVMUUFHYWlBRUxRQUhhaUlYSUFRdEFBTWdCQzBBQWlBRUxRQUJJQVF0QUFCcWFtb2lGbW9pQlNBRUxRQUxJQVF0QUFvZ0JDMEFDU0FFTFFBSWFtcHFJaEpySUFRdEFBOGdCQzBBRGlBRUxRQU5JQVF0QUF4cWFtb2lFMnNpQ0RZQ0ZDQUdJQVVnRW1vZ0Uyb2lDVFlDRUVFQkN5RUZBbjhDUUNBQ0lCUkJmMnBIQkVBZ0FDQUtRZGdCYkdvb0FzUUJEUUVMSUFVTUFRc2dCaUFNSUFwQkNIUnFJZ0l0QUFVZ0FpMEFCR29nQWkwQUJtb2dBaTBBQjJvaUhpQUNMUUFESUFJdEFBSWdBaTBBQVNBQ0xRQUFhbXBxSWg5cUlnUWdBaTBBQ3lBQ0xRQUtJQUl0QUFrZ0FpMEFDR3BxYWlJWWF5QUNMUUFQSUFJdEFBNGdBaTBBRFNBQ0xRQU1hbXBxSWhscklBaHFJZ2cyQWhRZ0JpQUVJQmhxSUFscUlCbHFJZ2syQWhCQkFTRVFJQVZCQVdvTElRZEJBQ0VFQW44Q1FDQURSUTBBSUFCQmJHb29BZ0JGRFFBZ0JpQU1RWDlxSWdJZ0NrRUdkQ0lPYWlJRUlBcEJCSFFpQzJvdEFBQWdCQzBBQUdvZ0JDQUtRUVYwSWc5cUxRQUFhaUFFSUFwQk1Hd2lEV290QUFCcUloc2dBaUFOYWkwQUFDQUNJQTlxTFFBQUlBSWdDMm90QUFBZ0FpMEFBR3BxYWlJY2FpSVJJQVFnRG1vaUFpQUxhaTBBQUNBQ0xRQUFhaUFDSUE5cUxRQUFhaUFDSUExcUxRQUFhaUlWYXlBQ0lBNXFJZ0lnQzJvdEFBQWdBaTBBQUdvZ0FpQVBhaTBBQUdvZ0FpQU5haTBBQUdvaUQyc2lCRFlDSUNBR0lCRWdGV29nQ1dvZ0Qyb2lDVFlDRUNBSFFRRnFJUXRCQVF3QkN5QUhJUXRCQUFzaEFnSkFBa0FDUUFKQUFrQUNRQ0FESUFwQmYycEhCRUFnQUNnQ25BTU5BUXRCQUNFT0lBSkJBRWNoRVNBSERRRU1BZ3NnQmlBRUlBeEJFR29pQkNBS1FRWjBJaDFxSWdBZ0NrRUVkQ0lOYWkwQUFDQUFMUUFBYWlBQUlBcEJCWFFpRG1vdEFBQnFJQUFnQ2tFd2JDSVJhaTBBQUdvaUlDQUVJQkZxTFFBQUlBUWdEbW90QUFBZ0JDQU5haTBBQUNBTUxRQVFhbXBxSWlGcUlpSWdBQ0FkYWlJQUlBMXFMUUFBSUFBdEFBQnFJQUFnRG1vdEFBQnFJQUFnRVdvdEFBQnFJZ3hySUFBZ0hXb2lBQ0FOYWkwQUFDQUFMUUFBYWlBQUlBNXFMUUFBYWlBQUlCRnFMUUFBYWlJTmEyb2lCRFlDSUNBR0lBd2dJbW9nQ1dvZ0RXb2lDVFlDRUNBQ1FRQkhJUkZCQVNFT0lBSkJBV29oQUNBTFFRRnFJUXNDUUNBSERRQWdBa1VOQUNBR0lCc2dIR29nRldvZ0Qyb2dJV3NnSUdzZ0RHc2dEV3RCQlhVaUNEWUNGQXdEQ3lBSFJRMENJQUFoQWdzZ0JpQUlJQWRCQTJwMUlnZzJBaFFMQWtBZ0VFVU5BQ0FGUlEwQUlBSU5BQ0FHSUJZZ0Yyb2dFbW9nRTJvZ0dXc2dHR3NnSG1zZ0gydEJCWFVpQkRZQ0lFRUJJUkJCQVNFTkRBTUxJQkJCQUVjaEVDQUZRUUJISVEwZ0FrVU5BZ3dCQ3lBUVFRQkhJUkFnQlVFQVJ5RU5JQUFoQWdzZ0JpQUVJQUpCQTJwMUlnUTJBaUFMSUFZQ2Z5QUxRWDlxSWdCQkFrMEVRQUpBQWtBQ1FDQUFRUUZyRGdJQkFnQUxJQWxCQkhZTUF3c2dDVUVGZGd3Q0N5QUpRUlZzUVFwMURBRUxJQWxCQm5ZTElnQTJBaEFDUUNBRUlBaHlSUVJBSUFZZ0FEWUNTQ0FHSUFBMkFrd2dCaUFBTmdKRUlBWWdBRFlDUUNBR0lBQTJBandnQmlBQU5nSTRJQVlnQURZQ05DQUdJQUEyQWpBZ0JpQUFOZ0lzSUFZZ0FEWUNLQ0FHSUFBMkFpUWdCaUFBTmdJZ0lBWWdBRFlDSENBR0lBQTJBaGdnQmlBQU5nSVVEQUVMSUFZZ0FDQUlhaUlGSUFSck5nSkFJQVlnQlNBRVFRRjFJZ0pyTmdJd0lBWWdBaUFGYWpZQ0lDQUdJQVFnQldvMkFoQWdCaUFBSUFocklnVWdCR3MyQWt3Z0JpQUZJQUpyTmdJOElBWWdBaUFGYWpZQ0xDQUdJQVFnQldvMkFod2dCaUFBSUFoQkFYVWlCMm9pQlNBRWF6WUNSQ0FHSUFVZ0FtczJBalFnQmlBQ0lBVnFOZ0lrSUFZZ0JDQUZhallDRkNBR0lBQWdCMnNpQUNBRWF6WUNTQ0FHSUFBZ0FtczJBamdnQmlBQUlBSnFOZ0lvSUFZZ0FDQUVhallDR0FzZ0JrSFFBR29oQ0NBR1FSQnFJUUJCQUNFRUEwQWdDQ0FBSUFSQkRIRnFLQUlBSWdKQi93RWdBa0gvQVVnYklnSkJBQ0FDUVFCS0d6b0FBQ0FBSUFCQkVHb2dCRUVCYWlJRVFUOXhHeUVBSUFoQkFXb2hDQ0FFUVlBQ1J3MEFDeUFCS0FJQUlBb2dGR3dpQUVFSWRHb2dHa0VHZEdvZ0EwRURkR29oQXlBS1FRUjBJUXdnQ2tFR2RDRWFJQUJCQm5RaEhVRUFJQXBCQTNRaUMyc2hJQ0FHUWRBQ2FpRWhJQVpCUUdzaElrRUFJUVVEUUNBR1FnQTNBMGdnSWtJQU53TUFJQVpDQURjRE9DQUdRZ0EzQXpBZ0JrSUFOd01vSUFaQ0FEY0RJQ0FHUWdBM0F4Z2dCa0lBTndNUVFRQWhDRUVBSVFSQkFDRUpJQTBFUUNBR0lBTWdJR29pQUMwQUF5QUFMUUFDYWlJWElBQXRBQUVnQUMwQUFHb2lGbW9pQWlBQUxRQUZJQUF0QUFScUloSnJJQUF0QUFjZ0FDMEFCbW9pRTJzaUNEWUNGQ0FHSUFJZ0Vtb2dFMm9pQkRZQ0VFRUJJUWtMSUJBRVFDQUdJQU1nR21vaUFDMEFBeUFBTFFBQ2FpSWVJQUF0QUFFZ0FDMEFBR29pSDJvaUFpQUFMUUFGSUFBdEFBUnFJaGhySUFBdEFBY2dBQzBBQm1vaUdXc2dDR29pQ0RZQ0ZDQUdJQUlnR0dvZ0JHb2dHV29pQkRZQ0VDQUpRUUZxSVFrTFFRQWhBQUovSUJGRkJFQWdDU0VIUVFBTUFRc2dCaUFEUVg5cUlnQWdER29pQWlBTGFpMEFBQ0FDTFFBQWFpSWJJQUFnQzJvdEFBQWdBQzBBQUdvaUhHb2lCeUFDSUF4cUlnQWdDMm90QUFBZ0FDMEFBR29pRldzZ0FDQU1haUlBSUF0cUxRQUFJQUF0QUFCcUlnOXJJZ0EyQWlBZ0JpQUhJQlZxSUFScUlBOXFJZ1EyQWhBZ0NVRUJhaUVIUVFFTElRSUNRQ0FHQW44Q1FBSkFBa0FnRGtVRVFDQUpEUUVNQWdzZ0JpQUFJQU5CQ0dvaUNpQU1haUlBSUF0cUxRQUFJQUF0QUFCcUlpTWdDaUFMYWkwQUFDQURMUUFJYWlJa2FpSWxJQUFnREdvaUFDQUxhaTBBQUNBQUxRQUFhaUlLYXlBQUlBeHFJZ0FnQzJvdEFBQWdBQzBBQUdvaUZHdHFJZ0EyQWlBZ0JpQUtJQ1ZxSUFScUlCUnFJZ1EyQWhBZ0FrRUJhaUVDSUFkQkFXb2hCeUFSUVFGeklBbEJBRWR5UlFSQUlBWWdHeUFjYWlBVmFpQVBhaUFrYXlBamF5QUtheUFVYTBFRWRTSUlOZ0lVREFNTElBbEZEUUlMSUFZZ0NDQUpRUUpxZFNJSU5nSVVDeUFXSUJkcUlCSnFJQk5xSUJscklCaHJJQjVySUI5clFRUjFJQkFnRFNBQ1JYRnhRUUZHRFFFYUlBSkZEUUlMSUFBZ0FrRUNhblVMSWdBMkFpQUxJQVlDZnlBSFFYOXFJZ0pCQWswRVFBSkFBa0FDUUNBQ1FRRnJEZ0lCQWdBTElBUkJBM1lNQXdzZ0JFRUVkZ3dDQ3lBRVFSVnNRUWwyREFFTElBUkJCWFlMSWdRMkFoQUNRQ0FBSUFoeVJRUkFJQVlnQkRZQ1NDQUdJQVEyQWt3Z0JpQUVOZ0pFSUFZZ0JEWUNRQ0FHSUFRMkFqd2dCaUFFTmdJNElBWWdCRFlDTkNBR0lBUTJBakFnQmlBRU5nSXNJQVlnQkRZQ0tDQUdJQVEyQWlRZ0JpQUVOZ0lnSUFZZ0JEWUNIQ0FHSUFRMkFoZ2dCaUFFTmdJVURBRUxJQVlnQkNBSWFpSUhJQUJyTmdKQUlBWWdCeUFBUVFGMUlnSnJOZ0l3SUFZZ0FpQUhhallDSUNBR0lBQWdCMm8yQWhBZ0JpQUVJQWhySWdjZ0FHczJBa3dnQmlBSElBSnJOZ0k4SUFZZ0FpQUhhallDTENBR0lBQWdCMm8yQWh3Z0JpQUVJQWhCQVhVaUNXb2lCeUFBYXpZQ1JDQUdJQWNnQW1zMkFqUWdCaUFDSUFkcU5nSWtJQVlnQUNBSGFqWUNGQ0FHSUFRZ0NXc2lCQ0FBYXpZQ1NDQUdJQVFnQW1zMkFqZ2dCaUFDSUFScU5nSW9JQVlnQUNBRWFqWUNHQXNnSVNBRlFRWjBhaUVJUVFBaEFDQUdRUkJxSVFRRFFDQUlJQVFnQUVFQmRFRU1jV29vQWdBaUFrSC9BU0FDUWY4QlNCc2lBa0VBSUFKQkFFb2JPZ0FBSUFRZ0JFRVFhaUFBUVFGcUlnQkJEM0ViSVFRZ0NFRUJhaUVJSUFCQndBQkhEUUFMSUFNZ0hXb2hBeUFGUVFGcUlnVkJBa2NOQUFzTElBRWdCa0hRQUdvUUd5QUdRZEFEYWlRQUN6WUFJQUlFUUNBQUlBRVFBZzhMUVFFaEFpQUJJQUJCQVJBRElnQTJBZ0FnQUVGL1J3Ui9JQUVnQUVFQmN6WUNBRUVBQlVFQkN3dk1Bd0VTZnlBRFFRRjBJUThnQTBGOWJDRVFRUUFnQTJzaUVVRUJkQ0VTSUFFZ0FpZ0NBR3BCZjJvdEFBQWlCMEVCYWlFVFFRQWdCMnNoQ2tFRUlRRURRQUpBSUFBZ0VXb2lGQzBBQUNJRklBQXRBQUFpQ0dzaUJDQUVRUjkxSWdScUlBUnpJQUlvQWdSUERRQWdBQ0FTYWlJTExRQUFJZ3dnQldzaUJDQUVRUjkxSWdScUlBUnpJQUlvQWdnaUJrOE5BQ0FBSUFOcUloVXRBQUFpRFNBSWF5SUVJQVJCSDNVaUJHb2dCSE1nQms4TkFDQUhJUVFnQUNBUWFpMEFBQ0lKSUFWcklnNGdEa0VmZFNJT2FpQU9jeUFHU1FSQUlBc2dEQ0FLSUFjZ0JTQUlha0VCYWtFQmRpQU1RUUYwYXlBSmFrRUJkU0lFSUFRZ0Iwb2JJQVFnQ2tnYmFqb0FBQ0FDS0FJSUlRWWdFeUVFQ3lBVUlBVUNmeUFBSUE5cUxRQUFJZ3NnQ0dzaUNTQUpRUjkxSWdscUlBbHpJQVpKQkVBZ0ZTQU5JQW9nQnlBRklBaHFRUUZxUVFGMklBMUJBWFJySUF0cVFRRjFJZ1lnQmlBSFNoc2dCaUFLU0J0cU9nQUFJQVJCQVdvaEJBdEJBQ0FFYXlJR0N5QUVJQWdnQld0QkFuUWdEV3NnREdwQkJHcEJBM1VpQlNBRklBUktHeUFGSUFaSUd5SUVha0d3TG1vdEFBQTZBQUFnQUNBSUlBUnJRYkF1YWkwQUFEb0FBQXNnQUVFQmFpRUFJQUZCZjJvaUFRMEFDd3Y3QmdFT2Z5QUNLQUlJSVFvZ0FpZ0NCQ0VQQWtBZ0FVRUVUd1JBSUE5QkFuWkJBbW9oRUVFRUlRSURRQUpBSUFCQmYyb2lCUzBBQUNJSElBQXRBQUFpQ0dzaUFTQUJRUjkxSWdGcUlBRnpJZzBnRDA4TkFDQUFRWDVxSWc0dEFBQWlBU0FIYXlJRUlBUkJIM1VpQkdvZ0JITWdDazhOQUNBQUxRQUJJZ2tnQ0dzaUJDQUVRUjkxSWdScUlBUnpJQXBQRFFBQ1FDQU5JQkJKQkVBZ0FDMEFBaUVMQW44Z0FFRjlhaUlOTFFBQUlnUWdCMnNpQmlBR1FSOTFJZ1pxSUFaeklBcEpCRUJCQXlFR0lBVWdDU0FISUFocUlBRnFJZ1ZCQVhScUlBUnFRUVJxUVFOMk9nQUFJQTRnQkNBRmFrRUNha0VDZGpvQUFDQUVRUU5zSVE0Z0JVRUVhaUVNSUFCQmZHb3RBQUFNQVFzZ0J5QUphaUVNUVFJaERrRUNJUVlnQlNFTklBRUxJUVFnRFNBTUlBNXFJQVJCQVhScUlBWjJPZ0FBSUFzZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6SUFwUERRRWdBQ0FISUFscUlBaHFJZ1VnQzJwQkFtcEJBblk2QUFFZ0FDQUZJQXRCQTJ4cUlBQXRBQU5CQVhScVFRUnFRUU4yT2dBQ0lBQWdBU0FGUVFGMGFpQUxha0VFYWtFRGRqb0FBQXdDQ3lBRklBY2dDV29nQVVFQmRHcEJBbXBCQW5ZNkFBQUxJQUFnQVNBSWFpQUpRUUYwYWtFQ2FrRUNkam9BQUFzZ0FDQURhaUVBSUFKQmYyb2lBZzBBQ3d3QkN5QUJJQUlvQWdCcVFYOXFMUUFBSWdWQkFXb2hEVUVBSUFWcklRaEJCQ0VDQTBBQ1FDQUFRWDlxSWc0dEFBQWlCQ0FBTFFBQUlnZHJJZ0VnQVVFZmRTSUJhaUFCY3lBUFR3MEFJQUJCZm1vaURDMEFBQ0lKSUFScklnRWdBVUVmZFNJQmFpQUJjeUFLVHcwQUlBQXRBQUVpQ3lBSGF5SUJJQUZCSDNVaUFXb2dBWE1nQ2s4TkFDQUFMUUFDSVFZZ0JTRUJJQUJCZldvdEFBQWlFQ0FFYXlJUklCRkJIM1VpRVdvZ0VYTWdDa2tFUUNBTUlBa2dDQ0FGSUFRZ0IycEJBV3BCQVhZZ0NVRUJkR3NnRUdwQkFYVWlBU0FCSUFWS0d5QUJJQWhJRzJvNkFBQWdEU0VCQ3lBT0lBUUNmeUFHSUFkcklnd2dERUVmZFNJTWFpQU1jeUFLU1FSQUlBQWdDeUFJSUFVZ0JDQUhha0VCYWtFQmRpQUxRUUYwYXlBR2FrRUJkU0lHSUFZZ0JVb2JJQVlnQ0VnYmFqb0FBU0FCUVFGcUlRRUxRUUFnQVdzaUJnc2dBU0FKSUF0cklBY2dCR3RCQW5ScVFRUnFRUU4xSWdRZ0JDQUJTaHNnQkNBR1NCc2lBV3BCc0M1cUxRQUFPZ0FBSUFBZ0J5QUJhMEd3TG1vdEFBQTZBQUFMSUFBZ0Eyb2hBQ0FDUVg5cUlnSU5BQXNMQzlvSEFRMS9Jd0JCd0FOckloRWtBQ0FHUVFWcUlRa0NRQUpBSUFKQkFFZ05BQ0FEUVFCSURRQWdBaUFKYWlBRVN3MEFJQU1nQjJwQkJXb2dCVXNOQUNBRUlRa2dBeUVLREFFTElBQWdFU0FDSUFNZ0JDQUZJQWtnQjBFRmFpQUpFQXdnRVNFQVFRQWhBZ3NDUUNBSFJRMEFJQUFnQ1NBS2JDQUNhbW9oRTBFUUlBWnJJUlFDUUNBR1FRSjJJaElFUUNBSklBWnJJUlVnRXlBSklBaEJBWFpCQVhGQkFuSnNha0VGYWlFQ0lBY2hCQU5BSUFKQmYyb3RBQUFoQUNBQ1FYNXFMUUFBSVFNZ0FrRjlhaTBBQUNFRklBSkJmR290QUFBaEN5QUNRWHRxTFFBQUlRMGdFaUVQQTBBZ0FTQUNMUUFBSWdvZ0RTQUFJQXRxSWd4cklBTWdCV3BCRkd4cUlBeEJBblJyYWtFUWFrRUZkVUd3TG1vdEFBQTZBQUFnQVNBQ0xRQUJJZ3dnQ3lBQUlBTnFRUlJzYWlBRklBcHFJZ3RySUF0QkFuUnJha0VRYWtFRmRVR3dMbW90QUFBNkFBRWdBU0FDTFFBQ0loQWdCU0FBSUFwcVFSUnNhaUFESUF4cUlnVnJJQVZCQW5ScmFrRVFha0VGZFVHd0xtb3RBQUE2QUFJZ0FTQUNMUUFESWc0Z0F5QUtJQXhxUVJSc2FpQUFJQkJxSWdOcklBTkJBblJyYWtFUWFrRUZkVUd3TG1vdEFBQTZBQU1nQVVFRWFpRUJJQUpCQkdvaEFpQUFJUTBnQ2lFTElBd2hCU0FRSVFNZ0RpRUFJQTlCZjJvaUR3MEFDeUFCSUJScUlRRWdBaUFWYWlFQ0lBUkJmMm9pQkEwQUN3d0JDeUFIUVg5cUlCUnNJQVpySUFGcVFSQnFJUUVMSUFkQkFuWWlCRVVOQUVIQUFDQUdheUVRSUFsQkFYUWhDaUFKUVFKMElBWnJJUXRCQUNBSmF5SU1RUUYwSVJJZ0FTQUhRUVIwYXlFQ0lBa2dFMm9nQ0VFQmNXcEJBbW9pQUNBSlFRVnNhaUVCQTBBZ0JpSURCRUFEUUNBQ0lBQWdDbW90QUFBaUJTQUJJQXBxTFFBQUlBRWdDV290QUFBaURpQUJJQkpxTFFBQUlnZHFJZ2hySUFoQkFuUnJhaUFCTFFBQUlnMGdBU0FNYWkwQUFDSUlha0VVYkdwQkVHcEJCWFZCc0M1cUxRQUFJQUl0QURCcVFRRnFRUUYyT2dBd0lBSWdBQ0FKYWkwQUFDSVBJQTRnQnlBSWFrRVViR29nQlNBTmFpSU9heUFPUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBSUFJdEFDQnFRUUZxUVFGMk9nQWdJQUlnQUMwQUFDSU9JQTBnQlNBSGFrRVViR29nQ0NBUGFpSU5heUFOUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBSUFJdEFCQnFRUUZxUVFGMk9nQVFJQUlnQUNBTWFpMEFBQ0FJSUFVZ0QycEJGR3hxSUFjZ0Rtb2lCV3NnQlVFQ2RHdHFRUkJxUVFWMVFiQXVhaTBBQUNBQ0xRQUFha0VCYWtFQmRqb0FBQ0FBUVFGcUlRQWdBa0VCYWlFQ0lBRkJBV29oQVNBRFFYOXFJZ01OQUFzTElBSWdFR29oQWlBQklBdHFJUUVnQUNBTGFpRUFJQVJCZjJvaUJBMEFDd3NnRVVIQUEyb2tBQXUxQlFFRWZ5QUFLQUlVSVFNZ0FDZ0NFQ0VFSUFBb0FnUWhCU0FBS0FJTUlnSWdBU2tDQURjQ0FDQUNJQUVwQWdnM0FnZ2dBaUFGUVFSMElnQnFJZ0lnQVNrQ0VEY0NBQ0FDSUFFcEFoZzNBZ2dnQUNBQ2FpSUNJQUVwQWlBM0FnQWdBaUFCS1FJb053SUlJQUFnQW1vaUFpQUJLUUl3TndJQUlBSWdBU2tDT0RjQ0NDQUFJQUpxSWdJZ0FTa0NRRGNDQUNBQ0lBRXBBa2czQWdnZ0FDQUNhaUlDSUFFcEFsQTNBZ0FnQWlBQktRSllOd0lJSUFBZ0Ftb2lBaUFCS1FKZ053SUFJQUlnQVNrQ2FEY0NDQ0FBSUFKcUlnSWdBU2tDY0RjQ0FDQUNJQUVwQW5nM0FnZ2dBQ0FDYWlJQ0lBRXBBb0FCTndJQUlBSWdBU2tDaUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBcEFCTndJQUlBSWdBU2tDbUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBcUFCTndJQUlBSWdBU2tDcUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBckFCTndJQUlBSWdBU2tDdUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBc0FCTndJQUlBSWdBU2tDeUFFM0FnZ2dBQ0FDYWlJQ0lBRXBBdEFCTndJQUlBSWdBU2tDMkFFM0FnZ2dBQ0FDYWlJQ0lBRXBBdUFCTndJQUlBSWdBU2tDNkFFM0FnZ2dBQ0FDYWlJQUlBRXBBdkFCTndJQUlBQWdBU2tDK0FFM0FnZ2dCQ0FCS1FLQUFqY0NBQ0FFSUFWQkEzUWlBR29pQkNBQktRS0lBamNDQUNBQUlBUnFJZ1FnQVNrQ2tBSTNBZ0FnQUNBRWFpSUVJQUVwQXBnQ053SUFJQUFnQkdvaUJDQUJLUUtnQWpjQ0FDQUFJQVJxSWdRZ0FTa0NxQUkzQWdBZ0FDQUVhaUlFSUFFcEFyQUNOd0lBSUFBZ0JHb2dBU2tDdUFJM0FnQWdBeUFCS1FMQUFqY0NBQ0FBSUFOcUlnTWdBU2tDeUFJM0FnQWdBQ0FEYWlJRElBRXBBdEFDTndJQUlBQWdBMm9pQXlBQktRTFlBamNDQUNBQUlBTnFJZ01nQVNrQzRBSTNBZ0FnQUNBRGFpSURJQUVwQXVnQ053SUFJQUFnQTJvaUF5QUJLUUx3QWpjQ0FDQUFJQU5xSUFFcEF2Z0NOd0lBQytnQ0FRVi9Ba0FnQUNBQkVBSWlBdzBBUVFFaEF5QUJJQUVvQWdCQkFXb2lBallDQUNBQ1FTQkxEUUFnQUVFRUVBTWlBa0YvUmcwQUlBRWdBallDQkNBQVFRUVFBeUlDUVg5R0RRQWdBU0FDTmdJSUlBRW9BZ0FFUUFOQUlBQWdBU0FGUVFKMGFpSUNJZ1JCREdvUUFpSUREUUpCQVNFRElBUW9BZ3dpQmtGL1JnMENJQVFnQmtFQmFpSUROZ0lNSUFRZ0F5QUJLQUlFUVFacWREWUNEQ0FBSUFKQmpBRnFFQUlpQXcwQ1FRRWhBeUFDS0FLTUFTSUVRWDlHRFFJZ0FpQUVRUUZxSWdRMkFvd0JJQUlnQkNBQktBSUlRUVJxZERZQ2pBRWdBRUVCRUFNaUJFRi9SZzBDSUFJZ0JFRUJSallDakFJZ0JVRUJhaUlGSUFFb0FnQkpEUUFMQ3lBQVFRVVFBeUlDUVg5R0RRQWdBU0FDUVFGcU5nS01BeUFBUVFVUUF5SUNRWDlHRFFBZ0FTQUNRUUZxTmdLUUF5QUFRUVVRQXlJQ1FYOUdEUUFnQVNBQ1FRRnFOZ0tVQXlBQVFRVVFBeUlBUVg5R0RRQWdBU0FBTmdLWUEwRUFJUU1MSUFNTFd3RURmeUFBSUFBb0FnQWlCQ0FCSUFBb0FnUWlBbkFpQTBFRWRHb2dBU0FEYXlJQlFRaDBhallDRENBQUlBUWdBaUFBS0FJSWJDSUNRUWgwYWlBQlFRWjBhaUFEUVFOMGFpSUJOZ0lRSUFBZ0FTQUNRUVowYWpZQ0ZBdFZBUUovSUFFZ0FrRUJhaUlESUFNZ0FVa2JJUU1nQUNBQ1FRSjBhaWdDQUNFRUEwQUNRQ0FDUVFGcUlnSWdBVThFUUNBRElRSU1BUXNnQUNBQ1FRSjBhaWdDQUNBRVJ3MEJDd3RCQUNBQ0lBRWdBa1liQ3ljQUlBQkJDQ0FBS0FJSUlnQnJFQU5CZjBZRVFBOExRUUFnQUd0QkFuUkJ6RDlxS0FJQUdndDZBUUovSXdCQklHc2lBaVFBSUFJZ0FDZ0NFRFlDRUNBQ0lBQXBBZ2czQXdnZ0FpQUFLUUlBTndNQUFrQWdBaUFDUVJ4cUVBSWlBQTBBSUFJZ0FrRWNhaEFDSWdBTkFDQUNJQUpCSEdvUUFpSUFEUUJCQVNFQUlBSW9BaHdpQTBIL0FVc05BQ0FCSUFNMkFnQkJBQ0VBQ3lBQ1FTQnFKQUFnQUF2bkJ3RVNmeU1BUVlBT2F5SU1KQUFnQmtFRmFpRUpBa0FDUUNBQ1FRQklEUUFnQTBFQVNBMEFJQUlnQ1dvZ0JFc05BQ0FESUFkcVFRVnFJQVZMRFFBZ0F5RUtEQUVMSUFBZ0RFSEFDbW9nQWlBRElBUWdCU0FKSUFkQkJXb2dDUkFNSUF4QndBcHFJUUFnQ1NFRVFRQWhBZ3NDUUNBSFFRSjJJaFJGRFFBZ0NVVU5BQ0FFUVFGMElSVkJBQ0FFYXlJV1FRRjBJUm9nQkVFQ2RDQUdhMEY3YWlFWElBQWdCQ0FLYkNBQ2Ftb2dCR29pQUNBRVFRVnNhaUVDSUF3Z0NVRUNkQ0lRYWlFRElBbEJBM1FoRFVFQUlBbHJRUUowSVE0Z0NVRURiRUVDZENFUEEwQWdDU0VGQTBBZ0F5QU5haUFBSUJWcUxRQUFJaEVnQWlBVmFpMEFBQ0FDSUFScUxRQUFJZ3NnQWlBYWFpMEFBQ0lTYWlJS2F5QUtRUUowYTJvZ0FpMEFBQ0lZSUFJZ0Ztb3RBQUFpRTJwQkZHeHFOZ0lBSUFNZ0VHb2dBQ0FFYWkwQUFDSVpJQXNnRWlBVGFrRVViR29nRVNBWWFpSUtheUFLUVFKMGEybzJBZ0FnQXlBQUxRQUFJZ3NnR0NBUklCSnFRUlJzYWlBVElCbHFJZ3BySUFwQkFuUnJhallDQUNBRElBNXFJQUFnRm1vdEFBQWdFeUFSSUJscVFSUnNhaUFMSUJKcUlncHJJQXBCQW5ScmFqWUNBQ0FBUVFGcUlRQWdBMEVFYWlFRElBSkJBV29oQWlBRlFYOXFJZ1VOQUFzZ0FpQVhhaUVDSUFBZ0Yyb2hBQ0FESUE5cUlRTWdGRUYvYWlJVURRQUxDeUFIQkVCQkVDQUdheUVRSUFaQkFuWWhDaUFNSUFoQkFuUnFRUWhxSVFBZ0RFRVVhaUVDQTBBZ0NnUkFJQUpCYkdvb0FnQWhCQ0FDUVhCcUtBSUFJUThnQWtGMGFpZ0NBQ0VOSUFKQmVHb29BZ0FoQlNBQ1FYeHFLQUlBSVFNZ0NpRUpBMEFnQVNBQ0tBSUFJZzRnQkNBRElBOXFJZ1JySUFVZ0RXcEJGR3hxSUFSQkFuUnJha0dBQkdwQkNuVkJzQzVxTFFBQUlBQW9BZ0JCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFDQUJJQUlvQWdRaUN5QVBJQU1nQldwQkZHeHFJQTBnRG1vaUJHc2dCRUVDZEd0cVFZQUVha0VLZFVHd0xtb3RBQUFnQUNnQ0JFRVFha0VGZFVHd0xtb3RBQUJxUVFGcVFRRjJPZ0FCSUFFZ0FpZ0NDQ0lJSUEwZ0F5QU9ha0VVYkdvZ0JTQUxhaUlFYXlBRVFRSjBhMnBCZ0FScVFRcDFRYkF1YWkwQUFDQUFLQUlJUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFBSWdBU0FDS0FJTUlnWWdCU0FMSUE1cVFSUnNhaUFESUFocUlnUnJJQVJCQW5ScmFrR0FCR3BCQ25WQnNDNXFMUUFBSUFBb0FneEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQXlBQlFRUnFJUUVnQUVFUWFpRUFJQUpCRUdvaEFpQURJUVFnRGlFUElBc2hEU0FJSVFVZ0JpRURJQWxCZjJvaUNRMEFDd3NnQVNBUWFpRUJJQUJCRkdvaEFDQUNRUlJxSVFJZ0IwRi9haUlIRFFBTEN5QU1RWUFPYWlRQUM5RUhBUXgvSXdCQmdBNXJJZzhrQUNBR1FRVnFJUWtDUUFKQUlBSkJBRWdOQUNBRFFRQklEUUFnQWlBSmFpQUVTdzBBSUFkQkJXb2lEaUFEYWlBRlN3MEFJQVFoQ1NBRElRb01BUXNnQUNBUFFjQUthaUFDSUFNZ0JDQUZJQWtnQjBFRmFpSU9JQWtRRENBUFFjQUthaUVBUVFBaEFnc0NRQ0FPUlEwQUlBWkJBbllpRWtVTkFDQUpJQVpySVJNZ0FDQUpJQXBzSUFKcWFrRUZhaUVDSUE4aEFBTkFJQUpCZjJvdEFBQWhDU0FDUVg1cUxRQUFJUU1nQWtGOWFpMEFBQ0VGSUFKQmZHb3RBQUFoQ2lBQ1FYdHFMUUFBSVF3Z0VpRU5BMEFnQUNBQ0xRQUFJZ1FnRENBSklBcHFJZ3RySUFNZ0JXcEJGR3hxSUF0QkFuUnJhallDQUNBQUlBSXRBQUVpQ3lBRElBbHFRUlJzSUFwcUlBUWdCV29pQ21zZ0NrRUNkR3RxTmdJRUlBQWdBaTBBQWlJUUlBUWdDV3BCRkd3Z0JXb2dBeUFMYWlJRmF5QUZRUUowYTJvMkFnZ2dBQ0FDTFFBREloUWdCQ0FMYWtFVWJDQURhaUFKSUJCcUlnTnJJQU5CQW5ScmFqWUNEQ0FBUVJCcUlRQWdBa0VFYWlFQ0lBa2hEQ0FFSVFvZ0N5RUZJQkFoQXlBVUlRa2dEVUYvYWlJTkRRQUxJQUlnRTJvaEFpQU9RWDlxSWc0TkFBc0xJQWRCQW5ZaUJ3UkFRY0FBSUFacklSUWdEeUFHUVFKMElnUnFJZ2tnQmtFVWJHb2hBaUFKSUFoQkFtb2dCbXhCQW5ScUlRQWdCa0VEYkVFQ2RDRUZRUUFnQm1zaURrRURkQ0VUSUFaQkEzUWhDQU5BSUFZaEF5QUdCRUFEUUNBQklBZ2dDV29vQWdBaUNpQUNJQWhxS0FJQUlBSWdCR29vQWdBaUVTQUNJQk5xS0FJQUlndHFJZ3hySUF4QkFuUnJhaUFDS0FJQUlnMGdBaUFPUVFKMEloQnFLQUlBSWd4cVFSUnNha0dBQkdwQkNuVkJzQzVxTFFBQUlBQWdDR29vQWdCQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FNQ0FCSUFRZ0NXb29BZ0FpRWlBUklBc2dER3BCRkd4cUlBb2dEV29pRVdzZ0VVRUNkR3RxUVlBRWFrRUtkVUd3TG1vdEFBQWdBQ0FFYWlnQ0FFRVFha0VGZFVHd0xtb3RBQUJxUVFGcVFRRjJPZ0FnSUFFZ0NTZ0NBQ0lSSUEwZ0NpQUxha0VVYkdvZ0RDQVNhaUlOYXlBTlFRSjBhMnBCZ0FScVFRcDFRYkF1YWkwQUFDQUFLQUlBUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFCQWdBU0FKSUJCcUtBSUFJQXdnQ2lBU2FrRVViR29nQ3lBUmFpSUtheUFLUVFKMGEycEJnQVJxUVFwMVFiQXVhaTBBQUNBQUlCQnFLQUlBUVJCcVFRVjFRYkF1YWkwQUFHcEJBV3BCQVhZNkFBQWdBRUVFYWlFQUlBbEJCR29oQ1NBQlFRRnFJUUVnQWtFRWFpRUNJQU5CZjJvaUF3MEFDd3NnQVNBVWFpRUJJQUFnQldvaEFDQUNJQVZxSVFJZ0JTQUphaUVKSUFkQmYyb2lCdzBBQ3dzZ0QwR0FEbW9rQUF1MEJnRUpmeU1BUWNBRGF5SU5KQUFnQmtFRmFpRUpBa0FDUUNBQ1FRQklEUUFnQXlBSGFpQUZTdzBBSUFOQkFFZ05BQ0FDSUFscUlBUkxEUUFnQkNFSklBTWhDZ3dCQ3lBQUlBMGdBaUFESUFRZ0JTQUpJQWNnQ1JBTUlBMGhBRUVBSVFJTElBY0VRRUVRSUFacklSQWdDU0FHYXlFUklBWkJBblloRHlBQUlBa2dDbXdnQW1wcVFRVnFJUWtEUUFKQUlBOUZEUUFnQ1VGL2FpMEFBQ0VDSUFsQmZtb3RBQUFoQmlBSlFYMXFMUUFBSVFNZ0NVRjhhaTBBQUNFRklBbEJlMm90QUFBaENpQVBJZ0FoQ3lBSUJFQURRQ0FCSUFZZ0NTMEFBQ0lFSUFvZ0FpQUZhaUlLYXlBRElBWnFRUlJzYWlBS1FRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFDQUJJQUlnQ1MwQUFTSUxJQVVnQWlBR2FrRVViR29nQXlBRWFpSUZheUFGUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQVNBQklBUWdDUzBBQWlJTUlBTWdBaUFFYWtFVWJHb2dCaUFMYWlJRGF5QURRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBaUFCSUFzZ0NTMEFBeUlPSUFZZ0JDQUxha0VVYkdvZ0FpQU1haUlEYXlBRFFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUF5QUJRUVJxSVFFZ0NVRUVhaUVKSUFJaENpQUVJUVVnQ3lFRElBd2hCaUFPSVFJZ0FFRi9haUlBRFFBTUFnQUxBQXNEUUNBQklBTWdDUzBBQUNJQUlBb2dBaUFGYWlJRWF5QURJQVpxUVJSc2FpQUVRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBQ0FCSUFZZ0NTMEFBU0lFSUFVZ0FpQUdha0VVYkdvZ0FDQURhaUlGYXlBRlFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQWFrRUJha0VCZGpvQUFTQUJJQUlnQ1MwQUFpSU1JQU1nQUNBQ2FrRVViR29nQkNBR2FpSURheUFEUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBYWtFQmFrRUJkam9BQWlBQklBQWdDUzBBQXlJT0lBWWdBQ0FFYWtFVWJHb2dBaUFNYWlJRGF5QURRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFha0VCYWtFQmRqb0FBeUFCUVFScUlRRWdDVUVFYWlFSklBSWhDaUFBSVFVZ0JDRURJQXdoQmlBT0lRSWdDMEYvYWlJTERRQUxDeUFCSUJCcUlRRWdDU0FSYWlFSklBZEJmMm9pQncwQUN3c2dEVUhBQTJva0FBdkdCQUVMZnlNQVFjQURheUlOSkFBQ1FBSkFJQUpCQUVnTkFDQURRUUJJRFFBZ0FpQUdhaUFFU3cwQUlBTWdCMnBCQldvZ0JVc05BQ0FESVFrTUFRc2dBQ0FOSUFJZ0F5QUVJQVVnQmlBSFFRVnFJQVlRRENBTklRQWdCaUVFUVFBaEFnc2dCMEVDZGlJUUJFQkJ3QUFnQm1zaEVpQUVRUUYwSVFVZ0JFRUNkQ0FHYXlFT1FRQWdCR3NpRDBFQmRDRVRJQUFnQkNBSmJDQUNhbW9nQkdvaUFDQUVRUVZzYWlFQ0lBQWdCQ0FJUVFKcWJHb2hCd05BSUFZaEF5QUdCRUFEUUNBQklBQWdCV290QUFBaUNDQUNJQVZxTFFBQUlBSWdCR290QUFBaUNpQUNJQk5xTFFBQUlnbHFJZ3RySUF0QkFuUnJhaUFDTFFBQUlnd2dBaUFQYWkwQUFDSUxha0VVYkdwQkVHcEJCWFZCc0M1cUxRQUFJQVVnQjJvdEFBQnFRUUZxUVFGMk9nQXdJQUVnQUNBRWFpMEFBQ0lSSUFvZ0NTQUxha0VVYkdvZ0NDQU1haUlLYXlBS1FRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQUlBUWdCMm90QUFCcVFRRnFRUUYyT2dBZ0lBRWdBQzBBQUNJS0lBd2dDQ0FKYWtFVWJHb2dDeUFSYWlJTWF5QU1RUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFJQWN0QUFCcVFRRnFRUUYyT2dBUUlBRWdBQ0FQYWkwQUFDQUxJQWdnRVdwQkZHeHFJQWtnQ21vaUNHc2dDRUVDZEd0cVFSQnFRUVYxUWJBdWFpMEFBQ0FISUE5cUxRQUFha0VCYWtFQmRqb0FBQ0FIUVFGcUlRY2dBRUVCYWlFQUlBRkJBV29oQVNBQ1FRRnFJUUlnQTBGL2FpSUREUUFMQ3lBQklCSnFJUUVnQnlBT2FpRUhJQUlnRG1vaEFpQUFJQTVxSVFBZ0VFRi9haUlRRFFBTEN5QU5RY0FEYWlRQUM0OEhBUXgvSUFFb0FnZ2hDeUFCS0FJRUlRWUNRQUpBQWtBZ0FrRUZTdzBBSUFKQkFXc09CQUFBQUFBQkN5QUFLQUs0R2cwQURBRUxJQUJCeEFscUlRUURRQ0FFSUFNUUZDRUhJQU5CRGtzTkFTQURRUUZxSVFNZ0IwVU5BQXNMQWtBQ1FBSkFBa0FnQUNnQ21Ba2lDQVJBSUFBb0Fyd0pJUXBCQUNFRFFRQWhCQU5BSUFvZ0EwSFlBV3hxS0FMRUFVVUVRRUVBSUFSQkFXb2lCQ0FFSUFaR0lnVWJJUVFnQlNBSmFpRUpJQU5CQVdvaUF5QUlTUTBCQ3dzZ0F5QUlSdzBCQ3dKQUFrQWdBa0YrYWlJQ1FRVkxEUUFDUUNBQ1FRRnJEZ1FCQVFFQkFBc2dCMFVOQVNBQUtBSzRHa1VOQVF3REN5QUhEUUlMSUFFb0FnQkJnQUVnQmlBTGJFR0FBMndRQnhvTUFnc2dBQ2dDdkFrZ0JpQUpiRUhZQVd4cUlRZ2dCQVJBSUFRaEF3TkFJQWdnQTBGL2FpSURRZGdCYkdvaUNpQUJJQWtnQXlBQ0lBY1FGaUFLUVFFMkFzUUJJQUFnQUNnQ3RBbEJBV28yQXJRSklBTU5BQXNMSUFSQkFXb2lBeUFHU1FSQUEwQWdDQ0FEUWRnQmJHb2lCQ2dDeEFGRkJFQWdCQ0FCSUFrZ0F5QUNJQWNRRmlBRVFRRTJBc1FCSUFBZ0FDZ0N0QWxCQVdvMkFyUUpDeUFEUVFGcUlnTWdCa2NOQUFzTEFrQWdDVVVOQUNBR1JRMEFRUUFoQlNBSlFYOXFJZ3dnQm13aERTQU1SUVJBQTBBZ0FDZ0N2QWtnRFVIWUFXeHFJQVZCMkFGc2FpSUVJQUZCQUNBRklBSWdCeEFXSUFSQkFUWUN4QUVnQUNBQUtBSzBDVUVCYWpZQ3RBa2dCVUVCYWlJRklBWkhEUUFNQWdBTEFBc2dDVUYrYWlFSVFRQWdCbXRCMkFGc0lRNERRQ0FBS0FLOENTQU5RZGdCYkdvZ0JVSFlBV3hxSWdNZ0FTQU1JQVVnQWlBSEVCWWdBMEVCTmdMRUFTQUFJQUFvQXJRSlFRRnFOZ0swQ1NBSUlRUURRQ0FESUE1cUlnTWdBU0FFSWdvZ0JTQUNJQWNRRmlBRFFRRTJBc1FCSUFBZ0FDZ0N0QWxCQVdvMkFyUUpJQVJCZjJvaEJDQUtEUUFMSUFWQkFXb2lCU0FHUncwQUN3c2dDVUVCYWlJRklBdFBEUUlnQmtVTkFnTkFJQUFvQXJ3SklBVWdCbXhCMkFGc2FpRUlRUUFoQXdOQUlBZ2dBMEhZQVd4cUlnUW9Bc1FCUlFSQUlBUWdBU0FGSUFNZ0FpQUhFQllnQkVFQk5nTEVBU0FBSUFBb0FyUUpRUUZxTmdLMENRc2dBMEVCYWlJRElBWkhEUUFMSUFWQkFXb2lCU0FMUncwQUN3d0NDeUFCS0FJQUlBY2dCaUFMYkVHQUEyd1FGUm9MSUFBZ0FDZ0NtQWtpQVRZQ3RBa2dBVVVOQUNBQUtBSzhDU0VBUVFBaEF3TkFJQUFnQTBIWUFXeHFRUUUyQWdnZ0EwRUJhaUlESUFGSERRQUxDd3MyQVFKL0lBQW9BaWdpQWdSQUEwQWdBQ2dDQkNBQlFRSjBhaUFBS0FJQUlBRkJLR3hxTmdJQUlBRkJBV29pQVNBQ1J3MEFDd3NMOXdRQ0RIOEJma0VISVFVakFFRWdheUlJSVF3RFFDQUZJQUZKQkVBZ0FFRUFJQVZyUVNoc2FpRUtJQVVoQmdOQUlBQWdCa0VvYkdvaUFpZ0NDQ0VKSUFJcEFnQWhEaUFJSUFJcEFndzNBeGdnQWlnQ0dDRU5JQUlvQWhRaEN5QU1JQUlvQWlRMkFoQWdDQ0FDS1FJY053TUlBa0FnQmlJRElBVkpEUUFDUUNBTFJRUkFBMEFnQ2lBRFFTaHNJZ0pxSWdRb0FoUU5BaUFOUlEwQ0lBUW9BaGdOQWlBQUlBSnFJZ1FnQUNBRElBVnJJZ05CS0d4cUlnSXBBZ0EzQWdBZ0JDQUNLUUlnTndJZ0lBUWdBaWtDR0RjQ0dDQUVJQUlwQWhBM0FoQWdCQ0FDS1FJSU53SUlJQU1nQlU4TkFBd0RBQXNBQ3lBTFFYOXFRUUZOQkVBRFFBSi9Ba0FnQ2lBRFFTaHNJZ0pxSWdRb0FoUWlCMFVOQUNBSFFYOXFRUUZMRFFBZ0JDZ0NDQ0lISUFsS0RRUWdBQ0FDYWlJRUlBY2dDVWdOQVJvZ0JDRUNEQVVMSUFBZ0Ftb0xJZ1FnQUNBRElBVnJJZ05CS0d4cUlnSXBBZ0EzQWdBZ0JDQUNLUUlnTndJZ0lBUWdBaWtDR0RjQ0dDQUVJQUlwQWhBM0FoQWdCQ0FDS1FJSU53SUlJQU1nQlU4TkFBd0RBQXNBQ3dOQUlBb2dBMEVvYkNJQ2FpSUVLQUlVSWdjRVFDQUhRWDlxUVFKSkRRSWdCQ2dDQ0NBSlRBMENDeUFBSUFKcUlnUWdBQ0FESUFWcklnTkJLR3hxSWdJcEFnQTNBZ0FnQkNBQ0tRSWdOd0lnSUFRZ0Fpa0NHRGNDR0NBRUlBSXBBaEEzQWhBZ0JDQUNLUUlJTndJSUlBTWdCVThOQUFzTUFRc2dBQ0FEUVNoc2FpRUNDeUFDSUE0M0FnQWdBQ0FEUVNoc2FpSURJQWsyQWdnZ0NDa0RHQ0VPSUFNZ0RUWUNHQ0FESUFzMkFoUWdBeUFPTndJTUlBTWdDQ2tEQ0RjQ0hDQURJQXdvQWhBMkFpUWdCa0VCYWlJR0lBRkhEUUFMQ3lBRlFRRjJJZ1VOQUFzTHJRVUJBWDhDUUNBQUtBSUFJZ0VvQWhSRkRRQWdBVUVBTmdJVUlBRW9BaGdOQUNBQUlBQW9BaXhCZjJvMkFpd0xBa0FnQVNnQ1BFVU5BQ0FCUVFBMkFqd2dBVUZBYXlnQ0FBMEFJQUFnQUNnQ0xFRi9hallDTEFzQ1FDQUJLQUprUlEwQUlBRkJBRFlDWkNBQktBSm9EUUFnQUNBQUtBSXNRWDlxTmdJc0N3SkFJQUVvQW93QlJRMEFJQUZCQURZQ2pBRWdBU2dDa0FFTkFDQUFJQUFvQWl4QmYybzJBaXdMQWtBZ0FTZ0N0QUZGRFFBZ0FVRUFOZ0swQVNBQktBSzRBUTBBSUFBZ0FDZ0NMRUYvYWpZQ0xBc0NRQ0FCS0FMY0FVVU5BQ0FCUVFBMkF0d0JJQUVvQXVBQkRRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3dKQUlBRW9Bb1FDUlEwQUlBRkJBRFlDaEFJZ0FTZ0NpQUlOQUNBQUlBQW9BaXhCZjJvMkFpd0xBa0FnQVNnQ3JBSkZEUUFnQVVFQU5nS3NBaUFCS0FLd0FnMEFJQUFnQUNnQ0xFRi9hallDTEFzQ1FDQUJLQUxVQWtVTkFDQUJRUUEyQXRRQ0lBRW9BdGdDRFFBZ0FDQUFLQUlzUVg5cU5nSXNDd0pBSUFFb0F2d0NSUTBBSUFGQkFEWUMvQUlnQVNnQ2dBTU5BQ0FBSUFBb0FpeEJmMm8yQWl3TEFrQWdBU2dDcEFORkRRQWdBVUVBTmdLa0F5QUJLQUtvQXcwQUlBQWdBQ2dDTEVGL2FqWUNMQXNDUUNBQktBTE1BMFVOQUNBQlFRQTJBc3dESUFFb0F0QUREUUFnQUNBQUtBSXNRWDlxTmdJc0N3SkFJQUVvQXZRRFJRMEFJQUZCQURZQzlBTWdBU2dDK0FNTkFDQUFJQUFvQWl4QmYybzJBaXdMQWtBZ0FTZ0NuQVJGRFFBZ0FVRUFOZ0tjQkNBQktBS2dCQTBBSUFBZ0FDZ0NMRUYvYWpZQ0xBc0NRQ0FCS0FMRUJFVU5BQ0FCUVFBMkFzUUVJQUVvQXNnRURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3dKQUlBRW9BdXdFUlEwQUlBRkJBRFlDN0FRZ0FTZ0M4QVFOQUNBQUlBQW9BaXhCZjJvMkFpd0xBMEFnQUJCZVJRMEFDeUFBUVFBMkFqQWdBRUwvL3dNM0FpUUwzUTRCQ1g4Z0FpZ0NBQ0FBS0FJSUlnSW9BZ0JHQkVBZ0FFRUFOZ0kwSUFBb0FqZ2lDMFVoRFFKQUlBRkZCRUFnQWlBRE5nSU1JQUpCQURZQ0ZDQUNJQTAyQWhnZ0FpQUVOZ0lRSUFJZ0F6WUNDQ0FMRFFFZ0FDQUFLQUlzUVFGcU5nSXNEQUVMSUFVRVFDQUFRZ0EzQWhBZ0FCQW9Ba0FnQVNnQ0FFVUVRQ0FBS0FJNFJRMEJDeUFBUWdBM0FoQUxJQUFvQWdnaUFrRURRUUlnQVNnQ0JDSUJHellDRkNBQVFRQkIvLzhESUFFYk5nSWtJQUlnRFRZQ0dDQUNRUUEyQWhBZ0FrSUFOd0lJSUFCQ2dZQ0FnQkEzQWlnTUFRc0NRQUpBQWtBZ0FTZ0NDQVJBUVFBaEN3TkFJQUVnQzBFVWJHb2lDQ2dDRENJQ1FRWkxEUUlDUUFKQUFrQUNRQUpBQWtBQ1FDQUNRUUZyRGdZQUFRSURCQVVKQ3lBQUtBSVlJZ2xGRFFnZ0F5QUlLQUlRYXlFTUlBQW9BZ0FoQ2tFQUlRZ0RRQUpBSUFvZ0NFRW9iR29pQWlnQ0ZFRi9ha0VCVFFSQUlBSW9BZ2dnREVZTkFRc2dDRUVCYWlJSUlBbEhEUUVNQ2dzTElBaEJBRWdOQ0NBQ1FRQTJBaFFnQUNBQUtBSW9RWDlxTmdJb0lBSW9BaGdOQlNBQUlBQW9BaXhCZjJvMkFpd2dDMEVCYWlFTERBWUxJQUFvQWhnaUNVVU5CeUFJS0FJVUlRd2dBQ2dDQUNFS1FRQWhDQU5BQWtBZ0NpQUlRU2hzYWlJQ0tBSVVRUU5HQkVBZ0FpZ0NDQ0FNUmcwQkN5QUlRUUZxSWdnZ0NVY05BUXdKQ3dzZ0NFRUFTQTBISUFKQkFEWUNGQ0FBSUFBb0FpaEJmMm8yQWlnZ0FpZ0NHQTBFSUFBZ0FDZ0NMRUYvYWpZQ0xDQUxRUUZxSVFzTUJRc2dBQ2dDSkNJQ1FmLy9BMFlOQmlBQ0lBZ29BaGdpREVrTkJpQUFLQUlZSWdsRkRRWWdDQ2dDRUNFT0lBQW9BZ0FoQ2tFQUlRSURRQUpBQWtBZ0NpQUNRU2hzYWlJSUtBSVVRUU5IRFFBZ0NDZ0NDQ0FNUncwQUlBaEJBRFlDRkNBQUlBQW9BaWhCZjJvMkFpZ2dDQ2dDR0EwQklBQWdBQ2dDTEVGL2FqWUNMQXdCQ3lBQ1FRRnFJZ0lnQ1VjTkFRc0xJQWxCQVNBSlFRRkxHeUVKSUFNZ0Rtc2hEa0VBSVFnRFFBSkFJQW9nQ0VFb2JHb2lBaWdDRkNJUFFYOXFRUUZOQkVBZ0FpZ0NDQ0FPUmcwQkN5QUlRUUZxSWdnZ0NVY05BUXdJQ3dzZ0NFRUFTQTBHSUE5QkFra05CaUFDUVFNMkFoUWdBaUFNTmdJSUlBdEJBV29oQ3d3RUN5QUFJQWdvQWh3aUNUWUNKQ0FBS0FJWUlneEZEUUlnQUNnQ0FDRUtRUUFoQWlBSlFmLy9BMFlFUUFOQUFrQWdDaUFDUVNoc2FpSUlLQUlVUVFOSERRQWdDRUVBTmdJVUlBQWdBQ2dDS0VGL2FqWUNLQ0FJS0FJWURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3lBQ1FRRnFJZ0lnREVjTkFBd0VBQXNBQ3dOQUFrQWdDaUFDUVNoc2FpSUlLQUlVUVFOSERRQWdDQ2dDQ0NBSlRRMEFJQWhCQURZQ0ZDQUFJQUFvQWloQmYybzJBaWdnQ0NnQ0dBMEFJQUFnQUNnQ0xFRi9hallDTEFzZ0FrRUJhaUlDSUF4SERRQUxEQUlMSUFBUUtDQUFRUUUyQWpSQkFDRURJQXRCQVdvaEN3d0NDeUFBS0FJa0lnSkIvLzhEUmcwRElBSWdDQ2dDR0NJTVNRMERJQUFvQWhnaUNrVU5BeUFBS0FJQUlRaEJBQ0VDQWtBRFFBSkFJQWdnQWtFb2JHb2lDU2dDRkVFRFJ3MEFJQWtvQWdnZ0RFY05BQ0FKUVFBMkFoUWdBQ0FBS0FJb1FYOXFJZ2cyQWlnZ0NTZ0NHQTBDSUFBZ0FDZ0NMRUYvYWpZQ0xBd0NDeUFDUVFGcUlnSWdDa2NOQUFzZ0FDZ0NLQ0VJQ3lBSUlBcFBEUU1nQUNnQ0NDSUNRUU0yQWhRZ0FpQUVOZ0lRSUFJZ0REWUNDQ0FDSUFNMkFnd2dBaUFBS0FJNFJUWUNHRUVCSVJBZ0FDQUlRUUZxTmdJb0lBQWdBQ2dDTEVFQmFqWUNMQXNnQzBFQmFpRUxEQUFBQ3dBTFFRQWhBaUFBS0FJb0lna2dBQ2dDR0NJTFNRMEJJQWxGQkVCQkFDRUpEQUlMSUFBb0FnQWhERUYvSVFFRFFDQU1JQUpCS0d4cUlnb29BaFJCZjJwQkFVMEVRQ0FLS0FJSUlnb2dDQ0FCUVg5R0lBb2dDRWh5SWdvYklRZ2dBaUFCSUFvYklRRUxJQUpCQVdvaUFpQUpSdzBBQ3lBQlFRQklEUUVnRENBQlFTaHNhaUlCUVFBMkFoUWdBQ0FKUVg5cUlnazJBaWdnQVNnQ0dBMEJJQUFnQUNnQ0xFRi9hallDTEF3QkN5QVFEUUVnQUNnQ0dDRUxJQUFvQWlnaENRc2dDU0FMVHcwQklBQW9BZ2dpQVNBTk5nSVlJQUZCQWpZQ0ZDQUJJQVEyQWhBZ0FTQUROZ0lJSUFFZ0F6WUNEQ0FBSUFsQkFXbzJBaWdnQUNBQUtBSXNRUUZxTmdJc0N3c2dBQ2dDQ0NJQklBYzJBaUFnQVNBR05nSWNJQUVnQlRZQ0pBSkFJQUFvQWpoRkJFQWdBQ2dDTENJSklBQW9BaHdpQTAwTkFTQUFLQUlBSVFRRFFFSC8vLy8vQnlFRlFRQWhCa0VBSVFJRFFDQUVJQUpCS0d4cUlnRW9BaGdFUUNBQklBWWdBU2dDRUNJQklBVklJZ2NiSVFZZ0FTQUZJQWNiSVFVTElBSkJBV29pQWlBRFRRMEFDd0pBSUFaRkRRQWdBQ2dDRENBQUtBSVFJZ0pCQkhScUlnRWdCaWdDQURZQ0FDQUJJQVlvQWlRMkFnd2dBU0FHS0FJY05nSUVJQUVnQmlnQ0lEWUNDQ0FBSUFKQkFXbzJBaEFnQmtFQU5nSVlJQVlvQWhRTkFDQUFJQWxCZjJvaUNUWUNMQXNnQ1NBRFN3MEFDd3dCQ3lBQktBSUFJUUlnQUNnQ0RDQUFLQUlRSWdOQkJIUnFJZ0VnQlRZQ0RDQUJJQUkyQWdBZ0FTQUhOZ0lJSUFFZ0JqWUNCQ0FBSUFOQkFXbzJBaEFnQUNnQ0hDRURDeUFBS0FJQUlBTkJBV29RSndzTDFBc0NBbjhCZmlNQVFaQUJheUlFSkFBZ0JFRUFOZ0lNQWtBQ1FBSkFJQUFvQXBBYVJRMEFJQUFvQXBRYUlBRkhEUUFnQkNBQVFhUWFhaWtDQURjREdDQUFLUUtjR2lFR0lBUkJBRFlDR0NBRUlBWTNBeEFnQkVFQU5nSWdJQVFnQmo0Q0ZDQURJQUFvQXBnYU5nSUFEQUVMUVFNaEJTQUJJQUlnQkVFUWFpQURFR01OQVNBQUlBUXBBeEEzQXB3YUlBQkJyQnBxSUFRb0FpQTJBZ0FnQUVHa0dtb2dCQ2tER0RjQ0FDQURLQUlBSVFJZ0FDQUJOZ0tVR2lBQUlBSTJBcGdhQzBFQUlRVWdBRUVBTmdLUUdpQUVRUkJxSUFSQmlBRnFFRThFUUVFRElRVU1BUXNnQkNnQ2lBRkJmMnBCQzBzTkFDQUVRUkJxSUFSQmlBRnFJQUFnQkVFTWFoQXlJZ0VFUUVFRUlRVWdBVUh3L3dOR0RRRkJBeUVGREFFTEFrQWdCQ2dDREFSQUFrQWdBQ2dDb0FsRkRRQWdBQ2dDRUVVTkFFRURJUVVnQUNnQ3RCb05Bd0pBSUFBb0FxUUpSUVJBSUFCQnhBbHFJZ0lpQVNBQktBSUFJQUVvQWh4QktHeHFJZ0UyQWdnZ0FDQUJLQUlBTmdLNENpQUNFQ1lnQUNBQVFiZ0tha0VBRUNVTUFRc2dBQ0FBUWJnS2FpQUFRZHdLYWlnQ0FCQWxDeUFEUVFBMkFnQWdBRUVBTmdLY0NTQUFRUUUyQXBBYURBSUxJQUJCQURZQ25Ba2dBRUVBTmdLa0NRc2dCQ2dDaUFGQmYyb2lBVUVIU3cwQkFrQUNRQUpBSUFGQkFXc09Cd1FFQkFJRUFBRUNDeUFFUVJCcUlBUkJLR29RUXdSQUlBUW9BbEFRQkNBRVFRQTJBbEFnQkNnQ2ZCQUVJQVJCQURZQ2ZFRURJUVVNQkFzZ0FDQUVRU2hxRURjTUF3c2dCRUVRYWlBRVFTaHFFRXdFUUNBRUtBSThFQVFnQkVFQU5nSThJQVFvQWtBUUJDQUVRUUEyQWtBZ0JDZ0NSQkFFSUFSQkFEWUNSQ0FFS0FKVUVBUWdCRUVBTmdKVVFRTWhCUXdEQ3lBQUlBUkJLR29RTmd3Q0N5QUFLQUtjQ1EwQklBQkJBVFlDb0FrQ1FDQUFLQUtrQ1EwQUlBQkNBRGNDdEFrZ0JFRVFhaUFFUVNocUVDQWFJQUFvQWdnaEFTQUFJQVFvQWlnZ0JDZ0NpQUZCQlVZUU5TSUNCRUFnQUVLQWdvQ0FnQVEzQWdRZ0FFRUFOZ0swR2lBQVFnQTNBZ3hCQlVFRUlBSkIvLzhEUmhzaEJRd0RDeUFCSUFBb0FnaEdEUUFnQUNnQ0VDRUJJQVJCQVRZQ0NDQUFLQUlBSWdKQkgwMEVRQ0FBSUFKQkFuUnFLQUlVSVFVTElBTkJBRFlDQUNBQVFRRTJBcEFhQWtBQ1FBSkFJQVFvQW9nQlFRVkhEUUFnQkVFSWFpQUVRUkJxSUFFZ0FDZ0NEQkE0SUFRb0FnaHlEUUFnQlVVTkFDQUFRZndKYWlnQ0FBMEFJQVVvQWpRZ0FTZ0NORWNOQUNBRktBSTRJQUVvQWpoSERRQWdCU2dDV0NBQktBSllSZzBCQ3lBQVFZQUtha0VBTmdJQURBRUxJQUJCeEFscUVGa0xJQUFnQUNnQ0NEWUNBRUVDSVFVTUFnc2dBQ2dDdEJvRVFFRURJUVVNQWdzZ0JFRVFhaUFBUWJRU2FpSUNJQUFvQWhBZ0FDZ0NEQ0FFUVlnQmFoQStCRUJCQXlFRkRBSUxJQUFvQXFRSlJRUkFBa0FnQkNnQ2lBRkJCVVlOQUNBQVFjUUphaUFBUWNBU2FpZ0NBQ0FFS0FLTUFVRUFSeUFBS0FJUUtBSXdFRnBGRFFCQkF5RUZEQU1MSUFCQnhBbHFJZ0VnQVNnQ0FDQUJLQUljUVNoc2FpSUJOZ0lJSUFBZ0FTZ0NBRFlDdUFvTElBQkIyQXBxSUFKQjNBY1FGU0VCSUFCQkFUWUNwQWtnQUNBRUtRT0lBVGNDMEFvZ0FDZ0NsQWtnQUNnQ0RDQUFRWmdMYWlnQ0FDQUFLQUlRSWdJb0FqUWdBaWdDT0JBL0lBQkJ4QWxxSWdJUUppQUNJQUJCbkF0cUlBQkI1QXBxS0FJQUlBQkJoQXRxS0FJQUVGOEVRRUVESVFVTUFnc2dCRUVRYWlBQUlBQkJ1QXBxSUFFUVFRUkFJQUFnQUNnQzJBb1FRRUVESVFVTUFnc2dBQkF6UlEwQklBQkJBVFlDbkFrTElBQkJ1QXBxSWdFZ0FDZ0N2QWtRU1NBQUVEUWdBRUdFQ21vZ0FDZ0NFQ0FBUWRnS2FpQUFRZEFLYWhCTklRSUNRQ0FBS0FLa0NVVU5BQ0FBUWNRSmFpRURJQUJCMUFwcUtBSUFCRUFnQXlBQVFld01haUFCSUFCQjVBcHFLQUlBSUFJZ0FDZ0MwQXBCQlVZZ0FDZ0N1QWtnQUNnQ3RBa1FLUXdCQ3lBRFFRQWdBU0FBUWVRS2FpZ0NBQ0FDSUFBb0F0QUtRUVZHSUFBb0FyZ0pJQUFvQXJRSkVDa0xJQUJDQURjQ29BbEJBU0VGQ3lBRVFaQUJhaVFBSUFVTHFBd0JDMzhDUUNBQlFRUlBCRUJCQUNBRGF5SU5RUUYwSVFvQ1FDQUFJQU5ySWdVdEFBQWlCaUFBTFFBQUlnaHJJZ0VnQVVFZmRTSUJhaUFCY3lBQ0tBSUVJZ0ZQRFFBZ0FDQUthaTBBQUNJSElBWnJJZ1FnQkVFZmRTSUVhaUFFY3lBQ0tBSUlJZ3hQRFFBZ0FDQURhaTBBQUNJRUlBaHJJZ3NnQzBFZmRTSUxhaUFMY3lBTVR3MEFJQVVnQkNBR2FpQUhRUUYwYWtFQ2FrRUNkam9BQUNBQUlBZ2dCRUVCZEdvZ0IycEJBbXBCQW5ZNkFBQWdBaWdDQkNFQkN3SkFJQUJCQVdvaUJpQU5haUlNTFFBQUlnZ2dBQzBBQVNJSGF5SUVJQVJCSDNVaUJHb2dCSE1nQVU4TkFDQUdJQXBxTFFBQUlnUWdDR3NpQlNBRlFSOTFJZ1ZxSUFWeklBSW9BZ2dpQzA4TkFDQURJQVpxTFFBQUlnVWdCMnNpQ1NBSlFSOTFJZ2xxSUFseklBdFBEUUFnRENBRklBaHFJQVJCQVhScVFRSnFRUUoyT2dBQUlBWWdCeUFGUVFGMGFpQUVha0VDYWtFQ2Rqb0FBQ0FDS0FJRUlRRUxBa0FnQUVFQ2FpSUdJQTFxSWd3dEFBQWlDQ0FBTFFBQ0lnZHJJZ1FnQkVFZmRTSUVhaUFFY3lBQlR3MEFJQVlnQ21vdEFBQWlCQ0FJYXlJRklBVkJIM1VpQldvZ0JYTWdBaWdDQ0NJTFR3MEFJQU1nQm1vdEFBQWlCU0FIYXlJSklBbEJIM1VpQ1dvZ0NYTWdDMDhOQUNBTUlBVWdDR29nQkVFQmRHcEJBbXBCQW5ZNkFBQWdCaUFISUFWQkFYUnFJQVJxUVFKcVFRSjJPZ0FBSUFJb0FnUWhBUXNDUUNBQVFRTnFJZ1lnRFdvaURDMEFBQ0lJSUFBdEFBTWlCMnNpQkNBRVFSOTFJZ1JxSUFSeklBRlBEUUFnQmlBS2FpMEFBQ0lFSUFocklnVWdCVUVmZFNJRmFpQUZjeUFDS0FJSUlndFBEUUFnQXlBR2FpMEFBQ0lGSUFkcklna2dDVUVmZFNJSmFpQUpjeUFMVHcwQUlBd2dCU0FJYWlBRVFRRjBha0VDYWtFQ2Rqb0FBQ0FHSUFjZ0JVRUJkR29nQkdwQkFtcEJBblk2QUFBZ0FpZ0NCQ0VCQ3dKQUlBQkJCR29pQmlBTmFpSU1MUUFBSWdnZ0FDMEFCQ0lIYXlJRUlBUkJIM1VpQkdvZ0JITWdBVThOQUNBR0lBcHFMUUFBSWdRZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6SUFJb0FnZ2lDMDhOQUNBRElBWnFMUUFBSWdVZ0Iyc2lDU0FKUVI5MUlnbHFJQWx6SUF0UERRQWdEQ0FGSUFocUlBUkJBWFJxUVFKcVFRSjJPZ0FBSUFZZ0J5QUZRUUYwYWlBRWFrRUNha0VDZGpvQUFDQUNLQUlFSVFFTEFrQWdBRUVGYWlJR0lBMXFJZ3d0QUFBaUNDQUFMUUFGSWdkcklnUWdCRUVmZFNJRWFpQUVjeUFCVHcwQUlBWWdDbW90QUFBaUJDQUlheUlGSUFWQkgzVWlCV29nQlhNZ0FpZ0NDQ0lMVHcwQUlBTWdCbW90QUFBaUJTQUhheUlKSUFsQkgzVWlDV29nQ1hNZ0MwOE5BQ0FNSUFVZ0NHb2dCRUVCZEdwQkFtcEJBblk2QUFBZ0JpQUhJQVZCQVhScUlBUnFRUUpxUVFKMk9nQUFJQUlvQWdRaEFRc0NRQ0FBUVFacUlnWWdEV29pREMwQUFDSUlJQUF0QUFZaUIyc2lCQ0FFUVI5MUlnUnFJQVJ6SUFGUERRQWdCaUFLYWkwQUFDSUVJQWhySWdVZ0JVRWZkU0lGYWlBRmN5QUNLQUlJSWd0UERRQWdBeUFHYWkwQUFDSUZJQWRySWdrZ0NVRWZkU0lKYWlBSmN5QUxUdzBBSUF3Z0JTQUlhaUFFUVFGMGFrRUNha0VDZGpvQUFDQUdJQWNnQlVFQmRHb2dCR3BCQW1wQkFuWTZBQUFnQWlnQ0JDRUJDeUFOSUFCQkIyb2lEV29pQ0MwQUFDSUdJQUF0QUFjaUFHc2lCeUFIUVI5MUlnZHFJQWR6SUFGUERRRWdDaUFOYWkwQUFDSUJJQVpySWdvZ0NrRWZkU0lLYWlBS2N5QUNLQUlJSWdwUERRRWdBeUFOYWkwQUFDSUNJQUJySWdNZ0EwRWZkU0lEYWlBRGN5QUtUdzBCSUFnZ0FpQUdhaUFCUVFGMGFrRUNha0VDZGpvQUFDQU5JQUFnQWtFQmRHb2dBV3BCQW1wQkFuWTZBQUFQQzBFQUlBTnJJZ2RCQVhRaEJDQUJJQUlvQWdCcVFYOXFMUUFBSWdGQkFXb2hCaUFCUVg5eklRaEJDQ0VCQTBBQ1FDQUFJQWRxSWdVdEFBQWlDaUFBTFFBQUlnMXJJZ3dnREVFZmRTSU1haUFNY3lBQ0tBSUVUdzBBSUFBZ0JHb3RBQUFpRENBS2F5SUxJQXRCSDNVaUMyb2dDM01nQWlnQ0NDSUxUdzBBSUFBZ0Eyb3RBQUFpQ1NBTmF5SU9JQTVCSDNVaURtb2dEbk1nQzA4TkFDQUZJQW9nQ0NBR0lBMGdDbXRCQW5RZ0NXc2dER3BCQkdwQkEzVWlDaUFLSUFaS0d5QUtJQWhJR3lJS2FrR3dMbW90QUFBNkFBQWdBQ0FOSUFwclFiQXVhaTBBQURvQUFBc2dBRUVCYWlFQUlBRkJmMm9pQVEwQUN3c0w2Z2dCQW44Z0FVRUFRYmdIRUFjaEFrRUJJUUVDUUFKQUlBQkJBUkFESWdOQmYwWU5BQ0FDSUFOQkFVWTJBZ0FDUUNBRFFRRkhEUUFnQUVFSUVBTWlBMEYvUmcwQklBSWdBellDQkNBRFFmOEJSdzBBSUFCQkVCQURJZ05CZjBZTkFTQUNJQU0yQWdnZ0FFRVFFQU1pQTBGL1JnMEJJQUlnQXpZQ0RBc2dBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDRUNBRFFRRkdCRUFnQUVFQkVBTWlBMEYvUmcwQklBSWdBMEVCUmpZQ0ZBc2dBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDR0FKQUFrQWdBMEVCUmdSQUlBQkJBeEFESWdOQmYwWU5BeUFDSUFNMkFod2dBRUVCRUFNaUEwRi9SZzBESUFJZ0EwRUJSallDSUNBQVFRRVFBeUlEUVg5R0RRTWdBaUFEUVFGR05nSWtJQU5CQVVjTkFTQUFRUWdRQXlJRFFYOUdEUU1nQWlBRE5nSW9JQUJCQ0JBRElnTkJmMFlOQXlBQ0lBTTJBaXdnQUVFSUVBTWlBMEYvUncwQ0RBTUxJQUpCQlRZQ0hBc2dBa0tDZ0lDQUlEY0NLRUVDSVFNTElBSWdBellDTUNBQVFRRVFBeUlEUVg5R0RRQWdBaUFEUVFGR05nSTBBa0FnQTBFQlJ3MEFJQUFnQWtFNGFoQUNJZ0VOQVNBQ0tBSTRRUVZMRFFJZ0FDQUNRVHhxRUFJaUFRMEJJQUlvQWp4QkJVME5BQXdDQzBFQklRRWdBRUVCRUFNaUEwRi9SZzBBSUFJZ0EwRUJSallDUUNBRFFRRkdCRUFnQUJBUElRRWdBRUVnRUFzaEF5QUJSUTBDSUFOQmYwWU5BaUFDSUFFMkFrUWdBQkFQSVFFZ0FFRWdFQXNoQXlBQlJRMENJQU5CZjBZTkFpQUNJQUUyQWtoQkFTRUJJQUJCQVJBRElnTkJmMFlOQVNBQ0lBTkJBVVkyQWt3TElBQkJBUkFESWdOQmYwWU5BQ0FDSUFOQkFVWTJBbEFDUUNBRFFRRkdCRUFnQUNBQ1FkUUFhaEFjSWdGRkRRRU1BZ3NnQWtFQk5nSlVJQUpDbUlDQWdJQUROd0xvQXlBQ1FwaUFnSUNBQXpjQzRBTWdBa0dCa0txSkFUWUM0QUVnQWtHQmtLcUpBVFlDWUF0QkFTRUJJQUJCQVJBRElnTkJmMFlOQUNBQ0lBTkJBVVkyQXZBREFrQWdBMEVCUmdSQUlBQWdBa0gwQTJvUUhDSUJSUTBCREFJTElBSkJBVFlDOUFNZ0FrS1lnSUNBZ0FNM0FvZ0hJQUpDbUlDQWdJQUROd0tBQnlBQ1FZRzR1UElBTmdLQUJTQUNRWUc0dVBJQU5nS0FCQXNDUUNBQ0tBSlFSUVJBSUFJb0F2QURSUTBCQzBFQklRRWdBRUVCRUFNaUEwRi9SZzBCSUFJZ0EwRUJSallDa0FjTFFRRWhBU0FBUVFFUUF5SURRWDlHRFFBZ0FpQURRUUZHTmdLVUJ5QUFRUUVRQXlJRFFYOUdEUUFnQWlBRFFRRkdOZ0tZQndKQUlBTkJBVVlFUUNBQVFRRVFBeUlEUVg5R0RRSWdBaUFEUVFGR05nS2NCeUFBSUFKQm9BZHFFQUlpQVEwQ0lBSW9BcUFIUVJCTERRTWdBQ0FDUWFRSGFoQUNJZ0VOQWlBQ0tBS2tCMEVRU3cwRElBQWdBa0dvQjJvUUFpSUJEUUlnQWlnQ3FBZEJFRXNOQXlBQUlBSkJyQWRxRUFJaUFRMENRUUVoQVNBQ0tBS3NCMEVRU3cwQ0lBQWdBa0d3QjJvUUFpSUJEUUlnQUNBQ1FiUUhhaEFDSWdGRkRRRU1BZ3NnQWtFUU5nSzBCeUFDUXBDQWdJQ0FBamNDckFjZ0FrS0JnSUNBZ0FJM0FxUUhJQUpDZ1lDQWdDQTNBcHdIQzBFQUlRRUxJQUVQQzBFQkMwMEJBbjhqQUVFUWF5SURKQUJCQVNFRUFrQWdBQ0FEUVF4cUVBSU5BQ0FES0FJTUlnQkJMMHNOQUNBQlFkQS9RWURBQUNBQ0d5QUFhaTBBQURZQ0FFRUFJUVFMSUFOQkVHb2tBQ0FFQ3o0QkFuOENRQ0FBS0FJTVFRTjBJQUFvQWhCcklnRkZCRUFNQVF0QkFTRUNJQUZCQ0VzTkFFRUJJQUZCZjJwMElBQVFEMEVnSUFGcmRrY1BDeUFDQ3pJQkFuOENRRUdBZ0lEQUFDSUJJQUJ4RFFBRFFDQUNRUUZxSVFJZ0FVRUJkaUlCUlEwQklBQWdBWEZGRFFBTEN5QUNDNG9DQVFkL0lBRkJvRDFxTFFBQVFReHNRZEE4YWlnQ0FDRUNRUUVoQXlBQlFRWlBCRUJCQUNFRElBSWdBVUdRUEdvdEFBQkJmMnAwSVFJTElBQWdBQ2dDQUNJQklBQW9BZ2dpQkdzaUJTQUFLQUlFSWdZZ0FDZ0NEQ0lIYXlJSWF5QUNiQ0FEZFRZQ0RDQUFJQVVnQ0dvZ0Ftd2dBM1UyQWdnZ0FDQUJJQVJxSWdFZ0JpQUhhaUlFYXlBQ2JDQURkVFlDQkNBQUlBRWdCR29nQW13Z0EzVTJBZ0FnQUNBQUtBSWNJZ0VnQUNnQ0ZDSUVhaUlGSUFBb0FoZ2lCaUFBS0FJUUlnZHFJZ2hxSUFKc0lBTjFOZ0lRSUFBZ0JDQUJheUlCSUFjZ0Jtc2lCR29nQW13Z0EzVTJBaGdnQUNBSUlBVnJJQUpzSUFOMU5nSVVJQUFnQkNBQmF5QUNiQ0FEZFRZQ0hBdlBDQUVVZnlBQUlBQW9BaXdpQWlBQUtBSU1JZ1pxSWdVZ0FDZ0NOQ0lFSUFBb0FpQWlFR29pQ21zaUVUWUNMQ0FBS0FJb0lRTWdBQ0FHSUFKcklnY2dFQ0FFYXlJRWF5SUdOZ0lvSUFBb0FpUWhBaUFBSUFRZ0Iyb2lCRFlDSkNBQUlBVWdDbW9pQlRZQ0lDQUFJQUFvQWh3aUNpQUFLQUlJSWdkcUlnZ2dBQ2dDTUNJTUlBQW9BaEFpQ1dvaUMyc2lFRFlDSENBQUtBSVlJUThnQUNBSElBcHJJZ2NnQ1NBTWF5SU1heUlLTmdJWUlBQW9BaFFoQ1NBQUlBY2dER29pQnpZQ0ZDQUFJQWdnQzJvaUNEWUNFQ0FBSUFrZ0FDZ0NBQ0lMYWlJU0lBOGdBQ2dDQkNJTmFpSU9heUlNTmdJTUlBQWdDeUFKYXlJSklBMGdEMnNpQzJzaUR6WUNDQ0FBSUFrZ0Myb2lDVFlDQkNBQUlBNGdFbW9pQ3pZQ0FDQUFJQUlnQUNnQ09DSU5haUlUSUFNZ0FDZ0NQQ0lPYWlJVWF5SVNOZ0k4SUFBZ0FpQU5heUlDSUFNZ0Rtc2lBMnNpRFRZQ09DQUFJQUlnQTJvaURqWUNOQ0FBSUJNZ0ZHb2lFellDTUNBQlFaQThhaTBBQUNFQ0lBRkJvRDFxTFFBQVFReHNRZEE4YWlnQ0FDRURJQUZCREU4RVFDQUFJQU1nQWtGK2FuUWlBU0FGSUF0cUlnTWdDQ0FUYWlJQ2EydzJBakFnQUNBTElBVnJJZ1VnQ0NBVGF5SUlheUFCYkRZQ0lDQUFJQVVnQ0dvZ0FXdzJBaEFnQUNBQ0lBTnFJQUZzTmdJQUlBQWdCQ0FKYWlJRElBY2dEbW9pQW1zZ0FXdzJBalFnQUNBSklBUnJJZ1FnQnlBT2F5SUZheUFCYkRZQ0pDQUFJQVFnQldvZ0FXdzJBaFFnQUNBQ0lBTnFJQUZzTmdJRUlBQWdCaUFQYWlJRElBb2dEV29pQW1zZ0FXdzJBamdnQUNBUElBWnJJZ1lnQ2lBTmF5SUVheUFCYkRZQ0tDQUFJQVFnQm1vZ0FXdzJBaGdnQUNBQ0lBTnFJQUZzTmdJSUlBQWdEQ0FSYXlJRElCQWdFbXNpQW1zZ0FXdzJBaXdnQUNBQ0lBTnFJQUZzTmdJY0lBQWdFQ0FTYWlJRElBd2dFV29pQW1vZ0FXdzJBZ3dnQUNBQ0lBTnJJQUZzTmdJOER3c2dBRUVCUVFJZ0FVRjZha0VHU1JzaUFTQUZJQXRxSWhRZ0NDQVRhaUlWYXlBRGJHcEJBaUFDYXlJQ2RUWUNNQ0FBSUFzZ0JXc2lCU0FJSUJOcklnaHJJQU5zSUFGcUlBSjFOZ0lnSUFBZ0JTQUlhaUFEYkNBQmFpQUNkVFlDRUNBQUlCUWdGV29nQTJ3Z0FXb2dBblUyQWdBZ0FDQUVJQWxxSWdVZ0J5QU9haUlJYXlBRGJDQUJhaUFDZFRZQ05DQUFJQWtnQkdzaUJDQUhJQTVySWdkcklBTnNJQUZxSUFKMU5nSWtJQUFnQkNBSGFpQURiQ0FCYWlBQ2RUWUNGQ0FBSUFVZ0NHb2dBMndnQVdvZ0FuVTJBZ1FnQUNBR0lBOXFJZ1FnQ2lBTmFpSUZheUFEYkNBQmFpQUNkVFlDT0NBQUlBOGdCbXNpQmlBS0lBMXJJZ3BySUFOc0lBRnFJQUoxTmdJb0lBQWdCaUFLYWlBRGJDQUJhaUFDZFRZQ0dDQUFJQVFnQldvZ0Eyd2dBV29nQW5VMkFnZ2dBQ0FNSUJGcklnWWdFQ0FTYXlJRWF5QURiQ0FCYWlBQ2RUWUNMQ0FBSUFRZ0Jtb2dBMndnQVdvZ0FuVTJBaHdnQUNBUUlCSnFJZ1lnRENBUmFpSVJhaUFEYkNBQmFpQUNkVFlDRENBQUlCRWdCbXNnQTJ3Z0FXb2dBblUyQWp3THZRVUJCbjhqQUVFZ2F5SUZKQUFnQTBFQU5nSUFBa0FnQVNnQ0FDSUdRUkpMRFFCQkFTQUdkQ0lHUWNEZkgzRkZCRUFnQmtFaWNVVU5BU0FDUWJRS2FpZ0NBQVJBSUFOQkFUWUNBQ0FDUVFBMkFyUUtDeUFBSUFWQkhHb1FJQ0lFRFFGQjhQOERJUVFnQWlBRktBSWNRUUowYWlnQ2xBRWlDRVVOQVNBQ0lBZ29BZ1FpQmtFQ2RHb29BaFFpQjBVTkFRSkFJQUlvQWdnaUNVRWdSZzBBSUFZZ0NVWU5BQ0FCS0FJQVFRVkhEUUlMQWtBZ0FrR1lDbW9vQWdBaUJDQUJLQUlFSWdaR0RRQWdCRUVBSUFZYkRRQWdBMEVCTmdJQUN5QUJLQUlBSVFRQ1FBSkFJQUlvQXBRS1FRVkdCRUFnQkVFRlJ3MEJEQUlMSUFSQkJVY05BUXNnQTBFQk5nSUFDMEVCSVFRZ0FDQUhLQUlNSUFWQkdHb1FQUTBCSUFVb0FoZ2lCaUFDUVp3S2FpZ0NBRWNFUUNBQ0lBWTJBcHdLSUFOQkFUWUNBQXNnQVNnQ0FFRUZSZ1JBSUFBZ0J5Z0NEQ0FGUVJScUVEd05BZ0pBSUFJb0FwUUtRUVZIQkVBZ0JTZ0NGQ0VFREFFTElBSkJvQXBxS0FJQUlnUWdCU2dDRkNJR1JnMEFJQU5CQVRZQ0FDQUdJUVFMSUFKQm9BcHFJQVEyQWdBTEFrQWdCeWdDRUNJRVFRRkxEUUFnQkVFQmF3UkFRUUVoQkNBQUlBY2dBU2dDQUNBRlFRaHFFRHNOQXlBRktBSUlJZ1FnQWtHa0Ntb29BZ0JIQkVBZ0FpQUVOZ0trQ2lBRFFRRTJBZ0FMSUFnb0FnaEZEUUVnQUNBSElBRW9BZ0FnQlVFUWFoQTZJZ1FOQXlBRktBSVFJZ0FnQWtHb0Ntb29BZ0JHRFFFZ0FpQUFOZ0tvQ2lBRFFRRTJBZ0FNQVFzZ0J5Z0NHQTBBSUFBZ0J5QUJLQUlBSUFnb0FnZ2dCVUVJYWhBNUlnUU5BaUFGS0FJSUlnQWdBa0dzQ21vb0FnQkhCRUFnQWlBQU5nS3NDaUFEUVFFMkFnQUxJQWdvQWdoRkRRQWdCU2dDRENJQUlBSkJzQXBxS0FJQVJnMEFJQUlnQURZQ3NBb2dBMEVCTmdJQUN5QUNJQUVwQWdBM0FwUUtRUUFoQkF3QkN5QURRUUUyQWdBTElBVkJJR29rQUNBRUMzOEJBMzhDUUFKQUFrQWdBRUg4Q21vb0FnQUVRQ0FBS0FLWUNTSUREUUZCQVE4TFFRRWhBU0FBUWF3SmFpZ0NBQ0FBS0FLWUNVY05BUXdDQ3lBQUtBSzhDU0VCUVFBaEFBTkFJQUlnQVNBQVFkZ0JiR29vQXNRQlFRQkhhaUVDSUFCQkFXb2lBQ0FEUncwQUMwRUJJUUVnQWlBRFJnMEJDMEVBSVFFTElBRUxTZ0VEZnlBQVFnQTNBcWdKSUFBb0FwZ0pJZ0VFUUNBQUtBSzhDU0VDUVFBaEFBTkFJQUlnQUVIWUFXeHFJZ05CQURZQ3hBRWdBMEVBTmdJRUlBQkJBV29pQUNBQlJ3MEFDd3NMZ3dZQkRIOUJBU0VHQWtBZ0FDQUJRUUowYWlnQ2xBRWlCRVVOQUNBQUlBUW9BZ1FpQ1VFQ2RHb2lDa0VVYWlnQ0FDSURSUTBBQWtBZ0JDZ0NEQ0lGUVFKSkRRQWdBeWdDTkNJSElBTW9BamhzSVFnQ1FDQUVLQUlRSWdOQkFrc05BQUpBQWtBQ1FDQURRUUZyRGdJREFBRUxJQVZCZjJvaEN5QUVLQUljSVF3Z0JDZ0NHQ0VOUVFBaEF3d0JDeUFFS0FJVUlRZEJBQ0VEQTBBZ0J5QURRUUowYWlnQ0FDQUlUUVJBSUFVZ0EwRUJhaUlEUncwQkRBUUxDMEVCRHdzRFFDQU5JQU5CQW5RaUJXb29BZ0FpRGlBRklBeHFLQUlBSWdWTERRTWdCU0FJVHcwRElBNGdCM0FnQlNBSGNFMEVRQ0FEUVFGcUlnTWdDMFlOQXd3QkN3dEJBUThMSUFOQmZXcEJBazBFUUNBRUtBSWtJQWhORFFFTUFnc2dBMEVHUncwQUlBUW9BaWdnQ0VrTkFRc0NRQ0FBS0FJRUlnTkJnQUpHQkVBZ0FDQUVOZ0lNSUFBZ0FUWUNCQ0FBSUFrMkFnZ2dBQ0FLS0FJVUlnRTJBaEFnQVNnQ05DRUNJQUVvQWpnaEFTQUFRUUUyQXJRYUlBQkJ3QXBxSUFFMkFnQWdBRUc4Q21vZ0FqWUNBQ0FBSUFFZ0FtdzJBcGdKREFFTElBQW9BclFhQkVBZ0FFRUFOZ0swR2lBQUtBSzhDUkFFSUFCQkFEWUN2QWtnQUNnQ2xBa1FCQ0FBSUFBb0FwZ0pJZ0ZCMkFGc0lnUVFDaUlDTmdLOENTQUFJQUZCQW5RUUNpSUROZ0tVQ1VILy93TWhCaUFDUlEwQ0lBTkZEUUlnQWtFQUlBUVFCeUFBS0FJUUtBSTBJQUVRVGlBQUtBSVFJUUZCQVNFQ0FrQWdBQ2dDd0FrTkFDQUJLQUlRUVFKR0RRQUNRQ0FCS0FKUVJRMEFJQUVvQWxRaUJDZ0NtQWRGRFFBZ0JDZ0NzQWRGRFFFTFFRQWhBZ3NnQUVIRUNXb2dBU2dDT0NBQktBSTBiQ0FCS0FKWUlBRW9BaXdnQVNnQ0RDQUNFRndpQmtVTkFRd0NDeUFCSUFOR0RRQWdBQ2dDQ0NBSlJ3UkFJQUpGRFFJZ0FDQUVOZ0lNSUFBZ0FUWUNCQ0FBSUFrMkFnZ2dBQ0FLS0FJVUlnRTJBaEFnQVNnQ05DRUNJQUVvQWpnaEFTQUFRUUUyQXJRYUlBQkJ3QXBxSUFFMkFnQWdBRUc4Q21vZ0FqWUNBQ0FBSUFFZ0FtdzJBcGdKREFFTElBQWdCRFlDRENBQUlBRTJBZ1FMUVFBaEJnc2dCZ3UyQVFFRGZ3SkFJQUFnQVNnQ0FDSURRUUowYWlJQ0tBS1VBU0lFUlFSQUlBSkJ5QUFRQ2lJQU5nS1VBU0FBRFFFUEN3SkFJQU1nQUNnQ0JFY05BQ0FCS0FJRUlBQW9BZ2hHRFFBZ0FFR0JBallDQkFzZ0JDZ0NGQkFFSUFJb0FwUUJRUUEyQWhRZ0FpZ0NsQUVvQWhnUUJDQUNLQUtVQVVFQU5nSVlJQUlvQXBRQktBSWNFQVFnQWlnQ2xBRkJBRFlDSENBQ0tBS1VBU2dDTEJBRUlBSW9BcFFCUVFBMkFpd0xJQUlvQXBRQklBRkJ5QUFRRlJvTDFnRUJBMzhDUUNBQUlBRW9BZ2dpQTBFQ2RHb2lBaWdDRkNJRVJRUkFJQUpCM0FBUUNpSUFOZ0lVSUFBTkFROExJQUFvQWdnZ0EwWUVRQ0FCSUFBb0FoQVFRZ1JBSUFJb0FoUW9BaWdRQkNBQ0tBSVVRUUEyQWlnZ0FpZ0NGQ2dDVkJBRUlBSW9BaFJCQURZQ1ZDQUFRUUEyQWhBZ0FFR0JBallDQkNBQVFpRTNBZ2dNQWdzZ0FTZ0NLQkFFSUFGQkFEWUNLQ0FCS0FKVUVBUWdBVUVBTmdKVUR3c2dCQ2dDS0JBRUlBSW9BaFJCQURZQ0tDQUNLQUlVS0FKVUVBUWdBaWdDRkVFQU5nSlVDeUFDS0FJVUlBRkIzQUFRRlJvTDBnSUJBMzhqQUVFZ2F5SUVKQUFnQkNBQktBSVFOZ0lRSUFRZ0FTa0NDRGNEQ0NBRUlBRXBBZ0EzQXdBQ1FDQUVJQVJCSEdvUUFpSUJEUUFnQkNBRVFSeHFFQUlpQVEwQUlBUWdCRUVjYWhBQ0lnRU5BQ0FDS0FJTUlRWkJBQ0VCQTBBZ0FTSUZRUUZxSVFFZ0JpQUZkZzBBQ3lBRUlBVkJmMm9RQTBGL1JnUkFRUUVoQVF3QkN5QUVJQVJCSEdvUUFpSUJEUUFDUUNBQ0tBSVFJZ0VFZnlBQkJTQUNLQUlVSVFaQkFDRUJBMEFnQVNJRlFRRnFJUUVnQmlBRmRnMEFDeUFFSUFWQmYyb1FBMEYvUmdSQVFRRWhBUXdEQ3lBREtBSUlCRUFnQkNBRVFSaHFFQVVpQVEwREN5QUNLQUlRQzBFQlJ3MEFJQUlvQWhnTkFDQUVJQVJCR0dvUUJTSUJEUUVnQXlnQ0NFVU5BQ0FFSUFSQkdHb1FCU0lCRFFFTElBTW9Ba1FFUUNBRUlBUkJIR29RQWlJQkRRRUxJQUFnQkVFQkVBTWlBRFlDQUNBQVFYOUdJUUVMSUFSQklHb2tBQ0FCQzhZQkFRSi9Jd0JCSUdzaUJTUUFJQVVnQUNnQ0VEWUNFQ0FGSUFBcEFnZzNBd2dnQlNBQUtRSUFOd01BQWtBZ0JTQUZRUnhxRUFJaUFBMEFJQVVnQlVFY2FoQUNJZ0FOQUNBRklBVkJIR29RQWlJQURRQWdBU2dDRENFR1FRQWhBQU5BSUFBaUFVRUJhaUVBSUFZZ0FYWU5BQXNnQlNBQlFYOXFFQU5CZjBZRVFFRUJJUUFNQVFzZ0FrRUZSZ1JBSUFVZ0JVRWNhaEFDSWdBTkFRc2dCU0FFRUFVaUFBMEFJQU1FUUNBRklBUkJCR29RQlNJQURRRUxRUUFoQUFzZ0JVRWdhaVFBSUFBTDRRRUJBMzhqQUVFZ2F5SUVKQUFnQkNBQUtBSVFOZ0lRSUFRZ0FDa0NDRGNEQ0NBRUlBQXBBZ0EzQXdBQ1FDQUVJQVJCSEdvUUFpSUFEUUFnQkNBRVFSeHFFQUlpQUEwQUlBUWdCRUVjYWhBQ0lnQU5BQ0FCS0FJTUlRWkJBQ0VBQTBBZ0FDSUZRUUZxSVFBZ0JpQUZkZzBBQ3lBRUlBVkJmMm9RQTBGL1JnUkFRUUVoQUF3QkN5QUNRUVZHQkVBZ0JDQUVRUnhxRUFJaUFBMEJDeUFCS0FJVUlRSkJBQ0VBQTBBZ0FDSUJRUUZxSVFBZ0FpQUJkZzBBQ3lBRUlBRkJmMm9RQTBGL1JnUkFRUUVoQUF3QkN5QUVJQU1RQlNFQUN5QUVRU0JxSkFBZ0FBdm1BUUVEZnlNQVFTQnJJZ1FrQUNBRUlBQW9BaEEyQWhBZ0JDQUFLUUlJTndNSUlBUWdBQ2tDQURjREFBSkFJQVFnQkVFY2FoQUNJZ0FOQUNBRUlBUkJIR29RQWlJQURRQWdCQ0FFUVJ4cUVBSWlBQTBBSUFFb0Fnd2hCa0VBSVFBRFFDQUFJZ1ZCQVdvaEFDQUdJQVYyRFFBTElBUWdCVUYvYWhBRFFYOUdCRUJCQVNFQURBRUxJQUpCQlVZRVFDQUVJQVJCSEdvUUFpSUFEUUVMSUFFb0FoUWhBa0VBSVFBRFFDQUFJZ0ZCQVdvaEFDQUNJQUYyRFFBTElBUWdBVUYvYWhBRElnQkJmMFlFUUVFQklRQU1BUXNnQXlBQU5nSUFRUUFoQUFzZ0JFRWdhaVFBSUFBTGtnRUJBbjhqQUVFZ2F5SURKQUFnQXlBQUtBSVFOZ0lRSUFNZ0FDa0NBRGNEQUNBRElBQXBBZ2czQXdnQ1FDQURJQU5CSEdvUUFpSUFEUUFnQXlBRFFSeHFFQUlpQUEwQUlBTWdBMEVjYWhBQ0lnQU5BRUVBSVFBRFFDQUFJZ1JCQVdvaEFDQUJJQVIyRFFBTElBTWdCRUYvYWhBRFFYOUdCRUJCQVNFQURBRUxJQU1nQWhBQ0lRQUxJQU5CSUdva0FDQUFDNWNCQVFKL0l3QkJJR3NpQXlRQUlBTWdBQ2dDRURZQ0VDQURJQUFwQWdnM0F3Z2dBeUFBS1FJQU53TUFBa0FnQXlBRFFSeHFFQUlpQUEwQUlBTWdBMEVjYWhBQ0lnQU5BQ0FESUFOQkhHb1FBaUlBRFFCQkFDRUFBMEFnQUNJRVFRRnFJUUFnQVNBRWRnMEFDeUFESUFSQmYyb1FBeUlBUVg5R0JFQkJBU0VBREFFTElBSWdBRFlDQUVFQUlRQUxJQU5CSUdva0FDQUFDNjhPQVFwL0l3QkJFR3NpQlNRQUlBRkJBRUhjQnhBSElRY2dBaWdDTkNFR0lBSW9BamdoQ0FKQUlBQWdCVUVFYWhBQ0lnRU5BQ0FISUFVb0FnUWlBVFlDQUNBQklBWWdDR3dpQzA4RVFFRUJJUUVNQVFzZ0FDQUZRUVJxRUFJaUFRMEFJQWNnQlNnQ0JDSUdOZ0lFSUFaQkIwc0VRRUVCSVFFTUFRdEJBU0VCQWtBQ1FDQUdRUUZyRGdjQ0FRSUNBQUlCQUFzZ0JDZ0NBRUVGUmdSQURBSUxJQUlvQWl3TkFBd0JDeUFBSUFWQkJHb1FBaUlCRFFBZ0J5QUZLQUlFSWdZMkFnaEJBU0VCSUFZZ0F5Z0NBRWNOQUNBQ0tBSU1JUWhCQUNFQkEwQWdBU0lHUVFGcUlRRWdDQ0FHZGcwQUMwRUJJUUVnQUNBR1FYOXFFQU1pQmtGL1JnMEFJQVpCQUNBRUtBSUFJZ2hCQlVZYkRRQWdCeUFHTmdJTUlBaEJCVVlFUUNBQUlBVkJCR29RQWlJQkRRRWdCeUFGS0FJRUlnWTJBaEJCQVNFQklBWkIvLzhEU3cwQkN3SkFJQUlvQWhBaUFRUi9JQUVGSUFJb0FoUWhDRUVBSVFFRFFDQUJJZ1pCQVdvaEFTQUlJQVoyRFFBTElBQWdCa0YvYWhBRElnRkJmMFlFUUVFQklRRU1Bd3NnQnlBQk5nSVVJQU1vQWdnRVFDQUFJQVVRQlNJQkRRTWdCeUFGS0FJQU5nSVlDeUFFS0FJQVFRVkdCRUJCQVNFQklBY29BaFFpQmlBQ0tBSVVRUUYyU3cwRElBWkJBQ0FIS0FJWUlnaEJIM1VnQ0hGclJ3MERDeUFDS0FJUUMwRUJSdzBBSUFJb0FoZ05BQ0FBSUFVUUJTSUJEUUVnQnlBRktBSUFOZ0ljSUFNb0FnZ0VRQ0FBSUFVUUJTSUJEUUlnQnlBRktBSUFOZ0lnQ3lBRUtBSUFRUVZIRFFCQkFTRUJJQWNvQWh3aUJpQUhLQUlnSUFZZ0FpZ0NJR3BxSWdnZ0JpQUlTQnNOQVFzZ0F5Z0NSQVJBSUFBZ0JVRUVhaEFDSWdFTkFTQUhJQVVvQWdRaUJqWUNKRUVCSVFFZ0JrSC9BRXNOQVFzQ1FDQUhLQUlFSWdGQkJVc05BQUpBSUFGQkFXc09CQUVCQVFFQUMwRUJJUUVnQUVFQkVBTWlCa0YvUmcwQklBY2dCallDS0FKQUlBWUVRQ0FBSUFWQkJHb1FBaUlCRFFOQkFTRUJJQVVvQWdRaUJrRVBTdzBESUFaQkFXb2hCZ3dCQ3lBREtBSXdJZ1pCRUVzTkFnc2dCeUFHTmdJc0lBY29BZ1FoQVFzQ1FDQUJRUVZMRFFBQ1FDQUJRUUZyRGdRQkFRRUJBQXNnQWlnQ0RDRUpJQWNvQWl3aENrRUJJUUVnQUVFQkVBTWlCa0YvUmcwQklBY2dCallDUkNBR1JRMEFRUUFoQVFOQUlBRWlCaUFLU3dSQVFRRWhBUXdEQ3lBQUlBVkJDR29RQWlJQkRRSWdCU2dDQ0NJQlFRTkxCRUJCQVNFQkRBTUxJQWNnQmtFTWJHb2lDQ0FCTmdKSUFrQWdBVUVCVFFSQUlBQWdCVUVNYWhBQ0lnRU5CQ0FGS0FJTUlnRWdDVThFUUVFQklRRU1CUXNnQ0NBQlFRRnFOZ0pNREFFTElBRkJBa2NOQUNBQUlBVkJER29RQWlJQkRRTWdDQ0FGS0FJTU5nSlFDeUFHUVFGcUlRRWdCU2dDQ0VFRFJ3MEFDMEVCSVFFZ0JrVU5BUXNDUUNBRUtBSUVSUTBBSUFRb0FnQWhCQ0FDS0FJc0lRbEJBU0VCSUFCQkFSQURJUUlnQkVFRlJnUkFJQUpCZjBZTkFpQUhJQUkyQXBRQ0lBQkJBUkFESWdKQmYwWU5BaUFISUFJMkFwZ0NJQWtOQVNBQ1JRMEJEQUlMSUFKQmYwWU5BU0FISUFJMkFwd0NJQUpGRFFBZ0NVRUJkRUVEYWlFT1FRQWhCa0VBSVFwQkFDRUVBMEFnQmlBT1JnUkFRUUVoQVF3REN5QUFJQVZCQ0dvUUFpSUJEUUlnQlNnQ0NDSUNRUVpMQkVCQkFTRUJEQU1MSUFjZ0JrRVViR29pQ0NBQ05nS2dBZ0ovSUFKQkFuSkJBMFlFUUNBQUlBVkJER29RQWlJQkRRUWdDQ0FGS0FJTVFRRnFOZ0trQWlBRktBSUlJUUlMSUFKQkFrWUxCRUFnQUNBRlFReHFFQUlpQVEwRElBZ2dCU2dDRERZQ3FBSWdCU2dDQ0NFQ0N3SkFJQUpCZldvaUFVRURTdzBBQWtBZ0FVRUJhdzRDQVFFQUN5QUFJQVZCREdvUUFpSUJEUU1nQ0NBRktBSU1OZ0tzQWlBRktBSUlJUUlMSUFKQkJFWUVRQ0FBSUFWQkRHb1FBaUlCRFFNZ0JTZ0NEQ0lCSUFsTEJFQkJBU0VCREFRTElBZ2dBVUYvYWtILy93TWdBUnMyQXJBQ0lBcEJBV29oQ2lBRktBSUlJUUlMSUFaQkFXb2hCaUFNSUFKQkJrWnFJUXdnQkNBQ1FRVkdhaUVFSUEwZ0FrRi9ha0VEU1dvaERTQUNEUUFMUVFFaEFTQUVJQXB5SUF4eVFRRkxEUUVnQkVVTkFDQU5EUUVMSUFBZ0JSQUZJZ0VOQUNBSElBVW9BZ0FpQVRZQ01DQUZJQUVnQXlnQ05Hb2lBallDQUVFQklRRWdBa0V6U3cwQUFrQWdBeWdDUEVVTkFDQUFJQVZCQkdvUUFpSUJEUUVnQnlBRktBSUVJZ0kyQWpSQkFTRUJJQUpCQWtzTkFTQUNRUUZHRFFBZ0FDQUZFQVVpQVEwQlFRRWhBU0FGS0FJQUlnSkJCbXBCREVzTkFTQUhJQUpCQVhRMkFqZ2dBQ0FGRUFVaUFRMEJRUUVoQVNBRktBSUFJZ0pCQm1wQkRFc05BU0FISUFKQkFYUTJBandMQWtBZ0F5Z0NERUVDU1EwQUlBTW9BaEJCZldwQkFrc05BRUVDUVFFZ0N5QUxJQU1vQWlRaUFXNGlBaUFCYkdzYklBSnFJUVJCQUNFQ0EwQWdCQ0FDSWdGQkFXb2lBbllOQUFzZ0JTQUFJQUlnQVNBRVFYOGdBWFJCZjNOeEd4QURJZ0EyQWdSQkFTRUJJQUJCZjBZTkFTQUhJQUEyQWtBZ0FDQUxJQU1vQWlRaUFHcEJmMm9nQUc1TERRRUxRUUFoQVFzZ0JVRVFhaVFBSUFFTHdRa0JEWDhnQXlBRWJDRUZJQUVvQWd3aUNVRUJSZ1JBSUFCQkFDQUZRUUowRUFjYUR3c0NRQUpBQWtBQ1FDQUJLQUlRSWdaQmZXcEJBazBFUUNBQktBSWtJQUpzSWdJZ0JTQUNJQVZKR3lFTElBWkJmbkZCQkVjTkFTQUZJQXRySUFzZ0FTZ0NJQnNoQndzQ1FBSkFBa0FnQmtFRlRRUkFJQVpCQVdzT0JRWUZCQU1DQVFzZ0JVVU5CaUFCS0FJc0lRSkJBQ0VCQTBBZ0FDQUJRUUowSWdOcUlBSWdBMm9vQWdBMkFnQWdBVUVCYWlJQklBVkhEUUFMREFZTEFrQWdDUVJBSUFFb0FoUWhBa0VBSVFZTUFRc2dCVVVOQmdOQURBQUFDd0FMQTBCQkFDRUVJQVlnQlU4TkJnTkFRUUFoQndKQUlBSWdCRUVDZEdvaUF5Z0NBQ0lCUlEwQUlBRWhCeUFGSUFaTkRRQkJBQ0VCUVFBZ0JTQUdheUlISUFjZ0JVc2JJUWdEUUNBQUlBRWdCbXBCQW5ScUlBUTJBZ0FnQVVFQmFpSUJJQU1vQWdBaUIwOE5BU0FCSUFoSERRQUxDeUFFUVFGcUlnUWdDVWxCQUNBR0lBZHFJZ1lnQlVrYkRRQUxJQVlnQlVrTkFBc01CUXNnQTBVTkJDQUVSUTBFUVFFZ0FTZ0NJQ0lKYXlFSVFRQWhCVUVBSVFJRFFFRUFJUUVnQlNFR0EwQWdBQ0FCSUFOc0lBSnFRUUowYWlBSklBZ2dCaUFIU1JzMkFnQWdCa0VCYWlFR0lBRkJBV29pQVNBRVJ3MEFDeUFFSUFWcUlRVWdBa0VCYWlJQ0lBTkhEUUFMREFRTElBVkZEUU5CQVNBQktBSWdJZ0pySVFOQkFDRUJBMEFnQUNBQlFRSjBhaUFDSUFNZ0FTQUhTUnMyQWdBZ0FVRUJhaUlCSUFWSERRQUxEQU1MSUFFb0FpQWhBaUFGQkVCQkFDRUJBMEFnQUNBQlFRSjBha0VCTmdJQUlBRkJBV29pQVNBRlJ3MEFDd3NnQzBVTkFpQURRWDlxSVE4Z0JFRi9haUVRSUFKQmYyb2hCa0VCSUFKQkFYUWlBV3NoQlNBQlFYOXFJUWtnQkNBQ2EwRUJkaUlLSVF3Z0F5QUNhMEVCZGlJTklRUWdDaUVJSUEwaEFVRUFJUWNEUUNBQUlBTWdDR3dnQVdwQkFuUnFJZzRvQWdBaUVVRUJSZ1JBSUE1QkFEWUNBQXNnRVVFQlJpRU9Ba0FDUUNBR1FYOUhEUUFnQVNBRVJ3MEFRUUFoQmlBSklRSWdCRUVCSUFSQkFVb2JRWDlxSWdFaEJBd0JDd0pBSUFaQkFVY05BQ0FCSUExSERRQkJBQ0VHSUFVaEFpQU5RUUZxSWdFZ0R5QUJJQTlJR3lJQklRME1BUXNDUUNBQ1FYOUhEUUFnQ0NBTVJ3MEFRUUFoQWlBRklRWWdERUVCSUF4QkFVb2JRWDlxSWdnaERBd0JDd0pBSUFKQkFVY05BQ0FJSUFwSERRQkJBQ0VDSUFraEJpQUtRUUZxSWdnZ0VDQUlJQkJJR3lJSUlRb01BUXNnQWlBSWFpRUlJQUVnQm1vaEFRc2dCeUFPYWlJSElBdEpEUUFMREFJTElBRW9BaHdoQnlBQktBSVlJUWdnQlFSQUlBbEJmMm9oQWtFQUlRRURRQ0FBSUFGQkFuUnFJQUkyQWdBZ0FVRUJhaUlCSUFWSERRQUxJQUpGRFFJTElBbEJmbW9oQVFOQUFrQWdDQ0FCSWdSQkFuUWlBV29vQWdBaUJpQURiaUlDSUFFZ0Iyb29BZ0FpQVNBRGJpSUZTdzBBSUFZZ0FpQURiR3NpQmlBQklBTWdCV3hySWdsTEJFQURRQ0FDUVFGcUlnSWdCVTBOQUF3Q0FBc0FDd05BSUFJZ0Eyd2hDaUFHSVFFRFFDQUFJQUVnQ21wQkFuUnFJQVEyQWdBZ0FVRUJhaUlCSUFsTkRRQUxJQUpCQVdvaUFpQUZUUTBBQ3dzZ0JFRi9haUVCSUFRTkFBc01BUXNnQlVVTkFFRUFJUUVEUUNBQUlBRkJBblJxSUFFZ0EyNGlBaUFKYkVFQmRpQUJJQUlnQTJ4cmFpQUpjRFlDQUNBQlFRRnFJZ0VnQlVjTkFBc0xDOFFCQVFWL0lBQW9BcWdKSVFRQ1FDQUFRYkFKYWlnQ0FDSUNSUTBBSUFKQmYyb2lBaUFCVFFSQUlBSWhBUXdCQ3lBQUtBSzhDU0VGQTBBQ1FDQUZJQUpCMkFGc2FpZ0NCQ0FFUncwQUlBTkJBV29pQXlBQUtBSVFLQUkwSWdaQkNpQUdRUXBMRzBrTkFDQUNJUUVNQWdzZ0FrRi9haUlDSUFGTERRQUxDd05BQWtBZ0FDZ0N2QWtnQVVIWUFXeHFJZ0lvQWdRZ0JFY05BQ0FDS0FMRUFTSURSUTBBSUFJZ0EwRi9hallDeEFFZ0FDZ0NsQWtnQUNnQ21Ba2dBUkFlSWdFTkFRc0xDNzBFQWd0L0FYNGpBRUhBQTJzaUJTUUFJQU1vQWdBaEJ5QUJLQUt3R2lFSUlBVkJBRFlDRENBQlFiQUpha0VBTmdJQUlBRWdBU2dDcUFsQkFXbzJBcWdKSUFVZ0F5Z0NNQ0FCS0FJTUtBSTBhallDQ0NBQlFjUUphaUVOSUFoQkRHb2hEZ0pBQTBBZ0FTZ0N2QWtoQkFKQUlBTW9BaVFOQUNBRUlBZEIyQUZzYWlnQ3hBRkZEUUJCQVNFRURBSUxJQU1wQWpRaER5QURLQUk4SVFzZ0FTZ0NxQWtoRENBRUlBZEIyQUZzSWdacUlnUWdBU2dDRENnQ09EWUNHQ0FFSUFzMkFoQWdCQ0FQTndJSUlBUWdERFlDQkFKQUlBTW9BZ1FpQkVFQ1JnMEFJQWtOQUNBRVFRZEdEUUFnQUNBRlFReHFFQUlpQkEwQ0lBVW9BZ3dpQkNBQktBS1lDU0FIYTBzRVFFRUJJUVFNQXdzZ0JFVUVRRUVBSVFrTUFRc2dEa0VBUWFRQkVBY2FJQWhCQURZQ0FFRUJJUWtMQWtBZ0JTZ0NEQ0lFQkVBZ0JTQUVRWDlxTmdJTURBRUxRUUFoQ1NBQUlBZ2dBU2dDdkFrZ0Jtb2dBeWdDQkNBREtBSXNFRkVpQkEwQ0N5QUJLQUs4Q1NBR2FpQUlJQUlnRFNBRlFRaHFJQWNnQVNnQ0RDZ0NRQ0FGUVJCcUVGQWlCQTBCSUFFb0Fyd0pJQVpxS0FMRUFTRUxJQUFRTGlFRUlBVW9BZ3doQmdKQUlBTW9BZ1JCZm1vaURFRUZTdzBBQWtBZ0RFRUJhdzRFQVFFQkFRQUxJQUVnQnpZQ3NBa0xJQVFnQm5JaEJrRUJJUVFnQVNnQ2xBa2dBU2dDbUFrZ0J4QWVJZ2RGUVFBZ0Joc05BU0FLSUF0QkFVWnFJUW9nQmcwQUN5QUJRYXdKYWlnQ0FDQUthaUlBSUFFb0FwZ0pTdzBBSUFFZ0FEWUNyQWxCQUNFRUN5QUZRY0FEYWlRQUlBUUw1Z0lCQjM5QkFTRUNBa0FnQUNnQ0FDQUJLQUlBUncwQUlBQW9BZ1FnQVNnQ0JFY05BQ0FBS0FJTUlBRW9BZ3hIRFFBZ0FDZ0NFQ0lESUFFb0FoQkhEUUFnQUNnQ0xDQUJLQUlzUncwQUlBQW9BakFnQVNnQ01FY05BQ0FBS0FJMElBRW9BalJIRFFBZ0FDZ0NPQ0FCS0FJNFJ3MEFJQUFvQWp3aUJTQUJLQUk4UncwQUlBQW9BbEFnQVNnQ1VFY05BQUpBSUFOQkFVc05BQ0FEUVFGclJRUkFJQUFvQWhnZ0FTZ0NHRWNOQWlBQUtBSWNJQUVvQWh4SERRSWdBQ2dDSUNBQktBSWdSdzBDSUFBb0FpUWlCQ0FCS0FJa1J3MENJQVJGRFFFZ0FTZ0NLQ0VHSUFBb0FpZ2hCMEVBSVFNRFFDQUhJQU5CQW5RaUNHb29BZ0FnQmlBSWFpZ0NBRWNOQXlBRUlBTkJBV29pQTBjTkFBc01BUXNnQUNnQ0ZDQUJLQUlVUncwQkN5QUZCRUFnQUNnQ1FDQUJLQUpBUncwQklBQW9Ba1FnQVNnQ1JFY05BU0FBS0FKSUlBRW9Ba2hIRFFFZ0FDZ0NUQ0FCS0FKTVJ3MEJDMEVBSVFJTElBSUwvd2tCQm44akFFRVFheUlFSkFBZ0FVRUFRZHdBRUFjaEF3SkFJQUJCQ0JBRElnRkJmMFlFUUVFQklRRU1BUXNnQXlBQk5nSUFJQUJCQVJBREdpQUFRUUVRQXhvZ0FFRUJFQU5CZjBZRVFFRUJJUUVNQVFzZ0FFRUZFQU5CZjBZRVFFRUJJUUVNQVFzZ0FFRUlFQU1pQVVGL1JnUkFRUUVoQVF3QkN5QURJQUUyQWdRZ0FDQURRUWhxRUFJaUFRMEFJQU1vQWdoQkgwc0VRRUVCSVFFTUFRc2dBQ0FFUVF4cUVBSWlBUTBBUVFFaEFTQUVLQUlNSWdKQkRFc05BQ0FEUVFFZ0FrRUVhblEyQWd3Z0FDQUVRUXhxRUFJaUFRMEFRUUVoQVNBRUtBSU1JZ0pCQWtzTkFDQURJQUkyQWhBQ1FDQUNRUUZMRFFBZ0FrRUJhd1JBSUFBZ0JFRU1haEFDSWdFTkFrRUJJUUVnQkNnQ0RDSUNRUXhMRFFJZ0EwRUJJQUpCQkdwME5nSVVEQUVMSUFCQkFSQURJZ0pCZjBZTkFTQURJQUpCQVVZMkFoZ2dBQ0FEUVJ4cUVBVWlBUTBCSUFBZ0EwRWdhaEFGSWdFTkFTQUFJQU5CSkdvUUFpSUJEUUZCQVNFQklBTW9BaVFpQWtIL0FVc05BU0FDQkVBZ0F5QUNRUUowRUFvaUFUWUNLQ0FCUlFSQVFmLy9BeUVCREFNTElBQWdBUkFGSWdFTkFrRUJJUUlEUUNBQ0lBTW9BaVJQRFFJZ0FrRUNkQ0VCSUFKQkFXb2hBaUFBSUFFZ0F5Z0NLR29RQlNJQlJRMEFDd3dDQ3lBRFFRQTJBaWdMSUFBZ0EwRXNhaEFDSWdFTkFFRUJJUUVnQXlnQ0xFRVFTdzBBSUFCQkFSQURJZ0pCZjBZTkFDQURJQUpCQVVZMkFqQWdBQ0FFUVF4cUVBSWlBUTBBSUFNZ0JDZ0NERUVCYWpZQ05DQUFJQVJCREdvUUFpSUJEUUJCQVNFQklBTWdCQ2dDREVFQmFqWUNPQ0FBUVFFUUEwRUJha0VDU1EwQUlBQkJBUkFEUVg5R0RRQWdBRUVCRUFNaUFrRi9SZzBBSUFNZ0FrRUJSaUlCTmdJOEFrQWdBVVVFUUNBREtBSTRJUVVnQXlnQ05DRUdEQUVMSUFBZ0EwRkFheEFDSWdFTkFTQUFJQU5CeEFCcUVBSWlBUTBCSUFBZ0EwSElBR29RQWlJQkRRRWdBQ0FEUWN3QWFoQUNJZ0VOQVVFQklRRWdBeWdDUUNBREtBSkVRWDl6SUFNb0FqUWlCa0VEZEdwS0RRRWdBeWdDU0NBREtBSk1RWDl6SUFNb0FqZ2lCVUVEZEdwS0RRRUxBa0FDUUFKQUFrQWdBeWdDQkVGMmFpSUhRU2xMRFFCQjR3QWhBVUdBcEFraEFnSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnQjBFQmF3NHBBQUVCQ3dzTEN3c0xBUUlEQ3dzTEN3c0xDd01FQlFzTEN3c0xDd3NHQmdjTEN3c0xDd3NMQ0FrS0MwR01BeUVCUVlDTUZTRUNEQWtMUVl3RElRRkJnTmczSVFJTUNBdEJtQVloQVVHQXNPOEFJUUlNQnd0QjFBd2hBVUdBN0wwQklRSU1CZ3RCa0J3aEFVR0E4S1VESVFJTUJRdEJnQ2doQVVHQWdPQURJUUlNQkF0QmdNQUFJUUZCZ0lDQUJpRUNEQU1MUVlERUFDRUJRWUNBc0FZaEFnd0NDMEhBckFFaEFVR0F3SnNVSVFJTUFRdEJnS0FDSVFGQmdJRGdJU0VDQ3lBQklBVWdCbXdpQVU4TkFRc2dCRUgvLy8vL0J6WUNEQ0FES0FJc0lRSU1BUXNnQkNBQ0lBRkJnQU5zYmlJQlFSQWdBVUVRU1JzaUFUWUNEQ0FES0FJc0lnSWdBVTBOQVFzZ0JDQUNOZ0lNSUFJaEFRc2dBeUFCTmdKWVFRRWhBU0FBUVFFUUF5SUNRWDlHRFFBZ0F5QUNRUUZHTmdKUUFrQWdBa0VCUncwQUlBTkJ1QWNRQ2lJQk5nSlVJQUZGQkVCQi8vOERJUUVNQWdzZ0FDQUJFQ3dpQVEwQklBTW9BbFFpQWlnQ21BZEZEUUJCQVNFQklBSW9BckFISUFJb0FyUUhJZ0pMRFFFZ0FpQURLQUlzU1EwQklBSWdBeWdDV0VzTkFTQURJQUpCQVNBQ0d6WUNXQXNnQUJBZlFRQWhBUXNnQkVFUWFpUUFJQUVMalFRQkRuOGdBUUovQWtBZ0FDOEJJQ0lIRFFBZ0FDOEJIQTBBUVFBTUFRdEJBZ3MyQWlBZ0FRSi9Ba0FnQUM4QklpSUNEUUFnQUM4QkhnMEFRUUFNQVF0QkFnczJBaWdnQVFKL0FrQWdBQzhCS0NJRERRQWdBQzhCSkEwQVFRQU1BUXRCQWdzMkFqQWdBUUovQWtBZ0FDOEJLaUlJRFFBZ0FDOEJKZzBBUVFBTUFRdEJBZ3MyQWpnZ0FTQUhJQUF2QVN3aUNYSkJBRWRCQVhRMkFrQWdBU0FDSUFBdkFTNGlCSEpCQUVkQkFYUTJBa2dnQVNBRElBQXZBVFFpQlhKQkFFZEJBWFEyQWxBZ0FTQUlJQUF2QVRZaUNuSkJBRWRCQVhRMkFsZ2dBU0FBTHdFd0lnMGdDWEpCQUVkQkFYUTJBbUFnQVNBQUx3RXlJZ3NnQkhKQkFFZEJBWFEyQW1nZ0FTQUFMd0U0SWd3Z0JYSkJBRWRCQVhRMkFuQWdBU0FBTHdFNklnNGdDbkpCQUVkQkFYUTJBbmhCQWlFR0lBRWdBQzhCSGlJUEJIOUJBZ1VnQUM4QkhFRUFSMEVCZEFzMkFnd2dBU0FQSUFBdkFTUWlCbkpCQUVkQkFYUTJBaFFnQUM4QkppRUFJQUVnRENBT2NrRUFSMEVCZERZQ2ZDQUJJQXNnREhKQkFFZEJBWFEyQW5RZ0FTQUxJQTF5UVFCSFFRRjBOZ0pzSUFFZ0JTQUtja0VBUjBFQmREWUNYQ0FCSUFRZ0JYSkJBRWRCQVhRMkFsUWdBU0FFSUFseVFRQkhRUUYwTmdKTUlBRWdBeUFJY2tFQVIwRUJkRFlDUENBQklBSWdBM0pCQUVkQkFYUTJBalFnQVNBQ0lBZHlRUUJIUVFGME5nSXNJQUVnQUNBR2NrRUFSMEVCZERZQ0hBdk1CZ0VMZnlNQVFZQU9heUlPSkFBZ0JrRUZhaUVJQWtBQ1FDQUNRUUJJRFFBZ0EwRUFTQTBBSUFJZ0NHb2dCRXNOQUNBSFFRVnFJZ29nQTJvZ0JVc05BQ0FFSVFnZ0F5RUpEQUVMSUFBZ0RrSEFDbW9nQWlBRElBUWdCU0FJSUFkQkJXb2lDaUFJRUF3Z0RrSEFDbW9oQUVFQUlRSUxBa0FnQ2tVTkFDQUdRUUoySWhCRkRRQWdDQ0FHYXlFUklBQWdDQ0FKYkNBQ2FtcEJCV29oQWlBT0lRQURRQ0FDUVg5cUxRQUFJUWdnQWtGK2FpMEFBQ0VESUFKQmZXb3RBQUFoQlNBQ1FYeHFMUUFBSVFRZ0FrRjdhaTBBQUNFTUlCQWhEUU5BSUFBZ0FpMEFBQ0lKSUF3Z0JDQUlhaUlMYXlBRElBVnFRUlJzYWlBTFFRSjBhMm8yQWdBZ0FDQUNMUUFCSWdzZ0F5QUlha0VVYkNBRWFpQUZJQWxxSWdScklBUkJBblJyYWpZQ0JDQUFJQUl0QUFJaUR5QUlJQWxxUVJSc0lBVnFJQU1nQzJvaUJHc2dCRUVDZEd0cU5nSUlJQUFnQWkwQUF5SVNJQWtnQzJwQkZHd2dBMm9nQ0NBUGFpSURheUFEUVFKMGEybzJBZ3dnQUVFUWFpRUFJQUpCQkdvaEFpQUlJUXdnQ1NFRUlBc2hCU0FQSVFNZ0VpRUlJQTFCZjJvaURRMEFDeUFDSUJGcUlRSWdDa0YvYWlJS0RRQUxDd0pBSUFkQkFuWWlCMFVOQUNBR1JRMEFRY0FBSUFacklROGdEaUFHUVFKMGFpSUlJQVpCRkd4cUlRSkJBQ0FHYXlJUVFRTjBJUklnQmtFRGRDRUpJQVpCQTJ4QkFuUWhDd05BSUFZaEJBTkFJQUVnQ0NBSmFpZ0NBQ0lBSUFJZ0NXb29BZ0FnQWlBR1FRSjBJZzFxS0FJQUlnb2dBaUFTYWlnQ0FDSURhaUlGYXlBRlFRSjBhMm9nQWlnQ0FDSU1JQUlnRUVFQ2RDSVJhaWdDQUNJRmFrRVViR3BCZ0FScVFRcDFRYkF1YWkwQUFEb0FNQ0FCSUFnZ0RXb29BZ0FpRFNBS0lBTWdCV3BCRkd4cUlBQWdER29pQ21zZ0NrRUNkR3RxUVlBRWFrRUtkVUd3TG1vdEFBQTZBQ0FnQVNBSUtBSUFJZ29nRENBQUlBTnFRUlJzYWlBRklBMXFJZ3hySUF4QkFuUnJha0dBQkdwQkNuVkJzQzVxTFFBQU9nQVFJQUVnQ0NBUmFpZ0NBQ0FGSUFBZ0RXcEJGR3hxSUFNZ0Ntb2lBR3NnQUVFQ2RHdHFRWUFFYWtFS2RVR3dMbW90QUFBNkFBQWdDRUVFYWlFSUlBRkJBV29oQVNBQ1FRUnFJUUlnQkVGL2FpSUVEUUFMSUFFZ0Qyb2hBU0FDSUF0cUlRSWdDQ0FMYWlFSUlBZEJmMm9pQncwQUN3c2dEa0dBRG1va0FBdmxBd0VKZnlNQVFjQURheUlLSkFBZ0JrRUZhaUVJQWtBQ1FDQUNRUUJJRFFBZ0F5QUhhaUFGU3cwQUlBTkJBRWdOQUNBQ0lBaHFJQVJMRFFBZ0JDRUlJQU1oQ1F3QkN5QUFJQW9nQWlBRElBUWdCU0FJSUFjZ0NCQU1JQW9oQUVFQUlRSUxBa0FnQjBVTkFDQUdRUUoySWcxRkRRQkJFQ0FHYXlFT0lBZ2dCbXNoRHlBQUlBZ2dDV3dnQW1wcVFRVnFJUUlEUUNBQ1FYOXFMUUFBSVFnZ0FrRithaTBBQUNFR0lBSkJmV290QUFBaEFDQUNRWHhxTFFBQUlRVWdBa0Y3YWkwQUFDRUpJQTBoQ3dOQUlBRWdBaTBBQUNJRElBa2dCU0FJYWlJRWF5QUFJQVpxUVJSc2FpQUVRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFPZ0FBSUFFZ0FpMEFBU0lFSUFVZ0JpQUlha0VVYkdvZ0FDQURhaUlGYXlBRlFRSjBhMnBCRUdwQkJYVkJzQzVxTFFBQU9nQUJJQUVnQWkwQUFpSU1JQUFnQXlBSWFrRVViR29nQkNBR2FpSUFheUFBUVFKMGEycEJFR3BCQlhWQnNDNXFMUUFBT2dBQ0lBRWdBaTBBQXlJUUlBWWdBeUFFYWtFVWJHb2dDQ0FNYWlJQWF5QUFRUUowYTJwQkVHcEJCWFZCc0M1cUxRQUFPZ0FESUFGQkJHb2hBU0FDUVFScUlRSWdDQ0VKSUFNaEJTQUVJUUFnRENFR0lCQWhDQ0FMUVg5cUlnc05BQXNnQVNBT2FpRUJJQUlnRDJvaEFpQUhRWDlxSWdjTkFBc0xJQXBCd0FOcUpBQUw5UU1CQzM4akFFSEFBMnNpQ3lRQUFrQUNRQ0FDUVFCSURRQWdBMEVBU0EwQUlBSWdCbW9nQkVzTkFDQURJQWRxUVFWcUlBVkxEUUFnQXlFSURBRUxJQUFnQ3lBQ0lBTWdCQ0FGSUFZZ0IwRUZhaUFHRUF3Z0N5RUFJQVloQkVFQUlRSUxBa0FnQjBFQ2RpSU1SUTBBSUFaRkRRQkJ3QUFnQm1zaEVTQUVRUUYwSVEwZ0JFRUNkQ0FHYXlFT1FRQWdCR3NpRDBFQmRDRVNJQUFnQkNBSWJDQUNhbW9nQkdvaUJ5QUVRUVZzYWlFQ0EwQWdCaUVBQTBBZ0FTQUhJQTFxTFFBQUlnTWdBaUFOYWkwQUFDQUNJQVJxTFFBQUlna2dBaUFTYWkwQUFDSUZhaUlJYXlBSVFRSjBhMm9nQWkwQUFDSUtJQUlnRDJvdEFBQWlDR3BCRkd4cVFSQnFRUVYxUWJBdWFpMEFBRG9BTUNBQklBUWdCMm90QUFBaUVDQUpJQVVnQ0dwQkZHeHFJQU1nQ21vaUNXc2dDVUVDZEd0cVFSQnFRUVYxUWJBdWFpMEFBRG9BSUNBQklBY3RBQUFpQ1NBS0lBTWdCV3BCRkd4cUlBZ2dFR29pQ21zZ0NrRUNkR3RxUVJCcVFRVjFRYkF1YWkwQUFEb0FFQ0FCSUFjZ0Qyb3RBQUFnQ0NBRElCQnFRUlJzYWlBRklBbHFJZ05ySUFOQkFuUnJha0VRYWtFRmRVR3dMbW90QUFBNkFBQWdCMEVCYWlFSElBRkJBV29oQVNBQ1FRRnFJUUlnQUVGL2FpSUFEUUFMSUFFZ0VXb2hBU0FDSUE1cUlRSWdCeUFPYWlFSElBeEJmMm9pREEwQUN3c2dDMEhBQTJva0FBdXFCZ0VOZnlNQVFiQUJheUlSSkFBZ0NFRUJhaUVLQWtBQ1FDQUNRUUJJRFFBZ0EwRUFTQTBBSUFJZ0Ntb2dCRXNOQUNBRElBbHFRUUZxSUFWTERRQWdCU0VNSUFRaENpQURJUThNQVFzZ0FDQVJJQUlnQXlBRUlBVWdDaUFKUVFGcUlnd2dDaEFNSUFBZ0JDQUZiR29nRVNBS0lBeHNhaUFDSUFNZ0JDQUZJQW9nRENBS0VBd2dFU0VBUVFBaEFnc0NRQ0FKUVFGMklnVkZEUUFnQ0VFQmRpSUVSUTBBUVJBZ0NHc2hFMEVJSUFkcklRdEJDQ0FHYXlFTklBcEJBWFFpRGlBSWF5RVVJQUFnQW1vaUZpQUtJQTlzYWlFQ0lBRWhBQ0FGSVJVRFFDQUNJQTVxTFFBQUlBZHNJQXNnQWlBS2FpMEFBQ0lEYkdvaENDQURJQWRzSUFzZ0FpMEFBR3hxSVFrZ0JDRURBMEFnQWtFQmFpSVFJQTVxTFFBQUlSSWdBQ0FKSUExc0lBb2dFR290QUFBaUNTQUhiQ0FMSUFJdEFBRnNhaUlRSUFac2FrRWdha0VHZGpvQUFDQUFJQWdnRFd3Z0J5QVNiQ0FKSUF0c2FpSUlJQVpzYWtFZ2FrRUdkam9BQ0NBQ0xRQUNJUWtnQWtFQ2FpSUNJQTVxTFFBQUlSSWdBQ0FOSUJCc0lBSWdDbW90QUFBaUVDQUhiQ0FKSUF0c2FpSUpJQVpzYWtFZ2FrRUdkam9BQVNBQUlBZ2dEV3dnQnlBU2JDQUxJQkJzYWlJSUlBWnNha0VnYWtFR2Rqb0FDU0FBUVFKcUlRQWdBMEYvYWlJRERRQUxJQUlnRkdvaEFpQUFJQk5xSVFBZ0ZVRi9haUlWRFFBTElBRkJRR3NoQUNBV0lBd2dEMm9nQ214cUlRSURRQ0FDSUE1cUxRQUFJQWRzSUFzZ0FpQUthaTBBQUNJQmJHb2hDQ0FCSUFkc0lBc2dBaTBBQUd4cUlRa2dCQ0VEQTBBZ0FrRUJhaUlCSUE1cUxRQUFJUXdnQUNBSklBMXNJQUVnQ21vdEFBQWlBU0FIYkNBTElBSXRBQUZzYWlJSklBWnNha0VnYWtFR2Rqb0FBQ0FBSUFnZ0RXd2dCeUFNYkNBQklBdHNhaUlCSUFac2FrRWdha0VHZGpvQUNDQUNMUUFDSVFnZ0FrRUNhaUlDSUE1cUxRQUFJUXdnQUNBSklBMXNJQUlnQ21vdEFBQWlEeUFIYkNBSUlBdHNhaUlKSUFac2FrRWdha0VHZGpvQUFTQUFJQUVnRFd3Z0J5QU1iQ0FMSUE5c2FpSUlJQVpzYWtFZ2FrRUdkam9BQ1NBQVFRSnFJUUFnQTBGL2FpSUREUUFMSUFJZ0ZHb2hBaUFBSUJOcUlRQWdCVUYvYWlJRkRRQUxDeUFSUWJBQmFpUUFDLzlFQVVGL0l3QkJzQUZySWdNa0FDQUFLQUlJSWdRRVFDQUFLQUlFSWg5QkEzUWhGaUFFSUI5c0lnUkJCblFoT3lBRVFRaDBJVHdnSDBFR2RDRTlJQjlCTUd3aFBpQWZRUVYwSVNVZ0gwRlFiQ0VyUVFBZ0gwRUVkQ0lhYXlJb1FRSjBJVDhnS0VFQmRDRXNJQU5CR0dvaElpQURRUXh5SVNNRFFBSkFJQUVvQWdnaUNVRUJSZzBBQWtBQ1FBSkFBa0FnQVNnQ3lBRWlBa1VFUUVFQklRWU1BUXRCQlNFR0lBbEJBa2NOQUVFRlFRRWdBU2dDQkNJSklBSW9BZ1JHR3lFR0lBRW9Bc3dCSWdRTkFVRUFJUVFNQXdzZ0FTZ0N6QUVpQkVVRVFFRUFJUVFNQXdzZ0NVRUNSdzBCSUFFb0FnUWhDUXNnQ1NBRUtBSUVSdzBCQ3lBR1FRSnlJUVlMQW44Z0JrRUNjU0l0QkVBQ1FDQUJLQUlBUVFWTkJFQWdCQ2dDQUVFR1NRMEJDeUFEUVFRMkFrQWdBMEVFTmdKSUlBTkJCRFlDT0NBRFFRUTJBakJCQVF3Q0MwRUNJUTlCQWlFSkFrQWdBUzhCSEEwQUlBUXZBVEFOQUVFQklRa2dBU2dDZENBRUtBSjhSdzBBSUFFdUFZUUJJQVF1QWF3QmF5SUZJQVZCSDNVaUJXb2dCWE5CQTBzTkFDQUJMZ0dHQVNBRUxnR3VBV3NpQ1NBSlFSOTFJZ2xxSUFselFRTkxJUWtMSUFNZ0NUWUNNQUpBSUFFdkFSNE5BQ0FFTHdFeURRQkJBU0VQSUFFb0FuUWdCQ2dDZkVjTkFDQUJMZ0dJQVNBRUxnR3dBV3NpQlNBRlFSOTFJZ1ZxSUFWelFRTkxEUUFnQVM0QmlnRWdCQzRCc2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFUEN5QURJQTgyQWpoQkFpRUZRUUloQ2dKQUlBRXZBU1FOQUNBRUx3RTREUUJCQVNFS0lBRW9BbmdnQkNnQ2dBRkhEUUFnQVM0QmxBRWdCQzRCdkFGcklnZ2dDRUVmZFNJSWFpQUljMEVEU3cwQUlBRXVBWllCSUFRdUFiNEJheUlJSUFoQkgzVWlDR29nQ0hOQkEwc2hDZ3NnQXlBS05nSkFBa0FnQVM4QkpnMEFJQVF2QVRvTkFFRUJJUVVnQVNnQ2VDQUVLQUtBQVVjTkFDQUJMZ0dZQVNBRUxnSEFBV3NpQ0NBSVFSOTFJZ2hxSUFoelFRTkxEUUFnQVM0Qm1nRWdCQzRCd2dGcklnUWdCRUVmZFNJRWFpQUVjMEVEU3lFRkN5QURJQVUyQWtnZ0NTQVBjaUFLY2lBRmNrRUFSd3dCQ3lBRFFRQTJBa0FnQTBFQU5nSklJQU5CQURZQ09DQURRUUEyQWpCQkFBc2hDUUpBQWtBQ1FBSkFJQVpCQkhFaUxnUkFBa0FnQVNnQ0FDSUdRUVZOQkVBZ0FpZ0NBRUVHU1EwQkN5QURRUVEyQW5RZ0EwRUVOZ0tVQVNBRFFRUTJBbFFnQTBFRU5nSTBRUUVoQ1F3Q0MwRUNJUTlCQWlFRUFrQWdBUzhCSEEwQUlBSXZBU1lOQUVFQklRUWdBU2dDZENBQ0tBSjRSdzBBSUFFdUFZUUJJQUl1QVpnQmF5SUZJQVZCSDNVaUJXb2dCWE5CQTBzTkFDQUJMZ0dHQVNBQ0xnR2FBV3NpQkNBRVFSOTFJZ1JxSUFSelFRTkxJUVFMSUFNZ0JEWUNOQUpBSUFFdkFTQU5BQ0FDTHdFcURRQkJBU0VQSUFFb0FuUWdBaWdDZUVjTkFDQUJMZ0dNQVNBQ0xnR2dBV3NpQlNBRlFSOTFJZ1ZxSUFWelFRTkxEUUFnQVM0QmpnRWdBaTRCb2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFUEN5QURJQTgyQWxSQkFpRUZRUUloQ2dKQUlBRXZBU3dOQUNBQ0x3RTJEUUJCQVNFS0lBRW9BbndnQWlnQ2dBRkhEUUFnQVM0QnBBRWdBaTRCdUFGcklnZ2dDRUVmZFNJSWFpQUljMEVEU3cwQUlBRXVBYVlCSUFJdUFib0JheUlJSUFoQkgzVWlDR29nQ0hOQkEwc2hDZ3NnQXlBS05nSjBBa0FnQVM4Qk1BMEFJQUl2QVRvTkFFRUJJUVVnQVNnQ2ZDQUNLQUtBQVVjTkFDQUJMZ0dzQVNBQ0xnSEFBV3NpQ0NBSVFSOTFJZ2hxSUFoelFRTkxEUUFnQVM0QnJnRWdBaTRCd2dGcklnVWdCVUVmZFNJRmFpQUZjMEVEU3lFRkN5QURJQVUyQXBRQklBbEZEUUpCQVNFSkRBTUxJQU5CQURZQ2RDQURRUUEyQXBRQklBTkJBRFlDVkNBRFFRQTJBalFnQVNnQ0FDRUdDeUFHUVFaSkRRRWdBMEVETmdLZ0FTQURRb09BZ0lBd053S2tBU0FEUVFNMkFwQUJJQU5CQXpZQ2NDQURRUU0yQXF3QklBTkNnNENBZ0RBM0E1Z0JJQU5DZzRDQWdEQTNBNGdCSUFOQ2c0Q0FnREEzQTRBQklBTkNnNENBZ0RBM0EzZ2dBMEtEZ0lDQU1EY0RhQ0FEUW9PQWdJQXdOd05nSUFOQ2c0Q0FnREEzQTFnZ0EwS0RnSUNBTURjQ1RDQURRUU0yQWtRZ0EwRUROZ0k4REFJTElBUWdEM0lnQ25JZ0JYSkJBRWNoQ1FzQ1FBSi9JQVpCQTAwRVFDQUdRUUowUVl3MWFpZ0NBQXdCQzBFRUMwRUJSZ1JBSUFFZ0EwRXdhaEJFSUFNb0Fxd0JJUWNnQXlnQ3BBRWhEaUFES0FLY0FTRVFJQU1vQW93QklSa2dBeWdDaEFFaEJpQURLQUo4SVJjZ0F5Z0NiQ0VJSUFNb0FtUWhCQ0FES0FKY0lSUWdBeWdDVENFTUlBTW9Ba1FoQWlBREtBSThJUkVnQXlnQ3FBRWhIQ0FES0FLZ0FTRW1JQU1vQXBnQklRMGdBeWdDa0FFaEhTQURLQUtJQVNFU0lBTW9Bb0FCSVJVZ0F5Z0NlQ0ViSUFNb0FuQWhFeUFES0FKb0lRb2dBeWdDWUNFUElBTW9BbGdoQlNBREtBSlFJU2NNQVFzZ0F3Si9Ba0FnQXdKL0FrQUNRQ0FCS0FJQVFYNXFJZ1JCQVUwRVFDQUVRUUZyQkVBZ0F3Si9Ba0FnQVM4QklDSUVEUUFnQVM4QkhBMEFRUUFNQVF0QkFnc2lKellDVUNBREFuOENRQ0FCTHdFaUlnY05BQ0FCTHdFZURRQkJBQXdCQzBFQ0N5SUZOZ0pZSUFNQ2Z3SkFJQUV2QVNnaUJnMEFJQUV2QVNRTkFFRUFEQUVMUVFJTElnODJBbUFnQXdKL0FrQWdBUzhCS2lJT0RRQWdBUzhCSmcwQVFRQU1BUXRCQWdzaUNqWUNhQ0FEQW44Q1FDQUJMd0V3SWg0TkFDQUJMd0VzRFFCQkFBd0JDMEVDQ3lJZE5nS1FBU0FEQW44Q1FDQUJMd0V5SWhBTkFDQUJMd0V1RFFCQkFBd0JDMEVDQ3lJTk5nS1lBU0FEQW44Q1FDQUJMd0U0SWdzTkFDQUJMd0UwRFFCQkFBd0JDMEVDQ3lJbU5nS2dBU0FEQW44Q1FDQUJMd0U2SWhnTkFDQUJMd0UyRFFCQkFBd0JDMEVDQ3lJY05nS29BVUVDSVJ0QkFpRVRBa0FnQkNBQkx3RXNJaGR5RFFCQkFTRVRJQUV1QWFRQklBRXVBWXdCYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBQkxnR21BU0FCTGdHT0FXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWdBU2dDZkNBQktBSjBSeUVUQ3lBRElCTTJBbkFDUUNBSElBRXZBUzRpSUhJTkFFRUJJUnNnQVM0QnFBRWdBUzRCa0FGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRXVBYW9CSUFFdUFaSUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQ0FCS0FKOElBRW9BblJISVJzTElBTWdHellDZUVFQ0lSSkJBaUVWQWtBZ0JpQUJMd0UwSWhseURRQkJBU0VWSUFFdUFiUUJJQUV1QVp3QmF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTkFDQUJMZ0cyQVNBQkxnR2VBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVNnQ2dBRWdBU2dDZUVjaEZRc2dBeUFWTmdLQUFRSkFJQTRnQVM4Qk5pSWhjZzBBUVFFaEVpQUJMZ0c0QVNBQkxnR2dBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVM0QnVnRWdBUzRCb2dGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRW9Bb0FCSUFFb0FuaEhJUklMSUFNZ0VqWUNpQUVnQVM4QkhnMENJQUV2QVJ3RVFFRUNJUkVnQTBFQ05nSThJQUV2QVNRaUNBMEdRUUFoREVFQURBY0xRUUFoRVNBRFFRQTJBanhCQUNFTVFRQWdBUzhCSkNJSVJRMEdHZ3dGQ3lBREFuOENRQ0FCTHdFZ0lnSU5BQ0FCTHdFY0RRQkJBQXdCQzBFQ0N5SW5OZ0pRSUFNQ2Z3SkFJQUV2QVNJaUJnMEFJQUV2QVI0TkFFRUFEQUVMUVFJTElnVTJBbGdnQXdKL0FrQWdBUzhCS0NJT0RRQWdBUzhCSkEwQVFRQU1BUXRCQWdzaUR6WUNZQ0FEQW44Q1FDQUJMd0VxSWdnTkFDQUJMd0VtRFFCQkFBd0JDMEVDQ3lJS05nSm9JQU1nQWlBQkx3RXNJaGR5UVFCSFFRRjBJaE0yQW5BZ0F5QUdJQUV2QVM0aUMzSkJBRWRCQVhRaUd6WUNlQ0FESUE0Z0FTOEJOQ0llY2tFQVIwRUJkQ0lWTmdLQUFTQURJQWdnQVM4Qk5pSVpja0VBUjBFQmRDSVNOZ0tJQVNBRElBRXZBVEFpRUNBWGNrRUFSMEVCZENJZE5nS1FBU0FESUFFdkFUSWlJQ0FMY2tFQVIwRUJkQ0lOTmdLWUFTQURJQUV2QVRnaUlTQWVja0VBUjBFQmRDSW1OZ0tnQVNBRElBRXZBVG9pQnlBWmNrRUFSMEVCZENJY05nS29BU0FEQW44Q1FDQUJMd0VlSWlRTkFDQUJMd0VjRFFCQkFBd0JDMEVDQ3lJUk5nSThJQUV2QVNZRVFDQUJMd0VrSVJnTUF3c2dBUzhCSkNJWURRSkJBQ0VZUVFBTUF3c2dBUzRCaGdFaEZDQUJMZ0dPQVNFRVFRSWhCU0FEQW45QkFpQUJMd0VjSWhFZ0FTOEJJQ0l2Y2cwQUdrRUJJQUV1QVl3QklBRXVBWVFCYXlJR0lBWkJIM1VpQm1vZ0JuTkJBMHNOQUJvZ0JDQVVheUlHSUFaQkgzVWlCbW9nQm5OQkEwc0xJaWMyQWxBZ0FTNEJpZ0VoQ0NBQkxnR1NBU0VHQWtBZ0FTOEJIaUl3SUFFdkFTSWlFSElOQUVFQklRVWdBUzRCa0FFZ0FTNEJpQUZySWdJZ0FrRWZkU0lDYWlBQ2MwRURTdzBBSUFZZ0NHc2lCU0FGUVI5MUlnVnFJQVZ6UVFOTElRVUxJQU1nQlRZQ1dDQUJMZ0dXQVNFTUlBRXVBWjRCSVFkQkFpRUtJQU1DZjBFQ0lBRXZBU1FpTVNBQkx3RW9JaGR5RFFBYVFRRWdBUzRCbkFFZ0FTNEJsQUZySWdJZ0FrRWZkU0lDYWlBQ2MwRURTdzBBR2lBSElBeHJJZ0lnQWtFZmRTSUNhaUFDYzBFRFN3c2lEellDWUNBQkxnR2FBU0V5SUFFdUFhSUJJUXNDUUNBQkx3RW1Ja0FnQVM4QktpSXpjZzBBUVFFaENpQUJMZ0dnQVNBQkxnR1lBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQ3lBeWF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzaENnc2dBeUFLTmdKb0lBRXVBYVlCSVI1QkFpRWJRUUloRXdKQUlDOGdBUzhCTENJMGNnMEFRUUVoRXlBQkxnR2tBU0FCTGdHTUFXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWdIaUFFYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBQktBSjhJQUVvQW5SSElSTUxJQU1nRXpZQ2NDQUJMZ0dxQVNFT0FrQWdFQ0FCTHdFdUloaHlEUUJCQVNFYklBRXVBYWdCSUFFdUFaQUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQ0FPSUFacklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlBRW9BbndnQVNnQ2RFY2hHd3NnQXlBYk5nSjRJQUV1QWJZQklSbEJBaUVTUVFJaEZRSkFJQmNnQVM4Qk5DSWdjZzBBUVFFaEZTQUJMZ0cwQVNBQkxnR2NBV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnR1NBSGF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTkFDQUJLQUtBQVNBQktBSjRSeUVWQ3lBRElCVTJBb0FCSUFFdUFib0JJU0VDUUNBeklBRXZBVFlpTlhJTkFFRUJJUklnQVM0QnVBRWdBUzRCb0FGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlDRWdDMnNpQWlBQ1FSOTFJZ0pxSUFKelFRTkxEUUFnQVNnQ2dBRWdBU2dDZUVjaEVnc2dBeUFTTmdLSUFTQUJMZ0d1QVNFMlFRSWhEU0FEQW45QkFpQTBJQUV2QVRBaVFYSU5BQnBCQVNBQkxnR3NBU0FCTGdHa0FXc2lBaUFDUVI5MUlnSnFJQUp6UVFOTERRQWFJRFlnSG1zaUFpQUNRUjkxSWdKcUlBSnpRUU5MQ3lJZE5nS1FBU0FCTGdHeUFTRWtBa0FnR0NBQkx3RXlJamR5RFFCQkFTRU5JQUV1QWJBQklBRXVBYWdCYXlJQ0lBSkJIM1VpQW1vZ0FuTkJBMHNOQUNBa0lBNXJJZ0lnQWtFZmRTSUNhaUFDYzBFRFN5RU5DeUFESUEwMkFwZ0JJQUV1QWI0QklTbEJBaUVjSUFNQ2YwRUNJQ0FnQVM4Qk9DSTRjZzBBR2tFQklBRXVBYndCSUFFdUFiUUJheUlDSUFKQkgzVWlBbW9nQW5OQkEwc05BQm9nS1NBWmF5SUNJQUpCSDNVaUFtb2dBbk5CQTBzTElpWTJBcUFCSUFFdUFjSUJJVGtDUUNBMUlBRXZBVG9pUW5JTkFFRUJJUndnQVM0QndBRWdBUzRCdUFGcklnSWdBa0VmZFNJQ2FpQUNjMEVEU3cwQUlEa2dJV3NpQWlBQ1FSOTFJZ0pxSUFKelFRTkxJUndMSUFNZ0hEWUNxQUZCQWlFQ0lBTUNmMEVDSUJFZ01ISU5BQnBCQVNBQkxnR0lBU0FCTGdHRUFXc2lFU0FSUVI5MUloRnFJQkZ6UVFOTERRQWFJQWdnRkdzaUZDQVVRUjkxSWhScUlCUnpRUU5MQ3lJUk5nSThBa0FnTUNBeGNnMEFRUUVoQWlBQkxnR1VBU0FCTGdHSUFXc2lGQ0FVUVI5MUloUnFJQlJ6UVFOTERRQWdEQ0FJYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUNBQktBSjRJQUVvQW5SSElRSUxJQU1nQWpZQ1JFRUNJUlFnQXdKL1FRSWdNU0JBY2cwQUdrRUJJQUV1QVpnQklBRXVBWlFCYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUJvZ01pQU1heUlJSUFoQkgzVWlDR29nQ0hOQkEwc0xJZ3cyQWt3Q1FDQVFJQzl5RFFCQkFTRVVJQUV1QVpBQklBRXVBWXdCYXlJSUlBaEJIM1VpQ0dvZ0NITkJBMHNOQUNBR0lBUnJJZ1FnQkVFZmRTSUVhaUFFYzBFRFN5RVVDeUFESUJRMkFseEJBaUVJUVFJaEJBSkFJQkFnRjNJTkFFRUJJUVFnQVM0Qm5BRWdBUzRCa0FGckloQWdFRUVmZFNJUWFpQVFjMEVEU3cwQUlBY2dCbXNpQmlBR1FSOTFJZ1pxSUFaelFRTkxEUUFnQVNnQ2VDQUJLQUowUnlFRUN5QURJQVEyQW1RQ1FDQVhJRE55RFFCQkFTRUlJQUV1QWFBQklBRXVBWndCYXlJR0lBWkJIM1VpQm1vZ0JuTkJBMHNOQUNBTElBZHJJZ1lnQmtFZmRTSUdhaUFHYzBFRFN5RUlDeUFESUFnMkFteEJBaUVHSUFNQ2YwRUNJQmdnTkhJTkFCcEJBU0FCTGdHb0FTQUJMZ0drQVdzaUJ5QUhRUjkxSWdkcUlBZHpRUU5MRFFBYUlBNGdIbXNpQnlBSFFSOTFJZ2RxSUFkelFRTkxDeUlYTmdKOEFrQWdHQ0FnY2cwQVFRRWhCaUFCTGdHMEFTQUJMZ0dvQVdzaUJ5QUhRUjkxSWdkcUlBZHpRUU5MRFFBZ0dTQU9heUlISUFkQkgzVWlCMm9nQjNOQkEwc05BQ0FCS0FLQUFTQUJLQUo4UnlFR0N5QURJQVkyQW9RQlFRSWhFQ0FEQW45QkFpQWdJRFZ5RFFBYVFRRWdBUzRCdUFFZ0FTNEJ0QUZySWdjZ0IwRWZkU0lIYWlBSGMwRURTdzBBR2lBaElCbHJJZ2NnQjBFZmRTSUhhaUFIYzBFRFN3c2lHVFlDakFFQ1FDQTNJRUZ5RFFCQkFTRVFJQUV1QWJBQklBRXVBYXdCYXlJSElBZEJIM1VpQjJvZ0IzTkJBMHNOQUNBa0lEWnJJZ2NnQjBFZmRTSUhhaUFIYzBFRFN5RVFDeUFESUJBMkFwd0JRUUloQjBFQ0lRNENRQ0EzSURoeURRQkJBU0VPSUFFdUFid0JJQUV1QWJBQmF5SUxJQXRCSDNVaUMyb2dDM05CQTBzTkFDQXBJQ1JySWdzZ0MwRWZkU0lMYWlBTGMwRURTdzBBSUFFb0FvQUJJQUVvQW54SElRNExJQU1nRGpZQ3BBRUNRQ0E0SUVKeURRQkJBU0VISUFFdUFjQUJJQUV1QWJ3QmF5SUxJQXRCSDNVaUMyb2dDM05CQTBzTkFDQTVJQ2xySWdjZ0IwRWZkU0lIYWlBSGMwRURTeUVIQ3lBRElBYzJBcXdCREFVTFFRSWhFU0FEUVFJMkFqd2dBUzhCSkNFSURBSUxRUUlMSWd3MkFreEJBaUVFSUFOQkFpQUlRUUJIUVFGMElBNGJJZ2cyQW13Z0EwRUNJQVpCQUVkQkFYUWdBaHNpRkRZQ1hDQURJQWNnSVhKQkFFZEJBWFFpQnpZQ3JBRWdBeUFRSUNCeVFRQkhRUUYwSWhBMkFwd0JJQU1nR1NBZWNrRUFSMEVCZENJWk5nS01BU0FESUFzZ0YzSkJBRWRCQVhRaUZ6WUNmRUVDSVFJQ1FDQVlJQ1J5RFFCQkFTRUNJQUV1QVpRQklBRXVBWWdCYXlJWUlCaEJIM1VpR0dvZ0dITkJBMHNOQUNBQkxnR1dBU0FCTGdHS0FXc2lHQ0FZUVI5MUloaHFJQmh6UVFOTERRQWdBU2dDZUNBQktBSjBSeUVDQ3lBRElBSTJBa1FDUUNBR0lBNXlEUUJCQVNFRUlBRXVBWndCSUFFdUFaQUJheUlHSUFaQkgzVWlCbW9nQm5OQkEwc05BQ0FCTGdHZUFTQUJMZ0dTQVdzaUJpQUdRUjkxSWdacUlBWnpRUU5MRFFBZ0FTZ0NlQ0FCS0FKMFJ5RUVDeUFESUFRMkFtUkJBaUVPUVFJaEJnSkFJQXNnSG5JTkFFRUJJUVlnQVM0QnRBRWdBUzRCcUFGcklnc2dDMEVmZFNJTGFpQUxjMEVEU3cwQUlBRXVBYllCSUFFdUFhb0JheUlMSUF0QkgzVWlDMm9nQzNOQkEwc05BQ0FCS0FLQUFTQUJLQUo4UnlFR0N5QURJQVkyQW9RQkFrQWdJQ0FoY2cwQVFRRWhEaUFCTGdHOEFTQUJMZ0d3QVdzaUN5QUxRUjkxSWd0cUlBdHpRUU5MRFFBZ0FTNEJ2Z0VnQVM0QnNnRnJJZ3NnQzBFZmRTSUxhaUFMYzBFRFN3MEFJQUVvQW9BQklBRW9BbnhISVE0TElBTWdEallDcEFFTUFnc2dDQ0VNUVFJTElnSTJBa1FnQXlBQkx3RW1JQXhCLy84RGNYSkJBRWRCQVhRaUREWUNUQ0FEQW44Q1FDQUhSUVJBSUFRRVFFRUNJUlFnQTBFQ05nSmNJQVlOQWtFQURBTUxRUUFoRkNBRFFRQTJBbHhCQUNBR1JRMENHZ3dCQzBFQ0lSUWdBMEVDTmdKY0MwRUNDeUlFTmdKa0lBTkJBaUFPUVFCSFFRRjBJQVliSWdnMkFtd2dBd0ovQWtBZ0lFVUVRQ0FYQkVCQkFpRVhJQU5CQWpZQ2ZDQVpEUUpCQUF3REMwRUFJUmNnQTBFQU5nSjhRUUFnR1VVTkFob01BUXRCQWlFWElBTkJBallDZkF0QkFnc2lCallDaEFFZ0F5QUxJQmh5UVFCSFFRRjBJZ2MyQXF3QklBTWdDeUFRY2tFQVIwRUJkQ0lPTmdLa0FTQURRUUlnRUVFQVIwRUJkQ0FlR3lJUU5nS2NBU0FESUJrZ0lYSkJBRWRCQVhRaUdUWUNqQUVMSUFrZ0ozSWdCWElnRDNJZ0NuSWdFM0lnRzNJZ0ZYSWdFbklnSFhJZ0RYSWdKbklnSEhJZ0VYSWdBbklnREhJZ0ZISWdCSElnQ0hJZ0YzSWdCbklnR1hJZ0VISWdEbklnQjNKRkRRRUxJQUVvQWd3aENTQURJQUVvQWhBaUJTQUJLQUlVSWdScUlnWkJNeUFHUVROSUd5SUdRUUFnQmtFQVNodEIwQmRxTFFBQUlnWTJBaUFnQXlBRUlBbHFJZ0pCTXlBQ1FUTklHeUlDUVFBZ0FrRUFTaHNpQ0VHUUYyb3RBQUFpQWpZQ0hDQURJQWhCQTJ4QmtCaHFJZ2cyQWhnQ1FDQXRSUTBBSUFRZ0FTZ0N6QUVvQWhRaUIwY0VRQ0FESUFRZ0IycEJBV3BCQVhZaUJ5QUZhaUlOUVRNZ0RVRXpTQnNpRFVFQUlBMUJBRW9iUWRBWGFpMEFBRFlDQ0NBRElBY2dDV29pQjBFeklBZEJNMGdiSWdkQkFDQUhRUUJLR3lJSFFaQVhhaTBBQURZQ0JDQURJQWRCQTJ4QmtCaHFOZ0lBREFFTElBTWdCallDQ0NBRElBSTJBZ1FnQXlBSU5nSUFDd0pBSUM1RkRRQWdCQ0FCS0FMSUFTZ0NGQ0lIUndSQUlBTWdCQ0FIYWtFQmFrRUJkaUlFSUFWcUlnVkJNeUFGUVROSUd5SUZRUUFnQlVFQVNodEIwQmRxTFFBQU5nSVVJQU1nQkNBSmFpSUVRVE1nQkVFelNCc2lCRUVBSUFSQkFFb2JJZ1JCa0JkcUxRQUFOZ0lRSUFNZ0JFRURiRUdRR0dvMkFnd01BUXNnQXlBR05nSVVJQU1nQWpZQ0VDQURJQWcyQWd3TElBQW9BZ0FnSHlBNmJDSVVRUWgwYWlBcVFRUjBhaUVKUVFBaEFrRURJUVFnQTBFd2FpRUdBMEFnQmlnQ0JDSUZCRUFnQ1NBRklDTWdHaEFaQ3lBR0tBSU1JZ1VFUUNBSlFRUnFJQVVnSWlBYUVCa0xJQVlvQWhRaUJRUkFJQWxCQ0dvZ0JTQWlJQm9RR1FzZ0JpZ0NIQ0lGQkVBZ0NVRU1haUFGSUNJZ0doQVpDeUFFSVFnQ1FBSkFBa0FnQmlnQ0FDSUVJQVlvQWdnaUQwY05BQ0FFSUFZb0FoQkhEUUFnQkNBR0tBSVlSdzBBSUFSRkRRSWdBeUFDUVF4c2FpSUZLQUlJSVF3Z0JTZ0NCQ0ViSUFSQkJFa05BU0FiUVFKMlFRSnFJUkJCRUNFUElBa2hCQU5BQWtBZ0JDQW9haUlDTFFBQUlnb2dCQzBBQUNJT2F5SUZJQVZCSDNVaUJXb2dCWE1pQnlBYlR3MEFJQVFnTEdvaUVTMEFBQ0lGSUFwcklnMGdEVUVmZFNJTmFpQU5jeUFNVHcwQUlBUWdHbW9pSEMwQUFDSVNJQTVySWcwZ0RVRWZkU0lOYWlBTmN5QU1UdzBBQWtBZ0J5QVFTUVJBSUFRZ0pXb2lGeTBBQUNFVkFuOGdCQ0FyYWlJTkxRQUFJaE1nQ21zaUJ5QUhRUjkxSWdkcUlBZHpJQXhKQkVCQkF5RWRJQUlnRWlBS0lBNXFJQVZxSWdKQkFYUnFJQk5xUVFScVFRTjJPZ0FBSUJFZ0FpQVRha0VDYWtFQ2Rqb0FBQ0FDUVFScUlSRWdCQ0EvYWkwQUFDRUhJQk5CQTJ3TUFRc2dDaUFTYWlFUklBVWhCMEVDSVIwZ0FpRU5RUUlMSVFJZ0RTQUNJQkZxSUFkQkFYUnFJQjEyT2dBQUlCVWdEbXNpQWlBQ1FSOTFJZ0pxSUFKeklBeFBEUUVnQkNBRklBb2dFbW9nRG1vaUFrRUJkR29nRldwQkJHcEJBM1k2QUFBZ0hDQUNJQlZxUVFKcVFRSjJPZ0FBSUJjZ0FpQVZRUU5zYWlBRUlENXFMUUFBUVFGMGFrRUVha0VEZGpvQUFBd0NDeUFDSUFvZ0Vtb2dCVUVCZEdwQkFtcEJBblk2QUFBTElBUWdCU0FPYWlBU1FRRjBha0VDYWtFQ2Rqb0FBQXNnQkVFQmFpRUVJQTlCZjJvaUR3MEFDd3dDQ3dKL0lBUUVRQ0FKSUFRZ0F5QUNRUXhzYWlBYUVCZ2dCaWdDQ0NFUEN5QVBDd1JBSUFsQkJHb2dEeUFESUFKQkRHeHFJQm9RR0FzZ0JpZ0NFQ0lFQkVBZ0NVRUlhaUFFSUFNZ0FrRU1iR29nR2hBWUN5QUdLQUlZSWdSRkRRRWdDVUVNYWlBRUlBTWdBa0VNYkdvZ0doQVlEQUVMSUFRZ0JTZ0NBR3BCZjJvdEFBQWlBa0VCYWlFSFFRQWdBbXNoRGtFUUlROGdDU0VFQTBBQ1FDQUVJQ2hxSWhNdEFBQWlEU0FFTFFBQUlncHJJZ1VnQlVFZmRTSUZhaUFGY3lBYlR3MEFJQVFnTEdvaUVTMEFBQ0lTSUExcklnVWdCVUVmZFNJRmFpQUZjeUFNVHcwQUlBUWdHbW9pRUMwQUFDSVZJQXBySWdVZ0JVRWZkU0lGYWlBRmN5QU1UdzBBSUFJaEJTQUVJQ3RxTFFBQUlod2dEV3NpSFNBZFFSOTFJaDFxSUIxeklBeEpCRUFnRVNBU0lBNGdBaUFLSUExcVFRRnFRUUYySUJKQkFYUnJJQnhxUVFGMUlnVWdCU0FDU2hzZ0JTQU9TQnRxT2dBQUlBY2hCUXNnRXlBTkFuOGdCQ0FsYWkwQUFDSVRJQXBySWhFZ0VVRWZkU0lSYWlBUmN5QU1TUVJBSUJBZ0ZTQU9JQUlnQ2lBTmFrRUJha0VCZGlBVlFRRjBheUFUYWtFQmRTSVRJQk1nQWtvYklCTWdEa2diYWpvQUFDQUZRUUZxSVFVTFFRQWdCV3NpRXdzZ0JTQVNJQlZySUFvZ0RXdEJBblJxUVFScVFRTjFJaElnRWlBRlNoc2dFaUFUU0JzaUJXcEJzQzVxTFFBQU9nQUFJQVFnQ2lBRmEwR3dMbW90QUFBNkFBQUxJQVJCQVdvaEJDQVBRWDlxSWc4TkFBc0xJQWhCZjJvaEJDQUdRU0JxSVFZZ0NTQTlhaUVKUVFJaEFpQUlEUUFMSUFFb0Fnd2hCQ0FESUFFb0FoQWlCU0FCS0FJVUlnWWdBU2dDR0NJQ2FpSUpRVE1nQ1VFelNCc2lDVUVBSUFsQkFFb2JRUUowUWVBOWFpZ0NBQ0lKYWlJSVFUTWdDRUV6U0JzaUNFRUFJQWhCQUVvYlFkQVhhaTBBQUNJSU5nSWdJQU1nQkNBSmFpSUhRVE1nQjBFelNCc2lCMEVBSUFkQkFFb2JJZzFCa0JkcUxRQUFJZ2MyQWh3Z0F5QU5RUU5zUVpBWWFpSU5OZ0lZQWtBZ0xVVU5BQ0FHSUFFb0Fzd0JLQUlVSWd4SEJFQWdBeUFKSUFJZ0RHb2lERUV6SUF4Qk0wZ2JJZ3hCQUNBTVFRQktHMEVDZEVIZ1BXb29BZ0JxUVFGcVFRRjJJZ3dnQldvaUQwRXpJQTlCTTBnYklnOUJBQ0FQUVFCS0cwSFFGMm90QUFBMkFnZ2dBeUFFSUF4cUlneEJNeUFNUVROSUd5SU1RUUFnREVFQVNoc2lERUdRRjJvdEFBQTJBZ1FnQXlBTVFRTnNRWkFZYWpZQ0FBd0JDeUFESUFnMkFnZ2dBeUFITmdJRUlBTWdEVFlDQUFzQ1FDQXVSUTBBSUFZZ0FTZ0N5QUVvQWhRaURFY0VRQ0FESUFVZ0NTQUNJQXhxSWdaQk15QUdRVE5JR3lJR1FRQWdCa0VBU2h0QkFuUkI0RDFxS0FJQWFrRUJha0VCZGlJSmFpSUZRVE1nQlVFelNCc2lCVUVBSUFWQkFFb2JRZEFYYWkwQUFEWUNGQ0FESUFRZ0NXb2lCRUV6SUFSQk0wZ2JJZ1JCQUNBRVFRQktHeUlFUVpBWGFpMEFBRFlDRUNBRElBUkJBMnhCa0JocU5nSU1EQUVMSUFNZ0NEWUNGQ0FESUFjMkFoQWdBeUFOTmdJTUN5QUFLQUlBSUR4cUlCUkJCblJxSUNwQkEzUnFJZ2tnTzJvaEJFRUFJUW9nQTBFd2FpRUdRUUFoQWdOQUlBWW9BZ1FpQlFSQUlBa2dCU0FqSUJZUUVDQUVJQVlvQWdRZ0l5QVdFQkFMSUFZb0FpUWlCUVJBSUFrZ0dtb2dCU0FqSUJZUUVDQUVJQnBxSUFZb0FpUWdJeUFXRUJBTElBWW9BaFFpQlFSQUlBbEJCR29nQlNBaUlCWVFFQ0FFUVFScUlBWW9BaFFnSWlBV0VCQUxJQVlvQWpRaUJRUkFJQWtnR21wQkJHb2dCU0FpSUJZUUVDQUVJQnBxUVFScUlBWW9BalFnSWlBV0VCQUxJQUloQlFKQUFrQWdCaWdDQUNJQ0lBWW9BZ2dpRDBjTkFDQUNJQVlvQWhCSERRQWdBaUFHS0FJWVJ3MEFJQUpGRFFFZ0NTQUNJQU1nQ2tFTWJHb2lBaUFXRUNzZ0JDQUdLQUlBSUFJZ0ZoQXJEQUVMQW44Z0FnUkFJQWtnQWlBRElBcEJER3hxSWdJZ0ZoQVNJQVFnQmlnQ0FDQUNJQllRRWlBR0tBSUlJUThMSUE4TEJFQWdDVUVDYWlBUElBTWdDa0VNYkdvaUFpQVdFQklnQkVFQ2FpQUdLQUlJSUFJZ0ZoQVNDeUFHS0FJUUlnSUVRQ0FKUVFScUlBSWdBeUFLUVF4c2FpSUNJQllRRWlBRVFRUnFJQVlvQWhBZ0FpQVdFQklMSUFZb0FoZ2lBa1VOQUNBSlFRWnFJQUlnQXlBS1FReHNhaUlDSUJZUUVpQUVRUVpxSUFZb0FoZ2dBaUFXRUJJTElBUWdKV29oQkNBSklDVnFJUWtnQmtGQWF5RUdRUUVoQWtFQ0lRb2dCVVVOQUFzTFFRQWdLa0VCYWlJRUlBUWdIMFlpQkJzaEtpQUJRZGdCYWlFQklBUWdPbW9pT2lBQUtBSUlTUTBBQ3dzZ0EwR3dBV29rQUF1Q0JRRUtmeU1BUVpBQmF5SUxKQUFDUUFKQUlBSkJBRWdOQUNBRFFRQklEUUFnQWlBSGFpQUVTdzBBSUFNZ0NHcEJBV29nQlVzTkFDQUZJUXdnQXlFT0RBRUxJQUFnQ3lBQ0lBTWdCQ0FGSUFjZ0NFRUJhaUlNSUFjUURDQUFJQVFnQld4cUlBc2dCeUFNYkdvZ0FpQURJQVFnQlNBSElBd2dCeEFNSUFzaEFDQUhJUVJCQUNFQ0N3SkFJQWhCQVhZaUJVVU5BQ0FIUVFGMklnTkZEUUJCRUNBSGF5RVFRUWdnQm1zaENTQUVRUUYwSWcwZ0Iyc2hFU0FBSUFKcUloSWdCQ0FPYkdvaEJ5QUJJUUlnQlNFSUEwQWdBeUVBQTBBZ0J5QU5haTBBQUNFS0lBSWdDU0FITFFBQWJDQUVJQWRxTFFBQUlnOGdCbXhxUVFOMFFTQnFRUVoyT2dBQUlBSWdDU0FQYkNBR0lBcHNha0VEZEVFZ2FrRUdkam9BQ0NBSFFRRnFJZ29nRFdvdEFBQWhEeUFDSUFrZ0J5MEFBV3dnQkNBS2FpMEFBQ0lLSUFac2FrRURkRUVnYWtFR2Rqb0FBU0FDSUFrZ0Ntd2dCaUFQYkdwQkEzUkJJR3BCQm5ZNkFBa2dBa0VDYWlFQ0lBZEJBbW9oQnlBQVFYOXFJZ0FOQUFzZ0J5QVJhaUVISUFJZ0VHb2hBaUFJUVg5cUlnZ05BQXNnQVVGQWF5RUNJQklnRENBT2FpQUViR29oQndOQUlBTWhBQU5BSUFjZ0RXb3RBQUFoQVNBQ0lBa2dCeTBBQUd3Z0JDQUhhaTBBQUNJSUlBWnNha0VEZEVFZ2FrRUdkam9BQUNBQ0lBZ2dDV3dnQVNBR2JHcEJBM1JCSUdwQkJuWTZBQWdnQjBFQmFpSUJJQTFxTFFBQUlRZ2dBaUFKSUFjdEFBRnNJQUVnQkdvdEFBQWlBU0FHYkdwQkEzUkJJR3BCQm5ZNkFBRWdBaUFCSUFsc0lBWWdDR3hxUVFOMFFTQnFRUVoyT2dBSklBSkJBbW9oQWlBSFFRSnFJUWNnQUVGL2FpSUFEUUFMSUFjZ0VXb2hCeUFDSUJCcUlRSWdCVUYvYWlJRkRRQUxDeUFMUVpBQmFpUUFDLzBFQVF0L0l3QkJrQUZySWd3a0FDQUhRUUZxSVFrQ1FBSkFJQUpCQUVnTkFDQURJQWhxSUFWTERRQWdBMEVBU0EwQUlBSWdDV29nQkVzTkFDQUVJUWtnQXlFTERBRUxJQUFnRENBQ0lBTWdCQ0FGSUFrZ0NDQUpFQXdnQUNBRUlBVnNhaUFNSUFnZ0NXeHFJQUlnQXlBRUlBVWdDU0FJSUFrUURDQU1JUUFnQ0NFRlFRQWhBZ3NDUUNBSVFRRjJJZ2hGRFFBZ0IwRUJkaUlFUlEwQVFSQWdCMnNoRGtFSUlBWnJJUW9nQ1VFQmRDQUhheUVQSUFBZ0Ftb2lFU0FKSUF0c2FpRUNJQUVoQXlBSUlRQURRQ0FFSVFjRFFDQUNRUUZxSUFscUxRQUFJUkFnQWlBSmFpMEFBQ0VOSUFNZ0FpMEFBU0lTSUFac0lBb2dBaTBBQUd4cVFRTjBRU0JxUVFaMk9nQUFJQU1nQmlBUWJDQUtJQTFzYWtFRGRFRWdha0VHZGpvQUNDQUNMUUFDSVEwZ0FrRUNhaUlDSUFscUxRQUFJUk1nQXlBR0lBMXNJQW9nRW14cVFRTjBRU0JxUVFaMk9nQUJJQU1nQmlBVGJDQUtJQkJzYWtFRGRFRWdha0VHZGpvQUNTQURRUUpxSVFNZ0IwRi9haUlIRFFBTElBSWdEMm9oQWlBRElBNXFJUU1nQUVGL2FpSUFEUUFMSUFGQlFHc2hBeUFSSUFVZ0Myb2dDV3hxSVFJRFFDQUVJUWNEUUNBQ1FRRnFJQWxxTFFBQUlRQWdBaUFKYWkwQUFDRUJJQU1nQWkwQUFTSUZJQVpzSUFvZ0FpMEFBR3hxUVFOMFFTQnFRUVoyT2dBQUlBTWdBQ0FHYkNBQklBcHNha0VEZEVFZ2FrRUdkam9BQ0NBQ0xRQUNJUUVnQWtFQ2FpSUNJQWxxTFFBQUlRc2dBeUFCSUFac0lBVWdDbXhxUVFOMFFTQnFRUVoyT2dBQklBTWdCaUFMYkNBQUlBcHNha0VEZEVFZ2FrRUdkam9BQ1NBRFFRSnFJUU1nQjBGL2FpSUhEUUFMSUFJZ0Qyb2hBaUFESUE1cUlRTWdDRUYvYWlJSURRQUxDeUFNUVpBQmFpUUFDN2tIQVFWL0l3QkJFR3NpQkNRQUFrQWdBQ0FCUVFCQnlBQVFCeUlERUFJaUFRMEFRUUVoQVNBREtBSUFRZjhCU3cwQUlBQWdBMEVFYWhBQ0lnRU5BRUVCSVFFZ0F5Z0NCRUVmU3cwQUlBQkJBUkFERFFBZ0FFRUJFQU1pQWtGL1JnMEFJQU1nQWtFQlJqWUNDQ0FBSUFSQkRHb1FBaUlCRFFBZ0F5QUVLQUlNUVFGcUlnRTJBZ3dnQVVFSVN3UkFRUUVoQVF3QkN3SkFJQUZCQWtrTkFDQUFJQU5CRUdvUUFpSUJEUUVnQXlnQ0VDSUJRUVpMSWdJRVFFRUJJUUVNQWdzZ0FnMEFBa0FDUUFKQUFrQWdBVUVCYXc0R0JBRUNBZ0lEQUFzZ0F5QURLQUlNSWdGQkFuUVFDaUlDTmdJVUlBSkZCRUJCLy84RElRRU1CUXNnQVVVTkEwRUFJUUlEUUNBQUlBUkJER29RQWlJQkRRVWdBeWdDRkNBQ1FRSjBhaUFFS0FJTVFRRnFOZ0lBSUFKQkFXb2lBaUFES0FJTVNRMEFDd3dEQ3lBRElBTW9BZ3dpQWtFQ2RFRjhhaUlCRUFvaUJUWUNHQ0FESUFFUUNpSUdOZ0ljUWYvL0F5RUJJQVZGRFFNZ0JrVU5BeUFDUVFGR0RRSkJBQ0VDQTBBZ0FDQUVRUXhxRUFJaUFRMEVJQUpCQW5RaUJTQURLQUlZYWlBRUtBSU1OZ0lBSUFBZ0JFRU1haEFDSWdFTkJDQURLQUljSUFWcUlBUW9BZ3cyQWdBZ0FrRUJhaUlDSUFNb0FneEJmMnBKRFFBTERBSUxRUUVoQVNBQVFRRVFBeUlDUVg5R0RRSWdBeUFDUVFGR05nSWdJQUFnQkVFTWFoQUNJZ0VOQWlBRElBUW9BZ3hCQVdvMkFpUU1BUXNnQUNBRVFReHFFQUlpQVEwQklBTWdCQ2dDREVFQmFpSUJOZ0lvSUFNZ0FVRUNkQkFLSWdJMkFpd2dBa1VFUUVILy93TWhBUXdDQ3lBQlJRMEFJQU1vQWd4QkFuUkJyRHRxS0FJQUlRWkJBQ0VDQTBBZ0FDQUdFQU1oQlNBREtBSXNJQUpCQW5ScUlBVTJBZ0JCQVNFQklBVWdBeWdDREU4TkFpQUNRUUZxSWdJZ0F5Z0NLRWtOQUFzTElBQWdCRUVNYWhBQ0lnRU5BRUVCSVFFZ0JDZ0NEQ0lDUVI5TERRQWdBeUFDUVFGcU5nSXdJQUFnQkVFTWFoQUNJZ0VOQUVFQklRRWdCQ2dDREVFZlN3MEFJQUJCQVJBREJFQU1BUXNnQUVFQ0VBTkJBa3NFUUF3QkN5QUFJQVJCQ0dvUUJTSUJEUUFnQkNnQ0NFRWFhaUlCUVROTEJFQkJBU0VCREFFTElBTWdBVFlDTkNBQUlBUkJDR29RQlNJQkRRQWdCQ2dDQ0VFYWFrRXpTd1JBUVFFaEFRd0JDeUFBSUFSQkNHb1FCU0lCRFFCQkFTRUJJQVFvQWdnaUFrRU1ha0VZU3cwQUlBTWdBallDT0NBQVFRRVFBeUlDUVg5R0RRQWdBeUFDUVFGR05nSThJQUJCQVJBRElnSkJmMFlOQUNBRElBSkJBVVkyQWtBZ0FFRUJFQU1pQWtGL1JnMEFJQU1nQWtFQlJqWUNSQ0FBRUI5QkFDRUJDeUFFUVJCcUpBQWdBUXZxQlFFSmZ3SkFJQUlvQXB3Q1JRUkFEQUVMUVFFaEJnTkFBa0FDUUNBQ0lBVkJGR3hxS0FLZ0FpSUVRUVZMRFFBZ0JFRUJhdzRGQUFBQUFBTUJDeUFGUVFGcUlRVU1BUXNMSUFRaEJnc0Nmd0pBSUFFb0FoQWlCRUVCVFFSQUlBUkJBV3NFUUNBREtBSUFRUVZHQkVBZ0FFSUFOd0lBSUFJb0FoUWhCVUVBSVFRTUF3c2dBQ2dDQUNJRUlBSW9BaFFpQlUwTkFpQUVJQVZySUFFb0FoUWlCMEVCZGtrTkFpQUFLQUlFSUFkcURBTUxRUUFoQlFKL1FRQWdBeWdDQUVFRlJnMEFHaUFBS0FJTUlnY2dBQ2dDQ0NBQ0tBSU1UUTBBR2lBQktBSU1JQWRxQ3lFSFFRQWhCQUovSUFFb0FpUWlDQVJBSUFJb0Fnd2dCMm9oQlFzZ0JTQURLQUlFSWdwRklBVkJBRWR4YXlJSkN3UkFJQWxCZjJvaUF5QURJQWh1SWdzZ0NHeHJJUU1MSUFnRVFDQUJLQUlvSVF4QkFDRUZBMEFnRENBRlFRSjBhaWdDQUNBRWFpRUVJQVZCQVdvaUJTQUlSdzBBQ3dzQ1FDQUpSUVJBUVFBaEJBd0JDeUFFSUF0c0lRUWdBU2dDS0NFSVFRQWhCUU5BSUFnZ0JVRUNkR29vQWdBZ0JHb2hCQ0FGUVFGcUlnVWdBMDBOQUFzTElBcEZCRUFnQVNnQ0hDQUVhaUVFQ3lBR1JRUkFJQUlvQWlBaEF5QUJLQUlnSVFFZ0FpZ0NIQ0VHSUFBZ0J6WUNEQ0FBSUFJb0FndzJBZ2dnQmlBQklBTnFJZ0JCSDNVZ0FIRWdCR3BxRHdzZ0FFSUFOd0lJUVFBUEMwRUFJUVZCQUNFRUlBTW9BZ0JCQlVjRVFDQUFLQUlNSVFVZ0FDZ0NDQ0FDS0FJTUlnUkxCRUFnQVNnQ0RDQUZhaUVGQ3lBRUlBVnFRUUYwSUFNb0FnUkZheUVFQ3lBR1JRUkFJQUFnQlRZQ0RDQUFJQUlvQWd3MkFnZ2dCQThMSUFCQ0FEY0NDRUVBRHdzQ1FDQUZJQVJORFFBZ0JTQUVheUFCS0FJVUlnRkJBWFpORFFBZ0FDZ0NCQ0FCYXd3QkN5QUFLQUlFQ3lFRUlBTW9BZ1JGQkVBZ0JDQUZhaUFDS0FJWUlnQkJIM1VnQUhGcUR3c2dBQ0FFTmdJRUlBSW9BaGdoQVNBR0JFQWdBRUVBTmdJRUlBQkJBQ0FCYXlBQlFSOTFjVFlDQUVFQUR3c2dBQ0FGTmdJQUlBUWdCV29nQVVFZmRTQUJjV29MdkFFQkNIOGdBZ1JBSUFGQmYyb2hCMEVBSUFGclFkZ0JiQ0VJUVFFZ0FXdEIyQUZzSVFrZ0FVRi9jMEhZQVd3aENnTkFJQUFnQmtIWUFXeHFJZ01nQTBHb2ZtcEJBQ0FFR3pZQ3lBRWdBd0ovSUFWRkJFQWdBMEVBTmdMTUFVRUFEQUVMSUFNZ0F5QUlhallDekFFZ0F5QUpha0VBSUFRZ0Iwa2JDellDMEFFZ0F5QURJQXBxUVFBZ0JCdEJBQ0FGR3pZQzFBRkJBQ0FFUVFGcUlnTWdBU0FEUmlJREd5RUVJQU1nQldvaEJTQUdRUUZxSWdZZ0FrY05BQXNMQzNjQkFuOUJBU0VDQWtBZ0FFRUJFQU5CZjBZTkFDQUJJQUJCQWhBRE5nSUVJQUVnQUVFRkVBTWlBRFlDQUNBQVFYNXFRUU5KRFFBQ1FDQUFRUXhMRFFCQkFTQUFkQ0lEUWNBOGNVVUVRQ0FEUWFBRGNVVU5BU0FBUVFaR0RRSWdBU2dDQkEwQkRBSUxJQUVvQWdRTkFRdEJBQ0VDQ3lBQ0M1SVRBUVovSUFBZ0FTZ0NBQ0lOTmdJQUlBQWdBQ2dDeEFGQkFXbzJBc1FCSUFJZ0JSQWRBa0FDUUFKQUFrQUNRQ0FOUVI5R0JFQWdBRUVBTmdJVUlBQW9Bc1FCUVFGTERRRWdBRUVjYWlFSklBRkJ5QUpxSVFSQkZ5RUJJQWNoQUFOQUlBbEJFRHNCQUNBQUlBUW9BZ0E2QUFBZ0FDQUVLQUlFT2dBQklBQWdCQ2dDQ0RvQUFpQUFJQVFvQWd3NkFBTWdBQ0FFS0FJUU9nQUVJQUFnQkNnQ0ZEb0FCU0FBSUFRb0FoZzZBQVlnQUNBRUtBSWNPZ0FISUFBZ0JDZ0NJRG9BQ0NBQUlBUW9BaVE2QUFrZ0FDQUVLQUlvT2dBS0lBQWdCQ2dDTERvQUN5QUFJQVFvQWpBNkFBd2dBQ0FFS0FJME9nQU5JQUFnQkNnQ09Eb0FEaUFBSUFRb0FqdzZBQThnQVNJRFFYOXFJUUVnQ1VFQ2FpRUpJQUJCRUdvaEFDQUVRVUJySVFRZ0F3MEFDeUFDSUFjUUd3d0VDeUFBUVJ4cUlRa2dEUVJBSUFrZ0FTa0NrQUkzQWdBZ0NTQUJLUUcrQWpjQkxpQUpJQUVwQXJnQ053SW9JQWtnQVNrQ3NBSTNBaUFnQ1NBQktRS29BamNDR0NBSklBRXBBcUFDTndJUUlBa2dBU2tDbUFJM0FnZ2dCQ2dDQUNFS0FrQWdBU2dDQ0NJTFJRMEFJQVFnQ2lBTGFpSUtOZ0lBSUFRZ0NrRi9UQVIvSUFwQk5Hb0ZJQXBCTkVnTkFTQUtRVXhxQ3lJS05nSUFDeUFBSUFvMkFoUWdBVUhJRDJvaERDQUJRY2dDYWlFRUFrQUNRQ0FBS0FJQVFRWk5CRUFnQ1M4QkFFVU5BVUVCSVFnZ0JDQUtRUUFnRENnQ0FCQUdSUTBDREFnTElBQXZBVXdFUUNBQlFjZ09haUFLRURFTFFiQTBJUXBCRHlFSUEwQWdDQ0VMSUFRZ0FTQUtLQUlBUVFKMGFrSElEbW9vQWdBaUNEWUNBQUpBQWtBZ0NFVUVRQ0FKTHdFQVJRMEJDMEVCSVFnZ0JDQUFLQUlVUVFFZ0RDZ0NBQkFHUlEwQkRBb0xJQVJCLy8vL0J6WUNBQXNnQ2tFRWFpRUtJQXRCZjJvaENDQU1RUVJxSVF3Z0NVRUNhaUVKSUFSQlFHc2hCQ0FMRFFBTERBUUxJQVJCLy8vL0J6WUNBQXNnQVVHSUEyb2hCQUpBSUFBdkFSNEVRRUVCSVFnZ0JDQUFLQUlVUVFBZ0FVSE1EMm9vQWdBUUJrVU5BUXdIQ3lBRVFmLy8vd2MyQWdBTElBRkJ5QU5xSVFRQ1FDQUFMd0VnQkVCQkFTRUlJQVFnQUNnQ0ZFRUFJQUZCMEE5cUtBSUFFQVpGRFFFTUJ3c2dCRUgvLy84SE5nSUFDeUFCUVlnRWFpRUVBa0FnQUM4QklnUkFRUUVoQ0NBRUlBQW9BaFJCQUNBQlFkUVBhaWdDQUJBR1JRMEJEQWNMSUFSQi8vLy9CellDQUFzZ0FVSElCR29oQkFKQUlBQXZBU1FFUUVFQklRZ2dCQ0FBS0FJVVFRQWdBVUhZRDJvb0FnQVFCa1VOQVF3SEN5QUVRZi8vL3djMkFnQUxJQUZCaUFWcUlRUUNRQ0FBTHdFbUJFQkJBU0VJSUFRZ0FDZ0NGRUVBSUFGQjNBOXFLQUlBRUFaRkRRRU1Cd3NnQkVILy8vOEhOZ0lBQ3lBQlFjZ0ZhaUVFQWtBZ0FDOEJLQVJBUVFFaENDQUVJQUFvQWhSQkFDQUJRZUFQYWlnQ0FCQUdSUTBCREFjTElBUkIvLy8vQnpZQ0FBc2dBVUdJQm1vaEJBSkFJQUF2QVNvRVFFRUJJUWdnQkNBQUtBSVVRUUFnQVVIa0Qyb29BZ0FRQmtVTkFRd0hDeUFFUWYvLy93YzJBZ0FMSUFGQnlBWnFJUVFDUUNBQUx3RXNCRUJCQVNFSUlBUWdBQ2dDRkVFQUlBRkI2QTlxS0FJQUVBWkZEUUVNQndzZ0JFSC8vLzhITmdJQUN5QUJRWWdIYWlFRUFrQWdBQzhCTGdSQVFRRWhDQ0FFSUFBb0FoUkJBQ0FCUWV3UGFpZ0NBQkFHUlEwQkRBY0xJQVJCLy8vL0J6WUNBQXNnQVVISUIyb2hCQUpBSUFBdkFUQUVRRUVCSVFnZ0JDQUFLQUlVUVFBZ0FVSHdEMm9vQWdBUUJrVU5BUXdIQ3lBRVFmLy8vd2MyQWdBTElBRkJpQWhxSVFRQ1FDQUFMd0V5QkVCQkFTRUlJQVFnQUNnQ0ZFRUFJQUZCOUE5cUtBSUFFQVpGRFFFTUJ3c2dCRUgvLy84SE5nSUFDeUFCUWNnSWFpRUVBa0FnQUM4Qk5BUkFRUUVoQ0NBRUlBQW9BaFJCQUNBQlFmZ1BhaWdDQUJBR1JRMEJEQWNMSUFSQi8vLy9CellDQUFzZ0FVR0lDV29oQkFKQUlBQXZBVFlFUUVFQklRZ2dCQ0FBS0FJVVFRQWdBVUg4RDJvb0FnQVFCa1VOQVF3SEN5QUVRZi8vL3djMkFnQUxJQUZCeUFscUlRUUNRQ0FBTHdFNEJFQkJBU0VJSUFRZ0FDZ0NGRUVBSUFGQmdCQnFLQUlBRUFaRkRRRU1Cd3NnQkVILy8vOEhOZ0lBQ3lBQlFZZ0thaUVFQWtBZ0FDOEJPZ1JBUVFFaENDQUVJQUFvQWhSQkFDQUJRWVFRYWlnQ0FCQUdSUTBCREFjTElBUkIvLy8vQnpZQ0FBc2dBVUdJRUdvaERDQUJRY2dLYWlFRURBSUxJQWxDQURjQ0FDQUpRZ0EzQVM0Z0NVSUFOd0lvSUFsQ0FEY0NJQ0FKUWdBM0FoZ2dDVUlBTndJUUlBbENBRGNDQ0NBQUlBUW9BZ0EyQWhRTUFnc2dBRUtRZ01DQWdJS0FDRGNCSENBQVFwQ0F3SUNBZ29BSU53RkVJQUJDa0lEQWdJQ0NnQWczQVR3Z0FFS1FnTUNBZ0lLQUNEY0JOQ0FBUXBDQXdJQ0Fnb0FJTndFc0lBQkNrSURBZ0lDQ2dBZzNBU1JCQUE4TElBQW9BaGdnQUNnQ0ZHb2lDMEV6SUF0Qk0wZ2JJZ3RCQUNBTFFRQktHMEVDZEVIZ1BXb29BZ0FoQ1FKQUlBQXZBVTVGQkVBZ0FDOEJVRVVOQVFzZ0FVR0lEMm9nQ1JBd0N5QUVJQUZCaUE5cUtBSUFJZ3MyQWdBQ1FBSkFJQXRGQkVBZ0FDOEJQRVVOQVF0QkFTRUlJQVFnQ1VFQklBd29BZ0FRQmtVTkFRd0VDeUFFUWYvLy93YzJBZ0FMSUFRZ0FTZ0NqQThpQ3pZQ1FDQUVRVUJySVFvQ1FBSkFJQXRGQkVBZ0FDOEJQa1VOQVF0QkFTRUlJQW9nQ1VFQklBd29BZ1FRQmtVTkFRd0VDeUFLUWYvLy93YzJBZ0FMSUFRZ0FTZ0NrQThpQ3pZQ2dBRWdCRUdBQVdvaENnSkFBa0FnQzBVRVFDQUFRVUJyTHdFQVJRMEJDMEVCSVFnZ0NpQUpRUUVnRENnQ0NCQUdSUTBCREFRTElBcEIvLy8vQnpZQ0FBc2dCQ0FCS0FLVUR5SUxOZ0xBQVNBRVFjQUJhaUVLQWtBQ1FDQUxSUVJBSUFBdkFVSkZEUUVMUVFFaENDQUtJQWxCQVNBTUtBSU1FQVpGRFFFTUJBc2dDa0gvLy84SE5nSUFDeUFFSUFFb0FwZ1BJZ3MyQW9BQ0lBUkJnQUpxSVFvQ1FBSkFJQXRGQkVBZ0FDOEJSRVVOQVF0QkFTRUlJQW9nQ1VFQklBd29BaEFRQmtVTkFRd0VDeUFLUWYvLy93YzJBZ0FMSUFRZ0FTZ0NuQThpQ3pZQ3dBSWdCRUhBQW1vaENnSkFBa0FnQzBVRVFDQUFMd0ZHUlEwQkMwRUJJUWdnQ2lBSlFRRWdEQ2dDRkJBR1JRMEJEQVFMSUFwQi8vLy9CellDQUFzZ0JDQUJLQUtnRHlJTE5nS0FBeUFFUVlBRGFpRUtBa0FDUUNBTFJRUkFJQUF2QVVoRkRRRUxRUUVoQ0NBS0lBbEJBU0FNS0FJWUVBWkZEUUVNQkFzZ0NrSC8vLzhITmdJQUN5QUVJQUVvQXFRUElnczJBc0FESUFSQndBTnFJUVFDUUFKQUlBdEZCRUFnQUM4QlNrVU5BUXRCQVNFSUlBUWdDVUVCSUF3b0Fod1FCa1VOQVF3RUN5QUVRZi8vL3djMkFnQUxJQTFCQmtrTkFDQUFJQUVnQWlBRklBWWdCeEJXSWdoRkRRRU1BZ3NnQUNBQklBTWdCU0FDSUFjUVZ5SUlEUUVMUVFBaENBc2dDQXVXSFFFSGZ5TUFRUkJySWdja0FDQUJRUUJCcUJBUUJ5RUZJQUFnQjBFRWFoQUNJUUVnQnlnQ0JDRUlBa0FDUUFKQUlBTkJmbW9pQTBFRlN3MEFBa0FnQTBFQmF3NEVBUUVCQVFBTFFRRWhBeUFCRFFJZ0NFRUdhaUlHUVI5TkRRRU1BZ3RCQVNFRElBRU5BU0FJUVFGcUlnWkJIMHNOQVFzZ0JTQUdOZ0lBQWtBZ0JrRWZSZ1JBQTBBZ0FDZ0NDQVJBSUFCQkFSQURSUTBCREFRTEN5QUZRY2dDYWlFR0EwQWdCeUFBUVFnUUF5SUJOZ0lFSUFGQmYwWU5BeUFHSUFFMkFnQWdCa0VFYWlFR0lBbEJBV29pQ1VHQUEwY05BQXNNQVF0QkFpQUdRUVpISUFaQkJra2JJUW9DUUFKQUlBWkJCRWtOQUNBR1FRVkxEUUFnQUNBSFFReHFFQUlOQVNBSEtBSU1JZ0ZCQTBzTkFTQUZJQUUyQXJBQklBQWdCMEVNYWhBQ0RRRWdCeWdDRENJQlFRTkxEUUVnQlNBQk5nSzBBU0FBSUFkQkRHb1FBZzBCSUFjb0Fnd2lBVUVEU3cwQklBVWdBVFlDdUFFZ0FDQUhRUXhxRUFJTkFTQUhLQUlNSWdGQkEwc05BU0FGSUFFMkFyd0JBa0FnQkVFQ1NRMEFJQVpCQlVZTkFDQUFJQWRCREdvZ0JFRUNTeUlCRUJjTkFpQUhLQUlNSWdnZ0JFOE5BaUFGSUFnMkFzQUJJQUFnQjBFTWFpQUJFQmNOQWlBSEtBSU1JZ2dnQkU4TkFpQUZJQWcyQXNRQklBQWdCMEVNYWlBQkVCY05BaUFIS0FJTUlnZ2dCRThOQWlBRklBZzJBc2dCSUFBZ0IwRU1haUFCRUJjTkFpQUhLQUlNSWdFZ0JFOE5BaUFGSUFFMkFzd0JDeUFISUFVb0FyQUJJZ0ZCQWswRWZ5QUJRUUowUWZBMGFpZ0NBQVZCQXdzMkFneEJBQ0VHQTBBZ0FDQUhRUWhxRUFVaUF3MENJQVVnQmtFQ2RHb2lBU0FIS0FJSU93SFFBU0FBSUFkQkNHb1FCU0lERFFJZ0FTQUhLQUlJT3dIU0FTQUhJQWNvQWd3aUFVRi9hallDRENBR1FRRnFJUVlnQVEwQUN5QUhJQVVvQXJRQklnRkJBazBFZnlBQlFRSjBRZkEwYWlnQ0FBVkJBd3MyQWd4QkFDRUdBMEFnQUNBSFFRaHFFQVVpQXcwQ0lBVWdCa0VDZEdvaUFTQUhLQUlJT3dIZ0FTQUFJQWRCQ0dvUUJTSUREUUlnQVNBSEtBSUlPd0hpQVNBSElBY29BZ3dpQVVGL2FqWUNEQ0FHUVFGcUlRWWdBUTBBQ3lBSElBVW9BcmdCSWdGQkFrMEVmeUFCUVFKMFFmQTBhaWdDQUFWQkF3czJBZ3hCQUNFR0EwQWdBQ0FIUVFocUVBVWlBdzBDSUFVZ0JrRUNkR29pQVNBSEtBSUlPd0h3QVNBQUlBZEJDR29RQlNJRERRSWdBU0FIS0FJSU93SHlBU0FISUFjb0Fnd2lBVUYvYWpZQ0RDQUdRUUZxSVFZZ0FRMEFDeUFISUFVb0Fyd0JJZ0ZCQWswRWZ5QUJRUUowUWZBMGFpZ0NBQVZCQXdzMkFneEJBQ0VHQTBBZ0FDQUhRUWhxRUFVaUF3MENJQVVnQmtFQ2RHb2lBU0FIS0FJSU93R0FBaUFBSUFkQkNHb1FCU0lERFFJZ0FTQUhLQUlJT3dHQ0FpQUhJQWNvQWd3aUFVRi9hallDRENBR1FRRnFJUVpCQUNFRElBRU5BQXNNQVF0QkFDRURJQXBCQWtzTkFBSkFBbjhDUUFKQUFrQWdDa0VCYXc0Q0JBRUFDeUFIUVFBMkFnZ2dCU0FBRUE4aUFVRWZkallDRENBQlFRQk9EUUVnQVVFQmRDRUdRUUFNQWdzZ0JFRUNUd1JBUVFNaEFTQUdRUU5OQkVBZ0JrRUNkRUg4Tkdvb0FnQWhBUXNnQkVFQ1N5RUxRUUVoQXdOQUlBQWdCMEVNYWlBTEVCY05CU0FIS0FJTUlnZ2dCRThOQlNBRklBbEJBblJxSUFnMkFwQUJJQUVpQ0VGL2FpRUJJQWxCQVdvaENTQUlEUUFMQzBFRElRTWdCa0VEVFFSQUlBWkJBblJCL0RScUtBSUFJUU1MUVFBaEJnTkFJQU1oQVNBQUlBZEJDR29RQlNJRERRUWdCU0FHUVFKMGFpSUVJQWNvQWdnN0FhQUJJQUFnQjBFSWFoQUZJZ01OQkNBRUlBY29BZ2c3QWFJQklBRkJmMm9oQXlBR1FRRnFJUVlnQVEwQUMwRUFJUU1NQXdzZ0JTQUJRUngyTmdKTUlBRkJCSFFoQmtFQkN5RURJQVVnQmtFZmRqWUNFQ0FGSUFaQkFFZ0VmeUFHUVFGMEJTQUZJQVpCSEhZMkFsQWdBMEVCYWlFRElBWkJCSFFMSWdGQkgzWTJBaFFnQlNBQlFRQklCSDhnQVVFQmRBVWdCU0FCUVJ4Mk5nSlVJQU5CQVdvaEF5QUJRUVIwQ3lJQlFSOTJOZ0lZSUFVZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNXQ0FEUVFGcUlRTWdBVUVFZEFzaUFVRWZkallDSENBRklBRkJBRWdFZnlBQlFRRjBCU0FGSUFGQkhIWTJBbHdnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWlBZ0JTQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0pnSUFOQkFXb2hBeUFCUVFSMEN5SUJRUjkyTmdJa0lBVWdBVUVBU0FSL0lBRkJBWFFGSUFVZ0FVRWNkallDWkNBRFFRRnFJUU1nQVVFRWRBc2lBVUVmZGpZQ0tDQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0pvSUFOQkFXb2hBeUFCUVFSMEN5RUdBa0FnQUNBRFFRTnNRUWhxRUF0QmYwWU5BQ0FIUVFFMkFnZ2dCU0FBRUE4aUFVRWZkallDTEFKL0lBRkJBRWdFUUNBQlFRRjBJUVpCQUF3QkN5QUZJQUZCSEhZMkFtd2dBVUVFZENFR1FRRUxJUU1nQlNBR1FSOTJOZ0l3SUFVZ0JrRUFTQVIvSUFaQkFYUUZJQVVnQmtFY2RqWUNjQ0FEUVFGcUlRTWdCa0VFZEFzaUFVRWZkallDTkNBRklBRkJBRWdFZnlBQlFRRjBCU0FGSUFGQkhIWTJBblFnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWpnZ0JTQUJRUUJJQkg4Z0FVRUJkQVVnQlNBQlFSeDJOZ0o0SUFOQkFXb2hBeUFCUVFSMEN5SUJRUjkyTmdJOElBVkJRR3NnQVVFQVNBUi9JQUZCQVhRRklBVWdBVUVjZGpZQ2ZDQURRUUZxSVFNZ0FVRUVkQXNpQVVFZmRqWUNBQ0FGSUFGQkFFZ0VmeUFCUVFGMEJTQUZJQUZCSEhZMkFvQUJJQU5CQVdvaEF5QUJRUVIwQ3lJQlFSOTJOZ0pFSUFVZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNoQUVnQTBFQmFpRURJQUZCQkhRTElnRkJIM1kyQWtnZ0FVRUFTQVIvSUFGQkFYUUZJQVVnQVVFY2RqWUNpQUVnQTBFQmFpRURJQUZCQkhRTElRWWdBQ0FEUVFOc1FRaHFFQXRCZjBZTkFDQUhJQVkyQWd3Z0IwRUNOZ0lJREFFTElBY2dCallDREVFQklRTU1BUXRCQVNFRElBQWdCMEVNYWhBQ0RRQWdCeWdDRENJQlFRTkxEUUFnQlNBQk5nS01BVUVBSVFNTElBTU5BUUpBSUFwQkFVY0VRQ0FBSUFkQkJHb2dDa1VRTFNJRERRTWdCU0FIS0FJRUlnRTJBZ1FnQVVVTkFnd0JDeUFGSUFVb0FnQWlBVUY1YWlJRFFRSjBRWEJ4SWdSQlVHb2dCQ0FEUVF0TEcwRVBRUUFnQVVFU1N4dHlOZ0lFQzBFQklRTWdBQ0FIUVF4cUVBVU5BU0FIS0FJTUlnRkJHbXBCTTBzTkFTQUZJQUUyQWdnZ0JVR1FBbW9oQ0NBRktBSUVJUVFDUUFKQUlBVW9BZ0JCQjBrRVFFRUFJUWxCQXlFREEwQWdBeUVCSUFSQkFYRUVRQ0FJSUFsQkFuUnFRYmdOYWlBQUlBZ2dDVUVHZEdwQk9Hb2dBaUFKSUFnUURVRVFFQWtpQTBFUWRqWUNBQ0FEUVE5eERRUWdDQ0FKUVFGMGFpQURRUVIyUWY4QmNUc0JBQ0FJSUFsQkFYSWlCa0VDZEdwQnVBMXFJQUFnQ0NBR1FRWjBha0U0YWlBQ0lBWWdDQkFOUVJBUUNTSURRUkIyTmdJQUlBTkJEM0VOQkNBSUlBWkJBWFJxSUFOQkJIWkIvd0Z4T3dFQUlBZ2dDVUVDY2lJR1FRSjBha0c0RFdvZ0FDQUlJQVpCQm5ScVFUaHFJQUlnQmlBSUVBMUJFQkFKSWdOQkVIWTJBZ0FnQTBFUGNRMEVJQWdnQmtFQmRHb2dBMEVFZGtIL0FYRTdBUUFnQ0NBSlFRTnlJZ1pCQW5ScVFiZ05haUFBSUFnZ0JrRUdkR3BCT0dvZ0FpQUdJQWdRRFVFUUVBa2lBMEVRZGpZQ0FDQURRUTl4RFFRZ0JTQUdRUUYwYWlBRFFRUjJRZjhCY1RzQmtBSUxJQVJCQVhZaEJDQUJRWDlxSVFNZ0NVRUVhaUVKSUFFTkFBc01BUXRCQUNFSklBQWdCVUhJRG1vZ0FrRUFJQWdRRFVFUUVBa2lBMEVQY1EwQklBVWdBMEVFZGtIL0FYRTdBY0FDSUFWQmtBSnFJUVpCQXlFREEwQWdBeUVCSUFSQkFYRUVRQ0FHSUFsQkFuUnFRYmdOYWlBQUlBWWdDVUVHZEdwQlBHb2dBaUFKSUFnUURVRVBFQWtpQTBFUGRqWUNBQ0FEUVE5eERRTWdCaUFKUVFGMGFpQURRUVIyUWY4QmNUc0JBQ0FHSUFsQkFYSWlDa0VDZEdwQnVBMXFJQUFnQmlBS1FRWjBha0U4YWlBQ0lBb2dDQkFOUVE4UUNTSURRUTkyTmdJQUlBTkJEM0VOQXlBR0lBcEJBWFJxSUFOQkJIWkIvd0Z4T3dFQUlBWWdDVUVDY2lJS1FRSjBha0c0RFdvZ0FDQUdJQXBCQm5ScVFUeHFJQUlnQ2lBSUVBMUJEeEFKSWdOQkQzWTJBZ0FnQTBFUGNRMERJQVlnQ2tFQmRHb2dBMEVFZGtIL0FYRTdBUUFnQmlBSlFRTnlJZ3BCQW5ScVFiZ05haUFBSUFZZ0NrRUdkR3BCUEdvZ0FpQUtJQWdRRFVFUEVBa2lBMEVQZGpZQ0FDQURRUTl4RFFNZ0JTQUtRUUYwYWlBRFFRUjJRZjhCY1RzQmtBSUxJQVJCQVhZaEJDQUJRWDlxSVFNZ0NVRUVhaUVKSUFFTkFBc0xJQVJCQTNFRVFDQUFJQVZCaUE5cVFYOUJCQkFKSWdOQkQzRU5BU0FGSUFOQkJIWkIvd0Z4T3dIQ0FpQUFJQVZCbUE5cVFYOUJCQkFKSWdOQkQzRU5BU0FGSUFOQkJIWkIvd0Z4T3dIRUFndEJBQ0VESUFSQkFuRkZEUUFnQUNBRlFjd0thaUFDUVJBZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCaUJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0JzQUlnQUNBRlFZd0xhaUFDUVJFZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCakJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0JzZ0lnQUNBRlFjd0xhaUFDUVJJZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCa0JCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J0QUlnQUNBRlFZd01haUFDUVJNZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbEJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J0Z0lnQUNBRlFjd01haUFDUVJRZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbUJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J1QUlnQUNBRlFZd05haUFDUVJVZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCbkJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J1Z0lnQUNBRlFjd05haUFDUVJZZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCb0JCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J2QUlnQUNBRlFZd09haUFDUVJjZ0NCQU5RUThRQ1NJQlFROXhCRUFnQVNFRERBRUxJQVZCcEJCcUlBRkJEM1kyQWdBZ0JTQUJRUVIyUWY4QmNUc0J2Z0lMSUFBZ0FDZ0NDQ0FBS0FJRUlBQW9BZ0JyUVFOMGFqWUNFQ0FERFFFTFFRQWhBd3NnQjBFUWFpUUFJQU1McFJRQkRIOENmeUFBS0FMSUFTSUhCRUFnQUNnQ0JDQUhLQUlFUmd3QkMwRUFDeUVLQWtBZ0JrVU5BQ0FLUlEwQVFRQWdDa0VDSUFBb0FzZ0JLQUlBSWdkQkJrY2dCMEVHU1J0QkFrWWJJUW9MQW44Z0FDZ0N6QUVpQndSQUlBQW9BZ1FnQnlnQ0JFWU1BUXRCQUFzaEJ3SkFJQVpGRFFBZ0IwVU5BRUVBSUFkQkFpQUFLQUxNQVNnQ0FDSUhRUVpISUFkQkJra2JRUUpHR3lFSEN3Si9JQUFvQXRRQklna0VRQ0FBS0FJRUlBa29BZ1JHREFFTFFRQUxJUWtDUUNBR1JRMEFJQWxGRFFCQkFpQUFLQUxVQVNnQ0FDSUFRUVpISUFCQkJra2JRUUpISVFrTElBcEJBRWNnQjBFQVIzRWlEU0FKUVFCSGNTRU9JQVZCQWtzaEQwRVFJUXNEUUFKQUlBOUZCRUFDUUFKQUFrQWdCVUVCYXc0Q0FRSUFDeUFCQW44Z0RRUkFJQVF0QUFNZ0JDMEFBaUFFTFFBQklBUXRBQUFnQXkwQUJDQURMUUFESUFNdEFBRWdBeTBBQW1wcWFtcHFhbXBCQkdwQkEzWWhCaUFETFFBSUlBTXRBQWNnQXkwQUJTQURMUUFHYW1wcVFRSnFRUUoyREFFTElBY0VRQ0FETFFBRUlBTXRBQU1nQXkwQUFTQURMUUFDYW1wcVFRSnFRUUoySVFZZ0F5MEFDQ0FETFFBSElBTXRBQVVnQXkwQUJtcHFha0VDYWtFQ2Rnd0JDeUFLUlFSQVFZQUJJUVpCZ0FFTUFRc2dCQzBBQXlBRUxRQUNJQVF0QUFBZ0JDMEFBV3BxYWtFQ2FrRUNkaUlHQzBIL0FYRkJnWUtFQ0d3aUFEWUFIQ0FCSUFaQi93RnhRWUdDaEFoc0lnWTJBQmdnQVNBQU5nQVVJQUVnQmpZQUVDQUJJQUEyQUF3Z0FTQUdOZ0FJSUFFZ0FEWUFCQ0FCSUFZMkFBQUNmeUFLQkVBZ0JDMEFCeUFFTFFBR0lBUXRBQVVnQkMwQUJHcHFhaUlHUVFKcVFRSjJJZ0FnQjBVTkFSb2dBeTBBQ0NBRExRQUhJQU10QUFZZ0JpQURMUUFGYW1wcWFrRUVha0VEZGd3QkN5QUhSUVJBUVlBQklRQkJnQUVNQVFzZ0F5MEFCQ0FETFFBRElBTXRBQUVnQXkwQUFtcHFha0VDYWtFQ2RpRUFJQU10QUFnZ0F5MEFCeUFETFFBRklBTXRBQVpxYW1wQkFtcEJBbllMSVFZZ0FTQUFRZjhCY1VHQmdvUUliQ0lBTmdBZ0lBRWdCa0gvQVhGQmdZS0VDR3dpQmpZQVBDQUJJQUEyQURnZ0FTQUdOZ0EwSUFFZ0FEWUFNQ0FCSUFZMkFDd2dBU0FBTmdBb0lBRWdCallBSkF3REN5QUtSUVJBUVFFUEN5QUJJQVF0QUFBNkFBQWdBU0FFTFFBQU9nQUJJQUVnQkMwQUFEb0FBaUFCSUFRdEFBQTZBQU1nQVNBRUxRQUFPZ0FFSUFFZ0JDMEFBRG9BQlNBQklBUXRBQUE2QUFZZ0FTQUVMUUFBT2dBSElBRWdCQzBBQVRvQUNDQUJJQVF0QUFFNkFBa2dBU0FFTFFBQk9nQUtJQUVnQkMwQUFUb0FDeUFCSUFRdEFBRTZBQXdnQVNBRUxRQUJPZ0FOSUFFZ0JDMEFBVG9BRGlBQklBUXRBQUU2QUE4Z0FTQUVMUUFDT2dBUUlBRWdCQzBBQWpvQUVTQUJJQVF0QUFJNkFCSWdBU0FFTFFBQ09nQVRJQUVnQkMwQUFqb0FGQ0FCSUFRdEFBSTZBQlVnQVNBRUxRQUNPZ0FXSUFFZ0JDMEFBam9BRnlBQklBUXRBQU02QUJnZ0FTQUVMUUFET2dBWklBRWdCQzBBQXpvQUdpQUJJQVF0QUFNNkFCc2dBU0FFTFFBRE9nQWNJQUVnQkMwQUF6b0FIU0FCSUFRdEFBTTZBQjRnQVNBRUxRQURPZ0FmSUFFZ0JDMEFCRG9BSUNBQklBUXRBQVE2QUNFZ0FTQUVMUUFFT2dBaUlBRWdCQzBBQkRvQUl5QUJJQVF0QUFRNkFDUWdBU0FFTFFBRU9nQWxJQUVnQkMwQUJEb0FKaUFCSUFRdEFBUTZBQ2NnQVNBRUxRQUZPZ0FvSUFFZ0JDMEFCVG9BS1NBQklBUXRBQVU2QUNvZ0FTQUVMUUFGT2dBcklBRWdCQzBBQlRvQUxDQUJJQVF0QUFVNkFDMGdBU0FFTFFBRk9nQXVJQUVnQkMwQUJUb0FMeUFCSUFRdEFBWTZBREFnQVNBRUxRQUdPZ0F4SUFFZ0JDMEFCam9BTWlBQklBUXRBQVk2QURNZ0FTQUVMUUFHT2dBMElBRWdCQzBBQmpvQU5TQUJJQVF0QUFZNkFEWWdBU0FFTFFBR09nQTNJQUVnQkMwQUJ6b0FPQ0FCSUFRdEFBYzZBRGtnQVNBRUxRQUhPZ0E2SUFFZ0JDMEFCem9BT3lBQklBUXRBQWM2QUR3Z0FTQUVMUUFIT2dBOUlBRWdCQzBBQnpvQVBpQUJJQVF0QUFjNkFEOE1BZ3NnQjBVRVFFRUJEd3NnQVNBRExRQUJPZ0FBSUFFZ0F5MEFBVG9BQ0NBQklBTXRBQUU2QUJBZ0FTQURMUUFCT2dBWUlBRWdBeTBBQVRvQUlDQUJJQU10QUFFNkFDZ2dBU0FETFFBQk9nQXdJQUVnQXkwQUFUb0FPQ0FCSUFNdEFBSTZBQUVnQVNBRExRQUNPZ0FKSUFFZ0F5MEFBam9BRVNBQklBTXRBQUk2QUJrZ0FTQURMUUFDT2dBaElBRWdBeTBBQWpvQUtTQUJJQU10QUFJNkFERWdBU0FETFFBQ09nQTVJQUVnQXkwQUF6b0FBaUFCSUFNdEFBTTZBQW9nQVNBRExRQURPZ0FTSUFFZ0F5MEFBem9BR2lBQklBTXRBQU02QUNJZ0FTQURMUUFET2dBcUlBRWdBeTBBQXpvQU1pQUJJQU10QUFNNkFEb2dBU0FETFFBRU9nQURJQUVnQXkwQUJEb0FDeUFCSUFNdEFBUTZBQk1nQVNBRExRQUVPZ0FiSUFFZ0F5MEFCRG9BSXlBQklBTXRBQVE2QUNzZ0FTQURMUUFFT2dBeklBRWdBeTBBQkRvQU95QUJJQU10QUFVNkFBUWdBU0FETFFBRk9nQU1JQUVnQXkwQUJUb0FGQ0FCSUFNdEFBVTZBQndnQVNBRExRQUZPZ0FrSUFFZ0F5MEFCVG9BTENBQklBTXRBQVU2QURRZ0FTQURMUUFGT2dBOElBRWdBeTBBQmpvQUJTQUJJQU10QUFZNkFBMGdBU0FETFFBR09nQVZJQUVnQXkwQUJqb0FIU0FCSUFNdEFBWTZBQ1VnQVNBRExRQUdPZ0F0SUFFZ0F5MEFCam9BTlNBQklBTXRBQVk2QUQwZ0FTQURMUUFIT2dBR0lBRWdBeTBBQnpvQURpQUJJQU10QUFjNkFCWWdBU0FETFFBSE9nQWVJQUVnQXkwQUJ6b0FKaUFCSUFNdEFBYzZBQzRnQVNBRExRQUhPZ0EySUFFZ0F5MEFCem9BUGlBQklBTXRBQWc2QUFjZ0FTQURMUUFJT2dBUElBRWdBeTBBQ0RvQUZ5QUJJQU10QUFnNkFCOGdBU0FETFFBSU9nQW5JQUVnQXkwQUNEb0FMeUFCSUFNdEFBZzZBRGNnQVNBRExRQUlPZ0EvREFFTElBNUZCRUJCQVE4TElBTXRBQVVnQXkwQUEyc2dBeTBBQmlBRExRQUNhMEVCZEdvZ0F5MEFCeUFETFFBQmEwRURiR29nQXkwQUNDSUFJQU10QUFBaUNXdEJBblJxUVJGc1FSQnFRUVYxSWdaQmZXd2hFQ0FBSUFRdEFBY2lER3BCQkhRZ0JDMEFCQ0FFTFFBQ2F5QU1JQWxyUVFKMGFpQUVMUUFGSUFRdEFBRnJRUUYwYWlBRUxRQUdJQVF0QUFCclFRTnNha0VSYkVFUWFrRUZkU0lSUVgxc2FrRVFhaUVKUVFnaERDQUJJUUFEUUNBQUlBa2dFR29pQ0VFRmRVR3dMbW90QUFBNkFBQWdBQ0FHSUFocUlnaEJCWFZCc0M1cUxRQUFPZ0FCSUFBZ0JpQUlhaUlJUVFWMVFiQXVhaTBBQURvQUFpQUFJQVlnQ0dvaUNFRUZkVUd3TG1vdEFBQTZBQU1nQUNBR0lBaHFJZ2hCQlhWQnNDNXFMUUFBT2dBRUlBQWdCaUFJYWlJSVFRVjFRYkF1YWkwQUFEb0FCU0FBSUFZZ0NHb2lDRUVGZFVHd0xtb3RBQUE2QUFZZ0FDQUdJQWhxUVFWMVFiQXVhaTBBQURvQUJ5QUpJQkZxSVFrZ0FFRUlhaUVBSUF4QmYyb2lEQTBBQ3dzZ0FTQUNJQXNRQ0NBQklBSkJRR3NnQzBFQmNoQUlJQUVnQWtHQUFXb2dDMEVDY2hBSUlBRWdBa0hBQVdvZ0MwRURjaEFJSUFKQmdBSnFJUUlnQkVFSWFpRUVJQU5CQ1dvaEF5QUJRVUJySVFFZ0MwRUVhaUVMSUJKQkFXb2lFa0VDUncwQUMwRUFDNkVWQWhoL0FuNENmd05BQW44Z0FDSUlJQlpCQTNSQnNEVnFLUUlBSWg2bkVCRWlDU0lHQkVBZ0NDZ0NCQ0FHS0FJRVJnd0JDMEVBQ3lFTkFrQWdCVVVOQUNBTlJRMEFRUUFnRFVFQ0lBa29BZ0FpQmtFR1J5QUdRUVpKRzBFQ1Joc2hEUXNDZnlBSUlCWkJBM1JCOERacUtRSUFJaCtuRUJFaUJ5SUdCRUFnQ0NnQ0JDQUdLQUlFUmd3QkMwRUFDeUVQQWtBZ0JVVU5BQ0FQUlEwQVFRQWdEMEVDSUFjb0FnQWlCa0VHUnlBR1FRWkpHMEVDUmhzaER3dEJBaUVNSUExQkFFY2dEMEVBUjNFaUVrRUJSZ1JBUVFJaEJnSi9RUUlnQ1NnQ0FDSUxRUVpISUF0QkJra2JSUVJBSUFrZ0hrSWdpS2RCL3dGeGFpMEFVaUVHQ3lBR0N3Si9RUUlnQnlnQ0FDSUpRUVpISUFsQkJra2JSUVJBSUFjZ0gwSWdpS2RCL3dGeGFpMEFVaUVNQ3lBTUN5QUdJQXhKR3lFTUN5QUNJQlpCQW5RaUNXb2lCaWdDREVVRVFDQUdLQUpNSWdZZ0JpQU1UMm9oREFzZ0NDQVdhaUFNT2dCU0FuOGdDQ0FXUVFOMFFiQTRhaWdDQUJBUklnWWlCd1JBSUFnb0FnUWdCeWdDQkVZTUFRdEJBQXNoRGdKQUlBVkZEUUFnRGtVTkFFRUFJQTVCQWlBR0tBSUFJZ1pCQmtjZ0JrRUdTUnRCQWtZYklRNExBbjhnQUNBV1FRTjBRZkE1YWlnQ0FCQVJJZ2dpQmdSQUlBQW9BZ1FnQmlnQ0JFWU1BUXRCQUFzaEVRSkFJQVZGRFFBZ0VVVU5BRUVBSUJGQkFpQUlLQUlBSWdoQkJrY2dDRUVHU1J0QkFrWWJJUkVMSUFsQjhDbHFLQUlBSVJjZ0NVR3dLV29vQWdBaEdBSi9RWVVLSUJaMlFRRnhJaHdFUUNBWFFRTnFJUWNnQkNBWGFpSUlRUUpxSVFZZ0NFRUJhaUVMSUFRTUFRc2dGMEVFZENBWWFpSUlRUzlxSVFjZ0FTQUlhaUlJUVI5cUlRWWdDRUVQYWlFTElBaEJmMm9oQ0NBQkN5RUpJQWNnQ1dvdEFBQWhDaUFHTFFBQUlSQWdDeTBBQUNFVElBZ3RBQUFoRkFKQVFUTWdGblpCQVhFRVFDQURJQmhxSWdjdEFBZ2hHeUFITFFBSElSa2dCeTBBQmlFVklBY3RBQVVoR2lBSExRQUVJUVlnQnkwQUF5RUxJQWN0QUFJaENTQUhMUUFCSVFnTUFRc2dBU0FYUVg5cUloMUJCSFFnR0dwcUlnY3RBQUFoQ0NBSExRQUhJUnNnQnkwQUJpRVpJQWN0QUFVaEZTQUhMUUFFSVJvZ0J5MEFBeUVHSUFjdEFBSWhDeUFITFFBQklRa2dIQVJBSUFRZ0hXb2hCd3dCQ3lBSFFYOXFJUWNMQWtBZ0RFRUhUUVJBSUFjdEFBQWhCd0pBQWtBQ1FBSkFBa0FDUUFKQUFrQWdERUVCYXc0SEFRSURCQVVHQndBTElBOUZCRUJCQVE4TElBaEIvd0Z4SUF0Qi93RnhRUkIwSUFaQkdIUnljaUFKUWY4QmNVRUlkSEloRlNBSUlnd2hEU0FKSWc0aEVpQUxJZzhoQ2lBR0loRWhCd3dJQ3lBTlJRUkFRUUVQQ3lBS1FZR0NoQWhzSVJVZ0VFR0Jnb1FJYkNJTlFSaDJJUWNnRFVFUWRpRUtJQTFCQ0hZaEVpQVRRWUdDaEFoc0lneEJHSFloRVNBTVFSQjJJUThnREVFSWRpRU9JQlJCZ1lLRUNHd2lDRUVZZGlFR0lBaEJFSFloQ3lBSVFRaDJJUWtNQndzQ2Z5QVRJQlJxSUFwcUlCQnFJQVpCL3dGeGFpQUxRZjhCY1dvZ0NVSC9BWEZxSUFoQi93Rnhha0VFYWtFRGRpQVNEUUFhSUJNZ0ZHb2dDbW9nRUdwQkFtcEJBbllnRFEwQUdrR0FBU0FQUlEwQUdpQUdRZjhCY1NBTFFmOEJjV29nQ1VIL0FYRnFJQWhCL3dGeGFrRUNha0VDZGdzaUNFR0Jnb1FJYkNFVklBZ2lDU0lMSWdZaURDSU9JZzhpRVNJTkloSWlDaUVIREFZTElBOUZCRUJCQVE4TElBWkIvd0Z4SWcxQkFtb2lFU0FWSUFZZ0RodEIvd0Z4SWdkcUlCb2dCaUFPRzBIL0FYRWlDa0VCZEdwQkFuWWlEeUFaSUFZZ0RodEIvd0Z4SWd3Z0d5QUdJQTRiUWY4QmNTSUdRUU5zYWtFV2RFR0FnSUFFYWtHQWdJQjRjWElnQ2lBTWFpQUhRUUYwYWtFQ2FpSVFRUVowUVlEK0EzRnlJQVlnQjJvZ0RFRUJkR3BCQW1vaUJrRU9kRUdBZ1B3SGNYSWhGU0FHUVFKMklRY2dDMEgvQVhFaUJrRUNhaUlMSUFoQi93RnhhaUFKUWY4QmNTSUpRUUYwYWtFQ2RpRUlJQWtnRVdvZ0JrRUJkR3BCQW5ZaUNTRU1JQW9nQzJvZ0RVRUJkR3BCQW5ZaUN5RU9JQXNoRFNBUElnWWhFaUFRUVFKMkloRWhDZ3dGQzBFQklCRkZJQkpCQVhOeURRWWFJQlFnRTBFQmRHb2dFR3BCQW1vaURrRUdkRUdBL2dOeElBb2dFMEVDYWlJUGFpQVFRUUYwYWtFQ2RuSWdDRUgvQVhFaUNrRUNhaUlNSUJScUlBZEJBWFJxUVFKMklnaEJHSFJ5SUE4Z0ZFRUJkR29nQjJvaUVFRU9kRUdBZ1B3SGNYSWhGU0FKUWY4QmNTSVJRUUpxSWdrZ0JrSC9BWEZxSUF0Qi93RnhJZ3RCQVhScVFRSjJJUVlnRGtFQ2RpRU5JQWtnQ2tFQmRHb2dCMnBCQW5ZaUNTRVBJQkZCQVhRZ0Myb2dER3BCQW5ZaUN5RVJJQkJCQW5ZaURDRVNJQWdpRGlFS0lBa2hCd3dFQzBFQklCRkZJQkpCQVhOeURRVWFJQWhCL3dGeElncEJBbW9pRGlBTFFmOEJjU0lJSUFsQi93RnhJZ3RCQVhScWFrRUNkaUlQUVJoMElCUWdFMEVCZEdvZ0VHcEJBbXBCQW5aeUlBNGdGR29nQjBFQmRHb2lDVUVHZEVHQS9nTnhjaUFMUVFKcUlnNGdDa0VCZEdvZ0Iyb2lEVUVPZEVHQWdQd0hjWEloRlNBSVFRRnFJaEFnQmtIL0FYRWlER3BCQVhZaEJpQU1JQTVxSUFoQkFYUnFRUUoySVJFZ0NVRUNkaUVNSUExQkFuWWhEaUFUSUJSQkFYUnFJQWRxUVFKcVFRSjJJUTBnQnlBS2FrRUJha0VCZGlJSUlSSWdDaUFMYWtFQmFrRUJkaUlKSVFvZ0N5QVFha0VCZGlJTElRY01Bd3RCQVNBUlJTQVNRUUZ6Y2cwRUdpQVRRUUpxSWc0Z0Ntb2dFRUVCZEdwQkJuUkJnUDREY1NBUUlCTnFRUUZxSWc5QkQzUkJnSUQ4QjNFZ0ZFRUNhaUlNSUJOQkFYUnFJQkJxUVFKMkloSkJHSFJ5SUFvZ0VHcEJBV3BCQVhaeWNpRVZJQWhCL3dGeElnZ2dDMEgvQVhGcUlBbEIvd0Z4SWdsQkFYUnFRUUpxUVFKMklRWWdDU0FJUVFGMGFpQUhha0VDYWtFQ2RpRUxJQTlCQVhZaERTQUlJQXhxSUFkQkFYUnFRUUoySWhFaENTQVVRUUZxSWdvZ0IycEJBWFlpQ0NFUElBb2dFMnBCQVhZaURDRUtJQTRnRkVFQmRHb2dCMnBCQW5ZaURpRUhEQUlMSUE5RkJFQkJBUThMSUJvZ0JpQU9HMEgvQVhFaUNpQVpJQVlnRGh0Qi93RnhhaUFWSUFZZ0RodEIvd0Z4SWdkQkFYUnFRUlowSUF0Qi93RnhJZ3RCQW1vaURDQUthaUFHUWY4QmNTSUdRUUYwYWlJUFFRWjBja0dBZ0lBRWFrR0Evb040Y1NBR1FRSnFJZzBnQ1VIL0FYRWlDV29nQzBFQmRHcEJBbllpRG5JZ0J5QU5haUFLUVFGMGFpSU5RUTUwUVlDQS9BZHhjaUVWSUFjZ0NtcEJBV3BCQVhZaEJ5QU5RUUoySVJFZ0NTQUlRZjhCY1NJTmFrRUJha0VCZGlFSUlBOUJBblloRHlBTUlBMXFJQWxCQVhScVFRSjJJUXdnQ1NBTGFrRUJha0VCZGlJSklRMGdCa0VCYWlJR0lBdHFRUUYySWdzaEVpQUdJQXBxUVFGMklnWWhDZ3dCQ3lBTlJRUkFRUUVQQ3lBS1FRaDBJQXB5SUFwQkVIUnlJQXBCR0hSeUlSVWdFRUVDYWlJSElCUnFJQk5CQVhScVFRSjJJUWtnRTBFQmFpSUdJQlJxUVFGMklRZ2dCaUFRYWtFQmRpSUxJUXdnQ2lBVGFpQVFRUUYwYWtFQ2FrRUNkaUlHSVE0Z0NpQVFha0VCYWtFQmRpSVBJUTBnQnlBS1FRTnNha0VDZGlJUklSSWdDaUVIQ3lBQklCZEJCSFFnR0dwcUloQWdGVFlDTUNBUUlBMUIvd0Z4SUJKQi93RnhRUWgwY2lBS1FmOEJjVUVRZEhJZ0IwRVlkSEkyQWlBZ0VDQU1RZjhCY1NBT1FmOEJjVUVJZEhJZ0QwSC9BWEZCRUhSeUlCRkJHSFJ5TmdJUUlCQWdDRUgvQVhFZ0NVSC9BWEZCQ0hSeUlBdEIvd0Z4UVJCMGNpQUdRUmgwY2pZQ0FDQUJJQUlnRmtFR2RHcEJ5QUpxSUJZUUNDQVdRUUZxSWhaQkVFY05BQXRCQUFzTHhSSUJFSDhDZnlBQUtBTElBU0lIQkVBZ0FDZ0NCQ0FIS0FJRVJnd0JDMEVBQ3lFSEFrQWdCVVVOQUNBSFJRMEFRUUFnQjBFQ0lBQW9Bc2dCS0FJQUlnZEJCa2NnQjBFR1NSdEJBa1liSVFjTEFuOGdBQ2dDekFFaUNBUkFJQUFvQWdRZ0NDZ0NCRVlNQVF0QkFBc2hDQUpBSUFWRkRRQWdDRVVOQUVFQUlBaEJBaUFBS0FMTUFTZ0NBQ0lJUVFaSElBaEJCa2tiUVFKR0d5RUlDd0ovSUFBb0F0UUJJZ2tFUUNBQUtBSUVJQWtvQWdSR0RBRUxRUUFMSVFrQ1FDQUZSUTBBSUFsRkRRQkJBaUFBS0FMVUFTZ0NBQ0lGUVFaSElBVkJCa2tiUVFKSElRa0xBa0FDUUNBQUtBSUFRUUZxUVFOeElnQkJBazBFUUFKQUFrQUNRQ0FBUVFGckRnSUJBZ0FMSUFoRkJFQkJBUThMUVFBaEJTQUJJUUFEUUNBQUlBTXRBQUU2QUFBZ0FDQURMUUFDT2dBQklBQWdBeTBBQXpvQUFpQUFJQU10QUFRNkFBTWdBQ0FETFFBRk9nQUVJQUFnQXkwQUJqb0FCU0FBSUFNdEFBYzZBQVlnQUNBRExRQUlPZ0FISUFBZ0F5MEFDVG9BQ0NBQUlBTXRBQW82QUFrZ0FDQURMUUFMT2dBS0lBQWdBeTBBRERvQUN5QUFJQU10QUEwNkFBd2dBQ0FETFFBT09nQU5JQUFnQXkwQUR6b0FEaUFBSUFNdEFCQTZBQThnQUVFUWFpRUFJQVZCQVdvaUJVRVFSdzBBQ3d3REN5QUhSUVJBUVFFUEMwRUFJUVVnQVNFQUEwQWdBQ0FFSUFWcUlnTXRBQUE2QUFBZ0FDQURMUUFBT2dBQklBQWdBeTBBQURvQUFpQUFJQU10QUFBNkFBTWdBQ0FETFFBQU9nQUVJQUFnQXkwQUFEb0FCU0FBSUFNdEFBQTZBQVlnQUNBRExRQUFPZ0FISUFBZ0F5MEFBRG9BQ0NBQUlBTXRBQUE2QUFrZ0FDQURMUUFBT2dBS0lBQWdBeTBBQURvQUN5QUFJQU10QUFBNkFBd2dBQ0FETFFBQU9nQU5JQUFnQXkwQUFEb0FEaUFBSUFNdEFBQTZBQThnQUVFUWFpRUFJQVZCQVdvaUJVRVFSdzBBQ3d3Q0N5QUJBbjhDUUNBSFJRMEFJQWhGRFFBZ0JDMEFEeUFETFFBUUlBUXRBQTRnQXkwQUR5QUVMUUFOSUFNdEFBNGdCQzBBRENBRExRQU5JQVF0QUFzZ0F5MEFEQ0FFTFFBS0lBTXRBQXNnQkMwQUNTQURMUUFLSUFRdEFBZ2dBeTBBQ1NBRUxRQUhJQU10QUFnZ0JDMEFCaUFETFFBSElBUXRBQVVnQXkwQUJpQUVMUUFFSUFNdEFBVWdCQzBBQXlBRExRQUVJQVF0QUFJZ0F5MEFBeUFFTFFBQklBTXRBQUlnQXkwQUFTQUVMUUFBYW1wcWFtcHFhbXBxYW1wcWFtcHFhbXBxYW1wcWFtcHFhbXBxYW1wcWFrRVFha0VGZGd3QkN5QUhCRUFnQkMwQUR5QUVMUUFPSUFRdEFBMGdCQzBBRENBRUxRQUxJQVF0QUFvZ0JDMEFDU0FFTFFBSUlBUXRBQWNnQkMwQUJpQUVMUUFGSUFRdEFBUWdCQzBBQXlBRUxRQUNJQVF0QUFBZ0JDMEFBV3BxYW1wcWFtcHFhbXBxYW1wcWFrRUlha0VFZGd3QkMwR0FBU0FJUlEwQUdpQURMUUFRSUFNdEFBOGdBeTBBRGlBRExRQU5JQU10QUF3Z0F5MEFDeUFETFFBS0lBTXRBQWtnQXkwQUNDQURMUUFISUFNdEFBWWdBeTBBQlNBRExRQUVJQU10QUFNZ0F5MEFBU0FETFFBQ2FtcHFhbXBxYW1wcWFtcHFhbXBxUVFocVFRUjJDMEdBQWhBSEdnd0JDMEVCSVFBZ0IwVU5BU0FJUlEwQklBbEZEUUVnQkMwQUNDQUVMUUFHYXlBRUxRQVBJZ0FnQXkwQUFDSUZhMEVEZEdvZ0JDMEFDU0FFTFFBRmEwRUJkR29nQkMwQUNpQUVMUUFFYTBFRGJHb2dCQzBBQ3lBRUxRQURhMEVDZEdvZ0JDMEFEQ0FFTFFBQ2EwRUZiR29nQkMwQURTQUVMUUFCYTBFR2JHb2dCQzBBRGlBRUxRQUFhMEVIYkdwQkJXeEJJR3BCQm5VaEJ5QURMUUFKSUFNdEFBZHJJQU10QUFvZ0F5MEFCbXRCQVhScUlBTXRBQXNnQXkwQUJXdEJBMnhxSUFNdEFBd2dBeTBBQkd0QkFuUnFJQU10QUEwZ0F5MEFBMnRCQld4cUlBTXRBQTRnQXkwQUFtdEJCbXhxSUFNdEFBOGdBeTBBQVd0QkIyeHFJQU10QUJBaUF5QUZhMEVEZEdwQkJXeEJJR3BCQm5VaUJFRURkQ0VJSUFSQkIyd2hDU0FFUVFac0lRb2dCRUVGYkNFTElBUkJBMndoRENBRVFYMXNJUTBnQkVGN2JDRU9JQVJCZW13aER5QUVRWGxzSVJCQkFDQUVRUUYwSWhGcklSSkJBQ0FFUVFKMEloTnJJUlFnQUNBRGFrRUVkRUVRYWlFVlFRQWhCUU5BSUFFZ0JVRUVkQ0lBYWlBVklBVkJlV29nQjJ4cUlnTWdFR3BCQlhVaUJrSC9BU0FHUWY4QlNCc2lCa0VBSUFaQkFFb2JPZ0FBSUFFZ0FFRUJjbW9nQXlBUGFrRUZkU0lHUWY4QklBWkIvd0ZJR3lJR1FRQWdCa0VBU2hzNkFBQWdBU0FBUVFKeWFpQURJQTVxUVFWMUlnWkIvd0VnQmtIL0FVZ2JJZ1pCQUNBR1FRQktHem9BQUNBQklBQkJBM0pxSUFNZ0ZHcEJCWFVpQmtIL0FTQUdRZjhCU0JzaUJrRUFJQVpCQUVvYk9nQUFJQUVnQUVFRWNtb2dBeUFOYWtFRmRTSUdRZjhCSUFaQi93RklHeUlHUVFBZ0JrRUFTaHM2QUFBZ0FTQUFRUVZ5YWlBRElCSnFRUVYxSWdaQi93RWdCa0gvQVVnYklnWkJBQ0FHUVFCS0d6b0FBQ0FCSUFCQkJuSnFJQU1nQkd0QkJYVWlCa0gvQVNBR1FmOEJTQnNpQmtFQUlBWkJBRW9iT2dBQUlBRWdBRUVIY21vZ0EwRUZkU0lHUWY4QklBWkIvd0ZJR3lJR1FRQWdCa0VBU2hzNkFBQWdBU0FBUVFoeWFpQURJQVJxUVFWMUlnWkIvd0VnQmtIL0FVZ2JJZ1pCQUNBR1FRQktHem9BQUNBQklBQkJDWEpxSUFNZ0VXcEJCWFVpQmtIL0FTQUdRZjhCU0JzaUJrRUFJQVpCQUVvYk9nQUFJQUVnQUVFS2Ntb2dBeUFNYWtFRmRTSUdRZjhCSUFaQi93RklHeUlHUVFBZ0JrRUFTaHM2QUFBZ0FTQUFRUXR5YWlBRElCTnFRUVYxSWdaQi93RWdCa0gvQVVnYklnWkJBQ0FHUVFCS0d6b0FBQ0FCSUFCQkRISnFJQU1nQzJwQkJYVWlCa0gvQVNBR1FmOEJTQnNpQmtFQUlBWkJBRW9iT2dBQUlBRWdBRUVOY21vZ0F5QUtha0VGZFNJR1FmOEJJQVpCL3dGSUd5SUdRUUFnQmtFQVNoczZBQUFnQVNBQVFRNXlhaUFESUFscVFRVjFJZ1pCL3dFZ0JrSC9BVWdiSWdaQkFDQUdRUUJLR3pvQUFDQUJJQUJCRDNKcUlBTWdDR3BCQlhVaUFFSC9BU0FBUWY4QlNCc2lBRUVBSUFCQkFFb2JPZ0FBSUFWQkFXb2lCVUVRUncwQUN3dEJBQ0VBSUFFZ0FrRUFFQWdnQVNBQ1FVQnJRUUVRQ0NBQklBSkJnQUZxUVFJUUNDQUJJQUpCd0FGcVFRTVFDQ0FCSUFKQmdBSnFRUVFRQ0NBQklBSkJ3QUpxUVFVUUNDQUJJQUpCZ0FOcVFRWVFDQ0FCSUFKQndBTnFRUWNRQ0NBQklBSkJnQVJxUVFnUUNDQUJJQUpCd0FScVFRa1FDQ0FCSUFKQmdBVnFRUW9RQ0NBQklBSkJ3QVZxUVFzUUNDQUJJQUpCZ0FacVFRd1FDQ0FCSUFKQndBWnFRUTBRQ0NBQklBSkJnQWRxUVE0UUNDQUJJQUpCd0FkcVFROFFDQXNnQUF1N0NBRUhmd0pBSUFORkRRQWdBQ2dDQUNBRElBQW9BZ1FpQlc0aUNDQUZiQ0lFUVFoMGFpQURJQVJySWdkQkJIUnFJUVlnQlVFRWRDRUVJQUFvQWdnaENTQUZJQU5MSWdwRkJFQWdBU0FHSUFSQkFYSnJJZ010QUFBNkFBQWdBU0FETFFBQk9nQUJJQUVnQXkwQUFqb0FBaUFCSUFNdEFBTTZBQU1nQVNBRExRQUVPZ0FFSUFFZ0F5MEFCVG9BQlNBQklBTXRBQVk2QUFZZ0FTQURMUUFIT2dBSElBRWdBeTBBQ0RvQUNDQUJJQU10QUFrNkFBa2dBU0FETFFBS09nQUtJQUVnQXkwQUN6b0FDeUFCSUFNdEFBdzZBQXdnQVNBRExRQU5PZ0FOSUFFZ0F5MEFEam9BRGlBQklBTXRBQTg2QUE4Z0FTQURMUUFRT2dBUUlBRWdBeTBBRVRvQUVTQUJJQU10QUJJNkFCSWdBU0FETFFBVE9nQVRJQUVnQXkwQUZEb0FGQ0FCUVJWcUlRRUxJQWNFUUNBQ0lBWkJmMm9pQXkwQUFEb0FBQ0FDSUFNZ0JHb2lBeTBBQURvQUFTQUNJQU1nQkdvaUF5MEFBRG9BQWlBQ0lBTWdCR29pQXkwQUFEb0FBeUFDSUFNZ0JHb2lBeTBBQURvQUJDQUNJQU1nQkdvaUF5MEFBRG9BQlNBQ0lBTWdCR29pQXkwQUFEb0FCaUFDSUFNZ0JHb2lBeTBBQURvQUJ5QUNJQU1nQkdvaUF5MEFBRG9BQ0NBQ0lBTWdCR29pQXkwQUFEb0FDU0FDSUFNZ0JHb2lBeTBBQURvQUNpQUNJQU1nQkdvaUF5MEFBRG9BQ3lBQ0lBTWdCR29pQXkwQUFEb0FEQ0FDSUFNZ0JHb2lBeTBBQURvQURTQUNJQU1nQkdvaUF5MEFBRG9BRGlBQ0lBTWdCR290QUFBNkFBOGdBa0VRYWlFQ0N5QUFLQUlBSUFVZ0NXd2lCRUVJZEdvZ0NDQUZRUU4wSWdCc1FRTjBhaUFIUVFOMGFpRUdJQUJCK1AvLy93ZHhJUUFnQ2tVRVFDQUJJQVlnQUVFQmNtc2lBeTBBQURvQUFDQUJJQU10QUFFNkFBRWdBU0FETFFBQ09nQUNJQUVnQXkwQUF6b0FBeUFCSUFNdEFBUTZBQVFnQVNBRExRQUZPZ0FGSUFFZ0F5MEFCam9BQmlBQklBTXRBQWM2QUFjZ0FTQURRUWhxSWdNdEFBQTZBQWdnQVNBRVFRWjBJQU5xSWdOQmVHb3RBQUE2QUFrZ0FTQURRWGxxTFFBQU9nQUtJQUVnQTBGNmFpMEFBRG9BQ3lBQklBTkJlMm90QUFBNkFBd2dBU0FEUVh4cUxRQUFPZ0FOSUFFZ0EwRjlhaTBBQURvQURpQUJJQU5CZm1vdEFBQTZBQThnQVNBRFFYOXFMUUFBT2dBUUlBRWdBeTBBQURvQUVRc2dCMFVOQUNBQ0lBWkJmMm9pQVMwQUFEb0FBQ0FDSUFBZ0FXb2lBUzBBQURvQUFTQUNJQUFnQVdvaUFTMEFBRG9BQWlBQ0lBQWdBV29pQVMwQUFEb0FBeUFDSUFBZ0FXb2lBUzBBQURvQUJDQUNJQUFnQVdvaUFTMEFBRG9BQlNBQ0lBQWdBV29pQVMwQUFEb0FCaUFDSUFBZ0FXb2lBUzBBQURvQUJ5QUNJQUFnQVdvZ0JDQUZhMEVHZEdvaUFTMEFBRG9BQ0NBQ0lBQWdBV29pQVMwQUFEb0FDU0FDSUFBZ0FXb2lBUzBBQURvQUNpQUNJQUFnQVdvaUFTMEFBRG9BQ3lBQ0lBQWdBV29pQVMwQUFEb0FEQ0FDSUFBZ0FXb2lBUzBBQURvQURTQUNJQUFnQVdvaUFTMEFBRG9BRGlBQ0lBQWdBV290QUFBNkFBOExDNjhCQVFGL0l3QkIwQUJySWdZa0FDQUNJQVpCSUdvZ0JpQURFRlVDUUFKQVFRSWdBQ2dDQUNJRFFRWkhJQU5CQmtrYlFRRkdCRUFnQUNBRklBRkJ5QUpxSUFaQklHb2dCaUFFRUZRaUEwVU5BUXdDQ3lBQUlBVWdBU0FHUVNCcUlBWWdCQkJUSWdNTkFRc2dBQ0FGUVlBQ2FpQUJRY2dLYWlBR1FUVnFJQVpCRUdvZ0FTZ0NqQUVnQkJCU0lnTU5BRUVBSVFNZ0FDZ0N4QUZCQVVzTkFDQUNJQVVRR3dzZ0JrSFFBR29rQUNBREM2TXFBU1IvSXdCQklHc2lFQ1FBSUJBZ0JDZ0NCQ0lJTmdJTUlCQWdCQ2dDQ0RZQ0VDQURJQWh1SWdaQkJIUWhGQ0FESUFZZ0NHeHJRUVIwSVJVQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUFBb0FnQWlCa0VEVFFSQUFrQUNRQUpBSUFaQkFtc09BZ0VDQUFzZ0FTZ0NrQUVoRXlBQUtBSUVJUTVCZnlFUEFuOGdBQ2dDeUFFaUNVVUVRRUVBSVFoQmZ3d0JDMEVBSVFoQmZ5QUpLQUlFSUE1SERRQWFRUUVoRWtGL0lBa29BZ0JCQlVzTkFCb2dDU2dDbUFFaUNFRVFkaUVISUFrb0FtZ0xJUTBnQUNnQ3pBRWlDVVVOQ0NBSktBSUVJQTVIRFFoQkFTRVdJQWtvQWdCQkJVc05DQ0FKS0FLc0FTSVJRUkIySVFvZ0NTZ0NiQ0VQREFnTElBRW9BcEFCSVJNZ0FTOEJvZ0VoRFNBQkx3R2dBU0VNSUFBb0FnUWhDMEYvSVFjQ1FDQUFLQUxNQVNJR1JRMEFJQXNnQmlnQ0JFY0VRQXdCQzBFQklSSWdCaWdDQUVFRlN3MEFJQVlvQXF3QklnbEJFSFloQ2lBR0tBSnNJUWNMSUFjZ0UwWUVRQ0FLSVFjZ0NTRUdEQWNMUVg4aER3SkFBa0FDUUNBQUtBTElBU0lJUlFSQVFRQWhCd3dCQzBFQUlRY2dDQ2dDQkNBTFJnMEJDMEVBSVFZTUFRdEJBU0VYSUFnb0FnQkJCVXNFUUVFQUlRWU1BUXNnQ0NnQ21BRWlCa0VRZGlFSElBZ29BbWdoRHdzQ1FBSkFJQUFvQXRBQklnaEZEUUFnQ0NnQ0JDQUxSdzBBSUFnb0FnQkJCVTBOQVF3R0N3SkFJQUFvQXRRQklnaEZEUUFnQ0NnQ0JDQUxSdzBBSUFnb0FnQkJCVXNOQmlBSUtBSndJUllnQ0NnQ3dBRWhDQXdIQzBFQUlRaEJmeUVXSUJJTkJpQVhSUTBHREFjTElBZ29BbXdoRmlBSUtBS3NBU0VJREFVTElBRW9BcEFCSVE4Z0FTOEJvZ0VoRFNBQkx3R2dBU0VNSUFBb0FnUWhCa0YvSVFjQ1FDQUFLQUxJQVNJS1JRUkFRUUFoQ0F3QkMwRUFJUWdnQmlBS0tBSUVSd1JBREFFTFFRRWhFU0FLS0FJQVFRVkxEUUFnQ2lnQ21BRWlDVUVRZGlFSUlBb29BbWdoQndzZ0J5QVBSZzBCQW44Q2Z3SkFBa0FnQUNnQ3pBRWlCMFVOQUNBSEtBSUVJQVpIRFFBZ0J5Z0NBRUVGU3cwQklBY29BbkFoRVNBSEtBSzhBU0VLSUFjb0Ftd2hFaUFIS0FLc0FTSUdRUkIyREFNTEFrQWdBQ2dDMUFFaUIwVU5BQ0FIS0FJRUlBWkhEUUJCQUNFR1FYOGhFaUFIS0FJQVFRVkxCRUJCZnlFUlFRQU1Bd3NnQnlnQ2NDRVJJQWNvQXNBQkRBSUxJQkVOQkF0QmZ5RVJRWDhoRWtFQUlRWkJBQXNoQ2tFQUN5RUhJQThnRWtZaUN5QVBJQkZHYWtFQlJ3UkFJQWNnQ0NBSFFSQjBRUkIxSWdzZ0NFRVFkRUVRZFNJT1NpSUlHeUlISUE0Z0N5QU9JQXNnRGtnYklBZ2JJZ2dnQ2tFUWRTSUxJQWdnQzBvYklBZEJFSFJCRUhVZ0MwZ2JJUWNnQmlBSklBWkJFSFJCRUhVaUN5QUpRUkIwUVJCMUlnbEtJZ1liSWdoQi8vOERjU0FKSUFzZ0NTQUxJQWxJR3lBR0d5SUdJQXBCRUhSQkVIVWlDU0FHSUFsS0d5QUlRUkIwUVJCMUlBbElHeUVHREFNTElBc05BaUFLUVJCMklRY2dDaUVHREFJTFFRRWhHeUFBUVlRQmFpRWNBMEFDZnlBQklCMUJBblFpSG1vaUlDSWtLQUt3QVNJR1FRSk5CRUFnQmtFQ2RFR2NOV29vQWdBTUFRdEJCQXNoSWlBQUlCNXFJZ1lnSUNnQ3dBRTJBbVFnQmlBQ0lDQW9Bc0FCRUJRaUJqWUNkQ0FHUlEwSUlDSUVRQ0FjSUIxQkJIUWlIMm9pSlNFbUlCd2dIMEVNY21vaUowRUNhaUVvSUJ3Z0gwRUljbW9pS1NFUklCd2dIMEVFY21vaUZpRVRRUUFoQmdOQUlBRWdIMm9nQmtFQ2RHb2lDQzhCMGdFaER5QUlMd0hRQVNFT0lDQW9Bc0FCSVNGQmZ5RVhBbjhnQUNBZFFRZDBJQ1FvQXJBQklpTkJCWFJxSUFaQkEzUnFJaHBCc0JscUtBSUFFQkVpQ1VVRVFFRUFJUXhCQUNFSVFRQWhDa0YvREFFTFFRQWhERUVBSVFoQkFDRUtRWDhnQ1NnQ0JDQUFLQUlFUncwQUdrRUJJUXBCZnlBSktBSUFRUVZMRFFBYUlBa2dHa0cwR1dvdEFBQWlCMEVDZEdvb0FvUUJJZ2hCRUhZaERDQUpJQWRCL0FGeGFpZ0NaQXNoRFFKQUFrQUNRQ0FBSUJwQnNCMXFLQUlBRUJFaUdFVUVRRUVBSVFrTUFRdEJBQ0VKSUJnb0FnUWdBQ2dDQkVZTkFRdEJBQ0VTUVFBaEN3d0JDMEVCSVFzZ0dDZ0NBRUVGU3dSQVFRQWhFZ3dCQ3lBWUlCcEJ0QjFxTFFBQUlnZEJBblJxS0FLRUFTSVNRUkIySVFrZ0dDQUhRZndCY1dvb0FtUWhGd3NDUUFKQUFrQUNRQUpBSUFBZ0drR3dJV29vQWdBUUVTSVpSUTBBSUJrb0FnUWdBQ2dDQkVjTkFDQVpLQUlBUVFWTkRRRU1BZ3NDUUNBQUlCcEJzQ1ZxS0FJQUVCRWlHVVVOQUNBWktBSUVJQUFvQWdSSERRQWdHU2dDQUVFRlN3MENJQmtnR2tHMEpXb3RBQUFpQjBIOEFYRnFLQUprSVJnZ0dTQUhRUUowYWlnQ2hBRWhCd3dEQzBFQUlRZEJmeUVZSUFwRkRRSWdDdzBDREFNTElCa2dHa0cwSVdvdEFBQWlCMEg4QVhGcUtBSmtJUmdnR1NBSFFRSjBhaWdDaEFFaEJ3d0JDMEVBSVFkQmZ5RVlDeUFYSUNGR0lnb2dEU0FoUmlJTGFpQVlJQ0ZHYWtFQlJ3UkFJQWtnRENBSlFSQjBRUkIxSWdzZ0RFRVFkRUVRZFNJTVNpSUpHeUlLSUF3Z0N5QU1JQXNnREVnYklBa2JJZ2tnQjBFUWRTSUxJQWtnQzBvYklBcEJFSFJCRUhVZ0MwZ2JJUXdnRWlBSUlCSkJFSFJCRUhVaUNpQUlRUkIwUVJCMUlndEtJZ2diSWdsQi8vOERjU0FMSUFvZ0N5QUtJQXRJR3lBSUd5SUlJQWRCRUhSQkVIVWlCeUFJSUFkS0d5QUpRUkIwUVJCMUlBZElHeUVJREFFTElBZ2dFaUFMR3lFSUlBd2dDU0FMR3lFTUlBc05BQ0FLRFFBZ0IwRVFkaUVNSUFjaENBc2dDQ0FPYWlJS1FSQjBRUkIxUVlCQWEwSC8vd0JMRFFvZ0RDQVBhaUlKUVJCMFFSQjFRWUFRYWtIL0gwc05DaUFqUVFOTkJFQUNmd0pBQWtBQ1FBSkFJQ05CQVdzT0F3RUNBd0FMSUNVZ0Nqc0JBQ0FtSUFrN0FRSWdGaUFLT3dFQUlCTWdDVHNCQWlBcElBbzdBUUFnRVNBSk93RUNJQ2NnQ2pzQkFDQW9EQU1MSUJ3Z0JrRUJkQ0FlYWtFQ2RDSUhhaUlJSUFrN0FRSWdDQ0FLT3dFQUlCd2dCMEVFY21vaUNDQUtPd0VBSUFoQkFtb01BZ3NnQUNBR0lCNXFRUUowYWlJSUlBbzdBWXdCSUFnZ0NUc0JoZ0VnQ0NBS093R0VBU0FJUVk0QmFnd0JDeUFBSUFZZ0htcEJBblJxSWdnZ0Nqc0JoQUVnQ0VHR0FXb0xJQWs3QVFBTElBWkJBV29pQmlBaVJ3MEFDd3NnSFVFQmFpSWRRUVJIRFFBTFFRQWhEQU5BSUJBZ0FDQU1RUUowSWdKcUtBSjBOZ0lJSUF4QkFVdEJBM1FoQ1NBTVFRTjBRUWh4SVFjQ1FDQUJJQUpxS0FLd0FTSUNRUUpOQkVBQ1FBSkFBa0FnQWtFQmF3NENBUUlBQ3lBRklBQWdERUVFZEdwQmhBRnFJQkJCQ0dvZ0ZTQVVJQWNnQ1VFSVFRZ1FEZ3dEQ3lBRklBQWdERUVFZEdvaUFrR0VBV29nRUVFSWFpQVZJQlFnQnlBSlFRaEJCQkFPSUFVZ0FrR01BV29nRUVFSWFpQVZJQlFnQnlBSlFRUnlRUWhCQkJBT0RBSUxJQVVnQUNBTVFRUjBhaUlDUVlRQmFpQVFRUWhxSUJVZ0ZDQUhJQWxCQkVFSUVBNGdCU0FDUVlnQmFpQVFRUWhxSUJVZ0ZDQUhRUVJ5SUFsQkJFRUlFQTRNQVFzZ0JTQUFJQXhCQkhScUlnaEJoQUZxSUJCQkNHb2dGU0FVSUFjZ0NVRUVRUVFRRGlBRklBaEJpQUZxSUJCQkNHb2dGU0FVSUFkQkJISWlCaUFKUVFSQkJCQU9JQVVnQ0VHTUFXb2dFRUVJYWlBVklCUWdCeUFKUVFSeUlnSkJCRUVFRUE0Z0JTQUlRWkFCYWlBUVFRaHFJQlVnRkNBR0lBSkJCRUVFRUE0TElBeEJBV29pREVFRVJ3MEFDd3dHQ3lBSUlRY2dDU0VHQzBFQklSc2dCaUFNYWlJSVFSQjBRUkIxUVlCQWEwSC8vd0JMRFFVZ0J5QU5haUlHUVJCMFFSQjFRWUFRYWtIL0gwc05CU0FDSUE4UUZDSUhSUTBGSUFBZ0Jqc0JzZ0VnQUNBSU93R3dBU0FBSUFjMkFuUWdBQ0FQTmdKa0lBQWdCellDZkNBQUlBODJBbXdnQUNBQUtBS3dBU0lHTmdLc0FTQUFJQVkyQXFnQklBQWdCallDcEFFZ0FDQUdOZ0tRQVNBQUlBWTJBb3dCSUFBZ0JqWUNpQUVnQUNBR05nS0VBU0FCS0FLVUFTRU9JQUV2QWFZQklRd2dBUzhCcEFFaEN5QUFLQUlFSVFrQ1FBSkFJQUFvQXRBQklnZEZEUUFnQnlnQ0JDQUpSdzBBUVFFaEVTQUhLQUlBUVFWTEJFQkJmeUVJUVFBaEJ3d0NDeUFIS0FKc0lRZ2dCeWdDckFFaEJ3d0JDMEYvSVFoQkFDRUhJQUFvQXN3QklncEZCRUJCQUNFUkRBRUxJQWtnQ2lnQ0JFY0VRRUVBSVJFTUFRdEJBU0VSSUFvb0FnQkJCVXNOQUNBS0tBSnNJUWdnQ2lnQ3NBRWhCd3NDUUNBSUlBNUdSUVJBSUFaQkVIWWhDQUovQWtBQ1FDQUFLQUxNQVNJTlJRMEFJQTBvQWdRZ0NVY05BQ0FOS0FJQVFRVkxEUUVnRFNnQ3ZBRWlFVUVRZGlFS0lBMG9BbkFNQWdzZ0VVVU5Bd3RCQUNFUlFRQWhDa0YvQ3lFTklBNGdEMFlpQ1NBTklBNUdha0VCUndSQUlBb2dDQ0FLUVJCMFFSQjFJZzBnQ0VFUWRFRVFkVW9pQ0JzaUNTQUdRUkIxSWdvZ0RTQUtJQW9nRFVvYklBZ2JJZ2dnQjBFUWRTSUtJQWdnQ2tvYklBbEJFSFJCRUhVZ0NrZ2JJUWdnRVNBR0lCRkJFSFJCRUhVaUNpQUdRUkIwUVJCMUlnMUtJZ1liSWdsQi8vOERjU0FOSUFvZ0RTQU5JQXBLR3lBR0d5SUdJQWRCRUhSQkVIVWlCeUFHSUFkS0d5QUpRUkIwUVJCMUlBZElHeUVHREFJTElBa05BU0FOSUE1R0JFQWdFVUgvL3dOeElBcEJFSFJ5SVFZZ0NpRUlEQUlMQ3lBSFFSQjJJUWdnQnlFR0N5QUdJQXRxSWdkQkVIUkJFSFZCZ0VCclFmLy9BRXNOQlNBSUlBeHFJZ1pCRUhSQkVIVkJnQkJxUWY4ZlN3MEZJQUlnRGhBVUlnSkZEUVVnQUNBR093SENBU0FBSUFjN0FjQUJJQUFnQWpZQ2dBRWdBQ0FDTmdKNElBQWdEallDY0NBQUlBNDJBbWdnQUNBQUtBTEFBU0lHTmdLOEFTQUFJQVkyQXJnQklBQWdCallDdEFFZ0FDQUdOZ0tnQVNBQUlBWTJBcHdCSUFBZ0JqWUNtQUVnQUVHVUFXb2lBaUFHTmdJQUlCQWdBQ2dDZERZQ0NDQUZJQUJCaEFGcUlCQkJDR29nRlNBVVFRQkJBRUVJUVJBUURpQVFJQUFvQW5nMkFnZ2dCU0FDSUJCQkNHb2dGU0FVUVFoQkFFRUlRUkFRRGd3RUMwRUFJUWhCZnlFV0N5QVBJQk5HSWdzZ0V5QVdSbXBCQVVjRVFDQUtJQWNnQ2tFUWRFRVFkU0lMSUFkQkVIUkJFSFVpRGtvaUJ4c2lDaUFPSUFzZ0RpQUxJQTVJR3lBSEd5SUhJQWhCRUhVaUN5QUhJQXRLR3lBS1FSQjBRUkIxSUF0SUd5RUhJQWtnQmlBSlFSQjBRUkIxSWdvZ0JrRVFkRUVRZFNJTFNpSUdHeUlKUWYvL0EzRWdDeUFLSUFzZ0NpQUxTQnNnQmhzaUJpQUlRUkIwUVJCMUlnZ2dCaUFJU2hzZ0NVRVFkRUVRZFNBSVNCc2hCZ3dCQ3lBTERRQWdDRUVRZGlFSElBZ2hCZ3RCQVNFYklBWWdER29pQ0VFUWRFRVFkVUdBUUd0Qi8vOEFTdzBDSUFjZ0RXb2lCa0VRZEVFUWRVR0FFR3BCL3g5TERRSWdBaUFURUJRaUIwVU5BaUFBSUFZN0FhSUJJQUFnQ0RzQm9BRWdBQ0FITmdKMElBQWdFellDWkNBQUlBYzJBbmdnQUNBVE5nSm9JQUFnQUNnQ29BRWlEellDbkFFZ0FDQVBOZ0tZQVNBQUlBODJBcFFCSUFBZ0R6WUNrQUVnQUNBUE5nS01BU0FBSUE4MkFvZ0JJQUFnRHpZQ2hBRWdBU2dDbEFFaERpQUJMd0dtQVNFTklBRXZBYVFCSVF3Q2Z3SkFBa0FDUUNBQUtBTElBU0lHQkVBZ0JpZ0NCQ0FBS0FJRVJnUkFJQVlvQWdCQkJVMEVRQ0FHS0FLNEFTSUxRUkIySVFjZ0JpZ0NjQ0FPUncwRUlBc2hDUXdEQzBGL0lSSkJBQ0VKUVFBaEIwRUFJUXRCQUNFS0lBNUJmMFlOQWd3RUMwRi9JUkpCQUNFSlFRQWhCMEVBSVF0QkFDRUtJQTVCZjBZTkFRd0RDMEYvSVJKQkFDRUpRUUFoQjBFQUlRdEJBQ0VLSUE1QmYwY05BZ3NnQ1VILy93TnhJQWRCRUhSeURBSUxJQVlvQW1naEVpQUdLQUtnQVNFS0lBY2hDUXNnRDBFUWRpRUlJQTRnRTBZaUJpQU9JQkpHYWtFQlJ3UkFJQWdnQ1NBSlFSQjBRUkIxSWdrZ0NFRVFkRUVRZFVnaUJ4c2lDQ0FKSUE5QkVIVWlCaUFKSUFZZ0NVZ2JJQWNiSWdZZ0NrRVFkU0lISUFZZ0Iwb2JJQWhCRUhSQkVIVWdCMGdiSVFjZ0R5QUxJQXRCRUhSQkVIVWlDeUFQUVJCMFFSQjFJZ2xJSWdZYklnaEIvLzhEY1NBTElBa2dDeUFKSUF0SUd5QUdHeUlHSUFwQkVIUkJFSFVpQ1NBR0lBbEtHeUFJUVJCMFFSQjFJQWxJR3d3QkN5QUlJQXBCRUhZZ0Joc2hCeUFQSUFvZ0Joc0xJQXhxSWdoQkVIUkJFSFZCZ0VCclFmLy9BRXNOQWlBSElBMXFJZ1pCRUhSQkVIVkJnQkJxUWY4ZlN3MENJQUlnRGhBVUlnSkZEUUlnQUNBR093SENBU0FBSUFnN0FjQUJJQUFnQWpZQ2dBRWdBQ0FDTmdKOElBQWdEallDY0NBQUlBNDJBbXdnQUNBQUtBTEFBU0lHTmdLOEFTQUFJQVkyQXJnQklBQWdCallDdEFFZ0FDQUdOZ0t3QVNBQUlBWTJBcXdCSUFBZ0JqWUNxQUVnQUVHa0FXb2lBaUFHTmdJQUlCQWdBQ2dDZERZQ0NDQUZJQUJCaEFGcUlCQkJDR29nRlNBVVFRQkJBRUVRUVFnUURpQVFJQUFvQW53MkFnZ2dCU0FDSUJCQkNHb2dGU0FVUVFCQkNFRVFRUWdRRGd3QkN3SkFJQVpGQkVBZ0VrVUVRRUVBSVFrTUFnc2dGa1VFUUVFQUlRa01BZ3NnQ0VILy93TnhJQWRCRUhSeUlBMXlSUVJBUVFBaENRd0NDMEVBSVFrZ0VVSC8vd054SUFwQkVIUnlJQTl5UlEwQkN5QUJMd0dpQVNFTElBRXZBYUFCSVFrQ1FBSkFBa0FDUUFKQUlBQW9BdEFCSWdaRkRRQWdCaWdDQkNBT1J3MEFJQVlvQWdCQkJVME5BUXdDQ3dKQUlBQW9BdFFCSWdaRkRRQWdCaWdDQkNBT1J3MEFJQVlvQWdCQkJVc05BaUFHS0FKd0lSY2dCaWdDd0FFaERBd0RDMEYvSVJjZ0VrVU5BaUFXRFFJTUF3c2dCaWdDYkNFWElBWW9BcXdCSVF3TUFRdEJmeUVYQ3lBUElCTkdJZ1lnRFNBVFJpSU5haUFUSUJkR2FrRUJSd1JBSUFvZ0J5QUtRUkIwUVJCMUlnb2dCMEVRZEVFUWRTSU5TaUlHR3lJSElBMGdDaUFOSUFvZ0RVZ2JJQVliSWdZZ0RFRVFkU0lLSUFZZ0Nrb2JJQWRCRUhSQkVIVWdDa2diSVFjZ0VTQUlJQkZCRUhSQkVIVWlDaUFJUVJCMFFSQjFJZzFLSWdZYklnaEIvLzhEY1NBTklBb2dEU0FLSUExSUd5QUdHeUlHSUF4QkVIUkJFSFVpQ2lBR0lBcEtHeUFJUVJCMFFSQjFJQXBJR3lFSURBRUxJQWdnRVNBTkd5RUlJQWNnQ2lBTkd5RUhJQTBOQUNBR0RRQWdERUVRZGlFSElBd2hDQXRCQVNFYklBZ2dDV29pREVFUWRFRVFkVUdBUUd0Qi8vOEFTdzBDSUFjZ0Myb2lDVUVRZEVFUWRVR0FFR3BCL3g5TERRSUxJQUlnRXhBVUlnSkZCRUJCQVNFYkRBSUxJQUFnQ1RzQndnRWdBQ0FNT3dIQUFTQUFJQUkyQW5RZ0FDQVROZ0prSUFBZ0FqWUNnQUVnQUNBQ05nSjhJQUFnQWpZQ2VDQUFJQk0yQW5BZ0FDQVROZ0pzSUFBZ0V6WUNhQ0FBSUFBb0FzQUJJZ1kyQXJ3QklBQWdCallDdUFFZ0FDQUdOZ0swQVNBQUlBWTJBckFCSUFBZ0JqWUNyQUVnQUNBR05nS29BU0FBSUFZMkFxUUJJQUFnQmpZQ29BRWdBQ0FHTmdLY0FTQUFJQVkyQXBnQklBQWdCallDbEFFZ0FDQUdOZ0tRQVNBQUlBWTJBb3dCSUFBZ0JqWUNpQUVnQUNBR05nS0VBU0FRSUFJMkFnZ2dCU0FBUVlRQmFpQVFRUWhxSUJVZ0ZFRUFRUUJCRUVFUUVBNExRUUFoR3lBQUtBTEVBVUVCU3cwQUlBQW9BZ0FFUUNBRUlBTWdCU0FCUWNnQ2FoQllEQUVMSUFRZ0JSQWJDeUFRUVNCcUpBQWdHd3VUQ3dFUGZ5QUFLQUlBSWhFZ0FTQUJJQUFvQWdRaUNuQWlBV3NpQkVFSWRHb2dBVUVFZEdvaEJTQUtRUVIwSVFzZ0FDZ0NDQ0FLYkNJQVFRWjBJUVlnQVVFRGRDRUpJQUJCQ0hRaERDQUVRUVowSVJJZ0NrRUNkRUg4Ly8vL0EzRkJBblFoRUFOQUlBVWdEa0VDZENJQVFmQXBhaWdDQUNJQklBdHNhaUFBUWJBcGFpZ0NBQ0lBYWlFRUlBSWdBVUVFZEdvZ0FHb2hBQUpBSUFNZ0RrRUdkR29pQVNnQ0FDSUhRZi8vL3dkSEJFQWdBU2dDQkNFSUlBQXRBQUVoRFNBRUlBY2dBQzBBQUdwQnNDNXFMUUFBT2dBQUlBRW9BZ2doQnlBQUxRQUNJUThnQkNBSUlBMXFRYkF1YWkwQUFEb0FBU0FCS0FJTUlRZ2dBQzBBQXlFTklBUWdCeUFQYWtHd0xtb3RBQUE2QUFJZ0JDQUlJQTFxUWJBdWFpMEFBRG9BQXlBQktBSVVJUWNnQUMwQUVTRUlJQVFnQzJvaUJDQUJLQUlRSUFBdEFCQnFRYkF1YWkwQUFEb0FBQ0FCS0FJWUlRMGdBQzBBRWlFUElBUWdCeUFJYWtHd0xtb3RBQUE2QUFFZ0FTZ0NIQ0VISUFBdEFCTWhDQ0FFSUEwZ0QycEJzQzVxTFFBQU9nQUNJQVFnQnlBSWFrR3dMbW90QUFBNkFBTWdBU2dDSkNFSElBQXRBQ0VoQ0NBRUlBdHFJZ1FnQVNnQ0lDQUFMUUFnYWtHd0xtb3RBQUE2QUFBZ0FTZ0NLQ0VOSUFBdEFDSWhEeUFFSUFjZ0NHcEJzQzVxTFFBQU9nQUJJQUVvQWl3aEJ5QUFMUUFqSVFnZ0JDQU5JQTlxUWJBdWFpMEFBRG9BQWlBRUlBY2dDR3BCc0M1cUxRQUFPZ0FESUFFb0FqUWhCeUFBTFFBeElRZ2dCQ0FMYWlJRUlBRW9BakFnQUMwQU1HcEJzQzVxTFFBQU9nQUFJQUVvQWpnaERTQUFMUUF5SVE4Z0JDQUhJQWhxUWJBdWFpMEFBRG9BQVNBQktBSThJUUVnQUMwQU15RUFJQVFnRFNBUGFrR3dMbW90QUFBNkFBSWdCQ0FBSUFGcVFiQXVhaTBBQURvQUF3d0JDeUFBS0FJUUlRRWdCQ0FBS0FJQU5nSUFJQVFnRUdvaUJDQUJOZ0lBSUFBb0FqQWhBU0FFSUJCcUlnUWdBQ2dDSURZQ0FDQUVJQkJxSUFFMkFnQUxJQTVCQVdvaURrRVFSdzBBQ3lBTUlCRnFJQkpxSUFscUloQWdCbW9oRVNBS1FRTjBRZmovLy84SGNTSUxRUUoyUVFKMElRNUJFQ0VLQTBBZ0NrRUNkRUVNY1NJQVFmQXBhaWdDQUNJQklBdHNJQUJCc0NscUtBSUFJZ0JxSUJFZ0VDQUtRUk5MSWdVYmFpRUVJQUpCd0FKQmdBSWdCUnRxSUFGQkEzUWdBR3BxSVFBQ1FDQURJQXBCQm5ScUlnRW9BZ0FpQlVILy8vOEhSd1JBSUFFb0FnUWhCaUFBTFFBQklRa2dCQ0FGSUFBdEFBQnFRYkF1YWkwQUFEb0FBQ0FCS0FJSUlRVWdBQzBBQWlFTUlBUWdCaUFKYWtHd0xtb3RBQUE2QUFFZ0FTZ0NEQ0VHSUFBdEFBTWhDU0FFSUFVZ0RHcEJzQzVxTFFBQU9nQUNJQVFnQmlBSmFrR3dMbW90QUFBNkFBTWdBU2dDRkNFRklBQXRBQWtoQmlBRUlBdHFJZ1FnQVNnQ0VDQUFMUUFJYWtHd0xtb3RBQUE2QUFBZ0FTZ0NHQ0VKSUFBdEFBb2hEQ0FFSUFVZ0JtcEJzQzVxTFFBQU9nQUJJQUVvQWh3aEJTQUFMUUFMSVFZZ0JDQUpJQXhxUWJBdWFpMEFBRG9BQWlBRUlBVWdCbXBCc0M1cUxRQUFPZ0FESUFFb0FpUWhCU0FBTFFBUklRWWdCQ0FMYWlJRUlBRW9BaUFnQUMwQUVHcEJzQzVxTFFBQU9nQUFJQUVvQWlnaENTQUFMUUFTSVF3Z0JDQUZJQVpxUWJBdWFpMEFBRG9BQVNBQktBSXNJUVVnQUMwQUV5RUdJQVFnQ1NBTWFrR3dMbW90QUFBNkFBSWdCQ0FGSUFacVFiQXVhaTBBQURvQUF5QUJLQUkwSVFVZ0FDMEFHU0VHSUFRZ0Myb2lCQ0FCS0FJd0lBQXRBQmhxUWJBdWFpMEFBRG9BQUNBQktBSTRJUWtnQUMwQUdpRU1JQVFnQlNBR2FrR3dMbW90QUFBNkFBRWdBU2dDUENFQklBQXRBQnNoQUNBRUlBa2dER3BCc0M1cUxRQUFPZ0FDSUFRZ0FDQUJha0d3TG1vdEFBQTZBQU1NQVFzZ0FDZ0NDQ0VCSUFRZ0FDZ0NBRFlDQUNBRUlBNXFJZ1FnQVRZQ0FDQUFLQUlZSVFFZ0JDQU9haUlFSUFBb0FoQTJBZ0FnQkNBT2FpQUJOZ0lBQ3lBS1FRRnFJZ3BCR0VjTkFBc0w1Z0VCQjM4Q1FDQUFLQUlBSWdWRkRRQWdBRUVCTmdJOElBQW9BamdOQUNBQUtBSWNJUVpCLy8vLy93Y2hBZ05BQTBBZ0JTQURRU2hzYWlJRUtBSVlCRUFnQkNBQklBUW9BaEFpQkNBQ1NDSUhHeUVCSUFRZ0FpQUhHeUVDQ3lBRFFRRnFJZ01nQmswTkFDQUJSUTBDSUFBb0Fnd2dBQ2dDRUNJRFFRUjBhaUlDSUFFb0FnQTJBZ0FnQWlBQktBSWtOZ0lNSUFJZ0FTZ0NIRFlDQkNBQ0lBRW9BaUEyQWdnZ0FDQURRUUZxTmdJUVFRQWhBeUFCUVFBMkFoZ2dBU2dDRkNFRVFRQWhBVUgvLy8vL0J5RUNJQVFOQUFzZ0FDQUFLQUlzUVg5cU5nSXNEQUFBQ3dBTEM5d0dBUXAvSUFCQ0FEY0NFQUpBQWtBQ1FDQURSUTBBQWtBQ1FDQUJJQUFvQWpBaUEwY0VRQ0FEUVFGcUlBQW9BaUFpQkhBaUNTQUJSZzBCSUFBb0FnQWdBQ2dDSEVFb2JHb29BZ0FoQ3dOQUFrQUNRQ0FBS0FJb0lnY0VRQ0FBS0FJQUlRaEJBQ0VEQTBBZ0NDQURRU2hzYWlJRktBSVVRWDlxUVFGTkJFQWdCU0FGS0FJTUlnVWdCRUVBSUFVZ0NVc2JhellDQ0FzZ0EwRUJhaUlESUFkSERRQUxJQWNnQUNnQ0dFa05Ba0YvSVFWQkFDRURRUUFoQkFOQUlBZ2dBMEVvYkdvaUJpZ0NGRUYvYWtFQlRRUkFJQVlvQWdnaUJpQUVJQVZCZjBZZ0JpQUVTSElpQmhzaEJDQURJQVVnQmhzaEJRc2dBMEVCYWlJRElBZEhEUUFMSUFWQkFFNE5BVUVCRHd0QkFDRUhJQUFvQWhnTkFVRUJEd3NnQ0NBRlFTaHNhaUlEUVFBMkFoUWdBQ0FIUVg5cUlnYzJBaWdnQXlnQ0dBMEFJQUFnQUNnQ0xFRi9hallDTEFzZ0FDZ0NMQ0lGSUFBb0Fod2lDRThFUUNBQUtBSTREUVlnQUNnQ0FDRU1BMEJCQUNFRVFmLy8vLzhISVFaQkFDRURBMEFnRENBRFFTaHNhaUlLS0FJWUJFQWdDaUFFSUFvb0FoQWlDaUFHU0NJTkd5RUVJQW9nQmlBTkd5RUdDeUFEUVFGcUlnTWdDRTBOQUFzQ1FDQUVSUTBBSUFBb0Fnd2dBQ2dDRUNJR1FRUjBhaUlESUFRb0FnQTJBZ0FnQXlBRUtBSWtOZ0lNSUFNZ0JDZ0NIRFlDQkNBRElBUW9BaUEyQWdnZ0FDQUdRUUZxTmdJUUlBUkJBRFlDR0NBRUtBSVVEUUFnQUNBRlFYOXFJZ1UyQWl3TElBVWdDRThOQUFzTElBQW9BZ0FpQkNBSVFTaHNhaUlESUFrMkFnd2dBMEtBZ0lDQUVEY0NFQ0FEUVFBMkFoZ2dBeUFKTmdJSUlBQWdCMEVCYWpZQ0tDQUFJQVZCQVdvMkFpd2dCQ0FJUVFGcUVDY2dDVUVCYWlBQUtBSWdJZ1J3SWdrZ0FVY05BQXNDUUNBQUtBSVFJZ2xGRFFBZ0FDZ0NBQ0lGSUFBb0Fod2lCRUVvYkdvaUNDZ0NBQ0VISUFBb0Fnd2hCa0VBSVFNRFFDQUhJQVlnQTBFRWRHb29BZ0JIQkVBZ0NTQURRUUZxSWdOSERRRU1BZ3NMSUFSRkRRQkJBQ0VEQTBBZ0N5QUZJQU5CS0d4cUlna29BZ0JIQkVBZ0JDQURRUUZxSWdOSERRRU1BZ3NMSUFrZ0J6WUNBQ0FJSUFzMkFnQUxJQUlOQlNBQUtBSXdJUU1NQWdzZ0FrRUFSdzhMSUFJTkF3c2dBU0FEUmcwQUlBQWdBU0FBS0FJZ0lnQnFRWDlxSUFCd05nSXdDMEVBRHdzRFFBd0FBQXNBQ3lBQUlBRTJBakJCQUF0MUFRTi9Ba0FnQUNnQ0FDSUJSUTBBSUFBb0FoeEJmMFlOQUFOQUlBRWdBa0VvYkNJRGFpZ0NCQkFFSUFBb0FnQWlBU0FEYWtFQU5nSUVJQUpCQVdvaUFpQUFLQUljUVFGcVNRMEFDd3NnQVJBRUlBQkJBRFlDQUNBQUtBSUVFQVFnQUVFQU5nSUVJQUFvQWd3UUJDQUFRUUEyQWd3TGd3RUJBMzhDUUNBQUtBSUFJZ1pGRFFBZ0FDZ0NIRUYvUmcwQUEwQWdCaUFIUVNoc0lnaHFLQUlFRUFRZ0FDZ0NBQ0lHSUFocVFRQTJBZ1FnQjBFQmFpSUhJQUFvQWh4QkFXcEpEUUFMQ3lBR0VBUWdBRUVBTmdJQUlBQW9BZ1FRQkNBQVFRQTJBZ1FnQUNnQ0RCQUVJQUJCQURZQ0RDQUFJQUVnQWlBRElBUWdCUkJkQzRBQ0FRSi9JQUFnQlRZQ09DQUFJQVEyQWlBZ0FFTC8vd00zQWlRZ0FFSUFOd0lzSUFBZ0EwRUJJQU5CQVVzYklnTTJBaGdnQUNBRElBSWdCUnNpQWpZQ0hDQUFRYWdGRUFvaUF6WUNBRUgvL3dNaEJBSkFJQU5GRFFCQkFDRUZJQU5CQUVHb0JSQUhJUVlnQWtGL1J3UkFJQUZCZ0FOc1FTOXlJUVZCQUNFREEwQWdCaUFEUVNoc2FpSUhJQVVRQ2lJQk5nSUVJQUZGRFFJZ0J5QUJRUUFnQVd0QkQzRnFOZ0lBSUFNZ0Fra2hBU0FEUVFGcUlRTWdBUTBBQ3lBQ1FRUjBRUkJxSVFVTElBQkJ4QUFRQ2lJQk5nSUVJQUFnQlJBS0lnSTJBZ3dnQWtVTkFDQUJSUTBBUVFBaEJDQUJRUUJCeEFBUUJ4b2dBRUlBTndJUUN5QUVDOU1CQVFkL1FRRWhBUUpBSUFBb0FqZ05BQ0FBS0FJY0lRVWdBQ2dDQUNFR1FmLy8vLzhISVFOQkFDRUJBMEFnQmlBQlFTaHNhaUlFS0FJWUJFQWdCQ0FDSUFRb0FoQWlCQ0FEU0NJSEd5RUNJQVFnQXlBSEd5RURDeUFCUVFGcUlnRWdCVTBOQUFzZ0FrVUVRRUVCRHdzZ0FDZ0NEQ0FBS0FJUUlnTkJCSFJxSWdFZ0FpZ0NBRFlDQUNBQklBSW9BaVEyQWd3Z0FTQUNLQUljTmdJRUlBRWdBaWdDSURZQ0NDQUFJQU5CQVdvMkFoQkJBQ0VCSUFKQkFEWUNHQ0FDS0FJVURRQWdBQ0FBS0FJc1FYOXFOZ0lzQ3lBQkMvVUVBUWgvSUFBb0FpZ2lCQVJBSUFBb0FnQWhCd05BSUFjZ0JVRW9iR29pQmlnQ0ZFRi9ha0VCVFFSQUlBWWdCaWdDRENJSUlBSkxCSDhnQ0NBQUtBSWdhd1VnQ0FzMkFnZ0xJQVZCQVdvaUJTQUVSdzBBQ3d0QkFDRUVBa0FnQVNnQ0FFVU5BQ0FCS0FJRUlnVkJBa3NOQUVFQUlRY2dBaUVHQTBBQ1FBSkFBa0FnQlVFQ1J3UkFJQUVnQjBFTWJHb29BZ2doQkFKQUlBVkZCRUFnQmlBRWF5SUdRWDlLRFFFZ0FDZ0NJQ0FHYWlFR0RBRUxJQVFnQm1vaUJrRUFJQUFvQWlBaUJTQUdJQVZJRzJzaEJnc2dCaUVKSUFZZ0Frc0VRQ0FHSUFBb0FpQnJJUWtMSUFBb0FoZ2lDa1VFUUVFQkR3c2dBQ2dDQUNFSVFRQWhCUU5BSUFnZ0JVRW9iR29pQkNnQ0ZDSUxRWDlxUVFGTkJFQWdCQ2dDQ0NBSlJnMERDMEVCSVFRZ0JVRUJhaUlGSUFwSERRQUxEQVVMUVFFaEJDQUFLQUlZSWdsRkRRUWdBU0FIUVF4c2FpZ0NEQ0VLSUFBb0FnQWhDRUVBSVFVRFFDQUlJQVZCS0d4cUlnUW9BaFJCQTBZRVFDQUVLQUlJSUFwR0RRTUxRUUVoQkNBRlFRRnFJZ1VnQ1VjTkFBc01CQXNnQlVFQVNBUkFRUUVQQzBFQklRUWdDMEVCU3cwQkRBTUxRUUVoQkNBRlFRQklEUUlMSUFjZ0F5SUVTUVJBQTBBZ0FDZ0NCQ0lKSUFSQkFuUnFJQWtnQkVGL2FpSUVRUUowYWlnQ0FEWUNBQ0FFSUFkTERRQUxJQUFvQWdBaENBc2dBQ2dDQkNBSFFRSjBhaUFJSUFWQktHd2lDV28yQWdBZ0IwRUJhaUlISVFRZ0J5SUZJQU5OQkVBRFFDQUFLQUlFSWdnZ0JVRUNkR29vQWdBaUNpQUFLQUlBSUFscVJ3UkFJQWdnQkVFQ2RHb2dDallDQUNBRVFRRnFJUVFMSUFWQkFXb2lCU0FEVFEwQUN3dEJBQ0VFSUFFZ0IwRU1iR29vQWdRaUJVRURTUTBBQ3dzZ0JBc0hBRUhFR2hBS0M3Y0JBUUovSXdCQkVHc2lCaVFBSUFaQkFEWUNEQ0FBSUFFZ0FpQUdRUXhxRUNvaUIwRjljVVVFUUFOQUlBQWdBU0FHS0FJTUlnZHFJZ0VnQWlBSGF5SUNJQVpCREdvUUtpSUhRWDF4UlEwQUN3c2dCMEVCUmdSQUlBUWdBQ2dDRUNJQktBSTBRUVIwTmdJQUlBVWdBU2dDT0VFRWREWUNBQ0FESUFCQnhBbHFJZ0FvQWhRaUFTQUFLQUlRU1FSL0lBQWdBVUVCYWpZQ0ZDQUFLQUlNSUFGQkJIUnFCVUVBQ3lnQ0FEWUNBQXNnQmtFUWFpUUFJQWNMU1FFQmZ5QUFRUUJCeEJvUUJ5SUNRYlFLYWtFQk5nSUFJQUpDZ0lLQWdJQUVOd0lFSUFCQndCQVFDaUlDTmdLd0dpQUNSUVJBUVFFUEN5QUJCRUFnQUVFQk5nTEFDUXRCQUF1NkJBRUpmd0pBQWtBZ0FVRUVTUTBBSUFBdEFBQU5BQ0FBTFFBQkRRQWdBQzBBQWlJSFFRRkxEUUJCQXlFRUlBQkJBMm9oQlVFQ0lRaEJmU0VNQWtBRFFDQUZJUVlDZnlBSVFRRnFJQWRCL3dGeElnVkZEUUFhUVFBaEJ5QUZRUUZHUVFBZ0NFRUJTeHNOQWtFQUN5RUlJQVJCZjNNaERDQUdRUUZxSVFVZ0JpMEFBQ0VISUFSQkFXb2lCQ0FCUncwQUN5QURJQUUyQWdCQkFROExJQVFoQ2tFQUlRaEJBQ0VGQTBCQkFTQUlJQWNnQmkwQUFDSUxSV29pQ1VFQ1Joc2dDQ0FMUVFOR0d5RUlJQXBCQVdvaENnSkFJQXRCQVVjTkFDQUpRUUpKRFFBZ0FpQUtJQXhxSUFsQmYzTnFJZ0UyQWd4QkFDQUpRWDFxSWdZZ0JpQUpTeHNoQnd3REMwRUFJQWtnQ3hzaEIwRUJJQVVnQ1VFQ1N4c2dCU0FMR3lFRklBWkJBV29oQmlBQklBcEhEUUFMSUFJZ0FTQU1haUFIYXlJQk5nSU1EQUVMSUFJZ0FUWUNERUVCSVFoQkFDRUhDeUFDUVFBMkFoQWdBa0VBTmdJSUlBSWdBQ0FFYWlJQU5nSUVJQUlnQURZQ0FDQURJQVFnQjJvZ0FXbzJBZ0JCQVNFREFrQWdCUTBBUVFBaEF5QUlSUTBBSUFJQ2Z5QUNLQUlNSWdGRkJFQWdBQ0VFUVFBTUFRc2dBQ0VFUVFBaEJnTkFJQUZCZjJvaEFTQUVMUUFBSVFVQ2Z3SkFJQVpCQWtjTkFDQUZRUU5HQkVBZ0FVVUVRRUVCRHdzZ0JDMEFBVUVEU3dSQVFRRVBDMEVBSVFZZ0JFRUJhZ3dDQ3lBRlFRTlBEUUJCQVE4TElBQWdCVG9BQUVFQUlBWkJBV29nQlJzaEJpQUFRUUZxSVFBZ0JFRUJhZ3NoQkNBQkRRQUxJQUlvQWd3TElBQWdCR3RxTmdJTUN5QURDd3Z0TWhrQVFZWUlDOG9GWmlBbUVBWUlaUmhsR0VNUVF4QkRFRU1RUXhCREVFTVFReEFpQ0NJSUlnZ2lDQ0lJSWdnaUNDSUlJZ2dpQ0NJSUlnZ2lDQ0lJSWdnaUNBQUFBQUFBQUFBQWFrQktNQ29vQ2lCcE9HazRTU2hKS0NrZ0tTQUpHQWtZYURCb01HZ3dhREJJSUVnZ1NDQklJQ2dZS0Jnb0dDZ1lDQkFJRUFnUUNCQm5LR2NvWnlobktHY29aeWhuS0djb1J4aEhHRWNZUnhoSEdFY1lSeGhIR0c1Z1RsZ3VVQTVRYmxoT1VDNUlEa2dOUUExQVRVaE5TQzFBTFVBTk9BMDRiVkJ0VUUxQVRVQXRPQzA0RFRBTk1HdElhMGhyU0d0SWEwaHJTR3RJYTBoTE9FczRTemhMT0VzNFN6aExPRXM0S3pBck1Dc3dLekFyTUNzd0t6QXJNQXNvQ3lnTEtBc29DeWdMS0Fzb0N5Z0FBQUFBTDJndmFCQ0FVSUF3Z0JCNGNJQlFlREI0RUhCd2VGQndNSEFRYUc5d2IzQlBhRTlvTDJBdllBOWdEMkJ2YUc5b1QyQlBZQzlZTDFnUFdBOVlBQUFBQUFBQUFBQm1PRVlnSmlBR0VHWXdSaGdtR0FZSVpTaGxLQ1VRSlJCa0lHUWdaQ0JrSUdRWVpCaGtHR1FZUXhCREVFTVFReEJERUVNUVF4QkRFQUFBQUFBQUFBQUFhVWhKT0NrNENUQUlLQWdvU0RCSU1DZ3dLREFJSUFnZ1owQm5RR2RBWjBCSEtFY29SeWhIS0Njb0p5Z25LQ2NvQnhnSEdBY1lCeGdBQUFBQWJYaHRlRzZBVG9BdWdBNkFMbmdPZUU1NExuQk5jRTF3RFhBTmNHMXdiWEJOYUUxb0xXZ3RhQTFvRFdodGFHMW9UV0JOWUMxZ0xXQU5ZQTFnREZnTVdBeFlERmhNV0V4WVRGaE1XQ3hZTEZnc1dDeFlERkFNVUF4UURGQnNZR3hnYkdCc1lFeFFURkJNVUV4UUxGQXNVQ3hRTEZBTVNBeElERWdNU0d0WWExaHJXR3RZYTFocldHdFlhMWhMU0V0SVMwaExTRXRJUzBoTFNFdElLMGdyU0N0SUswZ3JTQ3RJSzBnclNBdEFDMEFMUUF0QUMwQUxRQXRBQzBCclVHdFFhMUJyVUd0UWExQnJVR3RRUzBCTFFFdEFTMEJMUUV0QVMwQkxRQ3RBSzBBclFDdEFLMEFyUUN0QUswQUxPQXM0Q3pnTE9BczRDemdMT0FzNEFFSGdEUXV1Q1FZWVJqZ21PQVlRWmtoR01DWXdCZ2dsS0NVb1JTaEZLQ1VnSlNCRklFVWdKUmdsR0dWQVpVQkZHRVVZSlJBbEVHUTRaRGhrT0dRNFpEQmtNR1F3WkRCa0tHUW9aQ2hrS0dRZ1pDQmtJR1FnWkJoa0dHUVlaQmhFRUVRUVJCQkVFQ1FJSkFna0NDUUlCQUFFQUFRQUJBQUFBQXFBYW9CS2dDcUFDbmhxZUVwNEtuZ0tjR3B3U25BcWNBcG9LV2dwYUFsZ0NXQkphRWxvS1dBcFlBbFlDVmhwYUdsb1NXQkpZQ2xZS1ZnSlVBbFFhR0JvWUdoZ2FHQklXRWhZU0ZoSVdDaFFLRkFvVUNoUUNFZ0lTQWhJQ0Vob1dHaFlhRmhvV0VoUVNGQklVRWhRS0Vnb1NDaElLRWdJUUFoQUNFQUlRQWM0QnpnSE9BYzRCemdIT0FjNEJ6Z0hNQWN3QnpBSE1BY3dCekFITUFjd1IwaEhTRWRJUjBoSFNFZElSMGhIU0Fjb0J5Z0hLQWNvQnlnSEtBY29CeWhuVUdkUVoxQm5VR2RRWjFCblVHZFFSMEJIUUVkQVIwQkhRRWRBUjBCSFFDZEFKMEFuUUNkQUowQW5RQ2RBSjBBSElBY2dCeUFISUFjZ0J5QUhJQWNnQmdnbUNBQUFCZ0FHRUNZUVJoQUFBQVlZSmhoR0dHWVlCaUFtSUVZZ1ppQUdLQ1lvUmlobUtBWXdKakJHTUdZd0JqZ21PRVk0WmpnR1FDWkFSa0JtUUFaSUpraEdTR1pJQmxBbVVFWlFabEFHV0NaWVJsaG1XQVpnSm1CR1lHWmdCbWdtYUVab1ptZ0djQ1p3Um5CbWNBWjRKbmhHZUdaNEJvQW1nRWFBWm9BQUFFTVFBZ0FDQUNFSUlRZ2hDQ0VJWnlCbklFZ2dLQ0JIR0VjWUp4Z25HQVlnQmlBR0lBWWdCaGdHR0FZWUJoZ0dFQVlRQmhBR0VHWVlaaGhtR0dZWUpoQW1FQ1lRSmhBR0NBWUlCZ2dHQ0FBQVpWVkVSRFEwSXlNakl4TVRFeE1CQVFFQkFRRUJBUUVCQVFFQkFRRUJBUG5wMmNqSXVMaW5wNmVubDVlWGw0YUdob2FHaG9hR2RuWjJkbloyZG5ibTFzYTJwYVdWbFlTRWhJUjBkSFIwWkdSa1pGUlVWRlJEUTBORFEwTkRRek16TXpNek16TXpJeU1qSXlNakl5TVRFeE1URXhNVEV3TURBd01EQXdNRDFyYkZ4YVdsbFpXRWhJU0VWRlJVVkVSRVJFUUVCQVFFYzNOemMzTnpjM05qWTJOalkyTmpZek16TXpNek16TXpJeU1qSXlNakl5TVRFeE1URXhNVEU4VzFwUVdVbEhSME5EUWtKSU9EZzROalkyTmpVMU5UVTBORFEwTVRFeE1UdFpXa3BJU0VKQ1FVRkFRRWMzTnpjMk5qWTJOVFUxTlRRME5EUXpNek16T21CaFVWaElTRWhKT1RrNU9UazVPVGMzTnpjM056YzNOalkyTmpZMk5qWTFOVFUxTlRVMU5UUTBORFEwTkRRME16TXpNek16TXpNeU1qSXlNakl5TWpsZ1lWRlhSMGRIU0RnNE9EZzRPRGcyTmpZMk5qWTJOalEwTkRRME5EUTBNek16TXpNek16TXlNakl5TWpJeU1qVWxKU1VsSlNVbEpTVWxKU1VsSlNVb1lHSlNVVUZCUVVjM056YzNOemMzTmpZMk5qWTJOall6TXpNek16TXpNelVsSlNVbEpTVWxKU1VsSlNVbEpTVWtKQ1FrSkNRa0pDUWtKQ1FrSkNRa0lXQm5WMUpDUWtKRk5UVTFOVFUxTlRZbUppWW1KaVltSmlZbUppWW1KaVlrSkNRa0pDUWtKQ1FrSkNRa0pDUWtJeU1qSXlNakl5TWpJeU1qSXlNakl5RlFWa1pDTWpJeU5TVWxKU1VsSlNVa0pDUWtKQ1FrSkNNakl5TWpJeU1qSUVGQ01qTXpOVFUwRkJRVUZCUVVGQkJCUkRReUlpSWlJeE1URXhNVEV4TVFNVE1qSWhJU0VoQWhJaElSRUJJaElCQVRJaUVnSkRNeUlpRWhJQ0FsTkRNeU1TRWdJQ0V5TkRNMk5UQWdJQVFhQVhDeVFFQkFVR0J3Z0pDZ3dORHhFVUZoa2NJQ1FvTFRJNFAwZFFXbVZ4ZjVDaXRzdmkvLzhBUWVBWEN5UUNBZ0lEQXdNREJBUUVCZ1lIQndnSUNRa0tDZ3NMREF3TkRRNE9EdzhRRUJFUkVoSUFRY1VZQzRRQkFRQUFBUUFBQVFBQUFRQUJBUUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBZ0VCQWdFQkFnRUJBZ0VDQXdFQ0F3SUNBd0lDQkFJREJBSURCQU1EQlFNRUJnTUVCZ1FGQndRRkNBUUdDUVVIQ2dZSUN3WUlEUWNLRGdnTEVBa01FZ29ORkFzUEZ3MFJHUUFBQUFBQUFBQUFCUUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUVIVUdRc1ZCUUFBQUFBQUFBQUhBQUFBL3dBQUFBQUFBQUQvQUVIMEdRc1ZCUUFBQUFRQUFBQUFBQUFBL3dBQUFBQUFBQUQvQUVHVUdnc0ZCUUFBQUFRQVFhUWFDNlVCQndBQUFBUUFBQUFDQUFBQUJBQUFBQUVBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUFRQUFBQVFBQUFBREFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFCQUFBQUJBQUFBQVFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBRUFBQUFFQUFBQUJBQUFBQVFBQUFBREFBQUFCQUFBQUFZQUFBQUFBQUFBRFFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFEL0FFSFVHd3NWRFFBQUFBQUFBQUFQQUFBQS93QUFBQUFBQUFEL0FFSDBHd3NWRFFBQUFBUUFBQUFJQUFBQS93QUFBQUFBQUFEL0FFR1VIQXUxQ3cwQUFBQUVBQUFBQ0FBQUFBQUFBQUFQQUFBQUJBQUFBQW9BQUFBRUFBQUFDUUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQVFBQUFBSkFBQUFCQUFBQUFzQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUJBQUFBQWtBQUFBRUFBQUFEQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUNRQUFBQVFBQUFBTUFBQUFCQUFBQUFzQUFBQUVBQUFBRGdBQUFBRUFBQUFLQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBb0FBQUFFQUFBQUFBQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUJBQUFBQ2dBQUFBRUFBQUFMQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFFQUFBQUtBQUFBQVFBQUFBc0FBQUFFQUFBQUFBQUFBQVFBQUFBQkFBQUFBUUFBQUE0QUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBQkFBQUFEZ0FBQUFRQUFBQUVBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQUVBQUFBT0FBQUFBUUFBQUE4QUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUFRQUFBQTRBQUFBQkFBQUFEd0FBQUFRQUFBQUVBQUFBQkFBQUFBVUFBQUFFQUFBQUFnQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFDQUFBQUJBQUFBQWdBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBSUFBQUFFQUFBQUF3QUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUVBQUFBQWdBQUFBUUFBQUFEQUFBQUJBQUFBQWdBQUFBRUFBQUFDUUFBQUFRQUFBQUdBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFCQUFBQUFZQUFBQUVBQUFBREFBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBRUFBQUFCZ0FBQUFRQUFBQUhBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQVFBQUFBR0FBQUFCQUFBQUFjQUFBQUVBQUFBREFBQUFBUUFBQUFOQUFBQUFRQUFBQTRBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFCQUFBQURnQUFBUDhBQUFBRUFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBRUFBQUFMQUFBQUFRQUFBQTRBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBc0FBQUFCQUFBQURnQUFBQVFBQUFBQkFBQUEvd0FBQUFRQUFBQUNBQUFBQ2dBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFJQUFBQUtBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFBUUFBQUE4QUFBQUNBQUFBQ2dBQUFQOEFBQUFBQUFBQS93QUFBQUFBQUFBQkFBQUFEd0FBQUFJQUFBQUtBQUFBQkFBQUFBVUFBQUQvQUFBQUFBQUFBQVFBQUFBR0FBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUJBQUFBQVlBQUFEL0FBQUFEQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUF3QUFBQVFBQUFBR0FBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFEQUFBQUJBQUFBQVlBQUFBRUFBQUFDUUFBQVA4QUFBQU1BQUFBL3dBQUFBSUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBRC9BQUFBQWdBQUFQOEFBQUFJQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFRQUFBQUhBQUFBL3dBQUFBSUFBQUQvQUFBQUFBQUFBUDhBQUFBQUFBQUFCQUFBQUFjQUFBRC9BQUFBQWdBQUFBUUFBQUFOQUFBQS93QUFBQWdBQUFBREFBQUFEd0FBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUQvQUFBQUFBQUFBQU1BQUFBUEFBQUFBQUFBQUFVQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQUF3QUFBQThBQUFBQkFBQUFDZ0FBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFEQUFBQUR3QUFBQUVBQUFBS0FBQUFBQUFBQUFVQUFBQUVBQUFBQUFBQUFBRUFBQUFMQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQVFBQUFBc0FBQUFFQUFBQUFRQUFBUDhBQUFBQUFBQUEvd0FBQUFBQUFBQUJBQUFBQ3dBQUFBRUFBQUFPQUFBQS93QUFBQUFBQUFEL0FBQUFBQUFBQUFFQUFBQUxBQUFBQVFBQUFBNEFBQUFFQUFBQUFRQUFBQVFBQUFBRUFBQUFBQUFBQUFjQUFBRC9BQUFBQUFBQUFQOEFBQUFBQUFBQS93QkIxQ2NMRlFjQUFBQUFBQUFBRFFBQUFQOEFBQUFBQUFBQS93QkI5Q2NMRlFjQUFBQUVBQUFBQWdBQUFQOEFBQUFBQUFBQS93QkJsQ2dMMlFFSEFBQUFCQUFBQUFJQUFBQUFBQUFBRFFBQUFBUUFBQUFJQUFBQUJBQUFBQU1BQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBL3dBQUFBQUFBQUFFQUFBQUF3QUFBQVFBQUFBSkFBQUEvd0FBQUFBQUFBRC9BQUFBQUFBQUFBUUFBQUFEQUFBQUJBQUFBQVlBQUFEL0FBQUFBQUFBQVA4QUFBQUFBQUFBQkFBQUFBTUFBQUFFQUFBQUJnQUFBQVFBQUFBSkFBQUFCQUFBQUF3QUFBQUFBQUFBQkFBQUFBQUFBQUFFQUFBQUNBQUFBQXdBQUFBSUFBQUFEQUFBQUFBQUFBQUVBQUFBQUFBQUFBUUFBQUFJQUFBQURBQUFBQWdBQUFBTUFFSDRLUXNGQkFBQUFBUUFRWWdxQ3lVRUFBQUFCQUFBQUFnQUFBQUlBQUFBREFBQUFBd0FBQUFJQUFBQUNBQUFBQXdBQUFBTUFFR3hMZ3ZJQmdFQ0F3UUZCZ2NJQ1FvTERBME9EeEFSRWhNVUZSWVhHQmthR3h3ZEhoOGdJU0lqSkNVbUp5Z3BLaXNzTFM0dk1ERXlNelExTmpjNE9UbzdQRDArUDBCQlFrTkVSVVpIU0VsS1MweE5UazlRVVZKVFZGVldWMWhaV2x0Y1hWNWZZR0ZpWTJSbFptZG9hV3ByYkcxdWIzQnhjbk4wZFhaM2VIbDZlM3g5Zm4rQWdZS0RoSVdHaDRpSmlvdU1qWTZQa0pHU2s1U1ZscGVZbVpxYm5KMmVuNkNob3FPa3BhYW5xS21xcTZ5dHJxK3dzYkt6dExXMnQ3aTV1cnU4dmI2L3dNSEN3OFRGeHNmSXljckx6TTNPejlEUjB0UFUxZGJYMk5uYTI5emQzdC9nNGVMajVPWG01K2pwNnV2czdlN3Y4UEh5OC9UMTl2ZjQrZnI3L1AzKy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL0FBQUFBQUVBQUFBRUFBQUFCUUFBQUFJQUFBQURBQUFBQmdBQUFBY0FBQUFJQUFBQUNRQUFBQXdBQUFBTkFBQUFDZ0FBQUFzQUFBQU9BQUFBRHdBQUFBQUFBQUFCQUFBQUFRQkJoRFVMSVFFQUFBQUJBQUFBQVFBQUFBRUFBQUFDQUFBQUFnQUFBQUVBQUFBQ0FBQUFBZ0JCdERVTEJRVUFBQUFFQUVIRU5RdkpCZ2NBQUFBRUFBQUFBZ0FBQUFRQUFBQUJBQUFBQkFBQUFBUUFBQUFFQUFBQUF3QUFBQVFBQUFBR0FBQUFBQUFBQUEwQUFBQUVBQUFBQ0FBQUFBQUFBQUFQQUFBQUJBQUFBQW9BQUFBRUFBQUFDUUFBQUFRQUFBQU1BQUFBQkFBQUFBc0FBQUFFQUFBQURnQUFBQUFBQUFBUkFBQUFCQUFBQUJBQUFBQUFBQUFBRXdBQUFBUUFBQUFTQUFBQUFBQUFBQlVBQUFBRUFBQUFGQUFBQUFBQUFBQVhBQUFBQkFBQUFCWUFBQUFCQUFBQUNnQUFBQUVBQUFBTEFBQUFCQUFBQUFBQUFBQUVBQUFBQVFBQUFBRUFBQUFPQUFBQUFRQUFBQThBQUFBRUFBQUFCQUFBQUFRQUFBQUZBQUFBQkFBQUFBSUFBQUFFQUFBQUF3QUFBQVFBQUFBSUFBQUFCQUFBQUFrQUFBQUVBQUFBQmdBQUFBUUFBQUFIQUFBQUJBQUFBQXdBQUFBRUFBQUFEUUFBQUFFQUFBQVNBQUFBQVFBQUFCTUFBQUFFQUFBQUVBQUFBQVFBQUFBUkFBQUFBUUFBQUJZQUFBQUJBQUFBRndBQUFBUUFBQUFVQUFBQUJBQUFBQlVBQUFBQkFBQUFDd0FBQUFFQUFBQU9BQUFBQkFBQUFBRUFBQUQvQUFBQUJBQUFBQUVBQUFBUEFBQUFBZ0FBQUFvQUFBQUVBQUFBQlFBQUFQOEFBQUFBQUFBQUJBQUFBQU1BQUFBRUFBQUFCZ0FBQUFRQUFBQUpBQUFBL3dBQUFBd0FBQUFFQUFBQUJ3QUFBUDhBQUFBQ0FBQUFCQUFBQUEwQUFBRC9BQUFBQ0FBQUFBRUFBQUFUQUFBQUFnQUFBQklBQUFBRUFBQUFFUUFBQVA4QUFBQVFBQUFBQVFBQUFCY0FBQUFDQUFBQUZnQUFBQVFBQUFBVkFBQUEvd0FBQUJRQUFBQURBQUFBRHdBQUFBRUFBQUFLQUFBQUFBQUFBQVVBQUFBRUFBQUFBQUFBQUFFQUFBQUxBQUFBQVFBQUFBNEFBQUFFQUFBQUFRQUFBQVFBQUFBRUFBQUFBQUFBQUFjQUFBQUVBQUFBQWdBQUFBQUFBQUFOQUFBQUJBQUFBQWdBQUFBRUFBQUFBd0FBQUFRQUFBQUdBQUFBQkFBQUFBa0FBQUFFQUFBQURBQUFBQU1BQUFBVEFBQUFBUUFBQUJJQUFBQUFBQUFBRVFBQUFBUUFBQUFRQUFBQUF3QUFBQmNBQUFBQkFBQUFGZ0FBQUFBQUFBQVZBQUFBQkFBQUFCUUFBQUFCQUFBQUFRQUFBQUlBQUFBQ0FBQUFBd0FBQUFNQUFBQURBQUFBQXdBQUFBQUFBQUFCQUFBQUFnQUFBQU1BQUFBRUFBQUFCUUFBQUFZQUFBQUhBQUFBQ0FBQUFBa0FBQUFLQUFBQUN3QUFBQXdBQUFBTkFBQUFEZ0FBQUE4QVFaWThDeTRCQVFFQkFRRUNBZ0lDQWdJREF3TURBd01FQkFRRUJBUUZCUVVGQlFVR0JnWUdCZ1lIQndjSEJ3Y0lDQWdJQUVIUVBBdEZDZ0FBQUEwQUFBQVFBQUFBQ3dBQUFBNEFBQUFTQUFBQURRQUFBQkFBQUFBVUFBQUFEZ0FBQUJJQUFBQVhBQUFBRUFBQUFCUUFBQUFaQUFBQUVnQUFBQmNBQUFBZEFFR2hQUXN6QVFJREJBVUFBUUlEQkFVQUFRSURCQVVBQVFJREJBVUFBUUlEQkFVQUFRSURCQVVBQVFJREJBVUFBUUlEQkFVQUFRSURBRUhrUFF2TUFnRUFBQUFDQUFBQUF3QUFBQVFBQUFBRkFBQUFCZ0FBQUFjQUFBQUlBQUFBQ1FBQUFBb0FBQUFMQUFBQURBQUFBQTBBQUFBT0FBQUFEd0FBQUJBQUFBQVJBQUFBRWdBQUFCTUFBQUFVQUFBQUZRQUFBQllBQUFBWEFBQUFHQUFBQUJrQUFBQWFBQUFBR3dBQUFCd0FBQUFkQUFBQUhRQUFBQjRBQUFBZkFBQUFJQUFBQUNBQUFBQWhBQUFBSWdBQUFDSUFBQUFqQUFBQUl3QUFBQ1FBQUFBa0FBQUFKUUFBQUNVQUFBQWxBQUFBSmdBQUFDWUFBQUFtQUFBQUp3QUFBQ2NBQUFBbkFBQUFKd0FBQUFFQUFBQUNBQUFBQkFBQUFBZ0FBQUFRQUFBQUlBQUFBRUFBQUFDQUFBQUFMeDhQQUJjYkhSNEhDdzBPSnlzdExoQURCUW9NRXhVYUhDTWxLaXdCQWdRSUVSSVVHQVlKRmhrZ0lTSWtLQ1lwQUJBQkFnUUlJQU1GQ2d3UEx3Y0xEUTRHQ1I4akpTb3NJU0lrS0NjckxTNFJFaFFZRXhVYUhCY2JIUjRXR1NZcEFMQXRCRzVoYldVQjZ3TmtBQVp0WlcxamNIa0JCbkpsYzJsNlpRSUNaaklEQW1ZekJBRm1CUUptTlFZQ1pqWUhBbVkzQ0FKbU9Ba0NaamtLQVdVTEEyWXhNUXdEWmpFeURRTm1NVE1PQTJZeE5BOERaakUxRUFObU1UWVJBMll4TnhJRFpqRTRFd05tTVRrVUEyWXlNQlVEWmpJeEZnTm1NaklYQTJZeU14Z0RaakkwR1FObU1qVWFBMll5TmhzRFpqSTNIQU5tTWpnZEEyWXlPUjREWmpNd0h3Tm1NekVnQTJZek1pRURaak16SWdObU16UWpBMll6TlNRRFpqTTJKUU5tTXpjbUEyWXpPQ2NEWmpNNUtBTm1OREFwQTJZME1Tb0RaalF5S3dObU5ETXNBMlkwTkMwRFpqUTFMZ05tTkRZdkEyWTBOekFEWmpRNE1RTm1ORGt5QTJZMU1ETURaalV4TkFObU5USTFBMlkxTXpZRFpqVTBOd05tTlRVNEEyWTFOamtEWmpVM09nTm1OVGc3QTJZMU9Ud0Raall3UFFObU5qRStBMlkyTWo4RFpqWXpRQU5tTmpSQkEyWTJOVUlEWmpZMlF3Tm1OamRFQTJZMk9FVURaalk1UmdObU56QkhBMlkzTVVnRFpqY3lTUU5tTnpOS0EyWTNORXNEWmpjMVRBTm1OelpOQTJZM04wNERaamM0VHdObU56bFFBMlk0TUZFRFpqZ3hVZ05tT0RKVEEyWTRNMVFEWmpnMFZRTm1PRFZXQTJZNE5sY0RaamczV0FObU9EaFpBMlk0T1ZvRFpqa3dXd05tT1RGY0EyWTVNbDBEWmprelhnTm1PVFJmQTJZNU5XQUJhV0VCWjJJQlpHTUVaakV3TVFLNktXUUFBd0FBQVFBQ0FBRUJBQUFDQkFBQ2NEQUJBbkF4QWdKc01nTUNiRE1EQ1FBQ2NEQUJBbkF4QWdKc01nTUNiRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FRSUFBSndNQUVDYkRFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNGQkFBQ2NEQUJBbkF4QWdKc01nTUNiRE1HR0FBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpFV0Eyd3lNaGNEYkRJekJ3WUFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQVVDYkRVSUJnQUNjREFCQW5BeEFnSndNZ01DYkRNRUFtdzBCUUpzTlFrUUFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUVBBMnd4TlFvTUFBSndNQUVDYkRFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVMQXdBQ2NEQUJBbkF4QWdKc01nd1JBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRFFZQUFuQXdBUUp3TVFJQ2NESURBbXd6QkFKc05BVUNiRFVPRUFBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDY0RZSEFuQTNDQUp3T0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVQQlFBQ2NEQUJBbXd4QWdKc01nTUNiRE1FQW13MEVBc0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQVJBZ0FDY0RBQkFuQXhFZzhBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkJNREFBSndNQUVDYkRFQ0Ftd3lGQU1BQW5Bd0FRSndNUUlDYkRJVkJnQUNjREFCQW5BeEFnSndNZ01DYkRNRUFtdzBCUUpzTlJZbUFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2NEUUZBbkExQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUVBBMnd4TlJBRGJERTJFUU5zTVRjU0Eyd3hPQk1EYkRFNUZBTnNNakFWQTJ3eU1SWURiREl5RndOc01qTVlBMnd5TkJrRGJESTFHZ05zTWpZYkEyd3lOeHdEYkRJNEhRTnNNamtlQTJ3ek1COERiRE14SUFOc016SWhBMnd6TXlJRGJETTBJd05zTXpVa0Eyd3pOaVVEYkRNM0Z3TUFBbkF3QVFKd01RSUNjRElZRmdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpFWkVnQUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaEVEYkRFM0doWUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0p3TndnQ2NEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0RXdOc01Ua1VBMnd5TUJVRGJESXhHd1lBQW5Bd0FRSndNUUlDYkRJREFtd3pCQUpzTkFVQ2JEVWNCd0FDY0RBQkFuQXhBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlkQlFBQ2NEQUJBbkF4QWdKc01nTUNiRE1FQW13MEhnVUFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQjhCQUFKd01DQUVBQUp3TUFFQ2NERUNBbXd5QXdKc015RWJBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRVFOc01UY1NBMnd4T0JNRGJERTVGQU5zTWpBVkEyd3lNUllEYkRJeUZ3TnNNak1ZQTJ3eU5Ca0RiREkxR2dOc01qWWlGUUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNjRFlIQW5BM0NBSndPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPUlFEYkRJd0l4SUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0p3TndnQ2NEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE55UVVBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFuQTRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyRVFOc01UY1NBMnd4T0JNRGJERTVKUThBQW5Bd0FRSndNUUlDY0RJREFtd3pCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkNZREFBSndNQUVDYkRFQ0Ftd3lKdzhBQW5Bd0FRSndNUUlDYkRJREFtd3pCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkNnQ0FBSndNQUVDYkRFcEVRQUNjREFCQW5BeEFnSndNZ01DY0RNRUFuQTBCUUp3TlFZQ2NEWUhBbkEzQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaW9IQUFKd01BRUNjREVDQW5BeUF3SndNd1FDYkRRRkFtdzFCZ0pzTmlzUEFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1nMERiREV6RGdOc01UUXNCQUFDY0RBQkFuQXhBZ0pzTWdNQ2JETXRCUUFDY0RBQkFuQXhBZ0p3TWdNQ2JETUVBbXcwTGdNQUFuQXdBUUpzTVFJQ2JESXZBd0FDY0RBQkFtd3hBZ0pzTWpBSkFBSndNQUVDY0RFQ0Ftd3lBd0pzTXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NE1SWUFBbkF3QVFKd01RSUNiRElEQW13ekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0RXdOc01Ua1VBMnd5TUJVRGJESXhNZ29BQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NU13UUFBbkF3QVFKc01RSUNiRElEQW13ek5BUUFBbkF3QVFKc01RSUNiRElEQW13ek5ROEFBbkF3QVFKd01RSUNjRElEQW13ekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hORFlGQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRM0JRQUNjREFCQW5BeEFnSnNNZ01DYkRNRUFtdzBPQWNBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyT1FjQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNiRFVHQW13Mk9nY0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJPd2NBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyUEFVQUFuQXdBUUp3TVFJQ2NESURBbXd6QkFKc05EMEZBQUp3TUFFQ2NERUNBbkF5QXdKc013UUNiRFErRHdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSnNOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMFB4SUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE4wQUhBQUp3TUFFQ2NERUNBbXd5QXdKc013UUNiRFFGQW13MUJnSnNOa0VRQUFKd01BRUNjREVDQW5BeUF3SndNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOVUlKQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0UXdnQUFuQXdBUUp3TVFJQ2JESURBbXd6QkFKc05BVUNiRFVHQW13MkJ3SnNOMFFRQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOVVVUQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0p3TmdjQ2NEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOUkFEYkRFMkVRTnNNVGNTQTJ3eE9FWVJBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSndOZ2NDY0RjSUFtdzRDUUpzT1FvRGJERXdDd05zTVRFTUEyd3hNZzBEYkRFekRnTnNNVFFQQTJ3eE5SQURiREUyUnhNQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNjRFVHQW5BMkJ3SndOd2dDYkRnSkFtdzVDZ05zTVRBTEEyd3hNUXdEYkRFeURRTnNNVE1PQTJ3eE5BOERiREUxRUFOc01UWVJBMnd4TnhJRGJERTRTQmNBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUp3TkFVQ2NEVUdBbkEyQndKd053Z0NjRGdKQW5BNUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTU9BMnd4TkE4RGJERTFFQU5zTVRZUkEyd3hOeElEYkRFNEV3TnNNVGtVQTJ3eU1CVURiREl4RmdOc01qSkpRd0FDY0RBQkFuQXhBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlIQW13M0NBSnNPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPUlFEYkRJd0ZRTnNNakVXQTJ3eU1oY0RiREl6R0FOc01qUVpBMnd5TlJvRGJESTJHd05zTWpjY0Eyd3lPQjBEYkRJNUhnTnNNekFmQTJ3ek1TQURiRE15SVFOc016TWlBMnd6TkNNRGJETTFKQU5zTXpZbEEyd3pOeVlEYkRNNEp3TnNNemtvQTJ3ME1Da0RiRFF4S2dOc05ESXJBMncwTXl3RGJEUTBMUU5zTkRVdUEydzBOaThEYkRRM01BTnNORGd4QTJ3ME9USURiRFV3TXdOc05URTBBMncxTWpVRGJEVXpOZ05zTlRRM0EydzFOVGdEYkRVMk9RTnNOVGM2QTJ3MU9Ec0RiRFU1UEFOc05qQTlBMncyTVQ0RGJEWXlQd05zTmpOQUEydzJORUVEYkRZMVFnTnNOalpLRXdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDY0RZSEFuQTNDQUp3T0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UaExGQUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNjRFlIQW5BM0NBSndPQWtDYkRrS0Eyd3hNQXNEYkRFeERBTnNNVElOQTJ3eE13NERiREUwRHdOc01UVVFBMnd4TmhFRGJERTNFZ05zTVRnVEEyd3hPVXdIQUFKd01BRUNjREVDQW13eUF3SnNNd1FDYkRRRkFtdzFCZ0pzTmswTkFBSndNQUVDY0RFQ0FuQXlBd0p3TXdRQ2JEUUZBbXcxQmdKc05nY0NiRGNJQW13NENRSnNPUW9EYkRFd0N3TnNNVEVNQTJ3eE1rNExBQUp3TUFFQ2NERUNBbkF5QXdKc013UUNiRFFGQW13MUJnSnNOZ2NDYkRjSUFtdzRDUUpzT1FvRGJERXdUd1FBQW5Bd0FRSndNUUlDYkRJREFtd3pVQTRBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUp3TkFVQ2NEVUdBbkEyQndKd053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTlJEQUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKc05RWUNiRFlIQW13M0NBSnNPQWtDYkRrS0Eyd3hNQXNEYkRFeFVoTUFBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FuQTJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVF3RGJERXlEUU5zTVRNT0Eyd3hOQThEYkRFMUVBTnNNVFlSQTJ3eE54SURiREU0VXlBQUFuQXdBUUp3TVFJQ2NESURBbkF6QkFKd05BVUNjRFVHQW13MkJ3SnNOd2dDYkRnSkFtdzVDZ05zTVRBTEEyd3hNUXdEYkRFeURRTnNNVE1PQTJ3eE5BOERiREUxRUFOc01UWVJBMnd4TnhJRGJERTRFd05zTVRrVUEyd3lNQlVEYkRJeEZnTnNNaklYQTJ3eU14Z0RiREkwR1FOc01qVWFBMnd5TmhzRGJESTNIQU5zTWpnZEEyd3lPUjREYkRNd0h3TnNNekZVRmdBQ2NEQUJBbkF4QWdKd01nTUNjRE1FQW5BMEJRSndOUVlDYkRZSEFtdzNDQUpzT0FrQ2JEa0tBMnd4TUFzRGJERXhEQU5zTVRJTkEyd3hNdzREYkRFMER3TnNNVFVRQTJ3eE5oRURiREUzRWdOc01UZ1RBMnd4T1JRRGJESXdGUU5zTWpGVkN3QUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1GWUhBQUp3TUFFQ2NERUNBbkF5QXdKd013UUNjRFFGQW5BMUJnSnNObGNxQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0pzTmdjQ2JEY0lBbXc0Q1FKc09Rb0RiREV3Q3dOc01URU1BMnd4TWcwRGJERXpEZ05zTVRRUEEyd3hOUkFEYkRFMkVRTnNNVGNTQTJ3eE9CTURiREU1RkFOc01qQVZBMnd5TVJZRGJESXlGd05zTWpNWUEyd3lOQmtEYkRJMUdnTnNNalliQTJ3eU54d0RiREk0SFFOc01qa2VBMnd6TUI4RGJETXhJQU5zTXpJaEEyd3pNeUlEYkRNMEl3TnNNelVrQTJ3ek5pVURiRE0zSmdOc016Z25BMnd6T1NnRGJEUXdLUU5zTkRGWUV3QUNjREFCQW5BeEFnSndNZ01DY0RNRUFtdzBCUUpzTlFZQ2JEWUhBbXczQ0FKc09Ba0NiRGtLQTJ3eE1Bc0RiREV4REFOc01USU5BMnd4TXc0RGJERTBEd05zTVRVUUEyd3hOaEVEYkRFM0VnTnNNVGhaQ0FBQ2NEQUJBbXd4QWdKc01nTUNiRE1FQW13MEJRSnNOUVlDYkRZSEFtdzNXZzRBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5RFFOc01UTmJCQUFDY0RBQkFtd3hBZ0pzTWdNQ2JETmNDUUFDY0RBQkFuQXhBZ0p3TWdNQ2NETUVBbkEwQlFKd05RWUNiRFlIQW13M0NBSnNPRjBJQUFKd01BRUNjREVDQW5BeUF3SndNd1FDY0RRRkFuQTFCZ0pzTmdjQ2JEZGVDQUFDY0RBQkFtd3hBZ0pzTWdNQ2JETUVBbXcwQlFKc05RWUNiRFlIQW13M1h3d0FBbkF3QVFKd01RSUNjRElEQW5BekJBSnNOQVVDYkRVR0FtdzJCd0pzTndnQ2JEZ0pBbXc1Q2dOc01UQUxBMnd4TVdBQVlRZ0FBbkF3QVFKd01RSUNjRElEQW5BekJBSndOQVVDY0RVR0FtdzJCd0pzTjJJREFBSndNQUVDY0RFQ0Ftd3lZdzBBQW5Bd0FRSndNUUlDY0RJREFuQXpCQUpzTkFVQ2JEVUdBbXcyQndKc053Z0NiRGdKQW13NUNnTnNNVEFMQTJ3eE1Rd0RiREV5IixVPWE7Ri5oMjY0TW9kdWxlPW5ldyBXZWJBc3NlbWJseS5Nb2R1bGUoVS5kZWNvZGUoTCkpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh5LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTtjb25zdCBZPUYscT1BPT4oSSxnLEIpPT57QS5IRUFQVTguY29weVdpdGhpbihJLGcsZytCKX07ZnVuY3Rpb24gSyhBLEkpe2NvbnN0IGc9QSVJO3JldHVybiBnPjA/QStJLWc6QX1jb25zdCBIPUE9Pkk9Pntjb25zdCBnPUEuSEVBUFU4Lmxlbmd0aCxCPTY1NTM2LFE9MjE0NzQ4MzY0ODtpZihJPlEpcmV0dXJuITE7Y29uc3QgQz0xNjc3NzIxNjtmb3IobGV0IEQ9MTtEPD00O0QqPTIpe2xldCBFPWcqKDErLjIvRCk7RT1NYXRoLm1pbihFLEkrMTAwNjYzMjk2KTtjb25zdCB3PU1hdGgubWluKFEsSyhNYXRoLm1heChDLEksRSksQikpO3RyeXtjb25zdHttZW1vcnk6b309QTtvLmdyb3cody1vLmJ1ZmZlci5ieXRlTGVuZ3RoKzY1NTM1Pj4+MTYpO2NvbnN0e2J1ZmZlcjpOfT1vO3JldHVybiBBLkhFQVA4PW5ldyBJbnQ4QXJyYXkoTiksQS5IRUFQVTg9bmV3IFVpbnQ4QXJyYXkoTiksQS5IRUFQMzI9bmV3IEludDMyQXJyYXkoTiksITB9Y2F0Y2h7fX1yZXR1cm4hMX0sUj02NTUzNixjPTUyNTE3OTIsZD04NzUyLHQ9MTY3NzcyMTY7Y2xhc3MgaXtjb25zdHJ1Y3Rvcigpe3RoaXMud2lkdGg9MCx0aGlzLmhlaWdodD0wLHRoaXMucGljPW5ldyBVaW50OEFycmF5KDApO2NvbnN0IEk9bmV3IFdlYkFzc2VtYmx5Lk1lbW9yeSh7aW5pdGlhbDp0L1IsbWF4aW11bToyMTQ3NDgzNjQ4L1J9KSxnPXttZW1vcnk6SSxIRUFQODpuZXcgSW50OEFycmF5KEkuYnVmZmVyKSxIRUFQVTg6bmV3IFVpbnQ4QXJyYXkoSS5idWZmZXIpLEhFQVAzMjpuZXcgSW50MzJBcnJheShJLmJ1ZmZlcil9O2cuSEVBUDMyW2Q+PjJdPWM7Y29uc3R7ZXhwb3J0czpCfT1uZXcgV2ViQXNzZW1ibHkuSW5zdGFuY2UoWS5oMjY0TW9kdWxlLHtoMjY0OnttZW1vcnk6SSxtZW1jcHk6cShnKSxyZXNpemU6SChnKX19KTt0aGlzLm1lbW9yeT1nLHRoaXMuYXNtPUIsdGhpcy5wU3RvcmFnZT1CLmgyNjRhbGxvYygpLHRoaXMucFdpZHRoPUIubWFsbG9jKDQpLHRoaXMucEhlaWdodD1CLm1hbGxvYyg0KSx0aGlzLnBQaWN0dXJlPUIubWFsbG9jKDQpLHRoaXMuZGVjQnVmZmVyPUIubWFsbG9jKDEwMjQqMTAyNCksQi5pbml0KHRoaXMucFN0b3JhZ2UsMCl9ZGVjb2RlKEkpe2NvbnN0e21lbW9yeTpnLGFzbTpCfT10aGlzO2cuSEVBUFU4LnNldChJLHRoaXMuZGVjQnVmZmVyKTtjb25zdCBRPUIuZGVjb2RlKHRoaXMucFN0b3JhZ2UsdGhpcy5kZWNCdWZmZXIsSS5ieXRlTGVuZ3RoLHRoaXMucFBpY3R1cmUsdGhpcy5wV2lkdGgsdGhpcy5wSGVpZ2h0KTtpZihRPT09aS5QSUNfUkRZKXtjb25zdCBDPXRoaXMud2lkdGg9Zy5IRUFQMzJbdGhpcy5wV2lkdGg+Pj4yXSxEPXRoaXMuaGVpZ2h0PWcuSEVBUDMyW3RoaXMucEhlaWdodD4+PjJdLEU9Zy5IRUFQMzJbdGhpcy5wUGljdHVyZT4+Ml0sdz1DKkQqMy8yO3RoaXMucGljPWcuSEVBUFU4LnN1YmFycmF5KEUsRSt3KX1yZXR1cm4gUX19dmFyIGI9eS5IMjY0RGVjb2Rlcj1pO2kuUkRZPTAsaS5QSUNfUkRZPTEsaS5IRFJTX1JEWT0yLGkuRVJST1I9MyxpLlBBUkFNX1NFVF9FUlJPUj00LGkuTUVNQUxMT0NfRVJST1I9NTtmdW5jdGlvbiB4KEEpe3JldHVybiBVaW50OEFycmF5LmZyb20oYXRvYihBKSxJPT5JLmNoYXJDb2RlQXQoMCkpfWNvbnN0IHM9c2VsZixrPW5ldyBiLG09Si5zZWNvbmQvNTthZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixBPT57Y29uc3R7dGltZXN0YW1wOkksZmxhZ3M6ZyxpbmRleDpCfT1BLmRhdGEsUT1EYXRlLm5vdygpLUk7aWYoUT5tJiZnIT09Myl7TShgRnJhbWUgaXMgJHtRfW1zIGxhdGUsIGRyb3BwaW5nYCxCKTtyZXR1cm59Y29uc3QgQz14KEEuZGF0YS5lbmNvZGVkRnJhbWUpLEQ9ay5kZWNvZGUoQyk7dHJ5e2lmKEQhPT0xKXtNKGBmYWlsZWQgdG8gZGVjb2RlIGZyYW1lLCBzdGF0dXM6ICR7bihEKX1gLEIsQyk7cmV0dXJufWNvbnN0e3BpYzpFLGhlaWdodDp3LHdpZHRoOm99PWs7aWYoRS5sZW5ndGg9PT0wfHx3PT09MHx8bz09PTApe00oImRlY29kZWQgZnJhbWUgaGFzIG5vIGRhdGEiLEIsQyk7cmV0dXJufWNvbnN0IE49bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KEUpO3MucG9zdE1lc3NhZ2Uoe3RpbWVzdGFtcDpBLmRhdGEudGltZXN0YW1wLHl1djpOLGhlaWdodDp3LHdpZHRoOm8saW5kZXg6Qn0pfWNhdGNoKEUpe00oRSxCKX19KTtmdW5jdGlvbiBNKEEsSSxnKXtzLnBvc3RNZXNzYWdlKHtlcnJvcjpgaDI2NCBkZWNvZGVyIHdvcmtlcjogJHtBfWAsaW5kZXg6SX0pfWZ1bmN0aW9uIG4oQSl7c3dpdGNoKEEpe2Nhc2UgMDpyZXR1cm4iUkRZIjtjYXNlIDE6cmV0dXJuIlBJQ19SRFkiO2Nhc2UgMjpyZXR1cm4iSERSU19SRFkiO2Nhc2UgMzpyZXR1cm4iRVJST1IiO2Nhc2UgNDpyZXR1cm4iUEFSQU1fU0VUX0VSUk9SIjtjYXNlIDU6cmV0dXJuIk1FTUFMTE9DX0VSUk9SIjtkZWZhdWx0OnJldHVybiBBLnRvU3RyaW5nKCl9fX0pfSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9dWktc2RrLXJlYWx0aW1lLXBsYXllci1jb3JlLXdvcmtlci51bWQtNjhhNmUxNmEuanMubWFwCg==";typeof window<"u"&&window.Blob&&new Blob([atob(encodedJs$3)],{type:"text/javascript;charset=utf-8"});new URLSearchParams(window.location.search).get("debug");distExports.createRtcStreamMessage;var lodashExports={},lodash={get exports(){return lodashExports},set exports(o){lodashExports=o}};/** +`},goog.loadModule=function(et){var tt=goog.moduleLoaderState_;try{if(goog.moduleLoaderState_={moduleName:"",declareLegacyNamespace:!1,type:goog.ModuleType.GOOG},goog.isFunction(et))var nt=et.call(void 0,{});else{if(!goog.isString(et))throw Error("Invalid module definition");goog.useSafari10Workaround()&&(et=goog.workaroundSafari10EvalBug(et)),nt=goog.loadModuleFromSource_.call(void 0,et)}var it=goog.moduleLoaderState_.moduleName;if(!goog.isString(it)||!it)throw Error('Invalid module name "'+it+'"');goog.moduleLoaderState_.declareLegacyNamespace?goog.constructNamespace_(it,nt):goog.SEAL_MODULE_EXPORTS&&Object.seal&&typeof nt=="object"&&nt!=null&&Object.seal(nt),goog.loadedModules_[it]={exports:nt,type:goog.ModuleType.GOOG,moduleId:goog.moduleLoaderState_.moduleName}}finally{goog.moduleLoaderState_=tt}},goog.loadModuleFromSource_=function(a){return eval(a),{}},goog.normalizePath_=function(et){et=et.split("/");for(var tt=0;tt>>0),goog.uidCounter_=0,goog.getHashCode=goog.getUid,goog.removeHashCode=goog.removeUid,goog.cloneObject=function(et){var tt=goog.typeOf(et);if(tt=="object"||tt=="array"){if(typeof et.clone=="function")return et.clone();for(var nt in tt=tt=="array"?[]:{},et)tt[nt]=goog.cloneObject(et[nt]);return tt}return et},goog.bindNative_=function(et,tt,nt){return et.call.apply(et.bind,arguments)},goog.bindJs_=function(et,tt,nt){if(!et)throw Error();if(2"u"||!TrustedTypes.createPolicy)return tt;try{tt=TrustedTypes.createPolicy(et,{createHTML:goog.identity_,createScript:goog.identity_,createScriptURL:goog.identity_,createURL:goog.identity_})}catch(nt){goog.logToConsole_(nt.message)}return tt},goog.TRUSTED_TYPES_POLICY_=goog.TRUSTED_TYPES_POLICY_NAME?goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME+"#base"):null;var jspb={BinaryConstants:{},ConstBinaryMessage:function(){},BinaryMessage:function(){}};jspb.BinaryConstants.FieldType={INVALID:-1,DOUBLE:1,FLOAT:2,INT64:3,UINT64:4,INT32:5,FIXED64:6,FIXED32:7,BOOL:8,STRING:9,GROUP:10,MESSAGE:11,BYTES:12,UINT32:13,ENUM:14,SFIXED32:15,SFIXED64:16,SINT32:17,SINT64:18,FHASH64:30,VHASH64:31},jspb.BinaryConstants.WireType={INVALID:-1,VARINT:0,FIXED64:1,DELIMITED:2,START_GROUP:3,END_GROUP:4,FIXED32:5},jspb.BinaryConstants.FieldTypeToWireType=function(et){var tt=jspb.BinaryConstants.FieldType,nt=jspb.BinaryConstants.WireType;switch(et){case tt.INT32:case tt.INT64:case tt.UINT32:case tt.UINT64:case tt.SINT32:case tt.SINT64:case tt.BOOL:case tt.ENUM:case tt.VHASH64:return nt.VARINT;case tt.DOUBLE:case tt.FIXED64:case tt.SFIXED64:case tt.FHASH64:return nt.FIXED64;case tt.STRING:case tt.MESSAGE:case tt.BYTES:return nt.DELIMITED;case tt.FLOAT:case tt.FIXED32:case tt.SFIXED32:return nt.FIXED32;default:return nt.INVALID}},jspb.BinaryConstants.INVALID_FIELD_NUMBER=-1,jspb.BinaryConstants.FLOAT32_EPS=1401298464324817e-60,jspb.BinaryConstants.FLOAT32_MIN=11754943508222875e-54,jspb.BinaryConstants.FLOAT32_MAX=34028234663852886e22,jspb.BinaryConstants.FLOAT64_EPS=5e-324,jspb.BinaryConstants.FLOAT64_MIN=22250738585072014e-324,jspb.BinaryConstants.FLOAT64_MAX=17976931348623157e292,jspb.BinaryConstants.TWO_TO_20=1048576,jspb.BinaryConstants.TWO_TO_23=8388608,jspb.BinaryConstants.TWO_TO_31=2147483648,jspb.BinaryConstants.TWO_TO_32=4294967296,jspb.BinaryConstants.TWO_TO_52=4503599627370496,jspb.BinaryConstants.TWO_TO_63=9223372036854776e3,jspb.BinaryConstants.TWO_TO_64=18446744073709552e3,jspb.BinaryConstants.ZERO_HASH="\0\0\0\0\0\0\0\0",goog.dom={},goog.dom.NodeType={ELEMENT:1,ATTRIBUTE:2,TEXT:3,CDATA_SECTION:4,ENTITY_REFERENCE:5,ENTITY:6,PROCESSING_INSTRUCTION:7,COMMENT:8,DOCUMENT:9,DOCUMENT_TYPE:10,DOCUMENT_FRAGMENT:11,NOTATION:12},goog.debug={},goog.debug.Error=function(et){if(Error.captureStackTrace)Error.captureStackTrace(this,goog.debug.Error);else{var tt=Error().stack;tt&&(this.stack=tt)}et&&(this.message=String(et)),this.reportErrorToServer=!0},goog.inherits(goog.debug.Error,Error),goog.debug.Error.prototype.name="CustomError",goog.asserts={},goog.asserts.ENABLE_ASSERTS=goog.DEBUG,goog.asserts.AssertionError=function(et,tt){goog.debug.Error.call(this,goog.asserts.subs_(et,tt)),this.messagePattern=et},goog.inherits(goog.asserts.AssertionError,goog.debug.Error),goog.asserts.AssertionError.prototype.name="AssertionError",goog.asserts.DEFAULT_ERROR_HANDLER=function(et){throw et},goog.asserts.errorHandler_=goog.asserts.DEFAULT_ERROR_HANDLER,goog.asserts.subs_=function(et,tt){for(var nt="",it=(et=et.split("%s")).length-1,ot=0;otnt?Math.max(0,et.length+nt):nt,goog.isString(et))return goog.isString(tt)&&tt.length==1?et.indexOf(tt,nt):-1;for(;nt(nt=nt??et.length-1)&&(nt=Math.max(0,et.length+nt)),goog.isString(et))return goog.isString(tt)&&tt.length==1?et.lastIndexOf(tt,nt):-1;for(;0<=nt;nt--)if(nt in et&&et[nt]===tt)return nt;return-1},goog.array.forEach=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.forEach)?function(et,tt,nt){goog.asserts.assert(et.length!=null),Array.prototype.forEach.call(et,tt,nt)}:function(et,tt,nt){for(var it=et.length,ot=goog.isString(et)?et.split(""):et,Ut=0;Ut(tt=goog.array.findIndex(et,tt,nt))?null:goog.isString(et)?et.charAt(tt):et[tt]},goog.array.findIndex=function(et,tt,nt){for(var it=et.length,ot=goog.isString(et)?et.split(""):et,Ut=0;Ut(tt=goog.array.findIndexRight(et,tt,nt))?null:goog.isString(et)?et.charAt(tt):et[tt]},goog.array.findIndexRight=function(et,tt,nt){var it=et.length,ot=goog.isString(et)?et.split(""):et;for(--it;0<=it;it--)if(it in ot&&tt.call(nt,ot[it],it,et))return it;return-1},goog.array.contains=function(et,tt){return 0<=goog.array.indexOf(et,tt)},goog.array.isEmpty=function(et){return et.length==0},goog.array.clear=function(et){if(!goog.isArray(et))for(var tt=et.length-1;0<=tt;tt--)delete et[tt];et.length=0},goog.array.insert=function(et,tt){goog.array.contains(et,tt)||et.push(tt)},goog.array.insertAt=function(et,tt,nt){goog.array.splice(et,nt,0,tt)},goog.array.insertArrayAt=function(et,tt,nt){goog.partial(goog.array.splice,et,nt,0).apply(null,tt)},goog.array.insertBefore=function(et,tt,nt){var it;arguments.length==2||0>(it=goog.array.indexOf(et,nt))?et.push(tt):goog.array.insertAt(et,tt,it)},goog.array.remove=function(et,tt){var nt;return(nt=0<=(tt=goog.array.indexOf(et,tt)))&&goog.array.removeAt(et,tt),nt},goog.array.removeLast=function(et,tt){return 0<=(tt=goog.array.lastIndexOf(et,tt))&&(goog.array.removeAt(et,tt),!0)},goog.array.removeAt=function(et,tt){return goog.asserts.assert(et.length!=null),Array.prototype.splice.call(et,tt,1).length==1},goog.array.removeIf=function(et,tt,nt){return 0<=(tt=goog.array.findIndex(et,tt,nt))&&(goog.array.removeAt(et,tt),!0)},goog.array.removeAllIf=function(et,tt,nt){var it=0;return goog.array.forEachRight(et,function(ot,Ut){tt.call(nt,ot,Ut,et)&&goog.array.removeAt(et,Ut)&&it++}),it},goog.array.concat=function(et){return Array.prototype.concat.apply([],arguments)},goog.array.join=function(et){return Array.prototype.concat.apply([],arguments)},goog.array.toArray=function(et){var tt=et.length;if(0=arguments.length?Array.prototype.slice.call(et,tt):Array.prototype.slice.call(et,tt,nt)},goog.array.removeDuplicates=function(et,tt,nt){tt=tt||et;var it=function(Bt){return goog.isObject(Bt)?"o"+goog.getUid(Bt):(typeof Bt).charAt(0)+Bt};nt=nt||it,it={};for(var ot=0,Ut=0;Ut>1,Vt=nt?tt.call(ot,et[Bt],Bt,et):tt(it,et[Bt]);0tt?1:et(nt=goog.array.binarySearch(et,tt,nt))&&(goog.array.insertAt(et,tt,-(nt+1)),!0)},goog.array.binaryRemove=function(et,tt,nt){return 0<=(tt=goog.array.binarySearch(et,tt,nt))&&goog.array.removeAt(et,tt)},goog.array.bucket=function(et,tt,nt){for(var it={},ot=0;ot(nt=nt||1)*(Ut-ot))return[];if(0Ut;et+=nt)it.push(et);return it},goog.array.repeat=function(et,tt){for(var nt=[],it=0;ittt&&Array.prototype.push.apply(et,et.splice(0,-tt))),et},goog.array.moveItem=function(et,tt,nt){goog.asserts.assert(0<=tt&&tt>=8),tt[nt++]=ot}return tt},goog.crypt.byteArrayToString=function(et){if(8192>=et.length)return String.fromCharCode.apply(null,et);for(var tt="",nt=0;ntot?tt[nt++]=ot:(2048>ot?tt[nt++]=ot>>6|192:((64512&ot)==55296&&it+1>18|240,tt[nt++]=ot>>12&63|128):tt[nt++]=ot>>12|224,tt[nt++]=ot>>6&63|128),tt[nt++]=63&ot|128)}return tt},goog.crypt.utf8ByteArrayToString=function(et){for(var tt=[],nt=0,it=0;ntot)tt[it++]=String.fromCharCode(ot);else if(191ot){var Ut=et[nt++];tt[it++]=String.fromCharCode((31&ot)<<6|63&Ut)}else if(239ot){Ut=et[nt++];var Ft=et[nt++];ot=((7&ot)<<18|(63&Ut)<<12|(63&Ft)<<6|63&et[nt++])-65536,tt[it++]=String.fromCharCode(55296+(ot>>10)),tt[it++]=String.fromCharCode(56320+(1023&ot))}else Ut=et[nt++],Ft=et[nt++],tt[it++]=String.fromCharCode((15&ot)<<12|(63&Ut)<<6|63&Ft)}return tt.join("")},goog.crypt.xorByteArray=function(et,tt){goog.asserts.assert(et.length==tt.length,"XOR array lengths must match");for(var nt=[],it=0;it":"
")},goog.string.internal.htmlEscape=function(et,tt){if(tt)et=et.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(et))return et;et.indexOf("&")!=-1&&(et=et.replace(goog.string.internal.AMP_RE_,"&")),et.indexOf("<")!=-1&&(et=et.replace(goog.string.internal.LT_RE_,"<")),et.indexOf(">")!=-1&&(et=et.replace(goog.string.internal.GT_RE_,">")),et.indexOf('"')!=-1&&(et=et.replace(goog.string.internal.QUOT_RE_,""")),et.indexOf("'")!=-1&&(et=et.replace(goog.string.internal.SINGLE_QUOTE_RE_,"'")),et.indexOf("\0")!=-1&&(et=et.replace(goog.string.internal.NULL_RE_,"�"))}return et},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(et,tt){return goog.string.internal.newLineToBr(et.replace(/ /g,"  "),tt)},goog.string.internal.contains=function(et,tt){return et.indexOf(tt)!=-1},goog.string.internal.caseInsensitiveContains=function(et,tt){return goog.string.internal.contains(et.toLowerCase(),tt.toLowerCase())},goog.string.internal.compareVersions=function(et,tt){var nt=0;et=goog.string.internal.trim(String(et)).split("."),tt=goog.string.internal.trim(String(tt)).split(".");for(var it=Math.max(et.length,tt.length),ot=0;nt==0&&ottt?1:0},goog.string.TypedString=function(){},goog.string.Const=function(et,tt){this.stringConstValueWithSecurityContract__googStringSecurityPrivate_=et===goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_&&tt||"",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.string.Const.prototype.toString=function(){return"Const{"+this.stringConstValueWithSecurityContract__googStringSecurityPrivate_+"}"},goog.string.Const.unwrap=function(et){return et instanceof goog.string.Const&&et.constructor===goog.string.Const&&et.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_===goog.string.Const.TYPE_MARKER_?et.stringConstValueWithSecurityContract__googStringSecurityPrivate_:(goog.asserts.fail("expected object of type Const, got '"+et+"'"),"type_error:Const")},goog.string.Const.from=function(et){return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_,et)},goog.string.Const.TYPE_MARKER_={},goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_={},goog.string.Const.EMPTY=goog.string.Const.from(""),goog.fs={},goog.fs.url={},goog.fs.url.createObjectUrl=function(et){return goog.fs.url.getUrlObject_().createObjectURL(et)},goog.fs.url.revokeObjectUrl=function(et){goog.fs.url.getUrlObject_().revokeObjectURL(et)},goog.fs.url.getUrlObject_=function(){var et=goog.fs.url.findUrlObject_();if(et!=null)return et;throw Error("This browser doesn't seem to support blob URLs")},goog.fs.url.findUrlObject_=function(){return goog.isDef(goog.global.URL)&&goog.isDef(goog.global.URL.createObjectURL)?goog.global.URL:goog.isDef(goog.global.webkitURL)&&goog.isDef(goog.global.webkitURL.createObjectURL)?goog.global.webkitURL:goog.isDef(goog.global.createObjectURL)?goog.global:null},goog.fs.url.browserSupportsObjectUrls=function(){return goog.fs.url.findUrlObject_()!=null},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.i18n={},goog.i18n.bidi={},goog.i18n.bidi.FORCE_RTL=!1,goog.i18n.bidi.IS_RTL=goog.i18n.bidi.FORCE_RTL||(goog.LOCALE.substring(0,2).toLowerCase()=="ar"||goog.LOCALE.substring(0,2).toLowerCase()=="fa"||goog.LOCALE.substring(0,2).toLowerCase()=="he"||goog.LOCALE.substring(0,2).toLowerCase()=="iw"||goog.LOCALE.substring(0,2).toLowerCase()=="ps"||goog.LOCALE.substring(0,2).toLowerCase()=="sd"||goog.LOCALE.substring(0,2).toLowerCase()=="ug"||goog.LOCALE.substring(0,2).toLowerCase()=="ur"||goog.LOCALE.substring(0,2).toLowerCase()=="yi")&&(goog.LOCALE.length==2||goog.LOCALE.substring(2,3)=="-"||goog.LOCALE.substring(2,3)=="_")||3<=goog.LOCALE.length&&goog.LOCALE.substring(0,3).toLowerCase()=="ckb"&&(goog.LOCALE.length==3||goog.LOCALE.substring(3,4)=="-"||goog.LOCALE.substring(3,4)=="_")||7<=goog.LOCALE.length&&(goog.LOCALE.substring(2,3)=="-"||goog.LOCALE.substring(2,3)=="_")&&(goog.LOCALE.substring(3,7).toLowerCase()=="adlm"||goog.LOCALE.substring(3,7).toLowerCase()=="arab"||goog.LOCALE.substring(3,7).toLowerCase()=="hebr"||goog.LOCALE.substring(3,7).toLowerCase()=="nkoo"||goog.LOCALE.substring(3,7).toLowerCase()=="rohg"||goog.LOCALE.substring(3,7).toLowerCase()=="thaa")||8<=goog.LOCALE.length&&(goog.LOCALE.substring(3,4)=="-"||goog.LOCALE.substring(3,4)=="_")&&(goog.LOCALE.substring(4,8).toLowerCase()=="adlm"||goog.LOCALE.substring(4,8).toLowerCase()=="arab"||goog.LOCALE.substring(4,8).toLowerCase()=="hebr"||goog.LOCALE.substring(4,8).toLowerCase()=="nkoo"||goog.LOCALE.substring(4,8).toLowerCase()=="rohg"||goog.LOCALE.substring(4,8).toLowerCase()=="thaa"),goog.i18n.bidi.Format={LRE:"‪",RLE:"‫",PDF:"‬",LRM:"‎",RLM:"‏"},goog.i18n.bidi.Dir={LTR:1,RTL:-1,NEUTRAL:0},goog.i18n.bidi.RIGHT="right",goog.i18n.bidi.LEFT="left",goog.i18n.bidi.I18N_RIGHT=goog.i18n.bidi.IS_RTL?goog.i18n.bidi.LEFT:goog.i18n.bidi.RIGHT,goog.i18n.bidi.I18N_LEFT=goog.i18n.bidi.IS_RTL?goog.i18n.bidi.RIGHT:goog.i18n.bidi.LEFT,goog.i18n.bidi.toDir=function(et,tt){return typeof et=="number"?0et?goog.i18n.bidi.Dir.RTL:tt?null:goog.i18n.bidi.Dir.NEUTRAL:et==null?null:et?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(et,tt){return tt?et.replace(goog.i18n.bidi.htmlSkipReg_,""):et},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(et,tt){return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(et,tt))},goog.i18n.bidi.hasRtlChar=goog.i18n.bidi.hasAnyRtl,goog.i18n.bidi.hasAnyLtr=function(et,tt){return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(et,tt))},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(et){return goog.i18n.bidi.rtlRe_.test(et)},goog.i18n.bidi.isLtrChar=function(et){return goog.i18n.bidi.ltrRe_.test(et)},goog.i18n.bidi.isNeutralChar=function(et){return!goog.i18n.bidi.isLtrChar(et)&&!goog.i18n.bidi.isRtlChar(et)},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(et,tt){return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(et,tt))},goog.i18n.bidi.isRtlText=goog.i18n.bidi.startsWithRtl,goog.i18n.bidi.startsWithLtr=function(et,tt){return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(et,tt))},goog.i18n.bidi.isLtrText=goog.i18n.bidi.startsWithLtr,goog.i18n.bidi.isRequiredLtrRe_=/^http:\/\/.*/,goog.i18n.bidi.isNeutralText=function(et,tt){return et=goog.i18n.bidi.stripHtmlIfNeeded_(et,tt),goog.i18n.bidi.isRequiredLtrRe_.test(et)||!goog.i18n.bidi.hasAnyLtr(et)&&!goog.i18n.bidi.hasAnyRtl(et)},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(et,tt){return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(et,tt))},goog.i18n.bidi.isLtrExitText=goog.i18n.bidi.endsWithLtr,goog.i18n.bidi.endsWithRtl=function(et,tt){return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(et,tt))},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(et){return goog.i18n.bidi.rtlLocalesRe_.test(et)},goog.i18n.bidi.bracketGuardTextRe_=/(\(.*?\)+)|(\[.*?\]+)|(\{.*?\}+)|(<.*?>+)/g,goog.i18n.bidi.guardBracketInText=function(et,tt){return tt=(tt===void 0?goog.i18n.bidi.hasAnyRtl(et):tt)?goog.i18n.bidi.Format.RLM:goog.i18n.bidi.Format.LRM,et.replace(goog.i18n.bidi.bracketGuardTextRe_,tt+"$&"+tt)},goog.i18n.bidi.enforceRtlInHtml=function(et){return et.charAt(0)=="<"?et.replace(/<\w+/,"$& dir=rtl"):` +`+et+""},goog.i18n.bidi.enforceRtlInText=function(et){return goog.i18n.bidi.Format.RLE+et+goog.i18n.bidi.Format.PDF},goog.i18n.bidi.enforceLtrInHtml=function(et){return et.charAt(0)=="<"?et.replace(/<\w+/,"$& dir=ltr"):` +`+et+""},goog.i18n.bidi.enforceLtrInText=function(et){return goog.i18n.bidi.Format.LRE+et+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(et){return et.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(et){return et.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(et,tt){var nt=0,it=0,ot=!1;for(et=goog.i18n.bidi.stripHtmlIfNeeded_(et,tt).split(goog.i18n.bidi.wordSeparatorRe_),tt=0;ttgoog.i18n.bidi.rtlDetectionThreshold_?goog.i18n.bidi.Dir.RTL:goog.i18n.bidi.Dir.LTR},goog.i18n.bidi.detectRtlDirectionality=function(et,tt){return goog.i18n.bidi.estimateDirection(et,tt)==goog.i18n.bidi.Dir.RTL},goog.i18n.bidi.setElementDirAndAlign=function(et,tt){et&&(tt=goog.i18n.bidi.toDir(tt))&&(et.style.textAlign=tt==goog.i18n.bidi.Dir.RTL?goog.i18n.bidi.RIGHT:goog.i18n.bidi.LEFT,et.dir=tt==goog.i18n.bidi.Dir.RTL?"rtl":"ltr")},goog.i18n.bidi.setElementDirByTextDirectionality=function(et,tt){switch(goog.i18n.bidi.estimateDirection(tt)){case goog.i18n.bidi.Dir.LTR:et.dir="ltr";break;case goog.i18n.bidi.Dir.RTL:et.dir="rtl";break;default:et.removeAttribute("dir")}},goog.i18n.bidi.DirectionalString=function(){},goog.html.TrustedResourceUrl=function(){this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_="",this.trustedURL_=null,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(et,tt){var nt=goog.html.TrustedResourceUrl.unwrap(this),it=(nt=goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(nt))[3]||"";return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(nt[1]+goog.html.TrustedResourceUrl.stringifyParams_("?",nt[2]||"",et)+goog.html.TrustedResourceUrl.stringifyParams_("#",it,tt))},goog.DEBUG&&(goog.html.TrustedResourceUrl.prototype.toString=function(){return"TrustedResourceUrl{"+this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_+"}"}),goog.html.TrustedResourceUrl.unwrap=function(et){return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(et).toString()},goog.html.TrustedResourceUrl.unwrapTrustedScriptURL=function(et){return et instanceof goog.html.TrustedResourceUrl&&et.constructor===goog.html.TrustedResourceUrl&&et.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_?et.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_:(goog.asserts.fail("expected object of type TrustedResourceUrl, got '"+et+"' of type "+goog.typeOf(et)),"type_error:TrustedResourceUrl")},goog.html.TrustedResourceUrl.unwrapTrustedURL=function(et){return et.trustedURL_?et.trustedURL_:goog.html.TrustedResourceUrl.unwrap(et)},goog.html.TrustedResourceUrl.format=function(et,tt){var nt=goog.string.Const.unwrap(et);if(!goog.html.TrustedResourceUrl.BASE_URL_.test(nt))throw Error("Invalid TrustedResourceUrl format: "+nt);return et=nt.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_,function(it,ot){if(!Object.prototype.hasOwnProperty.call(tt,ot))throw Error('Found marker, "'+ot+'", in format string, "'+nt+'", but no valid label mapping found in args: '+JSON.stringify(tt));return(it=tt[ot])instanceof goog.string.Const?goog.string.Const.unwrap(it):encodeURIComponent(String(it))}),goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(et)},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(et,tt,nt,it){return goog.html.TrustedResourceUrl.format(et,tt).cloneWithParams(nt,it)},goog.html.TrustedResourceUrl.fromConstant=function(et){return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(et))},goog.html.TrustedResourceUrl.fromConstants=function(et){for(var tt="",nt=0;ntet.length?"&":"")+encodeURIComponent(it)+"="+encodeURIComponent(String(Ft)))}}return tt},goog.html.SafeUrl=function(){this.privateDoNotAccessOrElseSafeUrlWrappedValue_="",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(et){return goog.html.SafeUrl.unwrapTrustedURL(et).toString()},goog.html.SafeUrl.unwrapTrustedURL=function(et){return et instanceof goog.html.SafeUrl&&et.constructor===goog.html.SafeUrl&&et.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_?et.privateDoNotAccessOrElseSafeUrlWrappedValue_:(goog.asserts.fail("expected object of type SafeUrl, got '"+et+"' of type "+goog.typeOf(et)),"type_error:SafeUrl")},goog.html.SafeUrl.fromConstant=function(et){return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(et))},goog.html.SAFE_MIME_TYPE_PATTERN_=/^(?:audio\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-wav|wav|webm)|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\/csv|video\/(?:mpeg|mp4|ogg|webm|quicktime))(?:;\w+=(?:\w+|"[\w;=]+"))*$/i,goog.html.SafeUrl.isSafeMimeType=function(et){return goog.html.SAFE_MIME_TYPE_PATTERN_.test(et)},goog.html.SafeUrl.fromBlob=function(et){return et=goog.html.SAFE_MIME_TYPE_PATTERN_.test(et.type)?goog.fs.url.createObjectUrl(et):goog.html.SafeUrl.INNOCUOUS_STRING,goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(et)},goog.html.DATA_URL_PATTERN_=/^data:([^,]*);base64,[a-z0-9+\/]+=*$/i,goog.html.SafeUrl.fromDataUrl=function(et){var tt=(et=et.replace(/(%0A|%0D)/g,"")).match(goog.html.DATA_URL_PATTERN_);return tt=tt&&goog.html.SAFE_MIME_TYPE_PATTERN_.test(tt[1]),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(tt?et:goog.html.SafeUrl.INNOCUOUS_STRING)},goog.html.SafeUrl.fromTelUrl=function(et){return goog.string.internal.caseInsensitiveStartsWith(et,"tel:")||(et=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(et)},goog.html.SIP_URL_PATTERN_=/^sip[s]?:[+a-z0-9_.!$%&'*\/=^`{|}~-]+@([a-z0-9-]+\.)+[a-z0-9]{2,63}$/i,goog.html.SafeUrl.fromSipUrl=function(et){return goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(et))||(et=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(et)},goog.html.SafeUrl.fromFacebookMessengerUrl=function(et){return goog.string.internal.caseInsensitiveStartsWith(et,"fb-messenger://share")||(et=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(et)},goog.html.SafeUrl.fromWhatsAppUrl=function(et){return goog.string.internal.caseInsensitiveStartsWith(et,"whatsapp://send")||(et=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(et)},goog.html.SafeUrl.fromSmsUrl=function(et){return goog.string.internal.caseInsensitiveStartsWith(et,"sms:")&&goog.html.SafeUrl.isSmsUrlBodyValid_(et)||(et=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(et)},goog.html.SafeUrl.isSmsUrlBodyValid_=function(et){var tt=et.indexOf("#");if(0+~[\]()=^$|]+$/.test(nt))throw Error("Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|] and strings, got: "+et);if(!goog.html.SafeStyleSheet.hasBalancedBrackets_(nt))throw Error("() and [] in selector must be balanced, got: "+et);return tt instanceof goog.html.SafeStyle||(tt=goog.html.SafeStyle.create(tt)),et=et+"{"+goog.html.SafeStyle.unwrap(tt).replace(/.");if(et.toUpperCase()in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_)throw Error("Tag name <"+et+"> is not allowed for SafeHtml.")},goog.html.SafeHtml.createIframe=function(et,tt,nt,it){et&&goog.html.TrustedResourceUrl.unwrap(et);var ot={};return ot.src=et||null,ot.srcdoc=tt&&goog.html.SafeHtml.unwrap(tt),et=goog.html.SafeHtml.combineAttributes(ot,{sandbox:""},nt),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",et,it)},goog.html.SafeHtml.createSandboxIframe=function(et,tt,nt,it){if(!goog.html.SafeHtml.canUseSandboxIframe())throw Error("The browser does not support sandboxed iframes.");var ot={};return ot.src=et?goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(et)):null,ot.srcdoc=tt||null,ot.sandbox="",et=goog.html.SafeHtml.combineAttributes(ot,{},nt),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",et,it)},goog.html.SafeHtml.canUseSandboxIframe=function(){return goog.global.HTMLIFrameElement&&"sandbox"in goog.global.HTMLIFrameElement.prototype},goog.html.SafeHtml.createScriptSrc=function(et,tt){return goog.html.TrustedResourceUrl.unwrap(et),et=goog.html.SafeHtml.combineAttributes({src:et},{},tt),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("script",et)},goog.html.SafeHtml.createScript=function(et,tt){for(var nt in tt){var it=nt.toLowerCase();if(it=="language"||it=="src"||it=="text"||it=="type")throw Error('Cannot set "'+it+'" attribute')}for(nt="",et=goog.array.concat(et),it=0;it does not allow content."),ot+=">"):(it=goog.html.SafeHtml.concat(nt),ot+=">"+goog.html.SafeHtml.unwrap(it)+"",it=it.getDirection()),(et=tt&&tt.dir)&&(it=/^(ltr|rtl|auto)$/i.test(et)?goog.i18n.bidi.Dir.NEUTRAL:null),goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(ot,it)},goog.html.SafeHtml.stringifyAttributes=function(et,tt){var nt="";if(tt)for(var it in tt){if(!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(it))throw Error('Invalid attribute name "'+it+'".');var ot=tt[it];goog.isDefAndNotNull(ot)&&(nt+=" "+goog.html.SafeHtml.getAttrNameAndValue_(et,it,ot))}return nt},goog.html.SafeHtml.combineAttributes=function(et,tt,nt){var it,ot={};for(it in et)goog.asserts.assert(it.toLowerCase()==it,"Must be lower case"),ot[it]=et[it];for(it in tt)goog.asserts.assert(it.toLowerCase()==it,"Must be lower case"),ot[it]=tt[it];for(it in nt){var Ut=it.toLowerCase();if(Ut in et)throw Error('Cannot override "'+Ut+'" attribute, got "'+it+'" with value "'+nt[it]+'"');Ut in tt&&delete ot[Ut],ot[it]=nt[it]}return ot},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(et,tt,nt){return goog.asserts.assertString(goog.string.Const.unwrap(et),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(et)),"must provide non-empty justification"),goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(tt,nt||null)},goog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract=function(et,tt){return goog.asserts.assertString(goog.string.Const.unwrap(et),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(et)),"must provide non-empty justification"),goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(tt)},goog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract=function(et,tt){return goog.asserts.assertString(goog.string.Const.unwrap(et),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(et)),"must provide non-empty justification"),goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(tt)},goog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract=function(et,tt){return goog.asserts.assertString(goog.string.Const.unwrap(et),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(et)),"must provide non-empty justification"),goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(tt)},goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract=function(et,tt){return goog.asserts.assertString(goog.string.Const.unwrap(et),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(et)),"must provide non-empty justification"),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(tt)},goog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract=function(et,tt){return goog.asserts.assertString(goog.string.Const.unwrap(et),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(et)),"must provide non-empty justification"),goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(tt)},goog.dom.asserts={},goog.dom.asserts.assertIsLocation=function(et){if(goog.asserts.ENABLE_ASSERTS){var tt=goog.dom.asserts.getWindow_(et);tt&&(!et||!(et instanceof tt.Location)&&et instanceof tt.Element)&&goog.asserts.fail("Argument is not a Location (or a non-Element mock); got: %s",goog.dom.asserts.debugStringForType_(et))}return et},goog.dom.asserts.assertIsElementType_=function(et,tt){if(goog.asserts.ENABLE_ASSERTS){var nt=goog.dom.asserts.getWindow_(et);nt&&nt[tt]!==void 0&&(et&&(et instanceof nt[tt]||!(et instanceof nt.Location||et instanceof nt.Element))||goog.asserts.fail("Argument is not a %s (or a non-Element, non-Location mock); got: %s",tt,goog.dom.asserts.debugStringForType_(et)))}return et},goog.dom.asserts.assertIsHTMLAnchorElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLAnchorElement")},goog.dom.asserts.assertIsHTMLButtonElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLButtonElement")},goog.dom.asserts.assertIsHTMLLinkElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLLinkElement")},goog.dom.asserts.assertIsHTMLImageElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLImageElement")},goog.dom.asserts.assertIsHTMLAudioElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLAudioElement")},goog.dom.asserts.assertIsHTMLVideoElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLVideoElement")},goog.dom.asserts.assertIsHTMLInputElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLInputElement")},goog.dom.asserts.assertIsHTMLTextAreaElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLTextAreaElement")},goog.dom.asserts.assertIsHTMLCanvasElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLCanvasElement")},goog.dom.asserts.assertIsHTMLEmbedElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLEmbedElement")},goog.dom.asserts.assertIsHTMLFormElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLFormElement")},goog.dom.asserts.assertIsHTMLFrameElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLFrameElement")},goog.dom.asserts.assertIsHTMLIFrameElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLIFrameElement")},goog.dom.asserts.assertIsHTMLObjectElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLObjectElement")},goog.dom.asserts.assertIsHTMLScriptElement=function(et){return goog.dom.asserts.assertIsElementType_(et,"HTMLScriptElement")},goog.dom.asserts.debugStringForType_=function(et){if(!goog.isObject(et))return et===void 0?"undefined":et===null?"null":typeof et;try{return et.constructor.displayName||et.constructor.name||Object.prototype.toString.call(et)}catch{return""}},goog.dom.asserts.getWindow_=function(et){try{var tt=et&&et.ownerDocument,nt=tt&&(tt.defaultView||tt.parentWindow);if((nt=nt||goog.global).Element&&nt.Location)return nt}catch{}return null},goog.functions={},goog.functions.constant=function(et){return function(){return et}},goog.functions.FALSE=function(){return!1},goog.functions.TRUE=function(){return!0},goog.functions.NULL=function(){return null},goog.functions.identity=function(et,tt){return et},goog.functions.error=function(et){return function(){throw Error(et)}},goog.functions.fail=function(et){return function(){throw et}},goog.functions.lock=function(et,tt){return tt=tt||0,function(){return et.apply(this,Array.prototype.slice.call(arguments,0,tt))}},goog.functions.nth=function(et){return function(){return arguments[et]}},goog.functions.partialRight=function(et,tt){var nt=Array.prototype.slice.call(arguments,1);return function(){var it=Array.prototype.slice.call(arguments);return it.push.apply(it,nt),et.apply(this,it)}},goog.functions.withReturnValue=function(et,tt){return goog.functions.sequence(et,goog.functions.constant(tt))},goog.functions.equalTo=function(et,tt){return function(nt){return tt?et==nt:et===nt}},goog.functions.compose=function(et,tt){var nt=arguments,it=nt.length;return function(){var ot;it&&(ot=nt[it-1].apply(this,arguments));for(var Ut=it-2;0<=Ut;Ut--)ot=nt[Ut].call(this,ot);return ot}},goog.functions.sequence=function(et){var tt=arguments,nt=tt.length;return function(){for(var it,ot=0;ot"u")return!1;var et=document.createElement("div"),tt=document.createElement("div");return tt.appendChild(document.createElement("div")),et.appendChild(tt),!(goog.DEBUG&&!et.firstChild)&&(tt=et.firstChild.firstChild,et.innerHTML=goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY),!tt.parentElement)}),goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse=function(et,tt){if(goog.dom.safe.isInnerHtmlCleanupRecursive_())for(;et.lastChild;)et.removeChild(et.lastChild);et.innerHTML=goog.html.SafeHtml.unwrapTrustedHTML(tt)},goog.dom.safe.setInnerHtml=function(et,tt){if(goog.asserts.ENABLE_ASSERTS){var nt=et.tagName.toUpperCase();if(goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[nt])throw Error("goog.dom.safe.setInnerHtml cannot be used to set content of "+et.tagName+".")}goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(et,tt)},goog.dom.safe.setOuterHtml=function(et,tt){et.outerHTML=goog.html.SafeHtml.unwrapTrustedHTML(tt)},goog.dom.safe.setFormElementAction=function(et,tt){tt=tt instanceof goog.html.SafeUrl?tt:goog.html.SafeUrl.sanitizeAssertUnchanged(tt),goog.dom.asserts.assertIsHTMLFormElement(et).action=goog.html.SafeUrl.unwrapTrustedURL(tt)},goog.dom.safe.setButtonFormAction=function(et,tt){tt=tt instanceof goog.html.SafeUrl?tt:goog.html.SafeUrl.sanitizeAssertUnchanged(tt),goog.dom.asserts.assertIsHTMLButtonElement(et).formAction=goog.html.SafeUrl.unwrapTrustedURL(tt)},goog.dom.safe.setInputFormAction=function(et,tt){tt=tt instanceof goog.html.SafeUrl?tt:goog.html.SafeUrl.sanitizeAssertUnchanged(tt),goog.dom.asserts.assertIsHTMLInputElement(et).formAction=goog.html.SafeUrl.unwrapTrustedURL(tt)},goog.dom.safe.setStyle=function(et,tt){et.style.cssText=goog.html.SafeStyle.unwrap(tt)},goog.dom.safe.documentWrite=function(et,tt){et.write(goog.html.SafeHtml.unwrapTrustedHTML(tt))},goog.dom.safe.setAnchorHref=function(et,tt){goog.dom.asserts.assertIsHTMLAnchorElement(et),tt=tt instanceof goog.html.SafeUrl?tt:goog.html.SafeUrl.sanitizeAssertUnchanged(tt),et.href=goog.html.SafeUrl.unwrapTrustedURL(tt)},goog.dom.safe.setImageSrc=function(et,tt){if(goog.dom.asserts.assertIsHTMLImageElement(et),!(tt instanceof goog.html.SafeUrl)){var nt=/^data:image\//i.test(tt);tt=goog.html.SafeUrl.sanitizeAssertUnchanged(tt,nt)}et.src=goog.html.SafeUrl.unwrapTrustedURL(tt)},goog.dom.safe.setAudioSrc=function(et,tt){if(goog.dom.asserts.assertIsHTMLAudioElement(et),!(tt instanceof goog.html.SafeUrl)){var nt=/^data:audio\//i.test(tt);tt=goog.html.SafeUrl.sanitizeAssertUnchanged(tt,nt)}et.src=goog.html.SafeUrl.unwrapTrustedURL(tt)},goog.dom.safe.setVideoSrc=function(et,tt){if(goog.dom.asserts.assertIsHTMLVideoElement(et),!(tt instanceof goog.html.SafeUrl)){var nt=/^data:video\//i.test(tt);tt=goog.html.SafeUrl.sanitizeAssertUnchanged(tt,nt)}et.src=goog.html.SafeUrl.unwrapTrustedURL(tt)},goog.dom.safe.setEmbedSrc=function(et,tt){goog.dom.asserts.assertIsHTMLEmbedElement(et),et.src=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(tt)},goog.dom.safe.setFrameSrc=function(et,tt){goog.dom.asserts.assertIsHTMLFrameElement(et),et.src=goog.html.TrustedResourceUrl.unwrapTrustedURL(tt)},goog.dom.safe.setIframeSrc=function(et,tt){goog.dom.asserts.assertIsHTMLIFrameElement(et),et.src=goog.html.TrustedResourceUrl.unwrapTrustedURL(tt)},goog.dom.safe.setIframeSrcdoc=function(et,tt){goog.dom.asserts.assertIsHTMLIFrameElement(et),et.srcdoc=goog.html.SafeHtml.unwrapTrustedHTML(tt)},goog.dom.safe.setLinkHrefAndRel=function(et,tt,nt){goog.dom.asserts.assertIsHTMLLinkElement(et),et.rel=nt,goog.string.internal.caseInsensitiveContains(nt,"stylesheet")?(goog.asserts.assert(tt instanceof goog.html.TrustedResourceUrl,'URL must be TrustedResourceUrl because "rel" contains "stylesheet"'),et.href=goog.html.TrustedResourceUrl.unwrapTrustedURL(tt)):et.href=tt instanceof goog.html.TrustedResourceUrl?goog.html.TrustedResourceUrl.unwrapTrustedURL(tt):tt instanceof goog.html.SafeUrl?goog.html.SafeUrl.unwrapTrustedURL(tt):goog.html.SafeUrl.unwrapTrustedURL(goog.html.SafeUrl.sanitizeAssertUnchanged(tt))},goog.dom.safe.setObjectData=function(et,tt){goog.dom.asserts.assertIsHTMLObjectElement(et),et.data=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(tt)},goog.dom.safe.setScriptSrc=function(et,tt){goog.dom.asserts.assertIsHTMLScriptElement(et),et.src=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(tt),(tt=goog.getScriptNonce())&&et.setAttribute("nonce",tt)},goog.dom.safe.setScriptContent=function(et,tt){goog.dom.asserts.assertIsHTMLScriptElement(et),et.text=goog.html.SafeScript.unwrapTrustedScript(tt),(tt=goog.getScriptNonce())&&et.setAttribute("nonce",tt)},goog.dom.safe.setLocationHref=function(et,tt){goog.dom.asserts.assertIsLocation(et),tt=tt instanceof goog.html.SafeUrl?tt:goog.html.SafeUrl.sanitizeAssertUnchanged(tt),et.href=goog.html.SafeUrl.unwrapTrustedURL(tt)},goog.dom.safe.assignLocation=function(et,tt){goog.dom.asserts.assertIsLocation(et),tt=tt instanceof goog.html.SafeUrl?tt:goog.html.SafeUrl.sanitizeAssertUnchanged(tt),et.assign(goog.html.SafeUrl.unwrapTrustedURL(tt))},goog.dom.safe.replaceLocation=function(et,tt){goog.dom.asserts.assertIsLocation(et),tt=tt instanceof goog.html.SafeUrl?tt:goog.html.SafeUrl.sanitizeAssertUnchanged(tt),et.replace(goog.html.SafeUrl.unwrapTrustedURL(tt))},goog.dom.safe.openInWindow=function(et,tt,nt,it,ot){return et=et instanceof goog.html.SafeUrl?et:goog.html.SafeUrl.sanitizeAssertUnchanged(et),(tt||goog.global).open(goog.html.SafeUrl.unwrapTrustedURL(et),nt?goog.string.Const.unwrap(nt):"",it,ot)},goog.dom.safe.parseFromStringHtml=function(et,tt){return goog.dom.safe.parseFromString(et,tt,"text/html")},goog.dom.safe.parseFromString=function(et,tt,nt){return et.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(tt),nt)},goog.dom.safe.createImageFromBlob=function(et){if(!/^image\/.*/g.test(et.type))throw Error("goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.");var tt=goog.global.URL.createObjectURL(et);return(et=new goog.global.Image).onload=function(){goog.global.URL.revokeObjectURL(tt)},goog.dom.safe.setImageSrc(et,goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from("Image blob URL."),tt)),et},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(et,tt){for(var nt=et.split("%s"),it="",ot=Array.prototype.slice.call(arguments,1);ot.length&&1=et||"€"<=et&&"�">=et},goog.string.stripNewlines=function(et){return et.replace(/(\r\n|\r|\n)+/g," ")},goog.string.canonicalizeNewlines=function(et){return et.replace(/(\r\n|\r|\n)/g,` +`)},goog.string.normalizeWhitespace=function(et){return et.replace(/\xa0|\s/g," ")},goog.string.normalizeSpaces=function(et){return et.replace(/\xa0|[ \t]+/g," ")},goog.string.collapseBreakingSpaces=function(et){return et.replace(/[\t\r\n ]+/g," ").replace(/^[\t\r\n ]+|[\t\r\n ]+$/g,"")},goog.string.trim=goog.string.internal.trim,goog.string.trimLeft=function(et){return et.replace(/^[\s\xa0]+/,"")},goog.string.trimRight=function(et){return et.replace(/[\s\xa0]+$/,"")},goog.string.caseInsensitiveCompare=goog.string.internal.caseInsensitiveCompare,goog.string.numberAwareCompare_=function(et,tt,nt){if(et==tt)return 0;if(!et)return-1;if(!tt)return 1;for(var it=et.toLowerCase().match(nt),ot=tt.toLowerCase().match(nt),Ut=Math.min(it.length,ot.length),Ft=0;Ft",""":'"'},it=tt?tt.createElement("div"):goog.global.document.createElement("div");return et.replace(goog.string.HTML_ENTITY_PATTERN_,function(ot,Ut){var Ft=nt[ot];return Ft||(Ut.charAt(0)=="#"&&(Ut=+("0"+Ut.substr(1)),isNaN(Ut)||(Ft=String.fromCharCode(Ut))),Ft||(goog.dom.safe.setInnerHtml(it,goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from("Single HTML entity."),ot+" ")),Ft=it.firstChild.nodeValue.slice(0,-1)),nt[ot]=Ft)})},goog.string.unescapePureXmlEntities_=function(et){return et.replace(/&([^;]+);/g,function(tt,nt){switch(nt){case"amp":return"&";case"lt":return"<";case"gt":return">";case"quot":return'"';default:return nt.charAt(0)!="#"||(nt=+("0"+nt.substr(1)),isNaN(nt))?tt:String.fromCharCode(nt)}})},goog.string.HTML_ENTITY_PATTERN_=/&([^;\s<&]+);?/g,goog.string.whitespaceEscape=function(et,tt){return goog.string.newLineToBr(et.replace(/ /g,"  "),tt)},goog.string.preserveSpaces=function(et){return et.replace(/(^|[\n ]) /g,"$1"+goog.string.Unicode.NBSP)},goog.string.stripQuotes=function(et,tt){for(var nt=tt.length,it=0;ittt&&(et=et.substring(0,tt-3)+"..."),nt&&(et=goog.string.htmlEscape(et)),et},goog.string.truncateMiddle=function(et,tt,nt,it){if(nt&&(et=goog.string.unescapeEntities(et)),it&&et.length>tt){it>tt&&(it=tt);var ot=et.length-it;et=et.substring(0,tt-it)+"..."+et.substring(ot)}else et.length>tt&&(it=Math.floor(tt/2),ot=et.length-it,et=et.substring(0,it+tt%2)+"..."+et.substring(ot));return nt&&(et=goog.string.htmlEscape(et)),et},goog.string.specialEscapeChars_={"\0":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\x0B",'"':'\\"',"\\":"\\\\","<":"\\u003C"},goog.string.jsEscapeCache_={"'":"\\'"},goog.string.quote=function(et){et=String(et);for(var tt=['"'],nt=0;ntot?it:goog.string.escapeChar(it))}return tt.push('"'),tt.join("")},goog.string.escapeString=function(et){for(var tt=[],nt=0;nttt)var nt=et;else 256>tt?(nt="\\x",(16>tt||256tt&&(nt+="0")),nt+=tt.toString(16).toUpperCase();return goog.string.jsEscapeCache_[et]=nt},goog.string.contains=goog.string.internal.contains,goog.string.caseInsensitiveContains=goog.string.internal.caseInsensitiveContains,goog.string.countOf=function(et,tt){return et&&tt?et.split(tt).length-1:0},goog.string.removeAt=function(et,tt,nt){var it=et;return 0<=tt&&tt>>0;return tt},goog.string.uniqueStringCounter_=2147483648*Math.random()|0,goog.string.createUniqueString=function(){return"goog_"+goog.string.uniqueStringCounter_++},goog.string.toNumber=function(et){var tt=Number(et);return tt==0&&goog.string.isEmptyOrWhitespace(et)?NaN:tt},goog.string.isLowerCamelCase=function(et){return/^[a-z]+([A-Z][a-z]*)*$/.test(et)},goog.string.isUpperCamelCase=function(et){return/^([A-Z][a-z]*)+$/.test(et)},goog.string.toCamelCase=function(et){return String(et).replace(/\-([a-z])/g,function(tt,nt){return nt.toUpperCase()})},goog.string.toSelectorCase=function(et){return String(et).replace(/([A-Z])/g,"-$1").toLowerCase()},goog.string.toTitleCase=function(et,tt){return tt=goog.isString(tt)?goog.string.regExpEscape(tt):"\\s",et.replace(new RegExp("(^"+(tt?"|["+tt+"]+":"")+")([a-z])","g"),function(nt,it,ot){return it+ot.toUpperCase()})},goog.string.capitalize=function(et){return String(et.charAt(0)).toUpperCase()+String(et.substr(1)).toLowerCase()},goog.string.parseInt=function(et){return isFinite(et)&&(et=String(et)),goog.isString(et)?/^\s*-?0x/i.test(et)?parseInt(et,16):parseInt(et,10):NaN},goog.string.splitLimit=function(et,tt,nt){et=et.split(tt);for(var it=[];0nt&&(nt=ot)}return nt==-1?et:et.slice(nt+1)},goog.string.editDistance=function(et,tt){var nt=[],it=[];if(et==tt)return 0;if(!et.length||!tt.length)return Math.max(et.length,tt.length);for(var ot=0;otparseFloat(et)?String(tt):et},goog.userAgent.getVersionRegexResult_=function(){var et=goog.userAgent.getUserAgentString();return goog.userAgent.GECKO?/rv:([^\);]+)(\)|;)/.exec(et):goog.userAgent.EDGE?/Edge\/([\d\.]+)/.exec(et):goog.userAgent.IE?/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(et):goog.userAgent.WEBKIT?/WebKit\/(\S+)/.exec(et):goog.userAgent.OPERA?/(?:Version)[ \/]?(\S+)/.exec(et):void 0},goog.userAgent.getDocumentMode_=function(){var et=goog.global.document;return et?et.documentMode:void 0},goog.userAgent.VERSION=goog.userAgent.determineVersion_(),goog.userAgent.compare=function(et,tt){return goog.string.compareVersions(et,tt)},goog.userAgent.isVersionOrHigherCache_={},goog.userAgent.isVersionOrHigher=function(et){return goog.userAgent.ASSUME_ANY_VERSION||goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_,et,function(){return 0<=goog.string.compareVersions(goog.userAgent.VERSION,et)})},goog.userAgent.isVersion=goog.userAgent.isVersionOrHigher,goog.userAgent.isDocumentModeOrHigher=function(et){return Number(goog.userAgent.DOCUMENT_MODE)>=et},goog.userAgent.isDocumentMode=goog.userAgent.isDocumentModeOrHigher,goog.userAgent.DOCUMENT_MODE=function(){if(goog.global.document&&goog.userAgent.IE)return goog.userAgent.getDocumentMode_()}(),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(et){return goog.string.contains(goog.crypt.base64.paddingChars_,et)},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(et,tt){goog.asserts.assert(goog.isArrayLike(et),"encodeByteArray takes an array as a parameter"),tt===void 0&&(tt=goog.crypt.base64.Alphabet.DEFAULT),goog.crypt.base64.init_(),tt=goog.crypt.base64.byteToCharMaps_[tt];for(var nt=[],it=0;it>2;ot=(3&ot)<<4|Ft>>4,Ft=(15&Ft)<<2|Bt>>6,Bt&=63,Qt||(Bt=64,Ut||(Ft=64)),nt.push(tt[Vt],tt[ot],tt[Ft]||"",tt[Bt]||"")}return nt.join("")},goog.crypt.base64.encodeString=function(et,tt){return goog.crypt.base64.HAS_NATIVE_ENCODE_&&!tt?goog.global.btoa(et):goog.crypt.base64.encodeByteArray(goog.crypt.stringToByteArray(et),tt)},goog.crypt.base64.decodeString=function(et,tt){if(goog.crypt.base64.HAS_NATIVE_DECODE_&&!tt)return goog.global.atob(et);var nt="";return goog.crypt.base64.decodeStringInternal_(et,function(it){nt+=String.fromCharCode(it)}),nt},goog.crypt.base64.decodeStringToByteArray=function(et,tt){var nt=[];return goog.crypt.base64.decodeStringInternal_(et,function(it){nt.push(it)}),nt},goog.crypt.base64.decodeStringToUint8Array=function(et){goog.asserts.assert(!goog.userAgent.IE||goog.userAgent.isVersionOrHigher("10"),"Browser does not support typed arrays");var tt=et.length,nt=3*tt/4;nt%3?nt=Math.floor(nt):goog.crypt.base64.isPadding_(et[tt-1])&&(nt=goog.crypt.base64.isPadding_(et[tt-2])?nt-2:nt-1);var it=new Uint8Array(nt),ot=0;return goog.crypt.base64.decodeStringInternal_(et,function(Ut){it[ot++]=Ut}),it.subarray(0,ot)},goog.crypt.base64.decodeStringInternal_=function(et,tt){function nt(Bt){for(;it>4),Ft!=64&&(tt(Ut<<4&240|Ft>>2),Qt!=64&&tt(Ft<<6&192|Qt))}},goog.crypt.base64.init_=function(){if(!goog.crypt.base64.charToByteMap_){goog.crypt.base64.charToByteMap_={};for(var et=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_.split(""),tt=["+/=","+/","-_=","-_.","-_"],nt=0;5>nt;nt++){var it=et.concat(tt[nt].split(""));goog.crypt.base64.byteToCharMaps_[nt]=it;for(var ot=0;ot>>0;et=Math.floor((et-tt)/jspb.BinaryConstants.TWO_TO_32)>>>0,jspb.utils.split64Low=tt,jspb.utils.split64High=et},jspb.utils.splitInt64=function(et){var tt=0>et,nt=(et=Math.abs(et))>>>0;et=Math.floor((et-nt)/jspb.BinaryConstants.TWO_TO_32),et>>>=0,tt&&(et=~et>>>0,4294967295<(nt=1+(~nt>>>0))&&(nt=0,4294967295<++et&&(et=0))),jspb.utils.split64Low=nt,jspb.utils.split64High=et},jspb.utils.splitZigzag64=function(et){var tt=0>et;et=2*Math.abs(et),jspb.utils.splitUint64(et),et=jspb.utils.split64Low;var nt=jspb.utils.split64High;tt&&(et==0?nt==0?nt=et=4294967295:(nt--,et=4294967295):et--),jspb.utils.split64Low=et,jspb.utils.split64High=nt},jspb.utils.splitFloat32=function(et){var tt=0>et?1:0;if((et=tt?-et:et)===0)0<1/et?(jspb.utils.split64High=0,jspb.utils.split64Low=0):(jspb.utils.split64High=0,jspb.utils.split64Low=2147483648);else if(isNaN(et))jspb.utils.split64High=0,jspb.utils.split64Low=2147483647;else if(et>jspb.BinaryConstants.FLOAT32_MAX)jspb.utils.split64High=0,jspb.utils.split64Low=(tt<<31|2139095040)>>>0;else if(et>>0;else{var nt=Math.floor(Math.log(et)/Math.LN2);et*=Math.pow(2,-nt),et=8388607&Math.round(et*jspb.BinaryConstants.TWO_TO_23),jspb.utils.split64High=0,jspb.utils.split64Low=(tt<<31|nt+127<<23|et)>>>0}},jspb.utils.splitFloat64=function(et){var tt=0>et?1:0;if((et=tt?-et:et)===0)jspb.utils.split64High=0<1/et?0:2147483648,jspb.utils.split64Low=0;else if(isNaN(et))jspb.utils.split64High=2147483647,jspb.utils.split64Low=4294967295;else if(et>jspb.BinaryConstants.FLOAT64_MAX)jspb.utils.split64High=(tt<<31|2146435072)>>>0,jspb.utils.split64Low=0;else if(et>>0,jspb.utils.split64Low=nt>>>0}else{var it=0;if(2<=(nt=et))for(;2<=nt&&1023>it;)it++,nt/=2;else for(;1>nt&&-1022>>0,jspb.utils.split64High=(tt<<31|it+1023<<20|et)>>>0,jspb.utils.split64Low=nt}},jspb.utils.splitHash64=function(et){var tt=et.charCodeAt(0),nt=et.charCodeAt(1),it=et.charCodeAt(2),ot=et.charCodeAt(3),Ut=et.charCodeAt(4),Ft=et.charCodeAt(5),Qt=et.charCodeAt(6);et=et.charCodeAt(7),jspb.utils.split64Low=tt+(nt<<8)+(it<<16)+(ot<<24)>>>0,jspb.utils.split64High=Ut+(Ft<<8)+(Qt<<16)+(et<<24)>>>0},jspb.utils.joinUint64=function(et,tt){return tt*jspb.BinaryConstants.TWO_TO_32+(et>>>0)},jspb.utils.joinInt64=function(et,tt){var nt=2147483648&tt;return nt&&(tt=~tt>>>0,(et=1+~et>>>0)==0&&(tt=tt+1>>>0)),et=jspb.utils.joinUint64(et,tt),nt?-et:et},jspb.utils.toZigzag64=function(et,tt,nt){var it=tt>>31;return nt(et<<1^it,(tt<<1|et>>>31)^it)},jspb.utils.joinZigzag64=function(et,tt){return jspb.utils.fromZigzag64(et,tt,jspb.utils.joinInt64)},jspb.utils.fromZigzag64=function(et,tt,nt){var it=-(1&et);return nt((et>>>1|tt<<31)^it,tt>>>1^it)},jspb.utils.joinFloat32=function(et,tt){tt=2*(et>>31)+1;var nt=et>>>23&255;return et&=8388607,nt==255?et?NaN:1/0*tt:nt==0?tt*Math.pow(2,-149)*et:tt*Math.pow(2,nt-150)*(et+Math.pow(2,23))},jspb.utils.joinFloat64=function(et,tt){var nt=2*(tt>>31)+1,it=tt>>>20&2047;return et=jspb.BinaryConstants.TWO_TO_32*(1048575&tt)+et,it==2047?et?NaN:1/0*nt:it==0?nt*Math.pow(2,-1074)*et:nt*Math.pow(2,it-1075)*(et+jspb.BinaryConstants.TWO_TO_52)},jspb.utils.joinHash64=function(et,tt){return String.fromCharCode(et>>>0&255,et>>>8&255,et>>>16&255,et>>>24&255,tt>>>0&255,tt>>>8&255,tt>>>16&255,tt>>>24&255)},jspb.utils.DIGITS="0123456789abcdef".split(""),jspb.utils.ZERO_CHAR_CODE_=48,jspb.utils.A_CHAR_CODE_=97,jspb.utils.joinUnsignedDecimalString=function(et,tt){function nt(ot,Ut){return ot=ot?String(ot):"",Ut?"0000000".slice(ot.length)+ot:ot}if(2097151>=tt)return""+(jspb.BinaryConstants.TWO_TO_32*tt+et);var it=(et>>>24|tt<<8)>>>0&16777215;return et=(16777215&et)+6777216*it+6710656*(tt=tt>>16&65535),it+=8147497*tt,tt*=2,1e7<=et&&(it+=Math.floor(et/1e7),et%=1e7),1e7<=it&&(tt+=Math.floor(it/1e7),it%=1e7),nt(tt,0)+nt(it,tt)+nt(et,1)},jspb.utils.joinSignedDecimalString=function(et,tt){var nt=2147483648&tt;return nt&&(tt=~tt+((et=1+~et>>>0)==0?1:0)>>>0),et=jspb.utils.joinUnsignedDecimalString(et,tt),nt?"-"+et:et},jspb.utils.hash64ToDecimalString=function(et,tt){jspb.utils.splitHash64(et),et=jspb.utils.split64Low;var nt=jspb.utils.split64High;return tt?jspb.utils.joinSignedDecimalString(et,nt):jspb.utils.joinUnsignedDecimalString(et,nt)},jspb.utils.hash64ArrayToDecimalStrings=function(et,tt){for(var nt=Array(et.length),it=0;itQt&&(Ut!==1||0>>=8}goog.asserts.assert(0Ut;Ut++)it[Ut]=255&~it[Ut]}(),tt(1,1)),goog.crypt.byteArrayToString(it)},jspb.utils.splitDecimalString=function(et){jspb.utils.splitHash64(jspb.utils.decimalStringToHash64(et))},jspb.utils.toHexDigit_=function(et){return String.fromCharCode(10>et?jspb.utils.ZERO_CHAR_CODE_+et:jspb.utils.A_CHAR_CODE_-10+et)},jspb.utils.fromHexCharCode_=function(et){return et>=jspb.utils.A_CHAR_CODE_?et-jspb.utils.A_CHAR_CODE_+10:et-jspb.utils.ZERO_CHAR_CODE_},jspb.utils.hash64ToHexString=function(et){var tt=Array(18);tt[0]="0",tt[1]="x";for(var nt=0;8>nt;nt++){var it=et.charCodeAt(7-nt);tt[2*nt+2]=jspb.utils.toHexDigit_(it>>4),tt[2*nt+3]=jspb.utils.toHexDigit_(15&it)}return tt.join("")},jspb.utils.hexStringToHash64=function(et){et=et.toLowerCase(),goog.asserts.assert(et.length==18),goog.asserts.assert(et[0]=="0"),goog.asserts.assert(et[1]=="x");for(var tt="",nt=0;8>nt;nt++){var it=jspb.utils.fromHexCharCode_(et.charCodeAt(2*nt+2)),ot=jspb.utils.fromHexCharCode_(et.charCodeAt(2*nt+3));tt=String.fromCharCode(16*it+ot)+tt}return tt},jspb.utils.hash64ToNumber=function(et,tt){jspb.utils.splitHash64(et),et=jspb.utils.split64Low;var nt=jspb.utils.split64High;return tt?jspb.utils.joinInt64(et,nt):jspb.utils.joinUint64(et,nt)},jspb.utils.numberToHash64=function(et){return jspb.utils.splitInt64(et),jspb.utils.joinHash64(jspb.utils.split64Low,jspb.utils.split64High)},jspb.utils.countVarints=function(et,tt,nt){for(var it=0,ot=tt;ot>7;return nt-tt-it},jspb.utils.countVarintFields=function(et,tt,nt,it){var ot=0;if(128>(it=8*it+jspb.BinaryConstants.WireType.VARINT))for(;tt>=7}if(et[tt++]!=Ut)break;for(ot++;128&(Ut=et[tt++]););}return ot},jspb.utils.countFixedFields_=function(et,tt,nt,it,ot){var Ut=0;if(128>it)for(;tt>=7}if(et[tt++]!=Ft)break;Ut++,tt+=ot}return Ut},jspb.utils.countFixed32Fields=function(et,tt,nt,it){return jspb.utils.countFixedFields_(et,tt,nt,8*it+jspb.BinaryConstants.WireType.FIXED32,4)},jspb.utils.countFixed64Fields=function(et,tt,nt,it){return jspb.utils.countFixedFields_(et,tt,nt,8*it+jspb.BinaryConstants.WireType.FIXED64,8)},jspb.utils.countDelimitedFields=function(et,tt,nt,it){var ot=0;for(it=8*it+jspb.BinaryConstants.WireType.DELIMITED;tt>=7}if(et[tt++]!=Ut)break;ot++;for(var Ft=0,Qt=1;Ft+=(127&(Ut=et[tt++]))*Qt,Qt*=128,(128&Ut)!=0;);tt+=Ft}return ot},jspb.utils.debugBytesToTextFormat=function(et){var tt='"';if(et){et=jspb.utils.byteSourceToUint8Array(et);for(var nt=0;ntet[nt]&&(tt+="0"),tt+=et[nt].toString(16)}return tt+'"'},jspb.utils.debugScalarToTextFormat=function(et){return typeof et=="string"?goog.string.quote(et):et.toString()},jspb.utils.stringToByteArray=function(et){for(var tt=new Uint8Array(et.length),nt=0;ntjspb.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(et,tt,nt){this.bytes_=jspb.utils.byteSourceToUint8Array(et),this.start_=tt!==void 0?tt:0,this.end_=nt!==void 0?this.start_+nt:this.bytes_.length,this.cursor_=this.start_},jspb.BinaryDecoder.prototype.getEnd=function(){return this.end_},jspb.BinaryDecoder.prototype.setEnd=function(et){this.end_=et},jspb.BinaryDecoder.prototype.reset=function(){this.cursor_=this.start_},jspb.BinaryDecoder.prototype.getCursor=function(){return this.cursor_},jspb.BinaryDecoder.prototype.setCursor=function(et){this.cursor_=et},jspb.BinaryDecoder.prototype.advance=function(et){this.cursor_+=et,goog.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(et){for(var tt=128,nt=0,it=0,ot=0;4>ot&&128<=tt;ot++)nt|=(127&(tt=this.bytes_[this.cursor_++]))<<7*ot;if(128<=tt&&(nt|=(127&(tt=this.bytes_[this.cursor_++]))<<28,it|=(127&tt)>>4),128<=tt)for(ot=0;5>ot&&128<=tt;ot++)it|=(127&(tt=this.bytes_[this.cursor_++]))<<7*ot+3;if(128>tt)return et(nt>>>0,it>>>0);goog.asserts.fail("Failed to read varint, encoding is invalid."),this.error_=!0},jspb.BinaryDecoder.prototype.readSplitZigzagVarint64=function(et){return this.readSplitVarint64(function(tt,nt){return jspb.utils.fromZigzag64(tt,nt,et)})},jspb.BinaryDecoder.prototype.readSplitFixed64=function(et){var tt=this.bytes_,nt=this.cursor_;this.cursor_+=8;for(var it=0,ot=0,Ut=nt+7;Ut>=nt;Ut--)it=it<<8|tt[Ut],ot=ot<<8|tt[Ut+4];return et(it,ot)},jspb.BinaryDecoder.prototype.skipVarint=function(){for(;128&this.bytes_[this.cursor_];)this.cursor_++;this.cursor_++},jspb.BinaryDecoder.prototype.unskipVarint=function(et){for(;128>>=7;this.cursor_--},jspb.BinaryDecoder.prototype.readUnsignedVarint32=function(){var et=this.bytes_,tt=et[this.cursor_+0],nt=127&tt;return 128>tt?(this.cursor_+=1,goog.asserts.assert(this.cursor_<=this.end_),nt):(nt|=(127&(tt=et[this.cursor_+1]))<<7,128>tt?(this.cursor_+=2,goog.asserts.assert(this.cursor_<=this.end_),nt):(nt|=(127&(tt=et[this.cursor_+2]))<<14,128>tt?(this.cursor_+=3,goog.asserts.assert(this.cursor_<=this.end_),nt):(nt|=(127&(tt=et[this.cursor_+3]))<<21,128>tt?(this.cursor_+=4,goog.asserts.assert(this.cursor_<=this.end_),nt):(nt|=(15&(tt=et[this.cursor_+4]))<<28,128>tt?(this.cursor_+=5,goog.asserts.assert(this.cursor_<=this.end_),nt>>>0):(this.cursor_+=5,128<=et[this.cursor_++]&&128<=et[this.cursor_++]&&128<=et[this.cursor_++]&&128<=et[this.cursor_++]&&128<=et[this.cursor_++]&&goog.asserts.assert(!1),goog.asserts.assert(this.cursor_<=this.end_),nt)))))},jspb.BinaryDecoder.prototype.readSignedVarint32=jspb.BinaryDecoder.prototype.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 et=this.readUnsignedVarint32();return et>>>1^-(1&et)},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 et=this.bytes_[this.cursor_+0];return this.cursor_+=1,goog.asserts.assert(this.cursor_<=this.end_),et},jspb.BinaryDecoder.prototype.readUint16=function(){var et=this.bytes_[this.cursor_+0],tt=this.bytes_[this.cursor_+1];return this.cursor_+=2,goog.asserts.assert(this.cursor_<=this.end_),et<<0|tt<<8},jspb.BinaryDecoder.prototype.readUint32=function(){var et=this.bytes_[this.cursor_+0],tt=this.bytes_[this.cursor_+1],nt=this.bytes_[this.cursor_+2],it=this.bytes_[this.cursor_+3];return this.cursor_+=4,goog.asserts.assert(this.cursor_<=this.end_),(et<<0|tt<<8|nt<<16|it<<24)>>>0},jspb.BinaryDecoder.prototype.readUint64=function(){var et=this.readUint32(),tt=this.readUint32();return jspb.utils.joinUint64(et,tt)},jspb.BinaryDecoder.prototype.readUint64String=function(){var et=this.readUint32(),tt=this.readUint32();return jspb.utils.joinUnsignedDecimalString(et,tt)},jspb.BinaryDecoder.prototype.readInt8=function(){var et=this.bytes_[this.cursor_+0];return this.cursor_+=1,goog.asserts.assert(this.cursor_<=this.end_),et<<24>>24},jspb.BinaryDecoder.prototype.readInt16=function(){var et=this.bytes_[this.cursor_+0],tt=this.bytes_[this.cursor_+1];return this.cursor_+=2,goog.asserts.assert(this.cursor_<=this.end_),(et<<0|tt<<8)<<16>>16},jspb.BinaryDecoder.prototype.readInt32=function(){var et=this.bytes_[this.cursor_+0],tt=this.bytes_[this.cursor_+1],nt=this.bytes_[this.cursor_+2],it=this.bytes_[this.cursor_+3];return this.cursor_+=4,goog.asserts.assert(this.cursor_<=this.end_),et<<0|tt<<8|nt<<16|it<<24},jspb.BinaryDecoder.prototype.readInt64=function(){var et=this.readUint32(),tt=this.readUint32();return jspb.utils.joinInt64(et,tt)},jspb.BinaryDecoder.prototype.readInt64String=function(){var et=this.readUint32(),tt=this.readUint32();return jspb.utils.joinSignedDecimalString(et,tt)},jspb.BinaryDecoder.prototype.readFloat=function(){var et=this.readUint32();return jspb.utils.joinFloat32(et,0)},jspb.BinaryDecoder.prototype.readDouble=function(){var et=this.readUint32(),tt=this.readUint32();return jspb.utils.joinFloat64(et,tt)},jspb.BinaryDecoder.prototype.readBool=function(){return!!this.bytes_[this.cursor_++]},jspb.BinaryDecoder.prototype.readEnum=function(){return this.readSignedVarint32()},jspb.BinaryDecoder.prototype.readString=function(et){var tt=this.bytes_,nt=this.cursor_;et=nt+et;for(var it=[],ot="";ntUt)it.push(Ut);else{if(192>Ut)continue;if(224>Ut){var Ft=tt[nt++];it.push((31&Ut)<<6|63&Ft)}else if(240>Ut){Ft=tt[nt++];var Qt=tt[nt++];it.push((15&Ut)<<12|(63&Ft)<<6|63&Qt)}else 248>Ut&&(Ut=(7&Ut)<<18|(63&(Ft=tt[nt++]))<<12|(63&(Qt=tt[nt++]))<<6|63&tt[nt++],Ut-=65536,it.push(55296+(Ut>>10&1023),56320+(1023&Ut)))}8192<=it.length&&(ot+=String.fromCharCode.apply(null,it),it.length=0)}return ot+=goog.crypt.byteArrayToString(it),this.cursor_=nt,ot},jspb.BinaryDecoder.prototype.readStringWithLength=function(){var et=this.readUnsignedVarint32();return this.readString(et)},jspb.BinaryDecoder.prototype.readBytes=function(et){if(0>et||this.cursor_+et>this.bytes_.length)return this.error_=!0,goog.asserts.fail("Invalid byte length!"),new Uint8Array(0);var tt=this.bytes_.subarray(this.cursor_,this.cursor_+et);return this.cursor_+=et,goog.asserts.assert(this.cursor_<=this.end_),tt},jspb.BinaryDecoder.prototype.readVarintHash64=function(){return this.readSplitVarint64(jspb.utils.joinHash64)},jspb.BinaryDecoder.prototype.readFixedHash64=function(){var et=this.bytes_,tt=this.cursor_,nt=et[tt+0],it=et[tt+1],ot=et[tt+2],Ut=et[tt+3],Ft=et[tt+4],Qt=et[tt+5],Bt=et[tt+6];return et=et[tt+7],this.cursor_+=8,String.fromCharCode(nt,it,ot,Ut,Ft,Qt,Bt,et)},jspb.BinaryReader=function(et,tt,nt){this.decoder_=jspb.BinaryDecoder.alloc(et,tt,nt),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(et,tt,nt){if(jspb.BinaryReader.instanceCache_.length){var it=jspb.BinaryReader.instanceCache_.pop();return et&&it.decoder_.setBlock(et,tt,nt),it}return new jspb.BinaryReader(et,tt,nt)},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_},jspb.BinaryReader.prototype.getWireType=function(){return this.nextWireType_},jspb.BinaryReader.prototype.isDelimited=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED},jspb.BinaryReader.prototype.isEndGroup=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP},jspb.BinaryReader.prototype.getError=function(){return this.error_||this.decoder_.getError()},jspb.BinaryReader.prototype.setBlock=function(et,tt,nt){this.decoder_.setBlock(et,tt,nt),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(et){this.decoder_.advance(et)},jspb.BinaryReader.prototype.nextField=function(){if(this.decoder_.atEnd())return!1;if(this.getError())return goog.asserts.fail("Decoder hit an error"),!1;this.fieldCursor_=this.decoder_.getCursor();var et=this.decoder_.readUnsignedVarint32(),tt=et>>>3;return(et&=7)!=jspb.BinaryConstants.WireType.VARINT&&et!=jspb.BinaryConstants.WireType.FIXED32&&et!=jspb.BinaryConstants.WireType.FIXED64&&et!=jspb.BinaryConstants.WireType.DELIMITED&&et!=jspb.BinaryConstants.WireType.START_GROUP&&et!=jspb.BinaryConstants.WireType.END_GROUP?(goog.asserts.fail("Invalid wire type: %s (at position %s)",et,this.fieldCursor_),this.error_=!0,!1):(this.nextField_=tt,this.nextWireType_=et,!0)},jspb.BinaryReader.prototype.unskipHeader=function(){this.decoder_.unskipVarint(this.nextField_<<3|this.nextWireType_)},jspb.BinaryReader.prototype.skipMatchingFields=function(){var et=this.nextField_;for(this.unskipHeader();this.nextField()&&this.getFieldNumber()==et;)this.skipField();this.decoder_.atEnd()||this.unskipHeader()},jspb.BinaryReader.prototype.skipVarintField=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.VARINT?(goog.asserts.fail("Invalid wire type for skipVarintField"),this.skipField()):this.decoder_.skipVarint()},jspb.BinaryReader.prototype.skipDelimitedField=function(){if(this.nextWireType_!=jspb.BinaryConstants.WireType.DELIMITED)goog.asserts.fail("Invalid wire type for skipDelimitedField"),this.skipField();else{var et=this.decoder_.readUnsignedVarint32();this.decoder_.advance(et)}},jspb.BinaryReader.prototype.skipFixed32Field=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.FIXED32?(goog.asserts.fail("Invalid wire type for skipFixed32Field"),this.skipField()):this.decoder_.advance(4)},jspb.BinaryReader.prototype.skipFixed64Field=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.FIXED64?(goog.asserts.fail("Invalid wire type for skipFixed64Field"),this.skipField()):this.decoder_.advance(8)},jspb.BinaryReader.prototype.skipGroup=function(){for(var et=this.nextField_;;){if(!this.nextField()){goog.asserts.fail("Unmatched start-group tag: stream EOF"),this.error_=!0;break}if(this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP){this.nextField_!=et&&(goog.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:goog.asserts.fail("Invalid wire encoding for field.")}},jspb.BinaryReader.prototype.registerReadCallback=function(et,tt){this.readCallbacks_===null&&(this.readCallbacks_={}),goog.asserts.assert(!this.readCallbacks_[et]),this.readCallbacks_[et]=tt},jspb.BinaryReader.prototype.runReadCallback=function(et){return goog.asserts.assert(this.readCallbacks_!==null),et=this.readCallbacks_[et],goog.asserts.assert(et),et(this)},jspb.BinaryReader.prototype.readAny=function(et){this.nextWireType_=jspb.BinaryConstants.FieldTypeToWireType(et);var tt=jspb.BinaryConstants.FieldType;switch(et){case tt.DOUBLE:return this.readDouble();case tt.FLOAT:return this.readFloat();case tt.INT64:return this.readInt64();case tt.UINT64:return this.readUint64();case tt.INT32:return this.readInt32();case tt.FIXED64:return this.readFixed64();case tt.FIXED32:return this.readFixed32();case tt.BOOL:return this.readBool();case tt.STRING:return this.readString();case tt.GROUP:goog.asserts.fail("Group field type not supported in readAny()");case tt.MESSAGE:goog.asserts.fail("Message field type not supported in readAny()");case tt.BYTES:return this.readBytes();case tt.UINT32:return this.readUint32();case tt.ENUM:return this.readEnum();case tt.SFIXED32:return this.readSfixed32();case tt.SFIXED64:return this.readSfixed64();case tt.SINT32:return this.readSint32();case tt.SINT64:return this.readSint64();case tt.FHASH64:return this.readFixedHash64();case tt.VHASH64:return this.readVarintHash64();default:goog.asserts.fail("Invalid field type in readAny()")}return 0},jspb.BinaryReader.prototype.readMessage=function(et,tt){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var nt=this.decoder_.getEnd(),it=this.decoder_.readUnsignedVarint32();it=this.decoder_.getCursor()+it,this.decoder_.setEnd(it),tt(et,this),this.decoder_.setCursor(it),this.decoder_.setEnd(nt)},jspb.BinaryReader.prototype.readGroup=function(et,tt,nt){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.START_GROUP),goog.asserts.assert(this.nextField_==et),nt(tt,this),this.error_||this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP||(goog.asserts.fail("Group submessage did not end with an END_GROUP tag"),this.error_=!0)},jspb.BinaryReader.prototype.getFieldDecoder=function(){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var et=this.decoder_.readUnsignedVarint32(),tt=this.decoder_.getCursor(),nt=tt+et;return et=jspb.BinaryDecoder.alloc(this.decoder_.getBuffer(),tt,et),this.decoder_.setCursor(nt),et},jspb.BinaryReader.prototype.readInt32=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32()},jspb.BinaryReader.prototype.readInt32String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32String()},jspb.BinaryReader.prototype.readInt64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()},jspb.BinaryReader.prototype.readInt64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64String()},jspb.BinaryReader.prototype.readUint32=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32()},jspb.BinaryReader.prototype.readUint32String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32String()},jspb.BinaryReader.prototype.readUint64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64()},jspb.BinaryReader.prototype.readUint64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64String()},jspb.BinaryReader.prototype.readSint32=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint32()},jspb.BinaryReader.prototype.readSint64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64()},jspb.BinaryReader.prototype.readSint64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64String()},jspb.BinaryReader.prototype.readFixed32=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readUint32()},jspb.BinaryReader.prototype.readFixed64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64()},jspb.BinaryReader.prototype.readFixed64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64String()},jspb.BinaryReader.prototype.readSfixed32=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32()},jspb.BinaryReader.prototype.readSfixed32String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32().toString()},jspb.BinaryReader.prototype.readSfixed64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64()},jspb.BinaryReader.prototype.readSfixed64String=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64String()},jspb.BinaryReader.prototype.readFloat=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readFloat()},jspb.BinaryReader.prototype.readDouble=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readDouble()},jspb.BinaryReader.prototype.readBool=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),!!this.decoder_.readUnsignedVarint32()},jspb.BinaryReader.prototype.readEnum=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()},jspb.BinaryReader.prototype.readString=function(){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var et=this.decoder_.readUnsignedVarint32();return this.decoder_.readString(et)},jspb.BinaryReader.prototype.readBytes=function(){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var et=this.decoder_.readUnsignedVarint32();return this.decoder_.readBytes(et)},jspb.BinaryReader.prototype.readVarintHash64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readVarintHash64()},jspb.BinaryReader.prototype.readSintHash64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarintHash64()},jspb.BinaryReader.prototype.readSplitVarint64=function(et){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSplitVarint64(et)},jspb.BinaryReader.prototype.readSplitZigzagVarint64=function(et){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSplitVarint64(function(tt,nt){return jspb.utils.fromZigzag64(tt,nt,et)})},jspb.BinaryReader.prototype.readFixedHash64=function(){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readFixedHash64()},jspb.BinaryReader.prototype.readSplitFixed64=function(et){return goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readSplitFixed64(et)},jspb.BinaryReader.prototype.readPackedField_=function(et){goog.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var tt=this.decoder_.readUnsignedVarint32();tt=this.decoder_.getCursor()+tt;for(var nt=[];this.decoder_.getCursor()tt.length?nt.length:tt.length;for(et.getJsPbMessageId()&&(it[0]=et.getJsPbMessageId(),ot=1);ot>>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(et){return new jspb.arith.UInt64((this.lo+et.lo&4294967295)>>>0>>>0,((this.hi+et.hi&4294967295)>>>0)+(4294967296<=this.lo+et.lo?1:0)>>>0)},jspb.arith.UInt64.prototype.sub=function(et){return new jspb.arith.UInt64((this.lo-et.lo&4294967295)>>>0>>>0,((this.hi-et.hi&4294967295)>>>0)-(0>this.lo-et.lo?1:0)>>>0)},jspb.arith.UInt64.mul32x32=function(et,tt){var nt=65535&et,it=65535&tt,ot=tt>>>16;for(tt=nt*it+65536*(nt*ot&65535)+65536*((et>>>=16)*it&65535),nt=et*ot+(nt*ot>>>16)+(et*it>>>16);4294967296<=tt;)tt-=4294967296,nt+=1;return new jspb.arith.UInt64(tt>>>0,nt>>>0)},jspb.arith.UInt64.prototype.mul=function(et){var tt=jspb.arith.UInt64.mul32x32(this.lo,et);return(et=jspb.arith.UInt64.mul32x32(this.hi,et)).hi=et.lo,et.lo=0,tt.add(et)},jspb.arith.UInt64.prototype.div=function(et){if(et==0)return[];var tt=new jspb.arith.UInt64(0,0),nt=new jspb.arith.UInt64(this.lo,this.hi);et=new jspb.arith.UInt64(et,0);for(var it=new jspb.arith.UInt64(1,0);!et.msb();)et=et.leftShift(),it=it.leftShift();for(;!it.zero();)0>=et.cmp(nt)&&(tt=tt.add(it),nt=nt.sub(et)),et=et.rightShift(),it=it.rightShift();return[tt,nt]},jspb.arith.UInt64.prototype.toString=function(){for(var et="",tt=this;!tt.zero();){var nt=(tt=tt.div(10))[0];et=tt[1].lo+et,tt=nt}return et==""&&(et="0"),et},jspb.arith.UInt64.fromString=function(et){for(var tt=new jspb.arith.UInt64(0,0),nt=new jspb.arith.UInt64(0,0),it=0;itet[it]||"9">>0>>>0,((this.hi+et.hi&4294967295)>>>0)+(4294967296<=this.lo+et.lo?1:0)>>>0)},jspb.arith.Int64.prototype.sub=function(et){return new jspb.arith.Int64((this.lo-et.lo&4294967295)>>>0>>>0,((this.hi-et.hi&4294967295)>>>0)-(0>this.lo-et.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 et=(2147483648&this.hi)!=0,tt=new jspb.arith.UInt64(this.lo,this.hi);return et&&(tt=new jspb.arith.UInt64(0,0).sub(tt)),(et?"-":"")+tt.toString()},jspb.arith.Int64.fromString=function(et){var tt=0>>7|tt<<25)>>>0,tt>>>=7;this.buffer_.push(et)},jspb.BinaryEncoder.prototype.writeSplitFixed64=function(et,tt){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(tt==Math.floor(tt)),goog.asserts.assert(0<=et&&et>>=7;this.buffer_.push(et)},jspb.BinaryEncoder.prototype.writeSignedVarint32=function(et){if(goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(et>=-jspb.BinaryConstants.TWO_TO_31&&ettt;tt++)this.buffer_.push(127&et|128),et>>=7;this.buffer_.push(1)}},jspb.BinaryEncoder.prototype.writeUnsignedVarint64=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(0<=et&&et=-jspb.BinaryConstants.TWO_TO_63&&et=-jspb.BinaryConstants.TWO_TO_31&&et>31)>>>0)},jspb.BinaryEncoder.prototype.writeZigzagVarint64=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(et>=-jspb.BinaryConstants.TWO_TO_63&&et>>0,it>>>0)})},jspb.BinaryEncoder.prototype.writeUint8=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(0<=et&&256>et),this.buffer_.push(et>>>0&255)},jspb.BinaryEncoder.prototype.writeUint16=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(0<=et&&65536>et),this.buffer_.push(et>>>0&255),this.buffer_.push(et>>>8&255)},jspb.BinaryEncoder.prototype.writeUint32=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(0<=et&&et>>0&255),this.buffer_.push(et>>>8&255),this.buffer_.push(et>>>16&255),this.buffer_.push(et>>>24&255)},jspb.BinaryEncoder.prototype.writeUint64=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(0<=et&&etet),this.buffer_.push(et>>>0&255)},jspb.BinaryEncoder.prototype.writeInt16=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(-32768<=et&&32768>et),this.buffer_.push(et>>>0&255),this.buffer_.push(et>>>8&255)},jspb.BinaryEncoder.prototype.writeInt32=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(et>=-jspb.BinaryConstants.TWO_TO_31&&et>>0&255),this.buffer_.push(et>>>8&255),this.buffer_.push(et>>>16&255),this.buffer_.push(et>>>24&255)},jspb.BinaryEncoder.prototype.writeInt64=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(et>=-jspb.BinaryConstants.TWO_TO_63&&et=-jspb.BinaryConstants.TWO_TO_63&&+et=-jspb.BinaryConstants.FLOAT32_MAX&&et<=jspb.BinaryConstants.FLOAT32_MAX),jspb.utils.splitFloat32(et),this.writeUint32(jspb.utils.split64Low)},jspb.BinaryEncoder.prototype.writeDouble=function(et){goog.asserts.assert(1/0===et||-1/0===et||isNaN(et)||et>=-jspb.BinaryConstants.FLOAT64_MAX&&et<=jspb.BinaryConstants.FLOAT64_MAX),jspb.utils.splitFloat64(et),this.writeUint32(jspb.utils.split64Low),this.writeUint32(jspb.utils.split64High)},jspb.BinaryEncoder.prototype.writeBool=function(et){goog.asserts.assert(typeof et=="boolean"||typeof et=="number"),this.buffer_.push(et?1:0)},jspb.BinaryEncoder.prototype.writeEnum=function(et){goog.asserts.assert(et==Math.floor(et)),goog.asserts.assert(et>=-jspb.BinaryConstants.TWO_TO_31&&etit)this.buffer_.push(it);else if(2048>it)this.buffer_.push(it>>6|192),this.buffer_.push(63&it|128);else if(65536>it)if(55296<=it&&56319>=it&&nt+1=ot&&(it=1024*(it-55296)+ot-56320+65536,this.buffer_.push(it>>18|240),this.buffer_.push(it>>12&63|128),this.buffer_.push(it>>6&63|128),this.buffer_.push(63&it|128),nt++)}else this.buffer_.push(it>>12|224),this.buffer_.push(it>>6&63|128),this.buffer_.push(63&it|128)}return this.buffer_.length-tt},jspb.BinaryWriter=function(){this.blocks_=[],this.totalLength_=0,this.encoder_=new jspb.BinaryEncoder,this.bookmarks_=[]},jspb.BinaryWriter.prototype.appendUint8Array_=function(et){var tt=this.encoder_.end();this.blocks_.push(tt),this.blocks_.push(et),this.totalLength_+=tt.length+et.length},jspb.BinaryWriter.prototype.beginDelimited_=function(et){return this.writeFieldHeader_(et,jspb.BinaryConstants.WireType.DELIMITED),et=this.encoder_.end(),this.blocks_.push(et),this.totalLength_+=et.length,et.push(this.totalLength_),et},jspb.BinaryWriter.prototype.endDelimited_=function(et){var tt=et.pop();for(tt=this.totalLength_+this.encoder_.length()-tt,goog.asserts.assert(0<=tt);127>>=7,this.totalLength_++;et.push(tt),this.totalLength_++},jspb.BinaryWriter.prototype.writeSerializedMessage=function(et,tt,nt){this.appendUint8Array_(et.subarray(tt,nt))},jspb.BinaryWriter.prototype.maybeWriteSerializedMessage=function(et,tt,nt){et!=null&&tt!=null&&nt!=null&&this.writeSerializedMessage(et,tt,nt)},jspb.BinaryWriter.prototype.reset=function(){this.blocks_=[],this.encoder_.end(),this.totalLength_=0,this.bookmarks_=[]},jspb.BinaryWriter.prototype.getResultBuffer=function(){goog.asserts.assert(this.bookmarks_.length==0);for(var et=new Uint8Array(this.totalLength_+this.encoder_.length()),tt=this.blocks_,nt=tt.length,it=0,ot=0;ot=-jspb.BinaryConstants.TWO_TO_31&&tt=-jspb.BinaryConstants.TWO_TO_31&&tt=-jspb.BinaryConstants.TWO_TO_63&&tt=-jspb.BinaryConstants.TWO_TO_31&&tt=-jspb.BinaryConstants.TWO_TO_63&&tt=-jspb.BinaryConstants.TWO_TO_31&&tt=-jspb.BinaryConstants.TWO_TO_63&&tt=-jspb.BinaryConstants.TWO_TO_31&&tt>>0,Ut>>>0)})},jspb.BinaryWriter.prototype.writeRepeatedInt32=function(et,tt){if(tt!=null)for(var nt=0;nt>>0,Qt>>>0)});this.endDelimited_(et)}},jspb.BinaryWriter.prototype.writePackedInt64String=function(et,tt){if(tt!=null&&tt.length){et=this.beginDelimited_(et);for(var nt=0;nt-1};function Zt(gn){if(typeof gn!="string"&&(gn=String(gn)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(gn))throw new TypeError("Invalid character in header field name");return gn.toLowerCase()}function Yt(gn){return typeof gn!="string"&&(gn=String(gn)),gn}function Mt(gn){var un={next:function(){var Un=gn.shift();return{done:Un===void 0,value:Un}}};return Ft&&(un[Symbol.iterator]=function(){return un}),un}function Gt(gn){this.map={},gn instanceof Gt?gn.forEach(function(un,Un){this.append(Un,un)},this):Array.isArray(gn)?gn.forEach(function(un){this.append(un[0],un[1])},this):gn&&Object.getOwnPropertyNames(gn).forEach(function(un){this.append(un,gn[un])},this)}function en(gn){if(gn.bodyUsed)return Promise.reject(new TypeError("Already read"));gn.bodyUsed=!0}function tn(gn){return new Promise(function(un,Un){gn.onload=function(){un(gn.result)},gn.onerror=function(){Un(gn.error)}})}function ln(gn){var un=new FileReader,Un=tn(un);return un.readAsArrayBuffer(gn),Un}function nn(gn){if(gn.slice)return gn.slice(0);var un=new Uint8Array(gn.byteLength);return un.set(new Uint8Array(gn)),un.buffer}function sn(){return this.bodyUsed=!1,this._initBody=function(gn){var un;this._bodyInit=gn,gn?typeof gn=="string"?this._bodyText=gn:Qt&&Blob.prototype.isPrototypeOf(gn)?this._bodyBlob=gn:Bt&&FormData.prototype.isPrototypeOf(gn)?this._bodyFormData=gn:Ut&&URLSearchParams.prototype.isPrototypeOf(gn)?this._bodyText=gn.toString():Vt&&Qt&&(un=gn)&&DataView.prototype.isPrototypeOf(un)?(this._bodyArrayBuffer=nn(gn.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):Vt&&(ArrayBuffer.prototype.isPrototypeOf(gn)||Xt(gn))?this._bodyArrayBuffer=nn(gn):this._bodyText=gn=Object.prototype.toString.call(gn):this._bodyText="",this.headers.get("content-type")||(typeof gn=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):Ut&&URLSearchParams.prototype.isPrototypeOf(gn)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},Qt&&(this.blob=function(){var gn=en(this);if(gn)return gn;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?en(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(ln)}),this.text=function(){var gn,un,Un,_n=en(this);if(_n)return _n;if(this._bodyBlob)return gn=this._bodyBlob,un=new FileReader,Un=tn(un),un.readAsText(gn),Un;if(this._bodyArrayBuffer)return Promise.resolve(function(vn){for(var pn=new Uint8Array(vn),Rn=new Array(pn.length),Sn=0;Sn-1?_n:Un),this.mode=un.mode||this.mode||null,this.signal=un.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&vn)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(vn)}function Qn(gn){var un=new FormData;return gn.trim().split("&").forEach(function(Un){if(Un){var _n=Un.split("="),vn=_n.shift().replace(/\+/g," "),pn=_n.join("=").replace(/\+/g," ");un.append(decodeURIComponent(vn),decodeURIComponent(pn))}}),un}function En(gn,un){un||(un={}),this.type="default",this.status=un.status===void 0?200:un.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in un?un.statusText:"OK",this.headers=new Gt(un.headers),this.url=un.url||"",this._initBody(gn)}dn.prototype.clone=function(){return new dn(this,{body:this._bodyInit})},sn.call(dn.prototype),sn.call(En.prototype),En.prototype.clone=function(){return new En(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Gt(this.headers),url:this.url})},En.error=function(){var gn=new En(null,{status:0,statusText:""});return gn.type="error",gn};var an=[301,302,303,307,308];En.redirect=function(gn,un){if(an.indexOf(un)===-1)throw new RangeError("Invalid status code");return new En(null,{status:un,headers:{location:gn}})},ot.DOMException=it.DOMException;try{new ot.DOMException}catch{ot.DOMException=function(un,Un){this.message=un,this.name=Un;var _n=Error(un);this.stack=_n.stack},ot.DOMException.prototype=Object.create(Error.prototype),ot.DOMException.prototype.constructor=ot.DOMException}function rn(gn,un){return new Promise(function(Un,_n){var vn=new dn(gn,un);if(vn.signal&&vn.signal.aborted)return _n(new ot.DOMException("Aborted","AbortError"));var pn=new XMLHttpRequest;function Rn(){pn.abort()}pn.onload=function(){var Sn,fn,cn={status:pn.status,statusText:pn.statusText,headers:(Sn=pn.getAllResponseHeaders()||"",fn=new Gt,Sn.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(Vn){var Mn=Vn.split(":"),Zn=Mn.shift().trim();if(Zn){var In=Mn.join(":").trim();fn.append(Zn,In)}}),fn)};cn.url="responseURL"in pn?pn.responseURL:cn.headers.get("X-Request-URL");var bn="response"in pn?pn.response:pn.responseText;Un(new En(bn,cn))},pn.onerror=function(){_n(new TypeError("Network request failed"))},pn.ontimeout=function(){_n(new TypeError("Network request failed"))},pn.onabort=function(){_n(new ot.DOMException("Aborted","AbortError"))},pn.open(vn.method,vn.url,!0),vn.credentials==="include"?pn.withCredentials=!0:vn.credentials==="omit"&&(pn.withCredentials=!1),"responseType"in pn&&Qt&&(pn.responseType="blob"),vn.headers.forEach(function(Sn,fn){pn.setRequestHeader(fn,Sn)}),vn.signal&&(vn.signal.addEventListener("abort",Rn),pn.onreadystatechange=function(){pn.readyState===4&&vn.signal.removeEventListener("abort",Rn)}),pn.send(vn._bodyInit===void 0?null:vn._bodyInit)})}rn.polyfill=!0,it.fetch||(it.fetch=rn,it.Headers=Gt,it.Request=dn,it.Response=En),ot.Headers=Gt,ot.Request=dn,ot.Response=En,ot.fetch=rn})({})})(nt),delete nt.fetch.polyfill,(tt=nt.fetch).default=nt.fetch,tt.fetch=nt.fetch,tt.Headers=nt.Headers,tt.Request=nt.Request,tt.Response=nt.Response,et.exports=tt},function(et,tt,nt){(function(it){const ot=nt(210),Ut=nt(52),Ft=(Qt,Bt,Vt)=>({from:Ft,EnvVarError:nt(52),get:function(Wt){if(!Wt)return Qt;if(arguments.length>1)throw new Ut("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 ot(Qt,Wt,Bt||{},Vt||function(){})},accessors:nt(94),logger:nt(224)(console.log,Qt.NODE_ENV)});et.exports=Ft(it.env)}).call(this,nt(2))},function(et,tt,nt){var it=nt(13),ot=nt(73),Ut=nt(3).LEVEL,Ft=et.exports=function(){var Qt=this,Bt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};ot.call(this,{objectMode:!0,highWaterMark:Bt.highWaterMark}),this.format=Bt.format,this.level=Bt.level,this.handleExceptions=Bt.handleExceptions,this.silent=Bt.silent,Bt.log&&(this.log=Bt.log),Bt.logv&&(this.logv=Bt.logv),Bt.close&&(this.close=Bt.close),this.once("pipe",function(Vt){Qt.levels=Vt.levels,Qt.parent=Vt}),this.once("unpipe",function(Vt){Vt===Qt.parent&&(Qt.parent=null,Qt.close&&Qt.close())})};it.inherits(Ft,ot),Ft.prototype._write=function(Qt,Bt,Vt){if(this.silent||Qt.exception===!0&&!this.handleExceptions)return Vt(null);var Wt=this.level||this.parent&&this.parent.level;if(!Wt||this.levels[Wt]>=this.levels[Qt[Ut]]){if(Qt&&!this.format)return this.log(Qt,Vt);var Xt=void 0,Zt=void 0;try{Zt=this.format.transform(Object.assign({},Qt),this.format.options)}catch(Yt){Xt=Yt}if(Xt||!Zt){if(Vt(),Xt)throw Xt;return}return this.log(Zt,Vt)}return Vt(null)},Ft.prototype._writev=function(Qt,Bt){if(this.logv){var Vt=Qt.filter(this._accept,this);return Vt.length?this.logv(Vt,Bt):Bt(null)}for(var Wt=0;Wt=this.levels[Bt[Ut]])||!this.handleExceptions&&Bt.exception===!0)},Ft.prototype._nop=function(){}},function(et,tt,nt){(function(it){const ot=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Ut=typeof AbortController=="function"?AbortController:class{constructor(){this.signal=new Bt}abort(){this.signal.dispatchEvent("abort")}},Ft=typeof AbortSignal=="function",Qt=typeof Ut.AbortSignal=="function",Bt=Ft?AbortSignal:Qt?Ut.AbortController:class{constructor(){this.aborted=!1,this._listeners=[]}dispatchEvent(sn){if(sn==="abort"){this.aborted=!0;const Kt={type:sn,target:this};this.onabort(Kt),this._listeners.forEach(dn=>dn(Kt),this)}}onabort(){}addEventListener(sn,Kt){sn==="abort"&&this._listeners.push(Kt)}removeEventListener(sn,Kt){sn==="abort"&&(this._listeners=this._listeners.filter(dn=>dn!==Kt))}},Vt=new Set,Wt=(sn,Kt)=>{const dn=`LRU_CACHE_OPTION_${sn}`;Yt(dn)&&Mt(dn,`${sn} option`,`options.${Kt}`,nn)},Xt=(sn,Kt)=>{const dn=`LRU_CACHE_METHOD_${sn}`;if(Yt(dn)){const{prototype:Qn}=nn,{get:En}=Object.getOwnPropertyDescriptor(Qn,sn);Mt(dn,`${sn} method`,`cache.${Kt}()`,En)}},Zt=(...sn)=>{typeof it=="object"&&it&&typeof it.emitWarning=="function"?it.emitWarning(...sn):console.error(...sn)},Yt=sn=>!Vt.has(sn),Mt=(sn,Kt,dn,Qn)=>{Vt.add(sn),Zt(`The ${Kt} is deprecated. Please use ${dn} instead.`,"DeprecationWarning",sn,Qn)},Gt=sn=>sn&&sn===Math.floor(sn)&&sn>0&&isFinite(sn),en=sn=>Gt(sn)?sn<=Math.pow(2,8)?Uint8Array:sn<=Math.pow(2,16)?Uint16Array:sn<=Math.pow(2,32)?Uint32Array:sn<=Number.MAX_SAFE_INTEGER?tn:null:null;class tn extends Array{constructor(Kt){super(Kt),this.fill(0)}}class ln{constructor(Kt){if(Kt===0)return[];const dn=en(Kt);this.heap=new dn(Kt),this.length=0}push(Kt){this.heap[this.length++]=Kt}pop(){return this.heap[--this.length]}}class nn{constructor(Kt={}){const{max:dn=0,ttl:Qn,ttlResolution:En=1,ttlAutopurge:an,updateAgeOnGet:rn,updateAgeOnHas:gn,allowStale:un,dispose:Un,disposeAfter:_n,noDisposeOnSet:vn,noUpdateTTL:pn,maxSize:Rn=0,maxEntrySize:Sn=0,sizeCalculation:fn,fetchMethod:cn,fetchContext:bn,noDeleteOnFetchRejection:Vn,noDeleteOnStaleGet:Mn}=Kt,{length:Zn,maxAge:In,stale:Cn}=Kt instanceof nn?{}:Kt;if(dn!==0&&!Gt(dn))throw new TypeError("max option must be a nonnegative integer");const kn=dn?en(dn):Array;if(!kn)throw new Error("invalid max value: "+dn);if(this.max=dn,this.maxSize=Rn,this.maxEntrySize=Sn||this.maxSize,this.sizeCalculation=fn||Zn,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=cn||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=bn,!this.fetchMethod&&bn!==void 0)throw new TypeError("cannot set fetchContext without fetchMethod");if(this.keyMap=new Map,this.keyList=new Array(dn).fill(null),this.valList=new Array(dn).fill(null),this.next=new kn(dn),this.prev=new kn(dn),this.head=0,this.tail=0,this.free=new ln(dn),this.initialFill=1,this.size=0,typeof Un=="function"&&(this.dispose=Un),typeof _n=="function"?(this.disposeAfter=_n,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!vn,this.noUpdateTTL=!!pn,this.noDeleteOnFetchRejection=!!Vn,this.maxEntrySize!==0){if(this.maxSize!==0&&!Gt(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!Gt(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!un||!!Cn,this.noDeleteOnStaleGet=!!Mn,this.updateAgeOnGet=!!rn,this.updateAgeOnHas=!!gn,this.ttlResolution=Gt(En)||En===0?En:1,this.ttlAutopurge=!!an,this.ttl=Qn||In||0,this.ttl){if(!Gt(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 hn="LRU_CACHE_UNBOUNDED";Yt(hn)&&(Vt.add(hn),Zt("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",hn,nn))}Cn&&Wt("stale","allowStale"),In&&Wt("maxAge","ttl"),Zn&&Wt("length","sizeCalculation")}getRemainingTTL(Kt){return this.has(Kt,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new tn(this.max),this.starts=new tn(this.max),this.setItemTTL=(Qn,En,an=ot.now())=>{if(this.starts[Qn]=En!==0?an:0,this.ttls[Qn]=En,En!==0&&this.ttlAutopurge){const rn=setTimeout(()=>{this.isStale(Qn)&&this.delete(this.keyList[Qn])},En+1);rn.unref&&rn.unref()}},this.updateItemAge=Qn=>{this.starts[Qn]=this.ttls[Qn]!==0?ot.now():0};let Kt=0;const dn=()=>{const Qn=ot.now();if(this.ttlResolution>0){Kt=Qn;const En=setTimeout(()=>Kt=0,this.ttlResolution);En.unref&&En.unref()}return Qn};this.getRemainingTTL=Qn=>{const En=this.keyMap.get(Qn);return En===void 0?0:this.ttls[En]===0||this.starts[En]===0?1/0:this.starts[En]+this.ttls[En]-(Kt||dn())},this.isStale=Qn=>this.ttls[Qn]!==0&&this.starts[Qn]!==0&&(Kt||dn())-this.starts[Qn]>this.ttls[Qn]}updateItemAge(Kt){}setItemTTL(Kt,dn,Qn){}isStale(Kt){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new tn(this.max),this.removeItemSize=Kt=>{this.calculatedSize-=this.sizes[Kt],this.sizes[Kt]=0},this.requireSize=(Kt,dn,Qn,En)=>{if(!Gt(Qn)){if(!En)throw new TypeError("invalid size value (must be positive integer)");if(typeof En!="function")throw new TypeError("sizeCalculation must be a function");if(Qn=En(dn,Kt),!Gt(Qn))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}return Qn},this.addItemSize=(Kt,dn)=>{this.sizes[Kt]=dn;const Qn=this.maxSize-this.sizes[Kt];for(;this.calculatedSize>Qn;)this.evict(!0);this.calculatedSize+=this.sizes[Kt]}}removeItemSize(Kt){}addItemSize(Kt,dn){}requireSize(Kt,dn,Qn,En){if(Qn||En)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:Kt=this.allowStale}={}){if(this.size)for(let dn=this.tail;this.isValidIndex(dn)&&(!Kt&&this.isStale(dn)||(yield dn),dn!==this.head);)dn=this.prev[dn]}*rindexes({allowStale:Kt=this.allowStale}={}){if(this.size)for(let dn=this.head;this.isValidIndex(dn)&&(!Kt&&this.isStale(dn)||(yield dn),dn!==this.tail);)dn=this.next[dn]}isValidIndex(Kt){return this.keyMap.get(this.keyList[Kt])===Kt}*entries(){for(const Kt of this.indexes())yield[this.keyList[Kt],this.valList[Kt]]}*rentries(){for(const Kt of this.rindexes())yield[this.keyList[Kt],this.valList[Kt]]}*keys(){for(const Kt of this.indexes())yield this.keyList[Kt]}*rkeys(){for(const Kt of this.rindexes())yield this.keyList[Kt]}*values(){for(const Kt of this.indexes())yield this.valList[Kt]}*rvalues(){for(const Kt of this.rindexes())yield this.valList[Kt]}[Symbol.iterator](){return this.entries()}find(Kt,dn={}){for(const Qn of this.indexes())if(Kt(this.valList[Qn],this.keyList[Qn],this))return this.get(this.keyList[Qn],dn)}forEach(Kt,dn=this){for(const Qn of this.indexes())Kt.call(dn,this.valList[Qn],this.keyList[Qn],this)}rforEach(Kt,dn=this){for(const Qn of this.rindexes())Kt.call(dn,this.valList[Qn],this.keyList[Qn],this)}get prune(){return Xt("prune","purgeStale"),this.purgeStale}purgeStale(){let Kt=!1;for(const dn of this.rindexes({allowStale:!0}))this.isStale(dn)&&(this.delete(this.keyList[dn]),Kt=!0);return Kt}dump(){const Kt=[];for(const dn of this.indexes({allowStale:!0})){const Qn=this.keyList[dn],En=this.valList[dn],an={value:this.isBackgroundFetch(En)?En.__staleWhileFetching:En};if(this.ttls){an.ttl=this.ttls[dn];const rn=ot.now()-this.starts[dn];an.start=Math.floor(Date.now()-rn)}this.sizes&&(an.size=this.sizes[dn]),Kt.unshift([Qn,an])}return Kt}load(Kt){this.clear();for(const[dn,Qn]of Kt){if(Qn.start){const En=Date.now()-Qn.start;Qn.start=ot.now()-En}this.set(dn,Qn.value,Qn)}}dispose(Kt,dn,Qn){}set(Kt,dn,{ttl:Qn=this.ttl,start:En,noDisposeOnSet:an=this.noDisposeOnSet,size:rn=0,sizeCalculation:gn=this.sizeCalculation,noUpdateTTL:un=this.noUpdateTTL}={}){if(rn=this.requireSize(Kt,dn,rn,gn),this.maxEntrySize&&rn>this.maxEntrySize)return this;let Un=this.size===0?void 0:this.keyMap.get(Kt);if(Un===void 0)Un=this.newIndex(),this.keyList[Un]=Kt,this.valList[Un]=dn,this.keyMap.set(Kt,Un),this.next[this.tail]=Un,this.prev[Un]=this.tail,this.tail=Un,this.size++,this.addItemSize(Un,rn),un=!1;else{const _n=this.valList[Un];dn!==_n&&(this.isBackgroundFetch(_n)?_n.__abortController.abort():an||(this.dispose(_n,Kt,"set"),this.disposeAfter&&this.disposed.push([_n,Kt,"set"])),this.removeItemSize(Un),this.valList[Un]=dn,this.addItemSize(Un,rn)),this.moveToTail(Un)}if(Qn===0||this.ttl!==0||this.ttls||this.initializeTTLTracking(),un||this.setItemTTL(Un,Qn,En),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 Kt=this.valList[this.head];return this.evict(!0),Kt}}evict(Kt){const dn=this.head,Qn=this.keyList[dn],En=this.valList[dn];return this.isBackgroundFetch(En)?En.__abortController.abort():(this.dispose(En,Qn,"evict"),this.disposeAfter&&this.disposed.push([En,Qn,"evict"])),this.removeItemSize(dn),Kt&&(this.keyList[dn]=null,this.valList[dn]=null,this.free.push(dn)),this.head=this.next[dn],this.keyMap.delete(Qn),this.size--,dn}has(Kt,{updateAgeOnHas:dn=this.updateAgeOnHas}={}){const Qn=this.keyMap.get(Kt);return Qn!==void 0&&!this.isStale(Qn)&&(dn&&this.updateItemAge(Qn),!0)}peek(Kt,{allowStale:dn=this.allowStale}={}){const Qn=this.keyMap.get(Kt);if(Qn!==void 0&&(dn||!this.isStale(Qn))){const En=this.valList[Qn];return this.isBackgroundFetch(En)?En.__staleWhileFetching:En}}backgroundFetch(Kt,dn,Qn,En){const an=dn===void 0?void 0:this.valList[dn];if(this.isBackgroundFetch(an))return an;const rn=new Ut,gn={signal:rn.signal,options:Qn,context:En},un=new Promise(Un=>Un(this.fetchMethod(Kt,an,gn))).then(Un=>(rn.signal.aborted||this.set(Kt,Un,gn.options),Un),Un=>{if(this.valList[dn]===un&&(!Qn.noDeleteOnFetchRejection||un.__staleWhileFetching===void 0?this.delete(Kt):this.valList[dn]=un.__staleWhileFetching),un.__returned===un)throw Un});return un.__abortController=rn,un.__staleWhileFetching=an,un.__returned=null,dn===void 0?(this.set(Kt,un,gn.options),dn=this.keyMap.get(Kt)):this.valList[dn]=un,un}isBackgroundFetch(Kt){return Kt&&typeof Kt=="object"&&typeof Kt.then=="function"&&Object.prototype.hasOwnProperty.call(Kt,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(Kt,"__returned")&&(Kt.__returned===Kt||Kt.__returned===null)}async fetch(Kt,{allowStale:dn=this.allowStale,updateAgeOnGet:Qn=this.updateAgeOnGet,noDeleteOnStaleGet:En=this.noDeleteOnStaleGet,ttl:an=this.ttl,noDisposeOnSet:rn=this.noDisposeOnSet,size:gn=0,sizeCalculation:un=this.sizeCalculation,noUpdateTTL:Un=this.noUpdateTTL,noDeleteOnFetchRejection:_n=this.noDeleteOnFetchRejection,fetchContext:vn=this.fetchContext,forceRefresh:pn=!1}={}){if(!this.fetchMethod)return this.get(Kt,{allowStale:dn,updateAgeOnGet:Qn,noDeleteOnStaleGet:En});const Rn={allowStale:dn,updateAgeOnGet:Qn,noDeleteOnStaleGet:En,ttl:an,noDisposeOnSet:rn,size:gn,sizeCalculation:un,noUpdateTTL:Un,noDeleteOnFetchRejection:_n};let Sn=this.keyMap.get(Kt);if(Sn===void 0){const fn=this.backgroundFetch(Kt,Sn,Rn,vn);return fn.__returned=fn}{const fn=this.valList[Sn];if(this.isBackgroundFetch(fn))return dn&&fn.__staleWhileFetching!==void 0?fn.__staleWhileFetching:fn.__returned=fn;if(!pn&&!this.isStale(Sn))return this.moveToTail(Sn),Qn&&this.updateItemAge(Sn),fn;const cn=this.backgroundFetch(Kt,Sn,Rn,vn);return dn&&cn.__staleWhileFetching!==void 0?cn.__staleWhileFetching:cn.__returned=cn}}get(Kt,{allowStale:dn=this.allowStale,updateAgeOnGet:Qn=this.updateAgeOnGet,noDeleteOnStaleGet:En=this.noDeleteOnStaleGet}={}){const an=this.keyMap.get(Kt);if(an!==void 0){const rn=this.valList[an],gn=this.isBackgroundFetch(rn);return this.isStale(an)?gn?dn?rn.__staleWhileFetching:void 0:(En||this.delete(Kt),dn?rn:void 0):gn?void 0:(this.moveToTail(an),Qn&&this.updateItemAge(an),rn)}}connect(Kt,dn){this.prev[dn]=Kt,this.next[Kt]=dn}moveToTail(Kt){Kt!==this.tail&&(Kt===this.head?this.head=this.next[Kt]:this.connect(this.prev[Kt],this.next[Kt]),this.connect(this.tail,Kt),this.tail=Kt)}get del(){return Xt("del","delete"),this.delete}delete(Kt){let dn=!1;if(this.size!==0){const Qn=this.keyMap.get(Kt);if(Qn!==void 0)if(dn=!0,this.size===1)this.clear();else{this.removeItemSize(Qn);const En=this.valList[Qn];this.isBackgroundFetch(En)?En.__abortController.abort():(this.dispose(En,Kt,"delete"),this.disposeAfter&&this.disposed.push([En,Kt,"delete"])),this.keyMap.delete(Kt),this.keyList[Qn]=null,this.valList[Qn]=null,Qn===this.tail?this.tail=this.prev[Qn]:Qn===this.head?this.head=this.next[Qn]:(this.next[this.prev[Qn]]=this.next[Qn],this.prev[this.next[Qn]]=this.prev[Qn]),this.size--,this.free.push(Qn)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return dn}clear(){for(const Kt of this.rindexes({allowStale:!0})){const dn=this.valList[Kt];if(this.isBackgroundFetch(dn))dn.__abortController.abort();else{const Qn=this.keyList[Kt];this.dispose(dn,Qn,"delete"),this.disposeAfter&&this.disposed.push([dn,Qn,"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 Xt("reset","clear"),this.clear}get length(){return((Kt,dn)=>{const Qn=`LRU_CACHE_PROPERTY_${Kt}`;if(Yt(Qn)){const{prototype:En}=nn,{get:an}=Object.getOwnPropertyDescriptor(En,Kt);Mt(Qn,`${Kt} property`,`cache.${dn}`,an)}})("length","size"),this.size}static get AbortController(){return Ut}static get AbortSignal(){return Bt}}et.exports=nn}).call(this,nt(2))},function(et,tt,nt){var it=nt(41).Colorizer;et.exports=function(ot){return it.addColors(ot.colors||ot),ot}},function(et,tt,nt){var it={};et.exports=it,it.themes={};var ot=nt(13),Ut=it.styles=nt(108),Ft=Object.defineProperties,Qt=new RegExp(/[\r\n]+/g);it.supportsColor=nt(109).supportsColor,it.enabled===void 0&&(it.enabled=it.supportsColor()!==!1),it.enable=function(){it.enabled=!0},it.disable=function(){it.enabled=!1},it.stripColors=it.strip=function(en){return(""+en).replace(/\x1B\[\d+m/g,"")},it.stylize=function(en,tn){return it.enabled?Ut[tn].open+en+Ut[tn].close:en+""};var Bt=/[|\\{}()[\]^$+*?.]/g;function Vt(en){var tn=function ln(){return Yt.apply(ln,arguments)};return tn._styles=en,tn.__proto__=Zt,tn}var Wt,Xt=(Wt={},Ut.grey=Ut.gray,Object.keys(Ut).forEach(function(en){Ut[en].closeRe=new RegExp(function(tn){if(typeof tn!="string")throw new TypeError("Expected a string");return tn.replace(Bt,"\\$&")}(Ut[en].close),"g"),Wt[en]={get:function(){return Vt(this._styles.concat(en))}}}),Wt),Zt=Ft(function(){},Xt);function Yt(){var en=Array.prototype.slice.call(arguments),tn=en.map(function(dn){return dn!==void 0&&dn.constructor===String?dn:ot.inspect(dn)}).join(" ");if(!it.enabled||!tn)return tn;for(var ln=tn.indexOf(` +`)!=-1,nn=this._styles,sn=nn.length;sn--;){var Kt=Ut[nn[sn]];tn=Kt.open+tn.replace(Kt.closeRe,Kt.open)+Kt.close,ln&&(tn=tn.replace(Qt,function(dn){return Kt.close+dn+Kt.open}))}return tn}it.setTheme=function(en){if(typeof en!="string")for(var tn in en)(function(ln){it[ln]=function(nn){if(typeof en[ln]=="object"){var sn=nn;for(var Kt in en[ln])sn=it[en[ln][Kt]](sn);return sn}return it[en[ln]](nn)}})(tn);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 Mt=function(en,tn){var ln=tn.split("");return(ln=ln.map(en)).join("")};for(var Gt in it.trap=nt(111),it.zalgo=nt(112),it.maps={},it.maps.america=nt(113)(it),it.maps.zebra=nt(114)(it),it.maps.rainbow=nt(115)(it),it.maps.random=nt(116)(it),it.maps)(function(en){it[en]=function(tn){return Mt(it.maps[en],tn)}})(Gt);Ft(it,function(){var en={};return Object.keys(Xt).forEach(function(tn){en[tn]={get:function(){return Vt([tn])}}}),en}())},function(et,tt){et.exports=function(nt){return nt&&typeof nt=="object"&&typeof nt.copy=="function"&&typeof nt.fill=="function"&&typeof nt.readUInt8=="function"}},function(et,tt){typeof Object.create=="function"?et.exports=function(nt,it){nt.super_=it,nt.prototype=Object.create(it.prototype,{constructor:{value:nt,enumerable:!1,writable:!0,configurable:!0}})}:et.exports=function(nt,it){nt.super_=it;var ot=function(){};ot.prototype=it.prototype,nt.prototype=new ot,nt.prototype.constructor=nt}},function(et,tt){var nt={};et.exports=nt;var it={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],bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,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(it).forEach(function(ot){var Ut=it[ot],Ft=nt[ot]=[];Ft.open="\x1B["+Ut[0]+"m",Ft.close="\x1B["+Ut[1]+"m"})},function(et,tt,nt){(function(it){var ot=nt(18),Ut=nt(110),Ft=it.env,Qt=void 0;function Bt(Vt){return function(Wt){return Wt!==0&&{level:Wt,hasBasic:!0,has256:Wt>=2,has16m:Wt>=3}}(function(Wt){if(Qt===!1)return 0;if(Ut("color=16m")||Ut("color=full")||Ut("color=truecolor"))return 3;if(Ut("color=256"))return 2;if(Wt&&!Wt.isTTY&&Qt!==!0)return 0;var Xt=Qt?1:0;if(it.platform==="win32"){var Zt=ot.release().split(".");return Number(it.versions.node.split(".")[0])>=8&&Number(Zt[0])>=10&&Number(Zt[2])>=10586?Number(Zt[2])>=14931?3:2:1}return"CI"in Ft?["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(function(Yt){return Yt in Ft})||Ft.CI_NAME==="codeship"?1:Xt:"TEAMCITY_VERSION"in Ft?/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Ft.TEAMCITY_VERSION)?1:0:"TERM_PROGRAM"in Ft?parseInt("3.4.19".split(".")[0],10)>=3?3:2:/-256(color)?$/i.test("xterm-256color")?2:/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test("xterm-256color")||"COLORTERM"in Ft?1:Xt}(Vt))}Ut("no-color")||Ut("no-colors")||Ut("color=false")?Qt=!1:(Ut("color")||Ut("colors")||Ut("color=true")||Ut("color=always"))&&(Qt=!0),"FORCE_COLOR"in Ft&&(Qt=Ft.FORCE_COLOR.length===0||parseInt(Ft.FORCE_COLOR,10)!==0),et.exports={supportsColor:Bt,stdout:Bt(it.stdout),stderr:Bt(it.stderr)}}).call(this,nt(2))},function(et,tt,nt){(function(it){et.exports=function(ot,Ut){var Ft=(Ut=Ut||it.argv).indexOf("--"),Qt=/^-{1,2}/.test(ot)?"":"--",Bt=Ut.indexOf(Qt+ot);return Bt!==-1&&(Ft===-1||Bt0&&arguments[0]!==void 0?arguments[0]:{};it(this,Xt),Mt.levels||(Mt.levels=Bt.npm.levels),this.colorizer=new Ut(Mt),this.padder=new Ft(Mt),this.options=Mt}var Zt,Yt;return Zt=Xt,(Yt=[{key:"transform",value:function(Mt,Gt){return this.colorizer.transform(this.padder.transform(Mt,Gt),Gt),Mt[Vt]="".concat(Mt.level,":").concat(Mt.message),Mt}}])&&ot(Zt.prototype,Yt),Xt}();et.exports=function(Xt){return new Wt(Xt)},et.exports.Format=Wt},function(et,tt,nt){var it=nt(12);function ot(Ft){if(Ft.every(Ut))return function(Qt){for(var Bt=Qt,Vt=0;Vt1&&arguments[1]!==void 0?arguments[1]:{};return Bt[Ut]=(Vt.stable?Ft.stableStringify:Ft)(Bt,Vt.replacer||Qt,Vt.space),Bt})}).call(this,nt(5).Buffer)},function(et,tt,nt){tt.byteLength=function(Xt){var Zt=Vt(Xt),Yt=Zt[0],Mt=Zt[1];return 3*(Yt+Mt)/4-Mt},tt.toByteArray=function(Xt){for(var Zt,Yt=Vt(Xt),Mt=Yt[0],Gt=Yt[1],en=new Ut(function(sn,Kt,dn){return 3*(Kt+dn)/4-dn}(0,Mt,Gt)),tn=0,ln=Gt>0?Mt-4:Mt,nn=0;nn>16&255,en[tn++]=Zt>>8&255,en[tn++]=255&Zt;return Gt===2&&(Zt=ot[Xt.charCodeAt(nn)]<<2|ot[Xt.charCodeAt(nn+1)]>>4,en[tn++]=255&Zt),Gt===1&&(Zt=ot[Xt.charCodeAt(nn)]<<10|ot[Xt.charCodeAt(nn+1)]<<4|ot[Xt.charCodeAt(nn+2)]>>2,en[tn++]=Zt>>8&255,en[tn++]=255&Zt),en},tt.fromByteArray=function(Xt){for(var Zt,Yt=Xt.length,Mt=Yt%3,Gt=[],en=0,tn=Yt-Mt;entn?tn:en+16383));return Mt===1?(Zt=Xt[Yt-1],Gt.push(it[Zt>>2]+it[Zt<<4&63]+"==")):Mt===2&&(Zt=(Xt[Yt-2]<<8)+Xt[Yt-1],Gt.push(it[Zt>>10]+it[Zt>>4&63]+it[Zt<<2&63]+"=")),Gt.join("")};for(var it=[],ot=[],Ut=typeof Uint8Array<"u"?Uint8Array:Array,Ft="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Qt=0,Bt=Ft.length;Qt0)throw new Error("Invalid string. Length must be a multiple of 4");var Yt=Xt.indexOf("=");return Yt===-1&&(Yt=Zt),[Yt,Yt===Zt?0:4-Yt%4]}function Wt(Xt,Zt,Yt){for(var Mt,Gt,en=[],tn=Zt;tn>18&63]+it[Gt>>12&63]+it[Gt>>6&63]+it[63&Gt]);return en.join("")}ot["-".charCodeAt(0)]=62,ot["_".charCodeAt(0)]=63},function(et,tt){tt.read=function(nt,it,ot,Ut,Ft){var Qt,Bt,Vt=8*Ft-Ut-1,Wt=(1<>1,Zt=-7,Yt=ot?Ft-1:0,Mt=ot?-1:1,Gt=nt[it+Yt];for(Yt+=Mt,Qt=Gt&(1<<-Zt)-1,Gt>>=-Zt,Zt+=Vt;Zt>0;Qt=256*Qt+nt[it+Yt],Yt+=Mt,Zt-=8);for(Bt=Qt&(1<<-Zt)-1,Qt>>=-Zt,Zt+=Ut;Zt>0;Bt=256*Bt+nt[it+Yt],Yt+=Mt,Zt-=8);if(Qt===0)Qt=1-Xt;else{if(Qt===Wt)return Bt?NaN:1/0*(Gt?-1:1);Bt+=Math.pow(2,Ut),Qt-=Xt}return(Gt?-1:1)*Bt*Math.pow(2,Qt-Ut)},tt.write=function(nt,it,ot,Ut,Ft,Qt){var Bt,Vt,Wt,Xt=8*Qt-Ft-1,Zt=(1<>1,Mt=Ft===23?Math.pow(2,-24)-Math.pow(2,-77):0,Gt=Ut?0:Qt-1,en=Ut?1:-1,tn=it<0||it===0&&1/it<0?1:0;for(it=Math.abs(it),isNaN(it)||it===1/0?(Vt=isNaN(it)?1:0,Bt=Zt):(Bt=Math.floor(Math.log(it)/Math.LN2),it*(Wt=Math.pow(2,-Bt))<1&&(Bt--,Wt*=2),(it+=Bt+Yt>=1?Mt/Wt:Mt*Math.pow(2,1-Yt))*Wt>=2&&(Bt++,Wt/=2),Bt+Yt>=Zt?(Vt=0,Bt=Zt):Bt+Yt>=1?(Vt=(it*Wt-1)*Math.pow(2,Ft),Bt+=Yt):(Vt=it*Math.pow(2,Yt-1)*Math.pow(2,Ft),Bt=0));Ft>=8;nt[ot+Gt]=255&Vt,Gt+=en,Vt/=256,Ft-=8);for(Bt=Bt<0;nt[ot+Gt]=255&Bt,Gt+=en,Bt/=256,Xt-=8);nt[ot+Gt-en]|=128*tn}},function(et,tt,nt){var it=nt(12);et.exports=it(function(ot,Ut){return Ut.message?(ot.message="[".concat(Ut.label,"] ").concat(ot.message),ot):(ot.label=Ut.label,ot)})},function(et,tt,nt){var it=nt(12),ot=nt(3).MESSAGE,Ut=nt(35);et.exports=it(function(Ft){var Qt={};return Ft.message&&(Qt["@message"]=Ft.message,delete Ft.message),Ft.timestamp&&(Qt["@timestamp"]=Ft.timestamp,delete Ft.timestamp),Qt["@fields"]=Ft,Ft[ot]=Ut(Qt),Ft})},function(et,tt,nt){var it=nt(12);function ot(Ft,Qt,Bt){var Vt,Wt,Xt,Zt=Qt.reduce(function(Mt,Gt){return Mt[Gt]=Ft[Gt],delete Ft[Gt],Mt},{}),Yt=Object.keys(Ft).reduce(function(Mt,Gt){return Mt[Gt]=Ft[Gt],delete Ft[Gt],Mt},{});return Object.assign(Ft,Zt,(Xt=Yt,(Wt=Bt)in(Vt={})?Object.defineProperty(Vt,Wt,{value:Xt,enumerable:!0,configurable:!0,writable:!0}):Vt[Wt]=Xt,Vt)),Ft}function Ut(Ft,Qt,Bt){return Ft[Bt]=Qt.reduce(function(Vt,Wt){return Vt[Wt]=Ft[Wt],delete Ft[Wt],Vt},{}),Ft}et.exports=it(function(Ft){var Qt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Bt="metadata";Qt.key&&(Bt=Qt.key);var Vt=[];return Qt.fillExcept||Qt.fillWith||(Vt.push("level"),Vt.push("message")),Qt.fillExcept&&(Vt=Qt.fillExcept),Vt.length>0?ot(Ft,Vt,Bt):Qt.fillWith?Ut(Ft,Qt.fillWith,Bt):Ft})},function(et,tt,nt){var it=nt(13).inspect,ot=nt(12),Ut=nt(3),Ft=Ut.LEVEL,Qt=Ut.MESSAGE,Bt=Ut.SPLAT;et.exports=ot(function(Vt){var Wt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Xt=Object.assign({},Vt);return delete Xt[Ft],delete Xt[Qt],delete Xt[Bt],Vt[Qt]=it(Xt,!1,Wt.depth||null,Wt.colorize),Vt})},function(et,tt,nt){function it(Ft,Qt){for(var Bt=0;BtXt.length)&&(Zt=Xt.length);for(var Yt=0,Mt=new Array(Zt);Yt1?en.splice(0):en,nn=ln.length;if(nn)for(var sn=0;sn1&&arguments[1]!==void 0?arguments[1]:{};return Ft.format&&(Ut.timestamp=typeof Ft.format=="function"?Ft.format():it.format(new Date,Ft.format)),Ut.timestamp||(Ut.timestamp=new Date().toISOString()),Ft.alias&&(Ut[Ft.alias]=Ut.timestamp),Ut})},function(et,tt,nt){nt.r(tt),nt.d(tt,"assign",function(){return Bt}),nt.d(tt,"format",function(){return rn}),nt.d(tt,"parse",function(){return gn}),nt.d(tt,"defaultI18n",function(){return Zt}),nt.d(tt,"setGlobalDateI18n",function(){return Mt}),nt.d(tt,"setGlobalDateMasks",function(){return an});var it=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,ot="[^\\s]+",Ut=/\[([^]*?)\]/gm;function Ft(Un,_n){for(var vn=[],pn=0,Rn=Un.length;pn-1?pn:null}};function Bt(Un){for(var _n=[],vn=1;vn3?0:(Un-Un%10!=10?1:0)*Un%10]}},Yt=Bt({},Zt),Mt=function(Un){return Yt=Bt(Yt,Un)},Gt=function(Un){return Un.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},en=function(Un,_n){for(_n===void 0&&(_n=2),Un=String(Un);Un.length<_n;)Un="0"+Un;return Un},tn={D:function(Un){return String(Un.getDate())},DD:function(Un){return en(Un.getDate())},Do:function(Un,_n){return _n.DoFn(Un.getDate())},d:function(Un){return String(Un.getDay())},dd:function(Un){return en(Un.getDay())},ddd:function(Un,_n){return _n.dayNamesShort[Un.getDay()]},dddd:function(Un,_n){return _n.dayNames[Un.getDay()]},M:function(Un){return String(Un.getMonth()+1)},MM:function(Un){return en(Un.getMonth()+1)},MMM:function(Un,_n){return _n.monthNamesShort[Un.getMonth()]},MMMM:function(Un,_n){return _n.monthNames[Un.getMonth()]},YY:function(Un){return en(String(Un.getFullYear()),4).substr(2)},YYYY:function(Un){return en(Un.getFullYear(),4)},h:function(Un){return String(Un.getHours()%12||12)},hh:function(Un){return en(Un.getHours()%12||12)},H:function(Un){return String(Un.getHours())},HH:function(Un){return en(Un.getHours())},m:function(Un){return String(Un.getMinutes())},mm:function(Un){return en(Un.getMinutes())},s:function(Un){return String(Un.getSeconds())},ss:function(Un){return en(Un.getSeconds())},S:function(Un){return String(Math.round(Un.getMilliseconds()/100))},SS:function(Un){return en(Math.round(Un.getMilliseconds()/10),2)},SSS:function(Un){return en(Un.getMilliseconds(),3)},a:function(Un,_n){return Un.getHours()<12?_n.amPm[0]:_n.amPm[1]},A:function(Un,_n){return Un.getHours()<12?_n.amPm[0].toUpperCase():_n.amPm[1].toUpperCase()},ZZ:function(Un){var _n=Un.getTimezoneOffset();return(_n>0?"-":"+")+en(100*Math.floor(Math.abs(_n)/60)+Math.abs(_n)%60,4)},Z:function(Un){var _n=Un.getTimezoneOffset();return(_n>0?"-":"+")+en(Math.floor(Math.abs(_n)/60),2)+":"+en(Math.abs(_n)%60,2)}},ln=function(Un){return+Un-1},nn=[null,"[1-9]\\d?"],sn=[null,ot],Kt=["isPm",ot,function(Un,_n){var vn=Un.toLowerCase();return vn===_n.amPm[0]?0:vn===_n.amPm[1]?1:null}],dn=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(Un){var _n=(Un+"").match(/([+-]|\d\d)/gi);if(_n){var vn=60*+_n[1]+parseInt(_n[2],10);return _n[0]==="+"?vn:-vn}return 0}],Qn={D:["day","[1-9]\\d?"],DD:["day","\\d\\d"],Do:["day","[1-9]\\d?"+ot,function(Un){return parseInt(Un,10)}],M:["month","[1-9]\\d?",ln],MM:["month","\\d\\d",ln],YY:["year","\\d\\d",function(Un){var _n=+(""+new Date().getFullYear()).substr(0,2);return+(""+(+Un>68?_n-1:_n)+Un)}],h:["hour","[1-9]\\d?",void 0,"isPm"],hh:["hour","\\d\\d",void 0,"isPm"],H:["hour","[1-9]\\d?"],HH:["hour","\\d\\d"],m:["minute","[1-9]\\d?"],mm:["minute","\\d\\d"],s:["second","[1-9]\\d?"],ss:["second","\\d\\d"],YYYY:["year","\\d{4}"],S:["millisecond","\\d",function(Un){return 100*+Un}],SS:["millisecond","\\d\\d",function(Un){return 10*+Un}],SSS:["millisecond","\\d{3}"],d:nn,dd:nn,ddd:sn,dddd:sn,MMM:["month",ot,Qt("monthNamesShort")],MMMM:["month",ot,Qt("monthNames")],a:Kt,A:Kt,ZZ:dn,Z:dn},En={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"},an=function(Un){return Bt(En,Un)},rn=function(Un,_n,vn){if(_n===void 0&&(_n=En.default),vn===void 0&&(vn={}),typeof Un=="number"&&(Un=new Date(Un)),Object.prototype.toString.call(Un)!=="[object Date]"||isNaN(Un.getTime()))throw new Error("Invalid Date pass to format");var pn=[];_n=(_n=En[_n]||_n).replace(Ut,function(Sn,fn){return pn.push(fn),"@@@"});var Rn=Bt(Bt({},Yt),vn);return(_n=_n.replace(it,function(Sn){return tn[Sn](Un,Rn)})).replace(/@@@/g,function(){return pn.shift()})};function gn(Un,_n,vn){if(vn===void 0&&(vn={}),typeof _n!="string")throw new Error("Invalid format in fecha parse");if(_n=En[_n]||_n,Un.length>1e3)return null;var pn={year:new Date().getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},Rn=[],Sn=[],fn=_n.replace(Ut,function(An,Pn){return Sn.push(Gt(Pn)),"@@@"}),cn={},bn={};fn=Gt(fn).replace(it,function(An){var Pn=Qn[An],jn=Pn[0],$n=Pn[1],pr=Pn[3];if(cn[jn])throw new Error("Invalid format. "+jn+" specified twice in format");return cn[jn]=!0,pr&&(bn[pr]=!0),Rn.push(Pn),"("+$n+")"}),Object.keys(bn).forEach(function(An){if(!cn[An])throw new Error("Invalid format. "+An+" is required in specified format")}),fn=fn.replace(/@@@/g,function(){return Sn.shift()});var Vn=Un.match(new RegExp(fn,"i"));if(!Vn)return null;for(var Mn=Bt(Bt({},Yt),vn),Zn=1;Zn","maintainers":["Jarrett Cruger ","Chris Alderson ","David Hyde "],"repository":{"type":"git","url":"https://github.com/winstonjs/winston.git"},"keywords":["winston","logger","logging","logs","sysadmin","bunyan","pino","loglevel","tools","json","stream"],"dependencies":{"async":"^3.1.0","@dabh/diagnostics":"^2.0.2","is-stream":"^2.0.0","logform":"^2.2.0","one-time":"^1.0.0","readable-stream":"^3.4.0","stack-trace":"0.0.x","triple-beam":"^1.3.0","winston-transport":"^4.4.0"},"devDependencies":{"@babel/cli":"^7.10.3","@babel/core":"^7.10.3","@babel/preset-env":"^7.10.3","@types/node":"^14.0.13","abstract-winston-transport":"^0.5.1","assume":"^2.2.0","colors":"^1.4.0","cross-spawn-async":"^2.2.5","eslint-config-populist":"^4.2.0","hock":"^1.4.1","mocha":"^8.0.1","nyc":"^15.1.0","rimraf":"^3.0.2","split2":"^3.1.1","std-mocks":"^1.0.1","through2":"^3.0.1","winston-compat":"^0.1.5"},"main":"./lib/winston","browser":"./dist/winston","types":"./index.d.ts","scripts":{"lint":"populist lib/*.js lib/winston/*.js lib/winston/**/*.js","pretest":"npm run lint","test":"nyc --reporter=text --reporter lcov npm run test:mocha","test:mocha":"mocha test/*.test.js test/**/*.test.js --exit","build":"./node_modules/.bin/rimraf dist && babel lib -d dist","prepublishOnly":"npm run build"},"engines":{"node":">= 6.4.0"},"license":"MIT"}')},function(et,tt,nt){Object.defineProperty(tt,"Console",{configurable:!0,enumerable:!0,get:function(){return nt(139)}}),Object.defineProperty(tt,"File",{configurable:!0,enumerable:!0,get:function(){return nt(148)}}),Object.defineProperty(tt,"Http",{configurable:!0,enumerable:!0,get:function(){return nt(188)}}),Object.defineProperty(tt,"Stream",{configurable:!0,enumerable:!0,get:function(){return nt(200)}})},function(et,tt,nt){(function(it){function ot(en){return(ot=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(tn){return typeof tn}:function(tn){return tn&&typeof Symbol=="function"&&tn.constructor===Symbol&&tn!==Symbol.prototype?"symbol":typeof tn})(en)}function Ut(en,tn){if(!(en instanceof tn))throw new TypeError("Cannot call a class as a function")}function Ft(en,tn){for(var ln=0;ln"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}();return function(){var ln,nn=Wt(en);if(tn){var sn=Wt(this).constructor;ln=Reflect.construct(nn,arguments,sn)}else ln=nn.apply(this,arguments);return Vt(this,ln)}}function Vt(en,tn){return!tn||ot(tn)!=="object"&&typeof tn!="function"?function(ln){if(ln===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return ln}(en):tn}function Wt(en){return(Wt=Object.setPrototypeOf?Object.getPrototypeOf:function(tn){return tn.__proto__||Object.getPrototypeOf(tn)})(en)}var Xt=nt(18),Zt=nt(3),Yt=Zt.LEVEL,Mt=Zt.MESSAGE,Gt=nt(20);et.exports=function(en){(function(Kt,dn){if(typeof dn!="function"&&dn!==null)throw new TypeError("Super expression must either be null or a function");Kt.prototype=Object.create(dn&&dn.prototype,{constructor:{value:Kt,writable:!0,configurable:!0}}),dn&&Qt(Kt,dn)})(sn,en);var tn,ln,nn=Bt(sn);function sn(){var Kt,dn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ut(this,sn),(Kt=nn.call(this,dn)).name=dn.name||"console",Kt.stderrLevels=Kt._stringArrayToSet(dn.stderrLevels),Kt.consoleWarnLevels=Kt._stringArrayToSet(dn.consoleWarnLevels),Kt.eol=dn.eol||Xt.EOL,Kt.setMaxListeners(30),Kt}return tn=sn,(ln=[{key:"log",value:function(Kt,dn){var Qn=this;return it(function(){return Qn.emit("logged",Kt)}),this.stderrLevels[Kt[Yt]]?(console._stderr?console._stderr.write("".concat(Kt[Mt]).concat(this.eol)):console.error(Kt[Mt]),void(dn&&dn())):this.consoleWarnLevels[Kt[Yt]]?(console._stderr?console._stderr.write("".concat(Kt[Mt]).concat(this.eol)):console.warn(Kt[Mt]),void(dn&&dn())):(console._stdout?console._stdout.write("".concat(Kt[Mt]).concat(this.eol)):console.log(Kt[Mt]),void(dn&&dn()))}},{key:"_stringArrayToSet",value:function(Kt,dn){if(!Kt)return{};if(dn=dn||"Cannot make set from type other than Array of string elements",!Array.isArray(Kt))throw new Error(dn);return Kt.reduce(function(Qn,En){if(typeof En!="string")throw new Error(dn);return Qn[En]=!0,Qn},{})}}])&&Ft(tn.prototype,ln),sn}(Gt)}).call(this,nt(15).setImmediate)},function(et,tt,nt){(function(it,ot){(function(Ut,Ft){if(!Ut.setImmediate){var Qt,Bt,Vt,Wt,Xt,Zt=1,Yt={},Mt=!1,Gt=Ut.document,en=Object.getPrototypeOf&&Object.getPrototypeOf(Ut);en=en&&en.setTimeout?en:Ut,{}.toString.call(Ut.process)==="[object process]"?Qt=function(nn){ot.nextTick(function(){ln(nn)})}:function(){if(Ut.postMessage&&!Ut.importScripts){var nn=!0,sn=Ut.onmessage;return Ut.onmessage=function(){nn=!1},Ut.postMessage("","*"),Ut.onmessage=sn,nn}}()?(Wt="setImmediate$"+Math.random()+"$",Xt=function(nn){nn.source===Ut&&typeof nn.data=="string"&&nn.data.indexOf(Wt)===0&&ln(+nn.data.slice(Wt.length))},Ut.addEventListener?Ut.addEventListener("message",Xt,!1):Ut.attachEvent("onmessage",Xt),Qt=function(nn){Ut.postMessage(Wt+nn,"*")}):Ut.MessageChannel?((Vt=new MessageChannel).port1.onmessage=function(nn){ln(nn.data)},Qt=function(nn){Vt.port2.postMessage(nn)}):Gt&&"onreadystatechange"in Gt.createElement("script")?(Bt=Gt.documentElement,Qt=function(nn){var sn=Gt.createElement("script");sn.onreadystatechange=function(){ln(nn),sn.onreadystatechange=null,Bt.removeChild(sn),sn=null},Bt.appendChild(sn)}):Qt=function(nn){setTimeout(ln,0,nn)},en.setImmediate=function(nn){typeof nn!="function"&&(nn=new Function(""+nn));for(var sn=new Array(arguments.length-1),Kt=0;Kt"u"?it===void 0?this:it:self)}).call(this,nt(6),nt(2))},function(et,tt,nt){et.exports=nt(62)},function(et,tt,nt){(function(it,ot){var Ut=nt(16);et.exports=sn;var Ft,Qt=nt(42);sn.ReadableState=nn,nt(21).EventEmitter;var Bt=function(fn,cn){return fn.listeners(cn).length},Vt=nt(63),Wt=nt(44).Buffer,Xt=it.Uint8Array||function(){},Zt=Object.create(nt(17));Zt.inherits=nt(7);var Yt=nt(143),Mt=void 0;Mt=Yt&&Yt.debuglog?Yt.debuglog("stream"):function(){};var Gt,en=nt(144),tn=nt(64);Zt.inherits(sn,Vt);var ln=["error","close","destroy","pause","resume"];function nn(fn,cn){fn=fn||{};var bn=cn instanceof(Ft=Ft||nt(36));this.objectMode=!!fn.objectMode,bn&&(this.objectMode=this.objectMode||!!fn.readableObjectMode);var Vn=fn.highWaterMark,Mn=fn.readableHighWaterMark,Zn=this.objectMode?16:16384;this.highWaterMark=Vn||Vn===0?Vn:bn&&(Mn||Mn===0)?Mn:Zn,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new en,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.destroyed=!1,this.defaultEncoding=fn.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,fn.encoding&&(Gt||(Gt=nt(22).StringDecoder),this.decoder=new Gt(fn.encoding),this.encoding=fn.encoding)}function sn(fn){if(Ft=Ft||nt(36),!(this instanceof sn))return new sn(fn);this._readableState=new nn(fn,this),this.readable=!0,fn&&(typeof fn.read=="function"&&(this._read=fn.read),typeof fn.destroy=="function"&&(this._destroy=fn.destroy)),Vt.call(this)}function Kt(fn,cn,bn,Vn,Mn){var Zn,In=fn._readableState;return cn===null?(In.reading=!1,function(Cn,kn){if(!kn.ended){if(kn.decoder){var hn=kn.decoder.end();hn&&hn.length&&(kn.buffer.push(hn),kn.length+=kn.objectMode?1:hn.length)}kn.ended=!0,En(Cn)}}(fn,In)):(Mn||(Zn=function(Cn,kn){var hn;Fn=kn,Wt.isBuffer(Fn)||Fn instanceof Xt||typeof kn=="string"||kn===void 0||Cn.objectMode||(hn=new TypeError("Invalid non-string/buffer chunk"));var Fn;return hn}(In,cn)),Zn?fn.emit("error",Zn):In.objectMode||cn&&cn.length>0?(typeof cn=="string"||In.objectMode||Object.getPrototypeOf(cn)===Wt.prototype||(cn=function(Cn){return Wt.from(Cn)}(cn)),Vn?In.endEmitted?fn.emit("error",new Error("stream.unshift() after end event")):dn(fn,In,cn,!0):In.ended?fn.emit("error",new Error("stream.push() after EOF")):(In.reading=!1,In.decoder&&!bn?(cn=In.decoder.write(cn),In.objectMode||cn.length!==0?dn(fn,In,cn,!1):rn(fn,In)):dn(fn,In,cn,!1))):Vn||(In.reading=!1)),function(Cn){return!Cn.ended&&(Cn.needReadable||Cn.lengthcn.highWaterMark&&(cn.highWaterMark=function(bn){return bn>=8388608?bn=8388608:(bn--,bn|=bn>>>1,bn|=bn>>>2,bn|=bn>>>4,bn|=bn>>>8,bn|=bn>>>16,bn++),bn}(fn)),fn<=cn.length?fn:cn.ended?cn.length:(cn.needReadable=!0,0))}function En(fn){var cn=fn._readableState;cn.needReadable=!1,cn.emittedReadable||(Mt("emitReadable",cn.flowing),cn.emittedReadable=!0,cn.sync?Ut.nextTick(an,fn):an(fn))}function an(fn){Mt("emit readable"),fn.emit("readable"),_n(fn)}function rn(fn,cn){cn.readingMore||(cn.readingMore=!0,Ut.nextTick(gn,fn,cn))}function gn(fn,cn){for(var bn=cn.length;!cn.reading&&!cn.flowing&&!cn.ended&&cn.length=cn.length?(bn=cn.decoder?cn.buffer.join(""):cn.buffer.length===1?cn.buffer.head.data:cn.buffer.concat(cn.length),cn.buffer.clear()):bn=function(Vn,Mn,Zn){var In;return VnWn.length?Wn.length:Cn;if(An===Wn.length?wn+=Wn:wn+=Wn.slice(0,Cn),(Cn-=An)===0){An===Wn.length?(++Fn,hn.next?kn.head=hn.next:kn.head=kn.tail=null):(kn.head=hn,hn.data=Wn.slice(An));break}++Fn}return kn.length-=Fn,wn}(Vn,Mn):function(Cn,kn){var hn=Wt.allocUnsafe(Cn),Fn=kn.head,wn=1;for(Fn.data.copy(hn),Cn-=Fn.data.length;Fn=Fn.next;){var Wn=Fn.data,An=Cn>Wn.length?Wn.length:Cn;if(Wn.copy(hn,hn.length-Cn,0,An),(Cn-=An)===0){An===Wn.length?(++wn,Fn.next?kn.head=Fn.next:kn.head=kn.tail=null):(kn.head=Fn,Fn.data=Wn.slice(An));break}++wn}return kn.length-=wn,hn}(Vn,Mn),In}(fn,cn.buffer,cn.decoder),bn);var bn}function pn(fn){var cn=fn._readableState;if(cn.length>0)throw new Error('"endReadable()" called on non-empty stream');cn.endEmitted||(cn.ended=!0,Ut.nextTick(Rn,cn,fn))}function Rn(fn,cn){fn.endEmitted||fn.length!==0||(fn.endEmitted=!0,cn.readable=!1,cn.emit("end"))}function Sn(fn,cn){for(var bn=0,Vn=fn.length;bn=cn.highWaterMark||cn.ended))return Mt("read: emitReadable",cn.length,cn.ended),cn.length===0&&cn.ended?pn(this):En(this),null;if((fn=Qn(fn,cn))===0&&cn.ended)return cn.length===0&&pn(this),null;var Vn,Mn=cn.needReadable;return Mt("need readable",Mn),(cn.length===0||cn.length-fn0?vn(fn,cn):null)===null?(cn.needReadable=!0,fn=0):cn.length-=fn,cn.length===0&&(cn.ended||(cn.needReadable=!0),bn!==fn&&cn.ended&&pn(this)),Vn!==null&&this.emit("data",Vn),Vn},sn.prototype._read=function(fn){this.emit("error",new Error("_read() is not implemented"))},sn.prototype.pipe=function(fn,cn){var bn=this,Vn=this._readableState;switch(Vn.pipesCount){case 0:Vn.pipes=fn;break;case 1:Vn.pipes=[Vn.pipes,fn];break;default:Vn.pipes.push(fn)}Vn.pipesCount+=1,Mt("pipe count=%d opts=%j",Vn.pipesCount,cn);var Mn=(!cn||cn.end!==!1)&&fn!==ot.stdout&&fn!==ot.stderr?In:Pn;function Zn(jn,$n){Mt("onunpipe"),jn===bn&&$n&&$n.hasUnpiped===!1&&($n.hasUnpiped=!0,Mt("cleanup"),fn.removeListener("close",Wn),fn.removeListener("finish",An),fn.removeListener("drain",Cn),fn.removeListener("error",wn),fn.removeListener("unpipe",Zn),bn.removeListener("end",In),bn.removeListener("end",Pn),bn.removeListener("data",Fn),kn=!0,!Vn.awaitDrain||fn._writableState&&!fn._writableState.needDrain||Cn())}function In(){Mt("onend"),fn.end()}Vn.endEmitted?Ut.nextTick(Mn):bn.once("end",Mn),fn.on("unpipe",Zn);var Cn=function(jn){return function(){var $n=jn._readableState;Mt("pipeOnDrain",$n.awaitDrain),$n.awaitDrain&&$n.awaitDrain--,$n.awaitDrain===0&&Bt(jn,"data")&&($n.flowing=!0,_n(jn))}}(bn);fn.on("drain",Cn);var kn=!1,hn=!1;function Fn(jn){Mt("ondata"),hn=!1,fn.write(jn)!==!1||hn||((Vn.pipesCount===1&&Vn.pipes===fn||Vn.pipesCount>1&&Sn(Vn.pipes,fn)!==-1)&&!kn&&(Mt("false write response, pause",bn._readableState.awaitDrain),bn._readableState.awaitDrain++,hn=!0),bn.pause())}function wn(jn){Mt("onerror",jn),Pn(),fn.removeListener("error",wn),Bt(fn,"error")===0&&fn.emit("error",jn)}function Wn(){fn.removeListener("finish",An),Pn()}function An(){Mt("onfinish"),fn.removeListener("close",Wn),Pn()}function Pn(){Mt("unpipe"),bn.unpipe(fn)}return bn.on("data",Fn),function(jn,$n,pr){if(typeof jn.prependListener=="function")return jn.prependListener($n,pr);jn._events&&jn._events[$n]?Qt(jn._events[$n])?jn._events[$n].unshift(pr):jn._events[$n]=[pr,jn._events[$n]]:jn.on($n,pr)}(fn,"error",wn),fn.once("close",Wn),fn.once("finish",An),fn.emit("pipe",bn),Vn.flowing||(Mt("pipe resume"),bn.resume()),fn},sn.prototype.unpipe=function(fn){var cn=this._readableState,bn={hasUnpiped:!1};if(cn.pipesCount===0)return this;if(cn.pipesCount===1)return fn&&fn!==cn.pipes||(fn||(fn=cn.pipes),cn.pipes=null,cn.pipesCount=0,cn.flowing=!1,fn&&fn.emit("unpipe",this,bn)),this;if(!fn){var Vn=cn.pipes,Mn=cn.pipesCount;cn.pipes=null,cn.pipesCount=0,cn.flowing=!1;for(var Zn=0;Zn0?this.tail.next=Qt:this.head=Qt,this.tail=Qt,++this.length},Ut.prototype.unshift=function(Ft){var Qt={data:Ft,next:this.head};this.length===0&&(this.tail=Qt),this.head=Qt,++this.length},Ut.prototype.shift=function(){if(this.length!==0){var Ft=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,Ft}},Ut.prototype.clear=function(){this.head=this.tail=null,this.length=0},Ut.prototype.join=function(Ft){if(this.length===0)return"";for(var Qt=this.head,Bt=""+Qt.data;Qt=Qt.next;)Bt+=Ft+Qt.data;return Bt},Ut.prototype.concat=function(Ft){if(this.length===0)return it.alloc(0);if(this.length===1)return this.head.data;for(var Qt,Bt,Vt,Wt=it.allocUnsafe(Ft>>>0),Xt=this.head,Zt=0;Xt;)Qt=Xt.data,Bt=Wt,Vt=Zt,Qt.copy(Bt,Vt),Zt+=Xt.data.length,Xt=Xt.next;return Wt},Ut}(),ot&&ot.inspect&&ot.inspect.custom&&(et.exports.prototype[ot.inspect.custom]=function(){var Ut=ot.inspect({length:this.length});return this.constructor.name+" "+Ut})},function(et,tt){},function(et,tt,nt){var it=nt(5),ot=it.Buffer;function Ut(Qt,Bt){for(var Vt in Qt)Bt[Vt]=Qt[Vt]}function Ft(Qt,Bt,Vt){return ot(Qt,Bt,Vt)}ot.from&&ot.alloc&&ot.allocUnsafe&&ot.allocUnsafeSlow?et.exports=it:(Ut(it,tt),tt.Buffer=Ft),Ut(ot,Ft),Ft.from=function(Qt,Bt,Vt){if(typeof Qt=="number")throw new TypeError("Argument must not be a number");return ot(Qt,Bt,Vt)},Ft.alloc=function(Qt,Bt,Vt){if(typeof Qt!="number")throw new TypeError("Argument must be a number");var Wt=ot(Qt);return Bt!==void 0?typeof Vt=="string"?Wt.fill(Bt,Vt):Wt.fill(Bt):Wt.fill(0),Wt},Ft.allocUnsafe=function(Qt){if(typeof Qt!="number")throw new TypeError("Argument must be a number");return ot(Qt)},Ft.allocUnsafeSlow=function(Qt){if(typeof Qt!="number")throw new TypeError("Argument must be a number");return it.SlowBuffer(Qt)}},function(et,tt,nt){var it=nt(13),ot=nt(3).LEVEL,Ut=nt(20),Ft=et.exports=function(){var Qt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Ut.call(this,Qt),!Qt.transport||typeof Qt.transport.log!="function")throw new Error("Invalid transport, must be an object with a log method.");function Bt(Vt){this.emit("error",Vt,this.transport)}this.transport=Qt.transport,this.level=this.level||Qt.transport.level,this.handleExceptions=this.handleExceptions||Qt.transport.handleExceptions,this._deprecated(),this.transport.__winstonError||(this.transport.__winstonError=Bt.bind(this),this.transport.on("error",this.transport.__winstonError))};it.inherits(Ft,Ut),Ft.prototype._write=function(Qt,Bt,Vt){if(this.silent||Qt.exception===!0&&!this.handleExceptions)return Vt(null);(!this.level||this.levels[this.level]>=this.levels[Qt[ot]])&&this.transport.log(Qt[ot],Qt.message,Qt,this._nop),Vt(null)},Ft.prototype._writev=function(Qt,Bt){for(var Vt=0;Vt"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}();return function(){var gn,un=Zt(an);if(rn){var Un=Zt(this).constructor;gn=Reflect.construct(un,arguments,Un)}else gn=un.apply(this,arguments);return Wt(this,gn)}}function Wt(an,rn){return!rn||Ut(rn)!=="object"&&typeof rn!="function"?Xt(an):rn}function Xt(an){if(an===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return an}function Zt(an){return(Zt=Object.setPrototypeOf?Object.getPrototypeOf:function(rn){return rn.__proto__||Object.getPrototypeOf(rn)})(an)}var Yt=nt(65),Mt=nt(56),Gt=nt(149),en=nt(159),tn=nt(3).MESSAGE,ln=nt(33),nn=ln.Stream,sn=ln.PassThrough,Kt=nt(20),dn=nt(38)("winston:file"),Qn=nt(18),En=nt(187);et.exports=function(an){(function(_n,vn){if(typeof vn!="function"&&vn!==null)throw new TypeError("Super expression must either be null or a function");_n.prototype=Object.create(vn&&vn.prototype,{constructor:{value:_n,writable:!0,configurable:!0}}),vn&&Bt(_n,vn)})(Un,an);var rn,gn,un=Vt(Un);function Un(){var _n,vn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};function pn(Rn){for(var Sn=arguments.length,fn=new Array(Sn>1?Sn-1:0),cn=1;cn1&&arguments[1]!==void 0?arguments[1]:function(){};if(this.silent)return pn(),!0;if(this._drain)this._stream.once("drain",function(){vn._drain=!1,vn.log(_n,pn)});else{if(!this._rotate){var Rn="".concat(_n[tn]).concat(this.eol),Sn=ot.byteLength(Rn);this._pendingSize+=Sn,this._opening&&!this.rotatedWhileOpening&&this._needsNewFile(this._size+this._pendingSize)&&(this.rotatedWhileOpening=!0);var fn=this._stream.write(Rn,cn.bind(this));return fn?pn():(this._drain=!0,this._stream.once("drain",function(){vn._drain=!1,pn()})),dn("written",fn,this._drain),this.finishIfEnding(),fn}this._stream.once("rotate",function(){vn._rotate=!1,vn.log(_n,pn)})}function cn(){var bn=this;this._size+=Sn,this._pendingSize-=Sn,dn("logged %s %s",this._size,Rn),this.emit("logged",_n),this._opening||this._needsNewFile()&&(this._rotate=!0,this._endStream(function(){return bn._rotateFile()}))}}},{key:"query",value:function(_n,vn){typeof _n=="function"&&(vn=_n,_n={}),_n=function(Vn){return(Vn=Vn||{}).rows=Vn.rows||Vn.limit||10,Vn.start=Vn.start||0,Vn.until=Vn.until||new Date,Ut(Vn.until)!=="object"&&(Vn.until=new Date(Vn.until)),Vn.from=Vn.from||Vn.until-864e5,Ut(Vn.from)!=="object"&&(Vn.from=new Date(Vn.from)),Vn.order=Vn.order||"desc",Vn}(_n);var pn=Mt.join(this.dirname,this.filename),Rn="",Sn=[],fn=0,cn=Yt.createReadStream(pn,{encoding:"utf8"});function bn(Vn,Mn){try{var Zn=JSON.parse(Vn);(function(In){if(In&&Ut(In)==="object"){var Cn=new Date(In.timestamp);if(!(_n.from&&Cn<_n.from||_n.until&&Cn>_n.until||_n.level&&_n.level!==In.level))return!0}})(Zn)&&function(In){_n.rows&&Sn.length>=_n.rows&&_n.order!=="desc"?cn.readable&&cn.destroy():(_n.fields&&(In=_n.fields.reduce(function(Cn,kn){return Cn[kn]=In[kn],Cn},{})),_n.order==="desc"&&Sn.length>=_n.rows&&Sn.shift(),Sn.push(In))}(Zn)}catch(In){Mn||cn.emit("error",In)}}cn.on("error",function(Vn){if(cn.readable&&cn.destroy(),vn)return Vn.code!=="ENOENT"?vn(Vn):vn(null,Sn)}),cn.on("data",function(Vn){for(var Mn=(Vn=(Rn+Vn).split(/\n+/)).length-1,Zn=0;Zn=_n.start)&&bn(Vn[Zn]),fn++;Rn=Vn[Mn]}),cn.on("close",function(){Rn&&bn(Rn,!0),_n.order==="desc"&&(Sn=Sn.reverse()),vn&&vn(null,Sn)})}},{key:"stream",value:function(){var _n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},vn=Mt.join(this.dirname,this.filename),pn=new nn,Rn={file:vn,start:_n.start};return pn.destroy=En(Rn,function(Sn,fn){if(Sn)return pn.emit("error",Sn);try{pn.emit("data",fn),fn=JSON.parse(fn),pn.emit("log",fn)}catch(cn){pn.emit("error",cn)}}),pn}},{key:"open",value:function(){var _n=this;this.filename&&(this._opening||(this._opening=!0,this.stat(function(vn,pn){if(vn)return _n.emit("error",vn);dn("stat done: %s { size: %s }",_n.filename,pn),_n._size=pn,_n._dest=_n._createStream(_n._stream),_n._opening=!1,_n.once("open",function(){_n._stream.eventNames().includes("rotate")?_n._stream.emit("rotate"):_n._rotate=!1})})))}},{key:"stat",value:function(_n){var vn=this,pn=this._getFile(),Rn=Mt.join(this.dirname,pn);Yt.stat(Rn,function(Sn,fn){return Sn&&Sn.code==="ENOENT"?(dn("ENOENT ok",Rn),vn.filename=pn,_n(null,0)):Sn?(dn("err ".concat(Sn.code," ").concat(Rn)),_n(Sn)):!fn||vn._needsNewFile(fn.size)?vn._incFile(function(){return vn.stat(_n)}):(vn.filename=pn,void _n(null,fn.size))})}},{key:"close",value:function(_n){var vn=this;this._stream&&this._stream.end(function(){_n&&_n(),vn.emit("flush"),vn.emit("closed")})}},{key:"_needsNewFile",value:function(_n){return _n=_n||this._size,this.maxsize&&_n>=this.maxsize}},{key:"_onError",value:function(_n){this.emit("error",_n)}},{key:"_setupStream",value:function(_n){return _n.on("error",this._onError),_n}},{key:"_cleanupStream",value:function(_n){return _n.removeListener("error",this._onError),_n}},{key:"_rotateFile",value:function(){var _n=this;this._incFile(function(){return _n.open()})}},{key:"_endStream",value:function(){var _n=this,vn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){};this._dest?(this._stream.unpipe(this._dest),this._dest.end(function(){_n._cleanupStream(_n._dest),vn()})):vn()}},{key:"_createStream",value:function(_n){var vn=this,pn=Mt.join(this.dirname,this.filename);dn("create stream start",pn,this.options);var Rn=Yt.createWriteStream(pn,this.options).on("error",function(fn){return dn(fn)}).on("close",function(){return dn("close",Rn.path,Rn.bytesWritten)}).on("open",function(){dn("file open ok",pn),vn.emit("open",pn),_n.pipe(Rn),vn.rotatedWhileOpening&&(vn._stream=new sn,vn._stream.setMaxListeners(30),vn._rotateFile(),vn.rotatedWhileOpening=!1,vn._cleanupStream(Rn),_n.end())});if(dn("create stream ok",pn),this.zippedArchive){var Sn=en.createGzip();return Sn.pipe(Rn),Sn}return Rn}},{key:"_incFile",value:function(_n){dn("_incFile",this.filename);var vn=Mt.extname(this._basename),pn=Mt.basename(this._basename,vn);this.tailable?this._checkMaxFilesTailable(vn,pn,_n):(this._created+=1,this._checkMaxFilesIncrementing(vn,pn,_n))}},{key:"_getFile",value:function(){var _n=Mt.extname(this._basename),vn=Mt.basename(this._basename,_n),pn=this.rotationFormat?this.rotationFormat():this._created,Rn=!this.tailable&&this._created?"".concat(vn).concat(pn).concat(_n):"".concat(vn).concat(_n);return this.zippedArchive&&!this.tailable?"".concat(Rn,".gz"):Rn}},{key:"_checkMaxFilesIncrementing",value:function(_n,vn,pn){if(!this.maxFiles||this._created1;cn--)Sn.push(function(bn,Vn){var Mn=this,Zn="".concat(vn).concat(bn-1).concat(_n).concat(fn),In=Mt.join(this.dirname,Zn);Yt.exists(In,function(Cn){if(!Cn)return Vn(null);Zn="".concat(vn).concat(bn).concat(_n).concat(fn),Yt.rename(In,Mt.join(Mn.dirname,Zn),Vn)})}.bind(this,cn));Gt(Sn,function(){Yt.rename(Mt.join(Rn.dirname,"".concat(vn).concat(_n)),Mt.join(Rn.dirname,"".concat(vn,"1").concat(_n).concat(fn)),pn)})}}},{key:"_createLogDirIfNotExist",value:function(_n){Yt.existsSync(_n)||Yt.mkdirSync(_n,{recursive:!0})}}])&&Qt(rn.prototype,gn),Un}(Kt)}).call(this,nt(15).setImmediate,nt(5).Buffer)},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(Ft,Qt){return(0,it.default)(ot.default,Ft,Qt)};var it=Ut(nt(150)),ot=Ut(nt(154));function Ut(Ft){return Ft&&Ft.__esModule?Ft:{default:Ft}}et.exports=tt.default},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0});var it=Ft(nt(45)),ot=Ft(nt(25)),Ut=Ft(nt(31));function Ft(Qt){return Qt&&Qt.__esModule?Qt:{default:Qt}}tt.default=(0,Ut.default)((Qt,Bt,Vt)=>{var Wt=(0,it.default)(Bt)?[]:{};Qt(Bt,(Xt,Zt,Yt)=>{(0,ot.default)(Xt)((Mt,...Gt)=>{Gt.length<2&&([Gt]=Gt),Wt[Zt]=Gt,Yt(Mt)})},Xt=>Vt(Xt,Wt))},3),et.exports=tt.default},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(Vt){return(0,Ut.isAsync)(Vt)?function(...Wt){const Xt=Wt.pop();return Qt(Vt.apply(this,Wt),Xt)}:(0,it.default)(function(Wt,Xt){var Zt;try{Zt=Vt.apply(this,Wt)}catch(Yt){return Xt(Yt)}if(Zt&&typeof Zt.then=="function")return Qt(Zt,Xt);Xt(null,Zt)})};var it=Ft(nt(152)),ot=Ft(nt(153)),Ut=nt(25);function Ft(Vt){return Vt&&Vt.__esModule?Vt:{default:Vt}}function Qt(Vt,Wt){return Vt.then(Xt=>{Bt(Wt,null,Xt)},Xt=>{Bt(Wt,Xt&&Xt.message?Xt:new Error(Xt))})}function Bt(Vt,Wt,Xt){try{Vt(Wt,Xt)}catch(Zt){(0,ot.default)(Yt=>{throw Yt},Zt)}}et.exports=tt.default},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0}),tt.default=function(it){return function(...ot){var Ut=ot.pop();return it.call(this,ot,Ut)}},et.exports=tt.default},function(et,tt,nt){(function(it,ot){Object.defineProperty(tt,"__esModule",{value:!0}),tt.fallback=Vt,tt.wrap=Wt;var Ut,Ft=tt.hasQueueMicrotask=typeof queueMicrotask=="function"&&queueMicrotask,Qt=tt.hasSetImmediate=typeof it=="function"&&it,Bt=tt.hasNextTick=typeof ot=="object"&&typeof ot.nextTick=="function";function Vt(Xt){setTimeout(Xt,0)}function Wt(Xt){return(Zt,...Yt)=>Xt(()=>Zt(...Yt))}Ut=Ft?queueMicrotask:Qt?it:Bt?ot.nextTick:Vt,tt.default=Wt(Ut)}).call(this,nt(15).setImmediate,nt(2))},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0});var it=Ut(nt(66)),ot=Ut(nt(31));function Ut(Ft){return Ft&&Ft.__esModule?Ft:{default:Ft}}tt.default=(0,ot.default)(function(Ft,Qt,Bt){return(0,it.default)(Ft,1,Qt,Bt)},3),et.exports=tt.default},function(et,tt,nt){Object.defineProperty(tt,"__esModule",{value:!0});var it=Vt(nt(67)),ot=Vt(nt(156)),Ut=Vt(nt(68)),Ft=nt(25),Qt=Vt(nt(158)),Bt=Vt(nt(46));function Vt(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}}tt.default=Wt=>(Xt,Zt,Yt)=>{if(Yt=(0,it.default)(Yt),Wt<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!Xt)return Yt(null);if((0,Ft.isAsyncGenerator)(Xt))return(0,Qt.default)(Xt,Wt,Zt,Yt);if((0,Ft.isAsyncIterable)(Xt))return(0,Qt.default)(Xt[Symbol.asyncIterator](),Wt,Zt,Yt);var Mt=(0,ot.default)(Xt),Gt=!1,en=!1,tn=0,ln=!1;function nn(Kt,dn){if(!en)if(tn-=1,Kt)Gt=!0,Yt(Kt);else if(Kt===!1)Gt=!0,en=!0;else{if(dn===Bt.default||Gt&&tn<=0)return Gt=!0,Yt(null);ln||sn()}}function sn(){for(ln=!0;tn=Qt||Zt||Wt||(Zt=!0,Ft.next().then(({value:ln,done:nn})=>{if(!Xt&&!Wt){if(Zt=!1,nn)return Wt=!0,void(Yt<=0&&Vt(null));Yt++,Bt(ln,Mt,en),Mt++,Gt()}}).catch(tn))}function en(ln,nn){if(Yt-=1,!Xt)return ln?tn(ln):ln===!1?(Wt=!0,void(Xt=!0)):nn===Ut.default||Wt&&Yt<=0?(Wt=!0,Vt(null)):void Gt()}function tn(ln){Xt||(Zt=!1,Wt=!0,Vt(ln))}Gt()};var it,ot=nt(46),Ut=(it=ot)&&it.__esModule?it:{default:it};et.exports=tt.default},function(et,tt,nt){(function(it){var ot=nt(5).Buffer,Ut=nt(160).Transform,Ft=nt(168),Qt=nt(13),Bt=nt(74).ok,Vt=nt(5).kMaxLength,Wt="Cannot create final Buffer. It would be larger than 0x"+Vt.toString(16)+" bytes";Ft.Z_MIN_WINDOWBITS=8,Ft.Z_MAX_WINDOWBITS=15,Ft.Z_DEFAULT_WINDOWBITS=15,Ft.Z_MIN_CHUNK=64,Ft.Z_MAX_CHUNK=1/0,Ft.Z_DEFAULT_CHUNK=16384,Ft.Z_MIN_MEMLEVEL=1,Ft.Z_MAX_MEMLEVEL=9,Ft.Z_DEFAULT_MEMLEVEL=8,Ft.Z_MIN_LEVEL=-1,Ft.Z_MAX_LEVEL=9,Ft.Z_DEFAULT_LEVEL=Ft.Z_DEFAULT_COMPRESSION;for(var Xt=Object.keys(Ft),Zt=0;Zt=Vt?Mn=new RangeError(Wt):Vn=ot.concat(Sn,fn),Sn=[],vn.close(),Rn(Mn,Vn)}vn.on("error",function(Vn){vn.removeListener("end",bn),vn.removeListener("readable",cn),Rn(Vn)}),vn.on("end",bn),vn.end(pn),cn()}function nn(vn,pn){if(typeof pn=="string"&&(pn=ot.from(pn)),!ot.isBuffer(pn))throw new TypeError("Not a string or buffer");var Rn=vn._finishFlushFlag;return vn._processChunk(pn,Rn)}function sn(vn){if(!(this instanceof sn))return new sn(vn);un.call(this,vn,Ft.DEFLATE)}function Kt(vn){if(!(this instanceof Kt))return new Kt(vn);un.call(this,vn,Ft.INFLATE)}function dn(vn){if(!(this instanceof dn))return new dn(vn);un.call(this,vn,Ft.GZIP)}function Qn(vn){if(!(this instanceof Qn))return new Qn(vn);un.call(this,vn,Ft.GUNZIP)}function En(vn){if(!(this instanceof En))return new En(vn);un.call(this,vn,Ft.DEFLATERAW)}function an(vn){if(!(this instanceof an))return new an(vn);un.call(this,vn,Ft.INFLATERAW)}function rn(vn){if(!(this instanceof rn))return new rn(vn);un.call(this,vn,Ft.UNZIP)}function gn(vn){return vn===Ft.Z_NO_FLUSH||vn===Ft.Z_PARTIAL_FLUSH||vn===Ft.Z_SYNC_FLUSH||vn===Ft.Z_FULL_FLUSH||vn===Ft.Z_FINISH||vn===Ft.Z_BLOCK}function un(vn,pn){var Rn=this;if(this._opts=vn=vn||{},this._chunkSize=vn.chunkSize||tt.Z_DEFAULT_CHUNK,Ut.call(this,vn),vn.flush&&!gn(vn.flush))throw new Error("Invalid flush flag: "+vn.flush);if(vn.finishFlush&&!gn(vn.finishFlush))throw new Error("Invalid flush flag: "+vn.finishFlush);if(this._flushFlag=vn.flush||Ft.Z_NO_FLUSH,this._finishFlushFlag=vn.finishFlush!==void 0?vn.finishFlush:Ft.Z_FINISH,vn.chunkSize&&(vn.chunkSizett.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+vn.chunkSize);if(vn.windowBits&&(vn.windowBitstt.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+vn.windowBits);if(vn.level&&(vn.leveltt.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+vn.level);if(vn.memLevel&&(vn.memLeveltt.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+vn.memLevel);if(vn.strategy&&vn.strategy!=tt.Z_FILTERED&&vn.strategy!=tt.Z_HUFFMAN_ONLY&&vn.strategy!=tt.Z_RLE&&vn.strategy!=tt.Z_FIXED&&vn.strategy!=tt.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+vn.strategy);if(vn.dictionary&&!ot.isBuffer(vn.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new Ft.Zlib(pn);var Sn=this;this._hadError=!1,this._handle.onerror=function(bn,Vn){Un(Sn),Sn._hadError=!0;var Mn=new Error(bn);Mn.errno=Vn,Mn.code=tt.codes[Vn],Sn.emit("error",Mn)};var fn=tt.Z_DEFAULT_COMPRESSION;typeof vn.level=="number"&&(fn=vn.level);var cn=tt.Z_DEFAULT_STRATEGY;typeof vn.strategy=="number"&&(cn=vn.strategy),this._handle.init(vn.windowBits||tt.Z_DEFAULT_WINDOWBITS,fn,vn.memLevel||tt.Z_DEFAULT_MEMLEVEL,cn,vn.dictionary),this._buffer=ot.allocUnsafe(this._chunkSize),this._offset=0,this._level=fn,this._strategy=cn,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!Rn._handle},configurable:!0,enumerable:!0})}function Un(vn,pn){pn&&it.nextTick(pn),vn._handle&&(vn._handle.close(),vn._handle=null)}function _n(vn){vn.emit("close")}Object.defineProperty(tt,"codes",{enumerable:!0,value:Object.freeze(Mt),writable:!1}),tt.Deflate=sn,tt.Inflate=Kt,tt.Gzip=dn,tt.Gunzip=Qn,tt.DeflateRaw=En,tt.InflateRaw=an,tt.Unzip=rn,tt.createDeflate=function(vn){return new sn(vn)},tt.createInflate=function(vn){return new Kt(vn)},tt.createDeflateRaw=function(vn){return new En(vn)},tt.createInflateRaw=function(vn){return new an(vn)},tt.createGzip=function(vn){return new dn(vn)},tt.createGunzip=function(vn){return new Qn(vn)},tt.createUnzip=function(vn){return new rn(vn)},tt.deflate=function(vn,pn,Rn){return typeof pn=="function"&&(Rn=pn,pn={}),ln(new sn(pn),vn,Rn)},tt.deflateSync=function(vn,pn){return nn(new sn(pn),vn)},tt.gzip=function(vn,pn,Rn){return typeof pn=="function"&&(Rn=pn,pn={}),ln(new dn(pn),vn,Rn)},tt.gzipSync=function(vn,pn){return nn(new dn(pn),vn)},tt.deflateRaw=function(vn,pn,Rn){return typeof pn=="function"&&(Rn=pn,pn={}),ln(new En(pn),vn,Rn)},tt.deflateRawSync=function(vn,pn){return nn(new En(pn),vn)},tt.unzip=function(vn,pn,Rn){return typeof pn=="function"&&(Rn=pn,pn={}),ln(new rn(pn),vn,Rn)},tt.unzipSync=function(vn,pn){return nn(new rn(pn),vn)},tt.inflate=function(vn,pn,Rn){return typeof pn=="function"&&(Rn=pn,pn={}),ln(new Kt(pn),vn,Rn)},tt.inflateSync=function(vn,pn){return nn(new Kt(pn),vn)},tt.gunzip=function(vn,pn,Rn){return typeof pn=="function"&&(Rn=pn,pn={}),ln(new Qn(pn),vn,Rn)},tt.gunzipSync=function(vn,pn){return nn(new Qn(pn),vn)},tt.inflateRaw=function(vn,pn,Rn){return typeof pn=="function"&&(Rn=pn,pn={}),ln(new an(pn),vn,Rn)},tt.inflateRawSync=function(vn,pn){return nn(new an(pn),vn)},Qt.inherits(un,Ut),un.prototype.params=function(vn,pn,Rn){if(vntt.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+vn);if(pn!=tt.Z_FILTERED&&pn!=tt.Z_HUFFMAN_ONLY&&pn!=tt.Z_RLE&&pn!=tt.Z_FIXED&&pn!=tt.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+pn);if(this._level!==vn||this._strategy!==pn){var Sn=this;this.flush(Ft.Z_SYNC_FLUSH,function(){Bt(Sn._handle,"zlib binding closed"),Sn._handle.params(vn,pn),Sn._hadError||(Sn._level=vn,Sn._strategy=pn,Rn&&Rn())})}else it.nextTick(Rn)},un.prototype.reset=function(){return Bt(this._handle,"zlib binding closed"),this._handle.reset()},un.prototype._flush=function(vn){this._transform(ot.alloc(0),"",vn)},un.prototype.flush=function(vn,pn){var Rn=this,Sn=this._writableState;(typeof vn=="function"||vn===void 0&&!pn)&&(pn=vn,vn=Ft.Z_FULL_FLUSH),Sn.ended?pn&&it.nextTick(pn):Sn.ending?pn&&this.once("end",pn):Sn.needDrain?pn&&this.once("drain",function(){return Rn.flush(vn,pn)}):(this._flushFlag=vn,this.write(ot.alloc(0),"",pn))},un.prototype.close=function(vn){Un(this,vn),it.nextTick(_n,this)},un.prototype._transform=function(vn,pn,Rn){var Sn,fn=this._writableState,cn=(fn.ending||fn.ended)&&(!vn||fn.length===vn.length);return vn===null||ot.isBuffer(vn)?this._handle?(cn?Sn=this._finishFlushFlag:(Sn=this._flushFlag,vn.length>=fn.length&&(this._flushFlag=this._opts.flush||Ft.Z_NO_FLUSH)),void this._processChunk(vn,Sn,Rn)):Rn(new Error("zlib binding closed")):Rn(new Error("invalid input"))},un.prototype._processChunk=function(vn,pn,Rn){var Sn=vn&&vn.length,fn=this._chunkSize-this._offset,cn=0,bn=this,Vn=typeof Rn=="function";if(!Vn){var Mn,Zn=[],In=0;this.on("error",function(wn){Mn=wn}),Bt(this._handle,"zlib binding closed");do var Cn=this._handle.writeSync(pn,vn,cn,Sn,this._buffer,this._offset,fn);while(!this._hadError&&Fn(Cn[0],Cn[1]));if(this._hadError)throw Mn;if(In>=Vt)throw Un(this),new RangeError(Wt);var kn=ot.concat(Zn,In);return Un(this),kn}Bt(this._handle,"zlib binding closed");var hn=this._handle.write(pn,vn,cn,Sn,this._buffer,this._offset,fn);function Fn(wn,Wn){if(this&&(this.buffer=null,this.callback=null),!bn._hadError){var An=fn-Wn;if(Bt(An>=0,"have should not go down"),An>0){var Pn=bn._buffer.slice(bn._offset,bn._offset+An);bn._offset+=An,Vn?bn.push(Pn):(Zn.push(Pn),In+=Pn.length)}if((Wn===0||bn._offset>=bn._chunkSize)&&(fn=bn._chunkSize,bn._offset=0,bn._buffer=ot.allocUnsafe(bn._chunkSize)),Wn===0){if(cn+=Sn-wn,Sn=wn,!Vn)return!0;var jn=bn._handle.write(pn,vn,cn,Sn,bn._buffer,bn._offset,bn._chunkSize);return jn.callback=Fn,void(jn.buffer=vn)}if(!Vn)return!1;Rn()}}hn.buffer=vn,hn.callback=Fn},Qt.inherits(sn,un),Qt.inherits(Kt,un),Qt.inherits(dn,un),Qt.inherits(Qn,un),Qt.inherits(En,un),Qt.inherits(an,un),Qt.inherits(rn,un)}).call(this,nt(2))},function(et,tt,nt){et.exports=ot;var it=nt(21).EventEmitter;function ot(){it.call(this)}nt(7)(ot,it),ot.Readable=nt(32),ot.Writable=nt(73),ot.Duplex=nt(165),ot.Transform=nt(166),ot.PassThrough=nt(167),ot.Stream=ot,ot.prototype.pipe=function(Ut,Ft){var Qt=this;function Bt(Gt){Ut.writable&&Ut.write(Gt)===!1&&Qt.pause&&Qt.pause()}function Vt(){Qt.readable&&Qt.resume&&Qt.resume()}Qt.on("data",Bt),Ut.on("drain",Vt),Ut._isStdio||Ft&&Ft.end===!1||(Qt.on("end",Xt),Qt.on("close",Zt));var Wt=!1;function Xt(){Wt||(Wt=!0,Ut.end())}function Zt(){Wt||(Wt=!0,typeof Ut.destroy=="function"&&Ut.destroy())}function Yt(Gt){if(Mt(),it.listenerCount(this,"error")===0)throw Gt}function Mt(){Qt.removeListener("data",Bt),Ut.removeListener("drain",Vt),Qt.removeListener("end",Xt),Qt.removeListener("close",Zt),Qt.removeListener("error",Yt),Ut.removeListener("error",Yt),Qt.removeListener("end",Mt),Qt.removeListener("close",Mt),Ut.removeListener("close",Mt)}return Qt.on("error",Yt),Ut.on("error",Yt),Qt.on("end",Mt),Qt.on("close",Mt),Ut.on("close",Mt),Ut.emit("pipe",Qt),Ut}},function(et,tt){},function(et,tt,nt){var it=nt(47).Buffer,ot=nt(163);et.exports=function(){function Ut(){(function(Ft,Qt){if(!(Ft instanceof Qt))throw new TypeError("Cannot call a class as a function")})(this,Ut),this.head=null,this.tail=null,this.length=0}return Ut.prototype.push=function(Ft){var Qt={data:Ft,next:null};this.length>0?this.tail.next=Qt:this.head=Qt,this.tail=Qt,++this.length},Ut.prototype.unshift=function(Ft){var Qt={data:Ft,next:this.head};this.length===0&&(this.tail=Qt),this.head=Qt,++this.length},Ut.prototype.shift=function(){if(this.length!==0){var Ft=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,Ft}},Ut.prototype.clear=function(){this.head=this.tail=null,this.length=0},Ut.prototype.join=function(Ft){if(this.length===0)return"";for(var Qt=this.head,Bt=""+Qt.data;Qt=Qt.next;)Bt+=Ft+Qt.data;return Bt},Ut.prototype.concat=function(Ft){if(this.length===0)return it.alloc(0);if(this.length===1)return this.head.data;for(var Qt,Bt,Vt,Wt=it.allocUnsafe(Ft>>>0),Xt=this.head,Zt=0;Xt;)Qt=Xt.data,Bt=Wt,Vt=Zt,Qt.copy(Bt,Vt),Zt+=Xt.data.length,Xt=Xt.next;return Wt},Ut}(),ot&&ot.inspect&&ot.inspect.custom&&(et.exports.prototype[ot.inspect.custom]=function(){var Ut=ot.inspect({length:this.length});return this.constructor.name+" "+Ut})},function(et,tt){},function(et,tt,nt){et.exports=Ut;var it=nt(72),ot=nt(17);function Ut(Ft){if(!(this instanceof Ut))return new Ut(Ft);it.call(this,Ft)}ot.inherits=nt(7),ot.inherits(Ut,it),Ut.prototype._transform=function(Ft,Qt,Bt){Bt(null,Ft)}},function(et,tt,nt){et.exports=nt(23)},function(et,tt,nt){et.exports=nt(32).Transform},function(et,tt,nt){et.exports=nt(32).PassThrough},function(et,tt,nt){(function(it,ot){var Ut=nt(74),Ft=nt(170),Qt=nt(171),Bt=nt(174),Vt=nt(177);for(var Wt in Vt)tt[Wt]=Vt[Wt];tt.NONE=0,tt.DEFLATE=1,tt.INFLATE=2,tt.GZIP=3,tt.GUNZIP=4,tt.DEFLATERAW=5,tt.INFLATERAW=6,tt.UNZIP=7;function Xt(Zt){if(typeof Zt!="number"||Zttt.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=Zt,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}Xt.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,Ut(this.init_done,"close before init"),Ut(this.mode<=tt.UNZIP),this.mode===tt.DEFLATE||this.mode===tt.GZIP||this.mode===tt.DEFLATERAW?Qt.deflateEnd(this.strm):this.mode!==tt.INFLATE&&this.mode!==tt.GUNZIP&&this.mode!==tt.INFLATERAW&&this.mode!==tt.UNZIP||Bt.inflateEnd(this.strm),this.mode=tt.NONE,this.dictionary=null)},Xt.prototype.write=function(Zt,Yt,Mt,Gt,en,tn,ln){return this._write(!0,Zt,Yt,Mt,Gt,en,tn,ln)},Xt.prototype.writeSync=function(Zt,Yt,Mt,Gt,en,tn,ln){return this._write(!1,Zt,Yt,Mt,Gt,en,tn,ln)},Xt.prototype._write=function(Zt,Yt,Mt,Gt,en,tn,ln,nn){if(Ut.equal(arguments.length,8),Ut(this.init_done,"write before init"),Ut(this.mode!==tt.NONE,"already finalized"),Ut.equal(!1,this.write_in_progress,"write already in progress"),Ut.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,Ut.equal(!1,Yt===void 0,"must provide flush value"),this.write_in_progress=!0,Yt!==tt.Z_NO_FLUSH&&Yt!==tt.Z_PARTIAL_FLUSH&&Yt!==tt.Z_SYNC_FLUSH&&Yt!==tt.Z_FULL_FLUSH&&Yt!==tt.Z_FINISH&&Yt!==tt.Z_BLOCK)throw new Error("Invalid flush value");if(Mt==null&&(Mt=it.alloc(0),en=0,Gt=0),this.strm.avail_in=en,this.strm.input=Mt,this.strm.next_in=Gt,this.strm.avail_out=nn,this.strm.output=tn,this.strm.next_out=ln,this.flush=Yt,!Zt)return this._process(),this._checkError()?this._afterSync():void 0;var sn=this;return ot.nextTick(function(){sn._process(),sn._after()}),this},Xt.prototype._afterSync=function(){var Zt=this.strm.avail_out,Yt=this.strm.avail_in;return this.write_in_progress=!1,[Yt,Zt]},Xt.prototype._process=function(){var Zt=null;switch(this.mode){case tt.DEFLATE:case tt.GZIP:case tt.DEFLATERAW:this.err=Qt.deflate(this.strm,this.flush);break;case tt.UNZIP:switch(this.strm.avail_in>0&&(Zt=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(Zt===null)break;if(this.strm.input[Zt]!==31){this.mode=tt.INFLATE;break}if(this.gzip_id_bytes_read=1,Zt++,this.strm.avail_in===1)break;case 1:if(Zt===null)break;this.strm.input[Zt]===139?(this.gzip_id_bytes_read=2,this.mode=tt.GUNZIP):this.mode=tt.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case tt.INFLATE:case tt.GUNZIP:case tt.INFLATERAW:for(this.err=Bt.inflate(this.strm,this.flush),this.err===tt.Z_NEED_DICT&&this.dictionary&&(this.err=Bt.inflateSetDictionary(this.strm,this.dictionary),this.err===tt.Z_OK?this.err=Bt.inflate(this.strm,this.flush):this.err===tt.Z_DATA_ERROR&&(this.err=tt.Z_NEED_DICT));this.strm.avail_in>0&&this.mode===tt.GUNZIP&&this.err===tt.Z_STREAM_END&&this.strm.next_in[0]!==0;)this.reset(),this.err=Bt.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},Xt.prototype._checkError=function(){switch(this.err){case tt.Z_OK:case tt.Z_BUF_ERROR:if(this.strm.avail_out!==0&&this.flush===tt.Z_FINISH)return this._error("unexpected end of file"),!1;break;case tt.Z_STREAM_END:break;case tt.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},Xt.prototype._after=function(){if(this._checkError()){var Zt=this.strm.avail_out,Yt=this.strm.avail_in;this.write_in_progress=!1,this.callback(Yt,Zt),this.pending_close&&this.close()}},Xt.prototype._error=function(Zt){this.strm.msg&&(Zt=this.strm.msg),this.onerror(Zt,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},Xt.prototype.init=function(Zt,Yt,Mt,Gt,en){Ut(arguments.length===4||arguments.length===5,"init(windowBits, level, memLevel, strategy, [dictionary])"),Ut(Zt>=8&&Zt<=15,"invalid windowBits"),Ut(Yt>=-1&&Yt<=9,"invalid compression level"),Ut(Mt>=1&&Mt<=9,"invalid memlevel"),Ut(Gt===tt.Z_FILTERED||Gt===tt.Z_HUFFMAN_ONLY||Gt===tt.Z_RLE||Gt===tt.Z_FIXED||Gt===tt.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(Yt,Zt,Mt,Gt,en),this._setDictionary()},Xt.prototype.params=function(){throw new Error("deflateParams Not supported")},Xt.prototype.reset=function(){this._reset(),this._setDictionary()},Xt.prototype._init=function(Zt,Yt,Mt,Gt,en){switch(this.level=Zt,this.windowBits=Yt,this.memLevel=Mt,this.strategy=Gt,this.flush=tt.Z_NO_FLUSH,this.err=tt.Z_OK,this.mode!==tt.GZIP&&this.mode!==tt.GUNZIP||(this.windowBits+=16),this.mode===tt.UNZIP&&(this.windowBits+=32),this.mode!==tt.DEFLATERAW&&this.mode!==tt.INFLATERAW||(this.windowBits=-1*this.windowBits),this.strm=new Ft,this.mode){case tt.DEFLATE:case tt.GZIP:case tt.DEFLATERAW:this.err=Qt.deflateInit2(this.strm,this.level,tt.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case tt.INFLATE:case tt.GUNZIP:case tt.INFLATERAW:case tt.UNZIP:this.err=Bt.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==tt.Z_OK&&this._error("Init error"),this.dictionary=en,this.write_in_progress=!1,this.init_done=!0},Xt.prototype._setDictionary=function(){if(this.dictionary!=null){switch(this.err=tt.Z_OK,this.mode){case tt.DEFLATE:case tt.DEFLATERAW:this.err=Qt.deflateSetDictionary(this.strm,this.dictionary)}this.err!==tt.Z_OK&&this._error("Failed to set dictionary")}},Xt.prototype._reset=function(){switch(this.err=tt.Z_OK,this.mode){case tt.DEFLATE:case tt.DEFLATERAW:case tt.GZIP:this.err=Qt.deflateReset(this.strm);break;case tt.INFLATE:case tt.INFLATERAW:case tt.GUNZIP:this.err=Bt.inflateReset(this.strm)}this.err!==tt.Z_OK&&this._error("Failed to reset stream")},tt.Zlib=Xt}).call(this,nt(5).Buffer,nt(2))},function(et,tt,nt){var it=Object.getOwnPropertySymbols,ot=Object.prototype.hasOwnProperty,Ut=Object.prototype.propertyIsEnumerable;function Ft(Qt){if(Qt==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(Qt)}et.exports=function(){try{if(!Object.assign)return!1;var Qt=new String("abc");if(Qt[5]="de",Object.getOwnPropertyNames(Qt)[0]==="5")return!1;for(var Bt={},Vt=0;Vt<10;Vt++)Bt["_"+String.fromCharCode(Vt)]=Vt;if(Object.getOwnPropertyNames(Bt).map(function(Xt){return Bt[Xt]}).join("")!=="0123456789")return!1;var Wt={};return"abcdefghijklmnopqrst".split("").forEach(function(Xt){Wt[Xt]=Xt}),Object.keys(Object.assign({},Wt)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}()?Object.assign:function(Qt,Bt){for(var Vt,Wt,Xt=Ft(Qt),Zt=1;Zt4?9:0)}function Xt(an){for(var rn=an.length;--rn>=0;)an[rn]=0}function Zt(an){var rn=an.state,gn=rn.pending;gn>an.avail_out&&(gn=an.avail_out),gn!==0&&(ot.arraySet(an.output,rn.pending_buf,rn.pending_out,gn,an.next_out),an.next_out+=gn,rn.pending_out+=gn,an.total_out+=gn,an.avail_out-=gn,rn.pending-=gn,rn.pending===0&&(rn.pending_out=0))}function Yt(an,rn){Ut._tr_flush_block(an,an.block_start>=0?an.block_start:-1,an.strstart-an.block_start,rn),an.block_start=an.strstart,Zt(an.strm)}function Mt(an,rn){an.pending_buf[an.pending++]=rn}function Gt(an,rn){an.pending_buf[an.pending++]=rn>>>8&255,an.pending_buf[an.pending++]=255&rn}function en(an,rn){var gn,un,Un=an.max_chain_length,_n=an.strstart,vn=an.prev_length,pn=an.nice_match,Rn=an.strstart>an.w_size-262?an.strstart-(an.w_size-262):0,Sn=an.window,fn=an.w_mask,cn=an.prev,bn=an.strstart+258,Vn=Sn[_n+vn-1],Mn=Sn[_n+vn];an.prev_length>=an.good_match&&(Un>>=2),pn>an.lookahead&&(pn=an.lookahead);do if(Sn[(gn=rn)+vn]===Mn&&Sn[gn+vn-1]===Vn&&Sn[gn]===Sn[_n]&&Sn[++gn]===Sn[_n+1]){_n+=2,gn++;do;while(Sn[++_n]===Sn[++gn]&&Sn[++_n]===Sn[++gn]&&Sn[++_n]===Sn[++gn]&&Sn[++_n]===Sn[++gn]&&Sn[++_n]===Sn[++gn]&&Sn[++_n]===Sn[++gn]&&Sn[++_n]===Sn[++gn]&&Sn[++_n]===Sn[++gn]&&_nvn){if(an.match_start=rn,vn=un,un>=pn)break;Vn=Sn[_n+vn-1],Mn=Sn[_n+vn]}}while((rn=cn[rn&fn])>Rn&&--Un!=0);return vn<=an.lookahead?vn:an.lookahead}function tn(an){var rn,gn,un,Un,_n,vn,pn,Rn,Sn,fn,cn=an.w_size;do{if(Un=an.window_size-an.lookahead-an.strstart,an.strstart>=cn+(cn-262)){ot.arraySet(an.window,an.window,cn,cn,0),an.match_start-=cn,an.strstart-=cn,an.block_start-=cn,rn=gn=an.hash_size;do un=an.head[--rn],an.head[rn]=un>=cn?un-cn:0;while(--gn);rn=gn=cn;do un=an.prev[--rn],an.prev[rn]=un>=cn?un-cn:0;while(--gn);Un+=cn}if(an.strm.avail_in===0)break;if(vn=an.strm,pn=an.window,Rn=an.strstart+an.lookahead,Sn=Un,fn=void 0,(fn=vn.avail_in)>Sn&&(fn=Sn),gn=fn===0?0:(vn.avail_in-=fn,ot.arraySet(pn,vn.input,vn.next_in,fn,Rn),vn.state.wrap===1?vn.adler=Ft(vn.adler,pn,fn,Rn):vn.state.wrap===2&&(vn.adler=Qt(vn.adler,pn,fn,Rn)),vn.next_in+=fn,vn.total_in+=fn,fn),an.lookahead+=gn,an.lookahead+an.insert>=3)for(_n=an.strstart-an.insert,an.ins_h=an.window[_n],an.ins_h=(an.ins_h<=3&&(an.ins_h=(an.ins_h<=3)if(un=Ut._tr_tally(an,an.strstart-an.match_start,an.match_length-3),an.lookahead-=an.match_length,an.match_length<=an.max_lazy_match&&an.lookahead>=3){an.match_length--;do an.strstart++,an.ins_h=(an.ins_h<=3&&(an.ins_h=(an.ins_h<4096)&&(an.match_length=2)),an.prev_length>=3&&an.match_length<=an.prev_length){Un=an.strstart+an.lookahead-3,un=Ut._tr_tally(an,an.strstart-1-an.prev_match,an.prev_length-3),an.lookahead-=an.prev_length-1,an.prev_length-=2;do++an.strstart<=Un&&(an.ins_h=(an.ins_h<15&&(vn=2,un-=16),Un<1||Un>9||gn!==8||un<8||un>15||rn<0||rn>9||_n<0||_n>4)return Vt(an,-2);un===8&&(un=9);var pn=new Kt;return an.state=pn,pn.strm=an,pn.wrap=vn,pn.gzhead=null,pn.w_bits=un,pn.w_size=1<an.pending_buf_size-5&&(gn=an.pending_buf_size-5);;){if(an.lookahead<=1){if(tn(an),an.lookahead===0&&rn===0)return 1;if(an.lookahead===0)break}an.strstart+=an.lookahead,an.lookahead=0;var un=an.block_start+gn;if((an.strstart===0||an.strstart>=un)&&(an.lookahead=an.strstart-un,an.strstart=un,Yt(an,!1),an.strm.avail_out===0)||an.strstart-an.block_start>=an.w_size-262&&(Yt(an,!1),an.strm.avail_out===0))return 1}return an.insert=0,rn===4?(Yt(an,!0),an.strm.avail_out===0?3:4):(an.strstart>an.block_start&&(Yt(an,!1),an.strm.avail_out),1)}),new sn(4,4,8,4,ln),new sn(4,5,16,8,ln),new sn(4,6,32,32,ln),new sn(4,4,16,16,nn),new sn(8,16,32,32,nn),new sn(8,16,128,128,nn),new sn(8,32,128,256,nn),new sn(32,128,258,1024,nn),new sn(32,258,258,4096,nn)],tt.deflateInit=function(an,rn){return En(an,rn,8,15,8,0)},tt.deflateInit2=En,tt.deflateReset=Qn,tt.deflateResetKeep=dn,tt.deflateSetHeader=function(an,rn){return an&&an.state?an.state.wrap!==2?-2:(an.state.gzhead=rn,0):-2},tt.deflate=function(an,rn){var gn,un,Un,_n;if(!an||!an.state||rn>5||rn<0)return an?Vt(an,-2):-2;if(un=an.state,!an.output||!an.input&&an.avail_in!==0||un.status===666&&rn!==4)return Vt(an,an.avail_out===0?-5:-2);if(un.strm=an,gn=un.last_flush,un.last_flush=rn,un.status===42)if(un.wrap===2)an.adler=0,Mt(un,31),Mt(un,139),Mt(un,8),un.gzhead?(Mt(un,(un.gzhead.text?1:0)+(un.gzhead.hcrc?2:0)+(un.gzhead.extra?4:0)+(un.gzhead.name?8:0)+(un.gzhead.comment?16:0)),Mt(un,255&un.gzhead.time),Mt(un,un.gzhead.time>>8&255),Mt(un,un.gzhead.time>>16&255),Mt(un,un.gzhead.time>>24&255),Mt(un,un.level===9?2:un.strategy>=2||un.level<2?4:0),Mt(un,255&un.gzhead.os),un.gzhead.extra&&un.gzhead.extra.length&&(Mt(un,255&un.gzhead.extra.length),Mt(un,un.gzhead.extra.length>>8&255)),un.gzhead.hcrc&&(an.adler=Qt(an.adler,un.pending_buf,un.pending,0)),un.gzindex=0,un.status=69):(Mt(un,0),Mt(un,0),Mt(un,0),Mt(un,0),Mt(un,0),Mt(un,un.level===9?2:un.strategy>=2||un.level<2?4:0),Mt(un,3),un.status=113);else{var vn=8+(un.w_bits-8<<4)<<8;vn|=(un.strategy>=2||un.level<2?0:un.level<6?1:un.level===6?2:3)<<6,un.strstart!==0&&(vn|=32),vn+=31-vn%31,un.status=113,Gt(un,vn),un.strstart!==0&&(Gt(un,an.adler>>>16),Gt(un,65535&an.adler)),an.adler=1}if(un.status===69)if(un.gzhead.extra){for(Un=un.pending;un.gzindex<(65535&un.gzhead.extra.length)&&(un.pending!==un.pending_buf_size||(un.gzhead.hcrc&&un.pending>Un&&(an.adler=Qt(an.adler,un.pending_buf,un.pending-Un,Un)),Zt(an),Un=un.pending,un.pending!==un.pending_buf_size));)Mt(un,255&un.gzhead.extra[un.gzindex]),un.gzindex++;un.gzhead.hcrc&&un.pending>Un&&(an.adler=Qt(an.adler,un.pending_buf,un.pending-Un,Un)),un.gzindex===un.gzhead.extra.length&&(un.gzindex=0,un.status=73)}else un.status=73;if(un.status===73)if(un.gzhead.name){Un=un.pending;do{if(un.pending===un.pending_buf_size&&(un.gzhead.hcrc&&un.pending>Un&&(an.adler=Qt(an.adler,un.pending_buf,un.pending-Un,Un)),Zt(an),Un=un.pending,un.pending===un.pending_buf_size)){_n=1;break}_n=un.gzindexUn&&(an.adler=Qt(an.adler,un.pending_buf,un.pending-Un,Un)),_n===0&&(un.gzindex=0,un.status=91)}else un.status=91;if(un.status===91)if(un.gzhead.comment){Un=un.pending;do{if(un.pending===un.pending_buf_size&&(un.gzhead.hcrc&&un.pending>Un&&(an.adler=Qt(an.adler,un.pending_buf,un.pending-Un,Un)),Zt(an),Un=un.pending,un.pending===un.pending_buf_size)){_n=1;break}_n=un.gzindexUn&&(an.adler=Qt(an.adler,un.pending_buf,un.pending-Un,Un)),_n===0&&(un.status=103)}else un.status=103;if(un.status===103&&(un.gzhead.hcrc?(un.pending+2>un.pending_buf_size&&Zt(an),un.pending+2<=un.pending_buf_size&&(Mt(un,255&an.adler),Mt(un,an.adler>>8&255),an.adler=0,un.status=113)):un.status=113),un.pending!==0){if(Zt(an),an.avail_out===0)return un.last_flush=-1,0}else if(an.avail_in===0&&Wt(rn)<=Wt(gn)&&rn!==4)return Vt(an,-5);if(un.status===666&&an.avail_in!==0)return Vt(an,-5);if(an.avail_in!==0||un.lookahead!==0||rn!==0&&un.status!==666){var pn=un.strategy===2?function(Rn,Sn){for(var fn;;){if(Rn.lookahead===0&&(tn(Rn),Rn.lookahead===0)){if(Sn===0)return 1;break}if(Rn.match_length=0,fn=Ut._tr_tally(Rn,0,Rn.window[Rn.strstart]),Rn.lookahead--,Rn.strstart++,fn&&(Yt(Rn,!1),Rn.strm.avail_out===0))return 1}return Rn.insert=0,Sn===4?(Yt(Rn,!0),Rn.strm.avail_out===0?3:4):Rn.last_lit&&(Yt(Rn,!1),Rn.strm.avail_out===0)?1:2}(un,rn):un.strategy===3?function(Rn,Sn){for(var fn,cn,bn,Vn,Mn=Rn.window;;){if(Rn.lookahead<=258){if(tn(Rn),Rn.lookahead<=258&&Sn===0)return 1;if(Rn.lookahead===0)break}if(Rn.match_length=0,Rn.lookahead>=3&&Rn.strstart>0&&(cn=Mn[bn=Rn.strstart-1])===Mn[++bn]&&cn===Mn[++bn]&&cn===Mn[++bn]){Vn=Rn.strstart+258;do;while(cn===Mn[++bn]&&cn===Mn[++bn]&&cn===Mn[++bn]&&cn===Mn[++bn]&&cn===Mn[++bn]&&cn===Mn[++bn]&&cn===Mn[++bn]&&cn===Mn[++bn]&&bnRn.lookahead&&(Rn.match_length=Rn.lookahead)}if(Rn.match_length>=3?(fn=Ut._tr_tally(Rn,1,Rn.match_length-3),Rn.lookahead-=Rn.match_length,Rn.strstart+=Rn.match_length,Rn.match_length=0):(fn=Ut._tr_tally(Rn,0,Rn.window[Rn.strstart]),Rn.lookahead--,Rn.strstart++),fn&&(Yt(Rn,!1),Rn.strm.avail_out===0))return 1}return Rn.insert=0,Sn===4?(Yt(Rn,!0),Rn.strm.avail_out===0?3:4):Rn.last_lit&&(Yt(Rn,!1),Rn.strm.avail_out===0)?1:2}(un,rn):it[un.level].func(un,rn);if(pn!==3&&pn!==4||(un.status=666),pn===1||pn===3)return an.avail_out===0&&(un.last_flush=-1),0;if(pn===2&&(rn===1?Ut._tr_align(un):rn!==5&&(Ut._tr_stored_block(un,0,0,!1),rn===3&&(Xt(un.head),un.lookahead===0&&(un.strstart=0,un.block_start=0,un.insert=0))),Zt(an),an.avail_out===0))return un.last_flush=-1,0}return rn!==4?0:un.wrap<=0?1:(un.wrap===2?(Mt(un,255&an.adler),Mt(un,an.adler>>8&255),Mt(un,an.adler>>16&255),Mt(un,an.adler>>24&255),Mt(un,255&an.total_in),Mt(un,an.total_in>>8&255),Mt(un,an.total_in>>16&255),Mt(un,an.total_in>>24&255)):(Gt(un,an.adler>>>16),Gt(un,65535&an.adler)),Zt(an),un.wrap>0&&(un.wrap=-un.wrap),un.pending!==0?0:1)},tt.deflateEnd=function(an){var rn;return an&&an.state?(rn=an.state.status)!==42&&rn!==69&&rn!==73&&rn!==91&&rn!==103&&rn!==113&&rn!==666?Vt(an,-2):(an.state=null,rn===113?Vt(an,-3):0):-2},tt.deflateSetDictionary=function(an,rn){var gn,un,Un,_n,vn,pn,Rn,Sn,fn=rn.length;if(!an||!an.state||(_n=(gn=an.state).wrap)===2||_n===1&&gn.status!==42||gn.lookahead)return-2;for(_n===1&&(an.adler=Ft(an.adler,rn,fn,0)),gn.wrap=0,fn>=gn.w_size&&(_n===0&&(Xt(gn.head),gn.strstart=0,gn.block_start=0,gn.insert=0),Sn=new ot.Buf8(gn.w_size),ot.arraySet(Sn,rn,fn-gn.w_size,gn.w_size,0),rn=Sn,fn=gn.w_size),vn=an.avail_in,pn=an.next_in,Rn=an.input,an.avail_in=fn,an.next_in=0,an.input=rn,tn(gn);gn.lookahead>=3;){un=gn.strstart,Un=gn.lookahead-2;do gn.ins_h=(gn.ins_h<=0;)cn[bn]=0}var Ut=[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],Ft=[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],Qt=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Bt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Vt=new Array(576);ot(Vt);var Wt=new Array(60);ot(Wt);var Xt=new Array(512);ot(Xt);var Zt=new Array(256);ot(Zt);var Yt=new Array(29);ot(Yt);var Mt,Gt,en,tn=new Array(30);function ln(cn,bn,Vn,Mn,Zn){this.static_tree=cn,this.extra_bits=bn,this.extra_base=Vn,this.elems=Mn,this.max_length=Zn,this.has_stree=cn&&cn.length}function nn(cn,bn){this.dyn_tree=cn,this.max_code=0,this.stat_desc=bn}function sn(cn){return cn<256?Xt[cn]:Xt[256+(cn>>>7)]}function Kt(cn,bn){cn.pending_buf[cn.pending++]=255&bn,cn.pending_buf[cn.pending++]=bn>>>8&255}function dn(cn,bn,Vn){cn.bi_valid>16-Vn?(cn.bi_buf|=bn<>16-cn.bi_valid,cn.bi_valid+=Vn-16):(cn.bi_buf|=bn<>>=1,Vn<<=1;while(--bn>0);return Vn>>>1}function an(cn,bn,Vn){var Mn,Zn,In=new Array(16),Cn=0;for(Mn=1;Mn<=15;Mn++)In[Mn]=Cn=Cn+Vn[Mn-1]<<1;for(Zn=0;Zn<=bn;Zn++){var kn=cn[2*Zn+1];kn!==0&&(cn[2*Zn]=En(In[kn]++,kn))}}function rn(cn){var bn;for(bn=0;bn<286;bn++)cn.dyn_ltree[2*bn]=0;for(bn=0;bn<30;bn++)cn.dyn_dtree[2*bn]=0;for(bn=0;bn<19;bn++)cn.bl_tree[2*bn]=0;cn.dyn_ltree[512]=1,cn.opt_len=cn.static_len=0,cn.last_lit=cn.matches=0}function gn(cn){cn.bi_valid>8?Kt(cn,cn.bi_buf):cn.bi_valid>0&&(cn.pending_buf[cn.pending++]=cn.bi_buf),cn.bi_buf=0,cn.bi_valid=0}function un(cn,bn,Vn,Mn){var Zn=2*bn,In=2*Vn;return cn[Zn]>1;Vn>=1;Vn--)Un(cn,In,Vn);Zn=hn;do Vn=cn.heap[1],cn.heap[1]=cn.heap[cn.heap_len--],Un(cn,In,1),Mn=cn.heap[1],cn.heap[--cn.heap_max]=Vn,cn.heap[--cn.heap_max]=Mn,In[2*Zn]=In[2*Vn]+In[2*Mn],cn.depth[Zn]=(cn.depth[Vn]>=cn.depth[Mn]?cn.depth[Vn]:cn.depth[Mn])+1,In[2*Vn+1]=In[2*Mn+1]=Zn,cn.heap[1]=Zn++,Un(cn,In,1);while(cn.heap_len>=2);cn.heap[--cn.heap_max]=cn.heap[1],function(wn,Wn){var An,Pn,jn,$n,pr,Sr,Qr=Wn.dyn_tree,Ir=Wn.max_code,yr=Wn.stat_desc.static_tree,Rr=Wn.stat_desc.has_stree,wr=Wn.stat_desc.extra_bits,br=Wn.stat_desc.extra_base,Nr=Wn.stat_desc.max_length,kr=0;for($n=0;$n<=15;$n++)wn.bl_count[$n]=0;for(Qr[2*wn.heap[wn.heap_max]+1]=0,An=wn.heap_max+1;An<573;An++)($n=Qr[2*Qr[2*(Pn=wn.heap[An])+1]+1]+1)>Nr&&($n=Nr,kr++),Qr[2*Pn+1]=$n,Pn>Ir||(wn.bl_count[$n]++,pr=0,Pn>=br&&(pr=wr[Pn-br]),Sr=Qr[2*Pn],wn.opt_len+=Sr*($n+pr),Rr&&(wn.static_len+=Sr*(yr[2*Pn+1]+pr)));if(kr!==0){do{for($n=Nr-1;wn.bl_count[$n]===0;)$n--;wn.bl_count[$n]--,wn.bl_count[$n+1]+=2,wn.bl_count[Nr]--,kr-=2}while(kr>0);for($n=Nr;$n!==0;$n--)for(Pn=wn.bl_count[$n];Pn!==0;)(jn=wn.heap[--An])>Ir||(Qr[2*jn+1]!==$n&&(wn.opt_len+=($n-Qr[2*jn+1])*Qr[2*jn],Qr[2*jn+1]=$n),Pn--)}}(cn,bn),an(In,Fn,cn.bl_count)}function pn(cn,bn,Vn){var Mn,Zn,In=-1,Cn=bn[1],kn=0,hn=7,Fn=4;for(Cn===0&&(hn=138,Fn=3),bn[2*(Vn+1)+1]=65535,Mn=0;Mn<=Vn;Mn++)Zn=Cn,Cn=bn[2*(Mn+1)+1],++kn>=7;Zn<30;Zn++)for(tn[Zn]=In<<7,bn=0;bn<1<0?(cn.strm.data_type===2&&(cn.strm.data_type=function(kn){var hn,Fn=4093624447;for(hn=0;hn<=31;hn++,Fn>>>=1)if(1&Fn&&kn.dyn_ltree[2*hn]!==0)return 0;if(kn.dyn_ltree[18]!==0||kn.dyn_ltree[20]!==0||kn.dyn_ltree[26]!==0)return 1;for(hn=32;hn<256;hn++)if(kn.dyn_ltree[2*hn]!==0)return 1;return 0}(cn)),vn(cn,cn.l_desc),vn(cn,cn.d_desc),Cn=function(kn){var hn;for(pn(kn,kn.dyn_ltree,kn.l_desc.max_code),pn(kn,kn.dyn_dtree,kn.d_desc.max_code),vn(kn,kn.bl_desc),hn=18;hn>=3&&kn.bl_tree[2*Bt[hn]+1]===0;hn--);return kn.opt_len+=3*(hn+1)+5+5+4,hn}(cn),Zn=cn.opt_len+3+7>>>3,(In=cn.static_len+3+7>>>3)<=Zn&&(Zn=In)):Zn=In=Vn+5,Vn+4<=Zn&&bn!==-1?fn(cn,bn,Vn,Mn):cn.strategy===4||In===Zn?(dn(cn,2+(Mn?1:0),3),_n(cn,Vt,Wt)):(dn(cn,4+(Mn?1:0),3),function(kn,hn,Fn,wn){var Wn;for(dn(kn,hn-257,5),dn(kn,Fn-1,5),dn(kn,wn-4,4),Wn=0;Wn>>8&255,cn.pending_buf[cn.d_buf+2*cn.last_lit+1]=255&bn,cn.pending_buf[cn.l_buf+cn.last_lit]=255&Vn,cn.last_lit++,bn===0?cn.dyn_ltree[2*Vn]++:(cn.matches++,bn--,cn.dyn_ltree[2*(Zt[Vn]+256+1)]++,cn.dyn_dtree[2*sn(bn)]++),cn.last_lit===cn.lit_bufsize-1},tt._tr_align=function(cn){dn(cn,2,3),Qn(cn,256,Vt),function(bn){bn.bi_valid===16?(Kt(bn,bn.bi_buf),bn.bi_buf=0,bn.bi_valid=0):bn.bi_valid>=8&&(bn.pending_buf[bn.pending++]=255&bn.bi_buf,bn.bi_buf>>=8,bn.bi_valid-=8)}(cn)}},function(et,tt,nt){et.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"}},function(et,tt,nt){var it=nt(37),ot=nt(75),Ut=nt(76),Ft=nt(175),Qt=nt(176);function Bt(nn){return(nn>>>24&255)+(nn>>>8&65280)+((65280&nn)<<8)+((255&nn)<<24)}function Vt(){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 it.Buf16(320),this.work=new it.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function Wt(nn){var sn;return nn&&nn.state?(sn=nn.state,nn.total_in=nn.total_out=sn.total=0,nn.msg="",sn.wrap&&(nn.adler=1&sn.wrap),sn.mode=1,sn.last=0,sn.havedict=0,sn.dmax=32768,sn.head=null,sn.hold=0,sn.bits=0,sn.lencode=sn.lendyn=new it.Buf32(852),sn.distcode=sn.distdyn=new it.Buf32(592),sn.sane=1,sn.back=-1,0):-2}function Xt(nn){var sn;return nn&&nn.state?((sn=nn.state).wsize=0,sn.whave=0,sn.wnext=0,Wt(nn)):-2}function Zt(nn,sn){var Kt,dn;return nn&&nn.state?(dn=nn.state,sn<0?(Kt=0,sn=-sn):(Kt=1+(sn>>4),sn<48&&(sn&=15)),sn&&(sn<8||sn>15)?-2:(dn.window!==null&&dn.wbits!==sn&&(dn.window=null),dn.wrap=Kt,dn.wbits=sn,Xt(nn))):-2}function Yt(nn,sn){var Kt,dn;return nn?(dn=new Vt,nn.state=dn,dn.window=null,(Kt=Zt(nn,sn))!==0&&(nn.state=null),Kt):-2}var Mt,Gt,en=!0;function tn(nn){if(en){var sn;for(Mt=new it.Buf32(512),Gt=new it.Buf32(32),sn=0;sn<144;)nn.lens[sn++]=8;for(;sn<256;)nn.lens[sn++]=9;for(;sn<280;)nn.lens[sn++]=7;for(;sn<288;)nn.lens[sn++]=8;for(Qt(1,nn.lens,0,288,Mt,0,nn.work,{bits:9}),sn=0;sn<32;)nn.lens[sn++]=5;Qt(2,nn.lens,0,32,Gt,0,nn.work,{bits:5}),en=!1}nn.lencode=Mt,nn.lenbits=9,nn.distcode=Gt,nn.distbits=5}function ln(nn,sn,Kt,dn){var Qn,En=nn.state;return En.window===null&&(En.wsize=1<=En.wsize?(it.arraySet(En.window,sn,Kt-En.wsize,En.wsize,0),En.wnext=0,En.whave=En.wsize):((Qn=En.wsize-En.wnext)>dn&&(Qn=dn),it.arraySet(En.window,sn,Kt-dn,Qn,En.wnext),(dn-=Qn)?(it.arraySet(En.window,sn,Kt-dn,dn,0),En.wnext=dn,En.whave=En.wsize):(En.wnext+=Qn,En.wnext===En.wsize&&(En.wnext=0),En.whave>>8&255,Kt.check=Ut(Kt.check,wn,2,0),un=0,Un=0,Kt.mode=2;break}if(Kt.flags=0,Kt.head&&(Kt.head.done=!1),!(1&Kt.wrap)||(((255&un)<<8)+(un>>8))%31){nn.msg="incorrect header check",Kt.mode=30;break}if((15&un)!=8){nn.msg="unknown compression method",Kt.mode=30;break}if(Un-=4,In=8+(15&(un>>>=4)),Kt.wbits===0)Kt.wbits=In;else if(In>Kt.wbits){nn.msg="invalid window size",Kt.mode=30;break}Kt.dmax=1<>8&1),512&Kt.flags&&(wn[0]=255&un,wn[1]=un>>>8&255,Kt.check=Ut(Kt.check,wn,2,0)),un=0,Un=0,Kt.mode=3;case 3:for(;Un<32;){if(rn===0)break e;rn--,un+=dn[En++]<>>8&255,wn[2]=un>>>16&255,wn[3]=un>>>24&255,Kt.check=Ut(Kt.check,wn,4,0)),un=0,Un=0,Kt.mode=4;case 4:for(;Un<16;){if(rn===0)break e;rn--,un+=dn[En++]<>8),512&Kt.flags&&(wn[0]=255&un,wn[1]=un>>>8&255,Kt.check=Ut(Kt.check,wn,2,0)),un=0,Un=0,Kt.mode=5;case 5:if(1024&Kt.flags){for(;Un<16;){if(rn===0)break e;rn--,un+=dn[En++]<>>8&255,Kt.check=Ut(Kt.check,wn,2,0)),un=0,Un=0}else Kt.head&&(Kt.head.extra=null);Kt.mode=6;case 6:if(1024&Kt.flags&&((pn=Kt.length)>rn&&(pn=rn),pn&&(Kt.head&&(In=Kt.head.extra_len-Kt.length,Kt.head.extra||(Kt.head.extra=new Array(Kt.head.extra_len)),it.arraySet(Kt.head.extra,dn,En,pn,In)),512&Kt.flags&&(Kt.check=Ut(Kt.check,dn,pn,En)),rn-=pn,En+=pn,Kt.length-=pn),Kt.length))break e;Kt.length=0,Kt.mode=7;case 7:if(2048&Kt.flags){if(rn===0)break e;pn=0;do In=dn[En+pn++],Kt.head&&In&&Kt.length<65536&&(Kt.head.name+=String.fromCharCode(In));while(In&&pn>9&1,Kt.head.done=!0),nn.adler=Kt.check=0,Kt.mode=12;break;case 10:for(;Un<32;){if(rn===0)break e;rn--,un+=dn[En++]<>>=7&Un,Un-=7&Un,Kt.mode=27;break}for(;Un<3;){if(rn===0)break e;rn--,un+=dn[En++]<>>=1)){case 0:Kt.mode=14;break;case 1:if(tn(Kt),Kt.mode=20,sn===6){un>>>=2,Un-=2;break e}break;case 2:Kt.mode=17;break;case 3:nn.msg="invalid block type",Kt.mode=30}un>>>=2,Un-=2;break;case 14:for(un>>>=7&Un,Un-=7&Un;Un<32;){if(rn===0)break e;rn--,un+=dn[En++]<>>16^65535)){nn.msg="invalid stored block lengths",Kt.mode=30;break}if(Kt.length=65535&un,un=0,Un=0,Kt.mode=15,sn===6)break e;case 15:Kt.mode=16;case 16:if(pn=Kt.length){if(pn>rn&&(pn=rn),pn>gn&&(pn=gn),pn===0)break e;it.arraySet(Qn,dn,En,pn,an),rn-=pn,En+=pn,gn-=pn,an+=pn,Kt.length-=pn;break}Kt.mode=12;break;case 17:for(;Un<14;){if(rn===0)break e;rn--,un+=dn[En++]<>>=5,Un-=5,Kt.ndist=1+(31&un),un>>>=5,Un-=5,Kt.ncode=4+(15&un),un>>>=4,Un-=4,Kt.nlen>286||Kt.ndist>30){nn.msg="too many length or distance symbols",Kt.mode=30;break}Kt.have=0,Kt.mode=18;case 18:for(;Kt.have>>=3,Un-=3}for(;Kt.have<19;)Kt.lens[Wn[Kt.have++]]=0;if(Kt.lencode=Kt.lendyn,Kt.lenbits=7,kn={bits:Kt.lenbits},Cn=Qt(0,Kt.lens,0,19,Kt.lencode,0,Kt.work,kn),Kt.lenbits=kn.bits,Cn){nn.msg="invalid code lengths set",Kt.mode=30;break}Kt.have=0,Kt.mode=19;case 19:for(;Kt.have>>16&255,bn=65535&Fn,!((fn=Fn>>>24)<=Un);){if(rn===0)break e;rn--,un+=dn[En++]<>>=fn,Un-=fn,Kt.lens[Kt.have++]=bn;else{if(bn===16){for(hn=fn+2;Un>>=fn,Un-=fn,Kt.have===0){nn.msg="invalid bit length repeat",Kt.mode=30;break}In=Kt.lens[Kt.have-1],pn=3+(3&un),un>>>=2,Un-=2}else if(bn===17){for(hn=fn+3;Un>>=fn)),un>>>=3,Un-=3}else{for(hn=fn+7;Un>>=fn)),un>>>=7,Un-=7}if(Kt.have+pn>Kt.nlen+Kt.ndist){nn.msg="invalid bit length repeat",Kt.mode=30;break}for(;pn--;)Kt.lens[Kt.have++]=In}}if(Kt.mode===30)break;if(Kt.lens[256]===0){nn.msg="invalid code -- missing end-of-block",Kt.mode=30;break}if(Kt.lenbits=9,kn={bits:Kt.lenbits},Cn=Qt(1,Kt.lens,0,Kt.nlen,Kt.lencode,0,Kt.work,kn),Kt.lenbits=kn.bits,Cn){nn.msg="invalid literal/lengths set",Kt.mode=30;break}if(Kt.distbits=6,Kt.distcode=Kt.distdyn,kn={bits:Kt.distbits},Cn=Qt(2,Kt.lens,Kt.nlen,Kt.ndist,Kt.distcode,0,Kt.work,kn),Kt.distbits=kn.bits,Cn){nn.msg="invalid distances set",Kt.mode=30;break}if(Kt.mode=20,sn===6)break e;case 20:Kt.mode=21;case 21:if(rn>=6&&gn>=258){nn.next_out=an,nn.avail_out=gn,nn.next_in=En,nn.avail_in=rn,Kt.hold=un,Kt.bits=Un,Ft(nn,vn),an=nn.next_out,Qn=nn.output,gn=nn.avail_out,En=nn.next_in,dn=nn.input,rn=nn.avail_in,un=Kt.hold,Un=Kt.bits,Kt.mode===12&&(Kt.back=-1);break}for(Kt.back=0;cn=(Fn=Kt.lencode[un&(1<>>16&255,bn=65535&Fn,!((fn=Fn>>>24)<=Un);){if(rn===0)break e;rn--,un+=dn[En++]<>Vn)])>>>16&255,bn=65535&Fn,!(Vn+(fn=Fn>>>24)<=Un);){if(rn===0)break e;rn--,un+=dn[En++]<>>=Vn,Un-=Vn,Kt.back+=Vn}if(un>>>=fn,Un-=fn,Kt.back+=fn,Kt.length=bn,cn===0){Kt.mode=26;break}if(32&cn){Kt.back=-1,Kt.mode=12;break}if(64&cn){nn.msg="invalid literal/length code",Kt.mode=30;break}Kt.extra=15&cn,Kt.mode=22;case 22:if(Kt.extra){for(hn=Kt.extra;Un>>=Kt.extra,Un-=Kt.extra,Kt.back+=Kt.extra}Kt.was=Kt.length,Kt.mode=23;case 23:for(;cn=(Fn=Kt.distcode[un&(1<>>16&255,bn=65535&Fn,!((fn=Fn>>>24)<=Un);){if(rn===0)break e;rn--,un+=dn[En++]<>Vn)])>>>16&255,bn=65535&Fn,!(Vn+(fn=Fn>>>24)<=Un);){if(rn===0)break e;rn--,un+=dn[En++]<>>=Vn,Un-=Vn,Kt.back+=Vn}if(un>>>=fn,Un-=fn,Kt.back+=fn,64&cn){nn.msg="invalid distance code",Kt.mode=30;break}Kt.offset=bn,Kt.extra=15&cn,Kt.mode=24;case 24:if(Kt.extra){for(hn=Kt.extra;Un>>=Kt.extra,Un-=Kt.extra,Kt.back+=Kt.extra}if(Kt.offset>Kt.dmax){nn.msg="invalid distance too far back",Kt.mode=30;break}Kt.mode=25;case 25:if(gn===0)break e;if(pn=vn-gn,Kt.offset>pn){if((pn=Kt.offset-pn)>Kt.whave&&Kt.sane){nn.msg="invalid distance too far back",Kt.mode=30;break}pn>Kt.wnext?(pn-=Kt.wnext,Rn=Kt.wsize-pn):Rn=Kt.wnext-pn,pn>Kt.length&&(pn=Kt.length),Sn=Kt.window}else Sn=Qn,Rn=an-Kt.offset,pn=Kt.length;pn>gn&&(pn=gn),gn-=pn,Kt.length-=pn;do Qn[an++]=Sn[Rn++];while(--pn);Kt.length===0&&(Kt.mode=21);break;case 26:if(gn===0)break e;Qn[an++]=Kt.length,gn--,Kt.mode=21;break;case 27:if(Kt.wrap){for(;Un<32;){if(rn===0)break e;rn--,un|=dn[En++]<>>=Qn=dn>>>24,tn-=Qn,(Qn=dn>>>16&255)===0)Un[Bt++]=65535&dn;else{if(!(16&Qn)){if(!(64&Qn)){dn=ln[(65535&dn)+(en&(1<>>=Qn,tn-=Qn),tn<15&&(en+=un[Ft++]<>>=Qn=dn>>>24,tn-=Qn,!(16&(Qn=dn>>>16&255))){if(!(64&Qn)){dn=nn[(65535&dn)+(en&(1<Xt){it.msg="invalid distance too far back",Ut.mode=30;break e}if(en>>>=Qn,tn-=Qn,an>(Qn=Bt-Vt)){if((Qn=an-Qn)>Yt&&Ut.sane){it.msg="invalid distance too far back",Ut.mode=30;break e}if(rn=0,gn=Gt,Mt===0){if(rn+=Zt-Qn,Qn2;)Un[Bt++]=gn[rn++],Un[Bt++]=gn[rn++],Un[Bt++]=gn[rn++],En-=3;En&&(Un[Bt++]=gn[rn++],En>1&&(Un[Bt++]=gn[rn++]))}else{rn=Bt-an;do Un[Bt++]=Un[rn++],Un[Bt++]=Un[rn++],Un[Bt++]=Un[rn++],En-=3;while(En>2);En&&(Un[Bt++]=Un[rn++],En>1&&(Un[Bt++]=Un[rn++]))}break}}break}}while(Ft>3,en&=(1<<(tn-=En<<3))-1,it.next_in=Ft,it.next_out=Bt,it.avail_in=Ft=1&&Vn[Un]===0;Un--);if(_n>Un&&(_n=Un),Un===0)return Zt[Yt++]=20971520,Zt[Yt++]=20971520,Gt.bits=1,0;for(un=1;un0&&(Bt===0||Un!==1))return-1;for(Mn[1]=0,rn=1;rn<15;rn++)Mn[rn+1]=Mn[rn]+Vn[rn];for(gn=0;gn852||Bt===2&&Sn>592)return 1;for(;;){dn=rn-pn,Mt[gn]Kt?(Qn=Zn[In+Mt[gn]],En=cn[bn+Mt[gn]]):(Qn=96,En=0),en=1<>pn)+(tn-=en)]=dn<<24|Qn<<16|En|0;while(tn!==0);for(en=1<>=1;if(en!==0?(fn&=en-1,fn+=en):fn=0,gn++,--Vn[rn]==0){if(rn===Un)break;rn=Vt[Wt+Mt[gn]]}if(rn>_n&&(fn&nn)!==ln){for(pn===0&&(pn=_n),sn+=un,Rn=1<<(vn=rn-pn);vn+pn852||Bt===2&&Sn>592)return 1;Zt[ln=fn&nn]=_n<<24|vn<<16|sn-Yt|0}}return fn!==0&&(Zt[sn+fn]=rn-pn<<24|64<<16|0),Gt.bits=_n,0}},function(et,tt,nt){et.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}},function(et,tt){},function(et,tt,nt){function it(Vt,Wt){var Xt=Object.keys(Vt);if(Object.getOwnPropertySymbols){var Zt=Object.getOwnPropertySymbols(Vt);Wt&&(Zt=Zt.filter(function(Yt){return Object.getOwnPropertyDescriptor(Vt,Yt).enumerable})),Xt.push.apply(Xt,Zt)}return Xt}function ot(Vt,Wt,Xt){return Wt in Vt?Object.defineProperty(Vt,Wt,{value:Xt,enumerable:!0,configurable:!0,writable:!0}):Vt[Wt]=Xt,Vt}function Ut(Vt,Wt){for(var Xt=0;Xt0?this.tail.next=Yt:this.head=Yt,this.tail=Yt,++this.length}},{key:"unshift",value:function(Zt){var Yt={data:Zt,next:this.head};this.length===0&&(this.tail=Yt),this.head=Yt,++this.length}},{key:"shift",value:function(){if(this.length!==0){var Zt=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,Zt}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(Zt){if(this.length===0)return"";for(var Yt=this.head,Mt=""+Yt.data;Yt=Yt.next;)Mt+=Zt+Yt.data;return Mt}},{key:"concat",value:function(Zt){if(this.length===0)return Ft.alloc(0);for(var Yt,Mt,Gt,en=Ft.allocUnsafe(Zt>>>0),tn=this.head,ln=0;tn;)Yt=tn.data,Mt=en,Gt=ln,Ft.prototype.copy.call(Yt,Mt,Gt),ln+=tn.data.length,tn=tn.next;return en}},{key:"consume",value:function(Zt,Yt){var Mt;return Zten.length?en.length:Zt;if(tn===en.length?Gt+=en:Gt+=en.slice(0,Zt),(Zt-=tn)==0){tn===en.length?(++Mt,Yt.next?this.head=Yt.next:this.head=this.tail=null):(this.head=Yt,Yt.data=en.slice(tn));break}++Mt}return this.length-=Mt,Gt}},{key:"_getBuffer",value:function(Zt){var Yt=Ft.allocUnsafe(Zt),Mt=this.head,Gt=1;for(Mt.data.copy(Yt),Zt-=Mt.data.length;Mt=Mt.next;){var en=Mt.data,tn=Zt>en.length?en.length:Zt;if(en.copy(Yt,Yt.length-Zt,0,tn),(Zt-=tn)==0){tn===en.length?(++Gt,Mt.next?this.head=Mt.next:this.head=this.tail=null):(this.head=Mt,Mt.data=en.slice(tn));break}++Gt}return this.length-=Gt,Yt}},{key:Bt,value:function(Zt,Yt){return Qt(this,function(Mt){for(var Gt=1;Gt0,function(Kt){Gt||(Gt=Kt),Kt&&tn.forEach(Vt),sn||(tn.forEach(Vt),en(Gt))})});return Yt.reduce(Wt)}},function(et,tt,nt){var it=nt(186)(function ot(Ut,Ft){return(Ft=Ft||{}).namespace=Ut,Ft.prod=!0,Ft.dev=!1,Ft.force||ot.force?ot.yep(Ft):ot.nope(Ft)});et.exports=it},function(et,tt){var nt=[],it=[],ot=function(){};function Ut(Mt){return!~nt.indexOf(Mt)&&(nt.push(Mt),!0)}function Ft(Mt){ot=Mt}function Qt(Mt){for(var Gt=[],en=0;enBt.start)&&(Vt?Vt(null,Yt):Zt.emit("line",Yt)),Gt++,Yt=""),setTimeout(ln,1e3);var Kt=Xt.write(Wt.slice(0,sn));Vt||Zt.emit("data",Kt);for(var dn=(Kt=(Yt+Kt).split(/\n+/)).length-1,Qn=0;QnBt.start)&&(Vt?Vt(null,Kt[Qn]):Zt.emit("line",Kt[Qn])),Gt++;return Yt=Kt[dn],Mt+=sn,ln()});ot.close(tn,Qt)})()}),Vt?Zt.destroy:Zt}}).call(this,nt(5).Buffer)},function(et,tt,nt){(function(it,ot){function Ut(nn){return(Ut=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(sn){return typeof sn}:function(sn){return sn&&typeof Symbol=="function"&&sn.constructor===Symbol&&sn!==Symbol.prototype?"symbol":typeof sn})(nn)}function Ft(nn,sn){var Kt=Object.keys(nn);if(Object.getOwnPropertySymbols){var dn=Object.getOwnPropertySymbols(nn);sn&&(dn=dn.filter(function(Qn){return Object.getOwnPropertyDescriptor(nn,Qn).enumerable})),Kt.push.apply(Kt,dn)}return Kt}function Qt(nn){for(var sn=1;sn"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}();return function(){var Kt,dn=Mt(nn);if(sn){var Qn=Mt(this).constructor;Kt=Reflect.construct(dn,arguments,Qn)}else Kt=dn.apply(this,arguments);return Yt(this,Kt)}}function Yt(nn,sn){return!sn||Ut(sn)!=="object"&&typeof sn!="function"?function(Kt){if(Kt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Kt}(nn):sn}function Mt(nn){return(Mt=Object.setPrototypeOf?Object.getPrototypeOf:function(sn){return sn.__proto__||Object.getPrototypeOf(sn)})(nn)}var Gt=nt(83),en=nt(199),tn=nt(33).Stream,ln=nt(20);et.exports=function(nn){(function(En,an){if(typeof an!="function"&&an!==null)throw new TypeError("Super expression must either be null or a function");En.prototype=Object.create(an&&an.prototype,{constructor:{value:En,writable:!0,configurable:!0}}),an&&Xt(En,an)})(Qn,nn);var sn,Kt,dn=Zt(Qn);function Qn(){var En,an=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Vt(this,Qn),(En=dn.call(this,an)).options=an,En.name=an.name||"http",En.ssl=!!an.ssl,En.host=an.host||"localhost",En.port=an.port,En.auth=an.auth,En.path=an.path||"",En.agent=an.agent,En.headers=an.headers||{},En.headers["content-type"]="application/json",En.port||(En.port=En.ssl?443:80),En}return sn=Qn,(Kt=[{key:"log",value:function(En,an){var rn=this;this._request(En,function(gn,un){un&&un.statusCode!==200&&(gn=new Error("Invalid HTTP Status Code: ".concat(un.statusCode))),gn?rn.emit("warn",gn):rn.emit("logged",En)}),an&&it(an)}},{key:"query",value:function(En,an){typeof En=="function"&&(an=En,En={}),(En={method:"query",params:this.normalizeQuery(En)}).params.path&&(En.path=En.params.path,delete En.params.path),En.params.auth&&(En.auth=En.params.auth,delete En.params.auth),this._request(En,function(rn,gn,un){if(gn&&gn.statusCode!==200&&(rn=new Error("Invalid HTTP Status Code: ".concat(gn.statusCode))),rn)return an(rn);if(typeof un=="string")try{un=JSON.parse(un)}catch(Un){return an(Un)}an(null,un)})}},{key:"stream",value:function(){var En=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},an=new tn;(En={method:"stream",params:En}).params.path&&(En.path=En.params.path,delete En.params.path),En.params.auth&&(En.auth=En.params.auth,delete En.params.auth);var rn="",gn=this._request(En);return an.destroy=function(){return gn.destroy()},gn.on("data",function(un){for(var Un=(un=(rn+un).split(/\n+/)).length-1,_n=0;_n= 0x80 (not a basic code point)","invalid-input":"Invalid input"},Mt=Math.floor,Gt=String.fromCharCode;function en(an){throw new RangeError(Yt[an])}function tn(an,rn){for(var gn=an.length,un=[];gn--;)un[gn]=rn(an[gn]);return un}function ln(an,rn){var gn=an.split("@"),un="";return gn.length>1&&(un=gn[0]+"@",an=gn[1]),un+tn((an=an.replace(Zt,".")).split("."),rn).join(".")}function nn(an){for(var rn,gn,un=[],Un=0,_n=an.length;Un<_n;)(rn=an.charCodeAt(Un++))>=55296&&rn<=56319&&Un<_n?(64512&(gn=an.charCodeAt(Un++)))==56320?un.push(((1023&rn)<<10)+(1023&gn)+65536):(un.push(rn),Un--):un.push(rn);return un}function sn(an){return tn(an,function(rn){var gn="";return rn>65535&&(gn+=Gt((rn-=65536)>>>10&1023|55296),rn=56320|1023&rn),gn+=Gt(rn)}).join("")}function Kt(an,rn){return an+22+75*(an<26)-((rn!=0)<<5)}function dn(an,rn,gn){var un=0;for(an=gn?Mt(an/700):an>>1,an+=Mt(an/rn);an>455;un+=36)an=Mt(an/35);return Mt(un+36*an/(an+38))}function Qn(an){var rn,gn,un,Un,_n,vn,pn,Rn,Sn,fn,cn,bn=[],Vn=an.length,Mn=0,Zn=128,In=72;for((gn=an.lastIndexOf("-"))<0&&(gn=0),un=0;un=128&&en("not-basic"),bn.push(an.charCodeAt(un));for(Un=gn>0?gn+1:0;Un=Vn&&en("invalid-input"),((Rn=(cn=an.charCodeAt(Un++))-48<10?cn-22:cn-65<26?cn-65:cn-97<26?cn-97:36)>=36||Rn>Mt((Vt-Mn)/vn))&&en("overflow"),Mn+=Rn*vn,!(Rn<(Sn=pn<=In?1:pn>=In+26?26:pn-In));pn+=36)vn>Mt(Vt/(fn=36-Sn))&&en("overflow"),vn*=fn;In=dn(Mn-_n,rn=bn.length+1,_n==0),Mt(Mn/rn)>Vt-Zn&&en("overflow"),Zn+=Mt(Mn/rn),Mn%=rn,bn.splice(Mn++,0,Zn)}return sn(bn)}function En(an){var rn,gn,un,Un,_n,vn,pn,Rn,Sn,fn,cn,bn,Vn,Mn,Zn,In=[];for(bn=(an=nn(an)).length,rn=128,gn=0,_n=72,vn=0;vn=rn&&cnMt((Vt-gn)/(Vn=un+1))&&en("overflow"),gn+=(pn-rn)*Vn,rn=pn,vn=0;vnVt&&en("overflow"),cn==rn){for(Rn=gn,Sn=36;!(Rn<(fn=Sn<=_n?1:Sn>=_n+26?26:Sn-_n));Sn+=36)Zn=Rn-fn,Mn=36-fn,In.push(Gt(Kt(fn+Zn%Mn,0))),Rn=Mt(Zn/Mn);In.push(Gt(Kt(Rn,0))),_n=dn(gn,Vn,un==Un),gn=0,++un}++gn,++rn}return In.join("")}Bt={version:"1.4.1",ucs2:{decode:nn,encode:sn},decode:Qn,encode:En,toASCII:function(an){return ln(an,function(rn){return Xt.test(rn)?"xn--"+En(rn):rn})},toUnicode:function(an){return ln(an,function(rn){return Wt.test(rn)?Qn(rn.slice(4).toLowerCase()):rn})}},(Ut=function(){return Bt}.call(tt,nt,tt,it))===void 0||(it.exports=Ut)})()}).call(this,nt(194)(et),nt(6))},function(et,tt){et.exports=function(nt){return nt.webpackPolyfill||(nt.deprecate=function(){},nt.paths=[],nt.children||(nt.children=[]),Object.defineProperty(nt,"loaded",{enumerable:!0,get:function(){return nt.l}}),Object.defineProperty(nt,"id",{enumerable:!0,get:function(){return nt.i}}),nt.webpackPolyfill=1),nt}},function(et,tt,nt){et.exports={isString:function(it){return typeof it=="string"},isObject:function(it){return typeof it=="object"&&it!==null},isNull:function(it){return it===null},isNullOrUndefined:function(it){return it==null}}},function(et,tt,nt){tt.decode=tt.parse=nt(197),tt.encode=tt.stringify=nt(198)},function(et,tt,nt){function it(Ut,Ft){return Object.prototype.hasOwnProperty.call(Ut,Ft)}et.exports=function(Ut,Ft,Qt,Bt){Ft=Ft||"&",Qt=Qt||"=";var Vt={};if(typeof Ut!="string"||Ut.length===0)return Vt;var Wt=/\+/g;Ut=Ut.split(Ft);var Xt=1e3;Bt&&typeof Bt.maxKeys=="number"&&(Xt=Bt.maxKeys);var Zt=Ut.length;Xt>0&&Zt>Xt&&(Zt=Xt);for(var Yt=0;Yt=0?(Mt=ln.substr(0,nn),Gt=ln.substr(nn+1)):(Mt=ln,Gt=""),en=decodeURIComponent(Mt),tn=decodeURIComponent(Gt),it(Vt,en)?ot(Vt[en])?Vt[en].push(tn):Vt[en]=[Vt[en],tn]:Vt[en]=tn}return Vt};var ot=Array.isArray||function(Ut){return Object.prototype.toString.call(Ut)==="[object Array]"}},function(et,tt,nt){var it=function(Qt){switch(typeof Qt){case"string":return Qt;case"boolean":return Qt?"true":"false";case"number":return isFinite(Qt)?Qt:"";default:return""}};et.exports=function(Qt,Bt,Vt,Wt){return Bt=Bt||"&",Vt=Vt||"=",Qt===null&&(Qt=void 0),typeof Qt=="object"?Ut(Ft(Qt),function(Xt){var Zt=encodeURIComponent(it(Xt))+Vt;return ot(Qt[Xt])?Ut(Qt[Xt],function(Yt){return Zt+encodeURIComponent(it(Yt))}).join(Bt):Zt+encodeURIComponent(it(Qt[Xt]))}).join(Bt):Wt?encodeURIComponent(it(Wt))+Vt+encodeURIComponent(it(Qt)):""};var ot=Array.isArray||function(Qt){return Object.prototype.toString.call(Qt)==="[object Array]"};function Ut(Qt,Bt){if(Qt.map)return Qt.map(Bt);for(var Vt=[],Wt=0;Wt"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}();return function(){var tn,ln=Wt(Gt);if(en){var nn=Wt(this).constructor;tn=Reflect.construct(ln,arguments,nn)}else tn=ln.apply(this,arguments);return Vt(this,tn)}}function Vt(Gt,en){return!en||ot(en)!=="object"&&typeof en!="function"?function(tn){if(tn===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return tn}(Gt):en}function Wt(Gt){return(Wt=Object.setPrototypeOf?Object.getPrototypeOf:function(en){return en.__proto__||Object.getPrototypeOf(en)})(Gt)}var Xt=nt(87),Zt=nt(3).MESSAGE,Yt=nt(18),Mt=nt(20);et.exports=function(Gt){(function(sn,Kt){if(typeof Kt!="function"&&Kt!==null)throw new TypeError("Super expression must either be null or a function");sn.prototype=Object.create(Kt&&Kt.prototype,{constructor:{value:sn,writable:!0,configurable:!0}}),Kt&&Qt(sn,Kt)})(nn,Gt);var en,tn,ln=Bt(nn);function nn(){var sn,Kt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Ut(this,nn),sn=ln.call(this,Kt),!Kt.stream||!Xt(Kt.stream))throw new Error("options.stream is required.");return sn._stream=Kt.stream,sn._stream.setMaxListeners(1/0),sn.isObjectMode=Kt.stream._writableState.objectMode,sn.eol=Kt.eol||Yt.EOL,sn}return en=nn,(tn=[{key:"log",value:function(sn,Kt){var dn=this;if(it(function(){return dn.emit("logged",sn)}),this.isObjectMode)return this._stream.write(sn),void(Kt&&Kt());this._stream.write("".concat(sn[Zt]).concat(this.eol)),Kt&&Kt()}}])&&Ft(en.prototype,tn),nn}(Mt)}).call(this,nt(15).setImmediate)},function(et,tt,nt){(function(it){function ot(un,Un,_n){return Un in un?Object.defineProperty(un,Un,{value:_n,enumerable:!0,configurable:!0,writable:!0}):un[Un]=_n,un}function Ut(un){return(Ut=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})(un)}function Ft(un,Un){for(var _n=0;_n"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}();return function(){var _n,vn=Wt(un);if(Un){var pn=Wt(this).constructor;_n=Reflect.construct(vn,arguments,pn)}else _n=vn.apply(this,arguments);return Vt(this,_n)}}function Vt(un,Un){return!Un||Ut(Un)!=="object"&&typeof Un!="function"?function(_n){if(_n===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return _n}(un):Un}function Wt(un){return(Wt=Object.setPrototypeOf?Object.getPrototypeOf:function(Un){return Un.__proto__||Object.getPrototypeOf(Un)})(un)}var Xt=nt(33),Zt=Xt.Stream,Yt=Xt.Transform,Mt=nt(51),Gt=nt(3),en=Gt.LEVEL,tn=Gt.SPLAT,ln=nt(87),nn=nt(89),sn=nt(93),Kt=nt(205),dn=nt(206),Qn=nt(61).warn,En=nt(50),an=/%[scdjifoO%]/g,rn=function(un){(function(Rn,Sn){if(typeof Sn!="function"&&Sn!==null)throw new TypeError("Super expression must either be null or a function");Rn.prototype=Object.create(Sn&&Sn.prototype,{constructor:{value:Rn,writable:!0,configurable:!0}}),Sn&&Qt(Rn,Sn)})(pn,un);var Un,_n,vn=Bt(pn);function pn(Rn){var Sn;return function(fn,cn){if(!(fn instanceof cn))throw new TypeError("Cannot call a class as a function")}(this,pn),(Sn=vn.call(this,{objectMode:!0})).configure(Rn),Sn}return Un=pn,(_n=[{key:"child",value:function(Rn){var Sn=this;return Object.create(Sn,{write:{value:function(fn){var cn=Object.assign({},Rn,fn);fn instanceof Error&&(cn.stack=fn.stack,cn.message=fn.message),Sn.write(cn)}}})}},{key:"configure",value:function(){var Rn=this,Sn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},fn=Sn.silent,cn=Sn.format,bn=Sn.defaultMeta,Vn=Sn.levels,Mn=Sn.level,Zn=Mn===void 0?"info":Mn,In=Sn.exitOnError,Cn=In===void 0||In,kn=Sn.transports,hn=Sn.colors,Fn=Sn.emitErrs,wn=Sn.formatters,Wn=Sn.padLevels,An=Sn.rewriters,Pn=Sn.stripColors,jn=Sn.exceptionHandlers,$n=Sn.rejectionHandlers;if(this.transports.length&&this.clear(),this.silent=fn,this.format=cn||this.format||nt(207)(),this.defaultMeta=bn||null,this.levels=Vn||this.levels||En.npm.levels,this.level=Zn,this.exceptions=new nn(this),this.rejections=new sn(this),this.profilers={},this.exitOnError=Cn,kn&&(kn=Array.isArray(kn)?kn:[kn]).forEach(function(pr){return Rn.add(pr)}),hn||Fn||wn||Wn||An||Pn)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(` +`));jn&&this.exceptions.handle(jn),$n&&this.rejections.handle($n)}},{key:"isLevelEnabled",value:function(Rn){var Sn=this,fn=gn(this.levels,Rn);if(fn===null)return!1;var cn=gn(this.levels,this.level);return cn!==null&&(this.transports&&this.transports.length!==0?this.transports.findIndex(function(bn){var Vn=gn(Sn.levels,bn.level);return Vn===null&&(Vn=cn),Vn>=fn})!==-1:cn>=fn)}},{key:"log",value:function(Rn,Sn){for(var fn,cn,bn=arguments.length,Vn=new Array(bn>2?bn-2:0),Mn=2;Mn2?new Kt({transport:Rn}):Rn;if(!Sn._writableState||!Sn._writableState.objectMode)throw new Error("Transports must WritableStreams in objectMode. Set { objectMode: true }.");return this._onEvent("error",Sn),this._onEvent("warn",Sn),this.pipe(Sn),Rn.handleExceptions&&this.exceptions.handle(),Rn.handleRejections&&this.rejections.handle(),this}},{key:"remove",value:function(Rn){if(!Rn)return this;var Sn=Rn;return(!ln(Rn)||Rn.log.length>2)&&(Sn=this.transports.filter(function(fn){return fn.transport===Rn})[0]),Sn&&this.unpipe(Sn),this}},{key:"clear",value:function(){return this.unpipe(),this}},{key:"close",value:function(){return this.clear(),this.emit("close"),this}},{key:"setLevels",value:function(){Qn.deprecated("setLevels")}},{key:"query",value:function(Rn,Sn){typeof Rn=="function"&&(Sn=Rn,Rn={}),Rn=Rn||{};var fn={},cn=Object.assign({},Rn.query||{});Mt(this.transports.filter(function(bn){return!!bn.query}),function(bn,Vn){(function(Mn,Zn){Rn.query&&typeof Mn.formatQuery=="function"&&(Rn.query=Mn.formatQuery(cn)),Mn.query(Rn,function(In,Cn){if(In)return Zn(In);typeof Mn.formatResults=="function"&&(Cn=Mn.formatResults(Cn,Rn.format)),Zn(null,Cn)})})(bn,function(Mn,Zn){Vn&&((Zn=Mn||Zn)&&(fn[bn.name]=Zn),Vn()),Vn=null})},function(){return Sn(null,fn)})}},{key:"stream",value:function(){var Rn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Sn=new Zt,fn=[];return Sn._streams=fn,Sn.destroy=function(){for(var cn=fn.length;cn--;)fn[cn].destroy()},this.transports.filter(function(cn){return!!cn.stream}).forEach(function(cn){var bn=cn.stream(Rn);bn&&(fn.push(bn),bn.on("log",function(Vn){Vn.transport=Vn.transport||[],Vn.transport.push(cn.name),Sn.emit("log",Vn)}),bn.on("error",function(Vn){Vn.transport=Vn.transport||[],Vn.transport.push(cn.name),Sn.emit("error",Vn)}))}),Sn}},{key:"startTimer",value:function(){return new dn(this)}},{key:"profile",value:function(Rn){var Sn=Date.now();if(this.profilers[Rn]){var fn=this.profilers[Rn];delete this.profilers[Rn];for(var cn=arguments.length,bn=new Array(cn>1?cn-1:0),Vn=1;Vnit(ot,Ft)},et.exports=tt.default},function(et,tt,nt){var it=Object.prototype.toString;et.exports=function(ot){if(typeof ot.displayName=="string"&&ot.constructor.name)return ot.displayName;if(typeof ot.name=="string"&&ot.name)return ot.name;if(typeof ot=="object"&&ot.constructor&&typeof ot.constructor.name=="string")return ot.constructor.name;var Ut=ot.toString(),Ft=it.call(ot).slice(8,-1);return(Ut=Ft==="Function"?Ut.substring(Ut.indexOf("(")+1,Ut.indexOf(")")):Ft)||"anonymous"}},function(et,tt,nt){const it=nt(13),{LEVEL:ot}=nt(3),Ut=nt(20),Ft=et.exports=function(Qt={}){if(Ut.call(this,Qt),!Qt.transport||typeof Qt.transport.log!="function")throw new Error("Invalid transport, must be an object with a log method.");this.transport=Qt.transport,this.level=this.level||Qt.transport.level,this.handleExceptions=this.handleExceptions||Qt.transport.handleExceptions,this._deprecated(),this.transport.__winstonError||(this.transport.__winstonError=function(Bt){this.emit("error",Bt,this.transport)}.bind(this),this.transport.on("error",this.transport.__winstonError))};it.inherits(Ft,Ut),Ft.prototype._write=function(Qt,Bt,Vt){if(this.silent||Qt.exception===!0&&!this.handleExceptions)return Vt(null);(!this.level||this.levels[this.level]>=this.levels[Qt[ot]])&&this.transport.log(Qt[ot],Qt.message,Qt,this._nop),Vt(null)},Ft.prototype._writev=function(Qt,Bt){for(let Vt=0;Vt(Bt[Ut]=(Vt.stable?Ft.stableStringify:Ft)(Bt,Vt.replacer||Qt,Vt.space),Bt))}).call(this,nt(5).Buffer)},function(et,tt,nt){class it extends Error{constructor(Ut){super(`Format functions must be synchronous taking a two arguments: (info, opts) +Found: ${Ut.toString().split(` +`)[0]} +`),Error.captureStackTrace(this,it)}}et.exports=ot=>{if(ot.length>2)throw new it(ot);function Ut(Qt={}){this.options=Qt}function Ft(Qt){return new Ut(Qt)}return Ut.prototype.transform=ot,Ft.Format=Ut,Ft}},function(et,tt,nt){function it(Ft,Qt){if(!(Ft instanceof Qt))throw new TypeError("Cannot call a class as a function")}function ot(Ft,Qt){for(var Bt=0;Bt0&&arguments[0]!==void 0?arguments[0]:{};it(this,Ft),this.loggers=new Map,this.options=Vt}var Qt,Bt;return Qt=Ft,(Bt=[{key:"add",value:function(Vt,Wt){var Xt=this;if(!this.loggers.has(Vt)){var Zt=(Wt=Object.assign({},Wt||this.options)).transports||this.options.transports;Wt.transports=Zt?Zt.slice():[];var Yt=Ut(Wt);Yt.on("close",function(){return Xt._delete(Vt)}),this.loggers.set(Vt,Yt)}return this.loggers.get(Vt)}},{key:"get",value:function(Vt,Wt){return this.add(Vt,Wt)}},{key:"has",value:function(Vt){return!!this.loggers.has(Vt)}},{key:"close",value:function(Vt){var Wt=this;if(Vt)return this._removeLogger(Vt);this.loggers.forEach(function(Xt,Zt){return Wt._removeLogger(Zt)})}},{key:"_removeLogger",value:function(Vt){this.loggers.has(Vt)&&(this.loggers.get(Vt).close(),this._delete(Vt))}},{key:"_delete",value:function(Vt){this.loggers.delete(Vt)}}])&&ot(Qt.prototype,Bt),Ft}()},function(et,tt,nt){(function(it){const ot=nt(52),Ut=/^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$/;et.exports=function(Ft,Qt,Bt,Vt){let Wt,Xt,Zt=!1,Yt=!1;const Mt=nt(94);function Gt(ln){Vt(Qt,ln)}function en(ln,nn){let sn=`"${Qt}" ${nn}`;throw ln&&(sn=`${sn}`),Xt&&(sn=`${sn}. An example of a valid value would be: ${Xt}`),new ot(sn)}const tn={convertFromBase64:function(){return Gt("marking for base64 conversion"),Zt=!0,tn},default:function(ln){if(typeof ln=="number")Wt=ln.toString();else if(Array.isArray(ln)||typeof ln=="object"&&ln!==null)Wt=JSON.stringify(ln);else{if(typeof ln!="string")throw new ot("values passed to default() must be of Number, String, Array, or Object type");Wt=ln}return Gt(`setting default value to "${Wt}"`),tn},required:function(ln){return ln===void 0?(Gt("marked as required"),Yt=!0):(Gt(`setting required flag to ${ln}`),Yt=ln),tn},example:function(ln){return Xt=ln,tn}};return Object.entries({...Mt,...Bt}).forEach(([ln,nn])=>{tn[ln]=function(sn){return function(){let Kt=Ft[Qt];if(Gt(`will be read from the environment using "${sn.name}" accessor`),Kt===void 0)if(Wt===void 0&&Yt)Gt("was not found in the environment, but is required to be set"),en(void 0,"is a required variable, but it was not set");else{if(Wt===void 0)return void Gt("was not found in the environment, but is not required. returning undefined");Gt(`was not found in the environment, parsing default value "${Wt}" instead`),Kt=Wt}Yt&&(Gt("verifying variable value is not an empty string"),Kt.trim().length===0&&en(void 0,"is a required variable, but its value was empty")),Zt&&(Gt("verifying variable is a valid base64 string"),Kt.match(Ut)||en(Kt,"should be a valid base64 string if using convertFromBase64"),Gt("converting from base64 to utf8 string"),Kt=it.from(Kt,"base64").toString());const dn=[Kt].concat(Array.prototype.slice.call(arguments));try{Gt(`passing value "${Kt}" to "${sn.name}" accessor`);const Qn=sn.apply(sn,dn);return Gt(`parsed successfully, returning ${Qn}`),Qn}catch(Qn){en(Kt,Qn.message)}}}(nn)}),tn}}).call(this,nt(5).Buffer)},function(et,tt,nt){const it=nt(34);et.exports=function(ot,Ut){return Ut=Ut||",",ot.length?it(ot).split(Ut).filter(Boolean):[]}},function(et,tt,nt){et.exports=function(it){const ot=it.toLowerCase();if(ot!=="false"&&ot!=="true")throw new Error('should be either "true", "false", "TRUE", or "FALSE"');return ot!=="false"}},function(et,tt,nt){et.exports=function(it){const ot=it.toLowerCase();if(["false","0","true","1"].indexOf(ot)===-1)throw new Error('should be either "true", "false", "TRUE", "FALSE", 1, or 0');return!(ot==="0"||ot==="false")}},function(et,tt,nt){const it=nt(95);et.exports=function(ot){var Ut=it(ot);if(Ut>65535)throw new Error("cannot assign a port number greater than 65535");return Ut}},function(et,tt,nt){const it=nt(34);et.exports=function(ot,Ut){const Ft=it(ot);if(Ut.indexOf(Ft)<0)throw new Error(`should be one of [${Ut.join(", ")}]`);return Ft}},function(et,tt,nt){const it=nt(54);et.exports=function(ot){const Ut=it(ot);if(Ut>0)throw new Error("should be a negative float");return Ut}},function(et,tt,nt){const it=nt(54);et.exports=function(ot){const Ut=it(ot);if(Ut<0)throw new Error("should be a positive float");return Ut}},function(et,tt,nt){const it=nt(53);et.exports=function(ot){const Ut=it(ot);if(Ut>0)throw new Error("should be a negative integer");return Ut}},function(et,tt,nt){const it=nt(55);et.exports=function(ot){var Ut=it(ot);if(!Array.isArray(Ut))throw new Error("should be a parseable JSON Array");return Ut}},function(et,tt,nt){const it=nt(55);et.exports=function(ot){var Ut=it(ot);if(Array.isArray(Ut))throw new Error("should be a parseable JSON Object");return Ut}},function(et,tt,nt){et.exports=function(it,ot){try{RegExp(void 0,ot)}catch{throw new Error("invalid regexp flags")}try{return new RegExp(it,ot)}catch{throw new Error("should be a valid regexp")}}},function(et,tt,nt){const it=nt(96);et.exports=function(ot){return it(ot).toString()}},function(et,tt,nt){const it=nt(34),ot=/^(?:[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])+)\])$/;et.exports=function(Ut){const Ft=it(Ut);if(!ot.test(Ft))throw new Error("should be a valid email address");return Ft}},function(et,tt,nt){et.exports=function(it,ot){return function(Ut,Ft){ot&&ot.match(/prod|production/)||it(`env-var (${Ut}): ${Ft}`)}}},function(et,tt,nt){(function(it){(function(){var ot,Ut,Ft,Qt,Bt,Vt;typeof performance<"u"&&performance!==null&&performance.now?et.exports=function(){return performance.now()}:it!=null&&it.hrtime?(et.exports=function(){return(ot()-Bt)/1e6},Ut=it.hrtime,Qt=(ot=function(){var Wt;return 1e9*(Wt=Ut())[0]+Wt[1]})(),Vt=1e9*it.uptime(),Bt=Qt-Vt):Date.now?(et.exports=function(){return Date.now()-Ft},Ft=Date.now()):(et.exports=function(){return new Date().getTime()-Ft},Ft=new Date().getTime())}).call(this)}).call(this,nt(2))},function(et,tt,nt){(function(it){(function(ot){function Ut(Qt){if((Qt=Qt===void 0?"utf-8":Qt)!=="utf-8")throw new RangeError("Failed to construct 'TextEncoder': The encoding label provided ('"+Qt+"') is invalid.")}function Ft(Qt,Bt){if(Bt=Bt===void 0?{fatal:!1}:Bt,(Qt=Qt===void 0?"utf-8":Qt)!=="utf-8")throw new RangeError("Failed to construct 'TextDecoder': The encoding label provided ('"+Qt+"') is invalid.");if(Bt.fatal)throw Error("Failed to construct 'TextDecoder': the 'fatal' option is unsupported.")}if(ot.TextEncoder&&ot.TextDecoder)return!1;Object.defineProperty(Ut.prototype,"encoding",{value:"utf-8"}),Ut.prototype.encode=function(Qt,Bt){if((Bt=Bt===void 0?{stream:!1}:Bt).stream)throw Error("Failed to encode: the 'stream' option is unsupported.");Bt=0;for(var Vt=Qt.length,Wt=0,Xt=Math.max(32,Vt+(Vt>>1)+7),Zt=new Uint8Array(Xt>>3<<3);Bt=Yt){if(Bt=Yt)continue}if(Wt+4>Zt.length&&(Xt+=8,Xt=(Xt*=1+Bt/Qt.length*2)>>3<<3,(Mt=new Uint8Array(Xt)).set(Zt),Zt=Mt),(4294967168&Yt)==0)Zt[Wt++]=Yt;else{if(!(4294965248&Yt))Zt[Wt++]=Yt>>6&31|192;else if(!(4294901760&Yt))Zt[Wt++]=Yt>>12&15|224,Zt[Wt++]=Yt>>6&63|128;else{if(4292870144&Yt)continue;Zt[Wt++]=Yt>>18&7|240,Zt[Wt++]=Yt>>12&63|128,Zt[Wt++]=Yt>>6&63|128}Zt[Wt++]=63&Yt|128}}return Zt.slice(0,Wt)},Object.defineProperty(Ft.prototype,"encoding",{value:"utf-8"}),Object.defineProperty(Ft.prototype,"fatal",{value:!1}),Object.defineProperty(Ft.prototype,"ignoreBOM",{value:!1}),Ft.prototype.decode=function(Qt,Bt){if((Bt=Bt===void 0?{stream:!1}:Bt).stream)throw Error("Failed to decode: the 'stream' option is unsupported.");Bt=0;for(var Vt=(Qt=new Uint8Array(Qt)).length,Wt=[];Bt>>10&1023|55296),Xt=56320|1023&Xt),Wt.push(Xt))}return String.fromCharCode.apply(null,Wt)},ot.TextEncoder=Ut,ot.TextDecoder=Ft})(typeof window<"u"?window:it!==void 0?it:this)}).call(this,nt(6))},function(et,tt,nt){nt.r(tt),nt.d(tt,"AuthClient",function(){return Ut}),nt.d(tt,"RtcSignalingClient",function(){return Qt}),nt.d(tt,"Credentials",function(){return _n}),nt.d(tt,"SignalingPromiseClient",function(){return vn.SignalingPromiseClient}),nt.d(tt,"RtcClient",function(){return as}),nt.d(tt,"RtcClientV1",function(){return Ns}),nt.d(tt,"createRtcStreamMessage",function(){return kr});var it=nt(28),ot=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class Ut extends it.a{adminSignup(yn,Tn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/admin-signup",{token:Tn,method:"POST",body:yn})})}login(yn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/login",{method:"POST",body:yn,allowUnsafeRetries:!0})})}loginWithGoogleToken(yn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/login-google",{method:"POST",body:yn,allowUnsafeRetries:!0})})}refresh(yn,Tn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/refresh",{method:"POST",body:{refreshToken:yn,tokenExpirationSeconds:Tn},allowUnsafeRetries:!0})})}respondToNewPasswordRequiredChallenge(yn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/respond-to-new-password-required-challenge",{method:"POST",body:yn})})}forgotPassword(yn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/forgot-password",{method:"POST",body:{email:yn}})})}confirmForgotPassword(yn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/confirm-forgot-password",{method:"POST",body:yn})})}resendInvitation(yn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/resend-invitation",{method:"POST",body:{email:yn}})})}changePassword({token:yn,refreshToken:Tn,currentPassword:Dn,newPassword:zn}){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/change-password",{token:yn,method:"POST",body:{refreshToken:Tn,currentPassword:Dn,newPassword:zn}})})}getDeviceCredentials(yn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/device-credentials",{token:yn,method:"POST",allowUnsafeRetries:!0})})}impersonate(yn,Tn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/impersonate",{token:yn,method:"POST",allowUnsafeRetries:!0,body:{userId:Tn}})})}createServiceAccount(yn,Tn,Dn,zn){return ot(this,void 0,void 0,function*(){return yield this.fetch("auth/service-account",{token:yn,method:"POST",allowUnsafeRetries:!0,body:{name:Tn,roleId:Dn,tags:zn}})})}getFeatures(yn){return ot(this,void 0,void 0,function*(){return(yield this.fetch("auth/features",{token:yn})).features})}}var Ft=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class Qt extends it.a{createPeer(yn,Tn){return Ft(this,void 0,void 0,function*(){return yield this.fetch("peers",{token:yn,method:"POST",body:Tn})})}getPeers(yn){return Ft(this,void 0,void 0,function*(){return(yield this.fetch("peers",{token:yn})).items})}refreshPeer(yn,Tn){return Ft(this,void 0,void 0,function*(){yield this.fetch(`peers/${Tn}/refresh`,{token:yn,method:"POST",allowUnsafeRetries:!0})})}createSession(yn,Tn){return Ft(this,void 0,void 0,function*(){return yield this.fetch("sessions",{token:yn,method:"POST",body:Tn})})}refreshSession(yn,Tn){return Ft(this,void 0,void 0,function*(){yield this.fetch(`sessions/${Tn}/refresh`,{token:yn,method:"POST",allowUnsafeRetries:!0})})}deleteSession(yn,Tn){return Ft(this,void 0,void 0,function*(){yield this.fetch(`sessions/${Tn}`,{token:yn,method:"DELETE",allowUnsafeRetries:!0})})}getSessions(yn){return Ft(this,void 0,void 0,function*(){return(yield this.fetch("sessions",{token:yn})).items})}getIceServers(yn){return Ft(this,void 0,void 0,function*(){return(yield this.fetch("ice-servers",{token:yn})).items})}addSignals(yn,Tn,Dn){return Ft(this,void 0,void 0,function*(){yield this.fetch(`sessions/${Tn}/add-signals`,{token:yn,method:"POST",body:Dn})})}takeSignals(yn,Tn){return Ft(this,void 0,void 0,function*(){return(yield this.fetch(`sessions/${Tn}/take-signals`,{token:yn,method:"POST"})).items})}}var Bt=nt(1),Vt=nt(8),Wt=nt(14),Xt=nt.n(Wt),Zt=nt(103),Yt=nt.n(Zt),Mt=nt(4),Gt=nt(0),en=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class tn extends class{constructor(yn,Tn){this.type=yn,this.name=Tn}}{constructor(yn){super("simple","LogReporter"),this.message=yn}send(yn){return en(this,void 0,void 0,function*(){var Tn,Dn;Gt.a.debug(this.message,(Tn=yn.reduce((zn,Xn)=>Object.assign(Object.assign({},zn),{[Xn.name]:Xn.stat}),{}),Dn=zn=>{const{sum:Xn,count:tr}=zn,sr=Xn/tr;return Object.assign(Object.assign({},zn),{average:sr})},Object.keys(Tn).reduce((zn,Xn)=>Object.assign(Object.assign({},zn),{[Xn]:Dn(Tn[Xn])}),{})))})}}var ln=nt(39);function nn(dr){return!!dr.match(/^[a-zA-Z0-9-_.,:?'"()@\/\\#$+ ]{1,255}$/)}var sn=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};function Kt({func:dr,delay:yn,immediate:Tn=!1}){let Dn=!1,zn=setTimeout(function tr(){return sn(this,void 0,void 0,function*(){if(Dn)return;const sr=new Date().getTime();try{Xn=dr(),yield Xn}finally{if(!Dn){const cr=new Date().getTime();zn=setTimeout(tr,Math.max(yn-(cr-sr),0))}}})},Tn?0:yn),Xn=Promise.resolve();return{stop(){return sn(this,void 0,void 0,function*(){Dn=!0,clearTimeout(zn),yield Xn})}}}var dn=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};const Qn=nt(225);class En{constructor(yn){this.buffer={},this.reporters=[],this.flushInterval=Kt({func:()=>this.flushStats(),delay:En.samplePeriodMs}),this.tags=this.filterTags((yn==null?void 0:yn.tags)||{app:Mt.a,version:Mt.j,namespace:Mt.i,instanceId:ln.a})}shutdown(){return dn(this,void 0,void 0,function*(){yield this.flushInterval.stop(),yield this.flushStats(),yield Object(Vt.a)(2*Bt.a.second)})}aggregate(yn,Tn,Dn){this.addToBuffer(this.buffer,this.encodeKey({metric:yn,tags:this.filterTags(Dn||{})}),typeof Tn=="number"?{min:Tn,max:Tn,sum:Tn,count:1}:Tn)}increment(yn,Tn){this.aggregate(yn,1,Tn)}timer(yn,Tn,Dn){return dn(this,void 0,void 0,function*(){const zn=Qn(),Xn=yield Tn(),tr=Qn();return this.aggregate(yn,tr-zn,Dn),Xn})}registerStatsReporter(yn){this.reporters.push(yn)}setTag(yn,Tn){const Dn=this.filterTags({[yn]:Tn});this.tags=Object.assign(Object.assign({},this.tags),Dn)}addToBuffer(yn,Tn,Dn){if(yn[Tn]){const{min:zn,max:Xn,sum:tr,count:sr}=yn[Tn];yn[Tn]={min:Math.min(zn,Dn.min),max:Math.max(Xn,Dn.max),sum:tr+Dn.sum,count:sr+Dn.count}}else yn[Tn]=Dn}write(yn){return dn(this,void 0,void 0,function*(){yield Promise.all(this.reporters.map(Tn=>dn(this,void 0,void 0,function*(){let Dn;const zn={};switch(Tn.type){case"simple":for(const[tr,sr]of Object.entries(yn)){const{metric:cr}=this.decodeKey(tr);this.addToBuffer(zn,this.encodeKey({metric:cr}),sr)}Dn=zn;break;case"tagged":Dn=yn;break;default:(function(tr){throw new Error(`Unreachable type encountered (${tr})`)})(Tn.type)}const Xn=Object.entries(Dn);if(Xn.length>0)return Tn.send(Xn.map(([tr,sr])=>{const{metric:cr,tags:nr}=this.decodeKey(tr);return{name:cr,tags:Object.assign(Object.assign({},nr),this.tags),stat:sr}}),En.samplePeriodMs).catch(tr=>{Gt.a.debug(`Failed to write stats to ${Tn.name}`,{error:tr})})})))})}flushStats(){return dn(this,void 0,void 0,function*(){yield this.write(this.buffer),this.buffer={}})}encodeKey(yn){return Xt()(Object.assign(Object.assign({},yn),Object.keys(yn.tags||{}).length>0?{tags:yn.tags}:{}))}decodeKey(yn){return JSON.parse(yn)}filterTags(yn){return Object.entries(yn||{}).reduce((Tn,[Dn,zn])=>(nn(Dn)&&nn(zn)&&(Tn[Dn]=zn),Tn),{})}}En.samplePeriodMs=5*Bt.a.minute;const an=!!Mt.c,rn=new En;an||["local","on-prem"].includes(Mt.i)||rn.registerStatsReporter(new tn("stats"));var gn=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class un extends class{constructor(yn){this.options=yn,this.cache=new Yt.a(Object.assign(Object.assign(Object.assign({},yn.dispose||yn.disposeAfter?{ttlAutopurge:!0}:{}),yn),{dispose:(...Tn)=>{var Dn;Tn[2]==="evict"&&rn.increment("lru-eviction",{name:yn.name}),(Dn=yn.dispose)===null||Dn===void 0||Dn.call(yn,...Tn)},disposeAfter:(...Tn)=>{var Dn;this.updateStats(),(Dn=yn.disposeAfter)===null||Dn===void 0||Dn.call(yn,...Tn)}})),this.stringify=yn.fastStringify?JSON.stringify:Xt.a}set(yn,Tn,Dn){const zn=this.stringify(yn);if(!this.cache.set(zn,Tn,{ttl:Dn})){const Xn=this.cache.sizeCalculation?this.cache.sizeCalculation(Tn,zn):"unknown";throw Error(`Value too large (${Xn} > ${this.cache.max})`)}this.updateStats()}get(yn){const{name:Tn}=this.options,Dn=this.stringify(yn),zn=this.cache.getRemainingTTL(Dn);return zn<=0?rn.increment("cache-miss",{name:Tn}):zn!==1/0&&rn.aggregate("cache-item-ttl",zn,{name:Tn}),this.cache.get(Dn)}delete(yn){this.cache.delete(this.stringify(yn))}peek(yn){return this.cache.peek(this.stringify(yn))}size(){return this.cache.size}clear(){this.cache.clear()}forEach(yn){this.cache.forEach(yn)}purgeStale(){return this.cache.purgeStale()}updateStats(){const{name:yn}=this.options;rn.aggregate("cache-item-count",this.cache.size,{name:yn}),this.cache.calculatedSize!==void 0&&rn.aggregate("cache-length",this.cache.calculatedSize,{name:yn})}}{constructor(yn){if(super(yn),this.expireRejectedPromiseValues=yn.expireRejectedPromiseValues===void 0||yn.expireRejectedPromiseValues,this.rejectedPromiseValueTtl=yn.rejectedPromiseValueTtl!==void 0?yn.rejectedPromiseValueTtl:Bt.a.second,this.rejectedPromiseValueTtl<0)throw new Error("rejectedPromiseValueTtl must not be negative")}set(yn,Tn,Dn){super.set(yn,Tn,Dn),this.expireRejectedPromiseValues&&Tn.catch(()=>gn(this,void 0,void 0,function*(){yield Object(Vt.a)(this.rejectedPromiseValueTtl),this.peek(yn)===Tn&&this.delete(yn)}))}}var Un=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class _n{constructor(yn,Tn,Dn){this.authClient=yn,this.email=Tn,this.password=Dn,this.tokenTtlMs=1*Bt.a.hour,this.tokenCache=new un({name:"Credentials-tokenCache",max:100,ttl:this.tokenTtlMs-5*Bt.a.minute,fastStringify:!0})}getToken(){return Un(this,void 0,void 0,function*(){let yn=this.tokenCache.get(this.email);return yn||(yn=(()=>Un(this,void 0,void 0,function*(){const{authentication:Tn}=yield this.authClient.login({email:this.email,password:this.password,tokenExpirationSeconds:this.tokenTtlMs/Bt.a.second});if(!Tn)throw new Error("User account not verified.");return Tn.accessToken}))(),this.tokenCache.set(this.email,yn)),yn})}}var vn=nt(97),pn=nt(24),Rn=nt(228),Sn=nt(40),fn=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class cn extends Sn.a{constructor(yn){super(yn)}postLanRtcOffer(yn){return fn(this,void 0,void 0,function*(){return yield this.fetch("v1/lan-rtc-offer",{method:"POST",body:yn})})}}var bn=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};function Vn(dr){return bn(this,void 0,void 0,function*(){return(yield Promise.all(dr.map(yn=>yn.catch(Tn=>Tn)))).filter(yn=>yn instanceof Error)})}function Mn(dr,yn){if(dr===void 0)throw new Error(`Value is undefined${yn?`: ${yn}`:""}`)}function Zn(dr,yn){if(dr===null)throw new Error(`Value is null${yn?`: ${yn}`:""}`)}function In(dr){return Mn(dr),dr}function Cn(dr,yn){const Tn=dr.reduce((Dn,zn)=>[...Dn,...zn.urls],[]).filter(Dn=>kn(Dn,yn)).sort(Dn=>hn(Dn,"udp")?-1:0).shift();if(Tn)return Object.assign(Object.assign({},In(dr.find(Dn=>Dn.urls.includes(Tn)))),{urls:[Tn]})}function kn(dr,yn){switch(yn){case"stun":return/^stuns?:/.test(dr);case"turn":return/^turns?:/.test(dr)}}function hn(dr,yn){return dr.endsWith(`transport=${yn}`)}var Fn=nt(9);class wn extends Error{constructor(yn,Tn){super(`Deadline expired after ${yn}ms + ${Tn}ms`)}}class Wn{static withDeadline(yn,Tn){const Dn=new Promise((zn,Xn)=>{setTimeout(()=>{Xn(new wn(Tn,this.grpcCallDeadlineSlopMs))},Tn+this.grpcCallDeadlineSlopMs)});return Promise.race([yn,Dn])}}Wn.grpcCallDeadlineSlopMs=500*Bt.a.millisecond;var An=nt(29);const Pn={ordered:!1,maxPacketLifeTime:300*Bt.a.millisecond},jn={ordered:!0},$n={ordered:!0},pr={ordered:!1,maxRetransmits:0},Sr={ordered:!1,maxRetransmits:0},Qr=dr=>"received"in dr&&dr.received!==void 0,Ir=dr=>!("received"in dr)||dr.received===void 0,yr=2*Bt.a.second;function Rr(dr,yn={}){const Tn=Array.from(dr.values()),Dn=Tn.filter(Qr),zn=Dn.length>0,Xn=Math.max(...Dn.map(nr=>nr.received));let tr;if(zn){const nr=Tn.length,Kn=Dn.length,mr=Dn.map(eo=>eo.received-eo.sent),{standardDeviation:xr,mean:Gr,jitter:co}=function(eo){const oo=eo.length;if(oo===0)return{mean:NaN,standardDeviation:-1,jitter:NaN};const po=eo.reduce((no,Ko)=>no+Ko,0)/oo,Qo=Math.sqrt(eo.map(no=>Math.pow(no-po,2)).reduce((no,Ko)=>no+Ko)/oo);if(oo===1)return{mean:po,standardDeviation:Qo,jitter:NaN};let Ro=0;for(let no=1;noeo.sent{const[Kn,mr]=nr;mr.sent{var Xn,tr;return{streamId:zn,sentCount:(Xn=Tn.get(zn))!==null&&Xn!==void 0?Xn:0,receivedCount:(tr=Dn.get(zn))!==null&&tr!==void 0?tr:0}}),timestamp:yn}}incrementLocalSent(yn){const{localSent:Tn}=this.counts,Dn=wr(yn.header.stream);Tn.set(Dn,(Tn.get(Dn)||0)+1)}incrementLocalReceived(yn){const{localReceived:Tn}=this.counts,Dn=wr(yn.header.stream),zn=Tn.get(Dn)||0;if(zn===0){const{streamName:Xn,streamType:tr}=yn.header.stream;Gt.a.debug("RTC client received first message for stream",{streamName:Xn,streamType:tr})}Tn.set(Dn,zn+1)}uploadMetrics(){return br(this,void 0,void 0,function*(){const{sessionId:yn}=this,Tn=yield this.connection.peerConnection.getStats(),Dn={};Tn.forEach(nr=>Dn[nr.id]=nr),Gt.a.debug("rtc-stats",Object.assign(Object.assign({},Dn),{sessionId:yn}));const{localSent:zn,localReceived:Xn,remoteSent:tr,remoteReceived:sr}=this.counts,cr=[...new Set([...zn.keys(),...Xn.keys()])].reduce((nr,Kn)=>{const mr=zn.get(Kn),xr=Xn.get(Kn),Gr=tr.get(Kn),co=sr.get(Kn);return Object.assign(Object.assign({},nr),{[`local-${Kn}-sent`]:mr,[`local-${Kn}-received`]:xr,[`remote-${Kn}-sent`]:Gr,[`remote-${Kn}-received`]:co})},{sessionId:yn});Gt.a.debug("rtc-message-report",Object.assign({deviceId:this.connection.getRemoteDeviceId()},cr))})}}function kr(dr,yn,Tn){return{header:{stream:dr,created:Date.now(),frameId:Tn||""},payload:yn}}function _i(dr){const yn=dr.localCandidate.candidateType,Tn=dr.remoteCandidate.candidateType;return yn==="host"&&Tn==="host"?"local":yn==="relay"||Tn==="relay"?"TURN":"STUN"}function Ar(dr){return new Set(["disconnected","failed","closed"]).has(dr.iceConnectionState)}function bo(dr){switch(dr.header.stream.streamType){case"twist":{const{twist:yn}=dr.payload;if(!yn)throw Error("twist not in payload of RTC message with type twist");return{header:dr.header,payload:{twist:{linear:Object.assign({x:0,y:0,z:0},yn.linear),angular:Object.assign({x:0,y:0,z:0},yn.angular)}}}}case"pose":{const{pose:yn}=dr.payload;if(!yn)throw Error("pose not in payload of RTC message with type pose");return{header:dr.header,payload:{pose:{translation:Object.assign({x:0,y:0,z:0},yn.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},yn.rotation)}}}}case"pose-with-covariance":{const{poseWithCovariance:yn}=dr.payload;if(!yn)throw Error("poseWithCovariance not in payload of RTC message with type pose-with-covariance");const Tn=new Array(36).fill(0);return yn.covariance.forEach((Dn,zn)=>{if(zn>=36)throw Error("covariance contains more than 36 elements");Tn[zn]=Dn}),{header:dr.header,payload:{poseWithCovariance:{pose:{translation:Object.assign({x:0,y:0,z:0},yn.pose.translation),rotation:Object.assign({x:0,y:0,z:0,w:0},yn.pose.rotation)},covariance:Tn}}}}case"point":{const{point:yn}=dr.payload;if(!yn)throw Error("point not in payload of RTC message with type point");return{header:dr.header,payload:{point:Object.assign({x:0,y:0,z:0},yn)}}}default:return dr}}var Pr=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class _o{get peerConnection(){return Zn(this._peerConnection,"RTCPeerConnection is closed!"),this._peerConnection}constructor(yn,Tn,Dn,zn){this.iceServers=Tn,this.config=Dn,this.dataChannelNotifier=zn,this.connectTimeoutMs=20*Bt.a.second,this.iceGatheringTimeoutMs=3*Bt.a.second,this.pingUpdateTimeoutMs=1*Bt.a.second,this.pingV2UpdateTimeoutMs=250*Bt.a.millisecond,this.pingV2MetricsGatherTimeoutMs=1*Bt.a.second,this.streamsInfoUpdateTimeoutMs=2*Bt.a.second,this.reassemblyTimeoutMs=500*Bt.a.millisecond,this.reassemblyTableCleanupMs=1*Bt.a.second,this.heartbeatTimeoutMs=20*Bt.a.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.closeCalled=!1,this.gotOffer=!1,this.hasIceCandidate=!1,this.pingV2Map=new Map,this.sendPingV2=()=>{const{latestTryOnceStreamChannel:tr}=this;if(!tr)return;const sr=new Date().getTime(),cr=Object(Rn.a)();this.sendSystemMessage(tr,{type:"ping-v2",payload:{timestamp:sr,id:cr}}),this.pingV2Map.set(cr,{sent:sr})},this.gatherPingV2Metrics=()=>{const tr=Rr(this.pingV2Map);if(tr){const sr=this.getRemoteDeviceId();this.pingInfo=tr,rn.aggregate("rtc-ping-average",tr.average,Object.assign({},sr?{deviceId:sr}:{})),rn.aggregate("rtc-ping-loss",tr.loss,Object.assign({},sr?{deviceId:sr}:{})),rn.aggregate("rtc-jitter",tr.jitter,Object.assign({},sr?{deviceId:sr}:{}))}},this._peerConnection=yn;const{isOffer:Xn}=Dn.baseConfig;Xn?this.initializeChannels(yn):yn.ondatachannel=tr=>{switch(tr.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=tr.channel;break;case"stream.reliable":this.reliableStreamChannel=tr.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=tr.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=tr.channel;break;case"heartbeat":return void(this.heartbeatChannel=tr.channel);default:return void this.dataChannelNotifier(tr.channel)}this.setupChannel(tr.channel)},this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:tr}=this;tr&&this.sendSystemMessage(tr,{type:"ping"})},this.pingUpdateTimeoutMs),this.pingV2UpdateTimeout=setInterval(this.sendPingV2,this.pingV2UpdateTimeoutMs),this.pingV2MetricsGatherTimeout=setInterval(this.gatherPingV2Metrics,this.pingV2MetricsGatherTimeoutMs),this.streamsInfoUpdateTimeout=setInterval(()=>{const{latestTtlStreamChannel:tr}=this;tr&&this.sendSystemMessage(tr,{type:"streams-info"})},this.streamsInfoUpdateTimeoutMs),this.reassemblyTableCleanupTimeout=setInterval(()=>{const tr=new Date().getTime();this.reassemblyTableLastTimestamp.forEach((sr,cr,nr)=>{tr>cr+this.reassemblyTimeoutMs&&this.reassemblyTable.delete(sr)})},this.reassemblyTableCleanupMs),this.heartbeatTimeout=setInterval(()=>{const{heartbeatChannel:tr}=this;tr&&tr.readyState==="open"&&tr.send(new Uint8Array([1]))},this.heartbeatTimeoutMs)}handleSignal(yn){return Pr(this,void 0,void 0,function*(){const{peerConnection:Tn}=this,{track:Dn}=this.config.baseConfig,zn=(()=>{try{return JSON.parse(yn.getPayload())}catch{return}})();if(!zn)return void Gt.a.error("Received unparseable signal.");Gt.a.debug("Handling signal",{description:zn});const{sdp:Xn,type:tr}=zn;if(!Xn||!tr)return void Gt.a.warn("Received non-SDP signal");const{signalingState:sr,connectionState:cr}=Tn;if(sr!=="stable"||cr!=="connected")if(Tn.remoteDescription)Gt.a.warn(`Received SDP after remote description was set: ${Xn}`);else{if(tr==="offer"){if(sr!=="stable")return void Gt.a.warn("Received offer SDP when signaling is ongoing.");yield Tn.setRemoteDescription(zn);const nr=yield Tn.createAnswer();yield Tn.setLocalDescription(nr);const Kn=yn.clone();return Dn==null||Dn("Answer Received",Kn),Kn.setPayload(JSON.stringify(nr)),Kn.setReceiverId(yn.getSenderId()),Kn.setSenderId(yn.getReceiverId()),Kn}if(tr==="answer"){if(sr==="stable")return void Gt.a.warn("Received answer SDP when signaling hasn't started.");yield Tn.setRemoteDescription(zn)}}else Gt.a.warn(`Received SDP when already connected: ${Xn}`)})}send(yn,Tn){const Dn=this.getChannelFromLabel(Tn.channelLabel);Dn?this.sendOnChannel(Dn,yn):Gt.a.warn("Send called with unexpected channel label",{channelLabel:Tn.channelLabel})}controlRemoteStream(yn){var Tn;this.sendSystemMessage((Zn(Tn=this.reliableStreamChannel),Tn),{type:"stream-control",streamControl:yn})}isActive(){return new Set(["new","checking","connected","completed"]).has(this.peerConnection.iceConnectionState)||this.isReady()}isReady(){const{reliableStreamChannel:yn,latestTtlStreamChannel:Tn,latestTryOnceStreamChannel:Dn,latestReliableStreamChannel:zn}=this;return(yn==null?void 0:yn.readyState)==="open"&&(Tn==null?void 0:Tn.readyState)==="open"&&(Dn==null?void 0:Dn.readyState)==="open"&&(zn==null?void 0:zn.readyState)==="open"}close(){var yn,Tn,Dn,zn,Xn,tr,sr;return Pr(this,void 0,void 0,function*(){this.closeCalled||(this.closeCalled=!0,yield(yn=this.sessionMetrics)===null||yn===void 0?void 0:yn.uploadMetrics(),fo(this.pingUpdateTimeout),fo(this.pingV2UpdateTimeout),fo(this.pingV2MetricsGatherTimeout),fo(this.reassemblyTableCleanupTimeout),fo(this.streamsInfoUpdateTimeout),fo(this.heartbeatTimeout),(Tn=this._peerConnection)===null||Tn===void 0||Tn.close(),(Dn=this.heartbeatChannel)===null||Dn===void 0||Dn.close(),(zn=this.latestReliableStreamChannel)===null||zn===void 0||zn.close(),(Xn=this.latestTryOnceStreamChannel)===null||Xn===void 0||Xn.close(),(tr=this.latestTtlStreamChannel)===null||tr===void 0||tr.close(),(sr=this.reliableStreamChannel)===null||sr===void 0||sr.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 yn;return(yn=this.config.remoteConfig)===null||yn===void 0?void 0:yn.sessionCreatedTimestamp}setSessionCreatedTimestamp(yn){this.config.remoteConfig&&(this.config.remoteConfig.sessionCreatedTimestamp=yn)}getSessionId(){var yn;return(yn=this.config.remoteConfig)===null||yn===void 0?void 0:yn.sessionId}setSessionId(yn){this.config.remoteConfig&&(this.config.remoteConfig.sessionId=yn,this.sessionMetrics=new Nr(yn,this))}getRemotePeerId(){return this.config.baseConfig.remotePeerId}getRemoteDeviceId(){var yn;return(yn=this.config.baseConfig)===null||yn===void 0?void 0:yn.remoteDeviceId}setRemoteDeviceId(yn){this.config.baseConfig.remoteDeviceId=yn}getSessionMetricsMessageCounts(){var yn;return(yn=this.sessionMetrics)===null||yn===void 0?void 0:yn.counts}getConnectionStatsInfo(){return Pr(this,void 0,void 0,function*(){const{peerConnection:yn}=this;if(!yn)return;const Tn=yield yn.getStats(null),Dn=[];Tn.forEach(cr=>{Dn.push(cr)});const zn=Dn.find(cr=>cr.type==="transport");if(!zn)return;const Xn=Dn.find(cr=>(cr.type==="candidate-pair"||cr.type==="candidatepair")&&cr.id===zn.selectedCandidatePairId);if(!Xn)return;const tr=Dn.find(cr=>cr.id===Xn.localCandidateId),sr=Dn.find(cr=>cr.id===Xn.remoteCandidateId);return tr&&sr&&(tr.address=tr.address||tr.ip,sr.address=sr.address||sr.ip,tr.address!==void 0&&sr.address!==void 0)?{transport:zn,localCandidate:tr,remoteCandidate:sr}:void 0})}initializeChannels(yn){this.heartbeatChannel=yn.createDataChannel("heartbeat",Sr),this.heartbeatChannel.binaryType="arraybuffer",this.latestTtlStreamChannel=yn.createDataChannel("stream.latest-ttl",Pn),this.latestTtlStreamChannel.binaryType="arraybuffer",this.reliableStreamChannel=yn.createDataChannel("stream.reliable",jn),this.reliableStreamChannel.binaryType="arraybuffer",this.latestReliableStreamChannel=yn.createDataChannel("stream.latest-reliable",$n),this.latestReliableStreamChannel.binaryType="arraybuffer",this.latestTryOnceStreamChannel=yn.createDataChannel("stream.latest-try-once",pr),this.latestTryOnceStreamChannel.binaryType="arraybuffer",this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}getOffer(){var yn,Tn;return Pr(this,void 0,void 0,function*(){const{gotOffer:Dn}=this,{peerConnection:zn,config:Xn}=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 tr=(yn=this.config.remoteConfig)===null||yn===void 0?void 0:yn.sessionId;if(Dn)return void Gt.a.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,Ar(this.peerConnection))return void Gt.a.debug("Failed to generate offer because the peer connection was inactive.");const sr=Xn.baseConfig.track;zn.onicecandidate=()=>{this.hasIceCandidate=!0},zn.oniceconnectionstatechange=()=>Pr(this,void 0,void 0,function*(){const Gr=zn.iceConnectionState;if(Gr==="connected"||Gr==="completed"){const co=yield this.getConnectionStatsInfo(),Fo=co?_i(co):void 0;Gt.a.info(`ICE connection state changed to ${Gr}`,{sessionId:tr,connectionStatsInfo:co,iceMode:Fo}),sr==null||sr("ICE connection state change",{iceConnectionState:Gr,sessionId:tr,connectionStatsInfo:co,iceMode:Fo})}}),yield zn.setLocalDescription(yield zn.createOffer());const cr=zn.getConfiguration?zn.getConfiguration().iceTransportPolicy:"all",nr=new Date().getTime();for(;;){const Gr=new Date().getTime()-nr;if(Gr>this.connectTimeoutMs)return void Gt.a.debug("Failed to generate offer because ICE gathering timed out.");if(Gr>this.iceGatheringTimeoutMs&&this.hasIceCandidate){Gt.a.debug("ICE gathering partially completed; proceeding",{iceTransportPolicy:cr,waitTime:Gr}),sr==null||sr("ICE gathering partially completed",{sessionId:tr,iceTransportPolicy:cr,waitTime:Gr});break}if(zn.iceGatheringState==="complete"){Gt.a.debug("ICE gathering complete",{iceTransportPolicy:cr,waitTime:Gr}),sr==null||sr("ICE gathering completed",{sessionId:tr,iceTransportPolicy:cr,waitTime:Gr});break}yield Object(Vt.a)(.1*Bt.a.second)}const Kn=(Tn=this.iceServers)!==null&&Tn!==void 0?Tn:[];for(const Gr of Kn)"credentialType"in Gr&&(Gr.credentialType=void 0);const mr=JSON.stringify(Kn),xr=new Fn.Signal;return xr.setPayload(JSON.stringify(zn.localDescription)),xr.setSenderId(this.config.baseConfig.localPeerId),xr.setReceiverId(this.config.baseConfig.remotePeerId),xr.setIceServers(mr),xr.setIceTransportPolicy(cr??"all"),this.config.baseConfig.sessionType!==void 0?xr.setSessionType(this.config.baseConfig.sessionType):xr.setSessionType(Fn.SessionType.TELEOP),Gt.a.debug("Sending offer signal with description",{description:xr.getPayload()}),xr})}getLanOffer(){return Pr(this,void 0,void 0,function*(){const{peerConnection:yn,gotOffer:Tn}=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(Tn)return void Gt.a.debug("Failed to generate offer because gotOffer was already called.");if(this.gotOffer=!0,Ar(this.peerConnection))return void Gt.a.debug("Failed to generate offer because the peer connection was inactive.");yield yn.setLocalDescription(yield yn.createOffer());const Dn=new Date().getTime();for(;;){if(new Date().getTime()-Dn>this.iceGatheringTimeoutMs)return void Gt.a.debug("Failed to generate offer because ICE gathering timed out.");if(yn.iceGatheringState==="complete")break;yield Object(Vt.a)(.1*Bt.a.second)}const zn=yn.localDescription;if(zn)return Gt.a.debug("Sending LAN offer signal with description",{description:zn}),zn;Gt.a.error("Failed to generate LAN offer description")})}handleLanAnswer(yn){return Pr(this,void 0,void 0,function*(){const{peerConnection:Tn}=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 Tn.setRemoteDescription(yn)})}getChannelFromLabel(yn){switch(yn){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(yn,Tn){var Dn;let zn;try{zn=Object(An.encode)(JSON.stringify(Tn))}catch(Xn){return void Gt.a.warn("Failed to encode RTC message",{error:Xn})}try{yn.send(zn),(Dn=this.sessionMetrics)===null||Dn===void 0||Dn.incrementLocalSent(Tn)}catch(Xn){Gt.a.warn("Failed to send message to channel",{error:Xn,channel:yn.label})}}channelNotRecognized(yn){return yn!==this.latestTtlStreamChannel&&yn!==this.latestReliableStreamChannel&&yn!==this.latestTryOnceStreamChannel&&yn!==this.reliableStreamChannel}setupChannel(yn){yn.onmessage=Tn=>{if(this.channelNotRecognized(yn))return void Gt.a.warn("Received message on unrecognized data channel.");let Dn;try{Dn=JSON.parse(Object(An.decode)(Tn.data))}catch(zn){return void Gt.a.warn("Received unparseable message on RTC stream data channel",{error:zn,channel:yn.label})}Dn.communicationType==="message-chunk"?this.receiveChannelMessageChunk(yn,Dn):this.receiveChannelMessage(yn,Dn)},yn.onerror=Tn=>{Gt.a.warn(`Channel error: ${Tn.error}`,{error:Tn.error,sessionId:this.getSessionId(),channelLabel:yn.label})},yn.onopen=()=>{Gt.a.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:yn.label})},yn.onclose=()=>{const Tn={bufferedAmount:yn.bufferedAmount,sessionId:this.getSessionId(),channelLabel:yn.label};this.closeCalled===!1?Gt.a.debug("Unexpected channel closed",Tn):Gt.a.debug("Channel closed",Tn)}}receiveChannelMessage(yn,Tn){var Dn;const{config:zn}=this,{remotePeerId:Xn}=this.config.baseConfig;this.lastMessageTimestamp=new Date().getTime(),Tn=bo(Tn),(Dn=this.sessionMetrics)===null||Dn===void 0||Dn.incrementLocalReceived(Tn),this.handleSystemMessage(yn,Tn)||(yn===this.latestTryOnceStreamChannel||yn===this.latestTtlStreamChannel||yn===this.latestReliableStreamChannel)&&!this.isLatestMessage(Tn)||zn.baseConfig.receive(Xn,Tn)}receiveChannelMessageChunk(yn,Tn){const Dn=this.reassemblyTable.get(Tn.id)||[];if(Dn.push(Tn),Dn.length===Tn.total){const zn=function(Xn){const tr=Xn.sort((sr,cr)=>sr.seqsr.part).reduce((sr,cr)=>sr+cr);try{return JSON.parse(tr)}catch{return void Gt.a.warn("Could not reassemble RTC message chunks")}}(Dn);return zn&&this.receiveChannelMessage(yn,zn),void this.reassemblyTable.delete(Tn.id)}this.reassemblyTable.set(Tn.id,Dn),this.reassemblyTableLastTimestamp.set(Tn.id,new Date().getTime())}handleSystemMessage(yn,Tn){var Dn,zn;const{config:Xn}=this,{baseConfig:tr}=Xn,{remotePeerId:sr,remoteDeviceId:cr}=tr;switch(Tn.header.stream.streamType){case"ping":return this.sendSystemMessage(yn,{type:"pong",timestamp:In(Tn.payload.ping)}),!0;case"pong":{const nr=new Date().getTime()-In(Tn.payload.pong);return this.pingTimeMs=nr,rn.aggregate("rtc-ping-time",nr,Object.assign({},cr?{deviceId:cr}:{})),!0}case"ping-v2":return this.sendPingV2(),!0;case"pong-v2":{const nr=In(Tn.payload.pongV2),Kn=this.pingV2Map.get(nr.id);return(Kn==null?void 0:Kn.sent)!==nr.timestamp&&Gt.a.warn("Pong timestamp doesn't match stored value",{currentEntry:Kn,pong:nr}),this.pingV2Map.set(nr.id,{sent:nr.timestamp,received:new Date().getTime()}),!0}case"streams-info":{const{sessionMetrics:nr}=this,Kn=(Dn=Tn.payload.streamsInfo)===null||Dn===void 0?void 0:Dn.timestamp;return!!Kn&&(nr==null||nr.updateRemoteMessagesCounts(Tn),(zn=tr.onStreamsInfoUpdate)===null||zn===void 0||zn.call(tr,sr,Kn),!0)}case"stream-control":return!0;default:return!1}}sendSystemMessage(yn,Tn){var Dn;const{localUserId:zn,localPeerId:Xn}=this.config.baseConfig;if(yn.readyState!=="open")return;const tr={entityId:zn??Xn,streamName:`$.${Tn.type}`,streamType:Tn.type};let sr;switch(Tn.type){case"ping":sr={ping:new Date().getTime()};break;case"pong":sr={pong:Tn.timestamp};break;case"ping-v2":sr={pingV2:Tn.payload};break;case"pong-v2":sr={pongV2:Tn.payload};break;case"stream-control":sr={streamControl:Tn.streamControl};break;case"streams-info":sr={streamsInfo:(Dn=this.sessionMetrics)===null||Dn===void 0?void 0:Dn.getLocalStreamsInfo(new Date().getTime())}}this.sendOnChannel(yn,kr(tr,sr))}isLatestMessage(yn){const Tn=wr(yn.header.stream),Dn=(this.streamLatestTimestamp.get(Tn)||0)<=yn.header.created;return Dn&&this.streamLatestTimestamp.set(Tn,yn.header.created),Dn}}function fo(dr){dr&&clearInterval(dr)}function is(){Gt.a.debug("forceGarbageCollection() triggered"),queueMicrotask(()=>{let dr=document.createElement("img");dr.src=window.URL.createObjectURL(new Blob([new ArrayBuffer(5e7)])),dr.onerror=function(){window.URL.revokeObjectURL(this.src),dr=null}})}function wo(dr){try{return dr instanceof Error?`${dr.name}: ${dr.message}`:typeof dr=="object"?JSON.stringify(dr):String(dr)}catch{return"Unknown error"}}function Xo(dr){var yn,Tn;return{userId:(yn=dr.getUserId())===null||yn===void 0?void 0:yn.getValue(),deviceId:(Tn=dr.getDeviceId())===null||Tn===void 0?void 0:Tn.getValue(),organizationId:dr.getOrganizationId(),id:dr.getPeerId(),capabilities:[],capabilitySet:{}}}var $r=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class as{constructor(yn){this.config=yn,this.grpcCallDeadline=5*Bt.a.second,this.refreshIntervalDelayMs=2*Bt.a.second,this.iceServersTtl=30*Bt.a.minute,this.connections=[],this.localConnections=[],this.isConnectionInitiator=new WeakSet,this.isOutgoingConnection=new Set,this.peerDataChannelListeners=[],this.rtcInstancesConstructed=0,this.statsLoopsExecuted=0;const{refreshIntervalDelayMs:Tn}=this;this.refreshInterval=Kt({func:()=>$r(this,void 0,void 0,function*(){try{yield this.update()}catch(Dn){Gt.a.warn("RTC refresh failed",{error:Dn})}}),delay:Tn,immediate:!0})}send(yn,Tn,Dn){const zn=this.getActiveConnection(yn);zn?zn.isReady()?zn.send(Tn,Dn):Gt.a.warn("Send called with unready connection."):Gt.a.warn("Send called with no connection.")}controlRemoteStream(yn,Tn){const Dn=this.getActiveConnection(yn);Dn?Dn.isReady()?Dn.controlRemoteStream(Tn):Gt.a.warn("controlRemoteStream called with unready connection."):Gt.a.warn("controlRemoteStream called with no connection.")}getLocalPeer(){return $r(this,void 0,void 0,function*(){for(;!this.localPeer;)yield Object(Vt.a)(.1*Bt.a.second);return Xo(this.localPeer)})}connect(yn,Tn){var Dn,zn,Xn;return $r(this,void 0,void 0,function*(){if(this.config.lanOnlyMode===!0)throw new Error("connect method called in local only mode.");const{track:tr,signalingClient:sr}=this.config,{localPeer:cr,receiveSignalStream:nr,iceServers:Kn}=this;if(!cr||!nr||!Kn)return void Gt.a.warn("Connect called prior to local peer, receiveSignalStream, and ICE servers ready");if(this.getActiveConnection(yn))return void Gt.a.warn("Connect called for peer with existing connection.");if(this.isOutgoingConnection.has(yn))return void Gt.a.warn("Connect called for peer with an existing outgoing connection offer.");this.isOutgoingConnection.add(yn);const mr=function(eo,oo,po){const{rtcIceTransportPolicies:Qo,rtcIceServerProtocol:Ro,useAllServers:no}=oo||{},Ko=eo.map(ko=>Object.assign(Object.assign({},ko),{urls:ko.urls.filter(fs=>{const Ys=(Qo===void 0||Qo.some(Sl=>kn(fs,Sl)))&&(Ro===void 0||hn(fs,Ro));return Ys||Gt.a.debug(`Ignoring ICE server: ${fs}`,{organizationId:po}),Ys})})).filter(({urls:ko})=>ko.filter(fs=>fs).length>0);return no?Ko:[Cn(Ko,"stun"),Cn(Ko,"turn")].filter(ko=>ko!==void 0).map(ko=>In(ko))}(Kn,Tn);Gt.a.debug("Received ICE servers:",Kn),Gt.a.debug("Using ICE servers:",mr);const xr=new _o(yield this.createRTCPeerConnection(mr),mr,{baseConfig:{isOffer:!0,isLan:!1,receive:(eo,oo)=>this.config.receive(eo,oo),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(eo,oo)=>{var po,Qo;return(Qo=(po=this.config).onStreamsInfoUpdate)===null||Qo===void 0?void 0:Qo.call(po,eo,oo)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(Dn=cr.getUserId())===null||Dn===void 0?void 0:Dn.getValue(),localPeerId:cr.getPeerId(),remotePeerId:yn,sessionType:this.config.sessionType},remoteConfig:{}},eo=>this.onCustomDataChannel(yn,eo)),Gr=yield xr.getOffer();if(!Gr)return Gt.a.error("Failed to generate offer."),void this.isOutgoingConnection.delete(yn);Gt.a.debug("Sending offer."),tr==null||tr("Sending offer",Gr);const co=new Fn.SendSignalRequest;co.setSignal(Gr);const Fo=yield(()=>$r(this,void 0,void 0,function*(){try{return yield Wn.withDeadline(sr.sendSignal(co,yield this.getMetadata({})),this.grpcCallDeadline)}catch(eo){Gt.a.warn("Error when sending signal",{error:eo})}}))();if(!this.isOutgoingConnection.has(yn))return void Gt.a.debug("No offer set after receiving offer signal response.");Gt.a.debug("Offer sent.");const So=(zn=Fo==null?void 0:Fo.getSessionId())===null||zn===void 0?void 0:zn.getValue(),Lo=(Xn=Fo==null?void 0:Fo.getSessionCreatedTimestamp())===null||Xn===void 0?void 0:Xn.getValue();return So&&Lo?(xr.setSessionId(So),xr.setSessionCreatedTimestamp(Lo),this.isOutgoingConnection.delete(yn),this.connections.push(xr),this.isConnectionInitiator.add(xr),this.setupHandlers(xr),So):(Gt.a.warn("No session ID or no session created timestamp on send signal response."),void this.isOutgoingConnection.delete(yn))})}connectLan(yn){var Tn,Dn;return $r(this,void 0,void 0,function*(){const zn=new cn(yn),Xn=new _o(yield this.createRTCPeerConnection([]),[],{baseConfig:{isOffer:!0,isLan:!0,receive:(nr,Kn)=>this.config.receive(nr,Kn),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(nr,Kn)=>{var mr,xr;return(xr=(mr=this.config).onStreamsInfoUpdate)===null||xr===void 0?void 0:xr.call(mr,nr,Kn)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localUserId:(Dn=(Tn=this.localPeer)===null||Tn===void 0?void 0:Tn.getUserId())===null||Dn===void 0?void 0:Dn.getValue(),localPeerId:"lan_client",remotePeerId:yn}},nr=>this.onCustomDataChannel(yn,nr)),tr=yield Xn.getLanOffer();if(!tr)return Gt.a.warn("Could not generate LAN offer"),!1;const sr=yield zn.postLanRtcOffer({offer:JSON.stringify(tr)}),cr=new RTCSessionDescription(JSON.parse(sr.answer));return yield Xn.handleLanAnswer(cr),this.localConnections.push(Xn),this.isConnectionInitiator.add(Xn),Object(Rn.a)()})}getConnections(){return[...this.connections,...this.localConnections]}createCustomDataChannel(yn,Tn,Dn,zn,Xn){const tr=this.getActiveConnection(yn);if(tr&&this.isConnectionInitiator.has(tr)){const cr=tr.peerConnection.createDataChannel("custom."+Tn,Dn);return zn&&(cr.binaryType="arraybuffer"),Xn(yn,cr),()=>{}}const sr=(cr,nr)=>{yn===cr&&nr.label==="custom."+Tn&&Xn(yn,nr)};return this.peerDataChannelListeners.push(sr),()=>{this.peerDataChannelListeners=this.peerDataChannelListeners.filter(cr=>cr!==sr)}}onCustomDataChannel(yn,Tn){this.peerDataChannelListeners.forEach(Dn=>Dn(yn,Tn))}getConnectionStatus(yn){if(this.isOutgoingConnection.has(yn))return"connecting";const Tn=this.getActiveConnection(yn);return Tn?Tn.isReady()?"connected":"connecting":"disconnected"}getConnectionStatsInfo(yn){return $r(this,void 0,void 0,function*(){const Tn=this.getActiveConnection(yn);if(Tn)return yield Tn.getConnectionStatsInfo()})}disconnect(yn){return $r(this,void 0,void 0,function*(){const Tn=this.getActiveConnection(yn);Tn&&(yield Tn.close(),this.connections=this.connections.filter(Dn=>Dn!==Tn),this.localConnections=this.localConnections.filter(Dn=>Dn!==Tn))})}getPeers(){return $r(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:yn}=this.config,Tn=yield(()=>$r(this,void 0,void 0,function*(){try{return yield Wn.withDeadline(yn.getPeers(new Fn.GetPeersRequest,yield this.getMetadata({})),this.grpcCallDeadline)}catch(Xn){Gt.a.warn("Error when getting peers",{error:Xn})}}))();if(!Tn)return[];const Dn=Tn.getPeersList();if(!Dn)return[];const zn=Xn=>{var tr,sr;return(sr=(tr=Xn.getPeerCreatedTimestamp())===null||tr===void 0?void 0:tr.getValue())!==null&&sr!==void 0?sr:0};return Dn.sort((Xn,tr)=>zn(tr)-zn(Xn)).map(Xn=>Xo(Xn))})}getSessions(){return $r(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getPeers method cannot be used in local-only mode.");const{signalingClient:yn}=this.config,Tn=yield(()=>$r(this,void 0,void 0,function*(){try{return yield Wn.withDeadline(yn.getPeers(new Fn.GetPeersRequest,yield this.getMetadata({})),this.grpcCallDeadline)}catch(Xn){Gt.a.warn("Error when getting peers",{error:Xn})}}))();if(!Tn)return{};const Dn=Tn.getPeersList(),zn={};for(const Xn of Dn)zn[Xn.getPeerId()]=Xn.getSessionIdsList();return zn})}getPing(yn){const Tn=this.getActiveConnection(yn);if(Tn)return Tn.getPing();Gt.a.warn("Attempted to get ping time from inactive peer.")}getPingInfo(yn){const Tn=this.getActiveConnection(yn);if(Tn)return Tn.getPingInfo();Gt.a.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(yn){const Tn=this.getActiveConnection(yn);if(Tn)return Tn.getLastMessageTimestamp();Gt.a.warn("Attempted to get last message time from inactive peer.")}getSessionMetricsMessageCounts(yn){const Tn=this.getActiveConnection(yn);if(Tn)return Tn.getSessionMetricsMessageCounts();Gt.a.warn("Attempted to get session metrics counts from inactive peer.")}isReady(){if(this.config.lanOnlyMode)return!0;const{localPeer:yn,receiveSignalStream:Tn,iceServers:Dn}=this;return!!(yn&&Tn&&Dn)}shutdown(){return $r(this,void 0,void 0,function*(){Gt.a.info("Shutdown called on RTC client"),yield this.refreshInterval.stop(),this.receiveSignalStream&&this.receiveSignalStream.cancel();const yn=this.connections;this.connections=[],yield this.closeConnections(yn);const Tn=this.localConnections;this.localConnections=[],yield this.closeConnections(Tn),this.isOutgoingConnection.clear(),this.peerDataChannelListeners=[];const{localPeer:Dn}=this;if(!Dn||this.config.lanOnlyMode)return;const{signalingClient:zn}=this.config;yield(()=>$r(this,void 0,void 0,function*(){try{const Xn=new Fn.DeletePeerRequest;Xn.setPeerId(Dn.getPeerId()),yield Wn.withDeadline(zn.deletePeer(Xn,yield this.getMetadata({})),this.grpcCallDeadline)}catch(Xn){return void Gt.a.warn("Error deleting local peer",{error:Xn})}}))()})}createPeer(){return $r(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createPeer method cannot be used in local-only mode.");const{signalingClient:yn}=this.config,Tn=yield(()=>$r(this,void 0,void 0,function*(){try{return yield Wn.withDeadline(yn.createPeer(new Fn.CreatePeerRequest,yield this.getMetadata({})),this.grpcCallDeadline)}catch(zn){const Xn=zn;Gt.a.debug("createPeer failed",{error:Xn});const tr=wo(Xn);throw new Error(`Was not able to create peer: ${tr}`)}}))(),Dn=Tn==null?void 0:Tn.getPeer();if(!Dn)throw new Error("Response did not provide peer.");return this.localPeer=Dn})}createReceiveSignalStream(){return $r(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("createReceiveSignalStream method cannot be used in local-only mode.");const{signalingClient:yn}=this.config,{localPeer:Tn,iceServers:Dn}=this;if(!Tn||!Dn)return;const{receiveSignalStream:zn}=this;zn&&zn.cancel();const Xn=new Fn.ReceiveSignalStreamRequest;Xn.setPeerId(Tn.getPeerId());const tr=yield(()=>$r(this,void 0,void 0,function*(){try{return yn.receiveSignalStream(Xn,yield this.getMetadata({hasDeadline:!1}))}catch(sr){Gt.a.debug("createReceiveSignalStream failed",{error:sr});const cr=wo(sr);throw new Error(`Unable to create receive signal stream: ${cr}`)}}))();if(!tr)throw new Error("Response did not provide stream.");return tr.on("data",sr=>$r(this,void 0,void 0,function*(){var cr,nr,Kn,mr;const xr=sr.getSignal(),Gr=(cr=xr==null?void 0:xr.getSessionId())===null||cr===void 0?void 0:cr.getValue(),co=xr==null?void 0:xr.getSenderId(),Fo=xr==null?void 0:xr.getReceiverId(),So=(nr=xr==null?void 0:xr.getSessionCreatedTimestamp())===null||nr===void 0?void 0:nr.getValue();if(!(xr&&Gr&&co&&Fo&&So))return void Gt.a.warn("Received signal with missing information.");const Lo=this.getActiveConnection(co);if(Lo)if(Lo.getSessionId()!==Gr){if(Gt.a.debug("Received signal: different session for a peer we're already connected to."),(Lo.getSessionCreatedTimestamp()||0)>So)return;const eo=new _o(yield this.createRTCPeerConnection(Dn),Dn,{baseConfig:{isOffer:!1,isLan:!1,receive:(oo,po)=>this.config.receive(oo,po),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(oo,po)=>{var Qo,Ro;return(Ro=(Qo=this.config).onStreamsInfoUpdate)===null||Ro===void 0?void 0:Ro.call(Qo,oo,po)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:Tn.getPeerId(),localUserId:(mr=Tn.getUserId())===null||mr===void 0?void 0:mr.getValue(),remotePeerId:co},remoteConfig:{sessionId:Gr,sessionCreatedTimestamp:So}},oo=>this.onCustomDataChannel(co,oo));yield eo.handleSignal(xr),this.connections.push(eo)}else Gt.a.debug("Received signal: for an existing connection."),yield Lo.handleSignal(xr);else{Gt.a.debug("Received signal: new connection.");const eo=new _o(yield this.createRTCPeerConnection(Dn),Dn,{baseConfig:{isOffer:!1,isLan:!1,receive:(oo,po)=>this.config.receive(oo,po),onStreamsInfoUpdate:this.config.onStreamsInfoUpdate?(oo,po)=>{var Qo,Ro;return(Ro=(Qo=this.config).onStreamsInfoUpdate)===null||Ro===void 0?void 0:Ro.call(Qo,oo,po)}:void 0,track:this.config.lanOnlyMode?void 0:this.config.track,localPeerId:Tn.getPeerId(),localUserId:(Kn=Tn.getUserId())===null||Kn===void 0?void 0:Kn.getValue(),remotePeerId:co},remoteConfig:{sessionId:Gr,sessionCreatedTimestamp:So}},oo=>this.onCustomDataChannel(co,oo));yield eo.handleSignal(xr),this.connections.push(eo)}})),tr.on("end",()=>{tr.cancel(),this.receiveSignalStream=void 0}),tr.on("error",sr=>{switch(sr.code){case pn.StatusCode.CANCELLED:case pn.StatusCode.UNAVAILABLE:case pn.StatusCode.UNKNOWN:Gt.a.debug("Receive signal stream error",{error:sr});break;case pn.StatusCode.UNAUTHENTICATED:Gt.a.warn("Receive signal stream error",{error:sr});break;default:Gt.a.error("Receive signal stream error",{error:sr})}tr.cancel(),this.receiveSignalStream=void 0}),this.receiveSignalStream=tr})}createRTCPeerConnection(yn){var Tn;return $r(this,void 0,void 0,function*(){const Dn=(Tn=this.config.alternateRTCPeerConnection)!==null&&Tn!==void 0?Tn:window.RTCPeerConnection;if(!Dn)throw function(){const{userAgent:zn}=navigator;return zn.includes("Firefox/")?"Firefox":zn.includes("Edg/")?"Edge":zn.includes("Chrome/")?"Chrome":zn.includes("Safari/")?"Safari":zn.includes("MSIE/")||zn.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||is();try{return new Dn({iceServers:yn})}catch(zn){throw Gt.a.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),zn}})}closeConnections(yn){return $r(this,void 0,void 0,function*(){const Tn=yield Vn(yn.map(Dn=>$r(this,void 0,void 0,function*(){yield Dn.close()})));for(const Dn of Tn)Gt.a.warn("Request to close session failed",{error:Dn})})}getActiveConnection(yn){return this.getConnections().find(Tn=>Tn.getRemotePeerId()===yn&&Tn.isActive())}update(){var yn;return $r(this,void 0,void 0,function*(){if(this.localConnections=this.localConnections.filter(mr=>mr.isActive()),this.config.lanOnlyMode)return;const{signalingClient:Tn}=this.config;if(!this.localPeer||!this.receiveSignalStream||!this.iceServers){const mr=[];return this.localPeer||mr.push(this.createPeer()),this.iceServers||mr.push(this.updateIceServers()),yield Promise.all(mr),void(this.receiveSignalStream||(yield this.createReceiveSignalStream()))}const[Dn,zn]=(Xn=this.connections,tr=mr=>mr.isActive(),Xn.reduce((mr,xr,Gr,co)=>{const[Fo,So]=mr;return(tr(xr,Gr,co)?Fo:So).push(xr),mr},[[],[]]));var Xn,tr;yield this.closeConnections(zn),this.connections=Dn,this.gatherConnectionStats().catch(mr=>{Gt.a.warn("Error calling gatherConnectionStats",{error:mr})}),this.statsLoopsExecuted++;const{localPeer:sr}=this,cr=this.connections.filter(mr=>mr.getSessionId).map(mr=>In(mr.getSessionId()));sr.setSessionIdsList(cr);const nr=new Fn.RefreshPeerRequest;nr.setPeer(sr);try{yield Wn.withDeadline(Tn.refreshPeer(nr,yield this.getMetadata({})),this.grpcCallDeadline)}catch(mr){mr.code===pn.StatusCode.NOT_FOUND?(Gt.a.warn("Peer expired, creating new peer",{peerId:sr.getPeerId()}),yield this.reset()):Gt.a.warn("Error calling RefreshPeer",{error:mr})}const Kn=yield this.getPeers();for(const mr of this.connections)mr.setRemoteDeviceId((yn=Kn.find(xr=>xr.id===mr.getRemotePeerId()))===null||yn===void 0?void 0:yn.deviceId)})}gatherConnectionStats(){return $r(this,void 0,void 0,function*(){if(this.statsLoopsExecuted%10!=0||this.connections.length!==1)return;const yn=yield this.connections[0].getConnectionStatsInfo(),Tn=yn?_i(yn):void 0;Tn?(Gt.a.info(`Detected RTC connection type: ${Tn}`),rn.setTag("rtc-connection-type",Tn)):rn.setTag("rtc-connection-type","unknown")})}reset(){return $r(this,void 0,void 0,function*(){yield this.closeConnections(this.connections),this.connections=[],this.isOutgoingConnection.clear(),yield this.createPeer(),yield this.createReceiveSignalStream()})}updateIceServers(){return $r(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)return;const{iceServersLastUpdate:yn,iceServersTtl:Tn}=this,Dn=new Date().getTime();if(!yn||Dn-yn>Tn)try{const zn=(yield Wn.withDeadline(this.config.signalingClient.getIceServers(new Fn.GetIceServersRequest,yield this.getMetadata({})),this.grpcCallDeadline)).getIceServers();this.iceServers=JSON.parse(zn),this.iceServersLastUpdate=Dn}catch(zn){Gt.a.warn("Error in updateIceServers",{error:zn})}})}setupHandlers(yn){const{peerConnection:Tn}=yn,Dn=yn.getSessionCreatedTimestamp();Tn.onconnectionstatechange=()=>$r(this,void 0,void 0,function*(){const zn=Tn.connectionState;if(!Dn)return;const Xn=yn.getRemoteDeviceId();switch(zn){case"connected":rn.aggregate("rtc-connect-time",new Date().getTime()-Dn,Object.assign({},Xn?{deviceId:Xn}:{}));break;case"failed":rn.increment("rtc-connect-failed",Object.assign({},Xn?{deviceId:Xn}:{}))}})}getMetadata(yn){return $r(this,void 0,void 0,function*(){if(this.config.lanOnlyMode)throw new Error("getMetadata method cannot be called in local-only mode");const{getToken:Tn}=this.config,{grpcCallDeadline:Dn}=this,{hasDeadline:zn}=yn,Xn=zn===!1?void 0:new Date().getTime()+Dn;try{return{authorization:yield Tn(),deadline:Xn}}catch(tr){throw Gt.a.error("getToken() failed",{error:tr}),new Error("Cannot get authorization token")}})}}var $o=nt(11),hs=nt(10),zs=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class ks{constructor(yn,Tn){this.sentMessagesCounts=new Map,this.receivedMessagesCounts=new Map,this.sessionId=yn,this.connection=Tn}incrementMessageSent(yn){const Tn=wr(yn.header.stream);this.sentMessagesCounts.set(Tn,(this.sentMessagesCounts.get(Tn)||0)+1)}incrementMessageReceived(yn){const Tn=wr(yn.header.stream);this.receivedMessagesCounts.set(Tn,(this.receivedMessagesCounts.get(Tn)||0)+1)}uploadMetrics(){return zs(this,void 0,void 0,function*(){const{sessionId:yn}=this,Tn=yield this.connection.peerConnection.getStats(),Dn={};Tn.forEach(Xn=>Dn[Xn.id]=Xn),Gt.a.debug("rtc-stats",Object.assign(Object.assign({},Dn),{sessionId:yn}));const zn=[...new Set(Array.from(this.sentMessagesCounts.keys()).concat(Array.from(this.receivedMessagesCounts.keys())))].reduce((Xn,tr)=>{const sr=this.sentMessagesCounts.get(tr),cr=this.receivedMessagesCounts.get(tr);return Object.assign(Object.assign({},Xn),{[`${tr}-sent`]:sr,[`${tr}-received`]:cr})},{sessionId:yn});Gt.a.debug("rtc-message-report",zn)})}}function ms(dr,yn){return wr(dr)===wr(yn)}var Ao=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class Hs{constructor(yn,Tn){this.peerConnection=yn,this.config=Tn,this.connectTimeoutMs=10*Bt.a.second,this.gatherIceTimeoutMs=5*Bt.a.second,this.pingUpdateTimeoutMs=2*Bt.a.second,this.streamLatestTimestamp=new Map,this.closeCalled=!1,this.connectCalled=!1,this.sentOffer=!1,this.receivedIceCandidate=!1;const{isOffer:Dn}=Tn;Dn?this.initializeChannels(yn):yn.ondatachannel=zn=>{switch(zn.channel.label){case"stream.latest-ttl":this.latestTtlStreamChannel=zn.channel;break;case"stream.reliable":this.reliableStreamChannel=zn.channel;break;case"stream.latest-reliable":this.latestReliableStreamChannel=zn.channel;break;case"stream.latest-try-once":this.latestTryOnceStreamChannel=zn.channel}this.setupChannel(zn.channel)},this.sessionMetrics=new ks(this.getSessionId(),this)}connect(){return Ao(this,void 0,void 0,function*(){if(this.connectCalled)return;this.connectCalled=!0,this.pingUpdateTimeout=setInterval(()=>{const{reliableStreamChannel:zn}=this;zn&&this.sendSystemMessage(zn,{type:"ping"})},this.pingUpdateTimeoutMs),this.connectTimeout=setTimeout(()=>Ao(this,void 0,void 0,function*(){this.isReady()||(Gt.a.warn("RTC connect timed out, closing connection"),yield this.close())}),this.connectTimeoutMs);const{peerConnection:yn,config:{isOffer:Tn,sessionId:Dn}}=this;if(Tn){const zn=yield yn.createOffer();yield yn.setLocalDescription(zn)}Tn&&(this.gatherIceTimeout=setTimeout(()=>Ao(this,void 0,void 0,function*(){this.sentOffer||(Gt.a.warn("ICE gathering timed out"),this.receivedIceCandidate?(Gt.a.warn("Attempting to connect with partial ICE candidate pool"),yield this.sendOffer()):yield this.close())}),this.gatherIceTimeoutMs),yn.onicecandidate=zn=>Ao(this,void 0,void 0,function*(){zn.candidate?this.receivedIceCandidate=!0:yield this.sendOffer()}),yn.onicegatheringstatechange=()=>Ao(this,void 0,void 0,function*(){yn.iceGatheringState==="complete"&&(yield this.sendOffer())}),yn.onnegotiationneeded=()=>{Gt.a.debug("Negotiation needed",{sessionId:Dn})})})}handleSignal(yn){return Ao(this,void 0,void 0,function*(){const{peerConnection:Tn,config:{sessionId:Dn,sendSignal:zn}}=this,{description:Xn}=JSON.parse(yn.payload);if(Gt.a.debug("Handling signal",{sessionId:Dn,description:JSON.stringify(Xn)}),Xn)if(Tn.signalingState!=="stable"||Tn.connectionState!=="connected")if(Tn.remoteDescription)Gt.a.warn(`Received SDP signal during negotiation when remote description is already set: ${JSON.stringify(yn)}`);else if(Xn.type==="offer"){yield Tn.setRemoteDescription(Xn);const tr=yield Tn.createAnswer();yield Tn.setLocalDescription(tr),yield zn({payload:JSON.stringify({description:tr})})}else Xn.type==="answer"&&(yield Tn.setRemoteDescription(Xn));else Gt.a.warn(`Received SDP signal when signaling is stable and connected: ${JSON.stringify(yn)}`);else Gt.a.warn(`Received non-SDP signal: ${JSON.stringify(yn)}`)})}send(yn,Tn){const Dn=this.getChannelFromLabel(Tn.channelLabel);Dn?this.sendOnChannel(Dn,yn):Gt.a.warn("Send called with unexpected channel label",{channelLabel:Tn.channelLabel})}controlRemoteStream(yn){this.sendSystemMessage(In(this.reliableStreamChannel),{type:"stream-control",streamControl:yn})}isActive(){return new Set(["new","connecting","connected"]).has(this.peerConnection.connectionState)}isReady(){const{peerConnection:yn,latestTtlStreamChannel:Tn,reliableStreamChannel:Dn,latestTryOnceStreamChannel:zn}=this;return!!(Dn&&Tn&&zn)&&yn.connectionState==="connected"&&Dn.readyState==="open"&&Tn.readyState==="open"&&zn.readyState==="open"}isClosed(){const{peerConnection:yn,reliableStreamChannel:Tn,latestTryOnceStreamChannel:Dn,latestTtlStreamChannel:zn}=this;return!(yn.connectionState!=="closed"||Tn!==void 0&&Tn.readyState!=="closed"||Dn!==void 0&&Dn.readyState!=="closed"||zn!==void 0&&zn.readyState!=="closed")}needsClosing(){const{peerConnection:yn,latestTtlStreamChannel:Tn,reliableStreamChannel:Dn,latestTryOnceStreamChannel:zn}=this;if(this.isClosed())return!1;const Xn=new Set(["closing","closed"]),tr=sr=>sr&&Xn.has(sr.readyState);return Ar(yn)||tr(Tn)||tr(Dn)||tr(zn)}close(){return Ao(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(yn){this.latestTtlStreamChannel=yn.createDataChannel("stream.latest-ttl",Pn),this.reliableStreamChannel=yn.createDataChannel("stream.reliable",jn),this.latestReliableStreamChannel=yn.createDataChannel("stream.latest-reliable",$n),this.latestTryOnceStreamChannel=yn.createDataChannel("stream.latest-try-once",pr),this.setupChannel(this.latestTtlStreamChannel),this.setupChannel(this.reliableStreamChannel),this.setupChannel(this.latestReliableStreamChannel),this.setupChannel(this.latestTryOnceStreamChannel)}sendOffer(){return Ao(this,void 0,void 0,function*(){if(this.sentOffer||(this.sentOffer=!0,Ar(this.peerConnection)))return;const{peerConnection:yn,config:{sendSignal:Tn}}=this,Dn=yield yn.createOffer();yield yn.setLocalDescription(Dn);const zn={payload:JSON.stringify({description:Dn})};yield Tn(zn)})}getChannelFromLabel(yn){switch(yn){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(yn,Tn){let Dn;try{Dn=Object(An.encode)(JSON.stringify(Tn))}catch(zn){return void Gt.a.warn("Failed to encode RTC message",{error:zn})}try{yn.send(Dn),this.sessionMetrics.incrementMessageSent(Tn)}catch(zn){Gt.a.warn("Failed to send message to channel",{error:zn,channel:yn.label})}}channelNotRecognized(yn){return yn!==this.latestTtlStreamChannel&&yn!==this.latestReliableStreamChannel&&yn!==this.latestTryOnceStreamChannel&&yn!==this.reliableStreamChannel}setupChannel(yn){yn.onmessage=Tn=>{if(this.channelNotRecognized(yn))return void Gt.a.warn("Received message on unrecognized data channel.");let Dn;try{Dn=JSON.parse(Object(An.decode)(Tn.data))}catch(zn){return void Gt.a.warn("Received unparseable RTC message",{error:zn,channel:yn.label})}if(this.lastMessageTimestamp=new Date().getTime(),Dn=bo(Dn),this.sessionMetrics.incrementMessageReceived(Dn),!this.handleSystemMessage(yn,Dn)){if(!this.hasCapabilities(Dn))return void Gt.a.warn("Received RTC message that was not within the capability scope of the connection.");(yn===this.latestTryOnceStreamChannel||yn===this.latestTtlStreamChannel||yn===this.latestReliableStreamChannel)&&!this.isLatestMessage(Dn)||this.config.receive(this.config.remotePeer.id,Dn)}},yn.onerror=Tn=>{Gt.a.warn(`Channel error: ${Tn.error}`,{error:Tn.error,sessionId:this.getSessionId(),channelLabel:yn.label})},yn.onopen=()=>{Gt.a.debug("Channel opened",{sessionId:this.getSessionId(),channelLabel:yn.label})},yn.onclose=()=>{const Tn={bufferedAmount:yn.bufferedAmount,sessionId:this.getSessionId(),channelLabel:yn.label};this.closeCalled===!1?Gt.a.debug("Unexpected channel closed",Tn):Gt.a.debug("Channel closed",Tn)}}handleSystemMessage(yn,Tn){switch(Tn.header.stream.streamType){case"ping":return this.sendSystemMessage(yn,{type:"pong",timestamp:In(Tn.payload.ping)}),!0;case"pong":{const Dn=new Date().getTime()-In(Tn.payload.pong);return this.pingTimeMs=Dn,rn.aggregate("rtc-ping-time",Dn),!0}case"stream-control":return!0;default:return!1}}sendSystemMessage(yn,Tn){if(yn.readyState!=="open")return;const Dn={entityId:In(this.config.localPeer.deviceId||this.config.localPeer.userId),streamName:`$.${Tn.type}`,streamType:Tn.type};let zn;switch(Tn.type){case"ping":zn={ping:new Date().getTime()};break;case"pong":zn={pong:Tn.timestamp};break;case"stream-control":zn={streamControl:Tn.streamControl}}this.sendOnChannel(yn,kr(Dn,zn))}hasCapabilities(yn){var Tn,Dn;const{localPeer:zn,remotePeer:Xn}=this.config,tr=(Tn=zn.capabilitySet.streaming)===null||Tn===void 0?void 0:Tn.streams,sr=tr&&tr.some(Kn=>Kn.receive&&ms(Kn.stream,yn.header.stream)),cr=(Dn=Xn.capabilitySet.streaming)===null||Dn===void 0?void 0:Dn.streams,nr=cr&&cr.some(Kn=>Kn.send&&ms(Kn.stream,yn.header.stream));return sr||nr}isLatestMessage(yn){const Tn=wr(yn.header.stream),Dn=(this.streamLatestTimestamp.get(Tn)||0)<=yn.header.created;return Dn&&this.streamLatestTimestamp.set(Tn,yn.header.created),Dn}}var io=function(dr,yn,Tn,Dn){return new(Tn||(Tn=Promise))(function(zn,Xn){function tr(nr){try{cr(Dn.next(nr))}catch(Kn){Xn(Kn)}}function sr(nr){try{cr(Dn.throw(nr))}catch(Kn){Xn(Kn)}}function cr(nr){var Kn;nr.done?zn(nr.value):(Kn=nr.value,Kn instanceof Tn?Kn:new Tn(function(mr){mr(Kn)})).then(tr,sr)}cr((Dn=Dn.apply(dr,yn||[])).next())})};class Ns{constructor(yn){this.config=yn,this.connections=[],this.connectingSessions=new Map,this.rtcInstancesConstructed=0,this.updateInterval=Kt({func:()=>io(this,void 0,void 0,function*(){try{yield this.update()}catch(Tn){Gt.a.warn("RTC update failed",{error:Tn})}}),delay:250*Bt.a.millisecond,immediate:!0}),this.localPeer=this.createPeer()}send(yn,Tn,Dn){const zn=this.getActiveConnection(yn);zn?zn.isReady()?zn.send(Tn,Dn):Gt.a.warn("Attempted to send with an active connection to that peer which was not yet ready."):Gt.a.warn("Attempted to send with no active connection to that peer.")}controlRemoteStream(yn,Tn){const Dn=this.getActiveConnection(yn);Dn?Dn.isReady()?Dn.controlRemoteStream(Tn):Gt.a.warn("Attempted to control remote stream with an active connection to that peer which was not yet ready."):Gt.a.warn("Attempted to control remote stream with no active connection to that peer.")}connect(yn){return io(this,void 0,void 0,function*(){const Tn=yield this.getLocalPeer();if(this.getActiveConnection(yn))return void Gt.a.warn("Attempted to connect to peer with an already active connection.");let Dn;try{Dn=yield this.config.signalingClient.createSession(yield this.config.getToken(),{offerPeerId:Tn.id,answerPeerId:yn})}catch(zn){Object($o.a)(zn,hs.a,Xn=>Xn.statusCode===404),Gt.a.warn("Attempted to connect to peer that does not exist.")}if(Dn)for(this.connectingSessions.set(Dn.id,new Date().getTime()),yield this.connectToSession(Dn);;)switch(yield Object(Vt.a)(.1),this.getConnectionStatus(yn)){case"connecting":continue;case"connected":return Dn.id;case"disconnected":return}})}getConnectionStatus(yn){const Tn=this.getActiveConnection(yn);return Tn?Tn.isReady()?"connected":"connecting":"disconnected"}getIceMode(yn){const Tn=this.getActiveConnection(yn);if(Tn)return Tn.iceMode}disconnect(yn){return io(this,void 0,void 0,function*(){const Tn=this.getActiveConnection(yn);Tn&&(yield this.closeConnection(Tn))})}getLocalPeer(){return io(this,void 0,void 0,function*(){return yield this.localPeer})}getPeers(){return io(this,void 0,void 0,function*(){return yield this.config.signalingClient.getPeers(yield this.config.getToken())})}getPing(yn){const Tn=this.getActiveConnection(yn);if(Tn)return Tn.getPing();Gt.a.warn("Attempted to get ping time from inactive peer.")}getLastMessageTimestamp(yn){const Tn=this.getActiveConnection(yn);if(Tn)return Tn.getLastMessageTimestamp();Gt.a.warn("Attempted to get ping time from inactive peer.")}shutdown(){return io(this,void 0,void 0,function*(){yield this.updateInterval.stop();const yn=this.connections;this.connections=[],yield this.closeConnections(yn)})}closeConnection(yn){return io(this,void 0,void 0,function*(){this.connectingSessions.delete(yn.getSessionId()),yield yn.close();try{yield this.config.signalingClient.deleteSession(yield this.config.getToken(),yn.getSessionId())}catch(Tn){Object($o.a)(Tn,hs.a,Dn=>Dn.statusCode===404)}})}getSessions(){return io(this,void 0,void 0,function*(){const yn=yield this.getLocalPeer();return(yield this.config.signalingClient.getSessions(yield this.config.getToken())).filter(Tn=>Tn.offer.peer.id===yn.id||Tn.answer.peer.id===yn.id)})}createPeer(){return io(this,void 0,void 0,function*(){return yield this.config.signalingClient.createPeer(yield this.config.getToken(),{capabilitySet:this.config.capabilitySet||{}})})}createRTCPeerConnection(yn={}){return io(this,void 0,void 0,function*(){const Tn=this.config.alternateRTCPeerConnection||RTCPeerConnection;this.rtcInstancesConstructed++,this.rtcInstancesConstructed%20||is();try{return new Tn(Object.assign({iceServers:yield this.config.signalingClient.getIceServers(yield this.config.getToken())},yn))}catch(Dn){throw Gt.a.debug(`Failed to create RTCPeerConnection: ${this.rtcInstancesConstructed} total allocated`),Dn}})}closeConnections(yn){return io(this,void 0,void 0,function*(){const Tn=yield Vn(yn.map(Dn=>io(this,void 0,void 0,function*(){yield this.closeConnection(Dn)})));for(const Dn of Tn)Gt.a.warn("Request to close session failed",{error:Dn})})}reset(){return io(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(yn){return this.connections.find(Tn=>Tn.getRemotePeer().id===yn&&Tn.isActive())}update(){return io(this,void 0,void 0,function*(){const yn=yield this.getLocalPeer();try{yield this.config.signalingClient.refreshPeer(yield this.config.getToken(),yn.id)}catch(Tn){Object($o.a)(Tn,hs.a,Dn=>Dn.statusCode===404),Gt.a.warn("Peer expired, creating new peer",{peerId:yn.id}),yield this.reset()}yield this.handleSessions(yield this.getSessions())})}handleSessions(yn){return io(this,void 0,void 0,function*(){yield this.syncConnectionsAndSessions(yn);const Tn=yn.map(Dn=>({session:Dn,connection:this.connections.find(zn=>zn.getSessionId()===Dn.id)}));yield Promise.all(Tn.map(({session:Dn,connection:zn})=>io(this,void 0,void 0,function*(){return yield this.maintainConnection(Dn,zn)})))})}syncConnectionsAndSessions(yn){return io(this,void 0,void 0,function*(){const Tn=new Set(yn.map(Xn=>Xn.id)),Dn=Xn=>Tn.has(Xn.getSessionId())||this.connectingSessions.has(Xn.getSessionId());this.connections=this.connections.filter(Xn=>Dn(Xn));const zn=this.connections.filter(Xn=>!Dn(Xn)||Xn.needsClosing());yield Promise.all(zn.map(Xn=>io(this,void 0,void 0,function*(){yield this.closeConnection(Xn)})))})}maintainConnection(yn,Tn){return io(this,void 0,void 0,function*(){const Dn=yield this.getLocalPeer(),zn=yn.offer.peer.id===Dn.id;if(Tn){if(Tn.isReady())try{yield this.config.signalingClient.refreshSession(yield this.config.getToken(),yn.id)}catch(Xn){Object($o.a)(Xn,hs.a,tr=>tr.statusCode===404),Gt.a.debug("Refresh session not found",{sessionId:yn.id})}else if(Tn.isActive())try{yield this.consumeSignals(Tn)}catch(Xn){Gt.a.warn("Failed to ingest signals, closing connection",{error:Xn}),yield this.closeConnection(Tn)}}else{if(zn)return;yield this.connectToSession(yn)}})}connectToSession(yn){return io(this,void 0,void 0,function*(){const Tn=yield this.getLocalPeer(),Dn=yn.offer.peer.id===Tn.id,zn=yield this.createRTCPeerConnection(),Xn=new Hs(zn,{localPeer:Dn?yn.offer.peer:yn.answer.peer,remotePeer:Dn?yn.answer.peer:yn.offer.peer,sessionId:yn.id,isOffer:Dn,sendSignal:tr=>this.sendSignal(yn.id,tr),receive:(tr,sr)=>this.config.receive(tr,sr)});if(this.connections.find(tr=>tr.getSessionId()===yn.id))return Gt.a.warn("connectToSession called on a session that already has a connection.",{sessionId:yn.id}),void(yield Xn.close());this.setupHandlers(Xn),this.connections.push(Xn);try{yield Xn.connect()}catch(tr){Gt.a.warn("Failed to handle negotiation, closing connection",{error:tr}),yield this.closeConnection(Xn)}})}setupHandlers(yn){const{peerConnection:Tn}=yn,Dn=yn.getSessionId();Tn.onconnectionstatechange=()=>io(this,void 0,void 0,function*(){const zn=this.connectingSessions.get(Dn);if(zn===void 0)return;const Xn=Tn.connectionState;switch(Ar(Tn)&&this.connectingSessions.delete(Dn),Xn){case"connected":{this.connectingSessions.delete(Dn);const tr=new Date().getTime()-zn;rn.aggregate("rtc-connect-time",tr);break}case"failed":rn.increment("rtc-connect-failed"),yield this.closeConnection(yn)}})}consumeSignals(yn){return io(this,void 0,void 0,function*(){let Tn=[];try{Tn=yield this.config.signalingClient.takeSignals(yield this.config.getToken(),yn.getSessionId())}catch(Dn){Object($o.a)(Dn,hs.a,zn=>zn.statusCode===404)}for(const Dn of Tn)yield yn.handleSignal(Dn)})}sendSignal(yn,Tn){return io(this,void 0,void 0,function*(){try{yield this.config.signalingClient.addSignals(yield this.config.getToken(),yn,{signals:[Tn]})}catch(Dn){Object($o.a)(Dn,hs.a,zn=>zn.statusCode===404)}})}}},function(et,tt,nt){var it={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};let ot;const Ut=new Uint8Array(16);function Ft(){if(!ot&&(ot=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!ot))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return ot(Ut)}const Qt=[];for(let Vt=0;Vt<256;++Vt)Qt.push((Vt+256).toString(16).slice(1));function Bt(Vt,Wt=0){return(Qt[Vt[Wt+0]]+Qt[Vt[Wt+1]]+Qt[Vt[Wt+2]]+Qt[Vt[Wt+3]]+"-"+Qt[Vt[Wt+4]]+Qt[Vt[Wt+5]]+"-"+Qt[Vt[Wt+6]]+Qt[Vt[Wt+7]]+"-"+Qt[Vt[Wt+8]]+Qt[Vt[Wt+9]]+"-"+Qt[Vt[Wt+10]]+Qt[Vt[Wt+11]]+Qt[Vt[Wt+12]]+Qt[Vt[Wt+13]]+Qt[Vt[Wt+14]]+Qt[Vt[Wt+15]]).toLowerCase()}tt.a=function(Vt,Wt,Xt){if(it.randomUUID&&!Wt&&!Vt)return it.randomUUID();const Zt=(Vt=Vt||{}).random||(Vt.rng||Ft)();if(Zt[6]=15&Zt[6]|64,Zt[8]=63&Zt[8]|128,Wt){Xt=Xt||0;for(let Yt=0;Yt<16;++Yt)Wt[Xt+Yt]=Zt[Yt];return Wt}return Bt(Zt)}},,function(et,tt,nt){nt.r(tt),nt.d(tt,"LogClient",function(){return Qt});var it=nt(28),ot=nt(11),Ut=nt(10),Ft=function(Bt,Vt,Wt,Xt){return new(Wt||(Wt=Promise))(function(Zt,Yt){function Mt(tn){try{en(Xt.next(tn))}catch(ln){Yt(ln)}}function Gt(tn){try{en(Xt.throw(tn))}catch(ln){Yt(ln)}}function en(tn){var ln;tn.done?Zt(tn.value):(ln=tn.value,ln instanceof Wt?ln:new Wt(function(nn){nn(ln)})).then(Mt,Gt)}en((Xt=Xt.apply(Bt,Vt||[])).next())})};class Qt extends it.a{log(Vt){return Ft(this,void 0,void 0,function*(){const Wt=Qt.token;try{yield this.fetch("logs",{token:Wt,method:"POST",body:{logs:Vt},allowUnsafeRetries:!0})}catch(Xt){Object(ot.a)(Xt,Ut.a,Zt=>Zt.statusCode===401&&Wt!==void 0),Qt.token===Wt&&delete Qt.token,yield this.log(Vt)}})}}}])})})(dist);var eventemitter3Exports={},eventemitter3={get exports(){return eventemitter3Exports},set exports(et){eventemitter3Exports=et}};(function(et){var tt=Object.prototype.hasOwnProperty,nt="~";function it(){}Object.create&&(it.prototype=Object.create(null),new it().__proto__||(nt=!1));function ot(Bt,Vt,Wt){this.fn=Bt,this.context=Vt,this.once=Wt||!1}function Ut(Bt,Vt,Wt,Xt,Zt){if(typeof Wt!="function")throw new TypeError("The listener must be a function");var Yt=new ot(Wt,Xt||Bt,Zt),Mt=nt?nt+Vt:Vt;return Bt._events[Mt]?Bt._events[Mt].fn?Bt._events[Mt]=[Bt._events[Mt],Yt]:Bt._events[Mt].push(Yt):(Bt._events[Mt]=Yt,Bt._eventsCount++),Bt}function Ft(Bt,Vt){--Bt._eventsCount===0?Bt._events=new it:delete Bt._events[Vt]}function Qt(){this._events=new it,this._eventsCount=0}Qt.prototype.eventNames=function(){var Vt=[],Wt,Xt;if(this._eventsCount===0)return Vt;for(Xt in Wt=this._events)tt.call(Wt,Xt)&&Vt.push(nt?Xt.slice(1):Xt);return Object.getOwnPropertySymbols?Vt.concat(Object.getOwnPropertySymbols(Wt)):Vt},Qt.prototype.listeners=function(Vt){var Wt=nt?nt+Vt:Vt,Xt=this._events[Wt];if(!Xt)return[];if(Xt.fn)return[Xt.fn];for(var Zt=0,Yt=Xt.length,Mt=new Array(Yt);Zt=0;)et[tt]=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(et,tt,nt,it,ot){this.static_tree=et,this.extra_bits=tt,this.extra_base=nt,this.elems=it,this.max_length=ot,this.has_stree=et&&et.length}let static_l_desc,static_d_desc,static_bl_desc;function TreeDesc(et,tt){this.dyn_tree=et,this.max_code=0,this.stat_desc=tt}const d_code=et=>et<256?_dist_code[et]:_dist_code[256+(et>>>7)],put_short=(et,tt)=>{et.pending_buf[et.pending++]=tt&255,et.pending_buf[et.pending++]=tt>>>8&255},send_bits=(et,tt,nt)=>{et.bi_valid>Buf_size-nt?(et.bi_buf|=tt<>Buf_size-et.bi_valid,et.bi_valid+=nt-Buf_size):(et.bi_buf|=tt<{send_bits(et,nt[tt*2],nt[tt*2+1])},bi_reverse=(et,tt)=>{let nt=0;do nt|=et&1,et>>>=1,nt<<=1;while(--tt>0);return nt>>>1},bi_flush=et=>{et.bi_valid===16?(put_short(et,et.bi_buf),et.bi_buf=0,et.bi_valid=0):et.bi_valid>=8&&(et.pending_buf[et.pending++]=et.bi_buf&255,et.bi_buf>>=8,et.bi_valid-=8)},gen_bitlen=(et,tt)=>{const nt=tt.dyn_tree,it=tt.max_code,ot=tt.stat_desc.static_tree,Ut=tt.stat_desc.has_stree,Ft=tt.stat_desc.extra_bits,Qt=tt.stat_desc.extra_base,Bt=tt.stat_desc.max_length;let Vt,Wt,Xt,Zt,Yt,Mt,Gt=0;for(Zt=0;Zt<=MAX_BITS$1;Zt++)et.bl_count[Zt]=0;for(nt[et.heap[et.heap_max]*2+1]=0,Vt=et.heap_max+1;VtBt&&(Zt=Bt,Gt++),nt[Wt*2+1]=Zt,!(Wt>it)&&(et.bl_count[Zt]++,Yt=0,Wt>=Qt&&(Yt=Ft[Wt-Qt]),Mt=nt[Wt*2],et.opt_len+=Mt*(Zt+Yt),Ut&&(et.static_len+=Mt*(ot[Wt*2+1]+Yt)));if(Gt!==0){do{for(Zt=Bt-1;et.bl_count[Zt]===0;)Zt--;et.bl_count[Zt]--,et.bl_count[Zt+1]+=2,et.bl_count[Bt]--,Gt-=2}while(Gt>0);for(Zt=Bt;Zt!==0;Zt--)for(Wt=et.bl_count[Zt];Wt!==0;)Xt=et.heap[--Vt],!(Xt>it)&&(nt[Xt*2+1]!==Zt&&(et.opt_len+=(Zt-nt[Xt*2+1])*nt[Xt*2],nt[Xt*2+1]=Zt),Wt--)}},gen_codes=(et,tt,nt)=>{const it=new Array(MAX_BITS$1+1);let ot=0,Ut,Ft;for(Ut=1;Ut<=MAX_BITS$1;Ut++)ot=ot+nt[Ut-1]<<1,it[Ut]=ot;for(Ft=0;Ft<=tt;Ft++){let Qt=et[Ft*2+1];Qt!==0&&(et[Ft*2]=bi_reverse(it[Qt]++,Qt))}},tr_static_init=()=>{let et,tt,nt,it,ot;const Ut=new Array(MAX_BITS$1+1);for(nt=0,it=0;it>=7;it{let tt;for(tt=0;tt{et.bi_valid>8?put_short(et,et.bi_buf):et.bi_valid>0&&(et.pending_buf[et.pending++]=et.bi_buf),et.bi_buf=0,et.bi_valid=0},smaller=(et,tt,nt,it)=>{const ot=tt*2,Ut=nt*2;return et[ot]{const it=et.heap[nt];let ot=nt<<1;for(;ot<=et.heap_len&&(ot{let it,ot,Ut=0,Ft,Qt;if(et.sym_next!==0)do it=et.pending_buf[et.sym_buf+Ut++]&255,it+=(et.pending_buf[et.sym_buf+Ut++]&255)<<8,ot=et.pending_buf[et.sym_buf+Ut++],it===0?send_code(et,ot,tt):(Ft=_length_code[ot],send_code(et,Ft+LITERALS$1+1,tt),Qt=extra_lbits[Ft],Qt!==0&&(ot-=base_length[Ft],send_bits(et,ot,Qt)),it--,Ft=d_code(it),send_code(et,Ft,nt),Qt=extra_dbits[Ft],Qt!==0&&(it-=base_dist[Ft],send_bits(et,it,Qt)));while(Ut{const nt=tt.dyn_tree,it=tt.stat_desc.static_tree,ot=tt.stat_desc.has_stree,Ut=tt.stat_desc.elems;let Ft,Qt,Bt=-1,Vt;for(et.heap_len=0,et.heap_max=HEAP_SIZE$1,Ft=0;Ft>1;Ft>=1;Ft--)pqdownheap(et,nt,Ft);Vt=Ut;do Ft=et.heap[1],et.heap[1]=et.heap[et.heap_len--],pqdownheap(et,nt,1),Qt=et.heap[1],et.heap[--et.heap_max]=Ft,et.heap[--et.heap_max]=Qt,nt[Vt*2]=nt[Ft*2]+nt[Qt*2],et.depth[Vt]=(et.depth[Ft]>=et.depth[Qt]?et.depth[Ft]:et.depth[Qt])+1,nt[Ft*2+1]=nt[Qt*2+1]=Vt,et.heap[1]=Vt++,pqdownheap(et,nt,1);while(et.heap_len>=2);et.heap[--et.heap_max]=et.heap[1],gen_bitlen(et,tt),gen_codes(nt,Bt,et.bl_count)},scan_tree=(et,tt,nt)=>{let it,ot=-1,Ut,Ft=tt[0*2+1],Qt=0,Bt=7,Vt=4;for(Ft===0&&(Bt=138,Vt=3),tt[(nt+1)*2+1]=65535,it=0;it<=nt;it++)Ut=Ft,Ft=tt[(it+1)*2+1],!(++Qt{let it,ot=-1,Ut,Ft=tt[0*2+1],Qt=0,Bt=7,Vt=4;for(Ft===0&&(Bt=138,Vt=3),it=0;it<=nt;it++)if(Ut=Ft,Ft=tt[(it+1)*2+1],!(++Qt{let tt;for(scan_tree(et,et.dyn_ltree,et.l_desc.max_code),scan_tree(et,et.dyn_dtree,et.d_desc.max_code),build_tree(et,et.bl_desc),tt=BL_CODES$1-1;tt>=3&&et.bl_tree[bl_order[tt]*2+1]===0;tt--);return et.opt_len+=3*(tt+1)+5+5+4,tt},send_all_trees=(et,tt,nt,it)=>{let ot;for(send_bits(et,tt-257,5),send_bits(et,nt-1,5),send_bits(et,it-4,4),ot=0;ot{let tt=4093624447,nt;for(nt=0;nt<=31;nt++,tt>>>=1)if(tt&1&&et.dyn_ltree[nt*2]!==0)return Z_BINARY;if(et.dyn_ltree[9*2]!==0||et.dyn_ltree[10*2]!==0||et.dyn_ltree[13*2]!==0)return Z_TEXT;for(nt=32;nt{static_init_done||(tr_static_init(),static_init_done=!0),et.l_desc=new TreeDesc(et.dyn_ltree,static_l_desc),et.d_desc=new TreeDesc(et.dyn_dtree,static_d_desc),et.bl_desc=new TreeDesc(et.bl_tree,static_bl_desc),et.bi_buf=0,et.bi_valid=0,init_block(et)},_tr_stored_block$1=(et,tt,nt,it)=>{send_bits(et,(STORED_BLOCK<<1)+(it?1:0),3),bi_windup(et),put_short(et,nt),put_short(et,~nt),nt&&et.pending_buf.set(et.window.subarray(tt,tt+nt),et.pending),et.pending+=nt},_tr_align$1=et=>{send_bits(et,STATIC_TREES<<1,3),send_code(et,END_BLOCK,static_ltree),bi_flush(et)},_tr_flush_block$1=(et,tt,nt,it)=>{let ot,Ut,Ft=0;et.level>0?(et.strm.data_type===Z_UNKNOWN$1&&(et.strm.data_type=detect_data_type(et)),build_tree(et,et.l_desc),build_tree(et,et.d_desc),Ft=build_bl_tree(et),ot=et.opt_len+3+7>>>3,Ut=et.static_len+3+7>>>3,Ut<=ot&&(ot=Ut)):ot=Ut=nt+5,nt+4<=ot&&tt!==-1?_tr_stored_block$1(et,tt,nt,it):et.strategy===Z_FIXED$1||Ut===ot?(send_bits(et,(STATIC_TREES<<1)+(it?1:0),3),compress_block(et,static_ltree,static_dtree)):(send_bits(et,(DYN_TREES<<1)+(it?1:0),3),send_all_trees(et,et.l_desc.max_code+1,et.d_desc.max_code+1,Ft+1),compress_block(et,et.dyn_ltree,et.dyn_dtree)),init_block(et),it&&bi_windup(et)},_tr_tally$1=(et,tt,nt)=>(et.pending_buf[et.sym_buf+et.sym_next++]=tt,et.pending_buf[et.sym_buf+et.sym_next++]=tt>>8,et.pending_buf[et.sym_buf+et.sym_next++]=nt,tt===0?et.dyn_ltree[nt*2]++:(et.matches++,tt--,et.dyn_ltree[(_length_code[nt]+LITERALS$1+1)*2]++,et.dyn_dtree[d_code(tt)*2]++),et.sym_next===et.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=(et,tt,nt,it)=>{let ot=et&65535|0,Ut=et>>>16&65535|0,Ft=0;for(;nt!==0;){Ft=nt>2e3?2e3:nt,nt-=Ft;do ot=ot+tt[it++]|0,Ut=Ut+ot|0;while(--Ft);ot%=65521,Ut%=65521}return ot|Ut<<16|0};var adler32_1=adler32;const makeTable=()=>{let et,tt=[];for(var nt=0;nt<256;nt++){et=nt;for(var it=0;it<8;it++)et=et&1?3988292384^et>>>1:et>>>1;tt[nt]=et}return tt},crcTable=new Uint32Array(makeTable()),crc32=(et,tt,nt,it)=>{const ot=crcTable,Ut=it+nt;et^=-1;for(let Ft=it;Ft>>8^ot[(et^tt[Ft])&255];return et^-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=(et,tt)=>(et.msg=messages[tt],tt),rank=et=>et*2-(et>4?9:0),zero=et=>{let tt=et.length;for(;--tt>=0;)et[tt]=0},slide_hash=et=>{let tt,nt,it,ot=et.w_size;tt=et.hash_size,it=tt;do nt=et.head[--it],et.head[it]=nt>=ot?nt-ot:0;while(--tt);tt=ot,it=tt;do nt=et.prev[--it],et.prev[it]=nt>=ot?nt-ot:0;while(--tt)};let HASH_ZLIB=(et,tt,nt)=>(tt<{const tt=et.state;let nt=tt.pending;nt>et.avail_out&&(nt=et.avail_out),nt!==0&&(et.output.set(tt.pending_buf.subarray(tt.pending_out,tt.pending_out+nt),et.next_out),et.next_out+=nt,tt.pending_out+=nt,et.total_out+=nt,et.avail_out-=nt,tt.pending-=nt,tt.pending===0&&(tt.pending_out=0))},flush_block_only=(et,tt)=>{_tr_flush_block(et,et.block_start>=0?et.block_start:-1,et.strstart-et.block_start,tt),et.block_start=et.strstart,flush_pending(et.strm)},put_byte=(et,tt)=>{et.pending_buf[et.pending++]=tt},putShortMSB=(et,tt)=>{et.pending_buf[et.pending++]=tt>>>8&255,et.pending_buf[et.pending++]=tt&255},read_buf=(et,tt,nt,it)=>{let ot=et.avail_in;return ot>it&&(ot=it),ot===0?0:(et.avail_in-=ot,tt.set(et.input.subarray(et.next_in,et.next_in+ot),nt),et.state.wrap===1?et.adler=adler32_1(et.adler,tt,ot,nt):et.state.wrap===2&&(et.adler=crc32_1(et.adler,tt,ot,nt)),et.next_in+=ot,et.total_in+=ot,ot)},longest_match=(et,tt)=>{let nt=et.max_chain_length,it=et.strstart,ot,Ut,Ft=et.prev_length,Qt=et.nice_match;const Bt=et.strstart>et.w_size-MIN_LOOKAHEAD?et.strstart-(et.w_size-MIN_LOOKAHEAD):0,Vt=et.window,Wt=et.w_mask,Xt=et.prev,Zt=et.strstart+MAX_MATCH;let Yt=Vt[it+Ft-1],Mt=Vt[it+Ft];et.prev_length>=et.good_match&&(nt>>=2),Qt>et.lookahead&&(Qt=et.lookahead);do if(ot=tt,!(Vt[ot+Ft]!==Mt||Vt[ot+Ft-1]!==Yt||Vt[ot]!==Vt[it]||Vt[++ot]!==Vt[it+1])){it+=2,ot++;do;while(Vt[++it]===Vt[++ot]&&Vt[++it]===Vt[++ot]&&Vt[++it]===Vt[++ot]&&Vt[++it]===Vt[++ot]&&Vt[++it]===Vt[++ot]&&Vt[++it]===Vt[++ot]&&Vt[++it]===Vt[++ot]&&Vt[++it]===Vt[++ot]&&itFt){if(et.match_start=tt,Ft=Ut,Ut>=Qt)break;Yt=Vt[it+Ft-1],Mt=Vt[it+Ft]}}while((tt=Xt[tt&Wt])>Bt&&--nt!==0);return Ft<=et.lookahead?Ft:et.lookahead},fill_window=et=>{const tt=et.w_size;let nt,it,ot;do{if(it=et.window_size-et.lookahead-et.strstart,et.strstart>=tt+(tt-MIN_LOOKAHEAD)&&(et.window.set(et.window.subarray(tt,tt+tt-it),0),et.match_start-=tt,et.strstart-=tt,et.block_start-=tt,et.insert>et.strstart&&(et.insert=et.strstart),slide_hash(et),it+=tt),et.strm.avail_in===0)break;if(nt=read_buf(et.strm,et.window,et.strstart+et.lookahead,it),et.lookahead+=nt,et.lookahead+et.insert>=MIN_MATCH)for(ot=et.strstart-et.insert,et.ins_h=et.window[ot],et.ins_h=HASH(et,et.ins_h,et.window[ot+1]);et.insert&&(et.ins_h=HASH(et,et.ins_h,et.window[ot+MIN_MATCH-1]),et.prev[ot&et.w_mask]=et.head[et.ins_h],et.head[et.ins_h]=ot,ot++,et.insert--,!(et.lookahead+et.insert{let nt=et.pending_buf_size-5>et.w_size?et.w_size:et.pending_buf_size-5,it,ot,Ut,Ft=0,Qt=et.strm.avail_in;do{if(it=65535,Ut=et.bi_valid+42>>3,et.strm.avail_outot+et.strm.avail_in&&(it=ot+et.strm.avail_in),it>Ut&&(it=Ut),it>8,et.pending_buf[et.pending-2]=~it,et.pending_buf[et.pending-1]=~it>>8,flush_pending(et.strm),ot&&(ot>it&&(ot=it),et.strm.output.set(et.window.subarray(et.block_start,et.block_start+ot),et.strm.next_out),et.strm.next_out+=ot,et.strm.avail_out-=ot,et.strm.total_out+=ot,et.block_start+=ot,it-=ot),it&&(read_buf(et.strm,et.strm.output,et.strm.next_out,it),et.strm.next_out+=it,et.strm.avail_out-=it,et.strm.total_out+=it)}while(Ft===0);return Qt-=et.strm.avail_in,Qt&&(Qt>=et.w_size?(et.matches=2,et.window.set(et.strm.input.subarray(et.strm.next_in-et.w_size,et.strm.next_in),0),et.strstart=et.w_size,et.insert=et.strstart):(et.window_size-et.strstart<=Qt&&(et.strstart-=et.w_size,et.window.set(et.window.subarray(et.w_size,et.w_size+et.strstart),0),et.matches<2&&et.matches++,et.insert>et.strstart&&(et.insert=et.strstart)),et.window.set(et.strm.input.subarray(et.strm.next_in-Qt,et.strm.next_in),et.strstart),et.strstart+=Qt,et.insert+=Qt>et.w_size-et.insert?et.w_size-et.insert:Qt),et.block_start=et.strstart),et.high_waterUt&&et.block_start>=et.w_size&&(et.block_start-=et.w_size,et.strstart-=et.w_size,et.window.set(et.window.subarray(et.w_size,et.w_size+et.strstart),0),et.matches<2&&et.matches++,Ut+=et.w_size,et.insert>et.strstart&&(et.insert=et.strstart)),Ut>et.strm.avail_in&&(Ut=et.strm.avail_in),Ut&&(read_buf(et.strm,et.window,et.strstart,Ut),et.strstart+=Ut,et.insert+=Ut>et.w_size-et.insert?et.w_size-et.insert:Ut),et.high_water>3,Ut=et.pending_buf_size-Ut>65535?65535:et.pending_buf_size-Ut,nt=Ut>et.w_size?et.w_size:Ut,ot=et.strstart-et.block_start,(ot>=nt||(ot||tt===Z_FINISH$3)&&tt!==Z_NO_FLUSH$2&&et.strm.avail_in===0&&ot<=Ut)&&(it=ot>Ut?Ut:ot,Ft=tt===Z_FINISH$3&&et.strm.avail_in===0&&it===ot?1:0,_tr_stored_block(et,et.block_start,it,Ft),et.block_start+=it,flush_pending(et.strm)),Ft?BS_FINISH_STARTED:BS_NEED_MORE)},deflate_fast=(et,tt)=>{let nt,it;for(;;){if(et.lookahead=MIN_MATCH&&(et.ins_h=HASH(et,et.ins_h,et.window[et.strstart+MIN_MATCH-1]),nt=et.prev[et.strstart&et.w_mask]=et.head[et.ins_h],et.head[et.ins_h]=et.strstart),nt!==0&&et.strstart-nt<=et.w_size-MIN_LOOKAHEAD&&(et.match_length=longest_match(et,nt)),et.match_length>=MIN_MATCH)if(it=_tr_tally(et,et.strstart-et.match_start,et.match_length-MIN_MATCH),et.lookahead-=et.match_length,et.match_length<=et.max_lazy_match&&et.lookahead>=MIN_MATCH){et.match_length--;do et.strstart++,et.ins_h=HASH(et,et.ins_h,et.window[et.strstart+MIN_MATCH-1]),nt=et.prev[et.strstart&et.w_mask]=et.head[et.ins_h],et.head[et.ins_h]=et.strstart;while(--et.match_length!==0);et.strstart++}else et.strstart+=et.match_length,et.match_length=0,et.ins_h=et.window[et.strstart],et.ins_h=HASH(et,et.ins_h,et.window[et.strstart+1]);else it=_tr_tally(et,0,et.window[et.strstart]),et.lookahead--,et.strstart++;if(it&&(flush_block_only(et,!1),et.strm.avail_out===0))return BS_NEED_MORE}return et.insert=et.strstart{let nt,it,ot;for(;;){if(et.lookahead=MIN_MATCH&&(et.ins_h=HASH(et,et.ins_h,et.window[et.strstart+MIN_MATCH-1]),nt=et.prev[et.strstart&et.w_mask]=et.head[et.ins_h],et.head[et.ins_h]=et.strstart),et.prev_length=et.match_length,et.prev_match=et.match_start,et.match_length=MIN_MATCH-1,nt!==0&&et.prev_length4096)&&(et.match_length=MIN_MATCH-1)),et.prev_length>=MIN_MATCH&&et.match_length<=et.prev_length){ot=et.strstart+et.lookahead-MIN_MATCH,it=_tr_tally(et,et.strstart-1-et.prev_match,et.prev_length-MIN_MATCH),et.lookahead-=et.prev_length-1,et.prev_length-=2;do++et.strstart<=ot&&(et.ins_h=HASH(et,et.ins_h,et.window[et.strstart+MIN_MATCH-1]),nt=et.prev[et.strstart&et.w_mask]=et.head[et.ins_h],et.head[et.ins_h]=et.strstart);while(--et.prev_length!==0);if(et.match_available=0,et.match_length=MIN_MATCH-1,et.strstart++,it&&(flush_block_only(et,!1),et.strm.avail_out===0))return BS_NEED_MORE}else if(et.match_available){if(it=_tr_tally(et,0,et.window[et.strstart-1]),it&&flush_block_only(et,!1),et.strstart++,et.lookahead--,et.strm.avail_out===0)return BS_NEED_MORE}else et.match_available=1,et.strstart++,et.lookahead--}return et.match_available&&(it=_tr_tally(et,0,et.window[et.strstart-1]),et.match_available=0),et.insert=et.strstart{let nt,it,ot,Ut;const Ft=et.window;for(;;){if(et.lookahead<=MAX_MATCH){if(fill_window(et),et.lookahead<=MAX_MATCH&&tt===Z_NO_FLUSH$2)return BS_NEED_MORE;if(et.lookahead===0)break}if(et.match_length=0,et.lookahead>=MIN_MATCH&&et.strstart>0&&(ot=et.strstart-1,it=Ft[ot],it===Ft[++ot]&&it===Ft[++ot]&&it===Ft[++ot])){Ut=et.strstart+MAX_MATCH;do;while(it===Ft[++ot]&&it===Ft[++ot]&&it===Ft[++ot]&&it===Ft[++ot]&&it===Ft[++ot]&&it===Ft[++ot]&&it===Ft[++ot]&&it===Ft[++ot]&&otet.lookahead&&(et.match_length=et.lookahead)}if(et.match_length>=MIN_MATCH?(nt=_tr_tally(et,1,et.match_length-MIN_MATCH),et.lookahead-=et.match_length,et.strstart+=et.match_length,et.match_length=0):(nt=_tr_tally(et,0,et.window[et.strstart]),et.lookahead--,et.strstart++),nt&&(flush_block_only(et,!1),et.strm.avail_out===0))return BS_NEED_MORE}return et.insert=0,tt===Z_FINISH$3?(flush_block_only(et,!0),et.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):et.sym_next&&(flush_block_only(et,!1),et.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE},deflate_huff=(et,tt)=>{let nt;for(;;){if(et.lookahead===0&&(fill_window(et),et.lookahead===0)){if(tt===Z_NO_FLUSH$2)return BS_NEED_MORE;break}if(et.match_length=0,nt=_tr_tally(et,0,et.window[et.strstart]),et.lookahead--,et.strstart++,nt&&(flush_block_only(et,!1),et.strm.avail_out===0))return BS_NEED_MORE}return et.insert=0,tt===Z_FINISH$3?(flush_block_only(et,!0),et.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):et.sym_next&&(flush_block_only(et,!1),et.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE};function Config$1(et,tt,nt,it,ot){this.good_length=et,this.max_lazy=tt,this.nice_length=nt,this.max_chain=it,this.func=ot}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=et=>{et.window_size=2*et.w_size,zero(et.head),et.max_lazy_match=configuration_table[et.level].max_lazy,et.good_match=configuration_table[et.level].good_length,et.nice_match=configuration_table[et.level].nice_length,et.max_chain_length=configuration_table[et.level].max_chain,et.strstart=0,et.block_start=0,et.lookahead=0,et.insert=0,et.match_length=et.prev_length=MIN_MATCH-1,et.match_available=0,et.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=et=>{if(!et)return 1;const tt=et.state;return!tt||tt.strm!==et||tt.status!==INIT_STATE&&tt.status!==GZIP_STATE&&tt.status!==EXTRA_STATE&&tt.status!==NAME_STATE&&tt.status!==COMMENT_STATE&&tt.status!==HCRC_STATE&&tt.status!==BUSY_STATE&&tt.status!==FINISH_STATE?1:0},deflateResetKeep=et=>{if(deflateStateCheck(et))return err(et,Z_STREAM_ERROR$2);et.total_in=et.total_out=0,et.data_type=Z_UNKNOWN;const tt=et.state;return tt.pending=0,tt.pending_out=0,tt.wrap<0&&(tt.wrap=-tt.wrap),tt.status=tt.wrap===2?GZIP_STATE:tt.wrap?INIT_STATE:BUSY_STATE,et.adler=tt.wrap===2?0:1,tt.last_flush=-2,_tr_init(tt),Z_OK$3},deflateReset=et=>{const tt=deflateResetKeep(et);return tt===Z_OK$3&&lm_init(et.state),tt},deflateSetHeader=(et,tt)=>deflateStateCheck(et)||et.state.wrap!==2?Z_STREAM_ERROR$2:(et.state.gzhead=tt,Z_OK$3),deflateInit2=(et,tt,nt,it,ot,Ut)=>{if(!et)return Z_STREAM_ERROR$2;let Ft=1;if(tt===Z_DEFAULT_COMPRESSION$1&&(tt=6),it<0?(Ft=0,it=-it):it>15&&(Ft=2,it-=16),ot<1||ot>MAX_MEM_LEVEL||nt!==Z_DEFLATED$2||it<8||it>15||tt<0||tt>9||Ut<0||Ut>Z_FIXED||it===8&&Ft!==1)return err(et,Z_STREAM_ERROR$2);it===8&&(it=9);const Qt=new DeflateState;return et.state=Qt,Qt.strm=et,Qt.status=INIT_STATE,Qt.wrap=Ft,Qt.gzhead=null,Qt.w_bits=it,Qt.w_size=1<deflateInit2(et,tt,Z_DEFLATED$2,MAX_WBITS$1,DEF_MEM_LEVEL,Z_DEFAULT_STRATEGY$1),deflate$2=(et,tt)=>{if(deflateStateCheck(et)||tt>Z_BLOCK$1||tt<0)return et?err(et,Z_STREAM_ERROR$2):Z_STREAM_ERROR$2;const nt=et.state;if(!et.output||et.avail_in!==0&&!et.input||nt.status===FINISH_STATE&&tt!==Z_FINISH$3)return err(et,et.avail_out===0?Z_BUF_ERROR$1:Z_STREAM_ERROR$2);const it=nt.last_flush;if(nt.last_flush=tt,nt.pending!==0){if(flush_pending(et),et.avail_out===0)return nt.last_flush=-1,Z_OK$3}else if(et.avail_in===0&&rank(tt)<=rank(it)&&tt!==Z_FINISH$3)return err(et,Z_BUF_ERROR$1);if(nt.status===FINISH_STATE&&et.avail_in!==0)return err(et,Z_BUF_ERROR$1);if(nt.status===INIT_STATE&&nt.wrap===0&&(nt.status=BUSY_STATE),nt.status===INIT_STATE){let ot=Z_DEFLATED$2+(nt.w_bits-8<<4)<<8,Ut=-1;if(nt.strategy>=Z_HUFFMAN_ONLY||nt.level<2?Ut=0:nt.level<6?Ut=1:nt.level===6?Ut=2:Ut=3,ot|=Ut<<6,nt.strstart!==0&&(ot|=PRESET_DICT),ot+=31-ot%31,putShortMSB(nt,ot),nt.strstart!==0&&(putShortMSB(nt,et.adler>>>16),putShortMSB(nt,et.adler&65535)),et.adler=1,nt.status=BUSY_STATE,flush_pending(et),nt.pending!==0)return nt.last_flush=-1,Z_OK$3}if(nt.status===GZIP_STATE){if(et.adler=0,put_byte(nt,31),put_byte(nt,139),put_byte(nt,8),nt.gzhead)put_byte(nt,(nt.gzhead.text?1:0)+(nt.gzhead.hcrc?2:0)+(nt.gzhead.extra?4:0)+(nt.gzhead.name?8:0)+(nt.gzhead.comment?16:0)),put_byte(nt,nt.gzhead.time&255),put_byte(nt,nt.gzhead.time>>8&255),put_byte(nt,nt.gzhead.time>>16&255),put_byte(nt,nt.gzhead.time>>24&255),put_byte(nt,nt.level===9?2:nt.strategy>=Z_HUFFMAN_ONLY||nt.level<2?4:0),put_byte(nt,nt.gzhead.os&255),nt.gzhead.extra&&nt.gzhead.extra.length&&(put_byte(nt,nt.gzhead.extra.length&255),put_byte(nt,nt.gzhead.extra.length>>8&255)),nt.gzhead.hcrc&&(et.adler=crc32_1(et.adler,nt.pending_buf,nt.pending,0)),nt.gzindex=0,nt.status=EXTRA_STATE;else if(put_byte(nt,0),put_byte(nt,0),put_byte(nt,0),put_byte(nt,0),put_byte(nt,0),put_byte(nt,nt.level===9?2:nt.strategy>=Z_HUFFMAN_ONLY||nt.level<2?4:0),put_byte(nt,OS_CODE),nt.status=BUSY_STATE,flush_pending(et),nt.pending!==0)return nt.last_flush=-1,Z_OK$3}if(nt.status===EXTRA_STATE){if(nt.gzhead.extra){let ot=nt.pending,Ut=(nt.gzhead.extra.length&65535)-nt.gzindex;for(;nt.pending+Ut>nt.pending_buf_size;){let Qt=nt.pending_buf_size-nt.pending;if(nt.pending_buf.set(nt.gzhead.extra.subarray(nt.gzindex,nt.gzindex+Qt),nt.pending),nt.pending=nt.pending_buf_size,nt.gzhead.hcrc&&nt.pending>ot&&(et.adler=crc32_1(et.adler,nt.pending_buf,nt.pending-ot,ot)),nt.gzindex+=Qt,flush_pending(et),nt.pending!==0)return nt.last_flush=-1,Z_OK$3;ot=0,Ut-=Qt}let Ft=new Uint8Array(nt.gzhead.extra);nt.pending_buf.set(Ft.subarray(nt.gzindex,nt.gzindex+Ut),nt.pending),nt.pending+=Ut,nt.gzhead.hcrc&&nt.pending>ot&&(et.adler=crc32_1(et.adler,nt.pending_buf,nt.pending-ot,ot)),nt.gzindex=0}nt.status=NAME_STATE}if(nt.status===NAME_STATE){if(nt.gzhead.name){let ot=nt.pending,Ut;do{if(nt.pending===nt.pending_buf_size){if(nt.gzhead.hcrc&&nt.pending>ot&&(et.adler=crc32_1(et.adler,nt.pending_buf,nt.pending-ot,ot)),flush_pending(et),nt.pending!==0)return nt.last_flush=-1,Z_OK$3;ot=0}nt.gzindexot&&(et.adler=crc32_1(et.adler,nt.pending_buf,nt.pending-ot,ot)),nt.gzindex=0}nt.status=COMMENT_STATE}if(nt.status===COMMENT_STATE){if(nt.gzhead.comment){let ot=nt.pending,Ut;do{if(nt.pending===nt.pending_buf_size){if(nt.gzhead.hcrc&&nt.pending>ot&&(et.adler=crc32_1(et.adler,nt.pending_buf,nt.pending-ot,ot)),flush_pending(et),nt.pending!==0)return nt.last_flush=-1,Z_OK$3;ot=0}nt.gzindexot&&(et.adler=crc32_1(et.adler,nt.pending_buf,nt.pending-ot,ot))}nt.status=HCRC_STATE}if(nt.status===HCRC_STATE){if(nt.gzhead.hcrc){if(nt.pending+2>nt.pending_buf_size&&(flush_pending(et),nt.pending!==0))return nt.last_flush=-1,Z_OK$3;put_byte(nt,et.adler&255),put_byte(nt,et.adler>>8&255),et.adler=0}if(nt.status=BUSY_STATE,flush_pending(et),nt.pending!==0)return nt.last_flush=-1,Z_OK$3}if(et.avail_in!==0||nt.lookahead!==0||tt!==Z_NO_FLUSH$2&&nt.status!==FINISH_STATE){let ot=nt.level===0?deflate_stored(nt,tt):nt.strategy===Z_HUFFMAN_ONLY?deflate_huff(nt,tt):nt.strategy===Z_RLE?deflate_rle(nt,tt):configuration_table[nt.level].func(nt,tt);if((ot===BS_FINISH_STARTED||ot===BS_FINISH_DONE)&&(nt.status=FINISH_STATE),ot===BS_NEED_MORE||ot===BS_FINISH_STARTED)return et.avail_out===0&&(nt.last_flush=-1),Z_OK$3;if(ot===BS_BLOCK_DONE&&(tt===Z_PARTIAL_FLUSH?_tr_align(nt):tt!==Z_BLOCK$1&&(_tr_stored_block(nt,0,0,!1),tt===Z_FULL_FLUSH$1&&(zero(nt.head),nt.lookahead===0&&(nt.strstart=0,nt.block_start=0,nt.insert=0))),flush_pending(et),et.avail_out===0))return nt.last_flush=-1,Z_OK$3}return tt!==Z_FINISH$3?Z_OK$3:nt.wrap<=0?Z_STREAM_END$3:(nt.wrap===2?(put_byte(nt,et.adler&255),put_byte(nt,et.adler>>8&255),put_byte(nt,et.adler>>16&255),put_byte(nt,et.adler>>24&255),put_byte(nt,et.total_in&255),put_byte(nt,et.total_in>>8&255),put_byte(nt,et.total_in>>16&255),put_byte(nt,et.total_in>>24&255)):(putShortMSB(nt,et.adler>>>16),putShortMSB(nt,et.adler&65535)),flush_pending(et),nt.wrap>0&&(nt.wrap=-nt.wrap),nt.pending!==0?Z_OK$3:Z_STREAM_END$3)},deflateEnd=et=>{if(deflateStateCheck(et))return Z_STREAM_ERROR$2;const tt=et.state.status;return et.state=null,tt===BUSY_STATE?err(et,Z_DATA_ERROR$2):Z_OK$3},deflateSetDictionary=(et,tt)=>{let nt=tt.length;if(deflateStateCheck(et))return Z_STREAM_ERROR$2;const it=et.state,ot=it.wrap;if(ot===2||ot===1&&it.status!==INIT_STATE||it.lookahead)return Z_STREAM_ERROR$2;if(ot===1&&(et.adler=adler32_1(et.adler,tt,nt,0)),it.wrap=0,nt>=it.w_size){ot===0&&(zero(it.head),it.strstart=0,it.block_start=0,it.insert=0);let Bt=new Uint8Array(it.w_size);Bt.set(tt.subarray(nt-it.w_size,nt),0),tt=Bt,nt=it.w_size}const Ut=et.avail_in,Ft=et.next_in,Qt=et.input;for(et.avail_in=nt,et.next_in=0,et.input=tt,fill_window(it);it.lookahead>=MIN_MATCH;){let Bt=it.strstart,Vt=it.lookahead-(MIN_MATCH-1);do it.ins_h=HASH(it,it.ins_h,it.window[Bt+MIN_MATCH-1]),it.prev[Bt&it.w_mask]=it.head[it.ins_h],it.head[it.ins_h]=Bt,Bt++;while(--Vt);it.strstart=Bt,it.lookahead=MIN_MATCH-1,fill_window(it)}return it.strstart+=it.lookahead,it.block_start=it.strstart,it.insert=it.lookahead,it.lookahead=0,it.match_length=it.prev_length=MIN_MATCH-1,it.match_available=0,et.next_in=Ft,et.input=Qt,et.avail_in=Ut,it.wrap=ot,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=(et,tt)=>Object.prototype.hasOwnProperty.call(et,tt);var assign=function(et){const tt=Array.prototype.slice.call(arguments,1);for(;tt.length;){const nt=tt.shift();if(nt){if(typeof nt!="object")throw new TypeError(nt+"must be non-object");for(const it in nt)_has(nt,it)&&(et[it]=nt[it])}}return et},flattenChunks=et=>{let tt=0;for(let it=0,ot=et.length;it=252?6:et>=248?5:et>=240?4:et>=224?3:et>=192?2:1;_utf8len[254]=_utf8len[254]=1;var string2buf=et=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(et);let tt,nt,it,ot,Ut,Ft=et.length,Qt=0;for(ot=0;ot>>6,tt[Ut++]=128|nt&63):nt<65536?(tt[Ut++]=224|nt>>>12,tt[Ut++]=128|nt>>>6&63,tt[Ut++]=128|nt&63):(tt[Ut++]=240|nt>>>18,tt[Ut++]=128|nt>>>12&63,tt[Ut++]=128|nt>>>6&63,tt[Ut++]=128|nt&63);return tt};const buf2binstring=(et,tt)=>{if(tt<65534&&et.subarray&&STR_APPLY_UIA_OK)return String.fromCharCode.apply(null,et.length===tt?et:et.subarray(0,tt));let nt="";for(let it=0;it{const nt=tt||et.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(et.subarray(0,tt));let it,ot;const Ut=new Array(nt*2);for(ot=0,it=0;it4){Ut[ot++]=65533,it+=Qt-1;continue}for(Ft&=Qt===2?31:Qt===3?15:7;Qt>1&&it1){Ut[ot++]=65533;continue}Ft<65536?Ut[ot++]=Ft:(Ft-=65536,Ut[ot++]=55296|Ft>>10&1023,Ut[ot++]=56320|Ft&1023)}return buf2binstring(Ut,ot)},utf8border=(et,tt)=>{tt=tt||et.length,tt>et.length&&(tt=et.length);let nt=tt-1;for(;nt>=0&&(et[nt]&192)===128;)nt--;return nt<0||nt===0?tt:nt+_utf8len[et[nt]]>tt?nt:tt},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(et){this.options=common.assign({level:Z_DEFAULT_COMPRESSION,method:Z_DEFLATED$1,chunkSize:16384,windowBits:15,memLevel:8,strategy:Z_DEFAULT_STRATEGY},et||{});let tt=this.options;tt.raw&&tt.windowBits>0?tt.windowBits=-tt.windowBits:tt.gzip&&tt.windowBits>0&&tt.windowBits<16&&(tt.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new zstream,this.strm.avail_out=0;let nt=deflate_1$2.deflateInit2(this.strm,tt.level,tt.method,tt.windowBits,tt.memLevel,tt.strategy);if(nt!==Z_OK$2)throw new Error(messages[nt]);if(tt.header&&deflate_1$2.deflateSetHeader(this.strm,tt.header),tt.dictionary){let it;if(typeof tt.dictionary=="string"?it=strings.string2buf(tt.dictionary):toString$1.call(tt.dictionary)==="[object ArrayBuffer]"?it=new Uint8Array(tt.dictionary):it=tt.dictionary,nt=deflate_1$2.deflateSetDictionary(this.strm,it),nt!==Z_OK$2)throw new Error(messages[nt]);this._dict_set=!0}}Deflate$1.prototype.push=function(et,tt){const nt=this.strm,it=this.options.chunkSize;let ot,Ut;if(this.ended)return!1;for(tt===~~tt?Ut=tt:Ut=tt===!0?Z_FINISH$2:Z_NO_FLUSH$1,typeof et=="string"?nt.input=strings.string2buf(et):toString$1.call(et)==="[object ArrayBuffer]"?nt.input=new Uint8Array(et):nt.input=et,nt.next_in=0,nt.avail_in=nt.input.length;;){if(nt.avail_out===0&&(nt.output=new Uint8Array(it),nt.next_out=0,nt.avail_out=it),(Ut===Z_SYNC_FLUSH||Ut===Z_FULL_FLUSH)&&nt.avail_out<=6){this.onData(nt.output.subarray(0,nt.next_out)),nt.avail_out=0;continue}if(ot=deflate_1$2.deflate(nt,Ut),ot===Z_STREAM_END$2)return nt.next_out>0&&this.onData(nt.output.subarray(0,nt.next_out)),ot=deflate_1$2.deflateEnd(this.strm),this.onEnd(ot),this.ended=!0,ot===Z_OK$2;if(nt.avail_out===0){this.onData(nt.output);continue}if(Ut>0&&nt.next_out>0){this.onData(nt.output.subarray(0,nt.next_out)),nt.avail_out=0;continue}if(nt.avail_in===0)break}return!0};Deflate$1.prototype.onData=function(et){this.chunks.push(et)};Deflate$1.prototype.onEnd=function(et){et===Z_OK$2&&(this.result=common.flattenChunks(this.chunks)),this.chunks=[],this.err=et,this.msg=this.strm.msg};function deflate$1(et,tt){const nt=new Deflate$1(tt);if(nt.push(et,!0),nt.err)throw nt.msg||messages[nt.err];return nt.result}function deflateRaw$1(et,tt){return tt=tt||{},tt.raw=!0,deflate$1(et,tt)}function gzip$1(et,tt){return tt=tt||{},tt.gzip=!0,deflate$1(et,tt)}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 BAD$1=16209,TYPE$1=16191;var inffast=function et(tt,nt){let it,ot,Ut,Ft,Qt,Bt,Vt,Wt,Xt,Zt,Yt,Mt,Gt,en,tn,ln,nn,sn,Kt,dn,Qn,En,an,rn;const gn=tt.state;it=tt.next_in,an=tt.input,ot=it+(tt.avail_in-5),Ut=tt.next_out,rn=tt.output,Ft=Ut-(nt-tt.avail_out),Qt=Ut+(tt.avail_out-257),Bt=gn.dmax,Vt=gn.wsize,Wt=gn.whave,Xt=gn.wnext,Zt=gn.window,Yt=gn.hold,Mt=gn.bits,Gt=gn.lencode,en=gn.distcode,tn=(1<>>24,Yt>>>=sn,Mt-=sn,sn=nn>>>16&255,sn===0)rn[Ut++]=nn&65535;else if(sn&16){Kt=nn&65535,sn&=15,sn&&(Mt>>=sn,Mt-=sn),Mt<15&&(Yt+=an[it++]<>>24,Yt>>>=sn,Mt-=sn,sn=nn>>>16&255,sn&16){if(dn=nn&65535,sn&=15,MtBt){tt.msg="invalid distance too far back",gn.mode=BAD$1;break e}if(Yt>>>=sn,Mt-=sn,sn=Ut-Ft,dn>sn){if(sn=dn-sn,sn>Wt&&gn.sane){tt.msg="invalid distance too far back",gn.mode=BAD$1;break e}if(Qn=0,En=Zt,Xt===0){if(Qn+=Vt-sn,sn2;)rn[Ut++]=En[Qn++],rn[Ut++]=En[Qn++],rn[Ut++]=En[Qn++],Kt-=3;Kt&&(rn[Ut++]=En[Qn++],Kt>1&&(rn[Ut++]=En[Qn++]))}else{Qn=Ut-dn;do rn[Ut++]=rn[Qn++],rn[Ut++]=rn[Qn++],rn[Ut++]=rn[Qn++],Kt-=3;while(Kt>2);Kt&&(rn[Ut++]=rn[Qn++],Kt>1&&(rn[Ut++]=rn[Qn++]))}}else if(sn&64){tt.msg="invalid distance code",gn.mode=BAD$1;break e}else{nn=en[(nn&65535)+(Yt&(1<>3,it-=Kt,Mt-=Kt<<3,Yt&=(1<{const Bt=Qt.bits;let Vt=0,Wt=0,Xt=0,Zt=0,Yt=0,Mt=0,Gt=0,en=0,tn=0,ln=0,nn,sn,Kt,dn,Qn,En=null,an;const rn=new Uint16Array(MAXBITS+1),gn=new Uint16Array(MAXBITS+1);let un=null,Un,_n,vn;for(Vt=0;Vt<=MAXBITS;Vt++)rn[Vt]=0;for(Wt=0;Wt=1&&rn[Zt]===0;Zt--);if(Yt>Zt&&(Yt=Zt),Zt===0)return ot[Ut++]=1<<24|64<<16|0,ot[Ut++]=1<<24|64<<16|0,Qt.bits=1,0;for(Xt=1;Xt0&&(et===CODES$1||Zt!==1))return-1;for(gn[1]=0,Vt=1;VtENOUGH_LENS$1||et===DISTS$1&&tn>ENOUGH_DISTS$1)return 1;for(;;){Un=Vt-Gt,Ft[Wt]+1=an?(_n=un[Ft[Wt]-an],vn=En[Ft[Wt]-an]):(_n=32+64,vn=0),nn=1<>Gt)+sn]=Un<<24|_n<<16|vn|0;while(sn!==0);for(nn=1<>=1;if(nn!==0?(ln&=nn-1,ln+=nn):ln=0,Wt++,--rn[Vt]===0){if(Vt===Zt)break;Vt=tt[nt+Ft[Wt]]}if(Vt>Yt&&(ln&dn)!==Kt){for(Gt===0&&(Gt=Yt),Qn+=Xt,Mt=Vt-Gt,en=1<ENOUGH_LENS$1||et===DISTS$1&&tn>ENOUGH_DISTS$1)return 1;Kt=ln&dn,ot[Kt]=Yt<<24|Mt<<16|Qn-Ut|0}}return ln!==0&&(ot[Qn+ln]=Vt-Gt<<24|64<<16|0),Qt.bits=Yt,0};var inftrees=inflate_table;const CODES=0,LENS=1,DISTS=2,{Z_FINISH:Z_FINISH$1,Z_BLOCK,Z_TREES,Z_OK:Z_OK$1,Z_STREAM_END:Z_STREAM_END$1,Z_NEED_DICT:Z_NEED_DICT$1,Z_STREAM_ERROR:Z_STREAM_ERROR$1,Z_DATA_ERROR:Z_DATA_ERROR$1,Z_MEM_ERROR:Z_MEM_ERROR$1,Z_BUF_ERROR,Z_DEFLATED}=constants$2,HEAD=16180,FLAGS=16181,TIME=16182,OS=16183,EXLEN=16184,EXTRA=16185,NAME=16186,COMMENT=16187,HCRC=16188,DICTID=16189,DICT=16190,TYPE=16191,TYPEDO=16192,STORED=16193,COPY_=16194,COPY=16195,TABLE=16196,LENLENS=16197,CODELENS=16198,LEN_=16199,LEN=16200,LENEXT=16201,DIST=16202,DISTEXT=16203,MATCH=16204,LIT=16205,CHECK=16206,LENGTH=16207,DONE=16208,BAD=16209,MEM=16210,SYNC=16211,ENOUGH_LENS=852,ENOUGH_DISTS=592,MAX_WBITS=15,DEF_WBITS=MAX_WBITS,zswap32=et=>(et>>>24&255)+(et>>>8&65280)+((et&65280)<<8)+((et&255)<<24);function InflateState(){this.strm=null,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 Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const inflateStateCheck=et=>{if(!et)return 1;const tt=et.state;return!tt||tt.strm!==et||tt.modeSYNC?1:0},inflateResetKeep=et=>{if(inflateStateCheck(et))return Z_STREAM_ERROR$1;const tt=et.state;return et.total_in=et.total_out=tt.total=0,et.msg="",tt.wrap&&(et.adler=tt.wrap&1),tt.mode=HEAD,tt.last=0,tt.havedict=0,tt.flags=-1,tt.dmax=32768,tt.head=null,tt.hold=0,tt.bits=0,tt.lencode=tt.lendyn=new Int32Array(ENOUGH_LENS),tt.distcode=tt.distdyn=new Int32Array(ENOUGH_DISTS),tt.sane=1,tt.back=-1,Z_OK$1},inflateReset=et=>{if(inflateStateCheck(et))return Z_STREAM_ERROR$1;const tt=et.state;return tt.wsize=0,tt.whave=0,tt.wnext=0,inflateResetKeep(et)},inflateReset2=(et,tt)=>{let nt;if(inflateStateCheck(et))return Z_STREAM_ERROR$1;const it=et.state;return tt<0?(nt=0,tt=-tt):(nt=(tt>>4)+5,tt<48&&(tt&=15)),tt&&(tt<8||tt>15)?Z_STREAM_ERROR$1:(it.window!==null&&it.wbits!==tt&&(it.window=null),it.wrap=nt,it.wbits=tt,inflateReset(et))},inflateInit2=(et,tt)=>{if(!et)return Z_STREAM_ERROR$1;const nt=new InflateState;et.state=nt,nt.strm=et,nt.window=null,nt.mode=HEAD;const it=inflateReset2(et,tt);return it!==Z_OK$1&&(et.state=null),it},inflateInit=et=>inflateInit2(et,DEF_WBITS);let virgin=!0,lenfix,distfix;const fixedtables=et=>{if(virgin){lenfix=new Int32Array(512),distfix=new Int32Array(32);let tt=0;for(;tt<144;)et.lens[tt++]=8;for(;tt<256;)et.lens[tt++]=9;for(;tt<280;)et.lens[tt++]=7;for(;tt<288;)et.lens[tt++]=8;for(inftrees(LENS,et.lens,0,288,lenfix,0,et.work,{bits:9}),tt=0;tt<32;)et.lens[tt++]=5;inftrees(DISTS,et.lens,0,32,distfix,0,et.work,{bits:5}),virgin=!1}et.lencode=lenfix,et.lenbits=9,et.distcode=distfix,et.distbits=5},updatewindow=(et,tt,nt,it)=>{let ot;const Ut=et.state;return Ut.window===null&&(Ut.wsize=1<=Ut.wsize?(Ut.window.set(tt.subarray(nt-Ut.wsize,nt),0),Ut.wnext=0,Ut.whave=Ut.wsize):(ot=Ut.wsize-Ut.wnext,ot>it&&(ot=it),Ut.window.set(tt.subarray(nt-it,nt-it+ot),Ut.wnext),it-=ot,it?(Ut.window.set(tt.subarray(nt-it,nt),0),Ut.wnext=it,Ut.whave=Ut.wsize):(Ut.wnext+=ot,Ut.wnext===Ut.wsize&&(Ut.wnext=0),Ut.whave{let nt,it,ot,Ut,Ft,Qt,Bt,Vt,Wt,Xt,Zt,Yt,Mt,Gt,en=0,tn,ln,nn,sn,Kt,dn,Qn,En;const an=new Uint8Array(4);let rn,gn;const un=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(inflateStateCheck(et)||!et.output||!et.input&&et.avail_in!==0)return Z_STREAM_ERROR$1;nt=et.state,nt.mode===TYPE&&(nt.mode=TYPEDO),Ft=et.next_out,ot=et.output,Bt=et.avail_out,Ut=et.next_in,it=et.input,Qt=et.avail_in,Vt=nt.hold,Wt=nt.bits,Xt=Qt,Zt=Bt,En=Z_OK$1;e:for(;;)switch(nt.mode){case HEAD:if(nt.wrap===0){nt.mode=TYPEDO;break}for(;Wt<16;){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>8&255,nt.check=crc32_1(nt.check,an,2,0),Vt=0,Wt=0,nt.mode=FLAGS;break}if(nt.head&&(nt.head.done=!1),!(nt.wrap&1)||(((Vt&255)<<8)+(Vt>>8))%31){et.msg="incorrect header check",nt.mode=BAD;break}if((Vt&15)!==Z_DEFLATED){et.msg="unknown compression method",nt.mode=BAD;break}if(Vt>>>=4,Wt-=4,Qn=(Vt&15)+8,nt.wbits===0&&(nt.wbits=Qn),Qn>15||Qn>nt.wbits){et.msg="invalid window size",nt.mode=BAD;break}nt.dmax=1<>8&1),nt.flags&512&&nt.wrap&4&&(an[0]=Vt&255,an[1]=Vt>>>8&255,nt.check=crc32_1(nt.check,an,2,0)),Vt=0,Wt=0,nt.mode=TIME;case TIME:for(;Wt<32;){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>8&255,an[2]=Vt>>>16&255,an[3]=Vt>>>24&255,nt.check=crc32_1(nt.check,an,4,0)),Vt=0,Wt=0,nt.mode=OS;case OS:for(;Wt<16;){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>8),nt.flags&512&&nt.wrap&4&&(an[0]=Vt&255,an[1]=Vt>>>8&255,nt.check=crc32_1(nt.check,an,2,0)),Vt=0,Wt=0,nt.mode=EXLEN;case EXLEN:if(nt.flags&1024){for(;Wt<16;){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>8&255,nt.check=crc32_1(nt.check,an,2,0)),Vt=0,Wt=0}else nt.head&&(nt.head.extra=null);nt.mode=EXTRA;case EXTRA:if(nt.flags&1024&&(Yt=nt.length,Yt>Qt&&(Yt=Qt),Yt&&(nt.head&&(Qn=nt.head.extra_len-nt.length,nt.head.extra||(nt.head.extra=new Uint8Array(nt.head.extra_len)),nt.head.extra.set(it.subarray(Ut,Ut+Yt),Qn)),nt.flags&512&&nt.wrap&4&&(nt.check=crc32_1(nt.check,it,Yt,Ut)),Qt-=Yt,Ut+=Yt,nt.length-=Yt),nt.length))break e;nt.length=0,nt.mode=NAME;case NAME:if(nt.flags&2048){if(Qt===0)break e;Yt=0;do Qn=it[Ut+Yt++],nt.head&&Qn&&nt.length<65536&&(nt.head.name+=String.fromCharCode(Qn));while(Qn&&Yt>9&1,nt.head.done=!0),et.adler=nt.check=0,nt.mode=TYPE;break;case DICTID:for(;Wt<32;){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>=Wt&7,Wt-=Wt&7,nt.mode=CHECK;break}for(;Wt<3;){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>=1,Wt-=1,Vt&3){case 0:nt.mode=STORED;break;case 1:if(fixedtables(nt),nt.mode=LEN_,tt===Z_TREES){Vt>>>=2,Wt-=2;break e}break;case 2:nt.mode=TABLE;break;case 3:et.msg="invalid block type",nt.mode=BAD}Vt>>>=2,Wt-=2;break;case STORED:for(Vt>>>=Wt&7,Wt-=Wt&7;Wt<32;){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>16^65535)){et.msg="invalid stored block lengths",nt.mode=BAD;break}if(nt.length=Vt&65535,Vt=0,Wt=0,nt.mode=COPY_,tt===Z_TREES)break e;case COPY_:nt.mode=COPY;case COPY:if(Yt=nt.length,Yt){if(Yt>Qt&&(Yt=Qt),Yt>Bt&&(Yt=Bt),Yt===0)break e;ot.set(it.subarray(Ut,Ut+Yt),Ft),Qt-=Yt,Ut+=Yt,Bt-=Yt,Ft+=Yt,nt.length-=Yt;break}nt.mode=TYPE;break;case TABLE:for(;Wt<14;){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>=5,Wt-=5,nt.ndist=(Vt&31)+1,Vt>>>=5,Wt-=5,nt.ncode=(Vt&15)+4,Vt>>>=4,Wt-=4,nt.nlen>286||nt.ndist>30){et.msg="too many length or distance symbols",nt.mode=BAD;break}nt.have=0,nt.mode=LENLENS;case LENLENS:for(;nt.have>>=3,Wt-=3}for(;nt.have<19;)nt.lens[un[nt.have++]]=0;if(nt.lencode=nt.lendyn,nt.lenbits=7,rn={bits:nt.lenbits},En=inftrees(CODES,nt.lens,0,19,nt.lencode,0,nt.work,rn),nt.lenbits=rn.bits,En){et.msg="invalid code lengths set",nt.mode=BAD;break}nt.have=0,nt.mode=CODELENS;case CODELENS:for(;nt.have>>24,ln=en>>>16&255,nn=en&65535,!(tn<=Wt);){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>=tn,Wt-=tn,nt.lens[nt.have++]=nn;else{if(nn===16){for(gn=tn+2;Wt>>=tn,Wt-=tn,nt.have===0){et.msg="invalid bit length repeat",nt.mode=BAD;break}Qn=nt.lens[nt.have-1],Yt=3+(Vt&3),Vt>>>=2,Wt-=2}else if(nn===17){for(gn=tn+3;Wt>>=tn,Wt-=tn,Qn=0,Yt=3+(Vt&7),Vt>>>=3,Wt-=3}else{for(gn=tn+7;Wt>>=tn,Wt-=tn,Qn=0,Yt=11+(Vt&127),Vt>>>=7,Wt-=7}if(nt.have+Yt>nt.nlen+nt.ndist){et.msg="invalid bit length repeat",nt.mode=BAD;break}for(;Yt--;)nt.lens[nt.have++]=Qn}}if(nt.mode===BAD)break;if(nt.lens[256]===0){et.msg="invalid code -- missing end-of-block",nt.mode=BAD;break}if(nt.lenbits=9,rn={bits:nt.lenbits},En=inftrees(LENS,nt.lens,0,nt.nlen,nt.lencode,0,nt.work,rn),nt.lenbits=rn.bits,En){et.msg="invalid literal/lengths set",nt.mode=BAD;break}if(nt.distbits=6,nt.distcode=nt.distdyn,rn={bits:nt.distbits},En=inftrees(DISTS,nt.lens,nt.nlen,nt.ndist,nt.distcode,0,nt.work,rn),nt.distbits=rn.bits,En){et.msg="invalid distances set",nt.mode=BAD;break}if(nt.mode=LEN_,tt===Z_TREES)break e;case LEN_:nt.mode=LEN;case LEN:if(Qt>=6&&Bt>=258){et.next_out=Ft,et.avail_out=Bt,et.next_in=Ut,et.avail_in=Qt,nt.hold=Vt,nt.bits=Wt,inffast(et,Zt),Ft=et.next_out,ot=et.output,Bt=et.avail_out,Ut=et.next_in,it=et.input,Qt=et.avail_in,Vt=nt.hold,Wt=nt.bits,nt.mode===TYPE&&(nt.back=-1);break}for(nt.back=0;en=nt.lencode[Vt&(1<>>24,ln=en>>>16&255,nn=en&65535,!(tn<=Wt);){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>sn)],tn=en>>>24,ln=en>>>16&255,nn=en&65535,!(sn+tn<=Wt);){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>=sn,Wt-=sn,nt.back+=sn}if(Vt>>>=tn,Wt-=tn,nt.back+=tn,nt.length=nn,ln===0){nt.mode=LIT;break}if(ln&32){nt.back=-1,nt.mode=TYPE;break}if(ln&64){et.msg="invalid literal/length code",nt.mode=BAD;break}nt.extra=ln&15,nt.mode=LENEXT;case LENEXT:if(nt.extra){for(gn=nt.extra;Wt>>=nt.extra,Wt-=nt.extra,nt.back+=nt.extra}nt.was=nt.length,nt.mode=DIST;case DIST:for(;en=nt.distcode[Vt&(1<>>24,ln=en>>>16&255,nn=en&65535,!(tn<=Wt);){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>sn)],tn=en>>>24,ln=en>>>16&255,nn=en&65535,!(sn+tn<=Wt);){if(Qt===0)break e;Qt--,Vt+=it[Ut++]<>>=sn,Wt-=sn,nt.back+=sn}if(Vt>>>=tn,Wt-=tn,nt.back+=tn,ln&64){et.msg="invalid distance code",nt.mode=BAD;break}nt.offset=nn,nt.extra=ln&15,nt.mode=DISTEXT;case DISTEXT:if(nt.extra){for(gn=nt.extra;Wt>>=nt.extra,Wt-=nt.extra,nt.back+=nt.extra}if(nt.offset>nt.dmax){et.msg="invalid distance too far back",nt.mode=BAD;break}nt.mode=MATCH;case MATCH:if(Bt===0)break e;if(Yt=Zt-Bt,nt.offset>Yt){if(Yt=nt.offset-Yt,Yt>nt.whave&&nt.sane){et.msg="invalid distance too far back",nt.mode=BAD;break}Yt>nt.wnext?(Yt-=nt.wnext,Mt=nt.wsize-Yt):Mt=nt.wnext-Yt,Yt>nt.length&&(Yt=nt.length),Gt=nt.window}else Gt=ot,Mt=Ft-nt.offset,Yt=nt.length;Yt>Bt&&(Yt=Bt),Bt-=Yt,nt.length-=Yt;do ot[Ft++]=Gt[Mt++];while(--Yt);nt.length===0&&(nt.mode=LEN);break;case LIT:if(Bt===0)break e;ot[Ft++]=nt.length,Bt--,nt.mode=LEN;break;case CHECK:if(nt.wrap){for(;Wt<32;){if(Qt===0)break e;Qt--,Vt|=it[Ut++]<{if(inflateStateCheck(et))return Z_STREAM_ERROR$1;let tt=et.state;return tt.window&&(tt.window=null),et.state=null,Z_OK$1},inflateGetHeader=(et,tt)=>{if(inflateStateCheck(et))return Z_STREAM_ERROR$1;const nt=et.state;return nt.wrap&2?(nt.head=tt,tt.done=!1,Z_OK$1):Z_STREAM_ERROR$1},inflateSetDictionary=(et,tt)=>{const nt=tt.length;let it,ot,Ut;return inflateStateCheck(et)||(it=et.state,it.wrap!==0&&it.mode!==DICT)?Z_STREAM_ERROR$1:it.mode===DICT&&(ot=1,ot=adler32_1(ot,tt,nt,0),ot!==it.check)?Z_DATA_ERROR$1:(Ut=updatewindow(et,tt,nt,nt),Ut?(it.mode=MEM,Z_MEM_ERROR$1):(it.havedict=1,Z_OK$1))};var inflateReset_1=inflateReset,inflateReset2_1=inflateReset2,inflateResetKeep_1=inflateResetKeep,inflateInit_1=inflateInit,inflateInit2_1=inflateInit2,inflate_2$1=inflate$2,inflateEnd_1=inflateEnd,inflateGetHeader_1=inflateGetHeader,inflateSetDictionary_1=inflateSetDictionary,inflateInfo="pako inflate (from Nodeca project)",inflate_1$2={inflateReset:inflateReset_1,inflateReset2:inflateReset2_1,inflateResetKeep:inflateResetKeep_1,inflateInit:inflateInit_1,inflateInit2:inflateInit2_1,inflate:inflate_2$1,inflateEnd:inflateEnd_1,inflateGetHeader:inflateGetHeader_1,inflateSetDictionary:inflateSetDictionary_1,inflateInfo};function GZheader(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var gzheader=GZheader;const toString=Object.prototype.toString,{Z_NO_FLUSH,Z_FINISH,Z_OK,Z_STREAM_END,Z_NEED_DICT,Z_STREAM_ERROR,Z_DATA_ERROR,Z_MEM_ERROR}=constants$2;function Inflate$1(et){this.options=common.assign({chunkSize:1024*64,windowBits:15,to:""},et||{});const tt=this.options;tt.raw&&tt.windowBits>=0&&tt.windowBits<16&&(tt.windowBits=-tt.windowBits,tt.windowBits===0&&(tt.windowBits=-15)),tt.windowBits>=0&&tt.windowBits<16&&!(et&&et.windowBits)&&(tt.windowBits+=32),tt.windowBits>15&&tt.windowBits<48&&(tt.windowBits&15||(tt.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new zstream,this.strm.avail_out=0;let nt=inflate_1$2.inflateInit2(this.strm,tt.windowBits);if(nt!==Z_OK)throw new Error(messages[nt]);if(this.header=new gzheader,inflate_1$2.inflateGetHeader(this.strm,this.header),tt.dictionary&&(typeof tt.dictionary=="string"?tt.dictionary=strings.string2buf(tt.dictionary):toString.call(tt.dictionary)==="[object ArrayBuffer]"&&(tt.dictionary=new Uint8Array(tt.dictionary)),tt.raw&&(nt=inflate_1$2.inflateSetDictionary(this.strm,tt.dictionary),nt!==Z_OK)))throw new Error(messages[nt])}Inflate$1.prototype.push=function(et,tt){const nt=this.strm,it=this.options.chunkSize,ot=this.options.dictionary;let Ut,Ft,Qt;if(this.ended)return!1;for(tt===~~tt?Ft=tt:Ft=tt===!0?Z_FINISH:Z_NO_FLUSH,toString.call(et)==="[object ArrayBuffer]"?nt.input=new Uint8Array(et):nt.input=et,nt.next_in=0,nt.avail_in=nt.input.length;;){for(nt.avail_out===0&&(nt.output=new Uint8Array(it),nt.next_out=0,nt.avail_out=it),Ut=inflate_1$2.inflate(nt,Ft),Ut===Z_NEED_DICT&&ot&&(Ut=inflate_1$2.inflateSetDictionary(nt,ot),Ut===Z_OK?Ut=inflate_1$2.inflate(nt,Ft):Ut===Z_DATA_ERROR&&(Ut=Z_NEED_DICT));nt.avail_in>0&&Ut===Z_STREAM_END&&nt.state.wrap>0&&et[nt.next_in]!==0;)inflate_1$2.inflateReset(nt),Ut=inflate_1$2.inflate(nt,Ft);switch(Ut){case Z_STREAM_ERROR:case Z_DATA_ERROR:case Z_NEED_DICT:case Z_MEM_ERROR:return this.onEnd(Ut),this.ended=!0,!1}if(Qt=nt.avail_out,nt.next_out&&(nt.avail_out===0||Ut===Z_STREAM_END))if(this.options.to==="string"){let Bt=strings.utf8border(nt.output,nt.next_out),Vt=nt.next_out-Bt,Wt=strings.buf2string(nt.output,Bt);nt.next_out=Vt,nt.avail_out=it-Vt,Vt&&nt.output.set(nt.output.subarray(Bt,Bt+Vt),0),this.onData(Wt)}else this.onData(nt.output.length===nt.next_out?nt.output:nt.output.subarray(0,nt.next_out));if(!(Ut===Z_OK&&Qt===0)){if(Ut===Z_STREAM_END)return Ut=inflate_1$2.inflateEnd(this.strm),this.onEnd(Ut),this.ended=!0,!0;if(nt.avail_in===0)break}}return!0};Inflate$1.prototype.onData=function(et){this.chunks.push(et)};Inflate$1.prototype.onEnd=function(et){et===Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=common.flattenChunks(this.chunks)),this.chunks=[],this.err=et,this.msg=this.strm.msg};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[et>>12&63]+lookup[et>>6&63]+lookup[et&63]}function encodeChunk(et,tt,nt){for(var it,ot=[],Ut=tt;UtQt?Qt:Ft+Ut));return it===1?(tt=et[nt-1],ot.push(lookup[tt>>2]+lookup[tt<<4&63]+"==")):it===2&&(tt=(et[nt-2]<<8)+et[nt-1],ot.push(lookup[tt>>10]+lookup[tt>>4&63]+lookup[tt<<2&63]+"=")),ot.join("")}var re=Object.defineProperty,se=(et,tt,nt)=>tt in et?re(et,tt,{enumerable:!0,configurable:!0,writable:!0,value:nt}):et[tt]=nt,s=(et,tt,nt)=>(se(et,typeof tt!="symbol"?tt+"":tt,nt),nt);const we="https://api.formant.io";function pe(et,tt){try{if(tt.get("formant_stage"))return"https://api-stage.formant.io";if(tt.get("formant_dev"))return"https://api-dev.formant.io";if(tt.get("formant_local"))return"https://api.formant.local";if(tt.get("formant_url")){const nt=tt.get("formant_url");if(nt!==null)try{return new URL(nt).origin}catch{console.warn(`Ignoring malformed \`formant_url\` url parameter: ${nt}`)}}}catch{}return typeof et<"u"&&"FORMANT_API_URL"in et&&typeof et.FORMANT_API_URL=="string"?et.FORMANT_API_URL:we}const h=pe(typeof window<"u"?window:globalThis,new URLSearchParams(typeof window<"u"&&window.location?window.location.search:void 0));class ye{constructor({apiUrl:tt,refreshAuthToken:nt,addAccessTokenRefreshListener:it}){s(this,"_refreshToken"),s(this,"_isShareToken",!1),s(this,"_currentOrganization"),s(this,"_currentUser"),s(this,"_defaultDeviceId"),s(this,"_token"),s(this,"_waitingForAuth",new Set),s(this,"_refreshTimer"),s(this,"_apiUrl"),s(this,"_refreshAuthToken"),s(this,"_addAccessTokenRefreshListener"),this._apiUrl=tt,this._refreshAuthToken=nt,this._addAccessTokenRefreshListener=it}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(tt,nt){try{const it=await fetch(`${this._apiUrl}/v1/admin/auth/login`,{method:"POST",body:JSON.stringify({email:tt,password:nt}),headers:{"Content-Type":"application/json"}}),ot=await it.json();if(it.status!==200)throw new Error(ot.message);return await this.loginWithToken(ot.authentication.accessToken,ot.authentication.refreshToken),ot.authentication}catch(it){return console.error("login() failed",{err:it}),this._waitingForAuth.forEach(ot=>ot(!1)),this._waitingForAuth.clear(),Promise.reject(it)}}async loginWithToken(tt,nt){var it;const ot=JSON.parse(base64Exports.decode(tt.split(".")[1]));try{let Ut;if(this._isShareToken=ot["formant:claims"]&&ot["formant:claims"].type=="share",ot["formant:claims"]&&(this._currentOrganization=ot["formant:claims"].organizationId),ot["custom:organization_id"]&&(this._currentOrganization=ot["custom:organization_id"]),this._isShareToken||(Ut=ot.sub),ot["formant:claims"]&&ot["formant:claims"].userId&&(Ut=ot["formant:claims"].userId),Ut&&((it=this._currentUser)==null?void 0:it.id)!==Ut){const Ft=await fetch(`${this._apiUrl}/v1/admin/users/${Ut}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+tt}}),Qt=await Ft.json();if(Ft.status!==200)throw new Error(Qt.message);this._currentUser=Qt}this._token=tt,this._waitingForAuth.forEach(Ft=>Ft(!0))}catch(Ut){console.error("loginWithToken() failed",{err:Ut}),this._waitingForAuth.forEach(Ft=>Ft(!1))}finally{this._waitingForAuth.clear()}nt&&(this._refreshToken=nt,setInterval(async()=>{if(this._refreshToken){const Ut=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=Ut.authentication.accessToken}},1e3*60*60))}isAuthenticated(){return this._token!==void 0}getCurrentUser(){return this._currentUser}async waitTilAuthenticated(){return this.token!==void 0?!0:new Promise(tt=>{this._waitingForAuth.add(tt)})}async listenForRefresh(){const tt=()=>{this._refreshTimer=void 0,this._refreshAuthToken()};this._addAccessTokenRefreshListener(nt=>{this._refreshTimer&&clearTimeout(this._refreshTimer),this._refreshTimer=setTimeout(tt,36e5),this.loginWithToken(nt)}),this._refreshTimer=setTimeout(tt,36e5)}async forgotPassword(tt){await fetch(`${this._apiUrl}/v1/admin/auth/forgot-password`,{method:"POST",body:JSON.stringify({email:tt}),headers:{"Content-Type":"application/json"}})}async confirmForgotPassword(tt){return(await fetch(`${this._apiUrl}/v1/admin/auth/confirm-forgot-password`,{method:"POST",body:JSON.stringify(tt),headers:{"Content-Type":"application/json"}})).ok}async respondToNewPasswordRequiredChallenge(tt){return await(await fetch(`${this._apiUrl}/v1/admin/auth/respond-to-new-password-required-challenge`,{method:"POST",body:JSON.stringify(tt),headers:{"Content-Type":"application/json"}})).json()}async loginWithGoogle(tt){return await(await fetch(`${this._apiUrl}/v1/admin/auth/login-google`,{method:"POST",body:JSON.stringify(tt),headers:{"Content-Type":"application/json"}})).json()}async refresh(tt){const nt=await(await fetch(`${this._apiUrl}/v1/admin/auth/refresh`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refreshToken:tt})})).json();await this.loginWithToken(nt.authentication.accessToken,tt)}}function k(){return typeof window<"u"&&window.location?new URLSearchParams(window.location.search).get("module"):null}function T(et){if(!(window&&window.parent))throw new Error("cannot send message to non-existent parent");window.parent.postMessage(et,"*")}function V(){const et=k();if(!et)throw new Error("No module context");T({type:"refresh_auth_token",module:et})}function F(et){function tt(nt){const it=nt.data;it.type==="auth_token"&&et(it.token)}return window.addEventListener("message",tt),()=>{window.removeEventListener("message",tt)}}const o=new ye({apiUrl:h,refreshAuthToken:V,addAccessTokenRefreshListener:F});async function ge(et){return(await(await fetch(`${h}/v1/admin/module-configurations/${et}`,{headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).configuration}function ve(){T({type:"hide_analytics_date_picker"})}function Te(et){T({type:"go_to_device",deviceId:et})}function Ce(et){T({type:"go_to_time",time:et.getTime()})}function Se(){const et=k();if(!et)throw new Error("No module context");T({type:"request_module_data",module:et})}function Ee(et,tt){const nt=k();if(!nt)throw new Error("No module context");T({type:"send_channel_data",source:nt,channel:et,data:tt})}function ke(et,tt){const nt=k();if(!nt)throw new Error("No module context");T({type:"set_module_data_time_range",module:nt,before:et,after:tt||0})}function Oe$1(et){const tt=k();if(!tt)throw new Error("No module context");T({type:"setup_module_menus",module:tt,menus:et})}function Re(et){T({type:"show_message",message:et})}function be(et,tt){const nt=it=>{const ot=it.data;ot.type==="channel_data"&&ot.channel===et&&tt({source:ot.source,data:ot.data})};return window.addEventListener("message",nt),()=>window.removeEventListener("message",nt)}function Ae(et){const tt=nt=>{const it=nt.data;it.type==="module_menu_item_clicked"&&et(it.menu)};return window.addEventListener("message",tt),()=>window.removeEventListener("message",tt)}function De(et){const tt=nt=>{const it=nt.data;it.type==="module_configuration"&&et(it)};return window.addEventListener("message",tt),()=>window.removeEventListener("message",tt)}function Pe(et){const tt=k();tt&&T({type:"request_module_data",module:tt});const nt=it=>{const ot=it.data;ot.type==="module_data"&&et({streams:ot.streams,time:ot.time,queryRange:ot.queryRange})};return window.addEventListener("message",nt),()=>window.removeEventListener("message",nt)}function je(et){T({type:"request_devices"});const tt=nt=>{const it=nt.data;it.type==="overview_devices"&&et(it.data)};return window.addEventListener("message",tt),()=>window.removeEventListener("message",tt)}const Ne=1,W=1e3,G=60*W,H=60*G,I=24*H,Ie=7*I,Le=30*I,_e=365*I,L={millisecond:Ne,second:W,minute:G,hour:H,day:I,week:Ie,month:Le,year:_e};function $e(et,tt){return et.filter(nt=>tt.includes(nt.type))}function ze(et,tt,nt){const it=tt.getTime(),ot=nt.getTime();return et.map(Ut=>({...Ut,points:Ut.points.filter(([Ft])=>Ft>=it&&FtUt.length>0)}class x{constructor({capacity:tt,timeout:nt}={}){s(this,"entries",new Map),s(this,"metadata",new Map),s(this,"capacity"),s(this,"timeout"),this.capacity=tt||1e4,this.timeout=nt||L.minute}get(tt,nt){const it=this.keyToCacheKey(tt),ot=this.entries.get(it),Ut=this.metadata.get(it);return(ot===void 0||Ut&&(Ut==null?void 0:Ut.expiration.getTime())this.capacity&&this.deleteOldestEntry()}clear(){this.entries.clear(),[...this.metadata.values()].forEach(tt=>tt.generating=!1)}clearKey(tt){this.metadata.delete(tt),this.entries.delete(tt)}keyToCacheKey(tt){return JSON.stringify(tt)}deleteOldestEntry(){if(this.metadata.size<1)return;const[tt]=[...this.metadata.entries()].reduce(([nt,it],[ot,Ut])=>Ut.expiration.getTime(){nt.then(Ut=>{const Ft=this.metadata.get(it);!(Ft!=null&&Ft.generating)||this.set(tt,Ut)})},0)}}async function _(et){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/queries/queries`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}class Be{constructor(){s(this,"queryStoreCache",new x({capacity:1e4,timeout:20*L.second})),s(this,"liveQueryStoreCache",new x({capacity:1e4,timeout:200*L.millisecond}))}moduleQuery(tt,nt,it,ot,Ut,Ft=!1){const Qt={...tt,names:[...nt],types:[...it]},Bt=this.query(Qt,ot,Ut,Ft);return Bt===void 0||Bt==="too much data"?Bt:$e(Bt,it)}query(tt,nt,it,ot=!1){const Ut={...tt,start:startOfMinute(nt).toISOString(),end:ot?it.toISOString():addMinutes(roundToNearestMinutes(it),1).toISOString(),latestOnly:ot},Ft=it>addSeconds(new Date,-20);let Qt;return Ft?Qt=this.liveQueryCache(Ut):Qt=this.queryCache(Ut),!Qt||Qt==="too much data"||ot?Qt:ze(Qt,nt,it)}queryCache(tt){return this.queryStoreCache.get(tt,async()=>{try{return await _(tt)}catch(nt){throw nt}})}liveQueryCache(tt){return this.liveQueryStoreCache.get(tt,async()=>{try{return await _(tt)}catch(nt){throw nt}})}}const Me=new Be;function qe(et,tt,nt){const it=ot=>{const Ut=ot.data;if(Ut.type==="module_data"){const{start:Ft,end:Qt}=Ut.queryRange;nt(Me.moduleQuery({},et,tt,new Date(Ft),new Date(Qt),!1))}};return window.addEventListener("message",it),()=>window.removeEventListener("message",it)}async function xe(et,tt,nt){return new Promise(it=>{T({type:"request_date",minTime:tt,maxTime:nt,time:et});const ot=Ut=>{const Ft=Ut.data;Ft.type==="date_response"&&(window.removeEventListener("message",ot),it(Ft.data))};window.addEventListener("message",ot)})}async function Ue(et,tt){return new Promise(nt=>{const it=Math.random().toString();T({type:"prompt",promptId:it,schema:et,okText:tt==null?void 0:tt.okText,cancelText:tt==null?void 0:tt.cancelText});const ot=Ut=>{const Ft=Ut.data;Ft.type==="prompt_response"&&Ft.promptId===it&&nt(Ft.data),window.removeEventListener("message",ot)};window.addEventListener("message",ot)})}const q=class{static isModule(){return k()!==null}static async getCurrentModuleConfiguration(){let et=new URLSearchParams("");typeof window<"u"&&window.location&&(et=new URLSearchParams(window.location.search));const tt=et.get("configuration");if(!(tt===null||tt.trim()===""))return ge(tt.trim())}static get isOnline(){return q._isOnline}static listenForConnectionEvents(){const et=tt=>{const{data:nt}=tt;nt.type==="formant_online"&&(this._isOnline=nt.online)};return window.addEventListener("message",et),()=>window.removeEventListener("message",et)}static checkConnection(et=1e3){return new Promise((tt,nt)=>{const it=setTimeout(()=>nt(new Error("deadline expired: took too long")),et),ot=Ut=>{window.removeEventListener("message",ot),clearTimeout(it);const{data:Ft}=Ut;Ft.type==="formant_online"&&(this._isOnline=Ft.online,tt(Ft.online))};window.addEventListener("message",ot),T({type:"formant_online"})})}static waitForConnection(et=5e3){let tt=!1;const nt=new Promise((Ut,Ft)=>{setTimeout(()=>{tt=!0,Ft(new Error("deadline expired: took too long"))},et)}),it=Ut=>new Promise(Ft=>setTimeout(Ft,Ut)),ot=async()=>{for(await it(50);!tt&&!(this.isOnline||await this.checkConnection);)await it(500)};return Promise.race([nt,ot()])}};let y=q;s(y,"getCurrentModuleContext",k),s(y,"disableAnalyticsBottomBar",ve),s(y,"goToDevice",Te),s(y,"goToTime",Ce),s(y,"refreshAuthToken",V),s(y,"requestModuleData",Se),s(y,"sendChannelData",Ee),s(y,"setModuleDateTimeRange",ke),s(y,"setupModuleMenus",Oe$1),s(y,"showMessage",Re),s(y,"addAccessTokenRefreshListener",F),s(y,"addChannelDataListener",be),s(y,"addMenuListener",Ae),s(y,"addModuleConfigurationListener",De),s(y,"addModuleDataListener",Pe),s(y,"addOverviewDeviceListener",je),s(y,"addStreamListener",qe),s(y,"getDate",xe),s(y,"prompt",Ue),s(y,"_isOnline",null);function f(et,tt){if(et!==void 0)return et;throw new Error(tt||"Value is undefined")}const g={UNKNOWN:0,TELEOP:1,PORT_FORWARD:2,OBSERVE:3},Ht={...g,Unknown:g.UNKNOWN,Teleop:g.TELEOP,PortForward:g.PORT_FORWARD,Observe:g.OBSERVE,unknown:g.UNKNOWN,teleop:g.TELEOP,portForward:g.PORT_FORWARD,observe:g.OBSERVE},O=Symbol("RtcClientPool.instance");var qt;class j{constructor(tt){s(this,qt,null),s(this,"createClient"),s(this,"ttlMs"),s(this,"proxyHandler"),s(this,"proxyReceivers",new Map),s(this,"teardownTimeout",null),s(this,"dispatch",(ot,Ut)=>{this.proxyReceivers.forEach(Ft=>Ft==null?void 0:Ft(ot,Ut))});const{createClient:nt,ttlMs:it=0}=tt;this.createClient=nt,this.ttlMs=Math.max(it,0),this.proxyHandler={get:(ot,Ut,Ft)=>{switch(Ut){case"shutdown":return()=>this.releaseInstance(Ft);default:return Reflect.get(ot,Ut,Ft)}}}}get isActive(){return this[O]!==null}get size(){return this.proxyReceivers.size}get(tt){const nt=new Proxy(this.allocate(),this.proxyHandler);return this.proxyReceivers.set(nt,tt??null),nt}allocate(){if(this[O])return this.teardownTimeout&&(clearTimeout(this.teardownTimeout),this.teardownTimeout=null),this[O];const tt=this.createClient(this.dispatch);return this[O]=tt,tt}async teardown(){const tt=this[O];if(!tt){console.warn("singleton has already been shutdown!");return}try{await tt.shutdown()}finally{this[O]=null}}async releaseInstance(tt){return this.proxyReceivers.delete(tt)?this.proxyReceivers.size!==0?!1:(!this.teardownTimeout&&Number.isFinite(this.ttlMs)&&(this.ttlMs===0?await this.teardown():this.teardownTimeout=setTimeout(()=>{this.teardown().catch(nt=>console.error("teardown failed",{err:nt})).finally(()=>this.teardownTimeout=null)},this.ttlMs)),!0):(console.warn("this instance has already been released!"),!1)}}qt=O;const N=async()=>f(o.token,"Realtime when user isn't authorized"),R={[g.UNKNOWN]:new j({ttlMs:2500,createClient:et=>new distExports.RtcClient({signalingClient:new distExports.SignalingPromiseClient(h),getToken:N,sessionType:g.UNKNOWN,receive:et})}),[g.TELEOP]:new j({ttlMs:2500,createClient:et=>new distExports.RtcClient({signalingClient:new distExports.SignalingPromiseClient(h),getToken:N,sessionType:g.TELEOP,receive:et})}),[g.PORT_FORWARD]:new j({ttlMs:2500,createClient:et=>new distExports.RtcClient({signalingClient:new distExports.SignalingPromiseClient(h),getToken:N,sessionType:g.PORT_FORWARD,receive:et})}),[g.OBSERVE]:new j({ttlMs:2500,createClient:et=>new distExports.RtcClient({signalingClient:new distExports.SignalingPromiseClient(h),getToken:N,sessionType:g.OBSERVE,receive:et})})},Je={...R,unknown:R[g.UNKNOWN],teleop:R[g.TELEOP],portForward:R[g.PORT_FORWARD],observe:R[g.OBSERVE]},$=R[g.TELEOP],Ve=et=>{const{sessionType:tt}=et;return tt?Je[tt]:$};class Fe{constructor(tt){s(this,"token"),this.captureSession=tt}async ingestJSON(tt){if(!this.token){const nt=await(await fetch(`${h}/v1/admin/capture-sessions/${this.captureSession.code}/authenticate`,{method:"POST"})).json();this.token=nt.token}await fetch(`${h}/v1/ingest`,{method:"POST",body:JSON.stringify({deviceId:this.captureSession.deviceId,name:this.captureSession.streamName,type:"json",points:[[Date.now(),JSON.stringify(tt)]]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.token}})}}function b(et){return new Promise(tt=>setTimeout(tt,et))}const We=et=>et!==void 0&&et.capabilities!==void 0&&et.capabilitySet!==void 0;class Ge{constructor(tt){s(this,"ready",!1),s(this,"listeners",[]),s(this,"openListeners",[]),s(this,"closeListeners",[]),s(this,"errorListeners",[]),s(this,"binaryListeners",[]),s(this,"error"),s(this,"decoder",new TextDecoder),this.dataChannel=tt,this.dataChannel.binaryType="arraybuffer",this.dataChannel.onopen=()=>{this.setReady()},this.dataChannel.onclose=()=>{this.ready=!1,this.closeListeners.forEach(nt=>nt())},this.dataChannel.onerror=nt=>{console.error(nt),this.error="An error occurred in DataChannel",this.errorListeners.forEach(it=>it(nt))},this.dataChannel.onmessage=nt=>{this.listeners.forEach(it=>{const ot=new Uint8Array(nt.data),Ut=this.decoder.decode(ot);it(Ut)}),this.binaryListeners.forEach(it=>{it(new Uint8Array(nt.data))})}}setReady(){this.ready=!0,this.openListeners.forEach(tt=>tt())}addOpenListener(tt){this.openListeners.push(tt)}removeOpenListener(tt){this.openListeners=this.openListeners.filter(nt=>nt!==tt)}addCloseListener(tt){this.closeListeners.push(tt)}removeCloseListener(tt){this.closeListeners=this.closeListeners.filter(nt=>nt!==tt)}addErrorListener(tt){this.errorListeners.push(tt)}removeErrorListener(tt){this.errorListeners=this.errorListeners.filter(nt=>nt!==tt)}async waitTilReady(){return this.ready?!0:new Promise((tt,nt)=>{let it=setInterval(()=>{this.dataChannel.readyState==="open"&&this.setReady(),this.ready&&(clearInterval(it),tt(!0)),this.error&&nt(this.error)},10)})}send(tt){if(!this.ready)throw new Error("Connection has been closed");this.dataChannel.send(tt)}sendBinary(tt){if(!this.ready)throw new Error("Connection has been closed");this.dataChannel.send(tt)}addListener(tt){this.listeners.push(tt)}removeListener(tt){const nt=this.listeners.indexOf(tt);if(nt===-1)throw new Error("Could not find data channel listener to remove");if(this.error)throw new Error(this.error);this.listeners.splice(nt,1)}addBinaryListener(tt){this.binaryListeners.push(tt)}removeBinaryListener(tt){const nt=this.binaryListeners.indexOf(tt);if(nt===-1)throw new Error("Could not find data channel listener to remove");if(this.error)throw new Error(this.error);this.binaryListeners.splice(nt,1)}}class He{constructor(tt,nt){s(this,"currentListeners",[]),s(this,"onRealtimeMessage",(it,ot)=>{ot.payload.jointState&&this.currentListeners.forEach(Ut=>{ot.payload.jointState&&Ut(ot.payload.jointState)})}),this.device=tt,this.config=nt}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(tt){this.currentListeners.push(tt)}}class K{constructor(tt,nt,it){s(this,"channel"),s(this,"requestIdToResponseMap",new Map),this.device=tt,this.channel_name=nt,this.timeout=it}addOpenListener(tt){f(this.channel,"channel not initalized").addOpenListener(tt)}removeOpenListener(tt){f(this.channel,"channel not initalized").removeOpenListener(tt)}addCloseListener(tt){f(this.channel,"channel not initalized").addCloseListener(tt)}removeCloseListener(tt){f(this.channel,"channel not initalized").removeCloseListener(tt)}addErrorListener(tt){f(this.channel,"channel not initalized").addErrorListener(tt)}removeErrorListener(tt){f(this.channel,"channel not initalized").removeErrorListener(tt)}}let Ke$1=class extends K{constructor(){super(...arguments),s(this,"RESPONSE_SUCCESS_BYTE",0),s(this,"decoder",new TextDecoder)}generateBinaryId(){const tt=new Uint8Array(16);for(let nt=0;nt{const nt=tt.slice(0,16).toString();if(nt.length===0)throw new Error("Invalid response");const it=tt.slice(16);if(it.length===0)throw new Error("Invalid response");this.requestIdToResponseMap.has(nt)&&this.requestIdToResponseMap.set(nt,it)})}async request(tt){if(this.channel||await this.initialize(),!this.channel)throw new Error("Failed to create channel");const{channel:nt,requestIdToResponseMap:it,timeout:ot}=this;await nt.waitTilReady();const Ut=this.generateBinaryId(),Ft=Ut.toString();it.set(Ft,!0),nt.sendBinary(new Uint8Array([...Ut,...tt]));const Qt=new Date().getTime();for(;new Date().getTime(){const nt=JSON.parse(tt),{id:it,data:ot,error:Ut}=nt;if(!it)throw new Error("Invalid response");if(!ot&&!Ut)throw new Error("Invalid response");this.requestIdToResponseMap.has(it)&&this.requestIdToResponseMap.set(it,nt)})}async request(tt){if(this.channel||await this.initialize(),!this.channel)throw new Error("Failed to create channel");const{channel:nt,requestIdToResponseMap:it,timeout:ot}=this;await nt.waitTilReady();const Ut=this.generateTextId();it.set(Ut,!0),nt.send(JSON.stringify({id:Ut,data:tt}));const Ft=new Date().getTime();for(;new Date().getTime(){this.realtimeListeners.forEach(it=>it(tt,nt))})}stopConnectionMonitoring(){clearInterval(this.connectionMonitorInterval),this.connectionMonitorInterval=void 0}assertNotCancelled(tt){if(tt)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")}getRealtimePing(){if(this.rtcClient&&this.remoteDevicePeerId)return this.rtcClient.getPing(this.remoteDevicePeerId);throw new Error("Realtime connection hasn't been started")}addRealtimeListener(tt){this.realtimeListeners.push(tt)}removeRealtimeListener(tt){const nt=this.realtimeListeners.indexOf(tt);if(nt===-1)throw new Error("Could not find realtime listener to remove");this.realtimeListeners.splice(nt,1)}async getRealtimeManipulators(){const tt=await this.getConfiguration(),nt=[];for(const it of tt.teleop.rosStreams??[])it.topicType=="sensor_msgs/JointState"&&nt.push(new He(this,{currentJointStateStream:{name:it.topicName},plannedJointStateStream:it.plannedTopic?{name:it.plannedTopic}:void 0,planValidStream:it.planValidTopic?{name:it.planValidTopic}:void 0,endEffectorStream:it.endEffectorTopic?{name:it.endEffectorTopic}:void 0,endEffectorLinkName:it.endEffectorLinkName,baseReferenceFrame:it.baseReferenceFrame,localFrame:it.localFrame}));return nt}async getRealtimeVideoStreams(){var tt,nt,it;const ot=await this.getConfiguration(),Ut=[];for(const Ft of((tt=ot.teleop)==null?void 0:tt.hardwareStreams)??[])Ft.rtcStreamType==="h264-video-frame"&&Ut.push({name:Ft.name});for(const Ft of((nt=ot.teleop)==null?void 0:nt.rosStreams)??[])Ft.topicType=="formant/H264VideoFrame"&&Ut.push({name:Ft.topicName}),(Ft.topicType==="sensor_msgs/Image"||Ft.topicType==="sensor_msgs/CompressedImage")&&Ft.encodeVideo&&Ut.push({name:Ft.topicName});for(const Ft of((it=ot.teleop)==null?void 0:it.customStreams)??[])Ft.rtcStreamType==="h264-video-frame"&&Ut.push({name:Ft.name});return Ut}createCustomRequestDataChannel(tt,nt=3e3){return new Qe(this,tt,nt)}createCustomBinaryRequestDataChannel(tt,nt=3e3){return new Ke$1(this,tt,nt)}async startListeningToRealtimeVideo(tt){const nt=f(this.rtcClient,"Realtime connection has not been started"),it=await this.getRemotePeer();nt.controlRemoteStream(f(it).id,{streamName:tt.name,enable:!0,pipeline:"rtc"})}async stopListeningToRealtimeVideo(tt){const nt=f(this.rtcClient,"Realtime connection has not been started"),it=await this.getRemotePeer();nt.controlRemoteStream(f(it).id,{streamName:tt.name,enable:!1,pipeline:"rtc"})}async startListeningToRealtimeDataStream(tt){const nt=f(this.rtcClient,"Realtime connection has not been started"),it=await this.getRemotePeer();nt.controlRemoteStream(f(it).id,{streamName:tt.name,enable:!0,pipeline:"rtc"})}async stopListeningToRealtimeDataStream(tt){const nt=f(this.rtcClient,"Realtime connection has not been started"),it=await this.getRemotePeer();nt.controlRemoteStream(f(it).id,{streamName:tt.name,enable:!1,pipeline:"rtc"})}async enableRealtimeTelemetryPriorityIngestion(tt){const nt=f(this.rtcClient,"Realtime connection has not been started"),it=await this.getRemotePeer();nt.controlRemoteStream(f(it).id,{streamName:tt,enablePriorityUpload:!0,pipeline:"telemetry"})}async disableRealtimeTelemetryPriorityIngestion(tt){const nt=f(this.rtcClient,"Realtime connection has not been started"),it=await this.getRemotePeer();nt.controlRemoteStream(f(it).id,{streamName:tt,enablePriorityUpload:!1,pipeline:"telemetry"})}async changeStreamAudioType(tt,nt){const it=f(this.rtcClient,"Realtime connection has not been started"),ot=await this.getRemotePeer();it.controlRemoteStream(f(ot).id,{streamName:tt,setAudioFormat:nt})}async createCustomDataChannel(tt,nt){const it=f(this.rtcClient,"Realtime connection has not been started"),ot=await this.getRemotePeer(),Ut=await new Promise(Ft=>{it.createCustomDataChannel(f(ot).id,tt,{ordered:!0,...nt},!1,(Qt,Bt)=>{const Vt=new Ge(Bt);Ft(Vt)})});return await Ut.waitTilReady(),Ut}async sendRealtimeMessage(tt,nt={channelLabel:"stream.reliable"}){const it=f(this.rtcClient,"Realtime connection has not been started"),ot=await this.getRemotePeer();it.send(f(ot).id,tt,nt)}async getRealtimeAudioStreams(){var tt,nt,it;const ot=await this.getConfiguration(),Ut=[];for(const Ft of((tt=ot.teleop)==null?void 0:tt.hardwareStreams)??[])Ft.rtcStreamType==="audio-chunk"&&Ut.push({name:Ft.name});for(const Ft of((nt=ot.teleop)==null?void 0:nt.rosStreams)??[])Ft.topicType=="audio_common_msgs/AudioData"&&Ut.push({name:Ft.topicName});for(const Ft of((it=ot.teleop)==null?void 0:it.customStreams)??[])Ft.rtcStreamType==="audio-chunk"&&Ut.push({name:Ft.name});return Ut}}const Xe=new TextEncoder;new TextDecoder;function Ye(et){const tt=JSON.stringify(et),nt=Xe.encode(tt),it=deflate_1(nt);return fromByteArray_1(it)}async function X(){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/views`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function Y(et,tt){if(!o.token)throw new Error("Not authenticated");const nt=(await X()).filter(Ft=>Ft.name===tt);if(nt.length===0)return console.warn("View does not exist or it is misspell"),null;const it=await fetch(`${h}/v1/admin/shares`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}}),ot=h.replace("api","app"),{code:Ut}=await it.json();return`${ot}/shares/${Ut}#${Ye({viewId:nt[0].id})}`}const Z={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}},rt=(et,tt)=>et.split("/")[0]+"/"+et.split("/")[1]+"–"+tt.split("/")[0]+"/"+tt.split("/")[1];async function z(et){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/events/query`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function ee(et,tt,nt,it,ot){const Ut=Z[tt];return await Promise.all(Array(nt).fill(0).map(async(Ft,Qt)=>{const Bt=new Date(it),Vt=Ut.sub(Ut.start(Bt),nt-Qt-1),Wt=Ut.sub(Ut.end(Bt),nt-Qt-1),Xt=rt(Vt.toLocaleDateString(),Wt.toLocaleDateString()),Zt=await z({...ot,eventTypes:et,start:new Date(Vt).toISOString(),end:new Date(Wt).toISOString()});return{date:Xt,events:Zt}}))}async function B(et,tt){return(await z({...et,eventTypes:["annotation"]})).filter(nt=>!!nt.tags&&Object.keys(nt.tags).includes(tt)).reduce((nt,it)=>{const ot=it.tags[tt];return ot in nt?(nt[ot]+=1,nt):(nt[ot]=1,nt)},{})}async function te(et,tt,nt){const{end:it,start:ot}=et,Ut=Z[nt].interval({start:new Date(ot),end:new Date(it)}),Ft=Ut.map((Bt,Vt)=>{const Wt=new Date(Bt).toISOString(),Xt=Vt===Ut.length-1?new Date(Date.now()).toISOString():new Date(Ut[Vt+1]);return B({...et,start:Wt,end:Xt},tt)}),Qt=await Promise.all(Ft);return Ut.map((Bt,Vt)=>({date:new Date(Bt).toISOString(),annotations:Qt[Vt]}))}async function ne(et,tt,nt,it,ot){let Ut=et;Array.isArray(et)||(Ut=[et]);let Ft=tt;return Array.isArray(tt)||(Ft=[tt]),(await(await fetch(`${h}/v1/queries/queries`,{method:"POST",body:JSON.stringify({deviceIds:Ut,end:it.toISOString(),names:Ft,start:nt.toISOString(),tags:ot}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function ae(){if(!o.token)throw new Error("Not authenticated");const et=$.get();try{return await et.getSessions()}finally{await et.shutdown()}}async function ie(){if(!o.token)throw new Error("Not authenticated");const et=$.get();try{return await et.getPeers()}finally{await et.shutdown()}}async function st(et){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/admin/devices`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function ct(et,tt){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/admin/devices/${et}`,{method:"PATCH",body:JSON.stringify(tt),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function dt(){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/device-details/query`,{method:"POST",body:JSON.stringify({enabled:!0,type:"default"}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function ht(et){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/devices/query`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function lt(et){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/admin/devices/${et}/disable`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}class S extends Q{constructor(tt,nt,it,ot){super(),this.id=tt,this.name=nt,this.organizationId=it,this.tags=ot}async getLatestTelemetry(){return(await(await fetch(`${h}/v1/queries/stream-current-value`,{method:"POST",body:JSON.stringify({deviceIds:[this.id]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async getConfiguration(){let tt=await fetch(`${h}/v1/admin/devices/${this.id}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}});const nt=await tt.json();if(!nt.state.reportedConfiguration)throw new Error("Device has no configuration, has it ever been turned on?");const it=nt.state.reportedConfiguration.version;return tt=await fetch(`${h}/v1/admin/devices/${this.id}/configurations/${it}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}}),(await tt.json()).document}async getFileUrl(tt){return(await(await fetch(`${h}/v1/admin/files/query`,{method:"POST",body:JSON.stringify({fileIds:[tt]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).fileUrls}async startRealtimeConnection(tt={}){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:nt,deadlineMs:it=1e4,maxConnectRetries:ot=3}=typeof tt=="number"?{sessionType:tt}:tt,Ut=Ve({sessionType:nt}).get(this.handleMessage);let Ft=!1;const Qt=new Promise((Vt,Wt)=>setTimeout(()=>{Ft=!0,Wt(new Error("Connection timed out: the connection could not be finalized in time, possibly due to network issues or misconfigured settings."))},it)),Bt=async()=>{if("isReady"in Ut)for(;!Ut.isReady();)this.assertNotCancelled(Ft),await b(100);const Vt=await this.getRemoteDevicePeerId(Ut);this.assertNotCancelled(Ft);let Wt;for(let Zt=0;Zt{this.remoteDevicePeerId=Vt,this.initConnectionMonitoring(),this.rtcClient=Ut,this.emit("connect")}).catch(Vt=>{throw console.debug(`${new Date().toISOString()} :: Connection failed: %o`,Vt),this.remoteDevicePeerId=null,Ut.shutdown().catch(Wt=>{console.error("rtcClient cannot shutdown: %o",Wt)}),this.emit("connection_failed",Vt),Vt})}async getRemoteDevicePeerId(tt){const nt=(await tt.getPeers()).find(it=>it.deviceId===this.id);if(!We(nt))throw new Error("Cannot find peer, is the robot offline?");return nt.id}initConnectionMonitoring(){this.connectionMonitorInterval=setInterval(async()=>{let tt=!1;if(this.rtcClient){const nt=this.rtcClient.getConnections().find(it=>it.getRemotePeerId()===this.remoteDevicePeerId&&it.isActive());(nt===void 0||!nt.isReady())&&(console.debug(`${new Date().toISOString()} :: data channel closed`),tt=!0)}(!this.rtcClient||!this.remoteDevicePeerId||await this.rtcClient.getConnectionStatsInfo(this.remoteDevicePeerId)===void 0||tt)&&(this.emit("disconnect"),this.stopRealtimeConnection().catch(nt=>{console.error(nt)}))},1e3)}async getRemotePeer(){const tt=(await f(this.rtcClient,"Realtime connection has not been started").getPeers()).find(nt=>nt.deviceId===this.id);return f(tt,"Could not find remote peer for device "+this.id)}async stopRealtimeConnection(){let tt=!1;if(this.rtcClient){this.stopConnectionMonitoring(),this.remoteDevicePeerId?(await this.rtcClient.disconnect(this.remoteDevicePeerId),this.remoteDevicePeerId=null):tt=!0;try{await this.rtcClient.shutdown()}finally{this.rtcClient=void 0}}if(tt)throw new Error(`Realtime connection hasn't been started for ${this.id}`)}async isInRealtimeSession(){const tt=await ie(),nt=await ae(),it=tt.find(ot=>ot.deviceId===this.id);return it?nt[it.id].length>0:!1}async getAvailableCommands(){return(await(await fetch(`${h}/v1/admin/command-templates/`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items.map(tt=>({name:tt.name,id:tt.id,command:tt.command,description:tt.description,parameterEnabled:tt.parameterEnabled,parameterValue:tt.parameterValue,parameterMeta:tt.parameterMeta,enabled:tt.enabled,tags:tt.tags}))}async sendCommand(tt,nt,it,ot){var Ut;const Ft=(await this.getAvailableCommands()).find(Vt=>Vt.name===tt);if(!Ft)throw new Error(`Could not find command with name "${tt}"`);let Qt="";nt===void 0?Ft.parameterEnabled&&Ft.parameterValue&&(Qt=Ft.parameterValue):Qt=nt;let Bt={value:Qt,scrubberTime:(it||new Date).toISOString(),meta:{...Ft.parameterMeta,...ot}};return await fetch(`${h}/v1/admin/commands`,{method:"POST",body:JSON.stringify({commandTemplateId:Ft.id,organizationId:this.organizationId,deviceId:this.id,command:Ft.command,parameter:Bt,userId:(Ut=o.currentUser)==null?void 0:Ut.id}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})}async getCommand(tt){return await fetch(`${h}/v1/admin/commands/${tt}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})}async createCaptureStream(tt){const nt=await(await fetch(`${h}/v1/admin/capture-sessions`,{method:"POST",body:JSON.stringify({deviceId:this.id,streamName:tt,tags:{}}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json();return new Fe(nt)}async getTelemetry(tt,nt,it,ot){return await ne(this.id,tt,nt,it,ot)}async getTelemetryStreams(){var tt,nt;const it=await this.getConfiguration(),ot=await fetch(`${h}/v1/queries/metadata/stream-names`,{method:"POST",body:JSON.stringify({deviceIds:[this.id]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}}),Ut=[],Ft=[];return(nt=(tt=it.telemetry)==null?void 0:tt.streams)==null||nt.forEach(Qt=>{Qt.disabled!==!0&&Ut.push(Qt.name),Qt.onDemand===!0&&Ft.push(Qt.name)}),console.log(Ft),(await ot.json()).items.filter(Qt=>!Ut.includes(Qt)).map(Qt=>({name:Qt,onDemand:Ft.includes(Qt)}))}async createInterventionRequest(tt,nt,it,ot){return await(await fetch(`${h}/v1/admin/intervention-requests`,{method:"POST",body:JSON.stringify({message:tt,interventionType:nt,time:new Date().toISOString(),deviceId:this.id,tags:ot,data:it}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async addInterventionResponse(tt,nt,it){return await(await fetch(`${h}/v1/admin/intervention-responses`,{method:"POST",body:JSON.stringify({interventionId:tt,interventionType:nt,data:it}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async getAnnotationCount(tt,nt){return await B({...tt,deviceIds:[this.id]},nt)}async getAnnotationCountByIntervals(tt,nt,it){return await te({...tt,deviceIds:[this.id]},nt,it)}async eventsCounter(tt,nt,it,ot,Ut){return await ee(tt,nt,it,ot,{...Ut,deviceIds:[this.id]})}async createShareLink(tt,nt){return tt.scope.deviceIds=[this.id],await Y(tt,nt)}}s(S,"createDevice",st),s(S,"patchDevice",ct),s(S,"getDevicesData",dt),s(S,"queryDevicesData",ht),s(S,"disableDevice",lt);class ut extends Q{constructor(tt){super(),s(this,"id"),s(this,"telemetryStreamActive",!1),s(this,"streamTelemetry",{}),this.peerUrl=tt}async getLatestTelemetry(){this.telemetryStreamActive||this.subscribeToTelemetry();const tt=this.streamTelemetry;return Object.entries(tt).map(([nt,it])=>({deviceId:this.id,streamName:nt,streamType:"json",currentValue:it,currentValueTime:it.timestamp,tags:{}}))}subscribeToTelemetry(){this.telemetryStreamActive=!0;let tt=0;const nt=new XMLHttpRequest;nt.responseType="text",nt.addEventListener("error",it=>{this.handleXHRError("error")}),nt.addEventListener("abort",it=>{this.handleXHRError("abort")}),nt.addEventListener("timeout",it=>{this.handleXHRError("timeout")}),nt.addEventListener("readystatechange",it=>{nt.readyState===XMLHttpRequest.DONE&&this.handleXHRError("closed")}),nt.addEventListener("progress",it=>{const ot=it.loaded,Ut=ot-tt;tt=ot,nt.responseText.substr(-Ut).split(` +`).forEach(Ft=>{var Qt;if(Ft.length>0){const Bt=JSON.parse(Ft);if((Qt=Bt.result)!=null&&Qt.datapoint){const Vt=Bt.result.datapoint,Wt=Vt.stream;delete Vt.stream,this.streamTelemetry[Wt]=Vt}}})}),nt.open("POST",`${this.peerUrl}/v1/telemetry`),nt.send()}handleXHRError(tt){console.warn(`Telemetry stream ended: ${tt}`),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 startRealtimeConnection(tt){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 nt=new distExports.RtcClient({lanOnlyMode:!0,receive:this.handleMessage,sessionType:tt});for(await nt.connectLan(this.peerUrl);nt.getConnectionStatus(this.peerUrl)!=="connected";)await b(100);this.rtcClient=nt,this.initConnectionMonitoring()}initConnectionMonitoring(){this.connectionMonitorInterval=setInterval(async()=>{let tt=!1;this.rtcClient&&this.rtcClient.getConnectionStatus(this.peerUrl)!=="connected"&&(console.debug(`${new Date().toISOString()} :: data channel closed`),tt=!0),(!this.rtcClient||tt)&&(this.emit("disconnect"),this.stopRealtimeConnection().catch(nt=>{console.error(nt)}))},1e3)}async getRemotePeer(){return{id:this.peerUrl,organizationId:"",deviceId:this.id,capabilities:[],capabilitySet:{}}}async stopRealtimeConnection(){let tt=!1;if(this.rtcClient){this.stopConnectionMonitoring(),this.id?(await this.rtcClient.disconnect(this.id),this.remoteDevicePeerId=null):tt=!0;try{await this.rtcClient.shutdown()}finally{this.rtcClient=void 0}}if(tt)throw new Error(`Realtime connection hasn't been started for ${this.id}`)}async sendCommand(tt,nt,it,ot){const Ut={value:nt,scrubberTime:(it||new Date).toISOString(),meta:ot};return await fetch(`${this.peerUrl}/v1/enqueue-command`,{method:"POST",body:JSON.stringify({command:tt,parameter:Ut}),headers:{"Content-Type":"application/json"}})}}async function mt(et,tt){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/admin/devices/${et}`,{method:"PATCH",body:JSON.stringify({fleetId:tt}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function ft(et){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/queries/queries`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).aggregates}async function wt(et){if(!o.token)throw new Error("Not authenticated");await fetch(`${h}/v1/admin/fleets/${et}`,{method:"DELETE",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})}async function pt(){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/queries/analytics/streams`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function yt(){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/analytics-modules`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function gt(et){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/queries/analytics/rows`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function oe(et){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/devices/query`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items.map(tt=>new S(tt.id,tt.name,tt.organizationId,tt.tags))}async function vt(){if(!o.token)throw new Error("Not authenticated");let et=new URLSearchParams("");typeof window<"u"&&window.location&&(et=new URLSearchParams(window.location.search));const tt=et.get("group");if(tt===null||tt.trim()==="")return;const nt=await fetch(`${h}/v1/admin/groups/`+tt,{headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}}),{tagKey:it,tagValue:ot}=await nt.json();return await oe({tags:{[it]:[ot]},enabled:!0,type:"default"})}async function Tt(et){if(!o.token)throw new Error("Not authenticated");const tt=await(await fetch(`${h}/v1/admin/devices/${et}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json(),nt=tt.name;return new S(et,nt,tt.organizationId,tt.tags)}async function M(){if(!o.token)throw new Error("Not authenticated");const et=await(await fetch(`${h}/v1/admin/device-details/query`,{method:"POST",body:JSON.stringify({enabled:!0,type:"default"}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json();return et.items,et.items.map(tt=>new S(tt.id,tt.name,tt.organizationId,tt.tags))}async function Ct(et){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/events/query/id=${et}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function St(et){const tt=await(await fetch(`${h}/v1/admin/files/query`,{method:"POST",body:JSON.stringify({fileIds:[et]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json();if(tt.fileUrls.length===0)throw new Error("File not found");return tt.fileUrls[0]}async function Et(et){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/admin/fleets/${et}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function kt(et){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/fleets/${et}/devices`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function Ot(){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/intervention-requests`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function Rt(...et){const tt=et.flat().filter(nt=>!!nt);return tt.length===0?[]:(await(await fetch(`${h}/v1/queries/stream-current-value`,{method:"POST",body:JSON.stringify({deviceIds:tt}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function bt(){if(!o.token)throw new Error("Not authenticated");const et=(await(await fetch(`${h}/v1/queries/online-devices`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items;return(await M()).filter(tt=>et.includes(tt.id))}async function At(){if(!o.token)throw new Error("Not authenticated");const et=(await(await fetch(`${h}/v1/signaling/peers`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items.map(tt=>tt.deviceId);return(await M()).filter(tt=>et.includes(tt.id))}async function Dt(){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/streams`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items.filter(et=>et.enabled)}async function Pt(et){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/queries/analytics/task-report-rows`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function jt(){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/queries/analytics/task-reports`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function Nt(){if(!o.token)throw new Error("Not authenticated");return(await(await fetch(`${h}/v1/admin/fleets`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items}async function It(et,tt){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/admin/fleets/${et}`,{method:"PATCH",body:JSON.stringify(tt),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function Lt(et){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/admin/streams/${et.id}`,{method:"PATCH",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function _t(et){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/admin/views/${et.id}`,{method:"PATCH",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function $t(et){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/queries/analytics`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}async function zt(et){if(!o.token)throw new Error("Not authenticated");return await(await fetch(`${h}/v1/admin/fleets`,{method:"POST",body:JSON.stringify(et),headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()}const E=class{static async setDefaultDevice(et){E.defaultDeviceId=et}static async getCurrentDevice(){if(!o.token)throw new Error("Not authenticated");if(!E.defaultDeviceId)throw new Error("No known default device");const et=(await(await fetch(`${h}/v1/admin/device-details/query`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+o.token}})).json()).items.find(it=>it.id===E.defaultDeviceId),tt=et.name,nt=new S(E.defaultDeviceId,tt,f(o.currentOrganization),et.tags);return E.knownContext.push(new WeakRef(nt)),nt}static async getPeerDevice(et){const tt=new ut(et);return tt.id=await tt.getDeviceId(),tt}static async getDevice(et){const tt=await Tt(et);return E.knownContext.push(new WeakRef(tt)),tt}};let l=E;s(l,"defaultDeviceId"),s(l,"knownContext",[]),s(l,"createFleet",zt),s(l,"listFleets",Nt),s(l,"getFleet",Et),s(l,"patchFleet",It),s(l,"deleteFleet",wt),s(l,"addDeviceToFleet",mt),s(l,"getFleetDevices",kt),s(l,"aggregateTelemetry",ft),s(l,"createShareLink",Y),s(l,"eventsCounter",ee),s(l,"getAnalyticStreams",pt),s(l,"getAnalyticsModules",yt),s(l,"getAnalyticsRows",gt),s(l,"getAnnotationCount",B),s(l,"getAnnotationCountByIntervals",te),s(l,"getCurrentGroup",vt),s(l,"getDevices",M),s(l,"getEvent",Ct),s(l,"getFileUrl",St),s(l,"getInterventions",Ot),s(l,"getLatestTelemetry",Rt),s(l,"getOnlineDevices",bt),s(l,"getPeers",ie),s(l,"getRealtimeDevices",At),s(l,"getRealtimeSessions",ae),s(l,"getStreams",Dt),s(l,"getTaskReportRows",Pt),s(l,"getTaskReportTables",jt),s(l,"getTelemetry",ne),s(l,"getViews",X),s(l,"patchStream",Lt),s(l,"patchView",_t),s(l,"queryAnalytics",$t),s(l,"queryDevices",oe),s(l,"queryEvents",z),s(l,"queryTelemetry",_);try{const et=typeof window<"u"&&window.location?new URLSearchParams(window.location.search):new URLSearchParams(""),tt=et.get("device");tt&&l.setDefaultDevice(tt);const nt=et.get("auth");nt&&o.loginWithToken(nt),et.get("module")&&o.listenForRefresh(),typeof window<"u"&&y.listenForConnectionEvents()}catch{}var lodashExports={},lodash={get exports(){return lodashExports},set exports(et){lodashExports=et}};/** * @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,lt="__lodash_placeholder__",ut=1,Ut=2,ot=4,st=1,dt=2,St=1,pt=2,Rt=4,Bt=8,ht=16,mt=32,gt=64,Vt=128,Tt=256,ft=512,Wt=30,yt="...",Kt=800,$t=16,Ht=1,Nt=2,qt=3,kt=1/0,bt=9007199254740991,Jt=17976931348623157e292,wt=0/0,At=4294967295,Ct=At-1,Mt=At>>>1,nn=[["ary",Vt],["bind",St],["bindKey",pt],["curry",Bt],["curryRight",ht],["flip",ft],["partial",mt],["partialRight",gt],["rearg",Tt]],sn="[object Arguments]",Lt="[object Array]",tn="[object AsyncFunction]",cn="[object Boolean]",on="[object Date]",Gt="[object DOMException]",Xt="[object Error]",dn="[object Function]",Vn="[object GeneratorFunction]",Fn="[object Map]",fn="[object Number]",Un="[object Null]",Jn="[object Object]",_n="[object Promise]",Zn="[object Proxy]",On="[object RegExp]",Yn="[object Set]",_t="[object String]",Ot="[object Symbol]",jt="[object Undefined]",pn="[object WeakMap]",En="[object WeakSet]",yn="[object ArrayBuffer]",Cn="[object DataView]",Gn="[object Float32Array]",Wn="[object Float64Array]",ir="[object Int8Array]",lr="[object Int16Array]",Rn="[object Int32Array]",_r="[object Uint8Array]",zr="[object Uint8ClampedArray]",Er="[object Uint16Array]",ho="[object Uint32Array]",Ro=/\b__p \+= '';/g,rr=/\b(__p \+=) '' \+/g,wo=/(__e\(.*?\)|\b__t\)) \+\n'';/g,oo=/&(?:amp|lt|gt|quot|#39);/g,No=/[&<>"']/g,ro=RegExp(oo.source),ao=RegExp(No.source),Wo=/<%-([\s\S]+?)%>/g,_o=/<%([\s\S]+?)%>/g,Ao=/<%=([\s\S]+?)%>/g,So=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,bo=/^\w*$/,po=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,tr=/[\\^$.*+?()[\]{}|]/g,vr=RegExp(tr.source),Hr=/^\s+/,fo=/\s/,Go=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Zr=/\{\n\/\* \[wrapped with (.+)\] \*/,_a=/,? & /,xa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Eo=/[()=,{}\[\]\/\s]/,eo=/\\(\\)?/g,nr=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,cr=/\w*$/,mo=/^[-+]0x[0-9a-f]+$/i,Qo=/^0b[01]+$/i,Kr=/^\[object .+?Constructor\]$/,Dr=/^0o[0-7]+$/i,gn=/^(?:0|[1-9]\d*)$/,In=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Zt=/($^)/,xt=/['\n\r\u2028\u2029\\]/g,zt="\\ud800-\\udfff",Qn="\\u0300-\\u036f",Tn="\\ufe20-\\ufe2f",ct="\\u20d0-\\u20ff",Qt=Qn+Tn+ct,vt="\\u2700-\\u27bf",Pt="a-z\\xdf-\\xf6\\xf8-\\xff",en="\\xac\\xb1\\xd7\\xf7",Bn="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",jn="\\u2000-\\u206f",$n=" \\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",ur="A-Z\\xc0-\\xd6\\xd8-\\xde",Rr="\\ufe0e\\ufe0f",Sr=en+Bn+jn+$n,Yr="['’]",Mr="["+zt+"]",hr="["+Sr+"]",Br="["+Qt+"]",xr="\\d+",Gr="["+vt+"]",lo="["+Pt+"]",qr="[^"+zt+Sr+xr+vt+Pt+ur+"]",_i="\\ud83c[\\udffb-\\udfff]",Uo="(?:"+Br+"|"+_i+")",yo="[^"+zt+"]",Io="(?:\\ud83c[\\udde6-\\uddff]){2}",Rs="[\\ud800-\\udbff][\\udc00-\\udfff]",is="["+ur+"]",Us="\\u200d",Ol="(?:"+lo+"|"+qr+")",Os="(?:"+is+"|"+qr+")",Fl="(?:"+Yr+"(?:d|ll|m|re|s|t|ve))?",Al="(?:"+Yr+"(?:D|LL|M|RE|S|T|VE))?",Il=Uo+"?",Ll="["+Rr+"]?",Pl="(?:"+Us+"(?:"+[yo,Io,Rs].join("|")+")"+Ll+Il+")*",zl="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Yl="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",As=Ll+Il+Pl,Gl="(?:"+[Gr,Io,Rs].join("|")+")"+As,Ss="(?:"+[yo+Br+"?",Br,Io,Rs,Mr].join("|")+")",$a=RegExp(Yr,"g"),Xl=RegExp(Br,"g"),cs=RegExp(_i+"(?="+_i+")|"+Ss+As,"g"),MU=RegExp([is+"?"+lo+"+"+Fl+"(?="+[hr,is,"$"].join("|")+")",Os+"+"+Al+"(?="+[hr,is+Ol,"$"].join("|")+")",is+"?"+Ol+"+"+Fl,is+"+"+Al,Yl,zl,xr,Gl].join("|"),"g"),Hl=RegExp("["+Us+zt+Qt+Rr+"]"),xU=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Xo=["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"],Ws=-1,Or={};Or[Gn]=Or[Wn]=Or[ir]=Or[lr]=Or[Rn]=Or[_r]=Or[zr]=Or[Er]=Or[ho]=!0,Or[sn]=Or[Lt]=Or[yn]=Or[cn]=Or[Cn]=Or[on]=Or[Xt]=Or[dn]=Or[Fn]=Or[fn]=Or[Jn]=Or[On]=Or[Yn]=Or[_t]=Or[pn]=!1;var Jr={};Jr[sn]=Jr[Lt]=Jr[yn]=Jr[Cn]=Jr[cn]=Jr[on]=Jr[Gn]=Jr[Wn]=Jr[ir]=Jr[lr]=Jr[Rn]=Jr[Fn]=Jr[fn]=Jr[Jn]=Jr[On]=Jr[Yn]=Jr[_t]=Jr[Ot]=Jr[_r]=Jr[zr]=Jr[Er]=Jr[ho]=!0,Jr[Xt]=Jr[dn]=Jr[pn]=!1;var Ql={À:"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"},Kl={"&":"&","<":"<",">":">",'"':""","'":"'"},Bl={"&":"&","<":"<",">":">",""":'"',"'":"'"},Dt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},rn=parseFloat,Sn=parseInt,kn=typeof commonjsGlobal$1=="object"&&commonjsGlobal$1&&commonjsGlobal$1.Object===Object&&commonjsGlobal$1,An=typeof self=="object"&&self&&self.Object===Object&&self,Ln=kn||An||Function("return this")(),Dn=s&&!s.nodeType&&s,zn=Dn&&!0&&o&&!o.nodeType&&o,Hn=zn&&zn.exports===Dn,or=Hn&&kn.process,sr=function(){try{var Mn=zn&&zn.require&&zn.require("util").types;return Mn||or&&or.binding&&or.binding("util")}catch{}}(),Tr=sr&&sr.isArrayBuffer,kr=sr&&sr.isDate,jr=sr&&sr.isMap,Lr=sr&&sr.isRegExp,pr=sr&&sr.isSet,co=sr&&sr.isTypedArray;function $r(Mn,Xn,Pn){switch(Pn.length){case 0:return Mn.call(Xn);case 1:return Mn.call(Xn,Pn[0]);case 2:return Mn.call(Xn,Pn[0],Pn[1]);case 3:return Mn.call(Xn,Pn[0],Pn[1],Pn[2])}return Mn.apply(Xn,Pn)}function Op(Mn,Xn,Pn,Ur){for(var mr=-1,Ar=Mn==null?0:Mn.length;++mr-1}function OU(Mn,Xn,Pn){for(var Ur=-1,mr=Mn==null?0:Mn.length;++Ur-1;);return Pn}function GF(Mn,Xn){for(var Pn=Mn.length;Pn--&&Is(Xn,Mn[Pn],0)>-1;);return Pn}function Xp(Mn,Xn){for(var Pn=Mn.length,Ur=0;Pn--;)Mn[Pn]===Xn&&++Ur;return Ur}var Hp=LU(Ql),Kp=LU(Kl);function qp(Mn){return"\\"+Dt[Mn]}function $p(Mn,Xn){return Mn==null?_:Mn[Xn]}function js(Mn){return Hl.test(Mn)}function eQ(Mn){return xU.test(Mn)}function tQ(Mn){for(var Xn,Pn=[];!(Xn=Mn.next()).done;)Pn.push(Xn.value);return Pn}function GU(Mn){var Xn=-1,Pn=Array(Mn.size);return Mn.forEach(function(Ur,mr){Pn[++Xn]=[mr,Ur]}),Pn}function XF(Mn,Xn){return function(Pn){return Mn(Xn(Pn))}}function Vs(Mn,Xn){for(var Pn=-1,Ur=Mn.length,mr=0,Ar=[];++Pn-1}function IQ(it,Ft){var Et=this.__data__,It=hU(Et,it);return It<0?(++this.size,Et.push([it,Ft])):Et[It][1]=Ft,this}ds.prototype.clear=MQ,ds.prototype.delete=xQ,ds.prototype.get=OQ,ds.prototype.has=AQ,ds.prototype.set=IQ;function Fs(it){var Ft=-1,Et=it==null?0:it.length;for(this.clear();++Ft=Ft?it:Ft)),it}function $o(it,Ft,Et,It,an,hn){var Nn,wn=Ft&ut,xn=Ft&Ut,Kn=Ft&ot;if(Et&&(Nn=an?Et(it,It,an,hn):Et(it)),Nn!==_)return Nn;if(!io(it))return it;var qn=yr(it);if(qn){if(Nn=jB(it),!wn)return Do(it,Nn)}else{var er=To(it),ar=er==dn||er==Vn;if(Ns(it))return Wu(it,wn);if(er==Jn||er==sn||ar&&!an){if(Nn=xn||ar?{}:Hu(it),!wn)return xn?kB(it,tB(Nn,it)):WB(it,su(Nn,it))}else{if(!Jr[er])return an?it:{};Nn=LB(it,er,wn)}}hn||(hn=new ts);var Fr=hn.get(it);if(Fr)return Fr;hn.set(it,Nn),Ep(it)?it.forEach(function(gr){Nn.add($o(gr,Ft,Et,gr,it,hn))}):yp(it)&&it.forEach(function(gr,Wr){Nn.set(Wr,$o(gr,Ft,Et,Wr,it,hn))});var fr=Kn?xn?gF:fF:xn?xo:Vo,br=qn?_:fr(it);return Ho(br||it,function(gr,Wr){br&&(Wr=gr,gr=it[Wr]),Tl(Nn,Wr,$o(gr,Ft,Et,Wr,it,hn))}),Nn}function nB(it){var Ft=Vo(it);return function(Et){return lu(Et,it,Ft)}}function lu(it,Ft,Et){var It=Et.length;if(it==null)return!It;for(it=Xr(it);It--;){var an=Et[It],hn=Ft[an],Nn=it[an];if(Nn===_&&!(an in it)||!hn(Nn))return!1}return!0}function Uu(it,Ft,Et){if(typeof it!="function")throw new Ko(et);return Ml(function(){it.apply(_,Et)},Ft)}function Nl(it,Ft,Et,It){var an=-1,hn=$l,Nn=!0,wn=it.length,xn=[],Kn=Ft.length;if(!wn)return xn;Et&&(Ft=no(Ft,jo(Et))),It?(hn=OU,Nn=!1):Ft.length>=$&&(hn=Rl,Nn=!1,Ft=new Zs(Ft));e:for(;++anan?0:an+Et),It=It===_||It>an?an:Vr(It),It<0&&(It+=an),It=Et>It?0:bp(It);Et0&&Et(wn)?Ft>1?Jo(wn,Ft-1,Et,It,an):ys(an,wn):It||(an[an.length]=wn)}return an}var _d=Du(),Fu=Du(!0);function as(it,Ft){return it&&_d(it,Ft,Vo)}function eF(it,Ft){return it&&Fu(it,Ft,Vo)}function gU(it,Ft){return ms(Ft,function(Et){return fs(it[Et])})}function _s(it,Ft){Ft=vs(Ft,it);for(var Et=0,It=Ft.length;it!=null&&EtFt}function oB(it,Ft){return it!=null&&Pr.call(it,Ft)}function aB(it,Ft){return it!=null&&Ft in Xr(it)}function sB(it,Ft,Et){return it>=vo(Ft,Et)&&it=120&&qn.length>=120)?new Zs(Nn&&qn):_}qn=it[0];var er=-1,ar=wn[0];e:for(;++er-1;)wn!==it&&UU.call(wn,xn,1),UU.call(it,xn,1);return it}function yu(it,Ft){for(var Et=it?Ft.length:0,It=Et-1;Et--;){var an=Ft[Et];if(Et==It||an!==hn){var hn=an;hs(an)?UU.call(it,an,1):cF(it,an)}}return it}function sF(it,Ft){return it+FU(ru()*(Ft-it+1))}function RB(it,Ft,Et,It){for(var an=-1,hn=Bo(dU((Ft-it)/(Et||1)),0),Nn=Pn(hn);hn--;)Nn[It?hn:++an]=it,it+=Et;return Nn}function lF(it,Ft){var Et="";if(!it||Ft<1||Ft>bt)return Et;do Ft%2&&(Et+=it),Ft=FU(Ft/2),Ft&&(it+=it);while(Ft);return Et}function Nr(it,Ft){return EF($u(it,Ft,Oo),it+"")}function SB(it){return au(Ul(it))}function mB(it,Ft){var Et=Ul(it);return TU(Et,ws(Ft,0,Et.length))}function Zl(it,Ft,Et,It){if(!io(it))return it;Ft=vs(Ft,it);for(var an=-1,hn=Ft.length,Nn=hn-1,wn=it;wn!=null&&++anan?0:an+Ft),Et=Et>an?an:Et,Et<0&&(Et+=an),an=Ft>Et?0:Et-Ft>>>0,Ft>>>=0;for(var hn=Pn(an);++It>>1,Nn=it[hn];Nn!==null&&!Po(Nn)&&(Et?Nn<=Ft:Nn=$){var Kn=Ft?null:_B(it);if(Kn)return tU(Kn);Nn=!1,an=Rl,xn=new Zs}else xn=Ft?[]:wn;e:for(;++It=It?it:na(it,Ft,Et)}var Nu=hQ||function(it){return Ln.clearTimeout(it)};function Wu(it,Ft){if(Ft)return it.slice();var Et=it.length,It=qF?qF(Et):new it.constructor(Et);return it.copy(It),It}function pF(it){var Ft=new it.constructor(it.byteLength);return new sU(Ft).set(new sU(it)),Ft}function bB(it,Ft){var Et=Ft?pF(it.buffer):it.buffer;return new it.constructor(Et,it.byteOffset,it.byteLength)}function vB(it){var Ft=new it.constructor(it.source,cr.exec(it));return Ft.lastIndex=it.lastIndex,Ft}function TB(it){return Jl?Xr(Jl.call(it)):{}}function ku(it,Ft){var Et=Ft?pF(it.buffer):it.buffer;return new it.constructor(Et,it.byteOffset,it.length)}function Cu(it,Ft){if(it!==Ft){var Et=it!==_,It=it===null,an=it===it,hn=Po(it),Nn=Ft!==_,wn=Ft===null,xn=Ft===Ft,Kn=Po(Ft);if(!wn&&!Kn&&!hn&&it>Ft||hn&&Nn&&xn&&!wn&&!Kn||It&&Nn&&xn||!Et&&xn||!an)return 1;if(!It&&!hn&&!Kn&&it=wn)return xn;var Kn=Et[It];return xn*(Kn=="desc"?-1:1)}}return it.index-Ft.index}function Zu(it,Ft,Et,It){for(var an=-1,hn=it.length,Nn=Et.length,wn=-1,xn=Ft.length,Kn=Bo(hn-Nn,0),qn=Pn(xn+Kn),er=!It;++wn1?Et[an-1]:_,Nn=an>2?Et[2]:_;for(hn=it.length>3&&typeof hn=="function"?(an--,hn):_,Nn&&Co(Et[0],Et[1],Nn)&&(hn=an<3?_:hn,an=1),Ft=Xr(Ft);++It-1?an[hn?Ft[Nn]:Nn]:_}}function Ou(it){return Qs(function(Ft){var Et=Ft.length,It=Et,an=qo.prototype.thru;for(it&&Ft.reverse();It--;){var hn=Ft[It];if(typeof hn!="function")throw new Ko(et);if(an&&!Nn&&bU(hn)=="wrapper")var Nn=new qo([],!0)}for(It=Nn?It:Et;++It1&&wr.reverse(),qn&&xnwn))return!1;var Kn=hn.get(it),qn=hn.get(Ft);if(Kn&&qn)return Kn==Ft&&qn==it;var er=-1,ar=!0,Fr=Et&dt?new Zs:_;for(hn.set(it,Ft),hn.set(Ft,it);++er1?"& ":"")+Ft[It],Ft=Ft.join(Et>2?", ":" "),it.replace(Go,`{ -/* [wrapped with `+Ft+`] */ -`)}function zB(it){return yr(it)||xs(it)||!!(tu&&it&&it[tu])}function hs(it,Ft){var Et=typeof it;return Ft=Ft??bt,!!Ft&&(Et=="number"||Et!="symbol"&&gn.test(it))&&it>-1&&it%1==0&&it0){if(++Ft>=Kt)return arguments[0]}else Ft=0;return it.apply(_,arguments)}}function TU(it,Ft){var Et=-1,It=it.length,an=It-1;for(Ft=Ft===_?It:Ft;++Et1?it[Ft-1]:_;return Et=typeof Et=="function"?(it.pop(),Et):_,dp(it,Et)});function Fp(it){var Ft=un(it);return Ft.__chain__=!0,Ft}function QR(it,Ft){return Ft(it),it}function NU(it,Ft){return Ft(it)}var hR=Qs(function(it){var Ft=it.length,Et=Ft?it[0]:0,It=this.__wrapped__,an=function(hn){return _c(hn,it)};return Ft>1||this.__actions__.length||!(It instanceof Cr)||!hs(Et)?this.thru(an):(It=It.slice(Et,+Et+(Ft?1:0)),It.__actions__.push({func:NU,args:[an],thisArg:_}),new qo(It,this.__chain__).thru(function(hn){return Ft&&!hn.length&&hn.push(_),hn}))});function fR(){return Fp(this)}function gR(){return new qo(this.value(),this.__chain__)}function BR(){this.__values__===_&&(this.__values__=Jp(this.value()));var it=this.__index__>=this.__values__.length,Ft=it?_:this.__values__[this.__index__++];return{done:it,value:Ft}}function RR(){return this}function SR(it){for(var Ft,Et=this;Et instanceof QU;){var It=op(Et);It.__index__=0,It.__values__=_,Ft?an.__wrapped__=It:Ft=It;var an=It;Et=Et.__wrapped__}return an.__wrapped__=it,Ft}function mR(){var it=this.__wrapped__;if(it instanceof Cr){var Ft=it;return this.__actions__.length&&(Ft=new Cr(this)),Ft=Ft.reverse(),Ft.__actions__.push({func:NU,args:[JF],thisArg:_}),new qo(Ft,this.__chain__)}return this.thru(JF)}function yR(){return vu(this.__wrapped__,this.__actions__)}var VR=mU(function(it,Ft,Et){Pr.call(it,Et)?++it[Et]:us(it,Et,1)});function ER(it,Ft,Et){var It=yr(it)?AF:rB;return Et&&Co(it,Ft,Et)&&(Ft=_),It(it,Qr(Ft,3))}function JR(it,Ft){var Et=yr(it)?ms:du;return Et(it,Qr(Ft,3))}var bR=xu(ap),vR=xu(sp);function TR(it,Ft){return Jo(WU(it,Ft),1)}function NR(it,Ft){return Jo(WU(it,Ft),kt)}function WR(it,Ft,Et){return Et=Et===_?1:Vr(Et),Jo(WU(it,Ft),Et)}function up(it,Ft){var Et=yr(it)?Ho:Js;return Et(it,Qr(Ft,3))}function pp(it,Ft){var Et=yr(it)?Ap:cu;return Et(it,Qr(Ft,3))}var kR=mU(function(it,Ft,Et){Pr.call(it,Et)?it[Et].push(Ft):us(it,Et,[Ft])});function CR(it,Ft,Et,It){it=Mo(it)?it:Ul(it),Et=Et&&!It?Vr(Et):0;var an=it.length;return Et<0&&(Et=Bo(an+Et,0)),_U(it)?Et<=an&&it.indexOf(Ft,Et)>-1:!!an&&Is(it,Ft,Et)>-1}var ZR=Nr(function(it,Ft,Et){var It=-1,an=typeof Ft=="function",hn=Mo(it)?Pn(it.length):[];return Js(it,function(Nn){hn[++It]=an?$r(Ft,Nn,Et):Wl(Nn,Ft,Et)}),hn}),wR=mU(function(it,Ft,Et){us(it,Et,Ft)});function WU(it,Ft){var Et=yr(it)?no:fu;return Et(it,Qr(Ft,3))}function _R(it,Ft,Et,It){return it==null?[]:(yr(Ft)||(Ft=Ft==null?[]:[Ft]),Et=It?_:Et,yr(Et)||(Et=Et==null?[]:[Et]),Su(it,Ft,Et))}var DR=mU(function(it,Ft,Et){it[Et?0:1].push(Ft)},function(){return[[],[]]});function MR(it,Ft,Et){var It=yr(it)?AU:PF,an=arguments.length<3;return It(it,Qr(Ft,4),Et,an,Js)}function xR(it,Ft,Et){var It=yr(it)?Ip:PF,an=arguments.length<3;return It(it,Qr(Ft,4),Et,an,cu)}function OR(it,Ft){var Et=yr(it)?ms:du;return Et(it,ZU(Qr(Ft,3)))}function AR(it){var Ft=yr(it)?au:SB;return Ft(it)}function IR(it,Ft,Et){(Et?Co(it,Ft,Et):Ft===_)?Ft=1:Ft=Vr(Ft);var It=yr(it)?_f:mB;return It(it,Ft)}function jR(it){var Ft=yr(it)?_g:VB;return Ft(it)}function LR(it){if(it==null)return 0;if(Mo(it))return _U(it)?Ls(it):it.length;var Ft=To(it);return Ft==Fn||Ft==Yn?it.size:iF(it).length}function PR(it,Ft,Et){var It=yr(it)?IU:EB;return Et&&Co(it,Ft,Et)&&(Ft=_),It(it,Qr(Ft,3))}var zR=Nr(function(it,Ft){if(it==null)return[];var Et=Ft.length;return Et>1&&Co(it,Ft[0],Ft[1])?Ft=[]:Et>2&&Co(Ft[0],Ft[1],Ft[2])&&(Ft=[Ft[0]]),Su(it,Jo(Ft,1),[])}),kU=fQ||function(){return Ln.Date.now()};function YR(it,Ft){if(typeof Ft!="function")throw new Ko(et);return it=Vr(it),function(){if(--it<1)return Ft.apply(this,arguments)}}function Qp(it,Ft,Et){return Ft=Et?_:Ft,Ft=it&&Ft==null?it.length:Ft,ps(it,Vt,_,_,_,_,Ft)}function hp(it,Ft){var Et;if(typeof Ft!="function")throw new Ko(et);return it=Vr(it),function(){return--it>0&&(Et=Ft.apply(this,arguments)),it<=1&&(Ft=_),Et}}var vF=Nr(function(it,Ft,Et){var It=St;if(Et.length){var an=Vs(Et,qs(vF));It|=mt}return ps(it,It,Ft,Et,an)}),fp=Nr(function(it,Ft,Et){var It=St|pt;if(Et.length){var an=Vs(Et,qs(fp));It|=mt}return ps(Ft,It,it,Et,an)});function gp(it,Ft,Et){Ft=Et?_:Ft;var It=ps(it,Bt,_,_,_,_,_,Ft);return It.placeholder=gp.placeholder,It}function Bp(it,Ft,Et){Ft=Et?_:Ft;var It=ps(it,ht,_,_,_,_,_,Ft);return It.placeholder=Bp.placeholder,It}function Rp(it,Ft,Et){var It,an,hn,Nn,wn,xn,Kn=0,qn=!1,er=!1,ar=!0;if(typeof it!="function")throw new Ko(et);Ft=ba(Ft)||0,io(Et)&&(qn=!!Et.leading,er="maxWait"in Et,hn=er?Bo(ba(Et.maxWait)||0,Ft):hn,ar="trailing"in Et?!!Et.trailing:ar);function Fr(uo){var rs=It,Bs=an;return It=an=_,Kn=uo,Nn=it.apply(Bs,rs),Nn}function fr(uo){return Kn=uo,wn=Ml(Wr,Ft),qn?Fr(uo):Nn}function br(uo){var rs=uo-xn,Bs=uo-Kn,xp=Ft-rs;return er?vo(xp,hn-Bs):xp}function gr(uo){var rs=uo-xn,Bs=uo-Kn;return xn===_||rs>=Ft||rs<0||er&&Bs>=hn}function Wr(){var uo=kU();if(gr(uo))return wr(uo);wn=Ml(Wr,br(uo))}function wr(uo){return wn=_,ar&&It?Fr(uo):(It=an=_,Nn)}function zo(){wn!==_&&Nu(wn),Kn=0,It=xn=an=wn=_}function Zo(){return wn===_?Nn:wr(kU())}function Yo(){var uo=kU(),rs=gr(uo);if(It=arguments,an=this,xn=uo,rs){if(wn===_)return fr(xn);if(er)return Nu(wn),wn=Ml(Wr,Ft),Fr(xn)}return wn===_&&(wn=Ml(Wr,Ft)),Nn}return Yo.cancel=zo,Yo.flush=Zo,Yo}var GR=Nr(function(it,Ft){return Uu(it,1,Ft)}),XR=Nr(function(it,Ft,Et){return Uu(it,ba(Ft)||0,Et)});function HR(it){return ps(it,ft)}function CU(it,Ft){if(typeof it!="function"||Ft!=null&&typeof Ft!="function")throw new Ko(et);var Et=function(){var It=arguments,an=Ft?Ft.apply(this,It):It[0],hn=Et.cache;if(hn.has(an))return hn.get(an);var Nn=it.apply(this,It);return Et.cache=hn.set(an,Nn)||hn,Nn};return Et.cache=new(CU.Cache||Fs),Et}CU.Cache=Fs;function ZU(it){if(typeof it!="function")throw new Ko(et);return function(){var Ft=arguments;switch(Ft.length){case 0:return!it.call(this);case 1:return!it.call(this,Ft[0]);case 2:return!it.call(this,Ft[0],Ft[1]);case 3:return!it.call(this,Ft[0],Ft[1],Ft[2])}return!it.apply(this,Ft)}}function KR(it){return hp(2,it)}var qR=JB(function(it,Ft){Ft=Ft.length==1&&yr(Ft[0])?no(Ft[0],jo(Qr())):no(Jo(Ft,1),jo(Qr()));var Et=Ft.length;return Nr(function(It){for(var an=-1,hn=vo(It.length,Et);++an=Ft}),xs=pu(function(){return arguments}())?pu:function(it){return so(it)&&Pr.call(it,"callee")&&!eu.call(it,"callee")},yr=Pn.isArray,uS=Tr?jo(Tr):UB;function Mo(it){return it!=null&&wU(it.length)&&!fs(it)}function Fo(it){return so(it)&&Mo(it)}function pS(it){return it===!0||it===!1||so(it)&&ko(it)==cn}var Ns=BQ||OF,QS=kr?jo(kr):cB;function hS(it){return so(it)&&it.nodeType===1&&!xl(it)}function fS(it){if(it==null)return!0;if(Mo(it)&&(yr(it)||typeof it=="string"||typeof it.splice=="function"||Ns(it)||$s(it)||xs(it)))return!it.length;var Ft=To(it);if(Ft==Fn||Ft==Yn)return!it.size;if(Dl(it))return!iF(it).length;for(var Et in it)if(Pr.call(it,Et))return!1;return!0}function gS(it,Ft){return Cl(it,Ft)}function BS(it,Ft,Et){Et=typeof Et=="function"?Et:_;var It=Et?Et(it,Ft):_;return It===_?Cl(it,Ft,_,Et):!!It}function NF(it){if(!so(it))return!1;var Ft=ko(it);return Ft==Xt||Ft==Gt||typeof it.message=="string"&&typeof it.name=="string"&&!xl(it)}function RS(it){return typeof it=="number"&&nu(it)}function fs(it){if(!io(it))return!1;var Ft=ko(it);return Ft==dn||Ft==Vn||Ft==tn||Ft==Zn}function mp(it){return typeof it=="number"&&it==Vr(it)}function wU(it){return typeof it=="number"&&it>-1&&it%1==0&&it<=bt}function io(it){var Ft=typeof it;return it!=null&&(Ft=="object"||Ft=="function")}function so(it){return it!=null&&typeof it=="object"}var yp=jr?jo(jr):FB;function SS(it,Ft){return it===Ft||rF(it,Ft,RF(Ft))}function mS(it,Ft,Et){return Et=typeof Et=="function"?Et:_,rF(it,Ft,RF(Ft),Et)}function yS(it){return Vp(it)&&it!=+it}function VS(it){if(XB(it))throw new mr(_e);return Qu(it)}function ES(it){return it===null}function JS(it){return it==null}function Vp(it){return typeof it=="number"||so(it)&&ko(it)==fn}function xl(it){if(!so(it)||ko(it)!=Jn)return!1;var Ft=lU(it);if(Ft===null)return!0;var Et=Pr.call(Ft,"constructor")&&Ft.constructor;return typeof Et=="function"&&Et instanceof Et&&iU.call(Et)==uQ}var WF=Lr?jo(Lr):uB;function bS(it){return mp(it)&&it>=-bt&&it<=bt}var Ep=pr?jo(pr):pB;function _U(it){return typeof it=="string"||!yr(it)&&so(it)&&ko(it)==_t}function Po(it){return typeof it=="symbol"||so(it)&&ko(it)==Ot}var $s=co?jo(co):QB;function vS(it){return it===_}function TS(it){return so(it)&&To(it)==pn}function NS(it){return so(it)&&ko(it)==En}var WS=JU(oF),kS=JU(function(it,Ft){return it<=Ft});function Jp(it){if(!it)return[];if(Mo(it))return _U(it)?es(it):Do(it);if(Sl&&it[Sl])return tQ(it[Sl]());var Ft=To(it),Et=Ft==Fn?GU:Ft==Yn?tU:Ul;return Et(it)}function gs(it){if(!it)return it===0?it:0;if(it=ba(it),it===kt||it===-kt){var Ft=it<0?-1:1;return Ft*Jt}return it===it?it:0}function Vr(it){var Ft=gs(it),Et=Ft%1;return Ft===Ft?Et?Ft-Et:Ft:0}function bp(it){return it?ws(Vr(it),0,At):0}function ba(it){if(typeof it=="number")return it;if(Po(it))return wt;if(io(it)){var Ft=typeof it.valueOf=="function"?it.valueOf():it;it=io(Ft)?Ft+"":Ft}if(typeof it!="string")return it===0?it:+it;it=zF(it);var Et=Qo.test(it);return Et||Dr.test(it)?Sn(it.slice(2),Et?2:8):mo.test(it)?wt:+it}function vp(it){return ss(it,xo(it))}function CS(it){return it?ws(Vr(it),-bt,bt):it===0?it:0}function Ir(it){return it==null?"":Lo(it)}var ZS=Hs(function(it,Ft){if(Dl(Ft)||Mo(Ft)){ss(Ft,Vo(Ft),it);return}for(var Et in Ft)Pr.call(Ft,Et)&&Tl(it,Et,Ft[Et])}),Tp=Hs(function(it,Ft){ss(Ft,xo(Ft),it)}),DU=Hs(function(it,Ft,Et,It){ss(Ft,xo(Ft),it,It)}),wS=Hs(function(it,Ft,Et,It){ss(Ft,Vo(Ft),it,It)}),_S=Qs(_c);function DS(it,Ft){var Et=Xs(it);return Ft==null?Et:su(Et,Ft)}var xS=Nr(function(it,Ft){it=Xr(it);var Et=-1,It=Ft.length,an=It>2?Ft[2]:_;for(an&&Co(Ft[0],Ft[1],an)&&(It=1);++Et1),hn}),ss(it,gF(it),Et),It&&(Et=$o(Et,ut|Ut|ot,DB));for(var an=Ft.length;an--;)cF(Et,Ft[an]);return Et});function rm(it,Ft){return Wp(it,ZU(Qr(Ft)))}var im=Qs(function(it,Ft){return it==null?{}:gB(it,Ft)});function Wp(it,Ft){if(it==null)return{};var Et=no(gF(it),function(It){return[It]});return Ft=Qr(Ft),mu(it,Et,function(It,an){return Ft(It,an[0])})}function om(it,Ft,Et){Ft=vs(Ft,it);var It=-1,an=Ft.length;for(an||(an=1,it=_);++ItFt){var It=it;it=Ft,Ft=It}if(Et||it%1||Ft%1){var an=ru();return vo(it+an*(Ft-it+rn("1e-"+((an+"").length-1))),Ft)}return sF(it,Ft)}var hm=Ks(function(it,Ft,Et){return Ft=Ft.toLowerCase(),it+(Et?Zp(Ft):Ft)});function Zp(it){return ZF(Ir(it).toLowerCase())}function wp(it){return it=Ir(it),it&&it.replace(In,Hp).replace(Xl,"")}function fm(it,Ft,Et){it=Ir(it),Ft=Lo(Ft);var It=it.length;Et=Et===_?It:ws(Vr(Et),0,It);var an=Et;return Et-=Ft.length,Et>=0&&it.slice(Et,an)==Ft}function gm(it){return it=Ir(it),it&&ao.test(it)?it.replace(No,Kp):it}function Bm(it){return it=Ir(it),it&&vr.test(it)?it.replace(tr,"\\$&"):it}var Rm=Ks(function(it,Ft,Et){return it+(Et?"-":"")+Ft.toLowerCase()}),Sm=Ks(function(it,Ft,Et){return it+(Et?" ":"")+Ft.toLowerCase()}),mm=Mu("toLowerCase");function ym(it,Ft,Et){it=Ir(it),Ft=Vr(Ft);var It=Ft?Ls(it):0;if(!Ft||It>=Ft)return it;var an=(Ft-It)/2;return EU(FU(an),Et)+it+EU(dU(an),Et)}function Vm(it,Ft,Et){it=Ir(it),Ft=Vr(Ft);var It=Ft?Ls(it):0;return Ft&&It>>0,Et?(it=Ir(it),it&&(typeof Ft=="string"||Ft!=null&&!WF(Ft))&&(Ft=Lo(Ft),!Ft&&js(it))?Ts(es(it),0,Et):it.split(Ft,Et)):[]}var Wm=Ks(function(it,Ft,Et){return it+(Et?" ":"")+ZF(Ft)});function km(it,Ft,Et){return it=Ir(it),Et=Et==null?0:ws(Vr(Et),0,it.length),Ft=Lo(Ft),it.slice(Et,Et+Ft.length)==Ft}function Cm(it,Ft,Et){var It=un.templateSettings;Et&&Co(it,Ft,Et)&&(Ft=_),it=Ir(it),Ft=DU({},Ft,It,Pu);var an=DU({},Ft.imports,It.imports,Pu),hn=Vo(an),Nn=YU(an,hn),wn,xn,Kn=0,qn=Ft.interpolate||Zt,er="__p += '",ar=XU((Ft.escape||Zt).source+"|"+qn.source+"|"+(qn===Ao?nr:Zt).source+"|"+(Ft.evaluate||Zt).source+"|$","g"),Fr="//# sourceURL="+(Pr.call(Ft,"sourceURL")?(Ft.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Ws+"]")+` -`;it.replace(ar,function(gr,Wr,wr,zo,Zo,Yo){return wr||(wr=zo),er+=it.slice(Kn,Yo).replace(xt,qp),Wr&&(wn=!0,er+=`' + -__e(`+Wr+`) + -'`),Zo&&(xn=!0,er+=`'; -`+Zo+`; -__p += '`),wr&&(er+=`' + -((__t = (`+wr+`)) == null ? '' : __t) + -'`),Kn=Yo+gr.length,gr}),er+=`'; -`;var fr=Pr.call(Ft,"variable")&&Ft.variable;if(!fr)er=`with (obj) { -`+er+` + */(function(et,tt){(function(){var nt,it="4.17.21",ot=200,Ut="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",Ft="Expected a function",Qt="Invalid `variable` option passed into `_.template`",Bt="__lodash_hash_undefined__",Vt=500,Wt="__lodash_placeholder__",Xt=1,Zt=2,Yt=4,Mt=1,Gt=2,en=1,tn=2,ln=4,nn=8,sn=16,Kt=32,dn=64,Qn=128,En=256,an=512,rn=30,gn="...",un=800,Un=16,_n=1,vn=2,pn=3,Rn=1/0,Sn=9007199254740991,fn=17976931348623157e292,cn=0/0,bn=4294967295,Vn=bn-1,Mn=bn>>>1,Zn=[["ary",Qn],["bind",en],["bindKey",tn],["curry",nn],["curryRight",sn],["flip",an],["partial",Kt],["partialRight",dn],["rearg",En]],In="[object Arguments]",Cn="[object Array]",kn="[object AsyncFunction]",hn="[object Boolean]",Fn="[object Date]",wn="[object DOMException]",Wn="[object Error]",An="[object Function]",Pn="[object GeneratorFunction]",jn="[object Map]",$n="[object Number]",pr="[object Null]",Sr="[object Object]",Qr="[object Promise]",Ir="[object Proxy]",yr="[object RegExp]",Rr="[object Set]",wr="[object String]",br="[object Symbol]",Nr="[object Undefined]",kr="[object WeakMap]",_i="[object WeakSet]",Ar="[object ArrayBuffer]",bo="[object DataView]",Pr="[object Float32Array]",_o="[object Float64Array]",fo="[object Int8Array]",is="[object Int16Array]",wo="[object Int32Array]",Xo="[object Uint8Array]",$r="[object Uint8ClampedArray]",as="[object Uint16Array]",$o="[object Uint32Array]",hs=/\b__p \+= '';/g,zs=/\b(__p \+=) '' \+/g,ks=/(__e\(.*?\)|\b__t\)) \+\n'';/g,ms=/&(?:amp|lt|gt|quot|#39);/g,Ao=/[&<>"']/g,Hs=RegExp(ms.source),io=RegExp(Ao.source),Ns=/<%-([\s\S]+?)%>/g,dr=/<%([\s\S]+?)%>/g,yn=/<%=([\s\S]+?)%>/g,Tn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Dn=/^\w*$/,zn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Xn=/[\\^$.*+?()[\]{}|]/g,tr=RegExp(Xn.source),sr=/^\s+/,cr=/\s/,nr=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Kn=/\{\n\/\* \[wrapped with (.+)\] \*/,mr=/,? & /,xr=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Gr=/[()=,{}\[\]\/\s]/,co=/\\(\\)?/g,Fo=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,So=/\w*$/,Lo=/^[-+]0x[0-9a-f]+$/i,eo=/^0b[01]+$/i,oo=/^\[object .+?Constructor\]$/,po=/^0o[0-7]+$/i,Qo=/^(?:0|[1-9]\d*)$/,Ro=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,no=/($^)/,Ko=/['\n\r\u2028\u2029\\]/g,ko="\\ud800-\\udfff",fs="\\u0300-\\u036f",Ys="\\ufe20-\\ufe2f",Sl="\\u20d0-\\u20ff",gs=fs+Ys+Sl,yl="\\u2700-\\u27bf",Pl="a-z\\xdf-\\xf6\\xf8-\\xff",Cs="\\xac\\xb1\\xd7\\xf7",np="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",ps="\\u2000-\\u206f",hu=" \\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",fu="A-Z\\xc0-\\xd6\\xd8-\\xde",gu="\\ufe0e\\ufe0f",pu=Cs+np+ps+hu,zl="['’]",rp="["+ko+"]",Uu="["+pu+"]",Gs="["+gs+"]",Hl="\\d+",Fu="["+yl+"]",El="["+Pl+"]",Yl="[^"+ko+pu+Hl+yl+Pl+fu+"]",ss="\\ud83c[\\udffb-\\udfff]",Qu="(?:"+Gs+"|"+ss+")",qo="[^"+ko+"]",_l="(?:\\ud83c[\\udde6-\\uddff]){2}",Bs="[\\ud800-\\udbff][\\udc00-\\udfff]",Js="["+fu+"]",Gl="\\u200d",mu="(?:"+El+"|"+Yl+")",na="(?:"+Js+"|"+Yl+")",As="(?:"+zl+"(?:d|ll|m|re|s|t|ve))?",Rs="(?:"+zl+"(?:D|LL|M|RE|S|T|VE))?",No=Qu+"?",Tl="["+gu+"]?",Bu="(?:"+Gl+"(?:"+[qo,_l,Bs].join("|")+")"+Tl+No+")*",Xl="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Bn="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Jn=Tl+No+Bu,Ln="(?:"+[Fu,_l,Bs].join("|")+")"+Jn,Yn="(?:"+[qo+Gs+"?",Gs,_l,Bs,rp].join("|")+")",ir=RegExp(zl,"g"),lr=RegExp(Gs,"g"),qn=RegExp(ss+"(?="+ss+")|"+Yn+Jn,"g"),or=RegExp([Js+"?"+El+"+"+As+"(?="+[Uu,Js,"$"].join("|")+")",na+"+"+Rs+"(?="+[Uu,Js+mu,"$"].join("|")+")",Js+"?"+mu+"+"+As,Js+"+"+Rs,Bn,Xl,Hl,Ln].join("|"),"g"),Fr=RegExp("["+Gl+ko+gs+gu+"]"),Ur=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,vr=["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"],Kr=-1,Vr={};Vr[Pr]=Vr[_o]=Vr[fo]=Vr[is]=Vr[wo]=Vr[Xo]=Vr[$r]=Vr[as]=Vr[$o]=!0,Vr[In]=Vr[Cn]=Vr[Ar]=Vr[hn]=Vr[bo]=Vr[Fn]=Vr[Wn]=Vr[An]=Vr[jn]=Vr[$n]=Vr[Sr]=Vr[yr]=Vr[Rr]=Vr[wr]=Vr[kr]=!1;var Cr={};Cr[In]=Cr[Cn]=Cr[Ar]=Cr[bo]=Cr[hn]=Cr[Fn]=Cr[Pr]=Cr[_o]=Cr[fo]=Cr[is]=Cr[wo]=Cr[jn]=Cr[$n]=Cr[Sr]=Cr[yr]=Cr[Rr]=Cr[wr]=Cr[br]=Cr[Xo]=Cr[$r]=Cr[as]=Cr[$o]=!0,Cr[Wn]=Cr[An]=Cr[kr]=!1;var so={À:"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"},uo={"&":"&","<":"<",">":">",'"':""","'":"'"},jr={"&":"&","<":"<",">":">",""":'"',"'":"'"},ga={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Ws=parseFloat,B0=parseInt,cU=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,S0=typeof self=="object"&&self&&self.Object===Object&&self,To=cU||S0||Function("return this")(),ip=tt&&!tt.nodeType&&tt,Xs=ip&&!0&&et&&!et.nodeType&&et,uU=Xs&&Xs.exports===ip,op=uU&&cU.process,ba=function(){try{var er=Xs&&Xs.require&&Xs.require("util").types;return er||op&&op.binding&&op.binding("util")}catch{}}(),dU=ba&&ba.isArrayBuffer,hU=ba&&ba.isDate,fU=ba&&ba.isMap,gU=ba&&ba.isRegExp,pU=ba&&ba.isSet,UU=ba&&ba.isTypedArray;function Po(er,ur,ar){switch(ar.length){case 0:return er.call(ur);case 1:return er.call(ur,ar[0]);case 2:return er.call(ur,ar[0],ar[1]);case 3:return er.call(ur,ar[0],ar[1],ar[2])}return er.apply(ur,ar)}function y0(er,ur,ar,Er){for(var Mr=-1,qr=er==null?0:er.length;++Mr-1}function ap(er,ur,ar){for(var Er=-1,Mr=er==null?0:er.length;++Er-1;);return ar}function vU(er,ur){for(var ar=er.length;ar--&&Vl(ur,er[ar],0)>-1;);return ar}function N0(er,ur){for(var ar=er.length,Er=0;ar--;)er[ar]===ur&&++Er;return Er}var C0=up(so),A0=up(uo);function W0(er){return"\\"+ga[er]}function x0(er,ur){return er==null?nt:er[ur]}function Nl(er){return Fr.test(er)}function M0(er){return Ur.test(er)}function Z0(er){for(var ur,ar=[];!(ur=er.next()).done;)ar.push(ur.value);return ar}function gp(er){var ur=-1,ar=Array(er.size);return er.forEach(function(Er,Mr){ar[++ur]=[Mr,Er]}),ar}function bU(er,ur){return function(ar){return er(ur(ar))}}function Ms(er,ur){for(var ar=-1,Er=er.length,Mr=0,qr=[];++ar-1}function NQ(Jt,xt){var on=this.__data__,mn=xu(on,Jt);return mn<0?(++this.size,on.push([Jt,xt])):on[mn][1]=xt,this}Ss.prototype.clear=TQ,Ss.prototype.delete=VQ,Ss.prototype.get=wQ,Ss.prototype.has=kQ,Ss.prototype.set=NQ;function ys(Jt){var xt=-1,on=Jt==null?0:Jt.length;for(this.clear();++xt=xt?Jt:xt)),Jt}function es(Jt,xt,on,mn,Nn,On){var Hn,Gn=xt&Xt,rr=xt&Zt,hr=xt&Yt;if(on&&(Hn=Nn?on(Jt,mn,Nn,On):on(Jt)),Hn!==nt)return Hn;if(!go(Jt))return Jt;var fr=Or(Jt);if(fr){if(Hn=Wm(Jt),!Gn)return Mo(Jt,Hn)}else{var gr=Jo(Jt),Br=gr==An||gr==Pn;if(js(Jt))return sF(Jt,Gn);if(gr==Sr||gr==In||Br&&!Nn){if(Hn=rr||Br?{}:EF(Jt),!Gn)return rr?bm(Jt,YQ(Hn,Jt)):vm(Jt,DU(Hn,Jt))}else{if(!Cr[gr])return Nn?Jt:{};Hn=Dm(Jt,gr,Gn)}}On||(On=new cs);var Tr=On.get(Jt);if(Tr)return Tr;On.set(Jt,Hn),t0(Jt)?Jt.forEach(function(Dr){Hn.add(es(Dr,xt,on,Dr,Jt,On))}):qF(Jt)&&Jt.forEach(function(Dr,Hr){Hn.set(Hr,es(Dr,xt,on,Hr,Jt,On))});var Wr=hr?rr?Op:Mp:rr?Zo:Eo,Lr=fr?nt:Wr(Jt);return _a(Lr||Jt,function(Dr,Hr){Lr&&(Hr=Dr,Dr=Jt[Hr]),ru(Hn,Hr,es(Dr,xt,on,Hr,Jt,On))}),Hn}function GQ(Jt){var xt=Eo(Jt);return function(on){return xU(on,Jt,xt)}}function xU(Jt,xt,on){var mn=on.length;if(Jt==null)return!mn;for(Jt=lo(Jt);mn--;){var Nn=on[mn],On=xt[Nn],Hn=Jt[Nn];if(Hn===nt&&!(Nn in Jt)||!On(Hn))return!1}return!0}function MU(Jt,xt,on){if(typeof Jt!="function")throw new xa(Ft);return uu(function(){Jt.apply(nt,on)},xt)}function iu(Jt,xt,on,mn){var Nn=-1,On=Ru,Hn=!0,Gn=Jt.length,rr=[],hr=xt.length;if(!Gn)return rr;on&&(xt=ho(xt,jo(on))),mn?(On=ap,Hn=!1):xt.length>=ot&&(On=$l,Hn=!1,xt=new qs(xt));e:for(;++NnNn?0:Nn+on),mn=mn===nt||mn>Nn?Nn:Zr(mn),mn<0&&(mn+=Nn),mn=on>mn?0:r0(mn);on0&&on(Gn)?xt>1?Vo(Gn,xt-1,on,mn,Nn):xs(Nn,Gn):mn||(Nn[Nn.length]=Gn)}return Nn}var Rp=fF(),IU=fF(!0);function Us(Jt,xt){return Jt&&Rp(Jt,xt,Eo)}function Sp(Jt,xt){return Jt&&IU(Jt,xt,Eo)}function Ou(Jt,xt){return Ds(xt,function(on){return Ts(Jt[on])})}function Fl(Jt,xt){xt=Ls(xt,Jt);for(var on=0,mn=xt.length;Jt!=null&&onxt}function KQ(Jt,xt){return Jt!=null&&ao.call(Jt,xt)}function qQ(Jt,xt){return Jt!=null&&xt in lo(Jt)}function em(Jt,xt,on){return Jt>=Co(xt,on)&&Jt=120&&fr.length>=120)?new qs(Hn&&fr):nt}fr=Jt[0];var gr=-1,Br=Gn[0];e:for(;++gr-1;)Gn!==Jt&&ku.call(Gn,rr,1),ku.call(Jt,rr,1);return Jt}function qU(Jt,xt){for(var on=Jt?xt.length:0,mn=on-1;on--;){var Nn=xt[on];if(on==mn||Nn!==On){var On=Nn;_s(Nn)?ku.call(Jt,Nn,1):Np(Jt,Nn)}}return Jt}function Vp(Jt,xt){return Jt+Ju(CU()*(xt-Jt+1))}function fm(Jt,xt,on,mn){for(var Nn=-1,On=vo(Cu((xt-Jt)/(on||1)),0),Hn=ar(On);On--;)Hn[mn?On:++Nn]=Jt,Jt+=on;return Hn}function wp(Jt,xt){var on="";if(!Jt||xt<1||xt>Sn)return on;do xt%2&&(on+=Jt),xt=Ju(xt/2),xt&&(Jt+=Jt);while(xt);return on}function zr(Jt,xt){return Hp(VF(Jt,xt,Io),Jt+"")}function gm(Jt){return WU(Ll(Jt))}function pm(Jt,xt){var on=Ll(Jt);return $u(on,Ul(xt,0,on.length))}function su(Jt,xt,on,mn){if(!go(Jt))return Jt;xt=Ls(xt,Jt);for(var Nn=-1,On=xt.length,Hn=On-1,Gn=Jt;Gn!=null&&++NnNn?0:Nn+xt),on=on>Nn?Nn:on,on<0&&(on+=Nn),Nn=xt>on?0:on-xt>>>0,xt>>>=0;for(var On=ar(Nn);++mn>>1,Hn=Jt[On];Hn!==null&&!Ho(Hn)&&(on?Hn<=xt:Hn=ot){var hr=xt?null:Vm(Jt);if(hr)return yu(hr);Hn=!1,Nn=$l,rr=new qs}else rr=xt?[]:Gn;e:for(;++mn=mn?Jt:ts(Jt,xt,on)}var aF=aQ||function(Jt){return To.clearTimeout(Jt)};function sF(Jt,xt){if(xt)return Jt.slice();var on=Jt.length,mn=TU?TU(on):new Jt.constructor(on);return Jt.copy(mn),mn}function Wp(Jt){var xt=new Jt.constructor(Jt.byteLength);return new Vu(xt).set(new Vu(Jt)),xt}function Bm(Jt,xt){var on=xt?Wp(Jt.buffer):Jt.buffer;return new Jt.constructor(on,Jt.byteOffset,Jt.byteLength)}function Rm(Jt){var xt=new Jt.constructor(Jt.source,So.exec(Jt));return xt.lastIndex=Jt.lastIndex,xt}function Sm(Jt){return nu?lo(nu.call(Jt)):{}}function lF(Jt,xt){var on=xt?Wp(Jt.buffer):Jt.buffer;return new Jt.constructor(on,Jt.byteOffset,Jt.length)}function cF(Jt,xt){if(Jt!==xt){var on=Jt!==nt,mn=Jt===null,Nn=Jt===Jt,On=Ho(Jt),Hn=xt!==nt,Gn=xt===null,rr=xt===xt,hr=Ho(xt);if(!Gn&&!hr&&!On&&Jt>xt||On&&Hn&&rr&&!Gn&&!hr||mn&&Hn&&rr||!on&&rr||!Nn)return 1;if(!mn&&!On&&!hr&&Jt=Gn)return rr;var hr=on[mn];return rr*(hr=="desc"?-1:1)}}return Jt.index-xt.index}function uF(Jt,xt,on,mn){for(var Nn=-1,On=Jt.length,Hn=on.length,Gn=-1,rr=xt.length,hr=vo(On-Hn,0),fr=ar(rr+hr),gr=!mn;++Gn1?on[Nn-1]:nt,Hn=Nn>2?on[2]:nt;for(On=Jt.length>3&&typeof On=="function"?(Nn--,On):nt,Hn&&Do(on[0],on[1],Hn)&&(On=Nn<3?nt:On,Nn=1),xt=lo(xt);++mn-1?Nn[On?xt[Hn]:Hn]:nt}}function UF(Jt){return Es(function(xt){var on=xt.length,mn=on,Nn=$a.prototype.thru;for(Jt&&xt.reverse();mn--;){var On=xt[mn];if(typeof On!="function")throw new xa(Ft);if(Nn&&!Hn&&Gu(On)=="wrapper")var Hn=new $a([],!0)}for(mn=Hn?mn:on;++mn1&&Xr.reverse(),fr&&rrGn))return!1;var hr=On.get(Jt),fr=On.get(xt);if(hr&&fr)return hr==xt&&fr==Jt;var gr=-1,Br=!0,Tr=on&Gt?new qs:nt;for(On.set(Jt,xt),On.set(xt,Jt);++gr1?"& ":"")+xt[mn],xt=xt.join(on>2?", ":" "),Jt.replace(nr,`{ +/* [wrapped with `+xt+`] */ +`)}function Mm(Jt){return Or(Jt)||Rl(Jt)||!!(kU&&Jt&&Jt[kU])}function _s(Jt,xt){var on=typeof Jt;return xt=xt??Sn,!!xt&&(on=="number"||on!="symbol"&&Qo.test(Jt))&&Jt>-1&&Jt%1==0&&Jt0){if(++xt>=un)return arguments[0]}else xt=0;return Jt.apply(nt,arguments)}}function $u(Jt,xt){var on=-1,mn=Jt.length,Nn=mn-1;for(xt=xt===nt?mn:xt;++on1?Jt[xt-1]:nt;return on=typeof on=="function"?(Jt.pop(),on):nt,ZF(Jt,on)});function IF(Jt){var xt=xn(Jt);return xt.__chain__=!0,xt}function XB(Jt,xt){return xt(Jt),Jt}function Ku(Jt,xt){return xt(Jt)}var $B=Es(function(Jt){var xt=Jt.length,on=xt?Jt[0]:0,mn=this.__wrapped__,Nn=function(On){return Bp(On,Jt)};return xt>1||this.__actions__.length||!(mn instanceof Yr)||!_s(on)?this.thru(Nn):(mn=mn.slice(on,+on+(xt?1:0)),mn.__actions__.push({func:Ku,args:[Nn],thisArg:nt}),new $a(mn,this.__chain__).thru(function(On){return xt&&!On.length&&On.push(nt),On}))});function KB(){return IF(this)}function qB(){return new $a(this.value(),this.__chain__)}function eR(){this.__values__===nt&&(this.__values__=n0(this.value()));var Jt=this.__index__>=this.__values__.length,xt=Jt?nt:this.__values__[this.__index__++];return{done:Jt,value:xt}}function tR(){return this}function nR(Jt){for(var xt,on=this;on instanceof Du;){var mn=AF(on);mn.__index__=0,mn.__values__=nt,xt?Nn.__wrapped__=mn:xt=mn;var Nn=mn;on=on.__wrapped__}return Nn.__wrapped__=Jt,xt}function rR(){var Jt=this.__wrapped__;if(Jt instanceof Yr){var xt=Jt;return this.__actions__.length&&(xt=new Yr(this)),xt=xt.reverse(),xt.__actions__.push({func:Ku,args:[Yp],thisArg:nt}),new $a(xt,this.__chain__)}return this.thru(Yp)}function iR(){return iF(this.__wrapped__,this.__actions__)}var oR=Pu(function(Jt,xt,on){ao.call(Jt,on)?++Jt[on]:vs(Jt,on,1)});function aR(Jt,xt,on){var mn=Or(Jt)?FU:XQ;return on&&Do(Jt,xt,on)&&(xt=nt),mn(Jt,Jr(xt,3))}function sR(Jt,xt){var on=Or(Jt)?Ds:ZU;return on(Jt,Jr(xt,3))}var lR=pF(WF),cR=pF(DF);function uR(Jt,xt){return Vo(qu(Jt,xt),1)}function dR(Jt,xt){return Vo(qu(Jt,xt),Rn)}function hR(Jt,xt,on){return on=on===nt?1:Zr(on),Vo(qu(Jt,xt),on)}function LF(Jt,xt){var on=Or(Jt)?_a:Zs;return on(Jt,Jr(xt,3))}function PF(Jt,xt){var on=Or(Jt)?v0:OU;return on(Jt,Jr(xt,3))}var fR=Pu(function(Jt,xt,on){ao.call(Jt,on)?Jt[on].push(xt):vs(Jt,on,[xt])});function gR(Jt,xt,on,mn){Jt=Oo(Jt)?Jt:Ll(Jt),on=on&&!mn?Zr(on):0;var Nn=Jt.length;return on<0&&(on=vo(Nn+on,0)),ep(Jt)?on<=Nn&&Jt.indexOf(xt,on)>-1:!!Nn&&Vl(Jt,xt,on)>-1}var pR=zr(function(Jt,xt,on){var mn=-1,Nn=typeof xt=="function",On=Oo(Jt)?ar(Jt.length):[];return Zs(Jt,function(Hn){On[++mn]=Nn?Po(xt,Hn,on):ou(Hn,xt,on)}),On}),UR=Pu(function(Jt,xt,on){vs(Jt,on,xt)});function qu(Jt,xt){var on=Or(Jt)?ho:HU;return on(Jt,Jr(xt,3))}function FR(Jt,xt,on,mn){return Jt==null?[]:(Or(xt)||(xt=xt==null?[]:[xt]),on=mn?nt:on,Or(on)||(on=on==null?[]:[on]),$U(Jt,xt,on))}var QR=Pu(function(Jt,xt,on){Jt[on?0:1].push(xt)},function(){return[[],[]]});function mR(Jt,xt,on){var mn=Or(Jt)?sp:RU,Nn=arguments.length<3;return mn(Jt,Jr(xt,4),on,Nn,Zs)}function BR(Jt,xt,on){var mn=Or(Jt)?b0:RU,Nn=arguments.length<3;return mn(Jt,Jr(xt,4),on,Nn,OU)}function RR(Jt,xt){var on=Or(Jt)?Ds:ZU;return on(Jt,_f(Jr(xt,3)))}function SR(Jt){var xt=Or(Jt)?WU:gm;return xt(Jt)}function yR(Jt,xt,on){(on?Do(Jt,xt,on):xt===nt)?xt=1:xt=Zr(xt);var mn=Or(Jt)?jQ:pm;return mn(Jt,xt)}function vR(Jt){var xt=Or(Jt)?zQ:Fm;return xt(Jt)}function bR(Jt){if(Jt==null)return 0;if(Oo(Jt))return ep(Jt)?Cl(Jt):Jt.length;var xt=Jo(Jt);return xt==jn||xt==Rr?Jt.size:Ep(Jt).length}function ER(Jt,xt,on){var mn=Or(Jt)?lp:Qm;return on&&Do(Jt,xt,on)&&(xt=nt),mn(Jt,Jr(xt,3))}var _R=zr(function(Jt,xt){if(Jt==null)return[];var on=xt.length;return on>1&&Do(Jt,xt[0],xt[1])?xt=[]:on>2&&Do(xt[0],xt[1],xt[2])&&(xt=[xt[0]]),$U(Jt,Vo(xt,1),[])}),_d=sQ||function(){return To.Date.now()};function TR(Jt,xt){if(typeof xt!="function")throw new xa(Ft);return Jt=Zr(Jt),function(){if(--Jt<1)return xt.apply(this,arguments)}}function jF(Jt,xt,on){return xt=on?nt:xt,xt=Jt&&xt==null?Jt.length:xt,bs(Jt,Qn,nt,nt,nt,nt,xt)}function zF(Jt,xt){var on;if(typeof xt!="function")throw new xa(Ft);return Jt=Zr(Jt),function(){return--Jt>0&&(on=xt.apply(this,arguments)),Jt<=1&&(xt=nt),on}}var Xp=zr(function(Jt,xt,on){var mn=en;if(on.length){var Nn=Ms(on,Zl(Xp));mn|=Kt}return bs(Jt,mn,xt,on,Nn)}),HF=zr(function(Jt,xt,on){var mn=en|tn;if(on.length){var Nn=Ms(on,Zl(HF));mn|=Kt}return bs(xt,mn,Jt,on,Nn)});function YF(Jt,xt,on){xt=on?nt:xt;var mn=bs(Jt,nn,nt,nt,nt,nt,nt,xt);return mn.placeholder=YF.placeholder,mn}function GF(Jt,xt,on){xt=on?nt:xt;var mn=bs(Jt,sn,nt,nt,nt,nt,nt,xt);return mn.placeholder=GF.placeholder,mn}function XF(Jt,xt,on){var mn,Nn,On,Hn,Gn,rr,hr=0,fr=!1,gr=!1,Br=!0;if(typeof Jt!="function")throw new xa(Ft);xt=rs(xt)||0,go(on)&&(fr=!!on.leading,gr="maxWait"in on,On=gr?vo(rs(on.maxWait)||0,xt):On,Br="trailing"in on?!!on.trailing:Br);function Tr(Bo){var ds=mn,ws=Nn;return mn=Nn=nt,hr=Bo,Hn=Jt.apply(ws,ds),Hn}function Wr(Bo){return hr=Bo,Gn=uu(Hr,xt),fr?Tr(Bo):Hn}function Lr(Bo){var ds=Bo-rr,ws=Bo-hr,m0=xt-ds;return gr?Co(m0,On-ws):m0}function Dr(Bo){var ds=Bo-rr,ws=Bo-hr;return rr===nt||ds>=xt||ds<0||gr&&ws>=On}function Hr(){var Bo=_d();if(Dr(Bo))return Xr(Bo);Gn=uu(Hr,Lr(Bo))}function Xr(Bo){return Gn=nt,Br&&mn?Tr(Bo):(mn=Nn=nt,Hn)}function Yo(){Gn!==nt&&aF(Gn),hr=0,mn=rr=Nn=Gn=nt}function xo(){return Gn===nt?Hn:Xr(_d())}function Go(){var Bo=_d(),ds=Dr(Bo);if(mn=arguments,Nn=this,rr=Bo,ds){if(Gn===nt)return Wr(rr);if(gr)return aF(Gn),Gn=uu(Hr,xt),Tr(rr)}return Gn===nt&&(Gn=uu(Hr,xt)),Hn}return Go.cancel=Yo,Go.flush=xo,Go}var VR=zr(function(Jt,xt){return MU(Jt,1,xt)}),wR=zr(function(Jt,xt,on){return MU(Jt,rs(xt)||0,on)});function kR(Jt){return bs(Jt,an)}function _h(Jt,xt){if(typeof Jt!="function"||xt!=null&&typeof xt!="function")throw new xa(Ft);var on=function(){var mn=arguments,Nn=xt?xt.apply(this,mn):mn[0],On=on.cache;if(On.has(Nn))return On.get(Nn);var Hn=Jt.apply(this,mn);return on.cache=On.set(Nn,Hn)||On,Hn};return on.cache=new(_h.Cache||ys),on}_h.Cache=ys;function _f(Jt){if(typeof Jt!="function")throw new xa(Ft);return function(){var xt=arguments;switch(xt.length){case 0:return!Jt.call(this);case 1:return!Jt.call(this,xt[0]);case 2:return!Jt.call(this,xt[0],xt[1]);case 3:return!Jt.call(this,xt[0],xt[1],xt[2])}return!Jt.apply(this,xt)}}function NR(Jt){return zF(2,Jt)}var CR=mm(function(Jt,xt){xt=xt.length==1&&Or(xt[0])?ho(xt[0],jo(Jr())):ho(Vo(xt,1),jo(Jr()));var on=xt.length;return zr(function(mn){for(var Nn=-1,On=Co(mn.length,on);++Nn=xt}),Rl=PU(function(){return arguments}())?PU:function(Jt){return Uo(Jt)&&ao.call(Jt,"callee")&&!wU.call(Jt,"callee")},Or=ar.isArray,YR=dU?jo(dU):nm;function Oo(Jt){return Jt!=null&&_g(Jt.length)&&!Ts(Jt)}function mo(Jt){return Uo(Jt)&&Oo(Jt)}function GR(Jt){return Jt===!0||Jt===!1||Uo(Jt)&&Wo(Jt)==hn}var js=cQ||lU,XR=hU?jo(hU):rm;function $R(Jt){return Uo(Jt)&&Jt.nodeType===1&&!du(Jt)}function KR(Jt){if(Jt==null)return!0;if(Oo(Jt)&&(Or(Jt)||typeof Jt=="string"||typeof Jt.splice=="function"||js(Jt)||Il(Jt)||Rl(Jt)))return!Jt.length;var xt=Jo(Jt);if(xt==jn||xt==Rr)return!Jt.size;if(cu(Jt))return!Ep(Jt).length;for(var on in Jt)if(ao.call(Jt,on))return!1;return!0}function qR(Jt,xt){return au(Jt,xt)}function eS(Jt,xt,on){on=typeof on=="function"?on:nt;var mn=on?on(Jt,xt):nt;return mn===nt?au(Jt,xt,nt,on):!!mn}function Kp(Jt){if(!Uo(Jt))return!1;var xt=Wo(Jt);return xt==Wn||xt==wn||typeof Jt.message=="string"&&typeof Jt.name=="string"&&!du(Jt)}function tS(Jt){return typeof Jt=="number"&&NU(Jt)}function Ts(Jt){if(!go(Jt))return!1;var xt=Wo(Jt);return xt==An||xt==Pn||xt==kn||xt==Ir}function KF(Jt){return typeof Jt=="number"&&Jt==Zr(Jt)}function _g(Jt){return typeof Jt=="number"&&Jt>-1&&Jt%1==0&&Jt<=Sn}function go(Jt){var xt=typeof Jt;return Jt!=null&&(xt=="object"||xt=="function")}function Uo(Jt){return Jt!=null&&typeof Jt=="object"}var qF=fU?jo(fU):om;function nS(Jt,xt){return Jt===xt||bp(Jt,xt,Ip(xt))}function rS(Jt,xt,on){return on=typeof on=="function"?on:nt,bp(Jt,xt,Ip(xt),on)}function iS(Jt){return e0(Jt)&&Jt!=+Jt}function oS(Jt){if(Im(Jt))throw new Mr(Ut);return jU(Jt)}function aS(Jt){return Jt===null}function sS(Jt){return Jt==null}function e0(Jt){return typeof Jt=="number"||Uo(Jt)&&Wo(Jt)==$n}function du(Jt){if(!Uo(Jt)||Wo(Jt)!=Sr)return!1;var xt=wu(Jt);if(xt===null)return!0;var on=ao.call(xt,"constructor")&&xt.constructor;return typeof on=="function"&&on instanceof on&&Eu.call(on)==rQ}var qp=gU?jo(gU):am;function lS(Jt){return KF(Jt)&&Jt>=-Sn&&Jt<=Sn}var t0=pU?jo(pU):sm;function ep(Jt){return typeof Jt=="string"||!Or(Jt)&&Uo(Jt)&&Wo(Jt)==wr}function Ho(Jt){return typeof Jt=="symbol"||Uo(Jt)&&Wo(Jt)==br}var Il=UU?jo(UU):lm;function cS(Jt){return Jt===nt}function uS(Jt){return Uo(Jt)&&Jo(Jt)==kr}function dS(Jt){return Uo(Jt)&&Wo(Jt)==_i}var hS=Yu(_p),fS=Yu(function(Jt,xt){return Jt<=xt});function n0(Jt){if(!Jt)return[];if(Oo(Jt))return ep(Jt)?ls(Jt):Mo(Jt);if(Kl&&Jt[Kl])return Z0(Jt[Kl]());var xt=Jo(Jt),on=xt==jn?gp:xt==Rr?yu:Ll;return on(Jt)}function Vs(Jt){if(!Jt)return Jt===0?Jt:0;if(Jt=rs(Jt),Jt===Rn||Jt===-Rn){var xt=Jt<0?-1:1;return xt*fn}return Jt===Jt?Jt:0}function Zr(Jt){var xt=Vs(Jt),on=xt%1;return xt===xt?on?xt-on:xt:0}function r0(Jt){return Jt?Ul(Zr(Jt),0,bn):0}function rs(Jt){if(typeof Jt=="number")return Jt;if(Ho(Jt))return cn;if(go(Jt)){var xt=typeof Jt.valueOf=="function"?Jt.valueOf():Jt;Jt=go(xt)?xt+"":xt}if(typeof Jt!="string")return Jt===0?Jt:+Jt;Jt=SU(Jt);var on=eo.test(Jt);return on||po.test(Jt)?B0(Jt.slice(2),on?2:8):Lo.test(Jt)?cn:+Jt}function o0(Jt){return Fs(Jt,Zo(Jt))}function gS(Jt){return Jt?Ul(Zr(Jt),-Sn,Sn):Jt===0?Jt:0}function ro(Jt){return Jt==null?"":zo(Jt)}var pS=Ml(function(Jt,xt){if(cu(xt)||Oo(xt)){Fs(xt,Eo(xt),Jt);return}for(var on in xt)ao.call(xt,on)&&ru(Jt,on,xt[on])}),a0=Ml(function(Jt,xt){Fs(xt,Zo(xt),Jt)}),tp=Ml(function(Jt,xt,on,mn){Fs(xt,Zo(xt),Jt,mn)}),US=Ml(function(Jt,xt,on,mn){Fs(xt,Eo(xt),Jt,mn)}),FS=Es(Bp);function QS(Jt,xt){var on=xl(Jt);return xt==null?on:DU(on,xt)}var mS=zr(function(Jt,xt){Jt=lo(Jt);var on=-1,mn=xt.length,Nn=mn>2?xt[2]:nt;for(Nn&&Do(xt[0],xt[1],Nn)&&(mn=1);++on1),On}),Fs(Jt,Op(Jt),on),mn&&(on=es(on,Xt|Zt|Yt,wm));for(var Nn=xt.length;Nn--;)Np(on,xt[Nn]);return on});function DS(Jt,xt){return u0(Jt,_f(Jr(xt)))}var xS=Es(function(Jt,xt){return Jt==null?{}:dm(Jt,xt)});function u0(Jt,xt){if(Jt==null)return{};var on=ho(Op(Jt),function(mn){return[mn]});return xt=Jr(xt),KU(Jt,on,function(mn,Nn){return xt(mn,Nn[0])})}function ZS(Jt,xt,on){xt=Ls(xt,Jt);var mn=-1,Nn=xt.length;for(Nn||(Nn=1,Jt=nt);++mnxt){var mn=Jt;Jt=xt,xt=mn}if(on||Jt%1||xt%1){var Nn=CU();return Co(Jt+Nn*(xt-Jt+Ws("1e-"+((Nn+"").length-1))),xt)}return Vp(Jt,xt)}var KS=Ol(function(Jt,xt,on){return xt=xt.toLowerCase(),Jt+(on?g0(xt):xt)});function g0(Jt){return nU(ro(Jt).toLowerCase())}function p0(Jt){return Jt=ro(Jt),Jt&&Jt.replace(Ro,C0).replace(lr,"")}function qS(Jt,xt,on){Jt=ro(Jt),xt=zo(xt);var mn=Jt.length;on=on===nt?mn:Ul(Zr(on),0,mn);var Nn=on;return on-=xt.length,on>=0&&Jt.slice(on,Nn)==xt}function ey(Jt){return Jt=ro(Jt),Jt&&io.test(Jt)?Jt.replace(Ao,A0):Jt}function ty(Jt){return Jt=ro(Jt),Jt&&tr.test(Jt)?Jt.replace(Xn,"\\$&"):Jt}var ny=Ol(function(Jt,xt,on){return Jt+(on?"-":"")+xt.toLowerCase()}),ry=Ol(function(Jt,xt,on){return Jt+(on?" ":"")+xt.toLowerCase()}),iy=gF("toLowerCase");function oy(Jt,xt,on){Jt=ro(Jt),xt=Zr(xt);var mn=xt?Cl(Jt):0;if(!xt||mn>=xt)return Jt;var Nn=(xt-mn)/2;return Hu(Ju(Nn),on)+Jt+Hu(Cu(Nn),on)}function ay(Jt,xt,on){Jt=ro(Jt),xt=Zr(xt);var mn=xt?Cl(Jt):0;return xt&&mn>>0,on?(Jt=ro(Jt),Jt&&(typeof xt=="string"||xt!=null&&!qp(xt))&&(xt=zo(xt),!xt&&Nl(Jt))?Ps(ls(Jt),0,on):Jt.split(xt,on)):[]}var fy=Ol(function(Jt,xt,on){return Jt+(on?" ":"")+nU(xt)});function gy(Jt,xt,on){return Jt=ro(Jt),on=on==null?0:Ul(Zr(on),0,Jt.length),xt=zo(xt),Jt.slice(on,on+xt.length)==xt}function py(Jt,xt,on){var mn=xn.templateSettings;on&&Do(Jt,xt,on)&&(xt=nt),Jt=ro(Jt),xt=tp({},xt,mn,RF);var Nn=tp({},xt.imports,mn.imports,RF),On=Eo(Nn),Hn=fp(Nn,On),Gn,rr,hr=0,fr=xt.interpolate||no,gr="__p += '",Br=pp((xt.escape||no).source+"|"+fr.source+"|"+(fr===yn?Fo:no).source+"|"+(xt.evaluate||no).source+"|$","g"),Tr="//# sourceURL="+(ao.call(xt,"sourceURL")?(xt.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Kr+"]")+` +`;Jt.replace(Br,function(Dr,Hr,Xr,Yo,xo,Go){return Xr||(Xr=Yo),gr+=Jt.slice(hr,Go).replace(Ko,W0),Hr&&(Gn=!0,gr+=`' + +__e(`+Hr+`) + +'`),xo&&(rr=!0,gr+=`'; +`+xo+`; +__p += '`),Xr&&(gr+=`' + +((__t = (`+Xr+`)) == null ? '' : __t) + +'`),hr=Go+Dr.length,Dr}),gr+=`'; +`;var Wr=ao.call(xt,"variable")&&xt.variable;if(!Wr)gr=`with (obj) { +`+gr+` } -`;else if(Eo.test(fr))throw new mr(tt);er=(xn?er.replace(Ro,""):er).replace(rr,"$1").replace(wo,"$1;"),er="function("+(fr||"obj")+`) { -`+(fr?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(wn?", __e = _.escape":"")+(xn?`, __j = Array.prototype.join; +`;else if(Gr.test(Wr))throw new Mr(Qt);gr=(rr?gr.replace(hs,""):gr).replace(zs,"$1").replace(ks,"$1;"),gr="function("+(Wr||"obj")+`) { +`+(Wr?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(Gn?", __e = _.escape":"")+(rr?`, __j = Array.prototype.join; function print() { __p += __j.call(arguments, '') } `:`; -`)+er+`return __p -}`;var br=Dp(function(){return Ar(hn,Fr+"return "+er).apply(_,Nn)});if(br.source=er,NF(br))throw br;return br}function Zm(it){return Ir(it).toLowerCase()}function wm(it){return Ir(it).toUpperCase()}function _m(it,Ft,Et){if(it=Ir(it),it&&(Et||Ft===_))return zF(it);if(!it||!(Ft=Lo(Ft)))return it;var It=es(it),an=es(Ft),hn=YF(It,an),Nn=GF(It,an)+1;return Ts(It,hn,Nn).join("")}function Dm(it,Ft,Et){if(it=Ir(it),it&&(Et||Ft===_))return it.slice(0,HF(it)+1);if(!it||!(Ft=Lo(Ft)))return it;var It=es(it),an=GF(It,es(Ft))+1;return Ts(It,0,an).join("")}function Mm(it,Ft,Et){if(it=Ir(it),it&&(Et||Ft===_))return it.replace(Hr,"");if(!it||!(Ft=Lo(Ft)))return it;var It=es(it),an=YF(It,es(Ft));return Ts(It,an).join("")}function xm(it,Ft){var Et=Wt,It=yt;if(io(Ft)){var an="separator"in Ft?Ft.separator:an;Et="length"in Ft?Vr(Ft.length):Et,It="omission"in Ft?Lo(Ft.omission):It}it=Ir(it);var hn=it.length;if(js(it)){var Nn=es(it);hn=Nn.length}if(Et>=hn)return it;var wn=Et-Ls(It);if(wn<1)return It;var xn=Nn?Ts(Nn,0,wn).join(""):it.slice(0,wn);if(an===_)return xn+It;if(Nn&&(wn+=xn.length-wn),WF(an)){if(it.slice(wn).search(an)){var Kn,qn=xn;for(an.global||(an=XU(an.source,Ir(cr.exec(an))+"g")),an.lastIndex=0;Kn=an.exec(qn);)var er=Kn.index;xn=xn.slice(0,er===_?wn:er)}}else if(it.indexOf(Lo(an),wn)!=wn){var ar=xn.lastIndexOf(an);ar>-1&&(xn=xn.slice(0,ar))}return xn+It}function Om(it){return it=Ir(it),it&&ro.test(it)?it.replace(oo,oQ):it}var Am=Ks(function(it,Ft,Et){return it+(Et?" ":"")+Ft.toUpperCase()}),ZF=Mu("toUpperCase");function _p(it,Ft,Et){return it=Ir(it),Ft=Et?_:Ft,Ft===_?eQ(it)?lQ(it):Pp(it):it.match(Ft)||[]}var Dp=Nr(function(it,Ft){try{return $r(it,_,Ft)}catch(Et){return NF(Et)?Et:new mr(Et)}}),Im=Qs(function(it,Ft){return Ho(Ft,function(Et){Et=ls(Et),us(it,Et,vF(it[Et],it))}),it});function jm(it){var Ft=it==null?0:it.length,Et=Qr();return it=Ft?no(it,function(It){if(typeof It[1]!="function")throw new Ko(et);return[Et(It[0]),It[1]]}):[],Nr(function(It){for(var an=-1;++anbt)return[];var Et=At,It=vo(it,At);Ft=Qr(Ft),it-=At;for(var an=zU(It,Ft);++Et0||Ft<0)?new Cr(Et):(it<0?Et=Et.takeRight(-it):it&&(Et=Et.drop(it)),Ft!==_&&(Ft=Vr(Ft),Et=Ft<0?Et.dropRight(-Ft):Et.take(Ft-it)),Et)},Cr.prototype.takeRightWhile=function(it){return this.reverse().takeWhile(it).reverse()},Cr.prototype.toArray=function(){return this.take(At)},as(Cr.prototype,function(it,Ft){var Et=/^(?:filter|find|map|reject)|While$/.test(Ft),It=/^(?:head|last)$/.test(Ft),an=un[It?"take"+(Ft=="last"?"Right":""):Ft],hn=It||/^find/.test(Ft);an&&(un.prototype[Ft]=function(){var Nn=this.__wrapped__,wn=It?[1]:arguments,xn=Nn instanceof Cr,Kn=wn[0],qn=xn||yr(Nn),er=function(Wr){var wr=an.apply(un,ys([Wr],wn));return It&&ar?wr[0]:wr};qn&&Et&&typeof Kn=="function"&&Kn.length!=1&&(xn=qn=!1);var ar=this.__chain__,Fr=!!this.__actions__.length,fr=hn&&!ar,br=xn&&!Fr;if(!hn&&qn){Nn=br?Nn:new Cr(this);var gr=it.apply(Nn,wn);return gr.__actions__.push({func:NU,args:[er],thisArg:_}),new qo(gr,ar)}return fr&&br?it.apply(this,wn):(gr=this.thru(er),fr?It?gr.value()[0]:gr.value():gr)})}),Ho(["pop","push","shift","sort","splice","unshift"],function(it){var Ft=nU[it],Et=/^(?:push|sort|unshift)$/.test(it)?"tap":"thru",It=/^(?:pop|shift)$/.test(it);un.prototype[it]=function(){var an=arguments;if(It&&!this.__chain__){var hn=this.value();return Ft.apply(yr(hn)?hn:[],an)}return this[Et](function(Nn){return Ft.apply(yr(Nn)?Nn:[],an)})}}),as(Cr.prototype,function(it,Ft){var Et=un[Ft];if(Et){var It=Et.name+"";Pr.call(Gs,It)||(Gs[It]=[]),Gs[It].push({name:Ft,func:Et})}}),Gs[yU(_,pt).name]=[{name:"wrapper",func:_}],Cr.prototype.clone=NQ,Cr.prototype.reverse=WQ,Cr.prototype.value=kQ,un.prototype.at=hR,un.prototype.chain=fR,un.prototype.commit=gR,un.prototype.next=BR,un.prototype.plant=SR,un.prototype.reverse=mR,un.prototype.toJSON=un.prototype.valueOf=un.prototype.value=yR,un.prototype.first=un.prototype.head,Sl&&(un.prototype[Sl]=RR),un},Ps=UQ();zn?((zn.exports=Ps)._=Ps,Dn._=Ps):Ln._=Ps}).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",lt="string",ut="major",Ut="model",ot="name",st="type",dt="vendor",St="version",pt="architecture",Rt="console",Bt="mobile",ht="tablet",mt="smarttv",gt="wearable",Vt="embedded",Tt=350,ft="Amazon",Wt="Apple",yt="ASUS",Kt="BlackBerry",$t="Browser",Ht="Chrome",Nt="Edge",qt="Firefox",kt="Google",bt="Huawei",Jt="LG",wt="Microsoft",At="Motorola",Ct="Opera",Mt="Samsung",nn="Sharp",sn="Sony",Lt="Xiaomi",tn="Zebra",cn="Facebook",on=function(Ot,jt){var pn={};for(var En in Ot)jt[En]&&jt[En].length%2===0?pn[En]=jt[En].concat(Ot[En]):pn[En]=Ot[En];return pn},Gt=function(Ot){for(var jt={},pn=0;pn0?Gn.length===2?typeof Gn[1]==tt?this[Gn[0]]=Gn[1].call(this,ir):this[Gn[0]]=Gn[1]:Gn.length===3?typeof Gn[1]===tt&&!(Gn[1].exec&&Gn[1].test)?this[Gn[0]]=ir?Gn[1].call(this,ir,Gn[2]):j:this[Gn[0]]=ir?ir.replace(Gn[1],Gn[2]):j:Gn.length===4&&(this[Gn[0]]=ir?Gn[3].call(this,ir.replace(Gn[1],Gn[2])):j):this[Gn]=ir||j;pn+=2}},Un=function(Ot,jt){for(var pn in jt)if(typeof jt[pn]===rt&&jt[pn].length>0){for(var En=0;EnTt?Fn(yn,Tt):yn,this},this.setUA(pn),this};On.VERSION=$,On.BROWSER=Gt([ot,St,ut]),On.CPU=Gt([pt]),On.DEVICE=Gt([Ut,dt,st,Rt,Bt,mt,ht,gt,Vt]),On.ENGINE=On.OS=Gt([ot,St]),o.exports&&(s=o.exports=On),s.UAParser=On;var Yn=typeof _!==nt&&(_.jQuery||_.Zepto);if(Yn&&!Yn.ua){var _t=new On;Yn.ua=_t.getResult(),Yn.ua.get=function(){return _t.getUA()},Yn.ua.set=function(Ot){_t.setUA(Ot);var jt=_t.getResult();for(var pn in jt)Yn.ua[pn]=jt[pn]}}})(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,lt=tt.isTablet,ut=tt.isSmartTV,Ut=tt.isConsole,ot=tt.isWearable,st=tt.isEmbedded;if(nt)return browserPayload(nt,j,$,_e,et);if(ut)return smartTvPayload(ut,$,_e,et);if(Ut)return consolePayload(Ut,$,_e,et);if(rt||lt)return mobilePayload(tt,_,_e,et);if(ot)return wearablePayload(ot,$,_e,et);if(st)return embeddedPayload(st,_,$,_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;/*! +`)+gr+`return __p +}`;var Lr=F0(function(){return qr(On,Tr+"return "+gr).apply(nt,Hn)});if(Lr.source=gr,Kp(Lr))throw Lr;return Lr}function Uy(Jt){return ro(Jt).toLowerCase()}function Fy(Jt){return ro(Jt).toUpperCase()}function Qy(Jt,xt,on){if(Jt=ro(Jt),Jt&&(on||xt===nt))return SU(Jt);if(!Jt||!(xt=zo(xt)))return Jt;var mn=ls(Jt),Nn=ls(xt),On=yU(mn,Nn),Hn=vU(mn,Nn)+1;return Ps(mn,On,Hn).join("")}function my(Jt,xt,on){if(Jt=ro(Jt),Jt&&(on||xt===nt))return Jt.slice(0,EU(Jt)+1);if(!Jt||!(xt=zo(xt)))return Jt;var mn=ls(Jt),Nn=vU(mn,ls(xt))+1;return Ps(mn,0,Nn).join("")}function By(Jt,xt,on){if(Jt=ro(Jt),Jt&&(on||xt===nt))return Jt.replace(sr,"");if(!Jt||!(xt=zo(xt)))return Jt;var mn=ls(Jt),Nn=yU(mn,ls(xt));return Ps(mn,Nn).join("")}function Ry(Jt,xt){var on=rn,mn=gn;if(go(xt)){var Nn="separator"in xt?xt.separator:Nn;on="length"in xt?Zr(xt.length):on,mn="omission"in xt?zo(xt.omission):mn}Jt=ro(Jt);var On=Jt.length;if(Nl(Jt)){var Hn=ls(Jt);On=Hn.length}if(on>=On)return Jt;var Gn=on-Cl(mn);if(Gn<1)return mn;var rr=Hn?Ps(Hn,0,Gn).join(""):Jt.slice(0,Gn);if(Nn===nt)return rr+mn;if(Hn&&(Gn+=rr.length-Gn),qp(Nn)){if(Jt.slice(Gn).search(Nn)){var hr,fr=rr;for(Nn.global||(Nn=pp(Nn.source,ro(So.exec(Nn))+"g")),Nn.lastIndex=0;hr=Nn.exec(fr);)var gr=hr.index;rr=rr.slice(0,gr===nt?Gn:gr)}}else if(Jt.indexOf(zo(Nn),Gn)!=Gn){var Br=rr.lastIndexOf(Nn);Br>-1&&(rr=rr.slice(0,Br))}return rr+mn}function Sy(Jt){return Jt=ro(Jt),Jt&&Hs.test(Jt)?Jt.replace(ms,z0):Jt}var yy=Ol(function(Jt,xt,on){return Jt+(on?" ":"")+xt.toUpperCase()}),nU=gF("toUpperCase");function U0(Jt,xt,on){return Jt=ro(Jt),xt=on?nt:xt,xt===nt?M0(Jt)?$0(Jt):T0(Jt):Jt.match(xt)||[]}var F0=zr(function(Jt,xt){try{return Po(Jt,nt,xt)}catch(on){return Kp(on)?on:new Mr(on)}}),vy=Es(function(Jt,xt){return _a(xt,function(on){on=Qs(on),vs(Jt,on,Xp(Jt[on],Jt))}),Jt});function by(Jt){var xt=Jt==null?0:Jt.length,on=Jr();return Jt=xt?ho(Jt,function(mn){if(typeof mn[1]!="function")throw new xa(Ft);return[on(mn[0]),mn[1]]}):[],zr(function(mn){for(var Nn=-1;++NnSn)return[];var on=bn,mn=Co(Jt,bn);xt=Jr(xt),Jt-=bn;for(var Nn=hp(mn,xt);++on0||xt<0)?new Yr(on):(Jt<0?on=on.takeRight(-Jt):Jt&&(on=on.drop(Jt)),xt!==nt&&(xt=Zr(xt),on=xt<0?on.dropRight(-xt):on.take(xt-Jt)),on)},Yr.prototype.takeRightWhile=function(Jt){return this.reverse().takeWhile(Jt).reverse()},Yr.prototype.toArray=function(){return this.take(bn)},Us(Yr.prototype,function(Jt,xt){var on=/^(?:filter|find|map|reject)|While$/.test(xt),mn=/^(?:head|last)$/.test(xt),Nn=xn[mn?"take"+(xt=="last"?"Right":""):xt],On=mn||/^find/.test(xt);Nn&&(xn.prototype[xt]=function(){var Hn=this.__wrapped__,Gn=mn?[1]:arguments,rr=Hn instanceof Yr,hr=Gn[0],fr=rr||Or(Hn),gr=function(Hr){var Xr=Nn.apply(xn,xs([Hr],Gn));return mn&&Br?Xr[0]:Xr};fr&&on&&typeof hr=="function"&&hr.length!=1&&(rr=fr=!1);var Br=this.__chain__,Tr=!!this.__actions__.length,Wr=On&&!Br,Lr=rr&&!Tr;if(!On&&fr){Hn=Lr?Hn:new Yr(this);var Dr=Jt.apply(Hn,Gn);return Dr.__actions__.push({func:Ku,args:[gr],thisArg:nt}),new $a(Dr,Br)}return Wr&&Lr?Jt.apply(this,Gn):(Dr=this.thru(gr),Wr?mn?Dr.value()[0]:Dr.value():Dr)})}),_a(["pop","push","shift","sort","splice","unshift"],function(Jt){var xt=vu[Jt],on=/^(?:push|sort|unshift)$/.test(Jt)?"tap":"thru",mn=/^(?:pop|shift)$/.test(Jt);xn.prototype[Jt]=function(){var Nn=arguments;if(mn&&!this.__chain__){var On=this.value();return xt.apply(Or(On)?On:[],Nn)}return this[on](function(Hn){return xt.apply(Or(Hn)?Hn:[],Nn)})}}),Us(Yr.prototype,function(Jt,xt){var on=xn[xt];if(on){var mn=on.name+"";ao.call(Dl,mn)||(Dl[mn]=[]),Dl[mn].push({name:xt,func:on})}}),Dl[ju(nt,tn).name]=[{name:"wrapper",func:nt}],Yr.prototype.clone=BQ,Yr.prototype.reverse=RQ,Yr.prototype.value=SQ,xn.prototype.at=$B,xn.prototype.chain=KB,xn.prototype.commit=qB,xn.prototype.next=eR,xn.prototype.plant=nR,xn.prototype.reverse=rR,xn.prototype.toJSON=xn.prototype.valueOf=xn.prototype.value=iR,xn.prototype.first=xn.prototype.head,Kl&&(xn.prototype[Kl]=tR),xn},Jl=q0();Xs?((Xs.exports=Jl)._=Jl,ip._=Jl):To._=Jl}).call(commonjsGlobal)})(lodash,lodashExports);var lib={},uaParser_minExports={},uaParser_min={get exports(){return uaParser_minExports},set exports(et){uaParser_minExports=et}};(function(et,tt){(function(nt,it){var ot="0.7.33",Ut="",Ft="?",Qt="function",Bt="undefined",Vt="object",Wt="string",Xt="major",Zt="model",Yt="name",Mt="type",Gt="vendor",en="version",tn="architecture",ln="console",nn="mobile",sn="tablet",Kt="smarttv",dn="wearable",Qn="embedded",En=350,an="Amazon",rn="Apple",gn="ASUS",un="BlackBerry",Un="Browser",_n="Chrome",vn="Edge",pn="Firefox",Rn="Google",Sn="Huawei",fn="LG",cn="Microsoft",bn="Motorola",Vn="Opera",Mn="Samsung",Zn="Sharp",In="Sony",Cn="Xiaomi",kn="Zebra",hn="Facebook",Fn=function(br,Nr){var kr={};for(var _i in br)Nr[_i]&&Nr[_i].length%2===0?kr[_i]=Nr[_i].concat(br[_i]):kr[_i]=br[_i];return kr},wn=function(br){for(var Nr={},kr=0;kr0?Pr.length===2?typeof Pr[1]==Qt?this[Pr[0]]=Pr[1].call(this,fo):this[Pr[0]]=Pr[1]:Pr.length===3?typeof Pr[1]===Qt&&!(Pr[1].exec&&Pr[1].test)?this[Pr[0]]=fo?Pr[1].call(this,fo,Pr[2]):it:this[Pr[0]]=fo?fo.replace(Pr[1],Pr[2]):it:Pr.length===4&&(this[Pr[0]]=fo?Pr[3].call(this,fo.replace(Pr[1],Pr[2])):it):this[Pr]=fo||it;kr+=2}},pr=function(br,Nr){for(var kr in Nr)if(typeof Nr[kr]===Vt&&Nr[kr].length>0){for(var _i=0;_iEn?jn(Ar,En):Ar,this},this.setUA(kr),this};yr.VERSION=ot,yr.BROWSER=wn([Yt,en,Xt]),yr.CPU=wn([tn]),yr.DEVICE=wn([Zt,Gt,Mt,ln,nn,Kt,sn,dn,Qn]),yr.ENGINE=yr.OS=wn([Yt,en]),et.exports&&(tt=et.exports=yr),tt.UAParser=yr;var Rr=typeof nt!==Bt&&(nt.jQuery||nt.Zepto);if(Rr&&!Rr.ua){var wr=new yr;Rr.ua=wr.getResult(),Rr.ua.get=function(){return wr.getUA()},Rr.ua.set=function(br){wr.setUA(br);var Nr=wr.getResult();for(var kr in Nr)Rr.ua[kr]=Nr[kr]}}})(typeof window=="object"?window:commonjsGlobal)})(uaParser_min,uaParser_minExports);Object.defineProperty(lib,"__esModule",{value:!0});function _interopDefault(et){return et&&typeof et=="object"&&"default"in et?et.default:et}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 et(tt){return ClientUAInstance.setUA(tt)},parseUserAgent=function et(tt){if(!tt){console.error("No userAgent string was provided");return}var nt=new UAParser(tt);return{UA:nt,browser:nt.getBrowser(),cpu:nt.getCPU(),device:nt.getDevice(),engine:nt.getEngine(),os:nt.getOS(),ua:nt.getUA(),setUserAgent:function(ot){return nt.setUA(ot)}}},UAHelper=Object.freeze({ClientUAInstance,browser,cpu,device,engine,os,ua,setUa,parseUserAgent});function ownKeys(et,tt){var nt=Object.keys(et);if(Object.getOwnPropertySymbols){var it=Object.getOwnPropertySymbols(et);tt&&(it=it.filter(function(ot){return Object.getOwnPropertyDescriptor(et,ot).enumerable})),nt.push.apply(nt,it)}return nt}function _objectSpread2(et){for(var tt=1;tt=0)&&(nt[ot]=et[ot]);return nt}function _objectWithoutProperties(et,tt){if(et==null)return{};var nt=_objectWithoutPropertiesLoose(et,tt),it,ot;if(Object.getOwnPropertySymbols){var Ut=Object.getOwnPropertySymbols(et);for(ot=0;ot=0)&&Object.prototype.propertyIsEnumerable.call(et,it)&&(nt[it]=et[it])}return nt}function _assertThisInitialized(et){if(et===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return et}function _possibleConstructorReturn(et,tt){if(tt&&(typeof tt=="object"||typeof tt=="function"))return tt;if(tt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(et)}function _slicedToArray(et,tt){return _arrayWithHoles(et)||_iterableToArrayLimit(et,tt)||_unsupportedIterableToArray(et,tt)||_nonIterableRest()}function _arrayWithHoles(et){if(Array.isArray(et))return et}function _iterableToArrayLimit(et,tt){var nt=et==null?null:typeof Symbol<"u"&&et[Symbol.iterator]||et["@@iterator"];if(nt!=null){var it=[],ot=!0,Ut=!1,Ft,Qt;try{for(nt=nt.call(et);!(ot=(Ft=nt.next()).done)&&(it.push(Ft.value),!(tt&&it.length===tt));ot=!0);}catch(Bt){Ut=!0,Qt=Bt}finally{try{!ot&&nt.return!=null&&nt.return()}finally{if(Ut)throw Qt}}return it}}function _unsupportedIterableToArray(et,tt){if(et){if(typeof et=="string")return _arrayLikeToArray(et,tt);var nt=Object.prototype.toString.call(et).slice(8,-1);if(nt==="Object"&&et.constructor&&(nt=et.constructor.name),nt==="Map"||nt==="Set")return Array.from(et);if(nt==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(nt))return _arrayLikeToArray(et,tt)}}function _arrayLikeToArray(et,tt){(tt==null||tt>et.length)&&(tt=et.length);for(var nt=0,it=new Array(tt);nt1&&arguments[1]!==void 0?arguments[1]:"none";return tt||nt},getNavigatorInstance=function et(){return typeof window<"u"&&(window.navigator||navigator)?window.navigator||navigator:!1},isIOS13Check=function et(tt){var nt=getNavigatorInstance();return nt&&nt.platform&&(nt.platform.indexOf(tt)!==-1||nt.platform==="MacIntel"&&nt.maxTouchPoints>1&&!window.MSStream)},browserPayload=function et(tt,nt,it,ot,Ut){return{isBrowser:tt,browserMajorVersion:setDefaults(nt.major),browserFullVersion:setDefaults(nt.version),browserName:setDefaults(nt.name),engineName:setDefaults(it.name),engineVersion:setDefaults(it.version),osName:setDefaults(ot.name),osVersion:setDefaults(ot.version),userAgent:setDefaults(Ut)}},mobilePayload=function et(tt,nt,it,ot){return _objectSpread2({},tt,{vendor:setDefaults(nt.vendor),model:setDefaults(nt.model),os:setDefaults(it.name),osVersion:setDefaults(it.version),ua:setDefaults(ot)})},smartTvPayload=function et(tt,nt,it,ot){return{isSmartTV:tt,engineName:setDefaults(nt.name),engineVersion:setDefaults(nt.version),osName:setDefaults(it.name),osVersion:setDefaults(it.version),userAgent:setDefaults(ot)}},consolePayload=function et(tt,nt,it,ot){return{isConsole:tt,engineName:setDefaults(nt.name),engineVersion:setDefaults(nt.version),osName:setDefaults(it.name),osVersion:setDefaults(it.version),userAgent:setDefaults(ot)}},wearablePayload=function et(tt,nt,it,ot){return{isWearable:tt,engineName:setDefaults(nt.name),engineVersion:setDefaults(nt.version),osName:setDefaults(it.name),osVersion:setDefaults(it.version),userAgent:setDefaults(ot)}},embeddedPayload=function et(tt,nt,it,ot,Ut){return{isEmbedded:tt,vendor:setDefaults(nt.vendor),model:setDefaults(nt.model),engineName:setDefaults(it.name),engineVersion:setDefaults(it.version),osName:setDefaults(ot.name),osVersion:setDefaults(ot.version),userAgent:setDefaults(Ut)}};function deviceDetect(et){var tt=et?parseUserAgent(et):UAHelper,nt=tt.device,it=tt.browser,ot=tt.engine,Ut=tt.os,Ft=tt.ua,Qt=checkDeviceType(nt.type),Bt=Qt.isBrowser,Vt=Qt.isMobile,Wt=Qt.isTablet,Xt=Qt.isSmartTV,Zt=Qt.isConsole,Yt=Qt.isWearable,Mt=Qt.isEmbedded;if(Bt)return browserPayload(Bt,it,ot,Ut,Ft);if(Xt)return smartTvPayload(Xt,ot,Ut,Ft);if(Zt)return consolePayload(Zt,ot,Ut,Ft);if(Vt||Wt)return mobilePayload(Qt,nt,Ut,Ft);if(Yt)return wearablePayload(Yt,ot,Ut,Ft);if(Mt)return embeddedPayload(Mt,nt,ot,Ut,Ft)}var isMobileType=function et(tt){var nt=tt.type;return nt===DeviceTypes.Mobile},isTabletType=function et(tt){var nt=tt.type;return nt===DeviceTypes.Tablet},isMobileAndTabletType=function et(tt){var nt=tt.type;return nt===DeviceTypes.Mobile||nt===DeviceTypes.Tablet},isSmartTVType=function et(tt){var nt=tt.type;return nt===DeviceTypes.SmartTv},isBrowserType=function et(tt){var nt=tt.type;return nt===DeviceTypes.Browser},isWearableType=function et(tt){var nt=tt.type;return nt===DeviceTypes.Wearable},isConsoleType=function et(tt){var nt=tt.type;return nt===DeviceTypes.Console},isEmbeddedType=function et(tt){var nt=tt.type;return nt===DeviceTypes.Embedded},getMobileVendor=function et(tt){var nt=tt.vendor;return setDefaults(nt)},getMobileModel=function et(tt){var nt=tt.model;return setDefaults(nt)},getDeviceType=function et(tt){var nt=tt.type;return setDefaults(nt,"browser")},isAndroidType=function et(tt){var nt=tt.name;return nt===OsTypes.Android},isWindowsType=function et(tt){var nt=tt.name;return nt===OsTypes.Windows},isMacOsType=function et(tt){var nt=tt.name;return nt===OsTypes.MAC_OS},isWinPhoneType=function et(tt){var nt=tt.name;return nt===OsTypes.WindowsPhone},isIOSType=function et(tt){var nt=tt.name;return nt===OsTypes.IOS},getOsVersion=function et(tt){var nt=tt.version;return setDefaults(nt)},getOsName=function et(tt){var nt=tt.name;return setDefaults(nt)},isChromeType=function et(tt){var nt=tt.name;return nt===BrowserTypes.Chrome},isFirefoxType=function et(tt){var nt=tt.name;return nt===BrowserTypes.Firefox},isChromiumType=function et(tt){var nt=tt.name;return nt===BrowserTypes.Chromium},isEdgeType=function et(tt){var nt=tt.name;return nt===BrowserTypes.Edge},isYandexType=function et(tt){var nt=tt.name;return nt===BrowserTypes.Yandex},isSafariType=function et(tt){var nt=tt.name;return nt===BrowserTypes.Safari||nt===BrowserTypes.MobileSafari},isMobileSafariType=function et(tt){var nt=tt.name;return nt===BrowserTypes.MobileSafari},isOperaType=function et(tt){var nt=tt.name;return nt===BrowserTypes.Opera},isIEType=function et(tt){var nt=tt.name;return nt===BrowserTypes.InternetExplorer||nt===BrowserTypes.Ie},isMIUIType=function et(tt){var nt=tt.name;return nt===BrowserTypes.MIUI},isSamsungBrowserType=function et(tt){var nt=tt.name;return nt===BrowserTypes.SamsungBrowser},getBrowserFullVersion=function et(tt){var nt=tt.version;return setDefaults(nt)},getBrowserVersion=function et(tt){var nt=tt.major;return setDefaults(nt)},getBrowserName=function et(tt){var nt=tt.name;return setDefaults(nt)},getEngineName=function et(tt){var nt=tt.name;return setDefaults(nt)},getEngineVersion=function et(tt){var nt=tt.version;return setDefaults(nt)},isElectronType=function et(){var tt=getNavigatorInstance(),nt=tt&&tt.userAgent&&tt.userAgent.toLowerCase();return typeof nt=="string"?/electron/.test(nt):!1},isEdgeChromiumType=function et(tt){return typeof tt=="string"&&tt.indexOf("Edg/")!==-1},getIOS13=function et(){var tt=getNavigatorInstance();return tt&&(/iPad|iPhone|iPod/.test(tt.platform)||tt.platform==="MacIntel"&&tt.maxTouchPoints>1)&&!window.MSStream},getIPad13=function et(){return isIOS13Check("iPad")},getIphone13=function et(){return isIOS13Check("iPhone")},getIPod13=function et(){return isIOS13Check("iPod")},getUseragent=function et(tt){return setDefaults(tt)};function buildSelectorsObject(et){var tt=et||UAHelper,nt=tt.device,it=tt.browser,ot=tt.os,Ut=tt.engine,Ft=tt.ua;return{isSmartTV:isSmartTVType(nt),isConsole:isConsoleType(nt),isWearable:isWearableType(nt),isEmbedded:isEmbeddedType(nt),isMobileSafari:isMobileSafariType(it)||getIPad13(),isChromium:isChromiumType(it),isMobile:isMobileAndTabletType(nt)||getIPad13(),isMobileOnly:isMobileType(nt),isTablet:isTabletType(nt)||getIPad13(),isBrowser:isBrowserType(nt),isDesktop:isBrowserType(nt),isAndroid:isAndroidType(ot),isWinPhone:isWinPhoneType(ot),isIOS:isIOSType(ot)||getIPad13(),isChrome:isChromeType(it),isFirefox:isFirefoxType(it),isSafari:isSafariType(it),isOpera:isOperaType(it),isIE:isIEType(it),osVersion:getOsVersion(ot),osName:getOsName(ot),fullBrowserVersion:getBrowserFullVersion(it),browserVersion:getBrowserVersion(it),browserName:getBrowserName(it),mobileVendor:getMobileVendor(nt),mobileModel:getMobileModel(nt),engineName:getEngineName(Ut),engineVersion:getEngineVersion(Ut),getUA:getUseragent(Ft),isEdge:isEdgeType(it)||isEdgeChromiumType(Ft),isYandex:isYandexType(it),deviceType:getDeviceType(nt),isIOS13:getIOS13(),isIPad13:getIPad13(),isIPhone13:getIphone13(),isIPod13:getIPod13(),isElectron:isElectronType(),isEdgeChromium:isEdgeChromiumType(Ft),isLegacyEdge:isEdgeType(it)&&!isEdgeChromiumType(Ft),isWindows:isWindowsType(ot),isMacOs:isMacOsType(ot),isMIUI:isMIUIType(it),isSamsungBrowser:isSamsungBrowserType(it)}}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 et(tt){if(!tt||typeof tt!="string"){console.error("No valid user agent string was provided");return}var nt=parseUserAgent(tt),it=nt.device,ot=nt.browser,Ut=nt.os,Ft=nt.engine,Qt=nt.ua;return buildSelectorsObject({device:it,browser:ot,os:Ut,engine:Ft,ua:Qt})},AndroidView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isAndroid?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},BrowserView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isBrowser?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},IEView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isIE?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},IOSView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isIOS?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},MobileView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isMobile?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},TabletView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isTablet?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},WinPhoneView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isWinPhone?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},MobileOnlyView=function et(tt){var nt=tt.renderWithFragment,it=tt.children;tt.viewClassName,tt.style;var ot=_objectWithoutProperties(tt,["renderWithFragment","children","viewClassName","style"]);return isMobileOnly?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},SmartTVView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isSmartTV?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},ConsoleView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isConsole?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},WearableView=function et(tt){var nt=tt.renderWithFragment,it=tt.children,ot=_objectWithoutProperties(tt,["renderWithFragment","children"]);return isWearable?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",ot,it):null},CustomView=function et(tt){var nt=tt.renderWithFragment,it=tt.children;tt.viewClassName,tt.style;var ot=tt.condition,Ut=_objectWithoutProperties(tt,["renderWithFragment","children","viewClassName","style","condition"]);return ot?nt?React__default.createElement(React.Fragment,null,it):React__default.createElement("div",Ut,it):null};function withOrientationChange(et){return function(tt){_inherits(nt,tt);function nt(it){var ot;return _classCallCheck(this,nt),ot=_possibleConstructorReturn(this,_getPrototypeOf(nt).call(this,it)),ot.isEventListenerAdded=!1,ot.handleOrientationChange=ot.handleOrientationChange.bind(_assertThisInitialized(ot)),ot.onOrientationChange=ot.onOrientationChange.bind(_assertThisInitialized(ot)),ot.onPageLoad=ot.onPageLoad.bind(_assertThisInitialized(ot)),ot.state={isLandscape:!1,isPortrait:!1},ot}return _createClass(nt,[{key:"handleOrientationChange",value:function(){this.isEventListenerAdded||(this.isEventListenerAdded=!0);var ot=window.innerWidth>window.innerHeight?90:0;this.setState({isPortrait:ot===0,isLandscape:ot===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(et,_extends({},this.props,{isLandscape:this.state.isLandscape,isPortrait:this.state.isPortrait}))}}]),nt}(React__default.Component)}function useMobileOrientation(){var et=React.useState(function(){var Ut=window.innerWidth>window.innerHeight?90:0;return{isPortrait:Ut===0,isLandscape:Ut===90,orientation:Ut===0?"portrait":"landscape"}}),tt=_slicedToArray(et,2),nt=tt[0],it=tt[1],ot=React.useCallback(function(){var Ut=window.innerWidth>window.innerHeight?90:0,Ft={isPortrait:Ut===0,isLandscape:Ut===90,orientation:Ut===0?"portrait":"landscape"};nt.orientation!==Ft.orientation&&it(Ft)},[nt.orientation]);return React.useEffect(function(){return(typeof window>"u"?"undefined":_typeof(window))!==void 0&&isMobile&&(ot(),window.addEventListener("load",ot,!1),window.addEventListener("resize",ot,!1)),function(){window.removeEventListener("resize",ot,!1),window.removeEventListener("load",ot,!1)}},[ot]),nt}function useDeviceData(et){var tt=et||window.navigator.userAgent;return parseUserAgent(tt)}function useDeviceSelectors(et){var tt=et||window.navigator.userAgent,nt=useDeviceData(tt),it=buildSelectorsObject(nt);return[it,nt]}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,lt;return _e!==et&&(lt=_e-et,rt=tt>.5?lt/(2-_e-et):lt/(_e+et),nt=hueValue(_,j,$,lt,_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}}/*! + */function round(et){return et+.5|0}const lim=(et,tt,nt)=>Math.max(Math.min(et,nt),tt);function p2b(et){return lim(round(et*2.55),0,255)}function n2b(et){return lim(round(et*255),0,255)}function b2n(et){return lim(round(et/2.55)/100,0,1)}function n2p(et){return lim(round(et*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=et=>hex[et&15],h2=et=>hex[(et&240)>>4]+hex[et&15],eq=et=>(et&240)>>4===(et&15),isShort=et=>eq(et.r)&&eq(et.g)&&eq(et.b)&&eq(et.a);function hexParse(et){var tt=et.length,nt;return et[0]==="#"&&(tt===4||tt===5?nt={r:255&map$1[et[1]]*17,g:255&map$1[et[2]]*17,b:255&map$1[et[3]]*17,a:tt===5?map$1[et[4]]*17:255}:(tt===7||tt===9)&&(nt={r:map$1[et[1]]<<4|map$1[et[2]],g:map$1[et[3]]<<4|map$1[et[4]],b:map$1[et[5]]<<4|map$1[et[6]],a:tt===9?map$1[et[7]]<<4|map$1[et[8]]:255})),nt}const alpha=(et,tt)=>et<255?tt(et):"";function hexString(et){var tt=isShort(et)?h1:h2;return et?"#"+tt(et.r)+tt(et.g)+tt(et.b)+alpha(et.a,tt):void 0}const HUE_RE=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function hsl2rgbn(et,tt,nt){const it=tt*Math.min(nt,1-nt),ot=(Ut,Ft=(Ut+et/30)%12)=>nt-it*Math.max(Math.min(Ft-3,9-Ft,1),-1);return[ot(0),ot(8),ot(4)]}function hsv2rgbn(et,tt,nt){const it=(ot,Ut=(ot+et/60)%6)=>nt-nt*tt*Math.max(Math.min(Ut,4-Ut,1),0);return[it(5),it(3),it(1)]}function hwb2rgbn(et,tt,nt){const it=hsl2rgbn(et,1,.5);let ot;for(tt+nt>1&&(ot=1/(tt+nt),tt*=ot,nt*=ot),ot=0;ot<3;ot++)it[ot]*=1-tt-nt,it[ot]+=tt;return it}function hueValue(et,tt,nt,it,ot){return et===ot?(tt-nt)/it+(tt.5?Wt/(2-Ut-Ft):Wt/(Ut+Ft),Bt=hueValue(nt,it,ot,Wt,Ut),Bt=Bt*60+.5),[Bt|0,Vt||0,Qt]}function calln(et,tt,nt,it){return(Array.isArray(tt)?et(tt[0],tt[1],tt[2]):et(tt,nt,it)).map(n2b)}function hsl2rgb(et,tt,nt){return calln(hsl2rgbn,et,tt,nt)}function hwb2rgb(et,tt,nt){return calln(hwb2rgbn,et,tt,nt)}function hsv2rgb(et,tt,nt){return calln(hsv2rgbn,et,tt,nt)}function hue(et){return(et%360+360)%360}function hueParse(et){const tt=HUE_RE.exec(et);let nt=255,it;if(!tt)return;tt[5]!==it&&(nt=tt[6]?p2b(+tt[5]):n2b(+tt[5]));const ot=hue(+tt[2]),Ut=+tt[3]/100,Ft=+tt[4]/100;return tt[1]==="hwb"?it=hwb2rgb(ot,Ut,Ft):tt[1]==="hsv"?it=hsv2rgb(ot,Ut,Ft):it=hsl2rgb(ot,Ut,Ft),{r:it[0],g:it[1],b:it[2],a:nt}}function rotate(et,tt){var nt=rgb2hsl(et);nt[0]=hue(nt[0]+tt),nt=hsl2rgb(nt),et.r=nt[0],et.g=nt[1],et.b=nt[2]}function hslString(et){if(!et)return;const tt=rgb2hsl(et),nt=tt[0],it=n2p(tt[1]),ot=n2p(tt[2]);return et.a<255?`hsla(${nt}, ${it}%, ${ot}%, ${b2n(et.a)})`:`hsl(${nt}, ${it}%, ${ot}%)`}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 et={},tt=Object.keys(names$1),nt=Object.keys(map$2);let it,ot,Ut,Ft,Qt;for(it=0;it>16&255,Ut>>8&255,Ut&255]}return et}let names;function nameParse(et){names||(names=unpack(),names.transparent=[0,0,0,0]);const tt=names[et.toLowerCase()];return tt&&{r:tt[0],g:tt[1],b:tt[2],a:tt.length===4?tt[3]:255}}const RGB_RE=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;function rgbParse(et){const tt=RGB_RE.exec(et);let nt=255,it,ot,Ut;if(tt){if(tt[7]!==it){const Ft=+tt[7];nt=tt[8]?p2b(Ft):lim(Ft*255,0,255)}return it=+tt[1],ot=+tt[3],Ut=+tt[5],it=255&(tt[2]?p2b(it):lim(it,0,255)),ot=255&(tt[4]?p2b(ot):lim(ot,0,255)),Ut=255&(tt[6]?p2b(Ut):lim(Ut,0,255)),{r:it,g:ot,b:Ut,a:nt}}}function rgbString(et){return et&&(et.a<255?`rgba(${et.r}, ${et.g}, ${et.b}, ${b2n(et.a)})`:`rgb(${et.r}, ${et.g}, ${et.b})`)}const to=et=>et<=.0031308?et*12.92:Math.pow(et,1/2.4)*1.055-.055,from=et=>et<=.04045?et/12.92:Math.pow((et+.055)/1.055,2.4);function interpolate$1(et,tt,nt){const it=from(b2n(et.r)),ot=from(b2n(et.g)),Ut=from(b2n(et.b));return{r:n2b(to(it+nt*(from(b2n(tt.r))-it))),g:n2b(to(ot+nt*(from(b2n(tt.g))-ot))),b:n2b(to(Ut+nt*(from(b2n(tt.b))-Ut))),a:et.a+nt*(tt.a-et.a)}}function modHSL(et,tt,nt){if(et){let it=rgb2hsl(et);it[tt]=Math.max(0,Math.min(it[tt]+it[tt]*nt,tt===0?360:1)),it=hsl2rgb(it),et.r=it[0],et.g=it[1],et.b=it[2]}}function clone$1(et,tt){return et&&Object.assign(tt||{},et)}function fromObject(et){var tt={r:0,g:0,b:0,a:255};return Array.isArray(et)?et.length>=3&&(tt={r:et[0],g:et[1],b:et[2],a:255},et.length>3&&(tt.a=n2b(et[3]))):(tt=clone$1(et,{r:0,g:0,b:0,a:1}),tt.a=n2b(tt.a)),tt}function functionParse(et){return et.charAt(0)==="r"?rgbParse(et):hueParse(et)}class Color{constructor(tt){if(tt instanceof Color)return tt;const nt=typeof tt;let it;nt==="object"?it=fromObject(tt):nt==="string"&&(it=hexParse(tt)||nameParse(tt)||functionParse(tt)),this._rgb=it,this._valid=!!it}get valid(){return this._valid}get rgb(){var tt=clone$1(this._rgb);return tt&&(tt.a=b2n(tt.a)),tt}set rgb(tt){this._rgb=fromObject(tt)}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(tt,nt){if(tt){const it=this.rgb,ot=tt.rgb;let Ut;const Ft=nt===Ut?.5:nt,Qt=2*Ft-1,Bt=it.a-ot.a,Vt=((Qt*Bt===-1?Qt:(Qt+Bt)/(1+Qt*Bt))+1)/2;Ut=1-Vt,it.r=255&Vt*it.r+Ut*ot.r+.5,it.g=255&Vt*it.g+Ut*ot.g+.5,it.b=255&Vt*it.b+Ut*ot.b+.5,it.a=Ft*it.a+(1-Ft)*ot.a,this.rgb=it}return this}interpolate(tt,nt){return tt&&(this._rgb=interpolate$1(this._rgb,tt._rgb,nt)),this}clone(){return new Color(this.rgb)}alpha(tt){return this._rgb.a=n2b(tt),this}clearer(tt){const nt=this._rgb;return nt.a*=1-tt,this}greyscale(){const tt=this._rgb,nt=round(tt.r*.3+tt.g*.59+tt.b*.11);return tt.r=tt.g=tt.b=nt,this}opaquer(tt){const nt=this._rgb;return nt.a*=1+tt,this}negate(){const tt=this._rgb;return tt.r=255-tt.r,tt.g=255-tt.g,tt.b=255-tt.b,this}lighten(tt){return modHSL(this._rgb,2,tt),this}darken(tt){return modHSL(this._rgb,2,-tt),this}saturate(tt){return modHSL(this._rgb,1,tt),this}desaturate(tt){return modHSL(this._rgb,1,-tt),this}rotate(tt){return rotate(this._rgb,tt),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),lt=_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:lt,minDefined:ut,maxDefined:Ut}=et.getUserBounds();ut&&($=_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,lt,!0).hi+1,_?0:_lookupByKey(s,nt,et.getPixelForValue(lt),!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,lt,ut,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(lt=>lt!==nt);s=[];for(const lt of nt){const ut=createSubResolver(rt,$,o,lt);s.push(_attachContext(ut,_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,lt;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),lt=nt/(tt+nt);rt=isNaN(rt)?0:rt,lt=isNaN(lt)?0:lt;const ut=j*rt,Ut=j*lt;return{previous:{x:_e.x-ut*(et.x-$.x),y:_e.y-ut*(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 lt=0;lt!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:lt}=getCanvasPosition(o,_),ut=et.left+(lt&&tt.left),Ut=et.top+(lt&&tt.top);let{width:ot,height:st}=s;return _e&&(ot-=et.width+tt.width,st-=et.height+tt.height),{x:Math.round((nt-ut)/ot*_.width/j),y:Math.round((rt-Ut)/st*_.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:lt}=nt;if($.boxSizing==="content-box"){const Ut=getPositionedStyle($,"border","width"),ot=getPositionedStyle($,"padding");rt-=ot.width+Ut.width,lt-=ot.height+Ut.height}return rt=Math.max(0,rt-_e.width),lt=Math.max(0,j?rt/j:lt-_e.height),rt=round1(Math.min(rt,et,nt.maxWidth)),lt=round1(Math.min(lt,tt,nt.maxHeight)),rt&&!lt&&(lt=round1(rt/2)),(s!==void 0||_!==void 0)&&j&&nt.height&<>nt.height&&(lt=nt.height,rt=round1(Math.floor(lt*j))),{width:rt,height:lt}}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,_),lt=_pointInLine(tt,nt,_);return _pointInLine(rt,lt,_)}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:lt,loop:ut}=o,Ut,ot;if(ut){for(rt+=nt,lt+=nt,Ut=0,ot=nt;Utnt($,Bt,pt)&&tt($,Bt)!==0,mt=()=>tt(_e,pt)===0||nt(_e,Bt,pt),gt=()=>dt||ht(),Vt=()=>!dt||mt();for(let Tt=lt,ft=lt;Tt<=ut;++Tt)Rt=s[Tt%et],!Rt.skip&&(pt=rt(Rt[j]),pt!==Bt&&(dt=nt(pt,$,_e),St===null&>()&&(St=tt(pt,$)===0?Tt:ft),St!==null&&Vt()&&(st.push(normalizeSegment({start:St,end:Tt,loop:Ut,count:et,style:ot})),St=null),ft=Tt,Bt=pt));return St!==null&&st.push(normalizeSegment({start:St,end:ut,loop:Ut,count:et,style:ot})),st}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=tt{let et=0;return()=>et++})();function isNullOrUndef(et){return et===null||typeof et>"u"}function isArray(et){if(Array.isArray&&Array.isArray(et))return!0;const tt=Object.prototype.toString.call(et);return tt.slice(0,7)==="[object"&&tt.slice(-6)==="Array]"}function isObject(et){return et!==null&&Object.prototype.toString.call(et)==="[object Object]"}function isNumberFinite(et){return(typeof et=="number"||et instanceof Number)&&isFinite(+et)}function finiteOrDefault(et,tt){return isNumberFinite(et)?et:tt}function valueOrDefault(et,tt){return typeof et>"u"?tt:et}const toPercentage=(et,tt)=>typeof et=="string"&&et.endsWith("%")?parseFloat(et)/100:+et/tt,toDimension=(et,tt)=>typeof et=="string"&&et.endsWith("%")?parseFloat(et)/100*tt:+et;function callback(et,tt,nt){if(et&&typeof et.call=="function")return et.apply(nt,tt)}function each(et,tt,nt,it){let ot,Ut,Ft;if(isArray(et))if(Ut=et.length,it)for(ot=Ut-1;ot>=0;ot--)tt.call(nt,et[ot],ot);else for(ot=0;otet,x:et=>et.x,y:et=>et.y};function _splitKey(et){const tt=et.split("."),nt=[];let it="";for(const ot of tt)it+=ot,it.endsWith("\\")?it=it.slice(0,-1)+".":(nt.push(it),it="");return nt}function _getKeyResolver(et){const tt=_splitKey(et);return nt=>{for(const it of tt){if(it==="")break;nt=nt&&nt[it]}return nt}}function resolveObjectKey(et,tt){return(keyResolvers[tt]||(keyResolvers[tt]=_getKeyResolver(tt)))(et)}function _capitalize(et){return et.charAt(0).toUpperCase()+et.slice(1)}const defined=et=>typeof et<"u",isFunction=et=>typeof et=="function",setsEqual=(et,tt)=>{if(et.size!==tt.size)return!1;for(const nt of et)if(!tt.has(nt))return!1;return!0};function _isClickEvent(et){return et.type==="mouseup"||et.type==="click"||et.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(et,tt,nt){return Math.abs(et-tt)ot-Ut).pop(),tt}function isNumber(et){return!isNaN(parseFloat(et))&&isFinite(et)}function almostWhole(et,tt){const nt=Math.round(et);return nt-tt<=et&&nt+tt>=et}function _setMinAndMaxByKey(et,tt,nt){let it,ot,Ut;for(it=0,ot=et.length;itBt&&Vt=Math.min(tt,nt)-it&&et<=Math.max(tt,nt)+it}function _lookup(et,tt,nt){nt=nt||(Ft=>et[Ft]1;)Ut=ot+it>>1,nt(Ut)?ot=Ut:it=Ut;return{lo:ot,hi:it}}const _lookupByKey=(et,tt,nt,it)=>_lookup(et,nt,it?ot=>{const Ut=et[ot][tt];return Utet[ot][tt]_lookup(et,nt,it=>et[it][tt]>=nt);function _filterBetween(et,tt,nt){let it=0,ot=et.length;for(;itit&&et[ot-1]>nt;)ot--;return it>0||ot{const it="_onData"+_capitalize(nt),ot=et[nt];Object.defineProperty(et,nt,{configurable:!0,enumerable:!1,value(...Ut){const Ft=ot.apply(this,Ut);return et._chartjs.listeners.forEach(Qt=>{typeof Qt[it]=="function"&&Qt[it](...Ut)}),Ft}})})}function unlistenArrayEvents(et,tt){const nt=et._chartjs;if(!nt)return;const it=nt.listeners,ot=it.indexOf(tt);ot!==-1&&it.splice(ot,1),!(it.length>0)&&(arrayEvents.forEach(Ut=>{delete et[Ut]}),delete et._chartjs)}function _arrayUnique(et){const tt=new Set;let nt,it;for(nt=0,it=et.length;nt"u"?function(et){return et()}:window.requestAnimationFrame}();function throttled(et,tt){let nt=[],it=!1;return function(...ot){nt=ot,it||(it=!0,requestAnimFrame.call(window,()=>{it=!1,et.apply(tt,nt)}))}}function debounce(et,tt){let nt;return function(...it){return tt?(clearTimeout(nt),nt=setTimeout(et,tt,it)):et.apply(this,it),tt}}const _toLeftRightCenter=et=>et==="start"?"left":et==="end"?"right":"center",_alignStartEnd=(et,tt,nt)=>et==="start"?tt:et==="end"?nt:(tt+nt)/2,_textX=(et,tt,nt,it)=>et===(it?"left":"right")?nt:et==="center"?(tt+nt)/2:tt;function _getStartAndCountOfVisiblePoints(et,tt,nt){const it=tt.length;let ot=0,Ut=it;if(et._sorted){const{iScale:Ft,_parsed:Qt}=et,Bt=Ft.axis,{min:Vt,max:Wt,minDefined:Xt,maxDefined:Zt}=Ft.getUserBounds();Xt&&(ot=_limitValue(Math.min(_lookupByKey(Qt,Ft.axis,Vt).lo,nt?it:_lookupByKey(tt,Bt,Ft.getPixelForValue(Vt)).lo),0,it-1)),Zt?Ut=_limitValue(Math.max(_lookupByKey(Qt,Ft.axis,Wt,!0).hi+1,nt?0:_lookupByKey(tt,Bt,Ft.getPixelForValue(Wt),!0).hi+1),ot,it)-ot:Ut=it-ot}return{start:ot,count:Ut}}function _scaleRangesChanged(et){const{xScale:tt,yScale:nt,_scaleRanges:it}=et,ot={xmin:tt.min,xmax:tt.max,ymin:nt.min,ymax:nt.max};if(!it)return et._scaleRanges=ot,!0;const Ut=it.xmin!==tt.min||it.xmax!==tt.max||it.ymin!==nt.min||it.ymax!==nt.max;return Object.assign(it,ot),Ut}const atEdge=et=>et===0||et===1,elasticIn=(et,tt,nt)=>-(Math.pow(2,10*(et-=1))*Math.sin((et-tt)*TAU/nt)),elasticOut=(et,tt,nt)=>Math.pow(2,-10*et)*Math.sin((et-tt)*TAU/nt)+1,effects={linear:et=>et,easeInQuad:et=>et*et,easeOutQuad:et=>-et*(et-2),easeInOutQuad:et=>(et/=.5)<1?.5*et*et:-.5*(--et*(et-2)-1),easeInCubic:et=>et*et*et,easeOutCubic:et=>(et-=1)*et*et+1,easeInOutCubic:et=>(et/=.5)<1?.5*et*et*et:.5*((et-=2)*et*et+2),easeInQuart:et=>et*et*et*et,easeOutQuart:et=>-((et-=1)*et*et*et-1),easeInOutQuart:et=>(et/=.5)<1?.5*et*et*et*et:-.5*((et-=2)*et*et*et-2),easeInQuint:et=>et*et*et*et*et,easeOutQuint:et=>(et-=1)*et*et*et*et+1,easeInOutQuint:et=>(et/=.5)<1?.5*et*et*et*et*et:.5*((et-=2)*et*et*et*et+2),easeInSine:et=>-Math.cos(et*HALF_PI)+1,easeOutSine:et=>Math.sin(et*HALF_PI),easeInOutSine:et=>-.5*(Math.cos(PI*et)-1),easeInExpo:et=>et===0?0:Math.pow(2,10*(et-1)),easeOutExpo:et=>et===1?1:-Math.pow(2,-10*et)+1,easeInOutExpo:et=>atEdge(et)?et:et<.5?.5*Math.pow(2,10*(et*2-1)):.5*(-Math.pow(2,-10*(et*2-1))+2),easeInCirc:et=>et>=1?et:-(Math.sqrt(1-et*et)-1),easeOutCirc:et=>Math.sqrt(1-(et-=1)*et),easeInOutCirc:et=>(et/=.5)<1?-.5*(Math.sqrt(1-et*et)-1):.5*(Math.sqrt(1-(et-=2)*et)+1),easeInElastic:et=>atEdge(et)?et:elasticIn(et,.075,.3),easeOutElastic:et=>atEdge(et)?et:elasticOut(et,.075,.3),easeInOutElastic(et){return atEdge(et)?et:et<.5?.5*elasticIn(et*2,.1125,.45):.5+.5*elasticOut(et*2-1,.1125,.45)},easeInBack(et){return et*et*((1.70158+1)*et-1.70158)},easeOutBack(et){return(et-=1)*et*((1.70158+1)*et+1.70158)+1},easeInOutBack(et){let tt=1.70158;return(et/=.5)<1?.5*(et*et*(((tt*=1.525)+1)*et-tt)):.5*((et-=2)*et*(((tt*=1.525)+1)*et+tt)+2)},easeInBounce:et=>1-effects.easeOutBounce(1-et),easeOutBounce(et){return et<1/2.75?7.5625*et*et:et<2/2.75?7.5625*(et-=1.5/2.75)*et+.75:et<2.5/2.75?7.5625*(et-=2.25/2.75)*et+.9375:7.5625*(et-=2.625/2.75)*et+.984375},easeInOutBounce:et=>et<.5?effects.easeInBounce(et*2)*.5:effects.easeOutBounce(et*2-1)*.5+.5};function isPatternOrGradient(et){if(et&&typeof et=="object"){const tt=et.toString();return tt==="[object CanvasPattern]"||tt==="[object CanvasGradient]"}return!1}function color(et){return isPatternOrGradient(et)?et:new Color(et)}function getHoverColor(et){return isPatternOrGradient(et)?et:new Color(et).saturate(.5).darken(.1).hexString()}const numbers=["x","y","borderWidth","radius","tension"],colors=["color","borderColor","backgroundColor"];function applyAnimationsDefaults(et){et.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),et.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:tt=>tt!=="onProgress"&&tt!=="onComplete"&&tt!=="fn"}),et.set("animations",{colors:{type:"color",properties:colors},numbers:{type:"number",properties:numbers}}),et.describe("animations",{_fallback:"animation"}),et.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:tt=>tt|0}}}})}function applyLayoutsDefaults(et){et.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})}const intlCache=new Map;function getNumberFormat(et,tt){tt=tt||{};const nt=et+JSON.stringify(tt);let it=intlCache.get(nt);return it||(it=new Intl.NumberFormat(et,tt),intlCache.set(nt,it)),it}function formatNumber(et,tt,nt){return getNumberFormat(tt,nt).format(et)}const formatters={values(et){return isArray(et)?et:""+et},numeric(et,tt,nt){if(et===0)return"0";const it=this.chart.options.locale;let ot,Ut=et;if(nt.length>1){const Vt=Math.max(Math.abs(nt[0].value),Math.abs(nt[nt.length-1].value));(Vt<1e-4||Vt>1e15)&&(ot="scientific"),Ut=calculateDelta(et,nt)}const Ft=log10(Math.abs(Ut)),Qt=Math.max(Math.min(-1*Math.floor(Ft),20),0),Bt={notation:ot,minimumFractionDigits:Qt,maximumFractionDigits:Qt};return Object.assign(Bt,this.options.ticks.format),formatNumber(et,it,Bt)},logarithmic(et,tt,nt){if(et===0)return"0";const it=nt[tt].significand||et/Math.pow(10,Math.floor(log10(et)));return[1,2,3,5,10,15].includes(it)||tt>.8*nt.length?formatters.numeric.call(this,et,tt,nt):""}};function calculateDelta(et,tt){let nt=tt.length>3?tt[2].value-tt[1].value:tt[1].value-tt[0].value;return Math.abs(nt)>=1&&et!==Math.floor(et)&&(nt=et-Math.floor(et)),nt}var Ticks={formatters};function applyScaleDefaults(et){et.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:(tt,nt)=>nt.lineWidth,tickColor:(tt,nt)=>nt.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}}),et.route("scale.ticks","color","","color"),et.route("scale.grid","color","","borderColor"),et.route("scale.border","color","","borderColor"),et.route("scale.title","color","","color"),et.describe("scale",{_fallback:!1,_scriptable:tt=>!tt.startsWith("before")&&!tt.startsWith("after")&&tt!=="callback"&&tt!=="parser",_indexable:tt=>tt!=="borderDash"&&tt!=="tickBorderDash"&&tt!=="dash"}),et.describe("scales",{_fallback:"scale"}),et.describe("scale.ticks",{_scriptable:tt=>tt!=="backdropPadding"&&tt!=="callback",_indexable:tt=>tt!=="backdropPadding"})}const overrides=Object.create(null),descriptors=Object.create(null);function getScope$1(et,tt){if(!tt)return et;const nt=tt.split(".");for(let it=0,ot=nt.length;itit.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=(it,ot)=>getHoverColor(ot.backgroundColor),this.hoverBorderColor=(it,ot)=>getHoverColor(ot.borderColor),this.hoverColor=(it,ot)=>getHoverColor(ot.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(tt),this.apply(nt)}set(tt,nt){return set(this,tt,nt)}get(tt){return getScope$1(this,tt)}describe(tt,nt){return set(descriptors,tt,nt)}override(tt,nt){return set(overrides,tt,nt)}route(tt,nt,it,ot){const Ut=getScope$1(this,tt),Ft=getScope$1(this,it),Qt="_"+nt;Object.defineProperties(Ut,{[Qt]:{value:Ut[nt],writable:!0},[nt]:{enumerable:!0,get(){const Bt=this[Qt],Vt=Ft[ot];return isObject(Bt)?Object.assign({},Vt,Bt):valueOrDefault(Bt,Vt)},set(Bt){this[Qt]=Bt}}})}apply(tt){tt.forEach(nt=>nt(this))}}var defaults=new Defaults({_scriptable:et=>!et.startsWith("on"),_indexable:et=>et!=="events",hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[applyAnimationsDefaults,applyLayoutsDefaults,applyScaleDefaults]);function toFontString(et){return!et||isNullOrUndef(et.size)||isNullOrUndef(et.family)?null:(et.style?et.style+" ":"")+(et.weight?et.weight+" ":"")+et.size+"px "+et.family}function _measureText(et,tt,nt,it,ot){let Ut=tt[ot];return Ut||(Ut=tt[ot]=et.measureText(ot).width,nt.push(ot)),Ut>it&&(it=Ut),it}function _longestText(et,tt,nt,it){it=it||{};let ot=it.data=it.data||{},Ut=it.garbageCollect=it.garbageCollect||[];it.font!==tt&&(ot=it.data={},Ut=it.garbageCollect=[],it.font=tt),et.save(),et.font=tt;let Ft=0;const Qt=nt.length;let Bt,Vt,Wt,Xt,Zt;for(Bt=0;Btnt.length){for(Bt=0;Bt0&&et.stroke()}}function _isPointInArea(et,tt,nt){return nt=nt||.5,!tt||et&&et.x>tt.left-nt&&et.xtt.top-nt&&et.y0&&Ut.strokeColor!=="";let Bt,Vt;for(et.save(),et.font=ot.string,setRenderOpts(et,Ut),Bt=0;Bt+et||0;function _readValueToProps(et,tt){const nt={},it=isObject(tt),ot=it?Object.keys(tt):tt,Ut=isObject(et)?it?Ft=>valueOrDefault(et[Ft],et[tt[Ft]]):Ft=>et[Ft]:()=>et;for(const Ft of ot)nt[Ft]=numberOrZero(Ut(Ft));return nt}function toTRBL(et){return _readValueToProps(et,{top:"y",right:"x",bottom:"y",left:"x"})}function toTRBLCorners(et){return _readValueToProps(et,["topLeft","topRight","bottomLeft","bottomRight"])}function toPadding(et){const tt=toTRBL(et);return tt.width=tt.left+tt.right,tt.height=tt.top+tt.bottom,tt}function toFont(et,tt){et=et||{},tt=tt||defaults.font;let nt=valueOrDefault(et.size,tt.size);typeof nt=="string"&&(nt=parseInt(nt,10));let it=valueOrDefault(et.style,tt.style);it&&!(""+it).match(FONT_STYLE)&&(console.warn('Invalid font style specified: "'+it+'"'),it=void 0);const ot={family:valueOrDefault(et.family,tt.family),lineHeight:toLineHeight(valueOrDefault(et.lineHeight,tt.lineHeight),nt),size:nt,style:it,weight:valueOrDefault(et.weight,tt.weight),string:""};return ot.string=toFontString(ot),ot}function resolve(et,tt,nt,it){let ot=!0,Ut,Ft,Qt;for(Ut=0,Ft=et.length;Utnt&&Qt===0?0:Qt+Bt;return{min:Ft(it,-Math.abs(Ut)),max:Ft(ot,Ut)}}function createContext(et,tt){return Object.assign(Object.create(et),tt)}function _createResolver(et,tt=[""],nt=et,it,ot=()=>et[0]){defined(it)||(it=_resolve("_fallback",et));const Ut={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:et,_rootScopes:nt,_fallback:it,_getTarget:ot,override:Ft=>_createResolver([Ft,...et],tt,nt,it)};return new Proxy(Ut,{deleteProperty(Ft,Qt){return delete Ft[Qt],delete Ft._keys,delete et[0][Qt],!0},get(Ft,Qt){return _cached(Ft,Qt,()=>_resolveWithPrefixes(Qt,tt,et,Ft))},getOwnPropertyDescriptor(Ft,Qt){return Reflect.getOwnPropertyDescriptor(Ft._scopes[0],Qt)},getPrototypeOf(){return Reflect.getPrototypeOf(et[0])},has(Ft,Qt){return getKeysFromAllScopes(Ft).includes(Qt)},ownKeys(Ft){return getKeysFromAllScopes(Ft)},set(Ft,Qt,Bt){const Vt=Ft._storage||(Ft._storage=ot());return Ft[Qt]=Vt[Qt]=Bt,delete Ft._keys,!0}})}function _attachContext(et,tt,nt,it){const ot={_cacheable:!1,_proxy:et,_context:tt,_subProxy:nt,_stack:new Set,_descriptors:_descriptors(et,it),setContext:Ut=>_attachContext(et,Ut,nt,it),override:Ut=>_attachContext(et.override(Ut),tt,nt,it)};return new Proxy(ot,{deleteProperty(Ut,Ft){return delete Ut[Ft],delete et[Ft],!0},get(Ut,Ft,Qt){return _cached(Ut,Ft,()=>_resolveWithContext(Ut,Ft,Qt))},getOwnPropertyDescriptor(Ut,Ft){return Ut._descriptors.allKeys?Reflect.has(et,Ft)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(et,Ft)},getPrototypeOf(){return Reflect.getPrototypeOf(et)},has(Ut,Ft){return Reflect.has(et,Ft)},ownKeys(){return Reflect.ownKeys(et)},set(Ut,Ft,Qt){return et[Ft]=Qt,delete Ut[Ft],!0}})}function _descriptors(et,tt={scriptable:!0,indexable:!0}){const{_scriptable:nt=tt.scriptable,_indexable:it=tt.indexable,_allKeys:ot=tt.allKeys}=et;return{allKeys:ot,scriptable:nt,indexable:it,isScriptable:isFunction(nt)?nt:()=>nt,isIndexable:isFunction(it)?it:()=>it}}const readKey=(et,tt)=>et?et+_capitalize(tt):tt,needsSubResolver=(et,tt)=>isObject(tt)&&et!=="adapters"&&(Object.getPrototypeOf(tt)===null||tt.constructor===Object);function _cached(et,tt,nt){if(Object.prototype.hasOwnProperty.call(et,tt))return et[tt];const it=nt();return et[tt]=it,it}function _resolveWithContext(et,tt,nt){const{_proxy:it,_context:ot,_subProxy:Ut,_descriptors:Ft}=et;let Qt=it[tt];return isFunction(Qt)&&Ft.isScriptable(tt)&&(Qt=_resolveScriptable(tt,Qt,et,nt)),isArray(Qt)&&Qt.length&&(Qt=_resolveArray(tt,Qt,et,Ft.isIndexable)),needsSubResolver(tt,Qt)&&(Qt=_attachContext(Qt,ot,Ut&&Ut[tt],Ft)),Qt}function _resolveScriptable(et,tt,nt,it){const{_proxy:ot,_context:Ut,_subProxy:Ft,_stack:Qt}=nt;if(Qt.has(et))throw new Error("Recursion detected: "+Array.from(Qt).join("->")+"->"+et);return Qt.add(et),tt=tt(Ut,Ft||it),Qt.delete(et),needsSubResolver(et,tt)&&(tt=createSubResolver(ot._scopes,ot,et,tt)),tt}function _resolveArray(et,tt,nt,it){const{_proxy:ot,_context:Ut,_subProxy:Ft,_descriptors:Qt}=nt;if(defined(Ut.index)&&it(et))tt=tt[Ut.index%tt.length];else if(isObject(tt[0])){const Bt=tt,Vt=ot._scopes.filter(Wt=>Wt!==Bt);tt=[];for(const Wt of Bt){const Xt=createSubResolver(Vt,ot,et,Wt);tt.push(_attachContext(Xt,Ut,Ft&&Ft[et],Qt))}}return tt}function resolveFallback(et,tt,nt){return isFunction(et)?et(tt,nt):et}const getScope=(et,tt)=>et===!0?tt:typeof et=="string"?resolveObjectKey(tt,et):void 0;function addScopes(et,tt,nt,it,ot){for(const Ut of tt){const Ft=getScope(nt,Ut);if(Ft){et.add(Ft);const Qt=resolveFallback(Ft._fallback,nt,ot);if(defined(Qt)&&Qt!==nt&&Qt!==it)return Qt}else if(Ft===!1&&defined(it)&&nt!==it)return null}return!1}function createSubResolver(et,tt,nt,it){const ot=tt._rootScopes,Ut=resolveFallback(tt._fallback,nt,it),Ft=[...et,...ot],Qt=new Set;Qt.add(it);let Bt=addScopesFromKey(Qt,Ft,nt,Ut||nt,it);return Bt===null||defined(Ut)&&Ut!==nt&&(Bt=addScopesFromKey(Qt,Ft,Ut,Bt,it),Bt===null)?!1:_createResolver(Array.from(Qt),[""],ot,Ut,()=>subGetTarget(tt,nt,it))}function addScopesFromKey(et,tt,nt,it,ot){for(;nt;)nt=addScopes(et,tt,nt,it,ot);return nt}function subGetTarget(et,tt,nt){const it=et._getTarget();tt in it||(it[tt]={});const ot=it[tt];return isArray(ot)&&isObject(nt)?nt:ot||{}}function _resolveWithPrefixes(et,tt,nt,it){let ot;for(const Ut of tt)if(ot=_resolve(readKey(Ut,et),nt),defined(ot))return needsSubResolver(et,ot)?createSubResolver(nt,it,et,ot):ot}function _resolve(et,tt){for(const nt of tt){if(!nt)continue;const it=nt[et];if(defined(it))return it}}function getKeysFromAllScopes(et){let tt=et._keys;return tt||(tt=et._keys=resolveKeysFromAllScopes(et._scopes)),tt}function resolveKeysFromAllScopes(et){const tt=new Set;for(const nt of et)for(const it of Object.keys(nt).filter(ot=>!ot.startsWith("_")))tt.add(it);return Array.from(tt)}function _parseObjectDataRadialScale(et,tt,nt,it){const{iScale:ot}=et,{key:Ut="r"}=this._parsing,Ft=new Array(it);let Qt,Bt,Vt,Wt;for(Qt=0,Bt=it;Qtttet==="x"?"y":"x";function splineCurve(et,tt,nt,it){const ot=et.skip?tt:et,Ut=tt,Ft=nt.skip?tt:nt,Qt=distanceBetweenPoints(Ut,ot),Bt=distanceBetweenPoints(Ft,Ut);let Vt=Qt/(Qt+Bt),Wt=Bt/(Qt+Bt);Vt=isNaN(Vt)?0:Vt,Wt=isNaN(Wt)?0:Wt;const Xt=it*Vt,Zt=it*Wt;return{previous:{x:Ut.x-Xt*(Ft.x-ot.x),y:Ut.y-Xt*(Ft.y-ot.y)},next:{x:Ut.x+Zt*(Ft.x-ot.x),y:Ut.y+Zt*(Ft.y-ot.y)}}}function monotoneAdjust(et,tt,nt){const it=et.length;let ot,Ut,Ft,Qt,Bt,Vt=getPoint(et,0);for(let Wt=0;Wt!Vt.skip)),tt.cubicInterpolationMode==="monotone")splineCurveMonotone(et,ot);else{let Vt=it?et[et.length-1]:et[0];for(Ut=0,Ft=et.length;Utet.ownerDocument.defaultView.getComputedStyle(et,null);function getStyle(et,tt){return getComputedStyle(et).getPropertyValue(tt)}const positions=["top","right","bottom","left"];function getPositionedStyle(et,tt,nt){const it={};nt=nt?"-"+nt:"";for(let ot=0;ot<4;ot++){const Ut=positions[ot];it[Ut]=parseFloat(et[tt+"-"+Ut+nt])||0}return it.width=it.left+it.right,it.height=it.top+it.bottom,it}const useOffsetPos=(et,tt,nt)=>(et>0||tt>0)&&(!nt||!nt.shadowRoot);function getCanvasPosition(et,tt){const nt=et.touches,it=nt&&nt.length?nt[0]:et,{offsetX:ot,offsetY:Ut}=it;let Ft=!1,Qt,Bt;if(useOffsetPos(ot,Ut,et.target))Qt=ot,Bt=Ut;else{const Vt=tt.getBoundingClientRect();Qt=it.clientX-Vt.left,Bt=it.clientY-Vt.top,Ft=!0}return{x:Qt,y:Bt,box:Ft}}function getRelativePosition(et,tt){if("native"in et)return et;const{canvas:nt,currentDevicePixelRatio:it}=tt,ot=getComputedStyle(nt),Ut=ot.boxSizing==="border-box",Ft=getPositionedStyle(ot,"padding"),Qt=getPositionedStyle(ot,"border","width"),{x:Bt,y:Vt,box:Wt}=getCanvasPosition(et,nt),Xt=Ft.left+(Wt&&Qt.left),Zt=Ft.top+(Wt&&Qt.top);let{width:Yt,height:Mt}=tt;return Ut&&(Yt-=Ft.width+Qt.width,Mt-=Ft.height+Qt.height),{x:Math.round((Bt-Xt)/Yt*nt.width/it),y:Math.round((Vt-Zt)/Mt*nt.height/it)}}function getContainerSize(et,tt,nt){let it,ot;if(tt===void 0||nt===void 0){const Ut=_getParentNode(et);if(!Ut)tt=et.clientWidth,nt=et.clientHeight;else{const Ft=Ut.getBoundingClientRect(),Qt=getComputedStyle(Ut),Bt=getPositionedStyle(Qt,"border","width"),Vt=getPositionedStyle(Qt,"padding");tt=Ft.width-Vt.width-Bt.width,nt=Ft.height-Vt.height-Bt.height,it=parseMaxStyle(Qt.maxWidth,Ut,"clientWidth"),ot=parseMaxStyle(Qt.maxHeight,Ut,"clientHeight")}}return{width:tt,height:nt,maxWidth:it||INFINITY,maxHeight:ot||INFINITY}}const round1=et=>Math.round(et*10)/10;function getMaximumSize(et,tt,nt,it){const ot=getComputedStyle(et),Ut=getPositionedStyle(ot,"margin"),Ft=parseMaxStyle(ot.maxWidth,et,"clientWidth")||INFINITY,Qt=parseMaxStyle(ot.maxHeight,et,"clientHeight")||INFINITY,Bt=getContainerSize(et,tt,nt);let{width:Vt,height:Wt}=Bt;if(ot.boxSizing==="content-box"){const Zt=getPositionedStyle(ot,"border","width"),Yt=getPositionedStyle(ot,"padding");Vt-=Yt.width+Zt.width,Wt-=Yt.height+Zt.height}return Vt=Math.max(0,Vt-Ut.width),Wt=Math.max(0,it?Vt/it:Wt-Ut.height),Vt=round1(Math.min(Vt,Ft,Bt.maxWidth)),Wt=round1(Math.min(Wt,Qt,Bt.maxHeight)),Vt&&!Wt&&(Wt=round1(Vt/2)),(tt!==void 0||nt!==void 0)&&it&&Bt.height&&Wt>Bt.height&&(Wt=Bt.height,Vt=round1(Math.floor(Wt*it))),{width:Vt,height:Wt}}function retinaScale(et,tt,nt){const it=tt||1,ot=Math.floor(et.height*it),Ut=Math.floor(et.width*it);et.height=Math.floor(et.height),et.width=Math.floor(et.width);const Ft=et.canvas;return Ft.style&&(nt||!Ft.style.height&&!Ft.style.width)&&(Ft.style.height=`${et.height}px`,Ft.style.width=`${et.width}px`),et.currentDevicePixelRatio!==it||Ft.height!==ot||Ft.width!==Ut?(et.currentDevicePixelRatio=it,Ft.height=ot,Ft.width=Ut,et.ctx.setTransform(it,0,0,it,0,0),!0):!1}const supportsEventListenerOptions=function(){let et=!1;try{const tt={get passive(){return et=!0,!1}};window.addEventListener("test",null,tt),window.removeEventListener("test",null,tt)}catch{}return et}();function readUsedSize(et,tt){const nt=getStyle(et,tt),it=nt&&nt.match(/^(\d+)(\.\d+)?px$/);return it?+it[1]:void 0}function _pointInLine(et,tt,nt,it){return{x:et.x+nt*(tt.x-et.x),y:et.y+nt*(tt.y-et.y)}}function _steppedInterpolation(et,tt,nt,it){return{x:et.x+nt*(tt.x-et.x),y:it==="middle"?nt<.5?et.y:tt.y:it==="after"?nt<1?et.y:tt.y:nt>0?tt.y:et.y}}function _bezierInterpolation(et,tt,nt,it){const ot={x:et.cp2x,y:et.cp2y},Ut={x:tt.cp1x,y:tt.cp1y},Ft=_pointInLine(et,ot,nt),Qt=_pointInLine(ot,Ut,nt),Bt=_pointInLine(Ut,tt,nt),Vt=_pointInLine(Ft,Qt,nt),Wt=_pointInLine(Qt,Bt,nt);return _pointInLine(Vt,Wt,nt)}const getRightToLeftAdapter=function(et,tt){return{x(nt){return et+et+tt-nt},setWidth(nt){tt=nt},textAlign(nt){return nt==="center"?nt:nt==="right"?"left":"right"},xPlus(nt,it){return nt-it},leftForLtr(nt,it){return nt-it}}},getLeftToRightAdapter=function(){return{x(et){return et},setWidth(et){},textAlign(et){return et},xPlus(et,tt){return et+tt},leftForLtr(et,tt){return et}}};function getRtlAdapter(et,tt,nt){return et?getRightToLeftAdapter(tt,nt):getLeftToRightAdapter()}function overrideTextDirection(et,tt){let nt,it;(tt==="ltr"||tt==="rtl")&&(nt=et.canvas.style,it=[nt.getPropertyValue("direction"),nt.getPropertyPriority("direction")],nt.setProperty("direction",tt,"important"),et.prevTextDirection=it)}function restoreTextDirection(et,tt){tt!==void 0&&(delete et.prevTextDirection,et.canvas.style.setProperty("direction",tt[0],tt[1]))}function propertyFn(et){return et==="angle"?{between:_angleBetween,compare:_angleDiff,normalize:_normalizeAngle}:{between:_isBetween,compare:(tt,nt)=>tt-nt,normalize:tt=>tt}}function normalizeSegment({start:et,end:tt,count:nt,loop:it,style:ot}){return{start:et%nt,end:tt%nt,loop:it&&(tt-et+1)%nt===0,style:ot}}function getSegment(et,tt,nt){const{property:it,start:ot,end:Ut}=nt,{between:Ft,normalize:Qt}=propertyFn(it),Bt=tt.length;let{start:Vt,end:Wt,loop:Xt}=et,Zt,Yt;if(Xt){for(Vt+=Bt,Wt+=Bt,Zt=0,Yt=Bt;ZtBt(ot,nn,tn)&&Qt(ot,nn)!==0,Kt=()=>Qt(Ut,tn)===0||Bt(Ut,nn,tn),dn=()=>Gt||sn(),Qn=()=>!Gt||Kt();for(let En=Wt,an=Wt;En<=Xt;++En)ln=tt[En%Ft],!ln.skip&&(tn=Vt(ln[it]),tn!==nn&&(Gt=Bt(tn,ot,Ut),en===null&&dn()&&(en=Qt(tn,ot)===0?En:an),en!==null&&Qn()&&(Mt.push(normalizeSegment({start:en,end:En,loop:Zt,count:Ft,style:Yt})),en=null),an=En,nn=tn));return en!==null&&Mt.push(normalizeSegment({start:en,end:Xt,loop:Zt,count:Ft,style:Yt})),Mt}function _boundSegments(et,tt){const nt=[],it=et.segments;for(let ot=0;otot&&et[Ut%tt].skip;)Ut--;return Ut%=tt,{start:ot,end:Ut}}function solidSegments(et,tt,nt,it){const ot=et.length,Ut=[];let Ft=tt,Qt=et[tt],Bt;for(Bt=tt+1;Bt<=nt;++Bt){const Vt=et[Bt%ot];Vt.skip||Vt.stop?Qt.skip||(it=!1,Ut.push({start:tt%ot,end:(Bt-1)%ot,loop:it}),tt=Ft=Vt.stop?Bt:null):(Ft=Bt,Qt.skip&&(tt=Bt)),Qt=Vt}return Ft!==null&&Ut.push({start:tt%ot,end:Ft%ot,loop:it}),Ut}function _computeSegments(et,tt){const nt=et.points,it=et.options.spanGaps,ot=nt.length;if(!ot)return[];const Ut=!!et._loop,{start:Ft,end:Qt}=findStartAndEnd(nt,ot,Ut,it);if(it===!0)return splitByStyles(et,[{start:Ft,end:Qt,loop:Ut}],nt,tt);const Bt=Qttt({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 lt=_[rt];let ut=_e[rt];const Ut=j.get(rt);if(ut)if(Ut&&ut.active()){ut.update(Ut,lt,tt);continue}else ut.cancel();if(!Ut||!Ut.duration){s[rt]=lt;continue}_e[rt]=ut=new Animation(Ut,s,rt,lt),$.push(ut)}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,lt=getStackKey(_e,et,j),ut=s.length;let Ut;for(let ot=0;ot_[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(),$=(ut,Ut,ot,st)=>ut==="x"?Ut:ut==="r"?st:ot,_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),lt=_.vAxisID=$(nt,et,_e,tt);_.xScale=this.getScaleForId(_e),_.yScale=this.getScaleForId(et),_.rScale=this.getScaleForId(tt),_.iScale=this.getScaleForId(rt),_.vScale=this.getScaleForId(lt)}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],lt,ut,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 ot=()=>ut[tt]===null||rt&&ut[tt]dt||ut=0;--Ut)if(!st()){this.updateRangeFromParsed(rt,s,ot,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 lt;for(j.dataset&&j.dataset.draw(s,_e,tt,nt),lt=tt;lt=0&&sthis.getContext(j,$,_),dt=rt.resolveNamedOptions(Ut,ot,st,ut);return dt.$shared&&(dt.$shared=nt,_e[et]=Object.freeze(cloneIfNotShared(dt,nt))),dt}_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 lt=this.chart.config,ut=lt.datasetAnimationScopeKeys(this._type,_),Ut=lt.getOptionScopes(this.getDataset(),ut);nt=lt.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,lt,ut,Ut;for(rt=_,lt=_+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(_),lt=rt&&rt[nt.vScale.axis];if(isNullOrUndef(lt)||isNaN(lt))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(_,$),lt=et.axis,ut=tt.axis;for(let Ut=_;Ut<_+j;Ut++){const ot=s[Ut],st=!_e&&this.getParsed(Ut),dt={},St=dt[lt]=_e?et.getPixelForDecimal(.5):et.getPixelForValue(st[lt]),pt=dt[ut]=_e?tt.getBasePixel():tt.getPixelForValue(st[ut]);dt.skip=isNaN(St)||isNaN(pt),rt&&(dt.options=nt||this.resolveDataElementOptions(Ut,ot.active?"active":$),_e&&(dt.options.radius=0)),this.updateElement(ot,Ut,dt,$)}}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),$}}dr(BubbleController,"id","bubble"),dr(BubbleController,"defaults",{datasetElementType:!1,dataElementType:"point",animations:{numbers:{type:"number",properties:["x","y","borderWidth","radius"]}}}),dr(BubbleController,"overrides",{scales:{x:{type:"linear"},y:{type:"linear"}}});function getRatioAndOffset(o,s,_){let j=1,$=1,_e=0,et=0;if(s_angleBetween(Bt,tt,nt,!0)?1:Math.max(ht,ht*_,mt,mt*_),st=(Bt,ht,mt)=>_angleBetween(Bt,tt,nt,!0)?-1:Math.min(ht,ht*_,mt,mt*_),dt=ot(0,rt,ut),St=ot(HALF_PI,lt,Ut),pt=st(PI,rt,ut),Rt=st(PI+HALF_PI,lt,Ut);j=(dt-pt)/2,$=(St-Rt)/2,_e=-(dt+pt)/2,et=-(St+Rt)/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"}),dr(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:lt,includeOptions:ut}=this._getSharedOptions(_,$),Ut=et.axis,ot=tt.axis,{spanGaps:st,segment:dt}=this.options,St=isNumber(st)?st:Number.POSITIVE_INFINITY,pt=this.chart._animationsDisabled||_e||$==="none",Rt=_+j,Bt=s.length;let ht=_>0&&this.getParsed(_-1);for(let mt=0;mt=Rt){Vt.skip=!0;continue}const Tt=this.getParsed(mt),ft=isNullOrUndef(Tt[ot]),Wt=Vt[Ut]=et.getPixelForValue(Tt[Ut],mt),yt=Vt[ot]=_e||ft?tt.getBasePixel():tt.getPixelForValue(nt?this.applyStack(tt,Tt,nt):Tt[ot],mt);Vt.skip=isNaN(Wt)||isNaN(yt)||ft,Vt.stop=mt>0&&Math.abs(Tt[Ut]-ht[Ut])>St,dt&&(Vt.parsed=Tt,Vt.raw=rt.data[mt]),ut&&(Vt.options=lt||this.resolveDataElementOptions(mt,gt.active?"active":$)),pt||this.updateElement(gt,mt,Vt,$),ht=Tt}}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()}}dr(LineController,"id","line"),dr(LineController,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),dr(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,lt=rt.xCenter,ut=rt.yCenter,Ut=rt.getIndexAngle(0)-.5*PI;let ot=Ut,st;const dt=360/this.countVisibleElements();for(st=0;st<_;++st)ot+=this._computeAngle(st,$,dt);for(st=_;st<_+j;st++){const St=s[st];let pt=ot,Rt=ot+this._computeAngle(st,$,dt),Bt=et.getDataVisibility(st)?rt.getDistanceFromCenterForValue(this.getParsed(st).r):0;ot=Rt,_e&&(nt.animateScale&&(Bt=0),nt.animateRotate&&(pt=Rt=Ut));const ht={x:lt,y:ut,innerRadius:0,outerRadius:Bt,startAngle:pt,endAngle:Rt,options:this.resolveDataElementOptions(st,St.active?"active":$)};this.updateElement(St,st,ht,$)}}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}}dr(PolarAreaController,"id","polarArea"),dr(PolarAreaController,"defaults",{dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0}),dr(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{}dr(PieController,"id","pie"),dr(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":$),lt=_e.getPointPositionForValue(tt,this.getParsed(tt).r),ut=et?_e.xCenter:lt.x,Ut=et?_e.yCenter:lt.y,ot={x:ut,y:Ut,angle:lt.angle,skip:isNaN(ut)||isNaN(Ut),options:rt};this.updateElement(nt,tt,ot,$)}}}dr(RadarController,"id","radar"),dr(RadarController,"defaults",{datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}}),dr(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,lt=this.resolveDataElementOptions(_,$),ut=this.getSharedOptions(lt),Ut=this.includeOptions($,ut),ot=et.axis,st=tt.axis,{spanGaps:dt,segment:St}=this.options,pt=isNumber(dt)?dt:Number.POSITIVE_INFINITY,Rt=this.chart._animationsDisabled||_e||$==="none";let Bt=_>0&&this.getParsed(_-1);for(let ht=_;ht<_+j;++ht){const mt=s[ht],gt=this.getParsed(ht),Vt=Rt?mt:{},Tt=isNullOrUndef(gt[st]),ft=Vt[ot]=et.getPixelForValue(gt[ot],ht),Wt=Vt[st]=_e||Tt?tt.getBasePixel():tt.getPixelForValue(nt?this.applyStack(tt,gt,nt):gt[st],ht);Vt.skip=isNaN(ft)||isNaN(Wt)||Tt,Vt.stop=ht>0&&Math.abs(gt[ot]-Bt[ot])>pt,St&&(Vt.parsed=gt,Vt.raw=rt.data[ht]),Ut&&(Vt.options=ut||this.resolveDataElementOptions(ht,mt.active?"active":$)),Rt||this.updateElement(mt,ht,Vt,$),Bt=gt}this.updateSharedOptions(ut,$,lt)}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}}dr(ScatterController,"id","scatter"),dr(ScatterController,"defaults",{datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1}),dr(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],lt=typeof rt.getRange=="function"&&rt.getRange(s);if(lt){const ut=nt(_e,s,_-lt),Ut=nt(_e,s,_+lt);return{lo:ut.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:lt}),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 lt=tt[0].index,ut=rt.data[lt];ut&&!ut.skip&&nt.push({element:ut,datasetIndex:rt.index,index:lt})}),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 lt=0;lt_.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 ut=j[_.stack]||{size:0,count:1};ut.size=Math.max(ut.size,_.horizontal?_e.height:_e.width),_.size=ut.size/ut.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,lt=nt!==o.h;return o.w=tt,o.h=nt,_.horizontal?{same:rt,other:lt}:{same:lt,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,lt;for(_e=0,et=o.length,rt=0;_e{typeof dt.beforeLayout=="function"&&dt.beforeLayout()});const lt=nt.reduce((dt,St)=>St.box.options&&St.box.options.display===!1?dt:dt+1,0)||1,ut=Object.freeze({outerWidth:s,outerHeight:_,padding:$,availableWidth:_e,availableHeight:et,vBoxMaxWidth:_e/2/lt,hBoxMaxHeight:et/2}),Ut=Object.assign({},$);updateMaxPadding(Ut,toPadding(j));const ot=Object.assign({maxPadding:Ut,w:_e,h:et,x:$.left,y:$.top},$),st=setLayoutDims(nt.concat(rt),ut);fitBoxes(tt.fullSize,ot,ut,st),fitBoxes(nt,ot,ut,st),fitBoxes(rt,ot,ut,st)&&fitBoxes(nt,ot,ut,st),handleMaxPadding(ot),placeBoxes(tt.leftAndTop,ot,ut,st),ot.x+=ot.w,ot.y+=ot.h,placeBoxes(tt.rightAndBottom,ot,ut,st),o.chartArea={left:ot.left,top:ot.top,right:ot.left+ot.w,bottom:ot.top+ot.h,height:ot.h,width:ot.w},each(tt.chartArea,dt=>{const St=dt.box;Object.assign(St,o.chartArea),St.update(ot.w,ot.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,lt=nt.contentRect.height;rt===0&<===0||_e(rt,lt)});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(){dr(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]}),$}}dr(Element,"defaults",{}),dr(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 lt=calculateSpacing(_e,s,$);if(et>0){let ut,Ut;const ot=et>1?Math.round((nt-tt)/(et-1)):null;for(skip(s,rt,lt,isNullOrUndef(ot)?0:tt-ot,tt),ut=0,Ut=et-1;ut$)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:lt}=nt;let ut=0,Ut,ot,st;const dt=et-$,St=tt-_e;if(o.isHorizontal()){if(ot=_alignStartEnd(j,_e,tt),isObject(_)){const pt=Object.keys(_)[0],Rt=_[pt];st=lt[pt].getPixelForValue(Rt)+dt-s}else _==="center"?st=(rt.bottom+rt.top)/2+dt-s:st=offsetFromEdge(o,_,s);Ut=tt-_e}else{if(isObject(_)){const pt=Object.keys(_)[0],Rt=_[pt];ot=lt[pt].getPixelForValue(Rt)-St+s}else _==="center"?ot=(rt.left+rt.right)/2-St+s:ot=offsetFromEdge(o,_,s);st=_alignStartEnd(j,et,$),ut=_==="left"?-HALF_PI:HALF_PI}return{titleX:ot,titleY:st,maxWidth:Ut,rotation:ut}}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 lt=this._getLabelSizes(),ut=lt.widest.width,Ut=lt.highest.height,ot=_limitValue(this.chart.width-ut,0,this.maxWidth);tt=s.offset?this.maxWidth/j:ot/(j-1),ut+6>tt&&(tt=ot/(j-(s.offset?.5:1)),nt=this.maxHeight-getTickMarkLength(s.grid)-_.padding-getTitleHeight(s.title,this.chart.options.font),rt=Math.sqrt(ut*ut+Ut*Ut),et=toDegrees(Math.min(Math.asin(_limitValue((lt.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:lt,widest:ut,highest:Ut}=this._getLabelSizes(),ot=j.padding*2,st=toRadians(this.labelRotation),dt=Math.cos(st),St=Math.sin(st);if(tt){const pt=j.mirror?0:St*ut.width+dt*Ut.height;s.height=Math.min(this.maxHeight,s.height+pt+ot)}else{const pt=j.mirror?0:dt*ut.width+St*Ut.height;s.width=Math.min(this.maxWidth,s.width+pt+ot)}this._calculatePadding(rt,lt,St,dt)}}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 lt=this.getPixelForTick(0)-this.left,ut=this.right-this.getPixelForTick(this.ticks.length-1);let Ut=0,ot=0;nt?rt?(Ut=$*s.width,ot=j*_.height):(Ut=j*s.height,ot=$*_.width):_e==="start"?ot=_.width:_e==="end"?Ut=s.width:_e!=="inner"&&(Ut=s.width/2,ot=_.width/2),this.paddingLeft=Math.max((Ut-lt+et)*this.width/(this.width-lt),0),this.paddingRight=Math.max((ot-ut+et)*this.width/(this.width-ut),0)}else{let lt=_.height/2,ut=s.height/2;_e==="start"?(lt=0,ut=s.height):_e==="end"&&(lt=_.height,ut=0),this.paddingTop=lt+et,this.paddingBottom=ut+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[ft]||0,height:tt[ft]||0});return{first:Tt(0),last:Tt(_-1),widest:Tt(gt),highest:Tt(Vt),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(),ut=this.ticks.length+(nt?1:0),Ut=getTickMarkLength(_e),ot=[],st=tt.setContext(this.getContext()),dt=st.display?st.width:0,St=dt/2,pt=function(qt){return _alignPixel(j,qt,dt)};let Rt,Bt,ht,mt,gt,Vt,Tt,ft,Wt,yt,Kt,$t;if(et==="top")Rt=pt(this.bottom),Vt=this.bottom-Ut,ft=Rt-St,yt=pt(s.top)+St,$t=s.bottom;else if(et==="bottom")Rt=pt(this.top),yt=s.top,$t=pt(s.bottom)-St,Vt=Rt+St,ft=this.top+Ut;else if(et==="left")Rt=pt(this.right),gt=this.right-Ut,Tt=Rt-St,Wt=pt(s.left)+St,Kt=s.right;else if(et==="right")Rt=pt(this.left),Wt=s.left,Kt=pt(s.right)-St,gt=Rt+St,Tt=this.left+Ut;else if(_==="x"){if(et==="center")Rt=pt((s.top+s.bottom)/2+.5);else if(isObject(et)){const qt=Object.keys(et)[0],kt=et[qt];Rt=pt(this.chart.scales[qt].getPixelForValue(kt))}yt=s.top,$t=s.bottom,Vt=Rt+St,ft=Vt+Ut}else if(_==="y"){if(et==="center")Rt=pt((s.left+s.right)/2);else if(isObject(et)){const qt=Object.keys(et)[0],kt=et[qt];Rt=pt(this.chart.scales[qt].getPixelForValue(kt))}gt=Rt-St,Tt=gt-Ut,Wt=s.left,Kt=s.right}const Ht=valueOrDefault($.ticks.maxTicksLimit,ut),Nt=Math.max(1,Math.ceil(ut/Ht));for(Bt=0;Bt_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,lt)=>{!lt.width||!lt.color||(j.save(),j.lineWidth=lt.width,j.strokeStyle=lt.color,j.setLineDash(lt.borderDash||[]),j.lineDashOffset=lt.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,$),lt=_.scales||{};_e[et]=mergeIf(Object.create(null),[{axis:nt},tt,lt[nt],lt[rt]])}),o.data.datasets.forEach(et=>{const tt=et.type||o.type,nt=et.indexAxis||getIndexAxis(tt,s),lt=(overrides[tt]||{}).scales||{};Object.keys(lt).forEach(ut=>{const Ut=getAxisFromDefaultScaleID(ut,nt),ot=et[Ut+"AxisID"]||Ut;_e[ot]=_e[ot]||Object.create(null),mergeIf(_e[ot],[{axis:Ut},j[ot],lt[ut]])})}),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(lt=>{s&&(nt.add(s),lt.forEach(ut=>addIfFound(nt,s,ut))),lt.forEach(ut=>addIfFound(nt,$,ut)),lt.forEach(ut=>addIfFound(nt,overrides[_e]||{},ut)),lt.forEach(ut=>addIfFound(nt,defaults,ut)),lt.forEach(ut=>addIfFound(nt,descriptors,ut))});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,lt=nt&&nt.width;if(this.id=uid(),this.ctx=tt,this.canvas=nt,this.width=lt,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(ut=>this.update(ut),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",lt=nt==="x";return{options:tt,dposition:rt?"chartArea":lt?"bottom":"left",dtype:rt?"radialLinear":lt?"category":"linear"}}))),each(_e,et=>{const tt=et.options,nt=tt.id,rt=determineAxis(nt,tt),lt=valueOrDefault(tt.type,et.dtype);(tt.position===void 0||positionIsHorizontal(tt.position,rt)!==positionIsHorizontal(et.dposition))&&(tt.position=et.dposition),$[nt]=!0;let ut=null;if(nt in j&&j[nt].type===lt)ut=j[nt];else{const Ut=registry.getScale(lt);ut=new Ut({id:nt,type:lt,ctx:this.ctx,chart:this}),j[ut.id]=ut}ut.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:lt}=defaults.datasets[tt];Object.assign(nt,{dataElementType:registry.getElement(lt),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,lt=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(lt=>!rt.some(ut=>lt.datasetIndex===ut.datasetIndex&<.index===ut.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 lt=!_elementsEqual(tt,$);return(lt||_)&&(this._active=tt,this._updateHoverStyles(tt,$,_)),this._lastEvent=rt,lt}_getActiveElements(s,_,j,$){if(s.type==="mouseout")return[];if(!j)return _;const _e=this.options.hover;return this.getElementsAtEventForMode(s,_e.mode,_e,$)}}dr(Chart,"defaults",defaults),dr(Chart,"instances",instances),dr(Chart,"overrides",overrides),dr(Chart,"registry",registry),dr(Chart,"version",version),dr(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:lt}=s,ut=Math.max(s.outerRadius+j+_-rt,0),Ut=lt>0?lt+j+_+rt:0;let ot=0;const st=$-nt;if(j){const Nt=lt>0?lt-j:0,qt=ut>0?ut-j:0,kt=(Nt+qt)/2,bt=kt!==0?st*kt/(kt+j):st;ot=(st-bt)/2}const dt=Math.max(.001,st*ut-_/PI)/ut,St=(st-dt)/2,pt=nt+St+ot,Rt=$-St-ot,{outerStart:Bt,outerEnd:ht,innerStart:mt,innerEnd:gt}=parseBorderRadius$1(s,Ut,ut,Rt-pt),Vt=ut-Bt,Tt=ut-ht,ft=pt+Bt/Vt,Wt=Rt-ht/Tt,yt=Ut+mt,Kt=Ut+gt,$t=pt+mt/yt,Ht=Rt-gt/Kt;if(o.beginPath(),_e){const Nt=(ft+Wt)/2;if(o.arc(et,tt,ut,ft,Nt),o.arc(et,tt,ut,Nt,Wt),ht>0){const Jt=rThetaToXY(Tt,Wt,et,tt);o.arc(Jt.x,Jt.y,ht,Wt,Rt+HALF_PI)}const qt=rThetaToXY(Kt,Rt,et,tt);if(o.lineTo(qt.x,qt.y),gt>0){const Jt=rThetaToXY(Kt,Ht,et,tt);o.arc(Jt.x,Jt.y,gt,Rt+HALF_PI,Ht+Math.PI)}const kt=(Rt-gt/Ut+(pt+mt/Ut))/2;if(o.arc(et,tt,Ut,Rt-gt/Ut,kt,!0),o.arc(et,tt,Ut,kt,pt+mt/Ut,!0),mt>0){const Jt=rThetaToXY(yt,$t,et,tt);o.arc(Jt.x,Jt.y,mt,$t+Math.PI,pt-HALF_PI)}const bt=rThetaToXY(Vt,pt,et,tt);if(o.lineTo(bt.x,bt.y),Bt>0){const Jt=rThetaToXY(Vt,ft,et,tt);o.arc(Jt.x,Jt.y,Bt,pt-HALF_PI,ft)}}else{o.moveTo(et,tt);const Nt=Math.cos(ft)*ut+et,qt=Math.sin(ft)*ut+tt;o.lineTo(Nt,qt);const kt=Math.cos(Wt)*ut+et,bt=Math.sin(Wt)*ut+tt;o.lineTo(kt,bt)}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:lt}=nt,ut=nt.borderAlign==="inner";if(!rt)return;ut?(o.lineWidth=rt*2,o.lineJoin=lt||"round"):(o.lineWidth=rt,o.lineJoin=lt||"bevel");let Ut=s.endAngle;if(_e){pathArc(o,s,_,j,Ut,$);for(let ot=0;ot<_e;++ot)o.stroke();isNaN(tt)||(Ut=et+(tt%TAU||TAU))}ut&&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:lt,circumference:ut}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],j),Ut=this.options.spacing/2,st=valueOrDefault(ut,nt-tt)>=TAU||_angleBetween(_e,tt,nt),dt=_isBetween(et,rt+Ut,lt+Ut);return st&&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,lt=($+_e)/2,ut=(et+tt+rt+nt)/2;return{x:_+Math.cos(lt)*ut,y:j+Math.sin(lt)*ut}}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()}}dr(ArcElement,"id","arc"),dr(ArcElement,"defaults",{borderAlign:"center",borderColor:"#fff",borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0}),dr(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),lt=$tt&&_e>tt;return{count:j,start:nt,loop:s.loop,ilen:rt(et+(rt?tt-ht:ht))%_e,Bt=()=>{dt!==St&&(o.lineTo(lt,St),o.lineTo(lt,dt),o.lineTo(lt,pt))};for(nt&&(ot=$[Rt(0)],o.moveTo(ot.x,ot.y)),Ut=0;Ut<=tt;++Ut){if(ot=$[Rt(Ut)],ot.skip)continue;const ht=ot.x,mt=ot.y,gt=ht|0;gt===st?(mtSt&&(St=mt),lt=(ut*lt+ht)/++ut):(Bt(),o.lineTo(ht,mt),st=gt,ut=0,dt=St=mt),pt=mt}Bt()}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,lt;for(rt=0,lt=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 lt=s,ut,Ut,ot,st,dt;for(et[nt++]=o[lt],ut=0;ut<_e-2;ut++){let St=0,pt=0,Rt;const Bt=Math.floor((ut+1)*tt)+1+s,ht=Math.min(Math.floor((ut+2)*tt)+1,_)+s,mt=ht-Bt;for(Rt=Bt;Rtot&&(ot=st,Ut=o[Rt],dt=Rt);et[nt++]=Ut,lt=dt}return et[nt++]=o[rt],et}function minMaxDecimation(o,s,_,j){let $=0,_e=0,et,tt,nt,rt,lt,ut,Ut,ot,st,dt;const St=[],pt=s+_-1,Rt=o[s].x,ht=o[pt].x-Rt;for(et=s;etdt&&(dt=rt,Ut=et),$=(_e*$+tt.x)/++_e;else{const gt=et-1;if(!isNullOrUndef(ut)&&!isNullOrUndef(Ut)){const Vt=Math.min(ut,Ut),Tt=Math.max(ut,Ut);Vt!==ot&&Vt!==gt&&St.push({...o[Vt],x:$}),Tt!==ot&&Tt!==gt&&St.push({...o[Tt],x:$})}et>0&>!==ot&&St.push(o[gt]),St.push(tt),lt=mt,_e=0,st=dt=rt,ut=Ut=ot=et}}return St}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 lt=o.scales[nt.xAxisID];if(lt.type!=="linear"&<.type!=="time"||o.options.parsing)return;let{start:ut,count:Ut}=getStartAndCountOfVisiblePointsSimplified(nt,rt);const ot=_.threshold||4*j;if(Ut<=ot){cleanDecimatedDataset($);return}isNullOrUndef(et)&&($._data=rt,delete $.data,Object.defineProperty($,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(dt){this._data=dt}}));let st;switch(_.algorithm){case"lttb":st=lttbDecimation(rt,ut,Ut,j,_);break;case"min-max":st=minMaxDecimation(rt,ut,Ut,j);break;default:throw new Error(`Unsupported decimation algorithm '${_.algorithm}'`)}$._decimated=st})},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 lt=_getBounds(_,$[nt],$[rt],tt.loop);if(!s.segments){et.push({source:tt,target:lt,start:$[nt],end:$[rt]});continue}const ut=_boundSegments(s,lt);for(const Ut of ut){const ot=_getBounds(_,_e[Ut.start],_e[Ut.end],Ut.loop),st=_boundSegment(tt,$,ot);for(const dt of st)et.push({source:dt,target:Ut,start:{[_]:_getEdge(lt,ot,"start",Math.max)},end:{[_]:_getEdge(lt,ot,"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 lt=rt.start;lt<=rt.end;lt++)addPointsBelow($,et[lt],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,lt;_.font=$.string,this.isHorizontal()?(rt=this.maxWidth,lt=this._fitRows(et,_e,tt,nt)+10):(lt=this.maxHeight,rt=this._fitCols(et,$,tt,nt)+10),this.width=Math.min(rt,s.maxWidth||this.maxWidth),this.height=Math.min(lt,s.maxHeight||this.maxHeight)}_fitRows(s,_,j,$){const{ctx:_e,maxWidth:et,options:{labels:{padding:tt}}}=this,nt=this.legendHitBoxes=[],rt=this.lineWidths=[0],lt=$+tt;let ut=s;_e.textAlign="left",_e.textBaseline="middle";let Ut=-1,ot=-lt;return this.legendItems.forEach((st,dt)=>{const St=j+_/2+_e.measureText(st.text).width;(dt===0||rt[rt.length-1]+St+2*tt>et)&&(ut+=lt,rt[rt.length-(dt>0?0:1)]=0,ot+=lt,Ut++),nt[dt]={left:0,top:ot,row:Ut,width:St,height:$},rt[rt.length-1]+=St+tt}),ut}_fitCols(s,_,j,$){const{ctx:_e,maxHeight:et,options:{labels:{padding:tt}}}=this,nt=this.legendHitBoxes=[],rt=this.columnSizes=[],lt=et-s;let ut=tt,Ut=0,ot=0,st=0,dt=0;return this.legendItems.forEach((St,pt)=>{const{itemWidth:Rt,itemHeight:Bt}=calculateItemSize(j,_,_e,St,$);pt>0&&ot+Bt+2*tt>lt&&(ut+=Ut+tt,rt.push({width:Ut,height:ot}),st+=Ut+tt,dt++,Ut=ot=0),nt[pt]={left:st,top:ot,col:dt,width:Rt,height:Bt},Ut=Math.max(Ut,Rt),ot+=Bt+tt}),ut+=Ut,rt.push({width:Ut,height:ot}),ut}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:lt}=et,ut=rt.size,Ut=ut/2;let ot;this.drawTitle(),$.textAlign=nt.textAlign("left"),$.textBaseline="middle",$.lineWidth=.5,$.font=rt.string;const{boxWidth:st,boxHeight:dt,itemHeight:St}=getBoxSize(et,ut),pt=function(gt,Vt,Tt){if(isNaN(st)||st<=0||isNaN(dt)||dt<0)return;$.save();const ft=valueOrDefault(Tt.lineWidth,1);if($.fillStyle=valueOrDefault(Tt.fillStyle,tt),$.lineCap=valueOrDefault(Tt.lineCap,"butt"),$.lineDashOffset=valueOrDefault(Tt.lineDashOffset,0),$.lineJoin=valueOrDefault(Tt.lineJoin,"miter"),$.lineWidth=ft,$.strokeStyle=valueOrDefault(Tt.strokeStyle,tt),$.setLineDash(valueOrDefault(Tt.lineDash,[])),et.usePointStyle){const Wt={radius:dt*Math.SQRT2/2,pointStyle:Tt.pointStyle,rotation:Tt.rotation,borderWidth:ft},yt=nt.xPlus(gt,st/2),Kt=Vt+Ut;drawPointLegend($,Wt,yt,Kt,et.pointStyleWidth&&st)}else{const Wt=Vt+Math.max((ut-dt)/2,0),yt=nt.leftForLtr(gt,st),Kt=toTRBLCorners(Tt.borderRadius);$.beginPath(),Object.values(Kt).some($t=>$t!==0)?addRoundedRectPath($,{x:yt,y:Wt,w:st,h:dt,radius:Kt}):$.rect(yt,Wt,st,dt),$.fill(),ft!==0&&$.stroke()}$.restore()},Rt=function(gt,Vt,Tt){renderText($,Tt.text,gt,Vt+St/2,rt,{strikethrough:Tt.hidden,textAlign:nt.textAlign(Tt.textAlign)})},Bt=this.isHorizontal(),ht=this._computeTitleHeight();Bt?ot={x:_alignStartEnd(_e,this.left+lt,this.right-j[0]),y:this.top+lt+ht,line:0}:ot={x:this.left+lt,y:_alignStartEnd(_e,this.top+ht+lt,this.bottom-_[0].height),line:0},overrideTextDirection(this.ctx,s.textDirection);const mt=St+lt;this.legendItems.forEach((gt,Vt)=>{$.strokeStyle=gt.fontColor,$.fillStyle=gt.fontColor;const Tt=$.measureText(gt.text).width,ft=nt.textAlign(gt.textAlign||(gt.textAlign=et.textAlign)),Wt=st+Ut+Tt;let yt=ot.x,Kt=ot.y;nt.setWidth(this.width),Bt?Vt>0&&yt+Wt+lt>this.right&&(Kt=ot.y+=mt,ot.line++,yt=ot.x=_alignStartEnd(_e,this.left+lt,this.right-j[ot.line])):Vt>0&&Kt+mt>this.bottom&&(yt=ot.x=yt+_[ot.line].width+lt,ot.line++,Kt=ot.y=_alignStartEnd(_e,this.top+ht+lt,this.bottom-_[ot.line].height));const $t=nt.x(yt);if(pt($t,Kt,gt),yt=_textX(ft,yt+st+Ut,Bt?yt+Wt:this.right,s.rtl),Rt(nt.x(yt),Kt,gt),Bt)ot.x+=Wt+lt;else if(typeof gt.text!="string"){const Ht=rt.lineHeight;ot.y+=calculateLegendItemHeight(gt,Ht)}else ot.y+=mt}),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 lt,ut=this.left,Ut=this.width;if(this.isHorizontal())Ut=Math.max(...this.lineWidths),lt=this.top+rt,ut=_alignStartEnd(s.align,ut,this.right-Ut);else{const st=this.columnSizes.reduce((dt,St)=>Math.max(dt,St.height),0);lt=rt+_alignStartEnd(s.align,this.top,this.bottom-st-s.labels.padding-this._computeTitleHeight())}const ot=_alignStartEnd(tt,ut,ut+Ut);et.textAlign=_e.textAlign(_toLeftRightCenter(tt)),et.textBaseline="middle",et.strokeStyle=_.color,et.fillStyle=_.color,et.font=j.string,renderText(et,_.text,ot,lt,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),lt=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:(lt.width+lt.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,lt,ut;return this.isHorizontal()?(lt=_alignStartEnd(tt,j,_e),ut=_+s,rt=_e-j):(et.position==="left"?(lt=j+s,ut=_alignStartEnd(tt,$,_),nt=PI*-.5):(lt=_e-s,ut=_alignStartEnd(tt,_,$),nt=PI*.5),rt=$-_),{titleX:lt,titleY:ut,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),lt=toFont(s.footerFont),ut=_e.length,Ut=$.length,ot=j.length,st=toPadding(s.padding);let dt=st.height,St=0,pt=j.reduce((ht,mt)=>ht+mt.before.length+mt.lines.length+mt.after.length,0);if(pt+=o.beforeBody.length+o.afterBody.length,ut&&(dt+=ut*rt.lineHeight+(ut-1)*s.titleSpacing+s.titleMarginBottom),pt){const ht=s.displayColors?Math.max(tt,nt.lineHeight):nt.lineHeight;dt+=ot*ht+(pt-ot)*nt.lineHeight+(pt-1)*s.bodySpacing}Ut&&(dt+=s.footerMarginTop+Ut*lt.lineHeight+(Ut-1)*s.footerSpacing);let Rt=0;const Bt=function(ht){St=Math.max(St,_.measureText(ht).width+Rt)};return _.save(),_.font=rt.string,each(o.title,Bt),_.font=nt.string,each(o.beforeBody.concat(o.afterBody),Bt),Rt=s.displayColors?et+2+s.boxPadding:0,each(j,ht=>{each(ht.before,Bt),each(ht.lines,Bt),each(ht.after,Bt)}),Rt=0,_.font=lt.string,each(o.footer,Bt),_.restore(),St+=st.width,{width:St,height:dt}}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:lt,topRight:ut,bottomLeft:Ut,bottomRight:ot}=toTRBLCorners(et);let st=alignX(s,tt);const dt=alignY(s,nt,rt);return nt==="center"?tt==="left"?st+=rt:tt==="right"&&(st-=rt):tt==="left"?st-=Math.max(lt,Ut)+$:tt==="right"&&(st+=Math.max(ut,ot)+$),{x:_limitValue(st,0,j.width-s.width),y:_limitValue(dt,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(lt,ut,Ut,j))),s.itemSort&&(tt=tt.sort((lt,ut)=>s.itemSort(lt,ut,j))),each(tt,lt=>{const ut=overrideCallbacks(s.callbacks,lt);$.push(invokeCallbackWithFallback(ut,"labelColor",this,lt)),_e.push(invokeCallbackWithFallback(ut,"labelPointStyle",this,lt)),et.push(invokeCallbackWithFallback(ut,"labelTextColor",this,lt))}),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),lt=determineAlignment(this.chart,j,rt),ut=getBackgroundPoint(j,rt,lt,this.chart);this.xAlign=lt.xAlign,this.yAlign=lt.yAlign,_e={opacity:1,x:ut.x,y:ut.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:lt,bottomRight:ut}=toTRBLCorners(tt),{x:Ut,y:ot}=s,{width:st,height:dt}=_;let St,pt,Rt,Bt,ht,mt;return _e==="center"?(ht=ot+dt/2,$==="left"?(St=Ut,pt=St-et,Bt=ht+et,mt=ht-et):(St=Ut+st,pt=St+et,Bt=ht-et,mt=ht+et),Rt=St):($==="left"?pt=Ut+Math.max(nt,lt)+et:$==="right"?pt=Ut+st-Math.max(rt,ut)-et:pt=this.caretX,_e==="top"?(Bt=ot,ht=Bt-et,St=pt-et,Rt=pt+et):(Bt=ot+dt,ht=Bt+et,St=pt+et,Rt=pt-et),mt=Bt),{x1:St,x2:pt,x3:Rt,y1:Bt,y2:ht,y3:mt}}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:lt}=_e,ut=toFont(_e.bodyFont),Ut=getAlignedX(this,"left",_e),ot=$.x(Ut),st=ntBt!==0)?(s.beginPath(),s.fillStyle=_e.multiKeyBackground,addRoundedRectPath(s,{x:St,y:dt,w:rt,h:nt,radius:Rt}),s.fill(),s.stroke(),s.fillStyle=et.backgroundColor,s.beginPath(),addRoundedRectPath(s,{x:pt,y:dt+1,w:rt-2,h:nt-2,radius:Rt}),s.fill()):(s.fillStyle=_e.multiKeyBackground,s.fillRect(St,dt,rt,nt),s.strokeRect(St,dt,rt,nt),s.fillStyle=et.backgroundColor,s.fillRect(pt,dt+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:lt}=j,ut=toFont(j.bodyFont);let Ut=ut.lineHeight,ot=0;const st=getRtlAdapter(j.rtl,this.x,this.width),dt=function(Tt){_.fillText(Tt,st.x(s.x+ot),s.y+Ut/2),s.y+=Ut+_e},St=st.textAlign(et);let pt,Rt,Bt,ht,mt,gt,Vt;for(_.textAlign=et,_.textBaseline="middle",_.font=ut.string,s.x=getAlignedX(this,St,j),_.fillStyle=j.bodyColor,each(this.beforeBody,dt),ot=tt&&St!=="right"?et==="center"?rt/2+lt:rt+2+lt:0,ht=0,gt=$.length;ht0&&_.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),lt=getBackgroundPoint(s,nt,rt,_);($._to!==lt.x||_e._to!==lt.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,lt))}}_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)}}dr(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}}dr(CategoryScale,"id","category"),dr(CategoryScale,"defaults",{ticks:{callback:_getLabelForValue}});function generateTicks$1(o,s){const _=[],{bounds:$,step:_e,min:et,max:tt,precision:nt,count:rt,maxTicks:lt,maxDigits:ut,includeBounds:Ut}=o,ot=_e||1,st=lt-1,{min:dt,max:St}=s,pt=!isNullOrUndef(et),Rt=!isNullOrUndef(tt),Bt=!isNullOrUndef(rt),ht=(St-dt)/(ut+1);let mt=niceNum((St-dt)/st/ot)*ot,gt,Vt,Tt,ft;if(mt<1e-14&&!pt&&!Rt)return[{value:dt},{value:St}];ft=Math.ceil(St/mt)-Math.floor(dt/mt),ft>st&&(mt=niceNum(ft*mt/st/ot)*ot),isNullOrUndef(nt)||(gt=Math.pow(10,nt),mt=Math.ceil(mt*gt)/gt),$==="ticks"?(Vt=Math.floor(dt/mt)*mt,Tt=Math.ceil(St/mt)*mt):(Vt=dt,Tt=St),pt&&Rt&&_e&&almostWhole((tt-et)/_e,mt/1e3)?(ft=Math.round(Math.min((tt-et)/mt,lt)),mt=(tt-et)/ft,Vt=et,Tt=tt):Bt?(Vt=pt?et:Vt,Tt=Rt?tt:Tt,ft=rt-1,mt=(Tt-Vt)/ft):(ft=(Tt-Vt)/mt,almostEquals(ft,Math.round(ft),mt/1e3)?ft=Math.round(ft):ft=Math.ceil(ft));const Wt=Math.max(_decimalPlaces(mt),_decimalPlaces(Vt));gt=Math.pow(10,isNullOrUndef(nt)?Wt:nt),Vt=Math.round(Vt*gt)/gt,Tt=Math.round(Tt*gt)/gt;let yt=0;for(pt&&(Ut&&Vt!==et?(_.push({value:et}),Vt$=_?$: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}}dr(LinearScale,"id","linear"),dr(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,lt=Math.floor((s-nt)/tt/10)*tt*10;let ut=Math.floor((rt-lt)/Math.pow(10,_e)),Ut=finiteOrDefault(o.min,Math.round((nt+lt+ut*Math.pow(10,_e))*et)/et);for(;Ut<_;)j.push({value:Ut,major:isMajor(Ut),significand:ut}),ut>=10?ut=ut<15?15:20:ut++,ut>=20&&(_e++,ut=2,et=_e>=0?1:et),Ut=Math.round((nt+lt+ut*Math.pow(10,_e))*et)/et;const ot=finiteOrDefault(o.max,Ut);return j.push({value:ot,major:isMajor(ot),significand:ut}),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)}}dr(LogarithmicScale,"id","logarithmic"),dr(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 lt=o.getPointPosition(nt,o.drawingArea+$[nt],tt),ut=toFont(rt.font),Ut=measureLabelSize(o.ctx,ut,o._pointLabels[nt]);j[nt]=Ut;const ot=_normalizeAngle(o.getIndexAngle(nt)+tt),st=Math.round(toDegrees(ot)),dt=determineLimits(st,lt.x,Ut.w,0,180),St=determineLimits(st,lt.y,Ut.h,90,270);updateLimits(_,s,ot,dt,St)}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 lt=o.getPointPosition(rt,tt+et+_[rt],nt),ut=Math.round(toDegrees(_normalizeAngle(lt.angle+HALF_PI))),Ut=s[rt],ot=yForAngle(lt.y,Ut.h,ut),st=getTextAlignForAngle(ut),dt=leftForTextAlign(lt.x,Ut.w,st);j.push({x:lt.x,y:ot,textAlign:st,left:dt,top:ot,right:dt+Ut.w,bottom:ot+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:lt,top:ut,right:Ut,bottom:ot}=o._pointLabelItems[$],{backdropColor:st}=_e;if(!isNullOrUndef(st)){const dt=toTRBLCorners(_e.borderRadius),St=toPadding(_e.backdropPadding);_.fillStyle=st;const pt=lt-St.left,Rt=ut-St.top,Bt=Ut-lt+St.width,ht=ot-ut+St.height;Object.values(dt).some(mt=>mt!==0)?(_.beginPath(),addRoundedRectPath(_,{x:pt,y:Rt,w:Bt,h:ht,radius:dt}),_.fill()):_.fillRect(pt,Rt,Bt,ht)}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((lt,ut)=>{if(ut!==0){nt=this.getDistanceFromCenterForValue(lt.value);const Ut=this.getContext(ut),ot=$.setContext(Ut),st=_e.setContext(Ut);drawRadiusLine(this,ot,nt,et,st)}}),j.display){for(s.save(),tt=et-1;tt>=0;tt--){const lt=j.setContext(this.getPointLabelContext(tt)),{color:ut,lineWidth:Ut}=lt;!Ut||!ut||(s.lineWidth=Ut,s.strokeStyle=ut,s.setLineDash(lt.borderDash),s.lineDashOffset=lt.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)),lt=toFont(rt.font);if(_e=this.getDistanceFromCenterForValue(this.ticks[nt].value),rt.showLabelBackdrop){s.font=lt.string,et=s.measureText(tt.label).width,s.fillStyle=rt.backdropColor;const ut=toPadding(rt.backdropPadding);s.fillRect(-et/2-ut.left,-_e-lt.size/2-ut.top,et+ut.width,lt.size+ut.height)}renderText(s,tt.label,0,-_e,lt,{color:rt.color})}),s.restore()}drawTitle(){}}dr(RadialLinearScale,"id","radialLinear"),dr(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}}),dr(RadialLinearScale,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),dr(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,lt={};let ut=_,Ut,ot;if(rt&&(ut=+s.startOf(ut,"isoWeek",nt)),ut=+s.startOf(ut,rt?"day":et),s.diff(j,_,et)>1e5*tt)throw new Error(_+" and "+j+" are too far apart with stepSize of "+tt+" "+et);const st=$.ticks.source==="data"&&this.getDataTimestamps();for(Ut=ut,ot=0;Utdt-St).map(dt=>+dt)}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,lt=nt&&tt[nt],ut=rt&&tt[rt],Ut=j[_],ot=rt&&ut&&Ut&&Ut.major;return this._adapter.format(s,$||(ot?ut:lt))}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,lt;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,_=` + */class Animator{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(tt,nt,it,ot){const Ut=nt.listeners[ot],Ft=nt.duration;Ut.forEach(Qt=>Qt({chart:tt,initial:nt.initial,numSteps:Ft,currentStep:Math.min(it-nt.start,Ft)}))}_refresh(){this._request||(this._running=!0,this._request=requestAnimFrame.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(tt=Date.now()){let nt=0;this._charts.forEach((it,ot)=>{if(!it.running||!it.items.length)return;const Ut=it.items;let Ft=Ut.length-1,Qt=!1,Bt;for(;Ft>=0;--Ft)Bt=Ut[Ft],Bt._active?(Bt._total>it.duration&&(it.duration=Bt._total),Bt.tick(tt),Qt=!0):(Ut[Ft]=Ut[Ut.length-1],Ut.pop());Qt&&(ot.draw(),this._notify(ot,it,tt,"progress")),Ut.length||(it.running=!1,this._notify(ot,it,tt,"complete"),it.initial=!1),nt+=Ut.length}),this._lastDate=tt,nt===0&&(this._running=!1)}_getAnims(tt){const nt=this._charts;let it=nt.get(tt);return it||(it={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},nt.set(tt,it)),it}listen(tt,nt,it){this._getAnims(tt).listeners[nt].push(it)}add(tt,nt){!nt||!nt.length||this._getAnims(tt).items.push(...nt)}has(tt){return this._getAnims(tt).items.length>0}start(tt){const nt=this._charts.get(tt);nt&&(nt.running=!0,nt.start=Date.now(),nt.duration=nt.items.reduce((it,ot)=>Math.max(it,ot._duration),0),this._refresh())}running(tt){if(!this._running)return!1;const nt=this._charts.get(tt);return!(!nt||!nt.running||!nt.items.length)}stop(tt){const nt=this._charts.get(tt);if(!nt||!nt.items.length)return;const it=nt.items;let ot=it.length-1;for(;ot>=0;--ot)it[ot].cancel();nt.items=[],this._notify(tt,nt,Date.now(),"complete")}remove(tt){return this._charts.delete(tt)}}var animator=new Animator;const transparent="transparent",interpolators={boolean(et,tt,nt){return nt>.5?tt:et},color(et,tt,nt){const it=color(et||transparent),ot=it.valid&&color(tt||transparent);return ot&&ot.valid?ot.mix(it,nt).hexString():tt},number(et,tt,nt){return et+(tt-et)*nt}};class Animation{constructor(tt,nt,it,ot){const Ut=nt[it];ot=resolve([tt.to,ot,Ut,tt.from]);const Ft=resolve([tt.from,Ut,ot]);this._active=!0,this._fn=tt.fn||interpolators[tt.type||typeof Ft],this._easing=effects[tt.easing]||effects.linear,this._start=Math.floor(Date.now()+(tt.delay||0)),this._duration=this._total=Math.floor(tt.duration),this._loop=!!tt.loop,this._target=nt,this._prop=it,this._from=Ft,this._to=ot,this._promises=void 0}active(){return this._active}update(tt,nt,it){if(this._active){this._notify(!1);const ot=this._target[this._prop],Ut=it-this._start,Ft=this._duration-Ut;this._start=it,this._duration=Math.floor(Math.max(Ft,tt.duration)),this._total+=Ut,this._loop=!!tt.loop,this._to=resolve([tt.to,nt,ot,tt.from]),this._from=resolve([tt.from,ot,nt])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(tt){const nt=tt-this._start,it=this._duration,ot=this._prop,Ut=this._from,Ft=this._loop,Qt=this._to;let Bt;if(this._active=Ut!==Qt&&(Ft||nt1?2-Bt:Bt,Bt=this._easing(Math.min(1,Math.max(0,Bt))),this._target[ot]=this._fn(Ut,Qt,Bt)}wait(){const tt=this._promises||(this._promises=[]);return new Promise((nt,it)=>{tt.push({res:nt,rej:it})})}_notify(tt){const nt=tt?"res":"rej",it=this._promises||[];for(let ot=0;ot{const Ut=tt[ot];if(!isObject(Ut))return;const Ft={};for(const Qt of nt)Ft[Qt]=Ut[Qt];(isArray(Ut.properties)&&Ut.properties||[ot]).forEach(Qt=>{(Qt===ot||!it.has(Qt))&&it.set(Qt,Ft)})})}_animateOptions(tt,nt){const it=nt.options,ot=resolveTargetOptions(tt,it);if(!ot)return[];const Ut=this._createAnimations(ot,it);return it.$shared&&awaitAll(tt.options.$animations,it).then(()=>{tt.options=it},()=>{}),Ut}_createAnimations(tt,nt){const it=this._properties,ot=[],Ut=tt.$animations||(tt.$animations={}),Ft=Object.keys(nt),Qt=Date.now();let Bt;for(Bt=Ft.length-1;Bt>=0;--Bt){const Vt=Ft[Bt];if(Vt.charAt(0)==="$")continue;if(Vt==="options"){ot.push(...this._animateOptions(tt,nt));continue}const Wt=nt[Vt];let Xt=Ut[Vt];const Zt=it.get(Vt);if(Xt)if(Zt&&Xt.active()){Xt.update(Zt,Wt,Qt);continue}else Xt.cancel();if(!Zt||!Zt.duration){tt[Vt]=Wt;continue}Ut[Vt]=Xt=new Animation(Zt,tt,Vt,Wt),ot.push(Xt)}return ot}update(tt,nt){if(this._properties.size===0){Object.assign(tt,nt);return}const it=this._createAnimations(tt,nt);if(it.length)return animator.add(this._chart,it),!0}}function awaitAll(et,tt){const nt=[],it=Object.keys(tt);for(let ot=0;ot0||!nt&&Ut<0)return ot.index}return null}function updateStacks(et,tt){const{chart:nt,_cachedMeta:it}=et,ot=nt._stacks||(nt._stacks={}),{iScale:Ut,vScale:Ft,index:Qt}=it,Bt=Ut.axis,Vt=Ft.axis,Wt=getStackKey(Ut,Ft,it),Xt=tt.length;let Zt;for(let Yt=0;Ytnt[it].axis===tt).shift()}function createDatasetContext(et,tt){return createContext(et,{active:!1,dataset:void 0,datasetIndex:tt,index:tt,mode:"default",type:"dataset"})}function createDataContext(et,tt,nt){return createContext(et,{active:!1,dataIndex:tt,parsed:void 0,raw:void 0,element:nt,index:tt,mode:"default",type:"data"})}function clearStacks(et,tt){const nt=et.controller.index,it=et.vScale&&et.vScale.axis;if(it){tt=tt||et._parsed;for(const ot of tt){const Ut=ot._stacks;if(!Ut||Ut[it]===void 0||Ut[it][nt]===void 0)return;delete Ut[it][nt],Ut[it]._visualValues!==void 0&&Ut[it]._visualValues[nt]!==void 0&&delete Ut[it]._visualValues[nt]}}}const isDirectUpdateMode=et=>et==="reset"||et==="none",cloneIfNotShared=(et,tt)=>tt?et:Object.assign({},et),createStack=(et,tt,nt)=>et&&!tt.hidden&&tt._stacked&&{keys:getSortedDatasetIndices(nt,!0),values:null};class DatasetController{constructor(tt,nt){this.chart=tt,this._ctx=tt.ctx,this.index=nt,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 tt=this._cachedMeta;this.configure(),this.linkScales(),tt._stacked=isStacked(tt.vScale,tt),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(tt){this.index!==tt&&clearStacks(this._cachedMeta),this.index=tt}linkScales(){const tt=this.chart,nt=this._cachedMeta,it=this.getDataset(),ot=(Xt,Zt,Yt,Mt)=>Xt==="x"?Zt:Xt==="r"?Mt:Yt,Ut=nt.xAxisID=valueOrDefault(it.xAxisID,getFirstScaleId(tt,"x")),Ft=nt.yAxisID=valueOrDefault(it.yAxisID,getFirstScaleId(tt,"y")),Qt=nt.rAxisID=valueOrDefault(it.rAxisID,getFirstScaleId(tt,"r")),Bt=nt.indexAxis,Vt=nt.iAxisID=ot(Bt,Ut,Ft,Qt),Wt=nt.vAxisID=ot(Bt,Ft,Ut,Qt);nt.xScale=this.getScaleForId(Ut),nt.yScale=this.getScaleForId(Ft),nt.rScale=this.getScaleForId(Qt),nt.iScale=this.getScaleForId(Vt),nt.vScale=this.getScaleForId(Wt)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(tt){return this.chart.scales[tt]}_getOtherScale(tt){const nt=this._cachedMeta;return tt===nt.iScale?nt.vScale:nt.iScale}reset(){this._update("reset")}_destroy(){const tt=this._cachedMeta;this._data&&unlistenArrayEvents(this._data,this),tt._stacked&&clearStacks(tt)}_dataCheck(){const tt=this.getDataset(),nt=tt.data||(tt.data=[]),it=this._data;if(isObject(nt))this._data=convertObjectDataToArray(nt);else if(it!==nt){if(it){unlistenArrayEvents(it,this);const ot=this._cachedMeta;clearStacks(ot),ot._parsed=[]}nt&&Object.isExtensible(nt)&&listenArrayEvents(nt,this),this._syncList=[],this._data=nt}}addElements(){const tt=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(tt.dataset=new this.datasetElementType)}buildOrUpdateElements(tt){const nt=this._cachedMeta,it=this.getDataset();let ot=!1;this._dataCheck();const Ut=nt._stacked;nt._stacked=isStacked(nt.vScale,nt),nt.stack!==it.stack&&(ot=!0,clearStacks(nt),nt.stack=it.stack),this._resyncElements(tt),(ot||Ut!==nt._stacked)&&updateStacks(this,nt._parsed)}configure(){const tt=this.chart.config,nt=tt.datasetScopeKeys(this._type),it=tt.getOptionScopes(this.getDataset(),nt,!0);this.options=tt.createResolver(it,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(tt,nt){const{_cachedMeta:it,_data:ot}=this,{iScale:Ut,_stacked:Ft}=it,Qt=Ut.axis;let Bt=tt===0&&nt===ot.length?!0:it._sorted,Vt=tt>0&&it._parsed[tt-1],Wt,Xt,Zt;if(this._parsing===!1)it._parsed=ot,it._sorted=!0,Zt=ot;else{isArray(ot[tt])?Zt=this.parseArrayData(it,ot,tt,nt):isObject(ot[tt])?Zt=this.parseObjectData(it,ot,tt,nt):Zt=this.parsePrimitiveData(it,ot,tt,nt);const Yt=()=>Xt[Qt]===null||Vt&&Xt[Qt]Gt||Xt=0;--Zt)if(!Mt()){this.updateRangeFromParsed(Vt,tt,Yt,Bt);break}}return Vt}getAllParsedValues(tt){const nt=this._cachedMeta._parsed,it=[];let ot,Ut,Ft;for(ot=0,Ut=nt.length;ot=0&&ttthis.getContext(it,ot,nt),Gt=Vt.resolveNamedOptions(Zt,Yt,Mt,Xt);return Gt.$shared&&(Gt.$shared=Bt,Ut[Ft]=Object.freeze(cloneIfNotShared(Gt,Bt))),Gt}_resolveAnimations(tt,nt,it){const ot=this.chart,Ut=this._cachedDataOpts,Ft=`animation-${nt}`,Qt=Ut[Ft];if(Qt)return Qt;let Bt;if(ot.options.animation!==!1){const Wt=this.chart.config,Xt=Wt.datasetAnimationScopeKeys(this._type,nt),Zt=Wt.getOptionScopes(this.getDataset(),Xt);Bt=Wt.createResolver(Zt,this.getContext(tt,it,nt))}const Vt=new Animations(ot,Bt&&Bt.animations);return Bt&&Bt._cacheable&&(Ut[Ft]=Object.freeze(Vt)),Vt}getSharedOptions(tt){if(tt.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},tt))}includeOptions(tt,nt){return!nt||isDirectUpdateMode(tt)||this.chart._animationsDisabled}_getSharedOptions(tt,nt){const it=this.resolveDataElementOptions(tt,nt),ot=this._sharedOptions,Ut=this.getSharedOptions(it),Ft=this.includeOptions(nt,Ut)||Ut!==ot;return this.updateSharedOptions(Ut,nt,it),{sharedOptions:Ut,includeOptions:Ft}}updateElement(tt,nt,it,ot){isDirectUpdateMode(ot)?Object.assign(tt,it):this._resolveAnimations(nt,ot).update(tt,it)}updateSharedOptions(tt,nt,it){tt&&!isDirectUpdateMode(nt)&&this._resolveAnimations(void 0,nt).update(tt,it)}_setStyle(tt,nt,it,ot){tt.active=ot;const Ut=this.getStyle(nt,ot);this._resolveAnimations(nt,it,ot).update(tt,{options:!ot&&this.getSharedOptions(Ut)||Ut})}removeHoverStyle(tt,nt,it){this._setStyle(tt,it,"active",!1)}setHoverStyle(tt,nt,it){this._setStyle(tt,it,"active",!0)}_removeDatasetHoverStyle(){const tt=this._cachedMeta.dataset;tt&&this._setStyle(tt,void 0,"active",!1)}_setDatasetHoverStyle(){const tt=this._cachedMeta.dataset;tt&&this._setStyle(tt,void 0,"active",!0)}_resyncElements(tt){const nt=this._data,it=this._cachedMeta.data;for(const[Qt,Bt,Vt]of this._syncList)this[Qt](Bt,Vt);this._syncList=[];const ot=it.length,Ut=nt.length,Ft=Math.min(Ut,ot);Ft&&this.parse(0,Ft),Ut>ot?this._insertElements(ot,Ut-ot,tt):Ut{for(Vt.length+=nt,Qt=Vt.length-1;Qt>=Ft;Qt--)Vt[Qt]=Vt[Qt-nt]};for(Bt(Ut),Qt=tt;Qtot-Ut))}return et._cache.$bar}function computeMinSampleSize(et){const tt=et.iScale,nt=getAllScaleValues(tt,et.type);let it=tt._length,ot,Ut,Ft,Qt;const Bt=()=>{Ft===32767||Ft===-32768||(defined(Qt)&&(it=Math.min(it,Math.abs(Ft-Qt)||it)),Qt=Ft)};for(ot=0,Ut=nt.length;ot0?ot[et-1]:null,Qt=etMath.abs(Qt)&&(Bt=Qt,Vt=Ft),tt[nt.axis]=Vt,tt._custom={barStart:Bt,barEnd:Vt,start:ot,end:Ut,min:Ft,max:Qt}}function parseValue(et,tt,nt,it){return isArray(et)?parseFloatBar(et,tt,nt,it):tt[nt.axis]=nt.parse(et,it),tt}function parseArrayOrPrimitive(et,tt,nt,it){const ot=et.iScale,Ut=et.vScale,Ft=ot.getLabels(),Qt=ot===Ut,Bt=[];let Vt,Wt,Xt,Zt;for(Vt=nt,Wt=nt+it;Vt=nt?1:-1)}function borderProps(et){let tt,nt,it,ot,Ut;return et.horizontal?(tt=et.base>et.x,nt="left",it="right"):(tt=et.baseBt.controller.options.grouped),Ut=it.options.stacked,Ft=[],Qt=Bt=>{const Vt=Bt.controller.getParsed(nt),Wt=Vt&&Vt[Bt.vScale.axis];if(isNullOrUndef(Wt)||isNaN(Wt))return!0};for(const Bt of ot)if(!(nt!==void 0&&Qt(Bt))&&((Ut===!1||Ft.indexOf(Bt.stack)===-1||Ut===void 0&&Bt.stack===void 0)&&Ft.push(Bt.stack),Bt.index===tt))break;return Ft.length||Ft.push(void 0),Ft}_getStackCount(tt){return this._getStacks(void 0,tt).length}_getStackIndex(tt,nt,it){const ot=this._getStacks(tt,it),Ut=nt!==void 0?ot.indexOf(nt):-1;return Ut===-1?ot.length-1:Ut}_getRuler(){const tt=this.options,nt=this._cachedMeta,it=nt.iScale,ot=[];let Ut,Ft;for(Ut=0,Ft=nt.data.length;Ut=0;--it)nt=Math.max(nt,tt[it].size(this.resolveDataElementOptions(it))/2);return nt>0&&nt}getLabelAndValue(tt){const nt=this._cachedMeta,it=this.chart.data.labels||[],{xScale:ot,yScale:Ut}=nt,Ft=this.getParsed(tt),Qt=ot.getLabelForValue(Ft.x),Bt=Ut.getLabelForValue(Ft.y),Vt=Ft._custom;return{label:it[tt]||"",value:"("+Qt+", "+Bt+(Vt?", "+Vt:"")+")"}}update(tt){const nt=this._cachedMeta.data;this.updateElements(nt,0,nt.length,tt)}updateElements(tt,nt,it,ot){const Ut=ot==="reset",{iScale:Ft,vScale:Qt}=this._cachedMeta,{sharedOptions:Bt,includeOptions:Vt}=this._getSharedOptions(nt,ot),Wt=Ft.axis,Xt=Qt.axis;for(let Zt=nt;Zt_angleBetween(nn,Qt,Bt,!0)?1:Math.max(sn,sn*nt,Kt,Kt*nt),Mt=(nn,sn,Kt)=>_angleBetween(nn,Qt,Bt,!0)?-1:Math.min(sn,sn*nt,Kt,Kt*nt),Gt=Yt(0,Vt,Xt),en=Yt(HALF_PI,Wt,Zt),tn=Mt(PI,Vt,Xt),ln=Mt(PI+HALF_PI,Wt,Zt);it=(Gt-tn)/2,ot=(en-ln)/2,Ut=-(Gt+tn)/2,Ft=-(en+ln)/2}return{ratioX:it,ratioY:ot,offsetX:Ut,offsetY:Ft}}class DoughnutController extends DatasetController{constructor(tt,nt){super(tt,nt),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(tt,nt){const it=this.getDataset().data,ot=this._cachedMeta;if(this._parsing===!1)ot._parsed=it;else{let Ut=Bt=>+it[Bt];if(isObject(it[tt])){const{key:Bt="value"}=this._parsing;Ut=Vt=>+resolveObjectKey(it[Vt],Bt)}let Ft,Qt;for(Ft=tt,Qt=tt+nt;Ft0&&!isNaN(tt)?TAU*(Math.abs(tt)/nt):0}getLabelAndValue(tt){const nt=this._cachedMeta,it=this.chart,ot=it.data.labels||[],Ut=formatNumber(nt._parsed[tt],it.options.locale);return{label:ot[tt]||"",value:Ut}}getMaxBorderWidth(tt){let nt=0;const it=this.chart;let ot,Ut,Ft,Qt,Bt;if(!tt){for(ot=0,Ut=it.data.datasets.length;ottt!=="spacing",_indexable:tt=>tt!=="spacing"}),_r(DoughnutController,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(tt){const nt=tt.data;if(nt.labels.length&&nt.datasets.length){const{labels:{pointStyle:it,color:ot}}=tt.legend.options;return nt.labels.map((Ut,Ft)=>{const Bt=tt.getDatasetMeta(0).controller.getStyle(Ft);return{text:Ut,fillStyle:Bt.backgroundColor,strokeStyle:Bt.borderColor,fontColor:ot,lineWidth:Bt.borderWidth,pointStyle:it,hidden:!tt.getDataVisibility(Ft),index:Ft}})}return[]}},onClick(tt,nt,it){it.chart.toggleDataVisibility(nt.index),it.chart.update()}}}});class LineController extends DatasetController{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(tt){const nt=this._cachedMeta,{dataset:it,data:ot=[],_dataset:Ut}=nt,Ft=this.chart._animationsDisabled;let{start:Qt,count:Bt}=_getStartAndCountOfVisiblePoints(nt,ot,Ft);this._drawStart=Qt,this._drawCount=Bt,_scaleRangesChanged(nt)&&(Qt=0,Bt=ot.length),it._chart=this.chart,it._datasetIndex=this.index,it._decimated=!!Ut._decimated,it.points=ot;const Vt=this.resolveDatasetElementOptions(tt);this.options.showLine||(Vt.borderWidth=0),Vt.segment=this.options.segment,this.updateElement(it,void 0,{animated:!Ft,options:Vt},tt),this.updateElements(ot,Qt,Bt,tt)}updateElements(tt,nt,it,ot){const Ut=ot==="reset",{iScale:Ft,vScale:Qt,_stacked:Bt,_dataset:Vt}=this._cachedMeta,{sharedOptions:Wt,includeOptions:Xt}=this._getSharedOptions(nt,ot),Zt=Ft.axis,Yt=Qt.axis,{spanGaps:Mt,segment:Gt}=this.options,en=isNumber(Mt)?Mt:Number.POSITIVE_INFINITY,tn=this.chart._animationsDisabled||Ut||ot==="none",ln=nt+it,nn=tt.length;let sn=nt>0&&this.getParsed(nt-1);for(let Kt=0;Kt=ln){Qn.skip=!0;continue}const En=this.getParsed(Kt),an=isNullOrUndef(En[Yt]),rn=Qn[Zt]=Ft.getPixelForValue(En[Zt],Kt),gn=Qn[Yt]=Ut||an?Qt.getBasePixel():Qt.getPixelForValue(Bt?this.applyStack(Qt,En,Bt):En[Yt],Kt);Qn.skip=isNaN(rn)||isNaN(gn)||an,Qn.stop=Kt>0&&Math.abs(En[Zt]-sn[Zt])>en,Gt&&(Qn.parsed=En,Qn.raw=Vt.data[Kt]),Xt&&(Qn.options=Wt||this.resolveDataElementOptions(Kt,dn.active?"active":ot)),tn||this.updateElement(dn,Kt,Qn,ot),sn=En}}getMaxOverflow(){const tt=this._cachedMeta,nt=tt.dataset,it=nt.options&&nt.options.borderWidth||0,ot=tt.data||[];if(!ot.length)return it;const Ut=ot[0].size(this.resolveDataElementOptions(0)),Ft=ot[ot.length-1].size(this.resolveDataElementOptions(ot.length-1));return Math.max(it,Ut,Ft)/2}draw(){const tt=this._cachedMeta;tt.dataset.updateControlPoints(this.chart.chartArea,tt.iScale.axis),super.draw()}}_r(LineController,"id","line"),_r(LineController,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),_r(LineController,"overrides",{scales:{_index_:{type:"category"},_value_:{type:"linear"}}});class PolarAreaController extends DatasetController{constructor(tt,nt){super(tt,nt),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(tt){const nt=this._cachedMeta,it=this.chart,ot=it.data.labels||[],Ut=formatNumber(nt._parsed[tt].r,it.options.locale);return{label:ot[tt]||"",value:Ut}}parseObjectData(tt,nt,it,ot){return _parseObjectDataRadialScale.bind(this)(tt,nt,it,ot)}update(tt){const nt=this._cachedMeta.data;this._updateRadius(),this.updateElements(nt,0,nt.length,tt)}getMinMax(){const tt=this._cachedMeta,nt={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return tt.data.forEach((it,ot)=>{const Ut=this.getParsed(ot).r;!isNaN(Ut)&&this.chart.getDataVisibility(ot)&&(Utnt.max&&(nt.max=Ut))}),nt}_updateRadius(){const tt=this.chart,nt=tt.chartArea,it=tt.options,ot=Math.min(nt.right-nt.left,nt.bottom-nt.top),Ut=Math.max(ot/2,0),Ft=Math.max(it.cutoutPercentage?Ut/100*it.cutoutPercentage:1,0),Qt=(Ut-Ft)/tt.getVisibleDatasetCount();this.outerRadius=Ut-Qt*this.index,this.innerRadius=this.outerRadius-Qt}updateElements(tt,nt,it,ot){const Ut=ot==="reset",Ft=this.chart,Bt=Ft.options.animation,Vt=this._cachedMeta.rScale,Wt=Vt.xCenter,Xt=Vt.yCenter,Zt=Vt.getIndexAngle(0)-.5*PI;let Yt=Zt,Mt;const Gt=360/this.countVisibleElements();for(Mt=0;Mt{!isNaN(this.getParsed(ot).r)&&this.chart.getDataVisibility(ot)&&nt++}),nt}_computeAngle(tt,nt,it){return this.chart.getDataVisibility(tt)?toRadians(this.resolveDataElementOptions(tt,nt).angle||it):0}}_r(PolarAreaController,"id","polarArea"),_r(PolarAreaController,"defaults",{dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0}),_r(PolarAreaController,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(tt){const nt=tt.data;if(nt.labels.length&&nt.datasets.length){const{labels:{pointStyle:it,color:ot}}=tt.legend.options;return nt.labels.map((Ut,Ft)=>{const Bt=tt.getDatasetMeta(0).controller.getStyle(Ft);return{text:Ut,fillStyle:Bt.backgroundColor,strokeStyle:Bt.borderColor,fontColor:ot,lineWidth:Bt.borderWidth,pointStyle:it,hidden:!tt.getDataVisibility(Ft),index:Ft}})}return[]}},onClick(tt,nt,it){it.chart.toggleDataVisibility(nt.index),it.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}});class PieController extends DoughnutController{}_r(PieController,"id","pie"),_r(PieController,"defaults",{cutout:0,rotation:0,circumference:360,radius:"100%"});class RadarController extends DatasetController{getLabelAndValue(tt){const nt=this._cachedMeta.vScale,it=this.getParsed(tt);return{label:nt.getLabels()[tt],value:""+nt.getLabelForValue(it[nt.axis])}}parseObjectData(tt,nt,it,ot){return _parseObjectDataRadialScale.bind(this)(tt,nt,it,ot)}update(tt){const nt=this._cachedMeta,it=nt.dataset,ot=nt.data||[],Ut=nt.iScale.getLabels();if(it.points=ot,tt!=="resize"){const Ft=this.resolveDatasetElementOptions(tt);this.options.showLine||(Ft.borderWidth=0);const Qt={_loop:!0,_fullLoop:Ut.length===ot.length,options:Ft};this.updateElement(it,void 0,Qt,tt)}this.updateElements(ot,0,ot.length,tt)}updateElements(tt,nt,it,ot){const Ut=this._cachedMeta.rScale,Ft=ot==="reset";for(let Qt=nt;Qt0&&this.getParsed(nt-1);for(let sn=nt;sn0&&Math.abs(dn[Yt]-nn[Yt])>tn,en&&(Qn.parsed=dn,Qn.raw=Vt.data[sn]),Zt&&(Qn.options=Xt||this.resolveDataElementOptions(sn,Kt.active?"active":ot)),ln||this.updateElement(Kt,sn,Qn,ot),nn=dn}this.updateSharedOptions(Xt,ot,Wt)}getMaxOverflow(){const tt=this._cachedMeta,nt=tt.data||[];if(!this.options.showLine){let Qt=0;for(let Bt=nt.length-1;Bt>=0;--Bt)Qt=Math.max(Qt,nt[Bt].size(this.resolveDataElementOptions(Bt))/2);return Qt>0&&Qt}const it=tt.dataset,ot=it.options&&it.options.borderWidth||0;if(!nt.length)return ot;const Ut=nt[0].size(this.resolveDataElementOptions(0)),Ft=nt[nt.length-1].size(this.resolveDataElementOptions(nt.length-1));return Math.max(ot,Ut,Ft)/2}}_r(ScatterController,"id","scatter"),_r(ScatterController,"defaults",{datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1}),_r(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(tt){Object.assign(DateAdapterBase.prototype,tt)}constructor(tt){this.options=tt||{}}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(et,tt,nt,it){const{controller:ot,data:Ut,_sorted:Ft}=et,Qt=ot._cachedMeta.iScale;if(Qt&&tt===Qt.axis&&tt!=="r"&&Ft&&Ut.length){const Bt=Qt._reversePixels?_rlookupByKey:_lookupByKey;if(it){if(ot._sharedOptions){const Vt=Ut[0],Wt=typeof Vt.getRange=="function"&&Vt.getRange(tt);if(Wt){const Xt=Bt(Ut,tt,nt-Wt),Zt=Bt(Ut,tt,nt+Wt);return{lo:Xt.lo,hi:Zt.hi}}}}else return Bt(Ut,tt,nt)}return{lo:0,hi:Ut.length-1}}function evaluateInteractionItems(et,tt,nt,it,ot){const Ut=et.getSortedVisibleDatasetMetas(),Ft=nt[tt];for(let Qt=0,Bt=Ut.length;Qt{Bt[Ft](tt[nt],ot)&&(Ut.push({element:Bt,datasetIndex:Vt,index:Wt}),Qt=Qt||Bt.inRange(tt.x,tt.y,ot))}),it&&!Qt?[]:Ut}var Interaction={evaluateInteractionItems,modes:{index(et,tt,nt,it){const ot=getRelativePosition(tt,et),Ut=nt.axis||"x",Ft=nt.includeInvisible||!1,Qt=nt.intersect?getIntersectItems(et,ot,Ut,it,Ft):getNearestItems(et,ot,Ut,!1,it,Ft),Bt=[];return Qt.length?(et.getSortedVisibleDatasetMetas().forEach(Vt=>{const Wt=Qt[0].index,Xt=Vt.data[Wt];Xt&&!Xt.skip&&Bt.push({element:Xt,datasetIndex:Vt.index,index:Wt})}),Bt):[]},dataset(et,tt,nt,it){const ot=getRelativePosition(tt,et),Ut=nt.axis||"xy",Ft=nt.includeInvisible||!1;let Qt=nt.intersect?getIntersectItems(et,ot,Ut,it,Ft):getNearestItems(et,ot,Ut,!1,it,Ft);if(Qt.length>0){const Bt=Qt[0].datasetIndex,Vt=et.getDatasetMeta(Bt).data;Qt=[];for(let Wt=0;Wtnt.pos===tt)}function filterDynamicPositionByAxis(et,tt){return et.filter(nt=>STATIC_POSITIONS.indexOf(nt.pos)===-1&&nt.box.axis===tt)}function sortByWeight(et,tt){return et.sort((nt,it)=>{const ot=tt?it:nt,Ut=tt?nt:it;return ot.weight===Ut.weight?ot.index-Ut.index:ot.weight-Ut.weight})}function wrapBoxes(et){const tt=[];let nt,it,ot,Ut,Ft,Qt;for(nt=0,it=(et||[]).length;ntVt.box.fullSize),!0),it=sortByWeight(filterByPosition(tt,"left"),!0),ot=sortByWeight(filterByPosition(tt,"right")),Ut=sortByWeight(filterByPosition(tt,"top"),!0),Ft=sortByWeight(filterByPosition(tt,"bottom")),Qt=filterDynamicPositionByAxis(tt,"x"),Bt=filterDynamicPositionByAxis(tt,"y");return{fullSize:nt,leftAndTop:it.concat(Ut),rightAndBottom:ot.concat(Bt).concat(Ft).concat(Qt),chartArea:filterByPosition(tt,"chartArea"),vertical:it.concat(ot).concat(Bt),horizontal:Ut.concat(Ft).concat(Qt)}}function getCombinedMax(et,tt,nt,it){return Math.max(et[nt],tt[nt])+Math.max(et[it],tt[it])}function updateMaxPadding(et,tt){et.top=Math.max(et.top,tt.top),et.left=Math.max(et.left,tt.left),et.bottom=Math.max(et.bottom,tt.bottom),et.right=Math.max(et.right,tt.right)}function updateDims(et,tt,nt,it){const{pos:ot,box:Ut}=nt,Ft=et.maxPadding;if(!isObject(ot)){nt.size&&(et[ot]-=nt.size);const Xt=it[nt.stack]||{size:0,count:1};Xt.size=Math.max(Xt.size,nt.horizontal?Ut.height:Ut.width),nt.size=Xt.size/Xt.count,et[ot]+=nt.size}Ut.getPadding&&updateMaxPadding(Ft,Ut.getPadding());const Qt=Math.max(0,tt.outerWidth-getCombinedMax(Ft,et,"left","right")),Bt=Math.max(0,tt.outerHeight-getCombinedMax(Ft,et,"top","bottom")),Vt=Qt!==et.w,Wt=Bt!==et.h;return et.w=Qt,et.h=Bt,nt.horizontal?{same:Vt,other:Wt}:{same:Wt,other:Vt}}function handleMaxPadding(et){const tt=et.maxPadding;function nt(it){const ot=Math.max(tt[it]-et[it],0);return et[it]+=ot,ot}et.y+=nt("top"),et.x+=nt("left"),nt("right"),nt("bottom")}function getMargins(et,tt){const nt=tt.maxPadding;function it(ot){const Ut={left:0,top:0,right:0,bottom:0};return ot.forEach(Ft=>{Ut[Ft]=Math.max(tt[Ft],nt[Ft])}),Ut}return it(et?["left","right"]:["top","bottom"])}function fitBoxes(et,tt,nt,it){const ot=[];let Ut,Ft,Qt,Bt,Vt,Wt;for(Ut=0,Ft=et.length,Vt=0;Ut{typeof Gt.beforeLayout=="function"&&Gt.beforeLayout()});const Wt=Bt.reduce((Gt,en)=>en.box.options&&en.box.options.display===!1?Gt:Gt+1,0)||1,Xt=Object.freeze({outerWidth:tt,outerHeight:nt,padding:ot,availableWidth:Ut,availableHeight:Ft,vBoxMaxWidth:Ut/2/Wt,hBoxMaxHeight:Ft/2}),Zt=Object.assign({},ot);updateMaxPadding(Zt,toPadding(it));const Yt=Object.assign({maxPadding:Zt,w:Ut,h:Ft,x:ot.left,y:ot.top},ot),Mt=setLayoutDims(Bt.concat(Vt),Xt);fitBoxes(Qt.fullSize,Yt,Xt,Mt),fitBoxes(Bt,Yt,Xt,Mt),fitBoxes(Vt,Yt,Xt,Mt)&&fitBoxes(Bt,Yt,Xt,Mt),handleMaxPadding(Yt),placeBoxes(Qt.leftAndTop,Yt,Xt,Mt),Yt.x+=Yt.w,Yt.y+=Yt.h,placeBoxes(Qt.rightAndBottom,Yt,Xt,Mt),et.chartArea={left:Yt.left,top:Yt.top,right:Yt.left+Yt.w,bottom:Yt.top+Yt.h,height:Yt.h,width:Yt.w},each(Qt.chartArea,Gt=>{const en=Gt.box;Object.assign(en,et.chartArea),en.update(Yt.w,Yt.h,{left:0,top:0,right:0,bottom:0})})}};class BasePlatform{acquireContext(tt,nt){}releaseContext(tt){return!1}addEventListener(tt,nt,it){}removeEventListener(tt,nt,it){}getDevicePixelRatio(){return 1}getMaximumSize(tt,nt,it,ot){return nt=Math.max(0,nt||tt.width),it=it||tt.height,{width:nt,height:Math.max(0,ot?Math.floor(nt/ot):it)}}isAttached(tt){return!0}updateConfig(tt){}}class BasicPlatform extends BasePlatform{acquireContext(tt){return tt&&tt.getContext&&tt.getContext("2d")||null}updateConfig(tt){tt.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=et=>et===null||et==="";function initCanvas(et,tt){const nt=et.style,it=et.getAttribute("height"),ot=et.getAttribute("width");if(et[EXPANDO_KEY]={initial:{height:it,width:ot,style:{display:nt.display,height:nt.height,width:nt.width}}},nt.display=nt.display||"block",nt.boxSizing=nt.boxSizing||"border-box",isNullOrEmpty(ot)){const Ut=readUsedSize(et,"width");Ut!==void 0&&(et.width=Ut)}if(isNullOrEmpty(it))if(et.style.height==="")et.height=et.width/(tt||2);else{const Ut=readUsedSize(et,"height");Ut!==void 0&&(et.height=Ut)}return et}const eventListenerOptions=supportsEventListenerOptions?{passive:!0}:!1;function addListener(et,tt,nt){et.addEventListener(tt,nt,eventListenerOptions)}function removeListener(et,tt,nt){et.canvas.removeEventListener(tt,nt,eventListenerOptions)}function fromNativeEvent(et,tt){const nt=EVENT_TYPES[et.type]||et.type,{x:it,y:ot}=getRelativePosition(et,tt);return{type:nt,chart:tt,native:et,x:it!==void 0?it:null,y:ot!==void 0?ot:null}}function nodeListContains(et,tt){for(const nt of et)if(nt===tt||nt.contains(tt))return!0}function createAttachObserver(et,tt,nt){const it=et.canvas,ot=new MutationObserver(Ut=>{let Ft=!1;for(const Qt of Ut)Ft=Ft||nodeListContains(Qt.addedNodes,it),Ft=Ft&&!nodeListContains(Qt.removedNodes,it);Ft&&nt()});return ot.observe(document,{childList:!0,subtree:!0}),ot}function createDetachObserver(et,tt,nt){const it=et.canvas,ot=new MutationObserver(Ut=>{let Ft=!1;for(const Qt of Ut)Ft=Ft||nodeListContains(Qt.removedNodes,it),Ft=Ft&&!nodeListContains(Qt.addedNodes,it);Ft&&nt()});return ot.observe(document,{childList:!0,subtree:!0}),ot}const drpListeningCharts=new Map;let oldDevicePixelRatio=0;function onWindowResize(){const et=window.devicePixelRatio;et!==oldDevicePixelRatio&&(oldDevicePixelRatio=et,drpListeningCharts.forEach((tt,nt)=>{nt.currentDevicePixelRatio!==et&&tt()}))}function listenDevicePixelRatioChanges(et,tt){drpListeningCharts.size||window.addEventListener("resize",onWindowResize),drpListeningCharts.set(et,tt)}function unlistenDevicePixelRatioChanges(et){drpListeningCharts.delete(et),drpListeningCharts.size||window.removeEventListener("resize",onWindowResize)}function createResizeObserver(et,tt,nt){const it=et.canvas,ot=it&&_getParentNode(it);if(!ot)return;const Ut=throttled((Qt,Bt)=>{const Vt=ot.clientWidth;nt(Qt,Bt),Vt{const Bt=Qt[0],Vt=Bt.contentRect.width,Wt=Bt.contentRect.height;Vt===0&&Wt===0||Ut(Vt,Wt)});return Ft.observe(ot),listenDevicePixelRatioChanges(et,Ut),Ft}function releaseObserver(et,tt,nt){nt&&nt.disconnect(),tt==="resize"&&unlistenDevicePixelRatioChanges(et)}function createProxyAndListen(et,tt,nt){const it=et.canvas,ot=throttled(Ut=>{et.ctx!==null&&nt(fromNativeEvent(Ut,et))},et);return addListener(it,tt,ot),ot}class DomPlatform extends BasePlatform{acquireContext(tt,nt){const it=tt&&tt.getContext&&tt.getContext("2d");return it&&it.canvas===tt?(initCanvas(tt,nt),it):null}releaseContext(tt){const nt=tt.canvas;if(!nt[EXPANDO_KEY])return!1;const it=nt[EXPANDO_KEY].initial;["height","width"].forEach(Ut=>{const Ft=it[Ut];isNullOrUndef(Ft)?nt.removeAttribute(Ut):nt.setAttribute(Ut,Ft)});const ot=it.style||{};return Object.keys(ot).forEach(Ut=>{nt.style[Ut]=ot[Ut]}),nt.width=nt.width,delete nt[EXPANDO_KEY],!0}addEventListener(tt,nt,it){this.removeEventListener(tt,nt);const ot=tt.$proxies||(tt.$proxies={}),Ft={attach:createAttachObserver,detach:createDetachObserver,resize:createResizeObserver}[nt]||createProxyAndListen;ot[nt]=Ft(tt,nt,it)}removeEventListener(tt,nt){const it=tt.$proxies||(tt.$proxies={}),ot=it[nt];if(!ot)return;({attach:releaseObserver,detach:releaseObserver,resize:releaseObserver}[nt]||removeListener)(tt,nt,ot),it[nt]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(tt,nt,it,ot){return getMaximumSize(tt,nt,it,ot)}isAttached(tt){const nt=_getParentNode(tt);return!!(nt&&nt.isConnected)}}function _detectPlatform(et){return!_isDomSupported()||typeof OffscreenCanvas<"u"&&et instanceof OffscreenCanvas?BasicPlatform:DomPlatform}class Element{constructor(){_r(this,"active",!1)}tooltipPosition(tt){const{x:nt,y:it}=this.getProps(["x","y"],tt);return{x:nt,y:it}}hasValue(){return isNumber(this.x)&&isNumber(this.y)}getProps(tt,nt){const it=this.$animations;if(!nt||!it)return this;const ot={};return tt.forEach(Ut=>{ot[Ut]=it[Ut]&&it[Ut].active()?it[Ut]._to:this[Ut]}),ot}}_r(Element,"defaults",{}),_r(Element,"defaultRoutes");function autoSkip(et,tt){const nt=et.options.ticks,it=determineMaxTicks(et),ot=Math.min(nt.maxTicksLimit||it,it),Ut=nt.major.enabled?getMajorIndices(tt):[],Ft=Ut.length,Qt=Ut[0],Bt=Ut[Ft-1],Vt=[];if(Ft>ot)return skipMajors(tt,Vt,Ut,Ft/ot),Vt;const Wt=calculateSpacing(Ut,tt,ot);if(Ft>0){let Xt,Zt;const Yt=Ft>1?Math.round((Bt-Qt)/(Ft-1)):null;for(skip(tt,Vt,Wt,isNullOrUndef(Yt)?0:Qt-Yt,Qt),Xt=0,Zt=Ft-1;Xtot)return Bt}return Math.max(ot,1)}function getMajorIndices(et){const tt=[];let nt,it;for(nt=0,it=et.length;ntet==="left"?"right":et==="right"?"left":et,offsetFromEdge=(et,tt,nt)=>tt==="top"||tt==="left"?et[tt]+nt:et[tt]-nt,getTicksLimit=(et,tt)=>Math.min(tt||et,et);function sample(et,tt){const nt=[],it=et.length/tt,ot=et.length;let Ut=0;for(;UtFt+Qt)))return Bt}function garbageCollect(et,tt){each(et,nt=>{const it=nt.gc,ot=it.length/2;let Ut;if(ot>tt){for(Ut=0;Utit?it:nt,it=ot&&nt>it?nt:it,{min:finiteOrDefault(nt,finiteOrDefault(it,nt)),max:finiteOrDefault(it,finiteOrDefault(nt,it))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const tt=this.chart.data;return this.options.labels||(this.isHorizontal()?tt.xLabels:tt.yLabels)||tt.labels||[]}getLabelItems(tt=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(tt))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){callback(this.options.beforeUpdate,[this])}update(tt,nt,it){const{beginAtZero:ot,grace:Ut,ticks:Ft}=this.options,Qt=Ft.sampleSize;this.beforeUpdate(),this.maxWidth=tt,this.maxHeight=nt,this._margins=it=Object.assign({left:0,right:0,top:0,bottom:0},it),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+it.left+it.right:this.height+it.top+it.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=_addGrace(this,Ut,ot),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const Bt=Qt=Ut||it<=1||!this.isHorizontal()){this.labelRotation=ot;return}const Wt=this._getLabelSizes(),Xt=Wt.widest.width,Zt=Wt.highest.height,Yt=_limitValue(this.chart.width-Xt,0,this.maxWidth);Qt=tt.offset?this.maxWidth/it:Yt/(it-1),Xt+6>Qt&&(Qt=Yt/(it-(tt.offset?.5:1)),Bt=this.maxHeight-getTickMarkLength(tt.grid)-nt.padding-getTitleHeight(tt.title,this.chart.options.font),Vt=Math.sqrt(Xt*Xt+Zt*Zt),Ft=toDegrees(Math.min(Math.asin(_limitValue((Wt.highest.height+6)/Qt,-1,1)),Math.asin(_limitValue(Bt/Vt,-1,1))-Math.asin(_limitValue(Zt/Vt,-1,1)))),Ft=Math.max(ot,Math.min(Ut,Ft))),this.labelRotation=Ft}afterCalculateLabelRotation(){callback(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){callback(this.options.beforeFit,[this])}fit(){const tt={width:0,height:0},{chart:nt,options:{ticks:it,title:ot,grid:Ut}}=this,Ft=this._isVisible(),Qt=this.isHorizontal();if(Ft){const Bt=getTitleHeight(ot,nt.options.font);if(Qt?(tt.width=this.maxWidth,tt.height=getTickMarkLength(Ut)+Bt):(tt.height=this.maxHeight,tt.width=getTickMarkLength(Ut)+Bt),it.display&&this.ticks.length){const{first:Vt,last:Wt,widest:Xt,highest:Zt}=this._getLabelSizes(),Yt=it.padding*2,Mt=toRadians(this.labelRotation),Gt=Math.cos(Mt),en=Math.sin(Mt);if(Qt){const tn=it.mirror?0:en*Xt.width+Gt*Zt.height;tt.height=Math.min(this.maxHeight,tt.height+tn+Yt)}else{const tn=it.mirror?0:Gt*Xt.width+en*Zt.height;tt.width=Math.min(this.maxWidth,tt.width+tn+Yt)}this._calculatePadding(Vt,Wt,en,Gt)}}this._handleMargins(),Qt?(this.width=this._length=nt.width-this._margins.left-this._margins.right,this.height=tt.height):(this.width=tt.width,this.height=this._length=nt.height-this._margins.top-this._margins.bottom)}_calculatePadding(tt,nt,it,ot){const{ticks:{align:Ut,padding:Ft},position:Qt}=this.options,Bt=this.labelRotation!==0,Vt=Qt!=="top"&&this.axis==="x";if(this.isHorizontal()){const Wt=this.getPixelForTick(0)-this.left,Xt=this.right-this.getPixelForTick(this.ticks.length-1);let Zt=0,Yt=0;Bt?Vt?(Zt=ot*tt.width,Yt=it*nt.height):(Zt=it*tt.height,Yt=ot*nt.width):Ut==="start"?Yt=nt.width:Ut==="end"?Zt=tt.width:Ut!=="inner"&&(Zt=tt.width/2,Yt=nt.width/2),this.paddingLeft=Math.max((Zt-Wt+Ft)*this.width/(this.width-Wt),0),this.paddingRight=Math.max((Yt-Xt+Ft)*this.width/(this.width-Xt),0)}else{let Wt=nt.height/2,Xt=tt.height/2;Ut==="start"?(Wt=0,Xt=tt.height):Ut==="end"&&(Wt=nt.height,Xt=0),this.paddingTop=Wt+Ft,this.paddingBottom=Xt+Ft}}_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:tt,position:nt}=this.options;return nt==="top"||nt==="bottom"||tt==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(tt){this.beforeTickToLabelConversion(),this.generateTickLabels(tt);let nt,it;for(nt=0,it=tt.length;nt({width:Ft[an]||0,height:Qt[an]||0});return{first:En(0),last:En(nt-1),widest:En(dn),highest:En(Qn),widths:Ft,heights:Qt}}getLabelForValue(tt){return tt}getPixelForValue(tt,nt){return NaN}getValueForPixel(tt){}getPixelForTick(tt){const nt=this.ticks;return tt<0||tt>nt.length-1?null:this.getPixelForValue(nt[tt].value)}getPixelForDecimal(tt){this._reversePixels&&(tt=1-tt);const nt=this._startPixel+tt*this._length;return _int16Range(this._alignToPixels?_alignPixel(this.chart,nt,0):nt)}getDecimalForPixel(tt){const nt=(tt-this._startPixel)/this._length;return this._reversePixels?1-nt:nt}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:tt,max:nt}=this;return tt<0&&nt<0?nt:tt>0&&nt>0?tt:0}getContext(tt){const nt=this.ticks||[];if(tt>=0&&ttQt*ot?Qt/it:Bt/ot:Bt*ot0}_computeGridLineItems(tt){const nt=this.axis,it=this.chart,ot=this.options,{grid:Ut,position:Ft,border:Qt}=ot,Bt=Ut.offset,Vt=this.isHorizontal(),Xt=this.ticks.length+(Bt?1:0),Zt=getTickMarkLength(Ut),Yt=[],Mt=Qt.setContext(this.getContext()),Gt=Mt.display?Mt.width:0,en=Gt/2,tn=function(pn){return _alignPixel(it,pn,Gt)};let ln,nn,sn,Kt,dn,Qn,En,an,rn,gn,un,Un;if(Ft==="top")ln=tn(this.bottom),Qn=this.bottom-Zt,an=ln-en,gn=tn(tt.top)+en,Un=tt.bottom;else if(Ft==="bottom")ln=tn(this.top),gn=tt.top,Un=tn(tt.bottom)-en,Qn=ln+en,an=this.top+Zt;else if(Ft==="left")ln=tn(this.right),dn=this.right-Zt,En=ln-en,rn=tn(tt.left)+en,un=tt.right;else if(Ft==="right")ln=tn(this.left),rn=tt.left,un=tn(tt.right)-en,dn=ln+en,En=this.left+Zt;else if(nt==="x"){if(Ft==="center")ln=tn((tt.top+tt.bottom)/2+.5);else if(isObject(Ft)){const pn=Object.keys(Ft)[0],Rn=Ft[pn];ln=tn(this.chart.scales[pn].getPixelForValue(Rn))}gn=tt.top,Un=tt.bottom,Qn=ln+en,an=Qn+Zt}else if(nt==="y"){if(Ft==="center")ln=tn((tt.left+tt.right)/2);else if(isObject(Ft)){const pn=Object.keys(Ft)[0],Rn=Ft[pn];ln=tn(this.chart.scales[pn].getPixelForValue(Rn))}dn=ln-en,En=dn-Zt,rn=tt.left,un=tt.right}const _n=valueOrDefault(ot.ticks.maxTicksLimit,Xt),vn=Math.max(1,Math.ceil(Xt/_n));for(nn=0;nnUt.value===tt);return ot>=0?nt.setContext(this.getContext(ot)).lineWidth:0}drawGrid(tt){const nt=this.options.grid,it=this.ctx,ot=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(tt));let Ut,Ft;const Qt=(Bt,Vt,Wt)=>{!Wt.width||!Wt.color||(it.save(),it.lineWidth=Wt.width,it.strokeStyle=Wt.color,it.setLineDash(Wt.borderDash||[]),it.lineDashOffset=Wt.borderDashOffset,it.beginPath(),it.moveTo(Bt.x,Bt.y),it.lineTo(Vt.x,Vt.y),it.stroke(),it.restore())};if(nt.display)for(Ut=0,Ft=ot.length;Ut{this.draw(Ut)}}]:[{z:it,draw:Ut=>{this.drawBackground(),this.drawGrid(Ut),this.drawTitle()}},{z:ot,draw:()=>{this.drawBorder()}},{z:nt,draw:Ut=>{this.drawLabels(Ut)}}]}getMatchingVisibleMetas(tt){const nt=this.chart.getSortedVisibleDatasetMetas(),it=this.axis+"AxisID",ot=[];let Ut,Ft;for(Ut=0,Ft=nt.length;Ut{const it=nt.split("."),ot=it.pop(),Ut=[et].concat(it).join("."),Ft=tt[nt].split("."),Qt=Ft.pop(),Bt=Ft.join(".");defaults.route(Ut,ot,Bt,Qt)})}function isIChartComponent(et){return"id"in et&&"defaults"in et}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(...tt){this._each("register",tt)}remove(...tt){this._each("unregister",tt)}addControllers(...tt){this._each("register",tt,this.controllers)}addElements(...tt){this._each("register",tt,this.elements)}addPlugins(...tt){this._each("register",tt,this.plugins)}addScales(...tt){this._each("register",tt,this.scales)}getController(tt){return this._get(tt,this.controllers,"controller")}getElement(tt){return this._get(tt,this.elements,"element")}getPlugin(tt){return this._get(tt,this.plugins,"plugin")}getScale(tt){return this._get(tt,this.scales,"scale")}removeControllers(...tt){this._each("unregister",tt,this.controllers)}removeElements(...tt){this._each("unregister",tt,this.elements)}removePlugins(...tt){this._each("unregister",tt,this.plugins)}removeScales(...tt){this._each("unregister",tt,this.scales)}_each(tt,nt,it){[...nt].forEach(ot=>{const Ut=it||this._getRegistryForType(ot);it||Ut.isForType(ot)||Ut===this.plugins&&ot.id?this._exec(tt,Ut,ot):each(ot,Ft=>{const Qt=it||this._getRegistryForType(Ft);this._exec(tt,Qt,Ft)})})}_exec(tt,nt,it){const ot=_capitalize(tt);callback(it["before"+ot],[],it),nt[tt](it),callback(it["after"+ot],[],it)}_getRegistryForType(tt){for(let nt=0;ntUt.filter(Qt=>!Ft.some(Bt=>Qt.plugin.id===Bt.plugin.id));this._notify(ot(nt,it),tt,"stop"),this._notify(ot(it,nt),tt,"start")}}function allPlugins(et){const tt={},nt=[],it=Object.keys(registry.plugins.items);for(let Ut=0;Ut1&&determineAxis(et[0].toLowerCase(),tt),et))return et;throw new Error(`Cannot determine type of '${name}' axis. Please provide 'axis' or 'position' option.`)}function mergeScaleConfig(et,tt){const nt=overrides[et.type]||{scales:{}},it=tt.scales||{},ot=getIndexAxis(et.type,tt),Ut=Object.create(null);return Object.keys(it).forEach(Ft=>{const Qt=it[Ft];if(!isObject(Qt))return console.error(`Invalid scale configuration for scale: ${Ft}`);if(Qt._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${Ft}`);const Bt=determineAxis(Ft,Qt),Vt=getDefaultScaleIDFromAxis(Bt,ot),Wt=nt.scales||{};Ut[Ft]=mergeIf(Object.create(null),[{axis:Bt},Qt,Wt[Bt],Wt[Vt]])}),et.data.datasets.forEach(Ft=>{const Qt=Ft.type||et.type,Bt=Ft.indexAxis||getIndexAxis(Qt,tt),Wt=(overrides[Qt]||{}).scales||{};Object.keys(Wt).forEach(Xt=>{const Zt=getAxisFromDefaultScaleID(Xt,Bt),Yt=Ft[Zt+"AxisID"]||Zt;Ut[Yt]=Ut[Yt]||Object.create(null),mergeIf(Ut[Yt],[{axis:Zt},it[Yt],Wt[Xt]])})}),Object.keys(Ut).forEach(Ft=>{const Qt=Ut[Ft];mergeIf(Qt,[defaults.scales[Qt.type],defaults.scale])}),Ut}function initOptions(et){const tt=et.options||(et.options={});tt.plugins=valueOrDefault(tt.plugins,{}),tt.scales=mergeScaleConfig(et,tt)}function initData(et){return et=et||{},et.datasets=et.datasets||[],et.labels=et.labels||[],et}function initConfig(et){return et=et||{},et.data=initData(et.data),initOptions(et),et}const keyCache=new Map,keysCached=new Set;function cachedKeys(et,tt){let nt=keyCache.get(et);return nt||(nt=tt(),keyCache.set(et,nt),keysCached.add(nt)),nt}const addIfFound=(et,tt,nt)=>{const it=resolveObjectKey(tt,nt);it!==void 0&&et.add(it)};class Config{constructor(tt){this._config=initConfig(tt),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(tt){this._config.type=tt}get data(){return this._config.data}set data(tt){this._config.data=initData(tt)}get options(){return this._config.options}set options(tt){this._config.options=tt}get plugins(){return this._config.plugins}update(){const tt=this._config;this.clearCache(),initOptions(tt)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(tt){return cachedKeys(tt,()=>[[`datasets.${tt}`,""]])}datasetAnimationScopeKeys(tt,nt){return cachedKeys(`${tt}.transition.${nt}`,()=>[[`datasets.${tt}.transitions.${nt}`,`transitions.${nt}`],[`datasets.${tt}`,""]])}datasetElementScopeKeys(tt,nt){return cachedKeys(`${tt}-${nt}`,()=>[[`datasets.${tt}.elements.${nt}`,`datasets.${tt}`,`elements.${nt}`,""]])}pluginScopeKeys(tt){const nt=tt.id,it=this.type;return cachedKeys(`${it}-plugin-${nt}`,()=>[[`plugins.${nt}`,...tt.additionalOptionScopes||[]]])}_cachedScopes(tt,nt){const it=this._scopeCache;let ot=it.get(tt);return(!ot||nt)&&(ot=new Map,it.set(tt,ot)),ot}getOptionScopes(tt,nt,it){const{options:ot,type:Ut}=this,Ft=this._cachedScopes(tt,it),Qt=Ft.get(nt);if(Qt)return Qt;const Bt=new Set;nt.forEach(Wt=>{tt&&(Bt.add(tt),Wt.forEach(Xt=>addIfFound(Bt,tt,Xt))),Wt.forEach(Xt=>addIfFound(Bt,ot,Xt)),Wt.forEach(Xt=>addIfFound(Bt,overrides[Ut]||{},Xt)),Wt.forEach(Xt=>addIfFound(Bt,defaults,Xt)),Wt.forEach(Xt=>addIfFound(Bt,descriptors,Xt))});const Vt=Array.from(Bt);return Vt.length===0&&Vt.push(Object.create(null)),keysCached.has(nt)&&Ft.set(nt,Vt),Vt}chartOptionScopes(){const{options:tt,type:nt}=this;return[tt,overrides[nt]||{},defaults.datasets[nt]||{},{type:nt},defaults,descriptors]}resolveNamedOptions(tt,nt,it,ot=[""]){const Ut={$shared:!0},{resolver:Ft,subPrefixes:Qt}=getResolver(this._resolverCache,tt,ot);let Bt=Ft;if(needContext(Ft,nt)){Ut.$shared=!1,it=isFunction(it)?it():it;const Vt=this.createResolver(tt,it,Qt);Bt=_attachContext(Ft,it,Vt)}for(const Vt of nt)Ut[Vt]=Bt[Vt];return Ut}createResolver(tt,nt,it=[""],ot){const{resolver:Ut}=getResolver(this._resolverCache,tt,it);return isObject(nt)?_attachContext(Ut,nt,void 0,ot):Ut}}function getResolver(et,tt,nt){let it=et.get(tt);it||(it=new Map,et.set(tt,it));const ot=nt.join();let Ut=it.get(ot);return Ut||(Ut={resolver:_createResolver(tt,nt),subPrefixes:nt.filter(Qt=>!Qt.toLowerCase().includes("hover"))},it.set(ot,Ut)),Ut}const hasFunction=et=>isObject(et)&&Object.getOwnPropertyNames(et).reduce((tt,nt)=>tt||isFunction(et[nt]),!1);function needContext(et,tt){const{isScriptable:nt,isIndexable:it}=_descriptors(et);for(const ot of tt){const Ut=nt(ot),Ft=it(ot),Qt=(Ft||Ut)&&et[ot];if(Ut&&(isFunction(Qt)||hasFunction(Qt))||Ft&&isArray(Qt))return!0}return!1}var version="4.2.1";const KNOWN_POSITIONS=["top","bottom","left","right","chartArea"];function positionIsHorizontal(et,tt){return et==="top"||et==="bottom"||KNOWN_POSITIONS.indexOf(et)===-1&&tt==="x"}function compare2Level(et,tt){return function(nt,it){return nt[et]===it[et]?nt[tt]-it[tt]:nt[et]-it[et]}}function onAnimationsComplete(et){const tt=et.chart,nt=tt.options.animation;tt.notifyPlugins("afterRender"),callback(nt&&nt.onComplete,[et],tt)}function onAnimationProgress(et){const tt=et.chart,nt=tt.options.animation;callback(nt&&nt.onProgress,[et],tt)}function getCanvas(et){return _isDomSupported()&&typeof et=="string"?et=document.getElementById(et):et&&et.length&&(et=et[0]),et&&et.canvas&&(et=et.canvas),et}const instances={},getChart=et=>{const tt=getCanvas(et);return Object.values(instances).filter(nt=>nt.canvas===tt).pop()};function moveNumericKeys(et,tt,nt){const it=Object.keys(et);for(const ot of it){const Ut=+ot;if(Ut>=tt){const Ft=et[ot];delete et[ot],(nt>0||Ut>tt)&&(et[Ut+nt]=Ft)}}}function determineLastEvent(et,tt,nt,it){return!nt||et.type==="mouseout"?null:it?tt:et}function getDatasetArea(et){const{xScale:tt,yScale:nt}=et;if(tt&&nt)return{left:tt.left,right:tt.right,top:nt.top,bottom:nt.bottom}}class Chart{static register(...tt){registry.add(...tt),invalidatePlugins()}static unregister(...tt){registry.remove(...tt),invalidatePlugins()}constructor(tt,nt){const it=this.config=new Config(nt),ot=getCanvas(tt),Ut=getChart(ot);if(Ut)throw new Error("Canvas is already in use. Chart with ID '"+Ut.id+"' must be destroyed before the canvas with ID '"+Ut.canvas.id+"' can be reused.");const Ft=it.createResolver(it.chartOptionScopes(),this.getContext());this.platform=new(it.platform||_detectPlatform(ot)),this.platform.updateConfig(it);const Qt=this.platform.acquireContext(ot,Ft.aspectRatio),Bt=Qt&&Qt.canvas,Vt=Bt&&Bt.height,Wt=Bt&&Bt.width;if(this.id=uid(),this.ctx=Qt,this.canvas=Bt,this.width=Wt,this.height=Vt,this._options=Ft,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(Xt=>this.update(Xt),Ft.resizeDelay||0),this._dataChanges=[],instances[this.id]=this,!Qt||!Bt){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:tt,maintainAspectRatio:nt},width:it,height:ot,_aspectRatio:Ut}=this;return isNullOrUndef(tt)?nt&&Ut?Ut:ot?it/ot:null:tt}get data(){return this.config.data}set data(tt){this.config.data=tt}get options(){return this._options}set options(tt){this.config.options=tt}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(tt,nt){animator.running(this)?this._resizeBeforeDraw={width:tt,height:nt}:this._resize(tt,nt)}_resize(tt,nt){const it=this.options,ot=this.canvas,Ut=it.maintainAspectRatio&&this.aspectRatio,Ft=this.platform.getMaximumSize(ot,tt,nt,Ut),Qt=it.devicePixelRatio||this.platform.getDevicePixelRatio(),Bt=this.width?"resize":"attach";this.width=Ft.width,this.height=Ft.height,this._aspectRatio=this.aspectRatio,retinaScale(this,Qt,!0)&&(this.notifyPlugins("resize",{size:Ft}),callback(it.onResize,[this,Ft],this),this.attached&&this._doResize(Bt)&&this.render())}ensureScalesHaveIDs(){const nt=this.options.scales||{};each(nt,(it,ot)=>{it.id=ot})}buildOrUpdateScales(){const tt=this.options,nt=tt.scales,it=this.scales,ot=Object.keys(it).reduce((Ft,Qt)=>(Ft[Qt]=!1,Ft),{});let Ut=[];nt&&(Ut=Ut.concat(Object.keys(nt).map(Ft=>{const Qt=nt[Ft],Bt=determineAxis(Ft,Qt),Vt=Bt==="r",Wt=Bt==="x";return{options:Qt,dposition:Vt?"chartArea":Wt?"bottom":"left",dtype:Vt?"radialLinear":Wt?"category":"linear"}}))),each(Ut,Ft=>{const Qt=Ft.options,Bt=Qt.id,Vt=determineAxis(Bt,Qt),Wt=valueOrDefault(Qt.type,Ft.dtype);(Qt.position===void 0||positionIsHorizontal(Qt.position,Vt)!==positionIsHorizontal(Ft.dposition))&&(Qt.position=Ft.dposition),ot[Bt]=!0;let Xt=null;if(Bt in it&&it[Bt].type===Wt)Xt=it[Bt];else{const Zt=registry.getScale(Wt);Xt=new Zt({id:Bt,type:Wt,ctx:this.ctx,chart:this}),it[Xt.id]=Xt}Xt.init(Qt,tt)}),each(ot,(Ft,Qt)=>{Ft||delete it[Qt]}),each(it,Ft=>{layouts.configure(this,Ft,Ft.options),layouts.addBox(this,Ft)})}_updateMetasets(){const tt=this._metasets,nt=this.data.datasets.length,it=tt.length;if(tt.sort((ot,Ut)=>ot.index-Ut.index),it>nt){for(let ot=nt;otnt.length&&delete this._stacks,tt.forEach((it,ot)=>{nt.filter(Ut=>Ut===it._dataset).length===0&&this._destroyDatasetMeta(ot)})}buildOrUpdateControllers(){const tt=[],nt=this.data.datasets;let it,ot;for(this._removeUnreferencedMetasets(),it=0,ot=nt.length;it{this.getDatasetMeta(nt).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(tt){const nt=this.config;nt.update();const it=this._options=nt.createResolver(nt.chartOptionScopes(),this.getContext()),ot=this._animationsDisabled=!it.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:tt,cancelable:!0})===!1)return;const Ut=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let Ft=0;for(let Vt=0,Wt=this.data.datasets.length;Vt{Vt.reset()}),this._updateDatasets(tt),this.notifyPlugins("afterUpdate",{mode:tt}),this._layers.sort(compare2Level("z","_idx"));const{_active:Qt,_lastEvent:Bt}=this;Bt?this._eventHandler(Bt,!0):Qt.length&&this._updateHoverStyles(Qt,Qt,!0),this.render()}_updateScales(){each(this.scales,tt=>{layouts.removeBox(this,tt)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const tt=this.options,nt=new Set(Object.keys(this._listeners)),it=new Set(tt.events);(!setsEqual(nt,it)||!!this._responsiveListeners!==tt.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:tt}=this,nt=this._getUniformDataChanges()||[];for(const{method:it,start:ot,count:Ut}of nt){const Ft=it==="_removeElements"?-Ut:Ut;moveNumericKeys(tt,ot,Ft)}}_getUniformDataChanges(){const tt=this._dataChanges;if(!tt||!tt.length)return;this._dataChanges=[];const nt=this.data.datasets.length,it=Ut=>new Set(tt.filter(Ft=>Ft[0]===Ut).map((Ft,Qt)=>Qt+","+Ft.splice(1).join(","))),ot=it(0);for(let Ut=1;UtUt.split(",")).map(Ut=>({method:Ut[1],start:+Ut[2],count:+Ut[3]}))}_updateLayout(tt){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;layouts.update(this,this.width,this.height,tt);const nt=this.chartArea,it=nt.width<=0||nt.height<=0;this._layers=[],each(this.boxes,ot=>{it&&ot.position==="chartArea"||(ot.configure&&ot.configure(),this._layers.push(...ot._layers()))},this),this._layers.forEach((ot,Ut)=>{ot._idx=Ut}),this.notifyPlugins("afterLayout")}_updateDatasets(tt){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:tt,cancelable:!0})!==!1){for(let nt=0,it=this.data.datasets.length;nt=0;--nt)this._drawDataset(tt[nt]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(tt){const nt=this.ctx,it=tt._clip,ot=!it.disabled,Ut=getDatasetArea(tt)||this.chartArea,Ft={meta:tt,index:tt.index,cancelable:!0};this.notifyPlugins("beforeDatasetDraw",Ft)!==!1&&(ot&&clipArea(nt,{left:it.left===!1?0:Ut.left-it.left,right:it.right===!1?this.width:Ut.right+it.right,top:it.top===!1?0:Ut.top-it.top,bottom:it.bottom===!1?this.height:Ut.bottom+it.bottom}),tt.controller.draw(),ot&&unclipArea(nt),Ft.cancelable=!1,this.notifyPlugins("afterDatasetDraw",Ft))}isPointInArea(tt){return _isPointInArea(tt,this.chartArea,this._minPadding)}getElementsAtEventForMode(tt,nt,it,ot){const Ut=Interaction.modes[nt];return typeof Ut=="function"?Ut(this,tt,it,ot):[]}getDatasetMeta(tt){const nt=this.data.datasets[tt],it=this._metasets;let ot=it.filter(Ut=>Ut&&Ut._dataset===nt).pop();return ot||(ot={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:nt&&nt.order||0,index:tt,_dataset:nt,_parsed:[],_sorted:!1},it.push(ot)),ot}getContext(){return this.$context||(this.$context=createContext(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(tt){const nt=this.data.datasets[tt];if(!nt)return!1;const it=this.getDatasetMeta(tt);return typeof it.hidden=="boolean"?!it.hidden:!nt.hidden}setDatasetVisibility(tt,nt){const it=this.getDatasetMeta(tt);it.hidden=!nt}toggleDataVisibility(tt){this._hiddenIndices[tt]=!this._hiddenIndices[tt]}getDataVisibility(tt){return!this._hiddenIndices[tt]}_updateVisibility(tt,nt,it){const ot=it?"show":"hide",Ut=this.getDatasetMeta(tt),Ft=Ut.controller._resolveAnimations(void 0,ot);defined(nt)?(Ut.data[nt].hidden=!it,this.update()):(this.setDatasetVisibility(tt,it),Ft.update(Ut,{visible:it}),this.update(Qt=>Qt.datasetIndex===tt?ot:void 0))}hide(tt,nt){this._updateVisibility(tt,nt,!1)}show(tt,nt){this._updateVisibility(tt,nt,!0)}_destroyDatasetMeta(tt){const nt=this._metasets[tt];nt&&nt.controller&&nt.controller._destroy(),delete this._metasets[tt]}_stop(){let tt,nt;for(this.stop(),animator.remove(this),tt=0,nt=this.data.datasets.length;tt{nt.addEventListener(this,Ut,Ft),tt[Ut]=Ft},ot=(Ut,Ft,Qt)=>{Ut.offsetX=Ft,Ut.offsetY=Qt,this._eventHandler(Ut)};each(this.options.events,Ut=>it(Ut,ot))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const tt=this._responsiveListeners,nt=this.platform,it=(Bt,Vt)=>{nt.addEventListener(this,Bt,Vt),tt[Bt]=Vt},ot=(Bt,Vt)=>{tt[Bt]&&(nt.removeEventListener(this,Bt,Vt),delete tt[Bt])},Ut=(Bt,Vt)=>{this.canvas&&this.resize(Bt,Vt)};let Ft;const Qt=()=>{ot("attach",Qt),this.attached=!0,this.resize(),it("resize",Ut),it("detach",Ft)};Ft=()=>{this.attached=!1,ot("resize",Ut),this._stop(),this._resize(0,0),it("attach",Qt)},nt.isAttached(this.canvas)?Qt():Ft()}unbindEvents(){each(this._listeners,(tt,nt)=>{this.platform.removeEventListener(this,nt,tt)}),this._listeners={},each(this._responsiveListeners,(tt,nt)=>{this.platform.removeEventListener(this,nt,tt)}),this._responsiveListeners=void 0}updateHoverStyle(tt,nt,it){const ot=it?"set":"remove";let Ut,Ft,Qt,Bt;for(nt==="dataset"&&(Ut=this.getDatasetMeta(tt[0].datasetIndex),Ut.controller["_"+ot+"DatasetHoverStyle"]()),Qt=0,Bt=tt.length;Qt{const Qt=this.getDatasetMeta(Ut);if(!Qt)throw new Error("No dataset found at index "+Ut);return{datasetIndex:Ut,element:Qt.data[Ft],index:Ft}});!_elementsEqual(it,nt)&&(this._active=it,this._lastEvent=null,this._updateHoverStyles(it,nt))}notifyPlugins(tt,nt,it){return this._plugins.notify(this,tt,nt,it)}isPluginEnabled(tt){return this._plugins._cache.filter(nt=>nt.plugin.id===tt).length===1}_updateHoverStyles(tt,nt,it){const ot=this.options.hover,Ut=(Bt,Vt)=>Bt.filter(Wt=>!Vt.some(Xt=>Wt.datasetIndex===Xt.datasetIndex&&Wt.index===Xt.index)),Ft=Ut(nt,tt),Qt=it?tt:Ut(tt,nt);Ft.length&&this.updateHoverStyle(Ft,ot.mode,!1),Qt.length&&ot.mode&&this.updateHoverStyle(Qt,ot.mode,!0)}_eventHandler(tt,nt){const it={event:tt,replay:nt,cancelable:!0,inChartArea:this.isPointInArea(tt)},ot=Ft=>(Ft.options.events||this.options.events).includes(tt.native.type);if(this.notifyPlugins("beforeEvent",it,ot)===!1)return;const Ut=this._handleEvent(tt,nt,it.inChartArea);return it.cancelable=!1,this.notifyPlugins("afterEvent",it,ot),(Ut||it.changed)&&this.render(),this}_handleEvent(tt,nt,it){const{_active:ot=[],options:Ut}=this,Ft=nt,Qt=this._getActiveElements(tt,ot,it,Ft),Bt=_isClickEvent(tt),Vt=determineLastEvent(tt,this._lastEvent,it,Bt);it&&(this._lastEvent=null,callback(Ut.onHover,[tt,Qt,this],this),Bt&&callback(Ut.onClick,[tt,Qt,this],this));const Wt=!_elementsEqual(Qt,ot);return(Wt||nt)&&(this._active=Qt,this._updateHoverStyles(Qt,ot,nt)),this._lastEvent=Vt,Wt}_getActiveElements(tt,nt,it,ot){if(tt.type==="mouseout")return[];if(!it)return nt;const Ut=this.options.hover;return this.getElementsAtEventForMode(tt,Ut.mode,Ut,ot)}}_r(Chart,"defaults",defaults),_r(Chart,"instances",instances),_r(Chart,"overrides",overrides),_r(Chart,"registry",registry),_r(Chart,"version",version),_r(Chart,"getChart",getChart);function invalidatePlugins(){return each(Chart.instances,et=>et._plugins.invalidate())}function clipArc(et,tt,nt){const{startAngle:it,pixelMargin:ot,x:Ut,y:Ft,outerRadius:Qt,innerRadius:Bt}=tt;let Vt=ot/Qt;et.beginPath(),et.arc(Ut,Ft,Qt,it-Vt,nt+Vt),Bt>ot?(Vt=ot/Bt,et.arc(Ut,Ft,Bt,nt+Vt,it-Vt,!0)):et.arc(Ut,Ft,ot,nt+HALF_PI,it-HALF_PI),et.closePath(),et.clip()}function toRadiusCorners(et){return _readValueToProps(et,["outerStart","outerEnd","innerStart","innerEnd"])}function parseBorderRadius$1(et,tt,nt,it){const ot=toRadiusCorners(et.options.borderRadius),Ut=(nt-tt)/2,Ft=Math.min(Ut,it*tt/2),Qt=Bt=>{const Vt=(nt-Math.min(Ut,Bt))*it/2;return _limitValue(Bt,0,Math.min(Ut,Vt))};return{outerStart:Qt(ot.outerStart),outerEnd:Qt(ot.outerEnd),innerStart:_limitValue(ot.innerStart,0,Ft),innerEnd:_limitValue(ot.innerEnd,0,Ft)}}function rThetaToXY(et,tt,nt,it){return{x:nt+et*Math.cos(tt),y:it+et*Math.sin(tt)}}function pathArc(et,tt,nt,it,ot,Ut){const{x:Ft,y:Qt,startAngle:Bt,pixelMargin:Vt,innerRadius:Wt}=tt,Xt=Math.max(tt.outerRadius+it+nt-Vt,0),Zt=Wt>0?Wt+it+nt+Vt:0;let Yt=0;const Mt=ot-Bt;if(it){const vn=Wt>0?Wt-it:0,pn=Xt>0?Xt-it:0,Rn=(vn+pn)/2,Sn=Rn!==0?Mt*Rn/(Rn+it):Mt;Yt=(Mt-Sn)/2}const Gt=Math.max(.001,Mt*Xt-nt/PI)/Xt,en=(Mt-Gt)/2,tn=Bt+en+Yt,ln=ot-en-Yt,{outerStart:nn,outerEnd:sn,innerStart:Kt,innerEnd:dn}=parseBorderRadius$1(tt,Zt,Xt,ln-tn),Qn=Xt-nn,En=Xt-sn,an=tn+nn/Qn,rn=ln-sn/En,gn=Zt+Kt,un=Zt+dn,Un=tn+Kt/gn,_n=ln-dn/un;if(et.beginPath(),Ut){const vn=(an+rn)/2;if(et.arc(Ft,Qt,Xt,an,vn),et.arc(Ft,Qt,Xt,vn,rn),sn>0){const fn=rThetaToXY(En,rn,Ft,Qt);et.arc(fn.x,fn.y,sn,rn,ln+HALF_PI)}const pn=rThetaToXY(un,ln,Ft,Qt);if(et.lineTo(pn.x,pn.y),dn>0){const fn=rThetaToXY(un,_n,Ft,Qt);et.arc(fn.x,fn.y,dn,ln+HALF_PI,_n+Math.PI)}const Rn=(ln-dn/Zt+(tn+Kt/Zt))/2;if(et.arc(Ft,Qt,Zt,ln-dn/Zt,Rn,!0),et.arc(Ft,Qt,Zt,Rn,tn+Kt/Zt,!0),Kt>0){const fn=rThetaToXY(gn,Un,Ft,Qt);et.arc(fn.x,fn.y,Kt,Un+Math.PI,tn-HALF_PI)}const Sn=rThetaToXY(Qn,tn,Ft,Qt);if(et.lineTo(Sn.x,Sn.y),nn>0){const fn=rThetaToXY(Qn,an,Ft,Qt);et.arc(fn.x,fn.y,nn,tn-HALF_PI,an)}}else{et.moveTo(Ft,Qt);const vn=Math.cos(an)*Xt+Ft,pn=Math.sin(an)*Xt+Qt;et.lineTo(vn,pn);const Rn=Math.cos(rn)*Xt+Ft,Sn=Math.sin(rn)*Xt+Qt;et.lineTo(Rn,Sn)}et.closePath()}function drawArc(et,tt,nt,it,ot){const{fullCircles:Ut,startAngle:Ft,circumference:Qt}=tt;let Bt=tt.endAngle;if(Ut){pathArc(et,tt,nt,it,Bt,ot);for(let Vt=0;Vt=TAU||_angleBetween(Ut,Qt,Bt),Gt=_isBetween(Ft,Vt+Zt,Wt+Zt);return Mt&&Gt}getCenterPoint(tt){const{x:nt,y:it,startAngle:ot,endAngle:Ut,innerRadius:Ft,outerRadius:Qt}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],tt),{offset:Bt,spacing:Vt}=this.options,Wt=(ot+Ut)/2,Xt=(Ft+Qt+Vt+Bt)/2;return{x:nt+Math.cos(Wt)*Xt,y:it+Math.sin(Wt)*Xt}}tooltipPosition(tt){return this.getCenterPoint(tt)}draw(tt){const{options:nt,circumference:it}=this,ot=(nt.offset||0)/4,Ut=(nt.spacing||0)/2,Ft=nt.circular;if(this.pixelMargin=nt.borderAlign==="inner"?.33:0,this.fullCircles=it>TAU?Math.floor(it/TAU):0,it===0||this.innerRadius<0||this.outerRadius<0)return;tt.save();const Qt=(this.startAngle+this.endAngle)/2;tt.translate(Math.cos(Qt)*ot,Math.sin(Qt)*ot);const Bt=1-Math.sin(Math.min(PI,it||0)),Vt=ot*Bt;tt.fillStyle=nt.backgroundColor,tt.strokeStyle=nt.borderColor,drawArc(tt,this,Vt,Ut,Ft),drawBorder(tt,this,Vt,Ut,Ft),tt.restore()}}_r(ArcElement,"id","arc"),_r(ArcElement,"defaults",{borderAlign:"center",borderColor:"#fff",borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0}),_r(ArcElement,"defaultRoutes",{backgroundColor:"backgroundColor"});function setStyle(et,tt,nt=tt){et.lineCap=valueOrDefault(nt.borderCapStyle,tt.borderCapStyle),et.setLineDash(valueOrDefault(nt.borderDash,tt.borderDash)),et.lineDashOffset=valueOrDefault(nt.borderDashOffset,tt.borderDashOffset),et.lineJoin=valueOrDefault(nt.borderJoinStyle,tt.borderJoinStyle),et.lineWidth=valueOrDefault(nt.borderWidth,tt.borderWidth),et.strokeStyle=valueOrDefault(nt.borderColor,tt.borderColor)}function lineTo(et,tt,nt){et.lineTo(nt.x,nt.y)}function getLineMethod(et){return et.stepped?_steppedLineTo:et.tension||et.cubicInterpolationMode==="monotone"?_bezierCurveTo:lineTo}function pathVars(et,tt,nt={}){const it=et.length,{start:ot=0,end:Ut=it-1}=nt,{start:Ft,end:Qt}=tt,Bt=Math.max(ot,Ft),Vt=Math.min(Ut,Qt),Wt=otQt&&Ut>Qt;return{count:it,start:Bt,loop:tt.loop,ilen:Vt(Ft+(Vt?Qt-sn:sn))%Ut,nn=()=>{Gt!==en&&(et.lineTo(Wt,en),et.lineTo(Wt,Gt),et.lineTo(Wt,tn))};for(Bt&&(Yt=ot[ln(0)],et.moveTo(Yt.x,Yt.y)),Zt=0;Zt<=Qt;++Zt){if(Yt=ot[ln(Zt)],Yt.skip)continue;const sn=Yt.x,Kt=Yt.y,dn=sn|0;dn===Mt?(Kten&&(en=Kt),Wt=(Xt*Wt+sn)/++Xt):(nn(),et.lineTo(sn,Kt),Mt=dn,Xt=0,Gt=en=Kt),tn=Kt}nn()}function _getSegmentMethod(et){const tt=et.options,nt=tt.borderDash&&tt.borderDash.length;return!et._decimated&&!et._loop&&!tt.tension&&tt.cubicInterpolationMode!=="monotone"&&!tt.stepped&&!nt?fastPathSegment:pathSegment}function _getInterpolationMethod(et){return et.stepped?_steppedInterpolation:et.tension||et.cubicInterpolationMode==="monotone"?_bezierInterpolation:_pointInLine}function strokePathWithCache(et,tt,nt,it){let ot=tt._path;ot||(ot=tt._path=new Path2D,tt.path(ot,nt,it)&&ot.closePath()),setStyle(et,tt.options),et.stroke(ot)}function strokePathDirect(et,tt,nt,it){const{segments:ot,options:Ut}=tt,Ft=_getSegmentMethod(tt);for(const Qt of ot)setStyle(et,Ut,Qt.style),et.beginPath(),Ft(et,tt,Qt,{start:nt,end:nt+it-1})&&et.closePath(),et.stroke()}const usePath2D=typeof Path2D=="function";function draw(et,tt,nt,it){usePath2D&&!tt.options.segment?strokePathWithCache(et,tt,nt,it):strokePathDirect(et,tt,nt,it)}class LineElement extends Element{constructor(tt){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,tt&&Object.assign(this,tt)}updateControlPoints(tt,nt){const it=this.options;if((it.tension||it.cubicInterpolationMode==="monotone")&&!it.stepped&&!this._pointsUpdated){const ot=it.spanGaps?this._loop:this._fullLoop;_updateBezierControlPoints(this._points,it,tt,ot,nt),this._pointsUpdated=!0}}set points(tt){this._points=tt,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 tt=this.segments,nt=this.points;return tt.length&&nt[tt[0].start]}last(){const tt=this.segments,nt=this.points,it=tt.length;return it&&nt[tt[it-1].end]}interpolate(tt,nt){const it=this.options,ot=tt[nt],Ut=this.points,Ft=_boundSegments(this,{property:nt,start:ot,end:ot});if(!Ft.length)return;const Qt=[],Bt=_getInterpolationMethod(it);let Vt,Wt;for(Vt=0,Wt=Ft.length;Vttt!=="borderDash"&&tt!=="fill"});function inRange$1(et,tt,nt,it){const ot=et.options,{[nt]:Ut}=et.getProps([nt],it);return Math.abs(tt-Ut)et.replace("rgb(","rgba(").replace(")",", 0.5)"));function getBorderColor(et){return BORDER_COLORS[et%BORDER_COLORS.length]}function getBackgroundColor(et){return BACKGROUND_COLORS[et%BACKGROUND_COLORS.length]}function colorizeDefaultDataset(et,tt){return et.borderColor=getBorderColor(tt),et.backgroundColor=getBackgroundColor(tt),++tt}function colorizeDoughnutDataset(et,tt){return et.backgroundColor=et.data.map(()=>getBorderColor(tt++)),tt}function colorizePolarAreaDataset(et,tt){return et.backgroundColor=et.data.map(()=>getBackgroundColor(tt++)),tt}function getColorizer(et){let tt=0;return(nt,it)=>{const ot=et.getDatasetMeta(it).controller;ot instanceof DoughnutController?tt=colorizeDoughnutDataset(nt,tt):ot instanceof PolarAreaController?tt=colorizePolarAreaDataset(nt,tt):ot&&(tt=colorizeDefaultDataset(nt,tt))}}function containsColorsDefinitions(et){let tt;for(tt in et)if(et[tt].borderColor||et[tt].backgroundColor)return!0;return!1}function containsColorsDefinition(et){return et&&(et.borderColor||et.backgroundColor)}var plugin_colors={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(et,tt,nt){if(!nt.enabled)return;const{data:{datasets:it},options:ot}=et.config,{elements:Ut}=ot;if(!nt.forceOverride&&(containsColorsDefinitions(it)||containsColorsDefinition(ot)||Ut&&containsColorsDefinitions(Ut)))return;const Ft=getColorizer(et);it.forEach(Ft)}};function lttbDecimation(et,tt,nt,it,ot){const Ut=ot.samples||it;if(Ut>=nt)return et.slice(tt,tt+nt);const Ft=[],Qt=(nt-2)/(Ut-2);let Bt=0;const Vt=tt+nt-1;let Wt=tt,Xt,Zt,Yt,Mt,Gt;for(Ft[Bt++]=et[Wt],Xt=0;XtYt&&(Yt=Mt,Zt=et[ln],Gt=ln);Ft[Bt++]=Zt,Wt=Gt}return Ft[Bt++]=et[Vt],Ft}function minMaxDecimation(et,tt,nt,it){let ot=0,Ut=0,Ft,Qt,Bt,Vt,Wt,Xt,Zt,Yt,Mt,Gt;const en=[],tn=tt+nt-1,ln=et[tt].x,sn=et[tn].x-ln;for(Ft=tt;FtGt&&(Gt=Vt,Zt=Ft),ot=(Ut*ot+Qt.x)/++Ut;else{const dn=Ft-1;if(!isNullOrUndef(Xt)&&!isNullOrUndef(Zt)){const Qn=Math.min(Xt,Zt),En=Math.max(Xt,Zt);Qn!==Yt&&Qn!==dn&&en.push({...et[Qn],x:ot}),En!==Yt&&En!==dn&&en.push({...et[En],x:ot})}Ft>0&&dn!==Yt&&en.push(et[dn]),en.push(Qt),Wt=Kt,Ut=0,Mt=Gt=Vt,Xt=Zt=Yt=Ft}}return en}function cleanDecimatedDataset(et){if(et._decimated){const tt=et._data;delete et._decimated,delete et._data,Object.defineProperty(et,"data",{configurable:!0,enumerable:!0,writable:!0,value:tt})}}function cleanDecimatedData(et){et.data.datasets.forEach(tt=>{cleanDecimatedDataset(tt)})}function getStartAndCountOfVisiblePointsSimplified(et,tt){const nt=tt.length;let it=0,ot;const{iScale:Ut}=et,{min:Ft,max:Qt,minDefined:Bt,maxDefined:Vt}=Ut.getUserBounds();return Bt&&(it=_limitValue(_lookupByKey(tt,Ut.axis,Ft).lo,0,nt-1)),Vt?ot=_limitValue(_lookupByKey(tt,Ut.axis,Qt).hi+1,it,nt)-it:ot=nt-it,{start:it,count:ot}}var plugin_decimation={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(et,tt,nt)=>{if(!nt.enabled){cleanDecimatedData(et);return}const it=et.width;et.data.datasets.forEach((ot,Ut)=>{const{_data:Ft,indexAxis:Qt}=ot,Bt=et.getDatasetMeta(Ut),Vt=Ft||ot.data;if(resolve([Qt,et.options.indexAxis])==="y"||!Bt.controller.supportsDecimation)return;const Wt=et.scales[Bt.xAxisID];if(Wt.type!=="linear"&&Wt.type!=="time"||et.options.parsing)return;let{start:Xt,count:Zt}=getStartAndCountOfVisiblePointsSimplified(Bt,Vt);const Yt=nt.threshold||4*it;if(Zt<=Yt){cleanDecimatedDataset(ot);return}isNullOrUndef(Ft)&&(ot._data=Vt,delete ot.data,Object.defineProperty(ot,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(Gt){this._data=Gt}}));let Mt;switch(nt.algorithm){case"lttb":Mt=lttbDecimation(Vt,Xt,Zt,it,nt);break;case"min-max":Mt=minMaxDecimation(Vt,Xt,Zt,it);break;default:throw new Error(`Unsupported decimation algorithm '${nt.algorithm}'`)}ot._decimated=Mt})},destroy(et){cleanDecimatedData(et)}};function _segments(et,tt,nt){const it=et.segments,ot=et.points,Ut=tt.points,Ft=[];for(const Qt of it){let{start:Bt,end:Vt}=Qt;Vt=_findSegmentEnd(Bt,Vt,ot);const Wt=_getBounds(nt,ot[Bt],ot[Vt],Qt.loop);if(!tt.segments){Ft.push({source:Qt,target:Wt,start:ot[Bt],end:ot[Vt]});continue}const Xt=_boundSegments(tt,Wt);for(const Zt of Xt){const Yt=_getBounds(nt,Ut[Zt.start],Ut[Zt.end],Zt.loop),Mt=_boundSegment(Qt,ot,Yt);for(const Gt of Mt)Ft.push({source:Gt,target:Zt,start:{[nt]:_getEdge(Wt,Yt,"start",Math.max)},end:{[nt]:_getEdge(Wt,Yt,"end",Math.min)}})}}return Ft}function _getBounds(et,tt,nt,it){if(it)return;let ot=tt[et],Ut=nt[et];return et==="angle"&&(ot=_normalizeAngle(ot),Ut=_normalizeAngle(Ut)),{property:et,start:ot,end:Ut}}function _pointsFromSegments(et,tt){const{x:nt=null,y:it=null}=et||{},ot=tt.points,Ut=[];return tt.segments.forEach(({start:Ft,end:Qt})=>{Qt=_findSegmentEnd(Ft,Qt,ot);const Bt=ot[Ft],Vt=ot[Qt];it!==null?(Ut.push({x:Bt.x,y:it}),Ut.push({x:Vt.x,y:it})):nt!==null&&(Ut.push({x:nt,y:Bt.y}),Ut.push({x:nt,y:Vt.y}))}),Ut}function _findSegmentEnd(et,tt,nt){for(;tt>et;tt--){const it=nt[tt];if(!isNaN(it.x)&&!isNaN(it.y))break}return tt}function _getEdge(et,tt,nt,it){return et&&tt?it(et[nt],tt[nt]):et?et[nt]:tt?tt[nt]:0}function _createBoundaryLine(et,tt){let nt=[],it=!1;return isArray(et)?(it=!0,nt=et):nt=_pointsFromSegments(et,tt),nt.length?new LineElement({points:nt,options:{tension:0},_loop:it,_fullLoop:it}):null}function _shouldApplyFill(et){return et&&et.fill!==!1}function _resolveTarget(et,tt,nt){let ot=et[tt].fill;const Ut=[tt];let Ft;if(!nt)return ot;for(;ot!==!1&&Ut.indexOf(ot)===-1;){if(!isNumberFinite(ot))return ot;if(Ft=et[ot],!Ft)return!1;if(Ft.visible)return ot;Ut.push(ot),ot=Ft.fill}return!1}function _decodeFill(et,tt,nt){const it=parseFillOption(et);if(isObject(it))return isNaN(it.value)?!1:it;let ot=parseFloat(it);return isNumberFinite(ot)&&Math.floor(ot)===ot?decodeTargetIndex(it[0],tt,ot,nt):["origin","start","end","stack","shape"].indexOf(it)>=0&&it}function decodeTargetIndex(et,tt,nt,it){return(et==="-"||et==="+")&&(nt=tt+nt),nt===tt||nt<0||nt>=it?!1:nt}function _getTargetPixel(et,tt){let nt=null;return et==="start"?nt=tt.bottom:et==="end"?nt=tt.top:isObject(et)?nt=tt.getPixelForValue(et.value):tt.getBasePixel&&(nt=tt.getBasePixel()),nt}function _getTargetValue(et,tt,nt){let it;return et==="start"?it=nt:et==="end"?it=tt.options.reverse?tt.min:tt.max:isObject(et)?it=et.value:it=tt.getBaseValue(),it}function parseFillOption(et){const tt=et.options,nt=tt.fill;let it=valueOrDefault(nt&&nt.target,nt);return it===void 0&&(it=!!tt.backgroundColor),it===!1||it===null?!1:it===!0?"origin":it}function _buildStackLine(et){const{scale:tt,index:nt,line:it}=et,ot=[],Ut=it.segments,Ft=it.points,Qt=getLinesBelow(tt,nt);Qt.push(_createBoundaryLine({x:null,y:tt.bottom},it));for(let Bt=0;Bt=0;--Ft){const Qt=ot[Ft].$filler;Qt&&(Qt.line.updateControlPoints(Ut,Qt.axis),it&&Qt.fill&&_drawfill(et.ctx,Qt,Ut))}},beforeDatasetsDraw(et,tt,nt){if(nt.drawTime!=="beforeDatasetsDraw")return;const it=et.getSortedVisibleDatasetMetas();for(let ot=it.length-1;ot>=0;--ot){const Ut=it[ot].$filler;_shouldApplyFill(Ut)&&_drawfill(et.ctx,Ut,et.chartArea)}},beforeDatasetDraw(et,tt,nt){const it=tt.meta.$filler;!_shouldApplyFill(it)||nt.drawTime!=="beforeDatasetDraw"||_drawfill(et.ctx,it,et.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const getBoxSize=(et,tt)=>{let{boxHeight:nt=tt,boxWidth:it=tt}=et;return et.usePointStyle&&(nt=Math.min(nt,tt),it=et.pointStyleWidth||Math.min(it,tt)),{boxWidth:it,boxHeight:nt,itemHeight:Math.max(tt,nt)}},itemsEqual=(et,tt)=>et!==null&&tt!==null&&et.datasetIndex===tt.datasetIndex&&et.index===tt.index;class Legend extends Element{constructor(tt){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=tt.chart,this.options=tt.options,this.ctx=tt.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(tt,nt,it){this.maxWidth=tt,this.maxHeight=nt,this._margins=it,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 tt=this.options.labels||{};let nt=callback(tt.generateLabels,[this.chart],this)||[];tt.filter&&(nt=nt.filter(it=>tt.filter(it,this.chart.data))),tt.sort&&(nt=nt.sort((it,ot)=>tt.sort(it,ot,this.chart.data))),this.options.reverse&&nt.reverse(),this.legendItems=nt}fit(){const{options:tt,ctx:nt}=this;if(!tt.display){this.width=this.height=0;return}const it=tt.labels,ot=toFont(it.font),Ut=ot.size,Ft=this._computeTitleHeight(),{boxWidth:Qt,itemHeight:Bt}=getBoxSize(it,Ut);let Vt,Wt;nt.font=ot.string,this.isHorizontal()?(Vt=this.maxWidth,Wt=this._fitRows(Ft,Ut,Qt,Bt)+10):(Wt=this.maxHeight,Vt=this._fitCols(Ft,ot,Qt,Bt)+10),this.width=Math.min(Vt,tt.maxWidth||this.maxWidth),this.height=Math.min(Wt,tt.maxHeight||this.maxHeight)}_fitRows(tt,nt,it,ot){const{ctx:Ut,maxWidth:Ft,options:{labels:{padding:Qt}}}=this,Bt=this.legendHitBoxes=[],Vt=this.lineWidths=[0],Wt=ot+Qt;let Xt=tt;Ut.textAlign="left",Ut.textBaseline="middle";let Zt=-1,Yt=-Wt;return this.legendItems.forEach((Mt,Gt)=>{const en=it+nt/2+Ut.measureText(Mt.text).width;(Gt===0||Vt[Vt.length-1]+en+2*Qt>Ft)&&(Xt+=Wt,Vt[Vt.length-(Gt>0?0:1)]=0,Yt+=Wt,Zt++),Bt[Gt]={left:0,top:Yt,row:Zt,width:en,height:ot},Vt[Vt.length-1]+=en+Qt}),Xt}_fitCols(tt,nt,it,ot){const{ctx:Ut,maxHeight:Ft,options:{labels:{padding:Qt}}}=this,Bt=this.legendHitBoxes=[],Vt=this.columnSizes=[],Wt=Ft-tt;let Xt=Qt,Zt=0,Yt=0,Mt=0,Gt=0;return this.legendItems.forEach((en,tn)=>{const{itemWidth:ln,itemHeight:nn}=calculateItemSize(it,nt,Ut,en,ot);tn>0&&Yt+nn+2*Qt>Wt&&(Xt+=Zt+Qt,Vt.push({width:Zt,height:Yt}),Mt+=Zt+Qt,Gt++,Zt=Yt=0),Bt[tn]={left:Mt,top:Yt,col:Gt,width:ln,height:nn},Zt=Math.max(Zt,ln),Yt+=nn+Qt}),Xt+=Zt,Vt.push({width:Zt,height:Yt}),Xt}adjustHitBoxes(){if(!this.options.display)return;const tt=this._computeTitleHeight(),{legendHitBoxes:nt,options:{align:it,labels:{padding:ot},rtl:Ut}}=this,Ft=getRtlAdapter(Ut,this.left,this.width);if(this.isHorizontal()){let Qt=0,Bt=_alignStartEnd(it,this.left+ot,this.right-this.lineWidths[Qt]);for(const Vt of nt)Qt!==Vt.row&&(Qt=Vt.row,Bt=_alignStartEnd(it,this.left+ot,this.right-this.lineWidths[Qt])),Vt.top+=this.top+tt+ot,Vt.left=Ft.leftForLtr(Ft.x(Bt),Vt.width),Bt+=Vt.width+ot}else{let Qt=0,Bt=_alignStartEnd(it,this.top+tt+ot,this.bottom-this.columnSizes[Qt].height);for(const Vt of nt)Vt.col!==Qt&&(Qt=Vt.col,Bt=_alignStartEnd(it,this.top+tt+ot,this.bottom-this.columnSizes[Qt].height)),Vt.top=Bt,Vt.left+=this.left+ot,Vt.left=Ft.leftForLtr(Ft.x(Vt.left),Vt.width),Bt+=Vt.height+ot}}isHorizontal(){return this.options.position==="top"||this.options.position==="bottom"}draw(){if(this.options.display){const tt=this.ctx;clipArea(tt,this),this._draw(),unclipArea(tt)}}_draw(){const{options:tt,columnSizes:nt,lineWidths:it,ctx:ot}=this,{align:Ut,labels:Ft}=tt,Qt=defaults.color,Bt=getRtlAdapter(tt.rtl,this.left,this.width),Vt=toFont(Ft.font),{padding:Wt}=Ft,Xt=Vt.size,Zt=Xt/2;let Yt;this.drawTitle(),ot.textAlign=Bt.textAlign("left"),ot.textBaseline="middle",ot.lineWidth=.5,ot.font=Vt.string;const{boxWidth:Mt,boxHeight:Gt,itemHeight:en}=getBoxSize(Ft,Xt),tn=function(dn,Qn,En){if(isNaN(Mt)||Mt<=0||isNaN(Gt)||Gt<0)return;ot.save();const an=valueOrDefault(En.lineWidth,1);if(ot.fillStyle=valueOrDefault(En.fillStyle,Qt),ot.lineCap=valueOrDefault(En.lineCap,"butt"),ot.lineDashOffset=valueOrDefault(En.lineDashOffset,0),ot.lineJoin=valueOrDefault(En.lineJoin,"miter"),ot.lineWidth=an,ot.strokeStyle=valueOrDefault(En.strokeStyle,Qt),ot.setLineDash(valueOrDefault(En.lineDash,[])),Ft.usePointStyle){const rn={radius:Gt*Math.SQRT2/2,pointStyle:En.pointStyle,rotation:En.rotation,borderWidth:an},gn=Bt.xPlus(dn,Mt/2),un=Qn+Zt;drawPointLegend(ot,rn,gn,un,Ft.pointStyleWidth&&Mt)}else{const rn=Qn+Math.max((Xt-Gt)/2,0),gn=Bt.leftForLtr(dn,Mt),un=toTRBLCorners(En.borderRadius);ot.beginPath(),Object.values(un).some(Un=>Un!==0)?addRoundedRectPath(ot,{x:gn,y:rn,w:Mt,h:Gt,radius:un}):ot.rect(gn,rn,Mt,Gt),ot.fill(),an!==0&&ot.stroke()}ot.restore()},ln=function(dn,Qn,En){renderText(ot,En.text,dn,Qn+en/2,Vt,{strikethrough:En.hidden,textAlign:Bt.textAlign(En.textAlign)})},nn=this.isHorizontal(),sn=this._computeTitleHeight();nn?Yt={x:_alignStartEnd(Ut,this.left+Wt,this.right-it[0]),y:this.top+Wt+sn,line:0}:Yt={x:this.left+Wt,y:_alignStartEnd(Ut,this.top+sn+Wt,this.bottom-nt[0].height),line:0},overrideTextDirection(this.ctx,tt.textDirection);const Kt=en+Wt;this.legendItems.forEach((dn,Qn)=>{ot.strokeStyle=dn.fontColor,ot.fillStyle=dn.fontColor;const En=ot.measureText(dn.text).width,an=Bt.textAlign(dn.textAlign||(dn.textAlign=Ft.textAlign)),rn=Mt+Zt+En;let gn=Yt.x,un=Yt.y;Bt.setWidth(this.width),nn?Qn>0&&gn+rn+Wt>this.right&&(un=Yt.y+=Kt,Yt.line++,gn=Yt.x=_alignStartEnd(Ut,this.left+Wt,this.right-it[Yt.line])):Qn>0&&un+Kt>this.bottom&&(gn=Yt.x=gn+nt[Yt.line].width+Wt,Yt.line++,un=Yt.y=_alignStartEnd(Ut,this.top+sn+Wt,this.bottom-nt[Yt.line].height));const Un=Bt.x(gn);if(tn(Un,un,dn),gn=_textX(an,gn+Mt+Zt,nn?gn+rn:this.right,tt.rtl),ln(Bt.x(gn),un,dn),nn)Yt.x+=rn+Wt;else if(typeof dn.text!="string"){const _n=Vt.lineHeight;Yt.y+=calculateLegendItemHeight(dn,_n)}else Yt.y+=Kt}),restoreTextDirection(this.ctx,tt.textDirection)}drawTitle(){const tt=this.options,nt=tt.title,it=toFont(nt.font),ot=toPadding(nt.padding);if(!nt.display)return;const Ut=getRtlAdapter(tt.rtl,this.left,this.width),Ft=this.ctx,Qt=nt.position,Bt=it.size/2,Vt=ot.top+Bt;let Wt,Xt=this.left,Zt=this.width;if(this.isHorizontal())Zt=Math.max(...this.lineWidths),Wt=this.top+Vt,Xt=_alignStartEnd(tt.align,Xt,this.right-Zt);else{const Mt=this.columnSizes.reduce((Gt,en)=>Math.max(Gt,en.height),0);Wt=Vt+_alignStartEnd(tt.align,this.top,this.bottom-Mt-tt.labels.padding-this._computeTitleHeight())}const Yt=_alignStartEnd(Qt,Xt,Xt+Zt);Ft.textAlign=Ut.textAlign(_toLeftRightCenter(Qt)),Ft.textBaseline="middle",Ft.strokeStyle=nt.color,Ft.fillStyle=nt.color,Ft.font=it.string,renderText(Ft,nt.text,Yt,Wt,it)}_computeTitleHeight(){const tt=this.options.title,nt=toFont(tt.font),it=toPadding(tt.padding);return tt.display?nt.lineHeight+it.height:0}_getLegendItemAt(tt,nt){let it,ot,Ut;if(_isBetween(tt,this.left,this.right)&&_isBetween(nt,this.top,this.bottom)){for(Ut=this.legendHitBoxes,it=0;itUt.length>Ft.length?Ut:Ft)),tt+nt.size/2+it.measureText(ot).width}function calculateItemHeight(et,tt,nt){let it=et;return typeof tt.text!="string"&&(it=calculateLegendItemHeight(tt,nt)),it}function calculateLegendItemHeight(et,tt){const nt=et.text?et.text.length+.5:0;return tt*nt}function isListened(et,tt){return!!((et==="mousemove"||et==="mouseout")&&(tt.onHover||tt.onLeave)||tt.onClick&&(et==="click"||et==="mouseup"))}var plugin_legend={id:"legend",_element:Legend,start(et,tt,nt){const it=et.legend=new Legend({ctx:et.ctx,options:nt,chart:et});layouts.configure(et,it,nt),layouts.addBox(et,it)},stop(et){layouts.removeBox(et,et.legend),delete et.legend},beforeUpdate(et,tt,nt){const it=et.legend;layouts.configure(et,it,nt),it.options=nt},afterUpdate(et){const tt=et.legend;tt.buildLabels(),tt.adjustHitBoxes()},afterEvent(et,tt){tt.replay||et.legend.handleEvent(tt.event)},defaults:{display:!0,position:"top",align:"center",fullSize:!0,reverse:!1,weight:1e3,onClick(et,tt,nt){const it=tt.datasetIndex,ot=nt.chart;ot.isDatasetVisible(it)?(ot.hide(it),tt.hidden=!0):(ot.show(it),tt.hidden=!1)},onHover:null,onLeave:null,labels:{color:et=>et.chart.options.color,boxWidth:40,padding:10,generateLabels(et){const tt=et.data.datasets,{labels:{usePointStyle:nt,pointStyle:it,textAlign:ot,color:Ut,useBorderRadius:Ft,borderRadius:Qt}}=et.legend.options;return et._getSortedDatasetMetas().map(Bt=>{const Vt=Bt.controller.getStyle(nt?0:void 0),Wt=toPadding(Vt.borderWidth);return{text:tt[Bt.index].label,fillStyle:Vt.backgroundColor,fontColor:Ut,hidden:!Bt.visible,lineCap:Vt.borderCapStyle,lineDash:Vt.borderDash,lineDashOffset:Vt.borderDashOffset,lineJoin:Vt.borderJoinStyle,lineWidth:(Wt.width+Wt.height)/4,strokeStyle:Vt.borderColor,pointStyle:it||Vt.pointStyle,rotation:Vt.rotation,textAlign:ot||Vt.textAlign,borderRadius:Ft&&(Qt||Vt.borderRadius),datasetIndex:Bt.index}},this)}},title:{color:et=>et.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:et=>!et.startsWith("on"),labels:{_scriptable:et=>!["generateLabels","filter","sort"].includes(et)}}};class Title extends Element{constructor(tt){super(),this.chart=tt.chart,this.options=tt.options,this.ctx=tt.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(tt,nt){const it=this.options;if(this.left=0,this.top=0,!it.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=tt,this.height=this.bottom=nt;const ot=isArray(it.text)?it.text.length:1;this._padding=toPadding(it.padding);const Ut=ot*toFont(it.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=Ut:this.width=Ut}isHorizontal(){const tt=this.options.position;return tt==="top"||tt==="bottom"}_drawArgs(tt){const{top:nt,left:it,bottom:ot,right:Ut,options:Ft}=this,Qt=Ft.align;let Bt=0,Vt,Wt,Xt;return this.isHorizontal()?(Wt=_alignStartEnd(Qt,it,Ut),Xt=nt+tt,Vt=Ut-it):(Ft.position==="left"?(Wt=it+tt,Xt=_alignStartEnd(Qt,ot,nt),Bt=PI*-.5):(Wt=Ut-tt,Xt=_alignStartEnd(Qt,nt,ot),Bt=PI*.5),Vt=ot-nt),{titleX:Wt,titleY:Xt,maxWidth:Vt,rotation:Bt}}draw(){const tt=this.ctx,nt=this.options;if(!nt.display)return;const it=toFont(nt.font),Ut=it.lineHeight/2+this._padding.top,{titleX:Ft,titleY:Qt,maxWidth:Bt,rotation:Vt}=this._drawArgs(Ut);renderText(tt,nt.text,0,0,it,{color:nt.color,maxWidth:Bt,rotation:Vt,textAlign:_toLeftRightCenter(nt.align),textBaseline:"middle",translation:[Ft,Qt]})}}function createTitle(et,tt){const nt=new Title({ctx:et.ctx,options:tt,chart:et});layouts.configure(et,nt,tt),layouts.addBox(et,nt),et.titleBlock=nt}var plugin_title={id:"title",_element:Title,start(et,tt,nt){createTitle(et,nt)},stop(et){const tt=et.titleBlock;layouts.removeBox(et,tt),delete et.titleBlock},beforeUpdate(et,tt,nt){const it=et.titleBlock;layouts.configure(et,it,nt),it.options=nt},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(et,tt,nt){const it=new Title({ctx:et.ctx,options:nt,chart:et});layouts.configure(et,it,nt),layouts.addBox(et,it),map.set(et,it)},stop(et){layouts.removeBox(et,map.get(et)),map.delete(et)},beforeUpdate(et,tt,nt){const it=map.get(et);layouts.configure(et,it,nt),it.options=nt},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(et){if(!et.length)return!1;let tt,nt,it=0,ot=0,Ut=0;for(tt=0,nt=et.length;tt-1?et.split(` +`):et}function createTooltipItem(et,tt){const{element:nt,datasetIndex:it,index:ot}=tt,Ut=et.getDatasetMeta(it).controller,{label:Ft,value:Qt}=Ut.getLabelAndValue(ot);return{chart:et,label:Ft,parsed:Ut.getParsed(ot),raw:et.data.datasets[it].data[ot],formattedValue:Qt,dataset:Ut.getDataset(),dataIndex:ot,datasetIndex:it,element:nt}}function getTooltipSize(et,tt){const nt=et.chart.ctx,{body:it,footer:ot,title:Ut}=et,{boxWidth:Ft,boxHeight:Qt}=tt,Bt=toFont(tt.bodyFont),Vt=toFont(tt.titleFont),Wt=toFont(tt.footerFont),Xt=Ut.length,Zt=ot.length,Yt=it.length,Mt=toPadding(tt.padding);let Gt=Mt.height,en=0,tn=it.reduce((sn,Kt)=>sn+Kt.before.length+Kt.lines.length+Kt.after.length,0);if(tn+=et.beforeBody.length+et.afterBody.length,Xt&&(Gt+=Xt*Vt.lineHeight+(Xt-1)*tt.titleSpacing+tt.titleMarginBottom),tn){const sn=tt.displayColors?Math.max(Qt,Bt.lineHeight):Bt.lineHeight;Gt+=Yt*sn+(tn-Yt)*Bt.lineHeight+(tn-1)*tt.bodySpacing}Zt&&(Gt+=tt.footerMarginTop+Zt*Wt.lineHeight+(Zt-1)*tt.footerSpacing);let ln=0;const nn=function(sn){en=Math.max(en,nt.measureText(sn).width+ln)};return nt.save(),nt.font=Vt.string,each(et.title,nn),nt.font=Bt.string,each(et.beforeBody.concat(et.afterBody),nn),ln=tt.displayColors?Ft+2+tt.boxPadding:0,each(it,sn=>{each(sn.before,nn),each(sn.lines,nn),each(sn.after,nn)}),ln=0,nt.font=Wt.string,each(et.footer,nn),nt.restore(),en+=Mt.width,{width:en,height:Gt}}function determineYAlign(et,tt){const{y:nt,height:it}=tt;return ntet.height-it/2?"bottom":"center"}function doesNotFitWithAlign(et,tt,nt,it){const{x:ot,width:Ut}=it,Ft=nt.caretSize+nt.caretPadding;if(et==="left"&&ot+Ut+Ft>tt.width||et==="right"&&ot-Ut-Ft<0)return!0}function determineXAlign(et,tt,nt,it){const{x:ot,width:Ut}=nt,{width:Ft,chartArea:{left:Qt,right:Bt}}=et;let Vt="center";return it==="center"?Vt=ot<=(Qt+Bt)/2?"left":"right":ot<=Ut/2?Vt="left":ot>=Ft-Ut/2&&(Vt="right"),doesNotFitWithAlign(Vt,et,tt,nt)&&(Vt="center"),Vt}function determineAlignment(et,tt,nt){const it=nt.yAlign||tt.yAlign||determineYAlign(et,nt);return{xAlign:nt.xAlign||tt.xAlign||determineXAlign(et,tt,nt,it),yAlign:it}}function alignX(et,tt){let{x:nt,width:it}=et;return tt==="right"?nt-=it:tt==="center"&&(nt-=it/2),nt}function alignY(et,tt,nt){let{y:it,height:ot}=et;return tt==="top"?it+=nt:tt==="bottom"?it-=ot+nt:it-=ot/2,it}function getBackgroundPoint(et,tt,nt,it){const{caretSize:ot,caretPadding:Ut,cornerRadius:Ft}=et,{xAlign:Qt,yAlign:Bt}=nt,Vt=ot+Ut,{topLeft:Wt,topRight:Xt,bottomLeft:Zt,bottomRight:Yt}=toTRBLCorners(Ft);let Mt=alignX(tt,Qt);const Gt=alignY(tt,Bt,Vt);return Bt==="center"?Qt==="left"?Mt+=Vt:Qt==="right"&&(Mt-=Vt):Qt==="left"?Mt-=Math.max(Wt,Zt)+ot:Qt==="right"&&(Mt+=Math.max(Xt,Yt)+ot),{x:_limitValue(Mt,0,it.width-tt.width),y:_limitValue(Gt,0,it.height-tt.height)}}function getAlignedX(et,tt,nt){const it=toPadding(nt.padding);return tt==="center"?et.x+et.width/2:tt==="right"?et.x+et.width-it.right:et.x+it.left}function getBeforeAfterBodyLines(et){return pushOrConcat([],splitNewlines(et))}function createTooltipContext(et,tt,nt){return createContext(et,{tooltip:tt,tooltipItems:nt,type:"tooltip"})}function overrideCallbacks(et,tt){const nt=tt&&tt.dataset&&tt.dataset.tooltip&&tt.dataset.tooltip.callbacks;return nt?et.override(nt):et}const defaultCallbacks={beforeTitle:noop,title(et){if(et.length>0){const tt=et[0],nt=tt.chart.data.labels,it=nt?nt.length:0;if(this&&this.options&&this.options.mode==="dataset")return tt.dataset.label||"";if(tt.label)return tt.label;if(it>0&&tt.dataIndex"u"?defaultCallbacks[tt].call(nt,it):ot}class Tooltip extends Element{constructor(tt){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=tt.chart,this.options=tt.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(tt){this.options=tt,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const tt=this._cachedAnimations;if(tt)return tt;const nt=this.chart,it=this.options.setContext(this.getContext()),ot=it.enabled&&nt.options.animation&&it.animations,Ut=new Animations(this.chart,ot);return ot._cacheable&&(this._cachedAnimations=Object.freeze(Ut)),Ut}getContext(){return this.$context||(this.$context=createTooltipContext(this.chart.getContext(),this,this._tooltipItems))}getTitle(tt,nt){const{callbacks:it}=nt,ot=invokeCallbackWithFallback(it,"beforeTitle",this,tt),Ut=invokeCallbackWithFallback(it,"title",this,tt),Ft=invokeCallbackWithFallback(it,"afterTitle",this,tt);let Qt=[];return Qt=pushOrConcat(Qt,splitNewlines(ot)),Qt=pushOrConcat(Qt,splitNewlines(Ut)),Qt=pushOrConcat(Qt,splitNewlines(Ft)),Qt}getBeforeBody(tt,nt){return getBeforeAfterBodyLines(invokeCallbackWithFallback(nt.callbacks,"beforeBody",this,tt))}getBody(tt,nt){const{callbacks:it}=nt,ot=[];return each(tt,Ut=>{const Ft={before:[],lines:[],after:[]},Qt=overrideCallbacks(it,Ut);pushOrConcat(Ft.before,splitNewlines(invokeCallbackWithFallback(Qt,"beforeLabel",this,Ut))),pushOrConcat(Ft.lines,invokeCallbackWithFallback(Qt,"label",this,Ut)),pushOrConcat(Ft.after,splitNewlines(invokeCallbackWithFallback(Qt,"afterLabel",this,Ut))),ot.push(Ft)}),ot}getAfterBody(tt,nt){return getBeforeAfterBodyLines(invokeCallbackWithFallback(nt.callbacks,"afterBody",this,tt))}getFooter(tt,nt){const{callbacks:it}=nt,ot=invokeCallbackWithFallback(it,"beforeFooter",this,tt),Ut=invokeCallbackWithFallback(it,"footer",this,tt),Ft=invokeCallbackWithFallback(it,"afterFooter",this,tt);let Qt=[];return Qt=pushOrConcat(Qt,splitNewlines(ot)),Qt=pushOrConcat(Qt,splitNewlines(Ut)),Qt=pushOrConcat(Qt,splitNewlines(Ft)),Qt}_createItems(tt){const nt=this._active,it=this.chart.data,ot=[],Ut=[],Ft=[];let Qt=[],Bt,Vt;for(Bt=0,Vt=nt.length;Bttt.filter(Wt,Xt,Zt,it))),tt.itemSort&&(Qt=Qt.sort((Wt,Xt)=>tt.itemSort(Wt,Xt,it))),each(Qt,Wt=>{const Xt=overrideCallbacks(tt.callbacks,Wt);ot.push(invokeCallbackWithFallback(Xt,"labelColor",this,Wt)),Ut.push(invokeCallbackWithFallback(Xt,"labelPointStyle",this,Wt)),Ft.push(invokeCallbackWithFallback(Xt,"labelTextColor",this,Wt))}),this.labelColors=ot,this.labelPointStyles=Ut,this.labelTextColors=Ft,this.dataPoints=Qt,Qt}update(tt,nt){const it=this.options.setContext(this.getContext()),ot=this._active;let Ut,Ft=[];if(!ot.length)this.opacity!==0&&(Ut={opacity:0});else{const Qt=positioners[it.position].call(this,ot,this._eventPosition);Ft=this._createItems(it),this.title=this.getTitle(Ft,it),this.beforeBody=this.getBeforeBody(Ft,it),this.body=this.getBody(Ft,it),this.afterBody=this.getAfterBody(Ft,it),this.footer=this.getFooter(Ft,it);const Bt=this._size=getTooltipSize(this,it),Vt=Object.assign({},Qt,Bt),Wt=determineAlignment(this.chart,it,Vt),Xt=getBackgroundPoint(it,Vt,Wt,this.chart);this.xAlign=Wt.xAlign,this.yAlign=Wt.yAlign,Ut={opacity:1,x:Xt.x,y:Xt.y,width:Bt.width,height:Bt.height,caretX:Qt.x,caretY:Qt.y}}this._tooltipItems=Ft,this.$context=void 0,Ut&&this._resolveAnimations().update(this,Ut),tt&&it.external&&it.external.call(this,{chart:this.chart,tooltip:this,replay:nt})}drawCaret(tt,nt,it,ot){const Ut=this.getCaretPosition(tt,it,ot);nt.lineTo(Ut.x1,Ut.y1),nt.lineTo(Ut.x2,Ut.y2),nt.lineTo(Ut.x3,Ut.y3)}getCaretPosition(tt,nt,it){const{xAlign:ot,yAlign:Ut}=this,{caretSize:Ft,cornerRadius:Qt}=it,{topLeft:Bt,topRight:Vt,bottomLeft:Wt,bottomRight:Xt}=toTRBLCorners(Qt),{x:Zt,y:Yt}=tt,{width:Mt,height:Gt}=nt;let en,tn,ln,nn,sn,Kt;return Ut==="center"?(sn=Yt+Gt/2,ot==="left"?(en=Zt,tn=en-Ft,nn=sn+Ft,Kt=sn-Ft):(en=Zt+Mt,tn=en+Ft,nn=sn-Ft,Kt=sn+Ft),ln=en):(ot==="left"?tn=Zt+Math.max(Bt,Wt)+Ft:ot==="right"?tn=Zt+Mt-Math.max(Vt,Xt)-Ft:tn=this.caretX,Ut==="top"?(nn=Yt,sn=nn-Ft,en=tn-Ft,ln=tn+Ft):(nn=Yt+Gt,sn=nn+Ft,en=tn+Ft,ln=tn-Ft),Kt=nn),{x1:en,x2:tn,x3:ln,y1:nn,y2:sn,y3:Kt}}drawTitle(tt,nt,it){const ot=this.title,Ut=ot.length;let Ft,Qt,Bt;if(Ut){const Vt=getRtlAdapter(it.rtl,this.x,this.width);for(tt.x=getAlignedX(this,it.titleAlign,it),nt.textAlign=Vt.textAlign(it.titleAlign),nt.textBaseline="middle",Ft=toFont(it.titleFont),Qt=it.titleSpacing,nt.fillStyle=it.titleColor,nt.font=Ft.string,Bt=0;Btnn!==0)?(tt.beginPath(),tt.fillStyle=Ut.multiKeyBackground,addRoundedRectPath(tt,{x:en,y:Gt,w:Vt,h:Bt,radius:ln}),tt.fill(),tt.stroke(),tt.fillStyle=Ft.backgroundColor,tt.beginPath(),addRoundedRectPath(tt,{x:tn,y:Gt+1,w:Vt-2,h:Bt-2,radius:ln}),tt.fill()):(tt.fillStyle=Ut.multiKeyBackground,tt.fillRect(en,Gt,Vt,Bt),tt.strokeRect(en,Gt,Vt,Bt),tt.fillStyle=Ft.backgroundColor,tt.fillRect(tn,Gt+1,Vt-2,Bt-2))}tt.fillStyle=this.labelTextColors[it]}drawBody(tt,nt,it){const{body:ot}=this,{bodySpacing:Ut,bodyAlign:Ft,displayColors:Qt,boxHeight:Bt,boxWidth:Vt,boxPadding:Wt}=it,Xt=toFont(it.bodyFont);let Zt=Xt.lineHeight,Yt=0;const Mt=getRtlAdapter(it.rtl,this.x,this.width),Gt=function(En){nt.fillText(En,Mt.x(tt.x+Yt),tt.y+Zt/2),tt.y+=Zt+Ut},en=Mt.textAlign(Ft);let tn,ln,nn,sn,Kt,dn,Qn;for(nt.textAlign=Ft,nt.textBaseline="middle",nt.font=Xt.string,tt.x=getAlignedX(this,en,it),nt.fillStyle=it.bodyColor,each(this.beforeBody,Gt),Yt=Qt&&en!=="right"?Ft==="center"?Vt/2+Wt:Vt+2+Wt:0,sn=0,dn=ot.length;sn0&&nt.stroke()}_updateAnimationTarget(tt){const nt=this.chart,it=this.$animations,ot=it&&it.x,Ut=it&&it.y;if(ot||Ut){const Ft=positioners[tt.position].call(this,this._active,this._eventPosition);if(!Ft)return;const Qt=this._size=getTooltipSize(this,tt),Bt=Object.assign({},Ft,this._size),Vt=determineAlignment(nt,tt,Bt),Wt=getBackgroundPoint(tt,Bt,Vt,nt);(ot._to!==Wt.x||Ut._to!==Wt.y)&&(this.xAlign=Vt.xAlign,this.yAlign=Vt.yAlign,this.width=Qt.width,this.height=Qt.height,this.caretX=Ft.x,this.caretY=Ft.y,this._resolveAnimations().update(this,Wt))}}_willRender(){return!!this.opacity}draw(tt){const nt=this.options.setContext(this.getContext());let it=this.opacity;if(!it)return;this._updateAnimationTarget(nt);const ot={width:this.width,height:this.height},Ut={x:this.x,y:this.y};it=Math.abs(it)<.001?0:it;const Ft=toPadding(nt.padding),Qt=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;nt.enabled&&Qt&&(tt.save(),tt.globalAlpha=it,this.drawBackground(Ut,tt,ot,nt),overrideTextDirection(tt,nt.textDirection),Ut.y+=Ft.top,this.drawTitle(Ut,tt,nt),this.drawBody(Ut,tt,nt),this.drawFooter(Ut,tt,nt),restoreTextDirection(tt,nt.textDirection),tt.restore())}getActiveElements(){return this._active||[]}setActiveElements(tt,nt){const it=this._active,ot=tt.map(({datasetIndex:Qt,index:Bt})=>{const Vt=this.chart.getDatasetMeta(Qt);if(!Vt)throw new Error("Cannot find a dataset at index "+Qt);return{datasetIndex:Qt,element:Vt.data[Bt],index:Bt}}),Ut=!_elementsEqual(it,ot),Ft=this._positionChanged(ot,nt);(Ut||Ft)&&(this._active=ot,this._eventPosition=nt,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(tt,nt,it=!0){if(nt&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const ot=this.options,Ut=this._active||[],Ft=this._getActiveElements(tt,Ut,nt,it),Qt=this._positionChanged(Ft,tt),Bt=nt||!_elementsEqual(Ft,Ut)||Qt;return Bt&&(this._active=Ft,(ot.enabled||ot.external)&&(this._eventPosition={x:tt.x,y:tt.y},this.update(!0,nt))),Bt}_getActiveElements(tt,nt,it,ot){const Ut=this.options;if(tt.type==="mouseout")return[];if(!ot)return nt;const Ft=this.chart.getElementsAtEventForMode(tt,Ut.mode,Ut,it);return Ut.reverse&&Ft.reverse(),Ft}_positionChanged(tt,nt){const{caretX:it,caretY:ot,options:Ut}=this,Ft=positioners[Ut.position].call(this,tt,nt);return Ft!==!1&&(it!==Ft.x||ot!==Ft.y)}}_r(Tooltip,"positioners",positioners);var plugin_tooltip={id:"tooltip",_element:Tooltip,positioners,afterInit(et,tt,nt){nt&&(et.tooltip=new Tooltip({chart:et,options:nt}))},beforeUpdate(et,tt,nt){et.tooltip&&et.tooltip.initialize(nt)},reset(et,tt,nt){et.tooltip&&et.tooltip.initialize(nt)},afterDraw(et){const tt=et.tooltip;if(tt&&tt._willRender()){const nt={tooltip:tt};if(et.notifyPlugins("beforeTooltipDraw",{...nt,cancelable:!0})===!1)return;tt.draw(et.ctx),et.notifyPlugins("afterTooltipDraw",nt)}},afterEvent(et,tt){if(et.tooltip){const nt=tt.replay;et.tooltip.handleEvent(tt.event,nt,tt.inChartArea)&&(tt.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:(et,tt)=>tt.bodyFont.size,boxWidth:(et,tt)=>tt.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:et=>et!=="filter"&&et!=="itemSort"&&et!=="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=(et,tt,nt,it)=>(typeof tt=="string"?(nt=et.push(tt)-1,it.unshift({index:nt,label:tt})):isNaN(tt)&&(nt=null),nt);function findOrAddLabel(et,tt,nt,it){const ot=et.indexOf(tt);if(ot===-1)return addIfString(et,tt,nt,it);const Ut=et.lastIndexOf(tt);return ot!==Ut?nt:ot}const validIndex=(et,tt)=>et===null?null:_limitValue(Math.round(et),0,tt);function _getLabelForValue(et){const tt=this.getLabels();return et>=0&&etnt.length-1?null:this.getPixelForValue(nt[tt].value)}getValueForPixel(tt){return Math.round(this._startValue+this.getDecimalForPixel(tt)*this._valueRange)}getBasePixel(){return this.bottom}}_r(CategoryScale,"id","category"),_r(CategoryScale,"defaults",{ticks:{callback:_getLabelForValue}});function generateTicks$1(et,tt){const nt=[],{bounds:ot,step:Ut,min:Ft,max:Qt,precision:Bt,count:Vt,maxTicks:Wt,maxDigits:Xt,includeBounds:Zt}=et,Yt=Ut||1,Mt=Wt-1,{min:Gt,max:en}=tt,tn=!isNullOrUndef(Ft),ln=!isNullOrUndef(Qt),nn=!isNullOrUndef(Vt),sn=(en-Gt)/(Xt+1);let Kt=niceNum((en-Gt)/Mt/Yt)*Yt,dn,Qn,En,an;if(Kt<1e-14&&!tn&&!ln)return[{value:Gt},{value:en}];an=Math.ceil(en/Kt)-Math.floor(Gt/Kt),an>Mt&&(Kt=niceNum(an*Kt/Mt/Yt)*Yt),isNullOrUndef(Bt)||(dn=Math.pow(10,Bt),Kt=Math.ceil(Kt*dn)/dn),ot==="ticks"?(Qn=Math.floor(Gt/Kt)*Kt,En=Math.ceil(en/Kt)*Kt):(Qn=Gt,En=en),tn&&ln&&Ut&&almostWhole((Qt-Ft)/Ut,Kt/1e3)?(an=Math.round(Math.min((Qt-Ft)/Kt,Wt)),Kt=(Qt-Ft)/an,Qn=Ft,En=Qt):nn?(Qn=tn?Ft:Qn,En=ln?Qt:En,an=Vt-1,Kt=(En-Qn)/an):(an=(En-Qn)/Kt,almostEquals(an,Math.round(an),Kt/1e3)?an=Math.round(an):an=Math.ceil(an));const rn=Math.max(_decimalPlaces(Kt),_decimalPlaces(Qn));dn=Math.pow(10,isNullOrUndef(Bt)?rn:Bt),Qn=Math.round(Qn*dn)/dn,En=Math.round(En*dn)/dn;let gn=0;for(tn&&(Zt&&Qn!==Ft?(nt.push({value:Ft}),Qnot=nt?ot:Bt,Qt=Bt=>Ut=it?Ut:Bt;if(tt){const Bt=sign(ot),Vt=sign(Ut);Bt<0&&Vt<0?Qt(0):Bt>0&&Vt>0&&Ft(0)}if(ot===Ut){let Bt=Ut===0?1:Math.abs(Ut*.05);Qt(Ut+Bt),tt||Ft(ot-Bt)}this.min=ot,this.max=Ut}getTickLimit(){const tt=this.options.ticks;let{maxTicksLimit:nt,stepSize:it}=tt,ot;return it?(ot=Math.ceil(this.max/it)-Math.floor(this.min/it)+1,ot>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${it} would result generating up to ${ot} ticks. Limiting to 1000.`),ot=1e3)):(ot=this.computeTickLimit(),nt=nt||11),nt&&(ot=Math.min(nt,ot)),ot}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const tt=this.options,nt=tt.ticks;let it=this.getTickLimit();it=Math.max(2,it);const ot={maxTicks:it,bounds:tt.bounds,min:tt.min,max:tt.max,precision:nt.precision,step:nt.stepSize,count:nt.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:nt.minRotation||0,includeBounds:nt.includeBounds!==!1},Ut=this._range||this,Ft=generateTicks$1(ot,Ut);return tt.bounds==="ticks"&&_setMinAndMaxByKey(Ft,this,"value"),tt.reverse?(Ft.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),Ft}configure(){const tt=this.ticks;let nt=this.min,it=this.max;if(super.configure(),this.options.offset&&tt.length){const ot=(it-nt)/Math.max(tt.length-1,1)/2;nt-=ot,it+=ot}this._startValue=nt,this._endValue=it,this._valueRange=it-nt}getLabelForValue(tt){return formatNumber(tt,this.chart.options.locale,this.options.ticks.format)}}class LinearScale extends LinearScaleBase{determineDataLimits(){const{min:tt,max:nt}=this.getMinMax(!0);this.min=isNumberFinite(tt)?tt:0,this.max=isNumberFinite(nt)?nt:1,this.handleTickRangeOptions()}computeTickLimit(){const tt=this.isHorizontal(),nt=tt?this.width:this.height,it=toRadians(this.options.ticks.minRotation),ot=(tt?Math.sin(it):Math.cos(it))||.001,Ut=this._resolveTickFontOptions(0);return Math.ceil(nt/Math.min(40,Ut.lineHeight/ot))}getPixelForValue(tt){return tt===null?NaN:this.getPixelForDecimal((tt-this._startValue)/this._valueRange)}getValueForPixel(tt){return this._startValue+this.getDecimalForPixel(tt)*this._valueRange}}_r(LinearScale,"id","linear"),_r(LinearScale,"defaults",{ticks:{callback:Ticks.formatters.numeric}});const log10Floor=et=>Math.floor(log10(et)),changeExponent=(et,tt)=>Math.pow(10,log10Floor(et)+tt);function isMajor(et){return et/Math.pow(10,log10Floor(et))===1}function steps(et,tt,nt){const it=Math.pow(10,nt),ot=Math.floor(et/it);return Math.ceil(tt/it)-ot}function startExp(et,tt){const nt=tt-et;let it=log10Floor(nt);for(;steps(et,tt,it)>10;)it++;for(;steps(et,tt,it)<10;)it--;return Math.min(it,log10Floor(et))}function generateTicks(et,{min:tt,max:nt}){tt=finiteOrDefault(et.min,tt);const it=[],ot=log10Floor(tt);let Ut=startExp(tt,nt),Ft=Ut<0?Math.pow(10,Math.abs(Ut)):1;const Qt=Math.pow(10,Ut),Bt=ot>Ut?Math.pow(10,ot):0,Vt=Math.round((tt-Bt)*Ft)/Ft,Wt=Math.floor((tt-Bt)/Qt/10)*Qt*10;let Xt=Math.floor((Vt-Wt)/Math.pow(10,Ut)),Zt=finiteOrDefault(et.min,Math.round((Bt+Wt+Xt*Math.pow(10,Ut))*Ft)/Ft);for(;Zt=10?Xt=Xt<15?15:20:Xt++,Xt>=20&&(Ut++,Xt=2,Ft=Ut>=0?1:Ft),Zt=Math.round((Bt+Wt+Xt*Math.pow(10,Ut))*Ft)/Ft;const Yt=finiteOrDefault(et.max,Zt);return it.push({value:Yt,major:isMajor(Yt),significand:Xt}),it}class LogarithmicScale extends Scale{constructor(tt){super(tt),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(tt,nt){const it=LinearScaleBase.prototype.parse.apply(this,[tt,nt]);if(it===0){this._zero=!0;return}return isNumberFinite(it)&&it>0?it:null}determineDataLimits(){const{min:tt,max:nt}=this.getMinMax(!0);this.min=isNumberFinite(tt)?Math.max(0,tt):null,this.max=isNumberFinite(nt)?Math.max(0,nt):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!isNumberFinite(this._userMin)&&(this.min=tt===changeExponent(this.min,0)?changeExponent(this.min,-1):changeExponent(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:tt,maxDefined:nt}=this.getUserBounds();let it=this.min,ot=this.max;const Ut=Qt=>it=tt?it:Qt,Ft=Qt=>ot=nt?ot:Qt;it===ot&&(it<=0?(Ut(1),Ft(10)):(Ut(changeExponent(it,-1)),Ft(changeExponent(ot,1)))),it<=0&&Ut(changeExponent(ot,-1)),ot<=0&&Ft(changeExponent(it,1)),this.min=it,this.max=ot}buildTicks(){const tt=this.options,nt={min:this._userMin,max:this._userMax},it=generateTicks(nt,this);return tt.bounds==="ticks"&&_setMinAndMaxByKey(it,this,"value"),tt.reverse?(it.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),it}getLabelForValue(tt){return tt===void 0?"0":formatNumber(tt,this.chart.options.locale,this.options.ticks.format)}configure(){const tt=this.min;super.configure(),this._startValue=log10(tt),this._valueRange=log10(this.max)-log10(tt)}getPixelForValue(tt){return(tt===void 0||tt===0)&&(tt=this.min),tt===null||isNaN(tt)?NaN:this.getPixelForDecimal(tt===this.min?0:(log10(tt)-this._startValue)/this._valueRange)}getValueForPixel(tt){const nt=this.getDecimalForPixel(tt);return Math.pow(10,this._startValue+nt*this._valueRange)}}_r(LogarithmicScale,"id","logarithmic"),_r(LogarithmicScale,"defaults",{ticks:{callback:Ticks.formatters.logarithmic,major:{enabled:!0}}});function getTickBackdropHeight(et){const tt=et.ticks;if(tt.display&&et.display){const nt=toPadding(tt.backdropPadding);return valueOrDefault(tt.font&&tt.font.size,defaults.font.size)+nt.height}return 0}function measureLabelSize(et,tt,nt){return nt=isArray(nt)?nt:[nt],{w:_longestText(et,tt.string,nt),h:nt.length*tt.lineHeight}}function determineLimits(et,tt,nt,it,ot){return et===it||et===ot?{start:tt-nt/2,end:tt+nt/2}:etot?{start:tt-nt,end:tt}:{start:tt,end:tt+nt}}function fitWithPointLabels(et){const tt={l:et.left+et._padding.left,r:et.right-et._padding.right,t:et.top+et._padding.top,b:et.bottom-et._padding.bottom},nt=Object.assign({},tt),it=[],ot=[],Ut=et._pointLabels.length,Ft=et.options.pointLabels,Qt=Ft.centerPointLabels?PI/Ut:0;for(let Bt=0;Bttt.r&&(Qt=(it.end-tt.r)/Ut,et.r=Math.max(et.r,tt.r+Qt)),ot.starttt.b&&(Bt=(ot.end-tt.b)/Ft,et.b=Math.max(et.b,tt.b+Bt))}function buildPointLabelItems(et,tt,nt){const it=[],ot=et._pointLabels.length,Ut=et.options,Ft=getTickBackdropHeight(Ut)/2,Qt=et.drawingArea,Bt=Ut.pointLabels.centerPointLabels?PI/ot:0;for(let Vt=0;Vt270||nt<90)&&(et-=tt),et}function drawPointLabels(et,tt){const{ctx:nt,options:{pointLabels:it}}=et;for(let ot=tt-1;ot>=0;ot--){const Ut=it.setContext(et.getPointLabelContext(ot)),Ft=toFont(Ut.font),{x:Qt,y:Bt,textAlign:Vt,left:Wt,top:Xt,right:Zt,bottom:Yt}=et._pointLabelItems[ot],{backdropColor:Mt}=Ut;if(!isNullOrUndef(Mt)){const Gt=toTRBLCorners(Ut.borderRadius),en=toPadding(Ut.backdropPadding);nt.fillStyle=Mt;const tn=Wt-en.left,ln=Xt-en.top,nn=Zt-Wt+en.width,sn=Yt-Xt+en.height;Object.values(Gt).some(Kt=>Kt!==0)?(nt.beginPath(),addRoundedRectPath(nt,{x:tn,y:ln,w:nn,h:sn,radius:Gt}),nt.fill()):nt.fillRect(tn,ln,nn,sn)}renderText(nt,et._pointLabels[ot],Qt,Bt+Ft.lineHeight/2,Ft,{color:Ut.color,textAlign:Vt,textBaseline:"middle"})}}function pathRadiusLine(et,tt,nt,it){const{ctx:ot}=et;if(nt)ot.arc(et.xCenter,et.yCenter,tt,0,TAU);else{let Ut=et.getPointPosition(0,tt);ot.moveTo(Ut.x,Ut.y);for(let Ft=1;Ft{const ot=callback(this.options.pointLabels.callback,[nt,it],this);return ot||ot===0?ot:""}).filter((nt,it)=>this.chart.getDataVisibility(it))}fit(){const tt=this.options;tt.display&&tt.pointLabels.display?fitWithPointLabels(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(tt,nt,it,ot){this.xCenter+=Math.floor((tt-nt)/2),this.yCenter+=Math.floor((it-ot)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(tt,nt,it,ot))}getIndexAngle(tt){const nt=TAU/(this._pointLabels.length||1),it=this.options.startAngle||0;return _normalizeAngle(tt*nt+toRadians(it))}getDistanceFromCenterForValue(tt){if(isNullOrUndef(tt))return NaN;const nt=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-tt)*nt:(tt-this.min)*nt}getValueForDistanceFromCenter(tt){if(isNullOrUndef(tt))return NaN;const nt=tt/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-nt:this.min+nt}getPointLabelContext(tt){const nt=this._pointLabels||[];if(tt>=0&&tt{if(Xt!==0){Bt=this.getDistanceFromCenterForValue(Wt.value);const Zt=this.getContext(Xt),Yt=ot.setContext(Zt),Mt=Ut.setContext(Zt);drawRadiusLine(this,Yt,Bt,Ft,Mt)}}),it.display){for(tt.save(),Qt=Ft-1;Qt>=0;Qt--){const Wt=it.setContext(this.getPointLabelContext(Qt)),{color:Xt,lineWidth:Zt}=Wt;!Zt||!Xt||(tt.lineWidth=Zt,tt.strokeStyle=Xt,tt.setLineDash(Wt.borderDash),tt.lineDashOffset=Wt.borderDashOffset,Bt=this.getDistanceFromCenterForValue(nt.ticks.reverse?this.min:this.max),Vt=this.getPointPosition(Qt,Bt),tt.beginPath(),tt.moveTo(this.xCenter,this.yCenter),tt.lineTo(Vt.x,Vt.y),tt.stroke())}tt.restore()}}drawBorder(){}drawLabels(){const tt=this.ctx,nt=this.options,it=nt.ticks;if(!it.display)return;const ot=this.getIndexAngle(0);let Ut,Ft;tt.save(),tt.translate(this.xCenter,this.yCenter),tt.rotate(ot),tt.textAlign="center",tt.textBaseline="middle",this.ticks.forEach((Qt,Bt)=>{if(Bt===0&&!nt.reverse)return;const Vt=it.setContext(this.getContext(Bt)),Wt=toFont(Vt.font);if(Ut=this.getDistanceFromCenterForValue(this.ticks[Bt].value),Vt.showLabelBackdrop){tt.font=Wt.string,Ft=tt.measureText(Qt.label).width,tt.fillStyle=Vt.backdropColor;const Xt=toPadding(Vt.backdropPadding);tt.fillRect(-Ft/2-Xt.left,-Ut-Wt.size/2-Xt.top,Ft+Xt.width,Wt.size+Xt.height)}renderText(tt,Qt.label,0,-Ut,Wt,{color:Vt.color})}),tt.restore()}drawTitle(){}}_r(RadialLinearScale,"id","radialLinear"),_r(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(tt){return tt},padding:5,centerPointLabels:!1}}),_r(RadialLinearScale,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),_r(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(et,tt){return et-tt}function parse(et,tt){if(isNullOrUndef(tt))return null;const nt=et._adapter,{parser:it,round:ot,isoWeekday:Ut}=et._parseOpts;let Ft=tt;return typeof it=="function"&&(Ft=it(Ft)),isNumberFinite(Ft)||(Ft=typeof it=="string"?nt.parse(Ft,it):nt.parse(Ft)),Ft===null?null:(ot&&(Ft=ot==="week"&&(isNumber(Ut)||Ut===!0)?nt.startOf(Ft,"isoWeek",Ut):nt.startOf(Ft,ot)),+Ft)}function determineUnitForAutoTicks(et,tt,nt,it){const ot=UNITS.length;for(let Ut=UNITS.indexOf(et);Ut=UNITS.indexOf(nt);Ut--){const Ft=UNITS[Ut];if(INTERVALS[Ft].common&&et._adapter.diff(ot,it,Ft)>=tt-1)return Ft}return UNITS[nt?UNITS.indexOf(nt):0]}function determineMajorUnit(et){for(let tt=UNITS.indexOf(et)+1,nt=UNITS.length;tt=tt?nt[it]:nt[ot];et[Ut]=!0}}function setMajorTicks(et,tt,nt,it){const ot=et._adapter,Ut=+ot.startOf(tt[0].value,it),Ft=tt[tt.length-1].value;let Qt,Bt;for(Qt=Ut;Qt<=Ft;Qt=+ot.add(Qt,1,it))Bt=nt[Qt],Bt>=0&&(tt[Bt].major=!0);return tt}function ticksFromTimestamps(et,tt,nt){const it=[],ot={},Ut=tt.length;let Ft,Qt;for(Ft=0;Ft+tt.value))}initOffsets(tt=[]){let nt=0,it=0,ot,Ut;this.options.offset&&tt.length&&(ot=this.getDecimalForValue(tt[0]),tt.length===1?nt=1-ot:nt=(this.getDecimalForValue(tt[1])-ot)/2,Ut=this.getDecimalForValue(tt[tt.length-1]),tt.length===1?it=Ut:it=(Ut-this.getDecimalForValue(tt[tt.length-2]))/2);const Ft=tt.length<3?.5:.25;nt=_limitValue(nt,0,Ft),it=_limitValue(it,0,Ft),this._offsets={start:nt,end:it,factor:1/(nt+1+it)}}_generate(){const tt=this._adapter,nt=this.min,it=this.max,ot=this.options,Ut=ot.time,Ft=Ut.unit||determineUnitForAutoTicks(Ut.minUnit,nt,it,this._getLabelCapacity(nt)),Qt=valueOrDefault(ot.ticks.stepSize,1),Bt=Ft==="week"?Ut.isoWeekday:!1,Vt=isNumber(Bt)||Bt===!0,Wt={};let Xt=nt,Zt,Yt;if(Vt&&(Xt=+tt.startOf(Xt,"isoWeek",Bt)),Xt=+tt.startOf(Xt,Vt?"day":Ft),tt.diff(it,nt,Ft)>1e5*Qt)throw new Error(nt+" and "+it+" are too far apart with stepSize of "+Qt+" "+Ft);const Mt=ot.ticks.source==="data"&&this.getDataTimestamps();for(Zt=Xt,Yt=0;ZtGt-en).map(Gt=>+Gt)}getLabelForValue(tt){const nt=this._adapter,it=this.options.time;return it.tooltipFormat?nt.format(tt,it.tooltipFormat):nt.format(tt,it.displayFormats.datetime)}format(tt,nt){const ot=this.options.time.displayFormats,Ut=this._unit,Ft=nt||ot[Ut];return this._adapter.format(tt,Ft)}_tickFormatFunction(tt,nt,it,ot){const Ut=this.options,Ft=Ut.ticks.callback;if(Ft)return callback(Ft,[tt,nt,it],this);const Qt=Ut.time.displayFormats,Bt=this._unit,Vt=this._majorUnit,Wt=Bt&&Qt[Bt],Xt=Vt&&Qt[Vt],Zt=it[nt],Yt=Vt&&Xt&&Zt&&Zt.major;return this._adapter.format(tt,ot||(Yt?Xt:Wt))}generateTickLabels(tt){let nt,it,ot;for(nt=0,it=tt.length;nt0?Qt:1}getDataTimestamps(){let tt=this._cache.data||[],nt,it;if(tt.length)return tt;const ot=this.getMatchingVisibleMetas();if(this._normalized&&ot.length)return this._cache.data=ot[0].controller.getAllParsedValues(this);for(nt=0,it=ot.length;nt=et[it].pos&&tt<=et[ot].pos&&({lo:it,hi:ot}=_lookupByKey(et,"pos",tt)),{pos:Ut,time:Qt}=et[it],{pos:Ft,time:Bt}=et[ot]):(tt>=et[it].time&&tt<=et[ot].time&&({lo:it,hi:ot}=_lookupByKey(et,"time",tt)),{time:Ut,pos:Qt}=et[it],{time:Ft,pos:Bt}=et[ot]);const Vt=Ft-Ut;return Vt?Qt+(Bt-Qt)*(tt-Ut)/Vt:Qt}class TimeSeriesScale extends TimeScale{constructor(tt){super(tt),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const tt=this._getTimestampsForTable(),nt=this._table=this.buildLookupTable(tt);this._minPos=interpolate(nt,this.min),this._tableRange=interpolate(nt,this.max)-this._minPos,super.initOffsets(tt)}buildLookupTable(tt){const{min:nt,max:it}=this,ot=[],Ut=[];let Ft,Qt,Bt,Vt,Wt;for(Ft=0,Qt=tt.length;Ft=nt&&Vt<=it&&ot.push(Vt);if(ot.length<2)return[{time:nt,pos:0},{time:it,pos:1}];for(Ft=0,Qt=ot.length;Fttt in et?__defProp(et,tt,{enumerable:!0,configurable:!0,writable:!0,value:nt}):et[tt]=nt,__publicField=(et,tt,nt)=>(__defNormalProp(et,typeof tt!="symbol"?tt+"":tt,nt),nt),__defProp2=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp2=(et,tt,nt)=>tt in et?__defProp2(et,tt,{enumerable:!0,configurable:!0,writable:!0,value:nt}):et[tt]=nt,__spreadValues=(et,tt)=>{for(var nt in tt||(tt={}))__hasOwnProp.call(tt,nt)&&__defNormalProp2(et,nt,tt[nt]);if(__getOwnPropSymbols)for(var nt of __getOwnPropSymbols(tt))__propIsEnum.call(tt,nt)&&__defNormalProp2(et,nt,tt[nt]);return et},__spreadProps=(et,tt)=>__defProps(et,__getOwnPropDescs(tt)),__publicField2=(et,tt,nt)=>(__defNormalProp2(et,typeof tt!="symbol"?tt+"":tt,nt),nt);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(tt,nt,it){__publicField2(this,"worker"),__publicField2(this,"onReceive"),__publicField2(this,"onError"),__publicField2(this,"onReceiveMessage",Ut=>{const{data:Ft}=Ut;if(Ft.error){const Qt=new Error(`${Ft.error}`);Qt.cause=Ft.error,console.warn("H264 worker failure",{error:Qt}),this.onError(Ft.index);return}this.onReceive(Ft)});var ot;this.worker=tt,(ot=this.worker)==null||ot.addEventListener("message",this.onReceiveMessage),this.onReceive=nt,this.onError=it}post(tt,nt,it,ot){var Ut;(Ut=this.worker)==null||Ut.postMessage({timestamp:tt,encodedFrame:nt,flags:it,index:ot})}release(){var tt,nt;(tt=this.worker)==null||tt.removeEventListener("message",this.onReceiveMessage),(nt=this.worker)==null||nt.terminate(),this.worker=void 0}}class YUVCanvas{constructor(tt){__publicField2(this,"gl"),__publicField2(this,"program"),__publicField2(this,"texturePosBuffer"),__publicField2(this,"textureRef"),__publicField2(this,"height",0),__publicField2(this,"width",0),this.gl=tt,this.program=this.initProgram();const{texturePosBuffer:nt}=this.initBuffers();this.texturePosBuffer=nt;const{textureRef:it}=this.initTextures();this.textureRef=it}draw(tt){const{gl:nt,height:it,width:ot,texturePosBuffer:Ut,textureRef:Ft}=this;nt.viewport(0,0,ot,it);const Qt=new Float32Array([1,0,0,0,1,1,0,1]);return nt.bindBuffer(nt.ARRAY_BUFFER,Ut),nt.bufferData(nt.ARRAY_BUFFER,Qt,nt.DYNAMIC_DRAW),nt.activeTexture(nt.TEXTURE0),nt.bindTexture(nt.TEXTURE_2D,Ft),nt.texImage2D(nt.TEXTURE_2D,0,nt.LUMINANCE,ot,it+it/2,0,nt.LUMINANCE,nt.UNSIGNED_BYTE,tt),nt.drawArrays(nt.TRIANGLE_STRIP,0,4),nt.getError()}initProgram(){const{gl:tt}=this,nt=` attribute vec4 vertexPos; attribute vec4 texturePos; varying vec2 textureCoord; @@ -228,7 +145,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho gl_Position = vertexPos; textureCoord = texturePos.xy; } - `,j=` + `,it=` precision highp float; varying highp vec2 textureCoord; uniform sampler2D yuvSampler; @@ -252,8 +169,8 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho 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 lt=Date.now();console.info("BytestreamPlayer waiting for video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Waited":lt-this.moduleCreateTime}))}return}this.numFramesReceived/this.numFramesDecoded>maxDropRatio&&this.warnPerformanceProblems(),this.numFramesReceived=0,this.numFramesDecoded=0;const tt=Array.from(this.frameCheckpointMap.entries()).reduce((lt,[ut,Ut])=>{var ot;return!this.currentFrameIndex||ut>this.currentFrameIndex-60||Ut==="FrameDrawn"||(lt[Ut]=((ot=lt[Ut])!=null?ot:0)+1,this.frameCheckpointMap.delete(ut)),lt},{});Object.keys(tt).map(lt=>{console.info("BytestreamPlayer Frame Dropped",__spreadProps(__spreadValues({},this.trackInfo),{"Num Dropped":tt[lt],"Frame State":lt}))});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:lt,retries:ut}=this,Ut=new Date().getTime();lt&&(this.lastNoSignalTime=Ut),this.overWaitingThreshold=Ut-rt>noSignalThreshold;const ot=Ut-rt>decoderNotWorkingThreshold;if(!nt){tt&&ot&&utnoSignalThreshold&&stwarnPerformanceThreshold&&this.warnPerformanceProblems(),st>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:lt,decoderQueue:ut}=this,{timestamp:Ut,yuv:ot,height:st,width:dt,index:St}=et;this.frameCheckpointMap.set(St,"FrameDecoded"),this.numFramesDecoded++;const pt=Date.now();if(this.lastDecodedFrameTime===void 0&&console.info("BytestreamPlayer started video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Until Video":pt-this.moduleCreateTime})),this.lastDecodedFrameTime=pt,this.waitingForDecoder=!1,this.decoderQueue=ut.filter(ht=>pt-htduration.second||!lt||!rt||st===0||dt===0)return;st!==rt.height&&(rt.height=st,lt.height=st),dt!==rt.width&&(rt.width=dt,lt.width=dt);const Rt=lt.draw(ot),Bt=Date.now();if(this.lastDrawnFrameTime){const ht=Bt-this.lastDrawnFrameTime;this.minJitter=Math.min(ht,(tt=this.minJitter)!=null?tt:Number.MAX_SAFE_INTEGER),this.maxJitter=Math.max(ht,(nt=this.maxJitter)!=null?nt:0)}this.lastDrawnFrameTime=Bt,this.frameCheckpointMap.set(St,"FrameDrawn"),Rt===0&&(this.webglYUVSupported=!0),Rt===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,lt=_?et===numRetries?"Decoder failed to start":"Starting decoder":void 0,ut=nt?"Hardware decoding not supported on this device":void 0;return(s=ut??(_e?"Lost signal":j?$?"No signal":"Waiting for signal":void 0))!=null?s:lt}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}};/*! + `,ot=[1.16438,0,1.59603,-.87079,1.16438,-.39176,-.81297,.52959,1.16438,2.01723,0,-1.08139,0,0,0,1],Ut=tt.createShader(tt.VERTEX_SHADER);if(!Ut)throw new Error("Failed to create vertex shader");tt.shaderSource(Ut,nt),tt.compileShader(Ut);const Ft=tt.createShader(tt.FRAGMENT_SHADER);if(!Ft)throw new Error("Failed to create fragment shader");tt.shaderSource(Ft,it),tt.compileShader(Ft);const Qt=tt.createProgram();if(!Qt)throw new Error("Failed to create webgl program");tt.attachShader(Qt,Ut),tt.attachShader(Qt,Ft),tt.linkProgram(Qt),tt.useProgram(Qt);const Bt=tt.getUniformLocation(Qt,"YUV2RGB");return tt.uniformMatrix4fv(Bt,!1,ot),Qt}initBuffers(){const{gl:tt,program:nt}=this,it=tt.createBuffer();tt.bindBuffer(tt.ARRAY_BUFFER,it),tt.bufferData(tt.ARRAY_BUFFER,new Float32Array([1,1,-1,1,1,-1,-1,-1]),tt.STATIC_DRAW);const ot=tt.getAttribLocation(nt,"vertexPos");tt.enableVertexAttribArray(ot),tt.vertexAttribPointer(ot,2,tt.FLOAT,!1,0,0);const Ut=tt.createBuffer();if(!Ut)throw new Error("Failed to create WebGL buffer");tt.bindBuffer(tt.ARRAY_BUFFER,Ut),tt.bufferData(tt.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),tt.STATIC_DRAW);const Ft=tt.getAttribLocation(nt,"texturePos");return tt.enableVertexAttribArray(Ft),tt.vertexAttribPointer(Ft,2,tt.FLOAT,!1,0,0),{texturePosBuffer:Ut}}initTextures(){const{gl:tt,program:nt}=this,it=this.initTexture(),ot=tt.getUniformLocation(nt,"yuvSampler");return tt.uniform1i(ot,0),{textureRef:it}}initTexture(){const{gl:tt}=this,nt=tt.createTexture();if(!nt)throw new Error("Failed to initialize texture");return tt.bindTexture(tt.TEXTURE_2D,nt),tt.texParameteri(tt.TEXTURE_2D,tt.TEXTURE_MAG_FILTER,tt.NEAREST),tt.texParameteri(tt.TEXTURE_2D,tt.TEXTURE_MIN_FILTER,tt.NEAREST),tt.texParameteri(tt.TEXTURE_2D,tt.TEXTURE_WRAP_S,tt.CLAMP_TO_EDGE),tt.texParameteri(tt.TEXTURE_2D,tt.TEXTURE_WRAP_T,tt.CLAMP_TO_EDGE),tt.bindTexture(tt.TEXTURE_2D,null),nt}}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(tt,nt,it,ot,Ut){__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:Ft}=this;if(!Ft)return;const Qt=Ft.getContext("webgl");this.webglContext=Qt||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 Ft;(Ft=this.decoder)==null||Ft.release(),this.webglContext=void 0,this.decoderQueueLocked=!1}),__publicField2(this,"reset",()=>{this.retries=0,this.restart()}),__publicField2(this,"notifyWarningTextChanged",()=>{var Ft;(Ft=this.onWarningTextChanged)==null||Ft.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 Wt=Date.now();console.info("BytestreamPlayer waiting for video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Waited":Wt-this.moduleCreateTime}))}return}this.numFramesReceived/this.numFramesDecoded>maxDropRatio&&this.warnPerformanceProblems(),this.numFramesReceived=0,this.numFramesDecoded=0;const Qt=Array.from(this.frameCheckpointMap.entries()).reduce((Wt,[Xt,Zt])=>{var Yt;return!this.currentFrameIndex||Xt>this.currentFrameIndex-60||Zt==="FrameDrawn"||(Wt[Zt]=((Yt=Wt[Zt])!=null?Yt:0)+1,this.frameCheckpointMap.delete(Xt)),Wt},{});Object.keys(Qt).map(Wt=>{console.info("BytestreamPlayer Frame Dropped",__spreadProps(__spreadValues({},this.trackInfo),{"Num Dropped":Qt[Wt],"Frame State":Wt}))});const{minJitter:Bt,maxJitter:Vt}=this;Bt&&Vt&&(console.info("BytestreamPlayer Jitter",__spreadProps(__spreadValues({},this.trackInfo),{minJitter:Bt,maxJitter:Vt})),this.minJitter=void 0,this.maxJitter=void 0)}),__publicField2(this,"onTick",()=>{var Ft;const{lastReceivedFrameTime:Qt,lastDecodedFrameTime:Bt,moduleStartTime:Vt,noSignal:Wt,retries:Xt}=this,Zt=new Date().getTime();Wt&&(this.lastNoSignalTime=Zt),this.overWaitingThreshold=Zt-Vt>noSignalThreshold;const Yt=Zt-Vt>decoderNotWorkingThreshold;if(!Bt){Qt&&Yt&&XtnoSignalThreshold&&MtwarnPerformanceThreshold&&this.warnPerformanceProblems(),Mt>noSignalThreshold&&(this.lostSignal=!0)}this.overWaitingThreshold&&(this.waitingForDecoder||this.noSignal||this.lostSignal)&&((Ft=this.onCanvasDrawerWarning)==null||Ft.call(this,"ShouldDisableControl"))}),__publicField2(this,"receiveEncodedFrame",Ft=>{if(!Ft)return;const Qt=Ft.index;if(Qt&&this.frameCheckpointMap.set(Qt,"FrameReceived"),!(!Ft||!this.canvas||!this.webglContext)){if(this.isKeyframe(Ft),!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(Ft),this.numFramesReceived++,this.lastReceivedFrameTime=Date.now(),this.lostSignal&&this.restart(),this.noSignal=!1,this.lostSignal=!1,this.frameQueue.push(Ft),Qt&&this.frameCheckpointMap.set(Qt,"FrameQueued"),this.frameQueue.length>maxQueueSize&&(this.frameQueue=this.frameQueue.filter(Bt=>this.isKeyframe(Bt))),this.frameQueue.length>maxQueueSize&&(this.frameQueue=[],this.decoderQueue=[]),this.decodeNextFrame()}}),__publicField2(this,"onDecoderError",Ft=>{this.frameQueue=[],this.decoderQueue=[],this.hasReceivedKeyframe=!1,console.info("BytestreamPlayer decode error",__spreadProps(__spreadValues({},this.trackInfo),{"Frame Index":Ft}))}),__publicField2(this,"onReceiveDecodedFrame",Ft=>{var Qt,Bt;const{canvas:Vt,yuvCanvas:Wt,decoderQueue:Xt}=this,{timestamp:Zt,yuv:Yt,height:Mt,width:Gt,index:en}=Ft;this.frameCheckpointMap.set(en,"FrameDecoded"),this.numFramesDecoded++;const tn=Date.now();if(this.lastDecodedFrameTime===void 0&&console.info("BytestreamPlayer started video",__spreadProps(__spreadValues({},this.trackInfo),{"Time Until Video":tn-this.moduleCreateTime})),this.lastDecodedFrameTime=tn,this.waitingForDecoder=!1,this.decoderQueue=Xt.filter(sn=>tn-snduration.second||!Wt||!Vt||Mt===0||Gt===0)return;Mt!==Vt.height&&(Vt.height=Mt,Wt.height=Mt),Gt!==Vt.width&&(Vt.width=Gt,Wt.width=Gt);const ln=Wt.draw(Yt),nn=Date.now();if(this.lastDrawnFrameTime){const sn=nn-this.lastDrawnFrameTime;this.minJitter=Math.min(sn,(Qt=this.minJitter)!=null?Qt:Number.MAX_SAFE_INTEGER),this.maxJitter=Math.max(sn,(Bt=this.maxJitter)!=null?Bt:0)}this.lastDrawnFrameTime=nn,this.frameCheckpointMap.set(en,"FrameDrawn"),ln===0&&(this.webglYUVSupported=!0),ln===hardwareIncompatibleErrorCode&&(this.webglYUVSupported=!1),this.frameQueue.length>0&&this.decodeNextFrame()}),this.workerFactory=tt,this.onWebglYUVSupportedChanged=nt,this.onWarningTextChanged=it,this.onCanvasDrawerWarning=ot,this.trackInfo=Ut,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(tt){this._waitingForDecoder=tt,this.notifyWarningTextChanged()}get noSignal(){return this._noSignal}set noSignal(tt){this._noSignal=tt,this.notifyWarningTextChanged()}get lostSignal(){return this._lostSignal}set lostSignal(tt){this._lostSignal=tt,this.notifyWarningTextChanged()}get overWaitingThreshold(){return this._overWaitingThreshold}set overWaitingThreshold(tt){this._overWaitingThreshold=tt,this.notifyWarningTextChanged()}get retries(){return this._retries}set retries(tt){this._retries=tt,this.notifyWarningTextChanged()}get webglYUVSupported(){return this._webglYUVSupported}set webglYUVSupported(tt){var nt;this._webglYUVSupported=tt,(nt=this.onWebglYUVSupportedChanged)==null||nt.call(this,tt),this.notifyWarningTextChanged()}setCanvas(tt){this.canvas=tt}getWarningText(){var tt;const{waitingForDecoder:nt,noSignal:it,overWaitingThreshold:ot,lostSignal:Ut,retries:Ft,webglYUVSupported:Qt}=this,Bt=Qt===!1,Wt=nt?Ft===numRetries?"Decoder failed to start":"Starting decoder":void 0,Xt=Bt?"Hardware decoding not supported on this device":void 0;return(tt=Xt??(Ut?"Lost signal":it?ot?"No signal":"Waiting for signal":void 0))!=null?tt:Wt}decodeNextFrame(){if(this.decoderQueueLocked&&(this.decodeNextFrameAttempted=!0),this.decoderQueueLocked=!0,this.decoderQueue.length>maxQueueSize){this.decoderQueueLocked=!1,this.decodeNextFrameAttempted=!1;return}const tt=this.frameQueue.shift();if(!tt){this.decoderQueueLocked=!1,this.decodeNextFrameAttempted=!1;return}const nt=Date.now();this.frameCheckpointMap.set(tt.index,"FrameSentToDecoder"),this.decoder.post(nt,tt.frame_data,tt.flags,tt.index),this.decoderQueue.push(nt),this.decoderQueueLocked=!1,this.decodeNextFrameAttempted&&(this.decodeNextFrameAttempted=!1,this.decodeNextFrame())}warnPerformanceProblems(){var tt;this.lastDecodedFrameTime&&this.overWaitingThreshold&&!this.lostSignal&&!this.noSignal&&((tt=this.onCanvasDrawerWarning)==null||tt.call(this,"ShouldDegradeVideo"))}checkOrder(tt){if(this.currentFrameIndex!==void 0&&tt.indexDate.now()?!1:ot>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 et=blob&&(window.URL||window.webkitURL).createObjectURL(blob);try{return et?new Worker(et,{}):new Worker("data:application/javascript;base64,"+encodedJs,{type:"module"})}finally{et&&(window.URL||window.webkitURL).revokeObjectURL(et)}}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(tt){this.drawer.receiveEncodedFrame(tt)}}customElements.define("formant-realtime-player",RealtimePlayer);var classnamesExports={},classnames$1={get exports(){return classnamesExports},set exports(et){classnamesExports=et}};/*! 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 ut=>{await Authentication.waitTilAuthenticated();const Ut=await rt();o.addRealtimeListener((ot,st)=>{st.header.stream.streamName===_&&ut.drawVideoFrame(st.payload.h264VideoFrame)}),o.startListeningToRealtimeVideo(Ut),et(!1)},nt=async()=>{const ut=await Fleet.getCurrentDevice(),Ut=await rt();await ut.stopListeningToRealtimeVideo(Ut)},rt=reactExports.useCallback(async()=>{const ut=(await o.getRealtimeVideoStreams()).filter(Ut=>Ut.name===_);return ut.length===0&&console.error("Error: Camera name is incorrect or doesn't exist"),ut[0]},[_]),lt=reactExports.useCallback(async()=>{const ut=document.querySelector(`#${s}`);ut.drawer.start(),await tt(ut)},[]);return reactExports.useLayoutEffect(()=>{if(o)return lt().then(ut=>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,{})})); +*/(function(et){(function(){var tt={}.hasOwnProperty;function nt(){for(var it=[],ot=0;ot{const[tt,nt]=reactExports.useState();return reactExports.useEffect(()=>{K0(et).then(it=>nt(it)).catch(it=>{throw console.log("Failed fetching device",{err:it}),new Error("Authentication failed, please authenticate and try again")})},[et]),tt},z1=async et=>{try{if(await o.waitTilAuthenticated())return et()}catch(tt){throw tt}},$1=(et,tt)=>tt?JSON.parse(et):et,J0=async(et,tt)=>{await z1(async()=>{try{const nt=await y.getCurrentModuleConfiguration();if(!nt)return;const it=$1(nt,tt);et(it),y.addModuleConfigurationListener(ot=>{const Ut=$1(ot.configuration,tt);et(Ut)})}catch(nt){throw nt}})},X0=et=>{const[tt,nt]=reactExports.useState("");return reactExports.useEffect(()=>{J0(nt,et==null?void 0:et.parse)},[]),tt};function Oe(){return reactExports.useContext(d0)}const d0=reactExports.createContext(void 0);function Ke({theme:et,children:tt,parseConfiguration:nt,scoped:it=!1}){const ot=X0({parse:!!nt}),Ut=createTheme(et==="dark"?c0:et==="light"?P0:O0),Ft={configuration:ot};return jsx(ThemeProvider,{theme:Ut,children:jsx(it?D0:CssBaseline,{children:jsx(d0.Provider,{value:Ft,children:tt})})})}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:et,id:tt,cameraName:nt,height:it,width:ot})=>{const[Ut,Ft]=reactExports.useState(!0),Qt=async Xt=>{await o.waitTilAuthenticated();const Zt=await Vt();et.addRealtimeListener((Yt,Mt)=>{Mt.header.stream.streamName===nt&&Xt.drawVideoFrame(Mt.payload.h264VideoFrame)}),et.startListeningToRealtimeVideo(Zt),Ft(!1)},Bt=async()=>{const Xt=await l.getCurrentDevice(),Zt=await Vt();await Xt.stopListeningToRealtimeVideo(Zt)},Vt=reactExports.useCallback(async()=>{const Xt=(await et.getRealtimeVideoStreams()).filter(Zt=>Zt.name===nt);return Xt.length===0&&console.error("Error: Camera name is incorrect or doesn't exist"),Xt[0]},[nt]),Wt=reactExports.useCallback(async()=>{const Xt=document.querySelector(`#${tt}`);Xt.drawer.start(),await Qt(Xt)},[]);return reactExports.useLayoutEffect(()=>{if(et)return Wt().then(Xt=>console.warn("video mounted")),()=>{Bt()}},[et]),jsxs(T2,{height:it,width:ot,children:[Ut&&jsx(z2,{}),jsx("formant-realtime-player",{id:tt,style:{display:Ut?"none":"block",backgroundColor:"transparent",height:"100%",width:"100%"}})]})},T2=createStyled$1("div",{target:"ee073z40"})("display:flex;align-items:center;justify-content:center;width:",et=>et.width?et.width:"100%",";height:",et=>et.height?et.height:"100%",";");Chart.register(...registerables);const App$1="";function timeout(et){return new Promise(tt=>setTimeout(tt,et))}function App(){const et=Oe(),{camera:tt,isTeleopModule:nt}=et.configuration,it=s0(),[ot,Ut]=reactExports.useState(!0),Ft=reactExports.useCallback(async()=>{if(!it)return;await it.startRealtimeConnection({sessionType:Ht.OBSERVE,maxConnectRetries:10,deadlineMs:1e4});let Qt=!1;for(;!Qt;)Qt=await it.isInRealtimeSession(),console.warn("Waiting for the main connection to establish."),await timeout(2e3);console.warn("Main connection completed"),Ut(!1)},[it]);return reactExports.useEffect(()=>{if(!(!it||!tt)){if(!nt){it.startRealtimeConnection({sessionType:Ht.OBSERVE,maxConnectRetries:50,deadlineMs:2e4}).then(()=>Ut(!1));return}return Ft(),()=>{it.stopRealtimeConnection()}}},[it,tt]),jsx$1("div",{className:"App",children:ot||!it?jsx$1(z2,{}):jsx$1(at,{cameraName:tt,device:it,id:"rtc-video"})})}const index="";client.createRoot(document.getElementById("root")).render(jsx$1(Ke,{parseConfiguration:!0,children:jsx$1(App,{})})); \ No newline at end of file